From 9aeae61fa5e03529c1ddfc21e68bf6d760c91112 Mon Sep 17 00:00:00 2001 From: release-bot Date: Tue, 28 May 2024 11:21:55 +0000 Subject: [PATCH] Released 2.35.0 --- css/dist/MaterialSymbolsRounded.woff2 | Bin 0 -> 410988 bytes css/dist/index.css | 9916 ++++ css/dist/index.css.map | 1 + dist/.lib/tsconfig.type.tsbuildinfo | 9675 ++-- dist/core/accessibility/utils/index.d.ts | 4 + dist/core/accessibility/utils/isEnterKey.d.ts | 3 + dist/core/accessibility/utils/isSpaceKey.d.ts | 3 + .../utils/useAccessibilityProps.d.ts | 21 + dist/core/common.type.d.ts | 24 + dist/core/components/atoms/_chip/index.d.ts | 21 + dist/core/components/atoms/_text/index.d.ts | 8 + .../atoms/actionCard/ActionCard.d.ts | 13 + .../components/atoms/actionCard/index.d.ts | 2 + dist/core/components/atoms/avatar/Avatar.d.ts | 28 + .../atoms/avatar/AvatarProvider.d.ts | 10 + .../atoms/avatar/avatarIcon/AvatarIcon.d.ts | 7 + .../atoms/avatar/avatarIcon/index.d.ts | 2 + .../atoms/avatar/avatarImage/AvatarImage.d.ts | 8 + .../atoms/avatar/avatarImage/index.d.ts | 2 + dist/core/components/atoms/avatar/index.d.ts | 2 + .../atoms/avatarGroup/AvatarCount.d.ts | 2 + .../atoms/avatarGroup/AvatarGroup.d.ts | 40 + .../atoms/avatarGroup/AvatarPopperBody.d.ts | 2 + .../components/atoms/avatarGroup/Avatars.d.ts | 2 + .../components/atoms/avatarGroup/index.d.ts | 2 + .../avatarSelection/AvatarSelection.d.ts | 59 + .../AvatarSelectionContext.d.ts | 19 + .../AvatarSelectionEmptyState.d.ts | 8 + .../avatarPopover/AvatarSelectionInput.d.ts | 3 + .../avatarPopover/AvatarSelectionList.d.ts | 20 + .../avatarPopover/AvatarSelectionOption.d.ts | 17 + .../avatarPopover/AvatarSelectionPopover.d.ts | 15 + .../avatarSelection/avatarPopover/index.d.ts | 5 + .../avatarSelection/avatarPopover/utils.d.ts | 3 + .../AvatarSelectionCount.d.ts | 13 + .../avatarsSelection/SelectionAvatar.d.ts | 15 + .../SelectionAvatarsWrapper.d.ts | 15 + .../avatarsSelection/index.d.ts | 2 + .../avatarsSelection/utils.d.ts | 3 + .../atoms/avatarSelection/index.d.ts | 2 + .../components/atoms/backdrop/Backdrop.d.ts | 8 + .../core/components/atoms/backdrop/index.d.ts | 2 + dist/core/components/atoms/badge/Badge.d.ts | 16 + dist/core/components/atoms/badge/index.d.ts | 2 + .../atoms/breadcrumbs/Breadcrumbs.d.ts | 12 + .../components/atoms/breadcrumbs/index.d.ts | 2 + dist/core/components/atoms/button/Button.d.ts | 29 + dist/core/components/atoms/button/index.d.ts | 2 + .../components/atoms/caption/Caption.d.ts | 13 + dist/core/components/atoms/caption/index.d.ts | 2 + dist/core/components/atoms/card/Card.d.ts | 8 + dist/core/components/atoms/card/index.d.ts | 2 + .../components/atoms/cardBody/CardBody.d.ts | 10 + .../core/components/atoms/cardBody/index.d.ts | 2 + .../atoms/cardFooter/CardFooter.d.ts | 14 + .../components/atoms/cardFooter/index.d.ts | 2 + .../atoms/cardHeader/CardHeader.d.ts | 10 + .../components/atoms/cardHeader/index.d.ts | 2 + .../atoms/cardSubdued/CardSubdued.d.ts | 8 + .../components/atoms/cardSubdued/index.d.ts | 2 + .../components/atoms/checkbox/Checkbox.d.ts | 22 + .../atoms/checkbox/CheckboxIcon.d.ts | 5 + .../core/components/atoms/checkbox/index.d.ts | 2 + dist/core/components/atoms/chip/Chip.d.ts | 26 + dist/core/components/atoms/chip/index.d.ts | 2 + .../components/atoms/chipGroup/ChipGroup.d.ts | 12 + .../components/atoms/chipGroup/index.d.ts | 2 + .../atoms/collapsible/Collapsible.d.ts | 23 + .../components/atoms/collapsible/index.d.ts | 2 + dist/core/components/atoms/column/Column.d.ts | 13 + dist/core/components/atoms/column/index.d.ts | 2 + .../components/atoms/divider/Divider.d.ts | 15 + dist/core/components/atoms/divider/index.d.ts | 2 + .../components/atoms/dropdown/Dropdown.d.ts | 102 + .../atoms/dropdown/DropdownButton.d.ts | 19 + .../atoms/dropdown/DropdownList.d.ts | 85 + .../atoms/dropdown/ErrorTemplate.d.ts | 9 + .../components/atoms/dropdown/Loading.d.ts | 2 + .../core/components/atoms/dropdown/index.d.ts | 2 + .../atoms/dropdown/option/CheckboxOption.d.ts | 3 + .../atoms/dropdown/option/DefaultOption.d.ts | 3 + .../atoms/dropdown/option/IconOption.d.ts | 3 + .../dropdown/option/IconWithMetaOption.d.ts | 3 + .../atoms/dropdown/option/MetaOption.d.ts | 3 + .../atoms/dropdown/option/index.d.ts | 50 + .../components/atoms/dropdown/utility.d.ts | 15 + .../components/atoms/editable/Editable.d.ts | 12 + .../core/components/atoms/editable/index.d.ts | 2 + .../components/atoms/heading/Heading.d.ts | 19 + dist/core/components/atoms/heading/index.d.ts | 2 + .../components/atoms/helpText/HelpText.d.ts | 10 + .../core/components/atoms/helpText/index.d.ts | 2 + dist/core/components/atoms/icon/Icon.d.ts | 22 + dist/core/components/atoms/icon/index.d.ts | 2 + dist/core/components/atoms/input/Input.d.ts | 49 + .../input/actionButton/ActionButton.d.ts | 23 + .../atoms/input/actionButton/index.d.ts | 2 + dist/core/components/atoms/input/index.d.ts | 2 + dist/core/components/atoms/label/Label.d.ts | 15 + dist/core/components/atoms/label/index.d.ts | 2 + dist/core/components/atoms/legend/Legend.d.ts | 22 + dist/core/components/atoms/legend/index.d.ts | 2 + dist/core/components/atoms/link/Link.d.ts | 28 + dist/core/components/atoms/link/index.d.ts | 2 + .../atoms/linkButton/LinkButton.d.ts | 23 + .../components/atoms/linkButton/index.d.ts | 2 + .../components/atoms/message/Message.d.ts | 19 + dist/core/components/atoms/message/index.d.ts | 2 + dist/core/components/atoms/metaList/Meta.d.ts | 13 + .../components/atoms/metaList/MetaList.d.ts | 23 + .../core/components/atoms/metaList/index.d.ts | 2 + .../atoms/metricInput/MetricInput.d.ts | 30 + .../components/atoms/metricInput/index.d.ts | 2 + .../components/atoms/multiSlider/Handle.d.ts | 52 + .../atoms/multiSlider/SliderUtils.d.ts | 9 + .../components/atoms/multiSlider/index.d.ts | 68 + .../atoms/outsideClick/OutsideClick.d.ts | 8 + .../components/atoms/outsideClick/index.d.ts | 2 + .../components/atoms/paragraph/Paragraph.d.ts | 17 + .../components/atoms/paragraph/index.d.ts | 2 + dist/core/components/atoms/pills/Pills.d.ts | 16 + dist/core/components/atoms/pills/index.d.ts | 2 + .../placeholderImage/PlaceholderImage.d.ts | 14 + .../atoms/placeholderImage/index.d.ts | 2 + .../PlaceholderParagraph.d.ts | 15 + .../atoms/placeholderParagraph/index.d.ts | 2 + .../atoms/popperWrapper/PopperWrapper.d.ts | 863 + .../components/atoms/popperWrapper/index.d.ts | 2 + .../atoms/progressBar/ProgressBar.d.ts | 16 + .../components/atoms/progressBar/index.d.ts | 2 + .../atoms/progressRing/ProgressRing.d.ts | 16 + .../components/atoms/progressRing/index.d.ts | 2 + dist/core/components/atoms/radio/Radio.d.ts | 18 + dist/core/components/atoms/radio/index.d.ts | 2 + .../atoms/rangeSlider/RangeSlider.d.ts | 21 + .../components/atoms/rangeSlider/index.d.ts | 2 + dist/core/components/atoms/row/Row.d.ts | 5 + dist/core/components/atoms/row/index.d.ts | 2 + .../atoms/selectionCard/SelectionCard.d.ts | 23 + .../atoms/selectionCard/hooks/index.d.ts | 2 + .../selectionCard/hooks/useMultiSelect.d.ts | 6 + .../selectionCard/hooks/useSingleSelect.d.ts | 6 + .../components/atoms/selectionCard/index.d.ts | 2 + dist/core/components/atoms/slider/Slider.d.ts | 20 + dist/core/components/atoms/slider/index.d.ts | 2 + .../components/atoms/spinner/Spinner.d.ts | 16 + dist/core/components/atoms/spinner/index.d.ts | 2 + .../atoms/statusHint/StatusHint.d.ts | 19 + .../components/atoms/statusHint/index.d.ts | 2 + .../atoms/subheading/Subheading.d.ts | 16 + .../components/atoms/subheading/index.d.ts | 2 + .../components/atoms/switchInput/Switch.d.ts | 18 + .../components/atoms/switchInput/index.d.ts | 2 + dist/core/components/atoms/text/Text.d.ts | 15 + dist/core/components/atoms/text/index.d.ts | 2 + .../components/atoms/textarea/Textarea.d.ts | 19 + .../core/components/atoms/textarea/index.d.ts | 2 + .../components/atoms/toast/ActionButton.d.ts | 15 + dist/core/components/atoms/toast/Toast.d.ts | 22 + dist/core/components/atoms/toast/index.d.ts | 2 + .../core/components/css-utilities/Schema.d.ts | 3 + .../css-utilities/Spacing/Data.d.ts | 10 + .../css-utilities/Spacing/Schema.d.ts | 3 + .../css-utilities/designTokens/Data.d.ts | 57 + .../css-utilities/designTokens/Schema.d.ts | 17 + .../css-utilities/designTokens/Utilities.d.ts | 1 + .../components/molecules/chatMessage/Box.d.ts | 16 + .../molecules/chatMessage/ChatMessage.d.ts | 21 + .../molecules/chatMessage/MessageText.d.ts | 16 + .../molecules/chatMessage/Status.d.ts | 14 + .../molecules/chatMessage/index.d.ts | 2 + .../molecules/chipInput/ChipInput.d.ts | 34 + .../components/molecules/chipInput/index.d.ts | 2 + .../components/molecules/dialog/Dialog.d.ts | 27 + .../components/molecules/dialog/index.d.ts | 2 + .../molecules/dropzone/Dropzone.d.ts | 25 + .../molecules/dropzone/DropzoneActive.d.ts | 9 + .../molecules/dropzone/DropzoneBase.d.ts | 42 + .../molecules/dropzone/DropzoneError.d.ts | 10 + .../molecules/dropzone/DropzoneIcon.d.ts | 7 + .../molecules/dropzone/FileErrors.d.ts | 26 + .../molecules/dropzone/FileSelectorUtils.d.ts | 11 + .../components/molecules/dropzone/index.d.ts | 2 + .../components/molecules/dropzone/utils.d.ts | 10 + .../editableChipInput/EditableChipInput.d.ts | 17 + .../molecules/editableChipInput/index.d.ts | 2 + .../editableDropdown/EditableDropdown.d.ts | 18 + .../molecules/editableDropdown/index.d.ts | 2 + .../editableInput/EditableInput.d.ts | 21 + .../molecules/editableInput/index.d.ts | 2 + .../molecules/emptyState/EmptyState.d.ts | 43 + .../emptyState/EmptyStateActions.d.ts | 7 + .../emptyState/EmptyStateContext.d.ts | 8 + .../emptyState/EmptyStateDescription.d.ts | 7 + .../molecules/emptyState/EmptyStateImage.d.ts | 19 + .../molecules/emptyState/EmptyStateTitle.d.ts | 7 + .../emptyState/_tests_/EmptyState.test.d.ts | 1 + .../molecules/emptyState/index.d.ts | 2 + .../molecules/fileList/FileIcon.d.ts | 15 + .../molecules/fileList/FileList.d.ts | 16 + .../molecules/fileList/FileListItem.d.ts | 27 + .../components/molecules/fileList/index.d.ts | 1 + .../molecules/fileUploader/FileUploader.d.ts | 21 + .../fileUploader/FileUploaderButton.d.ts | 21 + .../fileUploader/FileUploaderFormat.d.ts | 8 + .../fileUploader/FileUploaderItem.d.ts | 24 + .../fileUploader/FileUploaderList.d.ts | 16 + .../fileUploader/FileUploaderStatus.d.ts | 17 + .../molecules/fileUploader/index.d.ts | 2 + .../fullscreenModal/FullscreenModal.d.ts | 36 + .../molecules/fullscreenModal/index.d.ts | 2 + .../molecules/inputMask/InputMask.d.ts | 26 + .../components/molecules/inputMask/index.d.ts | 2 + .../molecules/inputMask/utilites.d.ts | 3 + .../components/molecules/modal/Modal.d.ts | 38 + .../components/molecules/modal/ModalBody.d.ts | 16 + .../molecules/modal/ModalFooter.d.ts | 14 + .../molecules/modal/ModalHeader.d.ts | 15 + .../components/molecules/modal/index.d.ts | 5 + .../modalDescription/ModalDescription.d.ts | 10 + .../molecules/modalDescription/index.d.ts | 2 + .../molecules/overlayBody/OverlayBody.d.ts | 14 + .../molecules/overlayBody/index.d.ts | 2 + .../overlayFooter/OverlayFooter.d.ts | 13 + .../molecules/overlayFooter/index.d.ts | 2 + .../overlayHeader/OverlayHeader.d.ts | 17 + .../molecules/overlayHeader/index.d.ts | 2 + .../molecules/pagination/Pagination.d.ts | 20 + .../molecules/pagination/index.d.ts | 2 + .../molecules/placeholder/Placeholder.d.ts | 19 + .../molecules/placeholder/index.d.ts | 2 + .../components/molecules/popover/Popover.d.ts | 44 + .../components/molecules/popover/index.d.ts | 2 + .../molecules/sidesheet/Sidesheet.d.ts | 42 + .../components/molecules/sidesheet/index.d.ts | 2 + .../components/molecules/stepper/Step.d.ts | 14 + .../components/molecules/stepper/Stepper.d.ts | 23 + .../components/molecules/stepper/index.d.ts | 2 + dist/core/components/molecules/tabs/Tab.d.ts | 16 + dist/core/components/molecules/tabs/Tabs.d.ts | 35 + .../molecules/tabs/TabsWrapper.d.ts | 12 + .../core/components/molecules/tabs/index.d.ts | 3 + .../components/molecules/tooltip/Tooltip.d.ts | 28 + .../components/molecules/tooltip/index.d.ts | 2 + .../VerificationCodeInput.d.ts | 17 + .../verificationCodeInput/index.d.ts | 2 + .../organisms/calendar/Calendar.d.ts | 103 + .../components/organisms/calendar/config.d.ts | 13 + .../components/organisms/calendar/index.d.ts | 4 + .../components/organisms/calendar/types.d.ts | 13 + .../organisms/calendar/utility.d.ts | 15 + .../organisms/choiceList/ChoiceList.d.ts | 32 + .../organisms/choiceList/index.d.ts | 2 + .../organisms/combobox/Combobox.d.ts | 47 + .../organisms/combobox/ComboboxContext.d.ts | 23 + .../organisms/combobox/ComboboxList.d.ts | 20 + .../organisms/combobox/ComboboxOption.d.ts | 18 + .../components/organisms/combobox/index.d.ts | 2 + .../combobox/trigger/ChipInputBox.d.ts | 3 + .../combobox/trigger/ComboboxTrigger.d.ts | 22 + .../organisms/combobox/trigger/InputBox.d.ts | 3 + .../combobox/trigger/MultiselectTrigger.d.ts | 41 + .../organisms/combobox/trigger/index.d.ts | 1 + .../organisms/combobox/trigger/utils.d.ts | 3 + .../components/organisms/combobox/utils.d.ts | 2 + .../organisms/datePicker/DatePicker.d.ts | 55 + .../organisms/datePicker/Trigger.d.ts | 10 + .../organisms/datePicker/index.d.ts | 2 + .../dateRangePicker/DateRangePicker.d.ts | 104 + .../dateRangePicker/SingleInputTrigger.d.ts | 10 + .../organisms/dateRangePicker/Trigger.d.ts | 11 + .../organisms/dateRangePicker/index.d.ts | 2 + .../organisms/dateRangePicker/utilities.d.ts | 22 + dist/core/components/organisms/grid/Cell.d.ts | 28 + dist/core/components/organisms/grid/Grid.d.ts | 142 + .../components/organisms/grid/GridBody.d.ts | 9 + .../components/organisms/grid/GridCell.d.ts | 27 + .../organisms/grid/GridContext.d.ts | 9 + .../components/organisms/grid/GridHead.d.ts | 12 + .../organisms/grid/GridNestedRow.d.ts | 17 + .../components/organisms/grid/GridRow.d.ts | 16 + .../organisms/grid/columnUtility.d.ts | 26 + .../organisms/grid/defaultProps.d.ts | 3 + .../core/components/organisms/grid/index.d.ts | 2 + .../components/organisms/grid/rowUtility.d.ts | 10 + .../components/organisms/grid/utility.d.ts | 13 + .../horizontalNav/HorizontalNav.d.ts | 6 + .../organisms/horizontalNav/index.d.ts | 2 + .../inlineMessage/InlineMessage.d.ts | 18 + .../organisms/inlineMessage/index.d.ts | 1 + dist/core/components/organisms/list/List.d.ts | 35 + .../core/components/organisms/list/index.d.ts | 2 + .../components/organisms/listbox/Listbox.d.ts | 33 + .../components/organisms/listbox/index.d.ts | 3 + .../listbox/listboxItem/ListBody.d.ts | 6 + .../listbox/listboxItem/ListboxItem.d.ts | 24 + .../organisms/listbox/listboxItem/index.d.ts | 1 + .../listbox/nestedList/Animation.d.ts | 2 + .../listbox/nestedList/NestedList.d.ts | 7 + .../organisms/listbox/nestedList/index.d.ts | 1 + .../listbox/reorderList/Draggable.d.ts | 71 + .../listbox/reorderList/DraggableList.d.ts | 2 + .../organisms/listbox/reorderList/index.d.ts | 1 + .../organisms/listbox/reorderList/types.d.ts | 46 + .../organisms/listbox/reorderList/utils.d.ts | 10 + .../components/organisms/listbox/utils.d.ts | 1 + dist/core/components/organisms/menu/Menu.d.ts | 49 + .../organisms/menu/MenuContext.d.ts | 13 + .../components/organisms/menu/MenuGroup.d.ts | 14 + .../components/organisms/menu/MenuItem.d.ts | 19 + .../components/organisms/menu/MenuList.d.ts | 19 + .../components/organisms/menu/SubMenu.d.ts | 6 + .../organisms/menu/SubMenuContext.d.ts | 10 + .../core/components/organisms/menu/index.d.ts | 2 + .../organisms/menu/trigger/MenuTrigger.d.ts | 6 + .../organisms/menu/trigger/utils.d.ts | 3 + .../core/components/organisms/menu/utils.d.ts | 2 + .../organisms/navigation/Navigation.d.ts | 28 + .../navigation/VerticalNavigation.d.ts | 22 + .../organisms/navigation/index.d.ts | 2 + .../organisms/pageHeader/PageHeader.d.ts | 25 + .../organisms/pageHeader/index.d.ts | 2 + .../organisms/pageHeader/utils.d.ts | 32 + .../organisms/select/SearchInput.d.ts | 8 + .../components/organisms/select/Select.d.ts | 37 + .../organisms/select/SelectContext.d.ts | 25 + .../organisms/select/SelectEmptyTemplate.d.ts | 9 + .../organisms/select/SelectFooter.d.ts | 7 + .../organisms/select/SelectList.d.ts | 20 + .../organisms/select/SelectOption.d.ts | 19 + .../organisms/select/SelectTrigger.d.ts | 24 + .../select/__test__/Select.test.d.ts | 1 + .../organisms/select/__test__/utils.test.d.ts | 1 + .../components/organisms/select/index.d.ts | 2 + .../components/organisms/select/utils.d.ts | 12 + .../organisms/table/DraggableDropdown.d.ts | 7 + .../components/organisms/table/Header.d.ts | 50 + .../components/organisms/table/Table.d.ts | 142 + .../components/organisms/table/index.d.ts | 2 + .../components/organisms/table/utils.d.ts | 3 + .../organisms/textField/TextField.d.ts | 8 + .../organisms/textField/TextFieldCommon.d.ts | 12 + .../textField/TextFieldWithInput.d.ts | 14 + .../textField/TextFieldWithTextarea.d.ts | 11 + .../textField/__test__/Textarea.test.d.ts | 6 + .../components/organisms/textField/index.d.ts | 2 + .../organisms/timePicker/TimePicker.d.ts | 16 + .../timePicker/TimePickerWithInput.d.ts | 25 + .../timePicker/TimePickerWithSearch.d.ts | 33 + .../organisms/timePicker/index.d.ts | 4 + .../timePicker/utility/searchUtils.d.ts | 7 + .../timePicker/utility/timePickerUtility.d.ts | 19 + .../organisms/timePicker/utils.d.ts | 13 + .../organisms/verticalNav/MenuItem.d.ts | 20 + .../organisms/verticalNav/VerticalNav.d.ts | 23 + .../organisms/verticalNav/index.d.ts | 2 + dist/core/index.d.ts | 95 + dist/core/index.type.d.ts | 94 + dist/core/utils/Keys.d.ts | 11 + dist/core/utils/OverlayManager.d.ts | 9 + dist/core/utils/action.d.ts | 1 + dist/core/utils/css.d.ts | 1 + dist/core/utils/docPage/generateImports.d.ts | 2 + dist/core/utils/docPage/index.d.ts | 9 + dist/core/utils/docPage/sandbox.d.ts | 2 + dist/core/utils/index.d.ts | 3 + dist/core/utils/masks.d.ts | 9 + dist/core/utils/navigationHelper.d.ts | 33 + dist/core/utils/overlayHelper.d.ts | 10 + dist/core/utils/storybookEventEmitter.d.ts | 1 + dist/core/utils/testHelper.d.ts | 12 + dist/core/utils/types.d.ts | 18 + dist/core/utils/uidGenerator.d.ts | 2 + dist/core/utils/validators.d.ts | 5 + dist/index.esm.js | 38987 +++++++++------- dist/index.js | 29979 +++++++----- dist/index.js.map | 2 +- dist/index.umd.js | 2 +- dist/index.umd.js.br | Bin 60510 -> 85813 bytes dist/index.umd.js.gz | Bin 72662 -> 103480 bytes dist/scripts/setupTest.d.ts | 1 + package-lock.json | 2 +- 382 files changed, 64101 insertions(+), 30674 deletions(-) create mode 100644 css/dist/MaterialSymbolsRounded.woff2 create mode 100644 css/dist/index.css create mode 100644 css/dist/index.css.map create mode 100644 dist/core/accessibility/utils/index.d.ts create mode 100644 dist/core/accessibility/utils/isEnterKey.d.ts create mode 100644 dist/core/accessibility/utils/isSpaceKey.d.ts create mode 100644 dist/core/accessibility/utils/useAccessibilityProps.d.ts create mode 100644 dist/core/common.type.d.ts create mode 100644 dist/core/components/atoms/_chip/index.d.ts create mode 100644 dist/core/components/atoms/_text/index.d.ts create mode 100644 dist/core/components/atoms/actionCard/ActionCard.d.ts create mode 100644 dist/core/components/atoms/actionCard/index.d.ts create mode 100644 dist/core/components/atoms/avatar/Avatar.d.ts create mode 100644 dist/core/components/atoms/avatar/AvatarProvider.d.ts create mode 100644 dist/core/components/atoms/avatar/avatarIcon/AvatarIcon.d.ts create mode 100644 dist/core/components/atoms/avatar/avatarIcon/index.d.ts create mode 100644 dist/core/components/atoms/avatar/avatarImage/AvatarImage.d.ts create mode 100644 dist/core/components/atoms/avatar/avatarImage/index.d.ts create mode 100644 dist/core/components/atoms/avatar/index.d.ts create mode 100644 dist/core/components/atoms/avatarGroup/AvatarCount.d.ts create mode 100644 dist/core/components/atoms/avatarGroup/AvatarGroup.d.ts create mode 100644 dist/core/components/atoms/avatarGroup/AvatarPopperBody.d.ts create mode 100644 dist/core/components/atoms/avatarGroup/Avatars.d.ts create mode 100644 dist/core/components/atoms/avatarGroup/index.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/AvatarSelection.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/AvatarSelectionContext.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionEmptyState.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionInput.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionList.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionOption.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionPopover.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarPopover/index.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarPopover/utils.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarsSelection/AvatarSelectionCount.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatar.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatarsWrapper.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarsSelection/index.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/avatarsSelection/utils.d.ts create mode 100644 dist/core/components/atoms/avatarSelection/index.d.ts create mode 100644 dist/core/components/atoms/backdrop/Backdrop.d.ts create mode 100644 dist/core/components/atoms/backdrop/index.d.ts create mode 100644 dist/core/components/atoms/badge/Badge.d.ts create mode 100644 dist/core/components/atoms/badge/index.d.ts create mode 100644 dist/core/components/atoms/breadcrumbs/Breadcrumbs.d.ts create mode 100644 dist/core/components/atoms/breadcrumbs/index.d.ts create mode 100644 dist/core/components/atoms/button/Button.d.ts create mode 100644 dist/core/components/atoms/button/index.d.ts create mode 100644 dist/core/components/atoms/caption/Caption.d.ts create mode 100644 dist/core/components/atoms/caption/index.d.ts create mode 100644 dist/core/components/atoms/card/Card.d.ts create mode 100644 dist/core/components/atoms/card/index.d.ts create mode 100644 dist/core/components/atoms/cardBody/CardBody.d.ts create mode 100644 dist/core/components/atoms/cardBody/index.d.ts create mode 100644 dist/core/components/atoms/cardFooter/CardFooter.d.ts create mode 100644 dist/core/components/atoms/cardFooter/index.d.ts create mode 100644 dist/core/components/atoms/cardHeader/CardHeader.d.ts create mode 100644 dist/core/components/atoms/cardHeader/index.d.ts create mode 100644 dist/core/components/atoms/cardSubdued/CardSubdued.d.ts create mode 100644 dist/core/components/atoms/cardSubdued/index.d.ts create mode 100644 dist/core/components/atoms/checkbox/Checkbox.d.ts create mode 100644 dist/core/components/atoms/checkbox/CheckboxIcon.d.ts create mode 100644 dist/core/components/atoms/checkbox/index.d.ts create mode 100644 dist/core/components/atoms/chip/Chip.d.ts create mode 100644 dist/core/components/atoms/chip/index.d.ts create mode 100644 dist/core/components/atoms/chipGroup/ChipGroup.d.ts create mode 100644 dist/core/components/atoms/chipGroup/index.d.ts create mode 100644 dist/core/components/atoms/collapsible/Collapsible.d.ts create mode 100644 dist/core/components/atoms/collapsible/index.d.ts create mode 100644 dist/core/components/atoms/column/Column.d.ts create mode 100644 dist/core/components/atoms/column/index.d.ts create mode 100644 dist/core/components/atoms/divider/Divider.d.ts create mode 100644 dist/core/components/atoms/divider/index.d.ts create mode 100644 dist/core/components/atoms/dropdown/Dropdown.d.ts create mode 100644 dist/core/components/atoms/dropdown/DropdownButton.d.ts create mode 100644 dist/core/components/atoms/dropdown/DropdownList.d.ts create mode 100644 dist/core/components/atoms/dropdown/ErrorTemplate.d.ts create mode 100644 dist/core/components/atoms/dropdown/Loading.d.ts create mode 100644 dist/core/components/atoms/dropdown/index.d.ts create mode 100644 dist/core/components/atoms/dropdown/option/CheckboxOption.d.ts create mode 100644 dist/core/components/atoms/dropdown/option/DefaultOption.d.ts create mode 100644 dist/core/components/atoms/dropdown/option/IconOption.d.ts create mode 100644 dist/core/components/atoms/dropdown/option/IconWithMetaOption.d.ts create mode 100644 dist/core/components/atoms/dropdown/option/MetaOption.d.ts create mode 100644 dist/core/components/atoms/dropdown/option/index.d.ts create mode 100644 dist/core/components/atoms/dropdown/utility.d.ts create mode 100644 dist/core/components/atoms/editable/Editable.d.ts create mode 100644 dist/core/components/atoms/editable/index.d.ts create mode 100644 dist/core/components/atoms/heading/Heading.d.ts create mode 100644 dist/core/components/atoms/heading/index.d.ts create mode 100644 dist/core/components/atoms/helpText/HelpText.d.ts create mode 100644 dist/core/components/atoms/helpText/index.d.ts create mode 100644 dist/core/components/atoms/icon/Icon.d.ts create mode 100644 dist/core/components/atoms/icon/index.d.ts create mode 100644 dist/core/components/atoms/input/Input.d.ts create mode 100644 dist/core/components/atoms/input/actionButton/ActionButton.d.ts create mode 100644 dist/core/components/atoms/input/actionButton/index.d.ts create mode 100644 dist/core/components/atoms/input/index.d.ts create mode 100644 dist/core/components/atoms/label/Label.d.ts create mode 100644 dist/core/components/atoms/label/index.d.ts create mode 100644 dist/core/components/atoms/legend/Legend.d.ts create mode 100644 dist/core/components/atoms/legend/index.d.ts create mode 100644 dist/core/components/atoms/link/Link.d.ts create mode 100644 dist/core/components/atoms/link/index.d.ts create mode 100644 dist/core/components/atoms/linkButton/LinkButton.d.ts create mode 100644 dist/core/components/atoms/linkButton/index.d.ts create mode 100644 dist/core/components/atoms/message/Message.d.ts create mode 100644 dist/core/components/atoms/message/index.d.ts create mode 100644 dist/core/components/atoms/metaList/Meta.d.ts create mode 100644 dist/core/components/atoms/metaList/MetaList.d.ts create mode 100644 dist/core/components/atoms/metaList/index.d.ts create mode 100644 dist/core/components/atoms/metricInput/MetricInput.d.ts create mode 100644 dist/core/components/atoms/metricInput/index.d.ts create mode 100644 dist/core/components/atoms/multiSlider/Handle.d.ts create mode 100644 dist/core/components/atoms/multiSlider/SliderUtils.d.ts create mode 100644 dist/core/components/atoms/multiSlider/index.d.ts create mode 100644 dist/core/components/atoms/outsideClick/OutsideClick.d.ts create mode 100644 dist/core/components/atoms/outsideClick/index.d.ts create mode 100644 dist/core/components/atoms/paragraph/Paragraph.d.ts create mode 100644 dist/core/components/atoms/paragraph/index.d.ts create mode 100644 dist/core/components/atoms/pills/Pills.d.ts create mode 100644 dist/core/components/atoms/pills/index.d.ts create mode 100644 dist/core/components/atoms/placeholderImage/PlaceholderImage.d.ts create mode 100644 dist/core/components/atoms/placeholderImage/index.d.ts create mode 100644 dist/core/components/atoms/placeholderParagraph/PlaceholderParagraph.d.ts create mode 100644 dist/core/components/atoms/placeholderParagraph/index.d.ts create mode 100644 dist/core/components/atoms/popperWrapper/PopperWrapper.d.ts create mode 100644 dist/core/components/atoms/popperWrapper/index.d.ts create mode 100644 dist/core/components/atoms/progressBar/ProgressBar.d.ts create mode 100644 dist/core/components/atoms/progressBar/index.d.ts create mode 100644 dist/core/components/atoms/progressRing/ProgressRing.d.ts create mode 100644 dist/core/components/atoms/progressRing/index.d.ts create mode 100644 dist/core/components/atoms/radio/Radio.d.ts create mode 100644 dist/core/components/atoms/radio/index.d.ts create mode 100644 dist/core/components/atoms/rangeSlider/RangeSlider.d.ts create mode 100644 dist/core/components/atoms/rangeSlider/index.d.ts create mode 100644 dist/core/components/atoms/row/Row.d.ts create mode 100644 dist/core/components/atoms/row/index.d.ts create mode 100644 dist/core/components/atoms/selectionCard/SelectionCard.d.ts create mode 100644 dist/core/components/atoms/selectionCard/hooks/index.d.ts create mode 100644 dist/core/components/atoms/selectionCard/hooks/useMultiSelect.d.ts create mode 100644 dist/core/components/atoms/selectionCard/hooks/useSingleSelect.d.ts create mode 100644 dist/core/components/atoms/selectionCard/index.d.ts create mode 100644 dist/core/components/atoms/slider/Slider.d.ts create mode 100644 dist/core/components/atoms/slider/index.d.ts create mode 100644 dist/core/components/atoms/spinner/Spinner.d.ts create mode 100644 dist/core/components/atoms/spinner/index.d.ts create mode 100644 dist/core/components/atoms/statusHint/StatusHint.d.ts create mode 100644 dist/core/components/atoms/statusHint/index.d.ts create mode 100644 dist/core/components/atoms/subheading/Subheading.d.ts create mode 100644 dist/core/components/atoms/subheading/index.d.ts create mode 100644 dist/core/components/atoms/switchInput/Switch.d.ts create mode 100644 dist/core/components/atoms/switchInput/index.d.ts create mode 100644 dist/core/components/atoms/text/Text.d.ts create mode 100644 dist/core/components/atoms/text/index.d.ts create mode 100644 dist/core/components/atoms/textarea/Textarea.d.ts create mode 100644 dist/core/components/atoms/textarea/index.d.ts create mode 100644 dist/core/components/atoms/toast/ActionButton.d.ts create mode 100644 dist/core/components/atoms/toast/Toast.d.ts create mode 100644 dist/core/components/atoms/toast/index.d.ts create mode 100644 dist/core/components/css-utilities/Schema.d.ts create mode 100644 dist/core/components/css-utilities/Spacing/Data.d.ts create mode 100644 dist/core/components/css-utilities/Spacing/Schema.d.ts create mode 100644 dist/core/components/css-utilities/designTokens/Data.d.ts create mode 100644 dist/core/components/css-utilities/designTokens/Schema.d.ts create mode 100644 dist/core/components/css-utilities/designTokens/Utilities.d.ts create mode 100644 dist/core/components/molecules/chatMessage/Box.d.ts create mode 100644 dist/core/components/molecules/chatMessage/ChatMessage.d.ts create mode 100644 dist/core/components/molecules/chatMessage/MessageText.d.ts create mode 100644 dist/core/components/molecules/chatMessage/Status.d.ts create mode 100644 dist/core/components/molecules/chatMessage/index.d.ts create mode 100644 dist/core/components/molecules/chipInput/ChipInput.d.ts create mode 100644 dist/core/components/molecules/chipInput/index.d.ts create mode 100644 dist/core/components/molecules/dialog/Dialog.d.ts create mode 100644 dist/core/components/molecules/dialog/index.d.ts create mode 100644 dist/core/components/molecules/dropzone/Dropzone.d.ts create mode 100644 dist/core/components/molecules/dropzone/DropzoneActive.d.ts create mode 100644 dist/core/components/molecules/dropzone/DropzoneBase.d.ts create mode 100644 dist/core/components/molecules/dropzone/DropzoneError.d.ts create mode 100644 dist/core/components/molecules/dropzone/DropzoneIcon.d.ts create mode 100644 dist/core/components/molecules/dropzone/FileErrors.d.ts create mode 100644 dist/core/components/molecules/dropzone/FileSelectorUtils.d.ts create mode 100644 dist/core/components/molecules/dropzone/index.d.ts create mode 100644 dist/core/components/molecules/dropzone/utils.d.ts create mode 100644 dist/core/components/molecules/editableChipInput/EditableChipInput.d.ts create mode 100644 dist/core/components/molecules/editableChipInput/index.d.ts create mode 100644 dist/core/components/molecules/editableDropdown/EditableDropdown.d.ts create mode 100644 dist/core/components/molecules/editableDropdown/index.d.ts create mode 100644 dist/core/components/molecules/editableInput/EditableInput.d.ts create mode 100644 dist/core/components/molecules/editableInput/index.d.ts create mode 100644 dist/core/components/molecules/emptyState/EmptyState.d.ts create mode 100644 dist/core/components/molecules/emptyState/EmptyStateActions.d.ts create mode 100644 dist/core/components/molecules/emptyState/EmptyStateContext.d.ts create mode 100644 dist/core/components/molecules/emptyState/EmptyStateDescription.d.ts create mode 100644 dist/core/components/molecules/emptyState/EmptyStateImage.d.ts create mode 100644 dist/core/components/molecules/emptyState/EmptyStateTitle.d.ts create mode 100644 dist/core/components/molecules/emptyState/_tests_/EmptyState.test.d.ts create mode 100644 dist/core/components/molecules/emptyState/index.d.ts create mode 100644 dist/core/components/molecules/fileList/FileIcon.d.ts create mode 100644 dist/core/components/molecules/fileList/FileList.d.ts create mode 100644 dist/core/components/molecules/fileList/FileListItem.d.ts create mode 100644 dist/core/components/molecules/fileList/index.d.ts create mode 100644 dist/core/components/molecules/fileUploader/FileUploader.d.ts create mode 100644 dist/core/components/molecules/fileUploader/FileUploaderButton.d.ts create mode 100644 dist/core/components/molecules/fileUploader/FileUploaderFormat.d.ts create mode 100644 dist/core/components/molecules/fileUploader/FileUploaderItem.d.ts create mode 100644 dist/core/components/molecules/fileUploader/FileUploaderList.d.ts create mode 100644 dist/core/components/molecules/fileUploader/FileUploaderStatus.d.ts create mode 100644 dist/core/components/molecules/fileUploader/index.d.ts create mode 100644 dist/core/components/molecules/fullscreenModal/FullscreenModal.d.ts create mode 100644 dist/core/components/molecules/fullscreenModal/index.d.ts create mode 100644 dist/core/components/molecules/inputMask/InputMask.d.ts create mode 100644 dist/core/components/molecules/inputMask/index.d.ts create mode 100644 dist/core/components/molecules/inputMask/utilites.d.ts create mode 100644 dist/core/components/molecules/modal/Modal.d.ts create mode 100644 dist/core/components/molecules/modal/ModalBody.d.ts create mode 100644 dist/core/components/molecules/modal/ModalFooter.d.ts create mode 100644 dist/core/components/molecules/modal/ModalHeader.d.ts create mode 100644 dist/core/components/molecules/modal/index.d.ts create mode 100644 dist/core/components/molecules/modalDescription/ModalDescription.d.ts create mode 100644 dist/core/components/molecules/modalDescription/index.d.ts create mode 100644 dist/core/components/molecules/overlayBody/OverlayBody.d.ts create mode 100644 dist/core/components/molecules/overlayBody/index.d.ts create mode 100644 dist/core/components/molecules/overlayFooter/OverlayFooter.d.ts create mode 100644 dist/core/components/molecules/overlayFooter/index.d.ts create mode 100644 dist/core/components/molecules/overlayHeader/OverlayHeader.d.ts create mode 100644 dist/core/components/molecules/overlayHeader/index.d.ts create mode 100644 dist/core/components/molecules/pagination/Pagination.d.ts create mode 100644 dist/core/components/molecules/pagination/index.d.ts create mode 100644 dist/core/components/molecules/placeholder/Placeholder.d.ts create mode 100644 dist/core/components/molecules/placeholder/index.d.ts create mode 100644 dist/core/components/molecules/popover/Popover.d.ts create mode 100644 dist/core/components/molecules/popover/index.d.ts create mode 100644 dist/core/components/molecules/sidesheet/Sidesheet.d.ts create mode 100644 dist/core/components/molecules/sidesheet/index.d.ts create mode 100644 dist/core/components/molecules/stepper/Step.d.ts create mode 100644 dist/core/components/molecules/stepper/Stepper.d.ts create mode 100644 dist/core/components/molecules/stepper/index.d.ts create mode 100644 dist/core/components/molecules/tabs/Tab.d.ts create mode 100644 dist/core/components/molecules/tabs/Tabs.d.ts create mode 100644 dist/core/components/molecules/tabs/TabsWrapper.d.ts create mode 100644 dist/core/components/molecules/tabs/index.d.ts create mode 100644 dist/core/components/molecules/tooltip/Tooltip.d.ts create mode 100644 dist/core/components/molecules/tooltip/index.d.ts create mode 100644 dist/core/components/molecules/verificationCodeInput/VerificationCodeInput.d.ts create mode 100644 dist/core/components/molecules/verificationCodeInput/index.d.ts create mode 100644 dist/core/components/organisms/calendar/Calendar.d.ts create mode 100644 dist/core/components/organisms/calendar/config.d.ts create mode 100644 dist/core/components/organisms/calendar/index.d.ts create mode 100644 dist/core/components/organisms/calendar/types.d.ts create mode 100644 dist/core/components/organisms/calendar/utility.d.ts create mode 100644 dist/core/components/organisms/choiceList/ChoiceList.d.ts create mode 100644 dist/core/components/organisms/choiceList/index.d.ts create mode 100644 dist/core/components/organisms/combobox/Combobox.d.ts create mode 100644 dist/core/components/organisms/combobox/ComboboxContext.d.ts create mode 100644 dist/core/components/organisms/combobox/ComboboxList.d.ts create mode 100644 dist/core/components/organisms/combobox/ComboboxOption.d.ts create mode 100644 dist/core/components/organisms/combobox/index.d.ts create mode 100644 dist/core/components/organisms/combobox/trigger/ChipInputBox.d.ts create mode 100644 dist/core/components/organisms/combobox/trigger/ComboboxTrigger.d.ts create mode 100644 dist/core/components/organisms/combobox/trigger/InputBox.d.ts create mode 100644 dist/core/components/organisms/combobox/trigger/MultiselectTrigger.d.ts create mode 100644 dist/core/components/organisms/combobox/trigger/index.d.ts create mode 100644 dist/core/components/organisms/combobox/trigger/utils.d.ts create mode 100644 dist/core/components/organisms/combobox/utils.d.ts create mode 100644 dist/core/components/organisms/datePicker/DatePicker.d.ts create mode 100644 dist/core/components/organisms/datePicker/Trigger.d.ts create mode 100644 dist/core/components/organisms/datePicker/index.d.ts create mode 100644 dist/core/components/organisms/dateRangePicker/DateRangePicker.d.ts create mode 100644 dist/core/components/organisms/dateRangePicker/SingleInputTrigger.d.ts create mode 100644 dist/core/components/organisms/dateRangePicker/Trigger.d.ts create mode 100644 dist/core/components/organisms/dateRangePicker/index.d.ts create mode 100644 dist/core/components/organisms/dateRangePicker/utilities.d.ts create mode 100644 dist/core/components/organisms/grid/Cell.d.ts create mode 100644 dist/core/components/organisms/grid/Grid.d.ts create mode 100644 dist/core/components/organisms/grid/GridBody.d.ts create mode 100644 dist/core/components/organisms/grid/GridCell.d.ts create mode 100644 dist/core/components/organisms/grid/GridContext.d.ts create mode 100644 dist/core/components/organisms/grid/GridHead.d.ts create mode 100644 dist/core/components/organisms/grid/GridNestedRow.d.ts create mode 100644 dist/core/components/organisms/grid/GridRow.d.ts create mode 100644 dist/core/components/organisms/grid/columnUtility.d.ts create mode 100644 dist/core/components/organisms/grid/defaultProps.d.ts create mode 100644 dist/core/components/organisms/grid/index.d.ts create mode 100644 dist/core/components/organisms/grid/rowUtility.d.ts create mode 100644 dist/core/components/organisms/grid/utility.d.ts create mode 100644 dist/core/components/organisms/horizontalNav/HorizontalNav.d.ts create mode 100644 dist/core/components/organisms/horizontalNav/index.d.ts create mode 100644 dist/core/components/organisms/inlineMessage/InlineMessage.d.ts create mode 100644 dist/core/components/organisms/inlineMessage/index.d.ts create mode 100644 dist/core/components/organisms/list/List.d.ts create mode 100644 dist/core/components/organisms/list/index.d.ts create mode 100644 dist/core/components/organisms/listbox/Listbox.d.ts create mode 100644 dist/core/components/organisms/listbox/index.d.ts create mode 100644 dist/core/components/organisms/listbox/listboxItem/ListBody.d.ts create mode 100644 dist/core/components/organisms/listbox/listboxItem/ListboxItem.d.ts create mode 100644 dist/core/components/organisms/listbox/listboxItem/index.d.ts create mode 100644 dist/core/components/organisms/listbox/nestedList/Animation.d.ts create mode 100644 dist/core/components/organisms/listbox/nestedList/NestedList.d.ts create mode 100644 dist/core/components/organisms/listbox/nestedList/index.d.ts create mode 100644 dist/core/components/organisms/listbox/reorderList/Draggable.d.ts create mode 100644 dist/core/components/organisms/listbox/reorderList/DraggableList.d.ts create mode 100644 dist/core/components/organisms/listbox/reorderList/index.d.ts create mode 100644 dist/core/components/organisms/listbox/reorderList/types.d.ts create mode 100644 dist/core/components/organisms/listbox/reorderList/utils.d.ts create mode 100644 dist/core/components/organisms/listbox/utils.d.ts create mode 100644 dist/core/components/organisms/menu/Menu.d.ts create mode 100644 dist/core/components/organisms/menu/MenuContext.d.ts create mode 100644 dist/core/components/organisms/menu/MenuGroup.d.ts create mode 100644 dist/core/components/organisms/menu/MenuItem.d.ts create mode 100644 dist/core/components/organisms/menu/MenuList.d.ts create mode 100644 dist/core/components/organisms/menu/SubMenu.d.ts create mode 100644 dist/core/components/organisms/menu/SubMenuContext.d.ts create mode 100644 dist/core/components/organisms/menu/index.d.ts create mode 100644 dist/core/components/organisms/menu/trigger/MenuTrigger.d.ts create mode 100644 dist/core/components/organisms/menu/trigger/utils.d.ts create mode 100644 dist/core/components/organisms/menu/utils.d.ts create mode 100644 dist/core/components/organisms/navigation/Navigation.d.ts create mode 100644 dist/core/components/organisms/navigation/VerticalNavigation.d.ts create mode 100644 dist/core/components/organisms/navigation/index.d.ts create mode 100644 dist/core/components/organisms/pageHeader/PageHeader.d.ts create mode 100644 dist/core/components/organisms/pageHeader/index.d.ts create mode 100644 dist/core/components/organisms/pageHeader/utils.d.ts create mode 100644 dist/core/components/organisms/select/SearchInput.d.ts create mode 100644 dist/core/components/organisms/select/Select.d.ts create mode 100644 dist/core/components/organisms/select/SelectContext.d.ts create mode 100644 dist/core/components/organisms/select/SelectEmptyTemplate.d.ts create mode 100644 dist/core/components/organisms/select/SelectFooter.d.ts create mode 100644 dist/core/components/organisms/select/SelectList.d.ts create mode 100644 dist/core/components/organisms/select/SelectOption.d.ts create mode 100644 dist/core/components/organisms/select/SelectTrigger.d.ts create mode 100644 dist/core/components/organisms/select/__test__/Select.test.d.ts create mode 100644 dist/core/components/organisms/select/__test__/utils.test.d.ts create mode 100644 dist/core/components/organisms/select/index.d.ts create mode 100644 dist/core/components/organisms/select/utils.d.ts create mode 100644 dist/core/components/organisms/table/DraggableDropdown.d.ts create mode 100644 dist/core/components/organisms/table/Header.d.ts create mode 100644 dist/core/components/organisms/table/Table.d.ts create mode 100644 dist/core/components/organisms/table/index.d.ts create mode 100644 dist/core/components/organisms/table/utils.d.ts create mode 100644 dist/core/components/organisms/textField/TextField.d.ts create mode 100644 dist/core/components/organisms/textField/TextFieldCommon.d.ts create mode 100644 dist/core/components/organisms/textField/TextFieldWithInput.d.ts create mode 100644 dist/core/components/organisms/textField/TextFieldWithTextarea.d.ts create mode 100644 dist/core/components/organisms/textField/__test__/Textarea.test.d.ts create mode 100644 dist/core/components/organisms/textField/index.d.ts create mode 100644 dist/core/components/organisms/timePicker/TimePicker.d.ts create mode 100644 dist/core/components/organisms/timePicker/TimePickerWithInput.d.ts create mode 100644 dist/core/components/organisms/timePicker/TimePickerWithSearch.d.ts create mode 100644 dist/core/components/organisms/timePicker/index.d.ts create mode 100644 dist/core/components/organisms/timePicker/utility/searchUtils.d.ts create mode 100644 dist/core/components/organisms/timePicker/utility/timePickerUtility.d.ts create mode 100644 dist/core/components/organisms/timePicker/utils.d.ts create mode 100644 dist/core/components/organisms/verticalNav/MenuItem.d.ts create mode 100644 dist/core/components/organisms/verticalNav/VerticalNav.d.ts create mode 100644 dist/core/components/organisms/verticalNav/index.d.ts create mode 100644 dist/core/index.d.ts create mode 100644 dist/core/index.type.d.ts create mode 100644 dist/core/utils/Keys.d.ts create mode 100644 dist/core/utils/OverlayManager.d.ts create mode 100644 dist/core/utils/action.d.ts create mode 100644 dist/core/utils/css.d.ts create mode 100644 dist/core/utils/docPage/generateImports.d.ts create mode 100644 dist/core/utils/docPage/index.d.ts create mode 100644 dist/core/utils/docPage/sandbox.d.ts create mode 100644 dist/core/utils/index.d.ts create mode 100644 dist/core/utils/masks.d.ts create mode 100644 dist/core/utils/navigationHelper.d.ts create mode 100644 dist/core/utils/overlayHelper.d.ts create mode 100644 dist/core/utils/storybookEventEmitter.d.ts create mode 100644 dist/core/utils/testHelper.d.ts create mode 100644 dist/core/utils/types.d.ts create mode 100644 dist/core/utils/uidGenerator.d.ts create mode 100644 dist/core/utils/validators.d.ts create mode 100644 dist/scripts/setupTest.d.ts diff --git a/css/dist/MaterialSymbolsRounded.woff2 b/css/dist/MaterialSymbolsRounded.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..b834c1e34959d969dff664acb611902a0bfff9ec GIT binary patch literal 410988 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≻gtvmsusyUZTt4WpegeOwF!ay0d7Rl9nT#>-+s$C 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

Qe)C~QDm$7ENiS=j=3-onKr!_BbC7 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

Ft&les_ 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

Kf+=&bK&uJYV5f%0PJNw>K}YxEQ!R=`(U} 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 literal 0 HcmV?d00001 diff --git a/css/dist/index.css b/css/dist/index.css new file mode 100644 index 0000000000..8281666205 --- /dev/null +++ b/css/dist/index.css @@ -0,0 +1,9916 @@ +/**** Colors ****/ +:root { + --haldi: #ffc208; + --haldi-dark: #b78707; + --haldi-darker: #6b4a06; + --haldi-light: #ffd462; + --haldi-lighter: #ffe597; + --haldi-lightest: #fff5c7; + --jal: #0070dd; + --jal-dark: #00509f; + --jal-darker: #003365; + --jal-light: #4f9de7; + --jal-lighter: #97c5f0; + --jal-lightest: #dcecf9; + --jamun: #7a53b2; + --jamun-dark: #644491; + --jamun-darker: #4e3572; + --jamun-light: #9d7ec6; + --jamun-lighter: #bfaada; + --jamun-lightest: #e0d8ee; + --mirch: #d93737; + --mirch-dark: #9c2828; + --mirch-darker: #631919; + --mirch-light: #eb776c; + --mirch-lighter: #f7ada5; + --mirch-lightest: #f9e2e2; + --neel: #3d51d4; + --neel-dark: #2c3a98; + --neel-darker: #1c2561; + --neel-light: #7583e1; + --neel-lighter: #abb4ed; + --neel-lightest: #e2e5f9; + --neem: #2ea843; + --neem-dark: #227934; + --neem-darker: #154d26; + --neem-light: #71c077; + --neem-lighter: #a5d8aa; + --neem-lightest: #d7efdf; + --night: #2f2f2f; + --night-light: #595959; + --night-lighter: #868686; + --night-lightest: #a6a6a6; + --nimbu: #82c91e; + --nimbu-dark: #578715; + --nimbu-darker: #304a0b; + --nimbu-light: #a6d763; + --nimbu-lighter: #c6e599; + --nimbu-lightest: #e3f3ce; + --shadow-0: #ffffff; + --shadow-10: #ffffff; + --shadow-20: #ffffff; + --shadow-30: #ffffff; + --stone: #d5d5d5; + --stone-dark: #c5c5c5; + --stone-light: #e5e5e5; + --stone-lighter: #ececec; + --stone-lightest: #f4f4f4; + --tawak: #f07d00; + --tawak-dark: #b35f13; + --tawak-darker: #743208; + --tawak-light: #feac5f; + --tawak-lighter: #ffc998; + --tawak-lightest: #fde6ce; + --white: #ffffff; + + /**** Fonts ****/ +} /* close :root */ + +:root { + /* Colors */ + + /* default */ + --primary: var(--jal); + --secondary: var(--stone); + --success: var(--neem); + --alert: var(--mirch); + --warning: var(--haldi); + --accent1: var(--tawak); + --accent2: var(--jamun); + --accent3: var(--neel); + --accent4: var(--nimbu); + --inverse: var(--night); + + /* dark */ + --primary-dark: var(--jal-dark); + --secondary-dark: var(--stone-dark); + --success-dark: var(--neem-dark); + --alert-dark: var(--mirch-dark); + --warning-dark: var(--haldi-dark); + --accent1-dark: var(--tawak-dark); + --accent2-dark: var(--jamun-dark); + --accent3-dark: var(--neel-dark); + --accent4-dark: var(--nimbu-dark); + + /* darker */ + --primary-darker: var(--jal-darker); + --success-darker: var(--neem-darker); + --alert-darker: var(--mirch-darker); + --warning-darker: var(--haldi-darker); + --accent1-darker: var(--tawak-darker); + --accent2-darker: var(--jamun-darker); + --accent3-darker: var(--neel-darker); + --accent4-darker: var(--nimbu-darker); + + /* light */ + --primary-light: var(--jal-light); + --secondary-light: var(--stone-light); + --success-light: var(--neem-light); + --alert-light: var(--mirch-light); + --warning-light: var(--haldi-light); + --accent1-light: var(--tawak-light); + --accent2-light: var(--jamun-light); + --accent3-light: var(--neel-light); + --accent4-light: var(--nimbu-light); + --inverse-light: var(--night-light); + + /* lighter */ + --primary-lighter: var(--jal-lighter); + --secondary-lighter: var(--stone-lighter); + --success-lighter: var(--neem-lighter); + --alert-lighter: var(--mirch-lighter); + --warning-lighter: var(--haldi-lighter); + --accent1-lighter: var(--tawak-lighter); + --accent2-lighter: var(--jamun-lighter); + --accent3-lighter: var(--neel-lighter); + --accent4-lighter: var(--nimbu-lighter); + --inverse-lighter: var(--night-lighter); + + /* lightest */ + --primary-lightest: var(--jal-lightest); + --secondary-lightest: var(--stone-lightest); + --success-lightest: var(--neem-lightest); + --alert-lightest: var(--mirch-lightest); + --warning-lightest: var(--haldi-lightest); + --accent1-lightest: var(--tawak-lightest); + --accent2-lightest: var(--jamun-lightest); + --accent3-lightest: var(--neel-lightest); + --accent4-lightest: var(--nimbu-lightest); + --inverse-lightest: var(--night-lightest); + + /* shadow */ + --primary-shadow: rgba(0, 112, 221, 0.16); + --secondary-shadow: rgba(213, 213, 213, 0.16); + --success-shadow: rgba(46, 168, 67, 0.16); + --alert-shadow: rgba(217, 55, 55, 0.16); + --warning-shadow: rgba(255, 194, 8, 0.16); + --accent1-shadow: rgba(240, 125, 0, 0.16); + --accent2-shadow: rgba(122, 83, 178, 0.16); + --accent3-shadow: rgba(61, 81, 212, 0.16); + --accent4-shadow: rgba(130, 201, 30, 0.16); + --inverse-shadow: rgba(47, 47, 47, 0.16); + + /* Text colors */ + --text: var(--night); + --text-subtle: var(--night-lighter); + --text-link: var(--primary); + --text-disabled: var(--inverse-lightest); + --text-destructive: var(--alert); + --text-white: var(--white); + --text-success: var(--success); + + /* spacing */ + --spacing-xs: 1px; + --spacing-s: 2px; + --spacing-m: 4px; + --spacing-0-75: 6px; + --spacing: 8px; + --spacing-l: 12px; + /* 8 * 2 */ + --spacing-2: 16px; + /* 8 * 3 */ + --spacing-xl: 24px; + /* 8 * 4 */ + --spacing-3: 32px; + /* 8 * 6 */ + --spacing-4: 48px; + /* 8 * 8 */ + --spacing-5: 64px; + /* 8 * 12 */ + --spacing-6: 96px; + /* 8 * 16 */ + --spacing-7: 128px; + /* 8 * 22 */ + --spacing-8: 176px; + /* 8 * 32 */ + --spacing-9: 256px; + + /* Fonts */ + --font-family: 'Nunito Sans'; + + /* Font size */ + --font-size-xxs: 4px; + --font-size-xs: 8px; + --font-size-s: 12px; + --font-size: 14px; + --font-size-m: 16px; + --font-size-l: 20px; + --font-size-xl: 28px; + --font-size-xxl: 32px; + --font-size-xxxl: 40px; + + /* Font weight */ + --font-weight-normal: 400; + --font-weight-medium: 600; + --font-weight-bold: 700; + --font-weight-bolder: 800; + + /* Line height or Font height */ + --font-height-normal: normal; + --font-height-s: 16px; + --font-height: 20px; + --font-height-m: 24px; + --font-height-l: 32px; + --font-height-xl: 40px; + --font-height-xxl: 48px; + + /* Letter spacing */ + --letter-spacing: 0.5px; + + /* body settings */ + + /* border */ + --border: var(--spacing-xs) solid var(--secondary); + --border-s: var(--spacing-s) solid var(--secondary); + + /* padding */ + + /* shadow */ + --shadow-s: 0 1px 4px 0 rgba(0, 0, 0, 0.16); + --shadow-m: 0 2px 8px 0 rgba(0, 0, 0, 0.16); + --shadow-l: 0 4px 16px 0 rgba(0, 0, 0, 0.16); + --shadow-spread: 0 0 0 3px; + + /* + Grid breakpoints + Define the minimum dimensions at which your layout will change, + adapting to different screen sizes, for use in media queries. + */ + + --grid-s-breakpoint: 576px; + --grid-m-breakpoint: 768px; + --grid-l-breakpoint: 992px; + --grid-xl-breakpoint: 1200px; + + /* + Grid columns + Set the number of columns and specify the width of the gutters. + */ + + --grid-columns: 12; + + /* Undefined colors */ + --card-subdued-bg: #fcfafa; + + /* Transparancy (Opacity) */ + --transparent-58: 0.58; + + /* Transition curve timing function */ + /* Use standard-easing when an element is visible from the beginning to the end of a motion. Ex-Expanding cards. */ + --standard-productive-curve: cubic-bezier(0.2, 0, 0.38, 0.9); + --standard-expressive-curve: cubic-bezier(0.4, 0.14, 0.3, 1); + /* Use entrance-easing when an element quickly appears and slows down to a stop. Ex-when adding elements to the view, such as a modal appearing. */ + --entrance-productive-curve: cubic-bezier(0, 0, 0.38, 0.9); + --entrance-expressive-curve: cubic-bezier(0, 0, 0.3, 1); + /* Use exit-easing when removing elements from view, such as closing a modal or toaster. */ + --exit-productive-curve: cubic-bezier(0.2, 0, 1, 0.9); + --exit-expressive-curve: cubic-bezier(0.4, 0.14, 1, 1); + + /* Transition duration */ + --duration--fast-01: 80ms; + --duration--fast-02: 120ms; + --duration--moderate-01: 160ms; + --duration--moderate-02: 240ms; + --duration--slow-01: 400ms; + --duration--slow-02: 720ms; + + /* Opacity */ + --opacity-1: 0.04; + --opacity-2: 0.08; + --opacity-3: 0.12; + --opacity-4: 0.16; + --opacity-6: 0.24; + --opacity-8: 0.32; + --opacity-10: 0.4; + --opacity-12: 0.48; + --opacity-16: 0.64; + --opacity-20: 0.8; +} + +/* fallback */ +@font-face { + font-family: 'Material Symbols Rounded'; + font-style: normal; + font-weight: 300; + src: url(MaterialSymbolsRounded.woff2) format('woff2'); +} + +.material-symbols { + font-family: 'Material Symbols Rounded'; + font-weight: normal; + font-style: normal; + font-size: 24px; + line-height: 1; + letter-spacing: normal; + text-transform: none; + display: inline-block; + white-space: nowrap; + word-wrap: normal; + direction: ltr; + -webkit-font-feature-settings: 'liga'; + -webkit-font-smoothing: antialiased; +} + +.material-symbols-rounded { + font-variation-settings: 'FILL' 1, 'wght' 300, 'GRAD' 0, 'opsz' 24; + font-family: 'Material Symbols Rounded'; + font-weight: normal; + font-style: normal; + font-size: 24px; + line-height: 1; + letter-spacing: normal; + text-transform: none; + display: inline-block; + white-space: nowrap; + word-wrap: normal; + direction: ltr; + -webkit-font-feature-settings: 'liga'; + -webkit-font-smoothing: antialiased; +} + +.material-symbols-outlined { + font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24; + font-family: 'Material Symbols Rounded'; + font-weight: normal; + font-style: normal; + font-size: 24px; + line-height: 1; + letter-spacing: normal; + text-transform: none; + display: inline-block; + white-space: nowrap; + word-wrap: normal; + direction: ltr; + -webkit-font-feature-settings: 'liga'; + -webkit-font-smoothing: antialiased; +} + +@-webkit-keyframes fadeIn { + from { + opacity: 0; + } + + to { + opacity: 1; + } +} + +@keyframes fadeIn { + from { + opacity: 0; + } + + to { + opacity: 1; + } +} + +@-webkit-keyframes fadeOut { + from { + opacity: 1; + } + + to { + opacity: 0; + } +} + +@keyframes fadeOut { + from { + opacity: 1; + } + + to { + opacity: 0; + } +} + +.fade-in { + -webkit-animation: fadeIn var(--duration--fast-02) var(--standard-productive-curve); + animation: fadeIn var(--duration--fast-02) var(--standard-productive-curve); +} + +.fade-out { + -webkit-animation: fadeOut var(--duration--fast-02) var(--standard-expressive-curve); + animation: fadeOut var(--duration--fast-02) var(--standard-expressive-curve); +} + +.opacity-0 { + opacity: 0; +} + +.opacity-1 { + opacity: 1; +} + +@-webkit-keyframes exitLeftCurve { + from { + opacity: 1; + left: 0; + } + + to { + opacity: 0; + left: calc(-1 * var(--spacing-2)); + } +} + +@keyframes exitLeftCurve { + from { + opacity: 1; + left: 0; + } + + to { + opacity: 0; + left: calc(-1 * var(--spacing-2)); + } +} + +@-webkit-keyframes entryLeftCurve { + from { + left: var(--spacing-2); + } + + to { + left: 0; + } +} + +@keyframes entryLeftCurve { + from { + left: var(--spacing-2); + } + + to { + left: 0; + } +} + +@-webkit-keyframes exitRightCurve { + from { + opacity: 1; + left: 0; + } + + to { + opacity: 0; + left: var(--spacing-2); + } +} + +@keyframes exitRightCurve { + from { + opacity: 1; + left: 0; + } + + to { + opacity: 0; + left: var(--spacing-2); + } +} + +@-webkit-keyframes entryRightCurve { + from { + left: calc(-1 * var(--spacing-2)); + } + + to { + left: 0; + } +} + +@keyframes entryRightCurve { + from { + left: calc(-1 * var(--spacing-2)); + } + + to { + left: 0; + } +} + +.slideOut-left { + -webkit-animation: exitLeftCurve var(--duration--moderate-02) var(--exit-expressive-curve); + animation: exitLeftCurve var(--duration--moderate-02) var(--exit-expressive-curve); + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; +} + +.slideIn-left { + -webkit-animation: fadeIn var(--duration--moderate-01) var(--entrance-expressive-curve), + entryLeftCurve var(--duration--moderate-02) var(--entrance-expressive-curve); + animation: fadeIn var(--duration--moderate-01) var(--entrance-expressive-curve), + entryLeftCurve var(--duration--moderate-02) var(--entrance-expressive-curve); +} + +.slideOut-right { + -webkit-animation: exitRightCurve var(--duration--moderate-02) var(--exit-expressive-curve); + animation: exitRightCurve var(--duration--moderate-02) var(--exit-expressive-curve); + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; +} + +.slideIn-right { + -webkit-animation: fadeIn var(--duration--moderate-01) var(--entrance-expressive-curve), + entryRightCurve var(--duration--moderate-02) var(--entrance-expressive-curve); + animation: fadeIn var(--duration--moderate-01) var(--entrance-expressive-curve), + entryRightCurve var(--duration--moderate-02) var(--entrance-expressive-curve); +} + +.rotate-clockwise { + transform: rotateZ(360deg); + transition: var(--duration--moderate-02) var(--standard-productive-curve); + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; +} + +.rotate-anticlockwise { + transform: rotateZ(180deg); + transition: var(--duration--moderate-02) var(--standard-productive-curve); +} + +.ss { + background: red; +} + +body { + font-family: var(--font-family); + color: var(--text); + line-height: var(--font-height); + margin: 0; + padding: 0; + font-size: var(--font-size); +} + +/* Text */ +.Text { + margin: 0; + line-height: var(--font-height); +} + +.Text--small { + font-size: var(--font-size-s); + line-height: var(--font-height-normal); +} + +.Text--regular { + font-size: var(--font-size); + line-height: var(--font-height); +} + +.Text--large { + font-size: var(--font-size-m); + line-height: var(--font-height-m); +} + +.Text--default { + color: var(--text); +} + +.Text--subtle { + color: var(--text-subtle); +} + +.Text--disabled { + color: var(--text-disabled); +} + +.Text--destructive { + color: var(--text-destructive); +} + +.Text--white { + color: var(--text-white); +} + +.Text--success { + color: var(--text-success); +} + +.Text--link { + color: var(--text-link); +} + +.Text--medium { + font-weight: var(--font-weight-medium); +} + +.Text--strong { + font-weight: var(--font-weight-bold); +} + +/* Heading */ +.Heading { + margin: 0; +} + +.Heading--s { + font-weight: var(--font-weight-bold); + font-size: var(--font-size-m); + line-height: var(--font-height-m); +} + +.Heading--m { + font-weight: var(--font-weight-medium); + font-size: var(--font-size-l); + line-height: var(--font-height-l); +} + +.Heading--l { + font-weight: var(--font-weight-normal); + font-size: var(--font-size-xl); + line-height: var(--font-height-xl); +} + +.Heading--xl { + font-weight: var(--font-weight-medium); + font-size: var(--font-size-xxl); + line-height: var(--font-height-xxl); +} + +.Heading--xxl { + font-weight: var(--font-weight-normal); + font-size: var(--font-size-xxxl); + line-height: var(--font-height-xxl); +} + +.Heading--default { + color: var(--text); +} + +.Heading--subtle { + color: var(--text-subtle); +} + +.Heading--disabled { + color: var(--text-disabled); +} + +.Heading--white { + color: var(--text-white); +} + +/* Label */ +.Label { + display: inline-flex; +} + +.Label--withInput { + margin-bottom: var(--spacing-m); +} + +.Label--optional { + align-items: center; +} + +.Label-text { + line-height: var(--font-height-s); + font-weight: var(--font-weight-medium); + word-break: break-all; +} + +.Label-optionalText { + line-height: var(--font-height-s); + margin-left: var(--spacing-m); +} + +.Label--disabled { + color: var(--text-disabled); +} + +.Label-requiredIndicator { + height: var(--spacing-0-75); + width: var(--spacing-0-75); + border-radius: 50%; + background: var(--alert); + margin-left: var(--spacing-m); + margin-bottom: var(--spacing-0-75); + display: inline-flex; +} + +/* Caption */ +.Caption { + display: flex; + align-items: center; + box-sizing: border-box; +} + +.Caption--withInput { + margin-top: var(--spacing-m); +} + +.Caption-icon { + display: flex; + align-content: center; + margin-right: var(--spacing-m); +} + +.Caption--hidden { + display: none; +} + +/* Subheading */ +.Subheading { + margin: 0; + font-weight: var(--font-weight-bolder); + font-size: var(--spacing-l); + line-height: var(--font-height-m); + letter-spacing: var(--letter-spacing); + text-transform: uppercase; +} + +.Subheading--default { + color: var(--text); +} + +.Subheading--subtle { + color: var(--text-subtle); +} + +.Subheading--disabled { + color: var(--text-disabled); +} + +.Subheading--white { + color: var(--text-white); +} + +.PopperWrapper-trigger { + display: inline-flex; + flex-grow: 1; +} + +.Overlay-container { + display: flex; + position: relative; + flex-direction: row; + justify-content: center; + z-index: 1500; +} + +.Overlay-container--open { + -webkit-animation-timing-function: cubic-bezier(0, 0, 0.3, 1); + animation-timing-function: cubic-bezier(0, 0, 0.3, 1); +} + +.Overlay-container--close { + -webkit-animation-timing-function: cubic-bezier(0.4, 0.14, 1, 1); + animation-timing-function: cubic-bezier(0.4, 0.14, 1, 1); +} + +::-webkit-scrollbar { + width: var(--spacing-2); +} + +::-webkit-scrollbar-thumb { + border: var(--spacing-s) solid rgba(0, 0, 0, 0); + background-clip: padding-box; + border-radius: var(--spacing); + background-color: var(--secondary); +} + +.Legend { + display: flex; + flex-direction: row; + align-items: center; + width: -webkit-fit-content; + width: -moz-fit-content; + width: fit-content; +} + +.Legend-icon { + border-radius: var(--spacing-s); + margin-right: var(--spacing); +} + +.ProgressBar { + width: 100%; + border-radius: var(--spacing-m); + background: var(--secondary-lighter); +} + +.ProgressBar-indicator { + background-color: var(--primary); + border-radius: var(--spacing-m); + transition: var(--duration--slow-01) var(--standard-expressive-curve); +} + +.ProgressBar-indicator--small { + height: var(--spacing-s); +} + +.ProgressBar-indicator--regular { + height: var(--spacing); +} + +.ActionButton { + display: flex; + flex-shrink: 0; + overflow: hidden; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; + color: var(--inverse-lighter); + border-radius: 50%; + padding: var(--spacing-s); +} + +.ActionButton:focus-visible, +.ActionButton:focus { + outline: var(--spacing-s) solid var(--secondary-shadow); +} + +.ActionButton:hover { + background-color: var(--secondary); +} + +.ActionButton:active { + background-color: var(--secondary-dark); +} + +.ActionCard { + cursor: pointer; + border-radius: var(--spacing-m); + width: 100%; + border: var(--spacing-xs) solid var(--secondary-dark); +} + +.ActionCard:hover { + box-shadow: var(--shadow-m); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.ActionCard:focus, +.ActionCard:focus-visible { + outline: none; + border: var(--spacing-xs) solid var(--secondary-light); + box-shadow: var(--shadow-spread) var(--secondary-shadow); +} + +.ActionCard:active { + box-shadow: var(--shadow-l); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.ActionCard--disabled { + pointer-events: none; + position: relative; + border: var(--spacing-xs) solid var(--secondary-lighter); +} + +.ActionCard-overlay--disabled { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 2; + opacity: var(--opacity-10); + background: var(--secondary-light); +} + +/* Avatar */ + +.Avatar { + display: flex; + flex-grow: 0; + flex-shrink: 0; + justify-content: center; + align-items: center; + overflow: hidden; + text-transform: uppercase; + border-radius: 50%; + cursor: default; +} + +.Avatar--wrapper { + padding: var(--spacing-xs); + box-sizing: border-box; +} + +.Avatar--square { + width: 100%; + height: 100%; + border-radius: var(--spacing-m); +} + +.Avatar--regular { + height: var(--spacing-3); + width: var(--spacing-3); +} + +.Avatar--tiny { + height: var(--spacing-xl); + width: var(--spacing-xl); +} + +.Avatar--disabled { + cursor: default; +} + +.Avatar--primary { + background: var(--primary); +} + +.Avatar--secondary { + background: var(--secondary-light); +} + +.Avatar--success { + background: var(--success); +} + +.Avatar--alert { + background: var(--alert); +} + +.Avatar--warning { + background: var(--warning); +} + +.Avatar--accent1 { + background: var(--accent1); +} + +.Avatar--accent2 { + background: var(--accent2); +} + +.Avatar--accent3 { + background: var(--accent3); +} + +.Avatar--accent4 { + background: var(--accent4); +} + +.Avatar-content--tiny { + line-height: var(--font-height-s) !important; + font-size: 10px !important; +} + +.Avatar-content--secondary { + color: var(--inverse) !important; +} + +.Avatar-content--success { + color: var(--success-darker) !important; +} + +.Avatar-content--warning { + color: var(--warning-darker) !important; +} + +.Avatar-content--accent1 { + color: var(--accent1-darker) !important; +} + +.Avatar-content--accent4 { + color: var(--accent4-darker) !important; +} + +.AvatarGroup-item { + border-radius: 50%; +} + +.AvatarGroup-item--regular { + margin-right: calc(var(--spacing-m) * -1); + height: var(--spacing-3); +} + +.AvatarGroup-item--tiny { + margin-right: calc(var(--spacing-s) * -1); + height: var(--spacing-xl); +} + +.AvatarGroup-Popper { + max-width: var(--spacing-9); + overflow: hidden; + box-sizing: border-box; + word-break: break-word; + -webkit-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; +} + +.AvatarGroup-TextWrapper { + display: flex; + flex-direction: column; + align-items: flex-start; + overflow-y: auto; +} + +.AvatarCount-wrapper { + border-radius: 50%; +} + +/* Selection avatar group */ +.SelectionAvatarGroup { + box-sizing: border-box; + display: flex; + align-items: center; +} + +/* Selection Avatar List */ + +.SelectionAvatarGroup-item { + margin-right: calc(var(--spacing-m) * -1); + border-radius: 50%; + display: flex; + transition: transform var(--duration--fast-01) var(--standard-productive-curve); + position: relative; +} + +.SelectionAvatarGroup-item:focus, +.SelectionAvatarGroup-item:focus-visible { + outline: 3px solid var(--primary-shadow); + outline-offset: 3px; +} + +.SelectionAvatarGroup-item:active { + outline: var(--spacing-s) solid #00509f; + outline-offset: var(--spacing-xs); +} + +.SelectionAvatarGroup-wrapper:hover .SelectionAvatarGroup-item { + transform: translateY(-8px); +} + +/* Selected Avatar Group Item */ + +.SelectionAvatarGroup-item--selected { + outline-offset: var(--spacing-xs); + outline: var(--spacing-s) solid var(--primary-dark); +} + +.SelectionAvatarGroup-item--selected:active { + outline-offset: var(--spacing-xs); + outline: var(--spacing-s) solid var(--primary-darker); +} + +.SelectionAvatarGroup-item--selected:focus, +.SelectionAvatarGroup-item--selected:focus-visible { + box-shadow: 0 0 0 var(--spacing-xs) white, 0 0 0 3px var(--primary-dark), 0 0 0 3px var(--primary-shadow) !important; +} + +/* Selection Avatar Popover */ + +.SelectionAvatarGroup-popper { + overflow-y: auto; + box-sizing: border-box; +} + +.SelectionAvatar-inputWrapper { + border-bottom: var(--spacing-xs) solid var(--secondary-dark); +} + +.SelectionAvatar-inputWrapper:focus-within { + border-bottom: var(--spacing-xs) solid var(--primary); +} + +.SelectionAvatar-input { + min-width: unset !important; + background: transparent; + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0; + height: 36px; +} + +.SelectionAvatar-input, +.SelectionAvatar-input:focus-within { + border: unset !important; + box-shadow: none !important; +} + +.SelectionAvatar-input:hover { + background-color: #f4f4f4; +} + +/* Selection Avatar Count */ + +.SelectionAvatarCount-wrapper { + border-radius: 50%; +} + +.SelectionAvatarCount:hover { + background: var(--secondary); +} + +.SelectionAvatarCount:active { + background: var(--secondary-dark); +} + +.SelectionAvatarCount-wrapper:focus, +.SelectionAvatarCount-wrapper:focus-visible { + outline: 3px solid var(--primary-shadow); + outline-offset: 3px; +} + +.SelectionAvatarCount--selected { + outline-offset: var(--spacing-xs); + outline: var(--spacing-s) solid var(--primary-dark); +} + +.SelectionAvatarCount--selected:focus, +.SelectionAvatarCount--selected:focus-visible { + box-shadow: 0 0 0 var(--spacing-xs) white, 0 0 0 3px var(--primary-dark), 0 0 0 3px var(--primary-shadow) !important; +} + +@-webkit-keyframes backdrop-open { + from { + opacity: 0; + } + to { + opacity: var(--opacity-16); + } +} + +@keyframes backdrop-open { + from { + opacity: 0; + } + to { + opacity: var(--opacity-16); + } +} + +@-webkit-keyframes backdrop-close { + from { + opacity: var(--opacity-16); + } + to { + opacity: 0; + } +} + +@keyframes backdrop-close { + from { + opacity: var(--opacity-16); + } + to { + opacity: 0; + } +} + +.Backdrop { + background-color: rgba(47, 47, 47, 0.64); + height: 100vh; + width: 100vw; + position: fixed; + left: 0; + top: 0; + display: none; + align-items: center; + z-index: 1000; + overflow: auto; + flex-direction: column; + justify-content: center; + touch-action: none; + visibility: hidden; +} + +.Backdrop--open { + display: flex; + visibility: visible; +} + +.Backdrop-animation--open { + -webkit-animation: backdrop-open var(--duration--fast-02) var(--entrance-expressive-curve); + animation: backdrop-open var(--duration--fast-02) var(--entrance-expressive-curve); +} + +.Backdrop-animation--close { + -webkit-animation: backdrop-close var(--duration--fast-02) var(--exit-expressive-curve); + animation: backdrop-close var(--duration--fast-02) var(--exit-expressive-curve); +} + +/* badge */ + +.Badge { + /* 160px */ + max-width: calc(var(--spacing-2) * 10); + /* truncate */ + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + font-size: var(--font-size-s); + line-height: var(--font-height-s); + text-transform: uppercase; + padding-right: var(--spacing-m); + padding-left: var(--spacing-m); + padding-top: var(--spacing-s); + padding-bottom: var(--spacing-s); + border-radius: var(--spacing-m); + display: inline-block; + box-sizing: border-box; + font-weight: var(--font-weight-bold); + cursor: default; +} + +.Badge--primary { + background: var(--primary); + color: var(--white); +} + +.Badge--secondary { + background: var(--secondary-light); + color: var(--inverse); +} + +.Badge--success { + background: var(--success); + color: var(--white); +} + +.Badge--alert { + background: var(--alert); + color: var(--white); +} + +.Badge--warning { + background: var(--warning); + color: var(--warning-darker); +} + +.Badge--accent1 { + background: var(--accent1); + color: var(--white); +} + +.Badge--accent2 { + background: var(--accent2); + color: var(--white); +} + +.Badge--accent3 { + background: var(--accent3); + color: var(--white); +} + +.Badge--accent4 { + background: var(--accent4); + color: var(--accent4-darker); +} + +.Badge--subtle-primary { + color: var(--primary-darker); + background: var(--primary-lightest); +} + +.Badge--subtle-secondary { + color: var(--text); + background: var(--secondary-light); +} + +.Badge--subtle-success { + color: var(--success-darker); + background: var(--success-lightest); +} + +.Badge--subtle-alert { + color: var(--alert-darker); + background: var(--alert-lightest); +} + +.Badge--subtle-warning { + color: var(--warning-darker); + background: var(--warning-lightest); +} + +.Badge--subtle-accent1 { + color: var(--accent1-darker); + background: var(--accent1-lightest); +} + +.Badge--subtle-accent2 { + color: var(--accent2-darker); + background: var(--accent2-lightest); +} + +.Badge--subtle-accent3 { + color: var(--accent3-darker); + background: var(--accent3-lightest); +} + +.Badge--subtle-accent4 { + color: var(--accent4-darker); + background: var(--accent4-lightest); +} + +/* breadcrumbs */ + +.Breadcrumbs { + display: flex; + align-items: center; +} + +.Breadcrumbs-item { + display: flex; + align-items: center; +} + +.Breadcrumbs-link { + /* 160px */ + max-width: calc(var(--spacing-2) * 10); + margin: var(--spacing-m) 0; +} + +.Breadcrumbs-link:active { + color: var(--inverse); +} + +.Breadcrumbs-item:first-child .Breadcrumbs-link { + margin-left: 0; +} + +.Breadcrumbs-itemSeparator { + color: var(--secondary); + font-size: var(--font-size-s); + line-height: var(--font-height-s); + width: var(--spacing-m); + margin: 0 var(--spacing-m); +} + +.Breadcrumbs-dropdown { + height: var(--font-height-m); +} + +.Breadcrumbs-Button:focus { + background: var(--secondary) !important; +} + +.Button { + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + box-sizing: border-box; + position: relative; + vertical-align: middle; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + border: 0; + border-radius: var(--spacing-m); + + padding-top: var(--spacing); + padding-bottom: var(--spacing); + + text-align: center; + font-family: var(--font-family); + font-weight: var(--font-weight-normal); + font-size: var(--font-size); + line-height: var(--font-height-s); + color: var(--text-white); + + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Button:disabled { + cursor: not-allowed; + pointer-events: none; +} + +.Button:focus { + outline: 0; +} + +.Button--iconAlign-right { + flex-direction: row-reverse; +} + +.Button--tiny { + height: var(--spacing-xl); + padding-right: var(--spacing); + padding-left: var(--spacing); + padding-top: var(--spacing-m); + padding-bottom: var(--spacing-m); +} + +.Button--tinySquare { + width: var(--spacing-xl); +} + +.Button--regular { + height: var(--spacing-3); + padding-right: var(--spacing-l); + padding-left: var(--spacing-l); +} + +.Button--regularSquare { + width: var(--spacing-3); +} + +.Button--large { + height: 40px; + padding-right: var(--spacing-2); + padding-left: var(--spacing-2); + + line-height: var(--font-height-m); + font-size: var(--font-size-m); +} + +.Button--largeSquare { + width: 40px; +} + +.Button--tinySquare .Button-icon, +.Button--largeSquare .Button-icon, +.Button--tinySquare .Spinner, +.Button--largeSquare .Spinner { + padding-left: var(--spacing-s); + padding-right: var(--spacing-s); +} + +.Button--expanded { + width: 100%; +} + +.Button-icon { + line-height: inherit; + display: flex; + align-items: center; +} + +.Button-icon--left { + margin-right: var(--spacing); +} + +.Button-icon--right { + margin-left: var(--spacing); +} + +.Button--tiny .Button-icon--left { + margin-right: var(--spacing-m); +} +.Button--tiny .Button-icon--right { + margin-left: var(--spacing-m); +} + +.Button--basic { + background: var(--secondary-light); + color: var(--inverse); +} + +.Button--basic:hover { + background: var(--secondary); +} + +.Button--basic:active { + background: var(--secondary-dark); +} + +.Button--basic:focus { + box-shadow: var(--shadow-spread) var(--secondary-shadow); +} + +.Button--basic:disabled { + background: var(--secondary-lighter); + color: var(--inverse-lightest); +} + +.Button--primary { + background: var(--primary); +} + +.Button--primary:hover { + background: var(--primary-dark); +} + +.Button--primary:active { + background: var(--primary-darker); +} + +.Button--primary:focus { + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.Button--primary:disabled { + background: var(--primary-lighter); +} + +.Button--success { + background: var(--primary); +} + +.Button--success:hover { + background: var(--primary-dark); +} + +.Button--success:active { + background: var(--primary-darker); +} + +.Button--success:focus { + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.Button--success:disabled { + background: var(--primary-lighter); +} + +.Button--alert { + background: var(--alert); +} + +.Button--alert:hover { + background: var(--alert-dark); +} + +.Button--alert:active { + background: var(--alert-darker); +} + +.Button--alert:focus { + box-shadow: var(--shadow-spread) var(--alert-shadow); +} + +.Button--alert:disabled { + background: var(--alert-lighter); +} + +.Button--transparent { + background: transparent; + color: var(--inverse); +} + +.Button--transparent:hover { + background: var(--secondary); +} + +.Button--transparent:focus { + box-shadow: var(--shadow-spread) var(--secondary-shadow); +} + +.Button--transparent:active { + background: var(--secondary-dark); +} + +.Button--transparent:focus:active { + background: var(--secondary-dark); +} + +.Button--transparent:disabled { + background: transparent; + color: var(--inverse-lightest); +} + +.Button-spinner { + display: flex; + position: absolute; + z-index: 1; +} + +.Button--tiny .Spinner--small { + height: var(--font-size-s); + width: var(--font-size-s); +} + +.Button--large .Spinner--small { + height: var(--font-size-l); + width: var(--font-size-l); +} + +.Button--selected { + background: var(--primary-lightest); + color: var(--primary-dark); +} + +.Button--selected:hover { + background: var(--primary-lighter); +} + +.Button--selected:active { + background: var(--primary-lighter); + color: var(--primary-darker); +} + +.Button--selected:focus { + background: var(--primary-lightest); + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.Button--selected:focus:active { + background: var(--primary-lighter); +} + +.Button--selected:disabled { + background: var(--primary-lightest); + color: var(--primary-lighter); +} + +.Button-text--hidden { + visibility: hidden; +} + +.Button-text { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +/* calendar */ + +.Calendar-wrapper { + display: flex; + flex-wrap: wrap; +} + +.Calendar { + display: flex; + flex-direction: column; + box-sizing: border-box; +} + +.Calendar--small { + padding: var(--spacing-l); + padding-bottom: var(--spacing); + width: 212px; +} + +.Calendar-date--small { + height: 248px; +} + +.Calendar-month--small { + height: 200px; +} + +.Calendar-year--small { + height: 200px; +} + +.Calendar--large { + padding-top: var(--spacing-2); + padding-left: var(--spacing-2); + padding-right: var(--spacing-2); + padding-bottom: var(--spacing-l); + width: 316px; +} + +.Calendar-date--large { + height: 324px; +} + +.Calendar-month--large { + height: 276px; +} + +.Calendar-year--large { + height: 272px; +} + +.Calendar-header--large { + position: relative; + display: flex; + justify-content: center; + align-items: center; + padding-bottom: var(--spacing-l); +} + +.Calendar-header--small { + position: relative; + display: flex; + justify-content: center; + align-items: center; + padding-bottom: var(--spacing); +} + +.Calendar-headerIcon { + position: absolute; + display: flex; + align-items: center; + justify-content: center; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.Calendar-headerIcon--prev { + left: 0; +} + +.Calendar-headerIcon--next { + right: 0; +} + +.Calendar-headerContent { + display: flex; + white-space: nowrap; + cursor: pointer; + padding-top: var(--spacing-m); + padding-bottom: var(--spacing-m); + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.Calendar-body { + display: flex; + flex-direction: column; + flex-grow: 1; + justify-content: space-between; +} + +.Calendar-valueRow { + display: flex; + justify-content: space-between; + padding-top: var(--spacing-s); + padding-bottom: var(--spacing-s); +} + +.Calendar-valueWrapper { + display: inline-flex; + flex: 1 0 0; + justify-content: center; + position: relative; +} + +.Calendar-valueWrapper--inRange { + background: var(--primary-lightest); +} + +.Calendar-valueWrapper--inRange .Calendar-inRangeValue:hover { + background: var(--primary-lighter); +} + +.Calendar-valueWrapper--inRange .Calendar-inRangeValue:active { + background: var(--primary-light); +} + +.Calendar-valueWrapper--inRangeError { + background: var(--alert-lightest); +} + +.Calendar-valueWrapper--start { + background: linear-gradient(90deg, white 50%, var(--primary-lightest) 50%); + border-radius: var(--spacing-m) 0 0 var(--spacing-m); +} + +.Calendar-valueWrapper--startError { + background: linear-gradient(90deg, white 50%, var(--alert-lightest) 50%); +} + +.Calendar-valueWrapper--end { + background: linear-gradient(90deg, var(--primary-lightest) 50%, white 50%); + border-radius: 0 var(--spacing-m) var(--spacing-m) 0; +} + +.Calendar-valueWrapper--hoverDate { + background: linear-gradient(90deg, var(--primary-lightest) 10%, white 50%); + border-radius: 0 var(--spacing-m) var(--spacing-m) 0; +} + +.Calendar-valueWrapper--hoverEndDate { + background: linear-gradient(90deg, white 50%, var(--primary-lightest) 10%); +} + +.Calendar-valueWrapper--endError { + background: linear-gradient(90deg, var(--alert-lightest) 50%, white 50%); +} + +.Calendar-valueWrapper--startEnd { + background: transparent; +} + +.Calendar-value { + display: inline-flex; + align-items: center; + justify-content: center; + text-align: center; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + border-radius: var(--spacing-m); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Calendar-value:hover { + background: var(--secondary-light); +} + +.Calendar-value:active { + background: var(--secondary); +} + +.Calendar-value:active .Calendar-value--currDate { + color: var(--primary-dark); +} + +.Calendar-value--start:hover, +.Calendar-value--end:hover { + background: var(--primary-lightest); +} + +.Calendar-value--startError:hover, +.Calendar-value--endError:hover { + background: var(--alert-lightest); +} + +.Calendar-value--start, +.Calendar-value--end { + background: var(--primary-lightest); +} + +.Calendar-value--startError, +.Calendar-value--endError { + background: var(--alert-lightest); +} + +.Calendar-value--currDateMonthYear { + background: var(--primary-lightest); +} + +.Calendar-value--currDateMonthYear:hover { + background: var(--primary-lighter); +} + +.Calendar-value--currDateMonthYear:active { + background: var(--primary-lighter); +} + +.Calendar-value--currDate:active { + color: var(--primary-dark); +} + +.Calendar-value--active { + background: var(--primary); + font-weight: var(--font-weight-bold); +} + +.Calendar-value--active:hover { + background: var(--primary-dark); +} + +.Calendar-value--active:active { + background: var(--primary-darker); +} + +.Calendar-yearValue--small, +.Calendar-monthValue--small { + height: var(--spacing-xl); + width: var(--spacing-4); +} + +.Calendar-yearValue--large, +.Calendar-monthValue--large { + height: var(--spacing-3); + width: var(--spacing-5); +} + +.Calendar-dateValue--small { + height: var(--spacing-xl); + width: var(--spacing-xl); +} + +.Calendar-dateValue--large { + height: var(--spacing-3); + width: var(--spacing-3); +} + +.Calendar-valueWrapper--dummy { + opacity: var(--transparent-58); +} + +.Calendar-value--disabled { + pointer-events: none; +} + +.Calendar-dayValues { + display: flex; + justify-content: center; + padding-top: var(--spacing); + padding-bottom: var(--spacing); +} + +.Calendar-dateValues { + display: flex; + flex-direction: column; + flex-grow: 1; + justify-content: space-around; +} + +.Calendar-dayValues .Calendar-value { + padding: 0; +} + +.Calendar-eventsIndicator { + position: absolute; + bottom: var(--spacing-s); + width: var(--spacing-m); + height: var(--spacing-m); + background-color: var(--alert); + border-radius: 50%; +} +.Calendar-eventsIndicator--small { + width: 3px; + height: 3px; +} +.Calendar-eventsIndicator--active { + background-color: var(--white); +} + +.Calendar-valueWrapper--inStartRange { + background: linear-gradient(90deg, white 50%, var(--primary-lightest) 50%); +} + +.Calendar-valueWrapper--inEndRange { + background: linear-gradient(90deg, var(--primary-lightest) 50%, white 50%); +} + +.Calendar-valueWrapper--inEdgeRange .Calendar-inRangeValue { + background: var(--primary-lightest); +} + +.Calendar-valueWrapper--inEdgeRange .Calendar-inRangeValue:hover { + background: var(--primary-lighter); +} + +.Calendar-valueWrapper--inEdgeRange .Calendar-inRangeValue:active { + background: var(--primary-light); +} + +/* badge */ + +.Card { + border-radius: var(--spacing-m); + border: var(--spacing-xs) solid var(--secondary-light); + position: relative; + background-color: var(--white); +} + +.Card--default, +.Card--light, +.Card--medium, +.Card--dark { + border: none; + box-shadow: var(--shadow-s); +} + +.Card--shadow10 { + border: none; + box-shadow: var(--shadow-s); +} + +.Card--shadow20 { + border: none; + box-shadow: var(--shadow-m); +} + +.Card--shadow30 { + border: none; + box-shadow: var(--shadow-l); +} + +.Card-header { + padding: var(--spacing-2) var(--spacing-2) var(--spacing-l) var(--spacing-2); +} + +.Card-body { + padding-left: var(--spacing-2); + padding-right: var(--spacing-2); +} + +.Card-footer { + display: flex; + align-items: center; + box-sizing: border-box; + position: absolute; + bottom: 0; + width: 100%; + padding: var(--spacing-2); +} + +.Card-footer--withSeperator { + border-top: var(--spacing-xs) solid var(--secondary-light); +} + +.CardSubdued { + background: var(--card-subdued-bg); + padding: var(--spacing-2); +} + +.CardSubdued--top { + border-top: var(--spacing-xs) solid var(--secondary-light); +} + +.CardSubdued--left { + border-left: var(--spacing-xs) solid var(--secondary-light); +} + +.CardSubdued--right { + border-right: var(--spacing-xs) solid var(--secondary-light); +} + +.CardSubdued--bottom { + border-bottom: var(--spacing-xs) solid var(--secondary-light); +} + +.Box { + width: 100%; + border-radius: var(--spacing); + padding: var(--spacing-l); +} + +.Box--typing { + padding-top: var(--spacing); + padding-bottom: var(--spacing); +} + +.Box--incoming { + border: var(--spacing-xs) solid var(--secondary-light); + background-color: var(--white); +} + +.Box--outgoing { + background-color: var(--secondary-lightest); +} + +.Box-incoming--withStatus { + border-bottom-left-radius: 0px; +} + +.Box-outgoing--withStatus { + border-bottom-right-radius: 0px; +} + +.Box--urgent { + border-color: var(--alert); +} + +.ChatMessage-status { + margin-top: var(--spacing-m); + display: block; +} + +.Checkbox { + display: flex; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + line-height: initial; + box-sizing: border-box; + padding-top: var(--spacing-s); + padding-bottom: var(--spacing-s); +} + +.Checkbox-input { + position: absolute; + z-index: 2; + opacity: 0; + cursor: pointer; + height: 100%; + width: 100%; + margin: 0; +} + +.Checkbox-labelWrapper { + padding-left: var(--spacing); + display: flex; + flex-direction: column; + min-width: 0; +} + +.Checkbox-label { + display: flex; + cursor: pointer; +} + +.Checkbox-label--tiny { + font-weight: var(--font-weight-bold); +} + +.Checkbox-outerWrapper { + position: relative; + margin-top: var(--spacing-s); +} + +.Checkbox-outerWrapper--regular { + height: var(--spacing-2); + min-width: var(--spacing-2); +} + +.Checkbox-outerWrapper--tiny { + height: var(--spacing-l); + min-width: var(--spacing-l); +} + +/* Type: Unchecked */ + +.Checkbox-wrapper { + top: 0; + left: 0; + border-radius: var(--spacing-s); + display: flex; + align-items: center; + box-sizing: border-box; + height: 100%; + width: 100%; + justify-content: center; + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Checkbox-input:focus { + outline: 0; +} + +.Checkbox-input ~ .Checkbox-wrapper--default { + border: var(--spacing-xs) solid var(--secondary-dark); + background-color: var(--shadow-0); +} + +.Checkbox-input:focus ~ .Checkbox-wrapper--default { + box-shadow: var(--shadow-spread) var(--secondary-shadow); +} + +.Checkbox-input:hover ~ .Checkbox-wrapper--default { + border: var(--spacing-xs) solid var(--inverse-lightest); + background-color: var(--shadow-0); +} + +.Checkbox-input:active ~ .Checkbox-wrapper--default { + border: var(--spacing-xs) solid var(--inverse-lightest); + background-color: var(--secondary-light); +} + +.Checkbox--disabled { + pointer-events: none; +} + +.Checkbox--disabled .Checkbox-wrapper--default { + border: var(--spacing-xs) solid var(--secondary-light); + background-color: var(--secondary-lightest); +} + +/* Type: checked && Type: indeterminate */ + +.Checkbox-input--checked ~ .Checkbox-wrapper, +.Checkbox-input--indeterminate ~ .Checkbox-wrapper { + background-color: var(--primary); + border: 0; +} + +.Checkbox-input--checked:focus ~ .Checkbox-wrapper, +.Checkbox-input--indeterminate:focus ~ .Checkbox-wrapper { + box-shadow: var(--shadow-spread) var(--primary-shadow); + background-color: var(--primary); + border: 0; +} + +.Checkbox-input--checked:hover ~ .Checkbox-wrapper, +.Checkbox-input--indeterminate:hover ~ .Checkbox-wrapper { + background-color: var(--primary-dark); + border: 0; +} + +.Checkbox-input--checked:active ~ .Checkbox-wrapper, +.Checkbox-input--indeterminate:active ~ .Checkbox-wrapper { + background-color: var(--primary-darker); + border: 0; +} + +.Checkbox--disabled .Checkbox-input--checked ~ .Checkbox-wrapper, +.Checkbox--disabled .Checkbox-input--indeterminate ~ .Checkbox-wrapper { + background-color: var(--primary-lighter); + border: 0; +} + +/* Error State -> Default */ + +.Checkbox-wrapper--error { + border: var(--spacing-xs) solid var(--alert); +} + +.Checkbox-input:focus ~ .Checkbox-wrapper--error { + box-shadow: var(--shadow-spread) var(--alert-shadow); +} + +.Checkbox-input:hover ~ .Checkbox-wrapper--error { + border: var(--spacing-xs) solid var(--alert-dark); +} + +.Checkbox-input:active ~ .Checkbox-wrapper--error { + border: var(--spacing-xs) solid var(--alert-darker); + background-color: var(--secondary-light); +} + +.Checkbox--disabled .Checkbox-wrapper--error { + border: var(--spacing-xs) solid var(--alert-lighter); + background-color: var(--secondary-lightest); +} + +/* Error State -> Checked & Indeterminate */ + +.Checkbox-input--checked ~ .Checkbox-wrapper--error, +.Checkbox-input--indeterminate ~ .Checkbox-wrapper--error { + border: var(--spacing-xs) solid var(--alert); +} + +.Checkbox-input--checked:focus ~ .Checkbox-wrapper--error, +.Checkbox-input--indeterminate:focus ~ .Checkbox-wrapper--error { + border: var(--spacing-xs) solid var(--alert); + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.Checkbox-input--checked:hover ~ .Checkbox-wrapper--error, +.Checkbox-input--indeterminate:hover ~ .Checkbox-wrapper--error { + border: var(--spacing-xs) solid var(--alert-dark); +} + +.Checkbox-input--checked:active ~ .Checkbox-wrapper--error, +.Checkbox-input--indeterminate:active ~ .Checkbox-wrapper--error { + background-color: var(--primary-darker); + border: var(--spacing-xs) solid var(--alert-darker); +} + +.Checkbox--disabled .Checkbox-input--checked ~ .Checkbox-wrapper--error, +.Checkbox--disabled .Checkbox-input--indeterminate ~ .Checkbox-wrapper--error { + border: var(--spacing-xs) solid var(--alert-lighter); +} + +.Chip { + display: flex; + box-sizing: border-box; + border-radius: var(--spacing-l); + padding-right: var(--spacing); + padding-left: var(--spacing); + padding-top: var(--spacing-s); + padding-bottom: var(--spacing-s); + width: -webkit-fit-content; + width: -moz-fit-content; + width: fit-content; + justify-content: space-between; + border-style: solid; + border-width: var(--spacing-xs); + align-items: center; + flex-direction: row; + cursor: default; + height: var(--spacing-xl); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Chip-wrapper { + display: inline-flex; + align-items: center; +} + +.Chip-icon--left { + margin-right: var(--spacing-m); + display: flex; + align-items: center; +} + +.Chip-icon--right { + display: flex; + align-items: center; + border-radius: 10px; + margin-left: var(--spacing-s); +} + +.Chip--action { + background: var(--secondary-light); + border: 0px; + cursor: pointer; +} + +.Chip--action:hover { + background: var(--secondary); +} + +.Chip--action:focus-visible { + box-shadow: var(--shadow-spread) var(--secondary-shadow); + outline: none; +} + +.Chip--action:active { + background: var(--secondary-dark); +} + +.Chip-action--disabled { + background: var(--secondary-lighter); + border: 0px; + outline: none; + cursor: default; +} + +.Chip--selection { + background: var(--shadow-0); + border-color: var(--stone); + cursor: pointer; +} + +.Chip--selection:hover { + background: var(--secondary-lighter); + border-color: var(--secondary-dark); +} + +.Chip--selection:focus-visible { + box-shadow: var(--shadow-spread) var(--secondary-shadow); + outline: none; +} + +.Chip--selection:active { + background: var(--secondary-light); + border-color: var(--inverse-lightest); +} + +.Chip-selection--disabled { + background: var(--secondary-lightest); + border-color: var(--secondary-lighter); +} + +.Chip-selection--selected { + background: var(--primary-lightest); + border-color: var(--primary-lighter); +} + +.Chip-selection--selected:hover { + background: var(--primary-lighter); + border-color: var(--primary-light); +} + +.Chip-selection--selected:focus-visible { + box-shadow: var(--shadow-spread) var(--primary-shadow); + outline: none; +} + +.Chip-selection--selected:active { + background: var(--primary-lighter); + border-color: var(--primary-dark); +} + +.Chip-selection--selected:active .Chip-icon, +.Chip-selection--selected:active .Chip-text { + color: var(--primary-darker); +} + +.Chip-selection--selectedDisabled { + background: var(--primary-lightest); + border-color: var(--primary-lighter); +} + +.Chip--input { + background: var(--secondary-light); + font-weight: var(--font-weight-normal); + border: 0px; +} + +.Chip--input:hover { + background: var(--secondary); +} + +.Chip--input:focus-visible, +.Chip--input:focus { + box-shadow: var(--shadow-spread) var(--secondary-shadow); + outline: none; +} + +.Chip--input:active { + background: var(--secondary-dark); +} + +.Chip-input--disabled { + background: var(--secondary-lighter); + border: 0px; +} + +.Chip-icon--right:focus-visible { + outline: var(--spacing-s) solid var(--secondary-shadow); +} + +.Chip-icon--right:hover { + background-color: var(--secondary); +} + +.Chip-icon--right:active { + background-color: var(--secondary-dark); +} + +.Chip-icon-disabled--right { + pointer-events: none; +} + +.Chip-icon--selected { + border-radius: 10px; +} + +.Chip-icon--selected:focus-visible { + outline: var(--spacing-s) solid var(--primary-shadow); +} + +.Chip-icon--selected:hover { + background-color: var(--primary-lighter); +} + +.Chip-icon--selected:active { + background-color: var(--primary-light); +} + +.Chip-selection--disabled:focus-visible, +.Chip-icon-disabled--right:focus-visible, +.Chip-selection--selectedDisabled:focus-visible, +.Chip-input--disabled:focus-visible { + outline: none; +} + +.Chip-icon--clear { + padding-right: var(--spacing-s); +} + +.ChipGroup { + display: inline-flex; +} + +.ChipGroup-item { + margin: 0 var(--spacing-m); +} + +.ChipGroup-item:first-child { + margin-left: 0; +} + +.ChipGroup-item:last-child { + margin-right: 0; +} + +.ChipInput { + display: flex; + border-radius: var(--spacing-m); + box-shadow: inset 0 0 0 var(--spacing-xs) var(--secondary); + padding-left: 10px; + padding-right: 10px; + background: var(--white); + cursor: text; + flex: 100%; +} + +.ChipInput:focus, +.ChipInput:focus-visible { + outline: var(--spacing-xs) var(--primary); +} + +.ChipInput:hover { + background: var(--secondary-lighter); + border-color: var(--secondary-dark); +} + +.ChipInput:focus-within { + box-shadow: inset 0 0 0 var(--spacing-xs) var(--primary); + background: var(--white); +} + +.ChipInput--disabled { + background: var(--secondary-lightest); + border-color: var(--secondary-light); + pointer-events: none; +} + +.ChipInput--withChips { + padding-right: var(--spacing); +} + +.ChipInput--error, +.ChipInput--error:focus-within { + box-shadow: inset 0 0 0 var(--spacing-xs) var(--alert); +} + +.ChipInput-wrapper { + display: flex; + flex: 100%; + align-items: center; + flex-wrap: wrap; +} + +.ChipInput-border:focus-within { + border-radius: var(--spacing-m); + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.ChipInput-border--error:focus-within { + box-shadow: var(--shadow-spread) var(--alert-shadow); +} + +.ChipInput-input { + border: none; + outline: none; + display: flex; + width: 100%; + min-width: 30%; + flex: 0px; + box-sizing: border-box; + height: var(--spacing-xl); + margin-top: var(--spacing-m); + margin-bottom: var(--spacing-m); + font-family: var(--font-family); + font-size: var(--font-size); +} + +.ChipInput:hover .ChipInput-input { + background: var(--secondary-lighter); +} + +.ChipInput:focus-within .ChipInput-input { + background: var(--white); +} + +.ChipInput-icon { + height: var(--spacing-2); + padding: var(--spacing-s); + margin-left: var(--spacing); + margin-top: var(--spacing-0-75); + cursor: pointer; + border-radius: 10px; +} + +.ChipInput-icon:hover { + background-color: var(--secondary); +} + +.ChipInput-icon:active { + background-color: var(--secondary-dark); +} + +.ChipInput-icon:focus, +.ChipInput-icon:focus-visible { + outline: var(--spacing-s) solid var(--secondary-shadow); +} + +.ChoiceList { + margin: 0; + padding: 0; + border: none; +} + +.ChoiceList-checkbox--vertical { + margin-top: var(--spacing-m); +} + +.ChoiceList-radio--vertical { + margin-top: var(--spacing-m); +} + +.ChoiceList--alignHorizontal { + display: flex; +} + +.ChoiceList-checkbox--horizontal { + margin-left: var(--spacing-xl); +} + +.ChoiceList-radio--horizontal { + margin-left: var(--spacing-xl); +} + +.Collapsible-wrapper { + position: relative; + z-index: 600; +} + +.Collapsible-wrapper--overlay { + margin-right: 40px; +} + +.Collapsible { + display: inline-flex; + flex-direction: column; + background-color: var(--secondary-lightest); + width: var(--spacing-4); + height: 100%; + transition: width 240ms; + transition-timing-function: cubic-bezier(0.4, 0.14, 0.3, 1); +} + +.Collapsible--overlay { + position: absolute; +} + +.Collapsible--shadow { + box-shadow: var(--shadow-l); + -webkit-clip-path: inset(0px -16px 0px 0px); + clip-path: inset(0px -16px 0px 0px); +} + +.Collapsible-body { + flex-grow: 1; + overflow-y: auto; + overflow-x: hidden; +} + +.Collapsible-footer { + padding-top: var(--spacing-m); + padding-bottom: var(--spacing-m); + box-sizing: border-box; + cursor: pointer; + display: flex; +} + +.Collapsible-footer:hover { + background-color: var(--secondary-lighter); +} + +.Collapsible-footer:focus, +.Collapsible-footer:focus-visible { + outline: none; + box-shadow: var(--shadow-spread) var(--secondary-shadow); +} + +.Collapsible-footer:active { + background-color: var(--secondary-light); +} + +.Collapsible-footer--seperator { + border-top: var(--spacing-xs) solid var(--secondary-light); +} + +.DateRangePicker { + display: flex; +} + +.DateRangePicker--left { + flex-direction: row; +} + +.DateRangePicker--right { + flex-direction: row-reverse; +} + +.DateRangePicker-input { + box-sizing: border-box; +} + +.DateRangePicker-input--startDate { + padding-right: var(--spacing-m); +} + +.DateRangePicker-input--endDate { + padding-left: var(--spacing-m); +} + +@media (max-width: 576px) { + .DateRangePicker-input { + padding: 0; + } + + .DateRangePicker-input--endDate { + padding-top: var(--spacing); + } +} + +.Divider { + border: none; + margin: 0; +} + +.Divider--vertical { + width: 1px; + background: var(--secondary-light); +} + +.Divider--horizontal { + height: 1px; +} + +.Divider--basic { + background: var(--secondary-light); +} + +.Divider--header { + background: var(--secondary-dark); +} + +.Dropdown { + width: 100%; + position: relative; +} + +.Dropdown-wrapper { + margin-top: var(--spacing-m); + margin-bottom: var(--spacing-m); +} + +.Dropdown-inputWrapper { + border-bottom: var(--spacing-xs) solid var(--secondary-dark); +} + +.Dropdown-inputWrapper:focus-within { + border-bottom: var(--spacing-xs) solid var(--primary); +} + +.Dropdown-input { + min-width: unset !important; +} + +.Dropdown-input, +.Dropdown-input:focus-within { + border: unset !important; + box-shadow: none !important; +} + +.Dropdown-section { + display: flex; + justify-content: space-between; + align-items: center; + margin-left: var(--spacing-l); + margin-top: var(--spacing-l); + margin-bottom: var(--spacing-0-75); +} + +.Dropdown-section--withClear { + margin-top: var(--spacing); + margin-bottom: var(--spacing-s); +} + +.Dropdown-buttonWrapper { + display: flex; + justify-content: flex-end; + padding-top: var(--spacing); + padding-right: var(--spacing); + padding-bottom: var(--spacing); + border-top: var(--spacing-xs) solid var(--secondary-light); +} + +.Dropdown-footer { + padding-left: var(--spacing-l); + padding-bottom: var(--spacing-m); + padding-top: var(--spacing); + box-sizing: border-box; +} + +.Option { + display: flex; + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Option, +.Option-loading { + padding-top: var(--spacing-0-75); + padding-bottom: var(--spacing-0-75); + padding-left: var(--spacing-l); + padding-right: var(--spacing); +} + +.Option-checkbox .Checkbox-outerWrapper { + background-color: var(--shadow-0); +} + +.Option-checkboxWrapper { + display: block; +} + +.OptionCheckbox { + width: 100%; + padding-left: var(--spacing-l); + padding-top: var(--spacing-0-75); + padding-bottom: var(--spacing-0-75); +} + +.Option--active, +.Option-checkbox--active { + background-color: var(--secondary-lightest); + cursor: pointer; +} + +.Option--active:hover, +.Option-checkbox--active:hover { + background-color: var(--secondary-lighter); +} + +.Option--active:active, +.Option-checkbox--active:active { + background-color: var(--secondary-light); + cursor: pointer; +} + +.Option--active { + transition: var(--standard-productive-curve); +} + +.Option-loading { + pointer-events: none; +} + +.Option--selected { + background-color: var(--primary-lightest); +} + +.Option--selected:hover { + background-color: var(--primary-lighter); +} + +.Option--selected:active { + background-color: var(--primary-lighter); + color: var(--primary-darker); +} + +.Option--selected:active .Option-text, +.Option--selected:active .Option-subInfo { + color: var(--primary-darker); +} + +.Option--disabled, +.OptionWrapper--disabled { + pointer-events: auto; + cursor: default; +} + +.Option-label { + overflow: hidden; + display: flex; + flex-direction: column; +} + +.OptionCheckbox .Checkbox-label { + padding-right: var(--spacing-l); + width: 100%; + display: flex; + overflow: hidden; +} + +.Option-text, +.OptionCheckbox .Text { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.Option-text--wrap, +.Dropdown-wrapper--wrap .OptionCheckbox .Text { + white-space: unset; +} + +.Option--icon { + padding-left: var(--spacing); +} + +.Option-icon { + display: flex; +} + +.Option-icon { + height: -webkit-fit-content; + height: -moz-fit-content; + height: fit-content; + line-height: var(--font-height); +} + +.DropdownButton { + width: 100%; + justify-content: space-between; + padding-top: unset; + padding-bottom: unset; + background: var(--secondary-light); + color: var(--text); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.DropdownButton-wrapper { + width: 100%; + display: flex; + flex-direction: row; + overflow: hidden; + align-items: center; +} + +.DropdownButton-text { + text-align: left; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.DropdownButton--tiny { + height: var(--spacing-xl); + padding-right: var(--spacing); + padding-left: var(--spacing); +} + +.DropdownButton--regular { + height: var(--spacing-3); + padding-right: var(--spacing); + padding-left: var(--spacing-l); +} + +.DropdownButton--tinySquare { + padding-left: var(--spacing-m); + padding-right: var(--spacing-m); +} + +.DropdownButton--regularSquare { + padding-left: var(--spacing); + padding-right: var(--spacing); +} + +.DropdownButton--placeholder { + color: var(--text-subtle); +} + +.DropdownButton:hover { + background: var(--secondary); + color: var(--text); +} + +.DropdownButton:focus { + background-color: var(--secondary-light); + box-shadow: var(--shadow-spread) var(--secondary-shadow); +} + +.DropdownButton:active, +.DropdownButton--open { + background-color: var(--secondary-dark) !important; + color: var(--text) !important; + -webkit-animation-timing-function: cubic-bezier(0, 0, 0.38, 0.9); + animation-timing-function: cubic-bezier(0, 0, 0.38, 0.9); + -webkit-animation-duration: 120ms; + animation-duration: 120ms; +} + +.DropdownButton:disabled { + background: var(--secondary-lighter); + color: var(--text-disabled); + pointer-events: none; +} + +.DropdownButton--icon { + padding-left: var(--spacing); +} + +.DropdownButton--error { + border: var(--spacing-xs) solid var(--alert); +} + +.Dropzone { + display: flex; + align-items: center; + justify-content: center; + background-color: var(--white); + border-radius: var(--spacing-m); + width: 100%; + background-image: linear-gradient(to right, var(--secondary) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(var(--secondary) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(to right, var(--secondary) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(var(--secondary) 50%, rgba(255, 255, 255, 0) 0%); + background-position: top, right, bottom, left; + background-repeat: repeat-x, repeat-y; + background-size: var(--spacing-2) var(--spacing-xs), var(--spacing-xs) var(--spacing-2); + transition: background-color var(--duration--moderate-01) var(--standard-productive-curve); + box-sizing: border-box; +} + +.Dropzone--active { + background-color: var(--primary-lightest); + background-image: linear-gradient(to right, var(--primary) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(var(--primary) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(to right, var(--primary) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(var(--primary) 50%, rgba(255, 255, 255, 0) 0%); + background-position: top, right, bottom, left; + background-repeat: repeat-x, repeat-y; + background-size: var(--spacing-2) var(--spacing-xs), var(--spacing-xs) var(--spacing-2); + transition: background-color var(--duration--moderate-01) var(--standard-productive-curve); + box-sizing: border-box; +} + +.Dropzone-animation { + -webkit-animation-delay: var(--duration--fast-02); + animation-delay: var(--duration--fast-02); + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; +} + +.Dropzone-animation--default { + -webkit-animation: dropzoneDefault var(--duration--moderate-01) var(--entrance-productive-curve); + animation: dropzoneDefault var(--duration--moderate-01) var(--entrance-productive-curve); +} + +.Dropzone-animation--active { + -webkit-animation: dropzoneActive var(--duration--moderate-01) var(--entrance-productive-curve); + animation: dropzoneActive var(--duration--moderate-01) var(--entrance-productive-curve); +} + +@-webkit-keyframes dropzoneDefault { + from { + opacity: 0; + padding-top: 20px; + } + + to { + opacity: 1; + padding-top: var(--spacing-l); + } +} + +@keyframes dropzoneDefault { + from { + opacity: 0; + padding-top: 20px; + } + + to { + opacity: 1; + padding-top: var(--spacing-l); + } +} + +@-webkit-keyframes dropzoneActive { + from { + opacity: 0; + padding-top: 20px; + } + + to { + opacity: 1; + padding-top: var(--spacing-l); + } +} + +@keyframes dropzoneActive { + from { + opacity: 0; + padding-top: 20px; + } + + to { + opacity: 1; + padding-top: var(--spacing-l); + } +} + +.Dropzone-standard--default { + -webkit-animation: dropzoneStandardDefault var(--duration--moderate-01) var(--entrance-productive-curve); + animation: dropzoneStandardDefault var(--duration--moderate-01) var(--entrance-productive-curve); +} + +.Dropzone-standard--active { + -webkit-animation: dropzoneStandardActive var(--duration--moderate-01) var(--entrance-productive-curve); + animation: dropzoneStandardActive var(--duration--moderate-01) var(--entrance-productive-curve); +} + +@-webkit-keyframes dropzoneStandardDefault { + from { + opacity: 0; + padding-top: var(--spacing-2); + } + + to { + opacity: 1; + padding-top: var(--spacing); + } +} + +@keyframes dropzoneStandardDefault { + from { + opacity: 0; + padding-top: var(--spacing-2); + } + + to { + opacity: 1; + padding-top: var(--spacing); + } +} + +@-webkit-keyframes dropzoneStandardActive { + from { + opacity: 0; + padding-top: var(--spacing-2); + } + + to { + opacity: 1; + padding-top: var(--spacing); + } +} + +@keyframes dropzoneStandardActive { + from { + opacity: 0; + padding-top: var(--spacing-2); + } + + to { + opacity: 1; + padding-top: var(--spacing); + } +} + +.Dropzone--error { + background: var(--alert-lightest); + background-image: linear-gradient(to right, var(--alert) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(var(--alert) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(to right, var(--alert) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(var(--alert) 50%, rgba(255, 255, 255, 0) 0%); + background-position: top, right, bottom, left; + background-repeat: repeat-x, repeat-y; + background-size: var(--spacing-2) var(--spacing-xs), var(--spacing-xs) var(--spacing-2); +} + +.Dropzone--disabled { + background-image: linear-gradient(to right, var(--secondary) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(var(--secondary) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(to right, var(--secondary) 50%, rgba(255, 255, 255, 0) 0%), + linear-gradient(var(--secondary) 50%, rgba(255, 255, 255, 0) 0%); + background-position: top, right, bottom, left; + background-repeat: repeat-x, repeat-y; + background-size: var(--spacing-2) var(--spacing-xs), var(--spacing-xs) var(--spacing-2); +} + +.Dropzone--standard { + flex-direction: column; + height: 196px; + min-width: 480px; + padding: var(--spacing) var(--spacing-xl) var(--spacing-2) var(--spacing-xl); +} + +.Dropzone--compressed { + flex-direction: row; + height: 124px; + min-width: 400px; + padding: var(--spacing-l) var(--spacing-xl) var(--spacing-2) var(--spacing-xl); +} + +.Dropzone--tight { + height: 124px; + min-width: 320px; + padding: var(--spacing-l) var(--spacing-xl) var(--spacing-2) var(--spacing-xl); +} + +.DropzoneWrapper { + display: flex; + flex-direction: column; + justify-content: center; +} + +.DropzoneWrapper--standard, +.DropzoneWrapper--tight { + align-items: center; +} + +.DropzoneWrapper--compressed { + align-items: start; +} + +.Dropzone-icon--standard { + margin-bottom: var(--spacing-l); +} + +.Dropzone-icon--compressed { + margin-right: var(--spacing-xl); +} + +.Dropzone-icon--disabled { + fill: var(--inverse-lightest); +} + +.Dropzone-icon--default { + fill: var(--inverse-lighter); +} + +.Dropzone-icon--active { + fill: var(--primary); +} + +.Dropzone-icon--error { + fill: var(--alert); +} + +.EditableChipInput { + position: relative; + width: 100%; +} +.EditableChipInput-default { + display: flex; + align-items: center; + padding-left: var(--spacing-l); + border-left: var(--spacing-xs) solid transparent; + min-height: var(--spacing-3); + flex-wrap: wrap; +} + +.EditableChipInput-defaultWithChips { + display: flex; + align-items: center; + padding-left: var(--spacing); + border: var(--spacing-xs) solid transparent; + padding-top: var(--spacing-xs); + padding-bottom: var(--spacing-xs); + max-width: calc(100% - 28px); + flex-wrap: wrap; +} + +.EditableChipInput-defaultWithChips:hover, +.EditableChipInput-default:hover { + background-color: var(--secondary-lightest); +} + +.EditableChipInput-chipInput { + padding-left: var(--spacing); +} + +.EditableChipInput-actions { + position: absolute; + display: flex; + justify-content: flex-end; + margin-top: var(--spacing-m); + width: 100%; +} + +.EditableDropdown { + width: 100%; +} + +.EditableDropdown-default { + display: flex; + align-items: center; + box-sizing: border-box; + height: var(--spacing-3); + padding-left: var(--spacing-l); +} + +.EditableInput { + position: relative; + display: inline-flex; + flex-direction: column; + width: 100%; +} + +.EditableInput-actions { + position: absolute; + display: flex; + justify-content: flex-end; + margin-top: var(--spacing-m); + width: 100%; +} + +.EditableInput-actions--regular { + top: var(--spacing-3); +} + +.EditableInput-actions--tiny { + top: var(--spacing-xl); +} + +.EditableInput-default { + border: var(--spacing-xs) solid transparent; + box-sizing: border-box; + white-space: nowrap; + padding-left: var(--spacing-l); + padding-right: var(--spacing-l); + display: flex; + align-items: center; +} + +.EditableInput-default--regular { + min-width: var(--spacing-9); + height: var(--spacing-3); +} + +.EditableInput-default--tiny { + min-width: var(--spacing-6); + height: var(--spacing-xl); +} + +.EditableInput-Input--tiny { + min-width: var(--spacing-6) !important; + width: 100%; +} + +.EmptyState { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + background: transparent; +} + +.EmptyState-Wrapper { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + background: transparent; + width: 100%; +} + +.EmptyState-image { + display: flex; + justify-content: center; + width: 100%; + height: 100%; + -o-object-fit: contain; + object-fit: contain; +} + +.EmptyState-title { + text-align: center; + max-width: 480px; +} + +.EmptyState-description { + text-align: center; + margin-top: var(--spacing-m); + max-width: 360px; +} + +.EmptyState-title--large { + margin-top: var(--spacing-4); +} + +.EmptyState-title--small { + margin-top: var(--spacing-xl); +} + +.EmptyState-description--large { + margin-bottom: var(--spacing-xl); +} + +.EmptyState-description--small { + margin-bottom: var(--spacing-2); +} + +.EmptyState-text { + display: flex; + text-align: center; + justify-content: center; +} + +.EmptyState-actions { + display: flex; + justify-content: center; +} + +.EmptyState-title--compressed { + margin-top: var(--spacing-2); +} +.EmptyState-title--standard { + margin-top: var(--spacing-xl); +} +.EmptyState-title--tight { + margin-top: var(--spacing-l); +} + +.EmptyState-actions--compressed { + margin-top: var(--spacing-2); +} + +.EmptyState-actions--standard { + margin-top: var(--spacing-xl); +} + +.EmptyState-actions--tight { + margin-top: var(--spacing-l); +} + +.FileIcon { + padding: var(--spacing); + border-radius: 50%; +} +.FileItem:not(:last-child) { + border-bottom: var(--border); + width: 100%; + box-sizing: border-box; +} +.FileItem { + padding-top: var(--spacing); + padding-bottom: var(--spacing); + padding-left: var(--spacing-l); + padding-right: var(--spacing); +} +.FileItem-fileContent { + display: flex; + justify-content: center; + align-items: center; + min-width: 0; +} +.FileItem-actions { + display: flex; + justify-content: center; + align-items: center; + flex-shrink: 0; +} +.FileItem-file { + display: flex; + align-items: center; + justify-content: space-between; +} +.FileItem-size { + margin-right: var(--spacing); + margin-left: var(--spacing); + flex-shrink: 0; +} +.FileItem-text { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + margin-right: var(--spacing); + margin-left: var(--spacing-l); +} +.FileItem-error { + margin-left: 40px; +} + +.FileIcon--image { + background: var(--alert-lightest); + color: var(--alert); +} +.FileIcon--audio { + background: var(--accent1-lightest); + color: var(--accent1); +} +.FileIcon--video { + background: var(--accent2-lightest); + color: var(--accent2); +} +.FileIcon--application { + background: var(--accent3-lightest); + color: var(--accent3); +} +.FileIcon--others { + background: var(--success-lightest); + color: var(--success); +} +.FileIcon--animate { + -webkit-animation: fadeIn var(--duration--moderate-01) var(--entrance-productive-curve); + animation: fadeIn var(--duration--moderate-01) var(--entrance-productive-curve); +} + +@keyframes fadeIn { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} + +.FileUploader { + display: flex; + flex-direction: column; +} + +.FileUploaderButton { + width: -webkit-fit-content; + width: -moz-fit-content; + width: fit-content; + position: relative; +} + +.FileUploaderButton-input { + height: 100%; + width: 100%; + top: 0; + position: absolute; + opacity: 0; + font-size: 0; + z-index: 2; + cursor: pointer; +} + +.FileUploaderItem { + width: var(--spacing-9); +} + +.FileUploaderItem-text { + width: var(--spacing-8); + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.FileUploaderItem-file { + display: flex; + align-items: center; + justify-content: space-between; + padding-top: var(--spacing-s); + padding-bottom: var(--spacing-s); +} + +@-webkit-keyframes fullscreenModal-open { + from { + opacity: 0; + transform: translateY(20px); + } + to { + opacity: 1; + transform: translateY(0px); + } +} + +@keyframes fullscreenModal-open { + from { + opacity: 0; + transform: translateY(20px); + } + to { + opacity: 1; + transform: translateY(0px); + } +} + +@-webkit-keyframes fullscreenModal-close { + from { + opacity: 1; + transform: translateY(0px); + } + to { + opacity: 0; + transform: translateY(20px); + } +} + +@keyframes fullscreenModal-close { + from { + opacity: 1; + transform: translateY(0px); + } + to { + opacity: 0; + transform: translateY(20px); + } +} + +.FullscreenModal { + position: fixed !important; + top: 0; + left: 0; + height: 100%; + width: 100%; + box-sizing: border-box; + padding-top: var(--spacing-4); + background-color: var(--white); + overflow: auto; + display: flex; + flex-direction: column; +} + +.FullscreenModal-animation--open { + -webkit-animation: fullscreenModal-open 240ms cubic-bezier(0, 0, 0.3, 1); + animation: fullscreenModal-open 240ms cubic-bezier(0, 0, 0.3, 1); +} + +.FullscreenModal-animation--close { + -webkit-animation: fullscreenModal-close 120ms cubic-bezier(0.4, 0.14, 1, 1); + animation: fullscreenModal-close 120ms cubic-bezier(0.4, 0.14, 1, 1); +} + +.FullscreenModal-header { + display: flex; + justify-content: flex-start; + padding-top: var(--spacing-l); + padding-bottom: var(--spacing-l); + padding-right: var(--spacing-l); +} + +.FullscreenModal-footer { + justify-content: flex-end; + padding-top: var(--spacing-2); + padding-bottom: var(--spacing-2); +} + +.FullscreenModal-body { + padding: var(--spacing-2) var(--spacing-xl); +} + +/** Grid **/ + +.Grid-wrapper { + display: flex; + position: relative; + overflow: hidden; + height: 100%; +} + +.Grid { + display: flex; + flex-direction: column; + flex-grow: 1; + height: 100%; + overflow: hidden; + background: var(--white); +} + +.Grid--resource .Grid-row--body:hover, +.Grid--resource .Grid-row--body:hover .Grid-cellGroup { + cursor: pointer; + background: var(--secondary-lightest); +} + +.Grid--resource .Grid-row--body:active, +.Grid--resource .Grid-row--body:active .Grid-cellGroup { + background: var(--secondary-lighter); +} + +.Grid--resource .Grid-row--body:focus { + box-shadow: var(--shadow-spread) rgba(213, 213, 213, 0.16); + outline: none; +} + +.Grid--pinned { + position: absolute; + height: 100%; + z-index: 5; + overflow-x: hidden; + -ms-overflow-style: none; + border-right: 3px solid var(--secondary); +} + +.Grid-pinned::-webkit-scrollbar { + display: none; +} + +.Grid--main { + flex-grow: 1; +} + +.Grid--comfortable .Grid-cell--head { + min-height: 40px; +} + +.Grid--comfortable .Grid-cell--body { + padding-top: var(--spacing-l); + padding-bottom: var(--spacing-l); +} + +.Grid--standard .Grid-cell--head { + min-height: 40px; +} + +.Grid--standard .Grid-cell--body { + padding-top: var(--spacing-l); + padding-bottom: var(--spacing-l); +} + +.Grid--compressed .Grid-cell--head { + min-height: 40px; +} + +.Grid--compressed .Grid-cell--body { + padding-top: var(--spacing); + padding-bottom: var(--spacing); +} + +.Grid--tight .Grid-cell--head { + min-height: var(--spacing-3); +} + +.Grid--tight .Grid-cell--body { + padding-top: var(--spacing-m); + padding-bottom: var(--spacing-m); +} + +.Grid-head { + display: flex; + flex: 0 0 auto; + overflow-x: auto; + border-bottom: var(--border); +} + +.Grid-head::-webkit-scrollbar { + display: none; +} + +.Grid-headCell { + display: flex; + height: 100%; + flex-direction: row; + align-items: center; +} + +.Grid-headCell--draggable { + cursor: -webkit-grab; + cursor: grab; +} + +.Grid-headCell--draggable:active { + cursor: -webkit-grabbing; + cursor: grabbing; + z-index: 3; + opacity: 1; + background-color: inherit; + color: inherit; +} + +.Grid-body { + display: flex; + flex-direction: column; + flex-grow: 1; + overflow-x: auto; + overflow-y: overlay; +} + +.Grid-rowWrapper { + display: inline-flex; + flex-direction: column; + min-width: -webkit-fit-content; + min-width: -moz-fit-content; + min-width: fit-content; + flex-shrink: 0; + border-bottom: var(--border); +} + +.Grid-row { + display: flex; + flex-grow: 1; + flex-shrink: 0; + box-sizing: border-box; + background: var(--white); + transition: var(--duration--fast-02) var(--standard-productive-curve); + transition-delay: var(--duration--fast-01); +} + +.Grid-row--body { + border-color: var(--secondary-light); +} + +.Grid-row--selected, +.Grid-row--selected .Grid-cellGroup { + background: rgba(220, 236, 249, 0.48); + transition: var(--duration--fast-02) var(--standard-productive-curve); +} + +.Grid-row--selected:hover, +.Grid-row--selected .Grid-cellGroup:hover { + background: rgba(151, 197, 240, 0.48) !important; +} + +.Grid-row--selected:active, +.Grid-row--selected .Grid-cellGroup:active { + background: var(--primary-lighter) !important; +} + +.Grid-row--selected:focus, +.Grid-row--selected .Grid-cellGroup:focus { + outline: none; + box-shadow: var(--shadow-spread) rgba(0, 112, 221, 0.16); +} + +.Grid-rowWrapper:last-child .Grid-row--body { + border-bottom: 0; +} + +.GridBody-padding { + flex-shrink: 0; +} + +.Grid-nestedRow { + width: 100%; + overflow: hidden; +} + +.Grid-nestedRowTrigger { + margin-right: var(--spacing-l); + cursor: pointer; +} + +.Grid-nestedRow .Grid-rowWrapper { + border-bottom: 0; +} + +.Grid-nestedRow .Grid-cell:first-child { + padding-left: calc(var(--spacing-3) + var(--spacing)); +} + +.Grid-nestedRowPlaceholder { + width: var(--spacing-xl); + margin-right: var(--spacing-l); +} + +.Grid-cell { + position: relative; + box-sizing: border-box; + padding-left: var(--spacing-l); + padding-right: var(--spacing-l); +} + +.Grid-cell--body { + padding-right: var(--spacing-l); +} + +.Grid-cell--head { + overflow: hidden; + padding-right: var(--spacing-m); +} + +.Grid-cell--dragged { + z-index: 3; + opacity: 1; + background-color: inherit; + color: inherit; +} + +.Grid-cell--separator { + border-left: var(--border); + border-color: var(--secondary-light); +} + +.Grid-cell--selected { + background: var(--primary-lightest); +} + +.Grid-cell--nestedRow { + padding-left: var(--spacing); +} + +.Grid-cell--head.Grid-cell:first-of-type { + border-left: none; +} + +/* .Grid .Grid-cellGroup--main .Grid-cell--head.Grid-cell:last-child { + border-right: var(--border); +} */ + +.Grid-row--disabled { + opacity: var(--opacity-10); + pointer-events: none; +} + +.Grid-cell--head.Grid-cell--selected { + background: var(--primary-light); +} + +.Grid-cell--checkbox { + width: unset; + min-width: unset; + display: flex; + align-items: center; + z-index: 1; + padding-right: 0 !important; + overflow: visible !important; +} + +.Grid-sortingIcons { + display: flex; + align-items: center; + padding-left: var(--spacing-m); +} + +.Grid-cellReorder { + display: flex; + align-items: center; + cursor: -webkit-grab; + cursor: grab; +} + +.Grid-cellReorder:active { + cursor: -webkit-grabbing; + cursor: grabbing; +} + +.Grid-cellContent { + display: flex; + align-items: center; + flex-grow: 1; + height: 100%; + box-sizing: border-box; + z-index: inherit; +} + +.Grid-cell--head .Grid-cellContent { + overflow: hidden; +} + +.Grid-cellResize { + position: absolute; + right: 0; + width: var(--spacing-m); + cursor: ew-resize; + height: 100%; +} + +.Grid-cellSortIcon { + display: flex; + align-items: center; + cursor: pointer; +} + +.Grid-cellSortIcon:hover { + background: var(--secondary); +} + +.Grid-cellResize:hover { + background: var(--primary); +} + +.Grid-reorderHighlighter { + position: absolute; + height: 100%; + border: 3px solid var(--primary-light); + z-index: 10; +} + +.Grid-cellGroup { + display: flex; + box-sizing: border-box; + background: var(--white); +} + +.Grid-cellGroup--pinned { + position: -webkit-sticky; + position: sticky; + z-index: 4; +} + +.Grid-cellGroup--pinned-left { + left: 0; + border-style: inset; + border-right: var(--spacing-xs) solid rgba(213, 213, 213, var(--opacity-3)); + border-right-width: 4px; + -o-border-image: linear-gradient( + to right, + var(--secondary-light), + var(--secondary-light) 25%, + rgba(213, 213, 213, 0.1) 25%, + rgba(213, 213, 213, 0.1) + ) + 1 100%; + border-image: linear-gradient( + to right, + var(--secondary-light), + var(--secondary-light) 25%, + rgba(213, 213, 213, 0.1) 25%, + rgba(213, 213, 213, 0.1) + ) + 1 100%; +} + +.Grid-cellGroup--pinned-right { + right: 0; + border-style: inset; + border-left: var(--spacing-xs) solid rgba(213, 213, 213, var(--opacity-3)); + border-left-width: 4px; + -o-border-image: linear-gradient( + to left, + var(--secondary-light), + var(--secondary-light) 25%, + rgba(213, 213, 213, 0.1) 25%, + rgba(213, 213, 213, 0.1) + ) + 1 100%; + border-image: linear-gradient( + to left, + var(--secondary-light), + var(--secondary-light) 25%, + rgba(213, 213, 213, 0.1) 25%, + rgba(213, 213, 213, 0.1) + ) + 1 100%; +} + +.Grid .Checkbox-wrapper { + margin-right: 0; +} + +/** Grid Cell **/ + +.GridCell { + display: flex; + align-items: center; + width: 100%; + box-sizing: border-box; +} + +.GridCell--align-left { + /* flex-direction: row; */ + justify-content: flex-start; + text-align: left; +} + +.GridCell--align-right { + /* flex-direction: row-reverse; */ + justify-content: flex-end; + text-align: right; +} + +.GridCell--align-center { + justify-content: center; + text-align: center; +} + +.GridCell--default { +} + +.GridCell--metaList { + display: flex; + flex-direction: column; + justify-content: center; + align-items: flex-start; + overflow: hidden; +} + +.GridCell--statusHint .StatusHint { + overflow: hidden; +} + +.GridCell--statusHint .StatusHint .Text { + overflow: hidden; + text-overflow: ellipsis; +} + +.GridCell--avatar .Avatar { + margin: 0; +} + +.GridCell-metaListWrapper { + display: flex; + flex-direction: column; + justify-content: center; + width: 100%; + overflow: hidden; +} + +.GridCell-metaList { + display: flex; +} + +.GridCell-metaList .Text { + display: flex; + align-items: center; +} + +.GridCell-metaList .Text::before { + content: ''; + display: inline-flex; + align-items: center; + justify-content: center; + width: var(--spacing-m); + height: var(--spacing-m); + border-radius: 50%; + background: var(--secondary); + margin: 0 var(--spacing); +} + +.GridCell-metaList .Text:first-child::before { + display: none; +} + +.GridCell--metaList ul li:first-child { + margin-left: 0; +} + +/* .GridCell-image { + position: relative; + display: flex; + align-items: center; + justify-content: center; + margin-right: var(--spacing); +} + +.Image { + z-index: 0; + height: 100%; + width: 100%; +} */ + +/** Header **/ + +/** Table-header **/ + +.Header { + background: var(--white); + padding: var(--spacing-l); + border-bottom: var(--border); +} + +.Header-content { + display: flex; +} + +.Header-content--bottom { + align-items: center; + justify-content: space-between; +} + +.Header-search { + width: var(--spacing-9); + margin-bottom: var(--spacing-2); +} + +.Header-label { + display: flex; + flex-grow: 1; + align-items: center; +} + +.Header-label .Checkbox { + margin-right: var(--spacing); +} + +.Header-dropdown { + display: flex; + margin-left: var(--spacing-m); + margin-bottom: var(--spacing-2); +} + +.Header-dropdown .Dropdown { + margin: 0 var(--spacing-m); +} + +.Header-draggableDropdown .Dropdown-wrapper { + max-height: 200px; + overflow-y: auto; +} + +.Header-filters { + display: flex; +} + +.Header-sorting { + display: flex; +} + +.Header-actions { + margin-bottom: var(--spacing-2); +} + +.Header-global-actions { + justify-content: flex-end; + margin-left: auto; + margin-bottom: var(--spacing-2); +} + +.HorizontalNav { + display: flex; +} + +.HorizontalNav-menu { + box-sizing: border-box; + display: flex; + align-items: center; + cursor: pointer; + height: var(--spacing-3); + padding-right: var(--spacing-l); + padding-left: var(--spacing-l); + border-radius: var(--spacing-2); + margin: 0 var(--spacing-xs); +} + +.HorizontalNav-menu--disabled { + pointer-events: none; +} + +.HorizontalNav-menu--disabled:focus-visible, +.HorizontalNav-menu--disabled:focus { + outline: none; +} + +.HorizontalNav-menu--default:focus-visible, +.HorizontalNav-menu--default:focus { + box-shadow: var(--shadow-spread) var(--secondary-shadow); + outline: none; +} + +.HorizontalNav-menu--default:hover { + background-color: var(--secondary); +} + +.HorizontalNav-menu--default:active { + background-color: var(--secondary-dark); +} + +.HorizontalNav-menu--active { + background-color: var(--primary-lightest); +} + +.HorizontalNav-menu--active:focus-visible, +.HorizontalNav-menu--active:focus { + background-color: var(--primary-lightest); + box-shadow: var(--shadow-spread) var(--primary-shadow); + outline: none; +} + +.HorizontalNav-menu--active:hover { + background-color: var(--primary-lighter); +} + +.HorizontalNav-menu--active:active { + background-color: var(--primary-lighter); + color: var(--primary-darker); +} + +.HorizontalNav-menu--active:active .HorizontalNav-menuText { + color: var(--primary-darker); +} + +.HorizontalNav-menuText { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.HorizontalNav-menu--active, +.HorizontalNav-animate { + transition-delay: var(--duration--fast-02); +} + +.HorizontalNav-animate { + transition: var(--duration--fast-02) var(--standard-productive-curve); +} + +.HorizontalNav-pills { + margin-right: var(--spacing-m); +} + +.HorizontalNav-pills--disabled { + opacity: var(--opacity-10); +} + +/* Although the icons in the font can be scaled to any size, in accordance with material design icons guidelines, + * we recommend them to be shown in either 18, 24, 36 or 48px. The default being 24px. + * https://google.github.io/material-design-icons/ + */ + +/* Rules for sizing the icon. */ + +/* .material-icons.md-18 { font-size: 18px; } +.material-icons.md-24 { font-size: 24px; } +.material-icons.md-36 { font-size: 36px; } +.material-icons.md-48 { font-size: 48px; } */ + +/* Rules for using icons as black on a light background. */ + +/* .material-icons.md-dark { color: rgba(0, 0, 0, 0.54); } +.material-icons.md-dark.md-inactive { color: rgba(0, 0, 0, 0.26); } */ + +/* Rules for using icons as white on a dark background. */ + +/* .material-icons.md-light { color: rgba(255, 255, 255, 1); } +.material-icons.md-light.md-inactive { color: rgba(255, 255, 255, 0.3); } */ +.Icon { + flex-shrink: 0; + overflow: hidden; + flex-shrink: 0; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.Icon--subtle { + color: var(--text-subtle); +} + +.Icon--disabled { + color: var(--text-disabled); +} + +.Icon--destructive { + color: var(--text-destructive); +} + +.Icon--white { + color: var(--text-white); +} + +.Icon--default { + color: var(--text); +} + +.Icon--info { + color: var(--primary); +} + +.Icon--success { + color: var(--success); +} + +.Icon--warning { + color: var(--warning); +} + +.Icon--alert { + color: var(--alert); +} + +.Icon--primary { + color: var(--primary); +} + +.Icon--primaryLighter { + color: var(--primary-lighter); +} + +.Icon--primaryDark { + color: var(--primary-dark); +} + +.Icon--primaryDarker { + color: var(--primary-darker); +} + +.Icon--alertLighter { + color: var(--alert-lighter); +} + +.Icon--alertDark { + color: var(--alert-dark); +} + +.Icon--alertDarker { + color: var(--alert-darker); +} + +.Icon--successLighter { + color: var(--success-lighter); +} + +.Icon--successDark { + color: var(--success-dark); +} + +.Icon--successDarker { + color: var(--success-darker); +} + +.Icon--warningLighter { + color: var(--warning-lighter); +} + +.Icon--warningDark { + color: var(--warning-dark); +} + +.Icon--warningDarker { + color: var(--warning-darker); +} + +.Icon--accent1 { + color: var(--accent1); +} + +.Icon--accent1Lighter { + color: var(--accent1-lighter); +} + +.Icon--accent1Dark { + color: var(--accent1-dark); +} + +.Icon--accent1Darker { + color: var(--accent1-darker); +} + +.Icon--accent2 { + color: var(--accent2); +} + +.Icon--accent2Lighter { + color: var(--accent2-lighter); +} + +.Icon--accent2Dark { + color: var(--accent2-dark); +} + +.Icon--accent2Darker { + color: var(--accent2-darker); +} + +.Icon--accent3 { + color: var(--accent3); +} + +.Icon--accent3Lighter { + color: var(--accent3-lighter); +} + +.Icon--accent3Dark { + color: var(--accent3-dark); +} + +.Icon--accent3Darker { + color: var(--accent3-darker); +} + +.Icon--accent4 { + color: var(--accent4); +} + +.Icon--accent4Lighter { + color: var(--accent4-lighter); +} + +.Icon--accent4Dark { + color: var(--accent4-dark); +} + +.Icon--accent4Darker { + color: var(--accent4-darker); +} + +.Icon--inverse { + color: var(--inverse); +} + +.InlineMessage { + display: flex; + flex-direction: row; + overflow: hidden; + border-radius: var(--spacing-m); + background-color: var(--white); + align-items: flex-start; +} + +.InlineMessage-icon--regular { + padding-top: var(--spacing-s); + padding-bottom: var(--spacing-s); + margin-right: var(--spacing); +} + +.InlineMessage-icon--small { + padding-top: var(--spacing-xs); + padding-bottom: var(--spacing-xs); + margin-right: var(--spacing-m); +} + +.InlineMessage-text--warning, +.InlineMessage-icon--warning { + color: var(--accent1); +} + +.InlineMessage-text--alert { + color: var(--alert); +} + +.InlineMessage-text--info { + color: var(--primary); +} + +.InlineMessage-text--success { + color: var(--success); +} + +/* input */ + +.Input-input::-ms-clear { + display: none; +} + +.Input { + display: flex; + flex-grow: 1; + flex-direction: row; + align-items: center; + box-sizing: border-box; + border-radius: var(--spacing-m); + border: var(--border); + padding-right: var(--spacing-l); + padding-left: var(--spacing-l); + background: var(--white); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Input--tiny { + height: var(--font-height-m); + padding-top: var(--spacing-m); + padding-bottom: var(--spacing-m); +} + +.Input--regular { + height: var(--font-height-l); + padding-top: var(--spacing-0-75); + padding-bottom: var(--spacing-0-75); +} + +.Input--large { + height: 40px; + padding-top: var(--spacing); + padding-bottom: var(--spacing); +} + +.Input:hover { + background: var(--secondary-lighter); + border-color: var(--secondary-dark); + cursor: text; +} + +.Input:focus-within { + background: var(--white); + border-color: var(--primary); + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.Input:focus-within .Input-icon--left { + color: var(--primary); +} + +.Input--error:focus-within { + border-color: var(--alert); + box-shadow: var(--shadow-spread) var(--alert-shadow); +} + +.Input--error:focus-within .Input-icon--left { + color: var(--alert); +} + +.Input--disabled { + background: var(--secondary-lightest); + border-color: var(--secondary-lighter); + pointer-events: none; +} + +.Input--disabled .Input-icon--left { + color: var(--inverse-lightest); +} + +.Input--error, +.Input--error:hover { + background: var(--white); + border-color: var(--alert); +} + +.Input-input { + display: flex; + width: 100%; + font-family: var(--font-family); + font-weight: var(--font-weight-normal); + font-size: var(--font-size); + line-height: var(--font-height-s); + color: var(--night); + padding: 0; + border: none; + background: transparent; +} + +.Input-input::-moz-placeholder { + color: var(--inverse-lighter); +} + +.Input-input:-ms-input-placeholder { + color: var(--inverse-lighter); +} + +.Input-input::placeholder { + color: var(--inverse-lighter); +} + +.Input-input:focus { + outline: 0; +} + +.Input-input:disabled .Input-input::-moz-placeholder { + color: var(--inverse-lighter); +} + +.Input-input:disabled .Input-input:-ms-input-placeholder { + color: var(--inverse-lighter); +} + +.Input-input:disabled .Input-input::placeholder { + color: var(--inverse-lighter); +} + +.Input-input--regular { + line-height: var(--font-height); +} + +.Input-input--large { + line-height: var(--font-height-m); + font-size: var(--font-size-m); +} + +.Input-icon { + display: flex; + align-content: center; + font-size: var(--font-size-m); +} + +.Input-icon--left { + margin-right: var(--spacing); + color: var(--inverse); +} + +.Input-icon--inputBlank { + color: var(--inverse-lighter); +} + +.Input-icon--error { + color: var(--alert); +} + +.Input-icon--right { + cursor: pointer; + color: var(--inverse-lighter); + border-radius: 10px; +} + +.Input-iconWrapper--right:focus-visible .Input-icon--right { + outline: var(--spacing-s) solid var(--secondary-shadow); +} + +.Input-icon--right:focus-visible { + outline: var(--spacing-s) solid var(--secondary-shadow); + border-radius: 10px; +} + +.Input-iconWrapper--right:hover .Input-icon--right { + background-color: var(--secondary); +} + +.Input-iconWrapper--right:active .Input-icon--right { + background-color: var(--secondary-dark); +} + +.Input-inlineLabel { + margin-right: var(--spacing); +} + +.Input-iconWrapper--right:focus-visible { + outline: none; +} + +.Link { + text-decoration: none; + font-weight: var(--font-weight-medium); + transition: var(--duration--fast-01) var(--standard-productive-curve); + box-sizing: border-box; +} + +.Link:focus-visible { + outline: none; +} + +.Link--regular { + font-size: var(--font-size); + height: var(--font-height); +} + +.Link--tiny { + font-size: var(--font-size-s); + height: var(--font-height-s); + line-height: var(--font-height-s); +} + +.Link--default { + color: var(--text-link); +} + +.Link--subtle { + color: var(--inverse-lighter); +} + +.Link--default:hover { + border-bottom: var(--spacing-xs) solid var(--primary-dark); + color: var(--primary-dark); +} + +.Link--subtle:hover { + border-bottom: var(--spacing-xs) solid var(--inverse-light); + color: var(--inverse-light); +} + +.Link--default:active { + color: var(--primary-darker); + border: none; +} + +.Link--subtle:active { + color: var(--inverse); + border: none; +} + +.Link--default:focus { + box-shadow: var(--shadow-spread) var(--primary-shadow); + border-radius: var(--spacing-m); +} + +.Link--subtle:focus { + box-shadow: var(--shadow-spread) var(--secondary-shadow); + border-radius: var(--spacing-m); +} + +.Link--default-disabled { + color: var(--primary-lighter); + pointer-events: none; +} + +.Link--subtle-disabled { + color: var(--inverse-lightest); + pointer-events: none; +} + +.LinkButton { + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + box-sizing: border-box; + position: relative; + vertical-align: middle; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + border: 0; + text-align: center; + padding: 0; + background: transparent; + font-weight: var(--font-weight-medium); + font-family: var(--font-family); + border-radius: var(--spacing-m); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.LinkButton--iconAlign-right { + flex-direction: row-reverse; +} + +.LinkButton-icon { + line-height: inherit; + display: flex; + align-items: center; +} + +.LinkButton-icon--left { + margin-right: var(--spacing-m); +} + +.LinkButton-icon--right { + margin-left: var(--spacing-m); +} + +.LinkButton--regular { + line-height: var(--font-height); + font-size: var(--font-size); +} + +.LinkButton--tiny { + line-height: var(--font-height-s); + font-size: var(--font-size-s); +} + +.LinkButton--default { + color: var(--primary); +} + +.LinkButton--default:hover { + color: var(--primary-dark); +} + +.LinkButton--default:active { + color: var(--primary-darker); +} + +.LinkButton--default:focus, +.LinkButton--default:focus-visible { + outline: 0; + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.LinkButton--default:disabled { + cursor: not-allowed; + pointer-events: none; + color: var(--primary-lighter); +} + +/* Subtle Appearance */ + +.LinkButton--subtle { + color: var(--inverse-lighter); +} + +.LinkButton--subtle:hover { + color: var(--inverse-light); +} + +.LinkButton--subtle:active { + color: var(--inverse); +} + +.LinkButton--subtle:focus, +.LinkButton--subtle:focus-visible { + outline: 0; + box-shadow: var(--shadow-spread) var(--secondary-shadow); +} + +.LinkButton--subtle:disabled { + cursor: not-allowed; + pointer-events: none; + color: var(--inverse-lightest); +} + +.List { + display: flex; + flex-grow: 1; + flex-direction: column; + /* flex-grow: 0; */ + height: 100%; + z-index: 1; +} + +.List-grid { + height: 100%; + overflow: hidden; + height: 100%; +} + +.Listbox { + margin: 0; + padding: 0; + display: flex; + list-style-type: none; + flex-direction: column; +} + +.Listbox-item { + display: flex; + align-items: center; + padding-left: var(--spacing-2); + padding-right: var(--spacing-2); +} + +.Listbox-item-wrapper { + width: 100%; +} + +.Listbox-item-wrapper:last-child > .Listbox-divider, +.Listbox-item--draggable:last-child .Listbox-divider { + background: transparent; +} + +/* Sizes */ + +.Listbox-item--tight { + padding-top: var(--spacing-m); + padding-bottom: var(--spacing-m); +} + +.Listbox-item--compressed { + padding-top: var(--spacing); + padding-bottom: var(--spacing); +} + +.Listbox-item--standard { + padding-top: var(--spacing-l); + padding-bottom: var(--spacing-l); +} + +/* Listbox type - option */ + +.Listbox-item--option { + cursor: pointer; +} + +.Listbox-item--option:hover { + background-color: var(--secondary-lightest); +} + +.Listbox-item--option:focus, +.Listbox-item--option:focus-visible { + outline: 3px auto var(--secondary-shadow); +} + +.Listbox-item--option:active { + background: var(--secondary-lighter); +} + +.Listbox-item--selected { + background: rgba(220, 236, 249, 0.48); +} + +.Listbox-item--selected:hover { + background: rgba(151, 197, 240, 0.48); +} + +.Listbox-item--selected:focus, +.Listbox-item--selected:focus-visible { + outline: 3px auto rgba(0, 112, 221, 0.16); +} + +.Listbox-item--selected:active { + background: var(--primary-lighter); +} + +/* Listbox type - resource */ + +.Listbox-item--resource { + cursor: pointer; +} + +.Listbox-item--resource:hover { + background-color: var(--secondary-lightest); +} + +.Listbox-item--resource:focus, +.Listbox-item--resource:focus-visible { + outline: 3px auto var(--secondary-shadow); +} + +.Listbox-item--resource:active { + background: var(--secondary-lighter); +} + +.Listbox-item--activated { + background: var(--primary-lightest); +} + +/* Listbox type - description */ + +.Listbox-item--description:focus, +.Listbox-item--description:focus-visible { + outline: none; +} + +/* Listbox type - disabled */ + +.Listbox-item--disabled { + opacity: var(--opacity-10); + pointer-events: none; +} + +/* Listbox type - draggable */ + +.Listbox-item--draggable:focus { + outline: 3px auto var(--secondary-shadow); +} + +.Listbox-item--drag-icon { + cursor: -webkit-grab; + cursor: grab; + margin-right: var(--spacing); +} + +.Listbox-item--drag-icon:hover { + color: var(--inverse); +} + +.Listbox-item--drag-icon:active { + color: var(--primary); +} + +.Menu { + overflow-y: auto !important; + padding-top: var(--spacing-m); + padding-bottom: var(--spacing-m); +} + +.Menu-Trigger--active { + background-color: var(--secondary-dark); +} + +.Menu-Item { + width: 100%; + box-sizing: border-box; +} + +.Menu-Group-Label { + display: flex; + align-items: center; + padding-bottom: var(--spacing-0-75); + padding-top: var(--spacing-l); + padding-left: var(--spacing-2); + padding-right: var(--spacing-l); +} + +.Menu-Group:first-child .Menu-Group-Label { + padding-top: var(--spacing); +} + +.Message { + display: flex; + flex-direction: row; + overflow: hidden; + padding: var(--spacing-l) var(--spacing-xl) var(--spacing-l) var(--spacing-2); + border: var(--spacing-xs) solid; + width: 100%; + border-radius: var(--spacing-m); + box-sizing: border-box; +} + +.Message--alert { + border-color: var(--alert); + background-color: rgba(249, 226, 226, 0.4); +} + +.Message--success { + border-color: var(--success); + background-color: rgba(215, 239, 223, 0.4); +} + +.Message--info { + border-color: var(--primary); + background-color: rgba(220, 236, 249, 0.4); +} + +.Message--warning { + border-color: var(--accent1); + background-color: rgba(255, 245, 199, 0.4); +} + +.Message-icon { + margin-right: var(--spacing-2); + padding-top: var(--spacing-s); +} + +.Message-icon--withTitle { + padding-top: var(--spacing-m); +} + +.Message-icon--warning { + color: var(--accent1); +} + +.Message-heading { + margin-bottom: var(--spacing-m); +} + +.Message-heading--alert, +.Message-text--alert { + color: var(--alert-darker) !important; +} + +.Message-heading--info, +.Message-text--info { + color: var(--primary-darker) !important; +} + +.Message-heading--success, +.Message-text--success { + color: var(--success-darker) !important; +} + +.Message-heading--warning, +.Message-text--warning { + color: var(--accent1-darker) !important; +} + +.Message-actions { + display: flex; + align-items: center; + margin-top: var(--spacing-l); +} + +.Meta { + display: flex; + flex-direction: row; + align-items: center; + width: -webkit-fit-content; + width: -moz-fit-content; + width: fit-content; + font-size: var(--font-size); +} + +.MetaList-seperator { + margin-left: var(--spacing); +} +.MetaList-seperator--left { + margin-right: var(--spacing-m); +} +.Meta-icon { + padding-right: var(--spacing-m); + display: flex; + align-items: center; +} +.MetaList { + display: flex; + flex-direction: row; + align-items: center; + width: -webkit-fit-content; + width: -moz-fit-content; + width: fit-content; + font-size: var(--font-size); +} +.MetaList-item { + margin: 0 var(--spacing-m); + display: flex; + flex-direction: row; + align-items: center; + width: -webkit-fit-content; + width: -moz-fit-content; + width: fit-content; + font-size: var(--font-size); +} + +.MetaList-item:first-child { + margin-left: 0; +} + +.MetaList-item:last-child { + margin-right: 0; +} + +.MetricInput-input::-ms-clear { + display: none; +} + +.MetricInput { + display: flex; + width: 100%; + flex-direction: row; + align-items: center; + box-sizing: border-box; + border-radius: var(--spacing-m); + border: var(--border); + padding-right: var(--spacing-m); + background: var(--white); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.MetricInput--regular { + height: var(--spacing-3); + padding-left: var(--spacing-l); +} + +.MetricInput--large { + height: 40px; + padding-left: var(--spacing-2); +} + +.MetricInput:hover { + background: var(--secondary-lightest); + cursor: text; +} + +.MetricInput:focus-within { + background: var(--white); + border-color: var(--primary); + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.MetricInput:focus-within .MetricInput-icon { + color: var(--primary); +} + +.MetricInput--disabled { + background: var(--secondary-lightest); + border-color: var(--secondary-light); + pointer-events: none; +} + +.MetricInput--disabled .MetricInput-icon { + color: var(--inverse-lightest); +} + +.MetricInput--error, +.MetricInput--error:hover { + background: var(--white); + border-color: var(--alert); +} + +.MetricInput--error:focus-within { + border-color: var(--alert); + box-shadow: var(--shadow-spread) var(--alert-shadow); +} + +.MetricInput--error:focus-within .MetricInput-icon { + color: var(--alert); +} + +.MetricInput-input { + display: flex; + width: 100%; + font-family: var(--font-family); + font-weight: var(--font-weight-normal); + font-size: var(--font-size); + line-height: var(--font-height-s); + color: var(--night); + padding: 0; + border: none; + background: transparent; +} + +.MetricInput-input--large { + line-height: var(--font-height-m); + font-size: var(--font-size-m); +} + +.MetricInput-input::-moz-placeholder { + color: var(--inverse-lighter); +} + +.MetricInput-input:-ms-input-placeholder { + color: var(--inverse-lighter); +} + +.MetricInput-input::placeholder { + color: var(--inverse-lighter); +} + +.MetricInput-input:focus { + outline: 0; +} + +.MetricInput-input:disabled .MetricInput-input::-moz-placeholder { + color: var(--inverse-lighter); +} + +.MetricInput-input:disabled .MetricInput-input:-ms-input-placeholder { + color: var(--inverse-lighter); +} + +.MetricInput-input:disabled .MetricInput-input::placeholder { + color: var(--inverse-lighter); +} + +.MetricInput-icon--regular { + margin-right: var(--spacing); + line-height: var(--font-height-s); +} + +.MetricInput-icon--large { + margin-right: var(--spacing-l); + line-height: var(--font-height-m); +} + +.MetricInput-input::-webkit-inner-spin-button, +.MetricInput-input::-webkit-outer-spin-button { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + margin: 0; +} + +.MetricInput-arrowIcon--large { + height: var(--spacing-2); + width: var(--spacing-2); + border-radius: var(--spacing-s); +} + +.MetricInput-arrowIcon--regular { + height: var(--spacing-l); + width: var(--spacing-l); + border-radius: var(--spacing-s); +} + +@-webkit-keyframes modal-open { + from { + top: 20px; + opacity: 0; + } + to { + opacity: 1; + } +} + +@keyframes modal-open { + from { + top: 20px; + opacity: 0; + } + to { + opacity: 1; + } +} + +@-webkit-keyframes modal-close { + from { + top: 104px; + opacity: 1; + } + to { + top: 124px; + opacity: 0; + } +} + +@keyframes modal-close { + from { + top: 104px; + opacity: 1; + } + to { + top: 124px; + opacity: 0; + } +} + +.Modal { + position: fixed !important; + max-height: calc(100vh - 128px); + box-shadow: var(--shadow-m); + background-color: var(--white); + border-radius: var(--spacing); + overflow: auto; + flex-direction: column; + display: none; + margin: auto; + top: 0; + right: 0; + left: 0; + bottom: 0; + height: -webkit-min-content; + height: -moz-min-content; + height: min-content; +} + +.Modal--open { + display: flex; +} + +.Modal-animation--open { + -webkit-animation: modal-open var(--duration--moderate-02) var(--entrance-expressive-curve); + animation: modal-open var(--duration--moderate-02) var(--entrance-expressive-curve); +} + +.Modal-animation--close { + -webkit-animation: modal-close var(--duration--fast-02) var(--exit-expressive-curve); + animation: modal-close var(--duration--fast-02) var(--exit-expressive-curve); +} + +.Modal-header { + display: flex; + justify-content: flex-start; + padding-top: var(--spacing-2); + padding-bottom: var(--spacing-l); + padding-right: var(--spacing-2); +} + +.Modal-header--withSeperator { + border-bottom: var(--border); +} + +.Modal-description { + padding: var(--spacing) 0; +} + +.Modal-footer { + padding-top: var(--spacing-xl); + padding-bottom: var(--spacing-xl); + justify-content: flex-end; + position: absolute; + bottom: 0; +} + +.Modal-footer--withSeperator { + border-top: var(--border); +} + +.Modal-body { + padding: 0 var(--spacing-xl); +} + +.Modal-body--withMargin { + margin-bottom: 80px; +} + +.Modal-body--withPadding { + padding-bottom: var(--spacing-2); +} + +/* Navigation */ + +.Navigation { + display: flex; +} + +.Navigation--horizontal { + flex-grow: 1; + justify-content: center; +} + +.Navigation--vertical { + flex-direction: column; + height: 100%; + width: var(--spacing-9); +} + +.Navigation--collapsed { + width: -webkit-fit-content; + width: -moz-fit-content; + width: fit-content; +} + +.Navigation-body { + height: 100%; + overflow-y: auto; + overflow-x: hidden; + padding-right: var(--spacing); +} + +.Navigation-menu { + box-sizing: border-box; + display: flex; + align-items: center; + cursor: pointer; +} + +.Navigation-menu--horizontal { + height: var(--spacing-3); + padding-right: var(--spacing-l); + padding-left: var(--spacing-l); + border-radius: var(--spacing-2); + margin: 0 var(--spacing-xs); +} + +.Navigation-menu--disabled { + pointer-events: none; +} + +.Navigation-menu:hover { + background-color: var(--secondary-light); +} + +.Navigation-menu--active, +.Navigation-menu--active:hover { + background: var(--primary-lightest); +} + +.Navigation-menu--vertical { + /* padding-top: var(--spacing-m); */ + /* padding-bottom: var(--spacing-m); */ + padding-left: var(--spacing); + margin-top: var(--spacing-m); + margin-bottom: var(--spacing-m); + /* margin-right: var(--spacing); */ + border-radius: 0px var(--spacing-2) var(--spacing-2) 0px; +} + +.Navigation-menu--rounded { + border-radius: var(--spacing-2); +} + +.Navigation-menu--subMenu { + padding-top: var(--spacing-s); + padding-bottom: var(--spacing-s); + padding-left: 40px; + margin-top: 0; +} + +.Navigation-menuIcon { + padding: 8px; + border-radius: 50%; + cursor: pointer; +} + +.Navigation-menuIcon--active { + background: var(--primary-lightest); +} + +.Navigation-menuLabel { + display: flex; + flex-grow: 1; + overflow: hidden; +} + +.Navigation-menu .Text { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.Navigation-horizontalPills { + margin-right: var(--spacing-m); +} + +.Navigation-horizontalPills--disabled { + opacity: var(--opacity-10); +} + +.Navigation-footer { + display: flex; + align-items: center; + padding: var(--spacing-m) var(--spacing); +} + +.Navigation-footer--border { + border-top: var(--border); +} + +.Navigation--collapsed .Navigation-menuIcon--footer { + transform: rotate(180deg); +} + +.OverlayHeader { + box-sizing: border-box; + margin-left: var(--spacing-xl); +} + +.OverlayHeader--withBackButton { + margin-left: var(--spacing-2); +} + +.OverlayHeader-headerWrapper { + display: flex; + align-items: center; +} + +.OverlayHeader-subheading { + margin-top: var(--spacing-s); +} + +.OverlayHeader-subheading--withBackButton { + margin-left: var(--spacing); +} + +.OverlayBody { + overflow-y: auto; +} + +.Overlay-body--stickFooter { + margin-bottom: 80px; +} + +.OverlayFooter { + display: flex; + align-items: center; + width: 100%; + box-sizing: border-box; + padding-left: var(--spacing-xl); + padding-right: var(--spacing-xl); +} + +.PageHeader { + width: 100%; +} + +.PageHeader-wrapper { + padding: var(--spacing) var(--spacing-2) var(--spacing) 0; +} + +.PageHeader-wrapper--withTabs { + padding-bottom: 0; +} + +.PageHeader-wrapper--withTabs .TabsWrapper-header { + border-bottom: none; +} + +.PageHeader .Row { + width: 100%; +} + +.PageHeader-titleWrapper { + display: flex; + justify-content: flex-start; + align-items: center; + padding-right: var(--spacing); +} + +.PageHeader-titleWrapper .Badge { + margin-left: var(--spacing-l); + flex-shrink: 0; +} + +.PageHeader-statusWrapper { + display: flex; + justify-content: flex-start; + align-items: center; +} + +.PageHeader-statusWrapper .StatusHint { + margin-right: var(--spacing); +} + +.PageHeader-navigationWrapper { + margin-top: var(--spacing-m); +} + +.PageHeader .PageHeader-navigationWrapper { + justify-content: center; + align-items: center; + margin-top: 0 !important; + padding-right: var(--spacing); + padding-left: var(--spacing); + display: flex; +} + +.PageHeader-title { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.PageHeader-actionsWrapper { + display: flex; + justify-content: flex-end; + padding-left: var(--spacing); +} + +/* pagination */ + +.Pagination { + display: flex; + vertical-align: middle; + flex-direction: row; + flex-wrap: wrap; +} + +.Pagination .Button { + padding-left: var(--spacing); + padding-right: var(--spacing); +} + +.Pagination-buttonWrapper { + display: flex; + flex-direction: row; +} + +.Pagination-pageIndex { + display: flex; + align-items: center; + justify-content: center; + padding-left: var(--spacing-l); + padding-right: var(--spacing-l); +} + +.Pagination-MetricInput { + width: var(--spacing-4); + margin-right: var(--spacing); + padding-left: var(--spacing); + padding-right: var(--spacing); +} + +.Pagination-MetricInput .MetricInput-input { + text-align: center; +} +.Pagination-MetricInput .MetricInput-arrowIcons { + display: none; +} + +@media (max-width: 575px) { + .Pagination-pageIndex { + order: -1; + flex-basis: 100%; + } + .Pagination-buttonWrapper { + margin-top: var(--spacing); + width: 50%; + } + .Pagination-buttonWrapper--next { + justify-content: flex-start; + } + .Pagination-buttonWrapper--previous { + justify-content: flex-end; + } +} + +.Pills { + /* 160px */ + max-width: calc(var(--spacing-2) * 10); + /* truncate */ + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + font-size: var(--font-size-s); + line-height: var(--font-height-s); + text-transform: uppercase; + padding-right: var(--spacing-0-75); + padding-left: var(--spacing-0-75); + padding-top: var(--spacing-s); + padding-bottom: var(--spacing-s); + border-radius: 20px; + display: inline-block; + box-sizing: border-box; + font-weight: var(--font-weight-bold); + cursor: default; +} + +@-webkit-keyframes shimmer { + 0% { + background-position: -500px 0; + } + 100% { + background-position: 500px 0; + } +} + +@keyframes shimmer { + 0% { + background-position: -500px 0; + } + 100% { + background-position: 500px 0; + } +} + +.Placeholder--animation { + border-radius: var(--spacing-s); + -webkit-animation-duration: 1.5s; + animation-duration: 1.5s; + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-name: shimmer; + animation-name: shimmer; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; + background: var(--secondary-lightest); + background: linear-gradient( + to right, + var(--secondary-lighter) 8%, + var(--secondary-dark) 18%, + var(--secondary-lighter) 33% + ); + background-size: 1000px 104px; +} + +.Placeholder { + display: flex; + flex-grow: 1; + flex-shrink: 0; + align-items: center; +} + +.Placeholder--withImage { + display: flex; + justify-content: flex-start; +} + +.Placeholder-paragraph { + display: flex; + flex-direction: column; + flex: 1 0; +} + +.Placeholder-paragraph--withImage { + margin-left: var(--spacing); +} + +.PlaceholderParagraph { + display: flex; + flex-grow: 1; + height: var(--font-size); +} + +.PlaceholderParagraph-wrapper { + display: flex; + align-items: center; + height: var(--font-height); +} + +.PlaceholderParagraph-wrapper--length-small { + width: 33%; +} + +.PlaceholderParagraph-wrapper--length-medium { + width: 66%; +} + +.PlaceholderParagraph-wrapper--length-large { + width: 100%; +} + +.PlaceholderParagraph-wrapper--size-xxs { + height: var(--font-height-s); +} + +.PlaceholderParagraph-wrapper--size-xs { + height: var(--font-height-m); +} + +.PlaceholderParagraph-wrapper--size-s { + height: var(--font-height-s); +} + +.PlaceholderParagraph-wrapper--size-m { + height: var(--font-height-m); +} + +.PlaceholderParagraph-wrapper--size-l { + height: var(--font-height-l); +} + +.PlaceholderParagraph-wrapper--size-xl { + height: var(--font-height-xl); +} + +.PlaceholderParagraph-wrapper--size-xxl { + height: var(--font-height-xxl); +} + +.PlaceholderParagraph-wrapper--size-xxxl { + height: var(--font-height-xxl); +} + +.PlaceholderParagraph--xxs { + height: var(--font-size-s); +} + +.PlaceholderParagraph--xs { + height: var(--font-size-s); +} + +.PlaceholderParagraph--s { + height: var(--font-size); +} + +.PlaceholderParagraph--m { + height: var(--font-size-m); +} + +.PlaceholderParagraph--l { + height: var(--font-size-l); +} + +.PlaceholderParagraph--xl { + height: var(--font-size-xl); +} + +.PlaceholderParagraph--xxl { + height: var(--font-size-xxl); +} + +.PlaceholderParagraph--xxxl { + height: var(--font-size-xxxl); +} + +.PlaceholderImage { + display: flex; + flex-shrink: 0; + width: 16px; + height: 16px; +} + +.PlaceholderImage--small { + width: 16px; + height: 16px; +} + +.PlaceholderImage--medium { + width: 32px; + height: 32px; +} + +.PlaceholderImage--large { + width: 48px; + height: 48px; +} + +.PlaceholderImage--round { + border-radius: 50%; +} + +.Popover { + border-radius: var(--spacing-m); + position: absolute; + z-index: 500; + background: var(--white); + box-shadow: var(--shadow-l); +} + +.Popover--dark { + background: var(--inverse); + color: var(--white); +} + +.Popover[data-hide='true'] { + visibility: hidden; + pointer-events: none; +} + +@-webkit-keyframes popper-fade-in { + 0% { + opacity: 0; + } + 80% { + opacity: var(--opacity-6); + } + 100% { + opacity: 1; + } +} + +@keyframes popper-fade-in { + 0% { + opacity: 0; + } + 80% { + opacity: var(--opacity-6); + } + 100% { + opacity: 1; + } +} + +.Ring { + transform: rotate(-90deg); +} + +.Ring--regular { + height: var(--spacing-3); + width: var(--spacing-3); +} + +.Ring--small { + height: var(--spacing-2); + width: var(--spacing-2); +} + +.Ring Circle { + fill: none; +} + +.Ring-background { + stroke: var(--secondary-lightest); +} + +.Ring-indicator { + stroke: var(--primary); + transition: var(--duration--slow-01) var(--standard-expressive-curve); +} + +/* Radio */ + +.Radio { + display: flex; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + padding-top: var(--spacing-s); + padding-bottom: var(--spacing-s); + width: -webkit-fit-content; + width: -moz-fit-content; + width: fit-content; +} + +.Radio-outerWrapper { + position: relative; + flex-shrink: 0; + margin-top: var(--spacing-s); +} + +.Radio-defaultWrapper { + border: var(--border); +} + +.Radio-errorWrapper { + border: var(--border); + border-color: var(--alert); +} + +.Radio-outerWrapper--regular { + height: var(--spacing-2); + width: var(--spacing-2); +} + +.Radio-outerWrapper--tiny { + height: var(--spacing-l); + width: var(--spacing-l); +} + +.Radio-input { + opacity: 0; + position: absolute; + height: 100%; + width: 100%; + z-index: 2; + margin: 0; + cursor: pointer; +} + +.Radio-labelWrapper { + padding-left: var(--spacing); + display: flex; + flex-direction: column; +} + +.Radio-Label { + display: flex; + cursor: pointer; +} + +.Radio-wrapper { + top: 0; + left: 0; + height: 100%; + width: 100%; + position: absolute; + border-radius: 50%; + display: flex; + align-items: center; + justify-content: center; + box-sizing: border-box; + z-index: 1; + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Radio--disabled { + pointer-events: none; +} + +.Radio:hover .Radio-wrapper { + border: var(--spacing-xs) solid var(--secondary-dark); + background-color: var(--secondary-lighter); +} + +.Radio:active .Radio-wrapper { + background-color: var(--secondary-light); + border: var(--spacing-xs) solid var(--inverse-lightest); +} + +.Radio:hover .Radio-errorWrapper { + border: var(--border); + background-color: var(--secondary-lighter); + border-color: var(--alert-dark); +} + +.Radio:active .Radio-errorWrapper { + border: var(--border); + background-color: var(--secondary-light); + border-color: var(--alert-darker); +} + +.Radio:focus-within .Radio-wrapper { + outline: 0; + box-shadow: var(--shadow-spread) var(--secondary-shadow); + border-radius: 50%; +} + +.Radio:focus-within .Radio-errorWrapper { + outline: 0; + box-shadow: var(--shadow-spread) var(--alert-shadow); + border-radius: 50%; +} + +.Radio:focus-within .Radio-input:checked ~ .Radio-wrapper { + outline: 0; + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.Radio:focus-within .Radio-input:checked ~ .Radio-errorWrapper { + outline: 0; + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.Radio--disabled .Radio-wrapper { + border: var(--spacing-xs) solid var(--secondary-light); + background-color: var(--secondary-lightest); +} + +.Radio--disabled .Radio-errorWrapper { + border: var(--spacing-xs) solid var(--alert-lighter); + background-color: var(--secondary-lightest); +} + +.Radio-input:checked ~ .Radio-wrapper { + border: var(--spacing-xs) solid var(--primary); +} + +.Radio-input:checked ~ .Radio-errorWrapper { + border: var(--spacing-xs) solid var(--alert); +} + +.Radio-input:checked ~ .Radio-wrapper:after { + display: block; + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Radio-wrapper:after { + content: ''; + display: none; + border-radius: 50%; + background: var(--primary); +} + +.Radio-wrapper--regular:after { + width: var(--spacing); + height: var(--spacing); +} + +.Radio-wrapper--tiny:after { + width: var(--spacing-m); + height: var(--spacing-m); + border: var(--spacing-xs) solid var(--primary); +} + +.Radio:hover .Radio-input:checked ~ .Radio-wrapper { + border: var(--spacing-xs) solid var(--primary-dark); +} + +.Radio:hover .Radio-input:checked ~ .Radio-wrapper:after { + background: var(--primary-dark); +} + +.Radio:hover .Radio-input:checked ~ .Radio-wrapper--tiny:after { + border: var(--spacing-xs) solid var(--primary-dark); +} + +.Radio:active .Radio-input:checked ~ .Radio-wrapper { + background-color: var(--secondary-light); + border: var(--spacing-xs) solid var(--primary-darker); +} + +.Radio:hover .Radio-input:checked ~ .Radio-errorWrapper { + background-color: var(--secondary-lighter); + border: var(--spacing-xs) solid var(--alert-dark); +} + +.Radio:active .Radio-input:checked ~ .Radio-errorWrapper { + background-color: var(--secondary-light); + border: var(--spacing-xs) solid var(--alert-darker); +} + +.Radio:active .Radio-input:checked ~ .Radio-wrapper:after { + background: var(--primary-darker); +} + +.Radio:active .Radio-input:checked ~ .Radio-wrapper--tiny:after { + border: var(--spacing-xs) solid var(--primary-darker); +} + +.Radio--disabled .Radio-input:checked ~ .Radio-wrapper { + border: var(--spacing-xs) solid var(--primary-lighter); + background-color: var(--secondary-lightest); +} + +.Radio--disabled .Radio-input:checked ~ .Radio-errorWrapper { + border: var(--spacing-xs) solid var(--alert-lighter); + background-color: var(--secondary-lightest); +} + +.Radio--disabled .Radio-input:checked ~ .Radio-wrapper:after { + background: var(--primary-lighter); +} + +.Radio--disabled .Radio-input ~ .Radio-wrapper:focus { + box-shadow: none; +} + +.Radio--disabled .Radio-input ~ .Radio-errorWrapper:focus { + box-shadow: none; +} + +.Select-input { + min-width: unset !important; + background: transparent; + border-bottom-left-radius: 0px; + border-bottom-right-radius: 0; + height: 36px; +} + +.Select-input, +.Select-input:focus-within { + border: unset !important; + box-shadow: none !important; +} + +.Select-input:hover { + background-color: #f4f4f4; +} + +.Select-trigger { + width: 100%; + justify-content: space-between; + padding-top: unset; + padding-bottom: unset; + background: var(--secondary-light); + color: var(--text); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Select-trigger:disabled { + background: var(--secondary-lighter); + color: var(--text-disabled); + pointer-events: none; +} + +.Select-trigger:active, +.Select-trigger--open { + background-color: var(--secondary-dark) !important; + color: var(--text) !important; + -webkit-animation-timing-function: cubic-bezier(0, 0, 0.38, 0.9); + animation-timing-function: cubic-bezier(0, 0, 0.38, 0.9); + -webkit-animation-duration: 120ms; + animation-duration: 120ms; +} + +.Select-trigger:hover { + background: var(--secondary); + color: var(--text); +} + +.Select-trigger:focus { + background-color: var(--secondary-light); + box-shadow: var(--shadow-spread) var(--secondary-shadow); +} + +.Select-inputWrapper { + border-bottom: var(--spacing-xs) solid var(--secondary-dark); +} + +.Select-inputWrapper:focus-within { + border-bottom: var(--spacing-xs) solid var(--primary); +} + +.Select-trigger-wrapper { + width: 100%; + display: flex; + flex-direction: row; + align-items: center; + overflow: hidden; +} + +.Select-trigger--small { + height: var(--spacing-xl); + padding-right: var(--spacing); + padding-left: var(--spacing); +} + +.Select-trigger-text { + text-align: left; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + max-width: 100%; + margin: 0; + font-size: var(--font-size); + line-height: var(--font-height); +} + +.Select-trigger--regular { + height: var(--spacing-3); + padding-right: var(--spacing); + padding-left: var(--spacing-l); +} + +.Select-trigger--placeholder { + color: var(--text-subtle); +} + +.Select-trigger--icon { + padding-left: var(--spacing); +} + +.Select-buttonWrapper { + display: flex; + justify-content: flex-end; + padding-top: var(--spacing); + padding-right: var(--spacing); + padding-bottom: var(--spacing); + border-top: var(--spacing-xs) solid var(--secondary-light); +} + +.Select-crossButton { + display: flex; + flex-shrink: 0; + overflow: hidden; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; + color: var(--inverse); + border-radius: 50%; + padding: var(--spacing-s); +} + +.Select-crossButton:focus-visible, +.Select-crossButton:focus { + outline: var(--spacing-s) solid var(--secondary-shadow); +} + +.Select-crossButton:hover { + background-color: var(--secondary); +} + +.Select-crossButton:active { + background-color: var(--secondary-dark); +} + +.Selection-card { + cursor: pointer; + border-radius: var(--spacing-m); + position: relative; + box-shadow: inset 0 0 0 var(--spacing-xs) var(--secondary-dark); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Selection-card:hover { + box-shadow: inset 0 0 0 var(--spacing-s) var(--inverse-lightest); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Selection-card:focus, +.Selection-card:focus-visible { + outline: none; + box-shadow: var(--shadow-spread) var(--secondary-shadow), inset 0 0 0 var(--spacing-xs) var(--secondary-light); +} + +.Selection-card:active { + box-shadow: inset 0 0 0 var(--spacing-s) var(--primary); + transition: var(--duration--fast-01) var(--standard-productive-curve); +} + +.Selection-card--disabled { + pointer-events: none; + box-shadow: inset 0 0 0 var(--spacing-xs) var(--secondary-lighter); +} + +/* selected states */ + +.Selection-card--selected { + box-shadow: inset 0 0 0 var(--spacing-s) var(--primary); +} + +.Selection-card--selected:hover { + box-shadow: inset 0 0 0 var(--spacing-s) var(--primary-dark); +} + +.Selection-card--selected:focus, +.Selection-card--selected:focus-visible { + outline: none; + box-shadow: var(--shadow-spread) var(--primary-shadow), inset 0 0 0 var(--spacing-s) var(--primary); +} + +.Selection-card--selected:active { + box-shadow: inset 0 0 0 var(--spacing-s) var(--primary-darker); +} + +.Selection-card--selected-disabled { + pointer-events: none; + box-shadow: inset 0 0 0 var(--spacing-xs) var(--primary-lighter); +} + +/* overlay classes */ + +.Selection-card-overlay { + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 2; + position: absolute; + pointer-events: none; + border-radius: var(--spacing-m); +} + +.Selection-card:active .Selection-card-overlay { + background-color: var(--primary); + opacity: var(--opacity-3); +} + +.Selection-card--disabled .Selection-card-overlay { + background-color: var(--secondary-lightest); + opacity: var(--opacity-10); +} + +.Selection-card--selected .Selection-card-overlay { + background-color: var(--primary); + opacity: var(--opacity-1); +} + +.Selection-card--selected:active .Selection-card-overlay { + background-color: var(--primary); + opacity: var(--opacity-1); +} + +.Selection-card--selected-disabled .Selection-card-overlay { + background-color: var(--primary-lightest); + opacity: var(--opacity-10); +} + +@-webkit-keyframes sidesheet-open { + from { + right: -100%; + } + to { + right: 0; + } +} + +@keyframes sidesheet-open { + from { + right: -100%; + } + to { + right: 0; + } +} + +@-webkit-keyframes sidesheet-close { + from { + right: 0; + } + to { + right: -100%; + } +} + +@keyframes sidesheet-close { + from { + right: 0; + } + to { + right: -100%; + } +} + +@-webkit-keyframes shift-right-spacing-3 { + from { + transform: translateX(calc(-1 * var(--spacing-3))); + } + to { + transform: translateX(0); + } +} + +@keyframes shift-right-spacing-3 { + from { + transform: translateX(calc(-1 * var(--spacing-3))); + } + to { + transform: translateX(0); + } +} + +@-webkit-keyframes shift-left-spacing-3 { + from { + transform: translateX(var(--spacing-3)); + } + to { + transform: translateX(0); + } +} + +@keyframes shift-left-spacing-3 { + from { + transform: translateX(var(--spacing-3)); + } + to { + transform: translateX(0); + } +} + +.Sidesheet { + position: fixed !important; + top: 0; + right: 0; + height: 100vh; + box-shadow: var(--shadow-l); + background-color: var(--white); + display: flex; + flex-direction: column; + visibility: hidden; +} + +.Sidesheet--open { + visibility: visible; +} + +.Sidesheet-animation--open { + -webkit-animation: sidesheet-open 240ms cubic-bezier(0, 0, 0.3, 1); + animation: sidesheet-open 240ms cubic-bezier(0, 0, 0.3, 1); +} + +.Sidesheet-animation--close { + -webkit-animation: sidesheet-close 120ms cubic-bezier(0.4, 0.14, 1, 1); + animation: sidesheet-close 120ms cubic-bezier(0.4, 0.14, 1, 1); + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; +} + +.Sidesheet-header { + display: flex; + justify-content: flex-start; + padding-top: var(--spacing-2); + padding-bottom: var(--spacing-l); + padding-right: var(--spacing-2); +} + +.Sidesheet-header--withSeperator { + border-bottom: var(--spacing-xs) solid var(--secondary-light); +} + +.Sidesheet-body { + padding: 0 var(--spacing-xl); +} + +.Sidesheet-body--withMargin { + margin-bottom: 80px; +} + +.Sidesheet-footer { + padding-top: var(--spacing-xl); + padding-bottom: var(--spacing-xl); +} + +.Sidesheet-footer--withSeperator { + border-top: var(--spacing-xs) solid var(--secondary-light); +} + +.Sidesheet-footer--stickToBottom { + position: absolute; + bottom: 0; +} + +.Sidesheet-header--shiftRight { + -webkit-animation: shift-right-spacing-3 var(--duration--fast-01) var(--standard-productive-curve); + animation: shift-right-spacing-3 var(--duration--fast-01) var(--standard-productive-curve); +} + +.Sidesheet-header--shiftLeft { + -webkit-animation: shift-left-spacing-3 var(--duration--fast-01) var(--standard-productive-curve); + animation: shift-left-spacing-3 var(--duration--fast-01) var(--standard-productive-curve); +} + +.Sidesheet-body--nextPage { + -webkit-animation: fadeIn var(--duration--fast-02) var(--standard-productive-curve); + animation: fadeIn var(--duration--fast-02) var(--standard-productive-curve); +} + +.Sidesheet-body--firstPage { + -webkit-animation: fadeIn var(--duration--fast-02) var(--standard-expressive-curve); + animation: fadeIn var(--duration--fast-02) var(--standard-expressive-curve); +} + +.Slider { + width: 100%; +} + +.Slider-wrapper { + position: relative; + outline: none; + cursor: pointer; +} + +.Slider-wrapper--disabled { + cursor: not-allowed; +} + +.Slider-track { + border-radius: var(--spacing-m); + height: var(--spacing-2); + display: flex; + align-items: center; + overflow: hidden; +} + +.Slider-progress { + background: var(--secondary-lighter); + height: var(--spacing-s); + box-sizing: border-box; + border-radius: var(--spacing-s); +} + +.Slider-progress--inRange { + background: var(--primary); +} + +.Slider-progress--inRangeDisabled { + border: var(--border); +} + +.Slider-label { + margin-top: var(--spacing-m); + transform: translate(-50%, 0px); + display: flex; + align-items: center; + flex-direction: column; + position: absolute; + -webkit-user-select: none; + user-select: none; + -moz-user-select: none; + -ms-user-select: none; +} + +.Slider-ticks { + width: var(--spacing-s); + height: var(--spacing-m); + border-radius: var(--spacing-xs); + background-color: var(--secondary-dark); +} + +.Slider-tooltip--visible { + visibility: visible; +} + +.Slider-tooltip--hidden { + visibility: hidden; +} + +.Slider-tooltip { + position: absolute; + color: var(--white); + outline: none; + bottom: calc(100% + 4px); + transform: translateX(calc(-50% + 8px)); +} + +.Slider-handle { + height: var(--spacing-2); + width: var(--spacing-2); + position: absolute; + left: 0; + top: 0; + border-radius: 50%; + background-color: var(--white); + border: var(--spacing-s) solid var(--primary); + box-shadow: var(--shadow-s); + cursor: pointer; + box-sizing: border-box; + outline: none; + display: flex; + transition: border var(--duration--fast-01) var(--standard-productive-curve), + background-color var(--duration--fast-01) var(--standard-productive-curve); +} + +.Slider-handle:hover { + background-color: var(--primary-lightest); +} + +.Slider-handle:active { + background-color: var(--primary); +} + +.Slider-handle:focus { + box-shadow: var(--shadow-spread) var(--primary-shadow); + outline: none; +} + +.Slider-handle--disabled { + pointer-events: none; + background-color: var(--secondary-lighter); + box-shadow: none; +} + +.Slider-handle--disabled:focus { + box-shadow: none; +} + +@-webkit-keyframes rotate { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(360deg); + } +} + +@keyframes rotate { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(360deg); + } +} + +@-webkit-keyframes spin { + 0% { + stroke-dasharray: 1, 200; + stroke-dashoffset: 0; + } + 50% { + stroke-dasharray: 89, 200; + stroke-dashoffset: -35px; + } + 100% { + stroke-dasharray: 89, 200; + stroke-dashoffset: -124px; + } +} + +@keyframes spin { + 0% { + stroke-dasharray: 1, 200; + stroke-dashoffset: 0; + } + 50% { + stroke-dasharray: 89, 200; + stroke-dashoffset: -35px; + } + 100% { + stroke-dasharray: 89, 200; + stroke-dashoffset: -124px; + } +} + +.Spinner { + -webkit-animation: rotate 2s linear infinite; + animation: rotate 2s linear infinite; +} + +.Spinner--small { + height: var(--spacing-2); + width: var(--spacing-2); +} + +.Spinner--medium { + height: var(--spacing-3); + width: var(--spacing-3); +} + +.Spinner--large { + height: var(--spacing-4); + width: var(--spacing-4); +} + +.Circle { + stroke-linecap: round; + stroke-dasharray: 1 200; + stroke-dashoffset: 0; + -webkit-animation: spin 1.5s ease-in-out infinite; + animation: spin 1.5s ease-in-out infinite; +} + +.Circle--primary { + stroke: var(--primary); +} + +.Circle--secondary { + stroke: var(--primary); +} + +.Circle--white { + stroke: var(--primary); +} + +.StatusHint { + display: flex; + flex-direction: row; + width: -webkit-fit-content; + width: -moz-fit-content; + width: fit-content; +} + +.StatusHint-icon { + flex-shrink: 0; + border-radius: 50%; + height: var(--spacing); + width: var(--spacing); + margin-right: var(--spacing); + margin-top: var(--spacing-0-75); +} + +.StatusHint--alert { + background: var(--alert); +} + +.StatusHint--success { + background: var(--success); +} + +.StatusHint--warning { + background: var(--warning); +} + +.StatusHint--info { + background: var(--primary); +} + +.StatusHint--default { + background: var(--secondary); +} + +.Stepper { + display: flex; +} + +.Step { + display: flex; + align-items: center; + padding-left: var(--spacing-l); + padding-right: var(--spacing-l); + margin-left: var(--spacing-xs); + margin-right: var(--spacing-xs); + border-radius: var(--spacing-2); + cursor: pointer; +} + +.Step:hover { + background-color: var(--secondary); +} + +.Step:active { + background-color: var(--secondary-dark); +} + +.Step:focus, +.Step:focus-visible { + box-shadow: var(--shadow-spread) var(--secondary-shadow); + outline: none; +} + +/* Completed State */ + +.Step--completed { + color: var(--primary-dark); +} + +.Step--completed:hover { + background-color: var(--secondary); +} + +.Step--completed:active { + background-color: var(--secondary-dark); +} + +.Step--completed:focus, +.Step--completed:focus-visible { + box-shadow: var(--shadow-spread) var(--secondary-shadow); + outline: none; +} + +/* Active State */ + +.Step--active { + background-color: var(--primary-lightest); + color: var(--primary-dark); + transition-delay: var(--duration--fast-02); +} + +.Step--active:hover { + background-color: var(--primary-lighter); +} + +.Step--active:focus, +.Step--active:focus-visible { + background-color: var(--primary-lightest); + box-shadow: var(--shadow-spread) var(--primary-shadow); + outline: none; +} + +.Step--active:active { + background-color: var(--primary-lighter); + color: var(--primary-darker); +} + +.Step--active:active .Stepper-text { + color: var(--primary-darker); +} + +/* Disabled State */ + +.Step--disabled { + cursor: not-allowed; + color: var(--inverse-lightest); + pointer-events: none; +} + +.Stepper-animate { + transition-delay: var(--duration--fast-02); + transition: var(--duration--fast-02) var(--standard-productive-curve); +} + +.Switch { + display: inline-flex; + position: relative; +} + +.Switch--tiny { + height: var(--spacing-2); + width: var(--spacing-3); +} + +.Switch--regular { + height: var(--spacing-xl); + width: var(--spacing-4); +} + +.Switch--large { + height: var(--spacing-xl); + width: var(--spacing-4); +} + +.Switch-input { + position: absolute; + cursor: pointer; + z-index: 10; + opacity: 0; + width: 100%; + height: 100%; + margin: 0; +} + +.Switch-wrapper { + display: flex; + align-items: center; + line-height: 100%; + padding: var(--spacing-s); + top: 0; + left: 0; + width: 100%; + background-color: var(--secondary-light); + transition: background 120ms ease; + padding-right: var(--spacing-0-75); +} + +.Switch-input:focus ~ .Switch-wrapper { + box-shadow: var(--shadow-spread) var(--secondary-shadow); + background-color: var(--secondary-light); +} + +.Switch-input:focus ~ .Switch-wrapper--checked { + box-shadow: var(--shadow-spread) var(--primary-shadow); + background-color: var(--primary); +} + +.Switch-input:hover ~ .Switch-wrapper { + background-color: var(--secondary); +} + +.Switch-input:hover ~ .Switch-wrapper--checked { + background-color: var(--primary-dark); +} + +.Switch-input:active ~ .Switch-wrapper { + background-color: var(--secondary-dark); +} + +.Switch-input:active ~ .Switch-wrapper--checked { + background-color: var(--primary-darker); +} + +.Switch-wrapper--tiny { + border-radius: 10px; +} + +.Switch-wrapper--regular { + border-radius: 34px; +} + +.Switch-wrapper--large { + border-radius: 34px; +} + +.Switch-wrapper:before { + content: ''; + height: 100%; + width: 50%; + background-color: var(--shadow-0); + box-shadow: var(--shadow-m); + border-radius: 50%; + box-sizing: border-box; + transition-duration: 80ms; +} + +.Switch-wrapper--checked { + background-color: var(--primary); + transition: background 120ms ease; + padding-left: var(--spacing-0-75); + padding-right: 2px !important; +} + +.Switch-wrapper--checked:before { + transform: translateX(100%); + transition-duration: 80ms; +} + +.Switch--disabled { + pointer-events: none; +} + +.Switch-wrapper--disabled { + background-color: var(--secondary-lighter); +} + +.Switch-wrapper--checkedDisabled { + background-color: var(--primary-lighter); +} + +.Table { + display: flex; + flex-grow: 1; + flex-direction: column; + height: 100%; + width: 100%; + z-index: 1; +} + +.Table-grid { + height: 100%; + overflow: hidden; + z-index: 1; +} + +.Table-pagination { + display: flex; + justify-content: center; + background: var(--white); + padding: var(--spacing) 0; + border-top: var(--border); +} + +.Table-Header--Divider { + height: var(--spacing-xl); +} + +.Table-Header-Label--hide { + -webkit-animation: fadeOut var(--duration--fast-02) var(--exit-productive-curve); + animation: fadeOut var(--duration--fast-02) var(--exit-productive-curve); + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; +} + +.Table-Header-Label--show { + -webkit-animation: fadeIn var(--duration--moderate-01) var(--entrance-productive-curve); + animation: fadeIn var(--duration--moderate-01) var(--entrance-productive-curve); + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; +} + +/* tabs */ + +.TabsWrapper { + display: flex; + flex-grow: 1; + flex-direction: column; +} + +.TabsWrapper-header { + box-sizing: border-box; + display: flex; + align-items: center; + flex-direction: row; +} + +.TabsWrapper-header--withSeparator { + border-bottom: var(--border); +} + +.Tab { + position: relative; + display: flex; + flex-direction: row; + cursor: pointer; + min-width: 40px; + padding: var(--spacing-l) var(--spacing-l) var(--spacing-2); + margin-bottom: calc(-1 * var(--spacing-xs)); + text-align: center; +} + +.Tab:last-child { + margin-right: 0; +} + +.Tab::after { + position: absolute; + left: 0; + bottom: 0; + content: ''; + width: calc(100% - 2 * var(--spacing-l)); + height: var(--spacing-s); + background-color: transparent; + margin-left: var(--spacing-l); + border-top-left-radius: var(--spacing-xs); + border-top-right-radius: var(--spacing-xs); +} + +.Tab:hover::after { + background-color: var(--inverse-lighter); +} + +.Tab:active::after { + background-color: var(--inverse-light); +} + +.Tab--active::after { + background-color: var(--primary); +} + +.Tab:focus { + outline: none; + border-radius: 4px; + /* Using box shadow instead of border as border shifts the div down which cuts the Icon & Text of label. */ + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.Tab--active:hover .Tab-selected { + color: var(--primary-dark); +} + +.Tab-selected:hover::after { + background-color: var(--primary-dark); +} + +.Tab:active:focus { + box-shadow: none; +} + +.Tab--disabled { + cursor: not-allowed; +} + +.Tab--disabled:focus { + box-shadow: none; +} + +.Tab--disabled:hover::after { + background-color: transparent; +} + +.Tab-count { + display: flex; + margin-right: var(--spacing-l); +} + +.Tab-count .Badge { + margin-left: 0; + margin-right: 0; +} + +.Tab-icon { + display: flex; + min-width: inherit; + justify-content: space-between; +} + +.Tabs { + display: flex; + box-sizing: border-box; + flex-direction: row; +} + +.Tabs--withSeparator { + border-bottom: var(--border); +} + +.Tab-pills { + cursor: pointer; + margin-right: var(--spacing); +} + +.Tab-pills--disabled { + opacity: var(--opacity-10); + cursor: not-allowed; +} + +.DismissibleTab-icon--right { + padding: var(--spacing-s); + margin-left: var(--spacing-s); + outline: none; + border-radius: 10px; +} + +.DismissibleTab-icon--default:focus-visible { + outline: var(--spacing-s) solid var(--secondary-shadow); +} + +.DismissibleTab-icon--default:hover { + background-color: var(--secondary); +} + +.DismissibleTab-icon--default:active { + background-color: var(--secondary-dark); +} + +.DismissibleTab-icon--selected:focus-visible { + outline: var(--spacing-s) solid var(--primary-shadow); +} + +.DismissibleTab-icon--selected:hover { + background-color: var(--primary-lighter); +} + +.DismissibleTab-icon--selected:active { + background-color: var(--primary-light); +} + +/* Textarea */ + +.Textarea { + min-height: var(--spacing-3); + width: 100%; + display: block; + font-family: var(--font-family); + font-weight: var(--font-weight-normal); + line-height: var(--font-height); + font-size: var(--font-size); + box-sizing: border-box; + border-radius: var(--spacing-m); + border: var(--border); + color: var(--inverse); + padding: var(--spacing) var(--spacing-l); + resize: none; + cursor: auto; /* this ensures text cursor over text, and pointer cursor over scroll*/ +} + +.Textarea::-moz-placeholder { + color: var(--inverse-lighter); +} + +.Textarea:-ms-input-placeholder { + color: var(--inverse-lighter); +} + +.Textarea::placeholder { + color: var(--inverse-lighter); +} + +.Textarea::-ms-clear { + display: none; +} + +.Textarea:focus-within { + outline: none; + border: var(--spacing-xs) solid var(--primary); + box-shadow: var(--shadow-spread) var(--primary-shadow); +} + +.Textarea:disabled { + color: var(--inverse-lightest); + background: var(--secondary-lightest); + border-color: var(--secondary-light); +} + +.Textarea--error { + border: var(--spacing-xs) solid var(--alert); +} + +.Textarea--error:focus-within { + border: var(--spacing-xs) solid var(--alert); + box-shadow: var(--shadow-spread) var(--alert-shadow); +} + +.Textarea--resize { + resize: both; +} + +/* toast */ + +.Toast { + display: flex; + flex-direction: row; + box-sizing: border-box; + word-break: break-word; + width: 360px; + border-radius: var(--spacing-m); + padding-left: var(--spacing-2); + padding-right: var(--spacing-l); + padding-top: var(--spacing-l); + padding-bottom: var(--spacing-l); +} + +.Toast--withMessage { + padding-bottom: var(--spacing-2); +} + +.Toast--info { + background-color: var(--primary); +} + +.Toast--alert { + background-color: var(--alert); +} + +.Toast--success { + background-color: var(--success); +} + +.Toast--warning { + background-color: var(--warning); +} + +.Toast--warning { + color: var(--text); +} + +.Toast-icon { + line-height: var(--font-height-m); +} + +.Toast-icon--left { + margin-right: var(--spacing-2); +} + +.Toast-icon--right { + cursor: pointer; + margin-left: var(--spacing-l); + border-radius: 50%; + display: flex; + align-items: center; + padding-right: var(--spacing-m); + padding-left: var(--spacing-m); + height: var(--spacing-xl); + box-sizing: initial; +} + +.Toast-icon--info, +.Toast-icon--success, +.Toast-icon--alert, +.Toast-icon--default { + color: var(--text-white); +} + +.Toast-icon--warning { + color: var(--warning-darker); +} + +.Toast-close-icon--warning:focus, +.Toast-close-icon--warning:focus-visible { + outline: none; + box-shadow: var(--shadow-spread) rgba(183, 135, 7, 0.16); +} + +.Toast-close-icon--warning:hover, +.Toast-close-icon--warning:active { + background: var(--warning-dark); +} + +.Toast-close-icon--success:focus, +.Toast-close-icon--success:focus-visible { + outline: none; + box-shadow: var(--shadow-spread) rgba(34, 121, 52, 0.16); +} + +.Toast-close-icon--success:hover, +.Toast-close-icon--success:active { + background: var(--success-dark); +} + +.Toast-close-icon--info:focus, +.Toast-close-icon--info:focus-visible { + outline: none; + box-shadow: var(--shadow-spread) rgba(0, 80, 159, 0.16); +} + +.Toast-close-icon--info:hover, +.Toast-close-icon--info:active { + background: var(--primary-dark); +} + +.Toast-close-icon--alert:focus, +.Toast-close-icon--alert:focus-visible { + outline: none; + box-shadow: var(--shadow-spread) rgba(156, 40, 40, 0.16); +} + +.Toast-close-icon--alert:hover, +.Toast-close-icon--alert:active { + background: var(--alert-dark); +} + +.Toast-body { + display: flex; + flex-direction: column; + flex-grow: 1; +} + +.Toast-title { + display: flex; +} + +.Toast-heading { + flex-grow: 1; +} + +.Toast-text { + padding-top: var(--spacing); +} + +.Toast-text--warning, +.Toast-heading--warning { + color: var(--warning-darker) !important; +} + +.Toast-actions { + display: flex; + padding-top: var(--spacing-l); +} + +.Toast-actionButton { + color: var(--text-white); + border-radius: var(--spacing-m); + margin-right: var(--spacing); +} + +.Toast-actionButton:last-child { + margin-right: 0; +} + +.Toast-actionButton--default { + background: var(--inverse-light); +} + +.Toast-actionButton--default:hover, +.Toast-actionButton--default:active { + background: var(--inverse); +} + +.Toast-actionButton--default:focus { + box-shadow: var(--shadow-spread) rgba(134, 134, 134, 0.16); +} + +.Toast-actionButton--info { + background: var(--primary-dark); +} + +.Toast-actionButton--info:hover, +.Toast-actionButton--info:active { + background: var(--primary-darker); +} + +.Toast-actionButton--info:focus { + box-shadow: var(--shadow-spread) rgba(0, 80, 159, 0.16); +} + +.Toast-actionButton--success { + background: var(--success-dark); +} + +.Toast-actionButton--success:hover, +.Toast-actionButton--success:active { + background: var(--success-darker); +} + +.Toast-actionButton--success:focus { + box-shadow: var(--shadow-spread) rgba(34, 121, 52, 0.16); +} + +.Toast-actionButton--alert { + background: var(--alert-dark); +} + +.Toast-actionButton--alert:hover, +.Toast-actionButton--alert:active { + background: var(--alert-darker); +} + +.Toast-actionButton--alert:focus { + box-shadow: var(--shadow-spread) var(--alert-shadow); +} + +.Toast-actionButton--warning { + background: var(--warning-dark); +} + +.Toast-actionButton--warning:hover, +.Toast-actionButton--warning:active { + background: var(--warning-darker); +} + +.Toast-actionButton--warning:focus { + box-shadow: var(--shadow-spread) var(--warning-shadow); +} + +.Tooltip { + max-width: var(--spacing-9); + padding: var(--spacing-m) var(--spacing); + border-radius: var(--spacing-m); + z-index: 500; + background: rgba(47, 47, 47, 0.88); + overflow: hidden; + box-sizing: border-box; + transition: opacity 120ms; + transition-timing-function: cubic-bezier(0, 0, 0.38, 0.9); +} + +.Tooltip-text { + word-break: break-word; + -webkit-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; +} + +@-webkit-keyframes tooltip-open-top { + from { + top: 0px; + opacity: 0; + } + to { + top: -4px; + opacity: 1; + } +} + +@keyframes tooltip-open-top { + from { + top: 0px; + opacity: 0; + } + to { + top: -4px; + opacity: 1; + } +} +@-webkit-keyframes tooltip-close-top { + from { + top: -4px; + opacity: 1; + } + to { + top: 0px; + opacity: 0; + } +} +@keyframes tooltip-close-top { + from { + top: -4px; + opacity: 1; + } + to { + top: 0px; + opacity: 0; + } +} + +.Tooltip-animation-open-top { + -webkit-animation: tooltip-open-top 120ms cubic-bezier(0, 0, 0.3, 1); + animation: tooltip-open-top 120ms cubic-bezier(0, 0, 0.3, 1); + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; +} +.Tooltip-animation-close-top { + -webkit-animation: tooltip-close-top 80ms cubic-bezier(0.4, 0.14, 1, 1); + animation: tooltip-close-top 80ms cubic-bezier(0.4, 0.14, 1, 1); +} +@-webkit-keyframes tooltip-open-bottom { + from { + top: -4px; + opacity: 0; + } + to { + top: 0px; + opacity: 1; + } +} +@keyframes tooltip-open-bottom { + from { + top: -4px; + opacity: 0; + } + to { + top: 0px; + opacity: 1; + } +} +@-webkit-keyframes tooltip-close-bottom { + from { + top: 0px; + opacity: 1; + } + to { + top: -4px; + opacity: 0; + } +} +@keyframes tooltip-close-bottom { + from { + top: 0px; + opacity: 1; + } + to { + top: -4px; + opacity: 0; + } +} + +.Tooltip-animation-open-bottom { + -webkit-animation: tooltip-open-bottom 120ms cubic-bezier(0, 0, 0.3, 1); + animation: tooltip-open-bottom 120ms cubic-bezier(0, 0, 0.3, 1); + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; +} +.Tooltip-animation-close-bottom { + -webkit-animation: tooltip-close-bottom 80ms cubic-bezier(0.4, 0.14, 1, 1); + animation: tooltip-close-bottom 80ms cubic-bezier(0.4, 0.14, 1, 1); +} + +@-webkit-keyframes tooltip-open-left { + from { + left: 1px; + opacity: 0; + } + to { + left: -3px; + opacity: 1; + } +} + +@keyframes tooltip-open-left { + from { + left: 1px; + opacity: 0; + } + to { + left: -3px; + opacity: 1; + } +} +@-webkit-keyframes tooltip-close-left { + from { + left: -3px; + opacity: 1; + } + to { + left: 1px; + opacity: 0; + } +} +@keyframes tooltip-close-left { + from { + left: -3px; + opacity: 1; + } + to { + left: 1px; + opacity: 0; + } +} + +.Tooltip-animation-open-left { + -webkit-animation: tooltip-open-left 120ms cubic-bezier(0, 0, 0.3, 1); + animation: tooltip-open-left 120ms cubic-bezier(0, 0, 0.3, 1); + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; +} +.Tooltip-animation-close-left { + -webkit-animation: tooltip-close-left 80ms cubic-bezier(0.4, 0.14, 1, 1); + animation: tooltip-close-left 80ms cubic-bezier(0.4, 0.14, 1, 1); +} + +@-webkit-keyframes tooltip-open-right { + from { + left: -3px; + opacity: 0; + } + to { + left: 1px; + opacity: 1; + } +} + +@keyframes tooltip-open-right { + from { + left: -3px; + opacity: 0; + } + to { + left: 1px; + opacity: 1; + } +} +@-webkit-keyframes tooltip-close-right { + from { + left: 1px; + opacity: 1; + } + to { + left: -3px; + opacity: 0; + } +} +@keyframes tooltip-close-right { + from { + left: 1px; + opacity: 1; + } + to { + left: -3px; + opacity: 0; + } +} + +.Tooltip-animation-open-right { + -webkit-animation: tooltip-open-right 120ms cubic-bezier(0, 0, 0.3, 1); + animation: tooltip-open-right 120ms cubic-bezier(0, 0, 0.3, 1); + -webkit-animation-fill-mode: forwards; + animation-fill-mode: forwards; +} +.Tooltip-animation-close-right { + -webkit-animation: tooltip-close-right 80ms cubic-bezier(0.4, 0.14, 1, 1); + animation: tooltip-close-right 80ms cubic-bezier(0.4, 0.14, 1, 1); +} + +.Tooltip-container { + transition-delay: 400ms; + -webkit-animation-delay: 400ms; + animation-delay: 400ms; +} + +.VerificationCodeInput-Input { + display: inline-flex; + width: 40px; +} + +.VerificationCodeInput-Input .Input-input { + text-align: center; +} + +.VerificationCodeInput-Input .Input-input::-webkit-inner-spin-button, +.VerificationCodeInput-Input .Input-input::-webkit-outer-spin-button { + -webkit-appearance: none; + margin: 0; +} + +.VerticalNav { + display: inline-flex; + flex-direction: column; +} + +.VerticalNav--expanded { + width: 240px; +} + +.VerticalNav-section { + text-transform: uppercase; + padding-left: var(--spacing-2); + padding-top: var(--spacing-l); + padding-bottom: var(--spacing-0-75); + margin-top: var(--spacing); +} + +.VerticalNav-section--border { + border-top: var(--spacing-xs) solid var(--secondary-light); +} + +.MenuItem { + text-decoration: none; + box-sizing: border-box; + display: flex; + align-items: center; + cursor: pointer; + transition: var(--duration--fast-01) var(--standard-productive-curve); + width: 232px; +} + +.MenuItem--horizontal { + height: var(--spacing-3); + padding-right: var(--spacing-l); + padding-left: var(--spacing-l); + border-radius: var(--spacing-2); + margin: 0 var(--spacing-xs); +} + +.MenuItem--vertical { + margin-top: var(--spacing-m); + margin-bottom: var(--spacing-m); +} + +.MenuItem--collapsed { + height: 28px; + width: 28px; + margin-left: 10px; + margin-right: 10px; + justify-content: center; + border-radius: 50%; + cursor: pointer; +} + +.MenuItem--expanded { + padding-left: var(--spacing-2); + padding-top: var(--spacing-m); + padding-bottom: var(--spacing-m); + margin-right: var(--spacing); + justify-content: space-between; + border-radius: 0px var(--spacing-2) var(--spacing-2) 0px; +} + +.MenuItem--disabled { + pointer-events: none; +} + +.MenuItem:hover { + background: var(--secondary); + text-decoration: none; +} + +.MenuItem:active { + background: var(--secondary-dark); +} + +.MenuItem:focus { + box-shadow: var(--shadow-spread) var(--secondary-shadow); + outline: none; +} + +.MenuItem--disabled:focus { + box-shadow: none; +} + +.MenuItem--active { + background: var(--primary-lightest); +} + +.MenuItem--active:hover { + background: var(--primary-lighter); +} + +.MenuItem--active:active { + background: var(--primary-lighter); + color: var(--primary-darker); +} + +.MenuItem--active:active .MenuItem-Text { + color: var(--primary-darker); +} + +.MenuItem--active:focus { + box-shadow: var(--shadow-spread) var(--primary-shadow); + outline: none; +} + +.MenuItem--rounded { + border-radius: var(--spacing-2); +} + +.MenuItem--subMenu { + padding-left: 40px; +} + +.MenuItem .Text { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.MenuItem--overflow { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.MenuItem-count { + margin-right: var(--spacing-m); +} + +.MenuItem-count--disabled { + opacity: var(--opacity-10); + color: var(--text); +} + +.align-baseline { + vertical-align: baseline !important; +} + +.align-top { + vertical-align: top !important; +} + +.align-middle { + vertical-align: middle !important; +} + +.align-bottom { + vertical-align: bottom !important; +} + +.align-text-bottom { + vertical-align: text-bottom !important; +} + +.align-text-top { + vertical-align: text-top !important; +} + +.bg-primary { + background-color: var(--primary) !important; +} + +.bg-secondary { + background-color: var(--secondary) !important; +} + +.bg-secondary-lighter { + background-color: var(--secondary-lighter) !important; +} + +.bg-secondary-lightest { + background-color: var(--secondary-lightest) !important; +} + +.bg-success { + background-color: var(--success) !important; +} + +.bg-warning { + background-color: var(--warning) !important; +} + +.bg-danger { + background-color: var(--alert) !important; +} + +.bg-light { + background-color: var(--white) !important; +} + +.bg-dark { + background-color: var(--inverse) !important; +} + +.bg-transparent { + background-color: transparent !important; +} + +.border { + border: var(--border) !important; +} + +.border-top { + border-top: var(--border) !important; +} + +.border-bottom { + border-bottom: var(--border) !important; +} + +.border-right { + border-right: var(--border) !important; +} + +.border-left { + border-left: var(--border) !important; +} + +.border-0 { + border: 0 !important; +} + +.border-top-0 { + border-top: 0 !important; +} + +.border-right-0 { + border-right: 0 !important; +} + +.border-bottom-0 { + border-bottom: 0 !important; +} + +.border-left-0 { + border-left: 0 !important; +} + +.cursor-pointer { + cursor: pointer; +} + +.d-none { + display: none !important; +} + +.d-inline { + display: inline !important; +} + +.d-inline-block { + display: inline-block !important; +} + +.d-block { + display: block !important; +} + +.d-table { + display: table !important; +} + +.d-table-row { + display: table-row !important; +} + +.d-table-cell { + display: table-cell !important; +} + +.d-flex { + display: flex !important; +} + +.d-inline-flex { + display: inline-flex !important; +} + +.flex-fill { + flex: 1 1 auto !important; +} + +.flex-row { + flex-direction: row !important; +} + +.flex-column { + flex-direction: column !important; +} + +.flex-row-reverse { + flex-direction: row-reverse !important; +} + +.flex-column-reverse { + flex-direction: column-reverse !important; +} + +.flex-grow-0 { + flex-grow: 0 !important; +} + +.flex-grow-1 { + flex-grow: 1 !important; +} + +.flex-shrink-0 { + flex-shrink: 0 !important; +} + +.flex-shrink-1 { + flex-shrink: 1 !important; +} + +.flex-wrap { + flex-wrap: wrap !important; +} + +.flex-nowrap { + flex-wrap: nowrap !important; +} + +.flex-wrap-reverse { + flex-wrap: wrap-reverse !important; +} + +.justify-content-start { + justify-content: flex-start !important; +} + +.justify-content-end { + justify-content: flex-end !important; +} + +.justify-content-center { + justify-content: center !important; +} + +.justify-content-between { + justify-content: space-between !important; +} + +.justify-content-around { + justify-content: space-around !important; +} + +.justify-content-evenly { + justify-content: space-evenly !important; +} + +.align-items-start { + align-items: flex-start !important; +} + +.align-items-end { + align-items: flex-end !important; +} + +.align-items-center { + align-items: center !important; +} + +.align-items-baseline { + align-items: baseline !important; +} + +.align-items-stretch { + align-items: stretch !important; +} + +.align-content-start { + align-content: flex-start !important; +} + +.align-content-end { + align-content: flex-end !important; +} + +.align-content-center { + align-content: center !important; +} + +.align-content-between { + align-content: space-between !important; +} + +.align-content-around { + align-content: space-around !important; +} + +.align-content-stretch { + align-content: stretch !important; +} + +.align-self-auto { + align-self: auto !important; +} + +.align-self-start { + align-self: flex-start !important; +} + +.align-self-end { + align-self: flex-end !important; +} + +.align-self-center { + align-self: center !important; +} + +.align-self-baseline { + align-self: baseline !important; +} + +.align-self-stretch { + align-self: stretch !important; +} + +.order-first { + order: -1 !important; +} + +.order-0 { + order: 0 !important; +} + +.order-1 { + order: 1 !important; +} + +.order-2 { + order: 2 !important; +} + +.order-3 { + order: 3 !important; +} + +.order-4 { + order: 4 !important; +} + +.order-5 { + order: 5 !important; +} + +.order-last { + order: 6 !important; +} + +.Row { + display: flex; + flex-wrap: wrap; + flex: 1 100%; +} + +.Col { + position: relative; + box-sizing: border-box; + flex: 1 0 0%; +} + +.Col--auto { + flex: 0 0 auto; + width: auto; +} + +.Col--1 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 1); +} + +.Col--2 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 2); +} + +.Col--3 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 3); +} + +.Col--4 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 4); +} + +.Col--5 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 5); +} + +.Col--6 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 6); +} + +.Col--7 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 7); +} + +.Col--8 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 8); +} + +.Col--9 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 9); +} + +.Col--10 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 10); +} + +.Col--11 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 11); +} + +.Col--12 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 12); +} + +/* if the viewport is between 0 to 575 pixels wide. */ + +@media (max-width: 575px) { + .Col--xs-auto { + flex: 0 0 auto; + width: auto; + } + .Col--xs-1 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 1); + } + .Col--xs-2 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 2); + } + .Col--xs-3 { + flex: 0 0 auto; + } + .Col--xs-4 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 4); + } + .Col--xs-5 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 5); + } + .Col--xs-6 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 6); + } + .Col--xs-7 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 7); + } + .Col--xs-8 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 8); + } + .Col--xs-9 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 9); + } + .Col--xs-10 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 10); + } + .Col--xs-11 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 11); + } + .Col--xs-12 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 12); + } +} + +/* if the viewport is between 576 and 767 pixels wide. */ + +@media (min-width: 576px) and (max-width: 767px) { + .Col--s-auto { + flex: 0 0 auto; + width: auto; + } + .Col--s-1 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 1); + } + .Col--s-2 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 2); + } + .Col--s-3 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 3); + } + .Col--s-4 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 4); + } + .Col--s-5 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 5); + } + .Col--s-6 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 6); + } + .Col--s-7 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 7); + } + .Col--s-8 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 8); + } + .Col--s-9 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 9); + } + .Col--s-10 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 10); + } + .Col--s-11 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 11); + } + .Col--s-12 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 12); + } +} + +/* if the viewport is between 768 and 991 pixels wide. */ + +@media (min-width: 768px) and (max-width: 991px) { + .Col--m-auto { + flex: 0 0 auto; + width: auto; + } + .Col--m-1 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 1); + } + .Col--m-2 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 2); + } + .Col--m-3 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 3); + } + .Col--m-4 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 4); + } + .Col--m-5 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 5); + } + .Col--m-6 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 6); + } + .Col--m-7 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 7); + } + .Col--m-8 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 8); + } + .Col--m-9 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 9); + } + .Col--m-10 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 10); + } + .Col--m-11 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 11); + } + .Col--m-12 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 12); + } +} + +/* if the viewport is between 992 and 1199 pixels wide. */ + +@media (min-width: 992px) and (max-width: 1199px) { + .Col--l-auto { + flex: 0 0 auto; + width: auto; + } + .Col--l-1 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 1); + } + .Col--l-2 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 2); + } + .Col--l-3 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 3); + } + .Col--l-4 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 4); + } + .Col--l-5 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 5); + } + .Col--l-6 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 6); + } + .Col--l-7 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 7); + } + .Col--l-8 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 8); + } + .Col--l-9 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 9); + } + .Col--l-10 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 10); + } + .Col--l-11 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 11); + } + .Col--l-12 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 12); + } +} + +/* if the viewport is 1200 pixels wide or wider. */ + +@media (min-width: 1200px) { + .Col--xl-auto { + flex: 0 0 auto; + width: auto; + } + .Col--xl-1 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 1); + } + .Col--xl-2 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 2); + } + .Col--xl-3 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 3); + } + .Col--xl-4 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 4); + } + .Col--xl-5 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 5); + } + .Col--xl-6 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 6); + } + .Col--xl-7 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 7); + } + .Col--xl-8 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 8); + } + .Col--xl-9 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 9); + } + .Col--xl-10 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 10); + } + .Col--xl-11 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 11); + } + .Col--xl-12 { + flex: 0 0 auto; + width: calc(100% / var(--grid-columns) * 12); + } +} + +.overflow-auto { + overflow: auto !important; +} + +.overflow-hidden { + overflow: hidden !important; +} + +.position-static { + position: static !important; +} + +.position-relative { + position: relative !important; +} + +.position-absolute { + position: absolute !important; +} + +.position-fixed { + position: fixed !important; +} + +.position-sticky { + position: -webkit-sticky !important; + position: sticky !important; +} + +.w-25 { + width: 25% !important; +} + +.w-50 { + width: 50% !important; +} + +.w-75 { + width: 75% !important; +} + +.w-100 { + width: 100% !important; +} + +.w-auto { + width: auto !important; +} + +.mw-100 { + max-width: 100% !important; +} + +.vw-25 { + width: 25vw !important; +} + +.vw-50 { + width: 50vw !important; +} + +.vw-75 { + width: 75vw !important; +} + +.vw-100 { + width: 100vw !important; +} + +.min-vw-100 { + min-width: 100vw !important; +} + +.h-25 { + height: 25% !important; +} + +.h-50 { + height: 50% !important; +} + +.h-75 { + height: 75% !important; +} + +.h-100 { + height: 100% !important; +} + +.h-auto { + height: auto !important; +} + +.mh-100 { + max-height: 100% !important; +} + +.vh-25 { + height: 25vh !important; +} + +.vh-50 { + height: 50vh !important; +} + +.vh-75 { + height: 75vh !important; +} + +.vh-100 { + height: 100vh !important; +} + +.min-vh-100 { + min-height: 100vh !important; +} + +.m-0 { + margin: 0 !important; +} + +.m-1 { + margin: var(--spacing-xs) !important; +} + +.m-2 { + margin: var(--spacing-s) !important; +} + +.m-3 { + margin: var(--spacing-m) !important; +} + +.m-4 { + margin: var(--spacing) !important; +} + +.m-5 { + margin: var(--spacing-l) !important; +} + +.m-6 { + margin: var(--spacing-2) !important; +} + +.m-7 { + margin: var(--spacing-xl) !important; +} + +.m-8 { + margin: var(--spacing-3) !important; +} + +.m-9 { + margin: var(--spacing-4) !important; +} + +.m-10 { + margin: var(--spacing-5) !important; +} + +.m-11 { + margin: var(--spacing-6) !important; +} + +.m-12 { + margin: var(--spacing-7) !important; +} + +.m-13 { + margin: var(--spacing-8) !important; +} + +.m-14 { + margin: var(--spacing-9) !important; +} + +.m-auto { + margin: auto !important; +} + +.mx-0 { + margin-right: 0 !important; + margin-left: 0 !important; +} + +.mx-1 { + margin-right: var(--spacing-xs) !important; + margin-left: var(--spacing-xs) !important; +} + +.mx-2 { + margin-right: var(--spacing-s) !important; + margin-left: var(--spacing-s) !important; +} + +.mx-3 { + margin-right: var(--spacing-m) !important; + margin-left: var(--spacing-m) !important; +} + +.mx-4 { + margin-right: var(--spacing) !important; + margin-left: var(--spacing) !important; +} + +.mx-5 { + margin-right: var(--spacing-l) !important; + margin-left: var(--spacing-l) !important; +} + +.mx-6 { + margin-right: var(--spacing-2) !important; + margin-left: var(--spacing-2) !important; +} + +.mx-7 { + margin-right: var(--spacing-xl) !important; + margin-left: var(--spacing-xl) !important; +} + +.mx-8 { + margin-right: var(--spacing-3) !important; + margin-left: var(--spacing-3) !important; +} + +.mx-9 { + margin-right: var(--spacing-4) !important; + margin-left: var(--spacing-4) !important; +} + +.mx-10 { + margin-right: var(--spacing-5) !important; + margin-left: var(--spacing-5) !important; +} + +.mx-11 { + margin-right: var(--spacing-6) !important; + margin-left: var(--spacing-6) !important; +} + +.mx-12 { + margin-right: var(--spacing-7) !important; + margin-left: var(--spacing-7) !important; +} + +.mx-13 { + margin-right: var(--spacing-8) !important; + margin-left: var(--spacing-8) !important; +} + +.mx-14 { + margin-right: var(--spacing-9) !important; + margin-left: var(--spacing-9) !important; +} + +.mx-auto { + margin-right: auto !important; + margin-left: auto !important; +} + +.my-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; +} + +.my-1 { + margin-top: var(--spacing-xs) !important; + margin-bottom: var(--spacing-xs) !important; +} + +.my-2 { + margin-top: var(--spacing-s) !important; + margin-bottom: var(--spacing-s) !important; +} + +.my-3 { + margin-top: var(--spacing-m) !important; + margin-bottom: var(--spacing-m) !important; +} + +.my-4 { + margin-top: var(--spacing) !important; + margin-bottom: var(--spacing) !important; +} + +.my-5 { + margin-top: var(--spacing-l) !important; + margin-bottom: var(--spacing-l) !important; +} + +.my-6 { + margin-top: var(--spacing-2) !important; + margin-bottom: var(--spacing-2) !important; +} + +.my-7 { + margin-top: var(--spacing-xl) !important; + margin-bottom: var(--spacing-xl) !important; +} + +.my-8 { + margin-top: var(--spacing-3) !important; + margin-bottom: var(--spacing-3) !important; +} + +.my-9 { + margin-top: var(--spacing-4) !important; + margin-bottom: var(--spacing-4) !important; +} + +.my-10 { + margin-top: var(--spacing-5) !important; + margin-bottom: var(--spacing-5) !important; +} + +.my-11 { + margin-top: var(--spacing-6) !important; + margin-bottom: var(--spacing-6) !important; +} + +.my-12 { + margin-top: var(--spacing-7) !important; + margin-bottom: var(--spacing-7) !important; +} + +.my-13 { + margin-top: var(--spacing-8) !important; + margin-bottom: var(--spacing-8) !important; +} + +.my-14 { + margin-top: var(--spacing-9) !important; + margin-bottom: var(--spacing-9) !important; +} + +.my-auto { + margin-top: auto !important; + margin-bottom: auto !important; +} + +.mt-0 { + margin-top: 0 !important; +} + +.mt-1 { + margin-top: var(--spacing-xs) !important; +} + +.mt-2 { + margin-top: var(--spacing-s) !important; +} + +.mt-3 { + margin-top: var(--spacing-m) !important; +} + +.mt-4 { + margin-top: var(--spacing) !important; +} + +.mt-5 { + margin-top: var(--spacing-l) !important; +} + +.mt-6 { + margin-top: var(--spacing-2) !important; +} + +.mt-7 { + margin-top: var(--spacing-xl) !important; +} + +.mt-8 { + margin-top: var(--spacing-3) !important; +} + +.mt-9 { + margin-top: var(--spacing-4) !important; +} + +.mt-10 { + margin-top: var(--spacing-5) !important; +} + +.mt-11 { + margin-top: var(--spacing-6) !important; +} + +.mt-12 { + margin-top: var(--spacing-7) !important; +} + +.mt-13 { + margin-top: var(--spacing-8) !important; +} + +.mt-14 { + margin-top: var(--spacing-9) !important; +} + +.mt-auto { + margin-top: auto !important; +} + +.mb-0 { + margin-bottom: 0 !important; +} + +.mb-1 { + margin-bottom: var(--spacing-xs) !important; +} + +.mb-2 { + margin-bottom: var(--spacing-s) !important; +} + +.mb-3 { + margin-bottom: var(--spacing-m) !important; +} + +.mb-4 { + margin-bottom: var(--spacing) !important; +} + +.mb-5 { + margin-bottom: var(--spacing-l) !important; +} + +.mb-6 { + margin-bottom: var(--spacing-2) !important; +} + +.mb-7 { + margin-bottom: var(--spacing-xl) !important; +} + +.mb-8 { + margin-bottom: var(--spacing-3) !important; +} + +.mb-9 { + margin-bottom: var(--spacing-4) !important; +} + +.mb-10 { + margin-bottom: var(--spacing-5) !important; +} + +.mb-11 { + margin-bottom: var(--spacing-6) !important; +} + +.mb-12 { + margin-bottom: var(--spacing-7) !important; +} + +.mb-13 { + margin-bottom: var(--spacing-8) !important; +} + +.mb-14 { + margin-bottom: var(--spacing-9) !important; +} + +.mb-auto { + margin-bottom: auto !important; +} + +.mr-0 { + margin-right: 0 !important; +} + +.mr-1 { + margin-right: var(--spacing-xs) !important; +} + +.mr-2 { + margin-right: var(--spacing-s) !important; +} + +.mr-3 { + margin-right: var(--spacing-m) !important; +} + +.mr-4 { + margin-right: var(--spacing) !important; +} + +.mr-5 { + margin-right: var(--spacing-l) !important; +} + +.mr-6 { + margin-right: var(--spacing-2) !important; +} + +.mr-7 { + margin-right: var(--spacing-xl) !important; +} + +.mr-8 { + margin-right: var(--spacing-3) !important; +} + +.mr-9 { + margin-right: var(--spacing-4) !important; +} + +.mr-10 { + margin-right: var(--spacing-5) !important; +} + +.mr-11 { + margin-right: var(--spacing-6) !important; +} + +.mr-12 { + margin-right: var(--spacing-7) !important; +} + +.mr-13 { + margin-right: var(--spacing-8) !important; +} + +.mr-14 { + margin-right: var(--spacing-9) !important; +} + +.mr-auto { + margin-right: auto !important; +} + +.ml-0 { + margin-left: 0 !important; +} + +.ml-1 { + margin-left: var(--spacing-xs) !important; +} + +.ml-2 { + margin-left: var(--spacing-s) !important; +} + +.ml-3 { + margin-left: var(--spacing-m) !important; +} + +.ml-4 { + margin-left: var(--spacing) !important; +} + +.ml-5 { + margin-left: var(--spacing-l) !important; +} + +.ml-6 { + margin-left: var(--spacing-2) !important; +} + +.ml-7 { + margin-left: var(--spacing-xl) !important; +} + +.ml-8 { + margin-left: var(--spacing-3) !important; +} + +.ml-9 { + margin-left: var(--spacing-4) !important; +} + +.ml-10 { + margin-left: var(--spacing-5) !important; +} + +.ml-11 { + margin-left: var(--spacing-6) !important; +} + +.ml-12 { + margin-left: var(--spacing-7) !important; +} + +.ml-13 { + margin-left: var(--spacing-8) !important; +} + +.ml-14 { + margin-left: var(--spacing-9) !important; +} + +.ml-auto { + margin-left: auto !important; +} + +.p-0 { + padding: 0 !important; +} + +.p-1 { + padding: var(--spacing-xs) !important; +} + +.p-2 { + padding: var(--spacing-s) !important; +} + +.p-3 { + padding: var(--spacing-m) !important; +} + +.p-4 { + padding: var(--spacing) !important; +} + +.p-5 { + padding: var(--spacing-l) !important; +} + +.p-6 { + padding: var(--spacing-2) !important; +} + +.p-7 { + padding: var(--spacing-xl) !important; +} + +.p-8 { + padding: var(--spacing-3) !important; +} + +.p-9 { + padding: var(--spacing-4) !important; +} + +.p-10 { + padding: var(--spacing-5) !important; +} + +.p-11 { + padding: var(--spacing-6) !important; +} + +.p-12 { + padding: var(--spacing-7) !important; +} + +.p-13 { + padding: var(--spacing-8) !important; +} + +.p-14 { + padding: var(--spacing-9) !important; +} + +.p-auto { + padding: auto !important; +} + +.px-0 { + padding-right: 0 !important; + padding-left: 0 !important; +} + +.px-1 { + padding-right: var(--spacing-xs) !important; + padding-left: var(--spacing-xs) !important; +} + +.px-2 { + padding-right: var(--spacing-s) !important; + padding-left: var(--spacing-s) !important; +} + +.px-3 { + padding-right: var(--spacing-m) !important; + padding-left: var(--spacing-m) !important; +} + +.px-4 { + padding-right: var(--spacing) !important; + padding-left: var(--spacing) !important; +} + +.px-5 { + padding-right: var(--spacing-l) !important; + padding-left: var(--spacing-l) !important; +} + +.px-6 { + padding-right: var(--spacing-2) !important; + padding-left: var(--spacing-2) !important; +} + +.px-7 { + padding-right: var(--spacing-xl) !important; + padding-left: var(--spacing-xl) !important; +} + +.px-8 { + padding-right: var(--spacing-3) !important; + padding-left: var(--spacing-3) !important; +} + +.px-9 { + padding-right: var(--spacing-4) !important; + padding-left: var(--spacing-4) !important; +} + +.px-10 { + padding-right: var(--spacing-5) !important; + padding-left: var(--spacing-5) !important; +} + +.px-11 { + padding-right: var(--spacing-6) !important; + padding-left: var(--spacing-6) !important; +} + +.px-12 { + padding-right: var(--spacing-7) !important; + padding-left: var(--spacing-7) !important; +} + +.px-13 { + padding-right: var(--spacing-8) !important; + padding-left: var(--spacing-8) !important; +} + +.px-14 { + padding-right: var(--spacing-9) !important; + padding-left: var(--spacing-9) !important; +} + +.px-auto { + padding-right: auto !important; + padding-left: auto !important; +} + +.py-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; +} + +.py-1 { + padding-top: var(--spacing-xs) !important; + padding-bottom: var(--spacing-xs) !important; +} + +.py-2 { + padding-top: var(--spacing-s) !important; + padding-bottom: var(--spacing-s) !important; +} + +.py-3 { + padding-top: var(--spacing-m) !important; + padding-bottom: var(--spacing-m) !important; +} + +.py-4 { + padding-top: var(--spacing) !important; + padding-bottom: var(--spacing) !important; +} + +.py-5 { + padding-top: var(--spacing-l) !important; + padding-bottom: var(--spacing-l) !important; +} + +.py-6 { + padding-top: var(--spacing-2) !important; + padding-bottom: var(--spacing-2) !important; +} + +.py-7 { + padding-top: var(--spacing-xl) !important; + padding-bottom: var(--spacing-xl) !important; +} + +.py-8 { + padding-top: var(--spacing-3) !important; + padding-bottom: var(--spacing-3) !important; +} + +.py-9 { + padding-top: var(--spacing-4) !important; + padding-bottom: var(--spacing-4) !important; +} + +.py-10 { + padding-top: var(--spacing-5) !important; + padding-bottom: var(--spacing-5) !important; +} + +.py-11 { + padding-top: var(--spacing-6) !important; + padding-bottom: var(--spacing-6) !important; +} + +.py-12 { + padding-top: var(--spacing-7) !important; + padding-bottom: var(--spacing-7) !important; +} + +.py-13 { + padding-top: var(--spacing-8) !important; + padding-bottom: var(--spacing-8) !important; +} + +.py-14 { + padding-top: var(--spacing-9) !important; + padding-bottom: var(--spacing-9) !important; +} + +.py-auto { + padding-top: auto !important; + padding-bottom: auto !important; +} + +.pt-0 { + padding-top: 0 !important; +} + +.pt-1 { + padding-top: var(--spacing-xs) !important; +} + +.pt-2 { + padding-top: var(--spacing-s) !important; +} + +.pt-3 { + padding-top: var(--spacing-m) !important; +} + +.pt-4 { + padding-top: var(--spacing) !important; +} + +.pt-5 { + padding-top: var(--spacing-l) !important; +} + +.pt-6 { + padding-top: var(--spacing-2) !important; +} + +.pt-7 { + padding-top: var(--spacing-xl) !important; +} + +.pt-8 { + padding-top: var(--spacing-3) !important; +} + +.pt-9 { + padding-top: var(--spacing-4) !important; +} + +.pt-10 { + padding-top: var(--spacing-5) !important; +} + +.pt-11 { + padding-top: var(--spacing-6) !important; +} + +.pt-12 { + padding-top: var(--spacing-7) !important; +} + +.pt-13 { + padding-top: var(--spacing-8) !important; +} + +.pt-14 { + padding-top: var(--spacing-9) !important; +} + +.pt-auto { + padding-top: auto !important; +} + +.pb-0 { + padding-bottom: 0 !important; +} + +.pb-1 { + padding-bottom: var(--spacing-xs) !important; +} + +.pb-2 { + padding-bottom: var(--spacing-s) !important; +} + +.pb-3 { + padding-bottom: var(--spacing-m) !important; +} + +.pb-4 { + padding-bottom: var(--spacing) !important; +} + +.pb-5 { + padding-bottom: var(--spacing-l) !important; +} + +.pb-6 { + padding-bottom: var(--spacing-2) !important; +} + +.pb-7 { + padding-bottom: var(--spacing-xl) !important; +} + +.pb-8 { + padding-bottom: var(--spacing-3) !important; +} + +.pb-9 { + padding-bottom: var(--spacing-4) !important; +} + +.pb-10 { + padding-bottom: var(--spacing-5) !important; +} + +.pb-11 { + padding-bottom: var(--spacing-6) !important; +} + +.pb-12 { + padding-bottom: var(--spacing-7) !important; +} + +.pb-13 { + padding-bottom: var(--spacing-8) !important; +} + +.pb-14 { + padding-bottom: var(--spacing-9) !important; +} + +.pb-auto { + padding-bottom: auto !important; +} + +.pr-0 { + padding-right: 0 !important; +} + +.pr-1 { + padding-right: var(--spacing-xs) !important; +} + +.pr-2 { + padding-right: var(--spacing-s) !important; +} + +.pr-3 { + padding-right: var(--spacing-m) !important; +} + +.pr-4 { + padding-right: var(--spacing) !important; +} + +.pr-5 { + padding-right: var(--spacing-l) !important; +} + +.pr-6 { + padding-right: var(--spacing-2) !important; +} + +.pr-7 { + padding-right: var(--spacing-xl) !important; +} + +.pr-8 { + padding-right: var(--spacing-3) !important; +} + +.pr-9 { + padding-right: var(--spacing-4) !important; +} + +.pr-10 { + padding-right: var(--spacing-5) !important; +} + +.pr-11 { + padding-right: var(--spacing-6) !important; +} + +.pr-12 { + padding-right: var(--spacing-7) !important; +} + +.pr-13 { + padding-right: var(--spacing-8) !important; +} + +.pr-14 { + padding-right: var(--spacing-9) !important; +} + +.pr-auto { + padding-right: auto !important; +} + +.pl-0 { + padding-left: 0 !important; +} + +.pl-1 { + padding-left: var(--spacing-xs) !important; +} + +.pl-2 { + padding-left: var(--spacing-s) !important; +} + +.pl-3 { + padding-left: var(--spacing-m) !important; +} + +.pl-4 { + padding-left: var(--spacing) !important; +} + +.pl-5 { + padding-left: var(--spacing-l) !important; +} + +.pl-6 { + padding-left: var(--spacing-2) !important; +} + +.pl-7 { + padding-left: var(--spacing-xl) !important; +} + +.pl-8 { + padding-left: var(--spacing-3) !important; +} + +.pl-9 { + padding-left: var(--spacing-4) !important; +} + +.pl-10 { + padding-left: var(--spacing-5) !important; +} + +.pl-11 { + padding-left: var(--spacing-6) !important; +} + +.pl-12 { + padding-left: var(--spacing-7) !important; +} + +.pl-13 { + padding-left: var(--spacing-8) !important; +} + +.pl-14 { + padding-left: var(--spacing-9) !important; +} + +.pl-auto { + padding-left: auto !important; +} + +.text-align-start { + text-align: start !important; +} + +.text-align-end { + text-align: end !important; +} + +.text-align-center { + text-align: center !important; +} + +.text-align-justify { + text-align: justify !important; +} + +.text-align-left { + text-align: left !important; +} + +.text-align-right { + text-align: right !important; +} + +.color-white { + color: var(--white); +} + +.color-primary { + color: var(--primary); +} + +.color-secondary { + color: var(--secondary); +} + +.color-success { + color: var(--success); +} + +.color-alert { + color: var(--alert); +} + +.color-warning { + color: var(--warning); +} + +.color-accent1 { + color: var(--accent1); +} + +.color-accent2 { + color: var(--accent2); +} + +.color-accent3 { + color: var(--accent3); +} + +.color-accent4 { + color: var(--accent4); +} + +.color-inverse { + color: var(--inverse); +} + +/* dark */ + +.color-primary-dark { + color: var(--primary-dark); +} + +.color-secondary-dark { + color: var(--secondary-dark); +} + +.color-success-dark { + color: var(--success-dark); +} + +.color-alert-dark { + color: var(--alert-dark); +} + +.color-warning-dark { + color: var(--warning-dark); +} + +.color-accent1-dark { + color: var(--accent1-dark); +} + +.color-accent2-dark { + color: var(--accent2-dark); +} + +.color-accent3-dark { + color: var(--accent3-dark); +} + +.color-accent4-dark { + color: var(--accent4-dark); +} + +/* darker */ + +.color-primary-darker { + color: var(--primary-darker); +} + +.color-success-darker { + color: var(--success-darker); +} + +.color-alert-darker { + color: var(--alert-darker); +} + +.color-warning-darker { + color: var(--warning-darker); +} + +.color-accent1-darker { + color: var(--accent1-darker); +} + +.color-accent2-darker { + color: var(--accent2-darker); +} + +.color-accent3-darker { + color: var(--accent3-darker); +} + +.color-accent4-darker { + color: var(--accent4-darker); +} + +/* light */ + +.color-primary-light { + color: var(--primary-light); +} + +.color-secondary-light { + color: var(--secondary-light); +} + +.color-success-light { + color: var(--success-light); +} + +.color-alert-light { + color: var(--alert-light); +} + +.color-warning-light { + color: var(--warning-light); +} + +.color-accent1-light { + color: var(--accent1-light); +} + +.color-accent2-light { + color: var(--accent2-light); +} + +.color-accent3-light { + color: var(--accent3-light); +} + +.color-accent4-light { + color: var(--accent4-light); +} + +.color-inverse-light { + color: var(--inverse-light); +} + +/* lighter */ +.color-primary-lighter { + color: var(--primary-lighter); +} + +.color-secondary-lighter { + color: var(--secondary-lighter); +} + +.color-success-lighter { + color: var(--success-lighter); +} + +.color-alert-lighter { + color: var(--alert-lighter); +} + +.color-warning-lighter { + color: var(--warning-lighter); +} + +.color-accent1-lighter { + color: var(--accent1-lighter); +} + +.color-accent2-lighter { + color: var(--accent2-lighter); +} + +.color-accent3-lighter { + color: var(--accent3-lighter); +} + +.color-accent4-lighter { + color: var(--accent4-lighter); +} + +.color-inverse-lighter { + color: var(--inverse-lighter); +} + +/* lightest */ +.color-primary-lightest { + color: var(--primary-lightest); +} + +.color-secondary-lightest { + color: var(--secondary-lightest); +} + +.color-success-lightest { + color: var(--success-lightest); +} + +.color-alert-lightest { + color: var(--alert-lightest); +} + +.color-warning-lightest { + color: var(--warning-lightest); +} + +.color-accent1-lightest { + color: var(--accent1-lightest); +} + +.color-accent2-lightest { + color: var(--accent2-lightest); +} + +.color-accent3-lightest { + color: var(--accent3-lightest); +} + +.color-accent4-lightest { + color: var(--accent4-lightest); +} + +.color-inverse-lightest { + color: var(--inverse-lightest); +} + +/* shadow */ +.color-primary-shadow { + color: var(--primary-shadow); +} + +.color-secondary-shadow { + color: var(--secondary-shadow); +} + +.color-success-shadow { + color: var(--success-shadow); +} + +.color-alert-shadow { + color: var(--alert-shadow); +} + +.color-warning-shadow { + color: var(--warning-shadow); +} + +.color-accent1-shadow { + color: var(--accent1-shadow); +} + +.color-accent2-shadow { + color: var(--accent2-shadow); +} + +.color-accent3-shadow { + color: var(--accent3-shadow); +} + +.color-accent4-shadow { + color: var(--accent4-shadow); +} + +.color-inverse-shadow { + color: var(--inverse-shadow); +} + +/** utility **/ + +.hide-scroll-bar::-webkit-scrollbar { + height: 0px; + /* Remove scrollbar space */ + background: transparent; + /* Optional: just make scrollbar invisible */ +} + +.hide-scroll-bar { + -ms-overflow-style: none; + scrollbar-width: none; +} + +.ellipsis { + overflow: hidden; + text-overflow: ellipsis; +} + +.ellipsis--noWrap { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.cursor-pointer { + cursor: pointer; +} + +.white-space-nowrap { + white-space: nowrap; +} + +/*# sourceMappingURL=index.css.map */ diff --git a/css/dist/index.css.map b/css/dist/index.css.map new file mode 100644 index 0000000000..8165f9763a --- /dev/null +++ b/css/dist/index.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["index.css"],"names":[],"mappings":"AAAA,iBAAiB;AACjB;EACE,gBAAgB;EAChB,qBAAqB;EACrB,uBAAuB;EACvB,sBAAsB;EACtB,wBAAwB;EACxB,yBAAyB;EACzB,cAAc;EACd,mBAAmB;EACnB,qBAAqB;EACrB,oBAAoB;EACpB,sBAAsB;EACtB,uBAAuB;EACvB,gBAAgB;EAChB,qBAAqB;EACrB,uBAAuB;EACvB,sBAAsB;EACtB,wBAAwB;EACxB,yBAAyB;EACzB,gBAAgB;EAChB,qBAAqB;EACrB,uBAAuB;EACvB,sBAAsB;EACtB,wBAAwB;EACxB,yBAAyB;EACzB,eAAe;EACf,oBAAoB;EACpB,sBAAsB;EACtB,qBAAqB;EACrB,uBAAuB;EACvB,wBAAwB;EACxB,eAAe;EACf,oBAAoB;EACpB,sBAAsB;EACtB,qBAAqB;EACrB,uBAAuB;EACvB,wBAAwB;EACxB,gBAAgB;EAChB,sBAAsB;EACtB,wBAAwB;EACxB,yBAAyB;EACzB,gBAAgB;EAChB,qBAAqB;EACrB,uBAAuB;EACvB,sBAAsB;EACtB,wBAAwB;EACxB,yBAAyB;EACzB,mBAAmB;EACnB,oBAAoB;EACpB,oBAAoB;EACpB,oBAAoB;EACpB,gBAAgB;EAChB,qBAAqB;EACrB,sBAAsB;EACtB,wBAAwB;EACxB,yBAAyB;EACzB,gBAAgB;EAChB,qBAAqB;EACrB,uBAAuB;EACvB,sBAAsB;EACtB,wBAAwB;EACxB,yBAAyB;EACzB,gBAAgB;;EAEhB,gBAAgB;AAClB,EAAE,gBAAgB;;AAElB;EACE,WAAW;;EAEX,YAAY;EACZ,qBAAqB;EACrB,yBAAyB;EACzB,sBAAsB;EACtB,qBAAqB;EACrB,uBAAuB;EACvB,uBAAuB;EACvB,uBAAuB;EACvB,sBAAsB;EACtB,uBAAuB;EACvB,uBAAuB;;EAEvB,SAAS;EACT,+BAA+B;EAC/B,mCAAmC;EACnC,gCAAgC;EAChC,+BAA+B;EAC/B,iCAAiC;EACjC,iCAAiC;EACjC,iCAAiC;EACjC,gCAAgC;EAChC,iCAAiC;;EAEjC,WAAW;EACX,mCAAmC;EACnC,oCAAoC;EACpC,mCAAmC;EACnC,qCAAqC;EACrC,qCAAqC;EACrC,qCAAqC;EACrC,oCAAoC;EACpC,qCAAqC;;EAErC,UAAU;EACV,iCAAiC;EACjC,qCAAqC;EACrC,kCAAkC;EAClC,iCAAiC;EACjC,mCAAmC;EACnC,mCAAmC;EACnC,mCAAmC;EACnC,kCAAkC;EAClC,mCAAmC;EACnC,mCAAmC;;EAEnC,YAAY;EACZ,qCAAqC;EACrC,yCAAyC;EACzC,sCAAsC;EACtC,qCAAqC;EACrC,uCAAuC;EACvC,uCAAuC;EACvC,uCAAuC;EACvC,sCAAsC;EACtC,uCAAuC;EACvC,uCAAuC;;EAEvC,aAAa;EACb,uCAAuC;EACvC,2CAA2C;EAC3C,wCAAwC;EACxC,uCAAuC;EACvC,yCAAyC;EACzC,yCAAyC;EACzC,yCAAyC;EACzC,wCAAwC;EACxC,yCAAyC;EACzC,yCAAyC;;EAEzC,WAAW;EACX,yCAA+D;EAC/D,6CAAmE;EACnE,yCAA+D;EAC/D,uCAA2D;EAC3D,yCAA+D;EAC/D,yCAA+D;EAC/D,0CAA+D;EAC/D,yCAA+D;EAC/D,0CAA+D;EAC/D,wCAA+D;;EAE/D,gBAAgB;EAChB,oBAAoB;EACpB,mCAAmC;EACnC,2BAA2B;EAC3B,wCAAwC;EACxC,gCAAgC;EAChC,0BAA0B;EAC1B,8BAA8B;;EAE9B,YAAY;EACZ,iBAAiB;EACjB,gBAAgB;EAChB,gBAAgB;EAChB,mBAAmB;EACnB,cAAc;EACd,iBAAiB;EACjB,UAAU;EACV,iBAAiB;EACjB,UAAU;EACV,kBAAkB;EAClB,UAAU;EACV,iBAAiB;EACjB,UAAU;EACV,iBAAiB;EACjB,UAAU;EACV,iBAAiB;EACjB,WAAW;EACX,iBAAiB;EACjB,WAAW;EACX,kBAAkB;EAClB,WAAW;EACX,kBAAkB;EAClB,WAAW;EACX,kBAAkB;;EAElB,UAAU;EACV,4BAA4B;;EAE5B,cAAc;EACd,oBAAoB;EACpB,mBAAmB;EACnB,mBAAmB;EACnB,iBAAiB;EACjB,mBAAmB;EACnB,mBAAmB;EACnB,oBAAoB;EACpB,qBAAqB;EACrB,sBAAsB;;EAEtB,iBAAiB;EACjB,yBAAyB;EACzB,yBAAyB;EACzB,uBAAuB;EACvB,yBAAyB;;EAEzB,gCAAgC;EAChC,4BAA4B;EAC5B,qBAAqB;EACrB,mBAAmB;EACnB,qBAAqB;EACrB,qBAAqB;EACrB,sBAAsB;EACtB,uBAAuB;;EAEvB,mBAAmB;EACnB,uBAAuB;;EAEvB,kBAAkB;;EAElB,WAAW;EACX,kDAAkD;EAClD,mDAAmD;;EAEnD,YAAY;;EAEZ,WAAW;EACX,2CAA2C;EAC3C,2CAA2C;EAC3C,4CAA4C;EAC5C,0BAA0B;;EAE1B;;;;GAIC;;EAED,0BAA0B;EAC1B,0BAA0B;EAC1B,0BAA0B;EAC1B,4BAA4B;;EAE5B;;;GAGC;;EAED,kBAAkB;;EAElB,qBAAqB;EACrB,0BAA0B;;EAE1B,2BAA2B;EAC3B,sBAAsB;;EAEtB,qCAAqC;EACrC,kHAAkH;EAClH,4DAA4D;EAC5D,4DAA4D;EAC5D,kJAAkJ;EAClJ,0DAA0D;EAC1D,uDAAuD;EACvD,0FAA0F;EAC1F,qDAAqD;EACrD,sDAAsD;;EAEtD,wBAAwB;EACxB,yBAAyB;EACzB,0BAA0B;EAC1B,8BAA8B;EAC9B,8BAA8B;EAC9B,0BAA0B;EAC1B,0BAA0B;;EAE1B,YAAY;EACZ,iBAAiB;EACjB,iBAAiB;EACjB,iBAAiB;EACjB,iBAAiB;EACjB,iBAAiB;EACjB,iBAAiB;EACjB,iBAAiB;EACjB,kBAAkB;EAClB,kBAAkB;EAClB,iBAAiB;AACnB;;AAEA,aAAa;AACb;EACE,uCAAuC;EACvC,kBAAkB;EAClB,gBAAgB;EAChB,sDAAsD;AACxD;;AAEA;EACE,uCAAuC;EACvC,mBAAmB;EACnB,kBAAkB;EAClB,eAAe;EACf,cAAc;EACd,sBAAsB;EACtB,oBAAoB;EACpB,qBAAqB;EACrB,mBAAmB;EACnB,iBAAiB;EACjB,cAAc;EACd,qCAAqC;EACrC,mCAAmC;AACrC;;AAEA;EACE,kEAAkE;EAClE,uCAAuC;EACvC,mBAAmB;EACnB,kBAAkB;EAClB,eAAe;EACf,cAAc;EACd,sBAAsB;EACtB,oBAAoB;EACpB,qBAAqB;EACrB,mBAAmB;EACnB,iBAAiB;EACjB,cAAc;EACd,qCAAqC;EACrC,mCAAmC;AACrC;;AAEA;EACE,kEAAkE;EAClE,uCAAuC;EACvC,mBAAmB;EACnB,kBAAkB;EAClB,eAAe;EACf,cAAc;EACd,sBAAsB;EACtB,oBAAoB;EACpB,qBAAqB;EACrB,mBAAmB;EACnB,iBAAiB;EACjB,cAAc;EACd,qCAAqC;EACrC,mCAAmC;AACrC;;AAEA;EACE;IACE,UAAU;EACZ;;EAEA;IACE,UAAU;EACZ;AACF;;AARA;EACE;IACE,UAAU;EACZ;;EAEA;IACE,UAAU;EACZ;AACF;;AAEA;EACE;IACE,UAAU;EACZ;;EAEA;IACE,UAAU;EACZ;AACF;;AARA;EACE;IACE,UAAU;EACZ;;EAEA;IACE,UAAU;EACZ;AACF;;AAEA;EACE,mFAA2E;UAA3E,2EAA2E;AAC7E;;AAEA;EACE,oFAA4E;UAA5E,4EAA4E;AAC9E;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE;IACE,UAAU;IACV,OAAO;EACT;;EAEA;IACE,UAAU;IACV,iCAAiC;EACnC;AACF;;AAVA;EACE;IACE,UAAU;IACV,OAAO;EACT;;EAEA;IACE,UAAU;IACV,iCAAiC;EACnC;AACF;;AAEA;EACE;IACE,sBAAsB;EACxB;;EAEA;IACE,OAAO;EACT;AACF;;AARA;EACE;IACE,sBAAsB;EACxB;;EAEA;IACE,OAAO;EACT;AACF;;AAEA;EACE;IACE,UAAU;IACV,OAAO;EACT;;EAEA;IACE,UAAU;IACV,sBAAsB;EACxB;AACF;;AAVA;EACE;IACE,UAAU;IACV,OAAO;EACT;;EAEA;IACE,UAAU;IACV,sBAAsB;EACxB;AACF;;AAEA;EACE;IACE,iCAAiC;EACnC;;EAEA;IACE,OAAO;EACT;AACF;;AARA;EACE;IACE,iCAAiC;EACnC;;EAEA;IACE,OAAO;EACT;AACF;;AAEA;EACE,0FAAkF;UAAlF,kFAAkF;EAClF,qCAA6B;UAA7B,6BAA6B;AAC/B;;AAEA;EACE;gFAC8E;UAD9E;gFAC8E;AAChF;;AAEA;EACE,2FAAmF;UAAnF,mFAAmF;EACnF,qCAA6B;UAA7B,6BAA6B;AAC/B;;AAEA;EACE;iFAC+E;UAD/E;iFAC+E;AACjF;;AAEA;EACE,0BAA0B;EAC1B,yEAAyE;EACzE,qCAA6B;UAA7B,6BAA6B;AAC/B;;AAEA;EACE,0BAA0B;EAC1B,yEAAyE;AAC3E;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,+BAA+B;EAC/B,kBAAkB;EAClB,+BAA+B;EAC/B,SAAS;EACT,UAAU;EACV,2BAA2B;AAC7B;;AAEA,SAAS;AACT;EACE,SAAS;EACT,+BAA+B;AACjC;;AAEA;EACE,6BAA6B;EAC7B,sCAAsC;AACxC;;AAEA;EACE,2BAA2B;EAC3B,+BAA+B;AACjC;;AAEA;EACE,6BAA6B;EAC7B,iCAAiC;AACnC;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,sCAAsC;AACxC;;AAEA;EACE,oCAAoC;AACtC;;AAEA,YAAY;AACZ;EACE,SAAS;AACX;;AAEA;EACE,oCAAoC;EACpC,6BAA6B;EAC7B,iCAAiC;AACnC;;AAEA;EACE,sCAAsC;EACtC,6BAA6B;EAC7B,iCAAiC;AACnC;;AAEA;EACE,sCAAsC;EACtC,8BAA8B;EAC9B,kCAAkC;AACpC;;AAEA;EACE,sCAAsC;EACtC,+BAA+B;EAC/B,mCAAmC;AACrC;;AAEA;EACE,sCAAsC;EACtC,gCAAgC;EAChC,mCAAmC;AACrC;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,wBAAwB;AAC1B;;AAEA,UAAU;AACV;EACE,oBAAoB;AACtB;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,iCAAiC;EACjC,sCAAsC;EACtC,qBAAqB;AACvB;;AAEA;EACE,iCAAiC;EACjC,6BAA6B;AAC/B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,2BAA2B;EAC3B,0BAA0B;EAC1B,kBAAkB;EAClB,wBAAwB;EACxB,6BAA6B;EAC7B,kCAAkC;EAClC,oBAAoB;AACtB;;AAEA,YAAY;AACZ;EACE,aAAa;EACb,mBAAmB;EACnB,sBAAsB;AACxB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,aAAa;EACb,qBAAqB;EACrB,8BAA8B;AAChC;;AAEA;EACE,aAAa;AACf;;AAEA,eAAe;AACf;EACE,SAAS;EACT,sCAAsC;EACtC,2BAA2B;EAC3B,iCAAiC;EACjC,qCAAqC;EACrC,yBAAyB;AAC3B;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,oBAAoB;EACpB,YAAY;AACd;;AAEA;EACE,aAAa;EACb,kBAAkB;EAClB,mBAAmB;EACnB,uBAAuB;EACvB,aAAa;AACf;;AAEA;EACE,6DAAqD;UAArD,qDAAqD;AACvD;;AAEA;EACE,gEAAwD;UAAxD,wDAAwD;AAC1D;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,+CAA+C;EAC/C,4BAA4B;EAC5B,6BAA6B;EAC7B,kCAAkC;AACpC;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,mBAAmB;EACnB,0BAAkB;EAAlB,uBAAkB;EAAlB,kBAAkB;AACpB;;AAEA;EACE,+BAA+B;EAC/B,4BAA4B;AAC9B;;AAEA;EACE,WAAW;EACX,+BAA+B;EAC/B,oCAAoC;AACtC;;AAEA;EACE,gCAAgC;EAChC,+BAA+B;EAC/B,qEAAqE;AACvE;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,aAAa;EACb,cAAc;EACd,gBAAgB;EAChB,yBAAiB;KAAjB,sBAAiB;MAAjB,qBAAiB;UAAjB,iBAAiB;EACjB,eAAe;EACf,6BAA6B;EAC7B,kBAAkB;EAClB,yBAAyB;AAC3B;;AAEA;;EAEE,uDAAuD;AACzD;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,eAAe;EACf,+BAA+B;EAC/B,WAAW;EACX,qDAAqD;AACvD;;AAEA;EACE,2BAA2B;EAC3B,qEAAqE;AACvE;;AAEA;;EAEE,aAAa;EACb,sDAAsD;EACtD,wDAAwD;AAC1D;;AAEA;EACE,2BAA2B;EAC3B,qEAAqE;AACvE;;AAEA;EACE,oBAAoB;EACpB,kBAAkB;EAClB,wDAAwD;AAC1D;;AAEA;EACE,kBAAkB;EAClB,MAAM;EACN,QAAQ;EACR,SAAS;EACT,OAAO;EACP,UAAU;EACV,0BAA0B;EAC1B,kCAAkC;AACpC;;AAEA,WAAW;;AAEX;EACE,aAAa;EACb,YAAY;EACZ,cAAc;EACd,uBAAuB;EACvB,mBAAmB;EACnB,gBAAgB;EAChB,yBAAyB;EACzB,kBAAkB;EAClB,eAAe;AACjB;;AAEA;EACE,0BAA0B;EAC1B,sBAAsB;AACxB;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,+BAA+B;AACjC;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;AACzB;;AAEA;EACE,yBAAyB;EACzB,wBAAwB;AAC1B;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4CAA4C;EAC5C,0BAA0B;AAC5B;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,yCAAyC;EACzC,wBAAwB;AAC1B;;AAEA;EACE,yCAAyC;EACzC,yBAAyB;AAC3B;;AAEA;EACE,2BAA2B;EAC3B,gBAAgB;EAChB,sBAAsB;EACtB,sBAAsB;EACtB,qBAAa;MAAb,iBAAa;UAAb,aAAa;AACf;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,uBAAuB;EACvB,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;AACpB;;AAEA,2BAA2B;AAC3B;EACE,sBAAsB;EACtB,aAAa;EACb,mBAAmB;AACrB;;AAEA,0BAA0B;;AAE1B;EACE,yCAAyC;EACzC,kBAAkB;EAClB,aAAa;EACb,+EAA+E;EAC/E,kBAAkB;AACpB;;AAEA;;EAEE,wCAAwC;EACxC,mBAAmB;AACrB;;AAEA;EACE,uCAAuC;EACvC,iCAAiC;AACnC;;AAEA;EACE,2BAA2B;AAC7B;;AAEA,+BAA+B;;AAE/B;EACE,iCAAiC;EACjC,mDAAmD;AACrD;;AAEA;EACE,iCAAiC;EACjC,qDAAqD;AACvD;;AAEA;;EAEE,oHAAoH;AACtH;;AAEA,6BAA6B;;AAE7B;EACE,gBAAgB;EAChB,sBAAsB;AACxB;;AAEA;EACE,4DAA4D;AAC9D;;AAEA;EACE,qDAAqD;AACvD;;AAEA;EACE,2BAA2B;EAC3B,uBAAuB;EACvB,8BAA8B;EAC9B,6BAA6B;EAC7B,YAAY;AACd;;AAEA;;EAEE,wBAAwB;EACxB,2BAA2B;AAC7B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA,2BAA2B;;AAE3B;EACE,kBAAkB;AACpB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,iCAAiC;AACnC;;AAEA;;EAEE,wCAAwC;EACxC,mBAAmB;AACrB;;AAEA;EACE,iCAAiC;EACjC,mDAAmD;AACrD;;AAEA;;EAEE,oHAAoH;AACtH;;AAEA;EACE;IACE,UAAU;EACZ;EACA;IACE,0BAA0B;EAC5B;AACF;;AAPA;EACE;IACE,UAAU;EACZ;EACA;IACE,0BAA0B;EAC5B;AACF;;AAEA;EACE;IACE,0BAA0B;EAC5B;EACA;IACE,UAAU;EACZ;AACF;;AAPA;EACE;IACE,0BAA0B;EAC5B;EACA;IACE,UAAU;EACZ;AACF;;AAEA;EACE,wCAAgE;EAChE,aAAa;EACb,YAAY;EACZ,eAAe;EACf,OAAO;EACP,MAAM;EACN,aAAa;EACb,mBAAmB;EACnB,aAAa;EACb,cAAc;EACd,sBAAsB;EACtB,uBAAuB;EACvB,kBAAkB;EAClB,kBAAkB;AACpB;;AAEA;EACE,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,0FAAkF;UAAlF,kFAAkF;AACpF;;AAEA;EACE,uFAA+E;UAA/E,+EAA+E;AACjF;;AAEA,UAAU;;AAEV;EACE,UAAU;EACV,sCAAsC;EACtC,aAAa;EACb,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;EACvB,6BAA6B;EAC7B,iCAAiC;EACjC,yBAAyB;EACzB,+BAA+B;EAC/B,8BAA8B;EAC9B,6BAA6B;EAC7B,gCAAgC;EAChC,+BAA+B;EAC/B,qBAAqB;EACrB,sBAAsB;EACtB,oCAAoC;EACpC,eAAe;AACjB;;AAEA;EACE,0BAA0B;EAC1B,mBAAmB;AACrB;;AAEA;EACE,kCAAkC;EAClC,qBAAqB;AACvB;;AAEA;EACE,0BAA0B;EAC1B,mBAAmB;AACrB;;AAEA;EACE,wBAAwB;EACxB,mBAAmB;AACrB;;AAEA;EACE,0BAA0B;EAC1B,4BAA4B;AAC9B;;AAEA;EACE,0BAA0B;EAC1B,mBAAmB;AACrB;;AAEA;EACE,0BAA0B;EAC1B,mBAAmB;AACrB;;AAEA;EACE,0BAA0B;EAC1B,mBAAmB;AACrB;;AAEA;EACE,0BAA0B;EAC1B,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;EAC5B,mCAAmC;AACrC;;AAEA;EACE,kBAAkB;EAClB,kCAAkC;AACpC;;AAEA;EACE,4BAA4B;EAC5B,mCAAmC;AACrC;;AAEA;EACE,0BAA0B;EAC1B,iCAAiC;AACnC;;AAEA;EACE,4BAA4B;EAC5B,mCAAmC;AACrC;;AAEA;EACE,4BAA4B;EAC5B,mCAAmC;AACrC;;AAEA;EACE,4BAA4B;EAC5B,mCAAmC;AACrC;;AAEA;EACE,4BAA4B;EAC5B,mCAAmC;AACrC;;AAEA;EACE,4BAA4B;EAC5B,mCAAmC;AACrC;;AAEA,gBAAgB;;AAEhB;EACE,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,UAAU;EACV,sCAAsC;EACtC,0BAA0B;AAC5B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,uBAAuB;EACvB,6BAA6B;EAC7B,iCAAiC;EACjC,uBAAuB;EACvB,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,mBAAmB;EACnB,sBAAsB;EACtB,kBAAkB;EAClB,sBAAsB;EACtB,eAAe;EACf,yBAAiB;KAAjB,sBAAiB;MAAjB,qBAAiB;UAAjB,iBAAiB;EACjB,SAAS;EACT,+BAA+B;;EAE/B,2BAA2B;EAC3B,8BAA8B;;EAE9B,kBAAkB;EAClB,+BAA+B;EAC/B,sCAAsC;EACtC,2BAA2B;EAC3B,iCAAiC;EACjC,wBAAwB;;EAExB,qEAAqE;AACvE;;AAEA;EACE,mBAAmB;EACnB,oBAAoB;AACtB;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,yBAAyB;EACzB,6BAA6B;EAC7B,4BAA4B;EAC5B,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,wBAAwB;EACxB,+BAA+B;EAC/B,8BAA8B;AAChC;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,YAAY;EACZ,+BAA+B;EAC/B,8BAA8B;;EAE9B,iCAAiC;EACjC,6BAA6B;AAC/B;;AAEA;EACE,WAAW;AACb;;AAEA;;;;EAIE,8BAA8B;EAC9B,+BAA+B;AACjC;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,oBAAoB;EACpB,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,8BAA8B;AAChC;AACA;EACE,6BAA6B;AAC/B;;AAEA;EACE,kCAAkC;EAClC,qBAAqB;AACvB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,wDAAwD;AAC1D;;AAEA;EACE,oCAAoC;EACpC,8BAA8B;AAChC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,sDAAsD;AACxD;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,sDAAsD;AACxD;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,oDAAoD;AACtD;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,uBAAuB;EACvB,qBAAqB;AACvB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,wDAAwD;AAC1D;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,uBAAuB;EACvB,8BAA8B;AAChC;;AAEA;EACE,aAAa;EACb,kBAAkB;EAClB,UAAU;AACZ;;AAEA;EACE,0BAA0B;EAC1B,yBAAyB;AAC3B;;AAEA;EACE,0BAA0B;EAC1B,yBAAyB;AAC3B;;AAEA;EACE,mCAAmC;EACnC,0BAA0B;AAC5B;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,kCAAkC;EAClC,4BAA4B;AAC9B;;AAEA;EACE,mCAAmC;EACnC,sDAAsD;AACxD;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,mCAAmC;EACnC,6BAA6B;AAC/B;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;AACzB;;AAEA,aAAa;;AAEb;EACE,aAAa;EACb,eAAe;AACjB;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,sBAAsB;AACxB;;AAEA;EACE,yBAAyB;EACzB,8BAA8B;EAC9B,YAAY;AACd;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,6BAA6B;EAC7B,8BAA8B;EAC9B,+BAA+B;EAC/B,gCAAgC;EAChC,YAAY;AACd;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,kBAAkB;EAClB,aAAa;EACb,uBAAuB;EACvB,mBAAmB;EACnB,gCAAgC;AAClC;;AAEA;EACE,kBAAkB;EAClB,aAAa;EACb,uBAAuB;EACvB,mBAAmB;EACnB,8BAA8B;AAChC;;AAEA;EACE,kBAAkB;EAClB,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,eAAe;EACf,yBAAiB;KAAjB,sBAAiB;MAAjB,qBAAiB;UAAjB,iBAAiB;AACnB;;AAEA;EACE,OAAO;AACT;;AAEA;EACE,QAAQ;AACV;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,eAAe;EACf,6BAA6B;EAC7B,gCAAgC;EAChC,yBAAiB;KAAjB,sBAAiB;MAAjB,qBAAiB;UAAjB,iBAAiB;AACnB;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,YAAY;EACZ,8BAA8B;AAChC;;AAEA;EACE,aAAa;EACb,8BAA8B;EAC9B,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE,oBAAoB;EACpB,WAAW;EACX,uBAAuB;EACvB,kBAAkB;AACpB;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,0EAA0E;EAC1E,oDAAoD;AACtD;;AAEA;EACE,wEAAwE;AAC1E;;AAEA;EACE,0EAA0E;EAC1E,oDAAoD;AACtD;;AAEA;EACE,0EAA0E;EAC1E,oDAAoD;AACtD;;AAEA;EACE,0EAA0E;AAC5E;;AAEA;EACE,wEAAwE;AAC1E;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;EACvB,kBAAkB;EAClB,eAAe;EACf,yBAAiB;KAAjB,sBAAiB;MAAjB,qBAAiB;UAAjB,iBAAiB;EACjB,+BAA+B;EAC/B,qEAAqE;AACvE;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;;EAEE,mCAAmC;AACrC;;AAEA;;EAEE,iCAAiC;AACnC;;AAEA;;EAEE,mCAAmC;AACrC;;AAEA;;EAEE,iCAAiC;AACnC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;EAC1B,oCAAoC;AACtC;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,iCAAiC;AACnC;;AAEA;;EAEE,yBAAyB;EACzB,uBAAuB;AACzB;;AAEA;;EAEE,wBAAwB;EACxB,uBAAuB;AACzB;;AAEA;EACE,yBAAyB;EACzB,wBAAwB;AAC1B;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;AACzB;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,aAAa;EACb,uBAAuB;EACvB,2BAA2B;EAC3B,8BAA8B;AAChC;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,YAAY;EACZ,6BAA6B;AAC/B;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,kBAAkB;EAClB,wBAAwB;EACxB,uBAAuB;EACvB,wBAAwB;EACxB,8BAA8B;EAC9B,kBAAkB;AACpB;AACA;EACE,UAAU;EACV,WAAW;AACb;AACA;EACE,8BAA8B;AAChC;;AAEA;EACE,0EAA0E;AAC5E;;AAEA;EACE,0EAA0E;AAC5E;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,gCAAgC;AAClC;;AAEA,UAAU;;AAEV;EACE,+BAA+B;EAC/B,sDAAsD;EACtD,kBAAkB;EAClB,8BAA8B;AAChC;;AAEA;;;;EAIE,YAAY;EACZ,2BAA2B;AAC7B;;AAEA;EACE,YAAY;EACZ,2BAA2B;AAC7B;;AAEA;EACE,YAAY;EACZ,2BAA2B;AAC7B;;AAEA;EACE,YAAY;EACZ,2BAA2B;AAC7B;;AAEA;EACE,4EAA4E;AAC9E;;AAEA;EACE,8BAA8B;EAC9B,+BAA+B;AACjC;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,sBAAsB;EACtB,kBAAkB;EAClB,SAAS;EACT,WAAW;EACX,yBAAyB;AAC3B;;AAEA;EACE,0DAA0D;AAC5D;;AAEA;EACE,kCAAkC;EAClC,yBAAyB;AAC3B;;AAEA;EACE,0DAA0D;AAC5D;;AAEA;EACE,2DAA2D;AAC7D;;AAEA;EACE,4DAA4D;AAC9D;;AAEA;EACE,6DAA6D;AAC/D;;AAEA;EACE,WAAW;EACX,6BAA6B;EAC7B,yBAAyB;AAC3B;;AAEA;EACE,2BAA2B;EAC3B,8BAA8B;AAChC;;AAEA;EACE,sDAAsD;EACtD,8BAA8B;AAChC;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;EAC5B,cAAc;AAChB;;AAEA;EACE,aAAa;EACb,yBAAyB;EACzB,sBAAsB;EACtB,qBAAqB;EACrB,iBAAiB;EACjB,oBAAoB;EACpB,sBAAsB;EACtB,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE,kBAAkB;EAClB,UAAU;EACV,UAAU;EACV,eAAe;EACf,YAAY;EACZ,WAAW;EACX,SAAS;AACX;;AAEA;EACE,4BAA4B;EAC5B,aAAa;EACb,sBAAsB;EACtB,YAAY;AACd;;AAEA;EACE,aAAa;EACb,eAAe;AACjB;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,kBAAkB;EAClB,4BAA4B;AAC9B;;AAEA;EACE,wBAAwB;EACxB,2BAA2B;AAC7B;;AAEA;EACE,wBAAwB;EACxB,2BAA2B;AAC7B;;AAEA,qBAAqB;;AAErB;EACE,MAAM;EACN,OAAO;EACP,+BAA+B;EAC/B,aAAa;EACb,mBAAmB;EACnB,sBAAsB;EACtB,YAAY;EACZ,WAAW;EACX,uBAAuB;EACvB,qEAAqE;AACvE;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,qDAAqD;EACrD,iCAAiC;AACnC;;AAEA;EACE,wDAAwD;AAC1D;;AAEA;EACE,uDAAuD;EACvD,iCAAiC;AACnC;;AAEA;EACE,uDAAuD;EACvD,wCAAwC;AAC1C;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,sDAAsD;EACtD,2CAA2C;AAC7C;;AAEA,0CAA0C;;AAE1C;;EAEE,gCAAgC;EAChC,SAAS;AACX;;AAEA;;EAEE,sDAAsD;EACtD,gCAAgC;EAChC,SAAS;AACX;;AAEA;;EAEE,qCAAqC;EACrC,SAAS;AACX;;AAEA;;EAEE,uCAAuC;EACvC,SAAS;AACX;;AAEA;;EAEE,wCAAwC;EACxC,SAAS;AACX;;AAEA,2BAA2B;;AAE3B;EACE,4CAA4C;AAC9C;;AAEA;EACE,oDAAoD;AACtD;;AAEA;EACE,iDAAiD;AACnD;;AAEA;EACE,mDAAmD;EACnD,wCAAwC;AAC1C;;AAEA;EACE,oDAAoD;EACpD,2CAA2C;AAC7C;;AAEA,2CAA2C;;AAE3C;;EAEE,4CAA4C;AAC9C;;AAEA;;EAEE,4CAA4C;EAC5C,sDAAsD;AACxD;;AAEA;;EAEE,iDAAiD;AACnD;;AAEA;;EAEE,uCAAuC;EACvC,mDAAmD;AACrD;;AAEA;;EAEE,oDAAoD;AACtD;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,+BAA+B;EAC/B,6BAA6B;EAC7B,4BAA4B;EAC5B,6BAA6B;EAC7B,gCAAgC;EAChC,0BAAkB;EAAlB,uBAAkB;EAAlB,kBAAkB;EAClB,8BAA8B;EAC9B,mBAAmB;EACnB,+BAA+B;EAC/B,mBAAmB;EACnB,mBAAmB;EACnB,eAAe;EACf,yBAAyB;EACzB,qEAAqE;AACvE;;AAEA;EACE,oBAAoB;EACpB,mBAAmB;AACrB;;AAEA;EACE,8BAA8B;EAC9B,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,mBAAmB;EACnB,6BAA6B;AAC/B;;AAEA;EACE,kCAAkC;EAClC,WAAW;EACX,eAAe;AACjB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,wDAAwD;EACxD,aAAa;AACf;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,oCAAoC;EACpC,WAAW;EACX,aAAa;EACb,eAAe;AACjB;;AAEA;EACE,2BAA2B;EAC3B,0BAA0B;EAC1B,eAAe;AACjB;;AAEA;EACE,oCAAoC;EACpC,mCAAmC;AACrC;;AAEA;EACE,wDAAwD;EACxD,aAAa;AACf;;AAEA;EACE,kCAAkC;EAClC,qCAAqC;AACvC;;AAEA;EACE,qCAAqC;EACrC,sCAAsC;AACxC;;AAEA;EACE,mCAAmC;EACnC,oCAAoC;AACtC;;AAEA;EACE,kCAAkC;EAClC,kCAAkC;AACpC;;AAEA;EACE,sDAAsD;EACtD,aAAa;AACf;;AAEA;EACE,kCAAkC;EAClC,iCAAiC;AACnC;;AAEA;;EAEE,4BAA4B;AAC9B;;AAEA;EACE,mCAAmC;EACnC,oCAAoC;AACtC;;AAEA;EACE,kCAAkC;EAClC,sCAAsC;EACtC,WAAW;AACb;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;;EAEE,wDAAwD;EACxD,aAAa;AACf;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,oCAAoC;EACpC,WAAW;AACb;;AAEA;EACE,uDAAuD;AACzD;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,qDAAqD;AACvD;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,sCAAsC;AACxC;;AAEA;;;;EAIE,aAAa;AACf;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,aAAa;EACb,+BAA+B;EAC/B,0DAA0D;EAC1D,kBAAkB;EAClB,mBAAmB;EACnB,wBAAwB;EACxB,YAAY;EACZ,UAAU;AACZ;;AAEA;;EAEE,yCAAyC;AAC3C;;AAEA;EACE,oCAAoC;EACpC,mCAAmC;AACrC;;AAEA;EACE,wDAAwD;EACxD,wBAAwB;AAC1B;;AAEA;EACE,qCAAqC;EACrC,oCAAoC;EACpC,oBAAoB;AACtB;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;;EAEE,sDAAsD;AACxD;;AAEA;EACE,aAAa;EACb,UAAU;EACV,mBAAmB;EACnB,eAAe;AACjB;;AAEA;EACE,+BAA+B;EAC/B,sDAAsD;AACxD;;AAEA;EACE,oDAAoD;AACtD;;AAEA;EACE,YAAY;EACZ,aAAa;EACb,aAAa;EACb,WAAW;EACX,cAAc;EACd,SAAS;EACT,sBAAsB;EACtB,yBAAyB;EACzB,4BAA4B;EAC5B,+BAA+B;EAC/B,+BAA+B;EAC/B,2BAA2B;AAC7B;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,wBAAwB;EACxB,yBAAyB;EACzB,2BAA2B;EAC3B,+BAA+B;EAC/B,eAAe;EACf,mBAAmB;AACrB;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;;EAEE,uDAAuD;AACzD;;AAEA;EACE,SAAS;EACT,UAAU;EACV,YAAY;AACd;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,kBAAkB;EAClB,YAAY;AACd;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,oBAAoB;EACpB,sBAAsB;EACtB,2CAA2C;EAC3C,uBAAuB;EACvB,YAAY;EACZ,uBAAuB;EACvB,2DAA2D;AAC7D;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,2BAA2B;EAC3B,2CAAmC;UAAnC,mCAAmC;AACrC;;AAEA;EACE,YAAY;EACZ,gBAAgB;EAChB,kBAAkB;AACpB;;AAEA;EACE,6BAA6B;EAC7B,gCAAgC;EAChC,sBAAsB;EACtB,eAAe;EACf,aAAa;AACf;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;;EAEE,aAAa;EACb,wDAAwD;AAC1D;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,0DAA0D;AAC5D;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE;IACE,UAAU;EACZ;;EAEA;IACE,2BAA2B;EAC7B;AACF;;AAEA;EACE,YAAY;EACZ,SAAS;AACX;;AAEA;EACE,UAAU;EACV,kCAAkC;AACpC;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,WAAW;EACX,kBAAkB;AACpB;;AAEA;EACE,4BAA4B;EAC5B,+BAA+B;AACjC;;AAEA;EACE,4DAA4D;AAC9D;;AAEA;EACE,qDAAqD;AACvD;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;;EAEE,wBAAwB;EACxB,2BAA2B;AAC7B;;AAEA;EACE,aAAa;EACb,8BAA8B;EAC9B,mBAAmB;EACnB,6BAA6B;EAC7B,4BAA4B;EAC5B,kCAAkC;AACpC;;AAEA;EACE,0BAA0B;EAC1B,+BAA+B;AACjC;;AAEA;EACE,aAAa;EACb,yBAAyB;EACzB,2BAA2B;EAC3B,6BAA6B;EAC7B,8BAA8B;EAC9B,0DAA0D;AAC5D;;AAEA;EACE,8BAA8B;EAC9B,gCAAgC;EAChC,2BAA2B;EAC3B,sBAAsB;AACxB;;AAEA;EACE,aAAa;EACb,qEAAqE;AACvE;;AAEA;;EAEE,gCAAgC;EAChC,mCAAmC;EACnC,8BAA8B;EAC9B,6BAA6B;AAC/B;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,WAAW;EACX,8BAA8B;EAC9B,gCAAgC;EAChC,mCAAmC;AACrC;;AAEA;;EAEE,2CAA2C;EAC3C,eAAe;AACjB;;AAEA;;EAEE,0CAA0C;AAC5C;;AAEA;;EAEE,wCAAwC;EACxC,eAAe;AACjB;;AAEA;EACE,4CAA4C;AAC9C;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;EACxC,4BAA4B;AAC9B;;AAEA;;EAEE,4BAA4B;AAC9B;;AAEA;;EAEE,oBAAoB;EACpB,eAAe;AACjB;;AAEA;EACE,gBAAgB;EAChB,aAAa;EACb,sBAAsB;AACxB;;AAEA;EACE,+BAA+B;EAC/B,WAAW;EACX,aAAa;EACb,gBAAgB;AAClB;;AAEA;;EAEE,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;AACzB;;AAEA;;EAEE,kBAAkB;AACpB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,2BAAmB;EAAnB,wBAAmB;EAAnB,mBAAmB;EACnB,+BAA+B;AACjC;;AAEA;EACE,WAAW;EACX,8BAA8B;EAC9B,kBAAkB;EAClB,qBAAqB;EACrB,kCAAkC;EAClC,kBAAkB;EAClB,qEAAqE;AACvE;;AAEA;EACE,WAAW;EACX,aAAa;EACb,mBAAmB;EACnB,gBAAgB;EAChB,mBAAmB;AACrB;;AAEA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;AACzB;;AAEA;EACE,yBAAyB;EACzB,6BAA6B;EAC7B,4BAA4B;AAC9B;;AAEA;EACE,wBAAwB;EACxB,6BAA6B;EAC7B,8BAA8B;AAChC;;AAEA;EACE,8BAA8B;EAC9B,+BAA+B;AACjC;;AAEA;EACE,4BAA4B;EAC5B,6BAA6B;AAC/B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,4BAA4B;EAC5B,kBAAkB;AACpB;;AAEA;EACE,wCAAwC;EACxC,wDAAwD;AAC1D;;AAEA;;EAEE,kDAAkD;EAClD,6BAA6B;EAC7B,gEAAwD;UAAxD,wDAAwD;EACxD,iCAAyB;UAAzB,yBAAyB;AAC3B;;AAEA;EACE,oCAAoC;EACpC,2BAA2B;EAC3B,oBAAoB;AACtB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4CAA4C;AAC9C;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,8BAA8B;EAC9B,+BAA+B;EAC/B,WAAW;EACX;;;oEAGkE;EAClE,6CAA6C;EAC7C,qCAAqC;EACrC,uFAAuF;EACvF,0FAA0F;EAC1F,sBAAsB;AACxB;;AAEA;EACE,yCAAyC;EACzC;;;kEAGgE;EAChE,6CAA6C;EAC7C,qCAAqC;EACrC,uFAAuF;EACvF,0FAA0F;EAC1F,sBAAsB;AACxB;;AAEA;EACE,iDAAyC;UAAzC,yCAAyC;EACzC,qCAA6B;UAA7B,6BAA6B;AAC/B;;AAEA;EACE,gGAAwF;UAAxF,wFAAwF;AAC1F;;AAEA;EACE,+FAAuF;UAAvF,uFAAuF;AACzF;;AAEA;EACE;IACE,UAAU;IACV,iBAAiB;EACnB;;EAEA;IACE,UAAU;IACV,6BAA6B;EAC/B;AACF;;AAVA;EACE;IACE,UAAU;IACV,iBAAiB;EACnB;;EAEA;IACE,UAAU;IACV,6BAA6B;EAC/B;AACF;;AAEA;EACE;IACE,UAAU;IACV,iBAAiB;EACnB;;EAEA;IACE,UAAU;IACV,6BAA6B;EAC/B;AACF;;AAVA;EACE;IACE,UAAU;IACV,iBAAiB;EACnB;;EAEA;IACE,UAAU;IACV,6BAA6B;EAC/B;AACF;;AAEA;EACE,wGAAgG;UAAhG,gGAAgG;AAClG;;AAEA;EACE,uGAA+F;UAA/F,+FAA+F;AACjG;;AAEA;EACE;IACE,UAAU;IACV,6BAA6B;EAC/B;;EAEA;IACE,UAAU;IACV,2BAA2B;EAC7B;AACF;;AAVA;EACE;IACE,UAAU;IACV,6BAA6B;EAC/B;;EAEA;IACE,UAAU;IACV,2BAA2B;EAC7B;AACF;;AAEA;EACE;IACE,UAAU;IACV,6BAA6B;EAC/B;;EAEA;IACE,UAAU;IACV,2BAA2B;EAC7B;AACF;;AAVA;EACE;IACE,UAAU;IACV,6BAA6B;EAC/B;;EAEA;IACE,UAAU;IACV,2BAA2B;EAC7B;AACF;;AAEA;EACE,iCAAiC;EACjC;;;gEAG8D;EAC9D,6CAA6C;EAC7C,qCAAqC;EACrC,uFAAuF;AACzF;;AAEA;EACE;;;oEAGkE;EAClE,6CAA6C;EAC7C,qCAAqC;EACrC,uFAAuF;AACzF;;AAEA;EACE,sBAAsB;EACtB,aAAa;EACb,gBAAgB;EAChB,4EAA4E;AAC9E;;AAEA;EACE,mBAAmB;EACnB,aAAa;EACb,gBAAgB;EAChB,8EAA8E;AAChF;;AAEA;EACE,aAAa;EACb,gBAAgB;EAChB,8EAA8E;AAChF;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,uBAAuB;AACzB;;AAEA;;EAEE,mBAAmB;AACrB;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,kBAAkB;EAClB,WAAW;AACb;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,8BAA8B;EAC9B,gDAAgD;EAChD,4BAA4B;EAC5B,eAAe;AACjB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,4BAA4B;EAC5B,2CAA2C;EAC3C,8BAA8B;EAC9B,iCAAiC;EACjC,4BAA4B;EAC5B,eAAe;AACjB;;AAEA;;EAEE,2CAA2C;AAC7C;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,kBAAkB;EAClB,aAAa;EACb,yBAAyB;EACzB,4BAA4B;EAC5B,WAAW;AACb;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,sBAAsB;EACtB,wBAAwB;EACxB,8BAA8B;AAChC;;AAEA;EACE,kBAAkB;EAClB,oBAAoB;EACpB,sBAAsB;EACtB,WAAW;AACb;;AAEA;EACE,kBAAkB;EAClB,aAAa;EACb,yBAAyB;EACzB,4BAA4B;EAC5B,WAAW;AACb;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,2CAA2C;EAC3C,sBAAsB;EACtB,mBAAmB;EACnB,8BAA8B;EAC9B,+BAA+B;EAC/B,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,2BAA2B;EAC3B,wBAAwB;AAC1B;;AAEA;EACE,2BAA2B;EAC3B,yBAAyB;AAC3B;;AAEA;EACE,sCAAsC;EACtC,WAAW;AACb;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,uBAAuB;EACvB,uBAAuB;AACzB;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,uBAAuB;EACvB,uBAAuB;EACvB,WAAW;AACb;;AAEA;EACE,aAAa;EACb,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,sBAAmB;KAAnB,mBAAmB;AACrB;;AAEA;EACE,kBAAkB;EAClB,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;EAClB,4BAA4B;EAC5B,gBAAgB;AAClB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,aAAa;EACb,kBAAkB;EAClB,uBAAuB;AACzB;;AAEA;EACE,aAAa;EACb,uBAAuB;AACzB;;AAEA;EACE,4BAA4B;AAC9B;AACA;EACE,6BAA6B;AAC/B;AACA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,uBAAuB;EACvB,kBAAkB;AACpB;AACA;EACE,4BAA4B;EAC5B,WAAW;EACX,sBAAsB;AACxB;AACA;EACE,2BAA2B;EAC3B,8BAA8B;EAC9B,8BAA8B;EAC9B,6BAA6B;AAC/B;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,mBAAmB;EACnB,YAAY;AACd;AACA;EACE,aAAa;EACb,uBAAuB;EACvB,mBAAmB;EACnB,cAAc;AAChB;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,8BAA8B;AAChC;AACA;EACE,4BAA4B;EAC5B,2BAA2B;EAC3B,cAAc;AAChB;AACA;EACE,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;EACvB,4BAA4B;EAC5B,6BAA6B;AAC/B;AACA;EACE,iBAAiB;AACnB;;AAEA;EACE,iCAAiC;EACjC,mBAAmB;AACrB;AACA;EACE,mCAAmC;EACnC,qBAAqB;AACvB;AACA;EACE,mCAAmC;EACnC,qBAAqB;AACvB;AACA;EACE,mCAAmC;EACnC,qBAAqB;AACvB;AACA;EACE,mCAAmC;EACnC,qBAAqB;AACvB;AACA;EACE,uFAA+E;UAA/E,+EAA+E;AACjF;;AAEA;EACE;IACE,UAAU;EACZ;EACA;IACE,UAAU;EACZ;AACF;;AAEA;EACE,aAAa;EACb,sBAAsB;AACxB;;AAEA;EACE,0BAAkB;EAAlB,uBAAkB;EAAlB,kBAAkB;EAClB,kBAAkB;AACpB;;AAEA;EACE,YAAY;EACZ,WAAW;EACX,MAAM;EACN,kBAAkB;EAClB,UAAU;EACV,YAAY;EACZ,UAAU;EACV,eAAe;AACjB;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,uBAAuB;EACvB,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;AACzB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,8BAA8B;EAC9B,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE;IACE,UAAU;IACV,2BAA2B;EAC7B;EACA;IACE,UAAU;IACV,0BAA0B;EAC5B;AACF;;AATA;EACE;IACE,UAAU;IACV,2BAA2B;EAC7B;EACA;IACE,UAAU;IACV,0BAA0B;EAC5B;AACF;;AAEA;EACE;IACE,UAAU;IACV,0BAA0B;EAC5B;EACA;IACE,UAAU;IACV,2BAA2B;EAC7B;AACF;;AATA;EACE;IACE,UAAU;IACV,0BAA0B;EAC5B;EACA;IACE,UAAU;IACV,2BAA2B;EAC7B;AACF;;AAEA;EACE,0BAA0B;EAC1B,MAAM;EACN,OAAO;EACP,YAAY;EACZ,WAAW;EACX,sBAAsB;EACtB,6BAA6B;EAC7B,8BAA8B;EAC9B,cAAc;EACd,aAAa;EACb,sBAAsB;AACxB;;AAEA;EACE,wEAAgE;UAAhE,gEAAgE;AAClE;;AAEA;EACE,4EAAoE;UAApE,oEAAoE;AACtE;;AAEA;EACE,aAAa;EACb,2BAA2B;EAC3B,6BAA6B;EAC7B,gCAAgC;EAChC,+BAA+B;AACjC;;AAEA;EACE,yBAAyB;EACzB,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE,2CAA2C;AAC7C;;AAEA,WAAW;;AAEX;EACE,aAAa;EACb,kBAAkB;EAClB,gBAAgB;EAChB,YAAY;AACd;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,YAAY;EACZ,YAAY;EACZ,gBAAgB;EAChB,wBAAwB;AAC1B;;AAEA;;EAEE,eAAe;EACf,qCAAqC;AACvC;;AAEA;;EAEE,oCAAoC;AACtC;;AAEA;EACE,0DAAgF;EAChF,aAAa;AACf;;AAEA;EACE,kBAAkB;EAClB,YAAY;EACZ,UAAU;EACV,kBAAkB;EAClB,wBAAwB;EACxB,wCAAwC;AAC1C;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,2BAA2B;EAC3B,8BAA8B;AAChC;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE,aAAa;EACb,cAAc;EACd,gBAAgB;EAChB,4BAA4B;AAC9B;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,aAAa;EACb,YAAY;EACZ,mBAAmB;EACnB,mBAAmB;AACrB;;AAEA;EACE,oBAAY;EAAZ,YAAY;AACd;;AAEA;EACE,wBAAgB;EAAhB,gBAAgB;EAChB,UAAU;EACV,UAAU;EACV,yBAAyB;EACzB,cAAc;AAChB;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,YAAY;EACZ,gBAAgB;EAChB,mBAAmB;AACrB;;AAEA;EACE,oBAAoB;EACpB,sBAAsB;EACtB,8BAAsB;EAAtB,2BAAsB;EAAtB,sBAAsB;EACtB,cAAc;EACd,4BAA4B;AAC9B;;AAEA;EACE,aAAa;EACb,YAAY;EACZ,cAAc;EACd,sBAAsB;EACtB,wBAAwB;EACxB,qEAAqE;EACrE,0CAA0C;AAC5C;;AAEA;EACE,oCAAoC;AACtC;;AAEA;;EAEE,qCAAmE;EACnE,qEAAqE;AACvE;;AAEA;;EAEE,gDAA6E;AAC/E;;AAEA;;EAEE,6CAA6C;AAC/C;;AAEA;;EAEE,aAAa;EACb,wDAA8E;AAChF;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,WAAW;EACX,gBAAgB;AAClB;;AAEA;EACE,8BAA8B;EAC9B,eAAe;AACjB;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,qDAAqD;AACvD;;AAEA;EACE,wBAAwB;EACxB,8BAA8B;AAChC;;AAEA;EACE,kBAAkB;EAClB,sBAAsB;EACtB,8BAA8B;EAC9B,+BAA+B;AACjC;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,gBAAgB;EAChB,+BAA+B;AACjC;;AAEA;EACE,UAAU;EACV,UAAU;EACV,yBAAyB;EACzB,cAAc;AAChB;;AAEA;EACE,0BAA0B;EAC1B,oCAAoC;AACtC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,iBAAiB;AACnB;;AAEA;;GAEG;;AAEH;EACE,0BAA0B;EAC1B,oBAAoB;AACtB;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,YAAY;EACZ,gBAAgB;EAChB,aAAa;EACb,mBAAmB;EACnB,UAAU;EACV,2BAA2B;EAC3B,4BAA4B;AAC9B;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,8BAA8B;AAChC;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,oBAAY;EAAZ,YAAY;AACd;;AAEA;EACE,wBAAgB;EAAhB,gBAAgB;AAClB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,YAAY;EACZ,YAAY;EACZ,sBAAsB;EACtB,gBAAgB;AAClB;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;EAClB,QAAQ;EACR,uBAAuB;EACvB,iBAAiB;EACjB,YAAY;AACd;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,eAAe;AACjB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,kBAAkB;EAClB,YAAY;EACZ,sCAAsC;EACtC,WAAW;AACb;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,wBAAwB;AAC1B;;AAEA;EACE,wBAAgB;EAAhB,gBAAgB;EAChB,UAAU;AACZ;;AAEA;EACE,OAAO;EACP,mBAAmB;EACnB,2EAA2E;EAC3E,uBAAuB;EACvB;;;;;;;UAOQ;KAPR;;;;;;;UAOQ;AACV;;AAEA;EACE,QAAQ;EACR,mBAAmB;EACnB,0EAA0E;EAC1E,sBAAsB;EACtB;;;;;;;UAOQ;KAPR;;;;;;;UAOQ;AACV;;AAEA;EACE,eAAe;AACjB;;AAEA,gBAAgB;;AAEhB;EACE,aAAa;EACb,mBAAmB;EACnB,WAAW;EACX,sBAAsB;AACxB;;AAEA;EACE,yBAAyB;EACzB,2BAA2B;EAC3B,gBAAgB;AAClB;;AAEA;EACE,iCAAiC;EACjC,yBAAyB;EACzB,iBAAiB;AACnB;;AAEA;EACE,uBAAuB;EACvB,kBAAkB;AACpB;;AAEA;AACA;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,uBAAuB;EACvB,uBAAuB;EACvB,gBAAgB;AAClB;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,gBAAgB;EAChB,uBAAuB;AACzB;;AAEA;EACE,SAAS;AACX;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,uBAAuB;EACvB,WAAW;EACX,gBAAgB;AAClB;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,WAAW;EACX,oBAAoB;EACpB,mBAAmB;EACnB,uBAAuB;EACvB,uBAAuB;EACvB,wBAAwB;EACxB,kBAAkB;EAClB,4BAA4B;EAC5B,wBAAwB;AAC1B;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,cAAc;AAChB;;AAEA;;;;;;;;;;;;GAYG;;AAEH,aAAa;;AAEb,mBAAmB;;AAEnB;EACE,wBAAwB;EACxB,yBAAyB;EACzB,4BAA4B;AAC9B;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,mBAAmB;EACnB,8BAA8B;AAChC;;AAEA;EACE,uBAAuB;EACvB,+BAA+B;AACjC;;AAEA;EACE,aAAa;EACb,YAAY;EACZ,mBAAmB;AACrB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,aAAa;EACb,6BAA6B;EAC7B,+BAA+B;AACjC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,iBAAiB;EACjB,gBAAgB;AAClB;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,yBAAyB;EACzB,iBAAiB;EACjB,+BAA+B;AACjC;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,sBAAsB;EACtB,aAAa;EACb,mBAAmB;EACnB,eAAe;EACf,wBAAwB;EACxB,+BAA+B;EAC/B,8BAA8B;EAC9B,+BAA+B;EAC/B,2BAA2B;AAC7B;;AAEA;EACE,oBAAoB;AACtB;;AAEA;;EAEE,aAAa;AACf;;AAEA;;EAEE,wDAAwD;EACxD,aAAa;AACf;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;;EAEE,yCAAyC;EACzC,sDAAsD;EACtD,aAAa;AACf;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;EACxC,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;;AAEA;;EAEE,0CAA0C;AAC5C;;AAEA;EACE,qEAAqE;AACvE;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;;;EAGE;;AAEF,+BAA+B;;AAE/B;;;4CAG4C;;AAE5C,0DAA0D;;AAE1D;qEACqE;;AAErE,yDAAyD;;AAEzD;2EAC2E;AAC3E;EACE,cAAc;EACd,gBAAgB;EAChB,cAAc;EACd,yBAAiB;KAAjB,sBAAiB;MAAjB,qBAAiB;UAAjB,iBAAiB;AACnB;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,gBAAgB;EAChB,+BAA+B;EAC/B,8BAA8B;EAC9B,uBAAuB;AACzB;;AAEA;EACE,6BAA6B;EAC7B,gCAAgC;EAChC,4BAA4B;AAC9B;;AAEA;EACE,8BAA8B;EAC9B,iCAAiC;EACjC,8BAA8B;AAChC;;AAEA;;EAEE,qBAAqB;AACvB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;AACvB;;AAEA,UAAU;;AAEV;EACE,aAAa;AACf;;AAEA;EACE,aAAa;EACb,YAAY;EACZ,mBAAmB;EACnB,mBAAmB;EACnB,sBAAsB;EACtB,+BAA+B;EAC/B,qBAAqB;EACrB,+BAA+B;EAC/B,8BAA8B;EAC9B,wBAAwB;EACxB,qEAAqE;AACvE;;AAEA;EACE,4BAA4B;EAC5B,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE,4BAA4B;EAC5B,gCAAgC;EAChC,mCAAmC;AACrC;;AAEA;EACE,YAAY;EACZ,2BAA2B;EAC3B,8BAA8B;AAChC;;AAEA;EACE,oCAAoC;EACpC,mCAAmC;EACnC,YAAY;AACd;;AAEA;EACE,wBAAwB;EACxB,4BAA4B;EAC5B,sDAAsD;AACxD;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,0BAA0B;EAC1B,oDAAoD;AACtD;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,qCAAqC;EACrC,sCAAsC;EACtC,oBAAoB;AACtB;;AAEA;EACE,8BAA8B;AAChC;;AAEA;;EAEE,wBAAwB;EACxB,0BAA0B;AAC5B;;AAEA;EACE,aAAa;EACb,WAAW;EACX,+BAA+B;EAC/B,sCAAsC;EACtC,2BAA2B;EAC3B,iCAAiC;EACjC,mBAAmB;EACnB,UAAU;EACV,YAAY;EACZ,uBAAuB;AACzB;;AAEA;EACE,6BAA6B;AAC/B;;AAFA;EACE,6BAA6B;AAC/B;;AAFA;EACE,6BAA6B;AAC/B;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,6BAA6B;AAC/B;;AAFA;EACE,6BAA6B;AAC/B;;AAFA;EACE,6BAA6B;AAC/B;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,iCAAiC;EACjC,6BAA6B;AAC/B;;AAEA;EACE,aAAa;EACb,qBAAqB;EACrB,6BAA6B;AAC/B;;AAEA;EACE,4BAA4B;EAC5B,qBAAqB;AACvB;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,eAAe;EACf,6BAA6B;EAC7B,mBAAmB;AACrB;;AAEA;EACE,uDAAuD;AACzD;;AAEA;EACE,uDAAuD;EACvD,mBAAmB;AACrB;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,qBAAqB;EACrB,sCAAsC;EACtC,qEAAqE;EACrE,sBAAsB;AACxB;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,2BAA2B;EAC3B,0BAA0B;AAC5B;;AAEA;EACE,6BAA6B;EAC7B,4BAA4B;EAC5B,iCAAiC;AACnC;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,0DAA0D;EAC1D,0BAA0B;AAC5B;;AAEA;EACE,2DAA2D;EAC3D,2BAA2B;AAC7B;;AAEA;EACE,4BAA4B;EAC5B,YAAY;AACd;;AAEA;EACE,qBAAqB;EACrB,YAAY;AACd;;AAEA;EACE,sDAAsD;EACtD,+BAA+B;AACjC;;AAEA;EACE,wDAAwD;EACxD,+BAA+B;AACjC;;AAEA;EACE,6BAA6B;EAC7B,oBAAoB;AACtB;;AAEA;EACE,8BAA8B;EAC9B,oBAAoB;AACtB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,mBAAmB;EACnB,sBAAsB;EACtB,kBAAkB;EAClB,sBAAsB;EACtB,eAAe;EACf,yBAAiB;KAAjB,sBAAiB;MAAjB,qBAAiB;UAAjB,iBAAiB;EACjB,SAAS;EACT,kBAAkB;EAClB,UAAU;EACV,uBAAuB;EACvB,sCAAsC;EACtC,+BAA+B;EAC/B,+BAA+B;EAC/B,qEAAqE;AACvE;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,oBAAoB;EACpB,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,+BAA+B;EAC/B,2BAA2B;AAC7B;;AAEA;EACE,iCAAiC;EACjC,6BAA6B;AAC/B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;;EAEE,UAAU;EACV,sDAAsD;AACxD;;AAEA;EACE,mBAAmB;EACnB,oBAAoB;EACpB,6BAA6B;AAC/B;;AAEA,sBAAsB;;AAEtB;EACE,6BAA6B;AAC/B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;;EAEE,UAAU;EACV,wDAAwD;AAC1D;;AAEA;EACE,mBAAmB;EACnB,oBAAoB;EACpB,8BAA8B;AAChC;;AAEA;EACE,aAAa;EACb,YAAY;EACZ,sBAAsB;EACtB,kBAAkB;EAClB,YAAY;EACZ,UAAU;AACZ;;AAEA;EACE,YAAY;EACZ,gBAAgB;EAChB,YAAY;AACd;;AAEA;EACE,SAAS;EACT,UAAU;EACV,aAAa;EACb,qBAAqB;EACrB,sBAAsB;AACxB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,8BAA8B;EAC9B,+BAA+B;AACjC;;AAEA;EACE,WAAW;AACb;;AAEA;;EAEE,uBAAuB;AACzB;;AAEA,UAAU;;AAEV;EACE,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE,2BAA2B;EAC3B,8BAA8B;AAChC;;AAEA;EACE,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA,2BAA2B;;AAE3B;EACE,eAAe;AACjB;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;;EAEE,yCAAyC;AAC3C;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,qCAAmE;AACrE;;AAEA;EACE,qCAAkE;AACpE;;AAEA;;EAEE,yCAAkD;AACpD;;AAEA;EACE,kCAAkC;AACpC;;AAEA,6BAA6B;;AAE7B;EACE,eAAe;AACjB;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;;EAEE,yCAAyC;AAC3C;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,mCAAmC;AACrC;;AAEA,gCAAgC;;AAEhC;;EAEE,aAAa;AACf;;AAEA,6BAA6B;;AAE7B;EACE,0BAA0B;EAC1B,oBAAoB;AACtB;;AAEA,8BAA8B;;AAE9B;EACE,yCAAyC;AAC3C;;AAEA;EACE,oBAAY;EAAZ,YAAY;EACZ,4BAA4B;AAC9B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,2BAA2B;EAC3B,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,WAAW;EACX,sBAAsB;AACxB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,mCAAmC;EACnC,6BAA6B;EAC7B,8BAA8B;EAC9B,+BAA+B;AACjC;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,gBAAgB;EAChB,6EAA6E;EAC7E,+BAA+B;EAC/B,WAAW;EACX,+BAA+B;EAC/B,sBAAsB;AACxB;;AAEA;EACE,0BAA0B;EAC1B,0CAAuE;AACzE;;AAEA;EACE,4BAA4B;EAC5B,0CAAyE;AAC3E;;AAEA;EACE,4BAA4B;EAC5B,0CAAyE;AAC3E;;AAEA;EACE,4BAA4B;EAC5B,0CAAyE;AAC3E;;AAEA;EACE,8BAA8B;EAC9B,6BAA6B;AAC/B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,+BAA+B;AACjC;;AAEA;;EAEE,qCAAqC;AACvC;;AAEA;;EAEE,uCAAuC;AACzC;;AAEA;;EAEE,uCAAuC;AACzC;;AAEA;;EAEE,uCAAuC;AACzC;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,4BAA4B;AAC9B;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,mBAAmB;EACnB,0BAAkB;EAAlB,uBAAkB;EAAlB,kBAAkB;EAClB,2BAA2B;AAC7B;;AAEA;EACE,2BAA2B;AAC7B;AACA;EACE,8BAA8B;AAChC;AACA;EACE,+BAA+B;EAC/B,aAAa;EACb,mBAAmB;AACrB;AACA;EACE,aAAa;EACb,mBAAmB;EACnB,mBAAmB;EACnB,0BAAkB;EAAlB,uBAAkB;EAAlB,kBAAkB;EAClB,2BAA2B;AAC7B;AACA;EACE,0BAA0B;EAC1B,aAAa;EACb,mBAAmB;EACnB,mBAAmB;EACnB,0BAAkB;EAAlB,uBAAkB;EAAlB,kBAAkB;EAClB,2BAA2B;AAC7B;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,aAAa;EACb,WAAW;EACX,mBAAmB;EACnB,mBAAmB;EACnB,sBAAsB;EACtB,+BAA+B;EAC/B,qBAAqB;EACrB,+BAA+B;EAC/B,wBAAwB;EACxB,qEAAqE;AACvE;;AAEA;EACE,wBAAwB;EACxB,8BAA8B;AAChC;;AAEA;EACE,YAAY;EACZ,8BAA8B;AAChC;;AAEA;EACE,qCAAqC;EACrC,YAAY;AACd;;AAEA;EACE,wBAAwB;EACxB,4BAA4B;EAC5B,sDAAsD;AACxD;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qCAAqC;EACrC,oCAAoC;EACpC,oBAAoB;AACtB;;AAEA;EACE,8BAA8B;AAChC;;AAEA;;EAEE,wBAAwB;EACxB,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;EAC1B,oDAAoD;AACtD;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,aAAa;EACb,WAAW;EACX,+BAA+B;EAC/B,sCAAsC;EACtC,2BAA2B;EAC3B,iCAAiC;EACjC,mBAAmB;EACnB,UAAU;EACV,YAAY;EACZ,uBAAuB;AACzB;;AAEA;EACE,iCAAiC;EACjC,6BAA6B;AAC/B;;AAEA;EACE,6BAA6B;AAC/B;;AAFA;EACE,6BAA6B;AAC/B;;AAFA;EACE,6BAA6B;AAC/B;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,6BAA6B;AAC/B;;AAFA;EACE,6BAA6B;AAC/B;;AAFA;EACE,6BAA6B;AAC/B;;AAEA;EACE,4BAA4B;EAC5B,iCAAiC;AACnC;;AAEA;EACE,8BAA8B;EAC9B,iCAAiC;AACnC;;AAEA;;EAEE,wBAAwB;EACxB,qBAAqB;EACrB,gBAAgB;EAChB,SAAS;AACX;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;EACvB,+BAA+B;AACjC;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;EACvB,+BAA+B;AACjC;;AAEA;EACE;IACE,SAAS;IACT,UAAU;EACZ;EACA;IACE,UAAU;EACZ;AACF;;AARA;EACE;IACE,SAAS;IACT,UAAU;EACZ;EACA;IACE,UAAU;EACZ;AACF;;AAEA;EACE;IACE,UAAU;IACV,UAAU;EACZ;EACA;IACE,UAAU;IACV,UAAU;EACZ;AACF;;AATA;EACE;IACE,UAAU;IACV,UAAU;EACZ;EACA;IACE,UAAU;IACV,UAAU;EACZ;AACF;;AAEA;EACE,0BAA0B;EAC1B,+BAA+B;EAC/B,2BAA2B;EAC3B,8BAA8B;EAC9B,6BAA6B;EAC7B,cAAc;EACd,sBAAsB;EACtB,aAAa;EACb,YAAY;EACZ,MAAM;EACN,QAAQ;EACR,OAAO;EACP,SAAS;EACT,2BAAmB;EAAnB,wBAAmB;EAAnB,mBAAmB;AACrB;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,2FAAmF;UAAnF,mFAAmF;AACrF;;AAEA;EACE,oFAA4E;UAA5E,4EAA4E;AAC9E;;AAEA;EACE,aAAa;EACb,2BAA2B;EAC3B,6BAA6B;EAC7B,gCAAgC;EAChC,+BAA+B;AACjC;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,8BAA8B;EAC9B,iCAAiC;EACjC,yBAAyB;EACzB,kBAAkB;EAClB,SAAS;AACX;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,gCAAgC;AAClC;;AAEA,eAAe;;AAEf;EACE,aAAa;AACf;;AAEA;EACE,YAAY;EACZ,uBAAuB;AACzB;;AAEA;EACE,sBAAsB;EACtB,YAAY;EACZ,uBAAuB;AACzB;;AAEA;EACE,0BAAkB;EAAlB,uBAAkB;EAAlB,kBAAkB;AACpB;;AAEA;EACE,YAAY;EACZ,gBAAgB;EAChB,kBAAkB;EAClB,6BAA6B;AAC/B;;AAEA;EACE,sBAAsB;EACtB,aAAa;EACb,mBAAmB;EACnB,eAAe;AACjB;;AAEA;EACE,wBAAwB;EACxB,+BAA+B;EAC/B,8BAA8B;EAC9B,+BAA+B;EAC/B,2BAA2B;AAC7B;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;;EAEE,mCAAmC;AACrC;;AAEA;EACE,mCAAmC;EACnC,sCAAsC;EACtC,4BAA4B;EAC5B,4BAA4B;EAC5B,+BAA+B;EAC/B,kCAAkC;EAClC,wDAAwD;AAC1D;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,6BAA6B;EAC7B,gCAAgC;EAChC,kBAAkB;EAClB,aAAa;AACf;;AAEA;EACE,YAAY;EACZ,kBAAkB;EAClB,eAAe;AACjB;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,aAAa;EACb,YAAY;EACZ,gBAAgB;AAClB;;AAEA;EACE,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,wCAAwC;AAC1C;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,sBAAsB;EACtB,8BAA8B;AAChC;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,WAAW;EACX,sBAAsB;EACtB,+BAA+B;EAC/B,gCAAgC;AAClC;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,yDAAyD;AAC3D;;AAEA;EACE,iBAAiB;AACnB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,aAAa;EACb,2BAA2B;EAC3B,mBAAmB;EACnB,6BAA6B;AAC/B;;AAEA;EACE,6BAA6B;EAC7B,cAAc;AAChB;;AAEA;EACE,aAAa;EACb,2BAA2B;EAC3B,mBAAmB;AACrB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,uBAAuB;EACvB,mBAAmB;EACnB,wBAAwB;EACxB,6BAA6B;EAC7B,4BAA4B;EAC5B,aAAa;AACf;;AAEA;EACE,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;;AAEA;EACE,aAAa;EACb,yBAAyB;EACzB,4BAA4B;AAC9B;;AAEA,eAAe;;AAEf;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,eAAe;AACjB;;AAEA;EACE,4BAA4B;EAC5B,6BAA6B;AAC/B;;AAEA;EACE,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,8BAA8B;EAC9B,+BAA+B;AACjC;;AAEA;EACE,uBAAuB;EACvB,4BAA4B;EAC5B,4BAA4B;EAC5B,6BAA6B;AAC/B;;AAEA;EACE,kBAAkB;AACpB;AACA;EACE,aAAa;AACf;;AAEA;EACE;IACE,SAAS;IACT,gBAAgB;EAClB;EACA;IACE,0BAA0B;IAC1B,UAAU;EACZ;EACA;IACE,2BAA2B;EAC7B;EACA;IACE,yBAAyB;EAC3B;AACF;;AAEA;EACE,UAAU;EACV,sCAAsC;EACtC,aAAa;EACb,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;EACvB,6BAA6B;EAC7B,iCAAiC;EACjC,yBAAyB;EACzB,kCAAkC;EAClC,iCAAiC;EACjC,6BAA6B;EAC7B,gCAAgC;EAChC,mBAAmB;EACnB,qBAAqB;EACrB,sBAAsB;EACtB,oCAAoC;EACpC,eAAe;AACjB;;AAEA;EACE;IACE,6BAA6B;EAC/B;EACA;IACE,4BAA4B;EAC9B;AACF;;AAPA;EACE;IACE,6BAA6B;EAC/B;EACA;IACE,4BAA4B;EAC9B;AACF;;AAEA;EACE,+BAA+B;EAC/B,gCAAwB;UAAxB,wBAAwB;EACxB,qCAA6B;UAA7B,6BAA6B;EAC7B,2CAAmC;UAAnC,mCAAmC;EACnC,+BAAuB;UAAvB,uBAAuB;EACvB,yCAAiC;UAAjC,iCAAiC;EACjC,qCAAqC;EACrC;;;;;GAKC;EACD,6BAA6B;AAC/B;;AAEA;EACE,aAAa;EACb,YAAY;EACZ,cAAc;EACd,mBAAmB;AACrB;;AAEA;EACE,aAAa;EACb,2BAA2B;AAC7B;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,SAAS;AACX;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,aAAa;EACb,YAAY;EACZ,wBAAwB;AAC1B;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,0BAA0B;AAC5B;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,aAAa;EACb,cAAc;EACd,WAAW;EACX,YAAY;AACd;;AAEA;EACE,WAAW;EACX,YAAY;AACd;;AAEA;EACE,WAAW;EACX,YAAY;AACd;;AAEA;EACE,WAAW;EACX,YAAY;AACd;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,+BAA+B;EAC/B,kBAAkB;EAClB,YAAY;EACZ,wBAAwB;EACxB,2BAA2B;AAC7B;;AAEA;EACE,0BAA0B;EAC1B,mBAAmB;AACrB;;AAEA;EACE,kBAAkB;EAClB,oBAAoB;AACtB;;AAEA;EACE;IACE,UAAU;EACZ;EACA;IACE,yBAAyB;EAC3B;EACA;IACE,UAAU;EACZ;AACF;;AAVA;EACE;IACE,UAAU;EACZ;EACA;IACE,yBAAyB;EAC3B;EACA;IACE,UAAU;EACZ;AACF;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;AACzB;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;AACzB;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,sBAAsB;EACtB,qEAAqE;AACvE;;AAEA,UAAU;;AAEV;EACE,aAAa;EACb,yBAAyB;EACzB,sBAAsB;EACtB,qBAAqB;EACrB,iBAAiB;EACjB,6BAA6B;EAC7B,gCAAgC;EAChC,0BAAkB;EAAlB,uBAAkB;EAAlB,kBAAkB;AACpB;;AAEA;EACE,kBAAkB;EAClB,cAAc;EACd,4BAA4B;AAC9B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;EACrB,0BAA0B;AAC5B;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;AACzB;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;AACzB;;AAEA;EACE,UAAU;EACV,kBAAkB;EAClB,YAAY;EACZ,WAAW;EACX,UAAU;EACV,SAAS;EACT,eAAe;AACjB;;AAEA;EACE,4BAA4B;EAC5B,aAAa;EACb,sBAAsB;AACxB;;AAEA;EACE,aAAa;EACb,eAAe;AACjB;;AAEA;EACE,MAAM;EACN,OAAO;EACP,YAAY;EACZ,WAAW;EACX,kBAAkB;EAClB,kBAAkB;EAClB,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,sBAAsB;EACtB,UAAU;EACV,qEAAqE;AACvE;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,qDAAqD;EACrD,0CAA0C;AAC5C;;AAEA;EACE,wCAAwC;EACxC,uDAAuD;AACzD;;AAEA;EACE,qBAAqB;EACrB,0CAA0C;EAC1C,+BAA+B;AACjC;;AAEA;EACE,qBAAqB;EACrB,wCAAwC;EACxC,iCAAiC;AACnC;;AAEA;EACE,UAAU;EACV,wDAAwD;EACxD,kBAAkB;AACpB;;AAEA;EACE,UAAU;EACV,oDAAoD;EACpD,kBAAkB;AACpB;;AAEA;EACE,UAAU;EACV,sDAAsD;AACxD;;AAEA;EACE,UAAU;EACV,sDAAsD;AACxD;;AAEA;EACE,sDAAsD;EACtD,2CAA2C;AAC7C;;AAEA;EACE,oDAAoD;EACpD,2CAA2C;AAC7C;;AAEA;EACE,8CAA8C;AAChD;;AAEA;EACE,4CAA4C;AAC9C;;AAEA;EACE,cAAc;EACd,qEAAqE;AACvE;;AAEA;EACE,WAAW;EACX,aAAa;EACb,kBAAkB;EAClB,0BAA0B;AAC5B;;AAEA;EACE,qBAAqB;EACrB,sBAAsB;AACxB;;AAEA;EACE,uBAAuB;EACvB,wBAAwB;EACxB,8CAA8C;AAChD;;AAEA;EACE,mDAAmD;AACrD;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,mDAAmD;AACrD;;AAEA;EACE,wCAAwC;EACxC,qDAAqD;AACvD;;AAEA;EACE,0CAA0C;EAC1C,iDAAiD;AACnD;;AAEA;EACE,wCAAwC;EACxC,mDAAmD;AACrD;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,qDAAqD;AACvD;;AAEA;EACE,sDAAsD;EACtD,2CAA2C;AAC7C;;AAEA;EACE,oDAAoD;EACpD,2CAA2C;AAC7C;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,2BAA2B;EAC3B,uBAAuB;EACvB,8BAA8B;EAC9B,6BAA6B;EAC7B,YAAY;AACd;;AAEA;;EAEE,wBAAwB;EACxB,2BAA2B;AAC7B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,WAAW;EACX,8BAA8B;EAC9B,kBAAkB;EAClB,qBAAqB;EACrB,kCAAkC;EAClC,kBAAkB;EAClB,qEAAqE;AACvE;;AAEA;EACE,oCAAoC;EACpC,2BAA2B;EAC3B,oBAAoB;AACtB;;AAEA;;EAEE,kDAAkD;EAClD,6BAA6B;EAC7B,gEAAwD;UAAxD,wDAAwD;EACxD,iCAAyB;UAAzB,yBAAyB;AAC3B;;AAEA;EACE,4BAA4B;EAC5B,kBAAkB;AACpB;;AAEA;EACE,wCAAwC;EACxC,wDAAwD;AAC1D;;AAEA;EACE,4DAA4D;AAC9D;;AAEA;EACE,qDAAqD;AACvD;;AAEA;EACE,WAAW;EACX,aAAa;EACb,mBAAmB;EACnB,mBAAmB;EACnB,gBAAgB;AAClB;;AAEA;EACE,yBAAyB;EACzB,6BAA6B;EAC7B,4BAA4B;AAC9B;;AAEA;EACE,gBAAgB;EAChB,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;EACvB,eAAe;EACf,SAAS;EACT,2BAA2B;EAC3B,+BAA+B;AACjC;;AAEA;EACE,wBAAwB;EACxB,6BAA6B;EAC7B,8BAA8B;AAChC;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,aAAa;EACb,yBAAyB;EACzB,2BAA2B;EAC3B,6BAA6B;EAC7B,8BAA8B;EAC9B,0DAA0D;AAC5D;;AAEA;EACE,aAAa;EACb,cAAc;EACd,gBAAgB;EAChB,yBAAiB;KAAjB,sBAAiB;MAAjB,qBAAiB;UAAjB,iBAAiB;EACjB,eAAe;EACf,qBAAqB;EACrB,kBAAkB;EAClB,yBAAyB;AAC3B;;AAEA;;EAEE,uDAAuD;AACzD;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,eAAe;EACf,+BAA+B;EAC/B,kBAAkB;EAClB,+DAA+D;EAC/D,qEAAqE;AACvE;;AAEA;EACE,gEAAgE;EAChE,qEAAqE;AACvE;;AAEA;;EAEE,aAAa;EACb,8GAA8G;AAChH;;AAEA;EACE,uDAAuD;EACvD,qEAAqE;AACvE;;AAEA;EACE,oBAAoB;EACpB,kEAAkE;AACpE;;AAEA,oBAAoB;;AAEpB;EACE,uDAAuD;AACzD;;AAEA;EACE,4DAA4D;AAC9D;;AAEA;;EAEE,aAAa;EACb,mGAAmG;AACrG;;AAEA;EACE,8DAA8D;AAChE;;AAEA;EACE,oBAAoB;EACpB,gEAAgE;AAClE;;AAEA,oBAAoB;;AAEpB;EACE,MAAM;EACN,QAAQ;EACR,SAAS;EACT,OAAO;EACP,UAAU;EACV,kBAAkB;EAClB,oBAAoB;EACpB,+BAA+B;AACjC;;AAEA;EACE,gCAAgC;EAChC,yBAAyB;AAC3B;;AAEA;EACE,2CAA2C;EAC3C,0BAA0B;AAC5B;;AAEA;EACE,gCAAgC;EAChC,yBAAyB;AAC3B;;AAEA;EACE,gCAAgC;EAChC,yBAAyB;AAC3B;;AAEA;EACE,yCAAyC;EACzC,0BAA0B;AAC5B;;AAEA;EACE;IACE,YAAY;EACd;EACA;IACE,QAAQ;EACV;AACF;;AAPA;EACE;IACE,YAAY;EACd;EACA;IACE,QAAQ;EACV;AACF;;AAEA;EACE;IACE,QAAQ;EACV;EACA;IACE,YAAY;EACd;AACF;;AAPA;EACE;IACE,QAAQ;EACV;EACA;IACE,YAAY;EACd;AACF;;AAEA;EACE;IACE,kDAAkD;EACpD;EACA;IACE,wBAAwB;EAC1B;AACF;;AAPA;EACE;IACE,kDAAkD;EACpD;EACA;IACE,wBAAwB;EAC1B;AACF;;AAEA;EACE;IACE,uCAAuC;EACzC;EACA;IACE,wBAAwB;EAC1B;AACF;;AAPA;EACE;IACE,uCAAuC;EACzC;EACA;IACE,wBAAwB;EAC1B;AACF;;AAEA;EACE,0BAA0B;EAC1B,MAAM;EACN,QAAQ;EACR,aAAa;EACb,2BAA2B;EAC3B,8BAA8B;EAC9B,aAAa;EACb,sBAAsB;EACtB,kBAAkB;AACpB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,kEAA0D;UAA1D,0DAA0D;AAC5D;;AAEA;EACE,sEAA8D;UAA9D,8DAA8D;EAC9D,qCAA6B;UAA7B,6BAA6B;AAC/B;;AAEA;EACE,aAAa;EACb,2BAA2B;EAC3B,6BAA6B;EAC7B,gCAAgC;EAChC,+BAA+B;AACjC;;AAEA;EACE,6DAA6D;AAC/D;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,8BAA8B;EAC9B,iCAAiC;AACnC;;AAEA;EACE,0DAA0D;AAC5D;;AAEA;EACE,kBAAkB;EAClB,SAAS;AACX;;AAEA;EACE,kGAA0F;UAA1F,0FAA0F;AAC5F;;AAEA;EACE,iGAAyF;UAAzF,yFAAyF;AAC3F;;AAEA;EACE,mFAA2E;UAA3E,2EAA2E;AAC7E;;AAEA;EACE,mFAA2E;UAA3E,2EAA2E;AAC7E;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,kBAAkB;EAClB,aAAa;EACb,eAAe;AACjB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,+BAA+B;EAC/B,wBAAwB;EACxB,aAAa;EACb,mBAAmB;EACnB,gBAAgB;AAClB;;AAEA;EACE,oCAAoC;EACpC,wBAAwB;EACxB,sBAAsB;EACtB,+BAA+B;AACjC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,4BAA4B;EAE5B,+BAA+B;EAC/B,aAAa;EACb,mBAAmB;EACnB,sBAAsB;EACtB,kBAAkB;EAClB,yBAAiB;UAAjB,iBAAiB;EACjB,sBAAsB;EACtB,qBAAqB;AACvB;;AAEA;EACE,uBAAuB;EACvB,wBAAwB;EACxB,gCAAgC;EAChC,uCAAuC;AACzC;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,kBAAkB;EAClB,mBAAmB;EACnB,aAAa;EACb,wBAAwB;EACxB,uCAAuC;AACzC;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;EACvB,kBAAkB;EAClB,OAAO;EACP,MAAM;EACN,kBAAkB;EAClB,8BAA8B;EAC9B,6CAA6C;EAC7C,2BAA2B;EAC3B,eAAe;EACf,sBAAsB;EACtB,aAAa;EACb,aAAa;EACb;8EAC4E;AAC9E;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,sDAAsD;EACtD,aAAa;AACf;;AAEA;EACE,oBAAoB;EACpB,0CAA0C;EAC1C,gBAAgB;AAClB;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE;IACE,uBAAuB;EACzB;EACA;IACE,yBAAyB;EAC3B;AACF;;AAPA;EACE;IACE,uBAAuB;EACzB;EACA;IACE,yBAAyB;EAC3B;AACF;;AAEA;EACE;IACE,wBAAwB;IACxB,oBAAoB;EACtB;EACA;IACE,yBAAyB;IACzB,wBAAwB;EAC1B;EACA;IACE,yBAAyB;IACzB,yBAAyB;EAC3B;AACF;;AAbA;EACE;IACE,wBAAwB;IACxB,oBAAoB;EACtB;EACA;IACE,yBAAyB;IACzB,wBAAwB;EAC1B;EACA;IACE,yBAAyB;IACzB,yBAAyB;EAC3B;AACF;;AAEA;EACE,4CAAoC;UAApC,oCAAoC;AACtC;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;AACzB;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;AACzB;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;AACzB;;AAEA;EACE,qBAAqB;EACrB,uBAAuB;EACvB,oBAAoB;EACpB,iDAAyC;UAAzC,yCAAyC;AAC3C;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,0BAAkB;EAAlB,uBAAkB;EAAlB,kBAAkB;AACpB;;AAEA;EACE,cAAc;EACd,kBAAkB;EAClB,sBAAsB;EACtB,qBAAqB;EACrB,4BAA4B;EAC5B,+BAA+B;AACjC;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,8BAA8B;EAC9B,+BAA+B;EAC/B,8BAA8B;EAC9B,+BAA+B;EAC/B,+BAA+B;EAC/B,eAAe;AACjB;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;;EAEE,wDAAwD;EACxD,aAAa;AACf;;AAEA,oBAAoB;;AAEpB;EACE,0BAA0B;AAC5B;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;;EAEE,wDAAwD;EACxD,aAAa;AACf;;AAEA,iBAAiB;;AAEjB;EACE,yCAAyC;EACzC,0BAA0B;EAC1B,0CAA0C;AAC5C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;;EAEE,yCAAyC;EACzC,sDAAsD;EACtD,aAAa;AACf;;AAEA;EACE,wCAAwC;EACxC,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA,mBAAmB;;AAEnB;EACE,mBAAmB;EACnB,8BAA8B;EAC9B,oBAAoB;AACtB;;AAEA;EACE,0CAA0C;EAC1C,qEAAqE;AACvE;;AAEA;EACE,oBAAoB;EACpB,kBAAkB;AACpB;;AAEA;EACE,wBAAwB;EACxB,uBAAuB;AACzB;;AAEA;EACE,yBAAyB;EACzB,uBAAuB;AACzB;;AAEA;EACE,yBAAyB;EACzB,uBAAuB;AACzB;;AAEA;EACE,kBAAkB;EAClB,eAAe;EACf,WAAW;EACX,UAAU;EACV,WAAW;EACX,YAAY;EACZ,SAAS;AACX;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,iBAAiB;EACjB,yBAAyB;EACzB,MAAM;EACN,OAAO;EACP,WAAW;EACX,wCAAwC;EACxC,iCAAiC;EACjC,kCAAkC;AACpC;;AAEA;EACE,wDAAwD;EACxD,wCAAwC;AAC1C;;AAEA;EACE,sDAAsD;EACtD,gCAAgC;AAClC;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,qCAAqC;AACvC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,UAAU;EACV,iCAAiC;EACjC,2BAA2B;EAC3B,kBAAkB;EAClB,sBAAsB;EACtB,yBAAyB;AAC3B;;AAEA;EACE,gCAAgC;EAChC,iCAAiC;EACjC,iCAAiC;EACjC,6BAA6B;AAC/B;;AAEA;EAGE,2BAA2B;EAC3B,yBAAyB;AAC3B;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,aAAa;EACb,YAAY;EACZ,sBAAsB;EACtB,YAAY;EACZ,WAAW;EACX,UAAU;AACZ;;AAEA;EACE,YAAY;EACZ,gBAAgB;EAChB,UAAU;AACZ;;AAEA;EACE,aAAa;EACb,uBAAuB;EACvB,wBAAwB;EACxB,yBAAyB;EACzB,yBAAyB;AAC3B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,gFAAwE;UAAxE,wEAAwE;EACxE,qCAA6B;UAA7B,6BAA6B;AAC/B;;AAEA;EACE,uFAA+E;UAA/E,+EAA+E;EAC/E,qCAA6B;UAA7B,6BAA6B;AAC/B;;AAEA,SAAS;;AAET;EACE,aAAa;EACb,YAAY;EACZ,sBAAsB;AACxB;;AAEA;EACE,sBAAsB;EACtB,aAAa;EACb,mBAAmB;EACnB,mBAAmB;AACrB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,kBAAkB;EAClB,aAAa;EACb,mBAAmB;EACnB,eAAe;EACf,eAAe;EACf,2DAA2D;EAC3D,2CAA2C;EAC3C,kBAAkB;AACpB;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,kBAAkB;EAClB,OAAO;EACP,SAAS;EACT,WAAW;EACX,wCAAwC;EACxC,wBAAwB;EACxB,6BAA6B;EAC7B,6BAA6B;EAC7B,yCAAyC;EACzC,0CAA0C;AAC5C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,sCAAsC;AACxC;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,aAAa;EACb,kBAAkB;EAClB,0GAA0G;EAC1G,sDAAsD;AACxD;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,qCAAqC;AACvC;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,aAAa;EACb,8BAA8B;AAChC;;AAEA;EACE,cAAc;EACd,eAAe;AACjB;;AAEA;EACE,aAAa;EACb,kBAAkB;EAClB,8BAA8B;AAChC;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;AACrB;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,eAAe;EACf,4BAA4B;AAC9B;;AAEA;EACE,0BAA0B;EAC1B,mBAAmB;AACrB;;AAEA;EACE,yBAAyB;EACzB,6BAA6B;EAC7B,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,uDAAuD;AACzD;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,qDAAqD;AACvD;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,sCAAsC;AACxC;;AAEA,aAAa;;AAEb;EACE,4BAA4B;EAC5B,WAAW;EACX,cAAc;EACd,+BAA+B;EAC/B,sCAAsC;EACtC,+BAA+B;EAC/B,2BAA2B;EAC3B,sBAAsB;EACtB,+BAA+B;EAC/B,qBAAqB;EACrB,qBAAqB;EACrB,wCAAwC;EACxC,YAAY;EACZ,YAAY,EAAE,sEAAsE;AACtF;;AAEA;EACE,6BAA6B;AAC/B;;AAFA;EACE,6BAA6B;AAC/B;;AAFA;EACE,6BAA6B;AAC/B;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,aAAa;EACb,8CAA8C;EAC9C,sDAAsD;AACxD;;AAEA;EACE,8BAA8B;EAC9B,qCAAqC;EACrC,oCAAoC;AACtC;;AAEA;EACE,4CAA4C;AAC9C;;AAEA;EACE,4CAA4C;EAC5C,oDAAoD;AACtD;;AAEA;EACE,YAAY;AACd;;AAEA,UAAU;;AAEV;EACE,aAAa;EACb,mBAAmB;EACnB,sBAAsB;EACtB,sBAAsB;EACtB,YAAY;EACZ,+BAA+B;EAC/B,8BAA8B;EAC9B,+BAA+B;EAC/B,6BAA6B;EAC7B,gCAAgC;AAClC;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,eAAe;EACf,6BAA6B;EAC7B,kBAAkB;EAClB,aAAa;EACb,mBAAmB;EACnB,+BAA+B;EAC/B,8BAA8B;EAC9B,yBAAyB;EACzB,mBAAmB;AACrB;;AAEA;;;;EAIE,wBAAwB;AAC1B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;;EAEE,aAAa;EACb,wDAAmF;AACrF;;AAEA;;EAEE,+BAA+B;AACjC;;AAEA;;EAEE,aAAa;EACb,wDAAmF;AACrF;;AAEA;;EAEE,+BAA+B;AACjC;;AAEA;;EAEE,aAAa;EACb,uDAAmF;AACrF;;AAEA;;EAEE,+BAA+B;AACjC;;AAEA;;EAEE,aAAa;EACb,wDAAiF;AACnF;;AAEA;;EAEE,6BAA6B;AAC/B;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,YAAY;AACd;;AAEA;EACE,aAAa;AACf;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;;EAEE,uCAAuC;AACzC;;AAEA;EACE,aAAa;EACb,6BAA6B;AAC/B;;AAEA;EACE,wBAAwB;EACxB,+BAA+B;EAC/B,4BAA4B;AAC9B;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,gCAAgC;AAClC;;AAEA;;EAEE,0BAA0B;AAC5B;;AAEA;EACE,0DAAsF;AACxF;;AAEA;EACE,+BAA+B;AACjC;;AAEA;;EAEE,iCAAiC;AACnC;;AAEA;EACE,uDAAmF;AACrF;;AAEA;EACE,+BAA+B;AACjC;;AAEA;;EAEE,iCAAiC;AACnC;;AAEA;EACE,wDAAmF;AACrF;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;;EAEE,+BAA+B;AACjC;;AAEA;EACE,oDAAoD;AACtD;;AAEA;EACE,+BAA+B;AACjC;;AAEA;;EAEE,iCAAiC;AACnC;;AAEA;EACE,sDAAsD;AACxD;;AAEA;EACE,2BAA2B;EAC3B,wCAAwC;EACxC,+BAA+B;EAC/B,YAAY;EACZ,kCAA6C;EAC7C,gBAAgB;EAChB,sBAAsB;EACtB,yBAAyB;EACzB,yDAAyD;AAC3D;;AAEA;EACE,sBAAsB;EACtB,qBAAa;MAAb,iBAAa;UAAb,aAAa;AACf;;AAEA;EACE;IACE,QAAQ;IACR,UAAU;EACZ;EACA;IACE,SAAS;IACT,UAAU;EACZ;AACF;;AATA;EACE;IACE,QAAQ;IACR,UAAU;EACZ;EACA;IACE,SAAS;IACT,UAAU;EACZ;AACF;AACA;EACE;IACE,SAAS;IACT,UAAU;EACZ;EACA;IACE,QAAQ;IACR,UAAU;EACZ;AACF;AATA;EACE;IACE,SAAS;IACT,UAAU;EACZ;EACA;IACE,QAAQ;IACR,UAAU;EACZ;AACF;;AAEA;EACE,oEAA4D;UAA5D,4DAA4D;EAC5D,qCAA6B;UAA7B,6BAA6B;AAC/B;AACA;EACE,uEAA+D;UAA/D,+DAA+D;AACjE;AACA;EACE;IACE,SAAS;IACT,UAAU;EACZ;EACA;IACE,QAAQ;IACR,UAAU;EACZ;AACF;AATA;EACE;IACE,SAAS;IACT,UAAU;EACZ;EACA;IACE,QAAQ;IACR,UAAU;EACZ;AACF;AACA;EACE;IACE,QAAQ;IACR,UAAU;EACZ;EACA;IACE,SAAS;IACT,UAAU;EACZ;AACF;AATA;EACE;IACE,QAAQ;IACR,UAAU;EACZ;EACA;IACE,SAAS;IACT,UAAU;EACZ;AACF;;AAEA;EACE,uEAA+D;UAA/D,+DAA+D;EAC/D,qCAA6B;UAA7B,6BAA6B;AAC/B;AACA;EACE,0EAAkE;UAAlE,kEAAkE;AACpE;;AAEA;EACE;IACE,SAAS;IACT,UAAU;EACZ;EACA;IACE,UAAU;IACV,UAAU;EACZ;AACF;;AATA;EACE;IACE,SAAS;IACT,UAAU;EACZ;EACA;IACE,UAAU;IACV,UAAU;EACZ;AACF;AACA;EACE;IACE,UAAU;IACV,UAAU;EACZ;EACA;IACE,SAAS;IACT,UAAU;EACZ;AACF;AATA;EACE;IACE,UAAU;IACV,UAAU;EACZ;EACA;IACE,SAAS;IACT,UAAU;EACZ;AACF;;AAEA;EACE,qEAA6D;UAA7D,6DAA6D;EAC7D,qCAA6B;UAA7B,6BAA6B;AAC/B;AACA;EACE,wEAAgE;UAAhE,gEAAgE;AAClE;;AAEA;EACE;IACE,UAAU;IACV,UAAU;EACZ;EACA;IACE,SAAS;IACT,UAAU;EACZ;AACF;;AATA;EACE;IACE,UAAU;IACV,UAAU;EACZ;EACA;IACE,SAAS;IACT,UAAU;EACZ;AACF;AACA;EACE;IACE,SAAS;IACT,UAAU;EACZ;EACA;IACE,UAAU;IACV,UAAU;EACZ;AACF;AATA;EACE;IACE,SAAS;IACT,UAAU;EACZ;EACA;IACE,UAAU;IACV,UAAU;EACZ;AACF;;AAEA;EACE,sEAA8D;UAA9D,8DAA8D;EAC9D,qCAA6B;UAA7B,6BAA6B;AAC/B;AACA;EACE,yEAAiE;UAAjE,iEAAiE;AACnE;;AAEA;EACE,uBAAuB;EACvB,8BAAsB;UAAtB,sBAAsB;AACxB;;AAEA;EACE,oBAAoB;EACpB,WAAW;AACb;;AAEA;EACE,kBAAkB;AACpB;;AAEA;;EAEE,wBAAwB;EACxB,SAAS;AACX;;AAEA;EACE,oBAAoB;EACpB,sBAAsB;AACxB;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,yBAAyB;EACzB,8BAA8B;EAC9B,6BAA6B;EAC7B,mCAAmC;EACnC,0BAA0B;AAC5B;;AAEA;EACE,0DAA0D;AAC5D;;AAEA;EACE,qBAAqB;EACrB,sBAAsB;EACtB,aAAa;EACb,mBAAmB;EACnB,eAAe;EACf,qEAAqE;EACrE,YAAY;AACd;;AAEA;EACE,wBAAwB;EACxB,+BAA+B;EAC/B,8BAA8B;EAC9B,+BAA+B;EAC/B,2BAA2B;AAC7B;;AAEA;EACE,4BAA4B;EAC5B,+BAA+B;AACjC;;AAEA;EACE,YAAY;EACZ,WAAW;EACX,iBAAiB;EACjB,kBAAkB;EAClB,uBAAuB;EACvB,kBAAkB;EAClB,eAAe;AACjB;;AAEA;EACE,8BAA8B;EAC9B,6BAA6B;EAC7B,gCAAgC;EAChC,4BAA4B;EAC5B,8BAA8B;EAC9B,wDAAwD;AAC1D;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,4BAA4B;EAC5B,qBAAqB;AACvB;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,wDAAwD;EACxD,aAAa;AACf;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,kCAAkC;EAClC,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,sDAAsD;EACtD,aAAa;AACf;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;;AAEA;EACE,gBAAgB;EAChB,uBAAuB;EACvB,mBAAmB;AACrB;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,0BAA0B;EAC1B,kBAAkB;AACpB;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,sCAAsC;AACxC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,6CAA6C;AAC/C;;AAEA;EACE,qDAAqD;AACvD;;AAEA;EACE,sDAAsD;AACxD;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,sCAAsC;AACxC;;AAEA;EACE,qCAAqC;AACvC;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,sCAAsC;AACxC;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,sCAAsC;AACxC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,sCAAsC;AACxC;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,aAAa;EACb,eAAe;EACf,YAAY;AACd;;AAEA;EACE,kBAAkB;EAClB,sBAAsB;EACtB,YAAY;AACd;;AAEA;EACE,cAAc;EACd,WAAW;AACb;;AAEA;EACE,cAAc;EACd,2CAA2C;AAC7C;;AAEA;EACE,cAAc;EACd,2CAA2C;AAC7C;;AAEA;EACE,cAAc;EACd,2CAA2C;AAC7C;;AAEA;EACE,cAAc;EACd,2CAA2C;AAC7C;;AAEA;EACE,cAAc;EACd,2CAA2C;AAC7C;;AAEA;EACE,cAAc;EACd,2CAA2C;AAC7C;;AAEA;EACE,cAAc;EACd,2CAA2C;AAC7C;;AAEA;EACE,cAAc;EACd,2CAA2C;AAC7C;;AAEA;EACE,cAAc;EACd,2CAA2C;AAC7C;;AAEA;EACE,cAAc;EACd,4CAA4C;AAC9C;;AAEA;EACE,cAAc;EACd,4CAA4C;AAC9C;;AAEA;EACE,cAAc;EACd,4CAA4C;AAC9C;;AAEA,qDAAqD;;AAErD;EACE;IACE,cAAc;IACd,WAAW;EACb;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;EAChB;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;AACF;;AAEA,wDAAwD;;AAExD;EACE;IACE,cAAc;IACd,WAAW;EACb;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;AACF;;AAEA,wDAAwD;;AAExD;EACE;IACE,cAAc;IACd,WAAW;EACb;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;AACF;;AAEA,yDAAyD;;AAEzD;EACE;IACE,cAAc;IACd,WAAW;EACb;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;AACF;;AAEA,kDAAkD;;AAElD;EACE;IACE,cAAc;IACd,WAAW;EACb;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,2CAA2C;EAC7C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;EACA;IACE,cAAc;IACd,4CAA4C;EAC9C;AACF;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,mCAAmC;EACnC,2BAA2B;AAC7B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,iCAAiC;AACnC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,mCAAmC;AACrC;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,0BAA0B;EAC1B,yBAAyB;AAC3B;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;EACzC,wCAAwC;AAC1C;;AAEA;EACE,yCAAyC;EACzC,wCAAwC;AAC1C;;AAEA;EACE,uCAAuC;EACvC,sCAAsC;AACxC;;AAEA;EACE,yCAAyC;EACzC,wCAAwC;AAC1C;;AAEA;EACE,yCAAyC;EACzC,wCAAwC;AAC1C;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;EACzC,wCAAwC;AAC1C;;AAEA;EACE,yCAAyC;EACzC,wCAAwC;AAC1C;;AAEA;EACE,yCAAyC;EACzC,wCAAwC;AAC1C;;AAEA;EACE,yCAAyC;EACzC,wCAAwC;AAC1C;;AAEA;EACE,yCAAyC;EACzC,wCAAwC;AAC1C;;AAEA;EACE,yCAAyC;EACzC,wCAAwC;AAC1C;;AAEA;EACE,yCAAyC;EACzC,wCAAwC;AAC1C;;AAEA;EACE,6BAA6B;EAC7B,4BAA4B;AAC9B;;AAEA;EACE,wBAAwB;EACxB,2BAA2B;AAC7B;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,uCAAuC;EACvC,0CAA0C;AAC5C;;AAEA;EACE,uCAAuC;EACvC,0CAA0C;AAC5C;;AAEA;EACE,qCAAqC;EACrC,wCAAwC;AAC1C;;AAEA;EACE,uCAAuC;EACvC,0CAA0C;AAC5C;;AAEA;EACE,uCAAuC;EACvC,0CAA0C;AAC5C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,uCAAuC;EACvC,0CAA0C;AAC5C;;AAEA;EACE,uCAAuC;EACvC,0CAA0C;AAC5C;;AAEA;EACE,uCAAuC;EACvC,0CAA0C;AAC5C;;AAEA;EACE,uCAAuC;EACvC,0CAA0C;AAC5C;;AAEA;EACE,uCAAuC;EACvC,0CAA0C;AAC5C;;AAEA;EACE,uCAAuC;EACvC,0CAA0C;AAC5C;;AAEA;EACE,uCAAuC;EACvC,0CAA0C;AAC5C;;AAEA;EACE,2BAA2B;EAC3B,8BAA8B;AAChC;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,qCAAqC;AACvC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,sCAAsC;AACxC;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qCAAqC;AACvC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,qCAAqC;AACvC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,oCAAoC;AACtC;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,2BAA2B;EAC3B,0BAA0B;AAC5B;;AAEA;EACE,2CAA2C;EAC3C,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,wCAAwC;EACxC,uCAAuC;AACzC;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,2CAA2C;EAC3C,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,0CAA0C;EAC1C,yCAAyC;AAC3C;;AAEA;EACE,8BAA8B;EAC9B,6BAA6B;AAC/B;;AAEA;EACE,yBAAyB;EACzB,4BAA4B;AAC9B;;AAEA;EACE,yCAAyC;EACzC,4CAA4C;AAC9C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,sCAAsC;EACtC,yCAAyC;AAC3C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,yCAAyC;EACzC,4CAA4C;AAC9C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,wCAAwC;EACxC,2CAA2C;AAC7C;;AAEA;EACE,4BAA4B;EAC5B,+BAA+B;AACjC;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,sCAAsC;AACxC;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4CAA4C;AAC9C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,4CAA4C;AAC9C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,2CAA2C;AAC7C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,0CAA0C;AAC5C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,uBAAuB;AACzB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,qBAAqB;AACvB;;AAEA,SAAS;;AAET;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA,WAAW;;AAEX;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA,UAAU;;AAEV;EACE,2BAA2B;AAC7B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA,YAAY;AACZ;EACE,6BAA6B;AAC/B;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA;EACE,6BAA6B;AAC/B;;AAEA,aAAa;AACb;EACE,8BAA8B;AAChC;;AAEA;EACE,gCAAgC;AAClC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,8BAA8B;AAChC;;AAEA,WAAW;AACX;EACE,4BAA4B;AAC9B;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,4BAA4B;AAC9B;;AAEA,cAAc;;AAEd;EACE,WAAW;EACX,2BAA2B;EAC3B,uBAAuB;EACvB,4CAA4C;AAC9C;;AAEA;EACE,wBAAwB;EACxB,qBAAqB;AACvB;;AAEA;EACE,gBAAgB;EAChB,uBAAuB;AACzB;;AAEA;EACE,mBAAmB;EACnB,gBAAgB;EAChB,uBAAuB;AACzB;;AAEA;EACE,eAAe;AACjB;;AAEA;EACE,mBAAmB;AACrB","file":"index.css","sourcesContent":["/**** Colors ****/\n:root {\n --haldi: #ffc208;\n --haldi-dark: #b78707;\n --haldi-darker: #6b4a06;\n --haldi-light: #ffd462;\n --haldi-lighter: #ffe597;\n --haldi-lightest: #fff5c7;\n --jal: #0070dd;\n --jal-dark: #00509f;\n --jal-darker: #003365;\n --jal-light: #4f9de7;\n --jal-lighter: #97c5f0;\n --jal-lightest: #dcecf9;\n --jamun: #7a53b2;\n --jamun-dark: #644491;\n --jamun-darker: #4e3572;\n --jamun-light: #9d7ec6;\n --jamun-lighter: #bfaada;\n --jamun-lightest: #e0d8ee;\n --mirch: #d93737;\n --mirch-dark: #9c2828;\n --mirch-darker: #631919;\n --mirch-light: #eb776c;\n --mirch-lighter: #f7ada5;\n --mirch-lightest: #f9e2e2;\n --neel: #3d51d4;\n --neel-dark: #2c3a98;\n --neel-darker: #1c2561;\n --neel-light: #7583e1;\n --neel-lighter: #abb4ed;\n --neel-lightest: #e2e5f9;\n --neem: #2ea843;\n --neem-dark: #227934;\n --neem-darker: #154d26;\n --neem-light: #71c077;\n --neem-lighter: #a5d8aa;\n --neem-lightest: #d7efdf;\n --night: #2f2f2f;\n --night-light: #595959;\n --night-lighter: #868686;\n --night-lightest: #a6a6a6;\n --nimbu: #82c91e;\n --nimbu-dark: #578715;\n --nimbu-darker: #304a0b;\n --nimbu-light: #a6d763;\n --nimbu-lighter: #c6e599;\n --nimbu-lightest: #e3f3ce;\n --shadow-0: #ffffff;\n --shadow-10: #ffffff;\n --shadow-20: #ffffff;\n --shadow-30: #ffffff;\n --stone: #d5d5d5;\n --stone-dark: #c5c5c5;\n --stone-light: #e5e5e5;\n --stone-lighter: #ececec;\n --stone-lightest: #f4f4f4;\n --tawak: #f07d00;\n --tawak-dark: #b35f13;\n --tawak-darker: #743208;\n --tawak-light: #feac5f;\n --tawak-lighter: #ffc998;\n --tawak-lightest: #fde6ce;\n --white: #ffffff;\n\n /**** Fonts ****/\n} /* close :root */\n\n:root {\n /* Colors */\n\n /* default */\n --primary: var(--jal);\n --secondary: var(--stone);\n --success: var(--neem);\n --alert: var(--mirch);\n --warning: var(--haldi);\n --accent1: var(--tawak);\n --accent2: var(--jamun);\n --accent3: var(--neel);\n --accent4: var(--nimbu);\n --inverse: var(--night);\n\n /* dark */\n --primary-dark: var(--jal-dark);\n --secondary-dark: var(--stone-dark);\n --success-dark: var(--neem-dark);\n --alert-dark: var(--mirch-dark);\n --warning-dark: var(--haldi-dark);\n --accent1-dark: var(--tawak-dark);\n --accent2-dark: var(--jamun-dark);\n --accent3-dark: var(--neel-dark);\n --accent4-dark: var(--nimbu-dark);\n\n /* darker */\n --primary-darker: var(--jal-darker);\n --success-darker: var(--neem-darker);\n --alert-darker: var(--mirch-darker);\n --warning-darker: var(--haldi-darker);\n --accent1-darker: var(--tawak-darker);\n --accent2-darker: var(--jamun-darker);\n --accent3-darker: var(--neel-darker);\n --accent4-darker: var(--nimbu-darker);\n\n /* light */\n --primary-light: var(--jal-light);\n --secondary-light: var(--stone-light);\n --success-light: var(--neem-light);\n --alert-light: var(--mirch-light);\n --warning-light: var(--haldi-light);\n --accent1-light: var(--tawak-light);\n --accent2-light: var(--jamun-light);\n --accent3-light: var(--neel-light);\n --accent4-light: var(--nimbu-light);\n --inverse-light: var(--night-light);\n\n /* lighter */\n --primary-lighter: var(--jal-lighter);\n --secondary-lighter: var(--stone-lighter);\n --success-lighter: var(--neem-lighter);\n --alert-lighter: var(--mirch-lighter);\n --warning-lighter: var(--haldi-lighter);\n --accent1-lighter: var(--tawak-lighter);\n --accent2-lighter: var(--jamun-lighter);\n --accent3-lighter: var(--neel-lighter);\n --accent4-lighter: var(--nimbu-lighter);\n --inverse-lighter: var(--night-lighter);\n\n /* lightest */\n --primary-lightest: var(--jal-lightest);\n --secondary-lightest: var(--stone-lightest);\n --success-lightest: var(--neem-lightest);\n --alert-lightest: var(--mirch-lightest);\n --warning-lightest: var(--haldi-lightest);\n --accent1-lightest: var(--tawak-lightest);\n --accent2-lightest: var(--jamun-lightest);\n --accent3-lightest: var(--neel-lightest);\n --accent4-lightest: var(--nimbu-lightest);\n --inverse-lightest: var(--night-lightest);\n\n /* shadow */\n --primary-shadow: color-mod(var(--primary) a(var(--opacity-4)));\n --secondary-shadow: color-mod(var(--secondary) a(var(--opacity-4)));\n --success-shadow: color-mod(var(--success) a(var(--opacity-4)));\n --alert-shadow: color-mod(var(--alert) a(var(--opacity-4)));\n --warning-shadow: color-mod(var(--warning) a(var(--opacity-4)));\n --accent1-shadow: color-mod(var(--accent1) a(var(--opacity-4)));\n --accent2-shadow: color-mod(var(--accent2) a(var(--opacity-4)));\n --accent3-shadow: color-mod(var(--accent3) a(var(--opacity-4)));\n --accent4-shadow: color-mod(var(--accent4) a(var(--opacity-4)));\n --inverse-shadow: color-mod(var(--inverse) a(var(--opacity-4)));\n\n /* Text colors */\n --text: var(--night);\n --text-subtle: var(--night-lighter);\n --text-link: var(--primary);\n --text-disabled: var(--inverse-lightest);\n --text-destructive: var(--alert);\n --text-white: var(--white);\n --text-success: var(--success);\n\n /* spacing */\n --spacing-xs: 1px;\n --spacing-s: 2px;\n --spacing-m: 4px;\n --spacing-0-75: 6px;\n --spacing: 8px;\n --spacing-l: 12px;\n /* 8 * 2 */\n --spacing-2: 16px;\n /* 8 * 3 */\n --spacing-xl: 24px;\n /* 8 * 4 */\n --spacing-3: 32px;\n /* 8 * 6 */\n --spacing-4: 48px;\n /* 8 * 8 */\n --spacing-5: 64px;\n /* 8 * 12 */\n --spacing-6: 96px;\n /* 8 * 16 */\n --spacing-7: 128px;\n /* 8 * 22 */\n --spacing-8: 176px;\n /* 8 * 32 */\n --spacing-9: 256px;\n\n /* Fonts */\n --font-family: 'Nunito Sans';\n\n /* Font size */\n --font-size-xxs: 4px;\n --font-size-xs: 8px;\n --font-size-s: 12px;\n --font-size: 14px;\n --font-size-m: 16px;\n --font-size-l: 20px;\n --font-size-xl: 28px;\n --font-size-xxl: 32px;\n --font-size-xxxl: 40px;\n\n /* Font weight */\n --font-weight-normal: 400;\n --font-weight-medium: 600;\n --font-weight-bold: 700;\n --font-weight-bolder: 800;\n\n /* Line height or Font height */\n --font-height-normal: normal;\n --font-height-s: 16px;\n --font-height: 20px;\n --font-height-m: 24px;\n --font-height-l: 32px;\n --font-height-xl: 40px;\n --font-height-xxl: 48px;\n\n /* Letter spacing */\n --letter-spacing: 0.5px;\n\n /* body settings */\n\n /* border */\n --border: var(--spacing-xs) solid var(--secondary);\n --border-s: var(--spacing-s) solid var(--secondary);\n\n /* padding */\n\n /* shadow */\n --shadow-s: 0 1px 4px 0 rgba(0, 0, 0, 0.16);\n --shadow-m: 0 2px 8px 0 rgba(0, 0, 0, 0.16);\n --shadow-l: 0 4px 16px 0 rgba(0, 0, 0, 0.16);\n --shadow-spread: 0 0 0 3px;\n\n /* \n Grid breakpoints\n Define the minimum dimensions at which your layout will change,\n adapting to different screen sizes, for use in media queries. \n */\n\n --grid-s-breakpoint: 576px;\n --grid-m-breakpoint: 768px;\n --grid-l-breakpoint: 992px;\n --grid-xl-breakpoint: 1200px;\n\n /* \n Grid columns\n Set the number of columns and specify the width of the gutters. \n */\n\n --grid-columns: 12;\n\n /* Undefined colors */\n --card-subdued-bg: #fcfafa;\n\n /* Transparancy (Opacity) */\n --transparent-58: 0.58;\n\n /* Transition curve timing function */\n /* Use standard-easing when an element is visible from the beginning to the end of a motion. Ex-Expanding cards. */\n --standard-productive-curve: cubic-bezier(0.2, 0, 0.38, 0.9);\n --standard-expressive-curve: cubic-bezier(0.4, 0.14, 0.3, 1);\n /* Use entrance-easing when an element quickly appears and slows down to a stop. Ex-when adding elements to the view, such as a modal appearing. */\n --entrance-productive-curve: cubic-bezier(0, 0, 0.38, 0.9);\n --entrance-expressive-curve: cubic-bezier(0, 0, 0.3, 1);\n /* Use exit-easing when removing elements from view, such as closing a modal or toaster. */\n --exit-productive-curve: cubic-bezier(0.2, 0, 1, 0.9);\n --exit-expressive-curve: cubic-bezier(0.4, 0.14, 1, 1);\n\n /* Transition duration */\n --duration--fast-01: 80ms;\n --duration--fast-02: 120ms;\n --duration--moderate-01: 160ms;\n --duration--moderate-02: 240ms;\n --duration--slow-01: 400ms;\n --duration--slow-02: 720ms;\n\n /* Opacity */\n --opacity-1: 0.04;\n --opacity-2: 0.08;\n --opacity-3: 0.12;\n --opacity-4: 0.16;\n --opacity-6: 0.24;\n --opacity-8: 0.32;\n --opacity-10: 0.4;\n --opacity-12: 0.48;\n --opacity-16: 0.64;\n --opacity-20: 0.8;\n}\n\n/* fallback */\n@font-face {\n font-family: 'Material Symbols Rounded';\n font-style: normal;\n font-weight: 300;\n src: url(MaterialSymbolsRounded.woff2) format('woff2');\n}\n\n.material-symbols {\n font-family: 'Material Symbols Rounded';\n font-weight: normal;\n font-style: normal;\n font-size: 24px;\n line-height: 1;\n letter-spacing: normal;\n text-transform: none;\n display: inline-block;\n white-space: nowrap;\n word-wrap: normal;\n direction: ltr;\n -webkit-font-feature-settings: 'liga';\n -webkit-font-smoothing: antialiased;\n}\n\n.material-symbols-rounded {\n font-variation-settings: 'FILL' 1, 'wght' 300, 'GRAD' 0, 'opsz' 24;\n font-family: 'Material Symbols Rounded';\n font-weight: normal;\n font-style: normal;\n font-size: 24px;\n line-height: 1;\n letter-spacing: normal;\n text-transform: none;\n display: inline-block;\n white-space: nowrap;\n word-wrap: normal;\n direction: ltr;\n -webkit-font-feature-settings: 'liga';\n -webkit-font-smoothing: antialiased;\n}\n\n.material-symbols-outlined {\n font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;\n font-family: 'Material Symbols Rounded';\n font-weight: normal;\n font-style: normal;\n font-size: 24px;\n line-height: 1;\n letter-spacing: normal;\n text-transform: none;\n display: inline-block;\n white-space: nowrap;\n word-wrap: normal;\n direction: ltr;\n -webkit-font-feature-settings: 'liga';\n -webkit-font-smoothing: antialiased;\n}\n\n@keyframes fadeIn {\n from {\n opacity: 0;\n }\n\n to {\n opacity: 1;\n }\n}\n\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n\n to {\n opacity: 0;\n }\n}\n\n.fade-in {\n animation: fadeIn var(--duration--fast-02) var(--standard-productive-curve);\n}\n\n.fade-out {\n animation: fadeOut var(--duration--fast-02) var(--standard-expressive-curve);\n}\n\n.opacity-0 {\n opacity: 0;\n}\n\n.opacity-1 {\n opacity: 1;\n}\n\n@keyframes exitLeftCurve {\n from {\n opacity: 1;\n left: 0;\n }\n\n to {\n opacity: 0;\n left: calc(-1 * var(--spacing-2));\n }\n}\n\n@keyframes entryLeftCurve {\n from {\n left: var(--spacing-2);\n }\n\n to {\n left: 0;\n }\n}\n\n@keyframes exitRightCurve {\n from {\n opacity: 1;\n left: 0;\n }\n\n to {\n opacity: 0;\n left: var(--spacing-2);\n }\n}\n\n@keyframes entryRightCurve {\n from {\n left: calc(-1 * var(--spacing-2));\n }\n\n to {\n left: 0;\n }\n}\n\n.slideOut-left {\n animation: exitLeftCurve var(--duration--moderate-02) var(--exit-expressive-curve);\n animation-fill-mode: forwards;\n}\n\n.slideIn-left {\n animation: fadeIn var(--duration--moderate-01) var(--entrance-expressive-curve),\n entryLeftCurve var(--duration--moderate-02) var(--entrance-expressive-curve);\n}\n\n.slideOut-right {\n animation: exitRightCurve var(--duration--moderate-02) var(--exit-expressive-curve);\n animation-fill-mode: forwards;\n}\n\n.slideIn-right {\n animation: fadeIn var(--duration--moderate-01) var(--entrance-expressive-curve),\n entryRightCurve var(--duration--moderate-02) var(--entrance-expressive-curve);\n}\n\n.rotate-clockwise {\n transform: rotateZ(360deg);\n transition: var(--duration--moderate-02) var(--standard-productive-curve);\n animation-fill-mode: forwards;\n}\n\n.rotate-anticlockwise {\n transform: rotateZ(180deg);\n transition: var(--duration--moderate-02) var(--standard-productive-curve);\n}\n\n.ss {\n background: red;\n}\n\nbody {\n font-family: var(--font-family);\n color: var(--text);\n line-height: var(--font-height);\n margin: 0;\n padding: 0;\n font-size: var(--font-size);\n}\n\n/* Text */\n.Text {\n margin: 0;\n line-height: var(--font-height);\n}\n\n.Text--small {\n font-size: var(--font-size-s);\n line-height: var(--font-height-normal);\n}\n\n.Text--regular {\n font-size: var(--font-size);\n line-height: var(--font-height);\n}\n\n.Text--large {\n font-size: var(--font-size-m);\n line-height: var(--font-height-m);\n}\n\n.Text--default {\n color: var(--text);\n}\n\n.Text--subtle {\n color: var(--text-subtle);\n}\n\n.Text--disabled {\n color: var(--text-disabled);\n}\n\n.Text--destructive {\n color: var(--text-destructive);\n}\n\n.Text--white {\n color: var(--text-white);\n}\n\n.Text--success {\n color: var(--text-success);\n}\n\n.Text--link {\n color: var(--text-link);\n}\n\n.Text--medium {\n font-weight: var(--font-weight-medium);\n}\n\n.Text--strong {\n font-weight: var(--font-weight-bold);\n}\n\n/* Heading */\n.Heading {\n margin: 0;\n}\n\n.Heading--s {\n font-weight: var(--font-weight-bold);\n font-size: var(--font-size-m);\n line-height: var(--font-height-m);\n}\n\n.Heading--m {\n font-weight: var(--font-weight-medium);\n font-size: var(--font-size-l);\n line-height: var(--font-height-l);\n}\n\n.Heading--l {\n font-weight: var(--font-weight-normal);\n font-size: var(--font-size-xl);\n line-height: var(--font-height-xl);\n}\n\n.Heading--xl {\n font-weight: var(--font-weight-medium);\n font-size: var(--font-size-xxl);\n line-height: var(--font-height-xxl);\n}\n\n.Heading--xxl {\n font-weight: var(--font-weight-normal);\n font-size: var(--font-size-xxxl);\n line-height: var(--font-height-xxl);\n}\n\n.Heading--default {\n color: var(--text);\n}\n\n.Heading--subtle {\n color: var(--text-subtle);\n}\n\n.Heading--disabled {\n color: var(--text-disabled);\n}\n\n.Heading--white {\n color: var(--text-white);\n}\n\n/* Label */\n.Label {\n display: inline-flex;\n}\n\n.Label--withInput {\n margin-bottom: var(--spacing-m);\n}\n\n.Label--optional {\n align-items: center;\n}\n\n.Label-text {\n line-height: var(--font-height-s);\n font-weight: var(--font-weight-medium);\n word-break: break-all;\n}\n\n.Label-optionalText {\n line-height: var(--font-height-s);\n margin-left: var(--spacing-m);\n}\n\n.Label--disabled {\n color: var(--text-disabled);\n}\n\n.Label-requiredIndicator {\n height: var(--spacing-0-75);\n width: var(--spacing-0-75);\n border-radius: 50%;\n background: var(--alert);\n margin-left: var(--spacing-m);\n margin-bottom: var(--spacing-0-75);\n display: inline-flex;\n}\n\n/* Caption */\n.Caption {\n display: flex;\n align-items: center;\n box-sizing: border-box;\n}\n\n.Caption--withInput {\n margin-top: var(--spacing-m);\n}\n\n.Caption-icon {\n display: flex;\n align-content: center;\n margin-right: var(--spacing-m);\n}\n\n.Caption--hidden {\n display: none;\n}\n\n/* Subheading */\n.Subheading {\n margin: 0;\n font-weight: var(--font-weight-bolder);\n font-size: var(--spacing-l);\n line-height: var(--font-height-m);\n letter-spacing: var(--letter-spacing);\n text-transform: uppercase;\n}\n\n.Subheading--default {\n color: var(--text);\n}\n\n.Subheading--subtle {\n color: var(--text-subtle);\n}\n\n.Subheading--disabled {\n color: var(--text-disabled);\n}\n\n.Subheading--white {\n color: var(--text-white);\n}\n\n.PopperWrapper-trigger {\n display: inline-flex;\n flex-grow: 1;\n}\n\n.Overlay-container {\n display: flex;\n position: relative;\n flex-direction: row;\n justify-content: center;\n z-index: 1500;\n}\n\n.Overlay-container--open {\n animation-timing-function: cubic-bezier(0, 0, 0.3, 1);\n}\n\n.Overlay-container--close {\n animation-timing-function: cubic-bezier(0.4, 0.14, 1, 1);\n}\n\n::-webkit-scrollbar {\n width: var(--spacing-2);\n}\n\n::-webkit-scrollbar-thumb {\n border: var(--spacing-s) solid rgba(0, 0, 0, 0);\n background-clip: padding-box;\n border-radius: var(--spacing);\n background-color: var(--secondary);\n}\n\n.Legend {\n display: flex;\n flex-direction: row;\n align-items: center;\n width: fit-content;\n}\n\n.Legend-icon {\n border-radius: var(--spacing-s);\n margin-right: var(--spacing);\n}\n\n.ProgressBar {\n width: 100%;\n border-radius: var(--spacing-m);\n background: var(--secondary-lighter);\n}\n\n.ProgressBar-indicator {\n background-color: var(--primary);\n border-radius: var(--spacing-m);\n transition: var(--duration--slow-01) var(--standard-expressive-curve);\n}\n\n.ProgressBar-indicator--small {\n height: var(--spacing-s);\n}\n\n.ProgressBar-indicator--regular {\n height: var(--spacing);\n}\n\n.ActionButton {\n display: flex;\n flex-shrink: 0;\n overflow: hidden;\n user-select: none;\n cursor: pointer;\n color: var(--inverse-lighter);\n border-radius: 50%;\n padding: var(--spacing-s);\n}\n\n.ActionButton:focus-visible,\n.ActionButton:focus {\n outline: var(--spacing-s) solid var(--secondary-shadow);\n}\n\n.ActionButton:hover {\n background-color: var(--secondary);\n}\n\n.ActionButton:active {\n background-color: var(--secondary-dark);\n}\n\n.ActionCard {\n cursor: pointer;\n border-radius: var(--spacing-m);\n width: 100%;\n border: var(--spacing-xs) solid var(--secondary-dark);\n}\n\n.ActionCard:hover {\n box-shadow: var(--shadow-m);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.ActionCard:focus,\n.ActionCard:focus-visible {\n outline: none;\n border: var(--spacing-xs) solid var(--secondary-light);\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n}\n\n.ActionCard:active {\n box-shadow: var(--shadow-l);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.ActionCard--disabled {\n pointer-events: none;\n position: relative;\n border: var(--spacing-xs) solid var(--secondary-lighter);\n}\n\n.ActionCard-overlay--disabled {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n opacity: var(--opacity-10);\n background: var(--secondary-light);\n}\n\n/* Avatar */\n\n.Avatar {\n display: flex;\n flex-grow: 0;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n text-transform: uppercase;\n border-radius: 50%;\n cursor: default;\n}\n\n.Avatar--wrapper {\n padding: var(--spacing-xs);\n box-sizing: border-box;\n}\n\n.Avatar--square {\n width: 100%;\n height: 100%;\n border-radius: var(--spacing-m);\n}\n\n.Avatar--regular {\n height: var(--spacing-3);\n width: var(--spacing-3);\n}\n\n.Avatar--tiny {\n height: var(--spacing-xl);\n width: var(--spacing-xl);\n}\n\n.Avatar--disabled {\n cursor: default;\n}\n\n.Avatar--primary {\n background: var(--primary);\n}\n\n.Avatar--secondary {\n background: var(--secondary-light);\n}\n\n.Avatar--success {\n background: var(--success);\n}\n\n.Avatar--alert {\n background: var(--alert);\n}\n\n.Avatar--warning {\n background: var(--warning);\n}\n\n.Avatar--accent1 {\n background: var(--accent1);\n}\n\n.Avatar--accent2 {\n background: var(--accent2);\n}\n\n.Avatar--accent3 {\n background: var(--accent3);\n}\n\n.Avatar--accent4 {\n background: var(--accent4);\n}\n\n.Avatar-content--tiny {\n line-height: var(--font-height-s) !important;\n font-size: 10px !important;\n}\n\n.Avatar-content--secondary {\n color: var(--inverse) !important;\n}\n\n.Avatar-content--success {\n color: var(--success-darker) !important;\n}\n\n.Avatar-content--warning {\n color: var(--warning-darker) !important;\n}\n\n.Avatar-content--accent1 {\n color: var(--accent1-darker) !important;\n}\n\n.Avatar-content--accent4 {\n color: var(--accent4-darker) !important;\n}\n\n.AvatarGroup-item {\n border-radius: 50%;\n}\n\n.AvatarGroup-item--regular {\n margin-right: calc(var(--spacing-m) * -1);\n height: var(--spacing-3);\n}\n\n.AvatarGroup-item--tiny {\n margin-right: calc(var(--spacing-s) * -1);\n height: var(--spacing-xl);\n}\n\n.AvatarGroup-Popper {\n max-width: var(--spacing-9);\n overflow: hidden;\n box-sizing: border-box;\n word-break: break-word;\n hyphens: auto;\n}\n\n.AvatarGroup-TextWrapper {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n overflow-y: auto;\n}\n\n.AvatarCount-wrapper {\n border-radius: 50%;\n}\n\n/* Selection avatar group */\n.SelectionAvatarGroup {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n}\n\n/* Selection Avatar List */\n\n.SelectionAvatarGroup-item {\n margin-right: calc(var(--spacing-m) * -1);\n border-radius: 50%;\n display: flex;\n transition: transform var(--duration--fast-01) var(--standard-productive-curve);\n position: relative;\n}\n\n.SelectionAvatarGroup-item:focus,\n.SelectionAvatarGroup-item:focus-visible {\n outline: 3px solid var(--primary-shadow);\n outline-offset: 3px;\n}\n\n.SelectionAvatarGroup-item:active {\n outline: var(--spacing-s) solid #00509f;\n outline-offset: var(--spacing-xs);\n}\n\n.SelectionAvatarGroup-wrapper:hover .SelectionAvatarGroup-item {\n transform: translateY(-8px);\n}\n\n/* Selected Avatar Group Item */\n\n.SelectionAvatarGroup-item--selected {\n outline-offset: var(--spacing-xs);\n outline: var(--spacing-s) solid var(--primary-dark);\n}\n\n.SelectionAvatarGroup-item--selected:active {\n outline-offset: var(--spacing-xs);\n outline: var(--spacing-s) solid var(--primary-darker);\n}\n\n.SelectionAvatarGroup-item--selected:focus,\n.SelectionAvatarGroup-item--selected:focus-visible {\n box-shadow: 0 0 0 var(--spacing-xs) white, 0 0 0 3px var(--primary-dark), 0 0 0 3px var(--primary-shadow) !important;\n}\n\n/* Selection Avatar Popover */\n\n.SelectionAvatarGroup-popper {\n overflow-y: auto;\n box-sizing: border-box;\n}\n\n.SelectionAvatar-inputWrapper {\n border-bottom: var(--spacing-xs) solid var(--secondary-dark);\n}\n\n.SelectionAvatar-inputWrapper:focus-within {\n border-bottom: var(--spacing-xs) solid var(--primary);\n}\n\n.SelectionAvatar-input {\n min-width: unset !important;\n background: transparent;\n border-bottom-left-radius: 0px;\n border-bottom-right-radius: 0;\n height: 36px;\n}\n\n.SelectionAvatar-input,\n.SelectionAvatar-input:focus-within {\n border: unset !important;\n box-shadow: none !important;\n}\n\n.SelectionAvatar-input:hover {\n background-color: #f4f4f4;\n}\n\n/* Selection Avatar Count */\n\n.SelectionAvatarCount-wrapper {\n border-radius: 50%;\n}\n\n.SelectionAvatarCount:hover {\n background: var(--secondary);\n}\n\n.SelectionAvatarCount:active {\n background: var(--secondary-dark);\n}\n\n.SelectionAvatarCount-wrapper:focus,\n.SelectionAvatarCount-wrapper:focus-visible {\n outline: 3px solid var(--primary-shadow);\n outline-offset: 3px;\n}\n\n.SelectionAvatarCount--selected {\n outline-offset: var(--spacing-xs);\n outline: var(--spacing-s) solid var(--primary-dark);\n}\n\n.SelectionAvatarCount--selected:focus,\n.SelectionAvatarCount--selected:focus-visible {\n box-shadow: 0 0 0 var(--spacing-xs) white, 0 0 0 3px var(--primary-dark), 0 0 0 3px var(--primary-shadow) !important;\n}\n\n@keyframes backdrop-open {\n from {\n opacity: 0;\n }\n to {\n opacity: var(--opacity-16);\n }\n}\n\n@keyframes backdrop-close {\n from {\n opacity: var(--opacity-16);\n }\n to {\n opacity: 0;\n }\n}\n\n.Backdrop {\n background-color: color-mod(var(--inverse) a(var(--opacity-16)));\n height: 100vh;\n width: 100vw;\n position: fixed;\n left: 0;\n top: 0;\n display: none;\n align-items: center;\n z-index: 1000;\n overflow: auto;\n flex-direction: column;\n justify-content: center;\n touch-action: none;\n visibility: hidden;\n}\n\n.Backdrop--open {\n display: flex;\n visibility: visible;\n}\n\n.Backdrop-animation--open {\n animation: backdrop-open var(--duration--fast-02) var(--entrance-expressive-curve);\n}\n\n.Backdrop-animation--close {\n animation: backdrop-close var(--duration--fast-02) var(--exit-expressive-curve);\n}\n\n/* badge */\n\n.Badge {\n /* 160px */\n max-width: calc(var(--spacing-2) * 10);\n /* truncate */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: var(--font-size-s);\n line-height: var(--font-height-s);\n text-transform: uppercase;\n padding-right: var(--spacing-m);\n padding-left: var(--spacing-m);\n padding-top: var(--spacing-s);\n padding-bottom: var(--spacing-s);\n border-radius: var(--spacing-m);\n display: inline-block;\n box-sizing: border-box;\n font-weight: var(--font-weight-bold);\n cursor: default;\n}\n\n.Badge--primary {\n background: var(--primary);\n color: var(--white);\n}\n\n.Badge--secondary {\n background: var(--secondary-light);\n color: var(--inverse);\n}\n\n.Badge--success {\n background: var(--success);\n color: var(--white);\n}\n\n.Badge--alert {\n background: var(--alert);\n color: var(--white);\n}\n\n.Badge--warning {\n background: var(--warning);\n color: var(--warning-darker);\n}\n\n.Badge--accent1 {\n background: var(--accent1);\n color: var(--white);\n}\n\n.Badge--accent2 {\n background: var(--accent2);\n color: var(--white);\n}\n\n.Badge--accent3 {\n background: var(--accent3);\n color: var(--white);\n}\n\n.Badge--accent4 {\n background: var(--accent4);\n color: var(--accent4-darker);\n}\n\n.Badge--subtle-primary {\n color: var(--primary-darker);\n background: var(--primary-lightest);\n}\n\n.Badge--subtle-secondary {\n color: var(--text);\n background: var(--secondary-light);\n}\n\n.Badge--subtle-success {\n color: var(--success-darker);\n background: var(--success-lightest);\n}\n\n.Badge--subtle-alert {\n color: var(--alert-darker);\n background: var(--alert-lightest);\n}\n\n.Badge--subtle-warning {\n color: var(--warning-darker);\n background: var(--warning-lightest);\n}\n\n.Badge--subtle-accent1 {\n color: var(--accent1-darker);\n background: var(--accent1-lightest);\n}\n\n.Badge--subtle-accent2 {\n color: var(--accent2-darker);\n background: var(--accent2-lightest);\n}\n\n.Badge--subtle-accent3 {\n color: var(--accent3-darker);\n background: var(--accent3-lightest);\n}\n\n.Badge--subtle-accent4 {\n color: var(--accent4-darker);\n background: var(--accent4-lightest);\n}\n\n/* breadcrumbs */\n\n.Breadcrumbs {\n display: flex;\n align-items: center;\n}\n\n.Breadcrumbs-item {\n display: flex;\n align-items: center;\n}\n\n.Breadcrumbs-link {\n /* 160px */\n max-width: calc(var(--spacing-2) * 10);\n margin: var(--spacing-m) 0;\n}\n\n.Breadcrumbs-link:active {\n color: var(--inverse);\n}\n\n.Breadcrumbs-item:first-child .Breadcrumbs-link {\n margin-left: 0;\n}\n\n.Breadcrumbs-itemSeparator {\n color: var(--secondary);\n font-size: var(--font-size-s);\n line-height: var(--font-height-s);\n width: var(--spacing-m);\n margin: 0 var(--spacing-m);\n}\n\n.Breadcrumbs-dropdown {\n height: var(--font-height-m);\n}\n\n.Breadcrumbs-Button:focus {\n background: var(--secondary) !important;\n}\n\n.Button {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n box-sizing: border-box;\n position: relative;\n vertical-align: middle;\n cursor: pointer;\n user-select: none;\n border: 0;\n border-radius: var(--spacing-m);\n\n padding-top: var(--spacing);\n padding-bottom: var(--spacing);\n\n text-align: center;\n font-family: var(--font-family);\n font-weight: var(--font-weight-normal);\n font-size: var(--font-size);\n line-height: var(--font-height-s);\n color: var(--text-white);\n\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Button:disabled {\n cursor: not-allowed;\n pointer-events: none;\n}\n\n.Button:focus {\n outline: 0;\n}\n\n.Button--iconAlign-right {\n flex-direction: row-reverse;\n}\n\n.Button--tiny {\n height: var(--spacing-xl);\n padding-right: var(--spacing);\n padding-left: var(--spacing);\n padding-top: var(--spacing-m);\n padding-bottom: var(--spacing-m);\n}\n\n.Button--tinySquare {\n width: var(--spacing-xl);\n}\n\n.Button--regular {\n height: var(--spacing-3);\n padding-right: var(--spacing-l);\n padding-left: var(--spacing-l);\n}\n\n.Button--regularSquare {\n width: var(--spacing-3);\n}\n\n.Button--large {\n height: 40px;\n padding-right: var(--spacing-2);\n padding-left: var(--spacing-2);\n\n line-height: var(--font-height-m);\n font-size: var(--font-size-m);\n}\n\n.Button--largeSquare {\n width: 40px;\n}\n\n.Button--tinySquare .Button-icon,\n.Button--largeSquare .Button-icon,\n.Button--tinySquare .Spinner,\n.Button--largeSquare .Spinner {\n padding-left: var(--spacing-s);\n padding-right: var(--spacing-s);\n}\n\n.Button--expanded {\n width: 100%;\n}\n\n.Button-icon {\n line-height: inherit;\n display: flex;\n align-items: center;\n}\n\n.Button-icon--left {\n margin-right: var(--spacing);\n}\n\n.Button-icon--right {\n margin-left: var(--spacing);\n}\n\n.Button--tiny .Button-icon--left {\n margin-right: var(--spacing-m);\n}\n.Button--tiny .Button-icon--right {\n margin-left: var(--spacing-m);\n}\n\n.Button--basic {\n background: var(--secondary-light);\n color: var(--inverse);\n}\n\n.Button--basic:hover {\n background: var(--secondary);\n}\n\n.Button--basic:active {\n background: var(--secondary-dark);\n}\n\n.Button--basic:focus {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n}\n\n.Button--basic:disabled {\n background: var(--secondary-lighter);\n color: var(--inverse-lightest);\n}\n\n.Button--primary {\n background: var(--primary);\n}\n\n.Button--primary:hover {\n background: var(--primary-dark);\n}\n\n.Button--primary:active {\n background: var(--primary-darker);\n}\n\n.Button--primary:focus {\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.Button--primary:disabled {\n background: var(--primary-lighter);\n}\n\n.Button--success {\n background: var(--primary);\n}\n\n.Button--success:hover {\n background: var(--primary-dark);\n}\n\n.Button--success:active {\n background: var(--primary-darker);\n}\n\n.Button--success:focus {\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.Button--success:disabled {\n background: var(--primary-lighter);\n}\n\n.Button--alert {\n background: var(--alert);\n}\n\n.Button--alert:hover {\n background: var(--alert-dark);\n}\n\n.Button--alert:active {\n background: var(--alert-darker);\n}\n\n.Button--alert:focus {\n box-shadow: var(--shadow-spread) var(--alert-shadow);\n}\n\n.Button--alert:disabled {\n background: var(--alert-lighter);\n}\n\n.Button--transparent {\n background: transparent;\n color: var(--inverse);\n}\n\n.Button--transparent:hover {\n background: var(--secondary);\n}\n\n.Button--transparent:focus {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n}\n\n.Button--transparent:active {\n background: var(--secondary-dark);\n}\n\n.Button--transparent:focus:active {\n background: var(--secondary-dark);\n}\n\n.Button--transparent:disabled {\n background: transparent;\n color: var(--inverse-lightest);\n}\n\n.Button-spinner {\n display: flex;\n position: absolute;\n z-index: 1;\n}\n\n.Button--tiny .Spinner--small {\n height: var(--font-size-s);\n width: var(--font-size-s);\n}\n\n.Button--large .Spinner--small {\n height: var(--font-size-l);\n width: var(--font-size-l);\n}\n\n.Button--selected {\n background: var(--primary-lightest);\n color: var(--primary-dark);\n}\n\n.Button--selected:hover {\n background: var(--primary-lighter);\n}\n\n.Button--selected:active {\n background: var(--primary-lighter);\n color: var(--primary-darker);\n}\n\n.Button--selected:focus {\n background: var(--primary-lightest);\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.Button--selected:focus:active {\n background: var(--primary-lighter);\n}\n\n.Button--selected:disabled {\n background: var(--primary-lightest);\n color: var(--primary-lighter);\n}\n\n.Button-text--hidden {\n visibility: hidden;\n}\n\n.Button-text {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n/* calendar */\n\n.Calendar-wrapper {\n display: flex;\n flex-wrap: wrap;\n}\n\n.Calendar {\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n}\n\n.Calendar--small {\n padding: var(--spacing-l);\n padding-bottom: var(--spacing);\n width: 212px;\n}\n\n.Calendar-date--small {\n height: 248px;\n}\n\n.Calendar-month--small {\n height: 200px;\n}\n\n.Calendar-year--small {\n height: 200px;\n}\n\n.Calendar--large {\n padding-top: var(--spacing-2);\n padding-left: var(--spacing-2);\n padding-right: var(--spacing-2);\n padding-bottom: var(--spacing-l);\n width: 316px;\n}\n\n.Calendar-date--large {\n height: 324px;\n}\n\n.Calendar-month--large {\n height: 276px;\n}\n\n.Calendar-year--large {\n height: 272px;\n}\n\n.Calendar-header--large {\n position: relative;\n display: flex;\n justify-content: center;\n align-items: center;\n padding-bottom: var(--spacing-l);\n}\n\n.Calendar-header--small {\n position: relative;\n display: flex;\n justify-content: center;\n align-items: center;\n padding-bottom: var(--spacing);\n}\n\n.Calendar-headerIcon {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n user-select: none;\n}\n\n.Calendar-headerIcon--prev {\n left: 0;\n}\n\n.Calendar-headerIcon--next {\n right: 0;\n}\n\n.Calendar-headerContent {\n display: flex;\n white-space: nowrap;\n cursor: pointer;\n padding-top: var(--spacing-m);\n padding-bottom: var(--spacing-m);\n user-select: none;\n}\n\n.Calendar-body {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n justify-content: space-between;\n}\n\n.Calendar-valueRow {\n display: flex;\n justify-content: space-between;\n padding-top: var(--spacing-s);\n padding-bottom: var(--spacing-s);\n}\n\n.Calendar-valueWrapper {\n display: inline-flex;\n flex: 1 0 0;\n justify-content: center;\n position: relative;\n}\n\n.Calendar-valueWrapper--inRange {\n background: var(--primary-lightest);\n}\n\n.Calendar-valueWrapper--inRange .Calendar-inRangeValue:hover {\n background: var(--primary-lighter);\n}\n\n.Calendar-valueWrapper--inRange .Calendar-inRangeValue:active {\n background: var(--primary-light);\n}\n\n.Calendar-valueWrapper--inRangeError {\n background: var(--alert-lightest);\n}\n\n.Calendar-valueWrapper--start {\n background: linear-gradient(90deg, white 50%, var(--primary-lightest) 50%);\n border-radius: var(--spacing-m) 0 0 var(--spacing-m);\n}\n\n.Calendar-valueWrapper--startError {\n background: linear-gradient(90deg, white 50%, var(--alert-lightest) 50%);\n}\n\n.Calendar-valueWrapper--end {\n background: linear-gradient(90deg, var(--primary-lightest) 50%, white 50%);\n border-radius: 0 var(--spacing-m) var(--spacing-m) 0;\n}\n\n.Calendar-valueWrapper--hoverDate {\n background: linear-gradient(90deg, var(--primary-lightest) 10%, white 50%);\n border-radius: 0 var(--spacing-m) var(--spacing-m) 0;\n}\n\n.Calendar-valueWrapper--hoverEndDate {\n background: linear-gradient(90deg, white 50%, var(--primary-lightest) 10%);\n}\n\n.Calendar-valueWrapper--endError {\n background: linear-gradient(90deg, var(--alert-lightest) 50%, white 50%);\n}\n\n.Calendar-valueWrapper--startEnd {\n background: transparent;\n}\n\n.Calendar-value {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n cursor: pointer;\n user-select: none;\n border-radius: var(--spacing-m);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Calendar-value:hover {\n background: var(--secondary-light);\n}\n\n.Calendar-value:active {\n background: var(--secondary);\n}\n\n.Calendar-value:active .Calendar-value--currDate {\n color: var(--primary-dark);\n}\n\n.Calendar-value--start:hover,\n.Calendar-value--end:hover {\n background: var(--primary-lightest);\n}\n\n.Calendar-value--startError:hover,\n.Calendar-value--endError:hover {\n background: var(--alert-lightest);\n}\n\n.Calendar-value--start,\n.Calendar-value--end {\n background: var(--primary-lightest);\n}\n\n.Calendar-value--startError,\n.Calendar-value--endError {\n background: var(--alert-lightest);\n}\n\n.Calendar-value--currDateMonthYear {\n background: var(--primary-lightest);\n}\n\n.Calendar-value--currDateMonthYear:hover {\n background: var(--primary-lighter);\n}\n\n.Calendar-value--currDateMonthYear:active {\n background: var(--primary-lighter);\n}\n\n.Calendar-value--currDate:active {\n color: var(--primary-dark);\n}\n\n.Calendar-value--active {\n background: var(--primary);\n font-weight: var(--font-weight-bold);\n}\n\n.Calendar-value--active:hover {\n background: var(--primary-dark);\n}\n\n.Calendar-value--active:active {\n background: var(--primary-darker);\n}\n\n.Calendar-yearValue--small,\n.Calendar-monthValue--small {\n height: var(--spacing-xl);\n width: var(--spacing-4);\n}\n\n.Calendar-yearValue--large,\n.Calendar-monthValue--large {\n height: var(--spacing-3);\n width: var(--spacing-5);\n}\n\n.Calendar-dateValue--small {\n height: var(--spacing-xl);\n width: var(--spacing-xl);\n}\n\n.Calendar-dateValue--large {\n height: var(--spacing-3);\n width: var(--spacing-3);\n}\n\n.Calendar-valueWrapper--dummy {\n opacity: var(--transparent-58);\n}\n\n.Calendar-value--disabled {\n pointer-events: none;\n}\n\n.Calendar-dayValues {\n display: flex;\n justify-content: center;\n padding-top: var(--spacing);\n padding-bottom: var(--spacing);\n}\n\n.Calendar-dateValues {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n justify-content: space-around;\n}\n\n.Calendar-dayValues .Calendar-value {\n padding: 0;\n}\n\n.Calendar-eventsIndicator {\n position: absolute;\n bottom: var(--spacing-s);\n width: var(--spacing-m);\n height: var(--spacing-m);\n background-color: var(--alert);\n border-radius: 50%;\n}\n.Calendar-eventsIndicator--small {\n width: 3px;\n height: 3px;\n}\n.Calendar-eventsIndicator--active {\n background-color: var(--white);\n}\n\n.Calendar-valueWrapper--inStartRange {\n background: linear-gradient(90deg, white 50%, var(--primary-lightest) 50%);\n}\n\n.Calendar-valueWrapper--inEndRange {\n background: linear-gradient(90deg, var(--primary-lightest) 50%, white 50%);\n}\n\n.Calendar-valueWrapper--inEdgeRange .Calendar-inRangeValue {\n background: var(--primary-lightest);\n}\n\n.Calendar-valueWrapper--inEdgeRange .Calendar-inRangeValue:hover {\n background: var(--primary-lighter);\n}\n\n.Calendar-valueWrapper--inEdgeRange .Calendar-inRangeValue:active {\n background: var(--primary-light);\n}\n\n/* badge */\n\n.Card {\n border-radius: var(--spacing-m);\n border: var(--spacing-xs) solid var(--secondary-light);\n position: relative;\n background-color: var(--white);\n}\n\n.Card--default,\n.Card--light,\n.Card--medium,\n.Card--dark {\n border: none;\n box-shadow: var(--shadow-s);\n}\n\n.Card--shadow10 {\n border: none;\n box-shadow: var(--shadow-s);\n}\n\n.Card--shadow20 {\n border: none;\n box-shadow: var(--shadow-m);\n}\n\n.Card--shadow30 {\n border: none;\n box-shadow: var(--shadow-l);\n}\n\n.Card-header {\n padding: var(--spacing-2) var(--spacing-2) var(--spacing-l) var(--spacing-2);\n}\n\n.Card-body {\n padding-left: var(--spacing-2);\n padding-right: var(--spacing-2);\n}\n\n.Card-footer {\n display: flex;\n align-items: center;\n box-sizing: border-box;\n position: absolute;\n bottom: 0;\n width: 100%;\n padding: var(--spacing-2);\n}\n\n.Card-footer--withSeperator {\n border-top: var(--spacing-xs) solid var(--secondary-light);\n}\n\n.CardSubdued {\n background: var(--card-subdued-bg);\n padding: var(--spacing-2);\n}\n\n.CardSubdued--top {\n border-top: var(--spacing-xs) solid var(--secondary-light);\n}\n\n.CardSubdued--left {\n border-left: var(--spacing-xs) solid var(--secondary-light);\n}\n\n.CardSubdued--right {\n border-right: var(--spacing-xs) solid var(--secondary-light);\n}\n\n.CardSubdued--bottom {\n border-bottom: var(--spacing-xs) solid var(--secondary-light);\n}\n\n.Box {\n width: 100%;\n border-radius: var(--spacing);\n padding: var(--spacing-l);\n}\n\n.Box--typing {\n padding-top: var(--spacing);\n padding-bottom: var(--spacing);\n}\n\n.Box--incoming {\n border: var(--spacing-xs) solid var(--secondary-light);\n background-color: var(--white);\n}\n\n.Box--outgoing {\n background-color: var(--secondary-lightest);\n}\n\n.Box-incoming--withStatus {\n border-bottom-left-radius: 0px;\n}\n\n.Box-outgoing--withStatus {\n border-bottom-right-radius: 0px;\n}\n\n.Box--urgent {\n border-color: var(--alert);\n}\n\n.ChatMessage-status {\n margin-top: var(--spacing-m);\n display: block;\n}\n\n.Checkbox {\n display: flex;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n line-height: initial;\n box-sizing: border-box;\n padding-top: var(--spacing-s);\n padding-bottom: var(--spacing-s);\n}\n\n.Checkbox-input {\n position: absolute;\n z-index: 2;\n opacity: 0;\n cursor: pointer;\n height: 100%;\n width: 100%;\n margin: 0;\n}\n\n.Checkbox-labelWrapper {\n padding-left: var(--spacing);\n display: flex;\n flex-direction: column;\n min-width: 0;\n}\n\n.Checkbox-label {\n display: flex;\n cursor: pointer;\n}\n\n.Checkbox-label--tiny {\n font-weight: var(--font-weight-bold);\n}\n\n.Checkbox-outerWrapper {\n position: relative;\n margin-top: var(--spacing-s);\n}\n\n.Checkbox-outerWrapper--regular {\n height: var(--spacing-2);\n min-width: var(--spacing-2);\n}\n\n.Checkbox-outerWrapper--tiny {\n height: var(--spacing-l);\n min-width: var(--spacing-l);\n}\n\n/* Type: Unchecked */\n\n.Checkbox-wrapper {\n top: 0;\n left: 0;\n border-radius: var(--spacing-s);\n display: flex;\n align-items: center;\n box-sizing: border-box;\n height: 100%;\n width: 100%;\n justify-content: center;\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Checkbox-input:focus {\n outline: 0;\n}\n\n.Checkbox-input ~ .Checkbox-wrapper--default {\n border: var(--spacing-xs) solid var(--secondary-dark);\n background-color: var(--shadow-0);\n}\n\n.Checkbox-input:focus ~ .Checkbox-wrapper--default {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n}\n\n.Checkbox-input:hover ~ .Checkbox-wrapper--default {\n border: var(--spacing-xs) solid var(--inverse-lightest);\n background-color: var(--shadow-0);\n}\n\n.Checkbox-input:active ~ .Checkbox-wrapper--default {\n border: var(--spacing-xs) solid var(--inverse-lightest);\n background-color: var(--secondary-light);\n}\n\n.Checkbox--disabled {\n pointer-events: none;\n}\n\n.Checkbox--disabled .Checkbox-wrapper--default {\n border: var(--spacing-xs) solid var(--secondary-light);\n background-color: var(--secondary-lightest);\n}\n\n/* Type: checked && Type: indeterminate */\n\n.Checkbox-input--checked ~ .Checkbox-wrapper,\n.Checkbox-input--indeterminate ~ .Checkbox-wrapper {\n background-color: var(--primary);\n border: 0;\n}\n\n.Checkbox-input--checked:focus ~ .Checkbox-wrapper,\n.Checkbox-input--indeterminate:focus ~ .Checkbox-wrapper {\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n background-color: var(--primary);\n border: 0;\n}\n\n.Checkbox-input--checked:hover ~ .Checkbox-wrapper,\n.Checkbox-input--indeterminate:hover ~ .Checkbox-wrapper {\n background-color: var(--primary-dark);\n border: 0;\n}\n\n.Checkbox-input--checked:active ~ .Checkbox-wrapper,\n.Checkbox-input--indeterminate:active ~ .Checkbox-wrapper {\n background-color: var(--primary-darker);\n border: 0;\n}\n\n.Checkbox--disabled .Checkbox-input--checked ~ .Checkbox-wrapper,\n.Checkbox--disabled .Checkbox-input--indeterminate ~ .Checkbox-wrapper {\n background-color: var(--primary-lighter);\n border: 0;\n}\n\n/* Error State -> Default */\n\n.Checkbox-wrapper--error {\n border: var(--spacing-xs) solid var(--alert);\n}\n\n.Checkbox-input:focus ~ .Checkbox-wrapper--error {\n box-shadow: var(--shadow-spread) var(--alert-shadow);\n}\n\n.Checkbox-input:hover ~ .Checkbox-wrapper--error {\n border: var(--spacing-xs) solid var(--alert-dark);\n}\n\n.Checkbox-input:active ~ .Checkbox-wrapper--error {\n border: var(--spacing-xs) solid var(--alert-darker);\n background-color: var(--secondary-light);\n}\n\n.Checkbox--disabled .Checkbox-wrapper--error {\n border: var(--spacing-xs) solid var(--alert-lighter);\n background-color: var(--secondary-lightest);\n}\n\n/* Error State -> Checked & Indeterminate */\n\n.Checkbox-input--checked ~ .Checkbox-wrapper--error,\n.Checkbox-input--indeterminate ~ .Checkbox-wrapper--error {\n border: var(--spacing-xs) solid var(--alert);\n}\n\n.Checkbox-input--checked:focus ~ .Checkbox-wrapper--error,\n.Checkbox-input--indeterminate:focus ~ .Checkbox-wrapper--error {\n border: var(--spacing-xs) solid var(--alert);\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.Checkbox-input--checked:hover ~ .Checkbox-wrapper--error,\n.Checkbox-input--indeterminate:hover ~ .Checkbox-wrapper--error {\n border: var(--spacing-xs) solid var(--alert-dark);\n}\n\n.Checkbox-input--checked:active ~ .Checkbox-wrapper--error,\n.Checkbox-input--indeterminate:active ~ .Checkbox-wrapper--error {\n background-color: var(--primary-darker);\n border: var(--spacing-xs) solid var(--alert-darker);\n}\n\n.Checkbox--disabled .Checkbox-input--checked ~ .Checkbox-wrapper--error,\n.Checkbox--disabled .Checkbox-input--indeterminate ~ .Checkbox-wrapper--error {\n border: var(--spacing-xs) solid var(--alert-lighter);\n}\n\n.Chip {\n display: flex;\n box-sizing: border-box;\n border-radius: var(--spacing-l);\n padding-right: var(--spacing);\n padding-left: var(--spacing);\n padding-top: var(--spacing-s);\n padding-bottom: var(--spacing-s);\n width: fit-content;\n justify-content: space-between;\n border-style: solid;\n border-width: var(--spacing-xs);\n align-items: center;\n flex-direction: row;\n cursor: default;\n height: var(--spacing-xl);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Chip-wrapper {\n display: inline-flex;\n align-items: center;\n}\n\n.Chip-icon--left {\n margin-right: var(--spacing-m);\n display: flex;\n align-items: center;\n}\n\n.Chip-icon--right {\n display: flex;\n align-items: center;\n border-radius: 10px;\n margin-left: var(--spacing-s);\n}\n\n.Chip--action {\n background: var(--secondary-light);\n border: 0px;\n cursor: pointer;\n}\n\n.Chip--action:hover {\n background: var(--secondary);\n}\n\n.Chip--action:focus-visible {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n outline: none;\n}\n\n.Chip--action:active {\n background: var(--secondary-dark);\n}\n\n.Chip-action--disabled {\n background: var(--secondary-lighter);\n border: 0px;\n outline: none;\n cursor: default;\n}\n\n.Chip--selection {\n background: var(--shadow-0);\n border-color: var(--stone);\n cursor: pointer;\n}\n\n.Chip--selection:hover {\n background: var(--secondary-lighter);\n border-color: var(--secondary-dark);\n}\n\n.Chip--selection:focus-visible {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n outline: none;\n}\n\n.Chip--selection:active {\n background: var(--secondary-light);\n border-color: var(--inverse-lightest);\n}\n\n.Chip-selection--disabled {\n background: var(--secondary-lightest);\n border-color: var(--secondary-lighter);\n}\n\n.Chip-selection--selected {\n background: var(--primary-lightest);\n border-color: var(--primary-lighter);\n}\n\n.Chip-selection--selected:hover {\n background: var(--primary-lighter);\n border-color: var(--primary-light);\n}\n\n.Chip-selection--selected:focus-visible {\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n outline: none;\n}\n\n.Chip-selection--selected:active {\n background: var(--primary-lighter);\n border-color: var(--primary-dark);\n}\n\n.Chip-selection--selected:active .Chip-icon,\n.Chip-selection--selected:active .Chip-text {\n color: var(--primary-darker);\n}\n\n.Chip-selection--selectedDisabled {\n background: var(--primary-lightest);\n border-color: var(--primary-lighter);\n}\n\n.Chip--input {\n background: var(--secondary-light);\n font-weight: var(--font-weight-normal);\n border: 0px;\n}\n\n.Chip--input:hover {\n background: var(--secondary);\n}\n\n.Chip--input:focus-visible,\n.Chip--input:focus {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n outline: none;\n}\n\n.Chip--input:active {\n background: var(--secondary-dark);\n}\n\n.Chip-input--disabled {\n background: var(--secondary-lighter);\n border: 0px;\n}\n\n.Chip-icon--right:focus-visible {\n outline: var(--spacing-s) solid var(--secondary-shadow);\n}\n\n.Chip-icon--right:hover {\n background-color: var(--secondary);\n}\n\n.Chip-icon--right:active {\n background-color: var(--secondary-dark);\n}\n\n.Chip-icon-disabled--right {\n pointer-events: none;\n}\n\n.Chip-icon--selected {\n border-radius: 10px;\n}\n\n.Chip-icon--selected:focus-visible {\n outline: var(--spacing-s) solid var(--primary-shadow);\n}\n\n.Chip-icon--selected:hover {\n background-color: var(--primary-lighter);\n}\n\n.Chip-icon--selected:active {\n background-color: var(--primary-light);\n}\n\n.Chip-selection--disabled:focus-visible,\n.Chip-icon-disabled--right:focus-visible,\n.Chip-selection--selectedDisabled:focus-visible,\n.Chip-input--disabled:focus-visible {\n outline: none;\n}\n\n.Chip-icon--clear {\n padding-right: var(--spacing-s);\n}\n\n.ChipGroup {\n display: inline-flex;\n}\n\n.ChipGroup-item {\n margin: 0 var(--spacing-m);\n}\n\n.ChipGroup-item:first-child {\n margin-left: 0;\n}\n\n.ChipGroup-item:last-child {\n margin-right: 0;\n}\n\n.ChipInput {\n display: flex;\n border-radius: var(--spacing-m);\n box-shadow: inset 0 0 0 var(--spacing-xs) var(--secondary);\n padding-left: 10px;\n padding-right: 10px;\n background: var(--white);\n cursor: text;\n flex: 100%;\n}\n\n.ChipInput:focus,\n.ChipInput:focus-visible {\n outline: var(--spacing-xs) var(--primary);\n}\n\n.ChipInput:hover {\n background: var(--secondary-lighter);\n border-color: var(--secondary-dark);\n}\n\n.ChipInput:focus-within {\n box-shadow: inset 0 0 0 var(--spacing-xs) var(--primary);\n background: var(--white);\n}\n\n.ChipInput--disabled {\n background: var(--secondary-lightest);\n border-color: var(--secondary-light);\n pointer-events: none;\n}\n\n.ChipInput--withChips {\n padding-right: var(--spacing);\n}\n\n.ChipInput--error,\n.ChipInput--error:focus-within {\n box-shadow: inset 0 0 0 var(--spacing-xs) var(--alert);\n}\n\n.ChipInput-wrapper {\n display: flex;\n flex: 100%;\n align-items: center;\n flex-wrap: wrap;\n}\n\n.ChipInput-border:focus-within {\n border-radius: var(--spacing-m);\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.ChipInput-border--error:focus-within {\n box-shadow: var(--shadow-spread) var(--alert-shadow);\n}\n\n.ChipInput-input {\n border: none;\n outline: none;\n display: flex;\n width: 100%;\n min-width: 30%;\n flex: 0px;\n box-sizing: border-box;\n height: var(--spacing-xl);\n margin-top: var(--spacing-m);\n margin-bottom: var(--spacing-m);\n font-family: var(--font-family);\n font-size: var(--font-size);\n}\n\n.ChipInput:hover .ChipInput-input {\n background: var(--secondary-lighter);\n}\n\n.ChipInput:focus-within .ChipInput-input {\n background: var(--white);\n}\n\n.ChipInput-icon {\n height: var(--spacing-2);\n padding: var(--spacing-s);\n margin-left: var(--spacing);\n margin-top: var(--spacing-0-75);\n cursor: pointer;\n border-radius: 10px;\n}\n\n.ChipInput-icon:hover {\n background-color: var(--secondary);\n}\n\n.ChipInput-icon:active {\n background-color: var(--secondary-dark);\n}\n\n.ChipInput-icon:focus,\n.ChipInput-icon:focus-visible {\n outline: var(--spacing-s) solid var(--secondary-shadow);\n}\n\n.ChoiceList {\n margin: 0;\n padding: 0;\n border: none;\n}\n\n.ChoiceList-checkbox--vertical {\n margin-top: var(--spacing-m);\n}\n\n.ChoiceList-radio--vertical {\n margin-top: var(--spacing-m);\n}\n\n.ChoiceList--alignHorizontal {\n display: flex;\n}\n\n.ChoiceList-checkbox--horizontal {\n margin-left: var(--spacing-xl);\n}\n\n.ChoiceList-radio--horizontal {\n margin-left: var(--spacing-xl);\n}\n\n.Collapsible-wrapper {\n position: relative;\n z-index: 600;\n}\n\n.Collapsible-wrapper--overlay {\n margin-right: 40px;\n}\n\n.Collapsible {\n display: inline-flex;\n flex-direction: column;\n background-color: var(--secondary-lightest);\n width: var(--spacing-4);\n height: 100%;\n transition: width 240ms;\n transition-timing-function: cubic-bezier(0.4, 0.14, 0.3, 1);\n}\n\n.Collapsible--overlay {\n position: absolute;\n}\n\n.Collapsible--shadow {\n box-shadow: var(--shadow-l);\n clip-path: inset(0px -16px 0px 0px);\n}\n\n.Collapsible-body {\n flex-grow: 1;\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n.Collapsible-footer {\n padding-top: var(--spacing-m);\n padding-bottom: var(--spacing-m);\n box-sizing: border-box;\n cursor: pointer;\n display: flex;\n}\n\n.Collapsible-footer:hover {\n background-color: var(--secondary-lighter);\n}\n\n.Collapsible-footer:focus,\n.Collapsible-footer:focus-visible {\n outline: none;\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n}\n\n.Collapsible-footer:active {\n background-color: var(--secondary-light);\n}\n\n.Collapsible-footer--seperator {\n border-top: var(--spacing-xs) solid var(--secondary-light);\n}\n\n.DateRangePicker {\n display: flex;\n}\n\n.DateRangePicker--left {\n flex-direction: row;\n}\n\n.DateRangePicker--right {\n flex-direction: row-reverse;\n}\n\n.DateRangePicker-input {\n box-sizing: border-box;\n}\n\n.DateRangePicker-input--startDate {\n padding-right: var(--spacing-m);\n}\n\n.DateRangePicker-input--endDate {\n padding-left: var(--spacing-m);\n}\n\n@media (max-width: 576px) {\n .DateRangePicker-input {\n padding: 0;\n }\n\n .DateRangePicker-input--endDate {\n padding-top: var(--spacing);\n }\n}\n\n.Divider {\n border: none;\n margin: 0;\n}\n\n.Divider--vertical {\n width: 1px;\n background: var(--secondary-light);\n}\n\n.Divider--horizontal {\n height: 1px;\n}\n\n.Divider--basic {\n background: var(--secondary-light);\n}\n\n.Divider--header {\n background: var(--secondary-dark);\n}\n\n.Dropdown {\n width: 100%;\n position: relative;\n}\n\n.Dropdown-wrapper {\n margin-top: var(--spacing-m);\n margin-bottom: var(--spacing-m);\n}\n\n.Dropdown-inputWrapper {\n border-bottom: var(--spacing-xs) solid var(--secondary-dark);\n}\n\n.Dropdown-inputWrapper:focus-within {\n border-bottom: var(--spacing-xs) solid var(--primary);\n}\n\n.Dropdown-input {\n min-width: unset !important;\n}\n\n.Dropdown-input,\n.Dropdown-input:focus-within {\n border: unset !important;\n box-shadow: none !important;\n}\n\n.Dropdown-section {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin-left: var(--spacing-l);\n margin-top: var(--spacing-l);\n margin-bottom: var(--spacing-0-75);\n}\n\n.Dropdown-section--withClear {\n margin-top: var(--spacing);\n margin-bottom: var(--spacing-s);\n}\n\n.Dropdown-buttonWrapper {\n display: flex;\n justify-content: flex-end;\n padding-top: var(--spacing);\n padding-right: var(--spacing);\n padding-bottom: var(--spacing);\n border-top: var(--spacing-xs) solid var(--secondary-light);\n}\n\n.Dropdown-footer {\n padding-left: var(--spacing-l);\n padding-bottom: var(--spacing-m);\n padding-top: var(--spacing);\n box-sizing: border-box;\n}\n\n.Option {\n display: flex;\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Option,\n.Option-loading {\n padding-top: var(--spacing-0-75);\n padding-bottom: var(--spacing-0-75);\n padding-left: var(--spacing-l);\n padding-right: var(--spacing);\n}\n\n.Option-checkbox .Checkbox-outerWrapper {\n background-color: var(--shadow-0);\n}\n\n.Option-checkboxWrapper {\n display: block;\n}\n\n.OptionCheckbox {\n width: 100%;\n padding-left: var(--spacing-l);\n padding-top: var(--spacing-0-75);\n padding-bottom: var(--spacing-0-75);\n}\n\n.Option--active,\n.Option-checkbox--active {\n background-color: var(--secondary-lightest);\n cursor: pointer;\n}\n\n.Option--active:hover,\n.Option-checkbox--active:hover {\n background-color: var(--secondary-lighter);\n}\n\n.Option--active:active,\n.Option-checkbox--active:active {\n background-color: var(--secondary-light);\n cursor: pointer;\n}\n\n.Option--active {\n transition: var(--standard-productive-curve);\n}\n\n.Option-loading {\n pointer-events: none;\n}\n\n.Option--selected {\n background-color: var(--primary-lightest);\n}\n\n.Option--selected:hover {\n background-color: var(--primary-lighter);\n}\n\n.Option--selected:active {\n background-color: var(--primary-lighter);\n color: var(--primary-darker);\n}\n\n.Option--selected:active .Option-text,\n.Option--selected:active .Option-subInfo {\n color: var(--primary-darker);\n}\n\n.Option--disabled,\n.OptionWrapper--disabled {\n pointer-events: auto;\n cursor: default;\n}\n\n.Option-label {\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}\n\n.OptionCheckbox .Checkbox-label {\n padding-right: var(--spacing-l);\n width: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.Option-text,\n.OptionCheckbox .Text {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.Option-text--wrap,\n.Dropdown-wrapper--wrap .OptionCheckbox .Text {\n white-space: unset;\n}\n\n.Option--icon {\n padding-left: var(--spacing);\n}\n\n.Option-icon {\n display: flex;\n}\n\n.Option-icon {\n height: fit-content;\n line-height: var(--font-height);\n}\n\n.DropdownButton {\n width: 100%;\n justify-content: space-between;\n padding-top: unset;\n padding-bottom: unset;\n background: var(--secondary-light);\n color: var(--text);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.DropdownButton-wrapper {\n width: 100%;\n display: flex;\n flex-direction: row;\n overflow: hidden;\n align-items: center;\n}\n\n.DropdownButton-text {\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.DropdownButton--tiny {\n height: var(--spacing-xl);\n padding-right: var(--spacing);\n padding-left: var(--spacing);\n}\n\n.DropdownButton--regular {\n height: var(--spacing-3);\n padding-right: var(--spacing);\n padding-left: var(--spacing-l);\n}\n\n.DropdownButton--tinySquare {\n padding-left: var(--spacing-m);\n padding-right: var(--spacing-m);\n}\n\n.DropdownButton--regularSquare {\n padding-left: var(--spacing);\n padding-right: var(--spacing);\n}\n\n.DropdownButton--placeholder {\n color: var(--text-subtle);\n}\n\n.DropdownButton:hover {\n background: var(--secondary);\n color: var(--text);\n}\n\n.DropdownButton:focus {\n background-color: var(--secondary-light);\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n}\n\n.DropdownButton:active,\n.DropdownButton--open {\n background-color: var(--secondary-dark) !important;\n color: var(--text) !important;\n animation-timing-function: cubic-bezier(0, 0, 0.38, 0.9);\n animation-duration: 120ms;\n}\n\n.DropdownButton:disabled {\n background: var(--secondary-lighter);\n color: var(--text-disabled);\n pointer-events: none;\n}\n\n.DropdownButton--icon {\n padding-left: var(--spacing);\n}\n\n.DropdownButton--error {\n border: var(--spacing-xs) solid var(--alert);\n}\n\n.Dropzone {\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: var(--white);\n border-radius: var(--spacing-m);\n width: 100%;\n background-image: linear-gradient(to right, var(--secondary) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(var(--secondary) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(to right, var(--secondary) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(var(--secondary) 50%, rgba(255, 255, 255, 0) 0%);\n background-position: top, right, bottom, left;\n background-repeat: repeat-x, repeat-y;\n background-size: var(--spacing-2) var(--spacing-xs), var(--spacing-xs) var(--spacing-2);\n transition: background-color var(--duration--moderate-01) var(--standard-productive-curve);\n box-sizing: border-box;\n}\n\n.Dropzone--active {\n background-color: var(--primary-lightest);\n background-image: linear-gradient(to right, var(--primary) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(var(--primary) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(to right, var(--primary) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(var(--primary) 50%, rgba(255, 255, 255, 0) 0%);\n background-position: top, right, bottom, left;\n background-repeat: repeat-x, repeat-y;\n background-size: var(--spacing-2) var(--spacing-xs), var(--spacing-xs) var(--spacing-2);\n transition: background-color var(--duration--moderate-01) var(--standard-productive-curve);\n box-sizing: border-box;\n}\n\n.Dropzone-animation {\n animation-delay: var(--duration--fast-02);\n animation-fill-mode: forwards;\n}\n\n.Dropzone-animation--default {\n animation: dropzoneDefault var(--duration--moderate-01) var(--entrance-productive-curve);\n}\n\n.Dropzone-animation--active {\n animation: dropzoneActive var(--duration--moderate-01) var(--entrance-productive-curve);\n}\n\n@keyframes dropzoneDefault {\n from {\n opacity: 0;\n padding-top: 20px;\n }\n\n to {\n opacity: 1;\n padding-top: var(--spacing-l);\n }\n}\n\n@keyframes dropzoneActive {\n from {\n opacity: 0;\n padding-top: 20px;\n }\n\n to {\n opacity: 1;\n padding-top: var(--spacing-l);\n }\n}\n\n.Dropzone-standard--default {\n animation: dropzoneStandardDefault var(--duration--moderate-01) var(--entrance-productive-curve);\n}\n\n.Dropzone-standard--active {\n animation: dropzoneStandardActive var(--duration--moderate-01) var(--entrance-productive-curve);\n}\n\n@keyframes dropzoneStandardDefault {\n from {\n opacity: 0;\n padding-top: var(--spacing-2);\n }\n\n to {\n opacity: 1;\n padding-top: var(--spacing);\n }\n}\n\n@keyframes dropzoneStandardActive {\n from {\n opacity: 0;\n padding-top: var(--spacing-2);\n }\n\n to {\n opacity: 1;\n padding-top: var(--spacing);\n }\n}\n\n.Dropzone--error {\n background: var(--alert-lightest);\n background-image: linear-gradient(to right, var(--alert) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(var(--alert) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(to right, var(--alert) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(var(--alert) 50%, rgba(255, 255, 255, 0) 0%);\n background-position: top, right, bottom, left;\n background-repeat: repeat-x, repeat-y;\n background-size: var(--spacing-2) var(--spacing-xs), var(--spacing-xs) var(--spacing-2);\n}\n\n.Dropzone--disabled {\n background-image: linear-gradient(to right, var(--secondary) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(var(--secondary) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(to right, var(--secondary) 50%, rgba(255, 255, 255, 0) 0%),\n linear-gradient(var(--secondary) 50%, rgba(255, 255, 255, 0) 0%);\n background-position: top, right, bottom, left;\n background-repeat: repeat-x, repeat-y;\n background-size: var(--spacing-2) var(--spacing-xs), var(--spacing-xs) var(--spacing-2);\n}\n\n.Dropzone--standard {\n flex-direction: column;\n height: 196px;\n min-width: 480px;\n padding: var(--spacing) var(--spacing-xl) var(--spacing-2) var(--spacing-xl);\n}\n\n.Dropzone--compressed {\n flex-direction: row;\n height: 124px;\n min-width: 400px;\n padding: var(--spacing-l) var(--spacing-xl) var(--spacing-2) var(--spacing-xl);\n}\n\n.Dropzone--tight {\n height: 124px;\n min-width: 320px;\n padding: var(--spacing-l) var(--spacing-xl) var(--spacing-2) var(--spacing-xl);\n}\n\n.DropzoneWrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n\n.DropzoneWrapper--standard,\n.DropzoneWrapper--tight {\n align-items: center;\n}\n\n.DropzoneWrapper--compressed {\n align-items: start;\n}\n\n.Dropzone-icon--standard {\n margin-bottom: var(--spacing-l);\n}\n\n.Dropzone-icon--compressed {\n margin-right: var(--spacing-xl);\n}\n\n.Dropzone-icon--disabled {\n fill: var(--inverse-lightest);\n}\n\n.Dropzone-icon--default {\n fill: var(--inverse-lighter);\n}\n\n.Dropzone-icon--active {\n fill: var(--primary);\n}\n\n.Dropzone-icon--error {\n fill: var(--alert);\n}\n\n.EditableChipInput {\n position: relative;\n width: 100%;\n}\n.EditableChipInput-default {\n display: flex;\n align-items: center;\n padding-left: var(--spacing-l);\n border-left: var(--spacing-xs) solid transparent;\n min-height: var(--spacing-3);\n flex-wrap: wrap;\n}\n\n.EditableChipInput-defaultWithChips {\n display: flex;\n align-items: center;\n padding-left: var(--spacing);\n border: var(--spacing-xs) solid transparent;\n padding-top: var(--spacing-xs);\n padding-bottom: var(--spacing-xs);\n max-width: calc(100% - 28px);\n flex-wrap: wrap;\n}\n\n.EditableChipInput-defaultWithChips:hover,\n.EditableChipInput-default:hover {\n background-color: var(--secondary-lightest);\n}\n\n.EditableChipInput-chipInput {\n padding-left: var(--spacing);\n}\n\n.EditableChipInput-actions {\n position: absolute;\n display: flex;\n justify-content: flex-end;\n margin-top: var(--spacing-m);\n width: 100%;\n}\n\n.EditableDropdown {\n width: 100%;\n}\n\n.EditableDropdown-default {\n display: flex;\n align-items: center;\n box-sizing: border-box;\n height: var(--spacing-3);\n padding-left: var(--spacing-l);\n}\n\n.EditableInput {\n position: relative;\n display: inline-flex;\n flex-direction: column;\n width: 100%;\n}\n\n.EditableInput-actions {\n position: absolute;\n display: flex;\n justify-content: flex-end;\n margin-top: var(--spacing-m);\n width: 100%;\n}\n\n.EditableInput-actions--regular {\n top: var(--spacing-3);\n}\n\n.EditableInput-actions--tiny {\n top: var(--spacing-xl);\n}\n\n.EditableInput-default {\n border: var(--spacing-xs) solid transparent;\n box-sizing: border-box;\n white-space: nowrap;\n padding-left: var(--spacing-l);\n padding-right: var(--spacing-l);\n display: flex;\n align-items: center;\n}\n\n.EditableInput-default--regular {\n min-width: var(--spacing-9);\n height: var(--spacing-3);\n}\n\n.EditableInput-default--tiny {\n min-width: var(--spacing-6);\n height: var(--spacing-xl);\n}\n\n.EditableInput-Input--tiny {\n min-width: var(--spacing-6) !important;\n width: 100%;\n}\n\n.EmptyState {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n background: transparent;\n}\n\n.EmptyState-Wrapper {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n background: transparent;\n width: 100%;\n}\n\n.EmptyState-image {\n display: flex;\n justify-content: center;\n width: 100%;\n height: 100%;\n object-fit: contain;\n}\n\n.EmptyState-title {\n text-align: center;\n max-width: 480px;\n}\n\n.EmptyState-description {\n text-align: center;\n margin-top: var(--spacing-m);\n max-width: 360px;\n}\n\n.EmptyState-title--large {\n margin-top: var(--spacing-4);\n}\n\n.EmptyState-title--small {\n margin-top: var(--spacing-xl);\n}\n\n.EmptyState-description--large {\n margin-bottom: var(--spacing-xl);\n}\n\n.EmptyState-description--small {\n margin-bottom: var(--spacing-2);\n}\n\n.EmptyState-text {\n display: flex;\n text-align: center;\n justify-content: center;\n}\n\n.EmptyState-actions {\n display: flex;\n justify-content: center;\n}\n\n.EmptyState-title--compressed {\n margin-top: var(--spacing-2);\n}\n.EmptyState-title--standard {\n margin-top: var(--spacing-xl);\n}\n.EmptyState-title--tight {\n margin-top: var(--spacing-l);\n}\n\n.EmptyState-actions--compressed {\n margin-top: var(--spacing-2);\n}\n\n.EmptyState-actions--standard {\n margin-top: var(--spacing-xl);\n}\n\n.EmptyState-actions--tight {\n margin-top: var(--spacing-l);\n}\n\n.FileIcon {\n padding: var(--spacing);\n border-radius: 50%;\n}\n.FileItem:not(:last-child) {\n border-bottom: var(--border);\n width: 100%;\n box-sizing: border-box;\n}\n.FileItem {\n padding-top: var(--spacing);\n padding-bottom: var(--spacing);\n padding-left: var(--spacing-l);\n padding-right: var(--spacing);\n}\n.FileItem-fileContent {\n display: flex;\n justify-content: center;\n align-items: center;\n min-width: 0;\n}\n.FileItem-actions {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-shrink: 0;\n}\n.FileItem-file {\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n.FileItem-size {\n margin-right: var(--spacing);\n margin-left: var(--spacing);\n flex-shrink: 0;\n}\n.FileItem-text {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n margin-right: var(--spacing);\n margin-left: var(--spacing-l);\n}\n.FileItem-error {\n margin-left: 40px;\n}\n\n.FileIcon--image {\n background: var(--alert-lightest);\n color: var(--alert);\n}\n.FileIcon--audio {\n background: var(--accent1-lightest);\n color: var(--accent1);\n}\n.FileIcon--video {\n background: var(--accent2-lightest);\n color: var(--accent2);\n}\n.FileIcon--application {\n background: var(--accent3-lightest);\n color: var(--accent3);\n}\n.FileIcon--others {\n background: var(--success-lightest);\n color: var(--success);\n}\n.FileIcon--animate {\n animation: fadeIn var(--duration--moderate-01) var(--entrance-productive-curve);\n}\n\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n.FileUploader {\n display: flex;\n flex-direction: column;\n}\n\n.FileUploaderButton {\n width: fit-content;\n position: relative;\n}\n\n.FileUploaderButton-input {\n height: 100%;\n width: 100%;\n top: 0;\n position: absolute;\n opacity: 0;\n font-size: 0;\n z-index: 2;\n cursor: pointer;\n}\n\n.FileUploaderItem {\n width: var(--spacing-9);\n}\n\n.FileUploaderItem-text {\n width: var(--spacing-8);\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.FileUploaderItem-file {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding-top: var(--spacing-s);\n padding-bottom: var(--spacing-s);\n}\n\n@keyframes fullscreenModal-open {\n from {\n opacity: 0;\n transform: translateY(20px);\n }\n to {\n opacity: 1;\n transform: translateY(0px);\n }\n}\n\n@keyframes fullscreenModal-close {\n from {\n opacity: 1;\n transform: translateY(0px);\n }\n to {\n opacity: 0;\n transform: translateY(20px);\n }\n}\n\n.FullscreenModal {\n position: fixed !important;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n box-sizing: border-box;\n padding-top: var(--spacing-4);\n background-color: var(--white);\n overflow: auto;\n display: flex;\n flex-direction: column;\n}\n\n.FullscreenModal-animation--open {\n animation: fullscreenModal-open 240ms cubic-bezier(0, 0, 0.3, 1);\n}\n\n.FullscreenModal-animation--close {\n animation: fullscreenModal-close 120ms cubic-bezier(0.4, 0.14, 1, 1);\n}\n\n.FullscreenModal-header {\n display: flex;\n justify-content: flex-start;\n padding-top: var(--spacing-l);\n padding-bottom: var(--spacing-l);\n padding-right: var(--spacing-l);\n}\n\n.FullscreenModal-footer {\n justify-content: flex-end;\n padding-top: var(--spacing-2);\n padding-bottom: var(--spacing-2);\n}\n\n.FullscreenModal-body {\n padding: var(--spacing-2) var(--spacing-xl);\n}\n\n/** Grid **/\n\n.Grid-wrapper {\n display: flex;\n position: relative;\n overflow: hidden;\n height: 100%;\n}\n\n.Grid {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n height: 100%;\n overflow: hidden;\n background: var(--white);\n}\n\n.Grid--resource .Grid-row--body:hover,\n.Grid--resource .Grid-row--body:hover .Grid-cellGroup {\n cursor: pointer;\n background: var(--secondary-lightest);\n}\n\n.Grid--resource .Grid-row--body:active,\n.Grid--resource .Grid-row--body:active .Grid-cellGroup {\n background: var(--secondary-lighter);\n}\n\n.Grid--resource .Grid-row--body:focus {\n box-shadow: var(--shadow-spread) color-mod(var(--secondary) a(var(--opacity-4)));\n outline: none;\n}\n\n.Grid--pinned {\n position: absolute;\n height: 100%;\n z-index: 5;\n overflow-x: hidden;\n -ms-overflow-style: none;\n border-right: 3px solid var(--secondary);\n}\n\n.Grid-pinned::-webkit-scrollbar {\n display: none;\n}\n\n.Grid--main {\n flex-grow: 1;\n}\n\n.Grid--comfortable .Grid-cell--head {\n min-height: 40px;\n}\n\n.Grid--comfortable .Grid-cell--body {\n padding-top: var(--spacing-l);\n padding-bottom: var(--spacing-l);\n}\n\n.Grid--standard .Grid-cell--head {\n min-height: 40px;\n}\n\n.Grid--standard .Grid-cell--body {\n padding-top: var(--spacing-l);\n padding-bottom: var(--spacing-l);\n}\n\n.Grid--compressed .Grid-cell--head {\n min-height: 40px;\n}\n\n.Grid--compressed .Grid-cell--body {\n padding-top: var(--spacing);\n padding-bottom: var(--spacing);\n}\n\n.Grid--tight .Grid-cell--head {\n min-height: var(--spacing-3);\n}\n\n.Grid--tight .Grid-cell--body {\n padding-top: var(--spacing-m);\n padding-bottom: var(--spacing-m);\n}\n\n.Grid-head {\n display: flex;\n flex: 0 0 auto;\n overflow-x: auto;\n border-bottom: var(--border);\n}\n\n.Grid-head::-webkit-scrollbar {\n display: none;\n}\n\n.Grid-headCell {\n display: flex;\n height: 100%;\n flex-direction: row;\n align-items: center;\n}\n\n.Grid-headCell--draggable {\n cursor: grab;\n}\n\n.Grid-headCell--draggable:active {\n cursor: grabbing;\n z-index: 3;\n opacity: 1;\n background-color: inherit;\n color: inherit;\n}\n\n.Grid-body {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n overflow-x: auto;\n overflow-y: overlay;\n}\n\n.Grid-rowWrapper {\n display: inline-flex;\n flex-direction: column;\n min-width: fit-content;\n flex-shrink: 0;\n border-bottom: var(--border);\n}\n\n.Grid-row {\n display: flex;\n flex-grow: 1;\n flex-shrink: 0;\n box-sizing: border-box;\n background: var(--white);\n transition: var(--duration--fast-02) var(--standard-productive-curve);\n transition-delay: var(--duration--fast-01);\n}\n\n.Grid-row--body {\n border-color: var(--secondary-light);\n}\n\n.Grid-row--selected,\n.Grid-row--selected .Grid-cellGroup {\n background: color-mod(var(--primary-lightest) a(var(--opacity-12)));\n transition: var(--duration--fast-02) var(--standard-productive-curve);\n}\n\n.Grid-row--selected:hover,\n.Grid-row--selected .Grid-cellGroup:hover {\n background: color-mod(var(--primary-lighter) a(var(--opacity-12))) !important;\n}\n\n.Grid-row--selected:active,\n.Grid-row--selected .Grid-cellGroup:active {\n background: var(--primary-lighter) !important;\n}\n\n.Grid-row--selected:focus,\n.Grid-row--selected .Grid-cellGroup:focus {\n outline: none;\n box-shadow: var(--shadow-spread) color-mod(var(--primary) a(var(--opacity-4)));\n}\n\n.Grid-rowWrapper:last-child .Grid-row--body {\n border-bottom: 0;\n}\n\n.GridBody-padding {\n flex-shrink: 0;\n}\n\n.Grid-nestedRow {\n width: 100%;\n overflow: hidden;\n}\n\n.Grid-nestedRowTrigger {\n margin-right: var(--spacing-l);\n cursor: pointer;\n}\n\n.Grid-nestedRow .Grid-rowWrapper {\n border-bottom: 0;\n}\n\n.Grid-nestedRow .Grid-cell:first-child {\n padding-left: calc(var(--spacing-3) + var(--spacing));\n}\n\n.Grid-nestedRowPlaceholder {\n width: var(--spacing-xl);\n margin-right: var(--spacing-l);\n}\n\n.Grid-cell {\n position: relative;\n box-sizing: border-box;\n padding-left: var(--spacing-l);\n padding-right: var(--spacing-l);\n}\n\n.Grid-cell--body {\n padding-right: var(--spacing-l);\n}\n\n.Grid-cell--head {\n overflow: hidden;\n padding-right: var(--spacing-m);\n}\n\n.Grid-cell--dragged {\n z-index: 3;\n opacity: 1;\n background-color: inherit;\n color: inherit;\n}\n\n.Grid-cell--separator {\n border-left: var(--border);\n border-color: var(--secondary-light);\n}\n\n.Grid-cell--selected {\n background: var(--primary-lightest);\n}\n\n.Grid-cell--nestedRow {\n padding-left: var(--spacing);\n}\n\n.Grid-cell--head.Grid-cell:first-of-type {\n border-left: none;\n}\n\n/* .Grid .Grid-cellGroup--main .Grid-cell--head.Grid-cell:last-child {\n border-right: var(--border);\n} */\n\n.Grid-row--disabled {\n opacity: var(--opacity-10);\n pointer-events: none;\n}\n\n.Grid-cell--head.Grid-cell--selected {\n background: var(--primary-light);\n}\n\n.Grid-cell--checkbox {\n width: unset;\n min-width: unset;\n display: flex;\n align-items: center;\n z-index: 1;\n padding-right: 0 !important;\n overflow: visible !important;\n}\n\n.Grid-sortingIcons {\n display: flex;\n align-items: center;\n padding-left: var(--spacing-m);\n}\n\n.Grid-cellReorder {\n display: flex;\n align-items: center;\n cursor: grab;\n}\n\n.Grid-cellReorder:active {\n cursor: grabbing;\n}\n\n.Grid-cellContent {\n display: flex;\n align-items: center;\n flex-grow: 1;\n height: 100%;\n box-sizing: border-box;\n z-index: inherit;\n}\n\n.Grid-cell--head .Grid-cellContent {\n overflow: hidden;\n}\n\n.Grid-cellResize {\n position: absolute;\n right: 0;\n width: var(--spacing-m);\n cursor: ew-resize;\n height: 100%;\n}\n\n.Grid-cellSortIcon {\n display: flex;\n align-items: center;\n cursor: pointer;\n}\n\n.Grid-cellSortIcon:hover {\n background: var(--secondary);\n}\n\n.Grid-cellResize:hover {\n background: var(--primary);\n}\n\n.Grid-reorderHighlighter {\n position: absolute;\n height: 100%;\n border: 3px solid var(--primary-light);\n z-index: 10;\n}\n\n.Grid-cellGroup {\n display: flex;\n box-sizing: border-box;\n background: var(--white);\n}\n\n.Grid-cellGroup--pinned {\n position: sticky;\n z-index: 4;\n}\n\n.Grid-cellGroup--pinned-left {\n left: 0;\n border-style: inset;\n border-right: var(--spacing-xs) solid rgba(213, 213, 213, var(--opacity-3));\n border-right-width: 4px;\n border-image: linear-gradient(\n to right,\n var(--secondary-light),\n var(--secondary-light) 25%,\n color-mod(var(--secondary) a(0.1)) 25%,\n color-mod(var(--secondary) a(0.1))\n )\n 1 100%;\n}\n\n.Grid-cellGroup--pinned-right {\n right: 0;\n border-style: inset;\n border-left: var(--spacing-xs) solid rgba(213, 213, 213, var(--opacity-3));\n border-left-width: 4px;\n border-image: linear-gradient(\n to left,\n var(--secondary-light),\n var(--secondary-light) 25%,\n color-mod(var(--secondary) a(0.1)) 25%,\n color-mod(var(--secondary) a(0.1))\n )\n 1 100%;\n}\n\n.Grid .Checkbox-wrapper {\n margin-right: 0;\n}\n\n/** Grid Cell **/\n\n.GridCell {\n display: flex;\n align-items: center;\n width: 100%;\n box-sizing: border-box;\n}\n\n.GridCell--align-left {\n /* flex-direction: row; */\n justify-content: flex-start;\n text-align: left;\n}\n\n.GridCell--align-right {\n /* flex-direction: row-reverse; */\n justify-content: flex-end;\n text-align: right;\n}\n\n.GridCell--align-center {\n justify-content: center;\n text-align: center;\n}\n\n.GridCell--default {\n}\n\n.GridCell--metaList {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n overflow: hidden;\n}\n\n.GridCell--statusHint .StatusHint {\n overflow: hidden;\n}\n\n.GridCell--statusHint .StatusHint .Text {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.GridCell--avatar .Avatar {\n margin: 0;\n}\n\n.GridCell-metaListWrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n width: 100%;\n overflow: hidden;\n}\n\n.GridCell-metaList {\n display: flex;\n}\n\n.GridCell-metaList .Text {\n display: flex;\n align-items: center;\n}\n\n.GridCell-metaList .Text::before {\n content: '';\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--spacing-m);\n height: var(--spacing-m);\n border-radius: 50%;\n background: var(--secondary);\n margin: 0 var(--spacing);\n}\n\n.GridCell-metaList .Text:first-child::before {\n display: none;\n}\n\n.GridCell--metaList ul li:first-child {\n margin-left: 0;\n}\n\n/* .GridCell-image {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: var(--spacing);\n}\n\n.Image {\n z-index: 0;\n height: 100%;\n width: 100%;\n} */\n\n/** Header **/\n\n/** Table-header **/\n\n.Header {\n background: var(--white);\n padding: var(--spacing-l);\n border-bottom: var(--border);\n}\n\n.Header-content {\n display: flex;\n}\n\n.Header-content--bottom {\n align-items: center;\n justify-content: space-between;\n}\n\n.Header-search {\n width: var(--spacing-9);\n margin-bottom: var(--spacing-2);\n}\n\n.Header-label {\n display: flex;\n flex-grow: 1;\n align-items: center;\n}\n\n.Header-label .Checkbox {\n margin-right: var(--spacing);\n}\n\n.Header-dropdown {\n display: flex;\n margin-left: var(--spacing-m);\n margin-bottom: var(--spacing-2);\n}\n\n.Header-dropdown .Dropdown {\n margin: 0 var(--spacing-m);\n}\n\n.Header-draggableDropdown .Dropdown-wrapper {\n max-height: 200px;\n overflow-y: auto;\n}\n\n.Header-filters {\n display: flex;\n}\n\n.Header-sorting {\n display: flex;\n}\n\n.Header-actions {\n margin-bottom: var(--spacing-2);\n}\n\n.Header-global-actions {\n justify-content: flex-end;\n margin-left: auto;\n margin-bottom: var(--spacing-2);\n}\n\n.HorizontalNav {\n display: flex;\n}\n\n.HorizontalNav-menu {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n cursor: pointer;\n height: var(--spacing-3);\n padding-right: var(--spacing-l);\n padding-left: var(--spacing-l);\n border-radius: var(--spacing-2);\n margin: 0 var(--spacing-xs);\n}\n\n.HorizontalNav-menu--disabled {\n pointer-events: none;\n}\n\n.HorizontalNav-menu--disabled:focus-visible,\n.HorizontalNav-menu--disabled:focus {\n outline: none;\n}\n\n.HorizontalNav-menu--default:focus-visible,\n.HorizontalNav-menu--default:focus {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n outline: none;\n}\n\n.HorizontalNav-menu--default:hover {\n background-color: var(--secondary);\n}\n\n.HorizontalNav-menu--default:active {\n background-color: var(--secondary-dark);\n}\n\n.HorizontalNav-menu--active {\n background-color: var(--primary-lightest);\n}\n\n.HorizontalNav-menu--active:focus-visible,\n.HorizontalNav-menu--active:focus {\n background-color: var(--primary-lightest);\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n outline: none;\n}\n\n.HorizontalNav-menu--active:hover {\n background-color: var(--primary-lighter);\n}\n\n.HorizontalNav-menu--active:active {\n background-color: var(--primary-lighter);\n color: var(--primary-darker);\n}\n\n.HorizontalNav-menu--active:active .HorizontalNav-menuText {\n color: var(--primary-darker);\n}\n\n.HorizontalNav-menuText {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.HorizontalNav-menu--active,\n.HorizontalNav-animate {\n transition-delay: var(--duration--fast-02);\n}\n\n.HorizontalNav-animate {\n transition: var(--duration--fast-02) var(--standard-productive-curve);\n}\n\n.HorizontalNav-pills {\n margin-right: var(--spacing-m);\n}\n\n.HorizontalNav-pills--disabled {\n opacity: var(--opacity-10);\n}\n\n/* Although the icons in the font can be scaled to any size, in accordance with material design icons guidelines, \n * we recommend them to be shown in either 18, 24, 36 or 48px. The default being 24px. \n * https://google.github.io/material-design-icons/\n */\n\n/* Rules for sizing the icon. */\n\n/* .material-icons.md-18 { font-size: 18px; }\n.material-icons.md-24 { font-size: 24px; }\n.material-icons.md-36 { font-size: 36px; }\n.material-icons.md-48 { font-size: 48px; } */\n\n/* Rules for using icons as black on a light background. */\n\n/* .material-icons.md-dark { color: rgba(0, 0, 0, 0.54); }\n.material-icons.md-dark.md-inactive { color: rgba(0, 0, 0, 0.26); } */\n\n/* Rules for using icons as white on a dark background. */\n\n/* .material-icons.md-light { color: rgba(255, 255, 255, 1); }\n.material-icons.md-light.md-inactive { color: rgba(255, 255, 255, 0.3); } */\n.Icon {\n flex-shrink: 0;\n overflow: hidden;\n flex-shrink: 0;\n user-select: none;\n}\n\n.Icon--subtle {\n color: var(--text-subtle);\n}\n\n.Icon--disabled {\n color: var(--text-disabled);\n}\n\n.Icon--destructive {\n color: var(--text-destructive);\n}\n\n.Icon--white {\n color: var(--text-white);\n}\n\n.Icon--default {\n color: var(--text);\n}\n\n.Icon--info {\n color: var(--primary);\n}\n\n.Icon--success {\n color: var(--success);\n}\n\n.Icon--warning {\n color: var(--warning);\n}\n\n.Icon--alert {\n color: var(--alert);\n}\n\n.Icon--primary {\n color: var(--primary);\n}\n\n.Icon--primaryLighter {\n color: var(--primary-lighter);\n}\n\n.Icon--primaryDark {\n color: var(--primary-dark);\n}\n\n.Icon--primaryDarker {\n color: var(--primary-darker);\n}\n\n.Icon--alertLighter {\n color: var(--alert-lighter);\n}\n\n.Icon--alertDark {\n color: var(--alert-dark);\n}\n\n.Icon--alertDarker {\n color: var(--alert-darker);\n}\n\n.Icon--successLighter {\n color: var(--success-lighter);\n}\n\n.Icon--successDark {\n color: var(--success-dark);\n}\n\n.Icon--successDarker {\n color: var(--success-darker);\n}\n\n.Icon--warningLighter {\n color: var(--warning-lighter);\n}\n\n.Icon--warningDark {\n color: var(--warning-dark);\n}\n\n.Icon--warningDarker {\n color: var(--warning-darker);\n}\n\n.Icon--accent1 {\n color: var(--accent1);\n}\n\n.Icon--accent1Lighter {\n color: var(--accent1-lighter);\n}\n\n.Icon--accent1Dark {\n color: var(--accent1-dark);\n}\n\n.Icon--accent1Darker {\n color: var(--accent1-darker);\n}\n\n.Icon--accent2 {\n color: var(--accent2);\n}\n\n.Icon--accent2Lighter {\n color: var(--accent2-lighter);\n}\n\n.Icon--accent2Dark {\n color: var(--accent2-dark);\n}\n\n.Icon--accent2Darker {\n color: var(--accent2-darker);\n}\n\n.Icon--accent3 {\n color: var(--accent3);\n}\n\n.Icon--accent3Lighter {\n color: var(--accent3-lighter);\n}\n\n.Icon--accent3Dark {\n color: var(--accent3-dark);\n}\n\n.Icon--accent3Darker {\n color: var(--accent3-darker);\n}\n\n.Icon--accent4 {\n color: var(--accent4);\n}\n\n.Icon--accent4Lighter {\n color: var(--accent4-lighter);\n}\n\n.Icon--accent4Dark {\n color: var(--accent4-dark);\n}\n\n.Icon--accent4Darker {\n color: var(--accent4-darker);\n}\n\n.Icon--inverse {\n color: var(--inverse);\n}\n\n.InlineMessage {\n display: flex;\n flex-direction: row;\n overflow: hidden;\n border-radius: var(--spacing-m);\n background-color: var(--white);\n align-items: flex-start;\n}\n\n.InlineMessage-icon--regular {\n padding-top: var(--spacing-s);\n padding-bottom: var(--spacing-s);\n margin-right: var(--spacing);\n}\n\n.InlineMessage-icon--small {\n padding-top: var(--spacing-xs);\n padding-bottom: var(--spacing-xs);\n margin-right: var(--spacing-m);\n}\n\n.InlineMessage-text--warning,\n.InlineMessage-icon--warning {\n color: var(--accent1);\n}\n\n.InlineMessage-text--alert {\n color: var(--alert);\n}\n\n.InlineMessage-text--info {\n color: var(--primary);\n}\n\n.InlineMessage-text--success {\n color: var(--success);\n}\n\n/* input */\n\n.Input-input::-ms-clear {\n display: none;\n}\n\n.Input {\n display: flex;\n flex-grow: 1;\n flex-direction: row;\n align-items: center;\n box-sizing: border-box;\n border-radius: var(--spacing-m);\n border: var(--border);\n padding-right: var(--spacing-l);\n padding-left: var(--spacing-l);\n background: var(--white);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Input--tiny {\n height: var(--font-height-m);\n padding-top: var(--spacing-m);\n padding-bottom: var(--spacing-m);\n}\n\n.Input--regular {\n height: var(--font-height-l);\n padding-top: var(--spacing-0-75);\n padding-bottom: var(--spacing-0-75);\n}\n\n.Input--large {\n height: 40px;\n padding-top: var(--spacing);\n padding-bottom: var(--spacing);\n}\n\n.Input:hover {\n background: var(--secondary-lighter);\n border-color: var(--secondary-dark);\n cursor: text;\n}\n\n.Input:focus-within {\n background: var(--white);\n border-color: var(--primary);\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.Input:focus-within .Input-icon--left {\n color: var(--primary);\n}\n\n.Input--error:focus-within {\n border-color: var(--alert);\n box-shadow: var(--shadow-spread) var(--alert-shadow);\n}\n\n.Input--error:focus-within .Input-icon--left {\n color: var(--alert);\n}\n\n.Input--disabled {\n background: var(--secondary-lightest);\n border-color: var(--secondary-lighter);\n pointer-events: none;\n}\n\n.Input--disabled .Input-icon--left {\n color: var(--inverse-lightest);\n}\n\n.Input--error,\n.Input--error:hover {\n background: var(--white);\n border-color: var(--alert);\n}\n\n.Input-input {\n display: flex;\n width: 100%;\n font-family: var(--font-family);\n font-weight: var(--font-weight-normal);\n font-size: var(--font-size);\n line-height: var(--font-height-s);\n color: var(--night);\n padding: 0;\n border: none;\n background: transparent;\n}\n\n.Input-input::placeholder {\n color: var(--inverse-lighter);\n}\n\n.Input-input:focus {\n outline: 0;\n}\n\n.Input-input:disabled .Input-input::placeholder {\n color: var(--inverse-lighter);\n}\n\n.Input-input--regular {\n line-height: var(--font-height);\n}\n\n.Input-input--large {\n line-height: var(--font-height-m);\n font-size: var(--font-size-m);\n}\n\n.Input-icon {\n display: flex;\n align-content: center;\n font-size: var(--font-size-m);\n}\n\n.Input-icon--left {\n margin-right: var(--spacing);\n color: var(--inverse);\n}\n\n.Input-icon--inputBlank {\n color: var(--inverse-lighter);\n}\n\n.Input-icon--error {\n color: var(--alert);\n}\n\n.Input-icon--right {\n cursor: pointer;\n color: var(--inverse-lighter);\n border-radius: 10px;\n}\n\n.Input-iconWrapper--right:focus-visible .Input-icon--right {\n outline: var(--spacing-s) solid var(--secondary-shadow);\n}\n\n.Input-icon--right:focus-visible {\n outline: var(--spacing-s) solid var(--secondary-shadow);\n border-radius: 10px;\n}\n\n.Input-iconWrapper--right:hover .Input-icon--right {\n background-color: var(--secondary);\n}\n\n.Input-iconWrapper--right:active .Input-icon--right {\n background-color: var(--secondary-dark);\n}\n\n.Input-inlineLabel {\n margin-right: var(--spacing);\n}\n\n.Input-iconWrapper--right:focus-visible {\n outline: none;\n}\n\n.Link {\n text-decoration: none;\n font-weight: var(--font-weight-medium);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n box-sizing: border-box;\n}\n\n.Link:focus-visible {\n outline: none;\n}\n\n.Link--regular {\n font-size: var(--font-size);\n height: var(--font-height);\n}\n\n.Link--tiny {\n font-size: var(--font-size-s);\n height: var(--font-height-s);\n line-height: var(--font-height-s);\n}\n\n.Link--default {\n color: var(--text-link);\n}\n\n.Link--subtle {\n color: var(--inverse-lighter);\n}\n\n.Link--default:hover {\n border-bottom: var(--spacing-xs) solid var(--primary-dark);\n color: var(--primary-dark);\n}\n\n.Link--subtle:hover {\n border-bottom: var(--spacing-xs) solid var(--inverse-light);\n color: var(--inverse-light);\n}\n\n.Link--default:active {\n color: var(--primary-darker);\n border: none;\n}\n\n.Link--subtle:active {\n color: var(--inverse);\n border: none;\n}\n\n.Link--default:focus {\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n border-radius: var(--spacing-m);\n}\n\n.Link--subtle:focus {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n border-radius: var(--spacing-m);\n}\n\n.Link--default-disabled {\n color: var(--primary-lighter);\n pointer-events: none;\n}\n\n.Link--subtle-disabled {\n color: var(--inverse-lightest);\n pointer-events: none;\n}\n\n.LinkButton {\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n box-sizing: border-box;\n position: relative;\n vertical-align: middle;\n cursor: pointer;\n user-select: none;\n border: 0;\n text-align: center;\n padding: 0;\n background: transparent;\n font-weight: var(--font-weight-medium);\n font-family: var(--font-family);\n border-radius: var(--spacing-m);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.LinkButton--iconAlign-right {\n flex-direction: row-reverse;\n}\n\n.LinkButton-icon {\n line-height: inherit;\n display: flex;\n align-items: center;\n}\n\n.LinkButton-icon--left {\n margin-right: var(--spacing-m);\n}\n\n.LinkButton-icon--right {\n margin-left: var(--spacing-m);\n}\n\n.LinkButton--regular {\n line-height: var(--font-height);\n font-size: var(--font-size);\n}\n\n.LinkButton--tiny {\n line-height: var(--font-height-s);\n font-size: var(--font-size-s);\n}\n\n.LinkButton--default {\n color: var(--primary);\n}\n\n.LinkButton--default:hover {\n color: var(--primary-dark);\n}\n\n.LinkButton--default:active {\n color: var(--primary-darker);\n}\n\n.LinkButton--default:focus,\n.LinkButton--default:focus-visible {\n outline: 0;\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.LinkButton--default:disabled {\n cursor: not-allowed;\n pointer-events: none;\n color: var(--primary-lighter);\n}\n\n/* Subtle Appearance */\n\n.LinkButton--subtle {\n color: var(--inverse-lighter);\n}\n\n.LinkButton--subtle:hover {\n color: var(--inverse-light);\n}\n\n.LinkButton--subtle:active {\n color: var(--inverse);\n}\n\n.LinkButton--subtle:focus,\n.LinkButton--subtle:focus-visible {\n outline: 0;\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n}\n\n.LinkButton--subtle:disabled {\n cursor: not-allowed;\n pointer-events: none;\n color: var(--inverse-lightest);\n}\n\n.List {\n display: flex;\n flex-grow: 1;\n flex-direction: column;\n /* flex-grow: 0; */\n height: 100%;\n z-index: 1;\n}\n\n.List-grid {\n height: 100%;\n overflow: hidden;\n height: 100%;\n}\n\n.Listbox {\n margin: 0;\n padding: 0;\n display: flex;\n list-style-type: none;\n flex-direction: column;\n}\n\n.Listbox-item {\n display: flex;\n align-items: center;\n padding-left: var(--spacing-2);\n padding-right: var(--spacing-2);\n}\n\n.Listbox-item-wrapper {\n width: 100%;\n}\n\n.Listbox-item-wrapper:last-child > .Listbox-divider,\n.Listbox-item--draggable:last-child .Listbox-divider {\n background: transparent;\n}\n\n/* Sizes */\n\n.Listbox-item--tight {\n padding-top: var(--spacing-m);\n padding-bottom: var(--spacing-m);\n}\n\n.Listbox-item--compressed {\n padding-top: var(--spacing);\n padding-bottom: var(--spacing);\n}\n\n.Listbox-item--standard {\n padding-top: var(--spacing-l);\n padding-bottom: var(--spacing-l);\n}\n\n/* Listbox type - option */\n\n.Listbox-item--option {\n cursor: pointer;\n}\n\n.Listbox-item--option:hover {\n background-color: var(--secondary-lightest);\n}\n\n.Listbox-item--option:focus,\n.Listbox-item--option:focus-visible {\n outline: 3px auto var(--secondary-shadow);\n}\n\n.Listbox-item--option:active {\n background: var(--secondary-lighter);\n}\n\n.Listbox-item--selected {\n background: color-mod(var(--primary-lightest) a(var(--opacity-12)));\n}\n\n.Listbox-item--selected:hover {\n background: color-mod(var(--primary-lighter) a(var(--opacity-12)));\n}\n\n.Listbox-item--selected:focus,\n.Listbox-item--selected:focus-visible {\n outline: 3px auto color-mod(var(--primary-shadow));\n}\n\n.Listbox-item--selected:active {\n background: var(--primary-lighter);\n}\n\n/* Listbox type - resource */\n\n.Listbox-item--resource {\n cursor: pointer;\n}\n\n.Listbox-item--resource:hover {\n background-color: var(--secondary-lightest);\n}\n\n.Listbox-item--resource:focus,\n.Listbox-item--resource:focus-visible {\n outline: 3px auto var(--secondary-shadow);\n}\n\n.Listbox-item--resource:active {\n background: var(--secondary-lighter);\n}\n\n.Listbox-item--activated {\n background: var(--primary-lightest);\n}\n\n/* Listbox type - description */\n\n.Listbox-item--description:focus,\n.Listbox-item--description:focus-visible {\n outline: none;\n}\n\n/* Listbox type - disabled */\n\n.Listbox-item--disabled {\n opacity: var(--opacity-10);\n pointer-events: none;\n}\n\n/* Listbox type - draggable */\n\n.Listbox-item--draggable:focus {\n outline: 3px auto var(--secondary-shadow);\n}\n\n.Listbox-item--drag-icon {\n cursor: grab;\n margin-right: var(--spacing);\n}\n\n.Listbox-item--drag-icon:hover {\n color: var(--inverse);\n}\n\n.Listbox-item--drag-icon:active {\n color: var(--primary);\n}\n\n.Menu {\n overflow-y: auto !important;\n padding-top: var(--spacing-m);\n padding-bottom: var(--spacing-m);\n}\n\n.Menu-Trigger--active {\n background-color: var(--secondary-dark);\n}\n\n.Menu-Item {\n width: 100%;\n box-sizing: border-box;\n}\n\n.Menu-Group-Label {\n display: flex;\n align-items: center;\n padding-bottom: var(--spacing-0-75);\n padding-top: var(--spacing-l);\n padding-left: var(--spacing-2);\n padding-right: var(--spacing-l);\n}\n\n.Menu-Group:first-child .Menu-Group-Label {\n padding-top: var(--spacing);\n}\n\n.Message {\n display: flex;\n flex-direction: row;\n overflow: hidden;\n padding: var(--spacing-l) var(--spacing-xl) var(--spacing-l) var(--spacing-2);\n border: var(--spacing-xs) solid;\n width: 100%;\n border-radius: var(--spacing-m);\n box-sizing: border-box;\n}\n\n.Message--alert {\n border-color: var(--alert);\n background-color: color-mod(var(--alert-lightest) a(var(--opacity-10)));\n}\n\n.Message--success {\n border-color: var(--success);\n background-color: color-mod(var(--success-lightest) a(var(--opacity-10)));\n}\n\n.Message--info {\n border-color: var(--primary);\n background-color: color-mod(var(--primary-lightest) a(var(--opacity-10)));\n}\n\n.Message--warning {\n border-color: var(--accent1);\n background-color: color-mod(var(--warning-lightest) a(var(--opacity-10)));\n}\n\n.Message-icon {\n margin-right: var(--spacing-2);\n padding-top: var(--spacing-s);\n}\n\n.Message-icon--withTitle {\n padding-top: var(--spacing-m);\n}\n\n.Message-icon--warning {\n color: var(--accent1);\n}\n\n.Message-heading {\n margin-bottom: var(--spacing-m);\n}\n\n.Message-heading--alert,\n.Message-text--alert {\n color: var(--alert-darker) !important;\n}\n\n.Message-heading--info,\n.Message-text--info {\n color: var(--primary-darker) !important;\n}\n\n.Message-heading--success,\n.Message-text--success {\n color: var(--success-darker) !important;\n}\n\n.Message-heading--warning,\n.Message-text--warning {\n color: var(--accent1-darker) !important;\n}\n\n.Message-actions {\n display: flex;\n align-items: center;\n margin-top: var(--spacing-l);\n}\n\n.Meta {\n display: flex;\n flex-direction: row;\n align-items: center;\n width: fit-content;\n font-size: var(--font-size);\n}\n\n.MetaList-seperator {\n margin-left: var(--spacing);\n}\n.MetaList-seperator--left {\n margin-right: var(--spacing-m);\n}\n.Meta-icon {\n padding-right: var(--spacing-m);\n display: flex;\n align-items: center;\n}\n.MetaList {\n display: flex;\n flex-direction: row;\n align-items: center;\n width: fit-content;\n font-size: var(--font-size);\n}\n.MetaList-item {\n margin: 0 var(--spacing-m);\n display: flex;\n flex-direction: row;\n align-items: center;\n width: fit-content;\n font-size: var(--font-size);\n}\n\n.MetaList-item:first-child {\n margin-left: 0;\n}\n\n.MetaList-item:last-child {\n margin-right: 0;\n}\n\n.MetricInput-input::-ms-clear {\n display: none;\n}\n\n.MetricInput {\n display: flex;\n width: 100%;\n flex-direction: row;\n align-items: center;\n box-sizing: border-box;\n border-radius: var(--spacing-m);\n border: var(--border);\n padding-right: var(--spacing-m);\n background: var(--white);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.MetricInput--regular {\n height: var(--spacing-3);\n padding-left: var(--spacing-l);\n}\n\n.MetricInput--large {\n height: 40px;\n padding-left: var(--spacing-2);\n}\n\n.MetricInput:hover {\n background: var(--secondary-lightest);\n cursor: text;\n}\n\n.MetricInput:focus-within {\n background: var(--white);\n border-color: var(--primary);\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.MetricInput:focus-within .MetricInput-icon {\n color: var(--primary);\n}\n\n.MetricInput--disabled {\n background: var(--secondary-lightest);\n border-color: var(--secondary-light);\n pointer-events: none;\n}\n\n.MetricInput--disabled .MetricInput-icon {\n color: var(--inverse-lightest);\n}\n\n.MetricInput--error,\n.MetricInput--error:hover {\n background: var(--white);\n border-color: var(--alert);\n}\n\n.MetricInput--error:focus-within {\n border-color: var(--alert);\n box-shadow: var(--shadow-spread) var(--alert-shadow);\n}\n\n.MetricInput--error:focus-within .MetricInput-icon {\n color: var(--alert);\n}\n\n.MetricInput-input {\n display: flex;\n width: 100%;\n font-family: var(--font-family);\n font-weight: var(--font-weight-normal);\n font-size: var(--font-size);\n line-height: var(--font-height-s);\n color: var(--night);\n padding: 0;\n border: none;\n background: transparent;\n}\n\n.MetricInput-input--large {\n line-height: var(--font-height-m);\n font-size: var(--font-size-m);\n}\n\n.MetricInput-input::placeholder {\n color: var(--inverse-lighter);\n}\n\n.MetricInput-input:focus {\n outline: 0;\n}\n\n.MetricInput-input:disabled .MetricInput-input::placeholder {\n color: var(--inverse-lighter);\n}\n\n.MetricInput-icon--regular {\n margin-right: var(--spacing);\n line-height: var(--font-height-s);\n}\n\n.MetricInput-icon--large {\n margin-right: var(--spacing-l);\n line-height: var(--font-height-m);\n}\n\n.MetricInput-input::-webkit-inner-spin-button,\n.MetricInput-input::-webkit-outer-spin-button {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n margin: 0;\n}\n\n.MetricInput-arrowIcon--large {\n height: var(--spacing-2);\n width: var(--spacing-2);\n border-radius: var(--spacing-s);\n}\n\n.MetricInput-arrowIcon--regular {\n height: var(--spacing-l);\n width: var(--spacing-l);\n border-radius: var(--spacing-s);\n}\n\n@keyframes modal-open {\n from {\n top: 20px;\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n@keyframes modal-close {\n from {\n top: 104px;\n opacity: 1;\n }\n to {\n top: 124px;\n opacity: 0;\n }\n}\n\n.Modal {\n position: fixed !important;\n max-height: calc(100vh - 128px);\n box-shadow: var(--shadow-m);\n background-color: var(--white);\n border-radius: var(--spacing);\n overflow: auto;\n flex-direction: column;\n display: none;\n margin: auto;\n top: 0;\n right: 0;\n left: 0;\n bottom: 0;\n height: min-content;\n}\n\n.Modal--open {\n display: flex;\n}\n\n.Modal-animation--open {\n animation: modal-open var(--duration--moderate-02) var(--entrance-expressive-curve);\n}\n\n.Modal-animation--close {\n animation: modal-close var(--duration--fast-02) var(--exit-expressive-curve);\n}\n\n.Modal-header {\n display: flex;\n justify-content: flex-start;\n padding-top: var(--spacing-2);\n padding-bottom: var(--spacing-l);\n padding-right: var(--spacing-2);\n}\n\n.Modal-header--withSeperator {\n border-bottom: var(--border);\n}\n\n.Modal-description {\n padding: var(--spacing) 0;\n}\n\n.Modal-footer {\n padding-top: var(--spacing-xl);\n padding-bottom: var(--spacing-xl);\n justify-content: flex-end;\n position: absolute;\n bottom: 0;\n}\n\n.Modal-footer--withSeperator {\n border-top: var(--border);\n}\n\n.Modal-body {\n padding: 0 var(--spacing-xl);\n}\n\n.Modal-body--withMargin {\n margin-bottom: 80px;\n}\n\n.Modal-body--withPadding {\n padding-bottom: var(--spacing-2);\n}\n\n/* Navigation */\n\n.Navigation {\n display: flex;\n}\n\n.Navigation--horizontal {\n flex-grow: 1;\n justify-content: center;\n}\n\n.Navigation--vertical {\n flex-direction: column;\n height: 100%;\n width: var(--spacing-9);\n}\n\n.Navigation--collapsed {\n width: fit-content;\n}\n\n.Navigation-body {\n height: 100%;\n overflow-y: auto;\n overflow-x: hidden;\n padding-right: var(--spacing);\n}\n\n.Navigation-menu {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n cursor: pointer;\n}\n\n.Navigation-menu--horizontal {\n height: var(--spacing-3);\n padding-right: var(--spacing-l);\n padding-left: var(--spacing-l);\n border-radius: var(--spacing-2);\n margin: 0 var(--spacing-xs);\n}\n\n.Navigation-menu--disabled {\n pointer-events: none;\n}\n\n.Navigation-menu:hover {\n background-color: var(--secondary-light);\n}\n\n.Navigation-menu--active,\n.Navigation-menu--active:hover {\n background: var(--primary-lightest);\n}\n\n.Navigation-menu--vertical {\n /* padding-top: var(--spacing-m); */\n /* padding-bottom: var(--spacing-m); */\n padding-left: var(--spacing);\n margin-top: var(--spacing-m);\n margin-bottom: var(--spacing-m);\n /* margin-right: var(--spacing); */\n border-radius: 0px var(--spacing-2) var(--spacing-2) 0px;\n}\n\n.Navigation-menu--rounded {\n border-radius: var(--spacing-2);\n}\n\n.Navigation-menu--subMenu {\n padding-top: var(--spacing-s);\n padding-bottom: var(--spacing-s);\n padding-left: 40px;\n margin-top: 0;\n}\n\n.Navigation-menuIcon {\n padding: 8px;\n border-radius: 50%;\n cursor: pointer;\n}\n\n.Navigation-menuIcon--active {\n background: var(--primary-lightest);\n}\n\n.Navigation-menuLabel {\n display: flex;\n flex-grow: 1;\n overflow: hidden;\n}\n\n.Navigation-menu .Text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.Navigation-horizontalPills {\n margin-right: var(--spacing-m);\n}\n\n.Navigation-horizontalPills--disabled {\n opacity: var(--opacity-10);\n}\n\n.Navigation-footer {\n display: flex;\n align-items: center;\n padding: var(--spacing-m) var(--spacing);\n}\n\n.Navigation-footer--border {\n border-top: var(--border);\n}\n\n.Navigation--collapsed .Navigation-menuIcon--footer {\n transform: rotate(180deg);\n}\n\n.OverlayHeader {\n box-sizing: border-box;\n margin-left: var(--spacing-xl);\n}\n\n.OverlayHeader--withBackButton {\n margin-left: var(--spacing-2);\n}\n\n.OverlayHeader-headerWrapper {\n display: flex;\n align-items: center;\n}\n\n.OverlayHeader-subheading {\n margin-top: var(--spacing-s);\n}\n\n.OverlayHeader-subheading--withBackButton {\n margin-left: var(--spacing);\n}\n\n.OverlayBody {\n overflow-y: auto;\n}\n\n.Overlay-body--stickFooter {\n margin-bottom: 80px;\n}\n\n.OverlayFooter {\n display: flex;\n align-items: center;\n width: 100%;\n box-sizing: border-box;\n padding-left: var(--spacing-xl);\n padding-right: var(--spacing-xl);\n}\n\n.PageHeader {\n width: 100%;\n}\n\n.PageHeader-wrapper {\n padding: var(--spacing) var(--spacing-2) var(--spacing) 0;\n}\n\n.PageHeader-wrapper--withTabs {\n padding-bottom: 0;\n}\n\n.PageHeader-wrapper--withTabs .TabsWrapper-header {\n border-bottom: none;\n}\n\n.PageHeader .Row {\n width: 100%;\n}\n\n.PageHeader-titleWrapper {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n padding-right: var(--spacing);\n}\n\n.PageHeader-titleWrapper .Badge {\n margin-left: var(--spacing-l);\n flex-shrink: 0;\n}\n\n.PageHeader-statusWrapper {\n display: flex;\n justify-content: flex-start;\n align-items: center;\n}\n\n.PageHeader-statusWrapper .StatusHint {\n margin-right: var(--spacing);\n}\n\n.PageHeader-navigationWrapper {\n margin-top: var(--spacing-m);\n}\n\n.PageHeader .PageHeader-navigationWrapper {\n justify-content: center;\n align-items: center;\n margin-top: 0 !important;\n padding-right: var(--spacing);\n padding-left: var(--spacing);\n display: flex;\n}\n\n.PageHeader-title {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.PageHeader-actionsWrapper {\n display: flex;\n justify-content: flex-end;\n padding-left: var(--spacing);\n}\n\n/* pagination */\n\n.Pagination {\n display: flex;\n vertical-align: middle;\n flex-direction: row;\n flex-wrap: wrap;\n}\n\n.Pagination .Button {\n padding-left: var(--spacing);\n padding-right: var(--spacing);\n}\n\n.Pagination-buttonWrapper {\n display: flex;\n flex-direction: row;\n}\n\n.Pagination-pageIndex {\n display: flex;\n align-items: center;\n justify-content: center;\n padding-left: var(--spacing-l);\n padding-right: var(--spacing-l);\n}\n\n.Pagination-MetricInput {\n width: var(--spacing-4);\n margin-right: var(--spacing);\n padding-left: var(--spacing);\n padding-right: var(--spacing);\n}\n\n.Pagination-MetricInput .MetricInput-input {\n text-align: center;\n}\n.Pagination-MetricInput .MetricInput-arrowIcons {\n display: none;\n}\n\n@media (max-width: 575px) {\n .Pagination-pageIndex {\n order: -1;\n flex-basis: 100%;\n }\n .Pagination-buttonWrapper {\n margin-top: var(--spacing);\n width: 50%;\n }\n .Pagination-buttonWrapper--next {\n justify-content: flex-start;\n }\n .Pagination-buttonWrapper--previous {\n justify-content: flex-end;\n }\n}\n\n.Pills {\n /* 160px */\n max-width: calc(var(--spacing-2) * 10);\n /* truncate */\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: var(--font-size-s);\n line-height: var(--font-height-s);\n text-transform: uppercase;\n padding-right: var(--spacing-0-75);\n padding-left: var(--spacing-0-75);\n padding-top: var(--spacing-s);\n padding-bottom: var(--spacing-s);\n border-radius: 20px;\n display: inline-block;\n box-sizing: border-box;\n font-weight: var(--font-weight-bold);\n cursor: default;\n}\n\n@keyframes shimmer {\n 0% {\n background-position: -500px 0;\n }\n 100% {\n background-position: 500px 0;\n }\n}\n\n.Placeholder--animation {\n border-radius: var(--spacing-s);\n animation-duration: 1.5s;\n animation-fill-mode: forwards;\n animation-iteration-count: infinite;\n animation-name: shimmer;\n animation-timing-function: linear;\n background: var(--secondary-lightest);\n background: linear-gradient(\n to right,\n var(--secondary-lighter) 8%,\n var(--secondary-dark) 18%,\n var(--secondary-lighter) 33%\n );\n background-size: 1000px 104px;\n}\n\n.Placeholder {\n display: flex;\n flex-grow: 1;\n flex-shrink: 0;\n align-items: center;\n}\n\n.Placeholder--withImage {\n display: flex;\n justify-content: flex-start;\n}\n\n.Placeholder-paragraph {\n display: flex;\n flex-direction: column;\n flex: 1 0;\n}\n\n.Placeholder-paragraph--withImage {\n margin-left: var(--spacing);\n}\n\n.PlaceholderParagraph {\n display: flex;\n flex-grow: 1;\n height: var(--font-size);\n}\n\n.PlaceholderParagraph-wrapper {\n display: flex;\n align-items: center;\n height: var(--font-height);\n}\n\n.PlaceholderParagraph-wrapper--length-small {\n width: 33%;\n}\n\n.PlaceholderParagraph-wrapper--length-medium {\n width: 66%;\n}\n\n.PlaceholderParagraph-wrapper--length-large {\n width: 100%;\n}\n\n.PlaceholderParagraph-wrapper--size-xxs {\n height: var(--font-height-s);\n}\n\n.PlaceholderParagraph-wrapper--size-xs {\n height: var(--font-height-m);\n}\n\n.PlaceholderParagraph-wrapper--size-s {\n height: var(--font-height-s);\n}\n\n.PlaceholderParagraph-wrapper--size-m {\n height: var(--font-height-m);\n}\n\n.PlaceholderParagraph-wrapper--size-l {\n height: var(--font-height-l);\n}\n\n.PlaceholderParagraph-wrapper--size-xl {\n height: var(--font-height-xl);\n}\n\n.PlaceholderParagraph-wrapper--size-xxl {\n height: var(--font-height-xxl);\n}\n\n.PlaceholderParagraph-wrapper--size-xxxl {\n height: var(--font-height-xxl);\n}\n\n.PlaceholderParagraph--xxs {\n height: var(--font-size-s);\n}\n\n.PlaceholderParagraph--xs {\n height: var(--font-size-s);\n}\n\n.PlaceholderParagraph--s {\n height: var(--font-size);\n}\n\n.PlaceholderParagraph--m {\n height: var(--font-size-m);\n}\n\n.PlaceholderParagraph--l {\n height: var(--font-size-l);\n}\n\n.PlaceholderParagraph--xl {\n height: var(--font-size-xl);\n}\n\n.PlaceholderParagraph--xxl {\n height: var(--font-size-xxl);\n}\n\n.PlaceholderParagraph--xxxl {\n height: var(--font-size-xxxl);\n}\n\n.PlaceholderImage {\n display: flex;\n flex-shrink: 0;\n width: 16px;\n height: 16px;\n}\n\n.PlaceholderImage--small {\n width: 16px;\n height: 16px;\n}\n\n.PlaceholderImage--medium {\n width: 32px;\n height: 32px;\n}\n\n.PlaceholderImage--large {\n width: 48px;\n height: 48px;\n}\n\n.PlaceholderImage--round {\n border-radius: 50%;\n}\n\n.Popover {\n border-radius: var(--spacing-m);\n position: absolute;\n z-index: 500;\n background: var(--white);\n box-shadow: var(--shadow-l);\n}\n\n.Popover--dark {\n background: var(--inverse);\n color: var(--white);\n}\n\n.Popover[data-hide='true'] {\n visibility: hidden;\n pointer-events: none;\n}\n\n@keyframes popper-fade-in {\n 0% {\n opacity: 0;\n }\n 80% {\n opacity: var(--opacity-6);\n }\n 100% {\n opacity: 1;\n }\n}\n\n.Ring {\n transform: rotate(-90deg);\n}\n\n.Ring--regular {\n height: var(--spacing-3);\n width: var(--spacing-3);\n}\n\n.Ring--small {\n height: var(--spacing-2);\n width: var(--spacing-2);\n}\n\n.Ring Circle {\n fill: none;\n}\n\n.Ring-background {\n stroke: var(--secondary-lightest);\n}\n\n.Ring-indicator {\n stroke: var(--primary);\n transition: var(--duration--slow-01) var(--standard-expressive-curve);\n}\n\n/* Radio */\n\n.Radio {\n display: flex;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n padding-top: var(--spacing-s);\n padding-bottom: var(--spacing-s);\n width: fit-content;\n}\n\n.Radio-outerWrapper {\n position: relative;\n flex-shrink: 0;\n margin-top: var(--spacing-s);\n}\n\n.Radio-defaultWrapper {\n border: var(--border);\n}\n\n.Radio-errorWrapper {\n border: var(--border);\n border-color: var(--alert);\n}\n\n.Radio-outerWrapper--regular {\n height: var(--spacing-2);\n width: var(--spacing-2);\n}\n\n.Radio-outerWrapper--tiny {\n height: var(--spacing-l);\n width: var(--spacing-l);\n}\n\n.Radio-input {\n opacity: 0;\n position: absolute;\n height: 100%;\n width: 100%;\n z-index: 2;\n margin: 0;\n cursor: pointer;\n}\n\n.Radio-labelWrapper {\n padding-left: var(--spacing);\n display: flex;\n flex-direction: column;\n}\n\n.Radio-Label {\n display: flex;\n cursor: pointer;\n}\n\n.Radio-wrapper {\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n position: absolute;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n z-index: 1;\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Radio--disabled {\n pointer-events: none;\n}\n\n.Radio:hover .Radio-wrapper {\n border: var(--spacing-xs) solid var(--secondary-dark);\n background-color: var(--secondary-lighter);\n}\n\n.Radio:active .Radio-wrapper {\n background-color: var(--secondary-light);\n border: var(--spacing-xs) solid var(--inverse-lightest);\n}\n\n.Radio:hover .Radio-errorWrapper {\n border: var(--border);\n background-color: var(--secondary-lighter);\n border-color: var(--alert-dark);\n}\n\n.Radio:active .Radio-errorWrapper {\n border: var(--border);\n background-color: var(--secondary-light);\n border-color: var(--alert-darker);\n}\n\n.Radio:focus-within .Radio-wrapper {\n outline: 0;\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n border-radius: 50%;\n}\n\n.Radio:focus-within .Radio-errorWrapper {\n outline: 0;\n box-shadow: var(--shadow-spread) var(--alert-shadow);\n border-radius: 50%;\n}\n\n.Radio:focus-within .Radio-input:checked ~ .Radio-wrapper {\n outline: 0;\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.Radio:focus-within .Radio-input:checked ~ .Radio-errorWrapper {\n outline: 0;\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.Radio--disabled .Radio-wrapper {\n border: var(--spacing-xs) solid var(--secondary-light);\n background-color: var(--secondary-lightest);\n}\n\n.Radio--disabled .Radio-errorWrapper {\n border: var(--spacing-xs) solid var(--alert-lighter);\n background-color: var(--secondary-lightest);\n}\n\n.Radio-input:checked ~ .Radio-wrapper {\n border: var(--spacing-xs) solid var(--primary);\n}\n\n.Radio-input:checked ~ .Radio-errorWrapper {\n border: var(--spacing-xs) solid var(--alert);\n}\n\n.Radio-input:checked ~ .Radio-wrapper:after {\n display: block;\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Radio-wrapper:after {\n content: '';\n display: none;\n border-radius: 50%;\n background: var(--primary);\n}\n\n.Radio-wrapper--regular:after {\n width: var(--spacing);\n height: var(--spacing);\n}\n\n.Radio-wrapper--tiny:after {\n width: var(--spacing-m);\n height: var(--spacing-m);\n border: var(--spacing-xs) solid var(--primary);\n}\n\n.Radio:hover .Radio-input:checked ~ .Radio-wrapper {\n border: var(--spacing-xs) solid var(--primary-dark);\n}\n\n.Radio:hover .Radio-input:checked ~ .Radio-wrapper:after {\n background: var(--primary-dark);\n}\n\n.Radio:hover .Radio-input:checked ~ .Radio-wrapper--tiny:after {\n border: var(--spacing-xs) solid var(--primary-dark);\n}\n\n.Radio:active .Radio-input:checked ~ .Radio-wrapper {\n background-color: var(--secondary-light);\n border: var(--spacing-xs) solid var(--primary-darker);\n}\n\n.Radio:hover .Radio-input:checked ~ .Radio-errorWrapper {\n background-color: var(--secondary-lighter);\n border: var(--spacing-xs) solid var(--alert-dark);\n}\n\n.Radio:active .Radio-input:checked ~ .Radio-errorWrapper {\n background-color: var(--secondary-light);\n border: var(--spacing-xs) solid var(--alert-darker);\n}\n\n.Radio:active .Radio-input:checked ~ .Radio-wrapper:after {\n background: var(--primary-darker);\n}\n\n.Radio:active .Radio-input:checked ~ .Radio-wrapper--tiny:after {\n border: var(--spacing-xs) solid var(--primary-darker);\n}\n\n.Radio--disabled .Radio-input:checked ~ .Radio-wrapper {\n border: var(--spacing-xs) solid var(--primary-lighter);\n background-color: var(--secondary-lightest);\n}\n\n.Radio--disabled .Radio-input:checked ~ .Radio-errorWrapper {\n border: var(--spacing-xs) solid var(--alert-lighter);\n background-color: var(--secondary-lightest);\n}\n\n.Radio--disabled .Radio-input:checked ~ .Radio-wrapper:after {\n background: var(--primary-lighter);\n}\n\n.Radio--disabled .Radio-input ~ .Radio-wrapper:focus {\n box-shadow: none;\n}\n\n.Radio--disabled .Radio-input ~ .Radio-errorWrapper:focus {\n box-shadow: none;\n}\n\n.Select-input {\n min-width: unset !important;\n background: transparent;\n border-bottom-left-radius: 0px;\n border-bottom-right-radius: 0;\n height: 36px;\n}\n\n.Select-input,\n.Select-input:focus-within {\n border: unset !important;\n box-shadow: none !important;\n}\n\n.Select-input:hover {\n background-color: #f4f4f4;\n}\n\n.Select-trigger {\n width: 100%;\n justify-content: space-between;\n padding-top: unset;\n padding-bottom: unset;\n background: var(--secondary-light);\n color: var(--text);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Select-trigger:disabled {\n background: var(--secondary-lighter);\n color: var(--text-disabled);\n pointer-events: none;\n}\n\n.Select-trigger:active,\n.Select-trigger--open {\n background-color: var(--secondary-dark) !important;\n color: var(--text) !important;\n animation-timing-function: cubic-bezier(0, 0, 0.38, 0.9);\n animation-duration: 120ms;\n}\n\n.Select-trigger:hover {\n background: var(--secondary);\n color: var(--text);\n}\n\n.Select-trigger:focus {\n background-color: var(--secondary-light);\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n}\n\n.Select-inputWrapper {\n border-bottom: var(--spacing-xs) solid var(--secondary-dark);\n}\n\n.Select-inputWrapper:focus-within {\n border-bottom: var(--spacing-xs) solid var(--primary);\n}\n\n.Select-trigger-wrapper {\n width: 100%;\n display: flex;\n flex-direction: row;\n align-items: center;\n overflow: hidden;\n}\n\n.Select-trigger--small {\n height: var(--spacing-xl);\n padding-right: var(--spacing);\n padding-left: var(--spacing);\n}\n\n.Select-trigger-text {\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n max-width: 100%;\n margin: 0;\n font-size: var(--font-size);\n line-height: var(--font-height);\n}\n\n.Select-trigger--regular {\n height: var(--spacing-3);\n padding-right: var(--spacing);\n padding-left: var(--spacing-l);\n}\n\n.Select-trigger--placeholder {\n color: var(--text-subtle);\n}\n\n.Select-trigger--icon {\n padding-left: var(--spacing);\n}\n\n.Select-buttonWrapper {\n display: flex;\n justify-content: flex-end;\n padding-top: var(--spacing);\n padding-right: var(--spacing);\n padding-bottom: var(--spacing);\n border-top: var(--spacing-xs) solid var(--secondary-light);\n}\n\n.Select-crossButton {\n display: flex;\n flex-shrink: 0;\n overflow: hidden;\n user-select: none;\n cursor: pointer;\n color: var(--inverse);\n border-radius: 50%;\n padding: var(--spacing-s);\n}\n\n.Select-crossButton:focus-visible,\n.Select-crossButton:focus {\n outline: var(--spacing-s) solid var(--secondary-shadow);\n}\n\n.Select-crossButton:hover {\n background-color: var(--secondary);\n}\n\n.Select-crossButton:active {\n background-color: var(--secondary-dark);\n}\n\n.Selection-card {\n cursor: pointer;\n border-radius: var(--spacing-m);\n position: relative;\n box-shadow: inset 0 0 0 var(--spacing-xs) var(--secondary-dark);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Selection-card:hover {\n box-shadow: inset 0 0 0 var(--spacing-s) var(--inverse-lightest);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Selection-card:focus,\n.Selection-card:focus-visible {\n outline: none;\n box-shadow: var(--shadow-spread) var(--secondary-shadow), inset 0 0 0 var(--spacing-xs) var(--secondary-light);\n}\n\n.Selection-card:active {\n box-shadow: inset 0 0 0 var(--spacing-s) var(--primary);\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Selection-card--disabled {\n pointer-events: none;\n box-shadow: inset 0 0 0 var(--spacing-xs) var(--secondary-lighter);\n}\n\n/* selected states */\n\n.Selection-card--selected {\n box-shadow: inset 0 0 0 var(--spacing-s) var(--primary);\n}\n\n.Selection-card--selected:hover {\n box-shadow: inset 0 0 0 var(--spacing-s) var(--primary-dark);\n}\n\n.Selection-card--selected:focus,\n.Selection-card--selected:focus-visible {\n outline: none;\n box-shadow: var(--shadow-spread) var(--primary-shadow), inset 0 0 0 var(--spacing-s) var(--primary);\n}\n\n.Selection-card--selected:active {\n box-shadow: inset 0 0 0 var(--spacing-s) var(--primary-darker);\n}\n\n.Selection-card--selected-disabled {\n pointer-events: none;\n box-shadow: inset 0 0 0 var(--spacing-xs) var(--primary-lighter);\n}\n\n/* overlay classes */\n\n.Selection-card-overlay {\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n position: absolute;\n pointer-events: none;\n border-radius: var(--spacing-m);\n}\n\n.Selection-card:active .Selection-card-overlay {\n background-color: var(--primary);\n opacity: var(--opacity-3);\n}\n\n.Selection-card--disabled .Selection-card-overlay {\n background-color: var(--secondary-lightest);\n opacity: var(--opacity-10);\n}\n\n.Selection-card--selected .Selection-card-overlay {\n background-color: var(--primary);\n opacity: var(--opacity-1);\n}\n\n.Selection-card--selected:active .Selection-card-overlay {\n background-color: var(--primary);\n opacity: var(--opacity-1);\n}\n\n.Selection-card--selected-disabled .Selection-card-overlay {\n background-color: var(--primary-lightest);\n opacity: var(--opacity-10);\n}\n\n@keyframes sidesheet-open {\n from {\n right: -100%;\n }\n to {\n right: 0;\n }\n}\n\n@keyframes sidesheet-close {\n from {\n right: 0;\n }\n to {\n right: -100%;\n }\n}\n\n@keyframes shift-right-spacing-3 {\n from {\n transform: translateX(calc(-1 * var(--spacing-3)));\n }\n to {\n transform: translateX(0);\n }\n}\n\n@keyframes shift-left-spacing-3 {\n from {\n transform: translateX(var(--spacing-3));\n }\n to {\n transform: translateX(0);\n }\n}\n\n.Sidesheet {\n position: fixed !important;\n top: 0;\n right: 0;\n height: 100vh;\n box-shadow: var(--shadow-l);\n background-color: var(--white);\n display: flex;\n flex-direction: column;\n visibility: hidden;\n}\n\n.Sidesheet--open {\n visibility: visible;\n}\n\n.Sidesheet-animation--open {\n animation: sidesheet-open 240ms cubic-bezier(0, 0, 0.3, 1);\n}\n\n.Sidesheet-animation--close {\n animation: sidesheet-close 120ms cubic-bezier(0.4, 0.14, 1, 1);\n animation-fill-mode: forwards;\n}\n\n.Sidesheet-header {\n display: flex;\n justify-content: flex-start;\n padding-top: var(--spacing-2);\n padding-bottom: var(--spacing-l);\n padding-right: var(--spacing-2);\n}\n\n.Sidesheet-header--withSeperator {\n border-bottom: var(--spacing-xs) solid var(--secondary-light);\n}\n\n.Sidesheet-body {\n padding: 0 var(--spacing-xl);\n}\n\n.Sidesheet-body--withMargin {\n margin-bottom: 80px;\n}\n\n.Sidesheet-footer {\n padding-top: var(--spacing-xl);\n padding-bottom: var(--spacing-xl);\n}\n\n.Sidesheet-footer--withSeperator {\n border-top: var(--spacing-xs) solid var(--secondary-light);\n}\n\n.Sidesheet-footer--stickToBottom {\n position: absolute;\n bottom: 0;\n}\n\n.Sidesheet-header--shiftRight {\n animation: shift-right-spacing-3 var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Sidesheet-header--shiftLeft {\n animation: shift-left-spacing-3 var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Sidesheet-body--nextPage {\n animation: fadeIn var(--duration--fast-02) var(--standard-productive-curve);\n}\n\n.Sidesheet-body--firstPage {\n animation: fadeIn var(--duration--fast-02) var(--standard-expressive-curve);\n}\n\n.Slider {\n width: 100%;\n}\n\n.Slider-wrapper {\n position: relative;\n outline: none;\n cursor: pointer;\n}\n\n.Slider-wrapper--disabled {\n cursor: not-allowed;\n}\n\n.Slider-track {\n border-radius: var(--spacing-m);\n height: var(--spacing-2);\n display: flex;\n align-items: center;\n overflow: hidden;\n}\n\n.Slider-progress {\n background: var(--secondary-lighter);\n height: var(--spacing-s);\n box-sizing: border-box;\n border-radius: var(--spacing-s);\n}\n\n.Slider-progress--inRange {\n background: var(--primary);\n}\n\n.Slider-progress--inRangeDisabled {\n border: var(--border);\n}\n\n.Slider-label {\n margin-top: var(--spacing-m);\n -webkit-transform: translate(-50%, 0px);\n transform: translate(-50%, 0px);\n display: flex;\n align-items: center;\n flex-direction: column;\n position: absolute;\n user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n}\n\n.Slider-ticks {\n width: var(--spacing-s);\n height: var(--spacing-m);\n border-radius: var(--spacing-xs);\n background-color: var(--secondary-dark);\n}\n\n.Slider-tooltip--visible {\n visibility: visible;\n}\n\n.Slider-tooltip--hidden {\n visibility: hidden;\n}\n\n.Slider-tooltip {\n position: absolute;\n color: var(--white);\n outline: none;\n bottom: calc(100% + 4px);\n transform: translateX(calc(-50% + 8px));\n}\n\n.Slider-handle {\n height: var(--spacing-2);\n width: var(--spacing-2);\n position: absolute;\n left: 0;\n top: 0;\n border-radius: 50%;\n background-color: var(--white);\n border: var(--spacing-s) solid var(--primary);\n box-shadow: var(--shadow-s);\n cursor: pointer;\n box-sizing: border-box;\n outline: none;\n display: flex;\n transition: border var(--duration--fast-01) var(--standard-productive-curve),\n background-color var(--duration--fast-01) var(--standard-productive-curve);\n}\n\n.Slider-handle:hover {\n background-color: var(--primary-lightest);\n}\n\n.Slider-handle:active {\n background-color: var(--primary);\n}\n\n.Slider-handle:focus {\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n outline: none;\n}\n\n.Slider-handle--disabled {\n pointer-events: none;\n background-color: var(--secondary-lighter);\n box-shadow: none;\n}\n\n.Slider-handle--disabled:focus {\n box-shadow: none;\n}\n\n@keyframes rotate {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n\n@keyframes spin {\n 0% {\n stroke-dasharray: 1, 200;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 89, 200;\n stroke-dashoffset: -35px;\n }\n 100% {\n stroke-dasharray: 89, 200;\n stroke-dashoffset: -124px;\n }\n}\n\n.Spinner {\n animation: rotate 2s linear infinite;\n}\n\n.Spinner--small {\n height: var(--spacing-2);\n width: var(--spacing-2);\n}\n\n.Spinner--medium {\n height: var(--spacing-3);\n width: var(--spacing-3);\n}\n\n.Spinner--large {\n height: var(--spacing-4);\n width: var(--spacing-4);\n}\n\n.Circle {\n stroke-linecap: round;\n stroke-dasharray: 1 200;\n stroke-dashoffset: 0;\n animation: spin 1.5s ease-in-out infinite;\n}\n\n.Circle--primary {\n stroke: var(--primary);\n}\n\n.Circle--secondary {\n stroke: var(--primary);\n}\n\n.Circle--white {\n stroke: var(--primary);\n}\n\n.StatusHint {\n display: flex;\n flex-direction: row;\n width: fit-content;\n}\n\n.StatusHint-icon {\n flex-shrink: 0;\n border-radius: 50%;\n height: var(--spacing);\n width: var(--spacing);\n margin-right: var(--spacing);\n margin-top: var(--spacing-0-75);\n}\n\n.StatusHint--alert {\n background: var(--alert);\n}\n\n.StatusHint--success {\n background: var(--success);\n}\n\n.StatusHint--warning {\n background: var(--warning);\n}\n\n.StatusHint--info {\n background: var(--primary);\n}\n\n.StatusHint--default {\n background: var(--secondary);\n}\n\n.Stepper {\n display: flex;\n}\n\n.Step {\n display: flex;\n align-items: center;\n padding-left: var(--spacing-l);\n padding-right: var(--spacing-l);\n margin-left: var(--spacing-xs);\n margin-right: var(--spacing-xs);\n border-radius: var(--spacing-2);\n cursor: pointer;\n}\n\n.Step:hover {\n background-color: var(--secondary);\n}\n\n.Step:active {\n background-color: var(--secondary-dark);\n}\n\n.Step:focus,\n.Step:focus-visible {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n outline: none;\n}\n\n/* Completed State */\n\n.Step--completed {\n color: var(--primary-dark);\n}\n\n.Step--completed:hover {\n background-color: var(--secondary);\n}\n\n.Step--completed:active {\n background-color: var(--secondary-dark);\n}\n\n.Step--completed:focus,\n.Step--completed:focus-visible {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n outline: none;\n}\n\n/* Active State */\n\n.Step--active {\n background-color: var(--primary-lightest);\n color: var(--primary-dark);\n transition-delay: var(--duration--fast-02);\n}\n\n.Step--active:hover {\n background-color: var(--primary-lighter);\n}\n\n.Step--active:focus,\n.Step--active:focus-visible {\n background-color: var(--primary-lightest);\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n outline: none;\n}\n\n.Step--active:active {\n background-color: var(--primary-lighter);\n color: var(--primary-darker);\n}\n\n.Step--active:active .Stepper-text {\n color: var(--primary-darker);\n}\n\n/* Disabled State */\n\n.Step--disabled {\n cursor: not-allowed;\n color: var(--inverse-lightest);\n pointer-events: none;\n}\n\n.Stepper-animate {\n transition-delay: var(--duration--fast-02);\n transition: var(--duration--fast-02) var(--standard-productive-curve);\n}\n\n.Switch {\n display: inline-flex;\n position: relative;\n}\n\n.Switch--tiny {\n height: var(--spacing-2);\n width: var(--spacing-3);\n}\n\n.Switch--regular {\n height: var(--spacing-xl);\n width: var(--spacing-4);\n}\n\n.Switch--large {\n height: var(--spacing-xl);\n width: var(--spacing-4);\n}\n\n.Switch-input {\n position: absolute;\n cursor: pointer;\n z-index: 10;\n opacity: 0;\n width: 100%;\n height: 100%;\n margin: 0;\n}\n\n.Switch-wrapper {\n display: flex;\n align-items: center;\n line-height: 100%;\n padding: var(--spacing-s);\n top: 0;\n left: 0;\n width: 100%;\n background-color: var(--secondary-light);\n transition: background 120ms ease;\n padding-right: var(--spacing-0-75);\n}\n\n.Switch-input:focus ~ .Switch-wrapper {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n background-color: var(--secondary-light);\n}\n\n.Switch-input:focus ~ .Switch-wrapper--checked {\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n background-color: var(--primary);\n}\n\n.Switch-input:hover ~ .Switch-wrapper {\n background-color: var(--secondary);\n}\n\n.Switch-input:hover ~ .Switch-wrapper--checked {\n background-color: var(--primary-dark);\n}\n\n.Switch-input:active ~ .Switch-wrapper {\n background-color: var(--secondary-dark);\n}\n\n.Switch-input:active ~ .Switch-wrapper--checked {\n background-color: var(--primary-darker);\n}\n\n.Switch-wrapper--tiny {\n border-radius: 10px;\n}\n\n.Switch-wrapper--regular {\n border-radius: 34px;\n}\n\n.Switch-wrapper--large {\n border-radius: 34px;\n}\n\n.Switch-wrapper:before {\n content: '';\n height: 100%;\n width: 50%;\n background-color: var(--shadow-0);\n box-shadow: var(--shadow-m);\n border-radius: 50%;\n box-sizing: border-box;\n transition-duration: 80ms;\n}\n\n.Switch-wrapper--checked {\n background-color: var(--primary);\n transition: background 120ms ease;\n padding-left: var(--spacing-0-75);\n padding-right: 2px !important;\n}\n\n.Switch-wrapper--checked:before {\n -webkit-transform: translateX(100%);\n -ms-transform: translateX(100%);\n transform: translateX(100%);\n transition-duration: 80ms;\n}\n\n.Switch--disabled {\n pointer-events: none;\n}\n\n.Switch-wrapper--disabled {\n background-color: var(--secondary-lighter);\n}\n\n.Switch-wrapper--checkedDisabled {\n background-color: var(--primary-lighter);\n}\n\n.Table {\n display: flex;\n flex-grow: 1;\n flex-direction: column;\n height: 100%;\n width: 100%;\n z-index: 1;\n}\n\n.Table-grid {\n height: 100%;\n overflow: hidden;\n z-index: 1;\n}\n\n.Table-pagination {\n display: flex;\n justify-content: center;\n background: var(--white);\n padding: var(--spacing) 0;\n border-top: var(--border);\n}\n\n.Table-Header--Divider {\n height: var(--spacing-xl);\n}\n\n.Table-Header-Label--hide {\n animation: fadeOut var(--duration--fast-02) var(--exit-productive-curve);\n animation-fill-mode: forwards;\n}\n\n.Table-Header-Label--show {\n animation: fadeIn var(--duration--moderate-01) var(--entrance-productive-curve);\n animation-fill-mode: forwards;\n}\n\n/* tabs */\n\n.TabsWrapper {\n display: flex;\n flex-grow: 1;\n flex-direction: column;\n}\n\n.TabsWrapper-header {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n flex-direction: row;\n}\n\n.TabsWrapper-header--withSeparator {\n border-bottom: var(--border);\n}\n\n.Tab {\n position: relative;\n display: flex;\n flex-direction: row;\n cursor: pointer;\n min-width: 40px;\n padding: var(--spacing-l) var(--spacing-l) var(--spacing-2);\n margin-bottom: calc(-1 * var(--spacing-xs));\n text-align: center;\n}\n\n.Tab:last-child {\n margin-right: 0;\n}\n\n.Tab::after {\n position: absolute;\n left: 0;\n bottom: 0;\n content: '';\n width: calc(100% - 2 * var(--spacing-l));\n height: var(--spacing-s);\n background-color: transparent;\n margin-left: var(--spacing-l);\n border-top-left-radius: var(--spacing-xs);\n border-top-right-radius: var(--spacing-xs);\n}\n\n.Tab:hover::after {\n background-color: var(--inverse-lighter);\n}\n\n.Tab:active::after {\n background-color: var(--inverse-light);\n}\n\n.Tab--active::after {\n background-color: var(--primary);\n}\n\n.Tab:focus {\n outline: none;\n border-radius: 4px;\n /* Using box shadow instead of border as border shifts the div down which cuts the Icon & Text of label. */\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.Tab--active:hover .Tab-selected {\n color: var(--primary-dark);\n}\n\n.Tab-selected:hover::after {\n background-color: var(--primary-dark);\n}\n\n.Tab:active:focus {\n box-shadow: none;\n}\n\n.Tab--disabled {\n cursor: not-allowed;\n}\n\n.Tab--disabled:focus {\n box-shadow: none;\n}\n\n.Tab--disabled:hover::after {\n background-color: transparent;\n}\n\n.Tab-count {\n display: flex;\n margin-right: var(--spacing-l);\n}\n\n.Tab-count .Badge {\n margin-left: 0;\n margin-right: 0;\n}\n\n.Tab-icon {\n display: flex;\n min-width: inherit;\n justify-content: space-between;\n}\n\n.Tabs {\n display: flex;\n box-sizing: border-box;\n flex-direction: row;\n}\n\n.Tabs--withSeparator {\n border-bottom: var(--border);\n}\n\n.Tab-pills {\n cursor: pointer;\n margin-right: var(--spacing);\n}\n\n.Tab-pills--disabled {\n opacity: var(--opacity-10);\n cursor: not-allowed;\n}\n\n.DismissibleTab-icon--right {\n padding: var(--spacing-s);\n margin-left: var(--spacing-s);\n outline: none;\n border-radius: 10px;\n}\n\n.DismissibleTab-icon--default:focus-visible {\n outline: var(--spacing-s) solid var(--secondary-shadow);\n}\n\n.DismissibleTab-icon--default:hover {\n background-color: var(--secondary);\n}\n\n.DismissibleTab-icon--default:active {\n background-color: var(--secondary-dark);\n}\n\n.DismissibleTab-icon--selected:focus-visible {\n outline: var(--spacing-s) solid var(--primary-shadow);\n}\n\n.DismissibleTab-icon--selected:hover {\n background-color: var(--primary-lighter);\n}\n\n.DismissibleTab-icon--selected:active {\n background-color: var(--primary-light);\n}\n\n/* Textarea */\n\n.Textarea {\n min-height: var(--spacing-3);\n width: 100%;\n display: block;\n font-family: var(--font-family);\n font-weight: var(--font-weight-normal);\n line-height: var(--font-height);\n font-size: var(--font-size);\n box-sizing: border-box;\n border-radius: var(--spacing-m);\n border: var(--border);\n color: var(--inverse);\n padding: var(--spacing) var(--spacing-l);\n resize: none;\n cursor: auto; /* this ensures text cursor over text, and pointer cursor over scroll*/\n}\n\n.Textarea::placeholder {\n color: var(--inverse-lighter);\n}\n\n.Textarea::-ms-clear {\n display: none;\n}\n\n.Textarea:focus-within {\n outline: none;\n border: var(--spacing-xs) solid var(--primary);\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n}\n\n.Textarea:disabled {\n color: var(--inverse-lightest);\n background: var(--secondary-lightest);\n border-color: var(--secondary-light);\n}\n\n.Textarea--error {\n border: var(--spacing-xs) solid var(--alert);\n}\n\n.Textarea--error:focus-within {\n border: var(--spacing-xs) solid var(--alert);\n box-shadow: var(--shadow-spread) var(--alert-shadow);\n}\n\n.Textarea--resize {\n resize: both;\n}\n\n/* toast */\n\n.Toast {\n display: flex;\n flex-direction: row;\n box-sizing: border-box;\n word-break: break-word;\n width: 360px;\n border-radius: var(--spacing-m);\n padding-left: var(--spacing-2);\n padding-right: var(--spacing-l);\n padding-top: var(--spacing-l);\n padding-bottom: var(--spacing-l);\n}\n\n.Toast--withMessage {\n padding-bottom: var(--spacing-2);\n}\n\n.Toast--info {\n background-color: var(--primary);\n}\n\n.Toast--alert {\n background-color: var(--alert);\n}\n\n.Toast--success {\n background-color: var(--success);\n}\n\n.Toast--warning {\n background-color: var(--warning);\n}\n\n.Toast--warning {\n color: var(--text);\n}\n\n.Toast-icon {\n line-height: var(--font-height-m);\n}\n\n.Toast-icon--left {\n margin-right: var(--spacing-2);\n}\n\n.Toast-icon--right {\n cursor: pointer;\n margin-left: var(--spacing-l);\n border-radius: 50%;\n display: flex;\n align-items: center;\n padding-right: var(--spacing-m);\n padding-left: var(--spacing-m);\n height: var(--spacing-xl);\n box-sizing: initial;\n}\n\n.Toast-icon--info,\n.Toast-icon--success,\n.Toast-icon--alert,\n.Toast-icon--default {\n color: var(--text-white);\n}\n\n.Toast-icon--warning {\n color: var(--warning-darker);\n}\n\n.Toast-close-icon--warning:focus,\n.Toast-close-icon--warning:focus-visible {\n outline: none;\n box-shadow: var(--shadow-spread) color-mod(var(--warning-dark) a(var(--opacity-4)));\n}\n\n.Toast-close-icon--warning:hover,\n.Toast-close-icon--warning:active {\n background: var(--warning-dark);\n}\n\n.Toast-close-icon--success:focus,\n.Toast-close-icon--success:focus-visible {\n outline: none;\n box-shadow: var(--shadow-spread) color-mod(var(--success-dark) a(var(--opacity-4)));\n}\n\n.Toast-close-icon--success:hover,\n.Toast-close-icon--success:active {\n background: var(--success-dark);\n}\n\n.Toast-close-icon--info:focus,\n.Toast-close-icon--info:focus-visible {\n outline: none;\n box-shadow: var(--shadow-spread) color-mod(var(--primary-dark) a(var(--opacity-4)));\n}\n\n.Toast-close-icon--info:hover,\n.Toast-close-icon--info:active {\n background: var(--primary-dark);\n}\n\n.Toast-close-icon--alert:focus,\n.Toast-close-icon--alert:focus-visible {\n outline: none;\n box-shadow: var(--shadow-spread) color-mod(var(--alert-dark) a(var(--opacity-4)));\n}\n\n.Toast-close-icon--alert:hover,\n.Toast-close-icon--alert:active {\n background: var(--alert-dark);\n}\n\n.Toast-body {\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n}\n\n.Toast-title {\n display: flex;\n}\n\n.Toast-heading {\n flex-grow: 1;\n}\n\n.Toast-text {\n padding-top: var(--spacing);\n}\n\n.Toast-text--warning,\n.Toast-heading--warning {\n color: var(--warning-darker) !important;\n}\n\n.Toast-actions {\n display: flex;\n padding-top: var(--spacing-l);\n}\n\n.Toast-actionButton {\n color: var(--text-white);\n border-radius: var(--spacing-m);\n margin-right: var(--spacing);\n}\n\n.Toast-actionButton:last-child {\n margin-right: 0;\n}\n\n.Toast-actionButton--default {\n background: var(--inverse-light);\n}\n\n.Toast-actionButton--default:hover,\n.Toast-actionButton--default:active {\n background: var(--inverse);\n}\n\n.Toast-actionButton--default:focus {\n box-shadow: var(--shadow-spread) color-mod(var(--inverse-lighter) a(var(--opacity-4)));\n}\n\n.Toast-actionButton--info {\n background: var(--primary-dark);\n}\n\n.Toast-actionButton--info:hover,\n.Toast-actionButton--info:active {\n background: var(--primary-darker);\n}\n\n.Toast-actionButton--info:focus {\n box-shadow: var(--shadow-spread) color-mod(var(--primary-dark) a(var(--opacity-4)));\n}\n\n.Toast-actionButton--success {\n background: var(--success-dark);\n}\n\n.Toast-actionButton--success:hover,\n.Toast-actionButton--success:active {\n background: var(--success-darker);\n}\n\n.Toast-actionButton--success:focus {\n box-shadow: var(--shadow-spread) color-mod(var(--success-dark) a(var(--opacity-4)));\n}\n\n.Toast-actionButton--alert {\n background: var(--alert-dark);\n}\n\n.Toast-actionButton--alert:hover,\n.Toast-actionButton--alert:active {\n background: var(--alert-darker);\n}\n\n.Toast-actionButton--alert:focus {\n box-shadow: var(--shadow-spread) var(--alert-shadow);\n}\n\n.Toast-actionButton--warning {\n background: var(--warning-dark);\n}\n\n.Toast-actionButton--warning:hover,\n.Toast-actionButton--warning:active {\n background: var(--warning-darker);\n}\n\n.Toast-actionButton--warning:focus {\n box-shadow: var(--shadow-spread) var(--warning-shadow);\n}\n\n.Tooltip {\n max-width: var(--spacing-9);\n padding: var(--spacing-m) var(--spacing);\n border-radius: var(--spacing-m);\n z-index: 500;\n background: color-mod(var(--inverse) a(0.88));\n overflow: hidden;\n box-sizing: border-box;\n transition: opacity 120ms;\n transition-timing-function: cubic-bezier(0, 0, 0.38, 0.9);\n}\n\n.Tooltip-text {\n word-break: break-word;\n hyphens: auto;\n}\n\n@keyframes tooltip-open-top {\n from {\n top: 0px;\n opacity: 0;\n }\n to {\n top: -4px;\n opacity: 1;\n }\n}\n@keyframes tooltip-close-top {\n from {\n top: -4px;\n opacity: 1;\n }\n to {\n top: 0px;\n opacity: 0;\n }\n}\n\n.Tooltip-animation-open-top {\n animation: tooltip-open-top 120ms cubic-bezier(0, 0, 0.3, 1);\n animation-fill-mode: forwards;\n}\n.Tooltip-animation-close-top {\n animation: tooltip-close-top 80ms cubic-bezier(0.4, 0.14, 1, 1);\n}\n@keyframes tooltip-open-bottom {\n from {\n top: -4px;\n opacity: 0;\n }\n to {\n top: 0px;\n opacity: 1;\n }\n}\n@keyframes tooltip-close-bottom {\n from {\n top: 0px;\n opacity: 1;\n }\n to {\n top: -4px;\n opacity: 0;\n }\n}\n\n.Tooltip-animation-open-bottom {\n animation: tooltip-open-bottom 120ms cubic-bezier(0, 0, 0.3, 1);\n animation-fill-mode: forwards;\n}\n.Tooltip-animation-close-bottom {\n animation: tooltip-close-bottom 80ms cubic-bezier(0.4, 0.14, 1, 1);\n}\n\n@keyframes tooltip-open-left {\n from {\n left: 1px;\n opacity: 0;\n }\n to {\n left: -3px;\n opacity: 1;\n }\n}\n@keyframes tooltip-close-left {\n from {\n left: -3px;\n opacity: 1;\n }\n to {\n left: 1px;\n opacity: 0;\n }\n}\n\n.Tooltip-animation-open-left {\n animation: tooltip-open-left 120ms cubic-bezier(0, 0, 0.3, 1);\n animation-fill-mode: forwards;\n}\n.Tooltip-animation-close-left {\n animation: tooltip-close-left 80ms cubic-bezier(0.4, 0.14, 1, 1);\n}\n\n@keyframes tooltip-open-right {\n from {\n left: -3px;\n opacity: 0;\n }\n to {\n left: 1px;\n opacity: 1;\n }\n}\n@keyframes tooltip-close-right {\n from {\n left: 1px;\n opacity: 1;\n }\n to {\n left: -3px;\n opacity: 0;\n }\n}\n\n.Tooltip-animation-open-right {\n animation: tooltip-open-right 120ms cubic-bezier(0, 0, 0.3, 1);\n animation-fill-mode: forwards;\n}\n.Tooltip-animation-close-right {\n animation: tooltip-close-right 80ms cubic-bezier(0.4, 0.14, 1, 1);\n}\n\n.Tooltip-container {\n transition-delay: 400ms;\n animation-delay: 400ms;\n}\n\n.VerificationCodeInput-Input {\n display: inline-flex;\n width: 40px;\n}\n\n.VerificationCodeInput-Input .Input-input {\n text-align: center;\n}\n\n.VerificationCodeInput-Input .Input-input::-webkit-inner-spin-button,\n.VerificationCodeInput-Input .Input-input::-webkit-outer-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\n.VerticalNav {\n display: inline-flex;\n flex-direction: column;\n}\n\n.VerticalNav--expanded {\n width: 240px;\n}\n\n.VerticalNav-section {\n text-transform: uppercase;\n padding-left: var(--spacing-2);\n padding-top: var(--spacing-l);\n padding-bottom: var(--spacing-0-75);\n margin-top: var(--spacing);\n}\n\n.VerticalNav-section--border {\n border-top: var(--spacing-xs) solid var(--secondary-light);\n}\n\n.MenuItem {\n text-decoration: none;\n box-sizing: border-box;\n display: flex;\n align-items: center;\n cursor: pointer;\n transition: var(--duration--fast-01) var(--standard-productive-curve);\n width: 232px;\n}\n\n.MenuItem--horizontal {\n height: var(--spacing-3);\n padding-right: var(--spacing-l);\n padding-left: var(--spacing-l);\n border-radius: var(--spacing-2);\n margin: 0 var(--spacing-xs);\n}\n\n.MenuItem--vertical {\n margin-top: var(--spacing-m);\n margin-bottom: var(--spacing-m);\n}\n\n.MenuItem--collapsed {\n height: 28px;\n width: 28px;\n margin-left: 10px;\n margin-right: 10px;\n justify-content: center;\n border-radius: 50%;\n cursor: pointer;\n}\n\n.MenuItem--expanded {\n padding-left: var(--spacing-2);\n padding-top: var(--spacing-m);\n padding-bottom: var(--spacing-m);\n margin-right: var(--spacing);\n justify-content: space-between;\n border-radius: 0px var(--spacing-2) var(--spacing-2) 0px;\n}\n\n.MenuItem--disabled {\n pointer-events: none;\n}\n\n.MenuItem:hover {\n background: var(--secondary);\n text-decoration: none;\n}\n\n.MenuItem:active {\n background: var(--secondary-dark);\n}\n\n.MenuItem:focus {\n box-shadow: var(--shadow-spread) var(--secondary-shadow);\n outline: none;\n}\n\n.MenuItem--disabled:focus {\n box-shadow: none;\n}\n\n.MenuItem--active {\n background: var(--primary-lightest);\n}\n\n.MenuItem--active:hover {\n background: var(--primary-lighter);\n}\n\n.MenuItem--active:active {\n background: var(--primary-lighter);\n color: var(--primary-darker);\n}\n\n.MenuItem--active:active .MenuItem-Text {\n color: var(--primary-darker);\n}\n\n.MenuItem--active:focus {\n box-shadow: var(--shadow-spread) var(--primary-shadow);\n outline: none;\n}\n\n.MenuItem--rounded {\n border-radius: var(--spacing-2);\n}\n\n.MenuItem--subMenu {\n padding-left: 40px;\n}\n\n.MenuItem .Text {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.MenuItem--overflow {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.MenuItem-count {\n margin-right: var(--spacing-m);\n}\n\n.MenuItem-count--disabled {\n opacity: var(--opacity-10);\n color: var(--text);\n}\n\n.align-baseline {\n vertical-align: baseline !important;\n}\n\n.align-top {\n vertical-align: top !important;\n}\n\n.align-middle {\n vertical-align: middle !important;\n}\n\n.align-bottom {\n vertical-align: bottom !important;\n}\n\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n\n.align-text-top {\n vertical-align: text-top !important;\n}\n\n.bg-primary {\n background-color: var(--primary) !important;\n}\n\n.bg-secondary {\n background-color: var(--secondary) !important;\n}\n\n.bg-secondary-lighter {\n background-color: var(--secondary-lighter) !important;\n}\n\n.bg-secondary-lightest {\n background-color: var(--secondary-lightest) !important;\n}\n\n.bg-success {\n background-color: var(--success) !important;\n}\n\n.bg-warning {\n background-color: var(--warning) !important;\n}\n\n.bg-danger {\n background-color: var(--alert) !important;\n}\n\n.bg-light {\n background-color: var(--white) !important;\n}\n\n.bg-dark {\n background-color: var(--inverse) !important;\n}\n\n.bg-transparent {\n background-color: transparent !important;\n}\n\n.border {\n border: var(--border) !important;\n}\n\n.border-top {\n border-top: var(--border) !important;\n}\n\n.border-bottom {\n border-bottom: var(--border) !important;\n}\n\n.border-right {\n border-right: var(--border) !important;\n}\n\n.border-left {\n border-left: var(--border) !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-right-0 {\n border-right: 0 !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-left-0 {\n border-left: 0 !important;\n}\n\n.cursor-pointer {\n cursor: pointer;\n}\n\n.d-none {\n display: none !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: flex !important;\n}\n\n.d-inline-flex {\n display: inline-flex !important;\n}\n\n.flex-fill {\n flex: 1 1 auto !important;\n}\n\n.flex-row {\n flex-direction: row !important;\n}\n\n.flex-column {\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n flex-direction: column-reverse !important;\n}\n\n.flex-grow-0 {\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n flex-shrink: 1 !important;\n}\n\n.flex-wrap {\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n.justify-content-start {\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n justify-content: center !important;\n}\n\n.justify-content-between {\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n justify-content: space-around !important;\n}\n\n.justify-content-evenly {\n justify-content: space-evenly !important;\n}\n\n.align-items-start {\n align-items: flex-start !important;\n}\n\n.align-items-end {\n align-items: flex-end !important;\n}\n\n.align-items-center {\n align-items: center !important;\n}\n\n.align-items-baseline {\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n align-items: stretch !important;\n}\n\n.align-content-start {\n align-content: flex-start !important;\n}\n\n.align-content-end {\n align-content: flex-end !important;\n}\n\n.align-content-center {\n align-content: center !important;\n}\n\n.align-content-between {\n align-content: space-between !important;\n}\n\n.align-content-around {\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n align-content: stretch !important;\n}\n\n.align-self-auto {\n align-self: auto !important;\n}\n\n.align-self-start {\n align-self: flex-start !important;\n}\n\n.align-self-end {\n align-self: flex-end !important;\n}\n\n.align-self-center {\n align-self: center !important;\n}\n\n.align-self-baseline {\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n align-self: stretch !important;\n}\n\n.order-first {\n order: -1 !important;\n}\n\n.order-0 {\n order: 0 !important;\n}\n\n.order-1 {\n order: 1 !important;\n}\n\n.order-2 {\n order: 2 !important;\n}\n\n.order-3 {\n order: 3 !important;\n}\n\n.order-4 {\n order: 4 !important;\n}\n\n.order-5 {\n order: 5 !important;\n}\n\n.order-last {\n order: 6 !important;\n}\n\n.Row {\n display: flex;\n flex-wrap: wrap;\n flex: 1 100%;\n}\n\n.Col {\n position: relative;\n box-sizing: border-box;\n flex: 1 0 0%;\n}\n\n.Col--auto {\n flex: 0 0 auto;\n width: auto;\n}\n\n.Col--1 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 1);\n}\n\n.Col--2 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 2);\n}\n\n.Col--3 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 3);\n}\n\n.Col--4 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 4);\n}\n\n.Col--5 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 5);\n}\n\n.Col--6 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 6);\n}\n\n.Col--7 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 7);\n}\n\n.Col--8 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 8);\n}\n\n.Col--9 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 9);\n}\n\n.Col--10 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 10);\n}\n\n.Col--11 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 11);\n}\n\n.Col--12 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 12);\n}\n\n/* if the viewport is between 0 to 575 pixels wide. */\n\n@media (max-width: 575px) {\n .Col--xs-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .Col--xs-1 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 1);\n }\n .Col--xs-2 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 2);\n }\n .Col--xs-3 {\n flex: 0 0 auto;\n }\n .Col--xs-4 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 4);\n }\n .Col--xs-5 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 5);\n }\n .Col--xs-6 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 6);\n }\n .Col--xs-7 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 7);\n }\n .Col--xs-8 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 8);\n }\n .Col--xs-9 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 9);\n }\n .Col--xs-10 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 10);\n }\n .Col--xs-11 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 11);\n }\n .Col--xs-12 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 12);\n }\n}\n\n/* if the viewport is between 576 and 767 pixels wide. */\n\n@media (min-width: 576px) and (max-width: 767px) {\n .Col--s-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .Col--s-1 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 1);\n }\n .Col--s-2 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 2);\n }\n .Col--s-3 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 3);\n }\n .Col--s-4 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 4);\n }\n .Col--s-5 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 5);\n }\n .Col--s-6 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 6);\n }\n .Col--s-7 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 7);\n }\n .Col--s-8 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 8);\n }\n .Col--s-9 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 9);\n }\n .Col--s-10 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 10);\n }\n .Col--s-11 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 11);\n }\n .Col--s-12 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 12);\n }\n}\n\n/* if the viewport is between 768 and 991 pixels wide. */\n\n@media (min-width: 768px) and (max-width: 991px) {\n .Col--m-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .Col--m-1 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 1);\n }\n .Col--m-2 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 2);\n }\n .Col--m-3 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 3);\n }\n .Col--m-4 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 4);\n }\n .Col--m-5 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 5);\n }\n .Col--m-6 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 6);\n }\n .Col--m-7 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 7);\n }\n .Col--m-8 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 8);\n }\n .Col--m-9 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 9);\n }\n .Col--m-10 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 10);\n }\n .Col--m-11 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 11);\n }\n .Col--m-12 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 12);\n }\n}\n\n/* if the viewport is between 992 and 1199 pixels wide. */\n\n@media (min-width: 992px) and (max-width: 1199px) {\n .Col--l-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .Col--l-1 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 1);\n }\n .Col--l-2 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 2);\n }\n .Col--l-3 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 3);\n }\n .Col--l-4 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 4);\n }\n .Col--l-5 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 5);\n }\n .Col--l-6 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 6);\n }\n .Col--l-7 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 7);\n }\n .Col--l-8 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 8);\n }\n .Col--l-9 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 9);\n }\n .Col--l-10 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 10);\n }\n .Col--l-11 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 11);\n }\n .Col--l-12 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 12);\n }\n}\n\n/* if the viewport is 1200 pixels wide or wider. */\n\n@media (min-width: 1200px) {\n .Col--xl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .Col--xl-1 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 1);\n }\n .Col--xl-2 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 2);\n }\n .Col--xl-3 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 3);\n }\n .Col--xl-4 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 4);\n }\n .Col--xl-5 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 5);\n }\n .Col--xl-6 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 6);\n }\n .Col--xl-7 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 7);\n }\n .Col--xl-8 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 8);\n }\n .Col--xl-9 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 9);\n }\n .Col--xl-10 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 10);\n }\n .Col--xl-11 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 11);\n }\n .Col--xl-12 {\n flex: 0 0 auto;\n width: calc(100% / var(--grid-columns) * 12);\n }\n}\n\n.overflow-auto {\n overflow: auto !important;\n}\n\n.overflow-hidden {\n overflow: hidden !important;\n}\n\n.position-static {\n position: static !important;\n}\n\n.position-relative {\n position: relative !important;\n}\n\n.position-absolute {\n position: absolute !important;\n}\n\n.position-fixed {\n position: fixed !important;\n}\n\n.position-sticky {\n position: -webkit-sticky !important;\n position: sticky !important;\n}\n\n.w-25 {\n width: 25% !important;\n}\n\n.w-50 {\n width: 50% !important;\n}\n\n.w-75 {\n width: 75% !important;\n}\n\n.w-100 {\n width: 100% !important;\n}\n\n.w-auto {\n width: auto !important;\n}\n\n.mw-100 {\n max-width: 100% !important;\n}\n\n.vw-25 {\n width: 25vw !important;\n}\n\n.vw-50 {\n width: 50vw !important;\n}\n\n.vw-75 {\n width: 75vw !important;\n}\n\n.vw-100 {\n width: 100vw !important;\n}\n\n.min-vw-100 {\n min-width: 100vw !important;\n}\n\n.h-25 {\n height: 25% !important;\n}\n\n.h-50 {\n height: 50% !important;\n}\n\n.h-75 {\n height: 75% !important;\n}\n\n.h-100 {\n height: 100% !important;\n}\n\n.h-auto {\n height: auto !important;\n}\n\n.mh-100 {\n max-height: 100% !important;\n}\n\n.vh-25 {\n height: 25vh !important;\n}\n\n.vh-50 {\n height: 50vh !important;\n}\n\n.vh-75 {\n height: 75vh !important;\n}\n\n.vh-100 {\n height: 100vh !important;\n}\n\n.min-vh-100 {\n min-height: 100vh !important;\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.m-1 {\n margin: var(--spacing-xs) !important;\n}\n\n.m-2 {\n margin: var(--spacing-s) !important;\n}\n\n.m-3 {\n margin: var(--spacing-m) !important;\n}\n\n.m-4 {\n margin: var(--spacing) !important;\n}\n\n.m-5 {\n margin: var(--spacing-l) !important;\n}\n\n.m-6 {\n margin: var(--spacing-2) !important;\n}\n\n.m-7 {\n margin: var(--spacing-xl) !important;\n}\n\n.m-8 {\n margin: var(--spacing-3) !important;\n}\n\n.m-9 {\n margin: var(--spacing-4) !important;\n}\n\n.m-10 {\n margin: var(--spacing-5) !important;\n}\n\n.m-11 {\n margin: var(--spacing-6) !important;\n}\n\n.m-12 {\n margin: var(--spacing-7) !important;\n}\n\n.m-13 {\n margin: var(--spacing-8) !important;\n}\n\n.m-14 {\n margin: var(--spacing-9) !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mx-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n}\n\n.mx-1 {\n margin-right: var(--spacing-xs) !important;\n margin-left: var(--spacing-xs) !important;\n}\n\n.mx-2 {\n margin-right: var(--spacing-s) !important;\n margin-left: var(--spacing-s) !important;\n}\n\n.mx-3 {\n margin-right: var(--spacing-m) !important;\n margin-left: var(--spacing-m) !important;\n}\n\n.mx-4 {\n margin-right: var(--spacing) !important;\n margin-left: var(--spacing) !important;\n}\n\n.mx-5 {\n margin-right: var(--spacing-l) !important;\n margin-left: var(--spacing-l) !important;\n}\n\n.mx-6 {\n margin-right: var(--spacing-2) !important;\n margin-left: var(--spacing-2) !important;\n}\n\n.mx-7 {\n margin-right: var(--spacing-xl) !important;\n margin-left: var(--spacing-xl) !important;\n}\n\n.mx-8 {\n margin-right: var(--spacing-3) !important;\n margin-left: var(--spacing-3) !important;\n}\n\n.mx-9 {\n margin-right: var(--spacing-4) !important;\n margin-left: var(--spacing-4) !important;\n}\n\n.mx-10 {\n margin-right: var(--spacing-5) !important;\n margin-left: var(--spacing-5) !important;\n}\n\n.mx-11 {\n margin-right: var(--spacing-6) !important;\n margin-left: var(--spacing-6) !important;\n}\n\n.mx-12 {\n margin-right: var(--spacing-7) !important;\n margin-left: var(--spacing-7) !important;\n}\n\n.mx-13 {\n margin-right: var(--spacing-8) !important;\n margin-left: var(--spacing-8) !important;\n}\n\n.mx-14 {\n margin-right: var(--spacing-9) !important;\n margin-left: var(--spacing-9) !important;\n}\n\n.mx-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n}\n\n.my-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n}\n\n.my-1 {\n margin-top: var(--spacing-xs) !important;\n margin-bottom: var(--spacing-xs) !important;\n}\n\n.my-2 {\n margin-top: var(--spacing-s) !important;\n margin-bottom: var(--spacing-s) !important;\n}\n\n.my-3 {\n margin-top: var(--spacing-m) !important;\n margin-bottom: var(--spacing-m) !important;\n}\n\n.my-4 {\n margin-top: var(--spacing) !important;\n margin-bottom: var(--spacing) !important;\n}\n\n.my-5 {\n margin-top: var(--spacing-l) !important;\n margin-bottom: var(--spacing-l) !important;\n}\n\n.my-6 {\n margin-top: var(--spacing-2) !important;\n margin-bottom: var(--spacing-2) !important;\n}\n\n.my-7 {\n margin-top: var(--spacing-xl) !important;\n margin-bottom: var(--spacing-xl) !important;\n}\n\n.my-8 {\n margin-top: var(--spacing-3) !important;\n margin-bottom: var(--spacing-3) !important;\n}\n\n.my-9 {\n margin-top: var(--spacing-4) !important;\n margin-bottom: var(--spacing-4) !important;\n}\n\n.my-10 {\n margin-top: var(--spacing-5) !important;\n margin-bottom: var(--spacing-5) !important;\n}\n\n.my-11 {\n margin-top: var(--spacing-6) !important;\n margin-bottom: var(--spacing-6) !important;\n}\n\n.my-12 {\n margin-top: var(--spacing-7) !important;\n margin-bottom: var(--spacing-7) !important;\n}\n\n.my-13 {\n margin-top: var(--spacing-8) !important;\n margin-bottom: var(--spacing-8) !important;\n}\n\n.my-14 {\n margin-top: var(--spacing-9) !important;\n margin-bottom: var(--spacing-9) !important;\n}\n\n.my-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n}\n\n.mt-0 {\n margin-top: 0 !important;\n}\n\n.mt-1 {\n margin-top: var(--spacing-xs) !important;\n}\n\n.mt-2 {\n margin-top: var(--spacing-s) !important;\n}\n\n.mt-3 {\n margin-top: var(--spacing-m) !important;\n}\n\n.mt-4 {\n margin-top: var(--spacing) !important;\n}\n\n.mt-5 {\n margin-top: var(--spacing-l) !important;\n}\n\n.mt-6 {\n margin-top: var(--spacing-2) !important;\n}\n\n.mt-7 {\n margin-top: var(--spacing-xl) !important;\n}\n\n.mt-8 {\n margin-top: var(--spacing-3) !important;\n}\n\n.mt-9 {\n margin-top: var(--spacing-4) !important;\n}\n\n.mt-10 {\n margin-top: var(--spacing-5) !important;\n}\n\n.mt-11 {\n margin-top: var(--spacing-6) !important;\n}\n\n.mt-12 {\n margin-top: var(--spacing-7) !important;\n}\n\n.mt-13 {\n margin-top: var(--spacing-8) !important;\n}\n\n.mt-14 {\n margin-top: var(--spacing-9) !important;\n}\n\n.mt-auto {\n margin-top: auto !important;\n}\n\n.mb-0 {\n margin-bottom: 0 !important;\n}\n\n.mb-1 {\n margin-bottom: var(--spacing-xs) !important;\n}\n\n.mb-2 {\n margin-bottom: var(--spacing-s) !important;\n}\n\n.mb-3 {\n margin-bottom: var(--spacing-m) !important;\n}\n\n.mb-4 {\n margin-bottom: var(--spacing) !important;\n}\n\n.mb-5 {\n margin-bottom: var(--spacing-l) !important;\n}\n\n.mb-6 {\n margin-bottom: var(--spacing-2) !important;\n}\n\n.mb-7 {\n margin-bottom: var(--spacing-xl) !important;\n}\n\n.mb-8 {\n margin-bottom: var(--spacing-3) !important;\n}\n\n.mb-9 {\n margin-bottom: var(--spacing-4) !important;\n}\n\n.mb-10 {\n margin-bottom: var(--spacing-5) !important;\n}\n\n.mb-11 {\n margin-bottom: var(--spacing-6) !important;\n}\n\n.mb-12 {\n margin-bottom: var(--spacing-7) !important;\n}\n\n.mb-13 {\n margin-bottom: var(--spacing-8) !important;\n}\n\n.mb-14 {\n margin-bottom: var(--spacing-9) !important;\n}\n\n.mb-auto {\n margin-bottom: auto !important;\n}\n\n.mr-0 {\n margin-right: 0 !important;\n}\n\n.mr-1 {\n margin-right: var(--spacing-xs) !important;\n}\n\n.mr-2 {\n margin-right: var(--spacing-s) !important;\n}\n\n.mr-3 {\n margin-right: var(--spacing-m) !important;\n}\n\n.mr-4 {\n margin-right: var(--spacing) !important;\n}\n\n.mr-5 {\n margin-right: var(--spacing-l) !important;\n}\n\n.mr-6 {\n margin-right: var(--spacing-2) !important;\n}\n\n.mr-7 {\n margin-right: var(--spacing-xl) !important;\n}\n\n.mr-8 {\n margin-right: var(--spacing-3) !important;\n}\n\n.mr-9 {\n margin-right: var(--spacing-4) !important;\n}\n\n.mr-10 {\n margin-right: var(--spacing-5) !important;\n}\n\n.mr-11 {\n margin-right: var(--spacing-6) !important;\n}\n\n.mr-12 {\n margin-right: var(--spacing-7) !important;\n}\n\n.mr-13 {\n margin-right: var(--spacing-8) !important;\n}\n\n.mr-14 {\n margin-right: var(--spacing-9) !important;\n}\n\n.mr-auto {\n margin-right: auto !important;\n}\n\n.ml-0 {\n margin-left: 0 !important;\n}\n\n.ml-1 {\n margin-left: var(--spacing-xs) !important;\n}\n\n.ml-2 {\n margin-left: var(--spacing-s) !important;\n}\n\n.ml-3 {\n margin-left: var(--spacing-m) !important;\n}\n\n.ml-4 {\n margin-left: var(--spacing) !important;\n}\n\n.ml-5 {\n margin-left: var(--spacing-l) !important;\n}\n\n.ml-6 {\n margin-left: var(--spacing-2) !important;\n}\n\n.ml-7 {\n margin-left: var(--spacing-xl) !important;\n}\n\n.ml-8 {\n margin-left: var(--spacing-3) !important;\n}\n\n.ml-9 {\n margin-left: var(--spacing-4) !important;\n}\n\n.ml-10 {\n margin-left: var(--spacing-5) !important;\n}\n\n.ml-11 {\n margin-left: var(--spacing-6) !important;\n}\n\n.ml-12 {\n margin-left: var(--spacing-7) !important;\n}\n\n.ml-13 {\n margin-left: var(--spacing-8) !important;\n}\n\n.ml-14 {\n margin-left: var(--spacing-9) !important;\n}\n\n.ml-auto {\n margin-left: auto !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.p-1 {\n padding: var(--spacing-xs) !important;\n}\n\n.p-2 {\n padding: var(--spacing-s) !important;\n}\n\n.p-3 {\n padding: var(--spacing-m) !important;\n}\n\n.p-4 {\n padding: var(--spacing) !important;\n}\n\n.p-5 {\n padding: var(--spacing-l) !important;\n}\n\n.p-6 {\n padding: var(--spacing-2) !important;\n}\n\n.p-7 {\n padding: var(--spacing-xl) !important;\n}\n\n.p-8 {\n padding: var(--spacing-3) !important;\n}\n\n.p-9 {\n padding: var(--spacing-4) !important;\n}\n\n.p-10 {\n padding: var(--spacing-5) !important;\n}\n\n.p-11 {\n padding: var(--spacing-6) !important;\n}\n\n.p-12 {\n padding: var(--spacing-7) !important;\n}\n\n.p-13 {\n padding: var(--spacing-8) !important;\n}\n\n.p-14 {\n padding: var(--spacing-9) !important;\n}\n\n.p-auto {\n padding: auto !important;\n}\n\n.px-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n}\n\n.px-1 {\n padding-right: var(--spacing-xs) !important;\n padding-left: var(--spacing-xs) !important;\n}\n\n.px-2 {\n padding-right: var(--spacing-s) !important;\n padding-left: var(--spacing-s) !important;\n}\n\n.px-3 {\n padding-right: var(--spacing-m) !important;\n padding-left: var(--spacing-m) !important;\n}\n\n.px-4 {\n padding-right: var(--spacing) !important;\n padding-left: var(--spacing) !important;\n}\n\n.px-5 {\n padding-right: var(--spacing-l) !important;\n padding-left: var(--spacing-l) !important;\n}\n\n.px-6 {\n padding-right: var(--spacing-2) !important;\n padding-left: var(--spacing-2) !important;\n}\n\n.px-7 {\n padding-right: var(--spacing-xl) !important;\n padding-left: var(--spacing-xl) !important;\n}\n\n.px-8 {\n padding-right: var(--spacing-3) !important;\n padding-left: var(--spacing-3) !important;\n}\n\n.px-9 {\n padding-right: var(--spacing-4) !important;\n padding-left: var(--spacing-4) !important;\n}\n\n.px-10 {\n padding-right: var(--spacing-5) !important;\n padding-left: var(--spacing-5) !important;\n}\n\n.px-11 {\n padding-right: var(--spacing-6) !important;\n padding-left: var(--spacing-6) !important;\n}\n\n.px-12 {\n padding-right: var(--spacing-7) !important;\n padding-left: var(--spacing-7) !important;\n}\n\n.px-13 {\n padding-right: var(--spacing-8) !important;\n padding-left: var(--spacing-8) !important;\n}\n\n.px-14 {\n padding-right: var(--spacing-9) !important;\n padding-left: var(--spacing-9) !important;\n}\n\n.px-auto {\n padding-right: auto !important;\n padding-left: auto !important;\n}\n\n.py-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n}\n\n.py-1 {\n padding-top: var(--spacing-xs) !important;\n padding-bottom: var(--spacing-xs) !important;\n}\n\n.py-2 {\n padding-top: var(--spacing-s) !important;\n padding-bottom: var(--spacing-s) !important;\n}\n\n.py-3 {\n padding-top: var(--spacing-m) !important;\n padding-bottom: var(--spacing-m) !important;\n}\n\n.py-4 {\n padding-top: var(--spacing) !important;\n padding-bottom: var(--spacing) !important;\n}\n\n.py-5 {\n padding-top: var(--spacing-l) !important;\n padding-bottom: var(--spacing-l) !important;\n}\n\n.py-6 {\n padding-top: var(--spacing-2) !important;\n padding-bottom: var(--spacing-2) !important;\n}\n\n.py-7 {\n padding-top: var(--spacing-xl) !important;\n padding-bottom: var(--spacing-xl) !important;\n}\n\n.py-8 {\n padding-top: var(--spacing-3) !important;\n padding-bottom: var(--spacing-3) !important;\n}\n\n.py-9 {\n padding-top: var(--spacing-4) !important;\n padding-bottom: var(--spacing-4) !important;\n}\n\n.py-10 {\n padding-top: var(--spacing-5) !important;\n padding-bottom: var(--spacing-5) !important;\n}\n\n.py-11 {\n padding-top: var(--spacing-6) !important;\n padding-bottom: var(--spacing-6) !important;\n}\n\n.py-12 {\n padding-top: var(--spacing-7) !important;\n padding-bottom: var(--spacing-7) !important;\n}\n\n.py-13 {\n padding-top: var(--spacing-8) !important;\n padding-bottom: var(--spacing-8) !important;\n}\n\n.py-14 {\n padding-top: var(--spacing-9) !important;\n padding-bottom: var(--spacing-9) !important;\n}\n\n.py-auto {\n padding-top: auto !important;\n padding-bottom: auto !important;\n}\n\n.pt-0 {\n padding-top: 0 !important;\n}\n\n.pt-1 {\n padding-top: var(--spacing-xs) !important;\n}\n\n.pt-2 {\n padding-top: var(--spacing-s) !important;\n}\n\n.pt-3 {\n padding-top: var(--spacing-m) !important;\n}\n\n.pt-4 {\n padding-top: var(--spacing) !important;\n}\n\n.pt-5 {\n padding-top: var(--spacing-l) !important;\n}\n\n.pt-6 {\n padding-top: var(--spacing-2) !important;\n}\n\n.pt-7 {\n padding-top: var(--spacing-xl) !important;\n}\n\n.pt-8 {\n padding-top: var(--spacing-3) !important;\n}\n\n.pt-9 {\n padding-top: var(--spacing-4) !important;\n}\n\n.pt-10 {\n padding-top: var(--spacing-5) !important;\n}\n\n.pt-11 {\n padding-top: var(--spacing-6) !important;\n}\n\n.pt-12 {\n padding-top: var(--spacing-7) !important;\n}\n\n.pt-13 {\n padding-top: var(--spacing-8) !important;\n}\n\n.pt-14 {\n padding-top: var(--spacing-9) !important;\n}\n\n.pt-auto {\n padding-top: auto !important;\n}\n\n.pb-0 {\n padding-bottom: 0 !important;\n}\n\n.pb-1 {\n padding-bottom: var(--spacing-xs) !important;\n}\n\n.pb-2 {\n padding-bottom: var(--spacing-s) !important;\n}\n\n.pb-3 {\n padding-bottom: var(--spacing-m) !important;\n}\n\n.pb-4 {\n padding-bottom: var(--spacing) !important;\n}\n\n.pb-5 {\n padding-bottom: var(--spacing-l) !important;\n}\n\n.pb-6 {\n padding-bottom: var(--spacing-2) !important;\n}\n\n.pb-7 {\n padding-bottom: var(--spacing-xl) !important;\n}\n\n.pb-8 {\n padding-bottom: var(--spacing-3) !important;\n}\n\n.pb-9 {\n padding-bottom: var(--spacing-4) !important;\n}\n\n.pb-10 {\n padding-bottom: var(--spacing-5) !important;\n}\n\n.pb-11 {\n padding-bottom: var(--spacing-6) !important;\n}\n\n.pb-12 {\n padding-bottom: var(--spacing-7) !important;\n}\n\n.pb-13 {\n padding-bottom: var(--spacing-8) !important;\n}\n\n.pb-14 {\n padding-bottom: var(--spacing-9) !important;\n}\n\n.pb-auto {\n padding-bottom: auto !important;\n}\n\n.pr-0 {\n padding-right: 0 !important;\n}\n\n.pr-1 {\n padding-right: var(--spacing-xs) !important;\n}\n\n.pr-2 {\n padding-right: var(--spacing-s) !important;\n}\n\n.pr-3 {\n padding-right: var(--spacing-m) !important;\n}\n\n.pr-4 {\n padding-right: var(--spacing) !important;\n}\n\n.pr-5 {\n padding-right: var(--spacing-l) !important;\n}\n\n.pr-6 {\n padding-right: var(--spacing-2) !important;\n}\n\n.pr-7 {\n padding-right: var(--spacing-xl) !important;\n}\n\n.pr-8 {\n padding-right: var(--spacing-3) !important;\n}\n\n.pr-9 {\n padding-right: var(--spacing-4) !important;\n}\n\n.pr-10 {\n padding-right: var(--spacing-5) !important;\n}\n\n.pr-11 {\n padding-right: var(--spacing-6) !important;\n}\n\n.pr-12 {\n padding-right: var(--spacing-7) !important;\n}\n\n.pr-13 {\n padding-right: var(--spacing-8) !important;\n}\n\n.pr-14 {\n padding-right: var(--spacing-9) !important;\n}\n\n.pr-auto {\n padding-right: auto !important;\n}\n\n.pl-0 {\n padding-left: 0 !important;\n}\n\n.pl-1 {\n padding-left: var(--spacing-xs) !important;\n}\n\n.pl-2 {\n padding-left: var(--spacing-s) !important;\n}\n\n.pl-3 {\n padding-left: var(--spacing-m) !important;\n}\n\n.pl-4 {\n padding-left: var(--spacing) !important;\n}\n\n.pl-5 {\n padding-left: var(--spacing-l) !important;\n}\n\n.pl-6 {\n padding-left: var(--spacing-2) !important;\n}\n\n.pl-7 {\n padding-left: var(--spacing-xl) !important;\n}\n\n.pl-8 {\n padding-left: var(--spacing-3) !important;\n}\n\n.pl-9 {\n padding-left: var(--spacing-4) !important;\n}\n\n.pl-10 {\n padding-left: var(--spacing-5) !important;\n}\n\n.pl-11 {\n padding-left: var(--spacing-6) !important;\n}\n\n.pl-12 {\n padding-left: var(--spacing-7) !important;\n}\n\n.pl-13 {\n padding-left: var(--spacing-8) !important;\n}\n\n.pl-14 {\n padding-left: var(--spacing-9) !important;\n}\n\n.pl-auto {\n padding-left: auto !important;\n}\n\n.text-align-start {\n text-align: start !important;\n}\n\n.text-align-end {\n text-align: end !important;\n}\n\n.text-align-center {\n text-align: center !important;\n}\n\n.text-align-justify {\n text-align: justify !important;\n}\n\n.text-align-left {\n text-align: left !important;\n}\n\n.text-align-right {\n text-align: right !important;\n}\n\n.color-white {\n color: var(--white);\n}\n\n.color-primary {\n color: var(--primary);\n}\n\n.color-secondary {\n color: var(--secondary);\n}\n\n.color-success {\n color: var(--success);\n}\n\n.color-alert {\n color: var(--alert);\n}\n\n.color-warning {\n color: var(--warning);\n}\n\n.color-accent1 {\n color: var(--accent1);\n}\n\n.color-accent2 {\n color: var(--accent2);\n}\n\n.color-accent3 {\n color: var(--accent3);\n}\n\n.color-accent4 {\n color: var(--accent4);\n}\n\n.color-inverse {\n color: var(--inverse);\n}\n\n/* dark */\n\n.color-primary-dark {\n color: var(--primary-dark);\n}\n\n.color-secondary-dark {\n color: var(--secondary-dark);\n}\n\n.color-success-dark {\n color: var(--success-dark);\n}\n\n.color-alert-dark {\n color: var(--alert-dark);\n}\n\n.color-warning-dark {\n color: var(--warning-dark);\n}\n\n.color-accent1-dark {\n color: var(--accent1-dark);\n}\n\n.color-accent2-dark {\n color: var(--accent2-dark);\n}\n\n.color-accent3-dark {\n color: var(--accent3-dark);\n}\n\n.color-accent4-dark {\n color: var(--accent4-dark);\n}\n\n/* darker */\n\n.color-primary-darker {\n color: var(--primary-darker);\n}\n\n.color-success-darker {\n color: var(--success-darker);\n}\n\n.color-alert-darker {\n color: var(--alert-darker);\n}\n\n.color-warning-darker {\n color: var(--warning-darker);\n}\n\n.color-accent1-darker {\n color: var(--accent1-darker);\n}\n\n.color-accent2-darker {\n color: var(--accent2-darker);\n}\n\n.color-accent3-darker {\n color: var(--accent3-darker);\n}\n\n.color-accent4-darker {\n color: var(--accent4-darker);\n}\n\n/* light */\n\n.color-primary-light {\n color: var(--primary-light);\n}\n\n.color-secondary-light {\n color: var(--secondary-light);\n}\n\n.color-success-light {\n color: var(--success-light);\n}\n\n.color-alert-light {\n color: var(--alert-light);\n}\n\n.color-warning-light {\n color: var(--warning-light);\n}\n\n.color-accent1-light {\n color: var(--accent1-light);\n}\n\n.color-accent2-light {\n color: var(--accent2-light);\n}\n\n.color-accent3-light {\n color: var(--accent3-light);\n}\n\n.color-accent4-light {\n color: var(--accent4-light);\n}\n\n.color-inverse-light {\n color: var(--inverse-light);\n}\n\n/* lighter */\n.color-primary-lighter {\n color: var(--primary-lighter);\n}\n\n.color-secondary-lighter {\n color: var(--secondary-lighter);\n}\n\n.color-success-lighter {\n color: var(--success-lighter);\n}\n\n.color-alert-lighter {\n color: var(--alert-lighter);\n}\n\n.color-warning-lighter {\n color: var(--warning-lighter);\n}\n\n.color-accent1-lighter {\n color: var(--accent1-lighter);\n}\n\n.color-accent2-lighter {\n color: var(--accent2-lighter);\n}\n\n.color-accent3-lighter {\n color: var(--accent3-lighter);\n}\n\n.color-accent4-lighter {\n color: var(--accent4-lighter);\n}\n\n.color-inverse-lighter {\n color: var(--inverse-lighter);\n}\n\n/* lightest */\n.color-primary-lightest {\n color: var(--primary-lightest);\n}\n\n.color-secondary-lightest {\n color: var(--secondary-lightest);\n}\n\n.color-success-lightest {\n color: var(--success-lightest);\n}\n\n.color-alert-lightest {\n color: var(--alert-lightest);\n}\n\n.color-warning-lightest {\n color: var(--warning-lightest);\n}\n\n.color-accent1-lightest {\n color: var(--accent1-lightest);\n}\n\n.color-accent2-lightest {\n color: var(--accent2-lightest);\n}\n\n.color-accent3-lightest {\n color: var(--accent3-lightest);\n}\n\n.color-accent4-lightest {\n color: var(--accent4-lightest);\n}\n\n.color-inverse-lightest {\n color: var(--inverse-lightest);\n}\n\n/* shadow */\n.color-primary-shadow {\n color: var(--primary-shadow);\n}\n\n.color-secondary-shadow {\n color: var(--secondary-shadow);\n}\n\n.color-success-shadow {\n color: var(--success-shadow);\n}\n\n.color-alert-shadow {\n color: var(--alert-shadow);\n}\n\n.color-warning-shadow {\n color: var(--warning-shadow);\n}\n\n.color-accent1-shadow {\n color: var(--accent1-shadow);\n}\n\n.color-accent2-shadow {\n color: var(--accent2-shadow);\n}\n\n.color-accent3-shadow {\n color: var(--accent3-shadow);\n}\n\n.color-accent4-shadow {\n color: var(--accent4-shadow);\n}\n\n.color-inverse-shadow {\n color: var(--inverse-shadow);\n}\n\n/** utility **/\n\n.hide-scroll-bar::-webkit-scrollbar {\n height: 0px;\n /* Remove scrollbar space */\n background: transparent;\n /* Optional: just make scrollbar invisible */\n}\n\n.hide-scroll-bar {\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n\n.ellipsis {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.ellipsis--noWrap {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.cursor-pointer {\n cursor: pointer;\n}\n\n.white-space-nowrap {\n white-space: nowrap;\n}\n"]} \ No newline at end of file diff --git a/dist/.lib/tsconfig.type.tsbuildinfo b/dist/.lib/tsconfig.type.tsbuildinfo index d4fdd5afcd..aef91b7197 100644 --- a/dist/.lib/tsconfig.type.tsbuildinfo +++ b/dist/.lib/tsconfig.type.tsbuildinfo @@ -26,6 +26,16 @@ "signature": "5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06", "affectsGlobalScope": false }, + "../../node_modules/typescript/lib/lib.es2019.d.ts": { + "version": "e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84", + "signature": "e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84", + "affectsGlobalScope": false + }, + "../../node_modules/typescript/lib/lib.es2020.d.ts": { + "version": "94b4108552f078722078d7c4a010ca4851063882f6c0c51a1468aa7a39aed4b3", + "signature": "94b4108552f078722078d7c4a010ca4851063882f6c0c51a1468aa7a39aed4b3", + "affectsGlobalScope": false + }, "../../node_modules/typescript/lib/lib.dom.d.ts": { "version": "9affb0a2ddc57df5b8174c0af96c288d697a262e5bc9ca1f544c999dc64a91e6", "signature": "9affb0a2ddc57df5b8174c0af96c288d697a262e5bc9ca1f544c999dc64a91e6", @@ -131,29 +141,54 @@ "signature": "c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8", "affectsGlobalScope": true }, + "../../node_modules/typescript/lib/lib.es2019.array.d.ts": { + "version": "9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951", + "signature": "9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951", + "affectsGlobalScope": true + }, + "../../node_modules/typescript/lib/lib.es2019.object.d.ts": { + "version": "6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de", + "signature": "6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de", + "affectsGlobalScope": true + }, + "../../node_modules/typescript/lib/lib.es2019.string.d.ts": { + "version": "93544ca2f26a48716c1b6c5091842cad63129daac422dfa4bc52460465f22bb1", + "signature": "93544ca2f26a48716c1b6c5091842cad63129daac422dfa4bc52460465f22bb1", + "affectsGlobalScope": true + }, + "../../node_modules/typescript/lib/lib.es2019.symbol.d.ts": { + "version": "2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993", + "signature": "2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993", + "affectsGlobalScope": true + }, "../../node_modules/typescript/lib/lib.es2020.bigint.d.ts": { "version": "4f435f794b7853c55e2ae7cff6206025802aa79232d2867544178f2ca8ff5eaa", "signature": "4f435f794b7853c55e2ae7cff6206025802aa79232d2867544178f2ca8ff5eaa", "affectsGlobalScope": true }, + "../../node_modules/typescript/lib/lib.es2020.promise.d.ts": { + "version": "7435b75fdf3509622e79622dbe5091cf4b09688410ee2034e4fc17d0c99d0862", + "signature": "7435b75fdf3509622e79622dbe5091cf4b09688410ee2034e4fc17d0c99d0862", + "affectsGlobalScope": true + }, + "../../node_modules/typescript/lib/lib.es2020.string.d.ts": { + "version": "faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e", + "signature": "faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e", + "affectsGlobalScope": true + }, + "../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts": { + "version": "936d7d2e8851af9ccfa5333b15e877a824417d352b1d7fd06388639dc69ef80a", + "signature": "936d7d2e8851af9ccfa5333b15e877a824417d352b1d7fd06388639dc69ef80a", + "affectsGlobalScope": true + }, "../../node_modules/typescript/lib/lib.esnext.intl.d.ts": { "version": "89bf2b7a601b73ea4311eda9c41f86a58994fec1bee3b87c4a14d68d9adcdcbd", "signature": "89bf2b7a601b73ea4311eda9c41f86a58994fec1bee3b87c4a14d68d9adcdcbd", "affectsGlobalScope": true }, "../../node_modules/tslib/tslib.d.ts": { - "version": "12f4cfe2fe60b810c3174537bc2ddb20c1067b7768643d12cb1266fd183afb75", - "signature": "12f4cfe2fe60b810c3174537bc2ddb20c1067b7768643d12cb1266fd183afb75", - "affectsGlobalScope": false - }, - "../../core/utils/css.ts": { - "version": "c61ffa4f2600befae5f5fb6654f41ea15ad061f6e3c429b7c3c1f2c571ca3e9a", - "signature": "6e0c7d47c7fc8fdd5b11186cfb595099643d345d006575db6dccd11f60187459", - "affectsGlobalScope": false - }, - "../../core/utils/types.tsx": { - "version": "46080b05bf85af49787e3090538f823d8ffa44213b474f96445ab3b140202195", - "signature": "af052fa508b4382ae49186d7699bb9987d3cebde9125b38b5e414e4e737bb098", + "version": "14a84fbe4ec531dcbaf5d2594fd95df107258e60ae6c6a076404f13c3f66f28e", + "signature": "14a84fbe4ec531dcbaf5d2594fd95df107258e60ae6c6a076404f13c3f66f28e", "affectsGlobalScope": false }, "../../node_modules/@types/react/global.d.ts": { @@ -161,9 +196,9 @@ "signature": "ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6", "affectsGlobalScope": true }, - "../../node_modules/csstype/index.d.ts": { - "version": "4ee363f83d7be2202f34fcd84c44da71bf3a9329fee8a05f976f75083a52ea94", - "signature": "4ee363f83d7be2202f34fcd84c44da71bf3a9329fee8a05f976f75083a52ea94", + "../../node_modules/@types/react/node_modules/csstype/index.d.ts": { + "version": "381899b8d1d4c1be716f18cb5242ba39f66f4b1e31d45af62a32a99f8edcb39d", + "signature": "381899b8d1d4c1be716f18cb5242ba39f66f4b1e31d45af62a32a99f8edcb39d", "affectsGlobalScope": false }, "../../node_modules/@types/prop-types/index.d.ts": { @@ -177,8 +212,8 @@ "affectsGlobalScope": false }, "../../node_modules/@types/react/index.d.ts": { - "version": "7288cf81ca60c193ded5c5ea1303a7334a08a7b66ff5d775860c3403806249ff", - "signature": "7288cf81ca60c193ded5c5ea1303a7334a08a7b66ff5d775860c3403806249ff", + "version": "1bc82f5b3bb93df76d19730c84467b0b346187198537135d63a672956f323720", + "signature": "1bc82f5b3bb93df76d19730c84467b0b346187198537135d63a672956f323720", "affectsGlobalScope": true }, "../../node_modules/classnames/index.d.ts": { @@ -186,84 +221,44 @@ "signature": "d153cbce75b7e1621eda0a4148748f44edd71ff44cc5351bac1c7787da4d5b05", "affectsGlobalScope": false }, - "../../core/components/atoms/avatar/Avatar.tsx": { - "version": "12545a5fcdccac41a09002f1332469ab3623cc0810005a63eb5cb0e7f3b893e7", - "signature": "988091324f292096ad7a3634f86cd0768e49fe10a3be5c1b50dff106ebdc0040", - "affectsGlobalScope": false - }, - "../../core/components/atoms/avatar/index.tsx": { - "version": "b321acf1e84b839eb4cb660bba3192d8f3c5b8387e6eda646a87d27a0ca3d6e0", - "signature": "2625c60e362d6cb9d5676fc3d3f6948cedc95bec9865b597e25f61e684c11fb1", - "affectsGlobalScope": false - }, - "../../core/components/atoms/avatarGroup/AvatarGroup.tsx": { - "version": "edfd2822058e811627165f280e889690d1d1e88e09fcee71774a1ae13c21ab34", - "signature": "1fab72619b249188a713aa3e2911a528ef11c543ae5008e8ddcf73d46c002d7b", - "affectsGlobalScope": false - }, - "../../core/components/atoms/avatarGroup/index.tsx": { - "version": "751e5ff71233b152cd8453df95cf8776db810b7bf050bd40feb4dbbc2d8cddeb", - "signature": "b46bc98b2c0ea41b95ae333dbae15aefe5f2db3c942a38e6ae7c1efa6fdd97a4", - "affectsGlobalScope": false - }, - "../../node_modules/@types/react-dom/node_modules/@types/react/global.d.ts": { - "version": "ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6", - "signature": "ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6", - "affectsGlobalScope": true - }, - "../../node_modules/@types/react-dom/node_modules/@types/react/index.d.ts": { - "version": "2308de4bd094ed70bdc95ada3cece385c608a1eda179f8e1c71eed70a049cefc", - "signature": "2308de4bd094ed70bdc95ada3cece385c608a1eda179f8e1c71eed70a049cefc", - "affectsGlobalScope": true - }, - "../../node_modules/@types/react-dom/index.d.ts": { - "version": "c45d6f4d3a20be54e46237608f537a8d85397f87b9c3318d68ed925c2f1d0b51", - "signature": "c45d6f4d3a20be54e46237608f537a8d85397f87b9c3318d68ed925c2f1d0b51", - "affectsGlobalScope": false - }, - "../../core/components/atoms/backdrop/Backdrop.tsx": { - "version": "ca2923ddc09e8d29d1eab507b774d3f788e0d762fa125b38fa25e286557ca8ba", - "signature": "0f95643c9e43ef475353613ccc9790e53263219a969c75c4268d967341a4d81e", - "affectsGlobalScope": false - }, - "../../core/components/atoms/backdrop/index.tsx": { - "version": "2ef3027718879d9d2b8536b64bff18da3887c229082bde6cc7b66b3a8d71d693", - "signature": "08d2e30af536a9b72039c786630f8acf8fda95d0b3a48f46b8ac94dc460f668c", + "../../core/utils/css.ts": { + "version": "d3bb5b748724119f60db83c1b9ee463b44f699aced0d85a865c9831ccd5e44f3", + "signature": "6e0c7d47c7fc8fdd5b11186cfb595099643d345d006575db6dccd11f60187459", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/Badge.tsx": { - "version": "10bef4ab87713e472f8b7e91281429911e0d1fb363c8f06f52afe578c67a1ae5", - "signature": "f8cdc421a850d9a4f84e8ea173c1fbee97173dac6b914fc58f6963e81eaf8719", + "../../core/utils/types.tsx": { + "version": "144995e7607ca011002ba51f4c9d6c321d76c237c7d1cff9fd1eeb13818ce070", + "signature": "3c8301f5d7b2e4f3c1f1b1334949f532bcb881f175fc49b391a01bf11bb61b04", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/index.tsx": { - "version": "b8cbc7472443c6f690b55c89af3e0a28e30b477812d0000821a1a6ed3c18eff3", - "signature": "99604b649d6d5c65dd4e3bde3bcc3bcb66342a65dcb03db3d269724a70e05f2c", + "../../core/components/atoms/avatar/AvatarProvider.tsx": { + "version": "2bb9b4dcfea05b4af1d513b87947f8bc53926b6e2c0ddb6a1144c720c7cfec36", + "signature": "63463d252a2d1c239d092771c920d52edcdafd4fe4f48e86067c30653f2ab4dc", "affectsGlobalScope": false }, - "../../node_modules/@types/throttle-debounce/index.d.ts": { - "version": "4e22b9ea2805fec5f3c120146a690e5604a3117dbdee648c85393f58422eec16", - "signature": "4e22b9ea2805fec5f3c120146a690e5604a3117dbdee648c85393f58422eec16", + "../../core/accessibility/utils/isEnterKey.ts": { + "version": "af66522dae744a18df5876f7f8b18c9721b95b77e66e8f44dc75ee5e08b2d857", + "signature": "4c53ada96f2b2b75a91aee8c0794d478b52083fa76786176676768f2b20b4ac2", "affectsGlobalScope": false }, - "../../core/components/atoms/_text/index.tsx": { - "version": "7179b6d4be30b5e85c9a19df92cec84205399c9aade0db6d307aeecd37f09da2", - "signature": "4495e76d274921d4b59766b405656acdd13655150397c91fa331a2a724d3d837", + "../../core/accessibility/utils/isSpaceKey.ts": { + "version": "28bb2a0235686fc9d89706e2823f42a2b55cf733fdf364bb5c276a0f4f2da65a", + "signature": "bd2100204d01589a25987744aad093fa839dddad21ddf8b7b832e1b750545e1e", "affectsGlobalScope": false }, - "../../core/components/atoms/text/Text.tsx": { - "version": "0c4289390d387c6bdff393702195af419958c237711b6736e5425e6ca7793872", - "signature": "0de11458347c345e3b042b402198a364ad910cd32dfb1a727805324b0124017d", + "../../core/accessibility/utils/useAccessibilityProps.ts": { + "version": "05105112f6557f671bdaec3224459c2ac1e74c2626fc12ecf6b62ca64212ed04", + "signature": "223d68c9ab2fa0e155cf70bf3b20a45e9011562d86cb390de713055b42afee55", "affectsGlobalScope": false }, - "../../core/components/atoms/text/index.tsx": { - "version": "24e25b5d48ee435358f97436bbd6ddb4b27049f99784fccdd06634013e1d288b", - "signature": "7a29a272635144f3122e629d21e02a22fc95ab86cad47f32d96dce31c1f046b5", + "../../core/accessibility/utils/index.ts": { + "version": "44cfff757ea872d3a8c98fe17c5e73ce966724ef270a807fe9334ead39527878", + "signature": "6427aee725c0b2c594f724f86482fe933cc3711d7ecf0bc86bd742cbf768877b", "affectsGlobalScope": false }, "../../core/components/atoms/icon/Icon.tsx": { - "version": "ed690069ee054013aa6910820d2d03f08dabbb560b82022b3fedd14683a5927d", - "signature": "5e497cbbb6b0e4d2c8e1fb6c732222ca306e8381cd2ce13686c7fc6692b0bfee", + "version": "f5aa2d1166a0b3d70f15e42302364d62018dd133de1c74163ff70d093907c6fe", + "signature": "f2645e79a3396148a65a91ef803f4370a71b3832db35ea96d9efa9c55e66ff7c", "affectsGlobalScope": false }, "../../core/components/atoms/icon/index.tsx": { @@ -271,114 +266,104 @@ "signature": "82aa83ce17783edbb08a8b94be47e61c080ff2cbdbf58a83ed2ee344808901ec", "affectsGlobalScope": false }, - "../../core/utils/uidGenerator.tsx": { - "version": "bb63dc1fd8064a13779e0271186ba7aa0f28ff2b58bc0c601c213d9e22f97076", - "signature": "c6f84836d1161351fa4c6f1341109dfe045b758b470f73a8313d1d738b7cd1ef", - "affectsGlobalScope": false - }, - "../../core/components/atoms/checkbox/Checkbox.tsx": { - "version": "6ce8aefeef8ea7f2c36f01db28dee2e26f26d7838ee50ca24e034a7dc5c20a32", - "signature": "1663a21910b3f34381873387b3670bdf1d96e3b90729b2319b4f9f04ed8d24b9", - "affectsGlobalScope": false - }, - "../../core/components/atoms/checkbox/index.tsx": { - "version": "abf5cc0f57d5631b5d8de7c34466b163516d478dd4040f28feb06648c0cab307", - "signature": "25068ae67dd410a18d31b3b82ac8072a6eeb6e77709954116322049f26852745", + "../../core/components/atoms/avatar/avatarIcon/AvatarIcon.tsx": { + "version": "d6ebd7e73eb758cfbcc47900c516edaaa0c54a00d12a9bea3821aa0428d446d5", + "signature": "c4486b618ba49d17683c2dceb2ef3fd7305379cbd1b3b8d97d7355eb056f0608", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/option/CheckboxOption.tsx": { - "version": "cd6feec436a7422a291fb8efd5783c6e037032ee3121ac002f510bd46158dccd", - "signature": "98f4a0875d16803f1b276cd39be38fcb85912933c656185fe28943bc75ce3f06", + "../../core/components/atoms/avatar/avatarIcon/index.tsx": { + "version": "7cd3e4e9d53886532390a105ba027731f7d7d6269af855588e04cf447451d046", + "signature": "b9d3565865d71593c0bf71f27b695cf2a3274b120c13ed2abf48669ef1d9382c", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/option/DefaultOption.tsx": { - "version": "05f618bc978a0bff4048bc021172aaae2fba28d0ae155d9ed653be0bdbd332d8", - "signature": "6f31c22020816f53cdd8c91f1c2ffff045b89e16e392e0ab5ac159b45bcd2a1c", + "../../core/components/atoms/avatar/avatarImage/AvatarImage.tsx": { + "version": "6bbc3f30b53987f02cca34c7561c64922ee202419fc548823925474a1d956030", + "signature": "213e9aff5612dff65c5cd47b01faeb27ce7ef571a97573b02be77e44455fa346", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/option/MetaOption.tsx": { - "version": "061750e5f02dca88371589995e856d34dd019d09827f6f67fd8918453ecadb89", - "signature": "c04f5541c90b30ea36c39cbcbd994504b6206c5724020c2af313e2a7d6018175", + "../../core/components/atoms/avatar/avatarImage/index.tsx": { + "version": "ceaf615c065357284369fe917326fc50491455e6ae94444ce541897146bdbfd2", + "signature": "b15d6d537219716322ea370e437c3fa46f6ab32c4bad428ea749c925c74fa446", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/option/IconOption.tsx": { - "version": "89cad58bda7e6cbb5923eb8b30101043b31634aa6923bfa9086841006621274b", - "signature": "57606d84ad41d8005f808836fa817146dfff6a01d81eb4cc208291852e43d630", + "../../core/components/atoms/avatar/Avatar.tsx": { + "version": "0a3fbf41f7832698e541364eb36e6deb5c7520b70b414a345043fc1d10013d0d", + "signature": "72d77c2f585068d5789e58184d196850ffcc447c738c3fb701beb9a117595a04", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/option/IconWithMetaOption.tsx": { - "version": "4177e3e64ed0bbd18f6fe4d3e8ae7d52e38e8812cfad3064d9e6288f07d118e5", - "signature": "a0348067c7808796a2b9ec0ca3c26be48fafb06263d36a39066e0176621de18c", + "../../core/components/atoms/avatar/index.tsx": { + "version": "b321acf1e84b839eb4cb660bba3192d8f3c5b8387e6eda646a87d27a0ca3d6e0", + "signature": "2625c60e362d6cb9d5676fc3d3f6948cedc95bec9865b597e25f61e684c11fb1", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/option/index.tsx": { - "version": "5323b8d30c0e6c11cfccab897a0ead309b88866a74ca663be99bfb256a69ba63", - "signature": "55cbadfe97466600bb643b2b518c850fe607a26bef75336dc6c525312103cf09", + "../../core/components/atoms/avatarGroup/AvatarCount.tsx": { + "version": "da401f3f5ca599afa1766898c4ee7d47eef9f89461338d3d403a9d1831e839bd", + "signature": "28638b5b5c48afd430b5756033eefbe33a8098c1c0f56ee71b8c98c127808d1c", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/utility.tsx": { - "version": "7a17ae7b69e0add45d9cbe8d73968338efaaab01d9211c0182b0a84305ea7a72", - "signature": "b612eb3a1c21ec5dd691f409a59cf47bb77ca6220617f9ac16f90f81e40206c7", + "../../core/components/atoms/avatarGroup/Avatars.tsx": { + "version": "2ebb430d6b98659ad239c589d291a3c76ad4c119da043444938630c29db708c3", + "signature": "695e51eeb303f29c0263fa5c6b977153066291197a52797f11988ab8e4e7e43b", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/DropdownButton.tsx": { - "version": "23353f5f7e2ed587824a8410aa3c563279d477018fe4d2fa133933bc9ca6c9c2", - "signature": "26d301cbbadf8786ebabbee083c5558fb5b807fd8a9f8587cf8d5c144507fc9b", + "../../core/components/atoms/avatarGroup/AvatarPopperBody.tsx": { + "version": "251491faf78c210aefe885e44f04f3006356976eadfa6609855286693393665b", + "signature": "940659bdfd49091e44834ef4d58906fc661666cc467c523aa96a2155126a54f8", "affectsGlobalScope": false }, - "../../core/components/atoms/placeholderParagraph/PlaceholderParagraph.tsx": { - "version": "a0cf73e00e79b92a42fa82df937576a2bf530545084e3aa34c7404009f09a8ac", - "signature": "cbdd2c5e49ff7102c0c35b61723f8497af8185baef9198ac719116e094a650b5", + "../../core/components/atoms/avatarGroup/AvatarGroup.tsx": { + "version": "cbacea8958a3fa5cbbe3e6f5ee2f2d1729beb33c7ef37ff78ce41433a22e11a6", + "signature": "ce3f3fd390bd9db8bae71aa4bd609a13cc1c13ff45b2a72f8de33ff7677e4cd6", "affectsGlobalScope": false }, - "../../core/components/atoms/placeholderParagraph/index.tsx": { - "version": "c3f3675a698ad1bc55b2ffb0945f298e60a86529e319356d63d9863c73739959", - "signature": "2a85a349f7be0dd8956084f85b0ab29bfdef1a40e8dd8fb320f7e7c56b95fea6", + "../../core/components/atoms/avatarGroup/index.tsx": { + "version": "751e5ff71233b152cd8453df95cf8776db810b7bf050bd40feb4dbbc2d8cddeb", + "signature": "b46bc98b2c0ea41b95ae333dbae15aefe5f2db3c942a38e6ae7c1efa6fdd97a4", "affectsGlobalScope": false }, - "../../core/components/atoms/placeholderImage/PlaceholderImage.tsx": { - "version": "f1f64ca26e4d8b5555cbbb740b6698a3dd5e4e63220ec5928d24fc01b1c8a406", - "signature": "75d3bca83302a6b6ab608522b4a3fb3a7859ae21143e4519e380b552a4ac2d29", - "affectsGlobalScope": false + "../../node_modules/@types/react-dom/node_modules/@types/react/global.d.ts": { + "version": "ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6", + "signature": "ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6", + "affectsGlobalScope": true }, - "../../core/components/atoms/placeholderImage/index.tsx": { - "version": "fe09f40b8996b6b2f030b31a2e456c986c5d5be1fbbf761aeb72e072ad1c1250", - "signature": "bd89743408da8fba2fc6165a6678b1a8590265f7bb56c330360450f813652ed6", + "../../node_modules/@types/react-dom/node_modules/csstype/index.d.ts": { + "version": "381899b8d1d4c1be716f18cb5242ba39f66f4b1e31d45af62a32a99f8edcb39d", + "signature": "381899b8d1d4c1be716f18cb5242ba39f66f4b1e31d45af62a32a99f8edcb39d", "affectsGlobalScope": false }, - "../../core/components/molecules/placeholder/Placeholder.tsx": { - "version": "6480204c6abfbd1c9055ea116b86d55b29ffab581aafd009b9491ef94d84e54e", - "signature": "8fc272b5d510094e0ed9ee38d846a16ff3064c6f639e2b9a75ed534034a666d9", - "affectsGlobalScope": false + "../../node_modules/@types/react-dom/node_modules/@types/react/index.d.ts": { + "version": "9e3199a1f11557e3a2d89230e811bd006c9f42730058c031212b312383c98cea", + "signature": "9e3199a1f11557e3a2d89230e811bd006c9f42730058c031212b312383c98cea", + "affectsGlobalScope": true }, - "../../core/components/molecules/placeholder/index.tsx": { - "version": "40df0d20a656b32ab443acb77562e6a1835c3753366758410b395ef7d121914d", - "signature": "1aed5a0f379a98c1bd002332e4f290f11352320cd49c5e0b76b8edf4138df163", + "../../node_modules/@types/react-dom/index.d.ts": { + "version": "c45d6f4d3a20be54e46237608f537a8d85397f87b9c3318d68ed925c2f1d0b51", + "signature": "c45d6f4d3a20be54e46237608f537a8d85397f87b9c3318d68ed925c2f1d0b51", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/Loading.tsx": { - "version": "413a2190957d4fe2dca685b44b2f819d1ca327274a9f0cc37b21ae863fbc385f", - "signature": "fec3cf0fcdb67e926fa4931314d138d81549539d58bb62c32c6fc184118c6cfc", + "../../core/components/atoms/backdrop/Backdrop.tsx": { + "version": "f544f01512a07656485b77d078763d4d5b79024638b7f9c89bc5cf5dee840952", + "signature": "94d50554f952fd52d555764e38e247f9da7308ca8f3e21dff488dbfe922486a2", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/DropdownList.tsx": { - "version": "7ad3e90b4df29709565e6e562da6885ec4135204fa6fe4481aa73505ce1eccce", - "signature": "949f8e97a6117b1dede0706409e5f088383d99369108ff6c2701077033617db3", + "../../core/components/atoms/backdrop/index.tsx": { + "version": "2ef3027718879d9d2b8536b64bff18da3887c229082bde6cc7b66b3a8d71d693", + "signature": "08d2e30af536a9b72039c786630f8acf8fda95d0b3a48f46b8ac94dc460f668c", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/Dropdown.tsx": { - "version": "58fd925d5311ec69f8eb5260d9c58c67d37b07bcf7d5e6ef64f34f587d28b42b", - "signature": "238dde67da16085df49ff451c4e89a2247270648e809ecb9945362684b2d6c7e", + "../../core/components/atoms/badge/Badge.tsx": { + "version": "89eb5d56068737695de2fca3b23d8913f59df27d3272a703c607004bc995f925", + "signature": "1ee88f77b3f5d04f8b615ee48ee856daa455027c08db9dda6a734448360ca337", "affectsGlobalScope": false }, - "../../core/components/atoms/dropdown/index.tsx": { - "version": "e358c7c3fe588e1f640f3d12d250d96a01b0a11f7c641d937761fc51a19db0f2", - "signature": "40f70594c27bbf52364c559154aa64ecba00179ec4a548df2b751e72542f6497", + "../../core/components/atoms/badge/index.tsx": { + "version": "b8cbc7472443c6f690b55c89af3e0a28e30b477812d0000821a1a6ed3c18eff3", + "signature": "99604b649d6d5c65dd4e3bde3bcc3bcb66342a65dcb03db3d269724a70e05f2c", "affectsGlobalScope": false }, "../../core/components/atoms/breadcrumbs/Breadcrumbs.tsx": { - "version": "65ceb165a3da8334d49ab5a9dd3b8a1f57582fbdcb66e1a1cc53e08d6bfe749f", - "signature": "1386549cc62d6f495546a3ed7295592da38aabd3565a63c52a1904b3dc3e29a1", + "version": "666a9f9dad5809d7e1013a22bbed417cdacbeca83bebdd7226ddd7d91f781f1f", + "signature": "b5e168473d27695a480ed3f6216a4a15b3b04d8e086b4a98458e35250ddb3571", "affectsGlobalScope": false }, "../../core/components/atoms/breadcrumbs/index.tsx": { @@ -387,8 +372,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/button/Button.tsx": { - "version": "caf22303069c15222107c0fd0307e715960be70bd4bd95a349e8524cd8e057ba", - "signature": "239b692bef68d8ba407665831cfe7e90321306f3d6366a1bde13dcad137a374f", + "version": "662b5690b3c5a5b725e4b7f27cd8f9e6502550aebf043696a46436c0a498c2f7", + "signature": "73688651a3897a5a1f335acbca13a426de1a343f9a17191058c97dd9e13e18e2", "affectsGlobalScope": false }, "../../core/components/atoms/button/index.tsx": { @@ -397,23 +382,23 @@ "affectsGlobalScope": false }, "../../core/components/organisms/calendar/config.ts": { - "version": "bc875f6caa49919ed0897b13cb039d7e1936f3b3b3149c61445a74aadc2a64fe", + "version": "58d7e5ba8610cf39a9790e6fb2bace66f6df6daf2fbd9880602fad5839e96c87", "signature": "fb386782ba87c1aef3743ee1e9cda336e878c0577de2308809385f56aa2e84a2", "affectsGlobalScope": false }, "../../core/components/organisms/calendar/types.ts": { - "version": "59b82e11772e605a6de0b6b0f703929f2f30ccdabf7440a0061cbb2c6c18c3e7", - "signature": "9fbcf5298161d2db183433f59cf8a7ab2203aa2557c4c2a056bc3ca55a27d1fb", + "version": "3ee7113b0bcc9813bcb90ac87124a50eaf6e3a4e22e07d47e509fb1c1c505a5b", + "signature": "443bf54c9b92e8ec5985ec7c4101738ec9d526aca3636d76ad8266fe9bbf855b", "affectsGlobalScope": false }, "../../core/components/organisms/calendar/utility.ts": { - "version": "851bf291ef8156e69f51e4502b6ce2e04175d034d124bde2748787b318f404c0", - "signature": "0120b6fe1425a2e00e7b870c3a42dc903097c45c4260943dfeafd62492ea87a5", + "version": "758a7aa8211b63c084efa394c68eae7965c568c4a19e7964c35ef3d953d19c29", + "signature": "42d2e48374c5c68300d54e14339e5cd5ba8af61edbe9a8da9d64e5ca826ec225", "affectsGlobalScope": false }, "../../core/components/organisms/calendar/Calendar.tsx": { - "version": "beefcb91f6096519b36591ce6120eb4a168ca8523e7123c86cab4a448cb800a3", - "signature": "d62caaef54bea27d0f876c4ce24aa34d28074b63742556b6b7a0824b85db7a24", + "version": "eeada31776853060ec69ff96408fef4e044f7a8c1a4d1009575ced26e2e4345e", + "signature": "42e29631094e5b2585592839b195f516ed4f292451cce8e13d59d616021df2f9", "affectsGlobalScope": false }, "../../core/components/organisms/calendar/index.tsx": { @@ -422,8 +407,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/card/Card.tsx": { - "version": "38f58cb82534db3566c9e73b4f48475e09ecb2e57a098dd478b60c56846445c6", - "signature": "4161ad09a3face310376fd8d59ae93dc8a6b04dbaa0c488c28359dede6334a72", + "version": "f7589c67ee4a46152b0e6e0f4bca5e1e8f4be752e9d0c0c50a95cffbe47c8dc2", + "signature": "a8715783dded17c0a90223440558afc945d32b55103ac2fbc55007ad3c19473e", "affectsGlobalScope": false }, "../../core/components/atoms/card/index.tsx": { @@ -432,7 +417,7 @@ "affectsGlobalScope": false }, "../../core/components/atoms/cardSubdued/CardSubdued.tsx": { - "version": "c1a91730a3957635b80cb14b161cd585710027bc0ddde3c98fa875369dfed61e", + "version": "4f030d9a59d6343e443a55834b5daa747f799b29bb8755d4f391707588fe4c0b", "signature": "e70145e4c2ae3337ec0e796312612fa7f76d792eceb3c81fdddfdbcff9f39b08", "affectsGlobalScope": false }, @@ -442,7 +427,7 @@ "affectsGlobalScope": false }, "../../core/components/atoms/cardHeader/CardHeader.tsx": { - "version": "940f5393d8b168bc10fd37fa7f48e8187e705b46e271ba024b5b746f6a8c8fae", + "version": "ee26ffbfc70b03352951e11da8a3e90e9ab4ed4c9e22036664a6d6ea370fa75a", "signature": "3c055256baa745f4e924b2341682b0428a83c3376a50571bb2b061993a4bcf98", "affectsGlobalScope": false }, @@ -452,7 +437,7 @@ "affectsGlobalScope": false }, "../../core/components/atoms/cardBody/CardBody.tsx": { - "version": "ad4c08e4d9fcdcbd055719654cff07c5c1e0e4650e7e5978ac2ffd4e51b5bd03", + "version": "cbeca53ec06b8b23fafd767d637986be01b25526be96df1b156342bc99005f61", "signature": "5f420e72c7cb161fe10efcabff254a1bcfd7a0ca8d4b423c0e167c6dfc4deb98", "affectsGlobalScope": false }, @@ -462,7 +447,7 @@ "affectsGlobalScope": false }, "../../core/components/atoms/cardFooter/CardFooter.tsx": { - "version": "76e7fc6a142f7fdcdd2b23d71438f021dc7626de5b76b80ad1dc7c8a00dd47d0", + "version": "edb1a11852c23b58555fd39761db51c59c5cac373b5008b9015879e0462d732a", "signature": "781dd16535cee57e48e70007f4628515923ee1917084da965f58e4694712a001", "affectsGlobalScope": false }, @@ -471,14 +456,29 @@ "signature": "059d7b3a44c7ac251a68e7de8c15e57592c85b6228221a5ef683cf398934605d", "affectsGlobalScope": false }, + "../../core/components/atoms/_text/index.tsx": { + "version": "17ab8f54bf4d29c2f534143564c78ad54ce443eb91b8581e208689f1e86fef27", + "signature": "067bea0b287c6807ef8ae7e38111212df322437bb17fd65086bb191e786a9a27", + "affectsGlobalScope": false + }, + "../../core/components/atoms/text/Text.tsx": { + "version": "40eac51883a75acee87555974503516140495515db17ab46aa72e206f802ffde", + "signature": "888d4347007d0671484d508734bf2db92cc3efb1daf778b899656acc3a61fc49", + "affectsGlobalScope": false + }, + "../../core/components/atoms/text/index.tsx": { + "version": "24e25b5d48ee435358f97436bbd6ddb4b27049f99784fccdd06634013e1d288b", + "signature": "7a29a272635144f3122e629d21e02a22fc95ab86cad47f32d96dce31c1f046b5", + "affectsGlobalScope": false + }, "../../core/components/atoms/_chip/index.tsx": { - "version": "22c985622590c87318b0011223bf7d77bc7b16bebb5186601563e040e1fa882a", - "signature": "477824abb6b2d49a147582720102276c459e07d1dfe5ca98cb311903aecf47b5", + "version": "a0cd94c4b213fa720744af11c679ffa14aca97f0b275dbf51c5ae34e24eb6efd", + "signature": "ecc589feb9630a79f7b54bbe52a3eb3bd37924e47799b9a57d18970e53eaae96", "affectsGlobalScope": false }, "../../core/components/atoms/chip/Chip.tsx": { - "version": "16565cf254b6c1d145be8a1e8a0434184b276cf5a9d840923835b9f768f02859", - "signature": "b7e3e4ca3ebc67c8a78b6b86320677c2b07b22bede13ac54c87f930b513a0e88", + "version": "dc7547b2870bb284916c30aaf7147555b5a14763a51b5cc98e5df2b696719dcf", + "signature": "a24885a2ee95bf0c75f012fd11ae39ff8de6843f053d5c53b732c0e5025954ac", "affectsGlobalScope": false }, "../../core/components/atoms/chip/index.tsx": { @@ -487,7 +487,7 @@ "affectsGlobalScope": false }, "../../core/components/atoms/chipGroup/ChipGroup.tsx": { - "version": "b250d0ef7856de253abc4cb45f9ce32b4b46926487412beed9913ed675faa920", + "version": "44d767ae1adf0c8336c2b0124dc9f227623ed68178d59fe09d14ed76406e689e", "signature": "d2201bd9d17a850423f332b2e9cee897f467a30aad8be0643f8ef2ad55334d51", "affectsGlobalScope": false }, @@ -496,8 +496,28 @@ "signature": "051e1e1ed47cb5b6a0efddc101133cbf30134efabdaeada965da4e124f4a7976", "affectsGlobalScope": false }, + "../../core/utils/uidGenerator.tsx": { + "version": "9d501005944a0d31db11c9cbd778c58a2a337e1148e1c4a20e20f99bc00c26b5", + "signature": "c6f84836d1161351fa4c6f1341109dfe045b758b470f73a8313d1d738b7cd1ef", + "affectsGlobalScope": false + }, + "../../core/components/atoms/checkbox/CheckboxIcon.tsx": { + "version": "2051636f5cb59138be6497d44b918373144d93717c15f386785aa3dc88b95312", + "signature": "6da78c5022eeebd2559bbbe42c7f153e1e63dd9f4d6fbe27a90552aef60a515d", + "affectsGlobalScope": false + }, + "../../core/components/atoms/checkbox/Checkbox.tsx": { + "version": "c53c5c64f4f2bbefa43cbfb59dc85d941e7b70e5ba6faa29137daea81fc7bdfd", + "signature": "7b0976eac11d559b40a513714a10ab43ee2e93f05cf0522ae06d2fd362f2976a", + "affectsGlobalScope": false + }, + "../../core/components/atoms/checkbox/index.tsx": { + "version": "abf5cc0f57d5631b5d8de7c34466b163516d478dd4040f28feb06648c0cab307", + "signature": "25068ae67dd410a18d31b3b82ac8072a6eeb6e77709954116322049f26852745", + "affectsGlobalScope": false + }, "../../core/components/atoms/column/Column.tsx": { - "version": "34f6bc6d6a0589afe75e0434f27d61607b691a03f44acb4413e28e8d8d9e1c5e", + "version": "1d13670c44c3de7f3e38079f6f92fdb1fd939aa5cd62b22a44f401486a8c2069", "signature": "4951fc9e5f2bd374151b33e7765a30c2edb6475c5747bbb3b375fa93ab83314b", "affectsGlobalScope": false }, @@ -507,13 +527,13 @@ "affectsGlobalScope": false }, "../../core/components/organisms/datePicker/Trigger.tsx": { - "version": "de270b814594acc3d9e610b37a83e9bf35379bc674e2a39f5a6dbbfd48eebdd1", + "version": "a84c4b8841f4ba06e37a55ffca3300b848a0fc2b8e8cbe3cff52a38f408fe609", "signature": "772d91f645ba2cb9f7298e7cc7749a50e7df28ce240e6d6c8765d83f20bdfd32", "affectsGlobalScope": false }, "../../core/components/organisms/datePicker/DatePicker.tsx": { - "version": "4c4fb5f3c36595dea6c04f66a641526d867384da078f7ac00860e015b8d2ad2e", - "signature": "27aca7a933b4aca271476ed97a872edf847e2bbb02f04e9cbe4d1c7ecbda0811", + "version": "644e587e02b97e870601ee783a5141c8c5c07c8e6c7932c4f6c61298024149d3", + "signature": "f99b8b90d961894ca71854163d356dfe66f9e96d3792223aee18970f4ba43eb5", "affectsGlobalScope": false }, "../../core/components/organisms/datePicker/index.tsx": { @@ -521,129 +541,259 @@ "signature": "ac476fa69fbe4cf27ab78112c97544cfa81447d416ee3fb4a9fe17d916319ae2", "affectsGlobalScope": false }, - "../../core/components/organisms/timePicker/index.tsx": { - "version": "61e44a26477e9f24a82b1642311a5c4a31d454567e7c5663a44825eee82f05f8", - "signature": "e07b3861694d1de22de7b56ef40ce5ab57de7a7f2fd976c80494349e1721c172", - "affectsGlobalScope": false - }, - "../../core/components/atoms/heading/Heading.tsx": { - "version": "835ccb0f7de83ff22fc2a86c25477c02233a301d27184d854d0a7d202d1c5ab1", - "signature": "81eb8eec8eda5d2ea06beab6602374b0c0e56f948f63e5bfaf55862f3a663c04", + "../../core/components/organisms/timePicker/utility/timePickerUtility.tsx": { + "version": "42fa70ed3f6d6f622163b7d04e77027919124b3ef55466e026aea146da417f48", + "signature": "11f4144e92a2c11d2b5ade587059d7f28bc4066089211bf8b05a65a89647ae87", "affectsGlobalScope": false }, - "../../core/components/atoms/heading/index.tsx": { - "version": "eaef820e7cbb7a56bf1fec8b7132e8262258e50268c14436e822c1c3882c93d0", - "signature": "480c19fe72b950086e8c0e45b46b798590b05be70563147e4cb2df46c4002180", + "../../core/components/atoms/dropdown/option/CheckboxOption.tsx": { + "version": "4676d7420a1f2d6dcf2543694dbf25a91539f41fc5c673681804aa71dfe5dbf1", + "signature": "98f4a0875d16803f1b276cd39be38fcb85912933c656185fe28943bc75ce3f06", "affectsGlobalScope": false }, - "../../core/components/atoms/input/Input.tsx": { - "version": "3d4149c9ecd6de7b44dcfa2ae2bb84841f73e4ab01538d1b395ba609c937b951", - "signature": "81ad67ebdc41ab965aff52eb554a688923b20c1d35a515552c3a3529aa332578", + "../../core/components/atoms/dropdown/option/DefaultOption.tsx": { + "version": "f877f716d3dc928e73c7629e1bf2778839d3f5bbaa5fecef903fe2231dbaac14", + "signature": "6f31c22020816f53cdd8c91f1c2ffff045b89e16e392e0ab5ac159b45bcd2a1c", "affectsGlobalScope": false }, - "../../core/components/atoms/input/index.tsx": { - "version": "700d98da331e8240c0399af62962d99cd212da34ced31c147e314825b7631d18", - "signature": "a2d5b6c211cca07de6f10aea9a25e15eb904e51448e1405f8988543cf57af62f", + "../../core/components/atoms/dropdown/option/MetaOption.tsx": { + "version": "14faa5512a4e7cdd4d4ef0d57f75142d2b42b01d68a75e37f3318077015fb899", + "signature": "c04f5541c90b30ea36c39cbcbd994504b6206c5724020c2af313e2a7d6018175", "affectsGlobalScope": false }, - "../../core/components/atoms/metricInput/MetricInput.tsx": { - "version": "7f175cff993eb5afd7aa5a05bc2e2312cb63da11182532efa3cdf63e07b22139", - "signature": "54e44767ddddb4d2895d72e25d20b83d7e86f2a34fe312d15eac105dc8d027f7", + "../../core/components/atoms/dropdown/option/IconOption.tsx": { + "version": "a29ca82bd10cd2035a02fa4711c70bfc03ef323a1a4812990980c277b9253d2f", + "signature": "57606d84ad41d8005f808836fa817146dfff6a01d81eb4cc208291852e43d630", "affectsGlobalScope": false }, - "../../core/components/atoms/metricInput/index.tsx": { - "version": "b593e1b518ed6658603c09b90f1a17df52c2dab4f31f1e24c6fb237f581d78b7", - "signature": "48c71fa7cc02985af142b22838dbb23d999daba9d3431f1312cc7b9129a2dae0", + "../../core/components/atoms/dropdown/option/IconWithMetaOption.tsx": { + "version": "b00a1c060f6dc36407ac893c04a6a0937762d8f972d4f4cb0f0a5910bf40a0cf", + "signature": "a0348067c7808796a2b9ec0ca3c26be48fafb06263d36a39066e0176621de18c", "affectsGlobalScope": false }, - "../../core/components/molecules/inputMask/utilites.tsx": { - "version": "0c11dae0199a72d338442d63dd528e07b32c73bbc36f3f9c23f0dcf34dd46054", - "signature": "5e349fe67f144931cc302513d9ee1328310b4b62049dc32880dcbcf100219eca", + "../../core/components/atoms/dropdown/utility.tsx": { + "version": "24bc3bf171f947f836b86e4dff8955b31721b56694adf7482887ef26f42e0d75", + "signature": "29ba83e516b59b9f8176471ad904f2d7b310e173b0b5f95c638f1daf96d66abc", "affectsGlobalScope": false }, - "../../core/components/molecules/inputMask/InputMask.tsx": { - "version": "d090f0983ef8d113f98f1e715e98732bc6ddaf2c302de675e78be1fb7d4d3173", - "signature": "d33f3b757baff8ee90273e50bc6220b041e6ffbd07521e1fcddb009143efee6f", + "../../core/components/atoms/dropdown/DropdownButton.tsx": { + "version": "03f46a491b56a42bb3384bb59798ad7de46ac1d3ccaa4c0a0991b9fa42e52a34", + "signature": "8b0b80e4bea185e5cea9b900b9092a9c1ec23a589c028872d1c995eef71e4eb4", "affectsGlobalScope": false }, - "../../core/components/molecules/inputMask/index.tsx": { - "version": "ce69a4be34e9a3da9907c665607d72a5c8699317267252ed6c712b9dc054d24b", - "signature": "0c89bc5a773baa972194f6f2a6d0f0293c7ed9f8d800ed31ffa7b7f1caba2b87", + "../../core/components/atoms/placeholderParagraph/PlaceholderParagraph.tsx": { + "version": "4c7545312411b9ed820777e15f446af6b48f2c592f53aad12d4ae28cc8e1e089", + "signature": "3166c4502edef33ad6865a8b5aa64ee7e46d0cc2983c4d2566e1552bec860443", "affectsGlobalScope": false }, - "../../core/components/atoms/label/Label.tsx": { - "version": "f5fc10929def0d56d93d4d0d017f8d774e8a24ba1c187e0417551de99d302ee5", - "signature": "c2bed342bb80212251349d3281615e87ec31a9c593c1b3e7cdbe733e18213856", + "../../core/components/atoms/placeholderParagraph/index.tsx": { + "version": "c3f3675a698ad1bc55b2ffb0945f298e60a86529e319356d63d9863c73739959", + "signature": "2a85a349f7be0dd8956084f85b0ab29bfdef1a40e8dd8fb320f7e7c56b95fea6", "affectsGlobalScope": false }, - "../../core/components/atoms/label/index.tsx": { - "version": "97ae88f7a3f0cab4b7d1664ffa7809b1008bdb04bd905c69aaa5dfb042330439", - "signature": "b7f0a457b39057fbb3c585025224ac95e2b060e5f3bd27215e7b29b3d8bb9bc6", + "../../core/components/atoms/placeholderImage/PlaceholderImage.tsx": { + "version": "90030826eac6e47dde848680f457d4a67f613cf327e15317fc87bcc8713e6e25", + "signature": "b58b9ebfdbc56213744018fc1244f790464c7d1b3e7656da16aadf530551dcb2", "affectsGlobalScope": false }, - "../../core/components/atoms/caption/Caption.tsx": { - "version": "2ab32b34151240b1aa024d267708c22754ce59b1dce9045a9946c43f198561ec", - "signature": "d40cbd65fa058603fbb05a6531d627075986b0de4d1a111921a21c4476925fb0", + "../../core/components/atoms/placeholderImage/index.tsx": { + "version": "fe09f40b8996b6b2f030b31a2e456c986c5d5be1fbbf761aeb72e072ad1c1250", + "signature": "bd89743408da8fba2fc6165a6678b1a8590265f7bb56c330360450f813652ed6", "affectsGlobalScope": false }, - "../../core/components/atoms/caption/index.tsx": { - "version": "e2a2e42d6f17e4509d7fd2ac46c8580009079fa8a8eb865e495565f7ba6fe50a", - "signature": "5762fae5cc1601bbc027d1998ad3ad2a924763b0ae9a36ea21c3f6213dbcc363", + "../../core/components/molecules/placeholder/Placeholder.tsx": { + "version": "203cc24c497276b0eab07a45f12541fc246f16c5f78cd38eaeb7d066b3465ce6", + "signature": "1783c80aaaac1a212d82ffd36162b1a5f9d448a365a3cbd601b37d9719a8973d", "affectsGlobalScope": false }, - "../../core/utils/navigationHelper.tsx": { - "version": "061c2976b306b4a05f1fb08e763e0fa4375781c68d9d007c5ef03eb44fb6202b", - "signature": "a061829b38c05acd0c29e2af7d0914d6baf3d96029e2a44cb3728cf5b660f230", + "../../core/components/molecules/placeholder/index.tsx": { + "version": "40df0d20a656b32ab443acb77562e6a1835c3753366758410b395ef7d121914d", + "signature": "1aed5a0f379a98c1bd002332e4f290f11352320cd49c5e0b76b8edf4138df163", "affectsGlobalScope": false }, - "../../core/components/organisms/verticalNav/MenuItem.tsx": { - "version": "71e77aa371b870999d3ce12ded29eba45cdef3730e40c9ad0399033478b693d6", - "signature": "aacfdbb4c44e59a9b59d018da5d1cdaa6297785b4f456489f6ae5097ff81606a", + "../../core/components/atoms/dropdown/Loading.tsx": { + "version": "9a2f9ba5d476bed446c69e39ef70173d61a493e14bcf70be5e02a5bd1bcad1ec", + "signature": "fec3cf0fcdb67e926fa4931314d138d81549539d58bb62c32c6fc184118c6cfc", "affectsGlobalScope": false }, - "../../core/components/organisms/verticalNav/VerticalNav.tsx": { - "version": "445d9c995b6ddba1dfe867fcf13460cec8d43da6d103a688a19deded39fbec4b", - "signature": "4d0dbb41238166355516729e34827b9059f921b739c7f04ef888509cfee1ded5", + "../../node_modules/@types/throttle-debounce/index.d.ts": { + "version": "4e22b9ea2805fec5f3c120146a690e5604a3117dbdee648c85393f58422eec16", + "signature": "4e22b9ea2805fec5f3c120146a690e5604a3117dbdee648c85393f58422eec16", "affectsGlobalScope": false }, - "../../core/components/organisms/verticalNav/index.tsx": { - "version": "e4b5f179d0ab6887dddb0092b8689355e6c2def7b35a82910f4877c7c7afe8e5", - "signature": "fb6e60cc6528097aa6d662df9d3e5d266b9f1791591fa451f43106f7a2c062d8", + "../../core/components/atoms/dropdown/Dropdown.tsx": { + "version": "f0208abe18bd56a27e778e5280749597b64e174decc4c89412da93ade2c4fb82", + "signature": "c171f1203f6dc27aa75553acd55d26d8a6d9ed99c4c7ab6b457e52f29fcfbc1e", "affectsGlobalScope": false }, - "../../core/components/atoms/editable/Editable.tsx": { - "version": "faccd59eaa781e7eaf429080bb73a45df61d9962ce51bc3f5f46279e6a3d2f71", - "signature": "04e3b3fabd6ed0e11fcdafe0312506c9defec830b29b568f5f97d4ec4faf649c", + "../../core/components/atoms/dropdown/ErrorTemplate.tsx": { + "version": "f1c36a9d963e26887b12d9b3e1a3f1c6909d2398750b0e9d751838d4fc000d7e", + "signature": "35df89cd787fd433d996895ceca8e80ee3ce338196ce027fd1d6f95720043085", "affectsGlobalScope": false }, - "../../core/components/atoms/editable/index.tsx": { - "version": "818bcdbaf3ca12134c885888e2085bab791287ebedc18aeec6740a85f16d4a84", - "signature": "ad25b53254b9757265867636581e4ca65c80e3f086c9cbb2eb9717ad1fc28be9", + "../../core/components/atoms/dropdown/DropdownList.tsx": { + "version": "7b62ed9c0f38d6f699f326eaead810a78a1600106d6152475de929544044efe5", + "signature": "24048f2aada8f273d401139d7417f7c942b6693b13c8e87284e831f9401d8d5e", "affectsGlobalScope": false }, - "../../core/components/molecules/editableDropdown/EditableDropdown.tsx": { - "version": "8827abc320b4c92fb8bdde761ded2da2a94851cf48e14df78c803c503bc85d41", - "signature": "302fc70d29def09fc588806c4c2a49285cead7cdc4bc67b3a2a5422b1efd89af", + "../../core/components/atoms/dropdown/option/index.tsx": { + "version": "bc547e7d6c054e1c94ec73c2d4aff2da8536ba1b238449599aadbf04b65d4ea1", + "signature": "f29f9dcc517bd236a47ff10013514129adc1da804fddd02406cce7eafd9f8711", "affectsGlobalScope": false }, - "../../core/components/molecules/editableDropdown/index.tsx": { - "version": "ff05b7c57a3f73272f5824ccc61cf4f6ebff6dcb21ad5636b14a3d869ffad7b6", - "signature": "1daea99843654eadac48b48465c86809f4de757ae46e4c82939bde1d94d0e517", + "../../core/components/organisms/timePicker/utility/searchUtils.tsx": { + "version": "3b81a0da6cb2696c5cbca95dfad00aa9b1c76ef74518ed64b354c4304fb36fc8", + "signature": "c448d5e31e35bfc91f9abd38c3c32874deb172a9e67e5d622399a86047571d46", "affectsGlobalScope": false }, - "../../core/components/atoms/collapsible/Collapsible.tsx": { - "version": "b1b76b60e3c381dbee2c8080c4b952bd584942135ef6b6b2859df1a8267c96c4", - "signature": "0ec128931cf603ed5c188f9b6992f6104adaaaff68ca2e49549dfaddeaf78256", + "../../core/components/organisms/timePicker/TimePickerWithSearch.tsx": { + "version": "d421ff5bfbb43d2bcab03db80862633b0f6a9b78ee884757b45116acb430eb89", + "signature": "ddd64255a6b14edb6f7a2d3d5fca7c3b9e98dd0d42e27a242602471dacbb1e06", "affectsGlobalScope": false }, - "../../core/components/atoms/collapsible/index.tsx": { - "version": "5483e15e5f64476f1e60d94c3ab4084dcc7c65f07e87eacd7542f08576af8674", - "signature": "4e4cf20127311eacca1242d5cc5645c2c0b334b678a9707cefccefb806d4525a", + "../../core/components/organisms/timePicker/TimePicker.tsx": { + "version": "a7a04f13c1814d079a90a6f6726b8efcafcad3c63eced5e0fe36dd467fb5d9f5", + "signature": "cb415689f4ff2d4f6e88c79ee1948f0add225dcb414e8305901ae28763471f2d", "affectsGlobalScope": false }, - "../../core/components/atoms/legend/Legend.tsx": { - "version": "66ea1f296f8f246f65ddb5bf60a5df7ec1c2a40fe1bbe1fd154bdcfeaff36a18", - "signature": "c62c3db2238d087d21cc309b94c643f93d2dc6451781c216202e5f69c7a431b0", + "../../core/components/organisms/timePicker/index.tsx": { + "version": "8e909d065b080e26ae83953178e289a8eb107652091a83281a112e251bbd5625", + "signature": "dcf646481bd42b13800d0f095bdbe2cfd3d1260da39ec4b76891fc603ea87b11", + "affectsGlobalScope": false + }, + "../../core/components/atoms/dropdown/index.tsx": { + "version": "e358c7c3fe588e1f640f3d12d250d96a01b0a11f7c641d937761fc51a19db0f2", + "signature": "40f70594c27bbf52364c559154aa64ecba00179ec4a548df2b751e72542f6497", + "affectsGlobalScope": false + }, + "../../core/components/atoms/heading/Heading.tsx": { + "version": "87d534ad186a3a72fb029f90cb6640050824c7e27c78bdb38a05a2b6325b6289", + "signature": "828defaa60b3ab19cbb4d6dfc1032962d76801a8f9f5be67791e04b99cef91bf", + "affectsGlobalScope": false + }, + "../../core/components/atoms/heading/index.tsx": { + "version": "eaef820e7cbb7a56bf1fec8b7132e8262258e50268c14436e822c1c3882c93d0", + "signature": "480c19fe72b950086e8c0e45b46b798590b05be70563147e4cb2df46c4002180", + "affectsGlobalScope": false + }, + "../../core/components/atoms/input/actionButton/ActionButton.tsx": { + "version": "c0f5eb814c17b235bc719a36bd4f6cd225be07c33e6022a518586f034122f048", + "signature": "1c642feceb641f29bb2d4269fe58760f9ccbc056a851cbfa8ed22a75d21ea1eb", + "affectsGlobalScope": false + }, + "../../core/components/atoms/input/actionButton/index.tsx": { + "version": "000e6dc4932d6152013f7a46e3e4cd76fa8be52d0899ffc77b1411cd3b2b10c3", + "signature": "1387bf26f9973002301f3150880aefce9665ec63392a537c17805ffc78246714", + "affectsGlobalScope": false + }, + "../../core/components/atoms/input/Input.tsx": { + "version": "890eb93c3aea53a97d347eb6bb2045a5644475810319c2879e0619665506c8dd", + "signature": "af9fe5423f81ba3449f6a5f89de013cb32feeec65dd4780d60695f0d01950a2c", + "affectsGlobalScope": false + }, + "../../core/components/atoms/input/index.tsx": { + "version": "700d98da331e8240c0399af62962d99cd212da34ced31c147e314825b7631d18", + "signature": "a2d5b6c211cca07de6f10aea9a25e15eb904e51448e1405f8988543cf57af62f", + "affectsGlobalScope": false + }, + "../../core/components/atoms/metricInput/MetricInput.tsx": { + "version": "7d02c2bb3c95e24914c9639543261c57779bc7d184bbca02f5497e61272d1d61", + "signature": "d0d75acbdbaa6aa769ad0c3be2ac9f90957e741170bfc459023f454385bc828b", + "affectsGlobalScope": false + }, + "../../core/components/atoms/metricInput/index.tsx": { + "version": "b593e1b518ed6658603c09b90f1a17df52c2dab4f31f1e24c6fb237f581d78b7", + "signature": "48c71fa7cc02985af142b22838dbb23d999daba9d3431f1312cc7b9129a2dae0", + "affectsGlobalScope": false + }, + "../../core/components/molecules/inputMask/utilites.tsx": { + "version": "0c11dae0199a72d338442d63dd528e07b32c73bbc36f3f9c23f0dcf34dd46054", + "signature": "5e349fe67f144931cc302513d9ee1328310b4b62049dc32880dcbcf100219eca", + "affectsGlobalScope": false + }, + "../../core/components/molecules/inputMask/InputMask.tsx": { + "version": "a594781469ebf7ca0c7563337c259f7c4d59d016b00ac979f9d5e0ccb3906632", + "signature": "e262e3518d5b605bc1ccdd5b3f51bfca531d27b205ac0f9dcfb6982e6110c426", + "affectsGlobalScope": false + }, + "../../core/components/molecules/inputMask/index.tsx": { + "version": "ce69a4be34e9a3da9907c665607d72a5c8699317267252ed6c712b9dc054d24b", + "signature": "0c89bc5a773baa972194f6f2a6d0f0293c7ed9f8d800ed31ffa7b7f1caba2b87", + "affectsGlobalScope": false + }, + "../../core/components/atoms/label/Label.tsx": { + "version": "e7d34307fcb33e72682bc084f68721d6e0d33015f491a9ee30a1d26fd7078e78", + "signature": "2e10ae72a9921c270de3dcc16dd1dd163670f55cc64ec95921830b6f5dcf93e1", + "affectsGlobalScope": false + }, + "../../core/components/atoms/label/index.tsx": { + "version": "97ae88f7a3f0cab4b7d1664ffa7809b1008bdb04bd905c69aaa5dfb042330439", + "signature": "b7f0a457b39057fbb3c585025224ac95e2b060e5f3bd27215e7b29b3d8bb9bc6", + "affectsGlobalScope": false + }, + "../../core/components/atoms/caption/Caption.tsx": { + "version": "6c151dae9140ee8615c9b696a75cf7f951050a0ef5eb5861b130b33b50f4d8a6", + "signature": "d40cbd65fa058603fbb05a6531d627075986b0de4d1a111921a21c4476925fb0", + "affectsGlobalScope": false + }, + "../../core/components/atoms/caption/index.tsx": { + "version": "e2a2e42d6f17e4509d7fd2ac46c8580009079fa8a8eb865e495565f7ba6fe50a", + "signature": "5762fae5cc1601bbc027d1998ad3ad2a924763b0ae9a36ea21c3f6213dbcc363", + "affectsGlobalScope": false + }, + "../../core/utils/navigationHelper.tsx": { + "version": "714b964d2364d5db4398249ccaa3ddfe3f39fca2b470707529eacdccedb1d577", + "signature": "2e3da2aacaddd7bb64ecb9e7b7b9da839b3771ce64fb6e2c5c49111bc4c5901d", + "affectsGlobalScope": false + }, + "../../core/components/organisms/verticalNav/MenuItem.tsx": { + "version": "37c875613577027e6abd3d875599079e27f06080d6b0774dd4a398a21b07b15c", + "signature": "5e37b7f569d09c007d1f438d81dbf26264baa12d49b0d34921a4233bb29dea05", + "affectsGlobalScope": false + }, + "../../core/components/organisms/verticalNav/VerticalNav.tsx": { + "version": "65cfe866cff1438e203b3bc8afd395beea4047f3cf2a3e8e3c48182159886b8e", + "signature": "b6a81d40026ba8bd3a2cbf23c794ebad04a3cd7ae697b1a3fcbca6f0cb11ad7f", + "affectsGlobalScope": false + }, + "../../core/components/organisms/verticalNav/index.tsx": { + "version": "e4b5f179d0ab6887dddb0092b8689355e6c2def7b35a82910f4877c7c7afe8e5", + "signature": "fb6e60cc6528097aa6d662df9d3e5d266b9f1791591fa451f43106f7a2c062d8", + "affectsGlobalScope": false + }, + "../../core/components/atoms/editable/Editable.tsx": { + "version": "a43a0a037f6db10edf037bc809344f738777fd61e582c0782eff24ec4fdb853d", + "signature": "04e3b3fabd6ed0e11fcdafe0312506c9defec830b29b568f5f97d4ec4faf649c", + "affectsGlobalScope": false + }, + "../../core/components/atoms/editable/index.tsx": { + "version": "818bcdbaf3ca12134c885888e2085bab791287ebedc18aeec6740a85f16d4a84", + "signature": "ad25b53254b9757265867636581e4ca65c80e3f086c9cbb2eb9717ad1fc28be9", + "affectsGlobalScope": false + }, + "../../core/components/molecules/editableDropdown/EditableDropdown.tsx": { + "version": "3e5bfbee40aa4eec1fadc0dc76b0f12d8a2c62ab23f5cb1e183297f1e2c37820", + "signature": "302fc70d29def09fc588806c4c2a49285cead7cdc4bc67b3a2a5422b1efd89af", + "affectsGlobalScope": false + }, + "../../core/components/molecules/editableDropdown/index.tsx": { + "version": "ff05b7c57a3f73272f5824ccc61cf4f6ebff6dcb21ad5636b14a3d869ffad7b6", + "signature": "1daea99843654eadac48b48465c86809f4de757ae46e4c82939bde1d94d0e517", + "affectsGlobalScope": false + }, + "../../core/components/atoms/collapsible/Collapsible.tsx": { + "version": "8c655479a3e521d6df3cbe8e3ed97422d8c8be3195a15469b193ae857147611d", + "signature": "5018267880c04fca751d3432161211251f300dee7ca6b1a85ed245127877cd6d", + "affectsGlobalScope": false + }, + "../../core/components/atoms/collapsible/index.tsx": { + "version": "5483e15e5f64476f1e60d94c3ab4084dcc7c65f07e87eacd7542f08576af8674", + "signature": "4e4cf20127311eacca1242d5cc5645c2c0b334b678a9707cefccefb806d4525a", + "affectsGlobalScope": false + }, + "../../core/components/atoms/legend/Legend.tsx": { + "version": "6f10feb04992debaee259f133beb9744121fb22cba56b508cd21ed391dc1741d", + "signature": "788c15758858113f145142cf024e1c591c0b01af09c97e54b035702ff6ae1654", "affectsGlobalScope": false }, "../../core/components/atoms/legend/index.tsx": { @@ -652,8 +802,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/link/Link.tsx": { - "version": "4b7d3b4c45fa1e492a53bf0c1fff74bb6ab6cf8e4d8e312f967198c35e604105", - "signature": "f2c136759a27cb7fa05eb22b2b812ddd63be9522a2298f522e32e436defa564a", + "version": "d81e021724d1ef3344e6169ebbef55279783fc1259f363264e403d849e2f9e57", + "signature": "1d0a0353e715fda986870090fe9182f7466abe92bdfbbe410335fe803ba0e399", "affectsGlobalScope": false }, "../../core/components/atoms/link/index.tsx": { @@ -662,7 +812,7 @@ "affectsGlobalScope": false }, "../../core/components/organisms/horizontalNav/HorizontalNav.tsx": { - "version": "be99ea8af6107404e89e5ea5068f8240b63ddf1490756a905ff3732d87ad2eaa", + "version": "ade6097da4bbb7a67063ec14aaa5d7d506862c5d2789e0c64efeac39c6093dc1", "signature": "f514d24ce6074d591e449c02b591ee452010db46cf8ac4ed134508b59d168684", "affectsGlobalScope": false }, @@ -672,8 +822,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/message/Message.tsx": { - "version": "710b1ac8a41f5f51e6d3feb77110e3e91e03c1752b23950d5bd798f4c48a5b17", - "signature": "ee7b6cc563abb26efac44db5444ff18ea734ce4561a92e6a4b2354689d198ed0", + "version": "b806dbee42d9d73fb1d5789e8bd4982471d2b023d6199563580d0fec25112d8e", + "signature": "9fc020e1b93352e04547ccc85c2a217c6c971dfc3f4b0b44c78d9b3b3f3e7a88", "affectsGlobalScope": false }, "../../core/components/atoms/message/index.tsx": { @@ -682,13 +832,13 @@ "affectsGlobalScope": false }, "../../core/components/atoms/metaList/Meta.tsx": { - "version": "cf2628fff98ebf6e5fe2ccf3a09f2ecef72063225dcbf0f49d9ec46b2eead2a0", - "signature": "db7432d2237a3af82cc651685b95fd81498d8b4372464ad818a6bdbbef21bbb4", + "version": "9ae094466c6c18f89913bdd2d67722589909c23809afd17ffbfe1ce985e78e62", + "signature": "04870d24c0c13fe0c22323ce808461968e8989477a6e8c4c08792de58cff7931", "affectsGlobalScope": false }, "../../core/components/atoms/metaList/MetaList.tsx": { - "version": "9ab5dbd963f41a59e6474a2820a419c24e4fc986d3405bee315d3ff53678803a", - "signature": "b189c61153d087d90b79821d877781b599edc85916881cf180d7b459407cbe04", + "version": "a2e9461049cb81571a79d8cded4a3658a138889a87a3bffcd7878cc0fd161523", + "signature": "2bf1748bc4d8d6967b776361ac06a6abe166cb52c49be74a50b129ac3c36846c", "affectsGlobalScope": false }, "../../core/components/atoms/metaList/index.tsx": { @@ -697,7 +847,7 @@ "affectsGlobalScope": false }, "../../core/components/atoms/outsideClick/OutsideClick.tsx": { - "version": "1f99344a3787824ccc1f97def23b68d98e4eea24aadfea23ad34dc937390a9ab", + "version": "86b47f621fde10957b59c3b9d62e67a287c74daf5f895ea28fd5b2069da24acf", "signature": "6a09258f8f7f4bc98fba0ec47e96b231b0c43934bb5fbb77692a14b9678c84e3", "affectsGlobalScope": false }, @@ -707,8 +857,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/paragraph/Paragraph.tsx": { - "version": "f0cf2627e04f0f9fc3875d337147fee8ddcda544dfc1933e4c0851f9d99a738e", - "signature": "a5a806d3371b84d748f9eec40f3503852f2da778adf12b4a5cd08d1d768073b3", + "version": "de062459cd01a96615b698afe6e88b92a2aa39987eee097b7c9b38a3a8ad304f", + "signature": "5ddd6da4aba65c1cdb4b22c665d83b50852062cd510716f83ebcefb8c8e8f624", "affectsGlobalScope": false }, "../../core/components/atoms/paragraph/index.tsx": { @@ -717,8 +867,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/radio/Radio.tsx": { - "version": "053a656629d21a58dad258e5ba6ec712de2ca22cda895c6f605bd6ad91fcf920", - "signature": "687a002a635491e279d209b9c30a1dc0ba94e74005fd4d714334b75e7a828e3f", + "version": "b51e6761bdbe91e2d303c26cef3797f61f9eee4e8ee6feaaeb5d9e70a1486d71", + "signature": "b5e6689f6b40f07a2bc0a948469389520da6061ad313f9eec96b6035f5a4962a", "affectsGlobalScope": false }, "../../core/components/atoms/radio/index.tsx": { @@ -727,7 +877,7 @@ "affectsGlobalScope": false }, "../../core/components/atoms/row/Row.tsx": { - "version": "4218a8964e4de7d3f13ba8944507e333031611de031e514591aff3af7d1e4514", + "version": "2b8fba362aa49484fea99c8de9355b758c79b88a9a7d254560e37da4d06f6fee", "signature": "46dae10643fbfc11217c4144b5d0a35b18008009cc520dd2490b2f0822b6018b", "affectsGlobalScope": false }, @@ -737,8 +887,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/spinner/Spinner.tsx": { - "version": "347d81d37ecf0f2585c6aa713acc987e037e271902905fedcb5725a4c9d18845", - "signature": "b3e8e59c18f5fe5244ea0f8e813711a5d3c4742c65c132927c58b837bb043389", + "version": "7dac93f57ad166cb6b4604261480101c21a100bb8a2354c6ebb0ddc51ab2696e", + "signature": "86f2adcc6fcd238305e0fc9cf833386d916607090c69ebe1f1430366c1b2d37a", "affectsGlobalScope": false }, "../../core/components/atoms/spinner/index.tsx": { @@ -747,27 +897,27 @@ "affectsGlobalScope": false }, "../../core/utils/Keys.ts": { - "version": "e0dcfd0fa94fd3df3a510b344e480745c1440810cab4ad25979e53963425fbbe", + "version": "5f90385176b25f7ecdd2cbd09de81e10bee5ed6b36cc357c67a7268fdf70a806", "signature": "f04214d63f7c97d5356201bdf3c5bc70dd487d4e413611e5c9e3885dd7f9a9ab", "affectsGlobalScope": false }, "../../core/components/atoms/multiSlider/SliderUtils.tsx": { - "version": "4fff8607aa97bd82d3c1f5baa3150a60b97f12c40d3b3f3c51e97b36b0a5556d", - "signature": "62e75f0ff3b9c7fa1e55591c1e71b8349ccb01dd80f2b6db1fb0dbd5ec5e6a71", + "version": "d3d02f0568c7b623ab09204a4a82749f9bb032a662787b7a8ff3b9f5392ac879", + "signature": "38e2ff72dcc8802fc99fbb18478d9dae0210abe52a04ca41524d8bcffdf90525", "affectsGlobalScope": false }, "../../core/components/atoms/multiSlider/Handle.tsx": { - "version": "56e6c50aea2ca85db3cf958f372b9c67fd40c839a119813025bec0070b2652c1", + "version": "cee8db86bdf26921b1bd864f148624b53b616c4c41d6b88457b8fbd9632f8b31", "signature": "cacadd85c8e7db3769e8125fdeeb9a80b9f52269ce3138a555e4086504ae3798", "affectsGlobalScope": false }, "../../core/components/atoms/multiSlider/index.tsx": { - "version": "6d82c5c5f749af2b63d8c5b70ace100100a909e070493a28b1fce7c9441d902d", - "signature": "e6b9fe2d3d419bb1dc943f2a8edb28ec69f45a17616897aa3cf7fde6d3e13821", + "version": "203e8189af8c84b165c3d522d63ed64fee0776bf4819efa57d37e074311a4833", + "signature": "80aaafd65bd0c56ea19e72b634c9544239fb583c6f3e194d9585f76d2f50a6fc", "affectsGlobalScope": false }, "../../core/components/atoms/slider/Slider.tsx": { - "version": "db18b15a8a819dc518632bad34337fc62267ecbe6038005bf1792963977f7728", + "version": "8c790a75b5ab612e579635434ea72cf4d2017ec0b55b0f369ce64b136a8f904a", "signature": "9512e33829a3c93f554da7693af6f27cf7d352fc95dc14e3196bc734ef0d84a1", "affectsGlobalScope": false }, @@ -777,8 +927,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/rangeSlider/RangeSlider.tsx": { - "version": "49e8de1c06740d048d3702a35dd35b63d23b132a200d07e03200852c2ce117bf", - "signature": "204c6e0acc041097a29ae15da6619b5240350b0007350293b61c4975a269e80b", + "version": "4e1b8a739719c5caca0be339c3edc730b418955aae3fceed719bc4313a395d5f", + "signature": "06b6304faddc17c30b6f32d3f87194363bdbc63491dc8217411051bc2ad72408", "affectsGlobalScope": false }, "../../core/components/atoms/rangeSlider/index.tsx": { @@ -787,8 +937,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/statusHint/StatusHint.tsx": { - "version": "e36dd763efcf75b905bfeeb5f43965bd1d86801518f5191b0a315d40de6899c1", - "signature": "9dd182a47ba1383faebeaa71e594b44da4e1fa1fa3d480056c568ca53bb4c494", + "version": "4fb65297db90de2a5ed1a13cd8deef7d2d9e48df7f4ad5f139f8f0ae6462e1e5", + "signature": "0cbb9806748ab5fec5c6ec4e80ce997e8122314867c7903f9c3019f99cbf2ad7", "affectsGlobalScope": false }, "../../core/components/atoms/statusHint/index.tsx": { @@ -797,8 +947,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/pills/Pills.tsx": { - "version": "1079cad83c01c3565b2dcbd27848712ec518860b1d1a3a2033194a6e5eb1b4ec", - "signature": "ea7e6818b36dae02e54e82eb23c988591b847c26dd545d799ece78e17de25f69", + "version": "6875b07c5a295219ca24a09e1c94095b4df0b805ff44eea2dad69874f931570c", + "signature": "65b3ec7850692917cb496bb9f8ccb4b320a2db963da8880c52f3fc8a233422f6", "affectsGlobalScope": false }, "../../core/components/atoms/pills/index.tsx": { @@ -807,8 +957,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/subheading/Subheading.tsx": { - "version": "db47bfbffd1569a19bf52adcb5ba00301f9180775cdba6bae3d4c380f9c52ca3", - "signature": "2f3182e42e26da13effd4c2157448d5d490daa398ff5857596f346fdf76509f7", + "version": "83a61ac21d47464502098ef8165f1ba38436b08eabe185831eef89e0d6679b4d", + "signature": "bc12f27521ca4cb3b8984d9e2da167ef438b28c3f2070f5b5ebec9d4c9825b82", "affectsGlobalScope": false }, "../../core/components/atoms/subheading/index.tsx": { @@ -817,8 +967,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/switchInput/Switch.tsx": { - "version": "e06013034fa2fcf5b00ea2bc4dcc683bdc0ca776dac467147d649616262d5017", - "signature": "849bc56a69273f9d6ce1ac3bbd9b0c87ff2ab0a0afdac104731866ad4de2ab2f", + "version": "7f7d1f25c47a7f28bbeec1f0dbca34485eae9bd81dc1876233ae768832177fc6", + "signature": "7c897756057c40addbbef0a04726a2e3ef43afd1592af10e91cbc05707a435b7", "affectsGlobalScope": false }, "../../core/components/atoms/switchInput/index.tsx": { @@ -827,7 +977,7 @@ "affectsGlobalScope": false }, "../../core/components/atoms/textarea/Textarea.tsx": { - "version": "896e7ef4fca526a04e911ad8a3582930b5b051929443f6158317f1c40ffdd764", + "version": "ba82a8a860ef95254d4a1ae365bb2c36d126e3b1af0f6aa93a09981a9254280e", "signature": "9bef5f78a3cf8514e8832de1bf5230e73fe21be6af8512f8b06fb3425062adb2", "affectsGlobalScope": false }, @@ -837,13 +987,13 @@ "affectsGlobalScope": false }, "../../core/components/atoms/toast/ActionButton.tsx": { - "version": "58efed12a1b83ca5bffa10d0aadd42fb1c2973d231668f28ae25e0aec90e42ba", - "signature": "1094ff9e13bb0d05e7a48e9277c1e729abdedf9c4ec8f80d8c2149cfbfd4bc74", + "version": "624c3d360755f34c6dbf92095af76857a24eb07bdfc4ac9890855a3893583c13", + "signature": "dd5e952ecf8b292d15b29f8e427c7331dc3ec7a5f2ef4927c2aea01f86f747b2", "affectsGlobalScope": false }, "../../core/components/atoms/toast/Toast.tsx": { - "version": "9ba30330d036846af3e1b74facb12f1ff6a9514fee20ef73d03c07cec6597bf5", - "signature": "1d61ac10fcc67bad1c60b7d59fff617cf038f7e0e061568a80333c30bea19652", + "version": "cf23bf7a0d94c575d43ecaa2e849069ac71ab83ef2d40fcee3597c0d35e51f78", + "signature": "adf965d2aa0e431b85aa3b7aba520aa56cb92b289d4ffb7f2727b003556438ec", "affectsGlobalScope": false }, "../../core/components/atoms/toast/index.tsx": { @@ -852,8 +1002,8 @@ "affectsGlobalScope": false }, "../../core/components/molecules/tooltip/Tooltip.tsx": { - "version": "fffeaeedd8cf395cd6201b1c3202112cff5a4879f2bfb38e53f16e1d98c75218", - "signature": "f4f9c688b77e50fed648867d6fdc952ab6a0006c1edc516c11bc4f7fa1e4e79e", + "version": "38f75546b5f090a24713940b67be7aa62a11038879ffacae0157a8efcafc3d2c", + "signature": "202c82ec16b0ef85a40a049e589953e37cb5e3ab771d8666fb1616a9db2133e5", "affectsGlobalScope": false }, "../../core/components/molecules/tooltip/index.tsx": { @@ -862,7 +1012,7 @@ "affectsGlobalScope": false }, "../../core/components/molecules/dialog/Dialog.tsx": { - "version": "b0168ac134a23afbf8844bf70e79c2af80c97d4ad4d48253a59a6a458c8e95e7", + "version": "d5ad611641cbf58cd3ba9fc3b491503429054f54b6001949add55ef8eaa7079d", "signature": "bdb61ad54f812237b0a946e46700c046091f6b49f2b7c9eb5186c15d559ccbbe", "affectsGlobalScope": false }, @@ -872,22 +1022,22 @@ "affectsGlobalScope": false }, "../../core/components/molecules/chatMessage/Status.tsx": { - "version": "1d0c5a870c6863132eeb98f52d2fb39988e574d498736779d3274c7b9e7bff41", + "version": "d6800989db39bf16437c93de9cb849f51d946a00ecdc1871479e3ef9f67d8a90", "signature": "96aa7e97fa42bbb8bb8178ede656fd40f42a51ce48a39ccb47a9941cebae533e", "affectsGlobalScope": false }, "../../core/components/molecules/chatMessage/Box.tsx": { - "version": "9618fb768f5ae4b767881aa0add260abfe360d5998ae683ceeb0a5ad49f18430", + "version": "1a948dcb35a6de082e28467e4a9a7e9c2a1fc84f6441c13b4ebbdf0ec57c06f4", "signature": "94d5c3d1aef918fcebabcff3e0f7cc705d17f1aaa7ee2ac8065b4c5eaeff79a5", "affectsGlobalScope": false }, "../../core/components/molecules/chatMessage/MessageText.tsx": { - "version": "71f9b05852acbf56828b49962381548741d641c6614a0a423b01ebea80a9d81d", + "version": "3b4f8f73dfce414d3ac5495ed68dddfbcded53a44ba73a0f9a5fb599e95ed482", "signature": "21944d0c0932443dfc672e4b475132235704038c6d30fe39826df323df563238", "affectsGlobalScope": false }, "../../core/components/molecules/chatMessage/ChatMessage.tsx": { - "version": "73ced846e9919e7090c6dbb69d23ed7f0d4335eee2d9b91c0b02ed76bbea3e81", + "version": "9cd3b4034fe48322a4fa038958160cf43938b068ecaba2a8fd4ea2fefaa63431", "signature": "e05a8025ec3ebb1e98018ec67d27e64eaad388f2129ec95d3ccf34516e505ac6", "affectsGlobalScope": false }, @@ -896,204 +1046,509 @@ "signature": "1dba2d13e2fa825420e0113039a846d70659446752421299af1fca92352dd372", "affectsGlobalScope": false }, - "../../core/components/molecules/emptyState/EmptyState.tsx": { - "version": "53b0dd55640901ad51d16cbc1ddab221fb30300fdf8ca20b257917ca60d0b3c9", - "signature": "37b09708391d897204c352d1440459a4052651de102a6dd63688b149bc4c9921", + "../../core/components/molecules/emptyState/EmptyStateContext.tsx": { + "version": "9f818e4821189c5c987e3f75c7cda2af42c78d77380b0abd60b5a0f0373ed26d", + "signature": "afb45c0e2cb6a94f4a28badf0d8f8d27dfe15d76734d5ab76426c418cd2144a7", "affectsGlobalScope": false }, - "../../core/components/molecules/emptyState/index.tsx": { - "version": "aeafb1df89a19d7060310a352d50019d21e867352cbbbc72e4c1485d3018476e", - "signature": "177bdd267c09acfba8e6c3c59e0bdfc49873520e44801e30ff5380c5132dfdeb", + "../../core/components/molecules/emptyState/EmptyStateImage.tsx": { + "version": "dc049c3770d8c4dd1626446b49dc2006775ca8c23a66c0acb7e16a01ddf0437b", + "signature": "f29b994ec873225d8da769157b9a9e552716e3f841f77d6faf7042ce165c3b20", "affectsGlobalScope": false }, - "../../core/components/molecules/overlayFooter/OverlayFooter.tsx": { - "version": "e7759769336a00416abc6a61af6cd3bf80588ca2c5ded949933952a40247bd99", - "signature": "79f12c6a6d8fa70ab572a5a262b67c1119eed6488b4f1ee423dcde62c55fffd8", + "../../core/components/molecules/emptyState/EmptyStateTitle.tsx": { + "version": "90341caf6f71471b79ac5c0a3d13ae926481b98c1714daef52a117fd0c9715ea", + "signature": "a9ae04920b8cc1b47f57177515e0419a93f5c540ec985e8ede57ed26f4bf5bbd", "affectsGlobalScope": false }, - "../../core/components/molecules/overlayFooter/index.tsx": { - "version": "439a89eef207a81122381d9db8223b6f7413c54029c12c8170d380ca848aa348", - "signature": "2f4ba29d3e5dc49a68f4510d5989678974c3b9975ced76d71963e65304edef6c", + "../../node_modules/jest-diff/build/types.d.ts": { + "version": "71ba0678a3c647f5c0706ae975c031ace0d464e60f9ce56eaa7f1678d065aab7", + "signature": "71ba0678a3c647f5c0706ae975c031ace0d464e60f9ce56eaa7f1678d065aab7", "affectsGlobalScope": false }, - "../../core/components/molecules/overlayHeader/OverlayHeader.tsx": { - "version": "02304207c8f3768e19d8c84c827927a59cb1fa36c12962c13377029c095554df", - "signature": "7faae95c74b56b1e4e654331c1ea1e7d87b74979a1f01eec1da117db41206ac3", + "../../node_modules/jest-diff/build/index.d.ts": { + "version": "162c6f2951bd80ae6e16679378f382200b26bba9de8f255af3a2895fbfa670b4", + "signature": "162c6f2951bd80ae6e16679378f382200b26bba9de8f255af3a2895fbfa670b4", "affectsGlobalScope": false }, - "../../core/components/molecules/overlayHeader/index.tsx": { - "version": "2b86629c11e36c95d7daba2c0fc0b0d7f06fde0d01cadab01a6d88650e2d3e2f", - "signature": "f7aba665eb46fef623aeee4f3f922c8b2f699bfded56972ca23c836ec73478a6", - "affectsGlobalScope": false + "../../node_modules/@types/jest/index.d.ts": { + "version": "375c56b1890858dcdae495877f0ce3b694980adf64762e2fd3fbe78e3eac76ba", + "signature": "375c56b1890858dcdae495877f0ce3b694980adf64762e2fd3fbe78e3eac76ba", + "affectsGlobalScope": true }, - "../../core/components/molecules/overlayBody/OverlayBody.tsx": { - "version": "7663a0c438a6c7953d30e1d30b38ef50c973c25a6943c684f08786492e616e5f", - "signature": "c37271c24b9c311da4fea544944a56f7c2c9c59fb0a2af9217f0fe29a3f369d4", + "../../node_modules/@types/node/assert.d.ts": { + "version": "0d5a2ee1fdfa82740e0103389b9efd6bfe145a20018a2da3c02b89666181f4d9", + "signature": "0d5a2ee1fdfa82740e0103389b9efd6bfe145a20018a2da3c02b89666181f4d9", "affectsGlobalScope": false }, - "../../core/components/molecules/overlayBody/index.tsx": { - "version": "f78e68196f868bbfa8a9bdebd25bccc3ad5070dfd4f4c00702f09163bb67489a", - "signature": "40a2ce07ea054fd77c261a189589cf497387db8433b9a49e06b25f43cbcbd3bc", + "../../node_modules/@types/node/assert/strict.d.ts": { + "version": "a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a", + "signature": "a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a", "affectsGlobalScope": false }, - "../../core/utils/overlayHelper.ts": { - "version": "6b9a145a9ba341510d4903c074f47fc33e43464923f8267b08e0fc6861464f54", - "signature": "8689745105fe56a18a0e70eb8126867b63470f064db4a10e4bccecc268039ad0", - "affectsGlobalScope": false + "../../node_modules/@types/node/globals.d.ts": { + "version": "92d63add669d18ebc349efbacd88966d6f2ccdddfb1b880b2db98ae3aa7bf7c4", + "signature": "92d63add669d18ebc349efbacd88966d6f2ccdddfb1b880b2db98ae3aa7bf7c4", + "affectsGlobalScope": true }, - "../../core/components/molecules/sidesheet/Sidesheet.tsx": { - "version": "3a801d268586deb40e1c70e24205e1a8d2c0edd0484ecca59e158b3e69fc9926", - "signature": "00bd96158558e071856efa9680d4ea9a1dec28ef8ba4c1e940c1bb6517588d85", + "../../node_modules/@types/node/async_hooks.d.ts": { + "version": "ccc94049a9841fe47abe5baef6be9a38fc6228807974ae675fb15dc22531b4be", + "signature": "ccc94049a9841fe47abe5baef6be9a38fc6228807974ae675fb15dc22531b4be", "affectsGlobalScope": false }, - "../../core/components/molecules/sidesheet/index.tsx": { - "version": "3de26a0053a31ee264fccd8355b420e1f540662c0352336acf10da2b6067aec6", - "signature": "59b453a3fe8a22771fad2ef46b95cca7208d3db7f87522f07cf4e2e10ca479c2", - "affectsGlobalScope": false + "../../node_modules/@types/node/buffer.d.ts": { + "version": "9acfe4d1ff027015151ce81d60797b04b52bffe97ad8310bb0ec2e8fd61e1303", + "signature": "9acfe4d1ff027015151ce81d60797b04b52bffe97ad8310bb0ec2e8fd61e1303", + "affectsGlobalScope": true }, - "../../core/components/molecules/modal/Modal.tsx": { - "version": "5ddd15016f2d68a7ee5db14a4dea75e1d1e03ee303df7fa815d50fdbd6294c55", - "signature": "ff79a4a01a5ece297536e191fdf930a87469480afc0152d01ee4c1e8dee33d40", + "../../node_modules/@types/node/child_process.d.ts": { + "version": "95843d5cfafced8f3f8a5ce57d2335f0bcd361b9483587d12a25e4bd403b8216", + "signature": "95843d5cfafced8f3f8a5ce57d2335f0bcd361b9483587d12a25e4bd403b8216", "affectsGlobalScope": false }, - "../../core/components/molecules/modal/ModalHeader.tsx": { - "version": "556fd8c023b4a14859e0484922986fc02f0abd449862c4f03b8198e398bfca5a", - "signature": "be3f60cdb43b5e1493ecad29fed039b7c49adfc9fad38e79cb6f302e5115c639", + "../../node_modules/@types/node/cluster.d.ts": { + "version": "afc6e96061af46bcff47246158caee7e056f5288783f2d83d6858cd25be1c565", + "signature": "afc6e96061af46bcff47246158caee7e056f5288783f2d83d6858cd25be1c565", "affectsGlobalScope": false }, - "../../core/components/molecules/modal/ModalBody.tsx": { - "version": "346b6f0c226fd118118eaf08918f19d0e4bbab75bdc93467cccc6b0ebd19515b", - "signature": "24746ac7a4a44dfae8e10c8e55db43be145f99b80e773b0c80b9b1463a1c865d", - "affectsGlobalScope": false + "../../node_modules/@types/node/console.d.ts": { + "version": "34f5bcac12b36d70304b73de5f5aab3bb91bd9919f984be80579ebcad03a624e", + "signature": "34f5bcac12b36d70304b73de5f5aab3bb91bd9919f984be80579ebcad03a624e", + "affectsGlobalScope": true }, - "../../core/components/molecules/modal/ModalFooter.tsx": { - "version": "ae45b14fdb4275a9127bbbaf959f163e4201ae94979896147e5b776a06593543", - "signature": "a48ad2c1b077f64d89eb96f881dd7c22b049f5f6ce765b41ff9f63e2edc6e860", + "../../node_modules/@types/node/constants.d.ts": { + "version": "82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4", + "signature": "82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4", "affectsGlobalScope": false }, - "../../core/components/molecules/modal/index.tsx": { - "version": "a3562c4fed2d22e916f6dae5b6bc5f7244e573f6a3d796b40564ab77d5941171", - "signature": "2e7314c19f9c3fbdc9e5e0240eb7f50c176634246cb6bbc99e245da4414b7ab1", + "../../node_modules/@types/node/crypto.d.ts": { + "version": "2f520601649a893e6a49a8851ebfcf4be8ce090dc1281c2a08a871cb04e8251f", + "signature": "2f520601649a893e6a49a8851ebfcf4be8ce090dc1281c2a08a871cb04e8251f", "affectsGlobalScope": false }, - "../../core/components/molecules/chipInput/ChipInput.tsx": { - "version": "6452dc1f0998eb9150a8eb7c278fd9e1dfa9bbe62889be4f6eb6e7b2ff781b07", - "signature": "7e03f5815331aceb4dcdde07a2a73a891636dae43f459ee8d91a4ecd78d6cb09", + "../../node_modules/@types/node/dgram.d.ts": { + "version": "f50c975ab7b50e25a69e3d8a3773894125b44e9698924105f23b812bf7488baf", + "signature": "f50c975ab7b50e25a69e3d8a3773894125b44e9698924105f23b812bf7488baf", "affectsGlobalScope": false }, - "../../core/components/molecules/chipInput/index.tsx": { - "version": "81d881dce0e42ddb787ad58cbce16e3bfffc877bcaf514620cd6a601b7044df6", - "signature": "f5584fb1dcda175b4dd7048171192f974f36e27205721332d36683ac1c08f570", + "../../node_modules/@types/node/diagnostics_channel.d.ts": { + "version": "2b8c764f856a1dd0a9a2bf23e5efddbff157de8138b0754010be561ae5fcaa90", + "signature": "2b8c764f856a1dd0a9a2bf23e5efddbff157de8138b0754010be561ae5fcaa90", "affectsGlobalScope": false }, - "../../core/components/molecules/fullscreenModal/FullscreenModal.tsx": { - "version": "cd6ccf4abc757b6e5c4ae2f485497a784a5ad99aab849d90ef1e64632fed9906", - "signature": "aaacc3582011c1e87cc61c3bcf6377fb6075e88ec2a78d8b93c57bfa235b11bf", + "../../node_modules/@types/node/dns.d.ts": { + "version": "76650408392bf49a8fbf3e2b6b302712a92d76af77b06e2da1cc8077359c4409", + "signature": "76650408392bf49a8fbf3e2b6b302712a92d76af77b06e2da1cc8077359c4409", "affectsGlobalScope": false }, - "../../core/components/molecules/fullscreenModal/index.tsx": { - "version": "6009bd8e53d09bae875d3732f7120790d2509207df4e71cd44a4179cdac37fbf", - "signature": "98bcd0cdb7d37f92b9fb495d07fe7d3757a5a0a3329d83c7be212afeef314a10", + "../../node_modules/@types/node/dns/promises.d.ts": { + "version": "0af3121e68297b2247dd331c0d24dba599e50736a7517a5622d5591aae4a3122", + "signature": "0af3121e68297b2247dd331c0d24dba599e50736a7517a5622d5591aae4a3122", "affectsGlobalScope": false }, - "../../core/components/molecules/modalDescription/ModalDescription.tsx": { - "version": "d7fb7d5974088431520a490863fc3242daae840220f76631b48e85769a8da67a", - "signature": "b2c258ebd79e78a89fd4fd5576322f7e7e5ea2ddb2cf70034b71e285c03c143f", + "../../node_modules/@types/node/domain.d.ts": { + "version": "6972fca26f6e9bd56197568d4379f99071a90766e06b4fcb5920a0130a9202be", + "signature": "6972fca26f6e9bd56197568d4379f99071a90766e06b4fcb5920a0130a9202be", "affectsGlobalScope": false }, - "../../core/components/molecules/modalDescription/index.tsx": { - "version": "ff5daaf07c8e797b6e648e65be43a3b26cbb56ab8d6d2df1209705d7262ad4cf", - "signature": "698e7615475ccab9237b046d4d1314808eb557e7b823903f5cb040782ebf850a", - "affectsGlobalScope": false + "../../node_modules/@types/node/events.d.ts": { + "version": "4a2628e95962c8ab756121faa3ac2ed348112ff7a87b5c286dd2cc3326546b4c", + "signature": "4a2628e95962c8ab756121faa3ac2ed348112ff7a87b5c286dd2cc3326546b4c", + "affectsGlobalScope": true }, - "../../core/components/molecules/pagination/Pagination.tsx": { - "version": "14610e8496fb4f24bee08fa594924305695787cecf8abdbb208eef94a144a1a3", - "signature": "12eff4722fe853ec6816232cc744e8fda010e2a3c0b92d54d8b853a46b415383", + "../../node_modules/@types/node/fs.d.ts": { + "version": "80793b2277f31baa199234daed806fff0fb11491d1ebd3357e520c3558063f00", + "signature": "80793b2277f31baa199234daed806fff0fb11491d1ebd3357e520c3558063f00", "affectsGlobalScope": false }, - "../../core/components/molecules/pagination/index.tsx": { - "version": "36079ff58048b47fffa48c84226bca5a34dce2151d4d2bbcb02966c50c0a469f", - "signature": "141145c1b46a0b904c586b14ae34ca3d7498b10c83448eb63d7d470e8b12ddb3", + "../../node_modules/@types/node/fs/promises.d.ts": { + "version": "a049a59a02009fc023684fcfaf0ac526fe36c35dcc5d2b7d620c1750ba11b083", + "signature": "a049a59a02009fc023684fcfaf0ac526fe36c35dcc5d2b7d620c1750ba11b083", "affectsGlobalScope": false }, - "../../core/components/atoms/progressBar/ProgressBar.tsx": { - "version": "df2884764b869bfa18fe6382aaaea4cc7b263469038440de7b04b1b84c83234b", - "signature": "935b924f1e2a4f72c2133bf199a3c5926aee823ccae8ea6b15379b465d75e099", + "../../node_modules/@types/node/http.d.ts": { + "version": "b9b963043551b034abd9e7c6d859f7a81d99479fde938d983114d167d0644a78", + "signature": "b9b963043551b034abd9e7c6d859f7a81d99479fde938d983114d167d0644a78", "affectsGlobalScope": false }, - "../../core/components/atoms/progressBar/index.tsx": { - "version": "8ee905db7f45be6664ba0052ebf19b7a67cfbd17ef7c7a3a318f4804061005ef", - "signature": "993e1d28ff46aa8e1ff0337f205cb32b4b2faea6075582f616393d065ce3f1b9", + "../../node_modules/@types/node/http2.d.ts": { + "version": "b287b810b5035d5685f1df6e1e418f1ca452a3ed4f59fd5cc081dbf2045f0d9b", + "signature": "b287b810b5035d5685f1df6e1e418f1ca452a3ed4f59fd5cc081dbf2045f0d9b", "affectsGlobalScope": false }, - "../../core/components/molecules/editableInput/EditableInput.tsx": { - "version": "04c0c307618d2f1bbadbd967071deae68e47362bd2a7f7b4c005dc36db883df3", - "signature": "8ac9ad0e028f9716152586e0cf67df9fdbd00e939ce0428989bfe8781e5fb8d5", + "../../node_modules/@types/node/https.d.ts": { + "version": "4b9a003b5c556c96784132945bb41c655ea11273b1917f5c8d0c154dd5fd20dd", + "signature": "4b9a003b5c556c96784132945bb41c655ea11273b1917f5c8d0c154dd5fd20dd", "affectsGlobalScope": false }, - "../../core/components/molecules/editableInput/index.tsx": { - "version": "e872fa9bdedf0e1995eac532e1137e1bd5b6bbef902615e132df85cb5f00245c", - "signature": "c0efb6c7835aa7e80248128b4883abd63e23c01f4f3496a56ad01fb27f42fc98", + "../../node_modules/@types/node/inspector.d.ts": { + "version": "a458dc78104cc80048ac24fdc02fe6dce254838094c2f25641b3f954d9721241", + "signature": "a458dc78104cc80048ac24fdc02fe6dce254838094c2f25641b3f954d9721241", "affectsGlobalScope": false }, - "../../core/components/molecules/editableChipInput/EditableChipInput.tsx": { - "version": "b270ac905504c181e12a19f8ed737bb314c72a599385f3ed8e391100b20e2057", - "signature": "1d1196a1d3a13ba64e141972debf7d789cbcb1173a737fbd5771d421c7675b04", - "affectsGlobalScope": false + "../../node_modules/@types/node/module.d.ts": { + "version": "e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5", + "signature": "e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5", + "affectsGlobalScope": true }, - "../../core/components/molecules/editableChipInput/index.tsx": { - "version": "e25b759fd3bcb83863121bf54af20f56527e3917c49d99f9df3d823def49b7f2", - "signature": "c59b0500ae0eafa64ce07aa2bcc9230b12933054dfe929cea1ae4b84a440b000", + "../../node_modules/@types/node/net.d.ts": { + "version": "902cd98bf46e95caf4118a0733fb801e9e90eec3edaed6abdad77124afec9ca2", + "signature": "902cd98bf46e95caf4118a0733fb801e9e90eec3edaed6abdad77124afec9ca2", "affectsGlobalScope": false }, - "../../node_modules/popper.js/index.d.ts": { - "version": "1873db8f2261ba4f248bde3e5bb4c79b1fdc990315054e9604fce8f41ddd1587", - "signature": "1873db8f2261ba4f248bde3e5bb4c79b1fdc990315054e9604fce8f41ddd1587", + "../../node_modules/@types/node/os.d.ts": { + "version": "abc1c425b2ad6720433f40f1877abfa4223f0f3dd486c9c28c492179ca183cb6", + "signature": "abc1c425b2ad6720433f40f1877abfa4223f0f3dd486c9c28c492179ca183cb6", "affectsGlobalScope": false }, - "../../node_modules/react-popper/typings/react-popper.d.ts": { - "version": "1369cd82395b56a4d7875c9818e529156590597f5c2a17f373d56899b041b0fe", - "signature": "1369cd82395b56a4d7875c9818e529156590597f5c2a17f373d56899b041b0fe", + "../../node_modules/@types/node/path.d.ts": { + "version": "cd4854d38f4eb5592afd98ab95ca17389a7dfe38013d9079e802d739bdbcc939", + "signature": "cd4854d38f4eb5592afd98ab95ca17389a7dfe38013d9079e802d739bdbcc939", "affectsGlobalScope": false }, - "../../core/components/atoms/popperWrapper/PopperWrapper.tsx": { - "version": "2cd2a9cff8caefbf0d8d24b0c5e482a0a9767feae97b30fc4025cfe233fe3edd", - "signature": "50325d1368fadf00a75824b09ccc0263e23629d33be574638879f61dd056ad23", + "../../node_modules/@types/node/perf_hooks.d.ts": { + "version": "94eed4cc2f5f658d5e229ff1ccd38860bddf4233e347bf78edd2154dee1f2b99", + "signature": "94eed4cc2f5f658d5e229ff1ccd38860bddf4233e347bf78edd2154dee1f2b99", "affectsGlobalScope": false }, - "../../core/components/atoms/popperWrapper/index.tsx": { - "version": "5663b0639e081ad9d185188634355cafe64e5f8a5ec2225dbcab29937e2f2a9c", - "signature": "15f61e620ece2bf7059aee0805033459bbdbef4ee71698879711b03c38781d89", + "../../node_modules/@types/node/process.d.ts": { + "version": "bd1a08e30569b0fb2f0b21035eb9b039871f68faa9b98accf847e9c878c5e0a9", + "signature": "bd1a08e30569b0fb2f0b21035eb9b039871f68faa9b98accf847e9c878c5e0a9", + "affectsGlobalScope": true + }, + "../../node_modules/@types/node/punycode.d.ts": { + "version": "9f1069b9e2c051737b1f9b4f1baf50e4a63385a6a89c32235549ae87fc3d5492", + "signature": "9f1069b9e2c051737b1f9b4f1baf50e4a63385a6a89c32235549ae87fc3d5492", "affectsGlobalScope": false }, - "../../core/components/molecules/popover/Popover.tsx": { - "version": "3046c88c1d4505821f4e3ee3d45011f637b6db0de7531a8b7d36da72ab12b320", - "signature": "eeb017ea4312735392744a19241d851d85814efa5230d043df60a3b157b1bfb5", + "../../node_modules/@types/node/querystring.d.ts": { + "version": "ee18f2da7a037c6ceeb112a084e485aead9ea166980bf433474559eac1b46553", + "signature": "ee18f2da7a037c6ceeb112a084e485aead9ea166980bf433474559eac1b46553", "affectsGlobalScope": false }, - "../../core/components/molecules/popover/index.tsx": { - "version": "fbac8950acae50625c10fb96b8bcaab31363456c6c7a50a500276c203ca4c9b4", - "signature": "6b1afce3bd60aa952e59b86650e0c7571f7662bbd199b2fd95dfe189c8a65743", + "../../node_modules/@types/node/readline.d.ts": { + "version": "29c2706fa0cc49a2bd90c83234da33d08bb9554ecec675e91c1f85087f5a5324", + "signature": "29c2706fa0cc49a2bd90c83234da33d08bb9554ecec675e91c1f85087f5a5324", "affectsGlobalScope": false }, - "../../core/components/atoms/progressRing/ProgressRing.tsx": { - "version": "49069e33ded61bc3c33b2a004ce6ad06825f3788b99b1ac798fbd5b717a50dd8", - "signature": "748cf673982658e2ce3f1fcf434adadaa889fda64dd88f50a88dbf35cef7bcba", + "../../node_modules/@types/node/repl.d.ts": { + "version": "0acbf26bf958f9e80c1ffa587b74749d2697b75b484062d36e103c137c562bc3", + "signature": "0acbf26bf958f9e80c1ffa587b74749d2697b75b484062d36e103c137c562bc3", "affectsGlobalScope": false }, - "../../core/components/atoms/progressRing/index.tsx": { - "version": "89549748b47afc4a136e1da1fc8f43a3e258a458289c9ac7dfcf7946ee049452", - "signature": "44a796033057099552650526d43208c45e7ba18c1bcf56c75381900e2f10da4c", + "../../node_modules/@types/node/stream.d.ts": { + "version": "d7838022c7dab596357a9604b9c6adffe37dc34085ce0779c958ce9545bd7139", + "signature": "d7838022c7dab596357a9604b9c6adffe37dc34085ce0779c958ce9545bd7139", "affectsGlobalScope": false }, - "../../core/components/molecules/stepper/Step.tsx": { - "version": "a6f563e165c0b98317435393bfc1b56961c7d8ee80d7b964bbffa7dbbd6124a5", - "signature": "272441305427b4d5b85edaff2df6af465c28fda2ff78e005056745a7e4f342dd", + "../../node_modules/@types/node/stream/promises.d.ts": { + "version": "1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff", + "signature": "1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff", "affectsGlobalScope": false }, - "../../core/components/molecules/stepper/Stepper.tsx": { - "version": "0870f8c762b5030063ceae57356f2f31fdd73eab324ecbe090b1585eea23a979", - "signature": "c5df07bffb6808f65eb54e255bc028923cf58355652d3356fa80b0e2e775ce92", + "../../node_modules/@types/node/stream/consumers.d.ts": { + "version": "806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0", + "signature": "806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0", + "affectsGlobalScope": true + }, + "../../node_modules/@types/node/stream/web.d.ts": { + "version": "a7971f9fb2a32ec7788ec6cda9d7a33c02023dfe9a62db2030ad1359649d8050", + "signature": "a7971f9fb2a32ec7788ec6cda9d7a33c02023dfe9a62db2030ad1359649d8050", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/string_decoder.d.ts": { + "version": "c33a6ea7147af60d8e98f1ac127047f4b0d4e2ce28b8f08ff3de07ca7cc00637", + "signature": "c33a6ea7147af60d8e98f1ac127047f4b0d4e2ce28b8f08ff3de07ca7cc00637", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/timers.d.ts": { + "version": "b42b47e17b8ece2424ae8039feb944c2e3ba4b262986aebd582e51efbdca93dc", + "signature": "b42b47e17b8ece2424ae8039feb944c2e3ba4b262986aebd582e51efbdca93dc", + "affectsGlobalScope": true + }, + "../../node_modules/@types/node/timers/promises.d.ts": { + "version": "664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980", + "signature": "664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/tls.d.ts": { + "version": "2408611d9b4146e35d1dbd1f443ccd8e187c74614a54b80300728277529dbf11", + "signature": "2408611d9b4146e35d1dbd1f443ccd8e187c74614a54b80300728277529dbf11", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/trace_events.d.ts": { + "version": "998a3de5237518c0b3ac00a11b3b4417affb008aa20aedee52f3fdae3cb86151", + "signature": "998a3de5237518c0b3ac00a11b3b4417affb008aa20aedee52f3fdae3cb86151", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/tty.d.ts": { + "version": "ad41008ffe077206e1811fc873f4d9005b5fd7f6ab52bb6118fef600815a5cb4", + "signature": "ad41008ffe077206e1811fc873f4d9005b5fd7f6ab52bb6118fef600815a5cb4", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/url.d.ts": { + "version": "d88ecca73348e7c337541c4b8b60a50aca5e87384f6b8a422fc6603c637e4c21", + "signature": "d88ecca73348e7c337541c4b8b60a50aca5e87384f6b8a422fc6603c637e4c21", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/util.d.ts": { + "version": "badae0df9a8016ac36994b0a0e7b82ba6aaa3528e175a8c3cb161e4683eec03e", + "signature": "badae0df9a8016ac36994b0a0e7b82ba6aaa3528e175a8c3cb161e4683eec03e", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/v8.d.ts": { + "version": "c3db860bcaaaeb3bbc23f353bbda1f8ab82756c8d5e973bebb3953cb09ea68f2", + "signature": "c3db860bcaaaeb3bbc23f353bbda1f8ab82756c8d5e973bebb3953cb09ea68f2", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/vm.d.ts": { + "version": "235a53595bd20b0b0eeb1a29cb2887c67c48375e92f03749b2488fbd46d0b1a0", + "signature": "235a53595bd20b0b0eeb1a29cb2887c67c48375e92f03749b2488fbd46d0b1a0", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/wasi.d.ts": { + "version": "bc09393cd4cd13f69cf1366d4236fbae5359bb550f0de4e15767e9a91d63dfb1", + "signature": "bc09393cd4cd13f69cf1366d4236fbae5359bb550f0de4e15767e9a91d63dfb1", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/worker_threads.d.ts": { + "version": "9c266243b01545e11d2733a55ad02b4c00ecdbda99c561cd1674f96e89cdc958", + "signature": "9c266243b01545e11d2733a55ad02b4c00ecdbda99c561cd1674f96e89cdc958", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/zlib.d.ts": { + "version": "c71155c05fc76ff948a4759abc1cb9feec036509f500174bc18dad4c7827a60c", + "signature": "c71155c05fc76ff948a4759abc1cb9feec036509f500174bc18dad4c7827a60c", + "affectsGlobalScope": false + }, + "../../node_modules/@types/node/globals.global.d.ts": { + "version": "ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e", + "signature": "ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e", + "affectsGlobalScope": true + }, + "../../node_modules/@types/node/index.d.ts": { + "version": "1cdb8f094b969dcc183745dc88404e2d8fcf2a858c6e7cc2441011476573238e", + "signature": "1cdb8f094b969dcc183745dc88404e2d8fcf2a858c6e7cc2441011476573238e", + "affectsGlobalScope": false + }, + "../../node_modules/@types/scheduler/index.d.ts": { + "version": "74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57", + "signature": "74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57", + "affectsGlobalScope": false + }, + "../../node_modules/@types/webpack-env/index.d.ts": { + "version": "3a1e422f919c70fca66e94dc641ad8d9732b3d2533ac047b8a9aaca9eea3aa10", + "signature": "3a1e422f919c70fca66e94dc641ad8d9732b3d2533ac047b8a9aaca9eea3aa10", + "affectsGlobalScope": true + }, + "../../types/index.d.ts": { + "version": "bfd21e19b52fa398f5dc399d79d9c5244b2a15f03c1d1c417db43fa2857dd5c0", + "signature": "bfd21e19b52fa398f5dc399d79d9c5244b2a15f03c1d1c417db43fa2857dd5c0", + "affectsGlobalScope": false + }, + "../../core/components/molecules/emptyState/EmptyStateDescription.tsx": { + "version": "59015b3d77214c6ed7c61f4cf7471d83e62d932066211df0126631d34c1fb752", + "signature": "44fff347b836f30c082339294ded595905ce1666e11b22557d049e4de08b1d3b", + "affectsGlobalScope": false + }, + "../../core/components/molecules/emptyState/EmptyStateActions.tsx": { + "version": "2741df6af009832684fb49310b650bb4c589661d26d99bd95c93bb46b6977af1", + "signature": "ef56df22e731ee14d732fbaf8c52ff93b73d13c02d413c47233338bb38d476a8", + "affectsGlobalScope": false + }, + "../../core/components/molecules/emptyState/EmptyState.tsx": { + "version": "1c9d27196882f3082ee14d5c8a3689ce069af8620d3dbc4fd2ad18fa83fc3f95", + "signature": "efc65fe5a6235908cdbe7513cd5a712397bc46a52d209c0b27306ee189e56ede", + "affectsGlobalScope": false + }, + "../../core/components/molecules/emptyState/index.tsx": { + "version": "aeafb1df89a19d7060310a352d50019d21e867352cbbbc72e4c1485d3018476e", + "signature": "177bdd267c09acfba8e6c3c59e0bdfc49873520e44801e30ff5380c5132dfdeb", + "affectsGlobalScope": false + }, + "../../core/components/molecules/overlayHeader/OverlayHeader.tsx": { + "version": "7a9449503b288a792f88d4199f144c9205753266ca8f910fc8a38b0fbff4a0bd", + "signature": "2cd9ea5c8e11c9e0040029f3ec2fab8df6b246357355f93a275e708be58ceece", + "affectsGlobalScope": false + }, + "../../core/components/molecules/overlayHeader/index.tsx": { + "version": "2b86629c11e36c95d7daba2c0fc0b0d7f06fde0d01cadab01a6d88650e2d3e2f", + "signature": "f7aba665eb46fef623aeee4f3f922c8b2f699bfded56972ca23c836ec73478a6", + "affectsGlobalScope": false + }, + "../../core/components/molecules/overlayBody/OverlayBody.tsx": { + "version": "12c27262f7508e8a27dea089a5d20b5e4017f81c44560884461cf3e99219247c", + "signature": "c37271c24b9c311da4fea544944a56f7c2c9c59fb0a2af9217f0fe29a3f369d4", + "affectsGlobalScope": false + }, + "../../core/components/molecules/overlayBody/index.tsx": { + "version": "f78e68196f868bbfa8a9bdebd25bccc3ad5070dfd4f4c00702f09163bb67489a", + "signature": "40a2ce07ea054fd77c261a189589cf497387db8433b9a49e06b25f43cbcbd3bc", + "affectsGlobalScope": false + }, + "../../core/utils/overlayHelper.ts": { + "version": "0e2dc1026bd8b023f14ea0af5e584b6b1569fc8b377a80fa9c62e0b32e8b1e79", + "signature": "47c1de1aef33dfd400b27d75b157a4dd153533944c7fe2cc61914745a580edc2", + "affectsGlobalScope": false + }, + "../../core/utils/OverlayManager.tsx": { + "version": "7b72e874c8a5fecc8b7e5a57de1d37536a7225b4e5d3382efb5643ee6083476f", + "signature": "2495b576600e82176c7108c241f7bb4509c080db4780a530242d0e2d5ad190bd", + "affectsGlobalScope": false + }, + "../../core/components/molecules/sidesheet/Sidesheet.tsx": { + "version": "6599e8c568ea0b9064381779eaaab4126b7f4953ac65526fc8e2fbaf5f7d4232", + "signature": "e347f172382f4e8ed7f55cbfb543a8b58312908da18c8cfb5757e96be55363d2", + "affectsGlobalScope": false + }, + "../../core/components/molecules/sidesheet/index.tsx": { + "version": "3de26a0053a31ee264fccd8355b420e1f540662c0352336acf10da2b6067aec6", + "signature": "59b453a3fe8a22771fad2ef46b95cca7208d3db7f87522f07cf4e2e10ca479c2", + "affectsGlobalScope": false + }, + "../../core/components/molecules/modal/Modal.tsx": { + "version": "55ec4e0de63ba0dbd79114c09726db352f103c643643a2cd61878716b9f9d58d", + "signature": "c3d5700b02359fe54053b47b58a29ba3aefe8271a9e372907edb04a61ebe9c2f", + "affectsGlobalScope": false + }, + "../../core/components/molecules/modal/ModalHeader.tsx": { + "version": "7120aae5594e4adc56f2e4fd32940838c93d6d59503432e40f417a7fe975578f", + "signature": "be3f60cdb43b5e1493ecad29fed039b7c49adfc9fad38e79cb6f302e5115c639", + "affectsGlobalScope": false + }, + "../../core/components/molecules/modal/ModalBody.tsx": { + "version": "8441e1cd0c076ef961d4d7c4a55fa8d04a338e6f41e8bf92100a706830bbe821", + "signature": "24746ac7a4a44dfae8e10c8e55db43be145f99b80e773b0c80b9b1463a1c865d", + "affectsGlobalScope": false + }, + "../../core/components/molecules/modal/ModalFooter.tsx": { + "version": "d8d6187309a01df6aa9a98ba89f20ee5cfa27bafb53aa331eff30f7dc5d55328", + "signature": "a48ad2c1b077f64d89eb96f881dd7c22b049f5f6ce765b41ff9f63e2edc6e860", + "affectsGlobalScope": false + }, + "../../core/components/molecules/modal/index.tsx": { + "version": "a3562c4fed2d22e916f6dae5b6bc5f7244e573f6a3d796b40564ab77d5941171", + "signature": "2e7314c19f9c3fbdc9e5e0240eb7f50c176634246cb6bbc99e245da4414b7ab1", + "affectsGlobalScope": false + }, + "../../core/components/molecules/chipInput/ChipInput.tsx": { + "version": "962b6ff8a104f56dd65187f021c1e0b432aa47430ac61c60fa39ff07323877ec", + "signature": "f6f6ce6b9921561439101986472ca2beaa8a60acfad24678ef5347239aedd88f", + "affectsGlobalScope": false + }, + "../../core/components/molecules/chipInput/index.tsx": { + "version": "81d881dce0e42ddb787ad58cbce16e3bfffc877bcaf514620cd6a601b7044df6", + "signature": "f5584fb1dcda175b4dd7048171192f974f36e27205721332d36683ac1c08f570", + "affectsGlobalScope": false + }, + "../../core/components/molecules/fullscreenModal/FullscreenModal.tsx": { + "version": "80bd7cd2a5274b8af443b78c5eaa6e655e225cfb19c8419c143ac4940d846668", + "signature": "75cd13adea58fdd4e866fddccd8ce9f459490220343db22e694ef3ea7f43c7ad", + "affectsGlobalScope": false + }, + "../../core/components/molecules/fullscreenModal/index.tsx": { + "version": "6009bd8e53d09bae875d3732f7120790d2509207df4e71cd44a4179cdac37fbf", + "signature": "98bcd0cdb7d37f92b9fb495d07fe7d3757a5a0a3329d83c7be212afeef314a10", + "affectsGlobalScope": false + }, + "../../core/components/molecules/modalDescription/ModalDescription.tsx": { + "version": "17d2f4c22aeb0173ec2dca6da5746c24a80aa794aa839addc035bb4b1d7d3926", + "signature": "b2c258ebd79e78a89fd4fd5576322f7e7e5ea2ddb2cf70034b71e285c03c143f", + "affectsGlobalScope": false + }, + "../../core/components/molecules/modalDescription/index.tsx": { + "version": "ff5daaf07c8e797b6e648e65be43a3b26cbb56ab8d6d2df1209705d7262ad4cf", + "signature": "698e7615475ccab9237b046d4d1314808eb557e7b823903f5cb040782ebf850a", + "affectsGlobalScope": false + }, + "../../core/components/molecules/pagination/Pagination.tsx": { + "version": "53cd6f264559d72d4926d01c5ba8627e18ad9d8ee495c674e0304fa469fc5f3b", + "signature": "7162d0f6243222e00261b23518f2de41f0d3c4a102eff858121f697bb2902580", + "affectsGlobalScope": false + }, + "../../core/components/molecules/pagination/index.tsx": { + "version": "36079ff58048b47fffa48c84226bca5a34dce2151d4d2bbcb02966c50c0a469f", + "signature": "141145c1b46a0b904c586b14ae34ca3d7498b10c83448eb63d7d470e8b12ddb3", + "affectsGlobalScope": false + }, + "../../core/components/atoms/progressBar/ProgressBar.tsx": { + "version": "3ddedb88699194bc1dcb359b1bec9674b6f07ab6dffa73f6fa1185fc01ae68d1", + "signature": "eb7d48a661aec52ba0854ec19e758f208c62ec52662eb0674888e3cba3ae1317", + "affectsGlobalScope": false + }, + "../../core/components/atoms/progressBar/index.tsx": { + "version": "8ee905db7f45be6664ba0052ebf19b7a67cfbd17ef7c7a3a318f4804061005ef", + "signature": "993e1d28ff46aa8e1ff0337f205cb32b4b2faea6075582f616393d065ce3f1b9", + "affectsGlobalScope": false + }, + "../../core/components/molecules/editableInput/EditableInput.tsx": { + "version": "d24b5bdb12cc8080bc7f83a3f10c336f3dcfda22b16c3b947b96cb2d32ec5750", + "signature": "ecfe16f129ccf80ceeed9b9bd6d2a6656f8e04e332800cead71e5f86e1d483de", + "affectsGlobalScope": false + }, + "../../core/components/molecules/editableInput/index.tsx": { + "version": "e872fa9bdedf0e1995eac532e1137e1bd5b6bbef902615e132df85cb5f00245c", + "signature": "c0efb6c7835aa7e80248128b4883abd63e23c01f4f3496a56ad01fb27f42fc98", + "affectsGlobalScope": false + }, + "../../core/components/molecules/editableChipInput/EditableChipInput.tsx": { + "version": "d0065089928ee37e0cb7f802502af3e77a2e62fdf0851db0d2d123482c7d8830", + "signature": "1d1196a1d3a13ba64e141972debf7d789cbcb1173a737fbd5771d421c7675b04", + "affectsGlobalScope": false + }, + "../../core/components/molecules/editableChipInput/index.tsx": { + "version": "e25b759fd3bcb83863121bf54af20f56527e3917c49d99f9df3d823def49b7f2", + "signature": "c59b0500ae0eafa64ce07aa2bcc9230b12933054dfe929cea1ae4b84a440b000", + "affectsGlobalScope": false + }, + "../../node_modules/popper.js/index.d.ts": { + "version": "1873db8f2261ba4f248bde3e5bb4c79b1fdc990315054e9604fce8f41ddd1587", + "signature": "1873db8f2261ba4f248bde3e5bb4c79b1fdc990315054e9604fce8f41ddd1587", + "affectsGlobalScope": false + }, + "../../node_modules/react-popper/typings/react-popper.d.ts": { + "version": "1369cd82395b56a4d7875c9818e529156590597f5c2a17f373d56899b041b0fe", + "signature": "1369cd82395b56a4d7875c9818e529156590597f5c2a17f373d56899b041b0fe", + "affectsGlobalScope": false + }, + "../../core/components/atoms/popperWrapper/PopperWrapper.tsx": { + "version": "a54d196c7466a9a7d275d4b66f53c7bbd73b33d982c636b050937a8e97f2d61b", + "signature": "ac33238ce724a8b94967a75c9c18e7294a192d81b14d89155a9e4f7869555f20", + "affectsGlobalScope": false + }, + "../../core/components/atoms/popperWrapper/index.tsx": { + "version": "5663b0639e081ad9d185188634355cafe64e5f8a5ec2225dbcab29937e2f2a9c", + "signature": "15f61e620ece2bf7059aee0805033459bbdbef4ee71698879711b03c38781d89", + "affectsGlobalScope": false + }, + "../../core/components/molecules/popover/Popover.tsx": { + "version": "e96b9a9b31621ea75d8599f955db2345cb0a54a3d535a2dad488244ad38256e8", + "signature": "e04a21f672c57406bc22c6e8ecd371ffb50c8dc53aff443fb456394b7c015921", + "affectsGlobalScope": false + }, + "../../core/components/molecules/popover/index.tsx": { + "version": "fbac8950acae50625c10fb96b8bcaab31363456c6c7a50a500276c203ca4c9b4", + "signature": "6b1afce3bd60aa952e59b86650e0c7571f7662bbd199b2fd95dfe189c8a65743", + "affectsGlobalScope": false + }, + "../../core/components/atoms/progressRing/ProgressRing.tsx": { + "version": "0b548d05afc77b1b7ef317a31b512828049dc5f5ab47b582aba727e19fb1d26d", + "signature": "5a52db688bab52674d2f9474fde584776e5725da8db4f9f77a0d98ad53ecec34", + "affectsGlobalScope": false + }, + "../../core/components/atoms/progressRing/index.tsx": { + "version": "89549748b47afc4a136e1da1fc8f43a3e258a458289c9ac7dfcf7946ee049452", + "signature": "44a796033057099552650526d43208c45e7ba18c1bcf56c75381900e2f10da4c", + "affectsGlobalScope": false + }, + "../../core/components/molecules/stepper/Step.tsx": { + "version": "5de77f3470beb34ff8cd8ed788c418f24a043235925c56cf3fba705ba91749db", + "signature": "272441305427b4d5b85edaff2df6af465c28fda2ff78e005056745a7e4f342dd", + "affectsGlobalScope": false + }, + "../../core/components/molecules/stepper/Stepper.tsx": { + "version": "1185bf606b9f3edb937fdb16007efe7be0e5790c11fef490b3914049b82bc1be", + "signature": "c5df07bffb6808f65eb54e255bc028923cf58355652d3356fa80b0e2e775ce92", "affectsGlobalScope": false }, "../../core/components/molecules/stepper/index.tsx": { @@ -1102,23 +1557,23 @@ "affectsGlobalScope": false }, "../../core/components/organisms/dateRangePicker/Trigger.tsx": { - "version": "0527e5b04816601c12ca0824cfd5ef9ea94d54aa2d1dc2d54ef5857d1ee77651", + "version": "626a03934d0e0d9c25ccd3d5632d6fe734542542adbc6605609fb195cd45b27a", "signature": "8fb63e48afc23facf041aca8ebad538ec833649c1cb291890b8a7edb55a9b10c", "affectsGlobalScope": false }, "../../core/components/organisms/dateRangePicker/SingleInputTrigger.tsx": { - "version": "954d9984844d494d8b07e1ca8f99f04561140e211fc3f02ce2c2254101102722", + "version": "5967e3006585a5f91f00ae85ddcd08f6e8ae7f074d1c831068323a8eacc20431", "signature": "52e4e6fe9fd5d633812a50a1d0e4f4b07a343308ae3ce85e664cf1aa38566fa5", "affectsGlobalScope": false }, "../../core/components/organisms/dateRangePicker/utilities.tsx": { - "version": "cb41ece8fdc53b23356bdce70ff1d71a2931c8507fb3656dfbf57dd162fa690d", - "signature": "169c0f477a4dbfc8fa1a8f0db48a490d0482038c0796699de06261c217def6d5", + "version": "275a5c6ea635ed5939cf024234c97b4f22a65bcfca35abcde4a75110c81db767", + "signature": "e26168f65f9f1374697f5e8a20a8b14eff0771e70570ec5c8758e25f7ca97727", "affectsGlobalScope": false }, "../../core/components/organisms/dateRangePicker/DateRangePicker.tsx": { - "version": "177a3211348b82a52b6061786be724131048d0cb212ce57e8636d47d744de718", - "signature": "da0a3962fd2112c7f7fa416814ea9def33c4e48cabd3dcb56c2d13c61f2e3fa3", + "version": "ca076c00ba52e2c290fbf28a8c6e5c2342dd872536624168d7dda48e4c5c26df", + "signature": "051ddfe71109196a0b344f0010dc22e485bc318528f2f24329d5f62740f58eef", "affectsGlobalScope": false }, "../../core/components/organisms/dateRangePicker/index.tsx": { @@ -1127,18 +1582,18 @@ "affectsGlobalScope": false }, "../../core/components/molecules/tabs/TabsWrapper.tsx": { - "version": "d7fe903fb006eb62e17613b41a4dd091eecaf3fe6d00c3d839aeb51e408d1ea8", + "version": "a073dea9d7b44af28f2460249d45535b5cd5b5043b1d98b87eee0b1c5f30bc75", "signature": "c281fb4d3d907569c2344401a8c10eaedb7202095a255e1e71f32dba0d313c1e", "affectsGlobalScope": false }, "../../core/components/molecules/tabs/Tab.tsx": { - "version": "c0ab456cbacac4ac0639570d2c5ed165e856db64cb966e89f5f2f21e433ff4a4", - "signature": "4623d64ec140a837ac398fbb16081fdb1b7762c4a8955b5ac1de2b3c83b084ca", + "version": "947ae97f8af0a4c07fd48211a8b320ed9e83a92aa0eeb9ba3e93ce2c34ef333a", + "signature": "85ae6d1d2aa8de505f7f1ff8203b2a7a8ff197ee752055e514629b0580a4b481", "affectsGlobalScope": false }, "../../core/components/molecules/tabs/Tabs.tsx": { - "version": "bdf248447c24a338c5d25b9ad9b9b0b413dc8b7645d1119739b5f0c0a9a452f8", - "signature": "ee12b7c2723cc10464097cfceafcf7fcb768df0b1ad4068db48e9afb19aa2d54", + "version": "2c7ae944997fad585e727e2968c65c518f53df6318890ba97abd6367a4a95375", + "signature": "b02a6ec2264f6e3c829e019c9f93bb7289a11b8a719d3b0ee5336edede68266c", "affectsGlobalScope": false }, "../../core/components/molecules/tabs/index.tsx": { @@ -1147,38 +1602,43 @@ "affectsGlobalScope": false }, "../../core/components/molecules/dropzone/utils.tsx": { - "version": "cf9808b75b0f2f08cbdd036efebbd816798733ad1810043a5b159b016655ad92", - "signature": "79e29976886d0338339a197e41462c2592ec3978329f0c39c05403d1ee56f8d8", + "version": "357019f808c7ada66640c6a83c02564f0f44938e1251b6af9745e43be2d74605", + "signature": "e5f50b6a6ffe8bc3e9384f3786043d4082605598e9bd023b6e159ac612061c72", "affectsGlobalScope": false }, "../../core/components/molecules/dropzone/FileErrors.tsx": { - "version": "d8aa314e3cab9e8e23d5c8ce7d077c906692f21e6236692adac2c2444b4fc52e", + "version": "1dc2ed83f80cb3e972127132241f6c4f149e809e064781e29e2da56740078c13", "signature": "2e955901d4ca289686638d508cab1de90d6e25db8e072d5c0eda68022eeb34ed", "affectsGlobalScope": false }, "../../core/components/molecules/dropzone/FileSelectorUtils.tsx": { - "version": "221c64ed0ca5c17e7c6bee6d584ce1c3e66998230da7d36b33b25a5412cda6d0", + "version": "6fe01e90313d9647b5276bb0de4088cbbe7fef630b81b43e052005b353aae882", "signature": "a2978eca43762c593ed20df43e7b69ba889bbf076277545467a40808c4cf0043", "affectsGlobalScope": false }, "../../core/components/molecules/dropzone/DropzoneBase.tsx": { - "version": "4a8a37b9993cdb0f518c7a6a1ffe97dde29d1687b13bd6e2931e05a1c7118031", - "signature": "500188cb243295e6266970d6b2e9fcbd6d8ff9e158bebc926387e1976454b168", + "version": "e7906adcae8e9da28faaf2ee1ed109746181c64786244c46b92d7a2535af5d87", + "signature": "ca589763eb85b260bdc6da87f8dfede23394a3b2fdc1ff2e4888984a421b7f95", + "affectsGlobalScope": false + }, + "../../core/components/molecules/dropzone/DropzoneIcon.tsx": { + "version": "7d1fdfe3b5689658ef3ab98251be53ea14f0c5ae4f15ba12389082c196857439", + "signature": "7734604aac4000e5312bdc641687b581a54636aa58476cdd108968f4aea46def", "affectsGlobalScope": false }, "../../core/components/molecules/dropzone/DropzoneActive.tsx": { - "version": "9b3b44142109677209292f114bcebcd8032f483850b074132a069390d470aace", + "version": "f5907bf72202f2a7dc4f9eeacb300bec323416234c2dd694fbb91f26989abea4", "signature": "fa43f57da6926f7fcb89e05b7b2a7de2fc6fddad153e485f90b1f91b979d0ade", "affectsGlobalScope": false }, "../../core/components/molecules/dropzone/DropzoneError.tsx": { - "version": "5276a5bc7c61fe85ef636c720cc6caee3c5953c1be09d6e16e30ea453a81f70d", + "version": "ce052f68c8c295c2053e2cee9c1da0021759c5a254c0b4ff0f698578ae0d4151", "signature": "16d56587d21c7eef77e09ce9a412f598456d6bb48b1e6fb16548d13ec9b0e9a0", "affectsGlobalScope": false }, "../../core/components/molecules/dropzone/Dropzone.tsx": { - "version": "3854e94879881717225745a4403a6ace7101f5687898f41cd3da2d5f8a81b2b9", - "signature": "c145cc44acc0360e8789b15fe5cd58be030e4c2771876c834ab2f337e9815cd7", + "version": "ca620aca7c218533e94f1fd619dbdaafae524fc7fd8e055c17a99f804c91a54e", + "signature": "e52e0a178a128b965f2c3be7527fc8ed465fd388c21c5d35316dd9b0ef4dcc84", "affectsGlobalScope": false }, "../../core/components/molecules/dropzone/index.tsx": { @@ -1187,32 +1647,32 @@ "affectsGlobalScope": false }, "../../core/components/molecules/fileUploader/FileUploaderFormat.tsx": { - "version": "bf28a5129df786b83ac0143ea96ff114bdd7dd8694aa80a31e396bbe89dc05e4", + "version": "176a70da2cc68eee7ac0af287ba06afc6782b7e3cd04ddf469ec1f1a72eab929", "signature": "6832076fdd5655a53a7ea8cf07b541b2f6511fa5085d3e4a993a4f6a45497e8d", "affectsGlobalScope": false }, "../../core/components/molecules/fileUploader/FileUploaderButton.tsx": { - "version": "e865aac3eafeece8bd32d10691e4cb4ee1c0391db576f18336149b325e67244b", + "version": "d7aacc905316db9677ca3a467198c69878f8644b0ae6a23b8cc8e8fc33924e69", "signature": "5e1bdd5443610aa5e3df574ff01a90c1f98da6353fd0ae779ba68555efff7b21", "affectsGlobalScope": false }, "../../core/components/molecules/fileUploader/FileUploader.tsx": { - "version": "8f12b90acd8b898853e8fdf056be8437a5f92af0c901a98d18650a849f7b4291", + "version": "fc9e76e67cc65db0b133843c49b908dda64a2f2ebc566069d596c4c1d2bed489", "signature": "31002352deea9bad883236c2956ea4fe415f15cc8ad5db8f859e0eef9e2bf556", "affectsGlobalScope": false }, "../../core/components/molecules/fileUploader/FileUploaderStatus.tsx": { - "version": "5ca6d33b72c4a0bc8518932c9792959a4aab3d016f26d78430f96d8046b5a26c", - "signature": "ddf5e59dac53d5902cd27cc2ad5507fc101d8b3dc59d807ab275595c50f25d68", + "version": "9ae6cac05b863c06e53459855d711e1a172558ee7686d7993adb6a80a8715279", + "signature": "57f2c4d362c697d081faa678ee1006054bc3a6613290f1ee527a275106381bec", "affectsGlobalScope": false }, "../../core/components/molecules/fileUploader/FileUploaderItem.tsx": { - "version": "77f9f5be0170a9804c95f0ec6295368f5a846041b95e822347890724ca25f72a", - "signature": "1678e32b8280cc970a1c9c965af472b5cff9932b03b12d8f0d005dae74ef2d3a", + "version": "b212970db6892c380b55bc48401db9d38c6ca22bac833a212f19f6cb18174f85", + "signature": "36f7ccfc7d951a5cfcac4232ceff2078681b554658530ddbeae72ed6575c4184", "affectsGlobalScope": false }, "../../core/components/molecules/fileUploader/FileUploaderList.tsx": { - "version": "b4d0987cab94a7342278c51a2dbbea98cdd423825ef60256c703f6e6a8517956", + "version": "a1b71b581467699ec2232d3198a8146c1d2bfdba56932ef0f0ca221f266dd0ce", "signature": "b336932bd934aa1fc252d507e7ce155b9463d8288525de20626fd116cdb8cc82", "affectsGlobalScope": false }, @@ -1222,58 +1682,58 @@ "affectsGlobalScope": false }, "../../core/components/organisms/grid/columnUtility.tsx": { - "version": "1d1358df732b390bd6f5243bf6786d486c475a7c80968c532f7c1428cb38a417", + "version": "667054cf1f9428ed9dd6b75e3c16d906fa7be8251e384464ed977b8945f669ba", "signature": "e88f7b78bb8f8e252204fc64f43ab4666a7f4641d57983bb48322181315198c5", "affectsGlobalScope": false }, "../../core/components/organisms/grid/rowUtility.tsx": { - "version": "a7cd1b4d3ca648dbbd54f35c866c2d3089b5039e0f590573f4c233e02e9bb7cd", - "signature": "c0be0026ce2c76d414c1161d0dd8874e46c32031da763536b7b3894886a5d461", + "version": "628b7968b8ceb665b74e97fbc202248ddb90ea3824246a60a66f16be8e797f2d", + "signature": "63a5a7611deda70302cceb0e40369573bd105247e5dd5fc5b3bd91e6f70b95f3", "affectsGlobalScope": false }, "../../core/components/organisms/grid/utility.tsx": { - "version": "834917c97d8bc8933c1614e8b2c90f862525c001bde0a21b10e8ab011f2310d3", - "signature": "bc6f1f0ef36acf5b224b10e928f1402bd8b6e321657b2b4e925d9c2ac69ef225", + "version": "5eb4597223f5a50136e484df7cea58635191d235b8857a9bfc342ea41f5c9ce5", + "signature": "cadb97eba5cde99055f17378baa97eb021b5dd0d8ce6e9ed0183c567ecb8910f", "affectsGlobalScope": false }, "../../core/components/organisms/grid/defaultProps.tsx": { - "version": "47fb4664f4c60175411543d20c3848537862cff255742658862d410888f77eaf", + "version": "820529944a40c42eb58ce5573b474b6c1e6637da5c25a7ffc0714108b4f48a82", "signature": "4b4c0e4cf27a146fc0aa438945081d51c1853a169254bc860acc86cb40c99030", "affectsGlobalScope": false }, "../../core/components/organisms/grid/GridContext.ts": { - "version": "b5fc598d26a0795c0061224e85d80ae6223fb60f9affde8cc740ba760568846d", - "signature": "5e6c1958a6e33f77778dce4b08039b33e9e21822902678ebe07e2479247d597e", - "affectsGlobalScope": false - }, - "../../core/components/organisms/grid/GridNestedRow.tsx": { - "version": "0c53b891e68da67a37c19d4c5f4e76caa434214137da81b4d5dff7a13da0cf86", - "signature": "386ef87ed06daefa64d1f6f8c0ca9393650091499109945f28811b9c7dee62db", + "version": "617bfd6badad51167f9b4a212f1adf7d00d4a3c46f882cf296f6d1a8a9517526", + "signature": "45b9750de5fca677d704d53b48ba6c8542e717e1c7809461edb4f1870b3b54b6", "affectsGlobalScope": false }, "../../core/components/organisms/grid/Cell.tsx": { - "version": "ac67674d2aa07aa2583f76ab34b2cdb0a7bbfcd8d00e3d34ed242dbefedbb91c", - "signature": "e276bfa6488543f31bde00368660ec9c126aebd64211bfce19b11b1b72ac100c", + "version": "73104fd491abcbca1077685c3d5503c4eb2ad681babee44e73467b0df53921b6", + "signature": "b1b23efb36cc3b1bcd7567c1b108157e79b087b39671ed9764180282d778597a", "affectsGlobalScope": false }, "../../core/components/organisms/grid/GridHead.tsx": { - "version": "7d253ac9b11f3d78ab7f9b83fa01502db88e32e223bacc3f5e2a3cdb082a9c98", + "version": "174a84487f15727545838648f849f233b14b7903b9548d7ceebf276c807747fa", "signature": "74985f2a6ea97b6d48bdbceda6d2e90fdd7ffdd17a2e8ee17e34315ba6b2d843", "affectsGlobalScope": false }, + "../../core/components/organisms/grid/GridNestedRow.tsx": { + "version": "cd9c0e29a819faed46cebf3c9d3d391ae14fdb418d739ed63d1961b9aad54558", + "signature": "0a4e9f7cc7e17a39cd24a46abb15b76074438c472dda09d1398c7547531d72cd", + "affectsGlobalScope": false + }, "../../core/components/organisms/grid/GridRow.tsx": { - "version": "6c3b235f91ef0aaea77b70177918730b709cbfeb25cdcbc10c677b2183790a77", + "version": "50371d8993c998080f957d34f5cfe2131f363209b392b435b4ee5564b3b337ea", "signature": "e896c56db3e619dd4457355c752791be2e3f267ac73a43142d2481b1cea0a79d", "affectsGlobalScope": false }, "../../core/components/organisms/grid/GridBody.tsx": { - "version": "24b7cfed1475e552ab71c34617e9a92a346d20e0be68a1877d4e6df797d3ec98", + "version": "e59c7aa24a010a4cdc582e3ff4830dec7a697c4051755478844d78440e1f2e00", "signature": "037c2480cc3f115f239789c5948817b47246502d247d811cdc1efbd18eb7ec14", "affectsGlobalScope": false }, "../../core/components/organisms/grid/Grid.tsx": { - "version": "eaeddbe010d30d6e6e94b77b875733235ee75b2c264ed0e9497efa5db6fd0591", - "signature": "995245baa7eb8c7a48681ca3b17a26d756582aca16f3ab057dcb0c49002cc1b4", + "version": "4aa3c4bf2ba77cc921abe475614dfe4d752b724074fa17da8f0c2542ffaf82b3", + "signature": "0cdae61f00458ab061378bb8e8f5e7e03a6da3e93bfd45cf6e104d7d0deb7fa4", "affectsGlobalScope": false }, "../../core/components/organisms/grid/index.tsx": { @@ -1282,23 +1742,28 @@ "affectsGlobalScope": false }, "../../core/components/organisms/grid/GridCell.tsx": { - "version": "af7b7456b01ed8105db0014e3c81052d53de6ab29160e51b6de192d11d2a7bc4", + "version": "88996119967968d72bf85d71c6909ecc0bb8a778e8372cb18f89b4b8f0c19e5d", "signature": "ecc7233dd7ca7e7a1a781ea8eccab50606e43eaeb8a3cffee6d2a0a6ad22af87", "affectsGlobalScope": false }, "../../core/components/organisms/table/DraggableDropdown.tsx": { - "version": "e66097488424b1a51731ccbb358a8208d0cbfdebb721a264cb32fac41bc7a851", + "version": "2f6284c9608820086e23d6995bdd710cffbf16393514ba1857ef0d931f6ec0d6", "signature": "6edec7d2b1a8d5b57bbfadc8187d3b29ed59c7df6c80279930c7270a1fc1ed9f", "affectsGlobalScope": false }, "../../core/components/organisms/table/Header.tsx": { - "version": "18a7061c3e750817a5e7de68dfcbacd38465d544ae7a4c394ea72c969d4e83a8", - "signature": "d917ebfa4e2718ff39cc4d5429b5950ba79c998312bb03dff1a1d860ccbe0067", + "version": "0c26a544af7e767dfb90c62b7468dfe398ad7afbecc725114660d13fe34e1a04", + "signature": "a15955f6aa0ca3d2d2cd6b8619b5a9bea81500fad8d18515c3914f8605e56688", + "affectsGlobalScope": false + }, + "../../core/components/organisms/table/utils.tsx": { + "version": "312d0397081e5ffbcdb061b17e43c87964f05e6226bba2dbb27e8ea3d3855650", + "signature": "1864c5d66715271163493b60731f982e9aa850ecd52ffab1c2835c73cd54660b", "affectsGlobalScope": false }, "../../core/components/organisms/table/Table.tsx": { - "version": "6959fe8ac9ff8a322739fd7f8ed2decd5fa8e956c4e853c920f0ddf9a819cba3", - "signature": "0bb05ac87171d96b82f0fdb45c54d9d1ffc4b3600309301c3fd8e2dd793d0dd0", + "version": "94b4a480a004cbf3758c812b10108002c5cea3c9144736602b7811e845338148", + "signature": "d1b01f382f3550d66f528697b3255a8322e143078ff37888c1ad2a1db87f4dc2", "affectsGlobalScope": false }, "../../core/components/organisms/table/index.tsx": { @@ -1307,8 +1772,8 @@ "affectsGlobalScope": false }, "../../core/components/organisms/list/List.tsx": { - "version": "944fdff61f50ed0d84e44b44c795d2f74136136cad7498442598ac530dd4d3d9", - "signature": "1d42d802be15ac75a29dfe0f7440dfe7c6dcb65e9214287c8bd4114b6c3d2d4a", + "version": "7c9415368c8652a1a0341aadf74490519fdea9bec9fe7796b913a01ca52e17e1", + "signature": "38f25a1d0f8b4730a94a8f62ed7b105fcd9cd13498733b94cdfe2299f3f48c62", "affectsGlobalScope": false }, "../../core/components/organisms/list/index.tsx": { @@ -1317,12 +1782,12 @@ "affectsGlobalScope": false }, "../../core/components/organisms/navigation/VerticalNavigation.tsx": { - "version": "a1d89b465820776f7a8a325a5445f010cdebee4fc94cf7fe7b5d5654b2270361", + "version": "52ff980029a23c88cc90ed6c70877edd4eb5c48bc6a4fe5634c86d6290c01e39", "signature": "d464eb06c46104aa9cea07a7a44b82b9fb5347576efca9f3e94a90636b72d499", "affectsGlobalScope": false }, "../../core/components/organisms/navigation/Navigation.tsx": { - "version": "1d7580ff849da45d6187898b63ee45c828368fbfe15a19b9d56615db42943859", + "version": "01db3bf2efb368dd56ace9f3bf28ec584f845b25febadc0b6761d1a48d822f4e", "signature": "670d8e00afb20d44cf3c3dae749d127e3a051562a5a5bd3f600fd6ac3c9b5c83", "affectsGlobalScope": false }, @@ -1331,9 +1796,14 @@ "signature": "d0f06c76368a1badc37a1f9cfa3bf079912bd2f14c193a0973d577a929abd3c4", "affectsGlobalScope": false }, + "../../core/components/organisms/pageHeader/utils.tsx": { + "version": "ecfded64fc18f71ca83c058d49cc1b76f35175f01122c3bbfaa142ebcc35fcc4", + "signature": "8b4bdadb0f1ea118ef924e8207dad0215ad1b4f3786232ec4ead75898273006f", + "affectsGlobalScope": false + }, "../../core/components/organisms/pageHeader/PageHeader.tsx": { - "version": "58695ea1bc47210d36a8c67290195dc79541012a3162318398e8d6f6803dc499", - "signature": "68e694cbf1378c86c4ebafe68adb2cac6a17333af8bb06b31892ce5297f38a25", + "version": "033d112f5e98dc0ef59834efca4baa83a27de9b3982c417883822811d01fdfa1", + "signature": "6795b787c8157cfbfe4f2859ac05ada02c45e15878294b23fe94bd43e2d60b9f", "affectsGlobalScope": false }, "../../core/components/organisms/pageHeader/index.tsx": { @@ -1342,17 +1812,17 @@ "affectsGlobalScope": false }, "../../core/components/molecules/fileList/FileIcon.tsx": { - "version": "644300a1aea1de4c91b127b32b758f8e98c039442b61e2534e06775f8b44a82b", + "version": "f2e8cb302b23c2aa8d278934f40fb5fde0d82d5da100cfd756f6619020d22b47", "signature": "ed3d627e19c37c9268416e18bd724b4dc0fd12abecca455e284df47539884706", "affectsGlobalScope": false }, "../../core/components/molecules/fileList/FileListItem.tsx": { - "version": "bdc12c93586994d1408cb36ebdb0fca42cad5e91b43c1b067c147fc23efc9f71", - "signature": "7eed7cebf09767167de4729c3b0db2b4c7e7ee17e1b46328c11732f922830767", + "version": "450340557762254d4fe912fb7a7d8fb783dee6b39320c85ab2b6d6ea1875dc91", + "signature": "0210946614d27a667d765a6b5ca34d24ff0e7bbb943879ef1e5ba80451586260", "affectsGlobalScope": false }, "../../core/components/molecules/fileList/FileList.tsx": { - "version": "dd9bd2d82e2268cdaa8f61862faf0b757632229918a9adb2df211b897dd06f9a", + "version": "e053d5481fd88752c78e37ff8892f087fc412f801eec9a987015da7443caad44", "signature": "f8155bf1821df2346201910d0e9c063ad30a1772e1af31fb8174b39ab0dec718", "affectsGlobalScope": false }, @@ -1362,373 +1832,518 @@ "affectsGlobalScope": false }, "../../core/components/molecules/verificationCodeInput/VerificationCodeInput.tsx": { - "version": "b8b98ab4bdbd9e48570df96c70e5c278e315bb009e9adb2f1597c8a7017c2987", - "signature": "f689b6f0a6e52dbbf4027f2b0ce12b7a8b698311184defd6bc01d121efcad119", + "version": "017bb3f06276c2ea6ddcdf9dff92a2e01a4b122c1a4ef220ff515d844f6fb7dd", + "signature": "7f4cc1c56e5e7e1ae48398355423c9e2841e3a188b68ca9228099fd41a14ca15", "affectsGlobalScope": false }, "../../core/components/molecules/verificationCodeInput/index.tsx": { - "version": "6031ed8c6a7b40c6a802c78901c59b1a51550fada181d2a2b0e51228e3ec3246", + "version": "80d80e7a9fa21616619a4d4ef780f34e18e48c228135218cc2023b59dafe86d3", "signature": "27c648ef73ca46b2df398d485929f6a64170ef9adf9c4e6c35ccdf62909c6612", "affectsGlobalScope": false }, - "../../core/index.type.tsx": { - "version": "6cef1f4c7023803d3e20aa4955477782b2de70098f137e3192865b0110cb41c1", - "signature": "3882497ecda14af6b1e5ea16dd5ea22c500084ff7047086de649dcd900af2e60", + "../../core/components/organisms/inlineMessage/InlineMessage.tsx": { + "version": "0ef73031d362e5862c6914559db8f2e5012ea71a416878f71dd7765b08b5be42", + "signature": "bc5caa08869460d8ca36e9cb9aac7fafa64aa786f55f613c4cc6483f3959246a", "affectsGlobalScope": false }, - "../../core/components/organisms/timePicker/TimePicker.tsx": { - "version": "0445a63352526c339b9a2d159e32d2ffa4c632b45f6b38fb759cb3981d0100e8", - "signature": "a107e81df09a2318c2cb1c5a6386523fd0451ca5a46922afd4e54d7d89dc5923", + "../../core/components/organisms/inlineMessage/index.tsx": { + "version": "064268ffc965e9bf01e344264b54697449a38d4ce8c497b4740184c9e3937eda", + "signature": "afb8452dbc9087e804f98549a6fa9873ef864d14b971d4ce4fbfa7cc358a30a5", "affectsGlobalScope": false }, - "../../core/components/organisms/timePicker/utils.tsx": { - "version": "b6d7ddb7acb0464b432c5a7fb94995f4023f863b4548eeb1dc94086f34ce3621", - "signature": "0977367935ba3f5bd7c6cffaf7078fb939c61d9ebe17c76aa68a372ffe113eac", + "../../core/components/organisms/choiceList/ChoiceList.tsx": { + "version": "770c96e392665b34c8265a1d130b99ac3073e25936cb548e6df25efaa90d46d9", + "signature": "986b3a9d70f585fc301cc3e2e31ea10b0c00fdc31e10a6b4b5df285a4f9a3f5f", "affectsGlobalScope": false }, - "../../core/utils/validators.ts": { - "version": "20caa0fafb2a611507d53bb88f7821844fc6e87f4c5876f718413a2225640ef5", - "signature": "f869aaae80c76d8dd252bb27085a6e1d16de0efbd9639f5a80269de1a68f73bf", + "../../core/components/organisms/choiceList/index.tsx": { + "version": "995e30de989280417ccc7a0f319a8fac8ff5f6941f18342835149978e599b8a9", + "signature": "3e39cdefe77ccbb29991e658738d4569107af4a0e8a7d9059d6de1dc500e0220", "affectsGlobalScope": false }, - "../../core/utils/masks.ts": { - "version": "1fd1cfc5451ddc11c9775abafaea1dcdfe818f9022981b52566c644036e6b9c8", - "signature": "cf1866499032299b8faae9efa5cdde48086c6c10a11feeede3f38d6fc791451d", + "../../core/components/atoms/divider/Divider.tsx": { + "version": "7c0df9ad2812986d0050382e24b1882051a7f5613dfb10de4dd1dc4dd8cc92e1", + "signature": "1ada8beb39ee6308ef13d2a040d4722874e64984afa9fd4790b2f973c06bc0d8", "affectsGlobalScope": false }, - "../../core/utils/index.tsx": { - "version": "16e4f6e544efaaa49c559be3f352db9652a549f05f9e9c2390214eaf4897baa4", - "signature": "a85da23da1ec8c0d6324ebe0f50df4d8956802764308b63802eb604fb3fbc8a1", + "../../core/components/atoms/divider/index.tsx": { + "version": "e4aa5972ba9193d657285f619a0d9c628fb001f54816f3825efeab4fab7fab09", + "signature": "2d36a41563f2ee544c99dd6fa9214bd4393008e454fc3c859c224111990d2975", "affectsGlobalScope": false }, - "../../core/index.tsx": { - "version": "7da42b67a0bed91c4475d6859be8b29e5124d03421ce233c71f03ffabd269e81", - "signature": "a2a16de1b09d5b1a7c400688ec3325b3064de7086be4176ec3702401d222ea60", + "../../core/components/atoms/helpText/HelpText.tsx": { + "version": "4ca2a470739817537208a41f3f0cf0fbee5d581f2069fe38f4415b86f5a484cd", + "signature": "375847f3d91e2665d62b5cee779d306a7d9827f812b0f0d69a8f4e7de92bdb4a", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/_stories_/SolidAlert.story.tsx": { - "version": "3dc8e41138e7a7cce2f14047fe529242523abbf0be031dd89551cf833fe7b081", - "signature": "96f7680e52615546d7bcd1a563770820e65583b4e0d1869fa9b175585a5b0953", + "../../core/components/atoms/helpText/index.tsx": { + "version": "fcbd508f21a443a236ccd8b67f869f02668178fe0ae7eadb3eba757ff8e0cffb", + "signature": "efdc2a9d9f0ce7b3fea85a315af8c56f00e12f795c767a9b650154740be351fc", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/_stories_/SolidSecondary.story.tsx": { - "version": "553d679d3a80bb4f6e5cb86feacab16372ec22caf9d6290e0890fc5f3e8209c0", - "signature": "6e2b99f3003a811ef9af009834f003b2a767fe2987b4c426a019a2ff22b44c91", + "../../core/components/atoms/linkButton/LinkButton.tsx": { + "version": "d2b8b0d0d60a7f4c4851ead31550971c1d5fcaa0d41f5814f562f3737645cfad", + "signature": "b7acf30b926ee7426e3c73f8d5581363890a4a0f61a0c50c39d0b541a4c20deb", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/_stories_/SolidWarning.story.tsx": { - "version": "95ba52a1afdc8d0c25f17b4b1c788e513aa2d1ecd5fb1a6d1567a4bf08bd14b4", - "signature": "c3d292d92f52151ad8dbd49c9fb2a727ebb25c047d91748645e9e2e3737db26c", + "../../core/components/atoms/linkButton/index.tsx": { + "version": "2f1d52c24078b591f0fc93cc942dce6ace86c9866bb956d7cfad0b8f59f2fbab", + "signature": "838cceafb096677703d2d3aeca19c33295def833e0798273c9123d44fa50d115", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/_stories_/SubtleAlert.story.tsx": { - "version": "49de1aea5879f766322bc8e3615e773867e201178324d61b4da5a37438938d9e", - "signature": "48a1596b62bccb94d4160b038223a8e31ca7177770021dc4b0898acd675c2788", + "../../core/components/atoms/actionCard/ActionCard.tsx": { + "version": "c6faa704d990236e814822af97051664ad91e5aed9c59ac8dec0627042aa30b9", + "signature": "9a25f22c0c0c76eaaa779f1956315fb660a9642462f0fe6983c34de5b57afc8c", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/_stories_/SubtleSecondary.story.tsx": { - "version": "8b2bd87a60ff1df8ad6e33b3a8695d8f54540b3ffb35fceba94f861f5248d104", - "signature": "87e53766782df520246c9361e9dc2a2d1ee057efe7a524d3a496d35582efd502", + "../../core/components/atoms/actionCard/index.tsx": { + "version": "7c4b2e4cd033b90e478d985166dddf129a67d868a2716624b48c6384ee5acc99", + "signature": "496c1995d6c2836e353783730b0b6fda96d81ddc669254265414e40339b0d4ce", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/_stories_/SubtleWarning.story.tsx": { - "version": "f07a76f9d8f94a66043ae5deda568d9d7f8e975b612f3a951eda6edde4839a5c", - "signature": "295c0b5f62c33b2763315f5a17f229d9ea3fca94c85d67181b261c61a282360d", + "../../core/components/atoms/selectionCard/hooks/useMultiSelect.tsx": { + "version": "c738f39c9c44766302421b32b86ff910871e3816b12f5e380b1ffafaf2908655", + "signature": "8322a700e506ce344fb5fed039c3a897dc3cf5dcc346359097ec21e70280c6fb", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/_stories_/Success.story.tsx": { - "version": "75e77dd71042bfe08cd63b5a4b129646084f137f5b619bb4eec2b8ffe07489f2", - "signature": "7e475957ab189fbee1a3c0dd27541bf71719646c762dcce6b4db93979bad1b02", + "../../core/components/atoms/selectionCard/hooks/useSingleSelect.tsx": { + "version": "666127e0abcaffbf6217e70c96c3117c45f8a1ab89d5cff939f45ac4f36038cf", + "signature": "b1b660dd1956b156dfde74bec713ea67288c2b8c8861a2d798c2ca5e372d6b4e", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts": { - "version": "d15ecea2951352bdc02cd3cf10f7ab3f46694942bfd61b39aa8cdcf4bccb75dd", - "signature": "d15ecea2951352bdc02cd3cf10f7ab3f46694942bfd61b39aa8cdcf4bccb75dd", + "../../core/components/atoms/selectionCard/hooks/index.tsx": { + "version": "1e2bd412ab53e5beb8538675bac0832115d693b1bf9707ff3bc6ee4c4b88921c", + "signature": "3baed669f5d049bfc1e65ca3cb46c940ab096326583da161be05799545afa813", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Text.d.ts": { - "version": "859af67cb96dd809cce37e1c0209b35191828572292d65a898d3749cc1cd9e29", - "signature": "859af67cb96dd809cce37e1c0209b35191828572292d65a898d3749cc1cd9e29", + "../../core/components/atoms/selectionCard/SelectionCard.tsx": { + "version": "ad0500d116d77d6db303fda101f3f1a40fa9d4e8336bc7723fdecb7343e73a15", + "signature": "2497ebca50621852b59d5c9a0e645c1f12fc3f5240148bf25082bcf8077f485c", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Number.d.ts": { - "version": "bb23510c907dc8cd5321a05bbb03959db8ca400555739e8160659603329333d0", - "signature": "bb23510c907dc8cd5321a05bbb03959db8ca400555739e8160659603329333d0", + "../../core/components/atoms/selectionCard/index.tsx": { + "version": "eff9456fe6931f6e4e7b7e9d69db3faf5604dc80feb422f37517a3820861504f", + "signature": "d72eb45fc521763fbb81b3846b3ab55e0d821d3312122e8bcdb8cb7f01ab13cf", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Color.d.ts": { - "version": "eb6991a0240050bb0844796ac755dd6b047dda0fb676ba5c17463afaa4936636", - "signature": "eb6991a0240050bb0844796ac755dd6b047dda0fb676ba5c17463afaa4936636", + "../../core/components/organisms/listbox/reorderList/utils.ts": { + "version": "5a0c604beb4196a58431791b1e7d0d7ea929bd0f88bc84a9c4b64149b5ba1e95", + "signature": "981353ef92d19a5e2e6aab957773352051a34e66502aa32315769b024797a582", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Object.d.ts": { - "version": "22cc29d8d86bd4afe4a03e2fd58a87a1b189721ed3f1e300a1d7afd99410fc81", - "signature": "22cc29d8d86bd4afe4a03e2fd58a87a1b189721ed3f1e300a1d7afd99410fc81", + "../../core/components/organisms/listbox/reorderList/types.ts": { + "version": "600e7f202337b68d8bafbdf32676eb705361ab845d2d169f30665bfaa93bdb3a", + "signature": "a478b071566af399be3a7deab70562cf2385bc2ec2d812f49c80dca4ed954190", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Radio.d.ts": { - "version": "5534f80c59d00d1f44b546314a11c9f0fb26d3160266f589c144a5ba4a3b3df4", - "signature": "5534f80c59d00d1f44b546314a11c9f0fb26d3160266f589c144a5ba4a3b3df4", + "../../core/components/organisms/listbox/reorderList/Draggable.tsx": { + "version": "83ba7407ce3bbaab0acd624cefb3a4b4021a4e1b3d4838ac006bb92359a84b0a", + "signature": "da41053af5069e4348360ce08db6335e1f69c6a00ab9381335652715556965de", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Array.d.ts": { - "version": "5091d50446634ae6f227c0dddc8f1122ebdf41692bb82a7f0af839060bcc3449", - "signature": "5091d50446634ae6f227c0dddc8f1122ebdf41692bb82a7f0af839060bcc3449", + "../../core/components/organisms/listbox/reorderList/DraggableList.tsx": { + "version": "afc81db0fc919cf1f24b7b915c13eeedb00cc8548f3afe5978f087eda6f54f2c", + "signature": "a59f7dbadeb83c7cc0c3317823ee66b0d0813d7cb6ba99f39d77589aaba66c1d", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Date.d.ts": { - "version": "e6c79d946c144cc65f82f460389ce38d28b42ec6da3e2c0e9d83179ff34d8eec", - "signature": "e6c79d946c144cc65f82f460389ce38d28b42ec6da3e2c0e9d83179ff34d8eec", + "../../core/components/organisms/listbox/reorderList/index.tsx": { + "version": "b5e5d9517fc8839988bf5394fc5240f178f21a420d19f52043628e8d43b3420f", + "signature": "b4b536e94d137e66abf824e56e08c5eaa9fc60cd7e2f7d0c2c39c5ef46a8b7af", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Boolean.d.ts": { - "version": "a30eb712be8ea1fb34e9cdbc8f6f728912efbe267a03e7237ca1a20033ea8f05", - "signature": "a30eb712be8ea1fb34e9cdbc8f6f728912efbe267a03e7237ca1a20033ea8f05", + "../../core/components/organisms/listbox/utils.ts": { + "version": "ced04433bfe040b2d3fadc89ec16355468b46175ac18ce334080490394f53a63", + "signature": "519a5e5fe08cdde24939a8bb795a6975b12af9e7870504860fab16c45e5468bc", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Select.d.ts": { - "version": "03de0fc48a077f6692fd2783dfcb21abf9626ba6e57638b8a725daa196ff62c4", - "signature": "03de0fc48a077f6692fd2783dfcb21abf9626ba6e57638b8a725daa196ff62c4", + "../../core/components/organisms/listbox/listboxItem/ListBody.tsx": { + "version": "4b757022d6508310bacdc5adb7df8f68b81fe9d7c0eecaba71736ba78e890b38", + "signature": "149ff5177462d0787fd5c18871e2cb7909ba94c10aa1455fb706fa548849b53a", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Button.d.ts": { - "version": "01687fb4d918a95d29951cbb404a66195499445a2edfe065d81b6bc3b04255b9", - "signature": "01687fb4d918a95d29951cbb404a66195499445a2edfe065d81b6bc3b04255b9", + "../../core/components/organisms/listbox/nestedList/Animation.tsx": { + "version": "052cec5de1810318e3c0c4c8af4a6cda585632e82755ec91faa05cc970c2fe9d", + "signature": "0f37c45be6bb63c733478ca83424e8a38d04368a8cb7ef7d749b01e547071dc5", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Files.d.ts": { - "version": "44b75e7681aa45530265978616546f3b955ae32c86df187b0ee52399a3d75871", - "signature": "44b75e7681aa45530265978616546f3b955ae32c86df187b0ee52399a3d75871", + "../../core/components/organisms/listbox/nestedList/NestedList.tsx": { + "version": "99eb0f81c0d214751222ecd65a495ee76a7e3bdedc8cbb97711cb9916ca7af69", + "signature": "73919875d9c99fd05fa070cdbcc8d633c82e73a706ab931b4e53c06ca410cddd", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/Options.d.ts": { - "version": "7903e7485f476e696789268e9f5872fffb0616881bc695be7bcb1b459ce33bcf", - "signature": "7903e7485f476e696789268e9f5872fffb0616881bc695be7bcb1b459ce33bcf", + "../../core/components/organisms/listbox/nestedList/index.tsx": { + "version": "82532705abcd3a6e90162f8b6698de1426d45d1c254b7f27b5a928de6418b844", + "signature": "560a461a265202d9deceb5ad4a2db497e73ffd77738a5709f52cf276d29cc0e3", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/components/types/index.d.ts": { - "version": "21c9ecd68c9c6a40dcd60a425a9cf9ac9e28ab3bfba13576812c70321597880b", - "signature": "21c9ecd68c9c6a40dcd60a425a9cf9ac9e28ab3bfba13576812c70321597880b", + "../../core/components/organisms/listbox/listboxItem/ListboxItem.tsx": { + "version": "58285e3f3c0c3b3fb6fce64cff734faee677da475590aa2645ac8bcb3a3cc38d", + "signature": "99522572f068205b9ca4f8d7d40a6ecbd6141b38b40538b5137a5138c6d39bbb", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/type-defs.d.ts": { - "version": "197340a2695e2453f3c992b87a00ffb8cac181765e9a888a9ef40d734797e8a7", - "signature": "197340a2695e2453f3c992b87a00ffb8cac181765e9a888a9ef40d734797e8a7", + "../../core/components/organisms/listbox/listboxItem/index.tsx": { + "version": "a77d725408716310a5893214dc825a27d3bdfb7264f9051861dc628b05e8dc08", + "signature": "a8d10af1ebe69abcc8d871fc707dc26bbcd2cd5fb964321513a55be00aaf5f3e", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/shared.d.ts": { - "version": "ecc278965af7787d9228a1a15afcadba3c07f22a72549064154914e96d9e98ad", - "signature": "ecc278965af7787d9228a1a15afcadba3c07f22a72549064154914e96d9e98ad", + "../../core/components/organisms/listbox/Listbox.tsx": { + "version": "24a59fce8e29af545bc2c2ef5002a7479f948111f8ffcabdea868ef48713232a", + "signature": "ac00cbc543a88e68a55fa93a52f3f7d95b29e293141950037dc592bfe2108dc1", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-knobs/dist/index.d.ts": { - "version": "2529831078dbfa8f0db53f28a28f0e9b7ba2be0751be76e52f9c91d8df476347", - "signature": "2529831078dbfa8f0db53f28a28f0e9b7ba2be0751be76e52f9c91d8df476347", + "../../core/components/organisms/listbox/index.tsx": { + "version": "c1346be115cda2b9920016f518e60e3c9c017351d95832fcfb48f612a6b17c17", + "signature": "3bb4a23f58cd62ce1d5981ff283a526de5b393ae45f435d6ed37922c9a444bed", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/_stories_/index.story.tsx": { - "version": "e16da00382e9dc956464ee171e88ec22527a72dca48e03b814de8dc59ecb175e", - "signature": "3d2e6e09cd87c9b2f976b03b150ee219eb988449624a2cb111fae8a6bba4344b", + "../../core/components/organisms/textField/TextFieldCommon.tsx": { + "version": "c6c24f81a97d6779a059ef723b9d3f7d6b1c5cbf98bfe412be89900e0916ea6f", + "signature": "b60a64233fc1fc84f311fe454c4f4f0265ee2db979abe3d0357d352d39f8028c", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/_stories_/variants/Appearance.story.tsx": { - "version": "fd4c39bb1045335438587457ccc4c6a45294f483f27b446b9bf708cf204729be", - "signature": "cd0d9ff915f9be6eb10d737b8fa381bc9bc55200f812f79ebb2469f79155a1b7", + "../../core/components/organisms/textField/TextFieldWithTextarea.tsx": { + "version": "a6b977858a43141b2dfe2c030e4081b8065ffb10932a35b2af3a4db6ce5faba4", + "signature": "370f2b325e6d2df61cefbb4baebb3636a0c6e23c2fdc1558bdc097a5b90ccf9b", "affectsGlobalScope": false }, - "../../core/components/atoms/badge/_stories_/variants/Subtle.story.tsx": { - "version": "0b3ae8152c1ed158997d8b01f6bea022761931e354221c4a00078273a850bd60", - "signature": "f0bbb9da7afce1b90db618866a782822330d9294b90b80b98e379b353a58b770", + "../../core/components/organisms/textField/TextFieldWithInput.tsx": { + "version": "5128be8bf392872529503e5046d8c2c27725d8d4391d8ee9f5627d73f5f4a3eb", + "signature": "068b0de39372c4482a4d786b845ec00b75394117f18d55d2d3e93953830f3930", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/constants.d.ts": { - "version": "5742898e84253be8baf7ca3bbf6a0683153eef2a7e9f76ee13c06a0e7c27a425", - "signature": "5742898e84253be8baf7ca3bbf6a0683153eef2a7e9f76ee13c06a0e7c27a425", + "../../core/components/organisms/textField/TextField.tsx": { + "version": "3a720853e61ba337a2597d5f2b985a14eadd521f63ef515c5c3df148e6023d80", + "signature": "12ec53cebec8a1754efdaf2383758f98dce8d62f5dce9071e4d6b8756af4be35", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionOptions.d.ts": { - "version": "ba6aea54601edcfe38ef85f5d22197398beb275fb7bb71e4bbd0b817cf63ffc2", - "signature": "ba6aea54601edcfe38ef85f5d22197398beb275fb7bb71e4bbd0b817cf63ffc2", + "../../core/components/organisms/textField/index.tsx": { + "version": "4e37424564a4a5dd86b025ac0b273f7dca4a44bbd3d8bbdcc9229a9066ab10db", + "signature": "535bc9a715cb8f2cb636b2e4489ec527545dc35abe9a035f409e2433a2de1888", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionDisplay.d.ts": { - "version": "07721917d2ffe7c5d779f7cc04332ec3a16c7ac098f0a5643675184ba70f017b", - "signature": "07721917d2ffe7c5d779f7cc04332ec3a16c7ac098f0a5643675184ba70f017b", + "../../core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatar.tsx": { + "version": "fb8a4ffbff51d654c7a50ad099e31cf1e633b49f712662eee2573482c911bfd4", + "signature": "e0f84806f3e16ee9c43b5b9b58740fa1aa231fd308b4df5d205d5b5b35f8ba66", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/HandlerFunction.d.ts": { - "version": "95c4f3f372a845331e8b609cffbfdb023ce39d85a322d384cd7869221a39bfa5", - "signature": "95c4f3f372a845331e8b609cffbfdb023ce39d85a322d384cd7869221a39bfa5", + "../../core/components/atoms/avatarSelection/AvatarSelectionContext.tsx": { + "version": "24a72736d98a2c34c37cfb4105abab62d6b1df3ba475c52e4481b9dc8d2cd152", + "signature": "e14755c939bd4fe8c2747caa81c22eb568cea45c14ec2ac2c22a1d1a5c51322d", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsMap.d.ts": { - "version": "8dd9fb1325ac0e6b39eb2190e0baf6199cba98b079cba505f94dbdfecadf5d1c", - "signature": "8dd9fb1325ac0e6b39eb2190e0baf6199cba98b079cba505f94dbdfecadf5d1c", + "../../core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatarsWrapper.tsx": { + "version": "64e9eec85395988ddc892aff699474c5d06682372656104406ff0e576ec39434", + "signature": "7e8462156f28d2c256811c2b799a1fff4a7ed86e3b4ce3172edc207b95aa9e39", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsFunction.d.ts": { - "version": "9eb3aa86edf6c552668c965caee398609035b1d4caf4d3093368dbe4251ac16a", - "signature": "9eb3aa86edf6c552668c965caee398609035b1d4caf4d3093368dbe4251ac16a", + "../../core/components/atoms/avatarSelection/avatarsSelection/utils.tsx": { + "version": "5121e7f588fb690eef3d29bf0be6ebbe1d6aa769e6d629ed5cb0055801ffd21f", + "signature": "1123fd8190aab4899394dd6e38caef09fcf511307b187ecef2a256c2496408f5", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/DecoratorFunction.d.ts": { - "version": "308a652344b4d64a3974f1392e66f816f39e78c28418a27487f5bcd62807b4ce", - "signature": "308a652344b4d64a3974f1392e66f816f39e78c28418a27487f5bcd62807b4ce", + "../../core/components/atoms/avatarSelection/avatarsSelection/AvatarSelectionCount.tsx": { + "version": "5c90c88507766643fb995aee711cd342375a2919c3b9e80a1c7d2d4ee573e646", + "signature": "6c444534437668874ac59ea08a7854b06b6594247b7f46f21e41ac5f3a66d47f", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts": { - "version": "6b30c23754b6ea51f43d3533b0744e9cb72cb8104f6897b2eac05f4647001bf7", - "signature": "6b30c23754b6ea51f43d3533b0744e9cb72cb8104f6897b2eac05f4647001bf7", + "../../core/components/atoms/avatarSelection/avatarsSelection/index.tsx": { + "version": "5e9a6d95f7cc3e5caf101bb1825963edbb460438702d7d14bc3714cd36a3e1da", + "signature": "9d734a2169357fd9f8b92506bf201b625aa44f5503b6aa0e709382be676ea9ee", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/action.d.ts": { - "version": "7ed9c49c0763fa297d07eb2aa741610b2b418848ff71ec27e02bfef7ea9953e6", - "signature": "7ed9c49c0763fa297d07eb2aa741610b2b418848ff71ec27e02bfef7ea9953e6", + "../../core/components/atoms/avatarSelection/avatarPopover/utils.tsx": { + "version": "0d837121da23a25322138aab41622f677f8b43091b4bf1909483120ead9ce61e", + "signature": "a730963b4b8baaa22cb1ebc646e0e79a493d18dbee4da46db054ce4f1b64345d", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/actions.d.ts": { - "version": "d9e5c12bab81be7525ea4d3baf2ac015ce464606b8ce166d3205e6ddb88ee381", - "signature": "d9e5c12bab81be7525ea4d3baf2ac015ce464606b8ce166d3205e6ddb88ee381", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionInput.tsx": { + "version": "795e43974d9e04c6a93f2479d7543e7fed6f25bb50d2c4eb407b6b9620d4bd9c", + "signature": "0449b61a874f0a4a152c616f86262c8ccbd6ba0f3feec6b547b0a56f3ae4c1b2", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/configureActions.d.ts": { - "version": "cb6f0f40d51b51da33c503eaba191d407a50846abcbcd2889e2047998143e2b5", - "signature": "cb6f0f40d51b51da33c503eaba191d407a50846abcbcd2889e2047998143e2b5", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionList.tsx": { + "version": "d3859e828cdfd0b2f28cb9401850319fef99b47fc899e426633926d4cc27ca0e", + "signature": "4aeb57ab5503bc6d722d2ab399894903f7c817d3f0ab2cb65397d5289f64677a", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/decorateAction.d.ts": { - "version": "03c2da579d36b44b79c1d8db736e8f20cb3a73d7b352399ef4d43857b8a97d4d", - "signature": "03c2da579d36b44b79c1d8db736e8f20cb3a73d7b352399ef4d43857b8a97d4d", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionOption.tsx": { + "version": "4ee2573ac4d8838660981410b36ef3e72e59b35e7b40da1430b74ed7ccf03205", + "signature": "4b098955d1df3c7ccda9296179a4e2978177de7847c2aeae421f037cad5457cc", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/withActions.d.ts": { - "version": "449814d0ff9febae3370014571a6a8cc3fc6b7f462cb80be2d0b00cf8c4d89dc", - "signature": "449814d0ff9febae3370014571a6a8cc3fc6b7f462cb80be2d0b00cf8c4d89dc", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionEmptyState.tsx": { + "version": "edff9b76b8fa5e14afde1019caf9367a5e7420f61a3b2cccbd8010ec1e4279ee", + "signature": "5ee209e0de307cf0e81f3d6c74036216ed3ce4ce1e29dba048df17e2be91d229", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/index.d.ts": { - "version": "7438f5c14b8738bdb37f616b7ee99421193a2f35d6474d6b3f43154d9f596f3e", - "signature": "7438f5c14b8738bdb37f616b7ee99421193a2f35d6474d6b3f43154d9f596f3e", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionPopover.tsx": { + "version": "e9a41b33ffec6f3f49358e47e5fd9557250c134e6d733a56e82e197009b734de", + "signature": "09fa6315494df1357b840c3c6088908fb1094cb5c09c1515dd3ef8f26caf0595", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-actions/dist/ts3.9/index.d.ts": { - "version": "a3ab74a180ca920f500dbf90275039e27200710d0ca3eed4763d8e162ddb2bee", - "signature": "a3ab74a180ca920f500dbf90275039e27200710d0ca3eed4763d8e162ddb2bee", + "../../core/components/atoms/avatarSelection/avatarPopover/index.tsx": { + "version": "c741cf05fae98d2a3159aa0e71e6900b5775931cf116be6e4e615ce69fbccc58", + "signature": "124dfb4b6b02a50524b847cd72ae1e4012e9bdf55831970d8c5756398dd2171c", "affectsGlobalScope": false }, - "../../core/components/atoms/chipGroup/_stories_/index.story.tsx": { - "version": "f397cce9ab3f5f9f64d313d05f0e1febcb2ee6a2cb7e2c1b0e49dfc69631c4e3", - "signature": "52cbeb0b77f3e4c00a8c93733a5fa8038175ef25f673e25cfaa213351a55ba51", + "../../core/components/atoms/avatarSelection/AvatarSelection.tsx": { + "version": "f5abc419e5db58ca8a440d9641b3c8b4fc7a59809766d34cced0d22597c969e2", + "signature": "7a49c2ab20c7207f4d26e61026fad7a459ad8efd6e8a39dc83992653eef23048", "affectsGlobalScope": false }, - "../../core/components/atoms/metaList/_stories_/index.story.tsx": { - "version": "01a79bfe7aa1e9a44f29b492c7eed6b7c77167ff8116bc3798cd9d287980634e", - "signature": "d90cd1c7cae54af01ba0cf683e5559f79cab7c99be925d8cda68033292847de1", + "../../core/components/atoms/avatarSelection/index.tsx": { + "version": "4a202d6e59d1a40adb97f6faab37b4e64539cb56057238243ceb0c7597c3b7f7", + "signature": "9bd20db7d3378c1d78d4a38acbcc844b905490782762f818bc04892d9cf4a234", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Schema.tsx": { - "version": "3ada917fd184573d578b4c21517503fa87659be813311dbfacaa35275a1184ae", - "signature": "a2d709df76447c910e20754abbc386426fa953135b554cbbcb7a40de68a03f6f", + "../../core/components/organisms/combobox/ComboboxList.tsx": { + "version": "11cd74b7bf6dc0641f879741b874afd25bd590dc9744542b3b63efa38d41f985", + "signature": "967e4d9be73a46ba28abefb8eb2748e6862f23b48d37f2bb3473cb00686a14c4", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Align/Align.story.tsx": { - "version": "b7ace5f429d2f16dae9b65857ec4ae3f6e11132810257ab3c98bc2d1a4f11bf5", - "signature": "7f801ed6fc28687230e1f619f0da0e0552ce8b0ee2c22169be883c7f37a40b74", + "../../core/components/organisms/combobox/ComboboxContext.tsx": { + "version": "beef849489ea16656acd58af0aecce65af11731042db857b8508466ebe068584", + "signature": "369f79e060b7865f95e6d31ad7a3d625667b0557a7d91aaad93e3a939417784b", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Background/Background.story.tsx": { - "version": "6abc0faf12089f2f66cd7394d1b037e7d2977cbc440ed0133d0836601124cf7c", - "signature": "c3f951a453d3e559850a7a655c63e5af41e8ac4adc5c2f1849b31907b5bb435d", + "../../core/components/organisms/combobox/utils.tsx": { + "version": "6a47a1f7ea5d27aa155ab6e69b3ac0e66cb76313fb5947c8bd84859183f5a117", + "signature": "077e3dd6c5798d0c56a5e5b0ef3cca51e590fa5cf32ea7c6854d1ea74b613a6e", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Display/Display.story.tsx": { - "version": "5e089ef553bd5e6ba946eade4c04f19e5c9c51b3206169e464e974fe9267f755", - "signature": "d91039b79899b7a89d45d30c65668dbe119e1b075f771aa2f1c6ad3b9adf63ca", + "../../core/components/organisms/combobox/ComboboxOption.tsx": { + "version": "8b4c748687d46077e9e71b47c9788065988488a7932659121568a5c7e1b6a287", + "signature": "315de4aa4f1967c61105709d39b60bdd8ade66848bff0a52c53dceb2d2ee59bd", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Flex/Flex.story.tsx": { - "version": "3204163edf0223f779689135a8d2809eb1c06be3c20eafb98036d72fc32edcfb", - "signature": "8d235c20fc788744bb474bd415064c7f621aa766e0a4c0f0e643c523062eeaaf", + "../../core/components/organisms/combobox/trigger/utils.tsx": { + "version": "b482e183c41d43084f681e66caa635382dfe84db2205094395b6f271616caeba", + "signature": "69eb9407f7e637c4bff6d402a595fec19695d27d67978e5317521b9d76e095ad", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Miscellaneous/Miscellaneous.story.tsx": { - "version": "1213abdc06ab499aa721005f9a9500ef596c48deff08f38dbf1338965501180e", - "signature": "aa42c26e6c3aec0874b1b86dc76fa72fdf58a74fe6a7c7ce8179e70722d5520e", + "../../core/components/organisms/combobox/trigger/InputBox.tsx": { + "version": "1e4b8d3ca928b1d46edb7be411dadd7e534024505d0df535fac335b8678c3683", + "signature": "dfca50dc2fa446590901ae9da769a28664c493ef49bed19ccaceb08dc03defde", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Overflow/Overflow.story.tsx": { - "version": "dd139fc25e8aed9f800f8c4f64752bc609763e58b7640e7a85e65dfcfd3b01d4", - "signature": "51d6333d0d51d0c853b9517a538fb359d20447c721ba32104e5bca799b48fd47", + "../../core/components/organisms/combobox/trigger/MultiselectTrigger.tsx": { + "version": "5a9108a9e900f3187ad314ab6ca33aa22fcd8b3738d7d51480c52155f30826df", + "signature": "398c7db2a1fc96863a9b15b939dffcc67815acb5394d806dfccab91c098594e5", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Position/Position.story.tsx": { - "version": "ab6cb504226e9beff365562e644f34385001e76d1a0b919edbd57531ca0fa9fd", - "signature": "99eefb34084ecb833986c14634c62aa83edf4cd87f9547b7e01f86aec5a34119", + "../../core/components/organisms/combobox/trigger/ChipInputBox.tsx": { + "version": "68a789602561c3c11d0b583b4d0db3be4f2ffad70317cb8dbeff393055e7566c", + "signature": "4593087d4208f4ad20c318d6cac3945b2457483b31345c920eb633355b109886", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Sizing/Sizing.story.tsx": { - "version": "c6080f4f49391a41a8c22ec55239f31dbf9160ce1497b816ff5fb0b7905ff26d", - "signature": "8de5cc5edbfa6946982f36503c92b6cde95c21e52422cc017256a214978085e0", + "../../core/components/organisms/combobox/trigger/ComboboxTrigger.tsx": { + "version": "a1d531dce1cf25f047fdf4583344523cb15969e1b7b707391b8e3b91c458749f", + "signature": "c1dea2c19f9cb46686e9e929ddeeae6d4c5cc16315a63514ce50fb6c55b88d6d", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Spacing/Data.tsx": { - "version": "e4f9fd913d33502db9a6e1d0a60421673b5d053aeb0b152a584877372ae68a72", - "signature": "b58336d143b58336739c5a9734a83ce78ee25852b3f3133aeff906fc364b3e09", + "../../core/components/organisms/combobox/Combobox.tsx": { + "version": "70c40c2cfb7947a88f3d72759d5b2badef17ecf8fc443e1484299e7bc74d527b", + "signature": "332fb644e1d11536158fb558d6211b47d925f31f9325e3c18f18cc0860354593", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Spacing/Schema.tsx": { - "version": "5d7fe11a22e8f210f1a868db1002dcca6304b9f01cd20a1b837690bcf4c48b5f", - "signature": "fb38e8c85063168d2ac414a267dbaf488b2e091b8eca22a58b6cb4065090bef1", + "../../core/components/organisms/combobox/index.tsx": { + "version": "2e932b853bdc5f1342753b1bbd7a16465d77aff859a74b94f60987ec8e320b7e", + "signature": "11699c336e26c2c34470daf036dcfdaf7b165a0d8c919b832d6d8fe196e620dd", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Spacing/Spacing.story.tsx": { - "version": "4062305ab181d892452b64ed1a4b499dada2235ad326d7e7128bef2316802709", - "signature": "48a37032741671e63ca4eab9bbc9e5d02c23373bcfcc80b99de7ee46b4c000d3", + "../../core/components/organisms/select/SelectContext.tsx": { + "version": "dce3c3ea2ca3e52a586700e32e56d66aa2a0b712e068159a54c9e11aaa9c5efc", + "signature": "ca6b294a5ccdce1aeda724341532c6950e85b2f99405ce32885babe2e75ed5cb", "affectsGlobalScope": false }, - "../../core/components/css-utilities/designTokens/Schema.tsx": { - "version": "aaad5dd0ddbb547cdc666f9e993116c7434cc28cf8125fe12da8b62556b2371f", - "signature": "16059f2389bf9f06c4fff930238472606123e371e2e797aff1349c9497448d56", + "../../core/components/organisms/select/SelectList.tsx": { + "version": "f6cf3332561442f1ec3985de356ac3f1e68fa228f45e44e5c24b68d617cfa74c", + "signature": "ad1ca3815815b95f19165cb5fe5d85b888c1ac0f6fa01dfeb40fe7b5b7e95638", "affectsGlobalScope": false }, - "../../core/components/css-utilities/designTokens/Data.tsx": { - "version": "cd46afdada564ef65e6c0fb4468265c307ef3179a84dd58224588a93e626f5d8", - "signature": "04a9eb31ecc07b9e3c9f16710be8ad46c4dc5b376ab631ab078a405beeab86c0", + "../../core/components/organisms/select/utils.tsx": { + "version": "2bcbc9a65cfbfa43779c439d8906cd1fd95999bd1bb4d2024307dab0e52e64a2", + "signature": "9901a08865a2d9990f41e0bc237ee7ecf0a06fc9525c7d94098eab93b1f45ccb", "affectsGlobalScope": false }, - "../../core/components/css-utilities/designTokens/Utilities.tsx": { - "version": "0a58950c4531e7c71beaa15cabdf9acbfe1a9d74cce4633399d14a0ccb4f32fd", - "signature": "0b101b2721b0e6bfbff480c267b1e3b58f3728a42d551906abf6ccda1a0ab19a", + "../../core/components/organisms/select/SelectOption.tsx": { + "version": "4c983d89b9d779881b72b1c3c723b32d09145861f1d34858cfe5a11c27bcf865", + "signature": "b7da301dbe1169580de986f62c87077f76890064d925c1e648221ee58b03fe07", "affectsGlobalScope": false }, - "../../core/components/css-utilities/designTokens/Colors.story.tsx": { - "version": "8650c051e65380d105110e14bdbf43f423013b53c6cb8ac65845401d7f93ae53", - "signature": "817007c8805bdffa63c2c9d851231cb06612a3e1b96cbc643e6366ac54bbb68b", + "../../core/components/organisms/select/SelectTrigger.tsx": { + "version": "d7be3231dd47a8b5f67559bc8dadeafcf27fb3b38b259662403bb2f732bb1242", + "signature": "342e41566380c2b501da61c4a9eb07c72385c14f64bb177d4d5744e1e6217919", "affectsGlobalScope": false }, - "../../core/components/css-utilities/designTokens/Miscellaneous.story.tsx": { - "version": "4baec42bed86644c88fb68513d8acff7fac7b11821550a8138f0c19f9585da6c", - "signature": "952745f88d79ec4dee4434fdff2534089aaea74b15be11cbcaea4ffd148b801c", + "../../core/components/organisms/select/SearchInput.tsx": { + "version": "750dcfebc2901103fc62d287f3b34b2b0a2082215d3dd4a90613f588f23b66ce", + "signature": "882194d8695e6a44baf52f08ea016ab11c16608f2db8ad8c66e4262a3d5a909c", "affectsGlobalScope": false }, - "../../core/components/css-utilities/designTokens/Spacing.story.tsx": { - "version": "e43742f948763b2f73cd0efad45636e558c8174d11a449c910d980b72f338bc6", - "signature": "8256f7a6b98114343d3022339c3c3287abd3894364792e44a9e14b522f6d74bd", + "../../core/components/organisms/select/SelectEmptyTemplate.tsx": { + "version": "f041344b371db22a3e1b3b070c4a810017d7cdb2a6db823a27e054a103b04034", + "signature": "e48f1587740af45506a9b690ec0f4201e28e60f916d8ee47429acc615396ea0d", "affectsGlobalScope": false }, - "../../core/components/css-utilities/designTokens/Typography.story.tsx": { - "version": "c0379f12e73c1d2ba74cc17ffdac0cd5f803cbfbcb0160f39309dcc913c3c6d1", - "signature": "42a9dbec2186535d4c8fc314fd0f484c60701f1a831c6663cecb449700af1716", + "../../core/components/organisms/select/SelectFooter.tsx": { + "version": "ac90f516fae747301560408de14706c332187b8b9acd8b3f130431beb8e78e35", + "signature": "5686f3bb3acf4466c6794f124cd98575b897436b182bce621b0c51cc38ee54af", "affectsGlobalScope": false }, - "../../core/components/molecules/Layout/index.story.tsx": { - "version": "423f1dfe179a09c1f35faddec8d78fe528f110ca38de16e92cc7d16135c3602a", - "signature": "0590faaf326a710fa3ecb3c256cc99f5d84e9eee6064ab6103a19ed81f09050c", + "../../core/components/organisms/select/Select.tsx": { + "version": "3be13bfb478cf3779423a730c6f56d816b0e279e48f3cc0c4cd1c16dc4a09aeb", + "signature": "7c4b8e05fda14918072776e80e8beeba13c0f4bd91b9072bc72f96cce85c020a", "affectsGlobalScope": false }, - "../../node_modules/pretty-format/build/types.d.ts": { - "version": "6ed4f0568165065f03426b1333999c5b9f528d92936eee0ba432537b7cd9a88e", - "signature": "6ed4f0568165065f03426b1333999c5b9f528d92936eee0ba432537b7cd9a88e", + "../../core/components/organisms/select/index.tsx": { + "version": "b96c1af8922bf56031d0b30669e4c5906e5168351a4cff105430084229a99948", + "signature": "1b9d6e612f34172e88641c1d608c40a69c3cbb1acf45595c0fc9833678209895", + "affectsGlobalScope": false + }, + "../../core/components/organisms/menu/MenuGroup.tsx": { + "version": "73a4575a0920481c58d04bad81301de12531f57995e44f838c53acd7e8a24f2c", + "signature": "311c8d53301828675098fc7791e91dbbc488e26be4db9c9cb422e01169901368", + "affectsGlobalScope": false + }, + "../../core/components/organisms/menu/MenuContext.tsx": { + "version": "330bc4f9d78254f91b74f790c8d95042611195e01d44ca8a70cc77deb48e9587", + "signature": "f24235f2567474d4686d11c3e166113a8116635b77715719ca02ca03559e58f1", + "affectsGlobalScope": false + }, + "../../core/components/organisms/menu/utils.tsx": { + "version": "89a2448786559ea6424ee942f7a899a6efa9166bf81ad95d54df16429a04aae0", + "signature": "3514f5f705f345d978809d54ab7c63a34c6bc650a2cd0afc296de7f7fcbbc037", + "affectsGlobalScope": false + }, + "../../core/components/organisms/menu/SubMenuContext.tsx": { + "version": "c2d903d96389f9021b2b0ce33eec849226c43e1c646c207fa7e6a463776953d2", + "signature": "a01b89fab9636ad8124602b067f0c9093bbb89781e50200a0d056e30b3a57bb1", + "affectsGlobalScope": false + }, + "../../core/components/organisms/menu/MenuItem.tsx": { + "version": "bef31ebe0668c6e4eb68580b14e53e7619d9904bc90e257169b7cee77e54bb58", + "signature": "aa1745897f650b0dec64729cdae0a61cf5713c0613f15ddb941c70f775ba674f", + "affectsGlobalScope": false + }, + "../../core/components/organisms/menu/MenuList.tsx": { + "version": "bd00383a4e23a139516e32bd1184e73f76b2babb2fe2a9c0ee13ef9e8aee2a60", + "signature": "540f402ac98c4f12278f48b0fdbca850e275b754fcca6d4d9bcc77cf43af6854", + "affectsGlobalScope": false + }, + "../../core/components/organisms/menu/trigger/utils.tsx": { + "version": "e9aa585e5787428de81c48f5f00415af9d637fcaac87c0b0f305b8be8b5e0a35", + "signature": "f0c45743a6469fcd5b8963b61d840e4f41552aa64c69ece4c293aa7f3b09d9d0", + "affectsGlobalScope": false + }, + "../../core/components/organisms/menu/trigger/MenuTrigger.tsx": { + "version": "6d151f1f10dadb7b40369ecc67e5a539046500f79d4d806e6deabf5d8be0105e", + "signature": "c78c8fbb15ee998e44216e12a21846f5759c5e76843ca6a767e6213ac3794a7a", + "affectsGlobalScope": false + }, + "../../core/components/organisms/menu/SubMenu.tsx": { + "version": "988481507abc8e59ddf36154f02a2734a142d4626a6a35710e54d1324c2494a0", + "signature": "9c6286aa3bbdd7abc72d9cff12dd45e4f0f33a72f3853df01781607aecbc040c", + "affectsGlobalScope": false + }, + "../../core/components/organisms/menu/Menu.tsx": { + "version": "fe6754049233b20dc8fc1a6e57b57365c623d189eba976498dd781fde13deb17", + "signature": "036b135b292e1b42dd46e305fabf875f1982d4f3232844eb916629bc173f480f", + "affectsGlobalScope": false + }, + "../../core/components/organisms/menu/index.tsx": { + "version": "dfc1c0cfdcdc9d4919b12bac38478cd01562f74d98db59ced8c4c4e20c7a201d", + "signature": "0d16db700f15ab222541abedddc40fca479899f6a7bf665a57cd4a63cf99cf02", + "affectsGlobalScope": false + }, + "../../core/index.type.tsx": { + "version": "808f72e4bc36fbb8f3d0304a12f30903bece81ac106976892b6cbfdea9173892", + "signature": "d154cb3aee04dee7a104aae5af6e1784af86f6465ff54c33842057c3e9b5a750", + "affectsGlobalScope": false + }, + "../../core/components/organisms/timePicker/TimePickerWithInput.tsx": { + "version": "e5a2d492d6114ca56434378335f2658f3c694996ac3159e5fd73cccb084022d7", + "signature": "2dd89773ef2b9c5b8683b329700cc37d2d7409a04d7af3d340b7c5e7e36ab059", + "affectsGlobalScope": false + }, + "../../core/components/organisms/timePicker/utils.tsx": { + "version": "37fa28c3c1839929ed216738182ace09535451c58c37e02c5f20a3285a3cfb98", + "signature": "0977367935ba3f5bd7c6cffaf7078fb939c61d9ebe17c76aa68a372ffe113eac", + "affectsGlobalScope": false + }, + "../../core/utils/validators.ts": { + "version": "c1b4375466f10fb04cee0e6d126383457ca7c69941dbc127aff3406f5ff2ca8d", + "signature": "eb47ed8bd033c681072a1c0dbe74e8bfe10a21970f1f2bdc61d2e3d88341d13a", + "affectsGlobalScope": false + }, + "../../core/utils/masks.ts": { + "version": "1038502eb22906b90910d252c4406fedfd2a8784022d462d268c0c5b5c47e63e", + "signature": "cf1866499032299b8faae9efa5cdde48086c6c10a11feeede3f38d6fc791451d", + "affectsGlobalScope": false + }, + "../../core/utils/index.tsx": { + "version": "16e4f6e544efaaa49c559be3f352db9652a549f05f9e9c2390214eaf4897baa4", + "signature": "a85da23da1ec8c0d6324ebe0f50df4d8956802764308b63802eb604fb3fbc8a1", + "affectsGlobalScope": false + }, + "../../core/index.tsx": { + "version": "ee817489bfd05cf90e9dfbe360f2ac74dc2a416d93ce8738303f0376531a8294", + "signature": "31a64696c235100cf7da80187a145ed12e295be9afa06e2b4174975f54948d77", + "affectsGlobalScope": false + }, + "../../core/components/molecules/overlayFooter/OverlayFooter.tsx": { + "version": "c3aa19c3dea2460c28b7077e42c6ac657ec79d8aaf7bec8aa2b5b98080764b97", + "signature": "79f12c6a6d8fa70ab572a5a262b67c1119eed6488b4f1ee423dcde62c55fffd8", + "affectsGlobalScope": false + }, + "../../core/components/molecules/overlayFooter/index.tsx": { + "version": "439a89eef207a81122381d9db8223b6f7413c54029c12c8170d380ca848aa348", + "signature": "2f4ba29d3e5dc49a68f4510d5989678974c3b9975ced76d71963e65304edef6c", + "affectsGlobalScope": false + }, + "../../core/common.type.tsx": { + "version": "8769274f22d97191d16f9ac96946e522b15f120850ae1a6b68785ac84a076886", + "signature": "6d1a33d65a23d114e24d27773337567c61416166d1d429f95311d40904a112d2", + "affectsGlobalScope": false + }, + "../../core/global.d.ts": { + "version": "689590e7995d5be1dd35543cadf687292b7a33cbb0de5481409f8315e9f0818a", + "signature": "689590e7995d5be1dd35543cadf687292b7a33cbb0de5481409f8315e9f0818a", + "affectsGlobalScope": true + }, + "../../core/components/css-utilities/Schema.tsx": { + "version": "a8448950eb4b5dfcab59e71f5912faaee81f17e48d279c7a472ab60dad32adf4", + "signature": "a2d709df76447c910e20754abbc386426fa953135b554cbbcb7a40de68a03f6f", + "affectsGlobalScope": false + }, + "../../core/components/css-utilities/Spacing/Data.tsx": { + "version": "0ad5fbcf0e16bd8bb901bb8e0828cfb4bf3a4ace87257062baf92ce01c969a61", + "signature": "b58336d143b58336739c5a9734a83ce78ee25852b3f3133aeff906fc364b3e09", + "affectsGlobalScope": false + }, + "../../core/components/css-utilities/Spacing/Schema.tsx": { + "version": "cfade1e6f2231e969598991fdfcf349d08fcce1a2839e9b36fa19915cd01b69b", + "signature": "fb38e8c85063168d2ac414a267dbaf488b2e091b8eca22a58b6cb4065090bef1", + "affectsGlobalScope": false + }, + "../../core/components/css-utilities/designTokens/Data.tsx": { + "version": "7daabc625d30ee5f1eb3af93302475a838b923bba48625ba44353d47cfc8b914", + "signature": "2583c1f78c1b3d0dfe4ab20b9118007fd35cbc26426964b94c6f8a32844c4dc7", + "affectsGlobalScope": false + }, + "../../core/components/css-utilities/designTokens/Schema.tsx": { + "version": "4da2a55b1c31db6ec200658a9455b438d0d3ac94c0c70b56afbccbe81e0fe36f", + "signature": "16059f2389bf9f06c4fff930238472606123e371e2e797aff1349c9497448d56", + "affectsGlobalScope": false + }, + "../../core/components/css-utilities/designTokens/Utilities.tsx": { + "version": "773fec2dd9c2fdf9315b5ecf307281fa4b184eef4f4ac29a4353b587520126d6", + "signature": "0b101b2721b0e6bfbff480c267b1e3b58f3728a42d551906abf6ccda1a0ab19a", + "affectsGlobalScope": false + }, + "../../node_modules/pretty-format/build/types.d.ts": { + "version": "6ed4f0568165065f03426b1333999c5b9f528d92936eee0ba432537b7cd9a88e", + "signature": "6ed4f0568165065f03426b1333999c5b9f528d92936eee0ba432537b7cd9a88e", "affectsGlobalScope": false }, "../../node_modules/pretty-format/build/index.d.ts": { @@ -1847,98 +2462,43 @@ "affectsGlobalScope": false }, "../../core/utils/testHelper.ts": { - "version": "2d5429dcd5fbde56c7a82f2d6b9c8f5b27fbfac4f7dcd0935bfdf46d50b070e3", + "version": "a915a9e04cae47fc48716a614fb2d5169a2b4725b4b09eb8fe1c52e363ebf61c", "signature": "328bd3401d4c3ed13cf1d8dec5eff50abcfcaa27168a3c1e4722e2d312ebef0f", "affectsGlobalScope": false }, "../../core/components/molecules/emptyState/_tests_/EmptyState.test.tsx": { - "version": "a4034b75939249ab8ca1cdbbb7bc95e7b3ef3ab94bfe8d91f1ca14f53ac493b9", + "version": "ec8ffd73ea9d0468902557cebc9ebca528b13059fd1ec3a62232b835de450a2c", "signature": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881", "affectsGlobalScope": false }, - "../../core/components/patterns/datePicker/dateAndTimePicker.story.tsx": { - "version": "b4901536f4fce8fa8c202bf6c86f8cc3167f5180dd72bee6b514634c87f9bd9c", - "signature": "d1d71f62d405cd49ffe4c8c5a042a74f70675653a22c3dfc1fec8184b2a78a7e", - "affectsGlobalScope": false - }, - "../../core/components/patterns/dateRangePicker/withCustomPopover.story.tsx": { - "version": "62b67029f62106531db68dd0cb93999b7cbfd01a67783e08c7b40d1b52fcc765", - "signature": "582908329b69f7201a550a46183a72844d7f0ff2af67f01eac59a905f2fbf133", - "affectsGlobalScope": false - }, - "../../core/components/patterns/forms/CreatePassword.story.tsx": { - "version": "532ff79f2f031a44aba61a1e9a17e0b40decb9672230eddc9ecb95d490bd4b82", - "signature": "c1fb850fd204c9c70b2184080ddbb71269dd6b1cd2b4288b8b77d022e1f285b3", - "affectsGlobalScope": false - }, - "../../core/components/patterns/forms/CreateUser.story.tsx": { - "version": "49bbd32e18c7aa17c7a49735ad39cd6157db1f5c253e5b24b2fd8c1602376fb9", - "signature": "0bb5abbe1dc644a507039554825127489caab855735814b69d924fb3edf5302f", - "affectsGlobalScope": false - }, - "../../core/components/patterns/forms/InlineForm.story.tsx": { - "version": "bb63b711270ffbed0bdd45c009100401090fe4f5c3082bdf290a41482d69ec51", - "signature": "d45a4ddf454e23ab86b7b653aafff029a2e508eb21cbf8549eefcf0301b51404", - "affectsGlobalScope": false - }, - "../../core/components/patterns/forms/InlineLabelForm.story.tsx": { - "version": "18cce8af5187805dce2736e4782fe53210d133fe5256567a1755ca3899652722", - "signature": "c5b0b1bbc5bc864b7c5d084fb5272d76ac5cfe63e17f75e256ef5232b52fc060", - "affectsGlobalScope": false - }, - "../../core/components/patterns/forms/StepperForm.story.tsx": { - "version": "79762741e72537da7848e2d71cc2d63268256e4389664d7775d666144cadf4f4", - "signature": "ff0a6fe849eadf1a1c60112e12f61c4ea4ce8ef071f6e5c6b2f5b1e203e22912", - "affectsGlobalScope": false - }, - "../../core/components/patterns/forms/TimePeriodForm.story.tsx": { - "version": "62a33ae0a21c4db906297377975e54e0e992643c5959b7a7d213236762cd8a27", - "signature": "a90d036e0f61cbe18b90b7dfc2fe2b9b075f6e5cce5602325059e80cb2508603", - "affectsGlobalScope": false - }, - "../../core/components/patterns/forms/VerificationCodeInput.story.tsx": { - "version": "bfcb08fe3f82df00eae57aeddb1bff11583933d396c1dcaf60794de0a5f1db20", - "signature": "8e547e5e1cb0b680ae5001086b478264cd5e1e84275539a527dc9c1f7462bdf9", - "affectsGlobalScope": false - }, - "../../core/components/patterns/forms/basicForm.story.tsx": { - "version": "b426ce9ce178700e28d02c69e072c6d1b067e9b1fba5b724c132680759f67d45", - "signature": "37a5345c0f6b493624346bb88007d46673ec12c399a5a49ff552d37d7521f71c", - "affectsGlobalScope": false - }, - "../../core/components/patterns/layouts/blankTemplate.story.tsx": { - "version": "218f9a6257a0b8e1c2d3f3c19b0d14937ff1daf421dfcd5e32e738cafe39bf4e", - "signature": "4eb2cf2181844f1e98b7410f20cd2ab6ef5627f787c539a170e3fc1f782bfd2e", - "affectsGlobalScope": false - }, - "../../core/components/patterns/layouts/level1HeaderTemplate.story.tsx": { - "version": "a7cbc24b82d4c29527a295cd891f385883f0491f88905d58a9e67a7fffc75b17", - "signature": "7729d0be81be669d01a633ae63f9e69fe52302ec8301d0166150b62ea8725f58", + "../../core/components/organisms/combobox/trigger/index.tsx": { + "version": "5d41aa8d2e99bcf48e6dbed6c936fc9779ceb117b148ca5df8f360ddc1b0d95b", + "signature": "bfb7f1c9a5612091021689bc548b97d649a9a47f89eab39cfb701b8034394c9e", "affectsGlobalScope": false }, - "../../core/components/patterns/layouts/miniSidebarTemplate.story.tsx": { - "version": "2a4341d2d4755129d0c0d0bb207bfb54692f8ddde33b5a5b3e3c039bbef3c450", - "signature": "598d3bdc9a3c248a6f9e46c413032b7e7f00174ae685aa5432e16f0bb2202485", + "../../core/components/organisms/select/__test__/Select.test.tsx": { + "version": "fb39a55ed7f3f9134cc9ba698c596140c82fac1420b72ab268c5a07abbcc1de6", + "signature": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881", "affectsGlobalScope": false }, - "../../core/components/patterns/layouts/narrowWidthContentTemplate.story.tsx": { - "version": "a5cddf7a5ddcc0ddb8a17f252f91899893a1f3a888412ff78bfba207e0a4feb3", - "signature": "42abab01aac1608f28108f378d029133ed612456319276402cc4855e7f19c8bb", + "../../core/components/organisms/select/__test__/utils.test.tsx": { + "version": "0de9ba67678d1670154f07844331f9f2307a4c3062d815c2c4e40abc67094df0", + "signature": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881", "affectsGlobalScope": false }, - "../../core/components/patterns/layouts/resourceTableTemplate.story.tsx": { - "version": "719facaeb249246fd7d212af2939f59eaa1774a281b33178a8e227ff68370fe6", - "signature": "f2a08bdd745ac83b5f46dedebab8f9569e1c4cf685d41d9bff461e5d683c8faf", - "affectsGlobalScope": false + "../../node_modules/@types/testing-library__jest-dom/index.d.ts": { + "version": "dd4d769260a2b8cf19f0d2457f3142b24f083237932b0d1edb5fd728a989c8bd", + "signature": "dd4d769260a2b8cf19f0d2457f3142b24f083237932b0d1edb5fd728a989c8bd", + "affectsGlobalScope": true }, - "../../core/components/patterns/layouts/sidebarTemplate.story.tsx": { - "version": "eefe41a379d074109a7a92b83141b51c869dfc0002baa6fb736882816510ea4a", - "signature": "3e429df5d99756d374b6eb6bfd1d7c026c4453af23bbbccb4d09e41b9ee39dc2", - "affectsGlobalScope": false + "../../core/components/organisms/textField/__test__/Textarea.test.tsx": { + "version": "029983cfb96ed5938f7e9e0d6dbb7f9de1802b81f476bd7ef2c3d5b140dc6e2f", + "signature": "5f9f3f8074805005c69f5c02a05d5ec4099b9d39fa8cad858b134fd60b98d3ae", + "affectsGlobalScope": true }, - "../../core/components/patterns/verticalNavigation/sideNav.story.tsx": { - "version": "ec0947b3a840905498695f4a83292308f012566d58061406483ccf6bfa661a73", - "signature": "86de2353c64682d83051ad96acbb4d2ef145448d3a3985d0963b6abfb96798a1", + "../../core/utils/action.ts": { + "version": "475ce5f77cf4739dfdf31ba0def5e6cc07b108f6ad875544923bfd4614db7393", + "signature": "52eff0895b53806f45cb2cd8fce432b87cee4d2e8e2858082963653c3bf8596e", "affectsGlobalScope": false }, "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts": { @@ -1947,18 +2507,28 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/router/dist/ts3.9/utils.d.ts": { - "version": "bb93c69cbaeb9ed5d55658ef4bc3399df48360a884dd71be72651714ee7d4c11", - "signature": "bb93c69cbaeb9ed5d55658ef4bc3399df48360a884dd71be72651714ee7d4c11", + "version": "4ad348823e7c04268b38d6b2f185b194a91c7a61a75f333970bb9353be6d3c26", + "signature": "4ad348823e7c04268b38d6b2f185b194a91c7a61a75f333970bb9353be6d3c26", "affectsGlobalScope": false }, - "../../node_modules/@types/reach__router/index.d.ts": { - "version": "94a274c882504de552300fc5d6be141820041e9e2c530064ea10a0b76e2f905f", - "signature": "94a274c882504de552300fc5d6be141820041e9e2c530064ea10a0b76e2f905f", + "../../node_modules/react-router/node_modules/history/index.d.ts": { + "version": "f438d15f5b9657ad0b526ff15b9a3779bd84ec68b8210de9a4cf56c2beb84a9e", + "signature": "f438d15f5b9657ad0b526ff15b9a3779bd84ec68b8210de9a4cf56c2beb84a9e", + "affectsGlobalScope": false + }, + "../../node_modules/react-router/index.d.ts": { + "version": "4c9571972ab57c3bc9f59bcde67997bdd32573003077b3d7d3fa0709ecf39973", + "signature": "4c9571972ab57c3bc9f59bcde67997bdd32573003077b3d7d3fa0709ecf39973", + "affectsGlobalScope": false + }, + "../../node_modules/react-router-dom/index.d.ts": { + "version": "4bb3779a23f8d2bc00919d8178877be22b79903c71977373802e6514bc3199ee", + "signature": "4bb3779a23f8d2bc00919d8178877be22b79903c71977373802e6514bc3199ee", "affectsGlobalScope": false }, "../../node_modules/@storybook/router/dist/ts3.9/router.d.ts": { - "version": "b064e0bba4f22f438ec15122597aa13b29c050c165d4a9b4707c8ebcb689eccf", - "signature": "b064e0bba4f22f438ec15122597aa13b29c050c165d4a9b4707c8ebcb689eccf", + "version": "3860a1ec48bb13acd9bdfd3b496f644435cbb3fa5b600576294abd8c12c3b3c6", + "signature": "3860a1ec48bb13acd9bdfd3b496f644435cbb3fa5b600576294abd8c12c3b3c6", "affectsGlobalScope": false }, "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts": { @@ -1971,14 +2541,29 @@ "signature": "686b6ae9d67f0e7e507df696ef6a4a3768bd826552b816b31ef370d2ede1a8f8", "affectsGlobalScope": false }, + "../../node_modules/@storybook/csf/dist/SBType.d.ts": { + "version": "3819fe3eacd5a1ce3dd8dfc14b81d7e558075e0b0078ecd49da69e4ba8f28d3d", + "signature": "3819fe3eacd5a1ce3dd8dfc14b81d7e558075e0b0078ecd49da69e4ba8f28d3d", + "affectsGlobalScope": false + }, + "../../node_modules/@storybook/csf/dist/story.d.ts": { + "version": "a1fe88913e3b185cb7a4a323e9d41dd559853d690a22bf6c6bd39524d96ffb73", + "signature": "a1fe88913e3b185cb7a4a323e9d41dd559853d690a22bf6c6bd39524d96ffb73", + "affectsGlobalScope": false + }, + "../../node_modules/@storybook/csf/dist/index.d.ts": { + "version": "61abe77332cae5f0ba916d7b1b293cb5cd9ea234756489a1a5672eb9609c0702", + "signature": "61abe77332cae5f0ba916d7b1b293cb5cd9ea234756489a1a5672eb9609c0702", + "affectsGlobalScope": false + }, "../../node_modules/@emotion/utils/types/index.d.ts": { "version": "b950589996caafaa1638f139de73257f6b47a3dc965c8c2a7e5b56138f427dfa", "signature": "b950589996caafaa1638f139de73257f6b47a3dc965c8c2a7e5b56138f427dfa", "affectsGlobalScope": false }, - "../../node_modules/@emotion/serialize/node_modules/csstype/index.d.ts": { - "version": "6868ca93b5c10a223aa7d0d8250ca301431ed31ecef2c3a1bc90f36cb9f01227", - "signature": "6868ca93b5c10a223aa7d0d8250ca301431ed31ecef2c3a1bc90f36cb9f01227", + "../../node_modules/csstype/index.d.ts": { + "version": "070e7b8102575a21c0b9aabae8cf65d4d9891d8a7a8706896593ad0353c36e7a", + "signature": "070e7b8102575a21c0b9aabae8cf65d4d9891d8a7a8706896593ad0353c36e7a", "affectsGlobalScope": false }, "../../node_modules/@emotion/serialize/types/helper.d.ts": { @@ -1997,8 +2582,8 @@ "affectsGlobalScope": false }, "../../node_modules/@emotion/styled-base/types/index.d.ts": { - "version": "13b54d8a660e4f8efa8eddb5f349a0ed15011416c79676f7d4b2eca6373e0e3f", - "signature": "13b54d8a660e4f8efa8eddb5f349a0ed15011416c79676f7d4b2eca6373e0e3f", + "version": "1e95ce7664163cee8cb4734d699ecfa2b87ed8613f62b5cd29c87c666732b5c9", + "signature": "1e95ce7664163cee8cb4734d699ecfa2b87ed8613f62b5cd29c87c666732b5c9", "affectsGlobalScope": false }, "../../node_modules/@emotion/styled/types/index.d.ts": { @@ -2037,8 +2622,8 @@ "affectsGlobalScope": false }, "../../node_modules/@emotion/core/types/index.d.ts": { - "version": "1588826621a8167206324e72114918cfa71e9d1f91ae85145dec25e4b04a21b7", - "signature": "1588826621a8167206324e72114918cfa71e9d1f91ae85145dec25e4b04a21b7", + "version": "14cb75f5fbac488e22c9a4961daf4eb406c5550daad98dd6e152af3772986f7e", + "signature": "14cb75f5fbac488e22c9a4961daf4eb406c5550daad98dd6e152af3772986f7e", "affectsGlobalScope": true }, "../../node_modules/emotion-theming/types/helper.d.ts": { @@ -2047,8 +2632,8 @@ "affectsGlobalScope": false }, "../../node_modules/emotion-theming/types/index.d.ts": { - "version": "01c33ff580322779804e1118d9e630877d0e697e3b85e99598fb0726976ec65d", - "signature": "01c33ff580322779804e1118d9e630877d0e697e3b85e99598fb0726976ec65d", + "version": "db92e98a082f389003bf3ae096d96fb1ad9c5d6993610b2b0d27447ab2a9a387", + "signature": "db92e98a082f389003bf3ae096d96fb1ad9c5d6993610b2b0d27447ab2a9a387", "affectsGlobalScope": false }, "../../node_modules/@emotion/is-prop-valid/types/index.d.ts": { @@ -2087,8 +2672,8 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts": { - "version": "8f06e139e020d860abd9085130735c99d635c3720f6968937678350885344299", - "signature": "8f06e139e020d860abd9085130735c99d635c3720f6968937678350885344299", + "version": "2d040083050c4c256e22023474c583207be1d1daf1a1ebdb926a3d55da42466e", + "signature": "2d040083050c4c256e22023474c583207be1d1daf1a1ebdb926a3d55da42466e", "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts": { @@ -2097,18 +2682,18 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts": { - "version": "e70965073e612b80ae193cd72d5710de58014259a4f2137be991da37eea820c8", - "signature": "e70965073e612b80ae193cd72d5710de58014259a4f2137be991da37eea820c8", + "version": "0e2796337590cbebc51742bb6c6820568690cc861c253ed3f79fec94c85de089", + "signature": "0e2796337590cbebc51742bb6c6820568690cc861c253ed3f79fec94c85de089", "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts": { - "version": "9000156db05b58d3dc5606ae471399550d5d1717d6aaf8c2de29275b7a33c598", - "signature": "9000156db05b58d3dc5606ae471399550d5d1717d6aaf8c2de29275b7a33c598", + "version": "81bacfecad02d28e47c74c25699de0cce3fe2edfa667c99c94ff3c0dc83beba3", + "signature": "81bacfecad02d28e47c74c25699de0cce3fe2edfa667c99c94ff3c0dc83beba3", "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts": { - "version": "0488eaf58f3630ebc97f63fab35e23ca18f2e77e2cd02a09b049286081e66f5d", - "signature": "0488eaf58f3630ebc97f63fab35e23ca18f2e77e2cd02a09b049286081e66f5d", + "version": "7e2bcdc0bb130df5079158154d1d2a07a298e6303889bdcbb9df2a378e65ba7b", + "signature": "7e2bcdc0bb130df5079158154d1d2a07a298e6303889bdcbb9df2a378e65ba7b", "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts": { @@ -2131,14 +2716,9 @@ "signature": "78804759f7c183abd4f019d4bf3edf6379b96f96b4c2d1878d326f0c90a38f5e", "affectsGlobalScope": false }, - "../../node_modules/@storybook/csf/dist/index.d.ts": { - "version": "684b85855b7a97e7bd926b03dc14184089877cad0fcfa7cfd6a4e22de2db65df", - "signature": "684b85855b7a97e7bd926b03dc14184089877cad0fcfa7cfd6a4e22de2db65df", - "affectsGlobalScope": false - }, "../../node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts": { - "version": "aedadd82108cda1fb881a4648c260c7de16b013fcacd7fb412f5b61e94175291", - "signature": "aedadd82108cda1fb881a4648c260c7de16b013fcacd7fb412f5b61e94175291", + "version": "8670cbd4af30e0558f63034d4f0830766f796035acae9c6123b47c9fab9869b7", + "signature": "8670cbd4af30e0558f63034d4f0830766f796035acae9c6123b47c9fab9869b7", "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/modules/shortcuts.d.ts": { @@ -2147,8 +2727,8 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts": { - "version": "55b37e6903eaadcfc1da257ecb1b4ff762cbbbe77c11d5a9ca32269450b2bcb0", - "signature": "55b37e6903eaadcfc1da257ecb1b4ff762cbbbe77c11d5a9ca32269450b2bcb0", + "version": "ed71dce0839801ca53924ab04bcd89af607d9c0c7eeca227320ec17ba1809188", + "signature": "ed71dce0839801ca53924ab04bcd89af607d9c0c7eeca227320ec17ba1809188", "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts": { @@ -2157,8 +2737,8 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts": { - "version": "da4027999f81cac26936dc264409ae2e0526393196ef8fa57bf815f7e182c65f", - "signature": "da4027999f81cac26936dc264409ae2e0526393196ef8fa57bf815f7e182c65f", + "version": "ac44f8b9241046d23be6ce684afe6669d6518d76b2ff998b0d4ed86991266363", + "signature": "ac44f8b9241046d23be6ce684afe6669d6518d76b2ff998b0d4ed86991266363", "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts": { @@ -2167,28 +2747,18 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts": { - "version": "a433739b7377a51dac457d6510ee563175494b71c8c3b8713badec4d49c99b69", - "signature": "a433739b7377a51dac457d6510ee563175494b71c8c3b8713badec4d49c99b69", - "affectsGlobalScope": false - }, - "../../node_modules/@types/webpack-env/index.d.ts": { - "version": "c856e68ae3c730c5b59b0a5c0c8e951596ae79da7d29c9a1b1a8257109f3f3cc", - "signature": "c856e68ae3c730c5b59b0a5c0c8e951596ae79da7d29c9a1b1a8257109f3f3cc", - "affectsGlobalScope": true - }, - "../../node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts": { - "version": "61eaafbbc6acf01e7bb9fdfcef24486198d8c2d34328f3af2a56cfe63ccadc42", - "signature": "61eaafbbc6acf01e7bb9fdfcef24486198d8c2d34328f3af2a56cfe63ccadc42", + "version": "74d261da2ea12ac078ca44ac5eb00e342bcf5ff28c22796867966bf1c04aac9c", + "signature": "74d261da2ea12ac078ca44ac5eb00e342bcf5ff28c22796867966bf1c04aac9c", "affectsGlobalScope": false }, "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts": { - "version": "51adf07b16a858fe0d8b66dd230f923ff7aa976864a9666309e64ad968f655bd", - "signature": "51adf07b16a858fe0d8b66dd230f923ff7aa976864a9666309e64ad968f655bd", + "version": "eb3fd14c8fa81c5f0c74132db79396d9a750ed86c38e37ceb1d509078c1c3b7b", + "signature": "eb3fd14c8fa81c5f0c74132db79396d9a750ed86c38e37ceb1d509078c1c3b7b", "affectsGlobalScope": false }, "../../node_modules/@storybook/addons/dist/ts3.9/index.d.ts": { - "version": "676460526ddfe2bfa4844be81c89b56da344083f59541d83c1b4cb16bb554831", - "signature": "676460526ddfe2bfa4844be81c89b56da344083f59541d83c1b4cb16bb554831", + "version": "a0d89c4418137068ba318aa0d78f1da1757e9c5bf192e8edbac6ce4f2795af3b", + "signature": "a0d89c4418137068ba318aa0d78f1da1757e9c5bf192e8edbac6ce4f2795af3b", "affectsGlobalScope": false }, "../../node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts": { @@ -2201,484 +2771,499 @@ "signature": "cb8ab172f02fb976eba76da4b5a8a6c8295a763bd0d86b56f4f86ee1becd3b8f", "affectsGlobalScope": false }, + "../../node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts": { + "version": "9d6280f06a91911f5411b4f257baf704df5eb96989a5490a1d5319102a34ca49", + "signature": "9d6280f06a91911f5411b4f257baf704df5eb96989a5490a1d5319102a34ca49", + "affectsGlobalScope": false + }, "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts": { "version": "f9bc5842218fde992a60794f6a5d4510c95e205b042d2bfafcd20c0fb9c7f0d8", "signature": "f9bc5842218fde992a60794f6a5d4510c95e205b042d2bfafcd20c0fb9c7f0d8", "affectsGlobalScope": false }, "../../core/utils/storybookEventEmitter.ts": { - "version": "3ff845dbbdb2b8cfecd229e0a4dc58829d5b7d1b3aad2cc04437bc9125d3d4bc", + "version": "9fb365c1351436e3252cd1864ea8b3f9e2c2d40fc44956a1a981f1776d341a7c", "signature": "781c42c8e52e550c442b676dd3f9e4665e7a78a18cc6a41aa2ba3204c6976fe0", "affectsGlobalScope": false }, "../../core/utils/docPage/generateImports.tsx": { - "version": "8c0febd9791e388c7e6003eacbae2c8ef07dfb13037502f7975d198e2a0e25ca", - "signature": "eb2056f8376c974bb61406101250e74c1e7a2d023acd768e866a5738b1316f62", + "version": "4395732704a826bc5b66e5f547999223a517d8b7855a2638abe4a9d4c52904a0", + "signature": "6db6d57f39b837947447c00fa04347188d3843349902cc12a9dc85b3a2ca659d", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentFormatting.d.ts": { - "version": "93cbf42e397e5f2f95a9126171a276a9ceb73b20f8a8fffc943803b9181f5063", - "signature": "93cbf42e397e5f2f95a9126171a276a9ceb73b20f8a8fffc943803b9181f5063", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts": { + "version": "3944f18d9d057addab4fe5d2fae55d6ef0401d43dc0fb0bbd402bd72a1185e49", + "signature": "3944f18d9d057addab4fe5d2fae55d6ef0401d43dc0fb0bbd402bd72a1185e49", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/Badge/Badge.d.ts": { - "version": "ea7e3c60630d24c7a9eedc092d76bac67cab26408ecd6cd7212b9ef76398b737", - "signature": "ea7e3c60630d24c7a9eedc092d76bac67cab26408ecd6cd7212b9ef76398b737", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts": { + "version": "be898d9e967c8bea255e88eecc3134f967ebd4a94bc29fd64ac8d3ab13effa4d", + "signature": "be898d9e967c8bea255e88eecc3134f967ebd4a94bc29fd64ac8d3ab13effa4d", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/typography/link/link.d.ts": { - "version": "42a35957db42743c3b9f05b18ab069e90d94e4ca946a7538aae1374d1fb76939", - "signature": "42a35957db42743c3b9f05b18ab069e90d94e4ca946a7538aae1374d1fb76939", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-flip.d.ts": { + "version": "b8b76992d81f75104fc38f0a4e5f5027ec5fb01eb4825d11a9eec10e3adc7b77", + "signature": "b8b76992d81f75104fc38f0a4e5f5027ec5fb01eb4825d11a9eec10e3adc7b77", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentWrapper.d.ts": { - "version": "f97c565259f33fb50862df856fb3f9d26154f1312bce70653eed816325116de8", - "signature": "f97c565259f33fb50862df856fb3f9d26154f1312bce70653eed816325116de8", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-hide.d.ts": { + "version": "1ccb2f5e97324f22ee83b4229da8d81bf9b7ddfa77a0d0a2bcb9679001268f35", + "signature": "1ccb2f5e97324f22ee83b4229da8d81bf9b7ddfa77a0d0a2bcb9679001268f35", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/syntaxhighlighter-types.d.ts": { - "version": "c4efb5cddfca9550a8c9a2c4567accc5a492c13cce363af5873f7b635237abdb", - "signature": "c4efb5cddfca9550a8c9a2c4567accc5a492c13cce363af5873f7b635237abdb", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-offset.d.ts": { + "version": "465e7ffe794e98e26074637b52dba63ce805eb3c8e3085e8afa5b41a292a5571", + "signature": "465e7ffe794e98e26074637b52dba63ce805eb3c8e3085e8afa5b41a292a5571", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/lazy-syntaxhighlighter.d.ts": { - "version": "4434d2fc50415456a1b277933e070659c4550f4436f0656e8bc023ba3ec6ccb5", - "signature": "4434d2fc50415456a1b277933e070659c4550f4436f0656e8bc023ba3ec6ccb5", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts": { + "version": "41b2fbd1fae71e6cf35a1f3d8b29a7f447f71ac68f4585bb7b62392b716dbf9a", + "signature": "41b2fbd1fae71e6cf35a1f3d8b29a7f447f71ac68f4585bb7b62392b716dbf9a", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/ActionBar/ActionBar.d.ts": { - "version": "a8c7d890024436217c552d7ee727de94159fdd93e63754683531c9ff733cd879", - "signature": "a8c7d890024436217c552d7ee727de94159fdd93e63754683531c9ff733cd879", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts": { + "version": "bb8eea1ecf25c7d1f9c86b203e1b3899940f9ec35b2cfa33c9fdcd66062e0cdd", + "signature": "bb8eea1ecf25c7d1f9c86b203e1b3899940f9ec35b2cfa33c9fdcd66062e0cdd", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/spaced/Spaced.d.ts": { - "version": "44dbafca4ba7c48457808dc1b1e5dabaf9972c905c4d2a07889810738d98ccfa", - "signature": "44dbafca4ba7c48457808dc1b1e5dabaf9972c905c4d2a07889810738d98ccfa", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-arrow.d.ts": { + "version": "301bb63485343b6267d7c821989df36dc6efa454ac4f456fb8f90e058c013d62", + "signature": "301bb63485343b6267d7c821989df36dc6efa454ac4f456fb8f90e058c013d62", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/placeholder/placeholder.d.ts": { - "version": "a9875a01cbc9108187a30e011c7504151d21a122ce37cb2e1799a2a58468a373", - "signature": "a9875a01cbc9108187a30e011c7504151d21a122ce37cb2e1799a2a58468a373", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-preventOverflow.d.ts": { + "version": "f3653dd73ca43257c2c9ee69643adaa4a6e26e9c31a5502371e86bdaecca43bd", + "signature": "f3653dd73ca43257c2c9ee69643adaa4a6e26e9c31a5502371e86bdaecca43bd", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/ScrollArea/ScrollArea.d.ts": { - "version": "30df5615342a739cbcc22aaa2ac12d7f84d85361f692e17addca56e8c5a27399", - "signature": "30df5615342a739cbcc22aaa2ac12d7f84d85361f692e17addca56e8c5a27399", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts": { + "version": "fe77cc0c8f877ae8ff2ec613dbb14c3114647541807d122bcf6cc3445a94f7be", + "signature": "fe77cc0c8f877ae8ff2ec613dbb14c3114647541807d122bcf6cc3445a94f7be", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomElement.d.ts": { - "version": "7b31ef8f0784839694fe5a4223d8dc47a3dc0ee2f8d3c358f55e5f4644530978", - "signature": "7b31ef8f0784839694fe5a4223d8dc47a3dc0ee2f8d3c358f55e5f4644530978", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts": { + "version": "10644ff9125d80c9bb8bb7a2ccfefe9901ece913e137e051c67d6bfe86c095f8", + "signature": "10644ff9125d80c9bb8bb7a2ccfefe9901ece913e137e051c67d6bfe86c095f8", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomIFrame.d.ts": { - "version": "8182035d23e884d8a1161fc44788131c10c6933006d0f674661f4aea0bc9d505", - "signature": "8182035d23e884d8a1161fc44788131c10c6933006d0f674661f4aea0bc9d505", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-index.d.ts": { + "version": "2b86e8fcecea2386744211221d8359392feb0c8bedad1bc47d5a9d3e2eb14f1a", + "signature": "2b86e8fcecea2386744211221d8359392feb0c8bedad1bc47d5a9d3e2eb14f1a", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/Zoom.d.ts": { - "version": "9005871246eccaed63b2db1e2698d64f16ff8558f2ec48d9c339f55887bb797d", - "signature": "9005871246eccaed63b2db1e2698d64f16ff8558f2ec48d9c339f55887bb797d", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-utils-detectOverflow.d.ts": { + "version": "315328470c8025b7526ebf7e15155eeab732e8707937a312f2d6182a3af705bf", + "signature": "315328470c8025b7526ebf7e15155eeab732e8707937a312f2d6182a3af705bf", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/Button/Button.d.ts": { - "version": "990197927d0a6e2c55f326c0a67d342b2e61967f5066fa19fa47c66e01150607", - "signature": "990197927d0a6e2c55f326c0a67d342b2e61967f5066fa19fa47c66e01150607", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-createPopper.d.ts": { + "version": "879191bc0b64aef1da65e7c20c6053fedf5129689f1964c74c9c01ec30af068c", + "signature": "879191bc0b64aef1da65e7c20c6053fedf5129689f1964c74c9c01ec30af068c", "affectsGlobalScope": false }, - "../../node_modules/react-textarea-autosize/dist/declarations/src/index.d.ts": { - "version": "d4990b42f1ac9307bffb12d35f57d89dbc7cf617c7eb01a791fcaa4a4069eaa6", - "signature": "d4990b42f1ac9307bffb12d35f57d89dbc7cf617c7eb01a791fcaa4a4069eaa6", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper-lite.d.ts": { + "version": "fe64aac747822416b108d06a7ae716e1edb88f3bf60bce30b453ebf5efb16fee", + "signature": "fe64aac747822416b108d06a7ae716e1edb88f3bf60bce30b453ebf5efb16fee", "affectsGlobalScope": false }, - "../../node_modules/react-textarea-autosize/dist/react-textarea-autosize.cjs.d.ts": { - "version": "e38d5bb0f0d07c2105b55ae8845df8c8271822186005469796be48c68058ef33", - "signature": "e38d5bb0f0d07c2105b55ae8845df8c8271822186005469796be48c68058ef33", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper.d.ts": { + "version": "85e88436b601e1d510bc136594d86efbf3be85829e797bac3c4a994ca4c4a4ef", + "signature": "85e88436b601e1d510bc136594d86efbf3be85829e797bac3c4a994ca4c4a4ef", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/form/input/input.d.ts": { - "version": "1ff53a8ed8cc1c0381e5164ac0223ad28db0362a378cc947bd611115d0b5840a", - "signature": "1ff53a8ed8cc1c0381e5164ac0223ad28db0362a378cc947bd611115d0b5840a", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-index.d.ts": { + "version": "f2204949e82f2793a54401b6612481d00ceb1a210c3dd499bebce85bb2bef4d0", + "signature": "f2204949e82f2793a54401b6612481d00ceb1a210c3dd499bebce85bb2bef4d0", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/form/field/field.d.ts": { - "version": "38945ba4ac440cc026146fa78bb60d4e05dc2caf04a401309a141c7242cd18d9", - "signature": "38945ba4ac440cc026146fa78bb60d4e05dc2caf04a401309a141c7242cd18d9", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-index.d.ts": { + "version": "4bdb1f3bdf25e7b03765b5b8bade429371e82270fc05d0f3a1f64f86ea087d46", + "signature": "4bdb1f3bdf25e7b03765b5b8bade429371e82270fc05d0f3a1f64f86ea087d46", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/form/index.d.ts": { - "version": "09674df3bdeefc2c9c7fe088612c18e183ca7d82c329cc8d33b17278c43f3e9c", - "signature": "09674df3bdeefc2c9c7fe088612c18e183ca7d82c329cc8d33b17278c43f3e9c", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/SBType.d.ts": { + "version": "3819fe3eacd5a1ce3dd8dfc14b81d7e558075e0b0078ecd49da69e4ba8f28d3d", + "signature": "3819fe3eacd5a1ce3dd8dfc14b81d7e558075e0b0078ecd49da69e4ba8f28d3d", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/enums.d.ts": { - "version": "3192b54876effeb978785858ec960ba7c57f81171070b5a0054a011ca09795f2", - "signature": "3192b54876effeb978785858ec960ba7c57f81171070b5a0054a011ca09795f2", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/story.d.ts": { + "version": "258b1dd7b027f299399832158c1a029fd7e28dd4626a4e36834561eacfe56179", + "signature": "258b1dd7b027f299399832158c1a029fd7e28dd4626a4e36834561eacfe56179", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts": { - "version": "869ac759ae8f304536d609082732cb025a08dcc38237fe619caf3fcdd41dde6f", - "signature": "869ac759ae8f304536d609082732cb025a08dcc38237fe619caf3fcdd41dde6f", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/includeConditionalArg.d.ts": { + "version": "0600b53c0d4016a371a7dd9902597271c3bfccd923bb226adcfd1a8baa712167", + "signature": "0600b53c0d4016a371a7dd9902597271c3bfccd923bb226adcfd1a8baa712167", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/modifiers/flip.d.ts": { - "version": "0ea900fe6565f9133e06bce92e3e9a4b5a69234e83d40b7df2e1752b8d2b5002", - "signature": "0ea900fe6565f9133e06bce92e3e9a4b5a69234e83d40b7df2e1752b8d2b5002", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts": { + "version": "216708d627d353eaddcafce82bbafb950f8443d7070235624d2c7db1abd465d0", + "signature": "216708d627d353eaddcafce82bbafb950f8443d7070235624d2c7db1abd465d0", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/modifiers/hide.d.ts": { - "version": "e5408f95ca9ac5997c0fea772d68b1bf390e16c2a8cad62858553409f2b12412", - "signature": "e5408f95ca9ac5997c0fea772d68b1bf390e16c2a8cad62858553409f2b12412", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-node_modules-@emotion-utils-types-index.d.ts": { + "version": "d5a13a18c3a97e3f6d3f65665394e3116b118b38b2dfc9ccb39194d1d26c6e2f", + "signature": "d5a13a18c3a97e3f6d3f65665394e3116b118b38b2dfc9ccb39194d1d26c6e2f", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/modifiers/offset.d.ts": { - "version": "c512c0e8912b562194a3664dbe894a13b962b7fdc5e6467049e5776c9c573093", - "signature": "c512c0e8912b562194a3664dbe894a13b962b7fdc5e6467049e5776c9c573093", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-types-index.d.ts": { + "version": "8e2016c42ede5c734eb0a94b00d51640e30aa97a112b2d3fe59c298073fadc10", + "signature": "8e2016c42ede5c734eb0a94b00d51640e30aa97a112b2d3fe59c298073fadc10", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts": { - "version": "9260b03453970e98ce9b1ad851275acd9c7d213c26c7d86bae096e8e9db4e62b", - "signature": "9260b03453970e98ce9b1ad851275acd9c7d213c26c7d86bae096e8e9db4e62b", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-csstype-index.d.ts": { + "version": "c0baae199c9fcc1f40058571a983a489bd588b2860a6c79500e4164c06343bae", + "signature": "c0baae199c9fcc1f40058571a983a489bd588b2860a6c79500e4164c06343bae", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts": { - "version": "c47202f28798de29986d7c1fcca4be4031fb72cd1c0dab001a8c9b19eddc7e07", - "signature": "c47202f28798de29986d7c1fcca4be4031fb72cd1c0dab001a8c9b19eddc7e07", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-@emotion-serialize-types-index.d.ts": { + "version": "493b5bb976698cbda433f71e1617894a1513db80a9581cd48a365dcaa2c78854", + "signature": "493b5bb976698cbda433f71e1617894a1513db80a9581cd48a365dcaa2c78854", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/modifiers/arrow.d.ts": { - "version": "969132719f0f5822e669f6da7bd58ea0eb47f7899c1db854f8f06379f753b365", - "signature": "969132719f0f5822e669f6da7bd58ea0eb47f7899c1db854f8f06379f753b365", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-jsx-namespace.d.ts": { + "version": "7f416cb892e1bcc7f4b2380683880295bec7952c4509db9e4639ca6a57ac9e5c", + "signature": "7f416cb892e1bcc7f4b2380683880295bec7952c4509db9e4639ca6a57ac9e5c", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.d.ts": { - "version": "8854881635098c8842b5e489272fc951546b2767e4f447a88ca9ce50a6ca9d34", - "signature": "8854881635098c8842b5e489272fc951546b2767e4f447a88ca9ce50a6ca9d34", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-helper.d.ts": { + "version": "b96c3d1818bd4bbbea0d4dc88b655fde0726c4e25396a26ecae8dad4214770c8", + "signature": "b96c3d1818bd4bbbea0d4dc88b655fde0726c4e25396a26ecae8dad4214770c8", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts": { - "version": "2cbc88cf54c50e74ee5642c12217e6fd5415e1b35232d5666d53418bae210b3b", - "signature": "2cbc88cf54c50e74ee5642c12217e6fd5415e1b35232d5666d53418bae210b3b", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-theming.d.ts": { + "version": "9b5160542dfed4cc0e29c74951a4cfd7b104e747786a54e509e166a8997ae0b2", + "signature": "9b5160542dfed4cc0e29c74951a4cfd7b104e747786a54e509e166a8997ae0b2", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/types.d.ts": { - "version": "b96e8e3de3b3f500d50aefe067db5e2f3d8fdd51dc002727038c1b19c483205c", - "signature": "b96e8e3de3b3f500d50aefe067db5e2f3d8fdd51dc002727038c1b19c483205c", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-index.d.ts": { + "version": "404f351724fb0d4bbc0979382270e0ee6a34459e444c3e5a3ff54eb6e4bbbc85", + "signature": "404f351724fb0d4bbc0979382270e0ee6a34459e444c3e5a3ff54eb6e4bbbc85", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/modifiers/index.d.ts": { - "version": "5ea98f44cc9de1fe05d037afe4813f3dcd3a8c5de43bdd7db24624a364fad8e6", - "signature": "5ea98f44cc9de1fe05d037afe4813f3dcd3a8c5de43bdd7db24624a364fad8e6", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-is-prop-valid-types-index.d.ts": { + "version": "c4bd70cb1460b734356a2f3e9e8de73dbfbc5674a5fcf81953eb2e7da92c9088", + "signature": "c4bd70cb1460b734356a2f3e9e8de73dbfbc5674a5fcf81953eb2e7da92c9088", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/utils/detectOverflow.d.ts": { - "version": "3a1e3199054ae95161fc6a8418ee28cd774f1a258d1b0ee14aa71c48a1f8448c", - "signature": "3a1e3199054ae95161fc6a8418ee28cd774f1a258d1b0ee14aa71c48a1f8448c", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts": { + "version": "45a7e51ae2a7d0f6e21bd1d578fc60dab6f86b99d487cbc10d599d6730accf40", + "signature": "45a7e51ae2a7d0f6e21bd1d578fc60dab6f86b99d487cbc10d599d6730accf40", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/createPopper.d.ts": { - "version": "0b3fc2d2d41ad187962c43cb38117d0aee0d3d515c8a6750aaea467da76b42aa", - "signature": "0b3fc2d2d41ad187962c43cb38117d0aee0d3d515c8a6750aaea467da76b42aa", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@types-prettier-index.d.ts": { + "version": "d762221685a4cc2eb03742207ea5afb2eff45e25c51fb1b9cc5a0443eaa591ee", + "signature": "d762221685a4cc2eb03742207ea5afb2eff45e25c51fb1b9cc5a0443eaa591ee", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/popper-lite.d.ts": { - "version": "ed219f328224100dad91505388453a8c24a97367d1bc13dcec82c72ab13012b7", - "signature": "ed219f328224100dad91505388453a8c24a97367d1bc13dcec82c72ab13012b7", + "../../node_modules/react-textarea-autosize/dist/declarations/src/index.d.ts": { + "version": "d4990b42f1ac9307bffb12d35f57d89dbc7cf617c7eb01a791fcaa4a4069eaa6", + "signature": "d4990b42f1ac9307bffb12d35f57d89dbc7cf617c7eb01a791fcaa4a4069eaa6", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/popper.d.ts": { - "version": "6847b17c96eb44634daa112849db0c9ade344fe23e6ced190b7eeb862beca9f4", - "signature": "6847b17c96eb44634daa112849db0c9ade344fe23e6ced190b7eeb862beca9f4", + "../../node_modules/react-textarea-autosize/dist/react-textarea-autosize.cjs.d.ts": { + "version": "e38d5bb0f0d07c2105b55ae8845df8c8271822186005469796be48c68058ef33", + "signature": "e38d5bb0f0d07c2105b55ae8845df8c8271822186005469796be48c68058ef33", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/index.d.ts": { - "version": "d479a5128f27f63b58d57a61e062bd68fa43b684271449a73a4d3e3666a599a7", - "signature": "d479a5128f27f63b58d57a61e062bd68fa43b684271449a73a4d3e3666a599a7", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts": { + "version": "944099a919152ebdbc12d1ef3506960b773a30d82dda608fac27b34805b8a6ca", + "signature": "944099a919152ebdbc12d1ef3506960b773a30d82dda608fac27b34805b8a6ca", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/index.d.ts": { - "version": "6f308b141358ac799edc3e83e887441852205dc1348310d30b62c69438b93ca0", - "signature": "6f308b141358ac799edc3e83e887441852205dc1348310d30b62c69438b93ca0", + "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Anchor.d.ts": { + "version": "250b248631e324bcfa82caa03d8f48ad08cb2903e659e09eb7951ec28c68ad77", + "signature": "250b248631e324bcfa82caa03d8f48ad08cb2903e659e09eb7951ec28c68ad77", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/WithTooltip.d.ts": { - "version": "f4205476566ce5a01be9767692f15cc3cd323e7979754023f86fc303dc912c2a", - "signature": "f4205476566ce5a01be9767692f15cc3cd323e7979754023f86fc303dc912c2a", + "../../node_modules/synchronous-promise/index.d.ts": { + "version": "aa9e4a9713ef35a17d2c37648e6bca646b94d80e8109b792c6e199f2d76803ce", + "signature": "aa9e4a9713ef35a17d2c37648e6bca646b94d80e8109b792c6e199f2d76803ce", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/lazy-WithTooltip.d.ts": { - "version": "f1f7f3857a41db1a188a3881bc8ce8db1b0f9d76715607e2807bbfb94285888d", - "signature": "f1f7f3857a41db1a188a3881bc8ce8db1b0f9d76715607e2807bbfb94285888d", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts": { + "version": "01b6d577a343d4e23ca5a754f6a6f24da5fa3602d445d348fd1d4f873e7feed7", + "signature": "01b6d577a343d4e23ca5a754f6a6f24da5fa3602d445d348fd1d4f873e7feed7", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipMessage.d.ts": { - "version": "ea26aafe49ae12b18e146cfd587c1627eb35fa6d918b7ec4d54019d512e6d530", - "signature": "ea26aafe49ae12b18e146cfd587c1627eb35fa6d918b7ec4d54019d512e6d530", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-node_modules-history-index.d.ts": { + "version": "9b58062dfd12d175438e555f7f1260fc17ed16be9349b274992b3f6eb5f06f91", + "signature": "9b58062dfd12d175438e555f7f1260fc17ed16be9349b274992b3f6eb5f06f91", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipNote.d.ts": { - "version": "224ae7123b17c372d05507c29b1d90ceaa004384ca7f179e1e4d60f861f869d1", - "signature": "224ae7123b17c372d05507c29b1d90ceaa004384ca7f179e1e4d60f861f869d1", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-index.d.ts": { + "version": "a1526bcc0d8e16ba995308658d87520f2fccdfa64f7c3f238cf980a451beb3d2", + "signature": "a1526bcc0d8e16ba995308658d87520f2fccdfa64f7c3f238cf980a451beb3d2", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/ListItem.d.ts": { - "version": "7da3d88ad0c75495b2fd801bea91558c772141377df1d1d15aca7243624a8d88", - "signature": "7da3d88ad0c75495b2fd801bea91558c772141377df1d1d15aca7243624a8d88", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-dom-index.d.ts": { + "version": "22d48ca9006891e4e3b0b4d602fa9b8fb8ff0c6928b0a84ea618887df8f63b95", + "signature": "22d48ca9006891e4e3b0b4d602fa9b8fb8ff0c6928b0a84ea618887df8f63b95", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipLinkList.d.ts": { - "version": "de6918d94f3a0df16fc912690290fef4ad0b76f09780da3bd24c3e6d1b0c9cd8", - "signature": "de6918d94f3a0df16fc912690290fef4ad0b76f09780da3bd24c3e6d1b0c9cd8", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts": { + "version": "c1d2194b4578458e0484fc2a3a93149d23fbcd1d84e22731b4fe0682122a9611", + "signature": "c1d2194b4578458e0484fc2a3a93149d23fbcd1d84e22731b4fe0682122a9611", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/tabs/tabs.d.ts": { - "version": "5da0e8489def7f04c7b0947da04b0fc0653bdf9e3739e29cd2dcfdcedd98f36c", - "signature": "5da0e8489def7f04c7b0947da04b0fc0653bdf9e3739e29cd2dcfdcedd98f36c", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/store.d.ts": { + "version": "686b6ae9d67f0e7e507df696ef6a4a3768bd826552b816b31ef370d2ede1a8f8", + "signature": "686b6ae9d67f0e7e507df696ef6a4a3768bd826552b816b31ef370d2ede1a8f8", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/bar/button.d.ts": { - "version": "6a98254aa6ecbdf88511d9e5657210db51f58a6f06a078872e75438dbef710dd", - "signature": "6a98254aa6ecbdf88511d9e5657210db51f58a6f06a078872e75438dbef710dd", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts": { + "version": "2d040083050c4c256e22023474c583207be1d1daf1a1ebdb926a3d55da42466e", + "signature": "2d040083050c4c256e22023474c583207be1d1daf1a1ebdb926a3d55da42466e", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/bar/separator.d.ts": { - "version": "2843274da43dafd1a006c3abf53027297c4f6c7a8a07ed720aa29ade5bab0b97", - "signature": "2843274da43dafd1a006c3abf53027297c4f6c7a8a07ed720aa29ade5bab0b97", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts": { + "version": "51aba13210f26f71049eb1f88288fb713710ff23e77ecaf53bf2204addf5549e", + "signature": "51aba13210f26f71049eb1f88288fb713710ff23e77ecaf53bf2204addf5549e", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/bar/bar.d.ts": { - "version": "57a11e63068bff37cb05310cb638dad8e69a933ca4a8adf866670c482e566a10", - "signature": "57a11e63068bff37cb05310cb638dad8e69a933ca4a8adf866670c482e566a10", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts": { + "version": "d018c0d3a749e92806dc5fab86754c75d527909cb89b3d3d60180ec19f8d2919", + "signature": "d018c0d3a749e92806dc5fab86754c75d527909cb89b3d3d60180ec19f8d2919", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/addon-panel/addon-panel.d.ts": { - "version": "b3ff83c15f296507e6cb9f875eb9c299f03ea1b4ab4bda70cf0fda1e786503e9", - "signature": "b3ff83c15f296507e6cb9f875eb9c299f03ea1b4ab4bda70cf0fda1e786503e9", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts": { + "version": "81bacfecad02d28e47c74c25699de0cce3fe2edfa667c99c94ff3c0dc83beba3", + "signature": "81bacfecad02d28e47c74c25699de0cce3fe2edfa667c99c94ff3c0dc83beba3", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/icon/icons.d.ts": { - "version": "0c78968a032eaac4892518fb08fe092ab94d96f8dc3f52012382a731bfef1456", - "signature": "0c78968a032eaac4892518fb08fe092ab94d96f8dc3f52012382a731bfef1456", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts": { + "version": "b14f81d8c602e5d94bf492ead26e9ffe71f99526634b64c0f5defdf055b14b5f", + "signature": "b14f81d8c602e5d94bf492ead26e9ffe71f99526634b64c0f5defdf055b14b5f", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/icon/svg.d.ts": { - "version": "435ae1f04887bb884d6e0a788d7032a079e8cd0a786bbb49bf8a293112bcb61f", - "signature": "435ae1f04887bb884d6e0a788d7032a079e8cd0a786bbb49bf8a293112bcb61f", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts": { + "version": "680b439e5d9b6007a32e9b618fcd5647f3a76f5f997e138916350f148aa0aca5", + "signature": "680b439e5d9b6007a32e9b618fcd5647f3a76f5f997e138916350f148aa0aca5", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/icon/icon.d.ts": { - "version": "0f3b8aebc25f55e110865c4c31537cc61370a825aa6ccb3f10b643c9b0cac7cc", - "signature": "0f3b8aebc25f55e110865c4c31537cc61370a825aa6ccb3f10b643c9b0cac7cc", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/notifications.d.ts": { + "version": "e3b722a666a5b0728207649560f8634f855cd8b521ef8f6d39defdc500036212", + "signature": "e3b722a666a5b0728207649560f8634f855cd8b521ef8f6d39defdc500036212", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookLogo.d.ts": { - "version": "8b092618c0f59fe387916c4da4a73de9ba5fe3b0859a56e12f63277097b8a10f", - "signature": "8b092618c0f59fe387916c4da4a73de9ba5fe3b0859a56e12f63277097b8a10f", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/settings.d.ts": { + "version": "7c5c50c6839fe85d8f422d8cb7a5e52aedd673c06d2ee786fc95054f1448db52", + "signature": "7c5c50c6839fe85d8f422d8cb7a5e52aedd673c06d2ee786fc95054f1448db52", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookIcon.d.ts": { - "version": "38e8569cc9571bbc7f54af6e35af4da8d3bd19806b7b54e5ea1f95be04bdaae0", - "signature": "38e8569cc9571bbc7f54af6e35af4da8d3bd19806b7b54e5ea1f95be04bdaae0", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/release-notes.d.ts": { + "version": "78804759f7c183abd4f019d4bf3edf6379b96f96b4c2d1878d326f0c90a38f5e", + "signature": "78804759f7c183abd4f019d4bf3edf6379b96f96b4c2d1878d326f0c90a38f5e", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Description.d.ts": { - "version": "504f73082e3c55dc806b318c7f2d8359f2a11882fc74326aa8355127601f5100", - "signature": "504f73082e3c55dc806b318c7f2d8359f2a11882fc74326aa8355127601f5100", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts": { + "version": "12ecdacad8c21850ae87bdb1cca66d9abb7bb9134dd529e09f9ca0ba6e940113", + "signature": "12ecdacad8c21850ae87bdb1cca66d9abb7bb9134dd529e09f9ca0ba6e940113", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/DocsPage.d.ts": { - "version": "2bf19d29f8dfa21d3b1e9d02240a6ab00dfb3d9e4e0c19a6e2bae7a9cd6d55d3", - "signature": "2bf19d29f8dfa21d3b1e9d02240a6ab00dfb3d9e4e0c19a6e2bae7a9cd6d55d3", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/shortcuts.d.ts": { + "version": "be0f8f1c65c7180cb2aa800ae419c5ccd210db5dfea4b6c6df24d7007735e566", + "signature": "be0f8f1c65c7180cb2aa800ae419c5ccd210db5dfea4b6c6df24d7007735e566", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Source.d.ts": { - "version": "e6302abcc277710b37d987bd3ac0f4d07a8a84d4e164c38ff5c6b1d24c376667", - "signature": "e6302abcc277710b37d987bd3ac0f4d07a8a84d4e164c38ff5c6b1d24c376667", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts": { + "version": "ed71dce0839801ca53924ab04bcd89af607d9c0c7eeca227320ec17ba1809188", + "signature": "ed71dce0839801ca53924ab04bcd89af607d9c0c7eeca227320ec17ba1809188", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Preview.d.ts": { - "version": "59e5539e2bb1eb03de643e0d12115bb62800eb9f62872477497c965dfe67fdbb", - "signature": "59e5539e2bb1eb03de643e0d12115bb62800eb9f62872477497c965dfe67fdbb", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts": { + "version": "3dc46c51642f9f56f39de16d3b1284dcde63c9ab0e5e1e38e7c4529b5b622be8", + "signature": "3dc46c51642f9f56f39de16d3b1284dcde63c9ab0e5e1e38e7c4529b5b622be8", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/types.d.ts": { - "version": "f0173b9051458c6085f2759727a13b0bf583f92eeff1c119ad4ac660ee892eba", - "signature": "f0173b9051458c6085f2759727a13b0bf583f92eeff1c119ad4ac660ee892eba", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts": { + "version": "72b59c94d34c84ce052b4b24c8fa5b0d47e7ca844b6636153e3a86d2c93c8564", + "signature": "72b59c94d34c84ce052b4b24c8fa5b0d47e7ca844b6636153e3a86d2c93c8564", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/ArgsTable.d.ts": { - "version": "1ad5d74fbdd4d8ab340e65591bd3c66236326892facfb1a747b2a6084afea213", - "signature": "1ad5d74fbdd4d8ab340e65591bd3c66236326892facfb1a747b2a6084afea213", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts": { + "version": "5436e36fbe03e542893a436946c0f162e8883c4313069e1dd3cd82598499e8a7", + "signature": "5436e36fbe03e542893a436946c0f162e8883c4313069e1dd3cd82598499e8a7", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/TabbedArgsTable.d.ts": { - "version": "ffc417b36bb84e55290842204f0be5eabec0daf179f019a9219ddf2d7dc3ebaa", - "signature": "ffc417b36bb84e55290842204f0be5eabec0daf179f019a9219ddf2d7dc3ebaa", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts": { + "version": "d2083b0b7a04a627a9d42a8e082a58ae3e56d6b3f8d6f2bbbca044d3a08d44e8", + "signature": "d2083b0b7a04a627a9d42a8e082a58ae3e56d6b3f8d6f2bbbca044d3a08d44e8", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/NoControlsWarning.d.ts": { - "version": "1bd5217982b2bf7eeb6d0f87ab0ee7b090744c2c8b096cc0c3d4985081521cab", - "signature": "1bd5217982b2bf7eeb6d0f87ab0ee7b090744c2c8b096cc0c3d4985081521cab", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts": { + "version": "8ed0d9eef1896e6db07f9336324c02a37e985a367e992cdaa039da7b2a85159c", + "signature": "8ed0d9eef1896e6db07f9336324c02a37e985a367e992cdaa039da7b2a85159c", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/index.d.ts": { - "version": "a9e5000632f6250a4267d7523948d5605d8b99cd870bef9a5c582c235e2c1a52", - "signature": "a9e5000632f6250a4267d7523948d5605d8b99cd870bef9a5c582c235e2c1a52", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/index.d.ts": { + "version": "69f986e166d7243f2bd6897df34665c6c01a2488bc60f451616041571c96c9b0", + "signature": "69f986e166d7243f2bd6897df34665c6c01a2488bc60f451616041571c96c9b0", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Story.d.ts": { - "version": "f99c8045abb10ed1cddc40e6642fdd1d4802bbfc2e26ad30092413a1a37dad24", - "signature": "f99c8045abb10ed1cddc40e6642fdd1d4802bbfc2e26ad30092413a1a37dad24", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts": { + "version": "decbbbb4e857ed0c3c15d7dc1b8426825d1609cb2f697fea8aac2d03a9f4eab2", + "signature": "decbbbb4e857ed0c3c15d7dc1b8426825d1609cb2f697fea8aac2d03a9f4eab2", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IFrame.d.ts": { - "version": "16870ebef7d9d08a19a9bfaa488253f968ab4423e1d5e04f7c752f0917496ddb", - "signature": "16870ebef7d9d08a19a9bfaa488253f968ab4423e1d5e04f7c752f0917496ddb", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts": { + "version": "cb8ab172f02fb976eba76da4b5a8a6c8295a763bd0d86b56f4f86ee1becd3b8f", + "signature": "cb8ab172f02fb976eba76da4b5a8a6c8295a763bd0d86b56f4f86ee1becd3b8f", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Typeset.d.ts": { - "version": "d683d2364094aadc27d87cdeee8e9df01afc55ba2cc8d7ae9cd99225e96da004", - "signature": "d683d2364094aadc27d87cdeee8e9df01afc55ba2cc8d7ae9cd99225e96da004", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts": { + "version": "f4ed3dac2fdc0bc82db9e7d0b4bc8105718a028486bf298305dbbae9f722f061", + "signature": "f4ed3dac2fdc0bc82db9e7d0b4bc8105718a028486bf298305dbbae9f722f061", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ColorPalette.d.ts": { - "version": "0d0a11acf058175bc7ac423fad59a490ff77eec1cb6437287b918d88baa128b1", - "signature": "0d0a11acf058175bc7ac423fad59a490ff77eec1cb6437287b918d88baa128b1", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts": { + "version": "f9bc5842218fde992a60794f6a5d4510c95e205b042d2bfafcd20c0fb9c7f0d8", + "signature": "f9bc5842218fde992a60794f6a5d4510c95e205b042d2bfafcd20c0fb9c7f0d8", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IconGallery.d.ts": { - "version": "7e39367785f759fe002dd35c6a87cb0fe53a3f9ce228b008ad81f6c913ab27f6", - "signature": "7e39367785f759fe002dd35c6a87cb0fe53a3f9ce228b008ad81f6c913ab27f6", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts": { + "version": "c0116a9b831d5daef3fc83958e440c654510be1af0ed45c4ed91a045b05cab98", + "signature": "c0116a9b831d5daef3fc83958e440c654510be1af0ed45c4ed91a045b05cab98", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/blocks/index.d.ts": { - "version": "dbe3f9543a11118fbd6fb940939d265ef15e0d1de540661c2d9ca2e41f362dab", - "signature": "dbe3f9543a11118fbd6fb940939d265ef15e0d1de540661c2d9ca2e41f362dab", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryIndexStore.d.ts": { + "version": "cde3f5bb55085753c96e033163e9cdd78a2a8ff5a230fe0871759a2029434808", + "signature": "cde3f5bb55085753c96e033163e9cdd78a2a8ff5a230fe0871759a2029434808", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts": { - "version": "413a5da2ec2d57dba44a50caf28d401f1574298c38dcf61e7630f134ab661647", - "signature": "413a5da2ec2d57dba44a50caf28d401f1574298c38dcf61e7630f134ab661647", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/ArgsStore.d.ts": { + "version": "2bbd82adc9cc697aaac2e90613c6335c67e4126eb178d3a74d2a1f474a2eadd9", + "signature": "2bbd82adc9cc697aaac2e90613c6335c67e4126eb178d3a74d2a1f474a2eadd9", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/Array.d.ts": { - "version": "b2da7a9e821c5df34f4cff4e74fde5d869cd9cfa842cb29e8f939e4569d4a006", - "signature": "b2da7a9e821c5df34f4cff4e74fde5d869cd9cfa842cb29e8f939e4569d4a006", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/GlobalsStore.d.ts": { + "version": "1f6fe7edcaba89ca6f318528748c34499bde4d806e2d4fff9e8719c62072f2db", + "signature": "1f6fe7edcaba89ca6f318528748c34499bde4d806e2d4fff9e8719c62072f2db", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/Boolean.d.ts": { - "version": "04245b669827d1b0b9e56be1e33a4a388c1287da5bbb1e0e0dbfefb7db87b227", - "signature": "04245b669827d1b0b9e56be1e33a4a388c1287da5bbb1e0e0dbfefb7db87b227", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeInputTypes.d.ts": { + "version": "d817eff3a51d80f26a8d36eb045b82f33c6957eb3c3095d60963b3577d8a53e6", + "signature": "d817eff3a51d80f26a8d36eb045b82f33c6957eb3c3095d60963b3577d8a53e6", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/Color.d.ts": { - "version": "8d66c6001f9db9a8d3a732cbd97b9cfe9862ef4e530771ed074c9ffaea886546", - "signature": "8d66c6001f9db9a8d3a732cbd97b9cfe9862ef4e530771ed074c9ffaea886546", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeStory.d.ts": { + "version": "ec46a356d1e0ec3ccc32292f8873f5632d4d7bcbb813c145a0ea00d69ab6f337", + "signature": "ec46a356d1e0ec3ccc32292f8873f5632d4d7bcbb813c145a0ea00d69ab6f337", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/Date.d.ts": { - "version": "71c80528f0ae98b8527e89204fe6a3b45e209bef429e0d94ef2ae85c0294137d", - "signature": "71c80528f0ae98b8527e89204fe6a3b45e209bef429e0d94ef2ae85c0294137d", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/processCSFFile.d.ts": { + "version": "3ef12f8e64267589e928f32c74eb607130bf9429e4524d6c2f231d3813c69e7e", + "signature": "3ef12f8e64267589e928f32c74eb607130bf9429e4524d6c2f231d3813c69e7e", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/Number.d.ts": { - "version": "a8acd8868f1f922c56ecbded384fd7e752129b46f444a8a7b7e5c5f7c8c6a43b", - "signature": "a8acd8868f1f922c56ecbded384fd7e752129b46f444a8a7b7e5c5f7c8c6a43b", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/prepareStory.d.ts": { + "version": "6dbaf275aad9ca1c03cb06b2bb7c2bdfb9f1ac819a2db7d2be201fa9966d1f71", + "signature": "6dbaf275aad9ca1c03cb06b2bb7c2bdfb9f1ac819a2db7d2be201fa9966d1f71", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/Options.d.ts": { - "version": "420640664c21ee64f7923fcec4bfe7638b0533e1ce05a187c47325bcdf6f4500", - "signature": "420640664c21ee64f7923fcec4bfe7638b0533e1ce05a187c47325bcdf6f4500", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeComponentAnnotations.d.ts": { + "version": "8b60797bbe7bfc512f7411b4abb11a4cbcaedf40769a3e88434b31966a98918a", + "signature": "8b60797bbe7bfc512f7411b4abb11a4cbcaedf40769a3e88434b31966a98918a", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/index.d.ts": { - "version": "da2780126c0088a28592d3ddfd2f997109457e41381a7a83706188c0966d61aa", - "signature": "da2780126c0088a28592d3ddfd2f997109457e41381a7a83706188c0966d61aa", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeProjectAnnotations.d.ts": { + "version": "35d3d4b813d4514ddffaebf2b380eac3f9dcd9cd07470ac6a1ac2aa6997d57cb", + "signature": "35d3d4b813d4514ddffaebf2b380eac3f9dcd9cd07470ac6a1ac2aa6997d57cb", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/Object.d.ts": { - "version": "053120d217ea30f9748ff01d56953a0657c65bd0616be313fd73fda14b783b76", - "signature": "053120d217ea30f9748ff01d56953a0657c65bd0616be313fd73fda14b783b76", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/getValuesFromArgTypes.d.ts": { + "version": "a545cb0d7261d251ff8e339d957c97d782007ec41a5363dd6904e589793609b1", + "signature": "a545cb0d7261d251ff8e339d957c97d782007ec41a5363dd6904e589793609b1", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/Range.d.ts": { - "version": "12f26fe06a092c14fe8aa2c58077650d7c74bdd7b38efcac2851aaf6edb38a0b", - "signature": "12f26fe06a092c14fe8aa2c58077650d7c74bdd7b38efcac2851aaf6edb38a0b", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/composeConfigs.d.ts": { + "version": "a57e8d184f65cf64f7d07a560b2d053c77844e33ec437a4b3699dbea5c5b385d", + "signature": "a57e8d184f65cf64f7d07a560b2d053c77844e33ec437a4b3699dbea5c5b385d", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/Text.d.ts": { - "version": "a7545005a8d0f65ed0307a17cdde07e636e1aa762b2d6804107ab12a62d7109c", - "signature": "a7545005a8d0f65ed0307a17cdde07e636e1aa762b2d6804107ab12a62d7109c", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/types.d.ts": { + "version": "bd3b35401eb82df8da05fa50db2908e66bcc4dc7f93e1a39037491d6e75e16b9", + "signature": "bd3b35401eb82df8da05fa50db2908e66bcc4dc7f93e1a39037491d6e75e16b9", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/Files.d.ts": { - "version": "28f6bd0135271a7ca69011f733f217ae40a63eece5f1a682cc266c6cf45811cb", - "signature": "28f6bd0135271a7ca69011f733f217ae40a63eece5f1a682cc266c6cf45811cb", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/index.d.ts": { + "version": "a6203891fc766a9632cb2e305b73e01b90ddef0448beab9191d0cc49ac944f03", + "signature": "a6203891fc766a9632cb2e305b73e01b90ddef0448beab9191d0cc49ac944f03", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/controls/index.d.ts": { - "version": "bbaf4c1ba30e4fe5c9670dbf287f75ff13072740b6d5ae2d223e256058cdd793", - "signature": "bbaf4c1ba30e4fe5c9670dbf287f75ff13072740b6d5ae2d223e256058cdd793", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/index.d.ts": { + "version": "5983e53eaf3966d7191211359e362d3a528168cbba4d7e59a355a19fb919baf2", + "signature": "5983e53eaf3966d7191211359e362d3a528168cbba4d7e59a355a19fb919baf2", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/Loader/Loader.d.ts": { - "version": "1eb6844708a8d94d58f145850bd718cb2acd8170f2a86354b9ecd015415314e5", - "signature": "1eb6844708a8d94d58f145850bd718cb2acd8170f2a86354b9ecd015415314e5", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/hooks.d.ts": { + "version": "b99311df74481d1e0a5233f3986f6e3acede615c63f59793f9fc995123b36051", + "signature": "b99311df74481d1e0a5233f3986f6e3acede615c63f59793f9fc995123b36051", "affectsGlobalScope": false }, - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts": { - "version": "d32a96c399fbb650a6f0e669fe6008c57a347023b2a2e53f4aa1603e15fbde57", - "signature": "d32a96c399fbb650a6f0e669fe6008c57a347023b2a2e53f4aa1603e15fbde57", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryStore.d.ts": { + "version": "4d114335033a164073e9fb2320a24c5dc44525ab4e342ec25c01baef83b1041a", + "signature": "4d114335033a164073e9fb2320a24c5dc44525ab4e342ec25c01baef83b1041a", "affectsGlobalScope": false }, - "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Anchor.d.ts": { - "version": "250b248631e324bcfa82caa03d8f48ad08cb2903e659e09eb7951ec28c68ad77", - "signature": "250b248631e324bcfa82caa03d8f48ad08cb2903e659e09eb7951ec28c68ad77", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/parameters.d.ts": { + "version": "4b1a4bf2a32618f74b38745710130a89ac2d955a62e133ef05111a7eddf009f5", + "signature": "4b1a4bf2a32618f74b38745710130a89ac2d955a62e133ef05111a7eddf009f5", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts": { - "version": "210fa81aacaa89d0b09749baaf8f8297893f33c2be99da563fb73ca5c39aacfc", - "signature": "210fa81aacaa89d0b09749baaf8f8297893f33c2be99da563fb73ca5c39aacfc", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/filterArgTypes.d.ts": { + "version": "9c3d635be0246132dd76875a4bc3dac5139c644a436a488a45276c203f32b5d1", + "signature": "9c3d635be0246132dd76875a4bc3dac5139c644a436a488a45276c203f32b5d1", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/hooks.d.ts": { - "version": "b99311df74481d1e0a5233f3986f6e3acede615c63f59793f9fc995123b36051", - "signature": "b99311df74481d1e0a5233f3986f6e3acede615c63f59793f9fc995123b36051", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/inferControls.d.ts": { + "version": "a60b1a5dff484334ed305ceafdaf5fd6305dadc8b0d144e733fa9432580bdfe4", + "signature": "a60b1a5dff484334ed305ceafdaf5fd6305dadc8b0d144e733fa9432580bdfe4", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts": { - "version": "1bf91d37a08ba8ec3ab782002b15ae79d1be3e9ad54c8bac6c14615e66cf9192", - "signature": "1bf91d37a08ba8ec3ab782002b15ae79d1be3e9ad54c8bac6c14615e66cf9192", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/decorators.d.ts": { + "version": "cb9812c41f87bebeb12bdfca83f30e7084f68852c32b655435598a2710c4f428", + "signature": "cb9812c41f87bebeb12bdfca83f30e7084f68852c32b655435598a2710c4f428", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/client_api.d.ts": { - "version": "20f3e8e7a5e8ec10495a9740c71304bb910785c1c2fecdb678dbc08040ba4df8", - "signature": "20f3e8e7a5e8ec10495a9740c71304bb910785c1c2fecdb678dbc08040ba4df8", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/args.d.ts": { + "version": "c6ad9dd0fe7be2239514419f35b3fd3a10acecfdc9edb2e78bb6c9d7adb26acc", + "signature": "c6ad9dd0fe7be2239514419f35b3fd3a10acecfdc9edb2e78bb6c9d7adb26acc", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/decorators.d.ts": { - "version": "a2ae908421a0b34adc97fdb997bf4ba5f739c1609f26afabd8cffddf75eb6b2c", - "signature": "a2ae908421a0b34adc97fdb997bf4ba5f739c1609f26afabd8cffddf75eb6b2c", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/autoTitle.d.ts": { + "version": "f62b7e8866a79edcdbfde99dc5df8bd69045d8d275b992b855e1d1ca5f8de15d", + "signature": "f62b7e8866a79edcdbfde99dc5df8bd69045d8d275b992b855e1d1ca5f8de15d", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/parameters.d.ts": { - "version": "f28c53db804af1a03f44796f6e6974c625f78c5b2caf48da814be789c428de39", - "signature": "f28c53db804af1a03f44796f6e6974c625f78c5b2caf48da814be789c428de39", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/sortStories.d.ts": { + "version": "213f651eadbf5736883d63725669993618c3516567ccbd5a43f68b4319d4c3ab", + "signature": "213f651eadbf5736883d63725669993618c3516567ccbd5a43f68b4319d4c3ab", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/config_api.d.ts": { - "version": "d757d6d448845614be09acf8d59a25bc1889d9beb6435fca5273adf5746bdc26", - "signature": "d757d6d448845614be09acf8d59a25bc1889d9beb6435fca5273adf5746bdc26", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts": { + "version": "25ea2cf6abce2a6cd833d6c9f5ab298352a90d51a53d2e67fb330d77bf2a74c1", + "signature": "25ea2cf6abce2a6cd833d6c9f5ab298352a90d51a53d2e67fb330d77bf2a74c1", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/pathToId.d.ts": { - "version": "1deb18d0229913a06465d88e51baa9bc79a697a809fa5a402229482faec4c7d0", - "signature": "1deb18d0229913a06465d88e51baa9bc79a697a809fa5a402229482faec4c7d0", + "../../node_modules/@storybook/preview-web/node_modules/@storybook/store/dist/ts3.9/index.d.ts": { + "version": "25ea2cf6abce2a6cd833d6c9f5ab298352a90d51a53d2e67fb330d77bf2a74c1", + "signature": "25ea2cf6abce2a6cd833d6c9f5ab298352a90d51a53d2e67fb330d77bf2a74c1", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/simulate-pageload.d.ts": { - "version": "da3c50cff44e0f5753cb68ede19138f180c44ee4a014385ce1827d807c843044", - "signature": "da3c50cff44e0f5753cb68ede19138f180c44ee4a014385ce1827d807c843044", + "../../node_modules/@storybook/preview-web/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts": { + "version": "f9bc5842218fde992a60794f6a5d4510c95e205b042d2bfafcd20c0fb9c7f0d8", + "signature": "f9bc5842218fde992a60794f6a5d4510c95e205b042d2bfafcd20c0fb9c7f0d8", + "affectsGlobalScope": false + }, + "../../node_modules/@storybook/preview-web/node_modules/@storybook/csf/dist/index.d.ts": { + "version": "216708d627d353eaddcafce82bbafb950f8443d7070235624d2c7db1abd465d0", + "signature": "216708d627d353eaddcafce82bbafb950f8443d7070235624d2c7db1abd465d0", + "affectsGlobalScope": false + }, + "../../node_modules/@storybook/preview-web/dist/ts3.9/StoryRender.d.ts": { + "version": "a61589f2b3c7ec013ab1a46956717bbfe2f9b227a8f4f7332009691078149bdc", + "signature": "a61589f2b3c7ec013ab1a46956717bbfe2f9b227a8f4f7332009691078149bdc", "affectsGlobalScope": false }, "../../node_modules/@types/qs/index.d.ts": { @@ -2686,29 +3271,49 @@ "signature": "ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/queryparams.d.ts": { - "version": "e33895d3b72e4279114fba73981ecefef45a592b7f973e27d841523c18b2e560", - "signature": "e33895d3b72e4279114fba73981ecefef45a592b7f973e27d841523c18b2e560", + "../../node_modules/@storybook/preview-web/dist/ts3.9/UrlStore.d.ts": { + "version": "2094ae647e2d1b8d07963784c2c8727ff617161c1aa5fda816cf0f5c488f5176", + "signature": "2094ae647e2d1b8d07963784c2c8727ff617161c1aa5fda816cf0f5c488f5176", + "affectsGlobalScope": false + }, + "../../node_modules/@storybook/preview-web/dist/ts3.9/WebView.d.ts": { + "version": "bcd6303d9800e015c698ffd617911da7d87231c52c0ca884cb2c64b6ebb288dc", + "signature": "bcd6303d9800e015c698ffd617911da7d87231c52c0ca884cb2c64b6ebb288dc", + "affectsGlobalScope": false + }, + "../../node_modules/@storybook/preview-web/dist/ts3.9/PreviewWeb.d.ts": { + "version": "3efc36769f2ba0ae41763d3befda58d0509972c0d6c059433726b14168371b2a", + "signature": "3efc36769f2ba0ae41763d3befda58d0509972c0d6c059433726b14168371b2a", + "affectsGlobalScope": false + }, + "../../node_modules/@storybook/preview-web/dist/ts3.9/types.d.ts": { + "version": "6f106ee9ec6b5fc4f5745e574cccf9d846f1a1bb3484dfd8caade3a19c427502", + "signature": "6f106ee9ec6b5fc4f5745e574cccf9d846f1a1bb3484dfd8caade3a19c427502", + "affectsGlobalScope": false + }, + "../../node_modules/@storybook/preview-web/dist/ts3.9/DocsRender.d.ts": { + "version": "713e20c42e54c0360d35de18aa1ca71afc7982f022bddf1c2e3c37fd8672e3d7", + "signature": "713e20c42e54c0360d35de18aa1ca71afc7982f022bddf1c2e3c37fd8672e3d7", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/filterArgTypes.d.ts": { - "version": "e6f3da6fa9db4fd4b63ad8ef9827b36b45dd1ade9763f2c3060d76403bb9b6ef", - "signature": "e6f3da6fa9db4fd4b63ad8ef9827b36b45dd1ade9763f2c3060d76403bb9b6ef", + "../../node_modules/@storybook/preview-web/dist/ts3.9/Preview.d.ts": { + "version": "094a15f5b6c62289c79b09f77c3f15493234d20905c76cdc8ddbadce546586cd", + "signature": "094a15f5b6c62289c79b09f77c3f15493234d20905c76cdc8ddbadce546586cd", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/inferControls.d.ts": { - "version": "444c4baad232757201b2aa08546b292adf9616238184d746589f9090d859ba35", - "signature": "444c4baad232757201b2aa08546b292adf9616238184d746589f9090d859ba35", + "../../node_modules/@storybook/preview-web/dist/ts3.9/simulate-pageload.d.ts": { + "version": "da3c50cff44e0f5753cb68ede19138f180c44ee4a014385ce1827d807c843044", + "signature": "da3c50cff44e0f5753cb68ede19138f180c44ee4a014385ce1827d807c843044", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/index.d.ts": { - "version": "007e18296bea27eba18e3a9d30b386b5459ba02cba689997af7e606f42b58d46", - "signature": "007e18296bea27eba18e3a9d30b386b5459ba02cba689997af7e606f42b58d46", + "../../node_modules/@storybook/preview-web/dist/ts3.9/index.d.ts": { + "version": "5d9009d31d2ed1aa576238e48ee1685a333825bd094c78b6db0aa98753de5860", + "signature": "5d9009d31d2ed1aa576238e48ee1685a333825bd094c78b6db0aa98753de5860", "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts": { - "version": "c166ee23297ea07f0679adc5a80932db2e19b1e1a08f23370f40d35990011f26", - "signature": "c166ee23297ea07f0679adc5a80932db2e19b1e1a08f23370f40d35990011f26", + "version": "4c18a046b90fcb997ce78a17593e15e017f9b650e208e7cec51fdd8ef8257906", + "signature": "4c18a046b90fcb997ce78a17593e15e017f9b650e208e7cec51fdd8ef8257906", "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts": { @@ -2717,18 +3322,18 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/ArgsTable.d.ts": { - "version": "42c448398ce0db5e77c4ed5834cfd09942461e72e0ba12a2bca547cbb90154c7", - "signature": "42c448398ce0db5e77c4ed5834cfd09942461e72e0ba12a2bca547cbb90154c7", + "version": "d284f7f538dd0771280bfdaa16f2bce265e5a4c523cb811241add7ad9c49e1d2", + "signature": "d284f7f538dd0771280bfdaa16f2bce265e5a4c523cb811241add7ad9c49e1d2", "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/SourceContainer.d.ts": { - "version": "97082fd774b3ee7e4a160b98e8e3251155422254f68aa3b287281db3e890b86c", - "signature": "97082fd774b3ee7e4a160b98e8e3251155422254f68aa3b287281db3e890b86c", + "version": "7ea37701766939dad12b398b26c679a0d764b14c1c0e1d5d7eb3e35e95cb192e", + "signature": "7ea37701766939dad12b398b26c679a0d764b14c1c0e1d5d7eb3e35e95cb192e", "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Source.d.ts": { - "version": "f5dd06e95182d36f40a4a74e1101fc334912202ddde5f7df6e48530c1fa39c5c", - "signature": "f5dd06e95182d36f40a4a74e1101fc334912202ddde5f7df6e48530c1fa39c5c", + "version": "822292515243dddebacf8e96da95449e882faabbf6b4ba266dc814cd9d3804f2", + "signature": "822292515243dddebacf8e96da95449e882faabbf6b4ba266dc814cd9d3804f2", "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Canvas.d.ts": { @@ -2737,8 +3342,8 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Description.d.ts": { - "version": "d6230bc7a3ec091c57dfd19bd4a8e99da6d46b9f9acf4ac4f968130fd709b320", - "signature": "d6230bc7a3ec091c57dfd19bd4a8e99da6d46b9f9acf4ac4f968130fd709b320", + "version": "f1a5745314d2c906c76dc0ecda7331f660b9be0af48a555b1780246cc69b1569", + "signature": "f1a5745314d2c906c76dc0ecda7331f660b9be0af48a555b1780246cc69b1569", "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsPage.d.ts": { @@ -2747,8 +3352,8 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContainer.d.ts": { - "version": "cb298cdb732f2db041567593b18557d35d16f07d152f7e2e3f9aa865a845d8ea", - "signature": "cb298cdb732f2db041567593b18557d35d16f07d152f7e2e3f9aa865a845d8ea", + "version": "0be3739571e690815667caa86a2d958059eb865fc3c3b91b4bf273db39ca5974", + "signature": "0be3739571e690815667caa86a2d958059eb865fc3c3b91b4bf273db39ca5974", "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsStory.d.ts": { @@ -2762,8 +3367,8 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Meta.d.ts": { - "version": "b90bfb92913223bed1067c21c47d831209e691e42729cf43e1c4df3dc69a76cc", - "signature": "b90bfb92913223bed1067c21c47d831209e691e42729cf43e1c4df3dc69a76cc", + "version": "8af18e43d163770210c864cf20ca38af96a1305e9fc859ba85df22e380bd45a1", + "signature": "8af18e43d163770210c864cf20ca38af96a1305e9fc859ba85df22e380bd45a1", "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Preview.d.ts": { @@ -2787,8 +3392,8 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Story.d.ts": { - "version": "d7632a180afe148ac9db67831b7e80c344cd3a2aa7f3ecf75930ca2fea6e8e56", - "signature": "d7632a180afe148ac9db67831b7e80c344cd3a2aa7f3ecf75930ca2fea6e8e56", + "version": "732e4524604e3d7a71cf50ec583b7ca82bd39572c235d9cf76dbccbb141dac92", + "signature": "732e4524604e3d7a71cf50ec583b7ca82bd39572c235d9cf76dbccbb141dac92", "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Subheading.d.ts": { @@ -2802,8 +3407,8 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Title.d.ts": { - "version": "49ad7872d5f60faa6531a8302902378548f0bf4b74d1592116b93bab0a8a16c4", - "signature": "49ad7872d5f60faa6531a8302902378548f0bf4b74d1592116b93bab0a8a16c4", + "version": "07ab0395291d10512686216bbfe42dbccd360361b73b0b99660a83ab44298db6", + "signature": "07ab0395291d10512686216bbfe42dbccd360361b73b0b99660a83ab44298db6", "affectsGlobalScope": false }, "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Wrapper.d.ts": { @@ -2836,6 +3441,11 @@ "signature": "b617398f019ba82a097256ca24979b66757355c5a665134acb94dc7350c39077", "affectsGlobalScope": false }, + "../../node_modules/@types/js-beautify/index.d.ts": { + "version": "d1f1f5d242211b8fac9e851f81788804b5e70ccbc235f6b554c040d5b8189a9e", + "signature": "d1f1f5d242211b8fac9e851f81788804b5e70ccbc235f6b554c040d5b8189a9e", + "affectsGlobalScope": false + }, "../../node_modules/@types/react-syntax-highlighter/index.d.ts": { "version": "cffd3848b7af4922d70028c805b7df5e8f0eac4a8d2410b0f55b47ca62c6c3a8", "signature": "cffd3848b7af4922d70028c805b7df5e8f0eac4a8d2410b0f55b47ca62c6c3a8", @@ -2846,9 +3456,19 @@ "signature": "c049825db31784c6ac8c54a28a5eefbed58217ba48e0593cecd1d3e4a2643667", "affectsGlobalScope": false }, + "../../node_modules/magic-string/index.d.ts": { + "version": "df66dd87e5338e59ca0550af424ba22c59a8f4b30b20a214b6ed250562b7c755", + "signature": "df66dd87e5338e59ca0550af424ba22c59a8f4b30b20a214b6ed250562b7c755", + "affectsGlobalScope": false + }, + "../../node_modules/@types/buble/index.d.ts": { + "version": "4df33232578477b818eb7d40c8558ccf4afde30e920f9503cd359307a1771d8a", + "signature": "4df33232578477b818eb7d40c8558ccf4afde30e920f9503cd359307a1771d8a", + "affectsGlobalScope": false + }, "../../node_modules/react-live/typings/react-live.d.ts": { - "version": "bb57f31fbd25d406dc0235b29487ab8657a21a04243f1497583582d58ab31188", - "signature": "bb57f31fbd25d406dc0235b29487ab8657a21a04243f1497583582d58ab31188", + "version": "b013051875308e8aaff1b6f36138118d20d56df97e517d4010a3b7541a9760c0", + "signature": "b013051875308e8aaff1b6f36138118d20d56df97e517d4010a3b7541a9760c0", "affectsGlobalScope": false }, "../../node_modules/@types/lz-string/index.d.ts": { @@ -2857,12 +3477,12 @@ "affectsGlobalScope": false }, "../../core/utils/docPage/sandbox.tsx": { - "version": "6c70e10e6aa88f898b74ed02875eb1800c7708662aaf1f1d61bcba67a28f134e", + "version": "fa32a88e58f145a1b918e19884ec83d499c5dee4aca041aa907bc75140e3ffe0", "signature": "ec75976cfd242c0840083d2bbb758c4799f37de71948af17eef2327c93663ec3", "affectsGlobalScope": false }, "../../core/utils/docPage/index.tsx": { - "version": "b38790a338611a5cf3e1f001f60a35813348cc937ad80d93140b18fb1aa1ff2d", + "version": "a467a7547190d689b2ff26262d64647d26ab5d25ce27d39fcbeb9d3f30ac56b0", "signature": "d793df693e1f566f2a7fd586a5ba76f93009c359e9795372d49bb1dafa1d2c00", "affectsGlobalScope": false }, @@ -2871,34 +3491,14 @@ "signature": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "affectsGlobalScope": true }, - "../../node_modules/jest-diff/build/types.d.ts": { - "version": "71ba0678a3c647f5c0706ae975c031ace0d464e60f9ce56eaa7f1678d065aab7", - "signature": "71ba0678a3c647f5c0706ae975c031ace0d464e60f9ce56eaa7f1678d065aab7", - "affectsGlobalScope": false - }, - "../../node_modules/jest-diff/build/index.d.ts": { - "version": "162c6f2951bd80ae6e16679378f382200b26bba9de8f255af3a2895fbfa670b4", - "signature": "162c6f2951bd80ae6e16679378f382200b26bba9de8f255af3a2895fbfa670b4", - "affectsGlobalScope": false - }, - "../../node_modules/@types/jest/index.d.ts": { - "version": "375c56b1890858dcdae495877f0ce3b694980adf64762e2fd3fbe78e3eac76ba", - "signature": "375c56b1890858dcdae495877f0ce3b694980adf64762e2fd3fbe78e3eac76ba", - "affectsGlobalScope": true - }, - "../../node_modules/@types/testing-library__jest-dom/index.d.ts": { - "version": "40bbeaccf39d6ad00da30e96553f0c4aa1b8a87535393c7fdf939170b639c95d", - "signature": "40bbeaccf39d6ad00da30e96553f0c4aa1b8a87535393c7fdf939170b639c95d", - "affectsGlobalScope": true - }, "../../scripts/setupTest.ts": { "version": "de3aa21dc85084def3697956dc52dfe93430780f76d43020f9dcbbb3cbd27338", "signature": "a46d66851af2c056e805fdd574bf5ec3adb1181c43c5e41f0a1c592e338afe64", "affectsGlobalScope": false }, "../../node_modules/@babel/types/lib/index.d.ts": { - "version": "7bfbdf19a5d95af4976a0c32188b836f66bd190cd94643ee06321ef0024d0deb", - "signature": "7bfbdf19a5d95af4976a0c32188b836f66bd190cd94643ee06321ef0024d0deb", + "version": "272c2dac4baaf7fdd2d7efeef0fa2547af54cc21883c5e138b8c4d1661697a54", + "signature": "272c2dac4baaf7fdd2d7efeef0fa2547af54cc21883c5e138b8c4d1661697a54", "affectsGlobalScope": false }, "../../node_modules/@types/babel__generator/index.d.ts": { @@ -2907,8 +3507,8 @@ "affectsGlobalScope": false }, "../../node_modules/@babel/parser/typings/babel-parser.d.ts": { - "version": "9ed0773022bff64bccb1f4dc772d584c4bfba68bb7f6a82cd17334c925954b96", - "signature": "9ed0773022bff64bccb1f4dc772d584c4bfba68bb7f6a82cd17334c925954b96", + "version": "64b867c61effed7b5bc0cc06b3d8eac23b067a3fba581fc7d3c292fa593e6a45", + "signature": "64b867c61effed7b5bc0cc06b3d8eac23b067a3fba581fc7d3c292fa593e6a45", "affectsGlobalScope": false }, "../../node_modules/@types/babel__template/index.d.ts": { @@ -2922,13 +3522,28 @@ "affectsGlobalScope": false }, "../../node_modules/@types/babel__core/index.d.ts": { - "version": "71c56bdaa82d7ce75a72d3c06c04fe10becec09bd9c4ef21776a2a055d3f428e", - "signature": "71c56bdaa82d7ce75a72d3c06c04fe10becec09bd9c4ef21776a2a055d3f428e", + "version": "80164ffebe1723a50e020a648e0623c026ff39be13c5cd45e6a82d0fcc06e2d0", + "signature": "80164ffebe1723a50e020a648e0623c026ff39be13c5cd45e6a82d0fcc06e2d0", + "affectsGlobalScope": false + }, + "../../node_modules/keyv/src/index.d.ts": { + "version": "92edb6e257fa64d3baae647490e041912684f5dc1f243d0aedd60b4b383ff50b", + "signature": "92edb6e257fa64d3baae647490e041912684f5dc1f243d0aedd60b4b383ff50b", + "affectsGlobalScope": false + }, + "../../node_modules/@types/http-cache-semantics/index.d.ts": { + "version": "cab425b5559edac18327eb2c3c0f47e7e9f71b667290b7689faafd28aac69eae", + "signature": "cab425b5559edac18327eb2c3c0f47e7e9f71b667290b7689faafd28aac69eae", + "affectsGlobalScope": false + }, + "../../node_modules/@types/responselike/index.d.ts": { + "version": "3cfb0cb51cc2c2e1b313d7c4df04dbf7e5bda0a133c6b309bf6af77cf614b971", + "signature": "3cfb0cb51cc2c2e1b313d7c4df04dbf7e5bda0a133c6b309bf6af77cf614b971", "affectsGlobalScope": false }, - "../../node_modules/@types/braces/index.d.ts": { - "version": "40304c033bb6e39f0eb01b106d29523950148dfc3cd547ddb500167871171281", - "signature": "40304c033bb6e39f0eb01b106d29523950148dfc3cd547ddb500167871171281", + "../../node_modules/@types/cacheable-request/index.d.ts": { + "version": "f992cd6cc0bcbaa4e6c810468c90f2d8595f8c6c3cf050c806397d3de8585562", + "signature": "f992cd6cc0bcbaa4e6c810468c90f2d8595f8c6c3cf050c806397d3de8585562", "affectsGlobalScope": false }, "../../node_modules/@types/color-name/index.d.ts": { @@ -2951,404 +3566,489 @@ "signature": "92bc42ed0e2d41559513fd457ee30d834c2f0fedb9ed5004c029cbf0ad2f8bd9", "affectsGlobalScope": false }, + "../../node_modules/@types/emscripten/index.d.ts": { + "version": "82fcf338bc21711d93d65f981a7182f9942d3ac1f268c4480537c9b62c89d10d", + "signature": "82fcf338bc21711d93d65f981a7182f9942d3ac1f268c4480537c9b62c89d10d", + "affectsGlobalScope": true + }, "../../node_modules/@types/estree/index.d.ts": { "version": "89ccbe04e737ce613f5f04990271cfa84901446350b8551b0555ddf19319723b", "signature": "89ccbe04e737ce613f5f04990271cfa84901446350b8551b0555ddf19319723b", "affectsGlobalScope": false }, - "../../node_modules/@types/node/assert/strict.d.ts": { - "version": "a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a", - "signature": "a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a", + "../../node_modules/@types/minimatch/index.d.ts": { + "version": "963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e", + "signature": "963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e", "affectsGlobalScope": false }, - "../../node_modules/@types/node/globals.d.ts": { - "version": "bf629ebbac2c65601bcb5c032644023a2b4b3b1151c0d1bf60ced7c35cc81b5d", - "signature": "bf629ebbac2c65601bcb5c032644023a2b4b3b1151c0d1bf60ced7c35cc81b5d", - "affectsGlobalScope": true - }, - "../../node_modules/@types/node/async_hooks.d.ts": { - "version": "0ddef426964b396f57357b9e61209dd558f7652dd06af5a35893d296c29dff7a", - "signature": "0ddef426964b396f57357b9e61209dd558f7652dd06af5a35893d296c29dff7a", + "../../node_modules/@types/glob/index.d.ts": { + "version": "a55ca8b5f8c6a8535bb26fac1e10132a5338234ca3d5b9ed739fbc8ef41c8075", + "signature": "a55ca8b5f8c6a8535bb26fac1e10132a5338234ca3d5b9ed739fbc8ef41c8075", "affectsGlobalScope": false }, - "../../node_modules/@types/node/buffer.d.ts": { - "version": "b0f339dfc10ee8baac59f7d37d24d963216311b8894a776bc0ed18b77de81fe2", - "signature": "b0f339dfc10ee8baac59f7d37d24d963216311b8894a776bc0ed18b77de81fe2", - "affectsGlobalScope": true - }, - "../../node_modules/@types/node/child_process.d.ts": { - "version": "ca3b86d3300cb6817ee3d161421db0b4994d168fb5820a33c89743bc73716292", - "signature": "ca3b86d3300cb6817ee3d161421db0b4994d168fb5820a33c89743bc73716292", + "../../node_modules/@types/graceful-fs/index.d.ts": { + "version": "3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba", + "signature": "3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba", "affectsGlobalScope": false }, - "../../node_modules/@types/node/cluster.d.ts": { - "version": "3669eaf567a388a01c91df316093c2c8f565ba4c27a4ae0866e45ec932472b15", - "signature": "3669eaf567a388a01c91df316093c2c8f565ba4c27a4ae0866e45ec932472b15", + "../../node_modules/@types/unist/index.d.ts": { + "version": "cddf5c26907c0b8378bc05543161c11637b830da9fadf59e02a11e675d11e180", + "signature": "cddf5c26907c0b8378bc05543161c11637b830da9fadf59e02a11e675d11e180", "affectsGlobalScope": false }, - "../../node_modules/@types/node/console.d.ts": { - "version": "5012207e217a67f821855e1ce3059e089953847e1ce0adff8186a46c459e96f7", - "signature": "5012207e217a67f821855e1ce3059e089953847e1ce0adff8186a46c459e96f7", - "affectsGlobalScope": true + "../../node_modules/@types/hast/index.d.ts": { + "version": "3d2cd8f3047fff04a71e7037a6a4cb9f4accb28dbd8c0d83164d414811025af0", + "signature": "3d2cd8f3047fff04a71e7037a6a4cb9f4accb28dbd8c0d83164d414811025af0", + "affectsGlobalScope": false }, - "../../node_modules/@types/node/constants.d.ts": { - "version": "82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4", - "signature": "82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4", + "../../node_modules/@types/html-minifier-terser/index.d.ts": { + "version": "70b34c8420d6226ed565d55f47fe04912d0ca0ad128825c5a06e018a3498db32", + "signature": "70b34c8420d6226ed565d55f47fe04912d0ca0ad128825c5a06e018a3498db32", "affectsGlobalScope": false }, - "../../node_modules/@types/node/crypto.d.ts": { - "version": "c9ea3bedb7f5bfb493e375136dc70723bded041efc311c654d06ab7a7d0280d8", - "signature": "c9ea3bedb7f5bfb493e375136dc70723bded041efc311c654d06ab7a7d0280d8", + "../../node_modules/@types/is-function/index.d.ts": { + "version": "de1d6e224048139baf7494237a9231be6bab9e990fb239c7825bfd38b06d8c90", + "signature": "de1d6e224048139baf7494237a9231be6bab9e990fb239c7825bfd38b06d8c90", "affectsGlobalScope": false }, - "../../node_modules/@types/node/dgram.d.ts": { - "version": "decd29e5c9dfd0159e88721a4986dff6b58d255012ade0cacba7130dc7abe3c1", - "signature": "decd29e5c9dfd0159e88721a4986dff6b58d255012ade0cacba7130dc7abe3c1", + "../../node_modules/@types/istanbul-lib-coverage/index.d.ts": { + "version": "de18acda71730bac52f4b256ce7511bb56cc21f6f114c59c46782eff2f632857", + "signature": "de18acda71730bac52f4b256ce7511bb56cc21f6f114c59c46782eff2f632857", "affectsGlobalScope": false }, - "../../node_modules/@types/node/diagnostics_channel.d.ts": { - "version": "7ed1067f8c4acf58cdaf97c0a755445a56a61b54ef70d59da7aa73743912b189", - "signature": "7ed1067f8c4acf58cdaf97c0a755445a56a61b54ef70d59da7aa73743912b189", + "../../node_modules/@types/istanbul-lib-report/index.d.ts": { + "version": "7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee", + "signature": "7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee", "affectsGlobalScope": false }, - "../../node_modules/@types/node/dns.d.ts": { - "version": "71e7ae0849476c298e522bc8a7b29e85a982f7b9ec90a133bf8f45a8c25d01c9", - "signature": "71e7ae0849476c298e522bc8a7b29e85a982f7b9ec90a133bf8f45a8c25d01c9", + "../../node_modules/@types/istanbul-reports/index.d.ts": { + "version": "f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0", + "signature": "f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0", "affectsGlobalScope": false }, - "../../node_modules/@types/node/dns/promises.d.ts": { - "version": "95f59cb29266f9a11b4eadd67b6b96268d8a0e0ab99a933df0d9b7ec5a42806b", - "signature": "95f59cb29266f9a11b4eadd67b6b96268d8a0e0ab99a933df0d9b7ec5a42806b", + "../../node_modules/@types/json-schema/index.d.ts": { + "version": "0359682c54e487c4cab2b53b2b4d35cc8dea4d9914bc6abcdb5701f8b8e745a4", + "signature": "0359682c54e487c4cab2b53b2b4d35cc8dea4d9914bc6abcdb5701f8b8e745a4", "affectsGlobalScope": false }, - "../../node_modules/@types/node/domain.d.ts": { - "version": "9c158ac9bc84d33422b85d4f274f47790e59b9729e739d4fc3f3abff8770d270", - "signature": "9c158ac9bc84d33422b85d4f274f47790e59b9729e739d4fc3f3abff8770d270", + "../../node_modules/@types/keyv/index.d.ts": { + "version": "fec943fdb3275eb6e006b35e04a8e2e99e9adf3f4b969ddf15315ac7575a93e4", + "signature": "fec943fdb3275eb6e006b35e04a8e2e99e9adf3f4b969ddf15315ac7575a93e4", "affectsGlobalScope": false }, - "../../node_modules/@types/node/events.d.ts": { - "version": "a976ad617bce5d95209068df27cb6ad69e367f2a72e193c7dbabb73dc35b533c", - "signature": "a976ad617bce5d95209068df27cb6ad69e367f2a72e193c7dbabb73dc35b533c", - "affectsGlobalScope": true + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts": { + "version": "675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8", + "signature": "675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8", + "affectsGlobalScope": false }, - "../../node_modules/@types/node/fs.d.ts": { - "version": "ae970d705be0b31839d7e773efc751ab00438f5c1ff36577cc2ac72c3156c44b", - "signature": "ae970d705be0b31839d7e773efc751ab00438f5c1ff36577cc2ac72c3156c44b", + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts": { + "version": "458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22", + "signature": "458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22", "affectsGlobalScope": false }, - "../../node_modules/@types/node/fs/promises.d.ts": { - "version": "252892c3bc1a3322a655e887671e4bb5dcaf7dcd5a6f5a78d210c64419733a8d", - "signature": "252892c3bc1a3322a655e887671e4bb5dcaf7dcd5a6f5a78d210c64419733a8d", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts": { + "version": "d70c026dd2eeaa974f430ea229230a1897fdb897dc74659deebe2afd4feeb08f", + "signature": "d70c026dd2eeaa974f430ea229230a1897fdb897dc74659deebe2afd4feeb08f", "affectsGlobalScope": false }, - "../../node_modules/@types/node/http.d.ts": { - "version": "f7d60b8a9be58779e95cce126c4a3c985497556257c4e323aa836e419f26e3aa", - "signature": "f7d60b8a9be58779e95cce126c4a3c985497556257c4e323aa836e419f26e3aa", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts": { + "version": "187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42", + "signature": "187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42", "affectsGlobalScope": false }, - "../../node_modules/@types/node/http2.d.ts": { - "version": "d421d2324434c851830535137ff327b6cc4e9eaa428745300ccb478d0113cb4b", - "signature": "d421d2324434c851830535137ff327b6cc4e9eaa428745300ccb478d0113cb4b", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts": { + "version": "febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6", + "signature": "febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6", "affectsGlobalScope": false }, - "../../node_modules/@types/node/https.d.ts": { - "version": "2b8374271ab2a2fff2efa2eca782782d94157121d7a12b7ec4827c8ba1a87abb", - "signature": "2b8374271ab2a2fff2efa2eca782782d94157121d7a12b7ec4827c8ba1a87abb", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts": { + "version": "98f9d826db9cd99d27a01a59ee5f22863df00ccf1aaf43e1d7db80ebf716f7c3", + "signature": "98f9d826db9cd99d27a01a59ee5f22863df00ccf1aaf43e1d7db80ebf716f7c3", "affectsGlobalScope": false }, - "../../node_modules/@types/node/inspector.d.ts": { - "version": "ed3129f404bfea369c236104e125d5f3885d78540f8f37d3c7e90f0c2449b50f", - "signature": "ed3129f404bfea369c236104e125d5f3885d78540f8f37d3c7e90f0c2449b50f", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts": { + "version": "0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e", + "signature": "0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e", "affectsGlobalScope": false }, - "../../node_modules/@types/node/module.d.ts": { - "version": "241dce6950eeec0a86f8c8f292b0e865b710083f0e3850decec889b46914a520", - "signature": "241dce6950eeec0a86f8c8f292b0e865b710083f0e3850decec889b46914a520", - "affectsGlobalScope": true + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts": { + "version": "00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a", + "signature": "00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a", + "affectsGlobalScope": false }, - "../../node_modules/@types/node/net.d.ts": { - "version": "298ca2d6112d194797d0e2eebf54867c84ac18fd0b60eb6e001467e8b5addcf7", - "signature": "298ca2d6112d194797d0e2eebf54867c84ac18fd0b60eb6e001467e8b5addcf7", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts": { + "version": "7a79ca84e4370ed2e1afaa99ff7d25194901916b7672e977d16f77af3b71342f", + "signature": "7a79ca84e4370ed2e1afaa99ff7d25194901916b7672e977d16f77af3b71342f", "affectsGlobalScope": false }, - "../../node_modules/@types/node/os.d.ts": { - "version": "8e8df21b9513f0a1de0e9bad48243f8aad8c065c7ab695074e7a6c276596cc62", - "signature": "8e8df21b9513f0a1de0e9bad48243f8aad8c065c7ab695074e7a6c276596cc62", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts": { + "version": "3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd", + "signature": "3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd", "affectsGlobalScope": false }, - "../../node_modules/@types/node/path.d.ts": { - "version": "1b7690edef33f9d150a4ac170d662a9dffedc08e4c9504ece603785007ffdba1", - "signature": "1b7690edef33f9d150a4ac170d662a9dffedc08e4c9504ece603785007ffdba1", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts": { + "version": "3cf0d343c2276842a5b617f22ba82af6322c7cfe8bb52238ffc0c491a3c21019", + "signature": "3cf0d343c2276842a5b617f22ba82af6322c7cfe8bb52238ffc0c491a3c21019", "affectsGlobalScope": false }, - "../../node_modules/@types/node/perf_hooks.d.ts": { - "version": "62d37937d7321b1df75292b92eb984babf32302748f200d8aabf67328b37bed0", - "signature": "62d37937d7321b1df75292b92eb984babf32302748f200d8aabf67328b37bed0", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts": { + "version": "df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9", + "signature": "df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9", "affectsGlobalScope": false }, - "../../node_modules/@types/node/process.d.ts": { - "version": "e8a92400cdf00bbbcc93ec1c57f8bad21cc0723c959ebc5da165ae3aa190e5a4", - "signature": "e8a92400cdf00bbbcc93ec1c57f8bad21cc0723c959ebc5da165ae3aa190e5a4", + "../../node_modules/@types/lodash/ts4.2/index.d.ts": { + "version": "6200960745bf1d8f99adecc0e7ecabf002d0bd641bd9d44ae27273988743ec56", + "signature": "6200960745bf1d8f99adecc0e7ecabf002d0bd641bd9d44ae27273988743ec56", "affectsGlobalScope": true }, - "../../node_modules/@types/node/punycode.d.ts": { - "version": "d1b323391b9604f2fa2cca0ddf206a951feb745fd36d400677447436cc7b4f8d", - "signature": "d1b323391b9604f2fa2cca0ddf206a951feb745fd36d400677447436cc7b4f8d", + "../../node_modules/@types/mdast/index.d.ts": { + "version": "2a2e2c6463bcf3c59f31bc9ab4b6ef963bbf7dffb049cd017e2c1834e3adca63", + "signature": "2a2e2c6463bcf3c59f31bc9ab4b6ef963bbf7dffb049cd017e2c1834e3adca63", "affectsGlobalScope": false }, - "../../node_modules/@types/node/querystring.d.ts": { - "version": "760bf13f54eafb24321fdc0d74e3293e3f2030527729a351370377169fc1442c", - "signature": "760bf13f54eafb24321fdc0d74e3293e3f2030527729a351370377169fc1442c", + "../../node_modules/@types/minimist/index.d.ts": { + "version": "209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05", + "signature": "209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05", "affectsGlobalScope": false }, - "../../node_modules/@types/node/readline.d.ts": { - "version": "0b28384ffe11674b35d97b9f91248d3f00f823fc4ffc67070e71206a5c7e6305", - "signature": "0b28384ffe11674b35d97b9f91248d3f00f823fc4ffc67070e71206a5c7e6305", + "../../node_modules/form-data/index.d.ts": { + "version": "736097ddbb2903bef918bb3b5811ef1c9c5656f2a73bd39b22a91b9cc2525e50", + "signature": "736097ddbb2903bef918bb3b5811ef1c9c5656f2a73bd39b22a91b9cc2525e50", "affectsGlobalScope": false }, - "../../node_modules/@types/node/repl.d.ts": { - "version": "695bfa2ca7a20a9d4e43f3b7a8af58ce76b12e094b07203bd9bf47345cba7626", - "signature": "695bfa2ca7a20a9d4e43f3b7a8af58ce76b12e094b07203bd9bf47345cba7626", + "../../node_modules/@types/node-fetch/externals.d.ts": { + "version": "3898e3dbe94b6fe529fbe8f0faee1309c1923100516d7a014b301955e52ece77", + "signature": "3898e3dbe94b6fe529fbe8f0faee1309c1923100516d7a014b301955e52ece77", "affectsGlobalScope": false }, - "../../node_modules/@types/node/stream.d.ts": { - "version": "187acc08c6fc060163b8df4c5103b4228b25d669efc74e31b84479a55ffa11af", - "signature": "187acc08c6fc060163b8df4c5103b4228b25d669efc74e31b84479a55ffa11af", + "../../node_modules/@types/node-fetch/index.d.ts": { + "version": "3663d1b50f356656a314e5df169bb51cb9d5fd75905fa703f75db6bb32030568", + "signature": "3663d1b50f356656a314e5df169bb51cb9d5fd75905fa703f75db6bb32030568", "affectsGlobalScope": false }, - "../../node_modules/@types/node/stream/promises.d.ts": { - "version": "1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff", - "signature": "1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff", + "../../node_modules/@types/normalize-package-data/index.d.ts": { + "version": "6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a", + "signature": "6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a", "affectsGlobalScope": false }, - "../../node_modules/@types/node/string_decoder.d.ts": { - "version": "912e95aafa5d85e0636eab990cdcfe2f288310dcd9ee5b7c028d8231e179e967", - "signature": "912e95aafa5d85e0636eab990cdcfe2f288310dcd9ee5b7c028d8231e179e967", + "../../node_modules/@types/npmlog/index.d.ts": { + "version": "fda7ad096a1619fbae01b3d869cc82e29116f22be50133ac8fb08cee21279acd", + "signature": "fda7ad096a1619fbae01b3d869cc82e29116f22be50133ac8fb08cee21279acd", "affectsGlobalScope": false }, - "../../node_modules/@types/node/timers.d.ts": { - "version": "93c6f408623f52df4fd29ed34f3e9cabbe2f4041a6c58ffe9df0f565bad441df", - "signature": "93c6f408623f52df4fd29ed34f3e9cabbe2f4041a6c58ffe9df0f565bad441df", - "affectsGlobalScope": true + "../../node_modules/@types/overlayscrollbars/index.d.ts": { + "version": "9751247ee3bbcf1c63592f0f4dafb44559680b2b3e5736b7f0578c6a737d74c8", + "signature": "9751247ee3bbcf1c63592f0f4dafb44559680b2b3e5736b7f0578c6a737d74c8", + "affectsGlobalScope": false }, - "../../node_modules/@types/node/timers/promises.d.ts": { - "version": "009f2558b6ae78151e24cc2f1a43bac7599a0a65ddffa9707a924ca1e354d4b2", - "signature": "009f2558b6ae78151e24cc2f1a43bac7599a0a65ddffa9707a924ca1e354d4b2", + "../../node_modules/@types/parse-json/index.d.ts": { + "version": "2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b", + "signature": "2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b", "affectsGlobalScope": false }, - "../../node_modules/@types/node/tls.d.ts": { - "version": "21ac36b32a69c93318314047186a9ee6d69d9644dab7cd8d8dc256e1031545a6", - "signature": "21ac36b32a69c93318314047186a9ee6d69d9644dab7cd8d8dc256e1031545a6", + "../../node_modules/@types/parse5/index.d.ts": { + "version": "c555dd691dd05955e99cd93dd99c685a65e5287813ccb5e6bfde951183248e26", + "signature": "c555dd691dd05955e99cd93dd99c685a65e5287813ccb5e6bfde951183248e26", "affectsGlobalScope": false }, - "../../node_modules/@types/node/trace_events.d.ts": { - "version": "4b465e7d07abea8e7cfe4e50a63b901a0a32e283f8a81eb7f569e623dc2a6a6a", - "signature": "4b465e7d07abea8e7cfe4e50a63b901a0a32e283f8a81eb7f569e623dc2a6a6a", + "../../node_modules/@types/pretty-hrtime/index.d.ts": { + "version": "c0a3ea3aee13c4946a6aefce3a6ab9292a40a29f6622cde0fda0b1067a1a1f5f", + "signature": "c0a3ea3aee13c4946a6aefce3a6ab9292a40a29f6622cde0fda0b1067a1a1f5f", "affectsGlobalScope": false }, - "../../node_modules/@types/node/tty.d.ts": { - "version": "0fe8b060f4143dcccc5e64f53cb630059304f9b52576cefd9ac5816b0e067c7f", - "signature": "0fe8b060f4143dcccc5e64f53cb630059304f9b52576cefd9ac5816b0e067c7f", + "../../node_modules/@types/reach__router/index.d.ts": { + "version": "94a274c882504de552300fc5d6be141820041e9e2c530064ea10a0b76e2f905f", + "signature": "94a274c882504de552300fc5d6be141820041e9e2c530064ea10a0b76e2f905f", "affectsGlobalScope": false }, - "../../node_modules/@types/node/url.d.ts": { - "version": "8e140f571d87ed63406cdb71a35790c40055f2a1b1e01269f93ba2fce6338f15", - "signature": "8e140f571d87ed63406cdb71a35790c40055f2a1b1e01269f93ba2fce6338f15", + "../../node_modules/@types/reactcss/index.d.ts": { + "version": "ebe77545478bf39a23059a3b0ea03d2c0e502d9c8e1122015e19213cd0815097", + "signature": "ebe77545478bf39a23059a3b0ea03d2c0e502d9c8e1122015e19213cd0815097", "affectsGlobalScope": false }, - "../../node_modules/@types/node/util.d.ts": { - "version": "1275061127b8f7878a6f745bd85a7053d17cc757037815fdceb532881d3062a6", - "signature": "1275061127b8f7878a6f745bd85a7053d17cc757037815fdceb532881d3062a6", + "../../node_modules/@types/react-color/lib/components/alpha/Alpha.d.ts": { + "version": "ad8c69f4a471cafdf093acdcdf3b444ae56b227b92024ae45f8c9c9c8be8afcc", + "signature": "ad8c69f4a471cafdf093acdcdf3b444ae56b227b92024ae45f8c9c9c8be8afcc", "affectsGlobalScope": false }, - "../../node_modules/@types/node/v8.d.ts": { - "version": "0a8c5fb0f16e51973f22f2e01791b9e8376203514e4b72f65a451afebc29f5a0", - "signature": "0a8c5fb0f16e51973f22f2e01791b9e8376203514e4b72f65a451afebc29f5a0", + "../../node_modules/@types/react-color/lib/components/block/Block.d.ts": { + "version": "71a6149f67a64b55baeddb83e5254e9e017c80c15a260d6f6b3a12deb3a575ed", + "signature": "71a6149f67a64b55baeddb83e5254e9e017c80c15a260d6f6b3a12deb3a575ed", "affectsGlobalScope": false }, - "../../node_modules/@types/node/vm.d.ts": { - "version": "c19d3a3bb01ac8c5d244c31eac930c451110a58b76ff7a2b82bdffed082e36f6", - "signature": "c19d3a3bb01ac8c5d244c31eac930c451110a58b76ff7a2b82bdffed082e36f6", + "../../node_modules/@types/react-color/lib/components/common/Checkboard.d.ts": { + "version": "6c881abb4a0e7579a9d5b63a7e4da3d98b094adf0f1d1fa75bbe433b9f3d7c27", + "signature": "6c881abb4a0e7579a9d5b63a7e4da3d98b094adf0f1d1fa75bbe433b9f3d7c27", "affectsGlobalScope": false }, - "../../node_modules/@types/node/worker_threads.d.ts": { - "version": "8ca49a6223d59be5b7228ad99800f01982a1f350eb61c1a195e77547121877bb", - "signature": "8ca49a6223d59be5b7228ad99800f01982a1f350eb61c1a195e77547121877bb", + "../../node_modules/@types/react-color/lib/components/chrome/Chrome.d.ts": { + "version": "66d6844502d7764a8e02b632228c4c5a95f7cac7bce1a0db07f0dcc377d3755b", + "signature": "66d6844502d7764a8e02b632228c4c5a95f7cac7bce1a0db07f0dcc377d3755b", "affectsGlobalScope": false }, - "../../node_modules/@types/node/zlib.d.ts": { - "version": "55d6f9768363cf0356f4c9fff535ed3c24c67c782a566238cd08fa11a6111940", - "signature": "55d6f9768363cf0356f4c9fff535ed3c24c67c782a566238cd08fa11a6111940", + "../../node_modules/@types/react-color/lib/components/circle/Circle.d.ts": { + "version": "2e1be3fee9ccef82555b2f039e8e100e0a176ee2d18b0de95e7da6a61e1e360a", + "signature": "2e1be3fee9ccef82555b2f039e8e100e0a176ee2d18b0de95e7da6a61e1e360a", "affectsGlobalScope": false }, - "../../node_modules/@types/node/globals.global.d.ts": { - "version": "ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e", - "signature": "ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e", - "affectsGlobalScope": true + "../../node_modules/@types/react-color/lib/components/compact/Compact.d.ts": { + "version": "5c48fc6096e361e639c1d0a9f7f066242bf757ace84843582d29c6813563055a", + "signature": "5c48fc6096e361e639c1d0a9f7f066242bf757ace84843582d29c6813563055a", + "affectsGlobalScope": false }, - "../../node_modules/@types/node/wasi.d.ts": { - "version": "437c2700eaa23c440e97dd4ba5883c75ee82fe8b64772af7bebaa99410776705", - "signature": "437c2700eaa23c440e97dd4ba5883c75ee82fe8b64772af7bebaa99410776705", + "../../node_modules/@types/react-color/lib/components/github/Github.d.ts": { + "version": "bebac54845e03ea36044fab99b5a51266cec2492fcd8a95bde6d5527a3174732", + "signature": "bebac54845e03ea36044fab99b5a51266cec2492fcd8a95bde6d5527a3174732", "affectsGlobalScope": false }, - "../../node_modules/@types/node/ts3.6/base.d.ts": { - "version": "de0e63feaddfdf1a7a92071f6e7897d86ca497499116433e99fe15bf4af32e01", - "signature": "de0e63feaddfdf1a7a92071f6e7897d86ca497499116433e99fe15bf4af32e01", + "../../node_modules/@types/react-color/lib/components/hue/Hue.d.ts": { + "version": "ef141fd0ac854fc92cbc9a13cd25a0ac87b3961f70d516f191bb3e29d3b183fe", + "signature": "ef141fd0ac854fc92cbc9a13cd25a0ac87b3961f70d516f191bb3e29d3b183fe", "affectsGlobalScope": false }, - "../../node_modules/@types/node/assert.d.ts": { - "version": "6b7029d09218b4187ca45dcde322bc413561b419551e0a6c938d72af37d53817", - "signature": "6b7029d09218b4187ca45dcde322bc413561b419551e0a6c938d72af37d53817", + "../../node_modules/@types/react-color/lib/components/material/Material.d.ts": { + "version": "a90c6f5554bd74f63aaf03751e6b79d01a457b59339b03d308c16af8f266cf47", + "signature": "a90c6f5554bd74f63aaf03751e6b79d01a457b59339b03d308c16af8f266cf47", "affectsGlobalScope": false }, - "../../node_modules/@types/node/base.d.ts": { - "version": "e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b", - "signature": "e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b", + "../../node_modules/@types/react-color/lib/components/photoshop/Photoshop.d.ts": { + "version": "7d5d42c18c62ef137b8830b7de8432b466c8f4d93fa8476ac36d2f69114fad1e", + "signature": "7d5d42c18c62ef137b8830b7de8432b466c8f4d93fa8476ac36d2f69114fad1e", "affectsGlobalScope": false }, - "../../node_modules/@types/node/index.d.ts": { - "version": "73e8de7786fd2ba696ea4fbd96f0a157b4fc148a25255b8c9199cb69423a7fce", - "signature": "73e8de7786fd2ba696ea4fbd96f0a157b4fc148a25255b8c9199cb69423a7fce", + "../../node_modules/@types/react-color/lib/components/sketch/Sketch.d.ts": { + "version": "484faf958ae025f8d1ce6cb9c75e12c2148190efc22151299d14d10e3601cbba", + "signature": "484faf958ae025f8d1ce6cb9c75e12c2148190efc22151299d14d10e3601cbba", "affectsGlobalScope": false }, - "../../node_modules/@types/minimatch/index.d.ts": { - "version": "8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649", - "signature": "8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649", + "../../node_modules/@types/react-color/lib/components/slider/Slider.d.ts": { + "version": "66ddf54cc3d66cdab1b69e6879af9876bbc30030f85e51ba8a73223339e65b85", + "signature": "66ddf54cc3d66cdab1b69e6879af9876bbc30030f85e51ba8a73223339e65b85", "affectsGlobalScope": false }, - "../../node_modules/@types/glob/index.d.ts": { - "version": "725b884357ba84171341a8e4cc08edf11417854fd069842ca6d22afb2e340e45", - "signature": "725b884357ba84171341a8e4cc08edf11417854fd069842ca6d22afb2e340e45", + "../../node_modules/@types/react-color/lib/components/swatches/Swatches.d.ts": { + "version": "734166f6ae00b52512304c153644963fd93cd152620231ea7a0560802c968d28", + "signature": "734166f6ae00b52512304c153644963fd93cd152620231ea7a0560802c968d28", "affectsGlobalScope": false }, - "../../node_modules/@types/glob-base/index.d.ts": { - "version": "d1ae472dde31ac39e68d52e1e21dcccba3989d146b7b8472f03525d0caad1775", - "signature": "d1ae472dde31ac39e68d52e1e21dcccba3989d146b7b8472f03525d0caad1775", + "../../node_modules/@types/react-color/lib/components/twitter/Twitter.d.ts": { + "version": "15ce0cfa537ada25e07633617a993a8e02827939c2128d39c010739f28a0379c", + "signature": "15ce0cfa537ada25e07633617a993a8e02827939c2128d39c010739f28a0379c", "affectsGlobalScope": false }, - "../../node_modules/@types/graceful-fs/index.d.ts": { - "version": "3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba", - "signature": "3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba", + "../../node_modules/@types/react-color/lib/components/common/ColorWrap.d.ts": { + "version": "a3868158152cc946c27c5e7b7803537c14cada9bb442c96c759c66b0d01f9eca", + "signature": "a3868158152cc946c27c5e7b7803537c14cada9bb442c96c759c66b0d01f9eca", "affectsGlobalScope": false }, - "../../node_modules/@types/unist/index.d.ts": { - "version": "cddf5c26907c0b8378bc05543161c11637b830da9fadf59e02a11e675d11e180", - "signature": "cddf5c26907c0b8378bc05543161c11637b830da9fadf59e02a11e675d11e180", + "../../node_modules/@types/react-color/index.d.ts": { + "version": "00ee901c4135af0d5688bee246d1e42ef7421cec93c32587e4814f744b95e2e8", + "signature": "00ee901c4135af0d5688bee246d1e42ef7421cec93c32587e4814f744b95e2e8", "affectsGlobalScope": false }, - "../../node_modules/@types/hast/index.d.ts": { - "version": "ac295e0d29ca135d7dca2069a6e57943ed18800754dbe8fcb3974fb9ce497c3c", - "signature": "ac295e0d29ca135d7dca2069a6e57943ed18800754dbe8fcb3974fb9ce497c3c", + "../../node_modules/@types/resolve/index.d.ts": { + "version": "2880728492d6a6baa55411d14cc42fa55714a24b1d1d27ff9a8a610abd47c761", + "signature": "2880728492d6a6baa55411d14cc42fa55714a24b1d1d27ff9a8a610abd47c761", "affectsGlobalScope": false }, - "../../node_modules/@types/html-minifier-terser/index.d.ts": { - "version": "70b34c8420d6226ed565d55f47fe04912d0ca0ad128825c5a06e018a3498db32", - "signature": "70b34c8420d6226ed565d55f47fe04912d0ca0ad128825c5a06e018a3498db32", + "../../node_modules/@types/semver/classes/semver.d.ts": { + "version": "2b93035328f7778d200252681c1d86285d501ed424825a18f81e4c3028aa51d9", + "signature": "2b93035328f7778d200252681c1d86285d501ed424825a18f81e4c3028aa51d9", "affectsGlobalScope": false }, - "../../node_modules/@types/is-function/index.d.ts": { - "version": "11ef35fa1e8aef8229ce6b62ac1a6a0761d1d4bb4de1538bce6d10762a919139", - "signature": "11ef35fa1e8aef8229ce6b62ac1a6a0761d1d4bb4de1538bce6d10762a919139", + "../../node_modules/@types/semver/functions/parse.d.ts": { + "version": "2ac9c8332c5f8510b8bdd571f8271e0f39b0577714d5e95c1e79a12b2616f069", + "signature": "2ac9c8332c5f8510b8bdd571f8271e0f39b0577714d5e95c1e79a12b2616f069", "affectsGlobalScope": false }, - "../../node_modules/@types/istanbul-lib-coverage/index.d.ts": { - "version": "de18acda71730bac52f4b256ce7511bb56cc21f6f114c59c46782eff2f632857", - "signature": "de18acda71730bac52f4b256ce7511bb56cc21f6f114c59c46782eff2f632857", + "../../node_modules/@types/semver/functions/valid.d.ts": { + "version": "42c21aa963e7b86fa00801d96e88b36803188018d5ad91db2a9101bccd40b3ff", + "signature": "42c21aa963e7b86fa00801d96e88b36803188018d5ad91db2a9101bccd40b3ff", "affectsGlobalScope": false }, - "../../node_modules/@types/istanbul-lib-report/index.d.ts": { - "version": "7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee", - "signature": "7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee", + "../../node_modules/@types/semver/functions/clean.d.ts": { + "version": "d31eb848cdebb4c55b4893b335a7c0cca95ad66dee13cbb7d0893810c0a9c301", + "signature": "d31eb848cdebb4c55b4893b335a7c0cca95ad66dee13cbb7d0893810c0a9c301", "affectsGlobalScope": false }, - "../../node_modules/@types/istanbul-reports/index.d.ts": { - "version": "f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0", - "signature": "f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0", + "../../node_modules/@types/semver/functions/inc.d.ts": { + "version": "77c1d91a129ba60b8c405f9f539e42df834afb174fe0785f89d92a2c7c16b77a", + "signature": "77c1d91a129ba60b8c405f9f539e42df834afb174fe0785f89d92a2c7c16b77a", "affectsGlobalScope": false }, - "../../node_modules/@types/json-schema/index.d.ts": { - "version": "a185ebc69c9f6798ebd67bfdfd72a37457dc67c23459784783c7128ae9bd5250", - "signature": "a185ebc69c9f6798ebd67bfdfd72a37457dc67c23459784783c7128ae9bd5250", + "../../node_modules/@types/semver/functions/diff.d.ts": { + "version": "7a9e0a564fee396cacf706523b5aeed96e04c6b871a8bebefad78499fbffc5bc", + "signature": "7a9e0a564fee396cacf706523b5aeed96e04c6b871a8bebefad78499fbffc5bc", "affectsGlobalScope": false }, - "../../node_modules/@types/markdown-to-jsx/index.d.ts": { - "version": "9c138947e4cf970491111d971aa615db8353c7f0efc72bd84d8ad6e4743079c5", - "signature": "9c138947e4cf970491111d971aa615db8353c7f0efc72bd84d8ad6e4743079c5", + "../../node_modules/@types/semver/functions/major.d.ts": { + "version": "906c751ef5822ec0dadcea2f0e9db64a33fb4ee926cc9f7efa38afe5d5371b2a", + "signature": "906c751ef5822ec0dadcea2f0e9db64a33fb4ee926cc9f7efa38afe5d5371b2a", "affectsGlobalScope": false }, - "../../node_modules/@types/mdast/index.d.ts": { - "version": "cee164cd6c157d0ce3d3350c1df75dee40d2da203223a72890430ec6d8ccf4a1", - "signature": "cee164cd6c157d0ce3d3350c1df75dee40d2da203223a72890430ec6d8ccf4a1", + "../../node_modules/@types/semver/functions/minor.d.ts": { + "version": "5387c049e9702f2d2d7ece1a74836a14b47fbebe9bbeb19f94c580a37c855351", + "signature": "5387c049e9702f2d2d7ece1a74836a14b47fbebe9bbeb19f94c580a37c855351", "affectsGlobalScope": false }, - "../../node_modules/@types/micromatch/index.d.ts": { - "version": "1a255ad66d2b50f7b42eca69228b9587878cf06900780ad57a306a933c6eaeb4", - "signature": "1a255ad66d2b50f7b42eca69228b9587878cf06900780ad57a306a933c6eaeb4", + "../../node_modules/@types/semver/functions/patch.d.ts": { + "version": "c68391fb9efad5d99ff332c65b1606248c4e4a9f1dd9a087204242b56c7126d6", + "signature": "c68391fb9efad5d99ff332c65b1606248c4e4a9f1dd9a087204242b56c7126d6", "affectsGlobalScope": false }, - "../../node_modules/@types/minimist/index.d.ts": { - "version": "209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05", - "signature": "209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05", + "../../node_modules/@types/semver/functions/prerelease.d.ts": { + "version": "e9cf02252d3a0ced987d24845dcb1f11c1be5541f17e5daa44c6de2d18138d0c", + "signature": "e9cf02252d3a0ced987d24845dcb1f11c1be5541f17e5daa44c6de2d18138d0c", "affectsGlobalScope": false }, - "../../node_modules/form-data/index.d.ts": { - "version": "736097ddbb2903bef918bb3b5811ef1c9c5656f2a73bd39b22a91b9cc2525e50", - "signature": "736097ddbb2903bef918bb3b5811ef1c9c5656f2a73bd39b22a91b9cc2525e50", + "../../node_modules/@types/semver/functions/compare.d.ts": { + "version": "e8b02b879754d85f48489294f99147aeccc352c760d95a6fe2b6e49cd400b2fe", + "signature": "e8b02b879754d85f48489294f99147aeccc352c760d95a6fe2b6e49cd400b2fe", "affectsGlobalScope": false }, - "../../node_modules/@types/node-fetch/externals.d.ts": { - "version": "208bb742e0f201470da121bc73847c74b62cff4172f38ae5949ae77d6c9c6b71", - "signature": "208bb742e0f201470da121bc73847c74b62cff4172f38ae5949ae77d6c9c6b71", + "../../node_modules/@types/semver/functions/rcompare.d.ts": { + "version": "9f6908ab3d8a86c68b86e38578afc7095114e66b2fc36a2a96e9252aac3998e0", + "signature": "9f6908ab3d8a86c68b86e38578afc7095114e66b2fc36a2a96e9252aac3998e0", "affectsGlobalScope": false }, - "../../node_modules/@types/node-fetch/index.d.ts": { - "version": "062bd2910098fc059ba93e347649b3e126c555f7b144033d21d3f8ef63d3e39b", - "signature": "062bd2910098fc059ba93e347649b3e126c555f7b144033d21d3f8ef63d3e39b", + "../../node_modules/@types/semver/functions/compare-loose.d.ts": { + "version": "0eedb2344442b143ddcd788f87096961cd8572b64f10b4afc3356aa0460171c6", + "signature": "0eedb2344442b143ddcd788f87096961cd8572b64f10b4afc3356aa0460171c6", "affectsGlobalScope": false }, - "../../node_modules/@types/normalize-package-data/index.d.ts": { - "version": "6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a", - "signature": "6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a", + "../../node_modules/@types/semver/functions/compare-build.d.ts": { + "version": "71405cc70f183d029cc5018375f6c35117ffdaf11846c35ebf85ee3956b1b2a6", + "signature": "71405cc70f183d029cc5018375f6c35117ffdaf11846c35ebf85ee3956b1b2a6", "affectsGlobalScope": false }, - "../../node_modules/@types/npmlog/index.d.ts": { - "version": "fda7ad096a1619fbae01b3d869cc82e29116f22be50133ac8fb08cee21279acd", - "signature": "fda7ad096a1619fbae01b3d869cc82e29116f22be50133ac8fb08cee21279acd", + "../../node_modules/@types/semver/functions/sort.d.ts": { + "version": "c68baff4d8ba346130e9753cefe2e487a16731bf17e05fdacc81e8c9a26aae9d", + "signature": "c68baff4d8ba346130e9753cefe2e487a16731bf17e05fdacc81e8c9a26aae9d", "affectsGlobalScope": false }, - "../../node_modules/@types/overlayscrollbars/index.d.ts": { - "version": "9751247ee3bbcf1c63592f0f4dafb44559680b2b3e5736b7f0578c6a737d74c8", - "signature": "9751247ee3bbcf1c63592f0f4dafb44559680b2b3e5736b7f0578c6a737d74c8", + "../../node_modules/@types/semver/functions/rsort.d.ts": { + "version": "2cd15528d8bb5d0453aa339b4b52e0696e8b07e790c153831c642c3dea5ac8af", + "signature": "2cd15528d8bb5d0453aa339b4b52e0696e8b07e790c153831c642c3dea5ac8af", "affectsGlobalScope": false }, - "../../node_modules/@types/parse-json/index.d.ts": { - "version": "2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b", - "signature": "2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b", + "../../node_modules/@types/semver/functions/gt.d.ts": { + "version": "479d622e66283ffa9883fbc33e441f7fc928b2277ff30aacbec7b7761b4e9579", + "signature": "479d622e66283ffa9883fbc33e441f7fc928b2277ff30aacbec7b7761b4e9579", "affectsGlobalScope": false }, - "../../node_modules/@types/parse5/index.d.ts": { - "version": "c555dd691dd05955e99cd93dd99c685a65e5287813ccb5e6bfde951183248e26", - "signature": "c555dd691dd05955e99cd93dd99c685a65e5287813ccb5e6bfde951183248e26", + "../../node_modules/@types/semver/functions/lt.d.ts": { + "version": "ade307876dc5ca267ca308d09e737b611505e015c535863f22420a11fffc1c54", + "signature": "ade307876dc5ca267ca308d09e737b611505e015c535863f22420a11fffc1c54", "affectsGlobalScope": false }, - "../../node_modules/@types/prettier/index.d.ts": { - "version": "29651525db5579157e617c77e869af8bfdc1130f5d811c1f759ad35b7bafc8ef", - "signature": "29651525db5579157e617c77e869af8bfdc1130f5d811c1f759ad35b7bafc8ef", + "../../node_modules/@types/semver/functions/eq.d.ts": { + "version": "f8cdefa3e0dee639eccbe9794b46f90291e5fd3989fcba60d2f08fde56179fb9", + "signature": "f8cdefa3e0dee639eccbe9794b46f90291e5fd3989fcba60d2f08fde56179fb9", "affectsGlobalScope": false }, - "../../node_modules/@types/pretty-hrtime/index.d.ts": { - "version": "c0a3ea3aee13c4946a6aefce3a6ab9292a40a29f6622cde0fda0b1067a1a1f5f", - "signature": "c0a3ea3aee13c4946a6aefce3a6ab9292a40a29f6622cde0fda0b1067a1a1f5f", + "../../node_modules/@types/semver/functions/neq.d.ts": { + "version": "86c5a62f99aac7053976e317dbe9acb2eaf903aaf3d2e5bb1cafe5c2df7b37a8", + "signature": "86c5a62f99aac7053976e317dbe9acb2eaf903aaf3d2e5bb1cafe5c2df7b37a8", "affectsGlobalScope": false }, - "../../node_modules/@types/resolve/index.d.ts": { - "version": "2880728492d6a6baa55411d14cc42fa55714a24b1d1d27ff9a8a610abd47c761", - "signature": "2880728492d6a6baa55411d14cc42fa55714a24b1d1d27ff9a8a610abd47c761", + "../../node_modules/@types/semver/functions/gte.d.ts": { + "version": "2b300954ce01a8343866f737656e13243e86e5baef51bd0631b21dcef1f6e954", + "signature": "2b300954ce01a8343866f737656e13243e86e5baef51bd0631b21dcef1f6e954", "affectsGlobalScope": false }, - "../../node_modules/@types/scheduler/index.d.ts": { - "version": "74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57", - "signature": "74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57", + "../../node_modules/@types/semver/functions/lte.d.ts": { + "version": "a2d409a9ffd872d6b9d78ead00baa116bbc73cfa959fce9a2f29d3227876b2a1", + "signature": "a2d409a9ffd872d6b9d78ead00baa116bbc73cfa959fce9a2f29d3227876b2a1", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/cmp.d.ts": { + "version": "b288936f560cd71f4a6002953290de9ff8dfbfbf37f5a9391be5c83322324898", + "signature": "b288936f560cd71f4a6002953290de9ff8dfbfbf37f5a9391be5c83322324898", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/coerce.d.ts": { + "version": "61178a781ef82e0ff54f9430397e71e8f365fc1e3725e0e5346f2de7b0d50dfa", + "signature": "61178a781ef82e0ff54f9430397e71e8f365fc1e3725e0e5346f2de7b0d50dfa", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/classes/comparator.d.ts": { + "version": "6a6ccb37feb3aad32d9be026a3337db195979cd5727a616fc0f557e974101a54", + "signature": "6a6ccb37feb3aad32d9be026a3337db195979cd5727a616fc0f557e974101a54", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/classes/range.d.ts": { + "version": "c649ea79205c029a02272ef55b7ab14ada0903db26144d2205021f24727ac7a3", + "signature": "c649ea79205c029a02272ef55b7ab14ada0903db26144d2205021f24727ac7a3", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/satisfies.d.ts": { + "version": "38e2b02897c6357bbcff729ef84c736727b45cc152abe95a7567caccdfad2a1d", + "signature": "38e2b02897c6357bbcff729ef84c736727b45cc152abe95a7567caccdfad2a1d", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/ranges/max-satisfying.d.ts": { + "version": "d6610ea7e0b1a7686dba062a1e5544dd7d34140f4545305b7c6afaebfb348341", + "signature": "d6610ea7e0b1a7686dba062a1e5544dd7d34140f4545305b7c6afaebfb348341", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/ranges/min-satisfying.d.ts": { + "version": "3dee35db743bdba2c8d19aece7ac049bde6fa587e195d86547c882784e6ba34c", + "signature": "3dee35db743bdba2c8d19aece7ac049bde6fa587e195d86547c882784e6ba34c", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/ranges/to-comparators.d.ts": { + "version": "b15e55c5fa977c2f25ca0b1db52cfa2d1fd4bf0baf90a8b90d4a7678ca462ff1", + "signature": "b15e55c5fa977c2f25ca0b1db52cfa2d1fd4bf0baf90a8b90d4a7678ca462ff1", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/ranges/min-version.d.ts": { + "version": "f41d30972724714763a2698ae949fbc463afb203b5fa7c4ad7e4de0871129a17", + "signature": "f41d30972724714763a2698ae949fbc463afb203b5fa7c4ad7e4de0871129a17", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/ranges/valid.d.ts": { + "version": "843dd7b6a7c6269fd43827303f5cbe65c1fecabc30b4670a50d5a15d57daeeb9", + "signature": "843dd7b6a7c6269fd43827303f5cbe65c1fecabc30b4670a50d5a15d57daeeb9", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/ranges/outside.d.ts": { + "version": "f06d8b8567ee9fd799bf7f806efe93b67683ef24f4dea5b23ef12edff4434d9d", + "signature": "f06d8b8567ee9fd799bf7f806efe93b67683ef24f4dea5b23ef12edff4434d9d", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/ranges/gtr.d.ts": { + "version": "6017384f697ff38bc3ef6a546df5b230c3c31329db84cbfe686c83bec011e2b2", + "signature": "6017384f697ff38bc3ef6a546df5b230c3c31329db84cbfe686c83bec011e2b2", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/ranges/ltr.d.ts": { + "version": "e1a5b30d9248549ca0c0bb1d653bafae20c64c4aa5928cc4cd3017b55c2177b0", + "signature": "e1a5b30d9248549ca0c0bb1d653bafae20c64c4aa5928cc4cd3017b55c2177b0", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/ranges/intersects.d.ts": { + "version": "a593632d5878f17295bd53e1c77f27bf4c15212822f764a2bfc1702f4b413fa0", + "signature": "a593632d5878f17295bd53e1c77f27bf4c15212822f764a2bfc1702f4b413fa0", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/ranges/simplify.d.ts": { + "version": "a868a534ba1c2ca9060b8a13b0ffbbbf78b4be7b0ff80d8c75b02773f7192c29", + "signature": "a868a534ba1c2ca9060b8a13b0ffbbbf78b4be7b0ff80d8c75b02773f7192c29", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/ranges/subset.d.ts": { + "version": "da7545aba8f54a50fde23e2ede00158dc8112560d934cee58098dfb03aae9b9d", + "signature": "da7545aba8f54a50fde23e2ede00158dc8112560d934cee58098dfb03aae9b9d", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/internals/identifiers.d.ts": { + "version": "34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0", + "signature": "34baf65cfee92f110d6653322e2120c2d368ee64b3c7981dff08ed105c4f19b0", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/index.d.ts": { + "version": "6aee496bf0ecfbf6731aa8cca32f4b6e92cdc0a444911a7d88410408a45ecc5d", + "signature": "6aee496bf0ecfbf6731aa8cca32f4b6e92cdc0a444911a7d88410408a45ecc5d", "affectsGlobalScope": false }, "../../node_modules/@types/source-list-map/index.d.ts": { @@ -3366,17 +4066,22 @@ "signature": "3833c70307dc3d2b46cb6f2a8b6a90e4d7e7367a21ab18c481d7de0909a43e67", "affectsGlobalScope": false }, + "../../node_modules/@types/treeify/index.d.ts": { + "version": "e2c3fb7ba470548053dabb65521b89846fffad3a103ddc72b5115d8caa23ce8e", + "signature": "e2c3fb7ba470548053dabb65521b89846fffad3a103ddc72b5115d8caa23ce8e", + "affectsGlobalScope": false + }, "../../node_modules/@types/uglify-js/node_modules/source-map/source-map.d.ts": { "version": "2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579", "signature": "2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579", "affectsGlobalScope": false }, "../../node_modules/@types/uglify-js/index.d.ts": { - "version": "9d74c7330800b325bb19cc8c1a153a612c080a60094e1ab6cfb6e39cf1b88c36", - "signature": "9d74c7330800b325bb19cc8c1a153a612c080a60094e1ab6cfb6e39cf1b88c36", + "version": "9dcd1a6ae84def6ce3e80b27a367912e5b8e9f15c039143820ab76f7ceb8f3ab", + "signature": "9dcd1a6ae84def6ce3e80b27a367912e5b8e9f15c039143820ab76f7ceb8f3ab", "affectsGlobalScope": false }, - "../../node_modules/@types/webpack/node_modules/anymatch/index.d.ts": { + "../../node_modules/anymatch/index.d.ts": { "version": "4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349", "signature": "4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349", "affectsGlobalScope": false @@ -3432,8 +4137,8 @@ "affectsGlobalScope": false }, "../../node_modules/@types/webpack-sources/lib/SourceMapSource.d.ts": { - "version": "8ef5aad624890acfe0fa48230edce255f00934016d16acb8de0edac0ea5b21bb", - "signature": "8ef5aad624890acfe0fa48230edce255f00934016d16acb8de0edac0ea5b21bb", + "version": "05d64cc1118031b29786632a9a0f6d7cf1dcacb303f27023a466cf3cdc860538", + "signature": "05d64cc1118031b29786632a9a0f6d7cf1dcacb303f27023a466cf3cdc860538", "affectsGlobalScope": false }, "../../node_modules/@types/webpack-sources/lib/index.d.ts": { @@ -3447,13 +4152,13 @@ "affectsGlobalScope": false }, "../../node_modules/@types/webpack-sources/index.d.ts": { - "version": "89b42f8ee5d387a39db85ee2c7123a391c3ede266a2bcd502c85ad55626c3b2b", - "signature": "89b42f8ee5d387a39db85ee2c7123a391c3ede266a2bcd502c85ad55626c3b2b", + "version": "e275297155ec3251200abbb334c7f5641fecc68b2a9573e40eed50dff7584762", + "signature": "e275297155ec3251200abbb334c7f5641fecc68b2a9573e40eed50dff7584762", "affectsGlobalScope": false }, "../../node_modules/@types/webpack/index.d.ts": { - "version": "da297c98a5a86092b19aed23ddc61f5d0e64bc2fa83dc606a89d4e54dc6ec5a3", - "signature": "da297c98a5a86092b19aed23ddc61f5d0e64bc2fa83dc606a89d4e54dc6ec5a3", + "version": "1fc49547f60101e7fac0d9113a52c29178be082d46d7525009aebafdbb170a69", + "signature": "1fc49547f60101e7fac0d9113a52c29178be082d46d7525009aebafdbb170a69", "affectsGlobalScope": false }, "../../node_modules/@types/yargs-parser/index.d.ts": { @@ -4386,58 +5091,309 @@ "*", "*", "*", - "*" - ] - }, - "noEmitOnError": true, - "outDir": "./", - "incremental": true, - "composite": true, - "emitDeclarationOnly": false, - "declaration": true, - "declarationDir": "..", - "plugins": [ - { - "transform": "typescript-transform-paths" - }, - { - "transform": "typescript-transform-paths", - "afterDeclarations": true - } - ], - "configFilePath": "../../tsconfig.type.json", - "noEmitHelpers": true, - "importHelpers": true, - "noEmit": false, - "noResolve": false - }, - "referencedMap": { - "../../core/components/atoms/_chip/index.tsx": [ - "../../core/components/atoms/chip/Chip.tsx", - "../../core/components/atoms/icon/index.tsx", - "../../core/components/atoms/text/index.tsx", - "../../core/utils/types.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts", - "../../node_modules/classnames/index.d.ts" - ], - "../../core/components/atoms/_text/index.tsx": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../core/components/atoms/avatar/Avatar.tsx": [ - "../../core/index.tsx", - "../../core/index.type.tsx", - "../../core/utils/types.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts", - "../../node_modules/classnames/index.d.ts" - ], - "../../core/components/atoms/avatar/index.tsx": [ - "../../core/components/atoms/avatar/Avatar.tsx", - "../../node_modules/@types/node/util.d.ts" - ], - "../../core/components/atoms/avatarGroup/AvatarGroup.tsx": [ + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*" + ] + }, + "noEmitOnError": true, + "outDir": "./", + "incremental": true, + "composite": true, + "emitDeclarationOnly": false, + "declaration": true, + "declarationDir": "..", + "plugins": [ + { + "transform": "typescript-transform-paths" + }, + { + "transform": "typescript-transform-paths", + "afterDeclarations": true + } + ], + "configFilePath": "../../tsconfig.type.json", + "noEmitHelpers": true, + "importHelpers": true, + "noEmit": false, + "noResolve": false + }, + "referencedMap": { + "../../core/accessibility/utils/index.ts": [ + "../../core/accessibility/utils/isEnterKey.ts", + "../../core/accessibility/utils/isSpaceKey.ts", + "../../core/accessibility/utils/useAccessibilityProps.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/accessibility/utils/isEnterKey.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/accessibility/utils/isSpaceKey.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/accessibility/utils/useAccessibilityProps.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/common.type.tsx": [ + "../../core/components/molecules/overlayFooter/index.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/atoms/_chip/index.tsx": [ + "../../core/common.type.tsx", + "../../core/components/atoms/chip/Chip.tsx", + "../../core/components/atoms/icon/index.tsx", + "../../core/components/atoms/text/index.tsx", + "../../core/index.type.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/_text/index.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/atoms/actionCard/ActionCard.tsx": [ + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/actionCard/index.tsx": [ + "../../core/components/atoms/actionCard/ActionCard.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/atoms/avatar/Avatar.tsx": [ + "../../core/common.type.tsx", + "../../core/components/atoms/avatar/AvatarProvider.tsx", + "../../core/components/atoms/avatar/avatarIcon/index.tsx", + "../../core/components/atoms/avatar/avatarImage/index.tsx", "../../core/index.tsx", "../../core/index.type.tsx", "../../core/utils/types.tsx", @@ -4445,88 +5401,207 @@ "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], - "../../core/components/atoms/avatarGroup/index.tsx": [ - "../../core/components/atoms/avatarGroup/AvatarGroup.tsx", + "../../core/components/atoms/avatar/AvatarProvider.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/atoms/avatar/avatarIcon/AvatarIcon.tsx": [ + "../../core/components/atoms/avatar/AvatarProvider.tsx", + "../../core/components/atoms/icon/index.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/atoms/avatar/avatarIcon/index.tsx": [ + "../../core/components/atoms/avatar/avatarIcon/AvatarIcon.tsx", "../../node_modules/@types/node/util.d.ts" ], - "../../core/components/atoms/backdrop/Backdrop.tsx": [ + "../../core/components/atoms/avatar/avatarImage/AvatarImage.tsx": [ + "../../core/components/atoms/avatar/AvatarProvider.tsx", + "../../core/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react-dom/index.d.ts", "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], - "../../core/components/atoms/backdrop/index.tsx": [ - "../../core/components/atoms/backdrop/Backdrop.tsx", + "../../core/components/atoms/avatar/avatarImage/index.tsx": [ + "../../core/components/atoms/avatar/avatarImage/AvatarImage.tsx", "../../node_modules/@types/node/util.d.ts" ], - "../../core/components/atoms/badge/Badge.tsx": [ + "../../core/components/atoms/avatar/index.tsx": [ + "../../core/components/atoms/avatar/Avatar.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/atoms/avatarGroup/AvatarCount.tsx": [ + "../../core/index.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/avatarGroup/AvatarGroup.tsx": [ + "../../core/common.type.tsx", + "../../core/components/atoms/avatarGroup/AvatarCount.tsx", + "../../core/components/atoms/avatarGroup/AvatarPopperBody.tsx", + "../../core/components/atoms/avatarGroup/Avatars.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], - "../../core/components/atoms/badge/_stories_/SolidAlert.story.tsx": [ - "../../core/components/atoms/badge/Badge.tsx", + "../../core/components/atoms/avatarGroup/AvatarPopperBody.tsx": [ + "../../core/index.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/avatarGroup/Avatars.tsx": [ + "../../core/index.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/avatarGroup/index.tsx": [ + "../../core/components/atoms/avatarGroup/AvatarGroup.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/atoms/avatarSelection/AvatarSelection.tsx": [ + "../../core/common.type.tsx", + "../../core/components/atoms/avatarSelection/AvatarSelectionContext.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/index.tsx", + "../../core/components/atoms/avatarSelection/avatarsSelection/index.tsx", + "../../core/components/atoms/avatarSelection/avatarsSelection/utils.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", + "../../core/utils/types.tsx", + "../../core/utils/uidGenerator.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/avatarSelection/AvatarSelectionContext.tsx": [ + "../../core/components/atoms/avatarSelection/AvatarSelection.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/atoms/badge/_stories_/SolidSecondary.story.tsx": [ - "../../core/components/atoms/badge/Badge.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionEmptyState.tsx": [ + "../../core/index.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/atoms/badge/_stories_/SolidWarning.story.tsx": [ - "../../core/components/atoms/badge/Badge.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionInput.tsx": [ + "../../core/components/atoms/avatarSelection/AvatarSelectionContext.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/utils.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/atoms/badge/_stories_/SubtleAlert.story.tsx": [ - "../../core/components/atoms/badge/Badge.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionList.tsx": [ + "../../core/common.type.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/atoms/badge/_stories_/SubtleSecondary.story.tsx": [ - "../../core/components/atoms/badge/Badge.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionOption.tsx": [ + "../../core/components/atoms/avatarSelection/AvatarSelection.tsx", + "../../core/components/atoms/avatarSelection/AvatarSelectionContext.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/utils.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/atoms/badge/_stories_/SubtleWarning.story.tsx": [ - "../../core/components/atoms/badge/Badge.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionPopover.tsx": [ + "../../core/components/atoms/avatarSelection/AvatarSelection.tsx", + "../../core/components/atoms/avatarSelection/AvatarSelectionContext.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionEmptyState.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionInput.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionList.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionOption.tsx", + "../../core/index.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/avatarSelection/avatarPopover/index.tsx": [ + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionEmptyState.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionInput.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionList.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionOption.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionPopover.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/atoms/avatarSelection/avatarPopover/utils.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/atoms/avatarSelection/avatarsSelection/AvatarSelectionCount.tsx": [ + "../../core/common.type.tsx", + "../../core/components/atoms/avatarSelection/AvatarSelection.tsx", + "../../core/components/atoms/avatarSelection/AvatarSelectionContext.tsx", + "../../core/components/atoms/avatarSelection/avatarsSelection/utils.tsx", + "../../core/index.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatar.tsx": [ + "../../core/common.type.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/atoms/badge/_stories_/Success.story.tsx": [ - "../../core/components/atoms/badge/Badge.tsx", + "../../core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatarsWrapper.tsx": [ + "../../core/common.type.tsx", + "../../core/components/atoms/avatarSelection/AvatarSelection.tsx", + "../../core/components/atoms/avatarSelection/AvatarSelectionContext.tsx", + "../../core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatar.tsx", + "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" ], - "../../core/components/atoms/badge/_stories_/index.story.tsx": [ - "../../core/components/atoms/badge/Badge.tsx", - "../../node_modules/@storybook/addon-knobs/dist/index.d.ts", + "../../core/components/atoms/avatarSelection/avatarsSelection/index.tsx": [ + "../../core/components/atoms/avatarSelection/avatarsSelection/AvatarSelectionCount.tsx", + "../../core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatarsWrapper.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/atoms/avatarSelection/avatarsSelection/utils.tsx": [ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/atoms/badge/_stories_/variants/Appearance.story.tsx": [ - "../../core/components/atoms/badge/Badge.tsx", - "../../core/components/atoms/text/index.tsx", - "../../node_modules/@storybook/addon-knobs/dist/index.d.ts", + "../../core/components/atoms/avatarSelection/index.tsx": [ + "../../core/components/atoms/avatarSelection/AvatarSelection.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/atoms/backdrop/Backdrop.tsx": [ + "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react-dom/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" ], - "../../core/components/atoms/badge/_stories_/variants/Subtle.story.tsx": [ - "../../core/components/atoms/badge/Badge.tsx", - "../../core/components/atoms/text/index.tsx", - "../../node_modules/@storybook/addon-knobs/dist/index.d.ts", + "../../core/components/atoms/backdrop/index.tsx": [ + "../../core/components/atoms/backdrop/Backdrop.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/atoms/badge/Badge.tsx": [ + "../../core/common.type.tsx", + "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" ], "../../core/components/atoms/badge/index.tsx": [ "../../core/components/atoms/badge/Badge.tsx", "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/breadcrumbs/Breadcrumbs.tsx": [ - "../../core/components/atoms/dropdown/index.tsx", "../../core/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -4538,6 +5613,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/button/Button.tsx": [ + "../../core/common.type.tsx", "../../core/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -4611,7 +5687,8 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/checkbox/Checkbox.tsx": [ - "../../core/components/atoms/icon/index.tsx", + "../../core/common.type.tsx", + "../../core/components/atoms/checkbox/CheckboxIcon.tsx", "../../core/components/atoms/text/index.tsx", "../../core/utils/types.tsx", "../../core/utils/uidGenerator.tsx", @@ -4619,11 +5696,16 @@ "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], + "../../core/components/atoms/checkbox/CheckboxIcon.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], "../../core/components/atoms/checkbox/index.tsx": [ "../../core/components/atoms/checkbox/Checkbox.tsx", "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/chip/Chip.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/_chip/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -4641,13 +5723,6 @@ "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], - "../../core/components/atoms/chipGroup/_stories_/index.story.tsx": [ - "../../core/components/atoms/chip/Chip.tsx", - "../../core/components/atoms/chipGroup/ChipGroup.tsx", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], "../../core/components/atoms/chipGroup/index.tsx": [ "../../core/components/atoms/chipGroup/ChipGroup.tsx", "../../node_modules/@types/node/util.d.ts" @@ -4673,7 +5748,18 @@ "../../core/components/atoms/column/Column.tsx", "../../node_modules/@types/node/util.d.ts" ], + "../../core/components/atoms/divider/Divider.tsx": [ + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/divider/index.tsx": [ + "../../core/components/atoms/divider/Divider.tsx", + "../../node_modules/@types/node/util.d.ts" + ], "../../core/components/atoms/dropdown/Dropdown.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/dropdown/DropdownList.tsx", "../../core/components/atoms/dropdown/option/index.tsx", "../../core/components/atoms/dropdown/utility.tsx", @@ -4683,13 +5769,17 @@ "../../node_modules/@types/throttle-debounce/index.d.ts" ], "../../core/components/atoms/dropdown/DropdownButton.tsx": [ + "../../core/common.type.tsx", "../../core/index.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], "../../core/components/atoms/dropdown/DropdownList.tsx": [ + "../../core/common.type.tsx", + "../../core/components/atoms/dropdown/Dropdown.tsx", "../../core/components/atoms/dropdown/DropdownButton.tsx", + "../../core/components/atoms/dropdown/ErrorTemplate.tsx", "../../core/components/atoms/dropdown/Loading.tsx", "../../core/components/atoms/dropdown/option/index.tsx", "../../core/components/atoms/dropdown/utility.tsx", @@ -4700,9 +5790,16 @@ "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], + "../../core/components/atoms/dropdown/ErrorTemplate.tsx": [ + "../../core/components/atoms/dropdown/Dropdown.tsx", + "../../core/index.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], "../../core/components/atoms/dropdown/Loading.tsx": [ "../../core/components/atoms/placeholderParagraph/index.tsx", "../../core/components/molecules/placeholder/index.tsx", + "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -4713,6 +5810,8 @@ "../../core/components/atoms/dropdown/option/CheckboxOption.tsx": [ "../../core/components/atoms/checkbox/index.tsx", "../../core/components/atoms/dropdown/option/index.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -4743,6 +5842,7 @@ "../../node_modules/@types/react/index.d.ts" ], "../../core/components/atoms/dropdown/option/index.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/dropdown/DropdownList.tsx", "../../core/components/atoms/dropdown/option/CheckboxOption.tsx", "../../core/components/atoms/dropdown/option/DefaultOption.tsx", @@ -4770,6 +5870,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/heading/Heading.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/_text/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -4780,7 +5881,19 @@ "../../core/components/atoms/heading/Heading.tsx", "../../node_modules/@types/node/util.d.ts" ], + "../../core/components/atoms/helpText/HelpText.tsx": [ + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/helpText/index.tsx": [ + "../../core/components/atoms/helpText/HelpText.tsx", + "../../node_modules/@types/node/util.d.ts" + ], "../../core/components/atoms/icon/Icon.tsx": [ + "../../core/accessibility/utils/index.ts", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts", @@ -4791,6 +5904,8 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/input/Input.tsx": [ + "../../core/common.type.tsx", + "../../core/components/atoms/input/actionButton/index.tsx", "../../core/index.tsx", "../../core/index.type.tsx", "../../core/utils/types.tsx", @@ -4798,6 +5913,18 @@ "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], + "../../core/components/atoms/input/actionButton/ActionButton.tsx": [ + "../../core/common.type.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/input/actionButton/index.tsx": [ + "../../core/components/atoms/input/actionButton/ActionButton.tsx", + "../../node_modules/@types/node/util.d.ts" + ], "../../core/components/atoms/input/index.tsx": [ "../../core/components/atoms/input/Input.tsx", "../../node_modules/@types/node/util.d.ts" @@ -4836,7 +5963,20 @@ "../../core/components/atoms/link/Link.tsx", "../../node_modules/@types/node/util.d.ts" ], + "../../core/components/atoms/linkButton/LinkButton.tsx": [ + "../../core/common.type.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/linkButton/index.tsx": [ + "../../core/components/atoms/linkButton/LinkButton.tsx", + "../../node_modules/@types/node/util.d.ts" + ], "../../core/components/atoms/message/Message.tsx": [ + "../../core/common.type.tsx", "../../core/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -4848,8 +5988,9 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/metaList/Meta.tsx": [ + "../../core/common.type.tsx", + "../../core/components/atoms/metaList/MetaList.tsx", "../../core/index.tsx", - "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -4862,17 +6003,12 @@ "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], - "../../core/components/atoms/metaList/_stories_/index.story.tsx": [ - "../../core/components/atoms/metaList/MetaList.tsx", - "../../node_modules/@storybook/addon-knobs/dist/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], "../../core/components/atoms/metaList/index.tsx": [ "../../core/components/atoms/metaList/MetaList.tsx", "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/metricInput/MetricInput.tsx": [ + "../../core/common.type.tsx", "../../core/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -4894,6 +6030,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/multiSlider/index.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/multiSlider/Handle.tsx", "../../core/components/atoms/multiSlider/SliderUtils.tsx", "../../core/index.tsx", @@ -4905,7 +6042,6 @@ "../../core/components/atoms/outsideClick/OutsideClick.tsx": [ "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react-dom/index.d.ts", "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], @@ -4914,6 +6050,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/paragraph/Paragraph.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/_text/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -4925,6 +6062,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/pills/Pills.tsx": [ + "../../core/common.type.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts", @@ -4955,6 +6093,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/popperWrapper/PopperWrapper.tsx": [ + "../../core/common.type.tsx", "../../core/index.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react-dom/index.d.ts", @@ -4987,6 +6126,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/radio/Radio.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/text/index.tsx", "../../core/utils/types.tsx", "../../core/utils/uidGenerator.tsx", @@ -4999,6 +6139,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/rangeSlider/RangeSlider.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/multiSlider/index.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" @@ -5017,6 +6158,30 @@ "../../core/components/atoms/row/Row.tsx", "../../node_modules/@types/node/util.d.ts" ], + "../../core/components/atoms/selectionCard/SelectionCard.tsx": [ + "../../core/components/atoms/selectionCard/hooks/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/selectionCard/hooks/index.tsx": [ + "../../core/components/atoms/selectionCard/hooks/useMultiSelect.tsx", + "../../core/components/atoms/selectionCard/hooks/useSingleSelect.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/atoms/selectionCard/hooks/useMultiSelect.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/atoms/selectionCard/hooks/useSingleSelect.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/atoms/selectionCard/index.tsx": [ + "../../core/components/atoms/selectionCard/SelectionCard.tsx", + "../../node_modules/@types/node/util.d.ts" + ], "../../core/components/atoms/slider/Slider.tsx": [ "../../core/components/atoms/multiSlider/index.tsx", "../../node_modules/@types/node/util.d.ts", @@ -5037,6 +6202,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/statusHint/StatusHint.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/text/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -5048,6 +6214,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/subheading/Subheading.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/_text/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -5059,6 +6226,8 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/switchInput/Switch.tsx": [ + "../../core/accessibility/utils/index.ts", + "../../core/common.type.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts", @@ -5069,6 +6238,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/text/Text.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/_text/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -5090,13 +6260,14 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/atoms/toast/ActionButton.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/text/index.tsx", - "../../core/components/atoms/toast/Toast.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], "../../core/components/atoms/toast/Toast.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/heading/index.tsx", "../../core/components/atoms/icon/index.tsx", "../../core/components/atoms/text/index.tsx", @@ -5110,62 +6281,12 @@ "../../core/components/atoms/toast/Toast.tsx", "../../node_modules/@types/node/util.d.ts" ], - "../../core/components/css-utilities/Align/Align.story.tsx": [ - "../../core/components/css-utilities/Schema.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../core/components/css-utilities/Background/Background.story.tsx": [ - "../../core/components/atoms/paragraph/index.tsx", - "../../core/components/css-utilities/Schema.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../core/components/css-utilities/Display/Display.story.tsx": [ - "../../core/components/css-utilities/Schema.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../core/components/css-utilities/Flex/Flex.story.tsx": [ - "../../core/components/css-utilities/Schema.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../core/components/css-utilities/Miscellaneous/Miscellaneous.story.tsx": [ - "../../core/components/css-utilities/Schema.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../core/components/css-utilities/Overflow/Overflow.story.tsx": [ - "../../core/components/css-utilities/Schema.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../core/components/css-utilities/Position/Position.story.tsx": [ - "../../core/components/atoms/paragraph/index.tsx", - "../../core/components/css-utilities/Schema.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], "../../core/components/css-utilities/Schema.tsx": [ "../../core/components/organisms/grid/index.tsx", "../../core/index.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/css-utilities/Sizing/Sizing.story.tsx": [ - "../../core/components/css-utilities/Schema.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], "../../core/components/css-utilities/Spacing/Data.tsx": [ "../../node_modules/@types/node/util.d.ts" ], @@ -5175,63 +6296,18 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/css-utilities/Spacing/Spacing.story.tsx": [ - "../../core/components/css-utilities/Spacing/Data.tsx", - "../../core/components/css-utilities/Spacing/Schema.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../core/components/css-utilities/designTokens/Colors.story.tsx": [ - "../../core/components/css-utilities/designTokens/Data.tsx", - "../../core/components/css-utilities/designTokens/Schema.tsx", - "../../core/components/css-utilities/designTokens/Utilities.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], "../../core/components/css-utilities/designTokens/Data.tsx": [ "../../node_modules/@types/node/util.d.ts" ], - "../../core/components/css-utilities/designTokens/Miscellaneous.story.tsx": [ - "../../core/components/atoms/paragraph/index.tsx", - "../../core/components/css-utilities/designTokens/Data.tsx", - "../../core/components/css-utilities/designTokens/Schema.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], "../../core/components/css-utilities/designTokens/Schema.tsx": [ "../../core/components/organisms/grid/index.tsx", "../../core/index.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/css-utilities/designTokens/Spacing.story.tsx": [ - "../../core/components/css-utilities/designTokens/Data.tsx", - "../../core/components/css-utilities/designTokens/Schema.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../core/components/css-utilities/designTokens/Typography.story.tsx": [ - "../../core/components/css-utilities/designTokens/Data.tsx", - "../../core/components/css-utilities/designTokens/Schema.tsx", - "../../core/components/css-utilities/designTokens/Utilities.tsx", - "../../core/index.tsx", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], "../../core/components/css-utilities/designTokens/Utilities.tsx": [ "../../node_modules/@types/node/util.d.ts" ], - "../../core/components/molecules/Layout/index.story.tsx": [ - "../../core/components/atoms/column/index.tsx", - "../../core/components/atoms/row/index.tsx", - "../../node_modules/@storybook/addon-knobs/dist/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], "../../core/components/molecules/chatMessage/Box.tsx": [ "../../core/components/molecules/chatMessage/ChatMessage.tsx", "../../core/utils/types.tsx", @@ -5289,9 +6365,11 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/molecules/dropzone/Dropzone.tsx": [ + "../../core/accessibility/utils/index.ts", "../../core/components/molecules/dropzone/DropzoneActive.tsx", "../../core/components/molecules/dropzone/DropzoneBase.tsx", "../../core/components/molecules/dropzone/DropzoneError.tsx", + "../../core/components/molecules/dropzone/DropzoneIcon.tsx", "../../core/components/molecules/dropzone/FileErrors.tsx", "../../core/index.tsx", "../../core/utils/types.tsx", @@ -5300,11 +6378,11 @@ "../../node_modules/classnames/index.d.ts" ], "../../core/components/molecules/dropzone/DropzoneActive.tsx": [ + "../../core/components/molecules/dropzone/DropzoneIcon.tsx", "../../core/index.tsx", "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts", - "../../node_modules/classnames/index.d.ts" + "../../node_modules/@types/react/index.d.ts" ], "../../core/components/molecules/dropzone/DropzoneBase.tsx": [ "../../core/components/molecules/dropzone/FileErrors.tsx", @@ -5315,11 +6393,15 @@ "../../node_modules/@types/react/index.d.ts" ], "../../core/components/molecules/dropzone/DropzoneError.tsx": [ + "../../core/components/molecules/dropzone/DropzoneIcon.tsx", "../../core/index.tsx", "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts", - "../../node_modules/classnames/index.d.ts" + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/molecules/dropzone/DropzoneIcon.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" ], "../../core/components/molecules/dropzone/FileErrors.tsx": [ "../../core/components/molecules/dropzone/utils.tsx", @@ -5375,6 +6457,12 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/molecules/emptyState/EmptyState.tsx": [ + "../../core/common.type.tsx", + "../../core/components/molecules/emptyState/EmptyStateActions.tsx", + "../../core/components/molecules/emptyState/EmptyStateContext.tsx", + "../../core/components/molecules/emptyState/EmptyStateDescription.tsx", + "../../core/components/molecules/emptyState/EmptyStateImage.tsx", + "../../core/components/molecules/emptyState/EmptyStateTitle.tsx", "../../core/index.tsx", "../../core/index.type.tsx", "../../core/utils/types.tsx", @@ -5382,7 +6470,45 @@ "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], + "../../core/components/molecules/emptyState/EmptyStateActions.tsx": [ + "../../core/components/molecules/emptyState/EmptyStateContext.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/molecules/emptyState/EmptyStateContext.tsx": [ + "../../core/common.type.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/molecules/emptyState/EmptyStateDescription.tsx": [ + "../../core/components/molecules/emptyState/EmptyStateContext.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts", + "../../types/index.d.ts" + ], + "../../core/components/molecules/emptyState/EmptyStateImage.tsx": [ + "../../core/components/molecules/emptyState/EmptyStateContext.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/molecules/emptyState/EmptyStateTitle.tsx": [ + "../../core/components/molecules/emptyState/EmptyState.tsx", + "../../core/components/molecules/emptyState/EmptyStateContext.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], "../../core/components/molecules/emptyState/_tests_/EmptyState.test.tsx": [ + "../../core/common.type.tsx", "../../core/index.tsx", "../../core/index.type.tsx", "../../core/utils/testHelper.ts", @@ -5409,6 +6535,7 @@ "../../node_modules/@types/react/index.d.ts" ], "../../core/components/molecules/fileList/FileListItem.tsx": [ + "../../core/common.type.tsx", "../../core/components/molecules/fileList/FileIcon.tsx", "../../core/index.tsx", "../../core/utils/types.tsx", @@ -5442,6 +6569,7 @@ "../../node_modules/@types/react/index.d.ts" ], "../../core/components/molecules/fileUploader/FileUploaderItem.tsx": [ + "../../core/common.type.tsx", "../../core/components/molecules/fileUploader/FileUploaderStatus.tsx", "../../core/index.tsx", "../../core/utils/types.tsx", @@ -5457,7 +6585,7 @@ "../../node_modules/classnames/index.d.ts" ], "../../core/components/molecules/fileUploader/FileUploaderStatus.tsx": [ - "../../core/components/molecules/fileUploader/FileUploaderItem.tsx", + "../../core/common.type.tsx", "../../core/index.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" @@ -5468,11 +6596,13 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/molecules/fullscreenModal/FullscreenModal.tsx": [ + "../../core/common.type.tsx", "../../core/components/molecules/overlayBody/index.tsx", "../../core/components/molecules/overlayFooter/index.tsx", "../../core/components/molecules/overlayHeader/index.tsx", "../../core/index.tsx", "../../core/index.type.tsx", + "../../core/utils/OverlayManager.tsx", "../../core/utils/overlayHelper.ts", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -5502,11 +6632,13 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/molecules/modal/Modal.tsx": [ + "../../core/common.type.tsx", "../../core/components/molecules/overlayBody/index.tsx", "../../core/components/molecules/overlayFooter/index.tsx", "../../core/components/molecules/overlayHeader/index.tsx", "../../core/index.tsx", "../../core/index.type.tsx", + "../../core/utils/OverlayManager.tsx", "../../core/utils/overlayHelper.ts", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -5590,8 +6722,10 @@ "../../core/components/molecules/pagination/Pagination.tsx": [ "../../core/index.tsx", "../../core/utils/types.tsx", + "../../core/utils/validators.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/throttle-debounce/index.d.ts", "../../node_modules/classnames/index.d.ts" ], "../../core/components/molecules/pagination/index.tsx": [ @@ -5611,6 +6745,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/molecules/popover/Popover.tsx": [ + "../../core/common.type.tsx", "../../core/components/atoms/popperWrapper/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -5622,11 +6757,13 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/molecules/sidesheet/Sidesheet.tsx": [ + "../../core/common.type.tsx", "../../core/components/molecules/overlayBody/index.tsx", "../../core/components/molecules/overlayFooter/index.tsx", "../../core/components/molecules/overlayHeader/index.tsx", "../../core/index.tsx", "../../core/index.type.tsx", + "../../core/utils/OverlayManager.tsx", "../../core/utils/overlayHelper.ts", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -5660,6 +6797,7 @@ "../../node_modules/@types/react/index.d.ts" ], "../../core/components/molecules/tabs/Tabs.tsx": [ + "../../core/common.type.tsx", "../../core/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -5702,6 +6840,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/organisms/calendar/Calendar.tsx": [ + "../../core/common.type.tsx", "../../core/components/organisms/calendar/config.ts", "../../core/components/organisms/calendar/types.ts", "../../core/components/organisms/calendar/utility.ts", @@ -5720,18 +6859,115 @@ "../../core/components/organisms/calendar/utility.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../core/components/organisms/calendar/types.ts": [ + "../../core/components/organisms/calendar/types.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/calendar/utility.ts": [ + "../../core/components/organisms/calendar/config.ts", + "../../core/components/organisms/calendar/types.ts", + "../../core/utils/types.tsx", + "../../core/utils/validators.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/choiceList/ChoiceList.tsx": [ + "../../core/common.type.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/organisms/choiceList/index.tsx": [ + "../../core/components/organisms/choiceList/ChoiceList.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/combobox/Combobox.tsx": [ + "../../core/common.type.tsx", + "../../core/components/organisms/combobox/ComboboxContext.tsx", + "../../core/components/organisms/combobox/ComboboxList.tsx", + "../../core/components/organisms/combobox/ComboboxOption.tsx", + "../../core/components/organisms/combobox/trigger/ComboboxTrigger.tsx", + "../../core/components/organisms/combobox/trigger/utils.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", + "../../core/utils/types.tsx", + "../../core/utils/uidGenerator.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/combobox/ComboboxContext.tsx": [ + "../../core/common.type.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/combobox/ComboboxList.tsx": [ + "../../core/common.type.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/combobox/ComboboxOption.tsx": [ + "../../core/common.type.tsx", + "../../core/components/organisms/combobox/ComboboxContext.tsx", + "../../core/components/organisms/combobox/utils.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/combobox/index.tsx": [ + "../../core/components/organisms/combobox/Combobox.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/combobox/trigger/ChipInputBox.tsx": [ + "../../core/common.type.tsx", + "../../core/components/organisms/combobox/ComboboxContext.tsx", + "../../core/components/organisms/combobox/trigger/MultiselectTrigger.tsx", + "../../core/components/organisms/combobox/trigger/utils.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/combobox/trigger/ComboboxTrigger.tsx": [ + "../../core/common.type.tsx", + "../../core/components/organisms/combobox/Combobox.tsx", + "../../core/components/organisms/combobox/trigger/ChipInputBox.tsx", + "../../core/components/organisms/combobox/trigger/InputBox.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/combobox/trigger/InputBox.tsx": [ + "../../core/components/organisms/combobox/ComboboxContext.tsx", + "../../core/components/organisms/combobox/trigger/utils.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/combobox/trigger/MultiselectTrigger.tsx": [ + "../../core/common.type.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/organisms/combobox/trigger/index.tsx": [ + "../../core/components/organisms/combobox/trigger/ComboboxTrigger.tsx", "../../node_modules/@types/node/util.d.ts" ], - "../../core/components/organisms/calendar/utility.ts": [ - "../../core/components/organisms/calendar/config.ts", - "../../core/components/organisms/calendar/types.ts", - "../../core/utils/types.tsx", - "../../core/utils/validators.ts", - "../../node_modules/@types/node/util.d.ts" + "../../core/components/organisms/combobox/trigger/utils.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/combobox/utils.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" ], "../../core/components/organisms/datePicker/DatePicker.tsx": [ "../../core/components/organisms/calendar/Calendar.tsx", + "../../core/components/organisms/calendar/config.ts", "../../core/components/organisms/calendar/types.ts", "../../core/components/organisms/calendar/utility.ts", "../../core/components/organisms/datePicker/Trigger.tsx", @@ -5739,7 +6975,8 @@ "../../core/index.type.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" ], "../../core/components/organisms/datePicker/Trigger.tsx": [ "../../core/components/organisms/calendar/utility.ts", @@ -5791,7 +7028,6 @@ "../../core/components/organisms/grid/Grid.tsx", "../../core/components/organisms/grid/GridContext.ts", "../../core/components/organisms/grid/GridHead.tsx", - "../../core/components/organisms/grid/GridNestedRow.tsx", "../../core/components/organisms/grid/columnUtility.tsx", "../../core/components/organisms/grid/utility.tsx", "../../core/index.tsx", @@ -5801,6 +7037,7 @@ "../../node_modules/classnames/index.d.ts" ], "../../core/components/organisms/grid/Grid.tsx": [ + "../../core/components/organisms/grid/Cell.tsx", "../../core/components/organisms/grid/GridBody.tsx", "../../core/components/organisms/grid/GridContext.ts", "../../core/components/organisms/grid/GridHead.tsx", @@ -5817,7 +7054,6 @@ "../../core/components/organisms/grid/Grid.tsx", "../../core/components/organisms/grid/GridContext.ts", "../../core/components/organisms/grid/GridRow.tsx", - "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -5902,6 +7138,18 @@ "../../core/components/organisms/horizontalNav/HorizontalNav.tsx", "../../node_modules/@types/node/util.d.ts" ], + "../../core/components/organisms/inlineMessage/InlineMessage.tsx": [ + "../../core/common.type.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/organisms/inlineMessage/index.tsx": [ + "../../core/components/organisms/inlineMessage/InlineMessage.tsx", + "../../node_modules/@types/node/util.d.ts" + ], "../../core/components/organisms/list/List.tsx": [ "../../core/components/organisms/table/index.tsx", "../../core/index.tsx", @@ -5913,6 +7161,160 @@ "../../core/components/organisms/list/List.tsx", "../../node_modules/@types/node/util.d.ts" ], + "../../core/components/organisms/listbox/Listbox.tsx": [ + "../../core/common.type.tsx", + "../../core/components/organisms/listbox/listboxItem/index.tsx", + "../../core/components/organisms/listbox/reorderList/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/organisms/listbox/index.tsx": [ + "../../core/components/organisms/listbox/Listbox.tsx", + "../../core/components/organisms/listbox/listboxItem/index.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/listbox/listboxItem/ListBody.tsx": [ + "../../core/components/organisms/listbox/Listbox.tsx", + "../../core/components/organisms/listbox/listboxItem/ListboxItem.tsx", + "../../core/components/organisms/listbox/utils.ts", + "../../core/index.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/organisms/listbox/listboxItem/ListboxItem.tsx": [ + "../../core/components/organisms/listbox/Listbox.tsx", + "../../core/components/organisms/listbox/listboxItem/ListBody.tsx", + "../../core/components/organisms/listbox/nestedList/index.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/organisms/listbox/listboxItem/index.tsx": [ + "../../core/components/organisms/listbox/listboxItem/ListboxItem.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/listbox/nestedList/Animation.tsx": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/listbox/nestedList/NestedList.tsx": [ + "../../core/components/organisms/listbox/nestedList/Animation.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/listbox/nestedList/index.tsx": [ + "../../core/components/organisms/listbox/nestedList/NestedList.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/listbox/reorderList/Draggable.tsx": [ + "../../core/components/organisms/listbox/reorderList/types.ts", + "../../core/components/organisms/listbox/reorderList/utils.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-dom/index.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/listbox/reorderList/DraggableList.tsx": [ + "../../core/components/organisms/listbox/reorderList/Draggable.tsx", + "../../core/components/organisms/listbox/reorderList/utils.ts", + "../../core/index.type.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/organisms/listbox/reorderList/index.tsx": [ + "../../core/components/organisms/listbox/reorderList/DraggableList.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/listbox/reorderList/types.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/listbox/reorderList/utils.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/listbox/utils.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/menu/Menu.tsx": [ + "../../core/components/organisms/menu/MenuContext.tsx", + "../../core/components/organisms/menu/MenuGroup.tsx", + "../../core/components/organisms/menu/MenuItem.tsx", + "../../core/components/organisms/menu/MenuList.tsx", + "../../core/components/organisms/menu/SubMenu.tsx", + "../../core/components/organisms/menu/SubMenuContext.tsx", + "../../core/components/organisms/menu/trigger/MenuTrigger.tsx", + "../../core/components/organisms/menu/trigger/utils.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/organisms/menu/MenuContext.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/menu/MenuGroup.tsx": [ + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/menu/MenuItem.tsx": [ + "../../core/components/organisms/menu/MenuContext.tsx", + "../../core/components/organisms/menu/SubMenuContext.tsx", + "../../core/components/organisms/menu/utils.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/organisms/menu/MenuList.tsx": [ + "../../core/common.type.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/menu/SubMenu.tsx": [ + "../../core/components/organisms/menu/MenuContext.tsx", + "../../core/components/organisms/menu/SubMenuContext.tsx", + "../../core/components/organisms/menu/utils.tsx", + "../../core/utils/uidGenerator.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/menu/SubMenuContext.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/menu/index.tsx": [ + "../../core/components/organisms/menu/Menu.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/menu/trigger/MenuTrigger.tsx": [ + "../../core/components/organisms/menu/MenuContext.tsx", + "../../core/components/organisms/menu/trigger/utils.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/organisms/menu/trigger/utils.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/menu/utils.tsx": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], "../../core/components/organisms/navigation/Navigation.tsx": [ "../../core/components/organisms/navigation/VerticalNavigation.tsx", "../../core/index.tsx", @@ -5933,6 +7335,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/components/organisms/pageHeader/PageHeader.tsx": [ + "../../core/components/organisms/pageHeader/utils.tsx", "../../core/index.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", @@ -5943,148 +7346,253 @@ "../../core/components/organisms/pageHeader/PageHeader.tsx", "../../node_modules/@types/node/util.d.ts" ], - "../../core/components/organisms/table/DraggableDropdown.tsx": [ - "../../core/components/organisms/grid/utility.tsx", + "../../core/components/organisms/pageHeader/utils.tsx": [ + "../../core/components/organisms/pageHeader/PageHeader.tsx", "../../core/index.tsx", - "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" ], - "../../core/components/organisms/table/Header.tsx": [ - "../../core/components/organisms/grid/Grid.tsx", - "../../core/components/organisms/grid/utility.tsx", - "../../core/components/organisms/table/DraggableDropdown.tsx", + "../../core/components/organisms/select/SearchInput.tsx": [ + "../../core/components/organisms/select/SelectContext.tsx", + "../../core/components/organisms/select/utils.tsx", "../../core/index.tsx", "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/organisms/table/Table.tsx": [ - "../../core/components/molecules/pagination/index.tsx", - "../../core/components/organisms/grid/index.tsx", - "../../core/components/organisms/grid/utility.tsx", - "../../core/components/organisms/table/Header.tsx", + "../../core/components/organisms/select/Select.tsx": [ + "../../core/common.type.tsx", + "../../core/components/organisms/select/SearchInput.tsx", + "../../core/components/organisms/select/SelectContext.tsx", + "../../core/components/organisms/select/SelectEmptyTemplate.tsx", + "../../core/components/organisms/select/SelectFooter.tsx", + "../../core/components/organisms/select/SelectList.tsx", + "../../core/components/organisms/select/SelectOption.tsx", + "../../core/components/organisms/select/SelectTrigger.tsx", + "../../core/components/organisms/select/utils.tsx", "../../core/index.tsx", + "../../core/index.type.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts", - "../../node_modules/@types/throttle-debounce/index.d.ts" + "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/organisms/table/index.tsx": [ - "../../core/components/organisms/table/Table.tsx", - "../../node_modules/@types/node/util.d.ts" + "../../core/components/organisms/select/SelectContext.tsx": [ + "../../core/common.type.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/organisms/timePicker/TimePicker.tsx": [ - "../../core/components/organisms/timePicker/utils.tsx", + "../../core/components/organisms/select/SelectEmptyTemplate.tsx": [ + "../../core/components/organisms/select/SelectContext.tsx", "../../core/index.tsx", - "../../core/index.type.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/organisms/timePicker/index.tsx": [ - "../../core/components/organisms/timePicker/TimePicker.tsx", - "../../node_modules/@types/node/util.d.ts" + "../../core/components/organisms/select/SelectFooter.tsx": [ + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/organisms/timePicker/utils.tsx": [ - "../../core/components/organisms/timePicker/TimePicker.tsx", - "../../core/index.type.tsx", - "../../node_modules/@types/node/util.d.ts" + "../../core/components/organisms/select/SelectList.tsx": [ + "../../core/common.type.tsx", + "../../core/components/organisms/select/SelectContext.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/organisms/verticalNav/MenuItem.tsx": [ + "../../core/components/organisms/select/SelectOption.tsx": [ + "../../core/common.type.tsx", + "../../core/components/organisms/select/SelectContext.tsx", + "../../core/components/organisms/select/utils.tsx", "../../core/index.tsx", - "../../core/utils/navigationHelper.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts", - "../../node_modules/classnames/index.d.ts" + "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/organisms/verticalNav/VerticalNav.tsx": [ - "../../core/components/organisms/verticalNav/MenuItem.tsx", + "../../core/components/organisms/select/SelectTrigger.tsx": [ + "../../core/common.type.tsx", + "../../core/components/organisms/select/SelectContext.tsx", + "../../core/components/organisms/select/utils.tsx", "../../core/index.tsx", - "../../core/utils/navigationHelper.tsx", "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts", "../../node_modules/classnames/index.d.ts" ], - "../../core/components/organisms/verticalNav/index.tsx": [ - "../../core/components/organisms/verticalNav/VerticalNav.tsx", + "../../core/components/organisms/select/__test__/Select.test.tsx": [ + "../../core/index.tsx", + "../../core/index.type.tsx", + "../../core/utils/testHelper.ts", + "../../node_modules/@testing-library/react/types/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../core/components/organisms/select/__test__/utils.test.tsx": [ + "../../core/common.type.tsx", + "../../core/components/organisms/select/utils.tsx", "../../node_modules/@types/node/util.d.ts" ], - "../../core/components/patterns/datePicker/dateAndTimePicker.story.tsx": [ + "../../core/components/organisms/select/index.tsx": [ + "../../core/components/organisms/select/Select.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/select/utils.tsx": [ + "../../core/common.type.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/patterns/dateRangePicker/withCustomPopover.story.tsx": [ + "../../core/components/organisms/table/DraggableDropdown.tsx": [ + "../../core/components/organisms/grid/utility.tsx", "../../core/index.tsx", + "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/patterns/forms/CreatePassword.story.tsx": [ + "../../core/components/organisms/table/Header.tsx": [ + "../../core/components/organisms/grid/Grid.tsx", + "../../core/components/organisms/grid/utility.tsx", + "../../core/components/organisms/table/DraggableDropdown.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" ], - "../../core/components/patterns/forms/CreateUser.story.tsx": [ + "../../core/components/organisms/table/Table.tsx": [ + "../../core/components/molecules/pagination/index.tsx", + "../../core/components/organisms/grid/index.tsx", + "../../core/components/organisms/grid/utility.tsx", + "../../core/components/organisms/table/Header.tsx", + "../../core/components/organisms/table/utils.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/throttle-debounce/index.d.ts" ], - "../../core/components/patterns/forms/InlineForm.story.tsx": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../core/components/organisms/table/index.tsx": [ + "../../core/components/organisms/table/Table.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/table/utils.tsx": [ + "../../core/components/organisms/grid/index.tsx", + "../../node_modules/@types/node/util.d.ts" ], - "../../core/components/patterns/forms/InlineLabelForm.story.tsx": [ + "../../core/components/organisms/textField/TextField.tsx": [ + "../../core/components/organisms/textField/TextFieldWithInput.tsx", + "../../core/components/organisms/textField/TextFieldWithTextarea.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/patterns/forms/StepperForm.story.tsx": [ + "../../core/components/organisms/textField/TextFieldCommon.tsx": [ + "../../core/index.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/patterns/forms/TimePeriodForm.story.tsx": [ + "../../core/components/organisms/textField/TextFieldWithInput.tsx": [ + "../../core/components/organisms/textField/TextFieldCommon.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", + "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/patterns/forms/VerificationCodeInput.story.tsx": [ + "../../core/components/organisms/textField/TextFieldWithTextarea.tsx": [ + "../../core/components/organisms/textField/TextFieldCommon.tsx", "../../core/index.tsx", + "../../core/index.type.tsx", + "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/patterns/forms/basicForm.story.tsx": [ + "../../core/components/organisms/textField/__test__/Textarea.test.tsx": [ + "../../core/components/organisms/textField/TextField.tsx", + "../../core/utils/testHelper.ts", + "../../node_modules/@testing-library/react/types/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/patterns/layouts/blankTemplate.story.tsx": [ + "../../core/components/organisms/textField/index.tsx": [ + "../../core/components/organisms/textField/TextField.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/timePicker/TimePicker.tsx": [ + "../../core/components/organisms/timePicker/TimePickerWithInput.tsx", + "../../core/components/organisms/timePicker/TimePickerWithSearch.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/patterns/layouts/level1HeaderTemplate.story.tsx": [ + "../../core/components/organisms/timePicker/TimePickerWithInput.tsx": [ + "../../core/components/organisms/timePicker/utils.tsx", + "../../core/index.tsx", + "../../core/index.type.tsx", + "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/patterns/layouts/miniSidebarTemplate.story.tsx": [ + "../../core/components/organisms/timePicker/TimePickerWithSearch.tsx": [ + "../../core/components/atoms/dropdown/option/index.tsx", + "../../core/components/atoms/dropdown/utility.tsx", + "../../core/components/organisms/timePicker/utility/searchUtils.tsx", + "../../core/components/organisms/timePicker/utility/timePickerUtility.tsx", + "../../core/index.tsx", + "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../core/components/patterns/layouts/narrowWidthContentTemplate.story.tsx": [ + "../../core/components/organisms/timePicker/index.tsx": [ + "../../core/components/organisms/timePicker/TimePicker.tsx", + "../../core/components/organisms/timePicker/TimePickerWithInput.tsx", + "../../core/components/organisms/timePicker/TimePickerWithSearch.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/timePicker/utility/searchUtils.tsx": [ + "../../core/components/atoms/dropdown/option/index.tsx", + "../../core/components/organisms/timePicker/utility/timePickerUtility.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/timePicker/utility/timePickerUtility.tsx": [ + "../../core/components/organisms/timePicker/TimePickerWithSearch.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/timePicker/utils.tsx": [ + "../../core/components/organisms/timePicker/TimePickerWithInput.tsx", + "../../core/index.type.tsx", + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/components/organisms/verticalNav/MenuItem.tsx": [ + "../../core/common.type.tsx", + "../../core/components/atoms/_text/index.tsx", + "../../core/index.tsx", + "../../core/utils/navigationHelper.tsx", + "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" ], - "../../core/components/patterns/layouts/resourceTableTemplate.story.tsx": [ + "../../core/components/organisms/verticalNav/VerticalNav.tsx": [ + "../../core/components/organisms/verticalNav/MenuItem.tsx", + "../../core/index.tsx", + "../../core/utils/navigationHelper.tsx", + "../../core/utils/types.tsx", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" ], - "../../core/components/patterns/layouts/sidebarTemplate.story.tsx": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../core/components/organisms/verticalNav/index.tsx": [ + "../../core/components/organisms/verticalNav/VerticalNav.tsx", + "../../node_modules/@types/node/util.d.ts" ], - "../../core/components/patterns/verticalNavigation/sideNav.story.tsx": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../core/global.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], "../../core/index.tsx": [ + "../../core/components/atoms/actionCard/index.tsx", "../../core/components/atoms/avatar/index.tsx", "../../core/components/atoms/avatarGroup/index.tsx", + "../../core/components/atoms/avatarSelection/index.tsx", "../../core/components/atoms/backdrop/index.tsx", "../../core/components/atoms/badge/index.tsx", "../../core/components/atoms/breadcrumbs/index.tsx", @@ -6100,25 +7608,31 @@ "../../core/components/atoms/chipGroup/index.tsx", "../../core/components/atoms/collapsible/index.tsx", "../../core/components/atoms/column/index.tsx", + "../../core/components/atoms/divider/index.tsx", "../../core/components/atoms/dropdown/index.tsx", "../../core/components/atoms/heading/index.tsx", + "../../core/components/atoms/helpText/index.tsx", "../../core/components/atoms/icon/index.tsx", "../../core/components/atoms/input/index.tsx", "../../core/components/atoms/label/index.tsx", "../../core/components/atoms/legend/index.tsx", "../../core/components/atoms/link/index.tsx", + "../../core/components/atoms/linkButton/index.tsx", "../../core/components/atoms/message/index.tsx", "../../core/components/atoms/metaList/index.tsx", "../../core/components/atoms/metricInput/index.tsx", + "../../core/components/atoms/multiSlider/index.tsx", "../../core/components/atoms/outsideClick/index.tsx", "../../core/components/atoms/paragraph/index.tsx", "../../core/components/atoms/pills/index.tsx", + "../../core/components/atoms/placeholderImage/index.tsx", "../../core/components/atoms/placeholderParagraph/index.tsx", "../../core/components/atoms/progressBar/index.tsx", "../../core/components/atoms/progressRing/index.tsx", "../../core/components/atoms/radio/index.tsx", "../../core/components/atoms/rangeSlider/index.tsx", "../../core/components/atoms/row/index.tsx", + "../../core/components/atoms/selectionCard/index.tsx", "../../core/components/atoms/slider/index.tsx", "../../core/components/atoms/spinner/index.tsx", "../../core/components/atoms/statusHint/index.tsx", @@ -6150,23 +7664,35 @@ "../../core/components/molecules/tooltip/index.tsx", "../../core/components/molecules/verificationCodeInput/index.tsx", "../../core/components/organisms/calendar/index.tsx", + "../../core/components/organisms/choiceList/index.tsx", + "../../core/components/organisms/combobox/index.tsx", "../../core/components/organisms/datePicker/index.tsx", "../../core/components/organisms/dateRangePicker/index.tsx", "../../core/components/organisms/grid/GridCell.tsx", "../../core/components/organisms/grid/index.tsx", "../../core/components/organisms/horizontalNav/index.tsx", + "../../core/components/organisms/inlineMessage/index.tsx", "../../core/components/organisms/list/index.tsx", + "../../core/components/organisms/listbox/index.tsx", + "../../core/components/organisms/menu/index.tsx", "../../core/components/organisms/navigation/index.tsx", "../../core/components/organisms/pageHeader/index.tsx", + "../../core/components/organisms/select/index.tsx", "../../core/components/organisms/table/index.tsx", + "../../core/components/organisms/textField/index.tsx", "../../core/components/organisms/timePicker/index.tsx", "../../core/components/organisms/verticalNav/index.tsx", + "../../core/global.d.ts", "../../core/utils/index.tsx", "../../node_modules/@types/node/util.d.ts" ], "../../core/index.type.tsx": [ + "../../core/components/atoms/actionCard/index.tsx", + "../../core/components/atoms/avatar/avatarIcon/index.tsx", + "../../core/components/atoms/avatar/avatarImage/index.tsx", "../../core/components/atoms/avatar/index.tsx", "../../core/components/atoms/avatarGroup/index.tsx", + "../../core/components/atoms/avatarSelection/index.tsx", "../../core/components/atoms/backdrop/index.tsx", "../../core/components/atoms/badge/index.tsx", "../../core/components/atoms/breadcrumbs/index.tsx", @@ -6182,13 +7708,16 @@ "../../core/components/atoms/chipGroup/index.tsx", "../../core/components/atoms/collapsible/index.tsx", "../../core/components/atoms/column/index.tsx", + "../../core/components/atoms/divider/index.tsx", "../../core/components/atoms/dropdown/index.tsx", "../../core/components/atoms/heading/index.tsx", + "../../core/components/atoms/helpText/index.tsx", "../../core/components/atoms/icon/index.tsx", "../../core/components/atoms/input/index.tsx", "../../core/components/atoms/label/index.tsx", "../../core/components/atoms/legend/index.tsx", "../../core/components/atoms/link/index.tsx", + "../../core/components/atoms/linkButton/index.tsx", "../../core/components/atoms/message/index.tsx", "../../core/components/atoms/metaList/index.tsx", "../../core/components/atoms/metricInput/index.tsx", @@ -6201,6 +7730,7 @@ "../../core/components/atoms/radio/index.tsx", "../../core/components/atoms/rangeSlider/index.tsx", "../../core/components/atoms/row/index.tsx", + "../../core/components/atoms/selectionCard/index.tsx", "../../core/components/atoms/slider/index.tsx", "../../core/components/atoms/spinner/index.tsx", "../../core/components/atoms/statusHint/index.tsx", @@ -6232,15 +7762,22 @@ "../../core/components/molecules/tooltip/index.tsx", "../../core/components/molecules/verificationCodeInput/index.tsx", "../../core/components/organisms/calendar/index.tsx", + "../../core/components/organisms/choiceList/index.tsx", + "../../core/components/organisms/combobox/index.tsx", "../../core/components/organisms/datePicker/index.tsx", "../../core/components/organisms/dateRangePicker/index.tsx", "../../core/components/organisms/grid/GridCell.tsx", "../../core/components/organisms/grid/index.tsx", "../../core/components/organisms/horizontalNav/index.tsx", + "../../core/components/organisms/inlineMessage/index.tsx", "../../core/components/organisms/list/index.tsx", + "../../core/components/organisms/listbox/index.tsx", + "../../core/components/organisms/menu/index.tsx", "../../core/components/organisms/navigation/index.tsx", "../../core/components/organisms/pageHeader/index.tsx", + "../../core/components/organisms/select/index.tsx", "../../core/components/organisms/table/index.tsx", + "../../core/components/organisms/textField/index.tsx", "../../core/components/organisms/timePicker/index.tsx", "../../core/components/organisms/verticalNav/index.tsx", "../../core/index.tsx", @@ -6249,6 +7786,12 @@ "../../core/utils/Keys.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../core/utils/OverlayManager.tsx": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../core/utils/action.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../core/utils/css.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -6256,11 +7799,12 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/utils/docPage/index.tsx": [ + "../../core/global.d.ts", "../../core/index.tsx", "../../core/utils/docPage/generateImports.tsx", "../../core/utils/docPage/sandbox.tsx", "../../node_modules/@storybook/addon-docs/blocks.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@types/js-beautify/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react-dom/server/index.d.ts", "../../node_modules/@types/react-syntax-highlighter/index.d.ts", @@ -6286,6 +7830,7 @@ "../../node_modules/@types/node/util.d.ts" ], "../../core/utils/navigationHelper.tsx": [ + "../../core/common.type.tsx", "../../node_modules/@types/node/util.d.ts" ], "../../core/utils/overlayHelper.ts": [ @@ -6336,17 +7881,14 @@ "../../node_modules/@emotion/is-prop-valid/types/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@emotion/serialize/node_modules/csstype/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], "../../node_modules/@emotion/serialize/types/helper.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@emotion/serialize/types/index.d.ts": [ - "../../node_modules/@emotion/serialize/node_modules/csstype/index.d.ts", "../../node_modules/@emotion/serialize/types/helper.d.ts", "../../node_modules/@emotion/utils/types/index.d.ts", - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/csstype/index.d.ts" ], "../../node_modules/@emotion/styled-base/types/helper.d.ts": [ "../../node_modules/@types/node/util.d.ts", @@ -6368,193 +7910,9 @@ "../../node_modules/@emotion/utils/types/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@popperjs/core/index.d.ts": [ - "../../node_modules/@popperjs/core/lib/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/createPopper.d.ts": [ - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@popperjs/core/lib/utils/detectOverflow.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/enums.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/index.d.ts": [ - "../../node_modules/@popperjs/core/lib/createPopper.d.ts", - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/index.d.ts", - "../../node_modules/@popperjs/core/lib/popper-lite.d.ts", - "../../node_modules/@popperjs/core/lib/popper.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts": [ - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/arrow.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts": [ - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/flip.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/hide.d.ts": [ - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/index.d.ts": [ - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/arrow.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/flip.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/hide.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/offset.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/offset.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts": [ - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/popper-lite.d.ts": [ - "../../node_modules/@popperjs/core/lib/createPopper.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/popper.d.ts": [ - "../../node_modules/@popperjs/core/lib/createPopper.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/arrow.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/flip.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/hide.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/index.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/offset.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.d.ts", - "../../node_modules/@popperjs/core/lib/popper-lite.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/types.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/arrow.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/flip.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/hide.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/offset.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/utils/detectOverflow.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/constants.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/index.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/constants.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionDisplay.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionOptions.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionOptions.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsFunction.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionOptions.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsMap.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsMap.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/HandlerFunction.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/DecoratorFunction.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/HandlerFunction.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionDisplay.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionOptions.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsFunction.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsMap.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/DecoratorFunction.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/HandlerFunction.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/action.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/actions.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/configureActions.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/decorateAction.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/index.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/action.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/actions.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/configureActions.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/decorateAction.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/withActions.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/withActions.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], "../../node_modules/@storybook/addon-docs/blocks.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Anchor.d.ts": [ @@ -6564,30 +7922,34 @@ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/ArgsTable.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Canvas.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Source.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Description.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContainer.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -6605,8 +7967,7 @@ "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Meta.d.ts": [ - "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts", - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -6627,12 +7988,13 @@ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Source.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/SourceContainer.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/SourceContainer.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -6642,8 +8004,9 @@ ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Story.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -6689,111 +8052,513 @@ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Wrapper.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/mdx.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/mdx.d.ts": [ + "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/webpack-env/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/notifications.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/release-notes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/settings.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/shortcuts.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/store.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/store.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/notifications.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/release-notes.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/settings.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/shortcuts.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/store.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-createPopper.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-utils-detectOverflow.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-createPopper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper-lite.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-arrow.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-flip.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-hide.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-arrow.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-flip.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-hide.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-offset.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-preventOverflow.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-offset.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-preventOverflow.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper-lite.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-createPopper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-createPopper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-arrow.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-flip.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-hide.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-offset.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-preventOverflow.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper-lite.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-arrow.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-flip.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-hide.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-offset.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-preventOverflow.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-utils-detectOverflow.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@types-prettier-index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@types-prettier-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/react-textarea-autosize/dist/react-textarea-autosize.cjs.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/SBType.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/includeConditionalArg.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/story.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/includeConditionalArg.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/story.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/story.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/SBType.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-dom-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-node_modules-history-index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-node_modules-history-index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-dom-index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/ArgsStore.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/GlobalsStore.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryIndexStore.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryStore.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/ArgsStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/GlobalsStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryIndexStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/synchronous-promise/index.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/args.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/autoTitle.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/composeConfigs.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/getValuesFromArgTypes.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/composeConfigs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/getValuesFromArgTypes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeComponentAnnotations.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeInputTypes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeProjectAnnotations.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeStory.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/prepareStory.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/processCSFFile.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeComponentAnnotations.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeInputTypes.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeProjectAnnotations.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeStory.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/prepareStory.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/processCSFFile.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/decorators.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/filterArgTypes.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/hooks.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/mdx.d.ts": [ - "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/args.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/autoTitle.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/decorators.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/filterArgTypes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/inferControls.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/parameters.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/sortStories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/inferControls.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Array.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/parameters.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Boolean.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/sortStories.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Button.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/synchronous-promise/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Color.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-node_modules-@emotion-utils-types-index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Date.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-types-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-node_modules-@emotion-utils-types-index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Files.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-is-prop-valid-types-index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Number.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-@emotion-serialize-types-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-node_modules-@emotion-utils-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-csstype-index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Object.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-csstype-index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Options.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-helper.d.ts": [ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Radio.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-@emotion-serialize-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-helper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-jsx-namespace.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-theming.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Select.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-jsx-namespace.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-@emotion-serialize-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Text.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-theming.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-helper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/index.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/Array.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Boolean.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Button.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Color.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Date.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Files.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Number.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Object.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Options.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Radio.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Select.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Text.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-is-prop-valid-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-knobs/dist/index.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/index.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/shared.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/type-defs.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-knobs/dist/shared.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-knobs/dist/type-defs.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], "../../node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/addons/dist/ts3.9/index.d.ts": [ @@ -6822,8 +8587,8 @@ "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts", "../../node_modules/@storybook/addons/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/webpack-env/index.d.ts" ], @@ -6845,27 +8610,28 @@ "../../node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts", "../../node_modules/@storybook/api/dist/ts3.9/store.d.ts", "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/router/dist/ts3.9/router.d.ts", "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/reach__router/index.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", "../../node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts", "../../node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts", + "../../node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts": [ "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", "../../node_modules/@storybook/api/dist/ts3.9/store.d.ts", + "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/reach__router/index.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts": [ @@ -6875,6 +8641,7 @@ ], "../../node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts": [ "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts": [ @@ -6914,455 +8681,121 @@ "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", - "../../node_modules/@storybook/csf/dist/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/reach__router/index.d.ts" - ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/api/dist/ts3.9/store.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/client_api.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/webpack-env/index.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/config_api.d.ts": [ - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/webpack-env/index.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/decorators.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/filterArgTypes.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/hooks.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/index.d.ts": [ - "../../node_modules/@storybook/client-api/dist/ts3.9/client_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/config_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/decorators.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/filterArgTypes.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/hooks.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/inferControls.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/parameters.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/pathToId.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/queryparams.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/simulate-pageload.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/inferControls.d.ts": [ - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/parameters.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/pathToId.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/queryparams.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/qs/index.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/simulate-pageload.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/hooks.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/ActionBar/ActionBar.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/Badge/Badge.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/Button/Button.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/Loader/Loader.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/ScrollArea/ScrollArea.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/Zoom.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomElement.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomIFrame.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomElement.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomIFrame.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/addon-panel/addon-panel.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/bar/bar.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/bar/button.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/bar/separator.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/ArgsTable.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/types.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/NoControlsWarning.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/TabbedArgsTable.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/ArgsTable.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/index.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/ArgsTable.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/NoControlsWarning.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/TabbedArgsTable.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/types.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ColorPalette.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Description.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/DocsPage.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IFrame.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IconGallery.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Preview.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/ActionBar/ActionBar.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Source.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Source.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Story.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Typeset.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/index.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ColorPalette.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Description.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/DocsPage.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IFrame.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IconGallery.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Preview.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Source.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Story.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Typeset.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookIcon.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookLogo.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Array.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Boolean.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Color.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Date.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Files.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Number.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Object.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Range.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Text.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/index.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/Array.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Boolean.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Color.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Date.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Files.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Number.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Object.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Range.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Text.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/Options.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/index.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/Options.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/blocks/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/form/field/field.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/form/index.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/form/field/field.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/form/input/input.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts", - "../../node_modules/react-textarea-autosize/dist/react-textarea-autosize.cjs.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/form/input/input.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts", - "../../node_modules/react-textarea-autosize/dist/react-textarea-autosize.cjs.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", + "../../node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/icon/icon.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/icon/icons.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/icon/svg.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/icon/icons.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/icon/svg.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/store.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/ActionBar/ActionBar.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Badge/Badge.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Button/Button.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Loader/Loader.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/ScrollArea/ScrollArea.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/Zoom.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/addon-panel/addon-panel.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/bar/bar.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/bar/button.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/bar/separator.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookIcon.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookLogo.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/form/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/icon/icon.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/placeholder/placeholder.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/spaced/Spaced.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/lazy-syntaxhighlighter.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/syntaxhighlighter-types.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tabs/tabs.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipLinkList.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipMessage.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipNote.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/lazy-WithTooltip.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentFormatting.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentWrapper.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/typography/link/link.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/placeholder/placeholder.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/csf/dist/SBType.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/spaced/Spaced.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/csf/dist/index.d.ts": [ + "../../node_modules/@storybook/csf/dist/story.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/lazy-syntaxhighlighter.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/csf/dist/story.d.ts": [ + "../../node_modules/@storybook/csf/dist/SBType.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/syntaxhighlighter-types.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/preview-web/dist/ts3.9/DocsRender.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/StoryRender.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tabs/tabs.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/preview-web/dist/ts3.9/Preview.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/DocsRender.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/StoryRender.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/ListItem.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/preview-web/dist/ts3.9/PreviewWeb.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/Preview.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/StoryRender.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/UrlStore.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/WebView.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipLinkList.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/ListItem.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/preview-web/dist/ts3.9/StoryRender.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipMessage.d.ts": [ + "../../node_modules/@storybook/preview-web/dist/ts3.9/UrlStore.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/qs/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipNote.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/preview-web/dist/ts3.9/WebView.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/WithTooltip.d.ts": [ - "../../node_modules/@popperjs/core/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/preview-web/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/Preview.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/PreviewWeb.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/simulate-pageload.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/lazy-WithTooltip.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/WithTooltip.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/preview-web/dist/ts3.9/simulate-pageload.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentFormatting.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/preview-web/dist/ts3.9/types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/PreviewWeb.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentWrapper.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/preview-web/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/typography/link/link.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/preview-web/node_modules/@storybook/csf/dist/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/includeConditionalArg.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/story.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/csf/dist/index.d.ts": [ + "../../node_modules/@storybook/preview-web/node_modules/@storybook/store/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/args.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/autoTitle.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/decorators.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/filterArgTypes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/inferControls.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/parameters.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/sortStories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts": [ @@ -7373,8 +8806,8 @@ "../../node_modules/@storybook/router/dist/ts3.9/router.d.ts": [ "../../node_modules/@storybook/router/dist/ts3.9/utils.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/reach__router/index.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/react-router-dom/index.d.ts" ], "../../node_modules/@storybook/router/dist/ts3.9/utils.d.ts": [ "../../node_modules/@types/node/util.d.ts" @@ -7543,8 +8976,19 @@ "../../node_modules/@babel/types/lib/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/braces/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/buble/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/magic-string/index.d.ts" + ], + "../../node_modules/@types/cacheable-request/index.d.ts": [ + "../../node_modules/@types/http-cache-semantics/index.d.ts", + "../../node_modules/@types/node/events.d.ts", + "../../node_modules/@types/node/http.d.ts", + "../../node_modules/@types/node/index.d.ts", + "../../node_modules/@types/node/url.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/responselike/index.d.ts", + "../../node_modules/keyv/src/index.d.ts" ], "../../node_modules/@types/color-convert/conversions.d.ts": [ "../../node_modules/@types/color-name/index.d.ts", @@ -7562,15 +9006,16 @@ "../../node_modules/@types/color-name/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/estree/index.d.ts": [ + "../../node_modules/@types/emscripten/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/glob-base/index.d.ts": [ + "../../node_modules/@types/estree/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@types/glob/index.d.ts": [ "../../node_modules/@types/minimatch/index.d.ts", "../../node_modules/@types/node/events.d.ts", + "../../node_modules/@types/node/fs.d.ts", "../../node_modules/@types/node/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], @@ -7586,6 +9031,9 @@ "../../node_modules/@types/html-minifier-terser/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/http-cache-semantics/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/is-function/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -7604,24 +9052,219 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/jest-diff/build/index.d.ts" ], + "../../node_modules/@types/js-beautify/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/json-schema/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/lz-string/index.d.ts": [ + "../../node_modules/@types/keyv/index.d.ts": [ + "../../node_modules/@types/node/events.d.ts", + "../../node_modules/@types/node/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/markdown-to-jsx/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/index.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lz-string/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@types/mdast/index.d.ts": [ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/unist/index.d.ts" ], - "../../node_modules/@types/micromatch/index.d.ts": [ - "../../node_modules/@types/braces/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], "../../node_modules/@types/minimatch/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -7651,11 +9294,6 @@ "../../node_modules/@types/node/async_hooks.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/node/base.d.ts": [ - "../../node_modules/@types/node/assert.d.ts", - "../../node_modules/@types/node/ts3.6/base.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], "../../node_modules/@types/node/buffer.d.ts": [ "../../node_modules/@types/node/buffer.d.ts", "../../node_modules/@types/node/crypto.d.ts", @@ -7766,13 +9404,62 @@ "../../node_modules/@types/node/https.d.ts": [ "../../node_modules/@types/node/http.d.ts", "../../node_modules/@types/node/https.d.ts", + "../../node_modules/@types/node/stream.d.ts", "../../node_modules/@types/node/tls.d.ts", "../../node_modules/@types/node/url.d.ts", "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@types/node/index.d.ts": [ - "../../node_modules/@types/node/base.d.ts", - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/node/assert.d.ts", + "../../node_modules/@types/node/assert/strict.d.ts", + "../../node_modules/@types/node/async_hooks.d.ts", + "../../node_modules/@types/node/buffer.d.ts", + "../../node_modules/@types/node/child_process.d.ts", + "../../node_modules/@types/node/cluster.d.ts", + "../../node_modules/@types/node/console.d.ts", + "../../node_modules/@types/node/constants.d.ts", + "../../node_modules/@types/node/crypto.d.ts", + "../../node_modules/@types/node/dgram.d.ts", + "../../node_modules/@types/node/diagnostics_channel.d.ts", + "../../node_modules/@types/node/dns.d.ts", + "../../node_modules/@types/node/dns/promises.d.ts", + "../../node_modules/@types/node/domain.d.ts", + "../../node_modules/@types/node/events.d.ts", + "../../node_modules/@types/node/fs.d.ts", + "../../node_modules/@types/node/fs/promises.d.ts", + "../../node_modules/@types/node/globals.d.ts", + "../../node_modules/@types/node/globals.global.d.ts", + "../../node_modules/@types/node/http.d.ts", + "../../node_modules/@types/node/http2.d.ts", + "../../node_modules/@types/node/https.d.ts", + "../../node_modules/@types/node/inspector.d.ts", + "../../node_modules/@types/node/module.d.ts", + "../../node_modules/@types/node/net.d.ts", + "../../node_modules/@types/node/os.d.ts", + "../../node_modules/@types/node/path.d.ts", + "../../node_modules/@types/node/perf_hooks.d.ts", + "../../node_modules/@types/node/process.d.ts", + "../../node_modules/@types/node/punycode.d.ts", + "../../node_modules/@types/node/querystring.d.ts", + "../../node_modules/@types/node/readline.d.ts", + "../../node_modules/@types/node/repl.d.ts", + "../../node_modules/@types/node/stream.d.ts", + "../../node_modules/@types/node/stream/consumers.d.ts", + "../../node_modules/@types/node/stream/promises.d.ts", + "../../node_modules/@types/node/stream/web.d.ts", + "../../node_modules/@types/node/string_decoder.d.ts", + "../../node_modules/@types/node/timers.d.ts", + "../../node_modules/@types/node/timers/promises.d.ts", + "../../node_modules/@types/node/tls.d.ts", + "../../node_modules/@types/node/trace_events.d.ts", + "../../node_modules/@types/node/tty.d.ts", + "../../node_modules/@types/node/url.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/node/v8.d.ts", + "../../node_modules/@types/node/vm.d.ts", + "../../node_modules/@types/node/wasi.d.ts", + "../../node_modules/@types/node/worker_threads.d.ts", + "../../node_modules/@types/node/zlib.d.ts" ], "../../node_modules/@types/node/inspector.d.ts": [ "../../node_modules/@types/node/events.d.ts", @@ -7832,14 +9519,24 @@ "../../node_modules/@types/node/stream.d.ts": [ "../../node_modules/@types/node/events.d.ts", "../../node_modules/@types/node/stream.d.ts", + "../../node_modules/@types/node/stream/consumers.d.ts", "../../node_modules/@types/node/stream/promises.d.ts", "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/node/stream/consumers.d.ts": [ + "../../node_modules/@types/node/stream.d.ts", + "../../node_modules/@types/node/stream/consumers.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/node/stream/promises.d.ts": [ "../../node_modules/@types/node/stream.d.ts", "../../node_modules/@types/node/stream/promises.d.ts", "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/node/stream/web.d.ts": [ + "../../node_modules/@types/node/stream/web.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/node/string_decoder.d.ts": [ "../../node_modules/@types/node/string_decoder.d.ts", "../../node_modules/@types/node/util.d.ts" @@ -7865,61 +9562,13 @@ "../../node_modules/@types/node/trace_events.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/node/ts3.6/base.d.ts": [ - "../../node_modules/@types/node/assert/strict.d.ts", - "../../node_modules/@types/node/async_hooks.d.ts", - "../../node_modules/@types/node/buffer.d.ts", - "../../node_modules/@types/node/child_process.d.ts", - "../../node_modules/@types/node/cluster.d.ts", - "../../node_modules/@types/node/console.d.ts", - "../../node_modules/@types/node/constants.d.ts", - "../../node_modules/@types/node/crypto.d.ts", - "../../node_modules/@types/node/dgram.d.ts", - "../../node_modules/@types/node/diagnostics_channel.d.ts", - "../../node_modules/@types/node/dns.d.ts", - "../../node_modules/@types/node/dns/promises.d.ts", - "../../node_modules/@types/node/domain.d.ts", - "../../node_modules/@types/node/events.d.ts", - "../../node_modules/@types/node/fs.d.ts", - "../../node_modules/@types/node/fs/promises.d.ts", - "../../node_modules/@types/node/globals.d.ts", - "../../node_modules/@types/node/globals.global.d.ts", - "../../node_modules/@types/node/http.d.ts", - "../../node_modules/@types/node/http2.d.ts", - "../../node_modules/@types/node/https.d.ts", - "../../node_modules/@types/node/inspector.d.ts", - "../../node_modules/@types/node/module.d.ts", - "../../node_modules/@types/node/net.d.ts", - "../../node_modules/@types/node/os.d.ts", - "../../node_modules/@types/node/path.d.ts", - "../../node_modules/@types/node/perf_hooks.d.ts", - "../../node_modules/@types/node/process.d.ts", - "../../node_modules/@types/node/punycode.d.ts", - "../../node_modules/@types/node/querystring.d.ts", - "../../node_modules/@types/node/readline.d.ts", - "../../node_modules/@types/node/repl.d.ts", - "../../node_modules/@types/node/stream.d.ts", - "../../node_modules/@types/node/stream/promises.d.ts", - "../../node_modules/@types/node/string_decoder.d.ts", - "../../node_modules/@types/node/timers.d.ts", - "../../node_modules/@types/node/timers/promises.d.ts", - "../../node_modules/@types/node/tls.d.ts", - "../../node_modules/@types/node/trace_events.d.ts", - "../../node_modules/@types/node/tty.d.ts", - "../../node_modules/@types/node/url.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/node/v8.d.ts", - "../../node_modules/@types/node/vm.d.ts", - "../../node_modules/@types/node/wasi.d.ts", - "../../node_modules/@types/node/worker_threads.d.ts", - "../../node_modules/@types/node/zlib.d.ts" - ], "../../node_modules/@types/node/tty.d.ts": [ "../../node_modules/@types/node/net.d.ts", "../../node_modules/@types/node/tty.d.ts", "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@types/node/url.d.ts": [ + "../../node_modules/@types/node/buffer.d.ts", "../../node_modules/@types/node/http.d.ts", "../../node_modules/@types/node/querystring.d.ts", "../../node_modules/@types/node/url.d.ts", @@ -7962,34 +9611,138 @@ "../../node_modules/@types/normalize-package-data/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/npmlog/index.d.ts": [ - "../../node_modules/@types/node/events.d.ts", - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/npmlog/index.d.ts": [ + "../../node_modules/@types/node/events.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/overlayscrollbars/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/parse-json/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/parse5/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/pretty-hrtime/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/prop-types/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/qs/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/reach__router/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@types/react-color/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/lib/components/alpha/Alpha.d.ts", + "../../node_modules/@types/react-color/lib/components/block/Block.d.ts", + "../../node_modules/@types/react-color/lib/components/chrome/Chrome.d.ts", + "../../node_modules/@types/react-color/lib/components/circle/Circle.d.ts", + "../../node_modules/@types/react-color/lib/components/common/Checkboard.d.ts", + "../../node_modules/@types/react-color/lib/components/common/ColorWrap.d.ts", + "../../node_modules/@types/react-color/lib/components/compact/Compact.d.ts", + "../../node_modules/@types/react-color/lib/components/github/Github.d.ts", + "../../node_modules/@types/react-color/lib/components/hue/Hue.d.ts", + "../../node_modules/@types/react-color/lib/components/material/Material.d.ts", + "../../node_modules/@types/react-color/lib/components/photoshop/Photoshop.d.ts", + "../../node_modules/@types/react-color/lib/components/sketch/Sketch.d.ts", + "../../node_modules/@types/react-color/lib/components/slider/Slider.d.ts", + "../../node_modules/@types/react-color/lib/components/swatches/Swatches.d.ts", + "../../node_modules/@types/react-color/lib/components/twitter/Twitter.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/alpha/Alpha.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/block/Block.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/chrome/Chrome.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/circle/Circle.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/common/Checkboard.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/common/ColorWrap.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/compact/Compact.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" ], - "../../node_modules/@types/overlayscrollbars/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/react-color/lib/components/github/Github.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" ], - "../../node_modules/@types/parse-json/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/react-color/lib/components/hue/Hue.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" ], - "../../node_modules/@types/parse5/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/react-color/lib/components/material/Material.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" ], - "../../node_modules/@types/prettier/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/react-color/lib/components/photoshop/Photoshop.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" ], - "../../node_modules/@types/pretty-hrtime/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/react-color/lib/components/sketch/Sketch.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" ], - "../../node_modules/@types/prop-types/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/react-color/lib/components/slider/Slider.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" ], - "../../node_modules/@types/qs/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/react-color/lib/components/swatches/Swatches.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" ], - "../../node_modules/@types/reach__router/index.d.ts": [ + "../../node_modules/@types/react-color/lib/components/twitter/Twitter.d.ts": [ "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" ], "../../node_modules/@types/react-dom/index.d.ts": [ "../../node_modules/@types/node/util.d.ts", @@ -8002,8 +9755,11 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/prop-types/index.d.ts", "../../node_modules/@types/react-dom/node_modules/@types/react/global.d.ts", - "../../node_modules/@types/scheduler/tracing.d.ts", - "../../node_modules/csstype/index.d.ts" + "../../node_modules/@types/react/node_modules/csstype/index.d.ts", + "../../node_modules/@types/scheduler/tracing.d.ts" + ], + "../../node_modules/@types/react-dom/node_modules/csstype/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@types/react-dom/server/index.d.ts": [ "../../node_modules/@types/node/util.d.ts", @@ -8026,19 +9782,272 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/prop-types/index.d.ts", "../../node_modules/@types/react/global.d.ts", - "../../node_modules/@types/scheduler/tracing.d.ts", - "../../node_modules/csstype/index.d.ts" + "../../node_modules/@types/react/node_modules/csstype/index.d.ts", + "../../node_modules/@types/scheduler/tracing.d.ts" + ], + "../../node_modules/@types/react/node_modules/csstype/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/reactcss/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@types/resolve/index.d.ts": [ "../../node_modules/@types/node/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/responselike/index.d.ts": [ + "../../node_modules/@types/node/http.d.ts", + "../../node_modules/@types/node/index.d.ts", + "../../node_modules/@types/node/stream.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/scheduler/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@types/scheduler/tracing.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/semver/classes/comparator.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/classes/range.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/comparator.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/classes/semver.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/clean.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/cmp.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/coerce.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/compare-build.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/compare-loose.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts" + ], + "../../node_modules/@types/semver/functions/compare.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/diff.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/eq.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/gt.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/gte.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/inc.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/lt.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/lte.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/major.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/minor.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/neq.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/parse.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/patch.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/prerelease.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/rcompare.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/rsort.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/satisfies.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/sort.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/valid.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/comparator.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/functions/clean.d.ts", + "../../node_modules/@types/semver/functions/cmp.d.ts", + "../../node_modules/@types/semver/functions/coerce.d.ts", + "../../node_modules/@types/semver/functions/compare-build.d.ts", + "../../node_modules/@types/semver/functions/compare-loose.d.ts", + "../../node_modules/@types/semver/functions/compare.d.ts", + "../../node_modules/@types/semver/functions/diff.d.ts", + "../../node_modules/@types/semver/functions/eq.d.ts", + "../../node_modules/@types/semver/functions/gt.d.ts", + "../../node_modules/@types/semver/functions/gte.d.ts", + "../../node_modules/@types/semver/functions/inc.d.ts", + "../../node_modules/@types/semver/functions/lt.d.ts", + "../../node_modules/@types/semver/functions/lte.d.ts", + "../../node_modules/@types/semver/functions/major.d.ts", + "../../node_modules/@types/semver/functions/minor.d.ts", + "../../node_modules/@types/semver/functions/neq.d.ts", + "../../node_modules/@types/semver/functions/parse.d.ts", + "../../node_modules/@types/semver/functions/patch.d.ts", + "../../node_modules/@types/semver/functions/prerelease.d.ts", + "../../node_modules/@types/semver/functions/rcompare.d.ts", + "../../node_modules/@types/semver/functions/rsort.d.ts", + "../../node_modules/@types/semver/functions/satisfies.d.ts", + "../../node_modules/@types/semver/functions/sort.d.ts", + "../../node_modules/@types/semver/functions/valid.d.ts", + "../../node_modules/@types/semver/internals/identifiers.d.ts", + "../../node_modules/@types/semver/ranges/gtr.d.ts", + "../../node_modules/@types/semver/ranges/intersects.d.ts", + "../../node_modules/@types/semver/ranges/ltr.d.ts", + "../../node_modules/@types/semver/ranges/max-satisfying.d.ts", + "../../node_modules/@types/semver/ranges/min-satisfying.d.ts", + "../../node_modules/@types/semver/ranges/min-version.d.ts", + "../../node_modules/@types/semver/ranges/outside.d.ts", + "../../node_modules/@types/semver/ranges/simplify.d.ts", + "../../node_modules/@types/semver/ranges/subset.d.ts", + "../../node_modules/@types/semver/ranges/to-comparators.d.ts", + "../../node_modules/@types/semver/ranges/valid.d.ts" + ], + "../../node_modules/@types/semver/internals/identifiers.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/semver/ranges/gtr.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/intersects.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/ltr.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/max-satisfying.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/min-satisfying.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/min-version.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/outside.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/simplify.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/subset.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/to-comparators.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/valid.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], "../../node_modules/@types/source-list-map/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -8055,6 +10064,9 @@ "../../node_modules/@types/throttle-debounce/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/treeify/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/uglify-js/index.d.ts": [ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/uglify-js/node_modules/source-map/source-map.d.ts" @@ -8164,10 +10176,7 @@ "../../node_modules/@types/uglify-js/index.d.ts", "../../node_modules/@types/uglify-js/node_modules/source-map/source-map.d.ts", "../../node_modules/@types/webpack-sources/index.d.ts", - "../../node_modules/@types/webpack/node_modules/anymatch/index.d.ts" - ], - "../../node_modules/@types/webpack/node_modules/anymatch/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/anymatch/index.d.ts" ], "../../node_modules/@types/webpack/node_modules/source-map/source-map.d.ts": [ "../../node_modules/@types/node/util.d.ts" @@ -8179,6 +10188,9 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/yargs-parser/index.d.ts" ], + "../../node_modules/anymatch/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/classnames/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -8207,6 +10219,13 @@ "../../node_modules/jest-diff/build/types.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/keyv/src/index.d.ts": [ + "../../node_modules/@types/node/events.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/magic-string/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/popper.js/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -8227,6 +10246,7 @@ "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/react-live/typings/react-live.d.ts": [ + "../../node_modules/@types/buble/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts", "../../node_modules/prism-react-renderer/index.d.ts" @@ -8236,6 +10256,19 @@ "../../node_modules/@types/react/index.d.ts", "../../node_modules/popper.js/index.d.ts" ], + "../../node_modules/react-router-dom/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/react-router/index.d.ts" + ], + "../../node_modules/react-router/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/react-router/node_modules/history/index.d.ts" + ], + "../../node_modules/react-router/node_modules/history/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/react-textarea-autosize/dist/declarations/src/index.d.ts": [ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" @@ -8244,6 +10277,9 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/react-textarea-autosize/dist/declarations/src/index.d.ts" ], + "../../node_modules/synchronous-promise/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/tslib/tslib.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -8322,9 +10358,36 @@ "../../node_modules/typescript/lib/lib.es2018.regexp.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/typescript/lib/lib.es2019.array.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2019.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2019.object.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2019.string.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2019.symbol.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/typescript/lib/lib.es2020.bigint.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/typescript/lib/lib.es2020.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2020.promise.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2020.string.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/typescript/lib/lib.es5.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -8336,9 +10399,22 @@ ], "../../scripts/setupTest.ts": [ "../../node_modules/@types/node/util.d.ts" + ], + "../../types/index.d.ts": [ + "../../node_modules/@types/jest/index.d.ts", + "../../node_modules/@types/node/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/prop-types/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/scheduler/index.d.ts", + "../../node_modules/@types/throttle-debounce/index.d.ts", + "../../node_modules/@types/webpack-env/index.d.ts" ] }, "exportedModulesMap": { + "../../core/global.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@babel/parser/typings/babel-parser.d.ts": [ "../../node_modules/@babel/types/lib/index.d.ts", "../../node_modules/@types/node/util.d.ts" @@ -8365,225 +10441,38 @@ "../../node_modules/@emotion/is-prop-valid/types/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@emotion/serialize/node_modules/csstype/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], "../../node_modules/@emotion/serialize/types/helper.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@emotion/serialize/types/index.d.ts": [ - "../../node_modules/@emotion/serialize/node_modules/csstype/index.d.ts", "../../node_modules/@emotion/serialize/types/helper.d.ts", "../../node_modules/@emotion/utils/types/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@emotion/styled-base/types/helper.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@emotion/styled-base/types/index.d.ts": [ - "../../node_modules/@emotion/serialize/types/index.d.ts", - "../../node_modules/@emotion/styled-base/types/helper.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@emotion/styled/types/index.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@emotion/stylis/types/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@emotion/utils/types/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/index.d.ts": [ - "../../node_modules/@popperjs/core/lib/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/createPopper.d.ts": [ - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@popperjs/core/lib/utils/detectOverflow.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/enums.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/index.d.ts": [ - "../../node_modules/@popperjs/core/lib/createPopper.d.ts", - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/index.d.ts", - "../../node_modules/@popperjs/core/lib/popper-lite.d.ts", - "../../node_modules/@popperjs/core/lib/popper.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts": [ - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/arrow.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts": [ - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/flip.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/hide.d.ts": [ - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/index.d.ts": [ - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/arrow.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/flip.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/hide.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/offset.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/offset.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts": [ - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/popper-lite.d.ts": [ - "../../node_modules/@popperjs/core/lib/createPopper.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/popper.d.ts": [ - "../../node_modules/@popperjs/core/lib/createPopper.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/arrow.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/flip.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/hide.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/index.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/offset.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.d.ts", - "../../node_modules/@popperjs/core/lib/popper-lite.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/types.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/arrow.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/flip.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/hide.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/offset.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@popperjs/core/lib/utils/detectOverflow.d.ts": [ - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/constants.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/index.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/constants.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionDisplay.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionOptions.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionOptions.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsFunction.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionOptions.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsMap.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsMap.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/HandlerFunction.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/DecoratorFunction.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/HandlerFunction.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionDisplay.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionOptions.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsFunction.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsMap.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/DecoratorFunction.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/HandlerFunction.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/action.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts", - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/csstype/index.d.ts" ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/actions.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts", - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@emotion/styled-base/types/helper.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/configureActions.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts", - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@emotion/styled-base/types/index.d.ts": [ + "../../node_modules/@emotion/serialize/types/index.d.ts", + "../../node_modules/@emotion/styled-base/types/helper.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/decorateAction.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts", + "../../node_modules/@emotion/styled/types/index.d.ts": [ + "../../node_modules/@emotion/styled-base/types/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/index.d.ts": [ - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/action.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/actions.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/configureActions.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/decorateAction.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/withActions.d.ts", + "../../node_modules/@emotion/stylis/types/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/withActions.d.ts": [ + "../../node_modules/@emotion/utils/types/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/addon-docs/blocks.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Anchor.d.ts": [ @@ -8593,30 +10482,34 @@ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/ArgsTable.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Canvas.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Source.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Description.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContainer.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -8634,8 +10527,7 @@ "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Meta.d.ts": [ - "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts", - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -8656,12 +10548,13 @@ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Source.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/SourceContainer.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/SourceContainer.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -8671,8 +10564,9 @@ ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Story.d.ts": [ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/DocsContext.d.ts", - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], @@ -8718,7 +10612,7 @@ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Wrapper.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/mdx.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/mdx.d.ts": [ @@ -8729,669 +10623,739 @@ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Array.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Boolean.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Button.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Color.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Date.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Files.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/webpack-env/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Number.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/notifications.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/release-notes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/settings.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/shortcuts.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/store.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Object.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Options.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Radio.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/store.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Select.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/Text.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/notifications.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/index.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/Array.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Boolean.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Button.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Color.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Date.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Files.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Number.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Object.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Options.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Radio.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Select.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Text.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/index.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/index.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/shared.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/type-defs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/release-notes.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/shared.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/settings.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addon-knobs/dist/type-defs.d.ts": [ - "../../node_modules/@storybook/addon-knobs/dist/components/types/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/shortcuts.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addons/dist/ts3.9/index.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts", - "../../node_modules/@storybook/addons/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts", - "../../node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts", - "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts": [ - "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/store.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts", - "../../node_modules/@storybook/addons/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/webpack-env/index.d.ts" - ], - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/notifications.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/release-notes.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/settings.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/shortcuts.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/store.d.ts", - "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/reach__router/index.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/store.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/reach__router/index.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-createPopper.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-utils-detectOverflow.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/notifications.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", - "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" - ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-createPopper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper-lite.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/release-notes.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/settings.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-arrow.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/shortcuts.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", - "../../node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/reach__router/index.d.ts" - ], - "../../node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-flip.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/api/dist/ts3.9/store.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-hide.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-arrow.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-flip.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-hide.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-offset.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-preventOverflow.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/client_api.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/webpack-env/index.d.ts" - ], - "../../node_modules/@storybook/client-api/dist/ts3.9/config_api.d.ts": [ - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/webpack-env/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-offset.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/decorators.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/filterArgTypes.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-preventOverflow.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/hooks.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper-lite.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-createPopper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/index.d.ts": [ - "../../node_modules/@storybook/client-api/dist/ts3.9/client_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/config_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/decorators.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/filterArgTypes.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/hooks.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/inferControls.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/parameters.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/pathToId.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/queryparams.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/simulate-pageload.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-createPopper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-arrow.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-flip.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-hide.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-offset.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-preventOverflow.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper-lite.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/inferControls.d.ts": [ - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-arrow.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-flip.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-hide.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-offset.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-preventOverflow.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/parameters.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-utils-detectOverflow.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/pathToId.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@types-prettier-index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/queryparams.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@types-prettier-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/qs/index.d.ts" + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/react-textarea-autosize/dist/react-textarea-autosize.cjs.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/simulate-pageload.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/SBType.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/includeConditionalArg.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/story.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts": [ - "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/hooks.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/includeConditionalArg.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/story.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/ActionBar/ActionBar.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/story.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/SBType.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/Badge/Badge.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-dom-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/Button/Button.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-node_modules-history-index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/Loader/Loader.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-node_modules-history-index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/ScrollArea/ScrollArea.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-dom-index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/Zoom.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomElement.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomIFrame.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/ArgsStore.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomElement.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/GlobalsStore.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomIFrame.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryIndexStore.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/addon-panel/addon-panel.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryStore.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/ArgsStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/GlobalsStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryIndexStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/synchronous-promise/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/bar/bar.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/args.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/bar/button.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/autoTitle.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/bar/separator.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/composeConfigs.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/ArgsTable.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/types.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/getValuesFromArgTypes.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/NoControlsWarning.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/composeConfigs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/getValuesFromArgTypes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeComponentAnnotations.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeInputTypes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeProjectAnnotations.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeStory.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/prepareStory.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/processCSFFile.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/TabbedArgsTable.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/ArgsTable.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeComponentAnnotations.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/index.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/ArgsTable.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/NoControlsWarning.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/TabbedArgsTable.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeInputTypes.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeProjectAnnotations.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ColorPalette.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeStory.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Description.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/prepareStory.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/DocsPage.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/processCSFFile.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IFrame.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IconGallery.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Preview.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/ActionBar/ActionBar.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Source.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/decorators.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Source.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/filterArgTypes.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Story.d.ts": [ - "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/hooks.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Typeset.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/args.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/autoTitle.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/decorators.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/filterArgTypes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/inferControls.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/parameters.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/sortStories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/blocks/index.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ColorPalette.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Description.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/DocsPage.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IFrame.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IconGallery.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Preview.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Source.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Story.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Typeset.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/inferControls.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookIcon.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/parameters.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookLogo.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/sortStories.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Array.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/synchronous-promise/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Boolean.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-node_modules-@emotion-utils-types-index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Color.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-types-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-node_modules-@emotion-utils-types-index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-is-prop-valid-types-index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-@emotion-serialize-types-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-node_modules-@emotion-utils-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-csstype-index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Date.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-csstype-index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Files.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-helper.d.ts": [ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Number.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-@emotion-serialize-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-helper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-jsx-namespace.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-theming.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Object.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-jsx-namespace.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-@emotion-serialize-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Range.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-theming.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-helper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/Text.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-is-prop-valid-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/index.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/Array.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Boolean.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Color.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Date.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Files.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Number.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Object.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Range.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Text.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts": [ + "../../node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/Options.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", + "../../node_modules/@storybook/addons/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/index.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/Options.d.ts", + "../../node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts": [ + "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/blocks/index.d.ts", + "../../node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts": [ + "../../node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addons/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts", + "../../node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts", + "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/form/field/field.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts": [ + "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/form/index.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/form/field/field.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/form/input/input.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addons/dist/ts3.9/types.d.ts": [ + "../../node_modules/@storybook/addons/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts", - "../../node_modules/react-textarea-autosize/dist/react-textarea-autosize.cjs.d.ts" + "../../node_modules/@types/webpack-env/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/form/input/input.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/notifications.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/release-notes.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/settings.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/shortcuts.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/store.d.ts", + "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/router/dist/ts3.9/router.d.ts", "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts", - "../../node_modules/react-textarea-autosize/dist/react-textarea-autosize.cjs.d.ts" - ], - "../../node_modules/@storybook/components/dist/ts3.9/icon/icon.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/icon/icons.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/icon/svg.d.ts", - "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/icon/icons.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/icon/svg.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts", + "../../node_modules/@storybook/csf/dist/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/ActionBar/ActionBar.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Badge/Badge.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Button/Button.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Loader/Loader.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/ScrollArea/ScrollArea.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/Zoom.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/addon-panel/addon-panel.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/bar/bar.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/bar/button.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/bar/separator.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookIcon.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookLogo.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/form/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/icon/icon.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/placeholder/placeholder.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/spaced/Spaced.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/lazy-syntaxhighlighter.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/syntaxhighlighter-types.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tabs/tabs.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipLinkList.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipMessage.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipNote.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/lazy-WithTooltip.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentFormatting.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentWrapper.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/typography/link/link.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/store.d.ts", + "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/placeholder/placeholder.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/spaced/Spaced.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/lazy-syntaxhighlighter.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/syntaxhighlighter-types.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/modules/notifications.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tabs/tabs.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", + "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/ListItem.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipLinkList.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/ListItem.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/modules/release-notes.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipMessage.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/modules/settings.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipNote.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/modules/shortcuts.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/WithTooltip.d.ts": [ - "../../node_modules/@popperjs/core/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", + "../../node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", + "../../node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/lazy-WithTooltip.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/WithTooltip.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentFormatting.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentWrapper.d.ts": [ - "../../node_modules/@emotion/styled-base/types/index.d.ts", - "../../node_modules/@storybook/theming/dist/ts3.9/index.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/api/dist/ts3.9/store.d.ts": [ + "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@storybook/components/dist/ts3.9/typography/link/link.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/csf/dist/SBType.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/csf/dist/index.d.ts": [ + "../../node_modules/@storybook/csf/dist/story.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/csf/dist/story.d.ts": [ + "../../node_modules/@storybook/csf/dist/SBType.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/preview-web/dist/ts3.9/DocsRender.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/StoryRender.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/preview-web/dist/ts3.9/Preview.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/DocsRender.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/StoryRender.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/preview-web/dist/ts3.9/PreviewWeb.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/Preview.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/StoryRender.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/UrlStore.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/WebView.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/preview-web/dist/ts3.9/StoryRender.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/preview-web/dist/ts3.9/UrlStore.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/qs/index.d.ts" + ], + "../../node_modules/@storybook/preview-web/dist/ts3.9/WebView.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/preview-web/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/Preview.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/PreviewWeb.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/simulate-pageload.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/preview-web/dist/ts3.9/simulate-pageload.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/preview-web/dist/ts3.9/types.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/PreviewWeb.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/preview-web/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/preview-web/node_modules/@storybook/csf/dist/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/includeConditionalArg.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/story.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@storybook/preview-web/node_modules/@storybook/store/dist/ts3.9/index.d.ts": [ + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/args.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/autoTitle.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/decorators.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/filterArgTypes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/inferControls.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/parameters.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/sortStories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts": [ @@ -9402,8 +11366,8 @@ "../../node_modules/@storybook/router/dist/ts3.9/router.d.ts": [ "../../node_modules/@storybook/router/dist/ts3.9/utils.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/reach__router/index.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/react-router-dom/index.d.ts" ], "../../node_modules/@storybook/router/dist/ts3.9/utils.d.ts": [ "../../node_modules/@types/node/util.d.ts" @@ -9572,8 +11536,19 @@ "../../node_modules/@babel/types/lib/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/braces/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/buble/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/magic-string/index.d.ts" + ], + "../../node_modules/@types/cacheable-request/index.d.ts": [ + "../../node_modules/@types/http-cache-semantics/index.d.ts", + "../../node_modules/@types/node/events.d.ts", + "../../node_modules/@types/node/http.d.ts", + "../../node_modules/@types/node/index.d.ts", + "../../node_modules/@types/node/url.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/responselike/index.d.ts", + "../../node_modules/keyv/src/index.d.ts" ], "../../node_modules/@types/color-convert/conversions.d.ts": [ "../../node_modules/@types/color-name/index.d.ts", @@ -9591,15 +11566,16 @@ "../../node_modules/@types/color-name/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/estree/index.d.ts": [ + "../../node_modules/@types/emscripten/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/glob-base/index.d.ts": [ + "../../node_modules/@types/estree/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@types/glob/index.d.ts": [ "../../node_modules/@types/minimatch/index.d.ts", "../../node_modules/@types/node/events.d.ts", + "../../node_modules/@types/node/fs.d.ts", "../../node_modules/@types/node/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], @@ -9615,6 +11591,9 @@ "../../node_modules/@types/html-minifier-terser/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/http-cache-semantics/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/is-function/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -9633,24 +11612,219 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/jest-diff/build/index.d.ts" ], + "../../node_modules/@types/js-beautify/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/json-schema/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/lz-string/index.d.ts": [ + "../../node_modules/@types/keyv/index.d.ts": [ + "../../node_modules/@types/node/events.d.ts", + "../../node_modules/@types/node/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/markdown-to-jsx/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/react/index.d.ts" + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lodash/ts4.2/index.d.ts": [ + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/lz-string/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@types/mdast/index.d.ts": [ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/unist/index.d.ts" ], - "../../node_modules/@types/micromatch/index.d.ts": [ - "../../node_modules/@types/braces/index.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], "../../node_modules/@types/minimatch/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -9680,11 +11854,6 @@ "../../node_modules/@types/node/async_hooks.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/node/base.d.ts": [ - "../../node_modules/@types/node/assert.d.ts", - "../../node_modules/@types/node/ts3.6/base.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], "../../node_modules/@types/node/buffer.d.ts": [ "../../node_modules/@types/node/buffer.d.ts", "../../node_modules/@types/node/crypto.d.ts", @@ -9795,13 +11964,62 @@ "../../node_modules/@types/node/https.d.ts": [ "../../node_modules/@types/node/http.d.ts", "../../node_modules/@types/node/https.d.ts", + "../../node_modules/@types/node/stream.d.ts", + "../../node_modules/@types/node/tls.d.ts", + "../../node_modules/@types/node/url.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/node/index.d.ts": [ + "../../node_modules/@types/node/assert.d.ts", + "../../node_modules/@types/node/assert/strict.d.ts", + "../../node_modules/@types/node/async_hooks.d.ts", + "../../node_modules/@types/node/buffer.d.ts", + "../../node_modules/@types/node/child_process.d.ts", + "../../node_modules/@types/node/cluster.d.ts", + "../../node_modules/@types/node/console.d.ts", + "../../node_modules/@types/node/constants.d.ts", + "../../node_modules/@types/node/crypto.d.ts", + "../../node_modules/@types/node/dgram.d.ts", + "../../node_modules/@types/node/diagnostics_channel.d.ts", + "../../node_modules/@types/node/dns.d.ts", + "../../node_modules/@types/node/dns/promises.d.ts", + "../../node_modules/@types/node/domain.d.ts", + "../../node_modules/@types/node/events.d.ts", + "../../node_modules/@types/node/fs.d.ts", + "../../node_modules/@types/node/fs/promises.d.ts", + "../../node_modules/@types/node/globals.d.ts", + "../../node_modules/@types/node/globals.global.d.ts", + "../../node_modules/@types/node/http.d.ts", + "../../node_modules/@types/node/http2.d.ts", + "../../node_modules/@types/node/https.d.ts", + "../../node_modules/@types/node/inspector.d.ts", + "../../node_modules/@types/node/module.d.ts", + "../../node_modules/@types/node/net.d.ts", + "../../node_modules/@types/node/os.d.ts", + "../../node_modules/@types/node/path.d.ts", + "../../node_modules/@types/node/perf_hooks.d.ts", + "../../node_modules/@types/node/process.d.ts", + "../../node_modules/@types/node/punycode.d.ts", + "../../node_modules/@types/node/querystring.d.ts", + "../../node_modules/@types/node/readline.d.ts", + "../../node_modules/@types/node/repl.d.ts", + "../../node_modules/@types/node/stream.d.ts", + "../../node_modules/@types/node/stream/consumers.d.ts", + "../../node_modules/@types/node/stream/promises.d.ts", + "../../node_modules/@types/node/stream/web.d.ts", + "../../node_modules/@types/node/string_decoder.d.ts", + "../../node_modules/@types/node/timers.d.ts", + "../../node_modules/@types/node/timers/promises.d.ts", "../../node_modules/@types/node/tls.d.ts", + "../../node_modules/@types/node/trace_events.d.ts", + "../../node_modules/@types/node/tty.d.ts", "../../node_modules/@types/node/url.d.ts", - "../../node_modules/@types/node/util.d.ts" - ], - "../../node_modules/@types/node/index.d.ts": [ - "../../node_modules/@types/node/base.d.ts", - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/node/v8.d.ts", + "../../node_modules/@types/node/vm.d.ts", + "../../node_modules/@types/node/wasi.d.ts", + "../../node_modules/@types/node/worker_threads.d.ts", + "../../node_modules/@types/node/zlib.d.ts" ], "../../node_modules/@types/node/inspector.d.ts": [ "../../node_modules/@types/node/events.d.ts", @@ -9861,14 +12079,24 @@ "../../node_modules/@types/node/stream.d.ts": [ "../../node_modules/@types/node/events.d.ts", "../../node_modules/@types/node/stream.d.ts", + "../../node_modules/@types/node/stream/consumers.d.ts", "../../node_modules/@types/node/stream/promises.d.ts", "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/node/stream/consumers.d.ts": [ + "../../node_modules/@types/node/stream.d.ts", + "../../node_modules/@types/node/stream/consumers.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/node/stream/promises.d.ts": [ "../../node_modules/@types/node/stream.d.ts", "../../node_modules/@types/node/stream/promises.d.ts", "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/node/stream/web.d.ts": [ + "../../node_modules/@types/node/stream/web.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/node/string_decoder.d.ts": [ "../../node_modules/@types/node/string_decoder.d.ts", "../../node_modules/@types/node/util.d.ts" @@ -9894,61 +12122,13 @@ "../../node_modules/@types/node/trace_events.d.ts", "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/node/ts3.6/base.d.ts": [ - "../../node_modules/@types/node/assert/strict.d.ts", - "../../node_modules/@types/node/async_hooks.d.ts", - "../../node_modules/@types/node/buffer.d.ts", - "../../node_modules/@types/node/child_process.d.ts", - "../../node_modules/@types/node/cluster.d.ts", - "../../node_modules/@types/node/console.d.ts", - "../../node_modules/@types/node/constants.d.ts", - "../../node_modules/@types/node/crypto.d.ts", - "../../node_modules/@types/node/dgram.d.ts", - "../../node_modules/@types/node/diagnostics_channel.d.ts", - "../../node_modules/@types/node/dns.d.ts", - "../../node_modules/@types/node/dns/promises.d.ts", - "../../node_modules/@types/node/domain.d.ts", - "../../node_modules/@types/node/events.d.ts", - "../../node_modules/@types/node/fs.d.ts", - "../../node_modules/@types/node/fs/promises.d.ts", - "../../node_modules/@types/node/globals.d.ts", - "../../node_modules/@types/node/globals.global.d.ts", - "../../node_modules/@types/node/http.d.ts", - "../../node_modules/@types/node/http2.d.ts", - "../../node_modules/@types/node/https.d.ts", - "../../node_modules/@types/node/inspector.d.ts", - "../../node_modules/@types/node/module.d.ts", - "../../node_modules/@types/node/net.d.ts", - "../../node_modules/@types/node/os.d.ts", - "../../node_modules/@types/node/path.d.ts", - "../../node_modules/@types/node/perf_hooks.d.ts", - "../../node_modules/@types/node/process.d.ts", - "../../node_modules/@types/node/punycode.d.ts", - "../../node_modules/@types/node/querystring.d.ts", - "../../node_modules/@types/node/readline.d.ts", - "../../node_modules/@types/node/repl.d.ts", - "../../node_modules/@types/node/stream.d.ts", - "../../node_modules/@types/node/stream/promises.d.ts", - "../../node_modules/@types/node/string_decoder.d.ts", - "../../node_modules/@types/node/timers.d.ts", - "../../node_modules/@types/node/timers/promises.d.ts", - "../../node_modules/@types/node/tls.d.ts", - "../../node_modules/@types/node/trace_events.d.ts", - "../../node_modules/@types/node/tty.d.ts", - "../../node_modules/@types/node/url.d.ts", - "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/node/v8.d.ts", - "../../node_modules/@types/node/vm.d.ts", - "../../node_modules/@types/node/wasi.d.ts", - "../../node_modules/@types/node/worker_threads.d.ts", - "../../node_modules/@types/node/zlib.d.ts" - ], "../../node_modules/@types/node/tty.d.ts": [ "../../node_modules/@types/node/net.d.ts", "../../node_modules/@types/node/tty.d.ts", "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@types/node/url.d.ts": [ + "../../node_modules/@types/node/buffer.d.ts", "../../node_modules/@types/node/http.d.ts", "../../node_modules/@types/node/querystring.d.ts", "../../node_modules/@types/node/url.d.ts", @@ -10004,9 +12184,6 @@ "../../node_modules/@types/parse5/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], - "../../node_modules/@types/prettier/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" - ], "../../node_modules/@types/pretty-hrtime/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -10020,6 +12197,113 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" ], + "../../node_modules/@types/react-color/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/lib/components/alpha/Alpha.d.ts", + "../../node_modules/@types/react-color/lib/components/block/Block.d.ts", + "../../node_modules/@types/react-color/lib/components/chrome/Chrome.d.ts", + "../../node_modules/@types/react-color/lib/components/circle/Circle.d.ts", + "../../node_modules/@types/react-color/lib/components/common/Checkboard.d.ts", + "../../node_modules/@types/react-color/lib/components/common/ColorWrap.d.ts", + "../../node_modules/@types/react-color/lib/components/compact/Compact.d.ts", + "../../node_modules/@types/react-color/lib/components/github/Github.d.ts", + "../../node_modules/@types/react-color/lib/components/hue/Hue.d.ts", + "../../node_modules/@types/react-color/lib/components/material/Material.d.ts", + "../../node_modules/@types/react-color/lib/components/photoshop/Photoshop.d.ts", + "../../node_modules/@types/react-color/lib/components/sketch/Sketch.d.ts", + "../../node_modules/@types/react-color/lib/components/slider/Slider.d.ts", + "../../node_modules/@types/react-color/lib/components/swatches/Swatches.d.ts", + "../../node_modules/@types/react-color/lib/components/twitter/Twitter.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/alpha/Alpha.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/block/Block.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/chrome/Chrome.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/circle/Circle.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/common/Checkboard.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/common/ColorWrap.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/compact/Compact.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/github/Github.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/hue/Hue.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/material/Material.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/photoshop/Photoshop.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/sketch/Sketch.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/slider/Slider.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/swatches/Swatches.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], + "../../node_modules/@types/react-color/lib/components/twitter/Twitter.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts" + ], "../../node_modules/@types/react-dom/index.d.ts": [ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react-dom/node_modules/@types/react/index.d.ts" @@ -10031,8 +12315,11 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/prop-types/index.d.ts", "../../node_modules/@types/react-dom/node_modules/@types/react/global.d.ts", - "../../node_modules/@types/scheduler/tracing.d.ts", - "../../node_modules/csstype/index.d.ts" + "../../node_modules/@types/react/node_modules/csstype/index.d.ts", + "../../node_modules/@types/scheduler/tracing.d.ts" + ], + "../../node_modules/@types/react-dom/node_modules/csstype/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@types/react-dom/server/index.d.ts": [ "../../node_modules/@types/node/util.d.ts", @@ -10055,19 +12342,272 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/prop-types/index.d.ts", "../../node_modules/@types/react/global.d.ts", - "../../node_modules/@types/scheduler/tracing.d.ts", - "../../node_modules/csstype/index.d.ts" + "../../node_modules/@types/react/node_modules/csstype/index.d.ts", + "../../node_modules/@types/scheduler/tracing.d.ts" + ], + "../../node_modules/@types/react/node_modules/csstype/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/reactcss/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/@types/resolve/index.d.ts": [ "../../node_modules/@types/node/index.d.ts", "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/responselike/index.d.ts": [ + "../../node_modules/@types/node/http.d.ts", + "../../node_modules/@types/node/index.d.ts", + "../../node_modules/@types/node/stream.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/scheduler/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/@types/scheduler/tracing.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/semver/classes/comparator.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/classes/range.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/comparator.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/classes/semver.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/clean.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/cmp.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/coerce.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/compare-build.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/compare-loose.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts" + ], + "../../node_modules/@types/semver/functions/compare.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/diff.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/eq.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/gt.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/gte.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/inc.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/lt.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/lte.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/major.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/minor.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/neq.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/parse.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/patch.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/prerelease.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/rcompare.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/rsort.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/satisfies.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/sort.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/functions/valid.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/comparator.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/functions/clean.d.ts", + "../../node_modules/@types/semver/functions/cmp.d.ts", + "../../node_modules/@types/semver/functions/coerce.d.ts", + "../../node_modules/@types/semver/functions/compare-build.d.ts", + "../../node_modules/@types/semver/functions/compare-loose.d.ts", + "../../node_modules/@types/semver/functions/compare.d.ts", + "../../node_modules/@types/semver/functions/diff.d.ts", + "../../node_modules/@types/semver/functions/eq.d.ts", + "../../node_modules/@types/semver/functions/gt.d.ts", + "../../node_modules/@types/semver/functions/gte.d.ts", + "../../node_modules/@types/semver/functions/inc.d.ts", + "../../node_modules/@types/semver/functions/lt.d.ts", + "../../node_modules/@types/semver/functions/lte.d.ts", + "../../node_modules/@types/semver/functions/major.d.ts", + "../../node_modules/@types/semver/functions/minor.d.ts", + "../../node_modules/@types/semver/functions/neq.d.ts", + "../../node_modules/@types/semver/functions/parse.d.ts", + "../../node_modules/@types/semver/functions/patch.d.ts", + "../../node_modules/@types/semver/functions/prerelease.d.ts", + "../../node_modules/@types/semver/functions/rcompare.d.ts", + "../../node_modules/@types/semver/functions/rsort.d.ts", + "../../node_modules/@types/semver/functions/satisfies.d.ts", + "../../node_modules/@types/semver/functions/sort.d.ts", + "../../node_modules/@types/semver/functions/valid.d.ts", + "../../node_modules/@types/semver/internals/identifiers.d.ts", + "../../node_modules/@types/semver/ranges/gtr.d.ts", + "../../node_modules/@types/semver/ranges/intersects.d.ts", + "../../node_modules/@types/semver/ranges/ltr.d.ts", + "../../node_modules/@types/semver/ranges/max-satisfying.d.ts", + "../../node_modules/@types/semver/ranges/min-satisfying.d.ts", + "../../node_modules/@types/semver/ranges/min-version.d.ts", + "../../node_modules/@types/semver/ranges/outside.d.ts", + "../../node_modules/@types/semver/ranges/simplify.d.ts", + "../../node_modules/@types/semver/ranges/subset.d.ts", + "../../node_modules/@types/semver/ranges/to-comparators.d.ts", + "../../node_modules/@types/semver/ranges/valid.d.ts" + ], + "../../node_modules/@types/semver/internals/identifiers.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/@types/semver/ranges/gtr.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/intersects.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/ltr.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/max-satisfying.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/min-satisfying.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/min-version.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/outside.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/simplify.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/subset.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/to-comparators.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], + "../../node_modules/@types/semver/ranges/valid.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/index.d.ts" + ], "../../node_modules/@types/source-list-map/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -10084,6 +12624,9 @@ "../../node_modules/@types/throttle-debounce/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/@types/treeify/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/@types/uglify-js/index.d.ts": [ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/uglify-js/node_modules/source-map/source-map.d.ts" @@ -10193,10 +12736,7 @@ "../../node_modules/@types/uglify-js/index.d.ts", "../../node_modules/@types/uglify-js/node_modules/source-map/source-map.d.ts", "../../node_modules/@types/webpack-sources/index.d.ts", - "../../node_modules/@types/webpack/node_modules/anymatch/index.d.ts" - ], - "../../node_modules/@types/webpack/node_modules/anymatch/index.d.ts": [ - "../../node_modules/@types/node/util.d.ts" + "../../node_modules/anymatch/index.d.ts" ], "../../node_modules/@types/webpack/node_modules/source-map/source-map.d.ts": [ "../../node_modules/@types/node/util.d.ts" @@ -10208,6 +12748,9 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/yargs-parser/index.d.ts" ], + "../../node_modules/anymatch/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/classnames/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -10236,6 +12779,13 @@ "../../node_modules/jest-diff/build/types.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/keyv/src/index.d.ts": [ + "../../node_modules/@types/node/events.d.ts", + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/magic-string/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/popper.js/index.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -10256,6 +12806,7 @@ "../../node_modules/@types/react/index.d.ts" ], "../../node_modules/react-live/typings/react-live.d.ts": [ + "../../node_modules/@types/buble/index.d.ts", "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts", "../../node_modules/prism-react-renderer/index.d.ts" @@ -10265,6 +12816,19 @@ "../../node_modules/@types/react/index.d.ts", "../../node_modules/popper.js/index.d.ts" ], + "../../node_modules/react-router-dom/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/react-router/index.d.ts" + ], + "../../node_modules/react-router/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/react-router/node_modules/history/index.d.ts" + ], + "../../node_modules/react-router/node_modules/history/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/react-textarea-autosize/dist/declarations/src/index.d.ts": [ "../../node_modules/@types/node/util.d.ts", "../../node_modules/@types/react/index.d.ts" @@ -10273,6 +12837,9 @@ "../../node_modules/@types/node/util.d.ts", "../../node_modules/react-textarea-autosize/dist/declarations/src/index.d.ts" ], + "../../node_modules/synchronous-promise/index.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/tslib/tslib.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], @@ -10351,36 +12918,93 @@ "../../node_modules/typescript/lib/lib.es2018.regexp.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/typescript/lib/lib.es2019.array.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2019.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2019.object.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2019.string.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2019.symbol.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/typescript/lib/lib.es2020.bigint.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], + "../../node_modules/typescript/lib/lib.es2020.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2020.promise.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2020.string.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], + "../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts": [ + "../../node_modules/@types/node/util.d.ts" + ], "../../node_modules/typescript/lib/lib.es5.d.ts": [ "../../node_modules/@types/node/util.d.ts" ], "../../node_modules/typescript/lib/lib.esnext.intl.d.ts": [ "../../node_modules/@types/node/util.d.ts" + ], + "../../types/index.d.ts": [ + "../../node_modules/@types/jest/index.d.ts", + "../../node_modules/@types/node/index.d.ts", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/prop-types/index.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/scheduler/index.d.ts", + "../../node_modules/@types/throttle-debounce/index.d.ts", + "../../node_modules/@types/webpack-env/index.d.ts" ] }, "semanticDiagnosticsPerFile": [ + "../../core/accessibility/utils/index.ts", + "../../core/accessibility/utils/isEnterKey.ts", + "../../core/accessibility/utils/isSpaceKey.ts", + "../../core/accessibility/utils/useAccessibilityProps.ts", + "../../core/common.type.tsx", "../../core/components/atoms/_chip/index.tsx", "../../core/components/atoms/_text/index.tsx", + "../../core/components/atoms/actionCard/ActionCard.tsx", + "../../core/components/atoms/actionCard/index.tsx", "../../core/components/atoms/avatar/Avatar.tsx", + "../../core/components/atoms/avatar/AvatarProvider.tsx", + "../../core/components/atoms/avatar/avatarIcon/AvatarIcon.tsx", + "../../core/components/atoms/avatar/avatarIcon/index.tsx", + "../../core/components/atoms/avatar/avatarImage/AvatarImage.tsx", + "../../core/components/atoms/avatar/avatarImage/index.tsx", "../../core/components/atoms/avatar/index.tsx", + "../../core/components/atoms/avatarGroup/AvatarCount.tsx", "../../core/components/atoms/avatarGroup/AvatarGroup.tsx", + "../../core/components/atoms/avatarGroup/AvatarPopperBody.tsx", + "../../core/components/atoms/avatarGroup/Avatars.tsx", "../../core/components/atoms/avatarGroup/index.tsx", + "../../core/components/atoms/avatarSelection/AvatarSelection.tsx", + "../../core/components/atoms/avatarSelection/AvatarSelectionContext.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionEmptyState.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionInput.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionList.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionOption.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionPopover.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/index.tsx", + "../../core/components/atoms/avatarSelection/avatarPopover/utils.tsx", + "../../core/components/atoms/avatarSelection/avatarsSelection/AvatarSelectionCount.tsx", + "../../core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatar.tsx", + "../../core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatarsWrapper.tsx", + "../../core/components/atoms/avatarSelection/avatarsSelection/index.tsx", + "../../core/components/atoms/avatarSelection/avatarsSelection/utils.tsx", + "../../core/components/atoms/avatarSelection/index.tsx", "../../core/components/atoms/backdrop/Backdrop.tsx", "../../core/components/atoms/backdrop/index.tsx", "../../core/components/atoms/badge/Badge.tsx", - "../../core/components/atoms/badge/_stories_/SolidAlert.story.tsx", - "../../core/components/atoms/badge/_stories_/SolidSecondary.story.tsx", - "../../core/components/atoms/badge/_stories_/SolidWarning.story.tsx", - "../../core/components/atoms/badge/_stories_/SubtleAlert.story.tsx", - "../../core/components/atoms/badge/_stories_/SubtleSecondary.story.tsx", - "../../core/components/atoms/badge/_stories_/SubtleWarning.story.tsx", - "../../core/components/atoms/badge/_stories_/Success.story.tsx", - "../../core/components/atoms/badge/_stories_/index.story.tsx", - "../../core/components/atoms/badge/_stories_/variants/Appearance.story.tsx", - "../../core/components/atoms/badge/_stories_/variants/Subtle.story.tsx", "../../core/components/atoms/badge/index.tsx", "../../core/components/atoms/breadcrumbs/Breadcrumbs.tsx", "../../core/components/atoms/breadcrumbs/index.tsx", @@ -10399,19 +13023,22 @@ "../../core/components/atoms/cardSubdued/CardSubdued.tsx", "../../core/components/atoms/cardSubdued/index.tsx", "../../core/components/atoms/checkbox/Checkbox.tsx", + "../../core/components/atoms/checkbox/CheckboxIcon.tsx", "../../core/components/atoms/checkbox/index.tsx", "../../core/components/atoms/chip/Chip.tsx", "../../core/components/atoms/chip/index.tsx", "../../core/components/atoms/chipGroup/ChipGroup.tsx", - "../../core/components/atoms/chipGroup/_stories_/index.story.tsx", "../../core/components/atoms/chipGroup/index.tsx", "../../core/components/atoms/collapsible/Collapsible.tsx", "../../core/components/atoms/collapsible/index.tsx", "../../core/components/atoms/column/Column.tsx", "../../core/components/atoms/column/index.tsx", + "../../core/components/atoms/divider/Divider.tsx", + "../../core/components/atoms/divider/index.tsx", "../../core/components/atoms/dropdown/Dropdown.tsx", "../../core/components/atoms/dropdown/DropdownButton.tsx", "../../core/components/atoms/dropdown/DropdownList.tsx", + "../../core/components/atoms/dropdown/ErrorTemplate.tsx", "../../core/components/atoms/dropdown/Loading.tsx", "../../core/components/atoms/dropdown/index.tsx", "../../core/components/atoms/dropdown/option/CheckboxOption.tsx", @@ -10425,9 +13052,13 @@ "../../core/components/atoms/editable/index.tsx", "../../core/components/atoms/heading/Heading.tsx", "../../core/components/atoms/heading/index.tsx", + "../../core/components/atoms/helpText/HelpText.tsx", + "../../core/components/atoms/helpText/index.tsx", "../../core/components/atoms/icon/Icon.tsx", "../../core/components/atoms/icon/index.tsx", "../../core/components/atoms/input/Input.tsx", + "../../core/components/atoms/input/actionButton/ActionButton.tsx", + "../../core/components/atoms/input/actionButton/index.tsx", "../../core/components/atoms/input/index.tsx", "../../core/components/atoms/label/Label.tsx", "../../core/components/atoms/label/index.tsx", @@ -10435,11 +13066,12 @@ "../../core/components/atoms/legend/index.tsx", "../../core/components/atoms/link/Link.tsx", "../../core/components/atoms/link/index.tsx", + "../../core/components/atoms/linkButton/LinkButton.tsx", + "../../core/components/atoms/linkButton/index.tsx", "../../core/components/atoms/message/Message.tsx", "../../core/components/atoms/message/index.tsx", "../../core/components/atoms/metaList/Meta.tsx", "../../core/components/atoms/metaList/MetaList.tsx", - "../../core/components/atoms/metaList/_stories_/index.story.tsx", "../../core/components/atoms/metaList/index.tsx", "../../core/components/atoms/metricInput/MetricInput.tsx", "../../core/components/atoms/metricInput/index.tsx", @@ -10468,6 +13100,11 @@ "../../core/components/atoms/rangeSlider/index.tsx", "../../core/components/atoms/row/Row.tsx", "../../core/components/atoms/row/index.tsx", + "../../core/components/atoms/selectionCard/SelectionCard.tsx", + "../../core/components/atoms/selectionCard/hooks/index.tsx", + "../../core/components/atoms/selectionCard/hooks/useMultiSelect.tsx", + "../../core/components/atoms/selectionCard/hooks/useSingleSelect.tsx", + "../../core/components/atoms/selectionCard/index.tsx", "../../core/components/atoms/slider/Slider.tsx", "../../core/components/atoms/slider/index.tsx", "../../core/components/atoms/spinner/Spinner.tsx", @@ -10485,26 +13122,12 @@ "../../core/components/atoms/toast/ActionButton.tsx", "../../core/components/atoms/toast/Toast.tsx", "../../core/components/atoms/toast/index.tsx", - "../../core/components/css-utilities/Align/Align.story.tsx", - "../../core/components/css-utilities/Background/Background.story.tsx", - "../../core/components/css-utilities/Display/Display.story.tsx", - "../../core/components/css-utilities/Flex/Flex.story.tsx", - "../../core/components/css-utilities/Miscellaneous/Miscellaneous.story.tsx", - "../../core/components/css-utilities/Overflow/Overflow.story.tsx", - "../../core/components/css-utilities/Position/Position.story.tsx", "../../core/components/css-utilities/Schema.tsx", - "../../core/components/css-utilities/Sizing/Sizing.story.tsx", "../../core/components/css-utilities/Spacing/Data.tsx", "../../core/components/css-utilities/Spacing/Schema.tsx", - "../../core/components/css-utilities/Spacing/Spacing.story.tsx", - "../../core/components/css-utilities/designTokens/Colors.story.tsx", "../../core/components/css-utilities/designTokens/Data.tsx", - "../../core/components/css-utilities/designTokens/Miscellaneous.story.tsx", "../../core/components/css-utilities/designTokens/Schema.tsx", - "../../core/components/css-utilities/designTokens/Spacing.story.tsx", - "../../core/components/css-utilities/designTokens/Typography.story.tsx", "../../core/components/css-utilities/designTokens/Utilities.tsx", - "../../core/components/molecules/Layout/index.story.tsx", "../../core/components/molecules/chatMessage/Box.tsx", "../../core/components/molecules/chatMessage/ChatMessage.tsx", "../../core/components/molecules/chatMessage/MessageText.tsx", @@ -10518,6 +13141,7 @@ "../../core/components/molecules/dropzone/DropzoneActive.tsx", "../../core/components/molecules/dropzone/DropzoneBase.tsx", "../../core/components/molecules/dropzone/DropzoneError.tsx", + "../../core/components/molecules/dropzone/DropzoneIcon.tsx", "../../core/components/molecules/dropzone/FileErrors.tsx", "../../core/components/molecules/dropzone/FileSelectorUtils.tsx", "../../core/components/molecules/dropzone/index.tsx", @@ -10529,6 +13153,11 @@ "../../core/components/molecules/editableInput/EditableInput.tsx", "../../core/components/molecules/editableInput/index.tsx", "../../core/components/molecules/emptyState/EmptyState.tsx", + "../../core/components/molecules/emptyState/EmptyStateActions.tsx", + "../../core/components/molecules/emptyState/EmptyStateContext.tsx", + "../../core/components/molecules/emptyState/EmptyStateDescription.tsx", + "../../core/components/molecules/emptyState/EmptyStateImage.tsx", + "../../core/components/molecules/emptyState/EmptyStateTitle.tsx", "../../core/components/molecules/emptyState/_tests_/EmptyState.test.tsx", "../../core/components/molecules/emptyState/index.tsx", "../../core/components/molecules/fileList/FileIcon.tsx", @@ -10584,6 +13213,20 @@ "../../core/components/organisms/calendar/index.tsx", "../../core/components/organisms/calendar/types.ts", "../../core/components/organisms/calendar/utility.ts", + "../../core/components/organisms/choiceList/ChoiceList.tsx", + "../../core/components/organisms/choiceList/index.tsx", + "../../core/components/organisms/combobox/Combobox.tsx", + "../../core/components/organisms/combobox/ComboboxContext.tsx", + "../../core/components/organisms/combobox/ComboboxList.tsx", + "../../core/components/organisms/combobox/ComboboxOption.tsx", + "../../core/components/organisms/combobox/index.tsx", + "../../core/components/organisms/combobox/trigger/ChipInputBox.tsx", + "../../core/components/organisms/combobox/trigger/ComboboxTrigger.tsx", + "../../core/components/organisms/combobox/trigger/InputBox.tsx", + "../../core/components/organisms/combobox/trigger/MultiselectTrigger.tsx", + "../../core/components/organisms/combobox/trigger/index.tsx", + "../../core/components/organisms/combobox/trigger/utils.tsx", + "../../core/components/organisms/combobox/utils.tsx", "../../core/components/organisms/datePicker/DatePicker.tsx", "../../core/components/organisms/datePicker/Trigger.tsx", "../../core/components/organisms/datePicker/index.tsx", @@ -10607,43 +13250,80 @@ "../../core/components/organisms/grid/utility.tsx", "../../core/components/organisms/horizontalNav/HorizontalNav.tsx", "../../core/components/organisms/horizontalNav/index.tsx", + "../../core/components/organisms/inlineMessage/InlineMessage.tsx", + "../../core/components/organisms/inlineMessage/index.tsx", "../../core/components/organisms/list/List.tsx", "../../core/components/organisms/list/index.tsx", + "../../core/components/organisms/listbox/Listbox.tsx", + "../../core/components/organisms/listbox/index.tsx", + "../../core/components/organisms/listbox/listboxItem/ListBody.tsx", + "../../core/components/organisms/listbox/listboxItem/ListboxItem.tsx", + "../../core/components/organisms/listbox/listboxItem/index.tsx", + "../../core/components/organisms/listbox/nestedList/Animation.tsx", + "../../core/components/organisms/listbox/nestedList/NestedList.tsx", + "../../core/components/organisms/listbox/nestedList/index.tsx", + "../../core/components/organisms/listbox/reorderList/Draggable.tsx", + "../../core/components/organisms/listbox/reorderList/DraggableList.tsx", + "../../core/components/organisms/listbox/reorderList/index.tsx", + "../../core/components/organisms/listbox/reorderList/types.ts", + "../../core/components/organisms/listbox/reorderList/utils.ts", + "../../core/components/organisms/listbox/utils.ts", + "../../core/components/organisms/menu/Menu.tsx", + "../../core/components/organisms/menu/MenuContext.tsx", + "../../core/components/organisms/menu/MenuGroup.tsx", + "../../core/components/organisms/menu/MenuItem.tsx", + "../../core/components/organisms/menu/MenuList.tsx", + "../../core/components/organisms/menu/SubMenu.tsx", + "../../core/components/organisms/menu/SubMenuContext.tsx", + "../../core/components/organisms/menu/index.tsx", + "../../core/components/organisms/menu/trigger/MenuTrigger.tsx", + "../../core/components/organisms/menu/trigger/utils.tsx", + "../../core/components/organisms/menu/utils.tsx", "../../core/components/organisms/navigation/Navigation.tsx", "../../core/components/organisms/navigation/VerticalNavigation.tsx", "../../core/components/organisms/navigation/index.tsx", "../../core/components/organisms/pageHeader/PageHeader.tsx", "../../core/components/organisms/pageHeader/index.tsx", + "../../core/components/organisms/pageHeader/utils.tsx", + "../../core/components/organisms/select/SearchInput.tsx", + "../../core/components/organisms/select/Select.tsx", + "../../core/components/organisms/select/SelectContext.tsx", + "../../core/components/organisms/select/SelectEmptyTemplate.tsx", + "../../core/components/organisms/select/SelectFooter.tsx", + "../../core/components/organisms/select/SelectList.tsx", + "../../core/components/organisms/select/SelectOption.tsx", + "../../core/components/organisms/select/SelectTrigger.tsx", + "../../core/components/organisms/select/__test__/Select.test.tsx", + "../../core/components/organisms/select/__test__/utils.test.tsx", + "../../core/components/organisms/select/index.tsx", + "../../core/components/organisms/select/utils.tsx", "../../core/components/organisms/table/DraggableDropdown.tsx", "../../core/components/organisms/table/Header.tsx", "../../core/components/organisms/table/Table.tsx", "../../core/components/organisms/table/index.tsx", + "../../core/components/organisms/table/utils.tsx", + "../../core/components/organisms/textField/TextField.tsx", + "../../core/components/organisms/textField/TextFieldCommon.tsx", + "../../core/components/organisms/textField/TextFieldWithInput.tsx", + "../../core/components/organisms/textField/TextFieldWithTextarea.tsx", + "../../core/components/organisms/textField/__test__/Textarea.test.tsx", + "../../core/components/organisms/textField/index.tsx", "../../core/components/organisms/timePicker/TimePicker.tsx", + "../../core/components/organisms/timePicker/TimePickerWithInput.tsx", + "../../core/components/organisms/timePicker/TimePickerWithSearch.tsx", "../../core/components/organisms/timePicker/index.tsx", + "../../core/components/organisms/timePicker/utility/searchUtils.tsx", + "../../core/components/organisms/timePicker/utility/timePickerUtility.tsx", "../../core/components/organisms/timePicker/utils.tsx", "../../core/components/organisms/verticalNav/MenuItem.tsx", "../../core/components/organisms/verticalNav/VerticalNav.tsx", "../../core/components/organisms/verticalNav/index.tsx", - "../../core/components/patterns/datePicker/dateAndTimePicker.story.tsx", - "../../core/components/patterns/dateRangePicker/withCustomPopover.story.tsx", - "../../core/components/patterns/forms/CreatePassword.story.tsx", - "../../core/components/patterns/forms/CreateUser.story.tsx", - "../../core/components/patterns/forms/InlineForm.story.tsx", - "../../core/components/patterns/forms/InlineLabelForm.story.tsx", - "../../core/components/patterns/forms/StepperForm.story.tsx", - "../../core/components/patterns/forms/TimePeriodForm.story.tsx", - "../../core/components/patterns/forms/VerificationCodeInput.story.tsx", - "../../core/components/patterns/forms/basicForm.story.tsx", - "../../core/components/patterns/layouts/blankTemplate.story.tsx", - "../../core/components/patterns/layouts/level1HeaderTemplate.story.tsx", - "../../core/components/patterns/layouts/miniSidebarTemplate.story.tsx", - "../../core/components/patterns/layouts/narrowWidthContentTemplate.story.tsx", - "../../core/components/patterns/layouts/resourceTableTemplate.story.tsx", - "../../core/components/patterns/layouts/sidebarTemplate.story.tsx", - "../../core/components/patterns/verticalNavigation/sideNav.story.tsx", + "../../core/global.d.ts", "../../core/index.tsx", "../../core/index.type.tsx", "../../core/utils/Keys.ts", + "../../core/utils/OverlayManager.tsx", + "../../core/utils/action.ts", "../../core/utils/css.ts", "../../core/utils/docPage/generateImports.tsx", "../../core/utils/docPage/index.tsx", @@ -10663,7 +13343,6 @@ "../../node_modules/@emotion/core/types/index.d.ts", "../../node_modules/@emotion/css/types/index.d.ts", "../../node_modules/@emotion/is-prop-valid/types/index.d.ts", - "../../node_modules/@emotion/serialize/node_modules/csstype/index.d.ts", "../../node_modules/@emotion/serialize/types/helper.d.ts", "../../node_modules/@emotion/serialize/types/index.d.ts", "../../node_modules/@emotion/styled-base/types/helper.d.ts", @@ -10671,39 +13350,6 @@ "../../node_modules/@emotion/styled/types/index.d.ts", "../../node_modules/@emotion/stylis/types/index.d.ts", "../../node_modules/@emotion/utils/types/index.d.ts", - "../../node_modules/@popperjs/core/index.d.ts", - "../../node_modules/@popperjs/core/lib/createPopper.d.ts", - "../../node_modules/@popperjs/core/lib/enums.d.ts", - "../../node_modules/@popperjs/core/lib/index.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/applyStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/arrow.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/computeStyles.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/eventListeners.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/flip.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/hide.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/index.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/offset.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/popperOffsets.d.ts", - "../../node_modules/@popperjs/core/lib/modifiers/preventOverflow.d.ts", - "../../node_modules/@popperjs/core/lib/popper-lite.d.ts", - "../../node_modules/@popperjs/core/lib/popper.d.ts", - "../../node_modules/@popperjs/core/lib/types.d.ts", - "../../node_modules/@popperjs/core/lib/utils/detectOverflow.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/constants.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionDisplay.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionOptions.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsFunction.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/ActionsMap.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/DecoratorFunction.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/HandlerFunction.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/models/index.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/action.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/actions.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/configureActions.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/decorateAction.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/index.d.ts", - "../../node_modules/@storybook/addon-actions/dist/ts3.9/preview/withActions.d.ts", "../../node_modules/@storybook/addon-docs/blocks.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Anchor.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/ArgsTable.d.ts", @@ -10729,23 +13375,93 @@ "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/index.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/mdx.d.ts", "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/types.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Array.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Boolean.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Button.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Color.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Date.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Files.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Number.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Object.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Options.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Radio.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Select.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/Text.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/index.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/components/types/types.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/index.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/shared.d.ts", - "../../node_modules/@storybook/addon-knobs/dist/type-defs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/storybook-channel-mock.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/addons/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/merge.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/lib/stories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/addons.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/channel.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/globals.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/layout.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/notifications.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/provider.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/refs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/release-notes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/settings.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/shortcuts.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/stories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/url.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/api/dist/ts3.9/store.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/channels/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-createPopper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-enums.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-applyStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-arrow.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-computeStyles.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-eventListeners.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-flip.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-hide.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-offset.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-popperOffsets.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-modifiers-preventOverflow.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper-lite.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-popper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@popperjs-core-lib-utils-detectOverflow.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/_modules/@types-prettier-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/components/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/SBType.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/includeConditionalArg.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/story.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-dom-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/_modules/react-router-node_modules-history-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/router/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/ArgsStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/GlobalsStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryIndexStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryStore.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/args.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/autoTitle.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/composeConfigs.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/getValuesFromArgTypes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeComponentAnnotations.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeInputTypes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeProjectAnnotations.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/normalizeStory.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/prepareStory.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/processCSFFile.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/csf/testing-utils/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/decorators.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/filterArgTypes.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/hooks.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/inferControls.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/parameters.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/sortStories.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-node_modules-@emotion-utils-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-cache-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-is-prop-valid-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-@emotion-serialize-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-node_modules-csstype-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-helper.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-index.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-jsx-namespace.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/_modules/@emotion-react-types-theming.d.ts", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/theming/dist/ts3.9/index.d.ts", "../../node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts", "../../node_modules/@storybook/addons/dist/ts3.9/index.d.ts", "../../node_modules/@storybook/addons/dist/ts3.9/make-decorator.d.ts", @@ -10770,83 +13486,21 @@ "../../node_modules/@storybook/api/dist/ts3.9/modules/versions.d.ts", "../../node_modules/@storybook/api/dist/ts3.9/store.d.ts", "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/client_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/config_api.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/decorators.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/filterArgTypes.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/hooks.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/inferControls.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/parameters.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/pathToId.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/queryparams.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/simulate-pageload.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.d.ts", - "../../node_modules/@storybook/client-api/dist/ts3.9/types.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/ActionBar/ActionBar.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Badge/Badge.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Button/Button.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Loader/Loader.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/ScrollArea/ScrollArea.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/Zoom.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomElement.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/Zoom/ZoomIFrame.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/addon-panel/addon-panel.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/bar/bar.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/bar/button.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/bar/separator.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/ArgsTable.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/NoControlsWarning.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/TabbedArgsTable.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ArgsTable/types.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/ColorPalette.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Description.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/DocsPage.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IFrame.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/IconGallery.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Preview.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Source.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Story.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/Typeset.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/blocks/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookIcon.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/brand/StorybookLogo.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Array.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Boolean.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Color.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Date.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Files.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Number.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Object.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Range.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/Text.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/Options.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/form/field/field.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/form/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/form/input/input.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/icon/icon.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/icon/icons.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/icon/svg.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/index.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/placeholder/placeholder.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/spaced/Spaced.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/lazy-syntaxhighlighter.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/syntaxhighlighter/syntaxhighlighter-types.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tabs/tabs.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/ListItem.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipLinkList.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipMessage.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/TooltipNote.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/WithTooltip.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/tooltip/lazy-WithTooltip.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentFormatting.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/typography/DocumentWrapper.d.ts", - "../../node_modules/@storybook/components/dist/ts3.9/typography/link/link.d.ts", + "../../node_modules/@storybook/csf/dist/SBType.d.ts", "../../node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/csf/dist/story.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/DocsRender.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/Preview.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/PreviewWeb.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/StoryRender.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/UrlStore.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/WebView.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/index.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/simulate-pageload.d.ts", + "../../node_modules/@storybook/preview-web/dist/ts3.9/types.d.ts", + "../../node_modules/@storybook/preview-web/node_modules/@storybook/addons/dist/ts3.9/public_api.d.ts", + "../../node_modules/@storybook/preview-web/node_modules/@storybook/csf/dist/index.d.ts", + "../../node_modules/@storybook/preview-web/node_modules/@storybook/store/dist/ts3.9/index.d.ts", "../../node_modules/@storybook/router/dist/ts3.9/index.d.ts", "../../node_modules/@storybook/router/dist/ts3.9/router.d.ts", "../../node_modules/@storybook/router/dist/ts3.9/utils.d.ts", @@ -10884,27 +13538,42 @@ "../../node_modules/@types/babel__generator/index.d.ts", "../../node_modules/@types/babel__template/index.d.ts", "../../node_modules/@types/babel__traverse/ts4.1/index.d.ts", - "../../node_modules/@types/braces/index.d.ts", + "../../node_modules/@types/buble/index.d.ts", + "../../node_modules/@types/cacheable-request/index.d.ts", "../../node_modules/@types/color-convert/conversions.d.ts", "../../node_modules/@types/color-convert/index.d.ts", "../../node_modules/@types/color-convert/route.d.ts", "../../node_modules/@types/color-name/index.d.ts", + "../../node_modules/@types/emscripten/index.d.ts", "../../node_modules/@types/estree/index.d.ts", - "../../node_modules/@types/glob-base/index.d.ts", "../../node_modules/@types/glob/index.d.ts", "../../node_modules/@types/graceful-fs/index.d.ts", "../../node_modules/@types/hast/index.d.ts", "../../node_modules/@types/html-minifier-terser/index.d.ts", + "../../node_modules/@types/http-cache-semantics/index.d.ts", "../../node_modules/@types/is-function/index.d.ts", "../../node_modules/@types/istanbul-lib-coverage/index.d.ts", "../../node_modules/@types/istanbul-lib-report/index.d.ts", "../../node_modules/@types/istanbul-reports/index.d.ts", "../../node_modules/@types/jest/index.d.ts", + "../../node_modules/@types/js-beautify/index.d.ts", "../../node_modules/@types/json-schema/index.d.ts", + "../../node_modules/@types/keyv/index.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts", + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts", + "../../node_modules/@types/lodash/ts4.2/index.d.ts", "../../node_modules/@types/lz-string/index.d.ts", - "../../node_modules/@types/markdown-to-jsx/index.d.ts", "../../node_modules/@types/mdast/index.d.ts", - "../../node_modules/@types/micromatch/index.d.ts", "../../node_modules/@types/minimatch/index.d.ts", "../../node_modules/@types/minimist/index.d.ts", "../../node_modules/@types/node-fetch/externals.d.ts", @@ -10912,7 +13581,6 @@ "../../node_modules/@types/node/assert.d.ts", "../../node_modules/@types/node/assert/strict.d.ts", "../../node_modules/@types/node/async_hooks.d.ts", - "../../node_modules/@types/node/base.d.ts", "../../node_modules/@types/node/buffer.d.ts", "../../node_modules/@types/node/child_process.d.ts", "../../node_modules/@types/node/cluster.d.ts", @@ -10945,13 +13613,14 @@ "../../node_modules/@types/node/readline.d.ts", "../../node_modules/@types/node/repl.d.ts", "../../node_modules/@types/node/stream.d.ts", + "../../node_modules/@types/node/stream/consumers.d.ts", "../../node_modules/@types/node/stream/promises.d.ts", + "../../node_modules/@types/node/stream/web.d.ts", "../../node_modules/@types/node/string_decoder.d.ts", "../../node_modules/@types/node/timers.d.ts", "../../node_modules/@types/node/timers/promises.d.ts", "../../node_modules/@types/node/tls.d.ts", "../../node_modules/@types/node/trace_events.d.ts", - "../../node_modules/@types/node/ts3.6/base.d.ts", "../../node_modules/@types/node/tty.d.ts", "../../node_modules/@types/node/url.d.ts", "../../node_modules/@types/node/util.d.ts", @@ -10965,27 +13634,87 @@ "../../node_modules/@types/overlayscrollbars/index.d.ts", "../../node_modules/@types/parse-json/index.d.ts", "../../node_modules/@types/parse5/index.d.ts", - "../../node_modules/@types/prettier/index.d.ts", "../../node_modules/@types/pretty-hrtime/index.d.ts", "../../node_modules/@types/prop-types/index.d.ts", "../../node_modules/@types/qs/index.d.ts", "../../node_modules/@types/reach__router/index.d.ts", + "../../node_modules/@types/react-color/index.d.ts", + "../../node_modules/@types/react-color/lib/components/alpha/Alpha.d.ts", + "../../node_modules/@types/react-color/lib/components/block/Block.d.ts", + "../../node_modules/@types/react-color/lib/components/chrome/Chrome.d.ts", + "../../node_modules/@types/react-color/lib/components/circle/Circle.d.ts", + "../../node_modules/@types/react-color/lib/components/common/Checkboard.d.ts", + "../../node_modules/@types/react-color/lib/components/common/ColorWrap.d.ts", + "../../node_modules/@types/react-color/lib/components/compact/Compact.d.ts", + "../../node_modules/@types/react-color/lib/components/github/Github.d.ts", + "../../node_modules/@types/react-color/lib/components/hue/Hue.d.ts", + "../../node_modules/@types/react-color/lib/components/material/Material.d.ts", + "../../node_modules/@types/react-color/lib/components/photoshop/Photoshop.d.ts", + "../../node_modules/@types/react-color/lib/components/sketch/Sketch.d.ts", + "../../node_modules/@types/react-color/lib/components/slider/Slider.d.ts", + "../../node_modules/@types/react-color/lib/components/swatches/Swatches.d.ts", + "../../node_modules/@types/react-color/lib/components/twitter/Twitter.d.ts", "../../node_modules/@types/react-dom/index.d.ts", "../../node_modules/@types/react-dom/node_modules/@types/react/global.d.ts", "../../node_modules/@types/react-dom/node_modules/@types/react/index.d.ts", + "../../node_modules/@types/react-dom/node_modules/csstype/index.d.ts", "../../node_modules/@types/react-dom/server/index.d.ts", "../../node_modules/@types/react-dom/test-utils/index.d.ts", "../../node_modules/@types/react-syntax-highlighter/index.d.ts", "../../node_modules/@types/react/global.d.ts", "../../node_modules/@types/react/index.d.ts", + "../../node_modules/@types/react/node_modules/csstype/index.d.ts", + "../../node_modules/@types/reactcss/index.d.ts", "../../node_modules/@types/resolve/index.d.ts", + "../../node_modules/@types/responselike/index.d.ts", "../../node_modules/@types/scheduler/index.d.ts", "../../node_modules/@types/scheduler/tracing.d.ts", + "../../node_modules/@types/semver/classes/comparator.d.ts", + "../../node_modules/@types/semver/classes/range.d.ts", + "../../node_modules/@types/semver/classes/semver.d.ts", + "../../node_modules/@types/semver/functions/clean.d.ts", + "../../node_modules/@types/semver/functions/cmp.d.ts", + "../../node_modules/@types/semver/functions/coerce.d.ts", + "../../node_modules/@types/semver/functions/compare-build.d.ts", + "../../node_modules/@types/semver/functions/compare-loose.d.ts", + "../../node_modules/@types/semver/functions/compare.d.ts", + "../../node_modules/@types/semver/functions/diff.d.ts", + "../../node_modules/@types/semver/functions/eq.d.ts", + "../../node_modules/@types/semver/functions/gt.d.ts", + "../../node_modules/@types/semver/functions/gte.d.ts", + "../../node_modules/@types/semver/functions/inc.d.ts", + "../../node_modules/@types/semver/functions/lt.d.ts", + "../../node_modules/@types/semver/functions/lte.d.ts", + "../../node_modules/@types/semver/functions/major.d.ts", + "../../node_modules/@types/semver/functions/minor.d.ts", + "../../node_modules/@types/semver/functions/neq.d.ts", + "../../node_modules/@types/semver/functions/parse.d.ts", + "../../node_modules/@types/semver/functions/patch.d.ts", + "../../node_modules/@types/semver/functions/prerelease.d.ts", + "../../node_modules/@types/semver/functions/rcompare.d.ts", + "../../node_modules/@types/semver/functions/rsort.d.ts", + "../../node_modules/@types/semver/functions/satisfies.d.ts", + "../../node_modules/@types/semver/functions/sort.d.ts", + "../../node_modules/@types/semver/functions/valid.d.ts", + "../../node_modules/@types/semver/index.d.ts", + "../../node_modules/@types/semver/internals/identifiers.d.ts", + "../../node_modules/@types/semver/ranges/gtr.d.ts", + "../../node_modules/@types/semver/ranges/intersects.d.ts", + "../../node_modules/@types/semver/ranges/ltr.d.ts", + "../../node_modules/@types/semver/ranges/max-satisfying.d.ts", + "../../node_modules/@types/semver/ranges/min-satisfying.d.ts", + "../../node_modules/@types/semver/ranges/min-version.d.ts", + "../../node_modules/@types/semver/ranges/outside.d.ts", + "../../node_modules/@types/semver/ranges/simplify.d.ts", + "../../node_modules/@types/semver/ranges/subset.d.ts", + "../../node_modules/@types/semver/ranges/to-comparators.d.ts", + "../../node_modules/@types/semver/ranges/valid.d.ts", "../../node_modules/@types/source-list-map/index.d.ts", "../../node_modules/@types/stack-utils/index.d.ts", "../../node_modules/@types/tapable/index.d.ts", "../../node_modules/@types/testing-library__jest-dom/index.d.ts", "../../node_modules/@types/throttle-debounce/index.d.ts", + "../../node_modules/@types/treeify/index.d.ts", "../../node_modules/@types/uglify-js/index.d.ts", "../../node_modules/@types/uglify-js/node_modules/source-map/source-map.d.ts", "../../node_modules/@types/unist/index.d.ts", @@ -11004,10 +13733,10 @@ "../../node_modules/@types/webpack-sources/lib/index.d.ts", "../../node_modules/@types/webpack-sources/node_modules/source-map/source-map.d.ts", "../../node_modules/@types/webpack/index.d.ts", - "../../node_modules/@types/webpack/node_modules/anymatch/index.d.ts", "../../node_modules/@types/webpack/node_modules/source-map/source-map.d.ts", "../../node_modules/@types/yargs-parser/index.d.ts", "../../node_modules/@types/yargs/index.d.ts", + "../../node_modules/anymatch/index.d.ts", "../../node_modules/classnames/index.d.ts", "../../node_modules/csstype/index.d.ts", "../../node_modules/emotion-theming/types/helper.d.ts", @@ -11015,6 +13744,8 @@ "../../node_modules/form-data/index.d.ts", "../../node_modules/jest-diff/build/index.d.ts", "../../node_modules/jest-diff/build/types.d.ts", + "../../node_modules/keyv/src/index.d.ts", + "../../node_modules/magic-string/index.d.ts", "../../node_modules/popper.js/index.d.ts", "../../node_modules/pretty-format/build/index.d.ts", "../../node_modules/pretty-format/build/types.d.ts", @@ -11022,8 +13753,12 @@ "../../node_modules/react-element-to-jsx-string/index.d.ts", "../../node_modules/react-live/typings/react-live.d.ts", "../../node_modules/react-popper/typings/react-popper.d.ts", + "../../node_modules/react-router-dom/index.d.ts", + "../../node_modules/react-router/index.d.ts", + "../../node_modules/react-router/node_modules/history/index.d.ts", "../../node_modules/react-textarea-autosize/dist/declarations/src/index.d.ts", "../../node_modules/react-textarea-autosize/dist/react-textarea-autosize.cjs.d.ts", + "../../node_modules/synchronous-promise/index.d.ts", "../../node_modules/tslib/tslib.d.ts", "../../node_modules/typescript/lib/lib.dom.d.ts", "../../node_modules/typescript/lib/lib.es2015.collection.d.ts", @@ -11050,11 +13785,21 @@ "../../node_modules/typescript/lib/lib.es2018.intl.d.ts", "../../node_modules/typescript/lib/lib.es2018.promise.d.ts", "../../node_modules/typescript/lib/lib.es2018.regexp.d.ts", + "../../node_modules/typescript/lib/lib.es2019.array.d.ts", + "../../node_modules/typescript/lib/lib.es2019.d.ts", + "../../node_modules/typescript/lib/lib.es2019.object.d.ts", + "../../node_modules/typescript/lib/lib.es2019.string.d.ts", + "../../node_modules/typescript/lib/lib.es2019.symbol.d.ts", "../../node_modules/typescript/lib/lib.es2020.bigint.d.ts", + "../../node_modules/typescript/lib/lib.es2020.d.ts", + "../../node_modules/typescript/lib/lib.es2020.promise.d.ts", + "../../node_modules/typescript/lib/lib.es2020.string.d.ts", + "../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts", "../../node_modules/typescript/lib/lib.es5.d.ts", "../../node_modules/typescript/lib/lib.esnext.intl.d.ts", "../../scripts/setupGlobalJest.ts", - "../../scripts/setupTest.ts" + "../../scripts/setupTest.ts", + "../../types/index.d.ts" ] }, "version": "3.9.10" diff --git a/dist/core/accessibility/utils/index.d.ts b/dist/core/accessibility/utils/index.d.ts new file mode 100644 index 0000000000..e870f3f029 --- /dev/null +++ b/dist/core/accessibility/utils/index.d.ts @@ -0,0 +1,4 @@ +import isEnterKey from "./isEnterKey"; +import isSpaceKey from "./isSpaceKey"; +import useAccessibilityProps from "./useAccessibilityProps"; +export { isEnterKey, useAccessibilityProps, isSpaceKey }; diff --git a/dist/core/accessibility/utils/isEnterKey.d.ts b/dist/core/accessibility/utils/isEnterKey.d.ts new file mode 100644 index 0000000000..994e3d87d1 --- /dev/null +++ b/dist/core/accessibility/utils/isEnterKey.d.ts @@ -0,0 +1,3 @@ +import React from 'react'; +declare const isEnterKey: (e: React.KeyboardEvent) => boolean; +export default isEnterKey; diff --git a/dist/core/accessibility/utils/isSpaceKey.d.ts b/dist/core/accessibility/utils/isSpaceKey.d.ts new file mode 100644 index 0000000000..0242192b60 --- /dev/null +++ b/dist/core/accessibility/utils/isSpaceKey.d.ts @@ -0,0 +1,3 @@ +import React from 'react'; +declare const isSpaceKey: (e: React.KeyboardEvent) => boolean; +export default isSpaceKey; diff --git a/dist/core/accessibility/utils/useAccessibilityProps.d.ts b/dist/core/accessibility/utils/useAccessibilityProps.d.ts new file mode 100644 index 0000000000..59b0b07b61 --- /dev/null +++ b/dist/core/accessibility/utils/useAccessibilityProps.d.ts @@ -0,0 +1,21 @@ +import * as React from 'react'; +declare type AriaRoleType = React.AriaRole; +interface IProps { + onClick?: (event: React.MouseEvent) => void; + onKeyDown?: (event: React.KeyboardEvent) => void; + role?: AriaRoleType; + tabIndex?: number; + 'aria-label'?: React.AriaAttributes['aria-label']; +} +declare const useAccessibilityProps: ({ onClick, onKeyDown, role, tabIndex, ...rest }: IProps) => { + onClick: (event: React.MouseEvent) => void; + role: React.AriaRole; + tabIndex: number; + 'aria-label': string | undefined; + onKeyDown: (e: React.SyntheticEvent) => void; +} | { + role: React.AriaRole; + tabIndex: number | undefined; + 'aria-label': string | undefined; +}; +export default useAccessibilityProps; diff --git a/dist/core/common.type.d.ts b/dist/core/common.type.d.ts new file mode 100644 index 0000000000..8081bc6001 --- /dev/null +++ b/dist/core/common.type.d.ts @@ -0,0 +1,24 @@ +/// +import { OverlayFooterProps } from "./components/molecules/overlayFooter"; +export declare type AccentAppearance = 'primary' | 'secondary' | 'alert' | 'warning' | 'success' | 'accent1' | 'accent2' | 'accent3' | 'accent4'; +export declare type HeadingAppearance = 'default' | 'subtle' | 'disabled' | 'white'; +export declare type MessageAppearance = 'default' | 'alert' | 'info' | 'success' | 'warning'; +export declare type FileStatus = 'uploading' | 'completed' | 'error'; +export declare type FooterOptions = { + actions: OverlayFooterProps['actions']; +}; +export declare type AutoComplete = 'on' | 'off'; +export declare type NumberRange = [number, number]; +export declare type ChangeEvent = React.ChangeEvent; +export declare type TextColor = 'white' | 'primary' | 'secondary' | 'success' | 'alert' | 'warning' | 'accent1' | 'accent2' | 'accent3' | 'accent4' | 'inverse' | 'primary-dark' | 'secondary-dark' | 'success-dark' | 'alert-dark' | 'warning-dark' | 'accent1-dark' | 'accent2-dark' | 'accent3-dark' | 'accent4-dark' | 'primary-darker' | 'success-darker' | 'alert-darker' | 'warning-darker' | 'accent1-darker' | 'accent2-darker' | 'accent3-darker' | 'accent4-darker' | 'primary-light' | 'secondary-light' | 'success-light' | 'alert-light' | 'warning-light' | 'accent1-light' | 'accent2-light' | 'accent3-light' | 'accent4-light' | 'inverse-light' | 'primary-lighter' | 'secondary-lighter' | 'success-lighter' | 'alert-lighter' | 'warning-lighter' | 'accent1-lighter' | 'accent2-lighter' | 'accent3-lighter' | 'accent4-lighter' | 'inverse-lighter' | 'primary-lightest' | 'secondary-lightest' | 'success-lightest' | 'alert-lightest' | 'warning-lightest' | 'accent1-lightest' | 'accent2-lightest' | 'accent3-lightest' | 'accent4-lightest' | 'inverse-lightest' | 'primary-shadow' | 'secondary-shadow' | 'success-shadow' | 'alert-shadow' | 'warning-shadow' | 'accent1-shadow' | 'accent2-shadow' | 'accent3-shadow' | 'accent4-shadow' | 'inverse-shadow'; +export declare type AvatarSize = 'regular' | 'tiny'; +export declare type AvatarShape = 'round' | 'square'; +export declare type IconType = 'rounded' | 'outlined'; +export declare type PositionType = 'auto-start' | 'auto' | 'auto-end' | 'top-start' | 'top' | 'top-end' | 'right-start' | 'right' | 'right-end' | 'bottom-end' | 'bottom' | 'bottom-start' | 'left-end' | 'left' | 'left-start'; +export declare type OptionType = { + label: string; + value: any; + isSelectedOption?: boolean; +}; +export declare type TListboxSize = 'standard' | 'compressed' | 'tight'; +export declare type TEmptyStateSize = 'standard' | 'compressed' | 'tight' | 'large' | 'small'; diff --git a/dist/core/components/atoms/_chip/index.d.ts b/dist/core/components/atoms/_chip/index.d.ts new file mode 100644 index 0000000000..25188d1f53 --- /dev/null +++ b/dist/core/components/atoms/_chip/index.d.ts @@ -0,0 +1,21 @@ +import * as React from 'react'; +import { Name } from "../chip/Chip"; +import { BaseProps } from "../../../utils/types"; +import { IconType } from "../../../common.type"; +export interface GenericChipProps extends BaseProps { + label: string | React.ReactElement; + labelPrefix?: string; + icon?: string; + clearButton?: boolean; + disabled?: boolean; + selected?: boolean; + onClose?: () => void; + onClick?: () => void; + iconType?: IconType; + name: Name; +} +export declare const GenericChip: { + (props: GenericChipProps): JSX.Element; + displayName: string; +}; +export default GenericChip; diff --git a/dist/core/components/atoms/_text/index.d.ts b/dist/core/components/atoms/_text/index.d.ts new file mode 100644 index 0000000000..463be2dde4 --- /dev/null +++ b/dist/core/components/atoms/_text/index.d.ts @@ -0,0 +1,8 @@ +import * as React from 'react'; +interface Props { + children: React.ReactNode; + componentType: string; + className?: string; +} +declare const _default: React.ForwardRefExoticComponent>; +export default _default; diff --git a/dist/core/components/atoms/actionCard/ActionCard.d.ts b/dist/core/components/atoms/actionCard/ActionCard.d.ts new file mode 100644 index 0000000000..15af07fac7 --- /dev/null +++ b/dist/core/components/atoms/actionCard/ActionCard.d.ts @@ -0,0 +1,13 @@ +import * as React from 'react'; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +export interface ActionCardProps extends BaseProps, BaseHtmlProps { + children: React.ReactNode; + disabled?: boolean; + zIndex?: number; + onClick?: (e: React.MouseEvent | React.KeyboardEvent) => void; +} +export declare const ActionCard: { + (props: ActionCardProps): JSX.Element; + displayName: string; +}; +export default ActionCard; diff --git a/dist/core/components/atoms/actionCard/index.d.ts b/dist/core/components/atoms/actionCard/index.d.ts new file mode 100644 index 0000000000..2e9b649bd5 --- /dev/null +++ b/dist/core/components/atoms/actionCard/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./ActionCard"; +export * from "./ActionCard"; diff --git a/dist/core/components/atoms/avatar/Avatar.d.ts b/dist/core/components/atoms/avatar/Avatar.d.ts new file mode 100644 index 0000000000..ff9f891247 --- /dev/null +++ b/dist/core/components/atoms/avatar/Avatar.d.ts @@ -0,0 +1,28 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { TooltipProps } from "../../../index.type"; +import { AccentAppearance, AvatarSize, AvatarShape } from "../../../common.type"; +export interface AvatarProps extends BaseProps { + appearance?: AccentAppearance; + children?: string | React.ReactNode; + firstName?: string; + lastName?: string; + withTooltip: boolean; + tooltipPosition: TooltipProps['position']; + size: AvatarSize; + shape: AvatarShape; + role?: string; +} +export declare const Avatar: { + (props: AvatarProps): JSX.Element; + displayName: string; + Icon: (props: import("./avatarIcon").AvatarIconProps) => JSX.Element; + Image: (props: import("./avatarImage").AvatarImageProps) => JSX.Element; + defaultProps: { + tooltipPosition: string; + withTooltip: boolean; + size: string; + shape: string; + }; +}; +export default Avatar; diff --git a/dist/core/components/atoms/avatar/AvatarProvider.d.ts b/dist/core/components/atoms/avatar/AvatarProvider.d.ts new file mode 100644 index 0000000000..bea562dbef --- /dev/null +++ b/dist/core/components/atoms/avatar/AvatarProvider.d.ts @@ -0,0 +1,10 @@ +import * as React from 'react'; +declare type ContextProps = { + size?: string; + appearance?: string; + firstName?: string; + lastName?: string; +}; +export declare const AvatarContext: React.Context; +declare const _default: React.Provider; +export default _default; diff --git a/dist/core/components/atoms/avatar/avatarIcon/AvatarIcon.d.ts b/dist/core/components/atoms/avatar/avatarIcon/AvatarIcon.d.ts new file mode 100644 index 0000000000..5f0bfa01c5 --- /dev/null +++ b/dist/core/components/atoms/avatar/avatarIcon/AvatarIcon.d.ts @@ -0,0 +1,7 @@ +import { BaseProps } from "../../../../utils/types"; +export interface AvatarIconProps extends BaseProps { + name?: string; + type?: 'outlined' | 'rounded'; +} +export declare const AvatarIcon: (props: AvatarIconProps) => JSX.Element; +export default AvatarIcon; diff --git a/dist/core/components/atoms/avatar/avatarIcon/index.d.ts b/dist/core/components/atoms/avatar/avatarIcon/index.d.ts new file mode 100644 index 0000000000..937fb24001 --- /dev/null +++ b/dist/core/components/atoms/avatar/avatarIcon/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./AvatarIcon"; +export * from "./AvatarIcon"; diff --git a/dist/core/components/atoms/avatar/avatarImage/AvatarImage.d.ts b/dist/core/components/atoms/avatar/avatarImage/AvatarImage.d.ts new file mode 100644 index 0000000000..0a800082a4 --- /dev/null +++ b/dist/core/components/atoms/avatar/avatarImage/AvatarImage.d.ts @@ -0,0 +1,8 @@ +import * as React from 'react'; +import { BaseProps } from "../../../../utils/types"; +export interface AvatarImageProps extends BaseProps { + children?: React.ReactNode; + src?: string; +} +export declare const AvatarImage: (props: AvatarImageProps) => JSX.Element; +export default AvatarImage; diff --git a/dist/core/components/atoms/avatar/avatarImage/index.d.ts b/dist/core/components/atoms/avatar/avatarImage/index.d.ts new file mode 100644 index 0000000000..94a14fa15a --- /dev/null +++ b/dist/core/components/atoms/avatar/avatarImage/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./AvatarImage"; +export * from "./AvatarImage"; diff --git a/dist/core/components/atoms/avatar/index.d.ts b/dist/core/components/atoms/avatar/index.d.ts new file mode 100644 index 0000000000..e3e2d0ccbc --- /dev/null +++ b/dist/core/components/atoms/avatar/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Avatar"; +export * from "./Avatar"; diff --git a/dist/core/components/atoms/avatarGroup/AvatarCount.d.ts b/dist/core/components/atoms/avatarGroup/AvatarCount.d.ts new file mode 100644 index 0000000000..48b54a0bcb --- /dev/null +++ b/dist/core/components/atoms/avatarGroup/AvatarCount.d.ts @@ -0,0 +1,2 @@ +declare const AvatarCount: (props: any) => JSX.Element; +export default AvatarCount; diff --git a/dist/core/components/atoms/avatarGroup/AvatarGroup.d.ts b/dist/core/components/atoms/avatarGroup/AvatarGroup.d.ts new file mode 100644 index 0000000000..94a3b1ffa1 --- /dev/null +++ b/dist/core/components/atoms/avatarGroup/AvatarGroup.d.ts @@ -0,0 +1,40 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { AvatarProps, PopoverProps } from "../../../index.type"; +import { AvatarSize } from "../../../common.type"; +interface AvatarData extends Record { + firstName?: string; + lastName?: string; + appearance?: AvatarProps['appearance']; + icon?: React.ReactNode; + image?: React.ReactNode; +} +interface AvatarPopoverProps { + popperRenderer?: (names: AvatarData[]) => JSX.Element; + appendToBody?: PopoverProps['appendToBody']; + dark?: PopoverProps['dark']; + position?: PopoverProps['position']; + on?: PopoverProps['on']; + maxHeight?: number; + popperClassName?: string; +} +export interface AvatarGroupProps extends BaseProps { + list: AvatarData[]; + max: number; + borderColor: string; + size: AvatarSize; + popoverOptions: AvatarPopoverProps; + tooltipPosition: PopoverProps['position']; +} +export declare const AvatarGroup: { + (props: AvatarGroupProps): JSX.Element; + displayName: string; + defaultProps: { + max: number; + tooltipPosition: string; + borderColor: string; + popoverOptions: {}; + size: string; + }; +}; +export default AvatarGroup; diff --git a/dist/core/components/atoms/avatarGroup/AvatarPopperBody.d.ts b/dist/core/components/atoms/avatarGroup/AvatarPopperBody.d.ts new file mode 100644 index 0000000000..19e363c239 --- /dev/null +++ b/dist/core/components/atoms/avatarGroup/AvatarPopperBody.d.ts @@ -0,0 +1,2 @@ +declare const AvatarPopperBody: (props: any) => any; +export default AvatarPopperBody; diff --git a/dist/core/components/atoms/avatarGroup/Avatars.d.ts b/dist/core/components/atoms/avatarGroup/Avatars.d.ts new file mode 100644 index 0000000000..6d941ac5b7 --- /dev/null +++ b/dist/core/components/atoms/avatarGroup/Avatars.d.ts @@ -0,0 +1,2 @@ +declare const Avatars: (props: any) => any; +export default Avatars; diff --git a/dist/core/components/atoms/avatarGroup/index.d.ts b/dist/core/components/atoms/avatarGroup/index.d.ts new file mode 100644 index 0000000000..32c0faceea --- /dev/null +++ b/dist/core/components/atoms/avatarGroup/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./AvatarGroup"; +export * from "./AvatarGroup"; diff --git a/dist/core/components/atoms/avatarSelection/AvatarSelection.d.ts b/dist/core/components/atoms/avatarSelection/AvatarSelection.d.ts new file mode 100644 index 0000000000..6b52313fe8 --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/AvatarSelection.d.ts @@ -0,0 +1,59 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { AvatarProps, TooltipProps } from "../../../index.type"; +import { AvatarSize } from "../../../common.type"; +export interface AvatarData extends Record { + firstName?: string; + lastName?: string; + appearance?: AvatarProps['appearance']; + icon?: React.ReactNode; + image?: React.ReactNode; + selected?: boolean; +} +export interface AvatarSelectionProps extends BaseProps { + list: AvatarData[]; + max: number; + borderColor: string; + size: AvatarSize; + tooltipPosition: TooltipProps['position']; + avatarRenderer?: (data: AvatarData) => JSX.Element; + onSelect?: (data?: AvatarData) => void; + width?: number; + maxHeight?: number; + minHeight?: number; + withSearch?: boolean; + searchPlaceholder?: string; + searchComparator?: (searchValue: string, avatarData: AvatarData) => boolean; + children?: React.ReactNode; + className?: string; +} +export declare const AvatarSelection: { + (props: AvatarSelectionProps): JSX.Element; + displayName: string; + defaultProps: { + max: number; + tooltipPosition: string; + borderColor: string; + size: string; + width: number; + maxHeight: number; + }; + Input: (props: import("../input/Input").InputProps) => JSX.Element; + List: { + (props: import("./avatarPopover").SelectionListProps): JSX.Element; + defaultProps: { + type: string; + showDivider: boolean; + size: string; + tagName: string; + }; + }; + Option: { + (props: import("./avatarPopover").SelectionOptionProps): JSX.Element; + defaultProps: { + tagName: string; + }; + }; + EmptyState: (props: import("./avatarPopover").AvatarEmptyStateProps) => JSX.Element; +}; +export default AvatarSelection; diff --git a/dist/core/components/atoms/avatarSelection/AvatarSelectionContext.d.ts b/dist/core/components/atoms/avatarSelection/AvatarSelectionContext.d.ts new file mode 100644 index 0000000000..43e13294e2 --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/AvatarSelectionContext.d.ts @@ -0,0 +1,19 @@ +import * as React from 'react'; +import { AvatarData } from "./AvatarSelection"; +export declare type ContextProps = { + listRef?: React.RefObject; + onSelect?: (data?: AvatarData) => void; + withSearch?: boolean; + triggerRef?: React.LegacyRef; + selectedItems: AvatarData[]; + focusedOption?: HTMLElement; + setSelectedItems?: React.Dispatch>; + setFocusedOption?: React.Dispatch>; + setHighlightFirstItem?: React.Dispatch>; + setHighlightLastItem?: React.Dispatch>; + setOpenPopover?: React.Dispatch>; + openPopover?: boolean; + popoverId?: string; +}; +export declare const AvatarSelectionContext: React.Context>; +export default AvatarSelectionContext; diff --git a/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionEmptyState.d.ts b/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionEmptyState.d.ts new file mode 100644 index 0000000000..7b92a7994c --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionEmptyState.d.ts @@ -0,0 +1,8 @@ +import * as React from 'react'; +export interface AvatarEmptyStateProps { + height?: number; + title?: React.ReactText; + description?: string; +} +export declare const AvatarSelectionEmptyState: (props: AvatarEmptyStateProps) => JSX.Element; +export default AvatarSelectionEmptyState; diff --git a/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionInput.d.ts b/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionInput.d.ts new file mode 100644 index 0000000000..f49efdc79e --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionInput.d.ts @@ -0,0 +1,3 @@ +import { InputProps } from "../../../../index.type"; +export declare const AvatarSelectionInput: (props: InputProps) => JSX.Element; +export default AvatarSelectionInput; diff --git a/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionList.d.ts b/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionList.d.ts new file mode 100644 index 0000000000..fa17e83592 --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionList.d.ts @@ -0,0 +1,20 @@ +import * as React from 'react'; +import { TListboxSize } from "../../../../common.type"; +import { BaseProps } from "../../../../utils/types"; +declare type TagType = 'ul' | 'ol' | 'div' | 'nav'; +export interface SelectionListProps extends BaseProps { + children: React.ReactNode; + size: TListboxSize; + tagName: TagType; + showDivider: boolean; +} +export declare const AvatarSelectionList: { + (props: SelectionListProps): JSX.Element; + defaultProps: { + type: string; + showDivider: boolean; + size: string; + tagName: string; + }; +}; +export default AvatarSelectionList; diff --git a/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionOption.d.ts b/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionOption.d.ts new file mode 100644 index 0000000000..7beb2808b5 --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionOption.d.ts @@ -0,0 +1,17 @@ +import * as React from 'react'; +import { BaseProps } from "../../../../utils/types"; +export declare type ItemTagType = 'li' | 'div'; +export interface SelectionOptionProps extends BaseProps { + children: React.ReactNode; + value?: any; + tagName: ItemTagType; + onFocus?: (event: React.FocusEvent) => void; + onBlur?: (event: React.FocusEvent) => void; +} +export declare const AvatarSelectionOption: { + (props: SelectionOptionProps): JSX.Element; + defaultProps: { + tagName: string; + }; +}; +export default AvatarSelectionOption; diff --git a/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionPopover.d.ts b/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionPopover.d.ts new file mode 100644 index 0000000000..dee599e6f5 --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionPopover.d.ts @@ -0,0 +1,15 @@ +import * as React from 'react'; +import { AvatarData } from "../AvatarSelection"; +interface AvatarPopoverProps { + hiddenAvatarList: AvatarData[]; + searchPlaceholder?: string; + searchComparator?: (searchValue: string, avatarData: AvatarData) => boolean; + children?: React.ReactNode; + customStyle: { + width?: number; + minHeight?: number; + maxHeight?: number; + }; +} +export declare const AvatarSelectionPopover: (props: AvatarPopoverProps) => JSX.Element; +export default AvatarSelectionPopover; diff --git a/dist/core/components/atoms/avatarSelection/avatarPopover/index.d.ts b/dist/core/components/atoms/avatarSelection/avatarPopover/index.d.ts new file mode 100644 index 0000000000..b2cfe78e2b --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarPopover/index.d.ts @@ -0,0 +1,5 @@ +export * from "./AvatarSelectionPopover"; +export * from "./AvatarSelectionEmptyState"; +export * from "./AvatarSelectionInput"; +export * from "./AvatarSelectionList"; +export * from "./AvatarSelectionOption"; diff --git a/dist/core/components/atoms/avatarSelection/avatarPopover/utils.d.ts b/dist/core/components/atoms/avatarSelection/avatarPopover/utils.d.ts new file mode 100644 index 0000000000..5b047af7a6 --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarPopover/utils.d.ts @@ -0,0 +1,3 @@ +import React from 'react'; +export declare const handleKeyDown: (event: React.KeyboardEvent, focusedOption: Element | undefined, setFocusedOption?: React.Dispatch> | undefined, setHighlightFirstItem?: React.Dispatch> | undefined, setHighlightLastItem?: React.Dispatch> | undefined, listRef?: any, withSearch?: boolean | undefined, setOpenPopover?: React.Dispatch> | undefined, triggerRef?: any) => void; +export declare const handleInputKeyDown: (event: React.KeyboardEvent, listRef: any, setFocusedOption?: React.Dispatch> | undefined, setOpenPopover?: React.Dispatch> | undefined, triggerRef?: any) => void; diff --git a/dist/core/components/atoms/avatarSelection/avatarsSelection/AvatarSelectionCount.d.ts b/dist/core/components/atoms/avatarSelection/avatarsSelection/AvatarSelectionCount.d.ts new file mode 100644 index 0000000000..3b12deb590 --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarsSelection/AvatarSelectionCount.d.ts @@ -0,0 +1,13 @@ +import { AvatarData } from "../AvatarSelection"; +import { AvatarSize } from "../../../../common.type"; +interface CountAvatarProp { + size?: AvatarSize; + hiddenAvatarCount?: number; + hiddenAvatarList: AvatarData[]; + avatarStyle?: { + backgroundColor?: string; + boxShadow?: string; + }; +} +export declare const AvatarSelectionCount: (props: CountAvatarProp) => JSX.Element; +export default AvatarSelectionCount; diff --git a/dist/core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatar.d.ts b/dist/core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatar.d.ts new file mode 100644 index 0000000000..3a4c9b0d2d --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatar.d.ts @@ -0,0 +1,15 @@ +import * as React from 'react'; +import { AvatarSize } from "../../../../common.type"; +import { AvatarProps, TooltipProps } from "../../../../index.type"; +interface SelectionAvatarProps { + size?: AvatarSize; + appearance?: AvatarProps['appearance']; + firstName?: string; + lastName?: string; + withTooltip?: boolean; + icon?: React.ReactNode; + image?: React.ReactNode; + tooltipPosition?: TooltipProps['position']; +} +export declare const SelectionAvatar: (props: SelectionAvatarProps) => JSX.Element; +export default SelectionAvatar; diff --git a/dist/core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatarsWrapper.d.ts b/dist/core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatarsWrapper.d.ts new file mode 100644 index 0000000000..4242c1aee5 --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatarsWrapper.d.ts @@ -0,0 +1,15 @@ +import { AvatarData } from "../AvatarSelection"; +import { AvatarSize } from "../../../../common.type"; +import { TooltipProps } from "../../../../index.type"; +interface SelectionAvatarsWrapperProps { + size?: AvatarSize; + avatarList: AvatarData[]; + avatarRenderer?: (data: AvatarData) => JSX.Element; + tooltipPosition?: TooltipProps['position']; + avatarStyle?: { + backgroundColor?: string; + boxShadow?: string; + }; +} +export declare const SelectionAvatarsWrapper: (props: SelectionAvatarsWrapperProps) => JSX.Element; +export default SelectionAvatarsWrapper; diff --git a/dist/core/components/atoms/avatarSelection/avatarsSelection/index.d.ts b/dist/core/components/atoms/avatarSelection/avatarsSelection/index.d.ts new file mode 100644 index 0000000000..25e5699969 --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarsSelection/index.d.ts @@ -0,0 +1,2 @@ +export * from "./SelectionAvatarsWrapper"; +export * from "./AvatarSelectionCount"; diff --git a/dist/core/components/atoms/avatarSelection/avatarsSelection/utils.d.ts b/dist/core/components/atoms/avatarSelection/avatarsSelection/utils.d.ts new file mode 100644 index 0000000000..a4c4695f75 --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/avatarsSelection/utils.d.ts @@ -0,0 +1,3 @@ +import React from 'react'; +export declare const handleKeyDown: (event: React.KeyboardEvent, setOpenPopover?: React.Dispatch> | undefined, setHighlightFirstItem?: React.Dispatch> | undefined, setHighlightLastItem?: React.Dispatch> | undefined) => void; +export declare const focusListItem: (position: string, setFocusedOption?: React.Dispatch> | undefined, listRef?: any, withSearch?: boolean | undefined) => void; diff --git a/dist/core/components/atoms/avatarSelection/index.d.ts b/dist/core/components/atoms/avatarSelection/index.d.ts new file mode 100644 index 0000000000..2d391da8ec --- /dev/null +++ b/dist/core/components/atoms/avatarSelection/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./AvatarSelection"; +export * from "./AvatarSelection"; diff --git a/dist/core/components/atoms/backdrop/Backdrop.d.ts b/dist/core/components/atoms/backdrop/Backdrop.d.ts new file mode 100644 index 0000000000..935f992b7c --- /dev/null +++ b/dist/core/components/atoms/backdrop/Backdrop.d.ts @@ -0,0 +1,8 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface BackdropProps extends BaseProps { + open: boolean; + zIndex?: number; +} +export declare const Backdrop: React.FC; +export default Backdrop; diff --git a/dist/core/components/atoms/backdrop/index.d.ts b/dist/core/components/atoms/backdrop/index.d.ts new file mode 100644 index 0000000000..09081bd96d --- /dev/null +++ b/dist/core/components/atoms/backdrop/index.d.ts @@ -0,0 +1,2 @@ +export { default, default as Backdrop } from "./Backdrop"; +export * from "./Backdrop"; diff --git a/dist/core/components/atoms/badge/Badge.d.ts b/dist/core/components/atoms/badge/Badge.d.ts new file mode 100644 index 0000000000..529802266a --- /dev/null +++ b/dist/core/components/atoms/badge/Badge.d.ts @@ -0,0 +1,16 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { AccentAppearance } from "../../../common.type"; +export interface BadgeProps extends BaseProps { + appearance: AccentAppearance; + subtle?: boolean; + children: React.ReactText; +} +export declare const Badge: { + (props: BadgeProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + }; +}; +export default Badge; diff --git a/dist/core/components/atoms/badge/index.d.ts b/dist/core/components/atoms/badge/index.d.ts new file mode 100644 index 0000000000..abcef5c144 --- /dev/null +++ b/dist/core/components/atoms/badge/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Badge"; +export * from "./Badge"; diff --git a/dist/core/components/atoms/breadcrumbs/Breadcrumbs.d.ts b/dist/core/components/atoms/breadcrumbs/Breadcrumbs.d.ts new file mode 100644 index 0000000000..5237ebef27 --- /dev/null +++ b/dist/core/components/atoms/breadcrumbs/Breadcrumbs.d.ts @@ -0,0 +1,12 @@ +import { BaseProps } from "../../../utils/types"; +interface Breadcrumb { + label: string; + link: string; +} +export interface BreadcrumbsProps extends BaseProps { + list: Breadcrumb[]; + onClick?: (link: string) => void; + showTooltip?: boolean; +} +export declare const Breadcrumbs: (props: BreadcrumbsProps) => JSX.Element; +export default Breadcrumbs; diff --git a/dist/core/components/atoms/breadcrumbs/index.d.ts b/dist/core/components/atoms/breadcrumbs/index.d.ts new file mode 100644 index 0000000000..99b13e97a4 --- /dev/null +++ b/dist/core/components/atoms/breadcrumbs/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Breadcrumbs"; +export * from "./Breadcrumbs"; diff --git a/dist/core/components/atoms/button/Button.d.ts b/dist/core/components/atoms/button/Button.d.ts new file mode 100644 index 0000000000..4d8d0579e5 --- /dev/null +++ b/dist/core/components/atoms/button/Button.d.ts @@ -0,0 +1,29 @@ +import * as React from 'react'; +import { BaseProps, BaseHtmlProps } from "../../../utils/types"; +import { IconType } from "../../../common.type"; +export declare type ButtonType = 'button' | 'submit' | 'reset'; +export declare type ButtonAppearance = 'basic' | 'primary' | 'success' | 'alert' | 'transparent'; +export declare type ButtonSize = 'tiny' | 'regular' | 'large'; +export declare type ButtonAlignment = 'left' | 'right'; +export interface ButtonProps extends BaseProps, BaseHtmlProps { + type?: ButtonType; + size?: ButtonSize; + appearance?: ButtonAppearance; + disabled?: boolean; + expanded?: boolean; + selected?: boolean; + loading?: boolean; + tooltip?: string; + icon?: string; + iconAlign?: ButtonAlignment; + largeIcon?: boolean; + iconType?: IconType; + children?: React.ReactText; + tabIndex?: number; + autoFocus?: boolean; + onClick?: (event: React.MouseEvent) => void; + onMouseEnter?: (event: React.MouseEvent) => void; + onMouseLeave?: (event: React.MouseEvent) => void; +} +export declare const Button: React.ForwardRefExoticComponent>; +export default Button; diff --git a/dist/core/components/atoms/button/index.d.ts b/dist/core/components/atoms/button/index.d.ts new file mode 100644 index 0000000000..7023e5af1a --- /dev/null +++ b/dist/core/components/atoms/button/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Button"; +export * from "./Button"; diff --git a/dist/core/components/atoms/caption/Caption.d.ts b/dist/core/components/atoms/caption/Caption.d.ts new file mode 100644 index 0000000000..8b32c8f2db --- /dev/null +++ b/dist/core/components/atoms/caption/Caption.d.ts @@ -0,0 +1,13 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface CaptionProps extends BaseProps { + children: React.ReactNode; + error?: boolean; + hide?: boolean; + withInput?: boolean; +} +export declare const Caption: { + (props: CaptionProps): JSX.Element; + displayName: string; +}; +export default Caption; diff --git a/dist/core/components/atoms/caption/index.d.ts b/dist/core/components/atoms/caption/index.d.ts new file mode 100644 index 0000000000..909e607341 --- /dev/null +++ b/dist/core/components/atoms/caption/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Caption"; +export * from "./Caption"; diff --git a/dist/core/components/atoms/card/Card.d.ts b/dist/core/components/atoms/card/Card.d.ts new file mode 100644 index 0000000000..6efd1d2f20 --- /dev/null +++ b/dist/core/components/atoms/card/Card.d.ts @@ -0,0 +1,8 @@ +import * as React from 'react'; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +export declare type Shadow = 'none' | 'default' | 'light' | 'medium' | 'dark' | 'shadow10' | 'shadow20' | 'shadow30'; +export interface CardProps extends BaseProps, BaseHtmlProps { + shadow?: Shadow; +} +export declare const Card: React.ForwardRefExoticComponent>; +export default Card; diff --git a/dist/core/components/atoms/card/index.d.ts b/dist/core/components/atoms/card/index.d.ts new file mode 100644 index 0000000000..1bf89bfbf2 --- /dev/null +++ b/dist/core/components/atoms/card/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Card"; +export * from "./Card"; diff --git a/dist/core/components/atoms/cardBody/CardBody.d.ts b/dist/core/components/atoms/cardBody/CardBody.d.ts new file mode 100644 index 0000000000..3dfc48f217 --- /dev/null +++ b/dist/core/components/atoms/cardBody/CardBody.d.ts @@ -0,0 +1,10 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface CardBodyProps extends BaseProps { + children: React.ReactNode; +} +export declare const CardBody: { + (props: CardBodyProps): JSX.Element; + displayName: string; +}; +export default CardBody; diff --git a/dist/core/components/atoms/cardBody/index.d.ts b/dist/core/components/atoms/cardBody/index.d.ts new file mode 100644 index 0000000000..109e85ba23 --- /dev/null +++ b/dist/core/components/atoms/cardBody/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./CardBody"; +export * from "./CardBody"; diff --git a/dist/core/components/atoms/cardFooter/CardFooter.d.ts b/dist/core/components/atoms/cardFooter/CardFooter.d.ts new file mode 100644 index 0000000000..f9235e8b5e --- /dev/null +++ b/dist/core/components/atoms/cardFooter/CardFooter.d.ts @@ -0,0 +1,14 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface CardFooterProps extends BaseProps { + children: React.ReactNode; + withSeperator: boolean; +} +export declare const CardFooter: { + (props: CardFooterProps): JSX.Element; + displayName: string; + defaultProps: { + withSeperator: boolean; + }; +}; +export default CardFooter; diff --git a/dist/core/components/atoms/cardFooter/index.d.ts b/dist/core/components/atoms/cardFooter/index.d.ts new file mode 100644 index 0000000000..5140823717 --- /dev/null +++ b/dist/core/components/atoms/cardFooter/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./CardFooter"; +export * from "./CardFooter"; diff --git a/dist/core/components/atoms/cardHeader/CardHeader.d.ts b/dist/core/components/atoms/cardHeader/CardHeader.d.ts new file mode 100644 index 0000000000..72faca13bd --- /dev/null +++ b/dist/core/components/atoms/cardHeader/CardHeader.d.ts @@ -0,0 +1,10 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface CardHeaderProps extends BaseProps { + children: React.ReactNode; +} +export declare const CardHeader: { + (props: CardHeaderProps): JSX.Element; + displayName: string; +}; +export default CardHeader; diff --git a/dist/core/components/atoms/cardHeader/index.d.ts b/dist/core/components/atoms/cardHeader/index.d.ts new file mode 100644 index 0000000000..0ac7e489f0 --- /dev/null +++ b/dist/core/components/atoms/cardHeader/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./CardHeader"; +export * from "./CardHeader"; diff --git a/dist/core/components/atoms/cardSubdued/CardSubdued.d.ts b/dist/core/components/atoms/cardSubdued/CardSubdued.d.ts new file mode 100644 index 0000000000..6d5deef493 --- /dev/null +++ b/dist/core/components/atoms/cardSubdued/CardSubdued.d.ts @@ -0,0 +1,8 @@ +import * as React from 'react'; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +declare type Border = 'top' | 'left' | 'right' | 'bottom'; +export interface CardSubduedProps extends BaseProps, BaseHtmlProps { + border?: Border; +} +export declare const CardSubdued: React.ForwardRefExoticComponent>; +export default CardSubdued; diff --git a/dist/core/components/atoms/cardSubdued/index.d.ts b/dist/core/components/atoms/cardSubdued/index.d.ts new file mode 100644 index 0000000000..489427e8e4 --- /dev/null +++ b/dist/core/components/atoms/cardSubdued/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./CardSubdued"; +export * from "./CardSubdued"; diff --git a/dist/core/components/atoms/checkbox/Checkbox.d.ts b/dist/core/components/atoms/checkbox/Checkbox.d.ts new file mode 100644 index 0000000000..8580fdf799 --- /dev/null +++ b/dist/core/components/atoms/checkbox/Checkbox.d.ts @@ -0,0 +1,22 @@ +import * as React from 'react'; +import { BaseProps, OmitNativeProps } from "../../../utils/types"; +import { ChangeEvent } from "../../../common.type"; +export declare type CheckBoxSize = 'regular' | 'tiny'; +export interface CheckboxProps extends BaseProps, OmitNativeProps { + size?: CheckBoxSize; + defaultChecked?: boolean; + checked?: boolean; + indeterminate?: boolean; + disabled?: boolean; + label?: string; + helpText?: string; + name?: string; + value?: string | number; + tabIndex?: number; + onChange?: (event: ChangeEvent) => void; + error?: boolean; + id?: string; + labelRef?: React.Ref; +} +export declare const Checkbox: React.ForwardRefExoticComponent>; +export default Checkbox; diff --git a/dist/core/components/atoms/checkbox/CheckboxIcon.d.ts b/dist/core/components/atoms/checkbox/CheckboxIcon.d.ts new file mode 100644 index 0000000000..ba92258b94 --- /dev/null +++ b/dist/core/components/atoms/checkbox/CheckboxIcon.d.ts @@ -0,0 +1,5 @@ +declare type CheckboxIconProp = { + name: string; +}; +declare const CheckboxIcon: (props: CheckboxIconProp) => JSX.Element | null; +export default CheckboxIcon; diff --git a/dist/core/components/atoms/checkbox/index.d.ts b/dist/core/components/atoms/checkbox/index.d.ts new file mode 100644 index 0000000000..364664ba8e --- /dev/null +++ b/dist/core/components/atoms/checkbox/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Checkbox"; +export * from "./Checkbox"; diff --git a/dist/core/components/atoms/chip/Chip.d.ts b/dist/core/components/atoms/chip/Chip.d.ts new file mode 100644 index 0000000000..dd6ba963f9 --- /dev/null +++ b/dist/core/components/atoms/chip/Chip.d.ts @@ -0,0 +1,26 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { IconType } from "../../../common.type"; +export declare type ChipType = 'action' | 'selection' | 'input'; +export declare type Name = number | string | object; +export interface ChipProps extends BaseProps { + label: string | React.ReactElement; + labelPrefix?: string; + icon?: string; + iconType?: IconType; + clearButton?: boolean; + disabled?: boolean; + selected?: boolean; + type: ChipType; + onClose?: (name: Name) => void; + onClick?: (name: Name) => void; + name: Name; +} +export declare const Chip: { + (props: ChipProps): JSX.Element; + displayName: string; + defaultProps: { + type: string; + }; +}; +export default Chip; diff --git a/dist/core/components/atoms/chip/index.d.ts b/dist/core/components/atoms/chip/index.d.ts new file mode 100644 index 0000000000..a548b9f1ed --- /dev/null +++ b/dist/core/components/atoms/chip/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Chip"; +export * from "./Chip"; diff --git a/dist/core/components/atoms/chipGroup/ChipGroup.d.ts b/dist/core/components/atoms/chipGroup/ChipGroup.d.ts new file mode 100644 index 0000000000..92cad8e066 --- /dev/null +++ b/dist/core/components/atoms/chipGroup/ChipGroup.d.ts @@ -0,0 +1,12 @@ +import { ChipProps } from "../chip/Chip"; +import { BaseProps } from "../../../utils/types"; +export interface ChipGroupProps extends BaseProps { + onClose?: (item: ChipProps) => void; + onClick?: (item: ChipProps) => void; + list: ChipProps[]; +} +export declare const ChipGroup: { + (props: ChipGroupProps): JSX.Element; + displayName: string; +}; +export default ChipGroup; diff --git a/dist/core/components/atoms/chipGroup/index.d.ts b/dist/core/components/atoms/chipGroup/index.d.ts new file mode 100644 index 0000000000..084a6ebf40 --- /dev/null +++ b/dist/core/components/atoms/chipGroup/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./ChipGroup"; +export * from "./ChipGroup"; diff --git a/dist/core/components/atoms/collapsible/Collapsible.d.ts b/dist/core/components/atoms/collapsible/Collapsible.d.ts new file mode 100644 index 0000000000..804a0eb786 --- /dev/null +++ b/dist/core/components/atoms/collapsible/Collapsible.d.ts @@ -0,0 +1,23 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface CollapsibleProps extends BaseProps { + expanded: boolean; + hoverable: boolean; + height: React.ReactText; + expandedWidth: number; + onToggle?: (expanded: boolean) => void; + children: React.ReactChild; + withTrigger: boolean; +} +export declare const Collapsible: { + (props: CollapsibleProps): JSX.Element; + displayName: string; + defaultProps: { + expanded: boolean; + hoverable: boolean; + height: string; + expandedWidth: string; + withTrigger: boolean; + }; +}; +export default Collapsible; diff --git a/dist/core/components/atoms/collapsible/index.d.ts b/dist/core/components/atoms/collapsible/index.d.ts new file mode 100644 index 0000000000..c8976f3130 --- /dev/null +++ b/dist/core/components/atoms/collapsible/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Collapsible"; +export * from "./Collapsible"; diff --git a/dist/core/components/atoms/column/Column.d.ts b/dist/core/components/atoms/column/Column.d.ts new file mode 100644 index 0000000000..66d3514fea --- /dev/null +++ b/dist/core/components/atoms/column/Column.d.ts @@ -0,0 +1,13 @@ +import * as React from 'react'; +import { BaseProps, BaseHtmlProps } from "../../../utils/types"; +declare type Columns = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12' | 'auto' | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12; +export interface ColumnProps extends BaseProps, BaseHtmlProps { + size?: Columns; + sizeXS?: Columns; + sizeS?: Columns; + sizeM?: Columns; + sizeL?: Columns; + sizeXL?: Columns; +} +export declare const Column: React.ForwardRefExoticComponent>; +export default Column; diff --git a/dist/core/components/atoms/column/index.d.ts b/dist/core/components/atoms/column/index.d.ts new file mode 100644 index 0000000000..b2f968fedf --- /dev/null +++ b/dist/core/components/atoms/column/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Column"; +export * from "./Column"; diff --git a/dist/core/components/atoms/divider/Divider.d.ts b/dist/core/components/atoms/divider/Divider.d.ts new file mode 100644 index 0000000000..0c9c349335 --- /dev/null +++ b/dist/core/components/atoms/divider/Divider.d.ts @@ -0,0 +1,15 @@ +import { BaseProps } from "../../../utils/types"; +declare type DividerType = 'basic' | 'header'; +export interface DividerProps extends BaseProps { + vertical: boolean; + appearance: DividerType; +} +export declare const Divider: { + (props: DividerProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + vertical: boolean; + }; +}; +export default Divider; diff --git a/dist/core/components/atoms/divider/index.d.ts b/dist/core/components/atoms/divider/index.d.ts new file mode 100644 index 0000000000..4498091c01 --- /dev/null +++ b/dist/core/components/atoms/divider/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Divider"; +export * from "./Divider"; diff --git a/dist/core/components/atoms/dropdown/Dropdown.d.ts b/dist/core/components/atoms/dropdown/Dropdown.d.ts new file mode 100644 index 0000000000..a00112cec3 --- /dev/null +++ b/dist/core/components/atoms/dropdown/Dropdown.d.ts @@ -0,0 +1,102 @@ +import * as React from 'react'; +import { DropdownListProps, SelectAll, Selected } from "./DropdownList"; +import { OptionSchema } from "./option"; +import { BaseProps } from "../../../utils/types"; +import { ChangeEvent } from "../../../common.type"; +declare type fetchOptionsFunction = (searchTerm: string) => Promise<{ + searchTerm?: string; + count: number; + options: OptionSchema[]; +}>; +export declare type ErrorType = 'DEFAULT' | 'NO_RECORDS_FOUND' | 'FAILED_TO_FETCH'; +export declare type EventType = 'select-option' | 'deselect-option' | 'select-all' | 'deselect-all' | 'clear-all' | 'apply-selected' | 'cancel-selected'; +interface ControlledProps { + selected?: OptionSchema[]; + onUpdate?: (type: EventType, options?: OptionSchema | OptionSchema[], recentSelected?: OptionSchema[]) => void; +} +interface SyncProps { + options: OptionSchema[]; + loading?: boolean; +} +interface AsyncProps { + fetchOptions?: fetchOptionsFunction; +} +interface TriggerProps { + labelLimit?: number; + customLabel?: (selected: number, totalOptions?: number, selectedOptions?: OptionSchema[]) => string; + customTrigger?: (label: string) => React.ReactElement; +} +interface SharedDropdownProps extends DropdownListProps, BaseProps { + name?: string | number; + totalOptions?: number; + closeOnSelect: boolean; + triggerOptions: TriggerProps; + open?: boolean; + staticLimit: number; + searchDebounceDuration: number; + onPopperToggle?: (open: boolean, type?: string) => void; + getLabel?: (label: string) => void; + onChange?: (selected: any[] | any, name?: string | number) => void; + onClose?: (selected: any[], name?: string | number) => void; + tabIndex?: number; +} +declare type SyncDropdownProps = SyncProps & SharedDropdownProps; +declare type AsyncDropdownProps = AsyncProps & SharedDropdownProps; +export declare type UncontrolledDropdownProps = SyncDropdownProps & AsyncDropdownProps; +export declare type ControlledDropdownProps = ControlledProps & SyncDropdownProps & AsyncDropdownProps; +export declare type DropdownProps = ControlledDropdownProps & UncontrolledDropdownProps; +interface DropdownState { + async: boolean; + searchInit: boolean; + options: OptionSchema[]; + loading?: boolean; + optionsApplied: boolean; + open?: boolean; + searchTerm: string; + optionsLength: number; + searchedOptionsLength: number; + triggerLabel: string; + selectAll: SelectAll; + selected: OptionSchema[]; + tempSelected: OptionSchema[]; + previousSelected: OptionSchema[]; + scrollIndex?: number; + errorType: ErrorType; +} +export declare class Dropdown extends React.Component { + staticLimit: number; + static defaultProps: { + triggerOptions: {}; + options: never[]; + closeOnSelect: boolean; + staticLimit: number; + searchDebounceDuration: number; + }; + constructor(props: DropdownProps); + componentDidMount(): void; + componentDidUpdate(prevProps: DropdownProps, prevState: DropdownState): void; + getDisabledOptions: (options?: OptionSchema[]) => OptionSchema[]; + fetchOptionsFunction: (searchTerm: string) => Promise; + getUnSelectedOptions: (options: OptionSchema[], init: boolean) => OptionSchema[]; + getSelectedOptions: (options: OptionSchema[], init: boolean) => OptionSchema[]; + updateOptions: (init: boolean, async?: boolean | undefined) => void; + updateSearchTerm: (search: string) => void; + updateOnPopperToggle: () => void; + debounceOnClose: import("throttle-debounce").throttle<(values: any, name: any) => void>; + updateTriggerLabel: (selectedArray?: Selected[], totalOptions?: number | undefined) => string; + updateSelectedOptions: (selectedArray: OptionSchema[], isSingleSelect: boolean, isControlled?: boolean | undefined) => void; + isValidOption: (option: OptionSchema) => boolean; + onOptionSelect: (option: OptionSchema) => void; + onSelect: (option: OptionSchema, checked: boolean) => void; + onSelectAll: (event: ChangeEvent) => void; + debounceSearch: import("throttle-debounce").throttle<() => void>; + reload: () => void; + debounceClear: import("throttle-debounce").throttle<() => void>; + onClearOptions: () => void; + onTogglePopper: (type: string) => void; + onCancelOptions: () => void; + onApplyOptions: () => void; + onToggleDropdown: (updatedOpen: boolean, type?: string | undefined) => void; + render(): JSX.Element; +} +export default Dropdown; diff --git a/dist/core/components/atoms/dropdown/DropdownButton.d.ts b/dist/core/components/atoms/dropdown/DropdownButton.d.ts new file mode 100644 index 0000000000..ec50020d1e --- /dev/null +++ b/dist/core/components/atoms/dropdown/DropdownButton.d.ts @@ -0,0 +1,19 @@ +import * as React from 'react'; +import { IconType } from "../../../common.type"; +export declare type DropDownButtonSize = 'tiny' | 'regular'; +export interface TriggerProps { + triggerSize?: DropDownButtonSize; + icon?: string; + iconType?: IconType; + placeholder?: string; + inlineLabel?: string; + disabled?: boolean; + menu?: boolean; + error?: boolean; +} +export interface DropdownButtonProps extends TriggerProps { + children?: React.ReactText; + open?: boolean; +} +declare const DropdownButton: React.ForwardRefExoticComponent>; +export default DropdownButton; diff --git a/dist/core/components/atoms/dropdown/DropdownList.d.ts b/dist/core/components/atoms/dropdown/DropdownList.d.ts new file mode 100644 index 0000000000..e1013f6bc6 --- /dev/null +++ b/dist/core/components/atoms/dropdown/DropdownList.d.ts @@ -0,0 +1,85 @@ +import * as React from 'react'; +import { PopoverProps } from "../../../index.type"; +import { TriggerProps } from "./DropdownButton"; +import { OptionRendererProps, OptionSchema } from "./option"; +import { BaseProps } from "../../../utils/types"; +import { ChangeEvent } from "../../../common.type"; +import { ErrorType } from "./Dropdown"; +export declare type DropdownAlign = 'left' | 'right'; +export declare type OptionType = 'DEFAULT' | 'WITH_ICON' | 'WITH_META' | 'ICON_WITH_META'; +export interface Selected { + label: OptionSchema['label']; + value: OptionSchema['value']; +} +export interface SelectAll { + indeterminate: boolean; + checked: boolean; +} +interface PopoverOptions { + appendToBody?: PopoverProps['appendToBody']; + hideOnReferenceEscape?: PopoverProps['hideOnReferenceEscape']; + boundaryElement?: PopoverProps['boundaryElement']; +} +declare type TriggerAndOptionProps = TriggerProps & OptionRendererProps; +export interface ErrorTemplateProps { + errorType?: ErrorType; +} +export interface DropdownListProps extends TriggerAndOptionProps { + align?: DropdownAlign; + noResultMessage?: string; + errorTemplate?: React.FunctionComponent; + selectAllLabel?: string; + footerLabel?: string; + selectedSectionLabel?: string; + allItemsSectionLabel?: string; + applyButtonLabel?: string; + cancelButtonLabel?: string; + withSearch?: boolean; + withCheckbox?: boolean; + withSelectAll?: boolean; + showApplyButton?: boolean; + truncateOption?: boolean; + totalOptions?: number; + maxHeight?: number; + width?: number; + maxWidth?: number; + minWidth?: number; + loadersCount?: number; + popoverOptions?: PopoverOptions; + searchPlaceholder?: string; + scrollIndex?: number; +} +interface OptionsProps extends DropdownListProps, BaseProps { + listOptions: OptionSchema[]; + searchTerm: string; + triggerLabel: string; + loadingOptions?: boolean; + searchInit?: boolean; + dropdownOpen?: boolean; + async?: boolean; + remainingOptions: number; + firstEnabledOption: number; + selected: OptionSchema[]; + tempSelected: OptionSchema[]; + previousSelected: OptionSchema[]; + selectAll: SelectAll; + inputRef: React.RefObject; + customTrigger?: (label: string) => React.ReactElement; + applyOptions: () => void; + cancelOptions: () => void; + toggleDropdown: (open: boolean, type?: string) => void; + onClearOptions: () => void; + onSelectAll: (event: ChangeEvent) => void; + onSearchChange?: (searchText: string) => void; + onOptionSelect: (selected: any[] | any) => void; + onSelect: (option: OptionSchema, checked: boolean) => void; + updateOptions: () => void; + errorType: ErrorType; + errorTemplate?: React.FunctionComponent; +} +export declare const usePrevious: (value: any) => undefined; +declare const DropdownList: { + (props: OptionsProps): JSX.Element; + displayName: string; +}; +export default DropdownList; diff --git a/dist/core/components/atoms/dropdown/ErrorTemplate.d.ts b/dist/core/components/atoms/dropdown/ErrorTemplate.d.ts new file mode 100644 index 0000000000..a2f07caa54 --- /dev/null +++ b/dist/core/components/atoms/dropdown/ErrorTemplate.d.ts @@ -0,0 +1,9 @@ +import * as React from 'react'; +import { ErrorType } from "./Dropdown"; +interface ErrorTemplateProps { + dropdownStyle: React.CSSProperties; + errorType: ErrorType; + updateOptions: () => void; +} +export declare const ErrorTemplate: React.FC; +export {}; diff --git a/dist/core/components/atoms/dropdown/Loading.d.ts b/dist/core/components/atoms/dropdown/Loading.d.ts new file mode 100644 index 0000000000..3cca4efce0 --- /dev/null +++ b/dist/core/components/atoms/dropdown/Loading.d.ts @@ -0,0 +1,2 @@ +declare const Loading: (props: any) => JSX.Element | null; +export default Loading; diff --git a/dist/core/components/atoms/dropdown/index.d.ts b/dist/core/components/atoms/dropdown/index.d.ts new file mode 100644 index 0000000000..cb2d3b2d1e --- /dev/null +++ b/dist/core/components/atoms/dropdown/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Dropdown"; +export * from "./Dropdown"; diff --git a/dist/core/components/atoms/dropdown/option/CheckboxOption.d.ts b/dist/core/components/atoms/dropdown/option/CheckboxOption.d.ts new file mode 100644 index 0000000000..9ef2600f1c --- /dev/null +++ b/dist/core/components/atoms/dropdown/option/CheckboxOption.d.ts @@ -0,0 +1,3 @@ +import { OptionTypeProps } from "./index"; +declare const CheckboxOption: (props: OptionTypeProps) => JSX.Element; +export default CheckboxOption; diff --git a/dist/core/components/atoms/dropdown/option/DefaultOption.d.ts b/dist/core/components/atoms/dropdown/option/DefaultOption.d.ts new file mode 100644 index 0000000000..bc8430c36b --- /dev/null +++ b/dist/core/components/atoms/dropdown/option/DefaultOption.d.ts @@ -0,0 +1,3 @@ +import { OptionTypeProps } from "./index"; +declare const DefaultOption: (props: OptionTypeProps) => JSX.Element; +export default DefaultOption; diff --git a/dist/core/components/atoms/dropdown/option/IconOption.d.ts b/dist/core/components/atoms/dropdown/option/IconOption.d.ts new file mode 100644 index 0000000000..ba08ff373a --- /dev/null +++ b/dist/core/components/atoms/dropdown/option/IconOption.d.ts @@ -0,0 +1,3 @@ +import { OptionTypeProps } from "./index"; +declare const IconOption: (props: OptionTypeProps) => JSX.Element; +export default IconOption; diff --git a/dist/core/components/atoms/dropdown/option/IconWithMetaOption.d.ts b/dist/core/components/atoms/dropdown/option/IconWithMetaOption.d.ts new file mode 100644 index 0000000000..a3f04785b6 --- /dev/null +++ b/dist/core/components/atoms/dropdown/option/IconWithMetaOption.d.ts @@ -0,0 +1,3 @@ +import { OptionTypeProps } from "./index"; +declare const IconWithMetaOption: (props: OptionTypeProps) => JSX.Element; +export default IconWithMetaOption; diff --git a/dist/core/components/atoms/dropdown/option/MetaOption.d.ts b/dist/core/components/atoms/dropdown/option/MetaOption.d.ts new file mode 100644 index 0000000000..0c8f526853 --- /dev/null +++ b/dist/core/components/atoms/dropdown/option/MetaOption.d.ts @@ -0,0 +1,3 @@ +import { OptionTypeProps } from "./index"; +declare const MetaOption: (props: OptionTypeProps) => JSX.Element; +export default MetaOption; diff --git a/dist/core/components/atoms/dropdown/option/index.d.ts b/dist/core/components/atoms/dropdown/option/index.d.ts new file mode 100644 index 0000000000..53e0263911 --- /dev/null +++ b/dist/core/components/atoms/dropdown/option/index.d.ts @@ -0,0 +1,50 @@ +import * as React from 'react'; +import { MetaListProps, IconProps, TextProps } from "../../../../index.type"; +import { OptionType } from "../DropdownList"; +import { ChangeEvent, IconType } from "../../../../common.type"; +export declare type ClickEvent = React.MouseEvent; +export interface OptionRendererProps { + optionRenderer?: (props: OptionProps) => React.ReactElement; + optionType?: OptionType; +} +export interface OptionSchema extends Record { + label: string; + value: React.ReactText; + icon?: string; + subInfo?: string | MetaListProps; + optionType?: OptionType; + selected?: boolean; + disabled?: boolean; + group?: string; + iconType?: IconType; +} +export interface OptionTypeProps { + className: string; + textClassName: string; + dataTest?: string; + optionData: OptionSchema; + selected: boolean; + appearance?: IconProps['appearance']; + color?: TextProps['color']; + index: number; + onUpdateActiveOption: () => void; + onClickHandler?: (event: ClickEvent) => void; + onChangeHandler?: (event: ChangeEvent) => void; + renderSubInfo: (subInfo: string | MetaListProps) => React.ReactElement; + id?: string; +} +interface OptionProps extends OptionRendererProps { + optionData: OptionSchema; + selected: boolean; + truncateOption?: boolean; + checkboxes?: boolean; + index: number; + active?: boolean; + menu?: boolean; + onClick?: () => void; + onChange?: (event: ChangeEvent) => void; + updateActiveOption?: (index: number) => void; + id?: string; +} +declare const Option: (props: OptionProps) => JSX.Element; +export default Option; diff --git a/dist/core/components/atoms/dropdown/utility.d.ts b/dist/core/components/atoms/dropdown/utility.d.ts new file mode 100644 index 0000000000..9e5d202a39 --- /dev/null +++ b/dist/core/components/atoms/dropdown/utility.d.ts @@ -0,0 +1,15 @@ +import { OptionSchema as Option } from "./option"; +export declare const getSearchedOptions: (options: any, searchTerm: string) => any; +export declare const _isEqual: (firstList: Option[], secondList: Option[]) => boolean; +export declare const _isControlled: (selected?: Option[] | undefined) => boolean; +export declare const _isOpenControlled: (open?: boolean | undefined) => boolean; +export declare const _showSelectedItems: (bulk: boolean, searchTerm: string, withCheckbox?: boolean | undefined) => boolean | undefined; +export declare const _isSelectAllPresent: (searchTerm: string, bulkOptions: number, withSelectAll: boolean, withCheckbox?: boolean | undefined) => boolean | undefined; +export declare const scrollTo: (element: Element, top: number) => void; +export declare const scrollIntoView: (menuElement: HTMLDivElement | null, focusedElement: HTMLElement) => void; +export declare const getSelectAll: (selected: Option[], optionsLength: number, disabledOptionsLength: number) => { + indeterminate: boolean; + checked: boolean; +}; +export declare const scrollToOptionIndex: (scrollIndex: number, listOptions: any) => void; +export declare const groupListOptions: (listOptions: Option[]) => Option[]; diff --git a/dist/core/components/atoms/editable/Editable.d.ts b/dist/core/components/atoms/editable/Editable.d.ts new file mode 100644 index 0000000000..87477f37b4 --- /dev/null +++ b/dist/core/components/atoms/editable/Editable.d.ts @@ -0,0 +1,12 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface EditableProps extends BaseProps { + editing?: boolean; + children: React.ReactNode; + onChange: (eventType: string) => void; +} +export declare const Editable: { + (props: EditableProps): JSX.Element; + displayName: string; +}; +export default Editable; diff --git a/dist/core/components/atoms/editable/index.d.ts b/dist/core/components/atoms/editable/index.d.ts new file mode 100644 index 0000000000..b6f283c613 --- /dev/null +++ b/dist/core/components/atoms/editable/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Editable"; +export * from "./Editable"; diff --git a/dist/core/components/atoms/heading/Heading.d.ts b/dist/core/components/atoms/heading/Heading.d.ts new file mode 100644 index 0000000000..b3719c959f --- /dev/null +++ b/dist/core/components/atoms/heading/Heading.d.ts @@ -0,0 +1,19 @@ +import * as React from 'react'; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +import { HeadingAppearance, TextColor } from "../../../common.type"; +export declare type HeadingSize = 's' | 'm' | 'l' | 'xl' | 'xxl'; +export interface HeadingProps extends BaseProps, BaseHtmlProps { + children: React.ReactText; + appearance: HeadingAppearance; + size: HeadingSize; + color?: TextColor; +} +export declare const Heading: { + (props: HeadingProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + size: string; + }; +}; +export default Heading; diff --git a/dist/core/components/atoms/heading/index.d.ts b/dist/core/components/atoms/heading/index.d.ts new file mode 100644 index 0000000000..87171029bd --- /dev/null +++ b/dist/core/components/atoms/heading/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Heading"; +export * from "./Heading"; diff --git a/dist/core/components/atoms/helpText/HelpText.d.ts b/dist/core/components/atoms/helpText/HelpText.d.ts new file mode 100644 index 0000000000..322dfb2321 --- /dev/null +++ b/dist/core/components/atoms/helpText/HelpText.d.ts @@ -0,0 +1,10 @@ +import { BaseProps } from "../../../utils/types"; +export interface HelpTextProps extends BaseProps { + message?: string; + error?: boolean; +} +export declare const HelpText: { + (props: HelpTextProps): JSX.Element | null; + displayName: string; +}; +export default HelpText; diff --git a/dist/core/components/atoms/helpText/index.d.ts b/dist/core/components/atoms/helpText/index.d.ts new file mode 100644 index 0000000000..6c37c133cc --- /dev/null +++ b/dist/core/components/atoms/helpText/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./HelpText"; +export * from "./HelpText"; diff --git a/dist/core/components/atoms/icon/Icon.d.ts b/dist/core/components/atoms/icon/Icon.d.ts new file mode 100644 index 0000000000..c9e1d46677 --- /dev/null +++ b/dist/core/components/atoms/icon/Icon.d.ts @@ -0,0 +1,22 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export declare type IconAppearance = 'default' | 'destructive' | 'white' | 'subtle' | 'disabled' | 'info' | 'alert' | 'warning' | 'success' | 'primary_lighter' | 'primary' | 'primary_dark' | 'primary_darker' | 'alert_lighter' | 'alert_dark' | 'alert_darker' | 'warning_lighter' | 'warning_dark' | 'warning_darker' | 'success_lighter' | 'success_dark' | 'success_darker' | 'accent1' | 'accent1_lighter' | 'accent1_dark' | 'accent1_darker' | 'accent2' | 'accent2_lighter' | 'accent2_dark' | 'accent2_darker' | 'accent3' | 'accent3_lighter' | 'accent3_dark' | 'accent3_darker' | 'accent4' | 'accent4_lighter' | 'accent4_dark' | 'accent4_darker' | 'inverse'; +export declare type IconType = 'filled' | 'outlined' | 'outline' | 'rounded' | 'round' | 'two-tone' | 'sharp'; +export interface IconProps extends BaseProps { + name?: string; + size: number; + type?: IconType; + appearance?: IconAppearance; + onClick?: (e: React.MouseEvent) => void; + onKeyDown?: (e: React.KeyboardEvent) => void; + children?: React.ReactNode; + tabIndex?: React.DetailedHTMLProps, HTMLElement>['tabIndex']; +} +export declare const Icon: { + (props: IconProps): JSX.Element; + displayName: string; + defaultProps: { + size: number; + }; +}; +export default Icon; diff --git a/dist/core/components/atoms/icon/index.d.ts b/dist/core/components/atoms/icon/index.d.ts new file mode 100644 index 0000000000..4e4e4857cc --- /dev/null +++ b/dist/core/components/atoms/icon/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Icon"; +export * from "./Icon"; diff --git a/dist/core/components/atoms/input/Input.d.ts b/dist/core/components/atoms/input/Input.d.ts new file mode 100644 index 0000000000..bc172381d8 --- /dev/null +++ b/dist/core/components/atoms/input/Input.d.ts @@ -0,0 +1,49 @@ +import * as React from 'react'; +import { IconProps } from "../../../index.type"; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +import { AutoComplete, IconType } from "../../../common.type"; +export declare type InputType = 'text' | 'password' | 'number' | 'email' | 'tel' | 'url'; +export declare type InputSize = 'tiny' | 'regular' | 'large'; +export interface InputProps extends BaseProps, BaseHtmlProps { + name?: string; + type?: InputType; + value?: string; + defaultValue?: string; + placeholder?: string; + size?: InputSize; + icon?: string; + iconType?: IconType; + inlineLabel?: string; + disabled?: boolean; + required?: boolean; + autoFocus?: boolean; + autoComplete?: AutoComplete; + readOnly?: boolean; + min?: number; + max?: number; + minLength?: number; + maxLength?: number; + pattern?: string; + error?: boolean; + info?: string; + minWidth?: string; + onClear?: (e: React.MouseEvent | React.KeyboardEvent) => void; + onChange?: (e: React.ChangeEvent) => void; + onClick?: (e: React.MouseEvent) => void; + onBlur?: (e: React.FocusEvent) => void; + onFocus?: (e: React.FocusEvent) => void; + onPaste?: React.ClipboardEventHandler; + actionIcon?: React.ReactElement; +} +export declare const Input: React.ForwardRefExoticComponent>; +declare const ActionInput: React.ForwardRefExoticComponent> & { + ActionButton: { + (props: import("./actionButton").ActionButtonProps): JSX.Element; + displayName: string; + defaultProps: { + size: number; + type: string; + }; + }; +}; +export default ActionInput; diff --git a/dist/core/components/atoms/input/actionButton/ActionButton.d.ts b/dist/core/components/atoms/input/actionButton/ActionButton.d.ts new file mode 100644 index 0000000000..ce8c7f6728 --- /dev/null +++ b/dist/core/components/atoms/input/actionButton/ActionButton.d.ts @@ -0,0 +1,23 @@ +import * as React from 'react'; +import { BaseProps } from "../../../../utils/types"; +import { IconType } from "../../../../common.type"; +export declare type ActionButtonType = 'outlined' | 'rounded'; +export interface ActionButtonProps extends BaseProps { + name?: string; + size: number; + type?: ActionButtonType; + iconType?: IconType; + onClick?: (e: React.MouseEvent) => void; + onKeyDown?: (e: React.KeyboardEvent) => void; + children?: React.ReactNode; + tabIndex?: React.DetailedHTMLProps, HTMLElement>['tabIndex']; +} +export declare const ActionButton: { + (props: ActionButtonProps): JSX.Element; + displayName: string; + defaultProps: { + size: number; + type: string; + }; +}; +export default ActionButton; diff --git a/dist/core/components/atoms/input/actionButton/index.d.ts b/dist/core/components/atoms/input/actionButton/index.d.ts new file mode 100644 index 0000000000..bfd92dde49 --- /dev/null +++ b/dist/core/components/atoms/input/actionButton/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./ActionButton"; +export * from "./ActionButton"; diff --git a/dist/core/components/atoms/input/index.d.ts b/dist/core/components/atoms/input/index.d.ts new file mode 100644 index 0000000000..be6b33fa08 --- /dev/null +++ b/dist/core/components/atoms/input/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Input"; +export * from "./Input"; diff --git a/dist/core/components/atoms/label/Label.d.ts b/dist/core/components/atoms/label/Label.d.ts new file mode 100644 index 0000000000..c3cdac864a --- /dev/null +++ b/dist/core/components/atoms/label/Label.d.ts @@ -0,0 +1,15 @@ +import * as React from 'react'; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +export interface LabelProps extends BaseProps, BaseHtmlProps { + children: React.ReactNode; + disabled?: boolean; + required?: boolean; + optional?: boolean; + withInput?: boolean; + info?: string; +} +export declare const Label: { + (props: LabelProps): JSX.Element; + displayName: string; +}; +export default Label; diff --git a/dist/core/components/atoms/label/index.d.ts b/dist/core/components/atoms/label/index.d.ts new file mode 100644 index 0000000000..4ce3f05585 --- /dev/null +++ b/dist/core/components/atoms/label/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Label"; +export * from "./Label"; diff --git a/dist/core/components/atoms/legend/Legend.d.ts b/dist/core/components/atoms/legend/Legend.d.ts new file mode 100644 index 0000000000..2c4ee4c1b2 --- /dev/null +++ b/dist/core/components/atoms/legend/Legend.d.ts @@ -0,0 +1,22 @@ +import * as React from 'react'; +import { TextAppearance } from "../text"; +import { BaseProps } from "../../../utils/types"; +export interface LegendProps extends BaseProps { + children: React.ReactText; + iconAppearance: string; + labelAppearance?: TextAppearance; + iconSize: number; + labelWeight?: 'strong' | 'medium'; + onClick?: (e: React.MouseEvent) => void; + onMouseEnter?: (e: React.MouseEvent) => void; + onMouseLeave?: (e: React.MouseEvent) => void; +} +export declare const Legend: { + (props: LegendProps): JSX.Element; + displayName: string; + defaultProps: { + iconAppearance: string; + iconSize: number; + }; +}; +export default Legend; diff --git a/dist/core/components/atoms/legend/index.d.ts b/dist/core/components/atoms/legend/index.d.ts new file mode 100644 index 0000000000..af121a0a34 --- /dev/null +++ b/dist/core/components/atoms/legend/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Legend"; +export * from "./Legend"; diff --git a/dist/core/components/atoms/link/Link.d.ts b/dist/core/components/atoms/link/Link.d.ts new file mode 100644 index 0000000000..ca11cf6fbf --- /dev/null +++ b/dist/core/components/atoms/link/Link.d.ts @@ -0,0 +1,28 @@ +import * as React from 'react'; +import { BaseProps, OmitNativeProps } from "../../../utils/types"; +declare type LinkTarget = '_blank' | '_self' | '_parent' | '_top'; +declare type LinkAppearance = 'default' | 'subtle'; +declare type LinkSize = 'regular' | 'tiny'; +export interface LinkProps extends BaseProps, OmitNativeProps { + id?: string; + appearance: LinkAppearance; + size: LinkSize; + disabled: boolean; + href?: string; + target?: LinkTarget; + rel?: string; + download?: string; + hreflang?: string; + onClick?: (event: React.MouseEvent) => void; + children: React.ReactNode; +} +export declare const Link: { + (props: LinkProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + size: string; + disabled: boolean; + }; +}; +export default Link; diff --git a/dist/core/components/atoms/link/index.d.ts b/dist/core/components/atoms/link/index.d.ts new file mode 100644 index 0000000000..5954afdda2 --- /dev/null +++ b/dist/core/components/atoms/link/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Link"; +export * from "./Link"; diff --git a/dist/core/components/atoms/linkButton/LinkButton.d.ts b/dist/core/components/atoms/linkButton/LinkButton.d.ts new file mode 100644 index 0000000000..f5fa1e885f --- /dev/null +++ b/dist/core/components/atoms/linkButton/LinkButton.d.ts @@ -0,0 +1,23 @@ +import * as React from 'react'; +import { BaseProps, BaseHtmlProps } from "../../../utils/types"; +import { IconType } from "../../../common.type"; +export declare type ButtonType = 'button' | 'submit' | 'reset'; +export declare type LinkButtonSize = 'tiny' | 'regular'; +export declare type IconAlignment = 'left' | 'right'; +export interface LinkButtonProps extends BaseProps, BaseHtmlProps { + type?: ButtonType; + size?: LinkButtonSize; + disabled?: boolean; + icon?: string; + iconAlign?: IconAlignment; + iconType?: IconType; + children: React.ReactText; + tabIndex?: number; + autoFocus?: boolean; + subtle?: boolean; + onClick?: (event: React.MouseEvent) => void; + onMouseEnter?: (event: React.MouseEvent) => void; + onMouseLeave?: (event: React.MouseEvent) => void; +} +export declare const LinkButton: React.ForwardRefExoticComponent>; +export default LinkButton; diff --git a/dist/core/components/atoms/linkButton/index.d.ts b/dist/core/components/atoms/linkButton/index.d.ts new file mode 100644 index 0000000000..a05bd6ca6c --- /dev/null +++ b/dist/core/components/atoms/linkButton/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./LinkButton"; +export * from "./LinkButton"; diff --git a/dist/core/components/atoms/message/Message.d.ts b/dist/core/components/atoms/message/Message.d.ts new file mode 100644 index 0000000000..3704a5424b --- /dev/null +++ b/dist/core/components/atoms/message/Message.d.ts @@ -0,0 +1,19 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { MessageAppearance } from "../../../common.type"; +export interface MessageProps extends BaseProps { + appearance: MessageAppearance; + title?: string; + children?: React.ReactNode; + description: string; + actions?: React.ReactNode; +} +export declare const Message: { + (props: MessageProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + description: string; + }; +}; +export default Message; diff --git a/dist/core/components/atoms/message/index.d.ts b/dist/core/components/atoms/message/index.d.ts new file mode 100644 index 0000000000..c5419b5eae --- /dev/null +++ b/dist/core/components/atoms/message/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Message"; +export * from "./Message"; diff --git a/dist/core/components/atoms/metaList/Meta.d.ts b/dist/core/components/atoms/metaList/Meta.d.ts new file mode 100644 index 0000000000..567b7a0e78 --- /dev/null +++ b/dist/core/components/atoms/metaList/Meta.d.ts @@ -0,0 +1,13 @@ +import { MetaSize } from "./MetaList"; +import { IconType } from "../../../common.type"; +export interface MetaProps { + label: string; + icon?: string; + size?: MetaSize; + iconType?: IconType; +} +export declare const Meta: { + (props: MetaProps): JSX.Element; + displayName: string; +}; +export default Meta; diff --git a/dist/core/components/atoms/metaList/MetaList.d.ts b/dist/core/components/atoms/metaList/MetaList.d.ts new file mode 100644 index 0000000000..e79e238773 --- /dev/null +++ b/dist/core/components/atoms/metaList/MetaList.d.ts @@ -0,0 +1,23 @@ +import { MetaProps } from "./Meta"; +import { IconProps, TextProps } from "../../../index.type"; +import { BaseProps } from "../../../utils/types"; +export declare type MetaSize = 'small' | 'regular'; +export interface MetaListProps extends BaseProps { + list: MetaProps[]; + seperator?: boolean; + seperatorAppearance: IconProps['appearance']; + iconAppearance: IconProps['appearance']; + labelAppearance: TextProps['appearance']; + size?: MetaSize; +} +export declare const MetaList: { + (props: MetaListProps): JSX.Element; + displayName: string; + defaultProps: { + seperatorAppearance: string; + iconAppearance: string; + labelAppearance: string; + size: string; + }; +}; +export default MetaList; diff --git a/dist/core/components/atoms/metaList/index.d.ts b/dist/core/components/atoms/metaList/index.d.ts new file mode 100644 index 0000000000..d57d003ec5 --- /dev/null +++ b/dist/core/components/atoms/metaList/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./MetaList"; +export * from "./MetaList"; diff --git a/dist/core/components/atoms/metricInput/MetricInput.d.ts b/dist/core/components/atoms/metricInput/MetricInput.d.ts new file mode 100644 index 0000000000..413c82f353 --- /dev/null +++ b/dist/core/components/atoms/metricInput/MetricInput.d.ts @@ -0,0 +1,30 @@ +import * as React from 'react'; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +import { AutoComplete, IconType } from "../../../common.type"; +export declare type MetricInputSize = 'regular' | 'large'; +export interface MetricInputProps extends BaseProps, BaseHtmlProps { + name?: string; + value?: React.ReactText; + defaultValue?: React.ReactText; + placeholder?: string; + size?: MetricInputSize; + icon?: string; + iconType?: IconType; + prefix?: string; + suffix?: string; + disabled?: boolean; + autoFocus?: boolean; + autoComplete?: AutoComplete; + readOnly?: boolean; + min?: number; + max?: number; + error?: boolean; + showActionButton?: boolean; + onChange?: (e: React.ChangeEvent) => void; + onClick?: (e: React.MouseEvent) => void; + onBlur?: (e: React.FocusEvent) => void; + onFocus?: (e: React.FocusEvent) => void; + onKeyDown?: (e: React.KeyboardEvent) => void; +} +export declare const MetricInput: React.ForwardRefExoticComponent>; +export default MetricInput; diff --git a/dist/core/components/atoms/metricInput/index.d.ts b/dist/core/components/atoms/metricInput/index.d.ts new file mode 100644 index 0000000000..c834404cf0 --- /dev/null +++ b/dist/core/components/atoms/metricInput/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./MetricInput"; +export * from "./MetricInput"; diff --git a/dist/core/components/atoms/multiSlider/Handle.d.ts b/dist/core/components/atoms/multiSlider/Handle.d.ts new file mode 100644 index 0000000000..fcc99c1e78 --- /dev/null +++ b/dist/core/components/atoms/multiSlider/Handle.d.ts @@ -0,0 +1,52 @@ +import * as React from 'react'; +export interface HandleProps { + value: number; + fillAfter?: boolean; + fillBefore?: boolean; + onChange?: (newValue: number) => void; + onRelease?: (newValue: number) => void; +} +export interface InternalHandleProps extends HandleProps { + disabled?: boolean; + isCurrentLabelHovered?: boolean; + label: string; + max: number; + min: number; + stepSize: number; + tickSize: number; + tickSizeRatio: number; + zIndex?: number; +} +export interface HandleState { + isHandleMoving?: boolean; + isHandleHovered?: boolean; +} +export declare class Handle extends React.Component { + state: { + isHandleMoving: boolean; + isHandleHovered: boolean; + }; + handleElement: HTMLElement | null; + refHandlers: { + handle: (el: HTMLDivElement) => HTMLDivElement; + }; + componentWillUnmount(): void; + componentDidUpdate(_prevProps: InternalHandleProps, prevState: HandleState): void; + mouseEventClientOffset: (event: MouseEvent | React.MouseEvent) => number; + clientToValue: (clientPixel: number) => number; + changeValue: (newValue: number, callback?: ((newValue: number) => void) | undefined) => number; + endHandleMovement: (event: MouseEvent) => void; + continueHandleMovement: (event: MouseEvent) => void; + beginHandleMovement: (event: MouseEvent | React.MouseEvent) => void; + handleKeyDown: (event: React.KeyboardEvent) => void; + handleKeyUp: (event: React.KeyboardEvent) => void; + getHandleMidpointAndOffset: (handleElement: HTMLElement | null, useOppositeDimension?: boolean) => { + handleMidpoint: number; + handleOffset: number; + }; + handleMouseOver: () => void; + handleMouseLeave: () => void; + render(): JSX.Element; + removeDocumentEventListeners: () => void; +} +export default Handle; diff --git a/dist/core/components/atoms/multiSlider/SliderUtils.d.ts b/dist/core/components/atoms/multiSlider/SliderUtils.d.ts new file mode 100644 index 0000000000..37d7c672e4 --- /dev/null +++ b/dist/core/components/atoms/multiSlider/SliderUtils.d.ts @@ -0,0 +1,9 @@ +/// +export declare const formatPercentage: (ratio: number) => string; +export declare const countDecimalPlaces: (value: number) => number; +export declare const approxEqual: (a: number, b: number) => boolean; +export declare const clamp: (value: number, min: number, max: number) => number; +export declare const arraysEqual: (oldValues: number[], newValues: number[]) => boolean | undefined; +export declare function argMin(values: T[], argFn: (value: T) => any): T | undefined; +export declare function fillValues(values: T[], startIndex: number, endIndex: number, fillValue: T): void; +export declare function isElementOfType(element: React.ReactElement): boolean; diff --git a/dist/core/components/atoms/multiSlider/index.d.ts b/dist/core/components/atoms/multiSlider/index.d.ts new file mode 100644 index 0000000000..cf2d230a71 --- /dev/null +++ b/dist/core/components/atoms/multiSlider/index.d.ts @@ -0,0 +1,68 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import Handle, { HandleProps } from "./Handle"; +import { NumberRange } from "../../../common.type"; +export interface MultiSliderProps extends BaseProps { + disabled?: boolean; + labelStepSize: number; + labelPrecision?: number; + max: number; + min: number; + stepSize: number; + label?: string; + labelRenderer: boolean | ((value: number) => string); +} +interface SliderBaserProps extends MultiSliderProps { + onChange?: (values: number) => void; + onRelease?: (values: number) => void; +} +interface RangeSliderBaseProps extends MultiSliderProps { + onRangeChange?: (values: NumberRange) => void; + onRangeRelease?: (values: NumberRange) => void; +} +interface MultiSliderState { + labelPrecision: number; + tickSize: number; + tickSizeRatio: number; + hoveredLabelValue?: number; +} +declare type InternalMultiSliderProps = SliderBaserProps & RangeSliderBaseProps; +export declare class MultiSlider extends React.Component { + static defaultProps: { + labelStepSize: number; + max: number; + min: number; + stepSize: number; + labelRenderer: boolean; + }; + static Handle: React.FunctionComponent; + handleElements: Handle[]; + trackElement: HTMLElement | null; + constructor(props: InternalMultiSliderProps); + getDerivedStateFromProps(props: InternalMultiSliderProps): { + labelPrecision: number; + }; + getSnapshotBeforeUpdate(prevProps: InternalMultiSliderProps): null; + componentDidMount(): void; + getLabelPrecision: ({ labelPrecision, stepSize }: InternalMultiSliderProps) => number; + getOffsetRatio: (value: number) => number; + addHandleRef: (ref: Handle) => void; + getHandleValues: (props: React.PropsWithChildren) => any[]; + updateTickSize: () => void; + getTrackFill: (start: HandleProps, end?: HandleProps | undefined) => boolean; + nearestHandleForValue(handles: Handle[], getOffset: (handle: Handle) => number): Handle | undefined; + maybeHandleTrackClick: (event: React.MouseEvent) => void; + getLockedHandleIndex: (startIndex: number, endIndex: number) => number; + getNewHandleValues: (newValue: number, oldIndex: number) => any[]; + onReleaseHandler: (newValue: number, index: number) => void; + onChangeHandler: (newValue: number, index: number) => void; + formatLabel: (value: number) => string; + renderHandles: () => JSX.Element[] | null; + renderLabels: () => JSX.Element[]; + renderTrackFill: (index: number, start: HandleProps, end: HandleProps) => JSX.Element; + renderTracks: () => JSX.Element[]; + handleLabelMouseOver: (value: number) => void; + handleLabelMouseLeave: () => void; + render(): JSX.Element; +} +export default MultiSlider; diff --git a/dist/core/components/atoms/outsideClick/OutsideClick.d.ts b/dist/core/components/atoms/outsideClick/OutsideClick.d.ts new file mode 100644 index 0000000000..678c1f4014 --- /dev/null +++ b/dist/core/components/atoms/outsideClick/OutsideClick.d.ts @@ -0,0 +1,8 @@ +import * as React from 'react'; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +export interface OutsideClickProps extends BaseHtmlProps, BaseProps { + onOutsideClick: (event: Event) => void; + children: React.ReactElement; +} +export declare const OutsideClick: React.ForwardRefExoticComponent>; +export default OutsideClick; diff --git a/dist/core/components/atoms/outsideClick/index.d.ts b/dist/core/components/atoms/outsideClick/index.d.ts new file mode 100644 index 0000000000..8de23d074f --- /dev/null +++ b/dist/core/components/atoms/outsideClick/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./OutsideClick"; +export * from "./OutsideClick"; diff --git a/dist/core/components/atoms/paragraph/Paragraph.d.ts b/dist/core/components/atoms/paragraph/Paragraph.d.ts new file mode 100644 index 0000000000..acfa052a9d --- /dev/null +++ b/dist/core/components/atoms/paragraph/Paragraph.d.ts @@ -0,0 +1,17 @@ +import * as React from 'react'; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +import { TextColor } from "../../../common.type"; +export declare type ParagraphAppearance = 'default' | 'white' | 'destructive' | 'subtle' | 'disabled'; +export interface ParagraphProps extends BaseProps, BaseHtmlProps { + children: React.ReactNode; + appearance: ParagraphAppearance; + color?: TextColor; +} +export declare const Paragraph: { + (props: ParagraphProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + }; +}; +export default Paragraph; diff --git a/dist/core/components/atoms/paragraph/index.d.ts b/dist/core/components/atoms/paragraph/index.d.ts new file mode 100644 index 0000000000..98a450c08e --- /dev/null +++ b/dist/core/components/atoms/paragraph/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Paragraph"; +export * from "./Paragraph"; diff --git a/dist/core/components/atoms/pills/Pills.d.ts b/dist/core/components/atoms/pills/Pills.d.ts new file mode 100644 index 0000000000..86cc3cfddc --- /dev/null +++ b/dist/core/components/atoms/pills/Pills.d.ts @@ -0,0 +1,16 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { AccentAppearance } from "../../../common.type"; +export interface PillsProps extends BaseProps { + appearance: AccentAppearance; + subtle?: boolean; + children: React.ReactText; +} +export declare const Pills: { + (props: PillsProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + }; +}; +export default Pills; diff --git a/dist/core/components/atoms/pills/index.d.ts b/dist/core/components/atoms/pills/index.d.ts new file mode 100644 index 0000000000..81e05ecd3b --- /dev/null +++ b/dist/core/components/atoms/pills/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Pills"; +export * from "./Pills"; diff --git a/dist/core/components/atoms/placeholderImage/PlaceholderImage.d.ts b/dist/core/components/atoms/placeholderImage/PlaceholderImage.d.ts new file mode 100644 index 0000000000..75f3c0b3bb --- /dev/null +++ b/dist/core/components/atoms/placeholderImage/PlaceholderImage.d.ts @@ -0,0 +1,14 @@ +import { BaseProps } from "../../../utils/types"; +export declare type PlaceholderImageSize = 'small' | 'medium' | 'large'; +export interface PlaceholderImageProps extends BaseProps { + round?: boolean; + size: PlaceholderImageSize; +} +export declare const PlaceholderImage: { + (props: PlaceholderImageProps): JSX.Element; + displayName: string; + defaultProps: { + size: string; + }; +}; +export default PlaceholderImage; diff --git a/dist/core/components/atoms/placeholderImage/index.d.ts b/dist/core/components/atoms/placeholderImage/index.d.ts new file mode 100644 index 0000000000..fcddd309ce --- /dev/null +++ b/dist/core/components/atoms/placeholderImage/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./PlaceholderImage"; +export * from "./PlaceholderImage"; diff --git a/dist/core/components/atoms/placeholderParagraph/PlaceholderParagraph.d.ts b/dist/core/components/atoms/placeholderParagraph/PlaceholderParagraph.d.ts new file mode 100644 index 0000000000..f13ac937c9 --- /dev/null +++ b/dist/core/components/atoms/placeholderParagraph/PlaceholderParagraph.d.ts @@ -0,0 +1,15 @@ +import { BaseProps } from "../../../utils/types"; +export declare type Length = 'small' | 'medium' | 'large'; +export declare type PlaceholderParagraphSize = 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl' | 'xxxl'; +export interface PlaceholderParagraphProps extends BaseProps { + length: Length; + size?: PlaceholderParagraphSize; +} +export declare const PlaceholderParagraph: { + (props: PlaceholderParagraphProps): JSX.Element; + displayName: string; + defaultProps: { + length: string; + }; +}; +export default PlaceholderParagraph; diff --git a/dist/core/components/atoms/placeholderParagraph/index.d.ts b/dist/core/components/atoms/placeholderParagraph/index.d.ts new file mode 100644 index 0000000000..3bd46405e5 --- /dev/null +++ b/dist/core/components/atoms/placeholderParagraph/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./PlaceholderParagraph"; +export * from "./PlaceholderParagraph"; diff --git a/dist/core/components/atoms/popperWrapper/PopperWrapper.d.ts b/dist/core/components/atoms/popperWrapper/PopperWrapper.d.ts new file mode 100644 index 0000000000..ef8b1279a3 --- /dev/null +++ b/dist/core/components/atoms/popperWrapper/PopperWrapper.d.ts @@ -0,0 +1,863 @@ +import * as React from 'react'; +import { PositionType } from "../../../common.type"; +declare type ActionType = 'click' | 'hover'; +declare type Offset = 'small' | 'medium' | 'large'; +declare type PopperChildrenProps = { + ref: React.Ref; + placement: PositionType; + style: React.CSSProperties; + outOfBoundaries: boolean | null; +}; +export interface PopperWrapperProps { + init?: boolean; + trigger: React.ReactElement; + boundaryElement?: Element | null; + triggerClass?: string; + placement: PositionType; + children: React.ReactElement; + style: React.CSSProperties; + appendToBody: boolean; + on: ActionType; + hoverable: boolean; + offset: Offset; + closeOnBackdropClick: boolean; + closeOnScroll?: boolean; + open?: boolean; + hide?: boolean; + onToggle: (open: boolean, type?: string) => void; + animationClass?: { + open: string; + close: string; + }; + triggerCoordinates?: { + x: number; + y: number; + }; +} +interface PopperWrapperState { + zIndex?: number; + animationKeyframe: string; + isOpen: boolean; + uniqueKey: string; +} +export declare class PopperWrapper extends React.Component { + triggerRef: React.RefObject; + popupRef: React.RefObject; + hoverableDelay?: number; + _timer?: number; + _throttleWait?: boolean; + offsetMapping: Record; + static defaultProps: { + on: string; + offset: string; + closeOnBackdropClick: boolean; + hoverable: boolean; + appendToBody: boolean; + style: {}; + }; + constructor(props: PopperWrapperProps); + componentDidMount(): void; + componentDidUpdate(prevProps: PopperWrapperProps): void; + componentWillUnmount(): void; + boundaryScrollHandler(): void; + addBoundaryScrollHandler(): void; + removeBoundaryScrollHandler(): void; + mouseMoveHandler(): void; + handleMouseEnter(): void; + handleMouseLeave(): void; + togglePopper: (type: string, newValue?: boolean | undefined) => void; + doesEventContainsElement: (event: Event, ref: React.RefObject) => any; + getZIndexForLayer(node: Element | null): number | undefined; + getUpdatedStyle: (oldStyle: React.CSSProperties, placement: PositionType, offset: Offset) => { + accentColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + alignContent?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "space-around" | "space-between" | "space-evenly" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | undefined; + alignItems?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | "self-end" | "self-start" | undefined; + alignSelf?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "center" | "end" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | "self-end" | "self-start" | undefined; + alignTracks?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "space-around" | "space-between" | "space-evenly" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | undefined; + animationDelay?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + animationDirection?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "alternate" | "alternate-reverse" | "reverse" | undefined; + animationDuration?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + animationFillMode?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "both" | "backwards" | "forwards" | undefined; + animationIterationCount?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "infinite" | undefined; + animationName?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + animationPlayState?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "paused" | "running" | undefined; + animationTimingFunction?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + appearance?: "button" | "checkbox" | "listbox" | "none" | "radio" | "meter" | "textarea" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "menulist" | "progress-bar" | "push-button" | "searchfield" | "slider-horizontal" | "square-button" | "menulist-button" | "textfield" | undefined; + aspectRatio?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + backdropFilter?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + backfaceVisibility?: "hidden" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "visible" | undefined; + backgroundAttachment?: "fixed" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "scroll" | "local" | undefined; + backgroundBlendMode?: "color" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "color-burn" | "color-dodge" | "darken" | "difference" | "exclusion" | "hard-light" | "hue" | "lighten" | "luminosity" | "multiply" | "overlay" | "saturation" | "screen" | "soft-light" | undefined; + backgroundClip?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | undefined; + backgroundColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + backgroundImage?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + backgroundOrigin?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | undefined; + backgroundPositionX?: string | number | (string & {}) | undefined; + backgroundPositionY?: string | number | (string & {}) | undefined; + backgroundRepeat?: "repeat" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "no-repeat" | "repeat-x" | "repeat-y" | "space" | undefined; + backgroundSize?: string | number | (string & {}) | undefined; + blockOverflow?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "clip" | "ellipsis" | undefined; + blockSize?: string | number | (string & {}) | undefined; + borderBlockColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + borderBlockEndColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + borderBlockEndStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + borderBlockEndWidth?: string | number | undefined; + borderBlockStartColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + borderBlockStartStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + borderBlockStartWidth?: string | number | undefined; + borderBlockStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + borderBlockWidth?: string | number | undefined; + borderBottomColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + borderBottomLeftRadius?: string | number | (string & {}) | undefined; + borderBottomRightRadius?: string | number | (string & {}) | undefined; + borderBottomStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + borderBottomWidth?: string | number | undefined; + borderCollapse?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "collapse" | "separate" | undefined; + borderEndEndRadius?: string | number | (string & {}) | undefined; + borderEndStartRadius?: string | number | (string & {}) | undefined; + borderImageOutset?: string | number | (string & {}) | (number & {}) | undefined; + borderImageRepeat?: "repeat" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "stretch" | "space" | undefined; + borderImageSlice?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + borderImageSource?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + borderImageWidth?: string | number | (string & {}) | (number & {}) | undefined; + borderInlineColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + borderInlineEndColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + borderInlineEndStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + borderInlineEndWidth?: string | number | undefined; + borderInlineStartColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + borderInlineStartStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + borderInlineStartWidth?: string | number | undefined; + borderInlineStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + borderInlineWidth?: string | number | undefined; + borderLeftColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + borderLeftStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + borderLeftWidth?: string | number | undefined; + borderRightColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + borderRightStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + borderRightWidth?: string | number | undefined; + borderSpacing?: string | number | (string & {}) | undefined; + borderStartEndRadius?: string | number | (string & {}) | undefined; + borderStartStartRadius?: string | number | (string & {}) | undefined; + borderTopColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + borderTopLeftRadius?: string | number | (string & {}) | undefined; + borderTopRightRadius?: string | number | (string & {}) | undefined; + borderTopStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + borderTopWidth?: string | number | undefined; + bottom?: string | number | (string & {}) | undefined; + boxDecorationBreak?: "slice" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "clone" | undefined; + boxShadow?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + boxSizing?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | undefined; + breakAfter?: "region" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "right" | "left" | "page" | "all" | "always" | "avoid" | "avoid-column" | "avoid-page" | "avoid-region" | "column" | "recto" | "verso" | undefined; + breakBefore?: "region" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "right" | "left" | "page" | "all" | "always" | "avoid" | "avoid-column" | "avoid-page" | "avoid-region" | "column" | "recto" | "verso" | undefined; + breakInside?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "avoid" | "avoid-column" | "avoid-page" | "avoid-region" | undefined; + captionSide?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "top" | "bottom" | "block-end" | "block-start" | "inline-end" | "inline-start" | undefined; + caretColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + clear?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "right" | "left" | "both" | "inline-end" | "inline-start" | undefined; + clipPath?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | "fill-box" | "margin-box" | "stroke-box" | "view-box" | undefined; + color?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + colorAdjust?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "economy" | "exact" | undefined; + colorScheme?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dark" | "light" | "normal" | undefined; + columnCount?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + columnFill?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "balance" | "balance-all" | undefined; + columnGap?: string | number | (string & {}) | undefined; + columnRuleColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + columnRuleStyle?: "hidden" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + columnRuleWidth?: string | number | (string & {}) | undefined; + columnSpan?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | undefined; + columnWidth?: string | number | undefined; + contain?: "size" | "content" | "style" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "layout" | "paint" | "strict" | undefined; + content?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "close-quote" | "no-close-quote" | "no-open-quote" | "open-quote" | "contents" | undefined; + contentVisibility?: "hidden" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "visible" | undefined; + counterIncrement?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + counterReset?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + counterSet?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + cursor?: "default" | "cell" | "none" | (string & {}) | "progress" | "text" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "copy" | "move" | "-moz-grab" | "-webkit-grab" | "alias" | "all-scroll" | "col-resize" | "context-menu" | "crosshair" | "e-resize" | "ew-resize" | "grab" | "grabbing" | "help" | "n-resize" | "ne-resize" | "nesw-resize" | "no-drop" | "not-allowed" | "ns-resize" | "nw-resize" | "nwse-resize" | "pointer" | "row-resize" | "s-resize" | "se-resize" | "sw-resize" | "vertical-text" | "w-resize" | "wait" | "zoom-in" | "zoom-out" | undefined; + direction?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ltr" | "rtl" | undefined; + display?: "grid" | "none" | "table" | (string & {}) | "ruby" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "inline" | "contents" | "block" | "run-in" | "-ms-flexbox" | "-ms-grid" | "-webkit-flex" | "flex" | "flow" | "flow-root" | "ruby-base" | "ruby-base-container" | "ruby-text" | "ruby-text-container" | "table-caption" | "table-cell" | "table-column" | "table-column-group" | "table-footer-group" | "table-header-group" | "table-row" | "table-row-group" | "-ms-inline-flexbox" | "-ms-inline-grid" | "-webkit-inline-flex" | "inline-block" | "inline-flex" | "inline-grid" | "inline-list-item" | "inline-table" | "list-item" | undefined; + emptyCells?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "hide" | "show" | undefined; + filter?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + flexBasis?: string | number | (string & {}) | undefined; + flexDirection?: "row" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "column" | "column-reverse" | "row-reverse" | undefined; + flexGrow?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + flexShrink?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + flexWrap?: "wrap" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "nowrap" | "wrap-reverse" | undefined; + float?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "right" | "left" | "inline-end" | "inline-start" | undefined; + fontFamily?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "cursive" | "fantasy" | "monospace" | "sans-serif" | "serif" | undefined; + fontFeatureSettings?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | undefined; + fontKerning?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "normal" | undefined; + fontLanguageOverride?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | undefined; + fontOpticalSizing?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + fontSize?: string | number | (string & {}) | undefined; + fontSizeAdjust?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "from-font" | undefined; + fontSmooth?: string | number | undefined; + fontStretch?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "expanded" | "normal" | "condensed" | "extra-condensed" | "extra-expanded" | "semi-condensed" | "semi-expanded" | "ultra-condensed" | "ultra-expanded" | undefined; + fontStyle?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "italic" | "oblique" | undefined; + fontSynthesis?: "style" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "weight" | "small-caps" | undefined; + fontVariant?: "none" | (string & {}) | "ruby" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "small-caps" | "jis04" | "jis78" | "jis83" | "jis90" | "simplified" | "traditional" | "all-petite-caps" | "all-small-caps" | "common-ligatures" | "contextual" | "diagonal-fractions" | "discretionary-ligatures" | "full-width" | "historical-forms" | "historical-ligatures" | "lining-nums" | "no-common-ligatures" | "no-contextual" | "no-discretionary-ligatures" | "no-historical-ligatures" | "oldstyle-nums" | "ordinal" | "petite-caps" | "proportional-nums" | "proportional-width" | "slashed-zero" | "stacked-fractions" | "tabular-nums" | "titling-caps" | "unicase" | undefined; + fontVariantCaps?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "small-caps" | "all-petite-caps" | "all-small-caps" | "petite-caps" | "titling-caps" | "unicase" | undefined; + fontVariantEastAsian?: (string & {}) | "ruby" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "jis04" | "jis78" | "jis83" | "jis90" | "simplified" | "traditional" | "full-width" | "proportional-width" | undefined; + fontVariantLigatures?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "common-ligatures" | "contextual" | "discretionary-ligatures" | "historical-ligatures" | "no-common-ligatures" | "no-contextual" | "no-discretionary-ligatures" | "no-historical-ligatures" | undefined; + fontVariantNumeric?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "diagonal-fractions" | "lining-nums" | "oldstyle-nums" | "ordinal" | "proportional-nums" | "slashed-zero" | "stacked-fractions" | "tabular-nums" | undefined; + fontVariantPosition?: "sub" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "super" | undefined; + fontVariationSettings?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | undefined; + fontWeight?: "bold" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "normal" | "bolder" | "lighter" | undefined; + forcedColorAdjust?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + gridAutoColumns?: string | number | (string & {}) | undefined; + gridAutoFlow?: "row" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "column" | "dense" | undefined; + gridAutoRows?: string | number | (string & {}) | undefined; + gridColumnEnd?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + gridColumnStart?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + gridRowEnd?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + gridRowStart?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + gridTemplateAreas?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + gridTemplateColumns?: string | number | (string & {}) | undefined; + gridTemplateRows?: string | number | (string & {}) | undefined; + hangingPunctuation?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "allow-end" | "first" | "force-end" | "last" | undefined; + height?: string | number | (string & {}) | undefined; + hyphens?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "manual" | undefined; + imageOrientation?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "flip" | "from-image" | undefined; + imageRendering?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "-moz-crisp-edges" | "-webkit-optimize-contrast" | "crisp-edges" | "pixelated" | undefined; + imageResolution?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "from-image" | undefined; + initialLetter?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "normal" | undefined; + inlineSize?: string | number | (string & {}) | undefined; + inset?: string | number | (string & {}) | undefined; + insetBlock?: string | number | (string & {}) | undefined; + insetBlockEnd?: string | number | (string & {}) | undefined; + insetBlockStart?: string | number | (string & {}) | undefined; + insetInline?: string | number | (string & {}) | undefined; + insetInlineEnd?: string | number | (string & {}) | undefined; + insetInlineStart?: string | number | (string & {}) | undefined; + isolation?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "isolate" | undefined; + justifyContent?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "right" | "left" | "center" | "end" | "space-around" | "space-between" | "space-evenly" | "stretch" | "flex-end" | "flex-start" | "normal" | undefined; + justifyItems?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "right" | "left" | "center" | "end" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | "self-end" | "self-start" | "legacy" | undefined; + justifySelf?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "right" | "left" | "center" | "end" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | "self-end" | "self-start" | undefined; + justifyTracks?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "right" | "left" | "center" | "end" | "space-around" | "space-between" | "space-evenly" | "stretch" | "flex-end" | "flex-start" | "normal" | undefined; + left?: string | number | (string & {}) | undefined; + letterSpacing?: string | number | undefined; + lineBreak?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "normal" | "strict" | "anywhere" | "loose" | undefined; + lineHeight?: string | number | (string & {}) | (number & {}) | undefined; + lineHeightStep?: string | number | undefined; + listStyleImage?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + listStylePosition?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "inside" | "outside" | undefined; + listStyleType?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + marginBlock?: string | number | (string & {}) | undefined; + marginBlockEnd?: string | number | (string & {}) | undefined; + marginBlockStart?: string | number | (string & {}) | undefined; + marginBottom?: string | number | (string & {}) | undefined; + marginInline?: string | number | (string & {}) | undefined; + marginInlineEnd?: string | number | (string & {}) | undefined; + marginInlineStart?: string | number | (string & {}) | undefined; + marginLeft?: string | number | (string & {}) | undefined; + marginRight?: string | number | (string & {}) | undefined; + marginTop?: string | number | (string & {}) | undefined; + maskBorderMode?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "alpha" | "luminance" | undefined; + maskBorderOutset?: string | number | (string & {}) | (number & {}) | undefined; + maskBorderRepeat?: "repeat" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "stretch" | "space" | undefined; + maskBorderSlice?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + maskBorderSource?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + maskBorderWidth?: string | number | (string & {}) | (number & {}) | undefined; + maskClip?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | "fill-box" | "margin-box" | "stroke-box" | "view-box" | "no-clip" | undefined; + maskComposite?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "add" | "exclude" | "intersect" | "subtract" | undefined; + maskImage?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + maskMode?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "alpha" | "luminance" | "match-source" | undefined; + maskOrigin?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | "fill-box" | "margin-box" | "stroke-box" | "view-box" | undefined; + maskPosition?: string | number | (string & {}) | undefined; + maskRepeat?: "repeat" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "no-repeat" | "repeat-x" | "repeat-y" | "space" | undefined; + maskSize?: string | number | (string & {}) | undefined; + maskType?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "alpha" | "luminance" | undefined; + mathStyle?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "compact" | undefined; + maxBlockSize?: string | number | (string & {}) | undefined; + maxHeight?: string | number | (string & {}) | undefined; + maxInlineSize?: string | number | (string & {}) | undefined; + maxLines?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + maxWidth?: string | number | (string & {}) | undefined; + minBlockSize?: string | number | (string & {}) | undefined; + minHeight?: string | number | (string & {}) | undefined; + minInlineSize?: string | number | (string & {}) | undefined; + minWidth?: string | number | (string & {}) | undefined; + mixBlendMode?: "color" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "color-burn" | "color-dodge" | "darken" | "difference" | "exclusion" | "hard-light" | "hue" | "lighten" | "luminosity" | "multiply" | "overlay" | "saturation" | "screen" | "soft-light" | undefined; + motionDistance?: string | number | (string & {}) | undefined; + motionPath?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | "fill-box" | "margin-box" | "stroke-box" | "view-box" | undefined; + motionRotation?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "reverse" | undefined; + objectFit?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "contain" | "cover" | "fill" | "scale-down" | undefined; + objectPosition?: string | number | (string & {}) | undefined; + offsetAnchor?: string | number | (string & {}) | undefined; + offsetDistance?: string | number | (string & {}) | undefined; + offsetPath?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | "fill-box" | "margin-box" | "stroke-box" | "view-box" | undefined; + offsetRotate?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "reverse" | undefined; + offsetRotation?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "reverse" | undefined; + opacity?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + order?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + orphans?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + outlineColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | "invert" | undefined; + outlineOffset?: string | number | undefined; + outlineStyle?: "hidden" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + outlineWidth?: string | number | undefined; + overflowAnchor?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + overflowBlock?: "hidden" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "clip" | "scroll" | "visible" | undefined; + overflowClipBox?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "content-box" | "padding-box" | undefined; + overflowClipMargin?: string | number | (string & {}) | undefined; + overflowInline?: "hidden" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "clip" | "scroll" | "visible" | undefined; + overflowWrap?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "anywhere" | "break-word" | undefined; + overflowX?: "hidden" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "-moz-hidden-unscrollable" | "clip" | "scroll" | "visible" | undefined; + overflowY?: "hidden" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "-moz-hidden-unscrollable" | "clip" | "scroll" | "visible" | undefined; + overscrollBehaviorBlock?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "contain" | undefined; + overscrollBehaviorInline?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "contain" | undefined; + overscrollBehaviorX?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "contain" | undefined; + overscrollBehaviorY?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "contain" | undefined; + paddingBlock?: string | number | (string & {}) | undefined; + paddingBlockEnd?: string | number | (string & {}) | undefined; + paddingBlockStart?: string | number | (string & {}) | undefined; + paddingBottom?: string | number | (string & {}) | undefined; + paddingInline?: string | number | (string & {}) | undefined; + paddingInlineEnd?: string | number | (string & {}) | undefined; + paddingInlineStart?: string | number | (string & {}) | undefined; + paddingLeft?: string | number | (string & {}) | undefined; + paddingRight?: string | number | (string & {}) | undefined; + paddingTop?: string | number | (string & {}) | undefined; + pageBreakAfter?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "right" | "left" | "always" | "avoid" | "recto" | "verso" | undefined; + pageBreakBefore?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "right" | "left" | "always" | "avoid" | "recto" | "verso" | undefined; + pageBreakInside?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "avoid" | undefined; + paintOrder?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "fill" | "markers" | "stroke" | undefined; + perspective?: string | number | undefined; + perspectiveOrigin?: string | number | (string & {}) | undefined; + placeContent?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "space-around" | "space-between" | "space-evenly" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | undefined; + pointerEvents?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "all" | "visible" | "fill" | "stroke" | "painted" | "visibleFill" | "visiblePainted" | "visibleStroke" | undefined; + position?: "fixed" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "-webkit-sticky" | "absolute" | "relative" | "static" | "sticky" | undefined; + quotes?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + resize?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "inline" | "both" | "horizontal" | "vertical" | "block" | undefined; + right?: string | number | (string & {}) | undefined; + rotate?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + rowGap?: string | number | (string & {}) | undefined; + rubyAlign?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "space-around" | "space-between" | undefined; + rubyMerge?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "collapse" | "separate" | undefined; + rubyPosition?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "alternate" | "inter-character" | "over" | "under" | undefined; + scale?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + scrollBehavior?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "smooth" | undefined; + scrollMargin?: string | number | (string & {}) | undefined; + scrollMarginBlock?: string | number | (string & {}) | undefined; + scrollMarginBlockEnd?: string | number | undefined; + scrollMarginBlockStart?: string | number | undefined; + scrollMarginBottom?: string | number | undefined; + scrollMarginInline?: string | number | (string & {}) | undefined; + scrollMarginInlineEnd?: string | number | undefined; + scrollMarginInlineStart?: string | number | undefined; + scrollMarginLeft?: string | number | undefined; + scrollMarginRight?: string | number | undefined; + scrollMarginTop?: string | number | undefined; + scrollPadding?: string | number | (string & {}) | undefined; + scrollPaddingBlock?: string | number | (string & {}) | undefined; + scrollPaddingBlockEnd?: string | number | (string & {}) | undefined; + scrollPaddingBlockStart?: string | number | (string & {}) | undefined; + scrollPaddingBottom?: string | number | (string & {}) | undefined; + scrollPaddingInline?: string | number | (string & {}) | undefined; + scrollPaddingInlineEnd?: string | number | (string & {}) | undefined; + scrollPaddingInlineStart?: string | number | (string & {}) | undefined; + scrollPaddingLeft?: string | number | (string & {}) | undefined; + scrollPaddingRight?: string | number | (string & {}) | undefined; + scrollPaddingTop?: string | number | (string & {}) | undefined; + scrollSnapAlign?: "start" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | undefined; + scrollSnapMargin?: string | number | (string & {}) | undefined; + scrollSnapMarginBottom?: string | number | undefined; + scrollSnapMarginLeft?: string | number | undefined; + scrollSnapMarginRight?: string | number | undefined; + scrollSnapMarginTop?: string | number | undefined; + scrollSnapStop?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "always" | undefined; + scrollSnapType?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "inline" | "both" | "x" | "block" | "y" | undefined; + scrollbarColor?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + scrollbarGutter?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "stable" | undefined; + scrollbarWidth?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "thin" | undefined; + shapeImageThreshold?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + shapeMargin?: string | number | (string & {}) | undefined; + shapeOutside?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | "margin-box" | undefined; + tabSize?: string | number | (string & {}) | (number & {}) | undefined; + tableLayout?: "fixed" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + textAlign?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "right" | "left" | "center" | "end" | "justify" | "match-parent" | undefined; + textAlignLast?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "right" | "left" | "center" | "end" | "justify" | undefined; + textCombineUpright?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | undefined; + textDecorationColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + textDecorationLine?: "blink" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "grammar-error" | "line-through" | "overline" | "spelling-error" | "underline" | undefined; + textDecorationSkip?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "box-decoration" | "edges" | "leading-spaces" | "objects" | "spaces" | "trailing-spaces" | undefined; + textDecorationSkipInk?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "all" | undefined; + textDecorationStyle?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "solid" | "wavy" | undefined; + textDecorationThickness?: string | number | (string & {}) | undefined; + textDecorationWidth?: string | number | (string & {}) | undefined; + textEmphasisColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + textEmphasisPosition?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + textEmphasisStyle?: "open" | "none" | (string & {}) | "filled" | "circle" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dot" | "double-circle" | "sesame" | "triangle" | undefined; + textIndent?: string | number | (string & {}) | undefined; + textJustify?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "inter-character" | "inter-word" | undefined; + textOrientation?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "mixed" | "sideways" | "upright" | undefined; + textOverflow?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "clip" | "ellipsis" | undefined; + textRendering?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "geometricPrecision" | "optimizeLegibility" | "optimizeSpeed" | undefined; + textShadow?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + textSizeAdjust?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + textTransform?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "full-width" | "capitalize" | "full-size-kana" | "lowercase" | "uppercase" | undefined; + textUnderlineOffset?: string | number | (string & {}) | undefined; + textUnderlinePosition?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "right" | "left" | "from-font" | "under" | undefined; + top?: string | number | (string & {}) | undefined; + touchAction?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "-ms-manipulation" | "-ms-none" | "-ms-pinch-zoom" | "manipulation" | "pan-down" | "pan-left" | "pan-right" | "pan-up" | "pan-x" | "pan-y" | "pinch-zoom" | undefined; + transform?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + transformBox?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "fill-box" | "stroke-box" | "view-box" | undefined; + transformOrigin?: string | number | (string & {}) | undefined; + transformStyle?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "flat" | "preserve-3d" | undefined; + transitionDelay?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + transitionDuration?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + transitionProperty?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | undefined; + transitionTimingFunction?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + translate?: string | number | (string & {}) | undefined; + unicodeBidi?: "embed" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "isolate" | "-moz-isolate" | "-moz-isolate-override" | "-moz-plaintext" | "-webkit-isolate" | "-webkit-isolate-override" | "-webkit-plaintext" | "bidi-override" | "isolate-override" | "plaintext" | undefined; + userSelect?: "none" | "text" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "all" | "contain" | "-moz-none" | "element" | undefined; + verticalAlign?: string | number | (string & {}) | undefined; + visibility?: "hidden" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "visible" | "collapse" | undefined; + whiteSpace?: "pre" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "nowrap" | "-moz-pre-wrap" | "break-spaces" | "pre-line" | "pre-wrap" | undefined; + widows?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + width?: string | number | (string & {}) | undefined; + willChange?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "contents" | "scroll-position" | undefined; + wordBreak?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "break-word" | "break-all" | "keep-all" | undefined; + wordSpacing?: string | number | undefined; + wordWrap?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "break-word" | undefined; + writingMode?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "horizontal-tb" | "sideways-lr" | "sideways-rl" | "vertical-lr" | "vertical-rl" | undefined; + zIndex?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + zoom?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "reset" | "normal" | undefined; + all?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + animation?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "both" | "normal" | "alternate" | "alternate-reverse" | "reverse" | "backwards" | "forwards" | "infinite" | "paused" | "running" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + background?: string | number | (string & {}) | undefined; + backgroundPosition?: string | number | (string & {}) | undefined; + border?: string | number | (string & {}) | undefined; + borderBlock?: string | number | (string & {}) | undefined; + borderBlockEnd?: string | number | (string & {}) | undefined; + borderBlockStart?: string | number | (string & {}) | undefined; + borderBottom?: string | number | (string & {}) | undefined; + borderColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + borderImage?: "repeat" | "none" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "stretch" | "space" | undefined; + borderInline?: string | number | (string & {}) | undefined; + borderInlineEnd?: string | number | (string & {}) | undefined; + borderInlineStart?: string | number | (string & {}) | undefined; + borderLeft?: string | number | (string & {}) | undefined; + borderRadius?: string | number | (string & {}) | undefined; + borderRight?: string | number | (string & {}) | undefined; + borderStyle?: "hidden" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + borderTop?: string | number | (string & {}) | undefined; + borderWidth?: string | number | (string & {}) | undefined; + columnRule?: string | number | (string & {}) | undefined; + columns?: string | number | (string & {}) | (number & {}) | undefined; + flex?: string | number | (string & {}) | (number & {}) | undefined; + flexFlow?: "wrap" | "row" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "column" | "column-reverse" | "row-reverse" | "nowrap" | "wrap-reverse" | undefined; + font?: "menu" | (string & {}) | "caption" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "icon" | "message-box" | "small-caption" | "status-bar" | undefined; + gap?: string | number | (string & {}) | undefined; + grid?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + gridArea?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + gridColumn?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + gridRow?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + gridTemplate?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + lineClamp?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + listStyle?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "inside" | "outside" | undefined; + margin?: string | number | (string & {}) | undefined; + mask?: string | number | (string & {}) | undefined; + maskBorder?: "repeat" | "none" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "stretch" | "space" | "alpha" | "luminance" | undefined; + motion?: string | number | (string & {}) | undefined; + offset?: string | number | (string & {}) | undefined; + outline?: string | number | (string & {}) | undefined; + overflow?: "hidden" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "-moz-hidden-unscrollable" | "clip" | "scroll" | "visible" | undefined; + overscrollBehavior?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "contain" | undefined; + padding?: string | number | (string & {}) | undefined; + placeItems?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | "self-end" | "self-start" | undefined; + placeSelf?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "center" | "end" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | "self-end" | "self-start" | undefined; + textDecoration?: string | number | (string & {}) | undefined; + textEmphasis?: "open" | "none" | (string & {}) | "filled" | "white" | "circle" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | "dot" | "double-circle" | "sesame" | "triangle" | undefined; + transition?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + MozAnimationDelay?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + MozAnimationDirection?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "alternate" | "alternate-reverse" | "reverse" | undefined; + MozAnimationDuration?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + MozAnimationFillMode?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "both" | "backwards" | "forwards" | undefined; + MozAnimationIterationCount?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "infinite" | undefined; + MozAnimationName?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + MozAnimationPlayState?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "paused" | "running" | undefined; + MozAnimationTimingFunction?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + MozAppearance?: "button" | "checkbox" | "listbox" | "listitem" | "menubar" | "menuitem" | "none" | "progressbar" | "radio" | "separator" | "tab" | "tabpanel" | "toolbar" | "tooltip" | "treeitem" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "range" | "menulist" | "searchfield" | "menulist-button" | "textfield" | "-moz-mac-unified-toolbar" | "-moz-win-borderless-glass" | "-moz-win-browsertabbar-toolbox" | "-moz-win-communications-toolbox" | "-moz-win-communicationstext" | "-moz-win-exclude-glass" | "-moz-win-glass" | "-moz-win-media-toolbox" | "-moz-win-mediatext" | "-moz-window-button-box" | "-moz-window-button-box-maximized" | "-moz-window-button-close" | "-moz-window-button-maximize" | "-moz-window-button-minimize" | "-moz-window-button-restore" | "-moz-window-frame-bottom" | "-moz-window-frame-left" | "-moz-window-frame-right" | "-moz-window-titlebar" | "-moz-window-titlebar-maximized" | "button-arrow-down" | "button-arrow-next" | "button-arrow-previous" | "button-arrow-up" | "button-bevel" | "button-focus" | "caret" | "checkbox-container" | "checkbox-label" | "checkmenuitem" | "dualbutton" | "groupbox" | "menuarrow" | "menucheckbox" | "menuimage" | "menuitemtext" | "menulist-text" | "menulist-textfield" | "menupopup" | "menuradio" | "menuseparator" | "meterbar" | "meterchunk" | "progressbar-vertical" | "progresschunk" | "progresschunk-vertical" | "radio-container" | "radio-label" | "radiomenuitem" | "range-thumb" | "resizer" | "resizerpanel" | "scale-horizontal" | "scale-vertical" | "scalethumb-horizontal" | "scalethumb-vertical" | "scalethumbend" | "scalethumbstart" | "scalethumbtick" | "scrollbarbutton-down" | "scrollbarbutton-left" | "scrollbarbutton-right" | "scrollbarbutton-up" | "scrollbarthumb-horizontal" | "scrollbarthumb-vertical" | "scrollbartrack-horizontal" | "scrollbartrack-vertical" | "sheet" | "spinner" | "spinner-downbutton" | "spinner-textfield" | "spinner-upbutton" | "splitter" | "statusbar" | "statusbarpanel" | "tab-scroll-arrow-back" | "tab-scroll-arrow-forward" | "tabpanels" | "textfield-multiline" | "toolbarbutton" | "toolbarbutton-dropdown" | "toolbargripper" | "toolbox" | "treeheader" | "treeheadercell" | "treeheadersortarrow" | "treeline" | "treetwisty" | "treetwistyopen" | "treeview" | undefined; + MozBackfaceVisibility?: "hidden" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "visible" | undefined; + MozBorderBottomColors?: "none" | (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + MozBorderEndColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + MozBorderEndStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + MozBorderEndWidth?: string | number | undefined; + MozBorderLeftColors?: "none" | (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + MozBorderRightColors?: "none" | (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + MozBorderStartColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + MozBorderStartStyle?: "hidden" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + MozBorderTopColors?: "none" | (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + MozBoxSizing?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | undefined; + MozColumnCount?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + MozColumnFill?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "balance" | "balance-all" | undefined; + MozColumnGap?: string | number | (string & {}) | undefined; + MozColumnRuleColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + MozColumnRuleStyle?: "hidden" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + MozColumnRuleWidth?: string | number | (string & {}) | undefined; + MozColumnWidth?: string | number | undefined; + MozContextProperties?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "fill" | "stroke" | "fill-opacity" | "stroke-opacity" | undefined; + MozFontFeatureSettings?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | undefined; + MozFontLanguageOverride?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | undefined; + MozHyphens?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "manual" | undefined; + MozImageRegion?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + MozMarginEnd?: string | number | (string & {}) | undefined; + MozMarginStart?: string | number | (string & {}) | undefined; + MozOrient?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "inline" | "horizontal" | "vertical" | "block" | undefined; + MozOsxFontSmoothing?: string | number | undefined; + MozPaddingEnd?: string | number | (string & {}) | undefined; + MozPaddingStart?: string | number | (string & {}) | undefined; + MozPerspective?: string | number | undefined; + MozPerspectiveOrigin?: string | number | (string & {}) | undefined; + MozStackSizing?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ignore" | "stretch-to-fit" | undefined; + MozTabSize?: string | number | (string & {}) | (number & {}) | undefined; + MozTextBlink?: "blink" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + MozTextSizeAdjust?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + MozTransformOrigin?: string | number | (string & {}) | undefined; + MozTransformStyle?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "flat" | "preserve-3d" | undefined; + MozTransitionDelay?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + MozTransitionDuration?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + MozTransitionProperty?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | undefined; + MozTransitionTimingFunction?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + MozUserFocus?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "select-all" | "normal" | "ignore" | "select-after" | "select-before" | "select-menu" | "select-same" | undefined; + MozUserModify?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "read-only" | "read-write" | "write-only" | undefined; + MozUserSelect?: "none" | "text" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "all" | "contain" | "-moz-none" | "element" | undefined; + MozWindowDragging?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "drag" | "no-drag" | undefined; + MozWindowShadow?: "default" | "menu" | "none" | "tooltip" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "sheet" | undefined; + msAccelerator?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "true" | "false" | undefined; + msAlignSelf?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "center" | "end" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | "self-end" | "self-start" | undefined; + msBlockProgression?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "bt" | "lr" | "rl" | "tb" | undefined; + msContentZoomChaining?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "chained" | undefined; + msContentZoomLimitMax?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msContentZoomLimitMin?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msContentZoomSnapPoints?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msContentZoomSnapType?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "mandatory" | "proximity" | undefined; + msContentZooming?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "zoom" | undefined; + msFilter?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msFlexDirection?: "row" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "column" | "column-reverse" | "row-reverse" | undefined; + msFlexPositive?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + msFlowFrom?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msFlowInto?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msGridColumns?: string | number | (string & {}) | undefined; + msGridRows?: string | number | (string & {}) | undefined; + msHighContrastAdjust?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + msHyphenateLimitChars?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + msHyphenateLimitLines?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "no-limit" | undefined; + msHyphenateLimitZone?: string | number | (string & {}) | undefined; + msHyphens?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "manual" | undefined; + msImeAlign?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "after" | undefined; + msJustifySelf?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "right" | "left" | "center" | "end" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | "self-end" | "self-start" | undefined; + msLineBreak?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "normal" | "strict" | "anywhere" | "loose" | undefined; + msOrder?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + msOverflowStyle?: "none" | "scrollbar" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "-ms-autohiding-scrollbar" | undefined; + msOverflowX?: "hidden" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "-moz-hidden-unscrollable" | "clip" | "scroll" | "visible" | undefined; + msOverflowY?: "hidden" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "-moz-hidden-unscrollable" | "clip" | "scroll" | "visible" | undefined; + msScrollChaining?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "chained" | undefined; + msScrollLimitXMax?: string | number | undefined; + msScrollLimitXMin?: string | number | undefined; + msScrollLimitYMax?: string | number | undefined; + msScrollLimitYMin?: string | number | undefined; + msScrollRails?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "railed" | undefined; + msScrollSnapPointsX?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msScrollSnapPointsY?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msScrollSnapType?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "mandatory" | "proximity" | undefined; + msScrollTranslation?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "vertical-to-horizontal" | undefined; + msScrollbar3dlightColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + msScrollbarArrowColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + msScrollbarBaseColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + msScrollbarDarkshadowColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + msScrollbarFaceColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + msScrollbarHighlightColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + msScrollbarShadowColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + msTextAutospace?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ideograph-alpha" | "ideograph-numeric" | "ideograph-parenthesis" | "ideograph-space" | undefined; + msTextCombineHorizontal?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | undefined; + msTextOverflow?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "clip" | "ellipsis" | undefined; + msTouchAction?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "-ms-manipulation" | "-ms-none" | "-ms-pinch-zoom" | "manipulation" | "pan-down" | "pan-left" | "pan-right" | "pan-up" | "pan-x" | "pan-y" | "pinch-zoom" | undefined; + msTouchSelect?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "grippers" | undefined; + msTransform?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msTransformOrigin?: string | number | (string & {}) | undefined; + msTransitionDelay?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msTransitionDuration?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msTransitionProperty?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | undefined; + msTransitionTimingFunction?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + msUserSelect?: "none" | "text" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "element" | undefined; + msWordBreak?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "break-word" | "break-all" | "keep-all" | undefined; + msWrapFlow?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "both" | "clear" | "end" | "maximum" | undefined; + msWrapMargin?: string | number | undefined; + msWrapThrough?: "wrap" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msWritingMode?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "horizontal-tb" | "sideways-lr" | "sideways-rl" | "vertical-lr" | "vertical-rl" | undefined; + WebkitAlignContent?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "space-around" | "space-between" | "space-evenly" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | undefined; + WebkitAlignItems?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | "self-end" | "self-start" | undefined; + WebkitAlignSelf?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "center" | "end" | "stretch" | "flex-end" | "flex-start" | "baseline" | "normal" | "self-end" | "self-start" | undefined; + WebkitAnimationDelay?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitAnimationDirection?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "alternate" | "alternate-reverse" | "reverse" | undefined; + WebkitAnimationDuration?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitAnimationFillMode?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "both" | "backwards" | "forwards" | undefined; + WebkitAnimationIterationCount?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "infinite" | undefined; + WebkitAnimationName?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitAnimationPlayState?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "paused" | "running" | undefined; + WebkitAnimationTimingFunction?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + WebkitAppearance?: "button" | "checkbox" | "listbox" | "listitem" | "none" | "radio" | "meter" | "textarea" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "menulist" | "progress-bar" | "push-button" | "searchfield" | "slider-horizontal" | "square-button" | "menulist-button" | "textfield" | "button-bevel" | "caret" | "menulist-text" | "menulist-textfield" | "-apple-pay-button" | "default-button" | "inner-spin-button" | "media-controls-background" | "media-controls-fullscreen-background" | "media-current-time-display" | "media-enter-fullscreen-button" | "media-exit-fullscreen-button" | "media-fullscreen-button" | "media-mute-button" | "media-overlay-play-button" | "media-play-button" | "media-seek-back-button" | "media-seek-forward-button" | "media-slider" | "media-sliderthumb" | "media-time-remaining-display" | "media-toggle-closed-captions-button" | "media-volume-slider" | "media-volume-slider-container" | "media-volume-sliderthumb" | "progress-bar-value" | "searchfield-cancel-button" | "searchfield-decoration" | "searchfield-results-button" | "searchfield-results-decoration" | "slider-vertical" | "sliderthumb-horizontal" | "sliderthumb-vertical" | undefined; + WebkitBackdropFilter?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitBackfaceVisibility?: "hidden" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "visible" | undefined; + WebkitBackgroundClip?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | undefined; + WebkitBackgroundOrigin?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | undefined; + WebkitBackgroundSize?: string | number | (string & {}) | undefined; + WebkitBorderBeforeColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + WebkitBorderBeforeStyle?: "hidden" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + WebkitBorderBeforeWidth?: string | number | (string & {}) | undefined; + WebkitBorderBottomLeftRadius?: string | number | (string & {}) | undefined; + WebkitBorderBottomRightRadius?: string | number | (string & {}) | undefined; + WebkitBorderImageSlice?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + WebkitBorderTopLeftRadius?: string | number | (string & {}) | undefined; + WebkitBorderTopRightRadius?: string | number | (string & {}) | undefined; + WebkitBoxDecorationBreak?: "slice" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "clone" | undefined; + WebkitBoxReflect?: string | number | (string & {}) | undefined; + WebkitBoxShadow?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitBoxSizing?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | undefined; + WebkitClipPath?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | "fill-box" | "margin-box" | "stroke-box" | "view-box" | undefined; + WebkitColumnCount?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + WebkitColumnFill?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "balance" | "balance-all" | undefined; + WebkitColumnGap?: string | number | (string & {}) | undefined; + WebkitColumnRuleColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + WebkitColumnRuleStyle?: "hidden" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + WebkitColumnRuleWidth?: string | number | (string & {}) | undefined; + WebkitColumnSpan?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | undefined; + WebkitColumnWidth?: string | number | undefined; + WebkitFilter?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitFlexBasis?: string | number | (string & {}) | undefined; + WebkitFlexDirection?: "row" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "column" | "column-reverse" | "row-reverse" | undefined; + WebkitFlexGrow?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + WebkitFlexShrink?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + WebkitFlexWrap?: "wrap" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "nowrap" | "wrap-reverse" | undefined; + WebkitFontFeatureSettings?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | undefined; + WebkitFontKerning?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "normal" | undefined; + WebkitFontSmoothing?: string | number | undefined; + WebkitFontVariantLigatures?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "common-ligatures" | "contextual" | "discretionary-ligatures" | "historical-ligatures" | "no-common-ligatures" | "no-contextual" | "no-discretionary-ligatures" | "no-historical-ligatures" | undefined; + WebkitHyphens?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "manual" | undefined; + WebkitInitialLetter?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "normal" | undefined; + WebkitJustifyContent?: "start" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "right" | "left" | "center" | "end" | "space-around" | "space-between" | "space-evenly" | "stretch" | "flex-end" | "flex-start" | "normal" | undefined; + WebkitLineBreak?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "normal" | "strict" | "anywhere" | "loose" | undefined; + WebkitLineClamp?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + WebkitMarginEnd?: string | number | (string & {}) | undefined; + WebkitMarginStart?: string | number | (string & {}) | undefined; + WebkitMaskAttachment?: "fixed" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "scroll" | "local" | undefined; + WebkitMaskBoxImageOutset?: string | number | (string & {}) | (number & {}) | undefined; + WebkitMaskBoxImageRepeat?: "repeat" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "stretch" | "space" | undefined; + WebkitMaskBoxImageSlice?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + WebkitMaskBoxImageSource?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitMaskBoxImageWidth?: string | number | (string & {}) | (number & {}) | undefined; + WebkitMaskClip?: "content" | (string & {}) | "text" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border" | "border-box" | "content-box" | "padding-box" | "padding" | undefined; + WebkitMaskComposite?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "copy" | "clear" | "destination-atop" | "destination-in" | "destination-out" | "destination-over" | "source-atop" | "source-in" | "source-out" | "source-over" | "xor" | undefined; + WebkitMaskImage?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitMaskOrigin?: "content" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border" | "border-box" | "content-box" | "padding-box" | "padding" | undefined; + WebkitMaskPosition?: string | number | (string & {}) | undefined; + WebkitMaskPositionX?: string | number | (string & {}) | undefined; + WebkitMaskPositionY?: string | number | (string & {}) | undefined; + WebkitMaskRepeat?: "repeat" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "no-repeat" | "repeat-x" | "repeat-y" | "space" | undefined; + WebkitMaskRepeatX?: "repeat" | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "no-repeat" | "space" | undefined; + WebkitMaskRepeatY?: "repeat" | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "no-repeat" | "space" | undefined; + WebkitMaskSize?: string | number | (string & {}) | undefined; + WebkitMaxInlineSize?: string | number | (string & {}) | undefined; + WebkitOrder?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + WebkitOverflowScrolling?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "touch" | undefined; + WebkitPaddingEnd?: string | number | (string & {}) | undefined; + WebkitPaddingStart?: string | number | (string & {}) | undefined; + WebkitPerspective?: string | number | undefined; + WebkitPerspectiveOrigin?: string | number | (string & {}) | undefined; + WebkitPrintColorAdjust?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "economy" | "exact" | undefined; + WebkitRubyPosition?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "alternate" | "inter-character" | "over" | "under" | undefined; + WebkitScrollSnapType?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "inline" | "both" | "x" | "block" | "y" | undefined; + WebkitShapeMargin?: string | number | (string & {}) | undefined; + WebkitTapHighlightColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + WebkitTextCombine?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | undefined; + WebkitTextDecorationColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + WebkitTextDecorationLine?: "blink" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "grammar-error" | "line-through" | "overline" | "spelling-error" | "underline" | undefined; + WebkitTextDecorationSkip?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "box-decoration" | "edges" | "leading-spaces" | "objects" | "spaces" | "trailing-spaces" | undefined; + WebkitTextDecorationStyle?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "solid" | "wavy" | undefined; + WebkitTextEmphasisColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + WebkitTextEmphasisPosition?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitTextEmphasisStyle?: "open" | "none" | (string & {}) | "filled" | "circle" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dot" | "double-circle" | "sesame" | "triangle" | undefined; + WebkitTextFillColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + WebkitTextOrientation?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "mixed" | "sideways" | "upright" | undefined; + WebkitTextSizeAdjust?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + WebkitTextStrokeColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + WebkitTextStrokeWidth?: string | number | undefined; + WebkitTextUnderlinePosition?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "right" | "left" | "from-font" | "under" | undefined; + WebkitTouchCallout?: "default" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitTransform?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitTransformOrigin?: string | number | (string & {}) | undefined; + WebkitTransformStyle?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "flat" | "preserve-3d" | undefined; + WebkitTransitionDelay?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitTransitionDuration?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitTransitionProperty?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | undefined; + WebkitTransitionTimingFunction?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + WebkitUserModify?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "read-only" | "read-write" | "read-write-plaintext-only" | undefined; + WebkitUserSelect?: "none" | "text" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "all" | "contain" | "-moz-none" | "element" | undefined; + WebkitWritingMode?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "horizontal-tb" | "sideways-lr" | "sideways-rl" | "vertical-lr" | "vertical-rl" | undefined; + MozAnimation?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "both" | "normal" | "alternate" | "alternate-reverse" | "reverse" | "backwards" | "forwards" | "infinite" | "paused" | "running" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + MozBorderImage?: "repeat" | "none" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "stretch" | "space" | undefined; + MozColumnRule?: string | number | (string & {}) | undefined; + MozColumns?: string | number | (string & {}) | (number & {}) | undefined; + MozTransition?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + msContentZoomLimit?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msContentZoomSnap?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "mandatory" | "proximity" | undefined; + msFlex?: string | number | (string & {}) | (number & {}) | undefined; + msScrollLimit?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msScrollSnapX?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msScrollSnapY?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + msTransition?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + WebkitAnimation?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "both" | "normal" | "alternate" | "alternate-reverse" | "reverse" | "backwards" | "forwards" | "infinite" | "paused" | "running" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + WebkitBorderBefore?: string | number | (string & {}) | undefined; + WebkitBorderImage?: "repeat" | "none" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "stretch" | "space" | undefined; + WebkitBorderRadius?: string | number | (string & {}) | undefined; + WebkitColumnRule?: string | number | (string & {}) | undefined; + WebkitColumns?: string | number | (string & {}) | (number & {}) | undefined; + WebkitFlex?: string | number | (string & {}) | (number & {}) | undefined; + WebkitFlexFlow?: "wrap" | "row" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "column" | "column-reverse" | "row-reverse" | "nowrap" | "wrap-reverse" | undefined; + WebkitMask?: string | number | (string & {}) | undefined; + WebkitMaskBoxImage?: "repeat" | "none" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "stretch" | "space" | "alpha" | "luminance" | undefined; + WebkitTextEmphasis?: "open" | "none" | (string & {}) | "filled" | "white" | "circle" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | "dot" | "double-circle" | "sesame" | "triangle" | undefined; + WebkitTextStroke?: string | number | (string & {}) | undefined; + WebkitTransition?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + azimuth?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "right" | "left" | "center" | "behind" | "center-left" | "center-right" | "far-left" | "far-right" | "left-side" | "leftwards" | "right-side" | "rightwards" | undefined; + boxAlign?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "stretch" | "baseline" | undefined; + boxDirection?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "reverse" | undefined; + boxFlex?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + boxFlexGroup?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + boxLines?: "multiple" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "single" | undefined; + boxOrdinalGroup?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + boxOrient?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "horizontal" | "vertical" | "block-axis" | "inline-axis" | undefined; + boxPack?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "justify" | undefined; + clip?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | undefined; + fontVariantAlternates?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "historical-forms" | undefined; + gridColumnGap?: string | number | (string & {}) | undefined; + gridGap?: string | number | (string & {}) | undefined; + gridRowGap?: string | number | (string & {}) | undefined; + imeMode?: "disabled" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "normal" | "active" | "inactive" | undefined; + offsetBlock?: string | number | (string & {}) | undefined; + offsetBlockEnd?: string | number | (string & {}) | undefined; + offsetBlockStart?: string | number | (string & {}) | undefined; + offsetInline?: string | number | (string & {}) | undefined; + offsetInlineEnd?: string | number | (string & {}) | undefined; + offsetInlineStart?: string | number | (string & {}) | undefined; + scrollSnapCoordinate?: string | number | (string & {}) | undefined; + scrollSnapDestination?: string | number | (string & {}) | undefined; + scrollSnapPointsX?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + scrollSnapPointsY?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + scrollSnapTypeX?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "mandatory" | "proximity" | undefined; + scrollSnapTypeY?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "mandatory" | "proximity" | undefined; + scrollbarTrackColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + KhtmlBoxAlign?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "stretch" | "baseline" | undefined; + KhtmlBoxDirection?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "reverse" | undefined; + KhtmlBoxFlex?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + KhtmlBoxFlexGroup?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + KhtmlBoxLines?: "multiple" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "single" | undefined; + KhtmlBoxOrdinalGroup?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + KhtmlBoxOrient?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "horizontal" | "vertical" | "block-axis" | "inline-axis" | undefined; + KhtmlBoxPack?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "justify" | undefined; + KhtmlLineBreak?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "normal" | "strict" | "anywhere" | "loose" | undefined; + KhtmlOpacity?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + KhtmlUserSelect?: "none" | "text" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "all" | "contain" | "-moz-none" | "element" | undefined; + MozBackgroundClip?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | undefined; + MozBackgroundInlinePolicy?: "slice" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "clone" | undefined; + MozBackgroundOrigin?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | undefined; + MozBackgroundSize?: string | number | (string & {}) | undefined; + MozBinding?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + MozBorderRadius?: string | number | (string & {}) | undefined; + MozBorderRadiusBottomleft?: string | number | (string & {}) | undefined; + MozBorderRadiusBottomright?: string | number | (string & {}) | undefined; + MozBorderRadiusTopleft?: string | number | (string & {}) | undefined; + MozBorderRadiusTopright?: string | number | (string & {}) | undefined; + MozBoxAlign?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "stretch" | "baseline" | undefined; + MozBoxDirection?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "reverse" | undefined; + MozBoxFlex?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + MozBoxOrdinalGroup?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + MozBoxOrient?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "horizontal" | "vertical" | "block-axis" | "inline-axis" | undefined; + MozBoxPack?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "justify" | undefined; + MozBoxShadow?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + MozFloatEdge?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "border-box" | "content-box" | "padding-box" | "margin-box" | undefined; + MozForceBrokenImageIcon?: 0 | 1 | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + MozOpacity?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + MozOutline?: string | number | (string & {}) | undefined; + MozOutlineColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | "invert" | undefined; + MozOutlineRadius?: string | number | (string & {}) | undefined; + MozOutlineRadiusBottomleft?: string | number | (string & {}) | undefined; + MozOutlineRadiusBottomright?: string | number | (string & {}) | undefined; + MozOutlineRadiusTopleft?: string | number | (string & {}) | undefined; + MozOutlineRadiusTopright?: string | number | (string & {}) | undefined; + MozOutlineStyle?: "hidden" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "dashed" | "dotted" | "double" | "groove" | "inset" | "outset" | "ridge" | "solid" | undefined; + MozOutlineWidth?: string | number | undefined; + MozTextAlignLast?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "right" | "left" | "center" | "end" | "justify" | undefined; + MozTextDecorationColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + MozTextDecorationLine?: "blink" | "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "grammar-error" | "line-through" | "overline" | "spelling-error" | "underline" | undefined; + MozTextDecorationStyle?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "dashed" | "dotted" | "double" | "solid" | "wavy" | undefined; + MozUserInput?: "disabled" | "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "enabled" | undefined; + msImeMode?: "disabled" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "normal" | "active" | "inactive" | undefined; + msScrollbarTrackColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | undefined; + OAnimation?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "both" | "normal" | "alternate" | "alternate-reverse" | "reverse" | "backwards" | "forwards" | "infinite" | "paused" | "running" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + OAnimationDelay?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + OAnimationDirection?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "alternate" | "alternate-reverse" | "reverse" | undefined; + OAnimationDuration?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + OAnimationFillMode?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "both" | "backwards" | "forwards" | undefined; + OAnimationIterationCount?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "infinite" | undefined; + OAnimationName?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + OAnimationPlayState?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "paused" | "running" | undefined; + OAnimationTimingFunction?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + OBackgroundSize?: string | number | (string & {}) | undefined; + OBorderImage?: "repeat" | "none" | (string & {}) | "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | "stretch" | "space" | undefined; + OObjectFit?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "contain" | "cover" | "fill" | "scale-down" | undefined; + OObjectPosition?: string | number | (string & {}) | undefined; + OTabSize?: string | number | (string & {}) | (number & {}) | undefined; + OTextOverflow?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "clip" | "ellipsis" | undefined; + OTransform?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + OTransformOrigin?: string | number | (string & {}) | undefined; + OTransition?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + OTransitionDelay?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + OTransitionDuration?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + OTransitionProperty?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "all" | undefined; + OTransitionTimingFunction?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "ease" | "ease-in" | "ease-in-out" | "ease-out" | "step-end" | "step-start" | "linear" | undefined; + WebkitBoxAlign?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "stretch" | "baseline" | undefined; + WebkitBoxDirection?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "normal" | "reverse" | undefined; + WebkitBoxFlex?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + WebkitBoxFlexGroup?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + WebkitBoxLines?: "multiple" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "single" | undefined; + WebkitBoxOrdinalGroup?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + WebkitBoxOrient?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "horizontal" | "vertical" | "block-axis" | "inline-axis" | undefined; + WebkitBoxPack?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "center" | "end" | "justify" | undefined; + WebkitScrollSnapPointsX?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + WebkitScrollSnapPointsY?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + alignmentBaseline?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "baseline" | "middle" | "after-edge" | "alphabetic" | "before-edge" | "central" | "hanging" | "ideographic" | "mathematical" | "text-after-edge" | "text-before-edge" | undefined; + baselineShift?: string | number | (string & {}) | undefined; + clipRule?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "evenodd" | "nonzero" | undefined; + colorInterpolation?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "linearRGB" | "sRGB" | undefined; + colorRendering?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "optimizeSpeed" | "optimizeQuality" | undefined; + dominantBaseline?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "middle" | "alphabetic" | "central" | "hanging" | "ideographic" | "mathematical" | "text-after-edge" | "text-before-edge" | "no-change" | "reset-size" | "use-script" | undefined; + fill?: "none" | (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | "child" | "context-fill" | "context-stroke" | undefined; + fillOpacity?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + fillRule?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "evenodd" | "nonzero" | undefined; + floodColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | "currentColor" | undefined; + floodOpacity?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + glyphOrientationVertical?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | (number & {}) | undefined; + lightingColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | "currentColor" | undefined; + marker?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + markerEnd?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + markerMid?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + markerStart?: "none" | (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | undefined; + shapeRendering?: "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "auto" | "geometricPrecision" | "optimizeSpeed" | "crispEdges" | undefined; + stopColor?: (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | "currentColor" | undefined; + stopOpacity?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + stroke?: "none" | (string & {}) | "white" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "transparent" | "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "whitesmoke" | "yellow" | "yellowgreen" | "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonFace" | "ButtonHighlight" | "ButtonShadow" | "ButtonText" | "CaptionText" | "GrayText" | "Highlight" | "HighlightText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText" | "currentcolor" | "child" | "context-fill" | "context-stroke" | undefined; + strokeDasharray?: string | number | (string & {}) | (number & {}) | undefined; + strokeDashoffset?: string | number | (string & {}) | undefined; + strokeLinecap?: "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "square" | "butt" | undefined; + strokeLinejoin?: "round" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "bevel" | "miter" | undefined; + strokeMiterlimit?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + strokeOpacity?: (string & {}) | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | (number & {}) | undefined; + strokeWidth?: string | number | (string & {}) | undefined; + textAnchor?: "start" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "end" | "middle" | undefined; + vectorEffect?: "none" | "-moz-initial" | "inherit" | "initial" | "revert" | "unset" | "non-scaling-stroke" | undefined; + }; + getTriggerElement(ref: React.Ref): JSX.Element; + getPopperChildren({ ref, style, placement, outOfBoundaries }: PopperChildrenProps): React.ReactElement React.ReactElement | null) | (new (props: any) => React.Component)>; + render(): JSX.Element; +} +export default PopperWrapper; diff --git a/dist/core/components/atoms/popperWrapper/index.d.ts b/dist/core/components/atoms/popperWrapper/index.d.ts new file mode 100644 index 0000000000..8179e742e5 --- /dev/null +++ b/dist/core/components/atoms/popperWrapper/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./PopperWrapper"; +export * from "./PopperWrapper"; diff --git a/dist/core/components/atoms/progressBar/ProgressBar.d.ts b/dist/core/components/atoms/progressBar/ProgressBar.d.ts new file mode 100644 index 0000000000..6311a285cc --- /dev/null +++ b/dist/core/components/atoms/progressBar/ProgressBar.d.ts @@ -0,0 +1,16 @@ +import { BaseProps } from "../../../utils/types"; +export declare type ProgressBarSize = 'small' | 'regular'; +export interface ProgressBarProps extends BaseProps { + value: number; + max: number; + size: ProgressBarSize; +} +export declare const ProgressBar: { + (props: ProgressBarProps): JSX.Element; + displayName: string; + defaultProps: { + max: number; + size: string; + }; +}; +export default ProgressBar; diff --git a/dist/core/components/atoms/progressBar/index.d.ts b/dist/core/components/atoms/progressBar/index.d.ts new file mode 100644 index 0000000000..4acf7136d5 --- /dev/null +++ b/dist/core/components/atoms/progressBar/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./ProgressBar"; +export * from "./ProgressBar"; diff --git a/dist/core/components/atoms/progressRing/ProgressRing.d.ts b/dist/core/components/atoms/progressRing/ProgressRing.d.ts new file mode 100644 index 0000000000..61113c4820 --- /dev/null +++ b/dist/core/components/atoms/progressRing/ProgressRing.d.ts @@ -0,0 +1,16 @@ +import { BaseProps } from "../../../utils/types"; +export declare type ProgressRingSize = 'small' | 'regular'; +export interface ProgressRingProps extends BaseProps { + size: ProgressRingSize; + value: number; + max: number; +} +export declare const ProgressRing: { + (props: ProgressRingProps): JSX.Element; + displayName: string; + defaultProps: { + size: string; + max: number; + }; +}; +export default ProgressRing; diff --git a/dist/core/components/atoms/progressRing/index.d.ts b/dist/core/components/atoms/progressRing/index.d.ts new file mode 100644 index 0000000000..212fa5ffa9 --- /dev/null +++ b/dist/core/components/atoms/progressRing/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./ProgressRing"; +export * from "./ProgressRing"; diff --git a/dist/core/components/atoms/radio/Radio.d.ts b/dist/core/components/atoms/radio/Radio.d.ts new file mode 100644 index 0000000000..e37773aba2 --- /dev/null +++ b/dist/core/components/atoms/radio/Radio.d.ts @@ -0,0 +1,18 @@ +import * as React from 'react'; +import { BaseProps, OmitNativeProps } from "../../../utils/types"; +import { ChangeEvent } from "../../../common.type"; +export declare type RadioSize = 'regular' | 'tiny'; +export interface RadioProps extends BaseProps, OmitNativeProps { + size?: RadioSize; + disabled?: boolean; + label?: string; + helpText?: string; + name: string; + value: string; + defaultChecked?: boolean; + checked?: boolean; + error?: boolean; + onChange?: (event: ChangeEvent) => void; +} +export declare const Radio: React.ForwardRefExoticComponent>; +export default Radio; diff --git a/dist/core/components/atoms/radio/index.d.ts b/dist/core/components/atoms/radio/index.d.ts new file mode 100644 index 0000000000..4e66ae49ad --- /dev/null +++ b/dist/core/components/atoms/radio/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Radio"; +export * from "./Radio"; diff --git a/dist/core/components/atoms/rangeSlider/RangeSlider.d.ts b/dist/core/components/atoms/rangeSlider/RangeSlider.d.ts new file mode 100644 index 0000000000..e28444ea6c --- /dev/null +++ b/dist/core/components/atoms/rangeSlider/RangeSlider.d.ts @@ -0,0 +1,21 @@ +import { MultiSliderProps } from "../multiSlider"; +import { NumberRange } from "../../../common.type"; +export interface RangeSliderProps extends MultiSliderProps { + defaultValue: NumberRange; + value?: NumberRange; + onChange?: (value: NumberRange) => void; + onRelease?: (value: NumberRange) => void; +} +export declare const RangeSlider: { + (props: RangeSliderProps): JSX.Element; + displayName: string; + defaultProps: { + defaultValue: number[]; + labelStepSize: number; + max: number; + min: number; + stepSize: number; + labelRenderer: boolean; + }; +}; +export default RangeSlider; diff --git a/dist/core/components/atoms/rangeSlider/index.d.ts b/dist/core/components/atoms/rangeSlider/index.d.ts new file mode 100644 index 0000000000..0da5831bdc --- /dev/null +++ b/dist/core/components/atoms/rangeSlider/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./RangeSlider"; +export * from "./RangeSlider"; diff --git a/dist/core/components/atoms/row/Row.d.ts b/dist/core/components/atoms/row/Row.d.ts new file mode 100644 index 0000000000..f33aa78d5e --- /dev/null +++ b/dist/core/components/atoms/row/Row.d.ts @@ -0,0 +1,5 @@ +import * as React from 'react'; +import { BaseProps, BaseHtmlProps } from "../../../utils/types"; +export declare type RowProps = BaseProps & BaseHtmlProps; +export declare const Row: React.ForwardRefExoticComponent, "accept" | "acceptCharset" | "action" | "allowFullScreen" | "allowTransparency" | "alt" | "as" | "async" | "autoComplete" | "autoFocus" | "autoPlay" | "capture" | "cellPadding" | "cellSpacing" | "charSet" | "challenge" | "checked" | "cite" | "classID" | "cols" | "colSpan" | "content" | "controls" | "coords" | "crossOrigin" | "data" | "dateTime" | "default" | "defer" | "disabled" | "download" | "encType" | "form" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "frameBorder" | "headers" | "height" | "high" | "href" | "hrefLang" | "htmlFor" | "httpEquiv" | "integrity" | "keyParams" | "keyType" | "kind" | "label" | "list" | "loop" | "low" | "manifest" | "marginHeight" | "marginWidth" | "max" | "maxLength" | "media" | "mediaGroup" | "method" | "min" | "minLength" | "multiple" | "muted" | "name" | "nonce" | "noValidate" | "open" | "optimum" | "pattern" | "placeholder" | "playsInline" | "poster" | "preload" | "readOnly" | "rel" | "required" | "reversed" | "rows" | "rowSpan" | "sandbox" | "scope" | "scoped" | "scrolling" | "seamless" | "selected" | "shape" | "sizes" | "span" | "src" | "srcDoc" | "srcLang" | "srcSet" | "start" | "step" | "summary" | "target" | "type" | "useMap" | "value" | "width" | "wmode" | "wrap" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "slot" | "spellCheck" | "style" | "tabIndex" | "title" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "css" | "key"> & React.RefAttributes>; +export default Row; diff --git a/dist/core/components/atoms/row/index.d.ts b/dist/core/components/atoms/row/index.d.ts new file mode 100644 index 0000000000..d212463ea3 --- /dev/null +++ b/dist/core/components/atoms/row/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Row"; +export * from "./Row"; diff --git a/dist/core/components/atoms/selectionCard/SelectionCard.d.ts b/dist/core/components/atoms/selectionCard/SelectionCard.d.ts new file mode 100644 index 0000000000..bf5ad1d7e7 --- /dev/null +++ b/dist/core/components/atoms/selectionCard/SelectionCard.d.ts @@ -0,0 +1,23 @@ +import * as React from 'react'; +import { BaseProps, BaseHtmlProps } from "../../../utils/types"; +import { useMultiSelect, useSingleSelect } from "./hooks"; +declare type ClickEventType = React.MouseEvent | React.KeyboardEvent; +export interface SelectionCardProps extends BaseProps, BaseHtmlProps { + children: React.ReactNode; + id: string; + cardValue?: object; + disabled?: boolean; + onClick?: (event: ClickEventType, id?: string, cardValue?: object) => void; + overlayZIndex?: number; + selected?: boolean; +} +export declare const SelectionCard: { + (props: SelectionCardProps): JSX.Element; + defaultProps: { + disabled: boolean; + overlayZIndex: number; + }; + useMultiSelect: typeof useMultiSelect; + useSingleSelect: typeof useSingleSelect; +}; +export default SelectionCard; diff --git a/dist/core/components/atoms/selectionCard/hooks/index.d.ts b/dist/core/components/atoms/selectionCard/hooks/index.d.ts new file mode 100644 index 0000000000..4e99256391 --- /dev/null +++ b/dist/core/components/atoms/selectionCard/hooks/index.d.ts @@ -0,0 +1,2 @@ +export * from "./useMultiSelect"; +export * from "./useSingleSelect"; diff --git a/dist/core/components/atoms/selectionCard/hooks/useMultiSelect.d.ts b/dist/core/components/atoms/selectionCard/hooks/useMultiSelect.d.ts new file mode 100644 index 0000000000..22658c27fe --- /dev/null +++ b/dist/core/components/atoms/selectionCard/hooks/useMultiSelect.d.ts @@ -0,0 +1,6 @@ +export declare function useMultiSelect(): { + selectedCardIds: string[]; + selectedCardValues: Map; + isCardSelected: (id: string) => boolean; + updateCardSelection: (id: string, value?: object | undefined) => void; +}; diff --git a/dist/core/components/atoms/selectionCard/hooks/useSingleSelect.d.ts b/dist/core/components/atoms/selectionCard/hooks/useSingleSelect.d.ts new file mode 100644 index 0000000000..5056061333 --- /dev/null +++ b/dist/core/components/atoms/selectionCard/hooks/useSingleSelect.d.ts @@ -0,0 +1,6 @@ +export declare function useSingleSelect(): { + selectedCardIds: string[]; + selectedCardValues: object[]; + isCardSelected: (id: string) => boolean; + updateCardSelection: (id: string, value?: object | undefined) => void; +}; diff --git a/dist/core/components/atoms/selectionCard/index.d.ts b/dist/core/components/atoms/selectionCard/index.d.ts new file mode 100644 index 0000000000..86452a1013 --- /dev/null +++ b/dist/core/components/atoms/selectionCard/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./SelectionCard"; +export * from "./SelectionCard"; diff --git a/dist/core/components/atoms/slider/Slider.d.ts b/dist/core/components/atoms/slider/Slider.d.ts new file mode 100644 index 0000000000..ef22df7a5c --- /dev/null +++ b/dist/core/components/atoms/slider/Slider.d.ts @@ -0,0 +1,20 @@ +import { MultiSliderProps } from "../multiSlider"; +export interface SliderProps extends MultiSliderProps { + defaultValue: number; + value?: number; + onChange?: (value: number) => void; + onRelease?: (value: number) => void; +} +export declare const Slider: { + (props: SliderProps): JSX.Element; + displayName: string; + defaultProps: { + defaultValue: number; + labelStepSize: number; + max: number; + min: number; + stepSize: number; + labelRenderer: boolean; + }; +}; +export default Slider; diff --git a/dist/core/components/atoms/slider/index.d.ts b/dist/core/components/atoms/slider/index.d.ts new file mode 100644 index 0000000000..a75d081a12 --- /dev/null +++ b/dist/core/components/atoms/slider/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Slider"; +export * from "./Slider"; diff --git a/dist/core/components/atoms/spinner/Spinner.d.ts b/dist/core/components/atoms/spinner/Spinner.d.ts new file mode 100644 index 0000000000..6e791bdc14 --- /dev/null +++ b/dist/core/components/atoms/spinner/Spinner.d.ts @@ -0,0 +1,16 @@ +import { BaseProps } from "../../../utils/types"; +export declare type SpinnerAppearance = 'primary' | 'secondary' | 'white'; +export declare type SpinnerSize = 'small' | 'medium' | 'large'; +export interface SpinnerProps extends BaseProps { + appearance: SpinnerAppearance; + size: SpinnerSize; +} +export declare const Spinner: { + (props: SpinnerProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + size: string; + }; +}; +export default Spinner; diff --git a/dist/core/components/atoms/spinner/index.d.ts b/dist/core/components/atoms/spinner/index.d.ts new file mode 100644 index 0000000000..cba4366ae4 --- /dev/null +++ b/dist/core/components/atoms/spinner/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Spinner"; +export * from "./Spinner"; diff --git a/dist/core/components/atoms/statusHint/StatusHint.d.ts b/dist/core/components/atoms/statusHint/StatusHint.d.ts new file mode 100644 index 0000000000..ae49b26cb1 --- /dev/null +++ b/dist/core/components/atoms/statusHint/StatusHint.d.ts @@ -0,0 +1,19 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { MessageAppearance } from "../../../common.type"; +export interface StatusHintProps extends BaseProps { + children: React.ReactText; + appearance: MessageAppearance; + truncateLabel?: boolean; + onClick?: (e: React.MouseEvent) => void; + onMouseEnter?: (e: React.MouseEvent) => void; + onMouseLeave?: (e: React.MouseEvent) => void; +} +export declare const StatusHint: { + (props: StatusHintProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + }; +}; +export default StatusHint; diff --git a/dist/core/components/atoms/statusHint/index.d.ts b/dist/core/components/atoms/statusHint/index.d.ts new file mode 100644 index 0000000000..0c10e419f1 --- /dev/null +++ b/dist/core/components/atoms/statusHint/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./StatusHint"; +export * from "./StatusHint"; diff --git a/dist/core/components/atoms/subheading/Subheading.d.ts b/dist/core/components/atoms/subheading/Subheading.d.ts new file mode 100644 index 0000000000..e5ed475cae --- /dev/null +++ b/dist/core/components/atoms/subheading/Subheading.d.ts @@ -0,0 +1,16 @@ +import * as React from 'react'; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +import { HeadingAppearance, TextColor } from "../../../common.type"; +export interface SubheadingProps extends BaseProps, BaseHtmlProps { + children: React.ReactText; + appearance: HeadingAppearance; + color?: TextColor; +} +export declare const Subheading: { + (props: SubheadingProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + }; +}; +export default Subheading; diff --git a/dist/core/components/atoms/subheading/index.d.ts b/dist/core/components/atoms/subheading/index.d.ts new file mode 100644 index 0000000000..91859546af --- /dev/null +++ b/dist/core/components/atoms/subheading/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Subheading"; +export * from "./Subheading"; diff --git a/dist/core/components/atoms/switchInput/Switch.d.ts b/dist/core/components/atoms/switchInput/Switch.d.ts new file mode 100644 index 0000000000..0bed7fb2f2 --- /dev/null +++ b/dist/core/components/atoms/switchInput/Switch.d.ts @@ -0,0 +1,18 @@ +import * as React from 'react'; +import { OmitNativeProps, BaseProps } from "../../../utils/types"; +import { ChangeEvent } from "../../../common.type"; +export declare type SwitchSize = 'regular' | 'tiny' | 'large'; +export declare type SwitchAppearance = 'primary' | 'alert' | 'success' | 'warning'; +declare type KeyboardEvent = React.KeyboardEvent; +export interface SwitchProps extends BaseProps, OmitNativeProps { + size?: SwitchSize; + appearance?: SwitchAppearance; + defaultChecked?: boolean; + checked?: boolean; + disabled?: boolean; + name?: string; + value?: string; + onChange?: (event: ChangeEvent | KeyboardEvent, selected: boolean) => void; +} +export declare const Switch: React.ForwardRefExoticComponent>; +export default Switch; diff --git a/dist/core/components/atoms/switchInput/index.d.ts b/dist/core/components/atoms/switchInput/index.d.ts new file mode 100644 index 0000000000..7d7e231744 --- /dev/null +++ b/dist/core/components/atoms/switchInput/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Switch"; +export * from "./Switch"; diff --git a/dist/core/components/atoms/text/Text.d.ts b/dist/core/components/atoms/text/Text.d.ts new file mode 100644 index 0000000000..ea693210b9 --- /dev/null +++ b/dist/core/components/atoms/text/Text.d.ts @@ -0,0 +1,15 @@ +import * as React from 'react'; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +import { TextColor } from "../../../common.type"; +export declare type TextSize = 'small' | 'regular' | 'large'; +export declare type TextAppearance = 'default' | 'white' | 'destructive' | 'subtle' | 'disabled' | 'success' | 'link'; +export interface TextProps extends BaseProps, BaseHtmlProps { + children: React.ReactText; + weight?: 'strong' | 'medium'; + small?: boolean; + appearance?: TextAppearance; + size?: TextSize; + color?: TextColor; +} +export declare const Text: React.ForwardRefExoticComponent>; +export default Text; diff --git a/dist/core/components/atoms/text/index.d.ts b/dist/core/components/atoms/text/index.d.ts new file mode 100644 index 0000000000..aa0d431121 --- /dev/null +++ b/dist/core/components/atoms/text/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Text"; +export * from "./Text"; diff --git a/dist/core/components/atoms/textarea/Textarea.d.ts b/dist/core/components/atoms/textarea/Textarea.d.ts new file mode 100644 index 0000000000..c0869bca17 --- /dev/null +++ b/dist/core/components/atoms/textarea/Textarea.d.ts @@ -0,0 +1,19 @@ +import * as React from 'react'; +import { BaseHtmlProps, BaseProps } from "../../../utils/types"; +export interface TextareaProps extends BaseProps, BaseHtmlProps { + name?: string; + value?: string; + defaultValue?: string; + placeholder?: string; + rows?: number; + disabled?: boolean; + required?: boolean; + error?: boolean; + resize?: boolean; + onChange?: (e: React.ChangeEvent) => void; + onClick?: (e: React.MouseEvent) => void; + onBlur?: (e: React.FocusEvent) => void; + onFocus?: (e: React.FocusEvent) => void; +} +export declare const Textarea: React.ForwardRefExoticComponent>; +export default Textarea; diff --git a/dist/core/components/atoms/textarea/index.d.ts b/dist/core/components/atoms/textarea/index.d.ts new file mode 100644 index 0000000000..e0ef2a1521 --- /dev/null +++ b/dist/core/components/atoms/textarea/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Textarea"; +export * from "./Textarea"; diff --git a/dist/core/components/atoms/toast/ActionButton.d.ts b/dist/core/components/atoms/toast/ActionButton.d.ts new file mode 100644 index 0000000000..3dbc2cde5d --- /dev/null +++ b/dist/core/components/atoms/toast/ActionButton.d.ts @@ -0,0 +1,15 @@ +import * as React from 'react'; +import { MessageAppearance } from "../../../common.type"; +export interface Props { + appearance: MessageAppearance; + label: string; + onClick?: (e: React.MouseEvent) => void; +} +declare const ActionButton: { + (props: Props): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + }; +}; +export default ActionButton; diff --git a/dist/core/components/atoms/toast/Toast.d.ts b/dist/core/components/atoms/toast/Toast.d.ts new file mode 100644 index 0000000000..5fc4f87edd --- /dev/null +++ b/dist/core/components/atoms/toast/Toast.d.ts @@ -0,0 +1,22 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { MessageAppearance } from "../../../common.type"; +export declare type Action = { + label: string; + onClick: (e: React.MouseEvent) => void; +}; +export interface ToastProps extends BaseProps { + title: string; + appearance: MessageAppearance; + message?: string; + actions?: Action[]; + onClose?: () => void; +} +export declare const Toast: { + (props: ToastProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + }; +}; +export default Toast; diff --git a/dist/core/components/atoms/toast/index.d.ts b/dist/core/components/atoms/toast/index.d.ts new file mode 100644 index 0000000000..821a7a55f5 --- /dev/null +++ b/dist/core/components/atoms/toast/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Toast"; +export * from "./Toast"; diff --git a/dist/core/components/css-utilities/Schema.d.ts b/dist/core/components/css-utilities/Schema.d.ts new file mode 100644 index 0000000000..83af1a5598 --- /dev/null +++ b/dist/core/components/css-utilities/Schema.d.ts @@ -0,0 +1,3 @@ +import { Schema } from "../organisms/grid"; +declare const utilitiesSchema: Schema; +export default utilitiesSchema; diff --git a/dist/core/components/css-utilities/Spacing/Data.d.ts b/dist/core/components/css-utilities/Spacing/Data.d.ts new file mode 100644 index 0000000000..fdc279e65a --- /dev/null +++ b/dist/core/components/css-utilities/Spacing/Data.d.ts @@ -0,0 +1,10 @@ +export declare const sizeData: { + pixel: string; + value: string; + properties: string; +}[]; +export declare const classData: { + pixel: string; + marginClasses: string; + paddingClasses: string; +}[]; diff --git a/dist/core/components/css-utilities/Spacing/Schema.d.ts b/dist/core/components/css-utilities/Spacing/Schema.d.ts new file mode 100644 index 0000000000..95ace89cca --- /dev/null +++ b/dist/core/components/css-utilities/Spacing/Schema.d.ts @@ -0,0 +1,3 @@ +import { Schema } from "../../organisms/grid"; +export declare const classSchema: Schema; +export declare const sizeSchema: Schema; diff --git a/dist/core/components/css-utilities/designTokens/Data.d.ts b/dist/core/components/css-utilities/designTokens/Data.d.ts new file mode 100644 index 0000000000..ed07554a99 --- /dev/null +++ b/dist/core/components/css-utilities/designTokens/Data.d.ts @@ -0,0 +1,57 @@ +export declare const tokenColors: ({ + token: string; + value: string; +}[] | { + token: string; + value: string; + setBgColor: boolean; +}[])[]; +export declare const spacingData: { + token: string; + value: string; +}[]; +export declare const textColors: ({ + token: string; + value: string; + setBgColor?: undefined; +} | { + token: string; + value: string; + setBgColor: boolean; +})[]; +export declare const fontSize: { + token: string; + value: string; +}[]; +export declare const fontWeight: { + token: string; + value: string; +}[]; +export declare const fontHeight: { + token: string; + value: string; +}[]; +export declare const borderData: { + token: string; + value: string; +}[]; +export declare const shadowData: { + token: string; + value: string; +}[]; +export declare const gridBreakpointData: { + token: string; + value: string; +}[]; +export declare const transitionsCurveData: { + token: string; + value: string; +}[]; +export declare const transitionsDurationData: { + token: string; + value: string; +}[]; +export declare const opacityData: { + token: string; + value: string; +}[]; diff --git a/dist/core/components/css-utilities/designTokens/Schema.d.ts b/dist/core/components/css-utilities/designTokens/Schema.d.ts new file mode 100644 index 0000000000..db45eccb06 --- /dev/null +++ b/dist/core/components/css-utilities/designTokens/Schema.d.ts @@ -0,0 +1,17 @@ +import { Schema } from "../../organisms/grid"; +export declare const spaceSchema: Schema; +export declare const getSchema: (property: string, text: string, classnames?: string | undefined, css?: object | undefined) => ({ + name: string; + displayName: string; + width: string; + resizable: boolean; + sorting: boolean; + cellRenderer: (props: any) => JSX.Element; +} | { + name: string; + displayName: string; + width: string; + resizable: boolean; + sorting: boolean; + cellRenderer?: undefined; +})[]; diff --git a/dist/core/components/css-utilities/designTokens/Utilities.d.ts b/dist/core/components/css-utilities/designTokens/Utilities.d.ts new file mode 100644 index 0000000000..169d1b6cb8 --- /dev/null +++ b/dist/core/components/css-utilities/designTokens/Utilities.d.ts @@ -0,0 +1 @@ +export declare function giveBgColor(htmlCollection: HTMLCollection): void; diff --git a/dist/core/components/molecules/chatMessage/Box.d.ts b/dist/core/components/molecules/chatMessage/Box.d.ts new file mode 100644 index 0000000000..af2e2b79cb --- /dev/null +++ b/dist/core/components/molecules/chatMessage/Box.d.ts @@ -0,0 +1,16 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { SharedProps } from "./ChatMessage"; +export interface BoxProps extends BaseProps { + onClick?: (e: React.MouseEvent) => void; +} +export interface BoxBaseProps { + withStatus?: boolean; + children: React.ReactNode; +} +export declare type InternalBoxProps = BoxProps & BoxBaseProps & SharedProps; +export declare const Box: { + (props: InternalBoxProps): JSX.Element; + displayName: string; +}; +export default Box; diff --git a/dist/core/components/molecules/chatMessage/ChatMessage.d.ts b/dist/core/components/molecules/chatMessage/ChatMessage.d.ts new file mode 100644 index 0000000000..bf7480f8fb --- /dev/null +++ b/dist/core/components/molecules/chatMessage/ChatMessage.d.ts @@ -0,0 +1,21 @@ +import { BaseProps } from "../../../utils/types"; +import { StatusProps, StatusType } from "./Status"; +import { BoxProps } from "./Box"; +import { MessageTextProps } from "./MessageText"; +export declare type MessageType = 'incoming' | 'outgoing'; +export interface SharedProps { + type: MessageType; + isTyping?: boolean; + statusType?: StatusType; +} +export interface ChatMessageBaseProps extends BaseProps { + type: MessageType; + isTyping?: boolean; + statusOptions?: StatusProps; +} +export declare type ChatMessageProps = ChatMessageBaseProps & BoxProps & MessageTextProps; +export declare const ChatMessage: { + (props: ChatMessageProps): JSX.Element; + displayName: string; +}; +export default ChatMessage; diff --git a/dist/core/components/molecules/chatMessage/MessageText.d.ts b/dist/core/components/molecules/chatMessage/MessageText.d.ts new file mode 100644 index 0000000000..64382c4ce9 --- /dev/null +++ b/dist/core/components/molecules/chatMessage/MessageText.d.ts @@ -0,0 +1,16 @@ +import { BaseProps } from "../../../utils/types"; +import { SharedProps } from "./ChatMessage"; +export interface MessageTextProps extends BaseProps { + text: string; + typingText: string; +} +export declare type InternalTextProps = MessageTextProps & SharedProps; +export declare const MessageText: { + (props: InternalTextProps): JSX.Element; + defaultProps: { + text: string; + typingText: string; + }; + displayName: string; +}; +export default MessageText; diff --git a/dist/core/components/molecules/chatMessage/Status.d.ts b/dist/core/components/molecules/chatMessage/Status.d.ts new file mode 100644 index 0000000000..79f71c59a5 --- /dev/null +++ b/dist/core/components/molecules/chatMessage/Status.d.ts @@ -0,0 +1,14 @@ +import { BaseProps } from "../../../utils/types"; +export declare type StatusType = 'failed' | 'sending' | 'sent' | 'read' | 'urgent'; +export interface StatusProps extends BaseProps { + type: StatusType; + time?: string | number; + readText?: string; + failedText?: string; + sendingText?: string; +} +export declare const Status: { + (props: StatusProps): JSX.Element | null; + displayName: string; +}; +export default Status; diff --git a/dist/core/components/molecules/chatMessage/index.d.ts b/dist/core/components/molecules/chatMessage/index.d.ts new file mode 100644 index 0000000000..3a4b765156 --- /dev/null +++ b/dist/core/components/molecules/chatMessage/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./ChatMessage"; +export * from "./ChatMessage"; diff --git a/dist/core/components/molecules/chipInput/ChipInput.d.ts b/dist/core/components/molecules/chipInput/ChipInput.d.ts new file mode 100644 index 0000000000..321e833943 --- /dev/null +++ b/dist/core/components/molecules/chipInput/ChipInput.d.ts @@ -0,0 +1,34 @@ +import * as React from 'react'; +import { ChipProps } from "../../../index.type"; +import { BaseProps } from "../../../utils/types"; +declare type ChipOptions = { + icon?: ChipProps['icon']; + type?: ChipProps['type']; + iconType?: ChipProps['iconType']; + clearButton?: ChipProps['clearButton']; + onClick?: (value: string, index: number) => void; +}; +export interface ChipInputProps extends BaseProps { + allowDuplicates: boolean; + chipOptions: ChipOptions; + disabled?: boolean; + error?: boolean; + placeholder?: string; + value?: string[]; + defaultValue: string[]; + autoFocus: boolean; + onChange?: (chips: string[]) => void; + onBlur?: (e: React.FocusEvent) => void; + onFocus?: (e: React.FocusEvent) => void; +} +export declare const ChipInput: { + (props: ChipInputProps): JSX.Element; + displayName: string; + defaultProps: { + chipOptions: {}; + defaultValue: never[]; + allowDuplicates: boolean; + autoFocus: boolean; + }; +}; +export default ChipInput; diff --git a/dist/core/components/molecules/chipInput/index.d.ts b/dist/core/components/molecules/chipInput/index.d.ts new file mode 100644 index 0000000000..b71e5ceb4a --- /dev/null +++ b/dist/core/components/molecules/chipInput/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./ChipInput"; +export * from "./ChipInput"; diff --git a/dist/core/components/molecules/dialog/Dialog.d.ts b/dist/core/components/molecules/dialog/Dialog.d.ts new file mode 100644 index 0000000000..b3b4ca7ee5 --- /dev/null +++ b/dist/core/components/molecules/dialog/Dialog.d.ts @@ -0,0 +1,27 @@ +import * as React from 'react'; +import { ModalProps, ModalHeaderProps, ButtonProps } from "../../../index.type"; +import { BaseProps } from "../../../utils/types"; +export interface DialogProps extends BaseProps { + onClose: (event?: Event | React.MouseEvent, reason?: string) => void; + dimension: ModalProps['dimension']; + open: boolean; + heading: ModalHeaderProps['heading']; + title?: string; + description?: string; + primaryButtonLabel: string; + primaryButtonAppearance: ButtonProps['appearance']; + primaryButtonCallback: () => void; + secondaryButtonLabel: string; + secondaryButtonAppearance: ButtonProps['appearance']; + secondaryButtonCallback: () => void; +} +declare const Dialog: { + (props: DialogProps): JSX.Element; + displayName: string; + defaultProps: { + dimension: string; + primaryButtonAppearance: string; + secondaryButtonAppearance: string; + }; +}; +export default Dialog; diff --git a/dist/core/components/molecules/dialog/index.d.ts b/dist/core/components/molecules/dialog/index.d.ts new file mode 100644 index 0000000000..ef5b1b6a84 --- /dev/null +++ b/dist/core/components/molecules/dialog/index.d.ts @@ -0,0 +1,2 @@ +export { default, default as Dialog } from "./Dialog"; +export * from "./Dialog"; diff --git a/dist/core/components/molecules/dropzone/Dropzone.d.ts b/dist/core/components/molecules/dropzone/Dropzone.d.ts new file mode 100644 index 0000000000..3d4f4ec0ac --- /dev/null +++ b/dist/core/components/molecules/dropzone/Dropzone.d.ts @@ -0,0 +1,25 @@ +import * as React from 'react'; +import { DropzoneBaseProps } from "./DropzoneBase"; +import { BaseProps } from "../../../utils/types"; +export declare type DropZoneType = 'standard' | 'compressed' | 'tight'; +export interface DropzoneProps extends BaseProps, DropzoneBaseProps { + formatLabel?: string; + type: DropZoneType; + sizeLabel?: string; + sampleFileLink?: React.ReactNode; +} +export declare const Dropzone: { + (props: DropzoneProps): JSX.Element; + displayName: string; + defaultProps: { + type: string; + disabled: boolean; + getFilesFromEvent: typeof import("./FileSelectorUtils").fromEvent; + maxSize: number; + minSize: number; + multiple: boolean; + preventDropOnDocument: boolean; + validator: () => null; + }; +}; +export default Dropzone; diff --git a/dist/core/components/molecules/dropzone/DropzoneActive.d.ts b/dist/core/components/molecules/dropzone/DropzoneActive.d.ts new file mode 100644 index 0000000000..d1db60ec83 --- /dev/null +++ b/dist/core/components/molecules/dropzone/DropzoneActive.d.ts @@ -0,0 +1,9 @@ +import { DropzoneProps } from "../../../index.type"; +export interface DropzoneActiveProps { + type: DropzoneProps['type']; +} +export declare const DropzoneActive: { + (props: DropzoneActiveProps): JSX.Element; + displayName: string; +}; +export default DropzoneActive; diff --git a/dist/core/components/molecules/dropzone/DropzoneBase.d.ts b/dist/core/components/molecules/dropzone/DropzoneBase.d.ts new file mode 100644 index 0000000000..6edc22377e --- /dev/null +++ b/dist/core/components/molecules/dropzone/DropzoneBase.d.ts @@ -0,0 +1,42 @@ +import { FileErrorTypes } from "./FileErrors"; +import { fromEvent } from "./FileSelectorUtils"; +import { BaseProps } from "../../../utils/types"; +interface FileError { + type: FileErrorTypes; + message: string; +} +export interface FileRejection { + file: File; + errors: FileError[]; +} +export interface DropzoneBaseProps extends BaseProps { + accept?: string | string[]; + multiple?: boolean; + preventDropOnDocument?: boolean; + minSize: number; + maxSize: number; + disabled: boolean; + getFilesFromEvent: (event: DragEvent | Event) => any; + onFileDialogCancel?: () => void; + onDragEnter?: (event: DragEvent) => void; + onDragLeave?: (event: DragEvent) => void; + onDragOver?: (event: DragEvent) => void; + onDrop?: (event: DragEvent | Event, acceptedFiles: File[], rejectedFiles: FileRejection[]) => void; + onDropAccepted?: (event: DragEvent | Event, files: File[]) => void; + onDropRejected?: (event: DragEvent | Event, rejectedFiles: FileRejection[]) => void; + validator?: (file: File) => FileError | FileError[]; +} +export declare const DropzoneBase: { + (props: DropzoneBaseProps): any; + displayName: string; + defaultProps: { + disabled: boolean; + getFilesFromEvent: typeof fromEvent; + maxSize: number; + minSize: number; + multiple: boolean; + preventDropOnDocument: boolean; + validator: () => null; + }; +}; +export default DropzoneBase; diff --git a/dist/core/components/molecules/dropzone/DropzoneError.d.ts b/dist/core/components/molecules/dropzone/DropzoneError.d.ts new file mode 100644 index 0000000000..394d0024b9 --- /dev/null +++ b/dist/core/components/molecules/dropzone/DropzoneError.d.ts @@ -0,0 +1,10 @@ +import { DropzoneProps } from "../../../index.type"; +export interface DropzoneErrorProps { + error: string; + type: DropzoneProps['type']; +} +export declare const DropzoneError: { + (props: DropzoneErrorProps): JSX.Element; + displayName: string; +}; +export default DropzoneError; diff --git a/dist/core/components/molecules/dropzone/DropzoneIcon.d.ts b/dist/core/components/molecules/dropzone/DropzoneIcon.d.ts new file mode 100644 index 0000000000..4d8beae112 --- /dev/null +++ b/dist/core/components/molecules/dropzone/DropzoneIcon.d.ts @@ -0,0 +1,7 @@ +declare type SVGIconProps = { + name: 'default' | 'active' | 'error'; + type: 'standard' | 'compressed' | 'tight'; + disabled?: boolean; +}; +declare const DropzoneIcon: (props: SVGIconProps) => JSX.Element; +export default DropzoneIcon; diff --git a/dist/core/components/molecules/dropzone/FileErrors.d.ts b/dist/core/components/molecules/dropzone/FileErrors.d.ts new file mode 100644 index 0000000000..2412e0a5e3 --- /dev/null +++ b/dist/core/components/molecules/dropzone/FileErrors.d.ts @@ -0,0 +1,26 @@ +export declare type FileErrorTypes = 'FILE_INVALID_TYPE' | 'FILE_TOO_LARGE' | 'FILE_TOO_SMALL' | 'TOO_MANY_FILES'; +export declare const fileErrorMessages: { + [key: string]: string; +}; +export declare const getInvalidTypeRejectionErr: (accept?: string | string[] | undefined) => { + type: string; + message: string; +}; +export declare const getTooLargeRejectionErr: (maxSize: number) => { + type: string; + message: string; +}; +export declare const getTooSmallRejectionErr: (minSize: number) => { + type: string; + message: string; +}; +export declare const fileAccepted: (file: File, accept?: string | string[] | undefined) => (boolean | { + type: string; + message: string; +} | null)[]; +export declare const fileMatchSize: (file: File, minSize: number, maxSize: number) => (boolean | { + type: string; + message: string; +})[] | (boolean | null)[]; +export declare const getFileError: (options: any) => "" | "FILE_INVALID_TYPE" | "FILE_TOO_LARGE" | "TOO_MANY_FILES"; +export declare const allFilesAccepted: (options: any) => any; diff --git a/dist/core/components/molecules/dropzone/FileSelectorUtils.d.ts b/dist/core/components/molecules/dropzone/FileSelectorUtils.d.ts new file mode 100644 index 0000000000..3cdbd9f00e --- /dev/null +++ b/dist/core/components/molecules/dropzone/FileSelectorUtils.d.ts @@ -0,0 +1,11 @@ +export declare const COMMON_MIME_TYPES: Map; +interface DOMFile extends Blob { + readonly lastModified: number; + readonly name: string; +} +export interface FileWithPath extends DOMFile { + readonly path?: string; +} +export declare function fromEvent(evt: Event): Promise<(FileWithPath | DataTransferItem)[]>; +export declare function toFileWithPath(file: FileWithPath, path?: string): FileWithPath; +export {}; diff --git a/dist/core/components/molecules/dropzone/index.d.ts b/dist/core/components/molecules/dropzone/index.d.ts new file mode 100644 index 0000000000..8190212338 --- /dev/null +++ b/dist/core/components/molecules/dropzone/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Dropzone"; +export * from "./Dropzone"; diff --git a/dist/core/components/molecules/dropzone/utils.d.ts b/dist/core/components/molecules/dropzone/utils.d.ts new file mode 100644 index 0000000000..5882b3da4c --- /dev/null +++ b/dist/core/components/molecules/dropzone/utils.d.ts @@ -0,0 +1,10 @@ +export declare const accepts: (file: File, acceptedFiles?: string | string[] | undefined) => boolean; +export declare const isPropagationStopped: (event: any) => any; +export declare const isEvtWithFiles: (event: any) => boolean; +export declare const isKindFile: (item: null | Record) => boolean; +export declare const onDocumentDragOver: (event: DragEvent) => void; +export declare const isIeOrEdge: (userAgent?: string) => boolean; +declare type functype = (event: Event, ...args: unknown[]) => void; +export declare const composeEventHandlers: (...fns: functype[]) => (event: Event, ...args: unknown[]) => boolean; +export declare const reducer: (state: any, action: any) => any; +export {}; diff --git a/dist/core/components/molecules/editableChipInput/EditableChipInput.d.ts b/dist/core/components/molecules/editableChipInput/EditableChipInput.d.ts new file mode 100644 index 0000000000..39e7564748 --- /dev/null +++ b/dist/core/components/molecules/editableChipInput/EditableChipInput.d.ts @@ -0,0 +1,17 @@ +import { BaseProps } from "../../../utils/types"; +import { ChipInputProps } from "../../../index.type"; +export interface EditableChipInputProps extends BaseProps { + placeholder: string; + value?: string[]; + onChange?: (chips: string[]) => void; + disableSaveAction?: boolean; + chipInputOptions: Omit; +} +export declare const EditableChipInput: { + (props: EditableChipInputProps): JSX.Element; + defaultProps: { + placeholder: string; + chipInputOptions: {}; + }; +}; +export default EditableChipInput; diff --git a/dist/core/components/molecules/editableChipInput/index.d.ts b/dist/core/components/molecules/editableChipInput/index.d.ts new file mode 100644 index 0000000000..964be093c6 --- /dev/null +++ b/dist/core/components/molecules/editableChipInput/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./EditableChipInput"; +export * from "./EditableChipInput"; diff --git a/dist/core/components/molecules/editableDropdown/EditableDropdown.d.ts b/dist/core/components/molecules/editableDropdown/EditableDropdown.d.ts new file mode 100644 index 0000000000..03f9d1f944 --- /dev/null +++ b/dist/core/components/molecules/editableDropdown/EditableDropdown.d.ts @@ -0,0 +1,18 @@ +import * as React from 'react'; +import { Dropdown } from "../../../index"; +import { DropdownProps } from "../../../index.type"; +import { BaseProps, MakeOptional } from "../../../utils/types"; +declare type DropdownOptions = MakeOptional; +export interface EditableDropdownProps extends BaseProps { + placeholder: string; + dropdownOptions: Omit; + customTriggerRenderer?: (label: string) => React.ReactNode; +} +export declare const EditableDropdown: { + (props: EditableDropdownProps): JSX.Element; + defaultProps: { + placeholder: string; + dropdownOptions: {}; + }; +}; +export default EditableDropdown; diff --git a/dist/core/components/molecules/editableDropdown/index.d.ts b/dist/core/components/molecules/editableDropdown/index.d.ts new file mode 100644 index 0000000000..880a303187 --- /dev/null +++ b/dist/core/components/molecules/editableDropdown/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./EditableDropdown"; +export * from "./EditableDropdown"; diff --git a/dist/core/components/molecules/editableInput/EditableInput.d.ts b/dist/core/components/molecules/editableInput/EditableInput.d.ts new file mode 100644 index 0000000000..6558b5f376 --- /dev/null +++ b/dist/core/components/molecules/editableInput/EditableInput.d.ts @@ -0,0 +1,21 @@ +import { InputProps } from "../../../index.type"; +import { BaseProps } from "../../../utils/types"; +export interface EditableInputProps extends BaseProps { + value?: string; + placeholder?: string; + size: 'tiny' | 'regular'; + disableSaveAction?: boolean; + error?: boolean; + errorMessage?: string; + inputOptions: Omit; + onChange?: (value: string) => void; +} +export declare const EditableInput: { + (props: EditableInputProps): JSX.Element; + defaultProps: { + size: string; + placeholder: string; + inputOptions: {}; + }; +}; +export default EditableInput; diff --git a/dist/core/components/molecules/editableInput/index.d.ts b/dist/core/components/molecules/editableInput/index.d.ts new file mode 100644 index 0000000000..f475621108 --- /dev/null +++ b/dist/core/components/molecules/editableInput/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./EditableInput"; +export * from "./EditableInput"; diff --git a/dist/core/components/molecules/emptyState/EmptyState.d.ts b/dist/core/components/molecules/emptyState/EmptyState.d.ts new file mode 100644 index 0000000000..8cd237a3bc --- /dev/null +++ b/dist/core/components/molecules/emptyState/EmptyState.d.ts @@ -0,0 +1,43 @@ +import * as React from 'react'; +import { HeadingProps, TextProps } from "../../../index.type"; +import { BaseProps } from "../../../utils/types"; +import { TEmptyStateSize } from "../../../common.type"; +export interface EmptyStateProps extends BaseProps { + imageSrc?: string; + title?: string; + description?: string; + image?: React.ReactNode; + size?: TEmptyStateSize; + maxWidth?: number | string; + minWidth?: number | string; + width?: number | string; + children?: React.ReactNode; +} +export declare const imageHeight: { + large: string; + small: string; + standard: string; + compressed: string; + tight: string; +}; +export declare const templateWidth: { + standard: string; + compressed: string; + tight: string; + large: string; + small: string; +}; +export declare const HeadingSize: Record; +export declare const textSize: Record; +export declare const EmptyState: { + (props: EmptyStateProps): JSX.Element; + displayName: string; + Title: (props: import("./EmptyStateTitle").EmptyDescriptionProps) => JSX.Element; + Description: (props: import("./EmptyStateDescription").EmptyDescriptionProps) => JSX.Element; + Image: (props: import("./EmptyStateImage").EmptyImageProps) => JSX.Element; + Actions: (props: import("./EmptyStateActions").EmptyActionProps) => JSX.Element; + defaultProps: { + size: string; + }; +}; +export default EmptyState; diff --git a/dist/core/components/molecules/emptyState/EmptyStateActions.d.ts b/dist/core/components/molecules/emptyState/EmptyStateActions.d.ts new file mode 100644 index 0000000000..1341ae42c4 --- /dev/null +++ b/dist/core/components/molecules/emptyState/EmptyStateActions.d.ts @@ -0,0 +1,7 @@ +import React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface EmptyActionProps extends BaseProps { + children: React.ReactNode; +} +declare const EmptyStateActions: (props: EmptyActionProps) => JSX.Element; +export default EmptyStateActions; diff --git a/dist/core/components/molecules/emptyState/EmptyStateContext.d.ts b/dist/core/components/molecules/emptyState/EmptyStateContext.d.ts new file mode 100644 index 0000000000..6aa115a0e4 --- /dev/null +++ b/dist/core/components/molecules/emptyState/EmptyStateContext.d.ts @@ -0,0 +1,8 @@ +import * as React from 'react'; +import { TEmptyStateSize } from "../../../common.type"; +export declare type ContextProps = { + size?: TEmptyStateSize; + maxWidth?: number | string; +}; +export declare const EmptyStateContext: React.Context; +export default EmptyStateContext; diff --git a/dist/core/components/molecules/emptyState/EmptyStateDescription.d.ts b/dist/core/components/molecules/emptyState/EmptyStateDescription.d.ts new file mode 100644 index 0000000000..2e897fffcf --- /dev/null +++ b/dist/core/components/molecules/emptyState/EmptyStateDescription.d.ts @@ -0,0 +1,7 @@ +import React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface EmptyDescriptionProps extends BaseProps { + children: React.ReactText; +} +declare const EmptyStateDescription: (props: EmptyDescriptionProps) => JSX.Element; +export default EmptyStateDescription; diff --git a/dist/core/components/molecules/emptyState/EmptyStateImage.d.ts b/dist/core/components/molecules/emptyState/EmptyStateImage.d.ts new file mode 100644 index 0000000000..5bc7964e33 --- /dev/null +++ b/dist/core/components/molecules/emptyState/EmptyStateImage.d.ts @@ -0,0 +1,19 @@ +import React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface EmptyImageProps extends BaseProps, React.ImgHTMLAttributes { + children?: React.ReactNode; + src?: string; + alt?: string; + height?: string | number; + minHeight?: string | number; + maxHeight?: string | number; +} +export declare const imageHeight: { + standard: string; + compressed: string; + tight: string; + large: string; + small: string; +}; +declare const EmptyStateImage: (props: EmptyImageProps) => JSX.Element; +export default EmptyStateImage; diff --git a/dist/core/components/molecules/emptyState/EmptyStateTitle.d.ts b/dist/core/components/molecules/emptyState/EmptyStateTitle.d.ts new file mode 100644 index 0000000000..65c070b5d8 --- /dev/null +++ b/dist/core/components/molecules/emptyState/EmptyStateTitle.d.ts @@ -0,0 +1,7 @@ +import React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface EmptyDescriptionProps extends BaseProps { + children: React.ReactText; +} +declare const EmptyStateTitle: (props: EmptyDescriptionProps) => JSX.Element; +export default EmptyStateTitle; diff --git a/dist/core/components/molecules/emptyState/_tests_/EmptyState.test.d.ts b/dist/core/components/molecules/emptyState/_tests_/EmptyState.test.d.ts new file mode 100644 index 0000000000..cb0ff5c3b5 --- /dev/null +++ b/dist/core/components/molecules/emptyState/_tests_/EmptyState.test.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/dist/core/components/molecules/emptyState/index.d.ts b/dist/core/components/molecules/emptyState/index.d.ts new file mode 100644 index 0000000000..23bb10ba33 --- /dev/null +++ b/dist/core/components/molecules/emptyState/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./EmptyState"; +export * from "./EmptyState"; diff --git a/dist/core/components/molecules/fileList/FileIcon.d.ts b/dist/core/components/molecules/fileList/FileIcon.d.ts new file mode 100644 index 0000000000..3b740f0c45 --- /dev/null +++ b/dist/core/components/molecules/fileList/FileIcon.d.ts @@ -0,0 +1,15 @@ +import { FileListItemProps } from "./FileListItem"; +export interface FileIconProps { + file: FileListItemProps['file']; + progress: FileListItemProps['progress']; + status: FileListItemProps['status']; +} +export declare const FileIcon: { + (props: FileIconProps): JSX.Element; + displayName: string; + defaultProps: { + progress: number; + status: string; + }; +}; +export default FileIcon; diff --git a/dist/core/components/molecules/fileList/FileList.d.ts b/dist/core/components/molecules/fileList/FileList.d.ts new file mode 100644 index 0000000000..68de4d69c6 --- /dev/null +++ b/dist/core/components/molecules/fileList/FileList.d.ts @@ -0,0 +1,16 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { FileListItemProps } from "./FileListItem"; +export interface FileListProps extends BaseProps { + fileList: Omit; + onClick?: FileListItemProps['onClick']; + actionRenderer?: React.FC; +} +export declare const FileList: { + (props: FileListProps): JSX.Element | null; + defaultProps: { + fileList: never[]; + }; + displayName: string; +}; +export default FileList; diff --git a/dist/core/components/molecules/fileList/FileListItem.d.ts b/dist/core/components/molecules/fileList/FileListItem.d.ts new file mode 100644 index 0000000000..30cc5f6423 --- /dev/null +++ b/dist/core/components/molecules/fileList/FileListItem.d.ts @@ -0,0 +1,27 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { FileStatus } from "../../../common.type"; +export interface FileObject extends BaseProps, Record { + name: string; + size: string; + type: string; +} +export interface FileListItemProps extends BaseProps, Record { + file: File | FileObject; + status: FileStatus; + progress?: number; + errorMessage?: string; + actions?: React.ReactNode; + fileItem?: any; + fileSize?: string; + onClick?: (file: FileListItemProps) => void; +} +export declare const FileListItem: { + (props: FileListItemProps): JSX.Element; + defaultProps: { + progress: number; + errorMessage: string; + }; + displayName: string; +}; +export default FileListItem; diff --git a/dist/core/components/molecules/fileList/index.d.ts b/dist/core/components/molecules/fileList/index.d.ts new file mode 100644 index 0000000000..9329650845 --- /dev/null +++ b/dist/core/components/molecules/fileList/index.d.ts @@ -0,0 +1 @@ +export * from "./FileList"; diff --git a/dist/core/components/molecules/fileUploader/FileUploader.d.ts b/dist/core/components/molecules/fileUploader/FileUploader.d.ts new file mode 100644 index 0000000000..7c0ec938ae --- /dev/null +++ b/dist/core/components/molecules/fileUploader/FileUploader.d.ts @@ -0,0 +1,21 @@ +import { FileUploaderFormatProps } from "./FileUploaderFormat"; +import { FileUploaderButtonProps } from "./FileUploaderButton"; +import { BaseProps } from "../../../utils/types"; +export interface FileUploaderProps extends FileUploaderButtonProps, FileUploaderFormatProps, BaseProps { + title: string; + sizeLabel: string; + sampleFileLink?: JSX.Element; +} +export declare const FileUploader: { + (props: FileUploaderProps): JSX.Element; + defaultProps: { + uploadButtonLabel: string; + disabled: boolean; + multiple: boolean; + } & { + title: string; + sizeLabel: string; + }; + displayName: string; +}; +export default FileUploader; diff --git a/dist/core/components/molecules/fileUploader/FileUploaderButton.d.ts b/dist/core/components/molecules/fileUploader/FileUploaderButton.d.ts new file mode 100644 index 0000000000..99c5d69e16 --- /dev/null +++ b/dist/core/components/molecules/fileUploader/FileUploaderButton.d.ts @@ -0,0 +1,21 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface FileUploaderButtonProps extends BaseProps { + name?: string; + id?: string; + accept?: string[]; + multiple: boolean; + uploadButtonLabel: string; + disabled: boolean; + onChange?: (fileList: File[], event: React.ChangeEvent) => void; +} +export declare const FileUploaderButton: { + (props: FileUploaderButtonProps): JSX.Element; + defaultProps: { + uploadButtonLabel: string; + disabled: boolean; + multiple: boolean; + }; + displayName: string; +}; +export default FileUploaderButton; diff --git a/dist/core/components/molecules/fileUploader/FileUploaderFormat.d.ts b/dist/core/components/molecules/fileUploader/FileUploaderFormat.d.ts new file mode 100644 index 0000000000..f2533a9c88 --- /dev/null +++ b/dist/core/components/molecules/fileUploader/FileUploaderFormat.d.ts @@ -0,0 +1,8 @@ +export interface FileUploaderFormatProps { + formatLabel?: string; +} +export declare const FileUploaderFormat: { + (props: FileUploaderFormatProps): JSX.Element | null; + displayName: string; +}; +export default FileUploaderFormat; diff --git a/dist/core/components/molecules/fileUploader/FileUploaderItem.d.ts b/dist/core/components/molecules/fileUploader/FileUploaderItem.d.ts new file mode 100644 index 0000000000..4f6f51a1f9 --- /dev/null +++ b/dist/core/components/molecules/fileUploader/FileUploaderItem.d.ts @@ -0,0 +1,24 @@ +import { BaseProps } from "../../../utils/types"; +import { FileStatus } from "../../../common.type"; +export interface FileItem { + file: File; + id?: any; + status?: FileStatus; + progress?: number; + errorMessage?: string; +} +export interface FileUploaderItemProps extends BaseProps, FileItem { + onDelete?: (file: File, id?: any) => void; + onRetry?: (file: File, id?: any) => void; + onClick?: (file: File, id?: any) => void; +} +export declare const FileUploaderItem: { + (props: FileUploaderItemProps): JSX.Element; + defaultProps: { + status: string; + progress: number; + errorMessage: string; + }; + displayName: string; +}; +export default FileUploaderItem; diff --git a/dist/core/components/molecules/fileUploader/FileUploaderList.d.ts b/dist/core/components/molecules/fileUploader/FileUploaderList.d.ts new file mode 100644 index 0000000000..1e18552eb7 --- /dev/null +++ b/dist/core/components/molecules/fileUploader/FileUploaderList.d.ts @@ -0,0 +1,16 @@ +import { FileItem } from "./FileUploaderItem"; +import { BaseProps } from "../../../utils/types"; +export interface FileUploaderListProps extends BaseProps { + fileList: FileItem[]; + onClick?: (file: File, id?: any) => void; + onDelete?: (file: File, id?: any) => void; + onRetry?: (file: File, id?: any) => void; +} +export declare const FileUploaderList: { + (props: FileUploaderListProps): JSX.Element | null; + defaultProps: { + fileList: never[]; + }; + displayName: string; +}; +export default FileUploaderList; diff --git a/dist/core/components/molecules/fileUploader/FileUploaderStatus.d.ts b/dist/core/components/molecules/fileUploader/FileUploaderStatus.d.ts new file mode 100644 index 0000000000..a1871cd1f5 --- /dev/null +++ b/dist/core/components/molecules/fileUploader/FileUploaderStatus.d.ts @@ -0,0 +1,17 @@ +import { FileStatus } from "../../../common.type"; +export interface FileUploaderStatusProps { + file: File; + progress: number; + id?: any; + status: FileStatus; + onRetry?: () => void; +} +export declare const FileUploaderStatus: { + (props: FileUploaderStatusProps): JSX.Element | null; + displayName: string; + defaultProps: { + status: string; + progress: number; + }; +}; +export default FileUploaderStatus; diff --git a/dist/core/components/molecules/fileUploader/index.d.ts b/dist/core/components/molecules/fileUploader/index.d.ts new file mode 100644 index 0000000000..f379dd7ad7 --- /dev/null +++ b/dist/core/components/molecules/fileUploader/index.d.ts @@ -0,0 +1,2 @@ +export * from "./FileUploader"; +export * from "./FileUploaderList"; diff --git a/dist/core/components/molecules/fullscreenModal/FullscreenModal.d.ts b/dist/core/components/molecules/fullscreenModal/FullscreenModal.d.ts new file mode 100644 index 0000000000..b801c56cb3 --- /dev/null +++ b/dist/core/components/molecules/fullscreenModal/FullscreenModal.d.ts @@ -0,0 +1,36 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { OverlayHeaderProps } from "../overlayHeader"; +import { FooterOptions } from "../../../common.type"; +export declare type FullScreenDimension = 'medium' | 'large'; +export interface FullscreenModalProps extends BaseProps { + dimension: FullScreenDimension; + open: boolean; + onClose?: (event?: Event | React.MouseEvent, reason?: string) => void; + headerOptions?: OverlayHeaderProps; + header?: React.ReactNode; + footerOptions?: FooterOptions; + footer?: React.ReactNode; + children?: React.ReactNode; + closeOnEscape?: boolean; +} +interface ModalState { + open: boolean; + animate: boolean; + zIndex?: number; +} +declare class FullscreenModal extends React.Component { + modalRef: React.RefObject; + element: Element; + static defaultProps: { + dimension: string; + }; + constructor(props: FullscreenModalProps); + onOutsideClickHandler: (event: Event) => void; + onCloseHandler: (event: KeyboardEvent) => void; + componentDidMount(): void; + componentWillUnmount(): void; + componentDidUpdate(prevProps: FullscreenModalProps): void; + render(): JSX.Element; +} +export default FullscreenModal; diff --git a/dist/core/components/molecules/fullscreenModal/index.d.ts b/dist/core/components/molecules/fullscreenModal/index.d.ts new file mode 100644 index 0000000000..0a713ce0f4 --- /dev/null +++ b/dist/core/components/molecules/fullscreenModal/index.d.ts @@ -0,0 +1,2 @@ +export { default, default as FullscreenModal } from "./FullscreenModal"; +export * from "./FullscreenModal"; diff --git a/dist/core/components/molecules/inputMask/InputMask.d.ts b/dist/core/components/molecules/inputMask/InputMask.d.ts new file mode 100644 index 0000000000..8082bce17e --- /dev/null +++ b/dist/core/components/molecules/inputMask/InputMask.d.ts @@ -0,0 +1,26 @@ +import * as React from 'react'; +import { BaseProps, Validators, Mask } from "../../../utils/types"; +import { InputProps } from "../../../index.type"; +import { getDefaultValue } from "./utilites"; +export interface MaskProps extends BaseProps { + mask: Mask; + placeholderChar?: string; + caption?: string; + validators?: Validators; + onChange?: (e: React.ChangeEvent, maskedVal: string) => void; + onBlur?: (e: React.ChangeEvent, maskedVal: string) => void; + onClear?: (e: React.MouseEvent) => void; + onPaste?: (e: React.ClipboardEvent, val?: string) => void; + clearOnEmptyBlur?: boolean; + helpText?: string; +} +export declare type InputMaskProps = InputProps & MaskProps; +declare type InputMaskType = React.ForwardRefExoticComponent> & { + utils: { + getDefaultValue: typeof getDefaultValue; + }; +}; +declare const X: InputMaskType; +export { X as InputMask }; +declare const _default: InputMaskType; +export default _default; diff --git a/dist/core/components/molecules/inputMask/index.d.ts b/dist/core/components/molecules/inputMask/index.d.ts new file mode 100644 index 0000000000..934ef09086 --- /dev/null +++ b/dist/core/components/molecules/inputMask/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./InputMask"; +export * from "./InputMask"; diff --git a/dist/core/components/molecules/inputMask/utilites.d.ts b/dist/core/components/molecules/inputMask/utilites.d.ts new file mode 100644 index 0000000000..83dcc2b6b1 --- /dev/null +++ b/dist/core/components/molecules/inputMask/utilites.d.ts @@ -0,0 +1,3 @@ +import { InputMaskProps } from "../../../index.type"; +export declare const isEditable: (mask: InputMaskProps['mask'], pos: number) => boolean; +export declare const getDefaultValue: (mask: InputMaskProps['mask'], placeholderChar: InputMaskProps['placeholderChar']) => string; diff --git a/dist/core/components/molecules/modal/Modal.d.ts b/dist/core/components/molecules/modal/Modal.d.ts new file mode 100644 index 0000000000..852b051b0f --- /dev/null +++ b/dist/core/components/molecules/modal/Modal.d.ts @@ -0,0 +1,38 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { OverlayHeaderProps } from "../overlayHeader"; +import { FooterOptions } from "../../../common.type"; +export declare type ModalDimension = 'small' | 'medium' | 'large'; +export interface ModalProps extends BaseProps { + backdropClose?: boolean | ((event?: Event, reason?: string) => void); + dimension: ModalDimension; + open: boolean; + onClose?: (event?: Event | React.MouseEvent, reason?: string) => void; + headerOptions?: OverlayHeaderProps; + header?: React.ReactNode; + footer?: React.ReactNode; + footerOptions?: FooterOptions; + children?: React.ReactNode; + seperator?: boolean; + closeOnEscape?: boolean; +} +interface ModalState { + open: boolean; + animate: boolean; + zIndex?: number; +} +declare class Modal extends React.Component { + modalRef: React.RefObject; + element: Element; + static defaultProps: { + dimension: string; + }; + constructor(props: ModalProps); + onCloseHandler: (event: KeyboardEvent) => void; + componentDidMount(): void; + componentWillUnmount(): void; + componentDidUpdate(prevProps: ModalProps): void; + onOutsideClickHandler(event: Event): void; + render(): JSX.Element; +} +export default Modal; diff --git a/dist/core/components/molecules/modal/ModalBody.d.ts b/dist/core/components/molecules/modal/ModalBody.d.ts new file mode 100644 index 0000000000..bb27e5db9d --- /dev/null +++ b/dist/core/components/molecules/modal/ModalBody.d.ts @@ -0,0 +1,16 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface ModalBodyProps extends BaseProps { + children: React.ReactNode; + stickFooter: boolean; + withFooter: boolean; +} +export declare const ModalBody: { + (props: ModalBodyProps): JSX.Element; + defaultProps: { + stickFooter: boolean; + withFooter: boolean; + }; + displayName: string; +}; +export default ModalBody; diff --git a/dist/core/components/molecules/modal/ModalFooter.d.ts b/dist/core/components/molecules/modal/ModalFooter.d.ts new file mode 100644 index 0000000000..b2df366168 --- /dev/null +++ b/dist/core/components/molecules/modal/ModalFooter.d.ts @@ -0,0 +1,14 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface ModalFooterProps extends BaseProps { + open?: boolean; + children: React.ReactNode; + stickToBottom?: boolean; + seperator?: boolean; + inSidesheet?: boolean; +} +export declare const ModalFooter: { + (props: ModalFooterProps): JSX.Element; + displayName: string; +}; +export default ModalFooter; diff --git a/dist/core/components/molecules/modal/ModalHeader.d.ts b/dist/core/components/molecules/modal/ModalHeader.d.ts new file mode 100644 index 0000000000..0367d54343 --- /dev/null +++ b/dist/core/components/molecules/modal/ModalHeader.d.ts @@ -0,0 +1,15 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface ModalHeaderProps extends BaseProps { + heading?: string; + onClose?: (event: React.MouseEvent, reason?: string) => void; + subHeading?: string; + seperator?: boolean; + backIcon?: boolean; + backIconCallback?: (e: React.MouseEvent) => void; +} +export declare const ModalHeader: { + (props: ModalHeaderProps): JSX.Element; + displayName: string; +}; +export default ModalHeader; diff --git a/dist/core/components/molecules/modal/index.d.ts b/dist/core/components/molecules/modal/index.d.ts new file mode 100644 index 0000000000..c37120e83d --- /dev/null +++ b/dist/core/components/molecules/modal/index.d.ts @@ -0,0 +1,5 @@ +export { default, default as Modal } from "./Modal"; +export * from "./Modal"; +export * from "./ModalHeader"; +export * from "./ModalBody"; +export * from "./ModalFooter"; diff --git a/dist/core/components/molecules/modalDescription/ModalDescription.d.ts b/dist/core/components/molecules/modalDescription/ModalDescription.d.ts new file mode 100644 index 0000000000..830e254e4d --- /dev/null +++ b/dist/core/components/molecules/modalDescription/ModalDescription.d.ts @@ -0,0 +1,10 @@ +import { BaseProps } from "../../../utils/types"; +export interface ModalDescriptionProps extends BaseProps { + title?: string; + description?: string; +} +export declare const ModalDescription: { + (props: ModalDescriptionProps): JSX.Element; + displayName: string; +}; +export default ModalDescription; diff --git a/dist/core/components/molecules/modalDescription/index.d.ts b/dist/core/components/molecules/modalDescription/index.d.ts new file mode 100644 index 0000000000..df3b9cacf1 --- /dev/null +++ b/dist/core/components/molecules/modalDescription/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./ModalDescription"; +export * from "./ModalDescription"; diff --git a/dist/core/components/molecules/overlayBody/OverlayBody.d.ts b/dist/core/components/molecules/overlayBody/OverlayBody.d.ts new file mode 100644 index 0000000000..e3f6287ccb --- /dev/null +++ b/dist/core/components/molecules/overlayBody/OverlayBody.d.ts @@ -0,0 +1,14 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface OverlayBodyProps extends BaseProps { + children: React.ReactNode; +} +export declare const OverlayBody: { + (props: OverlayBodyProps): JSX.Element; + defaultProps: { + stickFooter: boolean; + withFooter: boolean; + }; + displayName: string; +}; +export default OverlayBody; diff --git a/dist/core/components/molecules/overlayBody/index.d.ts b/dist/core/components/molecules/overlayBody/index.d.ts new file mode 100644 index 0000000000..1582775ea5 --- /dev/null +++ b/dist/core/components/molecules/overlayBody/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./OverlayBody"; +export * from "./OverlayBody"; diff --git a/dist/core/components/molecules/overlayFooter/OverlayFooter.d.ts b/dist/core/components/molecules/overlayFooter/OverlayFooter.d.ts new file mode 100644 index 0000000000..864b8413f4 --- /dev/null +++ b/dist/core/components/molecules/overlayFooter/OverlayFooter.d.ts @@ -0,0 +1,13 @@ +import * as React from 'react'; +import { ButtonProps } from "../../../index.type"; +import { BaseProps } from "../../../utils/types"; +export interface OverlayFooterProps extends BaseProps { + open?: boolean; + children?: React.ReactNode; + actions?: ButtonProps[]; +} +export declare const OverlayFooter: { + (props: OverlayFooterProps): JSX.Element; + displayName: string; +}; +export default OverlayFooter; diff --git a/dist/core/components/molecules/overlayFooter/index.d.ts b/dist/core/components/molecules/overlayFooter/index.d.ts new file mode 100644 index 0000000000..c3e9fc82e2 --- /dev/null +++ b/dist/core/components/molecules/overlayFooter/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./OverlayFooter"; +export * from "./OverlayFooter"; diff --git a/dist/core/components/molecules/overlayHeader/OverlayHeader.d.ts b/dist/core/components/molecules/overlayHeader/OverlayHeader.d.ts new file mode 100644 index 0000000000..f760e4cd01 --- /dev/null +++ b/dist/core/components/molecules/overlayHeader/OverlayHeader.d.ts @@ -0,0 +1,17 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface OverlayHeaderProps extends BaseProps { + heading?: string; + onClose?: (event: React.MouseEvent, reason?: string) => void; + subHeading?: string; + backButton?: boolean; + backButtonCallback?: (e: React.MouseEvent) => void; + backIcon?: boolean; + backIconCallback?: (e: React.MouseEvent) => void; + headingClass?: string; +} +export declare const OverlayHeader: { + (props: OverlayHeaderProps): JSX.Element; + displayName: string; +}; +export default OverlayHeader; diff --git a/dist/core/components/molecules/overlayHeader/index.d.ts b/dist/core/components/molecules/overlayHeader/index.d.ts new file mode 100644 index 0000000000..90fd8a5598 --- /dev/null +++ b/dist/core/components/molecules/overlayHeader/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./OverlayHeader"; +export * from "./OverlayHeader"; diff --git a/dist/core/components/molecules/pagination/Pagination.d.ts b/dist/core/components/molecules/pagination/Pagination.d.ts new file mode 100644 index 0000000000..150709e729 --- /dev/null +++ b/dist/core/components/molecules/pagination/Pagination.d.ts @@ -0,0 +1,20 @@ +import { BaseProps } from "../../../utils/types"; +export declare type PaginationType = 'basic' | 'jump'; +export interface PaginationProps extends BaseProps { + type: PaginationType; + totalPages: number; + page: number; + pageJumpDebounceDuration: number; + onPageChange: (page: number) => void; +} +export declare const Pagination: { + (props: PaginationProps): JSX.Element; + displayName: string; + defaultProps: { + type: string; + page: number; + totalPages: number; + pageJumpDebounceDuration: number; + }; +}; +export default Pagination; diff --git a/dist/core/components/molecules/pagination/index.d.ts b/dist/core/components/molecules/pagination/index.d.ts new file mode 100644 index 0000000000..8c0d556173 --- /dev/null +++ b/dist/core/components/molecules/pagination/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Pagination"; +export * from "./Pagination"; diff --git a/dist/core/components/molecules/placeholder/Placeholder.d.ts b/dist/core/components/molecules/placeholder/Placeholder.d.ts new file mode 100644 index 0000000000..2e5efedce1 --- /dev/null +++ b/dist/core/components/molecules/placeholder/Placeholder.d.ts @@ -0,0 +1,19 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { PlaceholderImageSize } from "../../atoms/placeholderImage"; +import { PlaceholderParagraphProps } from "../../atoms/placeholderParagraph"; +export interface PlaceholderProps extends BaseProps { + withImage: boolean; + round?: boolean; + imageSize: PlaceholderImageSize; + children?: React.ReactElement | React.ReactElement[]; +} +export declare const Placeholder: { + (props: PlaceholderProps): JSX.Element; + displayName: string; + defaultProps: { + withImage: boolean; + imageSize: string; + }; +}; +export default Placeholder; diff --git a/dist/core/components/molecules/placeholder/index.d.ts b/dist/core/components/molecules/placeholder/index.d.ts new file mode 100644 index 0000000000..e42ed0eb11 --- /dev/null +++ b/dist/core/components/molecules/placeholder/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Placeholder"; +export * from "./Placeholder"; diff --git a/dist/core/components/molecules/popover/Popover.d.ts b/dist/core/components/molecules/popover/Popover.d.ts new file mode 100644 index 0000000000..506aba0b71 --- /dev/null +++ b/dist/core/components/molecules/popover/Popover.d.ts @@ -0,0 +1,44 @@ +import * as React from 'react'; +import { PopperWrapperProps } from "../../atoms/popperWrapper"; +import { BaseProps } from "../../../utils/types"; +import { PositionType as Position } from "../../../common.type"; +export interface CustomStyle { + height?: number | string; + minHeight?: number | string; + maxHeight?: number | string; + width?: number | string; + minWidth?: number | string; + maxWidth?: number | string; +} +declare const propsList: readonly ["appendToBody", "trigger", "hoverable", "on", "open", "closeOnBackdropClick", "offset", "closeOnScroll"]; +declare type PopperProps = typeof propsList[number]; +export interface PopoverProps extends Pick, BaseProps { + children: React.ReactNode; + position: Position; + onToggle?: (open: boolean, type?: string) => void; + dark?: boolean; + customStyle: CustomStyle; + triggerClass?: string; + hideOnReferenceEscape?: boolean; + boundaryElement: React.RefObject | Element; + animationClass?: { + open: string; + close: string; + }; + name?: string; + triggerCoordinates?: { + x: number; + y: number; + }; +} +export declare const Popover: { + (props: PopoverProps): JSX.Element; + displayName: string; + defaultProps: Record & { + offset: string; + position: string; + hideOnReferenceEscape: boolean; + customStyle: {}; + }; +}; +export default Popover; diff --git a/dist/core/components/molecules/popover/index.d.ts b/dist/core/components/molecules/popover/index.d.ts new file mode 100644 index 0000000000..664fd4a1da --- /dev/null +++ b/dist/core/components/molecules/popover/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Popover"; +export * from "./Popover"; diff --git a/dist/core/components/molecules/sidesheet/Sidesheet.d.ts b/dist/core/components/molecules/sidesheet/Sidesheet.d.ts new file mode 100644 index 0000000000..4edf189147 --- /dev/null +++ b/dist/core/components/molecules/sidesheet/Sidesheet.d.ts @@ -0,0 +1,42 @@ +import * as React from 'react'; +import { OverlayHeaderProps } from "../overlayHeader"; +import { BaseProps } from "../../../utils/types"; +import { FooterOptions } from "../../../common.type"; +export declare type SidesheetDimension = 'regular' | 'large'; +export interface SidesheetProps extends BaseProps { + headerOptions: Omit; + header?: React.ReactNode; + dimension: SidesheetDimension; + open: boolean; + stickFooter?: boolean; + seperator?: boolean; + children?: React.ReactNode; + footer?: React.ReactNode; + footerOptions?: FooterOptions; + backdropClose?: boolean; + closeOnEscape?: boolean; + onClose?: (event?: Event | React.MouseEvent, reason?: string) => void; +} +interface SidesheetState { + open: boolean; + animate: boolean; + zIndex?: number; +} +declare class Sidesheet extends React.Component { + sidesheetRef: React.RefObject; + element: Element; + static defaultProps: { + dimension: string; + stickFooter: boolean; + headerOptions: {}; + }; + constructor(props: SidesheetProps); + onCloseHandler: (event: KeyboardEvent) => void; + componentDidMount(): void; + componentWillUnmount(): void; + componentDidUpdate(prevProps: SidesheetProps): void; + onOutsideClickHandler(event: Event): void; + handleAnimationEnd(): void; + render(): JSX.Element; +} +export default Sidesheet; diff --git a/dist/core/components/molecules/sidesheet/index.d.ts b/dist/core/components/molecules/sidesheet/index.d.ts new file mode 100644 index 0000000000..5b6938dd53 --- /dev/null +++ b/dist/core/components/molecules/sidesheet/index.d.ts @@ -0,0 +1,2 @@ +export { default, default as Sidesheet } from "./Sidesheet"; +export * from "./Sidesheet"; diff --git a/dist/core/components/molecules/stepper/Step.d.ts b/dist/core/components/molecules/stepper/Step.d.ts new file mode 100644 index 0000000000..d6a6cd1aa4 --- /dev/null +++ b/dist/core/components/molecules/stepper/Step.d.ts @@ -0,0 +1,14 @@ +import * as React from 'react'; +export interface StepProps { + label: string; + value?: React.ReactText; + disabled: boolean; + active: boolean; + completed: boolean; + onChange?: (label: string, value?: React.ReactText) => void; +} +export declare const Step: { + (props: StepProps): JSX.Element; + displayName: string; +}; +export default Step; diff --git a/dist/core/components/molecules/stepper/Stepper.d.ts b/dist/core/components/molecules/stepper/Stepper.d.ts new file mode 100644 index 0000000000..8bf3592792 --- /dev/null +++ b/dist/core/components/molecules/stepper/Stepper.d.ts @@ -0,0 +1,23 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface StepProp { + label: string; + value?: React.ReactText; +} +export interface StepperProps extends BaseProps { + active: number; + completed: number; + steps: StepProp[]; + onChange?: (active: number, completed: number, label?: string, value?: React.ReactText) => void; + skipIndexes: number[]; +} +export declare const Stepper: { + (props: StepperProps): JSX.Element; + displayName: string; + defaultProps: { + completed: number; + active: number; + skipIndexes: never[]; + }; +}; +export default Stepper; diff --git a/dist/core/components/molecules/stepper/index.d.ts b/dist/core/components/molecules/stepper/index.d.ts new file mode 100644 index 0000000000..a36e16da68 --- /dev/null +++ b/dist/core/components/molecules/stepper/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Stepper"; +export * from "./Stepper"; diff --git a/dist/core/components/molecules/tabs/Tab.d.ts b/dist/core/components/molecules/tabs/Tab.d.ts new file mode 100644 index 0000000000..60ebb8d20b --- /dev/null +++ b/dist/core/components/molecules/tabs/Tab.d.ts @@ -0,0 +1,16 @@ +import * as React from 'react'; +export interface TabProps { + label: React.ReactNode | string; + disabled?: boolean; + icon?: string; + count?: number; + children?: React.ReactNode; + className?: string; + isDismissible?: boolean; + onDismiss?: (tabInfo: object) => void; +} +export declare const Tab: { + (props: TabProps): JSX.Element; + displayName: string; +}; +export default Tab; diff --git a/dist/core/components/molecules/tabs/Tabs.d.ts b/dist/core/components/molecules/tabs/Tabs.d.ts new file mode 100644 index 0000000000..3ba85b5ad6 --- /dev/null +++ b/dist/core/components/molecules/tabs/Tabs.d.ts @@ -0,0 +1,35 @@ +import * as React from 'react'; +import { BaseProps, SingleOrArray } from "../../../utils/types"; +import { IconType } from "../../../common.type"; +interface TabInfo { + label: string; + activeIndex: number; + currentTabIndex: number; +} +export interface TabConfig { + label: string; + count?: number; + icon?: string; + disabled?: boolean; + className?: string; + isDismissible?: boolean; + onDismiss?: (tabInfo: TabInfo) => void; + iconType?: IconType; +} +export interface TabsProps extends BaseProps { + activeIndex?: number; + withSeparator?: boolean; + tabs: TabConfig[]; + children?: SingleOrArray; + onTabChange?: (tabIndex: number) => void; + headerClassName?: string; +} +export declare const Tabs: { + (props: TabsProps): JSX.Element; + displayName: string; + defaultProps: { + withSeparator: boolean; + tabs: never[]; + }; +}; +export default Tabs; diff --git a/dist/core/components/molecules/tabs/TabsWrapper.d.ts b/dist/core/components/molecules/tabs/TabsWrapper.d.ts new file mode 100644 index 0000000000..b6d3e07462 --- /dev/null +++ b/dist/core/components/molecules/tabs/TabsWrapper.d.ts @@ -0,0 +1,12 @@ +import * as React from 'react'; +import { BaseProps, SingleOrArray } from "../../../utils/types"; +export interface TabsWrapperProps extends BaseProps { + active?: number; + children: SingleOrArray; + onTabChange?: (tabIndex: number) => void; +} +export declare const TabsWrapper: { + (props: TabsWrapperProps): JSX.Element; + displayName: string; +}; +export default TabsWrapper; diff --git a/dist/core/components/molecules/tabs/index.d.ts b/dist/core/components/molecules/tabs/index.d.ts new file mode 100644 index 0000000000..8b3f78639e --- /dev/null +++ b/dist/core/components/molecules/tabs/index.d.ts @@ -0,0 +1,3 @@ +export * from "./TabsWrapper"; +export * from "./Tab"; +export * from "./Tabs"; diff --git a/dist/core/components/molecules/tooltip/Tooltip.d.ts b/dist/core/components/molecules/tooltip/Tooltip.d.ts new file mode 100644 index 0000000000..3922fdc6ad --- /dev/null +++ b/dist/core/components/molecules/tooltip/Tooltip.d.ts @@ -0,0 +1,28 @@ +import * as React from 'react'; +import { PopoverProps } from "../../../index.type"; +import { BaseProps } from "../../../utils/types"; +declare type Position = 'top-start' | 'top' | 'top-end' | 'right' | 'bottom-end' | 'bottom' | 'bottom-start' | 'left'; +declare const tooltipPropsList: readonly ["trigger", "on", "open", "offset", "onToggle", "dark", "customStyle", "closeOnBackdropClick", "hideOnReferenceEscape", "closeOnScroll"]; +declare type TooltipPopperProps = typeof tooltipPropsList[number]; +export interface TooltipProps extends Omit, BaseProps { + tooltip: string; + showTooltip?: boolean; + children: PopoverProps['trigger']; + position: Position; + showOnTruncation?: boolean; + elementRef?: React.RefObject; + open?: boolean; +} +export declare const detectTruncation: (boundaryRef: React.RefObject) => boolean; +export declare const Tooltip: { + (props: TooltipProps): JSX.Element; + useAutoTooltip(): { + detectTruncation: (boundaryRef: React.RefObject) => boolean; + }; + defaultProps: Record & { + hoverable: boolean; + showTooltip: boolean; + showOnTruncation: boolean; + }; +}; +export default Tooltip; diff --git a/dist/core/components/molecules/tooltip/index.d.ts b/dist/core/components/molecules/tooltip/index.d.ts new file mode 100644 index 0000000000..6d9ed84e72 --- /dev/null +++ b/dist/core/components/molecules/tooltip/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Tooltip"; +export * from "./Tooltip"; diff --git a/dist/core/components/molecules/verificationCodeInput/VerificationCodeInput.d.ts b/dist/core/components/molecules/verificationCodeInput/VerificationCodeInput.d.ts new file mode 100644 index 0000000000..cc231dbcd8 --- /dev/null +++ b/dist/core/components/molecules/verificationCodeInput/VerificationCodeInput.d.ts @@ -0,0 +1,17 @@ +import { BaseProps } from "../../../utils/types"; +import { InputProps } from "../../../index.type"; +interface VerificationProps extends BaseProps { + fields?: number; + type?: 'text' | 'number' | 'password'; + onComplete?: (value: string) => void; +} +export declare type VerificationCodeInputProps = VerificationProps & Omit; +declare const VerificationCodeInput: { + (props: VerificationCodeInputProps): JSX.Element; + displayName: string; + defaultProps: { + type: string; + fields: number; + }; +}; +export default VerificationCodeInput; diff --git a/dist/core/components/molecules/verificationCodeInput/index.d.ts b/dist/core/components/molecules/verificationCodeInput/index.d.ts new file mode 100644 index 0000000000..9d36154402 --- /dev/null +++ b/dist/core/components/molecules/verificationCodeInput/index.d.ts @@ -0,0 +1,2 @@ +export { default, default as VerificationCodeInput } from "./VerificationCodeInput"; +export * from "./VerificationCodeInput"; diff --git a/dist/core/components/organisms/calendar/Calendar.d.ts b/dist/core/components/organisms/calendar/Calendar.d.ts new file mode 100644 index 0000000000..13040acc1c --- /dev/null +++ b/dist/core/components/organisms/calendar/Calendar.d.ts @@ -0,0 +1,103 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { Size, Day, View, Events } from "./types"; +declare type OnHover = React.MouseEvent | React.MouseEvent; +interface hoveredDateProps { + value: number; + isToday: boolean; + isDisabled: boolean; + todayDate?: Date; + fullDate: Date; + date: number; + month: string; + year: number; + dayName: string; +} +interface hoveredMonthProps { + value: string; + month: string; + year?: number; + isCurrentMonth: boolean; + isDisabled: boolean; +} +interface hoveredYearProps { + value: number; + year: number; + isCurrentYear: boolean; + isDisabled: boolean; +} +export interface SharedProps extends BaseProps { + size: Size; + monthsInView: number; + jumpView?: boolean; + firstDayOfWeek: Day; + view: View; + disabledBefore?: Date; + disabledAfter?: Date; + yearNav?: number; + monthNav?: number; + allowReverseSelection?: boolean; +} +export declare type CalendarProps = { + onDateChange?: (date: Date) => void; + onRangeChange?: (startDate: Date | undefined, endDate: Date | undefined) => void; + onDateHover?: (dateData: hoveredDateProps, evnt: OnHover) => void; + onMonthHover?: (monthData: hoveredMonthProps, evnt: OnHover) => void; + onYearHover?: (yearData: hoveredYearProps, evnt: OnHover) => void; + date?: Date; + rangePicker?: boolean; + startDate?: Date; + endDate?: Date; + rangeLimit?: number; + events?: Events; +} & SharedProps; +interface CalendarState { + view: View; + year?: number; + month?: number; + date?: number; + currDate?: Date; + hoverDate?: Date; + startDate?: Date; + endDate?: Date; + yearBlockNav: number; + yearNav: number; + monthNav: number; + todayDate: number; + currMonth: number; + currYear: number; +} +export declare class Calendar extends React.Component { + static defaultProps: { + size: string; + monthsInView: number; + view: string; + firstDayOfWeek: string; + jumpView: boolean; + }; + constructor(props: CalendarProps); + componentDidUpdate(prevProps: CalendarProps, prevState: CalendarState): void; + updateState: (year: number, month?: number | undefined, date?: number | undefined) => void; + getDateValue: (year: number, month: number, date: number) => Date | undefined; + getNavDateInfo: (index: number) => Record; + getInRangeError: () => boolean; + selectYear: (year: number) => () => void; + yearMouseOverHandler: (year: number, isCurrentYear: boolean, isDisabled: boolean, ev: React.MouseEvent) => void; + selectMonth: (month: number) => () => void; + monthMouseOverHandler: (month: number, isCurrentMonth: boolean, isDisabled: boolean, ev: React.MouseEvent) => void; + selectDate: (index: number, date: number, prevMonthDayRange: number, dayRange: number) => void; + calculateDate: (index: number, date: number, prevMonthDayRange: number, dayRange: number, isDateHovered: boolean) => Date | undefined; + onNavIconClickHandler: (type: string) => () => void; + renderJumpButton: (type: string) => JSX.Element; + onNavHeadingClickHandler: (currView: View) => () => void; + renderHeaderContent: (index: number) => JSX.Element; + renderBodyYear: () => JSX.Element[]; + renderBodyMonth: () => JSX.Element[]; + onDateRowMouseLeaveHandler: () => void; + renderBodyDate: (index: number) => JSX.Element; + renderEventsIndicator(size: string, active: boolean): JSX.Element; + renderDateValues: (index: number) => JSX.Element[]; + renderCalendar: (index: number) => JSX.Element; + render(): JSX.Element; +} +export default Calendar; diff --git a/dist/core/components/organisms/calendar/config.d.ts b/dist/core/components/organisms/calendar/config.d.ts new file mode 100644 index 0000000000..24dd92aece --- /dev/null +++ b/dist/core/components/organisms/calendar/config.d.ts @@ -0,0 +1,13 @@ +declare const _default: { + yearBlockRange: number; + yearsInRow: number; + monthBlock: number; + monthsInRow: number; + daysInRow: number; + months: string[]; + days: { + small: string[]; + large: string[]; + }; +}; +export default _default; diff --git a/dist/core/components/organisms/calendar/index.d.ts b/dist/core/components/organisms/calendar/index.d.ts new file mode 100644 index 0000000000..ea9930a1ba --- /dev/null +++ b/dist/core/components/organisms/calendar/index.d.ts @@ -0,0 +1,4 @@ +export { default } from "./Calendar"; +export * from "./Calendar"; +export * from "./utility"; +export * from "./types"; diff --git a/dist/core/components/organisms/calendar/types.d.ts b/dist/core/components/organisms/calendar/types.d.ts new file mode 100644 index 0000000000..9ac8bc23de --- /dev/null +++ b/dist/core/components/organisms/calendar/types.d.ts @@ -0,0 +1,13 @@ +export declare type Size = 'small' | 'large'; +export declare type View = 'date' | 'month' | 'year'; +export declare type Day = 'sunday' | 'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday'; +export declare type DateFormat = 'mm/dd/yyyy' | 'dd/mm/yyyy' | 'yyyy/mm/dd' | 'mm-dd-yyyy' | 'dd-mm-yyyy' | 'yyyy-mm-dd'; +export declare type DateObject = { + year: number; + month: number; + date: number; +}; +export declare type DateType = number | Date | string; +export declare type Events = { + [key: string]: boolean; +}; diff --git a/dist/core/components/organisms/calendar/utility.d.ts b/dist/core/components/organisms/calendar/utility.d.ts new file mode 100644 index 0000000000..035b0ceb65 --- /dev/null +++ b/dist/core/components/organisms/calendar/utility.d.ts @@ -0,0 +1,15 @@ +import { DateObject, DateType, Day } from "./types"; +import { Validators } from "../../../utils/types"; +declare type Operator = 'less' | 'more' | 'equal'; +export declare const getIndexOfDay: (day: Day) => number; +export declare const getYearBlock: (year: number) => number; +export declare const getDaysInMonth: (year: number, month: number) => number; +export declare const getFirstDayOfMonth: (year: number, month: number) => number; +export declare const getDateInfo: (d?: string | number | Date | undefined) => Record; +export declare const convertToDate: (d?: string | number | DateObject | Date | undefined, format?: string | undefined, validators?: ((...values: any[]) => boolean) | ((...values: any[]) => boolean)[] | undefined) => Date | undefined; +export declare const compareYearBlock: (d: DateType | undefined, operator: Operator, currDecade: number) => boolean; +export declare const compareDate: (d: DateType | undefined, operator: Operator, currYear: number, currMonth?: number | undefined, currDate?: number | undefined) => boolean; +export declare const translateToString: (format: string, d?: Date | undefined) => string; +export declare const translateToDate: (format: string, val: string, validators?: Validators) => Date | undefined; +export declare const dateComparison: (date: Date | undefined, operator: Operator, currDate: string, currMonth: string, currYear: string) => boolean; +export {}; diff --git a/dist/core/components/organisms/choiceList/ChoiceList.d.ts b/dist/core/components/organisms/choiceList/ChoiceList.d.ts new file mode 100644 index 0000000000..fa1cda666b --- /dev/null +++ b/dist/core/components/organisms/choiceList/ChoiceList.d.ts @@ -0,0 +1,32 @@ +import { BaseProps } from "../../../utils/types"; +import { ChangeEvent } from "../../../common.type"; +export declare type ChoiceListAlignment = 'horizontal' | 'vertical'; +export declare type ChoiceListSize = 'regular' | 'tiny'; +export interface Choice { + value: string; + label?: string; + disabled?: boolean; + helpText?: string; + name: string; +} +export interface ChoiceListProps extends BaseProps { + title?: string; + choices: Choice[]; + alignment?: ChoiceListAlignment; + size?: ChoiceListSize; + allowMultiple?: boolean; + disabled?: boolean; + selected?: string[]; + onChange?: (event: ChangeEvent, selected: string[]) => void; +} +export declare const ChoiceList: { + (props: ChoiceListProps): JSX.Element; + displayName: string; + defaultProps: { + alignment: string; + size: string; + allowMultiple: boolean; + disabled: boolean; + }; +}; +export default ChoiceList; diff --git a/dist/core/components/organisms/choiceList/index.d.ts b/dist/core/components/organisms/choiceList/index.d.ts new file mode 100644 index 0000000000..16ae7adb81 --- /dev/null +++ b/dist/core/components/organisms/choiceList/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./ChoiceList"; +export * from "./ChoiceList"; diff --git a/dist/core/components/organisms/combobox/Combobox.d.ts b/dist/core/components/organisms/combobox/Combobox.d.ts new file mode 100644 index 0000000000..8e4853349e --- /dev/null +++ b/dist/core/components/organisms/combobox/Combobox.d.ts @@ -0,0 +1,47 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { OptionType, IconType } from "../../../common.type"; +import { ContextProps } from "./ComboboxContext"; +export declare type ComboboxInputSize = 'tiny' | 'regular' | 'large'; +export interface ComboboxProps extends BaseProps { + multiSelect?: boolean; + children: React.ReactNode | ((contextProp: ContextProps) => React.ReactNode); + maxHeight?: number; + width?: number; + onChange?: (option?: OptionType | OptionType[]) => void; + onSearch?: (value?: string) => void; + value?: OptionType; + chipValue?: OptionType[]; + placeholder?: string; + disabled?: boolean; + error?: boolean; + onBlur?: (event: React.FocusEvent) => void; + onFocus?: (event: React.FocusEvent) => void; + onClear?: (event: React.MouseEvent | React.KeyboardEvent) => void; + onKeyDown?: (event: React.KeyboardEvent) => void; + onKeyUp?: (event: React.KeyboardEvent) => void; + icon?: string; + iconType?: IconType; + size?: ComboboxInputSize; + clearButton?: boolean; + className?: string; +} +export declare const Combobox: { + (props: ComboboxProps): JSX.Element; + List: { + (props: import("./ComboboxList").ComboboxListProps): JSX.Element; + defaultProps: { + type: string; + showDivider: boolean; + tagName: string; + size: string; + }; + }; + Option: { + (props: import("./ComboboxOption").ComboboxOptionProps): JSX.Element; + defaultProps: { + tagName: string; + }; + }; +}; +export default Combobox; diff --git a/dist/core/components/organisms/combobox/ComboboxContext.d.ts b/dist/core/components/organisms/combobox/ComboboxContext.d.ts new file mode 100644 index 0000000000..9c9a6f9646 --- /dev/null +++ b/dist/core/components/organisms/combobox/ComboboxContext.d.ts @@ -0,0 +1,23 @@ +import * as React from 'react'; +import { OptionType } from "../../../common.type"; +export declare type ContextProps = { + inputValue?: OptionType; + openPopover?: boolean; + chipInputValue?: OptionType[]; + focusedOption?: Element; + chipInputText?: string; + onOptionClick?: (option: OptionType) => void; + setInputValue?: React.Dispatch>; + setChipInputText?: React.Dispatch>; + setOpenPopover?: React.Dispatch>; + setChipInputValue?: React.Dispatch>; + setFocusedOption?: React.Dispatch>; + setHighlightFirstItem?: React.Dispatch>; + setHighlightLastItem?: React.Dispatch>; + inputTriggerRef?: any; + listRef?: React.RefObject; + multiSelect?: boolean; + popoverId?: string; +}; +export declare const ComboboxContext: React.Context; +export default ComboboxContext; diff --git a/dist/core/components/organisms/combobox/ComboboxList.d.ts b/dist/core/components/organisms/combobox/ComboboxList.d.ts new file mode 100644 index 0000000000..0fdec8f7fc --- /dev/null +++ b/dist/core/components/organisms/combobox/ComboboxList.d.ts @@ -0,0 +1,20 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { TListboxSize } from "../../../common.type"; +declare type TagType = 'ul' | 'ol' | 'div' | 'nav'; +export interface ComboboxListProps extends BaseProps { + children: React.ReactNode; + size: TListboxSize; + tagName: TagType; + showDivider: boolean; +} +export declare const ComboboxList: { + (props: ComboboxListProps): JSX.Element; + defaultProps: { + type: string; + showDivider: boolean; + tagName: string; + size: string; + }; +}; +export default ComboboxList; diff --git a/dist/core/components/organisms/combobox/ComboboxOption.d.ts b/dist/core/components/organisms/combobox/ComboboxOption.d.ts new file mode 100644 index 0000000000..c534689f97 --- /dev/null +++ b/dist/core/components/organisms/combobox/ComboboxOption.d.ts @@ -0,0 +1,18 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { OptionType } from "../../../common.type"; +declare type ItemTagType = 'li' | 'div'; +export interface ComboboxOptionProps extends BaseProps { + children: React.ReactNode; + option: OptionType; + tagName: ItemTagType; + selected?: boolean; + onClick?: (option: OptionType) => void; +} +export declare const ComboboxOption: { + (props: ComboboxOptionProps): JSX.Element; + defaultProps: { + tagName: string; + }; +}; +export default ComboboxOption; diff --git a/dist/core/components/organisms/combobox/index.d.ts b/dist/core/components/organisms/combobox/index.d.ts new file mode 100644 index 0000000000..30c733d9a9 --- /dev/null +++ b/dist/core/components/organisms/combobox/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Combobox"; +export * from "./Combobox"; diff --git a/dist/core/components/organisms/combobox/trigger/ChipInputBox.d.ts b/dist/core/components/organisms/combobox/trigger/ChipInputBox.d.ts new file mode 100644 index 0000000000..36b6487ee9 --- /dev/null +++ b/dist/core/components/organisms/combobox/trigger/ChipInputBox.d.ts @@ -0,0 +1,3 @@ +import { MultiSelectTriggerProps } from "./MultiselectTrigger"; +export declare const ChipInputBox: (props: MultiSelectTriggerProps) => JSX.Element; +export default ChipInputBox; diff --git a/dist/core/components/organisms/combobox/trigger/ComboboxTrigger.d.ts b/dist/core/components/organisms/combobox/trigger/ComboboxTrigger.d.ts new file mode 100644 index 0000000000..dade53a7d4 --- /dev/null +++ b/dist/core/components/organisms/combobox/trigger/ComboboxTrigger.d.ts @@ -0,0 +1,22 @@ +import * as React from 'react'; +import { ComboboxInputSize } from "../Combobox"; +import { OptionType, IconType } from "../../../../common.type"; +interface ComboboxTriggerProps { + multiSelect?: boolean; + value?: OptionType; + placeholder?: string; + disabled?: boolean; + error?: boolean; + onBlur?: (event: React.FocusEvent) => void; + onFocus?: (event: React.FocusEvent) => void; + onClear?: (event: React.MouseEvent | React.KeyboardEvent) => void; + onKeyDown?: (event: React.KeyboardEvent) => void; + onKeyUp?: (event: React.KeyboardEvent) => void; + icon?: string; + iconType?: IconType; + size?: ComboboxInputSize; + chipValue?: OptionType[]; + clearButton?: boolean; +} +export declare const ComboboxTrigger: (props: ComboboxTriggerProps) => JSX.Element; +export default ComboboxTrigger; diff --git a/dist/core/components/organisms/combobox/trigger/InputBox.d.ts b/dist/core/components/organisms/combobox/trigger/InputBox.d.ts new file mode 100644 index 0000000000..90c3cf510d --- /dev/null +++ b/dist/core/components/organisms/combobox/trigger/InputBox.d.ts @@ -0,0 +1,3 @@ +import { InputProps } from "../../../../index.type"; +export declare const InputBox: (props: InputProps) => JSX.Element; +export default InputBox; diff --git a/dist/core/components/organisms/combobox/trigger/MultiselectTrigger.d.ts b/dist/core/components/organisms/combobox/trigger/MultiselectTrigger.d.ts new file mode 100644 index 0000000000..d240cd4f3a --- /dev/null +++ b/dist/core/components/organisms/combobox/trigger/MultiselectTrigger.d.ts @@ -0,0 +1,41 @@ +import * as React from 'react'; +import { ChipProps } from "../../../../index.type"; +import { BaseProps } from "../../../../utils/types"; +import { OptionType } from "../../../../common.type"; +declare type ChipOptions = { + icon?: ChipProps['icon']; + type?: ChipProps['type']; + iconType?: ChipProps['iconType']; + clearButton?: ChipProps['clearButton']; + onClick?: (value: OptionType, index: number) => void; +}; +export interface MultiSelectTriggerProps extends BaseProps { + allowDuplicates?: boolean; + chipOptions: ChipOptions; + disabled?: boolean; + error?: boolean; + placeholder?: string; + value?: OptionType[]; + defaultValue: OptionType[]; + autoFocus?: boolean; + onChange?: (chips: OptionType[]) => void; + onKeyDown?: (event: React.KeyboardEvent) => void; + onKeyUp?: (event: React.KeyboardEvent) => void; + onBlur?: (e: React.FocusEvent) => void; + onFocus?: (e: React.FocusEvent) => void; + onInputChange?: (e?: React.ChangeEvent) => void; + tabIndex?: number; + forwardedRef?: React.Ref; + role?: React.AriaRole; +} +export declare const MultiSelectTrigger: { + (props: MultiSelectTriggerProps): JSX.Element; + displayName: string; + defaultProps: { + chipOptions: {}; + defaultValue: never[]; + allowDuplicates: boolean; + autoFocus: boolean; + }; +}; +export default MultiSelectTrigger; diff --git a/dist/core/components/organisms/combobox/trigger/index.d.ts b/dist/core/components/organisms/combobox/trigger/index.d.ts new file mode 100644 index 0000000000..324ab89a19 --- /dev/null +++ b/dist/core/components/organisms/combobox/trigger/index.d.ts @@ -0,0 +1 @@ +export * from "./ComboboxTrigger"; diff --git a/dist/core/components/organisms/combobox/trigger/utils.d.ts b/dist/core/components/organisms/combobox/trigger/utils.d.ts new file mode 100644 index 0000000000..6c1dea9c84 --- /dev/null +++ b/dist/core/components/organisms/combobox/trigger/utils.d.ts @@ -0,0 +1,3 @@ +import React from 'react'; +export declare const handleKeyDown: (event: React.KeyboardEvent, setOpenPopover?: React.Dispatch> | undefined, setHighlightFirstItem?: React.Dispatch> | undefined, setHighlightLastItem?: React.Dispatch> | undefined) => void; +export declare const focusListItem: (position: string, setFocusedOption?: React.Dispatch> | undefined, listRef?: any) => void; diff --git a/dist/core/components/organisms/combobox/utils.d.ts b/dist/core/components/organisms/combobox/utils.d.ts new file mode 100644 index 0000000000..b42b19cb3f --- /dev/null +++ b/dist/core/components/organisms/combobox/utils.d.ts @@ -0,0 +1,2 @@ +import React from 'react'; +export declare const handleKeyDown: (event: React.KeyboardEvent, focusedOption: Element | undefined, setFocusedOption?: React.Dispatch> | undefined, setOpenPopover?: React.Dispatch> | undefined, inputTriggerRef?: any, setHighlightFirstItem?: React.Dispatch> | undefined, setHighlightLastItem?: React.Dispatch> | undefined, multiSelect?: boolean | undefined, listRef?: any) => void; diff --git a/dist/core/components/organisms/datePicker/DatePicker.d.ts b/dist/core/components/organisms/datePicker/DatePicker.d.ts new file mode 100644 index 0000000000..9ebee1c336 --- /dev/null +++ b/dist/core/components/organisms/datePicker/DatePicker.d.ts @@ -0,0 +1,55 @@ +import * as React from 'react'; +import { SharedProps } from "../calendar/Calendar"; +import { DateType, DateFormat } from "../calendar/types"; +import { PopoverProps, InputMaskProps } from "../../../index.type"; +import { Validators } from "../../../utils/types"; +export declare type DatePickerProps = SharedProps & { + onDateChange?: (date: Date | undefined, dateVal?: string) => void; + date?: DateType; + withInput?: boolean; + open?: boolean; + position: PopoverProps['position']; + inputFormat: DateFormat; + outputFormat: DateFormat; + inputOptions: Omit; + validators: Validators; + closeOnSelect: boolean; + showTodayDate?: boolean; + children?: React.ReactNode; + onError?: (date: Date | undefined, dateVal?: string) => void; + popoverOptions?: PopoverOptions; +}; +export interface DatePickerState { + init: boolean; + date?: Date; + error: boolean; + open: boolean; +} +interface PopoverOptions { + appendToBody?: PopoverProps['appendToBody']; + hideOnReferenceEscape?: PopoverProps['hideOnReferenceEscape']; + boundaryElement?: PopoverProps['boundaryElement']; +} +export declare class DatePicker extends React.Component { + static defaultProps: { + position: string; + inputFormat: string; + outputFormat: string; + validators: ((val: string, format: string) => boolean)[]; + inputOptions: {}; + closeOnSelect: boolean; + size: string; + monthsInView: number; + view: string; + firstDayOfWeek: string; + jumpView: boolean; + }; + constructor(props: DatePickerProps); + componentDidUpdate(prevProps: DatePickerProps, prevState: DatePickerState): void; + getError: (date?: Date | undefined) => boolean; + onDateChangeHandler: (d?: Date | undefined) => void; + onToggleHandler: (o: boolean, type?: string | undefined) => void; + renderCalendar(): JSX.Element; + render(): JSX.Element; +} +export default DatePicker; diff --git a/dist/core/components/organisms/datePicker/Trigger.d.ts b/dist/core/components/organisms/datePicker/Trigger.d.ts new file mode 100644 index 0000000000..fc6c18704c --- /dev/null +++ b/dist/core/components/organisms/datePicker/Trigger.d.ts @@ -0,0 +1,10 @@ +import { DatePickerProps, DatePickerState } from "./DatePicker"; +declare type TriggerProps = { + inputFormat: DatePickerProps['inputFormat']; + inputOptions: DatePickerProps['inputOptions']; + validators: DatePickerProps['validators']; + state: DatePickerState; + setState: any; +}; +export declare const Trigger: (props: TriggerProps) => JSX.Element; +export {}; diff --git a/dist/core/components/organisms/datePicker/index.d.ts b/dist/core/components/organisms/datePicker/index.d.ts new file mode 100644 index 0000000000..386935faf3 --- /dev/null +++ b/dist/core/components/organisms/datePicker/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./DatePicker"; +export * from "./DatePicker"; diff --git a/dist/core/components/organisms/dateRangePicker/DateRangePicker.d.ts b/dist/core/components/organisms/dateRangePicker/DateRangePicker.d.ts new file mode 100644 index 0000000000..35c0ad8260 --- /dev/null +++ b/dist/core/components/organisms/dateRangePicker/DateRangePicker.d.ts @@ -0,0 +1,104 @@ +import * as React from 'react'; +import { CalendarProps, SharedProps } from "../calendar/Calendar"; +import { DateType, DateFormat } from "../calendar/types"; +import { InputMaskProps, PopoverProps } from "../../../index.type"; +import { Validators } from "../../../utils/types"; +export declare type InputOptions = Omit & { + label?: string; +}; +export declare type DateRangePickerProps = SharedProps & { + onRangeChange?: (startDate?: Date, endDate?: Date, startValue?: string, endValue?: string) => void; + children: React.ReactNode; + contentAlign?: 'left' | 'right'; + startDate?: DateType; + endDate?: DateType; + rangeLimit?: number; + withInput?: boolean; + singleInput?: boolean; + open?: boolean; + position: PopoverProps['position']; + inputFormat: DateFormat; + outputFormat: DateFormat; + inputOptions: InputOptions; + startInputOptions: InputOptions; + endInputOptions: InputOptions; + validators: Validators; + monthsInView?: CalendarProps['monthsInView']; +}; +export interface DateRangePickerState { + init: boolean; + startDate?: Date; + endDate?: Date; + startValue: string; + endValue: string; + startError: boolean; + endError: boolean; + yearNav?: number; + monthNav?: number; + open: boolean; +} +export declare class DateRangePicker extends React.Component { + static utils: { + getCurrentWeek: () => { + startDate: Date; + endDate: Date; + }; + getPreviousWeek: () => { + startDate: Date; + endDate: Date; + }; + getPreviousMonth: () => { + endDate: Date; + startDate: Date; + }; + getPrevious90Days: () => { + startDate: Date; + endDate: Date; + }; + getCustomDates: () => { + startDate: string; + endDate: string; + }; + getCurrentYear: () => number; + getCurrentMonth: () => number; + }; + static defaultProps: { + children: JSX.Element; + contentAlign: string; + monthsInView: undefined; + position: string; + inputFormat: string; + outputFormat: string; + validators: ((val: string, format: string) => boolean)[]; + inputOptions: { + label: string; + }; + startInputOptions: { + label: string; + }; + endInputOptions: { + label: string; + }; + size: string; + view: string; + firstDayOfWeek: string; + jumpView: boolean; + }; + monthsInView: number; + constructor(props: DateRangePickerProps); + componentDidUpdate(prevProps: DateRangePickerProps, prevState: DateRangePickerState): void; + getDate: (startDate?: Date | undefined, endDate?: Date | undefined) => { + startValue: string; + endValue: string; + }; + getErrors: (startDate?: Date | undefined, endDate?: Date | undefined) => { + startError: boolean; + endError: boolean; + }; + getInRangeError: () => boolean; + onRangeChangeHandler: (sDate?: Date | undefined, eDate?: Date | undefined) => void; + onToggleHandler: (o: boolean, type?: string | undefined) => void; + renderCalendar(): JSX.Element; + render(): JSX.Element; +} +export default DateRangePicker; diff --git a/dist/core/components/organisms/dateRangePicker/SingleInputTrigger.d.ts b/dist/core/components/organisms/dateRangePicker/SingleInputTrigger.d.ts new file mode 100644 index 0000000000..ef1605b0c3 --- /dev/null +++ b/dist/core/components/organisms/dateRangePicker/SingleInputTrigger.d.ts @@ -0,0 +1,10 @@ +import { DateRangePickerProps, DateRangePickerState } from "./DateRangePicker"; +declare type TriggerProps = { + inputFormat: DateRangePickerProps['inputFormat']; + inputOptions: DateRangePickerProps['startInputOptions']; + validators: DateRangePickerProps['validators']; + state: DateRangePickerState; + setState: any; +}; +export declare const SingleInputTrigger: (props: TriggerProps) => JSX.Element; +export {}; diff --git a/dist/core/components/organisms/dateRangePicker/Trigger.d.ts b/dist/core/components/organisms/dateRangePicker/Trigger.d.ts new file mode 100644 index 0000000000..8c03dc25bb --- /dev/null +++ b/dist/core/components/organisms/dateRangePicker/Trigger.d.ts @@ -0,0 +1,11 @@ +import { DateRangePickerProps, DateRangePickerState } from "./DateRangePicker"; +declare type TriggerProps = { + inputFormat: DateRangePickerProps['inputFormat']; + startInputOptions: DateRangePickerProps['startInputOptions']; + endInputOptions: DateRangePickerProps['endInputOptions']; + validators: DateRangePickerProps['validators']; + state: DateRangePickerState; + setState: any; +}; +export declare const Trigger: (props: TriggerProps) => JSX.Element; +export {}; diff --git a/dist/core/components/organisms/dateRangePicker/index.d.ts b/dist/core/components/organisms/dateRangePicker/index.d.ts new file mode 100644 index 0000000000..2f5bccea06 --- /dev/null +++ b/dist/core/components/organisms/dateRangePicker/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./DateRangePicker"; +export * from "./DateRangePicker"; diff --git a/dist/core/components/organisms/dateRangePicker/utilities.d.ts b/dist/core/components/organisms/dateRangePicker/utilities.d.ts new file mode 100644 index 0000000000..46fabcb400 --- /dev/null +++ b/dist/core/components/organisms/dateRangePicker/utilities.d.ts @@ -0,0 +1,22 @@ +export declare const getCurrentYear: () => number; +export declare const getCurrentMonth: () => number; +export declare const getCurrentWeek: () => { + startDate: Date; + endDate: Date; +}; +export declare const getPreviousWeek: () => { + startDate: Date; + endDate: Date; +}; +export declare const getPreviousMonth: () => { + endDate: Date; + startDate: Date; +}; +export declare const getPrevious90Days: () => { + startDate: Date; + endDate: Date; +}; +export declare const getCustomDates: () => { + startDate: string; + endDate: string; +}; diff --git a/dist/core/components/organisms/grid/Cell.d.ts b/dist/core/components/organisms/grid/Cell.d.ts new file mode 100644 index 0000000000..3dfd30f21d --- /dev/null +++ b/dist/core/components/organisms/grid/Cell.d.ts @@ -0,0 +1,28 @@ +import * as React from 'react'; +import { RowData, ColumnSchema } from "./Grid"; +import { GridHeadProps } from "./GridHead"; +interface SharedCellProps { + schema: ColumnSchema; + colIndex: number; + nestedRowData?: React.ReactNode; +} +declare type HeaderCellProps = SharedCellProps & { + onSelectAll: GridHeadProps['onSelectAll']; + onMenuChange: GridHeadProps['onMenuChange']; + onFilterChange: GridHeadProps['onFilterChange']; + updateColumnSchema: GridHeadProps['updateColumnSchema']; + reorderColumn: GridHeadProps['reorderColumn']; + setIsDragged: React.Dispatch>; +}; +declare type BodyCellProps = SharedCellProps & { + data: RowData; + rowIndex: number; + expandedState: [boolean, React.Dispatch>]; +}; +export declare type HeaderCellRendererProps = HeaderCellProps & SharedCellProps; +export declare type CellProps = Partial & Partial & SharedCellProps & { + isHead?: boolean; + firstCell: boolean; +}; +export declare const Cell: (props: CellProps) => JSX.Element | null; +export default Cell; diff --git a/dist/core/components/organisms/grid/Grid.d.ts b/dist/core/components/organisms/grid/Grid.d.ts new file mode 100644 index 0000000000..d5e79160f2 --- /dev/null +++ b/dist/core/components/organisms/grid/Grid.d.ts @@ -0,0 +1,142 @@ +import * as React from 'react'; +import { DropdownProps, CheckboxProps, GridCellProps } from "../../../index.type"; +import { HeaderCellRendererProps } from "./Cell"; +import { BaseProps } from "../../../utils/types"; +import { NestedRowProps } from "./GridNestedRow"; +export declare type SortType = 'asc' | 'desc' | 'unsort'; +export declare type Pinned = 'left' | 'right' | 'unpin'; +export declare type Alignment = 'left' | 'right' | 'center'; +export declare type Comparator = (a: RowData, b: RowData) => -1 | 0 | 1; +export declare type Filter = any[]; +export declare type GridRef = HTMLDivElement | null; +export declare type PageInfo = { + page: number; + scrollTop: number; +}; +export interface FetchDataOptions { + page?: number; + pageSize?: number; + filterList?: GridProps['filterList']; + sortingList?: GridProps['sortingList']; + searchTerm?: string; +} +export declare type fetchDataFunction = (options: FetchDataOptions) => Promise<{ + searchTerm?: string; + count: number; + data: Data; + schema: Schema; +}>; +export declare type updateSortingListFunction = (newSortingList: GridProps['sortingList']) => void; +export declare type updateFilterListFunction = (newFilterList: GridProps['filterList']) => void; +export declare type updateSchemaFunction = (newSchema: Schema) => void; +export declare type updateSelectAllFunction = (attr: GridProps['selectAll']) => void; +export declare type updateColumnSchemaFunction = (name: ColumnSchema['name'], schemaUpdate: Partial) => void; +export declare type updateRowDataFunction = (rowIndexes: number[], dataUpdate: Partial) => void; +export declare type sortDataFunction = (comparator: Comparator, type: SortType) => void; +export declare type reorderColumnFunction = (from: string, to: string) => void; +export declare type onSelectFn = (rowIndex: number, selected: boolean) => void; +export declare type onFilterChangeFn = (name: ColumnSchema['name'], selected: any) => void; +export declare type onSelectAllFunction = (selected: boolean, selectAll?: boolean, headerCheckbox?: boolean) => void; +export declare type onFilterChangeFunction = (data: RowData, filters: Filter) => boolean; +export declare type onRowClickFunction = (data: RowData, rowIndex?: number) => void; +export declare type onMenuChangeFn = (name: ColumnSchema['name'], selected: any) => void; +export declare type updatePrevPageInfoFunction = (value: PageInfo) => void; +export declare type CellType = 'DEFAULT' | 'WITH_META_LIST' | 'AVATAR' | 'AVATAR_WITH_TEXT' | 'AVATAR_WITH_META_LIST' | 'STATUS_HINT' | 'ICON'; +export declare type ColumnSchema = { + name: string; + displayName: string; + width?: React.ReactText; + minWidth?: React.ReactText; + maxWidth?: React.ReactText; + resizable?: boolean; + sorting?: boolean; + comparator?: Comparator; + separator?: boolean; + pinned?: Pinned; + hidden?: boolean; + filters?: DropdownProps['options']; + onFilterChange?: onFilterChangeFunction; + translate?: (data: RowData) => RowData; + cellType?: CellType; + headerCellRenderer?: React.FC; + cellRenderer?: React.FC; + align?: Alignment; + tooltip?: boolean; +}; +export declare type RowData = Record & { + _selected?: boolean; + disabled?: boolean; +}; +export declare type GridSize = 'comfortable' | 'standard' | 'compressed' | 'tight'; +export declare type GridType = 'resource' | 'data'; +export declare type Data = RowData[]; +export declare type Schema = ColumnSchema[]; +export interface GridProps extends BaseProps { + size: GridSize; + type: GridType; + onRowClick?: onRowClickFunction; + loaderSchema: Schema; + schema: Schema; + data: Data; + totalRecords: number; + loading: boolean; + error: boolean; + updateData?: () => void; + updateSchema?: updateSchemaFunction; + showHead?: boolean; + showMenu?: boolean; + draggable?: boolean; + nestedRows?: boolean; + nestedRowRenderer?: React.FC; + withPagination?: boolean; + page: number; + pageSize: number; + withCheckbox?: boolean; + onSelect?: onSelectFn; + onSelectAll?: onSelectAllFunction; + errorTemplate?: React.FunctionComponent | React.ReactNode; + sortingList: { + name: ColumnSchema['name']; + type: SortType; + }[]; + updateSortingList?: updateSortingListFunction; + filterList: Record; + updateFilterList?: updateFilterListFunction; + selectAll?: { + checked: boolean; + indeterminate: boolean; + }; + headCellTooltip?: boolean; + separator?: boolean; + showFilters: boolean; +} +export interface GridState { + init: boolean; + prevPageInfo: PageInfo; +} +export declare class Grid extends React.Component { + static defaultProps: GridProps; + gridRef: GridRef; + isHeadSyncing: boolean; + isBodySyncing: boolean; + constructor(props: GridProps); + componentDidMount(): void; + forceRerender(): void; + componentWillUnmount(): void; + componentDidUpdate(prevProps: GridProps, prevState: GridState): void; + addScrollListeners(): void; + removeScrollListeners(): void; + syncScroll: (type: string) => () => void; + updateRenderedSchema: (newSchema: Schema) => void; + updateColumnSchema: updateColumnSchemaFunction; + reorderColumn: reorderColumnFunction; + updateSortingList: (sortingList: GridProps['sortingList']) => void; + updateFilterList: (filterList: GridProps['filterList']) => void; + onMenuChange: onMenuChangeFn; + onFilterChange: onFilterChangeFn; + onSelect: onSelectFn; + onSelectAll: CheckboxProps['onChange']; + updatePrevPageInfo: updatePrevPageInfoFunction; + render(): JSX.Element; +} +export default Grid; diff --git a/dist/core/components/organisms/grid/GridBody.d.ts b/dist/core/components/organisms/grid/GridBody.d.ts new file mode 100644 index 0000000000..b6e66c1bf9 --- /dev/null +++ b/dist/core/components/organisms/grid/GridBody.d.ts @@ -0,0 +1,9 @@ +import { GridState, onSelectFn, Schema, updatePrevPageInfoFunction } from "./Grid"; +export interface GridBodyProps { + schema: Schema; + onSelect: onSelectFn; + prevPageInfo: GridState['prevPageInfo']; + updatePrevPageInfo: updatePrevPageInfoFunction; +} +export declare const GridBody: (props: GridBodyProps) => any; +export default GridBody; diff --git a/dist/core/components/organisms/grid/GridCell.d.ts b/dist/core/components/organisms/grid/GridCell.d.ts new file mode 100644 index 0000000000..5d9a48da32 --- /dev/null +++ b/dist/core/components/organisms/grid/GridCell.d.ts @@ -0,0 +1,27 @@ +import { StatusHintProps } from "../../../index.type"; +import { ColumnSchema, RowData, GridSize } from "./Grid"; +export interface CellData { + title: string; + metaList?: string[]; + icon?: string; + image?: string; + firstName?: string; + lastName?: string; + statusAppearance?: StatusHintProps['appearance']; +} +export interface PartialCellProps { + data: RowData; + schema: ColumnSchema; + loading?: boolean; + expanded?: boolean; +} +export interface GridCellProps extends PartialCellProps { + size?: GridSize; + rowIndex?: number; + colIndex?: number; +} +export declare const GridCell: { + (props: GridCellProps): JSX.Element | null; + displayName: string; +}; +export default GridCell; diff --git a/dist/core/components/organisms/grid/GridContext.d.ts b/dist/core/components/organisms/grid/GridContext.d.ts new file mode 100644 index 0000000000..318780ed2f --- /dev/null +++ b/dist/core/components/organisms/grid/GridContext.d.ts @@ -0,0 +1,9 @@ +import * as React from 'react'; +import { GridProps } from "../../../index.type"; +import { GridRef } from "./Grid"; +declare type ContextProps = GridProps & { + ref: GridRef; +}; +declare const context: React.Context; +export declare const GridProvider: React.Provider; +export default context; diff --git a/dist/core/components/organisms/grid/GridHead.d.ts b/dist/core/components/organisms/grid/GridHead.d.ts new file mode 100644 index 0000000000..81170d8fbb --- /dev/null +++ b/dist/core/components/organisms/grid/GridHead.d.ts @@ -0,0 +1,12 @@ +import { onMenuChangeFn, onFilterChangeFn, updateColumnSchemaFunction, reorderColumnFunction } from "./Grid"; +import { GridProps, CheckboxProps } from "../../../index.type"; +export interface GridHeadProps { + schema: GridProps['schema']; + onSelectAll: CheckboxProps['onChange']; + onMenuChange: onMenuChangeFn; + onFilterChange: onFilterChangeFn; + updateColumnSchema: updateColumnSchemaFunction; + reorderColumn: reorderColumnFunction; +} +export declare const GridHead: (props: GridHeadProps) => JSX.Element; +export default GridHead; diff --git a/dist/core/components/organisms/grid/GridNestedRow.d.ts b/dist/core/components/organisms/grid/GridNestedRow.d.ts new file mode 100644 index 0000000000..ba650ac1c4 --- /dev/null +++ b/dist/core/components/organisms/grid/GridNestedRow.d.ts @@ -0,0 +1,17 @@ +import * as React from 'react'; +import { GridProps } from "../../../index.type"; +import { RowData } from "./Grid"; +export interface GridNestedRowProps { + data: RowData; + rowIndex: number; + expanded?: boolean; +} +export interface NestedRowProps { + rowIndex: number; + data: RowData; + schema: GridProps['schema']; + loading: GridProps['loading']; + expanded?: boolean; +} +export declare const GridNestedRow: (props: GridNestedRowProps) => React.ReactElement | null; +export default GridNestedRow; diff --git a/dist/core/components/organisms/grid/GridRow.d.ts b/dist/core/components/organisms/grid/GridRow.d.ts new file mode 100644 index 0000000000..64751f68ae --- /dev/null +++ b/dist/core/components/organisms/grid/GridRow.d.ts @@ -0,0 +1,16 @@ +import { RowData, Schema } from "./Grid"; +import { GridBodyProps } from "./GridBody"; +export interface GridRowProps { + schema: Schema; + data: RowData; + rowIndex: number; + onSelect: GridBodyProps['onSelect']; + className?: string; +} +export declare const GridRow: { + (props: GridRowProps): JSX.Element; + defaultProps: { + data: {}; + }; +}; +export default GridRow; diff --git a/dist/core/components/organisms/grid/columnUtility.d.ts b/dist/core/components/organisms/grid/columnUtility.d.ts new file mode 100644 index 0000000000..4239dc0eec --- /dev/null +++ b/dist/core/components/organisms/grid/columnUtility.d.ts @@ -0,0 +1,26 @@ +/// +import { GridProps } from "../../../index.type"; +import { ColumnSchema, Pinned, SortType, CellType, GridRef, updateColumnSchemaFunction, updateSortingListFunction } from "./Grid"; +declare type resizeColFn = (gridInfo: { + updateColumnSchema: updateColumnSchemaFunction; +}, name: ColumnSchema['name'], el: GridRef) => void; +declare type sortColumnFn = (gridInfo: { + sortingList: GridProps['sortingList']; + updateSortingList: updateSortingListFunction; +}, name: ColumnSchema['name'], type: SortType) => void; +declare type pinColumnFn = (gridInfo: { + updateColumnSchema: updateColumnSchemaFunction; +}, name: ColumnSchema['name'], type: Pinned) => void; +declare type hideColumnFn = (gridInfo: { + updateColumnSchema: updateColumnSchemaFunction; +}, name: ColumnSchema['name'], value: boolean) => void; +export declare const resizeCol: resizeColFn; +export declare const sortColumn: sortColumnFn; +export declare const pinColumn: pinColumnFn; +export declare const hideColumn: hideColumnFn; +export declare function getWidth({ ref, withCheckbox }: { + ref: GridRef; + withCheckbox?: boolean; +}, width: React.ReactText): import("react").ReactText; +export declare function getCellSize(cellType: CellType): any; +export {}; diff --git a/dist/core/components/organisms/grid/defaultProps.d.ts b/dist/core/components/organisms/grid/defaultProps.d.ts new file mode 100644 index 0000000000..457272cc5c --- /dev/null +++ b/dist/core/components/organisms/grid/defaultProps.d.ts @@ -0,0 +1,3 @@ +import { GridProps } from "../../../index.type"; +export declare const defaultProps: GridProps; +export default defaultProps; diff --git a/dist/core/components/organisms/grid/index.d.ts b/dist/core/components/organisms/grid/index.d.ts new file mode 100644 index 0000000000..e8a8dd689f --- /dev/null +++ b/dist/core/components/organisms/grid/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Grid"; +export * from "./Grid"; diff --git a/dist/core/components/organisms/grid/rowUtility.d.ts b/dist/core/components/organisms/grid/rowUtility.d.ts new file mode 100644 index 0000000000..3d88824a09 --- /dev/null +++ b/dist/core/components/organisms/grid/rowUtility.d.ts @@ -0,0 +1,10 @@ +import { RowData, Data, ColumnSchema, Schema, FetchDataOptions } from "./Grid"; +export declare const updateBatchData: (data: Data, rowIndexes: number[], dataUpdate: Partial, selectDisabledRow?: boolean | undefined) => Data; +export declare function translateData(schema: ColumnSchema, data: RowData): { + [x: string]: any; + _selected?: boolean | undefined; + disabled?: boolean | undefined; +}; +export declare const filterData: (schema: Schema | undefined, data: Data | undefined, filterList: FetchDataOptions['filterList']) => Data; +export declare const sortData: (schema: Schema | undefined, data: Data | undefined, sortingList: FetchDataOptions['sortingList']) => Data; +export declare const paginateData: (data: Data | undefined, page: number, pageSize: number) => Data; diff --git a/dist/core/components/organisms/grid/utility.d.ts b/dist/core/components/organisms/grid/utility.d.ts new file mode 100644 index 0000000000..badce77174 --- /dev/null +++ b/dist/core/components/organisms/grid/utility.d.ts @@ -0,0 +1,13 @@ +import { Data, Schema } from "./Grid"; +import { GridProps } from "../../../index.type"; +export * from "./columnUtility"; +export * from "./rowUtility"; +export declare const moveToIndex: (arr: any[], from: number, to: number) => any[]; +export declare const getTotalPages: (totalRecords: number, pageSize: number) => number; +export declare const getSelectAll: (tableData: Data, selectDisabledRow?: boolean | undefined, clearSelection?: boolean | undefined) => { + indeterminate: boolean; + checked: boolean; +}; +export declare const hasSchema: (schema: Schema) => boolean; +export declare const getSchema: (schema: GridProps['schema'], loading: GridProps['loading'], loaderSchema: GridProps['loaderSchema']) => GridProps['schema']; +export declare const getPluralSuffix: (count: number) => "" | "s"; diff --git a/dist/core/components/organisms/horizontalNav/HorizontalNav.d.ts b/dist/core/components/organisms/horizontalNav/HorizontalNav.d.ts new file mode 100644 index 0000000000..8e18e2f7ee --- /dev/null +++ b/dist/core/components/organisms/horizontalNav/HorizontalNav.d.ts @@ -0,0 +1,6 @@ +import { VerticalNavProps } from "../../../index.type"; +import { BaseProps } from "../../../utils/types"; +export declare type HorizontalNavProps = BaseProps & Pick; +export declare type Align = 'left' | 'center'; +export declare const HorizontalNav: (props: HorizontalNavProps) => JSX.Element; +export default HorizontalNav; diff --git a/dist/core/components/organisms/horizontalNav/index.d.ts b/dist/core/components/organisms/horizontalNav/index.d.ts new file mode 100644 index 0000000000..431e4c4a2c --- /dev/null +++ b/dist/core/components/organisms/horizontalNav/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./HorizontalNav"; +export * from "./HorizontalNav"; diff --git a/dist/core/components/organisms/inlineMessage/InlineMessage.d.ts b/dist/core/components/organisms/inlineMessage/InlineMessage.d.ts new file mode 100644 index 0000000000..c6a550af18 --- /dev/null +++ b/dist/core/components/organisms/inlineMessage/InlineMessage.d.ts @@ -0,0 +1,18 @@ +import { BaseProps } from "../../../utils/types"; +import { MessageAppearance } from "../../../common.type"; +export declare type MessageSize = 'regular' | 'small'; +export interface InlineMessageProps extends BaseProps { + appearance: MessageAppearance; + description: string; + size: MessageSize; +} +export declare const InlineMessage: { + (props: InlineMessageProps): JSX.Element; + displayName: string; + defaultProps: { + appearance: string; + description: string; + size: string; + }; +}; +export default InlineMessage; diff --git a/dist/core/components/organisms/inlineMessage/index.d.ts b/dist/core/components/organisms/inlineMessage/index.d.ts new file mode 100644 index 0000000000..6e9c5e30fa --- /dev/null +++ b/dist/core/components/organisms/inlineMessage/index.d.ts @@ -0,0 +1 @@ +export * from "./InlineMessage"; diff --git a/dist/core/components/organisms/list/List.d.ts b/dist/core/components/organisms/list/List.d.ts new file mode 100644 index 0000000000..e81450b1f6 --- /dev/null +++ b/dist/core/components/organisms/list/List.d.ts @@ -0,0 +1,35 @@ +import { TableProps } from "../../../index.type"; +import { SyncTableProps, AsyncTableProps } from "../table"; +declare type ExcludeTypes = 'showHead' | 'draggable' | 'showMenu' | 'headCellTooltip' | 'filterPosition'; +export declare type ListProps = Omit; +export declare type SyncListProps = Omit; +export declare type AsyncListProps = Omit; +export declare const List: { + (props: ListProps): JSX.Element; + defaultProps: { + type: string; + size: string; + showHead: boolean; + showMenu: boolean; + multipleSorting: boolean; + headerOptions: {}; + withPagination: boolean; + paginationType: string; + page: number; + pageSize: number; + draggable: boolean; + data: never[]; + displayData: never[]; + schema: never[]; + loading: boolean; + error: boolean; + loaderSchema: never[]; + sortingList: never[]; + filterList: {}; + filterPosition: string; + searchDebounceDuration: number; + pageJumpDebounceDuration: number; + errorTemplate: (props: import("../table").ErrorTemplateProps) => JSX.Element; + }; +}; +export default List; diff --git a/dist/core/components/organisms/list/index.d.ts b/dist/core/components/organisms/list/index.d.ts new file mode 100644 index 0000000000..0d677ba08d --- /dev/null +++ b/dist/core/components/organisms/list/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./List"; +export * from "./List"; diff --git a/dist/core/components/organisms/listbox/Listbox.d.ts b/dist/core/components/organisms/listbox/Listbox.d.ts new file mode 100644 index 0000000000..5317bae119 --- /dev/null +++ b/dist/core/components/organisms/listbox/Listbox.d.ts @@ -0,0 +1,33 @@ +import * as React from 'react'; +import { BaseProps, BaseHtmlProps } from "../../../utils/types"; +import { TListboxSize } from "../../../common.type"; +declare type ListboxType = 'option' | 'description' | 'resource'; +export declare type TagType = 'ul' | 'ol' | 'div' | 'nav'; +export interface ListboxProps extends BaseProps, BaseHtmlProps { + children: React.ReactNode; + size: TListboxSize; + type: ListboxType; + draggable?: boolean; + tagName: TagType; + showDivider: boolean; +} +export declare const ListboxContext: React.Context>; +export declare const Listbox: { + (props: ListboxProps): JSX.Element; + displayName: string; + defaultProps: { + tagName: string; + size: string; + type: string; + draggable: boolean; + showDivider: boolean; + }; + Item: { + (props: import("./listboxItem").ListboxItemProps): JSX.Element; + displayName: string; + defaultProps: { + tagName: string; + }; + }; +}; +export default Listbox; diff --git a/dist/core/components/organisms/listbox/index.d.ts b/dist/core/components/organisms/listbox/index.d.ts new file mode 100644 index 0000000000..b9c733d070 --- /dev/null +++ b/dist/core/components/organisms/listbox/index.d.ts @@ -0,0 +1,3 @@ +export { default } from "./Listbox"; +export * from "./Listbox"; +export * from "./listboxItem"; diff --git a/dist/core/components/organisms/listbox/listboxItem/ListBody.d.ts b/dist/core/components/organisms/listbox/listboxItem/ListBody.d.ts new file mode 100644 index 0000000000..db725f4bcb --- /dev/null +++ b/dist/core/components/organisms/listbox/listboxItem/ListBody.d.ts @@ -0,0 +1,6 @@ +import { ListboxItemProps } from "./ListboxItem"; +export declare const ListBody: { + (props: ListboxItemProps): JSX.Element; + displayName: string; +}; +export default ListBody; diff --git a/dist/core/components/organisms/listbox/listboxItem/ListboxItem.d.ts b/dist/core/components/organisms/listbox/listboxItem/ListboxItem.d.ts new file mode 100644 index 0000000000..4969df110f --- /dev/null +++ b/dist/core/components/organisms/listbox/listboxItem/ListboxItem.d.ts @@ -0,0 +1,24 @@ +import * as React from 'react'; +import { BaseProps, BaseHtmlProps } from "../../../../utils/types"; +export declare type ItemTagType = 'li' | 'div' | 'a'; +export interface ListboxItemProps extends BaseProps, BaseHtmlProps { + children: React.ReactNode; + nestedBody?: React.ReactNode; + expanded?: boolean; + disabled?: boolean; + selected?: boolean; + activated?: boolean; + id?: string; + value?: any; + tagName?: ItemTagType; + onClick?: (e: React.MouseEvent, id?: string, value?: string) => void; + tabIndex?: number; +} +export declare const ListboxItem: { + (props: ListboxItemProps): JSX.Element; + displayName: string; + defaultProps: { + tagName: string; + }; +}; +export default ListboxItem; diff --git a/dist/core/components/organisms/listbox/listboxItem/index.d.ts b/dist/core/components/organisms/listbox/listboxItem/index.d.ts new file mode 100644 index 0000000000..ef11295333 --- /dev/null +++ b/dist/core/components/organisms/listbox/listboxItem/index.d.ts @@ -0,0 +1 @@ +export * from "./ListboxItem"; diff --git a/dist/core/components/organisms/listbox/nestedList/Animation.d.ts b/dist/core/components/organisms/listbox/nestedList/Animation.d.ts new file mode 100644 index 0000000000..dc00d4d031 --- /dev/null +++ b/dist/core/components/organisms/listbox/nestedList/Animation.d.ts @@ -0,0 +1,2 @@ +export declare const getAnimationClass: (uniqueKey: string, expanded?: boolean | undefined) => string; +export declare const menuItemAnimation: (listItemRef: React.RefObject, uniqueKey: string) => string; diff --git a/dist/core/components/organisms/listbox/nestedList/NestedList.d.ts b/dist/core/components/organisms/listbox/nestedList/NestedList.d.ts new file mode 100644 index 0000000000..1c53f5c657 --- /dev/null +++ b/dist/core/components/organisms/listbox/nestedList/NestedList.d.ts @@ -0,0 +1,7 @@ +import * as React from 'react'; +export interface NestedListProp { + expanded?: boolean; + nestedBody?: React.ReactNode; +} +export declare const NestedList: (props: NestedListProp) => JSX.Element; +export default NestedList; diff --git a/dist/core/components/organisms/listbox/nestedList/index.d.ts b/dist/core/components/organisms/listbox/nestedList/index.d.ts new file mode 100644 index 0000000000..a4c2e96941 --- /dev/null +++ b/dist/core/components/organisms/listbox/nestedList/index.d.ts @@ -0,0 +1 @@ +export * from "./NestedList"; diff --git a/dist/core/components/organisms/listbox/reorderList/Draggable.d.ts b/dist/core/components/organisms/listbox/reorderList/Draggable.d.ts new file mode 100644 index 0000000000..ac28ebb045 --- /dev/null +++ b/dist/core/components/organisms/listbox/reorderList/Draggable.d.ts @@ -0,0 +1,71 @@ +import * as React from 'react'; +import type { IProps, TEvent } from "./types"; +declare class Draggable extends React.Component> { + listRef: React.RefObject; + ghostRef: React.RefObject; + topOffsets: number[]; + itemTranslateOffsets: number[]; + initialYOffset: number; + lastScroll: number; + lastYOffset: number; + lastListYOffset: number; + dropTimeout?: number; + needle: number; + afterIndex: number; + state: { + itemDragged: number; + itemDraggedOutOfBounds: number; + selectedItem: number; + initialX: number; + initialY: number; + targetX: number; + targetY: number; + targetHeight: number; + targetWidth: number; + scrollingSpeed: number; + scrollWindow: boolean; + }; + schdOnMouseMove: { + (e: MouseEvent): void; + cancel(): void; + }; + schdOnTouchMove: { + (e: TouchEvent): void; + cancel(): void; + }; + schdOnEnd: { + (e: Event): void; + cancel(): void; + }; + constructor(props: IProps); + componentDidMount(): void; + componentDidUpdate(_prevProps: any, prevState: { + scrollingSpeed: number; + }): void; + componentWillUnmount(): void; + doScrolling: () => void; + getChildren: () => Element[]; + static defaultProps: { + transitionDuration: number; + lockVertically: boolean; + removableByMove: boolean; + }; + calculateOffsets: () => void; + getTargetIndex: (e: TEvent) => number; + onMouseOrTouchStart: (e: MouseEvent & TouchEvent) => void; + getYOffset: () => number; + onStart: (target: HTMLElement, clientX: number, clientY: number, index: number) => void; + onMouseMove: (e: MouseEvent) => void; + onTouchMove: (e: TouchEvent) => void; + onWheel: (e: React.WheelEvent) => void; + onMove: (clientX: number, clientY: number) => null | undefined; + moveOtherItems: () => void; + autoScrolling: (clientY: number) => void; + animateItems: (needle: number, movedItem: number, offset: number, animateMovedItem?: boolean) => void; + isDraggedItemOutOfBounds: () => boolean; + onEnd: (e: TouchEvent & MouseEvent) => void; + finishDrop: () => void; + onKeyDown: (e: React.KeyboardEvent) => void; + render(): JSX.Element; +} +export default Draggable; diff --git a/dist/core/components/organisms/listbox/reorderList/DraggableList.d.ts b/dist/core/components/organisms/listbox/reorderList/DraggableList.d.ts new file mode 100644 index 0000000000..b124da06f4 --- /dev/null +++ b/dist/core/components/organisms/listbox/reorderList/DraggableList.d.ts @@ -0,0 +1,2 @@ +import { ListboxProps } from "../../../../index.type"; +export declare const DraggableList: (props: ListboxProps) => JSX.Element; diff --git a/dist/core/components/organisms/listbox/reorderList/index.d.ts b/dist/core/components/organisms/listbox/reorderList/index.d.ts new file mode 100644 index 0000000000..1dec692e7a --- /dev/null +++ b/dist/core/components/organisms/listbox/reorderList/index.d.ts @@ -0,0 +1 @@ +export * from "./DraggableList"; diff --git a/dist/core/components/organisms/listbox/reorderList/types.d.ts b/dist/core/components/organisms/listbox/reorderList/types.d.ts new file mode 100644 index 0000000000..2826599ebb --- /dev/null +++ b/dist/core/components/organisms/listbox/reorderList/types.d.ts @@ -0,0 +1,46 @@ +/// +export interface IItemProps { + key?: number; + tabIndex?: number; + 'aria-roledescription'?: string; + onKeyDown?: (e: React.KeyboardEvent) => void; + onWheel?: (e: React.WheelEvent) => void; + style?: React.CSSProperties; + ref?: React.RefObject; +} +export interface RenderItemParams { + value: Value; + props: IItemProps; + index?: number; + isDragged: boolean; + isSelected: boolean; + isOutOfBounds: boolean; +} +export interface RenderListParams { + children: React.ReactNode; + isDragged: boolean; + props: { + ref: React.RefObject; + }; +} +export interface BeforeDragParams { + elements: Element[]; + index: number; +} +export interface OnChangeMeta { + oldIndex: number; + newIndex: number; + targetRect: ClientRect; +} +export interface IProps { + beforeDrag?: (params: BeforeDragParams) => void; + renderItem: (params: RenderItemParams) => React.ReactNode; + renderList: (props: RenderListParams) => React.ReactNode; + values: any; + onChange: (meta: OnChangeMeta) => void; + transitionDuration: number; + removableByMove: boolean; + lockVertically: boolean; + container?: Element | null; +} +export declare type TEvent = React.MouseEvent | React.TouchEvent | React.KeyboardEvent; diff --git a/dist/core/components/organisms/listbox/reorderList/utils.d.ts b/dist/core/components/organisms/listbox/reorderList/utils.d.ts new file mode 100644 index 0000000000..df72689dcd --- /dev/null +++ b/dist/core/components/organisms/listbox/reorderList/utils.d.ts @@ -0,0 +1,10 @@ +export declare function arrayMove(array: T[], from: number, to: number): T[]; +export declare function getTranslateOffset(element: Element): number; +export declare function isTouchEvent(event: TouchEvent & MouseEvent): number; +export declare function transformItem(element: Element, offsetY?: number | null, offsetX?: number | null): void; +export declare function setItemTransition(element: Element, duration: number, timing?: string): void; +export declare function binarySearch(array: number[], targetValue: number): number; +export declare const schd: (fn: any) => { + (...args: any[]): void; + cancel(): void; +}; diff --git a/dist/core/components/organisms/listbox/utils.d.ts b/dist/core/components/organisms/listbox/utils.d.ts new file mode 100644 index 0000000000..40319c3fef --- /dev/null +++ b/dist/core/components/organisms/listbox/utils.d.ts @@ -0,0 +1 @@ +export declare const onKeyDown: (event: React.KeyboardEvent) => void; diff --git a/dist/core/components/organisms/menu/Menu.d.ts b/dist/core/components/organisms/menu/Menu.d.ts new file mode 100644 index 0000000000..383ca13acf --- /dev/null +++ b/dist/core/components/organisms/menu/Menu.d.ts @@ -0,0 +1,49 @@ +import React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { PopoverProps } from "../../../index.type"; +export interface MenuProps extends BaseProps { + children: React.ReactNode; + open?: boolean; + position: PopoverProps['position']; + trigger?: React.ReactElement; + maxHeight?: number; + minHeight?: number; + width?: number; + triggerCoordinates?: { + x: number; + y: number; + }; +} +export declare const Menu: { + (props: MenuProps): JSX.Element; + Group: { + (props: import("./MenuGroup").MenuGroupProps): JSX.Element; + defaultProps: { + showDivider: boolean; + }; + }; + Item: { + (props: import("./MenuItem").MenuItemProps): JSX.Element; + displayName: string; + defaultProps: { + tagName: string; + }; + }; + List: { + (props: import("./MenuList").MenuListProps): JSX.Element; + defaultProps: { + type: string; + showDivider: boolean; + tagName: string; + size: string; + }; + }; + Trigger: (props: import("./trigger/MenuTrigger").MenuTriggerProps) => JSX.Element; + SubMenu: (props: import("./SubMenu").SubMenuProps) => JSX.Element; + defaultProps: { + width: number; + maxHeight: number; + position: string; + }; +}; +export default Menu; diff --git a/dist/core/components/organisms/menu/MenuContext.d.ts b/dist/core/components/organisms/menu/MenuContext.d.ts new file mode 100644 index 0000000000..0b61c3b74b --- /dev/null +++ b/dist/core/components/organisms/menu/MenuContext.d.ts @@ -0,0 +1,13 @@ +import * as React from 'react'; +export declare type ContextProps = { + openPopover?: boolean; + focusedOption?: Element; + menuTriggerRef?: React.RefObject; + listRef?: React.RefObject; + setOpenPopover?: React.Dispatch>; + setHighlightFirstItem?: React.Dispatch>; + setHighlightLastItem?: React.Dispatch>; + setFocusedOption?: React.Dispatch>; +}; +export declare const MenuContext: React.Context; +export default MenuContext; diff --git a/dist/core/components/organisms/menu/MenuGroup.d.ts b/dist/core/components/organisms/menu/MenuGroup.d.ts new file mode 100644 index 0000000000..bb5496bfd7 --- /dev/null +++ b/dist/core/components/organisms/menu/MenuGroup.d.ts @@ -0,0 +1,14 @@ +import React from 'react'; +import { BaseProps } from "../../../utils/types"; +export interface MenuGroupProps extends BaseProps { + label?: string; + children: React.ReactElement; + showDivider?: boolean; +} +export declare const MenuGroup: { + (props: MenuGroupProps): JSX.Element; + defaultProps: { + showDivider: boolean; + }; +}; +export default MenuGroup; diff --git a/dist/core/components/organisms/menu/MenuItem.d.ts b/dist/core/components/organisms/menu/MenuItem.d.ts new file mode 100644 index 0000000000..b1d6941742 --- /dev/null +++ b/dist/core/components/organisms/menu/MenuItem.d.ts @@ -0,0 +1,19 @@ +import React from 'react'; +import { BaseProps, BaseHtmlProps } from "../../../utils/types"; +declare type ItemTagType = 'li' | 'div' | 'a'; +export interface MenuItemProps extends BaseProps, BaseHtmlProps { + tagName?: ItemTagType; + onClick?: (event: React.MouseEvent | React.KeyboardEvent) => void; + children: React.ReactNode; + disabled?: boolean; + onFocus?: (event: React.FocusEvent) => void; + onBlur?: (event: React.FocusEvent) => void; +} +export declare const MenuItem: { + (props: MenuItemProps): JSX.Element; + displayName: string; + defaultProps: { + tagName: string; + }; +}; +export default MenuItem; diff --git a/dist/core/components/organisms/menu/MenuList.d.ts b/dist/core/components/organisms/menu/MenuList.d.ts new file mode 100644 index 0000000000..da88e2c7c6 --- /dev/null +++ b/dist/core/components/organisms/menu/MenuList.d.ts @@ -0,0 +1,19 @@ +import React from 'react'; +import { BaseProps } from "../../../utils/types"; +import { TListboxSize } from "../../../common.type"; +declare type TagType = 'ul' | 'ol' | 'div' | 'nav'; +export interface MenuListProps extends BaseProps { + size?: TListboxSize; + tagName?: TagType; + children: React.ReactNode; +} +export declare const MenuList: { + (props: MenuListProps): JSX.Element; + defaultProps: { + type: string; + showDivider: boolean; + tagName: string; + size: string; + }; +}; +export default MenuList; diff --git a/dist/core/components/organisms/menu/SubMenu.d.ts b/dist/core/components/organisms/menu/SubMenu.d.ts new file mode 100644 index 0000000000..cdc4461919 --- /dev/null +++ b/dist/core/components/organisms/menu/SubMenu.d.ts @@ -0,0 +1,6 @@ +import React from 'react'; +export interface SubMenuProps { + children: React.ReactNode; +} +export declare const SubMenu: (props: SubMenuProps) => JSX.Element; +export default SubMenu; diff --git a/dist/core/components/organisms/menu/SubMenuContext.d.ts b/dist/core/components/organisms/menu/SubMenuContext.d.ts new file mode 100644 index 0000000000..b9e673a3b6 --- /dev/null +++ b/dist/core/components/organisms/menu/SubMenuContext.d.ts @@ -0,0 +1,10 @@ +import * as React from 'react'; +export declare type ContextProps = { + setParentOpen?: React.Dispatch>; + triggerRef?: React.RefObject; + parentListRef?: React.RefObject; + menuID?: string; + triggerID?: string; +}; +export declare const SubMenuContext: React.Context; +export default SubMenuContext; diff --git a/dist/core/components/organisms/menu/index.d.ts b/dist/core/components/organisms/menu/index.d.ts new file mode 100644 index 0000000000..95d2d27a7f --- /dev/null +++ b/dist/core/components/organisms/menu/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Menu"; +export * from "./Menu"; diff --git a/dist/core/components/organisms/menu/trigger/MenuTrigger.d.ts b/dist/core/components/organisms/menu/trigger/MenuTrigger.d.ts new file mode 100644 index 0000000000..03661745d2 --- /dev/null +++ b/dist/core/components/organisms/menu/trigger/MenuTrigger.d.ts @@ -0,0 +1,6 @@ +import { BaseProps } from "../../../../utils/types"; +export interface MenuTriggerProps extends BaseProps { + size?: 'tiny' | 'regular'; +} +export declare const MenuTrigger: (props: MenuTriggerProps) => JSX.Element; +export default MenuTrigger; diff --git a/dist/core/components/organisms/menu/trigger/utils.d.ts b/dist/core/components/organisms/menu/trigger/utils.d.ts new file mode 100644 index 0000000000..f86ffa803c --- /dev/null +++ b/dist/core/components/organisms/menu/trigger/utils.d.ts @@ -0,0 +1,3 @@ +import React from 'react'; +export declare const handleKeyDown: (event: React.KeyboardEvent, setOpenPopover?: React.Dispatch> | undefined, setHighlightFirstItem?: React.Dispatch> | undefined, setHighlightLastItem?: React.Dispatch> | undefined) => void; +export declare const focusListItem: (position: string, setFocusedOption?: React.Dispatch> | undefined, listRef?: any) => void; diff --git a/dist/core/components/organisms/menu/utils.d.ts b/dist/core/components/organisms/menu/utils.d.ts new file mode 100644 index 0000000000..68976fb003 --- /dev/null +++ b/dist/core/components/organisms/menu/utils.d.ts @@ -0,0 +1,2 @@ +import React from 'react'; +export declare const handleKeyDown: (event: React.KeyboardEvent, focusedOption: Element | undefined, setFocusedOption?: React.Dispatch> | undefined, setOpenPopover?: React.Dispatch> | undefined, menuTriggerRef?: React.RefObject | undefined, listRef?: React.RefObject | undefined, subListRef?: React.RefObject | null | undefined, isSubMenuTrigger?: boolean | undefined, triggerRef?: React.RefObject | React.MutableRefObject | undefined, menuID?: string | undefined, triggerID?: string | undefined, parentListRef?: React.RefObject | null | undefined) => void; diff --git a/dist/core/components/organisms/navigation/Navigation.d.ts b/dist/core/components/organisms/navigation/Navigation.d.ts new file mode 100644 index 0000000000..d89d1016dc --- /dev/null +++ b/dist/core/components/organisms/navigation/Navigation.d.ts @@ -0,0 +1,28 @@ +import { BaseProps } from "../../../utils/types"; +import { VerticalNavigationProps } from "./VerticalNavigation"; +export declare type LayoutType = 'vertical' | 'horizontal'; +export declare type Align = 'left' | 'center'; +export declare type Menu = { + name: string; + label: string; + link?: string; + icon?: string; + count?: number; + disabled?: boolean; + subMenu?: Menu[]; +}; +export interface NavigationProps extends BaseProps, VerticalNavigationProps { + type: LayoutType; + align: Align; +} +export declare const Navigation: { + (props: NavigationProps): JSX.Element; + defaultProps: { + type: string; + align: string; + expanded: boolean; + autoCollapse: boolean; + rounded: boolean; + }; +}; +export default Navigation; diff --git a/dist/core/components/organisms/navigation/VerticalNavigation.d.ts b/dist/core/components/organisms/navigation/VerticalNavigation.d.ts new file mode 100644 index 0000000000..1c1bf7526d --- /dev/null +++ b/dist/core/components/organisms/navigation/VerticalNavigation.d.ts @@ -0,0 +1,22 @@ +import { Menu, ActiveMenu } from "../../../utils/navigationHelper"; +export declare type LayoutType = 'vertical' | 'horizontal'; +export declare type Align = 'left' | 'center'; +export interface VerticalNavigationProps { + menus: Menu[]; + active?: ActiveMenu; + onClick?: (menu: Menu) => void; + rounded: boolean; + expanded: boolean; + footer?: boolean; + onToggle?: (expanded: boolean) => void; + autoCollapse: boolean; +} +export declare const VerticalNavigation: { + (props: VerticalNavigationProps): JSX.Element; + defaultProps: { + expanded: boolean; + autoCollapse: boolean; + rounded: boolean; + }; +}; +export default VerticalNavigation; diff --git a/dist/core/components/organisms/navigation/index.d.ts b/dist/core/components/organisms/navigation/index.d.ts new file mode 100644 index 0000000000..6873bdc793 --- /dev/null +++ b/dist/core/components/organisms/navigation/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Navigation"; +export * from "./Navigation"; diff --git a/dist/core/components/organisms/pageHeader/PageHeader.d.ts b/dist/core/components/organisms/pageHeader/PageHeader.d.ts new file mode 100644 index 0000000000..00244d0d7c --- /dev/null +++ b/dist/core/components/organisms/pageHeader/PageHeader.d.ts @@ -0,0 +1,25 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +export declare type navigationPositionType = 'center' | 'bottom'; +export interface PageHeaderProps extends BaseProps { + title: string; + navigation?: React.ReactNode; + stepper?: React.ReactNode; + actions?: React.ReactNode; + tabs?: React.ReactNode; + breadcrumbs?: React.ReactNode; + badge?: React.ReactNode; + status?: React.ReactNode; + meta?: React.ReactNode; + button?: React.ReactNode; + navigationPosition: navigationPositionType; + separator: boolean; +} +export declare const PageHeader: { + (props: PageHeaderProps): JSX.Element; + defaultProps: { + navigationPosition: string; + separator: boolean; + }; +}; +export default PageHeader; diff --git a/dist/core/components/organisms/pageHeader/index.d.ts b/dist/core/components/organisms/pageHeader/index.d.ts new file mode 100644 index 0000000000..fbf397de45 --- /dev/null +++ b/dist/core/components/organisms/pageHeader/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./PageHeader"; +export * from "./PageHeader"; diff --git a/dist/core/components/organisms/pageHeader/utils.d.ts b/dist/core/components/organisms/pageHeader/utils.d.ts new file mode 100644 index 0000000000..e2ff757cf2 --- /dev/null +++ b/dist/core/components/organisms/pageHeader/utils.d.ts @@ -0,0 +1,32 @@ +import * as React from 'react'; +import { navigationPositionType } from "./PageHeader"; +export declare const Status: (props: { + status: React.ReactNode; + meta: React.ReactNode; + navigationPosition: navigationPositionType; + navigation: React.ReactNode; + tabs: React.ReactNode; +}) => JSX.Element; +export declare const Action: (props: { + actions: React.ReactNode; + navigation: React.ReactNode; + stepper: React.ReactNode; +}) => JSX.Element; +export declare const Nav: (props: { + navigation: React.ReactNode; + stepper: React.ReactNode; +}) => JSX.Element | null; +export declare const CenterNav: (props: { + colSize: string; + breadcrumbs: React.ReactNode; + navigationPosition: navigationPositionType; + navigation: React.ReactNode; + stepper: React.ReactNode; +}) => JSX.Element; +export declare const BackButton: (props: { + button: React.ReactNode; +}) => JSX.Element; +export declare const Title: (props: { + badge: React.ReactNode; + title: string; +}) => JSX.Element; diff --git a/dist/core/components/organisms/select/SearchInput.d.ts b/dist/core/components/organisms/select/SearchInput.d.ts new file mode 100644 index 0000000000..6c99f391c6 --- /dev/null +++ b/dist/core/components/organisms/select/SearchInput.d.ts @@ -0,0 +1,8 @@ +import * as React from 'react'; +import { InputProps } from "../../../index.type"; +export interface SelectInputProps extends Omit { + onClear?: (e: React.MouseEvent | React.KeyboardEvent) => void; + onChange?: (value?: string) => void; +} +export declare const SearchInput: (props: SelectInputProps) => JSX.Element; +export default SearchInput; diff --git a/dist/core/components/organisms/select/Select.d.ts b/dist/core/components/organisms/select/Select.d.ts new file mode 100644 index 0000000000..0af266c579 --- /dev/null +++ b/dist/core/components/organisms/select/Select.d.ts @@ -0,0 +1,37 @@ +import * as React from 'react'; +import { OptionType } from "../../../common.type"; +import SelectList from "./SelectList"; +import SelectOption from "./SelectOption"; +import { SelectTriggerProps } from "./SelectTrigger"; +import SearchInput from "./SearchInput"; +import SelectEmptyTemplate from "./SelectEmptyTemplate"; +import SelectFooter from "./SelectFooter"; +import { BaseProps } from "../../../utils/types"; +export interface SelectProps extends BaseProps { + multiSelect?: boolean; + onSelect: (option?: OptionType | OptionType[]) => void; + children?: React.ReactNode; + width?: number | string; + popoverWidth?: number; + maxHeight?: number; + minHeight?: number; + value?: OptionType | OptionType[]; + boundaryElement?: React.RefObject | Element; + appendToBody?: boolean; + onOutsideClick?: () => void; + triggerOptions?: SelectTriggerProps; +} +export interface SelectMethods { + setOpen: (open: boolean) => void; + setFocusFirstItem: () => void; + setFocusLastItem: () => void; +} +export interface SelectComponent extends React.ForwardRefExoticComponent> { + Option: typeof SelectOption; + List: typeof SelectList; + SearchInput: typeof SearchInput; + EmptyTemplate: typeof SelectEmptyTemplate; + Footer: typeof SelectFooter; +} +export declare const Select: SelectComponent; +export default Select; diff --git a/dist/core/components/organisms/select/SelectContext.d.ts b/dist/core/components/organisms/select/SelectContext.d.ts new file mode 100644 index 0000000000..5b3564ad99 --- /dev/null +++ b/dist/core/components/organisms/select/SelectContext.d.ts @@ -0,0 +1,25 @@ +import * as React from 'react'; +import { OptionType } from "../../../common.type"; +export declare type ContextProps = { + openPopover?: boolean; + setOpenPopover?: React.Dispatch>; + selectValue?: OptionType | OptionType[]; + setSelectValue?: React.Dispatch>; + isOptionSelected?: boolean; + setIsOptionSelected?: React.Dispatch>; + onOptionClick?: (option: OptionType | OptionType[]) => void; + maxHeight?: number; + minHeight?: number; + width?: number | string; + withSearch?: boolean; + setWithSearch?: React.Dispatch>; + multiSelect?: boolean; + listRef?: React.RefObject; + triggerRef?: React.RefObject; + focusedOption?: HTMLElement; + setFocusedOption?: React.Dispatch>; + setHighlightFirstItem?: React.Dispatch>; + setHighlightLastItem?: React.Dispatch>; +}; +export declare const SelectContext: React.Context; +export default SelectContext; diff --git a/dist/core/components/organisms/select/SelectEmptyTemplate.d.ts b/dist/core/components/organisms/select/SelectEmptyTemplate.d.ts new file mode 100644 index 0000000000..b49f092615 --- /dev/null +++ b/dist/core/components/organisms/select/SelectEmptyTemplate.d.ts @@ -0,0 +1,9 @@ +import * as React from 'react'; +import { BaseProps } from "../../../utils/types"; +interface SelectEmptyTemplateProps extends BaseProps { + title?: string; + description?: string; + children?: React.ReactNode; +} +export declare const SelectEmptyTemplate: (props: SelectEmptyTemplateProps) => JSX.Element; +export default SelectEmptyTemplate; diff --git a/dist/core/components/organisms/select/SelectFooter.d.ts b/dist/core/components/organisms/select/SelectFooter.d.ts new file mode 100644 index 0000000000..c2a28dc9f7 --- /dev/null +++ b/dist/core/components/organisms/select/SelectFooter.d.ts @@ -0,0 +1,7 @@ +import { BaseProps } from "../../../utils/types"; +import * as React from 'react'; +interface SelectFooterProps extends BaseProps { + children?: React.ReactNode; +} +export declare const SelectFooter: (props: SelectFooterProps) => JSX.Element; +export default SelectFooter; diff --git a/dist/core/components/organisms/select/SelectList.d.ts b/dist/core/components/organisms/select/SelectList.d.ts new file mode 100644 index 0000000000..170886d679 --- /dev/null +++ b/dist/core/components/organisms/select/SelectList.d.ts @@ -0,0 +1,20 @@ +import * as React from 'react'; +import { TListboxSize } from "../../../common.type"; +import { BaseProps } from "../../../utils/types"; +declare type TagType = 'ul' | 'ol' | 'div' | 'nav'; +export interface SelectListProps extends BaseProps { + children: React.ReactNode; + size: TListboxSize; + tagName: TagType; + showDivider: boolean; +} +export declare const SelectList: { + (props: SelectListProps): JSX.Element; + defaultProps: { + type: string; + showDivider: boolean; + size: string; + tagName: string; + }; +}; +export default SelectList; diff --git a/dist/core/components/organisms/select/SelectOption.d.ts b/dist/core/components/organisms/select/SelectOption.d.ts new file mode 100644 index 0000000000..2fdeda7546 --- /dev/null +++ b/dist/core/components/organisms/select/SelectOption.d.ts @@ -0,0 +1,19 @@ +import * as React from 'react'; +import { OptionType } from "../../../common.type"; +import { BaseProps } from "../../../utils/types"; +declare type checkedType = 'checked' | 'unchecked' | 'indeterminate'; +export interface SelectOptionProps extends BaseProps { + children: React.ReactNode; + option: OptionType; + onClick?: (option: OptionType) => void; + checkedState?: checkedType; + withCheckbox?: boolean; + disabled?: boolean; +} +export declare const SelectOption: { + (props: SelectOptionProps): JSX.Element; + defaultProps: { + withCheckbox: boolean; + }; +}; +export default SelectOption; diff --git a/dist/core/components/organisms/select/SelectTrigger.d.ts b/dist/core/components/organisms/select/SelectTrigger.d.ts new file mode 100644 index 0000000000..daef01be7b --- /dev/null +++ b/dist/core/components/organisms/select/SelectTrigger.d.ts @@ -0,0 +1,24 @@ +import * as React from 'react'; +import { IconType } from "../../../common.type"; +import { BaseProps } from "../../../utils/types"; +export declare type SelectTriggerSize = 'small' | 'regular'; +export interface SelectTriggerProps extends BaseProps { + triggerSize?: SelectTriggerSize; + icon?: string; + iconType?: IconType; + placeholder?: string; + inlineLabel?: string; + disabled?: boolean; + withClearButton?: boolean; + onClear?: (event: React.MouseEvent) => void; + setLabel?: (count: number) => string | undefined; +} +declare const SelectTrigger: { + (props: SelectTriggerProps): JSX.Element; + defaultProps: { + triggerSize: string; + placeholder: string; + withClearButton: boolean; + }; +}; +export default SelectTrigger; diff --git a/dist/core/components/organisms/select/__test__/Select.test.d.ts b/dist/core/components/organisms/select/__test__/Select.test.d.ts new file mode 100644 index 0000000000..cb0ff5c3b5 --- /dev/null +++ b/dist/core/components/organisms/select/__test__/Select.test.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/dist/core/components/organisms/select/__test__/utils.test.d.ts b/dist/core/components/organisms/select/__test__/utils.test.d.ts new file mode 100644 index 0000000000..cb0ff5c3b5 --- /dev/null +++ b/dist/core/components/organisms/select/__test__/utils.test.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/dist/core/components/organisms/select/index.d.ts b/dist/core/components/organisms/select/index.d.ts new file mode 100644 index 0000000000..431ba9e53e --- /dev/null +++ b/dist/core/components/organisms/select/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Select"; +export * from "./Select"; diff --git a/dist/core/components/organisms/select/utils.d.ts b/dist/core/components/organisms/select/utils.d.ts new file mode 100644 index 0000000000..63aa2f40d5 --- /dev/null +++ b/dist/core/components/organisms/select/utils.d.ts @@ -0,0 +1,12 @@ +import React from 'react'; +import { OptionType } from "../../../common.type"; +export declare const mapInitialValue: (multiSelect: boolean, selectedValue: OptionType | OptionType[] | undefined) => OptionType | OptionType[]; +export declare const elementExist: (targetObject: OptionType, mainList: OptionType | OptionType[] | undefined) => number; +export declare const removeOrAddToList: (targetObject: OptionType, prevList: OptionType[]) => OptionType[]; +export declare const computeValue: (multiSelect: boolean | undefined, selectValue: any, setLabel?: ((count: number) => string | undefined) | undefined) => any; +export declare const handleKeyDownTrigger: (event: React.KeyboardEvent, setOpenPopover?: React.Dispatch> | undefined, setHighlightFirstItem?: React.Dispatch> | undefined, setHighlightLastItem?: React.Dispatch> | undefined) => void; +export declare const focusListItem: (position: string, setFocusedOption?: React.Dispatch> | undefined, listRef?: any) => void; +export declare const handleKeyDown: (event: React.KeyboardEvent, focusedOption: Element | undefined, setFocusedOption?: React.Dispatch> | undefined, setHighlightFirstItem?: React.Dispatch> | undefined, setHighlightLastItem?: React.Dispatch> | undefined, listRef?: any, withSearch?: boolean | undefined, setOpenPopover?: React.Dispatch> | undefined, triggerRef?: any) => void; +export declare const handleEnterKey: (focusedOption: Element | undefined) => void; +export declare const navigateOptions: (direction: string, focusedOption: Element | undefined, setFocusedOption?: React.Dispatch> | undefined, listRef?: any, withSearch?: boolean | undefined) => void; +export declare const handleInputKeyDown: (event: React.KeyboardEvent, listRef: any, setFocusedOption?: React.Dispatch> | undefined, setOpenPopover?: React.Dispatch> | undefined, triggerRef?: any) => void; diff --git a/dist/core/components/organisms/table/DraggableDropdown.d.ts b/dist/core/components/organisms/table/DraggableDropdown.d.ts new file mode 100644 index 0000000000..e142e3c5f5 --- /dev/null +++ b/dist/core/components/organisms/table/DraggableDropdown.d.ts @@ -0,0 +1,7 @@ +import { DropdownProps } from "../../../index.type"; +interface DraggableDropdownProps { + options: DropdownProps['options']; + onChange: (options: DropdownProps['options']) => void; +} +export declare const DraggableDropdown: (props: DraggableDropdownProps) => JSX.Element; +export {}; diff --git a/dist/core/components/organisms/table/Header.d.ts b/dist/core/components/organisms/table/Header.d.ts new file mode 100644 index 0000000000..e21a66d19f --- /dev/null +++ b/dist/core/components/organisms/table/Header.d.ts @@ -0,0 +1,50 @@ +import * as React from 'react'; +import { updateSchemaFunction, Schema, Data, onSelectAllFunction, GridProps, updateFilterListFunction, RowData } from "../grid/Grid"; +export interface ExternalHeaderProps { + children?: React.ReactNode; + withSearch?: boolean; + searchPlaceholder?: string; + dynamicColumn?: boolean; + allowSelectAll?: boolean; + customSelectionLabel?: string; + globalActionRenderer?: (data: Data) => React.ReactNode; + selectionActionRenderer?: (selectedRows: RowData[], selectAll?: boolean) => React.ReactNode; +} +export declare type updateSearchTermFunction = (newSearchTerm: string) => void; +export interface HeaderProps extends ExternalHeaderProps { + loading?: boolean; + error?: boolean; + data: Data; + displayData: Data; + schema: Schema; + selectAll?: GridProps['selectAll']; + totalRecords: number; + withPagination?: boolean; + page: number; + pageSize: number; + withCheckbox?: boolean; + showHead?: boolean; + updateSchema?: updateSchemaFunction; + filterList?: GridProps['filterList']; + showFilters: boolean; + updateFilterList?: updateFilterListFunction; + onSelectAll?: onSelectAllFunction; + searchTerm?: string; + updateSearchTerm?: updateSearchTermFunction; + selectedRowsRef?: React.MutableRefObject; + selectedAllRef?: React.MutableRefObject; + onClearSelection?: () => void; + onSelectAllRows?: () => void; + uniqueColumnName?: string; +} +export declare const Header: { + (props: HeaderProps): JSX.Element; + defaultProps: { + schema: never[]; + data: never[]; + searchPlaceholder: string; + dynamicColumn: boolean; + showFilters: boolean; + }; +}; +export default Header; diff --git a/dist/core/components/organisms/table/Table.d.ts b/dist/core/components/organisms/table/Table.d.ts new file mode 100644 index 0000000000..7b31e860bb --- /dev/null +++ b/dist/core/components/organisms/table/Table.d.ts @@ -0,0 +1,142 @@ +import * as React from 'react'; +import { ExternalHeaderProps, updateSearchTermFunction, HeaderProps } from "./Header"; +import { Data, onSelectFn, onSelectAllFunction, GridProps, fetchDataFunction, RowData, updateSchemaFunction, updateSortingListFunction, updateFilterListFunction } from "../grid"; +import { BaseProps } from "../../../utils/types"; +import { PaginationProps } from "../../molecules/pagination"; +export interface ErrorTemplateProps { + errorType?: TableProps['errorType']; +} +export declare type FilterPosition = 'GRID' | 'HEADER'; +interface TableSyncProps { + data: GridProps['data']; + schema: GridProps['schema']; + loading: GridProps['loading']; + error: GridProps['error']; + errorType?: string; + onSearch?: (data: Data, searchTerm: string) => Data; +} +interface AsyncProps { + fetchData?: fetchDataFunction; +} +interface SharedTableProps extends BaseProps { + showHead: GridProps['showHead']; + type: GridProps['type']; + size: GridProps['size']; + draggable: GridProps['draggable']; + nestedRows?: GridProps['nestedRows']; + nestedRowRenderer?: GridProps['nestedRowRenderer']; + withHeader?: boolean; + headerOptions?: ExternalHeaderProps; + withCheckbox?: GridProps['withCheckbox']; + showMenu?: GridProps['showMenu']; + withPagination: GridProps['withPagination']; + page: GridProps['page']; + pageJumpDebounceDuration: PaginationProps['pageJumpDebounceDuration']; + paginationType: PaginationProps['type']; + pageSize: GridProps['pageSize']; + loaderSchema: GridProps['loaderSchema']; + multipleSorting: boolean; + sortingList: GridProps['sortingList']; + filterList: GridProps['filterList']; + errorTemplate?: React.FunctionComponent; + searchDebounceDuration: number; + onRowClick?: GridProps['onRowClick']; + onSelect?: (rowIndexes: number[], selected: boolean, allSelected: RowData[], selectAll?: boolean) => void; + onPageChange?: PaginationProps['onPageChange']; + headCellTooltip?: GridProps['headCellTooltip']; + separator?: GridProps['headCellTooltip']; + filterPosition: FilterPosition; + selectDisabledRow?: boolean; + uniqueColumnName?: string; +} +export declare type SyncTableProps = SharedTableProps & TableSyncProps; +export declare type AsyncTableProps = SharedTableProps & AsyncProps; +export declare type TableProps = AsyncTableProps & SyncTableProps; +interface TableState { + async: boolean; + data: TableProps['data']; + displayData: TableProps['data']; + schema: TableProps['schema']; + sortingList: TableProps['sortingList']; + filterList: TableProps['filterList']; + page: TableProps['page']; + totalRecords: GridProps['totalRecords']; + selectAll: GridProps['selectAll']; + searchTerm: HeaderProps['searchTerm']; + loading: TableProps['loading']; + error: TableProps['error']; + errorType?: TableProps['errorType']; +} +export declare const defaultProps: { + type: string; + size: string; + showHead: boolean; + showMenu: boolean; + multipleSorting: boolean; + headerOptions: {}; + withPagination: boolean; + paginationType: string; + page: number; + pageSize: number; + draggable: boolean; + data: never[]; + displayData: never[]; + schema: never[]; + loading: boolean; + error: boolean; + loaderSchema: never[]; + sortingList: never[]; + filterList: {}; + filterPosition: string; + searchDebounceDuration: number; + pageJumpDebounceDuration: number; + errorTemplate: (props: ErrorTemplateProps) => JSX.Element; +}; +export declare class Table extends React.Component { + static defaultProps: { + type: string; + size: string; + showHead: boolean; + showMenu: boolean; + multipleSorting: boolean; + headerOptions: {}; + withPagination: boolean; + paginationType: string; + page: number; + pageSize: number; + draggable: boolean; + data: never[]; + displayData: never[]; + schema: never[]; + loading: boolean; + error: boolean; + loaderSchema: never[]; + sortingList: never[]; + filterList: {}; + filterPosition: string; + searchDebounceDuration: number; + pageJumpDebounceDuration: number; + errorTemplate: (props: ErrorTemplateProps) => JSX.Element; + }; + debounceUpdate: () => void; + selectedRowsRef: React.MutableRefObject; + clearSelectionRef: React.MutableRefObject; + selectAllRef: React.MutableRefObject; + constructor(props: TableProps); + componentDidMount(): void; + componentDidUpdate(prevProps: TableProps, prevState: TableState): void; + updateData: (searchUpdate?: boolean | undefined) => void; + updateDataFn: () => void; + onSelect: onSelectFn; + onSelectAll: onSelectAllFunction; + onPageChange: PaginationProps['onPageChange']; + updateSchema: updateSchemaFunction; + updateSortingList: updateSortingListFunction; + updateFilterList: updateFilterListFunction; + updateSearchTerm: updateSearchTermFunction; + onClearSelection: () => void; + resetClearSelection: () => void; + onSelectAllRows: () => void; + render(): JSX.Element; +} +export default Table; diff --git a/dist/core/components/organisms/table/index.d.ts b/dist/core/components/organisms/table/index.d.ts new file mode 100644 index 0000000000..d49f931948 --- /dev/null +++ b/dist/core/components/organisms/table/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./Table"; +export * from "./Table"; diff --git a/dist/core/components/organisms/table/utils.d.ts b/dist/core/components/organisms/table/utils.d.ts new file mode 100644 index 0000000000..cd2377e101 --- /dev/null +++ b/dist/core/components/organisms/table/utils.d.ts @@ -0,0 +1,3 @@ +import { RowData, GridProps } from "../grid"; +export declare const getUpdatedData: (data: GridProps['data'], selectedList: [], uniqueColumnName?: string | undefined, isCancelSelection?: boolean | undefined, isSelectAll?: boolean | undefined) => RowData[]; +export declare const removeDuplicate: (data: RowData[], uniqueColumnName?: string | undefined) => RowData[]; diff --git a/dist/core/components/organisms/textField/TextField.d.ts b/dist/core/components/organisms/textField/TextField.d.ts new file mode 100644 index 0000000000..deed7922b7 --- /dev/null +++ b/dist/core/components/organisms/textField/TextField.d.ts @@ -0,0 +1,8 @@ +import { TextFieldTextareaProps } from "./TextFieldWithTextarea"; +import { TextFieldInputProps } from "./TextFieldWithInput"; +export declare type TextFieldProps = TextFieldTextareaProps & TextFieldInputProps; +export declare const TextField: { + (props: TextFieldProps): JSX.Element; + displayName: string; +}; +export default TextField; diff --git a/dist/core/components/organisms/textField/TextFieldCommon.d.ts b/dist/core/components/organisms/textField/TextFieldCommon.d.ts new file mode 100644 index 0000000000..d1e2356465 --- /dev/null +++ b/dist/core/components/organisms/textField/TextFieldCommon.d.ts @@ -0,0 +1,12 @@ +import React from 'react'; +interface RenderHelpTextProps { + helpText: string; + error?: boolean; +} +export declare const RenderHelpText: React.FC; +interface RenderCounterProps { + inputText: string; + max: number; +} +export declare const RenderCounter: React.FC; +export {}; diff --git a/dist/core/components/organisms/textField/TextFieldWithInput.d.ts b/dist/core/components/organisms/textField/TextFieldWithInput.d.ts new file mode 100644 index 0000000000..f50152bcef --- /dev/null +++ b/dist/core/components/organisms/textField/TextFieldWithInput.d.ts @@ -0,0 +1,14 @@ +import { InputProps } from "../../../index.type"; +import { BaseProps } from "../../../utils/types"; +export interface TextFieldWithInputProps extends BaseProps { + label?: string; + helpText?: string; +} +export declare type TextFieldInputProps = TextFieldWithInputProps & InputProps; +export declare const TextFieldWithInput: { + (props: TextFieldInputProps): JSX.Element; + defaultProps: { + minWidth: number; + }; +}; +export default TextFieldWithInput; diff --git a/dist/core/components/organisms/textField/TextFieldWithTextarea.d.ts b/dist/core/components/organisms/textField/TextFieldWithTextarea.d.ts new file mode 100644 index 0000000000..de990647c5 --- /dev/null +++ b/dist/core/components/organisms/textField/TextFieldWithTextarea.d.ts @@ -0,0 +1,11 @@ +import { BaseProps } from "../../../utils/types"; +import { TextareaProps } from "../../../index.type"; +export interface TextFieldWithTextareaProps extends BaseProps { + label?: string; + withTextarea?: boolean; + max?: number; + helpText?: string; +} +export declare type TextFieldTextareaProps = TextFieldWithTextareaProps & TextareaProps; +export declare const TextFieldWithTextarea: (props: TextFieldTextareaProps) => JSX.Element; +export default TextFieldWithTextarea; diff --git a/dist/core/components/organisms/textField/__test__/Textarea.test.d.ts b/dist/core/components/organisms/textField/__test__/Textarea.test.d.ts new file mode 100644 index 0000000000..c8950b7899 --- /dev/null +++ b/dist/core/components/organisms/textField/__test__/Textarea.test.d.ts @@ -0,0 +1,6 @@ +import '@testing-library/jest-dom'; +declare global { + interface Window { + ResizeObserver: unknown; + } +} diff --git a/dist/core/components/organisms/textField/index.d.ts b/dist/core/components/organisms/textField/index.d.ts new file mode 100644 index 0000000000..957d0a7a56 --- /dev/null +++ b/dist/core/components/organisms/textField/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./TextField"; +export * from "./TextField"; diff --git a/dist/core/components/organisms/timePicker/TimePicker.d.ts b/dist/core/components/organisms/timePicker/TimePicker.d.ts new file mode 100644 index 0000000000..893a97e44a --- /dev/null +++ b/dist/core/components/organisms/timePicker/TimePicker.d.ts @@ -0,0 +1,16 @@ +import { TimePickerDropdownProps } from "./TimePickerWithSearch"; +import { TimePickerInputProps } from "./TimePickerWithInput"; +export declare type TimePickerProps = TimePickerInputProps & TimePickerDropdownProps; +export declare const TimePicker: { + (props: TimePickerProps): JSX.Element; + defaultProps: { + timeFormat: string; + interval: number; + inputFormat: string; + outputFormat: string; + inputOptions: {}; + validators: ((val: string, format: string) => boolean)[]; + }; + displayName: string; +}; +export default TimePicker; diff --git a/dist/core/components/organisms/timePicker/TimePickerWithInput.d.ts b/dist/core/components/organisms/timePicker/TimePickerWithInput.d.ts new file mode 100644 index 0000000000..919f5d8f7d --- /dev/null +++ b/dist/core/components/organisms/timePicker/TimePickerWithInput.d.ts @@ -0,0 +1,25 @@ +import { InputMaskProps } from "../../../index.type"; +import { Validators } from "../../../utils/types"; +export declare type AMPMType = 'AM' | 'PM'; +export declare type InputFormat = 'hh:mm AM' | 'hh:mm'; +export declare type TimeType = number | string; +export interface TimePickerInputProps { + time?: TimeType; + inputOptions: Omit; + inputFormat: InputFormat; + outputFormat: InputFormat; + validators: Validators; + onTimeChange?: (timeVal?: string) => void; + error?: boolean; +} +export declare const TimePickerWithInput: { + (props: TimePickerInputProps): JSX.Element; + defaultProps: { + inputFormat: string; + outputFormat: string; + inputOptions: {}; + validators: ((val: string, format: string) => boolean)[]; + }; + displayName: string; +}; +export default TimePickerWithInput; diff --git a/dist/core/components/organisms/timePicker/TimePickerWithSearch.d.ts b/dist/core/components/organisms/timePicker/TimePickerWithSearch.d.ts new file mode 100644 index 0000000000..1436734a26 --- /dev/null +++ b/dist/core/components/organisms/timePicker/TimePickerWithSearch.d.ts @@ -0,0 +1,33 @@ +import { BaseProps } from "../../../utils/types"; +import { OptionSchema } from "../../atoms/dropdown/option"; +declare type fetchOptionsFunction = (searchTerm: string) => Promise<{ + count: number; + searchTerm?: string; + scrollToIndex?: number; + options: OptionSchema[]; +}>; +export declare type TimeFormat = '12-Hour' | '24-Hour'; +export interface TimePickerDropdownProps extends BaseProps { + withSearch?: boolean; + startTime?: string; + endTime?: string; + interval: number; + timeFormat: TimeFormat; + open?: boolean; + noResultMessage?: string; + showDuration?: boolean; + disabledSlotList?: string[]; + onChange?: (selected: any[] | any, name?: string | number) => void; + fetchTimeOptions?: fetchOptionsFunction; + id?: string; + error?: boolean; +} +export declare const TimePickerWithSearch: { + (props: TimePickerDropdownProps): JSX.Element; + defaultProps: { + timeFormat: string; + interval: number; + }; + displayName: string; +}; +export default TimePickerWithSearch; diff --git a/dist/core/components/organisms/timePicker/index.d.ts b/dist/core/components/organisms/timePicker/index.d.ts new file mode 100644 index 0000000000..0bdf148125 --- /dev/null +++ b/dist/core/components/organisms/timePicker/index.d.ts @@ -0,0 +1,4 @@ +export { default } from "./TimePicker"; +export * from "./TimePicker"; +export * from "./TimePickerWithInput"; +export * from "./TimePickerWithSearch"; diff --git a/dist/core/components/organisms/timePicker/utility/searchUtils.d.ts b/dist/core/components/organisms/timePicker/utility/searchUtils.d.ts new file mode 100644 index 0000000000..7a14389673 --- /dev/null +++ b/dist/core/components/organisms/timePicker/utility/searchUtils.d.ts @@ -0,0 +1,7 @@ +import { OptionSchema } from "../../../atoms/dropdown/option"; +export declare const formatSearchTerm: (optionList: string[], searchTerm: string) => { + hour: string; + min: string; +}; +export declare const getSearchIndex: (optionList: string[], searchTerm: string) => number; +export declare const getScrollIndex: (dropdownOptionList: OptionSchema[], searchTerm: string) => number; diff --git a/dist/core/components/organisms/timePicker/utility/timePickerUtility.d.ts b/dist/core/components/organisms/timePicker/utility/timePickerUtility.d.ts new file mode 100644 index 0000000000..7e036eed59 --- /dev/null +++ b/dist/core/components/organisms/timePicker/utility/timePickerUtility.d.ts @@ -0,0 +1,19 @@ +import { TimePickerDropdownProps } from "../TimePickerWithSearch"; +export declare const isFormat12Hour: (format: string) => boolean; +export declare const _isTimeInAM: (time: string) => boolean; +export declare const _isTimeInPM: (time: string) => boolean; +export declare const convert12To24HourFormat: (timeStr: string) => string; +export declare const convertToTwoDigit: (val: string | number) => string; +export declare const convert24To12HourFormat: (timeStr: string) => string; +export declare const checkTimeDifference: (startTime: string, endTime: string) => boolean; +export declare const getTimeDifference: (startTime: string, endTime: string) => { + hour: number; + minute: number; +}; +export declare const getDropdownOptionList: (props: TimePickerDropdownProps) => { + label: string; + value: string; + disabled: boolean | undefined; + selected: boolean; + optionID: string; +}[]; diff --git a/dist/core/components/organisms/timePicker/utils.d.ts b/dist/core/components/organisms/timePicker/utils.d.ts new file mode 100644 index 0000000000..2aac28af8a --- /dev/null +++ b/dist/core/components/organisms/timePicker/utils.d.ts @@ -0,0 +1,13 @@ +import { InputProps } from "../../../index.type"; +export declare const placeholders: { + [key: string]: InputProps['placeholder']; +}; +export declare const isPlaceholderPresent: (placeholderChar: string, time?: string | undefined) => boolean | "" | undefined; +export declare const isFormat12hour: (format: string) => boolean; +export declare const translateToTime: (format: string, time?: string | number | undefined) => string; +export declare const getTimeObjFromStr: (format: string, time: string) => { + hours: number; + minutes: number; + am_pm: string; +}; +export declare const getOutputTimeString: (inputFormat: string, outputFormat: string, time: string) => string; diff --git a/dist/core/components/organisms/verticalNav/MenuItem.d.ts b/dist/core/components/organisms/verticalNav/MenuItem.d.ts new file mode 100644 index 0000000000..5afc510c53 --- /dev/null +++ b/dist/core/components/organisms/verticalNav/MenuItem.d.ts @@ -0,0 +1,20 @@ +import { BaseProps } from "../../../utils/types"; +import { Menu } from "../../../utils/navigationHelper"; +export interface MenuItemProps extends BaseProps { + menu: Menu; + isActive: boolean; + rounded?: boolean; + expanded?: boolean; + hasSubmenu?: boolean; + isChildren?: boolean; + isChildrenVisible?: boolean; + onClick?: (menu: Menu) => void; + customItemRenderer?: (props: MenuItemProps) => JSX.Element; +} +export declare const MenuItem: { + (props: MenuItemProps): JSX.Element | null; + defaultProps: { + isActive: boolean; + }; +}; +export default MenuItem; diff --git a/dist/core/components/organisms/verticalNav/VerticalNav.d.ts b/dist/core/components/organisms/verticalNav/VerticalNav.d.ts new file mode 100644 index 0000000000..e98d8b4840 --- /dev/null +++ b/dist/core/components/organisms/verticalNav/VerticalNav.d.ts @@ -0,0 +1,23 @@ +import { MenuItemProps } from "./MenuItem"; +import { BaseProps } from "../../../utils/types"; +import { ActiveMenu, Menu } from "../../../utils/navigationHelper"; +export interface VerticalNavProps extends BaseProps { + menus: Menu[]; + active?: ActiveMenu; + onClick?: (menu: Menu) => void; + rounded: boolean; + expanded: boolean; + autoCollapse: boolean; + customItemRenderer?: (props: MenuItemProps) => JSX.Element; + showTooltip: boolean; +} +export declare const VerticalNav: { + (props: VerticalNavProps): JSX.Element; + defaultProps: { + expanded: boolean; + autoCollapse: boolean; + rounded: boolean; + showTooltip: boolean; + }; +}; +export default VerticalNav; diff --git a/dist/core/components/organisms/verticalNav/index.d.ts b/dist/core/components/organisms/verticalNav/index.d.ts new file mode 100644 index 0000000000..1d145270c9 --- /dev/null +++ b/dist/core/components/organisms/verticalNav/index.d.ts @@ -0,0 +1,2 @@ +export { default } from "./VerticalNav"; +export * from "./VerticalNav"; diff --git a/dist/core/index.d.ts b/dist/core/index.d.ts new file mode 100644 index 0000000000..ce03c33452 --- /dev/null +++ b/dist/core/index.d.ts @@ -0,0 +1,95 @@ +export * as Utils from "./utils"; +export { Avatar } from "./components/atoms/avatar"; +export { AvatarGroup } from "./components/atoms/avatarGroup"; +export { Backdrop } from "./components/atoms/backdrop"; +export { Badge } from "./components/atoms/badge"; +export { Breadcrumbs } from "./components/atoms/breadcrumbs"; +export { Button } from "./components/atoms/button"; +export { Calendar } from "./components/organisms/calendar"; +export { Card } from "./components/atoms/card"; +export { CardSubdued } from "./components/atoms/cardSubdued"; +export { CardHeader } from "./components/atoms/cardHeader"; +export { CardBody } from "./components/atoms/cardBody"; +export { CardFooter } from "./components/atoms/cardFooter"; +export { Chip } from "./components/atoms/chip"; +export { ChipGroup } from "./components/atoms/chipGroup"; +export { Checkbox } from "./components/atoms/checkbox"; +export { Column } from "./components/atoms/column"; +export { DatePicker } from "./components/organisms/datePicker"; +export { TimePicker } from "./components/organisms/timePicker"; +export { Dropdown } from "./components/atoms/dropdown"; +export { Heading } from "./components/atoms/heading"; +export { Icon } from "./components/atoms/icon"; +export { Input } from "./components/atoms/input"; +export { MetricInput } from "./components/atoms/metricInput"; +export { InputMask } from "./components/molecules/inputMask"; +export { Label } from "./components/atoms/label"; +export { Caption } from "./components/atoms/caption"; +export { Legend } from "./components/atoms/legend"; +export { EditableDropdown } from "./components/molecules/editableDropdown"; +export { Link } from "./components/atoms/link"; +export { Message } from "./components/atoms/message"; +export { MetaList } from "./components/atoms/metaList"; +export { MultiSlider } from "./components/atoms/multiSlider"; +export { OutsideClick } from "./components/atoms/outsideClick"; +export { Paragraph } from "./components/atoms/paragraph"; +export { ProgressBar } from "./components/atoms/progressBar"; +export { Radio } from "./components/atoms/radio"; +export { Row } from "./components/atoms/row"; +export { StatusHint } from "./components/atoms/statusHint"; +export { Pills } from "./components/atoms/pills"; +export { Spinner } from "./components/atoms/spinner"; +export { Slider } from "./components/atoms/slider"; +export { RangeSlider } from "./components/atoms/rangeSlider"; +export { Subheading } from "./components/atoms/subheading"; +export { Switch } from "./components/atoms/switchInput"; +export { Text } from "./components/atoms/text"; +export { Textarea } from "./components/atoms/textarea"; +export { Toast } from "./components/atoms/toast"; +export { Popover } from "./components/molecules/popover"; +export { ChipInput } from "./components/molecules/chipInput"; +export { VerticalNav } from "./components/organisms/verticalNav"; +export { HorizontalNav } from "./components/organisms/horizontalNav"; +export { Tooltip } from "./components/molecules/tooltip"; +export { Dialog } from "./components/molecules/dialog"; +export { Modal, ModalBody, ModalFooter, ModalHeader } from "./components/molecules/modal"; +export { FullscreenModal } from "./components/molecules/fullscreenModal"; +export { Sidesheet } from "./components/molecules/sidesheet"; +export { Collapsible } from "./components/atoms/collapsible"; +export { ChatMessage } from "./components/molecules/chatMessage"; +export { EmptyState } from "./components/molecules/emptyState"; +export { ModalDescription } from "./components/molecules/modalDescription"; +export { Pagination } from "./components/molecules/pagination"; +export { Placeholder } from "./components/molecules/placeholder"; +export { EditableInput } from "./components/molecules/editableInput"; +export { EditableChipInput } from "./components/molecules/editableChipInput"; +export { PlaceholderParagraph } from "./components/atoms/placeholderParagraph"; +export { PlaceholderImage } from "./components/atoms/placeholderImage"; +export { ProgressRing } from "./components/atoms/progressRing"; +export { Stepper } from "./components/molecules/stepper"; +export { DateRangePicker } from "./components/organisms/dateRangePicker"; +export { TabsWrapper, Tab, Tabs } from "./components/molecules/tabs"; +export { Dropzone } from "./components/molecules/dropzone"; +export { FileUploader, FileUploaderList } from "./components/molecules/fileUploader"; +export { Grid } from "./components/organisms/grid"; +export { GridCell } from "./components/organisms/grid/GridCell"; +export { List } from "./components/organisms/list"; +export { Table } from "./components/organisms/table"; +export { Navigation } from "./components/organisms/navigation"; +export { PageHeader } from "./components/organisms/pageHeader"; +export { FileList } from "./components/molecules/fileList"; +export { VerificationCodeInput } from "./components/molecules/verificationCodeInput"; +export { InlineMessage } from "./components/organisms/inlineMessage"; +export { ChoiceList } from "./components/organisms/choiceList"; +export { Divider } from "./components/atoms/divider"; +export { HelpText } from "./components/atoms/helpText"; +export { LinkButton } from "./components/atoms/linkButton"; +export { ActionCard } from "./components/atoms/actionCard"; +export { SelectionCard } from "./components/atoms/selectionCard"; +export { Listbox } from "./components/organisms/listbox"; +export { TextField } from "./components/organisms/textField"; +export { AvatarSelection } from "./components/atoms/avatarSelection"; +export { Combobox } from "./components/organisms/combobox"; +export { Select } from "./components/organisms/select"; +export { Menu } from "./components/organisms/menu"; +export { version } from "../package.json"; diff --git a/dist/core/index.type.d.ts b/dist/core/index.type.d.ts new file mode 100644 index 0000000000..49d9630fe3 --- /dev/null +++ b/dist/core/index.type.d.ts @@ -0,0 +1,94 @@ +export * from "./index"; +export { AvatarProps } from "./components/atoms/avatar"; +export { AvatarGroupProps } from "./components/atoms/avatarGroup"; +export { BackdropProps } from "./components/atoms/backdrop"; +export { BadgeProps } from "./components/atoms/badge"; +export { BreadcrumbsProps } from "./components/atoms/breadcrumbs"; +export { ButtonProps } from "./components/atoms/button"; +export { CalendarProps } from "./components/organisms/calendar"; +export { CardProps } from "./components/atoms/card"; +export { CardSubduedProps } from "./components/atoms/cardSubdued"; +export { CardHeaderProps } from "./components/atoms/cardHeader"; +export { CardBodyProps } from "./components/atoms/cardBody"; +export { CardFooterProps } from "./components/atoms/cardFooter"; +export { ChipProps } from "./components/atoms/chip"; +export { ChipGroupProps } from "./components/atoms/chipGroup"; +export { CheckboxProps } from "./components/atoms/checkbox"; +export { ColumnProps } from "./components/atoms/column"; +export { DatePickerProps } from "./components/organisms/datePicker"; +export { TimePickerProps } from "./components/organisms/timePicker"; +export { DropdownProps } from "./components/atoms/dropdown"; +export { HeadingProps } from "./components/atoms/heading"; +export { IconProps } from "./components/atoms/icon"; +export { InputProps } from "./components/atoms/input"; +export { MetricInputProps } from "./components/atoms/metricInput"; +export { InputMaskProps } from "./components/molecules/inputMask"; +export { LabelProps } from "./components/atoms/label"; +export { CaptionProps } from "./components/atoms/caption"; +export { VerticalNavProps } from "./components/organisms/verticalNav"; +export { EditableDropdownProps } from "./components/molecules/editableDropdown"; +export { CollapsibleProps } from "./components/atoms/collapsible"; +export { LegendProps } from "./components/atoms/legend"; +export { LinkProps } from "./components/atoms/link"; +export { HorizontalNavProps } from "./components/organisms/horizontalNav"; +export { MessageProps } from "./components/atoms/message"; +export { MetaListProps } from "./components/atoms/metaList"; +export { OutsideClickProps } from "./components/atoms/outsideClick"; +export { ParagraphProps } from "./components/atoms/paragraph"; +export { RadioProps } from "./components/atoms/radio"; +export { RowProps } from "./components/atoms/row"; +export { SpinnerProps } from "./components/atoms/spinner"; +export { SliderProps } from "./components/atoms/slider"; +export { RangeSliderProps } from "./components/atoms/rangeSlider"; +export { StatusHintProps } from "./components/atoms/statusHint"; +export { PillsProps } from "./components/atoms/pills"; +export { SubheadingProps } from "./components/atoms/subheading"; +export { SwitchProps } from "./components/atoms/switchInput"; +export { TextProps } from "./components/atoms/text"; +export { TextareaProps } from "./components/atoms/textarea"; +export { ToastProps } from "./components/atoms/toast"; +export { TooltipProps } from "./components/molecules/tooltip"; +export { DialogProps } from "./components/molecules/dialog"; +export { ChatMessageProps } from "./components/molecules/chatMessage"; +export { EmptyStateProps } from "./components/molecules/emptyState"; +export { SidesheetProps } from "./components/molecules/sidesheet"; +export { ModalProps, ModalHeaderProps, ModalBodyProps, ModalFooterProps } from "./components/molecules/modal"; +export { ChipInputProps } from "./components/molecules/chipInput"; +export { FullscreenModalProps } from "./components/molecules/fullscreenModal"; +export { ModalDescriptionProps } from "./components/molecules/modalDescription"; +export { PaginationProps } from "./components/molecules/pagination"; +export { PlaceholderProps } from "./components/molecules/placeholder"; +export { PlaceholderParagraphProps } from "./components/atoms/placeholderParagraph"; +export { ProgressBarProps } from "./components/atoms/progressBar"; +export { EditableInputProps } from "./components/molecules/editableInput"; +export { EditableChipInputProps } from "./components/molecules/editableChipInput"; +export { PopoverProps } from "./components/molecules/popover"; +export { ProgressRingProps } from "./components/atoms/progressRing"; +export { StepperProps } from "./components/molecules/stepper"; +export { DateRangePickerProps } from "./components/organisms/dateRangePicker"; +export { TabsWrapperProps, TabProps, TabsProps, TabConfig } from "./components/molecules/tabs"; +export { DropzoneProps } from "./components/molecules/dropzone"; +export { FileUploaderProps, FileUploaderListProps } from "./components/molecules/fileUploader"; +export { GridProps } from "./components/organisms/grid"; +export { GridCellProps } from "./components/organisms/grid/GridCell"; +export { ListProps } from "./components/organisms/list"; +export { TableProps } from "./components/organisms/table"; +export { NavigationProps } from "./components/organisms/navigation"; +export { PageHeaderProps } from "./components/organisms/pageHeader"; +export { FileListProps } from "./components/molecules/fileList"; +export { VerificationCodeInputProps } from "./components/molecules/verificationCodeInput"; +export { InlineMessageProps } from "./components/organisms/inlineMessage"; +export { ChoiceListProps } from "./components/organisms/choiceList"; +export { DividerProps } from "./components/atoms/divider"; +export { HelpTextProps } from "./components/atoms/helpText"; +export { LinkButtonProps } from "./components/atoms/linkButton"; +export { ActionCardProps } from "./components/atoms/actionCard"; +export { SelectionCardProps } from "./components/atoms/selectionCard"; +export { ListboxProps, ListboxItemProps } from "./components/organisms/listbox"; +export { TextFieldProps } from "./components/organisms/textField"; +export { AvatarImageProps } from "./components/atoms/avatar/avatarImage"; +export { AvatarIconProps } from "./components/atoms/avatar/avatarIcon"; +export { AvatarSelectionProps } from "./components/atoms/avatarSelection"; +export { ComboboxProps } from "./components/organisms/combobox"; +export { SelectProps } from "./components/organisms/select"; +export { MenuProps } from "./components/organisms/menu"; diff --git a/dist/core/utils/Keys.d.ts b/dist/core/utils/Keys.d.ts new file mode 100644 index 0000000000..899306875c --- /dev/null +++ b/dist/core/utils/Keys.d.ts @@ -0,0 +1,11 @@ +export declare const BACKSPACE = 8; +export declare const TAB = 9; +export declare const ENTER = 13; +export declare const SHIFT = 16; +export declare const ESCAPE = 27; +export declare const SPACE = 32; +export declare const ARROW_LEFT = 37; +export declare const ARROW_UP = 38; +export declare const ARROW_RIGHT = 39; +export declare const ARROW_DOWN = 40; +export declare const DELETE = 46; diff --git a/dist/core/utils/OverlayManager.d.ts b/dist/core/utils/OverlayManager.d.ts new file mode 100644 index 0000000000..4a5a50f5bc --- /dev/null +++ b/dist/core/utils/OverlayManager.d.ts @@ -0,0 +1,9 @@ +declare class OverlayManager { + overlays: HTMLDivElement[]; + constructor(); + add(overlay: HTMLDivElement | null): number | undefined; + remove(overlay: HTMLDivElement | null): void; + isTopOverlay(overlay: HTMLDivElement | null): boolean | undefined; +} +declare const instance: OverlayManager; +export default instance; diff --git a/dist/core/utils/action.d.ts b/dist/core/utils/action.d.ts new file mode 100644 index 0000000000..2053ac9875 --- /dev/null +++ b/dist/core/utils/action.d.ts @@ -0,0 +1 @@ +export declare const action: (...args: any) => (...args: any[]) => void; diff --git a/dist/core/utils/css.d.ts b/dist/core/utils/css.d.ts new file mode 100644 index 0000000000..ae8657cf6b --- /dev/null +++ b/dist/core/utils/css.d.ts @@ -0,0 +1 @@ +export declare const colorToHex: (color: string) => string; diff --git a/dist/core/utils/docPage/generateImports.d.ts b/dist/core/utils/docPage/generateImports.d.ts new file mode 100644 index 0000000000..115c615f10 --- /dev/null +++ b/dist/core/utils/docPage/generateImports.d.ts @@ -0,0 +1,2 @@ +declare const generateImports: (str: string | undefined, lib: Record | undefined, libName: string) => string; +export default generateImports; diff --git a/dist/core/utils/docPage/index.d.ts b/dist/core/utils/docPage/index.d.ts new file mode 100644 index 0000000000..5184829026 --- /dev/null +++ b/dist/core/utils/docPage/index.d.ts @@ -0,0 +1,9 @@ +import * as React from 'react'; +export interface Example { + title: string; + description?: string; + imports: string[]; + component: React.ReactNode; +} +export declare const docPage: () => JSX.Element; +export default docPage; diff --git a/dist/core/utils/docPage/sandbox.d.ts b/dist/core/utils/docPage/sandbox.d.ts new file mode 100644 index 0000000000..7b3536fdeb --- /dev/null +++ b/dist/core/utils/docPage/sandbox.d.ts @@ -0,0 +1,2 @@ +declare const _default: (jsxStoryCode: string) => Window | null; +export default _default; diff --git a/dist/core/utils/index.d.ts b/dist/core/utils/index.d.ts new file mode 100644 index 0000000000..bc82ef5104 --- /dev/null +++ b/dist/core/utils/index.d.ts @@ -0,0 +1,3 @@ +export * as css from "./css"; +export * as validators from "./validators"; +export * as masks from "./masks"; diff --git a/dist/core/utils/masks.d.ts b/dist/core/utils/masks.d.ts new file mode 100644 index 0000000000..370cbd3a6d --- /dev/null +++ b/dist/core/utils/masks.d.ts @@ -0,0 +1,9 @@ +import { Mask } from "./types"; +import { DatePickerProps, InputMaskProps } from "../index.type"; +declare type DateFormat = DatePickerProps['inputFormat']; +export declare const date: Record; +export declare const rangeDate: Record; +export declare const time: { + [key: string]: InputMaskProps['mask']; +}; +export {}; diff --git a/dist/core/utils/navigationHelper.d.ts b/dist/core/utils/navigationHelper.d.ts new file mode 100644 index 0000000000..f35b51b869 --- /dev/null +++ b/dist/core/utils/navigationHelper.d.ts @@ -0,0 +1,33 @@ +import { IconType } from "../common.type"; +export declare type Menu = { + name: string; + label: string; + link?: string; + icon?: string; + group?: string; + count?: number; + disabled?: boolean; + subMenu?: Menu[]; + iconType?: IconType; + expanded?: boolean; +}; +export declare type ActiveMenu = ({ + name: string; +} | { + link: string; +}) & Partial; +export declare const getTextAppearance: (isActive: boolean, disabled?: boolean | undefined) => "link" | "default" | "disabled"; +export declare const getIconAppearance: (isActive: boolean, disabled?: boolean | undefined) => "default" | "disabled" | "primary_dark"; +export declare const getPillsAppearance: (isActive: boolean) => "secondary" | "primary"; +export declare const getMenu: (menus: Menu[], active: ActiveMenu) => Menu | null; +export declare const getExpandedMenus: (menus: Menu[], active?: ({ + name: string; +} & Partial) | ({ + link: string; +} & Partial) | undefined) => Record; +export declare const isMenuActive: (menus: Menu[], menu: Menu, active?: ({ + name: string; +} & Partial) | ({ + link: string; +} & Partial) | undefined) => boolean; +export declare const getNavItemColor: (isActive: boolean, disabled?: boolean | undefined) => "inverse" | "primary-dark" | "inverse-lightest"; diff --git a/dist/core/utils/overlayHelper.d.ts b/dist/core/utils/overlayHelper.d.ts new file mode 100644 index 0000000000..1fe0862786 --- /dev/null +++ b/dist/core/utils/overlayHelper.d.ts @@ -0,0 +1,10 @@ +/// +export declare const getWrapperElement: () => Element; +interface elementData { + element: Element; + containerClassName: string; + elementRef: React.RefObject; +} +export declare const getUpdatedZIndex: (ele: elementData) => number | undefined; +export declare const closeOnEscapeKeypress: (event: KeyboardEvent, isTopOverlay: boolean | undefined, onClose: (event: Event) => void) => void; +export {}; diff --git a/dist/core/utils/storybookEventEmitter.d.ts b/dist/core/utils/storybookEventEmitter.d.ts new file mode 100644 index 0000000000..1daa9d9442 --- /dev/null +++ b/dist/core/utils/storybookEventEmitter.d.ts @@ -0,0 +1 @@ +export declare const updateKnob: (name: any, value: any) => void; diff --git a/dist/core/utils/testHelper.d.ts b/dist/core/utils/testHelper.d.ts new file mode 100644 index 0000000000..2f32f883bb --- /dev/null +++ b/dist/core/utils/testHelper.d.ts @@ -0,0 +1,12 @@ +interface IValueHelper { + required?: boolean; + iterate?: boolean; + maxLen?: number; +} +export declare const testHelper: (Mapper: Record, testFunc: (props: Record) => void) => void; +export declare const filterUndefined: (props: Record) => Record; +export declare const valueHelper: (props: any, options?: IValueHelper) => Record; +export declare const arrayHelper: (props: any[], options?: IValueHelper) => Record; +export declare const testMessageHelper: (attr: Record) => string; +export declare const JSONStringifyHelper: (_key: string, value: any) => any; +export {}; diff --git a/dist/core/utils/types.d.ts b/dist/core/utils/types.d.ts new file mode 100644 index 0000000000..d344d4a6b0 --- /dev/null +++ b/dist/core/utils/types.d.ts @@ -0,0 +1,18 @@ +/// +export declare type SingleOrArray = T | T[]; +export declare type MakeRequired = Exclude; +export declare type MakeOptional = Omit & { + [OK in keyof T & K]?: T[OK]; +}; +declare type ValidatorFn = (...values: K) => boolean; +export declare type Validators = SingleOrArray; +export declare type Mask = (string | RegExp)[]; +export declare type BaseProps = { + className?: string; + 'data-test'?: string; +}; +export declare type BaseHtmlProps = Omit, 'ref' | 'size' | 'className'>; +export declare type OmitNativeProps = Omit, K>; +export declare const extractBaseProps: (props: Record) => {}; +export declare const filterProps: (props: Record, propsList: ReadonlyArray, include?: boolean | undefined) => Record; +export {}; diff --git a/dist/core/utils/uidGenerator.d.ts b/dist/core/utils/uidGenerator.d.ts new file mode 100644 index 0000000000..93222abcf8 --- /dev/null +++ b/dist/core/utils/uidGenerator.d.ts @@ -0,0 +1,2 @@ +export declare const uidGenerator: () => string; +export default uidGenerator; diff --git a/dist/core/utils/validators.d.ts b/dist/core/utils/validators.d.ts new file mode 100644 index 0000000000..001f2c2476 --- /dev/null +++ b/dist/core/utils/validators.d.ts @@ -0,0 +1,5 @@ +import { Validators } from "./types"; +export declare const isValid: (validators: Validators, ...value: any[]) => boolean; +export declare const date: (val: string, format: string) => boolean; +export declare const time: (val: string, format: string) => boolean; +export declare const isNaturalNumber: (val: number | string) => boolean; diff --git a/dist/index.esm.js b/dist/index.esm.js index a0dfd43506..bb90ab3f2d 100644 --- a/dist/index.esm.js +++ b/dist/index.esm.js @@ -1,8 +1,8 @@ /** - * Generated on: 1627478629993 + * Generated on: 1716895234745 * Package: @innovaccer/design-system - * Version: v2.2.1 + * Version: v2.35.0 * License: MIT * Docs: https://innovaccer.github.io/design-system */ @@ -45,7 +45,7 @@ function _objectSpread2(target) { if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { - _defineProperty$2(target, key, source[key]); + _defineProperty$1(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); @@ -111,13 +111,13 @@ function _asyncToGenerator(fn) { }; } -function _classCallCheck$1(instance, Constructor) { +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } -function _defineProperties$1(target, props) { +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; @@ -127,13 +127,13 @@ function _defineProperties$1(target, props) { } } -function _createClass$1(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties$1(Constructor.prototype, protoProps); - if (staticProps) _defineProperties$1(Constructor, staticProps); +function _createClass(Constructor, protoProps, staticProps) { + if (protoProps) _defineProperties(Constructor.prototype, protoProps); + if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } -function _defineProperty$2(obj, key, value) { +function _defineProperty$1(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, @@ -148,8 +148,8 @@ function _defineProperty$2(obj, key, value) { return obj; } -function _extends$3() { - _extends$3 = Object.assign || function (target) { +function _extends$2() { + _extends$2 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; @@ -163,10 +163,10 @@ function _extends$3() { return target; }; - return _extends$3.apply(this, arguments); + return _extends$2.apply(this, arguments); } -function _inherits$1(subClass, superClass) { +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } @@ -178,26 +178,26 @@ function _inherits$1(subClass, superClass) { configurable: true } }); - if (superClass) _setPrototypeOf$1(subClass, superClass); + if (superClass) _setPrototypeOf(subClass, superClass); } -function _getPrototypeOf$1(o) { - _getPrototypeOf$1 = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { +function _getPrototypeOf(o) { + _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; - return _getPrototypeOf$1(o); + return _getPrototypeOf(o); } -function _setPrototypeOf$1(o, p) { - _setPrototypeOf$1 = Object.setPrototypeOf || function _setPrototypeOf(o, p) { +function _setPrototypeOf(o, p) { + _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; - return _setPrototypeOf$1(o, p); + return _setPrototypeOf(o, p); } -function _isNativeReflectConstruct$1() { +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; @@ -210,7 +210,7 @@ function _isNativeReflectConstruct$1() { } } -function _objectWithoutPropertiesLoose$2(source, excluded) { +function _objectWithoutPropertiesLoose$1(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); @@ -225,10 +225,10 @@ function _objectWithoutPropertiesLoose$2(source, excluded) { return target; } -function _objectWithoutProperties$1(source, excluded) { +function _objectWithoutProperties(source, excluded) { if (source == null) return {}; - var target = _objectWithoutPropertiesLoose$2(source, excluded); + var target = _objectWithoutPropertiesLoose$1(source, excluded); var key, i; @@ -246,7 +246,7 @@ function _objectWithoutProperties$1(source, excluded) { return target; } -function _assertThisInitialized$2(self) { +function _assertThisInitialized$1(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } @@ -254,30 +254,32 @@ function _assertThisInitialized$2(self) { return self; } -function _possibleConstructorReturn$1(self, call) { +function _possibleConstructorReturn(self, call) { if (call && (typeof call === "object" || typeof call === "function")) { return call; + } else if (call !== void 0) { + throw new TypeError("Derived constructors may only return object or undefined"); } - return _assertThisInitialized$2(self); + return _assertThisInitialized$1(self); } -function _createSuper$1(Derived) { - var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); +function _createSuper(Derived) { + var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { - var Super = _getPrototypeOf$1(Derived), + var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { - var NewTarget = _getPrototypeOf$1(this).constructor; + var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } - return _possibleConstructorReturn$1(this, result); + return _possibleConstructorReturn(this, result); }; } @@ -415,7 +417,7 @@ function _createForOfIteratorHelper(o, allowArrayLike) { var _placeholders; -var placeholders = (_placeholders = {}, _defineProperty$2(_placeholders, 'hh:mm', '--:--'), _defineProperty$2(_placeholders, 'hh:mm AM', '--:-- AM'), _placeholders); +var placeholders = (_placeholders = {}, _defineProperty$1(_placeholders, 'hh:mm', '--:--'), _defineProperty$1(_placeholders, 'hh:mm AM', '--:-- AM'), _placeholders); var isPlaceholderPresent = function isPlaceholderPresent(placeholderChar, time) { return time && time.includes(placeholderChar); }; @@ -565,52 +567,90 @@ var date$1 = function date(val, format) { return month <= 12 && date <= monthLength[month - 1]; }; - switch (format) { - case 'dd/mm/yyyy': - var p = val.split('/'); - var date = +p[0] || 1; - var month = +p[1] || 1; - var year = +p[2] || 1900; - return validate(date, month, year); - - case 'mm/dd/yyyy': - var p = val.split('/'); - var date = +p[1] || 1; - var month = +p[0] || 1; - var year = +p[2] || 1900; - return validate(date, month, year); - - case 'yyyy/mm/dd': - var p = val.split('/'); - var date = +p[2] || 1; - var month = +p[1] || 1; - var year = +p[0] || 1900; - return validate(date, month, year); - - case 'dd-mm-yyyy': - var p = val.split('-'); - var date = +p[0] || 1; - var month = +p[1] || 1; - var year = +p[2] || 1900; - return validate(date, month, year); - - case 'mm-dd-yyyy': - var p = val.split('-'); - var date = +p[1] || 1; - var month = +p[0] || 1; - var year = +p[2] || 1900; - return validate(date, month, year); - - case 'yyyy-mm-dd': - var p = val.split('-'); - var date = +p[2] || 1; - var month = +p[1] || 1; - var year = +p[0] || 1900; - return validate(date, month, year); + if (val) { + switch (format) { + case 'dd/mm/yyyy': + { + var p = val.split('/'); - default: - return false; + var _date = +p[0] || 1; + + var month = +p[1] || 1; + var year = +p[2] || 1900; + return validate(_date, month, year); + } + + case 'mm/dd/yyyy': + { + var _p = val.split('/'); + + var _date2 = +_p[1] || 1; + + var _month = +_p[0] || 1; + + var _year = +_p[2] || 1900; + + return validate(_date2, _month, _year); + } + + case 'yyyy/mm/dd': + { + var _p2 = val.split('/'); + + var _date3 = +_p2[2] || 1; + + var _month2 = +_p2[1] || 1; + + var _year2 = +_p2[0] || 1900; + + return validate(_date3, _month2, _year2); + } + + case 'dd-mm-yyyy': + { + var _p3 = val.split('-'); + + var _date4 = +_p3[0] || 1; + + var _month3 = +_p3[1] || 1; + + var _year3 = +_p3[2] || 1900; + + return validate(_date4, _month3, _year3); + } + + case 'mm-dd-yyyy': + { + var _p4 = val.split('-'); + + var _date5 = +_p4[1] || 1; + + var _month4 = +_p4[0] || 1; + + var _year4 = +_p4[2] || 1900; + + return validate(_date5, _month4, _year4); + } + + case 'yyyy-mm-dd': + { + var _p5 = val.split('-'); + + var _date6 = +_p5[2] || 1; + + var _month5 = +_p5[1] || 1; + + var _year5 = +_p5[0] || 1900; + + return validate(_date6, _month5, _year5); + } + + default: + return false; + } } + + return false; }; var time$1 = function time(val, format) { var _getTimeObjFromStr = getTimeObjFromStr(format, val), @@ -620,18 +660,26 @@ var time$1 = function time(val, format) { var hoursCond = isFormat12hour(format) ? hours <= 12 : hours < 24; return hoursCond && minutes <= 60; }; +var isNaturalNumber = function isNaturalNumber(val) { + if (typeof val === 'string' && /[^0-9]/.test(val) || typeof val === 'number' && (val <= 0 || val - Math.floor(val) !== 0)) { + return false; + } + + return true; +}; var validators = /*#__PURE__*/Object.freeze({ __proto__: null, isValid: isValid, date: date$1, - time: time$1 + time: time$1, + isNaturalNumber: isNaturalNumber }); var _time; var date = { - 'dd/mm/yyyy': [/[0123]/, /\d/, '/', /\[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], + 'dd/mm/yyyy': [/[0123]/, /\d/, '/', /[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], 'mm/dd/yyyy': [/[01]/, /\d/, '/', /[0123]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], 'yyyy/mm/dd': [/\d/, /\d/, /\d/, /\d/, '/', /[01]/, /\d/, '/', /[0123]/, /\d/], 'dd-mm-yyyy': [/[0123]/, /\d/, '-', /[01]/, /\d/, '-', /\d/, /\d/, /\d/, /\d/], @@ -639,14 +687,14 @@ var date = { 'yyyy-mm-dd': [/\d/, /\d/, /\d/, /\d/, '-', /[01]/, /\d/, '-', /[0123]/, /\d/] }; var rangeDate = { - 'dd/mm/yyyy': [/[0123]/, /\d/, '/', /\[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/, ' ', '-', ' ', /[0123]/, /\d/, '/', /\[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], + 'dd/mm/yyyy': [/[0123]/, /\d/, '/', /[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/, ' ', '-', ' ', /[0123]/, /\d/, '/', /[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], 'mm/dd/yyyy': [/[01]/, /\d/, '/', /[0123]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/, ' ', '-', ' ', /[01]/, /\d/, '/', /[0123]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], 'yyyy/mm/dd': [/\d/, /\d/, /\d/, /\d/, '/', /[01]/, /\d/, '/', /[0123]/, /\d/, ' ', '-', ' ', /\d/, /\d/, /\d/, /\d/, '/', /[01]/, /\d/, '/', /[0123]/, /\d/], 'dd-mm-yyyy': [/[0123]/, /\d/, '-', /[01]/, /\d/, '-', /\d/, /\d/, /\d/, /\d/, ' ', '-', ' ', /[0123]/, /\d/, '-', /[01]/, /\d/, '-', /\d/, /\d/, /\d/, /\d/], 'mm-dd-yyyy': [/[01]/, /\d/, '-', /[0123]/, /\d/, '-', /\d/, /\d/, /\d/, /\d/, ' ', '-', ' ', /[01]/, /\d/, '-', /[0123]/, /\d/, '-', /\d/, /\d/, /\d/, /\d/], 'yyyy-mm-dd': [/\d/, /\d/, /\d/, /\d/, '-', /[01]/, /\d/, '-', /[0123]/, /\d/, ' ', '-', ' ', /\d/, /\d/, /\d/, /\d/, '-', /[01]/, /\d/, '-', /[0123]/, /\d/] }; -var time = (_time = {}, _defineProperty$2(_time, 'hh:mm', [/[0-1-2]/, /\d/, ':', /[0-5]/, /\d/]), _defineProperty$2(_time, 'hh:mm AM', [/[0-1]/, /\d/, ':', /[0-5]/, /\d/, ' ', /[APap]/, 'M']), _time); +var time = (_time = {}, _defineProperty$1(_time, 'hh:mm', [/[0-1-2]/, /\d/, ':', /[0-5]/, /\d/]), _defineProperty$1(_time, 'hh:mm AM', [/[0-1]/, /\d/, ':', /[0-5]/, /\d/, ' ', /[APap]/, 'M']), _time); var masks = /*#__PURE__*/Object.freeze({ __proto__: null, @@ -655,7 +703,7 @@ var masks = /*#__PURE__*/Object.freeze({ time: time }); -var index$1 = /*#__PURE__*/Object.freeze({ +var index = /*#__PURE__*/Object.freeze({ __proto__: null, css: css, validators: validators, @@ -736,7 +784,7 @@ var classnames = createCommonjsModule(function (module) { var extractBaseProps = function extractBaseProps(props) { var baseProps = ['className', 'data-test']; var basePropsObj = baseProps.reduce(function (acc, curr) { - return props[curr] ? _objectSpread2(_objectSpread2({}, acc), {}, _defineProperty$2({}, curr, props[curr])) : _objectSpread2({}, acc); + return props[curr] ? _objectSpread2(_objectSpread2({}, acc), {}, _defineProperty$1({}, curr, props[curr])) : _objectSpread2({}, acc); }, {}); return basePropsObj; }; @@ -749,9 +797,105 @@ var filterProps = function filterProps(props, propsList, include) { }, {}); }; +var AvatarContext = /*#__PURE__*/React.createContext({ + size: 'regular', + appearance: 'secondary', + firstName: '', + lastName: '' +}); +var AvatarProvider = AvatarContext.Provider; + +var appearanceMapper = { + secondary: 'inverse', + primary: 'white', + alert: 'white', + accent2: 'white', + accent3: 'white', + warning: 'warning_darker', + success: 'success_darker', + accent1: 'accent1_darker', + accent4: 'accent4_darker' +}; +var AvatarIcon = function AvatarIcon(props) { + var contextProp = React.useContext(AvatarContext); + var size = contextProp.size, + appearance = contextProp.appearance; + var iconSize = size === 'regular' ? 20 : 16; + var iconAppearance = appearance && appearanceMapper[appearance] || 'inverse'; + return /*#__PURE__*/React.createElement(Icon, _extends$2({}, props, { + size: iconSize, + appearance: iconAppearance + })); +}; + +var sizeMapper = { + regular: 32, + tiny: 24 +}; +var AvatarImage = function AvatarImage(props) { + var _classNames; + + var children = props.children, + src = props.src; + + var _React$useState = React.useState(false), + _React$useState2 = _slicedToArray(_React$useState, 2), + error = _React$useState2[0], + setError = _React$useState2[1]; + + var contextProp = React.useContext(AvatarContext); + var size = contextProp.size, + appearance = contextProp.appearance, + firstName = contextProp.firstName, + lastName = contextProp.lastName; + var baseProps = extractBaseProps(props); + var initials = "".concat(firstName ? firstName.trim()[0] : '').concat(lastName ? lastName.trim()[0] : ''); + var imgSize = size && sizeMapper[size]; + var TextClassNames = classnames((_classNames = {}, _defineProperty$1(_classNames, "Avatar-content--".concat(size), size), _defineProperty$1(_classNames, "Avatar-content--".concat(appearance), appearance), _classNames)); + var IconClassNames = classnames(_defineProperty$1({}, "Avatar-content--".concat(appearance), appearance)); + + var onError = function onError() { + setError(true); + }; + + if (children) { + return /*#__PURE__*/React.createElement(React.Fragment, null, children); + } + + if (error) { + if (initials) { + return /*#__PURE__*/React.createElement(Text, _extends$2({ + weight: "medium", + appearance: 'white', + className: TextClassNames + }, baseProps), initials); + } + + return /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-Avatar--Icon", + name: "person", + size: size === 'regular' ? 20 : 16, + appearance: "white", + className: IconClassNames + }); + } + + return /*#__PURE__*/React.createElement("img", _extends$2({ + "data-test": "DesignSystem-Image", + src: src, + alt: firstName + }, baseProps, { + height: imgSize, + width: imgSize, + onError: onError + })); +}; + var initialsLength = 2; +var DefaultAppearance = 'secondary'; +var colors = ['accent4', 'primary', 'accent3', 'alert', 'accent2', 'warning', 'accent1', 'success']; var Avatar = function Avatar(props) { - var _classNames, _classNames2; + var _classNames, _classNames2, _classNames3; var withTooltip = props.withTooltip, tooltipPosition = props.tooltipPosition, @@ -760,35 +904,61 @@ var Avatar = function Avatar(props) { firstName = props.firstName, lastName = props.lastName, className = props.className, - appearance = props.appearance; + appearance = props.appearance, + shape = props.shape, + _props$role = props.role, + role = _props$role === void 0 ? 'presentation' : _props$role; var baseProps = extractBaseProps(props); - var initials = children ? children.trim().slice(0, initialsLength) : "".concat(firstName ? firstName.trim()[0] : '').concat(lastName ? lastName.trim()[0] : ''); - var tooltip = children || "".concat(firstName || '', " ").concat(lastName || '') || ''; - var DefaultAppearance = 'secondary'; - var colors = ['accent4', 'primary', 'accent3', 'alert', 'accent2', 'warning', 'accent1', 'success']; + var initials = children && typeof children === 'string' ? children.trim().slice(0, initialsLength) : "".concat(firstName ? firstName.trim()[0] : '').concat(lastName ? lastName.trim()[0] : ''); + var tooltip = children && typeof children === 'string' ? children : "".concat(firstName || '', " ").concat(lastName || '') || ''; var AvatarAppearance = appearance || colors[(initials.charCodeAt(0) + (initials.charCodeAt(1) || 0)) % 8] || DefaultAppearance; - var classes = classnames((_classNames = { + var AvatarClassNames = classnames((_classNames = { Avatar: true - }, _defineProperty$2(_classNames, "Avatar--".concat(size), size), _defineProperty$2(_classNames, "Avatar--".concat(AvatarAppearance), AvatarAppearance), _defineProperty$2(_classNames, 'Avatar--disabled', !initials || !withTooltip), _classNames), className); - var ContentClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, "Avatar-content--".concat(size), size), _defineProperty$2(_classNames2, "Avatar-content--".concat(AvatarAppearance), AvatarAppearance), _classNames2)); - var IconClass = classnames(_defineProperty$2({}, "Avatar-content--".concat(AvatarAppearance), AvatarAppearance)); + }, _defineProperty$1(_classNames, 'Avatar--square', shape === 'square'), _defineProperty$1(_classNames, "Avatar--".concat(size), shape !== 'square'), _defineProperty$1(_classNames, "Avatar--".concat(AvatarAppearance), AvatarAppearance), _defineProperty$1(_classNames, 'Avatar--disabled', !initials || !withTooltip), _classNames), className); + var AvatarWrapperClassNames = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Avatar--wrapper', shape === 'square'), _defineProperty$1(_classNames2, "Avatar--".concat(size), shape === 'square'), _classNames2)); + var TextClassNames = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, "Avatar-content--".concat(size), size), _defineProperty$1(_classNames3, "Avatar-content--".concat(AvatarAppearance), AvatarAppearance), _classNames3)); + var IconClassNames = classnames(_defineProperty$1({}, "Avatar-content--".concat(AvatarAppearance), AvatarAppearance)); + var sharedProp = { + size: size, + firstName: firstName, + lastName: lastName, + appearance: AvatarAppearance + }; var renderAvatar = function renderAvatar() { - return /*#__PURE__*/React.createElement("span", _extends$3({ + if (children && typeof children !== 'string') { + return /*#__PURE__*/React.createElement("span", { + "data-test": "DesignSystem-AvatarWrapper", + className: AvatarWrapperClassNames, + role: role + }, /*#__PURE__*/React.createElement(AvatarProvider, { + value: sharedProp + }, /*#__PURE__*/React.createElement("span", _extends$2({ + "data-test": "DesignSystem-Avatar" + }, baseProps, { + className: AvatarClassNames + }), children))); + } + + return /*#__PURE__*/React.createElement("span", { + "data-test": "DesignSystem-AvatarWrapper", + className: AvatarWrapperClassNames, + role: role + }, /*#__PURE__*/React.createElement("span", _extends$2({ "data-test": "DesignSystem-Avatar" }, baseProps, { - className: classes + className: AvatarClassNames }), initials && /*#__PURE__*/React.createElement(Text, { weight: "medium", appearance: 'white', - className: ContentClass + className: TextClassNames }, initials), !initials && /*#__PURE__*/React.createElement(Icon, { "data-test": "DesignSystem-Avatar--Icon", name: "person", - size: size === 'regular' ? 16 : 12, + size: size === 'regular' ? 20 : 16, appearance: 'white', - className: IconClass - })); + className: IconClassNames + }))); }; var renderTooltip = function renderTooltip() { @@ -806,10 +976,101 @@ var Avatar = function Avatar(props) { return renderTooltip(); }; Avatar.displayName = 'Avatar'; +Avatar.Icon = AvatarIcon; +Avatar.Image = AvatarImage; Avatar.defaultProps = { tooltipPosition: 'bottom', withTooltip: true, - size: 'regular' + size: 'regular', + shape: 'round' +}; + +var AvatarCount = function AvatarCount(props) { + var _classNames, _classNames2; + + var hiddenAvatarCount = props.hiddenAvatarCount, + avatarStyle = props.avatarStyle, + size = props.size, + on = props.on; + var ContentClass = classnames((_classNames = {}, _defineProperty$1(_classNames, "Avatar-content--secondary", true), _defineProperty$1(_classNames, "Avatar-content--tiny", size === 'tiny'), _classNames)); + var AvatarVariantsClass = classnames((_classNames2 = { + Avatar: true + }, _defineProperty$1(_classNames2, "Avatar--regular", size === 'regular'), _defineProperty$1(_classNames2, "Avatar--tiny", size === 'tiny'), _defineProperty$1(_classNames2, "Avatar--secondary", true), _defineProperty$1(_classNames2, 'Avatar--disabled', true), _defineProperty$1(_classNames2, 'cursor-pointer', on === 'click'), _classNames2)); + return /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-AvatarGroup--TriggerAvatar", + className: "AvatarCount-wrapper", + style: avatarStyle + }, /*#__PURE__*/React.createElement("span", { + "data-test": "DesignSystem-AvatarGroup--TriggerAvatarVariants", + className: AvatarVariantsClass + }, /*#__PURE__*/React.createElement(Text, { + appearance: 'white', + className: ContentClass + }, "+".concat(hiddenAvatarCount)))); +}; + +var Avatars = function Avatars(props) { + var _classNames; + + var avatarList = props.avatarList, + avatarStyle = props.avatarStyle, + tooltipPosition = props.tooltipPosition, + size = props.size; + var GroupClass = classnames((_classNames = {}, _defineProperty$1(_classNames, "AvatarGroup-item", true), _defineProperty$1(_classNames, "AvatarGroup-item--tiny", size === 'tiny'), _defineProperty$1(_classNames, "AvatarGroup-item--regular", size === 'regular'), _classNames)); + var avatars = avatarList.map(function (item, index) { + var appearance = item.appearance, + firstName = item.firstName, + lastName = item.lastName, + icon = item.icon, + image = item.image; + return /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-AvatarGroup--Avatar", + className: GroupClass, + style: avatarStyle, + key: index + }, /*#__PURE__*/React.createElement(Avatar, { + size: size, + appearance: appearance, + firstName: firstName, + lastName: lastName, + withTooltip: true, + tooltipPosition: tooltipPosition + }, image || icon)); + }); + return avatars; +}; + +var AvatarPopperBody = function AvatarPopperBody(props) { + var hiddenAvatarList = props.hiddenAvatarList, + popperRenderer = props.popperRenderer, + maxHeight = props.maxHeight, + dark = props.dark; + + if (popperRenderer) { + return popperRenderer(hiddenAvatarList); + } + + return /*#__PURE__*/React.createElement("div", { + className: "px-4 py-3" + }, /*#__PURE__*/React.createElement("div", { + className: "AvatarGroup-TextWrapper", + style: { + maxHeight: maxHeight + } + }, hiddenAvatarList.map(function (item, ind) { + var _item$firstName = item.firstName, + firstName = _item$firstName === void 0 ? '' : _item$firstName, + _item$lastName = item.lastName, + lastName = _item$lastName === void 0 ? '' : _item$lastName; + var name = "".concat(firstName, " ").concat(lastName); + var AvatarTextClass = classnames(_defineProperty$1({}, "mb-4", ind < hiddenAvatarList.length - 1)); + return /*#__PURE__*/React.createElement(Text, { + key: ind, + appearance: dark ? 'white' : 'default', + className: AvatarTextClass, + "data-test": "DesignSystem-AvatarGroup--Text" + }, name); + }))); }; var AvatarGroup = function AvatarGroup(props) { @@ -818,7 +1079,8 @@ var AvatarGroup = function AvatarGroup(props) { popoverOptions = props.popoverOptions, tooltipPosition = props.tooltipPosition, list = props.list, - className = props.className; + className = props.className, + size = props.size; var popperRenderer = popoverOptions.popperRenderer, _popoverOptions$maxHe = popoverOptions.maxHeight, maxHeight = _popoverOptions$maxHe === void 0 ? 150 : _popoverOptions$maxHe, @@ -833,98 +1095,65 @@ var AvatarGroup = function AvatarGroup(props) { _popoverOptions$poppe = popoverOptions.popperClassName, popperClassName = _popoverOptions$poppe === void 0 ? '' : _popoverOptions$poppe; var baseProps = extractBaseProps(props); - var extraAvatars = list.length > max ? list.length - max > 9 ? 9 : list.length - max : 0; + var hiddenAvatarCount = list.length > max ? Math.min(list.length - max, 99) : 0; var style = { - borderRadius: '50%', backgroundColor: "".concat(borderColor), - border: "var(--spacing-xs) solid ".concat(borderColor), - boxShadow: "0 0 0 var(--spacing-xs) ".concat(borderColor) - }; - var AvatarGroupClass = classnames(_defineProperty$2({}, 'AvatarGroup', true), className); - var popperClass = classnames(_defineProperty$2({}, 'AvatarGroup-Popper', true), popperClassName); - var trigger = /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-AvatarGroup--TriggerAvatar", - style: style - }, /*#__PURE__*/React.createElement(Avatar, { - appearance: "secondary", - firstName: "+", - lastName: "".concat(extraAvatars), - withTooltip: false - })); - - var renderPopper = function renderPopper() { - var extraAvatarsList = list.slice(max, list.length); - - if (popperRenderer && typeof renderPopper === 'function') { - return popperRenderer(extraAvatarsList); - } - - return /*#__PURE__*/React.createElement("div", { - className: "py-6 pr-4 pl-6" - }, /*#__PURE__*/React.createElement("div", { - className: "AvatarGroup-TextWrapper", - style: { - maxHeight: maxHeight - } - }, extraAvatarsList.map(function (item, ind) { - var _item$firstName = item.firstName, - firstName = _item$firstName === void 0 ? '' : _item$firstName, - _item$lastName = item.lastName, - lastName = _item$lastName === void 0 ? '' : _item$lastName; - var name = "".concat(firstName, " ").concat(lastName); - return /*#__PURE__*/React.createElement(Text, { - key: ind, - appearance: dark ? 'white' : 'default', - className: ind < extraAvatars - 1 ? 'mb-5' : '', - "data-test": "DesignSystem-AvatarGroup--Text" - }, name); - }))); + boxShadow: "0 0 0 calc(var(--spacing-xs) + var(--spacing-s)) ".concat(borderColor) }; - - var renderAvatars = function renderAvatars() { - var avatars = list.slice(0, max).map(function (item, index) { - var appearance = item.appearance, - firstName = item.firstName, - lastName = item.lastName; - return /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-AvatarGroup--Avatar", - className: "AvatarGroup-item", - style: style, - key: index - }, /*#__PURE__*/React.createElement(Avatar, { - appearance: appearance, - firstName: firstName, - lastName: lastName, - withTooltip: true, - tooltipPosition: tooltipPosition - })); - }); - return avatars; + var tinyAvatarStyle = { + boxShadow: "0 0 0 var(--spacing-s) ".concat(borderColor) }; - - return /*#__PURE__*/React.createElement("div", _extends$3({ + var avatarStyle = size === 'tiny' ? _objectSpread2(_objectSpread2({}, style), tinyAvatarStyle) : style; + var avatarList = list.length === 3 ? list : list.slice(0, max); + var AvatarGroupClass = classnames(_defineProperty$1({}, 'AvatarGroup', true), className); + var popperClass = classnames(_defineProperty$1({}, 'AvatarGroup-Popper', true), popperClassName); + return /*#__PURE__*/React.createElement("div", _extends$2({ "data-test": "DesignSystem-AvatarGroup" }, baseProps, { className: "".concat(AvatarGroupClass, " d-inline-flex") - }), renderAvatars(), list.length - max > 0 && /*#__PURE__*/React.createElement(Popover, { + }), /*#__PURE__*/React.createElement(Avatars, { + size: size, + avatarList: avatarList, + avatarStyle: avatarStyle, + tooltipPosition: tooltipPosition + }), list.length - max > 0 && list.length !== 3 && /*#__PURE__*/React.createElement(Popover, { on: on, dark: dark, - trigger: trigger, + trigger: /*#__PURE__*/React.createElement(AvatarCount, { + on: on, + size: size, + hiddenAvatarCount: hiddenAvatarCount, + avatarStyle: avatarStyle + }), position: position, appendToBody: appendToBody, - className: popperClass - }, renderPopper())); + className: popperClass, + offset: "medium" + }, /*#__PURE__*/React.createElement(AvatarPopperBody, { + hiddenAvatarList: list.slice(max, list.length), + popperRenderer: popperRenderer, + maxHeight: maxHeight, + dark: dark + }))); }; AvatarGroup.displayName = 'AvatarGroup'; AvatarGroup.defaultProps = { max: 2, - borderColor: 'var(--white)', tooltipPosition: 'bottom', - popoverOptions: {} + borderColor: 'white', + popoverOptions: {}, + size: 'regular' }; var useEffect$1 = React.useEffect, useState$2 = React.useState; + +/** + * ### Note: + * ** The backdrop component is used to provide emphasis on a particular element or parts of it.
** + * The backdrop signals to the user of a state change within the application and can be used for creating loaders, dialogs, and more.
+ * In its simplest form, the backdrop component will add a dimmed layer over your application. + */ var Backdrop = function Backdrop(props) { var className = props.className; var baseProps = extractBaseProps(props); @@ -980,11 +1209,15 @@ var Backdrop = function Backdrop(props) { enableBodyScroll(); }; }, [props.open]); - var BackdropElement = /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/React.createElement("div", _extends$3({ + var BackdropElement = /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/React.createElement("div", _extends$2({ "data-test": "DesignSystem-Backdrop", - "data-layer": true + "data-layer": true, + "data-opened": open }, baseProps, { - className: classes + className: classes, + style: { + zIndex: props.zIndex + } })), document.body); return BackdropElement; }; @@ -1000,8 +1233,8 @@ var Badge = function Badge(props) { var baseProps = extractBaseProps(props); var classes = classnames((_classNames = { Badge: true - }, _defineProperty$2(_classNames, "Badge--".concat(appearance), appearance && !subtle), _defineProperty$2(_classNames, "Badge--subtle-".concat(appearance), subtle), _classNames), className); - return /*#__PURE__*/React.createElement("span", _extends$3({ + }, _defineProperty$1(_classNames, "Badge--".concat(appearance), appearance && !subtle), _defineProperty$1(_classNames, "Badge--subtle-".concat(appearance), subtle), _classNames), className); + return /*#__PURE__*/React.createElement("span", _extends$2({ "data-test": "DesignSystem-Badge" }, baseProps, { className: classes @@ -1012,3599 +1245,3280 @@ Badge.defaultProps = { appearance: 'secondary' }; -/* eslint-disable no-undefined,no-param-reassign,no-shadow */ - -/** - * Throttle execution of a function. Especially useful for rate limiting - * execution of handlers on events like resize and scroll. - * - * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful. - * @param {boolean} [noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds while the - * throttled-function is being called. If noTrailing is false or unspecified, callback will be executed one final time - * after the last throttled-function call. (After the throttled-function has not been called for `delay` milliseconds, - * the internal counter is reset). - * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is, - * to `callback` when the throttled-function is executed. - * @param {boolean} [debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is false (at end), - * schedule `callback` to execute after `delay` ms. - * - * @returns {Function} A new, throttled, function. - */ -function throttle (delay, noTrailing, callback, debounceMode) { - /* - * After wrapper has stopped being called, this timeout ensures that - * `callback` is executed at the proper times in `throttle` and `end` - * debounce modes. - */ - var timeoutID; - var cancelled = false; // Keep track of the last time `callback` was executed. - - var lastExec = 0; // Function to clear existing timeout +var RenderLink = function RenderLink(_ref) { + var item = _ref.item, + onClick = _ref.onClick; - function clearExistingTimeout() { - if (timeoutID) { - clearTimeout(timeoutID); + var onClickHandler = function onClickHandler(ev) { + if (onClick) { + ev.preventDefault(); + onClick(item.link); } - } // Function to cancel next exec - - - function cancel() { - clearExistingTimeout(); - cancelled = true; - } // `noTrailing` defaults to falsy. + }; + return /*#__PURE__*/React.createElement(Link, { + className: "Breadcrumbs-link ellipsis--noWrap", + "data-test": "DesignSystem-Breadcrumbs-link", + href: item.link, + onClick: onClickHandler, + appearance: "subtle", + size: "tiny" + }, item.label); +}; - if (typeof noTrailing !== 'boolean') { - debounceMode = callback; - callback = noTrailing; - noTrailing = undefined; - } - /* - * The `wrapper` function encapsulates all of the throttling / debouncing - * functionality and when executed will limit the rate at which `callback` - * is executed. - */ +var RenderItem = function RenderItem(_ref2) { + var item = _ref2.item, + onClick = _ref2.onClick, + index = _ref2.index, + showTooltip = _ref2.showTooltip; + return /*#__PURE__*/React.createElement("div", { + key: index, + className: "Breadcrumbs-item", + "data-test": "DesignSystem-Breadcrumbs-item" + }, showTooltip ? /*#__PURE__*/React.createElement(Tooltip, { + tooltip: item.label, + position: "bottom" + }, /*#__PURE__*/React.createElement(RenderLink, { + item: item, + onClick: onClick + })) : /*#__PURE__*/React.createElement(RenderLink, { + item: item, + onClick: onClick + }), /*#__PURE__*/React.createElement("span", { + className: "Breadcrumbs-itemSeparator" + }, "/")); +}; +var renderDropdown = function renderDropdown(list, onClick) { + var options = list.map(function (item) { + return { + label: item.label, + value: item.link + }; + }); - function wrapper() { - for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) { - arguments_[_key] = arguments[_key]; - } - - var self = this; - var elapsed = Date.now() - lastExec; - - if (cancelled) { - return; - } // Execute `callback` and update the `lastExec` timestamp. - - - function exec() { - lastExec = Date.now(); - callback.apply(self, arguments_); - } - /* - * If `debounceMode` is true (at begin) this is used to clear the flag - * to allow future `callback` executions. - */ - - - function clear() { - timeoutID = undefined; - } - - if (debounceMode && !timeoutID) { - /* - * Since `wrapper` is being called for the first time and - * `debounceMode` is true (at begin), execute `callback`. - */ - exec(); - } - - clearExistingTimeout(); + var customTrigger = function customTrigger() { + return /*#__PURE__*/React.createElement(Button, { + type: "button", + size: "tiny", + appearance: "transparent", + icon: "more_horiz_filled", + largeIcon: true, + className: "Breadcrumbs-Button", + "data-test": "DesignSystem-Breadcrumbs--Button" + }); + }; - if (debounceMode === undefined && elapsed > delay) { - /* - * In throttle mode, if `delay` time has been exceeded, execute - * `callback`. - */ - exec(); - } else if (noTrailing !== true) { - /* - * In trailing throttle mode, since `delay` time has not been - * exceeded, schedule `callback` to execute `delay` ms after most - * recent execution. - * - * If `debounceMode` is true (at begin), schedule `clear` to execute - * after `delay` ms. - * - * If `debounceMode` is false (at end), schedule `callback` to - * execute after `delay` ms. - */ - timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay); + return /*#__PURE__*/React.createElement(Dropdown, { + className: "Breadcrumbs-dropdown", + triggerSize: 'tiny', + triggerOptions: { + customTrigger: customTrigger + }, + options: options, + menu: true, + onChange: function onChange(selected) { + if (onClick) { + onClick(selected); + } } - } - - wrapper.cancel = cancel; // Return the wrapper function. - - return wrapper; -} - -/* eslint-disable no-undefined */ -/** - * Debounce execution of a function. Debouncing, unlike throttling, - * guarantees that a function is only executed a single time, either at the - * very beginning of a series of calls, or at the very end. - * - * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful. - * @param {boolean} [atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds - * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call. - * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset). - * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is, - * to `callback` when the debounced-function is executed. - * - * @returns {Function} A new, debounced function. - */ - -function debounce$1 (delay, atBegin, callback) { - return callback === undefined ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false); -} - -var getSearchedOptions = function getSearchedOptions(options, searchTerm) { - var result = options.filter(function (option) { - return option.label.toLowerCase().includes(searchTerm.toLowerCase()); - }); - return result; -}; -var _isEqual = function _isEqual(arr1, arr2) { - return arr1.length === arr2.length && arr1.every(function (option, index) { - return option.value === arr2[index].value || option.label === arr2[index].label; }); }; -var _isControlled = function _isControlled(selected) { - return selected !== undefined; -}; -var _isOpenControlled = function _isOpenControlled(open) { - return open !== undefined; -}; -var _showSelectedItems = function _showSelectedItems(bulk, searchTerm, withCheckbox) { - return bulk && withCheckbox && searchTerm === ''; -}; -var _isSelectAllPresent = function _isSelectAllPresent(searchTerm, bulkOptions, withSelectAll, withCheckbox) { - return withCheckbox && withSelectAll && bulkOptions === 0 && searchTerm === ''; -}; -var scrollTo = function scrollTo(element, top) { - element.scrollTo(0, top); -}; -var scrollIntoView = function scrollIntoView(menuElement, focusedElement) { - var menuRect = menuElement === null || menuElement === void 0 ? void 0 : menuElement.getBoundingClientRect(); - var focusedRect = focusedElement.getBoundingClientRect(); - var overscroll = focusedElement.offsetHeight; - if (focusedRect.bottom > menuRect.bottom && menuElement) { - scrollTo(menuElement, focusedElement.offsetTop - menuRect.height + overscroll); - } else if (focusedRect.top < menuRect.top && menuElement) { - scrollTo(menuElement, focusedElement.offsetTop - overscroll); - } +var Breadcrumbs = function Breadcrumbs(props) { + var list = props.list, + onClick = props.onClick, + className = props.className, + showTooltip = props.showTooltip; + var baseProps = extractBaseProps(props); + var BreadcrumbClass = classnames(_defineProperty$1({}, 'Breadcrumbs', true), className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Breadcrumbs" + }, baseProps, { + className: BreadcrumbClass + }), list.length <= 4 ? list.map(function (item, index) { + return /*#__PURE__*/React.createElement(RenderItem, { + key: index, + item: item, + onClick: onClick, + showTooltip: showTooltip + }); + }) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(RenderItem, { + item: list[0], + onClick: onClick, + showTooltip: showTooltip + }), /*#__PURE__*/React.createElement("div", { + className: "d-flex align-items-center" + }, renderDropdown(list.slice(1, list.length - 1), onClick), /*#__PURE__*/React.createElement("span", { + className: "Breadcrumbs-itemSeparator" + }, "/")), /*#__PURE__*/React.createElement(RenderItem, { + item: list[list.length - 1], + onClick: onClick, + showTooltip: showTooltip + }))); }; -var getSelectAll$1 = function getSelectAll(selected, optionsLength, disabledOptionsLength) { - if (selected.length) { - if (selected.length > 0 && disabledOptionsLength > 0 && selected.length === optionsLength - disabledOptionsLength) { - return { - indeterminate: true, - checked: true - }; // - } - - var indeterminate = selected.length > 0 && selected.length !== optionsLength; - var checked = selected.length > 0 && selected.length === optionsLength; - var obj = { - checked: checked, - indeterminate: indeterminate - }; - return obj; - } - return { - indeterminate: false, - checked: false - }; -}; +var _excluded$Z = ["size", "appearance", "iconAlign", "tabIndex", "largeIcon", "type", "children", "icon", "expanded", "selected", "loading", "disabled", "className", "tooltip", "iconType"]; +var sizeMapping$3 = { + tiny: 12, + regular: 16, + large: 20 +}; // eslint-disable-next-line react/display-name -var _excluded$z = ["triggerSize", "placeholder", "menu", "children", "icon", "disabled", "open", "inlineLabel", "error"]; -var DropdownButton = /*#__PURE__*/React.forwardRef(function (props, ref) { +var ButtonElement = /*#__PURE__*/React.forwardRef(function (props, ref) { var _classNames, _classNames2; - var _props$triggerSize = props.triggerSize, - triggerSize = _props$triggerSize === void 0 ? 'regular' : _props$triggerSize, - _props$placeholder = props.placeholder, - placeholder = _props$placeholder === void 0 ? 'Select' : _props$placeholder, - _props$menu = props.menu, - menu = _props$menu === void 0 ? false : _props$menu, + var _props$size = props.size, + size = _props$size === void 0 ? 'regular' : _props$size, + _props$appearance = props.appearance, + appearance = _props$appearance === void 0 ? 'basic' : _props$appearance, + _props$iconAlign = props.iconAlign, + iconAlign = _props$iconAlign === void 0 ? 'left' : _props$iconAlign, + _props$tabIndex = props.tabIndex, + tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex, + largeIcon = props.largeIcon, + type = props.type, children = props.children, icon = props.icon, + expanded = props.expanded, + selected = props.selected, + loading = props.loading, disabled = props.disabled, - open = props.open, - inlineLabel = props.inlineLabel, - error = props.error, - rest = _objectWithoutProperties$1(props, _excluded$z); + className = props.className; + props.tooltip; + var iconType = props.iconType, + rest = _objectWithoutProperties(props, _excluded$Z); - var buttonDisabled = disabled ? 'disabled' : 'default'; - var trimmedPlaceholder = placeholder.trim(); - var value = children ? children : trimmedPlaceholder; - var iconName = !menu ? 'keyboard_arrow_down' : icon ? icon : 'more_horiz'; - var buttonClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Button', true), _defineProperty$2(_classNames, 'DropdownButton', true), _defineProperty$2(_classNames, "DropdownButton--".concat(triggerSize), triggerSize), _defineProperty$2(_classNames, "DropdownButton--".concat(triggerSize, "Square"), menu), _defineProperty$2(_classNames, 'DropdownButton--placeholder', !children && !menu), _defineProperty$2(_classNames, 'DropdownButton--icon', icon), _defineProperty$2(_classNames, 'DropdownButton--open', open), _defineProperty$2(_classNames, 'DropdownButton--error', error), _classNames)); - var textClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Text', true), _defineProperty$2(_classNames2, 'Text--regular', true), _defineProperty$2(_classNames2, 'DropdownButton-text', true), _classNames2)); - return /*#__PURE__*/React.createElement("button", _extends$3({ + var buttonClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Button', true), _defineProperty$1(_classNames, 'Button--expanded', expanded), _defineProperty$1(_classNames, "Button--".concat(size), size), _defineProperty$1(_classNames, "Button--".concat(size, "Square"), !children), _defineProperty$1(_classNames, "Button--".concat(appearance), appearance), _defineProperty$1(_classNames, 'Button--selected', selected && (appearance === 'basic' || appearance === 'transparent')), _defineProperty$1(_classNames, "Button--iconAlign-".concat(iconAlign), children && iconAlign), _defineProperty$1(_classNames, "".concat(className), className), _classNames)); + var iconClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Button-icon', true), _defineProperty$1(_classNames2, "Button-icon--".concat(iconAlign), children && iconAlign), _classNames2)); + return /*#__PURE__*/React.createElement("button", _extends$2({ + "data-test": "DesignSystem-Button", ref: ref, - type: "button", - value: children, + type: type, className: buttonClass, - disabled: disabled, - tabIndex: 0, - "data-test": "DesignSystem-DropdownTrigger" - }, rest), !menu && /*#__PURE__*/React.createElement("div", { - className: "DropdownButton-wrapper" - }, inlineLabel && /*#__PURE__*/React.createElement(Text, { - appearance: "subtle", - className: "mr-4" - }, "".concat(inlineLabel.trim().charAt(0).toUpperCase()).concat(inlineLabel.trim().slice(1))), icon && !inlineLabel && /*#__PURE__*/React.createElement(Icon, { - appearance: buttonDisabled, - className: "d-flex align-items-center mr-4", - name: icon - }), value && /*#__PURE__*/React.createElement("span", { - className: textClass - }, value)), /*#__PURE__*/React.createElement(Icon, { - appearance: buttonDisabled, - name: iconName + disabled: disabled || loading, + tabIndex: tabIndex + }, rest), loading ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Spinner, { + size: "small", + appearance: appearance === 'basic' || appearance === 'transparent' ? 'secondary' : 'white', + "data-test": "DesignSystem-Button--Spinner", + className: "Button-spinner" + }), /*#__PURE__*/React.createElement(Text, { + className: "Button-text Button-text--hidden" + }, children || '')) : /*#__PURE__*/React.createElement(React.Fragment, null, icon && /*#__PURE__*/React.createElement("div", { + className: iconClass + }, /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-Button--Icon", + name: icon, + type: iconType, + size: largeIcon && !children ? sizeMapping$3[size] + 4 : sizeMapping$3[size] + })), children && /*#__PURE__*/React.createElement("span", { + className: "Button-text" + }, children))); +}); +var Button = /*#__PURE__*/React.forwardRef(function (props, ref) { + var icon = props.icon, + tooltip = props.tooltip, + children = props.children; + return icon && tooltip && !children ? /*#__PURE__*/React.createElement(Tooltip, { + tooltip: tooltip + }, /*#__PURE__*/React.createElement(ButtonElement, _extends$2({}, props, { + ref: ref + }))) : /*#__PURE__*/React.createElement(ButtonElement, _extends$2({}, props, { + ref: ref })); }); -DropdownButton.displayName = 'DropdownButton'; - -var _excluded$y = ["children", "componentType", "className"]; +Button.displayName = 'Button'; -var GenericText = function GenericText(_ref) { - var children = _ref.children, - _ref$componentType = _ref.componentType, - componentType = _ref$componentType === void 0 ? 'span' : _ref$componentType, - className = _ref.className, - props = _objectWithoutProperties$1(_ref, _excluded$y); +var config = { + yearBlockRange: 12, + yearsInRow: 3, + monthBlock: 12, + monthsInRow: 3, + daysInRow: 7, + months: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], + days: { + small: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + large: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'] + } +}; - return /*#__PURE__*/React.createElement(componentType, _objectSpread2(_objectSpread2({}, props), {}, { - className: className - }), children); +var yearBlockRange = config.yearBlockRange; +var getIndexOfDay = function getIndexOfDay(day) { + return ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'].indexOf(day); }; - -var _excluded$x = ["appearance", "size", "children", "weight", "small", "className"]; -var Text = function Text(props) { - var _classNames; - - var appearance = props.appearance, - size = props.size, - children = props.children, - weight = props.weight, - small = props.small, - className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$x); - - var classes = classnames((_classNames = { - Text: true - }, _defineProperty$2(_classNames, "Text--".concat(appearance), appearance), _defineProperty$2(_classNames, "Text--".concat(weight), weight), _defineProperty$2(_classNames, "Text--".concat(size), size), _defineProperty$2(_classNames, 'Text--small', size === 'small' || small), _classNames), className); - return /*#__PURE__*/React.createElement(GenericText, _extends$3({ - "data-test": "DesignSystem-Text" - }, rest, { - className: classes, - componentType: "span" - }), children); +var getYearBlock = function getYearBlock(year) { + return year - year % yearBlockRange; }; -Text.displayName = 'Text'; -Text.defaultProps = { - appearance: 'default', - size: 'regular' +var getDaysInMonth = function getDaysInMonth(year, month) { + return new Date(year, month + 1, 0).getDate(); +}; +var getFirstDayOfMonth = function getFirstDayOfMonth(year, month) { + return new Date(year, month).getDay(); }; +var getDateInfo = function getDateInfo(d) { + if (d) { + var dateVal = convertToDate(d); -var Icon = function Icon(props) { - var _classNames; + if (dateVal) { + var year = dateVal.getFullYear(); + var month = dateVal.getMonth(); + var day = dateVal.getDay(); + var date = dateVal.getDate(); + var decadeYear = getYearBlock(year); + return { + decadeYear: decadeYear, + year: year, + month: month, + day: day, + date: date + }; + } else { + return {}; + } + } - var appearance = props.appearance, - className = props.className, - name = props.name, - size = props.size, - onClick = props.onClick, - children = props.children; - var baseProps = extractBaseProps(props); + return {}; +}; +var convertToDate = function convertToDate(d, format, validators) { + var dateVal; - var mapper = function mapper(val) { - if (val === 'outline') return 'outlined'; - if (val === 'rounded') return 'round'; - return val; - }; + if (d) { + if (typeof d === 'number') { + dateVal = new Date(d); + } else if (typeof d === 'string') { + return format ? translateToDate(format, d, validators) : undefined; + } else if (!(d instanceof Date)) { + var _ref = d, + year = _ref.year, + month = _ref.month, + date = _ref.date; + dateVal = new Date(year, month, date, 0, 0, 0); + } else { + dateVal = d; + } + } - var type = mapper(props.type); + return dateVal; +}; +var compareYearBlock = function compareYearBlock(d, operator, currDecade) { + if (d) { + var _getDateInfo = getDateInfo(d), + limitDecade = _getDateInfo.decadeYear; - var getIconAppearance = function getIconAppearance(iconColor) { - var x = iconColor.indexOf('_'); - return iconColor.slice(0, x) + iconColor.charAt(x + 1).toUpperCase() + iconColor.slice(x + 2); - }; + switch (operator) { + case 'less': + if (limitDecade < currDecade) return true; + break; - var color = appearance && appearance.includes('_') ? getIconAppearance(appearance) : appearance; - var iconClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'material-icons', true), _defineProperty$2(_classNames, "material-icons-".concat(mapper(type)), type && type !== 'filled'), _defineProperty$2(_classNames, 'Icon', true), _defineProperty$2(_classNames, "Icon--".concat(color), appearance), _defineProperty$2(_classNames, "".concat(className), className), _classNames)); - var styles = { - fontSize: "".concat(size, "px"), - width: "".concat(size, "px") - }; // change `children` to {name} after migration + case 'more': + if (limitDecade > currDecade) return true; + break; - if (children && /*#__PURE__*/React.isValidElement(children)) { - return /*#__PURE__*/React.createElement("span", _extends$3({}, baseProps, { - className: className - }), children); + case 'equal': + if (limitDecade === currDecade) return true; + break; + } } - return /*#__PURE__*/React.createElement("i", _extends$3({}, baseProps, { - className: iconClass, - style: styles, - onClick: onClick - }), type ? "".concat(name, "_").concat(type) : name); -}; -Icon.displayName = 'Icon'; -Icon.defaultProps = { - size: 16, - type: 'round' + return false; }; +var compareDate = function compareDate(d, operator, currYear, currMonth, currDate) { + if (d) { + var _getDateInfo2 = getDateInfo(d), + limitYear = _getDateInfo2.year, + limitMonth = _getDateInfo2.month, + limitDate = _getDateInfo2.date; -var uidGenerator = function uidGenerator() { - var dt = new Date().getTime(); - var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { - var r = (dt + Math.random() * 16) % 16 | 0; - dt = Math.floor(dt / 16); - var s = (c === 'x' ? r : r & 0x3 | 0x8).toString(16); - return s; - }); - return uuid; -}; + switch (operator) { + case 'less': + if (limitYear < currYear) return true; + if (limitYear > currYear) return false; -var _excluded$w = ["size", "tabIndex", "defaultChecked", "indeterminate", "label", "disabled", "onChange", "name", "value", "className", "checked"]; + if (currMonth !== undefined) { + if (limitMonth < currMonth) return true; + if (limitMonth > currMonth) return false; + } -/** - * ######Checkbox has two types: - * - [Controlled Checkbox](https://reactjs.org/docs/forms.html#controlled-components) - * - [Uncontrolled Checkbox](https://reactjs.org/docs/uncontrolled-components.html) - */ -var Checkbox = /*#__PURE__*/React.forwardRef(function (props, forwardedRef) { - var _classNames, _classNames2, _classNames4; + if (currDate !== undefined && limitDate < currDate) return true; + break; - var _props$size = props.size, - size = _props$size === void 0 ? 'regular' : _props$size, - _props$tabIndex = props.tabIndex, - tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex, - defaultChecked = props.defaultChecked, - indeterminate = props.indeterminate, - label = props.label, - disabled = props.disabled, - onChange = props.onChange, - name = props.name, - value = props.value, - className = props.className; - props.checked; - var rest = _objectWithoutProperties$1(props, _excluded$w); + case 'more': + if (limitYear > currYear) return true; + if (limitYear < currYear) return false; - var ref = React.useRef(null); - React.useImperativeHandle(forwardedRef, function () { - return ref.current; - }); + if (currMonth !== undefined) { + if (limitMonth > currMonth) return true; + if (limitMonth < currMonth) return false; + } - var _React$useState = React.useState(props.checked === undefined ? defaultChecked : props.checked), - _React$useState2 = _slicedToArray(_React$useState, 2), - checked = _React$useState2[0], - setChecked = _React$useState2[1]; + if (currDate !== undefined && limitDate > currDate) return true; + break; + + case 'equal': + if (currDate !== undefined) { + if (limitYear === currYear && limitMonth === currMonth && limitDate === currDate) return true; + } else if (currMonth !== undefined) { + if (limitYear === currYear && limitMonth === currMonth) return true; + } else if (limitYear === currYear) return true; - React.useEffect(function () { - setIndeterminate(indeterminate); - }, [indeterminate]); - React.useEffect(function () { - if (props.checked !== undefined) { - setChecked(props.checked); } - }, [props.checked]); - var CheckboxClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Checkbox', true), _defineProperty$2(_classNames, 'Checkbox--disabled', disabled), _classNames), className); - var CheckboxOuterWrapper = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Checkbox-outerWrapper', true), _defineProperty$2(_classNames2, "Checkbox-outerWrapper--".concat(size), size), _classNames2)); - var CheckboxTextClass = classnames(_defineProperty$2({}, 'Checkbox-label', true)); - var CheckboxInputWrapper = classnames((_classNames4 = {}, _defineProperty$2(_classNames4, 'Checkbox-input', true), _defineProperty$2(_classNames4, 'Checkbox-input--checked', checked), _defineProperty$2(_classNames4, 'Checkbox-input--indeterminate', props.indeterminate), _classNames4)); - var CheckboxWrapper = classnames(_defineProperty$2({}, 'Checkbox-wrapper', true)); + } - var setIndeterminate = function setIndeterminate(indeterminateValue) { - ref.current.indeterminate = indeterminateValue; - }; + return false; +}; +var translateToString = function translateToString(format, d) { + if (format && d) { + var _getDateInfo3 = getDateInfo(d), + year = _getDateInfo3.year, + month = _getDateInfo3.month, + date = _getDateInfo3.date; - var onChangeHandler = function onChangeHandler(e) { - if (props.checked === undefined) { - setChecked(e.target.checked); - setIndeterminate(e.target.indeterminate); - } + var separator = format.includes('/') ? '/' : '-'; + var f = format.split(separator); + var val = f.reduce(function (out, curr, i) { + switch (curr) { + case 'mm': + out += (month < 9 && '0') + (month + 1); + break; - if (onChange) onChange(e); - }; + case 'yyyy': + out += year; + break; - var id = "".concat(name, "-").concat(label, "-").concat(uidGenerator()); - var IconName = indeterminate ? 'remove' : checked ? 'check' : ''; - var IconSize = size === 'tiny' ? 12 : 16; - return /*#__PURE__*/React.createElement("div", { - className: CheckboxClass - }, /*#__PURE__*/React.createElement("div", { - className: CheckboxOuterWrapper - }, /*#__PURE__*/React.createElement("input", _extends$3({}, rest, { - type: "checkbox", - defaultChecked: defaultChecked, - onChange: onChangeHandler, - checked: checked, - disabled: disabled, - ref: ref, - name: name, - value: value, - className: CheckboxInputWrapper, - tabIndex: tabIndex, - id: id - })), /*#__PURE__*/React.createElement("span", { - className: CheckboxWrapper - }, IconName && /*#__PURE__*/React.createElement(Icon, { - name: IconName, - size: IconSize, - appearance: 'white' - }))), label && label.trim() && /*#__PURE__*/React.createElement("label", { - htmlFor: id, - className: CheckboxTextClass - }, /*#__PURE__*/React.createElement(Text, { - size: size === 'tiny' ? 'small' : 'regular', - appearance: disabled ? 'disabled' : 'default' - }, label.trim()))); -}); -Checkbox.displayName = 'Checkbox'; + case 'dd': + out += (date < 10 && '0') + date; + break; + } -var CheckboxOption = function CheckboxOption(props) { - var className = props.className, - selected = props.selected, - optionData = props.optionData, - onChangeHandler = props.onChangeHandler, - onUpdateActiveOption = props.onUpdateActiveOption, - dataTest = props.dataTest; - var label = optionData.label, - disabled = optionData.disabled; - return /*#__PURE__*/React.createElement("div", { - className: className, - onMouseEnter: onUpdateActiveOption, - "data-test": dataTest, - "data-disabled": disabled - }, /*#__PURE__*/React.createElement(Checkbox, { - label: label, - disabled: disabled, - checked: selected, - onChange: onChangeHandler, - tabIndex: -1, - className: "OptionCheckbox" - })); -}; + if (i !== f.length - 1) out += separator; + return out; + }, ''); + return val; + } -var DefaultOption = function DefaultOption(props) { - var className = props.className, - textClassName = props.textClassName, - onClickHandler = props.onClickHandler, - optionData = props.optionData, - appearance = props.appearance, - onUpdateActiveOption = props.onUpdateActiveOption, - dataTest = props.dataTest; - var label = optionData.label, - disabled = optionData.disabled; - return /*#__PURE__*/React.createElement("div", { - className: className, - onClick: onClickHandler, - onMouseEnter: onUpdateActiveOption, - "data-test": dataTest, - "data-disabled": disabled - }, /*#__PURE__*/React.createElement("div", { - className: 'Option-label' - }, /*#__PURE__*/React.createElement(Text, { - className: textClassName, - appearance: appearance - }, label))); + return ''; }; +var translateToDate = function translateToDate(format, val) { + var validators = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; -var MetaOption = function MetaOption(props) { - var className = props.className, - textClassName = props.textClassName, - onClickHandler = props.onClickHandler, - optionData = props.optionData, - onUpdateActiveOption = props.onUpdateActiveOption, - renderSubInfo = props.renderSubInfo, - appearance = props.appearance, - dataTest = props.dataTest; - var subInfo = optionData.subInfo, - label = optionData.label, - disabled = optionData.disabled; - return /*#__PURE__*/React.createElement("div", { - className: className, - onClick: onClickHandler, - onMouseEnter: onUpdateActiveOption, - "data-test": dataTest, - "data-disabled": disabled - }, /*#__PURE__*/React.createElement("div", { - className: 'Option-label' - }, /*#__PURE__*/React.createElement(Text, { - className: textClassName, - appearance: appearance - }, label), subInfo && renderSubInfo(subInfo))); -}; + if (isValid(validators, val, format)) { + var separator = format.includes('/') ? '/' : '-'; + var year = -1, + month = -1, + date = -1; + var v = val.split(separator); + format.split(separator).forEach(function (f, i) { + switch (f) { + case 'mm': + month = +v[i] - 1; + break; -var IconOption = function IconOption(props) { - var _classNames; + case 'yyyy': + year = +v[i]; + break; - var className = props.className, - textClassName = props.textClassName, - onClickHandler = props.onClickHandler, - optionData = props.optionData, - onUpdateActiveOption = props.onUpdateActiveOption, - appearance = props.appearance, - dataTest = props.dataTest; - var label = optionData.label, - icon = optionData.icon, - disabled = optionData.disabled; - var OptionClass = classnames((_classNames = {}, _defineProperty$2(_classNames, "".concat(className), true), _defineProperty$2(_classNames, 'Option--icon', icon), _classNames)); - return /*#__PURE__*/React.createElement("div", { - className: OptionClass, - onClick: onClickHandler, - onMouseEnter: onUpdateActiveOption, - "data-test": dataTest, - "data-disabled": disabled - }, icon && /*#__PURE__*/React.createElement(Icon, { - className: "Option-icon mr-4", - name: icon, - appearance: appearance - }), /*#__PURE__*/React.createElement("div", { - className: 'Option-label' - }, /*#__PURE__*/React.createElement(Text, { - className: textClassName, - appearance: appearance - }, label))); + case 'dd': + date = +v[i]; + break; + } + }); + var d = convertToDate({ + year: year, + month: month, + date: date + }); + return d; + } else { + return undefined; + } }; +var dateComparison = function dateComparison(date, operator, currDate, currMonth, currYear) { + var currentDate = new Date("".concat(currYear, "-").concat(currMonth, "-").concat(currDate)); -var IconWithMetaOption = function IconWithMetaOption(props) { - var _classNames; + if (date) { + switch (operator) { + case 'less': + return date <= currentDate; - var className = props.className, - textClassName = props.textClassName, - renderSubInfo = props.renderSubInfo, - onClickHandler = props.onClickHandler, - optionData = props.optionData, - onUpdateActiveOption = props.onUpdateActiveOption, - appearance = props.appearance, - dataTest = props.dataTest; - var subInfo = optionData.subInfo, - label = optionData.label, - icon = optionData.icon, - disabled = optionData.disabled; - var OptionClass = classnames((_classNames = {}, _defineProperty$2(_classNames, "".concat(className), true), _defineProperty$2(_classNames, 'Option--icon', icon), _classNames)); - return /*#__PURE__*/React.createElement("div", { - className: OptionClass, - onClick: onClickHandler, - onMouseEnter: onUpdateActiveOption, - "data-test": dataTest, - "data-disabled": disabled - }, icon && /*#__PURE__*/React.createElement(Icon, { - className: "Option-icon mr-4", - name: icon, - appearance: appearance - }), /*#__PURE__*/React.createElement("div", { - className: 'Option-label' - }, /*#__PURE__*/React.createElement(Text, { - className: textClassName, - appearance: appearance - }, label), subInfo && renderSubInfo(subInfo))); -}; + case 'equal': + return date.toDateString() === currentDate.toDateString(); -var _OptionTypeMapping; -var OptionTypeMapping = (_OptionTypeMapping = {}, _defineProperty$2(_OptionTypeMapping, 'DEFAULT', DefaultOption), _defineProperty$2(_OptionTypeMapping, 'WITH_ICON', IconOption), _defineProperty$2(_OptionTypeMapping, 'WITH_META', MetaOption), _defineProperty$2(_OptionTypeMapping, 'WITH_CHECKBOX', CheckboxOption), _defineProperty$2(_OptionTypeMapping, 'ICON_WITH_META', IconWithMetaOption), _OptionTypeMapping); + case 'more': + return date >= currentDate; -var Option = function Option(props) { - var _classNames, _classNames2, _classNames3, _classNames4; + default: + return false; + } + } - var optionData = props.optionData, - selected = props.selected, - onClick = props.onClick, - updateActiveOption = props.updateActiveOption, - onChange = props.onChange, - active = props.active, - index = props.index, - checkboxes = props.checkboxes, - menu = props.menu; + return false; +}; - var _ref = optionData.optionType ? optionData : props, - _ref$optionType = _ref.optionType, - optionType = _ref$optionType === void 0 ? 'DEFAULT' : _ref$optionType; +var Calendar = /*#__PURE__*/function (_React$Component) { + _inherits(Calendar, _React$Component); - var disabled = optionData.disabled; - var OptionClassName = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Option', true), _defineProperty$2(_classNames, 'Option--active', active), _defineProperty$2(_classNames, 'Option--selected', selected && !menu), _defineProperty$2(_classNames, 'Option--disabled', disabled), _defineProperty$2(_classNames, 'OptionWrapper', true), _classNames)); - var CheckboxClassName = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Option-checkbox', true), _defineProperty$2(_classNames2, 'Option-checkbox--active', active), _defineProperty$2(_classNames2, 'OptionWrapper', true), _classNames2)); - var textClassName = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'Option-text', true), _defineProperty$2(_classNames3, 'Option-text--wrap', !props.truncateOption), _classNames3)); - var customOptionClass = classnames((_classNames4 = {}, _defineProperty$2(_classNames4, 'OptionWrapper', true), _defineProperty$2(_classNames4, 'OptionWrapper--disabled', disabled), _classNames4)); + var _super = _createSuper(Calendar); - var onUpdateActiveOption = function onUpdateActiveOption() { - if (disabled) return; - if (updateActiveOption) updateActiveOption(index); - }; + function Calendar(props) { + var _this; - var onClickHandler = function onClickHandler(e) { - e.stopPropagation(); - if (disabled) return; - if (onClick) onClick(); - }; + _classCallCheck(this, Calendar); - var onChangeHandler = function onChangeHandler(e) { - e.stopPropagation(); - if (disabled) return; - if (onChange) onChange(e); - }; + _this = _super.call(this, props); - if (props.optionRenderer) { - return /*#__PURE__*/React.createElement("div", _extends$3({ - className: customOptionClass, - "data-disabled": disabled, - onMouseEnter: onUpdateActiveOption - }, !checkboxes && { - onClick: onClick - }), props.optionRenderer({ - optionData: optionData, - selected: selected, - onChange: onChange, - active: active, - index: index - })); - } + _defineProperty$1(_assertThisInitialized$1(_this), "updateState", function (year, month, date) { + _this.setState({ + year: year, + month: month, + date: date + }); + }); - var renderSubInfo = function renderSubInfo(subInfo) { - var labelAppearance = disabled ? 'disabled' : selected ? 'white' : 'subtle'; - var iconAppearance = selected ? 'white' : 'disabled'; + _defineProperty$1(_assertThisInitialized$1(_this), "getDateValue", function (year, month, date) { + var d = new Date(year, month, date); + return d; + }); - if (typeof subInfo === 'string') { - return /*#__PURE__*/React.createElement(Text, { - appearance: labelAppearance - }, subInfo); - } + _defineProperty$1(_assertThisInitialized$1(_this), "getNavDateInfo", function (index) { + var _this$state = _this.state, + yearBlockNav = _this$state.yearBlockNav, + yearNav = _this$state.yearNav, + monthNav = _this$state.monthNav; + var monthBlock = config.monthBlock; + var yearBlock = yearBlockNav; + var month = (monthNav + index) % monthBlock === -1 ? 11 : (monthNav + index) % monthBlock; // const year = yearNav + (index !== 0 && month < monthNav ? 1 : 0); - var _subInfo$list = subInfo.list, - list = _subInfo$list === void 0 ? [] : _subInfo$list, - seperator = subInfo.seperator; - return /*#__PURE__*/React.createElement(MetaList, { - list: list, - seperator: seperator, - iconAppearance: iconAppearance, - labelAppearance: labelAppearance, - seperatorAppearance: iconAppearance + var year; + + if (index >= 0) { + year = yearNav + (index !== 0 && month < monthNav ? 1 : 0); + } else { + year = yearNav - (index !== 0 && month > monthNav ? 1 : 0); + } + + return { + yearBlock: yearBlock, + year: year, + month: month + }; }); - }; - var appearance = disabled ? 'disabled' : selected && !menu ? 'white' : 'default'; - var type = checkboxes ? 'WITH_CHECKBOX' : optionType; - var component = OptionTypeMapping[type]; - return component({ - selected: selected, - index: index, - renderSubInfo: renderSubInfo, - optionData: optionData, - textClassName: textClassName, - appearance: appearance, - onClickHandler: onClickHandler, - onChangeHandler: onChangeHandler, - onUpdateActiveOption: onUpdateActiveOption, - dataTest: "DesignSystem-DropdownOption--".concat(type), - className: checkboxes ? CheckboxClassName : OptionClassName - }); -}; + _defineProperty$1(_assertThisInitialized$1(_this), "getInRangeError", function () { + var _this$props = _this.props, + rangePicker = _this$props.rangePicker, + rangeLimit = _this$props.rangeLimit; + var _this$state2 = _this.state, + startDateState = _this$state2.startDate, + endDateState = _this$state2.endDate, + hoverDateState = _this$state2.hoverDate; -var PlaceholderParagraph = function PlaceholderParagraph(props) { - var _classNames2; + if (rangePicker && rangeLimit) { + var _getDateInfo = getDateInfo(startDateState), + startYear = _getDateInfo.year, + startMonth = _getDateInfo.month, + _startDate2 = _getDateInfo.date; - var length = props.length, - size = props.size, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classnames(_defineProperty$2({ - 'Placeholder--animation': true, - PlaceholderParagraph: true - }, "PlaceholderParagraph--".concat(size), size)); - var wrapperClass = classnames((_classNames2 = { - 'PlaceholderParagraph-wrapper': true - }, _defineProperty$2(_classNames2, "PlaceholderParagraph-wrapper--length-".concat(length), length), _defineProperty$2(_classNames2, "PlaceholderParagraph-wrapper--size-".concat(size), size), _classNames2), className); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: wrapperClass - }), /*#__PURE__*/React.createElement("span", { - className: classes - })); -}; -PlaceholderParagraph.displayName = 'PlaceholderParagraph'; -PlaceholderParagraph.defaultProps = { - length: 'medium' -}; - -var PlaceholderImage = function PlaceholderImage(props) { - var _classNames; - - var _props$size = props.size, - size = _props$size === void 0 ? 'small' : _props$size, - round = props.round, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classnames((_classNames = { - PlaceholderImage: true, - 'Placeholder--animation': true - }, _defineProperty$2(_classNames, 'PlaceholderImage--round', round), _defineProperty$2(_classNames, "PlaceholderImage--".concat(size), size), _classNames), className); - return /*#__PURE__*/React.createElement("span", _extends$3({}, baseProps, { - className: classes - })); -}; -PlaceholderImage.displayName = 'PlaceholderImage'; -PlaceholderImage.defaultProps = { - size: 'small' -}; + var _getDateInfo2 = getDateInfo(endDateState), + endYear = _getDateInfo2.year, + endMonth = _getDateInfo2.month, + _endDate2 = _getDateInfo2.date; -var Placeholder = function Placeholder(props) { - var imageSize = props.imageSize, - withImage = props.withImage, - round = props.round, - children = props.children, - className = props.className; - var baseProps = extractBaseProps(props); - var paragraphClasses = classnames(_defineProperty$2({ - 'Placeholder-paragraph': true - }, 'Placeholder-paragraph--withImage', withImage)); - var classes = classnames(_defineProperty$2({}, 'Placeholder', true), className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-Placeholder" - }, baseProps, { - className: classes - }), withImage && /*#__PURE__*/React.createElement(PlaceholderImage, { - round: round, - size: imageSize, - "data-test": "DesignSystem-Placeholder--Image" - }), children && /*#__PURE__*/React.createElement("div", { - className: paragraphClasses, - "data-test": "DesignSystem-Placeholder--Paragraph" - }, children)); -}; -Placeholder.displayName = 'Placeholder'; -Placeholder.defaultProps = { - withImage: true, - imageSize: 'small' -}; + var _getDateInfo3 = getDateInfo(hoverDateState), + hoverYear = _getDateInfo3.year, + hoverMonth = _getDateInfo3.month, + hoverDate = _getDateInfo3.date; -var Loading = function Loading(props) { - var loadingType = props.loadingType; + var limitDate; - switch (loadingType) { - case 'DEFAULT': - return /*#__PURE__*/React__default.createElement(PlaceholderParagraph, { - length: 'large' - }); + if (startDateState) { + limitDate = new Date(startDateState); + limitDate.setDate(_startDate2 + rangeLimit); + return compareDate(limitDate, 'less', hoverYear, hoverMonth, hoverDate + 1) || compareDate(limitDate, 'less', endYear, endMonth, _endDate2 + 1); + } - case 'WITH_ICON': - return /*#__PURE__*/React__default.createElement(Placeholder, { - withImage: true, - round: true - }, /*#__PURE__*/React__default.createElement(PlaceholderParagraph, { - length: "large" - })); + if (endDateState) { + limitDate = new Date(endDateState); + limitDate.setDate(_endDate2 - rangeLimit); + return compareDate(limitDate, 'more', hoverYear, hoverMonth, hoverDate - 1) || compareDate(limitDate, 'more', startYear, startMonth, _startDate2 - 1); + } + } - case 'WITH_META': - return /*#__PURE__*/React__default.createElement(Placeholder, { - withImage: false - }, /*#__PURE__*/React__default.createElement(PlaceholderParagraph, { - length: "large" - }), /*#__PURE__*/React__default.createElement(PlaceholderParagraph, { - length: "medium", - size: "xxs" - })); + return false; + }); - case 'WITH_CHECKBOX': - return /*#__PURE__*/React__default.createElement(Placeholder, { - withImage: true - }, /*#__PURE__*/React__default.createElement(PlaceholderParagraph, { - length: "large" - })); + _defineProperty$1(_assertThisInitialized$1(_this), "selectYear", function (year) { + return function () { + _this.updateState(year); - case 'ICON_WITH_META': - return /*#__PURE__*/React__default.createElement(Placeholder, { - withImage: true, - round: true, - imageSize: 'medium' - }, /*#__PURE__*/React__default.createElement(PlaceholderParagraph, { - length: "large" - }), /*#__PURE__*/React__default.createElement(PlaceholderParagraph, { - length: "medium", - size: "xxs" - })); - } + _this.setState({ + view: 'month' + }); + }; + }); - return null; -}; + _defineProperty$1(_assertThisInitialized$1(_this), "yearMouseOverHandler", function (year, isCurrentYear, isDisabled, ev) { + var onYearHover = _this.props.onYearHover; + var yearData = { + value: year, + year: year, + isCurrentYear: isCurrentYear, + isDisabled: isDisabled + }; + if (onYearHover) onYearHover(yearData, ev); + }); -var alignmentMapping = { - right: 'bottom-start', - left: 'bottom-end' -}; + _defineProperty$1(_assertThisInitialized$1(_this), "selectMonth", function (month) { + return function () { + _this.updateState(_this.state.yearNav, month); -var DropdownList = function DropdownList(props) { - var _classNames4, _classNames5; + _this.setState({ + view: 'date' + }); + }; + }); - var _props$listOptions = props.listOptions, - listOptions = _props$listOptions === void 0 ? [] : _props$listOptions, - inputRef = props.inputRef, - _props$align = props.align, - align = _props$align === void 0 ? 'right' : _props$align, - _props$optionType = props.optionType, - optionType = _props$optionType === void 0 ? 'DEFAULT' : _props$optionType, - _props$applyButtonLab = props.applyButtonLabel, - applyButtonLabel = _props$applyButtonLab === void 0 ? 'Apply' : _props$applyButtonLab, - _props$cancelButtonLa = props.cancelButtonLabel, - cancelButtonLabel = _props$cancelButtonLa === void 0 ? 'Cancel' : _props$cancelButtonLa, - _props$truncateOption = props.truncateOption, - truncateOption = _props$truncateOption === void 0 ? true : _props$truncateOption, - _props$withSelectAll = props.withSelectAll, - withSelectAll = _props$withSelectAll === void 0 ? true : _props$withSelectAll, - _props$maxHeight = props.maxHeight, - maxHeight = _props$maxHeight === void 0 ? 200 : _props$maxHeight, - customTrigger = props.customTrigger, - selected = props.selected, - tempSelected = props.tempSelected, - previousSelected = props.previousSelected, - remainingOptions = props.remainingOptions, - firstEnabledOption = props.firstEnabledOption, - dropdownOpen = props.dropdownOpen, - menu = props.menu, - searchTerm = props.searchTerm, - showApplyButton = props.showApplyButton, - withCheckbox = props.withCheckbox, - withSearch = props.withSearch, - popoverOptions = props.popoverOptions, - onSearchChange = props.onSearchChange, - optionRenderer = props.optionRenderer, - applyOptions = props.applyOptions, - cancelOptions = props.cancelOptions, - toggleDropdown = props.toggleDropdown, - className = props.className; - var baseProps = extractBaseProps(props); - var dropdownRef = /*#__PURE__*/React.createRef(); - var triggerRef = /*#__PURE__*/React.createRef(); - var dropdownTriggerRef = /*#__PURE__*/React.createRef(); - var dropdownCancelButtonRef = /*#__PURE__*/React.createRef(); - var dropdownApplyButtonRef = /*#__PURE__*/React.createRef(); + _defineProperty$1(_assertThisInitialized$1(_this), "monthMouseOverHandler", function (month, isCurrentMonth, isDisabled, ev) { + var months = config.months; + var onMonthHover = _this.props.onMonthHover; + var monthData = { + value: months[month], + month: months[month], + year: _this.state.year, + isCurrentMonth: isCurrentMonth, + isDisabled: isDisabled + }; + if (onMonthHover) onMonthHover(monthData, ev); + }); - var _React$useState = React.useState(), - _React$useState2 = _slicedToArray(_React$useState, 2), - popoverStyle = _React$useState2[0], - setPopoverStyle = _React$useState2[1]; + _defineProperty$1(_assertThisInitialized$1(_this), "selectDate", function (index, date, prevMonthDayRange, dayRange) { + var d = _this.calculateDate(index, date, prevMonthDayRange, dayRange, false); - var _React$useState3 = React.useState(firstEnabledOption), - _React$useState4 = _slicedToArray(_React$useState3, 2), - cursor = _React$useState4[0], - setCursor = _React$useState4[1]; + _this.setState({ + currDate: d + }); + }); - React.useEffect(function () { - if (dropdownOpen) { - var _triggerRef$current; + _defineProperty$1(_assertThisInitialized$1(_this), "calculateDate", function (index, date, prevMonthDayRange, dayRange, isDateHovered) { + var neighbouringMonthIndex; + var neighbouringMonthDate; + var type = ''; + + if (date <= 0) { + neighbouringMonthIndex = index - 1; + neighbouringMonthDate = prevMonthDayRange + date; + type = 'prev'; + } else if (date > dayRange) { + neighbouringMonthIndex = index; + neighbouringMonthDate = date; + } else { + neighbouringMonthIndex = index; + neighbouringMonthDate = date; + } - var width = props.width, - minWidth = props.minWidth, - maxWidth = props.maxWidth; - var popperWidth = (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.clientWidth; - var popperMinWidth = showApplyButton ? 176 : menu ? 128 : popperWidth; - var popperWrapperStyle = { - width: width ? width : popperWidth, - minWidth: minWidth ? minWidth : popperMinWidth, - maxWidth: maxWidth ? maxWidth : '100%' - }; - setPopoverStyle(popperWrapperStyle); - } - }, [dropdownOpen]); - React.useEffect(function () { - if (firstEnabledOption !== cursor) setCursor(firstEnabledOption); - }, [firstEnabledOption]); - var _props$triggerSize = props.triggerSize, - triggerSize = _props$triggerSize === void 0 ? 'regular' : _props$triggerSize, - _props$placeholder = props.placeholder, - placeholder = _props$placeholder === void 0 ? 'Select' : _props$placeholder, - icon = props.icon, - error = props.error, - disabled = props.disabled, - inlineLabel = props.inlineLabel, - triggerLabel = props.triggerLabel; - var CustomTrigger = customTrigger ? customTrigger(triggerLabel ? triggerLabel : placeholder) : /*#__PURE__*/React.createElement(React.Fragment, null); - var NewCustomTrigger = /*#__PURE__*/React.cloneElement(CustomTrigger, { - tabIndex: 0, - ref: dropdownTriggerRef - }); - var trigger = customTrigger ? NewCustomTrigger : /*#__PURE__*/React.createElement(DropdownButton, { - placeholder: placeholder, - triggerSize: triggerSize, - open: dropdownOpen, - icon: icon, - disabled: disabled, - inlineLabel: inlineLabel, - menu: menu, - error: error, - ref: dropdownTriggerRef - }, triggerLabel); - var dropdownStyle = { - maxHeight: maxHeight, - overflowY: 'auto', - overflowX: 'hidden' - }; + var _this$getNavDateInfo = _this.getNavDateInfo(neighbouringMonthIndex), + year = _this$getNavDateInfo.year, + month = _this$getNavDateInfo.month; - var getDropdownClass = function getDropdownClass(index, isGroup) { - var Dropdown = classnames(_defineProperty$2({}, 'Dropdown--border', isGroup && index !== 0)); - return Dropdown; - }; + if (isDateHovered === false) { + _this.updateState(year, month, neighbouringMonthDate); - var getDropdownSectionClass = function getDropdownSectionClass(showClearButton) { - var _classNames2; + _this.onNavIconClickHandler(type)(); + } - return classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Dropdown-section', true), _defineProperty$2(_classNames2, 'Dropdown-section--withClear', showClearButton), _classNames2)); - }; + var d = _this.getDateValue(year, month, neighbouringMonthDate); - var dropdownClass = classnames(_defineProperty$2({}, 'Dropdown', true), className); - var dropdownWrapperClass = classnames((_classNames4 = {}, _defineProperty$2(_classNames4, 'Dropdown-wrapper', true), _defineProperty$2(_classNames4, 'Dropdown-wrapper--wrap', !truncateOption), _classNames4)); - var SelectAllClass = classnames((_classNames5 = {}, _defineProperty$2(_classNames5, 'Option-checkbox', true), _defineProperty$2(_classNames5, 'Option-checkbox--active', cursor === 0), _defineProperty$2(_classNames5, 'OptionWrapper', true), _classNames5)); + return d; + }); - var onToggleDropdown = function onToggleDropdown(open, type) { - var _dropdownTriggerRef$c; + _defineProperty$1(_assertThisInitialized$1(_this), "onNavIconClickHandler", function (type) { + return function () { + var _this$state3 = _this.state, + view = _this$state3.view, + yearBlockNav = _this$state3.yearBlockNav, + yearNav = _this$state3.yearNav, + monthNav = _this$state3.monthNav; + var yearBlockRange = config.yearBlockRange, + monthBlock = config.monthBlock; - toggleDropdown(open, type); - if (!disabled) (_dropdownTriggerRef$c = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c === void 0 ? void 0 : _dropdownTriggerRef$c.focus(); - setCursor(firstEnabledOption); - }; + switch (view) { + case 'year': + if (type === 'prev') _this.setState({ + yearBlockNav: yearBlockNav - yearBlockRange + }); + if (type === 'next') _this.setState({ + yearBlockNav: yearBlockNav + yearBlockRange + }); + break; - var onCancelOptions = function onCancelOptions() { - var _dropdownTriggerRef$c2; + case 'month': + if (type === 'prev') _this.setState({ + yearNav: yearNav - 1 + }); + if (type === 'next') _this.setState({ + yearNav: yearNav + 1 + }); + break; - cancelOptions(); - (_dropdownTriggerRef$c2 = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c2 === void 0 ? void 0 : _dropdownTriggerRef$c2.focus(); - }; + case 'date': + if (type === 'prev') { + if (monthNav === 0) _this.setState({ + yearNav: yearNav - 1 + }); - var onApplyOptions = function onApplyOptions() { - var _dropdownTriggerRef$c3; + _this.setState({ + monthNav: (monthBlock + monthNav - 1) % monthBlock + }); + } - applyOptions(); - (_dropdownTriggerRef$c3 = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c3 === void 0 ? void 0 : _dropdownTriggerRef$c3.focus(); - }; + if (type === 'next') { + if (monthNav === monthBlock - 1) _this.setState({ + yearNav: yearNav + 1 + }); - var optionClickHandler = function optionClickHandler(item) { - var _dropdownTriggerRef$c4; + _this.setState({ + monthNav: (monthNav + 1) % monthBlock + }); + } - props.onOptionSelect(item); - (_dropdownTriggerRef$c4 = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c4 === void 0 ? void 0 : _dropdownTriggerRef$c4.focus(); - }; + break; + } + }; + }); - var searchClearHandler = function searchClearHandler() { - setCursor(firstEnabledOption); - if (onSearchChange && searchTerm) onSearchChange(''); - }; + _defineProperty$1(_assertThisInitialized$1(_this), "renderJumpButton", function (type) { + var _this$props2 = _this.props, + disabledBefore = _this$props2.disabledBefore, + disabledAfter = _this$props2.disabledAfter, + size = _this$props2.size; + var _this$state4 = _this.state, + view = _this$state4.view, + yearBlockNav = _this$state4.yearBlockNav, + yearNav = _this$state4.yearNav, + monthNav = _this$state4.monthNav; + var disabled = false; - var searchHandler = function searchHandler(event) { - setCursor(firstEnabledOption); - if (onSearchChange) onSearchChange(event.target.value); - }; + switch (view) { + case 'year': + if (type === 'prev') { + disabled = compareYearBlock(disabledBefore, 'more', yearBlockNav) || compareYearBlock(disabledBefore, 'equal', yearBlockNav); + } - var updateActiveOption = function updateActiveOption(index, parentCheckbox) { - var updatedIndex = withCheckbox && withSelectAll && !props.async && !parentCheckbox ? index + 1 : index; - setCursor(updatedIndex); - }; + if (type === 'next') { + disabled = compareYearBlock(disabledAfter, 'less', yearBlockNav) || compareYearBlock(disabledAfter, 'equal', yearBlockNav); + } - var renderFooter = function renderFooter() { - var _props$footerLabel = props.footerLabel, - footerLabel = _props$footerLabel === void 0 ? 'Search for more options' : _props$footerLabel; - return /*#__PURE__*/React.createElement("div", { - className: 'Dropdown-footer' - }, /*#__PURE__*/React.createElement(Text, { - size: "small", - appearance: 'subtle' - }, footerLabel)); - }; + break; - var renderGroups = function renderGroups(group, selectedGroup) { - var onClearOptions = props.onClearOptions; - var isClearDisabled = selected.every(function (option) { - return option.disabled; - }); - return /*#__PURE__*/React.createElement("div", { - className: getDropdownSectionClass(selectedGroup) - }, /*#__PURE__*/React.createElement(Text, { - size: "small", - appearance: 'subtle' - }, group), selectedGroup && /*#__PURE__*/React.createElement(Button, { - onClick: onClearOptions, - disabled: isClearDisabled, - appearance: "transparent", - size: "tiny", - type: "button" - }, "Clear")); - }; + case 'month': + if (type === 'prev') { + disabled = compareDate(disabledBefore, 'more', yearNav - 1); + } - var renderApplyButton = function renderApplyButton() { - var disable = _isEqual(previousSelected, tempSelected); + if (type === 'next') { + disabled = compareDate(disabledAfter, 'less', yearNav + 1); + } - return /*#__PURE__*/React.createElement("div", { - className: 'Dropdown-buttonWrapper' - }, /*#__PURE__*/React.createElement(Button, { - ref: dropdownCancelButtonRef, - className: "mr-4", - appearance: 'basic', - onClick: onCancelOptions, - size: 'tiny', - tabIndex: -1, - type: "button" - }, cancelButtonLabel), /*#__PURE__*/React.createElement(Button, { - ref: dropdownApplyButtonRef, - appearance: 'primary', - disabled: disable, - size: 'tiny', - onClick: onApplyOptions, - type: "button" - }, applyButtonLabel)); - }; + break; - var renderSearch = function renderSearch() { - return /*#__PURE__*/React.createElement("div", { - className: 'Dropdown-inputWrapper' - }, /*#__PURE__*/React.createElement(Input, { - name: "Dropdown-search", - icon: 'search', - value: searchTerm, - placeholder: 'Search..', - autoFocus: true, - onChange: searchHandler, - onClear: searchClearHandler, - ref: inputRef, - autoComplete: 'off', - className: "Dropdown-input" - })); - }; + case 'date': + if (type === 'prev') { + disabled = compareDate(disabledBefore, 'more', yearNav, monthNav - 1); + } - var renderLoading = function renderLoading(loadersLength) { - var arr = Array(loadersLength).fill('Loading'); - var type = withCheckbox ? 'WITH_CHECKBOX' : optionType; - return arr.map(function (option, ind) { - return /*#__PURE__*/React.createElement("div", { - className: "Option-loading", - key: "".concat(option, "-").concat(ind) - }, /*#__PURE__*/React.createElement(Loading, { - loadingType: type - })); - }); - }; + if (type === 'next') { + disabled = compareDate(disabledAfter, 'less', yearNav, monthNav + 1); + } - var renderSelectAll = function renderSelectAll() { - var _props$selectAllLabel = props.selectAllLabel, - selectAllLabel = _props$selectAllLabel === void 0 ? 'Select All' : _props$selectAllLabel, - selectAll = props.selectAll, - onSelectAll = props.onSelectAll; - var label = selectAllLabel.trim() ? selectAllLabel.trim() : 'Select All'; - return /*#__PURE__*/React.createElement("div", { - className: SelectAllClass, - onMouseEnter: function onMouseEnter(_e) { - return updateActiveOption(0, true); + break; } - }, /*#__PURE__*/React.createElement(Checkbox, { - label: label, - onChange: onSelectAll, - checked: selectAll.checked, - indeterminate: selectAll.indeterminate, - tabIndex: -1, - className: "OptionCheckbox" - })); - }; - - var renderOptions = function renderOptions(item, index) { - // const selectAllPresent = withCheckbox - // && remainingOptions === 0 - // && searchTerm === '' - // && withSelectAll; - var selectAllPresent = _isSelectAllPresent(searchTerm, remainingOptions, withSelectAll, withCheckbox); - var active = selectAllPresent ? index + 1 === cursor : index === cursor; - var optionIsSelected = tempSelected.findIndex(function (option) { - return option.value === item.value; - }) !== -1; - return /*#__PURE__*/React.createElement(Option, { - optionData: item, - truncateOption: truncateOption, - selected: optionIsSelected, - index: index, - updateActiveOption: updateActiveOption, - optionRenderer: optionRenderer, - active: active, - checkboxes: withCheckbox, - menu: menu, - onClick: function onClick() { - return optionClickHandler(item); - }, - onChange: function onChange(e) { - return props.onSelect(item, e.target.checked); - }, - optionType: props.optionType + var headerIconClass = classnames(_defineProperty$1({ + 'Calendar-headerIcon': true + }, "Calendar-headerIcon--".concat(type), type)); + return /*#__PURE__*/React.createElement(Button, { + type: "button", + className: headerIconClass, + appearance: "basic", + icon: "arrow_".concat(type === 'next' ? 'forward' : 'back'), + disabled: disabled, + size: size === 'small' ? 'tiny' : 'regular', + onClick: _this.onNavIconClickHandler(type) + }); }); - }; - var renderDropdownSection = function renderDropdownSection() { - var _props$selectedSectio = props.selectedSectionLabel, - selectedSectionLabel = _props$selectedSectio === void 0 ? 'Selected Items' : _props$selectedSectio, - _props$loadersCount = props.loadersCount, - loadersCount = _props$loadersCount === void 0 ? 10 : _props$loadersCount, - loadingOptions = props.loadingOptions; + _defineProperty$1(_assertThisInitialized$1(_this), "onNavHeadingClickHandler", function (currView) { + return function () { + var monthsInView = _this.props.monthsInView; + var jumpView = _this.props.jumpView; - var selectAllPresent = _isSelectAllPresent(searchTerm, remainingOptions, withSelectAll, withCheckbox); + if (jumpView) { + if (monthsInView > 1) jumpView = false; + } - if (loadersCount && loadingOptions) { - return /*#__PURE__*/React.createElement("div", { - className: 'Dropdown-loading' - }, /*#__PURE__*/React.createElement("div", { - className: "Dropdown-wrapper", - style: dropdownStyle - }, renderLoading(loadersCount))); - } + if (jumpView) { + if (currView === 'year') _this.setState({ + view: 'date' + }); + if (currView === 'month') _this.setState({ + view: 'year' + }); + if (currView === 'date') _this.setState({ + view: 'month' + }); + } + }; + }); - if (listOptions.length === 0 && !loadingOptions) { - var _props$noResultMessag = props.noResultMessage, - noResultMessage = _props$noResultMessag === void 0 ? 'No result found' : _props$noResultMessag; - return /*#__PURE__*/React.createElement("div", { - className: 'Dropdown-errorWrapper' - }, /*#__PURE__*/React.createElement("div", { - className: 'Option' - }, /*#__PURE__*/React.createElement("div", { - className: 'Option-subinfo' - }, noResultMessage))); - } + _defineProperty$1(_assertThisInitialized$1(_this), "renderHeaderContent", function (index) { + var _this$props3 = _this.props, + size = _this$props3.size, + monthsInView = _this$props3.monthsInView, + rangePicker = _this$props3.rangePicker; + var _this$state5 = _this.state, + view = _this$state5.view, + yearBlockNav = _this$state5.yearBlockNav; + var yearBlockRange = config.yearBlockRange, + months = config.months; - return /*#__PURE__*/React.createElement("div", { - className: dropdownWrapperClass, - style: dropdownStyle, - ref: dropdownRef - }, selectAllPresent && renderSelectAll(), selected.length > 0 && renderGroups(selectedSectionLabel, true), selected.map(function (option, index) { - return renderOptions(option, index); - }), listOptions.map(function (option, index) { - var prevGroup = index > 0 ? listOptions[index - 1].group : selected.length ? selectedSectionLabel : undefined; - var currentGroup = option.group; - var isGroup = prevGroup !== currentGroup; - var updatedIndex = index + selected.length; - return /*#__PURE__*/React.createElement("div", { - className: getDropdownClass(updatedIndex, isGroup), - key: index - }, isGroup && currentGroup && renderGroups(currentGroup), renderOptions(option, updatedIndex)); - }), props.async && remainingOptions > 0 && renderFooter()); - }; + var _this$getNavDateInfo2 = _this.getNavDateInfo(index), + yearNavVal = _this$getNavDateInfo2.year, + monthNavVal = _this$getNavDateInfo2.month; - var focusOption = function focusOption(direction, classes) { - var elements = document.querySelectorAll(classes); - var updatedCursor = direction === 'down' ? cursor + 1 : cursor - 1; - var startIndex = updatedCursor; - var endIndex = direction === 'down' ? elements.length : -1; + var headerContentClass = classnames({ + 'Calendar-headerContent': true, + 'Calendar-headerContent--noIcon-left': index === monthsInView - 1, + 'Calendar-headerContent--noIcon-right': index === 0 + }); + var headerContent = ''; + if (view === 'year') headerContent = "".concat(yearBlockNav, " - ").concat(yearBlockNav + (yearBlockRange - 1)); + if (view === 'month') headerContent = "".concat(yearNavVal); - while (startIndex !== endIndex) { - var node = elements[startIndex]; + var renderHeading = function renderHeading(content) { + if (size === 'small') { + return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Text, { + weight: "strong" + }, content), view !== 'year' && !rangePicker && /*#__PURE__*/React.createElement(Icon, { + appearance: "inverse", + className: "pl-3", + name: "keyboard_arrow_down" + })); + } - if (node.getAttribute('data-disabled') !== 'true') { - var element = elements[startIndex]; - if (element) scrollIntoView(dropdownRef.current, element); - if (element !== undefined) setCursor(startIndex); - break; - } + return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Heading, { + size: "s" + }, content), view !== 'year' && !rangePicker && /*#__PURE__*/React.createElement(Icon, { + appearance: "inverse", + className: "pl-3", + name: "keyboard_arrow_down" + })); + }; - if (direction === 'down') { - startIndex++; - } else { - startIndex--; - } - } - }; + return /*#__PURE__*/React.createElement("div", { + className: headerContentClass + }, view !== 'date' && + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement("div", { + className: "d-flex justify-content-center align-items-center", + onClick: _this.onNavHeadingClickHandler(view) + }, renderHeading(headerContent)), view === 'date' && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { + onClick: _this.onNavHeadingClickHandler(view), + className: "d-flex justify-content-center align-items-center" + }, renderHeading(months[monthNavVal])), /*#__PURE__*/React.createElement("div", { + className: "ml-4 d-flex justify-content-center align-items-center", + onClick: _this.onNavHeadingClickHandler('month') + }, renderHeading(yearNavVal)))); + }); - var onkeydown = function onkeydown(event) { - var _dropdownApplyButtonR; + _defineProperty$1(_assertThisInitialized$1(_this), "renderBodyYear", function () { + var yearBlockRange = config.yearBlockRange, + yearsInRow = config.yearsInRow; + var _this$props4 = _this.props, + size = _this$props4.size, + rangePicker = _this$props4.rangePicker, + disabledBefore = _this$props4.disabledBefore, + disabledAfter = _this$props4.disabledAfter; + var _this$state6 = _this.state, + yearBlockNav = _this$state6.yearBlockNav, + currYear = _this$state6.currYear; + var noOfRows = Math.ceil(yearBlockRange / yearsInRow); + return Array.from({ + length: noOfRows + }, function (_y, row) { + return /*#__PURE__*/React.createElement("div", { + key: row, + className: "Calendar-valueRow" + }, Array.from({ + length: yearsInRow + }, function (_x, col) { + var _classNames2; - var optionClass = '.OptionWrapper'; + var offset = yearsInRow * row + col; + if (offset === yearBlockNav) return undefined; + var year = yearBlockNav + offset; + var disabled = compareDate(disabledBefore, 'more', year) || compareDate(disabledAfter, 'less', year); + var active = !disabled && !rangePicker && year === _this.state.year; - switch (event.key) { - case 'ArrowDown': - event.preventDefault(); - dropdownOpen ? focusOption('down', optionClass) : onToggleDropdown(!dropdownOpen); - break; + var isCurrentYear = function isCurrentYear() { + return year === currYear; + }; - case 'ArrowUp': - event.preventDefault(); - dropdownOpen ? focusOption('up', optionClass) : onToggleDropdown(!dropdownOpen); - break; + var valueClass = classnames((_classNames2 = { + 'Calendar-value': true, + 'Calendar-value--active': active, + 'Calendar-value--disabled': disabled, + 'Calendar-yearValue': true + }, _defineProperty$1(_classNames2, "Calendar-yearValue--".concat(size), size), _defineProperty$1(_classNames2, 'Calendar-value--currDateMonthYear', isCurrentYear()), _classNames2)); + var textClass = classnames({ + 'Calendar-value--currDate': isCurrentYear() && !active, + 'Calendar-text': true + }); + var getTextColor = classnames({ + inverse: !active && !isCurrentYear() && !disabled, + white: active, + 'primary-lighter': isCurrentYear() && disabled, + primary: isCurrentYear(), + 'inverse-lightest': disabled + }); + return ( + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement("div", { + key: "".concat(row, "-").concat(col), + "data-test": "DesignSystem-Calendar--yearValue", + className: valueClass, + onClick: _this.selectYear(year), + onMouseOver: _this.yearMouseOverHandler.bind(_assertThisInitialized$1(_this), year, isCurrentYear(), disabled) + }, /*#__PURE__*/React.createElement(Text, { + size: size === 'small' ? 'small' : 'regular', + color: getTextColor, + className: textClass + }, year)) + ); + })); + }); + }); - case 'Enter': - var activeElement = document.activeElement; - - if (dropdownOpen && (inputRef.current === activeElement || dropdownTriggerRef.current === activeElement)) { - event.preventDefault(); - var classes = withCheckbox ? "".concat(optionClass, " .Checkbox-input") : optionClass; - var elements = document.querySelectorAll(classes); - var element = elements[cursor]; - if (element) element.click(); - } + _defineProperty$1(_assertThisInitialized$1(_this), "renderBodyMonth", function () { + var monthBlock = config.monthBlock, + monthsInRow = config.monthsInRow, + months = config.months; + var _this$props5 = _this.props, + size = _this$props5.size, + disabledBefore = _this$props5.disabledBefore, + disabledAfter = _this$props5.disabledAfter; + var _this$state7 = _this.state, + yearNav = _this$state7.yearNav, + year = _this$state7.year, + currYear = _this$state7.currYear, + currMonth = _this$state7.currMonth; + var noOfRows = Math.ceil(monthBlock / monthsInRow); + return Array.from({ + length: noOfRows + }, function (_y, row) { + return /*#__PURE__*/React.createElement("div", { + key: row, + className: "Calendar-valueRow" + }, Array.from({ + length: monthsInRow + }, function (_x, col) { + var _classNames3; - if (!dropdownOpen) onToggleDropdown(!dropdownOpen); - break; + var month = monthsInRow * row + col; + var disabled = compareDate(disabledBefore, 'more', yearNav, month) || compareDate(disabledAfter, 'less', yearNav, month); + var active = !disabled && year === yearNav && month === _this.state.month; - case 'Tab': - if (!showApplyButton && dropdownOpen) { - event.preventDefault(); - onToggleDropdown(false, 'onClick'); - return; - } + var isCurrentMonth = function isCurrentMonth() { + return currYear === yearNav && currMonth === month; + }; - var currentElement = document.activeElement; - var disabledApplyButton = (_dropdownApplyButtonR = dropdownApplyButtonRef.current) === null || _dropdownApplyButtonR === void 0 ? void 0 : _dropdownApplyButtonR.disabled; + var valueClass = classnames((_classNames3 = { + 'Calendar-value': true, + 'Calendar-value--active': active, + 'Calendar-value--disabled': disabled, + 'Calendar-monthValue': true + }, _defineProperty$1(_classNames3, "Calendar-monthValue--".concat(size), size), _defineProperty$1(_classNames3, 'Calendar-value--currDateMonthYear', isCurrentMonth()), _classNames3)); + var getTextColor = classnames({ + inverse: !active && !isCurrentMonth() && !disabled, + white: active, + 'primary-lighter': isCurrentMonth() && disabled, + primary: isCurrentMonth(), + 'inverse-lightest': disabled + }); + var textClass = classnames({ + 'Calendar-value--currDate': isCurrentMonth() && !active, + 'Calendar-text': true + }); + return ( + /*#__PURE__*/ + //TODO(a11y) + //eslint-disable-next-line + React.createElement("div", { + key: "".concat(row, "-").concat(col), + "data-test": "DesignSystem-Calendar--monthValue", + className: valueClass, + onClick: _this.selectMonth(month), + onMouseOver: _this.monthMouseOverHandler.bind(_assertThisInitialized$1(_this), month, isCurrentMonth(), disabled) + }, /*#__PURE__*/React.createElement(Text, { + size: size === 'small' ? 'small' : 'regular', + color: getTextColor, + className: textClass + }, months[month])) + ); + })); + }); + }); - if ((currentElement === dropdownCancelButtonRef.current && disabledApplyButton || currentElement === dropdownApplyButtonRef.current) && dropdownOpen) { - event.preventDefault(); - onToggleDropdown(false, 'onClick'); - return; - } + _defineProperty$1(_assertThisInitialized$1(_this), "onDateRowMouseLeaveHandler", function () { + var rangePicker = _this.props.rangePicker; - if (showApplyButton && dropdownOpen) { - event.preventDefault(); + if (rangePicker) { + _this.setState({ + hoverDate: undefined + }); + } + }); - if (currentElement === dropdownCancelButtonRef.current) { - var _dropdownApplyButtonR2; + _defineProperty$1(_assertThisInitialized$1(_this), "renderBodyDate", function (index) { + var daysInRow = config.daysInRow, + days = config.days; + var _this$props6 = _this.props, + size = _this$props6.size, + firstDayOfWeek = _this$props6.firstDayOfWeek; + var textSize = size === 'large' ? 'regular' : 'small'; + return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { + className: "Calendar-dayValues" + }, Array.from({ + length: 7 + }, function (_x, day) { + var valueClass = classnames({ + 'Calendar-valueWrapper': true + }); + var dayValue = (day + daysInRow + getIndexOfDay(firstDayOfWeek)) % daysInRow; + return /*#__PURE__*/React.createElement(Text, { + key: day, + className: valueClass, + appearance: "default", + weight: "strong", + size: textSize + }, days[size][dayValue]); + })), /*#__PURE__*/React.createElement("div", { + className: "Calendar-dateValues", + onMouseLeave: _this.onDateRowMouseLeaveHandler + }, _this.renderDateValues(index))); + }); - (_dropdownApplyButtonR2 = dropdownApplyButtonRef.current) === null || _dropdownApplyButtonR2 === void 0 ? void 0 : _dropdownApplyButtonR2.focus(); - } else { - var _dropdownCancelButton; + _defineProperty$1(_assertThisInitialized$1(_this), "renderDateValues", function (index) { + var daysInRow = config.daysInRow, + monthBlock = config.monthBlock; + var _this$props7 = _this.props, + size = _this$props7.size, + rangePicker = _this$props7.rangePicker, + firstDayOfWeek = _this$props7.firstDayOfWeek, + disabledBefore = _this$props7.disabledBefore, + disabledAfter = _this$props7.disabledAfter, + monthsInView = _this$props7.monthsInView, + onDateHover = _this$props7.onDateHover; + var _this$state8 = _this.state, + startDate = _this$state8.startDate, + endDate = _this$state8.endDate, + hoverDate = _this$state8.hoverDate, + yearState = _this$state8.year, + monthState = _this$state8.month, + dateState = _this$state8.date, + currMonth = _this$state8.currMonth, + currYear = _this$state8.currYear, + todayDate = _this$state8.todayDate; - (_dropdownCancelButton = dropdownCancelButtonRef.current) === null || _dropdownCancelButton === void 0 ? void 0 : _dropdownCancelButton.focus(); - } - } + var _this$getNavDateInfo3 = _this.getNavDateInfo(index), + yearNavVal = _this$getNavDateInfo3.year, + monthNavVal = _this$getNavDateInfo3.month; - break; - } - }; + var prevMonth = monthNavVal - 1; + var prevYear = yearNavVal; + var prevMonthDayRange = getDaysInMonth(prevYear, prevMonth); + var dayRange = getDaysInMonth(yearNavVal, monthNavVal); + var firstDayIndex = getFirstDayOfMonth(yearNavVal, monthNavVal); + var desiredFirstDayIndex = getIndexOfDay(firstDayOfWeek); + var dayDiff = (firstDayIndex - desiredFirstDayIndex + 7) % 7; + var dummyDays = Math.abs(dayDiff); + var noOfRows = Math.ceil((dayRange + dummyDays) / daysInRow); // if(noOfRows !== 6 && monthsInView <= 1) ? - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: dropdownClass, - ref: triggerRef, - onKeyDown: onkeydown - }), /*#__PURE__*/React.createElement(Popover, _extends$3({ - onToggle: onToggleDropdown, - trigger: trigger, - triggerClass: !menu ? 'w-100' : '', - open: dropdownOpen, - customStyle: popoverStyle, - position: alignmentMapping[align] - }, popoverOptions), (withSearch || props.async) && renderSearch(), renderDropdownSection(), showApplyButton && withCheckbox && renderApplyButton())); -}; + if (noOfRows === 6) ; else if (monthsInView > 1) ; else { + noOfRows = noOfRows + 1; + } -DropdownList.displayName = 'DropdownList'; + var inRangeError = _this.getInRangeError(); -var _excluded$v = ["triggerOptions", "selected"]; -var inputRef = /*#__PURE__*/React.createRef(); + var events = _this.props.events; -/** - * ###Note: - * 1. Dropdown props types: - * - async: fetchOptions - * - sync: options, loading - * 2. Sync Dropdown: - * - Manually toggle loading state to update options (Options <= staticLimit). - * 3. Callback Functions - * - Controlled Dropdown: - * * onUpdate: Called when user `clicks on option` / `clicks on Clear, Cancel or Apply button`. - * * onChange: Called when selected options are updated. - * - Uncontrolled Dropdown: - * * onChange: Called when user `clicks on option` / `clicks on Clear, or Apply button`. - */ -var Dropdown = /*#__PURE__*/function (_React$Component) { - _inherits$1(Dropdown, _React$Component); + var onClickHandler = function onClickHandler(date) { + return function () { + if (rangePicker) { + if (startDate && endDate) { + _this.selectDate(index, date, prevMonthDayRange, dayRange); + } else { + if (!inRangeError) _this.selectDate(index, date, prevMonthDayRange, dayRange); + } + } else { + _this.selectDate(index, date, prevMonthDayRange, dayRange); + } + }; + }; - var _super = _createSuper$1(Dropdown); + var onMouseOverHandler = function onMouseOverHandler(date) { + return function () { + if (rangePicker) { + var d = _this.getDateValue(yearNavVal, monthNavVal, date); - function Dropdown(props) { - var _this; + if (!startDate || !endDate) { + _this.setState({ + hoverDate: d + }); + } + } + }; + }; - _classCallCheck$1(this, Dropdown); + var onMouseEnterHandler = function onMouseEnterHandler(date, isToday, isDisabled, ev) { + var d = _this.calculateDate(index, date, prevMonthDayRange, dayRange, true) || new Date(); + var months = config.months, + days = config.days; + var dayName = days.large[d.getDay()]; + var dateData = { + value: d.getDate(), + isToday: isToday, + isDisabled: isDisabled, + todayDate: _this.state.currDate, + fullDate: d, + date: d.getDate(), + month: months[d.getMonth()], + year: d.getFullYear(), + dayName: dayName + }; + if (onDateHover) onDateHover(dateData, ev); + }; - _this = _super.call(this, props); + return Array.from({ + length: noOfRows + }, function (_y, row) { + return /*#__PURE__*/React.createElement("div", { + key: row, + className: "Calendar-valueRow" + }, Array.from({ + length: daysInRow + }, function (_x, col) { + var _classNames4; - _defineProperty$2(_assertThisInitialized$2(_this), "staticLimit", void 0); + var date = daysInRow * row + col - dummyDays + 1; + var dummy = date <= 0 || date > dayRange; + var disabled = compareDate(disabledBefore, 'more', yearNavVal, monthNavVal, date) || compareDate(disabledAfter, 'less', yearNavVal, monthNavVal, date); + var active = !disabled && yearState === yearNavVal && monthState === monthNavVal && dateState === date; - _defineProperty$2(_assertThisInitialized$2(_this), "getDisabledOptions", function () { - var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - return options.filter(function (option) { - return option.disabled; - }); - }); + var today = function today() { + var boolVal; - _defineProperty$2(_assertThisInitialized$2(_this), "fetchOptionsFunction", function (searchTerm) { - var options = _this.props.options; - var filteredOptions = searchTerm ? getSearchedOptions(options, searchTerm) : options; - return new Promise(function (resolve) { - resolve({ - searchTerm: searchTerm, - options: filteredOptions, - count: filteredOptions.length - }); - }); - }); + if (date <= 0) { + boolVal = currYear === yearNavVal && currMonth === monthNavVal - 1 && todayDate === prevMonthDayRange + date; + } else if (date > dayRange) { + boolVal = currYear === yearNavVal && currMonth === monthNavVal + 1 && todayDate === date - dayRange; + } else { + boolVal = currYear === yearNavVal && currMonth === monthNavVal && todayDate === date; + } - _defineProperty$2(_assertThisInitialized$2(_this), "getUnSelectedOptions", function (options, init) { - if (options.length) { - if (!init) { - return options.filter(function (option) { - return _this.state.tempSelected.findIndex(function (item) { - return item.value === option.value; - }) === -1; - }); - } + return boolVal; + }; - var _this$props$selected = _this.props.selected, - _selected2 = _this$props$selected === void 0 ? [] : _this$props$selected; + var startActive = false; + var endActive = false; + var inRange = false; + var inRangeLast = false; - var unSelectedGroup = options.filter(function (option) { - return _isControlled(_this.props.selected) ? _selected2.findIndex(function (item) { - return item.value === option.value; - }) === -1 : !option.selected; - }); - return unSelectedGroup; - } + var _getDateInfo4 = getDateInfo(startDate), + sYear = _getDateInfo4.year, + sMonth = _getDateInfo4.month, + sDate = _getDateInfo4.date; - return options; - }); + var _getDateInfo5 = getDateInfo(endDate), + eYear = _getDateInfo5.year, + eMonth = _getDateInfo5.month, + eDate = _getDateInfo5.date; - _defineProperty$2(_assertThisInitialized$2(_this), "getSelectedOptions", function (options, init) { - var _this$props$selected2 = _this.props.selected, - selected = _this$props$selected2 === void 0 ? [] : _this$props$selected2; + var isStart = startActive || endDate && inRangeLast && compareDate(hoverDate, 'less', eYear, eMonth, eDate); + var isEnd = endActive || startDate && inRangeLast && compareDate(hoverDate, 'more', sYear, sMonth, sDate); + var dateInString = "".concat(date <= 0 ? prevMonthDayRange + date : date > dayRange ? date - dayRange : date); + var monthInString = "".concat(date <= 0 ? monthNavVal === 0 ? monthNavVal + monthBlock : (monthNavVal - 1) % monthBlock + 1 : date > dayRange ? (monthNavVal + 1) % monthBlock + 1 : monthNavVal + 1); + var yearInString = "".concat(date <= 0 && monthNavVal + 1 === 1 ? yearNavVal - 1 : date > dayRange && monthNavVal + 1 === 12 ? yearNavVal + 1 : yearNavVal); + var completeDateString = "".concat(monthInString.length === 2 ? monthInString : "0".concat(monthInString), "/").concat(dateInString.length === 2 ? dateInString : "0".concat(dateInString), "/").concat(yearInString); + var isEventExist = events && _typeof(events) === 'object' && events.hasOwnProperty(completeDateString); - if (options.length) { - if (!init) return _this.state.tempSelected; - var selectedGroup = _isControlled(_this.props.selected) ? selected : options.filter(function (option) { - return option.selected; - }); - return selectedGroup; - } + if (rangePicker) { + startActive = compareDate(startDate, 'equal', yearNavVal, monthNavVal, date); + endActive = compareDate(endDate, 'equal', yearNavVal, monthNavVal, date); + inRangeLast = compareDate(hoverDate, 'equal', yearNavVal, monthNavVal, date); + active = !disabled && (startActive || endActive); - return []; + if (startDate && endDate) { + inRange = !disabled && (dateComparison(startDate, 'less', dateInString, monthInString, yearInString) && dateComparison(endDate, 'more', dateInString, monthInString, yearInString) || startActive || endActive); + } else if (startDate) { + inRange = !disabled && (dateComparison(hoverDate, 'more', dateInString, monthInString, yearInString) || inRangeLast) && dateComparison(startDate, 'less', dateInString, monthInString, yearInString); + } else if (endDate) { + inRange = !disabled && (dateComparison(hoverDate, 'less', dateInString, monthInString, yearInString) || inRangeLast) && dateComparison(endDate, 'more', dateInString, monthInString, yearInString); + } + } + + var isRangeError = inRange && inRangeError; + var isStartActive = startDate && dateComparison(startDate, 'equal', dateInString, monthInString, yearInString); + var isEndActive = endDate && dateComparison(endDate, 'equal', dateInString, monthInString, yearInString); + var activeDate = startDate && endDate && (isStartActive || isEndActive); + var isHoverBackwardLast = _this.props.allowReverseSelection && dateComparison(hoverDate, 'equal', dateInString, monthInString, yearInString) && hoverDate && (startDate && hoverDate < startDate || endDate && hoverDate < endDate); + var isHoverForwardLast = dateComparison(hoverDate, 'equal', dateInString, monthInString, yearInString) && hoverDate && startDate && hoverDate >= startDate; + var isEdgeElement = col === 0 || col === 6; + var isValueRange = inRange || rangePicker && (active || activeDate); + var wrapperClass = classnames({ + 'Calendar-valueWrapper': true, + 'Calendar-valueWrapper--inRange': !isEdgeElement && isValueRange, + 'Calendar-valueWrapper--inEdgeRange': isValueRange && isEdgeElement, + 'Calendar-valueWrapper--inRangeError': isRangeError, + 'Calendar-valueWrapper--start': isStart && !isEnd && col !== 6 || rangePicker && isStartActive && col !== 6, + 'Calendar-valueWrapper--end': isEnd && !isStart && col !== 0 || rangePicker && isEndActive && col !== 0, + 'Calendar-valueWrapper--startEnd': isStart && isEnd, + 'Calendar-valueWrapper--startError': isStart && isRangeError || rangePicker && isRangeError && isStartActive, + 'Calendar-valueWrapper--endError': isEnd && isRangeError || rangePicker && isRangeError && isEndActive, + 'Calendar-valueWrapper--dummy': dummy, + 'Calendar-valueWrapper--hoverDate': rangePicker && isHoverForwardLast, + 'Calendar-valueWrapper--hoverEndDate': rangePicker && isHoverBackwardLast, + 'Calendar-valueWrapper--inStartRange': isValueRange && col === 0 && !active && !activeDate, + 'Calendar-valueWrapper--inEndRange': isValueRange && col === 6 && !active && !activeDate + }); + var valueClass = classnames((_classNames4 = { + 'Calendar-value': true, + 'Calendar-inRangeValue': !isStart && !isEnd && !active && !activeDate, + 'Calendar-value--start': isStart && !isEnd, + 'Calendar-value--end': isEnd && !isStart, + 'Calendar-value--startError': isStart && isRangeError, + 'Calendar-value--endError': isEnd && isRangeError, + 'Calendar-value--active': active || activeDate, + 'Calendar-value--disabled': disabled, + 'Calendar-dateValue': true + }, _defineProperty$1(_classNames4, "Calendar-dateValue--".concat(size), size), _defineProperty$1(_classNames4, 'Calendar-value--currDateMonthYear', today()), _defineProperty$1(_classNames4, 'Calendar-value--currDate', today() && !active && !activeDate), _classNames4)); + var getTextColor = classnames({ + inverse: !active && !today() && !disabled && !activeDate, + white: active || activeDate, + 'primary-lighter': today() && disabled, + primary: today(), + 'inverse-lightest': disabled + }); + return /*#__PURE__*/React.createElement("div", { + key: "".concat(row, "-").concat(col), + className: wrapperClass, + "data-test": "designSystem-Calendar-WrapperClass" + }, !dummy && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Text, { + color: getTextColor, + size: size === 'small' ? 'small' : 'regular', + "data-test": "DesignSystem-Calendar--dateValue", + className: valueClass, + onClick: onClickHandler(date), + onMouseOver: onMouseOverHandler(date), + onMouseEnter: onMouseEnterHandler.bind(_assertThisInitialized$1(_this), date, today(), disabled) + }, date), isEventExist && _this.renderEventsIndicator(size, active)), (dummy && date > 0 && index === monthsInView - 1 || dummy && date <= 0 && index === 0) && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Text, { + appearance: active || activeDate ? 'white' : disabled ? 'disabled' : today() ? 'link' : 'default', + size: size === 'small' ? 'small' : 'regular', + "data-test": "DesignSystem-Calendar--dateValue", + className: valueClass, + onClick: onClickHandler(date), + onMouseOver: onMouseOverHandler(date), + onMouseEnter: onMouseEnterHandler.bind(_assertThisInitialized$1(_this), date, today(), disabled) + }, date <= 0 ? prevMonthDayRange + date : date - dayRange), isEventExist && _this.renderEventsIndicator(size, active))); + })); + }); }); - _defineProperty$2(_assertThisInitialized$2(_this), "updateOptions", function (init, async) { - var _this$state = _this.state, - searchTerm = _this$state.searchTerm, - selectAll = _this$state.selectAll, - tempSelected = _this$state.tempSelected, - previousSelected = _this$state.previousSelected; - var updatedAsync = async === undefined ? _this.state.async : async; - var _this$props = _this.props, - fetchOptions = _this$props.fetchOptions, - withCheckbox = _this$props.withCheckbox, - withSearch = _this$props.withSearch; - var fetchFunction = fetchOptions ? fetchOptions : _this.fetchOptionsFunction; - fetchFunction(searchTerm).then(function (res) { - var options = res.options, - count = res.count; + _defineProperty$1(_assertThisInitialized$1(_this), "renderCalendar", function (index) { + var _classNames5; - if (!res.searchTerm || res.searchTerm && res.searchTerm === _this.state.searchTerm) { - var _inputRef$current; + var _this$props8 = _this.props, + size = _this$props8.size, + monthsInView = _this$props8.monthsInView; + var view = _this.state.view; + var containerClass = classnames((_classNames5 = {}, _defineProperty$1(_classNames5, 'Calendar', true), _defineProperty$1(_classNames5, "Calendar-".concat(view, "--").concat(size), view), _defineProperty$1(_classNames5, "Calendar--".concat(size), size), _classNames5)); + var headerClass = classnames(_defineProperty$1({}, "Calendar-header--".concat(size), size)); + var bodyClass = classnames({ + 'Calendar-body': true + }); + return /*#__PURE__*/React.createElement("div", { + key: index, + "data-test": "DesignSystem-Calendar", + className: containerClass + }, /*#__PURE__*/React.createElement("div", { + className: headerClass + }, index === 0 && _this.renderJumpButton('prev'), _this.renderHeaderContent(index), index === monthsInView - 1 && _this.renderJumpButton('next')), /*#__PURE__*/React.createElement("div", { + className: bodyClass + }, view === 'year' && _this.renderBodyYear(), view === 'month' && _this.renderBodyMonth(), view === 'date' && _this.renderBodyDate(index))); + }); - updatedAsync = searchTerm === '' ? count > _this.staticLimit : updatedAsync; - var unSelectedGroup = _showSelectedItems(updatedAsync, searchTerm, withCheckbox) ? _this.getUnSelectedOptions(options, init) : options; - var selectedGroup = searchTerm === '' ? _this.getSelectedOptions(options, init) : []; - var optionsLength = searchTerm === '' ? count : _this.state.optionsLength; + var _this$props9 = _this.props, + _rangePicker = _this$props9.rangePicker, + _startDate = _this$props9.startDate, + _endDate = _this$props9.endDate, + _monthsInView = _this$props9.monthsInView, + _view = _this$props9.view; + var currDate = _rangePicker ? _endDate || _startDate : props.date; - var disabledOptions = _this.getDisabledOptions(unSelectedGroup.slice(0, _this.staticLimit)); + var _yearNav = props.yearNav !== undefined ? props.yearNav : getDateInfo(currDate || Date.now()).year; - _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { - optionsLength: optionsLength, - loading: false, - async: updatedAsync, - searchedOptionsLength: count, - options: unSelectedGroup.slice(0, _this.staticLimit), - tempSelected: init ? selectedGroup : tempSelected, - previousSelected: init ? selectedGroup : previousSelected, - selected: _showSelectedItems(updatedAsync, searchTerm, withCheckbox) ? selectedGroup : [], - triggerLabel: _this.updateTriggerLabel(init ? selectedGroup : tempSelected), - selectAll: !updatedAsync && init ? getSelectAll$1(selectedGroup, optionsLength, disabledOptions.length) : selectAll - })); + var _monthNav = props.monthNav !== undefined ? props.monthNav : getDateInfo(currDate || Date.now()).month; - if (updatedAsync || withSearch) (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus(); - } - }); - }); + var _getDateInfo6 = getDateInfo(currDate), + _year = _getDateInfo6.year, + _month = _getDateInfo6.month, + _date = _getDateInfo6.date; - _defineProperty$2(_assertThisInitialized$2(_this), "updateSearchTerm", function (search) { - _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { - loading: true, - searchInit: true, - searchTerm: search - })); - }); + var todayCompleteDate = getDateInfo(new Date(Date.now())); + _this.state = { + currDate: currDate, + startDate: _startDate, + endDate: _endDate, + yearNav: _yearNav, + monthNav: _monthNav, + year: _year, + month: _month, + date: _date, + todayDate: todayCompleteDate.date, + currMonth: todayCompleteDate.month, + currYear: todayCompleteDate.year, + view: _monthsInView > 1 ? 'date' : _view, + yearBlockNav: getYearBlock(_yearNav) + }; + return _this; + } - _defineProperty$2(_assertThisInitialized$2(_this), "updateOnPopperToggle", function () { - var _this$props2 = _this.props, - withCheckbox = _this$props2.withCheckbox, - showApplyButton = _this$props2.showApplyButton, - onClose = _this$props2.onClose, - name = _this$props2.name, - _this$props2$selected = _this$props2.selected, - selected = _this$props2$selected === void 0 ? [] : _this$props2$selected; - var _this$state2 = _this.state, - previousSelected = _this$state2.previousSelected, - tempSelected = _this$state2.tempSelected, - optionsLength = _this$state2.optionsLength, - async = _this$state2.async, - loading = _this$state2.loading, - searchTerm = _this$state2.searchTerm, - options = _this$state2.options; - var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.props.open : _this.state.open; + _createClass(Calendar, [{ + key: "componentDidUpdate", + value: function componentDidUpdate(prevProps, prevState) { + var _prevState$startDate, _this$state$startDate, _this$state$endDate, _prevState$endDate, _this$state$endDate2; - var disabledOptionsCount = _this.getDisabledOptions(options).length; + var monthsInView = this.props.monthsInView; - if (withCheckbox && showApplyButton) { - var temporarySelected = _isControlled(_this.props.selected) ? selected : previousSelected; + if (prevProps.date !== this.props.date) { + var _getDateInfo7 = getDateInfo(this.props.date), + year = _getDateInfo7.year, + month = _getDateInfo7.month, + _date2 = _getDateInfo7.date; - _this.setState({ - tempSelected: temporarySelected, - selectAll: getSelectAll$1(temporarySelected, optionsLength, disabledOptionsCount), - triggerLabel: _this.updateTriggerLabel(temporarySelected) + this.updateState(year, month, _date2); + var d = convertToDate(this.props.date); + this.setState({ + currDate: d }); } - if (_isOpenControlled(_this.props.open)) { - _this.setState({ - open: popperIsOpen + if (this.props.startDate && !isNaN(this.props.startDate.getTime()) && prevProps.startDate !== this.props.startDate) { + var _d = convertToDate(this.props.startDate); + + this.setState({ + startDate: _d }); } - if (popperIsOpen) { - var moveSelectedGroup = _showSelectedItems(async, searchTerm, withCheckbox) && !_isEqual(_this.state.selected, tempSelected); + if (this.props.endDate && !isNaN(this.props.endDate.getTime()) && prevProps.endDate !== this.props.endDate) { + var _d2 = convertToDate(this.props.endDate); - _this.setState({ - loading: moveSelectedGroup || loading || searchTerm !== '', - searchInit: searchTerm !== '', - searchTerm: '' + this.setState({ + endDate: _d2 }); - - if (moveSelectedGroup) _this.updateOptions(false); } - if (onClose && !popperIsOpen) { - var arr = withCheckbox && showApplyButton ? _isControlled(_this.props.selected) ? selected : previousSelected : _this.state.tempSelected; - var values = arr.map(function (option) { - return option.value; - }); - onClose(values, name); + if (prevProps.view !== this.props.view) { + if (this.props.monthsInView === 1) { + this.setState({ + view: this.props.view + }); + } } - }); - _defineProperty$2(_assertThisInitialized$2(_this), "updateTriggerLabel", function () { - var selectedArray = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - var totalOptions = arguments.length > 1 ? arguments[1] : undefined; - var selectedLength = selectedArray.length; - if (selectedLength === 0) return ''; - var _this$props3 = _this.props, - _this$props3$triggerO = _this$props3.triggerOptions, - triggerOptions = _this$props3$triggerO === void 0 ? {} : _this$props3$triggerO, - getLabel = _this$props3.getLabel; - var customLabel = triggerOptions.customLabel, - _triggerOptions$label = triggerOptions.labelLimit, - labelLimit = _triggerOptions$label === void 0 ? 2 : _triggerOptions$label; - var optionsLength = _this.state ? _this.state.optionsLength : totalOptions; - var label = ''; + if (prevProps.yearNav !== this.props.yearNav) { + var yearNav = this.props.yearNav; - if (selectedLength <= labelLimit) { - label = selectedArray.map(function (option) { - return option.label; - }).join(', '); - } else { - label = customLabel ? customLabel(selectedLength, optionsLength, selectedArray) : "".concat(selectedLength, " selected"); + if (yearNav) { + this.setState({ + yearNav: yearNav, + yearBlockNav: getYearBlock(yearNav) + }); + } } - if (getLabel) getLabel(label); - return label; - }); + if (prevProps.monthNav !== this.props.monthNav) { + var monthNav = this.props.monthNav; - _defineProperty$2(_assertThisInitialized$2(_this), "updateSelectedOptions", function (selectedArray, isSingleSelect, isControlled) { - var _this$state3 = _this.state, - optionsLength = _this$state3.optionsLength, - previousSelected = _this$state3.previousSelected, - selected = _this$state3.selected, - loading = _this$state3.loading, - open = _this$state3.open; - var _this$props4 = _this.props, - onChange = _this$props4.onChange, - withCheckbox = _this$props4.withCheckbox, - showApplyButton = _this$props4.showApplyButton, - closeOnSelect = _this$props4.closeOnSelect, - name = _this$props4.name, - onPopperToggle = _this$props4.onPopperToggle; - var updatePreviousSelected = withCheckbox && showApplyButton && isControlled; + if (monthNav) { + this.setState({ + monthNav: monthNav + }); + } + } - var disabledOptions = _this.getDisabledOptions(_this.state.options); + if (prevState.currDate !== this.state.currDate) { + var _this$props10 = this.props, + rangePicker = _this$props10.rangePicker, + onDateChange = _this$props10.onDateChange; + var _this$state9 = this.state, + currDate = _this$state9.currDate, + _startDate3 = _this$state9.startDate, + _endDate3 = _this$state9.endDate; - var isClearClicked = selectedArray.length === 0 && selected.length > 0 || selectedArray.every(function (option) { - return option.disabled; - }) && !selected.every(function (option) { - return option.disabled; - }); + if (currDate) { + if (onDateChange) onDateChange(currDate); - _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { - tempSelected: selectedArray, - triggerLabel: _this.updateTriggerLabel(selectedArray), - selectAll: getSelectAll$1(selectedArray, optionsLength, disabledOptions.length), - open: _isOpenControlled(_this.props.open) || withCheckbox ? open : !closeOnSelect, - previousSelected: updatePreviousSelected ? selectedArray : previousSelected, - selected: isClearClicked ? selectedArray : selected, - loading: isClearClicked ? true : loading - })); + if (rangePicker) { + this.setState({ + hoverDate: undefined + }); - if (isClearClicked) _this.debounceClear(); + if (_startDate3 && _endDate3) { + this.setState({ + startDate: currDate, + endDate: undefined + }); + } else { + var _getDateInfo8 = getDateInfo(currDate), + _year2 = _getDateInfo8.year, + _month2 = _getDateInfo8.month, + _date3 = _getDateInfo8.date; - if (onChange && (!showApplyButton || isControlled)) { - var values = selectedArray.map(function (item) { - return item.value; - }); - var selectedValues = isSingleSelect ? values[0] : values; - onChange(selectedValues, name); + if (_startDate3) { + if (compareDate(_startDate3, 'more', _year2, _month2, _date3)) { + this.setState({ + startDate: currDate + }); + } else { + this.setState({ + endDate: currDate + }); + } + } else if (_endDate3) { + if (compareDate(_endDate3, 'less', _year2, _month2, _date3)) { + this.setState({ + endDate: currDate + }); + } else { + this.setState({ + startDate: currDate + }); + } + } else { + this.setState({ + startDate: currDate + }); + } + } + } else { + this.setState({ + startDate: currDate + }); + } + } } - if (!withCheckbox && closeOnSelect && onPopperToggle && _isOpenControlled(_this.props.open)) { - onPopperToggle(false, 'optionClick'); + if (this.state.startDate && !isNaN(this.state.startDate.getTime()) && ((_prevState$startDate = prevState.startDate) === null || _prevState$startDate === void 0 ? void 0 : _prevState$startDate.getTime()) !== ((_this$state$startDate = this.state.startDate) === null || _this$state$startDate === void 0 ? void 0 : _this$state$startDate.getTime()) || this.state.endDate && !isNaN((_this$state$endDate = this.state.endDate) === null || _this$state$endDate === void 0 ? void 0 : _this$state$endDate.getTime()) && ((_prevState$endDate = prevState.endDate) === null || _prevState$endDate === void 0 ? void 0 : _prevState$endDate.getTime()) !== ((_this$state$endDate2 = this.state.endDate) === null || _this$state$endDate2 === void 0 ? void 0 : _this$state$endDate2.getTime())) { + var onRangeChange = this.props.onRangeChange; + var _this$state10 = this.state, + _startDate4 = _this$state10.startDate, + _endDate4 = _this$state10.endDate; + if (onRangeChange) onRangeChange(_startDate4, _endDate4); } - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "onOptionSelect", function (option) { - var _this$props5 = _this.props, - onUpdate = _this$props5.onUpdate, - selected = _this$props5.selected; - if (_isControlled(selected)) { - if (onUpdate) onUpdate('select-option', option); - return; - } + if (this.props.allowReverseSelection && prevState.hoverDate !== this.state.hoverDate) { + var _this$state11 = this.state, + hoverDate = _this$state11.hoverDate, + _startDate5 = _this$state11.startDate, + _endDate5 = _this$state11.endDate; - _this.updateSelectedOptions([option], true); - }); + if (_startDate5 && !_endDate5) { + var _getDateInfo9 = getDateInfo(_startDate5), + _year3 = _getDateInfo9.year, + _month3 = _getDateInfo9.month, + _date4 = _getDateInfo9.date; - _defineProperty$2(_assertThisInitialized$2(_this), "onSelect", function (option, checked) { - var _this$props6 = _this.props, - onUpdate = _this$props6.onUpdate, - selected = _this$props6.selected, - showApplyButton = _this$props6.showApplyButton; + if (compareDate(hoverDate, 'less', _year3, _month3, _date4)) { + this.setState({ + startDate: undefined, + endDate: _startDate5 + }); + } + } else if (_endDate5 && !_startDate5) { + var _getDateInfo10 = getDateInfo(_endDate5), + _year4 = _getDateInfo10.year, + _month4 = _getDateInfo10.month, + _date5 = _getDateInfo10.date; - if (_isControlled(selected) && !showApplyButton) { - if (onUpdate) onUpdate(checked ? 'select-option' : 'deselect-option', option); - return; + if (compareDate(hoverDate, 'more', _year4, _month4, _date5)) { + this.setState({ + startDate: _endDate5, + endDate: undefined + }); + } + } } - var tempSelected = _this.state.tempSelected; - var selectedArray = tempSelected.slice(); + if (prevState.year !== this.state.year) { + var _year5 = this.state.year; - if (!checked) { - var index = selectedArray.findIndex(function (item) { - return item.value === option.value; - }); - selectedArray.splice(index, 1); + if (_year5 !== undefined && monthsInView === 1) { + this.setState({ + year: _year5, + yearBlockNav: getYearBlock(_year5), + yearNav: _year5 + }); + } } - selectedArray = checked ? selectedArray.concat(option) : selectedArray; - - _this.updateSelectedOptions(selectedArray, false); - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "onSelectAll", function (event) { - var _this$props7 = _this.props, - onUpdate = _this$props7.onUpdate, - selected = _this$props7.selected, - showApplyButton = _this$props7.showApplyButton; - var _this$state4 = _this.state, - tempSelected = _this$state4.tempSelected, - options = _this$state4.options; + if (prevState.month !== this.state.month) { + var _month5 = this.state.month; - if (_isControlled(selected) && !showApplyButton) { - if (onUpdate) onUpdate(event.target.checked ? 'select-all' : 'deselect-all'); - return; + if (_month5 !== undefined && monthsInView === 1) { + this.setState({ + monthNav: _month5 + }); + } } + } + }, { + key: "renderEventsIndicator", + value: function renderEventsIndicator(size, active) { + var _classNames7; - var selectedArr = tempSelected.slice(); - var selectedDisabledArray = selectedArr.filter(function (option) { - return option.disabled; - }); - var selectedArray = event.target.checked ? [].concat(_toConsumableArray(options.filter(function (option) { - return !option.disabled; - })), _toConsumableArray(selectedDisabledArray)) : selectedDisabledArray; - - _this.updateSelectedOptions(selectedArray, false); - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "debounceSearch", debounce$1(_this.props.searchDebounceDuration, function () { - _this.setState({ - searchInit: false - }, function () { - _this.updateOptions(false); - }); - })); - - _defineProperty$2(_assertThisInitialized$2(_this), "debounceClear", debounce$1(250, function () { - return _this.updateOptions(false); - })); - - _defineProperty$2(_assertThisInitialized$2(_this), "onClearOptions", function () { - var _this$props8 = _this.props, - selected = _this$props8.selected, - name = _this$props8.name, - onUpdate = _this$props8.onUpdate, - showApplyButton = _this$props8.showApplyButton, - onChange = _this$props8.onChange; - var tempSelected = _this.state.tempSelected; - var selectedArray = tempSelected.filter(function (option) { - return option.disabled; + var eventsIndicatorClass = classnames((_classNames7 = { + 'Calendar-eventsIndicator': true + }, _defineProperty$1(_classNames7, "Calendar-eventsIndicator--".concat(size), true), _defineProperty$1(_classNames7, 'Calendar-eventsIndicator--active', active), _classNames7)); + return /*#__PURE__*/React.createElement("span", { + "data-test": "DesignSystem-Calendar-Event-Indicator", + className: eventsIndicatorClass }); + } + }, { + key: "render", + value: function render() { + var _this2 = this; - if (_isControlled(selected) && !showApplyButton) { - if (onUpdate) onUpdate('clear-all'); - return; - } + var _this$props11 = this.props, + monthsInView = _this$props11.monthsInView, + className = _this$props11.className; + var baseProps = extractBaseProps(this.props); + var classes = classnames({ + 'Calendar-wrapper': true + }, className); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: classes, + "data-test": "DesignSystem-Calendar-Wrapper" + }), Array.from({ + length: monthsInView + }, function (_x, index) { + return _this2.renderCalendar(index); + })); + } + }]); - _this.setState({ - selected: selectedArray, - tempSelected: selectedArray, - triggerLabel: '', - loading: true - }); + return Calendar; +}(React.Component); - _this.debounceClear(); +_defineProperty$1(Calendar, "defaultProps", { + size: 'large', + monthsInView: 1, + view: 'date', + firstDayOfWeek: 'sunday', + jumpView: true +}); - if (onChange && !showApplyButton) onChange(selectedArray, name); - }); +var _excluded$Y = ["shadow", "children", "className"]; +var Card = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames; - _defineProperty$2(_assertThisInitialized$2(_this), "onTogglePopper", function (type) { - var onPopperToggle = _this.props.onPopperToggle; + var _props$shadow = props.shadow, + shadow = _props$shadow === void 0 ? 'shadow10' : _props$shadow, + children = props.children, + className = props.className, + rest = _objectWithoutProperties(props, _excluded$Y); - if (onPopperToggle && _isOpenControlled(_this.props.open)) { - onPopperToggle(false, type); - } - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "onCancelOptions", function () { - var _this$state5 = _this.state, - previousSelected = _this$state5.previousSelected, - tempSelected = _this$state5.tempSelected, - optionsLength = _this$state5.optionsLength; - var _this$props9 = _this.props, - selected = _this$props9.selected, - onUpdate = _this$props9.onUpdate, - onClose = _this$props9.onClose, - name = _this$props9.name; - var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.state.open : false; - var values = previousSelected.map(function (option) { - return option.value; - }); + var classes = classnames((_classNames = { + Card: true + }, _defineProperty$1(_classNames, "Card--".concat(shadow), shadow), _defineProperty$1(_classNames, "".concat(className), className), _classNames)); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Card", + ref: ref + }, rest, { + className: classes + }), children); +}); +Card.displayName = 'Card'; +Card.defaultProps = { + shadow: 'shadow10' +}; - if (_isControlled(selected)) { - if (onUpdate) onUpdate('cancel-selected', previousSelected, tempSelected); +var _excluded$X = ["border", "children", "className"]; +var CardSubdued = /*#__PURE__*/React.forwardRef(function (props, ref) { + var border = props.border, + children = props.children, + className = props.className, + rest = _objectWithoutProperties(props, _excluded$X); - _this.onTogglePopper('cancelClick'); + var classes = classnames(_defineProperty$1({ + CardSubdued: true + }, "CardSubdued--".concat(border), border), className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-CardSubdued", + ref: ref + }, rest, { + className: classes + }), children); +}); +CardSubdued.displayName = 'CardSubdued'; - return; - } +var CardHeader = function CardHeader(props) { + var className = props.className, + children = props.children; + var baseProps = extractBaseProps(props); + var classes = classnames({ + 'Card-header': true + }, className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-CardHeader" + }, baseProps, { + className: classes + }), children); +}; +CardHeader.displayName = 'CardHeader'; - var label = _this.updateTriggerLabel(previousSelected); +var CardBody = function CardBody(props) { + var className = props.className, + children = props.children; + var baseProps = extractBaseProps(props); + var classes = classnames({ + 'Card-body': true + }, className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-CardBody" + }, baseProps, { + className: classes + }), children); +}; +CardBody.displayName = 'CardBody'; - var disabledOptions = _this.getDisabledOptions(_this.state.options); +var CardFooter = function CardFooter(props) { + var className = props.className, + children = props.children, + withSeperator = props.withSeperator; + var baseProps = extractBaseProps(props); + var classes = classnames(_defineProperty$1({ + 'Card-footer': true + }, 'Card-footer--withSeperator', withSeperator), className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-CardFooter" + }, baseProps, { + className: classes + }), children); +}; +CardFooter.displayName = 'CardFooter'; +CardFooter.defaultProps = { + withSeperator: true +}; - _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { - tempSelected: previousSelected, - selectAll: getSelectAll$1(previousSelected, optionsLength, disabledOptions.length), - triggerLabel: label, - open: popperIsOpen - })); +var isSpaceKey = function isSpaceKey(e) { + return e.key === 'Space'; +}; - if (onClose && !popperIsOpen) { - onClose(values, name); - } +var _excluded$W = ["onClick", "onKeyDown", "role", "tabIndex"]; +var allowed = { + button: new Set(['Enter', 'Space', 'Spacebar', ' ']), + link: new Set(['Enter']), + // onChange handles everything, no need for extra keyboard interaction + checkbox: new Set([]), + radio: new Set([]) +}; // Refer for keyboard interactions: https://webaim.org/techniques/keyboard/#testing - _this.onTogglePopper('cancelClick'); - }); +var isKeyboardInteractionAllowed = function isKeyboardInteractionAllowed(role, key) { + if (!allowed[role]) { + return false; + } - _defineProperty$2(_assertThisInitialized$2(_this), "onApplyOptions", function () { - var _this$state6 = _this.state, - tempSelected = _this$state6.tempSelected, - previousSelected = _this$state6.previousSelected; - var _this$props10 = _this.props, - onChange = _this$props10.onChange, - selected = _this$props10.selected, - onUpdate = _this$props10.onUpdate, - onClose = _this$props10.onClose, - name = _this$props10.name; - var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.state.open : false; - var values = tempSelected.map(function (option) { - return option.value; - }); + var allowedKeys = allowed[role]; + return allowedKeys.has(key); +}; - if (_isControlled(selected)) { - if (onUpdate) onUpdate('apply-selected', previousSelected, tempSelected); +var useAccessibilityProps = function useAccessibilityProps(_ref) { + var onClick = _ref.onClick, + _onKeyDown = _ref.onKeyDown, + _ref$role = _ref.role, + role = _ref$role === void 0 ? 'button' : _ref$role, + tabIndex = _ref.tabIndex, + rest = _objectWithoutProperties(_ref, _excluded$W); - _this.onTogglePopper('applyClick'); + return _objectSpread2({}, onClick ? { + onClick: onClick, + role: role, + tabIndex: tabIndex || 0, + 'aria-label': rest['aria-label'], + onKeyDown: function onKeyDown(e) { + if (_onKeyDown) { + _onKeyDown(e); return; } - _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { - previousSelected: tempSelected, - optionsApplied: true, - open: popperIsOpen - })); + var key = e.key; - if (onChange) { - onChange(values, name); + if (isKeyboardInteractionAllowed(role, key)) { + if (onClick) { + e.preventDefault(); + onClick(e); + } } + } + } : { + role: role, + tabIndex: tabIndex, + 'aria-label': rest['aria-label'] + }); +}; - if (onClose && !popperIsOpen) { - onClose(values, name); - } +var iconTypeMapper = { + timelapse: 'outlined', + content_copy: 'outlined', + speed: 'outlined', + add_circle_outline: 'outlined', + turned_in_not: 'outlined', + important_devices: 'outlined', + thumb_down_off_alt: 'outlined', + alarm_on: 'outlined', + calendar_view_month: 'outlined', + aspect_ratio: 'outlined', + change_history: 'outlined', + arrow_circle_down: 'outlined', + card_membership: 'outlined', + query_builder: 'outlined', + copyright: 'outlined', + arrow_circle_up: 'outlined', + alarm: 'outlined', + work_outline: 'outlined', + bookmark_border: 'outlined', + delete_outline: 'outlined', + credit_card: 'outlined', + highlight_of: 'outlined', + check_circle_outline: 'outlined', + help_outline: 'outlined', + schedule: 'outlined', + radio_button_unchecked: 'outlined', + radio_button_checked: 'outlined', + "delete": 'outlined' +}; +/** + * + *
+ *  Following Icons are mapped to **outlined** type by default:
+ *  
+ * timelapse, content_copy, speed, add_circle_outline, turned_in_not, important_devices, thumb_down_off_alt, alarm_on, calendar_view_month, aspect_ratio, change_history, arrow_circle_down, card_membership, query_builder, copyright, arrow_circle_up, alarm, work_outline, bookmark_border, delete_outline, credit_card, highlight_of, check_circle_outline, help_outline, schedule, radio_button_unchecked, radio_button_checked, delete + *
+ */ - _this.onTogglePopper('applyClick'); - }); +var Icon = function Icon(props) { + var _classNames; - _defineProperty$2(_assertThisInitialized$2(_this), "onToggleDropdown", function (updatedOpen, type) { - if (_this.props.disabled) { - return; - } + var appearance = props.appearance, + className = props.className, + name = props.name, + size = props.size, + children = props.children; + var accessibilityProps = useAccessibilityProps(props); + var baseProps = extractBaseProps(props); + var mapper = { + outline: 'outlined', + sharp: 'outlined', + round: 'rounded', + filled: 'rounded', + 'two-tone': 'rounded' + }; + var type = props.type && mapper[props.type] || props.type || name && iconTypeMapper[name] || 'rounded'; - var onPopperToggle = _this.props.onPopperToggle; + var getIconAppearance = function getIconAppearance(iconColor) { + var x = iconColor.indexOf('_'); + return iconColor.slice(0, x) + iconColor.charAt(x + 1).toUpperCase() + iconColor.slice(x + 2); + }; - if (onPopperToggle && _isOpenControlled(_this.props.open)) { - onPopperToggle(updatedOpen, type); - return; - } + var color = appearance && appearance.includes('_') ? getIconAppearance(appearance) : appearance; + var iconClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'material-symbols', true), _defineProperty$1(_classNames, 'material-symbols-rounded', type === 'rounded'), _defineProperty$1(_classNames, 'material-symbols-outlined', type === 'outlined'), _defineProperty$1(_classNames, 'Icon', true), _defineProperty$1(_classNames, "Icon--".concat(color), appearance), _defineProperty$1(_classNames, "".concat(className), className), _classNames)); + var styles = { + fontSize: "".concat(size, "px"), + width: "".concat(size, "px") + }; // change `children` to {name} after migration - _this.setState({ - open: updatedOpen - }); - }); + if (children && /*#__PURE__*/React.isValidElement(children)) { + return /*#__PURE__*/React.createElement("span", _extends$2({}, baseProps, { + className: className + }), children); + } - var _props$selected = props.selected, - _selected = _props$selected === void 0 ? [] : _props$selected, - _totalOptions = props.totalOptions, - _withCheckbox = props.withCheckbox, - _loading = props.loading, - _open = props.open, - _options = props.options; + return /*#__PURE__*/React.createElement("i", _extends$2({ + "data-test": "DesignSystem-Icon" + }, baseProps, { + className: iconClass, + style: styles + }, accessibilityProps), name); +}; +Icon.displayName = 'Icon'; +Icon.defaultProps = { + size: 16 +}; - _this.staticLimit = Math.min(100, props.staticLimit); +var _excluded$V = ["children", "componentType", "className"]; - var _optionsLength = _totalOptions ? _totalOptions : _options.length; +var GenericText = function GenericText(_ref, ref) { + var children = _ref.children, + _ref$componentType = _ref.componentType, + componentType = _ref$componentType === void 0 ? 'span' : _ref$componentType, + className = _ref.className, + rest = _objectWithoutProperties(_ref, _excluded$V); - var _async = 'fetchOptions' in _this.props || _optionsLength > _this.staticLimit; + return /*#__PURE__*/React.createElement(componentType, _objectSpread2(_objectSpread2({}, rest), {}, { + className: className, + ref: ref + }), children); +}; - var _selectedGroup = !_async ? _this.getSelectedOptions(_options, true) : []; +var Link$1 = /*#__PURE__*/React.forwardRef(GenericText); - var _disabledOptions = _this.getDisabledOptions(_options); +var _excluded$U = ["appearance", "size", "children", "weight", "small", "className", "color"]; +var Text = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames; - _this.state = { - async: _async, - optionsLength: _optionsLength, - open: _open, - searchInit: false, - searchedOptionsLength: _optionsLength, - optionsApplied: false, - options: _options || [], - loading: _async ? true : _loading, - searchTerm: '', - tempSelected: _selectedGroup, - previousSelected: _selectedGroup, - selected: _showSelectedItems(_async, '', _withCheckbox) ? _selected : [], - triggerLabel: _this.updateTriggerLabel(_selectedGroup, _optionsLength), - selectAll: getSelectAll$1(_selectedGroup, _optionsLength, _disabledOptions.length) - }; - return _this; - } + var _props$appearance = props.appearance, + appearance = _props$appearance === void 0 ? 'default' : _props$appearance, + _props$size = props.size, + size = _props$size === void 0 ? 'regular' : _props$size, + children = props.children, + weight = props.weight, + small = props.small, + className = props.className, + color = props.color, + rest = _objectWithoutProperties(props, _excluded$U); - _createClass$1(Dropdown, [{ - key: "componentDidMount", - value: function componentDidMount() { - var async = this.state.async; - if (async) this.updateOptions(true); - } - }, { - key: "componentDidUpdate", - value: function componentDidUpdate(prevProps, prevState) { - if (!this.state.async) { - var _this$props11 = this.props, - loading = _this$props11.loading, - fetchOptions = _this$props11.fetchOptions, - _this$props11$options = _this$props11.options, - _options2 = _this$props11$options === void 0 ? [] : _this$props11$options, - withSearch = _this$props11.withSearch; + var classes = classnames((_classNames = { + Text: true + }, _defineProperty$1(_classNames, "Text--".concat(appearance), !color && appearance), _defineProperty$1(_classNames, "Text--".concat(weight), weight), _defineProperty$1(_classNames, "Text--".concat(size), size), _defineProperty$1(_classNames, "color-".concat(color), color), _defineProperty$1(_classNames, 'Text--small', size === 'small' || small), _classNames), className); + return /*#__PURE__*/React.createElement(Link$1, _extends$2({ + ref: ref, + "data-test": "DesignSystem-Text" + }, rest, { + className: classes, + componentType: "span" + }), children); +}); +Text.displayName = 'Text'; +Text.defaultProps = { + appearance: 'default', + size: 'regular' +}; - var disabledOptionsCount = this.getDisabledOptions(_options2).length; +var GenericChip = function GenericChip(props) { + var _classNames3; - if (prevProps.loading !== loading && !fetchOptions) { - if (_options2.length > this.staticLimit) { - this.updateOptions(true, true); - } else { - var _inputRef$current2; + var label = props.label, + icon = props.icon, + clearButton = props.clearButton, + disabled = props.disabled, + className = props.className, + selected = props.selected, + onClose = props.onClose, + onClick = props.onClick, + labelPrefix = props.labelPrefix, + iconType = props.iconType; + var baseProps = extractBaseProps(props); - var selectedGroup = this.getSelectedOptions(_options2, true); - this.setState(_objectSpread2(_objectSpread2({}, this.state), {}, { - options: _options2, - loading: loading, - tempSelected: selectedGroup, - previousSelected: selectedGroup, - optionsLength: _options2.length, - searchedOptionsLength: _options2.length, - triggerLabel: this.updateTriggerLabel(selectedGroup), - selectAll: getSelectAll$1(selectedGroup, this.state.optionsLength, disabledOptionsCount) - })); - if (withSearch) (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.focus(); - } - } - } + var iconClass = function iconClass(align) { + var _classNames; - if (this.props.selected !== undefined && prevProps.selected !== this.props.selected && prevProps.loading === this.props.loading) { - var isSingleSelect = !this.props.withCheckbox; - this.updateSelectedOptions(this.props.selected, isSingleSelect, true); - } + return classnames((_classNames = {}, _defineProperty$1(_classNames, 'Chip-icon', true), _defineProperty$1(_classNames, "Chip-icon--".concat(align), align), _defineProperty$1(_classNames, "Chip-icon-disabled--right", align === 'right' && disabled), _defineProperty$1(_classNames, 'cursor-pointer', align === 'right' && !disabled), _defineProperty$1(_classNames, 'Chip-icon--selected', align === 'right' && selected), _classNames)); + }; - if (prevState.searchTerm !== this.state.searchTerm) { - this.debounceSearch(); - } + var onCloseHandler = function onCloseHandler(e) { + e.stopPropagation(); + if (onClose) onClose(); + }; - if (prevProps.open !== this.props.open || prevState.open !== this.state.open) { - if (_isOpenControlled(this.props.open) && this.props.open === this.state.open) return; - this.updateOnPopperToggle(); - } + var onClickHandler = function onClickHandler() { + if (onClick) onClick(); + }; + + var onKeyDownHandler = function onKeyDownHandler(event) { + if (event.key === 'Enter') { + onCloseHandler(event); } - }, { - key: "render", - value: function render() { - var _this$state7 = this.state, - options = _this$state7.options, - async = _this$state7.async, - open = _this$state7.open, - searchTerm = _this$state7.searchTerm, - searchInit = _this$state7.searchInit, - loading = _this$state7.loading, - searchedOptionsLength = _this$state7.searchedOptionsLength, - tempSelected = _this$state7.tempSelected, - selectAll = _this$state7.selectAll, - triggerLabel = _this$state7.triggerLabel, - previousSelected = _this$state7.previousSelected; - var _this$props12 = this.props, - _this$props12$withSel = _this$props12.withSelectAll, - withSelectAll = _this$props12$withSel === void 0 ? true : _this$props12$withSel, - withCheckbox = _this$props12.withCheckbox; + }; - var _this$props13 = this.props, - _this$props13$trigger = _this$props13.triggerOptions, - triggerOptions = _this$props13$trigger === void 0 ? {} : _this$props13$trigger; - _this$props13.selected; - var rest = _objectWithoutProperties$1(_this$props13, _excluded$v); + var iconAppearance = function iconAppearance(align) { + var _classNames2; - var remainingOptionsLen = searchedOptionsLength - options.length; - var firstEnabledOption = _isSelectAllPresent(searchTerm, remainingOptionsLen, withSelectAll, withCheckbox) ? 0 : options.findIndex(function (option) { - return !option.disabled; - }); - return /*#__PURE__*/React.createElement(DropdownList, _extends$3({ - listOptions: options, - inputRef: inputRef, - remainingOptions: remainingOptionsLen, - firstEnabledOption: firstEnabledOption, - loadingOptions: loading, - async: async, - searchInit: searchInit, - dropdownOpen: open, - searchTerm: searchTerm, - triggerLabel: triggerLabel, - tempSelected: tempSelected, - previousSelected: previousSelected, - selected: this.state.selected, - applyOptions: this.onApplyOptions, - cancelOptions: this.onCancelOptions, - toggleDropdown: this.onToggleDropdown, - onClearOptions: this.onClearOptions, - onSelect: this.onSelect, - selectAll: selectAll, - onSearchChange: this.updateSearchTerm, - onOptionSelect: this.onOptionSelect, - onSelectAll: this.onSelectAll, - customTrigger: triggerOptions.customTrigger - }, rest)); - } - }]); + return classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'disabled', disabled && !selected), _defineProperty$1(_classNames2, 'primary_dark', !disabled && selected), _defineProperty$1(_classNames2, 'primary_lighter', disabled && selected), _defineProperty$1(_classNames2, 'subtle', !disabled && !selected && align === 'right'), _defineProperty$1(_classNames2, 'inverse', !disabled && !selected && align === 'left'), _classNames2)); + }; - return Dropdown; -}(React.Component); + var textColor = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'primary-lighter', disabled && selected), _defineProperty$1(_classNames3, 'inverse-lightest', disabled && !selected), _defineProperty$1(_classNames3, 'primary-dark', selected), _defineProperty$1(_classNames3, 'inverse', !disabled && !selected), _classNames3)); -_defineProperty$2(Dropdown, "defaultProps", { - triggerOptions: {}, - options: [], - closeOnSelect: true, - staticLimit: 50, - searchDebounceDuration: 300 -}); + var renderLabel = function renderLabel() { + if (typeof label === 'string') { + return /*#__PURE__*/React.createElement(React.Fragment, null, labelPrefix && /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-GenericChip--LabelPrefix", + weight: "medium", + color: textColor, + className: "Chip-text mr-3" + }, labelPrefix), /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-GenericChip--Text", + color: textColor, + className: "Chip-text" + }, label)); + } -var renderLink = function renderLink(item, _onClick) { - return /*#__PURE__*/React.createElement(Link, { - href: item.link, - onClick: function onClick(ev) { - if (_onClick) { - ev.preventDefault(); + return label; + }; - _onClick(item.link); - } - }, - appearance: "subtle", - size: "tiny" - }, item.label); + return ( + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement("div", _extends$2({ + // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex + tabIndex: disabled ? -1 : 0, + "data-test": "DesignSystem-GenericChip--GenericChipWrapper" + }, baseProps, { + className: "Chip-wrapper ".concat(className), + onClick: onClickHandler + }), icon && /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-GenericChip--Icon", + name: icon, + type: iconType, + appearance: iconAppearance('left'), + className: iconClass('left') + }), renderLabel(), clearButton && /*#__PURE__*/React.createElement("div", { + role: "button", + onClick: onCloseHandler, + tabIndex: disabled ? -1 : 0, + onKeyDown: onKeyDownHandler, + className: iconClass('right'), + "data-test": "DesignSystem-GenericChip--clearButton" + }, /*#__PURE__*/React.createElement(Icon, { + name: "clear", + appearance: iconAppearance('right'), + className: "p-2" + }))) + ); }; +GenericChip.displayName = 'GenericChip'; -var renderDropdown = function renderDropdown(list, onClick) { - var options = list.map(function (item) { - return { - label: item.label, - value: item.link - }; - }); +var Chip = function Chip(props) { + var _classNames; - var customTrigger = function customTrigger() { - return /*#__PURE__*/React.createElement(Button, { - size: "tiny", - appearance: "transparent", - icon: "more_horiz_filled", - "data-test": "DesignSystem-Breadcrumbs--Button" - }); + var label = props.label, + icon = props.icon, + clearButton = props.clearButton, + type = props.type, + disabled = props.disabled, + selected = props.selected, + onClose = props.onClose, + onClick = props.onClick, + name = props.name, + className = props.className, + labelPrefix = props.labelPrefix, + iconType = props.iconType; + var baseProps = extractBaseProps(props); + + var onCloseHandler = function onCloseHandler() { + if (!disabled && onClose) onClose(name); }; - return /*#__PURE__*/React.createElement(Dropdown, { - triggerSize: 'tiny', - triggerOptions: { - customTrigger: customTrigger - }, - options: options, - menu: true, - onChange: function onChange(selected) { - if (onClick) { - onClick(selected); - } - } - }); + var onClickHandler = function onClickHandler() { + if (!disabled && onClick) onClick(name); + }; + + var clearbutton = type === 'action' ? false : clearButton; + var select = type === 'selection' && selected ? true : false; + var chipClass = classnames((_classNames = { + Chip: true + }, _defineProperty$1(_classNames, "Chip-".concat(type, "--disabled"), disabled), _defineProperty$1(_classNames, "Chip--".concat(type), type && !disabled), _defineProperty$1(_classNames, "Chip-".concat(type, "--selected"), selected && !disabled), _defineProperty$1(_classNames, "Chip-selection--selectedDisabled", type === 'selection' && selected && disabled), _defineProperty$1(_classNames, 'Chip-icon--clear', clearbutton), _classNames), className); + return /*#__PURE__*/React.createElement(GenericChip, _extends$2({ + "data-test": "DesignSystem-Chip--GenericChip" + }, baseProps, { + label: label, + selected: select, + icon: icon, + iconType: iconType, + clearButton: clearbutton, + disabled: disabled, + className: chipClass, + onClose: onCloseHandler, + onClick: onClickHandler, + name: name, + labelPrefix: labelPrefix + })); +}; +Chip.displayName = 'Chip'; +Chip.defaultProps = { + type: 'input' }; -var Breadcrumbs = function Breadcrumbs(props) { +var ChipGroup = function ChipGroup(props) { var list = props.list, onClick = props.onClick, + onClose = props.onClose, className = props.className; var baseProps = extractBaseProps(props); - var BreadcrumbClass = classnames(_defineProperty$2({}, 'Breadcrumbs', true), className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-Breadcrumbs" + + var onClickHandler = function onClickHandler(item) { + if (onClick) onClick(item); + }; + + var onCloseHandler = function onCloseHandler(item) { + if (onClose) onClose(item); + }; + + var ChipGroupClass = classnames(_defineProperty$1({}, 'ChipGroup', true), className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-ChipGroup" }, baseProps, { - className: BreadcrumbClass - }), list.length <= 4 ? list.map(function (item, index) { - return /*#__PURE__*/React.createElement("div", { - key: index, - className: "Breadcrumbs-item", - "data-test": "DesignSystem-Breadcrumbs-item" - }, /*#__PURE__*/React.createElement("span", { - className: "Breadcrumbs-link" - }, renderLink(item, onClick)), /*#__PURE__*/React.createElement("span", { - className: "Breadcrumbs-itemSeparator" - }, "/")); - }) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { - className: "Breadcrumbs-item", - "data-test": "DesignSystem-Breadcrumbs-item" - }, /*#__PURE__*/React.createElement("span", { - className: "Breadcrumbs-link" - }, renderLink(list[0], onClick)), /*#__PURE__*/React.createElement("span", { - className: "Breadcrumbs-itemSeparator" - }, "/")), /*#__PURE__*/React.createElement("div", { - className: "Breadcrumbs-dropdown" - }, renderDropdown(list.slice(1, list.length - 1), onClick), /*#__PURE__*/React.createElement("span", { - className: "Breadcrumbs-itemSeparator" - }, "/")), /*#__PURE__*/React.createElement("div", { - className: "Breadcrumbs-item", - "data-test": "DesignSystem-Breadcrumbs-item" - }, /*#__PURE__*/React.createElement("span", { - className: "Breadcrumbs-link" - }, renderLink(list[list.length - 1], onClick)), /*#__PURE__*/React.createElement("span", { - className: "Breadcrumbs-itemSeparator" - }, "/")))); + className: ChipGroupClass + }), list.map(function (item, ind) { + var _item$label = item.label, + label = _item$label === void 0 ? '' : _item$label, + icon = item.icon, + type = item.type, + disabled = item.disabled, + selected = item.selected, + clearButton = item.clearButton, + name = item.name, + iconType = item.iconType; + return /*#__PURE__*/React.createElement("span", { + key: ind, + className: "ChipGroup-item" + }, /*#__PURE__*/React.createElement(Chip, { + "data-test": "DesignSystem-ChipGroup--Chip", + name: name, + label: label, + selected: selected, + icon: icon, + disabled: disabled, + clearButton: clearButton, + iconType: iconType, + type: type, + onClick: function onClick() { + return onClickHandler(item); + }, + onClose: function onClose() { + return onCloseHandler(item); + } + })); + })); }; +ChipGroup.displayName = 'ChipGroup'; -var _excluded$u = ["size", "appearance", "iconAlign", "tabIndex", "largeIcon", "type", "children", "icon", "expanded", "selected", "loading", "disabled", "className"]; -var sizeMapping$2 = { - tiny: 12, - regular: 16, - large: 20 +var uidGenerator = function uidGenerator() { + var dt = new Date().getTime(); + var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { + var r = (dt + Math.random() * 16) % 16 | 0; + dt = Math.floor(dt / 16); + var s = (c === 'x' ? r : r & 0x3 | 0x8).toString(16); + return s; + }); + return uuid; }; -var Button = /*#__PURE__*/React.forwardRef(function (props, ref) { - var _classNames, _classNames2; + +var CheckboxIcon = function CheckboxIcon(props) { + switch (props.name) { + case 'checked--regular': + return /*#__PURE__*/React__default.createElement("svg", { + width: "10", + height: "8", + viewBox: "0 0 10 8", + fill: "none", + xmlns: "http://www.w3.org/2000/svg" + }, /*#__PURE__*/React__default.createElement("path", { + fillRule: "evenodd", + clipRule: "evenodd", + d: "M3.66667 5.56L8.72667 0.5L9.66667 1.44667L3.66667 7.44667L0.333333 4.11333L1.27333 3.17333L3.66667 5.56Z", + fill: "white" + })); + + case 'checked--tiny': + return /*#__PURE__*/React__default.createElement("svg", { + width: "10", + height: "8", + viewBox: "0 0 10 8", + fill: "none", + xmlns: "http://www.w3.org/2000/svg" + }, /*#__PURE__*/React__default.createElement("path", { + d: "M0.333344 4L1.27334 3.06L3.66668 5.44667L8.72668 0.386665L9.66668 1.33333L3.66668 7.33333L0.333344 4Z", + fill: "white" + })); + + case 'indeterminate--regular': + return /*#__PURE__*/React__default.createElement("svg", { + width: "10", + height: "2", + viewBox: "0 0 10 2", + fill: "none", + xmlns: "http://www.w3.org/2000/svg" + }, /*#__PURE__*/React__default.createElement("path", { + d: "M0 0H10V2H0V0Z", + fill: "white" + })); + + case 'indeterminate--tiny': + return /*#__PURE__*/React__default.createElement("svg", { + width: "8", + height: "2", + viewBox: "0 0 8 2", + fill: "none", + xmlns: "http://www.w3.org/2000/svg" + }, /*#__PURE__*/React__default.createElement("path", { + fillRule: "evenodd", + clipRule: "evenodd", + d: "M8 0H0V2H8V0Z", + fill: "white" + })); + + default: + return null; + } +}; + +var _excluded$T = ["size", "tabIndex", "defaultChecked", "indeterminate", "label", "error", "disabled", "onChange", "name", "value", "className", "checked", "helpText", "id", "labelRef"]; +var Checkbox = /*#__PURE__*/React.forwardRef(function (props, forwardedRef) { + var _classNames, _classNames2, _classNames3, _classNames4, _classNames5, _classNames6; var _props$size = props.size, size = _props$size === void 0 ? 'regular' : _props$size, - _props$appearance = props.appearance, - appearance = _props$appearance === void 0 ? 'basic' : _props$appearance, - _props$iconAlign = props.iconAlign, - iconAlign = _props$iconAlign === void 0 ? 'left' : _props$iconAlign, _props$tabIndex = props.tabIndex, tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex, - largeIcon = props.largeIcon, - type = props.type, - children = props.children, - icon = props.icon, - expanded = props.expanded, - selected = props.selected, - loading = props.loading, + defaultChecked = props.defaultChecked, + indeterminate = props.indeterminate, + label = props.label, + error = props.error, disabled = props.disabled, + onChange = props.onChange, + name = props.name, + value = props.value, className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$u); - - var buttonClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Button', true), _defineProperty$2(_classNames, 'Button--expanded', expanded), _defineProperty$2(_classNames, "Button--".concat(size), size), _defineProperty$2(_classNames, "Button--".concat(size, "Square"), !children), _defineProperty$2(_classNames, "Button--".concat(appearance), appearance), _defineProperty$2(_classNames, 'Button--selected', selected && (appearance === 'basic' || appearance === 'transparent')), _defineProperty$2(_classNames, "Button--iconAlign-".concat(iconAlign), children && iconAlign), _defineProperty$2(_classNames, "".concat(className), className), _classNames)); - var iconClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Button-icon', true), _defineProperty$2(_classNames2, "Button-icon--".concat(iconAlign), children && iconAlign), _classNames2)); - return /*#__PURE__*/React.createElement("button", _extends$3({ - "data-test": "DesignSystem-Button", - ref: ref, - type: type, - className: buttonClass, - disabled: disabled || loading, - tabIndex: tabIndex - }, rest), loading ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Spinner, { - size: "small", - appearance: appearance === 'basic' || appearance === 'transparent' ? 'secondary' : 'white', - "data-test": "DesignSystem-Button--Spinner", - className: "Button-spinner" - }), /*#__PURE__*/React.createElement(Text, { - className: "Button-text Button-text--hidden" - }, children || '')) : /*#__PURE__*/React.createElement(React.Fragment, null, icon && /*#__PURE__*/React.createElement("div", { - className: iconClass - }, /*#__PURE__*/React.createElement(Icon, { - "data-test": "DesignSystem-Button--Icon", - name: icon, - appearance: disabled ? 'disabled' : appearance === 'basic' || appearance === 'transparent' ? selected ? 'info' : 'default' : 'white', - size: largeIcon && !children ? sizeMapping$2[size] + 4 : sizeMapping$2[size] - })), children)); -}); -Button.displayName = 'Button'; + checkedProp = props.checked, + helpText = props.helpText, + _props$id = props.id, + id = _props$id === void 0 ? "".concat(name, "-").concat(label, "-").concat(uidGenerator()) : _props$id, + labelRef = props.labelRef, + rest = _objectWithoutProperties(props, _excluded$T); -var config = { - yearBlockRange: 12, - yearsInRow: 3, - monthBlock: 12, - monthsInRow: 3, - daysInRow: 7, - months: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], - days: { - small: ['S', 'M', 'T', 'W', 'T', 'F', 'S'], - large: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'] - } -}; + var ref = React.useRef(null); + React.useImperativeHandle(forwardedRef, function () { + return ref.current; + }); -var yearBlockRange = config.yearBlockRange; -var getIndexOfDay = function getIndexOfDay(day) { - return ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'].indexOf(day); -}; -var getYearBlock = function getYearBlock(year) { - return year - year % yearBlockRange; -}; -var getDaysInMonth = function getDaysInMonth(year, month) { - return new Date(year, month + 1, 0).getDate(); -}; -var getFirstDayOfMonth = function getFirstDayOfMonth(year, month) { - return new Date(year, month).getDay(); -}; -var getDateInfo = function getDateInfo(d) { - if (d) { - var dateVal = convertToDate(d); + var _React$useState = React.useState(checkedProp === undefined ? defaultChecked : checkedProp), + _React$useState2 = _slicedToArray(_React$useState, 2), + checked = _React$useState2[0], + setChecked = _React$useState2[1]; - if (dateVal) { - var year = dateVal.getFullYear(); - var month = dateVal.getMonth(); - var day = dateVal.getDay(); - var date = dateVal.getDate(); - var decadeYear = getYearBlock(year); - return { - decadeYear: decadeYear, - year: year, - month: month, - day: day, - date: date - }; - } else { - return {}; + React.useEffect(function () { + setIndeterminate(indeterminate); + }, [indeterminate]); + React.useEffect(function () { + if (checkedProp !== undefined) { + setChecked(checkedProp); } - } + }, [checkedProp]); + var CheckboxClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Checkbox', true), _defineProperty$1(_classNames, 'Checkbox--disabled', disabled), _classNames), className); + var CheckboxOuterWrapper = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Checkbox-outerWrapper', true), _defineProperty$1(_classNames2, "Checkbox-outerWrapper--".concat(size), size), _classNames2)); + var CheckboxInputWrapper = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Checkbox-input', true), _defineProperty$1(_classNames3, 'Checkbox-input--checked', checked), _defineProperty$1(_classNames3, 'Checkbox-input--indeterminate', props.indeterminate), _classNames3)); + var CheckboxWrapper = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'Checkbox-wrapper', true), _defineProperty$1(_classNames4, 'Checkbox-wrapper--default', !error), _defineProperty$1(_classNames4, 'Checkbox-wrapper--error', error), _classNames4)); + var CheckboxLabelClass = classnames((_classNames5 = {}, _defineProperty$1(_classNames5, 'Checkbox-label', true), _defineProperty$1(_classNames5, 'Checkbox-label--tiny', size === 'tiny'), _classNames5)); - return {}; -}; -var convertToDate = function convertToDate(d, format, validators) { - var dateVal; + var setIndeterminate = function setIndeterminate(indeterminateValue) { + ref.current.indeterminate = indeterminateValue; + }; - if (d) { - if (typeof d === 'number') { - dateVal = new Date(d); - } else if (typeof d === 'string') { - return format ? translateToDate(format, d, validators) : undefined; - } else if (!(d instanceof Date)) { - var _ref = d, - year = _ref.year, - month = _ref.month, - date = _ref.date; - dateVal = new Date(year, month, date, 0, 0, 0); - } else { - dateVal = d; + var onChangeHandler = function onChangeHandler(e) { + if (checkedProp === undefined) { + setChecked(e.target.checked); + setIndeterminate(e.target.indeterminate); } - } - return dateVal; -}; -var compareYearBlock = function compareYearBlock(d, operator, currDecade) { - if (d) { - var _getDateInfo = getDateInfo(d), - limitDecade = _getDateInfo.decadeYear; + if (onChange) onChange(e); + }; - switch (operator) { - case 'less': - if (limitDecade < currDecade) return true; - break; + var IconMapper = classnames((_classNames6 = {}, _defineProperty$1(_classNames6, 'checked--regular', checked && size === 'regular'), _defineProperty$1(_classNames6, 'checked--tiny', checked && size === 'tiny'), _defineProperty$1(_classNames6, 'indeterminate--regular', indeterminate && size === 'regular'), _defineProperty$1(_classNames6, 'indeterminate--tiny', indeterminate && size === 'tiny'), _classNames6)); + return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-Checkbox", + className: CheckboxClass + }, /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-Checkbox-OuterWrapper", + className: CheckboxOuterWrapper + }, /*#__PURE__*/React.createElement("input", _extends$2({}, rest, { + type: "checkbox", + defaultChecked: defaultChecked, + onChange: onChangeHandler, + checked: checked, + disabled: disabled, + ref: ref, + name: name, + value: value, + className: CheckboxInputWrapper, + tabIndex: tabIndex, + id: id, + "data-test": "DesignSystem-Checkbox-InputBox" + })), /*#__PURE__*/React.createElement("span", { + className: CheckboxWrapper, + "data-test": "DesignSystem-Checkbox-Icon" + }, IconMapper && /*#__PURE__*/React.createElement(CheckboxIcon, { + name: IconMapper + }))), /*#__PURE__*/React.createElement("div", { + className: "Checkbox-labelWrapper" + }, label && label.trim() && /*#__PURE__*/React.createElement("label", { + htmlFor: id, + className: CheckboxLabelClass, + "data-test": "DesignSystem-Checkbox-Label" + }, /*#__PURE__*/React.createElement(Text, { + size: size === 'tiny' ? 'small' : 'regular', + appearance: disabled ? 'disabled' : 'default', + className: "ellipsis--noWrap mw-100", + ref: labelRef + }, label.trim())), helpText && /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-Checkbox-HelpText", + size: "small", + appearance: disabled ? 'disabled' : 'subtle' + }, helpText.trim())))); +}); +Checkbox.displayName = 'Checkbox'; - case 'more': - if (limitDecade > currDecade) return true; - break; +var _excluded$S = ["size", "sizeXS", "sizeS", "sizeM", "sizeL", "sizeXL", "className", "children"]; +var Column = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames; - case 'equal': - if (limitDecade === currDecade) return true; - break; - } - } + var size = props.size, + sizeXS = props.sizeXS, + sizeS = props.sizeS, + sizeM = props.sizeM, + sizeL = props.sizeL, + sizeXL = props.sizeXL, + className = props.className, + children = props.children, + rest = _objectWithoutProperties(props, _excluded$S); - return false; -}; -var compareDate = function compareDate(d, operator, currYear, currMonth, currDate) { - if (d) { - var _getDateInfo2 = getDateInfo(d), - limitYear = _getDateInfo2.year, - limitMonth = _getDateInfo2.month, - limitDate = _getDateInfo2.date; + var classes = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Col', true), _defineProperty$1(_classNames, "Col--".concat(size), size), _defineProperty$1(_classNames, "Col--xs-".concat(sizeXS), sizeXS), _defineProperty$1(_classNames, "Col--s-".concat(sizeS), sizeS), _defineProperty$1(_classNames, "Col--m-".concat(sizeM), sizeM), _defineProperty$1(_classNames, "Col--l-".concat(sizeL), sizeL), _defineProperty$1(_classNames, "Col--xl-".concat(sizeXL), sizeXL), _defineProperty$1(_classNames, "".concat(className), className), _classNames)); + return /*#__PURE__*/React.createElement("div", _extends$2({ + ref: ref, + "data-test": "DesignSystem-Column" + }, rest, { + className: classes + }), children); +}); +Column.displayName = 'Column'; - switch (operator) { - case 'less': - if (limitYear < currYear) return true; - if (limitYear > currYear) return false; +var Trigger$1 = function Trigger(props) { + var inputFormat = props.inputFormat, + inputOptions = props.inputOptions, + validators = props.validators, + state = props.state, + setState = props.setState; + var init = state.init, + date$1 = state.date, + error = state.error; + var _inputOptions$placeho = inputOptions.placeholderChar, + placeholderChar = _inputOptions$placeho === void 0 ? '_' : _inputOptions$placeho; - if (currMonth !== undefined) { - if (limitMonth < currMonth) return true; - if (limitMonth > currMonth) return false; - } + var onPasteHandler = function onPasteHandler(_e, val) { + var onPaste = inputOptions.onPaste; + setState({ + open: true + }); - if (currDate !== undefined && limitDate < currDate) return true; - break; + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); + setState({ + date: d + }); + } - case 'more': - if (limitYear > currYear) return true; - if (limitYear < currYear) return false; + if (onPaste) onPaste(_e, val); + }; - if (currMonth !== undefined) { - if (limitMonth > currMonth) return true; - if (limitMonth < currMonth) return false; - } + var onChangeHandler = function onChangeHandler(_e, val) { + var onChange = inputOptions.onChange; + setState({ + open: true + }); - if (currDate !== undefined && limitDate > currDate) return true; - break; + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); + setState({ + date: d + }); + } - case 'equal': - if (currDate !== undefined) { - if (limitYear === currYear && limitMonth === currMonth && limitDate === currDate) return true; - } else if (currMonth !== undefined) { - if (limitYear === currYear && limitMonth === currMonth) return true; - } else if (limitYear === currYear) return true; - - } - } - - return false; -}; -var translateToString = function translateToString(format, d) { - if (format && d) { - var _getDateInfo3 = getDateInfo(d), - year = _getDateInfo3.year, - month = _getDateInfo3.month, - date = _getDateInfo3.date; - - var separator = format.includes('/') ? '/' : '-'; - var f = format.split(separator); - var val = f.reduce(function (out, curr, i) { - switch (curr) { - case 'mm': - out += (month < 9 && '0') + (month + 1); - break; + if (onChange) onChange(_e); + }; - case 'yyyy': - out += year; - break; + var onBlurHandler = function onBlurHandler(_e, val) { + var onBlur = inputOptions.onBlur; + setState({ + init: true + }); + var hasNumber = /\d/; - case 'dd': - out += (date < 10 && '0') + date; - break; - } + if (val && hasNumber.test(val) && val.includes(placeholderChar)) { + setState({ + error: true + }); + } else if (val && !hasNumber.test(val) || !val) { + setState({ + error: false + }); + } - if (i !== f.length - 1) out += separator; - return out; - }, ''); - return val; - } + if (onBlur) onBlur(_e, val || ''); + }; - return ''; -}; -var translateToDate = function translateToDate(format, val) { - var validators = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; + var onClearHandler = function onClearHandler(e) { + var onClear = inputOptions.onClear; + setState({ + init: true, + date: undefined + }); + if (onClear) onClear(e); + }; - if (isValid(validators, val, format)) { - var separator = format.includes('/') ? '/' : '-'; - var year = -1, - month = -1, - date = -1; - var v = val.split(separator); - format.split(separator).forEach(function (f, i) { - switch (f) { - case 'mm': - month = +v[i] - 1; - break; + var showError = inputOptions.error || inputOptions.required && error && init; + var errorMessage = inputOptions.caption === undefined ? 'Invalid value' : inputOptions.caption; - case 'yyyy': - year = +v[i]; - break; + var inputValidator = function inputValidator(val) { + return isValid(validators, val, inputFormat); + }; - case 'dd': - date = +v[i]; - break; - } - }); - var d = convertToDate({ - year: year, - month: month, - date: date - }); - return d; - } else { - return undefined; - } + var mask = date[inputFormat]; + return /*#__PURE__*/React.createElement(X, _extends$2({ + icon: "events", + placeholder: inputFormat + }, inputOptions, { + error: showError, + mask: mask, + value: date$1 ? translateToString(inputFormat, date$1) : init ? X.utils.getDefaultValue(mask, placeholderChar) : '', + onChange: onChangeHandler, + onPaste: onPasteHandler, + onBlur: onBlurHandler, + onClear: onClearHandler, + caption: showError ? errorMessage : '', + validators: [inputValidator], + clearOnEmptyBlur: true, + id: "parent-DatePicker" + })); }; -var Calendar = /*#__PURE__*/function (_React$Component) { - _inherits$1(Calendar, _React$Component); +var _excluded$R = ["date", "open", "position", "inputFormat", "outputFormat", "inputOptions", "validators", "withInput", "disabledBefore", "disabledAfter", "onDateChange", "closeOnSelect", "size", "showTodayDate", "children", "view"]; +var DatePicker = /*#__PURE__*/function (_React$Component) { + _inherits(DatePicker, _React$Component); - var _super = _createSuper$1(Calendar); + var _super = _createSuper(DatePicker); - function Calendar(props) { + function DatePicker(props) { var _this; - _classCallCheck$1(this, Calendar); + _classCallCheck(this, DatePicker); _this = _super.call(this, props); - _defineProperty$2(_assertThisInitialized$2(_this), "updateState", function (year, month, date) { - _this.setState({ - year: year, - month: month, - date: date - }); - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "getDateValue", function (year, month, date) { - var d = new Date(year, month, date); - return d; - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "getNavDateInfo", function (index) { - var _this$state = _this.state, - yearBlockNav = _this$state.yearBlockNav, - yearNav = _this$state.yearNav, - monthNav = _this$state.monthNav; - var monthBlock = config.monthBlock; - var yearBlock = yearBlockNav; - var month = (monthNav + index) % monthBlock; - var year = yearNav + (index !== 0 && month < monthNav ? 1 : 0); - return { - yearBlock: yearBlock, - year: year, - month: month - }; - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "getInRangeError", function () { + _defineProperty$1(_assertThisInitialized$1(_this), "getError", function (date) { var _this$props = _this.props, - rangePicker = _this$props.rangePicker, - rangeLimit = _this$props.rangeLimit; - var _this$state2 = _this.state, - startDateState = _this$state2.startDate, - endDateState = _this$state2.endDate, - hoverDateState = _this$state2.hoverDate; - - if (rangePicker && rangeLimit) { - var _getDateInfo = getDateInfo(startDateState), - startYear = _getDateInfo.year, - startMonth = _getDateInfo.month, - _startDate2 = _getDateInfo.date; - - var _getDateInfo2 = getDateInfo(endDateState), - endYear = _getDateInfo2.year, - endMonth = _getDateInfo2.month, - _endDate2 = _getDateInfo2.date; + disabledBefore = _this$props.disabledBefore, + disabledAfter = _this$props.disabledAfter, + outputFormat = _this$props.outputFormat, + onError = _this$props.onError; + if (!date) return false; - var _getDateInfo3 = getDateInfo(hoverDateState), - hoverYear = _getDateInfo3.year, - hoverMonth = _getDateInfo3.month, - hoverDate = _getDateInfo3.date; + var _getDateInfo = getDateInfo(disabledBefore), + dbYear = _getDateInfo.year, + dbMonth = _getDateInfo.month, + dbDate = _getDateInfo.date; - var limitDate; + var _getDateInfo2 = getDateInfo(disabledAfter), + daYear = _getDateInfo2.year, + daMonth = _getDateInfo2.month, + daDate = _getDateInfo2.date; - if (startDateState) { - limitDate = new Date(startDateState); - limitDate.setDate(_startDate2 + rangeLimit); - return compareDate(limitDate, 'less', hoverYear, hoverMonth, hoverDate + 1) || compareDate(limitDate, 'less', endYear, endMonth, _endDate2 + 1); + if (compareDate(date, 'less', dbYear, dbMonth, dbDate) || compareDate(date, 'more', daYear, daMonth, daDate)) { + if (onError) { + var dVal = translateToString(outputFormat, date); + onError(date, dVal); } - if (endDateState) { - limitDate = new Date(endDateState); - limitDate.setDate(_endDate2 - rangeLimit); - return compareDate(limitDate, 'more', hoverYear, hoverMonth, hoverDate - 1) || compareDate(limitDate, 'more', startYear, startMonth, _startDate2 - 1); - } + return true; } return false; }); - _defineProperty$2(_assertThisInitialized$2(_this), "selectYear", function (year) { - return function () { - _this.updateState(year); + _defineProperty$1(_assertThisInitialized$1(_this), "onDateChangeHandler", function (d) { + _this.setState({ + init: true, + date: d + }); - _this.setState({ - view: 'month' - }); - }; + var closeOnSelect = _this.props.closeOnSelect; + if (closeOnSelect) _this.setState({ + open: false + }); }); - _defineProperty$2(_assertThisInitialized$2(_this), "selectMonth", function (month) { - return function () { - _this.updateState(_this.state.yearNav, month); - - _this.setState({ - view: 'date' - }); - }; - }); + _defineProperty$1(_assertThisInitialized$1(_this), "onToggleHandler", function (o, type) { + var disabled = _this.props.inputOptions.disabled; + if (disabled) return; - _defineProperty$2(_assertThisInitialized$2(_this), "selectDate", function (index, date) { - var _this$getNavDateInfo = _this.getNavDateInfo(index), - year = _this$getNavDateInfo.year, - month = _this$getNavDateInfo.month; + switch (type) { + case 'outsideClick': + _this.setState({ + open: o + }); - _this.updateState(year, month, date); + break; - var d = _this.getDateValue(year, month, date); + case 'onClick': + _this.setState({ + open: true + }); - _this.setState({ - currDate: d - }); + break; + } }); - _defineProperty$2(_assertThisInitialized$2(_this), "onNavIconClickHandler", function (type) { - return function () { - var _this$state3 = _this.state, - view = _this$state3.view, - yearBlockNav = _this$state3.yearBlockNav, - yearNav = _this$state3.yearNav, - monthNav = _this$state3.monthNav; - var yearBlockRange = config.yearBlockRange, - monthBlock = config.monthBlock; - - switch (view) { - case 'year': - if (type === 'prev') _this.setState({ - yearBlockNav: yearBlockNav - yearBlockRange - }); - if (type === 'next') _this.setState({ - yearBlockNav: yearBlockNav + yearBlockRange - }); - break; + var inputFormat = props.inputFormat, + validators = props.validators; - case 'month': - if (type === 'prev') _this.setState({ - yearNav: yearNav - 1 - }); - if (type === 'next') _this.setState({ - yearNav: yearNav + 1 - }); - break; + var _date = convertToDate(props.date, inputFormat, validators); - case 'date': - if (type === 'prev') { - if (monthNav === 0) _this.setState({ - yearNav: yearNav - 1 - }); + var error = _this.getError(_date); - _this.setState({ - monthNav: (monthBlock + monthNav - 1) % monthBlock - }); - } + _this.state = { + date: _date, + error: error, + init: false, + open: props.open || false + }; + return _this; + } - if (type === 'next') { - if (monthNav === monthBlock - 1) _this.setState({ - yearNav: yearNav + 1 - }); + _createClass(DatePicker, [{ + key: "componentDidUpdate", + value: function componentDidUpdate(prevProps, prevState) { + if (prevProps.date !== this.props.date) { + var _this$props2 = this.props, + inputFormat = _this$props2.inputFormat, + validators = _this$props2.validators; + var d = convertToDate(this.props.date, inputFormat, validators); + this.setState({ + date: d + }); + } - _this.setState({ - monthNav: (monthNav + 1) % monthBlock - }); - } + if (prevProps.open !== this.props.open) { + this.setState({ + open: this.props.open || false + }); + } - break; + if (prevState.date !== this.state.date) { + var _this$props3 = this.props, + onDateChange = _this$props3.onDateChange, + outputFormat = _this$props3.outputFormat; + var _date2 = this.state.date; + var newError = this.getError(_date2); + this.setState({ + error: newError + }); + + if (onDateChange) { + if (!newError) { + var dVal = translateToString(outputFormat, _date2); + onDateChange(_date2, dVal); + } else { + onDateChange(undefined, ''); + } } - }; - }); + } + } + }, { + key: "renderCalendar", + value: function renderCalendar() { + var _this2 = this; - _defineProperty$2(_assertThisInitialized$2(_this), "renderJumpButton", function (type) { - var _this$props2 = _this.props, - disabledBefore = _this$props2.disabledBefore, - disabledAfter = _this$props2.disabledAfter; - var _this$state4 = _this.state, - view = _this$state4.view, - yearBlockNav = _this$state4.yearBlockNav, - yearNav = _this$state4.yearNav, - monthNav = _this$state4.monthNav; - var disabled = false; + var _this$props4 = this.props; + _this$props4.date; + _this$props4.open; + _this$props4.position; + var inputFormat = _this$props4.inputFormat; + _this$props4.outputFormat; + _this$props4.inputOptions; + var validators = _this$props4.validators; + _this$props4.withInput; + var disabledBefore = _this$props4.disabledBefore, + disabledAfter = _this$props4.disabledAfter; + _this$props4.onDateChange; + _this$props4.closeOnSelect; + var size = _this$props4.size, + _this$props4$showToda = _this$props4.showTodayDate, + showTodayDate = _this$props4$showToda === void 0 ? true : _this$props4$showToda, + _this$props4$children = _this$props4.children, + children = _this$props4$children === void 0 ? /*#__PURE__*/React.createElement(React.Fragment, null) : _this$props4$children, + view = _this$props4.view, + rest = _objectWithoutProperties(_this$props4, _excluded$R); - switch (view) { - case 'year': - if (type === 'prev') { - disabled = compareYearBlock(disabledBefore, 'more', yearBlockNav) || compareYearBlock(disabledBefore, 'equal', yearBlockNav); - } + var date = this.state.date; + var months = config.months; + var todayDate = new Date(Date.now()); + var todayMonthAndDate = "".concat(months[todayDate.getMonth()], " ").concat(todayDate.getDate()); + var currDate = convertToDate(date, inputFormat, validators); + var dateDisabledBefore = convertToDate(disabledBefore, inputFormat, validators); + var dateDisabledAfter = convertToDate(disabledAfter, inputFormat, validators); + + var isTodayDisabled = function isTodayDisabled() { + var isTodayDateDisabled = true; + + if (currDate && dateDisabledBefore && dateDisabledAfter) { + isTodayDateDisabled = currDate > dateDisabledBefore && currDate < dateDisabledAfter; + } else if (currDate && dateDisabledBefore) { + isTodayDateDisabled = currDate > dateDisabledBefore; + } else if (currDate && dateDisabledAfter) { + isTodayDateDisabled = currDate < dateDisabledAfter; + } - if (type === 'next') { - disabled = compareYearBlock(disabledAfter, 'less', yearBlockNav) || compareYearBlock(disabledAfter, 'equal', yearBlockNav); - } + return !isTodayDateDisabled; + }; - break; + var todayChipClass = classnames({ + 'd-flex justify-content-center': true, + 'pb-5': size === 'small', + 'pb-6': size === 'large', + 'pt-3': size === 'large' && view === 'year' + }); + return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", { + className: "d-flex" + }, children, /*#__PURE__*/React.createElement(Calendar, _extends$2({}, rest, { + size: size, + date: currDate, + view: view, + disabledBefore: dateDisabledBefore, + disabledAfter: dateDisabledAfter, + onDateChange: this.onDateChangeHandler + }))), showTodayDate && /*#__PURE__*/React.createElement("div", { + className: todayChipClass, + "data-test": "DesignSystem-Select--TodaysDate-wrapper" + }, /*#__PURE__*/React.createElement(Chip, { + label: "Today, ".concat(todayMonthAndDate), + name: "chip", + type: "action", + disabled: isTodayDisabled(), + onClick: function onClick() { + return _this2.onDateChangeHandler(new Date()); + } + }))); + } + }, { + key: "render", + value: function render() { + var _this$props5 = this.props, + position = _this$props5.position, + withInput = _this$props5.withInput, + inputFormat = _this$props5.inputFormat, + inputOptions = _this$props5.inputOptions, + validators = _this$props5.validators, + popoverOptions = _this$props5.popoverOptions; + var open = this.state.open; - case 'month': - if (type === 'prev') { - disabled = compareDate(disabledBefore, 'more', yearNav - 1); - } + if (withInput) { + return /*#__PURE__*/React.createElement(Popover, _extends$2({ + trigger: /*#__PURE__*/React.createElement(Trigger$1, { + inputFormat: inputFormat, + inputOptions: inputOptions, + validators: validators, + state: this.state, + setState: this.setState.bind(this) + }) + }, popoverOptions, { + triggerClass: "w-100", + position: position, + appendToBody: true, + open: open, + onToggle: this.onToggleHandler + }), this.renderCalendar()); + } - if (type === 'next') { - disabled = compareDate(disabledAfter, 'less', yearNav + 1); - } + return this.renderCalendar(); + } + }]); - break; + return DatePicker; +}(React.Component); - case 'date': - if (type === 'prev') { - disabled = compareDate(disabledBefore, 'more', yearNav, monthNav - 1); - } +_defineProperty$1(DatePicker, "defaultProps", _objectSpread2(_objectSpread2({}, Calendar.defaultProps), {}, { + position: 'bottom-start', + inputFormat: 'mm/dd/yyyy', + outputFormat: 'mm/dd/yyyy', + validators: [date$1], + inputOptions: {}, + closeOnSelect: true +})); - if (type === 'next') { - disabled = compareDate(disabledAfter, 'less', yearNav, monthNav + 1); - } +var parseDate = function parseDate(date_time) { + var d = new Date(); + d.setHours(date_time.substring(0, 2)); + d.setMinutes(date_time.substring(3, 5)); + return d; +}; - break; - } +var isFormat12Hour = function isFormat12Hour(format) { + return format === '12-Hour'; +}; - var headerIconClass = classnames(_defineProperty$2({ - 'Calendar-headerIcon': true - }, "Calendar-headerIcon--".concat(type), type)); - return /*#__PURE__*/React.createElement(Button, { - type: "button", - className: headerIconClass, - appearance: "transparent", - icon: "arrow_".concat(type === 'next' ? 'forward' : 'back'), - disabled: disabled, - onClick: _this.onNavIconClickHandler(type) - }); - }); +var isTimeIn12HourFormat = function isTimeIn12HourFormat(time) { + return _isTimeInAM(time) || _isTimeInPM(time); +}; - _defineProperty$2(_assertThisInitialized$2(_this), "onNavHeadingClickHandler", function (currView) { - return function () { - var monthsInView = _this.props.monthsInView; - var jumpView = _this.props.jumpView; +var _isTimeInAM = function _isTimeInAM(time) { + return time.includes('a') || time.includes('A'); +}; +var _isTimeInPM = function _isTimeInPM(time) { + return time.includes('p') || time.includes('P'); +}; +/** + * Convert time from 12 hour format to 24 hour format + * @param timeStr in hh:mm [AM/PM] format + * @returns time in HH:MM format + */ - if (jumpView) { - if (monthsInView > 1) jumpView = false; - } +var convert12To24HourFormat$1 = function convert12To24HourFormat(timeStr) { + var _timeStr$split = timeStr.split(' '), + _timeStr$split2 = _slicedToArray(_timeStr$split, 2), + time = _timeStr$split2[0], + modifier = _timeStr$split2[1]; - if (jumpView) { - if (currView === 'year') _this.setState({ - view: 'date' - }); - if (currView === 'month') _this.setState({ - view: 'year' - }); - if (currView === 'date') _this.setState({ - view: 'month' - }); - } - }; - }); + var timeArr = time.split(':'); + var hours = timeArr[0]; + var minutes = timeArr[1]; - _defineProperty$2(_assertThisInitialized$2(_this), "renderHeaderContent", function (index) { - var _this$props3 = _this.props, - size = _this$props3.size, - monthsInView = _this$props3.monthsInView; - var _this$state5 = _this.state, - view = _this$state5.view, - yearBlockNav = _this$state5.yearBlockNav; - var yearBlockRange = config.yearBlockRange, - months = config.months; + if (hours === '12' && _isTimeInAM(modifier)) { + hours = '00'; + } - var _this$getNavDateInfo2 = _this.getNavDateInfo(index), - yearNavVal = _this$getNavDateInfo2.year, - monthNavVal = _this$getNavDateInfo2.month; + if (_isTimeInPM(modifier) && hours !== '12') { + hours = (parseInt(hours, 10) + 12).toString(); + } - var headerContentClass = classnames({ - 'Calendar-headerContent': true, - 'Calendar-headerContent--noIcon-left': index === monthsInView - 1, - 'Calendar-headerContent--noIcon-right': index === 0 - }); - var headerContent = ''; - if (view === 'year') headerContent = "".concat(yearBlockNav, " - ").concat(yearBlockNav + (yearBlockRange - 1)); - if (view === 'month') headerContent = "".concat(yearNavVal); + return "".concat(hours, ":").concat(minutes); +}; +/** + * @param val + * @returns insert 0 at start in case of single digit + */ - var renderHeading = function renderHeading(content) { - if (size === 'small') { - return /*#__PURE__*/React.createElement(Text, { - weight: "strong" - }, content); - } +var convertToTwoDigit = function convertToTwoDigit(val) { + return ('0' + val).slice(-2); +}; +/** + * Convert time from 24 hour format to 12 hour format + * @param timeStr in HH:MM format + * @returns time in hh:mm [AM/PM] format + */ - return /*#__PURE__*/React.createElement(Heading, { - size: "s" - }, content); - }; +var convert24To12HourFormat = function convert24To12HourFormat(timeStr) { + var timeArr = timeStr.split(':'); + var hours = parseInt(timeArr[0], 10); + var modifier = hours >= 12 ? 'PM' : 'AM'; + var convertedHours = hours % 12 || 12; + var hoursInString = convertedHours.toString(); + hoursInString = convertToTwoDigit(hoursInString); + var minutes = timeArr[1]; + var result = "".concat(hoursInString.toString(), ":").concat(minutes, " ").concat(modifier); + return result; +}; - return /*#__PURE__*/React.createElement("div", { - className: headerContentClass - }, view !== 'date' && /*#__PURE__*/React.createElement("span", { - onClick: _this.onNavHeadingClickHandler(view) - }, renderHeading(headerContent)), view === 'date' && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", { - onClick: _this.onNavHeadingClickHandler(view) - }, renderHeading(months[monthNavVal])), /*#__PURE__*/React.createElement("span", { - className: "ml-4", - onClick: _this.onNavHeadingClickHandler('month') - }, renderHeading(yearNavVal)))); - }); +var getTimeIn24HrFormat = function getTimeIn24HrFormat(timeStr) { + if (isTimeIn12HourFormat(timeStr)) { + return convert12To24HourFormat$1(timeStr); + } - _defineProperty$2(_assertThisInitialized$2(_this), "renderBodyYear", function () { - var yearBlockRange = config.yearBlockRange, - yearsInRow = config.yearsInRow; - var _this$props4 = _this.props, - size = _this$props4.size, - rangePicker = _this$props4.rangePicker, - disabledBefore = _this$props4.disabledBefore, - disabledAfter = _this$props4.disabledAfter; - var yearBlockNav = _this.state.yearBlockNav; - var noOfRows = Math.ceil(yearBlockRange / yearsInRow); - return Array.from({ - length: noOfRows - }, function (_y, row) { - return /*#__PURE__*/React.createElement("div", { - key: row, - className: "Calendar-valueRow" - }, Array.from({ - length: yearsInRow - }, function (_x, col) { - var offset = yearsInRow * row + col; - if (offset === yearBlockNav) return undefined; - var year = yearBlockNav + offset; - var disabled = compareDate(disabledBefore, 'more', year) || compareDate(disabledAfter, 'less', year); - var active = !disabled && !rangePicker && year === _this.state.year; - var valueClass = classnames(_defineProperty$2({ - 'Calendar-value': true, - 'Calendar-value--active': active, - 'Calendar-value--disabled': disabled, - 'Calendar-yearValue': true - }, "Calendar-yearValue--".concat(size), size)); - return /*#__PURE__*/React.createElement("div", { - key: "".concat(row, "-").concat(col), - "data-test": "DesignSystem-Calendar--yearValue", - className: valueClass, - onClick: _this.selectYear(year) - }, /*#__PURE__*/React.createElement(Text, { - size: size === 'small' ? 'small' : 'regular', - appearance: active ? 'white' : disabled ? 'disabled' : 'default' - }, year)); - })); - }); - }); + return timeStr; +}; +/** + * @param startTime in HH:MM format + * @param endTime in HH:MM format + * @returns returns true if start time is greater than end time + */ - _defineProperty$2(_assertThisInitialized$2(_this), "renderBodyMonth", function () { - var monthBlock = config.monthBlock, - monthsInRow = config.monthsInRow, - months = config.months; - var _this$props5 = _this.props, - size = _this$props5.size, - disabledBefore = _this$props5.disabledBefore, - disabledAfter = _this$props5.disabledAfter; - var _this$state6 = _this.state, - yearNav = _this$state6.yearNav, - year = _this$state6.year; - var noOfRows = Math.ceil(monthBlock / monthsInRow); - return Array.from({ - length: noOfRows - }, function (_y, row) { - return /*#__PURE__*/React.createElement("div", { - key: row, - className: "Calendar-valueRow" - }, Array.from({ - length: monthsInRow - }, function (_x, col) { - var month = monthsInRow * row + col; - var disabled = compareDate(disabledBefore, 'more', yearNav, month) || compareDate(disabledAfter, 'less', yearNav, month); - var active = !disabled && year === yearNav && month === _this.state.month; - var valueClass = classnames(_defineProperty$2({ - 'Calendar-value': true, - 'Calendar-value--active': active, - 'Calendar-value--dummy': disabled, - 'Calendar-monthValue': true - }, "Calendar-monthValue--".concat(size), size)); - return /*#__PURE__*/React.createElement("div", { - key: "".concat(row, "-").concat(col), - "data-test": "DesignSystem-Calendar--monthValue", - className: valueClass, - onClick: _this.selectMonth(month) - }, /*#__PURE__*/React.createElement(Text, { - size: size === 'small' ? 'small' : 'regular', - appearance: active ? 'white' : disabled ? 'disabled' : 'default' - }, months[month])); - })); - }); - }); - _defineProperty$2(_assertThisInitialized$2(_this), "onDateRowMouseLeaveHandler", function () { - var rangePicker = _this.props.rangePicker; +var checkTimeDifference = function checkTimeDifference(startTime, endTime) { + var parseStartTime = parseDate(startTime); + var parseEndTime = parseDate(endTime); + return parseStartTime > parseEndTime; +}; +/** + * @param startTime in HH:MM format + * @param endTime in HH:MM format + * @param interval + * @returns array of 24 hour time list based on interval + */ - if (rangePicker) { - _this.setState({ - hoverDate: undefined - }); - } - }); +var get24HourTimeList = function get24HourTimeList(startTime, endTime, interval) { + var timeList = []; + var parseStartTime = parseDate(startTime); + var parseEndTime = parseDate(endTime); - _defineProperty$2(_assertThisInitialized$2(_this), "renderBodyDate", function (index) { - var daysInRow = config.daysInRow, - days = config.days; - var _this$props6 = _this.props, - size = _this$props6.size, - firstDayOfWeek = _this$props6.firstDayOfWeek; - return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { - className: "Calendar-dayValues" - }, Array.from({ - length: 7 - }, function (_x, day) { - var valueClass = classnames({ - 'Calendar-valueWrapper': true - }); - var dayValue = (day + daysInRow + getIndexOfDay(firstDayOfWeek)) % daysInRow; - return /*#__PURE__*/React.createElement(Subheading, { - key: day, - className: valueClass, - appearance: "disabled" - }, days[size][dayValue]); - })), /*#__PURE__*/React.createElement("div", { - className: "Calendar-dateValues", - onMouseLeave: _this.onDateRowMouseLeaveHandler - }, _this.renderDateValues(index))); - }); + while (parseStartTime <= parseEndTime) { + timeList.push(parseStartTime.toTimeString().substring(0, 5)); + parseStartTime.setMinutes(parseStartTime.getMinutes() + interval); + } - _defineProperty$2(_assertThisInitialized$2(_this), "renderDateValues", function (index) { - var daysInRow = config.daysInRow; - var _this$props7 = _this.props, - size = _this$props7.size, - rangePicker = _this$props7.rangePicker, - firstDayOfWeek = _this$props7.firstDayOfWeek, - disabledBefore = _this$props7.disabledBefore, - disabledAfter = _this$props7.disabledAfter; - var _this$state7 = _this.state, - startDate = _this$state7.startDate, - endDate = _this$state7.endDate, - hoverDate = _this$state7.hoverDate, - yearState = _this$state7.year, - monthState = _this$state7.month, - dateState = _this$state7.date; + return timeList; +}; +/** + * @param startTime in HH:MM format + * @param interval + * @returns time list in 24 hour format including times option for next day + */ - var _this$getNavDateInfo3 = _this.getNavDateInfo(index), - yearNavVal = _this$getNavDateInfo3.year, - monthNavVal = _this$getNavDateInfo3.month; - var dayRange = getDaysInMonth(yearNavVal, monthNavVal); - var dayDiff = getFirstDayOfMonth(yearNavVal, monthNavVal) - getIndexOfDay(firstDayOfWeek); - var dummyDays = Math.abs(dayDiff); - var noOfRows = Math.ceil((dayRange + dummyDays) / daysInRow); +var getReverseTimeList = function getReverseTimeList(startTime, endTime, interval) { + var timeList = get24HourTimeList('00:00', '23:59', interval); + var startTimeIndex = timeList.indexOf(startTime); + var endTimeIndex = timeList.indexOf(endTime); + var nextDayTimeIndex = endTime === '' ? startTimeIndex : endTimeIndex + 1; + var presentDayList = timeList.slice(startTimeIndex); + var nextDayList = timeList.slice(0, nextDayTimeIndex); + var result = presentDayList.concat(nextDayList); + return result; +}; - var inRangeError = _this.getInRangeError(); +var getTimeListIn24HourFormat = function getTimeListIn24HourFormat(startTime, endTime, interval) { + if (endTime === '' || checkTimeDifference(startTime, endTime)) { + return getReverseTimeList(startTime, endTime, interval); + } - var onClickHandler = function onClickHandler(date) { - return function () { - if (rangePicker) { - if (startDate && endDate) { - _this.selectDate(index, date); - } else { - if (!inRangeError) _this.selectDate(index, date); - } - } else { - _this.selectDate(index, date); - } - }; - }; + return get24HourTimeList(startTime, endTime, interval); +}; - var onMouseOverHandler = function onMouseOverHandler(date) { - return function () { - if (rangePicker) { - var d = _this.getDateValue(yearNavVal, monthNavVal, date); +var getTimeDifference = function getTimeDifference(startTime, endTime) { + var timeStart = new Date('07/07/2022 ' + startTime); + var timeEnd = new Date('07/07/2022 ' + endTime); + var diff = timeEnd.getTime() - timeStart.getTime(); + var diff_as_date = new Date(diff); + var hour = diff_as_date.getUTCHours(); + var minute = diff_as_date.getUTCMinutes(); + return { + hour: hour, + minute: minute + }; +}; - if (!startDate || !endDate) { - _this.setState({ - hoverDate: d - }); - } - } - }; - }; +var getCustomLabel = function getCustomLabel(time, timeFormat, showDuration, referenceTime) { + var label = time; - return Array.from({ - length: noOfRows - }, function (_y, row) { - return /*#__PURE__*/React.createElement("div", { - key: row, - className: "Calendar-valueRow" - }, Array.from({ - length: daysInRow - }, function (_x, col) { - var date = daysInRow * row + col - dummyDays + 1; - var dummy = date <= 0 || date > dayRange; - var disabled = !dummy && (compareDate(disabledBefore, 'more', yearNavVal, monthNavVal, date) || compareDate(disabledAfter, 'less', yearNavVal, monthNavVal, date)); - var active = !disabled && yearState === yearNavVal && monthState === monthNavVal && dateState === date; - var startActive = false; - var endActive = false; - var inRange = false; - var inRangeLast = false; + if (isFormat12Hour(timeFormat)) { + label = convert24To12HourFormat(time); + } - if (rangePicker) { - startActive = compareDate(startDate, 'equal', yearNavVal, monthNavVal, date); - endActive = compareDate(endDate, 'equal', yearNavVal, monthNavVal, date); - inRangeLast = compareDate(hoverDate, 'equal', yearNavVal, monthNavVal, date); - active = !disabled && (startActive || endActive); + if (showDuration && referenceTime) { + var _getTimeDifference = getTimeDifference(referenceTime, time), + hour = _getTimeDifference.hour, + minute = _getTimeDifference.minute; - if (startDate && endDate) { - inRange = !disabled && (compareDate(startDate, 'less', yearNavVal, monthNavVal, date) || startActive) && (compareDate(endDate, 'more', yearNavVal, monthNavVal, date) || endActive); - } else if (startDate) { - inRange = !disabled && (compareDate(hoverDate, 'more', yearNavVal, monthNavVal, date) || inRangeLast) && compareDate(startDate, 'less', yearNavVal, monthNavVal, date); - } else if (endDate) { - inRange = !disabled && (compareDate(hoverDate, 'less', yearNavVal, monthNavVal, date) || inRangeLast) && compareDate(endDate, 'more', yearNavVal, monthNavVal, date); - } - } + var timeDiffLabel = " (".concat(hour, " hr ").concat(minute, " min)"); + label += timeDiffLabel; + } - var _getDateInfo4 = getDateInfo(startDate), - sYear = _getDateInfo4.year, - sMonth = _getDateInfo4.month, - sDate = _getDateInfo4.date; + return label; +}; - var _getDateInfo5 = getDateInfo(endDate), - eYear = _getDateInfo5.year, - eMonth = _getDateInfo5.month, - eDate = _getDateInfo5.date; +var isOptionDisabled = function isOptionDisabled(time, timeFormat, disabledSlotList) { + var timeValue = time; - var isStart = startActive || endDate && inRangeLast && compareDate(hoverDate, 'less', eYear, eMonth, eDate); - var isEnd = endActive || startDate && inRangeLast && compareDate(hoverDate, 'more', sYear, sMonth, sDate); - var isRangeError = inRange && inRangeError; - var wrapperClass = classnames({ - 'Calendar-valueWrapper': true, - 'Calendar-valueWrapper--inRange': inRange || rangePicker && active, - 'Calendar-valueWrapper--inRangeError': isRangeError, - 'Calendar-valueWrapper--start': isStart && !isEnd, - 'Calendar-valueWrapper--end': isEnd && !isStart, - 'Calendar-valueWrapper--startEnd': isStart && isEnd, - 'Calendar-valueWrapper--startError': isStart && isRangeError, - 'Calendar-valueWrapper--endError': isEnd && isRangeError - }); - var valueClass = classnames(_defineProperty$2({ - 'Calendar-value': true, - 'Calendar-value--start': isStart && !isEnd, - 'Calendar-value--end': isEnd && !isStart, - 'Calendar-value--startError': isStart && isRangeError, - 'Calendar-value--endError': isEnd && isRangeError, - 'Calendar-value--active': active, - 'Calendar-value--dummy': dummy || disabled, - 'Calendar-value--disabled': disabled, - 'Calendar-dateValue': true - }, "Calendar-dateValue--".concat(size), size)); - return /*#__PURE__*/React.createElement("div", { - key: "".concat(row, "-").concat(col), - className: wrapperClass - }, !dummy && /*#__PURE__*/React.createElement(Text, { - appearance: active ? 'white' : disabled ? 'disabled' : 'default', - size: size === 'small' ? 'small' : 'regular', - "data-test": "DesignSystem-Calendar--dateValue", - className: valueClass, - onClick: onClickHandler(date), - onMouseOver: onMouseOverHandler(date) - }, date)); - })); - }); - }); + if (isFormat12Hour(timeFormat)) { + timeValue = convert24To12HourFormat(time); + } - _defineProperty$2(_assertThisInitialized$2(_this), "renderCalendar", function (index) { - var _classNames5; + if (disabledSlotList.includes(timeValue)) { + return true; + } - var _this$props8 = _this.props, - size = _this$props8.size, - monthsInView = _this$props8.monthsInView; - var view = _this.state.view; - var containerClass = classnames((_classNames5 = {}, _defineProperty$2(_classNames5, 'Calendar', true), _defineProperty$2(_classNames5, "Calendar--".concat(view), view), _defineProperty$2(_classNames5, "Calendar--".concat(size), size), _classNames5)); - var headerClass = classnames({ - 'Calendar-header': true - }); - var bodyClass = classnames({ - 'Calendar-body': true - }); - return /*#__PURE__*/React.createElement("div", { - key: index, - "data-test": "DesignSystem-Calendar", - className: containerClass - }, /*#__PURE__*/React.createElement("div", { - className: headerClass - }, index === 0 && _this.renderJumpButton('prev'), _this.renderHeaderContent(index), index === monthsInView - 1 && _this.renderJumpButton('next')), /*#__PURE__*/React.createElement("div", { - className: bodyClass - }, view === 'year' && _this.renderBodyYear(), view === 'month' && _this.renderBodyMonth(), view === 'date' && _this.renderBodyDate(index))); - }); + return false; +}; - var _this$props9 = _this.props, - _rangePicker = _this$props9.rangePicker, - _startDate = _this$props9.startDate, - _endDate = _this$props9.endDate, - _monthsInView = _this$props9.monthsInView, - _view = _this$props9.view; - var currDate = _rangePicker ? _endDate || _startDate : props.date; +var convertTimeToOptionList = function convertTimeToOptionList(timeList, timeFormat) { + var id = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'TimePicker-Option-key'; + var showDuration = arguments.length > 3 ? arguments[3] : undefined; + var referenceTime = arguments.length > 4 ? arguments[4] : undefined; + var disabledSlotList = arguments.length > 5 ? arguments[5] : undefined; + var optionList = timeList.map(function (time, index) { + return { + label: getCustomLabel(time, timeFormat, showDuration, referenceTime), + value: time, + disabled: disabledSlotList && isOptionDisabled(time, timeFormat, disabledSlotList), + selected: false, + optionID: id + index + }; + }); + return optionList; +}; - var _yearNav = props.yearNav !== undefined ? props.yearNav : getDateInfo(currDate || Date.now()).year; +var computeEndTime = function computeEndTime(startTime) { + return startTime ? '' : '23:59'; +}; - var _monthNav = props.monthNav !== undefined ? props.monthNav : getDateInfo(currDate || Date.now()).month; +var getDropdownOptionList = function getDropdownOptionList(props) { + var startTime = props.startTime, + endTime = props.endTime, + interval = props.interval, + timeFormat = props.timeFormat, + showDuration = props.showDuration, + disabledSlotList = props.disabledSlotList, + id = props.id; + var startTimeIn24Hr = startTime ? getTimeIn24HrFormat(startTime) : '00:00'; + var endTimeIn24Hr = endTime ? getTimeIn24HrFormat(endTime) : computeEndTime(startTime); + var timeList = getTimeListIn24HourFormat(startTimeIn24Hr, endTimeIn24Hr, interval); + var dropdownOptionList = convertTimeToOptionList(timeList, timeFormat, id, showDuration, startTime, disabledSlotList); + return dropdownOptionList; +}; - var _getDateInfo6 = getDateInfo(currDate), - _year = _getDateInfo6.year, - _month = _getDateInfo6.month, - _date = _getDateInfo6.date; +var convertMinTo60 = function convertMinTo60(time) { + var parseNum = parseInt(time, 10); + if (parseNum < 10) return time; + var timeInNum = parseNum > 60 ? parseNum % 60 : parseNum; + var min = (timeInNum.toString() + '0').slice(0, 2); + return min; +}; - _this.state = { - currDate: currDate, - startDate: _startDate, - endDate: _endDate, - yearNav: _yearNav, - monthNav: _monthNav, - year: _year, - month: _month, - date: _date, - view: _monthsInView > 1 ? 'date' : _view, - yearBlockNav: getYearBlock(_yearNav) - }; - return _this; - } +var get24HourCurrentTime = function get24HourCurrentTime() { + var today = new Date(); + return convertToTwoDigit(today.getHours()) + ':' + convertToTwoDigit(today.getMinutes()); +}; - _createClass$1(Calendar, [{ - key: "componentDidUpdate", - value: function componentDidUpdate(prevProps, prevState) { - var monthsInView = this.props.monthsInView; +var convertHourTo24 = function convertHourTo24(time) { + var timeInNum = parseInt(time, 10) % 24; + return timeInNum.toString(); +}; - if (prevProps.date !== this.props.date) { - var _getDateInfo7 = getDateInfo(this.props.date), - year = _getDateInfo7.year, - month = _getDateInfo7.month, - _date2 = _getDateInfo7.date; +var convertHourTo12 = function convertHourTo12(time) { + var timeInNum = parseInt(time, 10) % 12; + return timeInNum.toString(); +}; - this.updateState(year, month, _date2); - var d = convertToDate(this.props.date); - this.setState({ - currDate: d - }); - } +var _checkNumber = function _checkNumber(str) { + var numberRegex = /^[0-9]+$/; + return numberRegex.test(str); +}; - if (prevProps.startDate !== this.props.startDate) { - var _d = convertToDate(this.props.startDate); +var _checkNumberWithAMPM = function _checkNumberWithAMPM(str) { + var numberWithAMPMRegex = /^[0-9]+[ AaMmPp]+$/; + return numberWithAMPMRegex.test(str); +}; - this.setState({ - startDate: _d - }); - } +var _checkNumberWithSpecialChar = function _checkNumberWithSpecialChar(str) { + var numberWithSpecialCharRegex = /^[0-9]+[`\s!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?~][0-9]*$/; + return numberWithSpecialCharRegex.test(str); +}; - if (prevProps.endDate !== this.props.endDate) { - var _d2 = convertToDate(this.props.endDate); +var _checkNumberWithSpecialCharAMPM = function _checkNumberWithSpecialCharAMPM(str) { + var numberWithSpecialCharAMPM = /^[0-9]+[`\s!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?~][0-9]+[ AaMmPp]+$/; + return numberWithSpecialCharAMPM.test(str); +}; - this.setState({ - endDate: _d2 - }); - } +var specialCharRegex = /[`\s!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?~]/; +/** + * @param searchTime in [number special-char number] format + * @returns timeObj with hour & minute in 24 hour format + */ - if (prevProps.view !== this.props.view) { - if (this.props.monthsInView === 1) { - this.setState({ - view: this.props.view - }); - } - } +var getTimeFromNumberWithSpecialChar = function getTimeFromNumberWithSpecialChar(searchTime) { + var time = searchTime.split(specialCharRegex); + var hour = convertHourTo24(time[0]); + var hh = convertToTwoDigit(hour); + var min = time[1] !== '' ? convertMinTo60(time[1]) : '00'; + var mm = (min + '0').slice(0, 2); + return { + hour: hh, + min: mm + }; +}; +/** + * If search term only contains number + * @param searchTerm + * @returns timeObj with hour & minute in 24 hour format + */ - if (prevProps.yearNav !== this.props.yearNav) { - var yearNav = this.props.yearNav; - if (yearNav) { - this.setState({ - yearNav: yearNav, - yearBlockNav: getYearBlock(yearNav) - }); - } - } +var getSearchTimeFromNumber = function getSearchTimeFromNumber(searchTerm, show12HourFormat) { + var searchLen = searchTerm.length; + var searchTimeInNum = parseInt(searchTerm, 10); + var firstTwoTerm = searchTerm.slice(0, 2); + var hh = '00'; + var mm = '00'; - if (prevProps.monthNav !== this.props.monthNav) { - var monthNav = this.props.monthNav; + switch (searchLen) { + case 1: + // if search term length is 1 consider it as hour + hh = '0' + searchTerm; + break; - if (monthNav) { - this.setState({ - monthNav: monthNav - }); - } + case 2: + // if search term length is 2 + if (searchTimeInNum <= 24 || show12HourFormat && searchTimeInNum <= 12) { + // consider it as hour + hh = convertToTwoDigit(searchTerm); + } else { + // consider first term as hour and last term as min + hh = '0' + searchTerm[0]; + mm = convertMinTo60(searchTerm[1] + '0'); // mm = searchTerm[1] + '0'; } - if (prevState.currDate !== this.state.currDate) { - var _this$props10 = this.props, - rangePicker = _this$props10.rangePicker, - onDateChange = _this$props10.onDateChange; - var _this$state8 = this.state, - currDate = _this$state8.currDate, - _startDate3 = _this$state8.startDate, - _endDate3 = _this$state8.endDate; + break; - if (currDate) { - if (onDateChange) onDateChange(currDate); + case 3: + hh = '0' + searchTerm[0]; + mm = convertMinTo60(searchTerm.slice(1)); + break; - if (rangePicker) { - this.setState({ - hoverDate: undefined - }); + case 4: + hh = show12HourFormat ? convertHourTo12(firstTwoTerm) : convertHourTo24(firstTwoTerm); + mm = convertMinTo60(searchTerm.slice(2)); + break; - if (_startDate3 && _endDate3) { - this.setState({ - startDate: currDate, - endDate: undefined - }); - } else { - var _getDateInfo8 = getDateInfo(currDate), - _year2 = _getDateInfo8.year, - _month2 = _getDateInfo8.month, - _date3 = _getDateInfo8.date; + default: + // set time as -1 in case of invalid time + hh = '-1'; + mm = '-1'; + } - if (_startDate3) { - if (compareDate(_startDate3, 'more', _year2, _month2, _date3)) { - this.setState({ - startDate: currDate - }); - } else { - this.setState({ - endDate: currDate - }); - } - } else if (_endDate3) { - if (compareDate(_endDate3, 'less', _year2, _month2, _date3)) { - this.setState({ - endDate: currDate - }); - } else { - this.setState({ - startDate: currDate - }); - } - } else { - this.setState({ - startDate: currDate - }); - } - } - } else { - this.setState({ - startDate: currDate - }); - } - } - } + return { + hour: hh, + min: mm + }; +}; +/** + * @param searchTime in [number AMPM] format + * @returns timeObj with hour & minute in 24 hour format + */ - if (prevState.startDate !== this.state.startDate || prevState.endDate !== this.state.endDate) { - var onRangeChange = this.props.onRangeChange; - var _this$state9 = this.state, - _startDate4 = _this$state9.startDate, - _endDate4 = _this$state9.endDate; - if (onRangeChange) onRangeChange(_startDate4, _endDate4); - } - if (prevState.year !== this.state.year) { - var _year3 = this.state.year; +var getTimeFromNumberWithAMPM = function getTimeFromNumberWithAMPM(searchTime) { + var timeArr = searchTime.split(/[\saAmMpP]/); - if (_year3 !== undefined && monthsInView === 1) { - this.setState({ - year: _year3, - yearBlockNav: getYearBlock(_year3), - yearNav: _year3 - }); - } - } + var _getSearchTimeFromNum = getSearchTimeFromNumber(timeArr[0], true), + hour = _getSearchTimeFromNum.hour, + min = _getSearchTimeFromNum.min; - if (prevState.month !== this.state.month) { - var _month3 = this.state.month; + return { + hour: hour, + min: min + }; +}; +/** + * @param searchTerm entered by user in any format + * @returns modified search term in 24 hour format + */ - if (_month3 !== undefined && monthsInView === 1) { - this.setState({ - monthNav: _month3 - }); - } - } + +var formatSearchTerm = function formatSearchTerm(optionList, searchTerm) { + var searchTime = { + hour: '00', + min: '00' + }; // If search term only contains numbers + + if (_checkNumber(searchTerm)) { + var searchTimeInHHMM = getSearchTimeFromNumber(searchTerm); + + if (parseInt(searchTimeInHHMM.hour) <= 12 && parseInt(searchTimeInHHMM.hour) > 0) { + // switch to AM/PM based on current time + searchTime = getCurrentRelativeTime(optionList, searchTimeInHHMM); + } else { + searchTime = searchTimeInHHMM; + } + } // if search term contains numbers along with [ampm] + else if (_checkNumberWithAMPM(searchTerm)) { + searchTime = getTimeFromNumberWithAMPM(searchTerm); + searchTime.hour = convert12To24HourFormat(searchTime.hour, searchTerm); + } // if search term contains numbers along with special character + else if (_checkNumberWithSpecialChar(searchTerm)) { + var _searchTimeInHHMM = getTimeFromNumberWithSpecialChar(searchTerm); + + if (parseInt(_searchTimeInHHMM.hour) <= 12) { + // switch to AM/PM based on current time + searchTime = getCurrentRelativeTime(optionList, _searchTimeInHHMM); + } else { + searchTime = _searchTimeInHHMM; } - }, { - key: "render", - value: function render() { - var _this2 = this; + } // if search term contains numbers, special character & [AmPm] + else if (_checkNumberWithSpecialCharAMPM(searchTerm)) { + var timeWithoutAMPM = searchTerm.replace(/[\saApPmM]/g, ''); - var _this$props11 = this.props, - monthsInView = _this$props11.monthsInView, - className = _this$props11.className; - var baseProps = extractBaseProps(this.props); - var classes = classnames({ - 'Calendar-wrapper': true - }, className); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: classes - }), Array.from({ - length: monthsInView - }, function (_x, index) { - return _this2.renderCalendar(index); - })); + if (_checkNumber(timeWithoutAMPM)) { + searchTime = getSearchTimeFromNumber(timeWithoutAMPM, true); + } else if (_checkNumberWithSpecialChar(timeWithoutAMPM)) { + searchTime = getTimeFromNumberWithSpecialChar(timeWithoutAMPM); } - }]); - return Calendar; -}(React.Component); + searchTime.hour = convert12To24HourFormat(searchTime.hour, searchTerm); + } -_defineProperty$2(Calendar, "defaultProps", { - size: 'large', - monthsInView: 1, - view: 'date', - firstDayOfWeek: 'sunday', - jumpView: true -}); + return searchTime; +}; +/** + * @param hours + * @param searchTerm + * @returns hours based on AM/PM in 24 hour format + */ -var _excluded$t = ["shadow", "children", "className"]; -var Card = /*#__PURE__*/React.forwardRef(function (props, ref) { - var _classNames; +var convert12To24HourFormat = function convert12To24HourFormat(hours, searchTerm) { + if (hours === '12' && _isTimeInAM(searchTerm)) { + hours = '00'; + } else if (_isTimeInPM(searchTerm) && hours !== '12') { + hours = (parseInt(hours, 10) + 12).toString(); + } - var _props$shadow = props.shadow, - shadow = _props$shadow === void 0 ? 'default' : _props$shadow, - children = props.children, - className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$t); + return hours; +}; +/** + * Switch to AM/PM time based on current time + * @param optionList + * @param searchTime + */ - var classes = classnames((_classNames = { - Card: true - }, _defineProperty$2(_classNames, "Card--shadow-".concat(shadow), shadow), _defineProperty$2(_classNames, "".concat(className), className), _classNames)); - return /*#__PURE__*/React.createElement("div", _extends$3({ - ref: ref - }, rest, { - className: classes - }), children); -}); -Card.displayName = 'Card'; -var _excluded$s = ["border", "children", "className"]; -var CardSubdued = /*#__PURE__*/React.forwardRef(function (props, ref) { - var border = props.border, - children = props.children, - className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$s); +var getCurrentRelativeTime = function getCurrentRelativeTime(optionList, searchTime) { + var searchTimeStr = "".concat(searchTime.hour, ":").concat(searchTime.min); + var currentTime = get24HourCurrentTime(); + var greaterTime = checkTimeDifference(currentTime, searchTimeStr); + var currentTimeIndex = findClosestTimeIndex(optionList, currentTime); + var searchTimeIndex = findClosestTimeIndex(optionList, searchTimeStr); - var classes = classnames(_defineProperty$2({ - CardSubdued: true - }, "CardSubdued--".concat(border), border), className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-CardSubdued", - ref: ref - }, rest, { - className: classes - }), children); -}); -CardSubdued.displayName = 'CardSubdued'; + if (greaterTime && currentTimeIndex > searchTimeIndex) { + var hourIn24Format = parseInt(searchTime.hour, 10) + 12; + searchTime.hour = hourIn24Format.toString(); + } -var CardHeader = function CardHeader(props) { - var className = props.className, - children = props.children; - var baseProps = extractBaseProps(props); - var classes = classnames({ - 'Card-header': true - }, className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-CardHeader" - }, baseProps, { - className: classes - }), children); + return searchTime; }; -CardHeader.displayName = 'CardHeader'; -var CardBody = function CardBody(props) { - var className = props.className, - children = props.children; - var baseProps = extractBaseProps(props); - var classes = classnames({ - 'Card-body': true - }, className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-CardBody" - }, baseProps, { - className: classes - }), children); -}; -CardBody.displayName = 'CardBody'; +var findClosestTimeIndex = function findClosestTimeIndex(optionList, searchItem) { + var closestItemIndex = 0; + var minTime = { + hour: 100, + mins: 100 + }; -var CardFooter = function CardFooter(props) { - var className = props.className, - children = props.children, - withSeperator = props.withSeperator; - var baseProps = extractBaseProps(props); - var classes = classnames(_defineProperty$2({ - 'Card-footer': true - }, 'Card-footer--withSeperator', withSeperator), className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-CardFooter" - }, baseProps, { - className: classes - }), children); -}; -CardFooter.displayName = 'CardFooter'; -CardFooter.defaultProps = { - withSeperator: true -}; + for (var index = 0; index < optionList.length; index++) { + var _getTimeDifference = getTimeDifference(searchItem, optionList[index]), + hour = _getTimeDifference.hour, + minute = _getTimeDifference.minute; -var GenericChip = function GenericChip(props) { - var label = props.label, - icon = props.icon, - clearButton = props.clearButton, - disabled = props.disabled, - className = props.className, - selected = props.selected, - onClose = props.onClose, - onClick = props.onClick; - var baseProps = extractBaseProps(props); + if (hour < minTime.hour || hour === minTime.hour && minute < minTime.mins) { + minTime.hour = hour; + minTime.mins = minute; + closestItemIndex = index; + } + } - var iconClass = function iconClass(align) { - var _classNames; + return closestItemIndex; +}; +/** + * Get index of search term from option list + * @param optionList + * @param searchTerm + * @returns Index of the search term in option list + */ - return classnames((_classNames = {}, _defineProperty$2(_classNames, 'Chip-icon', true), _defineProperty$2(_classNames, "Chip-icon--".concat(align), align), _defineProperty$2(_classNames, 'cursor-pointer', align === 'right' && !disabled), _classNames)); - }; - var onCloseHandler = function onCloseHandler(e) { - e.stopPropagation(); - if (onClose) onClose(); - }; +var getSearchIndex = function getSearchIndex(optionList, searchTerm) { + var _formatSearchTerm = formatSearchTerm(optionList, searchTerm), + hour = _formatSearchTerm.hour, + min = _formatSearchTerm.min; - var onClickHandler = function onClickHandler() { - if (onClick) onClick(); - }; + if (min === '60') { + min = '00'; + hour = (parseInt(hour, 10) + 1).toString(); + } - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-GenericChip--GenericChipWrapper" - }, baseProps, { - className: "Chip-wrapper ".concat(className), - onClick: onClickHandler - }), icon && /*#__PURE__*/React.createElement(Icon, { - "data-test": "DesignSystem-GenericChip--Icon", - name: icon, - appearance: disabled ? 'disabled' : selected ? 'info' : 'default', - className: iconClass('left') - }), /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-GenericChip--Text", - appearance: disabled ? 'disabled' : 'default' - }, label), clearButton && /*#__PURE__*/React.createElement(Icon, { - "data-test": "DesignSystem-GenericChip--clearButton", - name: "clear", - appearance: disabled ? 'disabled' : selected ? 'info' : 'subtle', - className: iconClass('right'), - onClick: onCloseHandler - })); + var searchItem = "".concat(hour, ":").concat(min); + var searchIndex = findClosestTimeIndex(optionList, searchItem); + return searchIndex; }; -GenericChip.displayName = 'GenericChip'; - -var Chip = function Chip(props) { - var _classNames; - - var label = props.label, - icon = props.icon, - clearButton = props.clearButton, - type = props.type, - disabled = props.disabled, - selected = props.selected, - onClose = props.onClose, - onClick = props.onClick, - name = props.name, - className = props.className; - var baseProps = extractBaseProps(props); +/** + * @param searchTerm + * @returns count number of digits present inside search term + */ - var onCloseHandler = function onCloseHandler() { - if (!disabled && onClose) onClose(name); - }; +var countNumberInStr = function countNumberInStr(searchTerm) { + var _searchTerm$match; - var onClickHandler = function onClickHandler() { - if (!disabled && onClick) onClick(name); - }; + return ((_searchTerm$match = searchTerm.match(/\d/g)) === null || _searchTerm$match === void 0 ? void 0 : _searchTerm$match.length) || 0; +}; - var chipClass = classnames((_classNames = { - Chip: true - }, _defineProperty$2(_classNames, "Chip-".concat(type, "--disabled"), disabled), _defineProperty$2(_classNames, "Chip--".concat(type), type && !disabled), _defineProperty$2(_classNames, "Chip-".concat(type, "--selected"), selected && !disabled), _classNames), className); - var clearbutton = type === 'action' ? false : clearButton; - var select = type === 'selection' && selected ? true : false; - return /*#__PURE__*/React.createElement(GenericChip, _extends$3({ - "data-test": "DesignSystem-Chip--GenericChip" - }, baseProps, { - label: label, - selected: select, - icon: icon, - clearButton: clearbutton, - disabled: disabled, - className: chipClass, - onClose: onCloseHandler, - onClick: onClickHandler, - name: name - })); +var isValidSearchTerm = function isValidSearchTerm(searchTerm) { + var totalDigit = countNumberInStr(searchTerm); + return totalDigit > 0 && totalDigit < 5; }; -Chip.displayName = 'Chip'; -Chip.defaultProps = { - type: 'input' + +var getValueFromOptionList = function getValueFromOptionList(optionList) { + var list = optionList.map(function (option) { + return option.value; + }); + return list; }; -var ChipGroup = function ChipGroup(props) { - var list = props.list, - onClick = props.onClick, - onClose = props.onClose, - className = props.className; - var baseProps = extractBaseProps(props); +var getSearchValueIndex = function getSearchValueIndex(options, searchTerm) { + // Search Term is valid if it contains number + if (!isValidSearchTerm(searchTerm)) { + return -1; + } - var onClickHandler = function onClickHandler(item) { - if (onClick) onClick(item); - }; + var searchIndex = getSearchIndex(options, searchTerm); + return searchIndex; +}; - var onCloseHandler = function onCloseHandler(item) { - if (onClose) onClose(item); - }; +var getScrollIndex = function getScrollIndex(dropdownOptionList, searchTerm) { + var optionList = getValueFromOptionList(dropdownOptionList); - var ChipGroupClass = classnames(_defineProperty$2({}, 'ChipGroup', true), className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-ChipGroup" - }, baseProps, { - className: ChipGroupClass - }), list.map(function (item, ind) { - var _item$label = item.label, - label = _item$label === void 0 ? '' : _item$label, - icon = item.icon, - type = item.type, - disabled = item.disabled, - selected = item.selected, - clearButton = item.clearButton, - name = item.name; - return /*#__PURE__*/React.createElement("span", { - key: ind, - className: "ChipGroup-item" - }, /*#__PURE__*/React.createElement(Chip, { - "data-test": "DesignSystem-ChipGroup--Chip", - name: name, - label: label, - selected: selected, - icon: icon, - disabled: disabled, - clearButton: clearButton, - type: type, - onClick: function onClick() { - return onClickHandler(item); - }, - onClose: function onClose() { - return onCloseHandler(item); - } - })); - })); + if (searchTerm === '') { + // return current time index + var currTime = get24HourCurrentTime(); + var currTimeIndex = findClosestTimeIndex(optionList, currTime); + return currTimeIndex; + } + + return getSearchValueIndex(optionList, searchTerm); }; -ChipGroup.displayName = 'ChipGroup'; -var _excluded$r = ["size", "sizeXS", "sizeS", "sizeM", "sizeL", "sizeXL", "className", "children"]; -var Column = /*#__PURE__*/React.forwardRef(function (props, ref) { - var _classNames; +var getSearchedOptions = function getSearchedOptions(options, searchTerm) { + var result = options.filter(function (option) { + return option.label.toLowerCase().includes(searchTerm.toLowerCase()); + }); + return result; +}; - var size = props.size, - sizeXS = props.sizeXS, - sizeS = props.sizeS, - sizeM = props.sizeM, - sizeL = props.sizeL, - sizeXL = props.sizeXL, - className = props.className, - children = props.children, - rest = _objectWithoutProperties$1(props, _excluded$r); +var sortList = function sortList(arr) { + return arr.sort(function (a, b) { + return a.value > b.value ? 1 : b.value > a.value ? -1 : 0; + }); +}; - var classes = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Col', true), _defineProperty$2(_classNames, "Col--".concat(size), size), _defineProperty$2(_classNames, "Col--xs-".concat(sizeXS), sizeXS), _defineProperty$2(_classNames, "Col--s-".concat(sizeS), sizeS), _defineProperty$2(_classNames, "Col--m-".concat(sizeM), sizeM), _defineProperty$2(_classNames, "Col--l-".concat(sizeL), sizeL), _defineProperty$2(_classNames, "Col--xl-".concat(sizeXL), sizeXL), _defineProperty$2(_classNames, "".concat(className), className), _classNames)); - return /*#__PURE__*/React.createElement("div", _extends$3({ - ref: ref, - "data-test": "DesignSystem-Column" - }, rest, { - className: classes - }), children); -}); -Column.displayName = 'Column'; +var _isEqual = function _isEqual(firstList, secondList) { + var firstSortedList = sortList(_toConsumableArray(firstList)); + var secondSortedList = sortList(_toConsumableArray(secondList)); + return firstSortedList.length === secondSortedList.length && firstSortedList.every(function (option, index) { + return option.value === secondSortedList[index].value; + }); +}; +var _isControlled = function _isControlled(selected) { + return selected !== undefined; +}; +var _isOpenControlled = function _isOpenControlled(open) { + return open !== undefined; +}; +var _showSelectedItems = function _showSelectedItems(bulk, searchTerm, withCheckbox) { + return bulk && withCheckbox && searchTerm === ''; +}; +var _isSelectAllPresent = function _isSelectAllPresent(searchTerm, bulkOptions, withSelectAll, withCheckbox) { + return withCheckbox && withSelectAll && bulkOptions === 0 && searchTerm === ''; +}; +var scrollTo = function scrollTo(element, top) { + element.scrollTo(0, top); +}; +var scrollIntoView = function scrollIntoView(menuElement, focusedElement) { + var menuRect = menuElement === null || menuElement === void 0 ? void 0 : menuElement.getBoundingClientRect(); + var focusedRect = focusedElement.getBoundingClientRect(); + var overscroll = focusedElement.offsetHeight; -var Trigger$1 = function Trigger(props) { - var inputFormat = props.inputFormat, - inputOptions = props.inputOptions, - validators = props.validators, - state = props.state, - setState = props.setState; - var init = state.init, - date$1 = state.date, - error = state.error; - var _inputOptions$placeho = inputOptions.placeholderChar, - placeholderChar = _inputOptions$placeho === void 0 ? '_' : _inputOptions$placeho; + if (focusedRect.bottom > menuRect.bottom && menuElement) { + scrollTo(menuElement, focusedElement.offsetTop - menuRect.height + overscroll); + } else if (focusedRect.top < menuRect.top && menuElement) { + scrollTo(menuElement, focusedElement.offsetTop - overscroll); + } +}; +var getSelectAll$1 = function getSelectAll(selected, optionsLength, disabledOptionsLength) { + if (selected.length) { + if (selected.length > 0 && disabledOptionsLength > 0 && selected.length === optionsLength - disabledOptionsLength) { + return { + indeterminate: true, + checked: true + }; // + } - var onChangeHandler = function onChangeHandler(_e, val) { - setState({ - open: true - }); + var indeterminate = selected.length > 0 && selected.length !== optionsLength; + var checked = selected.length > 0 && selected.length === optionsLength; + var obj = { + checked: checked, + indeterminate: indeterminate + }; + return obj; + } - if (val && !val.includes(placeholderChar)) { - var d = translateToDate(inputFormat, val, validators); - setState({ - date: d - }); - } + return { + indeterminate: false, + checked: false }; +}; +var scrollToOptionIndex = function scrollToOptionIndex(scrollIndex, listOptions) { + var _listOptions$scrollIn; - var onBlurHandler = function onBlurHandler(_e, val) { - setState({ - init: true - }); + var optionID = listOptions && ((_listOptions$scrollIn = listOptions[scrollIndex]) === null || _listOptions$scrollIn === void 0 ? void 0 : _listOptions$scrollIn.optionID); + var targetOption = document.getElementById(optionID); + targetOption && targetOption.scrollIntoView && targetOption.scrollIntoView({ + block: 'center' + }); +}; +var groupListOptions = function groupListOptions(listOptions) { + var groupList = listOptions.reduce(function (acc, option) { + var group = option.group || ''; - if (!val || val.includes(placeholderChar)) { - setState({ - date: undefined - }); + if (!acc[group]) { + acc[group] = []; } - }; - var onClearHandler = function onClearHandler() { - setState({ - init: true, - date: undefined - }); - }; + acc[group].push(option); + return acc; + }, {}); + var flattenedGroupList = Object.values(groupList).flatMap(function (item) { + return _toConsumableArray(item); + }); + return flattenedGroupList; +}; - var showError = inputOptions.error || inputOptions.required && error && init; - var errorMessage = inputOptions.caption === undefined ? 'Invalid value' : inputOptions.caption; +var TimePickerWithSearch = function TimePickerWithSearch(props) { + var open = props.open, + endTime = props.endTime, + interval = props.interval, + onChange = props.onChange, + startTime = props.startTime, + timeFormat = props.timeFormat, + showDuration = props.showDuration, + noResultMessage = props.noResultMessage, + disabledSlotList = props.disabledSlotList, + fetchTimeOptions = props.fetchTimeOptions, + error = props.error; - var inputValidator = function inputValidator(val) { - return isValid(validators, val, inputFormat); - }; + var _React$useState = React.useState(0), + _React$useState2 = _slicedToArray(_React$useState, 2), + tabIndex = _React$useState2[0], + setTabIndex = _React$useState2[1]; - var mask = date[inputFormat]; - return /*#__PURE__*/React.createElement(InputMask, _extends$3({ - icon: "events", - placeholder: inputFormat - }, inputOptions, { - error: showError, - mask: mask, - value: date$1 ? translateToString(inputFormat, date$1) // @ts-ignore - : init ? InputMask.utils.getDefaultValue(mask, placeholderChar) : '', - onChange: onChangeHandler, - onBlur: onBlurHandler, - onClear: onClearHandler, - caption: showError ? errorMessage : '', - validators: [inputValidator], - clearOnEmptyBlur: false - })); -}; + var _React$useState3 = React.useState(false), + _React$useState4 = _slicedToArray(_React$useState3, 2), + openPopover = _React$useState4[0], + setOpenPopover = _React$useState4[1]; -var _excluded$q = ["date", "open", "position", "inputFormat", "outputFormat", "inputOptions", "validators", "withInput", "disabledBefore", "disabledAfter", "onDateChange", "closeOnSelect"]; -var DatePicker = /*#__PURE__*/function (_React$Component) { - _inherits$1(DatePicker, _React$Component); + var _React$useState5 = React.useState(-1), + _React$useState6 = _slicedToArray(_React$useState5, 2), + selectedIndex = _React$useState6[0], + setSelectedIndex = _React$useState6[1]; - var _super = _createSuper$1(DatePicker); + var _React$useState7 = React.useState(0), + _React$useState8 = _slicedToArray(_React$useState7, 2), + counter = _React$useState8[0], + setCounter = _React$useState8[1]; - function DatePicker(props) { - var _this; + var dropdownOptionList = getDropdownOptionList(props); + React.useEffect(function () { + open !== undefined && setOpenPopover(open); + }, [open]); + React.useEffect(function () { + var timer; - _classCallCheck$1(this, DatePicker); + if (openPopover && selectedIndex != -1) { + setTabIndex(selectedIndex); + timer = setTimeout(function () { + scrollToOptionIndex(selectedIndex, dropdownOptionList); + }, 100); + } - _this = _super.call(this, props); + return function () { + clearTimeout(timer); + }; + }, [openPopover]); // Required to re-render dropdown forcefully whenever props changes - _defineProperty$2(_assertThisInitialized$2(_this), "getError", function (date) { - var _this$props = _this.props, - disabledBefore = _this$props.disabledBefore, - disabledAfter = _this$props.disabledAfter; + React.useEffect(function () { + setCounter(counter + 1); + }, [startTime, endTime, interval, showDuration, disabledSlotList]); - var _getDateInfo = getDateInfo(disabledBefore), - dbYear = _getDateInfo.year, - dbMonth = _getDateInfo.month, - dbDate = _getDateInfo.date; + var onChangeHandler = function onChangeHandler(props) { + var time = props; - var _getDateInfo2 = getDateInfo(disabledAfter), - daYear = _getDateInfo2.year, - daMonth = _getDateInfo2.month, - daDate = _getDateInfo2.date; - - return !date ? true : compareDate(date, 'less', dbYear, dbMonth, dbDate) || compareDate(date, 'more', daYear, daMonth, daDate); - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "onDateChangeHandler", function (d) { - _this.setState({ - init: true, - date: d - }); - - var closeOnSelect = _this.props.closeOnSelect; - if (closeOnSelect) _this.setState({ - open: false - }); - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "onToggleHandler", function (o, type) { - switch (type) { - case 'outsideClick': - _this.setState({ - open: o - }); - - break; - - case 'onClick': - _this.setState({ - open: true - }); + if (isFormat12Hour(timeFormat)) { + time = convert24To12HourFormat(time); + } - break; - } + var selectIndex = dropdownOptionList.findIndex(function (option) { + return option.value === props; }); + setSelectedIndex(selectIndex); + onChange && onChange(time); + }; - var inputFormat = props.inputFormat, - validators = props.validators; - - var _date = convertToDate(props.date, inputFormat, validators); - - var error = _this.getError(_date); - - _this.state = { - date: _date, - error: error, - init: false, - open: props.open || false - }; - return _this; - } - - _createClass$1(DatePicker, [{ - key: "componentDidUpdate", - value: function componentDidUpdate(prevProps, prevState) { - if (prevProps.date !== this.props.date) { - var _this$props2 = this.props, - inputFormat = _this$props2.inputFormat, - validators = _this$props2.validators; - var d = convertToDate(this.props.date, inputFormat, validators); - this.setState({ - date: d - }); - } - - if (prevProps.open !== this.props.open) { - this.setState({ - open: this.props.open || false - }); - } - - if (prevState.date !== this.state.date) { - var _this$props3 = this.props, - onDateChange = _this$props3.onDateChange, - outputFormat = _this$props3.outputFormat; - var _date2 = this.state.date; - var newError = this.getError(_date2); - this.setState({ - error: newError - }); - - if (onDateChange) { - if (!newError) { - var dVal = translateToString(outputFormat, _date2); - onDateChange(_date2, dVal); - } else { - onDateChange(undefined, ''); - } - } - } - } - }, { - key: "renderCalendar", - value: function renderCalendar() { - var _this$props4 = this.props; - _this$props4.date; - _this$props4.open; - _this$props4.position; - var inputFormat = _this$props4.inputFormat; - _this$props4.outputFormat; - _this$props4.inputOptions; - var validators = _this$props4.validators; - _this$props4.withInput; - var disabledBefore = _this$props4.disabledBefore, - disabledAfter = _this$props4.disabledAfter; - _this$props4.onDateChange; - _this$props4.closeOnSelect; - var rest = _objectWithoutProperties$1(_this$props4, _excluded$q); + var getOptionList = function getOptionList(searchTerm) { + var scrollIndex; + var indexValue = getScrollIndex(dropdownOptionList, searchTerm); - var date = this.state.date; - return /*#__PURE__*/React.createElement(Calendar, _extends$3({}, rest, { - date: convertToDate(date, inputFormat, validators), - disabledBefore: convertToDate(disabledBefore, inputFormat, validators), - disabledAfter: convertToDate(disabledAfter, inputFormat, validators), - onDateChange: this.onDateChangeHandler - })); + if (searchTerm === '' && selectedIndex != -1) { + scrollIndex = selectedIndex; + setTabIndex(selectedIndex); + } else { + scrollIndex = indexValue; + setTabIndex(indexValue); } - }, { - key: "render", - value: function render() { - var _this$props5 = this.props, - position = _this$props5.position, - withInput = _this$props5.withInput, - inputFormat = _this$props5.inputFormat, - inputOptions = _this$props5.inputOptions, - validators = _this$props5.validators; - var open = this.state.open; - - if (withInput) { - return /*#__PURE__*/React.createElement(Popover, { - trigger: /*#__PURE__*/React.createElement(Trigger$1, { - inputFormat: inputFormat, - inputOptions: inputOptions, - validators: validators, - state: this.state, - setState: this.setState.bind(this) - }), - triggerClass: "w-100", - position: position, - appendToBody: true, - open: open, - onToggle: this.onToggleHandler - }, this.renderCalendar()); - } - return this.renderCalendar(); - } - }]); + return Promise.resolve({ + options: indexValue === -1 ? [] : dropdownOptionList, + count: dropdownOptionList.length, + scrollToIndex: scrollIndex === 0 ? scrollIndex + 1 : scrollIndex, + searchTerm: searchTerm + }); + }; - return DatePicker; -}(React.Component); + var fetchOptionList = function fetchOptionList() { + return fetchTimeOptions ? fetchTimeOptions : getOptionList; + }; -_defineProperty$2(DatePicker, "defaultProps", _objectSpread2(_objectSpread2({}, Calendar.defaultProps), {}, { - position: 'bottom-start', - inputFormat: 'mm/dd/yyyy', - outputFormat: 'mm/dd/yyyy', - validators: [date$1], - inputOptions: {}, - closeOnSelect: true -})); + return /*#__PURE__*/React.createElement(Dropdown, { + key: counter, + maxHeight: 160, + loadersCount: 0, + withSearch: true, + open: openPopover, + tabIndex: tabIndex, + searchPlaceholder: "Search", + onChange: onChangeHandler, + fetchOptions: fetchOptionList(), + noResultMessage: noResultMessage, + staticLimit: dropdownOptionList.length, + onPopperToggle: function onPopperToggle() { + setOpenPopover(!openPopover); + }, + error: error + }); +}; +TimePickerWithSearch.defaultProps = { + timeFormat: '12-Hour', + interval: 15 +}; +TimePickerWithSearch.displayName = 'TimePickerWithSearch'; -var TimePicker = function TimePicker(props) { +var TimePickerWithInput = function TimePickerWithInput(props) { var validators = props.validators, inputOptions = props.inputOptions, inputFormat = props.inputFormat, outputFormat = props.outputFormat, onTimeChange = props.onTimeChange, - timeProp = props.time; + timeProp = props.time, + error = props.error; var _React$useState = React.useState(timeProp), _React$useState2 = _slicedToArray(_React$useState, 2), @@ -4659,14638 +4573,22237 @@ var TimePicker = function TimePicker(props) { }; var mask = time[inputFormat]; - return /*#__PURE__*/React.createElement(InputMask, _extends$3({ + return /*#__PURE__*/React.createElement(X, _extends$2({ placeholder: placeholders[inputFormat], placeholderChar: placeholderChar }, inputOptions, { mask: mask, - value: time$1 ? translateToTime(inputFormat, time$1) // @ts-ignore - : init ? InputMask.utils.getDefaultValue(mask, placeholderChar) : '', + value: time$1 ? translateToTime(inputFormat, time$1) : init ? X.utils.getDefaultValue(mask, placeholderChar) : '', validators: inputValidator, onChange: onChangeHandler, onClear: onClearHandler, - onBlur: onBlurHandler + onBlur: onBlurHandler, + error: error, + id: "parent-TimePicker" })); }; -TimePicker.defaultProps = { +TimePickerWithInput.defaultProps = { inputFormat: 'hh:mm AM', outputFormat: 'hh:mm AM', inputOptions: {}, validators: [time$1] }; -TimePicker.displayName = 'TimePicker'; +TimePickerWithInput.displayName = 'TimePickerWithInput'; -var _excluded$p = ["appearance", "size", "children", "className"]; -var sizeMap = { - s: 'h5', - m: 'h4', - l: 'h3', - xl: 'h2', - xxl: 'h1' +var TimePicker = function TimePicker(props) { + return props.withSearch ? /*#__PURE__*/React.createElement(TimePickerWithSearch, props) : /*#__PURE__*/React.createElement(TimePickerWithInput, props); }; -var Heading = function Heading(props) { - var _classNames; - - var appearance = props.appearance, - size = props.size, - children = props.children, - className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$p); +TimePicker.defaultProps = _objectSpread2(_objectSpread2({}, TimePickerWithInput.defaultProps), TimePickerWithSearch.defaultProps); +TimePicker.displayName = 'TimePicker'; - var classes = classnames((_classNames = { - Heading: true - }, _defineProperty$2(_classNames, "Heading--".concat(size), size), _defineProperty$2(_classNames, "Heading--".concat(appearance), appearance), _classNames), className); - return /*#__PURE__*/React.createElement(GenericText, _extends$3({ - "data-test": "DesignSystem-Heading" - }, rest, { - className: classes, - componentType: sizeMap[size] - }), children); -}; -Heading.displayName = 'Heading'; -Heading.defaultProps = { - appearance: 'default', - size: 'm' -}; +/* eslint-disable no-undefined,no-param-reassign,no-shadow */ -var _excluded$o = ["size", "type", "minWidth", "defaultValue", "name", "placeholder", "value", "icon", "inlineLabel", "required", "error", "info", "onChange", "onClick", "onClear", "onBlur", "onFocus", "actionIcon", "className", "autoFocus", "disabled", "readOnly"]; -var sizeMapping$1 = { - tiny: 12, - regular: 16, - large: 20 -}; /** - * ###### Input has two types: - * - [Controlled Input](https://reactjs.org/docs/forms.html#controlled-components) - * - [Uncontrolled Input](https://reactjs.org/docs/uncontrolled-components.html) + * Throttle execution of a function. Especially useful for rate limiting + * execution of handlers on events like resize and scroll. + * + * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful. + * @param {boolean} [noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds while the + * throttled-function is being called. If noTrailing is false or unspecified, callback will be executed one final time + * after the last throttled-function call. (After the throttled-function has not been called for `delay` milliseconds, + * the internal counter is reset). + * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is, + * to `callback` when the throttled-function is executed. + * @param {boolean} [debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is false (at end), + * schedule `callback` to execute after `delay` ms. + * + * @returns {Function} A new, throttled, function. */ +function throttle (delay, noTrailing, callback, debounceMode) { + /* + * After wrapper has stopped being called, this timeout ensures that + * `callback` is executed at the proper times in `throttle` and `end` + * debounce modes. + */ + var timeoutID; + var cancelled = false; // Keep track of the last time `callback` was executed. -var Input = /*#__PURE__*/React.forwardRef(function (props, forwardedRef) { - var _classNames, _classNames2, _classNames3, _classNames4; + var lastExec = 0; // Function to clear existing timeout - var _props$size = props.size, - size = _props$size === void 0 ? 'regular' : _props$size, - _props$type = props.type, - type = _props$type === void 0 ? 'text' : _props$type, - _props$minWidth = props.minWidth, - minWidth = _props$minWidth === void 0 ? type !== 'number' ? 256 : undefined : _props$minWidth, - defaultValue = props.defaultValue, - name = props.name, - placeholder = props.placeholder, - value = props.value, - icon = props.icon, - inlineLabel = props.inlineLabel, - required = props.required, - error = props.error, - info = props.info, - onChange = props.onChange, - onClick = props.onClick, - onClear = props.onClear, - onBlur = props.onBlur, - onFocus = props.onFocus, - actionIcon = props.actionIcon, - className = props.className, - autoFocus = props.autoFocus, - disabled = props.disabled, - readOnly = props.readOnly, - rest = _objectWithoutProperties$1(props, _excluded$o); + function clearExistingTimeout() { + if (timeoutID) { + clearTimeout(timeoutID); + } + } // Function to cancel next exec - var ref = React.useRef(null); - React.useImperativeHandle(forwardedRef, function () { - return ref.current; - }); - React.useEffect(function () { - var _ref$current; - - if (autoFocus) (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.focus({ - preventScroll: true - }); - }, []); - var baseProps = extractBaseProps(props); - var classes = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Input', true), _defineProperty$2(_classNames, "Input--".concat(size), size), _defineProperty$2(_classNames, 'Input--disabled', disabled || readOnly), _defineProperty$2(_classNames, 'Input--error', error), _classNames), className); - var inputClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Input-input', true), _defineProperty$2(_classNames2, "Input-input--".concat(size), size), _classNames2)); - var leftIconClass = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'Input-icon', true), _defineProperty$2(_classNames3, 'Input-icon--left', true), _defineProperty$2(_classNames3, 'Input-icon--disabled', !value), _classNames3)); - var rightIconClass = classnames((_classNames4 = {}, _defineProperty$2(_classNames4, 'Input-icon', true), _defineProperty$2(_classNames4, 'Input-icon--right', true), _classNames4)); - var trigger = /*#__PURE__*/React.createElement("div", { - className: rightIconClass - }, /*#__PURE__*/React.createElement(Icon, { - name: 'info', - size: sizeMapping$1[size] - })); - return /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-InputWrapper", - className: classes, - style: { - minWidth: minWidth - }, - onClick: function onClick() { - var _ref$current2; - return (_ref$current2 = ref.current) === null || _ref$current2 === void 0 ? void 0 : _ref$current2.focus(); - } - }, inlineLabel && /*#__PURE__*/React.createElement("div", { - className: "Input-inlineLabel" - }, /*#__PURE__*/React.createElement(Text, { - appearance: "subtle" - }, inlineLabel)), size !== 'tiny' && icon && /*#__PURE__*/React.createElement("div", { - className: leftIconClass - }, /*#__PURE__*/React.createElement(Icon, { - name: icon, - size: sizeMapping$1[size] - })), /*#__PURE__*/React.createElement("input", _extends$3({ - "data-test": "DesignSystem-Input" - }, baseProps, rest, { - ref: ref, - name: name, - type: type, - defaultValue: defaultValue, - placeholder: placeholder, - className: inputClass, - value: value, - required: required, - disabled: disabled, - readOnly: readOnly, - onChange: onChange, - onBlur: onBlur, - onClick: onClick, - onFocus: onFocus - })), !value && !disabled || value && disabled || defaultValue && disabled ? info && /*#__PURE__*/React.createElement(Tooltip, { - position: "top", - tooltip: info - }, trigger) : actionIcon ? actionIcon : onClear && value && !disabled && /*#__PURE__*/React.createElement("div", { - className: rightIconClass, - onClick: function onClick(e) { - return onClear(e); - } - }, /*#__PURE__*/React.createElement(Icon, { - name: 'close', - size: sizeMapping$1[size] - }))); -}); -Input.displayName = 'Input'; + function cancel() { + clearExistingTimeout(); + cancelled = true; + } // `noTrailing` defaults to falsy. -var _excluded$n = ["size", "defaultValue", "name", "placeholder", "icon", "prefix", "suffix", "error", "min", "max", "onChange", "onClick", "onBlur", "onFocus", "className", "autoFocus", "disabled", "readOnly", "value"]; -var sizeMapping = { - regular: 16, - large: 20 -}; -var capMin = function capMin() { - var min = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -Infinity; - var value = arguments.length > 1 ? arguments[1] : undefined; - return isNaN(min) || !min && min !== 0 || isNaN(value) || !value && value !== 0 ? value : Math.max(min, value); -}; + if (typeof noTrailing !== 'boolean') { + debounceMode = callback; + callback = noTrailing; + noTrailing = undefined; + } + /* + * The `wrapper` function encapsulates all of the throttling / debouncing + * functionality and when executed will limit the rate at which `callback` + * is executed. + */ -var capMax = function capMax() { - var max = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : +Infinity; - var value = arguments.length > 1 ? arguments[1] : undefined; - return isNaN(max) || !max && max !== 0 || isNaN(value) || !value && value !== 0 ? value : Math.min(max, value); -}; -/** - * ###### MetricInput has two types: - * - [Controlled MetricInput](https://reactjs.org/docs/forms.html#controlled-components) - * - [Uncontrolled MetricInput](https://reactjs.org/docs/uncontrolled-components.html) - */ + function wrapper() { + for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) { + arguments_[_key] = arguments[_key]; + } -var MetricInput = /*#__PURE__*/React.forwardRef(function (props, forwardedRef) { - var _classNames, _classNames2, _classNames3; + var self = this; + var elapsed = Date.now() - lastExec; - var _props$size = props.size, - size = _props$size === void 0 ? 'regular' : _props$size, - defaultValue = props.defaultValue, - name = props.name, - placeholder = props.placeholder, - icon = props.icon, - prefix = props.prefix, - suffix = props.suffix, - error = props.error, - min = props.min, - max = props.max, - onChange = props.onChange, - onClick = props.onClick, - onBlur = props.onBlur, - onFocus = props.onFocus, - className = props.className, - autoFocus = props.autoFocus, - disabled = props.disabled, - readOnly = props.readOnly, - valueProp = props.value, - rest = _objectWithoutProperties$1(props, _excluded$n); + if (cancelled) { + return; + } // Execute `callback` and update the `lastExec` timestamp. - var ref = React.useRef(null); - var isUncontrolled = valueProp === undefined; - var _React$useState = React.useState(valueProp || defaultValue), - _React$useState2 = _slicedToArray(_React$useState, 2), - value = _React$useState2[0], - setValue = _React$useState2[1]; + function exec() { + lastExec = Date.now(); + callback.apply(self, arguments_); + } + /* + * If `debounceMode` is true (at begin) this is used to clear the flag + * to allow future `callback` executions. + */ - React.useImperativeHandle(forwardedRef, function () { - return ref.current; - }); - React.useEffect(function () { - var _ref$current; - if (autoFocus) (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.focus({ - preventScroll: true - }); - }, []); - React.useEffect(function () { - if (valueProp !== undefined) { - setValue(valueProp); + function clear() { + timeoutID = undefined; } - }, [valueProp]); - var baseProps = extractBaseProps(props); - var classes = classnames((_classNames = {}, _defineProperty$2(_classNames, 'MetricInput', true), _defineProperty$2(_classNames, "MetricInput--".concat(size), size), _defineProperty$2(_classNames, 'MetricInput--disabled', disabled || readOnly), _defineProperty$2(_classNames, 'MetricInput--error', error), _classNames), className); - var inputClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'MetricInput-input', true), _defineProperty$2(_classNames2, "MetricInput-input--".concat(size), size), _classNames2)); - var iconClass = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'MetricInput-icon', true), _defineProperty$2(_classNames3, "MetricInput-icon--".concat(size), size), _classNames3)); - var getArrowClass = function getArrowClass(direction) { - var _classNames4; + if (debounceMode && !timeoutID) { + /* + * Since `wrapper` is being called for the first time and + * `debounceMode` is true (at begin), execute `callback`. + */ + exec(); + } - return classnames((_classNames4 = {}, _defineProperty$2(_classNames4, 'MetricInput-arrowIcon', true), _defineProperty$2(_classNames4, "MetricInput-arrowIcon--".concat(size), size), _defineProperty$2(_classNames4, "MetricInput-arrowIcon--".concat(direction), direction), _classNames4)); - }; + clearExistingTimeout(); - var onChangeHandler = function onChangeHandler(e) { - if (isUncontrolled) { - setValue(e.target.value); + if (debounceMode === undefined && elapsed > delay) { + /* + * In throttle mode, if `delay` time has been exceeded, execute + * `callback`. + */ + exec(); + } else if (noTrailing !== true) { + /* + * In trailing throttle mode, since `delay` time has not been + * exceeded, schedule `callback` to execute `delay` ms after most + * recent execution. + * + * If `debounceMode` is true (at begin), schedule `clear` to execute + * after `delay` ms. + * + * If `debounceMode` is false (at end), schedule `callback` to + * execute after `delay` ms. + */ + timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay); } + } - if (onChange) onChange(e); - }; - - var onArrowClick = function onArrowClick(e, direction) { - var newValue = Number(value || 0); - var isValid = direction === 'down' ? min !== undefined && newValue > min || min === undefined : max !== undefined && newValue < max || max === undefined; - if (disabled || readOnly || !isValid) return; - newValue = direction === 'down' ? newValue - 1 : newValue + 1; - newValue = capMax(max, capMin(min, newValue)); - if (isUncontrolled) setValue(newValue); + wrapper.cancel = cancel; // Return the wrapper function. - if (onChange) { - var syntheticEvent = Object.create(e, { - target: { - value: newValue - } - }); - onChange(syntheticEvent); - } - }; + return wrapper; +} - var onKeyDown = function onKeyDown(e) { - switch (e.key) { - case 'e': - case 'E': - e.preventDefault(); - return; +/* eslint-disable no-undefined */ +/** + * Debounce execution of a function. Debouncing, unlike throttling, + * guarantees that a function is only executed a single time, either at the + * very beginning of a series of calls, or at the very end. + * + * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful. + * @param {boolean} [atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds + * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call. + * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset). + * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is, + * to `callback` when the debounced-function is executed. + * + * @returns {Function} A new, debounced function. + */ - case 'ArrowDown': - e.preventDefault(); - onArrowClick(e, 'down'); - return; +function debounce$1 (delay, atBegin, callback) { + return callback === undefined ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false); +} - case 'ArrowUp': - e.preventDefault(); - onArrowClick(e, 'up'); - return; - } - }; +var _excluded$Q = ["triggerSize", "placeholder", "menu", "children", "icon", "disabled", "open", "inlineLabel", "error", "iconType"]; +var DropdownButton = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames, _classNames2; - var iconSize = size === 'regular' ? 12 : 16; - return /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-MetricInputWrapper", - className: classes, - onClick: function onClick() { - var _ref$current2; + var _props$triggerSize = props.triggerSize, + triggerSize = _props$triggerSize === void 0 ? 'regular' : _props$triggerSize, + _props$placeholder = props.placeholder, + placeholder = _props$placeholder === void 0 ? 'Select' : _props$placeholder, + _props$menu = props.menu, + menu = _props$menu === void 0 ? false : _props$menu, + children = props.children, + icon = props.icon, + disabled = props.disabled, + open = props.open, + inlineLabel = props.inlineLabel, + error = props.error, + iconType = props.iconType, + rest = _objectWithoutProperties(props, _excluded$Q); - return (_ref$current2 = ref.current) === null || _ref$current2 === void 0 ? void 0 : _ref$current2.focus(); - } - }, icon && /*#__PURE__*/React.createElement(Icon, { - "data-test": "DesignSystem-MetricInput--icon", - name: icon, - size: sizeMapping[size], - appearance: !value ? 'disabled' : 'subtle', - className: iconClass - }), prefix && /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-MetricInput--prefix", - className: size === 'regular' ? 'mr-4' : 'mr-5', - size: size, - appearance: "subtle" - }, prefix), /*#__PURE__*/React.createElement("input", _extends$3({ - "data-test": "DesignSystem-MetricInput" - }, baseProps, rest, { - type: "number", + var buttonDisabled = disabled ? 'disabled' : 'default'; + var trimmedPlaceholder = placeholder.trim(); + var value = children ? children : trimmedPlaceholder; + var iconName = !menu ? 'keyboard_arrow_down' : icon ? icon : 'more_horiz'; + var buttonClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Button', true), _defineProperty$1(_classNames, 'DropdownButton', true), _defineProperty$1(_classNames, "DropdownButton--".concat(triggerSize), triggerSize), _defineProperty$1(_classNames, "DropdownButton--".concat(triggerSize, "Square"), menu), _defineProperty$1(_classNames, 'DropdownButton--placeholder', !children && !menu), _defineProperty$1(_classNames, 'DropdownButton--icon', icon), _defineProperty$1(_classNames, 'DropdownButton--open', open), _defineProperty$1(_classNames, 'DropdownButton--error', error), _classNames)); + var textClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Text', true), _defineProperty$1(_classNames2, 'Text--regular', true), _defineProperty$1(_classNames2, 'DropdownButton-text', true), _classNames2)); + return /*#__PURE__*/React.createElement("button", _extends$2({ ref: ref, - name: name, - defaultValue: defaultValue, - placeholder: placeholder, - className: inputClass, - value: value, + type: "button", + value: children, + className: buttonClass, disabled: disabled, - readOnly: readOnly, - onChange: onChangeHandler, - onBlur: onBlur, - onClick: onClick, - onFocus: onFocus, - onKeyDown: onKeyDown - })), suffix && /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-MetricInput--suffix", - className: size === 'regular' ? 'ml-4' : 'ml-5', - size: size, - appearance: "subtle" - }, suffix), /*#__PURE__*/React.createElement("div", { - className: "MetricInput-arrowIcons", - tabIndex: 0 - }, /*#__PURE__*/React.createElement(Icon, { - className: getArrowClass('up'), - size: iconSize, - name: "keyboard_arrow_up", - onClick: function onClick(e) { - return onArrowClick(e, 'up'); - }, - "data-test": "DesignSystem-MetricInput--upIcon" - }), /*#__PURE__*/React.createElement(Icon, { - className: getArrowClass('down'), - size: iconSize, - name: "keyboard_arrow_down", - onClick: function onClick(e) { - return onArrowClick(e, 'down'); - }, - "data-test": "DesignSystem-MetricInput--downIcon" - }))); + tabIndex: 0, + "data-test": "DesignSystem-DropdownTrigger" + }, rest), !menu && /*#__PURE__*/React.createElement("div", { + className: "DropdownButton-wrapper" + }, inlineLabel && /*#__PURE__*/React.createElement(Text, { + appearance: "subtle", + className: "mr-4 white-space-nowrap" + }, "".concat(inlineLabel.trim().charAt(0).toUpperCase()).concat(inlineLabel.trim().slice(1))), icon && !inlineLabel && /*#__PURE__*/React.createElement(Icon, { + appearance: buttonDisabled, + className: "d-flex align-items-center mr-4", + name: icon, + type: iconType + }), value && /*#__PURE__*/React.createElement("span", { + className: textClass + }, value)), /*#__PURE__*/React.createElement(Icon, { + appearance: buttonDisabled, + name: iconName, + type: iconType + })); }); -MetricInput.displayName = 'MetricInput'; +DropdownButton.displayName = 'DropdownButton'; -var isEditable = function isEditable(mask, pos) { - return _typeof(mask[pos]) === 'object'; +var CheckboxOption = function CheckboxOption(props) { + var className = props.className, + selected = props.selected, + optionData = props.optionData, + onChangeHandler = props.onChangeHandler, + onUpdateActiveOption = props.onUpdateActiveOption, + dataTest = props.dataTest, + _props$id = props.id, + id = _props$id === void 0 ? '' : _props$id; + var subInfo = optionData.subInfo, + label = optionData.label, + disabled = optionData.disabled; + + var renderSubInfo = function renderSubInfo(subInfo) { + var labelAppearance = disabled ? 'disabled' : 'subtle'; + var iconAppearance = selected ? 'white' : 'disabled'; + + if (typeof subInfo === 'string') { + return /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-DropdownOption--WITH_META--Meta", + appearance: labelAppearance, + size: "small", + weight: "medium" + }, subInfo); + } + + var _subInfo$list = subInfo.list, + list = _subInfo$list === void 0 ? [] : _subInfo$list, + seperator = subInfo.seperator; + return /*#__PURE__*/React.createElement(MetaList, { + list: list, + seperator: seperator, + iconAppearance: iconAppearance, + labelAppearance: labelAppearance, + seperatorAppearance: iconAppearance, + "data-test": "DesignSystem-DropdownOption--WITH_META--MetaList" + }); + }; + + return /*#__PURE__*/React.createElement("div", { + className: className, + onMouseEnter: onUpdateActiveOption, + "data-test": dataTest, + "data-disabled": disabled + }, /*#__PURE__*/React.createElement(Checkbox, { + label: label, + disabled: disabled, + checked: selected, + onChange: onChangeHandler, + tabIndex: -1, + className: "OptionCheckbox ".concat(subInfo ? 'pb-0' : ''), + "data-test": "".concat(dataTest, "--Checkbox"), + id: id + }), subInfo && /*#__PURE__*/React.createElement("div", { + className: "pl-8 ml-3" + }, renderSubInfo(subInfo))); }; -var getDefaultValue = function getDefaultValue(mask, placeholderChar) { - var val = ''; - for (var i = 0; i < mask.length; i++) { - val += isEditable(mask, i) ? placeholderChar : mask[i]; - } +var DefaultOption = function DefaultOption(props) { + var className = props.className, + textClassName = props.textClassName, + onClickHandler = props.onClickHandler, + optionData = props.optionData, + color = props.color, + onUpdateActiveOption = props.onUpdateActiveOption, + dataTest = props.dataTest; + var label = optionData.label, + disabled = optionData.disabled; + return ( + /*#__PURE__*/ + // TODO(a11y): fix accessibility + + /* eslint-disable */ + React.createElement("div", { + className: className, + onClick: onClickHandler, + onMouseEnter: onUpdateActiveOption, + "data-test": dataTest, + "data-disabled": disabled + }, /*#__PURE__*/React.createElement("div", { + className: 'Option-label' + }, /*#__PURE__*/React.createElement(Text, { + className: textClassName, + color: color, + id: optionData.optionID + }, label))) + ); +}; - return val; +var MetaOption = function MetaOption(props) { + var className = props.className, + textClassName = props.textClassName, + onClickHandler = props.onClickHandler, + optionData = props.optionData, + onUpdateActiveOption = props.onUpdateActiveOption, + renderSubInfo = props.renderSubInfo, + color = props.color, + dataTest = props.dataTest; + var subInfo = optionData.subInfo, + label = optionData.label, + disabled = optionData.disabled; + return ( + /*#__PURE__*/ + // TODO(a11y): fix accessibility + + /* eslint-disable */ + React.createElement("div", { + className: className, + onClick: onClickHandler, + onMouseEnter: onUpdateActiveOption, + "data-test": dataTest, + "data-disabled": disabled + }, /*#__PURE__*/React.createElement("div", { + className: 'Option-label' + }, /*#__PURE__*/React.createElement(Text, { + className: textClassName, + color: color + }, label), subInfo && renderSubInfo(subInfo))) + ); }; -var _excluded$m = ["mask", "value", "placeholderChar", "validators", "clearOnEmptyBlur", "defaultValue", "mask", "error", "caption", "required", "onChange", "onBlur", "onFocus", "onClear", "className"]; +var IconOption = function IconOption(props) { + var _classNames; -/** - * It works as Uncontrolled Input - * - * **Updated value can be passed** - */ -var InputMask = /*#__PURE__*/React.forwardRef(function (props, forwardRef) { - props.mask; - var valueProp = props.value, - _props$placeholderCha = props.placeholderChar, - placeholderChar = _props$placeholderCha === void 0 ? '_' : _props$placeholderCha, - _props$validators = props.validators, - validators = _props$validators === void 0 ? [] : _props$validators, - _props$clearOnEmptyBl = props.clearOnEmptyBlur, - clearOnEmptyBlur = _props$clearOnEmptyBl === void 0 ? true : _props$clearOnEmptyBl, - defaultValue = props.defaultValue, - mask = props.mask, - error = props.error, - caption = props.caption, - required = props.required, - onChange = props.onChange, - onBlur = props.onBlur, - onFocus = props.onFocus, - onClear = props.onClear, - className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$m); + var className = props.className, + textClassName = props.textClassName, + onClickHandler = props.onClickHandler, + optionData = props.optionData, + onUpdateActiveOption = props.onUpdateActiveOption, + color = props.color, + dataTest = props.dataTest; + var label = optionData.label, + icon = optionData.icon, + disabled = optionData.disabled, + iconType = optionData.iconType; + var OptionClass = classnames((_classNames = {}, _defineProperty$1(_classNames, "".concat(className), true), _defineProperty$1(_classNames, 'Option--icon', icon), _classNames)); + return ( + /*#__PURE__*/ + // TODO(a11y): fix accessibility + + /* eslint-disable */ + React.createElement("div", { + className: OptionClass, + onClick: onClickHandler, + onMouseEnter: onUpdateActiveOption, + "data-test": dataTest, + "data-disabled": disabled + }, icon && /*#__PURE__*/React.createElement(Icon, { + className: "Option-icon mr-4", + "data-test": "".concat(dataTest, "--Icon"), + name: icon, + type: iconType + }), /*#__PURE__*/React.createElement("div", { + className: 'Option-label' + }, /*#__PURE__*/React.createElement(Text, { + className: textClassName, + color: color + }, label))) + ); +}; - var getNewCursorPosition = function getNewCursorPosition(type, position) { - if (type === 'right') { - for (var i = position; i < mask.length; i++) { - if (isEditable(i)) return i; - } +var IconWithMetaOption = function IconWithMetaOption(props) { + var _classNames; - return mask.length; - } + var className = props.className, + textClassName = props.textClassName, + renderSubInfo = props.renderSubInfo, + onClickHandler = props.onClickHandler, + optionData = props.optionData, + onUpdateActiveOption = props.onUpdateActiveOption, + appearance = props.appearance, + color = props.color, + dataTest = props.dataTest; + var subInfo = optionData.subInfo, + label = optionData.label, + icon = optionData.icon, + disabled = optionData.disabled; + var OptionClass = classnames((_classNames = {}, _defineProperty$1(_classNames, "".concat(className), true), _defineProperty$1(_classNames, 'Option--icon', icon), _classNames)); + return ( + /*#__PURE__*/ + // TODO(a11y): fix accessibility + + /* eslint-disable */ + React.createElement("div", { + className: OptionClass, + onClick: onClickHandler, + onMouseEnter: onUpdateActiveOption, + "data-test": dataTest, + "data-disabled": disabled + }, icon && /*#__PURE__*/React.createElement(Icon, { + "data-test": "".concat(dataTest, "--Icon"), + className: "Option-icon mr-4", + name: icon, + appearance: appearance + }), /*#__PURE__*/React.createElement("div", { + className: 'Option-label' + }, /*#__PURE__*/React.createElement(Text, { + className: textClassName, + color: color + }, label), subInfo && renderSubInfo(subInfo))) + ); +}; - if (type === 'left') { - for (var _i = position; _i >= 0; _i--) { - if (isEditable(_i - 1)) return _i; - } +var _OptionTypeMapping; +var OptionTypeMapping = (_OptionTypeMapping = {}, _defineProperty$1(_OptionTypeMapping, 'DEFAULT', DefaultOption), _defineProperty$1(_OptionTypeMapping, 'WITH_ICON', IconOption), _defineProperty$1(_OptionTypeMapping, 'WITH_META', MetaOption), _defineProperty$1(_OptionTypeMapping, 'WITH_CHECKBOX', CheckboxOption), _defineProperty$1(_OptionTypeMapping, 'ICON_WITH_META', IconWithMetaOption), _OptionTypeMapping); - return 0; - } +var Option = function Option(props) { + var _classNames, _classNames2, _classNames3, _classNames4; - return position; - }; + var optionData = props.optionData, + selected = props.selected, + onClick = props.onClick, + updateActiveOption = props.updateActiveOption, + onChange = props.onChange, + active = props.active, + index = props.index, + checkboxes = props.checkboxes, + menu = props.menu, + _props$id = props.id, + id = _props$id === void 0 ? '' : _props$id; - var getDefaultSelection = function getDefaultSelection() { - var pos = getNewCursorPosition('right', 0); - return { - start: pos, - end: pos - }; - }; + var _ref = optionData.optionType ? optionData : props, + _ref$optionType = _ref.optionType, + optionType = _ref$optionType === void 0 ? 'DEFAULT' : _ref$optionType; - var getPlaceholderValue = function getPlaceholderValue() { - var start = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0; - var end = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : mask.length - 1; - return getDefaultValue(mask, placeholderChar).slice(start, end + 1); - }; + var disabled = optionData.disabled; + var color = disabled ? 'inverse-lightest' : selected && !menu ? 'primary-dark' : 'inverse'; + var appearance = disabled ? 'disabled' : selected && !menu ? 'primary_dark' : 'default'; + var type = checkboxes ? 'WITH_CHECKBOX' : optionType; + var component = OptionTypeMapping[type]; + var OptionClassName = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Option', true), _defineProperty$1(_classNames, 'Option--active', active), _defineProperty$1(_classNames, 'Option--selected', selected && !menu), _defineProperty$1(_classNames, 'Option--disabled', disabled), _defineProperty$1(_classNames, 'OptionWrapper', true), _defineProperty$1(_classNames, "color-".concat(color), true), _classNames)); + var CheckboxClassName = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Option-checkbox', true), _defineProperty$1(_classNames2, 'Option-checkbox--active', active), _defineProperty$1(_classNames2, 'OptionWrapper', true), _classNames2)); + var textClassName = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Option-text', true), _defineProperty$1(_classNames3, 'Option-text--wrap', !props.truncateOption), _classNames3)); + var customOptionClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'OptionWrapper', true), _defineProperty$1(_classNames4, 'OptionWrapper--disabled', disabled), _classNames4)); - var getSelectionLength = function getSelectionLength(val) { - return Math.abs(val.end - val.start); + var onUpdateActiveOption = function onUpdateActiveOption() { + if (disabled) return; + if (updateActiveOption) updateActiveOption(index); }; - var isEditable = function isEditable(pos) { - return _typeof(mask[pos]) === 'object'; + var onClickHandler = function onClickHandler(e) { + e.stopPropagation(); + if (disabled) return; + if (onClick) onClick(); }; - var deferId = React.useRef(); - var selectionRef = React.useRef(0); - - var _React$useState = React.useState(defaultValue || valueProp || ''), - _React$useState2 = _slicedToArray(_React$useState, 2), - value = _React$useState2[0], - setValue = _React$useState2[1]; + var onChangeHandler = function onChangeHandler(e) { + e.stopPropagation(); + if (disabled) return; + if (onChange) onChange(e); + }; - var _React$useState3 = React.useState(getDefaultSelection()), - _React$useState4 = _slicedToArray(_React$useState3, 2), - selection = _React$useState4[0], - setSelection = _React$useState4[1]; - - var ref = React.useRef(null); - React.useImperativeHandle(forwardRef, function () { - return ref.current; - }); - React.useEffect(function () { - setValue(valueProp || ''); - }, [valueProp]); - - var setCursorPosition = function setCursorPosition(val) { - return setSelectionPos({ - start: val, - end: val - }); - }; + if (props.optionRenderer) { + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-DropdownOption--Custom", + className: customOptionClass, + "data-disabled": disabled, + onMouseEnter: onUpdateActiveOption + }, !checkboxes && { + onClick: onClick + }), props.optionRenderer({ + optionData: optionData, + selected: selected, + onChange: onChange, + active: active, + index: index + })); + } - var getCurrSelection = function getCurrSelection() { - return { - start: ref.current.selectionStart || 0, - end: ref.current.selectionEnd || 0 - }; - }; + var renderSubInfo = function renderSubInfo(subInfo) { + var labelAppearance = disabled ? 'disabled' : selected && !menu ? 'white' : 'subtle'; + var subInfoColor = disabled ? 'inverse-lightest' : selected && !menu ? 'primary-dark' : 'inverse-lighter'; + var iconAppearance = selected ? 'white' : 'disabled'; - var setSelectionPos = function setSelectionPos(pos) { - if (ref.current) { - var el = ref.current; - var start = Math.min(pos.start, pos.end); - var end = Math.max(pos.start, pos.end); - el.setSelectionRange(start, end); + if (typeof subInfo === 'string') { + return /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-DropdownOption--WITH_META--Meta", + color: subInfoColor, + size: "small", + weight: "medium", + className: "Option-subInfo" + }, subInfo); } - }; - var updateSelection = function updateSelection() { - setSelection(getCurrSelection()); - deferId.current = window.requestAnimationFrame(updateSelection); + var _subInfo$list = subInfo.list, + list = _subInfo$list === void 0 ? [] : _subInfo$list, + seperator = subInfo.seperator; + return /*#__PURE__*/React.createElement(MetaList, { + list: list, + seperator: seperator, + iconAppearance: iconAppearance, + labelAppearance: labelAppearance, + seperatorAppearance: iconAppearance, + "data-test": "DesignSystem-DropdownOption--WITH_META--MetaList" + }); }; - var insertAtIndex = function insertAtIndex(currValue, index) { - var iterator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0; - var newValue = ''; - var newIndex = index + 1; - var newIterator = iterator; - - if (index >= mask.length) { - return newValue; - } - - if (iterator >= currValue.length) { - selectionRef.current = index; - return newValue; - } - - var m = mask[index]; - - if (isEditable(index)) { - if (currValue[iterator].match(m)) { - newValue += currValue[iterator]; - } else { - newValue += placeholderChar; - } + return component({ + selected: selected, + index: index, + renderSubInfo: renderSubInfo, + optionData: optionData, + textClassName: textClassName, + appearance: appearance, + color: color, + onClickHandler: onClickHandler, + onChangeHandler: onChangeHandler, + onUpdateActiveOption: onUpdateActiveOption, + dataTest: "DesignSystem-DropdownOption--".concat(type), + className: checkboxes ? CheckboxClassName : OptionClassName, + id: id + }); +}; - newIterator++; - } else { - newValue += m; - } +var PlaceholderParagraph = function PlaceholderParagraph(props) { + var _classNames2; - newValue += insertAtIndex(currValue, newIndex, newIterator); - return newValue; - }; + var length = props.length, + size = props.size, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classnames(_defineProperty$1({ + 'Placeholder--animation': true, + PlaceholderParagraph: true + }, "PlaceholderParagraph--".concat(size), size)); + var wrapperClass = classnames((_classNames2 = { + 'PlaceholderParagraph-wrapper': true + }, _defineProperty$1(_classNames2, "PlaceholderParagraph-wrapper--length-".concat(length), length), _defineProperty$1(_classNames2, "PlaceholderParagraph-wrapper--size-".concat(size), size), _classNames2), className); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: wrapperClass + }), /*#__PURE__*/React.createElement("span", { + className: classes + })); +}; +PlaceholderParagraph.displayName = 'PlaceholderParagraph'; +PlaceholderParagraph.defaultProps = { + length: 'medium' +}; - var onChangeHandler = function onChangeHandler(e) { - var inputVal = e.currentTarget.value; - var currSelection = getCurrSelection(); - var start = Math.min(selection.start, currSelection.start); - var end = currSelection.end; - var cursorPosition = start; - var enteredVal = ''; - var updatedVal = ''; - var removedLength = 0; - var insertedStringLength = 0; - enteredVal = inputVal.slice(start, end); - updatedVal = insertAtIndex(enteredVal, start); - insertedStringLength = updatedVal.length; +var PlaceholderImage = function PlaceholderImage(props) { + var _classNames; - if (currSelection.end > selection.end) { - removedLength = insertedStringLength ? getSelectionLength(selection) : 0; - } else if (inputVal.length < value.length) { - removedLength = value.length - inputVal.length; - } + var _props$size = props.size, + size = _props$size === void 0 ? 'small' : _props$size, + round = props.round, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classnames((_classNames = { + PlaceholderImage: true, + 'Placeholder--animation': true + }, _defineProperty$1(_classNames, 'PlaceholderImage--round', round), _defineProperty$1(_classNames, "PlaceholderImage--".concat(size), size), _classNames), className); + return /*#__PURE__*/React.createElement("span", _extends$2({}, baseProps, { + className: classes + })); +}; +PlaceholderImage.displayName = 'PlaceholderImage'; +PlaceholderImage.defaultProps = { + size: 'small' +}; - cursorPosition += insertedStringLength; - var maskedVal = value.split(''); +var Placeholder = function Placeholder(props) { + var imageSize = props.imageSize, + withImage = props.withImage, + round = props.round, + children = props.children, + className = props.className; + var baseProps = extractBaseProps(props); + var paragraphClasses = classnames(_defineProperty$1({ + 'Placeholder-paragraph': true + }, 'Placeholder-paragraph--withImage', withImage)); + var classes = classnames(_defineProperty$1({}, 'Placeholder', true), className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Placeholder" + }, baseProps, { + className: classes + }), withImage && /*#__PURE__*/React.createElement(PlaceholderImage, { + round: round, + size: imageSize, + "data-test": "DesignSystem-Placeholder--Image" + }), children && /*#__PURE__*/React.createElement("div", { + className: paragraphClasses, + "data-test": "DesignSystem-Placeholder--Paragraph" + }, children)); +}; +Placeholder.displayName = 'Placeholder'; +Placeholder.defaultProps = { + withImage: true, + imageSize: 'small' +}; - for (var i = 0; i < insertedStringLength; i++) { - maskedVal[start + i] = updatedVal[i]; - } +var Loading = function Loading(props) { + var loadingType = props.loadingType, + optionIndex = props.optionIndex; + var placeholderSizes = ['medium', 'large']; + var size = placeholderSizes[(optionIndex + 2) % 2]; - for (var _i2 = 0; _i2 < removedLength; _i2++) { - var index = start + insertedStringLength + _i2; - maskedVal[index] = getPlaceholderValue(index, index); - } + switch (loadingType) { + case 'DEFAULT': + return /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: size, + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + }); - var newCursorPosition = getNewCursorPosition(removedLength ? 'left' : 'right', cursorPosition); + case 'WITH_ICON': + return /*#__PURE__*/React.createElement(Placeholder, { + withImage: true, + round: true, + "data-test": "DesignSystem-Dropdown--Placeholder" + }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "large" + })); - if (removedLength === 1 && !updatedVal.length && !isEditable(cursorPosition) && newCursorPosition > 0) { - cursorPosition = newCursorPosition; - cursorPosition--; - maskedVal[cursorPosition] = placeholderChar; - } else if (removedLength !== 1) { - cursorPosition = newCursorPosition; - } + case 'WITH_META': + return /*#__PURE__*/React.createElement(Placeholder, { + withImage: false, + "data-test": "DesignSystem-Dropdown--Placeholder" + }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "large", + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + }), /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "medium", + size: "xxs", + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + })); - var newValue = maskedVal.slice(0, mask.length).join(''); - window.requestAnimationFrame(function () { - return setCursorPosition(cursorPosition); - }); + case 'WITH_CHECKBOX': + return /*#__PURE__*/React.createElement(Placeholder, { + withImage: true, + "data-test": "DesignSystem-Dropdown--Placeholder" + }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "large" + })); - if (isValid(validators, newValue)) { - setValue(newValue); - if (onChange) onChange(e, newValue); - } - }; + case 'ICON_WITH_META': + return /*#__PURE__*/React.createElement(Placeholder, { + withImage: true, + round: true, + imageSize: 'medium', + "data-test": "DesignSystem-Dropdown--Placeholder" + }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "large", + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + }), /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "medium", + size: "xxs", + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + })); + } - var onBlurHandler = function onBlurHandler(e) { - var inputVal = e.currentTarget.value; + return null; +}; - if (clearOnEmptyBlur) { - if (inputVal === getPlaceholderValue()) { - setValue(''); - inputVal = ''; - } +var errorTitle = { + FAILED_TO_FETCH: 'Failed to fetch data', + NO_RECORDS_FOUND: 'No results found', + DEFAULT: 'No record available' +}; +var errorDescription = { + FAILED_TO_FETCH: "We couldn't load the data, try reloading.", + NO_RECORDS_FOUND: 'Try modifying your search to find what you are looking for.', + DEFAULT: 'We have nothing to show you at the moment.' +}; +var ErrorTemplate = function ErrorTemplate(_ref) { + var dropdownStyle = _ref.dropdownStyle, + errorType = _ref.errorType, + updateOptions = _ref.updateOptions; + return /*#__PURE__*/React.createElement("div", { + className: "Dropdown-wrapper px-7 d-flex", + style: dropdownStyle, + "data-test": "DesignSystem-Dropdown--wrapper" + }, /*#__PURE__*/React.createElement("div", { + className: "d-flex flex-column justify-content-center align-items-center w-100", + "data-test": "DesignSystem-Dropdown--errorWrapper" + }, /*#__PURE__*/React.createElement(Text, { + className: "text-align-center mb-3", + weight: "strong" + }, errorTitle[errorType]), /*#__PURE__*/React.createElement(Text, { + className: "text-align-center mb-6", + weight: "medium", + size: "small", + appearance: "subtle" + }, errorDescription[errorType]), errorType === 'FAILED_TO_FETCH' && /*#__PURE__*/React.createElement(Button, { + size: "tiny", + largeIcon: true, + "aria-label": "reload", + icon: "refresh", + iconAlign: "left", + onClick: function onClick() { + return updateOptions(); } + }, "Reload"))); +}; - if (onBlur) onBlur(e, inputVal); - if (deferId.current) window.cancelAnimationFrame(deferId.current); - }; - - var onClearHandler = function onClearHandler(e) { - // setValue(''); - // window.requestAnimationFrame(() => ref.current!.blur()); - setValue(getPlaceholderValue()); - window.requestAnimationFrame(function () { - return setCursorPosition(getDefaultSelection().start); - }); - if (onClear) onClear(e); - }; +var alignmentMapping = { + right: 'bottom-start', + left: 'bottom-end' +}; - var onFocusHandler = function onFocusHandler(e) { - deferId.current = window.requestAnimationFrame(updateSelection); +var DropdownList = function DropdownList(props) { + var _classNames3, _classNames4; - if (!value) { - setValue(getPlaceholderValue()); - window.requestAnimationFrame(function () { - return setSelectionPos(getDefaultSelection()); - }); - } + var _props$listOptions = props.listOptions, + listOptions = _props$listOptions === void 0 ? [] : _props$listOptions, + inputRef = props.inputRef, + _props$align = props.align, + align = _props$align === void 0 ? 'right' : _props$align, + _props$optionType = props.optionType, + optionType = _props$optionType === void 0 ? 'DEFAULT' : _props$optionType, + _props$applyButtonLab = props.applyButtonLabel, + applyButtonLabel = _props$applyButtonLab === void 0 ? 'Apply' : _props$applyButtonLab, + _props$cancelButtonLa = props.cancelButtonLabel, + cancelButtonLabel = _props$cancelButtonLa === void 0 ? 'Cancel' : _props$cancelButtonLa, + _props$truncateOption = props.truncateOption, + truncateOption = _props$truncateOption === void 0 ? true : _props$truncateOption, + _props$withSelectAll = props.withSelectAll, + withSelectAll = _props$withSelectAll === void 0 ? true : _props$withSelectAll, + _props$maxHeight = props.maxHeight, + maxHeight = _props$maxHeight === void 0 ? 200 : _props$maxHeight, + customTrigger = props.customTrigger, + selected = props.selected, + tempSelected = props.tempSelected, + previousSelected = props.previousSelected, + remainingOptions = props.remainingOptions, + firstEnabledOption = props.firstEnabledOption, + dropdownOpen = props.dropdownOpen, + menu = props.menu, + searchTerm = props.searchTerm, + showApplyButton = props.showApplyButton, + withCheckbox = props.withCheckbox, + withSearch = props.withSearch, + popoverOptions = props.popoverOptions, + onSearchChange = props.onSearchChange, + optionRenderer = props.optionRenderer, + applyOptions = props.applyOptions, + cancelOptions = props.cancelOptions, + toggleDropdown = props.toggleDropdown, + className = props.className, + _props$searchPlacehol = props.searchPlaceholder, + searchPlaceholder = _props$searchPlacehol === void 0 ? 'Search..' : _props$searchPlacehol, + scrollIndex = props.scrollIndex, + updateOptions = props.updateOptions, + noResultMessage = props.noResultMessage, + errorType = props.errorType, + loadingOptions = props.loadingOptions; + var baseProps = extractBaseProps(props); + var dropdownRef = /*#__PURE__*/React.createRef(); + var triggerRef = /*#__PURE__*/React.createRef(); + var dropdownTriggerRef = /*#__PURE__*/React.createRef(); + var dropdownCancelButtonRef = /*#__PURE__*/React.createRef(); + var dropdownApplyButtonRef = /*#__PURE__*/React.createRef(); + + var _React$useState = React.useState(), + _React$useState2 = _slicedToArray(_React$useState, 2), + popoverStyle = _React$useState2[0], + setPopoverStyle = _React$useState2[1]; - if (onFocus) onFocus(e); + var _React$useState3 = React.useState(firstEnabledOption), + _React$useState4 = _slicedToArray(_React$useState3, 2), + cursor = _React$useState4[0], + setCursor = _React$useState4[1]; + + var _React$useState5 = React.useState(), + _React$useState6 = _slicedToArray(_React$useState5, 2), + minHeight = _React$useState6[0], + setMinHeight = _React$useState6[1]; + + var getMinHeight = function getMinHeight() { + var dropdownWrapper = document.querySelector('.Dropdown-wrapper'); + var minHeight = dropdownWrapper === null || dropdownWrapper === void 0 ? void 0 : dropdownWrapper.offsetHeight; + minHeight && setMinHeight(minHeight); }; - var classes = classnames({ - 'd-flex flex-column flex-grow-1': true - }, className); - return /*#__PURE__*/React.createElement("div", { - className: classes - }, /*#__PURE__*/React.createElement(Input, _extends$3({}, rest, { - value: value, - error: error, - required: required, - onFocus: onFocusHandler, - onChange: onChangeHandler, - onClear: onClearHandler, - onBlur: onBlurHandler, - autoComplete: 'off', - ref: ref - })), /*#__PURE__*/React.createElement(Caption, { - error: error, - withInput: true, - hide: !caption - }, caption)); -}); -InputMask.displayName = 'InputMask'; // @ts-ignore + var isDropdownListBlank = listOptions.length === 0 && !loadingOptions && selected.length <= 0; + React.useEffect(function () { + var timer; -InputMask.utils = { - getDefaultValue: getDefaultValue -}; + if (dropdownOpen) { + var _triggerRef$current; -var _excluded$l = ["required", "optional", "withInput", "disabled", "children", "className"]; + var width = props.width, + minWidth = props.minWidth, + maxWidth = props.maxWidth; + var popperWidth = (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.clientWidth; + var popperMinWidth = showApplyButton ? 176 : menu ? 128 : popperWidth; + var popperWrapperStyle = { + width: width ? width : popperWidth, + minWidth: minWidth ? minWidth : popperMinWidth, + maxWidth: maxWidth ? maxWidth : '100%' + }; + requestAnimationFrame(getMinHeight); + setPopoverStyle(popperWrapperStyle); // scrolls to current time -/** - * *NOTE: Extends props with HTMLProps* - */ -var Label = function Label(props) { - var _classNames; + if (scrollIndex && tempSelected.length === 0) { + timer = setTimeout(function () { + scrollToOptionIndex(scrollIndex, listOptions); + }, 100); + } + } - var required = props.required, - optional = props.optional, - withInput = props.withInput, + return function () { + clearTimeout(timer); + }; + }, [dropdownOpen]); + React.useEffect(function () { + if (firstEnabledOption !== cursor) setCursor(firstEnabledOption); + }, [firstEnabledOption]); + var _props$triggerSize = props.triggerSize, + triggerSize = _props$triggerSize === void 0 ? 'regular' : _props$triggerSize, + _props$placeholder = props.placeholder, + placeholder = _props$placeholder === void 0 ? 'Select' : _props$placeholder, + icon = props.icon, + error = props.error, disabled = props.disabled, - children = props.children, - className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$l); - - var baseProps = extractBaseProps(props); - var LabelClass = classnames((_classNames = { - Label: true - }, _defineProperty$2(_classNames, 'Label--withInput', withInput), _defineProperty$2(_classNames, 'Label--optional', optional), _classNames), className); - var classes = classnames({ - 'Label-text': true, - 'Label--disabled': disabled + inlineLabel = props.inlineLabel, + triggerLabel = props.triggerLabel, + iconType = props.iconType; + var CustomTrigger = customTrigger ? customTrigger(triggerLabel ? triggerLabel : placeholder) : /*#__PURE__*/React.createElement(React.Fragment, null); + var NewCustomTrigger = /*#__PURE__*/React.cloneElement(CustomTrigger, { + tabIndex: 0, + ref: dropdownTriggerRef }); + var trigger = customTrigger ? NewCustomTrigger : /*#__PURE__*/React.createElement(DropdownButton, { + placeholder: placeholder, + triggerSize: triggerSize, + open: dropdownOpen, + icon: icon, + disabled: disabled, + inlineLabel: inlineLabel, + menu: menu, + error: error, + ref: dropdownTriggerRef, + iconType: iconType + }, triggerLabel); + var dropdownStyle = { + maxHeight: maxHeight, + overflowY: 'auto', + overflowX: 'hidden', + minHeight: minHeight + }; + var loaderStyle = { + maxHeight: minHeight ? minHeight : maxHeight, + overflowY: 'auto', + overflowX: 'hidden', + minHeight: minHeight + }; - var renderInfo = function renderInfo() { - var isRequired = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; - var isOptional = arguments.length > 1 ? arguments[1] : undefined; + var defaultErrorTemplate = function defaultErrorTemplate() { + return /*#__PURE__*/React.createElement(ErrorTemplate, { + dropdownStyle: _objectSpread2(_objectSpread2({}, dropdownStyle), {}, { + minHeight: maxHeight + }), + updateOptions: updateOptions, + errorType: errorType + }); + }; - if (isRequired) { - return /*#__PURE__*/React.createElement("span", { - className: "Label-requiredIndicator", - "data-test": "DesignSystem-Label--RequiredIndicator" - }); - } + var getDropdownSectionClass = function getDropdownSectionClass(showClearButton) { + var _classNames; - if (isOptional) { - return /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-Label--OptionalText", - appearance: "subtle", - className: "Label-optionalText" - }, "(optional)"); - } + return classnames((_classNames = {}, _defineProperty$1(_classNames, 'Dropdown-section', true), _defineProperty$1(_classNames, 'Dropdown-section--withClear', showClearButton), _classNames)); + }; - return null; + var dropdownClass = classnames(_defineProperty$1({}, 'Dropdown', true), className); + var dropdownWrapperClass = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Dropdown-wrapper', true), _defineProperty$1(_classNames3, 'Dropdown-wrapper--wrap', !truncateOption), _classNames3)); + var SelectAllClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'Option-checkbox--active', cursor === 0), _defineProperty$1(_classNames4, 'Option-checkboxWrapper', true), _defineProperty$1(_classNames4, 'Option-checkbox', true), _defineProperty$1(_classNames4, 'OptionWrapper', true), _classNames4)); + + var onToggleDropdown = function onToggleDropdown(open, type) { + var _dropdownTriggerRef$c; + + toggleDropdown(open, type); + if (!disabled) (_dropdownTriggerRef$c = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c === void 0 ? void 0 : _dropdownTriggerRef$c.focus(); + setCursor(firstEnabledOption); }; - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-Label" - }, baseProps, { - className: LabelClass - }), /*#__PURE__*/React.createElement(GenericText, _extends$3({ - "data-test": "DesignSystem-Label--Text", - className: classes, - componentType: "label" - }, rest), children), renderInfo(required, optional)); -}; -Label.displayName = 'Label'; + var onCancelOptions = function onCancelOptions() { + var _dropdownTriggerRef$c2; -var Caption = function Caption(props) { - var _classNames; + cancelOptions(); + (_dropdownTriggerRef$c2 = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c2 === void 0 ? void 0 : _dropdownTriggerRef$c2.focus(); + }; - var error = props.error, - hide = props.hide, - withInput = props.withInput, - children = props.children, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classnames((_classNames = { - Caption: true - }, _defineProperty$2(_classNames, 'Caption--hidden', hide), _defineProperty$2(_classNames, 'Caption--withInput', withInput), _classNames), className); - var errorIconClass = classnames(_defineProperty$2({}, 'Caption-icon', true)); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: classes - }), error && /*#__PURE__*/React.createElement("div", { - className: errorIconClass - }, /*#__PURE__*/React.createElement(Icon, { - size: 14, - name: 'error', - appearance: 'alert' - })), /*#__PURE__*/React.createElement(Text, { - appearance: error ? 'destructive' : 'subtle', - size: "small", - weight: "medium" - }, "".concat(children))); -}; -Caption.displayName = 'Caption'; + var onApplyOptions = function onApplyOptions() { + var _dropdownTriggerRef$c3; -var Legend = function Legend(props) { - var iconAppearance = props.iconAppearance, - iconSize = props.iconSize, - labelAppearance = props.labelAppearance, - children = props.children, - labelWeight = props.labelWeight, - _onMouseEnter = props.onMouseEnter, - _onMouseLeave = props.onMouseLeave, - _onClick = props.onClick, - className = props.className; - var baseProps = extractBaseProps(props); - var legendClass = classnames(_defineProperty$2({}, 'Legend', true), className); - var styles = { - background: "var(--".concat(iconAppearance, ")"), - height: "".concat(iconSize, "px"), - width: "".concat(iconSize, "px") + applyOptions(); + (_dropdownTriggerRef$c3 = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c3 === void 0 ? void 0 : _dropdownTriggerRef$c3.focus(); }; - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: legendClass, - onClick: function onClick(e) { - return _onClick && _onClick(e); - }, - onMouseEnter: function onMouseEnter(e) { - return _onMouseEnter && _onMouseEnter(e); - }, - onMouseLeave: function onMouseLeave(e) { - return _onMouseLeave && _onMouseLeave(e); - } - }), /*#__PURE__*/React.createElement("span", { - className: "Legend-icon", - style: styles - }), /*#__PURE__*/React.createElement(Text, { - appearance: labelAppearance, - weight: labelWeight - }, children)); -}; -Legend.displayName = 'Legend'; -Legend.defaultProps = { - iconAppearance: 'inverse', - iconSize: 16 -}; -var Editable = function Editable(props) { - var className = props.className, - onChange = props.onChange, - editing = props.editing, - children = props.children; - var baseProps = extractBaseProps(props); - var EditableClass = classnames(_defineProperty$2({}, 'Editable', true), className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-Editable" - }, baseProps, { - className: EditableClass - }), /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-EditableWrapper", - onClick: function onClick() { - return onChange('edit'); - }, - onMouseEnter: function onMouseEnter() { - return !editing && onChange('hover'); - }, - onMouseLeave: function onMouseLeave() { - return !editing && onChange('default'); - } - }, children)); -}; -Editable.displayName = 'Editable'; - -var _excluded$k = ["onChange", "onClose"]; -var EditableDropdown = function EditableDropdown(props) { - var _classNames2; - - var placeholder = props.placeholder, - dropdownOptions = props.dropdownOptions, - className = props.className, - customTriggerRenderer = props.customTriggerRenderer; - - var onDropdownChange = dropdownOptions.onChange, - onDropdownClose = dropdownOptions.onClose, - rest = _objectWithoutProperties$1(dropdownOptions, _excluded$k); - - var _React$useState = React.useState(placeholder), - _React$useState2 = _slicedToArray(_React$useState, 2), - label = _React$useState2[0], - setLabel = _React$useState2[1]; + var optionClickHandler = function optionClickHandler(item) { + var _dropdownTriggerRef$c4; - var _React$useState3 = React.useState(false), - _React$useState4 = _slicedToArray(_React$useState3, 2), - editing = _React$useState4[0], - setEditing = _React$useState4[1]; + props.onOptionSelect(item); + (_dropdownTriggerRef$c4 = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c4 === void 0 ? void 0 : _dropdownTriggerRef$c4.focus(); + }; - var _React$useState5 = React.useState(false), - _React$useState6 = _slicedToArray(_React$useState5, 2), - showComponent = _React$useState6[0], - setShowComponent = _React$useState6[1]; + var searchClearHandler = function searchClearHandler() { + setCursor(firstEnabledOption); + if (onSearchChange && searchTerm) onSearchChange(''); + }; - var CompClass = classnames(_defineProperty$2({}, 'EditableDropdown', true), className); - var DefaultCompClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'EditableDropdown-default', true), _defineProperty$2(_classNames2, 'd-none', showComponent), _classNames2)); - var EditableDropdownClass = classnames(_defineProperty$2({}, 'd-none', !showComponent)); - var baseProps = extractBaseProps(props); + var searchHandler = function searchHandler(event) { + setCursor(firstEnabledOption); + if (onSearchChange) onSearchChange(event.target.value); + }; - var getLabel = function getLabel(updatedLabel) { - setLabel(updatedLabel); + var updateActiveOption = function updateActiveOption(index, parentCheckbox) { + var updatedIndex = withCheckbox && withSelectAll && !props.async && !parentCheckbox ? index + 1 : index; + setCursor(updatedIndex); }; - var onChangeHandler = function onChangeHandler(eventType) { - switch (eventType) { - case 'edit': - setEditing(true); + var renderFooter = function renderFooter() { + var _props$footerLabel = props.footerLabel, + footerLabel = _props$footerLabel === void 0 ? 'Search for more options' : _props$footerLabel; + return /*#__PURE__*/React.createElement("div", { + className: "Dropdown-footer" + }, /*#__PURE__*/React.createElement(Text, { + size: "small", + appearance: 'subtle' + }, footerLabel)); + }; - case 'hover': - setShowComponent(true); - return; + var renderGroups = function renderGroups(group, selectedGroup) { + var onClearOptions = props.onClearOptions; + var isClearDisabled = selected.every(function (option) { + return option.disabled; + }); + return /*#__PURE__*/React.createElement("div", { + className: getDropdownSectionClass(selectedGroup) + }, /*#__PURE__*/React.createElement(Text, { + size: "small", + appearance: 'subtle' + }, group), selectedGroup && /*#__PURE__*/React.createElement(Button, { + onClick: onClearOptions, + disabled: isClearDisabled, + appearance: "transparent", + size: "tiny", + type: "button" + }, "Clear")); + }; - case 'default': - setShowComponent(false); - return; - } + var renderApplyButton = function renderApplyButton() { + var disable = _isEqual(previousSelected, tempSelected) || props.loadingOptions; + return /*#__PURE__*/React.createElement("div", { + className: "Dropdown-buttonWrapper" + }, /*#__PURE__*/React.createElement(Button, { + ref: dropdownCancelButtonRef, + className: "mr-4", + appearance: 'basic', + onClick: onCancelOptions, + disabled: props.loadingOptions, + size: 'tiny', + tabIndex: -1, + "data-test": "DesignSystem-Dropdown-CancelButton", + type: "button" + }, cancelButtonLabel), /*#__PURE__*/React.createElement(Button, { + ref: dropdownApplyButtonRef, + appearance: 'primary', + disabled: disable, + size: 'tiny', + onClick: onApplyOptions, + "data-test": "DesignSystem-Dropdown-ApplyButton", + type: "button" + }, applyButtonLabel)); }; - var onChange = function onChange(value) { - setEditing(false); - setShowComponent(false); - if (onDropdownChange) onDropdownChange(value); + var renderSearch = function renderSearch() { + return /*#__PURE__*/React.createElement("div", { + className: "Dropdown-inputWrapper" + }, /*#__PURE__*/React.createElement(Input, { + name: "Dropdown-search", + icon: 'search', + value: searchTerm, + placeholder: searchPlaceholder // TODO(a11y): research more on this. + // eslint-disable-next-line jsx-a11y/no-autofocus + , + autoFocus: true, + onChange: searchHandler, + onClear: searchClearHandler, + ref: inputRef, + autoComplete: 'off', + className: "Dropdown-input" + })); }; - var onClose = function onClose(selected) { - setEditing(false); - setShowComponent(false); - if (onDropdownClose) onDropdownClose(selected); + var renderLoading = function renderLoading(loadersLength) { + var arr = Array(loadersLength).fill('Loading'); + var type = withCheckbox ? 'WITH_CHECKBOX' : optionType; + return arr.map(function (option, ind) { + return /*#__PURE__*/React.createElement("div", { + className: "Option-loading", + key: "".concat(option, "-").concat(ind) + }, /*#__PURE__*/React.createElement(Loading, { + loadingType: type, + optionIndex: ind + })); + }); }; - var renderComponent = function renderComponent(componentLabel) { - if (customTriggerRenderer) return customTriggerRenderer(componentLabel); - return componentLabel; + var renderSelectAll = function renderSelectAll() { + var _props$selectAllLabel = props.selectAllLabel, + selectAllLabel = _props$selectAllLabel === void 0 ? 'Select All' : _props$selectAllLabel, + selectAll = props.selectAll, + onSelectAll = props.onSelectAll; + var label = selectAllLabel.trim() ? selectAllLabel.trim() : 'Select All'; + var id = "Checkbox-option-".concat(label.toLowerCase().replace(/\s+/g, ''), "-").concat(new Date().getTime()); + return /*#__PURE__*/React.createElement("div", { + className: SelectAllClass, + onMouseEnter: function onMouseEnter() { + return updateActiveOption(0, true); + } + }, /*#__PURE__*/React.createElement("label", { + htmlFor: id, + className: "Checkbox-label" + }, /*#__PURE__*/React.createElement(Checkbox, { + label: label, + onChange: onSelectAll, + checked: selectAll.checked, + indeterminate: selectAll.indeterminate, + tabIndex: -1, + className: "OptionCheckbox", + id: id + }))); }; - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-EditableDropdown" - }, baseProps, { - className: CompClass - }), /*#__PURE__*/React.createElement(Editable, { - onChange: onChangeHandler, - editing: editing - }, /*#__PURE__*/React.createElement(Dropdown, _extends$3({ - placeholder: placeholder, - onChange: onChange, - getLabel: getLabel, - onClose: onClose, - className: EditableDropdownClass, - "data-test": "DesignSystem-EditableDropdown--Dropdown" - }, rest)), /*#__PURE__*/React.createElement("div", { - className: DefaultCompClass, - "data-test": "DesignSystem-EditableDropdown--Default" - }, renderComponent(label || placeholder)))); -}; -EditableDropdown.defaultProps = { - placeholder: '', - dropdownOptions: {} -}; + var renderOptions = function renderOptions(item, index) { + // const selectAllPresent = withCheckbox + // && remainingOptions === 0 + // && searchTerm === '' + // && withSelectAll; + var selectAllPresent = _isSelectAllPresent(searchTerm, remainingOptions, withSelectAll, withCheckbox); -var _excluded$j = ["children", "className", "appearance", "size", "disabled"]; -var Link = function Link(props) { - var _classNames; + var active = selectAllPresent ? index + 1 === cursor : index === cursor; + var optionIsSelected = tempSelected.findIndex(function (option) { + return option.value === item.value; + }) !== -1; + var id = "Checkbox-option-".concat(index, "-").concat(item.value, "-").concat(new Date().getTime()); + return /*#__PURE__*/React.createElement("label", { + htmlFor: id + }, /*#__PURE__*/React.createElement(Option, { + optionData: item, + truncateOption: truncateOption, + selected: optionIsSelected, + index: index, + updateActiveOption: updateActiveOption, + optionRenderer: optionRenderer, + active: active, + checkboxes: withCheckbox, + menu: menu, + onClick: function onClick() { + return optionClickHandler(item); + }, + onChange: function onChange(e) { + return props.onSelect(item, e.target.checked); + }, + optionType: props.optionType, + id: id + })); + }; - var children = props.children, - className = props.className, - appearance = props.appearance, - size = props.size, - disabled = props.disabled, - rest = _objectWithoutProperties$1(props, _excluded$j); + var renderDropdownSection = function renderDropdownSection() { + var _listOptions$0$group; - var classes = classnames((_classNames = { - Link: true - }, _defineProperty$2(_classNames, 'Link--disabled', disabled), _defineProperty$2(_classNames, "Link--".concat(size), size), _defineProperty$2(_classNames, "Link--".concat(appearance), appearance), _classNames), className); - return /*#__PURE__*/React.createElement(GenericText, _extends$3({ - "data-test": "DesignSystem-Link", - className: classes, - componentType: "a" - }, rest), children); -}; -Link.displayName = 'Link'; -Link.defaultProps = { - appearance: 'default', - size: 'regular', - disabled: false -}; + var _props$selectedSectio = props.selectedSectionLabel, + selectedSectionLabel = _props$selectedSectio === void 0 ? 'Selected Items' : _props$selectedSectio, + _props$allItemsSectio = props.allItemsSectionLabel, + allItemsSectionLabel = _props$allItemsSectio === void 0 ? 'All Items' : _props$allItemsSectio, + _props$loadersCount = props.loadersCount, + loadersCount = _props$loadersCount === void 0 ? 10 : _props$loadersCount, + _props$errorTemplate = props.errorTemplate, + errorTemplate = _props$errorTemplate === void 0 ? defaultErrorTemplate : _props$errorTemplate; -var IconMapping$1 = { - success: 'check_circle', - info: 'info', - warning: 'warning', - alert: 'error' -}; -var Message = function Message(props) { - var _classNames, _classNames2, _classNames3, _classNames4; + var selectAllPresent = _isSelectAllPresent(searchTerm, remainingOptions, withSelectAll, withCheckbox); - var appearance = props.appearance, - actions = props.actions, - title = props.title, - className = props.className; - var baseProps = extractBaseProps(props); - var MessageClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Message', true), _defineProperty$2(_classNames, "Message--".concat(appearance), appearance), _classNames), className); - var IconClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Message-icon', true), _defineProperty$2(_classNames2, "Message-icon--".concat(appearance), appearance), _defineProperty$2(_classNames2, 'Message-icon--withTitle', title), _classNames2)); - var TitleClass = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'Message-heading', true), _defineProperty$2(_classNames3, "Message-heading--".concat(appearance), appearance), _classNames3)); - var DescriptionClass = classnames((_classNames4 = {}, _defineProperty$2(_classNames4, 'Message-text', true), _defineProperty$2(_classNames4, "Message-text--".concat(appearance), appearance), _classNames4)); + var groupedListOptions = groupListOptions(listOptions); - var renderDescription = function renderDescription(description, children) { - if (description || typeof children === 'string') { - return /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-Message--Description", - className: DescriptionClass - }, description || (typeof children === 'string' ? children : '')); + if (loadersCount && loadingOptions) { + return /*#__PURE__*/React.createElement("div", { + className: 'Dropdown-loading' + }, /*#__PURE__*/React.createElement("div", { + className: "Dropdown-wrapper", + style: loaderStyle + }, renderLoading(loadersCount))); } - if (children) { - return /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-Message--Description", - className: "Message-description" - }, children); + if (isDropdownListBlank) { + if (noResultMessage) { + return /*#__PURE__*/React.createElement("div", { + className: "Dropdown-wrapper w-100", + style: dropdownStyle, + "data-test": "DesignSystem-Dropdown--errorWrapper" + }, /*#__PURE__*/React.createElement("div", { + className: 'Option' + }, /*#__PURE__*/React.createElement("div", { + className: 'Option-subinfo' + }, noResultMessage))); + } else { + return errorTemplate && errorTemplate({ + errorType: errorType + }); + } } - return null; + return /*#__PURE__*/React.createElement("div", { + className: dropdownWrapperClass, + style: dropdownStyle, + ref: dropdownRef + }, selectAllPresent && renderSelectAll(), selected.length > 0 && renderGroups(selectedSectionLabel, true), selected.map(function (option, index) { + return renderOptions(option, index); + }), selected.length > 0 && listOptions.length - selected.length > 0 && !((_listOptions$0$group = listOptions[0].group) !== null && _listOptions$0$group !== void 0 && _listOptions$0$group.trim()) && // allItemsSectionLabel is displayed only when there are no groups + renderGroups(allItemsSectionLabel), groupedListOptions.map(function (option, index) { + var prevGroup = index > 0 ? groupedListOptions[index - 1].group : selected.length ? selectedSectionLabel : undefined; + var currentGroup = option.group; + var isGroupDifferent = prevGroup !== currentGroup; + var updatedIndex = index + selected.length; + return /*#__PURE__*/React.createElement("div", { + className: "Option-checkboxWrapper", + key: index + }, isGroupDifferent && currentGroup && renderGroups(currentGroup), renderOptions(option, updatedIndex)); + }), props.async && remainingOptions > 0 && renderFooter()); }; - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-Message" - }, baseProps, { - className: MessageClass - }), appearance !== 'default' && /*#__PURE__*/React.createElement(Icon, { - "data-test": "DesignSystem-Message--Icon", - name: IconMapping$1[appearance], - appearance: appearance, - className: IconClass - }), /*#__PURE__*/React.createElement("div", null, title && /*#__PURE__*/React.createElement(Heading, { - "data-test": "DesignSystem-Message--Title", - size: "s", - className: TitleClass - }, title), renderDescription(props.description, props.children), actions && /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-Message--actions", - className: "Message-actions" - }, actions))); -}; -Message.displayName = 'Message'; -Message.defaultProps = { - appearance: 'default', - description: '' -}; + var focusOption = function focusOption(direction, classes) { + var elements = document.querySelectorAll(classes); + var updatedCursor = direction === 'down' ? cursor + 1 : cursor - 1; + var startIndex = updatedCursor; + var endIndex = direction === 'down' ? elements.length : -1; -var Meta = function Meta(props) { - var label = props.label, - icon = props.icon, - iconAppearance = props.iconAppearance, - labelAppearance = props.labelAppearance; - return /*#__PURE__*/React.createElement("span", { - className: 'Meta' - }, icon && /*#__PURE__*/React.createElement(Icon, { - name: icon, - appearance: iconAppearance, - className: 'Meta-icon' - }), /*#__PURE__*/React.createElement(Text, { - appearance: labelAppearance - }, label)); -}; -Meta.displayName = 'Meta'; + while (startIndex !== endIndex) { + var node = elements[startIndex]; -var MetaList = function MetaList(props) { - var _classNames3; + if (node.getAttribute('data-disabled') !== 'true') { + var element = elements[startIndex]; + if (element) scrollIntoView(dropdownRef.current, element); + if (element !== undefined) setCursor(startIndex); + break; + } - var list = props.list, - seperator = props.seperator, - seperatorAppearance = props.seperatorAppearance, - iconAppearance = props.iconAppearance, - labelAppearance = props.labelAppearance, - className = props.className; - var baseProps = extractBaseProps(props); - var MetaClass = classnames(_defineProperty$2({}, 'MetaList', true), className); - var SeperatorClass = classnames(_defineProperty$2({}, 'MetaList-seperator', true)); - var LeftSeperatorClass = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'MetaList-seperator', true), _defineProperty$2(_classNames3, 'MetaList-seperator--left', true), _classNames3)); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: MetaClass - }), seperator && /*#__PURE__*/React.createElement(Icon, { - name: "fiber_manual_record", - size: 8, - className: LeftSeperatorClass, - appearance: seperatorAppearance - }), list.map(function (item, ind) { - var _item$label = item.label, - label = _item$label === void 0 ? '' : _item$label, - icon = item.icon; - var rightSeperator = ind !== list.length - 1; - return /*#__PURE__*/React.createElement("span", { - key: ind, - className: "MetaList-item" - }, /*#__PURE__*/React.createElement(Meta, { - label: label, - icon: icon, - iconAppearance: iconAppearance, - labelAppearance: labelAppearance - }), rightSeperator && /*#__PURE__*/React.createElement(Icon, { - name: "fiber_manual_record", - size: 8, - className: SeperatorClass, - appearance: seperatorAppearance - })); - })); -}; -MetaList.displayName = 'MetaList'; -MetaList.defaultProps = { - seperatorAppearance: 'disabled', - iconAppearance: 'disabled', - labelAppearance: 'subtle' -}; + if (direction === 'down') { + startIndex++; + } else { + startIndex--; + } + } + }; -var _excluded$i = ["children", "className", "onOutsideClick"]; -var OutsideClick = /*#__PURE__*/React.forwardRef(function (props, ref) { - var children = props.children, - className = props.className, - onOutsideClick = props.onOutsideClick, - rest = _objectWithoutProperties$1(props, _excluded$i); + var onkeydown = function onkeydown(event) { + var optionClass = '.OptionWrapper'; - var innerRef = React.useRef(null); - React.useImperativeHandle(ref, function () { - return innerRef.current; - }, [innerRef]); - React.useEffect(function () { - document.addEventListener('click', handleOutsideClick, true); - return function () { - document.removeEventListener('click', handleOutsideClick); - }; - }, []); - var handleOutsideClick = React.useCallback(function (event) { - var element = innerRef; + switch (event.key) { + case 'ArrowDown': + event.preventDefault(); + dropdownOpen ? focusOption('down', optionClass) : onToggleDropdown(!dropdownOpen); + break; - if (!event.target || !element.current) { - return; - } + case 'ArrowUp': + event.preventDefault(); + dropdownOpen ? focusOption('up', optionClass) : onToggleDropdown(!dropdownOpen); + break; - if (!ReactDOM.findDOMNode(element.current).contains(event.target)) { - onOutsideClick(event); - } - }, []); - var classes = classnames(_defineProperty$2({}, 'OutsideClick', true), className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - ref: innerRef - }, rest, { - className: classes - }), children); -}); -OutsideClick.displayName = 'OutsideClick'; + case 'Enter': + { + var activeElement = document.activeElement; + + if (dropdownOpen && (inputRef.current === activeElement || dropdownTriggerRef.current === activeElement)) { + event.preventDefault(); + var classes = withCheckbox ? "".concat(optionClass, " .Checkbox-input") : optionClass; + var elements = document.querySelectorAll(classes); + var element = elements[cursor]; + if (element) element.click(); + } -var _excluded$h = ["appearance", "children", "className"]; -var Paragraph = function Paragraph(props) { - var appearance = props.appearance, - children = props.children, - className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$h); + if (!dropdownOpen) onToggleDropdown(!dropdownOpen); + break; + } - var classes = classnames(_defineProperty$2({ - Text: true - }, "Text--".concat(appearance), appearance), className); - return /*#__PURE__*/React.createElement(GenericText, _extends$3({ - "data-test": "DesignSystem-Paragraph" - }, rest, { - className: classes, - componentType: "p" - }), children); -}; -Paragraph.displayName = 'Paragraph'; -Paragraph.defaultProps = { - appearance: 'default' -}; + case 'Tab': + { + var _dropdownApplyButtonR; -var ProgressBar = function ProgressBar(props) { - var max = props.max, - value = props.value, - className = props.className; - var baseProps = extractBaseProps(props); - var style = { - width: value > 0 ? "".concat(Math.min(value, max) * 100 / max, "%") : '0' - }; - var ProgressBarClass = classnames({ - ProgressBar: true - }, className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-ProgressBar" - }, baseProps, { - className: ProgressBarClass - }), /*#__PURE__*/React.createElement("div", { - className: 'ProgressBar-indicator', - style: style - })); -}; -ProgressBar.displayName = 'ProgressBar'; -ProgressBar.defaultProps = { - max: 100 -}; + if (!showApplyButton && dropdownOpen) { + event.preventDefault(); + onToggleDropdown(false, 'onClick'); + return; + } -var _excluded$g = ["size", "label", "disabled", "onChange", "name", "value", "checked", "defaultChecked", "className"]; -var Radio = /*#__PURE__*/React.forwardRef(function (props, forwardedRef) { - var _classNames, _classNames2, _classNames3; + var currentElement = document.activeElement; + var disabledApplyButton = (_dropdownApplyButtonR = dropdownApplyButtonRef.current) === null || _dropdownApplyButtonR === void 0 ? void 0 : _dropdownApplyButtonR.disabled; - var _props$size = props.size, - size = _props$size === void 0 ? 'regular' : _props$size, - label = props.label, - disabled = props.disabled, - onChange = props.onChange, - name = props.name, - value = props.value, - checked = props.checked, - defaultChecked = props.defaultChecked, - className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$g); + if ((currentElement === dropdownCancelButtonRef.current && disabledApplyButton || currentElement === dropdownApplyButtonRef.current) && dropdownOpen) { + event.preventDefault(); + onToggleDropdown(false, 'onClick'); + return; + } - var ref = React.useRef(null); - React.useImperativeHandle(forwardedRef, function () { - return ref.current; - }); - var RadioClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Radio', true), _defineProperty$2(_classNames, 'Radio--disabled', disabled), _classNames), className); - var RadioWrapper = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Radio-wrapper', true), _defineProperty$2(_classNames2, "Radio-wrapper--".concat(size), size), _classNames2)); - var RadioOuterWrapper = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'Radio-outerWrapper', true), _defineProperty$2(_classNames3, "Radio-outerWrapper--".concat(size), size), _classNames3)); - var id = "".concat(name, "-").concat(label, "-").concat(uidGenerator()); - return /*#__PURE__*/React.createElement("div", { - className: RadioClass - }, /*#__PURE__*/React.createElement("div", { - className: RadioOuterWrapper - }, /*#__PURE__*/React.createElement("input", _extends$3({}, rest, { - type: "radio", - disabled: disabled, - checked: checked, - defaultChecked: defaultChecked, - ref: ref, - name: name, - value: value, - onChange: onChange, - className: "Radio-input", - id: id - })), /*#__PURE__*/React.createElement("span", { - className: RadioWrapper - })), label && /*#__PURE__*/React.createElement("label", { - className: "Radio-label", - htmlFor: id - }, /*#__PURE__*/React.createElement(Text, { - size: size === 'tiny' ? 'small' : 'regular', - appearance: disabled ? 'disabled' : 'default' - }, label))); -}); -Radio.displayName = 'Radio'; + if (showApplyButton && dropdownOpen) { + event.preventDefault(); -var _excluded$f = ["className", "children"]; -var Row = /*#__PURE__*/React.forwardRef(function (props, ref) { - var className = props.className, - children = props.children, - rest = _objectWithoutProperties$1(props, _excluded$f); + if (currentElement === dropdownCancelButtonRef.current) { + var _dropdownApplyButtonR2; - var classes = classnames(_defineProperty$2({ - Row: true - }, "".concat(className), className)); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-Row", - ref: ref - }, rest, { - className: classes - }), children); -}); -Row.displayName = 'Row'; + (_dropdownApplyButtonR2 = dropdownApplyButtonRef.current) === null || _dropdownApplyButtonR2 === void 0 ? void 0 : _dropdownApplyButtonR2.focus(); + } else { + var _dropdownCancelButton; -var StatusHint = function StatusHint(props) { - var _classNames2; + (_dropdownCancelButton = dropdownCancelButtonRef.current) === null || _dropdownCancelButton === void 0 ? void 0 : _dropdownCancelButton.focus(); + } + } - var appearance = props.appearance, - children = props.children, - _onMouseEnter = props.onMouseEnter, - _onMouseLeave = props.onMouseLeave, - _onClick = props.onClick, - className = props.className; - var baseProps = extractBaseProps(props); - var StatusHintClass = classnames(_defineProperty$2({}, 'StatusHint', true), className); - var StatusHintIconClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'StatusHint-icon', true), _defineProperty$2(_classNames2, "StatusHint--".concat(appearance), appearance), _classNames2)); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-StatusHint" - }, baseProps, { - className: StatusHintClass, - onClick: function onClick(e) { - return _onClick && _onClick(e); - }, - onMouseEnter: function onMouseEnter(e) { - return _onMouseEnter && _onMouseEnter(e); - }, - onMouseLeave: function onMouseLeave(e) { - return _onMouseLeave && _onMouseLeave(e); + break; + } } - }), /*#__PURE__*/React.createElement("span", { - "data-test": "DesignSystem-StatusHint--Icon", - className: StatusHintIconClass - }), /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-StatusHint--Text", - weight: 'medium' - }, children)); -}; -StatusHint.displayName = 'StatusHint'; -StatusHint.defaultProps = { - appearance: 'default' -}; - -var Pills = function Pills(props) { - var _classNames; - - var appearance = props.appearance, - children = props.children, - subtle = props.subtle, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classnames((_classNames = { - Pills: true - }, _defineProperty$2(_classNames, "Badge--".concat(appearance), appearance && !subtle), _defineProperty$2(_classNames, "Badge--subtle-".concat(appearance), subtle), _classNames), className); - return /*#__PURE__*/React.createElement("span", _extends$3({ - "data-test": "DesignSystem-Pills" - }, baseProps, { - className: classes - }), children); -}; -Pills.displayName = 'Pills'; -Pills.defaultProps = { - appearance: 'secondary' -}; - -var Spinner = function Spinner(props) { - var appearance = props.appearance, - size = props.size, - className = props.className; - var baseProps = extractBaseProps(props); - var wrapperClasses = classnames(_defineProperty$2({ - Spinner: true - }, "Spinner--".concat(size), size), className); - var circleClasses = classnames(_defineProperty$2({ - Circle: true - }, "Circle--".concat(appearance), appearance)); - var svgProps = { - viewBox: '0 0 50 50' - }; - var circleProps = { - cx: 25, - cy: 25, - r: 20, - fill: 'none', - strokeMiterlimit: '10', - strokeWidth: '4' }; - return /*#__PURE__*/React.createElement("svg", _extends$3({}, baseProps, { - className: wrapperClasses - }, svgProps), /*#__PURE__*/React.createElement("circle", _extends$3({ - className: circleClasses - }, circleProps))); -}; -Spinner.displayName = 'Spinner'; -Spinner.defaultProps = { - appearance: 'primary', - size: 'medium' -}; - -var ARROW_LEFT = 37; -var ARROW_RIGHT = 39; -var formatPercentage = function formatPercentage(ratio) { - return "".concat((ratio * 100).toFixed(2), "%"); + var enableSearch = withSearch || props.async; + return ( + /*#__PURE__*/ + //TODO(a11y) + //eslint-disable-next-line + React.createElement("div", _extends$2({}, baseProps, { + className: dropdownClass, + ref: triggerRef, + onKeyDown: onkeydown + }), /*#__PURE__*/React.createElement(Popover, _extends$2({ + onToggle: onToggleDropdown, + trigger: trigger, + triggerClass: !menu ? 'w-100' : '', + open: dropdownOpen, + customStyle: popoverStyle, + position: alignmentMapping[align] + }, popoverOptions, { + "data-test": "DesignSystem-Dropdown--Popover" + }), enableSearch && renderSearch(), renderDropdownSection(), showApplyButton && withCheckbox && renderApplyButton())) + ); }; -var countDecimalPlaces = function countDecimalPlaces(value) { - if (!isFinite(value)) return 0; - - if (Math.floor(value) !== value) { - var valueArray = value.toString().split('.'); - return valueArray[1].length || 0; - } - return 0; -}; -var approxEqual = function approxEqual(a, b) { - var tolerance = 0.00001; - return Math.abs(a - b) <= tolerance; -}; -var clamp = function clamp(value, min, max) { - if (value == null) { - return value; - } +DropdownList.displayName = 'DropdownList'; - return Math.min(Math.max(value, min), max); -}; -var arraysEqual = function arraysEqual(oldValues, newValues) { - if (oldValues.length !== oldValues.length) return; - return newValues.every(function (value, index) { - return value === oldValues[index]; - }); -}; -function argMin(values, argFn) { - if (values.length === 0) { - return undefined; - } +var _excluded$P = ["triggerOptions", "selected", "tabIndex"]; +var inputRef = /*#__PURE__*/React.createRef(); - var minValue = values[0]; - var minArg = argFn(minValue); +/** + * + * Dropdown component has been deprecated, please use following components instead: + * + * - [Select](https://mds.innovaccer.com/?path=/docs/components-select-all--all) + * - [Menu](https://mds.innovaccer.com/?path=/docs/components-menu-all--all) + * - [Combobox](https://mds.innovaccer.com/?path=/docs/components-combobox-all--all) + * + * ###Note: + * 1. Dropdown props types: + * - async: fetchOptions + * - sync: options, loading + * 2. Sync Dropdown: + * - Manually toggle loading state to update options (Options <= staticLimit). + * 3. Callback Functions + * - Controlled Dropdown: + * * onUpdate: Called when user `clicks on option` / `clicks on Clear, Cancel or Apply button`. + * * onChange: Called when selected options are updated. + * - Uncontrolled Dropdown: + * * onChange: Called when user `clicks on option` / `clicks on Clear, or Apply button`. + * 4. Default errorTemplate: + * + *
+ * (props) => {
+ *      const { errorType = 'DEFAULT' } = props;
+ *      const errorMessages = {
+ *        'FAILED\_TO\_FETCH': 'Failed to fetch data',
+ *        'NO\_RECORDS\_FOUND': 'No results found',
+ *        'DEFAULT': 'No record available'
+ *      }
+ *      return(
+ *        \{errorMessages[errorType]}\
+ *      );
+ * }
+ * 
+ */ +var Dropdown = /*#__PURE__*/function (_React$Component) { + _inherits(Dropdown, _React$Component); - for (var index = 1; index < values.length; index++) { - var _value = values[index]; - var arg = argFn(_value); + var _super = _createSuper(Dropdown); - if (arg < minArg) { - minValue = _value; - minArg = arg; - } - } + function Dropdown(props) { + var _this; - return minValue; -} -function fillValues(values, startIndex, endIndex, fillValue) { - var inc = startIndex < endIndex ? 1 : -1; + _classCallCheck(this, Dropdown); - for (var index = startIndex; index !== endIndex + inc; index += inc) { - values[index] = fillValue; - } -} -function isElementOfType(element, _ComponentType) { - return element != null && element.type != null; -} + _this = _super.call(this, props); -var Handle = /*#__PURE__*/function (_React$Component) { - _inherits$1(Handle, _React$Component); + _defineProperty$1(_assertThisInitialized$1(_this), "staticLimit", void 0); - var _super = _createSuper$1(Handle); + _defineProperty$1(_assertThisInitialized$1(_this), "getDisabledOptions", function () { + var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; + return options.filter(function (option) { + return option.disabled; + }); + }); - function Handle() { - var _this; + _defineProperty$1(_assertThisInitialized$1(_this), "fetchOptionsFunction", function (searchTerm) { + var options = _this.props.options; + var filteredOptions = searchTerm ? getSearchedOptions(options, searchTerm) : options; + return new Promise(function (resolve) { + resolve({ + searchTerm: searchTerm, + options: filteredOptions, + count: filteredOptions.length + }); + }); + }); - _classCallCheck$1(this, Handle); + _defineProperty$1(_assertThisInitialized$1(_this), "getUnSelectedOptions", function (options, init) { + if (options.length) { + if (!init) { + return options.filter(function (option) { + return _this.state.tempSelected.findIndex(function (item) { + return item.value === option.value; + }) === -1; + }); + } - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } + var _this$props$selected = _this.props.selected, + _selected2 = _this$props$selected === void 0 ? [] : _this$props$selected; - _this = _super.call.apply(_super, [this].concat(args)); + var unSelectedGroup = options.filter(function (option) { + return _isControlled(_this.props.selected) ? _selected2.findIndex(function (item) { + return item.value === option.value; + }) === -1 : !option.selected; + }); + return unSelectedGroup; + } - _defineProperty$2(_assertThisInitialized$2(_this), "state", { - isHandleMoving: false, - isHandleHovered: false + return options; }); - _defineProperty$2(_assertThisInitialized$2(_this), "handleElement", null); + _defineProperty$1(_assertThisInitialized$1(_this), "getSelectedOptions", function (options, init) { + var _this$props$selected2 = _this.props.selected, + selected = _this$props$selected2 === void 0 ? [] : _this$props$selected2; - _defineProperty$2(_assertThisInitialized$2(_this), "refHandlers", { - handle: function handle(el) { - return _this.handleElement = el; + if (options.length) { + if (!init) return _this.state.tempSelected; + var selectedGroup = _isControlled(_this.props.selected) ? selected : options.filter(function (option) { + return option.selected; + }); + return selectedGroup; } - }); - _defineProperty$2(_assertThisInitialized$2(_this), "mouseEventClientOffset", function (event) { - return event.clientX; + return []; }); - _defineProperty$2(_assertThisInitialized$2(_this), "clientToValue", function (clientPixel) { + _defineProperty$1(_assertThisInitialized$1(_this), "updateOptions", function (init, async) { + var _this$state = _this.state, + searchTerm = _this$state.searchTerm, + selectAll = _this$state.selectAll, + tempSelected = _this$state.tempSelected, + previousSelected = _this$state.previousSelected, + errorType = _this$state.errorType; + var updatedAsync = async === undefined ? _this.state.async : async; var _this$props = _this.props, - stepSize = _this$props.stepSize, - tickSize = _this$props.tickSize, - value = _this$props.value; - - if (_this.handleElement == null) { - return value; - } + fetchOptions = _this$props.fetchOptions, + withCheckbox = _this$props.withCheckbox, + withSearch = _this$props.withSearch; + var fetchFunction = fetchOptions ? fetchOptions : _this.fetchOptionsFunction; + fetchFunction(searchTerm).then(function (res) { + var options = res.options, + count = res.count; - var clientPixelNormalized = clientPixel; + if (res.scrollToIndex) { + setTimeout(function () { + scrollToOptionIndex(res.scrollToIndex, options); + }, 0); + } - var _this$getHandleMidpoi = _this.getHandleMidpointAndOffset(_this.handleElement), - handleMidpoint = _this$getHandleMidpoi.handleMidpoint, - handleOffset = _this$getHandleMidpoi.handleOffset; + if (!res.searchTerm || res.searchTerm && res.searchTerm === _this.state.searchTerm) { + var _inputRef$current; - var handleCenterPixel = handleMidpoint + handleOffset; - var pixelDelta = clientPixelNormalized - handleCenterPixel; + updatedAsync = searchTerm === '' ? count > _this.staticLimit : updatedAsync; + var unSelectedGroup = _showSelectedItems(updatedAsync, searchTerm, withCheckbox) ? _this.getUnSelectedOptions(options, init) : options; + var selectedGroup = searchTerm === '' ? _this.getSelectedOptions(options, init) : []; + var optionsLength = searchTerm === '' ? count : _this.state.optionsLength; - if (isNaN(pixelDelta)) { - return value; - } + var disabledOptions = _this.getDisabledOptions(unSelectedGroup.slice(0, _this.staticLimit)); - return value + Math.round(pixelDelta / (tickSize * stepSize)) * stepSize; - }); + var errorResult = errorType; - _defineProperty$2(_assertThisInitialized$2(_this), "changeValue", function (newValue) { - var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _this.props.onChange; - var updatedValue = clamp(newValue, _this.props.min, _this.props.max); + if (optionsLength === 0 && searchTerm === '') { + errorResult = 'DEFAULT'; + } else if (searchTerm !== '') { + errorResult = 'NO_RECORDS_FOUND'; + } else { + errorResult = 'FAILED_TO_FETCH'; + } - if (!isNaN(updatedValue) && _this.props.value !== updatedValue) { - if (callback) callback(updatedValue); - } + _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { + errorType: fetchOptions ? errorResult : errorType, + scrollIndex: res.scrollToIndex || 0, + optionsLength: optionsLength, + loading: false, + async: updatedAsync, + searchedOptionsLength: count, + options: unSelectedGroup.slice(0, _this.staticLimit), + tempSelected: init ? selectedGroup : tempSelected, + previousSelected: init ? selectedGroup : previousSelected, + selected: _showSelectedItems(updatedAsync, searchTerm, withCheckbox) ? selectedGroup : [], + triggerLabel: _this.updateTriggerLabel(init ? selectedGroup : tempSelected), + selectAll: !updatedAsync && init ? getSelectAll$1(selectedGroup, optionsLength, disabledOptions.length) : selectAll + })); - return updatedValue; + if (updatedAsync || withSearch) (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus(); + } + })["catch"](function () { + _this.setState({ + errorType: fetchOptions ? 'FAILED_TO_FETCH' : errorType, + loading: false, + options: [] + }); + }); }); - _defineProperty$2(_assertThisInitialized$2(_this), "endHandleMovement", function (event) { - var clientPixel = _this.mouseEventClientOffset(event); + _defineProperty$1(_assertThisInitialized$1(_this), "updateSearchTerm", function (search) { + _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { + loading: true, + searchInit: true, + searchTerm: search, + errorType: 'NO_RECORDS_FOUND' + })); + }); - var onRelease = _this.props.onRelease; + _defineProperty$1(_assertThisInitialized$1(_this), "updateOnPopperToggle", function () { + var _this$props2 = _this.props, + withCheckbox = _this$props2.withCheckbox, + showApplyButton = _this$props2.showApplyButton, + onClose = _this$props2.onClose, + name = _this$props2.name, + _this$props2$selected = _this$props2.selected, + selected = _this$props2$selected === void 0 ? [] : _this$props2$selected; + var _this$state2 = _this.state, + previousSelected = _this$state2.previousSelected, + tempSelected = _this$state2.tempSelected, + optionsLength = _this$state2.optionsLength, + async = _this$state2.async, + loading = _this$state2.loading, + searchTerm = _this$state2.searchTerm, + options = _this$state2.options; + var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.props.open : _this.state.open; - _this.removeDocumentEventListeners(); + var disabledOptionsCount = _this.getDisabledOptions(options).length; - _this.setState({ - isHandleMoving: false - }); + if (withCheckbox && showApplyButton) { + var temporarySelected = _isControlled(_this.props.selected) ? selected : previousSelected; - var finalValue = _this.changeValue(_this.clientToValue(clientPixel)); + _this.setState({ + tempSelected: temporarySelected, + selectAll: getSelectAll$1(temporarySelected, optionsLength, disabledOptionsCount), + triggerLabel: _this.updateTriggerLabel(temporarySelected) + }); + } - if (onRelease) onRelease(finalValue); + if (_isOpenControlled(_this.props.open)) { + _this.setState({ + open: popperIsOpen + }); + } + + if (popperIsOpen) { + var moveSelectedGroup = _showSelectedItems(async, searchTerm, withCheckbox) && !_isEqual(_this.state.selected, tempSelected); + + _this.setState({ + loading: moveSelectedGroup || loading || searchTerm !== '', + searchInit: searchTerm !== '', + searchTerm: '' + }); + + if (moveSelectedGroup) _this.updateOptions(false); + } + + if (onClose && !popperIsOpen) { + var arr = withCheckbox && showApplyButton ? _isControlled(_this.props.selected) ? selected : previousSelected : _this.state.tempSelected; + var values = arr.map(function (option) { + return option.value; + }); + + _this.debounceOnClose(values, name); + } }); - _defineProperty$2(_assertThisInitialized$2(_this), "continueHandleMovement", function (event) { - var clientPixel = _this.mouseEventClientOffset(event); + _defineProperty$1(_assertThisInitialized$1(_this), "debounceOnClose", debounce$1(300, function (values, name) { + var onClose = _this.props.onClose; - if (_this.state.isHandleMoving && !_this.props.disabled) { - var value = _this.clientToValue(clientPixel); + if (onClose) { + onClose(values, name); + } + })); - _this.changeValue(value); + _defineProperty$1(_assertThisInitialized$1(_this), "updateTriggerLabel", function () { + var selectedArray = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; + var totalOptions = arguments.length > 1 ? arguments[1] : undefined; + var selectedLength = selectedArray.length; + if (selectedLength === 0) return ''; + var _this$props3 = _this.props, + _this$props3$triggerO = _this$props3.triggerOptions, + triggerOptions = _this$props3$triggerO === void 0 ? {} : _this$props3$triggerO, + getLabel = _this$props3.getLabel; + var customLabel = triggerOptions.customLabel, + _triggerOptions$label = triggerOptions.labelLimit, + labelLimit = _triggerOptions$label === void 0 ? 2 : _triggerOptions$label; + var optionsLength = _this.state ? _this.state.optionsLength : totalOptions; + var label = ''; + + if (selectedLength <= labelLimit) { + label = selectedArray.map(function (option) { + return option.label; + }).join(', '); + } else { + label = customLabel ? customLabel(selectedLength, optionsLength, selectedArray) : "".concat(selectedLength, " selected"); } + + if (getLabel) getLabel(label); + return label; }); - _defineProperty$2(_assertThisInitialized$2(_this), "beginHandleMovement", function (event) { - if (_this.props.disabled) return; - document.addEventListener('mousemove', _this.continueHandleMovement); - document.addEventListener('mouseup', _this.endHandleMovement); + _defineProperty$1(_assertThisInitialized$1(_this), "updateSelectedOptions", function (selectedArray, isSingleSelect, isControlled) { + var _this$state3 = _this.state, + optionsLength = _this$state3.optionsLength, + previousSelected = _this$state3.previousSelected, + selected = _this$state3.selected, + loading = _this$state3.loading, + open = _this$state3.open; + var _this$props4 = _this.props, + onChange = _this$props4.onChange, + withCheckbox = _this$props4.withCheckbox, + showApplyButton = _this$props4.showApplyButton, + closeOnSelect = _this$props4.closeOnSelect, + name = _this$props4.name, + onPopperToggle = _this$props4.onPopperToggle; + var updatePreviousSelected = withCheckbox && showApplyButton && isControlled; - _this.setState({ - isHandleMoving: true + var disabledOptions = _this.getDisabledOptions(_this.state.options); + + var isClearClicked = selectedArray.length === 0 && selected.length > 0 || selectedArray.every(function (option) { + return option.disabled; + }) && !selected.every(function (option) { + return option.disabled; }); - var value = _this.clientToValue(event.clientX); + _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { + tempSelected: selectedArray, + triggerLabel: _this.updateTriggerLabel(selectedArray), + selectAll: getSelectAll$1(selectedArray, optionsLength, disabledOptions.length), + open: _isOpenControlled(_this.props.open) || withCheckbox ? open : !closeOnSelect, + previousSelected: updatePreviousSelected ? selectedArray : previousSelected, + selected: isClearClicked ? selectedArray : selected, + loading: isClearClicked ? true : loading + })); - _this.changeValue(value); + if (isClearClicked) _this.debounceClear(); + + if (onChange && (!showApplyButton || isControlled)) { + var values = selectedArray.map(function (item) { + return item.value; + }); + var selectedValues = isSingleSelect ? values[0] : values; + onChange(selectedValues, name); + } + + if (!withCheckbox && closeOnSelect && onPopperToggle && _isOpenControlled(_this.props.open)) { + onPopperToggle(false, 'optionClick'); + } }); - _defineProperty$2(_assertThisInitialized$2(_this), "handleKeyDown", function (event) { - if (_this.props.disabled) return; - var _this$props2 = _this.props, - stepSize = _this$props2.stepSize, - value = _this$props2.value; - var which = event.which; + _defineProperty$1(_assertThisInitialized$1(_this), "isValidOption", function (option) { + var _this$props5 = _this.props, + closeOnSelect = _this$props5.closeOnSelect, + withCheckbox = _this$props5.withCheckbox, + open = _this$props5.open, + onPopperToggle = _this$props5.onPopperToggle; + var temp = _this.state.tempSelected; + + if (temp.length > 0 && !withCheckbox && temp[0].value === option['value']) { + _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { + open: _isOpenControlled(open) || !closeOnSelect + })); - if (which === ARROW_LEFT) { - _this.changeValue(value - stepSize); + if (!withCheckbox && closeOnSelect && onPopperToggle && _isOpenControlled(open)) { + onPopperToggle(false, 'optionClick'); + } - event.preventDefault(); - } else if (which === ARROW_RIGHT) { - _this.changeValue(value + stepSize); + return false; + } - event.preventDefault(); + return true; + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "onOptionSelect", function (option) { + var _this$props6 = _this.props, + onUpdate = _this$props6.onUpdate, + selected = _this$props6.selected, + menu = _this$props6.menu; + + if (_isControlled(selected)) { + if (onUpdate && (_this.isValidOption(option) || menu)) { + onUpdate('select-option', option); + } + + return; + } + + if (_this.isValidOption(option) || menu) { + _this.updateSelectedOptions([option], true); } }); - _defineProperty$2(_assertThisInitialized$2(_this), "handleKeyUp", function (event) { - if (_this.props.disabled) return; + _defineProperty$1(_assertThisInitialized$1(_this), "onSelect", function (option, checked) { + var _this$props7 = _this.props, + onUpdate = _this$props7.onUpdate, + selected = _this$props7.selected, + showApplyButton = _this$props7.showApplyButton; - if ([ARROW_LEFT, ARROW_RIGHT].indexOf(event.which) >= 0) { - var onRelease = _this.props.onRelease; - if (onRelease) onRelease(_this.props.value); + if (_isControlled(selected) && !showApplyButton) { + if (onUpdate) onUpdate(checked ? 'select-option' : 'deselect-option', option); + return; + } + + var tempSelected = _this.state.tempSelected; + var selectedArray = tempSelected.slice(); + + if (!checked) { + var index = selectedArray.findIndex(function (item) { + return item.value === option.value; + }); + selectedArray.splice(index, 1); } + + selectedArray = checked ? selectedArray.concat(option) : selectedArray; + + _this.updateSelectedOptions(selectedArray, false); }); - _defineProperty$2(_assertThisInitialized$2(_this), "getHandleMidpointAndOffset", function (handleElement) { - var useOppositeDimension = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _defineProperty$1(_assertThisInitialized$1(_this), "onSelectAll", function (event) { + var _this$props8 = _this.props, + onUpdate = _this$props8.onUpdate, + selected = _this$props8.selected, + showApplyButton = _this$props8.showApplyButton; + var _this$state4 = _this.state, + tempSelected = _this$state4.tempSelected, + options = _this$state4.options; - if (handleElement == null) { - return { - handleMidpoint: 0, - handleOffset: 0 - }; + if (_isControlled(selected) && !showApplyButton) { + if (onUpdate) onUpdate(event.target.checked ? 'select-all' : 'deselect-all'); + return; } - var handleRect = handleElement.getBoundingClientRect(); - var sizeKey = useOppositeDimension ? 'height' : 'width'; - var handleOffset = handleRect.left; - return { - handleOffset: handleOffset, - handleMidpoint: handleRect[sizeKey] / 2 - }; + var selectedArr = tempSelected.slice(); + var selectedDisabledArray = selectedArr.filter(function (option) { + return option.disabled; + }); + var selectedArray = event.target.checked ? [].concat(_toConsumableArray(options.filter(function (option) { + return !option.disabled; + })), _toConsumableArray(selectedDisabledArray)) : selectedDisabledArray; + + _this.updateSelectedOptions(selectedArray, false); }); - _defineProperty$2(_assertThisInitialized$2(_this), "handleMouseOver", function () { + _defineProperty$1(_assertThisInitialized$1(_this), "debounceSearch", debounce$1(_this.props.searchDebounceDuration, function () { _this.setState({ - isHandleHovered: true + searchInit: false + }, function () { + _this.updateOptions(false); }); - }); + })); - _defineProperty$2(_assertThisInitialized$2(_this), "handleMouseLeave", function () { + _defineProperty$1(_assertThisInitialized$1(_this), "reload", function () { _this.setState({ - isHandleHovered: false + loading: true + }, function () { + _this.updateOptions(false); }); }); - _defineProperty$2(_assertThisInitialized$2(_this), "removeDocumentEventListeners", function () { - document.removeEventListener('mousemove', _this.continueHandleMovement); - document.removeEventListener('mouseup', _this.endHandleMovement); - }); + _defineProperty$1(_assertThisInitialized$1(_this), "debounceClear", debounce$1(250, function () { + return _this.updateOptions(false); + })); - return _this; - } + _defineProperty$1(_assertThisInitialized$1(_this), "onClearOptions", function () { + var _this$props9 = _this.props, + selected = _this$props9.selected, + name = _this$props9.name, + onUpdate = _this$props9.onUpdate, + showApplyButton = _this$props9.showApplyButton, + onChange = _this$props9.onChange; + var tempSelected = _this.state.tempSelected; + var selectedArray = tempSelected.filter(function (option) { + return option.disabled; + }); - _createClass$1(Handle, [{ - key: "componentWillUnmount", - value: function componentWillUnmount() { - this.removeDocumentEventListeners(); - } - }, { - key: "componentDidUpdate", - value: function componentDidUpdate(_prevProps, prevState) { - if (prevState.isHandleMoving !== this.state.isHandleMoving) { - if (this.handleElement) this.handleElement.focus(); + if (_isControlled(selected) && !showApplyButton) { + if (onUpdate) onUpdate('clear-all'); + return; } - } - }, { - key: "render", - value: function render() { - var _classNames, _classNames2; - - var _this$props3 = this.props, - min = _this$props3.min, - tickSizeRatio = _this$props3.tickSizeRatio, - value = _this$props3.value, - disabled = _this$props3.disabled, - label = _this$props3.label, - isCurrentLabelHovered = _this$props3.isCurrentLabelHovered; - var _this$state = this.state, - isHandleMoving = _this$state.isHandleMoving, - isHandleHovered = _this$state.isHandleHovered; - var showTootlip = isHandleMoving || isHandleHovered || isCurrentLabelHovered; - - var _this$getHandleMidpoi2 = this.getHandleMidpointAndOffset(this.handleElement, true), - handleMidpoint = _this$getHandleMidpoi2.handleMidpoint; - - var offsetRatio = (value - min) * tickSizeRatio; - var offsetCalc = "calc(".concat(formatPercentage(offsetRatio), " - ").concat(handleMidpoint, "px)"); - var style = { - left: offsetCalc - }; - var className = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Slider-handle', true), _defineProperty$2(_classNames, 'Slider-handle--disabled', disabled), _defineProperty$2(_classNames, 'Slider-handle--active', isHandleMoving), _classNames)); - var TooltipClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Slider-tooltip', true), _defineProperty$2(_classNames2, 'Tooltip', true), _defineProperty$2(_classNames2, 'd-none', !showTootlip), _classNames2)); - return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { - className: className, - onMouseOver: this.handleMouseOver, - onMouseLeave: this.handleMouseLeave, - onMouseDown: this.beginHandleMovement, - onKeyDown: this.handleKeyDown, - onKeyUp: this.handleKeyUp, - ref: this.refHandlers.handle, - style: style, - tabIndex: 1 - }), /*#__PURE__*/React.createElement("div", { - className: TooltipClass, - style: style - }, label)); - } - }]); - - return Handle; -}(React.Component); - -var MultiSliderHandle = function MultiSliderHandle() { - return null; -}; - -var MultiSlider = /*#__PURE__*/function (_React$Component) { - _inherits$1(MultiSlider, _React$Component); - - var _super = _createSuper$1(MultiSlider); - function MultiSlider(_props) { - var _this; - - _classCallCheck$1(this, MultiSlider); - - _this = _super.call(this, _props); - - _defineProperty$2(_assertThisInitialized$2(_this), "handleElements", []); + _this.setState({ + selected: selectedArray, + tempSelected: selectedArray, + triggerLabel: '', + loading: true + }); - _defineProperty$2(_assertThisInitialized$2(_this), "trackElement", null); + _this.debounceClear(); - _defineProperty$2(_assertThisInitialized$2(_this), "getLabelPrecision", function (_ref) { - var labelPrecision = _ref.labelPrecision, - stepSize = _ref.stepSize; - return labelPrecision == null ? countDecimalPlaces(stepSize) : labelPrecision; + if (onChange && !showApplyButton) onChange(selectedArray, name); }); - _defineProperty$2(_assertThisInitialized$2(_this), "getOffsetRatio", function (value) { - return clamp((value - _this.props.min) * _this.state.tickSizeRatio, 0, 1); - }); + _defineProperty$1(_assertThisInitialized$1(_this), "onTogglePopper", function (type) { + var onPopperToggle = _this.props.onPopperToggle; - _defineProperty$2(_assertThisInitialized$2(_this), "addHandleRef", function (ref) { - if (ref != null) { - _this.handleElements.push(ref); + if (onPopperToggle && _isOpenControlled(_this.props.open)) { + onPopperToggle(false, type); } }); - _defineProperty$2(_assertThisInitialized$2(_this), "getHandleValues", function (props) { - var maybeHandles = React.Children.map(props.children, function (child) { - return isElementOfType(child) ? child.props : null; - }); - var handles = maybeHandles != null ? maybeHandles : []; - handles = handles.filter(function (handle) { - return handle !== null; - }); - handles.sort(function (left, right) { - return left.value - right.value; + _defineProperty$1(_assertThisInitialized$1(_this), "onCancelOptions", function () { + var _this$state5 = _this.state, + previousSelected = _this$state5.previousSelected, + tempSelected = _this$state5.tempSelected, + optionsLength = _this$state5.optionsLength; + var _this$props10 = _this.props, + selected = _this$props10.selected, + onUpdate = _this$props10.onUpdate, + onClose = _this$props10.onClose, + name = _this$props10.name; + var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.state.open : false; + var values = previousSelected.map(function (option) { + return option.value; }); - return handles; - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "updateTickSize", function () { - if (_this.trackElement != null) { - var trackSize = _this.trackElement.clientWidth; - var tickSizeRatio = 1 / (_this.props.max - _this.props.min); - var tickSize = trackSize * tickSizeRatio; - _this.setState({ - tickSize: tickSize, - tickSizeRatio: tickSizeRatio - }); - } - }); + if (_isControlled(selected)) { + if (onUpdate) onUpdate('cancel-selected', previousSelected, tempSelected); - _defineProperty$2(_assertThisInitialized$2(_this), "getTrackFill", function (start, end) { - if (start.fillAfter !== undefined) { - return start.fillAfter; - } + _this.onTogglePopper('cancelClick'); - if (end !== undefined && end.fillBefore !== undefined) { - return end.fillBefore; + return; } - return false; - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "maybeHandleTrackClick", function (event) { - var target = event.target; - var canHandleTrackEvent = !_this.props.disabled && target.closest('.Slider-handle') == null; - - if (canHandleTrackEvent) { - var foundHandle = _this.nearestHandleForValue(_this.handleElements, function (handle) { - return handle.mouseEventClientOffset(event); - }); + var label = _this.updateTriggerLabel(previousSelected); - if (foundHandle) { - foundHandle.beginHandleMovement(event); - } - } - }); + var disabledOptions = _this.getDisabledOptions(_this.state.options); - _defineProperty$2(_assertThisInitialized$2(_this), "getLockedHandleIndex", function (startIndex, endIndex) { - var inc = startIndex < endIndex ? 1 : -1; + _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { + tempSelected: previousSelected, + selectAll: getSelectAll$1(previousSelected, optionsLength, disabledOptions.length), + triggerLabel: label, + open: popperIsOpen + })); - for (var index = startIndex + inc; index !== endIndex + inc; index += inc) { - return index; + if (onClose && !popperIsOpen) { + onClose(values, name); } - return -1; + _this.onTogglePopper('cancelClick'); }); - _defineProperty$2(_assertThisInitialized$2(_this), "getNewHandleValues", function (newValue, oldIndex) { - var handleProps = _this.getHandleValues(_this.props); - - var oldValues = handleProps.map(function (handle) { - return handle.value; - }); - var newValues = oldValues.slice(); - newValues[oldIndex] = newValue; - if (newValues.length > 1) newValues.sort(function (left, right) { - return left - right; + _defineProperty$1(_assertThisInitialized$1(_this), "onApplyOptions", function () { + var _this$state6 = _this.state, + tempSelected = _this$state6.tempSelected, + previousSelected = _this$state6.previousSelected; + var _this$props11 = _this.props, + onChange = _this$props11.onChange, + selected = _this$props11.selected, + onUpdate = _this$props11.onUpdate, + onClose = _this$props11.onClose, + name = _this$props11.name; + var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.state.open : false; + var values = tempSelected.map(function (option) { + return option.value; }); - var newIndex = newValues.indexOf(newValue); - var lockIndex = _this.getLockedHandleIndex(oldIndex, newIndex); + if (_isControlled(selected)) { + if (onUpdate) onUpdate('apply-selected', previousSelected, tempSelected); - if (lockIndex === -1) { - fillValues(newValues, oldIndex, newIndex, newValue); - } else { - var lockValue = oldValues[lockIndex]; - fillValues(oldValues, oldIndex, lockIndex, lockValue); - return oldValues; + _this.onTogglePopper('applyClick'); + + return; } - return newValues; - }); + _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { + previousSelected: tempSelected, + optionsApplied: true, + open: popperIsOpen + })); - _defineProperty$2(_assertThisInitialized$2(_this), "onReleaseHandler", function (newValue, index) { - var onRangeRelease = _this.props.onRangeRelease; + if (onChange) { + onChange(values, name); + } - var handleProps = _this.getHandleValues(_this.props); + if (onClose && !popperIsOpen) { + onClose(values, name); + } - var newValues = _this.getNewHandleValues(newValue, index); // Range Slider callback + _this.onTogglePopper('applyClick'); + }); + _defineProperty$1(_assertThisInitialized$1(_this), "onToggleDropdown", function (updatedOpen, type) { + if (_this.props.disabled) { + return; + } - if (onRangeRelease) { - var range = newValues; - onRangeRelease(range); - } // Slider callback + var onPopperToggle = _this.props.onPopperToggle; + if (onPopperToggle && _isOpenControlled(_this.props.open)) { + onPopperToggle(updatedOpen, type); + return; + } - handleProps.forEach(function (handle, i) { - if (handle.onRelease) handle.onRelease(newValues[i]); + _this.setState({ + open: updatedOpen }); }); - _defineProperty$2(_assertThisInitialized$2(_this), "onChangeHandler", function (newValue, index) { - var onRangeChange = _this.props.onRangeChange; - - var handleProps = _this.getHandleValues(_this.props); - - var oldValues = handleProps.map(function (handle) { - return handle.value; - }); + var _props$selected = props.selected, + _selected = _props$selected === void 0 ? [] : _props$selected, + _totalOptions = props.totalOptions, + _withCheckbox = props.withCheckbox, + _loading = props.loading, + _open = props.open, + _options = props.options; - var newValues = _this.getNewHandleValues(newValue, index); + _this.staticLimit = Math.min(100, props.staticLimit); - if (!arraysEqual(newValues, oldValues)) { - // Range Slider Callback - if (onRangeChange) { - var range = newValues; - onRangeChange(range); - } // Slider callback + var _optionsLength = _totalOptions ? _totalOptions : _options.length; + var _async = 'fetchOptions' in _this.props || _optionsLength > _this.staticLimit; - handleProps.forEach(function (handle, i) { - if (handle.onChange) handle.onChange(newValues[i]); - }); - } - }); + var _selectedGroup = !_async ? _this.getSelectedOptions(_options, true) : []; - _defineProperty$2(_assertThisInitialized$2(_this), "formatLabel", function (value) { - var labelRenderer = _this.props.labelRenderer; + var _disabledOptions = _this.getDisabledOptions(_options); - if (typeof labelRenderer === 'function') { - return labelRenderer(value); - } + _this.state = { + async: _async, + optionsLength: _optionsLength, + open: _open, + searchInit: false, + searchedOptionsLength: _optionsLength, + optionsApplied: false, + options: _options || [], + loading: _async ? true : _loading, + searchTerm: '', + tempSelected: _selectedGroup, + previousSelected: _selectedGroup, + selected: _showSelectedItems(_async, '', _withCheckbox) ? _selected : [], + triggerLabel: _this.updateTriggerLabel(_selectedGroup, _optionsLength), + selectAll: getSelectAll$1(_selectedGroup, _optionsLength, _disabledOptions.length), + errorType: 'DEFAULT' + }; + return _this; + } - return value.toFixed(_this.state.labelPrecision); - }); + _createClass(Dropdown, [{ + key: "componentDidMount", + value: function componentDidMount() { + var async = this.state.async; + if (async) this.updateOptions(true); + } + }, { + key: "componentDidUpdate", + value: function componentDidUpdate(prevProps, prevState) { + if (!this.state.async) { + var _this$props12 = this.props, + loading = _this$props12.loading, + fetchOptions = _this$props12.fetchOptions, + _this$props12$options = _this$props12.options, + _options2 = _this$props12$options === void 0 ? [] : _this$props12$options, + withSearch = _this$props12.withSearch; - _defineProperty$2(_assertThisInitialized$2(_this), "renderHandles", function () { - var _this$props = _this.props, - disabled = _this$props.disabled, - max = _this$props.max, - min = _this$props.min, - stepSize = _this$props.stepSize; + var disabledOptionsCount = this.getDisabledOptions(_options2).length; - var handleProps = _this.getHandleValues(_this.props); + if (prevProps.loading !== loading && !fetchOptions) { + if (_options2.length > this.staticLimit) { + this.updateOptions(true, true); + } else { + var _inputRef$current2; - if (handleProps.length === 0) { - return null; + var selectedGroup = this.getSelectedOptions(_options2, true); + this.setState(_objectSpread2(_objectSpread2({}, this.state), {}, { + options: _options2, + loading: loading, + tempSelected: selectedGroup, + previousSelected: selectedGroup, + optionsLength: _options2.length, + searchedOptionsLength: _options2.length, + triggerLabel: this.updateTriggerLabel(selectedGroup), + selectAll: getSelectAll$1(selectedGroup, this.state.optionsLength, disabledOptionsCount) + })); + if (withSearch) (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.focus(); + } + } } - return handleProps.map(function (_ref2, index) { - var value = _ref2.value; - var isCurrentLabelHovered = _this.state.hoveredLabelValue === Number(value.toFixed(_this.state.labelPrecision)); - return /*#__PURE__*/React.createElement(Handle, { - disabled: disabled, - key: "".concat(index, "-").concat(handleProps.length), - max: max, - min: min, - onRelease: function onRelease(newValue) { - return _this.onReleaseHandler(newValue, index); - }, - onChange: function onChange(newValue) { - return _this.onChangeHandler(newValue, index); - }, - label: _this.formatLabel(value), - ref: _this.addHandleRef, - stepSize: stepSize, - tickSize: _this.state.tickSize, - tickSizeRatio: _this.state.tickSizeRatio, - value: value, - isCurrentLabelHovered: isCurrentLabelHovered - }); - }); - }); + if (this.props.selected !== undefined && prevProps.selected !== this.props.selected && prevProps.loading === this.props.loading) { + var isSingleSelect = !this.props.withCheckbox; + this.updateSelectedOptions(this.props.selected, isSingleSelect, true); + } - _defineProperty$2(_assertThisInitialized$2(_this), "renderLabels", function () { - var _this$props2 = _this.props, - labelStepSize = _this$props2.labelStepSize, - max = _this$props2.max, - min = _this$props2.min, - labelRenderer = _this$props2.labelRenderer, - disabled = _this$props2.disabled; - var labels = []; - var stepSizeRatio = _this.state.tickSizeRatio * labelStepSize; + if (prevState.searchTerm !== this.state.searchTerm) { + this.debounceSearch(); + } - var handles = _this.getHandleValues(_this.props); + if (prevProps.open !== this.props.open || prevState.open !== this.state.open) { + if (_isOpenControlled(this.props.open) && this.props.open === this.state.open) return; + this.updateOnPopperToggle(); + } + } + }, { + key: "render", + value: function render() { + var _this$state7 = this.state, + options = _this$state7.options, + async = _this$state7.async, + open = _this$state7.open, + searchTerm = _this$state7.searchTerm, + searchInit = _this$state7.searchInit, + loading = _this$state7.loading, + searchedOptionsLength = _this$state7.searchedOptionsLength, + tempSelected = _this$state7.tempSelected, + selectAll = _this$state7.selectAll, + triggerLabel = _this$state7.triggerLabel, + previousSelected = _this$state7.previousSelected, + scrollIndex = _this$state7.scrollIndex, + errorType = _this$state7.errorType; + var _this$props13 = this.props, + _this$props13$withSel = _this$props13.withSelectAll, + withSelectAll = _this$props13$withSel === void 0 ? true : _this$props13$withSel, + withCheckbox = _this$props13.withCheckbox; - var activeLabels = handles.map(function (handle) { - return handle.value.toFixed(_this.state.labelPrecision); - }); + var _this$props14 = this.props, + _this$props14$trigger = _this$props14.triggerOptions, + triggerOptions = _this$props14$trigger === void 0 ? {} : _this$props14$trigger; + _this$props14.selected; + var tabIndex = _this$props14.tabIndex, + rest = _objectWithoutProperties(_this$props14, _excluded$P); - var _loop = function _loop(i, offsetRatio) { - var offsetPercentage = formatPercentage(offsetRatio); - var style = { - left: offsetPercentage - }; - var active = !disabled && activeLabels.indexOf(i.toFixed(_this.state.labelPrecision)) !== -1; + var remainingOptionsLen = searchedOptionsLength - options.length; + var firstEnabledOption = tabIndex ? tabIndex : _isSelectAllPresent(searchTerm, remainingOptionsLen, withSelectAll, withCheckbox) ? 0 : options.findIndex(function (option) { + return !option.disabled; + }); + return /*#__PURE__*/React.createElement(DropdownList, _extends$2({ + listOptions: options, + inputRef: inputRef, + remainingOptions: remainingOptionsLen, + firstEnabledOption: firstEnabledOption, + loadingOptions: loading, + async: async, + searchInit: searchInit, + dropdownOpen: open, + searchTerm: searchTerm, + triggerLabel: triggerLabel, + tempSelected: tempSelected, + previousSelected: previousSelected, + selected: this.state.selected, + applyOptions: this.onApplyOptions, + cancelOptions: this.onCancelOptions, + toggleDropdown: this.onToggleDropdown, + onClearOptions: this.onClearOptions, + onSelect: this.onSelect, + selectAll: selectAll, + onSearchChange: this.updateSearchTerm, + onOptionSelect: this.onOptionSelect, + onSelectAll: this.onSelectAll, + customTrigger: triggerOptions.customTrigger, + scrollIndex: scrollIndex, + updateOptions: this.reload, + errorType: errorType + }, rest)); + } + }]); - var onClickHandler = function onClickHandler(event) { - if (!_this.props.disabled) { - var foundHandle = _this.nearestHandleForValue(_this.handleElements, function (handle) { - return handle.mouseEventClientOffset(event); - }); + return Dropdown; +}(React.Component); - if (foundHandle) { - foundHandle.changeValue(i); - } - } - }; +_defineProperty$1(Dropdown, "defaultProps", { + triggerOptions: {}, + options: [], + closeOnSelect: true, + staticLimit: 50, + searchDebounceDuration: 300 +}); - labels.push( /*#__PURE__*/React.createElement("div", { - onClick: onClickHandler, - className: 'Slider-label', - key: i, - style: style, - onMouseOver: function onMouseOver() { - return _this.handleLabelMouseOver(i); - }, - onMouseLeave: _this.handleLabelMouseLeave - }, /*#__PURE__*/React.createElement("span", { - className: 'Slider-ticks' - }), labelRenderer !== false && /*#__PURE__*/React.createElement(Text, { - size: "small", - appearance: active ? 'default' : 'disabled' - }, _this.formatLabel(i)))); - }; +var _excluded$O = ["appearance", "size", "children", "className", "color"]; +var sizeMap = { + s: 'h5', + m: 'h4', + l: 'h3', + xl: 'h2', + xxl: 'h1' +}; +var Heading = function Heading(props) { + var _classNames; - for (var i = min, offsetRatio = 0; i < max || approxEqual(i, max); i += labelStepSize, offsetRatio += stepSizeRatio) { - _loop(i, offsetRatio); - } + var appearance = props.appearance, + size = props.size, + children = props.children, + className = props.className, + color = props.color, + rest = _objectWithoutProperties(props, _excluded$O); - return labels; - }); + var classes = classnames((_classNames = { + Heading: true + }, _defineProperty$1(_classNames, "Heading--".concat(size), size), _defineProperty$1(_classNames, "Heading--".concat(appearance), !color && appearance), _defineProperty$1(_classNames, "color-".concat(color), color), _classNames), className); + return /*#__PURE__*/React.createElement(Link$1, _extends$2({ + "data-test": "DesignSystem-Heading" + }, rest, { + className: classes, + componentType: sizeMap[size] + }), children); +}; +Heading.displayName = 'Heading'; +Heading.defaultProps = { + appearance: 'default', + size: 'm' +}; - _defineProperty$2(_assertThisInitialized$2(_this), "renderTrackFill", function (index, start, end) { - var _classNames; +var _excluded$N = ["className", "iconType"]; +var ActionButton$1 = function ActionButton(props) { + var _classNames; - var _sort = [_this.getOffsetRatio(start.value), _this.getOffsetRatio(end.value)].sort(function (left, right) { - return left - right; - }), - _sort2 = _slicedToArray(_sort, 2), - startRatio = _sort2[0], - endRatio = _sort2[1]; + var className = props.className, + iconType = props.iconType, + rest = _objectWithoutProperties(props, _excluded$N); - var startOffset = Number((startRatio * 100).toFixed(2)); - var endOffset = Number(((1 - endRatio) * 100).toFixed(2)); - var width = "".concat(100 - endOffset - startOffset, "%"); - var orientationStyle = { - width: width - }; + var iconClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'ActionButton', true), _defineProperty$1(_classNames, "".concat(className), className), _classNames)); + return /*#__PURE__*/React.createElement(Icon, _extends$2({ + className: iconClass, + type: iconType, + "data-test": "DesignSystem-Input-ActionButton" + }, rest)); +}; +ActionButton$1.displayName = 'ActionButton'; +ActionButton$1.defaultProps = { + size: 16, + type: 'rounded' +}; - var style = _objectSpread2({}, orientationStyle); +var _excluded$M = ["size", "type", "minWidth", "defaultValue", "name", "placeholder", "value", "icon", "inlineLabel", "required", "error", "info", "onChange", "onClick", "onClear", "onBlur", "onFocus", "onPaste", "actionIcon", "className", "autoFocus", "disabled", "readOnly", "iconType"]; +var sizeMapping$2 = { + tiny: 12, + regular: 16, + large: 20 +}; +/** + * ###### Input has two types: + * - [Controlled Input](https://reactjs.org/docs/forms.html#controlled-components) + * - [Uncontrolled Input](https://reactjs.org/docs/uncontrolled-components.html) + */ - var fillTrack = _this.getTrackFill(start, end); +var Input = /*#__PURE__*/React.forwardRef(function (props, forwardedRef) { + var _classNames, _classNames2, _classNames3, _classNames4; - var classes = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Slider-progress', true), _defineProperty$2(_classNames, 'Slider-progress--disabled', _this.props.disabled), _defineProperty$2(_classNames, 'Slider-progress--inRange', fillTrack), _defineProperty$2(_classNames, 'Slider-progress--inRangeDisabled', fillTrack && _this.props.disabled), _classNames)); - return /*#__PURE__*/React.createElement("div", { - key: "track-".concat(index), - className: classes, - style: style - }); - }); + var _props$size = props.size, + size = _props$size === void 0 ? 'regular' : _props$size, + _props$type = props.type, + type = _props$type === void 0 ? 'text' : _props$type, + _props$minWidth = props.minWidth, + minWidth = _props$minWidth === void 0 ? type !== 'number' ? 256 : undefined : _props$minWidth, + defaultValue = props.defaultValue, + name = props.name, + placeholder = props.placeholder, + value = props.value, + icon = props.icon, + inlineLabel = props.inlineLabel, + required = props.required, + error = props.error, + info = props.info, + onChange = props.onChange, + onClick = props.onClick, + onClear = props.onClear, + onBlur = props.onBlur, + onFocus = props.onFocus, + onPaste = props.onPaste, + actionIcon = props.actionIcon, + className = props.className, + autoFocus = props.autoFocus, + disabled = props.disabled, + readOnly = props.readOnly, + iconType = props.iconType, + rest = _objectWithoutProperties(props, _excluded$M); - _defineProperty$2(_assertThisInitialized$2(_this), "renderTracks", function () { - var trackStops = _this.getHandleValues(_this.props); + var ref = React.useRef(null); - trackStops.push({ - value: _this.props.max - }); - var previous = { - value: _this.props.min || 0 - }; - var handles = []; - trackStops.forEach(function (track, index) { - var current = track; - handles.push(_this.renderTrackFill(index, previous, current)); - previous = current; - }); - return handles; - }); + var _React$useState = React.useState(!value), + _React$useState2 = _slicedToArray(_React$useState, 2), + isInputBlank = _React$useState2[0], + setIsInputBlank = _React$useState2[1]; - _defineProperty$2(_assertThisInitialized$2(_this), "handleLabelMouseOver", function (value) { - _this.setState({ - hoveredLabelValue: value - }); - }); + React.useImperativeHandle(forwardedRef, function () { + return ref.current; + }); + React.useEffect(function () { + var _ref$current; - _defineProperty$2(_assertThisInitialized$2(_this), "handleLabelMouseLeave", function () { - _this.setState({ - hoveredLabelValue: undefined - }); + if (autoFocus) (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.focus({ + preventScroll: true }); + }, []); + var baseProps = extractBaseProps(props); + var classes = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Input', true), _defineProperty$1(_classNames, "Input--".concat(size), size), _defineProperty$1(_classNames, 'Input--disabled', disabled || readOnly), _defineProperty$1(_classNames, 'Input--error', error), _classNames), className); + var inputClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Input-input', true), _defineProperty$1(_classNames2, "Input-input--".concat(size), size), _classNames2)); + var leftIconClass = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Input-icon', true), _defineProperty$1(_classNames3, 'Input-icon--left', true), _defineProperty$1(_classNames3, 'Input-icon--inputBlank', isInputBlank), _defineProperty$1(_classNames3, 'Input-icon--error', error), _classNames3)); + var rightIconClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'Input-icon', true), _defineProperty$1(_classNames4, 'Input-iconWrapper--right', true), _classNames4)); + var trigger = /*#__PURE__*/React.createElement("div", { + className: rightIconClass // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex + , + tabIndex: 0 + }, /*#__PURE__*/React.createElement(Icon, { + name: 'info', + size: sizeMapping$2[size], + className: "Input-icon--right" + })); + return /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-InputWrapper", + className: classes, + style: { + minWidth: minWidth + }, + onClick: function onClick() { + var _ref$current2; - _this.state = { - labelPrecision: _this.getLabelPrecision(_this.props), - tickSize: 0, - tickSizeRatio: 0 - }; - return _this; - } + return (_ref$current2 = ref.current) === null || _ref$current2 === void 0 ? void 0 : _ref$current2.focus(); + }, + role: "presentation", + onBlur: function onBlur() { + var _ref$current3; - _createClass$1(MultiSlider, [{ - key: "getDerivedStateFromProps", - value: function getDerivedStateFromProps(props) { - return { - labelPrecision: this.getLabelPrecision(props) - }; + return setIsInputBlank(!((_ref$current3 = ref.current) !== null && _ref$current3 !== void 0 && _ref$current3.value)); } - }, { - key: "getSnapshotBeforeUpdate", - value: function getSnapshotBeforeUpdate(prevProps) { - var prevHandleProps = this.getHandleValues(prevProps); - var newHandleProps = this.getHandleValues(this.props); - - if (newHandleProps.length !== prevHandleProps.length) { - this.handleElements = []; - } + }, inlineLabel && /*#__PURE__*/React.createElement("div", { + className: "Input-inlineLabel" + }, /*#__PURE__*/React.createElement(Text, { + appearance: "subtle" + }, inlineLabel)), size !== 'tiny' && icon && /*#__PURE__*/React.createElement("div", { + className: leftIconClass + }, /*#__PURE__*/React.createElement(Icon, { + name: icon, + size: sizeMapping$2[size], + type: iconType + })), /*#__PURE__*/React.createElement("input", _extends$2({ + "data-test": "DesignSystem-Input" + }, baseProps, rest, { + ref: ref, + name: name, + type: type, + defaultValue: defaultValue, + placeholder: placeholder, + className: inputClass, + value: value, + required: required, + disabled: disabled, + readOnly: readOnly, + onChange: onChange, + onBlur: onBlur, + onClick: onClick, + onFocus: onFocus, + onPaste: onPaste + /** + *for readOnly: true, tab focus from input element is removed. Hence, its tabIndex is set to -1. + *For rest, "undefined" lets user agent(browser) use the default tabIndex. + */ + , + tabIndex: readOnly ? -1 : undefined + })), disabled ? '' : info ? /*#__PURE__*/React.createElement(Tooltip, { + position: "bottom", + tooltip: info + }, trigger) : actionIcon && (value || defaultValue) ? actionIcon : onClear && (value || defaultValue) && /*#__PURE__*/React.createElement("div", { + className: rightIconClass + }, /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-Input--closeIcon", + onClick: function onClick(e) { + var _ref$current4; - return null; - } - }, { - key: "componentDidMount", - value: function componentDidMount() { - this.updateTickSize(); - } - }, { - key: "nearestHandleForValue", - value: function nearestHandleForValue(handles, getOffset) { - return argMin(handles, function (handle) { - var offset = getOffset(handle); - var offsetValue = handle.clientToValue(offset); - var handleValue = handle.props.value; - return Math.abs(offsetValue - handleValue); + (_ref$current4 = ref.current) === null || _ref$current4 === void 0 ? void 0 : _ref$current4.focus({ + preventScroll: true }); - } - }, { - key: "render", - value: function render() { - var _classNames3, - _this2 = this; + onClear(e); + }, + name: 'close', + size: sizeMapping$2[size], + className: "Input-icon--right" + }))); +}); +Input.displayName = 'Input'; +Object.assign(Input, { + ActionButton: ActionButton$1 +}); - var _this$props3 = this.props, - label = _this$props3.label, - className = _this$props3.className; - var baseProps = extractBaseProps(this.props); - var SliderClass = classnames(_defineProperty$2({}, 'Slider', true), className); - var WrapperClass = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'Slider-wrapper', true), _defineProperty$2(_classNames3, 'Slider-wrapper--disabled', this.props.disabled), _classNames3)); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: SliderClass - }), label && /*#__PURE__*/React.createElement(Label, { - withInput: true - }, label), /*#__PURE__*/React.createElement("div", { - className: WrapperClass - }, /*#__PURE__*/React.createElement("div", { - className: "Slider-track", - ref: function ref(_ref3) { - return _this2.trackElement = _ref3; - }, - onMouseDown: this.maybeHandleTrackClick - }, this.renderTracks()), /*#__PURE__*/React.createElement("div", { - className: "Slider-axis" - }, this.renderLabels()), this.renderHandles())); - } - }]); +var _excluded$L = ["size", "defaultValue", "name", "placeholder", "icon", "prefix", "suffix", "error", "min", "max", "onChange", "onClick", "onBlur", "onFocus", "className", "autoFocus", "disabled", "readOnly", "value", "showActionButton", "onKeyDown", "iconType"]; +var sizeMapping$1 = { + regular: 16, + large: 20 +}; - return MultiSlider; -}(React.Component); +var capMin = function capMin() { + var min = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -Infinity; + var value = arguments.length > 1 ? arguments[1] : undefined; + return isNaN(min) || !min && min !== 0 || isNaN(value) || !value && value !== 0 ? value : Math.max(min, value); +}; -_defineProperty$2(MultiSlider, "defaultProps", { - labelStepSize: 1, - max: 10, - min: 0, - stepSize: 1, - labelRenderer: true -}); +var capMax = function capMax() { + var max = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : +Infinity; + var value = arguments.length > 1 ? arguments[1] : undefined; + return isNaN(max) || !max && max !== 0 || isNaN(value) || !value && value !== 0 ? value : Math.min(max, value); +}; +/** + * ###### MetricInput has two types: + * - [Controlled MetricInput](https://reactjs.org/docs/forms.html#controlled-components) + * - [Uncontrolled MetricInput](https://reactjs.org/docs/uncontrolled-components.html) + */ -_defineProperty$2(MultiSlider, "Handle", MultiSliderHandle); -var _excluded$e = ["value", "defaultValue", "onRelease", "onChange"]; -var Slider = function Slider(props) { - var valueProp = props.value, +var MetricInput = /*#__PURE__*/React.forwardRef(function (props, forwardedRef) { + var _classNames, _classNames2, _classNames3, _classNames4, _classNames5, _classNames6; + + var _props$size = props.size, + size = _props$size === void 0 ? 'regular' : _props$size, defaultValue = props.defaultValue, - onRelease = props.onRelease, + name = props.name, + placeholder = props.placeholder, + icon = props.icon, + prefix = props.prefix, + suffix = props.suffix, + error = props.error, + min = props.min, + max = props.max, onChange = props.onChange, - rest = _objectWithoutProperties$1(props, _excluded$e); + onClick = props.onClick, + onBlur = props.onBlur, + onFocus = props.onFocus, + className = props.className, + autoFocus = props.autoFocus, + disabled = props.disabled, + readOnly = props.readOnly, + valueProp = props.value, + _props$showActionButt = props.showActionButton, + showActionButton = _props$showActionButt === void 0 ? true : _props$showActionButt, + onKeyDown = props.onKeyDown, + iconType = props.iconType, + rest = _objectWithoutProperties(props, _excluded$L); - var _React$useState = React.useState(valueProp === undefined ? defaultValue : valueProp), + var ref = React.useRef(null); + var isUncontrolled = valueProp === undefined; + + var _React$useState = React.useState(valueProp || defaultValue), _React$useState2 = _slicedToArray(_React$useState, 2), value = _React$useState2[0], setValue = _React$useState2[1]; + React.useImperativeHandle(forwardedRef, function () { + return ref.current; + }); + React.useEffect(function () { + var _ref$current; + + if (autoFocus) (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.focus({ + preventScroll: true + }); + }, []); React.useEffect(function () { if (valueProp !== undefined) { setValue(valueProp); } }, [valueProp]); + var baseProps = extractBaseProps(props); + var classes = classnames((_classNames = {}, _defineProperty$1(_classNames, 'MetricInput', true), _defineProperty$1(_classNames, "MetricInput--".concat(size), size), _defineProperty$1(_classNames, 'MetricInput--disabled', disabled || readOnly), _defineProperty$1(_classNames, 'MetricInput--error', error), _classNames), className); + var inputClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'MetricInput-input', true), _defineProperty$1(_classNames2, "MetricInput-input--".concat(size), size), _defineProperty$1(_classNames2, "mr-4", !suffix && !showActionButton && size === 'regular'), _defineProperty$1(_classNames2, "mr-6", !suffix && !showActionButton && size === 'large'), _classNames2)); + var iconClass = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'MetricInput-icon', true), _defineProperty$1(_classNames3, "MetricInput-icon--".concat(size), size), _classNames3)); + var prefixClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'mr-4', size === 'regular'), _defineProperty$1(_classNames4, 'mr-5', size !== 'regular'), _classNames4)); + var suffixClass = classnames((_classNames5 = {}, _defineProperty$1(_classNames5, 'ml-4 mr-3', size === 'regular'), _defineProperty$1(_classNames5, 'mx-5', size !== 'regular'), _classNames5)); + var actionButton = classnames((_classNames6 = {}, _defineProperty$1(_classNames6, 'p-0', true), _defineProperty$1(_classNames6, "MetricInput-arrowIcon--".concat(size), size), _defineProperty$1(_classNames6, 'ml-3', true), _classNames6)); - var onChangeHandler = function onChangeHandler(newValue) { - if (valueProp === undefined) { - setValue(newValue); + var onChangeHandler = function onChangeHandler(e) { + if (isUncontrolled) { + setValue(e.target.value); } - if (onChange) onChange(newValue); + if (onChange) onChange(e); }; - return /*#__PURE__*/React.createElement(MultiSlider, rest, /*#__PURE__*/React.createElement(MultiSlider.Handle, { - value: value, - onChange: onChangeHandler, - onRelease: onRelease, - fillBefore: true - })); -}; -Slider.displayName = 'Slider'; -Slider.defaultProps = _objectSpread2(_objectSpread2({}, MultiSlider.defaultProps), {}, { - defaultValue: 0 -}); + var onArrowClick = function onArrowClick(e, direction) { + var _newValue$toString$sp; -var _excluded$d = ["value", "defaultValue", "onChange", "onRelease"]; -var RangeIndex; - -(function (RangeIndex) { - RangeIndex[RangeIndex["START"] = 0] = "START"; - RangeIndex[RangeIndex["END"] = 1] = "END"; -})(RangeIndex || (RangeIndex = {})); - -var RangeSlider = function RangeSlider(props) { - var valueProp = props.value, - defaultValue = props.defaultValue, - onChange = props.onChange, - onRelease = props.onRelease, - rest = _objectWithoutProperties$1(props, _excluded$d); - - var _React$useState = React.useState(valueProp === undefined ? defaultValue : valueProp), - _React$useState2 = _slicedToArray(_React$useState, 2), - value = _React$useState2[0], - setValue = _React$useState2[1]; - - React.useEffect(function () { - if (valueProp !== undefined) { - setValue(valueProp); - } - }, [valueProp]); + var newValue = Number(value || 0); + var decimalDigits = ((_newValue$toString$sp = newValue.toString().split('.')[1]) === null || _newValue$toString$sp === void 0 ? void 0 : _newValue$toString$sp.length) || 0; + var isValid = direction === 'down' ? min !== undefined && newValue > min || min === undefined : max !== undefined && newValue < max || max === undefined; + if (disabled || readOnly || !isValid) return; + newValue = direction === 'down' ? newValue - 1 : newValue + 1; + newValue = capMax(max, capMin(min, +newValue.toFixed(decimalDigits))); + if (isUncontrolled) setValue(newValue); - var onChangeHandler = function onChangeHandler(range) { - if (valueProp === undefined) { - setValue(range); + if (onChange) { + var syntheticEvent = Object.create(e, { + target: { + value: { + value: newValue + } + } + }); + onChange(syntheticEvent); } - - if (onChange) onChange(range); }; - return /*#__PURE__*/React.createElement(MultiSlider, _extends$3({ - onRangeChange: onChangeHandler, - onRangeRelease: onRelease - }, rest), /*#__PURE__*/React.createElement(MultiSlider.Handle, { - value: value[RangeIndex.START], - fillAfter: true - }), /*#__PURE__*/React.createElement(MultiSlider.Handle, { - value: value[RangeIndex.END] - })); -}; -RangeSlider.displayName = 'RangeSlider'; -RangeSlider.defaultProps = _objectSpread2(_objectSpread2({}, MultiSlider.defaultProps), {}, { - defaultValue: [0, 10] -}); - -var _excluded$c = ["appearance", "children", "className"]; -var Subheading = function Subheading(props) { - var appearance = props.appearance, - children = props.children, - className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$c); - - var classes = classnames(_defineProperty$2({ - Subheading: true - }, "Subheading--".concat(appearance), appearance), className); - return /*#__PURE__*/React.createElement(GenericText, _extends$3({ - "data-test": "DesignSystem-Subheading" - }, rest, { - className: classes, - componentType: 'h4' - }), children); -}; -Subheading.displayName = 'Subheading'; -Subheading.defaultProps = { - appearance: 'default' -}; - -var _excluded$b = ["size", "defaultChecked", "disabled", "onChange", "name", "value", "className", "appearance", "checked"]; - -/** - * ######Switch has two types: - * - [Controlled Switch](https://reactjs.org/docs/forms.html#controlled-components) - * - [Uncontrolled Switch](https://reactjs.org/docs/uncontrolled-components.html) - */ -var Switch = /*#__PURE__*/React.forwardRef(function (props, ref) { - var _classNames, _classNames2; - - var _props$size = props.size, - size = _props$size === void 0 ? 'regular' : _props$size, - defaultChecked = props.defaultChecked, - disabled = props.disabled, - onChange = props.onChange, - name = props.name, - value = props.value, - className = props.className; - props.appearance; - var checkedProp = props.checked, - rest = _objectWithoutProperties$1(props, _excluded$b); + var onKeyDownHandler = function onKeyDownHandler(e) { + switch (e.key) { + case 'e': + case 'E': + e.preventDefault(); + return; - var _React$useState = React.useState(checkedProp === undefined ? defaultChecked : checkedProp), - _React$useState2 = _slicedToArray(_React$useState, 2), - checked = _React$useState2[0], - setChecked = _React$useState2[1]; + case 'ArrowDown': + e.preventDefault(); + onArrowClick(e, 'down'); + return; - React.useEffect(function () { - if (checkedProp !== undefined) setChecked(checkedProp); - }, [checkedProp]); - var SwitchClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Switch', true), _defineProperty$2(_classNames, 'Switch--disabled', disabled), _defineProperty$2(_classNames, "Switch--".concat(size), size), _classNames), className); - var SwitchWrapper = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Switch-wrapper', true), _defineProperty$2(_classNames2, 'Switch-wrapper--disabled', disabled), _defineProperty$2(_classNames2, "Switch-wrapper--".concat(size), size), _defineProperty$2(_classNames2, 'Switch-wrapper--checked', checked), _defineProperty$2(_classNames2, 'Switch-wrapper--checkedDisabled', checked && disabled), _classNames2)); + case 'ArrowUp': + e.preventDefault(); + onArrowClick(e, 'up'); + return; + } + }; - var onChangeHandler = function onChangeHandler(event) { - if (checkedProp === undefined) setChecked(!checked); - if (onChange) onChange(event, !checked); + var handleKeyDown = function handleKeyDown(e) { + if (showActionButton) { + onKeyDownHandler(e); + } else e.preventDefault(); }; + var actionButtonSize = size === 'large' ? 'regular' : 'tiny'; return /*#__PURE__*/React.createElement("div", { - className: SwitchClass - }, /*#__PURE__*/React.createElement("input", _extends$3({}, rest, { - type: "checkbox", - defaultChecked: defaultChecked, - disabled: disabled, - onChange: onChangeHandler, - checked: checked, + "data-test": "DesignSystem-MetricInputWrapper", + className: classes, + onKeyDown: onKeyDown, + role: "presentation" + }, icon && /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-MetricInput--icon", + name: icon, + type: iconType, + size: sizeMapping$1[size], + appearance: !value ? 'disabled' : 'subtle', + className: iconClass + }), prefix && /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-MetricInput--prefix", + className: prefixClass, + size: size, + appearance: "subtle" + }, prefix), /*#__PURE__*/React.createElement("input", _extends$2({ + "data-test": "DesignSystem-MetricInput" + }, baseProps, rest, { + type: "number", ref: ref, name: name, + defaultValue: defaultValue, + placeholder: placeholder, + className: inputClass, value: value, - className: "Switch-input" - })), /*#__PURE__*/React.createElement("span", { - className: SwitchWrapper - })); + disabled: disabled, + readOnly: readOnly, + onChange: onChangeHandler, + onBlur: onBlur, + onClick: onClick, + onFocus: onFocus, + onKeyDown: handleKeyDown + })), suffix && /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-MetricInput--suffix", + className: suffixClass, + size: size, + appearance: "subtle" + }, suffix), showActionButton && /*#__PURE__*/React.createElement("div", { + className: "MetricInput-arrowIcons" + }, /*#__PURE__*/React.createElement(Button, { + type: "button", + icon: "keyboard_arrow_up", + size: actionButtonSize, + className: "".concat(actionButton, " mb-2"), + onClick: function onClick(e) { + return onArrowClick(e, 'up'); + }, + "data-test": "DesignSystem-MetricInput--upIcon" + }), /*#__PURE__*/React.createElement(Button, { + type: "button", + icon: "keyboard_arrow_down", + size: actionButtonSize, + className: actionButton, + onClick: function onClick(e) { + return onArrowClick(e, 'down'); + }, + "data-test": "DesignSystem-MetricInput--downIcon" + }))); }); -Switch.displayName = 'Switch'; +MetricInput.displayName = 'MetricInput'; -var _excluded$a = ["rows", "resize", "disabled", "name", "placeholder", "value", "defaultValue", "required", "error", "onChange", "onClick", "onBlur", "onFocus", "className"]; -var Textarea = /*#__PURE__*/React.forwardRef(function (props, ref) { - var _classNames; +var isEditable = function isEditable(mask, pos) { + return _typeof(mask[pos]) === 'object'; +}; +var getDefaultValue = function getDefaultValue(mask, placeholderChar) { + var val = ''; - var _props$rows = props.rows, - rows = _props$rows === void 0 ? 3 : _props$rows, - _props$resize = props.resize, - resize = _props$resize === void 0 ? true : _props$resize, - disabled = props.disabled, - name = props.name, - placeholder = props.placeholder, - value = props.value, + for (var i = 0; i < mask.length; i++) { + val += isEditable(mask, i) ? placeholderChar : mask[i]; + } + + return val; +}; + +var _excluded$K = ["mask", "value", "placeholderChar", "validators", "clearOnEmptyBlur", "defaultValue", "mask", "error", "caption", "required", "onChange", "onPaste", "onBlur", "onFocus", "onClear", "className", "id", "helpText"]; + +/** + * It works as Uncontrolled Input + * + * **Updated value can be passed** + */ +var InputMask = /*#__PURE__*/React.forwardRef(function (props, forwardRef) { + props.mask; + var valueProp = props.value, + _props$placeholderCha = props.placeholderChar, + placeholderChar = _props$placeholderCha === void 0 ? '_' : _props$placeholderCha, + _props$validators = props.validators, + validators = _props$validators === void 0 ? [] : _props$validators, + _props$clearOnEmptyBl = props.clearOnEmptyBlur, + clearOnEmptyBlur = _props$clearOnEmptyBl === void 0 ? true : _props$clearOnEmptyBl, defaultValue = props.defaultValue, - required = props.required, + mask = props.mask, error = props.error, + caption = props.caption, + required = props.required, onChange = props.onChange, - onClick = props.onClick, + onPaste = props.onPaste, onBlur = props.onBlur, onFocus = props.onFocus, + onClear = props.onClear, className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$a); - - var classes = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Textarea', true), _defineProperty$2(_classNames, 'Textarea--resize', resize), _defineProperty$2(_classNames, 'Textarea--error', error), _classNames), className); - return /*#__PURE__*/React.createElement("textarea", _extends$3({ - "data-test": "DesignSystem-Textarea" - }, rest, { - ref: ref, - name: name, - rows: rows, - placeholder: placeholder, - className: classes, - value: value, - defaultValue: defaultValue, - required: required, - disabled: disabled, - onChange: onChange, - onBlur: onBlur, - onClick: onClick, - onFocus: onFocus - })); -}); -Textarea.displayName = 'Textarea'; + id = props.id, + helpText = props.helpText, + rest = _objectWithoutProperties(props, _excluded$K); -var ActionButton = function ActionButton(props) { - var _classNames; + var isEditable = React.useCallback(function (pos) { + return _typeof(mask[pos]) === 'object'; + }, [mask]); + var getNewCursorPosition = React.useCallback(function (type, position) { + if (type === 'right') { + for (var i = position; i < mask.length; i++) { + if (isEditable(i)) return i; + } - var appearance = props.appearance, - label = props.label, - onClick = props.onClick; - var buttonClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Button', true), _defineProperty$2(_classNames, 'Button--tiny', true), _defineProperty$2(_classNames, 'Toast-actionButton', true), _defineProperty$2(_classNames, "Toast-actionButton--".concat(appearance), appearance), _classNames)); + return mask.length; + } - var onClickHandler = function onClickHandler(e) { - e.preventDefault(); - if (onClick) onClick(e); - }; + if (type === 'left') { + for (var _i = position; _i >= 0; _i--) { + if (isEditable(_i - 1)) return _i; + } - return /*#__PURE__*/React.createElement("button", { - className: buttonClass, - onClick: onClickHandler - }, /*#__PURE__*/React.createElement(Text, { - appearance: "white" - }, label)); -}; + return 0; + } -ActionButton.displayName = 'ActionButton'; -ActionButton.defaultProps = { - appearance: 'default' -}; + return position; + }, [mask, isEditable]); + var getDefaultSelection = React.useCallback(function () { + var pos = getNewCursorPosition('right', 0); + return { + start: pos, + end: pos + }; + }, [getNewCursorPosition]); + var getPlaceholderValue = React.useCallback(function () { + var start = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0; + var end = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : mask.length - 1; + return getDefaultValue(mask, placeholderChar).slice(start, end + 1); + }, [mask, placeholderChar]); + var defaultPlaceholderValue = React.useMemo(function () { + return getPlaceholderValue(); + }, [getPlaceholderValue]); + var defaultSelection = React.useMemo(function () { + return getDefaultSelection(); + }, [getDefaultSelection]); + var ref = React.useRef(null); + var deferId = React.useRef(); + var selectionPos = React.useRef(defaultSelection); + var newSelectionPos = React.useRef(0); -var Toast = function Toast(props) { - var _classNames, _classNames2, _classNames4, _classNames5; + var _React$useState = React.useState(defaultValue || valueProp || ''), + _React$useState2 = _slicedToArray(_React$useState, 2), + value = _React$useState2[0], + setValue = _React$useState2[1]; - var appearance = props.appearance, - title = props.title, - message = props.message, - actions = props.actions, - onClose = props.onClose, - className = props.className; - var baseProps = extractBaseProps(props); - var wrapperClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Toast', true), _defineProperty$2(_classNames, 'Toast--withMessage', message), _defineProperty$2(_classNames, "Toast--".concat(appearance), appearance), _classNames), className); - var IconMapping = { - info: 'info', - success: 'check_circle', - alert: 'error', - warning: 'error' - }; - var icon = IconMapping[appearance]; - var titleClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Toast-title', true), _defineProperty$2(_classNames2, 'Toast-title--withMessage', message), _classNames2)); + React.useImperativeHandle(forwardRef, function () { + return ref.current; + }); + React.useEffect(function () { + setValue(valueProp || ''); + }, [valueProp]); + React.useEffect(function () { + setCursorPosition(newSelectionPos.current); + }, [value]); + var getSelectionLength = React.useCallback(function (val) { + return Math.abs(val.end - val.start); + }, []); + var getCurrSelection = React.useCallback(function () { + var _ref$current, _ref$current2; - var iconClass = function iconClass(align) { - var _classNames3; + return { + start: ((_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.selectionStart) || 0, + end: ((_ref$current2 = ref.current) === null || _ref$current2 === void 0 ? void 0 : _ref$current2.selectionEnd) || 0 + }; + }, [ref.current]); + var setSelectionRange_compatible_types = ['text', 'password', 'tel', 'url']; + var setSelectionPos = React.useCallback(function (pos) { + if (ref.current) { + var el = ref.current; + var start = Math.min(pos.start, pos.end); + var end = Math.max(pos.start, pos.end); - return classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'Toast-icon', true), _defineProperty$2(_classNames3, "Toast-icon--".concat(align), align), _defineProperty$2(_classNames3, "Toast-icon--".concat(appearance), appearance), _classNames3)); - }; + if (setSelectionRange_compatible_types.includes(el.type)) { + el.setSelectionRange(start, end); + } else { + var el_type = el.type; + el.type = 'text'; + el.setSelectionRange(start, end); + el.type = el_type; + } + } + }, [ref.current]); + var setCursorPosition = React.useCallback(function (val) { + return setSelectionPos({ + start: val, + end: val + }); + }, [setSelectionPos]); + var insertAtIndex = React.useCallback(function (currValue, index) { + var iterator = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0; + var newValue = ''; + var newIndex = index + 1; + var newIterator = iterator; - var textClass = classnames((_classNames4 = {}, _defineProperty$2(_classNames4, 'Toast-text', true), _defineProperty$2(_classNames4, "Toast-text--".concat(appearance), appearance), _classNames4)); - var headingClass = classnames((_classNames5 = {}, _defineProperty$2(_classNames5, 'Toast-heading', true), _defineProperty$2(_classNames5, "Toast-heading--".concat(appearance), appearance), _classNames5)); + if (index >= mask.length) { + return newValue; + } - var onCloseHandler = function onCloseHandler() { - if (onClose) onClose(); - }; + if (iterator >= currValue.length) { + selectionPos.current = { + start: index, + end: index + }; + return newValue; + } - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: wrapperClass - }), icon && /*#__PURE__*/React.createElement(Icon, { - name: icon, - className: iconClass('left') - }), /*#__PURE__*/React.createElement("div", { - className: "Toast-body" - }, /*#__PURE__*/React.createElement("div", { - className: titleClass - }, /*#__PURE__*/React.createElement(Heading, { - size: "s", - className: headingClass, - appearance: appearance !== 'warning' ? 'white' : 'default' - }, title), /*#__PURE__*/React.createElement(Icon, { - name: 'close', - className: iconClass('right'), - onClick: onCloseHandler, - appearance: appearance !== 'warning' ? 'white' : 'default' - })), message && /*#__PURE__*/React.createElement(Text, { - appearance: appearance !== 'warning' ? 'white' : 'default', - className: textClass - }, message), !!(actions !== null && actions !== void 0 && actions.length) && /*#__PURE__*/React.createElement("div", { - className: "Toast-actions" - }, actions.slice(0, 2).map(function (action, index) { - return /*#__PURE__*/React.createElement(ActionButton, { - key: index, - label: action.label, - appearance: appearance, - onClick: action.onClick - }); - })))); -}; -Toast.displayName = 'Toast'; -Toast.defaultProps = { - appearance: 'default' -}; + var m = mask[index]; -var objectWithoutPropertiesLoose = createCommonjsModule(function (module) { -function _objectWithoutPropertiesLoose(source, excluded) { - if (source == null) return {}; - var target = {}; - var sourceKeys = Object.keys(source); - var key, i; + if (isEditable(index)) { + if (currValue[iterator].match(m)) { + newValue += currValue[iterator]; + } else { + newValue += placeholderChar; + } - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - target[key] = source[key]; - } + newIterator++; + } else { + newValue += m; + } - return target; -} + newValue += insertAtIndex(currValue, newIndex, newIterator); + return newValue; + }, [mask, placeholderChar, isEditable]); + var updateSelection = React.useCallback(function () { + selectionPos.current = getCurrSelection(); + deferId.current = window.requestAnimationFrame(updateSelection); + }, [selectionPos.current, getCurrSelection]); -module.exports = _objectWithoutPropertiesLoose; -module.exports["default"] = module.exports, module.exports.__esModule = true; -}); + var matchSeparatorValue = function matchSeparatorValue(currValue) { + var separator = props.placeholder || 'dd/mm/yyyy'; -var _objectWithoutPropertiesLoose$1 = unwrapExports(objectWithoutPropertiesLoose); + if (separator.substring(0, 4) === 'yyyy') { + return currValue && currValue[4] === separator[4] && currValue[7] === separator[7]; + } -var _extends_1 = createCommonjsModule(function (module) { -function _extends() { - module.exports = _extends = Object.assign || function (target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; + return currValue && currValue[2] === separator[2] && currValue[5] === separator[5]; + }; - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } - } + var isSameFormat = function isSameFormat(currValue, inputLength) { + var value = currValue.substring(0, inputLength); + + if (inputLength === 23) { + var date = value.split(' - '); + var startVal = date[0]; + var endVal = date[1]; + return matchSeparatorValue(startVal) && matchSeparatorValue(endVal); } - return target; + return matchSeparatorValue(value); }; - module.exports["default"] = module.exports, module.exports.__esModule = true; - return _extends.apply(this, arguments); -} - -module.exports = _extends; -module.exports["default"] = module.exports, module.exports.__esModule = true; -}); + var onPasteHandler = function onPasteHandler(e) { + var _e$clipboardData; -var _extends$2 = unwrapExports(_extends_1); + e.preventDefault(); + var pastedValue = (_e$clipboardData = e.clipboardData) === null || _e$clipboardData === void 0 ? void 0 : _e$clipboardData.getData('Text'); + var sameFormat = isSameFormat(pastedValue, pastedValue.length); + var isValidDate = isValid(validators, pastedValue); -var setPrototypeOf = createCommonjsModule(function (module) { -function _setPrototypeOf(o, p) { - module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { - o.__proto__ = p; - return o; + if (sameFormat && onPaste && isValidDate) { + onPaste(e, pastedValue); + setValue(pastedValue); + } }; - module.exports["default"] = module.exports, module.exports.__esModule = true; - return _setPrototypeOf(o, p); -} + var onChangeHandler = React.useCallback(function (e) { + var _e$currentTarget; -module.exports = _setPrototypeOf; -module.exports["default"] = module.exports, module.exports.__esModule = true; -}); + var inputVal = (_e$currentTarget = e.currentTarget) === null || _e$currentTarget === void 0 ? void 0 : _e$currentTarget.value; + var currSelection = getCurrSelection(); + var start = Math.min(selectionPos.current.start, currSelection.start); + var end = currSelection.end; + var cursorPosition = start; + var enteredVal = ''; + var updatedVal = ''; + var removedLength = 0; + var insertedStringLength = 0; + enteredVal = inputVal.slice(start, end); + updatedVal = insertAtIndex(enteredVal, start); + var oldValue = value; -unwrapExports(setPrototypeOf); + if (oldValue.length === 0 && (id === 'parent-TimePicker' || id === 'parent-DatePicker')) { + oldValue = defaultPlaceholderValue; + } -var inheritsLoose = createCommonjsModule(function (module) { -function _inheritsLoose(subClass, superClass) { - subClass.prototype = Object.create(superClass.prototype); - subClass.prototype.constructor = subClass; - setPrototypeOf(subClass, superClass); -} + insertedStringLength = updatedVal.length; -module.exports = _inheritsLoose; -module.exports["default"] = module.exports, module.exports.__esModule = true; -}); + if (currSelection.end > selectionPos.current.end) { + removedLength = insertedStringLength ? getSelectionLength(selectionPos.current) : 0; + } else if (inputVal.length < oldValue.length) { + removedLength = oldValue.length - inputVal.length; + } -var _inheritsLoose = unwrapExports(inheritsLoose); + var maskedVal = oldValue.split(''); -var assertThisInitialized = createCommonjsModule(function (module) { -function _assertThisInitialized(self) { - if (self === void 0) { - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); - } + for (var i = 0; i < insertedStringLength; i++) { + maskedVal[start + i] = updatedVal[i]; + } - return self; -} + for (var _i2 = 0; _i2 < removedLength; _i2++) { + var index$1 = start + insertedStringLength + _i2; + maskedVal[index$1] = getPlaceholderValue(index$1, index$1); + } -module.exports = _assertThisInitialized; -module.exports["default"] = module.exports, module.exports.__esModule = true; -}); + var enteredValue = maskedVal.slice(0, mask.length).join(''); -var _assertThisInitialized$1 = unwrapExports(assertThisInitialized); + if (updatedVal !== placeholderChar && updatedVal !== '' && !updatedVal.includes(placeholderChar) && isValid(validators, enteredValue)) { + cursorPosition += insertedStringLength; + } -var defineProperty$3 = createCommonjsModule(function (module) { -function _defineProperty(obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } + var newCursorPosition = getNewCursorPosition(removedLength ? 'left' : 'right', cursorPosition); - return obj; -} + if (removedLength === 1 && !updatedVal.length && !isEditable(cursorPosition) && newCursorPosition > 0) { + cursorPosition = newCursorPosition; + cursorPosition--; + maskedVal[cursorPosition] = placeholderChar; + } else if (removedLength !== 1) { + cursorPosition = newCursorPosition; + } -module.exports = _defineProperty; -module.exports["default"] = module.exports, module.exports.__esModule = true; -}); + var newValue = maskedVal.slice(0, mask.length).join(''); + newSelectionPos.current = cursorPosition; -var _defineProperty$1 = unwrapExports(defineProperty$3); + if (newValue !== oldValue && isValid(validators, newValue)) { + if (defaultPlaceholderValue === '__:__ _M') { + setValue(newValue.toUpperCase()); + onChange === null || onChange === void 0 ? void 0 : onChange(e, newValue.toUpperCase()); + } else { + setValue(newValue); + onChange === null || onChange === void 0 ? void 0 : onChange(e, newValue); + } + } else { + window.requestAnimationFrame(function () { + return setCursorPosition(newSelectionPos.current); + }); + } + }, [selectionPos.current, validators, getCurrSelection, insertAtIndex, getSelectionLength, getPlaceholderValue, getNewCursorPosition, isEditable, setCursorPosition, setValue, onChange]); + var onBlurHandler = React.useCallback(function (e) { + var inputVal = e.currentTarget.value; -var toStr$4 = Object.prototype.toString; - -var isArguments$1 = function isArguments(value) { - var str = toStr$4.call(value); - var isArgs = str === '[object Arguments]'; - if (!isArgs) { - isArgs = str !== '[object Array]' && - value !== null && - typeof value === 'object' && - typeof value.length === 'number' && - value.length >= 0 && - toStr$4.call(value.callee) === '[object Function]'; - } - return isArgs; -}; - -var keysShim$1; -if (!Object.keys) { - // modified from https://github.com/es-shims/es5-shim - var has$1 = Object.prototype.hasOwnProperty; - var toStr$3 = Object.prototype.toString; - var isArgs = isArguments$1; // eslint-disable-line global-require - var isEnumerable = Object.prototype.propertyIsEnumerable; - var hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString'); - var hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype'); - var dontEnums = [ - 'toString', - 'toLocaleString', - 'valueOf', - 'hasOwnProperty', - 'isPrototypeOf', - 'propertyIsEnumerable', - 'constructor' - ]; - var equalsConstructorPrototype = function (o) { - var ctor = o.constructor; - return ctor && ctor.prototype === o; - }; - var excludedKeys = { - $applicationCache: true, - $console: true, - $external: true, - $frame: true, - $frameElement: true, - $frames: true, - $innerHeight: true, - $innerWidth: true, - $onmozfullscreenchange: true, - $onmozfullscreenerror: true, - $outerHeight: true, - $outerWidth: true, - $pageXOffset: true, - $pageYOffset: true, - $parent: true, - $scrollLeft: true, - $scrollTop: true, - $scrollX: true, - $scrollY: true, - $self: true, - $webkitIndexedDB: true, - $webkitStorageInfo: true, - $window: true - }; - var hasAutomationEqualityBug = (function () { - /* global window */ - if (typeof window === 'undefined') { return false; } - for (var k in window) { - try { - if (!excludedKeys['$' + k] && has$1.call(window, k) && window[k] !== null && typeof window[k] === 'object') { - try { - equalsConstructorPrototype(window[k]); - } catch (e) { - return true; - } - } - } catch (e) { - return true; - } - } - return false; - }()); - var equalsConstructorPrototypeIfNotBuggy = function (o) { - /* global window */ - if (typeof window === 'undefined' || !hasAutomationEqualityBug) { - return equalsConstructorPrototype(o); - } - try { - return equalsConstructorPrototype(o); - } catch (e) { - return false; - } - }; - - keysShim$1 = function keys(object) { - var isObject = object !== null && typeof object === 'object'; - var isFunction = toStr$3.call(object) === '[object Function]'; - var isArguments = isArgs(object); - var isString = isObject && toStr$3.call(object) === '[object String]'; - var theKeys = []; - - if (!isObject && !isFunction && !isArguments) { - throw new TypeError('Object.keys called on a non-object'); - } - - var skipProto = hasProtoEnumBug && isFunction; - if (isString && object.length > 0 && !has$1.call(object, 0)) { - for (var i = 0; i < object.length; ++i) { - theKeys.push(String(i)); - } - } - - if (isArguments && object.length > 0) { - for (var j = 0; j < object.length; ++j) { - theKeys.push(String(j)); - } - } else { - for (var name in object) { - if (!(skipProto && name === 'prototype') && has$1.call(object, name)) { - theKeys.push(String(name)); - } - } - } - - if (hasDontEnumBug) { - var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object); - - for (var k = 0; k < dontEnums.length; ++k) { - if (!(skipConstructor && dontEnums[k] === 'constructor') && has$1.call(object, dontEnums[k])) { - theKeys.push(dontEnums[k]); - } - } - } - return theKeys; - }; -} -var implementation$4 = keysShim$1; - -var slice$1 = Array.prototype.slice; + if (clearOnEmptyBlur) { + if (inputVal === defaultPlaceholderValue) { + setValue(''); + inputVal = ''; + } + } + onBlur === null || onBlur === void 0 ? void 0 : onBlur(e, inputVal); + if (deferId.current) window.cancelAnimationFrame(deferId.current); + }, [clearOnEmptyBlur, deferId.current, getPlaceholderValue, setValue, onBlur]); + var onClearHandler = React.useCallback(function (e) { + newSelectionPos.current = defaultSelection.start; + setValue(defaultPlaceholderValue); + onClear === null || onClear === void 0 ? void 0 : onClear(e); + }, [setValue, getPlaceholderValue, setCursorPosition, getDefaultSelection, onClear]); + var onFocusHandler = React.useCallback(function (e) { + deferId.current = window.requestAnimationFrame(updateSelection); -var origKeys = Object.keys; -var keysShim = origKeys ? function keys(o) { return origKeys(o); } : implementation$4; + if (!value) { + newSelectionPos.current = defaultSelection.start; + setValue(getPlaceholderValue()); + } -var originalKeys = Object.keys; + onFocus === null || onFocus === void 0 ? void 0 : onFocus(e); + }, [deferId.current, value, updateSelection, setValue, setSelectionPos, onFocus]); + var classes = React.useMemo(function () { + return classnames({ + 'd-flex flex-column flex-grow-1': true + }, className); + }, [className]); + var isValueEqualPlaceholder = value === defaultPlaceholderValue; + return /*#__PURE__*/React.createElement("div", { + className: classes, + "data-test": "DesignSystem-InputMask--Wrapper" + }, /*#__PURE__*/React.createElement(Input, _extends$2({}, rest, { + value: value, + error: error, + required: required, + onFocus: onFocusHandler, + onChange: onChangeHandler + /** + * input right cross icon should be visible only + * when user provides value + */ + , + onClear: !isValueEqualPlaceholder ? onClearHandler : undefined, + onBlur: onBlurHandler, + onPaste: onPasteHandler, + autoComplete: 'off', + ref: ref + })), /*#__PURE__*/React.createElement(HelpText, { + message: error ? caption : helpText, + error: error + })); +}); +InputMask.displayName = 'InputMask'; // we are adding a new property which is not present in default interface +// we could have explicitly added the interface above with definition +// but then it would force us to marks utils as optional +// as we cannot add new properties by defining the InputMask +// that would cause user to use `!` everywhere or check for utils -keysShim.shim = function shimObjectKeys() { - if (Object.keys) { - var keysWorksWithArguments = (function () { - // Safari 5.0 bug - var args = Object.keys(arguments); - return args && args.length === arguments.length; - }(1, 2)); - if (!keysWorksWithArguments) { - Object.keys = function keys(object) { // eslint-disable-line func-name-matching - if (isArguments$1(object)) { - return originalKeys(slice$1.call(object)); - } - return originalKeys(object); - }; - } - } else { - Object.keys = keysShim; - } - return Object.keys || keysShim; +InputMask.utils = { + getDefaultValue: getDefaultValue }; +var X = InputMask; -var objectKeys = keysShim; - -/* eslint complexity: [2, 18], max-statements: [2, 33] */ -var shams = function hasSymbols() { - if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; } - if (typeof Symbol.iterator === 'symbol') { return true; } - - var obj = {}; - var sym = Symbol('test'); - var symObj = Object(sym); - if (typeof sym === 'string') { return false; } +var _excluded$J = ["required", "optional", "withInput", "disabled", "children", "className", "info"]; - if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; } - if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; } +/** + * *NOTE: Extends props with HTMLProps* + */ +var Label = function Label(props) { + var _classNames; - // temp disabled per https://github.com/ljharb/object.assign/issues/17 - // if (sym instanceof Symbol) { return false; } - // temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4 - // if (!(symObj instanceof Symbol)) { return false; } + var required = props.required, + optional = props.optional, + withInput = props.withInput, + disabled = props.disabled, + children = props.children, + className = props.className, + info = props.info, + rest = _objectWithoutProperties(props, _excluded$J); - // if (typeof Symbol.prototype.toString !== 'function') { return false; } - // if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; } + var baseProps = extractBaseProps(props); + var LabelClass = classnames((_classNames = { + Label: true + }, _defineProperty$1(_classNames, 'Label--withInput', withInput), _defineProperty$1(_classNames, 'Label--optional', optional), _classNames), className); + var classes = classnames({ + 'Label-text': true, + 'Label--disabled': disabled + }); - var symVal = 42; - obj[sym] = symVal; - for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop - if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; } + var renderInfo = function renderInfo() { + var isRequired = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; + var isOptional = arguments.length > 1 ? arguments[1] : undefined; - if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; } + if (isRequired) { + return /*#__PURE__*/React.createElement("span", { + className: "Label-requiredIndicator", + "data-test": "DesignSystem-Label--RequiredIndicator" + }); + } - var syms = Object.getOwnPropertySymbols(obj); - if (syms.length !== 1 || syms[0] !== sym) { return false; } + if (isOptional) { + return /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-Label--OptionalText", + appearance: "subtle", + className: "Label-optionalText" + }, "(optional)"); + } - if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; } + return null; + }; - if (typeof Object.getOwnPropertyDescriptor === 'function') { - var descriptor = Object.getOwnPropertyDescriptor(obj, sym); - if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; } - } + var renderIndicator = function renderIndicator(info) { + return /*#__PURE__*/React.createElement(Tooltip, { + tooltip: info + }, /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-Label--Info", + name: "info", + size: 12, + appearance: "subtle", + className: "ml-3 cursor-pointer d-flex align-items-center" + })); + }; - return true; + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Label" + }, baseProps, { + className: LabelClass + }), /*#__PURE__*/React.createElement(Link$1, _extends$2({ + "data-test": "DesignSystem-Label--Text", + className: classes, + componentType: "label" + }, rest), children, renderInfo(required, optional), info && renderIndicator(info))); }; +Label.displayName = 'Label'; -var origSymbol = typeof Symbol !== 'undefined' && Symbol; +var Caption = function Caption(props) { + var _classNames; - -var hasSymbols$3 = function hasNativeSymbols() { - if (typeof origSymbol !== 'function') { return false; } - if (typeof Symbol !== 'function') { return false; } - if (typeof origSymbol('foo') !== 'symbol') { return false; } - if (typeof Symbol('bar') !== 'symbol') { return false; } - - return shams(); + var error = props.error, + hide = props.hide, + withInput = props.withInput, + children = props.children, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classnames((_classNames = { + Caption: true + }, _defineProperty$1(_classNames, 'Caption--hidden', hide), _defineProperty$1(_classNames, 'Caption--withInput', withInput), _classNames), className); + var errorIconClass = classnames(_defineProperty$1({}, 'Caption-icon', true)); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: classes, + "data-test": "DesignSystem-Caption" + }), error && /*#__PURE__*/React.createElement("div", { + className: errorIconClass + }, /*#__PURE__*/React.createElement(Icon, { + size: 14, + name: 'error', + appearance: 'alert' + })), /*#__PURE__*/React.createElement(Text, { + appearance: error ? 'destructive' : 'subtle', + size: "small", + weight: "medium" + }, "".concat(children))); }; +Caption.displayName = 'Caption'; -/* eslint no-invalid-this: 1 */ +var Legend = function Legend(props) { + var iconAppearance = props.iconAppearance, + iconSize = props.iconSize, + labelAppearance = props.labelAppearance, + children = props.children, + labelWeight = props.labelWeight, + _onMouseEnter = props.onMouseEnter, + _onMouseLeave = props.onMouseLeave, + _onClick = props.onClick, + className = props.className; + var baseProps = extractBaseProps(props); + var legendClass = classnames(_defineProperty$1({}, 'Legend', true), className); + var styles = { + background: "var(--".concat(iconAppearance, ")"), + height: "".concat(iconSize, "px"), + width: "".concat(iconSize, "px") + }; // TODO(a11y): fix accessibility -var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible '; -var slice = Array.prototype.slice; -var toStr$2 = Object.prototype.toString; -var funcType = '[object Function]'; + /* eslint-disable */ -var implementation$3 = function bind(that) { - var target = this; - if (typeof target !== 'function' || toStr$2.call(target) !== funcType) { - throw new TypeError(ERROR_MESSAGE + target); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: legendClass, + onClick: function onClick(e) { + return _onClick && _onClick(e); + }, + onMouseEnter: function onMouseEnter(e) { + return _onMouseEnter && _onMouseEnter(e); + }, + onMouseLeave: function onMouseLeave(e) { + return _onMouseLeave && _onMouseLeave(e); } - var args = slice.call(arguments, 1); - - var bound; - var binder = function () { - if (this instanceof bound) { - var result = target.apply( - this, - args.concat(slice.call(arguments)) - ); - if (Object(result) === result) { - return result; - } - return this; - } else { - return target.apply( - that, - args.concat(slice.call(arguments)) - ); - } - }; + }), /*#__PURE__*/React.createElement("span", { + className: "Legend-icon", + style: styles + }), /*#__PURE__*/React.createElement(Text, { + appearance: labelAppearance, + weight: labelWeight + }, children)); +}; +Legend.displayName = 'Legend'; +Legend.defaultProps = { + iconAppearance: 'inverse', + iconSize: 16 +}; - var boundLength = Math.max(0, target.length - args.length); - var boundArgs = []; - for (var i = 0; i < boundLength; i++) { - boundArgs.push('$' + i); +var Editable = function Editable(props) { + var className = props.className, + onChange = props.onChange, + editing = props.editing, + children = props.children; + var baseProps = extractBaseProps(props); + var EditableClass = classnames(_defineProperty$1({}, 'Editable', true), className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Editable" + }, baseProps, { + className: EditableClass + }), /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-EditableWrapper", + onClick: function onClick() { + return onChange('edit'); + }, + onMouseEnter: function onMouseEnter() { + return !editing && onChange('hover'); + }, + onMouseLeave: function onMouseLeave() { + return !editing && onChange('default'); } + }, children)); +}; +Editable.displayName = 'Editable'; - bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder); +var _excluded$I = ["onChange", "onClose"]; +var EditableDropdown = function EditableDropdown(props) { + var _classNames2; - if (target.prototype) { - var Empty = function Empty() {}; - Empty.prototype = target.prototype; - bound.prototype = new Empty(); - Empty.prototype = null; - } + var placeholder = props.placeholder, + dropdownOptions = props.dropdownOptions, + className = props.className, + customTriggerRenderer = props.customTriggerRenderer; - return bound; -}; + var onDropdownChange = dropdownOptions.onChange, + onDropdownClose = dropdownOptions.onClose, + rest = _objectWithoutProperties(dropdownOptions, _excluded$I); -var functionBind = Function.prototype.bind || implementation$3; + var _React$useState = React.useState(placeholder), + _React$useState2 = _slicedToArray(_React$useState, 2), + label = _React$useState2[0], + setLabel = _React$useState2[1]; -var src = functionBind.call(Function.call, Object.prototype.hasOwnProperty); + var _React$useState3 = React.useState(false), + _React$useState4 = _slicedToArray(_React$useState3, 2), + editing = _React$useState4[0], + setEditing = _React$useState4[1]; -var undefined$1; + var _React$useState5 = React.useState(false), + _React$useState6 = _slicedToArray(_React$useState5, 2), + showComponent = _React$useState6[0], + setShowComponent = _React$useState6[1]; -var $SyntaxError = SyntaxError; -var $Function = Function; -var $TypeError$2 = TypeError; + var CompClass = classnames(_defineProperty$1({}, 'EditableDropdown', true), className); + var DefaultCompClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'EditableDropdown-default', true), _defineProperty$1(_classNames2, 'd-none', showComponent), _classNames2)); + var EditableDropdownClass = classnames(_defineProperty$1({}, 'd-none', !showComponent)); + var baseProps = extractBaseProps(props); -// eslint-disable-next-line consistent-return -var getEvalledConstructor = function (expressionSyntax) { - try { - return $Function('"use strict"; return (' + expressionSyntax + ').constructor;')(); - } catch (e) {} -}; + var getLabel = function getLabel(updatedLabel) { + setLabel(updatedLabel); + }; -var $gOPD$1 = Object.getOwnPropertyDescriptor; -if ($gOPD$1) { - try { - $gOPD$1({}, ''); - } catch (e) { - $gOPD$1 = null; // this is IE 8, which has a broken gOPD - } -} + var onChangeHandler = function onChangeHandler(eventType) { + switch (eventType) { + case 'edit': + setEditing(true); + setShowComponent(true); + break; -var throwTypeError = function () { - throw new $TypeError$2(); -}; -var ThrowTypeError = $gOPD$1 - ? (function () { - try { - // eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties - arguments.callee; // IE 8 does not throw here - return throwTypeError; - } catch (calleeThrows) { - try { - // IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '') - return $gOPD$1(arguments, 'callee').get; - } catch (gOPDthrows) { - return throwTypeError; - } - } - }()) - : throwTypeError; + case 'hover': + setShowComponent(true); + break; -var hasSymbols$2 = hasSymbols$3(); + case 'default': + setShowComponent(false); + } + }; -var getProto$1 = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto + var onChange = function onChange(value) { + setEditing(false); + setShowComponent(false); + if (onDropdownChange) onDropdownChange(value); + }; -var needsEval = {}; + var onClose = function onClose(selected) { + setEditing(false); + setShowComponent(false); + if (onDropdownClose) onDropdownClose(selected); + }; -var TypedArray = typeof Uint8Array === 'undefined' ? undefined$1 : getProto$1(Uint8Array); + var renderComponent = function renderComponent(componentLabel) { + if (customTriggerRenderer) return customTriggerRenderer(componentLabel); + return componentLabel; + }; -var INTRINSICS = { - '%AggregateError%': typeof AggregateError === 'undefined' ? undefined$1 : AggregateError, - '%Array%': Array, - '%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined$1 : ArrayBuffer, - '%ArrayIteratorPrototype%': hasSymbols$2 ? getProto$1([][Symbol.iterator]()) : undefined$1, - '%AsyncFromSyncIteratorPrototype%': undefined$1, - '%AsyncFunction%': needsEval, - '%AsyncGenerator%': needsEval, - '%AsyncGeneratorFunction%': needsEval, - '%AsyncIteratorPrototype%': needsEval, - '%Atomics%': typeof Atomics === 'undefined' ? undefined$1 : Atomics, - '%BigInt%': typeof BigInt === 'undefined' ? undefined$1 : BigInt, - '%Boolean%': Boolean, - '%DataView%': typeof DataView === 'undefined' ? undefined$1 : DataView, - '%Date%': Date, - '%decodeURI%': decodeURI, - '%decodeURIComponent%': decodeURIComponent, - '%encodeURI%': encodeURI, - '%encodeURIComponent%': encodeURIComponent, - '%Error%': Error, - '%eval%': eval, // eslint-disable-line no-eval - '%EvalError%': EvalError, - '%Float32Array%': typeof Float32Array === 'undefined' ? undefined$1 : Float32Array, - '%Float64Array%': typeof Float64Array === 'undefined' ? undefined$1 : Float64Array, - '%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined$1 : FinalizationRegistry, - '%Function%': $Function, - '%GeneratorFunction%': needsEval, - '%Int8Array%': typeof Int8Array === 'undefined' ? undefined$1 : Int8Array, - '%Int16Array%': typeof Int16Array === 'undefined' ? undefined$1 : Int16Array, - '%Int32Array%': typeof Int32Array === 'undefined' ? undefined$1 : Int32Array, - '%isFinite%': isFinite, - '%isNaN%': isNaN, - '%IteratorPrototype%': hasSymbols$2 ? getProto$1(getProto$1([][Symbol.iterator]())) : undefined$1, - '%JSON%': typeof JSON === 'object' ? JSON : undefined$1, - '%Map%': typeof Map === 'undefined' ? undefined$1 : Map, - '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols$2 ? undefined$1 : getProto$1(new Map()[Symbol.iterator]()), - '%Math%': Math, - '%Number%': Number, - '%Object%': Object, - '%parseFloat%': parseFloat, - '%parseInt%': parseInt, - '%Promise%': typeof Promise === 'undefined' ? undefined$1 : Promise, - '%Proxy%': typeof Proxy === 'undefined' ? undefined$1 : Proxy, - '%RangeError%': RangeError, - '%ReferenceError%': ReferenceError, - '%Reflect%': typeof Reflect === 'undefined' ? undefined$1 : Reflect, - '%RegExp%': RegExp, - '%Set%': typeof Set === 'undefined' ? undefined$1 : Set, - '%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols$2 ? undefined$1 : getProto$1(new Set()[Symbol.iterator]()), - '%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined$1 : SharedArrayBuffer, - '%String%': String, - '%StringIteratorPrototype%': hasSymbols$2 ? getProto$1(''[Symbol.iterator]()) : undefined$1, - '%Symbol%': hasSymbols$2 ? Symbol : undefined$1, - '%SyntaxError%': $SyntaxError, - '%ThrowTypeError%': ThrowTypeError, - '%TypedArray%': TypedArray, - '%TypeError%': $TypeError$2, - '%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined$1 : Uint8Array, - '%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined$1 : Uint8ClampedArray, - '%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined$1 : Uint16Array, - '%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined$1 : Uint32Array, - '%URIError%': URIError, - '%WeakMap%': typeof WeakMap === 'undefined' ? undefined$1 : WeakMap, - '%WeakRef%': typeof WeakRef === 'undefined' ? undefined$1 : WeakRef, - '%WeakSet%': typeof WeakSet === 'undefined' ? undefined$1 : WeakSet + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-EditableDropdown" + }, baseProps, { + className: CompClass + }), /*#__PURE__*/React.createElement(Editable, { + onChange: onChangeHandler, + editing: editing + }, /*#__PURE__*/React.createElement(Dropdown, _extends$2({ + placeholder: placeholder, + onChange: onChange, + getLabel: getLabel, + onClose: onClose, + className: EditableDropdownClass, + "data-test": "DesignSystem-EditableDropdown--Dropdown" + }, rest)), /*#__PURE__*/React.createElement("div", { + className: DefaultCompClass, + "data-test": "DesignSystem-EditableDropdown--Default" + }, renderComponent(label || placeholder)))); +}; +EditableDropdown.defaultProps = { + placeholder: '', + dropdownOptions: {} }; -var doEval = function doEval(name) { - var value; - if (name === '%AsyncFunction%') { - value = getEvalledConstructor('async function () {}'); - } else if (name === '%GeneratorFunction%') { - value = getEvalledConstructor('function* () {}'); - } else if (name === '%AsyncGeneratorFunction%') { - value = getEvalledConstructor('async function* () {}'); - } else if (name === '%AsyncGenerator%') { - var fn = doEval('%AsyncGeneratorFunction%'); - if (fn) { - value = fn.prototype; - } - } else if (name === '%AsyncIteratorPrototype%') { - var gen = doEval('%AsyncGenerator%'); - if (gen) { - value = getProto$1(gen.prototype); - } - } +var _excluded$H = ["children", "className", "appearance", "size", "disabled"]; +var Link = function Link(props) { + var _classNames; - INTRINSICS[name] = value; + var children = props.children, + className = props.className, + appearance = props.appearance, + size = props.size, + disabled = props.disabled, + rest = _objectWithoutProperties(props, _excluded$H); - return value; + var classes = classnames((_classNames = { + Link: true + }, _defineProperty$1(_classNames, "Link--".concat(size), size), _defineProperty$1(_classNames, "Link--".concat(appearance), appearance), _defineProperty$1(_classNames, "Link--".concat(appearance, "-disabled"), disabled), _classNames), className); + return /*#__PURE__*/React.createElement(Link$1, _extends$2({ + "data-test": "DesignSystem-Link", + className: classes, + componentType: "a", + tabIndex: disabled ? -1 : 0 + }, rest), children); }; - -var LEGACY_ALIASES = { - '%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'], - '%ArrayPrototype%': ['Array', 'prototype'], - '%ArrayProto_entries%': ['Array', 'prototype', 'entries'], - '%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'], - '%ArrayProto_keys%': ['Array', 'prototype', 'keys'], - '%ArrayProto_values%': ['Array', 'prototype', 'values'], - '%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'], - '%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'], - '%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'], - '%BooleanPrototype%': ['Boolean', 'prototype'], - '%DataViewPrototype%': ['DataView', 'prototype'], - '%DatePrototype%': ['Date', 'prototype'], - '%ErrorPrototype%': ['Error', 'prototype'], - '%EvalErrorPrototype%': ['EvalError', 'prototype'], - '%Float32ArrayPrototype%': ['Float32Array', 'prototype'], - '%Float64ArrayPrototype%': ['Float64Array', 'prototype'], - '%FunctionPrototype%': ['Function', 'prototype'], - '%Generator%': ['GeneratorFunction', 'prototype'], - '%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'], - '%Int8ArrayPrototype%': ['Int8Array', 'prototype'], - '%Int16ArrayPrototype%': ['Int16Array', 'prototype'], - '%Int32ArrayPrototype%': ['Int32Array', 'prototype'], - '%JSONParse%': ['JSON', 'parse'], - '%JSONStringify%': ['JSON', 'stringify'], - '%MapPrototype%': ['Map', 'prototype'], - '%NumberPrototype%': ['Number', 'prototype'], - '%ObjectPrototype%': ['Object', 'prototype'], - '%ObjProto_toString%': ['Object', 'prototype', 'toString'], - '%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'], - '%PromisePrototype%': ['Promise', 'prototype'], - '%PromiseProto_then%': ['Promise', 'prototype', 'then'], - '%Promise_all%': ['Promise', 'all'], - '%Promise_reject%': ['Promise', 'reject'], - '%Promise_resolve%': ['Promise', 'resolve'], - '%RangeErrorPrototype%': ['RangeError', 'prototype'], - '%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'], - '%RegExpPrototype%': ['RegExp', 'prototype'], - '%SetPrototype%': ['Set', 'prototype'], - '%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'], - '%StringPrototype%': ['String', 'prototype'], - '%SymbolPrototype%': ['Symbol', 'prototype'], - '%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'], - '%TypedArrayPrototype%': ['TypedArray', 'prototype'], - '%TypeErrorPrototype%': ['TypeError', 'prototype'], - '%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'], - '%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'], - '%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'], - '%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'], - '%URIErrorPrototype%': ['URIError', 'prototype'], - '%WeakMapPrototype%': ['WeakMap', 'prototype'], - '%WeakSetPrototype%': ['WeakSet', 'prototype'] +Link.displayName = 'Link'; +Link.defaultProps = { + appearance: 'default', + size: 'regular', + disabled: false }; - - -var $concat = functionBind.call(Function.call, Array.prototype.concat); -var $spliceApply = functionBind.call(Function.apply, Array.prototype.splice); -var $replace = functionBind.call(Function.call, String.prototype.replace); -var $strSlice = functionBind.call(Function.call, String.prototype.slice); - -/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */ -var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g; -var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */ -var stringToPath = function stringToPath(string) { - var first = $strSlice(string, 0, 1); - var last = $strSlice(string, -1); - if (first === '%' && last !== '%') { - throw new $SyntaxError('invalid intrinsic syntax, expected closing `%`'); - } else if (last === '%' && first !== '%') { - throw new $SyntaxError('invalid intrinsic syntax, expected opening `%`'); - } - var result = []; - $replace(string, rePropName, function (match, number, quote, subString) { - result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match; - }); - return result; +var IconMapping$2 = { + success: 'check_circle', + info: 'info', + warning: 'warning', + alert: 'error' }; -/* end adaptation */ +var Message = function Message(props) { + var _classNames, _classNames2, _classNames3, _classNames4; -var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) { - var intrinsicName = name; - var alias; - if (src(LEGACY_ALIASES, intrinsicName)) { - alias = LEGACY_ALIASES[intrinsicName]; - intrinsicName = '%' + alias[0] + '%'; - } + var actions = props.actions, + title = props.title, + className = props.className; + var appearance = props.appearance; + appearance = appearance === 'default' ? 'info' : appearance; + var baseProps = extractBaseProps(props); + var MessageClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Message', true), _defineProperty$1(_classNames, "Message--".concat(appearance), appearance), _classNames), className); + var IconClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Message-icon', true), _defineProperty$1(_classNames2, "Message-icon--".concat(appearance), appearance), _defineProperty$1(_classNames2, 'Message-icon--withTitle', title), _classNames2)); + var TitleClass = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Message-heading', true), _defineProperty$1(_classNames3, "Message-heading--".concat(appearance), appearance), _classNames3)); + var DescriptionClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'Message-text', true), _defineProperty$1(_classNames4, "Message-text--".concat(appearance), appearance), _classNames4)); - if (src(INTRINSICS, intrinsicName)) { - var value = INTRINSICS[intrinsicName]; - if (value === needsEval) { - value = doEval(intrinsicName); - } - if (typeof value === 'undefined' && !allowMissing) { - throw new $TypeError$2('intrinsic ' + name + ' exists, but is not available. Please file an issue!'); - } + var renderDescription = function renderDescription(description, children) { + if (description || typeof children === 'string') { + return /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-Message--Description", + className: DescriptionClass + }, description || (typeof children === 'string' ? children : '')); + } - return { - alias: alias, - name: intrinsicName, - value: value - }; - } + if (children) { + return /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-Message--Description", + className: "Message-description" + }, children); + } - throw new $SyntaxError('intrinsic ' + name + ' does not exist!'); -}; + return null; + }; -var getIntrinsic = function GetIntrinsic(name, allowMissing) { - if (typeof name !== 'string' || name.length === 0) { - throw new $TypeError$2('intrinsic name must be a non-empty string'); - } - if (arguments.length > 1 && typeof allowMissing !== 'boolean') { - throw new $TypeError$2('"allowMissing" argument must be a boolean'); - } + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Message" + }, baseProps, { + className: MessageClass + }), /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-Message--Icon", + name: IconMapping$2[appearance], + appearance: appearance, + className: IconClass + }), /*#__PURE__*/React.createElement("div", null, title && /*#__PURE__*/React.createElement(Heading, { + "data-test": "DesignSystem-Message--Title", + size: "s", + className: TitleClass + }, title), renderDescription(props.description, props.children), actions && /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-Message--actions", + className: "Message-actions" + }, actions))); +}; +Message.displayName = 'Message'; +Message.defaultProps = { + appearance: 'info', + description: '' +}; - var parts = stringToPath(name); - var intrinsicBaseName = parts.length > 0 ? parts[0] : ''; +var Meta = function Meta(props) { + var label = props.label, + icon = props.icon, + size = props.size, + iconType = props.iconType; + return /*#__PURE__*/React.createElement("span", { + "data-test": "DesignSystem-MetaList--Meta", + className: 'Meta' + }, icon && /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-MetaList--MetaIcon", + name: icon, + appearance: "subtle", + className: 'Meta-icon', + type: iconType, + size: size === 'regular' ? 16 : 12 + }), /*#__PURE__*/React.createElement(Text, { + size: size, + "data-test": "DesignSystem-MetaList--MetaLabel", + appearance: "subtle" + }, label)); +}; +Meta.displayName = 'Meta'; - var intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing); - var intrinsicRealName = intrinsic.name; - var value = intrinsic.value; - var skipFurtherCaching = false; +var MetaList = function MetaList(props) { + var _classNames3; - var alias = intrinsic.alias; - if (alias) { - intrinsicBaseName = alias[0]; - $spliceApply(parts, $concat([0, 1], alias)); - } - - for (var i = 1, isOwn = true; i < parts.length; i += 1) { - var part = parts[i]; - var first = $strSlice(part, 0, 1); - var last = $strSlice(part, -1); - if ( - ( - (first === '"' || first === "'" || first === '`') - || (last === '"' || last === "'" || last === '`') - ) - && first !== last - ) { - throw new $SyntaxError('property names with quotes must have matching quotes'); - } - if (part === 'constructor' || !isOwn) { - skipFurtherCaching = true; - } + var list = props.list, + seperator = props.seperator, + className = props.className, + size = props.size; + var baseProps = extractBaseProps(props); + var MetaClass = classnames(_defineProperty$1({}, 'MetaList', true), className); + var SeperatorClass = classnames(_defineProperty$1({}, 'MetaList-seperator', true)); + var LeftSeperatorClass = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'MetaList-seperator', true), _defineProperty$1(_classNames3, 'MetaList-seperator--left', true), _classNames3)); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-MetaList" + }, baseProps, { + className: MetaClass + }), seperator && /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-MetaList--Seperator", + name: "fiber_manual_record", + size: 8, + className: LeftSeperatorClass, + appearance: "disabled" + }), list.map(function (item, ind) { + var _item$label = item.label, + label = _item$label === void 0 ? '' : _item$label, + icon = item.icon, + iconType = item.iconType; + var rightSeperator = ind !== list.length - 1; + return /*#__PURE__*/React.createElement("span", { + key: ind, + className: "MetaList-item" + }, /*#__PURE__*/React.createElement(Meta, { + size: size, + label: label, + icon: icon, + iconType: iconType + }), rightSeperator && /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-MetaList--rightSeperator", + name: "fiber_manual_record", + size: 8, + className: SeperatorClass, + appearance: "disabled" + })); + })); +}; +MetaList.displayName = 'MetaList'; +MetaList.defaultProps = { + seperatorAppearance: 'disabled', + iconAppearance: 'subtle', + labelAppearance: 'subtle', + size: 'regular' +}; - intrinsicBaseName += '.' + part; - intrinsicRealName = '%' + intrinsicBaseName + '%'; +/** + * Key codes are deprecated, soon major browser support will end. + */ +var ARROW_LEFT = 37; +var ARROW_RIGHT = 39; - if (src(INTRINSICS, intrinsicRealName)) { - value = INTRINSICS[intrinsicRealName]; - } else if (value != null) { - if (!(part in value)) { - if (!allowMissing) { - throw new $TypeError$2('base intrinsic for ' + name + ' exists, but the property is not available.'); - } - return void undefined$1; - } - if ($gOPD$1 && (i + 1) >= parts.length) { - var desc = $gOPD$1(value, part); - isOwn = !!desc; +var formatPercentage = function formatPercentage(ratio) { + return "".concat((ratio * 100).toFixed(2), "%"); +}; +var countDecimalPlaces = function countDecimalPlaces(value) { + if (!isFinite(value)) return 0; - // By convention, when a data property is converted to an accessor - // property to emulate a data property that does not suffer from - // the override mistake, that accessor's getter is marked with - // an `originalValue` property. Here, when we detect this, we - // uphold the illusion by pretending to see that original data - // property, i.e., returning the value rather than the getter - // itself. - if (isOwn && 'get' in desc && !('originalValue' in desc.get)) { - value = desc.get; - } else { - value = value[part]; - } - } else { - isOwn = src(value, part); - value = value[part]; - } + if (Math.floor(value) !== value) { + var valueArray = value.toString().split('.'); + return valueArray[1].length || 0; + } - if (isOwn && !skipFurtherCaching) { - INTRINSICS[intrinsicRealName] = value; - } - } - } - return value; + return 0; }; +var approxEqual = function approxEqual(a, b) { + var tolerance = 0.00001; + return Math.abs(a - b) <= tolerance; +}; +var clamp = function clamp(value, min, max) { + if (value == null) { + return value; + } -var callBind = createCommonjsModule(function (module) { - + return Math.min(Math.max(value, min), max); +}; +var arraysEqual = function arraysEqual(oldValues, newValues) { + if (oldValues.length !== oldValues.length) return; + return newValues.every(function (value, index) { + return value === oldValues[index]; + }); +}; +function argMin(values, argFn) { + if (values.length === 0) { + return undefined; + } + var minValue = values[0]; + var minArg = argFn(minValue); + for (var index = 1; index < values.length; index++) { + var _value = values[index]; + var arg = argFn(_value); -var $apply = getIntrinsic('%Function.prototype.apply%'); -var $call = getIntrinsic('%Function.prototype.call%'); -var $reflectApply = getIntrinsic('%Reflect.apply%', true) || functionBind.call($call, $apply); + if (arg < minArg) { + minValue = _value; + minArg = arg; + } + } -var $gOPD = getIntrinsic('%Object.getOwnPropertyDescriptor%', true); -var $defineProperty = getIntrinsic('%Object.defineProperty%', true); -var $max = getIntrinsic('%Math.max%'); + return minValue; +} +function fillValues(values, startIndex, endIndex, fillValue) { + var inc = startIndex < endIndex ? 1 : -1; -if ($defineProperty) { - try { - $defineProperty({}, 'a', { value: 1 }); - } catch (e) { - // IE 8 has a broken defineProperty - $defineProperty = null; - } + for (var index = startIndex; index !== endIndex + inc; index += inc) { + values[index] = fillValue; + } +} +function isElementOfType(element) { + return element != null && element.type != null; } -module.exports = function callBind(originalFunction) { - var func = $reflectApply(functionBind, $call, arguments); - if ($gOPD && $defineProperty) { - var desc = $gOPD(func, 'length'); - if (desc.configurable) { - // original length, plus the receiver, minus any additional arguments (after the receiver) - $defineProperty( - func, - 'length', - { value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) } - ); - } - } - return func; -}; +var Handle = /*#__PURE__*/function (_React$Component) { + _inherits(Handle, _React$Component); -var applyBind = function applyBind() { - return $reflectApply(functionBind, $apply, arguments); -}; + var _super = _createSuper(Handle); -if ($defineProperty) { - $defineProperty(module.exports, 'apply', { value: applyBind }); -} else { - module.exports.apply = applyBind; -} -}); -callBind.apply; + function Handle() { + var _this; -var $indexOf = callBind(getIntrinsic('String.prototype.indexOf')); + _classCallCheck(this, Handle); -var callBound = function callBoundIntrinsic(name, allowMissing) { - var intrinsic = getIntrinsic(name, !!allowMissing); - if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) { - return callBind(intrinsic); - } - return intrinsic; -}; + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } -var hasToStringTag$2 = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol'; + _this = _super.call.apply(_super, [this].concat(args)); + _defineProperty$1(_assertThisInitialized$1(_this), "state", { + isHandleMoving: false, + isHandleHovered: false + }); -var $toString$1 = callBound('Object.prototype.toString'); + _defineProperty$1(_assertThisInitialized$1(_this), "handleElement", null); -var isStandardArguments = function isArguments(value) { - if (hasToStringTag$2 && value && typeof value === 'object' && Symbol.toStringTag in value) { - return false; - } - return $toString$1(value) === '[object Arguments]'; -}; + _defineProperty$1(_assertThisInitialized$1(_this), "refHandlers", { + handle: function handle(el) { + return _this.handleElement = el; + } + }); -var isLegacyArguments = function isArguments(value) { - if (isStandardArguments(value)) { - return true; - } - return value !== null && - typeof value === 'object' && - typeof value.length === 'number' && - value.length >= 0 && - $toString$1(value) !== '[object Array]' && - $toString$1(value.callee) === '[object Function]'; -}; + _defineProperty$1(_assertThisInitialized$1(_this), "mouseEventClientOffset", function (event) { + return event.clientX; + }); -var supportsStandardArguments = (function () { - return isStandardArguments(arguments); -}()); + _defineProperty$1(_assertThisInitialized$1(_this), "clientToValue", function (clientPixel) { + var _this$props = _this.props, + stepSize = _this$props.stepSize, + tickSize = _this$props.tickSize, + value = _this$props.value; -isStandardArguments.isLegacyArguments = isLegacyArguments; // for tests + if (_this.handleElement == null) { + return value; + } -var isArguments = supportsStandardArguments ? isStandardArguments : isLegacyArguments; + var clientPixelNormalized = clientPixel; -var hasSymbols$1 = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol'; + var _this$getHandleMidpoi = _this.getHandleMidpointAndOffset(_this.handleElement), + handleMidpoint = _this$getHandleMidpoi.handleMidpoint, + handleOffset = _this$getHandleMidpoi.handleOffset; -var toStr$1 = Object.prototype.toString; -var concat = Array.prototype.concat; -var origDefineProperty = Object.defineProperty; + var handleCenterPixel = handleMidpoint + handleOffset; + var pixelDelta = clientPixelNormalized - handleCenterPixel; -var isFunction$1 = function (fn) { - return typeof fn === 'function' && toStr$1.call(fn) === '[object Function]'; -}; + if (isNaN(pixelDelta)) { + return value; + } -var arePropertyDescriptorsSupported = function () { - var obj = {}; - try { - origDefineProperty(obj, 'x', { enumerable: false, value: obj }); - // eslint-disable-next-line no-unused-vars, no-restricted-syntax - for (var _ in obj) { // jscs:ignore disallowUnusedVariables - return false; - } - return obj.x === obj; - } catch (e) { /* this is IE 8. */ - return false; - } -}; -var supportsDescriptors$2 = origDefineProperty && arePropertyDescriptorsSupported(); + return value + Math.round(pixelDelta / (tickSize * stepSize)) * stepSize; + }); -var defineProperty$2 = function (object, name, value, predicate) { - if (name in object && (!isFunction$1(predicate) || !predicate())) { - return; - } - if (supportsDescriptors$2) { - origDefineProperty(object, name, { - configurable: true, - enumerable: false, - value: value, - writable: true - }); - } else { - object[name] = value; - } -}; + _defineProperty$1(_assertThisInitialized$1(_this), "changeValue", function (newValue) { + var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _this.props.onChange; + var updatedValue = clamp(newValue, _this.props.min, _this.props.max); -var defineProperties = function (object, map) { - var predicates = arguments.length > 2 ? arguments[2] : {}; - var props = objectKeys(map); - if (hasSymbols$1) { - props = concat.call(props, Object.getOwnPropertySymbols(map)); - } - for (var i = 0; i < props.length; i += 1) { - defineProperty$2(object, props[i], map[props[i]], predicates[props[i]]); - } -}; + if (!isNaN(updatedValue) && _this.props.value !== updatedValue) { + if (callback) callback(updatedValue); + } -defineProperties.supportsDescriptors = !!supportsDescriptors$2; + return updatedValue; + }); -var defineProperties_1 = defineProperties; + _defineProperty$1(_assertThisInitialized$1(_this), "endHandleMovement", function (event) { + var clientPixel = _this.mouseEventClientOffset(event); -var numberIsNaN = function (value) { - return value !== value; -}; + var onRelease = _this.props.onRelease; -var implementation$2 = function is(a, b) { - if (a === 0 && b === 0) { - return 1 / a === 1 / b; - } - if (a === b) { - return true; - } - if (numberIsNaN(a) && numberIsNaN(b)) { - return true; - } - return false; -}; + _this.removeDocumentEventListeners(); -var polyfill$2 = function getPolyfill() { - return typeof Object.is === 'function' ? Object.is : implementation$2; -}; + _this.setState({ + isHandleMoving: false + }); -var shim$1 = function shimObjectIs() { - var polyfill = polyfill$2(); - defineProperties_1(Object, { is: polyfill }, { - is: function testObjectIs() { - return Object.is !== polyfill; - } - }); - return polyfill; -}; + var finalValue = _this.changeValue(_this.clientToValue(clientPixel)); -var polyfill$1 = callBind(polyfill$2(), Object); + if (onRelease) onRelease(finalValue); + }); -defineProperties_1(polyfill$1, { - getPolyfill: polyfill$2, - implementation: implementation$2, - shim: shim$1 -}); + _defineProperty$1(_assertThisInitialized$1(_this), "continueHandleMovement", function (event) { + var clientPixel = _this.mouseEventClientOffset(event); -var objectIs = polyfill$1; + if (_this.state.isHandleMoving && !_this.props.disabled) { + var value = _this.clientToValue(clientPixel); -var hasSymbols = shams(); -var hasToStringTag$1 = hasSymbols && !!Symbol.toStringTag; -var has; -var $exec; -var isRegexMarker; -var badStringifier; + _this.changeValue(value); + } + }); -if (hasToStringTag$1) { - has = callBound('Object.prototype.hasOwnProperty'); - $exec = callBound('RegExp.prototype.exec'); - isRegexMarker = {}; + _defineProperty$1(_assertThisInitialized$1(_this), "beginHandleMovement", function (event) { + if (_this.props.disabled) return; + document.addEventListener('mousemove', _this.continueHandleMovement); + document.addEventListener('mouseup', _this.endHandleMovement); - var throwRegexMarker = function () { - throw isRegexMarker; - }; - badStringifier = { - toString: throwRegexMarker, - valueOf: throwRegexMarker - }; + _this.setState({ + isHandleMoving: true + }); - if (typeof Symbol.toPrimitive === 'symbol') { - badStringifier[Symbol.toPrimitive] = throwRegexMarker; - } -} + var value = _this.clientToValue(event.clientX); -var $toString = callBound('Object.prototype.toString'); -var gOPD$1 = Object.getOwnPropertyDescriptor; -var regexClass = '[object RegExp]'; + _this.changeValue(value); + }); -var isRegex = hasToStringTag$1 - // eslint-disable-next-line consistent-return - ? function isRegex(value) { - if (!value || typeof value !== 'object') { - return false; - } + _defineProperty$1(_assertThisInitialized$1(_this), "handleKeyDown", function (event) { + if (_this.props.disabled) return; + var _this$props2 = _this.props, + stepSize = _this$props2.stepSize, + value = _this$props2.value; + var keyCode = event.keyCode; // TODO(a11y): add ARROW_DOWN & ARROW_UP too - var descriptor = gOPD$1(value, 'lastIndex'); - var hasLastIndexDataProperty = descriptor && has(descriptor, 'value'); - if (!hasLastIndexDataProperty) { - return false; - } + if (keyCode === ARROW_LEFT) { + _this.changeValue(value - stepSize); - try { - $exec(value, badStringifier); - } catch (e) { - return e === isRegexMarker; - } - } - : function isRegex(value) { - // In older browsers, typeof regex incorrectly returns 'function' - if (!value || (typeof value !== 'object' && typeof value !== 'function')) { - return false; - } + event.preventDefault(); + } else if (keyCode === ARROW_RIGHT) { + _this.changeValue(value + stepSize); - return $toString(value) === regexClass; - }; + event.preventDefault(); + } + }); -var $Object = Object; -var $TypeError$1 = TypeError; + _defineProperty$1(_assertThisInitialized$1(_this), "handleKeyUp", function (event) { + if (_this.props.disabled) return; -var implementation$1 = function flags() { - if (this != null && this !== $Object(this)) { - throw new $TypeError$1('RegExp.prototype.flags getter called on non-object'); - } - var result = ''; - if (this.global) { - result += 'g'; - } - if (this.ignoreCase) { - result += 'i'; - } - if (this.multiline) { - result += 'm'; - } - if (this.dotAll) { - result += 's'; - } - if (this.unicode) { - result += 'u'; - } - if (this.sticky) { - result += 'y'; - } - return result; -}; + if ([ARROW_LEFT, ARROW_RIGHT].indexOf(event.keyCode) >= 0) { + var onRelease = _this.props.onRelease; + if (onRelease) onRelease(_this.props.value); + } + }); -var supportsDescriptors$1 = defineProperties_1.supportsDescriptors; -var $gOPD = Object.getOwnPropertyDescriptor; -var $TypeError = TypeError; + _defineProperty$1(_assertThisInitialized$1(_this), "getHandleMidpointAndOffset", function (handleElement) { + var useOppositeDimension = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; -var polyfill = function getPolyfill() { - if (!supportsDescriptors$1) { - throw new $TypeError('RegExp.prototype.flags requires a true ES5 environment that supports property descriptors'); - } - if ((/a/mig).flags === 'gim') { - var descriptor = $gOPD(RegExp.prototype, 'flags'); - if (descriptor && typeof descriptor.get === 'function' && typeof (/a/).dotAll === 'boolean') { - return descriptor.get; - } - } - return implementation$1; -}; + if (handleElement == null) { + return { + handleMidpoint: 0, + handleOffset: 0 + }; + } -var supportsDescriptors = defineProperties_1.supportsDescriptors; + var handleRect = handleElement.getBoundingClientRect(); + var sizeKey = useOppositeDimension ? 'height' : 'width'; + var handleOffset = handleRect.left; + return { + handleOffset: handleOffset, + handleMidpoint: handleRect[sizeKey] / 2 + }; + }); -var gOPD = Object.getOwnPropertyDescriptor; -var defineProperty$1 = Object.defineProperty; -var TypeErr = TypeError; -var getProto = Object.getPrototypeOf; -var regex = /a/; + _defineProperty$1(_assertThisInitialized$1(_this), "handleMouseOver", function () { + _this.setState({ + isHandleHovered: true + }); + }); -var shim = function shimFlags() { - if (!supportsDescriptors || !getProto) { - throw new TypeErr('RegExp.prototype.flags requires a true ES5 environment that supports property descriptors'); - } - var polyfill$1 = polyfill(); - var proto = getProto(regex); - var descriptor = gOPD(proto, 'flags'); - if (!descriptor || descriptor.get !== polyfill$1) { - defineProperty$1(proto, 'flags', { - configurable: true, - enumerable: false, - get: polyfill$1 - }); - } - return polyfill$1; -}; + _defineProperty$1(_assertThisInitialized$1(_this), "handleMouseLeave", function () { + _this.setState({ + isHandleHovered: false + }); + }); -var flagsBound = callBind(implementation$1); + _defineProperty$1(_assertThisInitialized$1(_this), "removeDocumentEventListeners", function () { + document.removeEventListener('mousemove', _this.continueHandleMovement); + document.removeEventListener('mouseup', _this.endHandleMovement); + }); -defineProperties_1(flagsBound, { - getPolyfill: polyfill, - implementation: implementation$1, - shim: shim -}); + return _this; + } -var regexp_prototype_flags = flagsBound; + _createClass(Handle, [{ + key: "componentWillUnmount", + value: function componentWillUnmount() { + this.removeDocumentEventListeners(); + } + }, { + key: "componentDidUpdate", + value: function componentDidUpdate(_prevProps, prevState) { + if (prevState.isHandleMoving !== this.state.isHandleMoving) { + if (this.handleElement) this.handleElement.focus(); + } + } + }, { + key: "render", + value: function render() { + var _classNames, _classNames2; -var getDay = Date.prototype.getDay; -var tryDateObject = function tryDateGetDayCall(value) { - try { - getDay.call(value); - return true; - } catch (e) { - return false; - } -}; + var _this$props3 = this.props, + min = _this$props3.min, + tickSizeRatio = _this$props3.tickSizeRatio, + value = _this$props3.value, + disabled = _this$props3.disabled, + label = _this$props3.label, + isCurrentLabelHovered = _this$props3.isCurrentLabelHovered; + var _this$state = this.state, + isHandleMoving = _this$state.isHandleMoving, + isHandleHovered = _this$state.isHandleHovered; + var showTootlip = isHandleMoving || isHandleHovered || isCurrentLabelHovered; -var toStr = Object.prototype.toString; -var dateClass = '[object Date]'; -var hasToStringTag = typeof Symbol === 'function' && !!Symbol.toStringTag; + var _this$getHandleMidpoi2 = this.getHandleMidpointAndOffset(this.handleElement, true), + handleMidpoint = _this$getHandleMidpoi2.handleMidpoint; -var isDateObject = function isDateObject(value) { - if (typeof value !== 'object' || value === null) { - return false; - } - return hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass; -}; + var offsetRatio = (value - min) * tickSizeRatio; + var offsetCalc = "calc(".concat(formatPercentage(offsetRatio), " - ").concat(handleMidpoint, "px)"); + var style = { + left: offsetCalc + }; + var className = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Slider-handle', true), _defineProperty$1(_classNames, 'Slider-handle--disabled', disabled), _defineProperty$1(_classNames, 'Slider-handle--active', isHandleMoving), _defineProperty$1(_classNames, 'border-0', disabled), _classNames)); + var TooltipClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Slider-tooltip', true), _defineProperty$1(_classNames2, 'Tooltip', true), _defineProperty$1(_classNames2, 'd-none', !showTootlip), _classNames2)); + return ( + /*#__PURE__*/ + // TODO(a11y): fix accessibility + + /* eslint-disable */ + React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { + className: className, + onMouseOver: this.handleMouseOver, + onMouseLeave: this.handleMouseLeave, + onMouseDown: this.beginHandleMovement, + onKeyDown: this.handleKeyDown, + onKeyUp: this.handleKeyUp, + ref: this.refHandlers.handle, + style: style, + tabIndex: 0, + "data-test": "DesignSystem-MultiSlider-Handle" + }), /*#__PURE__*/React.createElement("div", { + className: TooltipClass, + style: style + }, label)) + ); + } + }]); -var getTime = Date.prototype.getTime; + return Handle; +}(React.Component); -function deepEqual(actual, expected, options) { - var opts = options || {}; +var MultiSliderHandle = function MultiSliderHandle() { + return null; +}; - // 7.1. All identical values are equivalent, as determined by ===. - if (opts.strict ? objectIs(actual, expected) : actual === expected) { - return true; - } +var MultiSlider = /*#__PURE__*/function (_React$Component) { + _inherits(MultiSlider, _React$Component); - // 7.3. Other pairs that do not both pass typeof value == 'object', equivalence is determined by ==. - if (!actual || !expected || (typeof actual !== 'object' && typeof expected !== 'object')) { - return opts.strict ? objectIs(actual, expected) : actual == expected; - } + var _super = _createSuper(MultiSlider); - /* - * 7.4. For all other Object pairs, including Array objects, equivalence is - * determined by having the same number of owned properties (as verified - * with Object.prototype.hasOwnProperty.call), the same set of keys - * (although not necessarily the same order), equivalent values for every - * corresponding key, and an identical 'prototype' property. Note: this - * accounts for both named and indexed properties on Arrays. - */ - // eslint-disable-next-line no-use-before-define - return objEquiv(actual, expected, opts); -} + function MultiSlider(_props) { + var _this; -function isUndefinedOrNull(value) { - return value === null || value === undefined; -} + _classCallCheck(this, MultiSlider); -function isBuffer(x) { - if (!x || typeof x !== 'object' || typeof x.length !== 'number') { - return false; - } - if (typeof x.copy !== 'function' || typeof x.slice !== 'function') { - return false; - } - if (x.length > 0 && typeof x[0] !== 'number') { - return false; - } - return true; -} + _this = _super.call(this, _props); -function objEquiv(a, b, opts) { - /* eslint max-statements: [2, 50] */ - var i, key; - if (typeof a !== typeof b) { return false; } - if (isUndefinedOrNull(a) || isUndefinedOrNull(b)) { return false; } + _defineProperty$1(_assertThisInitialized$1(_this), "handleElements", []); - // an identical 'prototype' property. - if (a.prototype !== b.prototype) { return false; } + _defineProperty$1(_assertThisInitialized$1(_this), "trackElement", null); - if (isArguments(a) !== isArguments(b)) { return false; } + _defineProperty$1(_assertThisInitialized$1(_this), "getLabelPrecision", function (_ref) { + var labelPrecision = _ref.labelPrecision, + stepSize = _ref.stepSize; + return labelPrecision == null ? countDecimalPlaces(stepSize) : labelPrecision; + }); - var aIsRegex = isRegex(a); - var bIsRegex = isRegex(b); - if (aIsRegex !== bIsRegex) { return false; } - if (aIsRegex || bIsRegex) { - return a.source === b.source && regexp_prototype_flags(a) === regexp_prototype_flags(b); - } + _defineProperty$1(_assertThisInitialized$1(_this), "getOffsetRatio", function (value) { + return clamp((value - _this.props.min) * _this.state.tickSizeRatio, 0, 1); + }); - if (isDateObject(a) && isDateObject(b)) { - return getTime.call(a) === getTime.call(b); - } + _defineProperty$1(_assertThisInitialized$1(_this), "addHandleRef", function (ref) { + if (ref != null) { + _this.handleElements.push(ref); + } + }); - var aIsBuffer = isBuffer(a); - var bIsBuffer = isBuffer(b); - if (aIsBuffer !== bIsBuffer) { return false; } - if (aIsBuffer || bIsBuffer) { // && would work too, because both are true or both false here - if (a.length !== b.length) { return false; } - for (i = 0; i < a.length; i++) { - if (a[i] !== b[i]) { return false; } - } - return true; - } + _defineProperty$1(_assertThisInitialized$1(_this), "getHandleValues", function (props) { + var maybeHandles = React.Children.map(props.children, function (child) { + return isElementOfType(child) ? child.props : null; + }); + var handles = maybeHandles != null ? maybeHandles : []; + handles = handles.filter(function (handle) { + return handle !== null; + }); + handles.sort(function (left, right) { + return left.value - right.value; + }); + return handles; + }); - if (typeof a !== typeof b) { return false; } + _defineProperty$1(_assertThisInitialized$1(_this), "updateTickSize", function () { + if (_this.trackElement != null) { + var trackSize = _this.trackElement.clientWidth; + var tickSizeRatio = 1 / (_this.props.max - _this.props.min); + var tickSize = trackSize * tickSizeRatio; - try { - var ka = objectKeys(a); - var kb = objectKeys(b); - } catch (e) { // happens when one is a string literal and the other isn't - return false; - } - // having the same number of owned properties (keys incorporates hasOwnProperty) - if (ka.length !== kb.length) { return false; } + _this.setState({ + tickSize: tickSize, + tickSizeRatio: tickSizeRatio + }); + } + }); - // the same set of keys (although not necessarily the same order), - ka.sort(); - kb.sort(); - // ~~~cheap key test - for (i = ka.length - 1; i >= 0; i--) { - if (ka[i] != kb[i]) { return false; } - } - // equivalent values for every corresponding key, and ~~~possibly expensive deep test - for (i = ka.length - 1; i >= 0; i--) { - key = ka[i]; - if (!deepEqual(a[key], b[key], opts)) { return false; } - } + _defineProperty$1(_assertThisInitialized$1(_this), "getTrackFill", function (start, end) { + if (start.fillAfter !== undefined) { + return start.fillAfter; + } - return true; -} + if (end !== undefined && end.fillBefore !== undefined) { + return end.fillBefore; + } -var deepEqual_1 = deepEqual; + return false; + }); -/**! - * @fileOverview Kickass library to create and place poppers near their reference elements. - * @version 1.16.1 - * @license - * Copyright (c) 2016 Federico Zivolo and contributors - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ -var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined'; + _defineProperty$1(_assertThisInitialized$1(_this), "maybeHandleTrackClick", function (event) { + var target = event.target; + var canHandleTrackEvent = !_this.props.disabled && target.closest('.Slider-handle') == null; -var timeoutDuration = function () { - var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox']; - for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) { - if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) { - return 1; - } - } - return 0; -}(); + if (canHandleTrackEvent) { + var foundHandle = _this.nearestHandleForValue(_this.handleElements, function (handle) { + return handle.mouseEventClientOffset(event); + }); -function microtaskDebounce(fn) { - var called = false; - return function () { - if (called) { - return; - } - called = true; - window.Promise.resolve().then(function () { - called = false; - fn(); + if (foundHandle) { + foundHandle.beginHandleMovement(event); + } + } }); - }; -} -function taskDebounce(fn) { - var scheduled = false; - return function () { - if (!scheduled) { - scheduled = true; - setTimeout(function () { - scheduled = false; - fn(); - }, timeoutDuration); - } - }; -} + _defineProperty$1(_assertThisInitialized$1(_this), "getLockedHandleIndex", function (startIndex, endIndex) { + var inc = startIndex < endIndex ? 1 : -1; -var supportsMicroTasks = isBrowser && window.Promise; + for (var index = startIndex + inc; index !== endIndex + inc; index += inc) { + return index; + } -/** -* Create a debounced version of a method, that's asynchronously deferred -* but called in the minimum time possible. -* -* @method -* @memberof Popper.Utils -* @argument {Function} fn -* @returns {Function} -*/ -var debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce; + return -1; + }); -/** - * Check if the given variable is a function - * @method - * @memberof Popper.Utils - * @argument {Any} functionToCheck - variable to check - * @returns {Boolean} answer to: is a function? - */ -function isFunction(functionToCheck) { - var getType = {}; - return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]'; -} + _defineProperty$1(_assertThisInitialized$1(_this), "getNewHandleValues", function (newValue, oldIndex) { + var handleProps = _this.getHandleValues(_this.props); -/** - * Get CSS computed property of the given element - * @method - * @memberof Popper.Utils - * @argument {Eement} element - * @argument {String} property - */ -function getStyleComputedProperty(element, property) { - if (element.nodeType !== 1) { - return []; - } - // NOTE: 1 DOM access here - var window = element.ownerDocument.defaultView; - var css = window.getComputedStyle(element, null); - return property ? css[property] : css; -} + var oldValues = handleProps.map(function (handle) { + return handle.value; + }); + var newValues = oldValues.slice(); + newValues[oldIndex] = newValue; + if (newValues.length > 1) newValues.sort(function (left, right) { + return left - right; + }); + var newIndex = newValues.indexOf(newValue); -/** - * Returns the parentNode or the host of the element - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @returns {Element} parent - */ -function getParentNode(element) { - if (element.nodeName === 'HTML') { - return element; - } - return element.parentNode || element.host; -} + var lockIndex = _this.getLockedHandleIndex(oldIndex, newIndex); -/** - * Returns the scrolling parent of the given element - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @returns {Element} scroll parent - */ -function getScrollParent(element) { - // Return body, `getScroll` will take care to get the correct `scrollTop` from it - if (!element) { - return document.body; - } + if (lockIndex === -1) { + fillValues(newValues, oldIndex, newIndex, newValue); + } else { + var lockValue = oldValues[lockIndex]; + fillValues(oldValues, oldIndex, lockIndex, lockValue); + return oldValues; + } - switch (element.nodeName) { - case 'HTML': - case 'BODY': - return element.ownerDocument.body; - case '#document': - return element.body; - } + return newValues; + }); - // Firefox want us to check `-x` and `-y` variations as well + _defineProperty$1(_assertThisInitialized$1(_this), "onReleaseHandler", function (newValue, index) { + var onRangeRelease = _this.props.onRangeRelease; - var _getStyleComputedProp = getStyleComputedProperty(element), - overflow = _getStyleComputedProp.overflow, - overflowX = _getStyleComputedProp.overflowX, - overflowY = _getStyleComputedProp.overflowY; + var handleProps = _this.getHandleValues(_this.props); - if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) { - return element; - } + var newValues = _this.getNewHandleValues(newValue, index); // Range Slider callback - return getScrollParent(getParentNode(element)); -} -/** - * Returns the reference node of the reference object, or the reference object itself. - * @method - * @memberof Popper.Utils - * @param {Element|Object} reference - the reference element (the popper will be relative to this) - * @returns {Element} parent - */ -function getReferenceNode(reference) { - return reference && reference.referenceNode ? reference.referenceNode : reference; -} + if (onRangeRelease) { + var range = newValues; + onRangeRelease(range); + } // Slider callback -var isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode); -var isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent); -/** - * Determines if the browser is Internet Explorer - * @method - * @memberof Popper.Utils - * @param {Number} version to check - * @returns {Boolean} isIE - */ -function isIE(version) { - if (version === 11) { - return isIE11; - } - if (version === 10) { - return isIE10; - } - return isIE11 || isIE10; -} + handleProps.forEach(function (handle, i) { + if (handle.onRelease) handle.onRelease(newValues[i]); + }); + }); -/** - * Returns the offset parent of the given element - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @returns {Element} offset parent - */ -function getOffsetParent(element) { - if (!element) { - return document.documentElement; - } + _defineProperty$1(_assertThisInitialized$1(_this), "onChangeHandler", function (newValue, index) { + var onRangeChange = _this.props.onRangeChange; - var noOffsetParent = isIE(10) ? document.body : null; + var handleProps = _this.getHandleValues(_this.props); - // NOTE: 1 DOM access here - var offsetParent = element.offsetParent || null; - // Skip hidden elements which don't have an offsetParent - while (offsetParent === noOffsetParent && element.nextElementSibling) { - offsetParent = (element = element.nextElementSibling).offsetParent; - } + var oldValues = handleProps.map(function (handle) { + return handle.value; + }); - var nodeName = offsetParent && offsetParent.nodeName; + var newValues = _this.getNewHandleValues(newValue, index); - if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') { - return element ? element.ownerDocument.documentElement : document.documentElement; - } + if (!arraysEqual(newValues, oldValues)) { + // Range Slider Callback + if (onRangeChange) { + var range = newValues; + onRangeChange(range); + } // Slider callback - // .offsetParent will return the closest TH, TD or TABLE in case - // no offsetParent is present, I hate this job... - if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') { - return getOffsetParent(offsetParent); - } - return offsetParent; -} + handleProps.forEach(function (handle, i) { + if (handle.onChange) handle.onChange(newValues[i]); + }); + } + }); -function isOffsetContainer(element) { - var nodeName = element.nodeName; + _defineProperty$1(_assertThisInitialized$1(_this), "formatLabel", function (value) { + var labelRenderer = _this.props.labelRenderer; + var labelValue = value.toFixed(_this.state.labelPrecision); - if (nodeName === 'BODY') { - return false; - } - return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element; -} + if (typeof labelRenderer === 'function') { + return labelRenderer(Number(labelValue)); + } -/** - * Finds the root node (document, shadowDOM root) of the given element - * @method - * @memberof Popper.Utils - * @argument {Element} node - * @returns {Element} root node - */ -function getRoot(node) { - if (node.parentNode !== null) { - return getRoot(node.parentNode); - } + return labelValue; + }); - return node; -} + _defineProperty$1(_assertThisInitialized$1(_this), "renderHandles", function () { + var _this$props = _this.props, + disabled = _this$props.disabled, + max = _this$props.max, + min = _this$props.min, + stepSize = _this$props.stepSize; -/** - * Finds the offset parent common to the two provided nodes - * @method - * @memberof Popper.Utils - * @argument {Element} element1 - * @argument {Element} element2 - * @returns {Element} common offset parent - */ -function findCommonOffsetParent(element1, element2) { - // This check is needed to avoid errors in case one of the elements isn't defined for any reason - if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) { - return document.documentElement; - } + var handleProps = _this.getHandleValues(_this.props); - // Here we make sure to give as "start" the element that comes first in the DOM - var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING; - var start = order ? element1 : element2; - var end = order ? element2 : element1; + if (handleProps.length === 0) { + return null; + } - // Get common ancestor container - var range = document.createRange(); - range.setStart(start, 0); - range.setEnd(end, 0); - var commonAncestorContainer = range.commonAncestorContainer; - - // Both nodes are inside #document - - if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) { - if (isOffsetContainer(commonAncestorContainer)) { - return commonAncestorContainer; - } + return handleProps.map(function (_ref2, index) { + var value = _ref2.value; + var isCurrentLabelHovered = _this.state.hoveredLabelValue === Number(value.toFixed(_this.state.labelPrecision)); + return /*#__PURE__*/React.createElement(Handle, { + disabled: disabled, + key: "".concat(index, "-").concat(handleProps.length), + max: max, + min: min, + onRelease: function onRelease(newValue) { + return _this.onReleaseHandler(newValue, index); + }, + onChange: function onChange(newValue) { + return _this.onChangeHandler(newValue, index); + }, + label: _this.formatLabel(value), + ref: _this.addHandleRef, + stepSize: stepSize, + tickSize: _this.state.tickSize, + tickSizeRatio: _this.state.tickSizeRatio, + value: value, + isCurrentLabelHovered: isCurrentLabelHovered + }); + }); + }); - return getOffsetParent(commonAncestorContainer); - } + _defineProperty$1(_assertThisInitialized$1(_this), "renderLabels", function () { + var _this$props2 = _this.props, + labelStepSize = _this$props2.labelStepSize, + max = _this$props2.max, + min = _this$props2.min, + labelRenderer = _this$props2.labelRenderer, + disabled = _this$props2.disabled; + var labels = []; + var stepSizeRatio = _this.state.tickSizeRatio * labelStepSize; - // one of the nodes is inside shadowDOM, find which one - var element1root = getRoot(element1); - if (element1root.host) { - return findCommonOffsetParent(element1root.host, element2); - } else { - return findCommonOffsetParent(element1, getRoot(element2).host); - } -} + var handles = _this.getHandleValues(_this.props); -/** - * Gets the scroll value of the given element in the given side (top and left) - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @argument {String} side `top` or `left` - * @returns {number} amount of scrolled pixels - */ -function getScroll(element) { - var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top'; + var activeLabels = handles.map(function (handle) { + return handle.value.toFixed(_this.state.labelPrecision); + }); - var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft'; - var nodeName = element.nodeName; + var _loop = function _loop(i, offsetRatio) { + var _classNames; - if (nodeName === 'BODY' || nodeName === 'HTML') { - var html = element.ownerDocument.documentElement; - var scrollingElement = element.ownerDocument.scrollingElement || html; - return scrollingElement[upperSide]; - } + var offsetPercentage = formatPercentage(offsetRatio); + var style = { + left: offsetPercentage + }; + var active = !disabled && activeLabels.indexOf(i.toFixed(_this.state.labelPrecision)) !== -1; - return element[upperSide]; -} + var onClickHandler = function onClickHandler(event) { + if (!_this.props.disabled) { + var foundHandle = _this.nearestHandleForValue(_this.handleElements, function (handle) { + return handle.mouseEventClientOffset(event); + }); -/* - * Sum or subtract the element scroll values (left and top) from a given rect object - * @method - * @memberof Popper.Utils - * @param {Object} rect - Rect object you want to change - * @param {HTMLElement} element - The element from the function reads the scroll values - * @param {Boolean} subtract - set to true if you want to subtract the scroll values - * @return {Object} rect - The modifier rect object - */ -function includeScroll(rect, element) { - var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + if (foundHandle) { + foundHandle.changeValue(i); + } + } + }; - var scrollTop = getScroll(element, 'top'); - var scrollLeft = getScroll(element, 'left'); - var modifier = subtract ? -1 : 1; - rect.top += scrollTop * modifier; - rect.bottom += scrollTop * modifier; - rect.left += scrollLeft * modifier; - rect.right += scrollLeft * modifier; - return rect; -} + var SliderTicksClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Slider-ticks', true), _defineProperty$1(_classNames, 'bg-dark', active), _classNames)); // TODO(a11y): fix accessibility -/* - * Helper to detect borders of a given element - * @method - * @memberof Popper.Utils - * @param {CSSStyleDeclaration} styles - * Result of `getStyleComputedProperty` on the given element - * @param {String} axis - `x` or `y` - * @return {number} borders - The borders size of the given axis - */ + /* eslint-disable */ -function getBordersSize(styles, axis) { - var sideA = axis === 'x' ? 'Left' : 'Top'; - var sideB = sideA === 'Left' ? 'Right' : 'Bottom'; + labels.push( /*#__PURE__*/React.createElement("div", { + onClick: onClickHandler, + className: 'Slider-label', + key: i, + style: style, + onMouseOver: function onMouseOver() { + return _this.handleLabelMouseOver(i); + }, + onMouseLeave: _this.handleLabelMouseLeave, + "data-test": "DesignSystem-MultiSlider-Label" + }, /*#__PURE__*/React.createElement("span", { + className: SliderTicksClass + }), labelRenderer !== false && /*#__PURE__*/React.createElement(Text, { + size: "small", + appearance: active ? 'default' : 'disabled' + }, _this.formatLabel(i)))); + }; - return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']); -} + for (var i = min, offsetRatio = 0; i < max || approxEqual(i, max); i += labelStepSize, offsetRatio += stepSizeRatio) { + _loop(i, offsetRatio); + } -function getSize(axis, body, html, computedStyle) { - return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0); -} + return labels; + }); -function getWindowSizes(document) { - var body = document.body; - var html = document.documentElement; - var computedStyle = isIE(10) && getComputedStyle(html); + _defineProperty$1(_assertThisInitialized$1(_this), "renderTrackFill", function (index, start, end) { + var _classNames2; - return { - height: getSize('Height', body, html, computedStyle), - width: getSize('Width', body, html, computedStyle) - }; -} + var _sort = [_this.getOffsetRatio(start.value), _this.getOffsetRatio(end.value)].sort(function (left, right) { + return left - right; + }), + _sort2 = _slicedToArray(_sort, 2), + startRatio = _sort2[0], + endRatio = _sort2[1]; -var classCallCheck = function (instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } -}; + var startOffset = Number((startRatio * 100).toFixed(2)); + var endOffset = Number(((1 - endRatio) * 100).toFixed(2)); + var width = "".concat(100 - endOffset - startOffset, "%"); + var orientationStyle = { + width: width + }; -var createClass = function () { - function defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } - } + var style = _objectSpread2({}, orientationStyle); - return function (Constructor, protoProps, staticProps) { - if (protoProps) defineProperties(Constructor.prototype, protoProps); - if (staticProps) defineProperties(Constructor, staticProps); - return Constructor; - }; -}(); + var fillTrack = _this.getTrackFill(start, end); + var classes = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Slider-progress', true), _defineProperty$1(_classNames2, 'Slider-progress--disabled', _this.props.disabled), _defineProperty$1(_classNames2, 'Slider-progress--inRange', fillTrack), _defineProperty$1(_classNames2, 'Slider-progress--inRangeDisabled', fillTrack && _this.props.disabled), _classNames2)); + return /*#__PURE__*/React.createElement("div", { + key: "track-".concat(index), + className: classes, + style: style + }); + }); + _defineProperty$1(_assertThisInitialized$1(_this), "renderTracks", function () { + var trackStops = _this.getHandleValues(_this.props); + trackStops.push({ + value: _this.props.max + }); + var previous = { + value: _this.props.min || 0 + }; + var handles = []; + trackStops.forEach(function (track, index) { + var current = track; + handles.push(_this.renderTrackFill(index, previous, current)); + previous = current; + }); + return handles; + }); + _defineProperty$1(_assertThisInitialized$1(_this), "handleLabelMouseOver", function (value) { + _this.setState({ + hoveredLabelValue: value + }); + }); -var defineProperty = function (obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true + _defineProperty$1(_assertThisInitialized$1(_this), "handleLabelMouseLeave", function () { + _this.setState({ + hoveredLabelValue: undefined + }); }); - } else { - obj[key] = value; - } - return obj; -}; + _this.state = { + labelPrecision: _this.getLabelPrecision(_this.props), + tickSize: 0, + tickSizeRatio: 0 + }; + return _this; + } -var _extends$1 = Object.assign || function (target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; + _createClass(MultiSlider, [{ + key: "getDerivedStateFromProps", + value: function getDerivedStateFromProps(props) { + return { + labelPrecision: this.getLabelPrecision(props) + }; + } + }, { + key: "getSnapshotBeforeUpdate", + value: function getSnapshotBeforeUpdate(prevProps) { + var prevHandleProps = this.getHandleValues(prevProps); + var newHandleProps = this.getHandleValues(this.props); - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; + if (newHandleProps.length !== prevHandleProps.length) { + this.handleElements = []; } - } - } - return target; -}; - -/** - * Given element offsets, generate an output similar to getBoundingClientRect - * @method - * @memberof Popper.Utils - * @argument {Object} offsets - * @returns {Object} ClientRect like output - */ -function getClientRect(offsets) { - return _extends$1({}, offsets, { - right: offsets.left + offsets.width, - bottom: offsets.top + offsets.height - }); -} - -/** - * Get bounding client rect of given element - * @method - * @memberof Popper.Utils - * @param {HTMLElement} element - * @return {Object} client rect - */ -function getBoundingClientRect(element) { - var rect = {}; - - // IE10 10 FIX: Please, don't ask, the element isn't - // considered in DOM in some circumstances... - // This isn't reproducible in IE10 compatibility mode of IE11 - try { - if (isIE(10)) { - rect = element.getBoundingClientRect(); - var scrollTop = getScroll(element, 'top'); - var scrollLeft = getScroll(element, 'left'); - rect.top += scrollTop; - rect.left += scrollLeft; - rect.bottom += scrollTop; - rect.right += scrollLeft; - } else { - rect = element.getBoundingClientRect(); + return null; } - } catch (e) {} - - var result = { - left: rect.left, - top: rect.top, - width: rect.right - rect.left, - height: rect.bottom - rect.top - }; - - // subtract scrollbar size from sizes - var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {}; - var width = sizes.width || element.clientWidth || result.width; - var height = sizes.height || element.clientHeight || result.height; - - var horizScrollbar = element.offsetWidth - width; - var vertScrollbar = element.offsetHeight - height; - - // if an hypothetical scrollbar is detected, we must be sure it's not a `border` - // we make this check conditional for performance reasons - if (horizScrollbar || vertScrollbar) { - var styles = getStyleComputedProperty(element); - horizScrollbar -= getBordersSize(styles, 'x'); - vertScrollbar -= getBordersSize(styles, 'y'); - - result.width -= horizScrollbar; - result.height -= vertScrollbar; - } - - return getClientRect(result); -} + }, { + key: "componentDidMount", + value: function componentDidMount() { + this.updateTickSize(); + } + }, { + key: "nearestHandleForValue", + value: function nearestHandleForValue(handles, getOffset) { + return argMin(handles, function (handle) { + var offset = getOffset(handle); + var offsetValue = handle.clientToValue(offset); + var handleValue = handle.props.value; + return Math.abs(offsetValue - handleValue); + }); + } + }, { + key: "render", + value: function render() { + var _classNames4, + _this2 = this; -function getOffsetRectRelativeToArbitraryNode(children, parent) { - var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + var _this$props3 = this.props, + label = _this$props3.label, + className = _this$props3.className; + var baseProps = extractBaseProps(this.props); + var SliderClass = classnames(_defineProperty$1({}, 'Slider', true), className); + var WrapperClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'Slider-wrapper', true), _defineProperty$1(_classNames4, 'Slider-wrapper--disabled', this.props.disabled), _classNames4)); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: SliderClass, + "data-test": "DesignSystem-MultiSlider" + }), label && /*#__PURE__*/React.createElement(Label, { + withInput: true + }, label), /*#__PURE__*/React.createElement("div", { + className: WrapperClass + }, /*#__PURE__*/React.createElement("div", { + className: "Slider-track", + ref: function ref(_ref3) { + return _this2.trackElement = _ref3; + }, + onMouseDown: this.maybeHandleTrackClick, + "data-test": "DesignSystem-MultiSlider-Slider-Track" + }, this.renderTracks()), /*#__PURE__*/React.createElement("div", { + className: "Slider-axis" + }, this.renderLabels()), this.renderHandles())); + } + }]); - var isIE10 = isIE(10); - var isHTML = parent.nodeName === 'HTML'; - var childrenRect = getBoundingClientRect(children); - var parentRect = getBoundingClientRect(parent); - var scrollParent = getScrollParent(children); + return MultiSlider; +}(React.Component); - var styles = getStyleComputedProperty(parent); - var borderTopWidth = parseFloat(styles.borderTopWidth); - var borderLeftWidth = parseFloat(styles.borderLeftWidth); +_defineProperty$1(MultiSlider, "defaultProps", { + labelStepSize: 1, + max: 10, + min: 0, + stepSize: 1, + labelRenderer: true +}); - // In cases where the parent is fixed, we must ignore negative scroll in offset calc - if (fixedPosition && isHTML) { - parentRect.top = Math.max(parentRect.top, 0); - parentRect.left = Math.max(parentRect.left, 0); - } - var offsets = getClientRect({ - top: childrenRect.top - parentRect.top - borderTopWidth, - left: childrenRect.left - parentRect.left - borderLeftWidth, - width: childrenRect.width, - height: childrenRect.height - }); - offsets.marginTop = 0; - offsets.marginLeft = 0; +_defineProperty$1(MultiSlider, "Handle", MultiSliderHandle); - // Subtract margins of documentElement in case it's being used as parent - // we do this only on HTML because it's the only element that behaves - // differently when margins are applied to it. The margins are included in - // the box of the documentElement, in the other cases not. - if (!isIE10 && isHTML) { - var marginTop = parseFloat(styles.marginTop); - var marginLeft = parseFloat(styles.marginLeft); +var _excluded$G = ["children", "className", "onOutsideClick"]; +var OutsideClick = /*#__PURE__*/React.forwardRef(function (props, ref) { + var children = props.children, + className = props.className, + onOutsideClick = props.onOutsideClick, + rest = _objectWithoutProperties(props, _excluded$G); - offsets.top -= borderTopWidth - marginTop; - offsets.bottom -= borderTopWidth - marginTop; - offsets.left -= borderLeftWidth - marginLeft; - offsets.right -= borderLeftWidth - marginLeft; + var innerRef = React.useRef(null); + React.useImperativeHandle(ref, function () { + return innerRef.current; + }, [innerRef]); + React.useEffect(function () { + document.addEventListener('click', handleOutsideClick, true); + return function () { + document.removeEventListener('click', handleOutsideClick); + }; + }, []); + var handleOutsideClick = React.useCallback(function (event) { + var element = innerRef; - // Attach marginTop and marginLeft because in some circumstances we may need them - offsets.marginTop = marginTop; - offsets.marginLeft = marginLeft; - } + if (!event.target || !element.current) { + return; + } - if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') { - offsets = includeScroll(offsets, parent); - } + if (!element.current.contains(event.target)) { + onOutsideClick(event); + } + }, []); + var classes = classnames(_defineProperty$1({}, 'OutsideClick', true), className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + ref: innerRef + }, rest, { + className: classes + }), children); +}); +OutsideClick.displayName = 'OutsideClick'; - return offsets; -} +var _excluded$F = ["appearance", "children", "className", "color"]; +var Paragraph = function Paragraph(props) { + var _classNames; -function getViewportOffsetRectRelativeToArtbitraryNode(element) { - var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + var appearance = props.appearance, + children = props.children, + className = props.className, + color = props.color, + rest = _objectWithoutProperties(props, _excluded$F); - var html = element.ownerDocument.documentElement; - var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html); - var width = Math.max(html.clientWidth, window.innerWidth || 0); - var height = Math.max(html.clientHeight, window.innerHeight || 0); + var classes = classnames((_classNames = { + Text: true + }, _defineProperty$1(_classNames, "Text--".concat(appearance), !color && appearance), _defineProperty$1(_classNames, "color-".concat(color), color), _classNames), className); + return /*#__PURE__*/React.createElement(Link$1, _extends$2({ + "data-test": "DesignSystem-Paragraph" + }, rest, { + className: classes, + componentType: "p" + }), children); +}; +Paragraph.displayName = 'Paragraph'; +Paragraph.defaultProps = { + appearance: 'default' +}; - var scrollTop = !excludeScroll ? getScroll(html) : 0; - var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0; +var ProgressBar = function ProgressBar(props) { + var _classNames; - var offset = { - top: scrollTop - relativeOffset.top + relativeOffset.marginTop, - left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft, - width: width, - height: height + var max = props.max, + value = props.value, + className = props.className, + size = props.size; + var baseProps = extractBaseProps(props); + var style = { + width: value > 0 ? "".concat(Math.min(value, max) * 100 / max, "%") : '0' }; + var ProgressBarClass = classnames({ + ProgressBar: true + }, className); + var ProgressIndicatorClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'ProgressBar-indicator', true), _defineProperty$1(_classNames, 'ProgressBar-indicator--small', size === 'small'), _defineProperty$1(_classNames, 'ProgressBar-indicator--regular', size === 'regular'), _classNames)); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-ProgressBar" + }, baseProps, { + className: ProgressBarClass + }), /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-ProgressBar-Indicator", + className: ProgressIndicatorClass, + style: style + })); +}; +ProgressBar.displayName = 'ProgressBar'; +ProgressBar.defaultProps = { + max: 100, + size: 'regular' +}; - return getClientRect(offset); -} +var _excluded$E = ["size", "label", "disabled", "onChange", "name", "value", "checked", "defaultChecked", "className", "helpText", "error"]; +var Radio = /*#__PURE__*/React.forwardRef(function (props, forwardedRef) { + var _classNames, _classNames2, _classNames3; -/** - * Check if the given element is fixed or is inside a fixed parent - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @argument {Element} customContainer - * @returns {Boolean} answer to "isFixed?" - */ -function isFixed(element) { - var nodeName = element.nodeName; - if (nodeName === 'BODY' || nodeName === 'HTML') { - return false; - } - if (getStyleComputedProperty(element, 'position') === 'fixed') { - return true; - } - var parentNode = getParentNode(element); - if (!parentNode) { - return false; - } - return isFixed(parentNode); -} - -/** - * Finds the first parent of an element that has a transformed property defined - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @returns {Element} first transformed parent or documentElement - */ + var _props$size = props.size, + size = _props$size === void 0 ? 'regular' : _props$size, + label = props.label, + disabled = props.disabled, + onChange = props.onChange, + name = props.name, + value = props.value, + checked = props.checked, + defaultChecked = props.defaultChecked, + className = props.className, + helpText = props.helpText, + error = props.error, + rest = _objectWithoutProperties(props, _excluded$E); -function getFixedPositionOffsetParent(element) { - // This check is needed to avoid errors in case one of the elements isn't defined for any reason - if (!element || !element.parentElement || isIE()) { - return document.documentElement; - } - var el = element.parentElement; - while (el && getStyleComputedProperty(el, 'transform') === 'none') { - el = el.parentElement; - } - return el || document.documentElement; -} + var ref = React.useRef(null); + React.useImperativeHandle(forwardedRef, function () { + return ref.current; + }); + var RadioClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Radio', true), _defineProperty$1(_classNames, 'Radio--disabled', disabled), _classNames), className); + var RadioWrapper = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Radio-wrapper', true), _defineProperty$1(_classNames2, "Radio-defaultWrapper", !error), _defineProperty$1(_classNames2, "Radio-errorWrapper", error), _defineProperty$1(_classNames2, "Radio-wrapper--".concat(size), size), _classNames2)); + var RadioOuterWrapper = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Radio-outerWrapper', true), _defineProperty$1(_classNames3, "Radio-outerWrapper--".concat(size), size), _classNames3)); + var RadioLabelClass = classnames(_defineProperty$1({}, 'Radio-Label', true)); + var id = "".concat(name, "-").concat(label, "-").concat(uidGenerator()); + return /*#__PURE__*/React.createElement("div", { + className: RadioClass, + "data-test": "DesignSystem-Radio" + }, /*#__PURE__*/React.createElement("div", { + className: RadioOuterWrapper, + "data-test": "DesignSystem-Radio-OuterWrapper" + }, /*#__PURE__*/React.createElement("input", _extends$2({ + tabIndex: 0 + }, rest, { + type: "radio", + disabled: disabled, + checked: checked, + defaultChecked: defaultChecked, + ref: ref, + name: name, + value: value, + onChange: onChange, + className: "Radio-input", + id: id, + "data-test": "DesignSystem-Radio-Input" + })), /*#__PURE__*/React.createElement("span", { + "data-test": "DesignSystem-Radio-wrapper", + className: RadioWrapper + })), /*#__PURE__*/React.createElement("div", { + className: "Radio-labelWrapper" + }, label && /*#__PURE__*/React.createElement("label", { + className: RadioLabelClass, + htmlFor: id, + "data-test": "DesignSystem-Radio-Label" + }, /*#__PURE__*/React.createElement(Text, { + size: size === 'tiny' ? 'small' : 'regular', + appearance: disabled ? 'disabled' : 'default' + }, label)), helpText && /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-Radio-HelpText", + size: "small", + appearance: disabled ? 'disabled' : 'subtle' + }, helpText.trim()))); +}); +Radio.displayName = 'Radio'; -/** - * Computed the boundaries limits and return them - * @method - * @memberof Popper.Utils - * @param {HTMLElement} popper - * @param {HTMLElement} reference - * @param {number} padding - * @param {HTMLElement} boundariesElement - Element used to define the boundaries - * @param {Boolean} fixedPosition - Is in fixed position mode - * @returns {Object} Coordinates of the boundaries - */ -function getBoundaries(popper, reference, padding, boundariesElement) { - var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; +var _excluded$D = ["className", "children"]; +var Row = /*#__PURE__*/React.forwardRef(function (props, ref) { + var className = props.className, + children = props.children, + rest = _objectWithoutProperties(props, _excluded$D); - // NOTE: 1 DOM access here + var classes = classnames(_defineProperty$1({ + Row: true + }, "".concat(className), className)); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Row", + ref: ref + }, rest, { + className: classes + }), children); +}); +Row.displayName = 'Row'; - var boundaries = { top: 0, left: 0 }; - var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference)); +var StatusHint = function StatusHint(props) { + var _classNames2; - // Handle viewport case - if (boundariesElement === 'viewport') { - boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition); - } else { - // Handle other cases based on DOM element used as boundaries - var boundariesNode = void 0; - if (boundariesElement === 'scrollParent') { - boundariesNode = getScrollParent(getParentNode(reference)); - if (boundariesNode.nodeName === 'BODY') { - boundariesNode = popper.ownerDocument.documentElement; + var appearance = props.appearance, + children = props.children, + _onMouseEnter = props.onMouseEnter, + _onMouseLeave = props.onMouseLeave, + _onClick = props.onClick, + truncateLabel = props.truncateLabel, + className = props.className; + var baseProps = extractBaseProps(props); + var StatusHintClass = classnames(_defineProperty$1({}, 'StatusHint', true), className); + var StatusHintIconClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'StatusHint-icon', true), _defineProperty$1(_classNames2, "StatusHint--".concat(appearance), appearance), _classNames2)); + var StatusHintTextClass = classnames(_defineProperty$1({}, 'ellipsis--noWrap', truncateLabel)); + return ( + /*#__PURE__*/ + // TODO(a11y): fix accessibility + + /* eslint-disable */ + React.createElement("div", _extends$2({ + "data-test": "DesignSystem-StatusHint" + }, baseProps, { + className: StatusHintClass, + onClick: function onClick(e) { + return _onClick && _onClick(e); + }, + onMouseEnter: function onMouseEnter(e) { + return _onMouseEnter && _onMouseEnter(e); + }, + onMouseLeave: function onMouseLeave(e) { + return _onMouseLeave && _onMouseLeave(e); } - } else if (boundariesElement === 'window') { - boundariesNode = popper.ownerDocument.documentElement; - } else { - boundariesNode = boundariesElement; - } + }), /*#__PURE__*/React.createElement("span", { + "data-test": "DesignSystem-StatusHint--Icon", + className: StatusHintIconClass + }), /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-StatusHint--Text", + weight: 'medium', + className: StatusHintTextClass + }, children)) + ); +}; +StatusHint.displayName = 'StatusHint'; +StatusHint.defaultProps = { + appearance: 'default' +}; - var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition); +var Pills = function Pills(props) { + var _classNames; - // In case of HTML, we need a different computation - if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) { - var _getWindowSizes = getWindowSizes(popper.ownerDocument), - height = _getWindowSizes.height, - width = _getWindowSizes.width; + var appearance = props.appearance, + children = props.children, + subtle = props.subtle, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classnames((_classNames = { + Pills: true + }, _defineProperty$1(_classNames, "Badge--".concat(appearance), appearance && !subtle), _defineProperty$1(_classNames, "Badge--subtle-".concat(appearance), subtle), _classNames), className); + return /*#__PURE__*/React.createElement("span", _extends$2({ + "data-test": "DesignSystem-Pills" + }, baseProps, { + className: classes + }), children); +}; +Pills.displayName = 'Pills'; +Pills.defaultProps = { + appearance: 'secondary' +}; - boundaries.top += offsets.top - offsets.marginTop; - boundaries.bottom = height + offsets.top; - boundaries.left += offsets.left - offsets.marginLeft; - boundaries.right = width + offsets.left; - } else { - // for all the other DOM elements, this one is good - boundaries = offsets; - } - } +var Spinner = function Spinner(props) { + var appearance = props.appearance, + size = props.size, + className = props.className; + var baseProps = extractBaseProps(props); + var wrapperClasses = classnames(_defineProperty$1({ + Spinner: true + }, "Spinner--".concat(size), size), className); + var circleClasses = classnames(_defineProperty$1({ + Circle: true + }, "Circle--".concat(appearance), appearance)); + var svgProps = { + viewBox: '0 0 50 50' + }; + var circleProps = { + cx: 25, + cy: 25, + r: 20, + fill: 'none', + strokeMiterlimit: '10', + strokeWidth: '4' + }; + return /*#__PURE__*/React.createElement("svg", _extends$2({}, baseProps, { + className: wrapperClasses + }, svgProps), /*#__PURE__*/React.createElement("circle", _extends$2({ + className: circleClasses + }, circleProps))); +}; +Spinner.displayName = 'Spinner'; +Spinner.defaultProps = { + appearance: 'primary', + size: 'medium' +}; - // Add paddings - padding = padding || 0; - var isPaddingNumber = typeof padding === 'number'; - boundaries.left += isPaddingNumber ? padding : padding.left || 0; - boundaries.top += isPaddingNumber ? padding : padding.top || 0; - boundaries.right -= isPaddingNumber ? padding : padding.right || 0; - boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0; +var _excluded$C = ["value", "defaultValue", "onRelease", "onChange"]; +var Slider = function Slider(props) { + var valueProp = props.value, + defaultValue = props.defaultValue, + onRelease = props.onRelease, + onChange = props.onChange, + rest = _objectWithoutProperties(props, _excluded$C); - return boundaries; -} + var _React$useState = React.useState(valueProp === undefined ? defaultValue : valueProp), + _React$useState2 = _slicedToArray(_React$useState, 2), + value = _React$useState2[0], + setValue = _React$useState2[1]; -function getArea(_ref) { - var width = _ref.width, - height = _ref.height; + React.useEffect(function () { + if (valueProp !== undefined) { + setValue(valueProp); + } + }, [valueProp]); - return width * height; -} + var onChangeHandler = function onChangeHandler(newValue) { + if (valueProp === undefined) { + setValue(newValue); + } -/** - * Utility used to transform the `auto` placement to the placement with more - * available space. - * @method - * @memberof Popper.Utils - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) { - var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0; + if (onChange) onChange(newValue); + }; - if (placement.indexOf('auto') === -1) { - return placement; - } + return /*#__PURE__*/React.createElement(MultiSlider, rest, /*#__PURE__*/React.createElement(MultiSlider.Handle, { + value: value, + onChange: onChangeHandler, + onRelease: onRelease, + fillBefore: true + })); +}; +Slider.displayName = 'Slider'; +Slider.defaultProps = _objectSpread2(_objectSpread2({}, MultiSlider.defaultProps), {}, { + defaultValue: 0 +}); - var boundaries = getBoundaries(popper, reference, padding, boundariesElement); +var _excluded$B = ["value", "defaultValue", "onChange", "onRelease"]; +var RangeIndex; - var rects = { - top: { - width: boundaries.width, - height: refRect.top - boundaries.top - }, - right: { - width: boundaries.right - refRect.right, - height: boundaries.height - }, - bottom: { - width: boundaries.width, - height: boundaries.bottom - refRect.bottom - }, - left: { - width: refRect.left - boundaries.left, - height: boundaries.height +(function (RangeIndex) { + RangeIndex[RangeIndex["START"] = 0] = "START"; + RangeIndex[RangeIndex["END"] = 1] = "END"; +})(RangeIndex || (RangeIndex = {})); + +var RangeSlider = function RangeSlider(props) { + var valueProp = props.value, + defaultValue = props.defaultValue, + onChange = props.onChange, + onRelease = props.onRelease, + rest = _objectWithoutProperties(props, _excluded$B); + + var _React$useState = React.useState(valueProp === undefined ? defaultValue : valueProp), + _React$useState2 = _slicedToArray(_React$useState, 2), + value = _React$useState2[0], + setValue = _React$useState2[1]; + + React.useEffect(function () { + if (valueProp !== undefined) { + setValue(valueProp); } - }; + }, [valueProp]); - var sortedAreas = Object.keys(rects).map(function (key) { - return _extends$1({ - key: key - }, rects[key], { - area: getArea(rects[key]) - }); - }).sort(function (a, b) { - return b.area - a.area; - }); + var onChangeHandler = function onChangeHandler(range) { + if (valueProp === undefined) { + setValue(range); + } - var filteredAreas = sortedAreas.filter(function (_ref2) { - var width = _ref2.width, - height = _ref2.height; - return width >= popper.clientWidth && height >= popper.clientHeight; - }); + if (onChange) onChange(range); + }; - var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key; + return /*#__PURE__*/React.createElement(MultiSlider, _extends$2({ + onRangeChange: onChangeHandler, + onRangeRelease: onRelease + }, rest), /*#__PURE__*/React.createElement(MultiSlider.Handle, { + value: value[RangeIndex.START], + fillAfter: true + }), /*#__PURE__*/React.createElement(MultiSlider.Handle, { + value: value[RangeIndex.END] + })); +}; +RangeSlider.displayName = 'RangeSlider'; +RangeSlider.defaultProps = _objectSpread2(_objectSpread2({}, MultiSlider.defaultProps), {}, { + defaultValue: [0, 10] +}); - var variation = placement.split('-')[1]; +var _excluded$A = ["appearance", "children", "className", "color"]; +var Subheading = function Subheading(props) { + var _classNames; - return computedPlacement + (variation ? '-' + variation : ''); -} + var appearance = props.appearance, + children = props.children, + className = props.className, + color = props.color, + rest = _objectWithoutProperties(props, _excluded$A); -/** - * Get offsets to the reference element - * @method - * @memberof Popper.Utils - * @param {Object} state - * @param {Element} popper - the popper element - * @param {Element} reference - the reference element (the popper will be relative to this) - * @param {Element} fixedPosition - is in fixed position mode - * @returns {Object} An object containing the offsets which will be applied to the popper - */ -function getReferenceOffsets(state, popper, reference) { - var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; + var classes = classnames((_classNames = { + Subheading: true + }, _defineProperty$1(_classNames, "Subheading--".concat(appearance), !color && appearance), _defineProperty$1(_classNames, "color-".concat(color), color), _classNames), className); + return /*#__PURE__*/React.createElement(Link$1, _extends$2({ + "data-test": "DesignSystem-Subheading" + }, rest, { + className: classes, + componentType: 'h4' + }), children); +}; +Subheading.displayName = 'Subheading'; +Subheading.defaultProps = { + appearance: 'default' +}; - var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference)); - return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition); -} +var _excluded$z = ["size", "defaultChecked", "disabled", "onChange", "name", "value", "className", "appearance", "checked"]; /** - * Get the outer sizes of the given element (offset size + margins) - * @method - * @memberof Popper.Utils - * @argument {Element} element - * @returns {Object} object containing width and height properties + * ######Switch has two types: + * - [Controlled Switch](https://reactjs.org/docs/forms.html#controlled-components) + * - [Uncontrolled Switch](https://reactjs.org/docs/uncontrolled-components.html) */ -function getOuterSizes(element) { - var window = element.ownerDocument.defaultView; - var styles = window.getComputedStyle(element); - var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0); - var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0); - var result = { - width: element.offsetWidth + y, - height: element.offsetHeight + x - }; - return result; -} +var Switch = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames, _classNames2; -/** - * Get the opposite placement of the given one - * @method - * @memberof Popper.Utils - * @argument {String} placement - * @returns {String} flipped placement - */ -function getOppositePlacement(placement) { - var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' }; - return placement.replace(/left|right|bottom|top/g, function (matched) { - return hash[matched]; - }); -} + var _props$size = props.size, + size = _props$size === void 0 ? 'regular' : _props$size, + defaultChecked = props.defaultChecked, + disabled = props.disabled, + onChange = props.onChange, + name = props.name, + value = props.value, + className = props.className; + props.appearance; + var checkedProp = props.checked, + rest = _objectWithoutProperties(props, _excluded$z); -/** - * Get offsets to the popper - * @method - * @memberof Popper.Utils - * @param {Object} position - CSS position the Popper will get applied - * @param {HTMLElement} popper - the popper element - * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this) - * @param {String} placement - one of the valid placement options - * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper - */ -function getPopperOffsets(popper, referenceOffsets, placement) { - placement = placement.split('-')[0]; + var _React$useState = React.useState(checkedProp === undefined ? defaultChecked : checkedProp), + _React$useState2 = _slicedToArray(_React$useState, 2), + checked = _React$useState2[0], + setChecked = _React$useState2[1]; - // Get popper node sizes - var popperRect = getOuterSizes(popper); + React.useEffect(function () { + if (checkedProp !== undefined) setChecked(checkedProp); + }, [checkedProp]); + var SwitchClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Switch', true), _defineProperty$1(_classNames, 'Switch--disabled', disabled), _defineProperty$1(_classNames, "Switch--".concat(size), size), _classNames), className); + var SwitchWrapper = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Switch-wrapper', true), _defineProperty$1(_classNames2, 'Switch-wrapper--disabled', disabled), _defineProperty$1(_classNames2, "Switch-wrapper--".concat(size), size), _defineProperty$1(_classNames2, 'Switch-wrapper--checked', checked), _defineProperty$1(_classNames2, 'Switch-wrapper--checkedDisabled', checked && disabled), _classNames2)); - // Add position, width and height to our offsets object - var popperOffsets = { - width: popperRect.width, - height: popperRect.height + var onChangeHandler = function onChangeHandler(event) { + if (event.type == 'change' || isSpaceKey(event)) { + if (checkedProp === undefined) setChecked(!checked); + if (onChange) onChange(event, !checked); + } }; - // depending by the popper placement we have to compute its offsets slightly differently - var isHoriz = ['right', 'left'].indexOf(placement) !== -1; - var mainSide = isHoriz ? 'top' : 'left'; - var secondarySide = isHoriz ? 'left' : 'top'; - var measurement = isHoriz ? 'height' : 'width'; - var secondaryMeasurement = !isHoriz ? 'height' : 'width'; + return /*#__PURE__*/React.createElement("div", { + className: SwitchClass + }, /*#__PURE__*/React.createElement("input", _extends$2({}, rest, { + type: "checkbox", + defaultChecked: defaultChecked, + disabled: disabled, + onChange: onChangeHandler, + checked: checked, + ref: ref, + name: name, + value: value, + className: "Switch-input", + onKeyUp: onChangeHandler + })), /*#__PURE__*/React.createElement("span", { + className: SwitchWrapper + })); +}); +Switch.displayName = 'Switch'; - popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2; - if (placement === secondarySide) { - popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement]; - } else { - popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)]; - } +var _excluded$y = ["rows", "resize", "disabled", "name", "placeholder", "value", "defaultValue", "required", "error", "onChange", "onClick", "onBlur", "onFocus", "className"]; +var Textarea = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames; - return popperOffsets; -} + var _props$rows = props.rows, + rows = _props$rows === void 0 ? 3 : _props$rows, + _props$resize = props.resize, + resize = _props$resize === void 0 ? true : _props$resize, + disabled = props.disabled, + name = props.name, + placeholder = props.placeholder, + value = props.value, + defaultValue = props.defaultValue, + required = props.required, + error = props.error, + onChange = props.onChange, + onClick = props.onClick, + onBlur = props.onBlur, + onFocus = props.onFocus, + className = props.className, + rest = _objectWithoutProperties(props, _excluded$y); -/** - * Mimics the `find` method of Array - * @method - * @memberof Popper.Utils - * @argument {Array} arr - * @argument prop - * @argument value - * @returns index or -1 - */ -function find(arr, check) { - // use native find if supported - if (Array.prototype.find) { - return arr.find(check); - } + var classes = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Textarea', true), _defineProperty$1(_classNames, 'Textarea--resize', resize), _defineProperty$1(_classNames, 'Textarea--error', error), _classNames), className); + return /*#__PURE__*/React.createElement("textarea", _extends$2({ + "data-test": "DesignSystem-Textarea" + }, rest, { + ref: ref, + name: name, + rows: rows, + placeholder: placeholder, + className: classes, + value: value, + defaultValue: defaultValue, + required: required, + disabled: disabled, + onChange: onChange, + onBlur: onBlur, + onClick: onClick, + onFocus: onFocus + })); +}); +Textarea.displayName = 'Textarea'; - // use `filter` to obtain the same behavior of `find` - return arr.filter(check)[0]; -} +var ActionButton = function ActionButton(props) { + var _classNames; -/** - * Return the index of the matching object - * @method - * @memberof Popper.Utils - * @argument {Array} arr - * @argument prop - * @argument value - * @returns index or -1 - */ -function findIndex(arr, prop, value) { - // use native findIndex if supported - if (Array.prototype.findIndex) { - return arr.findIndex(function (cur) { - return cur[prop] === value; + var appearance = props.appearance, + label = props.label, + onClick = props.onClick; + var buttonClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Button', true), _defineProperty$1(_classNames, 'Button--tiny', true), _defineProperty$1(_classNames, 'Toast-actionButton', true), _defineProperty$1(_classNames, "Toast-actionButton--".concat(appearance), appearance), _classNames)); + + var onClickHandler = function onClickHandler(e) { + e.preventDefault(); + if (onClick) onClick(e); + }; + + return /*#__PURE__*/React.createElement("button", { + className: buttonClass, + onClick: onClickHandler + }, /*#__PURE__*/React.createElement(Text, { + appearance: "white" + }, label)); +}; + +ActionButton.displayName = 'ActionButton'; +ActionButton.defaultProps = { + appearance: 'default' +}; + +var Toast = function Toast(props) { + var _classNames, _classNames2, _classNames4, _classNames5; + + var title = props.title, + message = props.message, + actions = props.actions, + onClose = props.onClose, + className = props.className; + var appearance = props.appearance; + appearance = appearance === 'default' ? 'info' : appearance; + var baseProps = extractBaseProps(props); + var wrapperClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Toast', true), _defineProperty$1(_classNames, 'Toast--withMessage', message), _defineProperty$1(_classNames, "Toast--".concat(appearance), appearance), _classNames), className); + var IconMapping = { + info: 'info', + success: 'check_circle', + alert: 'error', + warning: 'warning' + }; + var icon = IconMapping[appearance]; + var titleClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Toast-title', true), _defineProperty$1(_classNames2, 'Toast-title--withMessage', message), _classNames2)); + + var iconClass = function iconClass(align) { + var _classNames3; + + return classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Toast-icon', true), _defineProperty$1(_classNames3, "Toast-icon--".concat(align), align), _defineProperty$1(_classNames3, "Toast-icon--".concat(appearance), appearance), _defineProperty$1(_classNames3, "Toast-close-icon--".concat(appearance), appearance && align === 'right'), _classNames3)); + }; + + var textClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'Toast-text', true), _defineProperty$1(_classNames4, "Toast-text--".concat(appearance), appearance), _classNames4)); + var headingClass = classnames((_classNames5 = {}, _defineProperty$1(_classNames5, 'Toast-heading', true), _defineProperty$1(_classNames5, "Toast-heading--".concat(appearance), appearance), _classNames5)); + + var onCloseHandler = function onCloseHandler() { + if (onClose) onClose(); + }; + + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: wrapperClass + }), icon && /*#__PURE__*/React.createElement(Icon, { + name: icon, + className: iconClass('left') + }), /*#__PURE__*/React.createElement("div", { + className: "Toast-body" + }, /*#__PURE__*/React.createElement("div", { + className: titleClass + }, /*#__PURE__*/React.createElement(Heading, { + size: "s", + className: headingClass, + appearance: appearance !== 'warning' ? 'white' : 'default' + }, title), /*#__PURE__*/React.createElement(Icon, { + name: 'close', + className: iconClass('right'), + onClick: onCloseHandler, + appearance: appearance !== 'warning' ? 'white' : 'default' + })), message && /*#__PURE__*/React.createElement(Text, { + appearance: appearance !== 'warning' ? 'white' : 'default', + className: textClass + }, message), !!(actions !== null && actions !== void 0 && actions.length) && /*#__PURE__*/React.createElement("div", { + className: "Toast-actions" + }, actions.slice(0, 2).map(function (action, index) { + return /*#__PURE__*/React.createElement(ActionButton, { + key: index, + label: action.label, + appearance: appearance, + onClick: action.onClick }); + })))); +}; +Toast.displayName = 'Toast'; +Toast.defaultProps = { + appearance: 'info' +}; + +var objectWithoutPropertiesLoose = createCommonjsModule(function (module) { +function _objectWithoutPropertiesLoose(source, excluded) { + if (source == null) return {}; + var target = {}; + var sourceKeys = Object.keys(source); + var key, i; + + for (i = 0; i < sourceKeys.length; i++) { + key = sourceKeys[i]; + if (excluded.indexOf(key) >= 0) continue; + target[key] = source[key]; } - // use `find` + `indexOf` if `findIndex` isn't supported - var match = find(arr, function (obj) { - return obj[prop] === value; - }); - return arr.indexOf(match); + return target; } -/** - * Loop trough the list of modifiers and run them in order, - * each of them will then edit the data object. - * @method - * @memberof Popper.Utils - * @param {dataObject} data - * @param {Array} modifiers - * @param {String} ends - Optional modifier name used as stopper - * @returns {dataObject} - */ -function runModifiers(modifiers, data, ends) { - var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends)); +module.exports = _objectWithoutPropertiesLoose; +module.exports["default"] = module.exports, module.exports.__esModule = true; +}); - modifiersToRun.forEach(function (modifier) { - if (modifier['function']) { - // eslint-disable-line dot-notation - console.warn('`modifier.function` is deprecated, use `modifier.fn`!'); - } - var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation - if (modifier.enabled && isFunction(fn)) { - // Add properties to offsets to make them a complete clientRect object - // we do this before each modifier to make sure the previous one doesn't - // mess with these values - data.offsets.popper = getClientRect(data.offsets.popper); - data.offsets.reference = getClientRect(data.offsets.reference); +var _objectWithoutPropertiesLoose = unwrapExports(objectWithoutPropertiesLoose); - data = fn(data, modifier); +var _extends_1 = createCommonjsModule(function (module) { +function _extends() { + module.exports = _extends = Object.assign || function (target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } } - }); - return data; + return target; + }; + + module.exports["default"] = module.exports, module.exports.__esModule = true; + return _extends.apply(this, arguments); } -/** - * Updates the position of the popper, computing the new offsets and applying - * the new style.
- * Prefer `scheduleUpdate` over `update` because of performance reasons. - * @method - * @memberof Popper - */ -function update() { - // if popper is destroyed, don't perform any further update - if (this.state.isDestroyed) { - return; - } +module.exports = _extends; +module.exports["default"] = module.exports, module.exports.__esModule = true; +}); - var data = { - instance: this, - styles: {}, - arrowStyles: {}, - attributes: {}, - flipped: false, - offsets: {} +var _extends$1 = unwrapExports(_extends_1); + +var setPrototypeOf = createCommonjsModule(function (module) { +function _setPrototypeOf(o, p) { + module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { + o.__proto__ = p; + return o; }; - // compute reference element offsets - data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed); + module.exports["default"] = module.exports, module.exports.__esModule = true; + return _setPrototypeOf(o, p); +} - // compute auto placement, store placement inside the data object, - // modifiers will be able to edit `placement` if needed - // and refer to originalPlacement to know the original value - data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding); +module.exports = _setPrototypeOf; +module.exports["default"] = module.exports, module.exports.__esModule = true; +}); - // store the computed placement inside `originalPlacement` - data.originalPlacement = data.placement; +unwrapExports(setPrototypeOf); - data.positionFixed = this.options.positionFixed; +var inheritsLoose = createCommonjsModule(function (module) { +function _inheritsLoose(subClass, superClass) { + subClass.prototype = Object.create(superClass.prototype); + subClass.prototype.constructor = subClass; + setPrototypeOf(subClass, superClass); +} - // compute the popper offsets - data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement); +module.exports = _inheritsLoose; +module.exports["default"] = module.exports, module.exports.__esModule = true; +}); - data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute'; +var _inheritsLoose = unwrapExports(inheritsLoose); - // run the modifiers - data = runModifiers(this.modifiers, data); +var assertThisInitialized = createCommonjsModule(function (module) { +function _assertThisInitialized(self) { + if (self === void 0) { + throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); + } - // the first `update` will call `onCreate` callback - // the other ones will call `onUpdate` callback - if (!this.state.isCreated) { - this.state.isCreated = true; - this.options.onCreate(data); + return self; +} + +module.exports = _assertThisInitialized; +module.exports["default"] = module.exports, module.exports.__esModule = true; +}); + +var _assertThisInitialized = unwrapExports(assertThisInitialized); + +var defineProperty$3 = createCommonjsModule(function (module) { +function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); } else { - this.options.onUpdate(data); + obj[key] = value; } + + return obj; } -/** - * Helper used to know if the given modifier is enabled. - * @method - * @memberof Popper.Utils - * @returns {Boolean} - */ -function isModifierEnabled(modifiers, modifierName) { - return modifiers.some(function (_ref) { - var name = _ref.name, - enabled = _ref.enabled; - return enabled && name === modifierName; - }); -} - -/** - * Get the prefixed supported property name - * @method - * @memberof Popper.Utils - * @argument {String} property (camelCase) - * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix) - */ -function getSupportedPropertyName(property) { - var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O']; - var upperProp = property.charAt(0).toUpperCase() + property.slice(1); - - for (var i = 0; i < prefixes.length; i++) { - var prefix = prefixes[i]; - var toCheck = prefix ? '' + prefix + upperProp : property; - if (typeof document.body.style[toCheck] !== 'undefined') { - return toCheck; - } - } - return null; -} +module.exports = _defineProperty; +module.exports["default"] = module.exports, module.exports.__esModule = true; +}); -/** - * Destroys the popper. - * @method - * @memberof Popper - */ -function destroy() { - this.state.isDestroyed = true; +var _defineProperty = unwrapExports(defineProperty$3); - // touch DOM only if `applyStyle` modifier is enabled - if (isModifierEnabled(this.modifiers, 'applyStyle')) { - this.popper.removeAttribute('x-placement'); - this.popper.style.position = ''; - this.popper.style.top = ''; - this.popper.style.left = ''; - this.popper.style.right = ''; - this.popper.style.bottom = ''; - this.popper.style.willChange = ''; - this.popper.style[getSupportedPropertyName('transform')] = ''; - } +var toStr$4 = Object.prototype.toString; - this.disableEventListeners(); +var isArguments$1 = function isArguments(value) { + var str = toStr$4.call(value); + var isArgs = str === '[object Arguments]'; + if (!isArgs) { + isArgs = str !== '[object Array]' && + value !== null && + typeof value === 'object' && + typeof value.length === 'number' && + value.length >= 0 && + toStr$4.call(value.callee) === '[object Function]'; + } + return isArgs; +}; - // remove the popper if user explicitly asked for the deletion on destroy - // do not use `remove` because IE11 doesn't support it - if (this.options.removeOnDestroy) { - this.popper.parentNode.removeChild(this.popper); - } - return this; -} +var keysShim$1; +if (!Object.keys) { + // modified from https://github.com/es-shims/es5-shim + var has$1 = Object.prototype.hasOwnProperty; + var toStr$3 = Object.prototype.toString; + var isArgs = isArguments$1; // eslint-disable-line global-require + var isEnumerable = Object.prototype.propertyIsEnumerable; + var hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString'); + var hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype'); + var dontEnums = [ + 'toString', + 'toLocaleString', + 'valueOf', + 'hasOwnProperty', + 'isPrototypeOf', + 'propertyIsEnumerable', + 'constructor' + ]; + var equalsConstructorPrototype = function (o) { + var ctor = o.constructor; + return ctor && ctor.prototype === o; + }; + var excludedKeys = { + $applicationCache: true, + $console: true, + $external: true, + $frame: true, + $frameElement: true, + $frames: true, + $innerHeight: true, + $innerWidth: true, + $onmozfullscreenchange: true, + $onmozfullscreenerror: true, + $outerHeight: true, + $outerWidth: true, + $pageXOffset: true, + $pageYOffset: true, + $parent: true, + $scrollLeft: true, + $scrollTop: true, + $scrollX: true, + $scrollY: true, + $self: true, + $webkitIndexedDB: true, + $webkitStorageInfo: true, + $window: true + }; + var hasAutomationEqualityBug = (function () { + /* global window */ + if (typeof window === 'undefined') { return false; } + for (var k in window) { + try { + if (!excludedKeys['$' + k] && has$1.call(window, k) && window[k] !== null && typeof window[k] === 'object') { + try { + equalsConstructorPrototype(window[k]); + } catch (e) { + return true; + } + } + } catch (e) { + return true; + } + } + return false; + }()); + var equalsConstructorPrototypeIfNotBuggy = function (o) { + /* global window */ + if (typeof window === 'undefined' || !hasAutomationEqualityBug) { + return equalsConstructorPrototype(o); + } + try { + return equalsConstructorPrototype(o); + } catch (e) { + return false; + } + }; -/** - * Get the window associated with the element - * @argument {Element} element - * @returns {Window} - */ -function getWindow(element) { - var ownerDocument = element.ownerDocument; - return ownerDocument ? ownerDocument.defaultView : window; -} + keysShim$1 = function keys(object) { + var isObject = object !== null && typeof object === 'object'; + var isFunction = toStr$3.call(object) === '[object Function]'; + var isArguments = isArgs(object); + var isString = isObject && toStr$3.call(object) === '[object String]'; + var theKeys = []; -function attachToScrollParents(scrollParent, event, callback, scrollParents) { - var isBody = scrollParent.nodeName === 'BODY'; - var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent; - target.addEventListener(event, callback, { passive: true }); + if (!isObject && !isFunction && !isArguments) { + throw new TypeError('Object.keys called on a non-object'); + } - if (!isBody) { - attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents); - } - scrollParents.push(target); -} + var skipProto = hasProtoEnumBug && isFunction; + if (isString && object.length > 0 && !has$1.call(object, 0)) { + for (var i = 0; i < object.length; ++i) { + theKeys.push(String(i)); + } + } -/** - * Setup needed event listeners used to update the popper position - * @method - * @memberof Popper.Utils - * @private - */ -function setupEventListeners(reference, options, state, updateBound) { - // Resize event listener on window - state.updateBound = updateBound; - getWindow(reference).addEventListener('resize', state.updateBound, { passive: true }); + if (isArguments && object.length > 0) { + for (var j = 0; j < object.length; ++j) { + theKeys.push(String(j)); + } + } else { + for (var name in object) { + if (!(skipProto && name === 'prototype') && has$1.call(object, name)) { + theKeys.push(String(name)); + } + } + } - // Scroll event listener on scroll parents - var scrollElement = getScrollParent(reference); - attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents); - state.scrollElement = scrollElement; - state.eventsEnabled = true; + if (hasDontEnumBug) { + var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object); - return state; + for (var k = 0; k < dontEnums.length; ++k) { + if (!(skipConstructor && dontEnums[k] === 'constructor') && has$1.call(object, dontEnums[k])) { + theKeys.push(dontEnums[k]); + } + } + } + return theKeys; + }; } +var implementation$4 = keysShim$1; -/** - * It will add resize/scroll events and start recalculating - * position of the popper element when they are triggered. - * @method - * @memberof Popper - */ -function enableEventListeners() { - if (!this.state.eventsEnabled) { - this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate); - } -} +var slice$1 = Array.prototype.slice; -/** - * Remove event listeners used to update the popper position - * @method - * @memberof Popper.Utils - * @private - */ -function removeEventListeners(reference, state) { - // Remove resize event listener on window - getWindow(reference).removeEventListener('resize', state.updateBound); - // Remove scroll event listener on scroll parents - state.scrollParents.forEach(function (target) { - target.removeEventListener('scroll', state.updateBound); - }); +var origKeys = Object.keys; +var keysShim = origKeys ? function keys(o) { return origKeys(o); } : implementation$4; - // Reset state - state.updateBound = null; - state.scrollParents = []; - state.scrollElement = null; - state.eventsEnabled = false; - return state; -} +var originalKeys = Object.keys; -/** - * It will remove resize/scroll events and won't recalculate popper position - * when they are triggered. It also won't trigger `onUpdate` callback anymore, - * unless you call `update` method manually. - * @method - * @memberof Popper - */ -function disableEventListeners() { - if (this.state.eventsEnabled) { - cancelAnimationFrame(this.scheduleUpdate); - this.state = removeEventListeners(this.reference, this.state); - } -} +keysShim.shim = function shimObjectKeys() { + if (Object.keys) { + var keysWorksWithArguments = (function () { + // Safari 5.0 bug + var args = Object.keys(arguments); + return args && args.length === arguments.length; + }(1, 2)); + if (!keysWorksWithArguments) { + Object.keys = function keys(object) { // eslint-disable-line func-name-matching + if (isArguments$1(object)) { + return originalKeys(slice$1.call(object)); + } + return originalKeys(object); + }; + } + } else { + Object.keys = keysShim; + } + return Object.keys || keysShim; +}; -/** - * Tells if a given input is a number - * @method - * @memberof Popper.Utils - * @param {*} input to check - * @return {Boolean} - */ -function isNumeric(n) { - return n !== '' && !isNaN(parseFloat(n)) && isFinite(n); -} +var objectKeys = keysShim; -/** - * Set the style to the given popper - * @method - * @memberof Popper.Utils - * @argument {Element} element - Element to apply the style to - * @argument {Object} styles - * Object with a list of properties and values which will be applied to the element - */ -function setStyles(element, styles) { - Object.keys(styles).forEach(function (prop) { - var unit = ''; - // add unit if the value is numeric and is one of the following - if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) { - unit = 'px'; - } - element.style[prop] = styles[prop] + unit; - }); -} +/* eslint complexity: [2, 18], max-statements: [2, 33] */ +var shams$1 = function hasSymbols() { + if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; } + if (typeof Symbol.iterator === 'symbol') { return true; } -/** - * Set the attributes to the given popper - * @method - * @memberof Popper.Utils - * @argument {Element} element - Element to apply the attributes to - * @argument {Object} styles - * Object with a list of properties and values which will be applied to the element - */ -function setAttributes(element, attributes) { - Object.keys(attributes).forEach(function (prop) { - var value = attributes[prop]; - if (value !== false) { - element.setAttribute(prop, attributes[prop]); - } else { - element.removeAttribute(prop); - } - }); -} + var obj = {}; + var sym = Symbol('test'); + var symObj = Object(sym); + if (typeof sym === 'string') { return false; } -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by `update` method - * @argument {Object} data.styles - List of style properties - values to apply to popper element - * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The same data object - */ -function applyStyle(data) { - // any property present in `data.styles` will be applied to the popper, - // in this way we can make the 3rd party modifiers add custom styles to it - // Be aware, modifiers could override the properties defined in the previous - // lines of this modifier! - setStyles(data.instance.popper, data.styles); + if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; } + if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; } - // any property present in `data.attributes` will be applied to the popper, - // they will be set as HTML attributes of the element - setAttributes(data.instance.popper, data.attributes); + // temp disabled per https://github.com/ljharb/object.assign/issues/17 + // if (sym instanceof Symbol) { return false; } + // temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4 + // if (!(symObj instanceof Symbol)) { return false; } - // if arrowElement is defined and arrowStyles has some properties - if (data.arrowElement && Object.keys(data.arrowStyles).length) { - setStyles(data.arrowElement, data.arrowStyles); - } + // if (typeof Symbol.prototype.toString !== 'function') { return false; } + // if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; } - return data; -} + var symVal = 42; + obj[sym] = symVal; + for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop + if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; } -/** - * Set the x-placement attribute before everything else because it could be used - * to add margins to the popper margins needs to be calculated to get the - * correct popper offsets. - * @method - * @memberof Popper.modifiers - * @param {HTMLElement} reference - The reference element used to position the popper - * @param {HTMLElement} popper - The HTML element used as popper - * @param {Object} options - Popper.js options - */ -function applyStyleOnLoad(reference, popper, options, modifierOptions, state) { - // compute reference element offsets - var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed); + if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; } - // compute auto placement, store placement inside the data object, - // modifiers will be able to edit `placement` if needed - // and refer to originalPlacement to know the original value - var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding); + var syms = Object.getOwnPropertySymbols(obj); + if (syms.length !== 1 || syms[0] !== sym) { return false; } - popper.setAttribute('x-placement', placement); + if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; } - // Apply `position` to popper before anything else because - // without the position applied we can't guarantee correct computations - setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' }); + if (typeof Object.getOwnPropertyDescriptor === 'function') { + var descriptor = Object.getOwnPropertyDescriptor(obj, sym); + if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; } + } - return options; -} + return true; +}; -/** - * @function - * @memberof Popper.Utils - * @argument {Object} data - The data object generated by `update` method - * @argument {Boolean} shouldRound - If the offsets should be rounded at all - * @returns {Object} The popper's position offsets rounded - * - * The tale of pixel-perfect positioning. It's still not 100% perfect, but as - * good as it can be within reason. - * Discussion here: https://github.com/FezVrasta/popper.js/pull/715 - * - * Low DPI screens cause a popper to be blurry if not using full pixels (Safari - * as well on High DPI screens). - * - * Firefox prefers no rounding for positioning and does not have blurriness on - * high DPI screens. - * - * Only horizontal placement and left/right values need to be considered. - */ -function getRoundedOffsets(data, shouldRound) { - var _data$offsets = data.offsets, - popper = _data$offsets.popper, - reference = _data$offsets.reference; - var round = Math.round, - floor = Math.floor; +var shams = function hasToStringTagShams() { + return shams$1() && !!Symbol.toStringTag; +}; - var noRound = function noRound(v) { - return v; - }; +var origSymbol = typeof Symbol !== 'undefined' && Symbol; - var referenceWidth = round(reference.width); - var popperWidth = round(popper.width); - var isVertical = ['left', 'right'].indexOf(data.placement) !== -1; - var isVariation = data.placement.indexOf('-') !== -1; - var sameWidthParity = referenceWidth % 2 === popperWidth % 2; - var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1; +var hasSymbols$2 = function hasNativeSymbols() { + if (typeof origSymbol !== 'function') { return false; } + if (typeof Symbol !== 'function') { return false; } + if (typeof origSymbol('foo') !== 'symbol') { return false; } + if (typeof Symbol('bar') !== 'symbol') { return false; } - var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor; - var verticalToInteger = !shouldRound ? noRound : round; + return shams$1(); +}; - return { - left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left), - top: verticalToInteger(popper.top), - bottom: verticalToInteger(popper.bottom), - right: horizontalToInteger(popper.right) - }; -} +/* eslint no-invalid-this: 1 */ -var isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent); +var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible '; +var slice = Array.prototype.slice; +var toStr$2 = Object.prototype.toString; +var funcType = '[object Function]'; -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by `update` method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function computeStyle(data, options) { - var x = options.x, - y = options.y; - var popper = data.offsets.popper; +var implementation$3 = function bind(that) { + var target = this; + if (typeof target !== 'function' || toStr$2.call(target) !== funcType) { + throw new TypeError(ERROR_MESSAGE + target); + } + var args = slice.call(arguments, 1); - // Remove this legacy support in Popper.js v2 + var bound; + var binder = function () { + if (this instanceof bound) { + var result = target.apply( + this, + args.concat(slice.call(arguments)) + ); + if (Object(result) === result) { + return result; + } + return this; + } else { + return target.apply( + that, + args.concat(slice.call(arguments)) + ); + } + }; - var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) { - return modifier.name === 'applyStyle'; - }).gpuAcceleration; - if (legacyGpuAccelerationOption !== undefined) { - console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!'); - } - var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration; + var boundLength = Math.max(0, target.length - args.length); + var boundArgs = []; + for (var i = 0; i < boundLength; i++) { + boundArgs.push('$' + i); + } - var offsetParent = getOffsetParent(data.instance.popper); - var offsetParentRect = getBoundingClientRect(offsetParent); + bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder); - // Styles - var styles = { - position: popper.position - }; + if (target.prototype) { + var Empty = function Empty() {}; + Empty.prototype = target.prototype; + bound.prototype = new Empty(); + Empty.prototype = null; + } - var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox); + return bound; +}; - var sideA = x === 'bottom' ? 'top' : 'bottom'; - var sideB = y === 'right' ? 'left' : 'right'; +var functionBind = Function.prototype.bind || implementation$3; - // if gpuAcceleration is set to `true` and transform is supported, - // we use `translate3d` to apply the position to the popper we - // automatically use the supported prefixed version if needed - var prefixedProperty = getSupportedPropertyName('transform'); +var src = functionBind.call(Function.call, Object.prototype.hasOwnProperty); - // now, let's make a step back and look at this code closely (wtf?) - // If the content of the popper grows once it's been positioned, it - // may happen that the popper gets misplaced because of the new content - // overflowing its reference element - // To avoid this problem, we provide two options (x and y), which allow - // the consumer to define the offset origin. - // If we position a popper on top of a reference element, we can set - // `x` to `top` to make the popper grow towards its top instead of - // its bottom. - var left = void 0, - top = void 0; - if (sideA === 'bottom') { - // when offsetParent is the positioning is relative to the bottom of the screen (excluding the scrollbar) - // and not the bottom of the html element - if (offsetParent.nodeName === 'HTML') { - top = -offsetParent.clientHeight + offsets.bottom; - } else { - top = -offsetParentRect.height + offsets.bottom; - } - } else { - top = offsets.top; - } - if (sideB === 'right') { - if (offsetParent.nodeName === 'HTML') { - left = -offsetParent.clientWidth + offsets.right; - } else { - left = -offsetParentRect.width + offsets.right; - } - } else { - left = offsets.left; - } - if (gpuAcceleration && prefixedProperty) { - styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)'; - styles[sideA] = 0; - styles[sideB] = 0; - styles.willChange = 'transform'; - } else { - // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties - var invertTop = sideA === 'bottom' ? -1 : 1; - var invertLeft = sideB === 'right' ? -1 : 1; - styles[sideA] = top * invertTop; - styles[sideB] = left * invertLeft; - styles.willChange = sideA + ', ' + sideB; - } +var undefined$1; - // Attributes - var attributes = { - 'x-placement': data.placement - }; +var $SyntaxError = SyntaxError; +var $Function = Function; +var $TypeError$2 = TypeError; - // Update `data` attributes, styles and arrowStyles - data.attributes = _extends$1({}, attributes, data.attributes); - data.styles = _extends$1({}, styles, data.styles); - data.arrowStyles = _extends$1({}, data.offsets.arrow, data.arrowStyles); +// eslint-disable-next-line consistent-return +var getEvalledConstructor = function (expressionSyntax) { + try { + return $Function('"use strict"; return (' + expressionSyntax + ').constructor;')(); + } catch (e) {} +}; - return data; +var $gOPD$1 = Object.getOwnPropertyDescriptor; +if ($gOPD$1) { + try { + $gOPD$1({}, ''); + } catch (e) { + $gOPD$1 = null; // this is IE 8, which has a broken gOPD + } } -/** - * Helper used to know if the given modifier depends from another one.
- * It checks if the needed modifier is listed and enabled. - * @method - * @memberof Popper.Utils - * @param {Array} modifiers - list of modifiers - * @param {String} requestingName - name of requesting modifier - * @param {String} requestedName - name of requested modifier - * @returns {Boolean} - */ -function isModifierRequired(modifiers, requestingName, requestedName) { - var requesting = find(modifiers, function (_ref) { - var name = _ref.name; - return name === requestingName; - }); - - var isRequired = !!requesting && modifiers.some(function (modifier) { - return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order; - }); +var throwTypeError = function () { + throw new $TypeError$2(); +}; +var ThrowTypeError = $gOPD$1 + ? (function () { + try { + // eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties + arguments.callee; // IE 8 does not throw here + return throwTypeError; + } catch (calleeThrows) { + try { + // IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '') + return $gOPD$1(arguments, 'callee').get; + } catch (gOPDthrows) { + return throwTypeError; + } + } + }()) + : throwTypeError; - if (!isRequired) { - var _requesting = '`' + requestingName + '`'; - var requested = '`' + requestedName + '`'; - console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!'); - } - return isRequired; -} +var hasSymbols$1 = hasSymbols$2(); -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function arrow(data, options) { - var _data$offsets$arrow; +var getProto$1 = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto - // arrow depends on keepTogether in order to work - if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) { - return data; - } +var needsEval = {}; - var arrowElement = options.element; +var TypedArray = typeof Uint8Array === 'undefined' ? undefined$1 : getProto$1(Uint8Array); - // if arrowElement is a string, suppose it's a CSS selector - if (typeof arrowElement === 'string') { - arrowElement = data.instance.popper.querySelector(arrowElement); +var INTRINSICS = { + '%AggregateError%': typeof AggregateError === 'undefined' ? undefined$1 : AggregateError, + '%Array%': Array, + '%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined$1 : ArrayBuffer, + '%ArrayIteratorPrototype%': hasSymbols$1 ? getProto$1([][Symbol.iterator]()) : undefined$1, + '%AsyncFromSyncIteratorPrototype%': undefined$1, + '%AsyncFunction%': needsEval, + '%AsyncGenerator%': needsEval, + '%AsyncGeneratorFunction%': needsEval, + '%AsyncIteratorPrototype%': needsEval, + '%Atomics%': typeof Atomics === 'undefined' ? undefined$1 : Atomics, + '%BigInt%': typeof BigInt === 'undefined' ? undefined$1 : BigInt, + '%Boolean%': Boolean, + '%DataView%': typeof DataView === 'undefined' ? undefined$1 : DataView, + '%Date%': Date, + '%decodeURI%': decodeURI, + '%decodeURIComponent%': decodeURIComponent, + '%encodeURI%': encodeURI, + '%encodeURIComponent%': encodeURIComponent, + '%Error%': Error, + '%eval%': eval, // eslint-disable-line no-eval + '%EvalError%': EvalError, + '%Float32Array%': typeof Float32Array === 'undefined' ? undefined$1 : Float32Array, + '%Float64Array%': typeof Float64Array === 'undefined' ? undefined$1 : Float64Array, + '%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined$1 : FinalizationRegistry, + '%Function%': $Function, + '%GeneratorFunction%': needsEval, + '%Int8Array%': typeof Int8Array === 'undefined' ? undefined$1 : Int8Array, + '%Int16Array%': typeof Int16Array === 'undefined' ? undefined$1 : Int16Array, + '%Int32Array%': typeof Int32Array === 'undefined' ? undefined$1 : Int32Array, + '%isFinite%': isFinite, + '%isNaN%': isNaN, + '%IteratorPrototype%': hasSymbols$1 ? getProto$1(getProto$1([][Symbol.iterator]())) : undefined$1, + '%JSON%': typeof JSON === 'object' ? JSON : undefined$1, + '%Map%': typeof Map === 'undefined' ? undefined$1 : Map, + '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols$1 ? undefined$1 : getProto$1(new Map()[Symbol.iterator]()), + '%Math%': Math, + '%Number%': Number, + '%Object%': Object, + '%parseFloat%': parseFloat, + '%parseInt%': parseInt, + '%Promise%': typeof Promise === 'undefined' ? undefined$1 : Promise, + '%Proxy%': typeof Proxy === 'undefined' ? undefined$1 : Proxy, + '%RangeError%': RangeError, + '%ReferenceError%': ReferenceError, + '%Reflect%': typeof Reflect === 'undefined' ? undefined$1 : Reflect, + '%RegExp%': RegExp, + '%Set%': typeof Set === 'undefined' ? undefined$1 : Set, + '%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols$1 ? undefined$1 : getProto$1(new Set()[Symbol.iterator]()), + '%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined$1 : SharedArrayBuffer, + '%String%': String, + '%StringIteratorPrototype%': hasSymbols$1 ? getProto$1(''[Symbol.iterator]()) : undefined$1, + '%Symbol%': hasSymbols$1 ? Symbol : undefined$1, + '%SyntaxError%': $SyntaxError, + '%ThrowTypeError%': ThrowTypeError, + '%TypedArray%': TypedArray, + '%TypeError%': $TypeError$2, + '%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined$1 : Uint8Array, + '%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined$1 : Uint8ClampedArray, + '%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined$1 : Uint16Array, + '%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined$1 : Uint32Array, + '%URIError%': URIError, + '%WeakMap%': typeof WeakMap === 'undefined' ? undefined$1 : WeakMap, + '%WeakRef%': typeof WeakRef === 'undefined' ? undefined$1 : WeakRef, + '%WeakSet%': typeof WeakSet === 'undefined' ? undefined$1 : WeakSet +}; - // if arrowElement is not found, don't run the modifier - if (!arrowElement) { - return data; - } - } else { - // if the arrowElement isn't a query selector we must check that the - // provided DOM node is child of its popper node - if (!data.instance.popper.contains(arrowElement)) { - console.warn('WARNING: `arrow.element` must be child of its popper element!'); - return data; - } - } +var doEval = function doEval(name) { + var value; + if (name === '%AsyncFunction%') { + value = getEvalledConstructor('async function () {}'); + } else if (name === '%GeneratorFunction%') { + value = getEvalledConstructor('function* () {}'); + } else if (name === '%AsyncGeneratorFunction%') { + value = getEvalledConstructor('async function* () {}'); + } else if (name === '%AsyncGenerator%') { + var fn = doEval('%AsyncGeneratorFunction%'); + if (fn) { + value = fn.prototype; + } + } else if (name === '%AsyncIteratorPrototype%') { + var gen = doEval('%AsyncGenerator%'); + if (gen) { + value = getProto$1(gen.prototype); + } + } - var placement = data.placement.split('-')[0]; - var _data$offsets = data.offsets, - popper = _data$offsets.popper, - reference = _data$offsets.reference; + INTRINSICS[name] = value; - var isVertical = ['left', 'right'].indexOf(placement) !== -1; + return value; +}; - var len = isVertical ? 'height' : 'width'; - var sideCapitalized = isVertical ? 'Top' : 'Left'; - var side = sideCapitalized.toLowerCase(); - var altSide = isVertical ? 'left' : 'top'; - var opSide = isVertical ? 'bottom' : 'right'; - var arrowElementSize = getOuterSizes(arrowElement)[len]; - - // - // extends keepTogether behavior making sure the popper and its - // reference have enough pixels in conjunction - // - - // top/left side - if (reference[opSide] - arrowElementSize < popper[side]) { - data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize); - } - // bottom/right side - if (reference[side] + arrowElementSize > popper[opSide]) { - data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide]; - } - data.offsets.popper = getClientRect(data.offsets.popper); +var LEGACY_ALIASES = { + '%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'], + '%ArrayPrototype%': ['Array', 'prototype'], + '%ArrayProto_entries%': ['Array', 'prototype', 'entries'], + '%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'], + '%ArrayProto_keys%': ['Array', 'prototype', 'keys'], + '%ArrayProto_values%': ['Array', 'prototype', 'values'], + '%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'], + '%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'], + '%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'], + '%BooleanPrototype%': ['Boolean', 'prototype'], + '%DataViewPrototype%': ['DataView', 'prototype'], + '%DatePrototype%': ['Date', 'prototype'], + '%ErrorPrototype%': ['Error', 'prototype'], + '%EvalErrorPrototype%': ['EvalError', 'prototype'], + '%Float32ArrayPrototype%': ['Float32Array', 'prototype'], + '%Float64ArrayPrototype%': ['Float64Array', 'prototype'], + '%FunctionPrototype%': ['Function', 'prototype'], + '%Generator%': ['GeneratorFunction', 'prototype'], + '%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'], + '%Int8ArrayPrototype%': ['Int8Array', 'prototype'], + '%Int16ArrayPrototype%': ['Int16Array', 'prototype'], + '%Int32ArrayPrototype%': ['Int32Array', 'prototype'], + '%JSONParse%': ['JSON', 'parse'], + '%JSONStringify%': ['JSON', 'stringify'], + '%MapPrototype%': ['Map', 'prototype'], + '%NumberPrototype%': ['Number', 'prototype'], + '%ObjectPrototype%': ['Object', 'prototype'], + '%ObjProto_toString%': ['Object', 'prototype', 'toString'], + '%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'], + '%PromisePrototype%': ['Promise', 'prototype'], + '%PromiseProto_then%': ['Promise', 'prototype', 'then'], + '%Promise_all%': ['Promise', 'all'], + '%Promise_reject%': ['Promise', 'reject'], + '%Promise_resolve%': ['Promise', 'resolve'], + '%RangeErrorPrototype%': ['RangeError', 'prototype'], + '%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'], + '%RegExpPrototype%': ['RegExp', 'prototype'], + '%SetPrototype%': ['Set', 'prototype'], + '%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'], + '%StringPrototype%': ['String', 'prototype'], + '%SymbolPrototype%': ['Symbol', 'prototype'], + '%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'], + '%TypedArrayPrototype%': ['TypedArray', 'prototype'], + '%TypeErrorPrototype%': ['TypeError', 'prototype'], + '%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'], + '%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'], + '%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'], + '%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'], + '%URIErrorPrototype%': ['URIError', 'prototype'], + '%WeakMapPrototype%': ['WeakMap', 'prototype'], + '%WeakSetPrototype%': ['WeakSet', 'prototype'] +}; - // compute center of the popper - var center = reference[side] + reference[len] / 2 - arrowElementSize / 2; - // Compute the sideValue using the updated popper offsets - // take popper margin in account because we don't have this info available - var css = getStyleComputedProperty(data.instance.popper); - var popperMarginSide = parseFloat(css['margin' + sideCapitalized]); - var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']); - var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide; - // prevent arrowElement from being placed not contiguously to its popper - sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0); +var $concat = functionBind.call(Function.call, Array.prototype.concat); +var $spliceApply = functionBind.call(Function.apply, Array.prototype.splice); +var $replace = functionBind.call(Function.call, String.prototype.replace); +var $strSlice = functionBind.call(Function.call, String.prototype.slice); - data.arrowElement = arrowElement; - data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow); +/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */ +var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g; +var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */ +var stringToPath = function stringToPath(string) { + var first = $strSlice(string, 0, 1); + var last = $strSlice(string, -1); + if (first === '%' && last !== '%') { + throw new $SyntaxError('invalid intrinsic syntax, expected closing `%`'); + } else if (last === '%' && first !== '%') { + throw new $SyntaxError('invalid intrinsic syntax, expected opening `%`'); + } + var result = []; + $replace(string, rePropName, function (match, number, quote, subString) { + result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match; + }); + return result; +}; +/* end adaptation */ - return data; -} +var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) { + var intrinsicName = name; + var alias; + if (src(LEGACY_ALIASES, intrinsicName)) { + alias = LEGACY_ALIASES[intrinsicName]; + intrinsicName = '%' + alias[0] + '%'; + } -/** - * Get the opposite placement variation of the given one - * @method - * @memberof Popper.Utils - * @argument {String} placement variation - * @returns {String} flipped placement variation - */ -function getOppositeVariation(variation) { - if (variation === 'end') { - return 'start'; - } else if (variation === 'start') { - return 'end'; - } - return variation; -} + if (src(INTRINSICS, intrinsicName)) { + var value = INTRINSICS[intrinsicName]; + if (value === needsEval) { + value = doEval(intrinsicName); + } + if (typeof value === 'undefined' && !allowMissing) { + throw new $TypeError$2('intrinsic ' + name + ' exists, but is not available. Please file an issue!'); + } -/** - * List of accepted placements to use as values of the `placement` option.
- * Valid placements are: - * - `auto` - * - `top` - * - `right` - * - `bottom` - * - `left` - * - * Each placement can have a variation from this list: - * - `-start` - * - `-end` - * - * Variations are interpreted easily if you think of them as the left to right - * written languages. Horizontally (`top` and `bottom`), `start` is left and `end` - * is right.
- * Vertically (`left` and `right`), `start` is top and `end` is bottom. - * - * Some valid examples are: - * - `top-end` (on top of reference, right aligned) - * - `right-start` (on right of reference, top aligned) - * - `bottom` (on bottom, centered) - * - `auto-end` (on the side with more space available, alignment depends by placement) - * - * @static - * @type {Array} - * @enum {String} - * @readonly - * @method placements - * @memberof Popper - */ -var placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start']; + return { + alias: alias, + name: intrinsicName, + value: value + }; + } -// Get rid of `auto` `auto-start` and `auto-end` -var validPlacements = placements.slice(3); + throw new $SyntaxError('intrinsic ' + name + ' does not exist!'); +}; -/** - * Given an initial placement, returns all the subsequent placements - * clockwise (or counter-clockwise). - * - * @method - * @memberof Popper.Utils - * @argument {String} placement - A valid placement (it accepts variations) - * @argument {Boolean} counter - Set to true to walk the placements counterclockwise - * @returns {Array} placements including their variations - */ -function clockwise(placement) { - var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; +var getIntrinsic = function GetIntrinsic(name, allowMissing) { + if (typeof name !== 'string' || name.length === 0) { + throw new $TypeError$2('intrinsic name must be a non-empty string'); + } + if (arguments.length > 1 && typeof allowMissing !== 'boolean') { + throw new $TypeError$2('"allowMissing" argument must be a boolean'); + } - var index = validPlacements.indexOf(placement); - var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index)); - return counter ? arr.reverse() : arr; -} + var parts = stringToPath(name); + var intrinsicBaseName = parts.length > 0 ? parts[0] : ''; -var BEHAVIORS = { - FLIP: 'flip', - CLOCKWISE: 'clockwise', - COUNTERCLOCKWISE: 'counterclockwise' -}; + var intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing); + var intrinsicRealName = intrinsic.name; + var value = intrinsic.value; + var skipFurtherCaching = false; -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function flip(data, options) { - // if `inner` modifier is enabled, we can't use the `flip` modifier - if (isModifierEnabled(data.instance.modifiers, 'inner')) { - return data; - } + var alias = intrinsic.alias; + if (alias) { + intrinsicBaseName = alias[0]; + $spliceApply(parts, $concat([0, 1], alias)); + } - if (data.flipped && data.placement === data.originalPlacement) { - // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides - return data; - } + for (var i = 1, isOwn = true; i < parts.length; i += 1) { + var part = parts[i]; + var first = $strSlice(part, 0, 1); + var last = $strSlice(part, -1); + if ( + ( + (first === '"' || first === "'" || first === '`') + || (last === '"' || last === "'" || last === '`') + ) + && first !== last + ) { + throw new $SyntaxError('property names with quotes must have matching quotes'); + } + if (part === 'constructor' || !isOwn) { + skipFurtherCaching = true; + } - var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed); + intrinsicBaseName += '.' + part; + intrinsicRealName = '%' + intrinsicBaseName + '%'; - var placement = data.placement.split('-')[0]; - var placementOpposite = getOppositePlacement(placement); - var variation = data.placement.split('-')[1] || ''; + if (src(INTRINSICS, intrinsicRealName)) { + value = INTRINSICS[intrinsicRealName]; + } else if (value != null) { + if (!(part in value)) { + if (!allowMissing) { + throw new $TypeError$2('base intrinsic for ' + name + ' exists, but the property is not available.'); + } + return void undefined$1; + } + if ($gOPD$1 && (i + 1) >= parts.length) { + var desc = $gOPD$1(value, part); + isOwn = !!desc; - var flipOrder = []; + // By convention, when a data property is converted to an accessor + // property to emulate a data property that does not suffer from + // the override mistake, that accessor's getter is marked with + // an `originalValue` property. Here, when we detect this, we + // uphold the illusion by pretending to see that original data + // property, i.e., returning the value rather than the getter + // itself. + if (isOwn && 'get' in desc && !('originalValue' in desc.get)) { + value = desc.get; + } else { + value = value[part]; + } + } else { + isOwn = src(value, part); + value = value[part]; + } - switch (options.behavior) { - case BEHAVIORS.FLIP: - flipOrder = [placement, placementOpposite]; - break; - case BEHAVIORS.CLOCKWISE: - flipOrder = clockwise(placement); - break; - case BEHAVIORS.COUNTERCLOCKWISE: - flipOrder = clockwise(placement, true); - break; - default: - flipOrder = options.behavior; - } + if (isOwn && !skipFurtherCaching) { + INTRINSICS[intrinsicRealName] = value; + } + } + } + return value; +}; - flipOrder.forEach(function (step, index) { - if (placement !== step || flipOrder.length === index + 1) { - return data; - } +var callBind = createCommonjsModule(function (module) { - placement = data.placement.split('-')[0]; - placementOpposite = getOppositePlacement(placement); - var popperOffsets = data.offsets.popper; - var refOffsets = data.offsets.reference; - // using floor because the reference offsets may contain decimals we are not going to consider here - var floor = Math.floor; - var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom); - var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left); - var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right); - var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top); - var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom); +var $apply = getIntrinsic('%Function.prototype.apply%'); +var $call = getIntrinsic('%Function.prototype.call%'); +var $reflectApply = getIntrinsic('%Reflect.apply%', true) || functionBind.call($call, $apply); - var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom; +var $gOPD = getIntrinsic('%Object.getOwnPropertyDescriptor%', true); +var $defineProperty = getIntrinsic('%Object.defineProperty%', true); +var $max = getIntrinsic('%Math.max%'); - // flip the variation if required - var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; +if ($defineProperty) { + try { + $defineProperty({}, 'a', { value: 1 }); + } catch (e) { + // IE 8 has a broken defineProperty + $defineProperty = null; + } +} - // flips variation if reference element overflows boundaries - var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom); +module.exports = function callBind(originalFunction) { + var func = $reflectApply(functionBind, $call, arguments); + if ($gOPD && $defineProperty) { + var desc = $gOPD(func, 'length'); + if (desc.configurable) { + // original length, plus the receiver, minus any additional arguments (after the receiver) + $defineProperty( + func, + 'length', + { value: 1 + $max(0, originalFunction.length - (arguments.length - 1)) } + ); + } + } + return func; +}; - // flips variation if popper content overflows boundaries - var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop); +var applyBind = function applyBind() { + return $reflectApply(functionBind, $apply, arguments); +}; - var flippedVariation = flippedVariationByRef || flippedVariationByContent; +if ($defineProperty) { + $defineProperty(module.exports, 'apply', { value: applyBind }); +} else { + module.exports.apply = applyBind; +} +}); +callBind.apply; - if (overlapsRef || overflowsBoundaries || flippedVariation) { - // this boolean to detect any flip loop - data.flipped = true; +var $indexOf = callBind(getIntrinsic('String.prototype.indexOf')); - if (overlapsRef || overflowsBoundaries) { - placement = flipOrder[index + 1]; - } +var callBound = function callBoundIntrinsic(name, allowMissing) { + var intrinsic = getIntrinsic(name, !!allowMissing); + if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) { + return callBind(intrinsic); + } + return intrinsic; +}; - if (flippedVariation) { - variation = getOppositeVariation(variation); - } +var hasToStringTag$2 = shams(); - data.placement = placement + (variation ? '-' + variation : ''); - // this object contains `position`, we want to preserve it along with - // any additional property we may add in the future - data.offsets.popper = _extends$1({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement)); +var $toString$1 = callBound('Object.prototype.toString'); - data = runModifiers(data.instance.modifiers, data, 'flip'); - } - }); - return data; -} +var isStandardArguments = function isArguments(value) { + if (hasToStringTag$2 && value && typeof value === 'object' && Symbol.toStringTag in value) { + return false; + } + return $toString$1(value) === '[object Arguments]'; +}; -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function keepTogether(data) { - var _data$offsets = data.offsets, - popper = _data$offsets.popper, - reference = _data$offsets.reference; +var isLegacyArguments = function isArguments(value) { + if (isStandardArguments(value)) { + return true; + } + return value !== null && + typeof value === 'object' && + typeof value.length === 'number' && + value.length >= 0 && + $toString$1(value) !== '[object Array]' && + $toString$1(value.callee) === '[object Function]'; +}; - var placement = data.placement.split('-')[0]; - var floor = Math.floor; - var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; - var side = isVertical ? 'right' : 'bottom'; - var opSide = isVertical ? 'left' : 'top'; - var measurement = isVertical ? 'width' : 'height'; +var supportsStandardArguments = (function () { + return isStandardArguments(arguments); +}()); - if (popper[side] < floor(reference[opSide])) { - data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement]; - } - if (popper[opSide] > floor(reference[side])) { - data.offsets.popper[opSide] = floor(reference[side]); - } +isStandardArguments.isLegacyArguments = isLegacyArguments; // for tests - return data; -} +var isArguments = supportsStandardArguments ? isStandardArguments : isLegacyArguments; -/** - * Converts a string containing value + unit into a px value number - * @function - * @memberof {modifiers~offset} - * @private - * @argument {String} str - Value + unit string - * @argument {String} measurement - `height` or `width` - * @argument {Object} popperOffsets - * @argument {Object} referenceOffsets - * @returns {Number|String} - * Value in pixels, or original string if no values were extracted - */ -function toValue(str, measurement, popperOffsets, referenceOffsets) { - // separate value from unit - var split = str.match(/((?:\-|\+)?\d*\.?\d*)(.*)/); - var value = +split[1]; - var unit = split[2]; +var hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol'; - // If it's not a number it's an operator, I guess - if (!value) { - return str; - } +var toStr$1 = Object.prototype.toString; +var concat = Array.prototype.concat; +var origDefineProperty = Object.defineProperty; - if (unit.indexOf('%') === 0) { - var element = void 0; - switch (unit) { - case '%p': - element = popperOffsets; - break; - case '%': - case '%r': - default: - element = referenceOffsets; - } +var isFunction$1 = function (fn) { + return typeof fn === 'function' && toStr$1.call(fn) === '[object Function]'; +}; - var rect = getClientRect(element); - return rect[measurement] / 100 * value; - } else if (unit === 'vh' || unit === 'vw') { - // if is a vh or vw, we calculate the size based on the viewport - var size = void 0; - if (unit === 'vh') { - size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0); - } else { - size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0); - } - return size / 100 * value; - } else { - // if is an explicit pixel unit, we get rid of the unit and keep the value - // if is an implicit unit, it's px, and we return just the value - return value; - } -} +var arePropertyDescriptorsSupported = function () { + var obj = {}; + try { + origDefineProperty(obj, 'x', { enumerable: false, value: obj }); + // eslint-disable-next-line no-unused-vars, no-restricted-syntax + for (var _ in obj) { // jscs:ignore disallowUnusedVariables + return false; + } + return obj.x === obj; + } catch (e) { /* this is IE 8. */ + return false; + } +}; +var supportsDescriptors$2 = origDefineProperty && arePropertyDescriptorsSupported(); -/** - * Parse an `offset` string to extrapolate `x` and `y` numeric offsets. - * @function - * @memberof {modifiers~offset} - * @private - * @argument {String} offset - * @argument {Object} popperOffsets - * @argument {Object} referenceOffsets - * @argument {String} basePlacement - * @returns {Array} a two cells array with x and y offsets in numbers - */ -function parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) { - var offsets = [0, 0]; +var defineProperty$2 = function (object, name, value, predicate) { + if (name in object && (!isFunction$1(predicate) || !predicate())) { + return; + } + if (supportsDescriptors$2) { + origDefineProperty(object, name, { + configurable: true, + enumerable: false, + value: value, + writable: true + }); + } else { + object[name] = value; + } +}; - // Use height if placement is left or right and index is 0 otherwise use width - // in this way the first offset will use an axis and the second one - // will use the other one - var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1; +var defineProperties = function (object, map) { + var predicates = arguments.length > 2 ? arguments[2] : {}; + var props = objectKeys(map); + if (hasSymbols) { + props = concat.call(props, Object.getOwnPropertySymbols(map)); + } + for (var i = 0; i < props.length; i += 1) { + defineProperty$2(object, props[i], map[props[i]], predicates[props[i]]); + } +}; - // Split the offset string to obtain a list of values and operands - // The regex addresses values with the plus or minus sign in front (+10, -20, etc) - var fragments = offset.split(/(\+|\-)/).map(function (frag) { - return frag.trim(); - }); +defineProperties.supportsDescriptors = !!supportsDescriptors$2; - // Detect if the offset string contains a pair of values or a single one - // they could be separated by comma or space - var divider = fragments.indexOf(find(fragments, function (frag) { - return frag.search(/,|\s/) !== -1; - })); +var defineProperties_1 = defineProperties; - if (fragments[divider] && fragments[divider].indexOf(',') === -1) { - console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.'); - } +var numberIsNaN = function (value) { + return value !== value; +}; - // If divider is found, we divide the list of values and operands to divide - // them by ofset X and Y. - var splitRegex = /\s*,\s*|\s+/; - var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments]; +var implementation$2 = function is(a, b) { + if (a === 0 && b === 0) { + return 1 / a === 1 / b; + } + if (a === b) { + return true; + } + if (numberIsNaN(a) && numberIsNaN(b)) { + return true; + } + return false; +}; - // Convert the values with units to absolute pixels to allow our computations - ops = ops.map(function (op, index) { - // Most of the units rely on the orientation of the popper - var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width'; - var mergeWithPrevious = false; - return op - // This aggregates any `+` or `-` sign that aren't considered operators - // e.g.: 10 + +5 => [10, +, +5] - .reduce(function (a, b) { - if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) { - a[a.length - 1] = b; - mergeWithPrevious = true; - return a; - } else if (mergeWithPrevious) { - a[a.length - 1] += b; - mergeWithPrevious = false; - return a; - } else { - return a.concat(b); - } - }, []) - // Here we convert the string values into number values (in px) - .map(function (str) { - return toValue(str, measurement, popperOffsets, referenceOffsets); - }); - }); +var polyfill$2 = function getPolyfill() { + return typeof Object.is === 'function' ? Object.is : implementation$2; +}; - // Loop trough the offsets arrays and execute the operations - ops.forEach(function (op, index) { - op.forEach(function (frag, index2) { - if (isNumeric(frag)) { - offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1); - } - }); - }); - return offsets; -} +var shim$1 = function shimObjectIs() { + var polyfill = polyfill$2(); + defineProperties_1(Object, { is: polyfill }, { + is: function testObjectIs() { + return Object.is !== polyfill; + } + }); + return polyfill; +}; -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @argument {Number|String} options.offset=0 - * The offset value as described in the modifier description - * @returns {Object} The data object, properly modified - */ -function offset(data, _ref) { - var offset = _ref.offset; - var placement = data.placement, - _data$offsets = data.offsets, - popper = _data$offsets.popper, - reference = _data$offsets.reference; +var polyfill$1 = callBind(polyfill$2(), Object); - var basePlacement = placement.split('-')[0]; +defineProperties_1(polyfill$1, { + getPolyfill: polyfill$2, + implementation: implementation$2, + shim: shim$1 +}); - var offsets = void 0; - if (isNumeric(+offset)) { - offsets = [+offset, 0]; - } else { - offsets = parseOffset(offset, popper, reference, basePlacement); - } +var objectIs = polyfill$1; - if (basePlacement === 'left') { - popper.top += offsets[0]; - popper.left -= offsets[1]; - } else if (basePlacement === 'right') { - popper.top += offsets[0]; - popper.left += offsets[1]; - } else if (basePlacement === 'top') { - popper.left += offsets[0]; - popper.top -= offsets[1]; - } else if (basePlacement === 'bottom') { - popper.left += offsets[0]; - popper.top += offsets[1]; - } +var hasToStringTag$1 = shams(); +var has; +var $exec; +var isRegexMarker; +var badStringifier; - data.popper = popper; - return data; -} +if (hasToStringTag$1) { + has = callBound('Object.prototype.hasOwnProperty'); + $exec = callBound('RegExp.prototype.exec'); + isRegexMarker = {}; -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by `update` method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function preventOverflow(data, options) { - var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper); + var throwRegexMarker = function () { + throw isRegexMarker; + }; + badStringifier = { + toString: throwRegexMarker, + valueOf: throwRegexMarker + }; - // If offsetParent is the reference element, we really want to - // go one step up and use the next offsetParent as reference to - // avoid to make this modifier completely useless and look like broken - if (data.instance.reference === boundariesElement) { - boundariesElement = getOffsetParent(boundariesElement); - } + if (typeof Symbol.toPrimitive === 'symbol') { + badStringifier[Symbol.toPrimitive] = throwRegexMarker; + } +} - // NOTE: DOM access here - // resets the popper's position so that the document size can be calculated excluding - // the size of the popper element itself - var transformProp = getSupportedPropertyName('transform'); - var popperStyles = data.instance.popper.style; // assignment to help minification - var top = popperStyles.top, - left = popperStyles.left, - transform = popperStyles[transformProp]; +var $toString = callBound('Object.prototype.toString'); +var gOPD$1 = Object.getOwnPropertyDescriptor; +var regexClass = '[object RegExp]'; - popperStyles.top = ''; - popperStyles.left = ''; - popperStyles[transformProp] = ''; +var isRegex = hasToStringTag$1 + // eslint-disable-next-line consistent-return + ? function isRegex(value) { + if (!value || typeof value !== 'object') { + return false; + } - var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed); + var descriptor = gOPD$1(value, 'lastIndex'); + var hasLastIndexDataProperty = descriptor && has(descriptor, 'value'); + if (!hasLastIndexDataProperty) { + return false; + } - // NOTE: DOM access here - // restores the original style properties after the offsets have been computed - popperStyles.top = top; - popperStyles.left = left; - popperStyles[transformProp] = transform; + try { + $exec(value, badStringifier); + } catch (e) { + return e === isRegexMarker; + } + } + : function isRegex(value) { + // In older browsers, typeof regex incorrectly returns 'function' + if (!value || (typeof value !== 'object' && typeof value !== 'function')) { + return false; + } - options.boundaries = boundaries; + return $toString(value) === regexClass; + }; - var order = options.priority; - var popper = data.offsets.popper; +var $Object = Object; +var $TypeError$1 = TypeError; - var check = { - primary: function primary(placement) { - var value = popper[placement]; - if (popper[placement] < boundaries[placement] && !options.escapeWithReference) { - value = Math.max(popper[placement], boundaries[placement]); - } - return defineProperty({}, placement, value); - }, - secondary: function secondary(placement) { - var mainSide = placement === 'right' ? 'left' : 'top'; - var value = popper[mainSide]; - if (popper[placement] > boundaries[placement] && !options.escapeWithReference) { - value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height)); - } - return defineProperty({}, mainSide, value); - } - }; +var implementation$1 = function flags() { + if (this != null && this !== $Object(this)) { + throw new $TypeError$1('RegExp.prototype.flags getter called on non-object'); + } + var result = ''; + if (this.global) { + result += 'g'; + } + if (this.ignoreCase) { + result += 'i'; + } + if (this.multiline) { + result += 'm'; + } + if (this.dotAll) { + result += 's'; + } + if (this.unicode) { + result += 'u'; + } + if (this.sticky) { + result += 'y'; + } + return result; +}; - order.forEach(function (placement) { - var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary'; - popper = _extends$1({}, popper, check[side](placement)); - }); +var supportsDescriptors$1 = defineProperties_1.supportsDescriptors; +var $gOPD = Object.getOwnPropertyDescriptor; +var $TypeError = TypeError; - data.offsets.popper = popper; +var polyfill = function getPolyfill() { + if (!supportsDescriptors$1) { + throw new $TypeError('RegExp.prototype.flags requires a true ES5 environment that supports property descriptors'); + } + if ((/a/mig).flags === 'gim') { + var descriptor = $gOPD(RegExp.prototype, 'flags'); + if (descriptor && typeof descriptor.get === 'function' && typeof (/a/).dotAll === 'boolean') { + return descriptor.get; + } + } + return implementation$1; +}; - return data; -} +var supportsDescriptors = defineProperties_1.supportsDescriptors; -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by `update` method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function shift(data) { - var placement = data.placement; - var basePlacement = placement.split('-')[0]; - var shiftvariation = placement.split('-')[1]; +var gOPD = Object.getOwnPropertyDescriptor; +var defineProperty$1 = Object.defineProperty; +var TypeErr = TypeError; +var getProto = Object.getPrototypeOf; +var regex = /a/; - // if shift shiftvariation is specified, run the modifier - if (shiftvariation) { - var _data$offsets = data.offsets, - reference = _data$offsets.reference, - popper = _data$offsets.popper; +var shim = function shimFlags() { + if (!supportsDescriptors || !getProto) { + throw new TypeErr('RegExp.prototype.flags requires a true ES5 environment that supports property descriptors'); + } + var polyfill$1 = polyfill(); + var proto = getProto(regex); + var descriptor = gOPD(proto, 'flags'); + if (!descriptor || descriptor.get !== polyfill$1) { + defineProperty$1(proto, 'flags', { + configurable: true, + enumerable: false, + get: polyfill$1 + }); + } + return polyfill$1; +}; - var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1; - var side = isVertical ? 'left' : 'top'; - var measurement = isVertical ? 'width' : 'height'; +var flagsBound = callBind(implementation$1); - var shiftOffsets = { - start: defineProperty({}, side, reference[side]), - end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement]) - }; +defineProperties_1(flagsBound, { + getPolyfill: polyfill, + implementation: implementation$1, + shim: shim +}); - data.offsets.popper = _extends$1({}, popper, shiftOffsets[shiftvariation]); - } +var regexp_prototype_flags = flagsBound; - return data; -} +var getDay = Date.prototype.getDay; +var tryDateObject = function tryDateGetDayCall(value) { + try { + getDay.call(value); + return true; + } catch (e) { + return false; + } +}; -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by update method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function hide(data) { - if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) { - return data; - } +var toStr = Object.prototype.toString; +var dateClass = '[object Date]'; +var hasToStringTag = shams(); - var refRect = data.offsets.reference; - var bound = find(data.instance.modifiers, function (modifier) { - return modifier.name === 'preventOverflow'; - }).boundaries; +var isDateObject = function isDateObject(value) { + if (typeof value !== 'object' || value === null) { + return false; + } + return hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass; +}; - if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) { - // Avoid unnecessary DOM access if visibility hasn't changed - if (data.hide === true) { - return data; - } +var getTime = Date.prototype.getTime; - data.hide = true; - data.attributes['x-out-of-boundaries'] = ''; - } else { - // Avoid unnecessary DOM access if visibility hasn't changed - if (data.hide === false) { - return data; - } +function deepEqual(actual, expected, options) { + var opts = options || {}; - data.hide = false; - data.attributes['x-out-of-boundaries'] = false; + // 7.1. All identical values are equivalent, as determined by ===. + if (opts.strict ? objectIs(actual, expected) : actual === expected) { + return true; } - return data; + // 7.3. Other pairs that do not both pass typeof value == 'object', equivalence is determined by ==. + if (!actual || !expected || (typeof actual !== 'object' && typeof expected !== 'object')) { + return opts.strict ? objectIs(actual, expected) : actual == expected; + } + + /* + * 7.4. For all other Object pairs, including Array objects, equivalence is + * determined by having the same number of owned properties (as verified + * with Object.prototype.hasOwnProperty.call), the same set of keys + * (although not necessarily the same order), equivalent values for every + * corresponding key, and an identical 'prototype' property. Note: this + * accounts for both named and indexed properties on Arrays. + */ + // eslint-disable-next-line no-use-before-define + return objEquiv(actual, expected, opts); } -/** - * @function - * @memberof Modifiers - * @argument {Object} data - The data object generated by `update` method - * @argument {Object} options - Modifiers configuration and options - * @returns {Object} The data object, properly modified - */ -function inner(data) { - var placement = data.placement; - var basePlacement = placement.split('-')[0]; - var _data$offsets = data.offsets, - popper = _data$offsets.popper, - reference = _data$offsets.reference; +function isUndefinedOrNull(value) { + return value === null || value === undefined; +} - var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1; +function isBuffer(x) { + if (!x || typeof x !== 'object' || typeof x.length !== 'number') { + return false; + } + if (typeof x.copy !== 'function' || typeof x.slice !== 'function') { + return false; + } + if (x.length > 0 && typeof x[0] !== 'number') { + return false; + } + return true; +} - var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1; +function objEquiv(a, b, opts) { + /* eslint max-statements: [2, 50] */ + var i, key; + if (typeof a !== typeof b) { return false; } + if (isUndefinedOrNull(a) || isUndefinedOrNull(b)) { return false; } - popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0); + // an identical 'prototype' property. + if (a.prototype !== b.prototype) { return false; } - data.placement = getOppositePlacement(placement); - data.offsets.popper = getClientRect(popper); + if (isArguments(a) !== isArguments(b)) { return false; } - return data; -} + var aIsRegex = isRegex(a); + var bIsRegex = isRegex(b); + if (aIsRegex !== bIsRegex) { return false; } + if (aIsRegex || bIsRegex) { + return a.source === b.source && regexp_prototype_flags(a) === regexp_prototype_flags(b); + } -/** - * Modifier function, each modifier can have a function of this type assigned - * to its `fn` property.
- * These functions will be called on each update, this means that you must - * make sure they are performant enough to avoid performance bottlenecks. - * - * @function ModifierFn - * @argument {dataObject} data - The data object generated by `update` method - * @argument {Object} options - Modifiers configuration and options - * @returns {dataObject} The data object, properly modified - */ + if (isDateObject(a) && isDateObject(b)) { + return getTime.call(a) === getTime.call(b); + } -/** - * Modifiers are plugins used to alter the behavior of your poppers.
- * Popper.js uses a set of 9 modifiers to provide all the basic functionalities - * needed by the library. - * - * Usually you don't want to override the `order`, `fn` and `onLoad` props. - * All the other properties are configurations that could be tweaked. - * @namespace modifiers - */ -var modifiers = { - /** - * Modifier used to shift the popper on the start or end of its reference - * element.
- * It will read the variation of the `placement` property.
- * It can be one either `-end` or `-start`. - * @memberof modifiers - * @inner - */ - shift: { - /** @prop {number} order=100 - Index used to define the order of execution */ - order: 100, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: shift - }, - - /** - * The `offset` modifier can shift your popper on both its axis. - * - * It accepts the following units: - * - `px` or unit-less, interpreted as pixels - * - `%` or `%r`, percentage relative to the length of the reference element - * - `%p`, percentage relative to the length of the popper element - * - `vw`, CSS viewport width unit - * - `vh`, CSS viewport height unit - * - * For length is intended the main axis relative to the placement of the popper.
- * This means that if the placement is `top` or `bottom`, the length will be the - * `width`. In case of `left` or `right`, it will be the `height`. - * - * You can provide a single value (as `Number` or `String`), or a pair of values - * as `String` divided by a comma or one (or more) white spaces.
- * The latter is a deprecated method because it leads to confusion and will be - * removed in v2.
- * Additionally, it accepts additions and subtractions between different units. - * Note that multiplications and divisions aren't supported. - * - * Valid examples are: - * ``` - * 10 - * '10%' - * '10, 10' - * '10%, 10' - * '10 + 10%' - * '10 - 5vh + 3%' - * '-10px + 5vh, 5px - 6%' - * ``` - * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap - * > with their reference element, unfortunately, you will have to disable the `flip` modifier. - * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373). - * - * @memberof modifiers - * @inner - */ - offset: { - /** @prop {number} order=200 - Index used to define the order of execution */ - order: 200, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: offset, - /** @prop {Number|String} offset=0 - * The offset value as described in the modifier description - */ - offset: 0 - }, + var aIsBuffer = isBuffer(a); + var bIsBuffer = isBuffer(b); + if (aIsBuffer !== bIsBuffer) { return false; } + if (aIsBuffer || bIsBuffer) { // && would work too, because both are true or both false here + if (a.length !== b.length) { return false; } + for (i = 0; i < a.length; i++) { + if (a[i] !== b[i]) { return false; } + } + return true; + } - /** - * Modifier used to prevent the popper from being positioned outside the boundary. - * - * A scenario exists where the reference itself is not within the boundaries.
- * We can say it has "escaped the boundaries" — or just "escaped".
- * In this case we need to decide whether the popper should either: - * - * - detach from the reference and remain "trapped" in the boundaries, or - * - if it should ignore the boundary and "escape with its reference" - * - * When `escapeWithReference` is set to`true` and reference is completely - * outside its boundaries, the popper will overflow (or completely leave) - * the boundaries in order to remain attached to the edge of the reference. - * - * @memberof modifiers - * @inner - */ - preventOverflow: { - /** @prop {number} order=300 - Index used to define the order of execution */ - order: 300, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: preventOverflow, - /** - * @prop {Array} [priority=['left','right','top','bottom']] - * Popper will try to prevent overflow following these priorities by default, - * then, it could overflow on the left and on top of the `boundariesElement` - */ - priority: ['left', 'right', 'top', 'bottom'], - /** - * @prop {number} padding=5 - * Amount of pixel used to define a minimum distance between the boundaries - * and the popper. This makes sure the popper always has a little padding - * between the edges of its container - */ - padding: 5, - /** - * @prop {String|HTMLElement} boundariesElement='scrollParent' - * Boundaries used by the modifier. Can be `scrollParent`, `window`, - * `viewport` or any DOM element. - */ - boundariesElement: 'scrollParent' - }, + if (typeof a !== typeof b) { return false; } - /** - * Modifier used to make sure the reference and its popper stay near each other - * without leaving any gap between the two. Especially useful when the arrow is - * enabled and you want to ensure that it points to its reference element. - * It cares only about the first axis. You can still have poppers with margin - * between the popper and its reference element. - * @memberof modifiers - * @inner - */ - keepTogether: { - /** @prop {number} order=400 - Index used to define the order of execution */ - order: 400, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: keepTogether - }, + try { + var ka = objectKeys(a); + var kb = objectKeys(b); + } catch (e) { // happens when one is a string literal and the other isn't + return false; + } + // having the same number of owned properties (keys incorporates hasOwnProperty) + if (ka.length !== kb.length) { return false; } - /** - * This modifier is used to move the `arrowElement` of the popper to make - * sure it is positioned between the reference element and its popper element. - * It will read the outer size of the `arrowElement` node to detect how many - * pixels of conjunction are needed. - * - * It has no effect if no `arrowElement` is provided. - * @memberof modifiers - * @inner - */ - arrow: { - /** @prop {number} order=500 - Index used to define the order of execution */ - order: 500, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: arrow, - /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */ - element: '[x-arrow]' - }, + // the same set of keys (although not necessarily the same order), + ka.sort(); + kb.sort(); + // ~~~cheap key test + for (i = ka.length - 1; i >= 0; i--) { + if (ka[i] != kb[i]) { return false; } + } + // equivalent values for every corresponding key, and ~~~possibly expensive deep test + for (i = ka.length - 1; i >= 0; i--) { + key = ka[i]; + if (!deepEqual(a[key], b[key], opts)) { return false; } + } - /** - * Modifier used to flip the popper's placement when it starts to overlap its - * reference element. - * - * Requires the `preventOverflow` modifier before it in order to work. - * - * **NOTE:** this modifier will interrupt the current update cycle and will - * restart it if it detects the need to flip the placement. - * @memberof modifiers - * @inner - */ - flip: { - /** @prop {number} order=600 - Index used to define the order of execution */ - order: 600, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: flip, - /** - * @prop {String|Array} behavior='flip' - * The behavior used to change the popper's placement. It can be one of - * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid - * placements (with optional variations) - */ - behavior: 'flip', - /** - * @prop {number} padding=5 - * The popper will flip if it hits the edges of the `boundariesElement` - */ - padding: 5, - /** - * @prop {String|HTMLElement} boundariesElement='viewport' - * The element which will define the boundaries of the popper position. - * The popper will never be placed outside of the defined boundaries - * (except if `keepTogether` is enabled) - */ - boundariesElement: 'viewport', - /** - * @prop {Boolean} flipVariations=false - * The popper will switch placement variation between `-start` and `-end` when - * the reference element overlaps its boundaries. - * - * The original placement should have a set variation. - */ - flipVariations: false, - /** - * @prop {Boolean} flipVariationsByContent=false - * The popper will switch placement variation between `-start` and `-end` when - * the popper element overlaps its reference boundaries. - * - * The original placement should have a set variation. - */ - flipVariationsByContent: false - }, + return true; +} - /** - * Modifier used to make the popper flow toward the inner of the reference element. - * By default, when this modifier is disabled, the popper will be placed outside - * the reference element. - * @memberof modifiers - * @inner - */ - inner: { - /** @prop {number} order=700 - Index used to define the order of execution */ - order: 700, - /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */ - enabled: false, - /** @prop {ModifierFn} */ - fn: inner - }, +var deepEqual_1 = deepEqual; - /** - * Modifier used to hide the popper when its reference element is outside of the - * popper boundaries. It will set a `x-out-of-boundaries` attribute which can - * be used to hide with a CSS selector the popper when its reference is - * out of boundaries. - * - * Requires the `preventOverflow` modifier before it in order to work. +/**! + * @fileOverview Kickass library to create and place poppers near their reference elements. + * @version 1.16.1 + * @license + * Copyright (c) 2016 Federico Zivolo and contributors + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ +var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined'; + +var timeoutDuration = function () { + var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox']; + for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) { + if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) { + return 1; + } + } + return 0; +}(); + +function microtaskDebounce(fn) { + var called = false; + return function () { + if (called) { + return; + } + called = true; + window.Promise.resolve().then(function () { + called = false; + fn(); + }); + }; +} + +function taskDebounce(fn) { + var scheduled = false; + return function () { + if (!scheduled) { + scheduled = true; + setTimeout(function () { + scheduled = false; + fn(); + }, timeoutDuration); + } + }; +} + +var supportsMicroTasks = isBrowser && window.Promise; + +/** +* Create a debounced version of a method, that's asynchronously deferred +* but called in the minimum time possible. +* +* @method +* @memberof Popper.Utils +* @argument {Function} fn +* @returns {Function} +*/ +var debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce; + +/** + * Check if the given variable is a function + * @method + * @memberof Popper.Utils + * @argument {Any} functionToCheck - variable to check + * @returns {Boolean} answer to: is a function? + */ +function isFunction(functionToCheck) { + var getType = {}; + return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]'; +} + +/** + * Get CSS computed property of the given element + * @method + * @memberof Popper.Utils + * @argument {Eement} element + * @argument {String} property + */ +function getStyleComputedProperty(element, property) { + if (element.nodeType !== 1) { + return []; + } + // NOTE: 1 DOM access here + var window = element.ownerDocument.defaultView; + var css = window.getComputedStyle(element, null); + return property ? css[property] : css; +} + +/** + * Returns the parentNode or the host of the element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} parent + */ +function getParentNode(element) { + if (element.nodeName === 'HTML') { + return element; + } + return element.parentNode || element.host; +} + +/** + * Returns the scrolling parent of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} scroll parent + */ +function getScrollParent(element) { + // Return body, `getScroll` will take care to get the correct `scrollTop` from it + if (!element) { + return document.body; + } + + switch (element.nodeName) { + case 'HTML': + case 'BODY': + return element.ownerDocument.body; + case '#document': + return element.body; + } + + // Firefox want us to check `-x` and `-y` variations as well + + var _getStyleComputedProp = getStyleComputedProperty(element), + overflow = _getStyleComputedProp.overflow, + overflowX = _getStyleComputedProp.overflowX, + overflowY = _getStyleComputedProp.overflowY; + + if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) { + return element; + } + + return getScrollParent(getParentNode(element)); +} + +/** + * Returns the reference node of the reference object, or the reference object itself. + * @method + * @memberof Popper.Utils + * @param {Element|Object} reference - the reference element (the popper will be relative to this) + * @returns {Element} parent + */ +function getReferenceNode(reference) { + return reference && reference.referenceNode ? reference.referenceNode : reference; +} + +var isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode); +var isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent); + +/** + * Determines if the browser is Internet Explorer + * @method + * @memberof Popper.Utils + * @param {Number} version to check + * @returns {Boolean} isIE + */ +function isIE(version) { + if (version === 11) { + return isIE11; + } + if (version === 10) { + return isIE10; + } + return isIE11 || isIE10; +} + +/** + * Returns the offset parent of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} offset parent + */ +function getOffsetParent(element) { + if (!element) { + return document.documentElement; + } + + var noOffsetParent = isIE(10) ? document.body : null; + + // NOTE: 1 DOM access here + var offsetParent = element.offsetParent || null; + // Skip hidden elements which don't have an offsetParent + while (offsetParent === noOffsetParent && element.nextElementSibling) { + offsetParent = (element = element.nextElementSibling).offsetParent; + } + + var nodeName = offsetParent && offsetParent.nodeName; + + if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') { + return element ? element.ownerDocument.documentElement : document.documentElement; + } + + // .offsetParent will return the closest TH, TD or TABLE in case + // no offsetParent is present, I hate this job... + if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') { + return getOffsetParent(offsetParent); + } + + return offsetParent; +} + +function isOffsetContainer(element) { + var nodeName = element.nodeName; + + if (nodeName === 'BODY') { + return false; + } + return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element; +} + +/** + * Finds the root node (document, shadowDOM root) of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} node + * @returns {Element} root node + */ +function getRoot(node) { + if (node.parentNode !== null) { + return getRoot(node.parentNode); + } + + return node; +} + +/** + * Finds the offset parent common to the two provided nodes + * @method + * @memberof Popper.Utils + * @argument {Element} element1 + * @argument {Element} element2 + * @returns {Element} common offset parent + */ +function findCommonOffsetParent(element1, element2) { + // This check is needed to avoid errors in case one of the elements isn't defined for any reason + if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) { + return document.documentElement; + } + + // Here we make sure to give as "start" the element that comes first in the DOM + var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING; + var start = order ? element1 : element2; + var end = order ? element2 : element1; + + // Get common ancestor container + var range = document.createRange(); + range.setStart(start, 0); + range.setEnd(end, 0); + var commonAncestorContainer = range.commonAncestorContainer; + + // Both nodes are inside #document + + if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) { + if (isOffsetContainer(commonAncestorContainer)) { + return commonAncestorContainer; + } + + return getOffsetParent(commonAncestorContainer); + } + + // one of the nodes is inside shadowDOM, find which one + var element1root = getRoot(element1); + if (element1root.host) { + return findCommonOffsetParent(element1root.host, element2); + } else { + return findCommonOffsetParent(element1, getRoot(element2).host); + } +} + +/** + * Gets the scroll value of the given element in the given side (top and left) + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @argument {String} side `top` or `left` + * @returns {number} amount of scrolled pixels + */ +function getScroll(element) { + var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top'; + + var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft'; + var nodeName = element.nodeName; + + if (nodeName === 'BODY' || nodeName === 'HTML') { + var html = element.ownerDocument.documentElement; + var scrollingElement = element.ownerDocument.scrollingElement || html; + return scrollingElement[upperSide]; + } + + return element[upperSide]; +} + +/* + * Sum or subtract the element scroll values (left and top) from a given rect object + * @method + * @memberof Popper.Utils + * @param {Object} rect - Rect object you want to change + * @param {HTMLElement} element - The element from the function reads the scroll values + * @param {Boolean} subtract - set to true if you want to subtract the scroll values + * @return {Object} rect - The modifier rect object + */ +function includeScroll(rect, element) { + var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + + var scrollTop = getScroll(element, 'top'); + var scrollLeft = getScroll(element, 'left'); + var modifier = subtract ? -1 : 1; + rect.top += scrollTop * modifier; + rect.bottom += scrollTop * modifier; + rect.left += scrollLeft * modifier; + rect.right += scrollLeft * modifier; + return rect; +} + +/* + * Helper to detect borders of a given element + * @method + * @memberof Popper.Utils + * @param {CSSStyleDeclaration} styles + * Result of `getStyleComputedProperty` on the given element + * @param {String} axis - `x` or `y` + * @return {number} borders - The borders size of the given axis + */ + +function getBordersSize(styles, axis) { + var sideA = axis === 'x' ? 'Left' : 'Top'; + var sideB = sideA === 'Left' ? 'Right' : 'Bottom'; + + return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']); +} + +function getSize(axis, body, html, computedStyle) { + return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0); +} + +function getWindowSizes(document) { + var body = document.body; + var html = document.documentElement; + var computedStyle = isIE(10) && getComputedStyle(html); + + return { + height: getSize('Height', body, html, computedStyle), + width: getSize('Width', body, html, computedStyle) + }; +} + +var classCallCheck = function (instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } +}; + +var createClass = function () { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i]; + descriptor.enumerable = descriptor.enumerable || false; + descriptor.configurable = true; + if ("value" in descriptor) descriptor.writable = true; + Object.defineProperty(target, descriptor.key, descriptor); + } + } + + return function (Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps); + if (staticProps) defineProperties(Constructor, staticProps); + return Constructor; + }; +}(); + + + + + +var defineProperty = function (obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; +}; + +var _extends = Object.assign || function (target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i]; + + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } + + return target; +}; + +/** + * Given element offsets, generate an output similar to getBoundingClientRect + * @method + * @memberof Popper.Utils + * @argument {Object} offsets + * @returns {Object} ClientRect like output + */ +function getClientRect(offsets) { + return _extends({}, offsets, { + right: offsets.left + offsets.width, + bottom: offsets.top + offsets.height + }); +} + +/** + * Get bounding client rect of given element + * @method + * @memberof Popper.Utils + * @param {HTMLElement} element + * @return {Object} client rect + */ +function getBoundingClientRect(element) { + var rect = {}; + + // IE10 10 FIX: Please, don't ask, the element isn't + // considered in DOM in some circumstances... + // This isn't reproducible in IE10 compatibility mode of IE11 + try { + if (isIE(10)) { + rect = element.getBoundingClientRect(); + var scrollTop = getScroll(element, 'top'); + var scrollLeft = getScroll(element, 'left'); + rect.top += scrollTop; + rect.left += scrollLeft; + rect.bottom += scrollTop; + rect.right += scrollLeft; + } else { + rect = element.getBoundingClientRect(); + } + } catch (e) {} + + var result = { + left: rect.left, + top: rect.top, + width: rect.right - rect.left, + height: rect.bottom - rect.top + }; + + // subtract scrollbar size from sizes + var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {}; + var width = sizes.width || element.clientWidth || result.width; + var height = sizes.height || element.clientHeight || result.height; + + var horizScrollbar = element.offsetWidth - width; + var vertScrollbar = element.offsetHeight - height; + + // if an hypothetical scrollbar is detected, we must be sure it's not a `border` + // we make this check conditional for performance reasons + if (horizScrollbar || vertScrollbar) { + var styles = getStyleComputedProperty(element); + horizScrollbar -= getBordersSize(styles, 'x'); + vertScrollbar -= getBordersSize(styles, 'y'); + + result.width -= horizScrollbar; + result.height -= vertScrollbar; + } + + return getClientRect(result); +} + +function getOffsetRectRelativeToArbitraryNode(children, parent) { + var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; + + var isIE10 = isIE(10); + var isHTML = parent.nodeName === 'HTML'; + var childrenRect = getBoundingClientRect(children); + var parentRect = getBoundingClientRect(parent); + var scrollParent = getScrollParent(children); + + var styles = getStyleComputedProperty(parent); + var borderTopWidth = parseFloat(styles.borderTopWidth); + var borderLeftWidth = parseFloat(styles.borderLeftWidth); + + // In cases where the parent is fixed, we must ignore negative scroll in offset calc + if (fixedPosition && isHTML) { + parentRect.top = Math.max(parentRect.top, 0); + parentRect.left = Math.max(parentRect.left, 0); + } + var offsets = getClientRect({ + top: childrenRect.top - parentRect.top - borderTopWidth, + left: childrenRect.left - parentRect.left - borderLeftWidth, + width: childrenRect.width, + height: childrenRect.height + }); + offsets.marginTop = 0; + offsets.marginLeft = 0; + + // Subtract margins of documentElement in case it's being used as parent + // we do this only on HTML because it's the only element that behaves + // differently when margins are applied to it. The margins are included in + // the box of the documentElement, in the other cases not. + if (!isIE10 && isHTML) { + var marginTop = parseFloat(styles.marginTop); + var marginLeft = parseFloat(styles.marginLeft); + + offsets.top -= borderTopWidth - marginTop; + offsets.bottom -= borderTopWidth - marginTop; + offsets.left -= borderLeftWidth - marginLeft; + offsets.right -= borderLeftWidth - marginLeft; + + // Attach marginTop and marginLeft because in some circumstances we may need them + offsets.marginTop = marginTop; + offsets.marginLeft = marginLeft; + } + + if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') { + offsets = includeScroll(offsets, parent); + } + + return offsets; +} + +function getViewportOffsetRectRelativeToArtbitraryNode(element) { + var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + + var html = element.ownerDocument.documentElement; + var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html); + var width = Math.max(html.clientWidth, window.innerWidth || 0); + var height = Math.max(html.clientHeight, window.innerHeight || 0); + + var scrollTop = !excludeScroll ? getScroll(html) : 0; + var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0; + + var offset = { + top: scrollTop - relativeOffset.top + relativeOffset.marginTop, + left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft, + width: width, + height: height + }; + + return getClientRect(offset); +} + +/** + * Check if the given element is fixed or is inside a fixed parent + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @argument {Element} customContainer + * @returns {Boolean} answer to "isFixed?" + */ +function isFixed(element) { + var nodeName = element.nodeName; + if (nodeName === 'BODY' || nodeName === 'HTML') { + return false; + } + if (getStyleComputedProperty(element, 'position') === 'fixed') { + return true; + } + var parentNode = getParentNode(element); + if (!parentNode) { + return false; + } + return isFixed(parentNode); +} + +/** + * Finds the first parent of an element that has a transformed property defined + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} first transformed parent or documentElement + */ + +function getFixedPositionOffsetParent(element) { + // This check is needed to avoid errors in case one of the elements isn't defined for any reason + if (!element || !element.parentElement || isIE()) { + return document.documentElement; + } + var el = element.parentElement; + while (el && getStyleComputedProperty(el, 'transform') === 'none') { + el = el.parentElement; + } + return el || document.documentElement; +} + +/** + * Computed the boundaries limits and return them + * @method + * @memberof Popper.Utils + * @param {HTMLElement} popper + * @param {HTMLElement} reference + * @param {number} padding + * @param {HTMLElement} boundariesElement - Element used to define the boundaries + * @param {Boolean} fixedPosition - Is in fixed position mode + * @returns {Object} Coordinates of the boundaries + */ +function getBoundaries(popper, reference, padding, boundariesElement) { + var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; + + // NOTE: 1 DOM access here + + var boundaries = { top: 0, left: 0 }; + var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference)); + + // Handle viewport case + if (boundariesElement === 'viewport') { + boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition); + } else { + // Handle other cases based on DOM element used as boundaries + var boundariesNode = void 0; + if (boundariesElement === 'scrollParent') { + boundariesNode = getScrollParent(getParentNode(reference)); + if (boundariesNode.nodeName === 'BODY') { + boundariesNode = popper.ownerDocument.documentElement; + } + } else if (boundariesElement === 'window') { + boundariesNode = popper.ownerDocument.documentElement; + } else { + boundariesNode = boundariesElement; + } + + var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition); + + // In case of HTML, we need a different computation + if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) { + var _getWindowSizes = getWindowSizes(popper.ownerDocument), + height = _getWindowSizes.height, + width = _getWindowSizes.width; + + boundaries.top += offsets.top - offsets.marginTop; + boundaries.bottom = height + offsets.top; + boundaries.left += offsets.left - offsets.marginLeft; + boundaries.right = width + offsets.left; + } else { + // for all the other DOM elements, this one is good + boundaries = offsets; + } + } + + // Add paddings + padding = padding || 0; + var isPaddingNumber = typeof padding === 'number'; + boundaries.left += isPaddingNumber ? padding : padding.left || 0; + boundaries.top += isPaddingNumber ? padding : padding.top || 0; + boundaries.right -= isPaddingNumber ? padding : padding.right || 0; + boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0; + + return boundaries; +} + +function getArea(_ref) { + var width = _ref.width, + height = _ref.height; + + return width * height; +} + +/** + * Utility used to transform the `auto` placement to the placement with more + * available space. + * @method + * @memberof Popper.Utils + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ +function computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) { + var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0; + + if (placement.indexOf('auto') === -1) { + return placement; + } + + var boundaries = getBoundaries(popper, reference, padding, boundariesElement); + + var rects = { + top: { + width: boundaries.width, + height: refRect.top - boundaries.top + }, + right: { + width: boundaries.right - refRect.right, + height: boundaries.height + }, + bottom: { + width: boundaries.width, + height: boundaries.bottom - refRect.bottom + }, + left: { + width: refRect.left - boundaries.left, + height: boundaries.height + } + }; + + var sortedAreas = Object.keys(rects).map(function (key) { + return _extends({ + key: key + }, rects[key], { + area: getArea(rects[key]) + }); + }).sort(function (a, b) { + return b.area - a.area; + }); + + var filteredAreas = sortedAreas.filter(function (_ref2) { + var width = _ref2.width, + height = _ref2.height; + return width >= popper.clientWidth && height >= popper.clientHeight; + }); + + var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key; + + var variation = placement.split('-')[1]; + + return computedPlacement + (variation ? '-' + variation : ''); +} + +/** + * Get offsets to the reference element + * @method + * @memberof Popper.Utils + * @param {Object} state + * @param {Element} popper - the popper element + * @param {Element} reference - the reference element (the popper will be relative to this) + * @param {Element} fixedPosition - is in fixed position mode + * @returns {Object} An object containing the offsets which will be applied to the popper + */ +function getReferenceOffsets(state, popper, reference) { + var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null; + + var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference)); + return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition); +} + +/** + * Get the outer sizes of the given element (offset size + margins) + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Object} object containing width and height properties + */ +function getOuterSizes(element) { + var window = element.ownerDocument.defaultView; + var styles = window.getComputedStyle(element); + var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0); + var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0); + var result = { + width: element.offsetWidth + y, + height: element.offsetHeight + x + }; + return result; +} + +/** + * Get the opposite placement of the given one + * @method + * @memberof Popper.Utils + * @argument {String} placement + * @returns {String} flipped placement + */ +function getOppositePlacement(placement) { + var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' }; + return placement.replace(/left|right|bottom|top/g, function (matched) { + return hash[matched]; + }); +} + +/** + * Get offsets to the popper + * @method + * @memberof Popper.Utils + * @param {Object} position - CSS position the Popper will get applied + * @param {HTMLElement} popper - the popper element + * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this) + * @param {String} placement - one of the valid placement options + * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper + */ +function getPopperOffsets(popper, referenceOffsets, placement) { + placement = placement.split('-')[0]; + + // Get popper node sizes + var popperRect = getOuterSizes(popper); + + // Add position, width and height to our offsets object + var popperOffsets = { + width: popperRect.width, + height: popperRect.height + }; + + // depending by the popper placement we have to compute its offsets slightly differently + var isHoriz = ['right', 'left'].indexOf(placement) !== -1; + var mainSide = isHoriz ? 'top' : 'left'; + var secondarySide = isHoriz ? 'left' : 'top'; + var measurement = isHoriz ? 'height' : 'width'; + var secondaryMeasurement = !isHoriz ? 'height' : 'width'; + + popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2; + if (placement === secondarySide) { + popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement]; + } else { + popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)]; + } + + return popperOffsets; +} + +/** + * Mimics the `find` method of Array + * @method + * @memberof Popper.Utils + * @argument {Array} arr + * @argument prop + * @argument value + * @returns index or -1 + */ +function find(arr, check) { + // use native find if supported + if (Array.prototype.find) { + return arr.find(check); + } + + // use `filter` to obtain the same behavior of `find` + return arr.filter(check)[0]; +} + +/** + * Return the index of the matching object + * @method + * @memberof Popper.Utils + * @argument {Array} arr + * @argument prop + * @argument value + * @returns index or -1 + */ +function findIndex(arr, prop, value) { + // use native findIndex if supported + if (Array.prototype.findIndex) { + return arr.findIndex(function (cur) { + return cur[prop] === value; + }); + } + + // use `find` + `indexOf` if `findIndex` isn't supported + var match = find(arr, function (obj) { + return obj[prop] === value; + }); + return arr.indexOf(match); +} + +/** + * Loop trough the list of modifiers and run them in order, + * each of them will then edit the data object. + * @method + * @memberof Popper.Utils + * @param {dataObject} data + * @param {Array} modifiers + * @param {String} ends - Optional modifier name used as stopper + * @returns {dataObject} + */ +function runModifiers(modifiers, data, ends) { + var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends)); + + modifiersToRun.forEach(function (modifier) { + if (modifier['function']) { + // eslint-disable-line dot-notation + console.warn('`modifier.function` is deprecated, use `modifier.fn`!'); + } + var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation + if (modifier.enabled && isFunction(fn)) { + // Add properties to offsets to make them a complete clientRect object + // we do this before each modifier to make sure the previous one doesn't + // mess with these values + data.offsets.popper = getClientRect(data.offsets.popper); + data.offsets.reference = getClientRect(data.offsets.reference); + + data = fn(data, modifier); + } + }); + + return data; +} + +/** + * Updates the position of the popper, computing the new offsets and applying + * the new style.
+ * Prefer `scheduleUpdate` over `update` because of performance reasons. + * @method + * @memberof Popper + */ +function update() { + // if popper is destroyed, don't perform any further update + if (this.state.isDestroyed) { + return; + } + + var data = { + instance: this, + styles: {}, + arrowStyles: {}, + attributes: {}, + flipped: false, + offsets: {} + }; + + // compute reference element offsets + data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed); + + // compute auto placement, store placement inside the data object, + // modifiers will be able to edit `placement` if needed + // and refer to originalPlacement to know the original value + data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding); + + // store the computed placement inside `originalPlacement` + data.originalPlacement = data.placement; + + data.positionFixed = this.options.positionFixed; + + // compute the popper offsets + data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement); + + data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute'; + + // run the modifiers + data = runModifiers(this.modifiers, data); + + // the first `update` will call `onCreate` callback + // the other ones will call `onUpdate` callback + if (!this.state.isCreated) { + this.state.isCreated = true; + this.options.onCreate(data); + } else { + this.options.onUpdate(data); + } +} + +/** + * Helper used to know if the given modifier is enabled. + * @method + * @memberof Popper.Utils + * @returns {Boolean} + */ +function isModifierEnabled(modifiers, modifierName) { + return modifiers.some(function (_ref) { + var name = _ref.name, + enabled = _ref.enabled; + return enabled && name === modifierName; + }); +} + +/** + * Get the prefixed supported property name + * @method + * @memberof Popper.Utils + * @argument {String} property (camelCase) + * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix) + */ +function getSupportedPropertyName(property) { + var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O']; + var upperProp = property.charAt(0).toUpperCase() + property.slice(1); + + for (var i = 0; i < prefixes.length; i++) { + var prefix = prefixes[i]; + var toCheck = prefix ? '' + prefix + upperProp : property; + if (typeof document.body.style[toCheck] !== 'undefined') { + return toCheck; + } + } + return null; +} + +/** + * Destroys the popper. + * @method + * @memberof Popper + */ +function destroy() { + this.state.isDestroyed = true; + + // touch DOM only if `applyStyle` modifier is enabled + if (isModifierEnabled(this.modifiers, 'applyStyle')) { + this.popper.removeAttribute('x-placement'); + this.popper.style.position = ''; + this.popper.style.top = ''; + this.popper.style.left = ''; + this.popper.style.right = ''; + this.popper.style.bottom = ''; + this.popper.style.willChange = ''; + this.popper.style[getSupportedPropertyName('transform')] = ''; + } + + this.disableEventListeners(); + + // remove the popper if user explicitly asked for the deletion on destroy + // do not use `remove` because IE11 doesn't support it + if (this.options.removeOnDestroy) { + this.popper.parentNode.removeChild(this.popper); + } + return this; +} + +/** + * Get the window associated with the element + * @argument {Element} element + * @returns {Window} + */ +function getWindow(element) { + var ownerDocument = element.ownerDocument; + return ownerDocument ? ownerDocument.defaultView : window; +} + +function attachToScrollParents(scrollParent, event, callback, scrollParents) { + var isBody = scrollParent.nodeName === 'BODY'; + var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent; + target.addEventListener(event, callback, { passive: true }); + + if (!isBody) { + attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents); + } + scrollParents.push(target); +} + +/** + * Setup needed event listeners used to update the popper position + * @method + * @memberof Popper.Utils + * @private + */ +function setupEventListeners(reference, options, state, updateBound) { + // Resize event listener on window + state.updateBound = updateBound; + getWindow(reference).addEventListener('resize', state.updateBound, { passive: true }); + + // Scroll event listener on scroll parents + var scrollElement = getScrollParent(reference); + attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents); + state.scrollElement = scrollElement; + state.eventsEnabled = true; + + return state; +} + +/** + * It will add resize/scroll events and start recalculating + * position of the popper element when they are triggered. + * @method + * @memberof Popper + */ +function enableEventListeners() { + if (!this.state.eventsEnabled) { + this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate); + } +} + +/** + * Remove event listeners used to update the popper position + * @method + * @memberof Popper.Utils + * @private + */ +function removeEventListeners(reference, state) { + // Remove resize event listener on window + getWindow(reference).removeEventListener('resize', state.updateBound); + + // Remove scroll event listener on scroll parents + state.scrollParents.forEach(function (target) { + target.removeEventListener('scroll', state.updateBound); + }); + + // Reset state + state.updateBound = null; + state.scrollParents = []; + state.scrollElement = null; + state.eventsEnabled = false; + return state; +} + +/** + * It will remove resize/scroll events and won't recalculate popper position + * when they are triggered. It also won't trigger `onUpdate` callback anymore, + * unless you call `update` method manually. + * @method + * @memberof Popper + */ +function disableEventListeners() { + if (this.state.eventsEnabled) { + cancelAnimationFrame(this.scheduleUpdate); + this.state = removeEventListeners(this.reference, this.state); + } +} + +/** + * Tells if a given input is a number + * @method + * @memberof Popper.Utils + * @param {*} input to check + * @return {Boolean} + */ +function isNumeric(n) { + return n !== '' && !isNaN(parseFloat(n)) && isFinite(n); +} + +/** + * Set the style to the given popper + * @method + * @memberof Popper.Utils + * @argument {Element} element - Element to apply the style to + * @argument {Object} styles + * Object with a list of properties and values which will be applied to the element + */ +function setStyles(element, styles) { + Object.keys(styles).forEach(function (prop) { + var unit = ''; + // add unit if the value is numeric and is one of the following + if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) { + unit = 'px'; + } + element.style[prop] = styles[prop] + unit; + }); +} + +/** + * Set the attributes to the given popper + * @method + * @memberof Popper.Utils + * @argument {Element} element - Element to apply the attributes to + * @argument {Object} styles + * Object with a list of properties and values which will be applied to the element + */ +function setAttributes(element, attributes) { + Object.keys(attributes).forEach(function (prop) { + var value = attributes[prop]; + if (value !== false) { + element.setAttribute(prop, attributes[prop]); + } else { + element.removeAttribute(prop); + } + }); +} + +/** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} data.styles - List of style properties - values to apply to popper element + * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The same data object + */ +function applyStyle(data) { + // any property present in `data.styles` will be applied to the popper, + // in this way we can make the 3rd party modifiers add custom styles to it + // Be aware, modifiers could override the properties defined in the previous + // lines of this modifier! + setStyles(data.instance.popper, data.styles); + + // any property present in `data.attributes` will be applied to the popper, + // they will be set as HTML attributes of the element + setAttributes(data.instance.popper, data.attributes); + + // if arrowElement is defined and arrowStyles has some properties + if (data.arrowElement && Object.keys(data.arrowStyles).length) { + setStyles(data.arrowElement, data.arrowStyles); + } + + return data; +} + +/** + * Set the x-placement attribute before everything else because it could be used + * to add margins to the popper margins needs to be calculated to get the + * correct popper offsets. + * @method + * @memberof Popper.modifiers + * @param {HTMLElement} reference - The reference element used to position the popper + * @param {HTMLElement} popper - The HTML element used as popper + * @param {Object} options - Popper.js options + */ +function applyStyleOnLoad(reference, popper, options, modifierOptions, state) { + // compute reference element offsets + var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed); + + // compute auto placement, store placement inside the data object, + // modifiers will be able to edit `placement` if needed + // and refer to originalPlacement to know the original value + var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding); + + popper.setAttribute('x-placement', placement); + + // Apply `position` to popper before anything else because + // without the position applied we can't guarantee correct computations + setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' }); + + return options; +} + +/** + * @function + * @memberof Popper.Utils + * @argument {Object} data - The data object generated by `update` method + * @argument {Boolean} shouldRound - If the offsets should be rounded at all + * @returns {Object} The popper's position offsets rounded + * + * The tale of pixel-perfect positioning. It's still not 100% perfect, but as + * good as it can be within reason. + * Discussion here: https://github.com/FezVrasta/popper.js/pull/715 + * + * Low DPI screens cause a popper to be blurry if not using full pixels (Safari + * as well on High DPI screens). + * + * Firefox prefers no rounding for positioning and does not have blurriness on + * high DPI screens. + * + * Only horizontal placement and left/right values need to be considered. + */ +function getRoundedOffsets(data, shouldRound) { + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + var round = Math.round, + floor = Math.floor; + + var noRound = function noRound(v) { + return v; + }; + + var referenceWidth = round(reference.width); + var popperWidth = round(popper.width); + + var isVertical = ['left', 'right'].indexOf(data.placement) !== -1; + var isVariation = data.placement.indexOf('-') !== -1; + var sameWidthParity = referenceWidth % 2 === popperWidth % 2; + var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1; + + var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor; + var verticalToInteger = !shouldRound ? noRound : round; + + return { + left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left), + top: verticalToInteger(popper.top), + bottom: verticalToInteger(popper.bottom), + right: horizontalToInteger(popper.right) + }; +} + +var isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent); + +/** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ +function computeStyle(data, options) { + var x = options.x, + y = options.y; + var popper = data.offsets.popper; + + // Remove this legacy support in Popper.js v2 + + var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) { + return modifier.name === 'applyStyle'; + }).gpuAcceleration; + if (legacyGpuAccelerationOption !== undefined) { + console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!'); + } + var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration; + + var offsetParent = getOffsetParent(data.instance.popper); + var offsetParentRect = getBoundingClientRect(offsetParent); + + // Styles + var styles = { + position: popper.position + }; + + var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox); + + var sideA = x === 'bottom' ? 'top' : 'bottom'; + var sideB = y === 'right' ? 'left' : 'right'; + + // if gpuAcceleration is set to `true` and transform is supported, + // we use `translate3d` to apply the position to the popper we + // automatically use the supported prefixed version if needed + var prefixedProperty = getSupportedPropertyName('transform'); + + // now, let's make a step back and look at this code closely (wtf?) + // If the content of the popper grows once it's been positioned, it + // may happen that the popper gets misplaced because of the new content + // overflowing its reference element + // To avoid this problem, we provide two options (x and y), which allow + // the consumer to define the offset origin. + // If we position a popper on top of a reference element, we can set + // `x` to `top` to make the popper grow towards its top instead of + // its bottom. + var left = void 0, + top = void 0; + if (sideA === 'bottom') { + // when offsetParent is the positioning is relative to the bottom of the screen (excluding the scrollbar) + // and not the bottom of the html element + if (offsetParent.nodeName === 'HTML') { + top = -offsetParent.clientHeight + offsets.bottom; + } else { + top = -offsetParentRect.height + offsets.bottom; + } + } else { + top = offsets.top; + } + if (sideB === 'right') { + if (offsetParent.nodeName === 'HTML') { + left = -offsetParent.clientWidth + offsets.right; + } else { + left = -offsetParentRect.width + offsets.right; + } + } else { + left = offsets.left; + } + if (gpuAcceleration && prefixedProperty) { + styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)'; + styles[sideA] = 0; + styles[sideB] = 0; + styles.willChange = 'transform'; + } else { + // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties + var invertTop = sideA === 'bottom' ? -1 : 1; + var invertLeft = sideB === 'right' ? -1 : 1; + styles[sideA] = top * invertTop; + styles[sideB] = left * invertLeft; + styles.willChange = sideA + ', ' + sideB; + } + + // Attributes + var attributes = { + 'x-placement': data.placement + }; + + // Update `data` attributes, styles and arrowStyles + data.attributes = _extends({}, attributes, data.attributes); + data.styles = _extends({}, styles, data.styles); + data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles); + + return data; +} + +/** + * Helper used to know if the given modifier depends from another one.
+ * It checks if the needed modifier is listed and enabled. + * @method + * @memberof Popper.Utils + * @param {Array} modifiers - list of modifiers + * @param {String} requestingName - name of requesting modifier + * @param {String} requestedName - name of requested modifier + * @returns {Boolean} + */ +function isModifierRequired(modifiers, requestingName, requestedName) { + var requesting = find(modifiers, function (_ref) { + var name = _ref.name; + return name === requestingName; + }); + + var isRequired = !!requesting && modifiers.some(function (modifier) { + return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order; + }); + + if (!isRequired) { + var _requesting = '`' + requestingName + '`'; + var requested = '`' + requestedName + '`'; + console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!'); + } + return isRequired; +} + +/** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ +function arrow(data, options) { + var _data$offsets$arrow; + + // arrow depends on keepTogether in order to work + if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) { + return data; + } + + var arrowElement = options.element; + + // if arrowElement is a string, suppose it's a CSS selector + if (typeof arrowElement === 'string') { + arrowElement = data.instance.popper.querySelector(arrowElement); + + // if arrowElement is not found, don't run the modifier + if (!arrowElement) { + return data; + } + } else { + // if the arrowElement isn't a query selector we must check that the + // provided DOM node is child of its popper node + if (!data.instance.popper.contains(arrowElement)) { + console.warn('WARNING: `arrow.element` must be child of its popper element!'); + return data; + } + } + + var placement = data.placement.split('-')[0]; + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var isVertical = ['left', 'right'].indexOf(placement) !== -1; + + var len = isVertical ? 'height' : 'width'; + var sideCapitalized = isVertical ? 'Top' : 'Left'; + var side = sideCapitalized.toLowerCase(); + var altSide = isVertical ? 'left' : 'top'; + var opSide = isVertical ? 'bottom' : 'right'; + var arrowElementSize = getOuterSizes(arrowElement)[len]; + + // + // extends keepTogether behavior making sure the popper and its + // reference have enough pixels in conjunction + // + + // top/left side + if (reference[opSide] - arrowElementSize < popper[side]) { + data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize); + } + // bottom/right side + if (reference[side] + arrowElementSize > popper[opSide]) { + data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide]; + } + data.offsets.popper = getClientRect(data.offsets.popper); + + // compute center of the popper + var center = reference[side] + reference[len] / 2 - arrowElementSize / 2; + + // Compute the sideValue using the updated popper offsets + // take popper margin in account because we don't have this info available + var css = getStyleComputedProperty(data.instance.popper); + var popperMarginSide = parseFloat(css['margin' + sideCapitalized]); + var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']); + var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide; + + // prevent arrowElement from being placed not contiguously to its popper + sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0); + + data.arrowElement = arrowElement; + data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow); + + return data; +} + +/** + * Get the opposite placement variation of the given one + * @method + * @memberof Popper.Utils + * @argument {String} placement variation + * @returns {String} flipped placement variation + */ +function getOppositeVariation(variation) { + if (variation === 'end') { + return 'start'; + } else if (variation === 'start') { + return 'end'; + } + return variation; +} + +/** + * List of accepted placements to use as values of the `placement` option.
+ * Valid placements are: + * - `auto` + * - `top` + * - `right` + * - `bottom` + * - `left` + * + * Each placement can have a variation from this list: + * - `-start` + * - `-end` + * + * Variations are interpreted easily if you think of them as the left to right + * written languages. Horizontally (`top` and `bottom`), `start` is left and `end` + * is right.
+ * Vertically (`left` and `right`), `start` is top and `end` is bottom. + * + * Some valid examples are: + * - `top-end` (on top of reference, right aligned) + * - `right-start` (on right of reference, top aligned) + * - `bottom` (on bottom, centered) + * - `auto-end` (on the side with more space available, alignment depends by placement) + * + * @static + * @type {Array} + * @enum {String} + * @readonly + * @method placements + * @memberof Popper + */ +var placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start']; + +// Get rid of `auto` `auto-start` and `auto-end` +var validPlacements = placements.slice(3); + +/** + * Given an initial placement, returns all the subsequent placements + * clockwise (or counter-clockwise). + * + * @method + * @memberof Popper.Utils + * @argument {String} placement - A valid placement (it accepts variations) + * @argument {Boolean} counter - Set to true to walk the placements counterclockwise + * @returns {Array} placements including their variations + */ +function clockwise(placement) { + var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + + var index = validPlacements.indexOf(placement); + var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index)); + return counter ? arr.reverse() : arr; +} + +var BEHAVIORS = { + FLIP: 'flip', + CLOCKWISE: 'clockwise', + COUNTERCLOCKWISE: 'counterclockwise' +}; + +/** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ +function flip(data, options) { + // if `inner` modifier is enabled, we can't use the `flip` modifier + if (isModifierEnabled(data.instance.modifiers, 'inner')) { + return data; + } + + if (data.flipped && data.placement === data.originalPlacement) { + // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides + return data; + } + + var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed); + + var placement = data.placement.split('-')[0]; + var placementOpposite = getOppositePlacement(placement); + var variation = data.placement.split('-')[1] || ''; + + var flipOrder = []; + + switch (options.behavior) { + case BEHAVIORS.FLIP: + flipOrder = [placement, placementOpposite]; + break; + case BEHAVIORS.CLOCKWISE: + flipOrder = clockwise(placement); + break; + case BEHAVIORS.COUNTERCLOCKWISE: + flipOrder = clockwise(placement, true); + break; + default: + flipOrder = options.behavior; + } + + flipOrder.forEach(function (step, index) { + if (placement !== step || flipOrder.length === index + 1) { + return data; + } + + placement = data.placement.split('-')[0]; + placementOpposite = getOppositePlacement(placement); + + var popperOffsets = data.offsets.popper; + var refOffsets = data.offsets.reference; + + // using floor because the reference offsets may contain decimals we are not going to consider here + var floor = Math.floor; + var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom); + + var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left); + var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right); + var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top); + var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom); + + var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom; + + // flip the variation if required + var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; + + // flips variation if reference element overflows boundaries + var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom); + + // flips variation if popper content overflows boundaries + var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop); + + var flippedVariation = flippedVariationByRef || flippedVariationByContent; + + if (overlapsRef || overflowsBoundaries || flippedVariation) { + // this boolean to detect any flip loop + data.flipped = true; + + if (overlapsRef || overflowsBoundaries) { + placement = flipOrder[index + 1]; + } + + if (flippedVariation) { + variation = getOppositeVariation(variation); + } + + data.placement = placement + (variation ? '-' + variation : ''); + + // this object contains `position`, we want to preserve it along with + // any additional property we may add in the future + data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement)); + + data = runModifiers(data.instance.modifiers, data, 'flip'); + } + }); + return data; +} + +/** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ +function keepTogether(data) { + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var placement = data.placement.split('-')[0]; + var floor = Math.floor; + var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; + var side = isVertical ? 'right' : 'bottom'; + var opSide = isVertical ? 'left' : 'top'; + var measurement = isVertical ? 'width' : 'height'; + + if (popper[side] < floor(reference[opSide])) { + data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement]; + } + if (popper[opSide] > floor(reference[side])) { + data.offsets.popper[opSide] = floor(reference[side]); + } + + return data; +} + +/** + * Converts a string containing value + unit into a px value number + * @function + * @memberof {modifiers~offset} + * @private + * @argument {String} str - Value + unit string + * @argument {String} measurement - `height` or `width` + * @argument {Object} popperOffsets + * @argument {Object} referenceOffsets + * @returns {Number|String} + * Value in pixels, or original string if no values were extracted + */ +function toValue(str, measurement, popperOffsets, referenceOffsets) { + // separate value from unit + var split = str.match(/((?:\-|\+)?\d*\.?\d*)(.*)/); + var value = +split[1]; + var unit = split[2]; + + // If it's not a number it's an operator, I guess + if (!value) { + return str; + } + + if (unit.indexOf('%') === 0) { + var element = void 0; + switch (unit) { + case '%p': + element = popperOffsets; + break; + case '%': + case '%r': + default: + element = referenceOffsets; + } + + var rect = getClientRect(element); + return rect[measurement] / 100 * value; + } else if (unit === 'vh' || unit === 'vw') { + // if is a vh or vw, we calculate the size based on the viewport + var size = void 0; + if (unit === 'vh') { + size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0); + } else { + size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0); + } + return size / 100 * value; + } else { + // if is an explicit pixel unit, we get rid of the unit and keep the value + // if is an implicit unit, it's px, and we return just the value + return value; + } +} + +/** + * Parse an `offset` string to extrapolate `x` and `y` numeric offsets. + * @function + * @memberof {modifiers~offset} + * @private + * @argument {String} offset + * @argument {Object} popperOffsets + * @argument {Object} referenceOffsets + * @argument {String} basePlacement + * @returns {Array} a two cells array with x and y offsets in numbers + */ +function parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) { + var offsets = [0, 0]; + + // Use height if placement is left or right and index is 0 otherwise use width + // in this way the first offset will use an axis and the second one + // will use the other one + var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1; + + // Split the offset string to obtain a list of values and operands + // The regex addresses values with the plus or minus sign in front (+10, -20, etc) + var fragments = offset.split(/(\+|\-)/).map(function (frag) { + return frag.trim(); + }); + + // Detect if the offset string contains a pair of values or a single one + // they could be separated by comma or space + var divider = fragments.indexOf(find(fragments, function (frag) { + return frag.search(/,|\s/) !== -1; + })); + + if (fragments[divider] && fragments[divider].indexOf(',') === -1) { + console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.'); + } + + // If divider is found, we divide the list of values and operands to divide + // them by ofset X and Y. + var splitRegex = /\s*,\s*|\s+/; + var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments]; + + // Convert the values with units to absolute pixels to allow our computations + ops = ops.map(function (op, index) { + // Most of the units rely on the orientation of the popper + var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width'; + var mergeWithPrevious = false; + return op + // This aggregates any `+` or `-` sign that aren't considered operators + // e.g.: 10 + +5 => [10, +, +5] + .reduce(function (a, b) { + if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) { + a[a.length - 1] = b; + mergeWithPrevious = true; + return a; + } else if (mergeWithPrevious) { + a[a.length - 1] += b; + mergeWithPrevious = false; + return a; + } else { + return a.concat(b); + } + }, []) + // Here we convert the string values into number values (in px) + .map(function (str) { + return toValue(str, measurement, popperOffsets, referenceOffsets); + }); + }); + + // Loop trough the offsets arrays and execute the operations + ops.forEach(function (op, index) { + op.forEach(function (frag, index2) { + if (isNumeric(frag)) { + offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1); + } + }); + }); + return offsets; +} + +/** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @argument {Number|String} options.offset=0 + * The offset value as described in the modifier description + * @returns {Object} The data object, properly modified + */ +function offset(data, _ref) { + var offset = _ref.offset; + var placement = data.placement, + _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var basePlacement = placement.split('-')[0]; + + var offsets = void 0; + if (isNumeric(+offset)) { + offsets = [+offset, 0]; + } else { + offsets = parseOffset(offset, popper, reference, basePlacement); + } + + if (basePlacement === 'left') { + popper.top += offsets[0]; + popper.left -= offsets[1]; + } else if (basePlacement === 'right') { + popper.top += offsets[0]; + popper.left += offsets[1]; + } else if (basePlacement === 'top') { + popper.left += offsets[0]; + popper.top -= offsets[1]; + } else if (basePlacement === 'bottom') { + popper.left += offsets[0]; + popper.top += offsets[1]; + } + + data.popper = popper; + return data; +} + +/** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ +function preventOverflow(data, options) { + var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper); + + // If offsetParent is the reference element, we really want to + // go one step up and use the next offsetParent as reference to + // avoid to make this modifier completely useless and look like broken + if (data.instance.reference === boundariesElement) { + boundariesElement = getOffsetParent(boundariesElement); + } + + // NOTE: DOM access here + // resets the popper's position so that the document size can be calculated excluding + // the size of the popper element itself + var transformProp = getSupportedPropertyName('transform'); + var popperStyles = data.instance.popper.style; // assignment to help minification + var top = popperStyles.top, + left = popperStyles.left, + transform = popperStyles[transformProp]; + + popperStyles.top = ''; + popperStyles.left = ''; + popperStyles[transformProp] = ''; + + var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed); + + // NOTE: DOM access here + // restores the original style properties after the offsets have been computed + popperStyles.top = top; + popperStyles.left = left; + popperStyles[transformProp] = transform; + + options.boundaries = boundaries; + + var order = options.priority; + var popper = data.offsets.popper; + + var check = { + primary: function primary(placement) { + var value = popper[placement]; + if (popper[placement] < boundaries[placement] && !options.escapeWithReference) { + value = Math.max(popper[placement], boundaries[placement]); + } + return defineProperty({}, placement, value); + }, + secondary: function secondary(placement) { + var mainSide = placement === 'right' ? 'left' : 'top'; + var value = popper[mainSide]; + if (popper[placement] > boundaries[placement] && !options.escapeWithReference) { + value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height)); + } + return defineProperty({}, mainSide, value); + } + }; + + order.forEach(function (placement) { + var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary'; + popper = _extends({}, popper, check[side](placement)); + }); + + data.offsets.popper = popper; + + return data; +} + +/** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ +function shift(data) { + var placement = data.placement; + var basePlacement = placement.split('-')[0]; + var shiftvariation = placement.split('-')[1]; + + // if shift shiftvariation is specified, run the modifier + if (shiftvariation) { + var _data$offsets = data.offsets, + reference = _data$offsets.reference, + popper = _data$offsets.popper; + + var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1; + var side = isVertical ? 'left' : 'top'; + var measurement = isVertical ? 'width' : 'height'; + + var shiftOffsets = { + start: defineProperty({}, side, reference[side]), + end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement]) + }; + + data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]); + } + + return data; +} + +/** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by update method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ +function hide(data) { + if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) { + return data; + } + + var refRect = data.offsets.reference; + var bound = find(data.instance.modifiers, function (modifier) { + return modifier.name === 'preventOverflow'; + }).boundaries; + + if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) { + // Avoid unnecessary DOM access if visibility hasn't changed + if (data.hide === true) { + return data; + } + + data.hide = true; + data.attributes['x-out-of-boundaries'] = ''; + } else { + // Avoid unnecessary DOM access if visibility hasn't changed + if (data.hide === false) { + return data; + } + + data.hide = false; + data.attributes['x-out-of-boundaries'] = false; + } + + return data; +} + +/** + * @function + * @memberof Modifiers + * @argument {Object} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {Object} The data object, properly modified + */ +function inner(data) { + var placement = data.placement; + var basePlacement = placement.split('-')[0]; + var _data$offsets = data.offsets, + popper = _data$offsets.popper, + reference = _data$offsets.reference; + + var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1; + + var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1; + + popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0); + + data.placement = getOppositePlacement(placement); + data.offsets.popper = getClientRect(popper); + + return data; +} + +/** + * Modifier function, each modifier can have a function of this type assigned + * to its `fn` property.
+ * These functions will be called on each update, this means that you must + * make sure they are performant enough to avoid performance bottlenecks. + * + * @function ModifierFn + * @argument {dataObject} data - The data object generated by `update` method + * @argument {Object} options - Modifiers configuration and options + * @returns {dataObject} The data object, properly modified + */ + +/** + * Modifiers are plugins used to alter the behavior of your poppers.
+ * Popper.js uses a set of 9 modifiers to provide all the basic functionalities + * needed by the library. + * + * Usually you don't want to override the `order`, `fn` and `onLoad` props. + * All the other properties are configurations that could be tweaked. + * @namespace modifiers + */ +var modifiers = { + /** + * Modifier used to shift the popper on the start or end of its reference + * element.
+ * It will read the variation of the `placement` property.
+ * It can be one either `-end` or `-start`. + * @memberof modifiers + * @inner + */ + shift: { + /** @prop {number} order=100 - Index used to define the order of execution */ + order: 100, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: shift + }, + + /** + * The `offset` modifier can shift your popper on both its axis. + * + * It accepts the following units: + * - `px` or unit-less, interpreted as pixels + * - `%` or `%r`, percentage relative to the length of the reference element + * - `%p`, percentage relative to the length of the popper element + * - `vw`, CSS viewport width unit + * - `vh`, CSS viewport height unit + * + * For length is intended the main axis relative to the placement of the popper.
+ * This means that if the placement is `top` or `bottom`, the length will be the + * `width`. In case of `left` or `right`, it will be the `height`. + * + * You can provide a single value (as `Number` or `String`), or a pair of values + * as `String` divided by a comma or one (or more) white spaces.
+ * The latter is a deprecated method because it leads to confusion and will be + * removed in v2.
+ * Additionally, it accepts additions and subtractions between different units. + * Note that multiplications and divisions aren't supported. + * + * Valid examples are: + * ``` + * 10 + * '10%' + * '10, 10' + * '10%, 10' + * '10 + 10%' + * '10 - 5vh + 3%' + * '-10px + 5vh, 5px - 6%' + * ``` + * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap + * > with their reference element, unfortunately, you will have to disable the `flip` modifier. + * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373). + * + * @memberof modifiers + * @inner + */ + offset: { + /** @prop {number} order=200 - Index used to define the order of execution */ + order: 200, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: offset, + /** @prop {Number|String} offset=0 + * The offset value as described in the modifier description + */ + offset: 0 + }, + + /** + * Modifier used to prevent the popper from being positioned outside the boundary. + * + * A scenario exists where the reference itself is not within the boundaries.
+ * We can say it has "escaped the boundaries" — or just "escaped".
+ * In this case we need to decide whether the popper should either: + * + * - detach from the reference and remain "trapped" in the boundaries, or + * - if it should ignore the boundary and "escape with its reference" + * + * When `escapeWithReference` is set to`true` and reference is completely + * outside its boundaries, the popper will overflow (or completely leave) + * the boundaries in order to remain attached to the edge of the reference. + * + * @memberof modifiers + * @inner + */ + preventOverflow: { + /** @prop {number} order=300 - Index used to define the order of execution */ + order: 300, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: preventOverflow, + /** + * @prop {Array} [priority=['left','right','top','bottom']] + * Popper will try to prevent overflow following these priorities by default, + * then, it could overflow on the left and on top of the `boundariesElement` + */ + priority: ['left', 'right', 'top', 'bottom'], + /** + * @prop {number} padding=5 + * Amount of pixel used to define a minimum distance between the boundaries + * and the popper. This makes sure the popper always has a little padding + * between the edges of its container + */ + padding: 5, + /** + * @prop {String|HTMLElement} boundariesElement='scrollParent' + * Boundaries used by the modifier. Can be `scrollParent`, `window`, + * `viewport` or any DOM element. + */ + boundariesElement: 'scrollParent' + }, + + /** + * Modifier used to make sure the reference and its popper stay near each other + * without leaving any gap between the two. Especially useful when the arrow is + * enabled and you want to ensure that it points to its reference element. + * It cares only about the first axis. You can still have poppers with margin + * between the popper and its reference element. + * @memberof modifiers + * @inner + */ + keepTogether: { + /** @prop {number} order=400 - Index used to define the order of execution */ + order: 400, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: keepTogether + }, + + /** + * This modifier is used to move the `arrowElement` of the popper to make + * sure it is positioned between the reference element and its popper element. + * It will read the outer size of the `arrowElement` node to detect how many + * pixels of conjunction are needed. + * + * It has no effect if no `arrowElement` is provided. + * @memberof modifiers + * @inner + */ + arrow: { + /** @prop {number} order=500 - Index used to define the order of execution */ + order: 500, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: arrow, + /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */ + element: '[x-arrow]' + }, + + /** + * Modifier used to flip the popper's placement when it starts to overlap its + * reference element. + * + * Requires the `preventOverflow` modifier before it in order to work. + * + * **NOTE:** this modifier will interrupt the current update cycle and will + * restart it if it detects the need to flip the placement. + * @memberof modifiers + * @inner + */ + flip: { + /** @prop {number} order=600 - Index used to define the order of execution */ + order: 600, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: flip, + /** + * @prop {String|Array} behavior='flip' + * The behavior used to change the popper's placement. It can be one of + * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid + * placements (with optional variations) + */ + behavior: 'flip', + /** + * @prop {number} padding=5 + * The popper will flip if it hits the edges of the `boundariesElement` + */ + padding: 5, + /** + * @prop {String|HTMLElement} boundariesElement='viewport' + * The element which will define the boundaries of the popper position. + * The popper will never be placed outside of the defined boundaries + * (except if `keepTogether` is enabled) + */ + boundariesElement: 'viewport', + /** + * @prop {Boolean} flipVariations=false + * The popper will switch placement variation between `-start` and `-end` when + * the reference element overlaps its boundaries. + * + * The original placement should have a set variation. + */ + flipVariations: false, + /** + * @prop {Boolean} flipVariationsByContent=false + * The popper will switch placement variation between `-start` and `-end` when + * the popper element overlaps its reference boundaries. + * + * The original placement should have a set variation. + */ + flipVariationsByContent: false + }, + + /** + * Modifier used to make the popper flow toward the inner of the reference element. + * By default, when this modifier is disabled, the popper will be placed outside + * the reference element. + * @memberof modifiers + * @inner + */ + inner: { + /** @prop {number} order=700 - Index used to define the order of execution */ + order: 700, + /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */ + enabled: false, + /** @prop {ModifierFn} */ + fn: inner + }, + + /** + * Modifier used to hide the popper when its reference element is outside of the + * popper boundaries. It will set a `x-out-of-boundaries` attribute which can + * be used to hide with a CSS selector the popper when its reference is + * out of boundaries. + * + * Requires the `preventOverflow` modifier before it in order to work. + * @memberof modifiers + * @inner + */ + hide: { + /** @prop {number} order=800 - Index used to define the order of execution */ + order: 800, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: hide + }, + + /** + * Computes the style that will be applied to the popper element to gets + * properly positioned. + * + * Note that this modifier will not touch the DOM, it just prepares the styles + * so that `applyStyle` modifier can apply it. This separation is useful + * in case you need to replace `applyStyle` with a custom implementation. + * + * This modifier has `850` as `order` value to maintain backward compatibility + * with previous versions of Popper.js. Expect the modifiers ordering method + * to change in future major versions of the library. + * * @memberof modifiers * @inner */ - hide: { - /** @prop {number} order=800 - Index used to define the order of execution */ - order: 800, + computeStyle: { + /** @prop {number} order=850 - Index used to define the order of execution */ + order: 850, /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ enabled: true, /** @prop {ModifierFn} */ - fn: hide + fn: computeStyle, + /** + * @prop {Boolean} gpuAcceleration=true + * If true, it uses the CSS 3D transformation to position the popper. + * Otherwise, it will use the `top` and `left` properties + */ + gpuAcceleration: true, + /** + * @prop {string} [x='bottom'] + * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin. + * Change this if your popper should grow in a direction different from `bottom` + */ + x: 'bottom', + /** + * @prop {string} [x='left'] + * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin. + * Change this if your popper should grow in a direction different from `right` + */ + y: 'right' }, - /** - * Computes the style that will be applied to the popper element to gets - * properly positioned. - * - * Note that this modifier will not touch the DOM, it just prepares the styles - * so that `applyStyle` modifier can apply it. This separation is useful - * in case you need to replace `applyStyle` with a custom implementation. - * - * This modifier has `850` as `order` value to maintain backward compatibility - * with previous versions of Popper.js. Expect the modifiers ordering method - * to change in future major versions of the library. - * - * @memberof modifiers - * @inner - */ - computeStyle: { - /** @prop {number} order=850 - Index used to define the order of execution */ - order: 850, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: computeStyle, - /** - * @prop {Boolean} gpuAcceleration=true - * If true, it uses the CSS 3D transformation to position the popper. - * Otherwise, it will use the `top` and `left` properties - */ - gpuAcceleration: true, - /** - * @prop {string} [x='bottom'] - * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin. - * Change this if your popper should grow in a direction different from `bottom` - */ - x: 'bottom', - /** - * @prop {string} [x='left'] - * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin. - * Change this if your popper should grow in a direction different from `right` - */ - y: 'right' - }, + /** + * Applies the computed styles to the popper element. + * + * All the DOM manipulations are limited to this modifier. This is useful in case + * you want to integrate Popper.js inside a framework or view library and you + * want to delegate all the DOM manipulations to it. + * + * Note that if you disable this modifier, you must make sure the popper element + * has its position set to `absolute` before Popper.js can do its work! + * + * Just disable this modifier and define your own to achieve the desired effect. + * + * @memberof modifiers + * @inner + */ + applyStyle: { + /** @prop {number} order=900 - Index used to define the order of execution */ + order: 900, + /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ + enabled: true, + /** @prop {ModifierFn} */ + fn: applyStyle, + /** @prop {Function} */ + onLoad: applyStyleOnLoad, + /** + * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier + * @prop {Boolean} gpuAcceleration=true + * If true, it uses the CSS 3D transformation to position the popper. + * Otherwise, it will use the `top` and `left` properties + */ + gpuAcceleration: undefined + } +}; + +/** + * The `dataObject` is an object containing all the information used by Popper.js. + * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks. + * @name dataObject + * @property {Object} data.instance The Popper.js instance + * @property {String} data.placement Placement applied to popper + * @property {String} data.originalPlacement Placement originally defined on init + * @property {Boolean} data.flipped True if popper has been flipped by flip modifier + * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper + * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier + * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`) + * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`) + * @property {Object} data.boundaries Offsets of the popper boundaries + * @property {Object} data.offsets The measurements of popper, reference and arrow elements + * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values + * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values + * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0 + */ + +/** + * Default options provided to Popper.js constructor.
+ * These can be overridden using the `options` argument of Popper.js.
+ * To override an option, simply pass an object with the same + * structure of the `options` object, as the 3rd argument. For example: + * ``` + * new Popper(ref, pop, { + * modifiers: { + * preventOverflow: { enabled: false } + * } + * }) + * ``` + * @type {Object} + * @static + * @memberof Popper + */ +var Defaults = { + /** + * Popper's placement. + * @prop {Popper.placements} placement='bottom' + */ + placement: 'bottom', + + /** + * Set this to true if you want popper to position it self in 'fixed' mode + * @prop {Boolean} positionFixed=false + */ + positionFixed: false, + + /** + * Whether events (resize, scroll) are initially enabled. + * @prop {Boolean} eventsEnabled=true + */ + eventsEnabled: true, + + /** + * Set to true if you want to automatically remove the popper when + * you call the `destroy` method. + * @prop {Boolean} removeOnDestroy=false + */ + removeOnDestroy: false, + + /** + * Callback called when the popper is created.
+ * By default, it is set to no-op.
+ * Access Popper.js instance with `data.instance`. + * @prop {onCreate} + */ + onCreate: function onCreate() {}, + + /** + * Callback called when the popper is updated. This callback is not called + * on the initialization/creation of the popper, but only on subsequent + * updates.
+ * By default, it is set to no-op.
+ * Access Popper.js instance with `data.instance`. + * @prop {onUpdate} + */ + onUpdate: function onUpdate() {}, + + /** + * List of modifiers used to modify the offsets before they are applied to the popper. + * They provide most of the functionalities of Popper.js. + * @prop {modifiers} + */ + modifiers: modifiers +}; + +/** + * @callback onCreate + * @param {dataObject} data + */ + +/** + * @callback onUpdate + * @param {dataObject} data + */ + +// Utils +// Methods +var Popper$1 = function () { + /** + * Creates a new Popper.js instance. + * @class Popper + * @param {Element|referenceObject} reference - The reference element used to position the popper + * @param {Element} popper - The HTML / XML element used as the popper + * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults) + * @return {Object} instance - The generated Popper.js instance + */ + function Popper(reference, popper) { + var _this = this; + + var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; + classCallCheck(this, Popper); + + this.scheduleUpdate = function () { + return requestAnimationFrame(_this.update); + }; + + // make update() debounced, so that it only runs at most once-per-tick + this.update = debounce(this.update.bind(this)); + + // with {} we create a new object with the options inside it + this.options = _extends({}, Popper.Defaults, options); + + // init state + this.state = { + isDestroyed: false, + isCreated: false, + scrollParents: [] + }; + + // get reference and popper elements (allow jQuery wrappers) + this.reference = reference && reference.jquery ? reference[0] : reference; + this.popper = popper && popper.jquery ? popper[0] : popper; + + // Deep merge modifiers options + this.options.modifiers = {}; + Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) { + _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {}); + }); + + // Refactoring modifiers' list (Object => Array) + this.modifiers = Object.keys(this.options.modifiers).map(function (name) { + return _extends({ + name: name + }, _this.options.modifiers[name]); + }) + // sort the modifiers by order + .sort(function (a, b) { + return a.order - b.order; + }); + + // modifiers have the ability to execute arbitrary code when Popper.js get inited + // such code is executed in the same order of its modifier + // they could add new properties to their options configuration + // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`! + this.modifiers.forEach(function (modifierOptions) { + if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) { + modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state); + } + }); + + // fire the first update to position the popper in the right place + this.update(); + + var eventsEnabled = this.options.eventsEnabled; + if (eventsEnabled) { + // setup event listeners, they will take care of update the position in specific situations + this.enableEventListeners(); + } + + this.state.eventsEnabled = eventsEnabled; + } + + // We can't use class properties because they don't get listed in the + // class prototype and break stuff like Sinon stubs + + + createClass(Popper, [{ + key: 'update', + value: function update$$1() { + return update.call(this); + } + }, { + key: 'destroy', + value: function destroy$$1() { + return destroy.call(this); + } + }, { + key: 'enableEventListeners', + value: function enableEventListeners$$1() { + return enableEventListeners.call(this); + } + }, { + key: 'disableEventListeners', + value: function disableEventListeners$$1() { + return disableEventListeners.call(this); + } + + /** + * Schedules an update. It will run on the next UI update available. + * @method scheduleUpdate + * @memberof Popper + */ + + + /** + * Collection of utilities useful when writing custom modifiers. + * Starting from version 1.7, this method is available only if you + * include `popper-utils.js` before `popper.js`. + * + * **DEPRECATION**: This way to access PopperUtils is deprecated + * and will be removed in v2! Use the PopperUtils module directly instead. + * Due to the high instability of the methods contained in Utils, we can't + * guarantee them to follow semver. Use them at your own risk! + * @static + * @private + * @type {Object} + * @deprecated since version 1.8 + * @member Utils + * @memberof Popper + */ + + }]); + return Popper; +}(); + +/** + * The `referenceObject` is an object that provides an interface compatible with Popper.js + * and lets you use it as replacement of a real DOM node.
+ * You can use this method to position a popper relatively to a set of coordinates + * in case you don't have a DOM node to use as reference. + * + * ``` + * new Popper(referenceObject, popperNode); + * ``` + * + * NB: This feature isn't supported in Internet Explorer 10. + * @name referenceObject + * @property {Function} data.getBoundingClientRect + * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method. + * @property {number} data.clientWidth + * An ES6 getter that will return the width of the virtual reference element. + * @property {number} data.clientHeight + * An ES6 getter that will return the height of the virtual reference element. + */ + + +Popper$1.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils; +Popper$1.placements = placements; +Popper$1.Defaults = Defaults; + +var PopperJS = Popper$1; + +/** @license React v16.13.1 + * react-is.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ +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? +Symbol.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; +function 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}var AsyncMode=l;var ConcurrentMode=m;var ContextConsumer=k;var ContextProvider=h;var Element=c;var ForwardRef=n;var Fragment=e;var Lazy=t;var Memo=r;var Portal=d; +var Profiler=g;var StrictMode=f;var Suspense=p;var isAsyncMode=function(a){return A(a)||z(a)===l};var isConcurrentMode=A;var isContextConsumer=function(a){return z(a)===k};var isContextProvider=function(a){return z(a)===h};var isElement=function(a){return "object"===typeof a&&null!==a&&a.$$typeof===c};var isForwardRef=function(a){return z(a)===n};var isFragment=function(a){return z(a)===e};var isLazy=function(a){return z(a)===t}; +var isMemo=function(a){return z(a)===r};var isPortal=function(a){return z(a)===d};var isProfiler=function(a){return z(a)===g};var isStrictMode=function(a){return z(a)===f};var isSuspense=function(a){return z(a)===p}; +var 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)};var typeOf=z; + +var reactIs_production_min = { + AsyncMode: AsyncMode, + ConcurrentMode: ConcurrentMode, + ContextConsumer: ContextConsumer, + ContextProvider: ContextProvider, + Element: Element, + ForwardRef: ForwardRef, + Fragment: Fragment, + Lazy: Lazy, + Memo: Memo, + Portal: Portal, + Profiler: Profiler, + StrictMode: StrictMode, + Suspense: Suspense, + isAsyncMode: isAsyncMode, + isConcurrentMode: isConcurrentMode, + isContextConsumer: isContextConsumer, + isContextProvider: isContextProvider, + isElement: isElement, + isForwardRef: isForwardRef, + isFragment: isFragment, + isLazy: isLazy, + isMemo: isMemo, + isPortal: isPortal, + isProfiler: isProfiler, + isStrictMode: isStrictMode, + isSuspense: isSuspense, + isValidElementType: isValidElementType, + typeOf: typeOf +}; + +var reactIs_development = createCommonjsModule(function (module, exports) { +}); +reactIs_development.AsyncMode; +reactIs_development.ConcurrentMode; +reactIs_development.ContextConsumer; +reactIs_development.ContextProvider; +reactIs_development.Element; +reactIs_development.ForwardRef; +reactIs_development.Fragment; +reactIs_development.Lazy; +reactIs_development.Memo; +reactIs_development.Portal; +reactIs_development.Profiler; +reactIs_development.StrictMode; +reactIs_development.Suspense; +reactIs_development.isAsyncMode; +reactIs_development.isConcurrentMode; +reactIs_development.isContextConsumer; +reactIs_development.isContextProvider; +reactIs_development.isElement; +reactIs_development.isForwardRef; +reactIs_development.isFragment; +reactIs_development.isLazy; +reactIs_development.isMemo; +reactIs_development.isPortal; +reactIs_development.isProfiler; +reactIs_development.isStrictMode; +reactIs_development.isSuspense; +reactIs_development.isValidElementType; +reactIs_development.typeOf; + +createCommonjsModule(function (module) { + +{ + module.exports = reactIs_production_min; +} +}); + +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/ +/* eslint-disable no-unused-vars */ +var getOwnPropertySymbols = Object.getOwnPropertySymbols; +var hasOwnProperty = Object.prototype.hasOwnProperty; +var propIsEnumerable = Object.prototype.propertyIsEnumerable; + +function toObject(val) { + if (val === null || val === undefined) { + throw new TypeError('Object.assign cannot be called with null or undefined'); + } + + return Object(val); +} + +function shouldUseNative() { + try { + if (!Object.assign) { + return false; + } + + // Detect buggy property enumeration order in older V8 versions. + + // https://bugs.chromium.org/p/v8/issues/detail?id=4118 + var test1 = new String('abc'); // eslint-disable-line no-new-wrappers + test1[5] = 'de'; + if (Object.getOwnPropertyNames(test1)[0] === '5') { + return false; + } + + // https://bugs.chromium.org/p/v8/issues/detail?id=3056 + var test2 = {}; + for (var i = 0; i < 10; i++) { + test2['_' + String.fromCharCode(i)] = i; + } + var order2 = Object.getOwnPropertyNames(test2).map(function (n) { + return test2[n]; + }); + if (order2.join('') !== '0123456789') { + return false; + } + + // https://bugs.chromium.org/p/v8/issues/detail?id=3056 + var test3 = {}; + 'abcdefghijklmnopqrst'.split('').forEach(function (letter) { + test3[letter] = letter; + }); + if (Object.keys(Object.assign({}, test3)).join('') !== + 'abcdefghijklmnopqrst') { + return false; + } + + return true; + } catch (err) { + // We don't expect any of the above to throw, but better to be safe. + return false; + } +} + +shouldUseNative() ? Object.assign : function (target, source) { + var from; + var to = toObject(target); + var symbols; + + for (var s = 1; s < arguments.length; s++) { + from = Object(arguments[s]); + + for (var key in from) { + if (hasOwnProperty.call(from, key)) { + to[key] = from[key]; + } + } + + if (getOwnPropertySymbols) { + symbols = getOwnPropertySymbols(from); + for (var i = 0; i < symbols.length; i++) { + if (propIsEnumerable.call(from, symbols[i])) { + to[symbols[i]] = from[symbols[i]]; + } + } + } + } + + return to; +}; + +/** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; + +var ReactPropTypesSecret_1 = ReactPropTypesSecret; + +Function.call.bind(Object.prototype.hasOwnProperty); + +function emptyFunction() {} +function emptyFunctionWithReset() {} +emptyFunctionWithReset.resetWarningCache = emptyFunction; + +var factoryWithThrowingShims = function() { + function shim(props, propName, componentName, location, propFullName, secret) { + if (secret === ReactPropTypesSecret_1) { + // It is still safe when called from React. + return; + } + var err = new Error( + 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' + + 'Use PropTypes.checkPropTypes() to call them. ' + + 'Read more at http://fb.me/use-check-prop-types' + ); + err.name = 'Invariant Violation'; + throw err; + } shim.isRequired = shim; + function getShim() { + return shim; + } // Important! + // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`. + var ReactPropTypes = { + array: shim, + bool: shim, + func: shim, + number: shim, + object: shim, + string: shim, + symbol: shim, + + any: shim, + arrayOf: getShim, + element: shim, + elementType: shim, + instanceOf: getShim, + node: shim, + objectOf: getShim, + oneOf: getShim, + oneOfType: getShim, + shape: getShim, + exact: getShim, + + checkPropTypes: emptyFunctionWithReset, + resetWarningCache: emptyFunction + }; + + ReactPropTypes.PropTypes = ReactPropTypes; + + return ReactPropTypes; +}; + +var propTypes = createCommonjsModule(function (module) { +/** + * Copyright (c) 2013-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +{ + // By explicitly using `prop-types` you are opting into new production behavior. + // http://fb.me/prop-types-in-prod + module.exports = factoryWithThrowingShims(); +} +}); + +var key = '__global_unique_id__'; + +var gud = function() { + return commonjsGlobal[key] = (commonjsGlobal[key] || 0) + 1; +}; + +/** + * Copyright (c) 2014-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +var warning = function() {}; + +var warning_1 = warning; + +var implementation = createCommonjsModule(function (module, exports) { + +exports.__esModule = true; + + + +_interopRequireDefault(React__default); + + + +var _propTypes2 = _interopRequireDefault(propTypes); + + + +var _gud2 = _interopRequireDefault(gud); + + + +_interopRequireDefault(warning_1); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } + +var MAX_SIGNED_31_BIT_INT = 1073741823; + +// Inlined Object.is polyfill. +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is +function objectIs(x, y) { + if (x === y) { + return x !== 0 || 1 / x === 1 / y; + } else { + return x !== x && y !== y; + } +} + +function createEventEmitter(value) { + var handlers = []; + return { + on: function on(handler) { + handlers.push(handler); + }, + off: function off(handler) { + handlers = handlers.filter(function (h) { + return h !== handler; + }); + }, + get: function get() { + return value; + }, + set: function set(newValue, changedBits) { + value = newValue; + handlers.forEach(function (handler) { + return handler(value, changedBits); + }); + } + }; +} + +function onlyChild(children) { + return Array.isArray(children) ? children[0] : children; +} + +function createReactContext(defaultValue, calculateChangedBits) { + var _Provider$childContex, _Consumer$contextType; + + var contextProp = '__create-react-context-' + (0, _gud2.default)() + '__'; + + var Provider = function (_Component) { + _inherits(Provider, _Component); + + function Provider() { + var _temp, _this, _ret; + + _classCallCheck(this, Provider); + + for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + return _ret = (_temp = (_this = _possibleConstructorReturn(this, _Component.call.apply(_Component, [this].concat(args))), _this), _this.emitter = createEventEmitter(_this.props.value), _temp), _possibleConstructorReturn(_this, _ret); + } + + Provider.prototype.getChildContext = function getChildContext() { + var _ref; + + return _ref = {}, _ref[contextProp] = this.emitter, _ref; + }; + + Provider.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { + if (this.props.value !== nextProps.value) { + var oldValue = this.props.value; + var newValue = nextProps.value; + var changedBits = void 0; + + if (objectIs(oldValue, newValue)) { + changedBits = 0; // No change + } else { + changedBits = typeof calculateChangedBits === 'function' ? calculateChangedBits(oldValue, newValue) : MAX_SIGNED_31_BIT_INT; + + changedBits |= 0; + + if (changedBits !== 0) { + this.emitter.set(nextProps.value, changedBits); + } + } + } + }; + + Provider.prototype.render = function render() { + return this.props.children; + }; + + return Provider; + }(React__default.Component); + + Provider.childContextTypes = (_Provider$childContex = {}, _Provider$childContex[contextProp] = _propTypes2.default.object.isRequired, _Provider$childContex); + + var Consumer = function (_Component2) { + _inherits(Consumer, _Component2); + + function Consumer() { + var _temp2, _this2, _ret2; + + _classCallCheck(this, Consumer); + + for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { + args[_key2] = arguments[_key2]; + } + + return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, _Component2.call.apply(_Component2, [this].concat(args))), _this2), _this2.state = { + value: _this2.getValue() + }, _this2.onUpdate = function (newValue, changedBits) { + var observedBits = _this2.observedBits | 0; + if ((observedBits & changedBits) !== 0) { + _this2.setState({ value: _this2.getValue() }); + } + }, _temp2), _possibleConstructorReturn(_this2, _ret2); + } + + Consumer.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { + var observedBits = nextProps.observedBits; + + this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default + : observedBits; + }; + + Consumer.prototype.componentDidMount = function componentDidMount() { + if (this.context[contextProp]) { + this.context[contextProp].on(this.onUpdate); + } + var observedBits = this.props.observedBits; + + this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default + : observedBits; + }; + + Consumer.prototype.componentWillUnmount = function componentWillUnmount() { + if (this.context[contextProp]) { + this.context[contextProp].off(this.onUpdate); + } + }; + + Consumer.prototype.getValue = function getValue() { + if (this.context[contextProp]) { + return this.context[contextProp].get(); + } else { + return defaultValue; + } + }; + + Consumer.prototype.render = function render() { + return onlyChild(this.props.children)(this.state.value); + }; + + return Consumer; + }(React__default.Component); + + Consumer.contextTypes = (_Consumer$contextType = {}, _Consumer$contextType[contextProp] = _propTypes2.default.object, _Consumer$contextType); + + + return { + Provider: Provider, + Consumer: Consumer + }; +} + +exports.default = createReactContext; +module.exports = exports['default']; +}); + +unwrapExports(implementation); + +var lib = createCommonjsModule(function (module, exports) { + +exports.__esModule = true; + + + +var _react2 = _interopRequireDefault(React__default); + + + +var _implementation2 = _interopRequireDefault(implementation); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +exports.default = _react2.default.createContext || _implementation2.default; +module.exports = exports['default']; +}); + +var createContext = unwrapExports(lib); + +var ManagerReferenceNodeContext = createContext(); +var ManagerReferenceNodeSetterContext = createContext(); + +var Manager = +/*#__PURE__*/ +function (_React$Component) { + _inheritsLoose(Manager, _React$Component); + + function Manager() { + var _this; + + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this; + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "referenceNode", void 0); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "setReferenceNode", function (newReferenceNode) { + if (newReferenceNode && _this.referenceNode !== newReferenceNode) { + _this.referenceNode = newReferenceNode; + + _this.forceUpdate(); + } + }); + + return _this; + } + + var _proto = Manager.prototype; + + _proto.componentWillUnmount = function componentWillUnmount() { + this.referenceNode = null; + }; + + _proto.render = function render() { + return React.createElement(ManagerReferenceNodeContext.Provider, { + value: this.referenceNode + }, React.createElement(ManagerReferenceNodeSetterContext.Provider, { + value: this.setReferenceNode + }, this.props.children)); + }; + + return Manager; +}(React.Component); + +/** + * Takes an argument and if it's an array, returns the first item in the array, + * otherwise returns the argument. Used for Preact compatibility. + */ +var unwrapArray = function unwrapArray(arg) { + return Array.isArray(arg) ? arg[0] : arg; +}; +/** + * Takes a maybe-undefined function and arbitrary args and invokes the function + * only if it is defined. + */ + +var safeInvoke = function safeInvoke(fn) { + if (typeof fn === "function") { + for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } + + return fn.apply(void 0, args); + } +}; +/** + * Sets a ref using either a ref callback or a ref object + */ + +var setRef = function setRef(ref, node) { + // if its a function call it + if (typeof ref === "function") { + return safeInvoke(ref, node); + } // otherwise we should treat it as a ref object + else if (ref != null) { + ref.current = node; + } +}; + +var initialStyle = { + position: 'absolute', + top: 0, + left: 0, + opacity: 0, + pointerEvents: 'none' +}; +var initialArrowStyle = {}; +var InnerPopper = +/*#__PURE__*/ +function (_React$Component) { + _inheritsLoose(InnerPopper, _React$Component); + + function InnerPopper() { + var _this; + + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this; + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "state", { + data: undefined, + placement: undefined + }); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "popperInstance", void 0); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "popperNode", null); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "arrowNode", null); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "setPopperNode", function (popperNode) { + if (!popperNode || _this.popperNode === popperNode) return; + setRef(_this.props.innerRef, popperNode); + _this.popperNode = popperNode; + + _this.updatePopperInstance(); + }); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "setArrowNode", function (arrowNode) { + _this.arrowNode = arrowNode; + }); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "updateStateModifier", { + enabled: true, + order: 900, + fn: function fn(data) { + var placement = data.placement; + + _this.setState({ + data: data, + placement: placement + }); + + return data; + } + }); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "getOptions", function () { + return { + placement: _this.props.placement, + eventsEnabled: _this.props.eventsEnabled, + positionFixed: _this.props.positionFixed, + modifiers: _extends$1({}, _this.props.modifiers, { + arrow: _extends$1({}, _this.props.modifiers && _this.props.modifiers.arrow, { + enabled: !!_this.arrowNode, + element: _this.arrowNode + }), + applyStyle: { + enabled: false + }, + updateStateModifier: _this.updateStateModifier + }) + }; + }); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "getPopperStyle", function () { + return !_this.popperNode || !_this.state.data ? initialStyle : _extends$1({ + position: _this.state.data.offsets.popper.position + }, _this.state.data.styles); + }); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "getPopperPlacement", function () { + return !_this.state.data ? undefined : _this.state.placement; + }); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "getArrowStyle", function () { + return !_this.arrowNode || !_this.state.data ? initialArrowStyle : _this.state.data.arrowStyles; + }); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "getOutOfBoundariesState", function () { + return _this.state.data ? _this.state.data.hide : undefined; + }); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "destroyPopperInstance", function () { + if (!_this.popperInstance) return; + + _this.popperInstance.destroy(); + + _this.popperInstance = null; + }); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "updatePopperInstance", function () { + _this.destroyPopperInstance(); + + var _assertThisInitialize = _assertThisInitialized(_assertThisInitialized(_this)), + popperNode = _assertThisInitialize.popperNode; + + var referenceElement = _this.props.referenceElement; + if (!referenceElement || !popperNode) return; + _this.popperInstance = new PopperJS(referenceElement, popperNode, _this.getOptions()); + }); + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "scheduleUpdate", function () { + if (_this.popperInstance) { + _this.popperInstance.scheduleUpdate(); + } + }); + + return _this; + } + + var _proto = InnerPopper.prototype; + + _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) { + // If the Popper.js options have changed, update the instance (destroy + create) + if (this.props.placement !== prevProps.placement || this.props.referenceElement !== prevProps.referenceElement || this.props.positionFixed !== prevProps.positionFixed || !deepEqual_1(this.props.modifiers, prevProps.modifiers, { + strict: true + })) { + + this.updatePopperInstance(); + } else if (this.props.eventsEnabled !== prevProps.eventsEnabled && this.popperInstance) { + this.props.eventsEnabled ? this.popperInstance.enableEventListeners() : this.popperInstance.disableEventListeners(); + } // A placement difference in state means popper determined a new placement + // apart from the props value. By the time the popper element is rendered with + // the new position Popper has already measured it, if the place change triggers + // a size change it will result in a misaligned popper. So we schedule an update to be sure. + + + if (prevState.placement !== this.state.placement) { + this.scheduleUpdate(); + } + }; + + _proto.componentWillUnmount = function componentWillUnmount() { + setRef(this.props.innerRef, null); + this.destroyPopperInstance(); + }; + + _proto.render = function render() { + return unwrapArray(this.props.children)({ + ref: this.setPopperNode, + style: this.getPopperStyle(), + placement: this.getPopperPlacement(), + outOfBoundaries: this.getOutOfBoundariesState(), + scheduleUpdate: this.scheduleUpdate, + arrowProps: { + ref: this.setArrowNode, + style: this.getArrowStyle() + } + }); + }; + + return InnerPopper; +}(React.Component); + +_defineProperty(InnerPopper, "defaultProps", { + placement: 'bottom', + eventsEnabled: true, + referenceElement: undefined, + positionFixed: false +}); + +PopperJS.placements; +function Popper(_ref) { + var referenceElement = _ref.referenceElement, + props = _objectWithoutPropertiesLoose(_ref, ["referenceElement"]); + + return React.createElement(ManagerReferenceNodeContext.Consumer, null, function (referenceNode) { + return React.createElement(InnerPopper, _extends$1({ + referenceElement: referenceElement !== undefined ? referenceElement : referenceNode + }, props)); + }); +} + +var InnerReference = +/*#__PURE__*/ +function (_React$Component) { + _inheritsLoose(InnerReference, _React$Component); + + function InnerReference() { + var _this; + + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this; + + _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "refHandler", function (node) { + setRef(_this.props.innerRef, node); + safeInvoke(_this.props.setReferenceNode, node); + }); + + return _this; + } + + var _proto = InnerReference.prototype; + + _proto.componentWillUnmount = function componentWillUnmount() { + setRef(this.props.innerRef, null); + }; + + _proto.render = function render() { + warning_1(Boolean(this.props.setReferenceNode)); + return unwrapArray(this.props.children)({ + ref: this.refHandler + }); + }; + + return InnerReference; +}(React.Component); + +function Reference(props) { + return React.createElement(ManagerReferenceNodeSetterContext.Consumer, null, function (setReferenceNode) { + return React.createElement(InnerReference, _extends$1({ + setReferenceNode: setReferenceNode + }, props)); + }); +} + +var PopperWrapper = /*#__PURE__*/function (_React$Component) { + _inherits(PopperWrapper, _React$Component); + + var _super = _createSuper(PopperWrapper); + + function PopperWrapper(props) { + var _this; + + _classCallCheck(this, PopperWrapper); + + _this = _super.call(this, props); + + _defineProperty$1(_assertThisInitialized$1(_this), "triggerRef", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "popupRef", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "hoverableDelay", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "_timer", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "_throttleWait", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "offsetMapping", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "togglePopper", function (type, newValue) { + var _this$props = _this.props, + open = _this$props.open, + onToggle = _this$props.onToggle; + onToggle(newValue === undefined ? !open : newValue, type); + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "doesEventContainsElement", function (event, ref) { + var el = ref.current; + return el && el.contains(event.target); + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "getUpdatedStyle", function (oldStyle, placement, offset) { + var style = _this.props.style; + + var newStyle = _objectSpread2(_objectSpread2({}, style), oldStyle); + + var position = placement ? placement.split('-')[0] : placement; + + switch (position) { + case 'top': + newStyle.marginBottom = _this.offsetMapping[offset]; + break; + + case 'bottom': + newStyle.marginTop = _this.offsetMapping[offset]; + break; + + case 'left': + newStyle.marginRight = _this.offsetMapping[offset]; + break; + + case 'right': + newStyle.marginLeft = _this.offsetMapping[offset]; + break; + } + + if (_this.props.triggerCoordinates) { + newStyle.position = 'absolute'; + newStyle.transform = "translate(".concat(_this.props.triggerCoordinates.x, "px, ").concat(_this.props.triggerCoordinates.y, "px)"); + } + + return newStyle; + }); + + _this.state = { + animationKeyframe: '', + isOpen: _this.props.open || false, + uniqueKey: '' + }; + _this.hoverableDelay = 100; + _this.offsetMapping = { + small: '2px', + medium: '4px', + large: '8px' + }; + _this.triggerRef = /*#__PURE__*/React.createRef(); + _this.popupRef = /*#__PURE__*/React.createRef(); + _this.getPopperChildren = _this.getPopperChildren.bind(_assertThisInitialized$1(_this)); + _this.mouseMoveHandler = _this.mouseMoveHandler.bind(_assertThisInitialized$1(_this)); + _this.handleMouseEnter = _this.handleMouseEnter.bind(_assertThisInitialized$1(_this)); + _this.handleMouseLeave = _this.handleMouseLeave.bind(_assertThisInitialized$1(_this)); + _this.boundaryScrollHandler = _this.boundaryScrollHandler.bind(_assertThisInitialized$1(_this)); + return _this; + } + + _createClass(PopperWrapper, [{ + key: "componentDidMount", + value: function componentDidMount() { + this.addBoundaryScrollHandler(); + var triggerElement = this.triggerRef.current; + var zIndex = this.getZIndexForLayer(triggerElement); + this.setState({ + zIndex: zIndex === undefined ? zIndex : zIndex + 1 + }); + } + }, { + key: "componentDidUpdate", + value: function componentDidUpdate(prevProps) { + if (!prevProps.boundaryElement && this.props.boundaryElement) { + this.removeBoundaryScrollHandler(); + this.addBoundaryScrollHandler(); + } + + if (prevProps.open !== this.props.open) { + this._throttleWait = false; + this.setState({ + animationKeyframe: '' + }); + + if (this.props.open) { + var triggerElement = this.triggerRef.current; + var zIndex = this.getZIndexForLayer(triggerElement); + this.setState({ + zIndex: zIndex === undefined ? zIndex : zIndex + 1, + isOpen: true + }); + } else if (!this.props.open && this.props.animationClass) { + this.setState({ + isOpen: false + }); + } + } + } + }, { + key: "componentWillUnmount", + value: function componentWillUnmount() { + this.removeBoundaryScrollHandler(); + } + }, { + key: "boundaryScrollHandler", + value: function boundaryScrollHandler() { + var _this$props2 = this.props, + open = _this$props2.open, + on = _this$props2.on, + closeOnScroll = _this$props2.closeOnScroll; + + if (on === 'click' && closeOnScroll) { + if (open) { + if (!this._throttleWait) { + this.togglePopper('onScroll', false); + this._throttleWait = true; + } + } + } + } + }, { + key: "addBoundaryScrollHandler", + value: function addBoundaryScrollHandler() { + if (this.props.boundaryElement && this.props.boundaryElement.addEventListener) { + this.props.boundaryElement.addEventListener('scroll', this.boundaryScrollHandler); + } + } + }, { + key: "removeBoundaryScrollHandler", + value: function removeBoundaryScrollHandler() { + if (this.props.boundaryElement && this.props.boundaryElement.removeEventListener) { + this.props.boundaryElement.removeEventListener('scroll', this.boundaryScrollHandler); + } + } + }, { + key: "mouseMoveHandler", + value: function mouseMoveHandler() { + var _this2 = this; + + if (this._timer) clearTimeout(this._timer); + this._timer = window.setTimeout(function () { + var onToggle = _this2.props.onToggle; + onToggle(false, 'mouseLeave'); + }, this.hoverableDelay); + } + }, { + key: "handleMouseEnter", + value: function handleMouseEnter() { + var on = this.props.on; + + if (on === 'hover') { + if (this._timer) clearTimeout(this._timer); + var onToggle = this.props.onToggle; + onToggle(true, 'mouseEnter'); + this.setState(function () { + return { + isOpen: true + }; + }); + } + } + }, { + key: "handleMouseLeave", + value: function handleMouseLeave() { + var on = this.props.on; + + if (on === 'hover') { + var _this$props3 = this.props, + hoverable = _this$props3.hoverable, + onToggle = _this$props3.onToggle; + + if (hoverable) { + this.mouseMoveHandler(); + } else { + onToggle(false, 'mouseLeave'); + this.setState({ + isOpen: false + }); + } + } + } + }, { + key: "getZIndexForLayer", + value: function getZIndexForLayer(node) { + if (node === null) { + return; + } + + var layerNode = node.closest('[data-layer]') || document.body; + var zIndex = layerNode === document.body ? 'auto' : parseInt(window.getComputedStyle(layerNode).zIndex || '0', 10); + return zIndex === 'auto' || isNaN(zIndex) ? 500 : zIndex; + } + }, { + key: "getTriggerElement", + value: function getTriggerElement(ref) { + var _this3 = this; + + var _this$props4 = this.props, + trigger = _this$props4.trigger, + on = _this$props4.on, + triggerClass = _this$props4.triggerClass; + var options = on === 'hover' ? { + ref: ref, + onMouseEnter: this.handleMouseEnter, + onMouseLeave: this.handleMouseLeave + } : { + ref: ref, + onClick: function onClick(ev) { + ev.stopPropagation(); + + _this3.togglePopper('onClick'); + } + }; + var classes = classnames('PopperWrapper-trigger', triggerClass); + + var shouldPopoverClose = function shouldPopoverClose(clicked) { + var popover = _this3.popupRef.current; + var container = document.body; + var popoverIndex = parseInt(window.getComputedStyle(popover).zIndex); + var clickInsideLayer = false; + var shouldClose = false; + var openedLayers = container.querySelectorAll('[data-opened="true"]'); + openedLayers.forEach(function (layer) { + if (layer.contains(clicked)) { + clickInsideLayer = true; + var clickedIndex = parseInt(window.getComputedStyle(layer).zIndex); + + if (popoverIndex > clickedIndex) { + shouldClose = true; + return; + } + } + }); + + if (container.isEqualNode(clicked) || shouldClose || !container.contains(clicked) || !clickInsideLayer) { + return true; + } + + return false; + }; + + var onOutsideClickHandler = function onOutsideClickHandler(event) { + var _this3$props = _this3.props, + open = _this3$props.open, + closeOnBackdropClick = _this3$props.closeOnBackdropClick; + + if (open && shouldPopoverClose(event.target) && closeOnBackdropClick) { + if (!_this3.doesEventContainsElement(event, _this3.popupRef)) { + _this3.togglePopper('outsideClick'); + } + } + }; + + return /*#__PURE__*/React.createElement(OutsideClick, _extends$2({ + className: classes, + onOutsideClick: onOutsideClickHandler + }, options), trigger); + } + }, { + key: "getPopperChildren", + value: function getPopperChildren(_ref) { + var _this4 = this; + + var ref = _ref.ref, + style = _ref.style, + placement = _ref.placement, + outOfBoundaries = _ref.outOfBoundaries; + var _this$props5 = this.props, + offset = _this$props5.offset, + children = _this$props5.children, + open = _this$props5.open, + animationClass = _this$props5.animationClass; + var _this$state = this.state, + zIndex = _this$state.zIndex, + animationKeyframe = _this$state.animationKeyframe, + uniqueKey = _this$state.uniqueKey; + var newStyle = offset ? this.getUpdatedStyle(style, placement, offset) : style; + + var childrenStyles = _objectSpread2(_objectSpread2({}, newStyle), {}, { + zIndex: zIndex + }); + + var classes = ''; + + if (!animationClass) { + var _this$popupRef$curren, _this$popupRef$curren2; + + var maxHeight = (_this$popupRef$curren = this.popupRef.current) === null || _this$popupRef$curren === void 0 ? void 0 : _this$popupRef$curren.offsetHeight; // we need to check for transformStyles so that we open the popover at correct position (left/right) + + var transformStyles = (_this$popupRef$curren2 = this.popupRef.current) === null || _this$popupRef$curren2 === void 0 ? void 0 : _this$popupRef$curren2.style.getPropertyValue('transform'); + + if (transformStyles && maxHeight && placement && !animationKeyframe) { + var _uniqueKey = Math.random().toString(36).substring(2, 6); + + var isTop = placement.includes('top'); + var popperAnimation = "\n @keyframes popper-open-".concat(_uniqueKey, " {\n from { \n max-height: 0;\n ").concat(isTop ? "margin-top: ".concat(maxHeight, "px") : '', ";\n }\n to {\n max-height: ").concat(maxHeight, "px;\n ").concat(isTop ? "margin-top: 0px" : '', ";\n }\n }\n @keyframes popper-close-").concat(_uniqueKey, " {\n from {\n max-height: ").concat(maxHeight, "px;\n ").concat(isTop ? "margin-top: 0px" : '', ";\n }\n to {\n max-height: 0;\n ").concat(isTop ? "margin-top: ".concat(maxHeight, "px") : '', ";\n }\n }\n "); + this.setState({ + animationKeyframe: popperAnimation, + uniqueKey: _uniqueKey + }); + } // defining popper-fade-in custom keyframe as it is specific to popover usecase. + + + var popperAnimationStyles = { + animation: open ? "popper-open-".concat(uniqueKey, " 120ms cubic-bezier(0, 0, 0.38, 0.9), popper-fade-in 120ms") : "popper-close-".concat(uniqueKey, " 120ms cubic-bezier(0.2, 0, 1, 0.9), fadeOut 100ms") + }; + childrenStyles = _objectSpread2(_objectSpread2(_objectSpread2({}, childrenStyles), popperAnimationStyles), {}, { + overflow: 'hidden' + }); + } else { + var _classNames; + + classes = classnames((_classNames = {}, _defineProperty$1(_classNames, "".concat(animationClass.open), this.state.isOpen), _defineProperty$1(_classNames, "".concat(animationClass.close), !this.state.isOpen), _classNames), children.props.className); + } + + var childProps = { + ref: ref, + style: childrenStyles, + 'data-placement': placement, + 'data-hide': outOfBoundaries, + onMouseEnter: this.handleMouseEnter, + onMouseLeave: this.handleMouseLeave, + onAnimationEnd: function onAnimationEnd() { + if (!open) { + _this4.setState({ + isOpen: false + }); + } + } + }; + var element = /*#__PURE__*/React.cloneElement(children, animationClass ? _objectSpread2(_objectSpread2({}, childProps), {}, { + className: classes + }) : _objectSpread2({}, childProps)); + return element; + } + }, { + key: "render", + value: function render() { + var _this5 = this; + + var _this$props6 = this.props, + placement = _this$props6.placement, + appendToBody = _this$props6.appendToBody, + hide = _this$props6.hide, + boundaryElement = _this$props6.boundaryElement, + triggerCoordinates = _this$props6.triggerCoordinates; + var _this$state2 = this.state, + animationKeyframe = _this$state2.animationKeyframe, + isOpen = _this$state2.isOpen; + var coordinatesPopper = /*#__PURE__*/React.createElement(Popper, { + placement: placement, + innerRef: this.popupRef, + modifiers: _objectSpread2({ + preventOverflow: { + boundariesElement: boundaryElement || document.body + }, + hide: { + enabled: hide + } + }, triggerCoordinates && { + offset: { + offset: "".concat(triggerCoordinates.x, "px, ").concat(triggerCoordinates.y, "px") + } + }) + }, this.getPopperChildren); + return /*#__PURE__*/React.createElement(Manager, null, /*#__PURE__*/React.createElement("style", null, animationKeyframe), /*#__PURE__*/React.createElement(Reference, { + innerRef: this.triggerRef + }, function (_ref2) { + var ref = _ref2.ref; + return _this5.getTriggerElement(ref); + }), isOpen && appendToBody && !triggerCoordinates && /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/React.createElement(Popper, { + placement: placement, + innerRef: this.popupRef, + modifiers: { + preventOverflow: { + boundariesElement: boundaryElement || document.body + }, + hide: { + enabled: hide + } + } + }, this.getPopperChildren), document.body), isOpen && appendToBody && triggerCoordinates && /*#__PURE__*/ReactDOM.createPortal(coordinatesPopper, document.body), isOpen && !appendToBody && !triggerCoordinates && /*#__PURE__*/React.createElement(Popper, { + placement: placement, + innerRef: this.popupRef + }, this.getPopperChildren)); + } + }]); + + return PopperWrapper; +}(React.Component); + +_defineProperty$1(PopperWrapper, "defaultProps", { + on: 'click', + offset: 'medium', + closeOnBackdropClick: true, + hoverable: true, + appendToBody: true, + style: {} +}); + +var _excluded$x = ["position", "customStyle", "dark", "children", "onToggle", "className", "hideOnReferenceEscape", "boundaryElement", "name"]; +var propsList = ['appendToBody', 'trigger', 'hoverable', 'on', 'open', 'closeOnBackdropClick', 'offset', 'closeOnScroll']; +var Popover = function Popover(props) { + var position = props.position, + customStyle = props.customStyle, + dark = props.dark, + children = props.children, + onToggle = props.onToggle, + className = props.className, + hideOnReferenceEscape = props.hideOnReferenceEscape, + _props$boundaryElemen = props.boundaryElement, + boundaryElement = _props$boundaryElemen === void 0 ? document.body : _props$boundaryElemen, + name = props.name, + rest = _objectWithoutProperties(props, _excluded$x); + + var _React$useState = React.useState(!!props.open), + _React$useState2 = _slicedToArray(_React$useState, 2), + open = _React$useState2[0], + setOpen = _React$useState2[1]; + + var _React$useState3 = React.useState(false), + _React$useState4 = _slicedToArray(_React$useState3, 2), + init = _React$useState4[0], + setInit = _React$useState4[1]; + + React.useEffect(function () { + if (props.open !== undefined) setOpen(props.open); + }, [props.open]); + var defaultOnToggle = React.useCallback(function (newOpen) { + setOpen(newOpen); + }, []); + React.useEffect(function () { + if (!init) { + if ('current' in boundaryElement && boundaryElement.current) { + setInit(true); + } + } + }, [boundaryElement]); + var classes = classnames(_defineProperty$1({ + Popover: true + }, 'Popover--dark', dark), className); + var PopoverWrapper = /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-Popover", + className: classes, + "data-layer": true, + "data-opened": open, + "data-name": name + }, children); + return /*#__PURE__*/React.createElement(PopperWrapper, _extends$2({}, rest, { + init: init, + boundaryElement: 'current' in boundaryElement ? boundaryElement.current : boundaryElement, + open: open, + hide: hideOnReferenceEscape, + style: customStyle, + onToggle: onToggle || defaultOnToggle, + placement: position + }), PopoverWrapper); +}; +Popover.displayName = 'Popover'; +Popover.defaultProps = Object.assign({}, filterProps(PopperWrapper.defaultProps, propsList, true), { + offset: 'large', + position: 'bottom', + hideOnReferenceEscape: true, + customStyle: {} +}); + +var _excluded$w = ["type", "onClick"]; +var keyCodes$1 = { + BACKSPACE: 'Backspace', + DELETE: 'Delete', + ENTER: 'Enter' +}; +var ChipInput = function ChipInput(props) { + var _classNames, _classNames2; + + var chipOptions = props.chipOptions, + allowDuplicates = props.allowDuplicates, + disabled = props.disabled, + error = props.error, + placeholder = props.placeholder, + defaultValue = props.defaultValue, + value = props.value, + className = props.className, + autoFocus = props.autoFocus, + onChange = props.onChange, + onBlur = props.onBlur, + onFocus = props.onFocus; + var inputRef = /*#__PURE__*/React.createRef(); + + var _React$useState = React.useState(value || defaultValue), + _React$useState2 = _slicedToArray(_React$useState, 2), + chips = _React$useState2[0], + setChips = _React$useState2[1]; + + var _React$useState3 = React.useState(''), + _React$useState4 = _slicedToArray(_React$useState3, 2), + inputValue = _React$useState4[0], + setInputValue = _React$useState4[1]; + + var baseProps = extractBaseProps(props); + React.useEffect(function () { + if (value !== undefined) { + setChips(value); + } + }, [value]); + var ChipInputBorderClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'ChipInput-border', true), _defineProperty$1(_classNames, 'ChipInput-border--error', error), _classNames)); + var ChipInputClass = classnames((_classNames2 = { + ChipInput: true + }, _defineProperty$1(_classNames2, 'ChipInput--disabled', disabled), _defineProperty$1(_classNames2, 'ChipInput--withChips', chips && chips.length > 0), _defineProperty$1(_classNames2, 'ChipInput--error', error), _classNames2), className); + + var onUpdateChips = function onUpdateChips(updatedChips) { + if (onChange) onChange(updatedChips); + }; + + var onChipDeleteHandler = function onChipDeleteHandler(index) { + var updatedChips = _toConsumableArray(chips); + + updatedChips.splice(index, 1); + + if (!value) { + setChips(updatedChips); + } + + onUpdateChips(updatedChips); + }; + + var onChipAddHandler = function onChipAddHandler() { + if (!inputValue) return; + var chip = inputValue.trim(); + + if ((allowDuplicates || chips.indexOf(chip) === -1) && chip) { + var updatedChips = [].concat(_toConsumableArray(chips), [chip]); + + if (!value) { + setChips(updatedChips); + } + + onUpdateChips(updatedChips); + setInputValue(''); + } + }; + + var onDeleteAllHandler = function onDeleteAllHandler() { + var updatedChips = []; + + if (!value) { + setChips(updatedChips); + } + + onUpdateChips(updatedChips); + }; + + var onKeyDownHandler = function onKeyDownHandler(event) { + var chipsLength = chips.length; + + switch (event.key) { + case keyCodes$1.DELETE: + case keyCodes$1.BACKSPACE: + if (inputValue === '' && chipsLength > 0) { + onChipDeleteHandler(chipsLength - 1); + } + + break; + + case keyCodes$1.ENTER: + event.preventDefault(); + onChipAddHandler(); + break; + } + }; + + var onInputChangeHandler = function onInputChangeHandler(e) { + setInputValue(e.target.value); + }; + + var onClickHandler = function onClickHandler() { + var _inputRef$current; + + (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus(); + }; + + var chipComponents = chips.map(function (chip, index) { + var _chipOptions$type = chipOptions.type, + type = _chipOptions$type === void 0 ? 'input' : _chipOptions$type, + _onClick = chipOptions.onClick, + rest = _objectWithoutProperties(chipOptions, _excluded$w); + + return /*#__PURE__*/React.createElement(Chip, _extends$2({ + "data-test": "DesignSystem-ChipInput--Chip", + label: chip, + name: chip, + type: type, + disabled: disabled, + key: index, + className: "my-3 mx-2", + onClick: function onClick() { + return _onClick && _onClick(chip, index); + }, + onClose: function onClose() { + return onChipDeleteHandler(index); + } + }, rest)); + }); + return ( + /*#__PURE__*/ + + /* TODO(a11y): fix accessibility */ + + /* eslint-disable */ + React.createElement("div", { + "data-test": "DesignSystem-ChipInput--Border", + className: ChipInputBorderClass + }, /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-ChipInput" + }, baseProps, { + className: ChipInputClass, + onClick: onClickHandler, + tabIndex: disabled ? -1 : 0 + }), /*#__PURE__*/React.createElement("div", { + className: "ChipInput-wrapper" + }, chips && chips.length > 0 && chipComponents, /*#__PURE__*/React.createElement("input", { + "data-test": "DesignSystem-ChipInput--Input", + ref: inputRef, + className: "ChipInput-input", + autoFocus: autoFocus, + placeholder: chips && chips.length > 0 ? '' : placeholder, + disabled: disabled, + value: inputValue, + onBlur: onBlur, + onFocus: onFocus, + onChange: onInputChangeHandler, + onKeyDown: onKeyDownHandler + })), chips.length > 0 && /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-ChipInput--Icon", + name: "close", + appearance: disabled ? 'disabled' : 'subtle', + className: "ChipInput-icon", + onClick: onDeleteAllHandler, + tabIndex: disabled ? -1 : 0 + }))) + ); +}; +ChipInput.displayName = 'ChipInput'; +ChipInput.defaultProps = { + chipOptions: {}, + defaultValue: [], + allowDuplicates: false, + autoFocus: false +}; + +var getTextAppearance = function getTextAppearance(isActive, disabled) { + return disabled ? 'disabled' : isActive ? 'link' : 'default'; +}; +var getIconAppearance = function getIconAppearance(isActive, disabled) { + return disabled ? 'disabled' : isActive ? 'primary_dark' : 'default'; +}; +var getPillsAppearance = function getPillsAppearance(isActive) { + return isActive ? 'primary' : 'secondary'; +}; +var getMenu = function getMenu(menus, active) { + var _iterator = _createForOfIteratorHelper(menus), + _step; + + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var menu = _step.value; + + if (active.name && menu.name === active.name || active.link && menu.link === active.link) { + return menu; + } + + if (menu.subMenu) { + var activeMenu = menu.subMenu.find(function (submenu) { + return active.name && submenu.name === active.name || active.link && submenu.link === active.link; + }); + if (activeMenu) return activeMenu; + } + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + + return null; +}; +var getExpandedMenus = function getExpandedMenus(menus, active) { + var expandedMenus = {}; + var activeMenu = active ? getMenu(menus, active) : null; + + var _iterator2 = _createForOfIteratorHelper(menus), + _step2; + + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + var menu = _step2.value; + // Determine if the current menu is active or should be expanded by default + var isActiveOrExpanded = (activeMenu === null || activeMenu === void 0 ? void 0 : activeMenu.name.split('.')[0]) === menu.name || menu.expanded; + + if (menu.subMenu) { + expandedMenus[menu.name] = !!isActiveOrExpanded; + } + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + + return expandedMenus; +}; +var isMenuActive = function isMenuActive(menus, menu, active) { + if (active) { + var currActiveMenu = getMenu(menus, active); + return !!currActiveMenu && (currActiveMenu === menu || currActiveMenu.name.split('.')[0] === menu.name || currActiveMenu.name === menu.name || !!currActiveMenu.link && currActiveMenu.link === menu.link); + } + + return false; +}; +var getNavItemColor = function getNavItemColor(isActive, disabled) { + return disabled ? 'inverse-lightest' : isActive ? 'primary-dark' : 'inverse'; +}; + +var _MenuIcon = function MenuIcon(props) { + var isChildrenVisible = props.isChildrenVisible; + return /*#__PURE__*/React.createElement(Icon, { + className: "mx-4", + name: isChildrenVisible ? 'keyboard_arrow_up' : 'keyboard_arrow_down' + }); +}; + +var _MenuPills = function MenuPills(props) { + var _classNames; + + var disabled = props.disabled, + isActive = props.isActive, + count = props.count; + var PillsClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'MenuItem-count', true), _defineProperty$1(_classNames, 'MenuItem-count--disabled', disabled), _classNames)); + return /*#__PURE__*/React.createElement(Pills, { + subtle: disabled, + className: PillsClass, + appearance: getPillsAppearance(isActive), + "data-test": "DesignSystem-VerticalNav--Pills" + }, count); +}; + +var MenuItem$1 = function MenuItem(props) { + var _classNames2; + + var menu = props.menu, + isActive = props.isActive, + expanded = props.expanded, + rounded = props.rounded, + hasSubmenu = props.hasSubmenu, + isChildren = props.isChildren, + isChildrenVisible = props.isChildrenVisible, + onClick = props.onClick, + customItemRenderer = props.customItemRenderer; + + var _React$useState = React.useState(false), + _React$useState2 = _slicedToArray(_React$useState, 2), + isTextTruncated = _React$useState2[0], + setIsTextTruncated = _React$useState2[1]; + + var _Tooltip$useAutoToolt = Tooltip.useAutoTooltip(), + detectTruncation = _Tooltip$useAutoToolt.detectTruncation; + + var contentRef = /*#__PURE__*/React.createRef(); + React.useEffect(function () { + var isTruncated = detectTruncation(contentRef); + setIsTextTruncated(isTruncated); + }, [contentRef]); + + var _MenuLabel = function MenuLabel(props) { + var label = props.label, + labelColor = props.labelColor; + return /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-VerticalNav--Text", + ref: contentRef, + color: labelColor, + className: "MenuItem-Text MenuItem--overflow ".concat(hasSubmenu || menu.count !== undefined ? '' : 'mr-5') + }, label); + }; + + var onClickHandler = function onClickHandler(ev) { + ev.preventDefault(); + if (onClick) onClick(menu); + }; + + var baseProps = _objectSpread2({ + onClick: onClickHandler, + href: menu.link, + tabIndex: 0 + }, extractBaseProps(props)); + + var itemColor = getNavItemColor(isActive, menu.disabled); + var ItemClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'MenuItem', true), _defineProperty$1(_classNames2, 'MenuItem--vertical', true), _defineProperty$1(_classNames2, 'MenuItem--collapsed', !expanded), _defineProperty$1(_classNames2, 'MenuItem--expanded', expanded), _defineProperty$1(_classNames2, 'MenuItem--active', isActive), _defineProperty$1(_classNames2, 'MenuItem--disabled', menu.disabled), _defineProperty$1(_classNames2, 'MenuItem--subMenu', isChildren && expanded), _defineProperty$1(_classNames2, 'MenuItem--rounded', rounded && expanded), _defineProperty$1(_classNames2, "color-".concat(itemColor), true), _classNames2)); + + var renderSubMenu = function renderSubMenu() { + if (hasSubmenu) { + return /*#__PURE__*/React.createElement(_MenuIcon, { + isChildrenVisible: isChildrenVisible + }); + } + + if (menu.count !== undefined) { + var count = menu.count > 99 ? '99+' : menu.count; + return /*#__PURE__*/React.createElement(_MenuPills, { + disabled: menu.disabled, + isActive: isActive, + count: count + }); + } + + return null; + }; + + if (!expanded && !menu.icon) return null; + + var customItemProps = _objectSpread2(_objectSpread2({}, props), {}, { + contentRef: contentRef, + MenuIcon: function MenuIcon() { + return _MenuIcon({ + isChildrenVisible: isChildrenVisible + }); + }, + MenuLabel: function MenuLabel() { + return _MenuLabel({ + label: menu.label, + labelColor: itemColor + }); + }, + MenuPills: function MenuPills() { + return menu.count !== undefined ? _MenuPills({ + disabled: menu.disabled, + isActive: isActive, + count: menu.count + }) : /*#__PURE__*/React.createElement(React.Fragment, null); + } + }); + + return customItemRenderer ? customItemRenderer(customItemProps) : + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement(Tooltip, { + showTooltip: expanded ? isTextTruncated : true, + tooltip: menu.label, + position: "right" + }, /*#__PURE__*/React.createElement(Link$1, _extends$2({ + componentType: "a", + className: ItemClass + }, baseProps), /*#__PURE__*/React.createElement("div", { + className: "d-flex align-items-center overflow-hidden" + }, menu.icon && /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-VerticalNav--Icon", + className: expanded ? 'mr-4' : '', + name: menu.icon, + type: menu.iconType + }), expanded && /*#__PURE__*/React.createElement(_MenuLabel, { + label: menu.label, + labelColor: itemColor + })), expanded && renderSubMenu())); +}; +MenuItem$1.defaultProps = { + isActive: false +}; + +/** + * ####NOTE: VerticalNav sets first subMenu(if present) active if the Navigation is collapsed. + */ +var VerticalNav = function VerticalNav(props) { + var menus = props.menus, + active = props.active, + onClick = props.onClick, + expanded = props.expanded, + rounded = props.rounded, + autoCollapse = props.autoCollapse, + className = props.className, + customItemRenderer = props.customItemRenderer; + + var _React$useState = React.useState({}), + _React$useState2 = _slicedToArray(_React$useState, 2), + subMenuExpandedState = _React$useState2[0], + setSubMenuExpandedState = _React$useState2[1]; + + var _React$useState3 = React.useState({}), + _React$useState4 = _slicedToArray(_React$useState3, 2), + menuState = _React$useState4[0], + setMenuState = _React$useState4[1]; + + var baseProps = extractBaseProps(props); + React.useEffect(function () { + if (props.active) { + var currMenu = getMenu(menus, props.active); + if (currMenu) updateMenuState(currMenu, true); + } + }, [props.active]); + React.useEffect(function () { + var expandedMenus = getExpandedMenus(menus, active); + setSubMenuExpandedState(expandedMenus); + }, []); + + var updateMenuState = function updateMenuState(menu, val) { + var currMenu = getMenu(menus, menu); + + if (currMenu) { + var nameSplit = currMenu.name.split('.'); + + if (nameSplit.length > 1 || currMenu.subMenu) { + var name = nameSplit[0]; + + if (autoCollapse) { + setMenuState(_defineProperty$1({}, name, val || !menuState[name])); + } else { + var menuData = _objectSpread2({}, menuState); + + menuData[name] = val !== undefined ? val : !menuData[name]; + setMenuState(menuData); + } + } else { + if (autoCollapse) { + if (!expanded) setMenuState({}); + } + } + } + }; + + var onClickHandler = function onClickHandler(menu) { + if (menu.subMenu) { + if (!expanded) { + if (onClick) onClick(menu.subMenu[0]); + } else { + if (!subMenuExpandedState[menu.name]) { + updateMenuState(menu); + } + + setMenuState(_objectSpread2(_objectSpread2({}, menuState), {}, _defineProperty$1({}, menu.name, false))); + setSubMenuExpandedState(_objectSpread2(_objectSpread2({}, subMenuExpandedState), {}, _defineProperty$1({}, menu.name, !subMenuExpandedState[menu.name]))); + } + } else { + if (onClick) onClick(menu); + } + }; + + var renderList = function renderList() { + var list = menus.map(function (menu, index) { + var _classNames; + + var isActive = !menuState[menu.name] && isMenuActive(menus, menu, active); + var hasSubmenu = menu.subMenu && menu.subMenu.length > 0; + var isChildrenVisible = hasSubmenu && (menuState[menu.name] || subMenuExpandedState[menu.name]); + var hasGroup = index === 0 || menus[index - 1].group !== menu.group; + var sectionClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'VerticalNav-section', true), _defineProperty$1(_classNames, 'VerticalNav-section--border', index !== 0), _classNames)); + return /*#__PURE__*/React.createElement(React.Fragment, { + key: index + }, hasGroup && menu.group && expanded && /*#__PURE__*/React.createElement("div", { + className: sectionClass + }, /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-VerticalNav--Section", + size: "small", + weight: "strong", + appearance: "subtle" + }, menu.group)), /*#__PURE__*/React.createElement(MenuItem$1, { + "data-test": "DesignSystem-VerticalNav--Item", + menu: menu, + expanded: expanded, + isActive: isActive, + hasSubmenu: hasSubmenu, + isChildren: false, + rounded: rounded, + isChildrenVisible: isChildrenVisible, + onClick: onClickHandler, + customItemRenderer: customItemRenderer + }), isChildrenVisible && menu.subMenu.map(function (subMenu, id) { + return /*#__PURE__*/React.createElement(MenuItem$1, { + key: id, + menu: subMenu, + expanded: expanded, + hasSubmenu: false, + isChildren: true, + rounded: rounded, + onClick: onClickHandler, + isActive: isMenuActive(menus, subMenu, active), + customItemRenderer: customItemRenderer + }); + })); + }); + return list; + }; + + var classes = classnames(_defineProperty$1({ + VerticalNav: true + }, 'VerticalNav--expanded', expanded), className); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: classes + }), renderList()); +}; +VerticalNav.defaultProps = { + expanded: true, + autoCollapse: true, + rounded: false, + showTooltip: false +}; + +var HorizontalNav = function HorizontalNav(props) { + var menus = props.menus, + active = props.active, + onClick = props.onClick, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classnames(_defineProperty$1({}, 'HorizontalNav', true), className); + + var onClickHandler = function onClickHandler(menu) { + return function () { + if (onClick) onClick(menu); + }; + }; + + var getPillsClass = function getPillsClass(disabled) { + var _classNames2; + + return classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'HorizontalNav-pills', true), _defineProperty$1(_classNames2, 'HorizontalNav-pills--disabled', disabled), _defineProperty$1(_classNames2, 'HorizontalNav-animate', true), _classNames2)); + }; + + var renderIcon = function renderIcon(menu, isActive) { + if (menu.count !== undefined) { + var count = menu.count > 99 ? '99+' : menu.count; + return /*#__PURE__*/React.createElement(Pills, { + subtle: menu.disabled, + className: getPillsClass(menu.disabled), + appearance: getPillsAppearance(isActive), + "data-test": "DesignSystem-HorizontalNav--Pills" + }, count); + } + + if (menu.icon) { + return /*#__PURE__*/React.createElement(Icon, { + className: "mr-3 HorizontalNav-animate", + name: menu.icon, + type: menu.iconType, + "data-test": "DesignSystem-HorizontalNav--Icon" + }); + } + + return null; + }; + + var onKeyDownHandler = function onKeyDownHandler(event, menu) { + if (event.key === 'Enter' && onClick) { + onClick(menu); + } + }; + + var list = menus.map(function (menu, index) { + var _classNames3; + + var isActive = isMenuActive(menus, menu, active); + var itemColor = getNavItemColor(isActive, menu.disabled); + var menuClasses = classnames((_classNames3 = { + 'HorizontalNav-menu': true, + 'HorizontalNav-menu--default': !isActive && !menu.disabled + }, _defineProperty$1(_classNames3, 'HorizontalNav-menu--active', isActive), _defineProperty$1(_classNames3, 'HorizontalNav-menu--disabled', menu.disabled), _defineProperty$1(_classNames3, "HorizontalNav-animate", true), _defineProperty$1(_classNames3, "color-".concat(itemColor), true), _classNames3)); + return ( + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement("div", { + tabIndex: 0, + "data-test": "DesignSystem-HorizontalNav", + key: index, + className: menuClasses, + onClick: onClickHandler(menu), + onKeyDown: function onKeyDown(e) { + return onKeyDownHandler(e, menu); + }, + role: "button" + }, renderIcon(menu, isActive), /*#__PURE__*/React.createElement(Text, { + color: itemColor, + weight: "medium", + "data-test": "DesignSystem-HorizontalNav--Text", + className: "HorizontalNav-menuText HorizontalNav-animate" + }, menu.label)) + ); + }); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: classes + }), list); +}; + +var _excluded$v = ["children", "tooltip", "showTooltip", "showOnTruncation", "elementRef"]; +var tooltipPropsList = ['trigger', 'on', 'open', 'offset', 'onToggle', 'dark', 'customStyle', 'closeOnBackdropClick', 'hideOnReferenceEscape', 'closeOnScroll']; +var positionValue = { + bottom: 'bottom', + top: 'top', + 'top-start': 'top', + 'top-end': 'top', + 'bottom-start': 'bottom', + 'bottom-end': 'bottom', + left: 'left', + right: 'right' +}; +var detectTruncation = function detectTruncation(boundaryRef) { + var element = boundaryRef === null || boundaryRef === void 0 ? void 0 : boundaryRef.current; + var isTruncated = element ? element.scrollWidth > element.clientWidth : false; + return isTruncated; +}; +var Tooltip = function Tooltip(props) { + var children = props.children, + tooltip = props.tooltip, + showTooltip = props.showTooltip, + showOnTruncation = props.showOnTruncation, + elementRef = props.elementRef, + rest = _objectWithoutProperties(props, _excluded$v); + + var childrenRef = React.useRef(null); + + var _React$useState = React.useState(false), + _React$useState2 = _slicedToArray(_React$useState, 2), + isTruncated = _React$useState2[0], + setIsTruncated = _React$useState2[1]; + + React.useEffect(function () { + var element = elementRef ? elementRef : childrenRef; + setIsTruncated(detectTruncation(element)); + }, [childrenRef, elementRef, children]); + var renderChildren = elementRef || ! /*#__PURE__*/React.isValidElement(children) ? children : /*#__PURE__*/React.cloneElement(children, { + ref: childrenRef + }); + + if (!showTooltip) { + // If showTooltip is false skip the Popover and return the children directly + return children; + } + + var tooltipWrapper = /*#__PURE__*/React.createElement("div", { + className: "Tooltip" + }, /*#__PURE__*/React.createElement(Text, { + className: "Tooltip-text", + appearance: "white" + }, tooltip)); + + if (showOnTruncation) { + return isTruncated ? /*#__PURE__*/React.createElement(Popover, _extends$2({ + trigger: renderChildren, + on: 'hover', + offset: 'medium' + }, rest, { + animationClass: { + open: "Tooltip-animation-open-".concat(positionValue[props.position]), + close: "Tooltip-animation-close-".concat(positionValue[props.position]) + }, + className: "Tooltip-container" + }), tooltipWrapper) : renderChildren; + } + + return /*#__PURE__*/React.createElement(Popover, _extends$2({ + trigger: children, + on: 'hover', + offset: 'medium' + }, rest, { + animationClass: { + open: "Tooltip-animation-open-".concat(positionValue[props.position]), + close: "Tooltip-animation-close-".concat(positionValue[props.position]) + }, + className: "Tooltip-container" + }), tooltipWrapper); +}; + +Tooltip.useAutoTooltip = function () { + return { + detectTruncation: detectTruncation + }; +}; + +Tooltip.defaultProps = Object.assign({}, filterProps(Popover.defaultProps, tooltipPropsList), { + hoverable: false, + showTooltip: true, + showOnTruncation: false +}); + +/** + * + * Dialog component has been deprecated, please use [Modal](https://mds.innovaccer.com/?path=/docs/components-modal-modal-all--all) component instead. + * + */ +var Dialog = function Dialog(props) { + var dimension = props.dimension, + primaryButtonAppearance = props.primaryButtonAppearance, + secondaryButtonAppearance = props.secondaryButtonAppearance, + open = props.open, + onClose = props.onClose, + heading = props.heading, + title = props.title, + description = props.description, + primaryButtonLabel = props.primaryButtonLabel, + primaryButtonCallback = props.primaryButtonCallback, + secondaryButtonLabel = props.secondaryButtonLabel, + secondaryButtonCallback = props.secondaryButtonCallback; + var baseProps = extractBaseProps(props); + return /*#__PURE__*/React.createElement(Modal, _extends$2({ + "data-test": "DesignSystem-Dialog" + }, baseProps, { + open: open, + dimension: dimension, + onClose: onClose, + headerOptions: { + heading: heading + }, + footer: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, { + type: "button", + "data-test": "DesignSystem-Dialog--SecondaryButton", + appearance: secondaryButtonAppearance, + onClick: secondaryButtonCallback + }, secondaryButtonLabel), /*#__PURE__*/React.createElement(Button, { + type: "button", + className: "ml-4", + "data-test": "DesignSystem-Dialog--PrimaryButton", + appearance: primaryButtonAppearance, + onClick: primaryButtonCallback + }, primaryButtonLabel)) + }), /*#__PURE__*/React.createElement(ModalDescription, { + title: title, + description: description + })); +}; + +Dialog.displayName = 'Dialog'; +Dialog.defaultProps = { + dimension: 'small', + primaryButtonAppearance: 'primary', + secondaryButtonAppearance: 'basic' +}; + +var _excluded$u = ["label"]; +var OverlayFooter = function OverlayFooter(props) { + var open = props.open, + className = props.className, + children = props.children, + actions = props.actions; + var baseProps = extractBaseProps(props); + var classes = classnames({ + OverlayFooter: true + }, className); + var wrapperRef = /*#__PURE__*/React.createRef(); + React.useEffect(function () { + if (open) { + if (wrapperRef.current) { + var _wrapperRef$current; + + var secondaryBtns = (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.querySelectorAll('.Button--basic'); + var secondaryBtn = secondaryBtns[secondaryBtns.length - 1]; + + if (secondaryBtn) { + window.requestAnimationFrame(function () { + return secondaryBtn.focus({ + preventScroll: true + }); + }); + } + } + } + }, [open]); + + if (actions) { + return /*#__PURE__*/React.createElement("div", _extends$2({ + ref: wrapperRef + }, baseProps, { + className: classes + }), actions.map(function (_ref, index) { + _ref.label; + var options = _objectWithoutProperties(_ref, _excluded$u); + + return /*#__PURE__*/React.createElement(Button, _extends$2({ + type: "button" + }, options, { + key: index + })); + })); + } + + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-OverlayFooter", + ref: wrapperRef + }, baseProps, { + className: classes + }), children); +}; +OverlayFooter.displayName = 'OverlayFooter'; + +var OverlayHeader = function OverlayHeader(props) { + var _classNames2; + + var className = props.className, + heading = props.heading, + subHeading = props.subHeading, + backButton = props.backButton, + backIcon = props.backIcon, + backIconCallback = props.backIconCallback, + backButtonCallback = props.backButtonCallback, + headingClass = props.headingClass; + var baseProps = extractBaseProps(props); + var classes = classnames(_defineProperty$1({ + OverlayHeader: true + }, 'OverlayHeader--withBackButton', backButton || backIcon), className); + var subheadingClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'OverlayHeader-subheading', true), _defineProperty$1(_classNames2, 'OverlayHeader-subheading--withBackButton', backButton || backIcon), _classNames2)); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-OverlayHeader" + }, baseProps, { + className: classes + }), /*#__PURE__*/React.createElement("div", { + className: "OverlayHeader-headerWrapper" + }, (backButton || backIcon) && /*#__PURE__*/React.createElement(Button, { + "data-test": "DesignSystem-OverlayHeader--Button", + appearance: "transparent", + className: "mr-4", + icon: "arrow_back", + largeIcon: true, + onClick: backButtonCallback || backIconCallback + }), heading && /*#__PURE__*/React.createElement(Heading, { + className: headingClass, + "data-test": "DesignSystem-OverlayHeader--heading" + }, heading)), subHeading && /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-OverlayHeader--Subheading", + appearance: "subtle", + className: subheadingClass + }, subHeading)); +}; +OverlayHeader.displayName = 'OverlayHeader'; + +var OverlayBody = function OverlayBody(props) { + var children = props.children, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classnames({ + OverlayBody: true + }, className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-OverlayBody" + }, baseProps, { + className: classes + }), children); +}; +OverlayBody.defaultProps = { + stickFooter: true, + withFooter: true +}; +OverlayBody.displayName = 'OverlayBody'; + +var getWrapperElement = function getWrapperElement() { + var element = document.querySelector('.Overlay-wrapper'); + + if (element === null) { + element = document.createElement('div'); + element.classList.add('Overlay-wrapper'); + document.body.appendChild(element); + } + + return element; +}; +var getUpdatedZIndex = function getUpdatedZIndex(ele) { + var containerClassName = ele.containerClassName, + elementRef = ele.elementRef, + element = ele.element; + if (element === null) return; + var elements = element.querySelectorAll(containerClassName); + if (elements.length < 1) return; + var siblings = Array.from(elements).filter(function (el) { + return el !== elementRef.current; + }); + var zIndex = -1; + siblings.forEach(function (element) { + var prevZIndex = parseInt(window.getComputedStyle(element).zIndex || '0', 10); + zIndex = Math.max(zIndex, prevZIndex + 10); + }); + return zIndex > 0 ? zIndex : undefined; +}; // keyboard event, boolean?, (event: Event) => void + +var closeOnEscapeKeypress = function closeOnEscapeKeypress(event, isTopOverlay, onClose) { + if (event.key === 'Escape' && isTopOverlay) { + onClose(event); // prevent browser-specific escape key behavior (Safari exits fullscreen) + + event.preventDefault(); + } +}; + +var OverlayManager = /*#__PURE__*/function () { + function OverlayManager() { + _classCallCheck(this, OverlayManager); + + _defineProperty$1(this, "overlays", void 0); + + this.overlays = []; + } + + _createClass(OverlayManager, [{ + key: "add", + value: function add(overlay) { + if (overlay === null) return; + var overlayIdx = this.overlays.indexOf(overlay); + + if (overlayIdx !== -1) { + return overlayIdx; + } + + overlayIdx = this.overlays.length; + this.overlays.push(overlay); + return overlayIdx; + } + }, { + key: "remove", + value: function remove(overlay) { + if (overlay === null) return; + var overlayIdx = this.overlays.indexOf(overlay); + + if (overlayIdx === -1) { + return; + } + + this.overlays.splice(overlayIdx, 1); + } + }, { + key: "isTopOverlay", + value: function isTopOverlay(overlay) { + if (overlay === null) return; + return !!this.overlays.length && this.overlays[this.overlays.length - 1] === overlay; + } + }]); + + return OverlayManager; +}(); + +var instance = new OverlayManager(); +Object.freeze(instance); + +/** + * ** NOTE: Use `headerOptions`, `header`, `footerOptions`, `footer`, `onClose` and `backdropClose`(boolean). ** + * ** Support for composition using `ModalHeader`, `ModalBody` and `ModalFooter` will be deprecated soon. ** + */ +var Modal = /*#__PURE__*/function (_React$Component) { + _inherits(Modal, _React$Component); + + var _super = _createSuper(Modal); + + function Modal(props) { + var _this; + + _classCallCheck(this, Modal); + + _this = _super.call(this, props); + + _defineProperty$1(_assertThisInitialized$1(_this), "modalRef", /*#__PURE__*/React.createRef()); + + _defineProperty$1(_assertThisInitialized$1(_this), "element", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "onCloseHandler", function (event) { + var isTopOverlay = instance.isTopOverlay(_this.modalRef.current); + closeOnEscapeKeypress(event, isTopOverlay, _this.onOutsideClickHandler); + }); + + _this.element = getWrapperElement(); + _this.state = { + open: props.open, + animate: props.open + }; + _this.onOutsideClickHandler = _this.onOutsideClickHandler.bind(_assertThisInitialized$1(_this)); + return _this; + } + + _createClass(Modal, [{ + key: "componentDidMount", + value: function componentDidMount() { + if (this.props.closeOnEscape) { + if (this.state.open) { + instance.add(this.modalRef.current); + } + + document.addEventListener('keydown', this.onCloseHandler); + } + + if (this.props.backdropClose) { + if (this.state.open) { + instance.add(this.modalRef.current); + } + } + + var zIndex = getUpdatedZIndex({ + element: this.element, + containerClassName: '.Overlay-container', + elementRef: this.modalRef + }); + this.setState({ + zIndex: zIndex + }); + } + }, { + key: "componentWillUnmount", + value: function componentWillUnmount() { + if (this.props.closeOnEscape) { + document.removeEventListener('keydown', this.onCloseHandler); + } + } + }, { + key: "componentDidUpdate", + value: function componentDidUpdate(prevProps) { + var _this2 = this; + + if (prevProps.open !== this.props.open) { + if (this.props.open) { + var zIndex = getUpdatedZIndex({ + element: this.element, + containerClassName: '.Overlay-container--open', + elementRef: this.modalRef + }); + this.setState({ + zIndex: zIndex, + open: true, + animate: true + }); + if (this.props.closeOnEscape || this.props.backdropClose) instance.add(this.modalRef.current); + } else { + this.setState({ + animate: false + }, function () { + window.setTimeout(function () { + _this2.setState({ + open: false + }); + }, 120); + }); + if (this.props.closeOnEscape || this.props.backdropClose) instance.remove(this.modalRef.current); + } + } + } + }, { + key: "onOutsideClickHandler", + value: function onOutsideClickHandler(event) { + var _this$props = this.props, + closeOnEscape = _this$props.closeOnEscape, + backdropClose = _this$props.backdropClose, + onClose = _this$props.onClose; + var open = this.state.open; + + if (open && instance.isTopOverlay(this.modalRef.current)) { + if (closeOnEscape || backdropClose) instance.remove(this.modalRef.current); + if (onClose) onClose(event, 'OutsideClick');else if (typeof backdropClose === 'function') backdropClose(event, 'OutsideClick'); + } + } + }, { + key: "render", + value: function render() { + var _classNames, _classNames2, _classNames3, _classNames4; + + var _this$state = this.state, + animate = _this$state.animate, + open = _this$state.open, + zIndex = _this$state.zIndex; + var _this$props2 = this.props, + className = _this$props2.className, + backdropClose = _this$props2.backdropClose, + dimension = _this$props2.dimension, + children = _this$props2.children, + headerOptions = _this$props2.headerOptions, + header = _this$props2.header, + footerOptions = _this$props2.footerOptions, + seperator = _this$props2.seperator, + footer = _this$props2.footer, + onClose = _this$props2.onClose; + var BackdropZIndex = zIndex ? zIndex - 1 : 1000; + var classes = classnames({ + Modal: true, + 'Modal--open': open, + 'Modal-animation--open': animate, + 'Modal-animation--close': !animate + }, className); + var headerClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Modal-header', true), _defineProperty$1(_classNames, 'Modal-header--withSeperator', seperator), _classNames)); + var footerClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Modal-footer', true), _defineProperty$1(_classNames2, 'Modal-footer--withSeperator', seperator), _classNames2)); + var ContainerClass = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Row', true), _defineProperty$1(_classNames3, 'Overlay-container', true), _defineProperty$1(_classNames3, 'Overlay-container--open', open), _classNames3)); + var isAPINew = headerOptions || footerOptions || footer || header; + var bodyClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'Modal-body', true), _defineProperty$1(_classNames4, 'Modal-body--withMargin', isAPINew ? !!footer : true), _defineProperty$1(_classNames4, 'Modal-body--withPadding', isAPINew ? !footer : true), _classNames4)); + var baseProps = extractBaseProps(this.props); + var sizeMap = { + small: { + size: '3', + sizeL: '4', + sizeM: '4', + sizeXS: '10' + }, + medium: { + size: '4', + sizeL: '6', + sizeM: '6', + sizeXS: '10' + }, + large: { + size: '6', + sizeL: '8', + sizeM: '8', + sizeXS: '10' + } + }; + var ModalContainer = /*#__PURE__*/React.createElement(Row, { + "data-test": "DesignSystem-ModalContainer", + className: ContainerClass, + "data-layer": true, + "data-opened": open, + style: { + zIndex: zIndex ? zIndex : 1001 + } + }, /*#__PURE__*/React.createElement(Column, _extends$2({ + "data-test": "DesignSystem-Modal" + }, baseProps, { + className: classes + }, sizeMap[dimension], { + ref: this.modalRef + }), (headerOptions || header) && /*#__PURE__*/React.createElement("div", { + className: headerClass + }, /*#__PURE__*/React.createElement(Column, null, !header && /*#__PURE__*/React.createElement(OverlayHeader, _extends$2({ + "data-test": "DesignSystem-Modal--header" + }, headerOptions)), !!header && header), /*#__PURE__*/React.createElement(Column, { + className: "flex-grow-0" + }, /*#__PURE__*/React.createElement(Tooltip, { + tooltip: "Close", + position: "bottom" + }, /*#__PURE__*/React.createElement(Button, { + icon: "close", + appearance: "transparent", + "data-test": "DesignSystem-Modal--CloseButton", + onClick: function onClick(event) { + if (onClose) onClose(event, 'IconClick'); + } + })))), open && children && /*#__PURE__*/React.createElement(React.Fragment, null, headerOptions || footerOptions || footer || header ? /*#__PURE__*/React.createElement(OverlayBody, { + className: bodyClass + }, this.props.children) : children), (!!footer || !!footerOptions) && /*#__PURE__*/React.createElement(OverlayFooter, _extends$2({ + "data-test": "DesignSystem-Modal--footer" + }, footerOptions, { + open: open, + className: footerClass + }), footer))); + var ModalWrapper = backdropClose ? /*#__PURE__*/React.createElement(OutsideClick, { + ref: this.modalRef, + "data-test": "DesignSystem-Modal--OutsideClick", + onOutsideClick: this.onOutsideClickHandler + }, ModalContainer) : ModalContainer; + var WrapperElement = /*#__PURE__*/ReactDOM.createPortal(ModalWrapper, this.element); + return /*#__PURE__*/React.createElement(React.Fragment, null, WrapperElement, /*#__PURE__*/React.createElement(Backdrop, { + open: this.state.animate, + zIndex: BackdropZIndex + })); + } + }]); + + return Modal; +}(React.Component); + +_defineProperty$1(Modal, "defaultProps", { + dimension: 'medium' +}); + +var ModalHeader = function ModalHeader(props) { + var className = props.className, + heading = props.heading, + subHeading = props.subHeading, + onClose = props.onClose, + seperator = props.seperator, + backIcon = props.backIcon, + backIconCallback = props.backIconCallback; + var baseProps = extractBaseProps(props); + var classes = classnames(_defineProperty$1({ + 'Modal-header': true + }, 'Modal-header--withSeperator', seperator), className); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: classes + }), /*#__PURE__*/React.createElement(Column, null, /*#__PURE__*/React.createElement(OverlayHeader, { + heading: heading, + subHeading: subHeading, + backButton: backIcon, + backButtonCallback: backIconCallback + })), /*#__PURE__*/React.createElement(Column, { + className: "flex-grow-0" + }, /*#__PURE__*/React.createElement(Button, { + icon: "close", + appearance: "transparent", + "data-test": "DesignSystem-Modal--CloseButton", + onClick: function onClick(event) { + if (onClose) onClose(event, 'IconClick'); + } + }))); +}; +ModalHeader.displayName = 'ModalHeader'; + +var ModalBody = function ModalBody(props) { + var children = props.children, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classnames({ + 'Modal-body': true, + 'Modal-body--withMargin': true + }, className); + return /*#__PURE__*/React.createElement(OverlayBody, _extends$2({}, baseProps, { + stickFooter: true, + className: classes + }), children); +}; +ModalBody.defaultProps = { + stickFooter: true, + withFooter: true +}; +ModalBody.displayName = 'ModalBody'; + +var ModalFooter = function ModalFooter(props) { + var _classNames; + + var open = props.open, + children = props.children, + className = props.className, + seperator = props.seperator; + var baseProps = extractBaseProps(props); + var classes = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Modal-footer', true), _defineProperty$1(_classNames, 'Modal-footer--withSeperator', seperator), _classNames), className); + return /*#__PURE__*/React.createElement(OverlayFooter, _extends$2({}, baseProps, { + open: open, + className: classes + }), children); +}; +ModalFooter.displayName = 'ModalFooter'; + +var FullscreenModal = /*#__PURE__*/function (_React$Component) { + _inherits(FullscreenModal, _React$Component); + + var _super = _createSuper(FullscreenModal); + + function FullscreenModal(props) { + var _this; + + _classCallCheck(this, FullscreenModal); + + _this = _super.call(this, props); + + _defineProperty$1(_assertThisInitialized$1(_this), "modalRef", /*#__PURE__*/React.createRef()); + + _defineProperty$1(_assertThisInitialized$1(_this), "element", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "onOutsideClickHandler", function (event) { + instance.remove(_this.modalRef.current); + + if (_this.props.onClose) { + _this.props.onClose(event, 'EscapePress'); + } else { + _this.setState({ + animate: false + }, function () { + window.setTimeout(function () { + _this.setState({ + open: false + }); + }, 120); + }); + } + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "onCloseHandler", function (event) { + var isTopOverlay = instance.isTopOverlay(_this.modalRef.current); + closeOnEscapeKeypress(event, isTopOverlay, _this.onOutsideClickHandler); + }); + + _this.element = getWrapperElement(); + _this.state = { + open: props.open, + animate: props.open + }; + return _this; + } + + _createClass(FullscreenModal, [{ + key: "componentDidMount", + value: function componentDidMount() { + if (this.props.closeOnEscape) { + if (this.state.open) { + instance.add(this.modalRef.current); + } + + document.addEventListener('keydown', this.onCloseHandler); + } + } + }, { + key: "componentWillUnmount", + value: function componentWillUnmount() { + if (this.props.closeOnEscape) document.removeEventListener('keydown', this.onCloseHandler); + } + }, { + key: "componentDidUpdate", + value: function componentDidUpdate(prevProps) { + var _this2 = this; + + if (prevProps.open !== this.props.open) { + if (this.props.open) { + var zIndex = getUpdatedZIndex({ + element: this.element, + containerClassName: '.Overlay-container--open', + elementRef: this.modalRef + }); + this.setState({ + zIndex: zIndex, + open: true, + animate: true + }); + if (this.props.closeOnEscape) instance.add(this.modalRef.current); + } else { + this.setState({ + animate: false + }, function () { + window.setTimeout(function () { + _this2.setState({ + open: false + }); + }, 120); + }); + if (this.props.closeOnEscape) instance.remove(this.modalRef.current); + } + } + } + }, { + key: "render", + value: function render() { + var _classNames; + + var _this$state = this.state, + animate = _this$state.animate, + open = _this$state.open, + zIndex = _this$state.zIndex; + var _this$props = this.props, + className = _this$props.className, + dimension = _this$props.dimension, + children = _this$props.children, + header = _this$props.header, + headerOptions = _this$props.headerOptions, + footer = _this$props.footer, + footerOptions = _this$props.footerOptions, + onClose = _this$props.onClose; + var classes = classnames({ + FullscreenModal: true, + 'FullscreenModal-animation--open': animate, + 'FullscreenModal-animation--close': !animate + }, className); + var ContainerClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Overlay-container', true), _defineProperty$1(_classNames, 'Overlay-container--open', open), _classNames)); + var baseProps = extractBaseProps(this.props); + var sizeMap = { + medium: { + size: '4', + sizeL: '6', + sizeM: '6', + sizeXS: '12' + }, + large: { + size: '6', + sizeL: '8', + sizeM: '8', + sizeXS: '12' + } + }; + var ModalContainer = open ? /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-FullscreenModalContainer", + className: ContainerClass, + "data-layer": true, + style: { + zIndex: zIndex + } + }, /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-FullscreenModal" + }, baseProps, { + className: classes, + ref: this.modalRef + }), /*#__PURE__*/React.createElement(Row, { + className: "justify-content-center" + }, /*#__PURE__*/React.createElement(Column, sizeMap[dimension], /*#__PURE__*/React.createElement(Row, { + className: "FullscreenModal-header" + }, /*#__PURE__*/React.createElement(Column, null, !header && /*#__PURE__*/React.createElement(OverlayHeader, _extends$2({ + "data-test": "DesignSystem-FullscreenModal--header" + }, headerOptions)), !!header && header), /*#__PURE__*/React.createElement(Column, { + className: "flex-grow-0" + }, /*#__PURE__*/React.createElement(Tooltip, { + tooltip: "Close" + }, /*#__PURE__*/React.createElement(Button, { + icon: "close", + appearance: "transparent", + "data-test": "DesignSystem-FullscreenModal--CloseButton", + onClick: function onClick(event) { + if (onClose) onClose(event, 'IconClick'); + } + })))), /*#__PURE__*/React.createElement(OverlayBody, { + "data-test": "DesignSystem-FullscreenModal--Body", + className: "FullscreenModal-body" + }, children), (!!footer || !!footerOptions) && /*#__PURE__*/React.createElement(OverlayFooter, _extends$2({ + "data-test": "DesignSystem-FullscreenModal--footer" + }, footerOptions, { + open: open, + className: "FullscreenModal-footer" + }), footer))))) : null; + var WrapperElement = /*#__PURE__*/ReactDOM.createPortal(ModalContainer, this.element); + return /*#__PURE__*/React.createElement(React.Fragment, null, WrapperElement); + } + }]); + + return FullscreenModal; +}(React.Component); - /** - * Applies the computed styles to the popper element. - * - * All the DOM manipulations are limited to this modifier. This is useful in case - * you want to integrate Popper.js inside a framework or view library and you - * want to delegate all the DOM manipulations to it. - * - * Note that if you disable this modifier, you must make sure the popper element - * has its position set to `absolute` before Popper.js can do its work! - * - * Just disable this modifier and define your own to achieve the desired effect. - * - * @memberof modifiers - * @inner - */ - applyStyle: { - /** @prop {number} order=900 - Index used to define the order of execution */ - order: 900, - /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */ - enabled: true, - /** @prop {ModifierFn} */ - fn: applyStyle, - /** @prop {Function} */ - onLoad: applyStyleOnLoad, - /** - * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier - * @prop {Boolean} gpuAcceleration=true - * If true, it uses the CSS 3D transformation to position the popper. - * Otherwise, it will use the `top` and `left` properties - */ - gpuAcceleration: undefined - } +_defineProperty$1(FullscreenModal, "defaultProps", { + dimension: 'medium' +}); + +var sidesheetWidth = { + regular: '6', + large: '10' }; -/** - * The `dataObject` is an object containing all the information used by Popper.js. - * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks. - * @name dataObject - * @property {Object} data.instance The Popper.js instance - * @property {String} data.placement Placement applied to popper - * @property {String} data.originalPlacement Placement originally defined on init - * @property {Boolean} data.flipped True if popper has been flipped by flip modifier - * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper - * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier - * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`) - * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`) - * @property {Object} data.boundaries Offsets of the popper boundaries - * @property {Object} data.offsets The measurements of popper, reference and arrow elements - * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values - * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values - * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0 - */ +var Sidesheet = /*#__PURE__*/function (_React$Component) { + _inherits(Sidesheet, _React$Component); -/** - * Default options provided to Popper.js constructor.
- * These can be overridden using the `options` argument of Popper.js.
- * To override an option, simply pass an object with the same - * structure of the `options` object, as the 3rd argument. For example: - * ``` - * new Popper(ref, pop, { - * modifiers: { - * preventOverflow: { enabled: false } - * } - * }) - * ``` - * @type {Object} - * @static - * @memberof Popper - */ -var Defaults = { - /** - * Popper's placement. - * @prop {Popper.placements} placement='bottom' - */ - placement: 'bottom', + var _super = _createSuper(Sidesheet); - /** - * Set this to true if you want popper to position it self in 'fixed' mode - * @prop {Boolean} positionFixed=false - */ - positionFixed: false, + function Sidesheet(props) { + var _this; - /** - * Whether events (resize, scroll) are initially enabled. - * @prop {Boolean} eventsEnabled=true - */ - eventsEnabled: true, + _classCallCheck(this, Sidesheet); - /** - * Set to true if you want to automatically remove the popper when - * you call the `destroy` method. - * @prop {Boolean} removeOnDestroy=false - */ - removeOnDestroy: false, + _this = _super.call(this, props); - /** - * Callback called when the popper is created.
- * By default, it is set to no-op.
- * Access Popper.js instance with `data.instance`. - * @prop {onCreate} - */ - onCreate: function onCreate() {}, + _defineProperty$1(_assertThisInitialized$1(_this), "sidesheetRef", /*#__PURE__*/React.createRef()); - /** - * Callback called when the popper is updated. This callback is not called - * on the initialization/creation of the popper, but only on subsequent - * updates.
- * By default, it is set to no-op.
- * Access Popper.js instance with `data.instance`. - * @prop {onUpdate} - */ - onUpdate: function onUpdate() {}, + _defineProperty$1(_assertThisInitialized$1(_this), "element", void 0); - /** - * List of modifiers used to modify the offsets before they are applied to the popper. - * They provide most of the functionalities of Popper.js. - * @prop {modifiers} - */ - modifiers: modifiers -}; + _defineProperty$1(_assertThisInitialized$1(_this), "onCloseHandler", function (event) { + var isTopOverlay = instance.isTopOverlay(_this.sidesheetRef.current); + closeOnEscapeKeypress(event, isTopOverlay, _this.onOutsideClickHandler); + }); -/** - * @callback onCreate - * @param {dataObject} data - */ + _this.element = getWrapperElement(); + _this.state = { + open: props.open, + animate: props.open + }; + _this.onOutsideClickHandler = _this.onOutsideClickHandler.bind(_assertThisInitialized$1(_this)); + return _this; + } -/** - * @callback onUpdate - * @param {dataObject} data - */ + _createClass(Sidesheet, [{ + key: "componentDidMount", + value: function componentDidMount() { + if (this.props.closeOnEscape) { + if (this.state.open) { + instance.add(this.sidesheetRef.current); + } -// Utils -// Methods -var Popper$1 = function () { - /** - * Creates a new Popper.js instance. - * @class Popper - * @param {Element|referenceObject} reference - The reference element used to position the popper - * @param {Element} popper - The HTML / XML element used as the popper - * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults) - * @return {Object} instance - The generated Popper.js instance - */ - function Popper(reference, popper) { - var _this = this; + document.addEventListener('keydown', this.onCloseHandler); + } - var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; - classCallCheck(this, Popper); + if (this.props.backdropClose && this.state.open) { + instance.add(this.sidesheetRef.current); + } - this.scheduleUpdate = function () { - return requestAnimationFrame(_this.update); - }; + var zIndex = getUpdatedZIndex({ + element: this.element, + containerClassName: '.Overlay-container', + elementRef: this.sidesheetRef + }); + this.setState({ + zIndex: zIndex + }); + } + }, { + key: "componentWillUnmount", + value: function componentWillUnmount() { + if (this.props.closeOnEscape) { + document.removeEventListener('keydown', this.onCloseHandler); + } + } + }, { + key: "componentDidUpdate", + value: function componentDidUpdate(prevProps) { + if (prevProps.open !== this.props.open) { + if (this.props.open) { + var zIndex = getUpdatedZIndex({ + element: this.element, + containerClassName: '.Overlay-container--open', + elementRef: this.sidesheetRef + }); + this.setState({ + zIndex: zIndex, + open: true, + animate: true + }); + if (this.props.closeOnEscape || this.props.backdropClose) instance.add(this.sidesheetRef.current); + } else { + this.setState({ + animate: false + }); + if (this.props.closeOnEscape || this.props.backdropClose) instance.remove(this.sidesheetRef.current); + } + } + } + }, { + key: "onOutsideClickHandler", + value: function onOutsideClickHandler(event) { + var _this$props = this.props, + backdropClose = _this$props.backdropClose, + closeOnEscape = _this$props.closeOnEscape, + onClose = _this$props.onClose; + var open = this.state.open; - // make update() debounced, so that it only runs at most once-per-tick - this.update = debounce(this.update.bind(this)); + if (open && instance.isTopOverlay(this.sidesheetRef.current)) { + if (backdropClose || closeOnEscape) instance.remove(this.sidesheetRef.current); + if (onClose) onClose(event, 'OutsideClick'); + } + } + }, { + key: "handleAnimationEnd", + value: function handleAnimationEnd() { + if (!this.state.animate) { + this.setState({ + open: false + }); + } + } + }, { + key: "render", + value: function render() { + var _classNames, + _classNames2, + _classNames3, + _classNames4, + _classNames5, + _this2 = this; - // with {} we create a new object with the options inside it - this.options = _extends$1({}, Popper.Defaults, options); + var _this$state = this.state, + animate = _this$state.animate, + open = _this$state.open, + zIndex = _this$state.zIndex; + var _this$props2 = this.props, + className = _this$props2.className, + backdropClose = _this$props2.backdropClose, + dimension = _this$props2.dimension, + footer = _this$props2.footer, + seperator = _this$props2.seperator, + stickFooter = _this$props2.stickFooter, + headerOptions = _this$props2.headerOptions, + footerOptions = _this$props2.footerOptions, + header = _this$props2.header, + onClose = _this$props2.onClose; + var BackdropZIndex = zIndex ? zIndex - 1 : 1000; + var classes = classnames({ + Sidesheet: true, + 'Sidesheet--open': open, + 'Sidesheet-animation--open': animate, + 'Sidesheet-animation--close': !animate + }, className); + var ContainerClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Overlay-container', true), _defineProperty$1(_classNames, 'fade-in', animate), _defineProperty$1(_classNames, 'Overlay-container--open', animate), _defineProperty$1(_classNames, 'Overlay-container--close', !animate), _classNames)); + var headerClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Sidesheet-header', true), _defineProperty$1(_classNames2, 'Sidesheet-header--withSeperator', seperator), _classNames2)); + var footerClass = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Sidesheet-footer', true), _defineProperty$1(_classNames3, 'Sidesheet-footer--withSeperator', seperator), _defineProperty$1(_classNames3, 'Sidesheet-footer--stickToBottom', stickFooter), _classNames3)); + var bodyClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'Sidesheet-body', true), _defineProperty$1(_classNames4, 'Sidesheet-body--withMargin', !!footer && stickFooter), _defineProperty$1(_classNames4, 'Sidesheet-body--nextPage', (headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backButton) || (headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backIcon)), _defineProperty$1(_classNames4, 'Sidesheet-body--firstPage', !(headerOptions !== null && headerOptions !== void 0 && headerOptions.backButton) && !(headerOptions !== null && headerOptions !== void 0 && headerOptions.backIcon)), _classNames4)); + var headingClass = classnames((_classNames5 = {}, _defineProperty$1(_classNames5, 'Sidesheet-header--shiftRight', (headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backButton) || (headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backIcon)), _defineProperty$1(_classNames5, 'Sidesheet-header--shiftLeft', !(headerOptions !== null && headerOptions !== void 0 && headerOptions.backButton) && !(headerOptions !== null && headerOptions !== void 0 && headerOptions.backIcon)), _classNames5)); + var baseProps = extractBaseProps(this.props); + var SidesheetContainer = /*#__PURE__*/React.createElement(Row, { + "data-test": "DesignSystem-SidesheetContainer", + "data-open": this.state.open, + className: ContainerClass, + "data-layer": true, + style: { + zIndex: zIndex ? zIndex : 1001 + }, + ref: this.sidesheetRef, + onAnimationEnd: function onAnimationEnd() { + return _this2.handleAnimationEnd; + } + }, /*#__PURE__*/React.createElement(Column, _extends$2({ + "data-test": "DesignSystem-Sidesheet" + }, baseProps, { + className: classes, + size: sidesheetWidth[dimension] + }), /*#__PURE__*/React.createElement("div", { + className: headerClass + }, /*#__PURE__*/React.createElement(Column, { + "data-test": "DesignSystem-Sidesheet--Header" + }, !header && /*#__PURE__*/React.createElement(OverlayHeader, _extends$2({ + headingClass: headingClass + }, headerOptions)), !!header && header), /*#__PURE__*/React.createElement(Column, { + className: "flex-grow-0" + }, /*#__PURE__*/React.createElement(Tooltip, { + tooltip: "Close" + }, /*#__PURE__*/React.createElement(Button, { + icon: "close", + appearance: "transparent", + "data-test": "DesignSystem-Sidesheet--CloseButton", + largeIcon: true, + onClick: function onClick(event) { + if (onClose) onClose(event, 'IconClick'); + } + })))), /*#__PURE__*/React.createElement(OverlayBody, { + "data-test": "DesignSystem-Sidesheet--OverlayBody", + className: bodyClass + }, this.props.children), (!!footer || !!footerOptions) && /*#__PURE__*/React.createElement(OverlayFooter, _extends$2({ + "data-test": "DesignSystem-Sidesheet--Footer" + }, footerOptions, { + open: open, + className: footerClass + }), footer))); + var SidesheetWrapper = backdropClose ? /*#__PURE__*/React.createElement(OutsideClick, { + ref: this.sidesheetRef, + "data-test": "DesignSystem-Sidesheet--OutsideClick", + onOutsideClick: this.onOutsideClickHandler + }, SidesheetContainer) : SidesheetContainer; + var WrapperElement = /*#__PURE__*/ReactDOM.createPortal(SidesheetWrapper, this.element); + return /*#__PURE__*/React.createElement(React.Fragment, null, WrapperElement, /*#__PURE__*/React.createElement(Backdrop, { + open: this.state.animate, + zIndex: BackdropZIndex + })); + } + }]); - // init state - this.state = { - isDestroyed: false, - isCreated: false, - scrollParents: [] - }; + return Sidesheet; +}(React.Component); - // get reference and popper elements (allow jQuery wrappers) - this.reference = reference && reference.jquery ? reference[0] : reference; - this.popper = popper && popper.jquery ? popper[0] : popper; +_defineProperty$1(Sidesheet, "defaultProps", { + dimension: 'regular', + stickFooter: false, + headerOptions: {} +}); - // Deep merge modifiers options - this.options.modifiers = {}; - Object.keys(_extends$1({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) { - _this.options.modifiers[name] = _extends$1({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {}); - }); +var Collapsible = function Collapsible(props) { + var _classNames, _classNames2, _classNames3, _classNames4; - // Refactoring modifiers' list (Object => Array) - this.modifiers = Object.keys(this.options.modifiers).map(function (name) { - return _extends$1({ - name: name - }, _this.options.modifiers[name]); - }) - // sort the modifiers by order - .sort(function (a, b) { - return a.order - b.order; - }); + var expanded = props.expanded, + hoverable = props.hoverable, + expandedWidth = props.expandedWidth, + height = props.height, + children = props.children, + className = props.className, + onToggle = props.onToggle, + withTrigger = props.withTrigger; - // modifiers have the ability to execute arbitrary code when Popper.js get inited - // such code is executed in the same order of its modifier - // they could add new properties to their options configuration - // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`! - this.modifiers.forEach(function (modifierOptions) { - if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) { - modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state); - } - }); + var _React$useState = React.useState(true), + _React$useState2 = _slicedToArray(_React$useState, 2), + isClicked = _React$useState2[0], + setIsClicked = _React$useState2[1]; - // fire the first update to position the popper in the right place - this.update(); + var _React$useState3 = React.useState(false), + _React$useState4 = _slicedToArray(_React$useState3, 2), + seperator = _React$useState4[0], + setSeperator = _React$useState4[1]; - var eventsEnabled = this.options.eventsEnabled; - if (eventsEnabled) { - // setup event listeners, they will take care of update the position in specific situations - this.enableEventListeners(); + var ref = /*#__PURE__*/React.createRef(); + var baseProps = extractBaseProps(props); + React.useEffect(function () { + if (ref.current) { + setSeperator(ref.current.scrollHeight > ref.current.clientHeight); } + }); + var WrapperClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Collapsible-wrapper', true), _defineProperty$1(_classNames, 'Collapsible-wrapper--overlay', !isClicked), _classNames)); + var BodyClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Collapsible-body', true), _defineProperty$1(_classNames2, 'overflow-hidden', !expanded && hoverable), _classNames2)); + var classes = classnames((_classNames3 = { + Collapsible: true + }, _defineProperty$1(_classNames3, 'Collapsible--overlay', !isClicked), _defineProperty$1(_classNames3, 'Collapsible--shadow', !isClicked && expanded), _classNames3), className); + var FooterClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'Collapsible-footer', true), _defineProperty$1(_classNames4, 'Collapsible-footer--seperator', seperator), _classNames4)); - this.state.eventsEnabled = eventsEnabled; - } + var onToggleHandler = function onToggleHandler(newExpanded, type) { + return function () { + if (onToggle) { + if (type === 'mouseenter' || type === 'mouseleave') { + if (isClicked && expanded || !hoverable) return; + setIsClicked(false); + } - // We can't use class properties because they don't get listed in the - // class prototype and break stuff like Sinon stubs + if (type === 'click') { + setIsClicked(true); + } + onToggle(newExpanded); + } + }; + }; - createClass(Popper, [{ - key: 'update', - value: function update$$1() { - return update.call(this); - } - }, { - key: 'destroy', - value: function destroy$$1() { - return destroy.call(this); - } - }, { - key: 'enableEventListeners', - value: function enableEventListeners$$1() { - return enableEventListeners.call(this); + var width = expanded ? expandedWidth : undefined; + return /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-CollapsibleWrapper", + className: WrapperClass, + style: { + height: height } - }, { - key: 'disableEventListeners', - value: function disableEventListeners$$1() { - return disableEventListeners.call(this); + }, /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Collapsible" + }, baseProps, { + "data-layer": true, + className: classes, + style: { + width: width } + }), /*#__PURE__*/React.createElement("div", { + className: BodyClass, + "data-test": "DesignSystem-CollapsibleBody", + onMouseEnter: onToggleHandler(true, 'mouseenter'), + onMouseLeave: onToggleHandler(false, 'mouseleave'), + ref: ref + }, children), withTrigger && /*#__PURE__*/React.createElement("div", { + role: "button", + tabIndex: 0, + className: FooterClass, + "data-test": "DesignSystem-Collapsible--Footer", + onClick: onToggleHandler(!expanded, 'click'), + onKeyDown: onToggleHandler(!expanded, 'click') + }, /*#__PURE__*/React.createElement(Icon, { + name: expanded ? 'keyboard_arrow_left' : 'keyboard_arrow_right', + "data-test": "DesignSystem-Collapsible--FooterIcon", + className: "px-6 py-4 my-2 cursor-pointer", + size: 16 + })))); +}; +Collapsible.displayName = 'Collapsible'; +Collapsible.defaultProps = { + expanded: false, + hoverable: true, + height: '100%', + expandedWidth: '240px', + withTrigger: true +}; - /** - * Schedules an update. It will run on the next UI update available. - * @method scheduleUpdate - * @memberof Popper - */ +var Status$1 = function Status(props) { + var type = props.type, + time = props.time, + className = props.className, + _props$readText = props.readText, + readText = _props$readText === void 0 ? 'Read' : _props$readText, + _props$failedText = props.failedText, + failedText = _props$failedText === void 0 ? 'Click to retry' : _props$failedText, + _props$sendingText = props.sendingText, + sendingText = _props$sendingText === void 0 ? 'Sending..' : _props$sendingText; + var baseProps = extractBaseProps(props); + var StatusClass = classnames(_defineProperty$1({}, 'd-flex align-items-center mt-3', true), className); + var TextClass = classnames(_defineProperty$1({}, 'ChatMessage-status', true), className); + var getTime = function getTime(t) { + if (typeof t === 'number') { + var d = new Date(t); + var hours = d.getHours(); + var minutes = d.getMinutes(); + var AMPM = hours < 12 ? 'AM' : 'PM'; + var hrs = hours % 12 || 12; + return "".concat(hrs, ":").concat(minutes, " ").concat(AMPM); + } - /** - * Collection of utilities useful when writing custom modifiers. - * Starting from version 1.7, this method is available only if you - * include `popper-utils.js` before `popper.js`. - * - * **DEPRECATION**: This way to access PopperUtils is deprecated - * and will be removed in v2! Use the PopperUtils module directly instead. - * Due to the high instability of the methods contained in Utils, we can't - * guarantee them to follow semver. Use them at your own risk! - * @static - * @private - * @type {Object} - * @deprecated since version 1.8 - * @member Utils - * @memberof Popper - */ + return t; + }; - }]); - return Popper; -}(); + switch (type) { + case 'failed': + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: StatusClass + }), /*#__PURE__*/React.createElement(Icon, { + name: "error", + type: "outlined", + appearance: "destructive" + }), /*#__PURE__*/React.createElement(Text, { + appearance: "destructive", + size: "small", + className: "ml-1" + }, "Failed"), /*#__PURE__*/React.createElement(MetaList, { + list: [{ + label: failedText + }], + seperator: true + })); -/** - * The `referenceObject` is an object that provides an interface compatible with Popper.js - * and lets you use it as replacement of a real DOM node.
- * You can use this method to position a popper relatively to a set of coordinates - * in case you don't have a DOM node to use as reference. - * - * ``` - * new Popper(referenceObject, popperNode); - * ``` - * - * NB: This feature isn't supported in Internet Explorer 10. - * @name referenceObject - * @property {Function} data.getBoundingClientRect - * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method. - * @property {number} data.clientWidth - * An ES6 getter that will return the width of the virtual reference element. - * @property {number} data.clientHeight - * An ES6 getter that will return the height of the virtual reference element. - */ + case 'urgent': + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: StatusClass + }), /*#__PURE__*/React.createElement(Icon, { + name: "notification_important", + type: "outlined", + appearance: "destructive" + }), /*#__PURE__*/React.createElement(Text, { + appearance: "destructive", + size: "small", + className: "ml-1" + }, "Urgent"), time && /*#__PURE__*/React.createElement(MetaList, { + list: [{ + label: getTime(time) + }], + seperator: true + })); + + case 'read': + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: StatusClass + }), time && /*#__PURE__*/React.createElement(Text, { + appearance: "subtle", + size: "small" + }, getTime(time)), /*#__PURE__*/React.createElement(MetaList, { + list: [{ + label: readText + }], + seperator: true + })); + case 'sending': + return /*#__PURE__*/React.createElement(Text, _extends$2({}, baseProps, { + appearance: "subtle", + size: "small", + className: TextClass + }), sendingText); -Popper$1.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils; -Popper$1.placements = placements; -Popper$1.Defaults = Defaults; + case 'sent': + return /*#__PURE__*/React.createElement(React.Fragment, null, time && /*#__PURE__*/React.createElement(Text, _extends$2({}, baseProps, { + appearance: "subtle", + size: "small", + className: TextClass + }), getTime(time))); -var PopperJS = Popper$1; + default: + return null; + } +}; +Status$1.displayName = 'Status'; -/** @license React v16.13.1 - * react-is.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ -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? -Symbol.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; -function 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}var AsyncMode=l;var ConcurrentMode=m;var ContextConsumer=k;var ContextProvider=h;var Element=c;var ForwardRef=n;var Fragment=e;var Lazy=t;var Memo=r;var Portal=d; -var Profiler=g;var StrictMode=f;var Suspense=p;var isAsyncMode=function(a){return A(a)||z(a)===l};var isConcurrentMode=A;var isContextConsumer=function(a){return z(a)===k};var isContextProvider=function(a){return z(a)===h};var isElement=function(a){return "object"===typeof a&&null!==a&&a.$$typeof===c};var isForwardRef=function(a){return z(a)===n};var isFragment=function(a){return z(a)===e};var isLazy=function(a){return z(a)===t}; -var isMemo=function(a){return z(a)===r};var isPortal=function(a){return z(a)===d};var isProfiler=function(a){return z(a)===g};var isStrictMode=function(a){return z(a)===f};var isSuspense=function(a){return z(a)===p}; -var 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)};var typeOf=z; +var Box = function Box(props) { + var _classNames; -var reactIs_production_min = { - AsyncMode: AsyncMode, - ConcurrentMode: ConcurrentMode, - ContextConsumer: ContextConsumer, - ContextProvider: ContextProvider, - Element: Element, - ForwardRef: ForwardRef, - Fragment: Fragment, - Lazy: Lazy, - Memo: Memo, - Portal: Portal, - Profiler: Profiler, - StrictMode: StrictMode, - Suspense: Suspense, - isAsyncMode: isAsyncMode, - isConcurrentMode: isConcurrentMode, - isContextConsumer: isContextConsumer, - isContextProvider: isContextProvider, - isElement: isElement, - isForwardRef: isForwardRef, - isFragment: isFragment, - isLazy: isLazy, - isMemo: isMemo, - isPortal: isPortal, - isProfiler: isProfiler, - isStrictMode: isStrictMode, - isSuspense: isSuspense, - isValidElementType: isValidElementType, - typeOf: typeOf -}; + var children = props.children, + type = props.type, + isTyping = props.isTyping, + statusType = props.statusType, + withStatus = props.withStatus, + onClick = props.onClick, + className = props.className; + var baseProps = extractBaseProps(props); + var MessageClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Box', true), _defineProperty$1(_classNames, "Box--".concat(type), type), _defineProperty$1(_classNames, 'Box--typing', isTyping), _defineProperty$1(_classNames, 'Box--urgent', statusType === 'urgent'), _defineProperty$1(_classNames, "Box-".concat(type, "--withStatus"), withStatus || isTyping), _classNames), className); + /* TODO(a11y): fix accessibility */ -var reactIs_development = createCommonjsModule(function (module, exports) { -}); -reactIs_development.AsyncMode; -reactIs_development.ConcurrentMode; -reactIs_development.ContextConsumer; -reactIs_development.ContextProvider; -reactIs_development.Element; -reactIs_development.ForwardRef; -reactIs_development.Fragment; -reactIs_development.Lazy; -reactIs_development.Memo; -reactIs_development.Portal; -reactIs_development.Profiler; -reactIs_development.StrictMode; -reactIs_development.Suspense; -reactIs_development.isAsyncMode; -reactIs_development.isConcurrentMode; -reactIs_development.isContextConsumer; -reactIs_development.isContextProvider; -reactIs_development.isElement; -reactIs_development.isForwardRef; -reactIs_development.isFragment; -reactIs_development.isLazy; -reactIs_development.isMemo; -reactIs_development.isPortal; -reactIs_development.isProfiler; -reactIs_development.isStrictMode; -reactIs_development.isSuspense; -reactIs_development.isValidElementType; -reactIs_development.typeOf; + /* eslint-disable */ -createCommonjsModule(function (module) { + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: MessageClass, + onClick: onClick, + "data-test": "DesignSystem-ChatMessage--Box" + }), children); + /* eslint-enable */ +}; +Box.displayName = 'Box'; -{ - module.exports = reactIs_production_min; -} -}); +var MessageText = function MessageText(props) { + var text = props.text, + type = props.type, + isTyping = props.isTyping, + typingText = props.typingText, + statusType = props.statusType, + className = props.className; + var baseProps = extractBaseProps(props); -/* -object-assign -(c) Sindre Sorhus -@license MIT -*/ -/* eslint-disable no-unused-vars */ -var getOwnPropertySymbols = Object.getOwnPropertySymbols; -var hasOwnProperty = Object.prototype.hasOwnProperty; -var propIsEnumerable = Object.prototype.propertyIsEnumerable; + if (isTyping && type === 'incoming') { + return /*#__PURE__*/React.createElement(Text, _extends$2({}, baseProps, { + appearance: 'subtle', + size: 'small', + className: className + }), typingText); + } -function toObject(val) { - if (val === null || val === undefined) { - throw new TypeError('Object.assign cannot be called with null or undefined'); - } + return /*#__PURE__*/React.createElement(Text, _extends$2({}, baseProps, { + className: className, + appearance: statusType === 'sending' ? 'subtle' : 'default' + }), text); +}; +MessageText.defaultProps = { + text: '', + typingText: 'Typing..' +}; +MessageText.displayName = 'MessageText'; - return Object(val); -} +var ChatMessage = function ChatMessage(props) { + var type = props.type, + text = props.text, + isTyping = props.isTyping, + typingText = props.typingText, + statusOptions = props.statusOptions, + onClick = props.onClick, + className = props.className; + var baseProps = extractBaseProps(props); -function shouldUseNative() { - try { - if (!Object.assign) { - return false; - } + var _ref = statusOptions || {}, + statusType = _ref.type; - // Detect buggy property enumeration order in older V8 versions. + return /*#__PURE__*/React.createElement(Box, _extends$2({}, baseProps, { + type: type, + className: className, + onClick: onClick, + isTyping: isTyping, + statusType: statusType, + withStatus: statusOptions !== undefined + }), /*#__PURE__*/React.createElement(MessageText, { + type: type, + text: text, + typingText: typingText, + isTyping: isTyping, + statusType: statusType + }), !isTyping && statusOptions && /*#__PURE__*/React.createElement(Status$1, statusOptions)); +}; +ChatMessage.displayName = 'ChatMessage'; - // https://bugs.chromium.org/p/v8/issues/detail?id=4118 - var test1 = new String('abc'); // eslint-disable-line no-new-wrappers - test1[5] = 'de'; - if (Object.getOwnPropertyNames(test1)[0] === '5') { - return false; - } +var EmptyStateContext = /*#__PURE__*/React.createContext({}); - // https://bugs.chromium.org/p/v8/issues/detail?id=3056 - var test2 = {}; - for (var i = 0; i < 10; i++) { - test2['_' + String.fromCharCode(i)] = i; - } - var order2 = Object.getOwnPropertyNames(test2).map(function (n) { - return test2[n]; - }); - if (order2.join('') !== '0123456789') { - return false; - } +var _excluded$t = ["children", "maxHeight", "height", "minHeight", "src", "alt", "className"]; +var imageHeight$1 = { + standard: '200px', + compressed: '150px', + tight: '100px', + large: '200px', + small: '200px' +}; - // https://bugs.chromium.org/p/v8/issues/detail?id=3056 - var test3 = {}; - 'abcdefghijklmnopqrst'.split('').forEach(function (letter) { - test3[letter] = letter; - }); - if (Object.keys(Object.assign({}, test3)).join('') !== - 'abcdefghijklmnopqrst') { - return false; - } +var EmptyStateImage = function EmptyStateImage(props) { + var _classNames2; - return true; - } catch (err) { - // We don't expect any of the above to throw, but better to be safe. - return false; - } -} + var children = props.children, + maxHeight = props.maxHeight, + height = props.height, + minHeight = props.minHeight, + src = props.src, + alt = props.alt, + className = props.className, + rest = _objectWithoutProperties(props, _excluded$t); + + var contextProp = React__default.useContext(EmptyStateContext); + var imageClasses = classnames(_defineProperty$1({}, 'EmptyState-image', true), className); + var imageWrapperClasses = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'd-flex', true), _defineProperty$1(_classNames2, 'justify-content-center', true), _classNames2), className); + var _contextProp$size = contextProp.size, + size = _contextProp$size === void 0 ? 'standard' : _contextProp$size; + var sizeStyle = { + maxHeight: maxHeight !== null && maxHeight !== void 0 ? maxHeight : imageHeight$1[size], + height: height, + minHeight: minHeight + }; -shouldUseNative() ? Object.assign : function (target, source) { - var from; - var to = toObject(target); - var symbols; + if (children) { + return /*#__PURE__*/React__default.createElement("div", _extends$2({}, rest, { + className: imageWrapperClasses, + style: _objectSpread2({}, sizeStyle) + }), children); + } - for (var s = 1; s < arguments.length; s++) { - from = Object(arguments[s]); + return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, src && /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement("img", _extends$2({ + className: imageClasses, + src: src, + alt: alt, + style: _objectSpread2({}, sizeStyle), + "data-test": "DesignSystem-EmptyState--Img" + }, rest)))); +}; - for (var key in from) { - if (hasOwnProperty.call(from, key)) { - to[key] = from[key]; - } - } +var _excluded$s = ["children", "className"]; - if (getOwnPropertySymbols) { - symbols = getOwnPropertySymbols(from); - for (var i = 0; i < symbols.length; i++) { - if (propIsEnumerable.call(from, symbols[i])) { - to[symbols[i]] = from[symbols[i]]; - } - } - } - } +var EmptyStateTitle = function EmptyStateTitle(props) { + var _classNames; + + var children = props.children, + className = props.className, + rest = _objectWithoutProperties(props, _excluded$s); + + var contextProp = React__default.useContext(EmptyStateContext); + var _contextProp$size = contextProp.size, + size = _contextProp$size === void 0 ? 'standard' : _contextProp$size; + var headingClass = classnames((_classNames = {}, _defineProperty$1(_classNames, "EmptyState-text", true), _defineProperty$1(_classNames, "EmptyState-title--".concat(size), true), _classNames), className); + + if (size === 'standard') { + return /*#__PURE__*/React__default.createElement(Heading, _extends$2({ + "data-test": "DesignSystem-EmptyState--Heading", + className: headingClass + }, rest), children); + } - return to; + return /*#__PURE__*/React__default.createElement(Text, _extends$2({ + "data-test": "DesignSystem-EmptyState--Heading", + className: headingClass, + weight: "medium", + size: textSize[size] + }, rest), children); }; -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ +var _excluded$r = ["children", "className"]; -var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; +var EmptyStateDescription = function EmptyStateDescription(props) { + var _classNames; -var ReactPropTypesSecret_1 = ReactPropTypesSecret; + var children = props.children, + className = props.className, + rest = _objectWithoutProperties(props, _excluded$r); + + var contextProp = React__default.useContext(EmptyStateContext); + var _contextProp$size = contextProp.size, + size = _contextProp$size === void 0 ? 'standard' : _contextProp$size; + var textSize = { + standard: 'regular', + compressed: 'regular', + tight: 'small' + }; + var descriptionClasses = classnames((_classNames = {}, _defineProperty$1(_classNames, "EmptyState-text", true), _defineProperty$1(_classNames, 'mt-3', true), _classNames), className); + return /*#__PURE__*/React__default.createElement(Text, _extends$2({ + size: textSize[size], + appearance: "subtle", + className: descriptionClasses, + "data-test": "DesignSystem-EmptyState--Text" + }, rest), children); +}; -Function.call.bind(Object.prototype.hasOwnProperty); +var _excluded$q = ["children", "className"]; -function emptyFunction() {} -function emptyFunctionWithReset() {} -emptyFunctionWithReset.resetWarningCache = emptyFunction; +var EmptyStateActions = function EmptyStateActions(props) { + var _classNames; -var factoryWithThrowingShims = function() { - function shim(props, propName, componentName, location, propFullName, secret) { - if (secret === ReactPropTypesSecret_1) { - // It is still safe when called from React. - return; - } - var err = new Error( - 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' + - 'Use PropTypes.checkPropTypes() to call them. ' + - 'Read more at http://fb.me/use-check-prop-types' - ); - err.name = 'Invariant Violation'; - throw err; - } shim.isRequired = shim; - function getShim() { - return shim; - } // Important! - // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`. - var ReactPropTypes = { - array: shim, - bool: shim, - func: shim, - number: shim, - object: shim, - string: shim, - symbol: shim, + var children = props.children, + className = props.className, + rest = _objectWithoutProperties(props, _excluded$q); + + var contextProp = React__default.useContext(EmptyStateContext); + var _contextProp$size = contextProp.size, + size = _contextProp$size === void 0 ? 'standard' : _contextProp$size; + var actionWrapperClasses = classnames((_classNames = {}, _defineProperty$1(_classNames, "EmptyState-actions--".concat(size), true), _defineProperty$1(_classNames, 'EmptyState-actions', true), _classNames), className); + return /*#__PURE__*/React__default.createElement("div", _extends$2({ + "data-test": "DesignSystem-EmptyState--Actions", + className: actionWrapperClasses + }, rest), children); +}; - any: shim, - arrayOf: getShim, - element: shim, - elementType: shim, - instanceOf: getShim, - node: shim, - objectOf: getShim, - oneOf: getShim, - oneOfType: getShim, - shape: getShim, - exact: getShim, +var imageHeight = { + large: '256px', + small: '128px', + standard: '256px', + compressed: '256px', + tight: '256px' +}; +var templateWidth = { + standard: '480px', + compressed: '400px', + tight: '320px', + large: '480px', + small: '480px' +}; +var HeadingSize = { + large: 'l', + small: 'm', + standard: 'l', + compressed: 'l', + tight: 'l' +}; +var textSize = { + large: 'large', + small: 'regular', + standard: 'large', + compressed: 'large', + tight: 'regular' +}; +var EmptyState = function EmptyState(props) { + var _classNames3, _classNames4; - checkPropTypes: emptyFunctionWithReset, - resetWarningCache: emptyFunction - }; + var imageSrc = props.imageSrc, + title = props.title, + description = props.description, + _props$size = props.size, + size = _props$size === void 0 ? 'standard' : _props$size, + children = props.children, + className = props.className, + image = props.image, + maxWidth = props.maxWidth, + minWidth = props.minWidth, + width = props.width; + var baseProps = extractBaseProps(props); + var templateSize = 'standard'; - ReactPropTypes.PropTypes = ReactPropTypes; + var isValidSize = function isValidSize(size) { + return size === 'large' || size === 'small'; + }; - return ReactPropTypes; -}; + if (title || description) { + templateSize = isValidSize(size) ? size : 'large'; + } else { + templateSize = isValidSize(size) ? 'standard' : size; + } -var propTypes = createCommonjsModule(function (module) { -/** - * Copyright (c) 2013-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ + var wrapperClasses = classnames(_defineProperty$1({}, 'EmptyState', true), className); + var emptyStateWrapper = classnames(_defineProperty$1({}, 'EmptyState-Wrapper', true), className); + var headingClasses = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'EmptyState-title', true), _defineProperty$1(_classNames3, "EmptyState-title--".concat(templateSize), true), _classNames3)); + var textClasses = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'EmptyState-description', true), _defineProperty$1(_classNames4, "EmptyState-description--".concat(templateSize), children !== undefined), _classNames4)); -{ - // By explicitly using `prop-types` you are opting into new production behavior. - // http://fb.me/prop-types-in-prod - module.exports = factoryWithThrowingShims(); -} -}); + if (title || description) { + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-EmptyState" + }, baseProps, { + className: wrapperClasses + }), image && /*#__PURE__*/React.createElement("div", { + style: { + height: imageHeight[templateSize] + } + }, image), imageSrc && !image && + /*#__PURE__*/ + //TODO(a11y) + //eslint-disable-next-line + React.createElement("img", { + src: imageSrc, + height: imageHeight[templateSize], + "data-test": "DesignSystem-EmptyState--Img" + }), title && /*#__PURE__*/React.createElement(Heading, { + "data-test": "DesignSystem-EmptyState--Heading", + size: HeadingSize[templateSize], + className: headingClasses + }, title), description && /*#__PURE__*/React.createElement(Text, { + size: textSize[templateSize], + className: textClasses, + appearance: "subtle", + "data-test": "DesignSystem-EmptyState--Text" + }, description), children && children); + } -var key = '__global_unique_id__'; + var templateMaxWidth = maxWidth ? maxWidth : templateWidth[templateSize]; + var customStyle = { + maxWidth: templateMaxWidth, + minWidth: minWidth, + width: width + }; + return /*#__PURE__*/React.createElement(EmptyStateContext.Provider, { + value: { + size: templateSize, + maxWidth: templateMaxWidth + } + }, /*#__PURE__*/React.createElement("div", { + className: "d-flex justify-content-center align-item-center w-100 h-100" + }, /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-EmptyState--Wrapper", + className: emptyStateWrapper, + style: customStyle + }, baseProps), children))); +}; +EmptyState.displayName = 'EmptyState'; +EmptyState.Title = EmptyStateTitle; +EmptyState.Description = EmptyStateDescription; +EmptyState.Image = EmptyStateImage; +EmptyState.Actions = EmptyStateActions; +EmptyState.defaultProps = { + size: 'standard' +}; -var gud = function() { - return commonjsGlobal[key] = (commonjsGlobal[key] || 0) + 1; +var ModalDescription = function ModalDescription(props) { + var title = props.title, + description = props.description, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classnames({ + 'Modal-description': true + }, className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-ModalDescription" + }, baseProps, { + className: classes + }), title && /*#__PURE__*/React.createElement(Text, { + weight: "strong", + "data-test": "DesignSystem-ModalDescription--Title" + }, title), title && description && /*#__PURE__*/React.createElement("br", null), description && /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-ModalDescription--Description" + }, description)); }; +ModalDescription.displayName = 'ModalDescription'; -/** - * Copyright (c) 2014-present, Facebook, Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ +var Pagination = function Pagination(props) { + var _classNames, _classNames2, _classNames3; -var warning = function() {}; + var type = props.type, + totalPages = props.totalPages, + onPageChange = props.onPageChange, + className = props.className, + pageJumpDebounceDuration = props.pageJumpDebounceDuration; + var baseProps = extractBaseProps(props); -var warning_1 = warning; + var _React$useState = React.useState(props.page), + _React$useState2 = _slicedToArray(_React$useState, 2), + page = _React$useState2[0], + setPage = _React$useState2[1]; -var implementation = createCommonjsModule(function (module, exports) { + var _React$useState3 = React.useState(false), + _React$useState4 = _slicedToArray(_React$useState3, 2), + init = _React$useState4[0], + setInit = _React$useState4[1]; -exports.__esModule = true; + var _React$useState5 = React.useState(0), + _React$useState6 = _slicedToArray(_React$useState5, 2), + debounceCancelCounter = _React$useState6[0], + setDebounceCancelCounter = _React$useState6[1]; + var debouncePageChange = React.useCallback(debounce$1(pageJumpDebounceDuration, onPageChange), [debounceCancelCounter]); + React.useEffect(function () { + setPage(props.page); + }, [props.page]); + var wrapperClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Pagination', true), _defineProperty$1(_classNames, "Pagination--".concat(type), type), _classNames), className); + var nextButtonWrapperClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Pagination-buttonWrapper', true), _defineProperty$1(_classNames2, 'Pagination-buttonWrapper--next', true), _classNames2)); + var prevButtonWrapperClass = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Pagination-buttonWrapper', true), _defineProperty$1(_classNames3, 'Pagination-buttonWrapper--previous', true), _classNames3)); + React.useEffect(function () { + if (init) { + if (page >= 1 && page <= totalPages) { + debouncePageChange(page); + } else { + /** + * On removing a page number on UI via backspace, debounce malfunctions if page is not within desired range. + * Hence, we remove the debounce function via cancel method. + */ + debouncePageChange.cancel(); + /** + * Since debouncePageChange is cached via React.useCallback, + * cancel method above removes the single debounce function instance available. + * To make a new instance available, we have to update the dependency object. + */ + + setDebounceCancelCounter(function (prev) { + return prev + 1; + }); + } + } + }, [page]); + var inputChangeHandler = function inputChangeHandler(e) { + e.preventDefault(); + var val = +e.target.value.trim(); -_interopRequireDefault(React__default); + if (val >= 0 && val <= totalPages) { + if (!init) setInit(true); + setPage(val); + } + }; + var onKeyPressHandler = function onKeyPressHandler(e) { + if (!isNaturalNumber(e.key)) { + e.preventDefault(); + } + }; + var onClickHandler = function onClickHandler(buttonType) { + setInit(true); -var _propTypes2 = _interopRequireDefault(propTypes); + switch (buttonType) { + case 'first': + setPage(1); + break; + + case 'last': + setPage(totalPages); + break; + case 'prev': + if (page > 1) setPage(page - 1); + break; + case 'next': + if (page < totalPages) setPage(page + 1); + break; + } + }; -var _gud2 = _interopRequireDefault(gud); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Pagination" + }, baseProps, { + className: wrapperClass + }), /*#__PURE__*/React.createElement("div", { + className: prevButtonWrapperClass + }, /*#__PURE__*/React.createElement(Button, { + onClick: function onClick() { + return onClickHandler('first'); + }, + disabled: page <= 1, + appearance: "transparent", + icon: "first_page", + "data-test": "DesignSystem-Pagination--FirstButton" + }), /*#__PURE__*/React.createElement(Button, { + onClick: function onClick() { + return onClickHandler('prev'); + }, + disabled: page <= 1, + icon: "navigate_before", + "data-test": "DesignSystem-Pagination--PrevButton", + className: "ml-4 mr-3" + })), type === 'jump' && /*#__PURE__*/React.createElement("div", { + className: "Pagination-pageIndex" + }, /*#__PURE__*/React.createElement(MetricInput, { + name: "page", + className: "Pagination-MetricInput", + onChange: inputChangeHandler, + value: "".concat(isNaturalNumber(page) ? page : ''), + "data-test": "DesignSystem-Pagination--Input", + onKeyPress: onKeyPressHandler + }), /*#__PURE__*/React.createElement(Text, null, " of ".concat(totalPages, " pages"))), /*#__PURE__*/React.createElement("div", { + className: nextButtonWrapperClass + }, /*#__PURE__*/React.createElement(Button, { + onClick: function onClick() { + return onClickHandler('next'); + }, + disabled: page >= totalPages, + icon: "navigate_next", + "data-test": "DesignSystem-Pagination--NextButton", + className: "mr-4 ml-3" + }), /*#__PURE__*/React.createElement(Button, { + onClick: function onClick() { + return onClickHandler('last'); + }, + disabled: page >= totalPages, + appearance: "transparent", + icon: "last_page", + "data-test": "DesignSystem-Pagination--LastButton" + }))); +}; +Pagination.displayName = 'Pagination'; +Pagination.defaultProps = { + type: 'basic', + page: 1, + totalPages: 1, + pageJumpDebounceDuration: 750 +}; +var _excluded$p = ["onChange"]; +var EditableInput = function EditableInput(props) { + var _classNames2, _classNames4; + var error = props.error, + size = props.size, + errorMessage = props.errorMessage, + placeholder = props.placeholder, + inputOptions = props.inputOptions, + disableSaveAction = props.disableSaveAction, + onChange = props.onChange, + className = props.className; -_interopRequireDefault(warning_1); + var onInputChange = inputOptions.onChange, + rest = _objectWithoutProperties(inputOptions, _excluded$p); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + var _React$useState = React.useState(props.value), + _React$useState2 = _slicedToArray(_React$useState, 2), + inputValue = _React$useState2[0], + setInputValue = _React$useState2[1]; -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + var _React$useState3 = React.useState(props.value), + _React$useState4 = _slicedToArray(_React$useState3, 2), + value = _React$useState4[0], + setValue = _React$useState4[1]; -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } + var _React$useState5 = React.useState(false), + _React$useState6 = _slicedToArray(_React$useState5, 2), + editing = _React$useState6[0], + setEditing = _React$useState6[1]; -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } + var _React$useState7 = React.useState(false), + _React$useState8 = _slicedToArray(_React$useState7, 2), + showComponent = _React$useState8[0], + setShowComponent = _React$useState8[1]; -var MAX_SIGNED_31_BIT_INT = 1073741823; + var inputRef = /*#__PURE__*/React.createRef(); + var baseProps = extractBaseProps(props); + var isControlled = props.value !== undefined; + React.useEffect(function () { + if (isControlled) setValue(props.value); + }, [props.value]); + var EditableInputClass = classnames(_defineProperty$1({}, 'EditableInput', true), className); + var EditableDefaultClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'EditableInput-default', true), _defineProperty$1(_classNames2, "EditableInput-default--".concat(size), size), _classNames2)); + var InputClass = classnames(_defineProperty$1({}, 'EditableInput-Input--tiny', size === 'tiny')); + var ActionClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'EditableInput-actions', true), _defineProperty$1(_classNames4, "EditableInput-actions--".concat(size), size), _classNames4)); + + var setDefaultComponent = function setDefaultComponent(updatedValue) { + setInputValue(updatedValue); + setEditing(false); + setShowComponent(false); + }; -// Inlined Object.is polyfill. -// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is -function objectIs(x, y) { - if (x === y) { - return x !== 0 || 1 / x === 1 / y; - } else { - return x !== x && y !== y; - } -} + var onSaveChanges = function onSaveChanges() { + if (!isControlled) setValue(inputValue); + if (onChange) onChange(inputValue || ''); + setDefaultComponent(inputValue); + }; -function createEventEmitter(value) { - var handlers = []; - return { - on: function on(handler) { - handlers.push(handler); - }, - off: function off(handler) { - handlers = handlers.filter(function (h) { - return h !== handler; - }); - }, - get: function get() { - return value; - }, - set: function set(newValue, changedBits) { - value = newValue; - handlers.forEach(function (handler) { - return handler(value, changedBits); - }); - } + var onInputChangeHandler = function onInputChangeHandler(e) { + setInputValue(e.target.value); + if (onInputChange) onInputChange(e); }; -} -function onlyChild(children) { - return Array.isArray(children) ? children[0] : children; -} + var onChangeHandler = function onChangeHandler(eventType) { + switch (eventType) { + case 'edit': + { + var _inputRef$current; -function createReactContext(defaultValue, calculateChangedBits) { - var _Provider$childContex, _Consumer$contextType; + (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus(); + setEditing(true); + setShowComponent(true); + break; + } - var contextProp = '__create-react-context-' + (0, _gud2.default)() + '__'; + case 'hover': + { + setShowComponent(true); + break; + } - var Provider = function (_Component) { - _inherits(Provider, _Component); + case 'default': + { + setShowComponent(false); + } + } + }; - function Provider() { - var _temp, _this, _ret; + var inputComponent = /*#__PURE__*/React.createElement(Input, _extends$2({ + defaultValue: inputValue, + placeholder: placeholder, + className: InputClass // TODO(a11y) + // eslint-disable-next-line jsx-a11y/no-autofocus + , + autoFocus: editing, + size: size, + onChange: onInputChangeHandler, + error: error && editing, + ref: inputRef, + "data-test": "DesignSystem-EditableInput--Input" + }, rest)); - _classCallCheck(this, Provider); + var onKeyDown = function onKeyDown(event) { + if (document.activeElement === inputRef.current) { + switch (event.key) { + case 'Enter': + onSaveChanges(); + break; - for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; + case 'Escape': + setDefaultComponent(value); + break; } - - return _ret = (_temp = (_this = _possibleConstructorReturn(this, _Component.call.apply(_Component, [this].concat(args))), _this), _this.emitter = createEventEmitter(_this.props.value), _temp), _possibleConstructorReturn(_this, _ret); } + }; - Provider.prototype.getChildContext = function getChildContext() { - var _ref; - - return _ref = {}, _ref[contextProp] = this.emitter, _ref; - }; - - Provider.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { - if (this.props.value !== nextProps.value) { - var oldValue = this.props.value; - var newValue = nextProps.value; - var changedBits = void 0; - - if (objectIs(oldValue, newValue)) { - changedBits = 0; // No change - } else { - changedBits = typeof calculateChangedBits === 'function' ? calculateChangedBits(oldValue, newValue) : MAX_SIGNED_31_BIT_INT; + var renderChildren = function renderChildren() { + if (showComponent) { + return error && errorMessage && editing ? /*#__PURE__*/React.createElement(Popover, { + trigger: inputComponent, + position: "right", + className: "px-6 py-6 d-flex align-items-center", + on: "hover" + }, /*#__PURE__*/React.createElement(InlineMessage, { + appearance: "alert", + description: errorMessage + })) : inputComponent; + } - changedBits |= 0; + return /*#__PURE__*/React.createElement("div", { + className: EditableDefaultClass, + "data-test": "DesignSystem-EditableInput--Default" + }, value || placeholder); + }; - if (changedBits !== 0) { - this.emitter.set(nextProps.value, changedBits); - } - } - } - }; + return ( + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line jsx-a11y/no-static-element-interactions + React.createElement("div", _extends$2({ + "data-test": "DesignSystem-EditableInput" + }, baseProps, { + className: EditableInputClass, + onKeyDown: onKeyDown + }), /*#__PURE__*/React.createElement(Editable, { + onChange: onChangeHandler, + editing: editing + }, renderChildren()), editing && /*#__PURE__*/React.createElement("div", { + className: ActionClass, + "data-test": "DesignSystem-EditableInput--Actions" + }, /*#__PURE__*/React.createElement(Button, { + icon: "clear", + className: "mr-3", + largeIcon: true, + size: "tiny", + onClick: function onClick() { + setDefaultComponent(value); + }, + "data-test": "DesignSystem-EditableInput--Discard" + }), /*#__PURE__*/React.createElement(Button, { + icon: "check", + appearance: "primary", + largeIcon: true, + size: "tiny", + disabled: disableSaveAction, + onClick: onSaveChanges, + "data-test": "DesignSystem-EditableInput--Save" + }))) + ); +}; +EditableInput.defaultProps = { + size: 'regular', + placeholder: '', + inputOptions: {} +}; - Provider.prototype.render = function render() { - return this.props.children; - }; +var _excluded$o = ["onChange", "chipOptions"], + _excluded2$2 = ["onClick"]; +var EditableChipInput = function EditableChipInput(props) { + var _classNames3; - return Provider; - }(React__default.Component); + var placeholder = props.placeholder, + onChange = props.onChange, + className = props.className, + disableSaveAction = props.disableSaveAction, + chipInputOptions = props.chipInputOptions; - Provider.childContextTypes = (_Provider$childContex = {}, _Provider$childContex[contextProp] = _propTypes2.default.object.isRequired, _Provider$childContex); + var onChipInputChange = chipInputOptions.onChange, + _chipInputOptions$chi = chipInputOptions.chipOptions, + chipOptions = _chipInputOptions$chi === void 0 ? {} : _chipInputOptions$chi, + rest = _objectWithoutProperties(chipInputOptions, _excluded$o); - var Consumer = function (_Component2) { - _inherits(Consumer, _Component2); + var _onClick = chipOptions.onClick, + chipObject = _objectWithoutProperties(chipOptions, _excluded2$2); - function Consumer() { - var _temp2, _this2, _ret2; + var _React$useState = React.useState(props.value), + _React$useState2 = _slicedToArray(_React$useState, 2), + inputValue = _React$useState2[0], + setInputValue = _React$useState2[1]; - _classCallCheck(this, Consumer); + var _React$useState3 = React.useState(props.value), + _React$useState4 = _slicedToArray(_React$useState3, 2), + value = _React$useState4[0], + setValue = _React$useState4[1]; - for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { - args[_key2] = arguments[_key2]; - } + var _React$useState5 = React.useState(false), + _React$useState6 = _slicedToArray(_React$useState5, 2), + showComponent = _React$useState6[0], + setShowComponent = _React$useState6[1]; - return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, _Component2.call.apply(_Component2, [this].concat(args))), _this2), _this2.state = { - value: _this2.getValue() - }, _this2.onUpdate = function (newValue, changedBits) { - var observedBits = _this2.observedBits | 0; - if ((observedBits & changedBits) !== 0) { - _this2.setState({ value: _this2.getValue() }); - } - }, _temp2), _possibleConstructorReturn(_this2, _ret2); + var baseProps = extractBaseProps(props); + var isWithChips = inputValue && inputValue.length; + var isControlled = props.value !== undefined; + React.useEffect(function () { + if (isControlled) { + setInputValue(props.value); + setValue(props.value); } + }, [props.value]); + var classes = classnames(_defineProperty$1({}, 'EditableChipInput', true), className); + var actionClass = classnames(_defineProperty$1({}, 'EditableChipInput-actions', true)); + var defaultClasses = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'EditableChipInput-default', !isWithChips), _defineProperty$1(_classNames3, 'EditableChipInput-defaultWithChips', isWithChips), _classNames3)); + var inputClass = classnames(_defineProperty$1({}, 'EditableChipInput-chipInput', true)); - Consumer.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { - var observedBits = nextProps.observedBits; + var onChipInputChangeHandler = function onChipInputChangeHandler(val) { + setInputValue(val); + if (onChipInputChange) onChipInputChange(val); + }; - this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default - : observedBits; - }; + var setDefaultComponent = function setDefaultComponent(updatedValue) { + setInputValue(updatedValue); + setShowComponent(false); + }; - Consumer.prototype.componentDidMount = function componentDidMount() { - if (this.context[contextProp]) { - this.context[contextProp].on(this.onUpdate); - } - var observedBits = this.props.observedBits; + var onSaveChanges = function onSaveChanges() { + if (!isControlled) setValue(inputValue); + if (onChange && inputValue) onChange(inputValue); + setDefaultComponent(inputValue); + }; - this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default - : observedBits; - }; + var onChangeHandler = function onChangeHandler(eventType) { + switch (eventType) { + case 'edit': + { + setShowComponent(true); + break; + } - Consumer.prototype.componentWillUnmount = function componentWillUnmount() { - if (this.context[contextProp]) { - this.context[contextProp].off(this.onUpdate); - } - }; + case 'hover': + { + break; + } - Consumer.prototype.getValue = function getValue() { - if (this.context[contextProp]) { - return this.context[contextProp].get(); - } else { - return defaultValue; - } - }; + case 'default': + { + setShowComponent(false); + break; + } + } + }; - Consumer.prototype.render = function render() { - return onlyChild(this.props.children)(this.state.value); - }; + var onChipDelete = function onChipDelete(index) { + if (value) { + var updatedValue = _toConsumableArray(value); - return Consumer; - }(React__default.Component); + updatedValue.splice(index, 1); - Consumer.contextTypes = (_Consumer$contextType = {}, _Consumer$contextType[contextProp] = _propTypes2.default.object, _Consumer$contextType); + if (!isControlled) { + setInputValue(updatedValue); + setValue(updatedValue); + } + if (onChange) onChange(updatedValue); + } + }; - return { - Provider: Provider, - Consumer: Consumer + var renderDefaultState = function renderDefaultState() { + if (inputValue && inputValue.length) { + return inputValue.map(function (val, index) { + return /*#__PURE__*/React.createElement(Chip, _extends$2({ + "data-test": "DesignSystem-EditableChipInput--Chip", + key: index, + name: val, + label: val, + className: "my-2 mx-2" + }, chipObject, { + onClose: function onClose() { + return onChipDelete(index); + }, + onClick: function onClick() { + return _onClick && _onClick(val, index); + } + })); + }); + } + + return /*#__PURE__*/React.createElement(Text, { + className: "pt-1" + }, placeholder); }; -} -exports.default = createReactContext; -module.exports = exports['default']; -}); + var renderChildren = function renderChildren() { + if (showComponent) { + return /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-EditableChipInput--wrapper" + }, /*#__PURE__*/React.createElement(ChipInput, _extends$2({ + "data-test": "DesignSystem-EditableChipInput--ChipInput", + placeholder: placeholder, + onChange: onChipInputChangeHandler, + value: inputValue, + chipOptions: chipOptions + }, rest, { + className: inputClass + }))); + } -unwrapExports(implementation); + return /*#__PURE__*/React.createElement("div", { + className: defaultClasses, + "data-test": "DesignSystem-EditableChipInput--Default" + }, renderDefaultState()); + }; -var lib = createCommonjsModule(function (module, exports) { + return /*#__PURE__*/React.createElement("div", _extends$2({ + className: classes, + "data-test": "DesignSystem-EditableChipInput" + }, baseProps), /*#__PURE__*/React.createElement(Editable, { + onChange: onChangeHandler, + editing: showComponent + }, renderChildren()), showComponent && /*#__PURE__*/React.createElement("div", { + className: actionClass, + "data-test": "DesignSystem-EditableChipInput--Actions" + }, /*#__PURE__*/React.createElement(Button, { + "data-test": "DesignSystem-EditableChipInput--DiscardButton", + icon: "clear", + className: "mr-3", + size: "tiny", + onClick: function onClick() { + setDefaultComponent(value); + } + }), /*#__PURE__*/React.createElement(Button, { + "data-test": "DesignSystem-EditableChipInput--SaveButton", + icon: "check", + appearance: "primary", + size: "tiny", + disabled: disableSaveAction, + onClick: onSaveChanges + }))); +}; +EditableChipInput.defaultProps = { + placeholder: '', + chipInputOptions: {} +}; -exports.__esModule = true; +var ProgressRing = function ProgressRing(props) { + var size = props.size, + max = props.max, + value = props.value, + className = props.className; + var baseProps = extractBaseProps(props); + var radius = 20; + var circumference = 2 * Math.PI * radius; + var ProgressRingClass = classnames(_defineProperty$1({ + Ring: true + }, "Ring--".concat(size), size), className); + var svgProps = { + viewBox: '0 0 50 50' + }; + var updatedValue = value > 0 ? Math.min(value, max) * 100 / max : 0; + var circleProps = { + cx: 25, + cy: 25, + r: radius, + fill: 'none', + strokeWidth: '8', + strokeDasharray: "".concat(circumference, " ").concat(circumference) + }; + return /*#__PURE__*/React.createElement("svg", _extends$2({ + "data-test": "DesignSystem-ProgressRing" + }, baseProps, { + className: ProgressRingClass + }, svgProps), /*#__PURE__*/React.createElement("circle", _extends$2({ + className: "Ring-background" + }, circleProps)), /*#__PURE__*/React.createElement("circle", _extends$2({ + className: "Ring-indicator", + strokeDashoffset: circumference - updatedValue / 100 * circumference + }, circleProps, { + "data-test": "DesignSystem-ProgressRing--Circle" + }))); +}; +ProgressRing.displayName = 'ProgressRing'; +ProgressRing.defaultProps = { + size: 'regular', + max: 100 +}; +var Step = function Step(props) { + var _classNames; + var label = props.label, + value = props.value, + disabled = props.disabled, + active = props.active, + completed = props.completed, + onChange = props.onChange; + var StepClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Step', true), _defineProperty$1(_classNames, 'Stepper-animate', true), _defineProperty$1(_classNames, 'Step--active', active), _defineProperty$1(_classNames, 'Step--disabled', disabled), _defineProperty$1(_classNames, 'Step--completed', completed), _classNames)); -var _react2 = _interopRequireDefault(React__default); + var onClickHandle = function onClickHandle() { + if (disabled) return; + if (onChange) onChange(label, value); + }; + var onKeyDownHandler = function onKeyDownHandler(event) { + if (event.key === 'Enter') { + onClickHandle(); + } + }; + var textColor = active ? 'primary-dark' : disabled ? 'inverse-lightest' : 'inverse'; + return ( + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement("div", { + "data-test": "DesignSystem-Step", + className: StepClass, + onKeyDown: function onKeyDown(e) { + return onKeyDownHandler(e); + }, + onClick: onClickHandle, + tabIndex: disabled ? -1 : 0 + }, /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-Step--Icon", + name: completed ? 'check_circle' : 'radio_button_unchecked', + className: "mr-3 my-4 Stepper-animate" + }), label && /*#__PURE__*/React.createElement(Text, { + weight: "medium", + color: textColor, + className: "Stepper-animate Stepper-text" + }, label)) + ); +}; +Step.displayName = 'Step'; -var _implementation2 = _interopRequireDefault(implementation); +var Stepper = function Stepper(props) { + var steps = props.steps, + active = props.active, + completed = props.completed, + onChange = props.onChange, + className = props.className, + skipIndexes = props.skipIndexes; + var baseProps = extractBaseProps(props); -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + var onChangeHandler = function onChangeHandler(index, stepLabel, stepValue) { + if (onChange) onChange(index, completed, stepLabel, stepValue); + }; -exports.default = _react2.default.createContext || _implementation2.default; -module.exports = exports['default']; -}); + var StepperClass = classnames(_defineProperty$1({}, 'Stepper', true), className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Stepper" + }, baseProps, { + className: StepperClass + }), steps.map(function (step, index) { + var label = step.label, + value = step.value; + var isSkipped = skipIndexes.includes(index); + var activeStep = active === index; + var completedStep = !isSkipped && completed >= index; + var disabled = !activeStep && !isSkipped && completed + 1 < index; + return /*#__PURE__*/React.createElement(Step, { + key: index, + label: label, + value: value, + active: activeStep, + completed: completedStep, + disabled: disabled, + onChange: function onChange(steplabel, stepvalue) { + return onChangeHandler(index, steplabel, stepvalue); + } + }); + })); +}; +Stepper.displayName = 'Stepper'; +Stepper.defaultProps = { + completed: -1, + active: 0, + skipIndexes: [] +}; -var createContext = unwrapExports(lib); +var Trigger = function Trigger(props) { + var inputFormat = props.inputFormat, + startInputOptions = props.startInputOptions, + endInputOptions = props.endInputOptions, + validators = props.validators, + state = props.state, + setState = props.setState; + var init = state.init, + startDate = state.startDate, + endDate = state.endDate, + startError = state.startError, + endError = state.endError; -var ManagerReferenceNodeContext = createContext(); -var ManagerReferenceNodeSetterContext = createContext(); + var updateNav = function updateNav(type) { + if (type === 'start') { + var _getDateInfo = getDateInfo(startDate), + year = _getDateInfo.year, + month = _getDateInfo.month; -var Manager = -/*#__PURE__*/ -function (_React$Component) { - _inheritsLoose(Manager, _React$Component); + setState({ + yearNav: year, + monthNav: month + }); + } - function Manager() { - var _this; + if (type === 'end') { + var _getDateInfo2 = getDateInfo(endDate), + _year = _getDateInfo2.year, + _month = _getDateInfo2.month; - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; + setState({ + yearNav: _year, + monthNav: _month + }); } + }; - _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this; + var onPasteHandler = function onPasteHandler(_e, val, type) { + setState({ + open: true + }); - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "referenceNode", void 0); + if (type === 'start') { + var placeholderChar = startInputOptions.placeholderChar || '_'; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "setReferenceNode", function (newReferenceNode) { - if (newReferenceNode && _this.referenceNode !== newReferenceNode) { - _this.referenceNode = newReferenceNode; + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); - _this.forceUpdate(); + if (d) { + setState({ + startDate: d + }); + + if (endDate) { + var _getDateInfo3 = getDateInfo(endDate), + eYear = _getDateInfo3.year, + eMonth = _getDateInfo3.month, + eDate = _getDateInfo3.date; + + if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { + setState({ + endDate: undefined + }); + } + } + + if (startInputOptions.onPaste) startInputOptions.onPaste(_e, val); + } } - }); + } - return _this; - } + if (type === 'end') { + var _placeholderChar = endInputOptions.placeholderChar ? endInputOptions.placeholderChar : '_'; - var _proto = Manager.prototype; + if (val && !val.includes(_placeholderChar)) { + var _d = translateToDate(inputFormat, val, validators); - _proto.componentWillUnmount = function componentWillUnmount() { - this.referenceNode = null; + if (_d) { + setState({ + endDate: _d + }); + if (endInputOptions.onPaste) endInputOptions.onPaste(_e, val); + } + } + } }; - _proto.render = function render() { - return React.createElement(ManagerReferenceNodeContext.Provider, { - value: this.referenceNode - }, React.createElement(ManagerReferenceNodeSetterContext.Provider, { - value: this.setReferenceNode - }, this.props.children)); - }; + var onChangeHandler = function onChangeHandler(_e, val, type) { + setState({ + open: true + }); - return Manager; -}(React.Component); + if (type === 'start') { + var placeholderChar = startInputOptions.placeholderChar || '_'; -/** - * Takes an argument and if it's an array, returns the first item in the array, - * otherwise returns the argument. Used for Preact compatibility. - */ -var unwrapArray = function unwrapArray(arg) { - return Array.isArray(arg) ? arg[0] : arg; -}; -/** - * Takes a maybe-undefined function and arbitrary args and invokes the function - * only if it is defined. - */ + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); -var safeInvoke = function safeInvoke(fn) { - if (typeof fn === "function") { - for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - args[_key - 1] = arguments[_key]; - } + if (d && !isNaN(d.getTime())) { + setState({ + startDate: d + }); - return fn.apply(void 0, args); - } -}; -/** - * Sets a ref using either a ref callback or a ref object - */ + if (endDate) { + var _getDateInfo4 = getDateInfo(endDate), + eYear = _getDateInfo4.year, + eMonth = _getDateInfo4.month, + eDate = _getDateInfo4.date; -var setRef = function setRef(ref, node) { - // if its a function call it - if (typeof ref === "function") { - return safeInvoke(ref, node); - } // otherwise we should treat it as a ref object - else if (ref != null) { - ref.current = node; + if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { + setState({ + endDate: undefined + }); + } + } + } + } } -}; -var initialStyle = { - position: 'absolute', - top: 0, - left: 0, - opacity: 0, - pointerEvents: 'none' -}; -var initialArrowStyle = {}; -var InnerPopper = -/*#__PURE__*/ -function (_React$Component) { - _inheritsLoose(InnerPopper, _React$Component); + if (type === 'end') { + var _placeholderChar2 = endInputOptions.placeholderChar ? endInputOptions.placeholderChar : '_'; - function InnerPopper() { - var _this; + if (val && !val.includes(_placeholderChar2)) { + var _d2 = translateToDate(inputFormat, val, validators); - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; + if (_d2 && !isNaN(_d2.getTime())) setState({ + endDate: _d2 + }); + } } + }; - _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this; - - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "state", { - data: undefined, - placement: undefined + var onBlurHandler = function onBlurHandler(_e, val, type) { + setState({ + init: true }); + var hasNumber = /\d/; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "popperInstance", void 0); + if (type === 'start') { + var _startInputOptions$pl = startInputOptions.placeholderChar, + placeholderChar = _startInputOptions$pl === void 0 ? '_' : _startInputOptions$pl; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "popperNode", null); + if (val && hasNumber.test(val) && val.includes(placeholderChar)) { + setState({ + startError: true + }); + } else if (val && !hasNumber.test(val) || !val) { + setState({ + startError: false + }); + } - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "arrowNode", null); + if (!val || val.includes(placeholderChar)) setState({ + startDate: undefined + }); + } - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "setPopperNode", function (popperNode) { - if (!popperNode || _this.popperNode === popperNode) return; - setRef(_this.props.innerRef, popperNode); - _this.popperNode = popperNode; + if (type === 'end') { + var _endInputOptions$plac = endInputOptions.placeholderChar, + _placeholderChar3 = _endInputOptions$plac === void 0 ? '_' : _endInputOptions$plac; - _this.updatePopperInstance(); - }); + if (val && hasNumber.test(val) && val.includes(_placeholderChar3)) { + setState({ + endError: true + }); + } else if (val && !hasNumber.test(val) || !val) { + setState({ + endError: false + }); + } - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "setArrowNode", function (arrowNode) { - _this.arrowNode = arrowNode; + if (!val || val.includes(_placeholderChar3)) setState({ + endDate: undefined + }); + } + }; + + var onClearHandler = function onClearHandler(type) { + setState({ + init: true }); - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "updateStateModifier", { - enabled: true, - order: 900, - fn: function fn(data) { - var placement = data.placement; + if (type === 'start') { + setState({ + startDate: undefined + }); + updateNav('end'); + } - _this.setState({ - data: data, - placement: placement - }); + if (type === 'end') { + setState({ + endDate: undefined + }); + updateNav('start'); + } + }; - return data; - } - }); + var onClickHandler = function onClickHandler(type) { + var open = state.open; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "getOptions", function () { - return { - placement: _this.props.placement, - eventsEnabled: _this.props.eventsEnabled, - positionFixed: _this.props.positionFixed, - modifiers: _extends$2({}, _this.props.modifiers, { - arrow: _extends$2({}, _this.props.modifiers && _this.props.modifiers.arrow, { - enabled: !!_this.arrowNode, - element: _this.arrowNode - }), - applyStyle: { - enabled: false - }, - updateStateModifier: _this.updateStateModifier - }) - }; - }); + if (!open) { + updateNav(type); + } + }; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "getPopperStyle", function () { - return !_this.popperNode || !_this.state.data ? initialStyle : _extends$2({ - position: _this.state.data.offsets.popper.position - }, _this.state.data.styles); - }); + var mask = date[inputFormat]; + var startPlaceholderChar = startInputOptions.placeholderChar || '_'; + var endPlaceholderChar = endInputOptions.placeholderChar || '_'; + var showStartError = startInputOptions.error || startInputOptions.required && startError && init; + var showEndError = endInputOptions.error || endInputOptions.required && endError && init; + var startErrorMessage = startInputOptions.caption === undefined ? 'Invalid value' : startInputOptions.caption; + var endErrorMessage = endInputOptions.caption === undefined ? 'Invalid value' : endInputOptions.caption; + var startLabel = startInputOptions.label; + var endLabel = endInputOptions.label; + + var inputValidator = function inputValidator(val) { + return isValid(validators, val, inputFormat); + }; + + return /*#__PURE__*/React.createElement(Row, { + "data-test": "DesignSystem-DateRangePicker-InputTrigger" + }, /*#__PURE__*/React.createElement(Column, { + size: '6', + sizeXS: '12', + className: "DateRangePicker-input DateRangePicker-input--startDate" + }, startLabel && /*#__PURE__*/React.createElement(Label, { + required: startInputOptions.required, + withInput: true + }, startLabel), /*#__PURE__*/React.createElement(X, _extends$2({ + icon: "events", + placeholder: inputFormat + }, startInputOptions, { + mask: mask, + value: startDate ? translateToString(inputFormat, startDate) : init ? X.utils.getDefaultValue(mask, startPlaceholderChar) : '', + onChange: function onChange(e, val) { + onChangeHandler(e, val || '', 'start'); + }, + onPaste: function onPaste(e, val) { + onPasteHandler(e, val || '', 'start'); + }, + onBlur: function onBlur(e, val) { + onBlurHandler(e, val || '', 'start'); + }, + onClear: function onClear() { + return onClearHandler('start'); + }, + onClick: function onClick() { + return onClickHandler('start'); + }, + error: showStartError, + caption: showStartError ? startErrorMessage : '', + validators: [inputValidator], + clearOnEmptyBlur: true + }))), /*#__PURE__*/React.createElement(Column, { + size: '6', + sizeXS: '12', + className: "DateRangePicker-input DateRangePicker-input--endDate" + }, endLabel && /*#__PURE__*/React.createElement(Label, { + required: endInputOptions.required, + withInput: true + }, endLabel), /*#__PURE__*/React.createElement(X, _extends$2({ + icon: "events", + placeholder: inputFormat + }, endInputOptions, { + mask: mask, + value: endDate ? translateToString(inputFormat, endDate) : init ? X.utils.getDefaultValue(mask, endPlaceholderChar) : '', + onChange: function onChange(e, val) { + onChangeHandler(e, val || '', 'end'); + }, + onPaste: function onPaste(e, val) { + onPasteHandler(e, val || '', 'end'); + }, + onBlur: function onBlur(e, val) { + onBlurHandler(e, val || '', 'end'); + }, + onClear: function onClear() { + return onClearHandler('end'); + }, + onClick: function onClick() { + return onClickHandler('end'); + }, + error: showEndError, + caption: showEndError ? endErrorMessage : '', + validators: [inputValidator], + clearOnEmptyBlur: true + })))); +}; + +var SingleInputTrigger = function SingleInputTrigger(props) { + var inputFormat = props.inputFormat, + inputOptions = props.inputOptions, + validators = props.validators, + state = props.state, + setState = props.setState; + var init = state.init, + startDate = state.startDate, + endDate = state.endDate, + startValue = state.startValue, + endValue = state.endValue, + startError = state.startError, + endError = state.endError; + var mask = rangeDate[inputFormat]; + var showError = inputOptions.error || inputOptions.required && (startError || endError) && init; + var errorMessage = inputOptions.caption === undefined ? 'Invalid value' : inputOptions.caption; + var label = inputOptions.label; + var _inputOptions$placeho = inputOptions.placeholderChar, + placeholderChar = _inputOptions$placeho === void 0 ? '_' : _inputOptions$placeho; + var defaultValue = X.utils.getDefaultValue(mask, placeholderChar).split(' - '); + var sValue = startValue || defaultValue[0]; + var eValue = endValue || defaultValue[1]; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "getPopperPlacement", function () { - return !_this.state.data ? undefined : _this.state.placement; - }); + var inputValidator = function inputValidator(val) { + var _val$split = val.split(' - '), + _val$split2 = _slicedToArray(_val$split, 2), + startVal = _val$split2[0], + endVal = _val$split2[1]; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "getArrowStyle", function () { - return !_this.arrowNode || !_this.state.data ? initialArrowStyle : _this.state.data.arrowStyles; - }); + return isValid(validators, startVal, inputFormat) && isValid(validators, endVal, inputFormat); + }; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "getOutOfBoundariesState", function () { - return _this.state.data ? _this.state.data.hide : undefined; + var onPasteHandler = function onPasteHandler(_e, val) { + var onPaste = inputOptions.onPaste; + var date = val.split(' - '); + var startVal = date[0]; + var endVal = date[1]; + var endD = translateToDate(inputFormat, endVal, validators); + var startD = translateToDate(inputFormat, startVal, validators); + setState({ + startDate: startD, + endDate: endD, + startValue: startVal, + endValue: endVal }); + if (onPaste) onPaste(_e, val); + }; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "destroyPopperInstance", function () { - if (!_this.popperInstance) return; + var onChangeHandler = function onChangeHandler(_e, val) { + var date = val.split(' - '); + var startVal = date[0]; + var endVal = date[1]; - _this.popperInstance.destroy(); + if (startValue !== startVal && startVal && !startVal.includes(placeholderChar)) { + var startD = translateToDate(inputFormat, startVal, validators); - _this.popperInstance = null; - }); + if (startD) { + var isEndDateValid = endValue && !endValue.includes(placeholderChar); + setState({ + startDate: startD, + endDate: isEndDateValid ? endDate : undefined + }); - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "updatePopperInstance", function () { - _this.destroyPopperInstance(); + if (endDate) { + var _getDateInfo = getDateInfo(endDate), + eYear = _getDateInfo.year, + eMonth = _getDateInfo.month, + eDate = _getDateInfo.date; - var _assertThisInitialize = _assertThisInitialized$1(_assertThisInitialized$1(_this)), - popperNode = _assertThisInitialize.popperNode; + if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { + setState({ + endDate: undefined + }); + } + } + } + } - var referenceElement = _this.props.referenceElement; - if (!referenceElement || !popperNode) return; - _this.popperInstance = new PopperJS(referenceElement, popperNode, _this.getOptions()); - }); + if (endValue !== endVal && endVal && !endVal.includes(placeholderChar)) { + var endD = translateToDate(inputFormat, endVal, validators); + var isStartDateValid = startValue && !startValue.includes(placeholderChar); - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "scheduleUpdate", function () { - if (_this.popperInstance) { - _this.popperInstance.scheduleUpdate(); + if (endD) { + setState({ + endDate: endD, + startDate: isStartDateValid ? startDate : undefined + }); } - }); + } - return _this; - } + setState({ + startValue: startVal, + endValue: endVal + }); + }; - var _proto = InnerPopper.prototype; + var getErrorState = function getErrorState(currentVal, siblingVal) { + var hasNumber = /\d/; - _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) { - // If the Popper.js options have changed, update the instance (destroy + create) - if (this.props.placement !== prevProps.placement || this.props.referenceElement !== prevProps.referenceElement || this.props.positionFixed !== prevProps.positionFixed || !deepEqual_1(this.props.modifiers, prevProps.modifiers, { - strict: true - })) { + if (currentVal && siblingVal && !currentVal.includes(placeholderChar) && siblingVal.includes(placeholderChar)) { + return true; + } else if (currentVal && hasNumber.test(currentVal) && currentVal.includes(placeholderChar)) { + return true; + } else if (currentVal && !hasNumber.test(currentVal) || !currentVal) { + return false; + } - this.updatePopperInstance(); - } else if (this.props.eventsEnabled !== prevProps.eventsEnabled && this.popperInstance) { - this.props.eventsEnabled ? this.popperInstance.enableEventListeners() : this.popperInstance.disableEventListeners(); - } // A placement difference in state means popper determined a new placement - // apart from the props value. By the time the popper element is rendered with - // the new position Popper has already measured it, if the place change triggers - // a size change it will result in a misaligned popper. So we schedule an update to be sure. + return null; + }; + var onBlurHandler = function onBlurHandler(_e, val) { + setState({ + init: true + }); + var date = val.split(' - '); + var startVal = date[0]; + var endVal = date[1]; + var startErr = getErrorState(startVal, endVal); + var endErr = getErrorState(endVal, startVal); - if (prevState.placement !== this.state.placement) { - this.scheduleUpdate(); + if (startErr !== null && endErr !== null) { + setState({ + startError: startErr, + endError: endErr + }); } - }; - _proto.componentWillUnmount = function componentWillUnmount() { - setRef(this.props.innerRef, null); - this.destroyPopperInstance(); + if (!startVal || startVal.includes(placeholderChar)) setState({ + startDate: undefined + }); + if (!endVal || endVal.includes(placeholderChar)) setState({ + endDate: undefined + }); }; - _proto.render = function render() { - return unwrapArray(this.props.children)({ - ref: this.setPopperNode, - style: this.getPopperStyle(), - placement: this.getPopperPlacement(), - outOfBoundaries: this.getOutOfBoundariesState(), - scheduleUpdate: this.scheduleUpdate, - arrowProps: { - ref: this.setArrowNode, - style: this.getArrowStyle() - } + var onClearHandler = function onClearHandler() { + setState({ + init: true, + startDate: undefined, + endDate: undefined, + yearNav: undefined, + monthNav: undefined }); }; - return InnerPopper; -}(React.Component); + return /*#__PURE__*/React.createElement(Row, { + "data-test": "DesignSystem-DateRangePicker-SingleInputTrigger" + }, /*#__PURE__*/React.createElement(Column, null, label && /*#__PURE__*/React.createElement(Label, { + required: inputOptions.required, + withInput: true + }, label), /*#__PURE__*/React.createElement(X, _extends$2({ + icon: "events", + placeholder: "".concat(inputFormat, " - ").concat(inputFormat) + }, inputOptions, { + mask: mask, + value: !startDate && !endDate && !init ? undefined : "".concat(sValue, " - ").concat(eValue), + onChange: function onChange(e, val) { + onChangeHandler(e, val || ''); + }, + onBlur: function onBlur(e, val) { + onBlurHandler(e, val || ''); + }, + onPaste: function onPaste(e, val) { + onPasteHandler(e, val || ''); + }, + onClear: onClearHandler, + error: showError, + caption: showError ? errorMessage : '', + validators: [inputValidator], + clearOnEmptyBlur: true + })))); +}; -_defineProperty$1(InnerPopper, "defaultProps", { - placement: 'bottom', - eventsEnabled: true, - referenceElement: undefined, - positionFixed: false -}); +var setDate = function setDate(date) { + var d = new Date(); + return new Date(d.setDate(date)); +}; -PopperJS.placements; -function Popper(_ref) { - var referenceElement = _ref.referenceElement, - props = _objectWithoutPropertiesLoose$1(_ref, ["referenceElement"]); +var getCurrentYear = function getCurrentYear() { + var current = new Date(); + var currentYear = current.getFullYear(); + return currentYear; +}; +var getCurrentMonth = function getCurrentMonth() { + var current = new Date(); + var currentMonth = current.getMonth(); + return currentMonth; +}; +var getCurrentWeek = function getCurrentWeek() { + var current = new Date(); + var currentDate = current.getDate(); + var currentDay = current.getDay(); + return { + startDate: setDate(currentDate - currentDay + 1), + endDate: setDate(currentDate - currentDay + 7) + }; +}; +var getPreviousWeek = function getPreviousWeek() { + var current = new Date(); + var currentDate = current.getDate(); + var currentDay = current.getDay(); + return { + startDate: setDate(currentDate - currentDay - 6), + endDate: setDate(currentDate - currentDay) + }; +}; +var getPreviousMonth = function getPreviousMonth() { + var current = new Date(); + var currentYear = current.getFullYear(); + var currentMonth = current.getMonth(); + return { + endDate: new Date(currentYear, currentMonth, 0), + startDate: new Date(currentYear - +(currentMonth < 0), (currentMonth + 11) % 12, 1) + }; +}; +var getPrevious90Days = function getPrevious90Days() { + var current = new Date(); + var currentDate = current.getDate(); + return { + startDate: setDate(currentDate - 90), + endDate: setDate(currentDate) + }; +}; +var getCustomDates = function getCustomDates() { + return { + startDate: '', + endDate: '' + }; +}; - return React.createElement(ManagerReferenceNodeContext.Consumer, null, function (referenceNode) { - return React.createElement(InnerPopper, _extends$2({ - referenceElement: referenceElement !== undefined ? referenceElement : referenceNode - }, props)); - }); -} +var _excluded$n = ["startDate", "endDate", "yearNav", "monthNav", "open", "inputFormat", "outputFormat", "startInputOptions", "endInputOptions", "validators", "withInput", "position", "disabledBefore", "disabledAfter", "onRangeChange", "rangeLimit"]; +var DateRangePicker = /*#__PURE__*/function (_React$Component) { + _inherits(DateRangePicker, _React$Component); -var InnerReference = -/*#__PURE__*/ -function (_React$Component) { - _inheritsLoose(InnerReference, _React$Component); + var _super = _createSuper(DateRangePicker); - function InnerReference() { + function DateRangePicker(props) { var _this; - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - - _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this; - - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "refHandler", function (node) { - setRef(_this.props.innerRef, node); - safeInvoke(_this.props.setReferenceNode, node); - }); - - return _this; - } + _classCallCheck(this, DateRangePicker); - var _proto = InnerReference.prototype; + _this = _super.call(this, props); - _proto.componentWillUnmount = function componentWillUnmount() { - setRef(this.props.innerRef, null); - }; + _defineProperty$1(_assertThisInitialized$1(_this), "monthsInView", void 0); - _proto.render = function render() { - warning_1(Boolean(this.props.setReferenceNode)); - return unwrapArray(this.props.children)({ - ref: this.refHandler + _defineProperty$1(_assertThisInitialized$1(_this), "getDate", function (startDate, endDate) { + var inputFormat = _this.props.inputFormat; + var startVal = startDate ? translateToString(inputFormat, startDate) : ''; + var endVal = endDate ? translateToString(inputFormat, endDate) : ''; + return { + startValue: startVal, + endValue: endVal + }; }); - }; - - return InnerReference; -}(React.Component); -function Reference(props) { - return React.createElement(ManagerReferenceNodeSetterContext.Consumer, null, function (setReferenceNode) { - return React.createElement(InnerReference, _extends$2({ - setReferenceNode: setReferenceNode - }, props)); - }); -} + _defineProperty$1(_assertThisInitialized$1(_this), "getErrors", function (startDate, endDate) { + var isError = function isError(date) { + var _this$props = _this.props, + disabledBefore = _this$props.disabledBefore, + disabledAfter = _this$props.disabledAfter; -var PopperWrapper = /*#__PURE__*/function (_React$Component) { - _inherits$1(PopperWrapper, _React$Component); + var _getDateInfo = getDateInfo(disabledBefore), + dbYear = _getDateInfo.year, + dbMonth = _getDateInfo.month, + dbDate = _getDateInfo.date; - var _super = _createSuper$1(PopperWrapper); + var _getDateInfo2 = getDateInfo(disabledAfter), + daYear = _getDateInfo2.year, + daMonth = _getDateInfo2.month, + daDate = _getDateInfo2.date; - function PopperWrapper(props) { - var _this; + return !date ? false : compareDate(date, 'less', dbYear, dbMonth, dbDate) || compareDate(date, 'more', daYear, daMonth, daDate); + }; - _classCallCheck$1(this, PopperWrapper); + var startError = isError(startDate); + var endError = isError(endDate); - _this = _super.call(this, props); + var _getDateInfo3 = getDateInfo(endDate), + eYear = _getDateInfo3.year, + eMonth = _getDateInfo3.month, + eDate = _getDateInfo3.date; - _defineProperty$2(_assertThisInitialized$2(_this), "triggerRef", void 0); + if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { + startError = true; + endError = true; + } - _defineProperty$2(_assertThisInitialized$2(_this), "popupRef", void 0); + return { + startError: startError, + endError: endError + }; + }); - _defineProperty$2(_assertThisInitialized$2(_this), "hoverableDelay", void 0); + _defineProperty$1(_assertThisInitialized$1(_this), "getInRangeError", function () { + var rangeLimit = _this.props.rangeLimit; - _defineProperty$2(_assertThisInitialized$2(_this), "_timer", void 0); + if (rangeLimit) { + var _this$state = _this.state, + _startDate2 = _this$state.startDate, + _endDate2 = _this$state.endDate; - _defineProperty$2(_assertThisInitialized$2(_this), "_throttleWait", void 0); + var _getDateInfo4 = getDateInfo(_startDate2), + sYear = _getDateInfo4.year, + sMonth = _getDateInfo4.month, + sDate = _getDateInfo4.date; - _defineProperty$2(_assertThisInitialized$2(_this), "offsetMapping", void 0); + var _getDateInfo5 = getDateInfo(_endDate2), + eYear = _getDateInfo5.year, + eMonth = _getDateInfo5.month, + eDate = _getDateInfo5.date; - _defineProperty$2(_assertThisInitialized$2(_this), "togglePopper", function (type, newValue) { - var _this$props = _this.props, - open = _this$props.open, - onToggle = _this$props.onToggle; - onToggle(newValue === undefined ? !open : newValue, type); - }); + var limitDate; - _defineProperty$2(_assertThisInitialized$2(_this), "findDOMNode", function (ref) { - return ReactDOM.findDOMNode(ref.current); - }); + if (_startDate2) { + limitDate = new Date(_startDate2); + limitDate.setDate(sDate + rangeLimit); + return compareDate(limitDate, 'less', eYear, eMonth, eDate + 1); + } - _defineProperty$2(_assertThisInitialized$2(_this), "doesEventContainsElement", function (event, ref) { - var el = _this.findDOMNode(ref); + if (_endDate2) { + limitDate = new Date(_endDate2); + limitDate.setDate(eDate - rangeLimit); + return compareDate(limitDate, 'more', sYear, sMonth, sDate - 1); + } + } - return el && el.contains(event.target); + return false; }); - _defineProperty$2(_assertThisInitialized$2(_this), "getUpdatedStyle", function (oldStyle, placement, offset) { - var style = _this.props.style; - - var newStyle = _objectSpread2(_objectSpread2({}, style), oldStyle); + _defineProperty$1(_assertThisInitialized$1(_this), "onRangeChangeHandler", function (sDate, eDate) { + _this.setState({ + init: true, + startDate: sDate, + endDate: eDate, + startValue: sDate ? translateToString(_this.props.inputFormat, sDate) : '', + endValue: eDate ? translateToString(_this.props.inputFormat, eDate) : '' + }); + }); - var position = placement ? placement.split('-')[0] : placement; + _defineProperty$1(_assertThisInitialized$1(_this), "onToggleHandler", function (o, type) { + var _this$props2 = _this.props, + singleInput = _this$props2.singleInput, + inputOptions = _this$props2.inputOptions, + startInputOptions = _this$props2.startInputOptions, + endInputOptions = _this$props2.endInputOptions; + var disabled = singleInput ? inputOptions.disabled : startInputOptions.disabled || endInputOptions.disabled; + if (disabled) return; - switch (position) { - case 'top': - newStyle.marginBottom = _this.offsetMapping[offset]; - break; + switch (type) { + case 'outsideClick': + _this.setState({ + open: o + }); - case 'bottom': - newStyle.marginTop = _this.offsetMapping[offset]; break; - case 'left': - newStyle.marginRight = _this.offsetMapping[offset]; - break; + case 'onClick': + _this.setState({ + open: true + }); - case 'right': - newStyle.marginLeft = _this.offsetMapping[offset]; break; } - - return newStyle; }); - _this.state = {}; - _this.hoverableDelay = 100; - _this.offsetMapping = { - small: '2px', - medium: '4px', - large: '8px' + var _inputFormat = props.inputFormat, + validators = props.validators; + + var _startDate = convertToDate(props.startDate, _inputFormat, validators); + + var _endDate = convertToDate(props.endDate, _inputFormat, validators); + + var _this$getDate = _this.getDate(_startDate, _endDate), + startValue = _this$getDate.startValue, + endValue = _this$getDate.endValue; + + var _this$getErrors = _this.getErrors(_startDate, _endDate), + _startError = _this$getErrors.startError, + _endError = _this$getErrors.endError; + + _this.state = { + startDate: _startDate, + endDate: _endDate, + startValue: startValue, + endValue: endValue, + startError: _startError, + endError: _endError, + init: false, + open: props.open || false, + yearNav: props.yearNav, + monthNav: props.monthNav }; - _this.triggerRef = /*#__PURE__*/React.createRef(); - _this.popupRef = /*#__PURE__*/React.createRef(); - _this.getPopperChildren = _this.getPopperChildren.bind(_assertThisInitialized$2(_this)); - _this.mouseMoveHandler = _this.mouseMoveHandler.bind(_assertThisInitialized$2(_this)); - _this.handleMouseEnter = _this.handleMouseEnter.bind(_assertThisInitialized$2(_this)); - _this.handleMouseLeave = _this.handleMouseLeave.bind(_assertThisInitialized$2(_this)); - _this.boundaryScrollHandler = _this.boundaryScrollHandler.bind(_assertThisInitialized$2(_this)); + _this.monthsInView = props.monthsInView || (props.withInput ? 2 : 1); return _this; } - _createClass$1(PopperWrapper, [{ - key: "componentDidMount", - value: function componentDidMount() { - this.addBoundaryScrollHandler(); - } - }, { + _createClass(DateRangePicker, [{ key: "componentDidUpdate", - value: function componentDidUpdate(prevProps) { - if (!prevProps.boundaryElement && this.props.boundaryElement) { - this.removeBoundaryScrollHandler(); - this.addBoundaryScrollHandler(); - } - - if (prevProps.open !== this.props.open) { - this._throttleWait = false; - - if (this.props.open) { - var triggerElement = this.findDOMNode(this.triggerRef); - var zIndex = this.getZIndexForLayer(triggerElement); - this.setState({ - zIndex: zIndex === undefined ? zIndex : zIndex + 1 - }); - } + value: function componentDidUpdate(prevProps, prevState) { + if (prevProps.startDate !== this.props.startDate) { + var _this$props3 = this.props, + inputFormat = _this$props3.inputFormat, + validators = _this$props3.validators; + var d = convertToDate(this.props.startDate, inputFormat, validators); + var val = translateToString(inputFormat, d); + this.setState({ + startDate: d, + startValue: val + }); } - } - }, { - key: "componentWillUnmount", - value: function componentWillUnmount() { - this.removeBoundaryScrollHandler(); - } - }, { - key: "boundaryScrollHandler", - value: function boundaryScrollHandler() { - var _this$props2 = this.props, - open = _this$props2.open, - on = _this$props2.on, - closeOnScroll = _this$props2.closeOnScroll; - if (on === 'click' && closeOnScroll) { - if (open) { - if (!this._throttleWait) { - this.togglePopper('onScroll', false); - this._throttleWait = true; - } - } - } - } - }, { - key: "addBoundaryScrollHandler", - value: function addBoundaryScrollHandler() { - if (this.props.boundaryElement) { - this.props.boundaryElement.addEventListener('scroll', this.boundaryScrollHandler); - } - } - }, { - key: "removeBoundaryScrollHandler", - value: function removeBoundaryScrollHandler() { - if (this.props.boundaryElement) { - this.props.boundaryElement.removeEventListener('scroll', this.boundaryScrollHandler); - } - } - }, { - key: "mouseMoveHandler", - value: function mouseMoveHandler() { - var _this2 = this; + if (prevProps.endDate !== this.props.endDate) { + var _this$props4 = this.props, + _inputFormat2 = _this$props4.inputFormat, + _validators = _this$props4.validators; - if (this._timer) clearTimeout(this._timer); - this._timer = window.setTimeout(function () { - var onToggle = _this2.props.onToggle; - onToggle(false, 'mouseLeave'); - }, this.hoverableDelay); - } - }, { - key: "handleMouseEnter", - value: function handleMouseEnter() { - var on = this.props.on; + var _d = convertToDate(this.props.endDate, _inputFormat2, _validators); - if (on === 'hover') { - if (this._timer) clearTimeout(this._timer); - var onToggle = this.props.onToggle; - onToggle(true, 'mouseEnter'); - } - } - }, { - key: "handleMouseLeave", - value: function handleMouseLeave() { - var on = this.props.on; + var _val = translateToString(_inputFormat2, _d); - if (on === 'hover') { - var _this$props3 = this.props, - hoverable = _this$props3.hoverable, - onToggle = _this$props3.onToggle; + this.setState({ + endDate: _d, + endValue: _val + }); + } - if (hoverable) { - this.mouseMoveHandler(); - } else { - onToggle(false, 'mouseLeave'); - } + if (prevProps.open !== this.props.open) { + this.setState({ + open: this.props.open || false + }); } - } - }, { - key: "getZIndexForLayer", - value: function getZIndexForLayer(node) { - if (node === null) { - return; + + if (prevProps.yearNav !== this.props.yearNav) { + this.setState({ + yearNav: this.props.yearNav + }); } - var layerNode = node.closest('[data-layer]') || document.body; - var zIndex = layerNode === document.body ? 'auto' : parseInt(window.getComputedStyle(layerNode).zIndex || '0', 10); - return zIndex === 'auto' || isNaN(zIndex) ? undefined : zIndex; - } - }, { - key: "getTriggerElement", - value: function getTriggerElement(ref) { - var _this3 = this; + if (prevProps.monthNav !== this.props.monthNav) { + this.setState({ + monthNav: this.props.monthNav + }); + } - var _this$props4 = this.props, - trigger = _this$props4.trigger, - on = _this$props4.on, - triggerClass = _this$props4.triggerClass; - var options = on === 'hover' ? { - ref: ref, - onMouseEnter: this.handleMouseEnter, - onMouseLeave: this.handleMouseLeave - } : { - ref: ref, - onClick: function onClick(ev) { - ev.stopPropagation(); + if (prevState.startDate !== this.state.startDate || prevState.endDate !== this.state.endDate) { + var _this$props5 = this.props, + onRangeChange = _this$props5.onRangeChange, + outputFormat = _this$props5.outputFormat; + var _this$state2 = this.state, + _startDate3 = _this$state2.startDate, + _endDate3 = _this$state2.endDate; - _this3.togglePopper('onClick'); - } - }; - var classes = classnames('PopperWrapper-trigger', triggerClass); + var _this$getErrors2 = this.getErrors(_startDate3, _endDate3), + startError = _this$getErrors2.startError, + endError = _this$getErrors2.endError; - var onOutsideClickHandler = function onOutsideClickHandler(event) { - var _this3$props = _this3.props, - open = _this3$props.open, - closeOnBackdropClick = _this3$props.closeOnBackdropClick; + this.setState({ + startError: startError, + endError: endError + }); - if (open && closeOnBackdropClick) { - if (!_this3.doesEventContainsElement(event, _this3.popupRef)) { - _this3.togglePopper('outsideClick'); + if (onRangeChange) { + var inRangeError = this.getInRangeError(); + var sValue = translateToString(outputFormat, _startDate3); + var eValue = translateToString(outputFormat, _endDate3); + + if (!inRangeError && !startError && !endError) { + if (this.props.allowReverseSelection) { + if (_startDate3 && _endDate3) { + onRangeChange(_startDate3, _endDate3, sValue, eValue); + } + } else { + onRangeChange(_startDate3, _endDate3, sValue, eValue); + } + } else if (!this.props.allowReverseSelection) { + if (!startError) onRangeChange(_startDate3, undefined, sValue, eValue);else if (!endError) onRangeChange(undefined, _endDate3, sValue, eValue);else onRangeChange(undefined, undefined, sValue, eValue); } } - }; - return /*#__PURE__*/React.createElement(OutsideClick, _extends$3({ - className: classes, - onOutsideClick: onOutsideClickHandler - }, options), trigger); + if (this.state.startDate && this.state.endDate) { + this.setState({ + open: false + }); + } + } } }, { - key: "getPopperChildren", - value: function getPopperChildren(_ref) { - var ref = _ref.ref, - style = _ref.style, - placement = _ref.placement, - outOfBoundaries = _ref.outOfBoundaries; - var _this$props5 = this.props, - offset = _this$props5.offset, - children = _this$props5.children; - var zIndex = this.state.zIndex; - var newStyle = offset ? this.getUpdatedStyle(style, placement, offset) : style; - var element = /*#__PURE__*/React.cloneElement(children, { - ref: ref, - style: _objectSpread2(_objectSpread2({}, newStyle), {}, { - zIndex: zIndex - }), - 'data-placement': placement, - 'data-hide': outOfBoundaries, - onMouseEnter: this.handleMouseEnter, - onMouseLeave: this.handleMouseLeave - }); - return element; + key: "renderCalendar", + value: function renderCalendar() { + var _this$props6 = this.props; + _this$props6.startDate; + _this$props6.endDate; + _this$props6.yearNav; + _this$props6.monthNav; + _this$props6.open; + var inputFormat = _this$props6.inputFormat; + _this$props6.outputFormat; + _this$props6.startInputOptions; + _this$props6.endInputOptions; + var validators = _this$props6.validators; + _this$props6.withInput; + _this$props6.position; + var disabledBefore = _this$props6.disabledBefore, + disabledAfter = _this$props6.disabledAfter; + _this$props6.onRangeChange; + var rangeLimit = _this$props6.rangeLimit, + rest = _objectWithoutProperties(_this$props6, _excluded$n); + + var _this$state3 = this.state, + startDate = _this$state3.startDate, + endDate = _this$state3.endDate, + yearNav = _this$state3.yearNav, + monthNav = _this$state3.monthNav; + return /*#__PURE__*/React.createElement(Calendar, _extends$2({}, rest, { + monthsInView: this.monthsInView, + rangePicker: true, + startDate: convertToDate(startDate, inputFormat, validators), + endDate: convertToDate(endDate, inputFormat, validators), + disabledBefore: convertToDate(disabledBefore, inputFormat, validators), + disabledAfter: convertToDate(disabledAfter, inputFormat, validators), + onRangeChange: this.onRangeChangeHandler, + yearNav: yearNav, + monthNav: monthNav, + rangeLimit: rangeLimit + })); } }, { key: "render", value: function render() { - var _this4 = this; + var _classNames; - var _this$props6 = this.props, - placement = _this$props6.placement, - appendToBody = _this$props6.appendToBody, - open = _this$props6.open, - hide = _this$props6.hide, - boundaryElement = _this$props6.boundaryElement; - return /*#__PURE__*/React.createElement(Manager, null, /*#__PURE__*/React.createElement(Reference, { - innerRef: this.triggerRef - }, function (_ref2) { - var ref = _ref2.ref; - return _this4.getTriggerElement(ref); - }), open && appendToBody && /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/React.createElement(Popper, { - placement: placement, - innerRef: this.popupRef, - modifiers: { - preventOverflow: { - boundariesElement: boundaryElement || document.body - }, - hide: { - enabled: hide - } - } - }, this.getPopperChildren), document.body), open && !appendToBody && /*#__PURE__*/React.createElement(Popper, { - placement: placement, - innerRef: this.popupRef - }, this.getPopperChildren)); + var _this$props7 = this.props, + withInput = _this$props7.withInput, + startInputOptions = _this$props7.startInputOptions, + endInputOptions = _this$props7.endInputOptions, + inputOptions = _this$props7.inputOptions, + inputFormat = _this$props7.inputFormat, + position = _this$props7.position, + validators = _this$props7.validators, + singleInput = _this$props7.singleInput, + contentAlign = _this$props7.contentAlign, + children = _this$props7.children; + var open = this.state.open; + var RangePickerClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'DateRangePicker', true), _defineProperty$1(_classNames, "DateRangePicker--".concat(contentAlign), contentAlign), _classNames)); + + if (withInput) { + var trigger = singleInput ? /*#__PURE__*/React.createElement(SingleInputTrigger, { + inputFormat: inputFormat, + inputOptions: inputOptions, + validators: validators, + state: this.state, + setState: this.setState.bind(this) + }) : /*#__PURE__*/React.createElement(Trigger, { + inputFormat: inputFormat, + startInputOptions: startInputOptions, + endInputOptions: endInputOptions, + validators: validators, + state: this.state, + setState: this.setState.bind(this) + }); + return /*#__PURE__*/React.createElement(Popover, { + trigger: trigger, + triggerClass: "w-100", + className: RangePickerClass, + position: position, + appendToBody: true, + open: open, + onToggle: this.onToggleHandler + }, children, this.renderCalendar()); + } + + return this.renderCalendar(); } }]); - return PopperWrapper; + return DateRangePicker; }(React.Component); -_defineProperty$2(PopperWrapper, "defaultProps", { - on: 'click', - offset: 'medium', - closeOnBackdropClick: true, - hoverable: true, - appendToBody: true, - style: {} +_defineProperty$1(DateRangePicker, "utils", { + getCurrentWeek: getCurrentWeek, + getPreviousWeek: getPreviousWeek, + getPreviousMonth: getPreviousMonth, + getPrevious90Days: getPrevious90Days, + getCustomDates: getCustomDates, + getCurrentYear: getCurrentYear, + getCurrentMonth: getCurrentMonth }); -var _excluded$9 = ["position", "customStyle", "dark", "children", "onToggle", "className", "hideOnReferenceEscape", "boundaryElement"]; -var propsList$1 = ['appendToBody', 'trigger', 'hoverable', 'on', 'open', 'closeOnBackdropClick', 'offset', 'closeOnScroll']; -var Popover = function Popover(props) { - var position = props.position, - customStyle = props.customStyle, - dark = props.dark, - children = props.children, - onToggle = props.onToggle, - className = props.className, - hideOnReferenceEscape = props.hideOnReferenceEscape, - boundaryElement = props.boundaryElement, - rest = _objectWithoutProperties$1(props, _excluded$9); +_defineProperty$1(DateRangePicker, "defaultProps", _objectSpread2(_objectSpread2({}, Calendar.defaultProps), {}, { + children: /*#__PURE__*/React.createElement(React.Fragment, null), + contentAlign: 'left', + monthsInView: undefined, + position: 'bottom-start', + inputFormat: 'mm/dd/yyyy', + outputFormat: 'mm/dd/yyyy', + validators: [date$1], + inputOptions: { + label: 'Date' + }, + startInputOptions: { + label: 'Start Date' + }, + endInputOptions: { + label: 'End Date' + } +})); - var _React$useState = React.useState(!!props.open), +var TabsWrapper = function TabsWrapper(props) { + var children = props.children, + onTabChange = props.onTabChange, + className = props.className; + var baseProps = extractBaseProps(props); + var tabs = Array.isArray(children) ? children : [children]; + var totalTabs = tabs.length; + + var _React$useState = React.useState(props.active && props.active < totalTabs ? props.active : 0), _React$useState2 = _slicedToArray(_React$useState, 2), - open = _React$useState2[0], - setOpen = _React$useState2[1]; + active = _React$useState2[0], + setActiveTab = _React$useState2[1]; + + React.useEffect(function () { + setActiveTab(props.active && props.active < totalTabs ? props.active : 0); + }, [props.active]); + var wrapperClass = classnames(_defineProperty$1({}, 'TabsWrapper', true), className); + + var tabClickHandler = function tabClickHandler(tabIndex) { + setActiveTab(tabIndex); + if (onTabChange) onTabChange(tabIndex); + }; + + var TabsHeader = tabs.map(function (child, index) { + var _classNames2; + + var _child$props = child.props, + label = _child$props.label, + disabled = _child$props.disabled; + var tabHeaderClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'Tab', true), _defineProperty$1(_classNames2, 'Tab--disabled', disabled), _defineProperty$1(_classNames2, 'Tab--active', !disabled && active === index), _classNames2)); + return ( + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement("div", { + "data-test": "DesignSystem-Tabs--Header", + key: index, + className: tabHeaderClass, + onClick: function onClick() { + return !disabled && tabClickHandler(index); + } + }, label) + ); + }); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-TabsWrapper" + }, baseProps, { + className: wrapperClass + }), /*#__PURE__*/React.createElement("div", { + className: "TabsWrapper-header" + }, TabsHeader), /*#__PURE__*/React.createElement("div", { + className: "TabsWrapper-content", + "data-test": "DesignSystem-Tabs--Content" + }, tabs[active])); +}; +TabsWrapper.displayName = 'TabsWrapper'; - var _React$useState3 = React.useState(false), - _React$useState4 = _slicedToArray(_React$useState3, 2), - init = _React$useState4[0], - setInit = _React$useState4[1]; +var Tab = function Tab(props) { + var children = props.children; + return /*#__PURE__*/React.createElement(React.Fragment, null, children); +}; +Tab.displayName = 'Tab'; - React.useEffect(function () { - if (props.open !== undefined) setOpen(props.open); - }, [props.open]); - var defaultOnToggle = React.useCallback(function (newOpen) { - setOpen(newOpen); - }, []); - React.useEffect(function () { - if (!init) { - if ('current' in boundaryElement && boundaryElement.current) { - setInit(true); - } - } - }, [boundaryElement]); - var classes = classnames(_defineProperty$2({ - Popover: true - }, 'Popover--dark', dark), className); - var PopoverWrapper = /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-Popover", - className: classes, - "data-layer": true - }, children); - return /*#__PURE__*/React.createElement(PopperWrapper, _extends$3({}, rest, { - init: init, - boundaryElement: 'current' in boundaryElement ? boundaryElement.current : boundaryElement, - open: open, - hide: hideOnReferenceEscape, - style: customStyle, - onToggle: onToggle || defaultOnToggle, - placement: position - }), PopoverWrapper); +var getChildrenArray = function getChildrenArray(children) { + return Array.isArray(children) ? children : [children]; }; -Popover.displayName = 'Popover'; // Popover.defaultProps = { -// ...filterProps(PopperWrapper.defaultProps, propsList, true), -// offset: 'large', -// position: 'bottom', -// hideOnReferenceEscape: true, -// customStyle: {}, -// } -Popover.defaultProps = Object.assign({}, filterProps(PopperWrapper.defaultProps, propsList$1, true), { - offset: 'large', - position: 'bottom', - hideOnReferenceEscape: true, - customStyle: {}, - boundaryElement: document.body -}); +var filterTabs = function filterTabs(children) { + var childrenArray = getChildrenArray(children); + var tabs = childrenArray.filter(function (element) { + return typeof element.type === 'function' && element.type.name === Tab.name; + }); + return tabs; +}; -var _excluded$8 = ["type", "onClick"]; -var keyCodes = { - BACKSPACE: 'Backspace', - DELETE: 'Delete', - ENTER: 'Enter' +var filterInlineComponent = function filterInlineComponent(children) { + var childrenArray = getChildrenArray(children); + var inlineComponent = childrenArray.filter(function (element) { + return !(typeof element.type === 'function' && element.type.name === Tab.name); + }); + return inlineComponent; }; -var ChipInput = function ChipInput(props) { - var _classNames; - var chipOptions = props.chipOptions, - allowDuplicates = props.allowDuplicates, - disabled = props.disabled, - placeholder = props.placeholder, - defaultValue = props.defaultValue, - value = props.value, +var Tabs = function Tabs(props) { + var _classNames2, _classNames4; + + var children = props.children, + withSeparator = props.withSeparator, + onTabChange = props.onTabChange, className = props.className, - autoFocus = props.autoFocus, - onChange = props.onChange, - onBlur = props.onBlur, - onFocus = props.onFocus; - var inputRef = /*#__PURE__*/React.createRef(); + headerClassName = props.headerClassName; + var baseProps = extractBaseProps(props); + var tabRefs = []; + var tabs = children ? filterTabs(children) : props.tabs; + var inlineComponent = children ? filterInlineComponent(children) : /*#__PURE__*/React.createElement(React.Fragment, null); + var totalTabs = tabs.length; - var _React$useState = React.useState(value || defaultValue), + var _React$useState = React.useState(props.activeIndex && props.activeIndex < totalTabs ? props.activeIndex : 0), _React$useState2 = _slicedToArray(_React$useState, 2), - chips = _React$useState2[0], - setChips = _React$useState2[1]; - - var _React$useState3 = React.useState(''), - _React$useState4 = _slicedToArray(_React$useState3, 2), - inputValue = _React$useState4[0], - setInputValue = _React$useState4[1]; + activeIndex = _React$useState2[0], + setActiveTab = _React$useState2[1]; - var baseProps = extractBaseProps(props); React.useEffect(function () { - if (value !== undefined) { - setChips(value); + if (props.activeIndex !== undefined && props.activeIndex < totalTabs) { + setActiveTab(props.activeIndex); } - }, [value]); - var ChipInputClass = classnames((_classNames = { - ChipInput: true - }, _defineProperty$2(_classNames, 'ChipInput--disabled', disabled), _defineProperty$2(_classNames, 'ChipInput--withChips', chips.length > 0), _classNames), className); + }, [props.activeIndex]); + var wrapperClass = classnames(_defineProperty$1({}, 'TabsWrapper', true), className); + var headerClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'TabsWrapper-header', true), _defineProperty$1(_classNames2, 'TabsWrapper-header--withSeparator', withSeparator), _classNames2), className, headerClassName); - var onUpdateChips = function onUpdateChips(updatedChips) { - if (onChange) onChange(updatedChips); + var getPillsClass = function getPillsClass(disabled) { + var _classNames3; + + return classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Tab-pills', true), _defineProperty$1(_classNames3, 'Tab-pills--disabled', disabled), _classNames3)); }; - var onChipDeleteHandler = function onChipDeleteHandler(index) { - var updatedChips = _toConsumableArray(chips); + var getActiveTabClass = function getActiveTabClass() { + var activeTab; + var activeTabClass; - updatedChips.splice(index, 1); + if (tabs && tabs.length && tabs[activeIndex] && 'props' in tabs[activeIndex]) { + var _activeTab$props; - if (!value) { - setChips(updatedChips); + activeTab = tabs[activeIndex]; + activeTabClass = (_activeTab$props = activeTab.props) === null || _activeTab$props === void 0 ? void 0 : _activeTab$props.className; + } else { + activeTab = tabs[activeIndex]; + activeTabClass = activeTab && activeTab.className; } - onUpdateChips(updatedChips); + return activeTabClass; }; - var onChipAddHandler = function onChipAddHandler() { - if (!inputValue) return; - var chip = inputValue.trim().toLowerCase(); - - if ((allowDuplicates || chips.indexOf(chip) === -1) && chip) { - var updatedChips = [].concat(_toConsumableArray(chips), [chip]); + var activeTabClass = getActiveTabClass(); + var tabContentClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'TabsWrapper-content', true), _defineProperty$1(_classNames4, "".concat(activeTabClass), activeTabClass), _classNames4)); - if (!value) { - setChips(updatedChips); - } + var tabClickHandler = function tabClickHandler(tabIndex, isKeyboard) { + if (props.activeIndex === undefined) { + var _tabRefs$tabIndex; - onUpdateChips(updatedChips); - setInputValue(''); + setActiveTab(tabIndex); + if (!isKeyboard) (_tabRefs$tabIndex = tabRefs[tabIndex]) === null || _tabRefs$tabIndex === void 0 ? void 0 : _tabRefs$tabIndex.blur(); } + + if (onTabChange) onTabChange(tabIndex); }; - var onDeleteAllHandler = function onDeleteAllHandler() { - var updatedChips = []; + var tabKeyDownHandler = function tabKeyDownHandler(event, tabIndex) { + if (event.key === 'Enter') { + tabClickHandler(tabIndex, true); + } - if (!value) { - setChips(updatedChips); + if (event.key === 'ArrowLeft' && tabIndex > 0) { + var prevElement = tabRefs[tabIndex - 1]; + prevElement === null || prevElement === void 0 ? void 0 : prevElement.focus(); } - onUpdateChips(updatedChips); + if (event.key === 'ArrowRight' && tabIndex < tabs.length) { + var nextElement = tabRefs[tabIndex + 1]; + nextElement === null || nextElement === void 0 ? void 0 : nextElement.focus(); + } }; - var onKeyDownHandler = function onKeyDownHandler(event) { - var chipsLength = chips.length; + var renderInfo = function renderInfo(tab, index) { + var _ref = tab, + count = _ref.count, + icon = _ref.icon, + disabled = _ref.disabled, + iconType = _ref.iconType; - switch (event.key) { - case keyCodes.DELETE: - case keyCodes.BACKSPACE: - if (inputValue === '' && chipsLength > 0) { - onChipDeleteHandler(chipsLength - 1); - } + if (count !== undefined) { + return /*#__PURE__*/React.createElement(Pills, { + "data-test": "DesignSystem-Tabs--Pills", + className: getPillsClass(disabled), + appearance: activeIndex === index ? 'primary' : 'secondary' + }, count); + } - break; + var iconClass = classnames(_defineProperty$1({}, 'Tab-selected', !disabled && activeIndex === index)); - case keyCodes.ENTER: - event.preventDefault(); - onChipAddHandler(); - break; + if (icon) { + var iconAppearance = activeIndex === index ? 'info' : disabled ? 'disabled' : 'subtle'; + return /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-Tabs--Icon", + className: "mr-4 ".concat(iconClass), + name: icon, + type: iconType, + appearance: iconAppearance + }); } - }; - var onInputChangeHandler = function onInputChangeHandler(e) { - setInputValue(e.target.value); + return null; }; - var onClickHandler = function onClickHandler() { - var _inputRef$current; + var renderDismissIcon = function renderDismissIcon(tab, index, onDismiss) { + var _ref2 = tab, + disabled = _ref2.disabled, + label = _ref2.label; + var iconAppearance = activeIndex === index ? 'info' : disabled ? 'disabled' : 'subtle'; - (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus(); + var dismissIconClass = function dismissIconClass(disabled) { + var _classNames6; + + return classnames((_classNames6 = {}, _defineProperty$1(_classNames6, "DismissibleTab-icon--right", true), _defineProperty$1(_classNames6, 'DismissibleTab-icon--default', !disabled && activeIndex !== index), _defineProperty$1(_classNames6, "DismissibleTab-icon--selected", !disabled && activeIndex === index), _defineProperty$1(_classNames6, 'cursor-pointer', !disabled), _defineProperty$1(_classNames6, 'Tab-selected', !disabled && activeIndex === index), _classNames6)); + }; + + var tabInfo = { + label: label, + activeIndex: activeIndex, + currentTabIndex: index + }; + + var onCloseHandler = function onCloseHandler(e) { + e.stopPropagation(); + if (onDismiss) onDismiss(tabInfo); + }; + + return /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-DismissibleTabs--Icon", + name: "clear", + appearance: iconAppearance, + className: dismissIconClass(disabled), + onClick: !disabled ? onCloseHandler : undefined, + tabIndex: disabled ? -1 : 0 + }); }; - var chipComponents = chips.map(function (chip, index) { - var _chipOptions$type = chipOptions.type, - type = _chipOptions$type === void 0 ? 'input' : _chipOptions$type, - _onClick = chipOptions.onClick, - rest = _objectWithoutProperties$1(chipOptions, _excluded$8); + var renderTab = function renderTab(tab, index) { + var _ref3 = tab, + _ref3$label = _ref3.label, + label = _ref3$label === void 0 ? '' : _ref3$label, + disabled = _ref3.disabled, + isDismissible = _ref3.isDismissible, + _ref3$onDismiss = _ref3.onDismiss, + onDismiss = _ref3$onDismiss === void 0 ? function () {} : _ref3$onDismiss; - return /*#__PURE__*/React.createElement(Chip, _extends$3({ - "data-test": "DesignSystem-ChipInput--Chip", - label: chip, - name: chip, - type: type, - disabled: disabled, - key: index, - className: "my-2 mx-2", - onClick: function onClick() { - return _onClick && _onClick(chip, index); - }, - onClose: function onClose() { - return onChipDeleteHandler(index); - } - }, rest)); + if (typeof label !== 'string') { + return label; + } + + var textAppearance = activeIndex === index ? 'link' : disabled ? 'disabled' : 'subtle'; + var tabTextClass = classnames(_defineProperty$1({}, 'Tab-selected', !disabled && activeIndex === index)); + return /*#__PURE__*/React.createElement(React.Fragment, null, renderInfo(tab, index), /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-Tabs--Text", + appearance: textAppearance, + className: tabTextClass + }, label), isDismissible && renderDismissIcon(tab, index, onDismiss)); + }; + + var renderTabs = tabs.map(function (tab, index) { + var _classNames8; + + var currentTabProp = children && 'props' in tab ? tab.props : tab; + var disabled = currentTabProp.disabled; + var tabHeaderClass = classnames((_classNames8 = {}, _defineProperty$1(_classNames8, 'Tab', true), _defineProperty$1(_classNames8, 'Tab--disabled', disabled), _defineProperty$1(_classNames8, 'Tab--active', !disabled && activeIndex === index), _defineProperty$1(_classNames8, 'Tab-selected', !disabled && activeIndex === index), _defineProperty$1(_classNames8, 'align-items-center', true), _classNames8)); + return ( + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement("div", { + ref: function ref(element) { + return element && !disabled && tabRefs.push(element); + }, + "data-test": "DesignSystem-Tabs--Tab", + key: index, + className: tabHeaderClass, + onClick: function onClick() { + return !disabled && tabClickHandler(index); + }, + onKeyDown: function onKeyDown(event) { + return tabKeyDownHandler(event, index); + }, + tabIndex: disabled ? -1 : 0 + }, renderTab(currentTabProp, index)) + ); }); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-ChipInput" + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Tabs" }, baseProps, { - className: ChipInputClass, - onClick: onClickHandler + className: wrapperClass }), /*#__PURE__*/React.createElement("div", { - className: "ChipInput-wrapper" - }, chips && chips.length > 0 && chipComponents, /*#__PURE__*/React.createElement("input", { - "data-test": "DesignSystem-ChipInput--Input", - ref: inputRef, - className: "ChipInput-input", - autoFocus: autoFocus, - placeholder: placeholder, - disabled: disabled, - value: inputValue, - onBlur: onBlur, - onFocus: onFocus, - onChange: onInputChangeHandler, - onKeyDown: onKeyDownHandler - })), chips.length > 0 && /*#__PURE__*/React.createElement(Icon, { - "data-test": "DesignSystem-ChipInput--Icon", - name: "close", - appearance: "subtle", - className: "ChipInput-icon", - onClick: onDeleteAllHandler - })); -}; -ChipInput.displayName = 'ChipInput'; -ChipInput.defaultProps = { - chipOptions: {}, - defaultValue: [], - allowDuplicates: false, - autoFocus: false -}; - -var getTextAppearance = function getTextAppearance(isActive, disabled) { - return disabled ? 'disabled' : isActive ? 'link' : 'default'; -}; -var getIconAppearance = function getIconAppearance(isActive, disabled) { - return disabled ? 'disabled' : isActive ? 'info' : 'default'; + className: headerClass, + "data-test": "DesignSystem-Tabs--Header" + }, renderTabs, inlineComponent), children && /*#__PURE__*/React.createElement("div", { + className: tabContentClass, + "data-test": "DesignSystem-Tabs--Content" + }, tabs[activeIndex])); }; -var getPillsAppearance = function getPillsAppearance(isActive) { - return isActive ? 'primary' : 'secondary'; +Tabs.displayName = 'Tabs'; +Tabs.defaultProps = { + withSeparator: true, + tabs: [] }; -var getMenu = function getMenu(menus, active) { - var _iterator = _createForOfIteratorHelper(menus), - _step; - - try { - for (_iterator.s(); !(_step = _iterator.n()).done;) { - var menu = _step.value; - if (active.name && menu.name === active.name || active.link && menu.link === active.link) { - return menu; +var accepts = function accepts(file, acceptedFiles) { + if (file && acceptedFiles) { + var acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(','); + var fileName = file.name || ''; + var mimeType = (file.type || '').toLowerCase(); + var baseMimeType = mimeType.replace(/\/.*$/, ''); + return acceptedFilesArray.some(function (type) { + var validType = type.trim().toLowerCase(); + + if (validType.charAt(0) === '.') { + return fileName.toLowerCase().endsWith(validType); } - if (menu.subMenu) { - var activeMenu = menu.subMenu.find(function (submenu) { - return active.name && submenu.name === active.name || active.link && submenu.link === active.link; - }); - if (activeMenu) return activeMenu; + if (validType.endsWith('/*')) { + return baseMimeType === validType.replace(/\/.*$/, ''); } - } - } catch (err) { - _iterator.e(err); - } finally { - _iterator.f(); + + return mimeType === validType; + }); } - return null; + return true; }; -var isMenuActive = function isMenuActive(menus, menu, active) { - if (active) { - var currActiveMenu = getMenu(menus, active); - return !!currActiveMenu && (currActiveMenu === menu || currActiveMenu.name.split('.')[0] === menu.name || currActiveMenu.name === menu.name || !!currActiveMenu.link && currActiveMenu.link === menu.link); +var isPropagationStopped = function isPropagationStopped(event) { + if (typeof event.isPropagationStopped === 'function') { + return event.isPropagationStopped(); + } + + if (typeof event.cancelBubble !== 'undefined') { + return event.cancelBubble; } return false; }; +var isEvtWithFiles = function isEvtWithFiles(event) { + if (!event.dataTransfer) { + return !!event.target && !!event.target.files; + } -var MenuItem = function MenuItem(props) { - var _classNames; + return Array.prototype.some.call(event.dataTransfer.types, function (type) { + return type === 'Files' || type === 'application/x-moz-file'; + }); +}; +var onDocumentDragOver = function onDocumentDragOver(event) { + event.preventDefault(); +}; +var composeEventHandlers = function composeEventHandlers() { + for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) { + fns[_key] = arguments[_key]; + } - var menu = props.menu, - isActive = props.isActive, - expanded = props.expanded, - rounded = props.rounded, - hasSubmenu = props.hasSubmenu, - isChildren = props.isChildren, - isChildrenVisible = props.isChildrenVisible, - onClick = props.onClick; - var baseProps = extractBaseProps(props); + return function (event) { + for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { + args[_key2 - 1] = arguments[_key2]; + } - var onClickHandler = function onClickHandler() { - if (onClick) onClick(menu); + return fns.some(function (fn) { + if (!isPropagationStopped(event) && fn) { + fn.apply(void 0, [event].concat(args)); + } + + return isPropagationStopped(event); + }); }; +}; +var reducer = function reducer(state, action) { + switch (action.type) { + case 'focus': + return _objectSpread2(_objectSpread2({}, state), {}, { + isFocused: true + }); - var ItemClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'MenuItem', true), _defineProperty$2(_classNames, 'MenuItem--vertical', true), _defineProperty$2(_classNames, 'MenuItem--collapsed', !expanded), _defineProperty$2(_classNames, 'MenuItem--expanded', expanded), _defineProperty$2(_classNames, 'MenuItem--active', isActive), _defineProperty$2(_classNames, 'MenuItem--disabled', menu.disabled), _defineProperty$2(_classNames, 'MenuItem--subMenu', isChildren && expanded), _defineProperty$2(_classNames, 'MenuItem--rounded', rounded && expanded), _classNames)); + case 'blur': + return _objectSpread2(_objectSpread2({}, state), {}, { + isFocused: false + }); - var renderSubMenu = function renderSubMenu() { - if (hasSubmenu) { - return /*#__PURE__*/React.createElement(Icon, { - className: "mx-4", - name: isChildrenVisible ? 'keyboard_arrow_up' : 'keyboard_arrow_down', - appearance: "subtle" + case 'openDialog': + return _objectSpread2(_objectSpread2({}, state), {}, { + isFileDialogActive: true }); - } - if (menu.count !== undefined) { - var _classNames2; + case 'closeDialog': + return _objectSpread2(_objectSpread2({}, state), {}, { + isFileDialogActive: false + }); - var count = menu.count > 99 ? '99+' : menu.count; - var PillsClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'MenuItem-count', true), _defineProperty$2(_classNames2, 'MenuItem-count--disabled', menu.disabled), _classNames2)); - return /*#__PURE__*/React.createElement(Pills, { - subtle: menu.disabled, - className: PillsClass, - appearance: getPillsAppearance(isActive), - "data-test": "DesignSystem-VerticalNav--Pills" - }, count); - } + case 'setDraggedFiles': + /* eslint no-case-declarations: 0 */ + var isDragActive = action.isDragActive, + draggedFiles = action.draggedFiles; + return _objectSpread2(_objectSpread2({}, state), {}, { + draggedFiles: draggedFiles, + isDragActive: isDragActive + }); - return null; - }; + case 'setFiles': + return _objectSpread2(_objectSpread2({}, state), {}, { + acceptedFiles: action.acceptedFiles, + fileRejections: action.fileRejections + }); - if (!expanded && !menu.icon) return null; - return /*#__PURE__*/React.createElement("div", _extends$3({ - className: ItemClass - }, baseProps, { - onClick: onClickHandler - }), /*#__PURE__*/React.createElement("div", { - className: "d-flex align-items-center overflow-hidden" - }, menu.icon && /*#__PURE__*/React.createElement(Icon, { - "data-test": "DesignSystem-VerticalNav--Icon", - className: expanded ? 'mr-4' : '', - name: menu.icon, - appearance: getIconAppearance(isActive, menu.disabled) - }), expanded && /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-VerticalNav--Text", - appearance: getTextAppearance(isActive, menu.disabled) - }, menu.label)), expanded && renderSubMenu()); -}; -MenuItem.defaultProps = { - isActive: false + case 'reset': + return _objectSpread2(_objectSpread2({}, state), {}, { + isFileDialogActive: false, + isDragActive: false, + draggedFiles: [], + acceptedFiles: [], + fileRejections: [] + }); + + default: + return state; + } }; -/** - * ####NOTE: VerticalNav sets first subMenu(if present) active if the Navigation is collapsed. - */ -var VerticalNav = function VerticalNav(props) { - var menus = props.menus, - active = props.active, - onClick = props.onClick, - expanded = props.expanded, - rounded = props.rounded, - autoCollapse = props.autoCollapse, - className = props.className; +var fileErrorMessages = { + FILE_INVALID_TYPE: 'File format not accepted', + FILE_TOO_LARGE: 'File is too large', + FILE_TOO_SMALL: 'File is too small', + TOO_MANY_FILES: 'Multiple files are not accepted' +}; - var _React$useState = React.useState({}), - _React$useState2 = _slicedToArray(_React$useState, 2), - menuState = _React$useState2[0], - setMenuState = _React$useState2[1]; +var isDefined = function isDefined(value) { + return value !== undefined && value !== null; +}; - var baseProps = extractBaseProps(props); - React.useEffect(function () { - if (props.active) { - var currMenu = getMenu(menus, props.active); - if (currMenu) updateMenuState(currMenu, true); +var getInvalidTypeRejectionErr = function getInvalidTypeRejectionErr(accept) { + var updatedAccept = Array.isArray(accept) && accept.length === 1 ? accept[0] : accept; + var messageSuffix = Array.isArray(updatedAccept) ? "one of ".concat(updatedAccept.join(', ')) : updatedAccept; + return { + type: 'FILE_INVALID_TYPE', + message: "File type must be ".concat(messageSuffix) + }; +}; +var getTooLargeRejectionErr = function getTooLargeRejectionErr(maxSize) { + return { + type: 'FILE_TOO_LARGE', + message: "File is larger than ".concat(maxSize, " bytes") + }; +}; +var getTooSmallRejectionErr = function getTooSmallRejectionErr(minSize) { + return { + type: 'FILE_TOO_SMALL', + message: "File is smaller than ".concat(minSize, " bytes") + }; +}; +var fileAccepted = function fileAccepted(file, accept) { + var isAcceptable = file.type === 'application/x-moz-file' || accepts(file, accept); + return [isAcceptable, isAcceptable ? null : getInvalidTypeRejectionErr(accept)]; +}; +var fileMatchSize = function fileMatchSize(file, minSize, maxSize) { + if (isDefined(file.size)) { + if (isDefined(minSize) && isDefined(maxSize)) { + if (file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)]; + if (file.size < minSize) return [false, getTooSmallRejectionErr(minSize)]; + } else if (isDefined(minSize) && file.size < minSize) { + return [false, getTooSmallRejectionErr(minSize)]; + } else if (isDefined(maxSize) && file.size > maxSize) { + return [false, getTooLargeRejectionErr(maxSize)]; } - }, [props.active]); + } + + return [true, null]; +}; +var getFileError = function getFileError(options) { + var files = options.files, + accept = options.accept, + minSize = options.minSize, + maxSize = options.maxSize, + multiple = options.multiple; + + if (!multiple && files.length > 1) { + return 'TOO_MANY_FILES'; + } + + var typeError = files.every(function (file) { + var _fileAccepted = fileAccepted(file, accept), + _fileAccepted2 = _slicedToArray(_fileAccepted, 1), + accepted = _fileAccepted2[0]; + + return !accepted; + }); + var sizeError = files.every(function (file) { + var _fileMatchSize = fileMatchSize(file, minSize, maxSize), + _fileMatchSize2 = _slicedToArray(_fileMatchSize, 1), + sizeMatch = _fileMatchSize2[0]; + + return !sizeMatch; + }); + return typeError ? 'FILE_INVALID_TYPE' : sizeError ? 'FILE_TOO_LARGE' : ''; +}; +var allFilesAccepted = function allFilesAccepted(options) { + var files = options.files, + accept = options.accept, + minSize = options.minSize, + maxSize = options.maxSize, + multiple = options.multiple; + + if (!multiple && files.length > 1) { + return false; + } + + return files.every(function (file) { + var _fileAccepted3 = fileAccepted(file, accept), + _fileAccepted4 = _slicedToArray(_fileAccepted3, 1), + accepted = _fileAccepted4[0]; - var updateMenuState = function updateMenuState(menu, val) { - var currMenu = getMenu(menus, menu); + var _fileMatchSize3 = fileMatchSize(file, minSize, maxSize), + _fileMatchSize4 = _slicedToArray(_fileMatchSize3, 1), + sizeMatch = _fileMatchSize4[0]; - if (currMenu) { - var nameSplit = currMenu.name.split('.'); + return accepted && sizeMatch; + }); +}; - if (nameSplit.length > 1 || currMenu.subMenu) { - var name = nameSplit[0]; +var COMMON_MIME_TYPES = new Map([// image +['gif', 'image/gif'], ['ico', 'image/x-icon'], ['jpeg', 'image/jpeg'], ['jpg', 'image/jpeg'], ['png', 'image/png'], ['bmp', 'image/bmp'], ['tif', 'image/tiff'], ['tiff', 'image/tiff'], ['apng', 'image/apng'], ['avif', 'image/avif'], ['jfif', 'image/jpeg'], ['pjpeg', 'image/pjpeg'], ['pjp', 'image/jpeg'], ['svg', 'image/svg+xml'], ['webp', 'image/webp'], ['cur', 'image/x-win-bitmap'], ['MTS', 'model/vnd.mts'], // Video +['roq', 'video'], ['f4a', 'video'], ['f4b', 'video'], ['drc', 'video'], ['nsv', 'video'], ['avi', 'video/x-msvideo'], ['mkv', 'video/x-matroska'], ['mov', 'video/quicktime'], ['mp4', 'video/mp4'], ['webm', 'video/webm'], ['flv', 'video/x-flv'], ['vob', 'video/x-ms-vob'], ['ogv', 'video/ogg'], ['ogg', 'application/ogg'], ['gifv', 'image/gif'], ['mng', 'video/x-mng'], ['M2TS', 'video/MP2T'], ['TS', 'video/mp2t'], ['qt', 'video/quicktime'], ['wmv', 'video/x-ms-wmv'], ['yuv', 'application/octet-stream'], ['rm', 'application/vnd.rn-realmedia'], ['rmvb', 'application/vnd.rn-realmedia-vbr'], ['viv', 'video/vnd.vivo'], ['asf', 'video/x-ms-asf'], ['amv', 'video/x-amv'], ['m4v', 'video/x-m4v'], ['mpg', 'video/mpeg'], ['mpeg', 'video/mpeg'], ['mpe', 'video/mpeg'], ['mpv', 'video/mpv'], ['m2v', 'video/mpeg'], ['svi', 'video/x-msvideo'], ['3gp', 'video/3gpp'], ['3g2', 'video/3gpp2'], ['mxf', 'application/mxf'], ['flv', 'video/x-flv'], ['f4v', 'video/x-f4v'], ['f4p', 'video/mp4'], // audio +['aa', 'audio'], ['aax', 'audio'], ['act', 'audio'], ['alac', 'audio'], ['ape', 'audio'], ['awb', 'audio'], ['dss', 'audio'], ['dvf', 'audio'], ['iklax', 'audio'], ['ivs', 'audio'], ['msv', 'audio'], ['nmf', 'audio'], ['mogg', 'audio'], ['raw', 'audio'], ['rf64', 'audio'], ['sln', 'audio'], ['wv', 'audio'], ['8svx', 'audio'], ['3gp', 'audio/3gpp'], ['mp2', 'audio/mpeg'], ['aac', 'audio/x-aac'], ['aiff', 'audio/x-aiff'], ['amr', 'audio/amr'], ['au', 'audio/basic'], ['flac', 'audio/x-flac'], ['gsm', 'audio/gsm'], ['m4a', 'audio/mp4a-latm'], ['m4b', 'audio/mp4a-latm'], ['m4p', 'audio/mp4a-latm'], ['mmf', 'application/vnd.smaf'], ['mp3', 'audio/mpeg'], ['ogg', 'audio/ogg'], ['oga', 'audio/ogg'], ['opus', 'audio/opus'], ['tta', 'audio/x-tta'], ['voc', 'audio/x-voice'], ['wav', 'audio/x-wav'], ['wma', 'audio/x-ms-wma'], ['webm', 'audio/webm'], ['cda ', 'application/x-cdf'], ['ra', 'audio/x-pn-realaudio'], ['vox', 'application/x-authorware-bin'], ['rm', 'application/vnd.rn-realmedia'], ['mpc', 'application/vnd.mophun.certificate'], // docs +['pdf', 'application/pdf'], ['zip', 'application/zip'], ['doc', 'application/msword'], ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'], ['xlss', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'], ['xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'], ['xls', 'application/vnd.ms-excel'], ['odt', 'application/vnd.oasis.opendocument.text'], ['tex', 'application/x-tex'], ['wpd', 'application/wordperfect'], ['ods', 'application/vnd.oasis.opendocument.spreadsheet'], ['csv', 'text/csv'], ['rtf', 'text/rtf'], ['txt', 'text/plain'], ['tsv', 'text/tab-separated-values']]); +var FILES_TO_IGNORE = ['.DS_Store', 'Thumbs.db']; +function fromEvent(_x) { + return _fromEvent.apply(this, arguments); +} - if (autoCollapse) { - setMenuState(_defineProperty$2({}, name, val || !menuState[name])); - } else { - var menuData = _objectSpread2({}, menuState); +function _fromEvent() { + _fromEvent = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(evt) { + return regeneratorRuntime.wrap(function _callee2$(_context2) { + while (1) { + switch (_context2.prev = _context2.next) { + case 0: + return _context2.abrupt("return", isDragEvt(evt) && evt.dataTransfer ? getDataTransferFiles(evt.dataTransfer, evt.type) : getInputFiles(evt)); - menuData[name] = val !== undefined ? val : !menuData[name]; - setMenuState(menuData); - } - } else { - if (autoCollapse) { - if (!expanded) setMenuState({}); + case 1: + case "end": + return _context2.stop(); } } - } - }; + }, _callee2); + })); + return _fromEvent.apply(this, arguments); +} - var onClickHandler = function onClickHandler(menu) { - if (menu.subMenu) { - if (!expanded) { - if (onClick) onClick(menu.subMenu[0]); - } else { - updateMenuState(menu); - } - } else { - if (onClick) onClick(menu); - } - }; +function isDragEvt(value) { + return !!value.dataTransfer; +} - var renderList = function renderList() { - var list = menus.map(function (menu, index) { - var _classNames; +function toFileWithPath(file, path) { + var f = withMimeType(file); - var isActive = !menuState[menu.name] && isMenuActive(menus, menu, active); - var hasSubmenu = menu.subMenu && menu.subMenu.length > 0; - var isChildrenVisible = hasSubmenu && menuState[menu.name]; - var hasGroup = index === 0 || menus[index - 1].group !== menu.group; - var sectionClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'VerticalNav-section', true), _defineProperty$2(_classNames, 'VerticalNav-section--border', index !== 0), _classNames)); - return /*#__PURE__*/React.createElement(React.Fragment, null, hasGroup && menu.group && expanded && /*#__PURE__*/React.createElement("div", { - className: sectionClass - }, /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-VerticalNav--Section", - size: "small", - weight: "strong", - appearance: "subtle" - }, menu.group)), /*#__PURE__*/React.createElement(MenuItem, { - "data-test": "DesignSystem-VerticalNav--Item", - menu: menu, - expanded: expanded, - isActive: isActive, - hasSubmenu: hasSubmenu, - isChildren: false, - rounded: rounded, - isChildrenVisible: isChildrenVisible, - onClick: onClickHandler - }), menuState[menu.name] && menu.subMenu && menu.subMenu.map(function (subMenu, id) { - return /*#__PURE__*/React.createElement(MenuItem, { - key: id, - menu: subMenu, - expanded: expanded, - hasSubmenu: false, - isChildren: true, - rounded: rounded, - onClick: onClickHandler, - isActive: isMenuActive(menus, subMenu, active) - }); - })); + if (typeof f.path !== 'string') { + var _ref = file, + webkitRelativePath = _ref.webkitRelativePath; + Object.defineProperty(f, 'path', { + value: typeof path === 'string' ? path : typeof webkitRelativePath === 'string' && webkitRelativePath.length > 0 ? webkitRelativePath : file.name, + writable: false, + configurable: false, + enumerable: true }); - return /*#__PURE__*/React.createElement(React.Fragment, null, list); - }; - - var classes = classnames(_defineProperty$2({ - VerticalNav: true - }, 'VerticalNav--expanded', expanded), className); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: classes - }), renderList()); -}; -VerticalNav.defaultProps = { - expanded: true, - autoCollapse: true, - rounded: false -}; - -var HorizontalNav = function HorizontalNav(props) { - var menus = props.menus, - active = props.active, - onClick = props.onClick, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classnames(_defineProperty$2({}, 'HorizontalNav', true), className); - - var onClickHandler = function onClickHandler(menu) { - return function () { - if (onClick) onClick(menu); - }; - }; + } - var getPillsClass = function getPillsClass(disabled) { - var _classNames2; + return f; +} - return classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'HorizontalNav-pills', true), _defineProperty$2(_classNames2, 'HorizontalNav-pills--disabled', disabled), _classNames2)); - }; +function withMimeType(file) { + var name = file.name; + var hasExtension = name && name.lastIndexOf('.') !== -1; - var renderIcon = function renderIcon(menu, isActive) { - if (menu.count !== undefined) { - var count = menu.count > 99 ? '99+' : menu.count; - return /*#__PURE__*/React.createElement(Pills, { - subtle: menu.disabled, - className: getPillsClass(menu.disabled), - appearance: getPillsAppearance(isActive), - "data-test": "DesignSystem-HorizontalNav--Pills" - }, count); - } + if (hasExtension && !file.type) { + var ext = name.split('.').pop().toLowerCase(); + var type = COMMON_MIME_TYPES.get(ext); - if (menu.icon) { - return /*#__PURE__*/React.createElement(Icon, { - className: "mr-3", - name: menu.icon, - appearance: getIconAppearance(isActive, menu.disabled), - "data-test": "DesignSystem-HorizontalNav--Icon" + if (type) { + Object.defineProperty(file, 'type', { + value: type, + writable: false, + configurable: false, + enumerable: true }); } + } - return null; - }; - - var list = menus.map(function (menu, index) { - var _classNames3; + return file; +} - var isActive = isMenuActive(menus, menu, active); - var menuClasses = classnames((_classNames3 = { - 'HorizontalNav-menu': true - }, _defineProperty$2(_classNames3, 'HorizontalNav-menu--active', isActive), _defineProperty$2(_classNames3, 'HorizontalNav-menu--disabled', menu.disabled), _classNames3)); - return /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-HorizontalNav", - key: index, - className: menuClasses, - onClick: onClickHandler(menu) - }, renderIcon(menu, isActive), /*#__PURE__*/React.createElement(Text, { - appearance: getTextAppearance(isActive, menu.disabled), - "data-test": "DesignSystem-HorizontalNav--Text", - className: "HorizontalNav-menuText" - }, menu.label)); +function getInputFiles(evt) { + var files = isInput(evt.target) ? evt.target.files ? fromList(evt.target.files) : [] : []; + return files.map(function (file) { + return toFileWithPath(file); }); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: classes - }), list); -}; - -var _excluded$7 = ["children", "tooltip"]; -var propsList = ['trigger', 'on', 'open', 'offset', 'onToggle', 'dark', 'customStyle', 'closeOnBackdropClick', 'hideOnReferenceEscape', 'closeOnScroll']; -var Tooltip = function Tooltip(props) { - var children = props.children, - tooltip = props.tooltip, - rest = _objectWithoutProperties$1(props, _excluded$7); - - var tooltipWrapper = /*#__PURE__*/React.createElement("div", { - className: "Tooltip" - }, /*#__PURE__*/React.createElement(Text, { - className: "Tooltip-text", - appearance: "white" - }, tooltip)); - return /*#__PURE__*/React.createElement(Popover, _extends$3({ - trigger: children, - on: 'hover', - offset: 'medium' - }, rest), tooltipWrapper); -}; // Tooltip.defaultProps = filterProps({ -// ...Popover.defaultProps, -// hoverable: false -// }, propsList); - -Tooltip.defaultProps = Object.assign({}, filterProps(Popover.defaultProps, propsList), { - hoverable: false -}); - -var Dialog = function Dialog(props) { - var dimension = props.dimension, - primaryButtonAppearance = props.primaryButtonAppearance, - secondaryButtonAppearance = props.secondaryButtonAppearance, - open = props.open, - onClose = props.onClose, - heading = props.heading, - title = props.title, - description = props.description, - primaryButtonLabel = props.primaryButtonLabel, - primaryButtonCallback = props.primaryButtonCallback, - secondaryButtonLabel = props.secondaryButtonLabel, - secondaryButtonCallback = props.secondaryButtonCallback; - var baseProps = extractBaseProps(props); - return /*#__PURE__*/React.createElement(Modal, _extends$3({ - "data-test": "DesignSystem-Dialog" - }, baseProps, { - open: open, - dimension: dimension, - onClose: onClose, - headerOptions: { - heading: heading - }, - footer: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, { - "data-test": "DesignSystem-Dialog--SecondaryButton", - appearance: secondaryButtonAppearance, - onClick: secondaryButtonCallback - }, secondaryButtonLabel), /*#__PURE__*/React.createElement(Button, { - className: "ml-4", - "data-test": "DesignSystem-Dialog--PrimaryButton", - appearance: primaryButtonAppearance, - onClick: primaryButtonCallback - }, primaryButtonLabel)) - }), /*#__PURE__*/React.createElement(ModalDescription, { - title: title, - description: description - })); -}; +} -Dialog.displayName = 'Dialog'; -Dialog.defaultProps = { - dimension: 'small', - primaryButtonAppearance: 'primary', - secondaryButtonAppearance: 'basic' -}; +function isInput(value) { + return value !== null; +} -var _excluded$6 = ["label"]; -var OverlayFooter = function OverlayFooter(props) { - var open = props.open, - className = props.className, - children = props.children, - actions = props.actions; - var baseProps = extractBaseProps(props); - var classes = classnames({ - OverlayFooter: true - }, className); - var wrapperRef = /*#__PURE__*/React.createRef(); - React.useEffect(function () { - if (open) { - if (wrapperRef.current) { - var _wrapperRef$current; +function getDataTransferFiles(_x2, _x3) { + return _getDataTransferFiles.apply(this, arguments); +} - var secondaryBtns = (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.querySelectorAll('.Button--basic'); - var secondaryBtn = secondaryBtns[secondaryBtns.length - 1]; +function _getDataTransferFiles() { + _getDataTransferFiles = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3(dt, type) { + var items, files; + return regeneratorRuntime.wrap(function _callee3$(_context3) { + while (1) { + switch (_context3.prev = _context3.next) { + case 0: + if (!dt.items) { + _context3.next = 8; + break; + } - if (secondaryBtn) { - window.requestAnimationFrame(function () { - return secondaryBtn.focus({ - preventScroll: true + items = fromList(dt.items).filter(function (item) { + return item.kind === 'file'; }); - }); - } - } - } - }, [open]); - if (actions) { - return /*#__PURE__*/React.createElement("div", _extends$3({ - ref: wrapperRef - }, baseProps, { - className: classes - }), actions.map(function (_ref, index) { - _ref.label; - var options = _objectWithoutProperties$1(_ref, _excluded$6); + if (!(type !== 'drop')) { + _context3.next = 4; + break; + } - return /*#__PURE__*/React.createElement(Button, _extends$3({}, options, { - key: index - })); - })); - } + return _context3.abrupt("return", items); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-OverlayFooter", - ref: wrapperRef - }, baseProps, { - className: classes - }), children); -}; -OverlayFooter.displayName = 'OverlayFooter'; + case 4: + _context3.next = 6; + return Promise.all(items.map(toFilePromises)); -var OverlayHeader = function OverlayHeader(props) { - var _classNames2; + case 6: + files = _context3.sent; + return _context3.abrupt("return", noIgnoredFiles(flatten(files))); - var className = props.className, - heading = props.heading, - subHeading = props.subHeading, - backButton = props.backButton, - backIcon = props.backIcon, - backIconCallback = props.backIconCallback, - backButtonCallback = props.backButtonCallback; - var baseProps = extractBaseProps(props); - var classes = classnames(_defineProperty$2({ - OverlayHeader: true - }, 'OverlayHeader--withBackButton', backButton || backIcon), className); - var subheadingClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'OverlayHeader-subheading', true), _defineProperty$2(_classNames2, 'OverlayHeader-subheading--withBackButton', backButton || backIcon), _classNames2)); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-OverlayHeader" - }, baseProps, { - className: classes - }), /*#__PURE__*/React.createElement("div", { - className: "OverlayHeader-headerWrapper" - }, (backButton || backIcon) && /*#__PURE__*/React.createElement(Button, { - "data-test": "DesignSystem-OverlayHeader--Button", - appearance: "transparent", - className: "mr-5", - icon: "keyboard_backspace", - onClick: backButtonCallback || backIconCallback - }), heading && /*#__PURE__*/React.createElement(Heading, { - "data-test": "DesignSystem-OverlayHeader--heading" - }, heading)), subHeading && /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-OverlayHeader--Subheading", - appearance: "subtle", - className: subheadingClass - }, subHeading)); -}; -OverlayHeader.displayName = 'OverlayHeader'; + case 8: + return _context3.abrupt("return", noIgnoredFiles(fromList(dt.files).map(function (file) { + return toFileWithPath(file); + }))); -var OverlayBody = function OverlayBody(props) { - var children = props.children, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classnames({ - OverlayBody: true - }, className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-OverlayBody" - }, baseProps, { - className: classes - }), children); -}; -OverlayBody.defaultProps = { - stickFooter: true, - withFooter: true -}; -OverlayBody.displayName = 'OverlayBody'; + case 9: + case "end": + return _context3.stop(); + } + } + }, _callee3); + })); + return _getDataTransferFiles.apply(this, arguments); +} -var getWrapperElement = function getWrapperElement() { - var element = document.querySelector('.Overlay-wrapper'); +function noIgnoredFiles(files) { + return files.filter(function (file) { + return FILES_TO_IGNORE.indexOf(file.name) === -1; + }); +} - if (element === null) { - element = document.createElement('div'); - element.classList.add('Overlay-wrapper'); - document.body.appendChild(element); - } +function fromList(items) { + var files = []; // tslint:disable: prefer-for-of - return element; -}; -var getUpdatedZIndex = function getUpdatedZIndex(ele) { - var containerClassName = ele.containerClassName, - elementRef = ele.elementRef, - element = ele.element; - if (element === null) return; - var elements = element.querySelectorAll(containerClassName); - if (elements.length < 1) return; - var siblings = Array.from(elements).filter(function (el) { - return el !== elementRef.current; - }); - var zIndex = -1; - siblings.forEach(function (element) { - var prevZIndex = parseInt(window.getComputedStyle(element).zIndex || '0', 10); - zIndex = Math.max(zIndex, prevZIndex + 10); - }); - return zIndex > 0 ? zIndex : undefined; -}; + for (var i = 0; i < items.length; i++) { + var file = items[i]; + files.push(file); + } -/** - * ** NOTE: Use `headerOptions`, `header`, `footerOptions`, `footer`, `onClose` and `backdropClose`(boolean). ** - * ** Support for composition using `ModalHeader`, `ModalBody` and `ModalFooter` will be deprecated soon. ** - */ -var Modal = /*#__PURE__*/function (_React$Component) { - _inherits$1(Modal, _React$Component); + return files; +} - var _super = _createSuper$1(Modal); +function toFilePromises(item) { + if (typeof item.webkitGetAsEntry !== 'function') { + return fromDataTransferItem(item); + } - function Modal(props) { - var _this; + var entry = item.webkitGetAsEntry(); - _classCallCheck$1(this, Modal); + if (entry && entry.isDirectory) { + return fromDirEntry(entry); + } - _this = _super.call(this, props); + return fromDataTransferItem(item); +} - _defineProperty$2(_assertThisInitialized$2(_this), "modalRef", /*#__PURE__*/React.createRef()); +function flatten(items) { + return items.reduce(function (acc, files) { + return [].concat(_toConsumableArray(acc), _toConsumableArray(Array.isArray(files) ? flatten(files) : [files])); + }, []); +} - _defineProperty$2(_assertThisInitialized$2(_this), "element", void 0); +function fromDataTransferItem(item) { + var file = item.getAsFile(); - _this.element = getWrapperElement(); - _this.state = { - open: props.open, - animate: props.open - }; - _this.onOutsideClickHandler = _this.onOutsideClickHandler.bind(_assertThisInitialized$2(_this)); - return _this; + if (!file) { + return Promise.reject("".concat(item, " is not a File")); } - _createClass$1(Modal, [{ - key: "componentDidUpdate", - value: function componentDidUpdate(prevProps) { - var _this2 = this; + var fwp = toFileWithPath(file); + return Promise.resolve(fwp); +} - if (prevProps.open !== this.props.open) { - if (this.props.open) { - var zIndex = getUpdatedZIndex({ - element: this.element, - containerClassName: '.Overlay-container--open', - elementRef: this.modalRef - }); - this.setState({ - zIndex: zIndex, - open: true, - animate: true - }); - } else { - this.setState({ - animate: false - }, function () { - window.setTimeout(function () { - _this2.setState({ - open: false - }); - }, 120); - }); +function fromEntry(_x4) { + return _fromEntry.apply(this, arguments); +} + +function _fromEntry() { + _fromEntry = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4(entry) { + return regeneratorRuntime.wrap(function _callee4$(_context4) { + while (1) { + switch (_context4.prev = _context4.next) { + case 0: + return _context4.abrupt("return", entry.isDirectory ? fromDirEntry(entry) : fromFileEntry(entry)); + + case 1: + case "end": + return _context4.stop(); } } - } - }, { - key: "onOutsideClickHandler", - value: function onOutsideClickHandler(event) { - var _this$props = this.props, - backdropClose = _this$props.backdropClose, - onClose = _this$props.onClose; - var open = this.state.open; + }, _callee4); + })); + return _fromEntry.apply(this, arguments); +} + +function fromDirEntry(entry) { + var reader = entry.createReader(); + return new Promise(function (resolve, reject) { + var entries = []; + + function readEntries() { + reader.readEntries( /*#__PURE__*/function () { + var _ref2 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(batch) { + var files, items; + return regeneratorRuntime.wrap(function _callee$(_context) { + while (1) { + switch (_context.prev = _context.next) { + case 0: + if (batch.length) { + _context.next = 13; + break; + } + + _context.prev = 1; + _context.next = 4; + return Promise.all(entries); - if (open) { - if (onClose) onClose(event, 'OutsideClick');else if (typeof backdropClose === 'function') backdropClose(event, 'OutsideClick'); - } - } - }, { - key: "render", - value: function render() { - var _classNames, _classNames2, _classNames3; + case 4: + files = _context.sent; + resolve(files); + _context.next = 11; + break; - var _this$state = this.state, - animate = _this$state.animate, - open = _this$state.open, - zIndex = _this$state.zIndex; - var _this$props2 = this.props, - className = _this$props2.className, - backdropClose = _this$props2.backdropClose, - dimension = _this$props2.dimension, - children = _this$props2.children, - headerOptions = _this$props2.headerOptions, - header = _this$props2.header, - footerOptions = _this$props2.footerOptions, - seperator = _this$props2.seperator, - footer = _this$props2.footer, - onClose = _this$props2.onClose; - var classes = classnames({ - Modal: true, - 'Modal--open': open, - 'Modal-animation--open': animate, - 'Modal-animation--close': !animate - }, className); - var headerClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Modal-header', true), _defineProperty$2(_classNames, 'Modal-header--withSeperator', seperator), _classNames)); - var footerClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Modal-footer', true), _defineProperty$2(_classNames2, 'Modal-footer--withSeperator', seperator), _classNames2)); - var ContainerClass = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'Row', true), _defineProperty$2(_classNames3, 'Overlay-container', true), _defineProperty$2(_classNames3, 'Overlay-container--open', open), _classNames3)); - var baseProps = extractBaseProps(this.props); - var sizeMap = { - small: { - size: '3', - sizeL: '4', - sizeM: '4', - sizeXS: '10' - }, - medium: { - size: '4', - sizeL: '6', - sizeM: '6', - sizeXS: '10' - }, - large: { - size: '6', - sizeL: '8', - sizeM: '8', - sizeXS: '10' - } - }; - var ModalContainer = /*#__PURE__*/React.createElement(Row, { - "data-test": "DesignSystem-ModalContainer", - className: ContainerClass, - "data-layer": true, - style: { - zIndex: zIndex - } - }, /*#__PURE__*/React.createElement(Column, _extends$3({ - "data-test": "DesignSystem-Modal" - }, baseProps, { - className: classes - }, sizeMap[dimension], { - ref: this.modalRef - }), (headerOptions || header) && /*#__PURE__*/React.createElement("div", { - className: headerClass - }, /*#__PURE__*/React.createElement(Column, null, !header && /*#__PURE__*/React.createElement(OverlayHeader, _extends$3({ - "data-test": "DesignSystem-Modal--header" - }, headerOptions)), !!header && header), /*#__PURE__*/React.createElement(Column, { - className: "flex-grow-0" - }, /*#__PURE__*/React.createElement(Button, { - icon: "close", - appearance: "transparent", - "data-test": "DesignSystem-Modal--CloseButton", - onClick: function onClick(event) { - if (onClose) onClose(event, 'IconClick'); - } - }))), children && /*#__PURE__*/React.createElement(React.Fragment, null, headerOptions || footerOptions || footer || header ? /*#__PURE__*/React.createElement(OverlayBody, { - className: "Modal-body" - }, this.props.children) : children), (!!footer || !!footerOptions) && /*#__PURE__*/React.createElement(OverlayFooter, _extends$3({ - "data-test": "DesignSystem-Modal--footer" - }, footerOptions, { - open: open, - className: footerClass - }), footer))); - var ModalWrapper = backdropClose ? /*#__PURE__*/React.createElement(OutsideClick, { - "data-test": "DesignSystem-Modal--OutsideClick", - onOutsideClick: this.onOutsideClickHandler - }, ModalContainer) : ModalContainer; - var WrapperElement = /*#__PURE__*/ReactDOM.createPortal(ModalWrapper, this.element); - return /*#__PURE__*/React.createElement(React.Fragment, null, WrapperElement, /*#__PURE__*/React.createElement(Backdrop, { - open: this.state.animate - })); - } - }]); + case 8: + _context.prev = 8; + _context.t0 = _context["catch"](1); + reject(_context.t0); - return Modal; -}(React.Component); + case 11: + _context.next = 16; + break; -_defineProperty$2(Modal, "defaultProps", { - dimension: 'medium' -}); + case 13: + items = Promise.all(batch.map(fromEntry)); + entries.push(items); // Continue reading -var ModalHeader = function ModalHeader(props) { - var className = props.className, - heading = props.heading, - subHeading = props.subHeading, - onClose = props.onClose, - seperator = props.seperator, - backIcon = props.backIcon, - backIconCallback = props.backIconCallback; - var baseProps = extractBaseProps(props); - var classes = classnames(_defineProperty$2({ - 'Modal-header': true - }, 'Modal-header--withSeperator', seperator), className); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: classes - }), /*#__PURE__*/React.createElement(Column, null, /*#__PURE__*/React.createElement(OverlayHeader, { - heading: heading, - subHeading: subHeading, - backButton: backIcon, - backButtonCallback: backIconCallback - })), /*#__PURE__*/React.createElement(Column, { - className: "flex-grow-0" - }, /*#__PURE__*/React.createElement(Button, { - icon: "close", - appearance: "transparent", - "data-test": "DesignSystem-Modal--CloseButton", - onClick: function onClick(event) { - if (onClose) onClose(event, 'IconClick'); + readEntries(); + + case 16: + case "end": + return _context.stop(); + } + } + }, _callee, null, [[1, 8]]); + })); + + return function (_x5) { + return _ref2.apply(this, arguments); + }; + }(), function (err) { + reject(err); + }); } - }))); -}; -ModalHeader.displayName = 'ModalHeader'; -var ModalBody = function ModalBody(props) { - var children = props.children, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classnames({ - 'Modal-body': true - }, className); - return /*#__PURE__*/React.createElement(OverlayBody, _extends$3({}, baseProps, { - stickFooter: true, - className: classes - }), children); -}; -ModalBody.defaultProps = { - stickFooter: true, - withFooter: true -}; -ModalBody.displayName = 'ModalBody'; + readEntries(); + }); +} -var ModalFooter = function ModalFooter(props) { - var _classNames; +function fromFileEntry(_x6) { + return _fromFileEntry.apply(this, arguments); +} - var open = props.open, - children = props.children, - className = props.className, - seperator = props.seperator; - var baseProps = extractBaseProps(props); - var classes = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Modal-footer', true), _defineProperty$2(_classNames, 'Modal-footer--withSeperator', seperator), _classNames), className); - return /*#__PURE__*/React.createElement(OverlayFooter, _extends$3({}, baseProps, { - open: open, - className: classes - }), children); -}; -ModalFooter.displayName = 'ModalFooter'; +function _fromFileEntry() { + _fromFileEntry = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee5(entry) { + return regeneratorRuntime.wrap(function _callee5$(_context5) { + while (1) { + switch (_context5.prev = _context5.next) { + case 0: + return _context5.abrupt("return", new Promise(function (resolve, reject) { + entry.file(function (file) { + var fwp = toFileWithPath(file, entry.fullPath); + resolve(fwp); + }, function (err) { + reject(err); + }); + })); -var FullscreenModal = /*#__PURE__*/function (_React$Component) { - _inherits$1(FullscreenModal, _React$Component); + case 1: + case "end": + return _context5.stop(); + } + } + }, _callee5); + })); + return _fromFileEntry.apply(this, arguments); +} - var _super = _createSuper$1(FullscreenModal); +var _excluded$m = ["refKey", "onKeyDown", "onFocus", "onBlur", "onClick", "onDragEnterCallback", "onDragOverCallback", "onDragLeaveCallback", "onDropCallback"], + _excluded2$1 = ["refKey", "onChange", "onClick"]; +var initialState = { + isFocused: false, + isFileDialogActive: false, + isDragActive: false, + isDragAccept: false, + isDragReject: false, + draggedFiles: [], + acceptedFiles: [], + fileRejections: [] +}; +var DropzoneBase = function DropzoneBase(props) { + var accept = props.accept, + disabled = props.disabled, + maxSize = props.maxSize, + minSize = props.minSize, + multiple = props.multiple, + onDragEnter = props.onDragEnter, + onDragLeave = props.onDragLeave, + onDragOver = props.onDragOver, + onDrop = props.onDrop, + onDropAccepted = props.onDropAccepted, + onDropRejected = props.onDropRejected, + onFileDialogCancel = props.onFileDialogCancel, + getFilesFromEvent = props.getFilesFromEvent, + preventDropOnDocument = props.preventDropOnDocument, + validator = props.validator; + var rootRef = useRef(null); + var inputRef = useRef(null); - function FullscreenModal(props) { - var _this; + var _useReducer = useReducer(reducer, initialState), + _useReducer2 = _slicedToArray(_useReducer, 2), + state = _useReducer2[0], + dispatch = _useReducer2[1]; - _classCallCheck$1(this, FullscreenModal); + var isFocused = state.isFocused, + isFileDialogActive = state.isFileDialogActive, + draggedFiles = state.draggedFiles; + var openFileDialog = useCallback(function () { + if (inputRef.current) { + dispatch({ + type: 'openDialog' + }); + inputRef.current.value = ''; + inputRef.current.click(); + } + }, [dispatch]); - _this = _super.call(this, props); + var onWindowFocus = function onWindowFocus() { + if (isFileDialogActive) { + setTimeout(function () { + if (inputRef.current) { + var _files = inputRef.current.files; - _defineProperty$2(_assertThisInitialized$2(_this), "modalRef", /*#__PURE__*/React.createRef()); + if (!_files || !_files.length) { + dispatch({ + type: 'closeDialog' + }); - _defineProperty$2(_assertThisInitialized$2(_this), "element", void 0); + if (typeof onFileDialogCancel === 'function') { + onFileDialogCancel(); + } + } + } + }, 300); + } + }; - _this.element = getWrapperElement(); - _this.state = { - open: props.open, - animate: props.open + useEffect$2(function () { + window.addEventListener('focus', onWindowFocus, false); + return function () { + window.removeEventListener('focus', onWindowFocus, false); }; - return _this; - } + }, [inputRef, isFileDialogActive, onFileDialogCancel]); // Cb to open the file dialog when SPACE/ENTER occurs on the dropzone - _createClass$1(FullscreenModal, [{ - key: "componentDidUpdate", - value: function componentDidUpdate(prevProps) { - var _this2 = this; + var onKeyDownCb = useCallback(function (event) { + if (!rootRef.current || !rootRef.current.isEqualNode(event.target)) { + return; + } - if (prevProps.open !== this.props.open) { - if (this.props.open) { - var zIndex = getUpdatedZIndex({ - element: this.element, - containerClassName: '.Overlay-container--open', - elementRef: this.modalRef - }); - this.setState({ - zIndex: zIndex, - open: true, - animate: true - }); - } else { - this.setState({ - animate: false - }, function () { - window.setTimeout(function () { - _this2.setState({ - open: false - }); - }, 120); - }); - } - } + if (event.keyCode === 32 || event.keyCode === 13) { + event.preventDefault(); + openFileDialog(); } - }, { - key: "render", - value: function render() { - var _classNames; + }, [rootRef, inputRef]); // Update focus state for the dropzone - var _this$state = this.state, - animate = _this$state.animate, - open = _this$state.open, - zIndex = _this$state.zIndex; - var _this$props = this.props, - className = _this$props.className, - dimension = _this$props.dimension, - children = _this$props.children, - header = _this$props.header, - headerOptions = _this$props.headerOptions, - footer = _this$props.footer, - footerOptions = _this$props.footerOptions, - onClose = _this$props.onClose; - var classes = classnames({ - FullscreenModal: true, - 'FullscreenModal--open': open, - 'FullscreenModal-animation--open': animate, - 'FullscreenModal-animation--close': !animate - }, className); - var ContainerClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Overlay-container', true), _defineProperty$2(_classNames, 'Overlay-container--open', open), _classNames)); - var baseProps = extractBaseProps(this.props); - var sizeMap = { - medium: { - size: '4', - sizeL: '6', - sizeM: '6', - sizeXS: '12' - }, - large: { - size: '6', - sizeL: '8', - sizeM: '8', - sizeXS: '12' - } - }; - var ModalContainer = /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-FullscreenModalContainer", - className: ContainerClass, - "data-layer": true, - style: { - zIndex: zIndex - } - }, /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-FullscreenModal" - }, baseProps, { - className: classes, - ref: this.modalRef - }), /*#__PURE__*/React.createElement(Row, { - className: "justify-content-center" - }, /*#__PURE__*/React.createElement(Column, sizeMap[dimension], /*#__PURE__*/React.createElement(Row, { - className: "FullscreenModal-header" - }, /*#__PURE__*/React.createElement(Column, null, !header && /*#__PURE__*/React.createElement(OverlayHeader, _extends$3({ - "data-test": "DesignSystem-FullscreenModal--header" - }, headerOptions)), !!header && header), /*#__PURE__*/React.createElement(Column, { - className: "flex-grow-0" - }, /*#__PURE__*/React.createElement(Button, { - icon: "close", - appearance: "transparent", - "data-test": "DesignSystem-FullscreenModal--CloseButton", - onClick: function onClick(event) { - if (onClose) onClose(event, 'IconClick'); - } - }))), /*#__PURE__*/React.createElement(OverlayBody, { - "data-test": "DesignSystem-FullscreenModal--Body", - className: "FullscreenModal-body" - }, children), (!!footer || !!footerOptions) && /*#__PURE__*/React.createElement(OverlayFooter, _extends$3({ - "data-test": "DesignSystem-FullscreenModal--footer" - }, footerOptions, { - open: open, - className: "FullscreenModal-footer" - }), footer))))); - var WrapperElement = /*#__PURE__*/ReactDOM.createPortal(ModalContainer, this.element); - return /*#__PURE__*/React.createElement(React.Fragment, null, WrapperElement); + var onFocusCb = useCallback(function () { + dispatch({ + type: 'focus' + }); + }, []); + var onBlurCb = useCallback(function () { + dispatch({ + type: 'blur' + }); + }, []); + var dragTargetsRef = useRef([]); + + var onDocumentDrop = function onDocumentDrop(event) { + // Not every event target type is element so we have to check if it is. + if (event.target instanceof HTMLDivElement && rootRef.current && rootRef.current.contains(event.target)) { + return; } - }]); - return FullscreenModal; -}(React.Component); + event.preventDefault(); + dragTargetsRef.current = []; + }; -_defineProperty$2(FullscreenModal, "defaultProps", { - dimension: 'medium' -}); + useEffect$2(function () { + if (preventDropOnDocument) { + document.addEventListener('dragover', onDocumentDragOver, false); + document.addEventListener('drop', onDocumentDrop, false); + } -var sidesheetWidth = { - regular: '6', - large: '10' -}; + return function () { + if (preventDropOnDocument) { + document.removeEventListener('dragover', onDocumentDragOver); + document.removeEventListener('drop', onDocumentDrop); + } + }; + }, [rootRef, preventDropOnDocument]); + var onDragEnterCb = useCallback(function (event) { + event.preventDefault(); + event.persist(); + dragTargetsRef.current = [].concat(_toConsumableArray(dragTargetsRef.current), [event.target]); -var Sidesheet = /*#__PURE__*/function (_React$Component) { - _inherits$1(Sidesheet, _React$Component); + if (isEvtWithFiles(event)) { + Promise.resolve(getFilesFromEvent(event)).then(function (files) { + if (isPropagationStopped(event)) { + return; + } - var _super = _createSuper$1(Sidesheet); + dispatch({ + draggedFiles: files, + isDragActive: true, + type: 'setDraggedFiles' + }); - function Sidesheet(props) { - var _this; + if (onDragEnter) { + onDragEnter(event); + } + }); + } + }, [getFilesFromEvent, onDragEnter]); + var onDragOverCb = useCallback(function (event) { + event.preventDefault(); + event.persist(); - _classCallCheck$1(this, Sidesheet); + if (event.dataTransfer) { + try { + event.dataTransfer.dropEffect = 'copy'; + } catch (_unused) {} + /* eslint-disable-line no-empty */ - _this = _super.call(this, props); + } - _defineProperty$2(_assertThisInitialized$2(_this), "sidesheetRef", /*#__PURE__*/React.createRef()); + if (isEvtWithFiles(event) && onDragOver) { + onDragOver(event); + } - _defineProperty$2(_assertThisInitialized$2(_this), "element", void 0); + return false; + }, [onDragOver]); + var onDragLeaveCb = useCallback(function (event) { + event.preventDefault(); + event.persist(); + var targets = dragTargetsRef.current.filter(function (target) { + return rootRef.current && rootRef.current.contains(target); + }); + var targetIdx = targets.indexOf(event.target); - _this.element = getWrapperElement(); - _this.state = { - open: props.open, - animate: props.open - }; - _this.onOutsideClickHandler = _this.onOutsideClickHandler.bind(_assertThisInitialized$2(_this)); - return _this; - } + if (targetIdx !== -1) { + targets.splice(targetIdx, 1); + } - _createClass$1(Sidesheet, [{ - key: "componentDidUpdate", - value: function componentDidUpdate(prevProps) { - var _this2 = this; + dragTargetsRef.current = targets; - if (prevProps.open !== this.props.open) { - if (this.props.open) { - var zIndex = getUpdatedZIndex({ - element: this.element, - containerClassName: '.Overlay-container--open', - elementRef: this.sidesheetRef - }); - this.setState({ - zIndex: zIndex, - open: true, - animate: true - }); - } else { - this.setState({ - animate: false - }, function () { - window.setTimeout(function () { - _this2.setState({ - open: false - }); - }, 120); - }); - } - } + if (targets.length > 0) { + return; } - }, { - key: "onOutsideClickHandler", - value: function onOutsideClickHandler(event) { - var onClose = this.props.onClose; - var open = this.state.open; - if (open) { - if (onClose) onClose(event, 'OutsideClick'); - } + dispatch({ + isDragActive: false, + type: 'setDraggedFiles', + draggedFiles: [] + }); + + if (isEvtWithFiles(event) && onDragLeave) { + onDragLeave(event); } - }, { - key: "render", - value: function render() { - var _classNames, _classNames2, _classNames3, _classNames4; + }, [rootRef, onDragLeave]); + var onDropCb = useCallback(function (event) { + event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done - var _this$state = this.state, - animate = _this$state.animate, - open = _this$state.open, - zIndex = _this$state.zIndex; - var _this$props = this.props, - className = _this$props.className, - backdropClose = _this$props.backdropClose, - dimension = _this$props.dimension, - footer = _this$props.footer, - seperator = _this$props.seperator, - stickFooter = _this$props.stickFooter, - headerOptions = _this$props.headerOptions, - footerOptions = _this$props.footerOptions, - header = _this$props.header, - onClose = _this$props.onClose; - var classes = classnames({ - Sidesheet: true, - 'Sidesheet--open': open, - 'Sidesheet-animation--open': animate, - 'Sidesheet-animation--close': !animate - }, className); - var ContainerClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Overlay-container', true), _defineProperty$2(_classNames, 'Overlay-container--open', open), _classNames)); - var headerClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Sidesheet-header', true), _defineProperty$2(_classNames2, 'Sidesheet-header--withSeperator', seperator), _classNames2)); - var footerClass = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'Sidesheet-footer', true), _defineProperty$2(_classNames3, 'Sidesheet-footer--withSeperator', seperator), _defineProperty$2(_classNames3, 'Sidesheet-footer--stickToBottom', stickFooter), _classNames3)); - var bodyClass = classnames((_classNames4 = {}, _defineProperty$2(_classNames4, 'Sidesheet-body', true), _defineProperty$2(_classNames4, 'Sidesheet-body--withMargin', !!footer && stickFooter), _classNames4)); - var baseProps = extractBaseProps(this.props); - var SidesheetContainer = /*#__PURE__*/React.createElement(Row, { - "data-test": "DesignSystem-SidesheetContainer", - className: ContainerClass, - "data-layer": true, - style: { - zIndex: zIndex - }, - ref: this.sidesheetRef - }, /*#__PURE__*/React.createElement(Column, _extends$3({ - "data-test": "DesignSystem-Sidesheet" - }, baseProps, { - className: classes, - size: sidesheetWidth[dimension] - }), /*#__PURE__*/React.createElement("div", { - className: headerClass - }, /*#__PURE__*/React.createElement(Column, { - "data-test": "DesignSystem-Sidesheet--Header" - }, !header && /*#__PURE__*/React.createElement(OverlayHeader, headerOptions), !!header && header), /*#__PURE__*/React.createElement(Column, { - className: "flex-grow-0" - }, /*#__PURE__*/React.createElement(Button, { - icon: "close", - appearance: "transparent", - "data-test": "DesignSystem-Sidesheet--CloseButton", - onClick: function onClick(event) { - if (onClose) onClose(event, 'IconClick'); + event.persist(); + dragTargetsRef.current = []; + + if (isEvtWithFiles(event)) { + Promise.resolve(getFilesFromEvent(event)).then(function (files) { + if (isPropagationStopped(event)) { + return; } - }))), /*#__PURE__*/React.createElement(OverlayBody, { - "data-test": "DesignSystem-Sidesheet--OverlayBody", - className: bodyClass - }, this.props.children), (!!footer || !!footerOptions) && /*#__PURE__*/React.createElement(OverlayFooter, _extends$3({ - "data-test": "DesignSystem-Sidesheet--Footer" - }, footerOptions, { - open: open, - className: footerClass - }), footer))); - var SidesheetWrapper = backdropClose ? /*#__PURE__*/React.createElement(OutsideClick, { - "data-test": "DesignSystem-Sidesheet--OutsideClick", - onOutsideClick: this.onOutsideClickHandler - }, SidesheetContainer) : SidesheetContainer; - var WrapperElement = /*#__PURE__*/ReactDOM.createPortal(SidesheetWrapper, this.element); - return /*#__PURE__*/React.createElement(React.Fragment, null, WrapperElement, /*#__PURE__*/React.createElement(Backdrop, { - open: this.state.animate - })); - } - }]); - return Sidesheet; -}(React.Component); + var acceptedFiles = []; + var fileRejections = []; + files.forEach(function (file) { + var _fileAccepted = fileAccepted(file, accept), + _fileAccepted2 = _slicedToArray(_fileAccepted, 2), + accepted = _fileAccepted2[0], + acceptError = _fileAccepted2[1]; -_defineProperty$2(Sidesheet, "defaultProps", { - dimension: 'regular', - stickFooter: false, - headerOptions: {} -}); + var _fileMatchSize = fileMatchSize(file, minSize, maxSize), + _fileMatchSize2 = _slicedToArray(_fileMatchSize, 2), + sizeMatch = _fileMatchSize2[0], + sizeError = _fileMatchSize2[1]; -var Collapsible = function Collapsible(props) { - var _classNames, _classNames4; + var customErrors = validator ? validator(file) : null; - var expanded = props.expanded, - hoverable = props.hoverable, - expandedWidth = props.expandedWidth, - height = props.height, - children = props.children, - className = props.className, - onToggle = props.onToggle; + if (accepted && sizeMatch && !customErrors) { + acceptedFiles.push(file); + } else { + var errors = [acceptError, sizeError]; - var _React$useState = React.useState(true), - _React$useState2 = _slicedToArray(_React$useState, 2), - isClicked = _React$useState2[0], - setIsClicked = _React$useState2[1]; + if (customErrors) { + errors = errors.concat(customErrors); + } - var _React$useState3 = React.useState(false), - _React$useState4 = _slicedToArray(_React$useState3, 2), - seperator = _React$useState4[0], - setSeperator = _React$useState4[1]; + var filteredErrors = errors.filter(function (e) { + return e; + }); + fileRejections.push({ + file: file, + errors: filteredErrors + }); + } + }); + dispatch({ + acceptedFiles: acceptedFiles, + fileRejections: fileRejections, + type: 'setFiles' + }); - var ref = /*#__PURE__*/React.createRef(); - var baseProps = extractBaseProps(props); - React.useEffect(function () { - if (ref.current) { - setSeperator(ref.current.scrollHeight > ref.current.clientHeight); - } - }); - var WrapperClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Collapsible-wrapper', true), _defineProperty$2(_classNames, 'Collapsible-wrapper--overlay', !isClicked), _classNames)); - var BodyClass = classnames(_defineProperty$2({}, 'Collapsible-body', true)); - var classes = classnames(_defineProperty$2({ - Collapsible: true - }, 'Collapsible--overlay', !isClicked), className); - var FooterClass = classnames((_classNames4 = {}, _defineProperty$2(_classNames4, 'Collapsible-footer', true), _defineProperty$2(_classNames4, 'Collapsible-footer--seperator', seperator), _classNames4)); + if (onDrop) { + onDrop(event, acceptedFiles, fileRejections); + } - var onToggleHandler = function onToggleHandler(newExpanded, type) { - return function () { - if (onToggle) { - if (type === 'mouseenter' || type === 'mouseleave') { - if (isClicked && expanded || !hoverable) return; - setIsClicked(false); + if (fileRejections.length > 0 && onDropRejected) { + onDropRejected(event, fileRejections); } - if (type === 'click') { - setIsClicked(true); + if (acceptedFiles.length > 0 && onDropAccepted) { + onDropAccepted(event, acceptedFiles); } + }); + } - onToggle(newExpanded); - } - }; + dispatch({ + type: 'reset' + }); + }, [multiple, accept, minSize, maxSize, getFilesFromEvent, onDrop, onDropAccepted, onDropRejected]); + + var composeDragHandler = function composeDragHandler(fn) { + return disabled ? null : fn; }; - var width = expanded ? expandedWidth : undefined; - return /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-CollapsibleWrapper", - className: WrapperClass, - style: { - height: height - } - }, /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-Collapsible" - }, baseProps, { - "data-layer": true, - className: classes, - style: { - width: width - } - }), /*#__PURE__*/React.createElement("div", { - className: BodyClass, - "data-test": "DesignSystem-CollapsibleBody", - onMouseEnter: onToggleHandler(true, 'mouseenter'), - onMouseLeave: onToggleHandler(false, 'mouseleave'), - ref: ref - }, children), /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-Collapsible--Footer", - className: FooterClass - }, /*#__PURE__*/React.createElement(Icon, { - name: expanded ? 'keyboard_arrow_left' : 'keyboard_arrow_right', - "data-test": "DesignSystem-Collapsible--FooterIcon", - className: "px-5 py-4 my-2 cursor-pointer", - onClick: onToggleHandler(!expanded, 'click'), - size: 16 - })))); + var getRootProps = useMemo(function () { + return function () { + var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, + _ref$refKey = _ref.refKey, + refKey = _ref$refKey === void 0 ? 'ref' : _ref$refKey; + _ref.onKeyDown; + _ref.onFocus; + _ref.onBlur; + _ref.onClick; + var onDragEnterCallback = _ref.onDragEnterCallback, + onDragOverCallback = _ref.onDragOverCallback, + onDragLeaveCallback = _ref.onDragLeaveCallback, + onDropCallback = _ref.onDropCallback, + rest = _objectWithoutProperties(_ref, _excluded$m); + + return _objectSpread2(_defineProperty$1({ + onDragEnter: composeDragHandler(composeEventHandlers(onDragEnterCallback, onDragEnterCb)), + onDragOver: composeDragHandler(composeEventHandlers(onDragOverCallback, onDragOverCb)), + onDragLeave: composeDragHandler(composeEventHandlers(onDragLeaveCallback, onDragLeaveCb)), + onDrop: composeDragHandler(composeEventHandlers(onDropCallback, onDropCb)) + }, refKey, rootRef), rest); + }; + }, [rootRef, onKeyDownCb, onFocusCb, onBlurCb, onDragEnterCb, onDragOverCb, onDragLeaveCb, onDropCb, disabled]); + var onInputElementClick = useCallback(function (event) { + event.stopPropagation(); + }, []); + var getInputProps = useMemo(function () { + return function () { + var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, + _ref2$refKey = _ref2.refKey, + refKey = _ref2$refKey === void 0 ? 'ref' : _ref2$refKey, + onChange = _ref2.onChange, + onClick = _ref2.onClick, + rest = _objectWithoutProperties(_ref2, _excluded2$1); + + var inputProps = _defineProperty$1({ + accept: accept, + multiple: multiple, + type: 'file', + style: { + display: 'none' + }, + onChange: composeDragHandler(composeEventHandlers(onChange, onDropCb)), + onClick: composeDragHandler(composeEventHandlers(onClick, onInputElementClick)), + autoComplete: 'off', + tabIndex: -1 + }, refKey, inputRef); + + return _objectSpread2(_objectSpread2({}, inputProps), rest); + }; + }, [inputRef, accept, multiple, onDropCb, disabled]); + var fileCount = draggedFiles.length; + var isDragAccept = fileCount > 0 && allFilesAccepted({ + accept: accept, + minSize: minSize, + maxSize: maxSize, + multiple: multiple, + files: draggedFiles + }); + var isDragReject = fileCount > 0 && !isDragAccept; + var fileError = isDragReject ? getFileError({ + accept: accept, + minSize: minSize, + maxSize: maxSize, + multiple: multiple, + files: draggedFiles + }) : ''; + return _objectSpread2(_objectSpread2({}, state), {}, { + isDragAccept: isDragAccept, + isDragReject: isDragReject, + getRootProps: getRootProps, + getInputProps: getInputProps, + rootRef: rootRef, + inputRef: inputRef, + draggedFiles: draggedFiles, + fileError: fileError, + isFocused: isFocused && !disabled, + open: composeDragHandler(openFileDialog) + }); }; -Collapsible.displayName = 'Collapsible'; -Collapsible.defaultProps = { - expanded: false, - hoverable: true, - height: '100%', - expandedWidth: 'var(--spacing-9)' +DropzoneBase.displayName = 'DropzoneBase'; +DropzoneBase.defaultProps = { + disabled: false, + getFilesFromEvent: fromEvent, + maxSize: Infinity, + minSize: 0, + multiple: true, + preventDropOnDocument: true, + validator: function validator() { + return null; + } }; -var Status = function Status(props) { - var type = props.type, - time = props.time, - className = props.className, - _props$readText = props.readText, - readText = _props$readText === void 0 ? 'Read' : _props$readText, - _props$failedText = props.failedText, - failedText = _props$failedText === void 0 ? 'Click to retry' : _props$failedText, - _props$sendingText = props.sendingText, - sendingText = _props$sendingText === void 0 ? 'Sending..' : _props$sendingText; - var baseProps = extractBaseProps(props); - var StatusClass = classnames(_defineProperty$2({}, 'd-flex align-items-center mt-3', true), className); - var TextClass = classnames(_defineProperty$2({}, 'ChatMessage-status', true), className); - - var getTime = function getTime(t) { - if (typeof t === 'number') { - var d = new Date(t); - var hours = d.getHours(); - var minutes = d.getMinutes(); - var AMPM = hours < 12 ? 'AM' : 'PM'; - var hrs = hours % 12 || 12; - return "".concat(hrs, ":").concat(minutes, " ").concat(AMPM); - } +var svgCode = { + active: 'M14.6667 53.3333C13.6 53.3333 12.6667 52.9333 11.8667 52.1333C11.0667 51.3333 10.6667 50.4 10.6667 49.3333V39.8H14.6667V49.3333H49.3333V39.8H53.3333V49.3333C53.3333 50.4 52.9333 51.3333 52.1333 52.1333C51.3333 52.9333 50.4 53.3333 49.3333 53.3333H14.6667ZM30 43.1333V18.4L22 26.4L19.1333 23.5333L32 10.6666L44.8667 23.5333L42 26.4L34 18.4V43.1333H30Z', + "default": 'M14.6667 53.3334C13.6 53.3334 12.6667 52.9334 11.8667 52.1334C11.0667 51.3334 10.6667 50.4 10.6667 49.3334V39.8H14.6667V49.3334H49.3333V39.8H53.3333V49.3334C53.3333 50.4 52.9333 51.3334 52.1333 52.1334C51.3333 52.9334 50.4 53.3334 49.3333 53.3334H14.6667ZM32 43.1334L19.1333 30.2667L22 27.4L30 35.4V10.6667H34V35.4L42 27.4L44.8667 30.2667L32 43.1334Z', + error: 'M31.9988 45.3334C32.6218 45.3334 33.1444 45.1227 33.5667 44.7012C33.9889 44.2798 34.2 43.7575 34.2 43.1346C34.2 42.5115 33.9893 41.9889 33.5679 41.5667C33.1464 41.1445 32.6242 40.9334 32.0012 40.9334C31.3782 40.9334 30.8555 41.1441 30.4333 41.5655C30.0111 41.987 29.8 42.5092 29.8 43.1322C29.8 43.7552 30.0107 44.2778 30.4321 44.7C30.8536 45.1223 31.3758 45.3334 31.9988 45.3334ZM32.2117 35.1334C32.7817 35.1334 33.2555 34.9417 33.6333 34.5584C34.0111 34.175 34.2 33.7 34.2 33.1334V20.2667C34.2 19.7 34.0072 19.225 33.6217 18.8417C33.2361 18.4584 32.7583 18.2667 32.1883 18.2667C31.6183 18.2667 31.1444 18.4584 30.7667 18.8417C30.3889 19.225 30.2 19.7 30.2 20.2667V33.1334C30.2 33.7 30.3928 34.175 30.7783 34.5584C31.1639 34.9417 31.6417 35.1334 32.2117 35.1334ZM32.0177 58.6667C28.3407 58.6667 24.8851 57.9667 21.6511 56.5667C18.417 55.1667 15.5889 53.2556 13.1667 50.8334C10.7444 48.4111 8.83333 45.5813 7.43333 42.344C6.03333 39.1066 5.33333 35.6475 5.33333 31.9667C5.33333 28.2859 6.03333 24.8268 7.43333 21.5894C8.83333 18.3521 10.7444 15.5334 13.1667 13.1334C15.5889 10.7334 18.4187 8.83337 21.6561 7.43337C24.8934 6.03337 28.3525 5.33337 32.0333 5.33337C35.7142 5.33337 39.1733 6.03337 42.4106 7.43337C45.648 8.83337 48.4667 10.7334 50.8667 13.1334C53.2667 15.5334 55.1667 18.3556 56.5667 21.6C57.9667 24.8445 58.6667 28.3052 58.6667 31.9823C58.6667 35.6594 57.9667 39.1149 56.5667 42.349C55.1667 45.583 53.2667 48.4071 50.8667 50.8211C48.4667 53.2351 45.6444 55.1463 42.4 56.5544C39.1555 57.9626 35.6948 58.6667 32.0177 58.6667Z' +}; - return t; +var DropzoneIcon = function DropzoneIcon(props) { + var IconStyle = { + height: 'var(--spacing-5)', + width: 'var(--spacing-5)' }; + return /*#__PURE__*/React__default.createElement("svg", { + style: IconStyle, + className: "Dropzone-icon--".concat(props.type), + viewBox: "0 0 64 64", + fill: "none", + xmlns: "http://www.w3.org/2000/svg" + }, /*#__PURE__*/React__default.createElement("path", { + d: svgCode[props.name], + className: props.disabled ? 'Dropzone-icon--disabled' : "Dropzone-icon--".concat(props.name) + })); +}; - switch (type) { - case 'failed': - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: StatusClass - }), /*#__PURE__*/React.createElement(Icon, { - name: "error", - type: "outlined", - appearance: "destructive" - }), /*#__PURE__*/React.createElement(Text, { - appearance: "destructive", - size: "small", - className: "ml-1" - }, "Failed"), /*#__PURE__*/React.createElement(MetaList, { - list: [{ - label: failedText - }], - seperator: true - })); +var DropzoneActive = function DropzoneActive(props) { + var type = props.type; + return /*#__PURE__*/React.createElement(React.Fragment, null, type !== 'tight' && /*#__PURE__*/React.createElement(DropzoneIcon, { + name: "active", + type: type + }), /*#__PURE__*/React.createElement(Text, { + appearance: "link", + size: "large", + weight: "strong" + }, "Drop your files here")); +}; +DropzoneActive.displayName = 'DropzoneActive'; - case 'urgent': - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: StatusClass - }), /*#__PURE__*/React.createElement(Icon, { - name: "notification_important", - type: "outlined", - appearance: "destructive" - }), /*#__PURE__*/React.createElement(Text, { - appearance: "destructive", - size: "small", - className: "ml-1" - }, "Urgent"), time && /*#__PURE__*/React.createElement(MetaList, { - list: [{ - label: getTime(time) - }], - seperator: true - })); +var DropzoneError = function DropzoneError(props) { + var type = props.type, + error = props.error; + return /*#__PURE__*/React.createElement(React.Fragment, null, type !== 'tight' && /*#__PURE__*/React.createElement(DropzoneIcon, { + type: type, + name: "error" + }), /*#__PURE__*/React.createElement(Text, { + appearance: "destructive", + size: "large", + weight: "strong" + }, error)); +}; +DropzoneError.displayName = 'DropzoneError'; - case 'read': - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: StatusClass - }), time && /*#__PURE__*/React.createElement(Text, { - appearance: "subtle", - size: "small" - }, getTime(time)), /*#__PURE__*/React.createElement(MetaList, { - list: [{ - label: readText - }], - seperator: true - })); +var Dropzone = function Dropzone(props) { + var _classNames, _classNames2; - case 'sending': - return /*#__PURE__*/React.createElement(Text, _extends$3({}, baseProps, { - appearance: "subtle", - size: "small", - className: TextClass - }), sendingText); + var type = props.type, + sizeLabel = props.sizeLabel, + className = props.className, + formatLabel = props.formatLabel, + sampleFileLink = props.sampleFileLink, + disabled = props.disabled; - case 'sent': - return /*#__PURE__*/React.createElement(React.Fragment, null, time && /*#__PURE__*/React.createElement(Text, _extends$3({}, baseProps, { - appearance: "subtle", - size: "small", - className: TextClass - }), getTime(time))); + var _DropzoneBase = DropzoneBase(props), + open = _DropzoneBase.open, + getRootProps = _DropzoneBase.getRootProps, + getInputProps = _DropzoneBase.getInputProps, + isDragActive = _DropzoneBase.isDragActive, + isDragReject = _DropzoneBase.isDragReject, + fileError = _DropzoneBase.fileError; - default: - return null; - } -}; -Status.displayName = 'Status'; + var baseProps = extractBaseProps(props); + var DropzoneClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Dropzone', true), _defineProperty$1(_classNames, "Dropzone--".concat(type), type), _defineProperty$1(_classNames, 'Dropzone--disabled', disabled), _defineProperty$1(_classNames, 'Dropzone--active', isDragActive), _defineProperty$1(_classNames, 'Dropzone--error', isDragReject), _defineProperty$1(_classNames, 'Dropzone-animation', true), _defineProperty$1(_classNames, 'Dropzone-animation--default', !isDragActive && type !== 'standard'), _defineProperty$1(_classNames, 'Dropzone-animation--active', isDragActive && !isDragReject && type !== 'standard'), _defineProperty$1(_classNames, 'Dropzone-standard--default', !isDragActive && type === 'standard'), _defineProperty$1(_classNames, 'Dropzone-standard--active', isDragActive && !isDragReject && type === 'standard'), _classNames), className); + var WrapperClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'DropzoneWrapper', true), _defineProperty$1(_classNames2, "DropzoneWrapper--".concat(type), true), _classNames2)); -var Box = function Box(props) { - var _classNames; + var renderDropzone = function renderDropzone() { + if (isDragReject) return /*#__PURE__*/React.createElement(DropzoneError, { + type: type, + error: fileErrorMessages[fileError] + }); + if (isDragActive) return /*#__PURE__*/React.createElement(DropzoneActive, { + type: type + }); + var buttonAccessibilityProps = useAccessibilityProps({ + onClick: open, + 'aria-label': 'Drag your files here or click to select files' + }); + return /*#__PURE__*/React.createElement(React.Fragment, null, type !== 'tight' && /*#__PURE__*/React.createElement(DropzoneIcon, { + disabled: disabled, + name: "default", + type: type + }), /*#__PURE__*/React.createElement("div", { + className: WrapperClass, + "data-test": "DesignSystem-Dropzone-Wrapper" + }, /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement(Text, { + size: "large", + weight: "strong", + className: "mr-2", + appearance: disabled ? 'disabled' : 'default' + }, "Drag your files here or"), /*#__PURE__*/React.createElement(Text, _extends$2({ + tabIndex: disabled ? -1 : 0, + className: "ml-2 cursor-pointer", + size: "large", + weight: "strong", + appearance: disabled ? 'disabled' : 'link' + }, buttonAccessibilityProps), "browse files"), /*#__PURE__*/React.createElement("input", getInputProps())), formatLabel && /*#__PURE__*/React.createElement(Text, { + appearance: disabled ? 'disabled' : 'subtle' + }, formatLabel), sizeLabel && /*#__PURE__*/React.createElement(Text, { + appearance: disabled ? 'disabled' : 'subtle' + }, sizeLabel), sampleFileLink && /*#__PURE__*/React.createElement("div", { + className: "mt-5" + }, sampleFileLink))); + }; - var children = props.children, - type = props.type, - isTyping = props.isTyping, - statusType = props.statusType, - withStatus = props.withStatus, - onClick = props.onClick, - className = props.className; - var baseProps = extractBaseProps(props); - var MessageClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Box', true), _defineProperty$2(_classNames, "Box--".concat(type), type), _defineProperty$2(_classNames, 'Box--typing', isTyping), _defineProperty$2(_classNames, 'Box--urgent', statusType === 'urgent'), _defineProperty$2(_classNames, "Box-".concat(type, "--withStatus"), withStatus || isTyping), _classNames), className); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: MessageClass, - onClick: onClick - }), children); + return /*#__PURE__*/React.createElement("div", _extends$2({}, getRootProps(), baseProps, { + className: DropzoneClass, + "data-test": "DesignSystem-Dropzone" + }), renderDropzone()); }; -Box.displayName = 'Box'; +Dropzone.displayName = 'Dropzone'; +Dropzone.defaultProps = _objectSpread2(_objectSpread2({}, DropzoneBase.defaultProps), {}, { + type: 'standard' +}); -var MessageText = function MessageText(props) { - var text = props.text, - type = props.type, - isTyping = props.isTyping, - typingText = props.typingText, - statusType = props.statusType, - className = props.className; - var baseProps = extractBaseProps(props); +var FileUploaderFormat = function FileUploaderFormat(props) { + var formatLabel = props.formatLabel; - if (isTyping && type === 'incoming') { - return /*#__PURE__*/React.createElement(Text, _extends$3({}, baseProps, { - appearance: 'subtle', - size: 'small', - className: className - }), typingText); + if (formatLabel) { + return /*#__PURE__*/React.createElement(Text, { + size: "small", + appearance: "subtle", + className: "mt-4" + }, formatLabel); } - return /*#__PURE__*/React.createElement(Text, _extends$3({}, baseProps, { - className: className, - appearance: statusType === 'sending' ? 'subtle' : 'default' - }), text); + return null; }; -MessageText.defaultProps = { - text: '', - typingText: 'Typing..' +FileUploaderFormat.displayName = 'FileUploaderFormat'; + +var FileUploaderButton = function FileUploaderButton(props) { + var accept = props.accept, + multiple = props.multiple, + uploadButtonLabel = props.uploadButtonLabel, + disabled = props.disabled, + name = props.name, + className = props.className, + id = props.id, + _onChange = props.onChange; + var baseProps = extractBaseProps(props); + var FileUploaderButtonClass = classnames(_defineProperty$1({}, 'FileUploaderButton', true), className); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: FileUploaderButtonClass + }), /*#__PURE__*/React.createElement(Button, { + type: "button", + disabled: disabled, + icon: "backup" + }, uploadButtonLabel), /*#__PURE__*/React.createElement("input", { + name: name, + id: id, + "data-test": "DesignSystem-FileUploaderButton--Input", + accept: accept && accept.join(', '), + multiple: multiple, + disabled: disabled, + type: "file", + tabIndex: -1, + className: "FileUploaderButton-input", + onChange: function onChange(event) { + var fileList = event.target.files ? Array.from(event.target.files) : []; + if (_onChange) _onChange(fileList, event); + } + })); +}; +FileUploaderButton.defaultProps = { + uploadButtonLabel: 'Upload files', + disabled: false, + multiple: false +}; +FileUploaderButton.displayName = 'FileUploaderButton'; + +var FileUploader = function FileUploader(props) { + var accept = props.accept, + multiple = props.multiple, + disabled = props.disabled, + title = props.title, + uploadButtonLabel = props.uploadButtonLabel, + sizeLabel = props.sizeLabel, + formatLabel = props.formatLabel, + sampleFileLink = props.sampleFileLink, + className = props.className, + id = props.id, + name = props.name, + onChange = props.onChange; + var baseProps = extractBaseProps(props); + var FileUploaderClass = classnames(_defineProperty$1({}, 'FileUploader', true), className); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: FileUploaderClass, + "data-test": "DesignSystem-FileUploader" + }), /*#__PURE__*/React.createElement(Text, { + weight: "medium" + }, title), /*#__PURE__*/React.createElement(FileUploaderFormat, { + formatLabel: formatLabel + }), /*#__PURE__*/React.createElement(Text, { + size: "small", + appearance: "subtle", + className: !formatLabel ? 'mt-4' : '' + }, sizeLabel), sampleFileLink && /*#__PURE__*/React.createElement("div", { + className: "mt-4" + }, sampleFileLink), /*#__PURE__*/React.createElement(FileUploaderButton, { + id: id, + name: name, + accept: accept, + multiple: multiple, + disabled: disabled, + uploadButtonLabel: uploadButtonLabel, + onChange: onChange, + className: "mt-5" + })); }; -MessageText.displayName = 'MessageText'; +FileUploader.defaultProps = Object.assign({}, FileUploaderButton.defaultProps, { + title: 'Upload files', + sizeLabel: 'Maximum size: 25 MB' +}); +FileUploader.displayName = 'FileUploader'; -var ChatMessage = function ChatMessage(props) { - var type = props.type, - text = props.text, - isTyping = props.isTyping, - typingText = props.typingText, - statusOptions = props.statusOptions, - onClick = props.onClick, - className = props.className; - var baseProps = extractBaseProps(props); +var FileUploaderStatus = function FileUploaderStatus(props) { + var progress = props.progress, + status = props.status, + onRetry = props.onRetry; - var _ref = statusOptions || {}, - statusType = _ref.type; + switch (status) { + case 'uploading': + return /*#__PURE__*/React.createElement(ProgressRing, { + size: "small", + value: progress, + className: "mr-4" + }); - return /*#__PURE__*/React.createElement(Box, _extends$3({}, baseProps, { - type: type, - className: className, - onClick: onClick, - isTyping: isTyping, - statusType: statusType, - withStatus: statusOptions !== undefined - }), /*#__PURE__*/React.createElement(MessageText, { - type: type, - text: text, - typingText: typingText, - isTyping: isTyping, - statusType: statusType - }), !isTyping && statusOptions && /*#__PURE__*/React.createElement(Status, statusOptions)); -}; -ChatMessage.displayName = 'ChatMessage'; + case 'error': + return /*#__PURE__*/React.createElement(Button, { + appearance: "transparent", + size: "regular", + onClick: onRetry, + icon: "refresh", + className: "mr-2" + }); -var imageHeight = { - large: '256px', - small: '128px' -}; -var HeadingSize = { - large: 'l', - small: 'm' + default: + return null; + } }; -var textSize = { - large: 'large', - small: 'regular' +FileUploaderStatus.displayName = 'FileUploaderStatus'; +FileUploaderStatus.defaultProps = { + status: 'completed', + progress: 0 }; -var EmptyState = function EmptyState(props) { - var _classNames2, _classNames3; - var imageSrc = props.imageSrc, - title = props.title, - description = props.description, - size = props.size, - children = props.children, +var FileUploaderItem = function FileUploaderItem(props) { + var file = props.file, + id = props.id, + status = props.status, + errorMessage = props.errorMessage, + progress = props.progress, + _onClick = props.onClick, + onDelete = props.onDelete, + _onRetry = props.onRetry, className = props.className; + var name = file.name; var baseProps = extractBaseProps(props); - var WrapperClass = classnames(_defineProperty$2({}, 'EmptyState', true), className); - var HeadingClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'EmptyState-title', true), _defineProperty$2(_classNames2, "EmptyState-title--".concat(size), true), _classNames2)); - var TextClass = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'EmptyState-description', true), _defineProperty$2(_classNames3, "EmptyState-description--".concat(size), children !== undefined), _classNames3)); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-EmptyState" - }, baseProps, { - className: WrapperClass - }), /*#__PURE__*/React.createElement("img", { - src: imageSrc, - height: imageHeight[size], - "data-test": "DesignSystem-EmptyState--Img" - }), /*#__PURE__*/React.createElement(Heading, { - "data-test": "DesignSystem-EmptyState--Heading", - size: HeadingSize[size], - className: HeadingClass - }, title), /*#__PURE__*/React.createElement(Text, { - size: textSize[size], - className: TextClass, - appearance: "subtle", - "data-test": "DesignSystem-EmptyState--Text" - }, description), children && children); + var FileItemClass = classnames(_defineProperty$1({}, 'FileUploaderItem', true), className); + return ( + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement("div", _extends$2({}, baseProps, { + "data-test": "DesignSystem-FileUploader--Item", + className: FileItemClass, + onClick: function onClick() { + return _onClick && _onClick(file, id); + } + }), /*#__PURE__*/React.createElement("div", { + className: "FileUploaderItem-file" + }, /*#__PURE__*/React.createElement(Text, { + className: "FileUploaderItem-text", + appearance: status === 'completed' ? 'default' : 'subtle' + }, name), /*#__PURE__*/React.createElement("div", { + className: "d-flex align-items-center" + }, /*#__PURE__*/React.createElement(FileUploaderStatus, { + file: file, + id: id, + status: status, + progress: progress, + onRetry: function onRetry() { + return _onRetry && _onRetry(file, id); + } + }), /*#__PURE__*/React.createElement(Button, { + "data-test": "DesignSystem-FileUploader--CancelButton", + appearance: "transparent", + size: "regular", + onClick: function onClick() { + return onDelete && onDelete(file, id); + }, + icon: "close" + }))), status === 'error' && /*#__PURE__*/React.createElement(InlineMessage, { + size: "small", + appearance: "alert", + description: errorMessage + })) + ); }; -EmptyState.displayName = 'EmptyState'; - -var ModalDescription = function ModalDescription(props) { - var title = props.title, - description = props.description, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classnames({ - 'Modal-description': true - }, className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-ModalDescription" - }, baseProps, { - className: classes - }), title && /*#__PURE__*/React.createElement(Text, { - weight: "strong", - "data-test": "DesignSystem-ModalDescription--Title" - }, title), title && description && /*#__PURE__*/React.createElement("br", null), description && /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-ModalDescription--Description" - }, description)); +FileUploaderItem.defaultProps = { + status: 'completed', + progress: 0, + errorMessage: 'Network Error' }; -ModalDescription.displayName = 'ModalDescription'; - -var Pagination = function Pagination(props) { - var _classNames, _classNames2, _classNames3; +FileUploaderItem.displayName = 'FileUploaderItem'; - var type = props.type, - totalPages = props.totalPages, - onPageChange = props.onPageChange, +var FileUploaderList = function FileUploaderList(props) { + var fileList = props.fileList, + onClick = props.onClick, + onDelete = props.onDelete, + onRetry = props.onRetry, className = props.className; var baseProps = extractBaseProps(props); - - var _React$useState = React.useState(props.page), - _React$useState2 = _slicedToArray(_React$useState, 2), - page = _React$useState2[0], - setPage = _React$useState2[1]; - - var _React$useState3 = React.useState(false), - _React$useState4 = _slicedToArray(_React$useState3, 2), - init = _React$useState4[0], - setInit = _React$useState4[1]; - - React.useEffect(function () { - setPage(props.page); - }, [props.page]); - var wrapperClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Pagination', true), _defineProperty$2(_classNames, "Pagination--".concat(type), type), _classNames), className); - var nextButtonWrapperClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Pagination-buttonWrapper', true), _defineProperty$2(_classNames2, 'Pagination-buttonWrapper--next', true), _classNames2)); - var prevButtonWrapperClass = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'Pagination-buttonWrapper', true), _defineProperty$2(_classNames3, 'Pagination-buttonWrapper--previous', true), _classNames3)); - React.useEffect(function () { - if (init) { - if (page >= 1 && page <= totalPages) onPageChange(page); - } - }, [page]); - - var inputChangeHandler = function inputChangeHandler(e) { - e.preventDefault(); - var val = +e.target.value.trim(); - - if (val >= 0 && val <= totalPages) { - if (!init) setInit(true); - setPage(val); - } - }; - - var onClickHandler = function onClickHandler(buttonType) { - setInit(true); - - switch (buttonType) { - case 'first': - setPage(1); - break; - - case 'last': - setPage(totalPages); - break; - - case 'prev': - if (page > 1) setPage(page - 1); - break; - - case 'next': - if (page < totalPages) setPage(page + 1); - break; - } - }; - - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-Pagination" - }, baseProps, { - className: wrapperClass - }), /*#__PURE__*/React.createElement("div", { - className: prevButtonWrapperClass - }, /*#__PURE__*/React.createElement(Button, { - onClick: function onClick() { - return onClickHandler('first'); - }, - disabled: page <= 1, - appearance: "transparent", - icon: "first_page", - "data-test": "DesignSystem-Pagination--FirstButton" - }), /*#__PURE__*/React.createElement(Button, { - onClick: function onClick() { - return onClickHandler('prev'); - }, - disabled: page <= 1, - icon: "navigate_before", - "data-test": "DesignSystem-Pagination--PrevButton", - className: "ml-4 mr-3" - })), type === 'jump' && /*#__PURE__*/React.createElement("div", { - className: "Pagination-pageIndex" - }, /*#__PURE__*/React.createElement(MetricInput, { - name: "page", - className: "Pagination-MetricInput", - onChange: inputChangeHandler, - value: "".concat(page === 0 ? '' : page), - "data-test": "DesignSystem-Pagination--Input" - }), /*#__PURE__*/React.createElement(Text, null, " of ".concat(totalPages, " pages"))), /*#__PURE__*/React.createElement("div", { - className: nextButtonWrapperClass - }, /*#__PURE__*/React.createElement(Button, { - onClick: function onClick() { - return onClickHandler('next'); - }, - disabled: page >= totalPages, - icon: "navigate_next", - "data-test": "DesignSystem-Pagination--NextButton", - className: "mr-4 ml-3" - }), /*#__PURE__*/React.createElement(Button, { - onClick: function onClick() { - return onClickHandler('last'); - }, - disabled: page >= totalPages, - appearance: "transparent", - icon: "last_page", - "data-test": "DesignSystem-Pagination--LastButton" - }))); + var FileListClass = classnames(_defineProperty$1({}, 'FileUploaderList', true), className); + if (fileList.length === 0) return null; + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: FileListClass, + "data-test": "DesignSystem-FileUploader--List" + }), fileList.map(function (fileName, i) { + return /*#__PURE__*/React.createElement(FileUploaderItem, _extends$2({ + key: i, + onDelete: onDelete, + onRetry: onRetry, + onClick: onClick + }, fileName)); + })); }; -Pagination.displayName = 'Pagination'; -Pagination.defaultProps = { - type: 'basic', - page: 1, - totalPages: 1 +FileUploaderList.defaultProps = { + fileList: [] }; +FileUploaderList.displayName = 'FileUploaderList'; -var _excluded$5 = ["onChange"]; -var EditableInput = function EditableInput(props) { - var _classNames2, _classNames4; - - var value = props.value, - error = props.error, - size = props.size, - errorMessage = props.errorMessage, - placeholder = props.placeholder, - inputOptions = props.inputOptions, - disableSaveAction = props.disableSaveAction, - onChange = props.onChange, - className = props.className; +var resizeCol = function resizeCol(_ref, name, el) { + var updateColumnSchema = _ref.updateColumnSchema; + var elX = el === null || el === void 0 ? void 0 : el.getBoundingClientRect().x; - var onInputChange = inputOptions.onChange, - rest = _objectWithoutProperties$1(inputOptions, _excluded$5); + function resizable(ev) { + ev.preventDefault(); - var _React$useState = React.useState(value), - _React$useState2 = _slicedToArray(_React$useState, 2), - inputValue = _React$useState2[0], - setInputValue = _React$useState2[1]; + if (elX) { + updateColumnSchema(name, { + width: ev.pageX - elX + }); + } + } - var _React$useState3 = React.useState(false), - _React$useState4 = _slicedToArray(_React$useState3, 2), - editing = _React$useState4[0], - setEditing = _React$useState4[1]; + window.addEventListener('mousemove', resizable); + window.addEventListener('mouseup', function () { + window.removeEventListener('mousemove', resizable); + }); +}; +var sortColumn = function sortColumn(_ref2, name, type) { + var sortingList = _ref2.sortingList, + updateSortingList = _ref2.updateSortingList; - var _React$useState5 = React.useState(false), - _React$useState6 = _slicedToArray(_React$useState5, 2), - showComponent = _React$useState6[0], - setShowComponent = _React$useState6[1]; + var newSortingList = _toConsumableArray(sortingList); - var inputRef = /*#__PURE__*/React.createRef(); - var baseProps = extractBaseProps(props); - var EditableInputClass = classnames(_defineProperty$2({}, 'EditableInput', true), className); - var EditableDefaultClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'EditableInput-default', true), _defineProperty$2(_classNames2, "EditableInput-default--".concat(size), size), _classNames2)); - var InputClass = classnames(_defineProperty$2({}, 'EditableInput-Input--tiny', size === 'tiny')); - var ActionClass = classnames((_classNames4 = {}, _defineProperty$2(_classNames4, 'EditableInput-actions', true), _defineProperty$2(_classNames4, "EditableInput-actions--".concat(size), size), _classNames4)); - React.useEffect(function () { - setDefaultComponent(); - }, [value]); + var index = newSortingList.findIndex(function (l) { + return l.name === name; + }); - var setDefaultComponent = function setDefaultComponent() { - setInputValue(value); - setEditing(false); - setShowComponent(false); - }; + if (index !== -1) { + newSortingList = [].concat(_toConsumableArray(newSortingList.slice(0, index)), _toConsumableArray(newSortingList.slice(index + 1))); + } - var onSaveChanges = function onSaveChanges() { - if (onChange) onChange(inputValue); + if (type !== 'unsort') newSortingList.push({ + name: name, + type: type + }); + updateSortingList(newSortingList); +}; +var pinColumn = function pinColumn(_ref3, name, type) { + var updateColumnSchema = _ref3.updateColumnSchema; + var schemaUpdate = { + pinned: type !== 'unpin' ? type : undefined }; - - var onInputChangeHandler = function onInputChangeHandler(e) { - setInputValue(e.target.value); - if (onInputChange) onInputChange(e); + updateColumnSchema(name, schemaUpdate); +}; +var hideColumn = function hideColumn(_ref4, name, value) { + var updateColumnSchema = _ref4.updateColumnSchema; + var schemaUpdate = { + hidden: value }; + updateColumnSchema(name, schemaUpdate); +}; +function getWidth(_ref5, width) { + var ref = _ref5.ref, + withCheckbox = _ref5.withCheckbox; + var isPercent = typeof width === 'string' && width.slice(-1) === '%'; - var onChangeHandler = function onChangeHandler(eventType) { - var _inputRef$current; - - switch (eventType) { - case 'edit': - (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus(); - setEditing(true); - - case 'hover': - setShowComponent(true); - return; + if (isPercent) { + var checkboxCell = ref.querySelector('.Grid-cell--checkbox'); + var checkboxWidth = withCheckbox ? (checkboxCell === null || checkboxCell === void 0 ? void 0 : checkboxCell.clientWidth) || 28 : 0; + var gridWidth = ref.clientWidth - checkboxWidth; + return gridWidth * (+width.slice(0, -1) / 100); + } - case 'default': - setShowComponent(false); + return width; +} +function getCellSize(cellType) { + var sizes = { + AVATAR: { + minWidth: 48 + }, + AVATAR_WITH_TEXT: { + width: 256 + }, + AVATAR_WITH_META_LIST: { + width: 256 + }, + ICON: { + minWdth: 48 + }, + STATUS_HINT: { + width: 96 + }, + WITH_META_LIST: { + width: 176 + }, + DEFAULT: { + width: 176 } }; + return sizes[cellType]; +} - var inputComponent = /*#__PURE__*/React.createElement(Input, _extends$3({ - defaultValue: inputValue, - placeholder: placeholder, - className: InputClass, - autoFocus: editing, - size: size, - onChange: onInputChangeHandler, - error: error && editing, - ref: inputRef, - "data-test": "DesignSystem-EditableInput--Input" - }, rest)); +var updateBatchData = function updateBatchData(data, rowIndexes, dataUpdate, selectDisabledRow) { + var updatedData = _toConsumableArray(data); - var onKeyDown = function onKeyDown(event) { - if (document.activeElement === inputRef.current) { - switch (event.key) { - case 'Enter': - onSaveChanges(); - break; + var _iterator = _createForOfIteratorHelper(rowIndexes), + _step; - case 'Escape': - setDefaultComponent(); - break; - } - } - }; + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var rowIndex = _step.value; - var renderChildren = function renderChildren() { - if (showComponent) { - return error && errorMessage && editing ? /*#__PURE__*/React.createElement(Popover, { - trigger: inputComponent, - position: "right", - className: "px-6 py-6 d-flex align-items-center", - on: "hover" - }, /*#__PURE__*/React.createElement(Icon, { - name: "error", - appearance: 'alert', - className: "mr-4" - }), /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-EditableInput--ErrorPopper", - appearance: "destructive", - weight: "medium" - }, errorMessage)) : inputComponent; + if (data[rowIndex].disabled && selectDisabledRow || !data[rowIndex].disabled) { + updatedData[rowIndex] = _objectSpread2(_objectSpread2({}, updatedData[rowIndex]), dataUpdate); + } } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } - return /*#__PURE__*/React.createElement("div", { - className: EditableDefaultClass, - "data-test": "DesignSystem-EditableInput--Default" - }, value || placeholder); - }; - - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-EditableInput" - }, baseProps, { - className: EditableInputClass, - onKeyDown: onKeyDown - }), /*#__PURE__*/React.createElement(Editable, { - onChange: onChangeHandler, - editing: editing - }, renderChildren()), editing && /*#__PURE__*/React.createElement("div", { - className: ActionClass, - "data-test": "DesignSystem-EditableInput--Actions" - }, /*#__PURE__*/React.createElement(Button, { - icon: "clear", - className: "mr-3", - size: "tiny", - onClick: setDefaultComponent, - "data-test": "DesignSystem-EditableInput--Discard" - }), /*#__PURE__*/React.createElement(Button, { - icon: "check", - appearance: "primary", - size: "tiny", - disabled: disableSaveAction, - onClick: onSaveChanges, - "data-test": "DesignSystem-EditableInput--Save" - }))); -}; -EditableInput.defaultProps = { - size: 'regular', - placeholder: '', - value: '', - inputOptions: {} + return updatedData; }; +function translateData(schema, data) { + var newData = _objectSpread2({}, data); -var _excluded$4 = ["onChange", "chipOptions"], - _excluded2$1 = ["onClick"]; -var EditableChipInput = function EditableChipInput(props) { - var _classNames3; - - var placeholder = props.placeholder, - value = props.value, - onChange = props.onChange, - className = props.className, - disableSaveAction = props.disableSaveAction, - chipInputOptions = props.chipInputOptions; - - var onChipInputChange = chipInputOptions.onChange, - _chipInputOptions$chi = chipInputOptions.chipOptions, - chipOptions = _chipInputOptions$chi === void 0 ? {} : _chipInputOptions$chi, - rest = _objectWithoutProperties$1(chipInputOptions, _excluded$4); - - var _onClick = chipOptions.onClick, - chipObject = _objectWithoutProperties$1(chipOptions, _excluded2$1); - - var _React$useState = React.useState(value), - _React$useState2 = _slicedToArray(_React$useState, 2), - inputValue = _React$useState2[0], - setInputValue = _React$useState2[1]; - - var _React$useState3 = React.useState(false), - _React$useState4 = _slicedToArray(_React$useState3, 2), - showComponent = _React$useState4[0], - setShowComponent = _React$useState4[1]; - - var baseProps = extractBaseProps(props); - var isWithChips = inputValue && inputValue.length; - var classes = classnames(_defineProperty$2({}, 'EditableChipInput', true), className); - var actionClass = classnames(_defineProperty$2({}, 'EditableChipInput-actions', true)); - var defaultClasses = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'EditableChipInput-default', !isWithChips), _defineProperty$2(_classNames3, 'EditableChipInput-defaultWithChips', isWithChips), _classNames3)); - var inputClass = classnames(_defineProperty$2({}, 'EditableChipInput-chipInput', true)); - React.useEffect(function () { - setDefaultComponent(); - }, [value]); - - var onChipInputChangeHandler = function onChipInputChangeHandler(val) { - setInputValue(val); - if (onChipInputChange) onChipInputChange(val); - }; - - var setDefaultComponent = function setDefaultComponent() { - setInputValue(value); - setShowComponent(false); - }; - - var onSaveChanges = function onSaveChanges() { - if (onChange && inputValue) onChange(inputValue); - }; - - var onChangeHandler = function onChangeHandler(eventType) { - switch (eventType) { - case 'edit': - setShowComponent(true); + if (schema.translate) { + var translatedData = schema.translate(data); + newData[schema.name] = translatedData !== null && _typeof(translatedData) === 'object' ? _objectSpread2(_objectSpread2({}, newData[schema.name]), translatedData) : translatedData; + } - case 'hover': - return; + if (newData[schema.name] === null || _typeof(newData[schema.name]) !== 'object') { + newData[schema.name] = { + title: newData[schema.name] + }; + } - case 'default': - setShowComponent(false); - return; - } - }; + return newData; +} +var filterData = function filterData() { + var schema = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; + var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; + var filterList = arguments.length > 2 ? arguments[2] : undefined; + var filteredData = data; - var renderDefaultState = function renderDefaultState() { - if (inputValue && inputValue.length) { - return inputValue.map(function (val, index) { - return /*#__PURE__*/React.createElement(Chip, _extends$3({ - "data-test": "DesignSystem-EditableChipInput--Chip", - key: index, - name: val, - label: val, - className: "my-2 mx-2" - }, chipObject, { - onClick: function onClick() { - return _onClick && _onClick(val, index); - } - })); + if (filterList) { + Object.keys(filterList).forEach(function (schemaName) { + var filters = filterList[schemaName]; + var sIndex = schema.findIndex(function (s) { + return s.name === schemaName; }); - } + var onFilterChange = schema[sIndex].onFilterChange; - return /*#__PURE__*/React.createElement(Text, { - className: "EditableChipInput--Text" - }, placeholder); - }; + if (filters.length && onFilterChange) { + filteredData = filteredData.filter(function (d) { + return onFilterChange(d, filters); + }); + } + }); + } - var renderChildren = function renderChildren() { - if (showComponent) { - return /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-EditableChipInput--wrapper" - }, /*#__PURE__*/React.createElement(ChipInput, _extends$3({ - "data-test": "DesignSystem-EditableChipInput--ChipInput", - placeholder: placeholder, - onChange: onChipInputChangeHandler, - value: inputValue, - chipOptions: chipOptions - }, rest, { - className: inputClass - }))); - } + return filteredData; +}; +var sortData = function sortData() { + var schema = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; + var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; + var sortingList = arguments.length > 2 ? arguments[2] : undefined; - return /*#__PURE__*/React.createElement("div", { - className: defaultClasses, - "data-test": "DesignSystem-EditableChipInput--Default" - }, renderDefaultState()); - }; + var sortedData = _toConsumableArray(data); - return /*#__PURE__*/React.createElement("div", _extends$3({ - className: classes, - "data-test": "DesignSystem-EditableChipInput" - }, baseProps), /*#__PURE__*/React.createElement(Editable, { - onChange: onChangeHandler, - editing: showComponent - }, renderChildren()), showComponent && /*#__PURE__*/React.createElement("div", { - className: actionClass, - "data-test": "DesignSystem-EditableChipInput--Actions" - }, /*#__PURE__*/React.createElement(Button, { - "data-test": "DesignSystem-EditableChipInput--DiscardButton", - icon: "clear", - className: "mr-3", - size: "tiny", - onClick: setDefaultComponent - }), /*#__PURE__*/React.createElement(Button, { - "data-test": "DesignSystem-EditableChipInput--SaveButton", - icon: "check", - appearance: "primary", - size: "tiny", - disabled: disableSaveAction, - onClick: onSaveChanges - }))); -}; -EditableChipInput.defaultProps = { - placeholder: '', - chipInputOptions: {} -}; + sortingList === null || sortingList === void 0 ? void 0 : sortingList.forEach(function (l) { + var sIndex = schema.findIndex(function (s) { + return s.name === l.name; + }); -var ProgressRing = function ProgressRing(props) { - var size = props.size, - max = props.max, - value = props.value, - className = props.className; - var baseProps = extractBaseProps(props); - var radius = 20; - var circumference = 2 * Math.PI * radius; - var ProgressRingClass = classnames(_defineProperty$2({ - Ring: true - }, "Ring--".concat(size), size), className); - var svgProps = { - viewBox: '0 0 50 50' - }; - var updatedValue = value > 0 ? Math.min(value, max) * 100 / max : 0; - var circleProps = { - cx: 25, - cy: 25, - r: radius, - fill: 'none', - strokeWidth: '8', - strokeDasharray: "".concat(circumference, " ").concat(circumference) - }; - return /*#__PURE__*/React.createElement("svg", _extends$3({ - "data-test": "DesignSystem-ProgressRing" - }, baseProps, { - className: ProgressRingClass - }, svgProps), /*#__PURE__*/React.createElement("circle", _extends$3({ - className: "Ring-background" - }, circleProps)), /*#__PURE__*/React.createElement("circle", _extends$3({ - className: "Ring-indicator", - strokeDashoffset: circumference - updatedValue / 100 * circumference - }, circleProps, { - "data-test": "DesignSystem-ProgressRing--Circle" - }))); + if (sIndex !== -1) { + var defaultComparator = function defaultComparator(a, b) { + var aData = translateData(schema[sIndex], a); + var bData = translateData(schema[sIndex], b); + return aData[l.name].title.localeCompare(bData[l.name].title); + }; + + var _schema$sIndex$compar = schema[sIndex].comparator, + comparator = _schema$sIndex$compar === void 0 ? defaultComparator : _schema$sIndex$compar; + sortedData.sort(comparator); + if (l.type === 'desc') sortedData.reverse(); + } + }); + return sortedData; }; -ProgressRing.displayName = 'ProgressRing'; -ProgressRing.defaultProps = { - size: 'regular', - max: 100 +var paginateData = function paginateData() { + var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; + var page = arguments.length > 1 ? arguments[1] : undefined; + var pageSize = arguments.length > 2 ? arguments[2] : undefined; + var start = (page - 1) * pageSize; + var end = start + pageSize; + var paginatedData = data.slice(start, end); + return paginatedData; }; -var Step = function Step(props) { - var _classNames; - - var label = props.label, - value = props.value, - disabled = props.disabled, - active = props.active, - completed = props.completed, - onChange = props.onChange; - var StepClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Step', true), _defineProperty$2(_classNames, 'Step--active', active), _defineProperty$2(_classNames, 'Step--disabled', disabled), _classNames)); +var moveToIndex = function moveToIndex(arr, from, to) { + if (from === to) return arr; + var newArr = arr; - var onClickHandle = function onClickHandle() { - if (disabled) return; - if (onChange) onChange(label, value); - }; + if (from < to) { + newArr = [].concat(_toConsumableArray(arr.slice(0, from)), _toConsumableArray(arr.slice(from + 1, to + 1)), [arr[from]], _toConsumableArray(arr.slice(to + 1))); + } else { + newArr = [].concat(_toConsumableArray(arr.slice(0, to)), [arr[from]], _toConsumableArray(arr.slice(to, from)), _toConsumableArray(arr.slice(from + 1))); + } - var iconAppearance = completed ? 'info' : disabled ? 'disabled' : active ? 'info' : 'default'; - var appearance = active ? 'link' : disabled ? 'disabled' : 'default'; - return /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-Step", - className: StepClass, - onClick: onClickHandle - }, /*#__PURE__*/React.createElement(Icon, { - "data-test": "DesignSystem-Step--Icon", - name: completed ? 'check_circle' : 'radio_button_unchecked', - appearance: iconAppearance, - className: "mr-3 my-4" - }), label && /*#__PURE__*/React.createElement(Text, { - weight: "medium", - appearance: appearance - }, label)); + return newArr; }; -Step.displayName = 'Step'; - -var Stepper = function Stepper(props) { - var steps = props.steps, - active = props.active, - completed = props.completed, - onChange = props.onChange, - className = props.className, - skipIndexes = props.skipIndexes; - var baseProps = extractBaseProps(props); +var getTotalPages = function getTotalPages(totalRecords, pageSize) { + return Math.ceil(totalRecords / pageSize); +}; +var getSelectAll = function getSelectAll(tableData, selectDisabledRow, clearSelection) { + if (clearSelection) { + return { + indeterminate: false, + checked: false + }; + } - var onChangeHandler = function onChangeHandler(index, stepLabel, stepValue) { - if (onChange) onChange(index, completed, stepLabel, stepValue); - }; + var data = tableData.filter(function (d) { + return d.disabled && selectDisabledRow || !d.disabled; + }); - var StepperClass = classnames(_defineProperty$2({}, 'Stepper', true), className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-Stepper" - }, baseProps, { - className: StepperClass - }), steps.map(function (step, index) { - var label = step.label, - value = step.value; - var isSkipped = skipIndexes.includes(index); - var activeStep = active === index; - var completedStep = !isSkipped && completed >= index; - var disabled = !activeStep && !isSkipped && completed + 1 < index; - return /*#__PURE__*/React.createElement(Step, { - key: index, - label: label, - value: value, - active: activeStep, - completed: completedStep, - disabled: disabled, - onChange: function onChange(steplabel, stepvalue) { - return onChangeHandler(index, steplabel, stepvalue); - } + if (data.length) { + var anyUnSelected = data.some(function (d) { + return !d._selected; }); - })); + var allUnSelected = data.every(function (d) { + return !d._selected; + }); + var indeterminate = data.length >= 0 && anyUnSelected && !allUnSelected; + var checked = !indeterminate && !allUnSelected; + return { + indeterminate: indeterminate, + checked: checked + }; + } + + return { + indeterminate: false, + checked: false + }; }; -Stepper.displayName = 'Stepper'; -Stepper.defaultProps = { - completed: -1, - active: 0, - skipIndexes: [] +var hasSchema = function hasSchema(schema) { + return schema && !!schema.length; }; +var getSchema = function getSchema(schema, loading, loaderSchema) { + var response = schema; -var Trigger = function Trigger(props) { - var inputFormat = props.inputFormat, - startInputOptions = props.startInputOptions, - endInputOptions = props.endInputOptions, - validators = props.validators, - state = props.state, - setState = props.setState; - var init = state.init, - startDate = state.startDate, - endDate = state.endDate, - startError = state.startError, - endError = state.endError; + if (!hasSchema(schema) && loading) { + response = loaderSchema; + } - var updateNav = function updateNav(type) { - if (type === 'start') { - var _getDateInfo = getDateInfo(startDate), - year = _getDateInfo.year, - month = _getDateInfo.month; + return response; +}; +var getPluralSuffix = function getPluralSuffix(count) { + return count > 1 ? 's' : ''; +}; - setState({ - yearNav: year, - monthNav: month - }); - } +var defaultProps$1 = { + showHead: true, + loaderSchema: [], + schema: [], + data: [], + totalRecords: 0, + type: 'data', + size: 'standard', + page: 1, + pageSize: 15, + loading: false, + error: false, + sortingList: [], + filterList: {}, + showFilters: true +}; - if (type === 'end') { - var _getDateInfo2 = getDateInfo(endDate), - _year = _getDateInfo2.year, - _month = _getDateInfo2.month; +var context = /*#__PURE__*/React.createContext(_objectSpread2(_objectSpread2({}, defaultProps$1), {}, { + ref: null +})); +var GridProvider = context.Provider; - setState({ - yearNav: _year, - monthNav: _month - }); - } +var HeaderCell = function HeaderCell(props) { + var context$1 = React.useContext(context); + var schema = props.schema, + setIsDragged = props.setIsDragged, + colIndex = props.colIndex, + onSelectAll = props.onSelectAll, + onMenuChange = props.onMenuChange, + onFilterChange = props.onFilterChange, + updateColumnSchema = props.updateColumnSchema, + reorderColumn = props.reorderColumn; + var headProps = { + schema: schema, + colIndex: colIndex, + onSelectAll: onSelectAll, + onMenuChange: onMenuChange, + onFilterChange: onFilterChange, + updateColumnSchema: updateColumnSchema, + reorderColumn: reorderColumn, + setIsDragged: setIsDragged }; - - var onChangeHandler = function onChangeHandler(_e, val, type) { - setState({ - open: true + var loading = context$1.loading, + draggable = context$1.draggable, + showMenu = context$1.showMenu, + sortingList = context$1.sortingList, + filterList = context$1.filterList, + headCellTooltip = context$1.headCellTooltip, + showFilters = context$1.showFilters, + schemaProp = context$1.schema; + var _schema$sorting = schema.sorting, + sorting = _schema$sorting === void 0 ? true : _schema$sorting, + name = schema.name, + filters = schema.filters, + pinned = schema.pinned; + var isValidSchema = hasSchema(schemaProp); + var listIndex = sortingList.findIndex(function (l) { + return l.name === name; + }); + var sorted = listIndex !== -1 ? sortingList[listIndex].type : null; + var el = /*#__PURE__*/React.createRef(); + var sortOptions = [{ + label: 'Sort Ascending', + value: 'sortAsc', + icon: 'arrow_upward' + }, { + label: 'Sort Descending', + value: 'sortDesc', + icon: 'arrow_downward' + }]; + var pinOptions = [{ + label: 'Pin Left', + value: 'pinLeft', + icon: 'skip_previous' + }, { + label: 'Pin Right', + value: 'pinRight', + icon: 'skip_next' + }]; + var unpinOption = { + label: 'Unpin', + value: 'unpin', + icon: 'replay' + }; + if (pinned === 'left') pinOptions[0] = unpinOption; + if (pinned === 'right') pinOptions[1] = unpinOption; + var hideOptions = [{ + label: 'Hide Column', + value: 'hide', + icon: 'cancel' + }]; + var unsortOption = { + label: 'Unsort', + value: 'unsort', + icon: 'unfold_more' + }; + if (sorted === 'asc') sortOptions[0] = unsortOption; + if (sorted === 'desc') sortOptions[1] = unsortOption; + var options = [].concat(pinOptions, hideOptions); + if (sorting) options = [].concat(sortOptions, _toConsumableArray(options)); + var classes = classnames({ + 'Grid-headCell': true, + 'Grid-headCell--draggable': draggable + }); + var filterOptions = filters ? filters.map(function (f) { + return _objectSpread2(_objectSpread2({}, f), {}, { + selected: filterList[name] && filterList[name].findIndex(function (fl) { + return fl === f.value; + }) !== -1 }); + }) : []; - if (type === 'start') { - var placeholderChar = startInputOptions.placeholderChar || '_'; - - if (val && !val.includes(placeholderChar)) { - var d = translateToDate(inputFormat, val, validators); - - if (d) { - setState({ - startDate: d - }); - - if (endDate) { - var _getDateInfo3 = getDateInfo(endDate), - eYear = _getDateInfo3.year, - eMonth = _getDateInfo3.month, - eDate = _getDateInfo3.date; + var renderLabel = function renderLabel() { + return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Text, { + weight: "strong", + className: "ellipsis--noWrap" + }, schema.displayName), sorting && /*#__PURE__*/React.createElement("div", { + className: "Grid-sortingIcons" + }, sorted ? sorted === 'asc' ? /*#__PURE__*/React.createElement(Icon, { + name: "arrow_upward" + }) : /*#__PURE__*/React.createElement(Icon, { + name: "arrow_downward" + }) : /*#__PURE__*/React.createElement(Icon, { + name: "unfold_more" + }))); + }; - if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { - setState({ - endDate: undefined - }); - } - } - } + return /*#__PURE__*/React.createElement("div", { + key: name, + className: classes, + ref: el + }, /*#__PURE__*/React.createElement("div", { + className: "Grid-cellContent", + "data-test": "DesignSystem-Grid-cellContent", + onClick: function onClick() { + if (!loading && sorting) { + if (sorted === 'asc') onMenuChange(name, 'sortDesc'); + if (sorted === 'desc') onMenuChange(name, 'unsort'); + if (!sorted) onMenuChange(name, 'sortAsc'); } } - - if (type === 'end') { - var _placeholderChar = endInputOptions.placeholderChar ? endInputOptions.placeholderChar : '_'; - - if (val && !val.includes(_placeholderChar)) { - var _d = translateToDate(inputFormat, val, validators); - - if (_d) setState({ - endDate: _d + }, loading && !isValidSchema ? /*#__PURE__*/React.createElement(Placeholder, { + withImage: false + }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "medium" + })) : !schema.headerCellRenderer && headCellTooltip ? /*#__PURE__*/React.createElement(Tooltip, { + position: "top-start", + triggerClass: "w-100 overflow-hidden", + tooltip: schema.displayName + }, renderLabel()) : schema.headerCellRenderer && !headCellTooltip ? schema.headerCellRenderer(headProps) : renderLabel()), showFilters && filters && /*#__PURE__*/React.createElement(React.Fragment, null, loading && !isValidSchema ? /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement(Placeholder, null)) : /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Dropdown, { + menu: true, + showApplyButton: true, + withCheckbox: true, + triggerOptions: { + customTrigger: function customTrigger() { + return /*#__PURE__*/React.createElement(Button, { + icon: "filter_list", + appearance: "transparent" }); } + }, + options: filterOptions, + align: 'left', + onChange: function onChange(selected) { + return onFilterChange(name, selected); + }, + minWidth: 176 + }))), showMenu && /*#__PURE__*/React.createElement(React.Fragment, null, loading && !isValidSchema ? /*#__PURE__*/React.createElement("span", { + className: "ml-4" + }, /*#__PURE__*/React.createElement(Placeholder, null)) : /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Dropdown, { + key: "".concat(name, "-").concat(sorted, "-").concat(pinned), + menu: true, + optionType: "WITH_ICON", + triggerOptions: { + customTrigger: function customTrigger() { + return /*#__PURE__*/React.createElement(Button, { + icon: "more_vert_filled", + appearance: "transparent" + }); + } + }, + options: options, + align: 'left', + onChange: function onChange(selected) { + return onMenuChange(name, selected); + }, + minWidth: 176 + }))), schema.resizable && + /*#__PURE__*/ + //TODO(a11y) + //eslint-disable-next-line + React.createElement("span", { + className: "Grid-cellResize", + onMouseDown: function onMouseDown() { + resizeCol({ + updateColumnSchema: updateColumnSchema + }, name, el.current); + setIsDragged(false); } - }; - - var onBlurHandler = function onBlurHandler(_e, val, type) { - setState({ - init: true - }); - - if (type === 'start') { - var _startInputOptions$pl = startInputOptions.placeholderChar, - placeholderChar = _startInputOptions$pl === void 0 ? '_' : _startInputOptions$pl; - if (!val || val.includes(placeholderChar)) setState({ - startDate: undefined - }); - } - - if (type === 'end') { - var _endInputOptions$plac = endInputOptions.placeholderChar, - _placeholderChar2 = _endInputOptions$plac === void 0 ? '_' : _endInputOptions$plac; - - if (!val || val.includes(_placeholderChar2)) setState({ - endDate: undefined - }); - } - }; + })); +}; - var onClearHandler = function onClearHandler(type) { - setState({ - init: true - }); +var BodyCell = function BodyCell(props) { + var context$1 = React.useContext(context); + var data = props.data, + schema = props.schema, + expandedState = props.expandedState, + rowIndex = props.rowIndex, + colIndex = props.colIndex, + nestedRowData = props.nestedRowData; + var size = context$1.size, + loading = context$1.loading, + nestedRows = context$1.nestedRows; - if (type === 'start') { - setState({ - startDate: undefined - }); - updateNav('end'); - } + var _expandedState = _slicedToArray(expandedState, 2), + expanded = _expandedState[0], + setExpanded = _expandedState[1]; - if (type === 'end') { - setState({ - endDate: undefined - }); - updateNav('start'); - } + var cellProps = { + rowIndex: rowIndex, + colIndex: colIndex, + size: size, + schema: schema, + data: data, + loading: loading, + expanded: expanded }; - - var onClickHandler = function onClickHandler(type) { - var open = state.open; - - if (!open) { - updateNav(type); + return /*#__PURE__*/React.createElement("div", { + className: "Grid-cellContent" + }, colIndex === 0 && nestedRows && /*#__PURE__*/React.createElement(React.Fragment, null, nestedRowData ? /*#__PURE__*/React.createElement(Icon, { + className: 'Grid-nestedRowTrigger', + name: expanded ? 'keyboard_arrow_up' : 'keyboard_arrow_down', + size: 20, + appearance: 'default', + onClick: function onClick(e) { + if (nestedRowData) { + e.stopPropagation(); + setExpanded(!expanded); + } } - }; + }) : /*#__PURE__*/React.createElement("span", { + className: "Grid-nestedRowPlaceholder" + })), schema.cellRenderer ? schema.cellRenderer(cellProps) : /*#__PURE__*/React.createElement(GridCell, _extends$2({ + key: "".concat(rowIndex, "-").concat(colIndex) + }, cellProps))); +}; - var mask = date[inputFormat]; - var startPlaceholderChar = startInputOptions.placeholderChar || '_'; - var endPlaceholderChar = endInputOptions.placeholderChar || '_'; - var showStartError = startInputOptions.error || startInputOptions.required && startError && init; - var showEndError = endInputOptions.error || endInputOptions.required && endError && init; - var startErrorMessage = startInputOptions.caption === undefined ? 'Invalid value' : startInputOptions.caption; - var endErrorMessage = endInputOptions.caption === undefined ? 'Invalid value' : endInputOptions.caption; - var startLabel = startInputOptions.label; - var endLabel = endInputOptions.label; +var Cell = function Cell(props) { + var context$1 = React.useContext(context); + var _ref = props, + isHead = _ref.isHead, + firstCell = _ref.firstCell, + schema = _ref.schema, + data = _ref.data, + rowIndex = _ref.rowIndex, + colIndex = _ref.colIndex, + expandedState = _ref.expandedState, + onSelectAll = _ref.onSelectAll, + onMenuChange = _ref.onMenuChange, + onFilterChange = _ref.onFilterChange, + updateColumnSchema = _ref.updateColumnSchema, + reorderColumn = _ref.reorderColumn, + nestedRowData = _ref.nestedRowData; + var draggable = context$1.draggable, + separator = context$1.separator, + nestedRows = context$1.nestedRows, + ref = context$1.ref, + withCheckbox = context$1.withCheckbox; + var name = schema.name, + hidden = schema.hidden, + pinned = schema.pinned, + _schema$cellType = schema.cellType, + cellType = _schema$cellType === void 0 ? 'DEFAULT' : _schema$cellType; - var inputValidator = function inputValidator(val) { - return isValid(validators, val, inputFormat); - }; + var _getCellSize = getCellSize(cellType), + width = _getCellSize.width, + _getCellSize$minWidth = _getCellSize.minWidth, + minWidth = _getCellSize$minWidth === void 0 ? 96 : _getCellSize$minWidth, + _getCellSize$maxWidth = _getCellSize.maxWidth, + maxWidth = _getCellSize$maxWidth === void 0 ? 800 : _getCellSize$maxWidth; - return /*#__PURE__*/React.createElement(Row, null, /*#__PURE__*/React.createElement(Column, { - size: '6', - sizeXS: '12', - className: "DateRangePicker-input DateRangePicker-input--startDate" - }, startLabel && /*#__PURE__*/React.createElement(Label, { - required: startInputOptions.required, - withInput: true - }, startLabel), /*#__PURE__*/React.createElement(InputMask, _extends$3({ - icon: "events", - placeholder: inputFormat - }, startInputOptions, { - mask: mask, - value: startDate ? translateToString(inputFormat, startDate) // @ts-ignore - : init ? InputMask.utils.getDefaultValue(mask, startPlaceholderChar) : '', - onChange: function onChange(e, val) { - onChangeHandler(e, val || '', 'start'); - }, - onBlur: function onBlur(e, val) { - onBlurHandler(e, val || '', 'start'); - }, - onClear: function onClear() { - return onClearHandler('start'); + var _React$useState = React.useState(false), + _React$useState2 = _slicedToArray(_React$useState, 2), + isDragged = _React$useState2[0], + setIsDragged = _React$useState2[1]; + + var cellClass = classnames({ + 'Grid-cell': true, + 'Grid-cell--head': isHead, + 'Grid-cell--dragged': isDragged && draggable, + 'Grid-cell--body': !isHead, + 'Grid-cell--separator': !firstCell && (schema.separator !== undefined ? schema.separator : separator), + 'Grid-cell--nestedRow': !isHead && colIndex === 0 && nestedRows + }); + if (hidden) return null; + return /*#__PURE__*/React.createElement("div", { + key: "".concat(rowIndex, "-").concat(colIndex), + className: cellClass, + draggable: isHead && draggable, + onDragStart: function onDragStart(e) { + if (draggable) { + setIsDragged(true); + e.dataTransfer.setData('name', name); + if (pinned) e.dataTransfer.setData('type', pinned); + } }, - onClick: function onClick() { - return onClickHandler('start'); + onDrag: function onDrag() { + setIsDragged(false); }, - error: showStartError, - caption: showStartError ? startErrorMessage : '', - validators: [inputValidator], - clearOnEmptyBlur: false - }))), /*#__PURE__*/React.createElement(Column, { - size: '6', - sizeXS: '12', - className: "DateRangePicker-input DateRangePicker-input--endDate" - }, endLabel && /*#__PURE__*/React.createElement(Label, { - required: endInputOptions.required, - withInput: true - }, endLabel), /*#__PURE__*/React.createElement(InputMask, _extends$3({ - icon: "events", - placeholder: inputFormat - }, endInputOptions, { - mask: mask, - value: endDate ? translateToString(inputFormat, endDate) // @ts-ignore - : init ? InputMask.utils.getDefaultValue(mask, endPlaceholderChar) : '', - onChange: function onChange(e, val) { - onChangeHandler(e, val || '', 'end'); + onDragOver: function onDragOver(e) { + return e.preventDefault(); }, - onBlur: function onBlur(e, val) { - onBlurHandler(e, val || '', 'end'); + onMouseUpCapture: function onMouseUpCapture() { + setIsDragged(false); }, - onClear: function onClear() { - return onClearHandler('end'); + onDragEnd: function onDragEnd(e) { + e.preventDefault(); + setIsDragged(false); }, - onClick: function onClick() { - return onClickHandler('end'); + onDrop: function onDrop(e) { + if (draggable) { + setIsDragged(false); + var from = { + name: e.dataTransfer.getData('name'), + type: e.dataTransfer.getData('type') + }; + var to = { + name: name, + type: pinned || '' + }; + if (from.type === to.type && reorderColumn) reorderColumn(from.name, to.name); + } }, - error: showEndError, - caption: showEndError ? endErrorMessage : '', - validators: [inputValidator], - clearOnEmptyBlur: false - })))); + style: { + width: getWidth({ + ref: ref, + withCheckbox: withCheckbox + }, schema.width || width), + minWidth: getWidth({ + ref: ref, + withCheckbox: withCheckbox + }, schema.minWidth || minWidth), + maxWidth: getWidth({ + ref: ref, + withCheckbox: withCheckbox + }, schema.maxWidth || maxWidth) + } + }, isHead ? /*#__PURE__*/React.createElement(HeaderCell, { + colIndex: colIndex, + schema: schema, + onSelectAll: onSelectAll, + onMenuChange: onMenuChange, + onFilterChange: onFilterChange, + updateColumnSchema: updateColumnSchema, + reorderColumn: reorderColumn, + setIsDragged: setIsDragged + }) : /*#__PURE__*/React.createElement(BodyCell, { + rowIndex: rowIndex, + colIndex: colIndex, + data: data, + schema: schema, + expandedState: expandedState, + nestedRowData: nestedRowData + })); }; -var SingleInputTrigger = function SingleInputTrigger(props) { - var inputFormat = props.inputFormat, - inputOptions = props.inputOptions, - validators = props.validators, - state = props.state, - setState = props.setState; - var init = state.init, - startDate = state.startDate, - endDate = state.endDate, - startValue = state.startValue, - endValue = state.endValue, - startError = state.startError, - endError = state.endError; - var mask = rangeDate[inputFormat]; - var showError = inputOptions.error || inputOptions.required && (startError || endError) && init; - var errorMessage = inputOptions.caption === undefined ? 'Invalid value' : inputOptions.caption; - var label = inputOptions.label; - var _inputOptions$placeho = inputOptions.placeholderChar, - placeholderChar = _inputOptions$placeho === void 0 ? '_' : _inputOptions$placeho; // @ts-ignore +var GridHead = function GridHead(props) { + var context$1 = React.useContext(context); + var schema = props.schema, + onSelectAll = props.onSelectAll, + onMenuChange = props.onMenuChange, + onFilterChange = props.onFilterChange, + updateColumnSchema = props.updateColumnSchema, + reorderColumn = props.reorderColumn; + var withCheckbox = context$1.withCheckbox, + loading = context$1.loading, + selectAll = context$1.selectAll; + var pinnedSchema = schema.filter(function (s) { + return !s.hidden && s.pinned; + }); + var leftPinnedSchema = pinnedSchema.filter(function (s) { + return !s.hidden && s.pinned === 'left'; + }); + var rightPinnedSchema = pinnedSchema.filter(function (s) { + return !s.hidden && s.pinned === 'right'; + }); + var unpinnedSchema = schema.filter(function (s) { + return !s.hidden && !s.pinned; + }); + + var renderCheckbox = function renderCheckbox(show) { + if (!show || !withCheckbox) return null; + return /*#__PURE__*/React.createElement("div", { + className: "Grid-cell Grid-cell--head Grid-cell--checkbox" + }, loading ? /*#__PURE__*/React.createElement(Placeholder, null) : /*#__PURE__*/React.createElement(Checkbox, _extends$2({}, selectAll, { + onChange: onSelectAll + }))); + }; - var defaultValue = InputMask.utils.getDefaultValue(mask, placeholderChar).split(' - '); - var sValue = startValue || defaultValue[0]; - var eValue = endValue || defaultValue[1]; + var renderSchema = function renderSchema(currSchema, shouldRenderCheckbox, pinned) { + if (currSchema.length) { + var _classNames; - var inputValidator = function inputValidator(val) { - var _val$split = val.split(' - '), - _val$split2 = _slicedToArray(_val$split, 2), - startVal = _val$split2[0], - endVal = _val$split2[1]; + var classes = classnames((_classNames = { + 'Grid-cellGroup': true, + 'Grid-cellGroup--pinned': pinned + }, _defineProperty$1(_classNames, "Grid-cellGroup--pinned-".concat(pinned), pinned), _defineProperty$1(_classNames, 'Grid-cellGroup--main', !pinned), _classNames)); + return /*#__PURE__*/React.createElement("div", { + className: classes + }, renderCheckbox(shouldRenderCheckbox), currSchema.map(function (s, index) { + var cI = pinned === 'left' ? index : leftPinnedSchema.length + index; + if (pinned === 'right') cI += unpinnedSchema.length; + return /*#__PURE__*/React.createElement(Cell, { + key: "".concat(cI), + firstCell: !index, + colIndex: cI, + isHead: true, + schema: s, + onSelectAll: onSelectAll, + onMenuChange: onMenuChange, + onFilterChange: onFilterChange, + updateColumnSchema: updateColumnSchema, + reorderColumn: reorderColumn + }); + })); + } - return isValid(validators, startVal, inputFormat) && isValid(validators, endVal, inputFormat); + return null; }; - var onChangeHandler = function onChangeHandler(_e, val) { - var date = val.split(' - '); - var startVal = date[0]; - var endVal = date[1]; + return /*#__PURE__*/React.createElement("div", { + className: "Grid-head", + "data-test": "DesignSystem-GridHead-wrapper" + }, /*#__PURE__*/React.createElement("div", { + className: "Grid-row Grid-row--head" + }, renderSchema(leftPinnedSchema, !!leftPinnedSchema.length, 'left'), renderSchema(unpinnedSchema, !leftPinnedSchema.length && !!unpinnedSchema.length), renderSchema(rightPinnedSchema, false, 'right'))); +}; - if (startValue !== startVal && startVal && !startVal.includes(placeholderChar)) { - var startD = translateToDate(inputFormat, startVal, validators); +var GridNestedRow = function GridNestedRow(props) { + var context$1 = React.useContext(context); + var schema = context$1.schema, + loading = context$1.loading, + nestedRowRenderer = context$1.nestedRowRenderer; + var data = props.data, + rowIndex = props.rowIndex, + expanded = props.expanded; + if (nestedRowRenderer) return nestedRowRenderer({ + data: data, + schema: schema, + loading: loading, + rowIndex: rowIndex, + expanded: expanded + }); // return ( + // {JSON.stringify(data)} + // ) + // const { + // schema: propSchema + // } = _this.props; + // if (data._expanded) { + // const showHead = data._expanded.showHead; + // const schema = data._expanded.schema || propSchema; + // let gridData = data._expanded.data; + // if (!gridData) { + // const { + // _uid, + // _expanded, + // ...rest + // } = data; + // gridData = [rest]; + // } + // return ( + //
+ // + //
+ // ); + // } - if (startD) { - var isEndDateValid = endValue && !endValue.includes(placeholderChar); - setState({ - startDate: startD, - endDate: isEndDateValid ? endDate : undefined - }); + return null; +}; - if (endDate) { - var _getDateInfo = getDateInfo(endDate), - eYear = _getDateInfo.year, - eMonth = _getDateInfo.month, - eDate = _getDateInfo.date; +var GridRow = function GridRow(props) { + var context$1 = React.useContext(context); + var type = context$1.type, + onRowClick = context$1.onRowClick, + loading = context$1.loading, + withCheckbox = context$1.withCheckbox, + nestedRows = context$1.nestedRows; + var schema = props.schema, + data = props.data, + rI = props.rowIndex, + onSelect = props.onSelect, + className = props.className; + var rowRef = React.useRef(null); - if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { - setState({ - endDate: undefined - }); - } - } + var _React$useState = React.useState(false), + _React$useState2 = _slicedToArray(_React$useState, 2), + expanded = _React$useState2[0], + setExpanded = _React$useState2[1]; + + var rowClasses = classnames('Grid-row', 'Grid-row--body', { + 'Grid-row--selected': data._selected, + 'Grid-row--disabled': data.disabled + }); + var onClickHandler = React.useCallback(function () { + if (type === 'resource' && !loading) { + if (onRowClick) { + onRowClick(data, rI); } } + }, [data, rI]); + var pinnedSchema = schema.filter(function (s) { + return !s.hidden && s.pinned; + }); + var leftPinnedSchema = pinnedSchema.filter(function (s) { + return !s.hidden && s.pinned === 'left'; + }); + var rightPinnedSchema = pinnedSchema.filter(function (s) { + return !s.hidden && s.pinned === 'right'; + }); + var unpinnedSchema = schema.filter(function (s) { + return !s.hidden && !s.pinned; + }); + var nestedProps = { + data: data, + rowIndex: rI, + expanded: expanded + }; + var nestedRowData = GridNestedRow(nestedProps); - if (endValue !== endVal && endVal && !endVal.includes(placeholderChar)) { - var endD = translateToDate(inputFormat, endVal, validators); - var isStartDateValid = startValue && !startValue.includes(placeholderChar); + var renderCheckbox = function renderCheckbox(show) { + if (!show || !withCheckbox) return null; + return ( + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement("div", { + className: "Grid-cell Grid-cell--body Grid-cell--checkbox", + onClick: function onClick(e) { + return e.stopPropagation(); + } + }, loading ? /*#__PURE__*/React.createElement(Placeholder, null) : /*#__PURE__*/React.createElement(Checkbox, { + checked: !!data._selected, + onChange: function onChange(event) { + onSelect(rI, event.target.checked); + } + })) + ); + }; - if (endD) { - setState({ - endDate: endD, - startDate: isStartDateValid ? startDate : undefined + var renderSchema = function renderSchema(currSchema, shouldRenderCheckbox, pinned) { + if (currSchema.length) { + var _classNames; + + var classes = classnames((_classNames = { + 'Grid-cellGroup': true, + 'Grid-cellGroup--pinned': pinned + }, _defineProperty$1(_classNames, "Grid-cellGroup--pinned-".concat(pinned), pinned), _defineProperty$1(_classNames, 'Grid-cellGroup--main', !pinned), _classNames)); + return /*#__PURE__*/React.createElement("div", { + className: classes, + "data-test": "DesignSystem-Grid-cellGroup" + }, renderCheckbox(shouldRenderCheckbox), currSchema.map(function (s, index) { + var cI = pinned === 'left' ? index : leftPinnedSchema.length + index; + if (pinned === 'right') cI += unpinnedSchema.length; + return /*#__PURE__*/React.createElement(Cell, { + key: "".concat(rI, "-").concat(cI), + rowIndex: rI, + colIndex: cI, + firstCell: !index, + schema: s, + data: data, + expandedState: [expanded, setExpanded], + nestedRowData: nestedRowData }); - } + })); } - setState({ - startValue: startVal, - endValue: endVal - }); + return null; }; - var onBlurHandler = function onBlurHandler(_e, val) { - setState({ - init: true - }); - var date = val.split(' - '); - var startVal = date[0]; - var endVal = date[1]; - if (!startVal || startVal.includes(placeholderChar)) setState({ - startDate: undefined - }); - if (!endVal || endVal.includes(placeholderChar)) setState({ - endDate: undefined - }); - }; + var wrapperClasses = classnames(className, { + 'Grid-rowWrapper': true + }); + return /*#__PURE__*/React.createElement("div", { + className: wrapperClasses + }, /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-Grid-row", + className: rowClasses, + onClick: onClickHandler, + ref: rowRef + }, renderSchema(leftPinnedSchema, !!leftPinnedSchema.length, 'left'), renderSchema(unpinnedSchema, !leftPinnedSchema.length && !!unpinnedSchema.length), renderSchema(rightPinnedSchema, false, 'right')), nestedRows && expanded && /*#__PURE__*/React.createElement("div", { + className: "Grid-nestedRow" + }, nestedRowData)); +}; +GridRow.defaultProps = { + data: {} +}; + +var GridBody = function GridBody(props) { + var context$1 = React.useContext(context); + var data = context$1.data, + ref = context$1.ref, + loading = context$1.loading, + error = context$1.error, + withPagination = context$1.withPagination, + page = context$1.page, + pageSize = context$1.pageSize, + totalRecords = context$1.totalRecords, + errorTemplate = context$1.errorTemplate; + + if (!loading && error) { + return errorTemplate ? typeof errorTemplate === 'function' ? errorTemplate({}) : errorTemplate : null; + } + + var schema = props.schema, + prevPageInfo = props.prevPageInfo, + updatePrevPageInfo = props.updatePrevPageInfo, + onSelect = props.onSelect; + React.useEffect(function () { + var gridBodyEl = ref.querySelector('.Grid-body'); + + if (gridBodyEl) { + window.requestAnimationFrame(function () { + if (prevPageInfo.page === page) { + gridBodyEl.scrollTop = prevPageInfo.scrollTop; + } + }); + } + + return function () { + if (gridBodyEl) { + updatePrevPageInfo({ + page: page, + scrollTop: gridBodyEl.scrollTop + }); + } + }; + }, []); + var totalPages = Math.ceil(totalRecords / pageSize); + var isLastPage = withPagination && page === totalPages; + var dataLength = isLastPage ? totalRecords - (page - 1) * pageSize : loading ? pageSize : withPagination ? Math.min(totalRecords, pageSize) : totalRecords; - var onClearHandler = function onClearHandler() { - setState({ - init: true, - startDate: undefined, - endDate: undefined, - yearNav: undefined, - monthNav: undefined + var renderRow = function renderRow(rowIndex, item) { + return /*#__PURE__*/React.createElement(GridRow, { + key: rowIndex, + rowIndex: rowIndex, + data: !item ? data[rowIndex] : item, + schema: schema, + onSelect: onSelect }); }; - return /*#__PURE__*/React.createElement(Row, null, /*#__PURE__*/React.createElement(Column, null, label && /*#__PURE__*/React.createElement(Label, { - required: inputOptions.required, - withInput: true - }, label), /*#__PURE__*/React.createElement(InputMask, _extends$3({ - icon: "events", - placeholder: "".concat(inputFormat, " - ").concat(inputFormat) - }, inputOptions, { - mask: mask, - value: !startDate && !endDate && !init ? undefined : "".concat(sValue, " - ").concat(eValue), - onChange: function onChange(e, val) { - onChangeHandler(e, val || ''); - }, - onBlur: function onBlur(e, val) { - onBlurHandler(e, val || ''); - }, - onClear: onClearHandler, - error: showError, - caption: showError ? errorMessage : '', - validators: [inputValidator], - clearOnEmptyBlur: false - })))); -}; - -var setDate = function setDate(date) { - var d = new Date(); - return new Date(d.setDate(date)); -}; + var getArrayList = function getArrayList() { + if (loading && !data.length) { + return _toConsumableArray(Array(dataLength).map(function (x) { + return x; + })); + } -var getCurrentYear = function getCurrentYear() { - var current = new Date(); - var currentYear = current.getFullYear(); - return currentYear; -}; -var getCurrentMonth = function getCurrentMonth() { - var current = new Date(); - var currentMonth = current.getMonth(); - return currentMonth; -}; -var getCurrentWeek = function getCurrentWeek() { - var current = new Date(); - var currentDate = current.getDate(); - var currentDay = current.getDay(); - return { - startDate: setDate(currentDate - currentDay + 1), - endDate: setDate(currentDate - currentDay + 7) - }; -}; -var getPreviousWeek = function getPreviousWeek() { - var current = new Date(); - var currentDate = current.getDate(); - var currentDay = current.getDay(); - return { - startDate: setDate(currentDate - currentDay - 6), - endDate: setDate(currentDate - currentDay) - }; -}; -var getPreviousMonth = function getPreviousMonth() { - var current = new Date(); - var currentYear = current.getFullYear(); - var currentMonth = current.getMonth(); - return { - endDate: new Date(currentYear, currentMonth, 0), - startDate: new Date(currentYear - +(currentMonth < 0), (currentMonth + 11) % 12, 1) - }; -}; -var getPrevious90Days = function getPrevious90Days() { - var current = new Date(); - var currentDate = current.getDate(); - return { - startDate: setDate(currentDate - 90), - endDate: setDate(currentDate) - }; -}; -var getCustomDates = function getCustomDates() { - var current = new Date(); - var currentDate = current.getDate(); - return { - startDate: setDate(currentDate), - endDate: setDate(currentDate) + return data; }; + + return /*#__PURE__*/React.createElement("div", { + className: "Grid-body" + }, getArrayList().map(function (item, i) { + return renderRow(i, item); + })); }; -var _excluded$3 = ["startDate", "endDate", "yearNav", "monthNav", "open", "inputFormat", "outputFormat", "startInputOptions", "endInputOptions", "validators", "withInput", "position", "disabledBefore", "disabledAfter", "onRangeChange", "rangeLimit"]; -var DateRangePicker = /*#__PURE__*/function (_React$Component) { - _inherits$1(DateRangePicker, _React$Component); +var Grid = /*#__PURE__*/function (_React$Component) { + _inherits(Grid, _React$Component); - var _super = _createSuper$1(DateRangePicker); + var _super = _createSuper(Grid); - function DateRangePicker(props) { + function Grid(props) { var _this; - _classCallCheck$1(this, DateRangePicker); + _classCallCheck(this, Grid); _this = _super.call(this, props); - _defineProperty$2(_assertThisInitialized$2(_this), "monthsInView", void 0); - - _defineProperty$2(_assertThisInitialized$2(_this), "getDate", function (startDate, endDate) { - var inputFormat = _this.props.inputFormat; - var startVal = startDate ? translateToString(inputFormat, startDate) : ''; - var endVal = endDate ? translateToString(inputFormat, endDate) : ''; - return { - startValue: startVal, - endValue: endVal - }; - }); + _defineProperty$1(_assertThisInitialized$1(_this), "gridRef", null); - _defineProperty$2(_assertThisInitialized$2(_this), "getErrors", function (startDate, endDate) { - var isError = function isError(date) { - var _this$props = _this.props, - disabledBefore = _this$props.disabledBefore, - disabledAfter = _this$props.disabledAfter; + _defineProperty$1(_assertThisInitialized$1(_this), "isHeadSyncing", false); - var _getDateInfo = getDateInfo(disabledBefore), - dbYear = _getDateInfo.year, - dbMonth = _getDateInfo.month, - dbDate = _getDateInfo.date; + _defineProperty$1(_assertThisInitialized$1(_this), "isBodySyncing", false); - var _getDateInfo2 = getDateInfo(disabledAfter), - daYear = _getDateInfo2.year, - daMonth = _getDateInfo2.month, - daDate = _getDateInfo2.date; + _defineProperty$1(_assertThisInitialized$1(_this), "syncScroll", function (type) { + return function () { + var gridHeadEl = _this.gridRef.querySelector('.Grid-head'); - return !date ? true : compareDate(date, 'less', dbYear, dbMonth, dbDate) || compareDate(date, 'more', daYear, daMonth, daDate); - }; + var gridBodyEl = _this.gridRef.querySelector('.Grid-body'); - var startError = isError(startDate); - var endError = isError(endDate); + if (type === 'head') { + if (!_this.isHeadSyncing) { + _this.isBodySyncing = true; + gridBodyEl.scrollLeft = gridHeadEl.scrollLeft; + } - var _getDateInfo3 = getDateInfo(endDate), - eYear = _getDateInfo3.year, - eMonth = _getDateInfo3.month, - eDate = _getDateInfo3.date; + _this.isHeadSyncing = false; + } - if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { - startError = true; - endError = true; - } + if (type === 'body') { + if (!_this.isBodySyncing) { + _this.isHeadSyncing = true; + gridHeadEl.scrollLeft = gridBodyEl.scrollLeft; + } - return { - startError: startError, - endError: endError + _this.isBodySyncing = false; + } }; }); - _defineProperty$2(_assertThisInitialized$2(_this), "getInRangeError", function () { - var rangeLimit = _this.props.rangeLimit; + _defineProperty$1(_assertThisInitialized$1(_this), "updateRenderedSchema", function (newSchema) { + var updateSchema = _this.props.updateSchema; - if (rangeLimit) { - var _this$state = _this.state, - _startDate2 = _this$state.startDate, - _endDate2 = _this$state.endDate; + if (updateSchema) { + updateSchema(newSchema); + } + }); - var _getDateInfo4 = getDateInfo(_startDate2), - sYear = _getDateInfo4.year, - sMonth = _getDateInfo4.month, - sDate = _getDateInfo4.date; + _defineProperty$1(_assertThisInitialized$1(_this), "updateColumnSchema", function (name, schemaUpdate) { + var schema = _this.props.schema; - var _getDateInfo5 = getDateInfo(_endDate2), - eYear = _getDateInfo5.year, - eMonth = _getDateInfo5.month, - eDate = _getDateInfo5.date; + var newSchema = _toConsumableArray(schema); - var limitDate; + var ind = newSchema.findIndex(function (s) { + return s.name === name; + }); + newSchema[ind] = _objectSpread2(_objectSpread2({}, newSchema[ind]), schemaUpdate); - if (_startDate2) { - limitDate = new Date(_startDate2); - limitDate.setDate(sDate + rangeLimit); - return compareDate(limitDate, 'less', eYear, eMonth, eDate + 1); - } + _this.updateRenderedSchema(newSchema); + }); - if (_endDate2) { - limitDate = new Date(_endDate2); - limitDate.setDate(eDate - rangeLimit); - return compareDate(limitDate, 'more', sYear, sMonth, sDate - 1); - } - } + _defineProperty$1(_assertThisInitialized$1(_this), "reorderColumn", function (from, to) { + var schema = _this.props.schema; + var fromInd = schema.findIndex(function (s) { + return s.name === from; + }); + var toInd = schema.findIndex(function (s) { + return s.name === to; + }); + var newSchema = moveToIndex(schema, fromInd, toInd); - return false; + _this.updateRenderedSchema(newSchema); }); - _defineProperty$2(_assertThisInitialized$2(_this), "onRangeChangeHandler", function (sDate, eDate) { - _this.setState({ - init: true, - startDate: sDate, - endDate: eDate, - startValue: sDate ? translateToString(_this.props.inputFormat, sDate) : '', - endValue: eDate ? translateToString(_this.props.inputFormat, eDate) : '' - }); + _defineProperty$1(_assertThisInitialized$1(_this), "updateSortingList", function (sortingList) { + var updateSortingList = _this.props.updateSortingList; + + if (updateSortingList) { + updateSortingList(sortingList); + } }); - _defineProperty$2(_assertThisInitialized$2(_this), "onToggleHandler", function (o, type) { - switch (type) { - case 'outsideClick': - _this.setState({ - open: o - }); + _defineProperty$1(_assertThisInitialized$1(_this), "updateFilterList", function (filterList) { + var updateFilterList = _this.props.updateFilterList; + + if (updateFilterList) { + updateFilterList(filterList); + } + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "onMenuChange", function (name, selected) { + var sortingList = _this.props.sortingList; + + switch (selected) { + case 'sortAsc': + sortColumn({ + sortingList: sortingList, + updateSortingList: _this.updateSortingList + }, name, 'asc'); + break; + + case 'sortDesc': + sortColumn({ + sortingList: sortingList, + updateSortingList: _this.updateSortingList + }, name, 'desc'); + break; + + case 'unsort': + sortColumn({ + sortingList: sortingList, + updateSortingList: _this.updateSortingList + }, name, 'unsort'); + break; + + case 'pinLeft': + pinColumn({ + updateColumnSchema: _this.updateColumnSchema + }, name, 'left'); + break; + case 'pinRight': + pinColumn({ + updateColumnSchema: _this.updateColumnSchema + }, name, 'right'); break; - case 'onClick': - _this.setState({ - open: true - }); + case 'unpin': + pinColumn({ + updateColumnSchema: _this.updateColumnSchema + }, name, 'unpin'); + break; + case 'hide': + hideColumn({ + updateColumnSchema: _this.updateColumnSchema + }, name, true); break; } }); - var _inputFormat = props.inputFormat, - validators = props.validators; + _defineProperty$1(_assertThisInitialized$1(_this), "onFilterChange", function (name, selected) { + var filterList = _this.props.filterList; - var _startDate = convertToDate(props.startDate, _inputFormat, validators); + var newFilterList = _objectSpread2(_objectSpread2({}, filterList), {}, _defineProperty$1({}, name, selected)); - var _endDate = convertToDate(props.endDate, _inputFormat, validators); + _this.updateFilterList(newFilterList); + }); - var _this$getDate = _this.getDate(_startDate, _endDate), - startValue = _this$getDate.startValue, - endValue = _this$getDate.endValue; + _defineProperty$1(_assertThisInitialized$1(_this), "onSelect", function (rowIndex, selected) { + var onSelect = _this.props.onSelect; - var _this$getErrors = _this.getErrors(_startDate, _endDate), - _startError = _this$getErrors.startError, - _endError = _this$getErrors.endError; + if (onSelect) { + onSelect(rowIndex, selected); + } + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "onSelectAll", function (event) { + var onSelectAll = _this.props.onSelectAll; + + if (onSelectAll) { + onSelectAll(event.target.checked, undefined, true); + } + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "updatePrevPageInfo", function (value) { + _this.setState({ + prevPageInfo: value + }); + }); + var pageInfo = { + page: 1, + scrollTop: 0 + }; _this.state = { - startDate: _startDate, - endDate: _endDate, - startValue: startValue, - endValue: endValue, - startError: _startError, - endError: _endError, init: false, - open: props.open || false, - yearNav: props.yearNav, - monthNav: props.monthNav + prevPageInfo: pageInfo }; - _this.monthsInView = props.monthsInView || (props.withInput ? 2 : 1); return _this; } - _createClass$1(DateRangePicker, [{ + _createClass(Grid, [{ + key: "componentDidMount", + value: function componentDidMount() { + this.setState({ + init: true + }); + window.addEventListener('resize', this.forceRerender.bind(this)); + } + }, { + key: "forceRerender", + value: function forceRerender() { + this.forceUpdate(); + } + }, { + key: "componentWillUnmount", + value: function componentWillUnmount() { + this.removeScrollListeners(); + window.removeEventListener('resize', this.forceRerender.bind(this)); + } + }, { key: "componentDidUpdate", value: function componentDidUpdate(prevProps, prevState) { - if (prevProps.startDate !== this.props.startDate) { - var _this$props2 = this.props, - inputFormat = _this$props2.inputFormat, - validators = _this$props2.validators; - var d = convertToDate(this.props.startDate, inputFormat, validators); - var val = translateToString(inputFormat, d); - this.setState({ - startDate: d, - startValue: val - }); + if (prevState.init !== this.state.init) { + this.addScrollListeners(); } - if (prevProps.endDate !== this.props.endDate) { - var _this$props3 = this.props, - _inputFormat2 = _this$props3.inputFormat, - _validators = _this$props3.validators; - - var _d = convertToDate(this.props.endDate, _inputFormat2, _validators); - - var _val = translateToString(_inputFormat2, _d); - - this.setState({ - endDate: _d, - endValue: _val - }); + if (prevProps.page !== this.props.page || prevProps.error !== this.props.error) { + this.removeScrollListeners(); + this.addScrollListeners(); } + } + }, { + key: "addScrollListeners", + value: function addScrollListeners() { + var gridHeadEl = this.gridRef.querySelector('.Grid-head'); + var gridBodyEl = this.gridRef.querySelector('.Grid-body'); - if (prevProps.open !== this.props.open) { - this.setState({ - open: this.props.open || false - }); + if (gridHeadEl && gridBodyEl) { + gridHeadEl.addEventListener('scroll', this.syncScroll('head')); + gridBodyEl.addEventListener('scroll', this.syncScroll('body')); } + } + }, { + key: "removeScrollListeners", + value: function removeScrollListeners() { + var gridHeadEl = this.gridRef.querySelector('.Grid-head'); + var gridBodyEl = this.gridRef.querySelector('.Grid-body'); - if (prevProps.yearNav !== this.props.yearNav) { - this.setState({ - yearNav: this.props.yearNav - }); + if (gridHeadEl && gridBodyEl) { + gridHeadEl.removeEventListener('scroll', this.syncScroll('head')); + gridBodyEl.removeEventListener('scroll', this.syncScroll('body')); } + } + }, { + key: "render", + value: function render() { + var _classNames, + _this2 = this, + _this$onSelectAll; + + var baseProps = extractBaseProps(this.props); + var _this$state = this.state, + init = _this$state.init, + prevPageInfo = _this$state.prevPageInfo; + var _this$props = this.props, + type = _this$props.type, + size = _this$props.size, + showHead = _this$props.showHead, + className = _this$props.className, + page = _this$props.page, + loading = _this$props.loading, + loaderSchema = _this$props.loaderSchema; + var schema = getSchema(this.props.schema, loading, loaderSchema); + var classes = classnames((_classNames = { + Grid: 'true' + }, _defineProperty$1(_classNames, "Grid--".concat(type), type), _defineProperty$1(_classNames, "Grid--".concat(size), size), _classNames), className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + className: classes + }, baseProps, { + ref: function ref(el) { + _this2.gridRef = el; + } + }), init && /*#__PURE__*/React.createElement(GridProvider, { + value: _objectSpread2(_objectSpread2({}, this.props), {}, { + ref: this.gridRef + }) + }, showHead && /*#__PURE__*/React.createElement(GridHead, { + schema: schema, + onSelectAll: (_this$onSelectAll = this.onSelectAll) === null || _this$onSelectAll === void 0 ? void 0 : _this$onSelectAll.bind(this), + onMenuChange: this.onMenuChange.bind(this), + onFilterChange: this.onFilterChange.bind(this), + updateColumnSchema: this.updateColumnSchema.bind(this), + reorderColumn: this.reorderColumn.bind(this) + }), /*#__PURE__*/React.createElement(GridBody, { + key: "".concat(page), + schema: schema, + prevPageInfo: prevPageInfo, + updatePrevPageInfo: this.updatePrevPageInfo.bind(this), + onSelect: this.onSelect.bind(this) + }))); + } + }]); + + return Grid; +}(React.Component); + +_defineProperty$1(Grid, "defaultProps", void 0); + +Grid.defaultProps = defaultProps$1; + +var renderTitle = function renderTitle(props) { + var tooltip = props.tooltip, + cellData = props.cellData; + var children = cellData.title; + + if (children !== undefined && children !== null) { + if (tooltip) { + return /*#__PURE__*/React.createElement(Tooltip, { + tooltip: children, + position: 'top-start', + triggerClass: "w-100 overflow-hidden" + }, /*#__PURE__*/React.createElement(Text, { + className: "w-100 ellipsis" + }, children)); + } + + return /*#__PURE__*/React.createElement(Text, { + className: "w-100 ellipsis" + }, children); + } + + return null; +}; + +var renderMetaList = function renderMetaList(props) { + var cellData = props.cellData; + var metaList = cellData.metaList; + + if (metaList) { + return /*#__PURE__*/React.createElement("div", { + className: "GridCell-metaList", + "data-test": "DesignSystem-GridCell-metaList" + }, metaList.map(function (list, index) { + return /*#__PURE__*/React.createElement(Text, { + key: index, + className: "ellipsis", + appearance: 'subtle', + size: "small" + }, list); + })); + } + + return null; +}; + +var renderAvatar = function renderAvatar(props) { + var cellData = props.cellData; + var firstName = cellData.firstName, + lastName = cellData.lastName, + title = cellData.title; + + if (firstName || lastName) { + return /*#__PURE__*/React.createElement(Avatar, { + className: "mr-5", + firstName: firstName, + lastName: lastName + }); + } + + if (title) { + return /*#__PURE__*/React.createElement(Avatar, { + className: "mr-5" + }, title); + } + + return null; +}; + +var renderIcon = function renderIcon(props) { + var cellData = props.cellData; + var title = cellData.title, + icon = cellData.icon; + var iconName = icon || title; - if (prevProps.monthNav !== this.props.monthNav) { - this.setState({ - monthNav: this.props.monthNav - }); - } + if (iconName) { + return /*#__PURE__*/React.createElement(Icon, { + name: iconName + }); + } - if (prevState.startDate !== this.state.startDate || prevState.endDate !== this.state.endDate) { - var _this$props4 = this.props, - onRangeChange = _this$props4.onRangeChange, - outputFormat = _this$props4.outputFormat; - var _this$state2 = this.state, - _startDate3 = _this$state2.startDate, - _endDate3 = _this$state2.endDate; + return null; +}; - var _this$getErrors2 = this.getErrors(_startDate3, _endDate3), - startError = _this$getErrors2.startError, - endError = _this$getErrors2.endError; +var renderStatusHint = function renderStatusHint(props) { + var cellData = props.cellData; + var statusAppearance = cellData.statusAppearance; + var children = cellData.title; - this.setState({ - startError: startError, - endError: endError - }); + if (children) { + return /*#__PURE__*/React.createElement(StatusHint, { + appearance: statusAppearance + }, children); + } - if (onRangeChange) { - var inRangeError = this.getInRangeError(); - var sValue = translateToString(outputFormat, _startDate3); - var eValue = translateToString(outputFormat, _endDate3); + return null; +}; - if (!inRangeError && !startError && !endError) { - onRangeChange(_startDate3, _endDate3, sValue, eValue); - } else { - if (!startError) onRangeChange(_startDate3, undefined, sValue, eValue);else if (!endError) onRangeChange(undefined, _endDate3, sValue, eValue);else onRangeChange(undefined, undefined, sValue, eValue); - } - } - } - } - }, { - key: "renderCalendar", - value: function renderCalendar() { - var _this$props5 = this.props; - _this$props5.startDate; - _this$props5.endDate; - _this$props5.yearNav; - _this$props5.monthNav; - _this$props5.open; - var inputFormat = _this$props5.inputFormat; - _this$props5.outputFormat; - _this$props5.startInputOptions; - _this$props5.endInputOptions; - var validators = _this$props5.validators; - _this$props5.withInput; - _this$props5.position; - var disabledBefore = _this$props5.disabledBefore, - disabledAfter = _this$props5.disabledAfter; - _this$props5.onRangeChange; - var rangeLimit = _this$props5.rangeLimit, - rest = _objectWithoutProperties$1(_this$props5, _excluded$3); +var GridCell = function GridCell(props) { + var size = props.size, + schema = props.schema, + loading = props.loading; + var data = !loading ? translateData(schema, props.data) : {}; + var name = schema.name, + _schema$cellType = schema.cellType, + cellType = _schema$cellType === void 0 ? 'DEFAULT' : _schema$cellType, + _schema$align = schema.align, + align = _schema$align === void 0 ? 'left' : _schema$align, + tooltip = schema.tooltip; + var cellData = data[name]; + var cellClass = classnames(_defineProperty$1({}, 'GridCell', true)); - var _this$state3 = this.state, - startDate = _this$state3.startDate, - endDate = _this$state3.endDate, - yearNav = _this$state3.yearNav, - monthNav = _this$state3.monthNav; - return /*#__PURE__*/React.createElement(Calendar, _extends$3({}, rest, { - monthsInView: this.monthsInView, - rangePicker: true, - startDate: convertToDate(startDate, inputFormat, validators), - endDate: convertToDate(endDate, inputFormat, validators), - disabledBefore: convertToDate(disabledBefore, inputFormat, validators), - disabledAfter: convertToDate(disabledAfter, inputFormat, validators), - onRangeChange: this.onRangeChangeHandler, - yearNav: yearNav, - monthNav: monthNav, - rangeLimit: rangeLimit + switch (cellType) { + case 'DEFAULT': + return /*#__PURE__*/React.createElement("div", { + className: "".concat(cellClass, " GridCell--align-").concat(align, " GridCell--default") + }, loading ? /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "medium", + "data-test": "DesignSystem-GridCell-placeHolder" + }) : renderTitle({ + tooltip: tooltip, + cellData: cellData })); - } - }, { - key: "render", - value: function render() { - var _classNames; - var _this$props6 = this.props, - withInput = _this$props6.withInput, - startInputOptions = _this$props6.startInputOptions, - endInputOptions = _this$props6.endInputOptions, - inputOptions = _this$props6.inputOptions, - inputFormat = _this$props6.inputFormat, - position = _this$props6.position, - validators = _this$props6.validators, - singleInput = _this$props6.singleInput, - contentAlign = _this$props6.contentAlign, - children = _this$props6.children; - var open = this.state.open; - var RangePickerClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'DateRangePicker', true), _defineProperty$2(_classNames, "DateRangePicker--".concat(contentAlign), contentAlign), _classNames)); + case 'WITH_META_LIST': + return /*#__PURE__*/React.createElement("div", { + className: "".concat(cellClass, " GridCell--metaList") + }, loading ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "medium", + "data-test": "DesignSystem-GridCell-withMetaList" + }), /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "large", + size: "xxs" + })) : /*#__PURE__*/React.createElement(React.Fragment, null, renderTitle({ + tooltip: tooltip, + cellData: cellData + }), renderMetaList({ + cellData: cellData + }))); - if (withInput) { - var trigger = singleInput ? /*#__PURE__*/React.createElement(SingleInputTrigger, { - inputFormat: inputFormat, - inputOptions: inputOptions, - validators: validators, - state: this.state, - setState: this.setState.bind(this) - }) : /*#__PURE__*/React.createElement(Trigger, { - inputFormat: inputFormat, - startInputOptions: startInputOptions, - endInputOptions: endInputOptions, - validators: validators, - state: this.state, - setState: this.setState.bind(this) + case 'AVATAR': + if (loading) { + return /*#__PURE__*/React.createElement(Placeholder, { + className: "GridCell--align-".concat(align), + imageSize: 'medium', + round: true }); - return /*#__PURE__*/React.createElement(Popover, { - trigger: trigger, - triggerClass: "w-100", - className: RangePickerClass, - position: position, - appendToBody: true, - open: open, - onToggle: this.onToggleHandler - }, children, this.renderCalendar()); } - return this.renderCalendar(); - } - }]); - - return DateRangePicker; -}(React.Component); // @ts-ignore + return /*#__PURE__*/React.createElement("div", { + className: "".concat(cellClass, " GridCell--align-").concat(align, " GridCell--avatar"), + "data-test": "DesignSystem-GridCell-avatar" + }, size !== 'tight' && renderAvatar({ + cellData: cellData + })); -_defineProperty$2(DateRangePicker, "defaultProps", _objectSpread2(_objectSpread2({}, Calendar.defaultProps), {}, { - children: /*#__PURE__*/React.createElement(React.Fragment, null), - contentAlign: 'left', - monthsInView: undefined, - position: 'bottom-start', - inputFormat: 'mm/dd/yyyy', - outputFormat: 'mm/dd/yyyy', - validators: [date$1], - inputOptions: { - label: 'Date' - }, - startInputOptions: { - label: 'Start Date' - }, - endInputOptions: { - label: 'End Date' - } -})); + case 'AVATAR_WITH_TEXT': + if (loading) { + return /*#__PURE__*/React.createElement(Placeholder, { + imageSize: 'medium', + round: true + }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { + className: "ml-3", + length: "medium" + })); + } -DateRangePicker.utils = { - getCurrentWeek: getCurrentWeek, - getPreviousWeek: getPreviousWeek, - getPreviousMonth: getPreviousMonth, - getPrevious90Days: getPrevious90Days, - getCustomDates: getCustomDates, - getCurrentYear: getCurrentYear, - getCurrentMonth: getCurrentMonth -}; + return /*#__PURE__*/React.createElement("div", { + className: "".concat(cellClass, " "), + "data-test": "DesignSystem-GridCell-avatarWithText" + }, size !== 'tight' && renderAvatar({ + cellData: cellData + }), renderTitle({ + tooltip: tooltip, + cellData: cellData + })); -var TabsWrapper = function TabsWrapper(props) { - var children = props.children, - onTabChange = props.onTabChange, - className = props.className; - var baseProps = extractBaseProps(props); - var tabs = Array.isArray(children) ? children : [children]; - var totalTabs = tabs.length; + case 'AVATAR_WITH_META_LIST': + if (loading) { + return /*#__PURE__*/React.createElement(Placeholder, { + imageSize: 'medium', + round: true + }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { + className: "ml-3", + length: "medium" + }), /*#__PURE__*/React.createElement(PlaceholderParagraph, { + className: "ml-3", + length: "large" + })); + } - var _React$useState = React.useState(props.active && props.active < totalTabs ? props.active : 0), - _React$useState2 = _slicedToArray(_React$useState, 2), - active = _React$useState2[0], - setActiveTab = _React$useState2[1]; + return /*#__PURE__*/React.createElement("div", { + className: "".concat(cellClass, " GridCell--avatarWithText"), + "data-test": "DesignSystem-GridCell-avatarWithMetaList" + }, size !== 'tight' && renderAvatar({ + cellData: cellData + }), /*#__PURE__*/React.createElement("div", { + className: "GridCell-metaListWrapper" + }, renderTitle({ + tooltip: tooltip, + cellData: cellData + }), renderMetaList({ + cellData: cellData + }))); - React.useEffect(function () { - setActiveTab(props.active && props.active < totalTabs ? props.active : 0); - }, [props.active]); - var wrapperClass = classnames(_defineProperty$2({}, 'TabsWrapper', true), className); + case 'ICON': + if (loading) { + return /*#__PURE__*/React.createElement(Placeholder, { + className: "GridCell--align-".concat(align), + imageSize: 'small', + round: true + }); + } - var tabClickHandler = function tabClickHandler(tabIndex) { - setActiveTab(tabIndex); - if (onTabChange) onTabChange(tabIndex); - }; + return /*#__PURE__*/React.createElement("div", { + className: "".concat(cellClass, " GridCell--align-").concat(align, " GridCell--icon"), + "data-test": "DesignSystem-GridCell-icon" + }, renderIcon({ + cellData: cellData + })); - var TabsHeader = tabs.map(function (child, index) { - var _classNames2; + case 'STATUS_HINT': + return /*#__PURE__*/React.createElement("div", { + className: "".concat(cellClass, " GridCell--align-").concat(align, " GridCell--statusHint") + }, loading ? /*#__PURE__*/React.createElement(Placeholder, { + className: "w-75 flex-grow-0", + imageSize: 'small', + round: true + }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "large" + })) : renderStatusHint({ + cellData: cellData + })); + } - var _child$props = child.props, - label = _child$props.label, - disabled = _child$props.disabled; - var tabHeaderClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Tab', true), _defineProperty$2(_classNames2, 'Tab--disabled', disabled), _defineProperty$2(_classNames2, 'Tab--active', !disabled && active === index), _classNames2)); - return /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-Tabs--Header", - key: index, - className: tabHeaderClass, - onClick: function onClick() { - return !disabled && tabClickHandler(index); - } - }, label); - }); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-TabsWrapper" - }, baseProps, { - className: wrapperClass - }), /*#__PURE__*/React.createElement("div", { - className: "TabsWrapper-header" - }, TabsHeader), /*#__PURE__*/React.createElement("div", { - className: "TabsWrapper-content", - "data-test": "DesignSystem-Tabs--Content" - }, tabs[active])); + return null; }; -TabsWrapper.displayName = 'TabsWrapper'; +GridCell.displayName = 'GridCell'; -var Tab = function Tab(props) { - var children = props.children; - return /*#__PURE__*/React.createElement(React.Fragment, null, children); -}; -Tab.displayName = 'Tab'; +var DraggableDropdown = function DraggableDropdown(props) { + var options = props.options, + onChange = props.onChange; -var Tabs = function Tabs(props) { - var _classNames; + var _React$useState = React.useState(false), + _React$useState2 = _slicedToArray(_React$useState, 2), + open = _React$useState2[0], + setOpen = _React$useState2[1]; - var tabs = props.tabs, - withSeparator = props.withSeparator, - onTabChange = props.onTabChange, - className = props.className; - var baseProps = extractBaseProps(props); - var totalTabs = tabs.length; + var _React$useState3 = React.useState(options), + _React$useState4 = _slicedToArray(_React$useState3, 2), + tempOptions = _React$useState4[0], + setTempOptions = _React$useState4[1]; - var _React$useState = React.useState(props.activeIndex && props.activeIndex < totalTabs ? props.activeIndex : 0), - _React$useState2 = _slicedToArray(_React$useState, 2), - activeIndex = _React$useState2[0], - setActiveTab = _React$useState2[1]; + var _React$useState5 = React.useState('var(--spacing-8)'), + _React$useState6 = _slicedToArray(_React$useState5, 2), + triggerWidth = _React$useState6[0], + setTriggerWidth = _React$useState6[1]; React.useEffect(function () { - if (props.activeIndex !== undefined && props.activeIndex < totalTabs) { - setActiveTab(props.activeIndex); - } - }, [props.activeIndex]); - var tabsClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Tabs', true), _defineProperty$2(_classNames, 'Tabs--withSeparator', withSeparator), _classNames), className); - - var getPillsClass = function getPillsClass(disabled) { - var _classNames2; + setTempOptions(options); + }, [open]); - return classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Tabs-pills', true), _defineProperty$2(_classNames2, 'Tabs-pills--disabled', disabled), _classNames2)); + var handleParentChange = function handleParentChange(e) { + setTempOptions(tempOptions.map(function (option) { + return _objectSpread2(_objectSpread2({}, option), {}, { + selected: e.target.checked + }); + })); }; - var tabClickHandler = function tabClickHandler(tabIndex, isKeyboard) { - if (props.activeIndex === undefined) { - var _tabRefs$tabIndex; - - setActiveTab(tabIndex); - if (!isKeyboard) (_tabRefs$tabIndex = tabRefs[tabIndex]) === null || _tabRefs$tabIndex === void 0 ? void 0 : _tabRefs$tabIndex.blur(); - } + var handleChildChange = function handleChildChange(e, index) { + var newOptions = _toConsumableArray(tempOptions); - if (onTabChange) onTabChange(tabIndex); + newOptions[index] = _objectSpread2(_objectSpread2({}, newOptions[index]), {}, { + selected: e.target.checked + }); + setTempOptions(newOptions); }; - var tabRefs = []; - - var tabKeyDownHandler = function tabKeyDownHandler(event, tabIndex) { - if (event.key === 'Enter') { - tabClickHandler(tabIndex, true); - } - - if (event.key === 'ArrowLeft' && tabIndex > 0) { - var prevElement = tabRefs[tabIndex - 1]; - prevElement === null || prevElement === void 0 ? void 0 : prevElement.focus(); - } - - if (event.key === 'ArrowRight' && tabIndex < tabs.length) { - var nextElement = tabRefs[tabIndex + 1]; - nextElement === null || nextElement === void 0 ? void 0 : nextElement.focus(); - } + var onToggleHandler = function onToggleHandler(newOpen) { + setOpen(newOpen); }; - var renderInfo = function renderInfo(tab, index) { - var count = tab.count, - icon = tab.icon, - disabled = tab.disabled; - - if (count !== undefined) { - return /*#__PURE__*/React.createElement(Pills, { - "data-test": "DesignSystem-Tabs--Pills", - className: getPillsClass(disabled), - appearance: activeIndex === index ? 'primary' : 'secondary' - }, count); - } - - if (icon) { - var iconAppearance = activeIndex === index ? 'info' : disabled ? 'disabled' : 'subtle'; - return /*#__PURE__*/React.createElement(Icon, { - "data-test": "DesignSystem-Tabs--Icon", - className: "mr-4", - name: icon, - appearance: iconAppearance - }); - } - - return null; + var onCancelHandler = function onCancelHandler() { + setOpen(false); }; - var renderTabs = function renderTabs() { - return tabs.map(function (tab, index) { - var _classNames3; - - var label = tab.label, - disabled = tab.disabled; - var textAppearance = activeIndex === index ? 'link' : disabled ? 'disabled' : 'subtle'; - var tabHeaderClass = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'Tab', true), _defineProperty$2(_classNames3, 'Tab--disabled', disabled), _defineProperty$2(_classNames3, 'Tab--active', !disabled && activeIndex === index), _classNames3)); - return /*#__PURE__*/React.createElement("div", { - ref: function ref(element) { - return element && !disabled && tabRefs.push(element); - }, - "data-test": "DesignSystem-Tabs--Tab", - key: index, - className: tabHeaderClass, - onClick: function onClick() { - return !disabled && tabClickHandler(index); - }, - onKeyDown: function onKeyDown(event) { - return tabKeyDownHandler(event, index); - }, - tabIndex: activeIndex === index ? 0 : -1 - }, renderInfo(tab, index), /*#__PURE__*/React.createElement(Text, { - "data-test": "DesignSystem-Tabs--Text", - appearance: textAppearance - }, label)); - }); + var onApplyHandler = function onApplyHandler() { + setOpen(false); + if (onChange) onChange(tempOptions); }; - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-Tabs" - }, baseProps, { - className: tabsClass - }), renderTabs()); -}; -Tabs.displayName = 'Tabs'; -Tabs.defaultProps = { - withSeparator: true + return /*#__PURE__*/React.createElement("div", { + className: "Dropdown" + }, /*#__PURE__*/React.createElement(Popover, { + open: open, + onToggle: onToggleHandler, + trigger: /*#__PURE__*/React.createElement(Button, { + type: "button", + ref: function ref(el) { + setTriggerWidth("".concat(el === null || el === void 0 ? void 0 : el.clientWidth, "px")); + }, + size: "tiny", + appearance: "transparent", + icon: "keyboard_arrow_down_filled", + iconAlign: "right" + }, "Showing ".concat(options.filter(function (option) { + return option.selected; + }).length, " of ").concat(options.length, " column").concat(getPluralSuffix(options.length))), + triggerClass: "w-100", + customStyle: { + width: triggerWidth + }, + className: "Header-draggableDropdown" + }, /*#__PURE__*/React.createElement("div", { + className: "Dropdown-wrapper" + }, /*#__PURE__*/React.createElement("div", { + className: "OptionWrapper" + }, /*#__PURE__*/React.createElement(Checkbox, { + className: "OptionCheckbox", + label: "Select All", + checked: tempOptions.every(function (option) { + return option.selected; + }), + indeterminate: tempOptions.some(function (option) { + return option.selected; + }) && tempOptions.some(function (option) { + return !option.selected; + }), + onChange: handleParentChange + })), tempOptions.map(function (option, index) { + return /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-Table-Header--draggableDropdownOption", + key: option.value, + className: "OptionWrapper d-flex flex-space-between align-items-center cursor-pointer", + draggable: true, + onDragStart: function onDragStart(e) { + e.dataTransfer.setData('index', "".concat(index)); + }, + onDragOver: function onDragOver(e) { + return e.preventDefault(); + }, + onDrop: function onDrop(e) { + var from = +e.dataTransfer.getData('index'); + var to = index; + if (from !== to) setTempOptions(moveToIndex(tempOptions, from, to)); + } + }, /*#__PURE__*/React.createElement(Checkbox, { + className: "OptionCheckbox", + name: option.value, + label: option.label, + checked: tempOptions[index].selected, + onChange: function onChange(e) { + return handleChildChange(e, index); + } + }), /*#__PURE__*/React.createElement(Icon, { + name: "drag_handle", + className: "mr-4" + })); + })), /*#__PURE__*/React.createElement("div", { + className: "Dropdown-buttonWrapper" + }, /*#__PURE__*/React.createElement(Button, { + type: "button", + className: "mr-4", + size: "tiny", + onClick: onCancelHandler + }, "Cancel"), /*#__PURE__*/React.createElement(Button, { + type: "button", + appearance: "primary", + size: "tiny", + onClick: onApplyHandler + }, "Apply")))); }; -var accepts = function accepts(file, acceptedFiles) { - if (file && acceptedFiles) { - var acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(','); - var fileName = file.name || ''; - var mimeType = (file.type || '').toLowerCase(); - var baseMimeType = mimeType.replace(/\/.*$/, ''); - return acceptedFilesArray.some(function (type) { - var validType = type.trim().toLowerCase(); +var Header = function Header(props) { + var _selectedRowsRef$curr; + + var loading = props.loading, + error = props.error, + data = props.data, + displayData = props.displayData, + schema = props.schema, + withSearch = props.withSearch, + showHead = props.showHead, + withPagination = props.withPagination, + page = props.page, + pageSize = props.pageSize, + withCheckbox = props.withCheckbox, + children = props.children, + updateSchema = props.updateSchema, + _props$filterList = props.filterList, + filterList = _props$filterList === void 0 ? {} : _props$filterList, + updateFilterList = props.updateFilterList, + _props$totalRecords = props.totalRecords, + totalRecords = _props$totalRecords === void 0 ? 0 : _props$totalRecords, + onSelectAll = props.onSelectAll, + searchPlaceholder = props.searchPlaceholder, + selectAll = props.selectAll, + searchTerm = props.searchTerm, + updateSearchTerm = props.updateSearchTerm, + globalActionRenderer = props.globalActionRenderer, + dynamicColumn = props.dynamicColumn, + allowSelectAll = props.allowSelectAll, + showFilters = props.showFilters, + customSelectionLabel = props.customSelectionLabel, + selectedRowsRef = props.selectedRowsRef, + selectedAllRef = props.selectedAllRef, + onClearSelection = props.onClearSelection, + onSelectAllRows = props.onSelectAllRows, + selectionActionRenderer = props.selectionActionRenderer, + uniqueColumnName = props.uniqueColumnName; + + var _React$useState = React.useState(false), + _React$useState2 = _slicedToArray(_React$useState, 2), + selectAllRecords = _React$useState2[0], + setSelectAllRecords = _React$useState2[1]; + + var _React$useState3 = React.useState(true), + _React$useState4 = _slicedToArray(_React$useState3, 2), + flag = _React$useState4[0], + setFlag = _React$useState4[1]; - if (validType.charAt(0) === '.') { - return fileName.toLowerCase().endsWith(validType); - } + var customLabel = customSelectionLabel ? customSelectionLabel : 'item'; + var selectedCount = data.filter(function (d) { + return d._selected; + }).length; + var startIndex = (page - 1) * pageSize + 1; + var endIndex = Math.min(page * pageSize, totalRecords); + var selectedRowsCount = (selectedAllRef === null || selectedAllRef === void 0 ? void 0 : selectedAllRef.current) === true ? totalRecords : (selectedRowsRef === null || selectedRowsRef === void 0 ? void 0 : (_selectedRowsRef$curr = selectedRowsRef.current) === null || _selectedRowsRef$curr === void 0 ? void 0 : _selectedRowsRef$curr.length) || 0; + var showSelectedRowLabel = withCheckbox && (selectedCount || selectedRowsCount > 0); - if (validType.endsWith('/*')) { - return baseMimeType === validType.replace(/\/.*$/, ''); - } + var _React$useState5 = React.useState(true), + _React$useState6 = _slicedToArray(_React$useState5, 2), + showSelectedLabel = _React$useState6[0], + setShowSelectedLabel = _React$useState6[1]; - return mimeType === validType; - }); - } + var _React$useState7 = React.useState(false), + _React$useState8 = _slicedToArray(_React$useState7, 2), + animateSelectedLabel = _React$useState8[0], + setAnimateSelectedLabel = _React$useState8[1]; - return true; -}; -var isPropagationStopped = function isPropagationStopped(event) { - if (typeof event.isPropagationStopped === 'function') { - return event.isPropagationStopped(); - } + var _React$useState9 = React.useState(false), + _React$useState10 = _slicedToArray(_React$useState9, 2), + animateUnSelectedLabel = _React$useState10[0], + setAnimateUnSelectedLabel = _React$useState10[1]; - if (typeof event.cancelBubble !== 'undefined') { - return event.cancelBubble; - } + React.useEffect(function () { + if (showSelectedRowLabel) { + setAnimateUnSelectedLabel(true); + setAnimateSelectedLabel(false); + } else { + setAnimateUnSelectedLabel(false); + setAnimateSelectedLabel(true); + } + }, [showSelectedRowLabel]); - return false; -}; -var isEvtWithFiles = function isEvtWithFiles(event) { - if (!event.dataTransfer) { - return !!event.target && !!event.target.files; - } + var onUnSelectAnimationEnd = function onUnSelectAnimationEnd() { + showSelectedRowLabel ? setShowSelectedLabel(true) : setShowSelectedLabel(false); + setAnimateSelectedLabel(true); + setAnimateUnSelectedLabel(false); + }; - return Array.prototype.some.call(event.dataTransfer.types, function (type) { - return type === 'Files' || type === 'application/x-moz-file'; - }); -}; -var onDocumentDragOver = function onDocumentDragOver(event) { - event.preventDefault(); -}; -var composeEventHandlers = function composeEventHandlers() { - for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) { - fns[_key] = arguments[_key]; - } + var onSelectAnimationEnd = function onSelectAnimationEnd() { + showSelectedRowLabel ? setShowSelectedLabel(true) : setShowSelectedLabel(false); + setAnimateSelectedLabel(false); + setAnimateUnSelectedLabel(true); + }; - return function (event) { - for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { - args[_key2 - 1] = arguments[_key2]; + var unselectedRowLabelClass = classnames({ + 'Table-Header-Label--hide': animateUnSelectedLabel && showSelectedRowLabel, + 'Table-Header-Label--show': animateUnSelectedLabel && !showSelectedRowLabel + }); + var selectedRowLabelClass = classnames({ + 'Table-Header-Label--hide': animateSelectedLabel && !showSelectedRowLabel, + 'Table-Header-Label--show': animateSelectedLabel && showSelectedRowLabel + }); + React.useEffect(function () { + setFlag(!flag); + }, [schema]); + React.useEffect(function () { + if (selectAll && selectAll.checked) { + if (onSelectAll) onSelectAll(true, selectAllRecords); } + }, [selectAllRecords]); + React.useEffect(function () { + if (selectAll && !selectAll.checked) setSelectAllRecords(false); + }, [selectAll]); + var filterSchema = schema.filter(function (s) { + return s.filters; + }); - return fns.some(function (fn) { - if (!isPropagationStopped(event) && fn) { - fn.apply(void 0, [event].concat(args)); - } + var onSearchChange = function onSearchChange(e) { + var value = e.target.value; - return isPropagationStopped(event); - }); + if (updateSearchTerm) { + updateSearchTerm(value); + } }; -}; -var reducer = function reducer(state, action) { - switch (action.type) { - case 'focus': - return _objectSpread2(_objectSpread2({}, state), {}, { - isFocused: true - }); - case 'blur': - return _objectSpread2(_objectSpread2({}, state), {}, { - isFocused: false - }); + var onFilterChange = function onFilterChange(name, filters) { + var newFilterList = _objectSpread2(_objectSpread2({}, filterList), {}, _defineProperty$1({}, name, filters)); - case 'openDialog': - return _objectSpread2(_objectSpread2({}, state), {}, { - isFileDialogActive: true - }); + if (updateFilterList) { + updateFilterList(newFilterList); + } + }; - case 'closeDialog': - return _objectSpread2(_objectSpread2({}, state), {}, { - isFileDialogActive: false - }); + var columnOptions = schema.map(function (s) { + return { + label: s.displayName, + value: s.name, + selected: !s.hidden + }; + }); - case 'setDraggedFiles': - /* eslint no-case-declarations: 0 */ - var isDragActive = action.isDragActive, - draggedFiles = action.draggedFiles; - return _objectSpread2(_objectSpread2({}, state), {}, { - draggedFiles: draggedFiles, - isDragActive: isDragActive - }); + var onDynamicColumnUpdate = function onDynamicColumnUpdate(options) { + var newSchema = options.map(function (option) { + return _objectSpread2(_objectSpread2({}, schema.find(function (colSchema) { + return colSchema.name === option.value; + })), {}, { + hidden: !option.selected + /* tslint:disable:no-object-literal-type-assertion */ - case 'setFiles': - return _objectSpread2(_objectSpread2({}, state), {}, { - acceptedFiles: action.acceptedFiles, - fileRejections: action.fileRejections }); + }); + /* tslint:enable:no-object-literal-type-assertion */ - case 'reset': - return _objectSpread2(_objectSpread2({}, state), {}, { - isFileDialogActive: false, - isDragActive: false, - draggedFiles: [], - acceptedFiles: [], - fileRejections: [] - }); + if (updateSchema) updateSchema(newSchema); + }; - default: - return state; - } -}; + var getUnSelectedRowLabel = function getUnSelectedRowLabel() { + if (error) { + return "Showing 0 ".concat(customLabel, "s"); + } else if (withPagination) { + return "Showing ".concat(startIndex, "-").concat(endIndex, " of ").concat(totalRecords, " ").concat(customLabel).concat(getPluralSuffix(totalRecords)); + } -var fileErrorMessages = { - FILE_INVALID_TYPE: 'File format not accepted', - FILE_TOO_LARGE: 'File is too large', - FILE_TOO_SMALL: 'File is too small', - TOO_MANY_FILES: 'Multiple files are not accepted' -}; + return "Showing ".concat(totalRecords, " ").concat(customLabel).concat(getPluralSuffix(totalRecords)); + }; -var isDefined = function isDefined(value) { - return value !== undefined && value !== null; -}; + var getSelectedRowLabel = function getSelectedRowLabel() { + if (selectedRowsCount > 0 && uniqueColumnName && withCheckbox) { + return "Selected ".concat(selectedRowsCount, " ").concat(customLabel).concat(getPluralSuffix(selectedRowsCount)); + } else if (selectedCount && !uniqueColumnName && withCheckbox) { + return "Selected ".concat(selectedCount, " ").concat(customLabel).concat(getPluralSuffix(selectedCount)); + } else if (withPagination) { + return "Showing ".concat(startIndex, "-").concat(endIndex, " of ").concat(totalRecords, " ").concat(customLabel).concat(getPluralSuffix(totalRecords)); + } -var getInvalidTypeRejectionErr = function getInvalidTypeRejectionErr(accept) { - var updatedAccept = Array.isArray(accept) && accept.length === 1 ? accept[0] : accept; - var messageSuffix = Array.isArray(updatedAccept) ? "one of ".concat(updatedAccept.join(', ')) : updatedAccept; - return { - type: 'FILE_INVALID_TYPE', - message: "File type must be ".concat(messageSuffix) - }; -}; -var getTooLargeRejectionErr = function getTooLargeRejectionErr(maxSize) { - return { - type: 'FILE_TOO_LARGE', - message: "File is larger than ".concat(maxSize, " bytes") - }; -}; -var getTooSmallRejectionErr = function getTooSmallRejectionErr(minSize) { - return { - type: 'FILE_TOO_SMALL', - message: "File is smaller than ".concat(minSize, " bytes") + return "Showing ".concat(totalRecords, " ").concat(customLabel).concat(getPluralSuffix(totalRecords)); }; + + return /*#__PURE__*/React.createElement("div", { + className: "Header" + }, /*#__PURE__*/React.createElement("div", { + className: "Header-content Header-content--top" + }, /*#__PURE__*/React.createElement("div", { + className: "d-flex w-100" + }, withSearch && /*#__PURE__*/React.createElement("div", { + className: "Header-search" + }, /*#__PURE__*/React.createElement(Input, { + "data-test": "DesignSystem-Table-Header--withSearch", + name: "GridHeader-search", + icon: "search", + placeholder: searchPlaceholder, + onChange: onSearchChange, + value: searchTerm, + onClear: function onClear() { + return updateSearchTerm && updateSearchTerm(''); + }, + disabled: loading && !hasSchema(schema), + autoComplete: "off" + })), showFilters && filterSchema.length > 0 && /*#__PURE__*/React.createElement("div", { + className: "Header-dropdown" + }, /*#__PURE__*/React.createElement("div", { + className: "Header-filters" + }, filterSchema.map(function (s) { + var name = s.name, + displayName = s.displayName, + filters = s.filters; + var filterOptions = filters ? filters.map(function (f) { + return _objectSpread2(_objectSpread2({}, f), {}, { + selected: filterList[name] && filterList[name].findIndex(function (fl) { + return fl === f.value; + }) !== -1 + }); + }) : []; + return /*#__PURE__*/React.createElement(Dropdown, { + key: name, + withCheckbox: true, + showApplyButton: true, + inlineLabel: displayName, + icon: 'filter_list', + options: filterOptions, + onChange: function onChange(selected) { + return onFilterChange(name, selected); + } + }); + }))), children && /*#__PURE__*/React.createElement("div", { + className: "Header-actions" + }, children)), globalActionRenderer && /*#__PURE__*/React.createElement("div", { + className: "Header-global-actions" + }, globalActionRenderer(displayData))), /*#__PURE__*/React.createElement("div", { + className: "Header-content Header-content--bottom" + }, /*#__PURE__*/React.createElement("div", { + className: "Header-label" + }, !showHead && withCheckbox && !loading && /*#__PURE__*/React.createElement(Checkbox, _extends$2({}, selectAll, { + onChange: function onChange(event) { + if (onSelectAll) onSelectAll(event.target.checked); + } + })), loading ? /*#__PURE__*/React.createElement(Placeholder, { + withImage: !showHead && withCheckbox + }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: 'small', + size: 's' + })) : /*#__PURE__*/React.createElement(React.Fragment, null, showSelectedLabel ? /*#__PURE__*/React.createElement("span", { + className: selectedRowLabelClass, + onAnimationEnd: onSelectAnimationEnd + }, /*#__PURE__*/React.createElement(Label, null, getSelectedRowLabel())) : /*#__PURE__*/React.createElement("span", { + className: unselectedRowLabelClass, + onAnimationEnd: onUnSelectAnimationEnd + }, /*#__PURE__*/React.createElement(Label, null, getUnSelectedRowLabel())), selectedRowsCount > 0 && allowSelectAll && showSelectedLabel && /*#__PURE__*/React.createElement("div", { + className: selectedRowLabelClass + }, /*#__PURE__*/React.createElement("div", { + className: "ml-4 d-flex" + }, /*#__PURE__*/React.createElement(Button, { + "data-test": "DesignSystem-Table-Header--selectAllItemsButton", + size: "tiny", + disabled: selectedRowsCount === totalRecords, + onClick: onSelectAllRows + }, "Select ".concat(totalRecords, " ").concat(customLabel, "s")), /*#__PURE__*/React.createElement(Button, { + "data-test": "DesignSystem-Table-Header--clearSelectionItemsButton", + size: "tiny", + className: "ml-4", + onClick: onClearSelection + }, "Clear Selection"), selectionActionRenderer && /*#__PURE__*/React.createElement(Divider, { + vertical: true, + className: "mx-4 Table-Header--Divider" + }))), selectionActionRenderer && selectedRowsCount > 0 && showSelectedLabel && /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-Table-Header--ActionRenderer", + className: selectedRowLabelClass + }, selectionActionRenderer(selectedRowsRef === null || selectedRowsRef === void 0 ? void 0 : selectedRowsRef.current, selectedAllRef === null || selectedAllRef === void 0 ? void 0 : selectedAllRef.current)))), dynamicColumn && /*#__PURE__*/React.createElement("div", { + className: "Header-hideColumns" + }, /*#__PURE__*/React.createElement(DraggableDropdown, { + options: columnOptions, + onChange: onDynamicColumnUpdate + })))); }; -var fileAccepted = function fileAccepted(file, accept) { - var isAcceptable = file.type === 'application/x-moz-file' || accepts(file, accept); - return [isAcceptable, isAcceptable ? null : getInvalidTypeRejectionErr(accept)]; +Header.defaultProps = { + schema: [], + data: [], + searchPlaceholder: 'Search', + dynamicColumn: true, + showFilters: true }; -var fileMatchSize = function fileMatchSize(file, minSize, maxSize) { - if (isDefined(file.size)) { - if (isDefined(minSize) && isDefined(maxSize)) { - if (file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)]; - if (file.size < minSize) return [false, getTooSmallRejectionErr(minSize)]; - } else if (isDefined(minSize) && file.size < minSize) { - return [false, getTooSmallRejectionErr(minSize)]; - } else if (isDefined(maxSize) && file.size > maxSize) { - return [false, getTooLargeRejectionErr(maxSize)]; - } - } - return [true, null]; +var isElementPresent = function isElementPresent(list, uniqueColumnName, value) { + var arr = list === null || list === void 0 ? void 0 : list.filter(function (item) { + return item[uniqueColumnName] === value; + }); + return arr.length > 0; }; -var getFileError = function getFileError(options) { - var files = options.files, - accept = options.accept, - minSize = options.minSize, - maxSize = options.maxSize, - multiple = options.multiple; - - if (!multiple && files.length > 1) { - return 'TOO_MANY_FILES'; - } - - var typeError = files.every(function (file) { - var _fileAccepted = fileAccepted(file, accept), - _fileAccepted2 = _slicedToArray(_fileAccepted, 1), - accepted = _fileAccepted2[0]; - return !accepted; - }); - var sizeError = files.every(function (file) { - var _fileMatchSize = fileMatchSize(file, minSize, maxSize), - _fileMatchSize2 = _slicedToArray(_fileMatchSize, 1), - sizeMatch = _fileMatchSize2[0]; +var getUpdatedData = function getUpdatedData(data, selectedList, uniqueColumnName, isCancelSelection, isSelectAll) { + var updatedData = data.map(function (item) { + if (isSelectAll || item._selected && !isCancelSelection || uniqueColumnName && item[uniqueColumnName] && selectedList && isElementPresent(selectedList, uniqueColumnName, item[uniqueColumnName]) && !isCancelSelection) { + item._selected = true; + } else if (isCancelSelection) { + item._selected = false; + } else { + item._selected = false; + } - return !sizeMatch; + return item; }); - return typeError ? 'FILE_INVALID_TYPE' : sizeError ? 'FILE_TOO_LARGE' : ''; + return updatedData; }; -var allFilesAccepted = function allFilesAccepted(options) { - var files = options.files, - accept = options.accept, - minSize = options.minSize, - maxSize = options.maxSize, - multiple = options.multiple; - if (!multiple && files.length > 1) { - return false; - } - - return files.every(function (file) { - var _fileAccepted3 = fileAccepted(file, accept), - _fileAccepted4 = _slicedToArray(_fileAccepted3, 1), - accepted = _fileAccepted4[0]; +var uniqueByKey = function uniqueByKey(arr, key) { + var list = new Set(); + return arr.filter(function (obj) { + var value = obj[key]; - var _fileMatchSize3 = fileMatchSize(file, minSize, maxSize), - _fileMatchSize4 = _slicedToArray(_fileMatchSize3, 1), - sizeMatch = _fileMatchSize4[0]; - - return accepted && sizeMatch; + if (list.has(value)) { + return false; + } else { + list.add(value); + return true; + } }); }; -var COMMON_MIME_TYPES = new Map([['avi', 'video/avi'], ['gif', 'image/gif'], ['ico', 'image/x-icon'], ['jpeg', 'image/jpeg'], ['jpg', 'image/jpeg'], ['mkv', 'video/x-matroska'], ['mov', 'video/quicktime'], ['mp4', 'video/mp4'], ['pdf', 'application/pdf'], ['png', 'image/png'], ['zip', 'application/zip'], ['doc', 'application/msword'], ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document']]); -var FILES_TO_IGNORE = ['.DS_Store', 'Thumbs.db']; -function fromEvent(_x) { - return _fromEvent.apply(this, arguments); -} - -function _fromEvent() { - _fromEvent = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(evt) { - return regeneratorRuntime.wrap(function _callee2$(_context2) { - while (1) { - switch (_context2.prev = _context2.next) { - case 0: - return _context2.abrupt("return", isDragEvt(evt) && evt.dataTransfer ? getDataTransferFiles(evt.dataTransfer, evt.type) : getInputFiles(evt)); - - case 1: - case "end": - return _context2.stop(); - } - } - }, _callee2); - })); - return _fromEvent.apply(this, arguments); -} - -function isDragEvt(value) { - return !!value.dataTransfer; -} - -function toFileWithPath(file, path) { - var f = withMimeType(file); - - if (typeof f.path !== 'string') { - var _ref = file, - webkitRelativePath = _ref.webkitRelativePath; - Object.defineProperty(f, 'path', { - value: typeof path === 'string' ? path : typeof webkitRelativePath === 'string' && webkitRelativePath.length > 0 ? webkitRelativePath : file.name, - writable: false, - configurable: false, - enumerable: true - }); +var removeDuplicate = function removeDuplicate(data, uniqueColumnName) { + if (uniqueColumnName) { + return uniqueByKey(data, uniqueColumnName); } - return f; -} - -function withMimeType(file) { - var name = file.name; - var hasExtension = name && name.lastIndexOf('.') !== -1; - - if (hasExtension && !file.type) { - var ext = name.split('.').pop().toLowerCase(); - var type = COMMON_MIME_TYPES.get(ext); + return data; +}; - if (type) { - Object.defineProperty(file, 'type', { - value: type, - writable: false, - configurable: false, - enumerable: true - }); - } - } +var _excluded$l = ["children"]; - return file; -} +var defaultErrorTemplate = function defaultErrorTemplate(props) { + var _props$errorType = props.errorType, + errorType = _props$errorType === void 0 ? 'DEFAULT' : _props$errorType; + var errorMessages = { + FAILED_TO_FETCH: 'Failed to fetch data', + NO_RECORDS_FOUND: 'No results found', + DEFAULT: 'No results found' + }; + return /*#__PURE__*/React.createElement(Heading, null, errorMessages[errorType]); +}; -function getInputFiles(evt) { - var files = isInput(evt.target) ? evt.target.files ? fromList(evt.target.files) : [] : []; - return files.map(function (file) { - return toFileWithPath(file); - }); -} +var defaultProps = { + type: 'data', + size: 'standard', + showHead: true, + showMenu: true, + multipleSorting: true, + headerOptions: {}, + withPagination: true, + paginationType: 'jump', + page: 1, + pageSize: 15, + draggable: true, + data: [], + displayData: [], + schema: [], + loading: false, + error: false, + loaderSchema: [], + sortingList: [], + filterList: {}, + filterPosition: 'GRID', + searchDebounceDuration: 750, + pageJumpDebounceDuration: 750, + errorTemplate: defaultErrorTemplate +}; +/** + * ###Note: + * 1. Sync Table: + * - Manually toggle loading/error state to update data, schema. + * 2. Async Table: + * - fetchData return: + * - Promise resolve with no records: + * error: true, errorType: 'NO\_RECORDS\_FOUND' + * - Promise reject: + * error: true, errorType: 'FAILED\_TO\_FETCH' + * 3. Default errorTemplate: + * + *
+ * (props) => {
+ *      const { errorType = 'DEFAULT' } = props;
+ *      const errorMessages = {
+ *        'FAILED\_TO\_FETCH': 'Failed to fetch data',
+ *        'NO\_RECORDS\_FOUND': 'No results found',
+ *        'DEFAULT': 'No results found'
+ *      }
+ *      return(
+ *        \{errorMessages[errorType]}\
+ *      );
+ * }
+ * 
+ */ -function isInput(value) { - return value !== null; -} +var Table = /*#__PURE__*/function (_React$Component) { + _inherits(Table, _React$Component); -function getDataTransferFiles(_x2, _x3) { - return _getDataTransferFiles.apply(this, arguments); -} + var _super = _createSuper(Table); -function _getDataTransferFiles() { - _getDataTransferFiles = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3(dt, type) { - var items, files; - return regeneratorRuntime.wrap(function _callee3$(_context3) { - while (1) { - switch (_context3.prev = _context3.next) { - case 0: - if (!dt.items) { - _context3.next = 8; - break; - } + function Table(props) { + var _this; - items = fromList(dt.items).filter(function (item) { - return item.kind === 'file'; - }); + _classCallCheck(this, Table); - if (!(type !== 'drop')) { - _context3.next = 4; - break; - } + _this = _super.call(this, props); - return _context3.abrupt("return", items); + _defineProperty$1(_assertThisInitialized$1(_this), "debounceUpdate", void 0); - case 4: - _context3.next = 6; - return Promise.all(items.map(toFilePromises)); + _defineProperty$1(_assertThisInitialized$1(_this), "selectedRowsRef", /*#__PURE__*/React.createRef()); - case 6: - files = _context3.sent; - return _context3.abrupt("return", noIgnoredFiles(flatten(files))); + _defineProperty$1(_assertThisInitialized$1(_this), "clearSelectionRef", /*#__PURE__*/React.createRef()); - case 8: - return _context3.abrupt("return", noIgnoredFiles(fromList(dt.files).map(function (file) { - return toFileWithPath(file); - }))); + _defineProperty$1(_assertThisInitialized$1(_this), "selectAllRef", /*#__PURE__*/React.createRef()); - case 9: - case "end": - return _context3.stop(); - } + _defineProperty$1(_assertThisInitialized$1(_this), "updateData", function (searchUpdate) { + if (_this.state.async) { + _this.setState({ + loading: true + }); } - }, _callee3); - })); - return _getDataTransferFiles.apply(this, arguments); -} - -function noIgnoredFiles(files) { - return files.filter(function (file) { - return FILES_TO_IGNORE.indexOf(file.name) === -1; - }); -} -function fromList(items) { - var files = []; // tslint:disable: prefer-for-of - - for (var i = 0; i < items.length; i++) { - var file = items[i]; - files.push(file); - } + if (searchUpdate) { + _this.debounceUpdate(); + } else { + _this.updateDataFn(); + } + }); - return files; -} + _defineProperty$1(_assertThisInitialized$1(_this), "updateDataFn", function () { + var _this$props = _this.props, + fetchData = _this$props.fetchData, + pageSize = _this$props.pageSize, + withPagination = _this$props.withPagination, + dataProp = _this$props.data, + onSearch = _this$props.onSearch, + uniqueColumnName = _this$props.uniqueColumnName; + var _this$state = _this.state, + async = _this$state.async, + page = _this$state.page, + sortingList = _this$state.sortingList, + filterList = _this$state.filterList, + searchTerm = _this$state.searchTerm; -function toFilePromises(item) { - if (typeof item.webkitGetAsEntry !== 'function') { - return fromDataTransferItem(item); - } + _this.onSelect(-1, false); - var entry = item.webkitGetAsEntry(); + var opts = { + page: page, + pageSize: pageSize, + sortingList: sortingList, + filterList: filterList, + searchTerm: searchTerm + }; - if (entry && entry.isDirectory) { - return fromDirEntry(entry); - } + if (!_this.props.withPagination) { + delete opts.page; + delete opts.pageSize; + } - return fromDataTransferItem(item); -} + if (async) { + if (fetchData) { + fetchData(opts).then(function (res) { + if (!res.searchTerm || res.searchTerm && res.searchTerm === _this.state.searchTerm) { + var _data2 = res.data; + var dataReplica = JSON.parse(JSON.stringify(_data2)); + var schema = _this.state.schema.length ? _this.state.schema : res.schema; -function flatten(items) { - return items.reduce(function (acc, files) { - return [].concat(_toConsumableArray(acc), _toConsumableArray(Array.isArray(files) ? flatten(files) : [files])); - }, []); -} + var preSelectedRows = _data2.filter(function (item) { + return item._selected; + }); -function fromDataTransferItem(item) { - var file = item.getAsFile(); + if (_this.clearSelectionRef.current) { + _this.selectedRowsRef.current = []; + } else { + _this.selectedRowsRef.current = _this.selectedRowsRef.current ? removeDuplicate([].concat(_toConsumableArray(_this.selectedRowsRef.current), _toConsumableArray(preSelectedRows)), uniqueColumnName) : removeDuplicate(_toConsumableArray(preSelectedRows), uniqueColumnName); + } - if (!file) { - return Promise.reject("".concat(item, " is not a File")); - } + var selectedData = getUpdatedData(dataReplica, _this.selectedRowsRef.current, uniqueColumnName, _this.clearSelectionRef.current, _this.selectAllRef.current); - var fwp = toFileWithPath(file); - return Promise.resolve(fwp); -} + _this.setState({ + data: selectedData, + displayData: _data2, + schema: schema, + selectAll: getSelectAll(selectedData, _this.props.selectDisabledRow, _this.clearSelectionRef.current), + totalRecords: res.count, + loading: false, + error: !_data2.length, + errorType: 'NO_RECORDS_FOUND' + }); + } + })["catch"](function () { + _this.setState({ + loading: false, + error: true, + errorType: 'FAILED_TO_FETCH' + }); + }); + } + } else { + var schema = _this.state.schema; + var filteredData = filterData(schema, dataProp, filterList); + var searchedData = onSearch && opts.searchTerm !== undefined ? onSearch(filteredData, opts.searchTerm) : filteredData; + var sortedData = sortData(schema, searchedData, sortingList); + var renderedData = sortedData; + var totalRecords = sortedData.length; -function fromEntry(_x4) { - return _fromEntry.apply(this, arguments); -} + if (withPagination && page && pageSize) { + renderedData = paginateData(renderedData, page, pageSize); + } -function _fromEntry() { - _fromEntry = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4(entry) { - return regeneratorRuntime.wrap(function _callee4$(_context4) { - while (1) { - switch (_context4.prev = _context4.next) { - case 0: - return _context4.abrupt("return", entry.isDirectory ? fromDirEntry(entry) : fromFileEntry(entry)); + var renderedSchema = _this.state.schema.length ? _this.state.schema : schema; + var preSelectedRows = renderedData.filter(function (item) { + return item._selected; + }); + var renderedDataReplica = JSON.parse(JSON.stringify(renderedData)); - case 1: - case "end": - return _context4.stop(); + if (_this.clearSelectionRef.current) { + _this.selectedRowsRef.current = []; + } else { + _this.selectedRowsRef.current = _this.selectedRowsRef.current ? removeDuplicate([].concat(_toConsumableArray(_this.selectedRowsRef.current), _toConsumableArray(preSelectedRows)), uniqueColumnName) : removeDuplicate(_toConsumableArray(preSelectedRows), uniqueColumnName); } - } - }, _callee4); - })); - return _fromEntry.apply(this, arguments); -} -function fromDirEntry(entry) { - var reader = entry.createReader(); - return new Promise(function (resolve, reject) { - var entries = []; + var selectedData = getUpdatedData(renderedDataReplica, _this.selectedRowsRef.current, uniqueColumnName, _this.clearSelectionRef.current, _this.selectAllRef.current); - function readEntries() { - reader.readEntries( /*#__PURE__*/function () { - var _ref2 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(batch) { - var files, items; - return regeneratorRuntime.wrap(function _callee$(_context) { - while (1) { - switch (_context.prev = _context.next) { - case 0: - if (batch.length) { - _context.next = 13; - break; - } + _this.setState({ + totalRecords: totalRecords, + error: !renderedData.length, + errorType: 'NO_RECORDS_FOUND', + selectAll: getSelectAll(renderedData, _this.props.selectDisabledRow, _this.clearSelectionRef.current), + schema: renderedSchema, + displayData: sortedData, + data: selectedData + }); + } + }); - _context.prev = 1; - _context.next = 4; - return Promise.all(entries); + _defineProperty$1(_assertThisInitialized$1(_this), "onSelect", function (rowIndexes, selected) { + var data = _this.state.data; + var _this$props2 = _this.props, + onSelect = _this$props2.onSelect, + uniqueColumnName = _this$props2.uniqueColumnName; - case 4: - files = _context.sent; - resolve(files); - _context.next = 11; - break; + if (_this.selectAllRef.current && rowIndexes !== -1 && !selected) { + _this.selectAllRef.current = false; + _this.selectedRowsRef.current = []; - case 8: - _context.prev = 8; - _context.t0 = _context["catch"](1); - reject(_context.t0); + var _indexes = Array.from({ + length: data.length + }, function (_, i) { + return i; + }); - case 11: - _context.next = 16; - break; + var _newData = updateBatchData(data, _indexes, { + _selected: false + }, _this.props.selectDisabledRow); - case 13: - items = Promise.all(batch.map(fromEntry)); - entries.push(items); // Continue reading + _this.setState({ + data: _newData, + selectAll: { + checked: false, + indeterminate: false + } + }); - readEntries(); + if (onSelect) { + if (_this.props.uniqueColumnName) { + onSelect(_indexes, selected, _this.selectedRowsRef.current, _this.selectAllRef.current); + } else { + // To avoid breaking the current selection flow + onSelect(_indexes, selected, rowIndexes === -1 ? [] : _newData.filter(function (d) { + return d._selected; + })); + } + } - case 16: - case "end": - return _context.stop(); - } - } - }, _callee, null, [[1, 8]]); - })); + return; + } - return function (_x5) { - return _ref2.apply(this, arguments); - }; - }(), function (err) { - reject(err); - }); - } + var indexes = [rowIndexes]; + var rowData = data[rowIndexes]; + var selectedItemList = rowIndexes === -1 ? [] : [rowData]; + var newData = data; - readEntries(); - }); -} + if (rowIndexes >= 0) { + newData = updateBatchData(data, indexes, { + _selected: selected + }, _this.props.selectDisabledRow); -function fromFileEntry(_x6) { - return _fromFileEntry.apply(this, arguments); -} + _this.resetClearSelection(); -function _fromFileEntry() { - _fromFileEntry = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee5(entry) { - return regeneratorRuntime.wrap(function _callee5$(_context5) { - while (1) { - switch (_context5.prev = _context5.next) { - case 0: - return _context5.abrupt("return", new Promise(function (resolve, reject) { - entry.file(function (file) { - var fwp = toFileWithPath(file, entry.fullPath); - resolve(fwp); - }, function (err) { - reject(err); - }); - })); + _this.setState({ + data: newData, + selectAll: getSelectAll(newData, _this.props.selectDisabledRow, _this.clearSelectionRef.current) + }); - case 1: - case "end": - return _context5.stop(); + if (_this.selectedRowsRef.current && selected) { + selectedItemList = [_objectSpread2(_objectSpread2({}, rowData), {}, { + _selected: selected + })].concat(_toConsumableArray(_this.selectedRowsRef.current)); } - } - }, _callee5); - })); - return _fromFileEntry.apply(this, arguments); -} -var _excluded$2 = ["refKey", "onKeyDown", "onFocus", "onBlur", "onClick", "onDragEnterCallback", "onDragOverCallback", "onDragLeaveCallback", "onDropCallback"], - _excluded2 = ["refKey", "onChange", "onClick"]; -var initialState = { - isFocused: false, - isFileDialogActive: false, - isDragActive: false, - isDragAccept: false, - isDragReject: false, - draggedFiles: [], - acceptedFiles: [], - fileRejections: [] -}; -var DropzoneBase = function DropzoneBase(props) { - var accept = props.accept, - disabled = props.disabled, - maxSize = props.maxSize, - minSize = props.minSize, - multiple = props.multiple, - onDragEnter = props.onDragEnter, - onDragLeave = props.onDragLeave, - onDragOver = props.onDragOver, - onDrop = props.onDrop, - onDropAccepted = props.onDropAccepted, - onDropRejected = props.onDropRejected, - onFileDialogCancel = props.onFileDialogCancel, - getFilesFromEvent = props.getFilesFromEvent, - preventDropOnDocument = props.preventDropOnDocument, - validator = props.validator; - var rootRef = useRef(null); - var inputRef = useRef(null); + if (!selected && uniqueColumnName) { + selectedItemList = _this.selectedRowsRef.current.filter(function (item) { + return item[uniqueColumnName] !== rowData[uniqueColumnName]; + }); + } - var _useReducer = useReducer(reducer, initialState), - _useReducer2 = _slicedToArray(_useReducer, 2), - state = _useReducer2[0], - dispatch = _useReducer2[1]; + _this.selectedRowsRef.current = removeDuplicate(selectedItemList, uniqueColumnName); + } else if (rowIndexes === -1 && _this.selectedRowsRef.current) { + selectedItemList = _this.selectedRowsRef.current; + } - var isFocused = state.isFocused, - isFileDialogActive = state.isFileDialogActive, - draggedFiles = state.draggedFiles; - var openFileDialog = useCallback(function () { - if (inputRef.current) { - dispatch({ - type: 'openDialog' - }); // @ts-ignore + if (onSelect) { + if (_this.props.uniqueColumnName) { + var _selectedItemList; - inputRef.current.value = null; // @ts-ignore + onSelect(indexes, selected, rowIndexes === -1 && ((_selectedItemList = selectedItemList) === null || _selectedItemList === void 0 ? void 0 : _selectedItemList.length) === 0 ? [] : _this.selectedRowsRef.current, _this.selectAllRef.current); + } else { + // To avoid breaking the current selection flow + onSelect(indexes, selected, rowIndexes === -1 ? [] : newData.filter(function (d) { + return d._selected; + })); + } + } + }); - inputRef.current.click(); - } - }, [dispatch]); + _defineProperty$1(_assertThisInitialized$1(_this), "onSelectAll", function (selected, selectAll, headerCheckbox) { + var _this$props3 = _this.props, + onSelect = _this$props3.onSelect, + uniqueColumnName = _this$props3.uniqueColumnName; + var data = _this.state.data; + var indexes = Array.from({ + length: data.length + }, function (_, i) { + return i; + }); + var newData = updateBatchData(data, indexes, { + _selected: selected + }, _this.props.selectDisabledRow); + var selectedIndex = []; + newData.forEach(function (item, key) { + if (item._selected) { + selectedIndex.push(key); + } + }); + var selectedData = []; - var onWindowFocus = function onWindowFocus() { - if (isFileDialogActive) { - setTimeout(function () { - if (inputRef.current) { - // @ts-ignore - var _files = inputRef.current.files; + if (selected) { + _this.resetClearSelection(); - if (!_files.length) { - dispatch({ - type: 'closeDialog' - }); + selectedData = selectAll === undefined ? [].concat(_toConsumableArray(_this.selectedRowsRef.current || []), _toConsumableArray(newData.filter(function (d) { + return d._selected; + }))) : _this.selectedRowsRef.current; + } else if (!selected && headerCheckbox && uniqueColumnName) { + _this.selectAllRef.current = false; + _this.selectedRowsRef.current = [].concat(_toConsumableArray(_this.selectedRowsRef.current || []), _toConsumableArray(newData)); + _this.selectedRowsRef.current = _this.selectedRowsRef.current.filter(function (item1) { + return !newData.some(function (item2) { + return item1[uniqueColumnName] === item2[uniqueColumnName]; + }); + }); + } else { + _this.selectedRowsRef.current = []; + _this.selectAllRef.current = false; + } - if (typeof onFileDialogCancel === 'function') { - onFileDialogCancel(); - } + if (!(headerCheckbox && !selected)) { + _this.selectedRowsRef.current = removeDuplicate(selectedData, uniqueColumnName); + } + + if (onSelect) { + if (_this.props.uniqueColumnName) { + if (headerCheckbox && !selected) { + onSelect(selectedIndex, selected, removeDuplicate(_this.selectedRowsRef.current, uniqueColumnName), _this.selectAllRef.current); + } else { + onSelect(selectedIndex, selected, removeDuplicate(selectedData, uniqueColumnName), _this.selectAllRef.current); } + } else { + onSelect(selectedIndex, selected, newData.filter(function (d) { + return d._selected; + }), selectAll); } - }, 300); - } - }; + } - useEffect$2(function () { - window.addEventListener('focus', onWindowFocus, false); - return function () { - window.removeEventListener('focus', onWindowFocus, false); - }; - }, [inputRef, isFileDialogActive, onFileDialogCancel]); // Cb to open the file dialog when SPACE/ENTER occurs on the dropzone + _this.setState({ + data: newData, + selectAll: getSelectAll(newData, _this.props.selectDisabledRow) + }); + }); - var onKeyDownCb = useCallback(function (event) { - // @ts-ignore - if (!rootRef.current || !rootRef.current.isEqualNode(event.target)) { - return; - } + _defineProperty$1(_assertThisInitialized$1(_this), "onPageChange", function (newPage) { + _this.setState({ + page: newPage + }); + }); - if (event.keyCode === 32 || event.keyCode === 13) { - event.preventDefault(); - openFileDialog(); - } - }, [rootRef, inputRef]); // Update focus state for the dropzone + _defineProperty$1(_assertThisInitialized$1(_this), "updateSchema", function (newSchema) { + _this.setState({ + schema: newSchema + }); + }); - var onFocusCb = useCallback(function () { - dispatch({ - type: 'focus' + _defineProperty$1(_assertThisInitialized$1(_this), "updateSortingList", function (newSortingList) { + var multipleSorting = _this.props.multipleSorting; + + _this.setState({ + sortingList: multipleSorting ? _toConsumableArray(newSortingList) : newSortingList.slice(-1), + page: 1 + }); }); - }, []); - var onBlurCb = useCallback(function () { - dispatch({ - type: 'blur' + + _defineProperty$1(_assertThisInitialized$1(_this), "updateFilterList", function (newFilterList) { + _this.setState({ + filterList: newFilterList, + page: 1 + }); }); - }, []); - var dragTargetsRef = useRef([]); - var onDocumentDrop = function onDocumentDrop(event) { - // @ts-ignore - if (rootRef.current && rootRef.current.contains(event.target)) { - return; - } + _defineProperty$1(_assertThisInitialized$1(_this), "updateSearchTerm", function (newSearchTerm) { + _this.setState({ + searchTerm: newSearchTerm, + page: 1 + }); + }); - event.preventDefault(); - dragTargetsRef.current = []; - }; + _defineProperty$1(_assertThisInitialized$1(_this), "onClearSelection", function () { + _this.selectedRowsRef.current = []; + _this.clearSelectionRef.current = true; + _this.selectAllRef.current = false; - useEffect$2(function () { - if (preventDropOnDocument) { - document.addEventListener('dragover', onDocumentDragOver, false); - document.addEventListener('drop', onDocumentDrop, false); - } + _this.onSelectAll(false); - return function () { - if (preventDropOnDocument) { - document.removeEventListener('dragover', onDocumentDragOver); - document.removeEventListener('drop', onDocumentDrop); - } + _this.setState({ + selectAll: getSelectAll([], _this.props.selectDisabledRow, _this.clearSelectionRef.current) + }); + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "resetClearSelection", function () { + _this.clearSelectionRef.current = false; + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "onSelectAllRows", function () { + _this.selectAllRef.current = _this.props.uniqueColumnName ? true : false; + + _this.onSelectAll(true, true); + }); + + var _async = ('fetchData' in _this.props); + + var _data = props.data || []; + + var _schema = props.schema || []; + + _this.state = { + async: _async, + data: !_async ? _data : [], + displayData: !_async ? _data : [], + schema: !_async ? _schema : [], + page: props.page, + sortingList: props.sortingList, + filterList: props.filterList, + totalRecords: !_async ? _data.length : 0, + loading: !_async ? props.loading : true, + error: !_async ? props.error : false, + errorType: props.errorType, + selectAll: getSelectAll([]), + searchTerm: undefined }; - }, [rootRef, preventDropOnDocument]); - var onDragEnterCb = useCallback(function (event) { - event.preventDefault(); - event.persist(); // @ts-ignore + _this.debounceUpdate = debounce$1(props.searchDebounceDuration, _this.updateDataFn); + return _this; + } - dragTargetsRef.current = [].concat(_toConsumableArray(dragTargetsRef.current), [event.target]); + _createClass(Table, [{ + key: "componentDidMount", + value: function componentDidMount() { + this.updateData(); + } + }, { + key: "componentDidUpdate", + value: function componentDidUpdate(prevProps, prevState) { + var _this2 = this; - if (isEvtWithFiles(event)) { - Promise.resolve(getFilesFromEvent(event)).then(function (files) { - if (isPropagationStopped(event)) { - return; + if (!this.state.async) { + if (prevProps.error !== this.props.error) { + var _this$props4 = this.props, + _this$props4$data = _this$props4.data, + _data3 = _this$props4$data === void 0 ? [] : _this$props4$data, + _this$props4$schema = _this$props4.schema, + schema = _this$props4$schema === void 0 ? [] : _this$props4$schema; + + this.setState({ + data: _data3, + displayData: _data3, + schema: schema, + error: this.props.error || false, + errorType: this.props.errorType, + page: 1, + totalRecords: _data3.length || 0, + selectAll: getSelectAll([]) + }); } - dispatch({ - draggedFiles: files, - isDragActive: true, - type: 'setDraggedFiles' - }); + if (prevProps.loading !== this.props.loading) { + var _this$props5 = this.props, + _this$props5$data = _this$props5.data, + _data4 = _this$props5$data === void 0 ? [] : _this$props5$data, + _this$props5$schema = _this$props5.schema, + _schema2 = _this$props5$schema === void 0 ? [] : _this$props5$schema; - if (onDragEnter) { - onDragEnter(event); + this.setState({ + data: _data4, + displayData: _data4, + schema: _schema2, + loading: this.props.loading || false, + error: this.props.error || false, + errorType: this.props.errorType, + page: 1, + totalRecords: _data4.length || 0, + selectAll: getSelectAll([]) + }, function () { + _this2.updateData(); + }); } - }); - } - }, [getFilesFromEvent, onDragEnter]); - var onDragOverCb = useCallback(function (event) { - event.preventDefault(); - event.persist(); + } - if (event.dataTransfer) { - try { - event.dataTransfer.dropEffect = 'copy'; - } catch (_unused) {} - /* eslint-disable-line no-empty */ + if (prevState.page !== this.state.page) { + var onPageChange = this.props.onPageChange; + if (onPageChange) onPageChange(this.state.page); + } + if (prevState.page !== this.state.page || prevState.filterList !== this.state.filterList || prevState.sortingList !== this.state.sortingList || prevState.searchTerm !== this.state.searchTerm) { + if (!this.props.loading) { + // let errorType = ""; + // let errorCount = 0; + // if(prevState.page !== this.state.page) errorType = "ON_PAGE_CHANGE", errorCount++; + // if(prevState.filterList !== this.state.filterList) errorType = "ON_FILTER_CHANGE", errorCount++; + // if(prevState.sortingList !== this.state.sortingList) errorType = "ON_SORTING_CHANGE", errorCount++; + // if(prevState.searchTerm !== this.state.searchTerm) errorType = "ON_SEARCH_CHANGE", errorCount++; + // this.setState({ + // errorType: errorCount > 1 ? "FAILED_TO_FETCH" : errorType + // }); + var searchUpdate = prevState.searchTerm !== this.state.searchTerm; + this.updateData(searchUpdate); + } + } } + }, { + key: "render", + value: function render() { + var _this$props6 = this.props, + showHead = _this$props6.showHead, + type = _this$props6.type, + size = _this$props6.size, + headCellTooltip = _this$props6.headCellTooltip, + separator = _this$props6.separator, + draggable = _this$props6.draggable, + nestedRows = _this$props6.nestedRows, + nestedRowRenderer = _this$props6.nestedRowRenderer, + withHeader = _this$props6.withHeader, + headerOptions = _this$props6.headerOptions, + withCheckbox = _this$props6.withCheckbox, + showMenu = _this$props6.showMenu, + withPagination = _this$props6.withPagination, + paginationType = _this$props6.paginationType, + pageSize = _this$props6.pageSize, + pageJumpDebounceDuration = _this$props6.pageJumpDebounceDuration, + onRowClick = _this$props6.onRowClick, + loaderSchema = _this$props6.loaderSchema, + errorTemplate = _this$props6.errorTemplate, + className = _this$props6.className, + filterPosition = _this$props6.filterPosition, + uniqueColumnName = _this$props6.uniqueColumnName; + var baseProps = extractBaseProps(this.props); - if (isEvtWithFiles(event) && onDragOver) { - onDragOver(event); + var _ref = headerOptions, + headerChildren = _ref.children, + headerAttr = _objectWithoutProperties(_ref, _excluded$l); + + var classes = className ? " ".concat(className) : ''; + var totalRecords = this.state.totalRecords; + var totalPages = getTotalPages(totalRecords, pageSize); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: "Table".concat(classes), + "data-test": "DesignSystem-Table-wrapper" + }), withHeader && /*#__PURE__*/React.createElement("div", { + className: "Table-header", + "data-test": "DesignSystem-Table-header" + }, /*#__PURE__*/React.createElement(Header, _extends$2({}, this.state, { + // updateData={updateData} + updateSchema: this.updateSchema // updateSortingList={updateSortingList} + , + updateFilterList: this.updateFilterList, + updateSearchTerm: this.updateSearchTerm, + showHead: showHead, + onSelectAll: this.onSelectAll, + withCheckbox: withCheckbox, + withPagination: withPagination, + pageSize: pageSize, + showFilters: filterPosition === 'HEADER', + selectedRowsRef: this.selectedRowsRef, + onClearSelection: this.onClearSelection, + onSelectAllRows: this.onSelectAllRows, + selectedAllRef: this.selectAllRef, + uniqueColumnName: uniqueColumnName + }, headerAttr), headerChildren)), /*#__PURE__*/React.createElement("div", { + className: "Table-grid" + }, /*#__PURE__*/React.createElement(Grid, _extends$2({}, this.state, { + key: this.state.searchTerm, + updateData: this.updateData, + updateSchema: this.updateSchema, + updateSortingList: this.updateSortingList, + updateFilterList: this.updateFilterList, + withCheckbox: withCheckbox, + onSelect: this.onSelect, + onSelectAll: this.onSelectAll, + showMenu: showMenu, + showHead: showHead, + type: type, + size: size, + headCellTooltip: headCellTooltip, + separator: separator, + draggable: draggable, + nestedRows: nestedRows, + nestedRowRenderer: nestedRowRenderer, + withPagination: withPagination && totalPages > 1, + pageSize: pageSize, + loaderSchema: loaderSchema, + errorTemplate: errorTemplate && errorTemplate({ + errorType: this.state.errorType + }), + onRowClick: onRowClick, + showFilters: filterPosition === 'GRID' + }))), withPagination && !this.state.loading && !this.state.error && totalPages > 1 && /*#__PURE__*/React.createElement("div", { + className: "Table-pagination" + }, /*#__PURE__*/React.createElement(Pagination, { + page: this.state.page, + totalPages: getTotalPages(totalRecords, pageSize), + type: paginationType, + onPageChange: this.onPageChange, + pageJumpDebounceDuration: pageJumpDebounceDuration + }))); } + }]); - return false; - }, [onDragOver]); - var onDragLeaveCb = useCallback(function (event) { - event.preventDefault(); - event.persist(); - var targets = dragTargetsRef.current.filter( // @ts-ignore - function (target) { - return rootRef.current && rootRef.current.contains(target); - }); // @ts-ignore - - var targetIdx = targets.indexOf(event.target); + return Table; +}(React.Component); - if (targetIdx !== -1) { - targets.splice(targetIdx, 1); - } +_defineProperty$1(Table, "defaultProps", defaultProps); - dragTargetsRef.current = targets; +/** + * List component has been deprecated, please use [Listbox](https://mds.innovaccer.com/?path=/docs/components-listbox-all--all) component instead. + * + * **`List` is a pattern of `Table` with no Head Cells.** + * + * Please refer to stories of Table for examples. Simply replace `Table` with `List` to use it. + */ +var List = function List(props) { + return /*#__PURE__*/React.createElement(Table, _extends$2({}, props, { + showHead: false, + filterPosition: 'HEADER' + })); +}; +List.defaultProps = defaultProps; - if (targets.length > 0) { - return; - } +var useState$1 = React.useState; +var VerticalNavigation = function VerticalNavigation(props) { + var menus = props.menus, + active = props.active, + onClick = props.onClick, + expanded = props.expanded, + rounded = props.rounded, + onToggle = props.onToggle, + footer = props.footer, + autoCollapse = props.autoCollapse; - dispatch({ - isDragActive: false, - type: 'setDraggedFiles', - draggedFiles: [] - }); + var _useState = useState$1({}), + _useState2 = _slicedToArray(_useState, 2), + menuState = _useState2[0], + setMenuState = _useState2[1]; - if (isEvtWithFiles(event) && onDragLeave) { - onDragLeave(event); + React.useEffect(function () { + if (props.active) { + var currMenu = getMenu(menus, props.active); + if (currMenu) updateMenuState(currMenu, true); } - }, [rootRef, onDragLeave]); - var onDropCb = useCallback(function (event) { - event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done - - event.persist(); - dragTargetsRef.current = []; - - if (isEvtWithFiles(event)) { - Promise.resolve(getFilesFromEvent(event)).then(function (files) { - if (isPropagationStopped(event)) { - return; - } - - var acceptedFiles = []; - var fileRejections = []; - files.forEach(function (file) { - var _fileAccepted = fileAccepted(file, accept), - _fileAccepted2 = _slicedToArray(_fileAccepted, 2), - accepted = _fileAccepted2[0], - acceptError = _fileAccepted2[1]; - - var _fileMatchSize = fileMatchSize(file, minSize, maxSize), - _fileMatchSize2 = _slicedToArray(_fileMatchSize, 2), - sizeMatch = _fileMatchSize2[0], - sizeError = _fileMatchSize2[1]; - - var customErrors = validator ? validator(file) : null; + }, [props.active]); - if (accepted && sizeMatch && !customErrors) { - acceptedFiles.push(file); - } else { - var errors = [acceptError, sizeError]; + var updateMenuState = function updateMenuState(menu, val) { + var currMenu = getMenu(menus, menu); - if (customErrors) { - errors = errors.concat(customErrors); - } + if (currMenu) { + var nameSplit = currMenu.name.split('.'); - fileRejections.push({ - file: file, - errors: errors.filter(function (e) { - return e; - }) - }); - } - }); - dispatch({ - acceptedFiles: acceptedFiles, - fileRejections: fileRejections, - type: 'setFiles' - }); + if (nameSplit.length > 1 || currMenu.subMenu) { + var name = nameSplit[0]; - if (onDrop) { - onDrop(event, acceptedFiles, fileRejections); - } + if (autoCollapse) { + setMenuState(_defineProperty$1({}, name, val || !menuState[name])); + } else { + var menuData = _objectSpread2({}, menuState); - if (fileRejections.length > 0 && onDropRejected) { - onDropRejected(event, fileRejections); + menuData[name] = val !== undefined ? val : !menuData[name]; + setMenuState(menuData); } - - if (acceptedFiles.length > 0 && onDropAccepted) { - onDropAccepted(event, acceptedFiles); + } else { + if (autoCollapse) { + if (!expanded) setMenuState({}); } - }); + } } - - dispatch({ - type: 'reset' - }); - }, [multiple, accept, minSize, maxSize, getFilesFromEvent, onDrop, onDropAccepted, onDropRejected]); - - var composeHandler = function composeHandler(fn) { - return disabled ? null : fn; - }; - - var composeKeyboardHandler = function composeKeyboardHandler(_fn) { - return null; }; - var composeDragHandler = function composeDragHandler(fn) { - return composeHandler(fn); + var onClickHandler = function onClickHandler(menu) { + if (!menu.disabled) { + if (menu.subMenu) { + if (!expanded) { + if (onClick) onClick(menu.subMenu[0]); + } else { + updateMenuState(menu); + } + } else { + if (onClick) onClick(menu); + } + } }; - var getRootProps = useMemo(function () { - return function () { - var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, - _ref$refKey = _ref.refKey, - refKey = _ref$refKey === void 0 ? 'ref' : _ref$refKey, - onKeyDown = _ref.onKeyDown, - onFocus = _ref.onFocus, - onBlur = _ref.onBlur; - _ref.onClick; - var onDragEnterCallback = _ref.onDragEnterCallback, - onDragOverCallback = _ref.onDragOverCallback, - onDragLeaveCallback = _ref.onDragLeaveCallback, - onDropCallback = _ref.onDropCallback, - rest = _objectWithoutProperties$1(_ref, _excluded$2); - - return _objectSpread2(_defineProperty$2({ - onKeyDown: composeKeyboardHandler(composeEventHandlers(onKeyDown, onKeyDownCb)), - onFocus: composeKeyboardHandler(composeEventHandlers(onFocus, onFocusCb)), - onBlur: composeKeyboardHandler(composeEventHandlers(onBlur, onBlurCb)), - // onClick: composeHandler(composeEventHandlers(onClick, onClickCb)), - onDragEnter: composeDragHandler(composeEventHandlers(onDragEnterCallback, onDragEnterCb)), - onDragOver: composeDragHandler(composeEventHandlers(onDragOverCallback, onDragOverCb)), - onDragLeave: composeDragHandler(composeEventHandlers(onDragLeaveCallback, onDragLeaveCb)), - onDrop: composeDragHandler(composeEventHandlers(onDropCallback, onDropCb)) - }, refKey, rootRef), rest); - }; - }, [rootRef, onKeyDownCb, onFocusCb, onBlurCb, onDragEnterCb, onDragOverCb, onDragLeaveCb, onDropCb, disabled]); - var onInputElementClick = useCallback(function (event) { - event.stopPropagation(); - }, []); - var getInputProps = useMemo(function () { - return function () { - var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}, - _ref2$refKey = _ref2.refKey, - refKey = _ref2$refKey === void 0 ? 'ref' : _ref2$refKey, - onChange = _ref2.onChange, - onClick = _ref2.onClick, - rest = _objectWithoutProperties$1(_ref2, _excluded2); - - var inputProps = _defineProperty$2({ - accept: accept, - multiple: multiple, - type: 'file', - style: { - display: 'none' - }, - onChange: composeHandler(composeEventHandlers(onChange, onDropCb)), - onClick: composeHandler(composeEventHandlers(onClick, onInputElementClick)), - autoComplete: 'off', - tabIndex: -1 - }, refKey, inputRef); + var list = menus.map(function (menu, index) { + var _classNames; - return _objectSpread2(_objectSpread2({}, inputProps), rest); - }; - }, [inputRef, accept, multiple, onDropCb, disabled]); - var fileCount = draggedFiles.length; - var isDragAccept = fileCount > 0 && allFilesAccepted({ - accept: accept, - minSize: minSize, - maxSize: maxSize, - multiple: multiple, - files: draggedFiles - }); - var isDragReject = fileCount > 0 && !isDragAccept; - var fileError = isDragReject ? getFileError({ - accept: accept, - minSize: minSize, - maxSize: maxSize, - multiple: multiple, - files: draggedFiles - }) : ''; - return _objectSpread2(_objectSpread2({}, state), {}, { - isDragAccept: isDragAccept, - isDragReject: isDragReject, - getRootProps: getRootProps, - getInputProps: getInputProps, - rootRef: rootRef, - inputRef: inputRef, - draggedFiles: draggedFiles, - fileError: fileError, - isFocused: isFocused && !disabled, - open: composeHandler(openFileDialog) + var activeMenu = expanded && !menuState[menu.name] && isMenuActive(menus, menu, active); + var activeMenuIcon = !expanded && isMenuActive(menus, menu, active) || activeMenu; + var menuClasses = classnames((_classNames = { + 'Navigation-menu': true + }, _defineProperty$1(_classNames, 'Navigation-menu--vertical', true), _defineProperty$1(_classNames, 'Navigation-menu--active', activeMenu), _defineProperty$1(_classNames, 'Navigation-menu--rounded', expanded && rounded), _classNames)); + var menuIconClasses = classnames({ + 'Navigation-menuIcon': true, + 'Navigation-menuIcon--active': activeMenuIcon + }); + return /*#__PURE__*/React.createElement("div", { + key: index, + "data-test": "DesignSystem-Navigation-VerticalNavigation--menuWrapper" + }, /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-Navigation-VerticalNavigation--menuItem", + className: menuClasses, + onClick: function onClick() { + return onClickHandler(menu); + } + }, menu.icon && /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-Navigation-VerticalNavigation--menuIcon", + className: menuIconClasses, + name: menu.icon, + appearance: getIconAppearance(activeMenuIcon, menu.disabled) + }), expanded && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", { + className: "Navigation-menuLabel" + }, /*#__PURE__*/React.createElement(Text, { + appearance: getTextAppearance(activeMenu, menu.disabled) + }, menu.label)), menu.subMenu && menu.subMenu.length > 0 && /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-Navigation-VerticalNavigation--expandedSubMenuIcon", + className: "mx-4", + name: menuState[menu.name] ? 'keyboard_arrow_up' : 'keyboard_arrow_down', + appearance: "subtle" + }))), /*#__PURE__*/React.createElement("div", { + className: "Navigation-subMenu" + }, menuState[menu.name] && menu.subMenu && expanded && menu.subMenu.map(function (subMenu, ind) { + var _classNames2; + + var isActive = isMenuActive(menus, subMenu, active); + var subMenuClasses = classnames(menuClasses, (_classNames2 = {}, _defineProperty$1(_classNames2, 'Navigation-menu--subMenu', true), _defineProperty$1(_classNames2, 'Navigation-menu--active', isActive), _classNames2)); + return ( + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement("div", { + "data-test": "DesignSystem-Navigation-VerticalNavigation--subMenu", + key: ind, + className: subMenuClasses, + onClick: function onClick() { + return onClickHandler(subMenu); + } + }, /*#__PURE__*/React.createElement(Text, { + appearance: getTextAppearance(isActive, subMenu.disabled) + }, subMenu.label)) + ); + }))); }); + var footerClasses = classnames(_defineProperty$1({ + 'Navigation-footer': true + }, 'Navigation-footer--border', true)); + return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { + className: "Navigation-body" + }, list), footer && /*#__PURE__*/React.createElement("div", { + className: footerClasses + }, /*#__PURE__*/React.createElement(Icon, { + className: "Navigation-menuIcon Navigation-menuIcon--footer", + name: "menu_open", + size: 16, + onClick: function onClick() { + return onToggle && onToggle(!expanded); + } + }))); }; -DropzoneBase.displayName = 'DropzoneBase'; -DropzoneBase.defaultProps = { - disabled: false, - getFilesFromEvent: fromEvent, - maxSize: Infinity, - minSize: 0, - multiple: true, - preventDropOnDocument: true, - validator: function validator() { - return null; - } -}; - -var DropzoneActive = function DropzoneActive(props) { - var _classNames; - - var type = props.type; - var IconClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Dropzone-stateIcon', true), _defineProperty$2(_classNames, "Dropzone-stateIcon--".concat(type), type), _classNames)); - return /*#__PURE__*/React.createElement(React.Fragment, null, type !== 'tight' && /*#__PURE__*/React.createElement(Icon, { - name: "archive", - size: 64, - appearance: "info", - className: IconClass - }), /*#__PURE__*/React.createElement(Text, { - appearance: "link", - size: "large", - weight: "strong" - }, "Drop your files here")); +VerticalNavigation.defaultProps = { + expanded: true, + autoCollapse: true, + rounded: false }; -DropzoneActive.displayName = 'DropzoneActive'; -var DropzoneError = function DropzoneError(props) { +/** + * ####NOTE: Navigation will be deprecated soon. VerticalNav and HorizontalNav will be supported. + */ +var Navigation = function Navigation(props) { var _classNames; var type = props.type, - error = props.error; - var IconClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Dropzone-stateIcon', true), _defineProperty$2(_classNames, "Dropzone-stateIcon--".concat(type), type), _classNames)); - return /*#__PURE__*/React.createElement(React.Fragment, null, type !== 'tight' && /*#__PURE__*/React.createElement(Icon, { - name: "error", - size: 64, - appearance: "alert", - className: IconClass - }), /*#__PURE__*/React.createElement(Text, { - appearance: "destructive", - size: "large", - weight: "strong" - }, error)); -}; -DropzoneError.displayName = 'DropzoneError'; - -var Dropzone = function Dropzone(props) { - var _classNames, _classNames2, _classNames3; - - var type = props.type, - sizeLabel = props.sizeLabel, - className = props.className, - formatLabel = props.formatLabel, - sampleFileLink = props.sampleFileLink, - disabled = props.disabled; - - var _DropzoneBase = DropzoneBase(props), - open = _DropzoneBase.open, - getRootProps = _DropzoneBase.getRootProps, - getInputProps = _DropzoneBase.getInputProps, - isDragActive = _DropzoneBase.isDragActive, - isDragReject = _DropzoneBase.isDragReject, - fileError = _DropzoneBase.fileError; - + align = props.align, + menus = props.menus, + active = props.active, + onClick = props.onClick, + expanded = props.expanded, + rounded = props.rounded, + onToggle = props.onToggle, + footer = props.footer, + autoCollapse = props.autoCollapse, + className = props.className; var baseProps = extractBaseProps(props); - var DropzoneClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Dropzone', true), _defineProperty$2(_classNames, "Dropzone--".concat(type), type), _defineProperty$2(_classNames, 'Dropzone--disabled', disabled), _defineProperty$2(_classNames, 'Dropzone--active', isDragActive), _defineProperty$2(_classNames, 'Dropzone--error', isDragReject), _classNames), className); - var IconClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Dropzone-icon', true), _defineProperty$2(_classNames2, "Dropzone-icon--".concat(type), true), _defineProperty$2(_classNames2, 'Dropzone-icon--disabled', disabled), _classNames2)); - var WrapperClass = classnames((_classNames3 = {}, _defineProperty$2(_classNames3, 'DropzoneWrapper', true), _defineProperty$2(_classNames3, "DropzoneWrapper--".concat(type), true), _classNames3)); - - if (isDragReject) { - return /*#__PURE__*/React__default.createElement("div", _extends$3({}, getRootProps(), baseProps, { - className: DropzoneClass - }), /*#__PURE__*/React__default.createElement(DropzoneError, { - type: type, - error: fileErrorMessages[fileError] - })); - } + var classes = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Navigation', true), _defineProperty$1(_classNames, "Navigation--".concat(type), type), _defineProperty$1(_classNames, 'justify-content-center', type === 'horizontal' && align === 'center'), _defineProperty$1(_classNames, 'justify-content-start', type === 'horizontal' && align === 'left'), _defineProperty$1(_classNames, 'Navigation--collapsed', !expanded), _classNames), className); - if (isDragActive) { - return /*#__PURE__*/React__default.createElement("div", _extends$3({}, getRootProps(), baseProps, { - className: DropzoneClass - }), /*#__PURE__*/React__default.createElement(DropzoneActive, { - type: type - })); - } - - var renderDropzone = function renderDropzone() { - if (isDragReject) return /*#__PURE__*/React__default.createElement(DropzoneError, { - type: type, - error: fileErrorMessages[fileError] - }); - if (isDragActive) return /*#__PURE__*/React__default.createElement(DropzoneActive, { - type: type + var renderNavigation = function renderNavigation() { + return type === 'horizontal' ? /*#__PURE__*/React.createElement(HorizontalNav, { + menus: menus, + active: active, + onClick: onClick + }) : /*#__PURE__*/React.createElement(VerticalNavigation, { + menus: menus, + active: active, + autoCollapse: autoCollapse, + expanded: expanded, + rounded: rounded, + footer: footer, + onToggle: onToggle, + onClick: onClick }); - return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, type !== 'tight' && /*#__PURE__*/React__default.createElement(Icon, { - name: "backup", - size: 64, - className: IconClass - }), /*#__PURE__*/React__default.createElement("div", { - className: WrapperClass - }, /*#__PURE__*/React__default.createElement("span", null, /*#__PURE__*/React__default.createElement(Text, { - size: "large", - weight: "strong", - className: "mr-2", - appearance: disabled ? 'disabled' : 'default' - }, "Drag your files here or"), /*#__PURE__*/React__default.createElement("span", { - className: "cursor-pointer", - onClick: open - }, /*#__PURE__*/React__default.createElement(Text, { - size: "large", - weight: "strong", - appearance: disabled ? 'disabled' : 'link' - }, " browse files")), /*#__PURE__*/React__default.createElement("input", getInputProps())), formatLabel && /*#__PURE__*/React__default.createElement(Text, { - appearance: disabled ? 'disabled' : 'subtle' - }, formatLabel), sizeLabel && /*#__PURE__*/React__default.createElement(Text, { - appearance: disabled ? 'disabled' : 'subtle' - }, sizeLabel), sampleFileLink && /*#__PURE__*/React__default.createElement("div", { - className: "mt-5" - }, sampleFileLink))); }; - return /*#__PURE__*/React__default.createElement("div", _extends$3({}, getRootProps(), baseProps, { - className: DropzoneClass - }), renderDropzone()); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: classes + }), renderNavigation()); +}; +Navigation.defaultProps = { + type: 'horizontal', + align: 'center', + expanded: true, + autoCollapse: true, + rounded: false }; -Dropzone.displayName = 'Dropzone'; -Dropzone.defaultProps = _objectSpread2(_objectSpread2({}, DropzoneBase.defaultProps), {}, { - type: 'standard' -}); -var FileUploaderFormat = function FileUploaderFormat(props) { - var formatLabel = props.formatLabel; +var Status = function Status(props) { + var status = props.status, + meta = props.meta, + navigationPosition = props.navigationPosition, + navigation = props.navigation, + tabs = props.tabs; + var statusClasses = classnames({ + 'PageHeader-statusWrapper': true, + 'mb-3': navigationPosition === 'bottom' && navigation || tabs + }); + return /*#__PURE__*/React.createElement(React.Fragment, null, (status || meta) && /*#__PURE__*/React.createElement("div", { + className: statusClasses, + "data-test": "DesignSystem-PageHeader--Status" + }, status, meta)); +}; +var Action = function Action(props) { + var actions = props.actions, + navigation = props.navigation, + stepper = props.stepper; + return /*#__PURE__*/React.createElement(React.Fragment, null, actions ? /*#__PURE__*/React.createElement(Column, { + size: "4", + sizeXL: "4", + sizeM: "4", + "data-test": "DesignSystem-PageHeader--Actions" + }, /*#__PURE__*/React.createElement("div", { + className: "PageHeader-actionsWrapper" + }, actions)) : (navigation || stepper) && /*#__PURE__*/React.createElement(Column, { + size: "4", + sizeXL: "4", + sizeM: "4", + "data-test": "DesignSystem-PageHeader--Actions" + }, /*#__PURE__*/React.createElement("div", { + className: "PageHeader-actionsWrapper" + }))); +}; +var Nav = function Nav(props) { + var navigation = props.navigation, + stepper = props.stepper; - if (formatLabel) { - return /*#__PURE__*/React.createElement(Text, { - size: "small", - appearance: "subtle", - className: "mt-4" - }, formatLabel); + if (!navigation && !stepper) { + return null; } - return null; -}; -FileUploaderFormat.displayName = 'FileUploaderFormat'; - -var FileUploaderButton = function FileUploaderButton(props) { - var accept = props.accept, - multiple = props.multiple, - uploadButtonLabel = props.uploadButtonLabel, - disabled = props.disabled, - name = props.name, - className = props.className, - id = props.id, - _onChange = props.onChange; - var baseProps = extractBaseProps(props); - var FileUploaderButtonClass = classnames(_defineProperty$2({}, 'FileUploaderButton', true), className); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: FileUploaderButtonClass - }), /*#__PURE__*/React.createElement(Button, { - disabled: disabled, - icon: "backup" - }, uploadButtonLabel), /*#__PURE__*/React.createElement("input", { - name: name, - id: id, - accept: accept && accept.join(', '), - multiple: multiple, - disabled: disabled, - type: "file", - tabIndex: -1, - className: "FileUploaderButton-input", - onChange: function onChange(event) { - var fileList = event.target.files ? Array.from(event.target.files) : []; - if (_onChange) _onChange(fileList, event); - } - })); + return /*#__PURE__*/React.createElement("div", { + className: "PageHeader-navigationWrapper", + "data-test": "DesignSystem-PageHeader--Nav" + }, navigation || stepper); }; -FileUploaderButton.defaultProps = { - uploadButtonLabel: 'Upload files', - disabled: false, - multiple: false +var CenterNav = function CenterNav(props) { + var colSize = props.colSize, + breadcrumbs = props.breadcrumbs, + navigationPosition = props.navigationPosition; + return /*#__PURE__*/React.createElement(React.Fragment, null, (!breadcrumbs || navigationPosition === 'center') && colSize === '4' && /*#__PURE__*/React.createElement(Column, { + size: "4", + sizeXL: "4", + sizeM: "4", + "data-test": "DesignSystem-PageHeader--CenterNav" + }, /*#__PURE__*/React.createElement(Nav, props))); +}; +var BackButton = function BackButton(props) { + var button = props.button; + return /*#__PURE__*/React.createElement(React.Fragment, null, button && /*#__PURE__*/React.createElement("div", { + className: "mr-5 my-3", + "data-test": "DesignSystem-PageHeader--Button" + }, button)); +}; +var Title = function Title(props) { + var badge = props.badge, + title = props.title; + return /*#__PURE__*/React.createElement("div", { + className: "PageHeader-titleWrapper", + "data-test": "DesignSystem-PageHeader--Title" + }, /*#__PURE__*/React.createElement(Heading, { + className: "PageHeader-title" + }, title), badge); }; -FileUploaderButton.displayName = 'FileUploaderButton'; -var FileUploader = function FileUploader(props) { - var accept = props.accept, - multiple = props.multiple, - disabled = props.disabled, - title = props.title, - uploadButtonLabel = props.uploadButtonLabel, - sizeLabel = props.sizeLabel, - formatLabel = props.formatLabel, - sampleFileLink = props.sampleFileLink, - className = props.className, - id = props.id, - name = props.name, - onChange = props.onChange; - var baseProps = extractBaseProps(props); - var FileUploaderClass = classnames(_defineProperty$2({}, 'FileUploader', true), className); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: FileUploaderClass - }), /*#__PURE__*/React.createElement(Text, { - weight: "medium" - }, title), /*#__PURE__*/React.createElement(FileUploaderFormat, { - formatLabel: formatLabel - }), /*#__PURE__*/React.createElement(Text, { - size: "small", - appearance: "subtle", - className: !formatLabel ? 'mt-4' : '' - }, sizeLabel), sampleFileLink && /*#__PURE__*/React.createElement("div", { - className: "mt-4" - }, sampleFileLink), /*#__PURE__*/React.createElement(FileUploaderButton, { - id: id, - name: name, - accept: accept, - multiple: multiple, - disabled: disabled, - uploadButtonLabel: uploadButtonLabel, - onChange: onChange, - className: "mt-5" +var PageHeader = function PageHeader(props) { + var title = props.title, + navigation = props.navigation, + stepper = props.stepper, + actions = props.actions, + tabs = props.tabs, + breadcrumbs = props.breadcrumbs, + badge = props.badge, + separator = props.separator, + status = props.status, + meta = props.meta, + navigationPosition = props.navigationPosition, + className = props.className, + button = props.button; + var baseProps = extractBaseProps(props); + var wrapperClasses = classnames(_defineProperty$1({ + 'PageHeader-wrapper': true + }, 'PageHeader-wrapper--withTabs', tabs), className); + var classes = classnames({ + PageHeader: true + }); + var colSize = (navigation || stepper) && navigationPosition === 'center' ? '4' : actions ? '8' : '12'; + var centerNavProps = { + colSize: colSize, + breadcrumbs: breadcrumbs, + navigationPosition: navigationPosition, + navigation: navigation, + stepper: stepper + }; + var statusProps = { + status: status, + meta: meta, + navigationPosition: navigationPosition, + navigation: navigation, + tabs: tabs + }; + return /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-PageHeader" + }, /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: wrapperClasses + }), breadcrumbs && /*#__PURE__*/React.createElement("div", { + className: "pl-6", + "data-test": "DesignSystem-PageHeader--Breadcrumbs" + }, breadcrumbs), /*#__PURE__*/React.createElement("div", { + className: "d-flex pl-6" + }, /*#__PURE__*/React.createElement(BackButton, { + button: button + }), /*#__PURE__*/React.createElement("div", { + className: classes + }, /*#__PURE__*/React.createElement(Row, null, /*#__PURE__*/React.createElement(Column, { + size: colSize, + sizeXL: colSize, + sizeM: colSize + }, /*#__PURE__*/React.createElement(Title, { + badge: badge, + title: title + })), /*#__PURE__*/React.createElement(CenterNav, centerNavProps), /*#__PURE__*/React.createElement(Action, { + actions: actions, + navigation: navigation, + stepper: stepper + })), /*#__PURE__*/React.createElement(Status, statusProps))), /*#__PURE__*/React.createElement("div", { + className: "pl-3" + }, navigationPosition === 'bottom' && /*#__PURE__*/React.createElement(Nav, { + navigation: navigation, + stepper: stepper + }), tabs && /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-PageHeader--Tabs" + }, tabs))), separator && /*#__PURE__*/React.createElement(Divider, { + appearance: "header" })); }; -FileUploader.defaultProps = Object.assign({}, FileUploaderButton.defaultProps, { - title: 'Upload files', - sizeLabel: 'Maximum size: 25 MB' -}); -FileUploader.displayName = 'FileUploader'; +PageHeader.defaultProps = { + navigationPosition: 'center', + separator: true +}; + +var useEffect = React.useEffect, + useState = React.useState; +var IconMapping$1 = { + audio: 'audiotrack', + image: 'image', + video: 'movie', + application: 'insert_drive_file', + others: 'text_snippet' +}; +var FileIcon = function FileIcon(props) { + var _classNames, _classNames2; -var FileUploaderStatus = function FileUploaderStatus(props) { var progress = props.progress, status = props.status, - onRetry = props.onRetry; + file = props.file; - switch (status) { - case 'uploading': - return /*#__PURE__*/React.createElement(ProgressRing, { - size: "small", - value: progress, - className: "mr-4" - }); + var _useState = useState(false), + _useState2 = _slicedToArray(_useState, 2), + animate = _useState2[0], + setAnimate = _useState2[1]; - case 'error': - return /*#__PURE__*/React.createElement(Button, { - appearance: "transparent", - size: "regular", - onClick: onRetry, - icon: "refresh", - className: "mr-2" - }); + var type = file.type.split('/')[0] || 'others'; + var fileType = IconMapping$1[type] ? type : 'others'; + var iconClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'FileIcon', true), _defineProperty$1(_classNames, 'FileIcon--animate', animate), _defineProperty$1(_classNames, "FileIcon--".concat(fileType), true), _classNames)); + var uploadingIconClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'FileIcon', true), _defineProperty$1(_classNames2, 'FileIcon--uploading', true), _classNames2)); + useEffect(function () { + if (status === 'completed') { + setAnimate(true); + } else { + setAnimate(false); + } + }, [status]); - default: - return null; + if (status === 'uploading') { + return /*#__PURE__*/React.createElement(ProgressRing, { + size: "small", + value: progress || 0, + className: uploadingIconClass, + "data-test": "DesignSystem-FileListItem--ProgressRing" + }); } + + return /*#__PURE__*/React.createElement(Icon, { + name: IconMapping$1[fileType], + className: iconClass, + "data-test": "DesignSystem-FileListItem--Icon" + }); }; -FileUploaderStatus.displayName = 'FileUploaderStatus'; -FileUploaderStatus.defaultProps = { - status: 'completed', - progress: 0 +FileIcon.displayName = 'FileIcon'; +FileIcon.defaultProps = { + progress: 0, + status: 'completed' }; -var FileUploaderItem = function FileUploaderItem(props) { - var file = props.file, - id = props.id, - status = props.status, +var FileListItem = function FileListItem(props) { + var progress = props.progress, errorMessage = props.errorMessage, - progress = props.progress, - _onClick = props.onClick, - onDelete = props.onDelete, - _onRetry = props.onRetry, - className = props.className; + onClick = props.onClick, + className = props.className, + actions = props.actions, + fileItem = props.fileItem, + file = props.file, + status = props.status, + fileSize = props.fileSize; var name = file.name; var baseProps = extractBaseProps(props); - var FileItemClass = classnames(_defineProperty$2({}, 'FileUploaderItem', true), className); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: FileItemClass, - onClick: function onClick() { - return _onClick && _onClick(file, id); - } - }), /*#__PURE__*/React.createElement("div", { - className: "FileUploaderItem-file" - }, /*#__PURE__*/React.createElement(Text, { - className: "FileUploaderItem-text", - appearance: status === 'completed' ? 'default' : 'subtle' - }, name), /*#__PURE__*/React.createElement("div", { - className: "d-flex align-items-center" - }, /*#__PURE__*/React.createElement(FileUploaderStatus, { - file: file, - id: id, - status: status, - progress: progress, - onRetry: function onRetry() { - return _onRetry && _onRetry(file, id); + var FileItemClass = classnames(_defineProperty$1({}, 'FileItem', true), className); + + var onClickHandler = function onClickHandler() { + if (onClick) { + onClick(fileItem); } - }), /*#__PURE__*/React.createElement(Button, { - appearance: "transparent", - size: "regular", - onClick: function onClick() { - return onDelete && onDelete(file, id); - }, - icon: "close" - }))), status === 'error' && /*#__PURE__*/React.createElement(Caption, { - error: true - }, errorMessage)); + }; + + return ( + /*#__PURE__*/ + // TODO(a11y) + // eslint-disable-next-line + React.createElement("div", _extends$2({}, baseProps, { + className: FileItemClass, + onClick: onClickHandler, + "data-test": "DesignSystem-FileListItem" + }), /*#__PURE__*/React.createElement("div", { + className: "FileItem-file" + }, /*#__PURE__*/React.createElement("div", { + className: "FileItem-fileContent" + }, /*#__PURE__*/React.createElement(FileIcon, { + file: file, + status: status, + progress: progress + }), /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-FileListItem--Name", + className: "FileItem-text", + appearance: status === 'completed' ? 'default' : 'subtle', + weight: "medium" + }, name)), /*#__PURE__*/React.createElement("div", { + className: "FileItem-actions" + }, /*#__PURE__*/React.createElement(Text, { + className: "FileItem-size", + size: "small", + appearance: 'subtle', + "data-test": "DesignSystem-FileListItem--Size" + }, fileSize || file.size), !!actions && actions)), status === 'error' && /*#__PURE__*/React.createElement(InlineMessage, { + size: "small", + appearance: "alert", + description: errorMessage, + className: 'FileItem-error' + })) + ); }; -FileUploaderItem.defaultProps = { - status: 'completed', +FileListItem.defaultProps = { progress: 0, errorMessage: 'Network Error' }; -FileUploaderItem.displayName = 'FileUploaderItem'; +FileListItem.displayName = 'FileListItem'; -var FileUploaderList = function FileUploaderList(props) { +var FileList = function FileList(props) { var fileList = props.fileList, onClick = props.onClick, - onDelete = props.onDelete, - onRetry = props.onRetry, + actionRenderer = props.actionRenderer, className = props.className; var baseProps = extractBaseProps(props); - var FileListClass = classnames(_defineProperty$2({}, 'FileUploaderList', true), className); if (fileList.length === 0) return null; - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: FileListClass - }), fileList.map(function (fileName, i) { - return /*#__PURE__*/React.createElement(FileUploaderItem, _extends$3({ - key: i, - onDelete: onDelete, - onRetry: onRetry, - onClick: onClick - }, fileName)); + return /*#__PURE__*/React.createElement(Card, _extends$2({}, baseProps, { + shadow: 'none', + className: className + }), fileList.map(function (fileItem, index) { + return /*#__PURE__*/React.createElement(FileListItem, _extends$2({ + key: index, + onClick: onClick, + actions: actionRenderer && actionRenderer(fileItem), + fileItem: fileItem + }, fileItem)); })); }; -FileUploaderList.defaultProps = { +FileList.defaultProps = { fileList: [] }; -FileUploaderList.displayName = 'FileUploaderList'; +FileList.displayName = 'FileList'; -var resizeCol = function resizeCol(_ref, name, el) { - var updateColumnSchema = _ref.updateColumnSchema; - var elX = el === null || el === void 0 ? void 0 : el.getBoundingClientRect().x; +var _excluded$k = ["type", "fields", "placeholder", "autoFocus", "onComplete", "onFocus", "onBlur", "className", "value"]; +var KEY_CODE = { + backspace: 'Backspace', + left: 'ArrowLeft', + up: 'ArrowUp', + right: 'ArrowRight', + down: 'ArrowDown', + e: 'e', + E: 'E' +}; - function resizable(ev) { - ev.preventDefault(); +var VerificationCodeInput = function VerificationCodeInput(props) { + var _props$type = props.type, + type = _props$type === void 0 ? 'number' : _props$type, + _props$fields = props.fields, + fields = _props$fields === void 0 ? 4 : _props$fields, + _props$placeholder = props.placeholder, + placeholder = _props$placeholder === void 0 ? '_' : _props$placeholder, + _props$autoFocus = props.autoFocus, + autoFocus = _props$autoFocus === void 0 ? true : _props$autoFocus, + onComplete = props.onComplete, + onFocus = props.onFocus, + onBlur = props.onBlur, + className = props.className; + props.value; + var rest = _objectWithoutProperties(props, _excluded$k); - if (elX) { - updateColumnSchema(name, { - width: ev.pageX - elX + var initialValues = useMemo(function () { + if (props.value && props.value.length) { + return props.value.split(''); + } + + return Array(fields).fill(''); + }, []); + var initialRefs = useMemo(function () { + return _toConsumableArray(Array(fields)).map(function () { + return /*#__PURE__*/React__default.createRef(); + }); + }, []); + + var _useState = useState$3(initialValues), + _useState2 = _slicedToArray(_useState, 2), + values = _useState2[0], + setValues = _useState2[1]; + + var _useState3 = useState$3(initialRefs), + _useState4 = _slicedToArray(_useState3, 1), + refs = _useState4[0]; + + useEffect$2(function () { + if (refs[0] && refs[0].current && autoFocus) { + refs[0].current.focus({ + preventScroll: true }); } - } + }, []); + useEffect$2(function () { + var completeValue = values.join(''); - window.addEventListener('mousemove', resizable); - window.addEventListener('mouseup', function () { - window.removeEventListener('mousemove', resizable); - }); -}; -var sortColumn = function sortColumn(_ref2, name, type) { - var sortingList = _ref2.sortingList, - updateSortingList = _ref2.updateSortingList; + if (onComplete && completeValue.length === fields) { + onComplete(completeValue); + } + }, [values]); - var newSortingList = _toConsumableArray(sortingList); + var onChangeHandler = function onChangeHandler(e) { + var index = parseInt(e.target.dataset.id, 10); + var fieldValue = e.target.value; + var nextRef; - var index = newSortingList.findIndex(function (l) { - return l.name === name; - }); + var newValues = _toConsumableArray(values); + + if (!fieldValue) { + return; + } + + if (fieldValue.length > 1) { + var nextIndex = fieldValue.length + index - 1; + + if (nextIndex >= fields) { + nextIndex = fields - 1; + } + + nextRef = refs[nextIndex]; + var split = fieldValue.split(''); + split.forEach(function (item, i) { + var cursor = index + i; - if (index !== -1) { - newSortingList = [].concat(_toConsumableArray(newSortingList.slice(0, index)), _toConsumableArray(newSortingList.slice(index + 1))); - } + if (cursor < fields) { + newValues[cursor] = item; + } + }); + setValues(newValues); + } else { + nextRef = refs[index + 1]; + newValues[index] = fieldValue; + setValues(newValues); + } - if (type !== 'unsort') newSortingList.push({ - name: name, - type: type - }); - updateSortingList(newSortingList); -}; -var pinColumn = function pinColumn(_ref3, name, type) { - var updateColumnSchema = _ref3.updateColumnSchema; - var schemaUpdate = { - pinned: type !== 'unpin' ? type : undefined - }; - updateColumnSchema(name, schemaUpdate); -}; -var hideColumn = function hideColumn(_ref4, name, value) { - var updateColumnSchema = _ref4.updateColumnSchema; - var schemaUpdate = { - hidden: value + if (nextRef && nextRef.current) { + nextRef.current.focus({ + preventScroll: true + }); + nextRef.current.select(); + } }; - updateColumnSchema(name, schemaUpdate); -}; -function getWidth(_ref5, width) { - var ref = _ref5.ref, - withCheckbox = _ref5.withCheckbox; - var isPercent = typeof width === 'string' && width.slice(-1) === '%'; - if (isPercent) { - var checkboxCell = ref.querySelector('.Grid-cell--checkbox'); - var checkboxWidth = withCheckbox ? (checkboxCell === null || checkboxCell === void 0 ? void 0 : checkboxCell.clientWidth) || 28 : 0; - var gridWidth = ref.clientWidth - checkboxWidth; - return gridWidth * (+width.slice(0, -1) / 100); - } + var onFocusHandler = function onFocusHandler(e) { + e.target.select(); + e.target.placeholder = ''; - return width; -} -function getCellSize(cellType) { - var sizes = { - AVATAR: { - minWidth: 48 - }, - AVATAR_WITH_TEXT: { - width: 256 - }, - AVATAR_WITH_META_LIST: { - width: 256 - }, - ICON: { - minWdth: 48 - }, - STATUS_HINT: { - width: 96 - }, - WITH_META_LIST: { - width: 176 - }, - DEFAULT: { - width: 176 + if (onFocus) { + onFocus(e); } }; - return sizes[cellType]; -} - -var updateBatchData = function updateBatchData(data, rowIndexes, dataUpdate) { - var updatedData = _toConsumableArray(data); - var _iterator = _createForOfIteratorHelper(rowIndexes), - _step; + var onBlurHandler = function onBlurHandler(e) { + e.target.placeholder = placeholder; - try { - for (_iterator.s(); !(_step = _iterator.n()).done;) { - var rowIndex = _step.value; - updatedData[rowIndex] = _objectSpread2(_objectSpread2({}, updatedData[rowIndex]), dataUpdate); + if (onBlur) { + onBlur(e); } - } catch (err) { - _iterator.e(err); - } finally { - _iterator.f(); - } - - return updatedData; -}; -function translateData(schema, data) { - var newData = _objectSpread2({}, data); + }; - if (schema.translate) { - var translatedData = schema.translate(data); - newData[schema.name] = translatedData !== null && _typeof(translatedData) === 'object' ? _objectSpread2(_objectSpread2({}, newData[schema.name]), translatedData) : translatedData; - } + var onKeyDown = function onKeyDown(e) { + var index = parseInt(e.currentTarget.dataset.id, 10); + var prevIndex = index - 1; + var nextIndex = index + 1; + var prev = refs[prevIndex]; + var nextRef = refs[nextIndex]; - if (newData[schema.name] === null || _typeof(newData[schema.name]) !== 'object') { - newData[schema.name] = { - title: newData[schema.name] - }; - } + switch (e.key) { + case KEY_CODE.backspace: + { + e.preventDefault(); - return newData; -} -var filterData = function filterData() { - var schema = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; - var filterList = arguments.length > 2 ? arguments[2] : undefined; - var filteredData = data; + var vals = _toConsumableArray(values); - if (filterList) { - Object.keys(filterList).forEach(function (schemaName) { - var filters = filterList[schemaName]; - var sIndex = schema.findIndex(function (s) { - return s.name === schemaName; - }); - var onFilterChange = schema[sIndex].onFilterChange; + if (values[index]) { + vals[index] = ''; + setValues(vals); + } else if (prev && prev.current) { + vals[prevIndex] = ''; + prev.current.focus({ + preventScroll: true + }); + setValues(vals); + } - if (filters.length && onFilterChange) { - filteredData = filteredData.filter(function (d) { - return onFilterChange(d, filters); - }); - } - }); - } + break; + } - return filteredData; -}; -var sortData = function sortData() { - var schema = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; - var sortingList = arguments.length > 2 ? arguments[2] : undefined; + case KEY_CODE.left: + { + e.preventDefault(); - var sortedData = _toConsumableArray(data); + if (prev && prev.current) { + prev.current.focus({ + preventScroll: true + }); + } - sortingList === null || sortingList === void 0 ? void 0 : sortingList.forEach(function (l) { - var sIndex = schema.findIndex(function (s) { - return s.name === l.name; - }); + break; + } - if (sIndex !== -1) { - var defaultComparator = function defaultComparator(a, b) { - var aData = translateData(schema[sIndex], a); - var bData = translateData(schema[sIndex], b); - return aData[l.name].title.localeCompare(bData[l.name].title); - }; + case KEY_CODE.right: + { + e.preventDefault(); - var _schema$sIndex$compar = schema[sIndex].comparator, - comparator = _schema$sIndex$compar === void 0 ? defaultComparator : _schema$sIndex$compar; - sortedData.sort(comparator); - if (l.type === 'desc') sortedData.reverse(); - } - }); - return sortedData; -}; -var paginateData = function paginateData() { - var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; - var page = arguments.length > 1 ? arguments[1] : undefined; - var pageSize = arguments.length > 2 ? arguments[2] : undefined; - var start = (page - 1) * pageSize; - var end = start + pageSize; - var paginatedData = data.slice(start, end); - return paginatedData; -}; + if (nextRef && nextRef.current) { + nextRef.current.focus({ + preventScroll: true + }); + } -var moveToIndex = function moveToIndex(arr, from, to) { - if (from === to) return arr; - var newArr = arr; + break; + } - if (from < to) { - newArr = [].concat(_toConsumableArray(arr.slice(0, from)), _toConsumableArray(arr.slice(from + 1, to + 1)), [arr[from]], _toConsumableArray(arr.slice(to + 1))); - } else { - newArr = [].concat(_toConsumableArray(arr.slice(0, to)), [arr[from]], _toConsumableArray(arr.slice(to, from)), _toConsumableArray(arr.slice(from + 1))); - } + case KEY_CODE.up: + case KEY_CODE.down: + case KEY_CODE.e: + case KEY_CODE.E: + { + if (type === 'number') { + e.preventDefault(); + } - return newArr; -}; -var getTotalPages = function getTotalPages(totalRecords, pageSize) { - return Math.ceil(totalRecords / pageSize); -}; -var getSelectAll = function getSelectAll(data) { - if (data.length) { - var anyUnSelected = data.some(function (d) { - return !d._selected; - }); - var allUnSelected = data.every(function (d) { - return !d._selected; - }); - var indeterminate = data.length >= 0 && anyUnSelected && !allUnSelected; - var checked = !indeterminate && !allUnSelected; - return { - indeterminate: indeterminate, - checked: checked - }; - } + break; + } + } + }; - return { - indeterminate: false, - checked: false + var wrapperClassNames = function wrapperClassNames(i) { + return classnames({ + 'VerificationCodeInput-Input': true, + 'ml-4': i > 0 + }, className); }; + + return /*#__PURE__*/React__default.createElement("div", { + "data-test": "DesignSystem-VerificationCodeInput", + className: "VerificationCodeInput" + }, values.map(function (val, index) { + return /*#__PURE__*/React__default.createElement(Input, _extends$2({ + key: index, + className: wrapperClassNames(index), + size: "large", + minWidth: "40px", + value: val, + placeholder: placeholder, + onChange: onChangeHandler, + onKeyDown: onKeyDown, + onFocus: onFocusHandler, + onBlur: onBlurHandler, + "data-id": index, + ref: refs[index], + type: type + }, rest)); + })); }; -var hasSchema = function hasSchema(schema) { - return schema && !!schema.length; -}; -var getSchema = function getSchema(schema, loading, loaderSchema) { - var response = schema; - - if (!hasSchema(schema) && loading) { - response = loaderSchema; - } - return response; -}; -var getPluralSuffix = function getPluralSuffix(count) { - return count > 1 ? 's' : ''; +VerificationCodeInput.displayName = 'VerificationCodeInput'; +VerificationCodeInput.defaultProps = { + type: 'number', + fields: 4 }; -var defaultProps$1 = { - showHead: true, - loaderSchema: [], - schema: [], - data: [], - totalRecords: 0, - type: 'data', - size: 'standard', - page: 1, - pageSize: 15, - loading: false, - error: false, - sortingList: [], - filterList: {}, - showFilters: true +var IconMapping = { + success: 'check_circle', + info: 'info', + warning: 'warning', + alert: 'error' }; +var InlineMessage = function InlineMessage(props) { + var _classNames2; -var context = /*#__PURE__*/React__default.createContext(_objectSpread2(_objectSpread2({}, defaultProps$1), {}, { - ref: null -})); -var GridProvider = context.Provider; - -var GridNestedRow = function GridNestedRow(props) { - var context$1 = React.useContext(context); - var schema = context$1.schema, - loading = context$1.loading, - nestedRowRenderer = context$1.nestedRowRenderer; - var data = props.data, - rowIndex = props.rowIndex; - if (nestedRowRenderer) return nestedRowRenderer({ - data: data, - schema: schema, - loading: loading, - rowIndex: rowIndex - }); // return ( - // {JSON.stringify(data)} - // ) - // const { - // schema: propSchema - // } = _this.props; - // if (data._expanded) { - // const showHead = data._expanded.showHead; - // const schema = data._expanded.schema || propSchema; - // let gridData = data._expanded.data; - // if (!gridData) { - // const { - // _uid, - // _expanded, - // ...rest - // } = data; - // gridData = [rest]; - // } - // return ( - //
- // - //
- // ); - // } - - return null; + var appearance = props.appearance, + className = props.className, + description = props.description, + size = props.size; + var baseProps = extractBaseProps(props); + var InlineMessageClass = classnames(_defineProperty$1({}, 'InlineMessage', true), className); + var IconClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'InlineMessage-icon--warning', appearance === 'warning'), _defineProperty$1(_classNames2, 'InlineMessage-icon--small', size === 'small'), _defineProperty$1(_classNames2, 'InlineMessage-icon--regular', size === 'regular'), _classNames2)); + var DescriptionClass = classnames(_defineProperty$1({}, "InlineMessage-text--".concat(appearance), appearance)); + var IconSize = size === 'small' ? 14 : 16; + var TextWeight = size === 'small' ? 'medium' : undefined; + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-InlineMessage" + }, baseProps, { + className: InlineMessageClass + }), appearance !== 'default' && /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-InlineMessage--Icon", + name: IconMapping[appearance], + appearance: appearance, + className: IconClass, + size: IconSize + }), /*#__PURE__*/React.createElement(Text, { + size: size, + weight: TextWeight, + className: DescriptionClass, + "data-test": "DesignSystem-InlineMessage--Description" + }, description)); +}; +InlineMessage.displayName = 'InlineMessage'; +InlineMessage.defaultProps = { + appearance: 'default', + description: '', + size: 'regular' }; -var HeaderCell = function HeaderCell(props) { - var context$1 = React.useContext(context); - var schema = props.schema, - onMenuChange = props.onMenuChange, - onFilterChange = props.onFilterChange, - updateColumnSchema = props.updateColumnSchema; - var loading = context$1.loading, - draggable = context$1.draggable, - showMenu = context$1.showMenu, - sortingList = context$1.sortingList, - filterList = context$1.filterList, - headCellTooltip = context$1.headCellTooltip, - showFilters = context$1.showFilters, - schemaProp = context$1.schema; - var _schema$sorting = schema.sorting, - sorting = _schema$sorting === void 0 ? true : _schema$sorting, - name = schema.name, - filters = schema.filters, - pinned = schema.pinned; - var isValidSchema = hasSchema(schemaProp); - var listIndex = sortingList.findIndex(function (l) { - return l.name === name; - }); - var sorted = listIndex !== -1 ? sortingList[listIndex].type : null; - var el = /*#__PURE__*/React.createRef(); - var sortOptions = [{ - label: 'Sort Ascending', - value: 'sortAsc', - icon: 'arrow_downward' - }, { - label: 'Sort Descending', - value: 'sortDesc', - icon: 'arrow_upward' - }]; - var pinOptions = [{ - label: 'Pin Left', - value: 'pinLeft', - icon: 'skip_previous' - }, { - label: 'Pin Right', - value: 'pinRight', - icon: 'skip_next' - }]; - var unpinOption = { - label: 'Unpin', - value: 'unpin', - icon: 'replay' - }; - if (pinned === 'left') pinOptions[0] = unpinOption; - if (pinned === 'right') pinOptions[1] = unpinOption; - var hideOptions = [{ - label: 'Hide Column', - value: 'hide', - icon: 'cancel' - }]; - var unsortOption = { - label: 'Unsort', - value: 'unsort', - icon: 'unfold_more' - }; - if (sorted === 'asc') sortOptions[0] = unsortOption; - if (sorted === 'desc') sortOptions[1] = unsortOption; - var options = [].concat(pinOptions, hideOptions); - if (sorting) options = [].concat(sortOptions, _toConsumableArray(options)); - var classes = classnames({ - 'Grid-headCell': true, - 'Grid-headCell--draggable': draggable - }); - var filterOptions = filters ? filters.map(function (f) { - return _objectSpread2(_objectSpread2({}, f), {}, { - selected: filterList[name] && filterList[name].findIndex(function (fl) { - return fl === f.value; - }) !== -1 +var renderCheckbox = function renderCheckbox(list, handleOnChange, ChoiceListDisabled, size, alignment, selected) { + return list.map(function (item, checkboxIndex) { + var name = item.name, + value = item.value, + helpText = item.helpText, + disabled = item.disabled, + label = item.label; + return /*#__PURE__*/React.createElement(Checkbox, { + key: checkboxIndex, + label: label, + onChange: handleOnChange, + disabled: disabled || ChoiceListDisabled, + helpText: helpText, + size: size, + name: name, + value: value, + defaultChecked: selected.length !== 0 && selected.includes(value), + className: getCheckboxClassName(alignment, checkboxIndex) }); - }) : []; - - var renderLabel = function renderLabel() { - return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Text, { - weight: "strong", - className: "ellipsis--noWrap" - }, schema.displayName), sorting && /*#__PURE__*/React.createElement("div", { - className: "Grid-sortingIcons" - }, sorted ? sorted === 'asc' ? /*#__PURE__*/React.createElement(Icon, { - name: "arrow_downward" - }) : /*#__PURE__*/React.createElement(Icon, { - name: "arrow_upward" - }) : /*#__PURE__*/React.createElement(Icon, { - name: "unfold_more" - }))); - }; - - return /*#__PURE__*/React.createElement("div", { - key: name, - className: classes, - ref: el - }, /*#__PURE__*/React.createElement("div", { - className: "Grid-cellContent", - onClick: function onClick() { - if (!loading && sorting) { - if (sorted === 'asc') onMenuChange(name, 'sortDesc'); - if (sorted === 'desc') onMenuChange(name, 'unsort'); - if (!sorted) onMenuChange(name, 'sortAsc'); - } - } - }, loading && !isValidSchema ? /*#__PURE__*/React.createElement(Placeholder, { - withImage: false - }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { - length: "medium" - })) : /*#__PURE__*/React.createElement(React.Fragment, null, headCellTooltip ? /*#__PURE__*/React.createElement(Tooltip, { - position: "top-start", - triggerClass: "w-100 overflow-hidden", - tooltip: schema.displayName - }, renderLabel()) : renderLabel())), showFilters && filters && /*#__PURE__*/React.createElement(React.Fragment, null, loading && !isValidSchema ? /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement(Placeholder, null)) : /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Dropdown, { - menu: true, - showApplyButton: true, - withCheckbox: true, - triggerOptions: { - customTrigger: function customTrigger() { - return /*#__PURE__*/React.createElement(Button, { - icon: "filter_list", - appearance: "transparent" - }); - } - }, - options: filterOptions, - align: 'left', - onChange: function onChange(selected) { - return onFilterChange(name, selected); - }, - minWidth: 176 - }))), showMenu && /*#__PURE__*/React.createElement(React.Fragment, null, loading && !isValidSchema ? /*#__PURE__*/React.createElement("span", { - className: "ml-4" - }, /*#__PURE__*/React.createElement(Placeholder, null)) : /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Dropdown, { - key: "".concat(name, "-").concat(sorted, "-").concat(pinned), - menu: true, - optionType: "WITH_ICON", - triggerOptions: { - customTrigger: function customTrigger() { - return /*#__PURE__*/React.createElement(Button, { - icon: "more_vert_filled", - appearance: "transparent" - }); - } - }, - options: options, - align: 'left', - onChange: function onChange(selected) { - return onMenuChange(name, selected); - }, - minWidth: 176 - }))), schema.resizable && /*#__PURE__*/React.createElement("span", { - className: "Grid-cellResize", - onMouseDown: function onMouseDown() { - resizeCol({ - updateColumnSchema: updateColumnSchema - }, name, el.current); - } - })); + }); }; -var BodyCell = function BodyCell(props) { - var context$1 = React.useContext(context); - var data = props.data, - schema = props.schema, - expandedState = props.expandedState, - rowIndex = props.rowIndex, - colIndex = props.colIndex; - var size = context$1.size, - loading = context$1.loading, - nestedRows = context$1.nestedRows; +var renderRadio = function renderRadio(list, handleOnChange, ChoiceListDisabled, size, alignment, selected) { + return list.map(function (item, radioIndex) { + var name = item.name, + value = item.value, + helpText = item.helpText, + disabled = item.disabled, + label = item.label; + return /*#__PURE__*/React.createElement(Radio, { + key: radioIndex, + label: label, + onChange: handleOnChange, + disabled: disabled || ChoiceListDisabled, + helpText: helpText, + size: size, + name: name, + value: value, + defaultChecked: selected.length !== 0 && selected.includes(value), + className: getRadioClassName(alignment, radioIndex) + }); + }); +}; - var _expandedState = _slicedToArray(expandedState, 2), - expanded = _expandedState[0], - setExpanded = _expandedState[1]; +var getCheckboxClassName = function getCheckboxClassName(alignment, index) { + var _classNames; - var cellProps = { - rowIndex: rowIndex, - colIndex: colIndex, - size: size, - schema: schema, - data: data, - loading: loading, - expanded: expanded - }; - var nestedProps = { - data: data, - rowIndex: rowIndex - }; - var isNestedRowDisabled = !GridNestedRow(nestedProps); - return /*#__PURE__*/React.createElement("div", { - className: "Grid-cellContent" - }, colIndex === 0 && nestedRows && /*#__PURE__*/React.createElement(React.Fragment, null, !isNestedRowDisabled ? /*#__PURE__*/React.createElement(Icon, { - className: 'Grid-nestedRowTrigger', - name: expanded ? 'keyboard_arrow_up' : 'keyboard_arrow_down', - size: 20, - appearance: 'default', - onClick: function onClick(e) { - if (!isNestedRowDisabled) { - e.stopPropagation(); - setExpanded(!expanded); - } - } - }) : /*#__PURE__*/React.createElement("span", { - className: "Grid-nestedRowPlaceholder" - })), schema.cellRenderer ? schema.cellRenderer(cellProps) : /*#__PURE__*/React.createElement(GridCell, _extends$3({ - key: "".concat(rowIndex, "-").concat(colIndex) - }, cellProps))); + var ChoiceListCheckboxClass = classnames((_classNames = {}, _defineProperty$1(_classNames, "ChoiceList-checkbox--".concat(alignment), true), _defineProperty$1(_classNames, 'ml-0', index === 0 && alignment === 'horizontal'), _defineProperty$1(_classNames, 'mt-4', alignment === 'horizontal'), _classNames)); + return ChoiceListCheckboxClass; }; -var Cell = function Cell(props) { - var context$1 = React.useContext(context); - var isHead = props.isHead, - firstCell = props.firstCell, - schema = props.schema, - data = props.data, - rowIndex = props.rowIndex, - colIndex = props.colIndex, - expandedState = props.expandedState, - onSelectAll = props.onSelectAll, - onMenuChange = props.onMenuChange, - onFilterChange = props.onFilterChange, - updateColumnSchema = props.updateColumnSchema, - reorderColumn = props.reorderColumn; - var draggable = context$1.draggable, - separator = context$1.separator, - nestedRows = context$1.nestedRows, - ref = context$1.ref, - withCheckbox = context$1.withCheckbox; - var name = schema.name, - hidden = schema.hidden, - pinned = schema.pinned, - _schema$cellType = schema.cellType, - cellType = _schema$cellType === void 0 ? 'DEFAULT' : _schema$cellType; +var getRadioClassName = function getRadioClassName(alignment, index) { + var _classNames2; - var _getCellSize = getCellSize(cellType), - width = _getCellSize.width, - _getCellSize$minWidth = _getCellSize.minWidth, - minWidth = _getCellSize$minWidth === void 0 ? 96 : _getCellSize$minWidth, - _getCellSize$maxWidth = _getCellSize.maxWidth, - maxWidth = _getCellSize$maxWidth === void 0 ? 800 : _getCellSize$maxWidth; + var ChoiceListRadioClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, "ChoiceList-radio--".concat(alignment), true), _defineProperty$1(_classNames2, 'ml-0', index === 0 && alignment === 'horizontal'), _defineProperty$1(_classNames2, 'mt-4', alignment === 'horizontal'), _classNames2)); + return ChoiceListRadioClass; +}; - var cellClass = classnames({ - 'Grid-cell': true, - 'Grid-cell--head': isHead, - 'Grid-cell--body': !isHead, - 'Grid-cell--separator': !firstCell && (schema.separator !== undefined ? schema.separator : separator), - 'Grid-cell--nestedRow': !isHead && colIndex === 0 && nestedRows - }); - if (hidden) return null; - return /*#__PURE__*/React.createElement("div", { - key: "".concat(rowIndex, "-").concat(colIndex), - className: cellClass, - draggable: isHead && draggable, - onDragStart: function onDragStart(e) { - if (draggable) { - e.dataTransfer.setData('name', name); - if (pinned) e.dataTransfer.setData('type', pinned); +var ChoiceList = function ChoiceList(props) { + var title = props.title, + choices = props.choices, + _props$alignment = props.alignment, + alignment = _props$alignment === void 0 ? 'vertical' : _props$alignment, + _props$allowMultiple = props.allowMultiple, + allowMultiple = _props$allowMultiple === void 0 ? false : _props$allowMultiple, + onChange = props.onChange, + _props$disabled = props.disabled, + disabled = _props$disabled === void 0 ? false : _props$disabled, + _props$size = props.size, + size = _props$size === void 0 ? 'regular' : _props$size, + className = props.className; + var _props$selected = props.selected, + selected = _props$selected === void 0 ? [] : _props$selected; + var selectedChoiceValue = selected && selected || []; + var ChoiceListClass = classnames(_defineProperty$1({}, 'ChoiceList', true), className); + var ChoiceListVerticalClass = classnames(_defineProperty$1({}, 'ChoiceList--alignVertical', true)); + var ChoiceHorizontalClass = classnames(_defineProperty$1({}, 'ChoiceList--alignHorizontal', true)); + + var handleOnChange = function handleOnChange(e) { + if (e.target.checked && allowMultiple) { + if (!selectedChoiceValue.includes(e.target.value)) { + selectedChoiceValue = [].concat(_toConsumableArray(selectedChoiceValue), [e.target.value]); } - }, - onDragOver: function onDragOver(e) { - return e.preventDefault(); - }, - onDrop: function onDrop(e) { - if (draggable) { - var from = { - name: e.dataTransfer.getData('name'), - type: e.dataTransfer.getData('type') - }; - var to = { - name: name, - type: pinned || '' - }; - if (from.type === to.type) reorderColumn(from.name, to.name); + } else if (!e.target.checked && allowMultiple) { + selectedChoiceValue = selectedChoiceValue.filter(function (el) { + return el !== e.target.value; + }); + } + + if (!allowMultiple) { + if (!selectedChoiceValue.includes(e.target.value)) { + selectedChoiceValue = []; + selectedChoiceValue = [].concat(_toConsumableArray(selectedChoiceValue), [e.target.value]); } - }, - style: { - width: getWidth({ - ref: ref, - withCheckbox: withCheckbox - }, schema.width || width), - minWidth: getWidth({ - ref: ref, - withCheckbox: withCheckbox - }, schema.minWidth || minWidth), - maxWidth: getWidth({ - ref: ref, - withCheckbox: withCheckbox - }, schema.maxWidth || maxWidth) } - }, isHead ? /*#__PURE__*/React.createElement(HeaderCell, { - colIndex: colIndex, - schema: schema, - onSelectAll: onSelectAll, - onMenuChange: onMenuChange, - onFilterChange: onFilterChange, - updateColumnSchema: updateColumnSchema, - reorderColumn: reorderColumn - }) : /*#__PURE__*/React.createElement(BodyCell, { - rowIndex: rowIndex, - colIndex: colIndex, - data: data, - schema: schema, - expandedState: expandedState + + if (onChange) onChange(e, selectedChoiceValue); + }; + + return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("fieldset", { + className: ChoiceListClass, + "data-test": "DesignSystem-ChoiceList-Wrapper" + }, title && title.trim() && /*#__PURE__*/React.createElement(Label, { + withInput: true + }, title.trim()), allowMultiple ? /*#__PURE__*/React.createElement("div", { + className: "".concat(alignment === 'horizontal' ? ChoiceHorizontalClass : ChoiceListVerticalClass) + }, renderCheckbox(choices, handleOnChange, disabled, size, alignment, selected)) : /*#__PURE__*/React.createElement("div", { + className: "".concat(alignment === 'horizontal' ? ChoiceHorizontalClass : ChoiceListVerticalClass) + }, renderRadio(choices, handleOnChange, disabled, size, alignment, selected)))); +}; +ChoiceList.displayName = 'ChoiceList'; +ChoiceList.defaultProps = { + alignment: 'vertical', + size: 'regular', + allowMultiple: false, + disabled: false +}; + +var Divider = function Divider(props) { + var _classNames; + + var vertical = props.vertical, + appearance = props.appearance, + className = props.className; + var baseProps = extractBaseProps(props); + var DividerClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Divider', true), _defineProperty$1(_classNames, 'Divider--horizontal', !vertical), _defineProperty$1(_classNames, 'Divider--vertical', vertical), _defineProperty$1(_classNames, 'Divider--basic', !vertical && appearance !== 'header'), _defineProperty$1(_classNames, 'Divider--header', !vertical && appearance === 'header'), _classNames), className); + return /*#__PURE__*/React.createElement("hr", _extends$2({ + "data-test": "DesignSystem-Divider" + }, baseProps, { + className: DividerClass })); }; +Divider.displayName = 'Divider'; +Divider.defaultProps = { + appearance: 'basic', + vertical: false +}; -var GridHead = function GridHead(props) { - var context$1 = React.useContext(context); - var schema = props.schema, - onSelectAll = props.onSelectAll, - onMenuChange = props.onMenuChange, - onFilterChange = props.onFilterChange, - updateColumnSchema = props.updateColumnSchema, - reorderColumn = props.reorderColumn; - var withCheckbox = context$1.withCheckbox, - loading = context$1.loading, - selectAll = context$1.selectAll; - var pinnedSchema = schema.filter(function (s) { - return !s.hidden && s.pinned; - }); - var leftPinnedSchema = pinnedSchema.filter(function (s) { - return !s.hidden && s.pinned === 'left'; - }); - var rightPinnedSchema = pinnedSchema.filter(function (s) { - return !s.hidden && s.pinned === 'right'; - }); - var unpinnedSchema = schema.filter(function (s) { - return !s.hidden && !s.pinned; - }); +var HelpText = function HelpText(props) { + var error = props.error, + message = props.message, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classnames({ + 'mt-3': true + }, className); + if (!message) return null; - var renderCheckbox = function renderCheckbox(show) { - if (!show || !withCheckbox) return null; - return /*#__PURE__*/React.createElement("div", { - className: "Grid-cell Grid-cell--head Grid-cell--checkbox" - }, loading ? /*#__PURE__*/React.createElement(Placeholder, null) : /*#__PURE__*/React.createElement(Checkbox, _extends$3({}, selectAll, { - onChange: onSelectAll - }))); - }; + if (error) { + return /*#__PURE__*/React.createElement(InlineMessage, { + size: "small", + className: classes, + appearance: "alert", + description: message + }); + } - var renderSchema = function renderSchema(currSchema, shouldRenderCheckbox, pinned) { - if (currSchema.length) { - var _classNames; + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: classes + }), /*#__PURE__*/React.createElement(Text, { + appearance: "subtle", + size: "small", + weight: "medium" + }, message)); +}; +HelpText.displayName = 'HelpText'; - var classes = classnames((_classNames = { - 'Grid-cellGroup': true, - 'Grid-cellGroup--pinned': pinned - }, _defineProperty$2(_classNames, "Grid-cellGroup--pinned-".concat(pinned), pinned), _defineProperty$2(_classNames, 'Grid-cellGroup--main', !pinned), _classNames)); - return /*#__PURE__*/React.createElement("div", { - className: classes - }, renderCheckbox(shouldRenderCheckbox), currSchema.map(function (s, index) { - var cI = pinned === 'left' ? index : leftPinnedSchema.length + index; - if (pinned === 'right') cI += unpinnedSchema.length; - return /*#__PURE__*/React.createElement(Cell, { - key: "".concat(cI), - firstCell: !index, - colIndex: cI, - isHead: true, - schema: s, - onSelectAll: onSelectAll, - onMenuChange: onMenuChange, - onFilterChange: onFilterChange, - updateColumnSchema: updateColumnSchema, - reorderColumn: reorderColumn - }); - })); - } +var _excluded$j = ["children", "type", "className", "disabled", "tabIndex", "icon", "subtle", "size", "iconAlign", "iconType"]; +var sizeMapping = { + tiny: 12, + regular: 16 +}; +var LinkButton = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames, _classNames2; + + var children = props.children, + type = props.type, + className = props.className, + disabled = props.disabled, + tabIndex = props.tabIndex, + icon = props.icon, + subtle = props.subtle, + size = props.size, + iconAlign = props.iconAlign, + iconType = props.iconType, + rest = _objectWithoutProperties(props, _excluded$j); + + var buttonClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'LinkButton', true), _defineProperty$1(_classNames, "LinkButton--".concat(size), size), _defineProperty$1(_classNames, 'LinkButton--default', !subtle), _defineProperty$1(_classNames, 'LinkButton--subtle', subtle), _defineProperty$1(_classNames, "LinkButton--iconAlign-".concat(iconAlign), children && iconAlign), _defineProperty$1(_classNames, "".concat(className), className), _classNames)); + var iconClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'LinkButton-icon', true), _defineProperty$1(_classNames2, "LinkButton-icon--".concat(iconAlign), children && iconAlign), _classNames2)); + return /*#__PURE__*/React.createElement("button", _extends$2({ + ref: ref, + type: type, + "data-test": "DesignSystem-LinkButton", + className: buttonClass, + disabled: disabled, + tabIndex: tabIndex + }, rest), /*#__PURE__*/React.createElement(React.Fragment, null, icon && /*#__PURE__*/React.createElement("div", { + className: iconClass + }, /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-LinkButton--Icon", + name: icon, + type: iconType, + size: size && sizeMapping[size] + })), children)); +}); +LinkButton.displayName = 'LinkButton'; +LinkButton.defaultProps = { + size: 'regular', + type: 'button', + iconAlign: 'left' +}; + +var _excluded$i = ["children", "disabled", "className", "zIndex", "onClick"]; +var ActionCard = function ActionCard(props) { + var _classNames; + + var children = props.children, + disabled = props.disabled, + className = props.className, + zIndex = props.zIndex, + onClick = props.onClick, + rest = _objectWithoutProperties(props, _excluded$i); - return null; + var classes = classnames((_classNames = {}, _defineProperty$1(_classNames, 'ActionCard', true), _defineProperty$1(_classNames, 'ActionCard--disabled', disabled), _classNames), className); + + var onKeyDownHandler = function onKeyDownHandler(event) { + if (event.key === 'Enter' && onClick) { + onClick(event); + } }; - return /*#__PURE__*/React.createElement("div", { - className: "Grid-head" - }, /*#__PURE__*/React.createElement("div", { - className: "Grid-row Grid-row--head" - }, renderSchema(leftPinnedSchema, !!leftPinnedSchema.length, 'left'), renderSchema(unpinnedSchema, !leftPinnedSchema.length && !!unpinnedSchema.length), renderSchema(rightPinnedSchema, false, 'right'))); + return /*#__PURE__*/React.createElement("div", _extends$2({ + tabIndex: disabled ? -1 : 0, + role: "link", + "data-test": "DesignSystem-ActionCard", + className: classes, + onClick: onClick, + onKeyDown: onKeyDownHandler + }, rest), disabled && /*#__PURE__*/React.createElement("div", { + style: { + zIndex: zIndex + }, + "data-test": "DesignSystem-ActionCard-Overlay", + className: "ActionCard-overlay--disabled" + }), children); }; +ActionCard.displayName = 'ActionCard'; -function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } -} +var selectedCardValues = new Map(); +function useMultiSelect() { + var _React$useState = React.useState([]), + _React$useState2 = _slicedToArray(_React$useState, 2), + selectedCardIds = _React$useState2[0], + setSelectedCardIds = _React$useState2[1]; -function _defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } -} + var isCardSelected = function isCardSelected(id) { + return selectedCardIds.includes(id); + }; -function _createClass(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties(Constructor.prototype, protoProps); - if (staticProps) _defineProperties(Constructor, staticProps); - return Constructor; -} + var updateCardSelection = function updateCardSelection(id, value) { + var idList = _toConsumableArray(selectedCardIds); -function _defineProperty(obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } + if (isCardSelected(id)) { + idList = selectedCardIds.filter(function (cardKey) { + return id !== cardKey; + }); + selectedCardValues["delete"](id); + } else { + idList.push(id); + selectedCardValues.set(id, value); + } - return obj; + setSelectedCardIds(idList); + }; + + return { + selectedCardIds: selectedCardIds, + selectedCardValues: selectedCardValues, + isCardSelected: isCardSelected, + updateCardSelection: updateCardSelection + }; } -function _extends() { - _extends = Object.assign || function (target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; +function useSingleSelect() { + var _React$useState = React.useState([]), + _React$useState2 = _slicedToArray(_React$useState, 2), + selectedCardIds = _React$useState2[0], + setSelectedCardIds = _React$useState2[1]; - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } - } - } + var _React$useState3 = React.useState([]), + _React$useState4 = _slicedToArray(_React$useState3, 2), + selectedCardValues = _React$useState4[0], + setSelectedCardValues = _React$useState4[1]; - return target; + var isCardSelected = function isCardSelected(id) { + return selectedCardIds.includes(id); }; - return _extends.apply(this, arguments); -} + var updateCardSelection = function updateCardSelection(id, value) { + var idList = _toConsumableArray(selectedCardIds); -function _inherits(subClass, superClass) { - if (typeof superClass !== "function" && superClass !== null) { - throw new TypeError("Super expression must either be null or a function"); - } + var valueList = _toConsumableArray(selectedCardValues); - subClass.prototype = Object.create(superClass && superClass.prototype, { - constructor: { - value: subClass, - writable: true, - configurable: true + if (selectedCardIds.includes(id)) { + idList = []; + valueList = []; + } else { + idList = [id]; + valueList = value ? [value] : []; } - }); - if (superClass) _setPrototypeOf(subClass, superClass); -} -function _getPrototypeOf(o) { - _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { - return o.__proto__ || Object.getPrototypeOf(o); + setSelectedCardIds(idList); + setSelectedCardValues(valueList); }; - return _getPrototypeOf(o); -} -function _setPrototypeOf(o, p) { - _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { - o.__proto__ = p; - return o; + return { + selectedCardIds: selectedCardIds, + selectedCardValues: selectedCardValues, + isCardSelected: isCardSelected, + updateCardSelection: updateCardSelection }; - - return _setPrototypeOf(o, p); -} - -function _isNativeReflectConstruct() { - if (typeof Reflect === "undefined" || !Reflect.construct) return false; - if (Reflect.construct.sham) return false; - if (typeof Proxy === "function") return true; - - try { - Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); - return true; - } catch (e) { - return false; - } } -function _objectWithoutPropertiesLoose(source, excluded) { - if (source == null) return {}; - var target = {}; - var sourceKeys = Object.keys(source); - var key, i; +var _excluded$h = ["children", "onClick", "disabled", "id", "cardValue", "overlayZIndex", "selected", "className"]; +var SelectionCard = function SelectionCard(props) { + var _classNames; - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - target[key] = source[key]; - } + var children = props.children, + onClick = props.onClick, + disabled = props.disabled, + id = props.id, + cardValue = props.cardValue, + overlayZIndex = props.overlayZIndex, + selected = props.selected, + className = props.className, + rest = _objectWithoutProperties(props, _excluded$h); - return target; -} + var classes = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Selection-card', true), _defineProperty$1(_classNames, 'Selection-card--selected', selected), _defineProperty$1(_classNames, 'Selection-card--disabled', disabled && !selected), _defineProperty$1(_classNames, 'Selection-card--selected-disabled', disabled && selected), _classNames), className); -function _objectWithoutProperties(source, excluded) { - if (source == null) return {}; + var onClickHandler = function onClickHandler(event) { + onClick && onClick(event, id, cardValue); + }; - var target = _objectWithoutPropertiesLoose(source, excluded); + var onKeyDownHandler = function onKeyDownHandler(event) { + if (event.key === 'Enter') { + onClickHandler(event); + } + }; - var key, i; + return /*#__PURE__*/React.createElement("div", _extends$2({ + role: "checkbox", + "aria-checked": selected, + tabIndex: 0, + onKeyDown: onKeyDownHandler, + onClick: function onClick(event) { + return onClickHandler(event); + }, + className: classes, + "data-test": "DesignSystem-SelectionCard" + }, rest), /*#__PURE__*/React.createElement("div", { + className: "Selection-card-overlay", + style: { + zIndex: overlayZIndex + }, + "data-test": "DesignSystem-SelectionCard-Overlay" + }), children); +}; +SelectionCard.defaultProps = { + disabled: false, + overlayZIndex: 2 +}; +SelectionCard.useMultiSelect = useMultiSelect; +SelectionCard.useSingleSelect = useSingleSelect; - if (Object.getOwnPropertySymbols) { - var sourceSymbolKeys = Object.getOwnPropertySymbols(source); +function arrayMove(array, from, to) { + array = array.slice(); + array.splice(to < 0 ? array.length + to : to, 0, array.splice(from, 1)[0]); + return array; +} +function getTranslateOffset(element) { + var style = window.getComputedStyle(element); + return Math.max(parseInt(style['margin-top'], 10), parseInt(style['margin-bottom'], 10)) + element.getBoundingClientRect().height; +} +function isTouchEvent(event) { + return event.touches && event.touches.length || event.changedTouches && event.changedTouches.length; +} +function transformItem(element) { + var offsetY = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0; + var offsetX = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0; + if (!element) return; - for (i = 0; i < sourceSymbolKeys.length; i++) { - key = sourceSymbolKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; - target[key] = source[key]; - } + if (offsetY === null || offsetX === null) { + element.style.removeProperty('transform'); + return; } - return target; + element.style.transform = "translate(".concat(offsetX, "px, ").concat(offsetY, "px)"); } - -function _assertThisInitialized(self) { - if (self === void 0) { - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); +function setItemTransition(element, duration, timing) { + if (element) { + element.style['transition'] = "transform ".concat(duration, "ms").concat(timing ? " ".concat(timing) : ''); } +} // returns the "slot" for the targetValue, aka where it should go +// in an ordered "array", it starts with -1 index - return self; -} +function binarySearch(array, targetValue) { + var min = 0; + var max = array.length - 1; + var guess; -function _possibleConstructorReturn(self, call) { - if (call && (typeof call === "object" || typeof call === "function")) { - return call; + while (min <= max) { + guess = Math.floor((max + min) / 2); + + if (!array[guess + 1] || array[guess] <= targetValue && array[guess + 1] >= targetValue) { + return guess; + } else if (array[guess] < targetValue && array[guess + 1] < targetValue) { + min = guess + 1; + } else { + max = guess - 1; + } } - return _assertThisInitialized(self); -} + return -1; +} // A throttle function that uses requestAnimationFrame to rate limit -function _createSuper(Derived) { - var hasNativeReflectConstruct = _isNativeReflectConstruct(); +var schd = function schd(fn) { + var lastArgs = []; + var frameId = null; - return function _createSuperInternal() { - var Super = _getPrototypeOf(Derived), - result; + var wrapperFn = function wrapperFn() { + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } - if (hasNativeReflectConstruct) { - var NewTarget = _getPrototypeOf(this).constructor; + lastArgs = args; - result = Reflect.construct(Super, arguments, NewTarget); - } else { - result = Super.apply(this, arguments); + if (frameId) { + return; } - return _possibleConstructorReturn(this, result); + frameId = requestAnimationFrame(function () { + frameId = null; + fn.apply(void 0, _toConsumableArray(lastArgs)); + }); + }; + + wrapperFn.cancel = function () { + if (frameId) { + cancelAnimationFrame(frameId); + } }; -} -var isInView = function isInView(container, element) { - var containerTop = container.offsetTop; - var elementRect = element.getBoundingClientRect(); - var elementTop = elementRect.top; - var elementHeight = elementRect.height; - return elementHeight - (containerTop - elementTop) > 0; + return wrapperFn; }; -var VirtualScroll = /*#__PURE__*/function (_React$Component) { - _inherits(VirtualScroll, _React$Component); +var AUTOSCROLL_ACTIVE_OFFSET = 200; +var AUTOSCROLL_SPEED_RATIO = 10; - var _super = _createSuper(VirtualScroll); +var Draggable = /*#__PURE__*/function (_React$Component) { + _inherits(Draggable, _React$Component); - function VirtualScroll(props) { + var _super = _createSuper(Draggable); + + function Draggable(props) { var _this; - _classCallCheck(this, VirtualScroll); + _classCallCheck(this, Draggable); _this = _super.call(this, props); - _this.state = { - offset: props.offset - }; - _this.lastScrollTop = 0; - _this.avgRowHeight = props.minItemHeight; - return _this; - } - _createClass(VirtualScroll, [{ - key: "componentDidMount", - value: function componentDidMount() { - var _this2 = this; + _defineProperty$1(_assertThisInitialized$1(_this), "listRef", /*#__PURE__*/React.createRef()); + + _defineProperty$1(_assertThisInitialized$1(_this), "ghostRef", /*#__PURE__*/React.createRef()); + + _defineProperty$1(_assertThisInitialized$1(_this), "topOffsets", []); + + _defineProperty$1(_assertThisInitialized$1(_this), "itemTranslateOffsets", []); + + _defineProperty$1(_assertThisInitialized$1(_this), "initialYOffset", 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "lastScroll", 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "lastYOffset", 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "lastListYOffset", 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "dropTimeout", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "needle", -1); + + _defineProperty$1(_assertThisInitialized$1(_this), "afterIndex", -2); + _defineProperty$1(_assertThisInitialized$1(_this), "state", { + itemDragged: -1, + itemDraggedOutOfBounds: -1, + selectedItem: -1, + initialX: 0, + initialY: 0, + targetX: 0, + targetY: 0, + targetHeight: 0, + targetWidth: 0, + scrollingSpeed: 0, + scrollWindow: false + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "schdOnMouseMove", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "schdOnTouchMove", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "schdOnEnd", void 0); + + _defineProperty$1(_assertThisInitialized$1(_this), "doScrolling", function () { + var _this$state = _this.state, + scrollingSpeed = _this$state.scrollingSpeed, + scrollWindow = _this$state.scrollWindow; + var listEl = _this.listRef.current; window.requestAnimationFrame(function () { - if (_this2.listRef) { - _this2.listRef.scrollTop = _this2.state.offset * _this2.avgRowHeight; + if (scrollWindow) { + window.scrollTo(window.pageXOffset, window.pageYOffset + scrollingSpeed * 1.5); + } else { + listEl.scrollTop += scrollingSpeed; + } + + if (scrollingSpeed !== 0) { + _this.doScrolling(); } }); - } - }, { - key: "componentDidUpdate", - value: function componentDidUpdate(_prevProps, prevState) { - if (prevState.offset > this.state.offset) { - this.updateOffset(prevState); + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "getChildren", function () { + if (_this.listRef && _this.listRef.current) { + return Array.from(_this.listRef.current.children); } - } - }, { - key: "updateOffset", - value: function updateOffset(prevState) { - var offsetDiff = prevState.offset - this.state.offset; - - if (this.listRef) { - var el = this.listRef; - var items = el.querySelectorAll(".VS-item"); - var heightAdded = 0; - var currOffset = prevState.offset; - var start = Math.min(this.state.offset, this.props.buffer); - var end = start + offsetDiff; - - for (var i = Math.min(items.length, end) - 1; i >= start; i--) { - var inView = isInView(el, items[i]); - - if (inView) { - currOffset--; - var rowHeight = items[i].clientHeight; - heightAdded += rowHeight; - } else { - break; - } - } - if (items.length < end) { - var diff = end - items.length; - heightAdded += diff * this.props.minItemHeight; - currOffset -= diff; - } + return []; + }); - var newAvgRowHeight = currOffset === 0 ? this.props.minItemHeight : (this.avgRowHeight * prevState.offset - heightAdded) / currOffset; - this.setState({ - offset: currOffset - }); - this.avgRowHeight = Math.max(this.props.minItemHeight, newAvgRowHeight); + _defineProperty$1(_assertThisInitialized$1(_this), "calculateOffsets", function () { + _this.topOffsets = _this.getChildren().map(function (item) { + return item.getBoundingClientRect().top; + }); + _this.itemTranslateOffsets = _this.getChildren().map(function (item) { + return getTranslateOffset(item); + }); + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "getTargetIndex", function (e) { + return _this.getChildren().findIndex(function (child) { + return child === e.target || child.contains(e.target); + }); + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "onMouseOrTouchStart", function (e) { + var _e$target; + + if (_this.dropTimeout && _this.state.itemDragged > -1) { + window.clearTimeout(_this.dropTimeout); + + _this.finishDrop(); } - } - }, { - key: "onScrollHandler", - value: function onScrollHandler(event) { - if (this.listRef) { - var _this$props = this.props, - totalLength = _this$props.totalLength, - length = _this$props.length, - buffer = _this$props.buffer; - var offset = this.state.offset; - var avgRowHeight = this.avgRowHeight; - var el = this.listRef; - var scrollTop = el.scrollTop; - var direction = Math.floor(scrollTop - this.lastScrollTop); - if (direction === 0) return; - var items = el.querySelectorAll(".VS-item"); - var newOffset = offset; - var newAvgRowHeight = avgRowHeight; - var start = Math.min(offset, buffer); - - if (direction > 0) { - if (offset < totalLength - length) { - var heightAdded = 0; - - for (var i = start; i < items.length; i++) { - var inView = isInView(el, items[i]); - var rowHeight = items[i].clientHeight; - - if (!inView) { - heightAdded += rowHeight; - newOffset++; - } else { - break; - } - } - if (heightAdded < direction) { - var heightLeft = direction - heightAdded; - var offsetToBeAdded = Math.floor(heightLeft / this.props.minItemHeight); - newOffset += offsetToBeAdded; - heightAdded += offsetToBeAdded * this.props.minItemHeight; - } + var isTouch = isTouchEvent(e); + if (!isTouch && e.button !== 0) return; - newAvgRowHeight = newOffset > 0 ? (offset * avgRowHeight + heightAdded) / newOffset : this.props.minItemHeight; - this.setState({ - offset: Math.min(newOffset, totalLength - length) - }); - this.avgRowHeight = Math.max(this.props.minItemHeight, newAvgRowHeight); - } - } else { - var scrollDiff = items[start].getBoundingClientRect().y - el.getBoundingClientRect().y; + var index = _this.getTargetIndex(e); + + var listItemTouched = _this.getChildren()[index]; - if (scrollDiff > 0) { - var offsetDiff = Math.floor(scrollDiff / this.props.minItemHeight) || 1; + var isValidDragHandle = (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.classList.contains('Listbox-item--drag-icon'); + if (!isValidDragHandle) return; + e.preventDefault(); + + if (isTouch) { + var opts = { + passive: false + }; + listItemTouched.style.touchAction = 'none'; + document.addEventListener('touchend', _this.schdOnEnd, opts); + document.addEventListener('touchmove', _this.schdOnTouchMove, opts); + document.addEventListener('touchcancel', _this.schdOnEnd, opts); + } else { + document.addEventListener('mousemove', _this.schdOnMouseMove); + document.addEventListener('mouseup', _this.schdOnEnd); - var _newOffset = offset - offsetDiff; + var listItemDragged = _this.getChildren()[_this.state.itemDragged]; - if (_newOffset < totalLength - (length + buffer)) { - this.setState({ - offset: Math.max(0, _newOffset) - }); - } - } + if (listItemDragged && listItemDragged.style) { + listItemDragged.style.touchAction = ''; } - - this.lastScrollTop = scrollTop; } - if (this.props.onScroll) this.props.onScroll(event); - } - }, { - key: "renderItems", - value: function renderItems(start, end) { - var renderItem = this.props.renderItem; - return Array.from({ - length: end - start + 1 - }, function (_, index) { - var rowIndex = start + index; - var component = renderItem(rowIndex); - return /*#__PURE__*/React.cloneElement(component, { - key: rowIndex, - className: ["VS-item", component.props.className].join(' ').trim() + _this.onStart(listItemTouched, isTouch ? e.touches[0].clientX : e.clientX, isTouch ? e.touches[0].clientY : e.clientY, index); + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "getYOffset", function () { + var listScroll = _this.listRef.current ? _this.listRef.current.scrollTop : 0; + return window.pageYOffset + listScroll; + }); + + _defineProperty$1(_assertThisInitialized$1(_this), "onStart", function (target, clientX, clientY, index) { + if (_this.state.selectedItem > -1) { + _this.setState({ + selectedItem: -1 }); - }); - } - }, { - key: "render", - value: function render() { - var _this3 = this; - var _this$props2 = this.props, - totalLength = _this$props2.totalLength, - length = _this$props2.length, - buffer = _this$props2.buffer; - _this$props2.offset; - _this$props2.renderItem; - _this$props2.minItemHeight; - var forwardRef = _this$props2.forwardRef, - rest = _objectWithoutProperties(_this$props2, ["totalLength", "length", "buffer", "offset", "renderItem", "minItemHeight", "forwardRef"]); + _this.needle = -1; + } - var _this$state = this.state, - init = _this$state.init, - offset = _this$state.offset; - var avgRowHeight = this.avgRowHeight; - var start = Math.max(0, offset - buffer); - var end = Math.min(offset + (length + buffer) - 1, totalLength - 1); - var topPadding = Math.max(0, start * avgRowHeight); - var bottomPadding = Math.max(0, (totalLength - end - 1) * avgRowHeight); - return /*#__PURE__*/React.createElement("div", _extends({}, rest, { - ref: function ref(el) { - _this3.listRef = el; - if (forwardRef) forwardRef.current = el; - if (!init) _this3.setState({ - init: true - }); - }, - onScroll: this.onScrollHandler.bind(this) - }), init && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { - style: { - flexShrink: 0, - height: topPadding - } - }), this.renderItems(start, end), /*#__PURE__*/React.createElement("div", { - style: { - flexShrink: 0, - height: bottomPadding - } - }))); - } - }]); + var targetRect = target.getBoundingClientRect(); + var targetStyles = window.getComputedStyle(target); - return VirtualScroll; -}(React.Component); + _this.calculateOffsets(); -_defineProperty(VirtualScroll, "defaultProps", { - buffer: 10, - length: 30, - offset: 0 -}); + _this.initialYOffset = _this.getYOffset(); + _this.lastYOffset = window.pageYOffset; + _this.lastListYOffset = _this.listRef.current.scrollTop; -var index = /*#__PURE__*/React.forwardRef(function (props, ref) { - return /*#__PURE__*/React.createElement(VirtualScroll, _extends({ - forwardRef: ref - }, props)); -}); + _this.setState({ + itemDragged: index, + targetX: targetRect.left - parseInt(targetStyles['margin-left'], 10), + targetY: targetRect.top - parseInt(targetStyles['margin-top'], 10), + targetHeight: targetRect.height, + targetWidth: targetRect.width, + initialX: clientX, + initialY: clientY + }); + }); -var GridRow = function GridRow(props) { - var context$1 = React.useContext(context); - var type = context$1.type, - onRowClick = context$1.onRowClick, - loading = context$1.loading, - withCheckbox = context$1.withCheckbox, - nestedRows = context$1.nestedRows; - var schema = props.schema, - data = props.data, - rI = props.rowIndex, - onSelect = props.onSelect, - className = props.className; - var rowRef = React.useRef(null); + _defineProperty$1(_assertThisInitialized$1(_this), "onMouseMove", function (e) { + e.cancelable && e.preventDefault(); - var _React$useState = React.useState(false), - _React$useState2 = _slicedToArray(_React$useState, 2), - expanded = _React$useState2[0], - setExpanded = _React$useState2[1]; + _this.onMove(e.clientX, e.clientY); + }); - var rowClasses = classnames('Grid-row', 'Grid-row--body', { - 'Grid-row--selected': data._selected - }); - var onClickHandler = React.useCallback(function () { - if (type === 'resource' && !loading) { - if (onRowClick) { - onRowClick(data, rI); - } - } - }, [data, rI]); - var pinnedSchema = schema.filter(function (s) { - return !s.hidden && s.pinned; - }); - var leftPinnedSchema = pinnedSchema.filter(function (s) { - return !s.hidden && s.pinned === 'left'; - }); - var rightPinnedSchema = pinnedSchema.filter(function (s) { - return !s.hidden && s.pinned === 'right'; - }); - var unpinnedSchema = schema.filter(function (s) { - return !s.hidden && !s.pinned; - }); + _defineProperty$1(_assertThisInitialized$1(_this), "onTouchMove", function (e) { + e.cancelable && e.preventDefault(); - var renderCheckbox = function renderCheckbox(show) { - if (!show || !withCheckbox) return null; - return /*#__PURE__*/React.createElement("div", { - className: "Grid-cell Grid-cell--body Grid-cell--checkbox", - onClick: function onClick(e) { - return e.stopPropagation(); - } - }, loading ? /*#__PURE__*/React.createElement(Placeholder, null) : /*#__PURE__*/React.createElement(Checkbox, { - checked: !!data._selected, - onChange: function onChange(event) { - onSelect(rI, event.target.checked); - } - })); - }; + _this.onMove(e.touches[0].clientX, e.touches[0].clientY); + }); - var renderSchema = function renderSchema(currSchema, shouldRenderCheckbox, pinned) { - if (currSchema.length) { - var _classNames; + _defineProperty$1(_assertThisInitialized$1(_this), "onWheel", function (e) { + if (_this.state.itemDragged < 0) return; + _this.lastScroll = _this.listRef.current.scrollTop += e.deltaY; - var classes = classnames((_classNames = { - 'Grid-cellGroup': true, - 'Grid-cellGroup--pinned': pinned - }, _defineProperty$2(_classNames, "Grid-cellGroup--pinned-".concat(pinned), pinned), _defineProperty$2(_classNames, 'Grid-cellGroup--main', !pinned), _classNames)); - return /*#__PURE__*/React.createElement("div", { - className: classes - }, renderCheckbox(shouldRenderCheckbox), currSchema.map(function (s, index) { - var cI = pinned === 'left' ? index : leftPinnedSchema.length + index; - if (pinned === 'right') cI += unpinnedSchema.length; - return /*#__PURE__*/React.createElement(Cell, { - key: "".concat(rI, "-").concat(cI), - rowIndex: rI, - colIndex: cI, - firstCell: !index, - schema: s, - data: data, - expandedState: [expanded, setExpanded] - }); - })); - } + _this.moveOtherItems(); + }); - return null; - }; + _defineProperty$1(_assertThisInitialized$1(_this), "onMove", function (clientX, clientY) { + if (_this.state.itemDragged === -1) return null; + transformItem(_this.ghostRef.current, clientY - _this.state.initialY, _this.props.lockVertically ? 0 : clientX - _this.state.initialX); - var wrapperClasses = classnames(className, { - 'Grid-rowWrapper': true - }); - return /*#__PURE__*/React.createElement("div", { - className: wrapperClasses - }, /*#__PURE__*/React.createElement("div", { - className: rowClasses, - onClick: onClickHandler, - ref: rowRef - }, renderSchema(leftPinnedSchema, !!leftPinnedSchema.length, 'left'), renderSchema(unpinnedSchema, !leftPinnedSchema.length && !!unpinnedSchema.length), renderSchema(rightPinnedSchema, false, 'right')), nestedRows && expanded && /*#__PURE__*/React.createElement("div", { - className: "Grid-nestedRow" - }, /*#__PURE__*/React.createElement(GridNestedRow, { - data: data, - rowIndex: rI - }))); -}; -GridRow.defaultProps = { - data: {} -}; + _this.autoScrolling(clientY); -var GridBody = function GridBody(props) { - var context$1 = React.useContext(context); - var data = context$1.data, - ref = context$1.ref, - size = context$1.size, - loading = context$1.loading, - error = context$1.error, - withPagination = context$1.withPagination, - page = context$1.page, - pageSize = context$1.pageSize, - totalRecords = context$1.totalRecords, - errorTemplate = context$1.errorTemplate; + _this.moveOtherItems(); - if (!loading && error) { - return errorTemplate ? typeof errorTemplate === 'function' ? errorTemplate({}) : errorTemplate : null; - } + return; + }); - var schema = props.schema, - prevPageInfo = props.prevPageInfo, - updatePrevPageInfo = props.updatePrevPageInfo, - onSelect = props.onSelect; - React.useEffect(function () { - var gridBodyEl = ref.querySelector('.Grid-body'); + _defineProperty$1(_assertThisInitialized$1(_this), "moveOtherItems", function () { + var targetRect = _this.ghostRef.current.getBoundingClientRect(); - if (gridBodyEl) { - window.requestAnimationFrame(function () { - if (prevPageInfo.page === page) { - gridBodyEl.scrollTop = prevPageInfo.scrollTop; - } - }); - } + var itemVerticalCenter = targetRect.top + targetRect.height / 2; + var offset = getTranslateOffset(_this.getChildren()[_this.state.itemDragged]); - return function () { - if (gridBodyEl) { - updatePrevPageInfo({ - page: page, - scrollTop: gridBodyEl.scrollTop + var currentYOffset = _this.getYOffset(); // adjust offsets if scrolling happens during the item movement + + + if (_this.initialYOffset !== currentYOffset) { + _this.topOffsets = _this.topOffsets.map(function (offset) { + return offset - (currentYOffset - _this.initialYOffset); }); + _this.initialYOffset = currentYOffset; } - }; - }, []); - var minRowHeight = { - comfortable: 40, - standard: 40, - compressed: 32, - tight: 24 - }; - var totalPages = Math.ceil(totalRecords / pageSize); - var isLastPage = withPagination && page === totalPages; - var dataLength = isLastPage ? totalRecords - (page - 1) * pageSize : loading ? pageSize : withPagination ? Math.min(totalRecords, pageSize) : totalRecords; - var renderItem = function renderItem(rowIndex) { - return /*#__PURE__*/React.createElement(GridRow, { - rowIndex: rowIndex, - data: data[rowIndex], - schema: schema, - onSelect: onSelect - }); - }; + if (_this.isDraggedItemOutOfBounds() && _this.props.removableByMove) { + _this.afterIndex = _this.topOffsets.length + 1; + } else { + _this.afterIndex = binarySearch(_this.topOffsets, itemVerticalCenter); + } - return /*#__PURE__*/React.createElement(index, { - className: "Grid-body", - minItemHeight: minRowHeight[size], - totalLength: dataLength, - length: 20, - buffer: 7, - renderItem: renderItem - }); -}; + _this.animateItems(_this.afterIndex === -1 ? 0 : _this.afterIndex, _this.state.itemDragged, offset); + }); -var Grid = /*#__PURE__*/function (_React$Component) { - _inherits$1(Grid, _React$Component); + _defineProperty$1(_assertThisInitialized$1(_this), "autoScrolling", function (clientY) { + var _getBoundingClientRec = _this.listRef.current.getBoundingClientRect(), + top = _getBoundingClientRec.top, + bottom = _getBoundingClientRec.bottom, + height = _getBoundingClientRec.height; - var _super = _createSuper$1(Grid); + var viewportHeight = window.innerHeight || document.documentElement.clientHeight; // auto scrolling for the window (down) - function Grid(props) { - var _this; + if (bottom > viewportHeight && viewportHeight - clientY < AUTOSCROLL_ACTIVE_OFFSET) { + _this.setState({ + scrollingSpeed: Math.round((AUTOSCROLL_ACTIVE_OFFSET - (viewportHeight - clientY)) / AUTOSCROLL_SPEED_RATIO), + scrollWindow: true + }); // auto scrolling for the window (up) - _classCallCheck$1(this, Grid); + } else if (top < 0 && clientY < AUTOSCROLL_ACTIVE_OFFSET) { + _this.setState({ + scrollingSpeed: Math.round((AUTOSCROLL_ACTIVE_OFFSET - clientY) / -AUTOSCROLL_SPEED_RATIO), + scrollWindow: true + }); + } else { + if (_this.state.scrollWindow && _this.state.scrollingSpeed !== 0) { + _this.setState({ + scrollingSpeed: 0, + scrollWindow: false + }); + } // auto scrolling for containers with overflow - _this = _super.call(this, props); - _defineProperty$2(_assertThisInitialized$2(_this), "gridRef", null); + if (height + 20 < _this.listRef.current.scrollHeight) { + var scrollingSpeed = 0; - _defineProperty$2(_assertThisInitialized$2(_this), "isHeadSyncing", false); + if (clientY - top < AUTOSCROLL_ACTIVE_OFFSET) { + scrollingSpeed = Math.round((AUTOSCROLL_ACTIVE_OFFSET - (clientY - top)) / -AUTOSCROLL_SPEED_RATIO); + } else if (bottom - clientY < AUTOSCROLL_ACTIVE_OFFSET) { + scrollingSpeed = Math.round((AUTOSCROLL_ACTIVE_OFFSET - (bottom - clientY)) / AUTOSCROLL_SPEED_RATIO); + } - _defineProperty$2(_assertThisInitialized$2(_this), "isBodySyncing", false); + if (_this.state.scrollingSpeed !== scrollingSpeed) { + _this.setState({ + scrollingSpeed: scrollingSpeed + }); + } + } + } + }); - _defineProperty$2(_assertThisInitialized$2(_this), "syncScroll", function (type) { - return function () { - var gridHeadEl = _this.gridRef.querySelector('.Grid-head'); + _defineProperty$1(_assertThisInitialized$1(_this), "animateItems", function (needle, movedItem, offset) { + var animateMovedItem = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; - var gridBodyEl = _this.gridRef.querySelector('.Grid-body'); + _this.getChildren().forEach(function (item, i) { + setItemTransition(item, _this.props.transitionDuration); - if (type === 'head') { - if (!_this.isHeadSyncing) { - _this.isBodySyncing = true; - gridBodyEl.scrollLeft = gridHeadEl.scrollLeft; + if (movedItem === i && animateMovedItem) { + if (movedItem === needle) { + return transformItem(item, null); } - _this.isHeadSyncing = false; + transformItem(item, movedItem < needle ? _this.itemTranslateOffsets.slice(movedItem + 1, needle + 1).reduce(function (a, b) { + return a + b; + }, 0) : _this.itemTranslateOffsets.slice(needle, movedItem).reduce(function (a, b) { + return a + b; + }, 0) * -1); + } else if (movedItem < needle && i > movedItem && i <= needle) { + transformItem(item, -offset); + } else if (i < movedItem && movedItem > needle && i >= needle) { + transformItem(item, offset); + } else { + transformItem(item, null); } + }); + }); - if (type === 'body') { - if (!_this.isBodySyncing) { - _this.isHeadSyncing = true; - gridHeadEl.scrollLeft = gridBodyEl.scrollLeft; - } + _defineProperty$1(_assertThisInitialized$1(_this), "isDraggedItemOutOfBounds", function () { + var initialRect = _this.getChildren()[_this.state.itemDragged].getBoundingClientRect(); - _this.isBodySyncing = false; + var targetRect = _this.ghostRef.current.getBoundingClientRect(); + + if (Math.abs(initialRect.left - targetRect.left) > targetRect.width) { + if (_this.state.itemDraggedOutOfBounds === -1) { + _this.setState({ + itemDraggedOutOfBounds: _this.state.itemDragged + }); } - }; - }); - _defineProperty$2(_assertThisInitialized$2(_this), "updateRenderedSchema", function (newSchema) { - var updateSchema = _this.props.updateSchema; + return true; + } - if (updateSchema) { - updateSchema(newSchema); + if (_this.state.itemDraggedOutOfBounds > -1) { + _this.setState({ + itemDraggedOutOfBounds: -1 + }); } + + return false; }); - _defineProperty$2(_assertThisInitialized$2(_this), "updateColumnSchema", function (name, schemaUpdate) { - var schema = _this.props.schema; + _defineProperty$1(_assertThisInitialized$1(_this), "onEnd", function (e) { + e.cancelable && e.preventDefault(); + document.removeEventListener('mousemove', _this.schdOnMouseMove); + document.removeEventListener('touchmove', _this.schdOnTouchMove); + document.removeEventListener('mouseup', _this.schdOnEnd); + document.removeEventListener('touchup', _this.schdOnEnd); + document.removeEventListener('touchcancel', _this.schdOnEnd); - var newSchema = _toConsumableArray(schema); + var removeItem = _this.props.removableByMove && _this.isDraggedItemOutOfBounds(); - var ind = newSchema.findIndex(function (s) { - return s.name === name; - }); - newSchema[ind] = _objectSpread2(_objectSpread2({}, newSchema[ind]), schemaUpdate); + if (!removeItem && _this.props.transitionDuration > 0 && _this.afterIndex !== -2) { + // animate drop + schd(function () { + setItemTransition(_this.ghostRef.current, _this.props.transitionDuration, 'cubic-bezier(0.2, 0, 0.38, 0.9)'); - _this.updateRenderedSchema(newSchema); + if (_this.afterIndex < 1 && _this.state.itemDragged === 0) { + transformItem(_this.ghostRef.current, 0, 0); + } else { + transformItem(_this.ghostRef.current, // compensate window scroll + -(window.pageYOffset - _this.lastYOffset) + // compensate container scroll + -(_this.listRef.current.scrollTop - _this.lastListYOffset) + (_this.state.itemDragged < _this.afterIndex ? _this.itemTranslateOffsets.slice(_this.state.itemDragged + 1, _this.afterIndex + 1).reduce(function (a, b) { + return a + b; + }, 0) : _this.itemTranslateOffsets.slice(_this.afterIndex < 0 ? 0 : _this.afterIndex, _this.state.itemDragged).reduce(function (a, b) { + return a + b; + }, 0) * -1), 0); + } + })(); + } + + _this.dropTimeout = window.setTimeout(_this.finishDrop, removeItem || _this.afterIndex === -2 ? 0 : _this.props.transitionDuration); }); - _defineProperty$2(_assertThisInitialized$2(_this), "reorderColumn", function (from, to) { - var schema = _this.props.schema; - var fromInd = schema.findIndex(function (s) { - return s.name === from; - }); - var toInd = schema.findIndex(function (s) { - return s.name === to; + _defineProperty$1(_assertThisInitialized$1(_this), "finishDrop", function () { + var removeItem = _this.props.removableByMove && _this.isDraggedItemOutOfBounds(); + + if (removeItem || _this.afterIndex > -2 && _this.state.itemDragged !== _this.afterIndex) { + _this.props.onChange({ + oldIndex: _this.state.itemDragged, + newIndex: removeItem ? -1 : Math.max(_this.afterIndex, 0), + targetRect: _this.ghostRef.current.getBoundingClientRect() + }); + } + + _this.getChildren().forEach(function (item) { + setItemTransition(item, 0); + transformItem(item, null); + item.style.touchAction = ''; }); - var newSchema = moveToIndex(schema, fromInd, toInd); - _this.updateRenderedSchema(newSchema); - }); + _this.setState({ + itemDragged: -1, + scrollingSpeed: 0 + }); - _defineProperty$2(_assertThisInitialized$2(_this), "updateSortingList", function (sortingList) { - var updateSortingList = _this.props.updateSortingList; + _this.afterIndex = -2; // sometimes the scroll gets messed up after the drop, fix: - if (updateSortingList) { - updateSortingList(sortingList); + if (_this.lastScroll > 0) { + _this.listRef.current.scrollTop = _this.lastScroll; + _this.lastScroll = 0; } }); - _defineProperty$2(_assertThisInitialized$2(_this), "updateFilterList", function (filterList) { - var updateFilterList = _this.props.updateFilterList; + _defineProperty$1(_assertThisInitialized$1(_this), "onKeyDown", function (e) { + var selectedItem = _this.state.selectedItem; - if (updateFilterList) { - updateFilterList(filterList); + var index = _this.getTargetIndex(e); + + if (index === -1 || _this.props.values[index] && _this.props.values[index].props.disabled) { + return; } - }); - _defineProperty$2(_assertThisInitialized$2(_this), "onMenuChange", function (name, selected) { - var sortingList = _this.props.sortingList; + if (e.key === ' ') { + e.preventDefault(); - switch (selected) { - case 'sortAsc': - sortColumn({ - sortingList: sortingList, - updateSortingList: _this.updateSortingList - }, name, 'asc'); - break; + if (selectedItem === index) { + if (selectedItem !== _this.needle) { + _this.getChildren().forEach(function (item) { + setItemTransition(item, 0); + transformItem(item, null); + }); - case 'sortDesc': - sortColumn({ - sortingList: sortingList, - updateSortingList: _this.updateSortingList - }, name, 'desc'); - break; + _this.props.onChange({ + oldIndex: selectedItem, + newIndex: _this.needle, + targetRect: _this.getChildren()[_this.needle].getBoundingClientRect() + }); - case 'unsort': - sortColumn({ - sortingList: sortingList, - updateSortingList: _this.updateSortingList - }, name, 'unsort'); - break; + _this.getChildren()[_this.needle].focus(); + } - case 'pinLeft': - pinColumn({ - updateColumnSchema: _this.updateColumnSchema - }, name, 'left'); - break; + _this.setState({ + selectedItem: -1 + }); - case 'pinRight': - pinColumn({ - updateColumnSchema: _this.updateColumnSchema - }, name, 'right'); - break; + _this.needle = -1; + } else { + _this.setState({ + selectedItem: index + }); - case 'unpin': - pinColumn({ - updateColumnSchema: _this.updateColumnSchema - }, name, 'unpin'); - break; + _this.needle = index; - case 'hide': - hideColumn({ - updateColumnSchema: _this.updateColumnSchema - }, name, true); - break; + _this.calculateOffsets(); + } } - }); - _defineProperty$2(_assertThisInitialized$2(_this), "onFilterChange", function (name, selected) { - var filterList = _this.props.filterList; + if ((e.key === 'ArrowDown' || e.key === 'j') && selectedItem > -1 && _this.needle < _this.props.values.length - 1) { + e.preventDefault(); + var offset = getTranslateOffset(_this.getChildren()[selectedItem]); + _this.needle++; - var newFilterList = _objectSpread2(_objectSpread2({}, filterList), {}, _defineProperty$2({}, name, selected)); + _this.animateItems(_this.needle, selectedItem, offset, true); + } - _this.updateFilterList(newFilterList); - }); + if ((e.key === 'ArrowUp' || e.key === 'k') && selectedItem > -1 && _this.needle > 0) { + e.preventDefault(); - _defineProperty$2(_assertThisInitialized$2(_this), "onSelect", function (rowIndex, selected) { - var onSelect = _this.props.onSelect; + var _offset = getTranslateOffset(_this.getChildren()[selectedItem]); - if (onSelect) { - onSelect(rowIndex, selected); + _this.needle--; + + _this.animateItems(_this.needle, selectedItem, _offset, true); } - }); - _defineProperty$2(_assertThisInitialized$2(_this), "onSelectAll", function (event) { - var onSelectAll = _this.props.onSelectAll; + if (e.key === 'Escape' && selectedItem > -1) { + _this.getChildren().forEach(function (item) { + setItemTransition(item, 0); + transformItem(item, null); + }); - if (onSelectAll) { - onSelectAll(event.target.checked); + _this.setState({ + selectedItem: -1 + }); + + _this.needle = -1; } - }); - _defineProperty$2(_assertThisInitialized$2(_this), "updatePrevPageInfo", function (value) { - _this.setState({ - prevPageInfo: value - }); + if ((e.key === 'Tab' || e.key === 'Enter') && selectedItem > -1) { + e.preventDefault(); + } }); - var pageInfo = { - page: 1, - scrollTop: 0 - }; - _this.state = { - init: false, - prevPageInfo: pageInfo - }; + _this.schdOnMouseMove = schd(_this.onMouseMove); + _this.schdOnTouchMove = schd(_this.onTouchMove); + _this.schdOnEnd = schd(_this.onEnd); return _this; } - _createClass$1(Grid, [{ + _createClass(Draggable, [{ key: "componentDidMount", value: function componentDidMount() { - this.setState({ - init: true + this.calculateOffsets(); + document.addEventListener('touchstart', this.onMouseOrTouchStart, { + passive: false, + capture: false }); - window.addEventListener('resize', this.forceRerender.bind(this)); - } - }, { - key: "forceRerender", - value: function forceRerender() { - this.forceUpdate(); - } - }, { - key: "componentWillUnmount", - value: function componentWillUnmount() { - this.removeScrollListeners(); - window.removeEventListener('resize', this.forceRerender.bind(this)); + document.addEventListener('mousedown', this.onMouseOrTouchStart); } }, { key: "componentDidUpdate", - value: function componentDidUpdate(prevProps, prevState) { - if (prevState.init !== this.state.init) { - this.addScrollListeners(); - } - - if (prevProps.page !== this.props.page) { - this.removeScrollListeners(); - this.addScrollListeners(); + value: function componentDidUpdate(_prevProps, prevState) { + if (prevState.scrollingSpeed !== this.state.scrollingSpeed && prevState.scrollingSpeed === 0) { + this.doScrolling(); } } }, { - key: "addScrollListeners", - value: function addScrollListeners() { - var gridHeadEl = this.gridRef.querySelector('.Grid-head'); - var gridBodyEl = this.gridRef.querySelector('.Grid-body'); + key: "componentWillUnmount", + value: function componentWillUnmount() { + document.removeEventListener('touchstart', this.onMouseOrTouchStart); + document.removeEventListener('mousedown', this.onMouseOrTouchStart); - if (gridHeadEl && gridBodyEl) { - gridHeadEl.addEventListener('scroll', this.syncScroll('head')); - gridBodyEl.addEventListener('scroll', this.syncScroll('body')); + if (this.dropTimeout) { + window.clearTimeout(this.dropTimeout); } - } - }, { - key: "removeScrollListeners", - value: function removeScrollListeners() { - var gridHeadEl = this.gridRef.querySelector('.Grid-head'); - var gridBodyEl = this.gridRef.querySelector('.Grid-body'); - if (gridHeadEl && gridBodyEl) { - gridHeadEl.removeEventListener('scroll', this.syncScroll('head')); - gridBodyEl.removeEventListener('scroll', this.syncScroll('body')); - } + this.schdOnMouseMove.cancel(); + this.schdOnTouchMove.cancel(); + this.schdOnEnd.cancel(); } }, { key: "render", value: function render() { - var _classNames, - _this2 = this, - _this$onSelectAll; + var _this2 = this; - var baseProps = extractBaseProps(this.props); - var _this$state = this.state, - init = _this$state.init, - prevPageInfo = _this$state.prevPageInfo; - var _this$props = this.props, - type = _this$props.type, - size = _this$props.size, - showHead = _this$props.showHead, - className = _this$props.className, - page = _this$props.page, - loading = _this$props.loading, - loaderSchema = _this$props.loaderSchema; - var schema = getSchema(this.props.schema, loading, loaderSchema); - var classes = classnames((_classNames = { - Grid: 'true' - }, _defineProperty$2(_classNames, "Grid--".concat(type), type), _defineProperty$2(_classNames, "Grid--".concat(size), size), _classNames), className); - return /*#__PURE__*/React.createElement("div", _extends$3({ - className: classes - }, baseProps, { - ref: function ref(el) { - _this2.gridRef = el; + var baseStyle = { + userSelect: 'none', + WebkitUserSelect: 'none', + MozUserSelect: 'none', + msUserSelect: 'none', + boxSizing: 'border-box', + position: 'relative' + }; + + var ghostStyle = _objectSpread2(_objectSpread2({}, baseStyle), {}, { + top: this.state.targetY, + left: this.state.targetX, + width: this.state.targetWidth, + height: this.state.targetHeight, + backgroundColor: '#ffffff', + listStyleType: 'none', + margin: 0, + position: 'fixed', + boxShadow: '0 4px 16px 0 rgba(0, 0, 0, 0.16)' + }); + + return /*#__PURE__*/React.createElement(React.Fragment, null, this.props.renderList({ + children: this.props.values.map(function (value, index) { + var isHidden = index === _this2.state.itemDragged; + var isSelected = index === _this2.state.selectedItem; + var isDisabled = _this2.props.values[index] && _this2.props.values[index].props.disabled; + var props = { + key: index, + tabIndex: isDisabled ? -1 : 0, + onKeyDown: _this2.onKeyDown, + style: _objectSpread2(_objectSpread2({}, baseStyle), {}, { + visibility: isHidden ? 'hidden' : undefined, + zIndex: isSelected ? 5000 : 0 + }) + }; + return _this2.props.renderItem({ + value: value, + props: props, + index: index, + isDragged: false, + isSelected: isSelected, + isOutOfBounds: false + }); + }), + isDragged: this.state.itemDragged > -1, + props: { + ref: this.listRef } - }), init && /*#__PURE__*/React.createElement(GridProvider, { - value: _objectSpread2(_objectSpread2({}, this.props), {}, { - ref: this.gridRef - }) - }, showHead && /*#__PURE__*/React.createElement(GridHead, { - schema: schema, - onSelectAll: (_this$onSelectAll = this.onSelectAll) === null || _this$onSelectAll === void 0 ? void 0 : _this$onSelectAll.bind(this), - onMenuChange: this.onMenuChange.bind(this), - onFilterChange: this.onFilterChange.bind(this), - updateColumnSchema: this.updateColumnSchema.bind(this), - reorderColumn: this.reorderColumn.bind(this) - }), /*#__PURE__*/React.createElement(GridBody, { - key: "".concat(page), - schema: schema, - prevPageInfo: prevPageInfo, - updatePrevPageInfo: this.updatePrevPageInfo.bind(this), - onSelect: this.onSelect.bind(this) - }))); + }), this.state.itemDragged > -1 && /*#__PURE__*/ReactDOM.createPortal(this.props.renderItem({ + value: this.props.values[this.state.itemDragged], + props: { + ref: this.ghostRef, + style: ghostStyle, + onWheel: this.onWheel + }, + index: this.state.itemDragged, + isDragged: true, + isSelected: false, + isOutOfBounds: this.state.itemDraggedOutOfBounds > -1 + }), document.body)); } }]); - return Grid; -}(React.Component); + return Draggable; +}(React.Component); + +_defineProperty$1(Draggable, "defaultProps", { + transitionDuration: 240, + lockVertically: false, + removableByMove: false +}); + +var DraggableList = function DraggableList(props) { + var children = props.children, + className = props.className, + Tag = props.tagName; + var baseProps = extractBaseProps(props); + var classes = classnames({ + Listbox: true + }, className); + var renderChildren = React__default.Children.toArray(children).map(function (child) { + var element = /*#__PURE__*/React__default.cloneElement(child, { + parentProps: _objectSpread2({}, props) + }); + return element; + }); + + var _React$useState = React__default.useState(renderChildren), + _React$useState2 = _slicedToArray(_React$useState, 2), + childList = _React$useState2[0], + setChildList = _React$useState2[1]; + + var onChangeHandler = function onChangeHandler(props) { + var oldIndex = props.oldIndex, + newIndex = props.newIndex; + var updatedList = arrayMove(childList, oldIndex, newIndex); + setChildList(updatedList); + }; + + return /*#__PURE__*/React__default.createElement(Draggable, { + values: childList, + onChange: onChangeHandler, + renderItem: function renderItem(_ref) { + var value = _ref.value, + props = _ref.props; + return /*#__PURE__*/React__default.createElement("div", _extends$2({}, props, { + className: "Listbox-item--draggable" + }), value); + }, + renderList: function renderList(_ref2) { + var children = _ref2.children, + props = _ref2.props; + return /*#__PURE__*/React__default.createElement(Tag, _extends$2({ + "data-test": "DesignSystem-Listbox" + }, baseProps, { + className: classes + }, props), children); + } + }); +}; + +var isDisabledElement = function isDisabledElement(element) { + return element && element.getAttribute('data-disabled') === 'true'; +}; + +var getNextSibling = function getNextSibling(element) { + var _element$parentNode, _element$parentNode$n; + + return element === null || element === void 0 ? void 0 : (_element$parentNode = element.parentNode) === null || _element$parentNode === void 0 ? void 0 : (_element$parentNode$n = _element$parentNode.nextSibling) === null || _element$parentNode$n === void 0 ? void 0 : _element$parentNode$n.firstChild; +}; + +var getPrevSibling = function getPrevSibling(element) { + var _element$parentNode2, _element$parentNode2$; + + return element === null || element === void 0 ? void 0 : (_element$parentNode2 = element.parentNode) === null || _element$parentNode2 === void 0 ? void 0 : (_element$parentNode2$ = _element$parentNode2.previousSibling) === null || _element$parentNode2$ === void 0 ? void 0 : _element$parentNode2$.firstChild; +}; + +var focusOption = function focusOption(element, direction) { + var iterateElement = element; + + while (iterateElement) { + if (!isDisabledElement(iterateElement)) { + iterateElement.focus(); + break; + } + + if (direction === 'down') { + iterateElement = getNextSibling(iterateElement); + } else { + iterateElement = getPrevSibling(iterateElement); + } + } +}; + +var onKeyDown = function onKeyDown(event) { + var sourceElement = event.target; + var nextElement = getNextSibling(sourceElement); + var prevElement = getPrevSibling(sourceElement); + + switch (event.key) { + case 'ArrowDown': + event.preventDefault(); + focusOption(nextElement, 'down'); + break; + + case 'ArrowUp': + event.preventDefault(); + focusOption(prevElement, 'up'); + break; + } +}; + +var ListBody = function ListBody(props) { + var _classNames; + + var children = props.children, + className = props.className, + disabled = props.disabled, + selected = props.selected, + activated = props.activated, + tabIndex = props.tabIndex; + var contextProp = React.useContext(ListboxContext); + var size = contextProp.size, + type = contextProp.type, + draggable = contextProp.draggable; + var itemClass = classnames((_classNames = { + 'Listbox-item': true + }, _defineProperty$1(_classNames, "Listbox-item--".concat(size), size), _defineProperty$1(_classNames, "Listbox-item--".concat(type), type), _defineProperty$1(_classNames, 'Listbox-item--disabled', disabled), _defineProperty$1(_classNames, 'Listbox-item--selected', selected && type === 'option'), _defineProperty$1(_classNames, 'Listbox-item--activated', activated && type === 'resource'), _classNames), className); + return /*#__PURE__*/React.createElement("div", { + "data-disabled": disabled, + "data-test": "DesignSystem-Listbox-ItemWrapper", + tabIndex: draggable ? -1 : tabIndex || 0, + className: itemClass, + onKeyDown: onKeyDown, + role: "tablist" + }, draggable && /*#__PURE__*/React.createElement(Icon, { + size: 16, + appearance: "subtle", + name: "drag_indicator", + className: "Listbox-item--drag-icon", + "data-test": "DesignSystem-Listbox-DragIcon" + }), children); +}; +ListBody.displayName = 'ListBody'; + +var getAnimationClass = function getAnimationClass(uniqueKey, expanded) { + if (expanded) return "nestedList-open-".concat(uniqueKey, " 240ms cubic-bezier(0, 0, 0.38, 0.9)");else if (!expanded) return "nestedList-close-".concat(uniqueKey, " 160ms cubic-bezier(0.2, 0, 1, 0.9)"); + return ''; +}; + +var getHeight = function getHeight(listItemRef) { + var _listItemRef$current; + + var scrollHeight = (_listItemRef$current = listItemRef.current) === null || _listItemRef$current === void 0 ? void 0 : _listItemRef$current.scrollHeight; + return scrollHeight; +}; + +var menuItemAnimation = function menuItemAnimation(listItemRef, uniqueKey) { + return "\n @keyframes nestedList-open-".concat(uniqueKey, " {\n from {\n height: 0px;\n }\n to {\n height: ").concat(getHeight(listItemRef), "px;\n }\n }\n\n @keyframes nestedList-close-").concat(uniqueKey, " {\n from {\n height: ").concat(getHeight(listItemRef), "px;\n }\n to {\n height: 0px;\n }\n }\n "); +}; + +function usePrevious(value) { + var ref = React.useRef(); + React.useEffect(function () { + if (value != undefined) { + ref.current = value; + } + }, [value]); + return ref.current; +} + +var NestedList = function NestedList(props) { + var nestedBody = props.nestedBody, + expanded = props.expanded; + var prevState = usePrevious(expanded); + + var _React$useState = React.useState(expanded), + _React$useState2 = _slicedToArray(_React$useState, 2), + open = _React$useState2[0], + setOpen = _React$useState2[1]; -_defineProperty$2(Grid, "defaultProps", void 0); + var _React$useState3 = React.useState(''), + _React$useState4 = _slicedToArray(_React$useState3, 2), + keyframe = _React$useState4[0], + setKeyframe = _React$useState4[1]; -Grid.defaultProps = defaultProps$1; + var listItemRef = React.useRef(null); + var uniqueKey = Math.random().toString(36).substring(2, 6); -var renderTitle = function renderTitle(props) { - var tooltip = props.tooltip, - cellData = props.cellData; - var children = cellData.title; + var _React$useState5 = React.useState(getAnimationClass(uniqueKey, expanded)), + _React$useState6 = _slicedToArray(_React$useState5, 2), + animation = _React$useState6[0], + setAnimation = _React$useState6[1]; - if (children !== undefined && children !== null) { - if (tooltip) { - return /*#__PURE__*/React.createElement(Tooltip, { - tooltip: children, - position: 'top-start', - triggerClass: "w-100 overflow-hidden" - }, /*#__PURE__*/React.createElement(Text, { - className: "w-100 ellipsis" - }, children)); + React.useEffect(function () { + if (prevState != undefined && prevState !== expanded) { + setOpen(true); } - return /*#__PURE__*/React.createElement(Text, { - className: "w-100 ellipsis" - }, children); - } + requestAnimationFrame(function () { + var result = menuItemAnimation(listItemRef, uniqueKey); + setKeyframe(result); + }); + var animationClass = getAnimationClass(uniqueKey, expanded); + setAnimation(animationClass); + }, [expanded]); - return null; + var handleAnimationEnd = function handleAnimationEnd() { + !expanded && setOpen(false); + }; + + var styles = { + animation: animation, + overflow: 'hidden', + animationFillMode: 'forwards' + }; + return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("style", null, keyframe), nestedBody && open && /*#__PURE__*/React.createElement("div", { + style: styles, + onAnimationEnd: handleAnimationEnd, + "data-test": "DesignSystem-Listbox--Nested-Item", + ref: listItemRef + }, nestedBody)); }; -var renderMetaList = function renderMetaList(props) { - var cellData = props.cellData; - var metaList = cellData.metaList; +var _excluded$g = ["nestedBody", "expanded", "id", "onClick", "value", "tagName"]; +var ListboxItem = function ListboxItem(props) { + var nestedBody = props.nestedBody, + expanded = props.expanded, + id = props.id, + onClick = props.onClick, + value = props.value, + _props$tagName = props.tagName, + Tag = _props$tagName === void 0 ? 'li' : _props$tagName, + rest = _objectWithoutProperties(props, _excluded$g); - if (metaList) { - return /*#__PURE__*/React.createElement("div", { - className: "GridCell-metaList" - }, metaList.map(function (list, index) { - return /*#__PURE__*/React.createElement(Text, { - key: index, - className: "ellipsis", - appearance: 'subtle', - size: "small" - }, list); - })); - } + var contextProp = React.useContext(ListboxContext); + var showDivider = contextProp.showDivider, + draggable = contextProp.draggable; - return null; + var onClickHandler = function onClickHandler(e) { + onClick && onClick(e, id, value); + }; + + var tagClass = classnames(_defineProperty$1({}, 'Listbox-item-wrapper', !draggable)); + return /*#__PURE__*/React.createElement(Tag, _extends$2({ + id: id, + "data-test": "DesignSystem-Listbox-Item" + }, rest, { + onClick: onClickHandler, + "data-value": value, + className: tagClass + }), /*#__PURE__*/React.createElement(ListBody, props), nestedBody && /*#__PURE__*/React.createElement(NestedList, { + expanded: expanded, + nestedBody: nestedBody + }), showDivider && /*#__PURE__*/React.createElement(Divider, { + className: "Listbox-divider" + })); +}; +ListboxItem.displayName = 'Listbox.Item'; +ListboxItem.defaultProps = { + tagName: 'li' }; -var renderAvatar = function renderAvatar(props) { - var cellData = props.cellData; - var firstName = cellData.firstName, - lastName = cellData.lastName, - title = cellData.title; +var _excluded$f = ["children", "className", "draggable", "size", "type", "showDivider", "tagName"]; +var ListboxContext = /*#__PURE__*/React.createContext({ + size: 'standard', + type: 'resource', + draggable: false, + showDivider: true +}); +var Provider = ListboxContext.Provider; +var Listbox = function Listbox(props) { + var children = props.children, + className = props.className, + draggable = props.draggable, + size = props.size, + type = props.type, + showDivider = props.showDivider, + Tag = props.tagName, + rest = _objectWithoutProperties(props, _excluded$f); - if (firstName || lastName) { - return /*#__PURE__*/React.createElement(Avatar, { - className: "mr-5", - firstName: firstName, - lastName: lastName - }); - } + var baseProps = extractBaseProps(props); + var classes = classnames({ + Listbox: true + }, className); + var sharedProp = { + size: size, + type: type, + draggable: draggable, + showDivider: showDivider + }; + return /*#__PURE__*/React.createElement(Provider, { + value: sharedProp + }, draggable ? /*#__PURE__*/React.createElement(DraggableList, props) : /*#__PURE__*/React.createElement(Tag, _extends$2({ + "data-test": "DesignSystem-Listbox" + }, baseProps, { + className: classes + }, rest), children)); +}; +Listbox.displayName = 'Listbox'; +Listbox.defaultProps = { + tagName: 'ul', + size: 'standard', + type: 'resource', + draggable: false, + showDivider: true +}; +Listbox.Item = ListboxItem; + +// TextFieldCommon.tsx +var RenderHelpText = function RenderHelpText(_ref) { + var helpText = _ref.helpText, + error = _ref.error; + return /*#__PURE__*/React__default.createElement(HelpText, { + className: "d-flex", + message: helpText.trim().length > 0 ? helpText : ' ', + error: error ? error : undefined + }); +}; +var RenderCounter = function RenderCounter(_ref2) { + var inputText = _ref2.inputText, + max = _ref2.max; + return /*#__PURE__*/React__default.createElement("div", { + className: "mt-3 d-flex" + }, /*#__PURE__*/React__default.createElement(Text, { + appearance: "subtle", + className: "pr-2", + color: inputText.length > max ? 'alert' : undefined, + size: "small", + weight: "medium" + }, inputText.length), /*#__PURE__*/React__default.createElement(Text, { + appearance: "subtle", + className: "pr-2", + size: "small", + weight: "medium" + }, "/"), /*#__PURE__*/React__default.createElement(Text, { + appearance: "subtle", + size: "small", + weight: "medium" + }, max)); +}; - if (title) { - return /*#__PURE__*/React.createElement(Avatar, { - className: "mr-5" - }, title); - } +var TextFieldWithTextarea = function TextFieldWithTextarea(props) { + var label = props.label, + _props$rows = props.rows, + rows = _props$rows === void 0 ? 3 : _props$rows, + _props$resize = props.resize, + resize = _props$resize === void 0 ? true : _props$resize, + required = props.required, + error = props.error, + onChange = props.onChange, + _props$value = props.value, + value = _props$value === void 0 ? '' : _props$value, + _props$max = props.max, + max = _props$max === void 0 ? 200 : _props$max, + _props$helpText = props.helpText, + helpText = _props$helpText === void 0 ? ' ' : _props$helpText; + var textareaRef = React.useRef(null); - return null; + var _React$useState = React.useState(value), + _React$useState2 = _slicedToArray(_React$useState, 2), + inputText = _React$useState2[0], + setInputText = _React$useState2[1]; + + var _React$useState3 = React.useState(0), + _React$useState4 = _slicedToArray(_React$useState3, 2), + helptextWidth = _React$useState4[0], + setHelptextWidth = _React$useState4[1]; + + var onChangeHandler = function onChangeHandler(e) { + setInputText(e.target.value); + if (onChange) onChange(e); + }; + + var inputError = error || inputText.length > max; + React.useEffect(function () { + var textarea = textareaRef.current; + + if (window.ResizeObserver) { + var resizeObserver = new window.ResizeObserver(function (entries) { + var entry = entries[0]; + var offsetWidth = entry.target.offsetWidth; + setHelptextWidth(offsetWidth); + }); + textarea && resizeObserver.observe(textarea); + return function () { + resizeObserver.disconnect(); + }; + } + + return function () {}; + }, []); + return /*#__PURE__*/React.createElement("div", null, label && /*#__PURE__*/React.createElement(Label, { + required: required, + withInput: true + }, label), /*#__PURE__*/React.createElement(Textarea, _extends$2({}, props, { + resize: resize, + rows: rows, + onChange: onChangeHandler, + error: inputError, + ref: textareaRef + })), /*#__PURE__*/React.createElement("div", { + className: "d-flex justify-content-between", + style: { + width: helptextWidth + } + }, /*#__PURE__*/React.createElement(RenderHelpText, { + helpText: helpText, + error: inputError + }), /*#__PURE__*/React.createElement(RenderCounter, { + inputText: inputText, + max: max + }))); }; -var renderIcon = function renderIcon(props) { - var cellData = props.cellData; - var title = cellData.title, - icon = cellData.icon; - var iconName = icon || title; +var TextFieldWithInput = function TextFieldWithInput(props) { + var label = props.label, + minWidth = props.minWidth, + required = props.required, + error = props.error, + onChange = props.onChange, + _props$value = props.value, + value = _props$value === void 0 ? '' : _props$value, + _props$max = props.max, + max = _props$max === void 0 ? 200 : _props$max, + _props$helpText = props.helpText, + helpText = _props$helpText === void 0 ? ' ' : _props$helpText; - if (iconName) { - return /*#__PURE__*/React.createElement(Icon, { - name: iconName - }); - } + var _React$useState = React.useState(value), + _React$useState2 = _slicedToArray(_React$useState, 2), + inputText = _React$useState2[0], + setInputText = _React$useState2[1]; - return null; + var onChangeHandler = function onChangeHandler(event) { + setInputText(event.target.value); + if (onChange) onChange(event); + }; + + var inputError = error || inputText.length > max; + return /*#__PURE__*/React.createElement("div", null, label && /*#__PURE__*/React.createElement(Label, { + required: required, + withInput: true + }, label), /*#__PURE__*/React.createElement(Input, _extends$2({}, props, { + error: inputError, + onChange: onChangeHandler + })), /*#__PURE__*/React.createElement("div", { + className: "d-flex justify-content-between", + style: { + minWidth: minWidth + } + }, /*#__PURE__*/React.createElement(RenderHelpText, { + helpText: helpText, + error: inputError + }), /*#__PURE__*/React.createElement(RenderCounter, { + inputText: inputText, + max: max + }))); +}; +TextFieldWithInput.defaultProps = { + minWidth: 256 }; -var renderStatusHint = function renderStatusHint(props) { - var cellData = props.cellData; - var statusAppearance = cellData.statusAppearance; - var children = cellData.title; +var TextField = function TextField(props) { + var withTextarea = props.withTextarea; - if (children) { - return /*#__PURE__*/React.createElement(StatusHint, { - appearance: statusAppearance - }, children); + if (withTextarea) { + return /*#__PURE__*/React.createElement(TextFieldWithTextarea, props); } - return null; + return /*#__PURE__*/React.createElement(TextFieldWithInput, props); }; +TextField.displayName = 'TextField'; -var GridCell = function GridCell(props) { - var size = props.size, - schema = props.schema, - loading = props.loading; - var data = !loading ? translateData(schema, props.data) : {}; - var name = schema.name, - _schema$cellType = schema.cellType, - cellType = _schema$cellType === void 0 ? 'DEFAULT' : _schema$cellType, - _schema$align = schema.align, - align = _schema$align === void 0 ? 'left' : _schema$align, - tooltip = schema.tooltip; - var cellData = data[name]; - var cellClass = classnames(_defineProperty$2({}, 'GridCell', true)); +var _excluded$e = ["icon", "image"]; +var SelectionAvatar = function SelectionAvatar(props) { + var icon = props.icon, + image = props.image, + rest = _objectWithoutProperties(props, _excluded$e); - switch (cellType) { - case 'DEFAULT': - return /*#__PURE__*/React.createElement("div", { - className: "".concat(cellClass, " GridCell--align-").concat(align, " GridCell--default") - }, loading ? /*#__PURE__*/React.createElement(PlaceholderParagraph, { - length: "medium" - }) : renderTitle({ - tooltip: tooltip, - cellData: cellData - })); + return /*#__PURE__*/React.createElement(Avatar, _extends$2({ + role: "checkbox" + }, rest, { + withTooltip: true, + className: "cursor-pointer" + }), image || icon); +}; - case 'WITH_META_LIST': - return /*#__PURE__*/React.createElement("div", { - className: "".concat(cellClass, " GridCell--metaList") - }, loading ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(PlaceholderParagraph, { - length: "medium" - }), /*#__PURE__*/React.createElement(PlaceholderParagraph, { - length: "large", - size: "xxs" - })) : /*#__PURE__*/React.createElement(React.Fragment, null, renderTitle({ - tooltip: tooltip, - cellData: cellData - }), renderMetaList({ - cellData: cellData - }))); +var AvatarSelectionContext = /*#__PURE__*/React.createContext({}); - case 'AVATAR': - if (loading) { - return /*#__PURE__*/React.createElement(Placeholder, { - className: "GridCell--align-".concat(align), - imageSize: 'medium', - round: true - }); - } +var SelectionAvatarsWrapper = function SelectionAvatarsWrapper(props) { + var avatarList = props.avatarList, + avatarStyle = props.avatarStyle, + tooltipPosition = props.tooltipPosition, + size = props.size, + avatarRenderer = props.avatarRenderer; + var contextProp = React.useContext(AvatarSelectionContext); + var setSelectedItems = contextProp.setSelectedItems, + selectedItems = contextProp.selectedItems, + onSelect = contextProp.onSelect; - return /*#__PURE__*/React.createElement("div", { - className: "".concat(cellClass, " GridCell--align-").concat(align, " GridCell--avatar") - }, size !== 'tight' && renderAvatar({ - cellData: cellData - })); + var onClickHandler = function onClickHandler(item) { + var list = selectedItems; - case 'AVATAR_WITH_TEXT': - if (loading) { - return /*#__PURE__*/React.createElement(Placeholder, { - imageSize: 'medium', - round: true - }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { - className: "ml-3", - length: "medium" - })); + if (selectedItems !== null && selectedItems !== void 0 && selectedItems.includes(item)) { + list = selectedItems.filter(function (selectedItem) { + return selectedItem !== item; + }); + } else { + var _list; + + (_list = list) === null || _list === void 0 ? void 0 : _list.push(item); + } + + list && (setSelectedItems === null || setSelectedItems === void 0 ? void 0 : setSelectedItems(_toConsumableArray(list))); + onSelect && onSelect(list); + }; + + var handleKeyDown = function handleKeyDown(event, item) { + switch (event.key) { + case 'Enter': + onClickHandler(item); + break; + } + }; + + return /*#__PURE__*/React.createElement(React.Fragment, null, avatarList.map(function (avatarItem, index) { + var _classNames; + + var appearance = avatarItem.appearance, + firstName = avatarItem.firstName, + lastName = avatarItem.lastName, + icon = avatarItem.icon, + image = avatarItem.image; + var GroupClass = classnames((_classNames = {}, _defineProperty$1(_classNames, "SelectionAvatarGroup-item", true), _defineProperty$1(_classNames, "SelectionAvatarGroup-item--selected", selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(avatarItem)), _classNames)); + + if (avatarRenderer) { + return avatarRenderer(avatarItem); + } + + return /*#__PURE__*/React.createElement("span", { + key: index, + className: "SelectionAvatarGroup-wrapper" + }, /*#__PURE__*/React.createElement("div", { + tabIndex: 0, + role: "checkbox", + style: avatarStyle, + className: GroupClass, + "data-test": "DesignSystem-AvatarSelection--Avatar", + "aria-checked": selectedItems && selectedItems.includes(avatarItem), + onClick: function onClick() { + return onClickHandler(avatarItem); + }, + onKeyDown: function onKeyDown(event) { + return handleKeyDown(event, avatarItem); } + }, /*#__PURE__*/React.createElement(SelectionAvatar, { + size: size, + appearance: appearance, + firstName: firstName, + lastName: lastName, + withTooltip: true, + tooltipPosition: tooltipPosition, + icon: icon, + image: image + }))); + })); +}; - return /*#__PURE__*/React.createElement("div", { - className: "".concat(cellClass, " GridCell--avatarWithText") - }, size !== 'tight' && renderAvatar({ - cellData: cellData - }), renderTitle({ - tooltip: tooltip, - cellData: cellData - })); +var handleKeyDown$6 = function handleKeyDown(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem) { + switch (event.key) { + case 'Enter': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; - case 'AVATAR_WITH_META_LIST': - if (loading) { - return /*#__PURE__*/React.createElement(Placeholder, { - imageSize: 'medium', - round: true - }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { - className: "ml-3", - length: "medium" - }), /*#__PURE__*/React.createElement(PlaceholderParagraph, { - className: "ml-3", - length: "large" - })); - } + case 'ArrowDown': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; - return /*#__PURE__*/React.createElement("div", { - className: "".concat(cellClass, " GridCell--avatarWithText") - }, size !== 'tight' && renderAvatar({ - cellData: cellData - }), /*#__PURE__*/React.createElement("div", { - className: "GridCell-metaListWrapper" - }, renderTitle({ - tooltip: tooltip, - cellData: cellData - }), renderMetaList({ - cellData: cellData - }))); + case 'ArrowUp': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(true); + break; + } +}; +var focusListItem$3 = function focusListItem(position, setFocusedOption, listRef, withSearch) { + var _listRef$current2, _targetOption, _targetOption2, _targetOption2$scroll; - case 'ICON': - if (loading) { - return /*#__PURE__*/React.createElement(Placeholder, { - className: "GridCell--align-".concat(align), - imageSize: 'small', - round: true - }); - } + if (withSearch && position === 'down') { + var _listRef$current, _searchInput$; - return /*#__PURE__*/React.createElement("div", { - className: "".concat(cellClass, " GridCell--align-").concat(align, " GridCell--icon") - }, renderIcon({ - cellData: cellData - })); + var searchInput = (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.querySelectorAll('[data-test="DesignSystem-AvatarSelection--Input"]'); + searchInput && ((_searchInput$ = searchInput[0]) === null || _searchInput$ === void 0 ? void 0 : _searchInput$.focus()); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(searchInput); + return; + } - case 'STATUS_HINT': - return /*#__PURE__*/React.createElement("div", { - className: "".concat(cellClass, " GridCell--align-").concat(align, " GridCell--statusHint") - }, loading ? /*#__PURE__*/React.createElement(Placeholder, { - className: "w-75 flex-grow-0", - imageSize: 'small', - round: true - }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { - length: "large" - })) : renderStatusHint({ - cellData: cellData - })); + var listItems = (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 ? void 0 : _listRef$current2.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; + + if (position === 'down') { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[0]; + } else { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[listItems.length - 1]; } - return null; + (_targetOption = targetOption) === null || _targetOption === void 0 ? void 0 : _targetOption.focus(); + (_targetOption2 = targetOption) === null || _targetOption2 === void 0 ? void 0 : (_targetOption2$scroll = _targetOption2.scrollIntoView) === null || _targetOption2$scroll === void 0 ? void 0 : _targetOption2$scroll.call(_targetOption2, { + block: 'center' + }); + setFocusedOption && setFocusedOption(targetOption); }; -GridCell.displayName = 'GridCell'; -var DraggableDropdown = function DraggableDropdown(props) { - var options = props.options, - onChange = props.onChange; +var AvatarSelectionCount = function AvatarSelectionCount(props) { + var _classNames; - var _React$useState = React.useState(false), + var hiddenAvatarCount = props.hiddenAvatarCount, + avatarStyle = props.avatarStyle, + size = props.size, + hiddenAvatarList = props.hiddenAvatarList; + var contextProp = React.useContext(AvatarSelectionContext); + var selectedItems = contextProp.selectedItems, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + triggerRef = contextProp.triggerRef, + setOpenPopover = contextProp.setOpenPopover, + openPopover = contextProp.openPopover, + popoverId = contextProp.popoverId; + + var _React$useState = React.useState(0), _React$useState2 = _slicedToArray(_React$useState, 2), - open = _React$useState2[0], - setOpen = _React$useState2[1]; + selectedItemCount = _React$useState2[0], + setSelectedItemCount = _React$useState2[1]; - var _React$useState3 = React.useState(options), - _React$useState4 = _slicedToArray(_React$useState3, 2), - tempOptions = _React$useState4[0], - setTempOptions = _React$useState4[1]; + var wrapperClassName = classnames((_classNames = {}, _defineProperty$1(_classNames, 'SelectionAvatarCount-wrapper', true), _defineProperty$1(_classNames, 'SelectionAvatarCount--selected', selectedItemCount > 0), _classNames)); + React.useEffect(function () { + var selectedList = hiddenAvatarList.filter(function (data1) { + return selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.some(function (data2) { + return data2 === data1; + }); + }); + setSelectedItemCount(selectedList.length); + }, [selectedItems]); + return /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-AvatarSelection--TriggerAvatar", + className: wrapperClassName, + onKeyDown: function onKeyDown(event) { + return handleKeyDown$6(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem); + }, + style: avatarStyle, + tabIndex: 0, + role: "button", + "aria-haspopup": "listbox", + "aria-expanded": openPopover, + "aria-controls": popoverId, + ref: triggerRef + }, /*#__PURE__*/React.createElement(Avatar, { + size: size, + appearance: "secondary", + className: "SelectionAvatarCount cursor-pointer" + }, /*#__PURE__*/React.createElement(Text, { + className: "overflow-hidden" + }, "+".concat(hiddenAvatarCount)))); +}; - var _React$useState5 = React.useState('var(--spacing-8)'), - _React$useState6 = _slicedToArray(_React$useState5, 2), - triggerWidth = _React$useState6[0], - setTriggerWidth = _React$useState6[1]; +var handleKeyDown$5 = function handleKeyDown(event, focusedOption, setFocusedOption, setHighlightFirstItem, setHighlightLastItem, listRef, withSearch, setOpenPopover, triggerRef) { + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + navigateOptions$3('up', focusedOption, setFocusedOption, listRef, withSearch); + break; - React.useEffect(function () { - setTempOptions(options); - }, [open]); + case 'ArrowDown': + event.preventDefault(); + navigateOptions$3('down', focusedOption, setFocusedOption, listRef, withSearch); + break; - var handleParentChange = function handleParentChange(e) { - setTempOptions(tempOptions.map(function (option) { - return _objectSpread2(_objectSpread2({}, option), {}, { - selected: e.target.checked - }); - })); - }; + case 'Enter': + handleEnterKey$2(focusedOption); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(false); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(false); + break; - var handleChildChange = function handleChildChange(e, index) { - var newOptions = _toConsumableArray(tempOptions); + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + triggerRef.current.focus(); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; + } +}; - newOptions[index] = _objectSpread2(_objectSpread2({}, newOptions[index]), {}, { - selected: e.target.checked +var handleEnterKey$2 = function handleEnterKey(focusedOption) { + focusedOption === null || focusedOption === void 0 ? void 0 : focusedOption.click(); +}; + +var navigateOptions$3 = function navigateOptions(direction, focusedOption, setFocusedOption, listRef, withSearch) { + var listItems = listRef === null || listRef === void 0 ? void 0 : listRef.current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var index = Array.from(listItems).findIndex(function (item) { + return item == focusedOption; + }); + + if (index === -1) { + index = direction === 'up' ? listItems.length - 1 : 0; + } else if (withSearch && index === 0 && direction === 'up' || withSearch && index === listItems.length - 1 && direction === 'down') { + var searchInput = listRef.current.querySelector('[data-test="DesignSystem-AvatarSelection--Input"]'); + searchInput.focus(); + setFocusedOption && setFocusedOption(searchInput); + } else { + index = direction === 'up' ? (index - 1 + listItems.length) % listItems.length : (index + 1) % listItems.length; + var targetOption = listItems[index]; + targetOption.focus(); + setFocusedOption && setFocusedOption(targetOption); + targetOption.scrollIntoView({ + block: 'center' }); - setTempOptions(newOptions); - }; + } +}; - var onToggleHandler = function onToggleHandler(newOpen) { - setOpen(newOpen); - }; +var handleInputKeyDown$1 = function handleInputKeyDown(event, listRef, setFocusedOption, setOpenPopover, triggerRef) { + var _listRef$current, _targetOption, _targetOption2, _targetOption2$scroll; - var onCancelHandler = function onCancelHandler() { - setOpen(false); + var listItems = (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; + + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + targetOption = listItems[listItems.length - 1]; + break; + + case 'ArrowDown': + event.preventDefault(); + targetOption = listItems[0]; + break; + + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + triggerRef.current.focus(); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; + } + + (_targetOption = targetOption) === null || _targetOption === void 0 ? void 0 : _targetOption.focus(); + (_targetOption2 = targetOption) === null || _targetOption2 === void 0 ? void 0 : (_targetOption2$scroll = _targetOption2.scrollIntoView) === null || _targetOption2$scroll === void 0 ? void 0 : _targetOption2$scroll.call(_targetOption2, { + block: 'center' + }); + setFocusedOption && setFocusedOption(targetOption); +}; + +var AvatarSelectionInput = function AvatarSelectionInput(props) { + var contextProp = React.useContext(AvatarSelectionContext); + var listRef = contextProp.listRef, + setFocusedOption = contextProp.setFocusedOption, + setOpenPopover = contextProp.setOpenPopover, + triggerRef = contextProp.triggerRef; + return /*#__PURE__*/React.createElement("div", { + className: "SelectionAvatar-inputWrapper" + }, /*#__PURE__*/React.createElement(Input, _extends$2({ + icon: "search", + onKeyDown: function onKeyDown(event) { + return handleInputKeyDown$1(event, listRef, setFocusedOption, setOpenPopover, triggerRef); + }, + className: "w-100 SelectionAvatar-input", + "data-test": "DesignSystem-AvatarSelection--Input" + }, props))); +}; + +var AvatarSelectionList = function AvatarSelectionList(props) { + return /*#__PURE__*/React.createElement(Listbox, props, props.children); +}; +AvatarSelectionList.defaultProps = { + type: 'option', + showDivider: false, + size: 'compressed', + tagName: 'ul' +}; + +var _excluded$d = ["children", "value"]; +var AvatarSelectionOption = function AvatarSelectionOption(props) { + var children = props.children, + value = props.value, + rest = _objectWithoutProperties(props, _excluded$d); + + var contextProp = React.useContext(AvatarSelectionContext); + var setSelectedItems = contextProp.setSelectedItems, + selectedItems = contextProp.selectedItems, + onSelect = contextProp.onSelect, + focusedOption = contextProp.focusedOption, + setFocusedOption = contextProp.setFocusedOption, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + listRef = contextProp.listRef, + withSearch = contextProp.withSearch, + setOpenPopover = contextProp.setOpenPopover, + triggerRef = contextProp.triggerRef; + + var onSelectHandler = function onSelectHandler(event, avatarData) { + event.preventDefault(); + var list = selectedItems ? _toConsumableArray(selectedItems) : []; + + if (selectedItems !== null && selectedItems !== void 0 && selectedItems.includes(avatarData)) { + list = selectedItems.filter(function (selectedItem) { + return selectedItem !== avatarData; + }); + } else { + list.push(avatarData); + } + + setSelectedItems === null || setSelectedItems === void 0 ? void 0 : setSelectedItems(_toConsumableArray(list)); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + onSelect && onSelect(list); }; - var onApplyHandler = function onApplyHandler() { - setOpen(false); - if (onChange) onChange(tempOptions); + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$5(event, focusedOption, setFocusedOption, setHighlightFirstItem, setHighlightLastItem, listRef, withSearch, setOpenPopover, triggerRef); }; + return /*#__PURE__*/React.createElement(Listbox.Item, _extends$2({ + onClick: function onClick(event) { + return onSelectHandler(event, value); + }, + onKeyDown: function onKeyDown(event) { + return onKeyDownHandler(event); + }, + selected: selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(value), + "data-test": "DesignSystem-AvatarSelection--Option", + tabIndex: -1 + }, rest), children); +}; +AvatarSelectionOption.defaultProps = { + tagName: 'li' +}; + +var AvatarSelectionEmptyState = function AvatarSelectionEmptyState(props) { + var height = props.height, + title = props.title, + description = props.description; return /*#__PURE__*/React.createElement("div", { - className: "Dropdown" - }, /*#__PURE__*/React.createElement(Popover, { - open: open, - onToggle: onToggleHandler, - trigger: /*#__PURE__*/React.createElement(Button, { - ref: function ref(el) { - setTriggerWidth("".concat(el === null || el === void 0 ? void 0 : el.clientWidth, "px")); - }, - size: "tiny", - appearance: "transparent", - icon: "keyboard_arrow_down_filled", - iconAlign: "right" - }, "Showing ".concat(options.filter(function (option) { - return option.selected; - }).length, " of ").concat(options.length, " column").concat(getPluralSuffix(options.length))), - triggerClass: "w-100", - customStyle: { - width: triggerWidth + className: "d-flex flex-column justify-content-center align-items-center", + style: { + height: height ? height - 4 : '' }, - className: "Header-draggableDropdown" - }, /*#__PURE__*/React.createElement("div", { - className: "Dropdown-wrapper" - }, /*#__PURE__*/React.createElement("div", { - className: "OptionWrapper" - }, /*#__PURE__*/React.createElement(Checkbox, { - className: "OptionCheckbox", - label: "Select All", - checked: tempOptions.every(function (option) { - return option.selected; - }), - indeterminate: tempOptions.some(function (option) { - return option.selected; - }) && tempOptions.some(function (option) { - return !option.selected; - }), - onChange: handleParentChange - })), tempOptions.map(function (option, index) { - return /*#__PURE__*/React.createElement("div", { - key: option.value, - className: "OptionWrapper d-flex flex-space-between align-items-center cursor-pointer", - draggable: true, - onDragStart: function onDragStart(e) { - e.dataTransfer.setData('index', "".concat(index)); - }, - onDragOver: function onDragOver(e) { - return e.preventDefault(); - }, - onDrop: function onDrop(e) { - var from = +e.dataTransfer.getData('index'); - var to = index; - if (from !== to) setTempOptions(moveToIndex(tempOptions, from, to)); - } - }, /*#__PURE__*/React.createElement(Checkbox, { - className: "OptionCheckbox", - name: option.value, - label: option.label, - checked: tempOptions[index].selected, - onChange: function onChange(e) { - return handleChildChange(e, index); - } - }), /*#__PURE__*/React.createElement(Icon, { - name: "drag_handle", - className: "mr-4" - })); - })), /*#__PURE__*/React.createElement("div", { - className: "Dropdown-buttonWrapper" - }, /*#__PURE__*/React.createElement(Button, { - className: "mr-4", - size: "tiny", - onClick: onCancelHandler - }, "Cancel"), /*#__PURE__*/React.createElement(Button, { - appearance: "primary", - size: "tiny", - onClick: onApplyHandler - }, "Apply")))); + "data-test": "DesignSystem-AvatarSelection--EmptyState" + }, title && /*#__PURE__*/React.createElement(Text, { + className: "text-align-center mb-3", + weight: "strong" + }, title), description && /*#__PURE__*/React.createElement(Text, { + className: "text-align-center mb-6", + weight: "medium", + size: "small", + appearance: "subtle" + }, description)); }; -var Header = function Header(props) { - var loading = props.loading, - error = props.error, - data = props.data, - schema = props.schema, - withSearch = props.withSearch, - showHead = props.showHead, - withPagination = props.withPagination, - page = props.page, - pageSize = props.pageSize, - withCheckbox = props.withCheckbox, - children = props.children, - updateSchema = props.updateSchema, - _props$filterList = props.filterList, - filterList = _props$filterList === void 0 ? {} : _props$filterList, - updateFilterList = props.updateFilterList, - _props$totalRecords = props.totalRecords, - totalRecords = _props$totalRecords === void 0 ? 0 : _props$totalRecords, - onSelectAll = props.onSelectAll, - searchPlaceholder = props.searchPlaceholder, - selectAll = props.selectAll, - searchTerm = props.searchTerm, - updateSearchTerm = props.updateSearchTerm, - dynamicColumn = props.dynamicColumn, - allowSelectAll = props.allowSelectAll, - showFilters = props.showFilters; +var AvatarSelectionItem = function AvatarSelectionItem(props) { + var avatarData = props.avatarData, + isSelected = props.isSelected; var _React$useState = React.useState(false), _React$useState2 = _slicedToArray(_React$useState, 2), - selectAllRecords = _React$useState2[0], - setSelectAllRecords = _React$useState2[1]; + showTooltip = _React$useState2[0], + setShowTooltip = _React$useState2[1]; + + var elementRef = React.useRef(null); + var _avatarData$firstName = avatarData.firstName, + firstName = _avatarData$firstName === void 0 ? '' : _avatarData$firstName, + _avatarData$lastName = avatarData.lastName, + lastName = _avatarData$lastName === void 0 ? '' : _avatarData$lastName; + var name = "".concat(firstName, " ").concat(lastName); + return /*#__PURE__*/React.createElement(Tooltip, { + showOnTruncation: true, + tooltip: name, + elementRef: elementRef, + open: showTooltip + }, /*#__PURE__*/React.createElement(AvatarSelectionOption, { + value: avatarData, + onFocus: function onFocus() { + setShowTooltip(true); + }, + onBlur: function onBlur() { + setShowTooltip(false); + } + }, /*#__PURE__*/React.createElement(Checkbox, { + defaultChecked: isSelected, + checked: isSelected, + label: name, + size: "regular", + tabIndex: -1, + className: "ellipsis--noWrap", + "data-test": "DesignSystem-AvatarSelection--Checkbox", + labelRef: elementRef + }))); +}; - var _React$useState3 = React.useState(true), - _React$useState4 = _slicedToArray(_React$useState3, 2), - flag = _React$useState4[0], - setFlag = _React$useState4[1]; +var AvatarSelectionPopover = function AvatarSelectionPopover(props) { + var _classNames; - React.useEffect(function () { - setFlag(!flag); - }, [schema]); - React.useEffect(function () { - if (selectAll && selectAll.checked) { - if (onSelectAll) onSelectAll(true, selectAllRecords); - } - }, [selectAllRecords]); - React.useEffect(function () { - if (selectAll && !selectAll.checked) setSelectAllRecords(false); - }, [selectAll]); - var filterSchema = schema.filter(function (s) { - return s.filters; - }); + var hiddenAvatarList = props.hiddenAvatarList, + customStyle = props.customStyle, + searchPlaceholder = props.searchPlaceholder, + searchComparator = props.searchComparator, + children = props.children; - var onSearchChange = function onSearchChange(e) { - var value = e.target.value; + var _React$useState3 = React.useState(hiddenAvatarList), + _React$useState4 = _slicedToArray(_React$useState3, 2), + searchList = _React$useState4[0], + setSearchList = _React$useState4[1]; - if (updateSearchTerm) { - updateSearchTerm(value); - } - }; + var _React$useState5 = React.useState(''), + _React$useState6 = _slicedToArray(_React$useState5, 2), + searchValue = _React$useState6[0], + setSearchValue = _React$useState6[1]; - var onFilterChange = function onFilterChange(name, filters) { - var newFilterList = _objectSpread2(_objectSpread2({}, filterList), {}, _defineProperty$2({}, name, filters)); + var contextProp = React.useContext(AvatarSelectionContext); + var selectedItems = contextProp.selectedItems, + listRef = contextProp.listRef, + withSearch = contextProp.withSearch, + popoverId = contextProp.popoverId; - if (updateFilterList) { - updateFilterList(newFilterList); - } - }; + if (children) { + return /*#__PURE__*/React.createElement(React.Fragment, null, children); + } - var columnOptions = schema.map(function (s) { - return { - label: s.displayName, - value: s.name, - selected: !s.hidden - }; - }); + var onSearchHandler = function onSearchHandler(event) { + var searchValue = event.target.value; + var list = hiddenAvatarList === null || hiddenAvatarList === void 0 ? void 0 : hiddenAvatarList.filter(function (avatarData) { + var _firstName$toLowerCas, _lastName$toLowerCase; - var onDynamicColumnUpdate = function onDynamicColumnUpdate(options) { - var newSchema = options.map(function (option) { - return _objectSpread2(_objectSpread2({}, schema.find(function (colSchema) { - return colSchema.name === option.value; - })), {}, { - hidden: !option.selected - /* tslint:disable:no-object-literal-type-assertion */ + var firstName = avatarData.firstName, + lastName = avatarData.lastName; - }); + if (searchComparator) { + return searchComparator(searchValue, avatarData); + } + + return (firstName === null || firstName === void 0 ? void 0 : (_firstName$toLowerCas = firstName.toLowerCase()) === null || _firstName$toLowerCas === void 0 ? void 0 : _firstName$toLowerCas.startsWith(searchValue.toLowerCase())) || (lastName === null || lastName === void 0 ? void 0 : (_lastName$toLowerCase = lastName.toLowerCase()) === null || _lastName$toLowerCase === void 0 ? void 0 : _lastName$toLowerCase.startsWith(searchValue.toLowerCase())); }); - /* tslint:enable:no-object-literal-type-assertion */ + setSearchValue(searchValue); + setSearchList(list); + }; - if (updateSchema) updateSchema(newSchema); + var onClearHandler = function onClearHandler() { + setSearchValue(''); + setSearchList(hiddenAvatarList); }; - var selectedCount = data.filter(function (d) { - return d._selected; - }).length; - var startIndex = (page - 1) * pageSize + 1; - var endIndex = Math.min(page * pageSize, totalRecords); - var label = error ? 'Showing 0 items' : withCheckbox && selectedCount ? selectAllRecords ? "Selected all ".concat(totalRecords, " item").concat(getPluralSuffix(totalRecords)) : "Selected ".concat(selectedCount, " item").concat(getPluralSuffix(totalRecords), " on this page") : withPagination ? "Showing ".concat(startIndex, "-").concat(endIndex, " of ").concat(totalRecords, " item").concat(getPluralSuffix(totalRecords)) : "Showing ".concat(totalRecords, " item").concat(getPluralSuffix(totalRecords)); + var popperClassName = classnames((_classNames = {}, _defineProperty$1(_classNames, 'py-3', !withSearch), _defineProperty$1(_classNames, 'pb-3', withSearch), _defineProperty$1(_classNames, 'SelectionAvatarGroup-popper', true), _classNames)); return /*#__PURE__*/React.createElement("div", { - className: "Header" - }, /*#__PURE__*/React.createElement("div", { - className: "Header-content Header-content--top" - }, withSearch && /*#__PURE__*/React.createElement("div", { - className: "Header-search" - }, /*#__PURE__*/React.createElement(Input, { - name: "GridHeader-search", - icon: "search", - placeholder: searchPlaceholder, - onChange: onSearchChange, - value: searchTerm, - onClear: function onClear() { - return updateSearchTerm && updateSearchTerm(''); + style: { + width: customStyle.width }, - disabled: loading && !hasSchema(schema) - })), showFilters && filterSchema.length > 0 && /*#__PURE__*/React.createElement("div", { - className: "Header-dropdown" - }, /*#__PURE__*/React.createElement("div", { - className: "Header-filters" - }, filterSchema.map(function (s) { - var name = s.name, - displayName = s.displayName, - filters = s.filters; - var filterOptions = filters ? filters.map(function (f) { - return _objectSpread2(_objectSpread2({}, f), {}, { - selected: filterList[name] && filterList[name].findIndex(function (fl) { - return fl === f.value; - }) !== -1 - }); - }) : []; - return /*#__PURE__*/React.createElement(Dropdown, { - key: name, - withCheckbox: true, - showApplyButton: true, - inlineLabel: displayName, - icon: 'filter_list', - options: filterOptions, - onChange: function onChange(selected) { - return onFilterChange(name, selected); + ref: listRef, + "data-test": "DesignSystem-AvatarSelection--Popover", + id: popoverId + }, withSearch && /*#__PURE__*/React.createElement(AvatarSelectionInput, { + placeholder: searchPlaceholder, + onChange: onSearchHandler, + value: searchValue, + onClear: onClearHandler + }), /*#__PURE__*/React.createElement("div", { + style: customStyle, + className: popperClassName + }, searchList.length === 0 && /*#__PURE__*/React.createElement(AvatarSelectionEmptyState, { + height: customStyle.maxHeight, + title: "No users found", + description: "Try modifying your search to find what you are looking for." + }), /*#__PURE__*/React.createElement(AvatarSelectionList, null, searchList.map(function (avatarData, index) { + var isSelected = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(avatarData); + return /*#__PURE__*/React.createElement(AvatarSelectionItem, { + key: index, + avatarData: avatarData, + isSelected: isSelected + }); + })))); +}; + +var AvatarSelection = function AvatarSelection(props) { + var max = props.max, + borderColor = props.borderColor, + tooltipPosition = props.tooltipPosition, + list = props.list, + className = props.className, + size = props.size, + avatarRenderer = props.avatarRenderer, + onSelect = props.onSelect, + width = props.width, + maxHeight = props.maxHeight, + minHeight = props.minHeight, + searchPlaceholder = props.searchPlaceholder, + withSearch = props.withSearch, + searchComparator = props.searchComparator, + children = props.children; + + var _React$useState = React.useState([]), + _React$useState2 = _slicedToArray(_React$useState, 2), + selectedItems = _React$useState2[0], + setSelectedItems = _React$useState2[1]; + + var _React$useState3 = React.useState(false), + _React$useState4 = _slicedToArray(_React$useState3, 2), + openPopover = _React$useState4[0], + setOpenPopover = _React$useState4[1]; + + var _React$useState5 = React.useState(), + _React$useState6 = _slicedToArray(_React$useState5, 2), + focusedOption = _React$useState6[0], + setFocusedOption = _React$useState6[1]; + + var _React$useState7 = React.useState(false), + _React$useState8 = _slicedToArray(_React$useState7, 2), + highlightFirstItem = _React$useState8[0], + setHighlightFirstItem = _React$useState8[1]; + + var _React$useState9 = React.useState(false), + _React$useState10 = _slicedToArray(_React$useState9, 2), + highlightLastItem = _React$useState10[0], + setHighlightLastItem = _React$useState10[1]; + + var listRef = /*#__PURE__*/React.createRef(); + var triggerRef = /*#__PURE__*/React.createRef(); + React.useEffect(function () { + var selectedList = []; + list.forEach(function (avatarItem) { + if (avatarItem.selected) { + selectedList.push(avatarItem); } }); - }))), children && /*#__PURE__*/React.createElement("div", { - className: "Header-actions" - }, children)), /*#__PURE__*/React.createElement("div", { - className: "Header-content Header-content--bottom" - }, /*#__PURE__*/React.createElement("div", { - className: "Header-label" - }, !showHead && withCheckbox && !loading && /*#__PURE__*/React.createElement(Checkbox, _extends$3({}, selectAll, { - onChange: function onChange(event) { - if (onSelectAll) onSelectAll(event.target.checked); + setSelectedItems(selectedList); + }, []); + React.useEffect(function () { + if (!openPopover) { + setHighlightFirstItem(false); + setHighlightLastItem(false); + } else { + setHighlightFirstItem(true); } - })), loading ? /*#__PURE__*/React.createElement(Placeholder, { - withImage: !showHead && withCheckbox - }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { - length: 'small', - size: 's' - })) : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Label, null, label), withPagination && (selectAll === null || selectAll === void 0 ? void 0 : selectAll.checked) && allowSelectAll && /*#__PURE__*/React.createElement("div", { - className: "ml-4" - }, !selectAllRecords ? /*#__PURE__*/React.createElement(Button, { - size: "tiny", - onClick: function onClick() { - return setSelectAllRecords(true); + }, [openPopover]); + React.useEffect(function () { + if (highlightFirstItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$3('down', setFocusedOption, listRef, withSearch); + }); } - }, "Select all ".concat(totalRecords, " items")) : /*#__PURE__*/React.createElement(Button, { - size: "tiny", - onClick: function onClick() { - return setSelectAllRecords(false); + }, [highlightFirstItem]); + React.useEffect(function () { + if (highlightLastItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$3('up', setFocusedOption, listRef, withSearch); + }); } - }, "Clear Selection")))), dynamicColumn && /*#__PURE__*/React.createElement("div", { - className: "Header-hideColumns" - }, /*#__PURE__*/React.createElement(DraggableDropdown, { - options: columnOptions, - onChange: onDynamicColumnUpdate - })))); + }, [highlightLastItem]); + var baseProps = extractBaseProps(props); + var hiddenAvatarCount = list.length - max; + var avatarStyle = { + backgroundColor: "".concat(borderColor), + boxShadow: "0 0 0 calc(var(--spacing-xs) + var(--spacing-s)) ".concat(borderColor) + }; + var AvatarSelectionClass = classnames(_defineProperty$1({}, 'SelectionAvatarGroup', true), className); + var searchInputHeight = 36; + var searchBorder = 1; + var customStyle = { + width: width, + minHeight: minHeight, + maxHeight: withSearch ? maxHeight - searchInputHeight - searchBorder : maxHeight + }; + var hiddenAvatarList = list.slice(max, list.length); + var popoverId = "DesignSystem-AvatarSelection-Popover-".concat(uidGenerator()); + var popoverProps = { + hiddenAvatarList: hiddenAvatarList, + customStyle: customStyle, + searchPlaceholder: searchPlaceholder, + searchComparator: searchComparator, + children: children + }; + var triggerProps = { + size: size, + avatarStyle: avatarStyle, + hiddenAvatarCount: hiddenAvatarCount, + hiddenAvatarList: hiddenAvatarList + }; + + var onToggleHandler = function onToggleHandler(open) { + open ? setOpenPopover(true) : setOpenPopover(false); + }; + + var contextProp = { + listRef: listRef, + onSelect: onSelect, + withSearch: withSearch, + triggerRef: triggerRef, + selectedItems: selectedItems, + focusedOption: focusedOption, + openPopover: openPopover, + setSelectedItems: setSelectedItems, + setFocusedOption: setFocusedOption, + setHighlightFirstItem: setHighlightFirstItem, + setHighlightLastItem: setHighlightLastItem, + setOpenPopover: setOpenPopover, + popoverId: popoverId + }; + return /*#__PURE__*/React.createElement(AvatarSelectionContext.Provider, { + value: contextProp + }, /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-AvatarSelection" + }, baseProps, { + className: AvatarSelectionClass + }), /*#__PURE__*/React.createElement(SelectionAvatarsWrapper, { + size: size, + avatarStyle: avatarStyle, + avatarList: list.slice(0, max), + avatarRenderer: avatarRenderer, + tooltipPosition: tooltipPosition + }), (hiddenAvatarCount > 0 || children && hiddenAvatarCount > 0) && /*#__PURE__*/React.createElement(Popover, { + open: openPopover, + position: "bottom-end", + trigger: /*#__PURE__*/React.createElement(AvatarSelectionCount, triggerProps), + triggerClass: "flex-grow-0", + onToggle: onToggleHandler + }, /*#__PURE__*/React.createElement(AvatarSelectionPopover, popoverProps)))); +}; +AvatarSelection.displayName = 'AvatarSelection'; +AvatarSelection.defaultProps = { + max: 5, + tooltipPosition: 'bottom', + borderColor: 'white', + size: 'regular', + width: 176, + maxHeight: 256 }; -Header.defaultProps = { - schema: [], - data: [], - searchPlaceholder: 'Search', - dynamicColumn: true, - showFilters: true +AvatarSelection.Input = AvatarSelectionInput; +AvatarSelection.List = AvatarSelectionList; +AvatarSelection.Option = AvatarSelectionOption; +AvatarSelection.EmptyState = AvatarSelectionEmptyState; + +var ComboboxList = function ComboboxList(props) { + return /*#__PURE__*/React.createElement(Listbox, _extends$2({ + className: "py-3" + }, props, { + role: "listbox" + }), props.children); +}; +ComboboxList.defaultProps = { + type: 'option', + showDivider: false, + tagName: 'ul', + size: 'compressed' +}; + +var ComboboxContext = /*#__PURE__*/React.createContext({}); + +var handleKeyDown$4 = function handleKeyDown(event, focusedOption, setFocusedOption, setOpenPopover, inputTriggerRef, setHighlightFirstItem, setHighlightLastItem, multiSelect, listRef) { + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + navigateOptions$2('up', focusedOption, setFocusedOption, listRef); + break; + + case 'ArrowDown': + event.preventDefault(); + navigateOptions$2('down', focusedOption, setFocusedOption, listRef); + break; + + case 'Enter': + handleEnterKey$1(focusedOption, multiSelect, inputTriggerRef, listRef, setFocusedOption); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(false); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(false); + break; + + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + inputTriggerRef.current.focus(); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; + } +}; + +var handleEnterKey$1 = function handleEnterKey(focusedOption, multiSelect, inputTriggerRef, listRef, setFocusedOption) { + focusedOption === null || focusedOption === void 0 ? void 0 : focusedOption.click(); + + if (!multiSelect) { + inputTriggerRef.current.focus(); + } else { + // to focus first option by default when last option is selected + var listItems = listRef.current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var listArr = Array.from(listItems); + var index = listArr.findIndex(function (item) { + return item == focusedOption; + }); + + if (index === listArr.length - 1) { + listItems[0].focus(); + setFocusedOption && setFocusedOption(listItems[0]); + listItems[0].scrollIntoView({ + block: 'center' + }); + } + } +}; + +var navigateOptions$2 = function navigateOptions(direction, focusedOption, setFocusedOption, listRef) { + var _targetOption$scrollI; + + var listItems = listRef.current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var index = Array.from(listItems).findIndex(function (item) { + return item == focusedOption; + }); + + if (index === -1) { + index = direction === 'up' ? listItems.length - 1 : 0; + } else { + index = direction === 'up' ? (index - 1 + listItems.length) % listItems.length : (index + 1) % listItems.length; + } + + var targetOption = listItems[index]; + targetOption.focus(); + setFocusedOption && setFocusedOption(targetOption); + targetOption === null || targetOption === void 0 ? void 0 : (_targetOption$scrollI = targetOption.scrollIntoView) === null || _targetOption$scrollI === void 0 ? void 0 : _targetOption$scrollI.call(targetOption, { + block: 'center' + }); }; -var _excluded$1 = ["children"]; +var _excluded$c = ["children", "option", "onClick"]; +var ComboboxOption = function ComboboxOption(props) { + var children = props.children, + option = props.option, + onClick = props.onClick, + rest = _objectWithoutProperties(props, _excluded$c); + + var contextProp = React.useContext(ComboboxContext); + var onOptionClick = contextProp.onOptionClick, + inputValue = contextProp.inputValue, + focusedOption = contextProp.focusedOption, + setFocusedOption = contextProp.setFocusedOption, + setOpenPopover = contextProp.setOpenPopover, + inputTriggerRef = contextProp.inputTriggerRef, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + multiSelect = contextProp.multiSelect, + listRef = contextProp.listRef; + + var onClickHandler = function onClickHandler() { + if (onClick) { + return onClick(option); + } -var defaultErrorTemplate = function defaultErrorTemplate(props) { - var _props$errorType = props.errorType, - errorType = _props$errorType === void 0 ? 'DEFAULT' : _props$errorType; - var errorMessages = { - FAILED_TO_FETCH: 'Failed to fetch data', - NO_RECORDS_FOUND: 'No results found', - DEFAULT: 'No results found' + return onOptionClick && onOptionClick(_objectSpread2(_objectSpread2({}, option), {}, { + isSelectedOption: true + })); }; - return /*#__PURE__*/React.createElement(Heading, null, errorMessages[errorType]); -}; -var defaultProps = { - type: 'data', - size: 'standard', - showHead: true, - showMenu: true, - multipleSorting: true, - headerOptions: {}, - withPagination: true, - paginationType: 'jump', - page: 1, - pageSize: 15, - draggable: true, - data: [], - schema: [], - loading: false, - error: false, - loaderSchema: [], - sortingList: [], - filterList: {}, - filterPosition: 'GRID', - searchDebounceDuration: 750, - errorTemplate: defaultErrorTemplate + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$4(event, focusedOption, setFocusedOption, setOpenPopover, inputTriggerRef, setHighlightFirstItem, setHighlightLastItem, multiSelect, listRef); + }; + + return /*#__PURE__*/React.createElement(Listbox.Item, _extends$2({ + onClick: onClickHandler, + selected: option.label === (inputValue === null || inputValue === void 0 ? void 0 : inputValue.label), + onKeyDown: onKeyDownHandler, + tabIndex: -1, + role: "option", + "data-test": "DesignSystem-Combobox-Option" + }, rest), children); +}; +ComboboxOption.defaultProps = { + tagName: 'li' }; -/** - * ###Note: - * 1. Sync Table: - * - Manually toggle loading/error state to update data, schema. - * 2. Async Table: - * - fetchData return: - * - Promise resolve with no records: - * error: true, errorType: 'NO\_RECORDS\_FOUND' - * - Promise reject: - * error: true, errorType: 'FAILED\_TO\_FETCH' - * 3. Default errorTemplate: - * - *
- * (props) => {
- *      const { errorType = 'DEFAULT' } = props;
- *      const errorMessages = {
- *        'FAILED\_TO\_FETCH': 'Failed to fetch data',
- *        'NO\_RECORDS\_FOUND': 'No results found',
- *        'DEFAULT': 'No results found'
- *      }
- *      return(
- *        \{errorMessages[errorType]}\
- *      );
- * }
- * 
- */ -var Table = /*#__PURE__*/function (_React$Component) { - _inherits$1(Table, _React$Component); +var handleKeyDown$3 = function handleKeyDown(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem) { + switch (event.key) { + case 'ArrowUp': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(true); + break; - var _super = _createSuper$1(Table); + case 'ArrowDown': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; - function Table(props) { - var _this; + case 'Escape': + case 'Tab': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + break; + } +}; +var focusListItem$2 = function focusListItem(position, setFocusedOption, listRef) { + var _listRef$current, _targetOption; - _classCallCheck$1(this, Table); + var listItems = (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; - _this = _super.call(this, props); + if (position === 'down') { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[0]; + } else { + targetOption = listItems[listItems.length - 1]; + } - _defineProperty$2(_assertThisInitialized$2(_this), "debounceUpdate", void 0); + (_targetOption = targetOption) === null || _targetOption === void 0 ? void 0 : _targetOption.focus(); - _defineProperty$2(_assertThisInitialized$2(_this), "updateData", function (searchUpdate) { - if (_this.state.async) { - _this.setState({ - loading: true - }); - } + if (targetOption && typeof targetOption.scrollIntoView === 'function') { + var _targetOption2; - if (searchUpdate) { - _this.debounceUpdate(); - } else { - _this.updateDataFn(); - } + (_targetOption2 = targetOption) === null || _targetOption2 === void 0 ? void 0 : _targetOption2.scrollIntoView({ + block: 'center', + behavior: 'smooth' }); + } - _defineProperty$2(_assertThisInitialized$2(_this), "updateDataFn", function () { - var _this$props = _this.props, - fetchData = _this$props.fetchData, - pageSize = _this$props.pageSize, - withPagination = _this$props.withPagination, - dataProp = _this$props.data, - onSearch = _this$props.onSearch; - var _this$state = _this.state, - async = _this$state.async, - page = _this$state.page, - sortingList = _this$state.sortingList, - filterList = _this$state.filterList, - searchTerm = _this$state.searchTerm; + setFocusedOption && setFocusedOption(targetOption); +}; - _this.onSelect(-1, false); +var InputBox = function InputBox(props) { + var contextProp = React.useContext(ComboboxContext); + var inputValue = contextProp.inputValue, + setInputValue = contextProp.setInputValue, + setFocusedOption = contextProp.setFocusedOption, + setOpenPopover = contextProp.setOpenPopover, + inputTriggerRef = contextProp.inputTriggerRef, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + openPopover = contextProp.openPopover, + popoverId = contextProp.popoverId; - var opts = { - page: page, - pageSize: pageSize, - sortingList: sortingList, - filterList: filterList, - searchTerm: searchTerm - }; + var onChangeHandler = function onChangeHandler(event) { + var value = event.target.value; + setFocusedOption && setFocusedOption(undefined); + var newValue = { + label: value, + value: value, + isSelectedOption: false + }; + setInputValue && setInputValue(newValue); - if (!_this.props.withPagination) { - delete opts.page; - delete opts.pageSize; - } + if (value !== '') { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + } + }; - if (async) { - if (fetchData) { - fetchData(opts).then(function (res) { - if (!res.searchTerm || res.searchTerm && res.searchTerm === _this.state.searchTerm) { - var _data2 = res.data; - var schema = _this.state.schema.length ? _this.state.schema : res.schema; + var onClearHandler = function onClearHandler(event) { + var _props$onClear; - _this.setState({ - data: _data2, - schema: schema, - selectAll: getSelectAll(_data2), - totalRecords: res.count, - loading: false, - error: !_data2.length, - errorType: 'NO_RECORDS_FOUND' - }); - } - })["catch"](function () { - _this.setState({ - loading: false, - error: true, - errorType: 'FAILED_TO_FETCH' - }); - }); - } - } else { - var schema = _this.state.schema; - var filteredData = filterData(schema, dataProp, filterList); - var searchedData = onSearch && opts.searchTerm !== undefined ? onSearch(filteredData, opts.searchTerm) : filteredData; - var sortedData = sortData(schema, searchedData, sortingList); - var renderedData = sortedData; - var totalRecords = sortedData.length; + event.stopPropagation(); + var newValue = { + label: '', + value: '', + isSelectedOption: false + }; + setInputValue && setInputValue(newValue); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + (_props$onClear = props.onClear) === null || _props$onClear === void 0 ? void 0 : _props$onClear.call(props, event); + }; - if (withPagination && page && pageSize) { - renderedData = paginateData(renderedData, page, pageSize); - } + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$3(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem); + props.onKeyDown && props.onKeyDown(event); + }; - var renderedSchema = _this.state.schema.length ? _this.state.schema : schema; + return /*#__PURE__*/React.createElement(Input, _extends$2({}, props, { + ref: inputTriggerRef, + value: inputValue === null || inputValue === void 0 ? void 0 : inputValue.label, + onChange: onChangeHandler, + onKeyDown: onKeyDownHandler, + onClear: onClearHandler, + role: "combobox", + "aria-haspopup": "listbox", + "aria-controls": popoverId, + "aria-label": props.placeholder || 'Combobox-Input-Trigger', + "aria-expanded": openPopover, + "data-test": "DesignSystem-Combobox-Input" + })); +}; - _this.setState({ - totalRecords: totalRecords, - error: !renderedData.length, - errorType: 'NO_RECORDS_FOUND', - selectAll: getSelectAll(renderedData), - schema: renderedSchema, - data: renderedData - }); - } - }); +var _excluded$b = ["chipOptions", "allowDuplicates", "disabled", "error", "placeholder", "defaultValue", "value", "className", "autoFocus", "onChange", "onBlur", "onFocus", "onKeyDown", "onInputChange", "tabIndex", "role"], + _excluded2 = ["type", "onClick"]; +var keyCodes = { + BACKSPACE: 'Backspace', + DELETE: 'Delete', + ENTER: 'Enter' +}; +var MultiSelectTrigger = function MultiSelectTrigger(props) { + var _classNames, _classNames2; - _defineProperty$2(_assertThisInitialized$2(_this), "onSelect", function (rowIndexes, selected) { - var data = _this.state.data; - var onSelect = _this.props.onSelect; - var indexes = [rowIndexes]; - var newData = data; + var chipOptions = props.chipOptions, + allowDuplicates = props.allowDuplicates, + disabled = props.disabled, + error = props.error, + placeholder = props.placeholder, + defaultValue = props.defaultValue, + value = props.value, + className = props.className, + autoFocus = props.autoFocus, + onChange = props.onChange, + onBlur = props.onBlur, + onFocus = props.onFocus, + onKeyDown = props.onKeyDown, + onInputChange = props.onInputChange, + tabIndex = props.tabIndex, + role = props.role, + rest = _objectWithoutProperties(props, _excluded$b); - if (rowIndexes >= 0) { - newData = updateBatchData(data, indexes, { - _selected: selected - }); + var inputRef = /*#__PURE__*/React.createRef(); - _this.setState({ - data: newData, - selectAll: getSelectAll(newData) - }); - } + var _React$useState = React.useState(value || defaultValue), + _React$useState2 = _slicedToArray(_React$useState, 2), + chips = _React$useState2[0], + setChips = _React$useState2[1]; - if (onSelect) { - onSelect(indexes, selected, rowIndexes === -1 ? [] : newData.filter(function (d) { - return d._selected; - })); - } - }); + var _React$useState3 = React.useState(''), + _React$useState4 = _slicedToArray(_React$useState3, 2), + inputValue = _React$useState4[0], + setInputValue = _React$useState4[1]; - _defineProperty$2(_assertThisInitialized$2(_this), "onSelectAll", function (selected, selectAll) { - var onSelect = _this.props.onSelect; - var data = _this.state.data; - var indexes = Array.from({ - length: data.length - }, function (_, i) { - return i; - }); - var newData = updateBatchData(data, indexes, { - _selected: selected - }); + var baseProps = extractBaseProps(props); + React.useEffect(function () { + if (value !== undefined) { + setChips(value); + setInputValue(''); + } + }, [value]); + var ChipInputBorderClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'ChipInput-border', true), _defineProperty$1(_classNames, 'ChipInput-border--error', error), _classNames)); + var ChipInputClass = classnames((_classNames2 = { + ChipInput: true + }, _defineProperty$1(_classNames2, 'ChipInput--disabled', disabled), _defineProperty$1(_classNames2, 'ChipInput--withChips', chips && chips.length > 0), _defineProperty$1(_classNames2, 'ChipInput--error', error), _classNames2), className); - if (onSelect) { - onSelect(indexes, selected, newData.filter(function (d) { - return d._selected; - }), selectAll); + var onUpdateChips = function onUpdateChips(updatedChips) { + if (onChange) onChange(updatedChips); + }; + + var onChipDeleteHandler = function onChipDeleteHandler(index) { + var updatedChips = _toConsumableArray(chips); + + updatedChips.splice(index, 1); + + if (!value) { + setChips(updatedChips); + } + + onUpdateChips(updatedChips); + }; + + var onChipAddHandler = function onChipAddHandler() { + if (!inputValue) return; + var chip = inputValue.trim(); + var isChipExist = chips.filter(function (item) { + return item.label === chip; + }).length > 0; + + if ((allowDuplicates || !isChipExist) && chip) { + var updatedChips = [].concat(_toConsumableArray(chips), [{ + label: chip, + value: chip, + isSelectedOption: false + }]); + + if (!value) { + setChips(updatedChips); } - _this.setState({ - data: newData, - selectAll: getSelectAll(newData) - }); - }); + onUpdateChips(updatedChips); + setInputValue(''); + } + }; - _defineProperty$2(_assertThisInitialized$2(_this), "onPageChange", function (newPage) { - _this.setState({ - page: newPage - }); - }); + var onDeleteAllHandler = function onDeleteAllHandler(e) { + e.stopPropagation(); + var updatedChips = []; - _defineProperty$2(_assertThisInitialized$2(_this), "updateSchema", function (newSchema) { - _this.setState({ - schema: newSchema - }); - }); + if (!value) { + setChips(updatedChips); + } - _defineProperty$2(_assertThisInitialized$2(_this), "updateSortingList", function (newSortingList) { - var multipleSorting = _this.props.multipleSorting; + onUpdateChips(updatedChips); + setInputValue(''); + onInputChange && onInputChange(); + }; - _this.setState({ - sortingList: multipleSorting ? _toConsumableArray(newSortingList) : newSortingList.slice(-1), - page: 1 - }); - }); + var onKeyDownHandler = function onKeyDownHandler(event) { + var chipsLength = chips.length; - _defineProperty$2(_assertThisInitialized$2(_this), "updateFilterList", function (newFilterList) { - _this.setState({ - filterList: newFilterList, - page: 1 - }); - }); + switch (event.key) { + case keyCodes.DELETE: + case keyCodes.BACKSPACE: + if (inputValue === '' && chipsLength > 0) { + onChipDeleteHandler(chipsLength - 1); + } - _defineProperty$2(_assertThisInitialized$2(_this), "updateSearchTerm", function (newSearchTerm) { - _this.setState({ - searchTerm: newSearchTerm, - page: 1 - }); - }); + break; - var _async = ('fetchData' in _this.props); + case keyCodes.ENTER: + event.preventDefault(); + onChipAddHandler(); + break; + } - var _data = props.data || []; + onKeyDown && onKeyDown(event); + }; - var _schema = props.schema || []; + var onInputChangeHandler = function onInputChangeHandler(event) { + setInputValue(event.target.value); + onInputChange && onInputChange(event); + }; - _this.state = { - async: _async, - data: !_async ? _data : [], - schema: !_async ? _schema : [], - page: props.page, - sortingList: props.sortingList, - filterList: props.filterList, - totalRecords: !_async ? _data.length : 0, - loading: !_async ? props.loading : true, - error: !_async ? props.error : false, - errorType: props.errorType, - selectAll: getSelectAll([]), - searchTerm: undefined - }; - _this.debounceUpdate = debounce$1(props.searchDebounceDuration, _this.updateDataFn); - return _this; - } + var onClickHandler = function onClickHandler() { + var _inputRef$current; - _createClass$1(Table, [{ - key: "componentDidMount", - value: function componentDidMount() { - this.updateData(); - } - }, { - key: "componentDidUpdate", - value: function componentDidUpdate(prevProps, prevState) { - var _this2 = this; + (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus(); + }; - if (!this.state.async) { - if (prevProps.loading !== this.props.loading || prevProps.error !== this.props.error) { - var _this$props2 = this.props, - _this$props2$data = _this$props2.data, - _data3 = _this$props2$data === void 0 ? [] : _this$props2$data, - _this$props2$schema = _this$props2.schema, - schema = _this$props2$schema === void 0 ? [] : _this$props2$schema; + var chipComponents = chips.map(function (chip, index) { + var _chipOptions$type = chipOptions.type, + type = _chipOptions$type === void 0 ? 'input' : _chipOptions$type, + _onClick = chipOptions.onClick, + rest = _objectWithoutProperties(chipOptions, _excluded2); - this.setState({ - data: _data3, - schema: schema, - loading: this.props.loading || false, - error: this.props.error || false, - errorType: this.props.errorType, - page: 1, - totalRecords: _data3.length || 0, - selectAll: getSelectAll([]) - }, function () { - _this2.updateData(); - }); - } + var chipLabel = typeof chip === 'string' ? chip : chip === null || chip === void 0 ? void 0 : chip.label; + return /*#__PURE__*/React.createElement(Chip, _extends$2({ + "data-test": "DesignSystem-MultiSelectTrigger--Chip", + label: chipLabel, + name: chip, + type: type, + disabled: disabled, + key: index, + className: "my-3 mx-2", + onClick: function onClick() { + return _onClick && _onClick(chip, index); + }, + onClose: function onClose() { + return onChipDeleteHandler(index); } + }, rest)); + }); + return ( + /*#__PURE__*/ - if (prevState.page !== this.state.page) { - var onPageChange = this.props.onPageChange; - if (onPageChange) onPageChange(this.state.page); - } + /* TODO(a11y): fix accessibility */ - if (prevState.page !== this.state.page || prevState.filterList !== this.state.filterList || prevState.sortingList !== this.state.sortingList || prevState.searchTerm !== this.state.searchTerm) { - if (!this.props.loading) { - // let errorType = ""; - // let errorCount = 0; - // if(prevState.page !== this.state.page) errorType = "ON_PAGE_CHANGE", errorCount++; - // if(prevState.filterList !== this.state.filterList) errorType = "ON_FILTER_CHANGE", errorCount++; - // if(prevState.sortingList !== this.state.sortingList) errorType = "ON_SORTING_CHANGE", errorCount++; - // if(prevState.searchTerm !== this.state.searchTerm) errorType = "ON_SEARCH_CHANGE", errorCount++; - // this.setState({ - // errorType: errorCount > 1 ? "FAILED_TO_FETCH" : errorType - // }); - var searchUpdate = prevState.searchTerm !== this.state.searchTerm; - this.updateData(searchUpdate); - } - } + /* eslint-disable */ + React.createElement("div", { + "data-test": "DesignSystem-MultiSelectTrigger--Border", + className: ChipInputBorderClass + }, /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-MultiSelectTrigger" + }, baseProps, { + className: ChipInputClass, + onClick: onClickHandler, + tabIndex: disabled ? -1 : tabIndex || 0 + }), /*#__PURE__*/React.createElement("div", { + className: "ChipInput-wrapper" + }, chips && chips.length > 0 && chipComponents, /*#__PURE__*/React.createElement("input", _extends$2({}, rest, { + "data-test": "DesignSystem-MultiSelectTrigger--Input", + ref: props.forwardedRef || inputRef, + className: "ChipInput-input", + autoFocus: autoFocus, + placeholder: chips && chips.length > 0 ? '' : placeholder, + disabled: disabled, + value: inputValue, + onBlur: onBlur, + onFocus: onFocus, + onChange: onInputChangeHandler, + onKeyDown: onKeyDownHandler, + role: role + }))), (chips.length > 0 || inputValue.length > 0) && /*#__PURE__*/React.createElement(Icon, { + "data-test": "DesignSystem-MultiSelectTrigger--Icon", + name: "close", + appearance: disabled ? 'disabled' : 'subtle', + className: "ChipInput-icon", + onClick: onDeleteAllHandler, + tabIndex: disabled ? -1 : 0 + }))) + ); +}; +MultiSelectTrigger.displayName = 'MultiSelectTrigger'; +MultiSelectTrigger.defaultProps = { + chipOptions: {}, + defaultValue: [], + allowDuplicates: false, + autoFocus: false +}; + +var ChipInputBox = function ChipInputBox(props) { + var contextProp = React__default.useContext(ComboboxContext); + var chipInputValue = contextProp.chipInputValue, + setChipInputValue = contextProp.setChipInputValue, + setOpenPopover = contextProp.setOpenPopover, + setFocusedOption = contextProp.setFocusedOption, + setChipInputText = contextProp.setChipInputText, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + inputTriggerRef = contextProp.inputTriggerRef, + openPopover = contextProp.openPopover, + popoverId = contextProp.popoverId; + + var onChangeHandler = function onChangeHandler(chips) { + setFocusedOption && setFocusedOption(undefined); + setChipInputValue && setChipInputValue(chips); + + if (chips.length === 0) { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); } - }, { - key: "render", - value: function render() { - var _this$props3 = this.props, - showHead = _this$props3.showHead, - type = _this$props3.type, - size = _this$props3.size, - headCellTooltip = _this$props3.headCellTooltip, - separator = _this$props3.separator, - draggable = _this$props3.draggable, - nestedRows = _this$props3.nestedRows, - nestedRowRenderer = _this$props3.nestedRowRenderer, - withHeader = _this$props3.withHeader, - headerOptions = _this$props3.headerOptions, - withCheckbox = _this$props3.withCheckbox, - showMenu = _this$props3.showMenu, - withPagination = _this$props3.withPagination, - paginationType = _this$props3.paginationType, - pageSize = _this$props3.pageSize, - onRowClick = _this$props3.onRowClick, - loaderSchema = _this$props3.loaderSchema, - errorTemplate = _this$props3.errorTemplate, - className = _this$props3.className, - filterPosition = _this$props3.filterPosition; - var baseProps = extractBaseProps(this.props); + }; - var _ref = headerOptions, - headerChildren = _ref.children, - headerAttr = _objectWithoutProperties$1(_ref, _excluded$1); + var onUpdateHandler = function onUpdateHandler(event) { + var _event$target; - var classes = className ? " ".concat(className) : ''; - var totalRecords = this.state.totalRecords; - var totalPages = getTotalPages(totalRecords, pageSize); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: "Table".concat(classes) - }), withHeader && /*#__PURE__*/React.createElement("div", { - className: "Table-header" - }, /*#__PURE__*/React.createElement(Header, _extends$3({}, this.state, { - // updateData={updateData} - updateSchema: this.updateSchema // updateSortingList={updateSortingList} - , - updateFilterList: this.updateFilterList, - updateSearchTerm: this.updateSearchTerm, - showHead: showHead, - onSelectAll: this.onSelectAll, - withCheckbox: withCheckbox, - withPagination: withPagination, - pageSize: pageSize, - showFilters: filterPosition === 'HEADER' - }, headerAttr), headerChildren)), /*#__PURE__*/React.createElement("div", { - className: "Table-grid" - }, /*#__PURE__*/React.createElement(Grid, _extends$3({}, this.state, { - updateData: this.updateData, - updateSchema: this.updateSchema, - updateSortingList: this.updateSortingList, - updateFilterList: this.updateFilterList, - withCheckbox: withCheckbox, - onSelect: this.onSelect, - onSelectAll: this.onSelectAll, - showMenu: showMenu, - showHead: showHead, - type: type, - size: size, - headCellTooltip: headCellTooltip, - separator: separator, - draggable: draggable, - nestedRows: nestedRows, - nestedRowRenderer: nestedRowRenderer, - withPagination: withPagination && totalPages > 1, - pageSize: pageSize, - loaderSchema: loaderSchema, - errorTemplate: errorTemplate && errorTemplate({ - errorType: this.state.errorType - }), - onRowClick: onRowClick, - showFilters: filterPosition === 'GRID' - }))), withPagination && !this.state.loading && !this.state.error && totalPages > 1 && /*#__PURE__*/React.createElement("div", { - className: "Table-pagination" - }, /*#__PURE__*/React.createElement(Pagination, { - page: this.state.page, - totalPages: getTotalPages(totalRecords, pageSize), - type: paginationType, - onPageChange: this.onPageChange - }))); + var value = event === null || event === void 0 ? void 0 : (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value; + + if (!value) { + setChipInputText === null || setChipInputText === void 0 ? void 0 : setChipInputText(''); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + inputTriggerRef === null || inputTriggerRef === void 0 ? void 0 : inputTriggerRef.current.focus(); + return; } - }]); - return Table; -}(React.Component); + setChipInputText && setChipInputText(value); + + if (value !== '') { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + } + }; -_defineProperty$2(Table, "defaultProps", defaultProps); + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$3(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem); + props.onKeyDown && props.onKeyDown(event); + }; -/** - * **`List` is a pattern of `Table` with no Head Cells.** - * - * Please refer to stories of Table for examples. Simply replace `Table` with `List` to use it. - */ -var List = function List(props) { - return /*#__PURE__*/React.createElement(Table, _extends$3({}, props, { - showHead: false, - filterPosition: 'HEADER' + return /*#__PURE__*/React__default.createElement(MultiSelectTrigger, _extends$2({}, props, { + value: chipInputValue, + onChange: onChangeHandler, + onInputChange: onUpdateHandler, + onKeyDown: onKeyDownHandler, + tabIndex: -1, + forwardedRef: inputTriggerRef, + role: "combobox", + "aria-haspopup": "listbox", + "aria-controls": popoverId, + "aria-label": props.placeholder || 'Combobox-ChipInput-Trigger', + "aria-expanded": openPopover, + "data-test": "DesignSystem-Combobox-ChipInput" })); }; -List.defaultProps = defaultProps; -var useState$1 = React.useState; -var VerticalNavigation = function VerticalNavigation(props) { - var menus = props.menus, - active = props.active, - onClick = props.onClick, - expanded = props.expanded, - rounded = props.rounded, - onToggle = props.onToggle, - footer = props.footer, - autoCollapse = props.autoCollapse; +var _excluded$a = ["multiSelect", "chipValue", "value"]; +var ComboboxTrigger = function ComboboxTrigger(props) { + var multiSelect = props.multiSelect, + chipValue = props.chipValue, + value = props.value, + rest = _objectWithoutProperties(props, _excluded$a); + + if (multiSelect) { + var icon = props.icon, + clearButton = props.clearButton, + iconType = props.iconType; + var chipInputOptions = { + icon: icon, + clearButton: clearButton, + iconType: iconType + }; + return /*#__PURE__*/React.createElement(ChipInputBox, _extends$2({ + defaultValue: [], + chipOptions: _objectSpread2({}, chipInputOptions) + }, rest, { + value: chipValue + })); + } + + return /*#__PURE__*/React.createElement(InputBox, _extends$2({}, props, { + value: value === null || value === void 0 ? void 0 : value.label + })); +}; + +var Combobox = function Combobox(props) { + var children = props.children, + onChange = props.onChange, + multiSelect = props.multiSelect, + className = props.className, + maxHeight = props.maxHeight, + width = props.width, + value = props.value, + placeholder = props.placeholder, + disabled = props.disabled, + error = props.error, + onBlur = props.onBlur, + onFocus = props.onFocus, + onClear = props.onClear, + icon = props.icon, + iconType = props.iconType, + size = props.size, + chipValue = props.chipValue, + clearButton = props.clearButton, + onSearch = props.onSearch, + onKeyDown = props.onKeyDown, + onKeyUp = props.onKeyUp; - var _useState = useState$1({}), - _useState2 = _slicedToArray(_useState, 2), - menuState = _useState2[0], - setMenuState = _useState2[1]; + var _React$useState = React.useState(), + _React$useState2 = _slicedToArray(_React$useState, 2), + popoverStyle = _React$useState2[0], + setPopoverStyle = _React$useState2[1]; + + var _React$useState3 = React.useState({}), + _React$useState4 = _slicedToArray(_React$useState3, 2), + wrapperStyle = _React$useState4[0], + setWrapperStyle = _React$useState4[1]; + + var triggerRef = /*#__PURE__*/React.createRef(); + var listRef = /*#__PURE__*/React.createRef(); + var _React$useState5 = React.useState(false), + _React$useState6 = _slicedToArray(_React$useState5, 2), + openPopover = _React$useState6[0], + setOpenPopover = _React$useState6[1]; + + var _React$useState7 = React.useState(false), + _React$useState8 = _slicedToArray(_React$useState7, 2), + isOptionSelected = _React$useState8[0], + setIsOptionSelected = _React$useState8[1]; + + var _React$useState9 = React.useState(), + _React$useState10 = _slicedToArray(_React$useState9, 2), + focusedOption = _React$useState10[0], + setFocusedOption = _React$useState10[1]; + + var _React$useState11 = React.useState(value || { + label: '', + value: '' + }), + _React$useState12 = _slicedToArray(_React$useState11, 2), + inputValue = _React$useState12[0], + setInputValue = _React$useState12[1]; + + var _React$useState13 = React.useState(chipValue), + _React$useState14 = _slicedToArray(_React$useState13, 2), + chipInputValue = _React$useState14[0], + setChipInputValue = _React$useState14[1]; + + var _React$useState15 = React.useState(''), + _React$useState16 = _slicedToArray(_React$useState15, 2), + chipInputText = _React$useState16[0], + setChipInputText = _React$useState16[1]; + + var _React$useState17 = React.useState(false), + _React$useState18 = _slicedToArray(_React$useState17, 2), + highlightFirstItem = _React$useState18[0], + setHighlightFirstItem = _React$useState18[1]; + + var _React$useState19 = React.useState(false), + _React$useState20 = _slicedToArray(_React$useState19, 2), + highlightLastItem = _React$useState20[0], + setHighlightLastItem = _React$useState20[1]; + + var inputTriggerRef = React.useRef(); + var popoverId = "DesignSystem-Combobox--Popover-".concat(uidGenerator()); React.useEffect(function () { - if (props.active) { - var currMenu = getMenu(menus, props.active); - if (currMenu) updateMenuState(currMenu, true); + var _triggerRef$current; + + var popperWidth = (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.clientWidth; + var popperWrapperStyle = { + width: width || popperWidth + }; + var wrapperStyle = { + maxHeight: maxHeight || 'var(--spacing-9)', + overflowY: 'auto', + boxSizing: 'border-box' + }; + setWrapperStyle(wrapperStyle); + setPopoverStyle(popperWrapperStyle); + }, []); + React.useEffect(function () { + if (isOptionSelected) { + multiSelect ? setOpenPopover(true) : setOpenPopover(false); + setIsOptionSelected(false); } - }, [props.active]); - var updateMenuState = function updateMenuState(menu, val) { - var currMenu = getMenu(menus, menu); + var value = multiSelect ? chipInputValue : inputValue; + onChange && !isOptionSelected && onChange(value); + }, [inputValue, chipInputValue]); + React.useEffect(function () { + if (highlightFirstItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$2('down', setFocusedOption, listRef); + }); + } + }, [highlightFirstItem]); + React.useEffect(function () { + if (highlightLastItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$2('up', setFocusedOption, listRef); + }); + } + }, [highlightLastItem]); + React.useEffect(function () { + if (!openPopover) { + setHighlightFirstItem(false); + setHighlightLastItem(false); + } + }, [openPopover]); + React.useEffect(function () { + onSearch && onSearch(chipInputText); + }, [chipInputText]); - if (currMenu) { - var nameSplit = currMenu.name.split('.'); + var onOptionClick = function onOptionClick(option) { + setIsOptionSelected(true); - if (nameSplit.length > 1 || currMenu.subMenu) { - var name = nameSplit[0]; + if (!multiSelect) { + setInputValue(option); + onChange && onChange(option); + } else { + var chipList = chipInputValue ? [].concat(_toConsumableArray(chipInputValue), [option]) : [option]; + setChipInputValue(chipList); + onChange && onChange(chipList); + } + }; - if (autoCollapse) { - setMenuState(_defineProperty$2({}, name, val || !menuState[name])); - } else { - var menuData = _objectSpread2({}, menuState); + var outsideClickHandler = function outsideClickHandler() { + !multiSelect && setOpenPopover(false); + }; - menuData[name] = val !== undefined ? val : !menuData[name]; - setMenuState(menuData); - } - } else { - if (autoCollapse) { - if (!expanded) setMenuState({}); - } - } - } + var onToggleHandler = function onToggleHandler(open) { + open ? setOpenPopover(true) : setOpenPopover(false); }; - var onClickHandler = function onClickHandler(menu) { - if (!menu.disabled) { - if (menu.subMenu) { - if (!expanded) { - if (onClick) onClick(menu.subMenu[0]); - } else { - updateMenuState(menu); - } - } else { - if (onClick) onClick(menu); - } - } + var triggerProps = { + value: value, + placeholder: placeholder, + disabled: disabled, + error: error, + onBlur: onBlur, + onFocus: onFocus, + onClear: onClear, + icon: icon, + iconType: iconType, + size: size, + multiSelect: multiSelect, + chipValue: chipValue, + clearButton: clearButton, + onKeyDown: onKeyDown, + onKeyUp: onKeyUp + }; + var contextProp = { + inputValue: inputValue, + setInputValue: setInputValue, + onOptionClick: onOptionClick, + openPopover: openPopover, + setOpenPopover: setOpenPopover, + isOptionSelected: isOptionSelected, + setIsOptionSelected: setIsOptionSelected, + chipInputValue: chipInputValue, + setChipInputValue: setChipInputValue, + focusedOption: focusedOption, + setFocusedOption: setFocusedOption, + chipInputText: chipInputText, + setChipInputText: setChipInputText, + inputTriggerRef: inputTriggerRef, + setHighlightFirstItem: setHighlightFirstItem, + setHighlightLastItem: setHighlightLastItem, + multiSelect: multiSelect, + listRef: listRef, + onSearch: onSearch, + popoverId: popoverId }; + return /*#__PURE__*/React.createElement(ComboboxContext.Provider, { + value: contextProp + }, /*#__PURE__*/React.createElement("div", { + ref: triggerRef, + className: className + }, /*#__PURE__*/React.createElement(OutsideClick, { + onOutsideClick: outsideClickHandler + }, /*#__PURE__*/React.createElement(Popover, { + open: openPopover && !disabled, + triggerClass: "d-block", + customStyle: popoverStyle, + onToggle: onToggleHandler, + trigger: /*#__PURE__*/React.createElement(ComboboxTrigger, triggerProps) + }, /*#__PURE__*/React.createElement("div", { + style: wrapperStyle, + ref: listRef, + id: popoverId + }, children && typeof children === 'function' ? children(contextProp) : children))))); +}; +Combobox.List = ComboboxList; +Combobox.Option = ComboboxOption; - var list = menus.map(function (menu, index) { - var _classNames; +var SelectContext = /*#__PURE__*/React.createContext({}); - var activeMenu = expanded && !menuState[menu.name] && isMenuActive(menus, menu, active); - var activeMenuIcon = !expanded && isMenuActive(menus, menu, active) || activeMenu; - var menuClasses = classnames((_classNames = { - 'Navigation-menu': true - }, _defineProperty$2(_classNames, 'Navigation-menu--vertical', true), _defineProperty$2(_classNames, 'Navigation-menu--active', activeMenu), _defineProperty$2(_classNames, 'Navigation-menu--rounded', expanded && rounded), _classNames)); - var menuIconClasses = classnames({ - 'Navigation-menuIcon': true, - 'Navigation-menuIcon--active': activeMenuIcon - }); - return /*#__PURE__*/React.createElement("div", { - key: index - }, /*#__PURE__*/React.createElement("div", { - className: menuClasses, - onClick: function onClick() { - return onClickHandler(menu); - } - }, menu.icon && /*#__PURE__*/React.createElement(Icon, { - className: menuIconClasses, - name: menu.icon, - appearance: getIconAppearance(activeMenuIcon, menu.disabled) - }), expanded && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", { - className: "Navigation-menuLabel" - }, /*#__PURE__*/React.createElement(Text, { - appearance: getTextAppearance(activeMenu, menu.disabled) - }, menu.label)), menu.subMenu && menu.subMenu.length > 0 && /*#__PURE__*/React.createElement(Icon, { - className: "mx-4", - name: menuState[menu.name] ? 'keyboard_arrow_up' : 'keyboard_arrow_down', - appearance: "subtle" - }))), /*#__PURE__*/React.createElement("div", { - className: "Navigation-subMenu" - }, menuState[menu.name] && menu.subMenu && expanded && menu.subMenu.map(function (subMenu, ind) { - var _classNames2; +var _excluded$9 = ["children"]; +var SelectList = function SelectList(props) { + var contextProp = React.useContext(SelectContext); + var withSearch = contextProp.withSearch, + minHeight = contextProp.minHeight, + maxHeight = contextProp.maxHeight, + multiSelect = contextProp.multiSelect; - var isActive = isMenuActive(menus, subMenu, active); - var subMenuClasses = classnames(menuClasses, (_classNames2 = {}, _defineProperty$2(_classNames2, 'Navigation-menu--subMenu', true), _defineProperty$2(_classNames2, 'Navigation-menu--active', isActive), _classNames2)); - return /*#__PURE__*/React.createElement("div", { - key: ind, - className: subMenuClasses, - onClick: function onClick() { - return onClickHandler(subMenu); - } - }, /*#__PURE__*/React.createElement(Text, { - appearance: getTextAppearance(isActive, subMenu.disabled) - }, subMenu.label)); - }))); - }); - var footerClasses = classnames(_defineProperty$2({ - 'Navigation-footer': true - }, 'Navigation-footer--border', true)); - return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", { - className: "Navigation-body" - }, list), footer && /*#__PURE__*/React.createElement("div", { - className: footerClasses - }, /*#__PURE__*/React.createElement(Icon, { - className: "Navigation-menuIcon Navigation-menuIcon--footer", - name: "menu_open", - size: 16, - onClick: function onClick() { - return onToggle && onToggle(!expanded); - } - }))); + var children = props.children, + rest = _objectWithoutProperties(props, _excluded$9); + + var searchInputHeight = 33; + var wrapperStyle = { + maxHeight: withSearch ? maxHeight - searchInputHeight : maxHeight, + overflowY: 'auto', + minHeight: minHeight + }; + return /*#__PURE__*/React.createElement(Listbox, _extends$2({ + "aria-label": "Options item list", + "aria-multiselectable": multiSelect, + className: "my-3" + }, rest), /*#__PURE__*/React.createElement("div", { + style: wrapperStyle + }, children)); }; -VerticalNavigation.defaultProps = { - expanded: true, - autoCollapse: true, - rounded: false +SelectList.defaultProps = { + type: 'option', + showDivider: false, + size: 'compressed', + tagName: 'ul' }; -/** - * ####NOTE: Navigation will be deprecated soon. VerticalNav and HorizontalNav will be supported. - */ -var Navigation = function Navigation(props) { - var _classNames; +var mapInitialValue = function mapInitialValue(multiSelect, selectedValue) { + if (multiSelect) { + return selectedValue && !Array.isArray(selectedValue) ? [selectedValue] : selectedValue || []; + } else { + return selectedValue || { + label: '', + value: '' + }; + } +}; +var elementExist = function elementExist(targetObject, mainList) { + if (!Array.isArray(mainList)) { + return targetObject.value === (mainList === null || mainList === void 0 ? void 0 : mainList.value) ? 0 : -1; + } - var type = props.type, - align = props.align, - menus = props.menus, - active = props.active, - onClick = props.onClick, - expanded = props.expanded, - rounded = props.rounded, - onToggle = props.onToggle, - footer = props.footer, - autoCollapse = props.autoCollapse, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classnames((_classNames = {}, _defineProperty$2(_classNames, 'Navigation', true), _defineProperty$2(_classNames, "Navigation--".concat(type), type), _defineProperty$2(_classNames, 'justify-content-center', type === 'horizontal' && align === 'center'), _defineProperty$2(_classNames, 'justify-content-start', type === 'horizontal' && align === 'left'), _defineProperty$2(_classNames, 'Navigation--collapsed', !expanded), _classNames), className); + return mainList.findIndex(function (item) { + return item.value === targetObject.value; + }); +}; +var removeOrAddToList = function removeOrAddToList(targetObject, prevList) { + var newList = _toConsumableArray(prevList); - var renderNavigation = function renderNavigation() { - return type === 'horizontal' ? /*#__PURE__*/React.createElement(HorizontalNav, { - menus: menus, - active: active, - onClick: onClick - }) : /*#__PURE__*/React.createElement(VerticalNavigation, { - menus: menus, - active: active, - autoCollapse: autoCollapse, - expanded: expanded, - rounded: rounded, - footer: footer, - onToggle: onToggle, - onClick: onClick - }); - }; + var existingIndex = elementExist(targetObject, newList); - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: classes - }), renderNavigation()); + if (existingIndex !== -1) { + newList.splice(existingIndex, 1); + } else { + newList.push(targetObject); + } + + return newList; }; -Navigation.defaultProps = { - type: 'horizontal', - align: 'center', - expanded: true, - autoCollapse: true, - rounded: false +var computeValue = function computeValue(multiSelect, selectValue, setLabel) { + if (!multiSelect) { + return (selectValue === null || selectValue === void 0 ? void 0 : selectValue.label.trim()) || ''; + } + + var label = setLabel === null || setLabel === void 0 ? void 0 : setLabel(selectValue.length); + + if (label) { + return label; + } + + if (selectValue.length <= 2) { + return selectValue.map(function (pair) { + return "".concat(pair.label); + }).join(', '); + } else { + return "".concat(selectValue.length, " Selected"); + } }; +var handleKeyDownTrigger = function handleKeyDownTrigger(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem) { + switch (event.key) { + case 'Enter': + event.preventDefault(); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; -var PageHeader = function PageHeader(props) { - var _classNames; + case 'ArrowDown': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; - var title = props.title, - navigation = props.navigation, - stepper = props.stepper, - actions = props.actions, - tabs = props.tabs, - breadcrumbs = props.breadcrumbs, - badge = props.badge, - separator = props.separator, - status = props.status, - meta = props.meta, - navigationPosition = props.navigationPosition, - className = props.className; - var baseProps = extractBaseProps(props); - var wrapperClasses = classnames((_classNames = { - 'PageHeader-wrapper': true - }, _defineProperty$2(_classNames, 'PageHeader-wrapper--separator', separator), _defineProperty$2(_classNames, 'PageHeader-wrapper--withTabs', tabs), _classNames), className); - var classes = classnames({ - PageHeader: true + case 'ArrowUp': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(true); + break; + } +}; +var focusListItem$1 = function focusListItem(position, setFocusedOption, listRef) { + var _listRef$current, _listRef$current2, _targetOption, _targetOption2; + + var searchInput = (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.querySelectorAll('[data-test="DesignSystem-Select--Input"]'); + var listItems = (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 ? void 0 : _listRef$current2.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; + + if (position === 'down') { + targetOption = (searchInput === null || searchInput === void 0 ? void 0 : searchInput[0]) || (listItems === null || listItems === void 0 ? void 0 : listItems[0]); + } else { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[listItems.length - 1]; + } + + (_targetOption = targetOption) === null || _targetOption === void 0 ? void 0 : _targetOption.focus(); + (_targetOption2 = targetOption) === null || _targetOption2 === void 0 ? void 0 : _targetOption2.scrollIntoView({ + block: 'center' }); + setFocusedOption && setFocusedOption(targetOption); +}; +var handleKeyDown$2 = function handleKeyDown(event, focusedOption, setFocusedOption, setHighlightFirstItem, setHighlightLastItem, listRef, withSearch, setOpenPopover, triggerRef) { + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + navigateOptions$1('up', focusedOption, setFocusedOption, listRef, withSearch); + break; - var renderCenter = function renderCenter() { - if (!navigation && !stepper) { - return null; - } + case 'ArrowDown': + event.preventDefault(); + navigateOptions$1('down', focusedOption, setFocusedOption, listRef, withSearch); + break; - return /*#__PURE__*/React.createElement("div", { - className: "PageHeader-navigationWrapper" - }, navigation || stepper); - }; + case 'Enter': + handleEnterKey(focusedOption); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(false); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(false); + break; - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: wrapperClasses - }), breadcrumbs, /*#__PURE__*/React.createElement("div", { - className: classes - }, /*#__PURE__*/React.createElement(Row, null, /*#__PURE__*/React.createElement(Column, { - size: "4", - sizeXL: "4", - sizeM: "4" - }, /*#__PURE__*/React.createElement("div", { - className: "PageHeader-titleWrapper" - }, /*#__PURE__*/React.createElement(Heading, { - className: "PageHeader-title" - }, title), badge)), /*#__PURE__*/React.createElement(Column, { - size: "4", - sizeXL: "4", - sizeM: "4" - }, (!breadcrumbs || navigationPosition === 'center') && renderCenter()), /*#__PURE__*/React.createElement(Column, { - size: "4", - sizeXL: "4", - sizeM: "4" - }, actions))), (status || meta) && /*#__PURE__*/React.createElement("div", { - className: "PageHeader-statusWrapper" - }, status, meta), breadcrumbs && navigationPosition === 'bottom' && renderCenter(), tabs && /*#__PURE__*/React.createElement("div", null, tabs)); + case 'Tab': + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(false); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(false); + break; + + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + triggerRef.current.focus(); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; + } }; -PageHeader.defaultProps = { - navigationPosition: 'center', - separator: true +var handleEnterKey = function handleEnterKey(focusedOption) { + focusedOption === null || focusedOption === void 0 ? void 0 : focusedOption.click(); }; +var navigateOptions$1 = function navigateOptions(direction, focusedOption, setFocusedOption, listRef, withSearch) { + var listItems = listRef.current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var index = Array.from(listItems).findIndex(function (item) { + return item == focusedOption; + }); -var useEffect = React.useEffect, - useState = React.useState; -var IconMapping = { - audio: 'audiotrack', - image: 'image', - video: 'movie', - application: 'insert_drive_file', - others: 'text_snippet' + if (index === -1) { + index = direction === 'up' ? listItems.length - 1 : 0; + } else if (withSearch && index === 0 && direction === 'up' || withSearch && index === listItems.length - 1 && direction === 'down') { + var searchInput = listRef.current.querySelector('[data-test="DesignSystem-Select--Input"]'); + searchInput.focus(); + setFocusedOption && setFocusedOption(searchInput); + } else { + index = direction === 'up' ? (index - 1 + listItems.length) % listItems.length : (index + 1) % listItems.length; + var targetOption = listItems[index]; + targetOption.focus(); + setFocusedOption && setFocusedOption(targetOption); + targetOption.scrollIntoView({ + block: 'center' + }); + } }; -var FileIcon = function FileIcon(props) { - var _classNames, _classNames2; +var handleInputKeyDown = function handleInputKeyDown(event, listRef, setFocusedOption, setOpenPopover, triggerRef) { + var _listRef$current3, _targetOption3, _targetOption4; - var progress = props.progress, - status = props.status, - file = props.file; + var listItems = (_listRef$current3 = listRef.current) === null || _listRef$current3 === void 0 ? void 0 : _listRef$current3.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; - var _useState = useState(false), - _useState2 = _slicedToArray(_useState, 2), - animate = _useState2[0], - setAnimate = _useState2[1]; + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + targetOption = listItems[listItems.length - 1]; + break; - var type = file.type.split('/')[0] || 'others'; - var fileType = IconMapping[type] ? type : 'others'; - var iconClass = classnames((_classNames = {}, _defineProperty$2(_classNames, 'FileIcon', true), _defineProperty$2(_classNames, 'FileIcon--animate', animate), _defineProperty$2(_classNames, "FileIcon--".concat(fileType), true), _classNames)); - var uploadingIconClass = classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'FileIcon', true), _defineProperty$2(_classNames2, 'FileIcon--uploading', true), _classNames2)); - useEffect(function () { - if (status === 'completed') { - setAnimate(true); - } else { - setAnimate(false); - } - }, [status]); + case 'ArrowDown': + event.preventDefault(); + targetOption = listItems[0]; + break; - if (status === 'uploading') { - return /*#__PURE__*/React.createElement(ProgressRing, { - size: "small", - value: progress || 0, - className: uploadingIconClass - }); + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + triggerRef.current.focus(); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; } - return /*#__PURE__*/React.createElement(Icon, { - name: IconMapping[fileType], - className: iconClass + (_targetOption3 = targetOption) === null || _targetOption3 === void 0 ? void 0 : _targetOption3.focus(); + (_targetOption4 = targetOption) === null || _targetOption4 === void 0 ? void 0 : _targetOption4.scrollIntoView({ + block: 'center' }); -}; -FileIcon.displayName = 'FileIcon'; -FileIcon.defaultProps = { - progress: 0, - status: 'completed' + setFocusedOption && setFocusedOption(targetOption); }; -var FileListItem = function FileListItem(props) { - var progress = props.progress, - errorMessage = props.errorMessage, +var _excluded$8 = ["children", "option", "checkedState", "onClick", "withCheckbox", "disabled"]; +var SelectOption = function SelectOption(props) { + var children = props.children, + option = props.option, + checkedState = props.checkedState, onClick = props.onClick, - className = props.className, - actions = props.actions, - fileItem = props.fileItem, - file = props.file, - status = props.status, - fileSize = props.fileSize; - var name = file.name; - var baseProps = extractBaseProps(props); - var FileItemClass = classnames(_defineProperty$2({}, 'FileItem', true), className); + _props$withCheckbox = props.withCheckbox, + withCheckbox = _props$withCheckbox === void 0 ? true : _props$withCheckbox, + disabled = props.disabled, + rest = _objectWithoutProperties(props, _excluded$8); + + var contextProp = React.useContext(SelectContext); + var onOptionClick = contextProp.onOptionClick, + selectValue = contextProp.selectValue, + setSelectValue = contextProp.setSelectValue, + multiSelect = contextProp.multiSelect, + setIsOptionSelected = contextProp.setIsOptionSelected, + focusedOption = contextProp.focusedOption, + setFocusedOption = contextProp.setFocusedOption, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + listRef = contextProp.listRef, + withSearch = contextProp.withSearch, + setOpenPopover = contextProp.setOpenPopover, + triggerRef = contextProp.triggerRef; var onClickHandler = function onClickHandler() { + if (disabled) return; + if (onClick) { - onClick(fileItem); + onClick(option); + return; } + + var newList = multiSelect && Array.isArray(selectValue) ? removeOrAddToList(option, selectValue) : option; + setIsOptionSelected === null || setIsOptionSelected === void 0 ? void 0 : setIsOptionSelected(Array.isArray(newList) ? newList.length !== 0 : true); + setSelectValue === null || setSelectValue === void 0 ? void 0 : setSelectValue(newList); + onOptionClick === null || onOptionClick === void 0 ? void 0 : onOptionClick(newList); }; - return /*#__PURE__*/React.createElement("div", _extends$3({}, baseProps, { - className: FileItemClass, - onClick: onClickHandler + var checked = checkedState === 'checked' || elementExist(option, selectValue) !== -1; + var indeterminate = checkedState === 'indeterminate'; + + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$2(event, focusedOption, setFocusedOption, setHighlightFirstItem, setHighlightLastItem, listRef, withSearch, setOpenPopover, triggerRef); + }; + + return /*#__PURE__*/React.createElement(Listbox.Item, _extends$2({ + role: "option", + onClick: onClickHandler, + "aria-selected": checked, + "aria-label": "option item", + onKeyDown: function onKeyDown(event) { + return onKeyDownHandler(event); + }, + selected: checked, + tabIndex: -1, + disabled: disabled, + "data-test": "DesignSystem-Select-Option" + }, rest), /*#__PURE__*/React.createElement("div", { + className: "d-flex align-items-center" + }, multiSelect && withCheckbox && /*#__PURE__*/React.createElement(Checkbox, { + tabIndex: -1, + "aria-checked": indeterminate ? 'mixed' : checked, + checked: checked, + indeterminate: indeterminate }), /*#__PURE__*/React.createElement("div", { - className: "FileItem-file" - }, /*#__PURE__*/React.createElement("div", { - className: "FileItem-fileContent" - }, /*#__PURE__*/React.createElement(FileIcon, { - file: file, - status: status, - progress: progress - }), /*#__PURE__*/React.createElement(Text, { - className: "FileItem-text", - appearance: status === 'completed' ? 'default' : 'subtle' - }, name)), /*#__PURE__*/React.createElement("div", { - className: "FileItem-actions" - }, /*#__PURE__*/React.createElement(Text, { - className: "FileItem-size", - appearance: 'subtle' - }, fileSize || file.size), !!actions && actions)), status === 'error' && /*#__PURE__*/React.createElement(Caption, { - className: 'FileItem-error', - error: true - }, errorMessage)); + className: multiSelect ? 'Select-trigger-text pt-2' : 'Select-trigger-text' + }, children))); }; -FileListItem.defaultProps = { - progress: 0, - errorMessage: 'Network Error' +SelectOption.defaultProps = { + withCheckbox: true }; -FileListItem.displayName = 'FileListItem'; -var FileList = function FileList(props) { - var fileList = props.fileList, - onClick = props.onClick, - actionRenderer = props.actionRenderer, - className = props.className; - var baseProps = extractBaseProps(props); - if (fileList.length === 0) return null; - return /*#__PURE__*/React.createElement(Card, _extends$3({}, baseProps, { - shadow: 'none', - className: className - }), fileList.map(function (fileItem, index) { - return /*#__PURE__*/React.createElement(FileListItem, _extends$3({ - key: index, - onClick: onClick, - actions: actionRenderer && actionRenderer(fileItem), - fileItem: fileItem - }, fileItem)); - })); +var _excluded$7 = ["triggerSize", "placeholder", "withClearButton", "icon", "disabled", "inlineLabel", "iconType", "onClear", "setLabel"]; + +var SelectTrigger = function SelectTrigger(props) { + var _classNames; + + var triggerSize = props.triggerSize, + placeholder = props.placeholder, + withClearButton = props.withClearButton, + icon = props.icon, + disabled = props.disabled, + inlineLabel = props.inlineLabel, + iconType = props.iconType, + onClear = props.onClear, + setLabel = props.setLabel, + rest = _objectWithoutProperties(props, _excluded$7); + + var contextProp = React.useContext(SelectContext); + var elementRef = React.useRef(null); + var openPopover = contextProp.openPopover, + selectValue = contextProp.selectValue, + setSelectValue = contextProp.setSelectValue, + isOptionSelected = contextProp.isOptionSelected, + setIsOptionSelected = contextProp.setIsOptionSelected, + multiSelect = contextProp.multiSelect, + setOpenPopover = contextProp.setOpenPopover, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + triggerRef = contextProp.triggerRef; + var buttonDisabled = disabled ? 'disabled' : 'default'; + var trimmedPlaceholder = placeholder === null || placeholder === void 0 ? void 0 : placeholder.trim(); + var displayValue = computeValue(multiSelect, selectValue, setLabel); + var value = isOptionSelected && displayValue.length > 0 ? displayValue : trimmedPlaceholder; + var iconName = openPopover ? 'keyboard_arrow_up' : 'keyboard_arrow_down'; + + var onClearHandler = function onClearHandler(event) { + event.stopPropagation(); + var emptyValue = multiSelect ? [] : { + label: '', + value: '' + }; + setSelectValue === null || setSelectValue === void 0 ? void 0 : setSelectValue(emptyValue); + setIsOptionSelected === null || setIsOptionSelected === void 0 ? void 0 : setIsOptionSelected(false); + + if (onClear) { + onClear(event); + } + }; + + var buttonClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Button', true), _defineProperty$1(_classNames, 'Select-trigger', true), _defineProperty$1(_classNames, "Select-trigger--".concat(triggerSize), triggerSize), _defineProperty$1(_classNames, 'Select-trigger--placeholder', !isOptionSelected), _defineProperty$1(_classNames, 'Select-trigger--icon', icon), _defineProperty$1(_classNames, 'Select-trigger--open', openPopover), _classNames)); + var textClass = classnames(_defineProperty$1({}, 'Select-trigger-text', true)); + return /*#__PURE__*/React.createElement(Tooltip, { + showOnTruncation: true, + showTooltip: !openPopover, + tooltip: value, + elementRef: elementRef, + className: "w-100", + triggerClass: "w-100" + }, /*#__PURE__*/React.createElement("button", _extends$2({ + ref: triggerRef, + onKeyDown: function onKeyDown(event) { + return handleKeyDownTrigger(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem); + }, + type: "button", + className: buttonClass, + disabled: disabled, + tabIndex: 0, + "aria-haspopup": "listbox", + "aria-expanded": openPopover, + "aria-label": "trigger", + "data-test": "DesignSystem-Select-trigger" + }, rest), /*#__PURE__*/React.createElement("div", { + className: "Select-trigger-wrapper ellipsis--noWrap" + }, inlineLabel && /*#__PURE__*/React.createElement(Text, { + appearance: "subtle", + className: "mr-4 white-space-nowrap" + }, "".concat(inlineLabel.trim().charAt(0).toUpperCase()).concat(inlineLabel.trim().slice(1))), icon && !inlineLabel && /*#__PURE__*/React.createElement(Icon, { + appearance: buttonDisabled, + className: "d-flex align-items-center mr-4", + name: icon, + type: iconType + }), value && /*#__PURE__*/React.createElement(Text, { + ref: elementRef, + className: textClass + }, value)), isOptionSelected && withClearButton && /*#__PURE__*/React.createElement(Icon, { + appearance: buttonDisabled, + onClick: onClearHandler, + className: "align-items-center mr-2 ml-3 Select-crossButton", + size: 12, + name: "close", + "aria-label": "clear selected", + type: iconType, + "data-test": "DesignSystem-Select--closeIcon" + }), /*#__PURE__*/React.createElement(Icon, { + appearance: buttonDisabled, + name: iconName, + type: iconType + }))); }; -FileList.defaultProps = { - fileList: [] + +SelectTrigger.defaultProps = { + triggerSize: 'regular', + placeholder: 'Select', + withClearButton: true }; -FileList.displayName = 'FileList'; -var _excluded = ["type", "fields", "placeholder", "autoFocus", "onComplete", "onFocus", "onBlur", "className", "value"]; -var KEY_CODE = { - backspace: 'Backspace', - left: 'ArrowLeft', - up: 'ArrowUp', - right: 'ArrowRight', - down: 'ArrowDown', - e: 'e', - E: 'E' +var _excluded$6 = ["onChange", "onClear"]; +var SearchInput = function SearchInput(props) { + var contextProp = React.useContext(SelectContext); + var setWithSearch = contextProp.setWithSearch, + maxHeight = contextProp.maxHeight, + listRef = contextProp.listRef, + setFocusedOption = contextProp.setFocusedOption, + setOpenPopover = contextProp.setOpenPopover, + triggerRef = contextProp.triggerRef; + + var onChange = props.onChange, + onClear = props.onClear, + rest = _objectWithoutProperties(props, _excluded$6); + + React.useEffect(function () { + setWithSearch === null || setWithSearch === void 0 ? void 0 : setWithSearch(true); + }, [maxHeight]); + + var searchHandler = function searchHandler(event) { + if (onChange) onChange(event.target.value); + }; + + var searchClearHandler = function searchClearHandler(event) { + if (onClear) onClear(event); + }; + + return /*#__PURE__*/React.createElement("div", { + className: "Select-inputWrapper" + }, /*#__PURE__*/React.createElement(Input, _extends$2({}, rest, { + icon: 'search', + onKeyDown: function onKeyDown(event) { + return handleInputKeyDown(event, listRef, setFocusedOption, setOpenPopover, triggerRef); + } // TODO(a11y): research more on this. + // eslint-disable-next-line jsx-a11y/no-autofocus + , + autoFocus: true, + onChange: searchHandler, + onClear: searchClearHandler, + autoComplete: 'off', + "aria-label": "Search", + "aria-haspopup": "listbox", + className: "Select-input", + "data-test": "DesignSystem-Select--Input" + }))); +}; + +var _excluded$5 = ["title", "description", "children"]; +var SelectEmptyTemplate = function SelectEmptyTemplate(props) { + var contextProp = React.useContext(SelectContext); + var maxHeight = contextProp.maxHeight, + withSearch = contextProp.withSearch; + + var title = props.title, + description = props.description, + children = props.children, + rest = _objectWithoutProperties(props, _excluded$5); + + var searchInputHeight = 33; + var wrapperStyle = { + minHeight: withSearch ? maxHeight - searchInputHeight : maxHeight + }; + return /*#__PURE__*/React.createElement("div", _extends$2({ + className: "px-7 d-flex justify-content-center align-items-center", + style: wrapperStyle, + "data-test": "DesignSystem-Select-EmptyState--wrapper", + "aria-live": "polite", + role: "alert" + }, rest), /*#__PURE__*/React.createElement("div", { + "aria-labelledby": title, + "aria-describedby": description, + className: "d-flex flex-column justify-content-center align-items-center" + }, title && /*#__PURE__*/React.createElement(Text, { + id: title, + role: "heading", + className: "text-align-center mb-3", + weight: "strong" + }, title), description && /*#__PURE__*/React.createElement(Text, { + id: description, + className: "text-align-center mb-6", + weight: "medium", + size: "small", + appearance: "subtle" + }, description), children && children)); +}; + +var _excluded$4 = ["children"]; +var SelectFooter = function SelectFooter(props) { + var children = props.children, + rest = _objectWithoutProperties(props, _excluded$4); + + return /*#__PURE__*/React.createElement("div", _extends$2({ + className: "Select-buttonWrapper" + }, rest), children); +}; + +var Select = /*#__PURE__*/React.forwardRef(function (props, ref) { + var children = props.children, + onSelect = props.onSelect, + width = props.width, + maxHeight = props.maxHeight, + minHeight = props.minHeight, + value = props.value, + boundaryElement = props.boundaryElement, + appendToBody = props.appendToBody, + _props$multiSelect = props.multiSelect, + multiSelect = _props$multiSelect === void 0 ? false : _props$multiSelect, + onOutsideClick = props.onOutsideClick, + triggerOptions = props.triggerOptions, + popoverWidth = props.popoverWidth; + + var _React$useState = React.useState(false), + _React$useState2 = _slicedToArray(_React$useState, 2), + openPopover = _React$useState2[0], + setOpenPopover = _React$useState2[1]; + + var mapValue = mapInitialValue(multiSelect, value); + + var _React$useState3 = React.useState(mapValue), + _React$useState4 = _slicedToArray(_React$useState3, 2), + selectValue = _React$useState4[0], + setSelectValue = _React$useState4[1]; + + var _React$useState5 = React.useState(false), + _React$useState6 = _slicedToArray(_React$useState5, 2), + isOptionSelected = _React$useState6[0], + setIsOptionSelected = _React$useState6[1]; + + var triggerRef = /*#__PURE__*/React.createRef(); + var listRef = React.useRef(null); + + var _React$useState7 = React.useState(false), + _React$useState8 = _slicedToArray(_React$useState7, 2), + withSearch = _React$useState8[0], + setWithSearch = _React$useState8[1]; + + var _React$useState9 = React.useState(), + _React$useState10 = _slicedToArray(_React$useState9, 2), + focusedOption = _React$useState10[0], + setFocusedOption = _React$useState10[1]; + + var _React$useState11 = React.useState(false), + _React$useState12 = _slicedToArray(_React$useState11, 2), + highlightFirstItem = _React$useState12[0], + setHighlightFirstItem = _React$useState12[1]; + + var _React$useState13 = React.useState(false), + _React$useState14 = _slicedToArray(_React$useState13, 2), + highlightLastItem = _React$useState14[0], + setHighlightLastItem = _React$useState14[1]; + + var _React$useState15 = React.useState({ + width: popoverWidth || width + }), + _React$useState16 = _slicedToArray(_React$useState15, 2), + popoverStyle = _React$useState16[0], + setPopoverStyle = _React$useState16[1]; + + var triggerStyle = { + width: width + }; + React.useEffect(function () { + var _triggerRef$current; + + // if popover width is not provided explicitly, apply the trigger width to popover width + if (!popoverWidth && (_triggerRef$current = triggerRef.current) !== null && _triggerRef$current !== void 0 && _triggerRef$current.clientWidth) { + var _triggerRef$current2; + + setPopoverStyle(_objectSpread2(_objectSpread2({}, popoverStyle), {}, { + width: (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : _triggerRef$current2.clientWidth + })); + } + }, []); + React.useImperativeHandle(ref, function () { + return { + setOpen: function setOpen(open) { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(open); + }, + setFocusFirstItem: function setFocusFirstItem() { + if (openPopover) { + requestAnimationFrame(function () { + return focusListItem$1('down', setFocusedOption, listRef); + }); + setHighlightFirstItem(true); + } + }, + setFocusLastItem: function setFocusLastItem() { + if (openPopover) { + requestAnimationFrame(function () { + return focusListItem$1('up', setFocusedOption, listRef); + }); + setHighlightLastItem(true); + } + } + }; + }); + React.useEffect(function () { + if (!openPopover) { + setHighlightFirstItem(false); + setHighlightLastItem(false); + } + }, [openPopover]); + React.useEffect(function () { + if (highlightFirstItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$1('down', setFocusedOption, listRef); + }); + } + }, [highlightFirstItem]); + React.useEffect(function () { + if (highlightLastItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$1('up', setFocusedOption, listRef); + }); + } + }, [highlightLastItem]); + React.useEffect(function () { + if (value) { + setSelectValue(value); + setIsOptionSelected(Array.isArray(value) ? value.length > 0 : value.value.trim().length > 0); + } + }, [value]); + + var onToggleHandler = function onToggleHandler(open) { + if (triggerOptions && triggerOptions.disabled) { + setOpenPopover(false); + } else { + setHighlightFirstItem(open); + setOpenPopover(open); + } + }; + + var onOptionClick = function onOptionClick(option) { + onSelect === null || onSelect === void 0 ? void 0 : onSelect(option); + !multiSelect && setOpenPopover(false); + }; + + var onOutsideClickHandler = function onOutsideClickHandler() { + onOutsideClick === null || onOutsideClick === void 0 ? void 0 : onOutsideClick(); + }; + + var contextProp = { + openPopover: openPopover, + setOpenPopover: setOpenPopover, + selectValue: selectValue, + setSelectValue: setSelectValue, + isOptionSelected: isOptionSelected, + setIsOptionSelected: setIsOptionSelected, + onOptionClick: onOptionClick, + maxHeight: maxHeight, + minHeight: minHeight, + withSearch: withSearch, + width: width, + setWithSearch: setWithSearch, + multiSelect: multiSelect, + listRef: listRef, + triggerRef: triggerRef, + focusedOption: focusedOption, + setFocusedOption: setFocusedOption, + setHighlightFirstItem: setHighlightFirstItem, + setHighlightLastItem: setHighlightLastItem + }; + return /*#__PURE__*/React.createElement(SelectContext.Provider, { + value: contextProp + }, /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-Select", + "aria-haspopup": "listbox", + "aria-expanded": openPopover, + style: triggerStyle + }, /*#__PURE__*/React.createElement(Popover, { + open: openPopover, + onToggle: onToggleHandler, + className: "mt-3", + triggerClass: "d-block", + customStyle: popoverStyle, + boundaryElement: boundaryElement, + appendToBody: appendToBody, + trigger: /*#__PURE__*/React.createElement(SelectTrigger, _extends$2({ + "aria-controls": "select-listbox" + }, triggerOptions)) + }, /*#__PURE__*/React.createElement(OutsideClick, { + onOutsideClick: onOutsideClickHandler + }, /*#__PURE__*/React.createElement("div", { + role: "listbox", + id: "select-listbox", + tabIndex: 0, + ref: listRef + }, children))))); +}); +Select.displayName = 'Select'; +Select.defaultProps = { + maxHeight: 256, + width: 176 +}; +Select.Option = SelectOption; +Select.List = SelectList; +Select.SearchInput = SearchInput; +Select.EmptyTemplate = SelectEmptyTemplate; +Select.Footer = SelectFooter; + +var _excluded$3 = ["label", "children", "showDivider"]; +var MenuGroup = function MenuGroup(props) { + var label = props.label, + children = props.children, + showDivider = props.showDivider, + rest = _objectWithoutProperties(props, _excluded$3); + + if (label) { + return /*#__PURE__*/React__default.createElement("div", _extends$2({ + "data-test": "DesignSystem-Menu-Group", + role: "group", + className: "Menu-Group" + }, rest), /*#__PURE__*/React__default.createElement(Text, { + "data-test": "DesignSystem-Menu-Group-Label", + size: "small", + weight: "medium", + appearance: "subtle", + className: "Menu-Group-Label" + }, label), children); + } + + return /*#__PURE__*/React__default.createElement("div", _extends$2({ + "data-test": "DesignSystem-Menu-Group", + role: "group" + }, rest), children, showDivider && /*#__PURE__*/React__default.createElement(Divider, { + className: "my-3" + })); +}; +MenuGroup.defaultProps = { + showDivider: true }; -var VerificationCodeInput = function VerificationCodeInput(props) { - var _props$type = props.type, - type = _props$type === void 0 ? 'number' : _props$type, - _props$fields = props.fields, - fields = _props$fields === void 0 ? 4 : _props$fields, - _props$placeholder = props.placeholder, - placeholder = _props$placeholder === void 0 ? '_' : _props$placeholder, - _props$autoFocus = props.autoFocus, - autoFocus = _props$autoFocus === void 0 ? true : _props$autoFocus, - onComplete = props.onComplete, - onFocus = props.onFocus, - onBlur = props.onBlur, - className = props.className; - props.value; - var rest = _objectWithoutProperties$1(props, _excluded); +var MenuContext = /*#__PURE__*/React.createContext({}); - var initialValues = useMemo(function () { - if (props.value && props.value.length) { - return props.value.split(''); - } +var handleKeyDown$1 = function handleKeyDown(event, focusedOption, setFocusedOption, setOpenPopover, menuTriggerRef, listRef, subListRef, isSubMenuTrigger, triggerRef, menuID, triggerID, parentListRef) { + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + navigateOptions('up', focusedOption, setFocusedOption, listRef); + break; - return Array(fields).fill(''); - }, []); - var initialRefs = useMemo(function () { - return _toConsumableArray(Array(fields)).map(function () { - return /*#__PURE__*/React__default.createRef(); - }); - }, []); + case 'ArrowDown': + event.preventDefault(); + navigateOptions('down', focusedOption, setFocusedOption, listRef); + break; - var _useState = useState$3(initialValues), - _useState2 = _slicedToArray(_useState, 2), - values = _useState2[0], - setValues = _useState2[1]; + case 'Enter': + focusedOption === null || focusedOption === void 0 ? void 0 : focusedOption.click(); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + break; - var _useState3 = useState$3(initialRefs), - _useState4 = _slicedToArray(_useState3, 1), - refs = _useState4[0]; + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); - useEffect$2(function () { - if (refs[0] && refs[0].current && autoFocus) { - refs[0].current.focus({ - preventScroll: true - }); - } - }, []); - useEffect$2(function () { - var completeValue = values.join(''); + if (triggerRef && !isSubMenuTrigger) { + var _triggerRef$current; - if (onComplete && completeValue.length === fields) { - onComplete(completeValue); - } - }, [values]); + triggerRef === null || triggerRef === void 0 ? void 0 : (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.focus(); + } else { + var _menuTriggerRef$curre; - var onChangeHandler = function onChangeHandler(e) { - var index = parseInt(e.target.dataset.id, 10); - var fieldValue = e.target.value; - var nextRef; + menuTriggerRef === null || menuTriggerRef === void 0 ? void 0 : (_menuTriggerRef$curre = menuTriggerRef.current) === null || _menuTriggerRef$curre === void 0 ? void 0 : _menuTriggerRef$curre.focus(); + } - var newValues = _toConsumableArray(values); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; - if (!fieldValue) { - return; - } + case 'Tab': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + break; - if (fieldValue.length > 1) { - var nextIndex = fieldValue.length + index - 1; + case 'ArrowRight': + navigateSubMenu(isSubMenuTrigger, 'right', subListRef, menuID, triggerID, parentListRef); + break; - if (nextIndex >= fields) { - nextIndex = fields - 1; - } + case 'ArrowLeft': + navigateSubMenu(isSubMenuTrigger, 'left', subListRef, menuID, triggerID, parentListRef); + break; + } +}; - nextRef = refs[nextIndex]; - var split = fieldValue.split(''); - split.forEach(function (item, i) { - var cursor = index + i; +var navigateOptions = function navigateOptions(direction, focusedOption, setFocusedOption, listRef) { + var _listRef$current, _targetOption$scrollI; - if (cursor < fields) { - newValues[cursor] = item; - } - }); - setValues(newValues); - } else { - nextRef = refs[index + 1]; - newValues[index] = fieldValue; - setValues(newValues); - } + var listItems = (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var index = Array.from(listItems).findIndex(function (item) { + return item == focusedOption; + }); - if (nextRef && nextRef.current) { - nextRef.current.focus({ - preventScroll: true - }); - nextRef.current.select(); - } - }; + if (index === -1) { + index = direction === 'up' ? listItems.length - 1 : 0; + } else { + index = direction === 'up' ? (index - 1 + listItems.length) % listItems.length : (index + 1) % listItems.length; + } - var onFocusHandler = function onFocusHandler(e) { - e.target.select(); - e.target.placeholder = ''; + var targetOption = listItems[index]; + targetOption.focus(); + setFocusedOption && setFocusedOption(targetOption); + targetOption === null || targetOption === void 0 ? void 0 : (_targetOption$scrollI = targetOption.scrollIntoView) === null || _targetOption$scrollI === void 0 ? void 0 : _targetOption$scrollI.call(targetOption, { + block: 'center' + }); +}; - if (onFocus) { - onFocus(e); +var navigateSubMenu = function navigateSubMenu(isSubMenuTrigger, direction, subListRef, menuID, triggerID, parentListRef) { + var element = document.querySelector("[data-name=\"".concat(menuID, "\"]")); + var menuPlacement = element === null || element === void 0 ? void 0 : element.getAttribute('data-placement'); + + if (isSubMenuTrigger) { + if (direction === 'right' && menuPlacement !== null && menuPlacement !== void 0 && menuPlacement.includes('right') || direction === 'left' && menuPlacement !== null && menuPlacement !== void 0 && menuPlacement.includes('left')) { + var _subListRef$current; + + var listItems = subListRef === null || subListRef === void 0 ? void 0 : (_subListRef$current = subListRef.current) === null || _subListRef$current === void 0 ? void 0 : _subListRef$current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + (listItems === null || listItems === void 0 ? void 0 : listItems[0]).focus(); } + } else if (direction === 'left' && menuPlacement !== null && menuPlacement !== void 0 && menuPlacement.includes('right') || direction === 'right' && menuPlacement !== null && menuPlacement !== void 0 && menuPlacement.includes('left')) { + var _parentListRef$curren, _parentListRef$curren2; + + var triggerElement = parentListRef === null || parentListRef === void 0 ? void 0 : (_parentListRef$curren = parentListRef.current) === null || _parentListRef$curren === void 0 ? void 0 : (_parentListRef$curren2 = _parentListRef$curren.querySelector("#".concat(triggerID))) === null || _parentListRef$curren2 === void 0 ? void 0 : _parentListRef$curren2.firstChild; + triggerElement === null || triggerElement === void 0 ? void 0 : triggerElement.focus(); + } +}; + +var SubMenuContext = /*#__PURE__*/React.createContext({}); + +var _excluded$2 = ["children", "className", "onClick", "disabled", "onFocus"]; +var MenuItem = function MenuItem(props) { + var children = props.children, + className = props.className, + onClick = props.onClick, + disabled = props.disabled, + onFocus = props.onFocus, + rest = _objectWithoutProperties(props, _excluded$2); + + var contextProp = React__default.useContext(MenuContext); + var subMenuContextProp = React__default.useContext(SubMenuContext); + var isSubMenuTrigger = false; + var subListRef = null; + var triggerRef = subMenuContextProp.triggerRef, + menuID = subMenuContextProp.menuID, + setParentOpen = subMenuContextProp.setParentOpen, + triggerID = subMenuContextProp.triggerID, + parentListRef = subMenuContextProp.parentListRef; + var setOpenPopover = contextProp.setOpenPopover, + focusedOption = contextProp.focusedOption, + setFocusedOption = contextProp.setFocusedOption, + menuTriggerRef = contextProp.menuTriggerRef, + listRef = contextProp.listRef; + var MenuItemClassName = classnames({ + 'Menu-Item': true + }, className); + React__default.useEffect(function () { + var _parentListRef$curren, _parentListRef$curren2; + + var handlePopoverOpen = function handlePopoverOpen() { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + }; + + var handlePopoverClose = function handlePopoverClose() { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + }; + + var triggerElement = parentListRef === null || parentListRef === void 0 ? void 0 : (_parentListRef$curren = parentListRef.current) === null || _parentListRef$curren === void 0 ? void 0 : (_parentListRef$curren2 = _parentListRef$curren.querySelector("#".concat(triggerID))) === null || _parentListRef$curren2 === void 0 ? void 0 : _parentListRef$curren2.firstChild; + triggerElement === null || triggerElement === void 0 ? void 0 : triggerElement.addEventListener('focus', handlePopoverOpen); + triggerElement === null || triggerElement === void 0 ? void 0 : triggerElement.addEventListener('blur', handlePopoverClose); + return function () { + triggerElement === null || triggerElement === void 0 ? void 0 : triggerElement.removeEventListener('focus', handlePopoverOpen); + triggerElement === null || triggerElement === void 0 ? void 0 : triggerElement.removeEventListener('blur', handlePopoverClose); + }; + }, [triggerID]); + + var onFocusHandler = function onFocusHandler(event) { + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(event.target); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + onFocus === null || onFocus === void 0 ? void 0 : onFocus(event); }; - var onBlurHandler = function onBlurHandler(e) { - e.target.placeholder = placeholder; + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$1(event, focusedOption, setFocusedOption, setOpenPopover, menuTriggerRef, listRef, subListRef, isSubMenuTrigger, triggerRef, menuID, triggerID, parentListRef); + }; - if (onBlur) { - onBlur(e); + var onClickHandler = function onClickHandler(event) { + if (disabled) { + return; } + + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + onClick === null || onClick === void 0 ? void 0 : onClick(event); + setParentOpen === null || setParentOpen === void 0 ? void 0 : setParentOpen(false); }; - var onKeyDown = function onKeyDown(e) { - var index = parseInt(e.currentTarget.dataset.id, 10); - var prevIndex = index - 1; - var nextIndex = index + 1; - var prev = refs[prevIndex]; - var nextRef = refs[nextIndex]; + return /*#__PURE__*/React__default.createElement(Listbox.Item, _extends$2({ + "data-test": "DesignSystem-Menu-ListItem", + className: MenuItemClassName, + tabIndex: -1, + onKeyDown: onKeyDownHandler, + onFocus: onFocusHandler, + onClick: onClickHandler, + disabled: disabled, + role: "menuitem", + "aria-disabled": disabled + }, rest), children); +}; +MenuItem.displayName = 'MenuItem'; +MenuItem.defaultProps = { + tagName: 'a' +}; - switch (e.key) { - case KEY_CODE.backspace: - e.preventDefault(); +var _excluded$1 = ["children"]; +var MenuList = function MenuList(props) { + var children = props.children, + rest = _objectWithoutProperties(props, _excluded$1); - var vals = _toConsumableArray(values); + return /*#__PURE__*/React__default.createElement(Listbox, _extends$2({ + "data-test": "DesignSystem-Menu-List" + }, rest), children); +}; +MenuList.defaultProps = { + type: 'option', + showDivider: false, + tagName: 'nav', + size: 'compressed' +}; - if (values[index]) { - vals[index] = ''; - setValues(vals); - } else if (prev && prev.current) { - vals[prevIndex] = ''; - prev.current.focus({ - preventScroll: true - }); - setValues(vals); - } +var handleKeyDown = function handleKeyDown(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem) { + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(true); + break; - break; + case 'ArrowDown': + event.preventDefault(); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; - case KEY_CODE.left: - e.preventDefault(); + case 'Escape': + case 'Tab': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + break; + } +}; +var focusListItem = function focusListItem(position, setFocusedOption, listRef) { + var _listRef$current, _targetOption; - if (prev && prev.current) { - prev.current.focus({ - preventScroll: true - }); - } + var listItems = (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; - break; + if (position === 'down') { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[0]; + } else { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[listItems.length - 1]; + } - case KEY_CODE.right: - e.preventDefault(); + (_targetOption = targetOption) === null || _targetOption === void 0 ? void 0 : _targetOption.focus(); - if (nextRef && nextRef.current) { - nextRef.current.focus({ - preventScroll: true - }); - } + if (targetOption && typeof targetOption.scrollIntoView === 'function') { + var _targetOption2; - break; + (_targetOption2 = targetOption) === null || _targetOption2 === void 0 ? void 0 : _targetOption2.scrollIntoView({ + block: 'end' + }); + } - case KEY_CODE.up: - case KEY_CODE.down: - case KEY_CODE.e: - case KEY_CODE.E: - if (type === 'number') { - e.preventDefault(); - } + setFocusedOption && setFocusedOption(targetOption); +}; - break; - } +var MenuTrigger = function MenuTrigger(props) { + var className = props.className; + var contextProp = React__default.useContext(MenuContext); + var openPopover = contextProp.openPopover, + setOpenPopover = contextProp.setOpenPopover, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + menuTriggerRef = contextProp.menuTriggerRef; + var triggerClassName = classnames({ + 'Menu-Trigger--active': openPopover + }, className); + + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem); }; - var wrapperClassNames = function wrapperClassNames(i) { - return classnames({ - 'VerificationCodeInput-Input': true, - 'ml-4': i > 0 - }, className); + return /*#__PURE__*/React__default.createElement(Button, _extends$2({ + "data-test": "DesignSystem-Menu-Trigger", + icon: "more_horiz", + ref: menuTriggerRef, + "aria-label": "Open menu", + "aria-haspopup": true, + "aria-expanded": openPopover + }, props, { + className: triggerClassName, + onKeyDown: onKeyDownHandler + })); +}; + +var SubMenu = function SubMenu(props) { + var children = props.children; + var menuID = "DesignSystem-Menu--Popover-".concat(uidGenerator()); + var triggerID = "DesignSystem-Menu--Trigger-".concat(uidGenerator()); + + var _React$Children$toArr = React__default.Children.toArray(children), + _React$Children$toArr2 = _slicedToArray(_React$Children$toArr, 2), + submenuTrigger = _React$Children$toArr2[0], + submenuContent = _React$Children$toArr2[1]; + + var contextProp = React__default.useContext(MenuContext); + var subListRef = React__default.useRef(null); + var triggerRef = React__default.useRef(null); + var isSubMenuTrigger = true; + var subMenuElement = /*#__PURE__*/React__default.createElement(React__default.Fragment, null); + var setOpenPopover = contextProp.setOpenPopover, + focusedOption = contextProp.focusedOption, + setFocusedOption = contextProp.setFocusedOption, + menuTriggerRef = contextProp.menuTriggerRef, + listRef = contextProp.listRef; + + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$1(event, focusedOption, setFocusedOption, setOpenPopover, menuTriggerRef, listRef, subListRef, isSubMenuTrigger, triggerRef, menuID); }; - return /*#__PURE__*/React__default.createElement("div", { - "data-test": "DesignSystem-VerificationCodeInput", - className: "VerificationCodeInput" - }, values.map(function (val, index) { - return /*#__PURE__*/React__default.createElement(Input, _extends$3({ - key: index, - className: wrapperClassNames(index), - size: "large", - minWidth: "40px", - value: val, - placeholder: placeholder, - onChange: onChangeHandler, - onKeyDown: onKeyDown, - onFocus: onFocusHandler, - onBlur: onBlurHandler, - "data-id": index, - ref: refs[index] - }, rest)); + var subMenuContextProp = { + triggerRef: triggerRef, + menuID: menuID, + setParentOpen: setOpenPopover, + parentListRef: listRef, + triggerID: triggerID + }; + var triggerElement = /*#__PURE__*/React__default.cloneElement(submenuTrigger, _objectSpread2(_objectSpread2({}, submenuTrigger === null || submenuTrigger === void 0 ? void 0 : submenuTrigger.props), {}, { + onKeyDown: onKeyDownHandler, + ref: triggerRef, + 'aria-haspopup': 'menu', + 'aria-expanded': subListRef.current ? 'true' : 'false', + 'aria-controls': menuID, + id: triggerID })); + + if ( /*#__PURE__*/React__default.isValidElement(submenuContent)) { + var _submenuContent$props = submenuContent === null || submenuContent === void 0 ? void 0 : submenuContent.props, + on = _submenuContent$props.on, + _children = _submenuContent$props.children; + + subMenuElement = /*#__PURE__*/React__default.cloneElement(submenuContent, _objectSpread2(_objectSpread2({}, submenuContent.props), {}, { + on: on || 'hover', + offset: 'small', + children: /*#__PURE__*/React__default.createElement("div", { + ref: subListRef + }, _children), + trigger: triggerElement + })); + } + + return /*#__PURE__*/React__default.createElement(SubMenuContext.Provider, { + value: subMenuContextProp + }, subMenuElement); }; -VerificationCodeInput.displayName = 'VerificationCodeInput'; +var _excluded = ["children", "width", "minHeight", "maxHeight", "className", "open"]; +var Menu = function Menu(props) { + var children = props.children, + width = props.width, + minHeight = props.minHeight, + maxHeight = props.maxHeight, + className = props.className, + open = props.open, + rest = _objectWithoutProperties(props, _excluded); + + var _React$useState = React__default.useState(open), + _React$useState2 = _slicedToArray(_React$useState, 2), + openPopover = _React$useState2[0], + setOpenPopover = _React$useState2[1]; + + var _React$useState3 = React__default.useState(false), + _React$useState4 = _slicedToArray(_React$useState3, 2), + highlightFirstItem = _React$useState4[0], + setHighlightFirstItem = _React$useState4[1]; + + var _React$useState5 = React__default.useState(false), + _React$useState6 = _slicedToArray(_React$useState5, 2), + highlightLastItem = _React$useState6[0], + setHighlightLastItem = _React$useState6[1]; + + var _React$useState7 = React__default.useState(), + _React$useState8 = _slicedToArray(_React$useState7, 2), + focusedOption = _React$useState8[0], + setFocusedOption = _React$useState8[1]; + + var listRef = /*#__PURE__*/React__default.createRef(); + var menuTriggerRef = React__default.useRef(null); + var subMenuContextProp = React__default.useContext(SubMenuContext); + var menuID = subMenuContextProp.menuID; + var popoverClassName = classnames(_defineProperty$1({}, 'Menu', true), className); + React__default.useEffect(function () { + setOpenPopover(open); + }, [open]); + React__default.useEffect(function () { + if (highlightFirstItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem('down', setFocusedOption, listRef); + }); + } + }, [highlightFirstItem]); + React__default.useEffect(function () { + if (highlightLastItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem('up', setFocusedOption, listRef); + }); + } + }, [highlightLastItem]); + React__default.useEffect(function () { + if (!openPopover) { + setHighlightFirstItem(false); + setHighlightLastItem(false); + } + }, [openPopover]); + + var onToggleHandler = function onToggleHandler(open) { + setOpenPopover(open); + }; + + var contextProp = { + openPopover: openPopover, + setOpenPopover: setOpenPopover, + setHighlightFirstItem: setHighlightFirstItem, + setHighlightLastItem: setHighlightLastItem, + focusedOption: focusedOption, + setFocusedOption: setFocusedOption, + menuTriggerRef: menuTriggerRef, + listRef: listRef + }; + return /*#__PURE__*/React__default.createElement(MenuContext.Provider, { + value: contextProp + }, /*#__PURE__*/React__default.createElement(Popover, _extends$2({ + "data-test": "DesignSystem-Menu", + name: menuID, + offset: "medium" + }, rest, { + open: openPopover, + customStyle: { + width: width + }, + onToggle: onToggleHandler + }), /*#__PURE__*/React__default.createElement("div", { + ref: listRef, + role: "menu", + "data-test": props['data-test'] || 'DesignSystem-Menu-Wrapper', + className: popoverClassName, + style: { + maxHeight: maxHeight, + minHeight: minHeight + } + }, children))); +}; +Menu.Group = MenuGroup; +Menu.Item = MenuItem; +Menu.List = MenuList; +Menu.Trigger = MenuTrigger; +Menu.SubMenu = SubMenu; +Menu.defaultProps = { + width: 176, + maxHeight: 256, + position: 'bottom-start' +}; -var version = "2.2.1"; +var version = "2.35.0"; -export { Avatar, AvatarGroup, Backdrop, Badge, Breadcrumbs, Button, Calendar, Caption, Card, CardBody, CardFooter, CardHeader, CardSubdued, ChatMessage, Checkbox, Chip, ChipGroup, ChipInput, Collapsible, Column, DatePicker, DateRangePicker, Dialog, Dropdown, Dropzone, EditableChipInput, EditableDropdown, EditableInput, EmptyState, FileList, FileUploader, FileUploaderList, FullscreenModal, Grid, GridCell, Heading, HorizontalNav, Icon, Input, InputMask, Label, Legend, Link, List, Message, MetaList, MetricInput, Modal, ModalBody, ModalDescription, ModalFooter, ModalHeader, Navigation, OutsideClick, PageHeader, Pagination, Paragraph, Pills, Placeholder, PlaceholderParagraph, Popover, ProgressBar, ProgressRing, Radio, RangeSlider, Row, Sidesheet, Slider, Spinner, StatusHint, Stepper, Subheading, Switch, Tab, Table, Tabs, TabsWrapper, Text, Textarea, TimePicker, Toast, Tooltip, index$1 as Utils, VerificationCodeInput, VerticalNav, version }; +export { ActionCard, Avatar, AvatarGroup, AvatarSelection, Backdrop, Badge, Breadcrumbs, Button, Calendar, Caption, Card, CardBody, CardFooter, CardHeader, CardSubdued, ChatMessage, Checkbox, Chip, ChipGroup, ChipInput, ChoiceList, Collapsible, Column, Combobox, DatePicker, DateRangePicker, Dialog, Divider, Dropdown, Dropzone, EditableChipInput, EditableDropdown, EditableInput, EmptyState, FileList, FileUploader, FileUploaderList, FullscreenModal, Grid, GridCell, Heading, HelpText, HorizontalNav, Icon, InlineMessage, Input, X as InputMask, Label, Legend, Link, LinkButton, List, Listbox, Menu, Message, MetaList, MetricInput, Modal, ModalBody, ModalDescription, ModalFooter, ModalHeader, MultiSlider, Navigation, OutsideClick, PageHeader, Pagination, Paragraph, Pills, Placeholder, PlaceholderImage, PlaceholderParagraph, Popover, ProgressBar, ProgressRing, Radio, RangeSlider, Row, Select, SelectionCard, Sidesheet, Slider, Spinner, StatusHint, Stepper, Subheading, Switch, Tab, Table, Tabs, TabsWrapper, Text, TextField, Textarea, TimePicker, Toast, Tooltip, index as Utils, VerificationCodeInput, VerticalNav, version }; diff --git a/dist/index.js b/dist/index.js index afed478633..da87ca6890 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1,8 +1,8 @@ /** - * Generated on: 1627478630381 + * Generated on: 1716895234995 * Package: @innovaccer/design-system - * Version: v2.2.1 + * Version: v2.35.0 * License: MIT * Docs: https://innovaccer.github.io/design-system */ @@ -12,7 +12,7 @@ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('classnames'), require('react-dom'), require('react-popper')) : typeof define === 'function' && define.amd ? define(['exports', 'react', 'classnames', 'react-dom', 'react-popper'], factory) : (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.inno = {}, global.React, global.classNames, global.ReactDOM, global.ReactPopper)); -}(this, (function (exports, React, classNames, ReactDOM, reactPopper) { 'use strict'; +})(this, (function (exports, React, classNames, ReactDOM, reactPopper) { 'use strict'; function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } @@ -25,14 +25,12 @@ var d = Object.getOwnPropertyDescriptor(e, k); Object.defineProperty(n, k, d.get ? d : { enumerable: true, - get: function () { - return e[k]; - } + get: function () { return e[k]; } }); } }); } - n['default'] = e; + n["default"] = e; return Object.freeze(n); } @@ -202,52 +200,68 @@ return month <= 12 && date <= monthLength[month - 1]; }; - switch (format) { - case 'dd/mm/yyyy': - var p = val.split('/'); - var date = +p[0] || 1; - var month = +p[1] || 1; - var year = +p[2] || 1900; - return validate(date, month, year); - - case 'mm/dd/yyyy': - var p = val.split('/'); - var date = +p[1] || 1; - var month = +p[0] || 1; - var year = +p[2] || 1900; - return validate(date, month, year); - - case 'yyyy/mm/dd': - var p = val.split('/'); - var date = +p[2] || 1; - var month = +p[1] || 1; - var year = +p[0] || 1900; - return validate(date, month, year); - - case 'dd-mm-yyyy': - var p = val.split('-'); - var date = +p[0] || 1; - var month = +p[1] || 1; - var year = +p[2] || 1900; - return validate(date, month, year); - - case 'mm-dd-yyyy': - var p = val.split('-'); - var date = +p[1] || 1; - var month = +p[0] || 1; - var year = +p[2] || 1900; - return validate(date, month, year); - - case 'yyyy-mm-dd': - var p = val.split('-'); - var date = +p[2] || 1; - var month = +p[1] || 1; - var year = +p[0] || 1900; - return validate(date, month, year); + if (val) { + switch (format) { + case 'dd/mm/yyyy': + { + var p = val.split('/'); + var date_1 = +p[0] || 1; + var month = +p[1] || 1; + var year = +p[2] || 1900; + return validate(date_1, month, year); + } - default: - return false; + case 'mm/dd/yyyy': + { + var p = val.split('/'); + var date_2 = +p[1] || 1; + var month = +p[0] || 1; + var year = +p[2] || 1900; + return validate(date_2, month, year); + } + + case 'yyyy/mm/dd': + { + var p = val.split('/'); + var date_3 = +p[2] || 1; + var month = +p[1] || 1; + var year = +p[0] || 1900; + return validate(date_3, month, year); + } + + case 'dd-mm-yyyy': + { + var p = val.split('-'); + var date_4 = +p[0] || 1; + var month = +p[1] || 1; + var year = +p[2] || 1900; + return validate(date_4, month, year); + } + + case 'mm-dd-yyyy': + { + var p = val.split('-'); + var date_5 = +p[1] || 1; + var month = +p[0] || 1; + var year = +p[2] || 1900; + return validate(date_5, month, year); + } + + case 'yyyy-mm-dd': + { + var p = val.split('-'); + var date_6 = +p[2] || 1; + var month = +p[1] || 1; + var year = +p[0] || 1900; + return validate(date_6, month, year); + } + + default: + return false; + } } + + return false; }; var time$1 = function time(val, format) { var _a = getTimeObjFromStr(format, val), @@ -257,18 +271,26 @@ var hoursCond = isFormat12hour(format) ? hours <= 12 : hours < 24; return hoursCond && minutes <= 60; }; + var isNaturalNumber = function isNaturalNumber(val) { + if (typeof val === 'string' && /[^0-9]/.test(val) || typeof val === 'number' && (val <= 0 || val - Math.floor(val) !== 0)) { + return false; + } + + return true; + }; var validators = /*#__PURE__*/Object.freeze({ __proto__: null, isValid: isValid, date: date$1, - time: time$1 + time: time$1, + isNaturalNumber: isNaturalNumber }); var _a$1; var date = { - 'dd/mm/yyyy': [/[0123]/, /\d/, '/', /\[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], + 'dd/mm/yyyy': [/[0123]/, /\d/, '/', /[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], 'mm/dd/yyyy': [/[01]/, /\d/, '/', /[0123]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], 'yyyy/mm/dd': [/\d/, /\d/, /\d/, /\d/, '/', /[01]/, /\d/, '/', /[0123]/, /\d/], 'dd-mm-yyyy': [/[0123]/, /\d/, '-', /[01]/, /\d/, '-', /\d/, /\d/, /\d/, /\d/], @@ -276,7 +298,7 @@ 'yyyy-mm-dd': [/\d/, /\d/, /\d/, /\d/, '-', /[01]/, /\d/, '-', /[0123]/, /\d/] }; var rangeDate = { - 'dd/mm/yyyy': [/[0123]/, /\d/, '/', /\[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/, ' ', '-', ' ', /[0123]/, /\d/, '/', /\[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], + 'dd/mm/yyyy': [/[0123]/, /\d/, '/', /[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/, ' ', '-', ' ', /[0123]/, /\d/, '/', /[01]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], 'mm/dd/yyyy': [/[01]/, /\d/, '/', /[0123]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/, ' ', '-', ' ', /[01]/, /\d/, '/', /[0123]/, /\d/, '/', /\d/, /\d/, /\d/, /\d/], 'yyyy/mm/dd': [/\d/, /\d/, /\d/, /\d/, '/', /[01]/, /\d/, '/', /[0123]/, /\d/, ' ', '-', ' ', /\d/, /\d/, /\d/, /\d/, '/', /[01]/, /\d/, '/', /[0123]/, /\d/], 'dd-mm-yyyy': [/[0123]/, /\d/, '-', /[01]/, /\d/, '-', /\d/, /\d/, /\d/, /\d/, ' ', '-', ' ', /[0123]/, /\d/, '-', /[01]/, /\d/, '-', /\d/, /\d/, /\d/, /\d/], @@ -292,14 +314,14 @@ time: time }); - var index$1 = /*#__PURE__*/Object.freeze({ + var index = /*#__PURE__*/Object.freeze({ __proto__: null, css: css, validators: validators, masks: masks }); - /*! ***************************************************************************** + /****************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any @@ -369,7 +391,7 @@ function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); - while (_) try { + while (g && (g = 0, op[0] && (_ = 0)), _) try { 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; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { @@ -418,9 +440,104 @@ }, {}); }; + var AvatarContext = /*#__PURE__*/React__namespace.createContext({ + size: 'regular', + appearance: 'secondary', + firstName: '', + lastName: '' + }); + var AvatarProvider = AvatarContext.Provider; + + var appearanceMapper = { + secondary: 'inverse', + primary: 'white', + alert: 'white', + accent2: 'white', + accent3: 'white', + warning: 'warning_darker', + success: 'success_darker', + accent1: 'accent1_darker', + accent4: 'accent4_darker' + }; + var AvatarIcon = function AvatarIcon(props) { + var contextProp = React__namespace.useContext(AvatarContext); + var size = contextProp.size, + appearance = contextProp.appearance; + var iconSize = size === 'regular' ? 20 : 16; + var iconAppearance = appearance && appearanceMapper[appearance] || 'inverse'; + return /*#__PURE__*/React__namespace.createElement(Icon, __assign({}, props, { + size: iconSize, + appearance: iconAppearance + })); + }; + + var sizeMapper = { + regular: 32, + tiny: 24 + }; + var AvatarImage = function AvatarImage(props) { + var _a, _b; + + var children = props.children, + src = props.src; + + var _c = React__namespace.useState(false), + error = _c[0], + setError = _c[1]; + + var contextProp = React__namespace.useContext(AvatarContext); + var size = contextProp.size, + appearance = contextProp.appearance, + firstName = contextProp.firstName, + lastName = contextProp.lastName; + var baseProps = extractBaseProps(props); + var initials = "" + (firstName ? firstName.trim()[0] : '') + (lastName ? lastName.trim()[0] : ''); + var imgSize = size && sizeMapper[size]; + var TextClassNames = classNames__default["default"]((_a = {}, _a["Avatar-content--" + size] = size, _a["Avatar-content--" + appearance] = appearance, _a)); + var IconClassNames = classNames__default["default"]((_b = {}, _b["Avatar-content--" + appearance] = appearance, _b)); + + var onError = function onError() { + setError(true); + }; + + if (children) { + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, children); + } + + if (error) { + if (initials) { + return /*#__PURE__*/React__namespace.createElement(Text, __assign({ + weight: "medium", + appearance: 'white', + className: TextClassNames + }, baseProps), initials); + } + + return /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-Avatar--Icon", + name: "person", + size: size === 'regular' ? 20 : 16, + appearance: "white", + className: IconClassNames + }); + } + + return /*#__PURE__*/React__namespace.createElement("img", __assign({ + "data-test": "DesignSystem-Image", + src: src, + alt: firstName + }, baseProps, { + height: imgSize, + width: imgSize, + onError: onError + })); + }; + var initialsLength = 2; + var DefaultAppearance = 'secondary'; + var colors = ['accent4', 'primary', 'accent3', 'alert', 'accent2', 'warning', 'accent1', 'success']; var Avatar = function Avatar(props) { - var _a, _b, _c; + var _a, _b, _c, _d; var withTooltip = props.withTooltip, tooltipPosition = props.tooltipPosition, @@ -429,35 +546,61 @@ firstName = props.firstName, lastName = props.lastName, className = props.className, - appearance = props.appearance; + appearance = props.appearance, + shape = props.shape, + _e = props.role, + role = _e === void 0 ? 'presentation' : _e; var baseProps = extractBaseProps(props); - var initials = children ? children.trim().slice(0, initialsLength) : "" + (firstName ? firstName.trim()[0] : '') + (lastName ? lastName.trim()[0] : ''); - var tooltip = children || (firstName || '') + " " + (lastName || '') || ''; - var DefaultAppearance = 'secondary'; - var colors = ['accent4', 'primary', 'accent3', 'alert', 'accent2', 'warning', 'accent1', 'success']; + var initials = children && typeof children === 'string' ? children.trim().slice(0, initialsLength) : "" + (firstName ? firstName.trim()[0] : '') + (lastName ? lastName.trim()[0] : ''); + var tooltip = children && typeof children === 'string' ? children : (firstName || '') + " " + (lastName || '') || ''; var AvatarAppearance = appearance || colors[(initials.charCodeAt(0) + (initials.charCodeAt(1) || 0)) % 8] || DefaultAppearance; - var classes = classNames__default['default']((_a = { + var AvatarClassNames = classNames__default["default"]((_a = { Avatar: true - }, _a["Avatar--" + size] = size, _a["Avatar--" + AvatarAppearance] = AvatarAppearance, _a['Avatar--disabled'] = !initials || !withTooltip, _a), className); - var ContentClass = classNames__default['default']((_b = {}, _b["Avatar-content--" + size] = size, _b["Avatar-content--" + AvatarAppearance] = AvatarAppearance, _b)); - var IconClass = classNames__default['default']((_c = {}, _c["Avatar-content--" + AvatarAppearance] = AvatarAppearance, _c)); + }, _a['Avatar--square'] = shape === 'square', _a["Avatar--" + size] = shape !== 'square', _a["Avatar--" + AvatarAppearance] = AvatarAppearance, _a['Avatar--disabled'] = !initials || !withTooltip, _a), className); + var AvatarWrapperClassNames = classNames__default["default"]((_b = {}, _b['Avatar--wrapper'] = shape === 'square', _b["Avatar--" + size] = shape === 'square', _b)); + var TextClassNames = classNames__default["default"]((_c = {}, _c["Avatar-content--" + size] = size, _c["Avatar-content--" + AvatarAppearance] = AvatarAppearance, _c)); + var IconClassNames = classNames__default["default"]((_d = {}, _d["Avatar-content--" + AvatarAppearance] = AvatarAppearance, _d)); + var sharedProp = { + size: size, + firstName: firstName, + lastName: lastName, + appearance: AvatarAppearance + }; var renderAvatar = function renderAvatar() { - return /*#__PURE__*/React__namespace.createElement("span", __assign({ + if (children && typeof children !== 'string') { + return /*#__PURE__*/React__namespace.createElement("span", { + "data-test": "DesignSystem-AvatarWrapper", + className: AvatarWrapperClassNames, + role: role + }, /*#__PURE__*/React__namespace.createElement(AvatarProvider, { + value: sharedProp + }, /*#__PURE__*/React__namespace.createElement("span", __assign({ + "data-test": "DesignSystem-Avatar" + }, baseProps, { + className: AvatarClassNames + }), children))); + } + + return /*#__PURE__*/React__namespace.createElement("span", { + "data-test": "DesignSystem-AvatarWrapper", + className: AvatarWrapperClassNames, + role: role + }, /*#__PURE__*/React__namespace.createElement("span", __assign({ "data-test": "DesignSystem-Avatar" }, baseProps, { - className: classes + className: AvatarClassNames }), initials && /*#__PURE__*/React__namespace.createElement(Text, { weight: "medium", appearance: 'white', - className: ContentClass + className: TextClassNames }, initials), !initials && /*#__PURE__*/React__namespace.createElement(Icon, { "data-test": "DesignSystem-Avatar--Icon", name: "person", - size: size === 'regular' ? 16 : 12, + size: size === 'regular' ? 20 : 16, appearance: 'white', - className: IconClass - })); + className: IconClassNames + }))); }; var renderTooltip = function renderTooltip() { @@ -475,10 +618,103 @@ return renderTooltip(); }; Avatar.displayName = 'Avatar'; + Avatar.Icon = AvatarIcon; + Avatar.Image = AvatarImage; Avatar.defaultProps = { tooltipPosition: 'bottom', withTooltip: true, - size: 'regular' + size: 'regular', + shape: 'round' + }; + + var AvatarCount = function AvatarCount(props) { + var _a, _b; + + var hiddenAvatarCount = props.hiddenAvatarCount, + avatarStyle = props.avatarStyle, + size = props.size, + on = props.on; + var ContentClass = classNames__default["default"]((_a = {}, _a["Avatar-content--secondary"] = true, _a["Avatar-content--tiny"] = size === 'tiny', _a)); + var AvatarVariantsClass = classNames__default["default"]((_b = { + Avatar: true + }, _b["Avatar--regular"] = size === 'regular', _b["Avatar--tiny"] = size === 'tiny', _b["Avatar--secondary"] = true, _b['Avatar--disabled'] = true, _b['cursor-pointer'] = on === 'click', _b)); + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-AvatarGroup--TriggerAvatar", + className: "AvatarCount-wrapper", + style: avatarStyle + }, /*#__PURE__*/React__namespace.createElement("span", { + "data-test": "DesignSystem-AvatarGroup--TriggerAvatarVariants", + className: AvatarVariantsClass + }, /*#__PURE__*/React__namespace.createElement(Text, { + appearance: 'white', + className: ContentClass + }, "+" + hiddenAvatarCount))); + }; + + var Avatars = function Avatars(props) { + var _a; + + var avatarList = props.avatarList, + avatarStyle = props.avatarStyle, + tooltipPosition = props.tooltipPosition, + size = props.size; + var GroupClass = classNames__default["default"]((_a = {}, _a["AvatarGroup-item"] = true, _a["AvatarGroup-item--tiny"] = size === 'tiny', _a["AvatarGroup-item--regular"] = size === 'regular', _a)); + var avatars = avatarList.map(function (item, index) { + var appearance = item.appearance, + firstName = item.firstName, + lastName = item.lastName, + icon = item.icon, + image = item.image; + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-AvatarGroup--Avatar", + className: GroupClass, + style: avatarStyle, + key: index + }, /*#__PURE__*/React__namespace.createElement(Avatar, { + size: size, + appearance: appearance, + firstName: firstName, + lastName: lastName, + withTooltip: true, + tooltipPosition: tooltipPosition + }, image || icon)); + }); + return avatars; + }; + + var AvatarPopperBody = function AvatarPopperBody(props) { + var hiddenAvatarList = props.hiddenAvatarList, + popperRenderer = props.popperRenderer, + maxHeight = props.maxHeight, + dark = props.dark; + + if (popperRenderer) { + return popperRenderer(hiddenAvatarList); + } + + return /*#__PURE__*/React__namespace.createElement("div", { + className: "px-4 py-3" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "AvatarGroup-TextWrapper", + style: { + maxHeight: maxHeight + } + }, hiddenAvatarList.map(function (item, ind) { + var _a; + + var _b = item.firstName, + firstName = _b === void 0 ? '' : _b, + _c = item.lastName, + lastName = _c === void 0 ? '' : _c; + var name = firstName + " " + lastName; + var AvatarTextClass = classNames__default["default"]((_a = {}, _a["mb-4"] = ind < hiddenAvatarList.length - 1, _a)); + return /*#__PURE__*/React__namespace.createElement(Text, { + key: ind, + appearance: dark ? 'white' : 'default', + className: AvatarTextClass, + "data-test": "DesignSystem-AvatarGroup--Text" + }, name); + }))); }; var AvatarGroup = function AvatarGroup(props) { @@ -489,7 +725,8 @@ popoverOptions = props.popoverOptions, tooltipPosition = props.tooltipPosition, list = props.list, - className = props.className; + className = props.className, + size = props.size; var popperRenderer = popoverOptions.popperRenderer, _c = popoverOptions.maxHeight, maxHeight = _c === void 0 ? 150 : _c, @@ -504,94 +741,54 @@ _h = popoverOptions.popperClassName, popperClassName = _h === void 0 ? '' : _h; var baseProps = extractBaseProps(props); - var extraAvatars = list.length > max ? list.length - max > 9 ? 9 : list.length - max : 0; + var hiddenAvatarCount = list.length > max ? Math.min(list.length - max, 99) : 0; var style = { - borderRadius: '50%', backgroundColor: "" + borderColor, - border: "var(--spacing-xs) solid " + borderColor, - boxShadow: "0 0 0 var(--spacing-xs) " + borderColor - }; - var AvatarGroupClass = classNames__default['default']((_a = {}, _a['AvatarGroup'] = true, _a), className); - var popperClass = classNames__default['default']((_b = {}, _b['AvatarGroup-Popper'] = true, _b), popperClassName); - var trigger = /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-AvatarGroup--TriggerAvatar", - style: style - }, /*#__PURE__*/React__namespace.createElement(Avatar, { - appearance: "secondary", - firstName: "+", - lastName: "" + extraAvatars, - withTooltip: false - })); - - var renderPopper = function renderPopper() { - var extraAvatarsList = list.slice(max, list.length); - - if (popperRenderer && typeof renderPopper === 'function') { - return popperRenderer(extraAvatarsList); - } - - return /*#__PURE__*/React__namespace.createElement("div", { - className: "py-6 pr-4 pl-6" - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "AvatarGroup-TextWrapper", - style: { - maxHeight: maxHeight - } - }, extraAvatarsList.map(function (item, ind) { - var _a = item.firstName, - firstName = _a === void 0 ? '' : _a, - _b = item.lastName, - lastName = _b === void 0 ? '' : _b; - var name = firstName + " " + lastName; - return /*#__PURE__*/React__namespace.createElement(Text, { - key: ind, - appearance: dark ? 'white' : 'default', - className: ind < extraAvatars - 1 ? 'mb-5' : '', - "data-test": "DesignSystem-AvatarGroup--Text" - }, name); - }))); + boxShadow: "0 0 0 calc(var(--spacing-xs) + var(--spacing-s)) " + borderColor }; - - var renderAvatars = function renderAvatars() { - var avatars = list.slice(0, max).map(function (item, index) { - var appearance = item.appearance, - firstName = item.firstName, - lastName = item.lastName; - return /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-AvatarGroup--Avatar", - className: "AvatarGroup-item", - style: style, - key: index - }, /*#__PURE__*/React__namespace.createElement(Avatar, { - appearance: appearance, - firstName: firstName, - lastName: lastName, - withTooltip: true, - tooltipPosition: tooltipPosition - })); - }); - return avatars; + var tinyAvatarStyle = { + boxShadow: "0 0 0 var(--spacing-s) " + borderColor }; - + var avatarStyle = size === 'tiny' ? __assign(__assign({}, style), tinyAvatarStyle) : style; + var avatarList = list.length === 3 ? list : list.slice(0, max); + var AvatarGroupClass = classNames__default["default"]((_a = {}, _a['AvatarGroup'] = true, _a), className); + var popperClass = classNames__default["default"]((_b = {}, _b['AvatarGroup-Popper'] = true, _b), popperClassName); return /*#__PURE__*/React__namespace.createElement("div", __assign({ "data-test": "DesignSystem-AvatarGroup" }, baseProps, { className: AvatarGroupClass + " d-inline-flex" - }), renderAvatars(), list.length - max > 0 && /*#__PURE__*/React__namespace.createElement(Popover, { + }), /*#__PURE__*/React__namespace.createElement(Avatars, { + size: size, + avatarList: avatarList, + avatarStyle: avatarStyle, + tooltipPosition: tooltipPosition + }), list.length - max > 0 && list.length !== 3 && /*#__PURE__*/React__namespace.createElement(Popover, { on: on, dark: dark, - trigger: trigger, + trigger: /*#__PURE__*/React__namespace.createElement(AvatarCount, { + on: on, + size: size, + hiddenAvatarCount: hiddenAvatarCount, + avatarStyle: avatarStyle + }), position: position, appendToBody: appendToBody, - className: popperClass - }, renderPopper())); + className: popperClass, + offset: "medium" + }, /*#__PURE__*/React__namespace.createElement(AvatarPopperBody, { + hiddenAvatarList: list.slice(max, list.length), + popperRenderer: popperRenderer, + maxHeight: maxHeight, + dark: dark + }))); }; AvatarGroup.displayName = 'AvatarGroup'; AvatarGroup.defaultProps = { max: 2, - borderColor: 'var(--white)', tooltipPosition: 'bottom', - popoverOptions: {} + borderColor: 'white', + popoverOptions: {}, + size: 'regular' }; var useEffect$1 = React__namespace.useEffect, @@ -612,7 +809,7 @@ animate = _c[0], setAnimate = _c[1]; - var classes = classNames__default['default']({ + var classes = classNames__default["default"]({ Backdrop: true, 'Backdrop--open': open, 'Backdrop-animation--open': animate, @@ -650,9 +847,13 @@ }, [props.open]); var BackdropElement = /*#__PURE__*/ReactDOM__namespace.createPortal( /*#__PURE__*/React__namespace.createElement("div", __assign({ "data-test": "DesignSystem-Backdrop", - "data-layer": true + "data-layer": true, + "data-opened": open }, baseProps, { - className: classes + className: classes, + style: { + zIndex: props.zIndex + } })), document.body); return BackdropElement; }; @@ -666,7 +867,7 @@ subtle = props.subtle, className = props.className; var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = { + var classes = classNames__default["default"]((_a = { Badge: true }, _a["Badge--" + appearance] = appearance && !subtle, _a["Badge--subtle-" + appearance] = subtle, _a), className); return /*#__PURE__*/React__namespace.createElement("span", __assign({ @@ -680,3530 +881,3140 @@ appearance: 'secondary' }; - /* eslint-disable no-undefined,no-param-reassign,no-shadow */ - - /** - * Throttle execution of a function. Especially useful for rate limiting - * execution of handlers on events like resize and scroll. - * - * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful. - * @param {boolean} [noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds while the - * throttled-function is being called. If noTrailing is false or unspecified, callback will be executed one final time - * after the last throttled-function call. (After the throttled-function has not been called for `delay` milliseconds, - * the internal counter is reset). - * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is, - * to `callback` when the throttled-function is executed. - * @param {boolean} [debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is false (at end), - * schedule `callback` to execute after `delay` ms. - * - * @returns {Function} A new, throttled, function. - */ - function throttle (delay, noTrailing, callback, debounceMode) { - /* - * After wrapper has stopped being called, this timeout ensures that - * `callback` is executed at the proper times in `throttle` and `end` - * debounce modes. - */ - var timeoutID; - var cancelled = false; // Keep track of the last time `callback` was executed. - - var lastExec = 0; // Function to clear existing timeout + var RenderLink = function RenderLink(_a) { + var item = _a.item, + onClick = _a.onClick; - function clearExistingTimeout() { - if (timeoutID) { - clearTimeout(timeoutID); + var onClickHandler = function onClickHandler(ev) { + if (onClick) { + ev.preventDefault(); + onClick(item.link); } - } // Function to cancel next exec - - - function cancel() { - clearExistingTimeout(); - cancelled = true; - } // `noTrailing` defaults to falsy. - - - if (typeof noTrailing !== 'boolean') { - debounceMode = callback; - callback = noTrailing; - noTrailing = undefined; - } - /* - * The `wrapper` function encapsulates all of the throttling / debouncing - * functionality and when executed will limit the rate at which `callback` - * is executed. - */ - + }; - function wrapper() { - for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) { - arguments_[_key] = arguments[_key]; - } + return /*#__PURE__*/React__namespace.createElement(Link, { + className: "Breadcrumbs-link ellipsis--noWrap", + "data-test": "DesignSystem-Breadcrumbs-link", + href: item.link, + onClick: onClickHandler, + appearance: "subtle", + size: "tiny" + }, item.label); + }; - var self = this; - var elapsed = Date.now() - lastExec; + var RenderItem = function RenderItem(_a) { + var item = _a.item, + onClick = _a.onClick, + index = _a.index, + showTooltip = _a.showTooltip; + return /*#__PURE__*/React__namespace.createElement("div", { + key: index, + className: "Breadcrumbs-item", + "data-test": "DesignSystem-Breadcrumbs-item" + }, showTooltip ? /*#__PURE__*/React__namespace.createElement(Tooltip, { + tooltip: item.label, + position: "bottom" + }, /*#__PURE__*/React__namespace.createElement(RenderLink, { + item: item, + onClick: onClick + })) : /*#__PURE__*/React__namespace.createElement(RenderLink, { + item: item, + onClick: onClick + }), /*#__PURE__*/React__namespace.createElement("span", { + className: "Breadcrumbs-itemSeparator" + }, "/")); + }; - if (cancelled) { - return; - } // Execute `callback` and update the `lastExec` timestamp. + var renderDropdown = function renderDropdown(list, onClick) { + var options = list.map(function (item) { + return { + label: item.label, + value: item.link + }; + }); + var customTrigger = function customTrigger() { + return /*#__PURE__*/React__namespace.createElement(Button, { + type: "button", + size: "tiny", + appearance: "transparent", + icon: "more_horiz_filled", + largeIcon: true, + className: "Breadcrumbs-Button", + "data-test": "DesignSystem-Breadcrumbs--Button" + }); + }; - function exec() { - lastExec = Date.now(); - callback.apply(self, arguments_); + return /*#__PURE__*/React__namespace.createElement(Dropdown, { + className: "Breadcrumbs-dropdown", + triggerSize: 'tiny', + triggerOptions: { + customTrigger: customTrigger + }, + options: options, + menu: true, + onChange: function onChange(selected) { + if (onClick) { + onClick(selected); + } } - /* - * If `debounceMode` is true (at begin) this is used to clear the flag - * to allow future `callback` executions. - */ + }); + }; + var Breadcrumbs = function Breadcrumbs(props) { + var _a; - function clear() { - timeoutID = undefined; - } - - if (debounceMode && !timeoutID) { - /* - * Since `wrapper` is being called for the first time and - * `debounceMode` is true (at begin), execute `callback`. - */ - exec(); - } + var list = props.list, + onClick = props.onClick, + className = props.className, + showTooltip = props.showTooltip; + var baseProps = extractBaseProps(props); + var BreadcrumbClass = classNames__default["default"]((_a = {}, _a['Breadcrumbs'] = true, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-Breadcrumbs" + }, baseProps, { + className: BreadcrumbClass + }), list.length <= 4 ? list.map(function (item, index) { + return /*#__PURE__*/React__namespace.createElement(RenderItem, { + key: index, + item: item, + onClick: onClick, + showTooltip: showTooltip + }); + }) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(RenderItem, { + item: list[0], + onClick: onClick, + showTooltip: showTooltip + }), /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex align-items-center" + }, renderDropdown(list.slice(1, list.length - 1), onClick), /*#__PURE__*/React__namespace.createElement("span", { + className: "Breadcrumbs-itemSeparator" + }, "/")), /*#__PURE__*/React__namespace.createElement(RenderItem, { + item: list[list.length - 1], + onClick: onClick, + showTooltip: showTooltip + }))); + }; - clearExistingTimeout(); + var sizeMapping$3 = { + tiny: 12, + regular: 16, + large: 20 + }; + var ButtonElement = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a, _b; - if (debounceMode === undefined && elapsed > delay) { - /* - * In throttle mode, if `delay` time has been exceeded, execute - * `callback`. - */ - exec(); - } else if (noTrailing !== true) { - /* - * In trailing throttle mode, since `delay` time has not been - * exceeded, schedule `callback` to execute `delay` ms after most - * recent execution. - * - * If `debounceMode` is true (at begin), schedule `clear` to execute - * after `delay` ms. - * - * If `debounceMode` is false (at end), schedule `callback` to - * execute after `delay` ms. - */ - timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay); - } - } + var _c = props.size, + size = _c === void 0 ? 'regular' : _c, + _d = props.appearance, + appearance = _d === void 0 ? 'basic' : _d, + _e = props.iconAlign, + iconAlign = _e === void 0 ? 'left' : _e, + _f = props.tabIndex, + tabIndex = _f === void 0 ? 0 : _f, + largeIcon = props.largeIcon, + type = props.type, + children = props.children, + icon = props.icon, + expanded = props.expanded, + selected = props.selected, + loading = props.loading, + disabled = props.disabled, + className = props.className; + props.tooltip; + var iconType = props.iconType, + rest = __rest(props, ["size", "appearance", "iconAlign", "tabIndex", "largeIcon", "type", "children", "icon", "expanded", "selected", "loading", "disabled", "className", "tooltip", "iconType"]); - wrapper.cancel = cancel; // Return the wrapper function. + var buttonClass = classNames__default["default"]((_a = {}, _a['Button'] = true, _a['Button--expanded'] = expanded, _a["Button--" + size] = size, _a["Button--" + size + "Square"] = !children, _a["Button--" + appearance] = appearance, _a['Button--selected'] = selected && (appearance === 'basic' || appearance === 'transparent'), _a["Button--iconAlign-" + iconAlign] = children && iconAlign, _a["" + className] = className, _a)); + var iconClass = classNames__default["default"]((_b = {}, _b['Button-icon'] = true, _b["Button-icon--" + iconAlign] = children && iconAlign, _b)); + return /*#__PURE__*/React__namespace.createElement("button", __assign({ + "data-test": "DesignSystem-Button", + ref: ref, + type: type, + className: buttonClass, + disabled: disabled || loading, + tabIndex: tabIndex + }, rest), loading ? /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Spinner, { + size: "small", + appearance: appearance === 'basic' || appearance === 'transparent' ? 'secondary' : 'white', + "data-test": "DesignSystem-Button--Spinner", + className: "Button-spinner" + }), /*#__PURE__*/React__namespace.createElement(Text, { + className: "Button-text Button-text--hidden" + }, children || '')) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, icon && /*#__PURE__*/React__namespace.createElement("div", { + className: iconClass + }, /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-Button--Icon", + name: icon, + type: iconType, + size: largeIcon && !children ? sizeMapping$3[size] + 4 : sizeMapping$3[size] + })), children && /*#__PURE__*/React__namespace.createElement("span", { + className: "Button-text" + }, children))); + }); + var Button = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var icon = props.icon, + tooltip = props.tooltip, + children = props.children; + return icon && tooltip && !children ? /*#__PURE__*/React__namespace.createElement(Tooltip, { + tooltip: tooltip + }, /*#__PURE__*/React__namespace.createElement(ButtonElement, __assign({}, props, { + ref: ref + }))) : /*#__PURE__*/React__namespace.createElement(ButtonElement, __assign({}, props, { + ref: ref + })); + }); + Button.displayName = 'Button'; - return wrapper; - } + function _typeof(obj) { + "@babel/helpers - typeof"; - /* eslint-disable no-undefined */ - /** - * Debounce execution of a function. Debouncing, unlike throttling, - * guarantees that a function is only executed a single time, either at the - * very beginning of a series of calls, or at the very end. - * - * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful. - * @param {boolean} [atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds - * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call. - * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset). - * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is, - * to `callback` when the debounced-function is executed. - * - * @returns {Function} A new, debounced function. - */ + if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { + _typeof = function (obj) { + return typeof obj; + }; + } else { + _typeof = function (obj) { + return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; + }; + } - function debounce (delay, atBegin, callback) { - return callback === undefined ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false); + return _typeof(obj); } - var getSearchedOptions = function getSearchedOptions(options, searchTerm) { - var result = options.filter(function (option) { - return option.label.toLowerCase().includes(searchTerm.toLowerCase()); - }); - return result; - }; - var _isEqual = function _isEqual(arr1, arr2) { - return arr1.length === arr2.length && arr1.every(function (option, index) { - return option.value === arr2[index].value || option.label === arr2[index].label; - }); - }; - var _isControlled = function _isControlled(selected) { - return selected !== undefined; + var config = { + yearBlockRange: 12, + yearsInRow: 3, + monthBlock: 12, + monthsInRow: 3, + daysInRow: 7, + months: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], + days: { + small: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'], + large: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'] + } }; - var _isOpenControlled = function _isOpenControlled(open) { - return open !== undefined; + + var yearBlockRange = config.yearBlockRange; + var getIndexOfDay = function getIndexOfDay(day) { + return ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'].indexOf(day); }; - var _showSelectedItems = function _showSelectedItems(bulk, searchTerm, withCheckbox) { - return bulk && withCheckbox && searchTerm === ''; + var getYearBlock = function getYearBlock(year) { + return year - year % yearBlockRange; }; - var _isSelectAllPresent = function _isSelectAllPresent(searchTerm, bulkOptions, withSelectAll, withCheckbox) { - return withCheckbox && withSelectAll && bulkOptions === 0 && searchTerm === ''; + var getDaysInMonth = function getDaysInMonth(year, month) { + return new Date(year, month + 1, 0).getDate(); }; - var scrollTo = function scrollTo(element, top) { - element.scrollTo(0, top); + var getFirstDayOfMonth = function getFirstDayOfMonth(year, month) { + return new Date(year, month).getDay(); }; - var scrollIntoView = function scrollIntoView(menuElement, focusedElement) { - var menuRect = menuElement === null || menuElement === void 0 ? void 0 : menuElement.getBoundingClientRect(); - var focusedRect = focusedElement.getBoundingClientRect(); - var overscroll = focusedElement.offsetHeight; + var getDateInfo = function getDateInfo(d) { + if (d) { + var dateVal = convertToDate(d); - if (focusedRect.bottom > menuRect.bottom && menuElement) { - scrollTo(menuElement, focusedElement.offsetTop - menuRect.height + overscroll); - } else if (focusedRect.top < menuRect.top && menuElement) { - scrollTo(menuElement, focusedElement.offsetTop - overscroll); - } - }; - var getSelectAll$1 = function getSelectAll(selected, optionsLength, disabledOptionsLength) { - if (selected.length) { - if (selected.length > 0 && disabledOptionsLength > 0 && selected.length === optionsLength - disabledOptionsLength) { + if (dateVal) { + var year = dateVal.getFullYear(); + var month = dateVal.getMonth(); + var day = dateVal.getDay(); + var date = dateVal.getDate(); + var decadeYear = getYearBlock(year); return { - indeterminate: true, - checked: true + decadeYear: decadeYear, + year: year, + month: month, + day: day, + date: date }; + } else { + return {}; } + } - var indeterminate = selected.length > 0 && selected.length !== optionsLength; - var checked = selected.length > 0 && selected.length === optionsLength; - var obj = { - checked: checked, - indeterminate: indeterminate - }; - return obj; + return {}; + }; + var convertToDate = function convertToDate(d, format, validators) { + var dateVal; + + if (d) { + if (typeof d === 'number') { + dateVal = new Date(d); + } else if (typeof d === 'string') { + return format ? translateToDate(format, d, validators) : undefined; + } else if (!(d instanceof Date)) { + var _a = d, + year = _a.year, + month = _a.month, + date = _a.date; + dateVal = new Date(year, month, date, 0, 0, 0); + } else { + dateVal = d; + } } - return { - indeterminate: false, - checked: false - }; + return dateVal; }; + var compareYearBlock = function compareYearBlock(d, operator, currDecade) { + if (d) { + var limitDecade = getDateInfo(d).decadeYear; - var DropdownButton = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { - var _a, _b; + switch (operator) { + case 'less': + if (limitDecade < currDecade) return true; + break; - var _c = props.triggerSize, - triggerSize = _c === void 0 ? 'regular' : _c, - _d = props.placeholder, - placeholder = _d === void 0 ? 'Select' : _d, - _e = props.menu, - menu = _e === void 0 ? false : _e, - children = props.children, - icon = props.icon, - disabled = props.disabled, - open = props.open, - inlineLabel = props.inlineLabel, - error = props.error, - rest = __rest(props, ["triggerSize", "placeholder", "menu", "children", "icon", "disabled", "open", "inlineLabel", "error"]); + case 'more': + if (limitDecade > currDecade) return true; + break; - var buttonDisabled = disabled ? 'disabled' : 'default'; - var trimmedPlaceholder = placeholder.trim(); - var value = children ? children : trimmedPlaceholder; - var iconName = !menu ? 'keyboard_arrow_down' : icon ? icon : 'more_horiz'; - var buttonClass = classNames__default['default']((_a = {}, _a['Button'] = true, _a['DropdownButton'] = true, _a["DropdownButton--" + triggerSize] = triggerSize, _a["DropdownButton--" + triggerSize + "Square"] = menu, _a['DropdownButton--placeholder'] = !children && !menu, _a['DropdownButton--icon'] = icon, _a['DropdownButton--open'] = open, _a['DropdownButton--error'] = error, _a)); - var textClass = classNames__default['default']((_b = {}, _b['Text'] = true, _b['Text--regular'] = true, _b['DropdownButton-text'] = true, _b)); - return /*#__PURE__*/React__namespace.createElement("button", __assign({ - ref: ref, - type: "button", - value: children, - className: buttonClass, - disabled: disabled, - tabIndex: 0, - "data-test": "DesignSystem-DropdownTrigger" - }, rest), !menu && /*#__PURE__*/React__namespace.createElement("div", { - className: "DropdownButton-wrapper" - }, inlineLabel && /*#__PURE__*/React__namespace.createElement(Text, { - appearance: "subtle", - className: "mr-4" - }, "" + inlineLabel.trim().charAt(0).toUpperCase() + inlineLabel.trim().slice(1)), icon && !inlineLabel && /*#__PURE__*/React__namespace.createElement(Icon, { - appearance: buttonDisabled, - className: "d-flex align-items-center mr-4", - name: icon - }), value && /*#__PURE__*/React__namespace.createElement("span", { - className: textClass - }, value)), /*#__PURE__*/React__namespace.createElement(Icon, { - appearance: buttonDisabled, - name: iconName - })); - }); - DropdownButton.displayName = 'DropdownButton'; - - var GenericText = function GenericText(_a) { - var children = _a.children, - _b = _a.componentType, - componentType = _b === void 0 ? 'span' : _b, - className = _a.className, - props = __rest(_a, ["children", "componentType", "className"]); + case 'equal': + if (limitDecade === currDecade) return true; + break; + } + } - return /*#__PURE__*/React__namespace.createElement(componentType, __assign(__assign({}, props), { - className: className - }), children); + return false; }; + var compareDate = function compareDate(d, operator, currYear, currMonth, currDate) { + if (d) { + var _a = getDateInfo(d), + limitYear = _a.year, + limitMonth = _a.month, + limitDate = _a.date; - var Text = function Text(props) { - var _a; - - var appearance = props.appearance, - size = props.size, - children = props.children, - weight = props.weight, - small = props.small, - className = props.className, - rest = __rest(props, ["appearance", "size", "children", "weight", "small", "className"]); - - var classes = classNames__default['default']((_a = { - Text: true - }, _a["Text--" + appearance] = appearance, _a["Text--" + weight] = weight, _a["Text--" + size] = size, _a['Text--small'] = size === 'small' || small, _a), className); - return /*#__PURE__*/React__namespace.createElement(GenericText, __assign({ - "data-test": "DesignSystem-Text" - }, rest, { - className: classes, - componentType: "span" - }), children); - }; - Text.displayName = 'Text'; - Text.defaultProps = { - appearance: 'default', - size: 'regular' - }; + switch (operator) { + case 'less': + if (limitYear < currYear) return true; + if (limitYear > currYear) return false; - var Icon = function Icon(props) { - var _a; + if (currMonth !== undefined) { + if (limitMonth < currMonth) return true; + if (limitMonth > currMonth) return false; + } - var appearance = props.appearance, - className = props.className, - name = props.name, - size = props.size, - onClick = props.onClick, - children = props.children; - var baseProps = extractBaseProps(props); + if (currDate !== undefined && limitDate < currDate) return true; + break; - var mapper = function mapper(val) { - if (val === 'outline') return 'outlined'; - if (val === 'rounded') return 'round'; - return val; - }; + case 'more': + if (limitYear > currYear) return true; + if (limitYear < currYear) return false; - var type = mapper(props.type); + if (currMonth !== undefined) { + if (limitMonth > currMonth) return true; + if (limitMonth < currMonth) return false; + } - var getIconAppearance = function getIconAppearance(iconColor) { - var x = iconColor.indexOf('_'); - return iconColor.slice(0, x) + iconColor.charAt(x + 1).toUpperCase() + iconColor.slice(x + 2); - }; + if (currDate !== undefined && limitDate > currDate) return true; + break; - var color = appearance && appearance.includes('_') ? getIconAppearance(appearance) : appearance; - var iconClass = classNames__default['default']((_a = {}, _a['material-icons'] = true, _a["material-icons-" + mapper(type)] = type && type !== 'filled', _a['Icon'] = true, _a["Icon--" + color] = appearance, _a["" + className] = className, _a)); - var styles = { - fontSize: size + "px", - width: size + "px" - }; + case 'equal': + if (currDate !== undefined) { + if (limitYear === currYear && limitMonth === currMonth && limitDate === currDate) return true; + } else if (currMonth !== undefined) { + if (limitYear === currYear && limitMonth === currMonth) return true; + } else if (limitYear === currYear) return true; - if (children && /*#__PURE__*/React__namespace.isValidElement(children)) { - return /*#__PURE__*/React__namespace.createElement("span", __assign({}, baseProps, { - className: className - }), children); + } } - return /*#__PURE__*/React__namespace.createElement("i", __assign({}, baseProps, { - className: iconClass, - style: styles, - onClick: onClick - }), type ? name + "_" + type : name); - }; - Icon.displayName = 'Icon'; - Icon.defaultProps = { - size: 16, - type: 'round' + return false; }; + var translateToString = function translateToString(format, d) { + if (format && d) { + var _a = getDateInfo(d), + year_1 = _a.year, + month_1 = _a.month, + date_1 = _a.date; - var uidGenerator = function uidGenerator() { - var dt = new Date().getTime(); - var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { - var r = (dt + Math.random() * 16) % 16 | 0; - dt = Math.floor(dt / 16); - var s = (c === 'x' ? r : r & 0x3 | 0x8).toString(16); - return s; - }); - return uuid; + var separator_1 = format.includes('/') ? '/' : '-'; + var f_1 = format.split(separator_1); + var val = f_1.reduce(function (out, curr, i) { + switch (curr) { + case 'mm': + out += (month_1 < 9 && '0') + (month_1 + 1); + break; + + case 'yyyy': + out += year_1; + break; + + case 'dd': + out += (date_1 < 10 && '0') + date_1; + break; + } + + if (i !== f_1.length - 1) out += separator_1; + return out; + }, ''); + return val; + } + + return ''; }; + var translateToDate = function translateToDate(format, val, validators) { + if (validators === void 0) { + validators = []; + } - var Checkbox = /*#__PURE__*/React__namespace.forwardRef(function (props, forwardedRef) { - var _a, _b, _c, _d, _e; + if (isValid(validators, val, format)) { + var separator = format.includes('/') ? '/' : '-'; + var year_2 = -1, + month_2 = -1, + date_2 = -1; + var v_1 = val.split(separator); + format.split(separator).forEach(function (f, i) { + switch (f) { + case 'mm': + month_2 = +v_1[i] - 1; + break; - var _f = props.size, - size = _f === void 0 ? 'regular' : _f, - _g = props.tabIndex, - tabIndex = _g === void 0 ? 0 : _g, - defaultChecked = props.defaultChecked, - indeterminate = props.indeterminate, - label = props.label, - disabled = props.disabled, - onChange = props.onChange, - name = props.name, - value = props.value, - className = props.className; - props.checked; - var rest = __rest(props, ["size", "tabIndex", "defaultChecked", "indeterminate", "label", "disabled", "onChange", "name", "value", "className", "checked"]); + case 'yyyy': + year_2 = +v_1[i]; + break; - var ref = React__namespace.useRef(null); - React__namespace.useImperativeHandle(forwardedRef, function () { - return ref.current; - }); + case 'dd': + date_2 = +v_1[i]; + break; + } + }); + var d = convertToDate({ + year: year_2, + month: month_2, + date: date_2 + }); + return d; + } else { + return undefined; + } + }; + var dateComparison = function dateComparison(date, operator, currDate, currMonth, currYear) { + var currentDate = new Date(currYear + "-" + currMonth + "-" + currDate); - var _h = React__namespace.useState(props.checked === undefined ? defaultChecked : props.checked), - checked = _h[0], - setChecked = _h[1]; + if (date) { + switch (operator) { + case 'less': + return date <= currentDate; - React__namespace.useEffect(function () { - setIndeterminate(indeterminate); - }, [indeterminate]); - React__namespace.useEffect(function () { - if (props.checked !== undefined) { - setChecked(props.checked); - } - }, [props.checked]); - var CheckboxClass = classNames__default['default']((_a = {}, _a['Checkbox'] = true, _a['Checkbox--disabled'] = disabled, _a), className); - var CheckboxOuterWrapper = classNames__default['default']((_b = {}, _b['Checkbox-outerWrapper'] = true, _b["Checkbox-outerWrapper--" + size] = size, _b)); - var CheckboxTextClass = classNames__default['default']((_c = {}, _c['Checkbox-label'] = true, _c)); - var CheckboxInputWrapper = classNames__default['default']((_d = {}, _d['Checkbox-input'] = true, _d['Checkbox-input--checked'] = checked, _d['Checkbox-input--indeterminate'] = props.indeterminate, _d)); - var CheckboxWrapper = classNames__default['default']((_e = {}, _e['Checkbox-wrapper'] = true, _e)); + case 'equal': + return date.toDateString() === currentDate.toDateString(); - var setIndeterminate = function setIndeterminate(indeterminateValue) { - ref.current.indeterminate = indeterminateValue; - }; + case 'more': + return date >= currentDate; - var onChangeHandler = function onChangeHandler(e) { - if (props.checked === undefined) { - setChecked(e.target.checked); - setIndeterminate(e.target.indeterminate); + default: + return false; } + } - if (onChange) onChange(e); - }; + return false; + }; - var id = name + "-" + label + "-" + uidGenerator(); - var IconName = indeterminate ? 'remove' : checked ? 'check' : ''; - var IconSize = size === 'tiny' ? 12 : 16; - return /*#__PURE__*/React__namespace.createElement("div", { - className: CheckboxClass - }, /*#__PURE__*/React__namespace.createElement("div", { - className: CheckboxOuterWrapper - }, /*#__PURE__*/React__namespace.createElement("input", __assign({}, rest, { - type: "checkbox", - defaultChecked: defaultChecked, - onChange: onChangeHandler, - checked: checked, - disabled: disabled, - ref: ref, - name: name, - value: value, - className: CheckboxInputWrapper, - tabIndex: tabIndex, - id: id - })), /*#__PURE__*/React__namespace.createElement("span", { - className: CheckboxWrapper - }, IconName && /*#__PURE__*/React__namespace.createElement(Icon, { - name: IconName, - size: IconSize, - appearance: 'white' - }))), label && label.trim() && /*#__PURE__*/React__namespace.createElement("label", { - htmlFor: id, - className: CheckboxTextClass - }, /*#__PURE__*/React__namespace.createElement(Text, { - size: size === 'tiny' ? 'small' : 'regular', - appearance: disabled ? 'disabled' : 'default' - }, label.trim()))); - }); - Checkbox.displayName = 'Checkbox'; + var Calendar = function (_super) { + __extends(Calendar, _super); - var CheckboxOption = function CheckboxOption(props) { - var className = props.className, - selected = props.selected, - optionData = props.optionData, - onChangeHandler = props.onChangeHandler, - onUpdateActiveOption = props.onUpdateActiveOption, - dataTest = props.dataTest; - var label = optionData.label, - disabled = optionData.disabled; - return /*#__PURE__*/React__namespace.createElement("div", { - className: className, - onMouseEnter: onUpdateActiveOption, - "data-test": dataTest, - "data-disabled": disabled - }, /*#__PURE__*/React__namespace.createElement(Checkbox, { - label: label, - disabled: disabled, - checked: selected, - onChange: onChangeHandler, - tabIndex: -1, - className: "OptionCheckbox" - })); - }; + function Calendar(props) { + var _this = _super.call(this, props) || this; - var DefaultOption = function DefaultOption(props) { - var className = props.className, - textClassName = props.textClassName, - onClickHandler = props.onClickHandler, - optionData = props.optionData, - appearance = props.appearance, - onUpdateActiveOption = props.onUpdateActiveOption, - dataTest = props.dataTest; - var label = optionData.label, - disabled = optionData.disabled; - return /*#__PURE__*/React__namespace.createElement("div", { - className: className, - onClick: onClickHandler, - onMouseEnter: onUpdateActiveOption, - "data-test": dataTest, - "data-disabled": disabled - }, /*#__PURE__*/React__namespace.createElement("div", { - className: 'Option-label' - }, /*#__PURE__*/React__namespace.createElement(Text, { - className: textClassName, - appearance: appearance - }, label))); - }; + _this.updateState = function (year, month, date) { + _this.setState({ + year: year, + month: month, + date: date + }); + }; - var MetaOption = function MetaOption(props) { - var className = props.className, - textClassName = props.textClassName, - onClickHandler = props.onClickHandler, - optionData = props.optionData, - onUpdateActiveOption = props.onUpdateActiveOption, - renderSubInfo = props.renderSubInfo, - appearance = props.appearance, - dataTest = props.dataTest; - var subInfo = optionData.subInfo, - label = optionData.label, - disabled = optionData.disabled; - return /*#__PURE__*/React__namespace.createElement("div", { - className: className, - onClick: onClickHandler, - onMouseEnter: onUpdateActiveOption, - "data-test": dataTest, - "data-disabled": disabled - }, /*#__PURE__*/React__namespace.createElement("div", { - className: 'Option-label' - }, /*#__PURE__*/React__namespace.createElement(Text, { - className: textClassName, - appearance: appearance - }, label), subInfo && renderSubInfo(subInfo))); - }; + _this.getDateValue = function (year, month, date) { + var d = new Date(year, month, date); + return d; + }; - var IconOption = function IconOption(props) { - var _a; + _this.getNavDateInfo = function (index) { + var _a = _this.state, + yearBlockNav = _a.yearBlockNav, + yearNav = _a.yearNav, + monthNav = _a.monthNav; + var monthBlock = config.monthBlock; + var yearBlock = yearBlockNav; + var month = (monthNav + index) % monthBlock === -1 ? 11 : (monthNav + index) % monthBlock; + var year; - var className = props.className, - textClassName = props.textClassName, - onClickHandler = props.onClickHandler, - optionData = props.optionData, - onUpdateActiveOption = props.onUpdateActiveOption, - appearance = props.appearance, - dataTest = props.dataTest; - var label = optionData.label, - icon = optionData.icon, - disabled = optionData.disabled; - var OptionClass = classNames__default['default']((_a = {}, _a["" + className] = true, _a['Option--icon'] = icon, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - className: OptionClass, - onClick: onClickHandler, - onMouseEnter: onUpdateActiveOption, - "data-test": dataTest, - "data-disabled": disabled - }, icon && /*#__PURE__*/React__namespace.createElement(Icon, { - className: "Option-icon mr-4", - name: icon, - appearance: appearance - }), /*#__PURE__*/React__namespace.createElement("div", { - className: 'Option-label' - }, /*#__PURE__*/React__namespace.createElement(Text, { - className: textClassName, - appearance: appearance - }, label))); - }; + if (index >= 0) { + year = yearNav + (index !== 0 && month < monthNav ? 1 : 0); + } else { + year = yearNav - (index !== 0 && month > monthNav ? 1 : 0); + } - var IconWithMetaOption = function IconWithMetaOption(props) { - var _a; + return { + yearBlock: yearBlock, + year: year, + month: month + }; + }; - var className = props.className, - textClassName = props.textClassName, - renderSubInfo = props.renderSubInfo, - onClickHandler = props.onClickHandler, - optionData = props.optionData, - onUpdateActiveOption = props.onUpdateActiveOption, - appearance = props.appearance, - dataTest = props.dataTest; - var subInfo = optionData.subInfo, - label = optionData.label, - icon = optionData.icon, - disabled = optionData.disabled; - var OptionClass = classNames__default['default']((_a = {}, _a["" + className] = true, _a['Option--icon'] = icon, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - className: OptionClass, - onClick: onClickHandler, - onMouseEnter: onUpdateActiveOption, - "data-test": dataTest, - "data-disabled": disabled - }, icon && /*#__PURE__*/React__namespace.createElement(Icon, { - className: "Option-icon mr-4", - name: icon, - appearance: appearance - }), /*#__PURE__*/React__namespace.createElement("div", { - className: 'Option-label' - }, /*#__PURE__*/React__namespace.createElement(Text, { - className: textClassName, - appearance: appearance - }, label), subInfo && renderSubInfo(subInfo))); - }; + _this.getInRangeError = function () { + var _a = _this.props, + rangePicker = _a.rangePicker, + rangeLimit = _a.rangeLimit; + var _b = _this.state, + startDateState = _b.startDate, + endDateState = _b.endDate, + hoverDateState = _b.hoverDate; - var _a; - var OptionTypeMapping = (_a = {}, _a['DEFAULT'] = DefaultOption, _a['WITH_ICON'] = IconOption, _a['WITH_META'] = MetaOption, _a['WITH_CHECKBOX'] = CheckboxOption, _a['ICON_WITH_META'] = IconWithMetaOption, _a); + if (rangePicker && rangeLimit) { + var _c = getDateInfo(startDateState), + startYear = _c.year, + startMonth = _c.month, + startDate = _c.date; - var Option = function Option(props) { - var _a, _b, _c, _d; + var _d = getDateInfo(endDateState), + endYear = _d.year, + endMonth = _d.month, + endDate = _d.date; - var optionData = props.optionData, - selected = props.selected, - onClick = props.onClick, - updateActiveOption = props.updateActiveOption, - onChange = props.onChange, - active = props.active, - index = props.index, - checkboxes = props.checkboxes, - menu = props.menu; - var _e = (optionData.optionType ? optionData : props).optionType, - optionType = _e === void 0 ? 'DEFAULT' : _e; - var disabled = optionData.disabled; - var OptionClassName = classNames__default['default']((_a = {}, _a['Option'] = true, _a['Option--active'] = active, _a['Option--selected'] = selected && !menu, _a['Option--disabled'] = disabled, _a['OptionWrapper'] = true, _a)); - var CheckboxClassName = classNames__default['default']((_b = {}, _b['Option-checkbox'] = true, _b['Option-checkbox--active'] = active, _b['OptionWrapper'] = true, _b)); - var textClassName = classNames__default['default']((_c = {}, _c['Option-text'] = true, _c['Option-text--wrap'] = !props.truncateOption, _c)); - var customOptionClass = classNames__default['default']((_d = {}, _d['OptionWrapper'] = true, _d['OptionWrapper--disabled'] = disabled, _d)); + var _e = getDateInfo(hoverDateState), + hoverYear = _e.year, + hoverMonth = _e.month, + hoverDate = _e.date; - var onUpdateActiveOption = function onUpdateActiveOption() { - if (disabled) return; - if (updateActiveOption) updateActiveOption(index); - }; + var limitDate = void 0; - var onClickHandler = function onClickHandler(e) { - e.stopPropagation(); - if (disabled) return; - if (onClick) onClick(); - }; + if (startDateState) { + limitDate = new Date(startDateState); + limitDate.setDate(startDate + rangeLimit); + return compareDate(limitDate, 'less', hoverYear, hoverMonth, hoverDate + 1) || compareDate(limitDate, 'less', endYear, endMonth, endDate + 1); + } - var onChangeHandler = function onChangeHandler(e) { - e.stopPropagation(); - if (disabled) return; - if (onChange) onChange(e); - }; + if (endDateState) { + limitDate = new Date(endDateState); + limitDate.setDate(endDate - rangeLimit); + return compareDate(limitDate, 'more', hoverYear, hoverMonth, hoverDate - 1) || compareDate(limitDate, 'more', startYear, startMonth, startDate - 1); + } + } - if (props.optionRenderer) { - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - className: customOptionClass, - "data-disabled": disabled, - onMouseEnter: onUpdateActiveOption - }, !checkboxes && { - onClick: onClick - }), props.optionRenderer({ - optionData: optionData, - selected: selected, - onChange: onChange, - active: active, - index: index - })); - } + return false; + }; - var renderSubInfo = function renderSubInfo(subInfo) { - var labelAppearance = disabled ? 'disabled' : selected ? 'white' : 'subtle'; - var iconAppearance = selected ? 'white' : 'disabled'; + _this.selectYear = function (year) { + return function () { + _this.updateState(year); - if (typeof subInfo === 'string') { - return /*#__PURE__*/React__namespace.createElement(Text, { - appearance: labelAppearance - }, subInfo); - } + _this.setState({ + view: 'month' + }); + }; + }; - var _a = subInfo.list, - list = _a === void 0 ? [] : _a, - seperator = subInfo.seperator; - return /*#__PURE__*/React__namespace.createElement(MetaList, { - list: list, - seperator: seperator, - iconAppearance: iconAppearance, - labelAppearance: labelAppearance, - seperatorAppearance: iconAppearance - }); - }; + _this.yearMouseOverHandler = function (year, isCurrentYear, isDisabled, ev) { + var onYearHover = _this.props.onYearHover; + var yearData = { + value: year, + year: year, + isCurrentYear: isCurrentYear, + isDisabled: isDisabled + }; + if (onYearHover) onYearHover(yearData, ev); + }; - var appearance = disabled ? 'disabled' : selected && !menu ? 'white' : 'default'; - var type = checkboxes ? 'WITH_CHECKBOX' : optionType; - var component = OptionTypeMapping[type]; - return component({ - selected: selected, - index: index, - renderSubInfo: renderSubInfo, - optionData: optionData, - textClassName: textClassName, - appearance: appearance, - onClickHandler: onClickHandler, - onChangeHandler: onChangeHandler, - onUpdateActiveOption: onUpdateActiveOption, - dataTest: "DesignSystem-DropdownOption--" + type, - className: checkboxes ? CheckboxClassName : OptionClassName - }); - }; + _this.selectMonth = function (month) { + return function () { + _this.updateState(_this.state.yearNav, month); - var PlaceholderParagraph = function PlaceholderParagraph(props) { - var _a, _b; + _this.setState({ + view: 'date' + }); + }; + }; - var length = props.length, - size = props.size, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = { - 'Placeholder--animation': true, - PlaceholderParagraph: true - }, _a["PlaceholderParagraph--" + size] = size, _a)); - var wrapperClass = classNames__default['default']((_b = { - 'PlaceholderParagraph-wrapper': true - }, _b["PlaceholderParagraph-wrapper--length-" + length] = length, _b["PlaceholderParagraph-wrapper--size-" + size] = size, _b), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: wrapperClass - }), /*#__PURE__*/React__namespace.createElement("span", { - className: classes - })); - }; - PlaceholderParagraph.displayName = 'PlaceholderParagraph'; - PlaceholderParagraph.defaultProps = { - length: 'medium' - }; + _this.monthMouseOverHandler = function (month, isCurrentMonth, isDisabled, ev) { + var months = config.months; + var onMonthHover = _this.props.onMonthHover; + var monthData = { + value: months[month], + month: months[month], + year: _this.state.year, + isCurrentMonth: isCurrentMonth, + isDisabled: isDisabled + }; + if (onMonthHover) onMonthHover(monthData, ev); + }; - var PlaceholderImage = function PlaceholderImage(props) { - var _a; + _this.selectDate = function (index, date, prevMonthDayRange, dayRange) { + var d = _this.calculateDate(index, date, prevMonthDayRange, dayRange, false); - var _b = props.size, - size = _b === void 0 ? 'small' : _b, - round = props.round, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = { - PlaceholderImage: true, - 'Placeholder--animation': true - }, _a['PlaceholderImage--round'] = round, _a["PlaceholderImage--" + size] = size, _a), className); - return /*#__PURE__*/React__namespace.createElement("span", __assign({}, baseProps, { - className: classes - })); - }; - PlaceholderImage.displayName = 'PlaceholderImage'; - PlaceholderImage.defaultProps = { - size: 'small' - }; + _this.setState({ + currDate: d + }); + }; - var Placeholder = function Placeholder(props) { - var _a, _b; + _this.calculateDate = function (index, date, prevMonthDayRange, dayRange, isDateHovered) { + var neighbouringMonthIndex; + var neighbouringMonthDate; + var type = ''; + + if (date <= 0) { + neighbouringMonthIndex = index - 1; + neighbouringMonthDate = prevMonthDayRange + date; + type = 'prev'; + } else if (date > dayRange) { + neighbouringMonthIndex = index; + neighbouringMonthDate = date; + } else { + neighbouringMonthIndex = index; + neighbouringMonthDate = date; + } - var imageSize = props.imageSize, - withImage = props.withImage, - round = props.round, - children = props.children, - className = props.className; - var baseProps = extractBaseProps(props); - var paragraphClasses = classNames__default['default']((_a = { - 'Placeholder-paragraph': true - }, _a['Placeholder-paragraph--withImage'] = withImage, _a)); - var classes = classNames__default['default']((_b = {}, _b['Placeholder'] = true, _b), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-Placeholder" - }, baseProps, { - className: classes - }), withImage && /*#__PURE__*/React__namespace.createElement(PlaceholderImage, { - round: round, - size: imageSize, - "data-test": "DesignSystem-Placeholder--Image" - }), children && /*#__PURE__*/React__namespace.createElement("div", { - className: paragraphClasses, - "data-test": "DesignSystem-Placeholder--Paragraph" - }, children)); - }; - Placeholder.displayName = 'Placeholder'; - Placeholder.defaultProps = { - withImage: true, - imageSize: 'small' - }; + var _a = _this.getNavDateInfo(neighbouringMonthIndex), + year = _a.year, + month = _a.month; - var Loading = function Loading(props) { - var loadingType = props.loadingType; + if (isDateHovered === false) { + _this.updateState(year, month, neighbouringMonthDate); - switch (loadingType) { - case 'DEFAULT': - return /*#__PURE__*/React__default['default'].createElement(PlaceholderParagraph, { - length: 'large' - }); + _this.onNavIconClickHandler(type)(); + } - case 'WITH_ICON': - return /*#__PURE__*/React__default['default'].createElement(Placeholder, { - withImage: true, - round: true - }, /*#__PURE__*/React__default['default'].createElement(PlaceholderParagraph, { - length: "large" - })); + var d = _this.getDateValue(year, month, neighbouringMonthDate); - case 'WITH_META': - return /*#__PURE__*/React__default['default'].createElement(Placeholder, { - withImage: false - }, /*#__PURE__*/React__default['default'].createElement(PlaceholderParagraph, { - length: "large" - }), /*#__PURE__*/React__default['default'].createElement(PlaceholderParagraph, { - length: "medium", - size: "xxs" - })); + return d; + }; - case 'WITH_CHECKBOX': - return /*#__PURE__*/React__default['default'].createElement(Placeholder, { - withImage: true - }, /*#__PURE__*/React__default['default'].createElement(PlaceholderParagraph, { - length: "large" - })); + _this.onNavIconClickHandler = function (type) { + return function () { + var _a = _this.state, + view = _a.view, + yearBlockNav = _a.yearBlockNav, + yearNav = _a.yearNav, + monthNav = _a.monthNav; + var yearBlockRange = config.yearBlockRange, + monthBlock = config.monthBlock; - case 'ICON_WITH_META': - return /*#__PURE__*/React__default['default'].createElement(Placeholder, { - withImage: true, - round: true, - imageSize: 'medium' - }, /*#__PURE__*/React__default['default'].createElement(PlaceholderParagraph, { - length: "large" - }), /*#__PURE__*/React__default['default'].createElement(PlaceholderParagraph, { - length: "medium", - size: "xxs" - })); - } + switch (view) { + case 'year': + if (type === 'prev') _this.setState({ + yearBlockNav: yearBlockNav - yearBlockRange + }); + if (type === 'next') _this.setState({ + yearBlockNav: yearBlockNav + yearBlockRange + }); + break; - return null; - }; + case 'month': + if (type === 'prev') _this.setState({ + yearNav: yearNav - 1 + }); + if (type === 'next') _this.setState({ + yearNav: yearNav + 1 + }); + break; - var alignmentMapping = { - right: 'bottom-start', - left: 'bottom-end' - }; + case 'date': + if (type === 'prev') { + if (monthNav === 0) _this.setState({ + yearNav: yearNav - 1 + }); - var DropdownList = function DropdownList(props) { - var _a, _b, _c; + _this.setState({ + monthNav: (monthBlock + monthNav - 1) % monthBlock + }); + } - var _d = props.listOptions, - listOptions = _d === void 0 ? [] : _d, - inputRef = props.inputRef, - _f = props.align, - align = _f === void 0 ? 'right' : _f, - _g = props.optionType, - optionType = _g === void 0 ? 'DEFAULT' : _g, - _h = props.applyButtonLabel, - applyButtonLabel = _h === void 0 ? 'Apply' : _h, - _j = props.cancelButtonLabel, - cancelButtonLabel = _j === void 0 ? 'Cancel' : _j, - _k = props.truncateOption, - truncateOption = _k === void 0 ? true : _k, - _l = props.withSelectAll, - withSelectAll = _l === void 0 ? true : _l, - _m = props.maxHeight, - maxHeight = _m === void 0 ? 200 : _m, - customTrigger = props.customTrigger, - selected = props.selected, - tempSelected = props.tempSelected, - previousSelected = props.previousSelected, - remainingOptions = props.remainingOptions, - firstEnabledOption = props.firstEnabledOption, - dropdownOpen = props.dropdownOpen, - menu = props.menu, - searchTerm = props.searchTerm, - showApplyButton = props.showApplyButton, - withCheckbox = props.withCheckbox, - withSearch = props.withSearch, - popoverOptions = props.popoverOptions, - onSearchChange = props.onSearchChange, - optionRenderer = props.optionRenderer, - applyOptions = props.applyOptions, - cancelOptions = props.cancelOptions, - toggleDropdown = props.toggleDropdown, - className = props.className; - var baseProps = extractBaseProps(props); - var dropdownRef = /*#__PURE__*/React__namespace.createRef(); - var triggerRef = /*#__PURE__*/React__namespace.createRef(); - var dropdownTriggerRef = /*#__PURE__*/React__namespace.createRef(); - var dropdownCancelButtonRef = /*#__PURE__*/React__namespace.createRef(); - var dropdownApplyButtonRef = /*#__PURE__*/React__namespace.createRef(); + if (type === 'next') { + if (monthNav === monthBlock - 1) _this.setState({ + yearNav: yearNav + 1 + }); - var _o = React__namespace.useState(), - popoverStyle = _o[0], - setPopoverStyle = _o[1]; + _this.setState({ + monthNav: (monthNav + 1) % monthBlock + }); + } - var _p = React__namespace.useState(firstEnabledOption), - cursor = _p[0], - setCursor = _p[1]; + break; + } + }; + }; - React__namespace.useEffect(function () { - var _a; + _this.renderJumpButton = function (type) { + var _a; - if (dropdownOpen) { - var width = props.width, - minWidth = props.minWidth, - maxWidth = props.maxWidth; - var popperWidth = (_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.clientWidth; - var popperMinWidth = showApplyButton ? 176 : menu ? 128 : popperWidth; - var popperWrapperStyle = { - width: width ? width : popperWidth, - minWidth: minWidth ? minWidth : popperMinWidth, - maxWidth: maxWidth ? maxWidth : '100%' - }; - setPopoverStyle(popperWrapperStyle); - } - }, [dropdownOpen]); - React__namespace.useEffect(function () { - if (firstEnabledOption !== cursor) setCursor(firstEnabledOption); - }, [firstEnabledOption]); - var _q = props.triggerSize, - triggerSize = _q === void 0 ? 'regular' : _q, - _r = props.placeholder, - placeholder = _r === void 0 ? 'Select' : _r, - icon = props.icon, - error = props.error, - disabled = props.disabled, - inlineLabel = props.inlineLabel, - triggerLabel = props.triggerLabel; - var CustomTrigger = customTrigger ? customTrigger(triggerLabel ? triggerLabel : placeholder) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null); - var NewCustomTrigger = /*#__PURE__*/React__namespace.cloneElement(CustomTrigger, { - tabIndex: 0, - ref: dropdownTriggerRef - }); - var trigger = customTrigger ? NewCustomTrigger : /*#__PURE__*/React__namespace.createElement(DropdownButton, { - placeholder: placeholder, - triggerSize: triggerSize, - open: dropdownOpen, - icon: icon, - disabled: disabled, - inlineLabel: inlineLabel, - menu: menu, - error: error, - ref: dropdownTriggerRef - }, triggerLabel); - var dropdownStyle = { - maxHeight: maxHeight, - overflowY: 'auto', - overflowX: 'hidden' - }; + var _b = _this.props, + disabledBefore = _b.disabledBefore, + disabledAfter = _b.disabledAfter, + size = _b.size; + var _c = _this.state, + view = _c.view, + yearBlockNav = _c.yearBlockNav, + yearNav = _c.yearNav, + monthNav = _c.monthNav; + var disabled = false; - var getDropdownClass = function getDropdownClass(index, isGroup) { - var _a; + switch (view) { + case 'year': + if (type === 'prev') { + disabled = compareYearBlock(disabledBefore, 'more', yearBlockNav) || compareYearBlock(disabledBefore, 'equal', yearBlockNav); + } - var Dropdown = classNames__default['default']((_a = {}, _a['Dropdown--border'] = isGroup && index !== 0, _a)); - return Dropdown; - }; + if (type === 'next') { + disabled = compareYearBlock(disabledAfter, 'less', yearBlockNav) || compareYearBlock(disabledAfter, 'equal', yearBlockNav); + } - var getDropdownSectionClass = function getDropdownSectionClass(showClearButton) { - var _a; + break; - return classNames__default['default']((_a = {}, _a['Dropdown-section'] = true, _a['Dropdown-section--withClear'] = showClearButton, _a)); - }; + case 'month': + if (type === 'prev') { + disabled = compareDate(disabledBefore, 'more', yearNav - 1); + } - var dropdownClass = classNames__default['default']((_a = {}, _a['Dropdown'] = true, _a), className); - var dropdownWrapperClass = classNames__default['default']((_b = {}, _b['Dropdown-wrapper'] = true, _b['Dropdown-wrapper--wrap'] = !truncateOption, _b)); - var SelectAllClass = classNames__default['default']((_c = {}, _c['Option-checkbox'] = true, _c['Option-checkbox--active'] = cursor === 0, _c['OptionWrapper'] = true, _c)); + if (type === 'next') { + disabled = compareDate(disabledAfter, 'less', yearNav + 1); + } - var onToggleDropdown = function onToggleDropdown(open, type) { - var _a; + break; - toggleDropdown(open, type); - if (!disabled) (_a = dropdownTriggerRef.current) === null || _a === void 0 ? void 0 : _a.focus(); - setCursor(firstEnabledOption); - }; + case 'date': + if (type === 'prev') { + disabled = compareDate(disabledBefore, 'more', yearNav, monthNav - 1); + } - var onCancelOptions = function onCancelOptions() { - var _a; + if (type === 'next') { + disabled = compareDate(disabledAfter, 'less', yearNav, monthNav + 1); + } - cancelOptions(); - (_a = dropdownTriggerRef.current) === null || _a === void 0 ? void 0 : _a.focus(); - }; + break; + } - var onApplyOptions = function onApplyOptions() { - var _a; + var headerIconClass = classNames__default["default"]((_a = { + 'Calendar-headerIcon': true + }, _a["Calendar-headerIcon--" + type] = type, _a)); + return /*#__PURE__*/React__namespace.createElement(Button, { + type: "button", + className: headerIconClass, + appearance: "basic", + icon: "arrow_" + (type === 'next' ? 'forward' : 'back'), + disabled: disabled, + size: size === 'small' ? 'tiny' : 'regular', + onClick: _this.onNavIconClickHandler(type) + }); + }; - applyOptions(); - (_a = dropdownTriggerRef.current) === null || _a === void 0 ? void 0 : _a.focus(); - }; + _this.onNavHeadingClickHandler = function (currView) { + return function () { + var monthsInView = _this.props.monthsInView; + var jumpView = _this.props.jumpView; - var optionClickHandler = function optionClickHandler(item) { - var _a; + if (jumpView) { + if (monthsInView > 1) jumpView = false; + } - props.onOptionSelect(item); - (_a = dropdownTriggerRef.current) === null || _a === void 0 ? void 0 : _a.focus(); - }; + if (jumpView) { + if (currView === 'year') _this.setState({ + view: 'date' + }); + if (currView === 'month') _this.setState({ + view: 'year' + }); + if (currView === 'date') _this.setState({ + view: 'month' + }); + } + }; + }; - var searchClearHandler = function searchClearHandler() { - setCursor(firstEnabledOption); - if (onSearchChange && searchTerm) onSearchChange(''); - }; + _this.renderHeaderContent = function (index) { + var _a = _this.props, + size = _a.size, + monthsInView = _a.monthsInView, + rangePicker = _a.rangePicker; + var _b = _this.state, + view = _b.view, + yearBlockNav = _b.yearBlockNav; + var yearBlockRange = config.yearBlockRange, + months = config.months; - var searchHandler = function searchHandler(event) { - setCursor(firstEnabledOption); - if (onSearchChange) onSearchChange(event.target.value); - }; + var _c = _this.getNavDateInfo(index), + yearNavVal = _c.year, + monthNavVal = _c.month; - var updateActiveOption = function updateActiveOption(index, parentCheckbox) { - var updatedIndex = withCheckbox && withSelectAll && !props.async && !parentCheckbox ? index + 1 : index; - setCursor(updatedIndex); - }; + var headerContentClass = classNames__default["default"]({ + 'Calendar-headerContent': true, + 'Calendar-headerContent--noIcon-left': index === monthsInView - 1, + 'Calendar-headerContent--noIcon-right': index === 0 + }); + var headerContent = ''; + if (view === 'year') headerContent = yearBlockNav + " - " + (yearBlockNav + (yearBlockRange - 1)); + if (view === 'month') headerContent = "" + yearNavVal; - var renderFooter = function renderFooter() { - var _a = props.footerLabel, - footerLabel = _a === void 0 ? 'Search for more options' : _a; - return /*#__PURE__*/React__namespace.createElement("div", { - className: 'Dropdown-footer' - }, /*#__PURE__*/React__namespace.createElement(Text, { - size: "small", - appearance: 'subtle' - }, footerLabel)); - }; + var renderHeading = function renderHeading(content) { + if (size === 'small') { + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Text, { + weight: "strong" + }, content), view !== 'year' && !rangePicker && /*#__PURE__*/React__namespace.createElement(Icon, { + appearance: "inverse", + className: "pl-3", + name: "keyboard_arrow_down" + })); + } - var renderGroups = function renderGroups(group, selectedGroup) { - var onClearOptions = props.onClearOptions; - var isClearDisabled = selected.every(function (option) { - return option.disabled; - }); - return /*#__PURE__*/React__namespace.createElement("div", { - className: getDropdownSectionClass(selectedGroup) - }, /*#__PURE__*/React__namespace.createElement(Text, { - size: "small", - appearance: 'subtle' - }, group), selectedGroup && /*#__PURE__*/React__namespace.createElement(Button, { - onClick: onClearOptions, - disabled: isClearDisabled, - appearance: "transparent", - size: "tiny", - type: "button" - }, "Clear")); - }; + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Heading, { + size: "s" + }, content), view !== 'year' && !rangePicker && /*#__PURE__*/React__namespace.createElement(Icon, { + appearance: "inverse", + className: "pl-3", + name: "keyboard_arrow_down" + })); + }; - var renderApplyButton = function renderApplyButton() { - var disable = _isEqual(previousSelected, tempSelected); + return /*#__PURE__*/React__namespace.createElement("div", { + className: headerContentClass + }, view !== 'date' && /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex justify-content-center align-items-center", + onClick: _this.onNavHeadingClickHandler(view) + }, renderHeading(headerContent)), view === 'date' && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", { + onClick: _this.onNavHeadingClickHandler(view), + className: "d-flex justify-content-center align-items-center" + }, renderHeading(months[monthNavVal])), /*#__PURE__*/React__namespace.createElement("div", { + className: "ml-4 d-flex justify-content-center align-items-center", + onClick: _this.onNavHeadingClickHandler('month') + }, renderHeading(yearNavVal)))); + }; - return /*#__PURE__*/React__namespace.createElement("div", { - className: 'Dropdown-buttonWrapper' - }, /*#__PURE__*/React__namespace.createElement(Button, { - ref: dropdownCancelButtonRef, - className: "mr-4", - appearance: 'basic', - onClick: onCancelOptions, - size: 'tiny', - tabIndex: -1, - type: "button" - }, cancelButtonLabel), /*#__PURE__*/React__namespace.createElement(Button, { - ref: dropdownApplyButtonRef, - appearance: 'primary', - disabled: disable, - size: 'tiny', - onClick: onApplyOptions, - type: "button" - }, applyButtonLabel)); - }; + _this.renderBodyYear = function () { + var yearBlockRange = config.yearBlockRange, + yearsInRow = config.yearsInRow; + var _a = _this.props, + size = _a.size, + rangePicker = _a.rangePicker, + disabledBefore = _a.disabledBefore, + disabledAfter = _a.disabledAfter; + var _b = _this.state, + yearBlockNav = _b.yearBlockNav, + currYear = _b.currYear; + var noOfRows = Math.ceil(yearBlockRange / yearsInRow); + return Array.from({ + length: noOfRows + }, function (_y, row) { + return /*#__PURE__*/React__namespace.createElement("div", { + key: row, + className: "Calendar-valueRow" + }, Array.from({ + length: yearsInRow + }, function (_x, col) { + var _a; - var renderSearch = function renderSearch() { - return /*#__PURE__*/React__namespace.createElement("div", { - className: 'Dropdown-inputWrapper' - }, /*#__PURE__*/React__namespace.createElement(Input, { - name: "Dropdown-search", - icon: 'search', - value: searchTerm, - placeholder: 'Search..', - autoFocus: true, - onChange: searchHandler, - onClear: searchClearHandler, - ref: inputRef, - autoComplete: 'off', - className: "Dropdown-input" - })); - }; + var offset = yearsInRow * row + col; + if (offset === yearBlockNav) return undefined; + var year = yearBlockNav + offset; + var disabled = compareDate(disabledBefore, 'more', year) || compareDate(disabledAfter, 'less', year); + var active = !disabled && !rangePicker && year === _this.state.year; - var renderLoading = function renderLoading(loadersLength) { - var arr = Array(loadersLength).fill('Loading'); - var type = withCheckbox ? 'WITH_CHECKBOX' : optionType; - return arr.map(function (option, ind) { - return /*#__PURE__*/React__namespace.createElement("div", { - className: "Option-loading", - key: option + "-" + ind - }, /*#__PURE__*/React__namespace.createElement(Loading, { - loadingType: type - })); - }); - }; + var isCurrentYear = function isCurrentYear() { + return year === currYear; + }; - var renderSelectAll = function renderSelectAll() { - var _a = props.selectAllLabel, - selectAllLabel = _a === void 0 ? 'Select All' : _a, - selectAll = props.selectAll, - onSelectAll = props.onSelectAll; - var label = selectAllLabel.trim() ? selectAllLabel.trim() : 'Select All'; - return /*#__PURE__*/React__namespace.createElement("div", { - className: SelectAllClass, - onMouseEnter: function onMouseEnter(_e) { - return updateActiveOption(0, true); - } - }, /*#__PURE__*/React__namespace.createElement(Checkbox, { - label: label, - onChange: onSelectAll, - checked: selectAll.checked, - indeterminate: selectAll.indeterminate, - tabIndex: -1, - className: "OptionCheckbox" - })); - }; + var valueClass = classNames__default["default"]((_a = { + 'Calendar-value': true, + 'Calendar-value--active': active, + 'Calendar-value--disabled': disabled, + 'Calendar-yearValue': true + }, _a["Calendar-yearValue--" + size] = size, _a['Calendar-value--currDateMonthYear'] = isCurrentYear(), _a)); + var textClass = classNames__default["default"]({ + 'Calendar-value--currDate': isCurrentYear() && !active, + 'Calendar-text': true + }); + var getTextColor = classNames__default["default"]({ + inverse: !active && !isCurrentYear() && !disabled, + white: active, + 'primary-lighter': isCurrentYear() && disabled, + primary: isCurrentYear(), + 'inverse-lightest': disabled + }); + return /*#__PURE__*/React__namespace.createElement("div", { + key: row + "-" + col, + "data-test": "DesignSystem-Calendar--yearValue", + className: valueClass, + onClick: _this.selectYear(year), + onMouseOver: _this.yearMouseOverHandler.bind(_this, year, isCurrentYear(), disabled) + }, /*#__PURE__*/React__namespace.createElement(Text, { + size: size === 'small' ? 'small' : 'regular', + color: getTextColor, + className: textClass + }, year)); + })); + }); + }; - var renderOptions = function renderOptions(item, index) { - var selectAllPresent = _isSelectAllPresent(searchTerm, remainingOptions, withSelectAll, withCheckbox); + _this.renderBodyMonth = function () { + var monthBlock = config.monthBlock, + monthsInRow = config.monthsInRow, + months = config.months; + var _a = _this.props, + size = _a.size, + disabledBefore = _a.disabledBefore, + disabledAfter = _a.disabledAfter; + var _b = _this.state, + yearNav = _b.yearNav, + year = _b.year, + currYear = _b.currYear, + currMonth = _b.currMonth; + var noOfRows = Math.ceil(monthBlock / monthsInRow); + return Array.from({ + length: noOfRows + }, function (_y, row) { + return /*#__PURE__*/React__namespace.createElement("div", { + key: row, + className: "Calendar-valueRow" + }, Array.from({ + length: monthsInRow + }, function (_x, col) { + var _a; - var active = selectAllPresent ? index + 1 === cursor : index === cursor; - var optionIsSelected = tempSelected.findIndex(function (option) { - return option.value === item.value; - }) !== -1; - return /*#__PURE__*/React__namespace.createElement(Option, { - optionData: item, - truncateOption: truncateOption, - selected: optionIsSelected, - index: index, - updateActiveOption: updateActiveOption, - optionRenderer: optionRenderer, - active: active, - checkboxes: withCheckbox, - menu: menu, - onClick: function onClick() { - return optionClickHandler(item); - }, - onChange: function onChange(e) { - return props.onSelect(item, e.target.checked); - }, - optionType: props.optionType - }); - }; + var month = monthsInRow * row + col; + var disabled = compareDate(disabledBefore, 'more', yearNav, month) || compareDate(disabledAfter, 'less', yearNav, month); + var active = !disabled && year === yearNav && month === _this.state.month; - var renderDropdownSection = function renderDropdownSection() { - var _a = props.selectedSectionLabel, - selectedSectionLabel = _a === void 0 ? 'Selected Items' : _a, - _b = props.loadersCount, - loadersCount = _b === void 0 ? 10 : _b, - loadingOptions = props.loadingOptions; + var isCurrentMonth = function isCurrentMonth() { + return currYear === yearNav && currMonth === month; + }; - var selectAllPresent = _isSelectAllPresent(searchTerm, remainingOptions, withSelectAll, withCheckbox); + var valueClass = classNames__default["default"]((_a = { + 'Calendar-value': true, + 'Calendar-value--active': active, + 'Calendar-value--disabled': disabled, + 'Calendar-monthValue': true + }, _a["Calendar-monthValue--" + size] = size, _a['Calendar-value--currDateMonthYear'] = isCurrentMonth(), _a)); + var getTextColor = classNames__default["default"]({ + inverse: !active && !isCurrentMonth() && !disabled, + white: active, + 'primary-lighter': isCurrentMonth() && disabled, + primary: isCurrentMonth(), + 'inverse-lightest': disabled + }); + var textClass = classNames__default["default"]({ + 'Calendar-value--currDate': isCurrentMonth() && !active, + 'Calendar-text': true + }); + return /*#__PURE__*/React__namespace.createElement("div", { + key: row + "-" + col, + "data-test": "DesignSystem-Calendar--monthValue", + className: valueClass, + onClick: _this.selectMonth(month), + onMouseOver: _this.monthMouseOverHandler.bind(_this, month, isCurrentMonth(), disabled) + }, /*#__PURE__*/React__namespace.createElement(Text, { + size: size === 'small' ? 'small' : 'regular', + color: getTextColor, + className: textClass + }, months[month])); + })); + }); + }; - if (loadersCount && loadingOptions) { - return /*#__PURE__*/React__namespace.createElement("div", { - className: 'Dropdown-loading' - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "Dropdown-wrapper", - style: dropdownStyle - }, renderLoading(loadersCount))); - } + _this.onDateRowMouseLeaveHandler = function () { + var rangePicker = _this.props.rangePicker; - if (listOptions.length === 0 && !loadingOptions) { - var _c = props.noResultMessage, - noResultMessage = _c === void 0 ? 'No result found' : _c; - return /*#__PURE__*/React__namespace.createElement("div", { - className: 'Dropdown-errorWrapper' - }, /*#__PURE__*/React__namespace.createElement("div", { - className: 'Option' - }, /*#__PURE__*/React__namespace.createElement("div", { - className: 'Option-subinfo' - }, noResultMessage))); - } + if (rangePicker) { + _this.setState({ + hoverDate: undefined + }); + } + }; - return /*#__PURE__*/React__namespace.createElement("div", { - className: dropdownWrapperClass, - style: dropdownStyle, - ref: dropdownRef - }, selectAllPresent && renderSelectAll(), selected.length > 0 && renderGroups(selectedSectionLabel, true), selected.map(function (option, index) { - return renderOptions(option, index); - }), listOptions.map(function (option, index) { - var prevGroup = index > 0 ? listOptions[index - 1].group : selected.length ? selectedSectionLabel : undefined; - var currentGroup = option.group; - var isGroup = prevGroup !== currentGroup; - var updatedIndex = index + selected.length; - return /*#__PURE__*/React__namespace.createElement("div", { - className: getDropdownClass(updatedIndex, isGroup), - key: index - }, isGroup && currentGroup && renderGroups(currentGroup), renderOptions(option, updatedIndex)); - }), props.async && remainingOptions > 0 && renderFooter()); - }; + _this.renderBodyDate = function (index) { + var daysInRow = config.daysInRow, + days = config.days; + var _a = _this.props, + size = _a.size, + firstDayOfWeek = _a.firstDayOfWeek; + var textSize = size === 'large' ? 'regular' : 'small'; + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", { + className: "Calendar-dayValues" + }, Array.from({ + length: 7 + }, function (_x, day) { + var valueClass = classNames__default["default"]({ + 'Calendar-valueWrapper': true + }); + var dayValue = (day + daysInRow + getIndexOfDay(firstDayOfWeek)) % daysInRow; + return /*#__PURE__*/React__namespace.createElement(Text, { + key: day, + className: valueClass, + appearance: "default", + weight: "strong", + size: textSize + }, days[size][dayValue]); + })), /*#__PURE__*/React__namespace.createElement("div", { + className: "Calendar-dateValues", + onMouseLeave: _this.onDateRowMouseLeaveHandler + }, _this.renderDateValues(index))); + }; - var focusOption = function focusOption(direction, classes) { - var elements = document.querySelectorAll(classes); - var updatedCursor = direction === 'down' ? cursor + 1 : cursor - 1; - var startIndex = updatedCursor; - var endIndex = direction === 'down' ? elements.length : -1; + _this.renderDateValues = function (index) { + var daysInRow = config.daysInRow, + monthBlock = config.monthBlock; + var _a = _this.props, + size = _a.size, + rangePicker = _a.rangePicker, + firstDayOfWeek = _a.firstDayOfWeek, + disabledBefore = _a.disabledBefore, + disabledAfter = _a.disabledAfter, + monthsInView = _a.monthsInView, + onDateHover = _a.onDateHover; + var _b = _this.state, + startDate = _b.startDate, + endDate = _b.endDate, + hoverDate = _b.hoverDate, + yearState = _b.year, + monthState = _b.month, + dateState = _b.date, + currMonth = _b.currMonth, + currYear = _b.currYear, + todayDate = _b.todayDate; - while (startIndex !== endIndex) { - var node = elements[startIndex]; + var _c = _this.getNavDateInfo(index), + yearNavVal = _c.year, + monthNavVal = _c.month; - if (node.getAttribute('data-disabled') !== 'true') { - var element = elements[startIndex]; - if (element) scrollIntoView(dropdownRef.current, element); - if (element !== undefined) setCursor(startIndex); - break; - } + var prevMonth = monthNavVal - 1; + var prevYear = yearNavVal; + var prevMonthDayRange = getDaysInMonth(prevYear, prevMonth); + var dayRange = getDaysInMonth(yearNavVal, monthNavVal); + var firstDayIndex = getFirstDayOfMonth(yearNavVal, monthNavVal); + var desiredFirstDayIndex = getIndexOfDay(firstDayOfWeek); + var dayDiff = (firstDayIndex - desiredFirstDayIndex + 7) % 7; + var dummyDays = Math.abs(dayDiff); + var noOfRows = Math.ceil((dayRange + dummyDays) / daysInRow); - if (direction === 'down') { - startIndex++; - } else { - startIndex--; + if (noOfRows === 6) ; else if (monthsInView > 1) ; else { + noOfRows = noOfRows + 1; } - } - }; - var onkeydown = function onkeydown(event) { - var _a, _b, _c; + var inRangeError = _this.getInRangeError(); - var optionClass = '.OptionWrapper'; + var events = _this.props.events; - switch (event.key) { - case 'ArrowDown': - event.preventDefault(); - dropdownOpen ? focusOption('down', optionClass) : onToggleDropdown(!dropdownOpen); - break; + var onClickHandler = function onClickHandler(date) { + return function () { + if (rangePicker) { + if (startDate && endDate) { + _this.selectDate(index, date, prevMonthDayRange, dayRange); + } else { + if (!inRangeError) _this.selectDate(index, date, prevMonthDayRange, dayRange); + } + } else { + _this.selectDate(index, date, prevMonthDayRange, dayRange); + } + }; + }; - case 'ArrowUp': - event.preventDefault(); - dropdownOpen ? focusOption('up', optionClass) : onToggleDropdown(!dropdownOpen); - break; + var onMouseOverHandler = function onMouseOverHandler(date) { + return function () { + if (rangePicker) { + var d = _this.getDateValue(yearNavVal, monthNavVal, date); - case 'Enter': - var activeElement = document.activeElement; - - if (dropdownOpen && (inputRef.current === activeElement || dropdownTriggerRef.current === activeElement)) { - event.preventDefault(); - var classes = withCheckbox ? optionClass + " .Checkbox-input" : optionClass; - var elements = document.querySelectorAll(classes); - var element = elements[cursor]; - if (element) element.click(); - } + if (!startDate || !endDate) { + _this.setState({ + hoverDate: d + }); + } + } + }; + }; - if (!dropdownOpen) onToggleDropdown(!dropdownOpen); - break; + var onMouseEnterHandler = function onMouseEnterHandler(date, isToday, isDisabled, ev) { + var d = _this.calculateDate(index, date, prevMonthDayRange, dayRange, true) || new Date(); + var months = config.months, + days = config.days; + var dayName = days.large[d.getDay()]; + var dateData = { + value: d.getDate(), + isToday: isToday, + isDisabled: isDisabled, + todayDate: _this.state.currDate, + fullDate: d, + date: d.getDate(), + month: months[d.getMonth()], + year: d.getFullYear(), + dayName: dayName + }; + if (onDateHover) onDateHover(dateData, ev); + }; - case 'Tab': - if (!showApplyButton && dropdownOpen) { - event.preventDefault(); - onToggleDropdown(false, 'onClick'); - return; - } + return Array.from({ + length: noOfRows + }, function (_y, row) { + return /*#__PURE__*/React__namespace.createElement("div", { + key: row, + className: "Calendar-valueRow" + }, Array.from({ + length: daysInRow + }, function (_x, col) { + var _a; - var currentElement = document.activeElement; - var disabledApplyButton = (_a = dropdownApplyButtonRef.current) === null || _a === void 0 ? void 0 : _a.disabled; + var date = daysInRow * row + col - dummyDays + 1; + var dummy = date <= 0 || date > dayRange; + var disabled = compareDate(disabledBefore, 'more', yearNavVal, monthNavVal, date) || compareDate(disabledAfter, 'less', yearNavVal, monthNavVal, date); + var active = !disabled && yearState === yearNavVal && monthState === monthNavVal && dateState === date; - if ((currentElement === dropdownCancelButtonRef.current && disabledApplyButton || currentElement === dropdownApplyButtonRef.current) && dropdownOpen) { - event.preventDefault(); - onToggleDropdown(false, 'onClick'); - return; - } + var today = function today() { + var boolVal; - if (showApplyButton && dropdownOpen) { - event.preventDefault(); + if (date <= 0) { + boolVal = currYear === yearNavVal && currMonth === monthNavVal - 1 && todayDate === prevMonthDayRange + date; + } else if (date > dayRange) { + boolVal = currYear === yearNavVal && currMonth === monthNavVal + 1 && todayDate === date - dayRange; + } else { + boolVal = currYear === yearNavVal && currMonth === monthNavVal && todayDate === date; + } - if (currentElement === dropdownCancelButtonRef.current) { - (_b = dropdownApplyButtonRef.current) === null || _b === void 0 ? void 0 : _b.focus(); - } else { - (_c = dropdownCancelButtonRef.current) === null || _c === void 0 ? void 0 : _c.focus(); - } - } + return boolVal; + }; - break; - } - }; + var startActive = false; + var endActive = false; + var inRange = false; + var inRangeLast = false; - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: dropdownClass, - ref: triggerRef, - onKeyDown: onkeydown - }), /*#__PURE__*/React__namespace.createElement(Popover, __assign({ - onToggle: onToggleDropdown, - trigger: trigger, - triggerClass: !menu ? 'w-100' : '', - open: dropdownOpen, - customStyle: popoverStyle, - position: alignmentMapping[align] - }, popoverOptions), (withSearch || props.async) && renderSearch(), renderDropdownSection(), showApplyButton && withCheckbox && renderApplyButton())); - }; - - DropdownList.displayName = 'DropdownList'; - - var inputRef = /*#__PURE__*/React__namespace.createRef(); + var _b = getDateInfo(startDate), + sYear = _b.year, + sMonth = _b.month, + sDate = _b.date; - var Dropdown = function (_super) { - __extends(Dropdown, _super); + var _c = getDateInfo(endDate), + eYear = _c.year, + eMonth = _c.month, + eDate = _c.date; - function Dropdown(props) { - var _this = _super.call(this, props) || this; + var isStart = startActive || endDate && inRangeLast && compareDate(hoverDate, 'less', eYear, eMonth, eDate); + var isEnd = endActive || startDate && inRangeLast && compareDate(hoverDate, 'more', sYear, sMonth, sDate); + var dateInString = "" + (date <= 0 ? prevMonthDayRange + date : date > dayRange ? date - dayRange : date); + var monthInString = "" + (date <= 0 ? monthNavVal === 0 ? monthNavVal + monthBlock : (monthNavVal - 1) % monthBlock + 1 : date > dayRange ? (monthNavVal + 1) % monthBlock + 1 : monthNavVal + 1); + var yearInString = "" + (date <= 0 && monthNavVal + 1 === 1 ? yearNavVal - 1 : date > dayRange && monthNavVal + 1 === 12 ? yearNavVal + 1 : yearNavVal); + var completeDateString = (monthInString.length === 2 ? monthInString : "0" + monthInString) + "/" + (dateInString.length === 2 ? dateInString : "0" + dateInString) + "/" + yearInString; + var isEventExist = events && _typeof(events) === 'object' && events.hasOwnProperty(completeDateString); - _this.getDisabledOptions = function (options) { - if (options === void 0) { - options = []; - } + if (rangePicker) { + startActive = compareDate(startDate, 'equal', yearNavVal, monthNavVal, date); + endActive = compareDate(endDate, 'equal', yearNavVal, monthNavVal, date); + inRangeLast = compareDate(hoverDate, 'equal', yearNavVal, monthNavVal, date); + active = !disabled && (startActive || endActive); - return options.filter(function (option) { - return option.disabled; - }); - }; + if (startDate && endDate) { + inRange = !disabled && (dateComparison(startDate, 'less', dateInString, monthInString, yearInString) && dateComparison(endDate, 'more', dateInString, monthInString, yearInString) || startActive || endActive); + } else if (startDate) { + inRange = !disabled && (dateComparison(hoverDate, 'more', dateInString, monthInString, yearInString) || inRangeLast) && dateComparison(startDate, 'less', dateInString, monthInString, yearInString); + } else if (endDate) { + inRange = !disabled && (dateComparison(hoverDate, 'less', dateInString, monthInString, yearInString) || inRangeLast) && dateComparison(endDate, 'more', dateInString, monthInString, yearInString); + } + } - _this.fetchOptionsFunction = function (searchTerm) { - var options = _this.props.options; - var filteredOptions = searchTerm ? getSearchedOptions(options, searchTerm) : options; - return new Promise(function (resolve) { - resolve({ - searchTerm: searchTerm, - options: filteredOptions, - count: filteredOptions.length - }); + var isRangeError = inRange && inRangeError; + var isStartActive = startDate && dateComparison(startDate, 'equal', dateInString, monthInString, yearInString); + var isEndActive = endDate && dateComparison(endDate, 'equal', dateInString, monthInString, yearInString); + var activeDate = startDate && endDate && (isStartActive || isEndActive); + var isHoverBackwardLast = _this.props.allowReverseSelection && dateComparison(hoverDate, 'equal', dateInString, monthInString, yearInString) && hoverDate && (startDate && hoverDate < startDate || endDate && hoverDate < endDate); + var isHoverForwardLast = dateComparison(hoverDate, 'equal', dateInString, monthInString, yearInString) && hoverDate && startDate && hoverDate >= startDate; + var isEdgeElement = col === 0 || col === 6; + var isValueRange = inRange || rangePicker && (active || activeDate); + var wrapperClass = classNames__default["default"]({ + 'Calendar-valueWrapper': true, + 'Calendar-valueWrapper--inRange': !isEdgeElement && isValueRange, + 'Calendar-valueWrapper--inEdgeRange': isValueRange && isEdgeElement, + 'Calendar-valueWrapper--inRangeError': isRangeError, + 'Calendar-valueWrapper--start': isStart && !isEnd && col !== 6 || rangePicker && isStartActive && col !== 6, + 'Calendar-valueWrapper--end': isEnd && !isStart && col !== 0 || rangePicker && isEndActive && col !== 0, + 'Calendar-valueWrapper--startEnd': isStart && isEnd, + 'Calendar-valueWrapper--startError': isStart && isRangeError || rangePicker && isRangeError && isStartActive, + 'Calendar-valueWrapper--endError': isEnd && isRangeError || rangePicker && isRangeError && isEndActive, + 'Calendar-valueWrapper--dummy': dummy, + 'Calendar-valueWrapper--hoverDate': rangePicker && isHoverForwardLast, + 'Calendar-valueWrapper--hoverEndDate': rangePicker && isHoverBackwardLast, + 'Calendar-valueWrapper--inStartRange': isValueRange && col === 0 && !active && !activeDate, + 'Calendar-valueWrapper--inEndRange': isValueRange && col === 6 && !active && !activeDate + }); + var valueClass = classNames__default["default"]((_a = { + 'Calendar-value': true, + 'Calendar-inRangeValue': !isStart && !isEnd && !active && !activeDate, + 'Calendar-value--start': isStart && !isEnd, + 'Calendar-value--end': isEnd && !isStart, + 'Calendar-value--startError': isStart && isRangeError, + 'Calendar-value--endError': isEnd && isRangeError, + 'Calendar-value--active': active || activeDate, + 'Calendar-value--disabled': disabled, + 'Calendar-dateValue': true + }, _a["Calendar-dateValue--" + size] = size, _a['Calendar-value--currDateMonthYear'] = today(), _a['Calendar-value--currDate'] = today() && !active && !activeDate, _a)); + var getTextColor = classNames__default["default"]({ + inverse: !active && !today() && !disabled && !activeDate, + white: active || activeDate, + 'primary-lighter': today() && disabled, + primary: today(), + 'inverse-lightest': disabled + }); + return /*#__PURE__*/React__namespace.createElement("div", { + key: row + "-" + col, + className: wrapperClass, + "data-test": "designSystem-Calendar-WrapperClass" + }, !dummy && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Text, { + color: getTextColor, + size: size === 'small' ? 'small' : 'regular', + "data-test": "DesignSystem-Calendar--dateValue", + className: valueClass, + onClick: onClickHandler(date), + onMouseOver: onMouseOverHandler(date), + onMouseEnter: onMouseEnterHandler.bind(_this, date, today(), disabled) + }, date), isEventExist && _this.renderEventsIndicator(size, active)), (dummy && date > 0 && index === monthsInView - 1 || dummy && date <= 0 && index === 0) && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Text, { + appearance: active || activeDate ? 'white' : disabled ? 'disabled' : today() ? 'link' : 'default', + size: size === 'small' ? 'small' : 'regular', + "data-test": "DesignSystem-Calendar--dateValue", + className: valueClass, + onClick: onClickHandler(date), + onMouseOver: onMouseOverHandler(date), + onMouseEnter: onMouseEnterHandler.bind(_this, date, today(), disabled) + }, date <= 0 ? prevMonthDayRange + date : date - dayRange), isEventExist && _this.renderEventsIndicator(size, active))); + })); }); }; - _this.getUnSelectedOptions = function (options, init) { - if (options.length) { - if (!init) { - return options.filter(function (option) { - return _this.state.tempSelected.findIndex(function (item) { - return item.value === option.value; - }) === -1; - }); - } - - var _a = _this.props.selected, - selected_1 = _a === void 0 ? [] : _a; - var unSelectedGroup = options.filter(function (option) { - return _isControlled(_this.props.selected) ? selected_1.findIndex(function (item) { - return item.value === option.value; - }) === -1 : !option.selected; - }); - return unSelectedGroup; - } + _this.renderCalendar = function (index) { + var _a, _b; - return options; + var _c = _this.props, + size = _c.size, + monthsInView = _c.monthsInView; + var view = _this.state.view; + var containerClass = classNames__default["default"]((_a = {}, _a['Calendar'] = true, _a["Calendar-" + view + "--" + size] = view, _a["Calendar--" + size] = size, _a)); + var headerClass = classNames__default["default"]((_b = {}, _b["Calendar-header--" + size] = size, _b)); + var bodyClass = classNames__default["default"]({ + 'Calendar-body': true + }); + return /*#__PURE__*/React__namespace.createElement("div", { + key: index, + "data-test": "DesignSystem-Calendar", + className: containerClass + }, /*#__PURE__*/React__namespace.createElement("div", { + className: headerClass + }, index === 0 && _this.renderJumpButton('prev'), _this.renderHeaderContent(index), index === monthsInView - 1 && _this.renderJumpButton('next')), /*#__PURE__*/React__namespace.createElement("div", { + className: bodyClass + }, view === 'year' && _this.renderBodyYear(), view === 'month' && _this.renderBodyMonth(), view === 'date' && _this.renderBodyDate(index))); }; - _this.getSelectedOptions = function (options, init) { - var _a = _this.props.selected, - selected = _a === void 0 ? [] : _a; + var _a = _this.props, + rangePicker = _a.rangePicker, + startDate = _a.startDate, + endDate = _a.endDate, + monthsInView = _a.monthsInView, + view = _a.view; + var currDate = rangePicker ? endDate || startDate : props.date; + var yearNav = props.yearNav !== undefined ? props.yearNav : getDateInfo(currDate || Date.now()).year; + var monthNav = props.monthNav !== undefined ? props.monthNav : getDateInfo(currDate || Date.now()).month; - if (options.length) { - if (!init) return _this.state.tempSelected; - var selectedGroup = _isControlled(_this.props.selected) ? selected : options.filter(function (option) { - return option.selected; - }); - return selectedGroup; - } + var _b = getDateInfo(currDate), + year = _b.year, + month = _b.month, + date = _b.date; - return []; + var todayCompleteDate = getDateInfo(new Date(Date.now())); + _this.state = { + currDate: currDate, + startDate: startDate, + endDate: endDate, + yearNav: yearNav, + monthNav: monthNav, + year: year, + month: month, + date: date, + todayDate: todayCompleteDate.date, + currMonth: todayCompleteDate.month, + currYear: todayCompleteDate.year, + view: monthsInView > 1 ? 'date' : view, + yearBlockNav: getYearBlock(yearNav) }; + return _this; + } - _this.updateOptions = function (init, async) { - var _a = _this.state, - searchTerm = _a.searchTerm, - selectAll = _a.selectAll, - tempSelected = _a.tempSelected, - previousSelected = _a.previousSelected; - var updatedAsync = async === undefined ? _this.state.async : async; - var _b = _this.props, - fetchOptions = _b.fetchOptions, - withCheckbox = _b.withCheckbox, - withSearch = _b.withSearch; - var fetchFunction = fetchOptions ? fetchOptions : _this.fetchOptionsFunction; - fetchFunction(searchTerm).then(function (res) { - var _a; - - var options = res.options, - count = res.count; - - if (!res.searchTerm || res.searchTerm && res.searchTerm === _this.state.searchTerm) { - updatedAsync = searchTerm === '' ? count > _this.staticLimit : updatedAsync; - var unSelectedGroup = _showSelectedItems(updatedAsync, searchTerm, withCheckbox) ? _this.getUnSelectedOptions(options, init) : options; - var selectedGroup = searchTerm === '' ? _this.getSelectedOptions(options, init) : []; - var optionsLength = searchTerm === '' ? count : _this.state.optionsLength; + Calendar.prototype.componentDidUpdate = function (prevProps, prevState) { + var _a, _b, _c, _d, _e; - var disabledOptions = _this.getDisabledOptions(unSelectedGroup.slice(0, _this.staticLimit)); + var monthsInView = this.props.monthsInView; - _this.setState(__assign(__assign({}, _this.state), { - optionsLength: optionsLength, - loading: false, - async: updatedAsync, - searchedOptionsLength: count, - options: unSelectedGroup.slice(0, _this.staticLimit), - tempSelected: init ? selectedGroup : tempSelected, - previousSelected: init ? selectedGroup : previousSelected, - selected: _showSelectedItems(updatedAsync, searchTerm, withCheckbox) ? selectedGroup : [], - triggerLabel: _this.updateTriggerLabel(init ? selectedGroup : tempSelected), - selectAll: !updatedAsync && init ? getSelectAll$1(selectedGroup, optionsLength, disabledOptions.length) : selectAll - })); + if (prevProps.date !== this.props.date) { + var _f = getDateInfo(this.props.date), + year = _f.year, + month = _f.month, + date = _f.date; - if (updatedAsync || withSearch) (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus(); - } + this.updateState(year, month, date); + var d = convertToDate(this.props.date); + this.setState({ + currDate: d }); - }; + } - _this.updateSearchTerm = function (search) { - _this.setState(__assign(__assign({}, _this.state), { - loading: true, - searchInit: true, - searchTerm: search - })); - }; + if (this.props.startDate && !isNaN(this.props.startDate.getTime()) && prevProps.startDate !== this.props.startDate) { + var d = convertToDate(this.props.startDate); + this.setState({ + startDate: d + }); + } - _this.updateOnPopperToggle = function () { - var _a = _this.props, - withCheckbox = _a.withCheckbox, - showApplyButton = _a.showApplyButton, - onClose = _a.onClose, - name = _a.name, - _b = _a.selected, - selected = _b === void 0 ? [] : _b; - var _c = _this.state, - previousSelected = _c.previousSelected, - tempSelected = _c.tempSelected, - optionsLength = _c.optionsLength, - async = _c.async, - loading = _c.loading, - searchTerm = _c.searchTerm, - options = _c.options; - var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.props.open : _this.state.open; + if (this.props.endDate && !isNaN(this.props.endDate.getTime()) && prevProps.endDate !== this.props.endDate) { + var d = convertToDate(this.props.endDate); + this.setState({ + endDate: d + }); + } - var disabledOptionsCount = _this.getDisabledOptions(options).length; + if (prevProps.view !== this.props.view) { + if (this.props.monthsInView === 1) { + this.setState({ + view: this.props.view + }); + } + } - if (withCheckbox && showApplyButton) { - var temporarySelected = _isControlled(_this.props.selected) ? selected : previousSelected; + if (prevProps.yearNav !== this.props.yearNav) { + var yearNav = this.props.yearNav; - _this.setState({ - tempSelected: temporarySelected, - selectAll: getSelectAll$1(temporarySelected, optionsLength, disabledOptionsCount), - triggerLabel: _this.updateTriggerLabel(temporarySelected) + if (yearNav) { + this.setState({ + yearNav: yearNav, + yearBlockNav: getYearBlock(yearNav) }); } + } - if (_isOpenControlled(_this.props.open)) { - _this.setState({ - open: popperIsOpen + if (prevProps.monthNav !== this.props.monthNav) { + var monthNav = this.props.monthNav; + + if (monthNav) { + this.setState({ + monthNav: monthNav }); } + } - if (popperIsOpen) { - var moveSelectedGroup = _showSelectedItems(async, searchTerm, withCheckbox) && !_isEqual(_this.state.selected, tempSelected); + if (prevState.currDate !== this.state.currDate) { + var _g = this.props, + rangePicker = _g.rangePicker, + onDateChange = _g.onDateChange; + var _h = this.state, + currDate = _h.currDate, + startDate = _h.startDate, + endDate = _h.endDate; - _this.setState({ - loading: moveSelectedGroup || loading || searchTerm !== '', - searchInit: searchTerm !== '', - searchTerm: '' - }); - - if (moveSelectedGroup) _this.updateOptions(false); - } - - if (onClose && !popperIsOpen) { - var arr = withCheckbox && showApplyButton ? _isControlled(_this.props.selected) ? selected : previousSelected : _this.state.tempSelected; - var values = arr.map(function (option) { - return option.value; - }); - onClose(values, name); - } - }; + if (currDate) { + if (onDateChange) onDateChange(currDate); - _this.updateTriggerLabel = function (selectedArray, totalOptions) { - if (selectedArray === void 0) { - selectedArray = []; - } + if (rangePicker) { + this.setState({ + hoverDate: undefined + }); - var selectedLength = selectedArray.length; - if (selectedLength === 0) return ''; - var _a = _this.props, - _b = _a.triggerOptions, - triggerOptions = _b === void 0 ? {} : _b, - getLabel = _a.getLabel; - var customLabel = triggerOptions.customLabel, - _c = triggerOptions.labelLimit, - labelLimit = _c === void 0 ? 2 : _c; - var optionsLength = _this.state ? _this.state.optionsLength : totalOptions; - var label = ''; + if (startDate && endDate) { + this.setState({ + startDate: currDate, + endDate: undefined + }); + } else { + var _j = getDateInfo(currDate), + year = _j.year, + month = _j.month, + date = _j.date; - if (selectedLength <= labelLimit) { - label = selectedArray.map(function (option) { - return option.label; - }).join(', '); - } else { - label = customLabel ? customLabel(selectedLength, optionsLength, selectedArray) : selectedLength + " selected"; + if (startDate) { + if (compareDate(startDate, 'more', year, month, date)) { + this.setState({ + startDate: currDate + }); + } else { + this.setState({ + endDate: currDate + }); + } + } else if (endDate) { + if (compareDate(endDate, 'less', year, month, date)) { + this.setState({ + endDate: currDate + }); + } else { + this.setState({ + startDate: currDate + }); + } + } else { + this.setState({ + startDate: currDate + }); + } + } + } else { + this.setState({ + startDate: currDate + }); + } } + } - if (getLabel) getLabel(label); - return label; - }; + if (this.state.startDate && !isNaN(this.state.startDate.getTime()) && ((_a = prevState.startDate) === null || _a === void 0 ? void 0 : _a.getTime()) !== ((_b = this.state.startDate) === null || _b === void 0 ? void 0 : _b.getTime()) || this.state.endDate && !isNaN((_c = this.state.endDate) === null || _c === void 0 ? void 0 : _c.getTime()) && ((_d = prevState.endDate) === null || _d === void 0 ? void 0 : _d.getTime()) !== ((_e = this.state.endDate) === null || _e === void 0 ? void 0 : _e.getTime())) { + var onRangeChange = this.props.onRangeChange; + var _k = this.state, + startDate = _k.startDate, + endDate = _k.endDate; + if (onRangeChange) onRangeChange(startDate, endDate); + } - _this.updateSelectedOptions = function (selectedArray, isSingleSelect, isControlled) { - var _a = _this.state, - optionsLength = _a.optionsLength, - previousSelected = _a.previousSelected, - selected = _a.selected, - loading = _a.loading, - open = _a.open; - var _b = _this.props, - onChange = _b.onChange, - withCheckbox = _b.withCheckbox, - showApplyButton = _b.showApplyButton, - closeOnSelect = _b.closeOnSelect, - name = _b.name, - onPopperToggle = _b.onPopperToggle; - var updatePreviousSelected = withCheckbox && showApplyButton && isControlled; + if (this.props.allowReverseSelection && prevState.hoverDate !== this.state.hoverDate) { + var _l = this.state, + hoverDate = _l.hoverDate, + startDate = _l.startDate, + endDate = _l.endDate; - var disabledOptions = _this.getDisabledOptions(_this.state.options); + if (startDate && !endDate) { + var _m = getDateInfo(startDate), + year = _m.year, + month = _m.month, + date = _m.date; - var isClearClicked = selectedArray.length === 0 && selected.length > 0 || selectedArray.every(function (option) { - return option.disabled; - }) && !selected.every(function (option) { - return option.disabled; - }); + if (compareDate(hoverDate, 'less', year, month, date)) { + this.setState({ + startDate: undefined, + endDate: startDate + }); + } + } else if (endDate && !startDate) { + var _o = getDateInfo(endDate), + year = _o.year, + month = _o.month, + date = _o.date; - _this.setState(__assign(__assign({}, _this.state), { - tempSelected: selectedArray, - triggerLabel: _this.updateTriggerLabel(selectedArray), - selectAll: getSelectAll$1(selectedArray, optionsLength, disabledOptions.length), - open: _isOpenControlled(_this.props.open) || withCheckbox ? open : !closeOnSelect, - previousSelected: updatePreviousSelected ? selectedArray : previousSelected, - selected: isClearClicked ? selectedArray : selected, - loading: isClearClicked ? true : loading - })); + if (compareDate(hoverDate, 'more', year, month, date)) { + this.setState({ + startDate: endDate, + endDate: undefined + }); + } + } + } - if (isClearClicked) _this.debounceClear(); + if (prevState.year !== this.state.year) { + var year = this.state.year; - if (onChange && (!showApplyButton || isControlled)) { - var values = selectedArray.map(function (item) { - return item.value; + if (year !== undefined && monthsInView === 1) { + this.setState({ + year: year, + yearBlockNav: getYearBlock(year), + yearNav: year }); - var selectedValues = isSingleSelect ? values[0] : values; - onChange(selectedValues, name); - } - - if (!withCheckbox && closeOnSelect && onPopperToggle && _isOpenControlled(_this.props.open)) { - onPopperToggle(false, 'optionClick'); } - }; + } - _this.onOptionSelect = function (option) { - var _a = _this.props, - onUpdate = _a.onUpdate, - selected = _a.selected; + if (prevState.month !== this.state.month) { + var month = this.state.month; - if (_isControlled(selected)) { - if (onUpdate) onUpdate('select-option', option); - return; + if (month !== undefined && monthsInView === 1) { + this.setState({ + monthNav: month + }); } + } + }; - _this.updateSelectedOptions([option], true); - }; - - _this.onSelect = function (option, checked) { - var _a = _this.props, - onUpdate = _a.onUpdate, - selected = _a.selected, - showApplyButton = _a.showApplyButton; + Calendar.prototype.renderEventsIndicator = function (size, active) { + var _a; - if (_isControlled(selected) && !showApplyButton) { - if (onUpdate) onUpdate(checked ? 'select-option' : 'deselect-option', option); - return; - } + var eventsIndicatorClass = classNames__default["default"]((_a = { + 'Calendar-eventsIndicator': true + }, _a["Calendar-eventsIndicator--" + size] = true, _a['Calendar-eventsIndicator--active'] = active, _a)); + return /*#__PURE__*/React__namespace.createElement("span", { + "data-test": "DesignSystem-Calendar-Event-Indicator", + className: eventsIndicatorClass + }); + }; - var tempSelected = _this.state.tempSelected; - var selectedArray = tempSelected.slice(); + Calendar.prototype.render = function () { + var _this = this; - if (!checked) { - var index = selectedArray.findIndex(function (item) { - return item.value === option.value; - }); - selectedArray.splice(index, 1); - } + var _a = this.props, + monthsInView = _a.monthsInView, + className = _a.className; + var baseProps = extractBaseProps(this.props); + var classes = classNames__default["default"]({ + 'Calendar-wrapper': true + }, className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: classes, + "data-test": "DesignSystem-Calendar-Wrapper" + }), Array.from({ + length: monthsInView + }, function (_x, index) { + return _this.renderCalendar(index); + })); + }; - selectedArray = checked ? selectedArray.concat(option) : selectedArray; + Calendar.defaultProps = { + size: 'large', + monthsInView: 1, + view: 'date', + firstDayOfWeek: 'sunday', + jumpView: true + }; + return Calendar; + }(React__namespace.Component); - _this.updateSelectedOptions(selectedArray, false); - }; + var Card = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a; - _this.onSelectAll = function (event) { - var _a = _this.props, - onUpdate = _a.onUpdate, - selected = _a.selected, - showApplyButton = _a.showApplyButton; - var _b = _this.state, - tempSelected = _b.tempSelected, - options = _b.options; + var _b = props.shadow, + shadow = _b === void 0 ? 'shadow10' : _b, + children = props.children, + className = props.className, + rest = __rest(props, ["shadow", "children", "className"]); - if (_isControlled(selected) && !showApplyButton) { - if (onUpdate) onUpdate(event.target.checked ? 'select-all' : 'deselect-all'); - return; - } + var classes = classNames__default["default"]((_a = { + Card: true + }, _a["Card--" + shadow] = shadow, _a["" + className] = className, _a)); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-Card", + ref: ref + }, rest, { + className: classes + }), children); + }); + Card.displayName = 'Card'; + Card.defaultProps = { + shadow: 'shadow10' + }; - var selectedArr = tempSelected.slice(); - var selectedDisabledArray = selectedArr.filter(function (option) { - return option.disabled; - }); - var selectedArray = event.target.checked ? __spreadArrays(options.filter(function (option) { - return !option.disabled; - }), selectedDisabledArray) : selectedDisabledArray; + var CardSubdued = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a; - _this.updateSelectedOptions(selectedArray, false); - }; + var border = props.border, + children = props.children, + className = props.className, + rest = __rest(props, ["border", "children", "className"]); - _this.debounceSearch = debounce(_this.props.searchDebounceDuration, function () { - _this.setState({ - searchInit: false - }, function () { - _this.updateOptions(false); - }); - }); - _this.debounceClear = debounce(250, function () { - return _this.updateOptions(false); - }); + var classes = classNames__default["default"]((_a = { + CardSubdued: true + }, _a["CardSubdued--" + border] = border, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-CardSubdued", + ref: ref + }, rest, { + className: classes + }), children); + }); + CardSubdued.displayName = 'CardSubdued'; - _this.onClearOptions = function () { - var _a = _this.props, - selected = _a.selected, - name = _a.name, - onUpdate = _a.onUpdate, - showApplyButton = _a.showApplyButton, - onChange = _a.onChange; - var tempSelected = _this.state.tempSelected; - var selectedArray = tempSelected.filter(function (option) { - return option.disabled; - }); + var CardHeader = function CardHeader(props) { + var className = props.className, + children = props.children; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]({ + 'Card-header': true + }, className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-CardHeader" + }, baseProps, { + className: classes + }), children); + }; + CardHeader.displayName = 'CardHeader'; - if (_isControlled(selected) && !showApplyButton) { - if (onUpdate) onUpdate('clear-all'); - return; - } + var CardBody = function CardBody(props) { + var className = props.className, + children = props.children; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]({ + 'Card-body': true + }, className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-CardBody" + }, baseProps, { + className: classes + }), children); + }; + CardBody.displayName = 'CardBody'; - _this.setState({ - selected: selectedArray, - tempSelected: selectedArray, - triggerLabel: '', - loading: true - }); + var CardFooter = function CardFooter(props) { + var _a; - _this.debounceClear(); + var className = props.className, + children = props.children, + withSeperator = props.withSeperator; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]((_a = { + 'Card-footer': true + }, _a['Card-footer--withSeperator'] = withSeperator, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-CardFooter" + }, baseProps, { + className: classes + }), children); + }; + CardFooter.displayName = 'CardFooter'; + CardFooter.defaultProps = { + withSeperator: true + }; - if (onChange && !showApplyButton) onChange(selectedArray, name); - }; + var isSpaceKey = function isSpaceKey(e) { + return e.key === 'Space'; + }; - _this.onTogglePopper = function (type) { - var onPopperToggle = _this.props.onPopperToggle; + var allowed = { + button: new Set(['Enter', 'Space', 'Spacebar', ' ']), + link: new Set(['Enter']), + checkbox: new Set([]), + radio: new Set([]) + }; - if (onPopperToggle && _isOpenControlled(_this.props.open)) { - onPopperToggle(false, type); - } - }; + var isKeyboardInteractionAllowed = function isKeyboardInteractionAllowed(role, key) { + if (!allowed[role]) { + return false; + } - _this.onCancelOptions = function () { - var _a = _this.state, - previousSelected = _a.previousSelected, - tempSelected = _a.tempSelected, - optionsLength = _a.optionsLength; - var _b = _this.props, - selected = _b.selected, - onUpdate = _b.onUpdate, - onClose = _b.onClose, - name = _b.name; - var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.state.open : false; - var values = previousSelected.map(function (option) { - return option.value; - }); + var allowedKeys = allowed[role]; + return allowedKeys.has(key); + }; - if (_isControlled(selected)) { - if (onUpdate) onUpdate('cancel-selected', previousSelected, tempSelected); + var useAccessibilityProps = function useAccessibilityProps(_a) { + var onClick = _a.onClick, + _onKeyDown = _a.onKeyDown, + _b = _a.role, + role = _b === void 0 ? 'button' : _b, + tabIndex = _a.tabIndex, + rest = __rest(_a, ["onClick", "onKeyDown", "role", "tabIndex"]); - _this.onTogglePopper('cancelClick'); + return __assign({}, onClick ? { + onClick: onClick, + role: role, + tabIndex: tabIndex || 0, + 'aria-label': rest['aria-label'], + onKeyDown: function onKeyDown(e) { + if (_onKeyDown) { + _onKeyDown(e); return; } - var label = _this.updateTriggerLabel(previousSelected); + var key = e.key; - var disabledOptions = _this.getDisabledOptions(_this.state.options); + if (isKeyboardInteractionAllowed(role, key)) { + if (onClick) { + e.preventDefault(); + onClick(e); + } + } + } + } : { + role: role, + tabIndex: tabIndex, + 'aria-label': rest['aria-label'] + }); + }; - _this.setState(__assign(__assign({}, _this.state), { - tempSelected: previousSelected, - selectAll: getSelectAll$1(previousSelected, optionsLength, disabledOptions.length), - triggerLabel: label, - open: popperIsOpen - })); + var iconTypeMapper = { + timelapse: 'outlined', + content_copy: 'outlined', + speed: 'outlined', + add_circle_outline: 'outlined', + turned_in_not: 'outlined', + important_devices: 'outlined', + thumb_down_off_alt: 'outlined', + alarm_on: 'outlined', + calendar_view_month: 'outlined', + aspect_ratio: 'outlined', + change_history: 'outlined', + arrow_circle_down: 'outlined', + card_membership: 'outlined', + query_builder: 'outlined', + copyright: 'outlined', + arrow_circle_up: 'outlined', + alarm: 'outlined', + work_outline: 'outlined', + bookmark_border: 'outlined', + delete_outline: 'outlined', + credit_card: 'outlined', + highlight_of: 'outlined', + check_circle_outline: 'outlined', + help_outline: 'outlined', + schedule: 'outlined', + radio_button_unchecked: 'outlined', + radio_button_checked: 'outlined', + "delete": 'outlined' + }; + var Icon = function Icon(props) { + var _a; - if (onClose && !popperIsOpen) { - onClose(values, name); - } + var appearance = props.appearance, + className = props.className, + name = props.name, + size = props.size, + children = props.children; + var accessibilityProps = useAccessibilityProps(props); + var baseProps = extractBaseProps(props); + var mapper = { + outline: 'outlined', + sharp: 'outlined', + round: 'rounded', + filled: 'rounded', + 'two-tone': 'rounded' + }; + var type = props.type && mapper[props.type] || props.type || name && iconTypeMapper[name] || 'rounded'; - _this.onTogglePopper('cancelClick'); - }; + var getIconAppearance = function getIconAppearance(iconColor) { + var x = iconColor.indexOf('_'); + return iconColor.slice(0, x) + iconColor.charAt(x + 1).toUpperCase() + iconColor.slice(x + 2); + }; - _this.onApplyOptions = function () { - var _a = _this.state, - tempSelected = _a.tempSelected, - previousSelected = _a.previousSelected; - var _b = _this.props, - onChange = _b.onChange, - selected = _b.selected, - onUpdate = _b.onUpdate, - onClose = _b.onClose, - name = _b.name; - var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.state.open : false; - var values = tempSelected.map(function (option) { - return option.value; - }); + var color = appearance && appearance.includes('_') ? getIconAppearance(appearance) : appearance; + var iconClass = classNames__default["default"]((_a = {}, _a['material-symbols'] = true, _a['material-symbols-rounded'] = type === 'rounded', _a['material-symbols-outlined'] = type === 'outlined', _a['Icon'] = true, _a["Icon--" + color] = appearance, _a["" + className] = className, _a)); + var styles = { + fontSize: size + "px", + width: size + "px" + }; - if (_isControlled(selected)) { - if (onUpdate) onUpdate('apply-selected', previousSelected, tempSelected); + if (children && /*#__PURE__*/React__namespace.isValidElement(children)) { + return /*#__PURE__*/React__namespace.createElement("span", __assign({}, baseProps, { + className: className + }), children); + } - _this.onTogglePopper('applyClick'); + return /*#__PURE__*/React__namespace.createElement("i", __assign({ + "data-test": "DesignSystem-Icon" + }, baseProps, { + className: iconClass, + style: styles + }, accessibilityProps), name); + }; + Icon.displayName = 'Icon'; + Icon.defaultProps = { + size: 16 + }; - return; - } + var GenericText = function GenericText(_a, ref) { + var children = _a.children, + _b = _a.componentType, + componentType = _b === void 0 ? 'span' : _b, + className = _a.className, + rest = __rest(_a, ["children", "componentType", "className"]); - _this.setState(__assign(__assign({}, _this.state), { - previousSelected: tempSelected, - optionsApplied: true, - open: popperIsOpen - })); + return /*#__PURE__*/React__namespace.createElement(componentType, __assign(__assign({}, rest), { + className: className, + ref: ref + }), children); + }; - if (onChange) { - onChange(values, name); - } + var Link$1 = /*#__PURE__*/React__namespace.forwardRef(GenericText); - if (onClose && !popperIsOpen) { - onClose(values, name); - } + var Text = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a; - _this.onTogglePopper('applyClick'); - }; + var _b = props.appearance, + appearance = _b === void 0 ? 'default' : _b, + _c = props.size, + size = _c === void 0 ? 'regular' : _c, + children = props.children, + weight = props.weight, + small = props.small, + className = props.className, + color = props.color, + rest = __rest(props, ["appearance", "size", "children", "weight", "small", "className", "color"]); - _this.onToggleDropdown = function (updatedOpen, type) { - if (_this.props.disabled) { - return; - } + var classes = classNames__default["default"]((_a = { + Text: true + }, _a["Text--" + appearance] = !color && appearance, _a["Text--" + weight] = weight, _a["Text--" + size] = size, _a["color-" + color] = color, _a['Text--small'] = size === 'small' || small, _a), className); + return /*#__PURE__*/React__namespace.createElement(Link$1, __assign({ + ref: ref, + "data-test": "DesignSystem-Text" + }, rest, { + className: classes, + componentType: "span" + }), children); + }); + Text.displayName = 'Text'; + Text.defaultProps = { + appearance: 'default', + size: 'regular' + }; - var onPopperToggle = _this.props.onPopperToggle; + var GenericChip = function GenericChip(props) { + var _a; - if (onPopperToggle && _isOpenControlled(_this.props.open)) { - onPopperToggle(updatedOpen, type); - return; - } + var label = props.label, + icon = props.icon, + clearButton = props.clearButton, + disabled = props.disabled, + className = props.className, + selected = props.selected, + onClose = props.onClose, + onClick = props.onClick, + labelPrefix = props.labelPrefix, + iconType = props.iconType; + var baseProps = extractBaseProps(props); - _this.setState({ - open: updatedOpen - }); - }; + var iconClass = function iconClass(align) { + var _a; - var _a = props.selected, - selected = _a === void 0 ? [] : _a, - totalOptions = props.totalOptions, - withCheckbox = props.withCheckbox, - loading = props.loading, - open = props.open, - options = props.options; - _this.staticLimit = Math.min(100, props.staticLimit); - var optionsLength = totalOptions ? totalOptions : options.length; - var async = 'fetchOptions' in _this.props || optionsLength > _this.staticLimit; - var selectedGroup = !async ? _this.getSelectedOptions(options, true) : []; + return classNames__default["default"]((_a = {}, _a['Chip-icon'] = true, _a["Chip-icon--" + align] = align, _a["Chip-icon-disabled--right"] = align === 'right' && disabled, _a['cursor-pointer'] = align === 'right' && !disabled, _a['Chip-icon--selected'] = align === 'right' && selected, _a)); + }; - var disabledOptions = _this.getDisabledOptions(options); + var onCloseHandler = function onCloseHandler(e) { + e.stopPropagation(); + if (onClose) onClose(); + }; - _this.state = { - async: async, - optionsLength: optionsLength, - open: open, - searchInit: false, - searchedOptionsLength: optionsLength, - optionsApplied: false, - options: options || [], - loading: async ? true : loading, - searchTerm: '', - tempSelected: selectedGroup, - previousSelected: selectedGroup, - selected: _showSelectedItems(async, '', withCheckbox) ? selected : [], - triggerLabel: _this.updateTriggerLabel(selectedGroup, optionsLength), - selectAll: getSelectAll$1(selectedGroup, optionsLength, disabledOptions.length) - }; - return _this; - } + var onClickHandler = function onClickHandler() { + if (onClick) onClick(); + }; - Dropdown.prototype.componentDidMount = function () { - var async = this.state.async; - if (async) this.updateOptions(true); + var onKeyDownHandler = function onKeyDownHandler(event) { + if (event.key === 'Enter') { + onCloseHandler(event); + } }; - Dropdown.prototype.componentDidUpdate = function (prevProps, prevState) { + var iconAppearance = function iconAppearance(align) { var _a; - if (!this.state.async) { - var _b = this.props, - loading = _b.loading, - fetchOptions = _b.fetchOptions, - _c = _b.options, - options = _c === void 0 ? [] : _c, - withSearch = _b.withSearch; - var disabledOptionsCount = this.getDisabledOptions(options).length; - - if (prevProps.loading !== loading && !fetchOptions) { - if (options.length > this.staticLimit) { - this.updateOptions(true, true); - } else { - var selectedGroup = this.getSelectedOptions(options, true); - this.setState(__assign(__assign({}, this.state), { - options: options, - loading: loading, - tempSelected: selectedGroup, - previousSelected: selectedGroup, - optionsLength: options.length, - searchedOptionsLength: options.length, - triggerLabel: this.updateTriggerLabel(selectedGroup), - selectAll: getSelectAll$1(selectedGroup, this.state.optionsLength, disabledOptionsCount) - })); - if (withSearch) (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus(); - } - } - } + return classNames__default["default"]((_a = {}, _a['disabled'] = disabled && !selected, _a['primary_dark'] = !disabled && selected, _a['primary_lighter'] = disabled && selected, _a['subtle'] = !disabled && !selected && align === 'right', _a['inverse'] = !disabled && !selected && align === 'left', _a)); + }; - if (this.props.selected !== undefined && prevProps.selected !== this.props.selected && prevProps.loading === this.props.loading) { - var isSingleSelect = !this.props.withCheckbox; - this.updateSelectedOptions(this.props.selected, isSingleSelect, true); - } + var textColor = classNames__default["default"]((_a = {}, _a['primary-lighter'] = disabled && selected, _a['inverse-lightest'] = disabled && !selected, _a['primary-dark'] = selected, _a['inverse'] = !disabled && !selected, _a)); - if (prevState.searchTerm !== this.state.searchTerm) { - this.debounceSearch(); + var renderLabel = function renderLabel() { + if (typeof label === 'string') { + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, labelPrefix && /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-GenericChip--LabelPrefix", + weight: "medium", + color: textColor, + className: "Chip-text mr-3" + }, labelPrefix), /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-GenericChip--Text", + color: textColor, + className: "Chip-text" + }, label)); } - if (prevProps.open !== this.props.open || prevState.open !== this.state.open) { - if (_isOpenControlled(this.props.open) && this.props.open === this.state.open) return; - this.updateOnPopperToggle(); - } + return label; }; - Dropdown.prototype.render = function () { - var _a = this.state, - options = _a.options, - async = _a.async, - open = _a.open, - searchTerm = _a.searchTerm, - searchInit = _a.searchInit, - loading = _a.loading, - searchedOptionsLength = _a.searchedOptionsLength, - tempSelected = _a.tempSelected, - selectAll = _a.selectAll, - triggerLabel = _a.triggerLabel, - previousSelected = _a.previousSelected; - var _b = this.props, - _c = _b.withSelectAll, - withSelectAll = _c === void 0 ? true : _c, - withCheckbox = _b.withCheckbox; + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + tabIndex: disabled ? -1 : 0, + "data-test": "DesignSystem-GenericChip--GenericChipWrapper" + }, baseProps, { + className: "Chip-wrapper " + className, + onClick: onClickHandler + }), icon && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-GenericChip--Icon", + name: icon, + type: iconType, + appearance: iconAppearance('left'), + className: iconClass('left') + }), renderLabel(), clearButton && /*#__PURE__*/React__namespace.createElement("div", { + role: "button", + onClick: onCloseHandler, + tabIndex: disabled ? -1 : 0, + onKeyDown: onKeyDownHandler, + className: iconClass('right'), + "data-test": "DesignSystem-GenericChip--clearButton" + }, /*#__PURE__*/React__namespace.createElement(Icon, { + name: "clear", + appearance: iconAppearance('right'), + className: "p-2" + }))); + }; + GenericChip.displayName = 'GenericChip'; - var _d = this.props, - _e = _d.triggerOptions, - triggerOptions = _e === void 0 ? {} : _e; - _d.selected; - var rest = __rest(_d, ["triggerOptions", "selected"]); + var Chip = function Chip(props) { + var _a; - var remainingOptionsLen = searchedOptionsLength - options.length; - var firstEnabledOption = _isSelectAllPresent(searchTerm, remainingOptionsLen, withSelectAll, withCheckbox) ? 0 : options.findIndex(function (option) { - return !option.disabled; - }); - return /*#__PURE__*/React__namespace.createElement(DropdownList, __assign({ - listOptions: options, - inputRef: inputRef, - remainingOptions: remainingOptionsLen, - firstEnabledOption: firstEnabledOption, - loadingOptions: loading, - async: async, - searchInit: searchInit, - dropdownOpen: open, - searchTerm: searchTerm, - triggerLabel: triggerLabel, - tempSelected: tempSelected, - previousSelected: previousSelected, - selected: this.state.selected, - applyOptions: this.onApplyOptions, - cancelOptions: this.onCancelOptions, - toggleDropdown: this.onToggleDropdown, - onClearOptions: this.onClearOptions, - onSelect: this.onSelect, - selectAll: selectAll, - onSearchChange: this.updateSearchTerm, - onOptionSelect: this.onOptionSelect, - onSelectAll: this.onSelectAll, - customTrigger: triggerOptions.customTrigger - }, rest)); - }; + var label = props.label, + icon = props.icon, + clearButton = props.clearButton, + type = props.type, + disabled = props.disabled, + selected = props.selected, + onClose = props.onClose, + onClick = props.onClick, + name = props.name, + className = props.className, + labelPrefix = props.labelPrefix, + iconType = props.iconType; + var baseProps = extractBaseProps(props); - Dropdown.defaultProps = { - triggerOptions: {}, - options: [], - closeOnSelect: true, - staticLimit: 50, - searchDebounceDuration: 300 + var onCloseHandler = function onCloseHandler() { + if (!disabled && onClose) onClose(name); }; - return Dropdown; - }(React__namespace.Component); - - var renderLink = function renderLink(item, _onClick) { - return /*#__PURE__*/React__namespace.createElement(Link, { - href: item.link, - onClick: function onClick(ev) { - if (_onClick) { - ev.preventDefault(); - - _onClick(item.link); - } - }, - appearance: "subtle", - size: "tiny" - }, item.label); - }; - - var renderDropdown = function renderDropdown(list, onClick) { - var options = list.map(function (item) { - return { - label: item.label, - value: item.link - }; - }); - var customTrigger = function customTrigger() { - return /*#__PURE__*/React__namespace.createElement(Button, { - size: "tiny", - appearance: "transparent", - icon: "more_horiz_filled", - "data-test": "DesignSystem-Breadcrumbs--Button" - }); + var onClickHandler = function onClickHandler() { + if (!disabled && onClick) onClick(name); }; - return /*#__PURE__*/React__namespace.createElement(Dropdown, { - triggerSize: 'tiny', - triggerOptions: { - customTrigger: customTrigger - }, - options: options, - menu: true, - onChange: function onChange(selected) { - if (onClick) { - onClick(selected); - } - } - }); + var clearbutton = type === 'action' ? false : clearButton; + var select = type === 'selection' && selected ? true : false; + var chipClass = classNames__default["default"]((_a = { + Chip: true + }, _a["Chip-" + type + "--disabled"] = disabled, _a["Chip--" + type] = type && !disabled, _a["Chip-" + type + "--selected"] = selected && !disabled, _a["Chip-selection--selectedDisabled"] = type === 'selection' && selected && disabled, _a['Chip-icon--clear'] = clearbutton, _a), className); + return /*#__PURE__*/React__namespace.createElement(GenericChip, __assign({ + "data-test": "DesignSystem-Chip--GenericChip" + }, baseProps, { + label: label, + selected: select, + icon: icon, + iconType: iconType, + clearButton: clearbutton, + disabled: disabled, + className: chipClass, + onClose: onCloseHandler, + onClick: onClickHandler, + name: name, + labelPrefix: labelPrefix + })); + }; + Chip.displayName = 'Chip'; + Chip.defaultProps = { + type: 'input' }; - var Breadcrumbs = function Breadcrumbs(props) { + var ChipGroup = function ChipGroup(props) { var _a; var list = props.list, onClick = props.onClick, + onClose = props.onClose, className = props.className; var baseProps = extractBaseProps(props); - var BreadcrumbClass = classNames__default['default']((_a = {}, _a['Breadcrumbs'] = true, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-Breadcrumbs" - }, baseProps, { - className: BreadcrumbClass - }), list.length <= 4 ? list.map(function (item, index) { - return /*#__PURE__*/React__namespace.createElement("div", { - key: index, - className: "Breadcrumbs-item", - "data-test": "DesignSystem-Breadcrumbs-item" - }, /*#__PURE__*/React__namespace.createElement("span", { - className: "Breadcrumbs-link" - }, renderLink(item, onClick)), /*#__PURE__*/React__namespace.createElement("span", { - className: "Breadcrumbs-itemSeparator" - }, "/")); - }) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", { - className: "Breadcrumbs-item", - "data-test": "DesignSystem-Breadcrumbs-item" - }, /*#__PURE__*/React__namespace.createElement("span", { - className: "Breadcrumbs-link" - }, renderLink(list[0], onClick)), /*#__PURE__*/React__namespace.createElement("span", { - className: "Breadcrumbs-itemSeparator" - }, "/")), /*#__PURE__*/React__namespace.createElement("div", { - className: "Breadcrumbs-dropdown" - }, renderDropdown(list.slice(1, list.length - 1), onClick), /*#__PURE__*/React__namespace.createElement("span", { - className: "Breadcrumbs-itemSeparator" - }, "/")), /*#__PURE__*/React__namespace.createElement("div", { - className: "Breadcrumbs-item", - "data-test": "DesignSystem-Breadcrumbs-item" - }, /*#__PURE__*/React__namespace.createElement("span", { - className: "Breadcrumbs-link" - }, renderLink(list[list.length - 1], onClick)), /*#__PURE__*/React__namespace.createElement("span", { - className: "Breadcrumbs-itemSeparator" - }, "/")))); - }; - var sizeMapping$2 = { - tiny: 12, - regular: 16, - large: 20 - }; - var Button = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { - var _a, _b; + var onClickHandler = function onClickHandler(item) { + if (onClick) onClick(item); + }; - var _c = props.size, - size = _c === void 0 ? 'regular' : _c, - _d = props.appearance, - appearance = _d === void 0 ? 'basic' : _d, - _e = props.iconAlign, - iconAlign = _e === void 0 ? 'left' : _e, - _f = props.tabIndex, - tabIndex = _f === void 0 ? 0 : _f, - largeIcon = props.largeIcon, - type = props.type, - children = props.children, - icon = props.icon, - expanded = props.expanded, - selected = props.selected, - loading = props.loading, - disabled = props.disabled, - className = props.className, - rest = __rest(props, ["size", "appearance", "iconAlign", "tabIndex", "largeIcon", "type", "children", "icon", "expanded", "selected", "loading", "disabled", "className"]); - - var buttonClass = classNames__default['default']((_a = {}, _a['Button'] = true, _a['Button--expanded'] = expanded, _a["Button--" + size] = size, _a["Button--" + size + "Square"] = !children, _a["Button--" + appearance] = appearance, _a['Button--selected'] = selected && (appearance === 'basic' || appearance === 'transparent'), _a["Button--iconAlign-" + iconAlign] = children && iconAlign, _a["" + className] = className, _a)); - var iconClass = classNames__default['default']((_b = {}, _b['Button-icon'] = true, _b["Button-icon--" + iconAlign] = children && iconAlign, _b)); - return /*#__PURE__*/React__namespace.createElement("button", __assign({ - "data-test": "DesignSystem-Button", - ref: ref, - type: type, - className: buttonClass, - disabled: disabled || loading, - tabIndex: tabIndex - }, rest), loading ? /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Spinner, { - size: "small", - appearance: appearance === 'basic' || appearance === 'transparent' ? 'secondary' : 'white', - "data-test": "DesignSystem-Button--Spinner", - className: "Button-spinner" - }), /*#__PURE__*/React__namespace.createElement(Text, { - className: "Button-text Button-text--hidden" - }, children || '')) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, icon && /*#__PURE__*/React__namespace.createElement("div", { - className: iconClass - }, /*#__PURE__*/React__namespace.createElement(Icon, { - "data-test": "DesignSystem-Button--Icon", - name: icon, - appearance: disabled ? 'disabled' : appearance === 'basic' || appearance === 'transparent' ? selected ? 'info' : 'default' : 'white', - size: largeIcon && !children ? sizeMapping$2[size] + 4 : sizeMapping$2[size] - })), children)); - }); - Button.displayName = 'Button'; - - var config = { - yearBlockRange: 12, - yearsInRow: 3, - monthBlock: 12, - monthsInRow: 3, - daysInRow: 7, - months: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], - days: { - small: ['S', 'M', 'T', 'W', 'T', 'F', 'S'], - large: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'] - } - }; + var onCloseHandler = function onCloseHandler(item) { + if (onClose) onClose(item); + }; - var yearBlockRange = config.yearBlockRange; - var getIndexOfDay = function getIndexOfDay(day) { - return ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'].indexOf(day); - }; - var getYearBlock = function getYearBlock(year) { - return year - year % yearBlockRange; - }; - var getDaysInMonth = function getDaysInMonth(year, month) { - return new Date(year, month + 1, 0).getDate(); - }; - var getFirstDayOfMonth = function getFirstDayOfMonth(year, month) { - return new Date(year, month).getDay(); + var ChipGroupClass = classNames__default["default"]((_a = {}, _a['ChipGroup'] = true, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-ChipGroup" + }, baseProps, { + className: ChipGroupClass + }), list.map(function (item, ind) { + var _a = item.label, + label = _a === void 0 ? '' : _a, + icon = item.icon, + type = item.type, + disabled = item.disabled, + selected = item.selected, + clearButton = item.clearButton, + name = item.name, + iconType = item.iconType; + return /*#__PURE__*/React__namespace.createElement("span", { + key: ind, + className: "ChipGroup-item" + }, /*#__PURE__*/React__namespace.createElement(Chip, { + "data-test": "DesignSystem-ChipGroup--Chip", + name: name, + label: label, + selected: selected, + icon: icon, + disabled: disabled, + clearButton: clearButton, + iconType: iconType, + type: type, + onClick: function onClick() { + return onClickHandler(item); + }, + onClose: function onClose() { + return onCloseHandler(item); + } + })); + })); }; - var getDateInfo = function getDateInfo(d) { - if (d) { - var dateVal = convertToDate(d); - - if (dateVal) { - var year = dateVal.getFullYear(); - var month = dateVal.getMonth(); - var day = dateVal.getDay(); - var date = dateVal.getDate(); - var decadeYear = getYearBlock(year); - return { - decadeYear: decadeYear, - year: year, - month: month, - day: day, - date: date - }; - } else { - return {}; - } - } + ChipGroup.displayName = 'ChipGroup'; - return {}; + var uidGenerator = function uidGenerator() { + var dt = new Date().getTime(); + var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) { + var r = (dt + Math.random() * 16) % 16 | 0; + dt = Math.floor(dt / 16); + var s = (c === 'x' ? r : r & 0x3 | 0x8).toString(16); + return s; + }); + return uuid; }; - var convertToDate = function convertToDate(d, format, validators) { - var dateVal; - if (d) { - if (typeof d === 'number') { - dateVal = new Date(d); - } else if (typeof d === 'string') { - return format ? translateToDate(format, d, validators) : undefined; - } else if (!(d instanceof Date)) { - var _a = d, - year = _a.year, - month = _a.month, - date = _a.date; - dateVal = new Date(year, month, date, 0, 0, 0); - } else { - dateVal = d; - } - } + var CheckboxIcon = function CheckboxIcon(props) { + switch (props.name) { + case 'checked--regular': + return /*#__PURE__*/React__default["default"].createElement("svg", { + width: "10", + height: "8", + viewBox: "0 0 10 8", + fill: "none", + xmlns: "http://www.w3.org/2000/svg" + }, /*#__PURE__*/React__default["default"].createElement("path", { + fillRule: "evenodd", + clipRule: "evenodd", + d: "M3.66667 5.56L8.72667 0.5L9.66667 1.44667L3.66667 7.44667L0.333333 4.11333L1.27333 3.17333L3.66667 5.56Z", + fill: "white" + })); - return dateVal; - }; - var compareYearBlock = function compareYearBlock(d, operator, currDecade) { - if (d) { - var limitDecade = getDateInfo(d).decadeYear; + case 'checked--tiny': + return /*#__PURE__*/React__default["default"].createElement("svg", { + width: "10", + height: "8", + viewBox: "0 0 10 8", + fill: "none", + xmlns: "http://www.w3.org/2000/svg" + }, /*#__PURE__*/React__default["default"].createElement("path", { + d: "M0.333344 4L1.27334 3.06L3.66668 5.44667L8.72668 0.386665L9.66668 1.33333L3.66668 7.33333L0.333344 4Z", + fill: "white" + })); - switch (operator) { - case 'less': - if (limitDecade < currDecade) return true; - break; + case 'indeterminate--regular': + return /*#__PURE__*/React__default["default"].createElement("svg", { + width: "10", + height: "2", + viewBox: "0 0 10 2", + fill: "none", + xmlns: "http://www.w3.org/2000/svg" + }, /*#__PURE__*/React__default["default"].createElement("path", { + d: "M0 0H10V2H0V0Z", + fill: "white" + })); - case 'more': - if (limitDecade > currDecade) return true; - break; + case 'indeterminate--tiny': + return /*#__PURE__*/React__default["default"].createElement("svg", { + width: "8", + height: "2", + viewBox: "0 0 8 2", + fill: "none", + xmlns: "http://www.w3.org/2000/svg" + }, /*#__PURE__*/React__default["default"].createElement("path", { + fillRule: "evenodd", + clipRule: "evenodd", + d: "M8 0H0V2H8V0Z", + fill: "white" + })); - case 'equal': - if (limitDecade === currDecade) return true; - break; - } + default: + return null; } - - return false; }; - var compareDate = function compareDate(d, operator, currYear, currMonth, currDate) { - if (d) { - var _a = getDateInfo(d), - limitYear = _a.year, - limitMonth = _a.month, - limitDate = _a.date; - switch (operator) { - case 'less': - if (limitYear < currYear) return true; - if (limitYear > currYear) return false; - - if (currMonth !== undefined) { - if (limitMonth < currMonth) return true; - if (limitMonth > currMonth) return false; - } - - if (currDate !== undefined && limitDate < currDate) return true; - break; - - case 'more': - if (limitYear > currYear) return true; - if (limitYear < currYear) return false; + var Checkbox = /*#__PURE__*/React__namespace.forwardRef(function (props, forwardedRef) { + var _a, _b, _c, _d, _e, _f; - if (currMonth !== undefined) { - if (limitMonth > currMonth) return true; - if (limitMonth < currMonth) return false; - } + var _g = props.size, + size = _g === void 0 ? 'regular' : _g, + _h = props.tabIndex, + tabIndex = _h === void 0 ? 0 : _h, + defaultChecked = props.defaultChecked, + indeterminate = props.indeterminate, + label = props.label, + error = props.error, + disabled = props.disabled, + onChange = props.onChange, + name = props.name, + value = props.value, + className = props.className, + checkedProp = props.checked, + helpText = props.helpText, + _j = props.id, + id = _j === void 0 ? name + "-" + label + "-" + uidGenerator() : _j, + labelRef = props.labelRef, + rest = __rest(props, ["size", "tabIndex", "defaultChecked", "indeterminate", "label", "error", "disabled", "onChange", "name", "value", "className", "checked", "helpText", "id", "labelRef"]); - if (currDate !== undefined && limitDate > currDate) return true; - break; + var ref = React__namespace.useRef(null); + React__namespace.useImperativeHandle(forwardedRef, function () { + return ref.current; + }); - case 'equal': - if (currDate !== undefined) { - if (limitYear === currYear && limitMonth === currMonth && limitDate === currDate) return true; - } else if (currMonth !== undefined) { - if (limitYear === currYear && limitMonth === currMonth) return true; - } else if (limitYear === currYear) return true; + var _k = React__namespace.useState(checkedProp === undefined ? defaultChecked : checkedProp), + checked = _k[0], + setChecked = _k[1]; + React__namespace.useEffect(function () { + setIndeterminate(indeterminate); + }, [indeterminate]); + React__namespace.useEffect(function () { + if (checkedProp !== undefined) { + setChecked(checkedProp); } - } - - return false; - }; - var translateToString = function translateToString(format, d) { - if (format && d) { - var _a = getDateInfo(d), - year_1 = _a.year, - month_1 = _a.month, - date_1 = _a.date; + }, [checkedProp]); + var CheckboxClass = classNames__default["default"]((_a = {}, _a['Checkbox'] = true, _a['Checkbox--disabled'] = disabled, _a), className); + var CheckboxOuterWrapper = classNames__default["default"]((_b = {}, _b['Checkbox-outerWrapper'] = true, _b["Checkbox-outerWrapper--" + size] = size, _b)); + var CheckboxInputWrapper = classNames__default["default"]((_c = {}, _c['Checkbox-input'] = true, _c['Checkbox-input--checked'] = checked, _c['Checkbox-input--indeterminate'] = props.indeterminate, _c)); + var CheckboxWrapper = classNames__default["default"]((_d = {}, _d['Checkbox-wrapper'] = true, _d['Checkbox-wrapper--default'] = !error, _d['Checkbox-wrapper--error'] = error, _d)); + var CheckboxLabelClass = classNames__default["default"]((_e = {}, _e['Checkbox-label'] = true, _e['Checkbox-label--tiny'] = size === 'tiny', _e)); - var separator_1 = format.includes('/') ? '/' : '-'; - var f_1 = format.split(separator_1); - var val = f_1.reduce(function (out, curr, i) { - switch (curr) { - case 'mm': - out += (month_1 < 9 && '0') + (month_1 + 1); - break; + var setIndeterminate = function setIndeterminate(indeterminateValue) { + ref.current.indeterminate = indeterminateValue; + }; - case 'yyyy': - out += year_1; - break; + var onChangeHandler = function onChangeHandler(e) { + if (checkedProp === undefined) { + setChecked(e.target.checked); + setIndeterminate(e.target.indeterminate); + } - case 'dd': - out += (date_1 < 10 && '0') + date_1; - break; - } + if (onChange) onChange(e); + }; - if (i !== f_1.length - 1) out += separator_1; - return out; - }, ''); - return val; - } + var IconMapper = classNames__default["default"]((_f = {}, _f['checked--regular'] = checked && size === 'regular', _f['checked--tiny'] = checked && size === 'tiny', _f['indeterminate--regular'] = indeterminate && size === 'regular', _f['indeterminate--tiny'] = indeterminate && size === 'tiny', _f)); + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Checkbox", + className: CheckboxClass + }, /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Checkbox-OuterWrapper", + className: CheckboxOuterWrapper + }, /*#__PURE__*/React__namespace.createElement("input", __assign({}, rest, { + type: "checkbox", + defaultChecked: defaultChecked, + onChange: onChangeHandler, + checked: checked, + disabled: disabled, + ref: ref, + name: name, + value: value, + className: CheckboxInputWrapper, + tabIndex: tabIndex, + id: id, + "data-test": "DesignSystem-Checkbox-InputBox" + })), /*#__PURE__*/React__namespace.createElement("span", { + className: CheckboxWrapper, + "data-test": "DesignSystem-Checkbox-Icon" + }, IconMapper && /*#__PURE__*/React__namespace.createElement(CheckboxIcon, { + name: IconMapper + }))), /*#__PURE__*/React__namespace.createElement("div", { + className: "Checkbox-labelWrapper" + }, label && label.trim() && /*#__PURE__*/React__namespace.createElement("label", { + htmlFor: id, + className: CheckboxLabelClass, + "data-test": "DesignSystem-Checkbox-Label" + }, /*#__PURE__*/React__namespace.createElement(Text, { + size: size === 'tiny' ? 'small' : 'regular', + appearance: disabled ? 'disabled' : 'default', + className: "ellipsis--noWrap mw-100", + ref: labelRef + }, label.trim())), helpText && /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-Checkbox-HelpText", + size: "small", + appearance: disabled ? 'disabled' : 'subtle' + }, helpText.trim())))); + }); + Checkbox.displayName = 'Checkbox'; - return ''; - }; - var translateToDate = function translateToDate(format, val, validators) { - if (validators === void 0) { - validators = []; - } + var Column = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a; - if (isValid(validators, val, format)) { - var separator = format.includes('/') ? '/' : '-'; - var year_2 = -1, - month_2 = -1, - date_2 = -1; - var v_1 = val.split(separator); - format.split(separator).forEach(function (f, i) { - switch (f) { - case 'mm': - month_2 = +v_1[i] - 1; - break; + var size = props.size, + sizeXS = props.sizeXS, + sizeS = props.sizeS, + sizeM = props.sizeM, + sizeL = props.sizeL, + sizeXL = props.sizeXL, + className = props.className, + children = props.children, + rest = __rest(props, ["size", "sizeXS", "sizeS", "sizeM", "sizeL", "sizeXL", "className", "children"]); - case 'yyyy': - year_2 = +v_1[i]; - break; + var classes = classNames__default["default"]((_a = {}, _a['Col'] = true, _a["Col--" + size] = size, _a["Col--xs-" + sizeXS] = sizeXS, _a["Col--s-" + sizeS] = sizeS, _a["Col--m-" + sizeM] = sizeM, _a["Col--l-" + sizeL] = sizeL, _a["Col--xl-" + sizeXL] = sizeXL, _a["" + className] = className, _a)); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + ref: ref, + "data-test": "DesignSystem-Column" + }, rest, { + className: classes + }), children); + }); + Column.displayName = 'Column'; - case 'dd': - date_2 = +v_1[i]; - break; - } + var Trigger$1 = function Trigger(props) { + var inputFormat = props.inputFormat, + inputOptions = props.inputOptions, + validators = props.validators, + state = props.state, + setState = props.setState; + var init = state.init, + date$1 = state.date, + error = state.error; + var _a = inputOptions.placeholderChar, + placeholderChar = _a === void 0 ? '_' : _a; + + var onPasteHandler = function onPasteHandler(_e, val) { + var onPaste = inputOptions.onPaste; + setState({ + open: true }); - var d = convertToDate({ - year: year_2, - month: month_2, - date: date_2 + + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); + setState({ + date: d + }); + } + + if (onPaste) onPaste(_e, val); + }; + + var onChangeHandler = function onChangeHandler(_e, val) { + var onChange = inputOptions.onChange; + setState({ + open: true }); - return d; - } else { - return undefined; - } - }; - var Calendar = function (_super) { - __extends(Calendar, _super); + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); + setState({ + date: d + }); + } - function Calendar(props) { - var _this = _super.call(this, props) || this; + if (onChange) onChange(_e); + }; - _this.updateState = function (year, month, date) { - _this.setState({ - year: year, - month: month, - date: date + var onBlurHandler = function onBlurHandler(_e, val) { + var onBlur = inputOptions.onBlur; + setState({ + init: true + }); + var hasNumber = /\d/; + + if (val && hasNumber.test(val) && val.includes(placeholderChar)) { + setState({ + error: true }); - }; + } else if (val && !hasNumber.test(val) || !val) { + setState({ + error: false + }); + } - _this.getDateValue = function (year, month, date) { - var d = new Date(year, month, date); - return d; - }; + if (onBlur) onBlur(_e, val || ''); + }; - _this.getNavDateInfo = function (index) { - var _a = _this.state, - yearBlockNav = _a.yearBlockNav, - yearNav = _a.yearNav, - monthNav = _a.monthNav; - var monthBlock = config.monthBlock; - var yearBlock = yearBlockNav; - var month = (monthNav + index) % monthBlock; - var year = yearNav + (index !== 0 && month < monthNav ? 1 : 0); - return { - yearBlock: yearBlock, - year: year, - month: month - }; - }; + var onClearHandler = function onClearHandler(e) { + var onClear = inputOptions.onClear; + setState({ + init: true, + date: undefined + }); + if (onClear) onClear(e); + }; - _this.getInRangeError = function () { - var _a = _this.props, - rangePicker = _a.rangePicker, - rangeLimit = _a.rangeLimit; - var _b = _this.state, - startDateState = _b.startDate, - endDateState = _b.endDate, - hoverDateState = _b.hoverDate; + var showError = inputOptions.error || inputOptions.required && error && init; + var errorMessage = inputOptions.caption === undefined ? 'Invalid value' : inputOptions.caption; - if (rangePicker && rangeLimit) { - var _c = getDateInfo(startDateState), - startYear = _c.year, - startMonth = _c.month, - startDate = _c.date; + var inputValidator = function inputValidator(val) { + return isValid(validators, val, inputFormat); + }; - var _d = getDateInfo(endDateState), - endYear = _d.year, - endMonth = _d.month, - endDate = _d.date; + var mask = date[inputFormat]; + return /*#__PURE__*/React__namespace.createElement(X, __assign({ + icon: "events", + placeholder: inputFormat + }, inputOptions, { + error: showError, + mask: mask, + value: date$1 ? translateToString(inputFormat, date$1) : init ? X.utils.getDefaultValue(mask, placeholderChar) : '', + onChange: onChangeHandler, + onPaste: onPasteHandler, + onBlur: onBlurHandler, + onClear: onClearHandler, + caption: showError ? errorMessage : '', + validators: [inputValidator], + clearOnEmptyBlur: true, + id: "parent-DatePicker" + })); + }; - var _e = getDateInfo(hoverDateState), - hoverYear = _e.year, - hoverMonth = _e.month, - hoverDate = _e.date; + var DatePicker = function (_super) { + __extends(DatePicker, _super); - var limitDate = void 0; + function DatePicker(props) { + var _this = _super.call(this, props) || this; - if (startDateState) { - limitDate = new Date(startDateState); - limitDate.setDate(startDate + rangeLimit); - return compareDate(limitDate, 'less', hoverYear, hoverMonth, hoverDate + 1) || compareDate(limitDate, 'less', endYear, endMonth, endDate + 1); - } + _this.getError = function (date) { + var _a = _this.props, + disabledBefore = _a.disabledBefore, + disabledAfter = _a.disabledAfter, + outputFormat = _a.outputFormat, + onError = _a.onError; + if (!date) return false; - if (endDateState) { - limitDate = new Date(endDateState); - limitDate.setDate(endDate - rangeLimit); - return compareDate(limitDate, 'more', hoverYear, hoverMonth, hoverDate - 1) || compareDate(limitDate, 'more', startYear, startMonth, startDate - 1); + var _b = getDateInfo(disabledBefore), + dbYear = _b.year, + dbMonth = _b.month, + dbDate = _b.date; + + var _c = getDateInfo(disabledAfter), + daYear = _c.year, + daMonth = _c.month, + daDate = _c.date; + + if (compareDate(date, 'less', dbYear, dbMonth, dbDate) || compareDate(date, 'more', daYear, daMonth, daDate)) { + if (onError) { + var dVal = translateToString(outputFormat, date); + onError(date, dVal); } + + return true; } return false; }; - _this.selectYear = function (year) { - return function () { - _this.updateState(year); + _this.onDateChangeHandler = function (d) { + _this.setState({ + init: true, + date: d + }); - _this.setState({ - view: 'month' - }); - }; + var closeOnSelect = _this.props.closeOnSelect; + if (closeOnSelect) _this.setState({ + open: false + }); }; - _this.selectMonth = function (month) { - return function () { - _this.updateState(_this.state.yearNav, month); + _this.onToggleHandler = function (o, type) { + var disabled = _this.props.inputOptions.disabled; + if (disabled) return; - _this.setState({ - view: 'date' - }); - }; - }; + switch (type) { + case 'outsideClick': + _this.setState({ + open: o + }); - _this.selectDate = function (index, date) { - var _a = _this.getNavDateInfo(index), - year = _a.year, - month = _a.month; + break; - _this.updateState(year, month, date); + case 'onClick': + _this.setState({ + open: true + }); - var d = _this.getDateValue(year, month, date); + break; + } + }; - _this.setState({ - currDate: d - }); + var inputFormat = props.inputFormat, + validators = props.validators; + var date = convertToDate(props.date, inputFormat, validators); + + var error = _this.getError(date); + + _this.state = { + date: date, + error: error, + init: false, + open: props.open || false }; + return _this; + } - _this.onNavIconClickHandler = function (type) { - return function () { - var _a = _this.state, - view = _a.view, - yearBlockNav = _a.yearBlockNav, - yearNav = _a.yearNav, - monthNav = _a.monthNav; - var yearBlockRange = config.yearBlockRange, - monthBlock = config.monthBlock; + DatePicker.prototype.componentDidUpdate = function (prevProps, prevState) { + if (prevProps.date !== this.props.date) { + var _a = this.props, + inputFormat = _a.inputFormat, + validators = _a.validators; + var d = convertToDate(this.props.date, inputFormat, validators); + this.setState({ + date: d + }); + } - switch (view) { - case 'year': - if (type === 'prev') _this.setState({ - yearBlockNav: yearBlockNav - yearBlockRange - }); - if (type === 'next') _this.setState({ - yearBlockNav: yearBlockNav + yearBlockRange - }); - break; + if (prevProps.open !== this.props.open) { + this.setState({ + open: this.props.open || false + }); + } - case 'month': - if (type === 'prev') _this.setState({ - yearNav: yearNav - 1 - }); - if (type === 'next') _this.setState({ - yearNav: yearNav + 1 - }); - break; + if (prevState.date !== this.state.date) { + var _b = this.props, + onDateChange = _b.onDateChange, + outputFormat = _b.outputFormat; + var date = this.state.date; + var newError = this.getError(date); + this.setState({ + error: newError + }); - case 'date': - if (type === 'prev') { - if (monthNav === 0) _this.setState({ - yearNav: yearNav - 1 - }); + if (onDateChange) { + if (!newError) { + var dVal = translateToString(outputFormat, date); + onDateChange(date, dVal); + } else { + onDateChange(undefined, ''); + } + } + } + }; - _this.setState({ - monthNav: (monthBlock + monthNav - 1) % monthBlock - }); - } + DatePicker.prototype.renderCalendar = function () { + var _this = this; - if (type === 'next') { - if (monthNav === monthBlock - 1) _this.setState({ - yearNav: yearNav + 1 - }); + var _a = this.props; + _a.date; + _a.open; + _a.position; + var inputFormat = _a.inputFormat; + _a.outputFormat; + _a.inputOptions; + var validators = _a.validators; + _a.withInput; + var disabledBefore = _a.disabledBefore, + disabledAfter = _a.disabledAfter; + _a.onDateChange; + _a.closeOnSelect; + var size = _a.size, + _b = _a.showTodayDate, + showTodayDate = _b === void 0 ? true : _b, + _c = _a.children, + children = _c === void 0 ? /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null) : _c, + view = _a.view, + rest = __rest(_a, ["date", "open", "position", "inputFormat", "outputFormat", "inputOptions", "validators", "withInput", "disabledBefore", "disabledAfter", "onDateChange", "closeOnSelect", "size", "showTodayDate", "children", "view"]); - _this.setState({ - monthNav: (monthNav + 1) % monthBlock - }); - } + var date = this.state.date; + var months = config.months; + var todayDate = new Date(Date.now()); + var todayMonthAndDate = months[todayDate.getMonth()] + " " + todayDate.getDate(); + var currDate = convertToDate(date, inputFormat, validators); + var dateDisabledBefore = convertToDate(disabledBefore, inputFormat, validators); + var dateDisabledAfter = convertToDate(disabledAfter, inputFormat, validators); + + var isTodayDisabled = function isTodayDisabled() { + var isTodayDateDisabled = true; + + if (currDate && dateDisabledBefore && dateDisabledAfter) { + isTodayDateDisabled = currDate > dateDisabledBefore && currDate < dateDisabledAfter; + } else if (currDate && dateDisabledBefore) { + isTodayDateDisabled = currDate > dateDisabledBefore; + } else if (currDate && dateDisabledAfter) { + isTodayDateDisabled = currDate < dateDisabledAfter; + } - break; - } - }; + return !isTodayDateDisabled; }; - _this.renderJumpButton = function (type) { - var _a; + var todayChipClass = classNames__default["default"]({ + 'd-flex justify-content-center': true, + 'pb-5': size === 'small', + 'pb-6': size === 'large', + 'pt-3': size === 'large' && view === 'year' + }); + return /*#__PURE__*/React__namespace.createElement("div", null, /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex" + }, children, /*#__PURE__*/React__namespace.createElement(Calendar, __assign({}, rest, { + size: size, + date: currDate, + view: view, + disabledBefore: dateDisabledBefore, + disabledAfter: dateDisabledAfter, + onDateChange: this.onDateChangeHandler + }))), showTodayDate && /*#__PURE__*/React__namespace.createElement("div", { + className: todayChipClass, + "data-test": "DesignSystem-Select--TodaysDate-wrapper" + }, /*#__PURE__*/React__namespace.createElement(Chip, { + label: "Today, " + todayMonthAndDate, + name: "chip", + type: "action", + disabled: isTodayDisabled(), + onClick: function onClick() { + return _this.onDateChangeHandler(new Date()); + } + }))); + }; - var _b = _this.props, - disabledBefore = _b.disabledBefore, - disabledAfter = _b.disabledAfter; - var _c = _this.state, - view = _c.view, - yearBlockNav = _c.yearBlockNav, - yearNav = _c.yearNav, - monthNav = _c.monthNav; - var disabled = false; + DatePicker.prototype.render = function () { + var _a = this.props, + position = _a.position, + withInput = _a.withInput, + inputFormat = _a.inputFormat, + inputOptions = _a.inputOptions, + validators = _a.validators, + popoverOptions = _a.popoverOptions; + var open = this.state.open; - switch (view) { - case 'year': - if (type === 'prev') { - disabled = compareYearBlock(disabledBefore, 'more', yearBlockNav) || compareYearBlock(disabledBefore, 'equal', yearBlockNav); - } + if (withInput) { + return /*#__PURE__*/React__namespace.createElement(Popover, __assign({ + trigger: /*#__PURE__*/React__namespace.createElement(Trigger$1, { + inputFormat: inputFormat, + inputOptions: inputOptions, + validators: validators, + state: this.state, + setState: this.setState.bind(this) + }) + }, popoverOptions, { + triggerClass: "w-100", + position: position, + appendToBody: true, + open: open, + onToggle: this.onToggleHandler + }), this.renderCalendar()); + } - if (type === 'next') { - disabled = compareYearBlock(disabledAfter, 'less', yearBlockNav) || compareYearBlock(disabledAfter, 'equal', yearBlockNav); - } + return this.renderCalendar(); + }; - break; + DatePicker.defaultProps = __assign(__assign({}, Calendar.defaultProps), { + position: 'bottom-start', + inputFormat: 'mm/dd/yyyy', + outputFormat: 'mm/dd/yyyy', + validators: [date$1], + inputOptions: {}, + closeOnSelect: true + }); + return DatePicker; + }(React__namespace.Component); - case 'month': - if (type === 'prev') { - disabled = compareDate(disabledBefore, 'more', yearNav - 1); - } + var parseDate = function parseDate(date_time) { + var d = new Date(); + d.setHours(date_time.substring(0, 2)); + d.setMinutes(date_time.substring(3, 5)); + return d; + }; - if (type === 'next') { - disabled = compareDate(disabledAfter, 'less', yearNav + 1); - } + var isFormat12Hour = function isFormat12Hour(format) { + return format === '12-Hour'; + }; - break; + var isTimeIn12HourFormat = function isTimeIn12HourFormat(time) { + return _isTimeInAM(time) || _isTimeInPM(time); + }; - case 'date': - if (type === 'prev') { - disabled = compareDate(disabledBefore, 'more', yearNav, monthNav - 1); - } + var _isTimeInAM = function _isTimeInAM(time) { + return time.includes('a') || time.includes('A'); + }; + var _isTimeInPM = function _isTimeInPM(time) { + return time.includes('p') || time.includes('P'); + }; + var convert12To24HourFormat$1 = function convert12To24HourFormat(timeStr) { + var _a = timeStr.split(' '), + time = _a[0], + modifier = _a[1]; - if (type === 'next') { - disabled = compareDate(disabledAfter, 'less', yearNav, monthNav + 1); - } + var timeArr = time.split(':'); + var hours = timeArr[0]; + var minutes = timeArr[1]; - break; - } + if (hours === '12' && _isTimeInAM(modifier)) { + hours = '00'; + } - var headerIconClass = classNames__default['default']((_a = { - 'Calendar-headerIcon': true - }, _a["Calendar-headerIcon--" + type] = type, _a)); - return /*#__PURE__*/React__namespace.createElement(Button, { - type: "button", - className: headerIconClass, - appearance: "transparent", - icon: "arrow_" + (type === 'next' ? 'forward' : 'back'), - disabled: disabled, - onClick: _this.onNavIconClickHandler(type) - }); - }; + if (_isTimeInPM(modifier) && hours !== '12') { + hours = (parseInt(hours, 10) + 12).toString(); + } - _this.onNavHeadingClickHandler = function (currView) { - return function () { - var monthsInView = _this.props.monthsInView; - var jumpView = _this.props.jumpView; + return hours + ":" + minutes; + }; + var convertToTwoDigit = function convertToTwoDigit(val) { + return ('0' + val).slice(-2); + }; + var convert24To12HourFormat = function convert24To12HourFormat(timeStr) { + var timeArr = timeStr.split(':'); + var hours = parseInt(timeArr[0], 10); + var modifier = hours >= 12 ? 'PM' : 'AM'; + var convertedHours = hours % 12 || 12; + var hoursInString = convertedHours.toString(); + hoursInString = convertToTwoDigit(hoursInString); + var minutes = timeArr[1]; + var result = hoursInString.toString() + ":" + minutes + " " + modifier; + return result; + }; - if (jumpView) { - if (monthsInView > 1) jumpView = false; - } + var getTimeIn24HrFormat = function getTimeIn24HrFormat(timeStr) { + if (isTimeIn12HourFormat(timeStr)) { + return convert12To24HourFormat$1(timeStr); + } - if (jumpView) { - if (currView === 'year') _this.setState({ - view: 'date' - }); - if (currView === 'month') _this.setState({ - view: 'year' - }); - if (currView === 'date') _this.setState({ - view: 'month' - }); - } - }; - }; + return timeStr; + }; - _this.renderHeaderContent = function (index) { - var _a = _this.props, - size = _a.size, - monthsInView = _a.monthsInView; - var _b = _this.state, - view = _b.view, - yearBlockNav = _b.yearBlockNav; - var yearBlockRange = config.yearBlockRange, - months = config.months; + var checkTimeDifference = function checkTimeDifference(startTime, endTime) { + var parseStartTime = parseDate(startTime); + var parseEndTime = parseDate(endTime); + return parseStartTime > parseEndTime; + }; - var _c = _this.getNavDateInfo(index), - yearNavVal = _c.year, - monthNavVal = _c.month; + var get24HourTimeList = function get24HourTimeList(startTime, endTime, interval) { + var timeList = []; + var parseStartTime = parseDate(startTime); + var parseEndTime = parseDate(endTime); - var headerContentClass = classNames__default['default']({ - 'Calendar-headerContent': true, - 'Calendar-headerContent--noIcon-left': index === monthsInView - 1, - 'Calendar-headerContent--noIcon-right': index === 0 - }); - var headerContent = ''; - if (view === 'year') headerContent = yearBlockNav + " - " + (yearBlockNav + (yearBlockRange - 1)); - if (view === 'month') headerContent = "" + yearNavVal; + while (parseStartTime <= parseEndTime) { + timeList.push(parseStartTime.toTimeString().substring(0, 5)); + parseStartTime.setMinutes(parseStartTime.getMinutes() + interval); + } - var renderHeading = function renderHeading(content) { - if (size === 'small') { - return /*#__PURE__*/React__namespace.createElement(Text, { - weight: "strong" - }, content); - } + return timeList; + }; - return /*#__PURE__*/React__namespace.createElement(Heading, { - size: "s" - }, content); - }; + var getReverseTimeList = function getReverseTimeList(startTime, endTime, interval) { + var timeList = get24HourTimeList('00:00', '23:59', interval); + var startTimeIndex = timeList.indexOf(startTime); + var endTimeIndex = timeList.indexOf(endTime); + var nextDayTimeIndex = endTime === '' ? startTimeIndex : endTimeIndex + 1; + var presentDayList = timeList.slice(startTimeIndex); + var nextDayList = timeList.slice(0, nextDayTimeIndex); + var result = presentDayList.concat(nextDayList); + return result; + }; - return /*#__PURE__*/React__namespace.createElement("div", { - className: headerContentClass - }, view !== 'date' && /*#__PURE__*/React__namespace.createElement("span", { - onClick: _this.onNavHeadingClickHandler(view) - }, renderHeading(headerContent)), view === 'date' && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("span", { - onClick: _this.onNavHeadingClickHandler(view) - }, renderHeading(months[monthNavVal])), /*#__PURE__*/React__namespace.createElement("span", { - className: "ml-4", - onClick: _this.onNavHeadingClickHandler('month') - }, renderHeading(yearNavVal)))); - }; + var getTimeListIn24HourFormat = function getTimeListIn24HourFormat(startTime, endTime, interval) { + if (endTime === '' || checkTimeDifference(startTime, endTime)) { + return getReverseTimeList(startTime, endTime, interval); + } - _this.renderBodyYear = function () { - var yearBlockRange = config.yearBlockRange, - yearsInRow = config.yearsInRow; - var _a = _this.props, - size = _a.size, - rangePicker = _a.rangePicker, - disabledBefore = _a.disabledBefore, - disabledAfter = _a.disabledAfter; - var yearBlockNav = _this.state.yearBlockNav; - var noOfRows = Math.ceil(yearBlockRange / yearsInRow); - return Array.from({ - length: noOfRows - }, function (_y, row) { - return /*#__PURE__*/React__namespace.createElement("div", { - key: row, - className: "Calendar-valueRow" - }, Array.from({ - length: yearsInRow - }, function (_x, col) { - var _a; + return get24HourTimeList(startTime, endTime, interval); + }; - var offset = yearsInRow * row + col; - if (offset === yearBlockNav) return undefined; - var year = yearBlockNav + offset; - var disabled = compareDate(disabledBefore, 'more', year) || compareDate(disabledAfter, 'less', year); - var active = !disabled && !rangePicker && year === _this.state.year; - var valueClass = classNames__default['default']((_a = { - 'Calendar-value': true, - 'Calendar-value--active': active, - 'Calendar-value--disabled': disabled, - 'Calendar-yearValue': true - }, _a["Calendar-yearValue--" + size] = size, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - key: row + "-" + col, - "data-test": "DesignSystem-Calendar--yearValue", - className: valueClass, - onClick: _this.selectYear(year) - }, /*#__PURE__*/React__namespace.createElement(Text, { - size: size === 'small' ? 'small' : 'regular', - appearance: active ? 'white' : disabled ? 'disabled' : 'default' - }, year)); - })); - }); - }; + var getTimeDifference = function getTimeDifference(startTime, endTime) { + var timeStart = new Date('07/07/2022 ' + startTime); + var timeEnd = new Date('07/07/2022 ' + endTime); + var diff = timeEnd.getTime() - timeStart.getTime(); + var diff_as_date = new Date(diff); + var hour = diff_as_date.getUTCHours(); + var minute = diff_as_date.getUTCMinutes(); + return { + hour: hour, + minute: minute + }; + }; - _this.renderBodyMonth = function () { - var monthBlock = config.monthBlock, - monthsInRow = config.monthsInRow, - months = config.months; - var _a = _this.props, - size = _a.size, - disabledBefore = _a.disabledBefore, - disabledAfter = _a.disabledAfter; - var _b = _this.state, - yearNav = _b.yearNav, - year = _b.year; - var noOfRows = Math.ceil(monthBlock / monthsInRow); - return Array.from({ - length: noOfRows - }, function (_y, row) { - return /*#__PURE__*/React__namespace.createElement("div", { - key: row, - className: "Calendar-valueRow" - }, Array.from({ - length: monthsInRow - }, function (_x, col) { - var _a; + var getCustomLabel = function getCustomLabel(time, timeFormat, showDuration, referenceTime) { + var label = time; - var month = monthsInRow * row + col; - var disabled = compareDate(disabledBefore, 'more', yearNav, month) || compareDate(disabledAfter, 'less', yearNav, month); - var active = !disabled && year === yearNav && month === _this.state.month; - var valueClass = classNames__default['default']((_a = { - 'Calendar-value': true, - 'Calendar-value--active': active, - 'Calendar-value--dummy': disabled, - 'Calendar-monthValue': true - }, _a["Calendar-monthValue--" + size] = size, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - key: row + "-" + col, - "data-test": "DesignSystem-Calendar--monthValue", - className: valueClass, - onClick: _this.selectMonth(month) - }, /*#__PURE__*/React__namespace.createElement(Text, { - size: size === 'small' ? 'small' : 'regular', - appearance: active ? 'white' : disabled ? 'disabled' : 'default' - }, months[month])); - })); - }); - }; + if (isFormat12Hour(timeFormat)) { + label = convert24To12HourFormat(time); + } - _this.onDateRowMouseLeaveHandler = function () { - var rangePicker = _this.props.rangePicker; + if (showDuration && referenceTime) { + var _a = getTimeDifference(referenceTime, time), + hour = _a.hour, + minute = _a.minute; - if (rangePicker) { - _this.setState({ - hoverDate: undefined - }); - } - }; + var timeDiffLabel = " (" + hour + " hr " + minute + " min)"; + label += timeDiffLabel; + } - _this.renderBodyDate = function (index) { - var daysInRow = config.daysInRow, - days = config.days; - var _a = _this.props, - size = _a.size, - firstDayOfWeek = _a.firstDayOfWeek; - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", { - className: "Calendar-dayValues" - }, Array.from({ - length: 7 - }, function (_x, day) { - var valueClass = classNames__default['default']({ - 'Calendar-valueWrapper': true - }); - var dayValue = (day + daysInRow + getIndexOfDay(firstDayOfWeek)) % daysInRow; - return /*#__PURE__*/React__namespace.createElement(Subheading, { - key: day, - className: valueClass, - appearance: "disabled" - }, days[size][dayValue]); - })), /*#__PURE__*/React__namespace.createElement("div", { - className: "Calendar-dateValues", - onMouseLeave: _this.onDateRowMouseLeaveHandler - }, _this.renderDateValues(index))); + return label; + }; + + var isOptionDisabled = function isOptionDisabled(time, timeFormat, disabledSlotList) { + var timeValue = time; + + if (isFormat12Hour(timeFormat)) { + timeValue = convert24To12HourFormat(time); + } + + if (disabledSlotList.includes(timeValue)) { + return true; + } + + return false; + }; + + var convertTimeToOptionList = function convertTimeToOptionList(timeList, timeFormat, id, showDuration, referenceTime, disabledSlotList) { + if (id === void 0) { + id = 'TimePicker-Option-key'; + } + + var optionList = timeList.map(function (time, index) { + return { + label: getCustomLabel(time, timeFormat, showDuration, referenceTime), + value: time, + disabled: disabledSlotList && isOptionDisabled(time, timeFormat, disabledSlotList), + selected: false, + optionID: id + index }; + }); + return optionList; + }; - _this.renderDateValues = function (index) { - var daysInRow = config.daysInRow; - var _a = _this.props, - size = _a.size, - rangePicker = _a.rangePicker, - firstDayOfWeek = _a.firstDayOfWeek, - disabledBefore = _a.disabledBefore, - disabledAfter = _a.disabledAfter; - var _b = _this.state, - startDate = _b.startDate, - endDate = _b.endDate, - hoverDate = _b.hoverDate, - yearState = _b.year, - monthState = _b.month, - dateState = _b.date; + var computeEndTime = function computeEndTime(startTime) { + return startTime ? '' : '23:59'; + }; - var _c = _this.getNavDateInfo(index), - yearNavVal = _c.year, - monthNavVal = _c.month; + var getDropdownOptionList = function getDropdownOptionList(props) { + var startTime = props.startTime, + endTime = props.endTime, + interval = props.interval, + timeFormat = props.timeFormat, + showDuration = props.showDuration, + disabledSlotList = props.disabledSlotList, + id = props.id; + var startTimeIn24Hr = startTime ? getTimeIn24HrFormat(startTime) : '00:00'; + var endTimeIn24Hr = endTime ? getTimeIn24HrFormat(endTime) : computeEndTime(startTime); + var timeList = getTimeListIn24HourFormat(startTimeIn24Hr, endTimeIn24Hr, interval); + var dropdownOptionList = convertTimeToOptionList(timeList, timeFormat, id, showDuration, startTime, disabledSlotList); + return dropdownOptionList; + }; - var dayRange = getDaysInMonth(yearNavVal, monthNavVal); - var dayDiff = getFirstDayOfMonth(yearNavVal, monthNavVal) - getIndexOfDay(firstDayOfWeek); - var dummyDays = Math.abs(dayDiff); - var noOfRows = Math.ceil((dayRange + dummyDays) / daysInRow); + var convertMinTo60 = function convertMinTo60(time) { + var parseNum = parseInt(time, 10); + if (parseNum < 10) return time; + var timeInNum = parseNum > 60 ? parseNum % 60 : parseNum; + var min = (timeInNum.toString() + '0').slice(0, 2); + return min; + }; - var inRangeError = _this.getInRangeError(); + var get24HourCurrentTime = function get24HourCurrentTime() { + var today = new Date(); + return convertToTwoDigit(today.getHours()) + ':' + convertToTwoDigit(today.getMinutes()); + }; - var onClickHandler = function onClickHandler(date) { - return function () { - if (rangePicker) { - if (startDate && endDate) { - _this.selectDate(index, date); - } else { - if (!inRangeError) _this.selectDate(index, date); - } - } else { - _this.selectDate(index, date); - } - }; - }; + var convertHourTo24 = function convertHourTo24(time) { + var timeInNum = parseInt(time, 10) % 24; + return timeInNum.toString(); + }; - var onMouseOverHandler = function onMouseOverHandler(date) { - return function () { - if (rangePicker) { - var d = _this.getDateValue(yearNavVal, monthNavVal, date); + var convertHourTo12 = function convertHourTo12(time) { + var timeInNum = parseInt(time, 10) % 12; + return timeInNum.toString(); + }; - if (!startDate || !endDate) { - _this.setState({ - hoverDate: d - }); - } - } - }; - }; + var _checkNumber = function _checkNumber(str) { + var numberRegex = /^[0-9]+$/; + return numberRegex.test(str); + }; - return Array.from({ - length: noOfRows - }, function (_y, row) { - return /*#__PURE__*/React__namespace.createElement("div", { - key: row, - className: "Calendar-valueRow" - }, Array.from({ - length: daysInRow - }, function (_x, col) { - var _a; + var _checkNumberWithAMPM = function _checkNumberWithAMPM(str) { + var numberWithAMPMRegex = /^[0-9]+[ AaMmPp]+$/; + return numberWithAMPMRegex.test(str); + }; - var date = daysInRow * row + col - dummyDays + 1; - var dummy = date <= 0 || date > dayRange; - var disabled = !dummy && (compareDate(disabledBefore, 'more', yearNavVal, monthNavVal, date) || compareDate(disabledAfter, 'less', yearNavVal, monthNavVal, date)); - var active = !disabled && yearState === yearNavVal && monthState === monthNavVal && dateState === date; - var startActive = false; - var endActive = false; - var inRange = false; - var inRangeLast = false; + var _checkNumberWithSpecialChar = function _checkNumberWithSpecialChar(str) { + var numberWithSpecialCharRegex = /^[0-9]+[`\s!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?~][0-9]*$/; + return numberWithSpecialCharRegex.test(str); + }; - if (rangePicker) { - startActive = compareDate(startDate, 'equal', yearNavVal, monthNavVal, date); - endActive = compareDate(endDate, 'equal', yearNavVal, monthNavVal, date); - inRangeLast = compareDate(hoverDate, 'equal', yearNavVal, monthNavVal, date); - active = !disabled && (startActive || endActive); + var _checkNumberWithSpecialCharAMPM = function _checkNumberWithSpecialCharAMPM(str) { + var numberWithSpecialCharAMPM = /^[0-9]+[`\s!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?~][0-9]+[ AaMmPp]+$/; + return numberWithSpecialCharAMPM.test(str); + }; - if (startDate && endDate) { - inRange = !disabled && (compareDate(startDate, 'less', yearNavVal, monthNavVal, date) || startActive) && (compareDate(endDate, 'more', yearNavVal, monthNavVal, date) || endActive); - } else if (startDate) { - inRange = !disabled && (compareDate(hoverDate, 'more', yearNavVal, monthNavVal, date) || inRangeLast) && compareDate(startDate, 'less', yearNavVal, monthNavVal, date); - } else if (endDate) { - inRange = !disabled && (compareDate(hoverDate, 'less', yearNavVal, monthNavVal, date) || inRangeLast) && compareDate(endDate, 'more', yearNavVal, monthNavVal, date); - } - } + var specialCharRegex = /[`\s!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?~]/; - var _b = getDateInfo(startDate), - sYear = _b.year, - sMonth = _b.month, - sDate = _b.date; + var getTimeFromNumberWithSpecialChar = function getTimeFromNumberWithSpecialChar(searchTime) { + var time = searchTime.split(specialCharRegex); + var hour = convertHourTo24(time[0]); + var hh = convertToTwoDigit(hour); + var min = time[1] !== '' ? convertMinTo60(time[1]) : '00'; + var mm = (min + '0').slice(0, 2); + return { + hour: hh, + min: mm + }; + }; - var _c = getDateInfo(endDate), - eYear = _c.year, - eMonth = _c.month, - eDate = _c.date; + var getSearchTimeFromNumber = function getSearchTimeFromNumber(searchTerm, show12HourFormat) { + var searchLen = searchTerm.length; + var searchTimeInNum = parseInt(searchTerm, 10); + var firstTwoTerm = searchTerm.slice(0, 2); + var hh = '00'; + var mm = '00'; - var isStart = startActive || endDate && inRangeLast && compareDate(hoverDate, 'less', eYear, eMonth, eDate); - var isEnd = endActive || startDate && inRangeLast && compareDate(hoverDate, 'more', sYear, sMonth, sDate); - var isRangeError = inRange && inRangeError; - var wrapperClass = classNames__default['default']({ - 'Calendar-valueWrapper': true, - 'Calendar-valueWrapper--inRange': inRange || rangePicker && active, - 'Calendar-valueWrapper--inRangeError': isRangeError, - 'Calendar-valueWrapper--start': isStart && !isEnd, - 'Calendar-valueWrapper--end': isEnd && !isStart, - 'Calendar-valueWrapper--startEnd': isStart && isEnd, - 'Calendar-valueWrapper--startError': isStart && isRangeError, - 'Calendar-valueWrapper--endError': isEnd && isRangeError - }); - var valueClass = classNames__default['default']((_a = { - 'Calendar-value': true, - 'Calendar-value--start': isStart && !isEnd, - 'Calendar-value--end': isEnd && !isStart, - 'Calendar-value--startError': isStart && isRangeError, - 'Calendar-value--endError': isEnd && isRangeError, - 'Calendar-value--active': active, - 'Calendar-value--dummy': dummy || disabled, - 'Calendar-value--disabled': disabled, - 'Calendar-dateValue': true - }, _a["Calendar-dateValue--" + size] = size, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - key: row + "-" + col, - className: wrapperClass - }, !dummy && /*#__PURE__*/React__namespace.createElement(Text, { - appearance: active ? 'white' : disabled ? 'disabled' : 'default', - size: size === 'small' ? 'small' : 'regular', - "data-test": "DesignSystem-Calendar--dateValue", - className: valueClass, - onClick: onClickHandler(date), - onMouseOver: onMouseOverHandler(date) - }, date)); - })); - }); - }; + switch (searchLen) { + case 1: + hh = '0' + searchTerm; + break; - _this.renderCalendar = function (index) { - var _a; + case 2: + if (searchTimeInNum <= 24 || show12HourFormat && searchTimeInNum <= 12) { + hh = convertToTwoDigit(searchTerm); + } else { + hh = '0' + searchTerm[0]; + mm = convertMinTo60(searchTerm[1] + '0'); + } - var _b = _this.props, - size = _b.size, - monthsInView = _b.monthsInView; - var view = _this.state.view; - var containerClass = classNames__default['default']((_a = {}, _a['Calendar'] = true, _a["Calendar--" + view] = view, _a["Calendar--" + size] = size, _a)); - var headerClass = classNames__default['default']({ - 'Calendar-header': true - }); - var bodyClass = classNames__default['default']({ - 'Calendar-body': true - }); - return /*#__PURE__*/React__namespace.createElement("div", { - key: index, - "data-test": "DesignSystem-Calendar", - className: containerClass - }, /*#__PURE__*/React__namespace.createElement("div", { - className: headerClass - }, index === 0 && _this.renderJumpButton('prev'), _this.renderHeaderContent(index), index === monthsInView - 1 && _this.renderJumpButton('next')), /*#__PURE__*/React__namespace.createElement("div", { - className: bodyClass - }, view === 'year' && _this.renderBodyYear(), view === 'month' && _this.renderBodyMonth(), view === 'date' && _this.renderBodyDate(index))); - }; + break; - var _a = _this.props, - rangePicker = _a.rangePicker, - startDate = _a.startDate, - endDate = _a.endDate, - monthsInView = _a.monthsInView, - view = _a.view; - var currDate = rangePicker ? endDate || startDate : props.date; - var yearNav = props.yearNav !== undefined ? props.yearNav : getDateInfo(currDate || Date.now()).year; - var monthNav = props.monthNav !== undefined ? props.monthNav : getDateInfo(currDate || Date.now()).month; + case 3: + hh = '0' + searchTerm[0]; + mm = convertMinTo60(searchTerm.slice(1)); + break; - var _b = getDateInfo(currDate), - year = _b.year, - month = _b.month, - date = _b.date; + case 4: + hh = show12HourFormat ? convertHourTo12(firstTwoTerm) : convertHourTo24(firstTwoTerm); + mm = convertMinTo60(searchTerm.slice(2)); + break; - _this.state = { - currDate: currDate, - startDate: startDate, - endDate: endDate, - yearNav: yearNav, - monthNav: monthNav, - year: year, - month: month, - date: date, - view: monthsInView > 1 ? 'date' : view, - yearBlockNav: getYearBlock(yearNav) - }; - return _this; + default: + hh = '-1'; + mm = '-1'; } - Calendar.prototype.componentDidUpdate = function (prevProps, prevState) { - var monthsInView = this.props.monthsInView; - - if (prevProps.date !== this.props.date) { - var _a = getDateInfo(this.props.date), - year = _a.year, - month = _a.month, - date = _a.date; + return { + hour: hh, + min: mm + }; + }; - this.updateState(year, month, date); - var d = convertToDate(this.props.date); - this.setState({ - currDate: d - }); - } + var getTimeFromNumberWithAMPM = function getTimeFromNumberWithAMPM(searchTime) { + var timeArr = searchTime.split(/[\saAmMpP]/); - if (prevProps.startDate !== this.props.startDate) { - var d = convertToDate(this.props.startDate); - this.setState({ - startDate: d - }); - } + var _a = getSearchTimeFromNumber(timeArr[0], true), + hour = _a.hour, + min = _a.min; - if (prevProps.endDate !== this.props.endDate) { - var d = convertToDate(this.props.endDate); - this.setState({ - endDate: d - }); - } + return { + hour: hour, + min: min + }; + }; - if (prevProps.view !== this.props.view) { - if (this.props.monthsInView === 1) { - this.setState({ - view: this.props.view - }); - } - } + var formatSearchTerm = function formatSearchTerm(optionList, searchTerm) { + var searchTime = { + hour: '00', + min: '00' + }; - if (prevProps.yearNav !== this.props.yearNav) { - var yearNav = this.props.yearNav; + if (_checkNumber(searchTerm)) { + var searchTimeInHHMM = getSearchTimeFromNumber(searchTerm); - if (yearNav) { - this.setState({ - yearNav: yearNav, - yearBlockNav: getYearBlock(yearNav) - }); - } + if (parseInt(searchTimeInHHMM.hour) <= 12 && parseInt(searchTimeInHHMM.hour) > 0) { + searchTime = getCurrentRelativeTime(optionList, searchTimeInHHMM); + } else { + searchTime = searchTimeInHHMM; } + } else if (_checkNumberWithAMPM(searchTerm)) { + searchTime = getTimeFromNumberWithAMPM(searchTerm); + searchTime.hour = convert12To24HourFormat(searchTime.hour, searchTerm); + } else if (_checkNumberWithSpecialChar(searchTerm)) { + var searchTimeInHHMM = getTimeFromNumberWithSpecialChar(searchTerm); + + if (parseInt(searchTimeInHHMM.hour) <= 12) { + searchTime = getCurrentRelativeTime(optionList, searchTimeInHHMM); + } else { + searchTime = searchTimeInHHMM; + } + } else if (_checkNumberWithSpecialCharAMPM(searchTerm)) { + var timeWithoutAMPM = searchTerm.replace(/[\saApPmM]/g, ''); - if (prevProps.monthNav !== this.props.monthNav) { - var monthNav = this.props.monthNav; - - if (monthNav) { - this.setState({ - monthNav: monthNav - }); - } + if (_checkNumber(timeWithoutAMPM)) { + searchTime = getSearchTimeFromNumber(timeWithoutAMPM, true); + } else if (_checkNumberWithSpecialChar(timeWithoutAMPM)) { + searchTime = getTimeFromNumberWithSpecialChar(timeWithoutAMPM); } - if (prevState.currDate !== this.state.currDate) { - var _b = this.props, - rangePicker = _b.rangePicker, - onDateChange = _b.onDateChange; - var _c = this.state, - currDate = _c.currDate, - startDate = _c.startDate, - endDate = _c.endDate; + searchTime.hour = convert12To24HourFormat(searchTime.hour, searchTerm); + } - if (currDate) { - if (onDateChange) onDateChange(currDate); + return searchTime; + }; - if (rangePicker) { - this.setState({ - hoverDate: undefined - }); + var convert12To24HourFormat = function convert12To24HourFormat(hours, searchTerm) { + if (hours === '12' && _isTimeInAM(searchTerm)) { + hours = '00'; + } else if (_isTimeInPM(searchTerm) && hours !== '12') { + hours = (parseInt(hours, 10) + 12).toString(); + } - if (startDate && endDate) { - this.setState({ - startDate: currDate, - endDate: undefined - }); - } else { - var _d = getDateInfo(currDate), - year = _d.year, - month = _d.month, - date = _d.date; + return hours; + }; - if (startDate) { - if (compareDate(startDate, 'more', year, month, date)) { - this.setState({ - startDate: currDate - }); - } else { - this.setState({ - endDate: currDate - }); - } - } else if (endDate) { - if (compareDate(endDate, 'less', year, month, date)) { - this.setState({ - endDate: currDate - }); - } else { - this.setState({ - startDate: currDate - }); - } - } else { - this.setState({ - startDate: currDate - }); - } - } - } else { - this.setState({ - startDate: currDate - }); - } - } - } + var getCurrentRelativeTime = function getCurrentRelativeTime(optionList, searchTime) { + var searchTimeStr = searchTime.hour + ":" + searchTime.min; + var currentTime = get24HourCurrentTime(); + var greaterTime = checkTimeDifference(currentTime, searchTimeStr); + var currentTimeIndex = findClosestTimeIndex(optionList, currentTime); + var searchTimeIndex = findClosestTimeIndex(optionList, searchTimeStr); - if (prevState.startDate !== this.state.startDate || prevState.endDate !== this.state.endDate) { - var onRangeChange = this.props.onRangeChange; - var _e = this.state, - startDate = _e.startDate, - endDate = _e.endDate; - if (onRangeChange) onRangeChange(startDate, endDate); - } + if (greaterTime && currentTimeIndex > searchTimeIndex) { + var hourIn24Format = parseInt(searchTime.hour, 10) + 12; + searchTime.hour = hourIn24Format.toString(); + } - if (prevState.year !== this.state.year) { - var year = this.state.year; + return searchTime; + }; - if (year !== undefined && monthsInView === 1) { - this.setState({ - year: year, - yearBlockNav: getYearBlock(year), - yearNav: year - }); - } - } + var findClosestTimeIndex = function findClosestTimeIndex(optionList, searchItem) { + var closestItemIndex = 0; + var minTime = { + hour: 100, + mins: 100 + }; - if (prevState.month !== this.state.month) { - var month = this.state.month; + for (var index = 0; index < optionList.length; index++) { + var _a = getTimeDifference(searchItem, optionList[index]), + hour = _a.hour, + minute = _a.minute; - if (month !== undefined && monthsInView === 1) { - this.setState({ - monthNav: month - }); - } + if (hour < minTime.hour || hour === minTime.hour && minute < minTime.mins) { + minTime.hour = hour; + minTime.mins = minute; + closestItemIndex = index; } - }; + } - Calendar.prototype.render = function () { - var _this = this; + return closestItemIndex; + }; - var _a = this.props, - monthsInView = _a.monthsInView, - className = _a.className; - var baseProps = extractBaseProps(this.props); - var classes = classNames__default['default']({ - 'Calendar-wrapper': true - }, className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: classes - }), Array.from({ - length: monthsInView - }, function (_x, index) { - return _this.renderCalendar(index); - })); - }; + var getSearchIndex = function getSearchIndex(optionList, searchTerm) { + var _a = formatSearchTerm(optionList, searchTerm), + hour = _a.hour, + min = _a.min; - Calendar.defaultProps = { - size: 'large', - monthsInView: 1, - view: 'date', - firstDayOfWeek: 'sunday', - jumpView: true - }; - return Calendar; - }(React__namespace.Component); + if (min === '60') { + min = '00'; + hour = (parseInt(hour, 10) + 1).toString(); + } - var Card = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var searchItem = hour + ":" + min; + var searchIndex = findClosestTimeIndex(optionList, searchItem); + return searchIndex; + }; + + var countNumberInStr = function countNumberInStr(searchTerm) { var _a; - var _b = props.shadow, - shadow = _b === void 0 ? 'default' : _b, - children = props.children, - className = props.className, - rest = __rest(props, ["shadow", "children", "className"]); + return ((_a = searchTerm.match(/\d/g)) === null || _a === void 0 ? void 0 : _a.length) || 0; + }; - var classes = classNames__default['default']((_a = { - Card: true - }, _a["Card--shadow-" + shadow] = shadow, _a["" + className] = className, _a)); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - ref: ref - }, rest, { - className: classes - }), children); - }); - Card.displayName = 'Card'; + var isValidSearchTerm = function isValidSearchTerm(searchTerm) { + var totalDigit = countNumberInStr(searchTerm); + return totalDigit > 0 && totalDigit < 5; + }; - var CardSubdued = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { - var _a; + var getValueFromOptionList = function getValueFromOptionList(optionList) { + var list = optionList.map(function (option) { + return option.value; + }); + return list; + }; - var border = props.border, - children = props.children, - className = props.className, - rest = __rest(props, ["border", "children", "className"]); + var getSearchValueIndex = function getSearchValueIndex(options, searchTerm) { + if (!isValidSearchTerm(searchTerm)) { + return -1; + } - var classes = classNames__default['default']((_a = { - CardSubdued: true - }, _a["CardSubdued--" + border] = border, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-CardSubdued", - ref: ref - }, rest, { - className: classes - }), children); - }); - CardSubdued.displayName = 'CardSubdued'; + var searchIndex = getSearchIndex(options, searchTerm); + return searchIndex; + }; - var CardHeader = function CardHeader(props) { - var className = props.className, - children = props.children; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']({ - 'Card-header': true - }, className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-CardHeader" - }, baseProps, { - className: classes - }), children); + var getScrollIndex = function getScrollIndex(dropdownOptionList, searchTerm) { + var optionList = getValueFromOptionList(dropdownOptionList); + + if (searchTerm === '') { + var currTime = get24HourCurrentTime(); + var currTimeIndex = findClosestTimeIndex(optionList, currTime); + return currTimeIndex; + } + + return getSearchValueIndex(optionList, searchTerm); }; - CardHeader.displayName = 'CardHeader'; - var CardBody = function CardBody(props) { - var className = props.className, - children = props.children; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']({ - 'Card-body': true - }, className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-CardBody" - }, baseProps, { - className: classes - }), children); + var getSearchedOptions = function getSearchedOptions(options, searchTerm) { + var result = options.filter(function (option) { + return option.label.toLowerCase().includes(searchTerm.toLowerCase()); + }); + return result; }; - CardBody.displayName = 'CardBody'; - var CardFooter = function CardFooter(props) { - var _a; + var sortList = function sortList(arr) { + return arr.sort(function (a, b) { + return a.value > b.value ? 1 : b.value > a.value ? -1 : 0; + }); + }; - var className = props.className, - children = props.children, - withSeperator = props.withSeperator; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = { - 'Card-footer': true - }, _a['Card-footer--withSeperator'] = withSeperator, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-CardFooter" - }, baseProps, { - className: classes - }), children); + var _isEqual = function _isEqual(firstList, secondList) { + var firstSortedList = sortList(__spreadArrays(firstList)); + var secondSortedList = sortList(__spreadArrays(secondList)); + return firstSortedList.length === secondSortedList.length && firstSortedList.every(function (option, index) { + return option.value === secondSortedList[index].value; + }); }; - CardFooter.displayName = 'CardFooter'; - CardFooter.defaultProps = { - withSeperator: true + var _isControlled = function _isControlled(selected) { + return selected !== undefined; + }; + var _isOpenControlled = function _isOpenControlled(open) { + return open !== undefined; + }; + var _showSelectedItems = function _showSelectedItems(bulk, searchTerm, withCheckbox) { + return bulk && withCheckbox && searchTerm === ''; + }; + var _isSelectAllPresent = function _isSelectAllPresent(searchTerm, bulkOptions, withSelectAll, withCheckbox) { + return withCheckbox && withSelectAll && bulkOptions === 0 && searchTerm === ''; + }; + var scrollTo = function scrollTo(element, top) { + element.scrollTo(0, top); }; + var scrollIntoView = function scrollIntoView(menuElement, focusedElement) { + var menuRect = menuElement === null || menuElement === void 0 ? void 0 : menuElement.getBoundingClientRect(); + var focusedRect = focusedElement.getBoundingClientRect(); + var overscroll = focusedElement.offsetHeight; - var GenericChip = function GenericChip(props) { - var label = props.label, - icon = props.icon, - clearButton = props.clearButton, - disabled = props.disabled, - className = props.className, - selected = props.selected, - onClose = props.onClose, - onClick = props.onClick; - var baseProps = extractBaseProps(props); + if (focusedRect.bottom > menuRect.bottom && menuElement) { + scrollTo(menuElement, focusedElement.offsetTop - menuRect.height + overscroll); + } else if (focusedRect.top < menuRect.top && menuElement) { + scrollTo(menuElement, focusedElement.offsetTop - overscroll); + } + }; + var getSelectAll$1 = function getSelectAll(selected, optionsLength, disabledOptionsLength) { + if (selected.length) { + if (selected.length > 0 && disabledOptionsLength > 0 && selected.length === optionsLength - disabledOptionsLength) { + return { + indeterminate: true, + checked: true + }; + } - var iconClass = function iconClass(align) { - var _a; + var indeterminate = selected.length > 0 && selected.length !== optionsLength; + var checked = selected.length > 0 && selected.length === optionsLength; + var obj = { + checked: checked, + indeterminate: indeterminate + }; + return obj; + } - return classNames__default['default']((_a = {}, _a['Chip-icon'] = true, _a["Chip-icon--" + align] = align, _a['cursor-pointer'] = align === 'right' && !disabled, _a)); + return { + indeterminate: false, + checked: false }; + }; + var scrollToOptionIndex = function scrollToOptionIndex(scrollIndex, listOptions) { + var _a; - var onCloseHandler = function onCloseHandler(e) { - e.stopPropagation(); - if (onClose) onClose(); - }; + var optionID = listOptions && ((_a = listOptions[scrollIndex]) === null || _a === void 0 ? void 0 : _a.optionID); + var targetOption = document.getElementById(optionID); + targetOption && targetOption.scrollIntoView && targetOption.scrollIntoView({ + block: 'center' + }); + }; + var groupListOptions = function groupListOptions(listOptions) { + var groupList = listOptions.reduce(function (acc, option) { + var group = option.group || ''; - var onClickHandler = function onClickHandler() { - if (onClick) onClick(); - }; + if (!acc[group]) { + acc[group] = []; + } - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-GenericChip--GenericChipWrapper" - }, baseProps, { - className: "Chip-wrapper " + className, - onClick: onClickHandler - }), icon && /*#__PURE__*/React__namespace.createElement(Icon, { - "data-test": "DesignSystem-GenericChip--Icon", - name: icon, - appearance: disabled ? 'disabled' : selected ? 'info' : 'default', - className: iconClass('left') - }), /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-GenericChip--Text", - appearance: disabled ? 'disabled' : 'default' - }, label), clearButton && /*#__PURE__*/React__namespace.createElement(Icon, { - "data-test": "DesignSystem-GenericChip--clearButton", - name: "clear", - appearance: disabled ? 'disabled' : selected ? 'info' : 'subtle', - className: iconClass('right'), - onClick: onCloseHandler - })); + acc[group].push(option); + return acc; + }, {}); + var flattenedGroupList = Object.values(groupList).flatMap(function (item) { + return __spreadArrays(item); + }); + return flattenedGroupList; }; - GenericChip.displayName = 'GenericChip'; - var Chip = function Chip(props) { - var _a; + var TimePickerWithSearch = function TimePickerWithSearch(props) { + var open = props.open, + endTime = props.endTime, + interval = props.interval, + onChange = props.onChange, + startTime = props.startTime, + timeFormat = props.timeFormat, + showDuration = props.showDuration, + noResultMessage = props.noResultMessage, + disabledSlotList = props.disabledSlotList, + fetchTimeOptions = props.fetchTimeOptions, + error = props.error; - var label = props.label, - icon = props.icon, - clearButton = props.clearButton, - type = props.type, - disabled = props.disabled, - selected = props.selected, - onClose = props.onClose, - onClick = props.onClick, - name = props.name, - className = props.className; - var baseProps = extractBaseProps(props); + var _a = React__namespace.useState(0), + tabIndex = _a[0], + setTabIndex = _a[1]; - var onCloseHandler = function onCloseHandler() { - if (!disabled && onClose) onClose(name); - }; + var _b = React__namespace.useState(false), + openPopover = _b[0], + setOpenPopover = _b[1]; - var onClickHandler = function onClickHandler() { - if (!disabled && onClick) onClick(name); - }; + var _c = React__namespace.useState(-1), + selectedIndex = _c[0], + setSelectedIndex = _c[1]; - var chipClass = classNames__default['default']((_a = { - Chip: true - }, _a["Chip-" + type + "--disabled"] = disabled, _a["Chip--" + type] = type && !disabled, _a["Chip-" + type + "--selected"] = selected && !disabled, _a), className); - var clearbutton = type === 'action' ? false : clearButton; - var select = type === 'selection' && selected ? true : false; - return /*#__PURE__*/React__namespace.createElement(GenericChip, __assign({ - "data-test": "DesignSystem-Chip--GenericChip" - }, baseProps, { - label: label, - selected: select, - icon: icon, - clearButton: clearbutton, - disabled: disabled, - className: chipClass, - onClose: onCloseHandler, - onClick: onClickHandler, - name: name - })); - }; - Chip.displayName = 'Chip'; - Chip.defaultProps = { - type: 'input' - }; + var _d = React__namespace.useState(0), + counter = _d[0], + setCounter = _d[1]; - var ChipGroup = function ChipGroup(props) { - var _a; + var dropdownOptionList = getDropdownOptionList(props); + React__namespace.useEffect(function () { + open !== undefined && setOpenPopover(open); + }, [open]); + React__namespace.useEffect(function () { + var timer; - var list = props.list, - onClick = props.onClick, - onClose = props.onClose, - className = props.className; - var baseProps = extractBaseProps(props); + if (openPopover && selectedIndex != -1) { + setTabIndex(selectedIndex); + timer = setTimeout(function () { + scrollToOptionIndex(selectedIndex, dropdownOptionList); + }, 100); + } - var onClickHandler = function onClickHandler(item) { - if (onClick) onClick(item); + return function () { + clearTimeout(timer); + }; + }, [openPopover]); + React__namespace.useEffect(function () { + setCounter(counter + 1); + }, [startTime, endTime, interval, showDuration, disabledSlotList]); + + var onChangeHandler = function onChangeHandler(props) { + var time = props; + + if (isFormat12Hour(timeFormat)) { + time = convert24To12HourFormat(time); + } + + var selectIndex = dropdownOptionList.findIndex(function (option) { + return option.value === props; + }); + setSelectedIndex(selectIndex); + onChange && onChange(time); }; - var onCloseHandler = function onCloseHandler(item) { - if (onClose) onClose(item); + var getOptionList = function getOptionList(searchTerm) { + var scrollIndex; + var indexValue = getScrollIndex(dropdownOptionList, searchTerm); + + if (searchTerm === '' && selectedIndex != -1) { + scrollIndex = selectedIndex; + setTabIndex(selectedIndex); + } else { + scrollIndex = indexValue; + setTabIndex(indexValue); + } + + return Promise.resolve({ + options: indexValue === -1 ? [] : dropdownOptionList, + count: dropdownOptionList.length, + scrollToIndex: scrollIndex === 0 ? scrollIndex + 1 : scrollIndex, + searchTerm: searchTerm + }); }; - var ChipGroupClass = classNames__default['default']((_a = {}, _a['ChipGroup'] = true, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-ChipGroup" - }, baseProps, { - className: ChipGroupClass - }), list.map(function (item, ind) { - var _a = item.label, - label = _a === void 0 ? '' : _a, - icon = item.icon, - type = item.type, - disabled = item.disabled, - selected = item.selected, - clearButton = item.clearButton, - name = item.name; - return /*#__PURE__*/React__namespace.createElement("span", { - key: ind, - className: "ChipGroup-item" - }, /*#__PURE__*/React__namespace.createElement(Chip, { - "data-test": "DesignSystem-ChipGroup--Chip", - name: name, - label: label, - selected: selected, - icon: icon, - disabled: disabled, - clearButton: clearButton, - type: type, - onClick: function onClick() { - return onClickHandler(item); - }, - onClose: function onClose() { - return onCloseHandler(item); - } - })); - })); + var fetchOptionList = function fetchOptionList() { + return fetchTimeOptions ? fetchTimeOptions : getOptionList; + }; + + return /*#__PURE__*/React__namespace.createElement(Dropdown, { + key: counter, + maxHeight: 160, + loadersCount: 0, + withSearch: true, + open: openPopover, + tabIndex: tabIndex, + searchPlaceholder: "Search", + onChange: onChangeHandler, + fetchOptions: fetchOptionList(), + noResultMessage: noResultMessage, + staticLimit: dropdownOptionList.length, + onPopperToggle: function onPopperToggle() { + setOpenPopover(!openPopover); + }, + error: error + }); }; - ChipGroup.displayName = 'ChipGroup'; + TimePickerWithSearch.defaultProps = { + timeFormat: '12-Hour', + interval: 15 + }; + TimePickerWithSearch.displayName = 'TimePickerWithSearch'; - var Column = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { - var _a; - - var size = props.size, - sizeXS = props.sizeXS, - sizeS = props.sizeS, - sizeM = props.sizeM, - sizeL = props.sizeL, - sizeXL = props.sizeXL, - className = props.className, - children = props.children, - rest = __rest(props, ["size", "sizeXS", "sizeS", "sizeM", "sizeL", "sizeXL", "className", "children"]); - - var classes = classNames__default['default']((_a = {}, _a['Col'] = true, _a["Col--" + size] = size, _a["Col--xs-" + sizeXS] = sizeXS, _a["Col--s-" + sizeS] = sizeS, _a["Col--m-" + sizeM] = sizeM, _a["Col--l-" + sizeL] = sizeL, _a["Col--xl-" + sizeXL] = sizeXL, _a["" + className] = className, _a)); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - ref: ref, - "data-test": "DesignSystem-Column" - }, rest, { - className: classes - }), children); - }); - Column.displayName = 'Column'; - - var Trigger$1 = function Trigger(props) { - var inputFormat = props.inputFormat, - inputOptions = props.inputOptions, - validators = props.validators, - state = props.state, - setState = props.setState; - var init = state.init, - date$1 = state.date, - error = state.error; - var _a = inputOptions.placeholderChar, - placeholderChar = _a === void 0 ? '_' : _a; - - var onChangeHandler = function onChangeHandler(_e, val) { - setState({ - open: true - }); - - if (val && !val.includes(placeholderChar)) { - var d = translateToDate(inputFormat, val, validators); - setState({ - date: d - }); - } - }; - - var onBlurHandler = function onBlurHandler(_e, val) { - setState({ - init: true - }); - - if (!val || val.includes(placeholderChar)) { - setState({ - date: undefined - }); - } - }; - - var onClearHandler = function onClearHandler() { - setState({ - init: true, - date: undefined - }); - }; - - var showError = inputOptions.error || inputOptions.required && error && init; - var errorMessage = inputOptions.caption === undefined ? 'Invalid value' : inputOptions.caption; - - var inputValidator = function inputValidator(val) { - return isValid(validators, val, inputFormat); - }; - - var mask = date[inputFormat]; - return /*#__PURE__*/React__namespace.createElement(InputMask, __assign({ - icon: "events", - placeholder: inputFormat - }, inputOptions, { - error: showError, - mask: mask, - value: date$1 ? translateToString(inputFormat, date$1) : init ? InputMask.utils.getDefaultValue(mask, placeholderChar) : '', - onChange: onChangeHandler, - onBlur: onBlurHandler, - onClear: onClearHandler, - caption: showError ? errorMessage : '', - validators: [inputValidator], - clearOnEmptyBlur: false - })); - }; - - var DatePicker = function (_super) { - __extends(DatePicker, _super); - - function DatePicker(props) { - var _this = _super.call(this, props) || this; - - _this.getError = function (date) { - var _a = _this.props, - disabledBefore = _a.disabledBefore, - disabledAfter = _a.disabledAfter; - - var _b = getDateInfo(disabledBefore), - dbYear = _b.year, - dbMonth = _b.month, - dbDate = _b.date; - - var _c = getDateInfo(disabledAfter), - daYear = _c.year, - daMonth = _c.month, - daDate = _c.date; - - return !date ? true : compareDate(date, 'less', dbYear, dbMonth, dbDate) || compareDate(date, 'more', daYear, daMonth, daDate); - }; - - _this.onDateChangeHandler = function (d) { - _this.setState({ - init: true, - date: d - }); - - var closeOnSelect = _this.props.closeOnSelect; - if (closeOnSelect) _this.setState({ - open: false - }); - }; - - _this.onToggleHandler = function (o, type) { - switch (type) { - case 'outsideClick': - _this.setState({ - open: o - }); - - break; - - case 'onClick': - _this.setState({ - open: true - }); - - break; - } - }; - - var inputFormat = props.inputFormat, - validators = props.validators; - var date = convertToDate(props.date, inputFormat, validators); - - var error = _this.getError(date); - - _this.state = { - date: date, - error: error, - init: false, - open: props.open || false - }; - return _this; - } - - DatePicker.prototype.componentDidUpdate = function (prevProps, prevState) { - if (prevProps.date !== this.props.date) { - var _a = this.props, - inputFormat = _a.inputFormat, - validators = _a.validators; - var d = convertToDate(this.props.date, inputFormat, validators); - this.setState({ - date: d - }); - } - - if (prevProps.open !== this.props.open) { - this.setState({ - open: this.props.open || false - }); - } - - if (prevState.date !== this.state.date) { - var _b = this.props, - onDateChange = _b.onDateChange, - outputFormat = _b.outputFormat; - var date = this.state.date; - var newError = this.getError(date); - this.setState({ - error: newError - }); - - if (onDateChange) { - if (!newError) { - var dVal = translateToString(outputFormat, date); - onDateChange(date, dVal); - } else { - onDateChange(undefined, ''); - } - } - } - }; - - DatePicker.prototype.renderCalendar = function () { - var _a = this.props; - _a.date; - _a.open; - _a.position; - var inputFormat = _a.inputFormat; - _a.outputFormat; - _a.inputOptions; - var validators = _a.validators; - _a.withInput; - var disabledBefore = _a.disabledBefore, - disabledAfter = _a.disabledAfter; - _a.onDateChange; - _a.closeOnSelect; - var rest = __rest(_a, ["date", "open", "position", "inputFormat", "outputFormat", "inputOptions", "validators", "withInput", "disabledBefore", "disabledAfter", "onDateChange", "closeOnSelect"]); - - var date = this.state.date; - return /*#__PURE__*/React__namespace.createElement(Calendar, __assign({}, rest, { - date: convertToDate(date, inputFormat, validators), - disabledBefore: convertToDate(disabledBefore, inputFormat, validators), - disabledAfter: convertToDate(disabledAfter, inputFormat, validators), - onDateChange: this.onDateChangeHandler - })); - }; - - DatePicker.prototype.render = function () { - var _a = this.props, - position = _a.position, - withInput = _a.withInput, - inputFormat = _a.inputFormat, - inputOptions = _a.inputOptions, - validators = _a.validators; - var open = this.state.open; - - if (withInput) { - return /*#__PURE__*/React__namespace.createElement(Popover, { - trigger: /*#__PURE__*/React__namespace.createElement(Trigger$1, { - inputFormat: inputFormat, - inputOptions: inputOptions, - validators: validators, - state: this.state, - setState: this.setState.bind(this) - }), - triggerClass: "w-100", - position: position, - appendToBody: true, - open: open, - onToggle: this.onToggleHandler - }, this.renderCalendar()); - } - - return this.renderCalendar(); - }; - - DatePicker.defaultProps = __assign(__assign({}, Calendar.defaultProps), { - position: 'bottom-start', - inputFormat: 'mm/dd/yyyy', - outputFormat: 'mm/dd/yyyy', - validators: [date$1], - inputOptions: {}, - closeOnSelect: true - }); - return DatePicker; - }(React__namespace.Component); - - var TimePicker = function TimePicker(props) { - var validators = props.validators, - inputOptions = props.inputOptions, - inputFormat = props.inputFormat, - outputFormat = props.outputFormat, - onTimeChange = props.onTimeChange, - timeProp = props.time; + var TimePickerWithInput = function TimePickerWithInput(props) { + var validators = props.validators, + inputOptions = props.inputOptions, + inputFormat = props.inputFormat, + outputFormat = props.outputFormat, + onTimeChange = props.onTimeChange, + timeProp = props.time, + error = props.error; var _a = React__namespace.useState(timeProp), time$1 = _a[0], @@ -4262,4686 +4073,7590 @@ }; var mask = time[inputFormat]; - return /*#__PURE__*/React__namespace.createElement(InputMask, __assign({ + return /*#__PURE__*/React__namespace.createElement(X, __assign({ placeholder: placeholders[inputFormat], placeholderChar: placeholderChar }, inputOptions, { mask: mask, - value: time$1 ? translateToTime(inputFormat, time$1) : init ? InputMask.utils.getDefaultValue(mask, placeholderChar) : '', + value: time$1 ? translateToTime(inputFormat, time$1) : init ? X.utils.getDefaultValue(mask, placeholderChar) : '', validators: inputValidator, onChange: onChangeHandler, onClear: onClearHandler, - onBlur: onBlurHandler - })); + onBlur: onBlurHandler, + error: error, + id: "parent-TimePicker" + })); }; - TimePicker.defaultProps = { + TimePickerWithInput.defaultProps = { inputFormat: 'hh:mm AM', outputFormat: 'hh:mm AM', inputOptions: {}, validators: [time$1] }; - TimePicker.displayName = 'TimePicker'; - - var sizeMap = { - s: 'h5', - m: 'h4', - l: 'h3', - xl: 'h2', - xxl: 'h1' - }; - var Heading = function Heading(props) { - var _a; - - var appearance = props.appearance, - size = props.size, - children = props.children, - className = props.className, - rest = __rest(props, ["appearance", "size", "children", "className"]); - - var classes = classNames__default['default']((_a = { - Heading: true - }, _a["Heading--" + size] = size, _a["Heading--" + appearance] = appearance, _a), className); - return /*#__PURE__*/React__namespace.createElement(GenericText, __assign({ - "data-test": "DesignSystem-Heading" - }, rest, { - className: classes, - componentType: sizeMap[size] - }), children); - }; - Heading.displayName = 'Heading'; - Heading.defaultProps = { - appearance: 'default', - size: 'm' - }; + TimePickerWithInput.displayName = 'TimePickerWithInput'; - var sizeMapping$1 = { - tiny: 12, - regular: 16, - large: 20 + var TimePicker = function TimePicker(props) { + return props.withSearch ? /*#__PURE__*/React__namespace.createElement(TimePickerWithSearch, __assign({}, props)) : /*#__PURE__*/React__namespace.createElement(TimePickerWithInput, __assign({}, props)); }; - var Input = /*#__PURE__*/React__namespace.forwardRef(function (props, forwardedRef) { - var _a, _b, _c, _d; + TimePicker.defaultProps = __assign(__assign({}, TimePickerWithInput.defaultProps), TimePickerWithSearch.defaultProps); + TimePicker.displayName = 'TimePicker'; - var _e = props.size, - size = _e === void 0 ? 'regular' : _e, - _f = props.type, - type = _f === void 0 ? 'text' : _f, - _g = props.minWidth, - minWidth = _g === void 0 ? type !== 'number' ? 256 : undefined : _g, - defaultValue = props.defaultValue, - name = props.name, - placeholder = props.placeholder, - value = props.value, - icon = props.icon, - inlineLabel = props.inlineLabel, - required = props.required, - error = props.error, - info = props.info, - onChange = props.onChange, - onClick = props.onClick, - onClear = props.onClear, - onBlur = props.onBlur, - onFocus = props.onFocus, - actionIcon = props.actionIcon, - className = props.className, - autoFocus = props.autoFocus, - disabled = props.disabled, - readOnly = props.readOnly, - rest = __rest(props, ["size", "type", "minWidth", "defaultValue", "name", "placeholder", "value", "icon", "inlineLabel", "required", "error", "info", "onChange", "onClick", "onClear", "onBlur", "onFocus", "actionIcon", "className", "autoFocus", "disabled", "readOnly"]); + /* eslint-disable no-undefined,no-param-reassign,no-shadow */ - var ref = React__namespace.useRef(null); - React__namespace.useImperativeHandle(forwardedRef, function () { - return ref.current; - }); - React__namespace.useEffect(function () { - var _a; + /** + * Throttle execution of a function. Especially useful for rate limiting + * execution of handlers on events like resize and scroll. + * + * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful. + * @param {boolean} [noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds while the + * throttled-function is being called. If noTrailing is false or unspecified, callback will be executed one final time + * after the last throttled-function call. (After the throttled-function has not been called for `delay` milliseconds, + * the internal counter is reset). + * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is, + * to `callback` when the throttled-function is executed. + * @param {boolean} [debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is false (at end), + * schedule `callback` to execute after `delay` ms. + * + * @returns {Function} A new, throttled, function. + */ + function throttle (delay, noTrailing, callback, debounceMode) { + /* + * After wrapper has stopped being called, this timeout ensures that + * `callback` is executed at the proper times in `throttle` and `end` + * debounce modes. + */ + var timeoutID; + var cancelled = false; // Keep track of the last time `callback` was executed. - if (autoFocus) (_a = ref.current) === null || _a === void 0 ? void 0 : _a.focus({ - preventScroll: true - }); - }, []); - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = {}, _a['Input'] = true, _a["Input--" + size] = size, _a['Input--disabled'] = disabled || readOnly, _a['Input--error'] = error, _a), className); - var inputClass = classNames__default['default']((_b = {}, _b['Input-input'] = true, _b["Input-input--" + size] = size, _b)); - var leftIconClass = classNames__default['default']((_c = {}, _c['Input-icon'] = true, _c['Input-icon--left'] = true, _c['Input-icon--disabled'] = !value, _c)); - var rightIconClass = classNames__default['default']((_d = {}, _d['Input-icon'] = true, _d['Input-icon--right'] = true, _d)); - var trigger = /*#__PURE__*/React__namespace.createElement("div", { - className: rightIconClass - }, /*#__PURE__*/React__namespace.createElement(Icon, { - name: 'info', - size: sizeMapping$1[size] - })); - return /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-InputWrapper", - className: classes, - style: { - minWidth: minWidth - }, - onClick: function onClick() { - var _a; + var lastExec = 0; // Function to clear existing timeout - return (_a = ref.current) === null || _a === void 0 ? void 0 : _a.focus(); - } - }, inlineLabel && /*#__PURE__*/React__namespace.createElement("div", { - className: "Input-inlineLabel" - }, /*#__PURE__*/React__namespace.createElement(Text, { - appearance: "subtle" - }, inlineLabel)), size !== 'tiny' && icon && /*#__PURE__*/React__namespace.createElement("div", { - className: leftIconClass - }, /*#__PURE__*/React__namespace.createElement(Icon, { - name: icon, - size: sizeMapping$1[size] - })), /*#__PURE__*/React__namespace.createElement("input", __assign({ - "data-test": "DesignSystem-Input" - }, baseProps, rest, { - ref: ref, - name: name, - type: type, - defaultValue: defaultValue, - placeholder: placeholder, - className: inputClass, - value: value, - required: required, - disabled: disabled, - readOnly: readOnly, - onChange: onChange, - onBlur: onBlur, - onClick: onClick, - onFocus: onFocus - })), !value && !disabled || value && disabled || defaultValue && disabled ? info && /*#__PURE__*/React__namespace.createElement(Tooltip, { - position: "top", - tooltip: info - }, trigger) : actionIcon ? actionIcon : onClear && value && !disabled && /*#__PURE__*/React__namespace.createElement("div", { - className: rightIconClass, - onClick: function onClick(e) { - return onClear(e); + function clearExistingTimeout() { + if (timeoutID) { + clearTimeout(timeoutID); } - }, /*#__PURE__*/React__namespace.createElement(Icon, { - name: 'close', - size: sizeMapping$1[size] - }))); - }); - Input.displayName = 'Input'; + } // Function to cancel next exec - var sizeMapping = { - regular: 16, - large: 20 - }; - var capMin = function capMin(min, value) { - if (min === void 0) { - min = -Infinity; - } + function cancel() { + clearExistingTimeout(); + cancelled = true; + } // `noTrailing` defaults to falsy. - return isNaN(min) || !min && min !== 0 || isNaN(value) || !value && value !== 0 ? value : Math.max(min, value); - }; - var capMax = function capMax(max, value) { - if (max === void 0) { - max = +Infinity; + if (typeof noTrailing !== 'boolean') { + debounceMode = callback; + callback = noTrailing; + noTrailing = undefined; } + /* + * The `wrapper` function encapsulates all of the throttling / debouncing + * functionality and when executed will limit the rate at which `callback` + * is executed. + */ - return isNaN(max) || !max && max !== 0 || isNaN(value) || !value && value !== 0 ? value : Math.min(max, value); - }; - - var MetricInput = /*#__PURE__*/React__namespace.forwardRef(function (props, forwardedRef) { - var _a, _b, _c; - var _d = props.size, - size = _d === void 0 ? 'regular' : _d, - defaultValue = props.defaultValue, - name = props.name, - placeholder = props.placeholder, - icon = props.icon, - prefix = props.prefix, - suffix = props.suffix, - error = props.error, - min = props.min, - max = props.max, - onChange = props.onChange, - onClick = props.onClick, - onBlur = props.onBlur, - onFocus = props.onFocus, - className = props.className, - autoFocus = props.autoFocus, - disabled = props.disabled, - readOnly = props.readOnly, - valueProp = props.value, - rest = __rest(props, ["size", "defaultValue", "name", "placeholder", "icon", "prefix", "suffix", "error", "min", "max", "onChange", "onClick", "onBlur", "onFocus", "className", "autoFocus", "disabled", "readOnly", "value"]); + function wrapper() { + for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) { + arguments_[_key] = arguments[_key]; + } - var ref = React__namespace.useRef(null); - var isUncontrolled = valueProp === undefined; + var self = this; + var elapsed = Date.now() - lastExec; - var _e = React__namespace.useState(valueProp || defaultValue), - value = _e[0], - setValue = _e[1]; + if (cancelled) { + return; + } // Execute `callback` and update the `lastExec` timestamp. - React__namespace.useImperativeHandle(forwardedRef, function () { - return ref.current; - }); - React__namespace.useEffect(function () { - var _a; - if (autoFocus) (_a = ref.current) === null || _a === void 0 ? void 0 : _a.focus({ - preventScroll: true - }); - }, []); - React__namespace.useEffect(function () { - if (valueProp !== undefined) { - setValue(valueProp); + function exec() { + lastExec = Date.now(); + callback.apply(self, arguments_); } - }, [valueProp]); - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = {}, _a['MetricInput'] = true, _a["MetricInput--" + size] = size, _a['MetricInput--disabled'] = disabled || readOnly, _a['MetricInput--error'] = error, _a), className); - var inputClass = classNames__default['default']((_b = {}, _b['MetricInput-input'] = true, _b["MetricInput-input--" + size] = size, _b)); - var iconClass = classNames__default['default']((_c = {}, _c['MetricInput-icon'] = true, _c["MetricInput-icon--" + size] = size, _c)); + /* + * If `debounceMode` is true (at begin) this is used to clear the flag + * to allow future `callback` executions. + */ - var getArrowClass = function getArrowClass(direction) { - var _a; - return classNames__default['default']((_a = {}, _a['MetricInput-arrowIcon'] = true, _a["MetricInput-arrowIcon--" + size] = size, _a["MetricInput-arrowIcon--" + direction] = direction, _a)); - }; + function clear() { + timeoutID = undefined; + } - var onChangeHandler = function onChangeHandler(e) { - if (isUncontrolled) { - setValue(e.target.value); + if (debounceMode && !timeoutID) { + /* + * Since `wrapper` is being called for the first time and + * `debounceMode` is true (at begin), execute `callback`. + */ + exec(); } - if (onChange) onChange(e); - }; + clearExistingTimeout(); - var onArrowClick = function onArrowClick(e, direction) { - var newValue = Number(value || 0); - var isValid = direction === 'down' ? min !== undefined && newValue > min || min === undefined : max !== undefined && newValue < max || max === undefined; - if (disabled || readOnly || !isValid) return; - newValue = direction === 'down' ? newValue - 1 : newValue + 1; - newValue = capMax(max, capMin(min, newValue)); - if (isUncontrolled) setValue(newValue); - - if (onChange) { - var syntheticEvent = Object.create(e, { - target: { - value: newValue - } - }); - onChange(syntheticEvent); - } - }; - - var onKeyDown = function onKeyDown(e) { - switch (e.key) { - case 'e': - case 'E': - e.preventDefault(); - return; - - case 'ArrowDown': - e.preventDefault(); - onArrowClick(e, 'down'); - return; - - case 'ArrowUp': - e.preventDefault(); - onArrowClick(e, 'up'); - return; - } - }; - - var iconSize = size === 'regular' ? 12 : 16; - return /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-MetricInputWrapper", - className: classes, - onClick: function onClick() { - var _a; - - return (_a = ref.current) === null || _a === void 0 ? void 0 : _a.focus(); + if (debounceMode === undefined && elapsed > delay) { + /* + * In throttle mode, if `delay` time has been exceeded, execute + * `callback`. + */ + exec(); + } else if (noTrailing !== true) { + /* + * In trailing throttle mode, since `delay` time has not been + * exceeded, schedule `callback` to execute `delay` ms after most + * recent execution. + * + * If `debounceMode` is true (at begin), schedule `clear` to execute + * after `delay` ms. + * + * If `debounceMode` is false (at end), schedule `callback` to + * execute after `delay` ms. + */ + timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay); } - }, icon && /*#__PURE__*/React__namespace.createElement(Icon, { - "data-test": "DesignSystem-MetricInput--icon", - name: icon, - size: sizeMapping[size], - appearance: !value ? 'disabled' : 'subtle', - className: iconClass - }), prefix && /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-MetricInput--prefix", - className: size === 'regular' ? 'mr-4' : 'mr-5', - size: size, - appearance: "subtle" - }, prefix), /*#__PURE__*/React__namespace.createElement("input", __assign({ - "data-test": "DesignSystem-MetricInput" - }, baseProps, rest, { - type: "number", - ref: ref, - name: name, - defaultValue: defaultValue, - placeholder: placeholder, - className: inputClass, - value: value, - disabled: disabled, - readOnly: readOnly, - onChange: onChangeHandler, - onBlur: onBlur, - onClick: onClick, - onFocus: onFocus, - onKeyDown: onKeyDown - })), suffix && /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-MetricInput--suffix", - className: size === 'regular' ? 'ml-4' : 'ml-5', - size: size, - appearance: "subtle" - }, suffix), /*#__PURE__*/React__namespace.createElement("div", { - className: "MetricInput-arrowIcons", - tabIndex: 0 - }, /*#__PURE__*/React__namespace.createElement(Icon, { - className: getArrowClass('up'), - size: iconSize, - name: "keyboard_arrow_up", - onClick: function onClick(e) { - return onArrowClick(e, 'up'); - }, - "data-test": "DesignSystem-MetricInput--upIcon" - }), /*#__PURE__*/React__namespace.createElement(Icon, { - className: getArrowClass('down'), - size: iconSize, - name: "keyboard_arrow_down", - onClick: function onClick(e) { - return onArrowClick(e, 'down'); - }, - "data-test": "DesignSystem-MetricInput--downIcon" - }))); - }); - MetricInput.displayName = 'MetricInput'; - - function _typeof(obj) { - "@babel/helpers - typeof"; - - if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { - _typeof = function (obj) { - return typeof obj; - }; - } else { - _typeof = function (obj) { - return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; - }; } - return _typeof(obj); + wrapper.cancel = cancel; // Return the wrapper function. + + return wrapper; } - var isEditable = function isEditable(mask, pos) { - return _typeof(mask[pos]) === 'object'; - }; - var getDefaultValue = function getDefaultValue(mask, placeholderChar) { - var val = ''; + /* eslint-disable no-undefined */ + /** + * Debounce execution of a function. Debouncing, unlike throttling, + * guarantees that a function is only executed a single time, either at the + * very beginning of a series of calls, or at the very end. + * + * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful. + * @param {boolean} [atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds + * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call. + * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset). + * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is, + * to `callback` when the debounced-function is executed. + * + * @returns {Function} A new, debounced function. + */ - for (var i = 0; i < mask.length; i++) { - val += isEditable(mask, i) ? placeholderChar : mask[i]; - } + function debounce (delay, atBegin, callback) { + return callback === undefined ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false); + } - return val; - }; + var DropdownButton = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a, _b; - var InputMask = /*#__PURE__*/React__namespace.forwardRef(function (props, forwardRef) { - props.mask; - var valueProp = props.value, - _a = props.placeholderChar, - placeholderChar = _a === void 0 ? '_' : _a, - _b = props.validators, - validators = _b === void 0 ? [] : _b, - _c = props.clearOnEmptyBlur, - clearOnEmptyBlur = _c === void 0 ? true : _c, - defaultValue = props.defaultValue, - mask = props.mask, + var _c = props.triggerSize, + triggerSize = _c === void 0 ? 'regular' : _c, + _d = props.placeholder, + placeholder = _d === void 0 ? 'Select' : _d, + _e = props.menu, + menu = _e === void 0 ? false : _e, + children = props.children, + icon = props.icon, + disabled = props.disabled, + open = props.open, + inlineLabel = props.inlineLabel, error = props.error, - caption = props.caption, - required = props.required, - onChange = props.onChange, - onBlur = props.onBlur, - onFocus = props.onFocus, - onClear = props.onClear, - className = props.className, - rest = __rest(props, ["mask", "value", "placeholderChar", "validators", "clearOnEmptyBlur", "defaultValue", "mask", "error", "caption", "required", "onChange", "onBlur", "onFocus", "onClear", "className"]); + iconType = props.iconType, + rest = __rest(props, ["triggerSize", "placeholder", "menu", "children", "icon", "disabled", "open", "inlineLabel", "error", "iconType"]); - var getNewCursorPosition = function getNewCursorPosition(type, position) { - if (type === 'right') { - for (var i = position; i < mask.length; i++) { - if (isEditable(i)) return i; - } + var buttonDisabled = disabled ? 'disabled' : 'default'; + var trimmedPlaceholder = placeholder.trim(); + var value = children ? children : trimmedPlaceholder; + var iconName = !menu ? 'keyboard_arrow_down' : icon ? icon : 'more_horiz'; + var buttonClass = classNames__default["default"]((_a = {}, _a['Button'] = true, _a['DropdownButton'] = true, _a["DropdownButton--" + triggerSize] = triggerSize, _a["DropdownButton--" + triggerSize + "Square"] = menu, _a['DropdownButton--placeholder'] = !children && !menu, _a['DropdownButton--icon'] = icon, _a['DropdownButton--open'] = open, _a['DropdownButton--error'] = error, _a)); + var textClass = classNames__default["default"]((_b = {}, _b['Text'] = true, _b['Text--regular'] = true, _b['DropdownButton-text'] = true, _b)); + return /*#__PURE__*/React__namespace.createElement("button", __assign({ + ref: ref, + type: "button", + value: children, + className: buttonClass, + disabled: disabled, + tabIndex: 0, + "data-test": "DesignSystem-DropdownTrigger" + }, rest), !menu && /*#__PURE__*/React__namespace.createElement("div", { + className: "DropdownButton-wrapper" + }, inlineLabel && /*#__PURE__*/React__namespace.createElement(Text, { + appearance: "subtle", + className: "mr-4 white-space-nowrap" + }, "" + inlineLabel.trim().charAt(0).toUpperCase() + inlineLabel.trim().slice(1)), icon && !inlineLabel && /*#__PURE__*/React__namespace.createElement(Icon, { + appearance: buttonDisabled, + className: "d-flex align-items-center mr-4", + name: icon, + type: iconType + }), value && /*#__PURE__*/React__namespace.createElement("span", { + className: textClass + }, value)), /*#__PURE__*/React__namespace.createElement(Icon, { + appearance: buttonDisabled, + name: iconName, + type: iconType + })); + }); + DropdownButton.displayName = 'DropdownButton'; - return mask.length; - } + var CheckboxOption = function CheckboxOption(props) { + var className = props.className, + selected = props.selected, + optionData = props.optionData, + onChangeHandler = props.onChangeHandler, + onUpdateActiveOption = props.onUpdateActiveOption, + dataTest = props.dataTest, + _a = props.id, + id = _a === void 0 ? '' : _a; + var subInfo = optionData.subInfo, + label = optionData.label, + disabled = optionData.disabled; - if (type === 'left') { - for (var i = position; i >= 0; i--) { - if (isEditable(i - 1)) return i; - } + var renderSubInfo = function renderSubInfo(subInfo) { + var labelAppearance = disabled ? 'disabled' : 'subtle'; + var iconAppearance = selected ? 'white' : 'disabled'; - return 0; + if (typeof subInfo === 'string') { + return /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-DropdownOption--WITH_META--Meta", + appearance: labelAppearance, + size: "small", + weight: "medium" + }, subInfo); } - return position; - }; - - var getDefaultSelection = function getDefaultSelection() { - var pos = getNewCursorPosition('right', 0); - return { - start: pos, - end: pos - }; + var _a = subInfo.list, + list = _a === void 0 ? [] : _a, + seperator = subInfo.seperator; + return /*#__PURE__*/React__namespace.createElement(MetaList, { + list: list, + seperator: seperator, + iconAppearance: iconAppearance, + labelAppearance: labelAppearance, + seperatorAppearance: iconAppearance, + "data-test": "DesignSystem-DropdownOption--WITH_META--MetaList" + }); }; - var getPlaceholderValue = function getPlaceholderValue(start, end) { - if (start === void 0) { - start = 0; - } - - if (end === void 0) { - end = mask.length - 1; - } + return /*#__PURE__*/React__namespace.createElement("div", { + className: className, + onMouseEnter: onUpdateActiveOption, + "data-test": dataTest, + "data-disabled": disabled + }, /*#__PURE__*/React__namespace.createElement(Checkbox, { + label: label, + disabled: disabled, + checked: selected, + onChange: onChangeHandler, + tabIndex: -1, + className: "OptionCheckbox " + (subInfo ? 'pb-0' : ''), + "data-test": dataTest + "--Checkbox", + id: id + }), subInfo && /*#__PURE__*/React__namespace.createElement("div", { + className: "pl-8 ml-3" + }, renderSubInfo(subInfo))); + }; - return getDefaultValue(mask, placeholderChar).slice(start, end + 1); - }; + var DefaultOption = function DefaultOption(props) { + var className = props.className, + textClassName = props.textClassName, + onClickHandler = props.onClickHandler, + optionData = props.optionData, + color = props.color, + onUpdateActiveOption = props.onUpdateActiveOption, + dataTest = props.dataTest; + var label = optionData.label, + disabled = optionData.disabled; + return /*#__PURE__*/React__namespace.createElement("div", { + className: className, + onClick: onClickHandler, + onMouseEnter: onUpdateActiveOption, + "data-test": dataTest, + "data-disabled": disabled + }, /*#__PURE__*/React__namespace.createElement("div", { + className: 'Option-label' + }, /*#__PURE__*/React__namespace.createElement(Text, { + className: textClassName, + color: color, + id: optionData.optionID + }, label))); + }; - var getSelectionLength = function getSelectionLength(val) { - return Math.abs(val.end - val.start); - }; + var MetaOption = function MetaOption(props) { + var className = props.className, + textClassName = props.textClassName, + onClickHandler = props.onClickHandler, + optionData = props.optionData, + onUpdateActiveOption = props.onUpdateActiveOption, + renderSubInfo = props.renderSubInfo, + color = props.color, + dataTest = props.dataTest; + var subInfo = optionData.subInfo, + label = optionData.label, + disabled = optionData.disabled; + return /*#__PURE__*/React__namespace.createElement("div", { + className: className, + onClick: onClickHandler, + onMouseEnter: onUpdateActiveOption, + "data-test": dataTest, + "data-disabled": disabled + }, /*#__PURE__*/React__namespace.createElement("div", { + className: 'Option-label' + }, /*#__PURE__*/React__namespace.createElement(Text, { + className: textClassName, + color: color + }, label), subInfo && renderSubInfo(subInfo))); + }; - var isEditable = function isEditable(pos) { - return _typeof(mask[pos]) === 'object'; - }; + var IconOption = function IconOption(props) { + var _a; - var deferId = React__namespace.useRef(); - var selectionRef = React__namespace.useRef(0); + var className = props.className, + textClassName = props.textClassName, + onClickHandler = props.onClickHandler, + optionData = props.optionData, + onUpdateActiveOption = props.onUpdateActiveOption, + color = props.color, + dataTest = props.dataTest; + var label = optionData.label, + icon = optionData.icon, + disabled = optionData.disabled, + iconType = optionData.iconType; + var OptionClass = classNames__default["default"]((_a = {}, _a["" + className] = true, _a['Option--icon'] = icon, _a)); + return /*#__PURE__*/React__namespace.createElement("div", { + className: OptionClass, + onClick: onClickHandler, + onMouseEnter: onUpdateActiveOption, + "data-test": dataTest, + "data-disabled": disabled + }, icon && /*#__PURE__*/React__namespace.createElement(Icon, { + className: "Option-icon mr-4", + "data-test": dataTest + "--Icon", + name: icon, + type: iconType + }), /*#__PURE__*/React__namespace.createElement("div", { + className: 'Option-label' + }, /*#__PURE__*/React__namespace.createElement(Text, { + className: textClassName, + color: color + }, label))); + }; - var _d = React__namespace.useState(defaultValue || valueProp || ''), - value = _d[0], - setValue = _d[1]; + var IconWithMetaOption = function IconWithMetaOption(props) { + var _a; - var _e = React__namespace.useState(getDefaultSelection()), - selection = _e[0], - setSelection = _e[1]; + var className = props.className, + textClassName = props.textClassName, + renderSubInfo = props.renderSubInfo, + onClickHandler = props.onClickHandler, + optionData = props.optionData, + onUpdateActiveOption = props.onUpdateActiveOption, + appearance = props.appearance, + color = props.color, + dataTest = props.dataTest; + var subInfo = optionData.subInfo, + label = optionData.label, + icon = optionData.icon, + disabled = optionData.disabled; + var OptionClass = classNames__default["default"]((_a = {}, _a["" + className] = true, _a['Option--icon'] = icon, _a)); + return /*#__PURE__*/React__namespace.createElement("div", { + className: OptionClass, + onClick: onClickHandler, + onMouseEnter: onUpdateActiveOption, + "data-test": dataTest, + "data-disabled": disabled + }, icon && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": dataTest + "--Icon", + className: "Option-icon mr-4", + name: icon, + appearance: appearance + }), /*#__PURE__*/React__namespace.createElement("div", { + className: 'Option-label' + }, /*#__PURE__*/React__namespace.createElement(Text, { + className: textClassName, + color: color + }, label), subInfo && renderSubInfo(subInfo))); + }; - var ref = React__namespace.useRef(null); - React__namespace.useImperativeHandle(forwardRef, function () { - return ref.current; - }); - React__namespace.useEffect(function () { - setValue(valueProp || ''); - }, [valueProp]); + var _a; + var OptionTypeMapping = (_a = {}, _a['DEFAULT'] = DefaultOption, _a['WITH_ICON'] = IconOption, _a['WITH_META'] = MetaOption, _a['WITH_CHECKBOX'] = CheckboxOption, _a['ICON_WITH_META'] = IconWithMetaOption, _a); - var setCursorPosition = function setCursorPosition(val) { - return setSelectionPos({ - start: val, - end: val - }); - }; + var Option = function Option(props) { + var _a, _b, _c, _d; - var getCurrSelection = function getCurrSelection() { - return { - start: ref.current.selectionStart || 0, - end: ref.current.selectionEnd || 0 - }; - }; + var optionData = props.optionData, + selected = props.selected, + onClick = props.onClick, + updateActiveOption = props.updateActiveOption, + onChange = props.onChange, + active = props.active, + index = props.index, + checkboxes = props.checkboxes, + menu = props.menu, + _e = props.id, + id = _e === void 0 ? '' : _e; + var _f = (optionData.optionType ? optionData : props).optionType, + optionType = _f === void 0 ? 'DEFAULT' : _f; + var disabled = optionData.disabled; + var color = disabled ? 'inverse-lightest' : selected && !menu ? 'primary-dark' : 'inverse'; + var appearance = disabled ? 'disabled' : selected && !menu ? 'primary_dark' : 'default'; + var type = checkboxes ? 'WITH_CHECKBOX' : optionType; + var component = OptionTypeMapping[type]; + var OptionClassName = classNames__default["default"]((_a = {}, _a['Option'] = true, _a['Option--active'] = active, _a['Option--selected'] = selected && !menu, _a['Option--disabled'] = disabled, _a['OptionWrapper'] = true, _a["color-" + color] = true, _a)); + var CheckboxClassName = classNames__default["default"]((_b = {}, _b['Option-checkbox'] = true, _b['Option-checkbox--active'] = active, _b['OptionWrapper'] = true, _b)); + var textClassName = classNames__default["default"]((_c = {}, _c['Option-text'] = true, _c['Option-text--wrap'] = !props.truncateOption, _c)); + var customOptionClass = classNames__default["default"]((_d = {}, _d['OptionWrapper'] = true, _d['OptionWrapper--disabled'] = disabled, _d)); - var setSelectionPos = function setSelectionPos(pos) { - if (ref.current) { - var el = ref.current; - var start = Math.min(pos.start, pos.end); - var end = Math.max(pos.start, pos.end); - el.setSelectionRange(start, end); - } + var onUpdateActiveOption = function onUpdateActiveOption() { + if (disabled) return; + if (updateActiveOption) updateActiveOption(index); }; - var updateSelection = function updateSelection() { - setSelection(getCurrSelection()); - deferId.current = window.requestAnimationFrame(updateSelection); + var onClickHandler = function onClickHandler(e) { + e.stopPropagation(); + if (disabled) return; + if (onClick) onClick(); }; - var insertAtIndex = function insertAtIndex(currValue, index, iterator) { - if (iterator === void 0) { - iterator = 0; - } - - var newValue = ''; - var newIndex = index + 1; - var newIterator = iterator; - - if (index >= mask.length) { - return newValue; - } - - if (iterator >= currValue.length) { - selectionRef.current = index; - return newValue; - } + var onChangeHandler = function onChangeHandler(e) { + e.stopPropagation(); + if (disabled) return; + if (onChange) onChange(e); + }; - var m = mask[index]; + if (props.optionRenderer) { + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-DropdownOption--Custom", + className: customOptionClass, + "data-disabled": disabled, + onMouseEnter: onUpdateActiveOption + }, !checkboxes && { + onClick: onClick + }), props.optionRenderer({ + optionData: optionData, + selected: selected, + onChange: onChange, + active: active, + index: index + })); + } - if (isEditable(index)) { - if (currValue[iterator].match(m)) { - newValue += currValue[iterator]; - } else { - newValue += placeholderChar; - } + var renderSubInfo = function renderSubInfo(subInfo) { + var labelAppearance = disabled ? 'disabled' : selected && !menu ? 'white' : 'subtle'; + var subInfoColor = disabled ? 'inverse-lightest' : selected && !menu ? 'primary-dark' : 'inverse-lighter'; + var iconAppearance = selected ? 'white' : 'disabled'; - newIterator++; - } else { - newValue += m; + if (typeof subInfo === 'string') { + return /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-DropdownOption--WITH_META--Meta", + color: subInfoColor, + size: "small", + weight: "medium", + className: "Option-subInfo" + }, subInfo); } - newValue += insertAtIndex(currValue, newIndex, newIterator); - return newValue; + var _a = subInfo.list, + list = _a === void 0 ? [] : _a, + seperator = subInfo.seperator; + return /*#__PURE__*/React__namespace.createElement(MetaList, { + list: list, + seperator: seperator, + iconAppearance: iconAppearance, + labelAppearance: labelAppearance, + seperatorAppearance: iconAppearance, + "data-test": "DesignSystem-DropdownOption--WITH_META--MetaList" + }); }; - var onChangeHandler = function onChangeHandler(e) { - var inputVal = e.currentTarget.value; - var currSelection = getCurrSelection(); - var start = Math.min(selection.start, currSelection.start); - var end = currSelection.end; - var cursorPosition = start; - var enteredVal = ''; - var updatedVal = ''; - var removedLength = 0; - var insertedStringLength = 0; - enteredVal = inputVal.slice(start, end); - updatedVal = insertAtIndex(enteredVal, start); - insertedStringLength = updatedVal.length; - - if (currSelection.end > selection.end) { - removedLength = insertedStringLength ? getSelectionLength(selection) : 0; - } else if (inputVal.length < value.length) { - removedLength = value.length - inputVal.length; - } + return component({ + selected: selected, + index: index, + renderSubInfo: renderSubInfo, + optionData: optionData, + textClassName: textClassName, + appearance: appearance, + color: color, + onClickHandler: onClickHandler, + onChangeHandler: onChangeHandler, + onUpdateActiveOption: onUpdateActiveOption, + dataTest: "DesignSystem-DropdownOption--" + type, + className: checkboxes ? CheckboxClassName : OptionClassName, + id: id + }); + }; - cursorPosition += insertedStringLength; - var maskedVal = value.split(''); - - for (var i = 0; i < insertedStringLength; i++) { - maskedVal[start + i] = updatedVal[i]; - } + var PlaceholderParagraph = function PlaceholderParagraph(props) { + var _a, _b; - for (var i = 0; i < removedLength; i++) { - var index = start + insertedStringLength + i; - maskedVal[index] = getPlaceholderValue(index, index); - } + var length = props.length, + size = props.size, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]((_a = { + 'Placeholder--animation': true, + PlaceholderParagraph: true + }, _a["PlaceholderParagraph--" + size] = size, _a)); + var wrapperClass = classNames__default["default"]((_b = { + 'PlaceholderParagraph-wrapper': true + }, _b["PlaceholderParagraph-wrapper--length-" + length] = length, _b["PlaceholderParagraph-wrapper--size-" + size] = size, _b), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: wrapperClass + }), /*#__PURE__*/React__namespace.createElement("span", { + className: classes + })); + }; + PlaceholderParagraph.displayName = 'PlaceholderParagraph'; + PlaceholderParagraph.defaultProps = { + length: 'medium' + }; - var newCursorPosition = getNewCursorPosition(removedLength ? 'left' : 'right', cursorPosition); + var PlaceholderImage = function PlaceholderImage(props) { + var _a; - if (removedLength === 1 && !updatedVal.length && !isEditable(cursorPosition) && newCursorPosition > 0) { - cursorPosition = newCursorPosition; - cursorPosition--; - maskedVal[cursorPosition] = placeholderChar; - } else if (removedLength !== 1) { - cursorPosition = newCursorPosition; - } + var _b = props.size, + size = _b === void 0 ? 'small' : _b, + round = props.round, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]((_a = { + PlaceholderImage: true, + 'Placeholder--animation': true + }, _a['PlaceholderImage--round'] = round, _a["PlaceholderImage--" + size] = size, _a), className); + return /*#__PURE__*/React__namespace.createElement("span", __assign({}, baseProps, { + className: classes + })); + }; + PlaceholderImage.displayName = 'PlaceholderImage'; + PlaceholderImage.defaultProps = { + size: 'small' + }; - var newValue = maskedVal.slice(0, mask.length).join(''); - window.requestAnimationFrame(function () { - return setCursorPosition(cursorPosition); - }); + var Placeholder = function Placeholder(props) { + var _a, _b; - if (isValid(validators, newValue)) { - setValue(newValue); - if (onChange) onChange(e, newValue); - } - }; + var imageSize = props.imageSize, + withImage = props.withImage, + round = props.round, + children = props.children, + className = props.className; + var baseProps = extractBaseProps(props); + var paragraphClasses = classNames__default["default"]((_a = { + 'Placeholder-paragraph': true + }, _a['Placeholder-paragraph--withImage'] = withImage, _a)); + var classes = classNames__default["default"]((_b = {}, _b['Placeholder'] = true, _b), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-Placeholder" + }, baseProps, { + className: classes + }), withImage && /*#__PURE__*/React__namespace.createElement(PlaceholderImage, { + round: round, + size: imageSize, + "data-test": "DesignSystem-Placeholder--Image" + }), children && /*#__PURE__*/React__namespace.createElement("div", { + className: paragraphClasses, + "data-test": "DesignSystem-Placeholder--Paragraph" + }, children)); + }; + Placeholder.displayName = 'Placeholder'; + Placeholder.defaultProps = { + withImage: true, + imageSize: 'small' + }; - var onBlurHandler = function onBlurHandler(e) { - var inputVal = e.currentTarget.value; + var Loading = function Loading(props) { + var loadingType = props.loadingType, + optionIndex = props.optionIndex; + var placeholderSizes = ['medium', 'large']; + var size = placeholderSizes[(optionIndex + 2) % 2]; - if (clearOnEmptyBlur) { - if (inputVal === getPlaceholderValue()) { - setValue(''); - inputVal = ''; - } - } + switch (loadingType) { + case 'DEFAULT': + return /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: size, + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + }); - if (onBlur) onBlur(e, inputVal); - if (deferId.current) window.cancelAnimationFrame(deferId.current); - }; + case 'WITH_ICON': + return /*#__PURE__*/React__namespace.createElement(Placeholder, { + withImage: true, + round: true, + "data-test": "DesignSystem-Dropdown--Placeholder" + }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: "large" + })); - var onClearHandler = function onClearHandler(e) { - setValue(getPlaceholderValue()); - window.requestAnimationFrame(function () { - return setCursorPosition(getDefaultSelection().start); - }); - if (onClear) onClear(e); - }; + case 'WITH_META': + return /*#__PURE__*/React__namespace.createElement(Placeholder, { + withImage: false, + "data-test": "DesignSystem-Dropdown--Placeholder" + }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: "large", + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + }), /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: "medium", + size: "xxs", + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + })); - var onFocusHandler = function onFocusHandler(e) { - deferId.current = window.requestAnimationFrame(updateSelection); + case 'WITH_CHECKBOX': + return /*#__PURE__*/React__namespace.createElement(Placeholder, { + withImage: true, + "data-test": "DesignSystem-Dropdown--Placeholder" + }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: "large" + })); - if (!value) { - setValue(getPlaceholderValue()); - window.requestAnimationFrame(function () { - return setSelectionPos(getDefaultSelection()); - }); - } + case 'ICON_WITH_META': + return /*#__PURE__*/React__namespace.createElement(Placeholder, { + withImage: true, + round: true, + imageSize: 'medium', + "data-test": "DesignSystem-Dropdown--Placeholder" + }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: "large", + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + }), /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: "medium", + size: "xxs", + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + })); + } - if (onFocus) onFocus(e); - }; + return null; + }; - var classes = classNames__default['default']({ - 'd-flex flex-column flex-grow-1': true - }, className); + var errorTitle = { + FAILED_TO_FETCH: 'Failed to fetch data', + NO_RECORDS_FOUND: 'No results found', + DEFAULT: 'No record available' + }; + var errorDescription = { + FAILED_TO_FETCH: "We couldn't load the data, try reloading.", + NO_RECORDS_FOUND: 'Try modifying your search to find what you are looking for.', + DEFAULT: 'We have nothing to show you at the moment.' + }; + var ErrorTemplate = function ErrorTemplate(_a) { + var dropdownStyle = _a.dropdownStyle, + errorType = _a.errorType, + updateOptions = _a.updateOptions; return /*#__PURE__*/React__namespace.createElement("div", { - className: classes - }, /*#__PURE__*/React__namespace.createElement(Input, __assign({}, rest, { - value: value, - error: error, - required: required, - onFocus: onFocusHandler, - onChange: onChangeHandler, - onClear: onClearHandler, - onBlur: onBlurHandler, - autoComplete: 'off', - ref: ref - })), /*#__PURE__*/React__namespace.createElement(Caption, { - error: error, - withInput: true, - hide: !caption - }, caption)); - }); - InputMask.displayName = 'InputMask'; - InputMask.utils = { - getDefaultValue: getDefaultValue + className: "Dropdown-wrapper px-7 d-flex", + style: dropdownStyle, + "data-test": "DesignSystem-Dropdown--wrapper" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex flex-column justify-content-center align-items-center w-100", + "data-test": "DesignSystem-Dropdown--errorWrapper" + }, /*#__PURE__*/React__namespace.createElement(Text, { + className: "text-align-center mb-3", + weight: "strong" + }, errorTitle[errorType]), /*#__PURE__*/React__namespace.createElement(Text, { + className: "text-align-center mb-6", + weight: "medium", + size: "small", + appearance: "subtle" + }, errorDescription[errorType]), errorType === 'FAILED_TO_FETCH' && /*#__PURE__*/React__namespace.createElement(Button, { + size: "tiny", + largeIcon: true, + "aria-label": "reload", + icon: "refresh", + iconAlign: "left", + onClick: function onClick() { + return updateOptions(); + } + }, "Reload"))); }; - var Label = function Label(props) { - var _a; + var alignmentMapping = { + right: 'bottom-start', + left: 'bottom-end' + }; - var required = props.required, - optional = props.optional, - withInput = props.withInput, - disabled = props.disabled, - children = props.children, - className = props.className, - rest = __rest(props, ["required", "optional", "withInput", "disabled", "children", "className"]); + var DropdownList = function DropdownList(props) { + var _a, _b, _c; + var _d = props.listOptions, + listOptions = _d === void 0 ? [] : _d, + inputRef = props.inputRef, + _e = props.align, + align = _e === void 0 ? 'right' : _e, + _f = props.optionType, + optionType = _f === void 0 ? 'DEFAULT' : _f, + _g = props.applyButtonLabel, + applyButtonLabel = _g === void 0 ? 'Apply' : _g, + _h = props.cancelButtonLabel, + cancelButtonLabel = _h === void 0 ? 'Cancel' : _h, + _j = props.truncateOption, + truncateOption = _j === void 0 ? true : _j, + _k = props.withSelectAll, + withSelectAll = _k === void 0 ? true : _k, + _l = props.maxHeight, + maxHeight = _l === void 0 ? 200 : _l, + customTrigger = props.customTrigger, + selected = props.selected, + tempSelected = props.tempSelected, + previousSelected = props.previousSelected, + remainingOptions = props.remainingOptions, + firstEnabledOption = props.firstEnabledOption, + dropdownOpen = props.dropdownOpen, + menu = props.menu, + searchTerm = props.searchTerm, + showApplyButton = props.showApplyButton, + withCheckbox = props.withCheckbox, + withSearch = props.withSearch, + popoverOptions = props.popoverOptions, + onSearchChange = props.onSearchChange, + optionRenderer = props.optionRenderer, + applyOptions = props.applyOptions, + cancelOptions = props.cancelOptions, + toggleDropdown = props.toggleDropdown, + className = props.className, + _m = props.searchPlaceholder, + searchPlaceholder = _m === void 0 ? 'Search..' : _m, + scrollIndex = props.scrollIndex, + updateOptions = props.updateOptions, + noResultMessage = props.noResultMessage, + errorType = props.errorType, + loadingOptions = props.loadingOptions; var baseProps = extractBaseProps(props); - var LabelClass = classNames__default['default']((_a = { - Label: true - }, _a['Label--withInput'] = withInput, _a['Label--optional'] = optional, _a), className); - var classes = classNames__default['default']({ - 'Label-text': true, - 'Label--disabled': disabled - }); + var dropdownRef = /*#__PURE__*/React__namespace.createRef(); + var triggerRef = /*#__PURE__*/React__namespace.createRef(); + var dropdownTriggerRef = /*#__PURE__*/React__namespace.createRef(); + var dropdownCancelButtonRef = /*#__PURE__*/React__namespace.createRef(); + var dropdownApplyButtonRef = /*#__PURE__*/React__namespace.createRef(); - var renderInfo = function renderInfo(isRequired, isOptional) { - if (isRequired === void 0) { - isRequired = false; - } + var _o = React__namespace.useState(), + popoverStyle = _o[0], + setPopoverStyle = _o[1]; - if (isRequired) { - return /*#__PURE__*/React__namespace.createElement("span", { - className: "Label-requiredIndicator", - "data-test": "DesignSystem-Label--RequiredIndicator" - }); - } + var _p = React__namespace.useState(firstEnabledOption), + cursor = _p[0], + setCursor = _p[1]; - if (isOptional) { - return /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-Label--OptionalText", - appearance: "subtle", - className: "Label-optionalText" - }, "(optional)"); - } + var _q = React__namespace.useState(), + minHeight = _q[0], + setMinHeight = _q[1]; - return null; + var getMinHeight = function getMinHeight() { + var dropdownWrapper = document.querySelector('.Dropdown-wrapper'); + var minHeight = dropdownWrapper === null || dropdownWrapper === void 0 ? void 0 : dropdownWrapper.offsetHeight; + minHeight && setMinHeight(minHeight); }; - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-Label" - }, baseProps, { - className: LabelClass - }), /*#__PURE__*/React__namespace.createElement(GenericText, __assign({ - "data-test": "DesignSystem-Label--Text", - className: classes, - componentType: "label" - }, rest), children), renderInfo(required, optional)); - }; - Label.displayName = 'Label'; + var isDropdownListBlank = listOptions.length === 0 && !loadingOptions && selected.length <= 0; + React__namespace.useEffect(function () { + var _a; - var Caption = function Caption(props) { - var _a, _b; + var timer; - var error = props.error, - hide = props.hide, - withInput = props.withInput, - children = props.children, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = { - Caption: true - }, _a['Caption--hidden'] = hide, _a['Caption--withInput'] = withInput, _a), className); - var errorIconClass = classNames__default['default']((_b = {}, _b['Caption-icon'] = true, _b)); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: classes - }), error && /*#__PURE__*/React__namespace.createElement("div", { - className: errorIconClass - }, /*#__PURE__*/React__namespace.createElement(Icon, { - size: 14, - name: 'error', - appearance: 'alert' - })), /*#__PURE__*/React__namespace.createElement(Text, { - appearance: error ? 'destructive' : 'subtle', - size: "small", - weight: "medium" - }, "" + children)); - }; - Caption.displayName = 'Caption'; + if (dropdownOpen) { + var width = props.width, + minWidth = props.minWidth, + maxWidth = props.maxWidth; + var popperWidth = (_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.clientWidth; + var popperMinWidth = showApplyButton ? 176 : menu ? 128 : popperWidth; + var popperWrapperStyle = { + width: width ? width : popperWidth, + minWidth: minWidth ? minWidth : popperMinWidth, + maxWidth: maxWidth ? maxWidth : '100%' + }; + requestAnimationFrame(getMinHeight); + setPopoverStyle(popperWrapperStyle); - var Legend = function Legend(props) { - var _a; + if (scrollIndex && tempSelected.length === 0) { + timer = setTimeout(function () { + scrollToOptionIndex(scrollIndex, listOptions); + }, 100); + } + } - var iconAppearance = props.iconAppearance, - iconSize = props.iconSize, - labelAppearance = props.labelAppearance, - children = props.children, - labelWeight = props.labelWeight, - _onMouseEnter = props.onMouseEnter, - _onMouseLeave = props.onMouseLeave, - _onClick = props.onClick, - className = props.className; - var baseProps = extractBaseProps(props); - var legendClass = classNames__default['default']((_a = {}, _a['Legend'] = true, _a), className); - var styles = { - background: "var(--" + iconAppearance + ")", - height: iconSize + "px", - width: iconSize + "px" + return function () { + clearTimeout(timer); + }; + }, [dropdownOpen]); + React__namespace.useEffect(function () { + if (firstEnabledOption !== cursor) setCursor(firstEnabledOption); + }, [firstEnabledOption]); + var _r = props.triggerSize, + triggerSize = _r === void 0 ? 'regular' : _r, + _s = props.placeholder, + placeholder = _s === void 0 ? 'Select' : _s, + icon = props.icon, + error = props.error, + disabled = props.disabled, + inlineLabel = props.inlineLabel, + triggerLabel = props.triggerLabel, + iconType = props.iconType; + var CustomTrigger = customTrigger ? customTrigger(triggerLabel ? triggerLabel : placeholder) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null); + var NewCustomTrigger = /*#__PURE__*/React__namespace.cloneElement(CustomTrigger, { + tabIndex: 0, + ref: dropdownTriggerRef + }); + var trigger = customTrigger ? NewCustomTrigger : /*#__PURE__*/React__namespace.createElement(DropdownButton, { + placeholder: placeholder, + triggerSize: triggerSize, + open: dropdownOpen, + icon: icon, + disabled: disabled, + inlineLabel: inlineLabel, + menu: menu, + error: error, + ref: dropdownTriggerRef, + iconType: iconType + }, triggerLabel); + var dropdownStyle = { + maxHeight: maxHeight, + overflowY: 'auto', + overflowX: 'hidden', + minHeight: minHeight + }; + var loaderStyle = { + maxHeight: minHeight ? minHeight : maxHeight, + overflowY: 'auto', + overflowX: 'hidden', + minHeight: minHeight }; - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: legendClass, - onClick: function onClick(e) { - return _onClick && _onClick(e); - }, - onMouseEnter: function onMouseEnter(e) { - return _onMouseEnter && _onMouseEnter(e); - }, - onMouseLeave: function onMouseLeave(e) { - return _onMouseLeave && _onMouseLeave(e); - } - }), /*#__PURE__*/React__namespace.createElement("span", { - className: "Legend-icon", - style: styles - }), /*#__PURE__*/React__namespace.createElement(Text, { - appearance: labelAppearance, - weight: labelWeight - }, children)); - }; - Legend.displayName = 'Legend'; - Legend.defaultProps = { - iconAppearance: 'inverse', - iconSize: 16 - }; - var Editable = function Editable(props) { - var _a; + var defaultErrorTemplate = function defaultErrorTemplate() { + return /*#__PURE__*/React__namespace.createElement(ErrorTemplate, { + dropdownStyle: __assign(__assign({}, dropdownStyle), { + minHeight: maxHeight + }), + updateOptions: updateOptions, + errorType: errorType + }); + }; - var className = props.className, - onChange = props.onChange, - editing = props.editing, - children = props.children; - var baseProps = extractBaseProps(props); - var EditableClass = classNames__default['default']((_a = {}, _a['Editable'] = true, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-Editable" - }, baseProps, { - className: EditableClass - }), /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-EditableWrapper", - onClick: function onClick() { - return onChange('edit'); - }, - onMouseEnter: function onMouseEnter() { - return !editing && onChange('hover'); - }, - onMouseLeave: function onMouseLeave() { - return !editing && onChange('default'); - } - }, children)); - }; - Editable.displayName = 'Editable'; + var getDropdownSectionClass = function getDropdownSectionClass(showClearButton) { + var _a; - var EditableDropdown = function EditableDropdown(props) { - var _a, _b, _c; + return classNames__default["default"]((_a = {}, _a['Dropdown-section'] = true, _a['Dropdown-section--withClear'] = showClearButton, _a)); + }; - var placeholder = props.placeholder, - dropdownOptions = props.dropdownOptions, - className = props.className, - customTriggerRenderer = props.customTriggerRenderer; + var dropdownClass = classNames__default["default"]((_a = {}, _a['Dropdown'] = true, _a), className); + var dropdownWrapperClass = classNames__default["default"]((_b = {}, _b['Dropdown-wrapper'] = true, _b['Dropdown-wrapper--wrap'] = !truncateOption, _b)); + var SelectAllClass = classNames__default["default"]((_c = {}, _c['Option-checkbox--active'] = cursor === 0, _c['Option-checkboxWrapper'] = true, _c['Option-checkbox'] = true, _c['OptionWrapper'] = true, _c)); - var onDropdownChange = dropdownOptions.onChange, - onDropdownClose = dropdownOptions.onClose, - rest = __rest(dropdownOptions, ["onChange", "onClose"]); + var onToggleDropdown = function onToggleDropdown(open, type) { + var _a; - var _d = React__namespace.useState(placeholder), - label = _d[0], - setLabel = _d[1]; + toggleDropdown(open, type); + if (!disabled) (_a = dropdownTriggerRef.current) === null || _a === void 0 ? void 0 : _a.focus(); + setCursor(firstEnabledOption); + }; - var _e = React__namespace.useState(false), - editing = _e[0], - setEditing = _e[1]; + var onCancelOptions = function onCancelOptions() { + var _a; - var _f = React__namespace.useState(false), - showComponent = _f[0], - setShowComponent = _f[1]; + cancelOptions(); + (_a = dropdownTriggerRef.current) === null || _a === void 0 ? void 0 : _a.focus(); + }; - var CompClass = classNames__default['default']((_a = {}, _a['EditableDropdown'] = true, _a), className); - var DefaultCompClass = classNames__default['default']((_b = {}, _b['EditableDropdown-default'] = true, _b['d-none'] = showComponent, _b)); - var EditableDropdownClass = classNames__default['default']((_c = {}, _c['d-none'] = !showComponent, _c)); - var baseProps = extractBaseProps(props); + var onApplyOptions = function onApplyOptions() { + var _a; - var getLabel = function getLabel(updatedLabel) { - setLabel(updatedLabel); + applyOptions(); + (_a = dropdownTriggerRef.current) === null || _a === void 0 ? void 0 : _a.focus(); }; - var onChangeHandler = function onChangeHandler(eventType) { - switch (eventType) { - case 'edit': - setEditing(true); - - case 'hover': - setShowComponent(true); - return; + var optionClickHandler = function optionClickHandler(item) { + var _a; - case 'default': - setShowComponent(false); - return; - } + props.onOptionSelect(item); + (_a = dropdownTriggerRef.current) === null || _a === void 0 ? void 0 : _a.focus(); }; - var onChange = function onChange(value) { - setEditing(false); - setShowComponent(false); - if (onDropdownChange) onDropdownChange(value); + var searchClearHandler = function searchClearHandler() { + setCursor(firstEnabledOption); + if (onSearchChange && searchTerm) onSearchChange(''); }; - var onClose = function onClose(selected) { - setEditing(false); - setShowComponent(false); - if (onDropdownClose) onDropdownClose(selected); + var searchHandler = function searchHandler(event) { + setCursor(firstEnabledOption); + if (onSearchChange) onSearchChange(event.target.value); }; - var renderComponent = function renderComponent(componentLabel) { - if (customTriggerRenderer) return customTriggerRenderer(componentLabel); - return componentLabel; + var updateActiveOption = function updateActiveOption(index, parentCheckbox) { + var updatedIndex = withCheckbox && withSelectAll && !props.async && !parentCheckbox ? index + 1 : index; + setCursor(updatedIndex); }; - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-EditableDropdown" - }, baseProps, { - className: CompClass - }), /*#__PURE__*/React__namespace.createElement(Editable, { - onChange: onChangeHandler, - editing: editing - }, /*#__PURE__*/React__namespace.createElement(Dropdown, __assign({ - placeholder: placeholder, - onChange: onChange, - getLabel: getLabel, - onClose: onClose, - className: EditableDropdownClass, - "data-test": "DesignSystem-EditableDropdown--Dropdown" - }, rest)), /*#__PURE__*/React__namespace.createElement("div", { - className: DefaultCompClass, - "data-test": "DesignSystem-EditableDropdown--Default" - }, renderComponent(label || placeholder)))); - }; - EditableDropdown.defaultProps = { - placeholder: '', - dropdownOptions: {} - }; + var renderFooter = function renderFooter() { + var _a = props.footerLabel, + footerLabel = _a === void 0 ? 'Search for more options' : _a; + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Dropdown-footer" + }, /*#__PURE__*/React__namespace.createElement(Text, { + size: "small", + appearance: 'subtle' + }, footerLabel)); + }; - var Link = function Link(props) { - var _a; + var renderGroups = function renderGroups(group, selectedGroup) { + var onClearOptions = props.onClearOptions; + var isClearDisabled = selected.every(function (option) { + return option.disabled; + }); + return /*#__PURE__*/React__namespace.createElement("div", { + className: getDropdownSectionClass(selectedGroup) + }, /*#__PURE__*/React__namespace.createElement(Text, { + size: "small", + appearance: 'subtle' + }, group), selectedGroup && /*#__PURE__*/React__namespace.createElement(Button, { + onClick: onClearOptions, + disabled: isClearDisabled, + appearance: "transparent", + size: "tiny", + type: "button" + }, "Clear")); + }; - var children = props.children, - className = props.className, - appearance = props.appearance, - size = props.size, - disabled = props.disabled, - rest = __rest(props, ["children", "className", "appearance", "size", "disabled"]); - - var classes = classNames__default['default']((_a = { - Link: true - }, _a['Link--disabled'] = disabled, _a["Link--" + size] = size, _a["Link--" + appearance] = appearance, _a), className); - return /*#__PURE__*/React__namespace.createElement(GenericText, __assign({ - "data-test": "DesignSystem-Link", - className: classes, - componentType: "a" - }, rest), children); - }; - Link.displayName = 'Link'; - Link.defaultProps = { - appearance: 'default', - size: 'regular', - disabled: false - }; - - var IconMapping$1 = { - success: 'check_circle', - info: 'info', - warning: 'warning', - alert: 'error' - }; - var Message = function Message(props) { - var _a, _b, _c, _d; - - var appearance = props.appearance, - actions = props.actions, - title = props.title, - className = props.className; - var baseProps = extractBaseProps(props); - var MessageClass = classNames__default['default']((_a = {}, _a['Message'] = true, _a["Message--" + appearance] = appearance, _a), className); - var IconClass = classNames__default['default']((_b = {}, _b['Message-icon'] = true, _b["Message-icon--" + appearance] = appearance, _b['Message-icon--withTitle'] = title, _b)); - var TitleClass = classNames__default['default']((_c = {}, _c['Message-heading'] = true, _c["Message-heading--" + appearance] = appearance, _c)); - var DescriptionClass = classNames__default['default']((_d = {}, _d['Message-text'] = true, _d["Message-text--" + appearance] = appearance, _d)); + var renderApplyButton = function renderApplyButton() { + var disable = _isEqual(previousSelected, tempSelected) || props.loadingOptions; + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Dropdown-buttonWrapper" + }, /*#__PURE__*/React__namespace.createElement(Button, { + ref: dropdownCancelButtonRef, + className: "mr-4", + appearance: 'basic', + onClick: onCancelOptions, + disabled: props.loadingOptions, + size: 'tiny', + tabIndex: -1, + "data-test": "DesignSystem-Dropdown-CancelButton", + type: "button" + }, cancelButtonLabel), /*#__PURE__*/React__namespace.createElement(Button, { + ref: dropdownApplyButtonRef, + appearance: 'primary', + disabled: disable, + size: 'tiny', + onClick: onApplyOptions, + "data-test": "DesignSystem-Dropdown-ApplyButton", + type: "button" + }, applyButtonLabel)); + }; - var renderDescription = function renderDescription(description, children) { - if (description || typeof children === 'string') { - return /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-Message--Description", - className: DescriptionClass - }, description || (typeof children === 'string' ? children : '')); - } + var renderSearch = function renderSearch() { + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Dropdown-inputWrapper" + }, /*#__PURE__*/React__namespace.createElement(Input, { + name: "Dropdown-search", + icon: 'search', + value: searchTerm, + placeholder: searchPlaceholder, + autoFocus: true, + onChange: searchHandler, + onClear: searchClearHandler, + ref: inputRef, + autoComplete: 'off', + className: "Dropdown-input" + })); + }; - if (children) { + var renderLoading = function renderLoading(loadersLength) { + var arr = Array(loadersLength).fill('Loading'); + var type = withCheckbox ? 'WITH_CHECKBOX' : optionType; + return arr.map(function (option, ind) { return /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-Message--Description", - className: "Message-description" - }, children); - } - - return null; + className: "Option-loading", + key: option + "-" + ind + }, /*#__PURE__*/React__namespace.createElement(Loading, { + loadingType: type, + optionIndex: ind + })); + }); }; - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-Message" - }, baseProps, { - className: MessageClass - }), appearance !== 'default' && /*#__PURE__*/React__namespace.createElement(Icon, { - "data-test": "DesignSystem-Message--Icon", - name: IconMapping$1[appearance], - appearance: appearance, - className: IconClass - }), /*#__PURE__*/React__namespace.createElement("div", null, title && /*#__PURE__*/React__namespace.createElement(Heading, { - "data-test": "DesignSystem-Message--Title", - size: "s", - className: TitleClass - }, title), renderDescription(props.description, props.children), actions && /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-Message--actions", - className: "Message-actions" - }, actions))); - }; - Message.displayName = 'Message'; - Message.defaultProps = { - appearance: 'default', - description: '' - }; - - var Meta = function Meta(props) { - var label = props.label, - icon = props.icon, - iconAppearance = props.iconAppearance, - labelAppearance = props.labelAppearance; - return /*#__PURE__*/React__namespace.createElement("span", { - className: 'Meta' - }, icon && /*#__PURE__*/React__namespace.createElement(Icon, { - name: icon, - appearance: iconAppearance, - className: 'Meta-icon' - }), /*#__PURE__*/React__namespace.createElement(Text, { - appearance: labelAppearance - }, label)); - }; - Meta.displayName = 'Meta'; + var renderSelectAll = function renderSelectAll() { + var _a = props.selectAllLabel, + selectAllLabel = _a === void 0 ? 'Select All' : _a, + selectAll = props.selectAll, + onSelectAll = props.onSelectAll; + var label = selectAllLabel.trim() ? selectAllLabel.trim() : 'Select All'; + var id = "Checkbox-option-" + label.toLowerCase().replace(/\s+/g, '') + "-" + new Date().getTime(); + return /*#__PURE__*/React__namespace.createElement("div", { + className: SelectAllClass, + onMouseEnter: function onMouseEnter() { + return updateActiveOption(0, true); + } + }, /*#__PURE__*/React__namespace.createElement("label", { + htmlFor: id, + className: "Checkbox-label" + }, /*#__PURE__*/React__namespace.createElement(Checkbox, { + label: label, + onChange: onSelectAll, + checked: selectAll.checked, + indeterminate: selectAll.indeterminate, + tabIndex: -1, + className: "OptionCheckbox", + id: id + }))); + }; - var MetaList = function MetaList(props) { - var _a, _b, _c; + var renderOptions = function renderOptions(item, index) { + var selectAllPresent = _isSelectAllPresent(searchTerm, remainingOptions, withSelectAll, withCheckbox); - var list = props.list, - seperator = props.seperator, - seperatorAppearance = props.seperatorAppearance, - iconAppearance = props.iconAppearance, - labelAppearance = props.labelAppearance, - className = props.className; - var baseProps = extractBaseProps(props); - var MetaClass = classNames__default['default']((_a = {}, _a['MetaList'] = true, _a), className); - var SeperatorClass = classNames__default['default']((_b = {}, _b['MetaList-seperator'] = true, _b)); - var LeftSeperatorClass = classNames__default['default']((_c = {}, _c['MetaList-seperator'] = true, _c['MetaList-seperator--left'] = true, _c)); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: MetaClass - }), seperator && /*#__PURE__*/React__namespace.createElement(Icon, { - name: "fiber_manual_record", - size: 8, - className: LeftSeperatorClass, - appearance: seperatorAppearance - }), list.map(function (item, ind) { - var _a = item.label, - label = _a === void 0 ? '' : _a, - icon = item.icon; - var rightSeperator = ind !== list.length - 1; - return /*#__PURE__*/React__namespace.createElement("span", { - key: ind, - className: "MetaList-item" - }, /*#__PURE__*/React__namespace.createElement(Meta, { - label: label, - icon: icon, - iconAppearance: iconAppearance, - labelAppearance: labelAppearance - }), rightSeperator && /*#__PURE__*/React__namespace.createElement(Icon, { - name: "fiber_manual_record", - size: 8, - className: SeperatorClass, - appearance: seperatorAppearance + var active = selectAllPresent ? index + 1 === cursor : index === cursor; + var optionIsSelected = tempSelected.findIndex(function (option) { + return option.value === item.value; + }) !== -1; + var id = "Checkbox-option-" + index + "-" + item.value + "-" + new Date().getTime(); + return /*#__PURE__*/React__namespace.createElement("label", { + htmlFor: id + }, /*#__PURE__*/React__namespace.createElement(Option, { + optionData: item, + truncateOption: truncateOption, + selected: optionIsSelected, + index: index, + updateActiveOption: updateActiveOption, + optionRenderer: optionRenderer, + active: active, + checkboxes: withCheckbox, + menu: menu, + onClick: function onClick() { + return optionClickHandler(item); + }, + onChange: function onChange(e) { + return props.onSelect(item, e.target.checked); + }, + optionType: props.optionType, + id: id })); - })); - }; - MetaList.displayName = 'MetaList'; - MetaList.defaultProps = { - seperatorAppearance: 'disabled', - iconAppearance: 'disabled', - labelAppearance: 'subtle' - }; + }; - var OutsideClick = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { - var _a; + var renderDropdownSection = function renderDropdownSection() { + var _a; - var children = props.children, - className = props.className, - onOutsideClick = props.onOutsideClick, - rest = __rest(props, ["children", "className", "onOutsideClick"]); + var _b = props.selectedSectionLabel, + selectedSectionLabel = _b === void 0 ? 'Selected Items' : _b, + _c = props.allItemsSectionLabel, + allItemsSectionLabel = _c === void 0 ? 'All Items' : _c, + _d = props.loadersCount, + loadersCount = _d === void 0 ? 10 : _d, + _e = props.errorTemplate, + errorTemplate = _e === void 0 ? defaultErrorTemplate : _e; - var innerRef = React__namespace.useRef(null); - React__namespace.useImperativeHandle(ref, function () { - return innerRef.current; - }, [innerRef]); - React__namespace.useEffect(function () { - document.addEventListener('click', handleOutsideClick, true); - return function () { - document.removeEventListener('click', handleOutsideClick); - }; - }, []); - var handleOutsideClick = React__namespace.useCallback(function (event) { - var element = innerRef; + var selectAllPresent = _isSelectAllPresent(searchTerm, remainingOptions, withSelectAll, withCheckbox); - if (!event.target || !element.current) { - return; + var groupedListOptions = groupListOptions(listOptions); + + if (loadersCount && loadingOptions) { + return /*#__PURE__*/React__namespace.createElement("div", { + className: 'Dropdown-loading' + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "Dropdown-wrapper", + style: loaderStyle + }, renderLoading(loadersCount))); } - if (!ReactDOM__namespace.findDOMNode(element.current).contains(event.target)) { - onOutsideClick(event); + if (isDropdownListBlank) { + if (noResultMessage) { + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Dropdown-wrapper w-100", + style: dropdownStyle, + "data-test": "DesignSystem-Dropdown--errorWrapper" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: 'Option' + }, /*#__PURE__*/React__namespace.createElement("div", { + className: 'Option-subinfo' + }, noResultMessage))); + } else { + return errorTemplate && errorTemplate({ + errorType: errorType + }); + } } - }, []); - var classes = classNames__default['default']((_a = {}, _a['OutsideClick'] = true, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - ref: innerRef - }, rest, { - className: classes - }), children); - }); - OutsideClick.displayName = 'OutsideClick'; - var Paragraph = function Paragraph(props) { - var _a; + return /*#__PURE__*/React__namespace.createElement("div", { + className: dropdownWrapperClass, + style: dropdownStyle, + ref: dropdownRef + }, selectAllPresent && renderSelectAll(), selected.length > 0 && renderGroups(selectedSectionLabel, true), selected.map(function (option, index) { + return renderOptions(option, index); + }), selected.length > 0 && listOptions.length - selected.length > 0 && !((_a = listOptions[0].group) === null || _a === void 0 ? void 0 : _a.trim()) && renderGroups(allItemsSectionLabel), groupedListOptions.map(function (option, index) { + var prevGroup = index > 0 ? groupedListOptions[index - 1].group : selected.length ? selectedSectionLabel : undefined; + var currentGroup = option.group; + var isGroupDifferent = prevGroup !== currentGroup; + var updatedIndex = index + selected.length; + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Option-checkboxWrapper", + key: index + }, isGroupDifferent && currentGroup && renderGroups(currentGroup), renderOptions(option, updatedIndex)); + }), props.async && remainingOptions > 0 && renderFooter()); + }; - var appearance = props.appearance, - children = props.children, - className = props.className, - rest = __rest(props, ["appearance", "children", "className"]); + var focusOption = function focusOption(direction, classes) { + var elements = document.querySelectorAll(classes); + var updatedCursor = direction === 'down' ? cursor + 1 : cursor - 1; + var startIndex = updatedCursor; + var endIndex = direction === 'down' ? elements.length : -1; - var classes = classNames__default['default']((_a = { - Text: true - }, _a["Text--" + appearance] = appearance, _a), className); - return /*#__PURE__*/React__namespace.createElement(GenericText, __assign({ - "data-test": "DesignSystem-Paragraph" - }, rest, { - className: classes, - componentType: "p" - }), children); - }; - Paragraph.displayName = 'Paragraph'; - Paragraph.defaultProps = { - appearance: 'default' - }; + while (startIndex !== endIndex) { + var node = elements[startIndex]; - var ProgressBar = function ProgressBar(props) { - var max = props.max, - value = props.value, - className = props.className; - var baseProps = extractBaseProps(props); - var style = { - width: value > 0 ? Math.min(value, max) * 100 / max + "%" : '0' + if (node.getAttribute('data-disabled') !== 'true') { + var element = elements[startIndex]; + if (element) scrollIntoView(dropdownRef.current, element); + if (element !== undefined) setCursor(startIndex); + break; + } + + if (direction === 'down') { + startIndex++; + } else { + startIndex--; + } + } }; - var ProgressBarClass = classNames__default['default']({ - ProgressBar: true - }, className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-ProgressBar" - }, baseProps, { - className: ProgressBarClass - }), /*#__PURE__*/React__namespace.createElement("div", { - className: 'ProgressBar-indicator', - style: style - })); - }; - ProgressBar.displayName = 'ProgressBar'; - ProgressBar.defaultProps = { - max: 100 - }; - var Radio = /*#__PURE__*/React__namespace.forwardRef(function (props, forwardedRef) { - var _a, _b, _c; + var onkeydown = function onkeydown(event) { + var _a, _b, _c; - var _d = props.size, - size = _d === void 0 ? 'regular' : _d, - label = props.label, - disabled = props.disabled, - onChange = props.onChange, - name = props.name, - value = props.value, - checked = props.checked, - defaultChecked = props.defaultChecked, - className = props.className, - rest = __rest(props, ["size", "label", "disabled", "onChange", "name", "value", "checked", "defaultChecked", "className"]); + var optionClass = '.OptionWrapper'; - var ref = React__namespace.useRef(null); - React__namespace.useImperativeHandle(forwardedRef, function () { - return ref.current; - }); - var RadioClass = classNames__default['default']((_a = {}, _a['Radio'] = true, _a['Radio--disabled'] = disabled, _a), className); - var RadioWrapper = classNames__default['default']((_b = {}, _b['Radio-wrapper'] = true, _b["Radio-wrapper--" + size] = size, _b)); - var RadioOuterWrapper = classNames__default['default']((_c = {}, _c['Radio-outerWrapper'] = true, _c["Radio-outerWrapper--" + size] = size, _c)); - var id = name + "-" + label + "-" + uidGenerator(); - return /*#__PURE__*/React__namespace.createElement("div", { - className: RadioClass - }, /*#__PURE__*/React__namespace.createElement("div", { - className: RadioOuterWrapper - }, /*#__PURE__*/React__namespace.createElement("input", __assign({}, rest, { - type: "radio", - disabled: disabled, - checked: checked, - defaultChecked: defaultChecked, - ref: ref, - name: name, - value: value, - onChange: onChange, - className: "Radio-input", - id: id - })), /*#__PURE__*/React__namespace.createElement("span", { - className: RadioWrapper - })), label && /*#__PURE__*/React__namespace.createElement("label", { - className: "Radio-label", - htmlFor: id - }, /*#__PURE__*/React__namespace.createElement(Text, { - size: size === 'tiny' ? 'small' : 'regular', - appearance: disabled ? 'disabled' : 'default' - }, label))); - }); - Radio.displayName = 'Radio'; + switch (event.key) { + case 'ArrowDown': + event.preventDefault(); + dropdownOpen ? focusOption('down', optionClass) : onToggleDropdown(!dropdownOpen); + break; - var Row = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { - var _a; + case 'ArrowUp': + event.preventDefault(); + dropdownOpen ? focusOption('up', optionClass) : onToggleDropdown(!dropdownOpen); + break; - var className = props.className, - children = props.children, - rest = __rest(props, ["className", "children"]); + case 'Enter': + { + var activeElement = document.activeElement; + + if (dropdownOpen && (inputRef.current === activeElement || dropdownTriggerRef.current === activeElement)) { + event.preventDefault(); + var classes = withCheckbox ? optionClass + " .Checkbox-input" : optionClass; + var elements = document.querySelectorAll(classes); + var element = elements[cursor]; + if (element) element.click(); + } - var classes = classNames__default['default']((_a = { - Row: true - }, _a["" + className] = className, _a)); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-Row", - ref: ref - }, rest, { - className: classes - }), children); - }); - Row.displayName = 'Row'; + if (!dropdownOpen) onToggleDropdown(!dropdownOpen); + break; + } - var StatusHint = function StatusHint(props) { - var _a, _b; + case 'Tab': + { + if (!showApplyButton && dropdownOpen) { + event.preventDefault(); + onToggleDropdown(false, 'onClick'); + return; + } - var appearance = props.appearance, - children = props.children, - _onMouseEnter = props.onMouseEnter, - _onMouseLeave = props.onMouseLeave, - _onClick = props.onClick, - className = props.className; - var baseProps = extractBaseProps(props); - var StatusHintClass = classNames__default['default']((_a = {}, _a['StatusHint'] = true, _a), className); - var StatusHintIconClass = classNames__default['default']((_b = {}, _b['StatusHint-icon'] = true, _b["StatusHint--" + appearance] = appearance, _b)); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-StatusHint" - }, baseProps, { - className: StatusHintClass, - onClick: function onClick(e) { - return _onClick && _onClick(e); - }, - onMouseEnter: function onMouseEnter(e) { - return _onMouseEnter && _onMouseEnter(e); - }, - onMouseLeave: function onMouseLeave(e) { - return _onMouseLeave && _onMouseLeave(e); - } - }), /*#__PURE__*/React__namespace.createElement("span", { - "data-test": "DesignSystem-StatusHint--Icon", - className: StatusHintIconClass - }), /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-StatusHint--Text", - weight: 'medium' - }, children)); - }; - StatusHint.displayName = 'StatusHint'; - StatusHint.defaultProps = { - appearance: 'default' - }; + var currentElement = document.activeElement; + var disabledApplyButton = (_a = dropdownApplyButtonRef.current) === null || _a === void 0 ? void 0 : _a.disabled; - var Pills = function Pills(props) { - var _a; + if ((currentElement === dropdownCancelButtonRef.current && disabledApplyButton || currentElement === dropdownApplyButtonRef.current) && dropdownOpen) { + event.preventDefault(); + onToggleDropdown(false, 'onClick'); + return; + } - var appearance = props.appearance, - children = props.children, - subtle = props.subtle, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = { - Pills: true - }, _a["Badge--" + appearance] = appearance && !subtle, _a["Badge--subtle-" + appearance] = subtle, _a), className); - return /*#__PURE__*/React__namespace.createElement("span", __assign({ - "data-test": "DesignSystem-Pills" - }, baseProps, { - className: classes - }), children); - }; - Pills.displayName = 'Pills'; - Pills.defaultProps = { - appearance: 'secondary' - }; + if (showApplyButton && dropdownOpen) { + event.preventDefault(); - var Spinner = function Spinner(props) { - var _a, _b; + if (currentElement === dropdownCancelButtonRef.current) { + (_b = dropdownApplyButtonRef.current) === null || _b === void 0 ? void 0 : _b.focus(); + } else { + (_c = dropdownCancelButtonRef.current) === null || _c === void 0 ? void 0 : _c.focus(); + } + } - var appearance = props.appearance, - size = props.size, - className = props.className; - var baseProps = extractBaseProps(props); - var wrapperClasses = classNames__default['default']((_a = { - Spinner: true - }, _a["Spinner--" + size] = size, _a), className); - var circleClasses = classNames__default['default']((_b = { - Circle: true - }, _b["Circle--" + appearance] = appearance, _b)); - var svgProps = { - viewBox: '0 0 50 50' - }; - var circleProps = { - cx: 25, - cy: 25, - r: 20, - fill: 'none', - strokeMiterlimit: '10', - strokeWidth: '4' + break; + } + } }; - return /*#__PURE__*/React__namespace.createElement("svg", __assign({}, baseProps, { - className: wrapperClasses - }, svgProps), /*#__PURE__*/React__namespace.createElement("circle", __assign({ - className: circleClasses - }, circleProps))); - }; - Spinner.displayName = 'Spinner'; - Spinner.defaultProps = { - appearance: 'primary', - size: 'medium' + + var enableSearch = withSearch || props.async; + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: dropdownClass, + ref: triggerRef, + onKeyDown: onkeydown + }), /*#__PURE__*/React__namespace.createElement(Popover, __assign({ + onToggle: onToggleDropdown, + trigger: trigger, + triggerClass: !menu ? 'w-100' : '', + open: dropdownOpen, + customStyle: popoverStyle, + position: alignmentMapping[align] + }, popoverOptions, { + "data-test": "DesignSystem-Dropdown--Popover" + }), enableSearch && renderSearch(), renderDropdownSection(), showApplyButton && withCheckbox && renderApplyButton())); }; - var ARROW_LEFT = 37; - var ARROW_RIGHT = 39; + DropdownList.displayName = 'DropdownList'; - var formatPercentage = function formatPercentage(ratio) { - return (ratio * 100).toFixed(2) + "%"; - }; - var countDecimalPlaces = function countDecimalPlaces(value) { - if (!isFinite(value)) return 0; + var inputRef = /*#__PURE__*/React__namespace.createRef(); - if (Math.floor(value) !== value) { - var valueArray = value.toString().split('.'); - return valueArray[1].length || 0; - } + var Dropdown = function (_super) { + __extends(Dropdown, _super); - return 0; - }; - var approxEqual = function approxEqual(a, b) { - var tolerance = 0.00001; - return Math.abs(a - b) <= tolerance; - }; - var clamp = function clamp(value, min, max) { - if (value == null) { - return value; - } + function Dropdown(props) { + var _this = _super.call(this, props) || this; - return Math.min(Math.max(value, min), max); - }; - var arraysEqual = function arraysEqual(oldValues, newValues) { - if (oldValues.length !== oldValues.length) return; - return newValues.every(function (value, index) { - return value === oldValues[index]; - }); - }; - function argMin(values, argFn) { - if (values.length === 0) { - return undefined; - } - - var minValue = values[0]; - var minArg = argFn(minValue); - - for (var index = 1; index < values.length; index++) { - var value = values[index]; - var arg = argFn(value); - - if (arg < minArg) { - minValue = value; - minArg = arg; - } - } - - return minValue; - } - function fillValues(values, startIndex, endIndex, fillValue) { - var inc = startIndex < endIndex ? 1 : -1; - - for (var index = startIndex; index !== endIndex + inc; index += inc) { - values[index] = fillValue; - } - } - function isElementOfType(element, _ComponentType) { - return element != null && element.type != null; - } - - var Handle = function (_super) { - __extends(Handle, _super); - - function Handle() { - var _this = _super !== null && _super.apply(this, arguments) || this; - - _this.state = { - isHandleMoving: false, - isHandleHovered: false - }; - _this.handleElement = null; - _this.refHandlers = { - handle: function handle(el) { - return _this.handleElement = el; + _this.getDisabledOptions = function (options) { + if (options === void 0) { + options = []; } + + return options.filter(function (option) { + return option.disabled; + }); }; - _this.mouseEventClientOffset = function (event) { - return event.clientX; + _this.fetchOptionsFunction = function (searchTerm) { + var options = _this.props.options; + var filteredOptions = searchTerm ? getSearchedOptions(options, searchTerm) : options; + return new Promise(function (resolve) { + resolve({ + searchTerm: searchTerm, + options: filteredOptions, + count: filteredOptions.length + }); + }); }; - _this.clientToValue = function (clientPixel) { - var _a = _this.props, - stepSize = _a.stepSize, - tickSize = _a.tickSize, - value = _a.value; + _this.getUnSelectedOptions = function (options, init) { + if (options.length) { + if (!init) { + return options.filter(function (option) { + return _this.state.tempSelected.findIndex(function (item) { + return item.value === option.value; + }) === -1; + }); + } - if (_this.handleElement == null) { - return value; + var _a = _this.props.selected, + selected_1 = _a === void 0 ? [] : _a; + var unSelectedGroup = options.filter(function (option) { + return _isControlled(_this.props.selected) ? selected_1.findIndex(function (item) { + return item.value === option.value; + }) === -1 : !option.selected; + }); + return unSelectedGroup; } - var clientPixelNormalized = clientPixel; - - var _b = _this.getHandleMidpointAndOffset(_this.handleElement), - handleMidpoint = _b.handleMidpoint, - handleOffset = _b.handleOffset; + return options; + }; - var handleCenterPixel = handleMidpoint + handleOffset; - var pixelDelta = clientPixelNormalized - handleCenterPixel; + _this.getSelectedOptions = function (options, init) { + var _a = _this.props.selected, + selected = _a === void 0 ? [] : _a; - if (isNaN(pixelDelta)) { - return value; + if (options.length) { + if (!init) return _this.state.tempSelected; + var selectedGroup = _isControlled(_this.props.selected) ? selected : options.filter(function (option) { + return option.selected; + }); + return selectedGroup; } - return value + Math.round(pixelDelta / (tickSize * stepSize)) * stepSize; + return []; }; - _this.changeValue = function (newValue, callback) { - if (callback === void 0) { - callback = _this.props.onChange; - } - - var updatedValue = clamp(newValue, _this.props.min, _this.props.max); + _this.updateOptions = function (init, async) { + var _a = _this.state, + searchTerm = _a.searchTerm, + selectAll = _a.selectAll, + tempSelected = _a.tempSelected, + previousSelected = _a.previousSelected, + errorType = _a.errorType; + var updatedAsync = async === undefined ? _this.state.async : async; + var _b = _this.props, + fetchOptions = _b.fetchOptions, + withCheckbox = _b.withCheckbox, + withSearch = _b.withSearch; + var fetchFunction = fetchOptions ? fetchOptions : _this.fetchOptionsFunction; + fetchFunction(searchTerm).then(function (res) { + var _a; - if (!isNaN(updatedValue) && _this.props.value !== updatedValue) { - if (callback) callback(updatedValue); - } + var options = res.options, + count = res.count; - return updatedValue; - }; + if (res.scrollToIndex) { + setTimeout(function () { + scrollToOptionIndex(res.scrollToIndex, options); + }, 0); + } - _this.endHandleMovement = function (event) { - var clientPixel = _this.mouseEventClientOffset(event); + if (!res.searchTerm || res.searchTerm && res.searchTerm === _this.state.searchTerm) { + updatedAsync = searchTerm === '' ? count > _this.staticLimit : updatedAsync; + var unSelectedGroup = _showSelectedItems(updatedAsync, searchTerm, withCheckbox) ? _this.getUnSelectedOptions(options, init) : options; + var selectedGroup = searchTerm === '' ? _this.getSelectedOptions(options, init) : []; + var optionsLength = searchTerm === '' ? count : _this.state.optionsLength; - var onRelease = _this.props.onRelease; + var disabledOptions = _this.getDisabledOptions(unSelectedGroup.slice(0, _this.staticLimit)); - _this.removeDocumentEventListeners(); + var errorResult = errorType; - _this.setState({ - isHandleMoving: false - }); + if (optionsLength === 0 && searchTerm === '') { + errorResult = 'DEFAULT'; + } else if (searchTerm !== '') { + errorResult = 'NO_RECORDS_FOUND'; + } else { + errorResult = 'FAILED_TO_FETCH'; + } - var finalValue = _this.changeValue(_this.clientToValue(clientPixel)); + _this.setState(__assign(__assign({}, _this.state), { + errorType: fetchOptions ? errorResult : errorType, + scrollIndex: res.scrollToIndex || 0, + optionsLength: optionsLength, + loading: false, + async: updatedAsync, + searchedOptionsLength: count, + options: unSelectedGroup.slice(0, _this.staticLimit), + tempSelected: init ? selectedGroup : tempSelected, + previousSelected: init ? selectedGroup : previousSelected, + selected: _showSelectedItems(updatedAsync, searchTerm, withCheckbox) ? selectedGroup : [], + triggerLabel: _this.updateTriggerLabel(init ? selectedGroup : tempSelected), + selectAll: !updatedAsync && init ? getSelectAll$1(selectedGroup, optionsLength, disabledOptions.length) : selectAll + })); - if (onRelease) onRelease(finalValue); + if (updatedAsync || withSearch) (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus(); + } + })["catch"](function () { + _this.setState({ + errorType: fetchOptions ? 'FAILED_TO_FETCH' : errorType, + loading: false, + options: [] + }); + }); }; - _this.continueHandleMovement = function (event) { - var clientPixel = _this.mouseEventClientOffset(event); - - if (_this.state.isHandleMoving && !_this.props.disabled) { - var value = _this.clientToValue(clientPixel); - - _this.changeValue(value); - } + _this.updateSearchTerm = function (search) { + _this.setState(__assign(__assign({}, _this.state), { + loading: true, + searchInit: true, + searchTerm: search, + errorType: 'NO_RECORDS_FOUND' + })); }; - _this.beginHandleMovement = function (event) { - if (_this.props.disabled) return; - document.addEventListener('mousemove', _this.continueHandleMovement); - document.addEventListener('mouseup', _this.endHandleMovement); + _this.updateOnPopperToggle = function () { + var _a = _this.props, + withCheckbox = _a.withCheckbox, + showApplyButton = _a.showApplyButton, + onClose = _a.onClose, + name = _a.name, + _b = _a.selected, + selected = _b === void 0 ? [] : _b; + var _c = _this.state, + previousSelected = _c.previousSelected, + tempSelected = _c.tempSelected, + optionsLength = _c.optionsLength, + async = _c.async, + loading = _c.loading, + searchTerm = _c.searchTerm, + options = _c.options; + var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.props.open : _this.state.open; - _this.setState({ - isHandleMoving: true - }); + var disabledOptionsCount = _this.getDisabledOptions(options).length; - var value = _this.clientToValue(event.clientX); + if (withCheckbox && showApplyButton) { + var temporarySelected = _isControlled(_this.props.selected) ? selected : previousSelected; - _this.changeValue(value); - }; + _this.setState({ + tempSelected: temporarySelected, + selectAll: getSelectAll$1(temporarySelected, optionsLength, disabledOptionsCount), + triggerLabel: _this.updateTriggerLabel(temporarySelected) + }); + } - _this.handleKeyDown = function (event) { - if (_this.props.disabled) return; - var _a = _this.props, - stepSize = _a.stepSize, - value = _a.value; - var which = event.which; + if (_isOpenControlled(_this.props.open)) { + _this.setState({ + open: popperIsOpen + }); + } - if (which === ARROW_LEFT) { - _this.changeValue(value - stepSize); + if (popperIsOpen) { + var moveSelectedGroup = _showSelectedItems(async, searchTerm, withCheckbox) && !_isEqual(_this.state.selected, tempSelected); - event.preventDefault(); - } else if (which === ARROW_RIGHT) { - _this.changeValue(value + stepSize); + _this.setState({ + loading: moveSelectedGroup || loading || searchTerm !== '', + searchInit: searchTerm !== '', + searchTerm: '' + }); - event.preventDefault(); + if (moveSelectedGroup) _this.updateOptions(false); } - }; - _this.handleKeyUp = function (event) { - if (_this.props.disabled) return; + if (onClose && !popperIsOpen) { + var arr = withCheckbox && showApplyButton ? _isControlled(_this.props.selected) ? selected : previousSelected : _this.state.tempSelected; + var values = arr.map(function (option) { + return option.value; + }); - if ([ARROW_LEFT, ARROW_RIGHT].indexOf(event.which) >= 0) { - var onRelease = _this.props.onRelease; - if (onRelease) onRelease(_this.props.value); + _this.debounceOnClose(values, name); } }; - _this.getHandleMidpointAndOffset = function (handleElement, useOppositeDimension) { - if (useOppositeDimension === void 0) { - useOppositeDimension = false; - } + _this.debounceOnClose = debounce(300, function (values, name) { + var onClose = _this.props.onClose; - if (handleElement == null) { - return { - handleMidpoint: 0, - handleOffset: 0 - }; + if (onClose) { + onClose(values, name); } + }); - var handleRect = handleElement.getBoundingClientRect(); - var sizeKey = useOppositeDimension ? 'height' : 'width'; - var handleOffset = handleRect.left; - return { - handleOffset: handleOffset, - handleMidpoint: handleRect[sizeKey] / 2 - }; - }; + _this.updateTriggerLabel = function (selectedArray, totalOptions) { + if (selectedArray === void 0) { + selectedArray = []; + } - _this.handleMouseOver = function () { - _this.setState({ - isHandleHovered: true - }); - }; + var selectedLength = selectedArray.length; + if (selectedLength === 0) return ''; + var _a = _this.props, + _b = _a.triggerOptions, + triggerOptions = _b === void 0 ? {} : _b, + getLabel = _a.getLabel; + var customLabel = triggerOptions.customLabel, + _c = triggerOptions.labelLimit, + labelLimit = _c === void 0 ? 2 : _c; + var optionsLength = _this.state ? _this.state.optionsLength : totalOptions; + var label = ''; - _this.handleMouseLeave = function () { - _this.setState({ - isHandleHovered: false - }); - }; + if (selectedLength <= labelLimit) { + label = selectedArray.map(function (option) { + return option.label; + }).join(', '); + } else { + label = customLabel ? customLabel(selectedLength, optionsLength, selectedArray) : selectedLength + " selected"; + } - _this.removeDocumentEventListeners = function () { - document.removeEventListener('mousemove', _this.continueHandleMovement); - document.removeEventListener('mouseup', _this.endHandleMovement); + if (getLabel) getLabel(label); + return label; }; - return _this; - } - - Handle.prototype.componentWillUnmount = function () { - this.removeDocumentEventListeners(); - }; - - Handle.prototype.componentDidUpdate = function (_prevProps, prevState) { - if (prevState.isHandleMoving !== this.state.isHandleMoving) { - if (this.handleElement) this.handleElement.focus(); - } - }; + _this.updateSelectedOptions = function (selectedArray, isSingleSelect, isControlled) { + var _a = _this.state, + optionsLength = _a.optionsLength, + previousSelected = _a.previousSelected, + selected = _a.selected, + loading = _a.loading, + open = _a.open; + var _b = _this.props, + onChange = _b.onChange, + withCheckbox = _b.withCheckbox, + showApplyButton = _b.showApplyButton, + closeOnSelect = _b.closeOnSelect, + name = _b.name, + onPopperToggle = _b.onPopperToggle; + var updatePreviousSelected = withCheckbox && showApplyButton && isControlled; - Handle.prototype.render = function () { - var _a, _b; + var disabledOptions = _this.getDisabledOptions(_this.state.options); - var _c = this.props, - min = _c.min, - tickSizeRatio = _c.tickSizeRatio, - value = _c.value, - disabled = _c.disabled, - label = _c.label, - isCurrentLabelHovered = _c.isCurrentLabelHovered; - var _d = this.state, - isHandleMoving = _d.isHandleMoving, - isHandleHovered = _d.isHandleHovered; - var showTootlip = isHandleMoving || isHandleHovered || isCurrentLabelHovered; - var handleMidpoint = this.getHandleMidpointAndOffset(this.handleElement, true).handleMidpoint; - var offsetRatio = (value - min) * tickSizeRatio; - var offsetCalc = "calc(" + formatPercentage(offsetRatio) + " - " + handleMidpoint + "px)"; - var style = { - left: offsetCalc - }; - var className = classNames__default['default']((_a = {}, _a['Slider-handle'] = true, _a['Slider-handle--disabled'] = disabled, _a['Slider-handle--active'] = isHandleMoving, _a)); - var TooltipClass = classNames__default['default']((_b = {}, _b['Slider-tooltip'] = true, _b['Tooltip'] = true, _b['d-none'] = !showTootlip, _b)); - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", { - className: className, - onMouseOver: this.handleMouseOver, - onMouseLeave: this.handleMouseLeave, - onMouseDown: this.beginHandleMovement, - onKeyDown: this.handleKeyDown, - onKeyUp: this.handleKeyUp, - ref: this.refHandlers.handle, - style: style, - tabIndex: 1 - }), /*#__PURE__*/React__namespace.createElement("div", { - className: TooltipClass, - style: style - }, label)); - }; + var isClearClicked = selectedArray.length === 0 && selected.length > 0 || selectedArray.every(function (option) { + return option.disabled; + }) && !selected.every(function (option) { + return option.disabled; + }); - return Handle; - }(React__namespace.Component); + _this.setState(__assign(__assign({}, _this.state), { + tempSelected: selectedArray, + triggerLabel: _this.updateTriggerLabel(selectedArray), + selectAll: getSelectAll$1(selectedArray, optionsLength, disabledOptions.length), + open: _isOpenControlled(_this.props.open) || withCheckbox ? open : !closeOnSelect, + previousSelected: updatePreviousSelected ? selectedArray : previousSelected, + selected: isClearClicked ? selectedArray : selected, + loading: isClearClicked ? true : loading + })); - var MultiSliderHandle = function MultiSliderHandle() { - return null; - }; + if (isClearClicked) _this.debounceClear(); - var MultiSlider = function (_super) { - __extends(MultiSlider, _super); + if (onChange && (!showApplyButton || isControlled)) { + var values = selectedArray.map(function (item) { + return item.value; + }); + var selectedValues = isSingleSelect ? values[0] : values; + onChange(selectedValues, name); + } - function MultiSlider(props) { - var _this = _super.call(this, props) || this; + if (!withCheckbox && closeOnSelect && onPopperToggle && _isOpenControlled(_this.props.open)) { + onPopperToggle(false, 'optionClick'); + } + }; - _this.handleElements = []; - _this.trackElement = null; + _this.isValidOption = function (option) { + var _a = _this.props, + closeOnSelect = _a.closeOnSelect, + withCheckbox = _a.withCheckbox, + open = _a.open, + onPopperToggle = _a.onPopperToggle; + var temp = _this.state.tempSelected; - _this.getLabelPrecision = function (_a) { - var labelPrecision = _a.labelPrecision, - stepSize = _a.stepSize; - return labelPrecision == null ? countDecimalPlaces(stepSize) : labelPrecision; - }; + if (temp.length > 0 && !withCheckbox && temp[0].value === option['value']) { + _this.setState(__assign(__assign({}, _this.state), { + open: _isOpenControlled(open) || !closeOnSelect + })); - _this.getOffsetRatio = function (value) { - return clamp((value - _this.props.min) * _this.state.tickSizeRatio, 0, 1); - }; + if (!withCheckbox && closeOnSelect && onPopperToggle && _isOpenControlled(open)) { + onPopperToggle(false, 'optionClick'); + } - _this.addHandleRef = function (ref) { - if (ref != null) { - _this.handleElements.push(ref); + return false; } - }; - _this.getHandleValues = function (props) { - var maybeHandles = React__namespace.Children.map(props.children, function (child) { - return isElementOfType(child) ? child.props : null; - }); - var handles = maybeHandles != null ? maybeHandles : []; - handles = handles.filter(function (handle) { - return handle !== null; - }); - handles.sort(function (left, right) { - return left.value - right.value; - }); - return handles; + return true; }; - _this.updateTickSize = function () { - if (_this.trackElement != null) { - var trackSize = _this.trackElement.clientWidth; - var tickSizeRatio = 1 / (_this.props.max - _this.props.min); - var tickSize = trackSize * tickSizeRatio; + _this.onOptionSelect = function (option) { + var _a = _this.props, + onUpdate = _a.onUpdate, + selected = _a.selected, + menu = _a.menu; - _this.setState({ - tickSize: tickSize, - tickSizeRatio: tickSizeRatio - }); - } - }; + if (_isControlled(selected)) { + if (onUpdate && (_this.isValidOption(option) || menu)) { + onUpdate('select-option', option); + } - _this.getTrackFill = function (start, end) { - if (start.fillAfter !== undefined) { - return start.fillAfter; + return; } - if (end !== undefined && end.fillBefore !== undefined) { - return end.fillBefore; + if (_this.isValidOption(option) || menu) { + _this.updateSelectedOptions([option], true); } - - return false; }; - _this.maybeHandleTrackClick = function (event) { - var target = event.target; - var canHandleTrackEvent = !_this.props.disabled && target.closest('.Slider-handle') == null; - - if (canHandleTrackEvent) { - var foundHandle = _this.nearestHandleForValue(_this.handleElements, function (handle) { - return handle.mouseEventClientOffset(event); - }); + _this.onSelect = function (option, checked) { + var _a = _this.props, + onUpdate = _a.onUpdate, + selected = _a.selected, + showApplyButton = _a.showApplyButton; - if (foundHandle) { - foundHandle.beginHandleMovement(event); - } + if (_isControlled(selected) && !showApplyButton) { + if (onUpdate) onUpdate(checked ? 'select-option' : 'deselect-option', option); + return; } - }; - _this.getLockedHandleIndex = function (startIndex, endIndex) { - var inc = startIndex < endIndex ? 1 : -1; + var tempSelected = _this.state.tempSelected; + var selectedArray = tempSelected.slice(); - for (var index = startIndex + inc; index !== endIndex + inc; index += inc) { - return index; + if (!checked) { + var index = selectedArray.findIndex(function (item) { + return item.value === option.value; + }); + selectedArray.splice(index, 1); } - return -1; + selectedArray = checked ? selectedArray.concat(option) : selectedArray; + + _this.updateSelectedOptions(selectedArray, false); }; - _this.getNewHandleValues = function (newValue, oldIndex) { - var handleProps = _this.getHandleValues(_this.props); + _this.onSelectAll = function (event) { + var _a = _this.props, + onUpdate = _a.onUpdate, + selected = _a.selected, + showApplyButton = _a.showApplyButton; + var _b = _this.state, + tempSelected = _b.tempSelected, + options = _b.options; - var oldValues = handleProps.map(function (handle) { - return handle.value; - }); - var newValues = oldValues.slice(); - newValues[oldIndex] = newValue; - if (newValues.length > 1) newValues.sort(function (left, right) { - return left - right; + if (_isControlled(selected) && !showApplyButton) { + if (onUpdate) onUpdate(event.target.checked ? 'select-all' : 'deselect-all'); + return; + } + + var selectedArr = tempSelected.slice(); + var selectedDisabledArray = selectedArr.filter(function (option) { + return option.disabled; }); - var newIndex = newValues.indexOf(newValue); + var selectedArray = event.target.checked ? __spreadArrays(options.filter(function (option) { + return !option.disabled; + }), selectedDisabledArray) : selectedDisabledArray; - var lockIndex = _this.getLockedHandleIndex(oldIndex, newIndex); + _this.updateSelectedOptions(selectedArray, false); + }; - if (lockIndex === -1) { - fillValues(newValues, oldIndex, newIndex, newValue); - } else { - var lockValue = oldValues[lockIndex]; - fillValues(oldValues, oldIndex, lockIndex, lockValue); - return oldValues; - } + _this.debounceSearch = debounce(_this.props.searchDebounceDuration, function () { + _this.setState({ + searchInit: false + }, function () { + _this.updateOptions(false); + }); + }); - return newValues; + _this.reload = function () { + _this.setState({ + loading: true + }, function () { + _this.updateOptions(false); + }); }; - _this.onReleaseHandler = function (newValue, index) { - var onRangeRelease = _this.props.onRangeRelease; - - var handleProps = _this.getHandleValues(_this.props); + _this.debounceClear = debounce(250, function () { + return _this.updateOptions(false); + }); - var newValues = _this.getNewHandleValues(newValue, index); + _this.onClearOptions = function () { + var _a = _this.props, + selected = _a.selected, + name = _a.name, + onUpdate = _a.onUpdate, + showApplyButton = _a.showApplyButton, + onChange = _a.onChange; + var tempSelected = _this.state.tempSelected; + var selectedArray = tempSelected.filter(function (option) { + return option.disabled; + }); - if (onRangeRelease) { - var range = newValues; - onRangeRelease(range); + if (_isControlled(selected) && !showApplyButton) { + if (onUpdate) onUpdate('clear-all'); + return; } - handleProps.forEach(function (handle, i) { - if (handle.onRelease) handle.onRelease(newValues[i]); + _this.setState({ + selected: selectedArray, + tempSelected: selectedArray, + triggerLabel: '', + loading: true }); - }; - - _this.onChangeHandler = function (newValue, index) { - var onRangeChange = _this.props.onRangeChange; - - var handleProps = _this.getHandleValues(_this.props); - var oldValues = handleProps.map(function (handle) { - return handle.value; - }); + _this.debounceClear(); - var newValues = _this.getNewHandleValues(newValue, index); + if (onChange && !showApplyButton) onChange(selectedArray, name); + }; - if (!arraysEqual(newValues, oldValues)) { - if (onRangeChange) { - var range = newValues; - onRangeChange(range); - } + _this.onTogglePopper = function (type) { + var onPopperToggle = _this.props.onPopperToggle; - handleProps.forEach(function (handle, i) { - if (handle.onChange) handle.onChange(newValues[i]); - }); + if (onPopperToggle && _isOpenControlled(_this.props.open)) { + onPopperToggle(false, type); } }; - _this.formatLabel = function (value) { - var labelRenderer = _this.props.labelRenderer; + _this.onCancelOptions = function () { + var _a = _this.state, + previousSelected = _a.previousSelected, + tempSelected = _a.tempSelected, + optionsLength = _a.optionsLength; + var _b = _this.props, + selected = _b.selected, + onUpdate = _b.onUpdate, + onClose = _b.onClose, + name = _b.name; + var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.state.open : false; + var values = previousSelected.map(function (option) { + return option.value; + }); - if (typeof labelRenderer === 'function') { - return labelRenderer(value); + if (_isControlled(selected)) { + if (onUpdate) onUpdate('cancel-selected', previousSelected, tempSelected); + + _this.onTogglePopper('cancelClick'); + + return; } - return value.toFixed(_this.state.labelPrecision); - }; + var label = _this.updateTriggerLabel(previousSelected); - _this.renderHandles = function () { - var _a = _this.props, - disabled = _a.disabled, - max = _a.max, - min = _a.min, - stepSize = _a.stepSize; + var disabledOptions = _this.getDisabledOptions(_this.state.options); - var handleProps = _this.getHandleValues(_this.props); + _this.setState(__assign(__assign({}, _this.state), { + tempSelected: previousSelected, + selectAll: getSelectAll$1(previousSelected, optionsLength, disabledOptions.length), + triggerLabel: label, + open: popperIsOpen + })); - if (handleProps.length === 0) { - return null; + if (onClose && !popperIsOpen) { + onClose(values, name); } - return handleProps.map(function (_a, index) { - var value = _a.value; - var isCurrentLabelHovered = _this.state.hoveredLabelValue === Number(value.toFixed(_this.state.labelPrecision)); - return /*#__PURE__*/React__namespace.createElement(Handle, { - disabled: disabled, - key: index + "-" + handleProps.length, - max: max, - min: min, - onRelease: function onRelease(newValue) { - return _this.onReleaseHandler(newValue, index); - }, - onChange: function onChange(newValue) { - return _this.onChangeHandler(newValue, index); - }, - label: _this.formatLabel(value), - ref: _this.addHandleRef, - stepSize: stepSize, - tickSize: _this.state.tickSize, - tickSizeRatio: _this.state.tickSizeRatio, - value: value, - isCurrentLabelHovered: isCurrentLabelHovered - }); - }); + _this.onTogglePopper('cancelClick'); }; - _this.renderLabels = function () { - var _a = _this.props, - labelStepSize = _a.labelStepSize, - max = _a.max, - min = _a.min, - labelRenderer = _a.labelRenderer, - disabled = _a.disabled; - var labels = []; - var stepSizeRatio = _this.state.tickSizeRatio * labelStepSize; - - var handles = _this.getHandleValues(_this.props); - - var activeLabels = handles.map(function (handle) { - return handle.value.toFixed(_this.state.labelPrecision); + _this.onApplyOptions = function () { + var _a = _this.state, + tempSelected = _a.tempSelected, + previousSelected = _a.previousSelected; + var _b = _this.props, + onChange = _b.onChange, + selected = _b.selected, + onUpdate = _b.onUpdate, + onClose = _b.onClose, + name = _b.name; + var popperIsOpen = _isOpenControlled(_this.props.open) ? _this.state.open : false; + var values = tempSelected.map(function (option) { + return option.value; }); - var _loop_1 = function _loop_1(i, offsetRatio) { - var offsetPercentage = formatPercentage(offsetRatio); - var style = { - left: offsetPercentage - }; - var active = !disabled && activeLabels.indexOf(i.toFixed(_this.state.labelPrecision)) !== -1; + if (_isControlled(selected)) { + if (onUpdate) onUpdate('apply-selected', previousSelected, tempSelected); - var onClickHandler = function onClickHandler(event) { - if (!_this.props.disabled) { - var foundHandle = _this.nearestHandleForValue(_this.handleElements, function (handle) { - return handle.mouseEventClientOffset(event); - }); + _this.onTogglePopper('applyClick'); - if (foundHandle) { - foundHandle.changeValue(i); - } - } - }; + return; + } - labels.push( /*#__PURE__*/React__namespace.createElement("div", { - onClick: onClickHandler, - className: 'Slider-label', - key: i, - style: style, - onMouseOver: function onMouseOver() { - return _this.handleLabelMouseOver(i); - }, - onMouseLeave: _this.handleLabelMouseLeave - }, /*#__PURE__*/React__namespace.createElement("span", { - className: 'Slider-ticks' - }), labelRenderer !== false && /*#__PURE__*/React__namespace.createElement(Text, { - size: "small", - appearance: active ? 'default' : 'disabled' - }, _this.formatLabel(i)))); - }; + _this.setState(__assign(__assign({}, _this.state), { + previousSelected: tempSelected, + optionsApplied: true, + open: popperIsOpen + })); - for (var i = min, offsetRatio = 0; i < max || approxEqual(i, max); i += labelStepSize, offsetRatio += stepSizeRatio) { - _loop_1(i, offsetRatio); + if (onChange) { + onChange(values, name); } - return labels; + if (onClose && !popperIsOpen) { + onClose(values, name); + } + + _this.onTogglePopper('applyClick'); }; - _this.renderTrackFill = function (index, start, end) { - var _a; + _this.onToggleDropdown = function (updatedOpen, type) { + if (_this.props.disabled) { + return; + } - var _b = [_this.getOffsetRatio(start.value), _this.getOffsetRatio(end.value)].sort(function (left, right) { - return left - right; - }), - startRatio = _b[0], - endRatio = _b[1]; + var onPopperToggle = _this.props.onPopperToggle; - var startOffset = Number((startRatio * 100).toFixed(2)); - var endOffset = Number(((1 - endRatio) * 100).toFixed(2)); - var width = 100 - endOffset - startOffset + "%"; - var orientationStyle = { - width: width - }; - - var style = __assign({}, orientationStyle); - - var fillTrack = _this.getTrackFill(start, end); - - var classes = classNames__default['default']((_a = {}, _a['Slider-progress'] = true, _a['Slider-progress--disabled'] = _this.props.disabled, _a['Slider-progress--inRange'] = fillTrack, _a['Slider-progress--inRangeDisabled'] = fillTrack && _this.props.disabled, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - key: "track-" + index, - className: classes, - style: style - }); - }; - - _this.renderTracks = function () { - var trackStops = _this.getHandleValues(_this.props); - - trackStops.push({ - value: _this.props.max - }); - var previous = { - value: _this.props.min || 0 - }; - var handles = []; - trackStops.forEach(function (track, index) { - var current = track; - handles.push(_this.renderTrackFill(index, previous, current)); - previous = current; - }); - return handles; - }; + if (onPopperToggle && _isOpenControlled(_this.props.open)) { + onPopperToggle(updatedOpen, type); + return; + } - _this.handleLabelMouseOver = function (value) { _this.setState({ - hoveredLabelValue: value + open: updatedOpen }); }; - _this.handleLabelMouseLeave = function () { - _this.setState({ - hoveredLabelValue: undefined - }); - }; + var _a = props.selected, + selected = _a === void 0 ? [] : _a, + totalOptions = props.totalOptions, + withCheckbox = props.withCheckbox, + loading = props.loading, + open = props.open, + options = props.options; + _this.staticLimit = Math.min(100, props.staticLimit); + var optionsLength = totalOptions ? totalOptions : options.length; + var async = 'fetchOptions' in _this.props || optionsLength > _this.staticLimit; + var selectedGroup = !async ? _this.getSelectedOptions(options, true) : []; + + var disabledOptions = _this.getDisabledOptions(options); _this.state = { - labelPrecision: _this.getLabelPrecision(_this.props), - tickSize: 0, - tickSizeRatio: 0 + async: async, + optionsLength: optionsLength, + open: open, + searchInit: false, + searchedOptionsLength: optionsLength, + optionsApplied: false, + options: options || [], + loading: async ? true : loading, + searchTerm: '', + tempSelected: selectedGroup, + previousSelected: selectedGroup, + selected: _showSelectedItems(async, '', withCheckbox) ? selected : [], + triggerLabel: _this.updateTriggerLabel(selectedGroup, optionsLength), + selectAll: getSelectAll$1(selectedGroup, optionsLength, disabledOptions.length), + errorType: 'DEFAULT' }; return _this; } - MultiSlider.prototype.getDerivedStateFromProps = function (props) { - return { - labelPrecision: this.getLabelPrecision(props) - }; + Dropdown.prototype.componentDidMount = function () { + var async = this.state.async; + if (async) this.updateOptions(true); }; - MultiSlider.prototype.getSnapshotBeforeUpdate = function (prevProps) { - var prevHandleProps = this.getHandleValues(prevProps); - var newHandleProps = this.getHandleValues(this.props); + Dropdown.prototype.componentDidUpdate = function (prevProps, prevState) { + var _a; - if (newHandleProps.length !== prevHandleProps.length) { - this.handleElements = []; + if (!this.state.async) { + var _b = this.props, + loading = _b.loading, + fetchOptions = _b.fetchOptions, + _c = _b.options, + options = _c === void 0 ? [] : _c, + withSearch = _b.withSearch; + var disabledOptionsCount = this.getDisabledOptions(options).length; + + if (prevProps.loading !== loading && !fetchOptions) { + if (options.length > this.staticLimit) { + this.updateOptions(true, true); + } else { + var selectedGroup = this.getSelectedOptions(options, true); + this.setState(__assign(__assign({}, this.state), { + options: options, + loading: loading, + tempSelected: selectedGroup, + previousSelected: selectedGroup, + optionsLength: options.length, + searchedOptionsLength: options.length, + triggerLabel: this.updateTriggerLabel(selectedGroup), + selectAll: getSelectAll$1(selectedGroup, this.state.optionsLength, disabledOptionsCount) + })); + if (withSearch) (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus(); + } + } } - return null; - }; + if (this.props.selected !== undefined && prevProps.selected !== this.props.selected && prevProps.loading === this.props.loading) { + var isSingleSelect = !this.props.withCheckbox; + this.updateSelectedOptions(this.props.selected, isSingleSelect, true); + } - MultiSlider.prototype.componentDidMount = function () { - this.updateTickSize(); - }; + if (prevState.searchTerm !== this.state.searchTerm) { + this.debounceSearch(); + } - MultiSlider.prototype.nearestHandleForValue = function (handles, getOffset) { - return argMin(handles, function (handle) { - var offset = getOffset(handle); - var offsetValue = handle.clientToValue(offset); - var handleValue = handle.props.value; - return Math.abs(offsetValue - handleValue); - }); + if (prevProps.open !== this.props.open || prevState.open !== this.state.open) { + if (_isOpenControlled(this.props.open) && this.props.open === this.state.open) return; + this.updateOnPopperToggle(); + } }; - MultiSlider.prototype.render = function () { - var _a, _b; + Dropdown.prototype.render = function () { + var _a = this.state, + options = _a.options, + async = _a.async, + open = _a.open, + searchTerm = _a.searchTerm, + searchInit = _a.searchInit, + loading = _a.loading, + searchedOptionsLength = _a.searchedOptionsLength, + tempSelected = _a.tempSelected, + selectAll = _a.selectAll, + triggerLabel = _a.triggerLabel, + previousSelected = _a.previousSelected, + scrollIndex = _a.scrollIndex, + errorType = _a.errorType; + var _b = this.props, + _c = _b.withSelectAll, + withSelectAll = _c === void 0 ? true : _c, + withCheckbox = _b.withCheckbox; - var _this = this; + var _d = this.props, + _e = _d.triggerOptions, + triggerOptions = _e === void 0 ? {} : _e; + _d.selected; + var tabIndex = _d.tabIndex, + rest = __rest(_d, ["triggerOptions", "selected", "tabIndex"]); - var _c = this.props, - label = _c.label, - className = _c.className; - var baseProps = extractBaseProps(this.props); - var SliderClass = classNames__default['default']((_a = {}, _a['Slider'] = true, _a), className); - var WrapperClass = classNames__default['default']((_b = {}, _b['Slider-wrapper'] = true, _b['Slider-wrapper--disabled'] = this.props.disabled, _b)); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: SliderClass - }), label && /*#__PURE__*/React__namespace.createElement(Label, { - withInput: true - }, label), /*#__PURE__*/React__namespace.createElement("div", { - className: WrapperClass - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "Slider-track", - ref: function ref(_ref) { - return _this.trackElement = _ref; - }, - onMouseDown: this.maybeHandleTrackClick - }, this.renderTracks()), /*#__PURE__*/React__namespace.createElement("div", { - className: "Slider-axis" - }, this.renderLabels()), this.renderHandles())); + var remainingOptionsLen = searchedOptionsLength - options.length; + var firstEnabledOption = tabIndex ? tabIndex : _isSelectAllPresent(searchTerm, remainingOptionsLen, withSelectAll, withCheckbox) ? 0 : options.findIndex(function (option) { + return !option.disabled; + }); + return /*#__PURE__*/React__namespace.createElement(DropdownList, __assign({ + listOptions: options, + inputRef: inputRef, + remainingOptions: remainingOptionsLen, + firstEnabledOption: firstEnabledOption, + loadingOptions: loading, + async: async, + searchInit: searchInit, + dropdownOpen: open, + searchTerm: searchTerm, + triggerLabel: triggerLabel, + tempSelected: tempSelected, + previousSelected: previousSelected, + selected: this.state.selected, + applyOptions: this.onApplyOptions, + cancelOptions: this.onCancelOptions, + toggleDropdown: this.onToggleDropdown, + onClearOptions: this.onClearOptions, + onSelect: this.onSelect, + selectAll: selectAll, + onSearchChange: this.updateSearchTerm, + onOptionSelect: this.onOptionSelect, + onSelectAll: this.onSelectAll, + customTrigger: triggerOptions.customTrigger, + scrollIndex: scrollIndex, + updateOptions: this.reload, + errorType: errorType + }, rest)); }; - MultiSlider.defaultProps = { - labelStepSize: 1, - max: 10, - min: 0, - stepSize: 1, - labelRenderer: true + Dropdown.defaultProps = { + triggerOptions: {}, + options: [], + closeOnSelect: true, + staticLimit: 50, + searchDebounceDuration: 300 }; - MultiSlider.Handle = MultiSliderHandle; - return MultiSlider; + return Dropdown; }(React__namespace.Component); - var Slider = function Slider(props) { - var valueProp = props.value, - defaultValue = props.defaultValue, - onRelease = props.onRelease, - onChange = props.onChange, - rest = __rest(props, ["value", "defaultValue", "onRelease", "onChange"]); + var sizeMap = { + s: 'h5', + m: 'h4', + l: 'h3', + xl: 'h2', + xxl: 'h1' + }; + var Heading = function Heading(props) { + var _a; - var _a = React__namespace.useState(valueProp === undefined ? defaultValue : valueProp), - value = _a[0], - setValue = _a[1]; + var appearance = props.appearance, + size = props.size, + children = props.children, + className = props.className, + color = props.color, + rest = __rest(props, ["appearance", "size", "children", "className", "color"]); - React__namespace.useEffect(function () { - if (valueProp !== undefined) { - setValue(valueProp); - } - }, [valueProp]); + var classes = classNames__default["default"]((_a = { + Heading: true + }, _a["Heading--" + size] = size, _a["Heading--" + appearance] = !color && appearance, _a["color-" + color] = color, _a), className); + return /*#__PURE__*/React__namespace.createElement(Link$1, __assign({ + "data-test": "DesignSystem-Heading" + }, rest, { + className: classes, + componentType: sizeMap[size] + }), children); + }; + Heading.displayName = 'Heading'; + Heading.defaultProps = { + appearance: 'default', + size: 'm' + }; - var onChangeHandler = function onChangeHandler(newValue) { - if (valueProp === undefined) { - setValue(newValue); - } - - if (onChange) onChange(newValue); - }; - - return /*#__PURE__*/React__namespace.createElement(MultiSlider, __assign({}, rest), /*#__PURE__*/React__namespace.createElement(MultiSlider.Handle, { - value: value, - onChange: onChangeHandler, - onRelease: onRelease, - fillBefore: true - })); - }; - Slider.displayName = 'Slider'; - Slider.defaultProps = __assign(__assign({}, MultiSlider.defaultProps), { - defaultValue: 0 - }); - - var RangeIndex; - - (function (RangeIndex) { - RangeIndex[RangeIndex["START"] = 0] = "START"; - RangeIndex[RangeIndex["END"] = 1] = "END"; - })(RangeIndex || (RangeIndex = {})); - - var RangeSlider = function RangeSlider(props) { - var valueProp = props.value, - defaultValue = props.defaultValue, - onChange = props.onChange, - onRelease = props.onRelease, - rest = __rest(props, ["value", "defaultValue", "onChange", "onRelease"]); - - var _a = React__namespace.useState(valueProp === undefined ? defaultValue : valueProp), - value = _a[0], - setValue = _a[1]; - - React__namespace.useEffect(function () { - if (valueProp !== undefined) { - setValue(valueProp); - } - }, [valueProp]); - - var onChangeHandler = function onChangeHandler(range) { - if (valueProp === undefined) { - setValue(range); - } - - if (onChange) onChange(range); - }; - - return /*#__PURE__*/React__namespace.createElement(MultiSlider, __assign({ - onRangeChange: onChangeHandler, - onRangeRelease: onRelease - }, rest), /*#__PURE__*/React__namespace.createElement(MultiSlider.Handle, { - value: value[RangeIndex.START], - fillAfter: true - }), /*#__PURE__*/React__namespace.createElement(MultiSlider.Handle, { - value: value[RangeIndex.END] - })); - }; - RangeSlider.displayName = 'RangeSlider'; - RangeSlider.defaultProps = __assign(__assign({}, MultiSlider.defaultProps), { - defaultValue: [0, 10] - }); - - var Subheading = function Subheading(props) { + var ActionButton$1 = function ActionButton(props) { var _a; - var appearance = props.appearance, - children = props.children, - className = props.className, - rest = __rest(props, ["appearance", "children", "className"]); + var className = props.className, + iconType = props.iconType, + rest = __rest(props, ["className", "iconType"]); - var classes = classNames__default['default']((_a = { - Subheading: true - }, _a["Subheading--" + appearance] = appearance, _a), className); - return /*#__PURE__*/React__namespace.createElement(GenericText, __assign({ - "data-test": "DesignSystem-Subheading" - }, rest, { - className: classes, - componentType: 'h4' - }), children); + var iconClass = classNames__default["default"]((_a = {}, _a['ActionButton'] = true, _a["" + className] = className, _a)); + return /*#__PURE__*/React__namespace.createElement(Icon, __assign({ + className: iconClass, + type: iconType, + "data-test": "DesignSystem-Input-ActionButton" + }, rest)); }; - Subheading.displayName = 'Subheading'; - Subheading.defaultProps = { - appearance: 'default' + ActionButton$1.displayName = 'ActionButton'; + ActionButton$1.defaultProps = { + size: 16, + type: 'rounded' }; - var Switch = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { - var _a, _b; - - var _c = props.size, - size = _c === void 0 ? 'regular' : _c, - defaultChecked = props.defaultChecked, - disabled = props.disabled, - onChange = props.onChange, - name = props.name, - value = props.value, - className = props.className; - props.appearance; - var checkedProp = props.checked, - rest = __rest(props, ["size", "defaultChecked", "disabled", "onChange", "name", "value", "className", "appearance", "checked"]); - - var _d = React__namespace.useState(checkedProp === undefined ? defaultChecked : checkedProp), - checked = _d[0], - setChecked = _d[1]; - - React__namespace.useEffect(function () { - if (checkedProp !== undefined) setChecked(checkedProp); - }, [checkedProp]); - var SwitchClass = classNames__default['default']((_a = {}, _a['Switch'] = true, _a['Switch--disabled'] = disabled, _a["Switch--" + size] = size, _a), className); - var SwitchWrapper = classNames__default['default']((_b = {}, _b['Switch-wrapper'] = true, _b['Switch-wrapper--disabled'] = disabled, _b["Switch-wrapper--" + size] = size, _b['Switch-wrapper--checked'] = checked, _b['Switch-wrapper--checkedDisabled'] = checked && disabled, _b)); - - var onChangeHandler = function onChangeHandler(event) { - if (checkedProp === undefined) setChecked(!checked); - if (onChange) onChange(event, !checked); - }; - - return /*#__PURE__*/React__namespace.createElement("div", { - className: SwitchClass - }, /*#__PURE__*/React__namespace.createElement("input", __assign({}, rest, { - type: "checkbox", - defaultChecked: defaultChecked, - disabled: disabled, - onChange: onChangeHandler, - checked: checked, - ref: ref, - name: name, - value: value, - className: "Switch-input" - })), /*#__PURE__*/React__namespace.createElement("span", { - className: SwitchWrapper - })); - }); - Switch.displayName = 'Switch'; - - var Textarea = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { - var _a; + var sizeMapping$2 = { + tiny: 12, + regular: 16, + large: 20 + }; + var Input = /*#__PURE__*/React__namespace.forwardRef(function (props, forwardedRef) { + var _a, _b, _c, _d; - var _b = props.rows, - rows = _b === void 0 ? 3 : _b, - _c = props.resize, - resize = _c === void 0 ? true : _c, - disabled = props.disabled, + var _e = props.size, + size = _e === void 0 ? 'regular' : _e, + _f = props.type, + type = _f === void 0 ? 'text' : _f, + _g = props.minWidth, + minWidth = _g === void 0 ? type !== 'number' ? 256 : undefined : _g, + defaultValue = props.defaultValue, name = props.name, placeholder = props.placeholder, value = props.value, - defaultValue = props.defaultValue, + icon = props.icon, + inlineLabel = props.inlineLabel, required = props.required, error = props.error, + info = props.info, onChange = props.onChange, onClick = props.onClick, + onClear = props.onClear, onBlur = props.onBlur, onFocus = props.onFocus, + onPaste = props.onPaste, + actionIcon = props.actionIcon, className = props.className, - rest = __rest(props, ["rows", "resize", "disabled", "name", "placeholder", "value", "defaultValue", "required", "error", "onChange", "onClick", "onBlur", "onFocus", "className"]); + autoFocus = props.autoFocus, + disabled = props.disabled, + readOnly = props.readOnly, + iconType = props.iconType, + rest = __rest(props, ["size", "type", "minWidth", "defaultValue", "name", "placeholder", "value", "icon", "inlineLabel", "required", "error", "info", "onChange", "onClick", "onClear", "onBlur", "onFocus", "onPaste", "actionIcon", "className", "autoFocus", "disabled", "readOnly", "iconType"]); - var classes = classNames__default['default']((_a = {}, _a['Textarea'] = true, _a['Textarea--resize'] = resize, _a['Textarea--error'] = error, _a), className); - return /*#__PURE__*/React__namespace.createElement("textarea", __assign({ - "data-test": "DesignSystem-Textarea" - }, rest, { + var ref = React__namespace.useRef(null); + + var _h = React__namespace.useState(!value), + isInputBlank = _h[0], + setIsInputBlank = _h[1]; + + React__namespace.useImperativeHandle(forwardedRef, function () { + return ref.current; + }); + React__namespace.useEffect(function () { + var _a; + + if (autoFocus) (_a = ref.current) === null || _a === void 0 ? void 0 : _a.focus({ + preventScroll: true + }); + }, []); + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]((_a = {}, _a['Input'] = true, _a["Input--" + size] = size, _a['Input--disabled'] = disabled || readOnly, _a['Input--error'] = error, _a), className); + var inputClass = classNames__default["default"]((_b = {}, _b['Input-input'] = true, _b["Input-input--" + size] = size, _b)); + var leftIconClass = classNames__default["default"]((_c = {}, _c['Input-icon'] = true, _c['Input-icon--left'] = true, _c['Input-icon--inputBlank'] = isInputBlank, _c['Input-icon--error'] = error, _c)); + var rightIconClass = classNames__default["default"]((_d = {}, _d['Input-icon'] = true, _d['Input-iconWrapper--right'] = true, _d)); + var trigger = /*#__PURE__*/React__namespace.createElement("div", { + className: rightIconClass, + tabIndex: 0 + }, /*#__PURE__*/React__namespace.createElement(Icon, { + name: 'info', + size: sizeMapping$2[size], + className: "Input-icon--right" + })); + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-InputWrapper", + className: classes, + style: { + minWidth: minWidth + }, + onClick: function onClick() { + var _a; + + return (_a = ref.current) === null || _a === void 0 ? void 0 : _a.focus(); + }, + role: "presentation", + onBlur: function onBlur() { + var _a; + + return setIsInputBlank(!((_a = ref.current) === null || _a === void 0 ? void 0 : _a.value)); + } + }, inlineLabel && /*#__PURE__*/React__namespace.createElement("div", { + className: "Input-inlineLabel" + }, /*#__PURE__*/React__namespace.createElement(Text, { + appearance: "subtle" + }, inlineLabel)), size !== 'tiny' && icon && /*#__PURE__*/React__namespace.createElement("div", { + className: leftIconClass + }, /*#__PURE__*/React__namespace.createElement(Icon, { + name: icon, + size: sizeMapping$2[size], + type: iconType + })), /*#__PURE__*/React__namespace.createElement("input", __assign({ + "data-test": "DesignSystem-Input" + }, baseProps, rest, { ref: ref, name: name, - rows: rows, + type: type, + defaultValue: defaultValue, placeholder: placeholder, - className: classes, + className: inputClass, value: value, - defaultValue: defaultValue, required: required, disabled: disabled, + readOnly: readOnly, onChange: onChange, onBlur: onBlur, onClick: onClick, - onFocus: onFocus - })); - }); - Textarea.displayName = 'Textarea'; + onFocus: onFocus, + onPaste: onPaste, + tabIndex: readOnly ? -1 : undefined + })), disabled ? '' : info ? /*#__PURE__*/React__namespace.createElement(Tooltip, { + position: "bottom", + tooltip: info + }, trigger) : actionIcon && (value || defaultValue) ? actionIcon : onClear && (value || defaultValue) && /*#__PURE__*/React__namespace.createElement("div", { + className: rightIconClass + }, /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-Input--closeIcon", + onClick: function onClick(e) { + var _a; - var ActionButton = function ActionButton(props) { - var _a; + (_a = ref.current) === null || _a === void 0 ? void 0 : _a.focus({ + preventScroll: true + }); + onClear(e); + }, + name: 'close', + size: sizeMapping$2[size], + className: "Input-icon--right" + }))); + }); + Input.displayName = 'Input'; + Object.assign(Input, { + ActionButton: ActionButton$1 + }); - var appearance = props.appearance, - label = props.label, - onClick = props.onClick; - var buttonClass = classNames__default['default']((_a = {}, _a['Button'] = true, _a['Button--tiny'] = true, _a['Toast-actionButton'] = true, _a["Toast-actionButton--" + appearance] = appearance, _a)); + var sizeMapping$1 = { + regular: 16, + large: 20 + }; - var onClickHandler = function onClickHandler(e) { - e.preventDefault(); - if (onClick) onClick(e); - }; + var capMin = function capMin(min, value) { + if (min === void 0) { + min = -Infinity; + } - return /*#__PURE__*/React__namespace.createElement("button", { - className: buttonClass, - onClick: onClickHandler - }, /*#__PURE__*/React__namespace.createElement(Text, { - appearance: "white" - }, label)); + return isNaN(min) || !min && min !== 0 || isNaN(value) || !value && value !== 0 ? value : Math.max(min, value); }; - ActionButton.displayName = 'ActionButton'; - ActionButton.defaultProps = { - appearance: 'default' + var capMax = function capMax(max, value) { + if (max === void 0) { + max = +Infinity; + } + + return isNaN(max) || !max && max !== 0 || isNaN(value) || !value && value !== 0 ? value : Math.min(max, value); }; - var Toast = function Toast(props) { - var _a, _b, _c, _d; + var MetricInput = /*#__PURE__*/React__namespace.forwardRef(function (props, forwardedRef) { + var _a, _b, _c, _d, _e, _f; - var appearance = props.appearance, - title = props.title, - message = props.message, - actions = props.actions, - onClose = props.onClose, - className = props.className; + var _g = props.size, + size = _g === void 0 ? 'regular' : _g, + defaultValue = props.defaultValue, + name = props.name, + placeholder = props.placeholder, + icon = props.icon, + prefix = props.prefix, + suffix = props.suffix, + error = props.error, + min = props.min, + max = props.max, + onChange = props.onChange, + onClick = props.onClick, + onBlur = props.onBlur, + onFocus = props.onFocus, + className = props.className, + autoFocus = props.autoFocus, + disabled = props.disabled, + readOnly = props.readOnly, + valueProp = props.value, + _h = props.showActionButton, + showActionButton = _h === void 0 ? true : _h, + onKeyDown = props.onKeyDown, + iconType = props.iconType, + rest = __rest(props, ["size", "defaultValue", "name", "placeholder", "icon", "prefix", "suffix", "error", "min", "max", "onChange", "onClick", "onBlur", "onFocus", "className", "autoFocus", "disabled", "readOnly", "value", "showActionButton", "onKeyDown", "iconType"]); + + var ref = React__namespace.useRef(null); + var isUncontrolled = valueProp === undefined; + + var _j = React__namespace.useState(valueProp || defaultValue), + value = _j[0], + setValue = _j[1]; + + React__namespace.useImperativeHandle(forwardedRef, function () { + return ref.current; + }); + React__namespace.useEffect(function () { + var _a; + + if (autoFocus) (_a = ref.current) === null || _a === void 0 ? void 0 : _a.focus({ + preventScroll: true + }); + }, []); + React__namespace.useEffect(function () { + if (valueProp !== undefined) { + setValue(valueProp); + } + }, [valueProp]); var baseProps = extractBaseProps(props); - var wrapperClass = classNames__default['default']((_a = {}, _a['Toast'] = true, _a['Toast--withMessage'] = message, _a["Toast--" + appearance] = appearance, _a), className); - var IconMapping = { - info: 'info', - success: 'check_circle', - alert: 'error', - warning: 'error' + var classes = classNames__default["default"]((_a = {}, _a['MetricInput'] = true, _a["MetricInput--" + size] = size, _a['MetricInput--disabled'] = disabled || readOnly, _a['MetricInput--error'] = error, _a), className); + var inputClass = classNames__default["default"]((_b = {}, _b['MetricInput-input'] = true, _b["MetricInput-input--" + size] = size, _b["mr-4"] = !suffix && !showActionButton && size === 'regular', _b["mr-6"] = !suffix && !showActionButton && size === 'large', _b)); + var iconClass = classNames__default["default"]((_c = {}, _c['MetricInput-icon'] = true, _c["MetricInput-icon--" + size] = size, _c)); + var prefixClass = classNames__default["default"]((_d = {}, _d['mr-4'] = size === 'regular', _d['mr-5'] = size !== 'regular', _d)); + var suffixClass = classNames__default["default"]((_e = {}, _e['ml-4 mr-3'] = size === 'regular', _e['mx-5'] = size !== 'regular', _e)); + var actionButton = classNames__default["default"]((_f = {}, _f['p-0'] = true, _f["MetricInput-arrowIcon--" + size] = size, _f['ml-3'] = true, _f)); + + var onChangeHandler = function onChangeHandler(e) { + if (isUncontrolled) { + setValue(e.target.value); + } + + if (onChange) onChange(e); }; - var icon = IconMapping[appearance]; - var titleClass = classNames__default['default']((_b = {}, _b['Toast-title'] = true, _b['Toast-title--withMessage'] = message, _b)); - var iconClass = function iconClass(align) { + var onArrowClick = function onArrowClick(e, direction) { var _a; - return classNames__default['default']((_a = {}, _a['Toast-icon'] = true, _a["Toast-icon--" + align] = align, _a["Toast-icon--" + appearance] = appearance, _a)); + var newValue = Number(value || 0); + var decimalDigits = ((_a = newValue.toString().split('.')[1]) === null || _a === void 0 ? void 0 : _a.length) || 0; + var isValid = direction === 'down' ? min !== undefined && newValue > min || min === undefined : max !== undefined && newValue < max || max === undefined; + if (disabled || readOnly || !isValid) return; + newValue = direction === 'down' ? newValue - 1 : newValue + 1; + newValue = capMax(max, capMin(min, +newValue.toFixed(decimalDigits))); + if (isUncontrolled) setValue(newValue); + + if (onChange) { + var syntheticEvent = Object.create(e, { + target: { + value: { + value: newValue + } + } + }); + onChange(syntheticEvent); + } }; - var textClass = classNames__default['default']((_c = {}, _c['Toast-text'] = true, _c["Toast-text--" + appearance] = appearance, _c)); - var headingClass = classNames__default['default']((_d = {}, _d['Toast-heading'] = true, _d["Toast-heading--" + appearance] = appearance, _d)); + var onKeyDownHandler = function onKeyDownHandler(e) { + switch (e.key) { + case 'e': + case 'E': + e.preventDefault(); + return; + + case 'ArrowDown': + e.preventDefault(); + onArrowClick(e, 'down'); + return; - var onCloseHandler = function onCloseHandler() { - if (onClose) onClose(); + case 'ArrowUp': + e.preventDefault(); + onArrowClick(e, 'up'); + return; + } }; - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: wrapperClass - }), icon && /*#__PURE__*/React__namespace.createElement(Icon, { + var handleKeyDown = function handleKeyDown(e) { + if (showActionButton) { + onKeyDownHandler(e); + } else e.preventDefault(); + }; + + var actionButtonSize = size === 'large' ? 'regular' : 'tiny'; + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-MetricInputWrapper", + className: classes, + onKeyDown: onKeyDown, + role: "presentation" + }, icon && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-MetricInput--icon", name: icon, - className: iconClass('left') - }), /*#__PURE__*/React__namespace.createElement("div", { - className: "Toast-body" - }, /*#__PURE__*/React__namespace.createElement("div", { - className: titleClass - }, /*#__PURE__*/React__namespace.createElement(Heading, { - size: "s", - className: headingClass, - appearance: appearance !== 'warning' ? 'white' : 'default' - }, title), /*#__PURE__*/React__namespace.createElement(Icon, { - name: 'close', - className: iconClass('right'), - onClick: onCloseHandler, - appearance: appearance !== 'warning' ? 'white' : 'default' - })), message && /*#__PURE__*/React__namespace.createElement(Text, { - appearance: appearance !== 'warning' ? 'white' : 'default', - className: textClass - }, message), !!(actions === null || actions === void 0 ? void 0 : actions.length) && /*#__PURE__*/React__namespace.createElement("div", { - className: "Toast-actions" - }, actions.slice(0, 2).map(function (action, index) { - return /*#__PURE__*/React__namespace.createElement(ActionButton, { - key: index, - label: action.label, - appearance: appearance, - onClick: action.onClick - }); - })))); + type: iconType, + size: sizeMapping$1[size], + appearance: !value ? 'disabled' : 'subtle', + className: iconClass + }), prefix && /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-MetricInput--prefix", + className: prefixClass, + size: size, + appearance: "subtle" + }, prefix), /*#__PURE__*/React__namespace.createElement("input", __assign({ + "data-test": "DesignSystem-MetricInput" + }, baseProps, rest, { + type: "number", + ref: ref, + name: name, + defaultValue: defaultValue, + placeholder: placeholder, + className: inputClass, + value: value, + disabled: disabled, + readOnly: readOnly, + onChange: onChangeHandler, + onBlur: onBlur, + onClick: onClick, + onFocus: onFocus, + onKeyDown: handleKeyDown + })), suffix && /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-MetricInput--suffix", + className: suffixClass, + size: size, + appearance: "subtle" + }, suffix), showActionButton && /*#__PURE__*/React__namespace.createElement("div", { + className: "MetricInput-arrowIcons" + }, /*#__PURE__*/React__namespace.createElement(Button, { + type: "button", + icon: "keyboard_arrow_up", + size: actionButtonSize, + className: actionButton + " mb-2", + onClick: function onClick(e) { + return onArrowClick(e, 'up'); + }, + "data-test": "DesignSystem-MetricInput--upIcon" + }), /*#__PURE__*/React__namespace.createElement(Button, { + type: "button", + icon: "keyboard_arrow_down", + size: actionButtonSize, + className: actionButton, + onClick: function onClick(e) { + return onArrowClick(e, 'down'); + }, + "data-test": "DesignSystem-MetricInput--downIcon" + }))); + }); + MetricInput.displayName = 'MetricInput'; + + var isEditable = function isEditable(mask, pos) { + return _typeof(mask[pos]) === 'object'; }; - Toast.displayName = 'Toast'; - Toast.defaultProps = { - appearance: 'default' + var getDefaultValue = function getDefaultValue(mask, placeholderChar) { + var val = ''; + + for (var i = 0; i < mask.length; i++) { + val += isEditable(mask, i) ? placeholderChar : mask[i]; + } + + return val; }; - var PopperWrapper = function (_super) { - __extends(PopperWrapper, _super); + var InputMask = /*#__PURE__*/React__namespace.forwardRef(function (props, forwardRef) { + props.mask; + var valueProp = props.value, + _a = props.placeholderChar, + placeholderChar = _a === void 0 ? '_' : _a, + _b = props.validators, + validators = _b === void 0 ? [] : _b, + _c = props.clearOnEmptyBlur, + clearOnEmptyBlur = _c === void 0 ? true : _c, + defaultValue = props.defaultValue, + mask = props.mask, + error = props.error, + caption = props.caption, + required = props.required, + onChange = props.onChange, + onPaste = props.onPaste, + onBlur = props.onBlur, + onFocus = props.onFocus, + onClear = props.onClear, + className = props.className, + id = props.id, + helpText = props.helpText, + rest = __rest(props, ["mask", "value", "placeholderChar", "validators", "clearOnEmptyBlur", "defaultValue", "mask", "error", "caption", "required", "onChange", "onPaste", "onBlur", "onFocus", "onClear", "className", "id", "helpText"]); - function PopperWrapper(props) { - var _this = _super.call(this, props) || this; + var isEditable = React__namespace.useCallback(function (pos) { + return _typeof(mask[pos]) === 'object'; + }, [mask]); + var getNewCursorPosition = React__namespace.useCallback(function (type, position) { + if (type === 'right') { + for (var i = position; i < mask.length; i++) { + if (isEditable(i)) return i; + } - _this.togglePopper = function (type, newValue) { - var _a = _this.props, - open = _a.open, - onToggle = _a.onToggle; - onToggle(newValue === undefined ? !open : newValue, type); - }; + return mask.length; + } - _this.findDOMNode = function (ref) { - return ReactDOM__namespace.findDOMNode(ref.current); - }; + if (type === 'left') { + for (var i = position; i >= 0; i--) { + if (isEditable(i - 1)) return i; + } - _this.doesEventContainsElement = function (event, ref) { - var el = _this.findDOMNode(ref); + return 0; + } - return el && el.contains(event.target); + return position; + }, [mask, isEditable]); + var getDefaultSelection = React__namespace.useCallback(function () { + var pos = getNewCursorPosition('right', 0); + return { + start: pos, + end: pos }; + }, [getNewCursorPosition]); + var getPlaceholderValue = React__namespace.useCallback(function (start, end) { + if (start === void 0) { + start = 0; + } - _this.getUpdatedStyle = function (oldStyle, placement, offset) { - var style = _this.props.style; + if (end === void 0) { + end = mask.length - 1; + } - var newStyle = __assign(__assign({}, style), oldStyle); + return getDefaultValue(mask, placeholderChar).slice(start, end + 1); + }, [mask, placeholderChar]); + var defaultPlaceholderValue = React__namespace.useMemo(function () { + return getPlaceholderValue(); + }, [getPlaceholderValue]); + var defaultSelection = React__namespace.useMemo(function () { + return getDefaultSelection(); + }, [getDefaultSelection]); + var ref = React__namespace.useRef(null); + var deferId = React__namespace.useRef(); + var selectionPos = React__namespace.useRef(defaultSelection); + var newSelectionPos = React__namespace.useRef(0); - var position = placement ? placement.split('-')[0] : placement; - - switch (position) { - case 'top': - newStyle.marginBottom = _this.offsetMapping[offset]; - break; + var _d = React__namespace.useState(defaultValue || valueProp || ''), + value = _d[0], + setValue = _d[1]; - case 'bottom': - newStyle.marginTop = _this.offsetMapping[offset]; - break; + React__namespace.useImperativeHandle(forwardRef, function () { + return ref.current; + }); + React__namespace.useEffect(function () { + setValue(valueProp || ''); + }, [valueProp]); + React__namespace.useEffect(function () { + setCursorPosition(newSelectionPos.current); + }, [value]); + var getSelectionLength = React__namespace.useCallback(function (val) { + return Math.abs(val.end - val.start); + }, []); + var getCurrSelection = React__namespace.useCallback(function () { + var _a, _b; - case 'left': - newStyle.marginRight = _this.offsetMapping[offset]; - break; + return { + start: ((_a = ref.current) === null || _a === void 0 ? void 0 : _a.selectionStart) || 0, + end: ((_b = ref.current) === null || _b === void 0 ? void 0 : _b.selectionEnd) || 0 + }; + }, [ref.current]); + var setSelectionRange_compatible_types = ['text', 'password', 'tel', 'url']; + var setSelectionPos = React__namespace.useCallback(function (pos) { + if (ref.current) { + var el = ref.current; + var start = Math.min(pos.start, pos.end); + var end = Math.max(pos.start, pos.end); - case 'right': - newStyle.marginLeft = _this.offsetMapping[offset]; - break; + if (setSelectionRange_compatible_types.includes(el.type)) { + el.setSelectionRange(start, end); + } else { + var el_type = el.type; + el.type = 'text'; + el.setSelectionRange(start, end); + el.type = el_type; } + } + }, [ref.current]); + var setCursorPosition = React__namespace.useCallback(function (val) { + return setSelectionPos({ + start: val, + end: val + }); + }, [setSelectionPos]); + var insertAtIndex = React__namespace.useCallback(function (currValue, index, iterator) { + if (iterator === void 0) { + iterator = 0; + } - return newStyle; - }; - - _this.state = {}; - _this.hoverableDelay = 100; - _this.offsetMapping = { - small: '2px', - medium: '4px', - large: '8px' - }; - _this.triggerRef = /*#__PURE__*/React__namespace.createRef(); - _this.popupRef = /*#__PURE__*/React__namespace.createRef(); - _this.getPopperChildren = _this.getPopperChildren.bind(_this); - _this.mouseMoveHandler = _this.mouseMoveHandler.bind(_this); - _this.handleMouseEnter = _this.handleMouseEnter.bind(_this); - _this.handleMouseLeave = _this.handleMouseLeave.bind(_this); - _this.boundaryScrollHandler = _this.boundaryScrollHandler.bind(_this); - return _this; - } + var newValue = ''; + var newIndex = index + 1; + var newIterator = iterator; - PopperWrapper.prototype.componentDidMount = function () { - this.addBoundaryScrollHandler(); - }; + if (index >= mask.length) { + return newValue; + } - PopperWrapper.prototype.componentDidUpdate = function (prevProps) { - if (!prevProps.boundaryElement && this.props.boundaryElement) { - this.removeBoundaryScrollHandler(); - this.addBoundaryScrollHandler(); + if (iterator >= currValue.length) { + selectionPos.current = { + start: index, + end: index + }; + return newValue; } - if (prevProps.open !== this.props.open) { - this._throttleWait = false; + var m = mask[index]; - if (this.props.open) { - var triggerElement = this.findDOMNode(this.triggerRef); - var zIndex = this.getZIndexForLayer(triggerElement); - this.setState({ - zIndex: zIndex === undefined ? zIndex : zIndex + 1 - }); + if (isEditable(index)) { + if (currValue[iterator].match(m)) { + newValue += currValue[iterator]; + } else { + newValue += placeholderChar; } + + newIterator++; + } else { + newValue += m; } - }; - PopperWrapper.prototype.componentWillUnmount = function () { - this.removeBoundaryScrollHandler(); - }; + newValue += insertAtIndex(currValue, newIndex, newIterator); + return newValue; + }, [mask, placeholderChar, isEditable]); + var updateSelection = React__namespace.useCallback(function () { + selectionPos.current = getCurrSelection(); + deferId.current = window.requestAnimationFrame(updateSelection); + }, [selectionPos.current, getCurrSelection]); - PopperWrapper.prototype.boundaryScrollHandler = function () { - var _a = this.props, - open = _a.open, - on = _a.on, - closeOnScroll = _a.closeOnScroll; + var matchSeparatorValue = function matchSeparatorValue(currValue) { + var separator = props.placeholder || 'dd/mm/yyyy'; - if (on === 'click' && closeOnScroll) { - if (open) { - if (!this._throttleWait) { - this.togglePopper('onScroll', false); - this._throttleWait = true; - } - } + if (separator.substring(0, 4) === 'yyyy') { + return currValue && currValue[4] === separator[4] && currValue[7] === separator[7]; } - }; - PopperWrapper.prototype.addBoundaryScrollHandler = function () { - if (this.props.boundaryElement) { - this.props.boundaryElement.addEventListener('scroll', this.boundaryScrollHandler); - } + return currValue && currValue[2] === separator[2] && currValue[5] === separator[5]; }; - PopperWrapper.prototype.removeBoundaryScrollHandler = function () { - if (this.props.boundaryElement) { - this.props.boundaryElement.removeEventListener('scroll', this.boundaryScrollHandler); + var isSameFormat = function isSameFormat(currValue, inputLength) { + var value = currValue.substring(0, inputLength); + + if (inputLength === 23) { + var date = value.split(' - '); + var startVal = date[0]; + var endVal = date[1]; + return matchSeparatorValue(startVal) && matchSeparatorValue(endVal); } + + return matchSeparatorValue(value); }; - PopperWrapper.prototype.mouseMoveHandler = function () { - var _this = this; + var onPasteHandler = function onPasteHandler(e) { + var _a; - if (this._timer) clearTimeout(this._timer); - this._timer = window.setTimeout(function () { - var onToggle = _this.props.onToggle; - onToggle(false, 'mouseLeave'); - }, this.hoverableDelay); + e.preventDefault(); + var pastedValue = (_a = e.clipboardData) === null || _a === void 0 ? void 0 : _a.getData('Text'); + var sameFormat = isSameFormat(pastedValue, pastedValue.length); + var isValidDate = isValid(validators, pastedValue); + + if (sameFormat && onPaste && isValidDate) { + onPaste(e, pastedValue); + setValue(pastedValue); + } }; - PopperWrapper.prototype.handleMouseEnter = function () { - var on = this.props.on; + var onChangeHandler = React__namespace.useCallback(function (e) { + var _a; - if (on === 'hover') { - if (this._timer) clearTimeout(this._timer); - var onToggle = this.props.onToggle; - onToggle(true, 'mouseEnter'); + var inputVal = (_a = e.currentTarget) === null || _a === void 0 ? void 0 : _a.value; + var currSelection = getCurrSelection(); + var start = Math.min(selectionPos.current.start, currSelection.start); + var end = currSelection.end; + var cursorPosition = start; + var enteredVal = ''; + var updatedVal = ''; + var removedLength = 0; + var insertedStringLength = 0; + enteredVal = inputVal.slice(start, end); + updatedVal = insertAtIndex(enteredVal, start); + var oldValue = value; + + if (oldValue.length === 0 && (id === 'parent-TimePicker' || id === 'parent-DatePicker')) { + oldValue = defaultPlaceholderValue; } - }; - PopperWrapper.prototype.handleMouseLeave = function () { - var on = this.props.on; + insertedStringLength = updatedVal.length; - if (on === 'hover') { - var _a = this.props, - hoverable = _a.hoverable, - onToggle = _a.onToggle; + if (currSelection.end > selectionPos.current.end) { + removedLength = insertedStringLength ? getSelectionLength(selectionPos.current) : 0; + } else if (inputVal.length < oldValue.length) { + removedLength = oldValue.length - inputVal.length; + } - if (hoverable) { - this.mouseMoveHandler(); - } else { - onToggle(false, 'mouseLeave'); - } + var maskedVal = oldValue.split(''); + + for (var i = 0; i < insertedStringLength; i++) { + maskedVal[start + i] = updatedVal[i]; } - }; - PopperWrapper.prototype.getZIndexForLayer = function (node) { - if (node === null) { - return; + for (var i = 0; i < removedLength; i++) { + var index$1 = start + insertedStringLength + i; + maskedVal[index$1] = getPlaceholderValue(index$1, index$1); } - var layerNode = node.closest('[data-layer]') || document.body; - var zIndex = layerNode === document.body ? 'auto' : parseInt(window.getComputedStyle(layerNode).zIndex || '0', 10); - return zIndex === 'auto' || isNaN(zIndex) ? undefined : zIndex; - }; + var enteredValue = maskedVal.slice(0, mask.length).join(''); - PopperWrapper.prototype.getTriggerElement = function (ref) { - var _this = this; + if (updatedVal !== placeholderChar && updatedVal !== '' && !updatedVal.includes(placeholderChar) && isValid(validators, enteredValue)) { + cursorPosition += insertedStringLength; + } - var _a = this.props, - trigger = _a.trigger, - on = _a.on, - triggerClass = _a.triggerClass; - var options = on === 'hover' ? { - ref: ref, - onMouseEnter: this.handleMouseEnter, - onMouseLeave: this.handleMouseLeave - } : { - ref: ref, - onClick: function onClick(ev) { - ev.stopPropagation(); + var newCursorPosition = getNewCursorPosition(removedLength ? 'left' : 'right', cursorPosition); - _this.togglePopper('onClick'); - } - }; - var classes = classNames__default['default']('PopperWrapper-trigger', triggerClass); + if (removedLength === 1 && !updatedVal.length && !isEditable(cursorPosition) && newCursorPosition > 0) { + cursorPosition = newCursorPosition; + cursorPosition--; + maskedVal[cursorPosition] = placeholderChar; + } else if (removedLength !== 1) { + cursorPosition = newCursorPosition; + } - var onOutsideClickHandler = function onOutsideClickHandler(event) { - var _a = _this.props, - open = _a.open, - closeOnBackdropClick = _a.closeOnBackdropClick; + var newValue = maskedVal.slice(0, mask.length).join(''); + newSelectionPos.current = cursorPosition; - if (open && closeOnBackdropClick) { - if (!_this.doesEventContainsElement(event, _this.popupRef)) { - _this.togglePopper('outsideClick'); - } + if (newValue !== oldValue && isValid(validators, newValue)) { + if (defaultPlaceholderValue === '__:__ _M') { + setValue(newValue.toUpperCase()); + onChange === null || onChange === void 0 ? void 0 : onChange(e, newValue.toUpperCase()); + } else { + setValue(newValue); + onChange === null || onChange === void 0 ? void 0 : onChange(e, newValue); } - }; + } else { + window.requestAnimationFrame(function () { + return setCursorPosition(newSelectionPos.current); + }); + } + }, [selectionPos.current, validators, getCurrSelection, insertAtIndex, getSelectionLength, getPlaceholderValue, getNewCursorPosition, isEditable, setCursorPosition, setValue, onChange]); + var onBlurHandler = React__namespace.useCallback(function (e) { + var inputVal = e.currentTarget.value; - return /*#__PURE__*/React__namespace.createElement(OutsideClick, __assign({ - className: classes, - onOutsideClick: onOutsideClickHandler - }, options), trigger); - }; + if (clearOnEmptyBlur) { + if (inputVal === defaultPlaceholderValue) { + setValue(''); + inputVal = ''; + } + } - PopperWrapper.prototype.getPopperChildren = function (_a) { - var ref = _a.ref, - style = _a.style, - placement = _a.placement, - outOfBoundaries = _a.outOfBoundaries; - var _b = this.props, - offset = _b.offset, - children = _b.children; - var zIndex = this.state.zIndex; - var newStyle = offset ? this.getUpdatedStyle(style, placement, offset) : style; - var element = /*#__PURE__*/React__namespace.cloneElement(children, { - ref: ref, - style: __assign(__assign({}, newStyle), { - zIndex: zIndex - }), - 'data-placement': placement, - 'data-hide': outOfBoundaries, - onMouseEnter: this.handleMouseEnter, - onMouseLeave: this.handleMouseLeave - }); - return element; - }; + onBlur === null || onBlur === void 0 ? void 0 : onBlur(e, inputVal); + if (deferId.current) window.cancelAnimationFrame(deferId.current); + }, [clearOnEmptyBlur, deferId.current, getPlaceholderValue, setValue, onBlur]); + var onClearHandler = React__namespace.useCallback(function (e) { + newSelectionPos.current = defaultSelection.start; + setValue(defaultPlaceholderValue); + onClear === null || onClear === void 0 ? void 0 : onClear(e); + }, [setValue, getPlaceholderValue, setCursorPosition, getDefaultSelection, onClear]); + var onFocusHandler = React__namespace.useCallback(function (e) { + deferId.current = window.requestAnimationFrame(updateSelection); - PopperWrapper.prototype.render = function () { - var _this = this; + if (!value) { + newSelectionPos.current = defaultSelection.start; + setValue(getPlaceholderValue()); + } - var _a = this.props, - placement = _a.placement, - appendToBody = _a.appendToBody, - open = _a.open, - hide = _a.hide, - boundaryElement = _a.boundaryElement; - return /*#__PURE__*/React__namespace.createElement(reactPopper.Manager, null, /*#__PURE__*/React__namespace.createElement(reactPopper.Reference, { - innerRef: this.triggerRef - }, function (_a) { - var ref = _a.ref; - return _this.getTriggerElement(ref); - }), open && appendToBody && /*#__PURE__*/ReactDOM__namespace.createPortal( /*#__PURE__*/React__namespace.createElement(reactPopper.Popper, { - placement: placement, - innerRef: this.popupRef, - modifiers: { - preventOverflow: { - boundariesElement: boundaryElement || document.body - }, - hide: { - enabled: hide - } - } - }, this.getPopperChildren), document.body), open && !appendToBody && /*#__PURE__*/React__namespace.createElement(reactPopper.Popper, { - placement: placement, - innerRef: this.popupRef - }, this.getPopperChildren)); - }; - - PopperWrapper.defaultProps = { - on: 'click', - offset: 'medium', - closeOnBackdropClick: true, - hoverable: true, - appendToBody: true, - style: {} - }; - return PopperWrapper; - }(React__namespace.Component); - - var propsList$1 = ['appendToBody', 'trigger', 'hoverable', 'on', 'open', 'closeOnBackdropClick', 'offset', 'closeOnScroll']; - var Popover = function Popover(props) { - var _a; - - var position = props.position, - customStyle = props.customStyle, - dark = props.dark, - children = props.children, - onToggle = props.onToggle, - className = props.className, - hideOnReferenceEscape = props.hideOnReferenceEscape, - boundaryElement = props.boundaryElement, - rest = __rest(props, ["position", "customStyle", "dark", "children", "onToggle", "className", "hideOnReferenceEscape", "boundaryElement"]); - - var _b = React__namespace.useState(!!props.open), - open = _b[0], - setOpen = _b[1]; - - var _c = React__namespace.useState(false), - init = _c[0], - setInit = _c[1]; - - React__namespace.useEffect(function () { - if (props.open !== undefined) setOpen(props.open); - }, [props.open]); - var defaultOnToggle = React__namespace.useCallback(function (newOpen) { - setOpen(newOpen); - }, []); - React__namespace.useEffect(function () { - if (!init) { - if ('current' in boundaryElement && boundaryElement.current) { - setInit(true); - } - } - }, [boundaryElement]); - var classes = classNames__default['default']((_a = { - Popover: true - }, _a['Popover--dark'] = dark, _a), className); - var PopoverWrapper = /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-Popover", + onFocus === null || onFocus === void 0 ? void 0 : onFocus(e); + }, [deferId.current, value, updateSelection, setValue, setSelectionPos, onFocus]); + var classes = React__namespace.useMemo(function () { + return classNames__default["default"]({ + 'd-flex flex-column flex-grow-1': true + }, className); + }, [className]); + var isValueEqualPlaceholder = value === defaultPlaceholderValue; + return /*#__PURE__*/React__namespace.createElement("div", { className: classes, - "data-layer": true - }, children); - return /*#__PURE__*/React__namespace.createElement(PopperWrapper, __assign({}, rest, { - init: init, - boundaryElement: 'current' in boundaryElement ? boundaryElement.current : boundaryElement, - open: open, - hide: hideOnReferenceEscape, - style: customStyle, - onToggle: onToggle || defaultOnToggle, - placement: position - }), PopoverWrapper); - }; - Popover.displayName = 'Popover'; - Popover.defaultProps = Object.assign({}, filterProps(PopperWrapper.defaultProps, propsList$1, true), { - offset: 'large', - position: 'bottom', - hideOnReferenceEscape: true, - customStyle: {}, - boundaryElement: document.body + "data-test": "DesignSystem-InputMask--Wrapper" + }, /*#__PURE__*/React__namespace.createElement(Input, __assign({}, rest, { + value: value, + error: error, + required: required, + onFocus: onFocusHandler, + onChange: onChangeHandler, + onClear: !isValueEqualPlaceholder ? onClearHandler : undefined, + onBlur: onBlurHandler, + onPaste: onPasteHandler, + autoComplete: 'off', + ref: ref + })), /*#__PURE__*/React__namespace.createElement(HelpText, { + message: error ? caption : helpText, + error: error + })); }); - - var keyCodes = { - BACKSPACE: 'Backspace', - DELETE: 'Delete', - ENTER: 'Enter' + InputMask.displayName = 'InputMask'; + InputMask.utils = { + getDefaultValue: getDefaultValue }; - var ChipInput = function ChipInput(props) { + var X = InputMask; + + var Label = function Label(props) { var _a; - var chipOptions = props.chipOptions, - allowDuplicates = props.allowDuplicates, + var required = props.required, + optional = props.optional, + withInput = props.withInput, disabled = props.disabled, - placeholder = props.placeholder, - defaultValue = props.defaultValue, - value = props.value, + children = props.children, className = props.className, - autoFocus = props.autoFocus, - onChange = props.onChange, - onBlur = props.onBlur, - onFocus = props.onFocus; - var inputRef = /*#__PURE__*/React__namespace.createRef(); - - var _b = React__namespace.useState(value || defaultValue), - chips = _b[0], - setChips = _b[1]; - - var _c = React__namespace.useState(''), - inputValue = _c[0], - setInputValue = _c[1]; + info = props.info, + rest = __rest(props, ["required", "optional", "withInput", "disabled", "children", "className", "info"]); var baseProps = extractBaseProps(props); - React__namespace.useEffect(function () { - if (value !== undefined) { - setChips(value); - } - }, [value]); - var ChipInputClass = classNames__default['default']((_a = { - ChipInput: true - }, _a['ChipInput--disabled'] = disabled, _a['ChipInput--withChips'] = chips.length > 0, _a), className); - - var onUpdateChips = function onUpdateChips(updatedChips) { - if (onChange) onChange(updatedChips); - }; - - var onChipDeleteHandler = function onChipDeleteHandler(index) { - var updatedChips = __spreadArrays(chips); - - updatedChips.splice(index, 1); + var LabelClass = classNames__default["default"]((_a = { + Label: true + }, _a['Label--withInput'] = withInput, _a['Label--optional'] = optional, _a), className); + var classes = classNames__default["default"]({ + 'Label-text': true, + 'Label--disabled': disabled + }); - if (!value) { - setChips(updatedChips); + var renderInfo = function renderInfo(isRequired, isOptional) { + if (isRequired === void 0) { + isRequired = false; } - onUpdateChips(updatedChips); - }; - - var onChipAddHandler = function onChipAddHandler() { - if (!inputValue) return; - var chip = inputValue.trim().toLowerCase(); - - if ((allowDuplicates || chips.indexOf(chip) === -1) && chip) { - var updatedChips = __spreadArrays(chips, [chip]); - - if (!value) { - setChips(updatedChips); - } - - onUpdateChips(updatedChips); - setInputValue(''); + if (isRequired) { + return /*#__PURE__*/React__namespace.createElement("span", { + className: "Label-requiredIndicator", + "data-test": "DesignSystem-Label--RequiredIndicator" + }); } - }; - var onDeleteAllHandler = function onDeleteAllHandler() { - var updatedChips = []; - - if (!value) { - setChips(updatedChips); + if (isOptional) { + return /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-Label--OptionalText", + appearance: "subtle", + className: "Label-optionalText" + }, "(optional)"); } - onUpdateChips(updatedChips); + return null; }; - var onKeyDownHandler = function onKeyDownHandler(event) { - var chipsLength = chips.length; - - switch (event.key) { - case keyCodes.DELETE: - case keyCodes.BACKSPACE: - if (inputValue === '' && chipsLength > 0) { - onChipDeleteHandler(chipsLength - 1); - } - - break; - - case keyCodes.ENTER: - event.preventDefault(); - onChipAddHandler(); - break; - } + var renderIndicator = function renderIndicator(info) { + return /*#__PURE__*/React__namespace.createElement(Tooltip, { + tooltip: info + }, /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-Label--Info", + name: "info", + size: 12, + appearance: "subtle", + className: "ml-3 cursor-pointer d-flex align-items-center" + })); }; - var onInputChangeHandler = function onInputChangeHandler(e) { - setInputValue(e.target.value); - }; + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-Label" + }, baseProps, { + className: LabelClass + }), /*#__PURE__*/React__namespace.createElement(Link$1, __assign({ + "data-test": "DesignSystem-Label--Text", + className: classes, + componentType: "label" + }, rest), children, renderInfo(required, optional), info && renderIndicator(info))); + }; + Label.displayName = 'Label'; - var onClickHandler = function onClickHandler() { - var _a; + var Caption = function Caption(props) { + var _a, _b; - (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus(); - }; + var error = props.error, + hide = props.hide, + withInput = props.withInput, + children = props.children, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]((_a = { + Caption: true + }, _a['Caption--hidden'] = hide, _a['Caption--withInput'] = withInput, _a), className); + var errorIconClass = classNames__default["default"]((_b = {}, _b['Caption-icon'] = true, _b)); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: classes, + "data-test": "DesignSystem-Caption" + }), error && /*#__PURE__*/React__namespace.createElement("div", { + className: errorIconClass + }, /*#__PURE__*/React__namespace.createElement(Icon, { + size: 14, + name: 'error', + appearance: 'alert' + })), /*#__PURE__*/React__namespace.createElement(Text, { + appearance: error ? 'destructive' : 'subtle', + size: "small", + weight: "medium" + }, "" + children)); + }; + Caption.displayName = 'Caption'; - var chipComponents = chips.map(function (chip, index) { - var _a = chipOptions.type, - type = _a === void 0 ? 'input' : _a, - _onClick = chipOptions.onClick, - rest = __rest(chipOptions, ["type", "onClick"]); + var Legend = function Legend(props) { + var _a; - return /*#__PURE__*/React__namespace.createElement(Chip, __assign({ - "data-test": "DesignSystem-ChipInput--Chip", - label: chip, - name: chip, - type: type, - disabled: disabled, - key: index, - className: "my-2 mx-2", - onClick: function onClick() { - return _onClick && _onClick(chip, index); - }, - onClose: function onClose() { - return onChipDeleteHandler(index); - } - }, rest)); - }); + var iconAppearance = props.iconAppearance, + iconSize = props.iconSize, + labelAppearance = props.labelAppearance, + children = props.children, + labelWeight = props.labelWeight, + _onMouseEnter = props.onMouseEnter, + _onMouseLeave = props.onMouseLeave, + _onClick = props.onClick, + className = props.className; + var baseProps = extractBaseProps(props); + var legendClass = classNames__default["default"]((_a = {}, _a['Legend'] = true, _a), className); + var styles = { + background: "var(--" + iconAppearance + ")", + height: iconSize + "px", + width: iconSize + "px" + }; + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: legendClass, + onClick: function onClick(e) { + return _onClick && _onClick(e); + }, + onMouseEnter: function onMouseEnter(e) { + return _onMouseEnter && _onMouseEnter(e); + }, + onMouseLeave: function onMouseLeave(e) { + return _onMouseLeave && _onMouseLeave(e); + } + }), /*#__PURE__*/React__namespace.createElement("span", { + className: "Legend-icon", + style: styles + }), /*#__PURE__*/React__namespace.createElement(Text, { + appearance: labelAppearance, + weight: labelWeight + }, children)); + }; + Legend.displayName = 'Legend'; + Legend.defaultProps = { + iconAppearance: 'inverse', + iconSize: 16 + }; + + var Editable = function Editable(props) { + var _a; + + var className = props.className, + onChange = props.onChange, + editing = props.editing, + children = props.children; + var baseProps = extractBaseProps(props); + var EditableClass = classNames__default["default"]((_a = {}, _a['Editable'] = true, _a), className); return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-ChipInput" + "data-test": "DesignSystem-Editable" }, baseProps, { - className: ChipInputClass, - onClick: onClickHandler + className: EditableClass }), /*#__PURE__*/React__namespace.createElement("div", { - className: "ChipInput-wrapper" - }, chips && chips.length > 0 && chipComponents, /*#__PURE__*/React__namespace.createElement("input", { - "data-test": "DesignSystem-ChipInput--Input", - ref: inputRef, - className: "ChipInput-input", - autoFocus: autoFocus, - placeholder: placeholder, - disabled: disabled, - value: inputValue, - onBlur: onBlur, - onFocus: onFocus, - onChange: onInputChangeHandler, - onKeyDown: onKeyDownHandler - })), chips.length > 0 && /*#__PURE__*/React__namespace.createElement(Icon, { - "data-test": "DesignSystem-ChipInput--Icon", - name: "close", - appearance: "subtle", - className: "ChipInput-icon", - onClick: onDeleteAllHandler - })); - }; - ChipInput.displayName = 'ChipInput'; - ChipInput.defaultProps = { - chipOptions: {}, - defaultValue: [], - allowDuplicates: false, - autoFocus: false + "data-test": "DesignSystem-EditableWrapper", + onClick: function onClick() { + return onChange('edit'); + }, + onMouseEnter: function onMouseEnter() { + return !editing && onChange('hover'); + }, + onMouseLeave: function onMouseLeave() { + return !editing && onChange('default'); + } + }, children)); }; + Editable.displayName = 'Editable'; - var getTextAppearance = function getTextAppearance(isActive, disabled) { - return disabled ? 'disabled' : isActive ? 'link' : 'default'; - }; - var getIconAppearance = function getIconAppearance(isActive, disabled) { - return disabled ? 'disabled' : isActive ? 'info' : 'default'; - }; - var getPillsAppearance = function getPillsAppearance(isActive) { - return isActive ? 'primary' : 'secondary'; - }; - var getMenu = function getMenu(menus, active) { - for (var _i = 0, menus_1 = menus; _i < menus_1.length; _i++) { - var menu = menus_1[_i]; + var EditableDropdown = function EditableDropdown(props) { + var _a, _b, _c; - if (active.name && menu.name === active.name || active.link && menu.link === active.link) { - return menu; - } + var placeholder = props.placeholder, + dropdownOptions = props.dropdownOptions, + className = props.className, + customTriggerRenderer = props.customTriggerRenderer; - if (menu.subMenu) { - var activeMenu = menu.subMenu.find(function (submenu) { - return active.name && submenu.name === active.name || active.link && submenu.link === active.link; - }); - if (activeMenu) return activeMenu; - } - } + var onDropdownChange = dropdownOptions.onChange, + onDropdownClose = dropdownOptions.onClose, + rest = __rest(dropdownOptions, ["onChange", "onClose"]); - return null; - }; - var isMenuActive = function isMenuActive(menus, menu, active) { - if (active) { - var currActiveMenu = getMenu(menus, active); - return !!currActiveMenu && (currActiveMenu === menu || currActiveMenu.name.split('.')[0] === menu.name || currActiveMenu.name === menu.name || !!currActiveMenu.link && currActiveMenu.link === menu.link); - } + var _d = React__namespace.useState(placeholder), + label = _d[0], + setLabel = _d[1]; - return false; - }; + var _e = React__namespace.useState(false), + editing = _e[0], + setEditing = _e[1]; - var MenuItem = function MenuItem(props) { - var _a; + var _f = React__namespace.useState(false), + showComponent = _f[0], + setShowComponent = _f[1]; - var menu = props.menu, - isActive = props.isActive, - expanded = props.expanded, - rounded = props.rounded, - hasSubmenu = props.hasSubmenu, - isChildren = props.isChildren, - isChildrenVisible = props.isChildrenVisible, - onClick = props.onClick; + var CompClass = classNames__default["default"]((_a = {}, _a['EditableDropdown'] = true, _a), className); + var DefaultCompClass = classNames__default["default"]((_b = {}, _b['EditableDropdown-default'] = true, _b['d-none'] = showComponent, _b)); + var EditableDropdownClass = classNames__default["default"]((_c = {}, _c['d-none'] = !showComponent, _c)); var baseProps = extractBaseProps(props); - var onClickHandler = function onClickHandler() { - if (onClick) onClick(menu); + var getLabel = function getLabel(updatedLabel) { + setLabel(updatedLabel); }; - var ItemClass = classNames__default['default']((_a = {}, _a['MenuItem'] = true, _a['MenuItem--vertical'] = true, _a['MenuItem--collapsed'] = !expanded, _a['MenuItem--expanded'] = expanded, _a['MenuItem--active'] = isActive, _a['MenuItem--disabled'] = menu.disabled, _a['MenuItem--subMenu'] = isChildren && expanded, _a['MenuItem--rounded'] = rounded && expanded, _a)); + var onChangeHandler = function onChangeHandler(eventType) { + switch (eventType) { + case 'edit': + setEditing(true); + setShowComponent(true); + break; - var renderSubMenu = function renderSubMenu() { - var _a; + case 'hover': + setShowComponent(true); + break; - if (hasSubmenu) { - return /*#__PURE__*/React__namespace.createElement(Icon, { - className: "mx-4", - name: isChildrenVisible ? 'keyboard_arrow_up' : 'keyboard_arrow_down', - appearance: "subtle" - }); + case 'default': + setShowComponent(false); } + }; - if (menu.count !== undefined) { - var count = menu.count > 99 ? '99+' : menu.count; - var PillsClass = classNames__default['default']((_a = {}, _a['MenuItem-count'] = true, _a['MenuItem-count--disabled'] = menu.disabled, _a)); - return /*#__PURE__*/React__namespace.createElement(Pills, { - subtle: menu.disabled, - className: PillsClass, - appearance: getPillsAppearance(isActive), - "data-test": "DesignSystem-VerticalNav--Pills" - }, count); - } + var onChange = function onChange(value) { + setEditing(false); + setShowComponent(false); + if (onDropdownChange) onDropdownChange(value); + }; - return null; + var onClose = function onClose(selected) { + setEditing(false); + setShowComponent(false); + if (onDropdownClose) onDropdownClose(selected); + }; + + var renderComponent = function renderComponent(componentLabel) { + if (customTriggerRenderer) return customTriggerRenderer(componentLabel); + return componentLabel; }; - if (!expanded && !menu.icon) return null; return /*#__PURE__*/React__namespace.createElement("div", __assign({ - className: ItemClass + "data-test": "DesignSystem-EditableDropdown" }, baseProps, { - onClick: onClickHandler - }), /*#__PURE__*/React__namespace.createElement("div", { - className: "d-flex align-items-center overflow-hidden" - }, menu.icon && /*#__PURE__*/React__namespace.createElement(Icon, { - "data-test": "DesignSystem-VerticalNav--Icon", - className: expanded ? 'mr-4' : '', - name: menu.icon, - appearance: getIconAppearance(isActive, menu.disabled) - }), expanded && /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-VerticalNav--Text", - appearance: getTextAppearance(isActive, menu.disabled) - }, menu.label)), expanded && renderSubMenu()); + className: CompClass + }), /*#__PURE__*/React__namespace.createElement(Editable, { + onChange: onChangeHandler, + editing: editing + }, /*#__PURE__*/React__namespace.createElement(Dropdown, __assign({ + placeholder: placeholder, + onChange: onChange, + getLabel: getLabel, + onClose: onClose, + className: EditableDropdownClass, + "data-test": "DesignSystem-EditableDropdown--Dropdown" + }, rest)), /*#__PURE__*/React__namespace.createElement("div", { + className: DefaultCompClass, + "data-test": "DesignSystem-EditableDropdown--Default" + }, renderComponent(label || placeholder)))); }; - MenuItem.defaultProps = { - isActive: false + EditableDropdown.defaultProps = { + placeholder: '', + dropdownOptions: {} }; - var VerticalNav = function VerticalNav(props) { + var Link = function Link(props) { var _a; - var menus = props.menus, - active = props.active, - onClick = props.onClick, - expanded = props.expanded, - rounded = props.rounded, - autoCollapse = props.autoCollapse, - className = props.className; + var children = props.children, + className = props.className, + appearance = props.appearance, + size = props.size, + disabled = props.disabled, + rest = __rest(props, ["children", "className", "appearance", "size", "disabled"]); - var _b = React__namespace.useState({}), - menuState = _b[0], - setMenuState = _b[1]; + var classes = classNames__default["default"]((_a = { + Link: true + }, _a["Link--" + size] = size, _a["Link--" + appearance] = appearance, _a["Link--" + appearance + "-disabled"] = disabled, _a), className); + return /*#__PURE__*/React__namespace.createElement(Link$1, __assign({ + "data-test": "DesignSystem-Link", + className: classes, + componentType: "a", + tabIndex: disabled ? -1 : 0 + }, rest), children); + }; + Link.displayName = 'Link'; + Link.defaultProps = { + appearance: 'default', + size: 'regular', + disabled: false + }; - var baseProps = extractBaseProps(props); - React__namespace.useEffect(function () { - if (props.active) { - var currMenu = getMenu(menus, props.active); - if (currMenu) updateMenuState(currMenu, true); - } - }, [props.active]); - - var updateMenuState = function updateMenuState(menu, val) { - var _a; - - var currMenu = getMenu(menus, menu); - - if (currMenu) { - var nameSplit = currMenu.name.split('.'); - - if (nameSplit.length > 1 || currMenu.subMenu) { - var name_1 = nameSplit[0]; + var IconMapping$2 = { + success: 'check_circle', + info: 'info', + warning: 'warning', + alert: 'error' + }; + var Message = function Message(props) { + var _a, _b, _c, _d; - if (autoCollapse) { - setMenuState((_a = {}, _a[name_1] = val || !menuState[name_1], _a)); - } else { - var menuData = __assign({}, menuState); + var actions = props.actions, + title = props.title, + className = props.className; + var appearance = props.appearance; + appearance = appearance === 'default' ? 'info' : appearance; + var baseProps = extractBaseProps(props); + var MessageClass = classNames__default["default"]((_a = {}, _a['Message'] = true, _a["Message--" + appearance] = appearance, _a), className); + var IconClass = classNames__default["default"]((_b = {}, _b['Message-icon'] = true, _b["Message-icon--" + appearance] = appearance, _b['Message-icon--withTitle'] = title, _b)); + var TitleClass = classNames__default["default"]((_c = {}, _c['Message-heading'] = true, _c["Message-heading--" + appearance] = appearance, _c)); + var DescriptionClass = classNames__default["default"]((_d = {}, _d['Message-text'] = true, _d["Message-text--" + appearance] = appearance, _d)); - menuData[name_1] = val !== undefined ? val : !menuData[name_1]; - setMenuState(menuData); - } - } else { - if (autoCollapse) { - if (!expanded) setMenuState({}); - } - } + var renderDescription = function renderDescription(description, children) { + if (description || typeof children === 'string') { + return /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-Message--Description", + className: DescriptionClass + }, description || (typeof children === 'string' ? children : '')); } - }; - var onClickHandler = function onClickHandler(menu) { - if (menu.subMenu) { - if (!expanded) { - if (onClick) onClick(menu.subMenu[0]); - } else { - updateMenuState(menu); - } - } else { - if (onClick) onClick(menu); + if (children) { + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Message--Description", + className: "Message-description" + }, children); } - }; - - var renderList = function renderList() { - var list = menus.map(function (menu, index) { - var _a; - var isActive = !menuState[menu.name] && isMenuActive(menus, menu, active); - var hasSubmenu = menu.subMenu && menu.subMenu.length > 0; - var isChildrenVisible = hasSubmenu && menuState[menu.name]; - var hasGroup = index === 0 || menus[index - 1].group !== menu.group; - var sectionClass = classNames__default['default']((_a = {}, _a['VerticalNav-section'] = true, _a['VerticalNav-section--border'] = index !== 0, _a)); - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, hasGroup && menu.group && expanded && /*#__PURE__*/React__namespace.createElement("div", { - className: sectionClass - }, /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-VerticalNav--Section", - size: "small", - weight: "strong", - appearance: "subtle" - }, menu.group)), /*#__PURE__*/React__namespace.createElement(MenuItem, { - "data-test": "DesignSystem-VerticalNav--Item", - menu: menu, - expanded: expanded, - isActive: isActive, - hasSubmenu: hasSubmenu, - isChildren: false, - rounded: rounded, - isChildrenVisible: isChildrenVisible, - onClick: onClickHandler - }), menuState[menu.name] && menu.subMenu && menu.subMenu.map(function (subMenu, id) { - return /*#__PURE__*/React__namespace.createElement(MenuItem, { - key: id, - menu: subMenu, - expanded: expanded, - hasSubmenu: false, - isChildren: true, - rounded: rounded, - onClick: onClickHandler, - isActive: isMenuActive(menus, subMenu, active) - }); - })); - }); - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, list); + return null; }; - var classes = classNames__default['default']((_a = { - VerticalNav: true - }, _a['VerticalNav--expanded'] = expanded, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: classes - }), renderList()); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-Message" + }, baseProps, { + className: MessageClass + }), /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-Message--Icon", + name: IconMapping$2[appearance], + appearance: appearance, + className: IconClass + }), /*#__PURE__*/React__namespace.createElement("div", null, title && /*#__PURE__*/React__namespace.createElement(Heading, { + "data-test": "DesignSystem-Message--Title", + size: "s", + className: TitleClass + }, title), renderDescription(props.description, props.children), actions && /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Message--actions", + className: "Message-actions" + }, actions))); }; - VerticalNav.defaultProps = { - expanded: true, - autoCollapse: true, - rounded: false + Message.displayName = 'Message'; + Message.defaultProps = { + appearance: 'info', + description: '' }; - var HorizontalNav = function HorizontalNav(props) { - var _a; - - var menus = props.menus, - active = props.active, - onClick = props.onClick, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = {}, _a['HorizontalNav'] = true, _a), className); - - var onClickHandler = function onClickHandler(menu) { - return function () { - if (onClick) onClick(menu); - }; - }; + var Meta = function Meta(props) { + var label = props.label, + icon = props.icon, + size = props.size, + iconType = props.iconType; + return /*#__PURE__*/React__namespace.createElement("span", { + "data-test": "DesignSystem-MetaList--Meta", + className: 'Meta' + }, icon && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-MetaList--MetaIcon", + name: icon, + appearance: "subtle", + className: 'Meta-icon', + type: iconType, + size: size === 'regular' ? 16 : 12 + }), /*#__PURE__*/React__namespace.createElement(Text, { + size: size, + "data-test": "DesignSystem-MetaList--MetaLabel", + appearance: "subtle" + }, label)); + }; + Meta.displayName = 'Meta'; - var getPillsClass = function getPillsClass(disabled) { - var _a; + var MetaList = function MetaList(props) { + var _a, _b, _c; - return classNames__default['default']((_a = {}, _a['HorizontalNav-pills'] = true, _a['HorizontalNav-pills--disabled'] = disabled, _a)); - }; + var list = props.list, + seperator = props.seperator, + className = props.className, + size = props.size; + var baseProps = extractBaseProps(props); + var MetaClass = classNames__default["default"]((_a = {}, _a['MetaList'] = true, _a), className); + var SeperatorClass = classNames__default["default"]((_b = {}, _b['MetaList-seperator'] = true, _b)); + var LeftSeperatorClass = classNames__default["default"]((_c = {}, _c['MetaList-seperator'] = true, _c['MetaList-seperator--left'] = true, _c)); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-MetaList" + }, baseProps, { + className: MetaClass + }), seperator && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-MetaList--Seperator", + name: "fiber_manual_record", + size: 8, + className: LeftSeperatorClass, + appearance: "disabled" + }), list.map(function (item, ind) { + var _a = item.label, + label = _a === void 0 ? '' : _a, + icon = item.icon, + iconType = item.iconType; + var rightSeperator = ind !== list.length - 1; + return /*#__PURE__*/React__namespace.createElement("span", { + key: ind, + className: "MetaList-item" + }, /*#__PURE__*/React__namespace.createElement(Meta, { + size: size, + label: label, + icon: icon, + iconType: iconType + }), rightSeperator && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-MetaList--rightSeperator", + name: "fiber_manual_record", + size: 8, + className: SeperatorClass, + appearance: "disabled" + })); + })); + }; + MetaList.displayName = 'MetaList'; + MetaList.defaultProps = { + seperatorAppearance: 'disabled', + iconAppearance: 'subtle', + labelAppearance: 'subtle', + size: 'regular' + }; - var renderIcon = function renderIcon(menu, isActive) { - if (menu.count !== undefined) { - var count = menu.count > 99 ? '99+' : menu.count; - return /*#__PURE__*/React__namespace.createElement(Pills, { - subtle: menu.disabled, - className: getPillsClass(menu.disabled), - appearance: getPillsAppearance(isActive), - "data-test": "DesignSystem-HorizontalNav--Pills" - }, count); - } + var ARROW_LEFT = 37; + var ARROW_RIGHT = 39; - if (menu.icon) { - return /*#__PURE__*/React__namespace.createElement(Icon, { - className: "mr-3", - name: menu.icon, - appearance: getIconAppearance(isActive, menu.disabled), - "data-test": "DesignSystem-HorizontalNav--Icon" - }); - } + var formatPercentage = function formatPercentage(ratio) { + return (ratio * 100).toFixed(2) + "%"; + }; + var countDecimalPlaces = function countDecimalPlaces(value) { + if (!isFinite(value)) return 0; - return null; - }; + if (Math.floor(value) !== value) { + var valueArray = value.toString().split('.'); + return valueArray[1].length || 0; + } - var list = menus.map(function (menu, index) { - var _a; + return 0; + }; + var approxEqual = function approxEqual(a, b) { + var tolerance = 0.00001; + return Math.abs(a - b) <= tolerance; + }; + var clamp = function clamp(value, min, max) { + if (value == null) { + return value; + } - var isActive = isMenuActive(menus, menu, active); - var menuClasses = classNames__default['default']((_a = { - 'HorizontalNav-menu': true - }, _a['HorizontalNav-menu--active'] = isActive, _a['HorizontalNav-menu--disabled'] = menu.disabled, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-HorizontalNav", - key: index, - className: menuClasses, - onClick: onClickHandler(menu) - }, renderIcon(menu, isActive), /*#__PURE__*/React__namespace.createElement(Text, { - appearance: getTextAppearance(isActive, menu.disabled), - "data-test": "DesignSystem-HorizontalNav--Text", - className: "HorizontalNav-menuText" - }, menu.label)); + return Math.min(Math.max(value, min), max); + }; + var arraysEqual = function arraysEqual(oldValues, newValues) { + if (oldValues.length !== oldValues.length) return; + return newValues.every(function (value, index) { + return value === oldValues[index]; }); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: classes - }), list); }; + function argMin(values, argFn) { + if (values.length === 0) { + return undefined; + } - var propsList = ['trigger', 'on', 'open', 'offset', 'onToggle', 'dark', 'customStyle', 'closeOnBackdropClick', 'hideOnReferenceEscape', 'closeOnScroll']; - var Tooltip = function Tooltip(props) { - var children = props.children, - tooltip = props.tooltip, - rest = __rest(props, ["children", "tooltip"]); + var minValue = values[0]; + var minArg = argFn(minValue); - var tooltipWrapper = /*#__PURE__*/React__namespace.createElement("div", { - className: "Tooltip" - }, /*#__PURE__*/React__namespace.createElement(Text, { - className: "Tooltip-text", - appearance: "white" - }, tooltip)); - return /*#__PURE__*/React__namespace.createElement(Popover, __assign({ - trigger: children, - on: 'hover', - offset: 'medium' - }, rest), tooltipWrapper); - }; - Tooltip.defaultProps = Object.assign({}, filterProps(Popover.defaultProps, propsList), { - hoverable: false - }); + for (var index = 1; index < values.length; index++) { + var value = values[index]; + var arg = argFn(value); - var Dialog = function Dialog(props) { - var dimension = props.dimension, - primaryButtonAppearance = props.primaryButtonAppearance, - secondaryButtonAppearance = props.secondaryButtonAppearance, - open = props.open, - onClose = props.onClose, - heading = props.heading, - title = props.title, - description = props.description, - primaryButtonLabel = props.primaryButtonLabel, - primaryButtonCallback = props.primaryButtonCallback, - secondaryButtonLabel = props.secondaryButtonLabel, - secondaryButtonCallback = props.secondaryButtonCallback; - var baseProps = extractBaseProps(props); - return /*#__PURE__*/React__namespace.createElement(Modal, __assign({ - "data-test": "DesignSystem-Dialog" - }, baseProps, { - open: open, - dimension: dimension, - onClose: onClose, - headerOptions: { - heading: heading - }, - footer: /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Button, { - "data-test": "DesignSystem-Dialog--SecondaryButton", - appearance: secondaryButtonAppearance, - onClick: secondaryButtonCallback - }, secondaryButtonLabel), /*#__PURE__*/React__namespace.createElement(Button, { - className: "ml-4", - "data-test": "DesignSystem-Dialog--PrimaryButton", - appearance: primaryButtonAppearance, - onClick: primaryButtonCallback - }, primaryButtonLabel)) - }), /*#__PURE__*/React__namespace.createElement(ModalDescription, { - title: title, - description: description - })); - }; + if (arg < minArg) { + minValue = value; + minArg = arg; + } + } - Dialog.displayName = 'Dialog'; - Dialog.defaultProps = { - dimension: 'small', - primaryButtonAppearance: 'primary', - secondaryButtonAppearance: 'basic' - }; + return minValue; + } + function fillValues(values, startIndex, endIndex, fillValue) { + var inc = startIndex < endIndex ? 1 : -1; - var OverlayFooter = function OverlayFooter(props) { - var open = props.open, - className = props.className, - children = props.children, - actions = props.actions; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']({ - OverlayFooter: true - }, className); - var wrapperRef = /*#__PURE__*/React__namespace.createRef(); - React__namespace.useEffect(function () { - var _a; + for (var index = startIndex; index !== endIndex + inc; index += inc) { + values[index] = fillValue; + } + } + function isElementOfType(element) { + return element != null && element.type != null; + } - if (open) { - if (wrapperRef.current) { - var secondaryBtns = (_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('.Button--basic'); - var secondaryBtn_1 = secondaryBtns[secondaryBtns.length - 1]; + var Handle = function (_super) { + __extends(Handle, _super); - if (secondaryBtn_1) { - window.requestAnimationFrame(function () { - return secondaryBtn_1.focus({ - preventScroll: true - }); - }); - } + function Handle() { + var _this = _super !== null && _super.apply(this, arguments) || this; + + _this.state = { + isHandleMoving: false, + isHandleHovered: false + }; + _this.handleElement = null; + _this.refHandlers = { + handle: function handle(el) { + return _this.handleElement = el; } - } - }, [open]); + }; - if (actions) { - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - ref: wrapperRef - }, baseProps, { - className: classes - }), actions.map(function (_a, index) { - _a.label; - var options = __rest(_a, ["label"]); + _this.mouseEventClientOffset = function (event) { + return event.clientX; + }; - return /*#__PURE__*/React__namespace.createElement(Button, __assign({}, options, { - key: index - })); - })); - } + _this.clientToValue = function (clientPixel) { + var _a = _this.props, + stepSize = _a.stepSize, + tickSize = _a.tickSize, + value = _a.value; - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-OverlayFooter", - ref: wrapperRef - }, baseProps, { - className: classes - }), children); - }; - OverlayFooter.displayName = 'OverlayFooter'; + if (_this.handleElement == null) { + return value; + } - var OverlayHeader = function OverlayHeader(props) { - var _a, _b; + var clientPixelNormalized = clientPixel; - var className = props.className, - heading = props.heading, - subHeading = props.subHeading, - backButton = props.backButton, - backIcon = props.backIcon, - backIconCallback = props.backIconCallback, - backButtonCallback = props.backButtonCallback; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = { - OverlayHeader: true - }, _a['OverlayHeader--withBackButton'] = backButton || backIcon, _a), className); - var subheadingClass = classNames__default['default']((_b = {}, _b['OverlayHeader-subheading'] = true, _b['OverlayHeader-subheading--withBackButton'] = backButton || backIcon, _b)); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-OverlayHeader" - }, baseProps, { - className: classes - }), /*#__PURE__*/React__namespace.createElement("div", { - className: "OverlayHeader-headerWrapper" - }, (backButton || backIcon) && /*#__PURE__*/React__namespace.createElement(Button, { - "data-test": "DesignSystem-OverlayHeader--Button", - appearance: "transparent", - className: "mr-5", - icon: "keyboard_backspace", - onClick: backButtonCallback || backIconCallback - }), heading && /*#__PURE__*/React__namespace.createElement(Heading, { - "data-test": "DesignSystem-OverlayHeader--heading" - }, heading)), subHeading && /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-OverlayHeader--Subheading", - appearance: "subtle", - className: subheadingClass - }, subHeading)); - }; - OverlayHeader.displayName = 'OverlayHeader'; + var _b = _this.getHandleMidpointAndOffset(_this.handleElement), + handleMidpoint = _b.handleMidpoint, + handleOffset = _b.handleOffset; - var OverlayBody = function OverlayBody(props) { - var children = props.children, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']({ - OverlayBody: true - }, className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-OverlayBody" - }, baseProps, { - className: classes - }), children); - }; - OverlayBody.defaultProps = { - stickFooter: true, - withFooter: true - }; - OverlayBody.displayName = 'OverlayBody'; + var handleCenterPixel = handleMidpoint + handleOffset; + var pixelDelta = clientPixelNormalized - handleCenterPixel; - var getWrapperElement = function getWrapperElement() { - var element = document.querySelector('.Overlay-wrapper'); + if (isNaN(pixelDelta)) { + return value; + } - if (element === null) { - element = document.createElement('div'); - element.classList.add('Overlay-wrapper'); - document.body.appendChild(element); - } + return value + Math.round(pixelDelta / (tickSize * stepSize)) * stepSize; + }; - return element; - }; - var getUpdatedZIndex = function getUpdatedZIndex(ele) { - var containerClassName = ele.containerClassName, - elementRef = ele.elementRef, - element = ele.element; - if (element === null) return; - var elements = element.querySelectorAll(containerClassName); - if (elements.length < 1) return; - var siblings = Array.from(elements).filter(function (el) { - return el !== elementRef.current; - }); - var zIndex = -1; - siblings.forEach(function (element) { - var prevZIndex = parseInt(window.getComputedStyle(element).zIndex || '0', 10); - zIndex = Math.max(zIndex, prevZIndex + 10); - }); - return zIndex > 0 ? zIndex : undefined; - }; + _this.changeValue = function (newValue, callback) { + if (callback === void 0) { + callback = _this.props.onChange; + } - var Modal = function (_super) { - __extends(Modal, _super); + var updatedValue = clamp(newValue, _this.props.min, _this.props.max); - function Modal(props) { - var _this = _super.call(this, props) || this; + if (!isNaN(updatedValue) && _this.props.value !== updatedValue) { + if (callback) callback(updatedValue); + } - _this.modalRef = /*#__PURE__*/React__namespace.createRef(); - _this.element = getWrapperElement(); - _this.state = { - open: props.open, - animate: props.open + return updatedValue; }; - _this.onOutsideClickHandler = _this.onOutsideClickHandler.bind(_this); - return _this; - } - Modal.prototype.componentDidUpdate = function (prevProps) { - var _this = this; + _this.endHandleMovement = function (event) { + var clientPixel = _this.mouseEventClientOffset(event); - if (prevProps.open !== this.props.open) { - if (this.props.open) { - var zIndex = getUpdatedZIndex({ - element: this.element, - containerClassName: '.Overlay-container--open', - elementRef: this.modalRef - }); - this.setState({ - zIndex: zIndex, - open: true, - animate: true - }); - } else { - this.setState({ - animate: false - }, function () { - window.setTimeout(function () { - _this.setState({ - open: false - }); - }, 120); - }); - } - } - }; + var onRelease = _this.props.onRelease; - Modal.prototype.onOutsideClickHandler = function (event) { - var _a = this.props, - backdropClose = _a.backdropClose, - onClose = _a.onClose; - var open = this.state.open; + _this.removeDocumentEventListeners(); - if (open) { - if (onClose) onClose(event, 'OutsideClick');else if (typeof backdropClose === 'function') backdropClose(event, 'OutsideClick'); - } - }; + _this.setState({ + isHandleMoving: false + }); - Modal.prototype.render = function () { - var _a, _b, _c; + var finalValue = _this.changeValue(_this.clientToValue(clientPixel)); - var _d = this.state, - animate = _d.animate, - open = _d.open, - zIndex = _d.zIndex; - var _e = this.props, - className = _e.className, - backdropClose = _e.backdropClose, - dimension = _e.dimension, - children = _e.children, - headerOptions = _e.headerOptions, - header = _e.header, - footerOptions = _e.footerOptions, - seperator = _e.seperator, - footer = _e.footer, - onClose = _e.onClose; - var classes = classNames__default['default']({ - Modal: true, - 'Modal--open': open, - 'Modal-animation--open': animate, - 'Modal-animation--close': !animate - }, className); - var headerClass = classNames__default['default']((_a = {}, _a['Modal-header'] = true, _a['Modal-header--withSeperator'] = seperator, _a)); - var footerClass = classNames__default['default']((_b = {}, _b['Modal-footer'] = true, _b['Modal-footer--withSeperator'] = seperator, _b)); - var ContainerClass = classNames__default['default']((_c = {}, _c['Row'] = true, _c['Overlay-container'] = true, _c['Overlay-container--open'] = open, _c)); - var baseProps = extractBaseProps(this.props); - var sizeMap = { - small: { - size: '3', - sizeL: '4', - sizeM: '4', - sizeXS: '10' - }, - medium: { - size: '4', - sizeL: '6', - sizeM: '6', - sizeXS: '10' - }, - large: { - size: '6', - sizeL: '8', - sizeM: '8', - sizeXS: '10' - } + if (onRelease) onRelease(finalValue); }; - var ModalContainer = /*#__PURE__*/React__namespace.createElement(Row, { - "data-test": "DesignSystem-ModalContainer", - className: ContainerClass, - "data-layer": true, - style: { - zIndex: zIndex - } - }, /*#__PURE__*/React__namespace.createElement(Column, __assign({ - "data-test": "DesignSystem-Modal" - }, baseProps, { - className: classes - }, sizeMap[dimension], { - ref: this.modalRef - }), (headerOptions || header) && /*#__PURE__*/React__namespace.createElement("div", { - className: headerClass - }, /*#__PURE__*/React__namespace.createElement(Column, null, !header && /*#__PURE__*/React__namespace.createElement(OverlayHeader, __assign({ - "data-test": "DesignSystem-Modal--header" - }, headerOptions)), !!header && header), /*#__PURE__*/React__namespace.createElement(Column, { - className: "flex-grow-0" - }, /*#__PURE__*/React__namespace.createElement(Button, { - icon: "close", - appearance: "transparent", - "data-test": "DesignSystem-Modal--CloseButton", - onClick: function onClick(event) { - if (onClose) onClose(event, 'IconClick'); - } - }))), children && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, headerOptions || footerOptions || footer || header ? /*#__PURE__*/React__namespace.createElement(OverlayBody, { - className: "Modal-body" - }, this.props.children) : children), (!!footer || !!footerOptions) && /*#__PURE__*/React__namespace.createElement(OverlayFooter, __assign({ - "data-test": "DesignSystem-Modal--footer" - }, footerOptions, { - open: open, - className: footerClass - }), footer))); - var ModalWrapper = backdropClose ? /*#__PURE__*/React__namespace.createElement(OutsideClick, { - "data-test": "DesignSystem-Modal--OutsideClick", - onOutsideClick: this.onOutsideClickHandler - }, ModalContainer) : ModalContainer; - var WrapperElement = /*#__PURE__*/ReactDOM__namespace.createPortal(ModalWrapper, this.element); - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, WrapperElement, /*#__PURE__*/React__namespace.createElement(Backdrop, { - open: this.state.animate - })); - }; - Modal.defaultProps = { - dimension: 'medium' - }; - return Modal; - }(React__namespace.Component); + _this.continueHandleMovement = function (event) { + var clientPixel = _this.mouseEventClientOffset(event); - var ModalHeader = function ModalHeader(props) { - var _a; + if (_this.state.isHandleMoving && !_this.props.disabled) { + var value = _this.clientToValue(clientPixel); - var className = props.className, - heading = props.heading, - subHeading = props.subHeading, - onClose = props.onClose, - seperator = props.seperator, - backIcon = props.backIcon, - backIconCallback = props.backIconCallback; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = { - 'Modal-header': true - }, _a['Modal-header--withSeperator'] = seperator, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: classes - }), /*#__PURE__*/React__namespace.createElement(Column, null, /*#__PURE__*/React__namespace.createElement(OverlayHeader, { - heading: heading, - subHeading: subHeading, - backButton: backIcon, - backButtonCallback: backIconCallback - })), /*#__PURE__*/React__namespace.createElement(Column, { - className: "flex-grow-0" - }, /*#__PURE__*/React__namespace.createElement(Button, { - icon: "close", - appearance: "transparent", - "data-test": "DesignSystem-Modal--CloseButton", - onClick: function onClick(event) { - if (onClose) onClose(event, 'IconClick'); - } - }))); - }; - ModalHeader.displayName = 'ModalHeader'; + _this.changeValue(value); + } + }; - var ModalBody = function ModalBody(props) { - var children = props.children, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']({ - 'Modal-body': true - }, className); - return /*#__PURE__*/React__namespace.createElement(OverlayBody, __assign({}, baseProps, { - stickFooter: true, - className: classes - }), children); - }; - ModalBody.defaultProps = { - stickFooter: true, - withFooter: true - }; - ModalBody.displayName = 'ModalBody'; + _this.beginHandleMovement = function (event) { + if (_this.props.disabled) return; + document.addEventListener('mousemove', _this.continueHandleMovement); + document.addEventListener('mouseup', _this.endHandleMovement); - var ModalFooter = function ModalFooter(props) { - var _a; + _this.setState({ + isHandleMoving: true + }); - var open = props.open, - children = props.children, - className = props.className, - seperator = props.seperator; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = {}, _a['Modal-footer'] = true, _a['Modal-footer--withSeperator'] = seperator, _a), className); - return /*#__PURE__*/React__namespace.createElement(OverlayFooter, __assign({}, baseProps, { - open: open, - className: classes - }), children); - }; - ModalFooter.displayName = 'ModalFooter'; + var value = _this.clientToValue(event.clientX); - var FullscreenModal = function (_super) { - __extends(FullscreenModal, _super); + _this.changeValue(value); + }; - function FullscreenModal(props) { - var _this = _super.call(this, props) || this; + _this.handleKeyDown = function (event) { + if (_this.props.disabled) return; + var _a = _this.props, + stepSize = _a.stepSize, + value = _a.value; + var keyCode = event.keyCode; - _this.modalRef = /*#__PURE__*/React__namespace.createRef(); - _this.element = getWrapperElement(); - _this.state = { - open: props.open, - animate: props.open + if (keyCode === ARROW_LEFT) { + _this.changeValue(value - stepSize); + + event.preventDefault(); + } else if (keyCode === ARROW_RIGHT) { + _this.changeValue(value + stepSize); + + event.preventDefault(); + } }; - return _this; - } - FullscreenModal.prototype.componentDidUpdate = function (prevProps) { - var _this = this; + _this.handleKeyUp = function (event) { + if (_this.props.disabled) return; - if (prevProps.open !== this.props.open) { - if (this.props.open) { - var zIndex = getUpdatedZIndex({ - element: this.element, - containerClassName: '.Overlay-container--open', - elementRef: this.modalRef - }); - this.setState({ - zIndex: zIndex, - open: true, - animate: true - }); - } else { - this.setState({ - animate: false - }, function () { - window.setTimeout(function () { - _this.setState({ - open: false - }); - }, 120); - }); + if ([ARROW_LEFT, ARROW_RIGHT].indexOf(event.keyCode) >= 0) { + var onRelease = _this.props.onRelease; + if (onRelease) onRelease(_this.props.value); } - } - }; + }; - FullscreenModal.prototype.render = function () { - var _a; + _this.getHandleMidpointAndOffset = function (handleElement, useOppositeDimension) { + if (useOppositeDimension === void 0) { + useOppositeDimension = false; + } - var _b = this.state, - animate = _b.animate, - open = _b.open, - zIndex = _b.zIndex; - var _c = this.props, - className = _c.className, - dimension = _c.dimension, - children = _c.children, - header = _c.header, - headerOptions = _c.headerOptions, - footer = _c.footer, - footerOptions = _c.footerOptions, - onClose = _c.onClose; - var classes = classNames__default['default']({ - FullscreenModal: true, - 'FullscreenModal--open': open, - 'FullscreenModal-animation--open': animate, - 'FullscreenModal-animation--close': !animate - }, className); - var ContainerClass = classNames__default['default']((_a = {}, _a['Overlay-container'] = true, _a['Overlay-container--open'] = open, _a)); - var baseProps = extractBaseProps(this.props); - var sizeMap = { - medium: { - size: '4', - sizeL: '6', - sizeM: '6', - sizeXS: '12' - }, - large: { - size: '6', - sizeL: '8', - sizeM: '8', - sizeXS: '12' - } - }; - var ModalContainer = /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-FullscreenModalContainer", - className: ContainerClass, - "data-layer": true, - style: { - zIndex: zIndex - } - }, /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-FullscreenModal" - }, baseProps, { - className: classes, - ref: this.modalRef - }), /*#__PURE__*/React__namespace.createElement(Row, { - className: "justify-content-center" - }, /*#__PURE__*/React__namespace.createElement(Column, __assign({}, sizeMap[dimension]), /*#__PURE__*/React__namespace.createElement(Row, { - className: "FullscreenModal-header" - }, /*#__PURE__*/React__namespace.createElement(Column, null, !header && /*#__PURE__*/React__namespace.createElement(OverlayHeader, __assign({ - "data-test": "DesignSystem-FullscreenModal--header" - }, headerOptions)), !!header && header), /*#__PURE__*/React__namespace.createElement(Column, { - className: "flex-grow-0" - }, /*#__PURE__*/React__namespace.createElement(Button, { - icon: "close", - appearance: "transparent", - "data-test": "DesignSystem-FullscreenModal--CloseButton", - onClick: function onClick(event) { - if (onClose) onClose(event, 'IconClick'); + if (handleElement == null) { + return { + handleMidpoint: 0, + handleOffset: 0 + }; } - }))), /*#__PURE__*/React__namespace.createElement(OverlayBody, { - "data-test": "DesignSystem-FullscreenModal--Body", - className: "FullscreenModal-body" - }, children), (!!footer || !!footerOptions) && /*#__PURE__*/React__namespace.createElement(OverlayFooter, __assign({ - "data-test": "DesignSystem-FullscreenModal--footer" - }, footerOptions, { - open: open, - className: "FullscreenModal-footer" - }), footer))))); - var WrapperElement = /*#__PURE__*/ReactDOM__namespace.createPortal(ModalContainer, this.element); - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, WrapperElement); - }; - FullscreenModal.defaultProps = { - dimension: 'medium' - }; - return FullscreenModal; - }(React__namespace.Component); - - var sidesheetWidth = { - regular: '6', - large: '10' - }; + var handleRect = handleElement.getBoundingClientRect(); + var sizeKey = useOppositeDimension ? 'height' : 'width'; + var handleOffset = handleRect.left; + return { + handleOffset: handleOffset, + handleMidpoint: handleRect[sizeKey] / 2 + }; + }; - var Sidesheet = function (_super) { - __extends(Sidesheet, _super); + _this.handleMouseOver = function () { + _this.setState({ + isHandleHovered: true + }); + }; - function Sidesheet(props) { - var _this = _super.call(this, props) || this; + _this.handleMouseLeave = function () { + _this.setState({ + isHandleHovered: false + }); + }; - _this.sidesheetRef = /*#__PURE__*/React__namespace.createRef(); - _this.element = getWrapperElement(); - _this.state = { - open: props.open, - animate: props.open + _this.removeDocumentEventListeners = function () { + document.removeEventListener('mousemove', _this.continueHandleMovement); + document.removeEventListener('mouseup', _this.endHandleMovement); }; - _this.onOutsideClickHandler = _this.onOutsideClickHandler.bind(_this); + return _this; } - Sidesheet.prototype.componentDidUpdate = function (prevProps) { - var _this = this; - - if (prevProps.open !== this.props.open) { - if (this.props.open) { - var zIndex = getUpdatedZIndex({ - element: this.element, - containerClassName: '.Overlay-container--open', - elementRef: this.sidesheetRef - }); - this.setState({ - zIndex: zIndex, - open: true, - animate: true - }); - } else { - this.setState({ - animate: false - }, function () { - window.setTimeout(function () { - _this.setState({ - open: false - }); - }, 120); - }); - } - } + Handle.prototype.componentWillUnmount = function () { + this.removeDocumentEventListeners(); }; - Sidesheet.prototype.onOutsideClickHandler = function (event) { - var onClose = this.props.onClose; - var open = this.state.open; - - if (open) { - if (onClose) onClose(event, 'OutsideClick'); + Handle.prototype.componentDidUpdate = function (_prevProps, prevState) { + if (prevState.isHandleMoving !== this.state.isHandleMoving) { + if (this.handleElement) this.handleElement.focus(); } }; - Sidesheet.prototype.render = function () { - var _a, _b, _c, _d; + Handle.prototype.render = function () { + var _a, _b; - var _e = this.state, - animate = _e.animate, - open = _e.open, - zIndex = _e.zIndex; - var _f = this.props, - className = _f.className, - backdropClose = _f.backdropClose, - dimension = _f.dimension, - footer = _f.footer, - seperator = _f.seperator, - stickFooter = _f.stickFooter, - headerOptions = _f.headerOptions, - footerOptions = _f.footerOptions, - header = _f.header, - onClose = _f.onClose; - var classes = classNames__default['default']({ - Sidesheet: true, - 'Sidesheet--open': open, - 'Sidesheet-animation--open': animate, - 'Sidesheet-animation--close': !animate - }, className); - var ContainerClass = classNames__default['default']((_a = {}, _a['Overlay-container'] = true, _a['Overlay-container--open'] = open, _a)); - var headerClass = classNames__default['default']((_b = {}, _b['Sidesheet-header'] = true, _b['Sidesheet-header--withSeperator'] = seperator, _b)); - var footerClass = classNames__default['default']((_c = {}, _c['Sidesheet-footer'] = true, _c['Sidesheet-footer--withSeperator'] = seperator, _c['Sidesheet-footer--stickToBottom'] = stickFooter, _c)); - var bodyClass = classNames__default['default']((_d = {}, _d['Sidesheet-body'] = true, _d['Sidesheet-body--withMargin'] = !!footer && stickFooter, _d)); - var baseProps = extractBaseProps(this.props); - var SidesheetContainer = /*#__PURE__*/React__namespace.createElement(Row, { - "data-test": "DesignSystem-SidesheetContainer", - className: ContainerClass, - "data-layer": true, - style: { - zIndex: zIndex - }, - ref: this.sidesheetRef - }, /*#__PURE__*/React__namespace.createElement(Column, __assign({ - "data-test": "DesignSystem-Sidesheet" - }, baseProps, { - className: classes, - size: sidesheetWidth[dimension] + var _c = this.props, + min = _c.min, + tickSizeRatio = _c.tickSizeRatio, + value = _c.value, + disabled = _c.disabled, + label = _c.label, + isCurrentLabelHovered = _c.isCurrentLabelHovered; + var _d = this.state, + isHandleMoving = _d.isHandleMoving, + isHandleHovered = _d.isHandleHovered; + var showTootlip = isHandleMoving || isHandleHovered || isCurrentLabelHovered; + var handleMidpoint = this.getHandleMidpointAndOffset(this.handleElement, true).handleMidpoint; + var offsetRatio = (value - min) * tickSizeRatio; + var offsetCalc = "calc(" + formatPercentage(offsetRatio) + " - " + handleMidpoint + "px)"; + var style = { + left: offsetCalc + }; + var className = classNames__default["default"]((_a = {}, _a['Slider-handle'] = true, _a['Slider-handle--disabled'] = disabled, _a['Slider-handle--active'] = isHandleMoving, _a['border-0'] = disabled, _a)); + var TooltipClass = classNames__default["default"]((_b = {}, _b['Slider-tooltip'] = true, _b['Tooltip'] = true, _b['d-none'] = !showTootlip, _b)); + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", { + className: className, + onMouseOver: this.handleMouseOver, + onMouseLeave: this.handleMouseLeave, + onMouseDown: this.beginHandleMovement, + onKeyDown: this.handleKeyDown, + onKeyUp: this.handleKeyUp, + ref: this.refHandlers.handle, + style: style, + tabIndex: 0, + "data-test": "DesignSystem-MultiSlider-Handle" }), /*#__PURE__*/React__namespace.createElement("div", { - className: headerClass - }, /*#__PURE__*/React__namespace.createElement(Column, { - "data-test": "DesignSystem-Sidesheet--Header" - }, !header && /*#__PURE__*/React__namespace.createElement(OverlayHeader, __assign({}, headerOptions)), !!header && header), /*#__PURE__*/React__namespace.createElement(Column, { - className: "flex-grow-0" - }, /*#__PURE__*/React__namespace.createElement(Button, { - icon: "close", - appearance: "transparent", - "data-test": "DesignSystem-Sidesheet--CloseButton", - onClick: function onClick(event) { - if (onClose) onClose(event, 'IconClick'); - } - }))), /*#__PURE__*/React__namespace.createElement(OverlayBody, { - "data-test": "DesignSystem-Sidesheet--OverlayBody", - className: bodyClass - }, this.props.children), (!!footer || !!footerOptions) && /*#__PURE__*/React__namespace.createElement(OverlayFooter, __assign({ - "data-test": "DesignSystem-Sidesheet--Footer" - }, footerOptions, { - open: open, - className: footerClass - }), footer))); - var SidesheetWrapper = backdropClose ? /*#__PURE__*/React__namespace.createElement(OutsideClick, { - "data-test": "DesignSystem-Sidesheet--OutsideClick", - onOutsideClick: this.onOutsideClickHandler - }, SidesheetContainer) : SidesheetContainer; - var WrapperElement = /*#__PURE__*/ReactDOM__namespace.createPortal(SidesheetWrapper, this.element); - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, WrapperElement, /*#__PURE__*/React__namespace.createElement(Backdrop, { - open: this.state.animate - })); + className: TooltipClass, + style: style + }, label)); }; - Sidesheet.defaultProps = { - dimension: 'regular', - stickFooter: false, - headerOptions: {} - }; - return Sidesheet; + return Handle; }(React__namespace.Component); - var Collapsible = function Collapsible(props) { - var _a, _b, _c, _d; + var MultiSliderHandle = function MultiSliderHandle() { + return null; + }; - var expanded = props.expanded, - hoverable = props.hoverable, - expandedWidth = props.expandedWidth, - height = props.height, - children = props.children, - className = props.className, - onToggle = props.onToggle; + var MultiSlider = function (_super) { + __extends(MultiSlider, _super); - var _e = React__namespace.useState(true), - isClicked = _e[0], - setIsClicked = _e[1]; - - var _f = React__namespace.useState(false), - seperator = _f[0], - setSeperator = _f[1]; + function MultiSlider(props) { + var _this = _super.call(this, props) || this; - var ref = /*#__PURE__*/React__namespace.createRef(); - var baseProps = extractBaseProps(props); - React__namespace.useEffect(function () { - if (ref.current) { - setSeperator(ref.current.scrollHeight > ref.current.clientHeight); - } - }); - var WrapperClass = classNames__default['default']((_a = {}, _a['Collapsible-wrapper'] = true, _a['Collapsible-wrapper--overlay'] = !isClicked, _a)); - var BodyClass = classNames__default['default']((_b = {}, _b['Collapsible-body'] = true, _b)); - var classes = classNames__default['default']((_c = { - Collapsible: true - }, _c['Collapsible--overlay'] = !isClicked, _c), className); - var FooterClass = classNames__default['default']((_d = {}, _d['Collapsible-footer'] = true, _d['Collapsible-footer--seperator'] = seperator, _d)); + _this.handleElements = []; + _this.trackElement = null; - var onToggleHandler = function onToggleHandler(newExpanded, type) { - return function () { - if (onToggle) { - if (type === 'mouseenter' || type === 'mouseleave') { - if (isClicked && expanded || !hoverable) return; - setIsClicked(false); - } + _this.getLabelPrecision = function (_a) { + var labelPrecision = _a.labelPrecision, + stepSize = _a.stepSize; + return labelPrecision == null ? countDecimalPlaces(stepSize) : labelPrecision; + }; - if (type === 'click') { - setIsClicked(true); - } + _this.getOffsetRatio = function (value) { + return clamp((value - _this.props.min) * _this.state.tickSizeRatio, 0, 1); + }; - onToggle(newExpanded); + _this.addHandleRef = function (ref) { + if (ref != null) { + _this.handleElements.push(ref); } }; - }; - var width = expanded ? expandedWidth : undefined; - return /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-CollapsibleWrapper", - className: WrapperClass, - style: { - height: height - } - }, /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-Collapsible" - }, baseProps, { - "data-layer": true, - className: classes, - style: { - width: width - } - }), /*#__PURE__*/React__namespace.createElement("div", { - className: BodyClass, - "data-test": "DesignSystem-CollapsibleBody", - onMouseEnter: onToggleHandler(true, 'mouseenter'), - onMouseLeave: onToggleHandler(false, 'mouseleave'), - ref: ref - }, children), /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-Collapsible--Footer", - className: FooterClass - }, /*#__PURE__*/React__namespace.createElement(Icon, { - name: expanded ? 'keyboard_arrow_left' : 'keyboard_arrow_right', - "data-test": "DesignSystem-Collapsible--FooterIcon", - className: "px-5 py-4 my-2 cursor-pointer", - onClick: onToggleHandler(!expanded, 'click'), - size: 16 - })))); - }; - Collapsible.displayName = 'Collapsible'; - Collapsible.defaultProps = { - expanded: false, - hoverable: true, - height: '100%', - expandedWidth: 'var(--spacing-9)' - }; + _this.getHandleValues = function (props) { + var maybeHandles = React__namespace.Children.map(props.children, function (child) { + return isElementOfType(child) ? child.props : null; + }); + var handles = maybeHandles != null ? maybeHandles : []; + handles = handles.filter(function (handle) { + return handle !== null; + }); + handles.sort(function (left, right) { + return left.value - right.value; + }); + return handles; + }; - var Status = function Status(props) { - var _a, _b; + _this.updateTickSize = function () { + if (_this.trackElement != null) { + var trackSize = _this.trackElement.clientWidth; + var tickSizeRatio = 1 / (_this.props.max - _this.props.min); + var tickSize = trackSize * tickSizeRatio; - var type = props.type, - time = props.time, - className = props.className, - _c = props.readText, - readText = _c === void 0 ? 'Read' : _c, - _d = props.failedText, - failedText = _d === void 0 ? 'Click to retry' : _d, - _e = props.sendingText, - sendingText = _e === void 0 ? 'Sending..' : _e; - var baseProps = extractBaseProps(props); - var StatusClass = classNames__default['default']((_a = {}, _a['d-flex align-items-center mt-3'] = true, _a), className); - var TextClass = classNames__default['default']((_b = {}, _b['ChatMessage-status'] = true, _b), className); + _this.setState({ + tickSize: tickSize, + tickSizeRatio: tickSizeRatio + }); + } + }; - var getTime = function getTime(t) { - if (typeof t === 'number') { - var d = new Date(t); - var hours = d.getHours(); - var minutes = d.getMinutes(); - var AMPM = hours < 12 ? 'AM' : 'PM'; - var hrs = hours % 12 || 12; - return hrs + ":" + minutes + " " + AMPM; - } + _this.getTrackFill = function (start, end) { + if (start.fillAfter !== undefined) { + return start.fillAfter; + } - return t; - }; + if (end !== undefined && end.fillBefore !== undefined) { + return end.fillBefore; + } - switch (type) { - case 'failed': - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: StatusClass - }), /*#__PURE__*/React__namespace.createElement(Icon, { - name: "error", - type: "outlined", - appearance: "destructive" - }), /*#__PURE__*/React__namespace.createElement(Text, { - appearance: "destructive", - size: "small", - className: "ml-1" - }, "Failed"), /*#__PURE__*/React__namespace.createElement(MetaList, { - list: [{ - label: failedText - }], - seperator: true - })); + return false; + }; - case 'urgent': - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: StatusClass - }), /*#__PURE__*/React__namespace.createElement(Icon, { - name: "notification_important", - type: "outlined", - appearance: "destructive" - }), /*#__PURE__*/React__namespace.createElement(Text, { - appearance: "destructive", - size: "small", - className: "ml-1" - }, "Urgent"), time && /*#__PURE__*/React__namespace.createElement(MetaList, { - list: [{ - label: getTime(time) - }], - seperator: true - })); + _this.maybeHandleTrackClick = function (event) { + var target = event.target; + var canHandleTrackEvent = !_this.props.disabled && target.closest('.Slider-handle') == null; - case 'read': - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: StatusClass - }), time && /*#__PURE__*/React__namespace.createElement(Text, { - appearance: "subtle", - size: "small" - }, getTime(time)), /*#__PURE__*/React__namespace.createElement(MetaList, { - list: [{ - label: readText - }], - seperator: true - })); + if (canHandleTrackEvent) { + var foundHandle = _this.nearestHandleForValue(_this.handleElements, function (handle) { + return handle.mouseEventClientOffset(event); + }); - case 'sending': - return /*#__PURE__*/React__namespace.createElement(Text, __assign({}, baseProps, { - appearance: "subtle", - size: "small", - className: TextClass - }), sendingText); + if (foundHandle) { + foundHandle.beginHandleMovement(event); + } + } + }; - case 'sent': - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, time && /*#__PURE__*/React__namespace.createElement(Text, __assign({}, baseProps, { - appearance: "subtle", - size: "small", - className: TextClass - }), getTime(time))); + _this.getLockedHandleIndex = function (startIndex, endIndex) { + var inc = startIndex < endIndex ? 1 : -1; - default: - return null; - } - }; - Status.displayName = 'Status'; + for (var index = startIndex + inc; index !== endIndex + inc; index += inc) { + return index; + } - var Box = function Box(props) { - var _a; + return -1; + }; - var children = props.children, - type = props.type, - isTyping = props.isTyping, - statusType = props.statusType, - withStatus = props.withStatus, - onClick = props.onClick, - className = props.className; - var baseProps = extractBaseProps(props); - var MessageClass = classNames__default['default']((_a = {}, _a['Box'] = true, _a["Box--" + type] = type, _a['Box--typing'] = isTyping, _a['Box--urgent'] = statusType === 'urgent', _a["Box-" + type + "--withStatus"] = withStatus || isTyping, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: MessageClass, - onClick: onClick - }), children); - }; - Box.displayName = 'Box'; + _this.getNewHandleValues = function (newValue, oldIndex) { + var handleProps = _this.getHandleValues(_this.props); - var MessageText = function MessageText(props) { - var text = props.text, - type = props.type, - isTyping = props.isTyping, - typingText = props.typingText, - statusType = props.statusType, - className = props.className; - var baseProps = extractBaseProps(props); + var oldValues = handleProps.map(function (handle) { + return handle.value; + }); + var newValues = oldValues.slice(); + newValues[oldIndex] = newValue; + if (newValues.length > 1) newValues.sort(function (left, right) { + return left - right; + }); + var newIndex = newValues.indexOf(newValue); - if (isTyping && type === 'incoming') { - return /*#__PURE__*/React__namespace.createElement(Text, __assign({}, baseProps, { - appearance: 'subtle', - size: 'small', - className: className - }), typingText); - } + var lockIndex = _this.getLockedHandleIndex(oldIndex, newIndex); - return /*#__PURE__*/React__namespace.createElement(Text, __assign({}, baseProps, { - className: className, - appearance: statusType === 'sending' ? 'subtle' : 'default' - }), text); - }; - MessageText.defaultProps = { - text: '', - typingText: 'Typing..' - }; - MessageText.displayName = 'MessageText'; - - var ChatMessage = function ChatMessage(props) { - var type = props.type, - text = props.text, - isTyping = props.isTyping, - typingText = props.typingText, - statusOptions = props.statusOptions, - onClick = props.onClick, - className = props.className; - var baseProps = extractBaseProps(props); - var statusType = (statusOptions || {}).type; - return /*#__PURE__*/React__namespace.createElement(Box, __assign({}, baseProps, { - type: type, - className: className, - onClick: onClick, - isTyping: isTyping, - statusType: statusType, - withStatus: statusOptions !== undefined - }), /*#__PURE__*/React__namespace.createElement(MessageText, { - type: type, - text: text, - typingText: typingText, - isTyping: isTyping, - statusType: statusType - }), !isTyping && statusOptions && /*#__PURE__*/React__namespace.createElement(Status, __assign({}, statusOptions))); - }; - ChatMessage.displayName = 'ChatMessage'; - - var imageHeight = { - large: '256px', - small: '128px' - }; - var HeadingSize = { - large: 'l', - small: 'm' - }; - var textSize = { - large: 'large', - small: 'regular' - }; - var EmptyState = function EmptyState(props) { - var _a, _b, _c; - - var imageSrc = props.imageSrc, - title = props.title, - description = props.description, - size = props.size, - children = props.children, - className = props.className; - var baseProps = extractBaseProps(props); - var WrapperClass = classNames__default['default']((_a = {}, _a['EmptyState'] = true, _a), className); - var HeadingClass = classNames__default['default']((_b = {}, _b['EmptyState-title'] = true, _b["EmptyState-title--" + size] = true, _b)); - var TextClass = classNames__default['default']((_c = {}, _c['EmptyState-description'] = true, _c["EmptyState-description--" + size] = children !== undefined, _c)); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-EmptyState" - }, baseProps, { - className: WrapperClass - }), /*#__PURE__*/React__namespace.createElement("img", { - src: imageSrc, - height: imageHeight[size], - "data-test": "DesignSystem-EmptyState--Img" - }), /*#__PURE__*/React__namespace.createElement(Heading, { - "data-test": "DesignSystem-EmptyState--Heading", - size: HeadingSize[size], - className: HeadingClass - }, title), /*#__PURE__*/React__namespace.createElement(Text, { - size: textSize[size], - className: TextClass, - appearance: "subtle", - "data-test": "DesignSystem-EmptyState--Text" - }, description), children && children); - }; - EmptyState.displayName = 'EmptyState'; - - var ModalDescription = function ModalDescription(props) { - var title = props.title, - description = props.description, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']({ - 'Modal-description': true - }, className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-ModalDescription" - }, baseProps, { - className: classes - }), title && /*#__PURE__*/React__namespace.createElement(Text, { - weight: "strong", - "data-test": "DesignSystem-ModalDescription--Title" - }, title), title && description && /*#__PURE__*/React__namespace.createElement("br", null), description && /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-ModalDescription--Description" - }, description)); - }; - ModalDescription.displayName = 'ModalDescription'; - - var Pagination = function Pagination(props) { - var _a, _b, _c; + if (lockIndex === -1) { + fillValues(newValues, oldIndex, newIndex, newValue); + } else { + var lockValue = oldValues[lockIndex]; + fillValues(oldValues, oldIndex, lockIndex, lockValue); + return oldValues; + } - var type = props.type, - totalPages = props.totalPages, - onPageChange = props.onPageChange, - className = props.className; - var baseProps = extractBaseProps(props); + return newValues; + }; - var _d = React__namespace.useState(props.page), - page = _d[0], - setPage = _d[1]; + _this.onReleaseHandler = function (newValue, index) { + var onRangeRelease = _this.props.onRangeRelease; - var _e = React__namespace.useState(false), - init = _e[0], - setInit = _e[1]; + var handleProps = _this.getHandleValues(_this.props); - React__namespace.useEffect(function () { - setPage(props.page); - }, [props.page]); - var wrapperClass = classNames__default['default']((_a = {}, _a['Pagination'] = true, _a["Pagination--" + type] = type, _a), className); - var nextButtonWrapperClass = classNames__default['default']((_b = {}, _b['Pagination-buttonWrapper'] = true, _b['Pagination-buttonWrapper--next'] = true, _b)); - var prevButtonWrapperClass = classNames__default['default']((_c = {}, _c['Pagination-buttonWrapper'] = true, _c['Pagination-buttonWrapper--previous'] = true, _c)); - React__namespace.useEffect(function () { - if (init) { - if (page >= 1 && page <= totalPages) onPageChange(page); - } - }, [page]); + var newValues = _this.getNewHandleValues(newValue, index); - var inputChangeHandler = function inputChangeHandler(e) { - e.preventDefault(); - var val = +e.target.value.trim(); + if (onRangeRelease) { + var range = newValues; + onRangeRelease(range); + } - if (val >= 0 && val <= totalPages) { - if (!init) setInit(true); - setPage(val); - } - }; + handleProps.forEach(function (handle, i) { + if (handle.onRelease) handle.onRelease(newValues[i]); + }); + }; - var onClickHandler = function onClickHandler(buttonType) { - setInit(true); + _this.onChangeHandler = function (newValue, index) { + var onRangeChange = _this.props.onRangeChange; - switch (buttonType) { - case 'first': - setPage(1); - break; + var handleProps = _this.getHandleValues(_this.props); - case 'last': - setPage(totalPages); - break; + var oldValues = handleProps.map(function (handle) { + return handle.value; + }); - case 'prev': - if (page > 1) setPage(page - 1); - break; + var newValues = _this.getNewHandleValues(newValue, index); - case 'next': - if (page < totalPages) setPage(page + 1); - break; - } - }; + if (!arraysEqual(newValues, oldValues)) { + if (onRangeChange) { + var range = newValues; + onRangeChange(range); + } - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-Pagination" - }, baseProps, { - className: wrapperClass - }), /*#__PURE__*/React__namespace.createElement("div", { - className: prevButtonWrapperClass - }, /*#__PURE__*/React__namespace.createElement(Button, { - onClick: function onClick() { - return onClickHandler('first'); - }, - disabled: page <= 1, - appearance: "transparent", - icon: "first_page", - "data-test": "DesignSystem-Pagination--FirstButton" - }), /*#__PURE__*/React__namespace.createElement(Button, { - onClick: function onClick() { - return onClickHandler('prev'); - }, - disabled: page <= 1, - icon: "navigate_before", - "data-test": "DesignSystem-Pagination--PrevButton", - className: "ml-4 mr-3" - })), type === 'jump' && /*#__PURE__*/React__namespace.createElement("div", { - className: "Pagination-pageIndex" - }, /*#__PURE__*/React__namespace.createElement(MetricInput, { - name: "page", - className: "Pagination-MetricInput", - onChange: inputChangeHandler, - value: "" + (page === 0 ? '' : page), - "data-test": "DesignSystem-Pagination--Input" - }), /*#__PURE__*/React__namespace.createElement(Text, null, " of " + totalPages + " pages")), /*#__PURE__*/React__namespace.createElement("div", { - className: nextButtonWrapperClass - }, /*#__PURE__*/React__namespace.createElement(Button, { - onClick: function onClick() { - return onClickHandler('next'); - }, - disabled: page >= totalPages, - icon: "navigate_next", - "data-test": "DesignSystem-Pagination--NextButton", - className: "mr-4 ml-3" - }), /*#__PURE__*/React__namespace.createElement(Button, { - onClick: function onClick() { - return onClickHandler('last'); - }, - disabled: page >= totalPages, - appearance: "transparent", - icon: "last_page", - "data-test": "DesignSystem-Pagination--LastButton" - }))); - }; - Pagination.displayName = 'Pagination'; - Pagination.defaultProps = { - type: 'basic', - page: 1, - totalPages: 1 - }; + handleProps.forEach(function (handle, i) { + if (handle.onChange) handle.onChange(newValues[i]); + }); + } + }; - var EditableInput = function EditableInput(props) { - var _a, _b, _c, _d; + _this.formatLabel = function (value) { + var labelRenderer = _this.props.labelRenderer; + var labelValue = value.toFixed(_this.state.labelPrecision); - var value = props.value, - error = props.error, - size = props.size, - errorMessage = props.errorMessage, - placeholder = props.placeholder, - inputOptions = props.inputOptions, - disableSaveAction = props.disableSaveAction, - onChange = props.onChange, - className = props.className; + if (typeof labelRenderer === 'function') { + return labelRenderer(Number(labelValue)); + } - var onInputChange = inputOptions.onChange, - rest = __rest(inputOptions, ["onChange"]); + return labelValue; + }; - var _e = React__namespace.useState(value), - inputValue = _e[0], - setInputValue = _e[1]; + _this.renderHandles = function () { + var _a = _this.props, + disabled = _a.disabled, + max = _a.max, + min = _a.min, + stepSize = _a.stepSize; - var _f = React__namespace.useState(false), - editing = _f[0], - setEditing = _f[1]; + var handleProps = _this.getHandleValues(_this.props); - var _g = React__namespace.useState(false), - showComponent = _g[0], - setShowComponent = _g[1]; + if (handleProps.length === 0) { + return null; + } - var inputRef = /*#__PURE__*/React__namespace.createRef(); - var baseProps = extractBaseProps(props); - var EditableInputClass = classNames__default['default']((_a = {}, _a['EditableInput'] = true, _a), className); - var EditableDefaultClass = classNames__default['default']((_b = {}, _b['EditableInput-default'] = true, _b["EditableInput-default--" + size] = size, _b)); - var InputClass = classNames__default['default']((_c = {}, _c['EditableInput-Input--tiny'] = size === 'tiny', _c)); - var ActionClass = classNames__default['default']((_d = {}, _d['EditableInput-actions'] = true, _d["EditableInput-actions--" + size] = size, _d)); - React__namespace.useEffect(function () { - setDefaultComponent(); - }, [value]); - - var setDefaultComponent = function setDefaultComponent() { - setInputValue(value); - setEditing(false); - setShowComponent(false); - }; + return handleProps.map(function (_a, index) { + var value = _a.value; + var isCurrentLabelHovered = _this.state.hoveredLabelValue === Number(value.toFixed(_this.state.labelPrecision)); + return /*#__PURE__*/React__namespace.createElement(Handle, { + disabled: disabled, + key: index + "-" + handleProps.length, + max: max, + min: min, + onRelease: function onRelease(newValue) { + return _this.onReleaseHandler(newValue, index); + }, + onChange: function onChange(newValue) { + return _this.onChangeHandler(newValue, index); + }, + label: _this.formatLabel(value), + ref: _this.addHandleRef, + stepSize: stepSize, + tickSize: _this.state.tickSize, + tickSizeRatio: _this.state.tickSizeRatio, + value: value, + isCurrentLabelHovered: isCurrentLabelHovered + }); + }); + }; - var onSaveChanges = function onSaveChanges() { - if (onChange) onChange(inputValue); - }; + _this.renderLabels = function () { + var _a = _this.props, + labelStepSize = _a.labelStepSize, + max = _a.max, + min = _a.min, + labelRenderer = _a.labelRenderer, + disabled = _a.disabled; + var labels = []; + var stepSizeRatio = _this.state.tickSizeRatio * labelStepSize; - var onInputChangeHandler = function onInputChangeHandler(e) { - setInputValue(e.target.value); - if (onInputChange) onInputChange(e); - }; + var handles = _this.getHandleValues(_this.props); - var onChangeHandler = function onChangeHandler(eventType) { - var _a; + var activeLabels = handles.map(function (handle) { + return handle.value.toFixed(_this.state.labelPrecision); + }); - switch (eventType) { - case 'edit': - (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus(); - setEditing(true); + var _loop_1 = function _loop_1(i, offsetRatio) { + var _a; - case 'hover': - setShowComponent(true); - return; + var offsetPercentage = formatPercentage(offsetRatio); + var style = { + left: offsetPercentage + }; + var active = !disabled && activeLabels.indexOf(i.toFixed(_this.state.labelPrecision)) !== -1; - case 'default': - setShowComponent(false); - } - }; + var onClickHandler = function onClickHandler(event) { + if (!_this.props.disabled) { + var foundHandle = _this.nearestHandleForValue(_this.handleElements, function (handle) { + return handle.mouseEventClientOffset(event); + }); - var inputComponent = /*#__PURE__*/React__namespace.createElement(Input, __assign({ - defaultValue: inputValue, - placeholder: placeholder, - className: InputClass, - autoFocus: editing, - size: size, - onChange: onInputChangeHandler, - error: error && editing, - ref: inputRef, - "data-test": "DesignSystem-EditableInput--Input" - }, rest)); + if (foundHandle) { + foundHandle.changeValue(i); + } + } + }; - var onKeyDown = function onKeyDown(event) { - if (document.activeElement === inputRef.current) { - switch (event.key) { - case 'Enter': - onSaveChanges(); - break; + var SliderTicksClass = classNames__default["default"]((_a = {}, _a['Slider-ticks'] = true, _a['bg-dark'] = active, _a)); + labels.push( /*#__PURE__*/React__namespace.createElement("div", { + onClick: onClickHandler, + className: 'Slider-label', + key: i, + style: style, + onMouseOver: function onMouseOver() { + return _this.handleLabelMouseOver(i); + }, + onMouseLeave: _this.handleLabelMouseLeave, + "data-test": "DesignSystem-MultiSlider-Label" + }, /*#__PURE__*/React__namespace.createElement("span", { + className: SliderTicksClass + }), labelRenderer !== false && /*#__PURE__*/React__namespace.createElement(Text, { + size: "small", + appearance: active ? 'default' : 'disabled' + }, _this.formatLabel(i)))); + }; - case 'Escape': - setDefaultComponent(); - break; + for (var i = min, offsetRatio = 0; i < max || approxEqual(i, max); i += labelStepSize, offsetRatio += stepSizeRatio) { + _loop_1(i, offsetRatio); } - } - }; - var renderChildren = function renderChildren() { - if (showComponent) { - return error && errorMessage && editing ? /*#__PURE__*/React__namespace.createElement(Popover, { - trigger: inputComponent, - position: "right", - className: "px-6 py-6 d-flex align-items-center", - on: "hover" - }, /*#__PURE__*/React__namespace.createElement(Icon, { - name: "error", - appearance: 'alert', - className: "mr-4" - }), /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-EditableInput--ErrorPopper", - appearance: "destructive", - weight: "medium" - }, errorMessage)) : inputComponent; - } + return labels; + }; - return /*#__PURE__*/React__namespace.createElement("div", { - className: EditableDefaultClass, - "data-test": "DesignSystem-EditableInput--Default" - }, value || placeholder); - }; + _this.renderTrackFill = function (index, start, end) { + var _a; - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-EditableInput" - }, baseProps, { - className: EditableInputClass, - onKeyDown: onKeyDown - }), /*#__PURE__*/React__namespace.createElement(Editable, { - onChange: onChangeHandler, - editing: editing - }, renderChildren()), editing && /*#__PURE__*/React__namespace.createElement("div", { - className: ActionClass, - "data-test": "DesignSystem-EditableInput--Actions" - }, /*#__PURE__*/React__namespace.createElement(Button, { - icon: "clear", - className: "mr-3", - size: "tiny", - onClick: setDefaultComponent, - "data-test": "DesignSystem-EditableInput--Discard" - }), /*#__PURE__*/React__namespace.createElement(Button, { - icon: "check", - appearance: "primary", - size: "tiny", - disabled: disableSaveAction, - onClick: onSaveChanges, - "data-test": "DesignSystem-EditableInput--Save" - }))); - }; - EditableInput.defaultProps = { - size: 'regular', - placeholder: '', - value: '', - inputOptions: {} - }; + var _b = [_this.getOffsetRatio(start.value), _this.getOffsetRatio(end.value)].sort(function (left, right) { + return left - right; + }), + startRatio = _b[0], + endRatio = _b[1]; - var EditableChipInput = function EditableChipInput(props) { - var _a, _b, _c, _d; + var startOffset = Number((startRatio * 100).toFixed(2)); + var endOffset = Number(((1 - endRatio) * 100).toFixed(2)); + var width = 100 - endOffset - startOffset + "%"; + var orientationStyle = { + width: width + }; - var placeholder = props.placeholder, - value = props.value, - onChange = props.onChange, - className = props.className, - disableSaveAction = props.disableSaveAction, - chipInputOptions = props.chipInputOptions; + var style = __assign({}, orientationStyle); - var onChipInputChange = chipInputOptions.onChange, - _e = chipInputOptions.chipOptions, - chipOptions = _e === void 0 ? {} : _e, - rest = __rest(chipInputOptions, ["onChange", "chipOptions"]); + var fillTrack = _this.getTrackFill(start, end); - var _onClick = chipOptions.onClick, - chipObject = __rest(chipOptions, ["onClick"]); + var classes = classNames__default["default"]((_a = {}, _a['Slider-progress'] = true, _a['Slider-progress--disabled'] = _this.props.disabled, _a['Slider-progress--inRange'] = fillTrack, _a['Slider-progress--inRangeDisabled'] = fillTrack && _this.props.disabled, _a)); + return /*#__PURE__*/React__namespace.createElement("div", { + key: "track-" + index, + className: classes, + style: style + }); + }; - var _f = React__namespace.useState(value), - inputValue = _f[0], - setInputValue = _f[1]; + _this.renderTracks = function () { + var trackStops = _this.getHandleValues(_this.props); - var _g = React__namespace.useState(false), - showComponent = _g[0], - setShowComponent = _g[1]; + trackStops.push({ + value: _this.props.max + }); + var previous = { + value: _this.props.min || 0 + }; + var handles = []; + trackStops.forEach(function (track, index) { + var current = track; + handles.push(_this.renderTrackFill(index, previous, current)); + previous = current; + }); + return handles; + }; - var baseProps = extractBaseProps(props); - var isWithChips = inputValue && inputValue.length; - var classes = classNames__default['default']((_a = {}, _a['EditableChipInput'] = true, _a), className); - var actionClass = classNames__default['default']((_b = {}, _b['EditableChipInput-actions'] = true, _b)); - var defaultClasses = classNames__default['default']((_c = {}, _c['EditableChipInput-default'] = !isWithChips, _c['EditableChipInput-defaultWithChips'] = isWithChips, _c)); - var inputClass = classNames__default['default']((_d = {}, _d['EditableChipInput-chipInput'] = true, _d)); - React__namespace.useEffect(function () { - setDefaultComponent(); - }, [value]); + _this.handleLabelMouseOver = function (value) { + _this.setState({ + hoveredLabelValue: value + }); + }; - var onChipInputChangeHandler = function onChipInputChangeHandler(val) { - setInputValue(val); - if (onChipInputChange) onChipInputChange(val); - }; + _this.handleLabelMouseLeave = function () { + _this.setState({ + hoveredLabelValue: undefined + }); + }; - var setDefaultComponent = function setDefaultComponent() { - setInputValue(value); - setShowComponent(false); - }; + _this.state = { + labelPrecision: _this.getLabelPrecision(_this.props), + tickSize: 0, + tickSizeRatio: 0 + }; + return _this; + } - var onSaveChanges = function onSaveChanges() { - if (onChange && inputValue) onChange(inputValue); + MultiSlider.prototype.getDerivedStateFromProps = function (props) { + return { + labelPrecision: this.getLabelPrecision(props) + }; }; - var onChangeHandler = function onChangeHandler(eventType) { - switch (eventType) { - case 'edit': - setShowComponent(true); - - case 'hover': - return; + MultiSlider.prototype.getSnapshotBeforeUpdate = function (prevProps) { + var prevHandleProps = this.getHandleValues(prevProps); + var newHandleProps = this.getHandleValues(this.props); - case 'default': - setShowComponent(false); - return; + if (newHandleProps.length !== prevHandleProps.length) { + this.handleElements = []; } + + return null; }; - var renderDefaultState = function renderDefaultState() { - if (inputValue && inputValue.length) { - return inputValue.map(function (val, index) { - return /*#__PURE__*/React__namespace.createElement(Chip, __assign({ - "data-test": "DesignSystem-EditableChipInput--Chip", - key: index, - name: val, - label: val, - className: "my-2 mx-2" - }, chipObject, { - onClick: function onClick() { - return _onClick && _onClick(val, index); - } - })); - }); - } + MultiSlider.prototype.componentDidMount = function () { + this.updateTickSize(); + }; - return /*#__PURE__*/React__namespace.createElement(Text, { - className: "EditableChipInput--Text" - }, placeholder); + MultiSlider.prototype.nearestHandleForValue = function (handles, getOffset) { + return argMin(handles, function (handle) { + var offset = getOffset(handle); + var offsetValue = handle.clientToValue(offset); + var handleValue = handle.props.value; + return Math.abs(offsetValue - handleValue); + }); }; - var renderChildren = function renderChildren() { - if (showComponent) { - return /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-EditableChipInput--wrapper" - }, /*#__PURE__*/React__namespace.createElement(ChipInput, __assign({ - "data-test": "DesignSystem-EditableChipInput--ChipInput", - placeholder: placeholder, - onChange: onChipInputChangeHandler, - value: inputValue, - chipOptions: chipOptions - }, rest, { - className: inputClass - }))); - } + MultiSlider.prototype.render = function () { + var _a, _b; - return /*#__PURE__*/React__namespace.createElement("div", { - className: defaultClasses, - "data-test": "DesignSystem-EditableChipInput--Default" - }, renderDefaultState()); + var _this = this; + + var _c = this.props, + label = _c.label, + className = _c.className; + var baseProps = extractBaseProps(this.props); + var SliderClass = classNames__default["default"]((_a = {}, _a['Slider'] = true, _a), className); + var WrapperClass = classNames__default["default"]((_b = {}, _b['Slider-wrapper'] = true, _b['Slider-wrapper--disabled'] = this.props.disabled, _b)); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: SliderClass, + "data-test": "DesignSystem-MultiSlider" + }), label && /*#__PURE__*/React__namespace.createElement(Label, { + withInput: true + }, label), /*#__PURE__*/React__namespace.createElement("div", { + className: WrapperClass + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "Slider-track", + ref: function ref(_ref) { + return _this.trackElement = _ref; + }, + onMouseDown: this.maybeHandleTrackClick, + "data-test": "DesignSystem-MultiSlider-Slider-Track" + }, this.renderTracks()), /*#__PURE__*/React__namespace.createElement("div", { + className: "Slider-axis" + }, this.renderLabels()), this.renderHandles())); }; + MultiSlider.defaultProps = { + labelStepSize: 1, + max: 10, + min: 0, + stepSize: 1, + labelRenderer: true + }; + MultiSlider.Handle = MultiSliderHandle; + return MultiSlider; + }(React__namespace.Component); + + var OutsideClick = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a; + + var children = props.children, + className = props.className, + onOutsideClick = props.onOutsideClick, + rest = __rest(props, ["children", "className", "onOutsideClick"]); + + var innerRef = React__namespace.useRef(null); + React__namespace.useImperativeHandle(ref, function () { + return innerRef.current; + }, [innerRef]); + React__namespace.useEffect(function () { + document.addEventListener('click', handleOutsideClick, true); + return function () { + document.removeEventListener('click', handleOutsideClick); + }; + }, []); + var handleOutsideClick = React__namespace.useCallback(function (event) { + var element = innerRef; + + if (!event.target || !element.current) { + return; + } + + if (!element.current.contains(event.target)) { + onOutsideClick(event); + } + }, []); + var classes = classNames__default["default"]((_a = {}, _a['OutsideClick'] = true, _a), className); return /*#__PURE__*/React__namespace.createElement("div", __assign({ + ref: innerRef + }, rest, { + className: classes + }), children); + }); + OutsideClick.displayName = 'OutsideClick'; + + var Paragraph = function Paragraph(props) { + var _a; + + var appearance = props.appearance, + children = props.children, + className = props.className, + color = props.color, + rest = __rest(props, ["appearance", "children", "className", "color"]); + + var classes = classNames__default["default"]((_a = { + Text: true + }, _a["Text--" + appearance] = !color && appearance, _a["color-" + color] = color, _a), className); + return /*#__PURE__*/React__namespace.createElement(Link$1, __assign({ + "data-test": "DesignSystem-Paragraph" + }, rest, { className: classes, - "data-test": "DesignSystem-EditableChipInput" - }, baseProps), /*#__PURE__*/React__namespace.createElement(Editable, { - onChange: onChangeHandler, - editing: showComponent - }, renderChildren()), showComponent && /*#__PURE__*/React__namespace.createElement("div", { - className: actionClass, - "data-test": "DesignSystem-EditableChipInput--Actions" - }, /*#__PURE__*/React__namespace.createElement(Button, { - "data-test": "DesignSystem-EditableChipInput--DiscardButton", - icon: "clear", - className: "mr-3", - size: "tiny", - onClick: setDefaultComponent - }), /*#__PURE__*/React__namespace.createElement(Button, { - "data-test": "DesignSystem-EditableChipInput--SaveButton", - icon: "check", - appearance: "primary", - size: "tiny", - disabled: disableSaveAction, - onClick: onSaveChanges - }))); + componentType: "p" + }), children); }; - EditableChipInput.defaultProps = { - placeholder: '', - chipInputOptions: {} + Paragraph.displayName = 'Paragraph'; + Paragraph.defaultProps = { + appearance: 'default' }; - var ProgressRing = function ProgressRing(props) { + var ProgressBar = function ProgressBar(props) { var _a; - var size = props.size, - max = props.max, + var max = props.max, value = props.value, - className = props.className; + className = props.className, + size = props.size; var baseProps = extractBaseProps(props); - var radius = 20; - var circumference = 2 * Math.PI * radius; - var ProgressRingClass = classNames__default['default']((_a = { - Ring: true - }, _a["Ring--" + size] = size, _a), className); - var svgProps = { - viewBox: '0 0 50 50' - }; - var updatedValue = value > 0 ? Math.min(value, max) * 100 / max : 0; - var circleProps = { - cx: 25, - cy: 25, - r: radius, - fill: 'none', - strokeWidth: '8', - strokeDasharray: circumference + " " + circumference + var style = { + width: value > 0 ? Math.min(value, max) * 100 / max + "%" : '0' }; - return /*#__PURE__*/React__namespace.createElement("svg", __assign({ - "data-test": "DesignSystem-ProgressRing" + var ProgressBarClass = classNames__default["default"]({ + ProgressBar: true + }, className); + var ProgressIndicatorClass = classNames__default["default"]((_a = {}, _a['ProgressBar-indicator'] = true, _a['ProgressBar-indicator--small'] = size === 'small', _a['ProgressBar-indicator--regular'] = size === 'regular', _a)); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-ProgressBar" }, baseProps, { - className: ProgressRingClass - }, svgProps), /*#__PURE__*/React__namespace.createElement("circle", __assign({ - className: "Ring-background" - }, circleProps)), /*#__PURE__*/React__namespace.createElement("circle", __assign({ - className: "Ring-indicator", - strokeDashoffset: circumference - updatedValue / 100 * circumference - }, circleProps, { - "data-test": "DesignSystem-ProgressRing--Circle" - }))); + className: ProgressBarClass + }), /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-ProgressBar-Indicator", + className: ProgressIndicatorClass, + style: style + })); }; - ProgressRing.displayName = 'ProgressRing'; - ProgressRing.defaultProps = { - size: 'regular', - max: 100 + ProgressBar.displayName = 'ProgressBar'; + ProgressBar.defaultProps = { + max: 100, + size: 'regular' }; - var Step = function Step(props) { - var _a; + var Radio = /*#__PURE__*/React__namespace.forwardRef(function (props, forwardedRef) { + var _a, _b, _c, _d; - var label = props.label, - value = props.value, + var _e = props.size, + size = _e === void 0 ? 'regular' : _e, + label = props.label, disabled = props.disabled, - active = props.active, - completed = props.completed, - onChange = props.onChange; - var StepClass = classNames__default['default']((_a = {}, _a['Step'] = true, _a['Step--active'] = active, _a['Step--disabled'] = disabled, _a)); - - var onClickHandle = function onClickHandle() { - if (disabled) return; - if (onChange) onChange(label, value); - }; - - var iconAppearance = completed ? 'info' : disabled ? 'disabled' : active ? 'info' : 'default'; - var appearance = active ? 'link' : disabled ? 'disabled' : 'default'; - return /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-Step", - className: StepClass, - onClick: onClickHandle - }, /*#__PURE__*/React__namespace.createElement(Icon, { - "data-test": "DesignSystem-Step--Icon", - name: completed ? 'check_circle' : 'radio_button_unchecked', - appearance: iconAppearance, - className: "mr-3 my-4" - }), label && /*#__PURE__*/React__namespace.createElement(Text, { - weight: "medium", - appearance: appearance - }, label)); - }; - Step.displayName = 'Step'; - - var Stepper = function Stepper(props) { - var _a; - - var steps = props.steps, - active = props.active, - completed = props.completed, onChange = props.onChange, + name = props.name, + value = props.value, + checked = props.checked, + defaultChecked = props.defaultChecked, className = props.className, - skipIndexes = props.skipIndexes; - var baseProps = extractBaseProps(props); + helpText = props.helpText, + error = props.error, + rest = __rest(props, ["size", "label", "disabled", "onChange", "name", "value", "checked", "defaultChecked", "className", "helpText", "error"]); - var onChangeHandler = function onChangeHandler(index, stepLabel, stepValue) { - if (onChange) onChange(index, completed, stepLabel, stepValue); - }; + var ref = React__namespace.useRef(null); + React__namespace.useImperativeHandle(forwardedRef, function () { + return ref.current; + }); + var RadioClass = classNames__default["default"]((_a = {}, _a['Radio'] = true, _a['Radio--disabled'] = disabled, _a), className); + var RadioWrapper = classNames__default["default"]((_b = {}, _b['Radio-wrapper'] = true, _b["Radio-defaultWrapper"] = !error, _b["Radio-errorWrapper"] = error, _b["Radio-wrapper--" + size] = size, _b)); + var RadioOuterWrapper = classNames__default["default"]((_c = {}, _c['Radio-outerWrapper'] = true, _c["Radio-outerWrapper--" + size] = size, _c)); + var RadioLabelClass = classNames__default["default"]((_d = {}, _d['Radio-Label'] = true, _d)); + var id = name + "-" + label + "-" + uidGenerator(); + return /*#__PURE__*/React__namespace.createElement("div", { + className: RadioClass, + "data-test": "DesignSystem-Radio" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: RadioOuterWrapper, + "data-test": "DesignSystem-Radio-OuterWrapper" + }, /*#__PURE__*/React__namespace.createElement("input", __assign({ + tabIndex: 0 + }, rest, { + type: "radio", + disabled: disabled, + checked: checked, + defaultChecked: defaultChecked, + ref: ref, + name: name, + value: value, + onChange: onChange, + className: "Radio-input", + id: id, + "data-test": "DesignSystem-Radio-Input" + })), /*#__PURE__*/React__namespace.createElement("span", { + "data-test": "DesignSystem-Radio-wrapper", + className: RadioWrapper + })), /*#__PURE__*/React__namespace.createElement("div", { + className: "Radio-labelWrapper" + }, label && /*#__PURE__*/React__namespace.createElement("label", { + className: RadioLabelClass, + htmlFor: id, + "data-test": "DesignSystem-Radio-Label" + }, /*#__PURE__*/React__namespace.createElement(Text, { + size: size === 'tiny' ? 'small' : 'regular', + appearance: disabled ? 'disabled' : 'default' + }, label)), helpText && /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-Radio-HelpText", + size: "small", + appearance: disabled ? 'disabled' : 'subtle' + }, helpText.trim()))); + }); + Radio.displayName = 'Radio'; + + var Row = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a; + + var className = props.className, + children = props.children, + rest = __rest(props, ["className", "children"]); - var StepperClass = classNames__default['default']((_a = {}, _a['Stepper'] = true, _a), className); + var classes = classNames__default["default"]((_a = { + Row: true + }, _a["" + className] = className, _a)); return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-Stepper" + "data-test": "DesignSystem-Row", + ref: ref + }, rest, { + className: classes + }), children); + }); + Row.displayName = 'Row'; + + var StatusHint = function StatusHint(props) { + var _a, _b, _c; + + var appearance = props.appearance, + children = props.children, + _onMouseEnter = props.onMouseEnter, + _onMouseLeave = props.onMouseLeave, + _onClick = props.onClick, + truncateLabel = props.truncateLabel, + className = props.className; + var baseProps = extractBaseProps(props); + var StatusHintClass = classNames__default["default"]((_a = {}, _a['StatusHint'] = true, _a), className); + var StatusHintIconClass = classNames__default["default"]((_b = {}, _b['StatusHint-icon'] = true, _b["StatusHint--" + appearance] = appearance, _b)); + var StatusHintTextClass = classNames__default["default"]((_c = {}, _c['ellipsis--noWrap'] = truncateLabel, _c)); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-StatusHint" }, baseProps, { - className: StepperClass - }), steps.map(function (step, index) { - var label = step.label, - value = step.value; - var isSkipped = skipIndexes.includes(index); - var activeStep = active === index; - var completedStep = !isSkipped && completed >= index; - var disabled = !activeStep && !isSkipped && completed + 1 < index; - return /*#__PURE__*/React__namespace.createElement(Step, { - key: index, - label: label, - value: value, - active: activeStep, - completed: completedStep, - disabled: disabled, - onChange: function onChange(steplabel, stepvalue) { - return onChangeHandler(index, steplabel, stepvalue); - } - }); - })); + className: StatusHintClass, + onClick: function onClick(e) { + return _onClick && _onClick(e); + }, + onMouseEnter: function onMouseEnter(e) { + return _onMouseEnter && _onMouseEnter(e); + }, + onMouseLeave: function onMouseLeave(e) { + return _onMouseLeave && _onMouseLeave(e); + } + }), /*#__PURE__*/React__namespace.createElement("span", { + "data-test": "DesignSystem-StatusHint--Icon", + className: StatusHintIconClass + }), /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-StatusHint--Text", + weight: 'medium', + className: StatusHintTextClass + }, children)); }; - Stepper.displayName = 'Stepper'; - Stepper.defaultProps = { - completed: -1, - active: 0, - skipIndexes: [] + StatusHint.displayName = 'StatusHint'; + StatusHint.defaultProps = { + appearance: 'default' }; - var Trigger = function Trigger(props) { - var inputFormat = props.inputFormat, - startInputOptions = props.startInputOptions, - endInputOptions = props.endInputOptions, - validators = props.validators, - state = props.state, - setState = props.setState; - var init = state.init, - startDate = state.startDate, - endDate = state.endDate, - startError = state.startError, - endError = state.endError; + var Pills = function Pills(props) { + var _a; - var updateNav = function updateNav(type) { - if (type === 'start') { - var _a = getDateInfo(startDate), - year = _a.year, - month = _a.month; + var appearance = props.appearance, + children = props.children, + subtle = props.subtle, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]((_a = { + Pills: true + }, _a["Badge--" + appearance] = appearance && !subtle, _a["Badge--subtle-" + appearance] = subtle, _a), className); + return /*#__PURE__*/React__namespace.createElement("span", __assign({ + "data-test": "DesignSystem-Pills" + }, baseProps, { + className: classes + }), children); + }; + Pills.displayName = 'Pills'; + Pills.defaultProps = { + appearance: 'secondary' + }; - setState({ - yearNav: year, - monthNav: month - }); - } + var Spinner = function Spinner(props) { + var _a, _b; - if (type === 'end') { - var _b = getDateInfo(endDate), - year = _b.year, - month = _b.month; + var appearance = props.appearance, + size = props.size, + className = props.className; + var baseProps = extractBaseProps(props); + var wrapperClasses = classNames__default["default"]((_a = { + Spinner: true + }, _a["Spinner--" + size] = size, _a), className); + var circleClasses = classNames__default["default"]((_b = { + Circle: true + }, _b["Circle--" + appearance] = appearance, _b)); + var svgProps = { + viewBox: '0 0 50 50' + }; + var circleProps = { + cx: 25, + cy: 25, + r: 20, + fill: 'none', + strokeMiterlimit: '10', + strokeWidth: '4' + }; + return /*#__PURE__*/React__namespace.createElement("svg", __assign({}, baseProps, { + className: wrapperClasses + }, svgProps), /*#__PURE__*/React__namespace.createElement("circle", __assign({ + className: circleClasses + }, circleProps))); + }; + Spinner.displayName = 'Spinner'; + Spinner.defaultProps = { + appearance: 'primary', + size: 'medium' + }; - setState({ - yearNav: year, - monthNav: month - }); + var Slider = function Slider(props) { + var valueProp = props.value, + defaultValue = props.defaultValue, + onRelease = props.onRelease, + onChange = props.onChange, + rest = __rest(props, ["value", "defaultValue", "onRelease", "onChange"]); + + var _a = React__namespace.useState(valueProp === undefined ? defaultValue : valueProp), + value = _a[0], + setValue = _a[1]; + + React__namespace.useEffect(function () { + if (valueProp !== undefined) { + setValue(valueProp); + } + }, [valueProp]); + + var onChangeHandler = function onChangeHandler(newValue) { + if (valueProp === undefined) { + setValue(newValue); } + + if (onChange) onChange(newValue); }; - var onChangeHandler = function onChangeHandler(_e, val, type) { - setState({ - open: true - }); + return /*#__PURE__*/React__namespace.createElement(MultiSlider, __assign({}, rest), /*#__PURE__*/React__namespace.createElement(MultiSlider.Handle, { + value: value, + onChange: onChangeHandler, + onRelease: onRelease, + fillBefore: true + })); + }; + Slider.displayName = 'Slider'; + Slider.defaultProps = __assign(__assign({}, MultiSlider.defaultProps), { + defaultValue: 0 + }); - if (type === 'start') { - var placeholderChar = startInputOptions.placeholderChar || '_'; + var RangeIndex; - if (val && !val.includes(placeholderChar)) { - var d = translateToDate(inputFormat, val, validators); + (function (RangeIndex) { + RangeIndex[RangeIndex["START"] = 0] = "START"; + RangeIndex[RangeIndex["END"] = 1] = "END"; + })(RangeIndex || (RangeIndex = {})); - if (d) { - setState({ - startDate: d - }); + var RangeSlider = function RangeSlider(props) { + var valueProp = props.value, + defaultValue = props.defaultValue, + onChange = props.onChange, + onRelease = props.onRelease, + rest = __rest(props, ["value", "defaultValue", "onChange", "onRelease"]); - if (endDate) { - var _a = getDateInfo(endDate), - eYear = _a.year, - eMonth = _a.month, - eDate = _a.date; + var _a = React__namespace.useState(valueProp === undefined ? defaultValue : valueProp), + value = _a[0], + setValue = _a[1]; - if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { - setState({ - endDate: undefined + React__namespace.useEffect(function () { + if (valueProp !== undefined) { + setValue(valueProp); + } + }, [valueProp]); + + var onChangeHandler = function onChangeHandler(range) { + if (valueProp === undefined) { + setValue(range); + } + + if (onChange) onChange(range); + }; + + return /*#__PURE__*/React__namespace.createElement(MultiSlider, __assign({ + onRangeChange: onChangeHandler, + onRangeRelease: onRelease + }, rest), /*#__PURE__*/React__namespace.createElement(MultiSlider.Handle, { + value: value[RangeIndex.START], + fillAfter: true + }), /*#__PURE__*/React__namespace.createElement(MultiSlider.Handle, { + value: value[RangeIndex.END] + })); + }; + RangeSlider.displayName = 'RangeSlider'; + RangeSlider.defaultProps = __assign(__assign({}, MultiSlider.defaultProps), { + defaultValue: [0, 10] + }); + + var Subheading = function Subheading(props) { + var _a; + + var appearance = props.appearance, + children = props.children, + className = props.className, + color = props.color, + rest = __rest(props, ["appearance", "children", "className", "color"]); + + var classes = classNames__default["default"]((_a = { + Subheading: true + }, _a["Subheading--" + appearance] = !color && appearance, _a["color-" + color] = color, _a), className); + return /*#__PURE__*/React__namespace.createElement(Link$1, __assign({ + "data-test": "DesignSystem-Subheading" + }, rest, { + className: classes, + componentType: 'h4' + }), children); + }; + Subheading.displayName = 'Subheading'; + Subheading.defaultProps = { + appearance: 'default' + }; + + var Switch = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a, _b; + + var _c = props.size, + size = _c === void 0 ? 'regular' : _c, + defaultChecked = props.defaultChecked, + disabled = props.disabled, + onChange = props.onChange, + name = props.name, + value = props.value, + className = props.className; + props.appearance; + var checkedProp = props.checked, + rest = __rest(props, ["size", "defaultChecked", "disabled", "onChange", "name", "value", "className", "appearance", "checked"]); + + var _d = React__namespace.useState(checkedProp === undefined ? defaultChecked : checkedProp), + checked = _d[0], + setChecked = _d[1]; + + React__namespace.useEffect(function () { + if (checkedProp !== undefined) setChecked(checkedProp); + }, [checkedProp]); + var SwitchClass = classNames__default["default"]((_a = {}, _a['Switch'] = true, _a['Switch--disabled'] = disabled, _a["Switch--" + size] = size, _a), className); + var SwitchWrapper = classNames__default["default"]((_b = {}, _b['Switch-wrapper'] = true, _b['Switch-wrapper--disabled'] = disabled, _b["Switch-wrapper--" + size] = size, _b['Switch-wrapper--checked'] = checked, _b['Switch-wrapper--checkedDisabled'] = checked && disabled, _b)); + + var onChangeHandler = function onChangeHandler(event) { + if (event.type == 'change' || isSpaceKey(event)) { + if (checkedProp === undefined) setChecked(!checked); + if (onChange) onChange(event, !checked); + } + }; + + return /*#__PURE__*/React__namespace.createElement("div", { + className: SwitchClass + }, /*#__PURE__*/React__namespace.createElement("input", __assign({}, rest, { + type: "checkbox", + defaultChecked: defaultChecked, + disabled: disabled, + onChange: onChangeHandler, + checked: checked, + ref: ref, + name: name, + value: value, + className: "Switch-input", + onKeyUp: onChangeHandler + })), /*#__PURE__*/React__namespace.createElement("span", { + className: SwitchWrapper + })); + }); + Switch.displayName = 'Switch'; + + var Textarea = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a; + + var _b = props.rows, + rows = _b === void 0 ? 3 : _b, + _c = props.resize, + resize = _c === void 0 ? true : _c, + disabled = props.disabled, + name = props.name, + placeholder = props.placeholder, + value = props.value, + defaultValue = props.defaultValue, + required = props.required, + error = props.error, + onChange = props.onChange, + onClick = props.onClick, + onBlur = props.onBlur, + onFocus = props.onFocus, + className = props.className, + rest = __rest(props, ["rows", "resize", "disabled", "name", "placeholder", "value", "defaultValue", "required", "error", "onChange", "onClick", "onBlur", "onFocus", "className"]); + + var classes = classNames__default["default"]((_a = {}, _a['Textarea'] = true, _a['Textarea--resize'] = resize, _a['Textarea--error'] = error, _a), className); + return /*#__PURE__*/React__namespace.createElement("textarea", __assign({ + "data-test": "DesignSystem-Textarea" + }, rest, { + ref: ref, + name: name, + rows: rows, + placeholder: placeholder, + className: classes, + value: value, + defaultValue: defaultValue, + required: required, + disabled: disabled, + onChange: onChange, + onBlur: onBlur, + onClick: onClick, + onFocus: onFocus + })); + }); + Textarea.displayName = 'Textarea'; + + var ActionButton = function ActionButton(props) { + var _a; + + var appearance = props.appearance, + label = props.label, + onClick = props.onClick; + var buttonClass = classNames__default["default"]((_a = {}, _a['Button'] = true, _a['Button--tiny'] = true, _a['Toast-actionButton'] = true, _a["Toast-actionButton--" + appearance] = appearance, _a)); + + var onClickHandler = function onClickHandler(e) { + e.preventDefault(); + if (onClick) onClick(e); + }; + + return /*#__PURE__*/React__namespace.createElement("button", { + className: buttonClass, + onClick: onClickHandler + }, /*#__PURE__*/React__namespace.createElement(Text, { + appearance: "white" + }, label)); + }; + + ActionButton.displayName = 'ActionButton'; + ActionButton.defaultProps = { + appearance: 'default' + }; + + var Toast = function Toast(props) { + var _a, _b, _c, _d; + + var title = props.title, + message = props.message, + actions = props.actions, + onClose = props.onClose, + className = props.className; + var appearance = props.appearance; + appearance = appearance === 'default' ? 'info' : appearance; + var baseProps = extractBaseProps(props); + var wrapperClass = classNames__default["default"]((_a = {}, _a['Toast'] = true, _a['Toast--withMessage'] = message, _a["Toast--" + appearance] = appearance, _a), className); + var IconMapping = { + info: 'info', + success: 'check_circle', + alert: 'error', + warning: 'warning' + }; + var icon = IconMapping[appearance]; + var titleClass = classNames__default["default"]((_b = {}, _b['Toast-title'] = true, _b['Toast-title--withMessage'] = message, _b)); + + var iconClass = function iconClass(align) { + var _a; + + return classNames__default["default"]((_a = {}, _a['Toast-icon'] = true, _a["Toast-icon--" + align] = align, _a["Toast-icon--" + appearance] = appearance, _a["Toast-close-icon--" + appearance] = appearance && align === 'right', _a)); + }; + + var textClass = classNames__default["default"]((_c = {}, _c['Toast-text'] = true, _c["Toast-text--" + appearance] = appearance, _c)); + var headingClass = classNames__default["default"]((_d = {}, _d['Toast-heading'] = true, _d["Toast-heading--" + appearance] = appearance, _d)); + + var onCloseHandler = function onCloseHandler() { + if (onClose) onClose(); + }; + + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: wrapperClass + }), icon && /*#__PURE__*/React__namespace.createElement(Icon, { + name: icon, + className: iconClass('left') + }), /*#__PURE__*/React__namespace.createElement("div", { + className: "Toast-body" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: titleClass + }, /*#__PURE__*/React__namespace.createElement(Heading, { + size: "s", + className: headingClass, + appearance: appearance !== 'warning' ? 'white' : 'default' + }, title), /*#__PURE__*/React__namespace.createElement(Icon, { + name: 'close', + className: iconClass('right'), + onClick: onCloseHandler, + appearance: appearance !== 'warning' ? 'white' : 'default' + })), message && /*#__PURE__*/React__namespace.createElement(Text, { + appearance: appearance !== 'warning' ? 'white' : 'default', + className: textClass + }, message), !!(actions === null || actions === void 0 ? void 0 : actions.length) && /*#__PURE__*/React__namespace.createElement("div", { + className: "Toast-actions" + }, actions.slice(0, 2).map(function (action, index) { + return /*#__PURE__*/React__namespace.createElement(ActionButton, { + key: index, + label: action.label, + appearance: appearance, + onClick: action.onClick + }); + })))); + }; + Toast.displayName = 'Toast'; + Toast.defaultProps = { + appearance: 'info' + }; + + var PopperWrapper = function (_super) { + __extends(PopperWrapper, _super); + + function PopperWrapper(props) { + var _this = _super.call(this, props) || this; + + _this.togglePopper = function (type, newValue) { + var _a = _this.props, + open = _a.open, + onToggle = _a.onToggle; + onToggle(newValue === undefined ? !open : newValue, type); + }; + + _this.doesEventContainsElement = function (event, ref) { + var el = ref.current; + return el && el.contains(event.target); + }; + + _this.getUpdatedStyle = function (oldStyle, placement, offset) { + var style = _this.props.style; + + var newStyle = __assign(__assign({}, style), oldStyle); + + var position = placement ? placement.split('-')[0] : placement; + + switch (position) { + case 'top': + newStyle.marginBottom = _this.offsetMapping[offset]; + break; + + case 'bottom': + newStyle.marginTop = _this.offsetMapping[offset]; + break; + + case 'left': + newStyle.marginRight = _this.offsetMapping[offset]; + break; + + case 'right': + newStyle.marginLeft = _this.offsetMapping[offset]; + break; + } + + if (_this.props.triggerCoordinates) { + newStyle.position = 'absolute'; + newStyle.transform = "translate(" + _this.props.triggerCoordinates.x + "px, " + _this.props.triggerCoordinates.y + "px)"; + } + + return newStyle; + }; + + _this.state = { + animationKeyframe: '', + isOpen: _this.props.open || false, + uniqueKey: '' + }; + _this.hoverableDelay = 100; + _this.offsetMapping = { + small: '2px', + medium: '4px', + large: '8px' + }; + _this.triggerRef = /*#__PURE__*/React__namespace.createRef(); + _this.popupRef = /*#__PURE__*/React__namespace.createRef(); + _this.getPopperChildren = _this.getPopperChildren.bind(_this); + _this.mouseMoveHandler = _this.mouseMoveHandler.bind(_this); + _this.handleMouseEnter = _this.handleMouseEnter.bind(_this); + _this.handleMouseLeave = _this.handleMouseLeave.bind(_this); + _this.boundaryScrollHandler = _this.boundaryScrollHandler.bind(_this); + return _this; + } + + PopperWrapper.prototype.componentDidMount = function () { + this.addBoundaryScrollHandler(); + var triggerElement = this.triggerRef.current; + var zIndex = this.getZIndexForLayer(triggerElement); + this.setState({ + zIndex: zIndex === undefined ? zIndex : zIndex + 1 + }); + }; + + PopperWrapper.prototype.componentDidUpdate = function (prevProps) { + if (!prevProps.boundaryElement && this.props.boundaryElement) { + this.removeBoundaryScrollHandler(); + this.addBoundaryScrollHandler(); + } + + if (prevProps.open !== this.props.open) { + this._throttleWait = false; + this.setState({ + animationKeyframe: '' + }); + + if (this.props.open) { + var triggerElement = this.triggerRef.current; + var zIndex = this.getZIndexForLayer(triggerElement); + this.setState({ + zIndex: zIndex === undefined ? zIndex : zIndex + 1, + isOpen: true + }); + } else if (!this.props.open && this.props.animationClass) { + this.setState({ + isOpen: false + }); + } + } + }; + + PopperWrapper.prototype.componentWillUnmount = function () { + this.removeBoundaryScrollHandler(); + }; + + PopperWrapper.prototype.boundaryScrollHandler = function () { + var _a = this.props, + open = _a.open, + on = _a.on, + closeOnScroll = _a.closeOnScroll; + + if (on === 'click' && closeOnScroll) { + if (open) { + if (!this._throttleWait) { + this.togglePopper('onScroll', false); + this._throttleWait = true; + } + } + } + }; + + PopperWrapper.prototype.addBoundaryScrollHandler = function () { + if (this.props.boundaryElement && this.props.boundaryElement.addEventListener) { + this.props.boundaryElement.addEventListener('scroll', this.boundaryScrollHandler); + } + }; + + PopperWrapper.prototype.removeBoundaryScrollHandler = function () { + if (this.props.boundaryElement && this.props.boundaryElement.removeEventListener) { + this.props.boundaryElement.removeEventListener('scroll', this.boundaryScrollHandler); + } + }; + + PopperWrapper.prototype.mouseMoveHandler = function () { + var _this = this; + + if (this._timer) clearTimeout(this._timer); + this._timer = window.setTimeout(function () { + var onToggle = _this.props.onToggle; + onToggle(false, 'mouseLeave'); + }, this.hoverableDelay); + }; + + PopperWrapper.prototype.handleMouseEnter = function () { + var on = this.props.on; + + if (on === 'hover') { + if (this._timer) clearTimeout(this._timer); + var onToggle = this.props.onToggle; + onToggle(true, 'mouseEnter'); + this.setState(function () { + return { + isOpen: true + }; + }); + } + }; + + PopperWrapper.prototype.handleMouseLeave = function () { + var on = this.props.on; + + if (on === 'hover') { + var _a = this.props, + hoverable = _a.hoverable, + onToggle = _a.onToggle; + + if (hoverable) { + this.mouseMoveHandler(); + } else { + onToggle(false, 'mouseLeave'); + this.setState({ + isOpen: false + }); + } + } + }; + + PopperWrapper.prototype.getZIndexForLayer = function (node) { + if (node === null) { + return; + } + + var layerNode = node.closest('[data-layer]') || document.body; + var zIndex = layerNode === document.body ? 'auto' : parseInt(window.getComputedStyle(layerNode).zIndex || '0', 10); + return zIndex === 'auto' || isNaN(zIndex) ? 500 : zIndex; + }; + + PopperWrapper.prototype.getTriggerElement = function (ref) { + var _this = this; + + var _a = this.props, + trigger = _a.trigger, + on = _a.on, + triggerClass = _a.triggerClass; + var options = on === 'hover' ? { + ref: ref, + onMouseEnter: this.handleMouseEnter, + onMouseLeave: this.handleMouseLeave + } : { + ref: ref, + onClick: function onClick(ev) { + ev.stopPropagation(); + + _this.togglePopper('onClick'); + } + }; + var classes = classNames__default["default"]('PopperWrapper-trigger', triggerClass); + + var shouldPopoverClose = function shouldPopoverClose(clicked) { + var popover = _this.popupRef.current; + var container = document.body; + var popoverIndex = parseInt(window.getComputedStyle(popover).zIndex); + var clickInsideLayer = false; + var shouldClose = false; + var openedLayers = container.querySelectorAll('[data-opened="true"]'); + openedLayers.forEach(function (layer) { + if (layer.contains(clicked)) { + clickInsideLayer = true; + var clickedIndex = parseInt(window.getComputedStyle(layer).zIndex); + + if (popoverIndex > clickedIndex) { + shouldClose = true; + return; + } + } + }); + + if (container.isEqualNode(clicked) || shouldClose || !container.contains(clicked) || !clickInsideLayer) { + return true; + } + + return false; + }; + + var onOutsideClickHandler = function onOutsideClickHandler(event) { + var _a = _this.props, + open = _a.open, + closeOnBackdropClick = _a.closeOnBackdropClick; + + if (open && shouldPopoverClose(event.target) && closeOnBackdropClick) { + if (!_this.doesEventContainsElement(event, _this.popupRef)) { + _this.togglePopper('outsideClick'); + } + } + }; + + return /*#__PURE__*/React__namespace.createElement(OutsideClick, __assign({ + className: classes, + onOutsideClick: onOutsideClickHandler + }, options), trigger); + }; + + PopperWrapper.prototype.getPopperChildren = function (_a) { + var _b; + + var _this = this; + + var _c, _d; + + var ref = _a.ref, + style = _a.style, + placement = _a.placement, + outOfBoundaries = _a.outOfBoundaries; + var _e = this.props, + offset = _e.offset, + children = _e.children, + open = _e.open, + animationClass = _e.animationClass; + var _f = this.state, + zIndex = _f.zIndex, + animationKeyframe = _f.animationKeyframe, + uniqueKey = _f.uniqueKey; + var newStyle = offset ? this.getUpdatedStyle(style, placement, offset) : style; + + var childrenStyles = __assign(__assign({}, newStyle), { + zIndex: zIndex + }); + + var classes = ''; + + if (!animationClass) { + var maxHeight = (_c = this.popupRef.current) === null || _c === void 0 ? void 0 : _c.offsetHeight; + var transformStyles = (_d = this.popupRef.current) === null || _d === void 0 ? void 0 : _d.style.getPropertyValue('transform'); + + if (transformStyles && maxHeight && placement && !animationKeyframe) { + var uniqueKey_1 = Math.random().toString(36).substring(2, 6); + var isTop = placement.includes('top'); + var popperAnimation = "\n @keyframes popper-open-" + uniqueKey_1 + " {\n from { \n max-height: 0;\n " + (isTop ? "margin-top: " + maxHeight + "px" : '') + ";\n }\n to {\n max-height: " + maxHeight + "px;\n " + (isTop ? "margin-top: 0px" : '') + ";\n }\n }\n @keyframes popper-close-" + uniqueKey_1 + " {\n from {\n max-height: " + maxHeight + "px;\n " + (isTop ? "margin-top: 0px" : '') + ";\n }\n to {\n max-height: 0;\n " + (isTop ? "margin-top: " + maxHeight + "px" : '') + ";\n }\n }\n "; + this.setState({ + animationKeyframe: popperAnimation, + uniqueKey: uniqueKey_1 + }); + } + + var popperAnimationStyles = { + animation: open ? "popper-open-" + uniqueKey + " 120ms cubic-bezier(0, 0, 0.38, 0.9), popper-fade-in 120ms" : "popper-close-" + uniqueKey + " 120ms cubic-bezier(0.2, 0, 1, 0.9), fadeOut 100ms" + }; + childrenStyles = __assign(__assign(__assign({}, childrenStyles), popperAnimationStyles), { + overflow: 'hidden' + }); + } else { + classes = classNames__default["default"]((_b = {}, _b["" + animationClass.open] = this.state.isOpen, _b["" + animationClass.close] = !this.state.isOpen, _b), children.props.className); + } + + var childProps = { + ref: ref, + style: childrenStyles, + 'data-placement': placement, + 'data-hide': outOfBoundaries, + onMouseEnter: this.handleMouseEnter, + onMouseLeave: this.handleMouseLeave, + onAnimationEnd: function onAnimationEnd() { + if (!open) { + _this.setState({ + isOpen: false + }); + } + } + }; + var element = /*#__PURE__*/React__namespace.cloneElement(children, animationClass ? __assign(__assign({}, childProps), { + className: classes + }) : __assign({}, childProps)); + return element; + }; + + PopperWrapper.prototype.render = function () { + var _this = this; + + var _a = this.props, + placement = _a.placement, + appendToBody = _a.appendToBody, + hide = _a.hide, + boundaryElement = _a.boundaryElement, + triggerCoordinates = _a.triggerCoordinates; + var _b = this.state, + animationKeyframe = _b.animationKeyframe, + isOpen = _b.isOpen; + var coordinatesPopper = /*#__PURE__*/React__namespace.createElement(reactPopper.Popper, { + placement: placement, + innerRef: this.popupRef, + modifiers: __assign({ + preventOverflow: { + boundariesElement: boundaryElement || document.body + }, + hide: { + enabled: hide + } + }, triggerCoordinates && { + offset: { + offset: triggerCoordinates.x + "px, " + triggerCoordinates.y + "px" + } + }) + }, this.getPopperChildren); + return /*#__PURE__*/React__namespace.createElement(reactPopper.Manager, null, /*#__PURE__*/React__namespace.createElement("style", null, animationKeyframe), /*#__PURE__*/React__namespace.createElement(reactPopper.Reference, { + innerRef: this.triggerRef + }, function (_a) { + var ref = _a.ref; + return _this.getTriggerElement(ref); + }), isOpen && appendToBody && !triggerCoordinates && /*#__PURE__*/ReactDOM__namespace.createPortal( /*#__PURE__*/React__namespace.createElement(reactPopper.Popper, { + placement: placement, + innerRef: this.popupRef, + modifiers: { + preventOverflow: { + boundariesElement: boundaryElement || document.body + }, + hide: { + enabled: hide + } + } + }, this.getPopperChildren), document.body), isOpen && appendToBody && triggerCoordinates && /*#__PURE__*/ReactDOM__namespace.createPortal(coordinatesPopper, document.body), isOpen && !appendToBody && !triggerCoordinates && /*#__PURE__*/React__namespace.createElement(reactPopper.Popper, { + placement: placement, + innerRef: this.popupRef + }, this.getPopperChildren)); + }; + + PopperWrapper.defaultProps = { + on: 'click', + offset: 'medium', + closeOnBackdropClick: true, + hoverable: true, + appendToBody: true, + style: {} + }; + return PopperWrapper; + }(React__namespace.Component); + + var propsList = ['appendToBody', 'trigger', 'hoverable', 'on', 'open', 'closeOnBackdropClick', 'offset', 'closeOnScroll']; + var Popover = function Popover(props) { + var _a; + + var position = props.position, + customStyle = props.customStyle, + dark = props.dark, + children = props.children, + onToggle = props.onToggle, + className = props.className, + hideOnReferenceEscape = props.hideOnReferenceEscape, + _b = props.boundaryElement, + boundaryElement = _b === void 0 ? document.body : _b, + name = props.name, + rest = __rest(props, ["position", "customStyle", "dark", "children", "onToggle", "className", "hideOnReferenceEscape", "boundaryElement", "name"]); + + var _c = React__namespace.useState(!!props.open), + open = _c[0], + setOpen = _c[1]; + + var _d = React__namespace.useState(false), + init = _d[0], + setInit = _d[1]; + + React__namespace.useEffect(function () { + if (props.open !== undefined) setOpen(props.open); + }, [props.open]); + var defaultOnToggle = React__namespace.useCallback(function (newOpen) { + setOpen(newOpen); + }, []); + React__namespace.useEffect(function () { + if (!init) { + if ('current' in boundaryElement && boundaryElement.current) { + setInit(true); + } + } + }, [boundaryElement]); + var classes = classNames__default["default"]((_a = { + Popover: true + }, _a['Popover--dark'] = dark, _a), className); + var PopoverWrapper = /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Popover", + className: classes, + "data-layer": true, + "data-opened": open, + "data-name": name + }, children); + return /*#__PURE__*/React__namespace.createElement(PopperWrapper, __assign({}, rest, { + init: init, + boundaryElement: 'current' in boundaryElement ? boundaryElement.current : boundaryElement, + open: open, + hide: hideOnReferenceEscape, + style: customStyle, + onToggle: onToggle || defaultOnToggle, + placement: position + }), PopoverWrapper); + }; + Popover.displayName = 'Popover'; + Popover.defaultProps = Object.assign({}, filterProps(PopperWrapper.defaultProps, propsList, true), { + offset: 'large', + position: 'bottom', + hideOnReferenceEscape: true, + customStyle: {} + }); + + var keyCodes$1 = { + BACKSPACE: 'Backspace', + DELETE: 'Delete', + ENTER: 'Enter' + }; + var ChipInput = function ChipInput(props) { + var _a, _b; + + var chipOptions = props.chipOptions, + allowDuplicates = props.allowDuplicates, + disabled = props.disabled, + error = props.error, + placeholder = props.placeholder, + defaultValue = props.defaultValue, + value = props.value, + className = props.className, + autoFocus = props.autoFocus, + onChange = props.onChange, + onBlur = props.onBlur, + onFocus = props.onFocus; + var inputRef = /*#__PURE__*/React__namespace.createRef(); + + var _c = React__namespace.useState(value || defaultValue), + chips = _c[0], + setChips = _c[1]; + + var _d = React__namespace.useState(''), + inputValue = _d[0], + setInputValue = _d[1]; + + var baseProps = extractBaseProps(props); + React__namespace.useEffect(function () { + if (value !== undefined) { + setChips(value); + } + }, [value]); + var ChipInputBorderClass = classNames__default["default"]((_a = {}, _a['ChipInput-border'] = true, _a['ChipInput-border--error'] = error, _a)); + var ChipInputClass = classNames__default["default"]((_b = { + ChipInput: true + }, _b['ChipInput--disabled'] = disabled, _b['ChipInput--withChips'] = chips && chips.length > 0, _b['ChipInput--error'] = error, _b), className); + + var onUpdateChips = function onUpdateChips(updatedChips) { + if (onChange) onChange(updatedChips); + }; + + var onChipDeleteHandler = function onChipDeleteHandler(index) { + var updatedChips = __spreadArrays(chips); + + updatedChips.splice(index, 1); + + if (!value) { + setChips(updatedChips); + } + + onUpdateChips(updatedChips); + }; + + var onChipAddHandler = function onChipAddHandler() { + if (!inputValue) return; + var chip = inputValue.trim(); + + if ((allowDuplicates || chips.indexOf(chip) === -1) && chip) { + var updatedChips = __spreadArrays(chips, [chip]); + + if (!value) { + setChips(updatedChips); + } + + onUpdateChips(updatedChips); + setInputValue(''); + } + }; + + var onDeleteAllHandler = function onDeleteAllHandler() { + var updatedChips = []; + + if (!value) { + setChips(updatedChips); + } + + onUpdateChips(updatedChips); + }; + + var onKeyDownHandler = function onKeyDownHandler(event) { + var chipsLength = chips.length; + + switch (event.key) { + case keyCodes$1.DELETE: + case keyCodes$1.BACKSPACE: + if (inputValue === '' && chipsLength > 0) { + onChipDeleteHandler(chipsLength - 1); + } + + break; + + case keyCodes$1.ENTER: + event.preventDefault(); + onChipAddHandler(); + break; + } + }; + + var onInputChangeHandler = function onInputChangeHandler(e) { + setInputValue(e.target.value); + }; + + var onClickHandler = function onClickHandler() { + var _a; + + (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus(); + }; + + var chipComponents = chips.map(function (chip, index) { + var _a = chipOptions.type, + type = _a === void 0 ? 'input' : _a, + _onClick = chipOptions.onClick, + rest = __rest(chipOptions, ["type", "onClick"]); + + return /*#__PURE__*/React__namespace.createElement(Chip, __assign({ + "data-test": "DesignSystem-ChipInput--Chip", + label: chip, + name: chip, + type: type, + disabled: disabled, + key: index, + className: "my-3 mx-2", + onClick: function onClick() { + return _onClick && _onClick(chip, index); + }, + onClose: function onClose() { + return onChipDeleteHandler(index); + } + }, rest)); + }); + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-ChipInput--Border", + className: ChipInputBorderClass + }, /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-ChipInput" + }, baseProps, { + className: ChipInputClass, + onClick: onClickHandler, + tabIndex: disabled ? -1 : 0 + }), /*#__PURE__*/React__namespace.createElement("div", { + className: "ChipInput-wrapper" + }, chips && chips.length > 0 && chipComponents, /*#__PURE__*/React__namespace.createElement("input", { + "data-test": "DesignSystem-ChipInput--Input", + ref: inputRef, + className: "ChipInput-input", + autoFocus: autoFocus, + placeholder: chips && chips.length > 0 ? '' : placeholder, + disabled: disabled, + value: inputValue, + onBlur: onBlur, + onFocus: onFocus, + onChange: onInputChangeHandler, + onKeyDown: onKeyDownHandler + })), chips.length > 0 && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-ChipInput--Icon", + name: "close", + appearance: disabled ? 'disabled' : 'subtle', + className: "ChipInput-icon", + onClick: onDeleteAllHandler, + tabIndex: disabled ? -1 : 0 + }))); + }; + ChipInput.displayName = 'ChipInput'; + ChipInput.defaultProps = { + chipOptions: {}, + defaultValue: [], + allowDuplicates: false, + autoFocus: false + }; + + var getTextAppearance = function getTextAppearance(isActive, disabled) { + return disabled ? 'disabled' : isActive ? 'link' : 'default'; + }; + var getIconAppearance = function getIconAppearance(isActive, disabled) { + return disabled ? 'disabled' : isActive ? 'primary_dark' : 'default'; + }; + var getPillsAppearance = function getPillsAppearance(isActive) { + return isActive ? 'primary' : 'secondary'; + }; + var getMenu = function getMenu(menus, active) { + for (var _i = 0, menus_1 = menus; _i < menus_1.length; _i++) { + var menu = menus_1[_i]; + + if (active.name && menu.name === active.name || active.link && menu.link === active.link) { + return menu; + } + + if (menu.subMenu) { + var activeMenu = menu.subMenu.find(function (submenu) { + return active.name && submenu.name === active.name || active.link && submenu.link === active.link; + }); + if (activeMenu) return activeMenu; + } + } + + return null; + }; + var getExpandedMenus = function getExpandedMenus(menus, active) { + var expandedMenus = {}; + var activeMenu = active ? getMenu(menus, active) : null; + + for (var _i = 0, menus_2 = menus; _i < menus_2.length; _i++) { + var menu = menus_2[_i]; + var isActiveOrExpanded = (activeMenu === null || activeMenu === void 0 ? void 0 : activeMenu.name.split('.')[0]) === menu.name || menu.expanded; + + if (menu.subMenu) { + expandedMenus[menu.name] = !!isActiveOrExpanded; + } + } + + return expandedMenus; + }; + var isMenuActive = function isMenuActive(menus, menu, active) { + if (active) { + var currActiveMenu = getMenu(menus, active); + return !!currActiveMenu && (currActiveMenu === menu || currActiveMenu.name.split('.')[0] === menu.name || currActiveMenu.name === menu.name || !!currActiveMenu.link && currActiveMenu.link === menu.link); + } + + return false; + }; + var getNavItemColor = function getNavItemColor(isActive, disabled) { + return disabled ? 'inverse-lightest' : isActive ? 'primary-dark' : 'inverse'; + }; + + var _MenuIcon = function MenuIcon(props) { + var isChildrenVisible = props.isChildrenVisible; + return /*#__PURE__*/React__namespace.createElement(Icon, { + className: "mx-4", + name: isChildrenVisible ? 'keyboard_arrow_up' : 'keyboard_arrow_down' + }); + }; + + var _MenuPills = function MenuPills(props) { + var _a; + + var disabled = props.disabled, + isActive = props.isActive, + count = props.count; + var PillsClass = classNames__default["default"]((_a = {}, _a['MenuItem-count'] = true, _a['MenuItem-count--disabled'] = disabled, _a)); + return /*#__PURE__*/React__namespace.createElement(Pills, { + subtle: disabled, + className: PillsClass, + appearance: getPillsAppearance(isActive), + "data-test": "DesignSystem-VerticalNav--Pills" + }, count); + }; + + var MenuItem$1 = function MenuItem(props) { + var _a; + + var menu = props.menu, + isActive = props.isActive, + expanded = props.expanded, + rounded = props.rounded, + hasSubmenu = props.hasSubmenu, + isChildren = props.isChildren, + isChildrenVisible = props.isChildrenVisible, + onClick = props.onClick, + customItemRenderer = props.customItemRenderer; + + var _b = React__namespace.useState(false), + isTextTruncated = _b[0], + setIsTextTruncated = _b[1]; + + var detectTruncation = Tooltip.useAutoTooltip().detectTruncation; + var contentRef = /*#__PURE__*/React__namespace.createRef(); + React__namespace.useEffect(function () { + var isTruncated = detectTruncation(contentRef); + setIsTextTruncated(isTruncated); + }, [contentRef]); + + var _MenuLabel = function MenuLabel(props) { + var label = props.label, + labelColor = props.labelColor; + return /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-VerticalNav--Text", + ref: contentRef, + color: labelColor, + className: "MenuItem-Text MenuItem--overflow " + (hasSubmenu || menu.count !== undefined ? '' : 'mr-5') + }, label); + }; + + var onClickHandler = function onClickHandler(ev) { + ev.preventDefault(); + if (onClick) onClick(menu); + }; + + var baseProps = __assign({ + onClick: onClickHandler, + href: menu.link, + tabIndex: 0 + }, extractBaseProps(props)); + + var itemColor = getNavItemColor(isActive, menu.disabled); + var ItemClass = classNames__default["default"]((_a = {}, _a['MenuItem'] = true, _a['MenuItem--vertical'] = true, _a['MenuItem--collapsed'] = !expanded, _a['MenuItem--expanded'] = expanded, _a['MenuItem--active'] = isActive, _a['MenuItem--disabled'] = menu.disabled, _a['MenuItem--subMenu'] = isChildren && expanded, _a['MenuItem--rounded'] = rounded && expanded, _a["color-" + itemColor] = true, _a)); + + var renderSubMenu = function renderSubMenu() { + if (hasSubmenu) { + return /*#__PURE__*/React__namespace.createElement(_MenuIcon, { + isChildrenVisible: isChildrenVisible + }); + } + + if (menu.count !== undefined) { + var count = menu.count > 99 ? '99+' : menu.count; + return /*#__PURE__*/React__namespace.createElement(_MenuPills, { + disabled: menu.disabled, + isActive: isActive, + count: count + }); + } + + return null; + }; + + if (!expanded && !menu.icon) return null; + + var customItemProps = __assign(__assign({}, props), { + contentRef: contentRef, + MenuIcon: function MenuIcon() { + return _MenuIcon({ + isChildrenVisible: isChildrenVisible + }); + }, + MenuLabel: function MenuLabel() { + return _MenuLabel({ + label: menu.label, + labelColor: itemColor + }); + }, + MenuPills: function MenuPills() { + return menu.count !== undefined ? _MenuPills({ + disabled: menu.disabled, + isActive: isActive, + count: menu.count + }) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null); + } + }); + + return customItemRenderer ? customItemRenderer(customItemProps) : /*#__PURE__*/React__namespace.createElement(Tooltip, { + showTooltip: expanded ? isTextTruncated : true, + tooltip: menu.label, + position: "right" + }, /*#__PURE__*/React__namespace.createElement(Link$1, __assign({ + componentType: "a", + className: ItemClass + }, baseProps), /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex align-items-center overflow-hidden" + }, menu.icon && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-VerticalNav--Icon", + className: expanded ? 'mr-4' : '', + name: menu.icon, + type: menu.iconType + }), expanded && /*#__PURE__*/React__namespace.createElement(_MenuLabel, { + label: menu.label, + labelColor: itemColor + })), expanded && renderSubMenu())); + }; + MenuItem$1.defaultProps = { + isActive: false + }; + + var VerticalNav = function VerticalNav(props) { + var _a; + + var menus = props.menus, + active = props.active, + onClick = props.onClick, + expanded = props.expanded, + rounded = props.rounded, + autoCollapse = props.autoCollapse, + className = props.className, + customItemRenderer = props.customItemRenderer; + + var _b = React__namespace.useState({}), + subMenuExpandedState = _b[0], + setSubMenuExpandedState = _b[1]; + + var _c = React__namespace.useState({}), + menuState = _c[0], + setMenuState = _c[1]; + + var baseProps = extractBaseProps(props); + React__namespace.useEffect(function () { + if (props.active) { + var currMenu = getMenu(menus, props.active); + if (currMenu) updateMenuState(currMenu, true); + } + }, [props.active]); + React__namespace.useEffect(function () { + var expandedMenus = getExpandedMenus(menus, active); + setSubMenuExpandedState(expandedMenus); + }, []); + + var updateMenuState = function updateMenuState(menu, val) { + var _a; + + var currMenu = getMenu(menus, menu); + + if (currMenu) { + var nameSplit = currMenu.name.split('.'); + + if (nameSplit.length > 1 || currMenu.subMenu) { + var name_1 = nameSplit[0]; + + if (autoCollapse) { + setMenuState((_a = {}, _a[name_1] = val || !menuState[name_1], _a)); + } else { + var menuData = __assign({}, menuState); + + menuData[name_1] = val !== undefined ? val : !menuData[name_1]; + setMenuState(menuData); + } + } else { + if (autoCollapse) { + if (!expanded) setMenuState({}); + } + } + } + }; + + var onClickHandler = function onClickHandler(menu) { + var _a, _b; + + if (menu.subMenu) { + if (!expanded) { + if (onClick) onClick(menu.subMenu[0]); + } else { + if (!subMenuExpandedState[menu.name]) { + updateMenuState(menu); + } + + setMenuState(__assign(__assign({}, menuState), (_a = {}, _a[menu.name] = false, _a))); + setSubMenuExpandedState(__assign(__assign({}, subMenuExpandedState), (_b = {}, _b[menu.name] = !subMenuExpandedState[menu.name], _b))); + } + } else { + if (onClick) onClick(menu); + } + }; + + var renderList = function renderList() { + var list = menus.map(function (menu, index) { + var _a; + + var isActive = !menuState[menu.name] && isMenuActive(menus, menu, active); + var hasSubmenu = menu.subMenu && menu.subMenu.length > 0; + var isChildrenVisible = hasSubmenu && (menuState[menu.name] || subMenuExpandedState[menu.name]); + var hasGroup = index === 0 || menus[index - 1].group !== menu.group; + var sectionClass = classNames__default["default"]((_a = {}, _a['VerticalNav-section'] = true, _a['VerticalNav-section--border'] = index !== 0, _a)); + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, { + key: index + }, hasGroup && menu.group && expanded && /*#__PURE__*/React__namespace.createElement("div", { + className: sectionClass + }, /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-VerticalNav--Section", + size: "small", + weight: "strong", + appearance: "subtle" + }, menu.group)), /*#__PURE__*/React__namespace.createElement(MenuItem$1, { + "data-test": "DesignSystem-VerticalNav--Item", + menu: menu, + expanded: expanded, + isActive: isActive, + hasSubmenu: hasSubmenu, + isChildren: false, + rounded: rounded, + isChildrenVisible: isChildrenVisible, + onClick: onClickHandler, + customItemRenderer: customItemRenderer + }), isChildrenVisible && menu.subMenu.map(function (subMenu, id) { + return /*#__PURE__*/React__namespace.createElement(MenuItem$1, { + key: id, + menu: subMenu, + expanded: expanded, + hasSubmenu: false, + isChildren: true, + rounded: rounded, + onClick: onClickHandler, + isActive: isMenuActive(menus, subMenu, active), + customItemRenderer: customItemRenderer + }); + })); + }); + return list; + }; + + var classes = classNames__default["default"]((_a = { + VerticalNav: true + }, _a['VerticalNav--expanded'] = expanded, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: classes + }), renderList()); + }; + VerticalNav.defaultProps = { + expanded: true, + autoCollapse: true, + rounded: false, + showTooltip: false + }; + + var HorizontalNav = function HorizontalNav(props) { + var _a; + + var menus = props.menus, + active = props.active, + onClick = props.onClick, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]((_a = {}, _a['HorizontalNav'] = true, _a), className); + + var onClickHandler = function onClickHandler(menu) { + return function () { + if (onClick) onClick(menu); + }; + }; + + var getPillsClass = function getPillsClass(disabled) { + var _a; + + return classNames__default["default"]((_a = {}, _a['HorizontalNav-pills'] = true, _a['HorizontalNav-pills--disabled'] = disabled, _a['HorizontalNav-animate'] = true, _a)); + }; + + var renderIcon = function renderIcon(menu, isActive) { + if (menu.count !== undefined) { + var count = menu.count > 99 ? '99+' : menu.count; + return /*#__PURE__*/React__namespace.createElement(Pills, { + subtle: menu.disabled, + className: getPillsClass(menu.disabled), + appearance: getPillsAppearance(isActive), + "data-test": "DesignSystem-HorizontalNav--Pills" + }, count); + } + + if (menu.icon) { + return /*#__PURE__*/React__namespace.createElement(Icon, { + className: "mr-3 HorizontalNav-animate", + name: menu.icon, + type: menu.iconType, + "data-test": "DesignSystem-HorizontalNav--Icon" + }); + } + + return null; + }; + + var onKeyDownHandler = function onKeyDownHandler(event, menu) { + if (event.key === 'Enter' && onClick) { + onClick(menu); + } + }; + + var list = menus.map(function (menu, index) { + var _a; + + var isActive = isMenuActive(menus, menu, active); + var itemColor = getNavItemColor(isActive, menu.disabled); + var menuClasses = classNames__default["default"]((_a = { + 'HorizontalNav-menu': true, + 'HorizontalNav-menu--default': !isActive && !menu.disabled + }, _a['HorizontalNav-menu--active'] = isActive, _a['HorizontalNav-menu--disabled'] = menu.disabled, _a["HorizontalNav-animate"] = true, _a["color-" + itemColor] = true, _a)); + return /*#__PURE__*/React__namespace.createElement("div", { + tabIndex: 0, + "data-test": "DesignSystem-HorizontalNav", + key: index, + className: menuClasses, + onClick: onClickHandler(menu), + onKeyDown: function onKeyDown(e) { + return onKeyDownHandler(e, menu); + }, + role: "button" + }, renderIcon(menu, isActive), /*#__PURE__*/React__namespace.createElement(Text, { + color: itemColor, + weight: "medium", + "data-test": "DesignSystem-HorizontalNav--Text", + className: "HorizontalNav-menuText HorizontalNav-animate" + }, menu.label)); + }); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: classes + }), list); + }; + + var tooltipPropsList = ['trigger', 'on', 'open', 'offset', 'onToggle', 'dark', 'customStyle', 'closeOnBackdropClick', 'hideOnReferenceEscape', 'closeOnScroll']; + var positionValue = { + bottom: 'bottom', + top: 'top', + 'top-start': 'top', + 'top-end': 'top', + 'bottom-start': 'bottom', + 'bottom-end': 'bottom', + left: 'left', + right: 'right' + }; + var detectTruncation = function detectTruncation(boundaryRef) { + var element = boundaryRef === null || boundaryRef === void 0 ? void 0 : boundaryRef.current; + var isTruncated = element ? element.scrollWidth > element.clientWidth : false; + return isTruncated; + }; + var Tooltip = function Tooltip(props) { + var children = props.children, + tooltip = props.tooltip, + showTooltip = props.showTooltip, + showOnTruncation = props.showOnTruncation, + elementRef = props.elementRef, + rest = __rest(props, ["children", "tooltip", "showTooltip", "showOnTruncation", "elementRef"]); + + var childrenRef = React__namespace.useRef(null); + + var _a = React__namespace.useState(false), + isTruncated = _a[0], + setIsTruncated = _a[1]; + + React__namespace.useEffect(function () { + var element = elementRef ? elementRef : childrenRef; + setIsTruncated(detectTruncation(element)); + }, [childrenRef, elementRef, children]); + var renderChildren = elementRef || ! /*#__PURE__*/React__namespace.isValidElement(children) ? children : /*#__PURE__*/React__namespace.cloneElement(children, { + ref: childrenRef + }); + + if (!showTooltip) { + return children; + } + + var tooltipWrapper = /*#__PURE__*/React__namespace.createElement("div", { + className: "Tooltip" + }, /*#__PURE__*/React__namespace.createElement(Text, { + className: "Tooltip-text", + appearance: "white" + }, tooltip)); + + if (showOnTruncation) { + return isTruncated ? /*#__PURE__*/React__namespace.createElement(Popover, __assign({ + trigger: renderChildren, + on: 'hover', + offset: 'medium' + }, rest, { + animationClass: { + open: "Tooltip-animation-open-" + positionValue[props.position], + close: "Tooltip-animation-close-" + positionValue[props.position] + }, + className: "Tooltip-container" + }), tooltipWrapper) : renderChildren; + } + + return /*#__PURE__*/React__namespace.createElement(Popover, __assign({ + trigger: children, + on: 'hover', + offset: 'medium' + }, rest, { + animationClass: { + open: "Tooltip-animation-open-" + positionValue[props.position], + close: "Tooltip-animation-close-" + positionValue[props.position] + }, + className: "Tooltip-container" + }), tooltipWrapper); + }; + + Tooltip.useAutoTooltip = function () { + return { + detectTruncation: detectTruncation + }; + }; + + Tooltip.defaultProps = Object.assign({}, filterProps(Popover.defaultProps, tooltipPropsList), { + hoverable: false, + showTooltip: true, + showOnTruncation: false + }); + + var Dialog = function Dialog(props) { + var dimension = props.dimension, + primaryButtonAppearance = props.primaryButtonAppearance, + secondaryButtonAppearance = props.secondaryButtonAppearance, + open = props.open, + onClose = props.onClose, + heading = props.heading, + title = props.title, + description = props.description, + primaryButtonLabel = props.primaryButtonLabel, + primaryButtonCallback = props.primaryButtonCallback, + secondaryButtonLabel = props.secondaryButtonLabel, + secondaryButtonCallback = props.secondaryButtonCallback; + var baseProps = extractBaseProps(props); + return /*#__PURE__*/React__namespace.createElement(Modal, __assign({ + "data-test": "DesignSystem-Dialog" + }, baseProps, { + open: open, + dimension: dimension, + onClose: onClose, + headerOptions: { + heading: heading + }, + footer: /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Button, { + type: "button", + "data-test": "DesignSystem-Dialog--SecondaryButton", + appearance: secondaryButtonAppearance, + onClick: secondaryButtonCallback + }, secondaryButtonLabel), /*#__PURE__*/React__namespace.createElement(Button, { + type: "button", + className: "ml-4", + "data-test": "DesignSystem-Dialog--PrimaryButton", + appearance: primaryButtonAppearance, + onClick: primaryButtonCallback + }, primaryButtonLabel)) + }), /*#__PURE__*/React__namespace.createElement(ModalDescription, { + title: title, + description: description + })); + }; + + Dialog.displayName = 'Dialog'; + Dialog.defaultProps = { + dimension: 'small', + primaryButtonAppearance: 'primary', + secondaryButtonAppearance: 'basic' + }; + + var OverlayFooter = function OverlayFooter(props) { + var open = props.open, + className = props.className, + children = props.children, + actions = props.actions; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]({ + OverlayFooter: true + }, className); + var wrapperRef = /*#__PURE__*/React__namespace.createRef(); + React__namespace.useEffect(function () { + var _a; + + if (open) { + if (wrapperRef.current) { + var secondaryBtns = (_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('.Button--basic'); + var secondaryBtn_1 = secondaryBtns[secondaryBtns.length - 1]; + + if (secondaryBtn_1) { + window.requestAnimationFrame(function () { + return secondaryBtn_1.focus({ + preventScroll: true + }); + }); + } + } + } + }, [open]); + + if (actions) { + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + ref: wrapperRef + }, baseProps, { + className: classes + }), actions.map(function (_a, index) { + _a.label; + var options = __rest(_a, ["label"]); + + return /*#__PURE__*/React__namespace.createElement(Button, __assign({ + type: "button" + }, options, { + key: index + })); + })); + } + + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-OverlayFooter", + ref: wrapperRef + }, baseProps, { + className: classes + }), children); + }; + OverlayFooter.displayName = 'OverlayFooter'; + + var OverlayHeader = function OverlayHeader(props) { + var _a, _b; + + var className = props.className, + heading = props.heading, + subHeading = props.subHeading, + backButton = props.backButton, + backIcon = props.backIcon, + backIconCallback = props.backIconCallback, + backButtonCallback = props.backButtonCallback, + headingClass = props.headingClass; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]((_a = { + OverlayHeader: true + }, _a['OverlayHeader--withBackButton'] = backButton || backIcon, _a), className); + var subheadingClass = classNames__default["default"]((_b = {}, _b['OverlayHeader-subheading'] = true, _b['OverlayHeader-subheading--withBackButton'] = backButton || backIcon, _b)); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-OverlayHeader" + }, baseProps, { + className: classes + }), /*#__PURE__*/React__namespace.createElement("div", { + className: "OverlayHeader-headerWrapper" + }, (backButton || backIcon) && /*#__PURE__*/React__namespace.createElement(Button, { + "data-test": "DesignSystem-OverlayHeader--Button", + appearance: "transparent", + className: "mr-4", + icon: "arrow_back", + largeIcon: true, + onClick: backButtonCallback || backIconCallback + }), heading && /*#__PURE__*/React__namespace.createElement(Heading, { + className: headingClass, + "data-test": "DesignSystem-OverlayHeader--heading" + }, heading)), subHeading && /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-OverlayHeader--Subheading", + appearance: "subtle", + className: subheadingClass + }, subHeading)); + }; + OverlayHeader.displayName = 'OverlayHeader'; + + var OverlayBody = function OverlayBody(props) { + var children = props.children, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]({ + OverlayBody: true + }, className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-OverlayBody" + }, baseProps, { + className: classes + }), children); + }; + OverlayBody.defaultProps = { + stickFooter: true, + withFooter: true + }; + OverlayBody.displayName = 'OverlayBody'; + + var getWrapperElement = function getWrapperElement() { + var element = document.querySelector('.Overlay-wrapper'); + + if (element === null) { + element = document.createElement('div'); + element.classList.add('Overlay-wrapper'); + document.body.appendChild(element); + } + + return element; + }; + var getUpdatedZIndex = function getUpdatedZIndex(ele) { + var containerClassName = ele.containerClassName, + elementRef = ele.elementRef, + element = ele.element; + if (element === null) return; + var elements = element.querySelectorAll(containerClassName); + if (elements.length < 1) return; + var siblings = Array.from(elements).filter(function (el) { + return el !== elementRef.current; + }); + var zIndex = -1; + siblings.forEach(function (element) { + var prevZIndex = parseInt(window.getComputedStyle(element).zIndex || '0', 10); + zIndex = Math.max(zIndex, prevZIndex + 10); + }); + return zIndex > 0 ? zIndex : undefined; + }; + var closeOnEscapeKeypress = function closeOnEscapeKeypress(event, isTopOverlay, onClose) { + if (event.key === 'Escape' && isTopOverlay) { + onClose(event); + event.preventDefault(); + } + }; + + var OverlayManager = function () { + function OverlayManager() { + this.overlays = []; + } + + OverlayManager.prototype.add = function (overlay) { + if (overlay === null) return; + var overlayIdx = this.overlays.indexOf(overlay); + + if (overlayIdx !== -1) { + return overlayIdx; + } + + overlayIdx = this.overlays.length; + this.overlays.push(overlay); + return overlayIdx; + }; + + OverlayManager.prototype.remove = function (overlay) { + if (overlay === null) return; + var overlayIdx = this.overlays.indexOf(overlay); + + if (overlayIdx === -1) { + return; + } + + this.overlays.splice(overlayIdx, 1); + }; + + OverlayManager.prototype.isTopOverlay = function (overlay) { + if (overlay === null) return; + return !!this.overlays.length && this.overlays[this.overlays.length - 1] === overlay; + }; + + return OverlayManager; + }(); + + var instance = new OverlayManager(); + Object.freeze(instance); + + var Modal = function (_super) { + __extends(Modal, _super); + + function Modal(props) { + var _this = _super.call(this, props) || this; + + _this.modalRef = /*#__PURE__*/React__namespace.createRef(); + + _this.onCloseHandler = function (event) { + var isTopOverlay = instance.isTopOverlay(_this.modalRef.current); + closeOnEscapeKeypress(event, isTopOverlay, _this.onOutsideClickHandler); + }; + + _this.element = getWrapperElement(); + _this.state = { + open: props.open, + animate: props.open + }; + _this.onOutsideClickHandler = _this.onOutsideClickHandler.bind(_this); + return _this; + } + + Modal.prototype.componentDidMount = function () { + if (this.props.closeOnEscape) { + if (this.state.open) { + instance.add(this.modalRef.current); + } + + document.addEventListener('keydown', this.onCloseHandler); + } + + if (this.props.backdropClose) { + if (this.state.open) { + instance.add(this.modalRef.current); + } + } + + var zIndex = getUpdatedZIndex({ + element: this.element, + containerClassName: '.Overlay-container', + elementRef: this.modalRef + }); + this.setState({ + zIndex: zIndex + }); + }; + + Modal.prototype.componentWillUnmount = function () { + if (this.props.closeOnEscape) { + document.removeEventListener('keydown', this.onCloseHandler); + } + }; + + Modal.prototype.componentDidUpdate = function (prevProps) { + var _this = this; + + if (prevProps.open !== this.props.open) { + if (this.props.open) { + var zIndex = getUpdatedZIndex({ + element: this.element, + containerClassName: '.Overlay-container--open', + elementRef: this.modalRef + }); + this.setState({ + zIndex: zIndex, + open: true, + animate: true + }); + if (this.props.closeOnEscape || this.props.backdropClose) instance.add(this.modalRef.current); + } else { + this.setState({ + animate: false + }, function () { + window.setTimeout(function () { + _this.setState({ + open: false + }); + }, 120); + }); + if (this.props.closeOnEscape || this.props.backdropClose) instance.remove(this.modalRef.current); + } + } + }; + + Modal.prototype.onOutsideClickHandler = function (event) { + var _a = this.props, + closeOnEscape = _a.closeOnEscape, + backdropClose = _a.backdropClose, + onClose = _a.onClose; + var open = this.state.open; + + if (open && instance.isTopOverlay(this.modalRef.current)) { + if (closeOnEscape || backdropClose) instance.remove(this.modalRef.current); + if (onClose) onClose(event, 'OutsideClick');else if (typeof backdropClose === 'function') backdropClose(event, 'OutsideClick'); + } + }; + + Modal.prototype.render = function () { + var _a, _b, _c, _d; + + var _e = this.state, + animate = _e.animate, + open = _e.open, + zIndex = _e.zIndex; + var _f = this.props, + className = _f.className, + backdropClose = _f.backdropClose, + dimension = _f.dimension, + children = _f.children, + headerOptions = _f.headerOptions, + header = _f.header, + footerOptions = _f.footerOptions, + seperator = _f.seperator, + footer = _f.footer, + onClose = _f.onClose; + var BackdropZIndex = zIndex ? zIndex - 1 : 1000; + var classes = classNames__default["default"]({ + Modal: true, + 'Modal--open': open, + 'Modal-animation--open': animate, + 'Modal-animation--close': !animate + }, className); + var headerClass = classNames__default["default"]((_a = {}, _a['Modal-header'] = true, _a['Modal-header--withSeperator'] = seperator, _a)); + var footerClass = classNames__default["default"]((_b = {}, _b['Modal-footer'] = true, _b['Modal-footer--withSeperator'] = seperator, _b)); + var ContainerClass = classNames__default["default"]((_c = {}, _c['Row'] = true, _c['Overlay-container'] = true, _c['Overlay-container--open'] = open, _c)); + var isAPINew = headerOptions || footerOptions || footer || header; + var bodyClass = classNames__default["default"]((_d = {}, _d['Modal-body'] = true, _d['Modal-body--withMargin'] = isAPINew ? !!footer : true, _d['Modal-body--withPadding'] = isAPINew ? !footer : true, _d)); + var baseProps = extractBaseProps(this.props); + var sizeMap = { + small: { + size: '3', + sizeL: '4', + sizeM: '4', + sizeXS: '10' + }, + medium: { + size: '4', + sizeL: '6', + sizeM: '6', + sizeXS: '10' + }, + large: { + size: '6', + sizeL: '8', + sizeM: '8', + sizeXS: '10' + } + }; + var ModalContainer = /*#__PURE__*/React__namespace.createElement(Row, { + "data-test": "DesignSystem-ModalContainer", + className: ContainerClass, + "data-layer": true, + "data-opened": open, + style: { + zIndex: zIndex ? zIndex : 1001 + } + }, /*#__PURE__*/React__namespace.createElement(Column, __assign({ + "data-test": "DesignSystem-Modal" + }, baseProps, { + className: classes + }, sizeMap[dimension], { + ref: this.modalRef + }), (headerOptions || header) && /*#__PURE__*/React__namespace.createElement("div", { + className: headerClass + }, /*#__PURE__*/React__namespace.createElement(Column, null, !header && /*#__PURE__*/React__namespace.createElement(OverlayHeader, __assign({ + "data-test": "DesignSystem-Modal--header" + }, headerOptions)), !!header && header), /*#__PURE__*/React__namespace.createElement(Column, { + className: "flex-grow-0" + }, /*#__PURE__*/React__namespace.createElement(Tooltip, { + tooltip: "Close", + position: "bottom" + }, /*#__PURE__*/React__namespace.createElement(Button, { + icon: "close", + appearance: "transparent", + "data-test": "DesignSystem-Modal--CloseButton", + onClick: function onClick(event) { + if (onClose) onClose(event, 'IconClick'); + } + })))), open && children && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, headerOptions || footerOptions || footer || header ? /*#__PURE__*/React__namespace.createElement(OverlayBody, { + className: bodyClass + }, this.props.children) : children), (!!footer || !!footerOptions) && /*#__PURE__*/React__namespace.createElement(OverlayFooter, __assign({ + "data-test": "DesignSystem-Modal--footer" + }, footerOptions, { + open: open, + className: footerClass + }), footer))); + var ModalWrapper = backdropClose ? /*#__PURE__*/React__namespace.createElement(OutsideClick, { + ref: this.modalRef, + "data-test": "DesignSystem-Modal--OutsideClick", + onOutsideClick: this.onOutsideClickHandler + }, ModalContainer) : ModalContainer; + var WrapperElement = /*#__PURE__*/ReactDOM__namespace.createPortal(ModalWrapper, this.element); + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, WrapperElement, /*#__PURE__*/React__namespace.createElement(Backdrop, { + open: this.state.animate, + zIndex: BackdropZIndex + })); + }; + + Modal.defaultProps = { + dimension: 'medium' + }; + return Modal; + }(React__namespace.Component); + + var ModalHeader = function ModalHeader(props) { + var _a; + + var className = props.className, + heading = props.heading, + subHeading = props.subHeading, + onClose = props.onClose, + seperator = props.seperator, + backIcon = props.backIcon, + backIconCallback = props.backIconCallback; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]((_a = { + 'Modal-header': true + }, _a['Modal-header--withSeperator'] = seperator, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: classes + }), /*#__PURE__*/React__namespace.createElement(Column, null, /*#__PURE__*/React__namespace.createElement(OverlayHeader, { + heading: heading, + subHeading: subHeading, + backButton: backIcon, + backButtonCallback: backIconCallback + })), /*#__PURE__*/React__namespace.createElement(Column, { + className: "flex-grow-0" + }, /*#__PURE__*/React__namespace.createElement(Button, { + icon: "close", + appearance: "transparent", + "data-test": "DesignSystem-Modal--CloseButton", + onClick: function onClick(event) { + if (onClose) onClose(event, 'IconClick'); + } + }))); + }; + ModalHeader.displayName = 'ModalHeader'; + + var ModalBody = function ModalBody(props) { + var children = props.children, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]({ + 'Modal-body': true, + 'Modal-body--withMargin': true + }, className); + return /*#__PURE__*/React__namespace.createElement(OverlayBody, __assign({}, baseProps, { + stickFooter: true, + className: classes + }), children); + }; + ModalBody.defaultProps = { + stickFooter: true, + withFooter: true + }; + ModalBody.displayName = 'ModalBody'; + + var ModalFooter = function ModalFooter(props) { + var _a; + + var open = props.open, + children = props.children, + className = props.className, + seperator = props.seperator; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]((_a = {}, _a['Modal-footer'] = true, _a['Modal-footer--withSeperator'] = seperator, _a), className); + return /*#__PURE__*/React__namespace.createElement(OverlayFooter, __assign({}, baseProps, { + open: open, + className: classes + }), children); + }; + ModalFooter.displayName = 'ModalFooter'; + + var FullscreenModal = function (_super) { + __extends(FullscreenModal, _super); + + function FullscreenModal(props) { + var _this = _super.call(this, props) || this; + + _this.modalRef = /*#__PURE__*/React__namespace.createRef(); + + _this.onOutsideClickHandler = function (event) { + instance.remove(_this.modalRef.current); + + if (_this.props.onClose) { + _this.props.onClose(event, 'EscapePress'); + } else { + _this.setState({ + animate: false + }, function () { + window.setTimeout(function () { + _this.setState({ + open: false + }); + }, 120); + }); + } + }; + + _this.onCloseHandler = function (event) { + var isTopOverlay = instance.isTopOverlay(_this.modalRef.current); + closeOnEscapeKeypress(event, isTopOverlay, _this.onOutsideClickHandler); + }; + + _this.element = getWrapperElement(); + _this.state = { + open: props.open, + animate: props.open + }; + return _this; + } + + FullscreenModal.prototype.componentDidMount = function () { + if (this.props.closeOnEscape) { + if (this.state.open) { + instance.add(this.modalRef.current); + } + + document.addEventListener('keydown', this.onCloseHandler); + } + }; + + FullscreenModal.prototype.componentWillUnmount = function () { + if (this.props.closeOnEscape) document.removeEventListener('keydown', this.onCloseHandler); + }; + + FullscreenModal.prototype.componentDidUpdate = function (prevProps) { + var _this = this; + + if (prevProps.open !== this.props.open) { + if (this.props.open) { + var zIndex = getUpdatedZIndex({ + element: this.element, + containerClassName: '.Overlay-container--open', + elementRef: this.modalRef + }); + this.setState({ + zIndex: zIndex, + open: true, + animate: true + }); + if (this.props.closeOnEscape) instance.add(this.modalRef.current); + } else { + this.setState({ + animate: false + }, function () { + window.setTimeout(function () { + _this.setState({ + open: false + }); + }, 120); + }); + if (this.props.closeOnEscape) instance.remove(this.modalRef.current); + } + } + }; + + FullscreenModal.prototype.render = function () { + var _a; + + var _b = this.state, + animate = _b.animate, + open = _b.open, + zIndex = _b.zIndex; + var _c = this.props, + className = _c.className, + dimension = _c.dimension, + children = _c.children, + header = _c.header, + headerOptions = _c.headerOptions, + footer = _c.footer, + footerOptions = _c.footerOptions, + onClose = _c.onClose; + var classes = classNames__default["default"]({ + FullscreenModal: true, + 'FullscreenModal-animation--open': animate, + 'FullscreenModal-animation--close': !animate + }, className); + var ContainerClass = classNames__default["default"]((_a = {}, _a['Overlay-container'] = true, _a['Overlay-container--open'] = open, _a)); + var baseProps = extractBaseProps(this.props); + var sizeMap = { + medium: { + size: '4', + sizeL: '6', + sizeM: '6', + sizeXS: '12' + }, + large: { + size: '6', + sizeL: '8', + sizeM: '8', + sizeXS: '12' + } + }; + var ModalContainer = open ? /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-FullscreenModalContainer", + className: ContainerClass, + "data-layer": true, + style: { + zIndex: zIndex + } + }, /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-FullscreenModal" + }, baseProps, { + className: classes, + ref: this.modalRef + }), /*#__PURE__*/React__namespace.createElement(Row, { + className: "justify-content-center" + }, /*#__PURE__*/React__namespace.createElement(Column, __assign({}, sizeMap[dimension]), /*#__PURE__*/React__namespace.createElement(Row, { + className: "FullscreenModal-header" + }, /*#__PURE__*/React__namespace.createElement(Column, null, !header && /*#__PURE__*/React__namespace.createElement(OverlayHeader, __assign({ + "data-test": "DesignSystem-FullscreenModal--header" + }, headerOptions)), !!header && header), /*#__PURE__*/React__namespace.createElement(Column, { + className: "flex-grow-0" + }, /*#__PURE__*/React__namespace.createElement(Tooltip, { + tooltip: "Close" + }, /*#__PURE__*/React__namespace.createElement(Button, { + icon: "close", + appearance: "transparent", + "data-test": "DesignSystem-FullscreenModal--CloseButton", + onClick: function onClick(event) { + if (onClose) onClose(event, 'IconClick'); + } + })))), /*#__PURE__*/React__namespace.createElement(OverlayBody, { + "data-test": "DesignSystem-FullscreenModal--Body", + className: "FullscreenModal-body" + }, children), (!!footer || !!footerOptions) && /*#__PURE__*/React__namespace.createElement(OverlayFooter, __assign({ + "data-test": "DesignSystem-FullscreenModal--footer" + }, footerOptions, { + open: open, + className: "FullscreenModal-footer" + }), footer))))) : null; + var WrapperElement = /*#__PURE__*/ReactDOM__namespace.createPortal(ModalContainer, this.element); + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, WrapperElement); + }; + + FullscreenModal.defaultProps = { + dimension: 'medium' + }; + return FullscreenModal; + }(React__namespace.Component); + + var sidesheetWidth = { + regular: '6', + large: '10' + }; + + var Sidesheet = function (_super) { + __extends(Sidesheet, _super); + + function Sidesheet(props) { + var _this = _super.call(this, props) || this; + + _this.sidesheetRef = /*#__PURE__*/React__namespace.createRef(); + + _this.onCloseHandler = function (event) { + var isTopOverlay = instance.isTopOverlay(_this.sidesheetRef.current); + closeOnEscapeKeypress(event, isTopOverlay, _this.onOutsideClickHandler); + }; + + _this.element = getWrapperElement(); + _this.state = { + open: props.open, + animate: props.open + }; + _this.onOutsideClickHandler = _this.onOutsideClickHandler.bind(_this); + return _this; + } + + Sidesheet.prototype.componentDidMount = function () { + if (this.props.closeOnEscape) { + if (this.state.open) { + instance.add(this.sidesheetRef.current); + } + + document.addEventListener('keydown', this.onCloseHandler); + } + + if (this.props.backdropClose && this.state.open) { + instance.add(this.sidesheetRef.current); + } + + var zIndex = getUpdatedZIndex({ + element: this.element, + containerClassName: '.Overlay-container', + elementRef: this.sidesheetRef + }); + this.setState({ + zIndex: zIndex + }); + }; + + Sidesheet.prototype.componentWillUnmount = function () { + if (this.props.closeOnEscape) { + document.removeEventListener('keydown', this.onCloseHandler); + } + }; + + Sidesheet.prototype.componentDidUpdate = function (prevProps) { + if (prevProps.open !== this.props.open) { + if (this.props.open) { + var zIndex = getUpdatedZIndex({ + element: this.element, + containerClassName: '.Overlay-container--open', + elementRef: this.sidesheetRef + }); + this.setState({ + zIndex: zIndex, + open: true, + animate: true + }); + if (this.props.closeOnEscape || this.props.backdropClose) instance.add(this.sidesheetRef.current); + } else { + this.setState({ + animate: false + }); + if (this.props.closeOnEscape || this.props.backdropClose) instance.remove(this.sidesheetRef.current); + } + } + }; + + Sidesheet.prototype.onOutsideClickHandler = function (event) { + var _a = this.props, + backdropClose = _a.backdropClose, + closeOnEscape = _a.closeOnEscape, + onClose = _a.onClose; + var open = this.state.open; + + if (open && instance.isTopOverlay(this.sidesheetRef.current)) { + if (backdropClose || closeOnEscape) instance.remove(this.sidesheetRef.current); + if (onClose) onClose(event, 'OutsideClick'); + } + }; + + Sidesheet.prototype.handleAnimationEnd = function () { + if (!this.state.animate) { + this.setState({ + open: false + }); + } + }; + + Sidesheet.prototype.render = function () { + var _a, _b, _c, _d, _e; + + var _this = this; + + var _f = this.state, + animate = _f.animate, + open = _f.open, + zIndex = _f.zIndex; + var _g = this.props, + className = _g.className, + backdropClose = _g.backdropClose, + dimension = _g.dimension, + footer = _g.footer, + seperator = _g.seperator, + stickFooter = _g.stickFooter, + headerOptions = _g.headerOptions, + footerOptions = _g.footerOptions, + header = _g.header, + onClose = _g.onClose; + var BackdropZIndex = zIndex ? zIndex - 1 : 1000; + var classes = classNames__default["default"]({ + Sidesheet: true, + 'Sidesheet--open': open, + 'Sidesheet-animation--open': animate, + 'Sidesheet-animation--close': !animate + }, className); + var ContainerClass = classNames__default["default"]((_a = {}, _a['Overlay-container'] = true, _a['fade-in'] = animate, _a['Overlay-container--open'] = animate, _a['Overlay-container--close'] = !animate, _a)); + var headerClass = classNames__default["default"]((_b = {}, _b['Sidesheet-header'] = true, _b['Sidesheet-header--withSeperator'] = seperator, _b)); + var footerClass = classNames__default["default"]((_c = {}, _c['Sidesheet-footer'] = true, _c['Sidesheet-footer--withSeperator'] = seperator, _c['Sidesheet-footer--stickToBottom'] = stickFooter, _c)); + var bodyClass = classNames__default["default"]((_d = {}, _d['Sidesheet-body'] = true, _d['Sidesheet-body--withMargin'] = !!footer && stickFooter, _d['Sidesheet-body--nextPage'] = (headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backButton) || (headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backIcon), _d['Sidesheet-body--firstPage'] = !(headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backButton) && !(headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backIcon), _d)); + var headingClass = classNames__default["default"]((_e = {}, _e['Sidesheet-header--shiftRight'] = (headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backButton) || (headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backIcon), _e['Sidesheet-header--shiftLeft'] = !(headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backButton) && !(headerOptions === null || headerOptions === void 0 ? void 0 : headerOptions.backIcon), _e)); + var baseProps = extractBaseProps(this.props); + var SidesheetContainer = /*#__PURE__*/React__namespace.createElement(Row, { + "data-test": "DesignSystem-SidesheetContainer", + "data-open": this.state.open, + className: ContainerClass, + "data-layer": true, + style: { + zIndex: zIndex ? zIndex : 1001 + }, + ref: this.sidesheetRef, + onAnimationEnd: function onAnimationEnd() { + return _this.handleAnimationEnd; + } + }, /*#__PURE__*/React__namespace.createElement(Column, __assign({ + "data-test": "DesignSystem-Sidesheet" + }, baseProps, { + className: classes, + size: sidesheetWidth[dimension] + }), /*#__PURE__*/React__namespace.createElement("div", { + className: headerClass + }, /*#__PURE__*/React__namespace.createElement(Column, { + "data-test": "DesignSystem-Sidesheet--Header" + }, !header && /*#__PURE__*/React__namespace.createElement(OverlayHeader, __assign({ + headingClass: headingClass + }, headerOptions)), !!header && header), /*#__PURE__*/React__namespace.createElement(Column, { + className: "flex-grow-0" + }, /*#__PURE__*/React__namespace.createElement(Tooltip, { + tooltip: "Close" + }, /*#__PURE__*/React__namespace.createElement(Button, { + icon: "close", + appearance: "transparent", + "data-test": "DesignSystem-Sidesheet--CloseButton", + largeIcon: true, + onClick: function onClick(event) { + if (onClose) onClose(event, 'IconClick'); + } + })))), /*#__PURE__*/React__namespace.createElement(OverlayBody, { + "data-test": "DesignSystem-Sidesheet--OverlayBody", + className: bodyClass + }, this.props.children), (!!footer || !!footerOptions) && /*#__PURE__*/React__namespace.createElement(OverlayFooter, __assign({ + "data-test": "DesignSystem-Sidesheet--Footer" + }, footerOptions, { + open: open, + className: footerClass + }), footer))); + var SidesheetWrapper = backdropClose ? /*#__PURE__*/React__namespace.createElement(OutsideClick, { + ref: this.sidesheetRef, + "data-test": "DesignSystem-Sidesheet--OutsideClick", + onOutsideClick: this.onOutsideClickHandler + }, SidesheetContainer) : SidesheetContainer; + var WrapperElement = /*#__PURE__*/ReactDOM__namespace.createPortal(SidesheetWrapper, this.element); + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, WrapperElement, /*#__PURE__*/React__namespace.createElement(Backdrop, { + open: this.state.animate, + zIndex: BackdropZIndex + })); + }; + + Sidesheet.defaultProps = { + dimension: 'regular', + stickFooter: false, + headerOptions: {} + }; + return Sidesheet; + }(React__namespace.Component); + + var Collapsible = function Collapsible(props) { + var _a, _b, _c, _d; + + var expanded = props.expanded, + hoverable = props.hoverable, + expandedWidth = props.expandedWidth, + height = props.height, + children = props.children, + className = props.className, + onToggle = props.onToggle, + withTrigger = props.withTrigger; + + var _e = React__namespace.useState(true), + isClicked = _e[0], + setIsClicked = _e[1]; + + var _f = React__namespace.useState(false), + seperator = _f[0], + setSeperator = _f[1]; + + var ref = /*#__PURE__*/React__namespace.createRef(); + var baseProps = extractBaseProps(props); + React__namespace.useEffect(function () { + if (ref.current) { + setSeperator(ref.current.scrollHeight > ref.current.clientHeight); + } + }); + var WrapperClass = classNames__default["default"]((_a = {}, _a['Collapsible-wrapper'] = true, _a['Collapsible-wrapper--overlay'] = !isClicked, _a)); + var BodyClass = classNames__default["default"]((_b = {}, _b['Collapsible-body'] = true, _b['overflow-hidden'] = !expanded && hoverable, _b)); + var classes = classNames__default["default"]((_c = { + Collapsible: true + }, _c['Collapsible--overlay'] = !isClicked, _c['Collapsible--shadow'] = !isClicked && expanded, _c), className); + var FooterClass = classNames__default["default"]((_d = {}, _d['Collapsible-footer'] = true, _d['Collapsible-footer--seperator'] = seperator, _d)); + + var onToggleHandler = function onToggleHandler(newExpanded, type) { + return function () { + if (onToggle) { + if (type === 'mouseenter' || type === 'mouseleave') { + if (isClicked && expanded || !hoverable) return; + setIsClicked(false); + } + + if (type === 'click') { + setIsClicked(true); + } + + onToggle(newExpanded); + } + }; + }; + + var width = expanded ? expandedWidth : undefined; + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-CollapsibleWrapper", + className: WrapperClass, + style: { + height: height + } + }, /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-Collapsible" + }, baseProps, { + "data-layer": true, + className: classes, + style: { + width: width + } + }), /*#__PURE__*/React__namespace.createElement("div", { + className: BodyClass, + "data-test": "DesignSystem-CollapsibleBody", + onMouseEnter: onToggleHandler(true, 'mouseenter'), + onMouseLeave: onToggleHandler(false, 'mouseleave'), + ref: ref + }, children), withTrigger && /*#__PURE__*/React__namespace.createElement("div", { + role: "button", + tabIndex: 0, + className: FooterClass, + "data-test": "DesignSystem-Collapsible--Footer", + onClick: onToggleHandler(!expanded, 'click'), + onKeyDown: onToggleHandler(!expanded, 'click') + }, /*#__PURE__*/React__namespace.createElement(Icon, { + name: expanded ? 'keyboard_arrow_left' : 'keyboard_arrow_right', + "data-test": "DesignSystem-Collapsible--FooterIcon", + className: "px-6 py-4 my-2 cursor-pointer", + size: 16 + })))); + }; + Collapsible.displayName = 'Collapsible'; + Collapsible.defaultProps = { + expanded: false, + hoverable: true, + height: '100%', + expandedWidth: '240px', + withTrigger: true + }; + + var Status$1 = function Status(props) { + var _a, _b; + + var type = props.type, + time = props.time, + className = props.className, + _c = props.readText, + readText = _c === void 0 ? 'Read' : _c, + _d = props.failedText, + failedText = _d === void 0 ? 'Click to retry' : _d, + _e = props.sendingText, + sendingText = _e === void 0 ? 'Sending..' : _e; + var baseProps = extractBaseProps(props); + var StatusClass = classNames__default["default"]((_a = {}, _a['d-flex align-items-center mt-3'] = true, _a), className); + var TextClass = classNames__default["default"]((_b = {}, _b['ChatMessage-status'] = true, _b), className); + + var getTime = function getTime(t) { + if (typeof t === 'number') { + var d = new Date(t); + var hours = d.getHours(); + var minutes = d.getMinutes(); + var AMPM = hours < 12 ? 'AM' : 'PM'; + var hrs = hours % 12 || 12; + return hrs + ":" + minutes + " " + AMPM; + } + + return t; + }; + + switch (type) { + case 'failed': + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: StatusClass + }), /*#__PURE__*/React__namespace.createElement(Icon, { + name: "error", + type: "outlined", + appearance: "destructive" + }), /*#__PURE__*/React__namespace.createElement(Text, { + appearance: "destructive", + size: "small", + className: "ml-1" + }, "Failed"), /*#__PURE__*/React__namespace.createElement(MetaList, { + list: [{ + label: failedText + }], + seperator: true + })); + + case 'urgent': + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: StatusClass + }), /*#__PURE__*/React__namespace.createElement(Icon, { + name: "notification_important", + type: "outlined", + appearance: "destructive" + }), /*#__PURE__*/React__namespace.createElement(Text, { + appearance: "destructive", + size: "small", + className: "ml-1" + }, "Urgent"), time && /*#__PURE__*/React__namespace.createElement(MetaList, { + list: [{ + label: getTime(time) + }], + seperator: true + })); + + case 'read': + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: StatusClass + }), time && /*#__PURE__*/React__namespace.createElement(Text, { + appearance: "subtle", + size: "small" + }, getTime(time)), /*#__PURE__*/React__namespace.createElement(MetaList, { + list: [{ + label: readText + }], + seperator: true + })); + + case 'sending': + return /*#__PURE__*/React__namespace.createElement(Text, __assign({}, baseProps, { + appearance: "subtle", + size: "small", + className: TextClass + }), sendingText); + + case 'sent': + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, time && /*#__PURE__*/React__namespace.createElement(Text, __assign({}, baseProps, { + appearance: "subtle", + size: "small", + className: TextClass + }), getTime(time))); + + default: + return null; + } + }; + Status$1.displayName = 'Status'; + + var Box = function Box(props) { + var _a; + + var children = props.children, + type = props.type, + isTyping = props.isTyping, + statusType = props.statusType, + withStatus = props.withStatus, + onClick = props.onClick, + className = props.className; + var baseProps = extractBaseProps(props); + var MessageClass = classNames__default["default"]((_a = {}, _a['Box'] = true, _a["Box--" + type] = type, _a['Box--typing'] = isTyping, _a['Box--urgent'] = statusType === 'urgent', _a["Box-" + type + "--withStatus"] = withStatus || isTyping, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: MessageClass, + onClick: onClick, + "data-test": "DesignSystem-ChatMessage--Box" + }), children); + }; + Box.displayName = 'Box'; + + var MessageText = function MessageText(props) { + var text = props.text, + type = props.type, + isTyping = props.isTyping, + typingText = props.typingText, + statusType = props.statusType, + className = props.className; + var baseProps = extractBaseProps(props); + + if (isTyping && type === 'incoming') { + return /*#__PURE__*/React__namespace.createElement(Text, __assign({}, baseProps, { + appearance: 'subtle', + size: 'small', + className: className + }), typingText); + } + + return /*#__PURE__*/React__namespace.createElement(Text, __assign({}, baseProps, { + className: className, + appearance: statusType === 'sending' ? 'subtle' : 'default' + }), text); + }; + MessageText.defaultProps = { + text: '', + typingText: 'Typing..' + }; + MessageText.displayName = 'MessageText'; + + var ChatMessage = function ChatMessage(props) { + var type = props.type, + text = props.text, + isTyping = props.isTyping, + typingText = props.typingText, + statusOptions = props.statusOptions, + onClick = props.onClick, + className = props.className; + var baseProps = extractBaseProps(props); + var statusType = (statusOptions || {}).type; + return /*#__PURE__*/React__namespace.createElement(Box, __assign({}, baseProps, { + type: type, + className: className, + onClick: onClick, + isTyping: isTyping, + statusType: statusType, + withStatus: statusOptions !== undefined + }), /*#__PURE__*/React__namespace.createElement(MessageText, { + type: type, + text: text, + typingText: typingText, + isTyping: isTyping, + statusType: statusType + }), !isTyping && statusOptions && /*#__PURE__*/React__namespace.createElement(Status$1, __assign({}, statusOptions))); + }; + ChatMessage.displayName = 'ChatMessage'; + + var EmptyStateContext = /*#__PURE__*/React__namespace.createContext({}); + + var imageHeight$1 = { + standard: '200px', + compressed: '150px', + tight: '100px', + large: '200px', + small: '200px' + }; + + var EmptyStateImage = function EmptyStateImage(props) { + var _a, _b; + + var children = props.children, + maxHeight = props.maxHeight, + height = props.height, + minHeight = props.minHeight, + src = props.src, + alt = props.alt, + className = props.className, + rest = __rest(props, ["children", "maxHeight", "height", "minHeight", "src", "alt", "className"]); + + var contextProp = React__default["default"].useContext(EmptyStateContext); + var imageClasses = classNames__default["default"]((_a = {}, _a['EmptyState-image'] = true, _a), className); + var imageWrapperClasses = classNames__default["default"]((_b = {}, _b['d-flex'] = true, _b['justify-content-center'] = true, _b), className); + var _c = contextProp.size, + size = _c === void 0 ? 'standard' : _c; + var sizeStyle = { + maxHeight: maxHeight !== null && maxHeight !== void 0 ? maxHeight : imageHeight$1[size], + height: height, + minHeight: minHeight + }; + + if (children) { + return /*#__PURE__*/React__default["default"].createElement("div", __assign({}, rest, { + className: imageWrapperClasses, + style: __assign({}, sizeStyle) + }), children); + } + + return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, src && /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement("img", __assign({ + className: imageClasses, + src: src, + alt: alt, + style: __assign({}, sizeStyle), + "data-test": "DesignSystem-EmptyState--Img" + }, rest)))); + }; + + var EmptyStateTitle = function EmptyStateTitle(props) { + var _a; + + var children = props.children, + className = props.className, + rest = __rest(props, ["children", "className"]); + + var contextProp = React__default["default"].useContext(EmptyStateContext); + var _b = contextProp.size, + size = _b === void 0 ? 'standard' : _b; + var headingClass = classNames__default["default"]((_a = {}, _a["EmptyState-text"] = true, _a["EmptyState-title--" + size] = true, _a), className); + + if (size === 'standard') { + return /*#__PURE__*/React__default["default"].createElement(Heading, __assign({ + "data-test": "DesignSystem-EmptyState--Heading", + className: headingClass + }, rest), children); + } + + return /*#__PURE__*/React__default["default"].createElement(Text, __assign({ + "data-test": "DesignSystem-EmptyState--Heading", + className: headingClass, + weight: "medium", + size: textSize[size] + }, rest), children); + }; + + var EmptyStateDescription = function EmptyStateDescription(props) { + var _a; + + var children = props.children, + className = props.className, + rest = __rest(props, ["children", "className"]); + + var contextProp = React__default["default"].useContext(EmptyStateContext); + var _b = contextProp.size, + size = _b === void 0 ? 'standard' : _b; + var textSize = { + standard: 'regular', + compressed: 'regular', + tight: 'small' + }; + var descriptionClasses = classNames__default["default"]((_a = {}, _a["EmptyState-text"] = true, _a['mt-3'] = true, _a), className); + return /*#__PURE__*/React__default["default"].createElement(Text, __assign({ + size: textSize[size], + appearance: "subtle", + className: descriptionClasses, + "data-test": "DesignSystem-EmptyState--Text" + }, rest), children); + }; + + var EmptyStateActions = function EmptyStateActions(props) { + var _a; + + var children = props.children, + className = props.className, + rest = __rest(props, ["children", "className"]); + + var contextProp = React__default["default"].useContext(EmptyStateContext); + var _b = contextProp.size, + size = _b === void 0 ? 'standard' : _b; + var actionWrapperClasses = classNames__default["default"]((_a = {}, _a["EmptyState-actions--" + size] = true, _a['EmptyState-actions'] = true, _a), className); + return /*#__PURE__*/React__default["default"].createElement("div", __assign({ + "data-test": "DesignSystem-EmptyState--Actions", + className: actionWrapperClasses + }, rest), children); + }; + + var imageHeight = { + large: '256px', + small: '128px', + standard: '256px', + compressed: '256px', + tight: '256px' + }; + var templateWidth = { + standard: '480px', + compressed: '400px', + tight: '320px', + large: '480px', + small: '480px' + }; + var HeadingSize = { + large: 'l', + small: 'm', + standard: 'l', + compressed: 'l', + tight: 'l' + }; + var textSize = { + large: 'large', + small: 'regular', + standard: 'large', + compressed: 'large', + tight: 'regular' + }; + var EmptyState = function EmptyState(props) { + var _a, _b, _c, _d; + + var imageSrc = props.imageSrc, + title = props.title, + description = props.description, + _e = props.size, + size = _e === void 0 ? 'standard' : _e, + children = props.children, + className = props.className, + image = props.image, + maxWidth = props.maxWidth, + minWidth = props.minWidth, + width = props.width; + var baseProps = extractBaseProps(props); + var templateSize = 'standard'; + + var isValidSize = function isValidSize(size) { + return size === 'large' || size === 'small'; + }; + + if (title || description) { + templateSize = isValidSize(size) ? size : 'large'; + } else { + templateSize = isValidSize(size) ? 'standard' : size; + } + + var wrapperClasses = classNames__default["default"]((_a = {}, _a['EmptyState'] = true, _a), className); + var emptyStateWrapper = classNames__default["default"]((_b = {}, _b['EmptyState-Wrapper'] = true, _b), className); + var headingClasses = classNames__default["default"]((_c = {}, _c['EmptyState-title'] = true, _c["EmptyState-title--" + templateSize] = true, _c)); + var textClasses = classNames__default["default"]((_d = {}, _d['EmptyState-description'] = true, _d["EmptyState-description--" + templateSize] = children !== undefined, _d)); + + if (title || description) { + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-EmptyState" + }, baseProps, { + className: wrapperClasses + }), image && /*#__PURE__*/React__namespace.createElement("div", { + style: { + height: imageHeight[templateSize] + } + }, image), imageSrc && !image && /*#__PURE__*/React__namespace.createElement("img", { + src: imageSrc, + height: imageHeight[templateSize], + "data-test": "DesignSystem-EmptyState--Img" + }), title && /*#__PURE__*/React__namespace.createElement(Heading, { + "data-test": "DesignSystem-EmptyState--Heading", + size: HeadingSize[templateSize], + className: headingClasses + }, title), description && /*#__PURE__*/React__namespace.createElement(Text, { + size: textSize[templateSize], + className: textClasses, + appearance: "subtle", + "data-test": "DesignSystem-EmptyState--Text" + }, description), children && children); + } + + var templateMaxWidth = maxWidth ? maxWidth : templateWidth[templateSize]; + var customStyle = { + maxWidth: templateMaxWidth, + minWidth: minWidth, + width: width + }; + return /*#__PURE__*/React__namespace.createElement(EmptyStateContext.Provider, { + value: { + size: templateSize, + maxWidth: templateMaxWidth + } + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex justify-content-center align-item-center w-100 h-100" + }, /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-EmptyState--Wrapper", + className: emptyStateWrapper, + style: customStyle + }, baseProps), children))); + }; + EmptyState.displayName = 'EmptyState'; + EmptyState.Title = EmptyStateTitle; + EmptyState.Description = EmptyStateDescription; + EmptyState.Image = EmptyStateImage; + EmptyState.Actions = EmptyStateActions; + EmptyState.defaultProps = { + size: 'standard' + }; + + var ModalDescription = function ModalDescription(props) { + var title = props.title, + description = props.description, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]({ + 'Modal-description': true + }, className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-ModalDescription" + }, baseProps, { + className: classes + }), title && /*#__PURE__*/React__namespace.createElement(Text, { + weight: "strong", + "data-test": "DesignSystem-ModalDescription--Title" + }, title), title && description && /*#__PURE__*/React__namespace.createElement("br", null), description && /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-ModalDescription--Description" + }, description)); + }; + ModalDescription.displayName = 'ModalDescription'; + + var Pagination = function Pagination(props) { + var _a, _b, _c; + + var type = props.type, + totalPages = props.totalPages, + onPageChange = props.onPageChange, + className = props.className, + pageJumpDebounceDuration = props.pageJumpDebounceDuration; + var baseProps = extractBaseProps(props); + + var _d = React__namespace.useState(props.page), + page = _d[0], + setPage = _d[1]; + + var _e = React__namespace.useState(false), + init = _e[0], + setInit = _e[1]; + + var _f = React__namespace.useState(0), + debounceCancelCounter = _f[0], + setDebounceCancelCounter = _f[1]; + + var debouncePageChange = React__namespace.useCallback(debounce(pageJumpDebounceDuration, onPageChange), [debounceCancelCounter]); + React__namespace.useEffect(function () { + setPage(props.page); + }, [props.page]); + var wrapperClass = classNames__default["default"]((_a = {}, _a['Pagination'] = true, _a["Pagination--" + type] = type, _a), className); + var nextButtonWrapperClass = classNames__default["default"]((_b = {}, _b['Pagination-buttonWrapper'] = true, _b['Pagination-buttonWrapper--next'] = true, _b)); + var prevButtonWrapperClass = classNames__default["default"]((_c = {}, _c['Pagination-buttonWrapper'] = true, _c['Pagination-buttonWrapper--previous'] = true, _c)); + React__namespace.useEffect(function () { + if (init) { + if (page >= 1 && page <= totalPages) { + debouncePageChange(page); + } else { + debouncePageChange.cancel(); + setDebounceCancelCounter(function (prev) { + return prev + 1; + }); + } + } + }, [page]); + + var inputChangeHandler = function inputChangeHandler(e) { + e.preventDefault(); + var val = +e.target.value.trim(); + + if (val >= 0 && val <= totalPages) { + if (!init) setInit(true); + setPage(val); + } + }; + + var onKeyPressHandler = function onKeyPressHandler(e) { + if (!isNaturalNumber(e.key)) { + e.preventDefault(); + } + }; + + var onClickHandler = function onClickHandler(buttonType) { + setInit(true); + + switch (buttonType) { + case 'first': + setPage(1); + break; + + case 'last': + setPage(totalPages); + break; + + case 'prev': + if (page > 1) setPage(page - 1); + break; + + case 'next': + if (page < totalPages) setPage(page + 1); + break; + } + }; + + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-Pagination" + }, baseProps, { + className: wrapperClass + }), /*#__PURE__*/React__namespace.createElement("div", { + className: prevButtonWrapperClass + }, /*#__PURE__*/React__namespace.createElement(Button, { + onClick: function onClick() { + return onClickHandler('first'); + }, + disabled: page <= 1, + appearance: "transparent", + icon: "first_page", + "data-test": "DesignSystem-Pagination--FirstButton" + }), /*#__PURE__*/React__namespace.createElement(Button, { + onClick: function onClick() { + return onClickHandler('prev'); + }, + disabled: page <= 1, + icon: "navigate_before", + "data-test": "DesignSystem-Pagination--PrevButton", + className: "ml-4 mr-3" + })), type === 'jump' && /*#__PURE__*/React__namespace.createElement("div", { + className: "Pagination-pageIndex" + }, /*#__PURE__*/React__namespace.createElement(MetricInput, { + name: "page", + className: "Pagination-MetricInput", + onChange: inputChangeHandler, + value: "" + (isNaturalNumber(page) ? page : ''), + "data-test": "DesignSystem-Pagination--Input", + onKeyPress: onKeyPressHandler + }), /*#__PURE__*/React__namespace.createElement(Text, null, " of " + totalPages + " pages")), /*#__PURE__*/React__namespace.createElement("div", { + className: nextButtonWrapperClass + }, /*#__PURE__*/React__namespace.createElement(Button, { + onClick: function onClick() { + return onClickHandler('next'); + }, + disabled: page >= totalPages, + icon: "navigate_next", + "data-test": "DesignSystem-Pagination--NextButton", + className: "mr-4 ml-3" + }), /*#__PURE__*/React__namespace.createElement(Button, { + onClick: function onClick() { + return onClickHandler('last'); + }, + disabled: page >= totalPages, + appearance: "transparent", + icon: "last_page", + "data-test": "DesignSystem-Pagination--LastButton" + }))); + }; + Pagination.displayName = 'Pagination'; + Pagination.defaultProps = { + type: 'basic', + page: 1, + totalPages: 1, + pageJumpDebounceDuration: 750 + }; + + var EditableInput = function EditableInput(props) { + var _a, _b, _c, _d; + + var error = props.error, + size = props.size, + errorMessage = props.errorMessage, + placeholder = props.placeholder, + inputOptions = props.inputOptions, + disableSaveAction = props.disableSaveAction, + onChange = props.onChange, + className = props.className; + + var onInputChange = inputOptions.onChange, + rest = __rest(inputOptions, ["onChange"]); + + var _e = React__namespace.useState(props.value), + inputValue = _e[0], + setInputValue = _e[1]; + + var _f = React__namespace.useState(props.value), + value = _f[0], + setValue = _f[1]; + + var _g = React__namespace.useState(false), + editing = _g[0], + setEditing = _g[1]; + + var _h = React__namespace.useState(false), + showComponent = _h[0], + setShowComponent = _h[1]; + + var inputRef = /*#__PURE__*/React__namespace.createRef(); + var baseProps = extractBaseProps(props); + var isControlled = props.value !== undefined; + React__namespace.useEffect(function () { + if (isControlled) setValue(props.value); + }, [props.value]); + var EditableInputClass = classNames__default["default"]((_a = {}, _a['EditableInput'] = true, _a), className); + var EditableDefaultClass = classNames__default["default"]((_b = {}, _b['EditableInput-default'] = true, _b["EditableInput-default--" + size] = size, _b)); + var InputClass = classNames__default["default"]((_c = {}, _c['EditableInput-Input--tiny'] = size === 'tiny', _c)); + var ActionClass = classNames__default["default"]((_d = {}, _d['EditableInput-actions'] = true, _d["EditableInput-actions--" + size] = size, _d)); + + var setDefaultComponent = function setDefaultComponent(updatedValue) { + setInputValue(updatedValue); + setEditing(false); + setShowComponent(false); + }; + + var onSaveChanges = function onSaveChanges() { + if (!isControlled) setValue(inputValue); + if (onChange) onChange(inputValue || ''); + setDefaultComponent(inputValue); + }; + + var onInputChangeHandler = function onInputChangeHandler(e) { + setInputValue(e.target.value); + if (onInputChange) onInputChange(e); + }; + + var onChangeHandler = function onChangeHandler(eventType) { + var _a; + + switch (eventType) { + case 'edit': + { + (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus(); + setEditing(true); + setShowComponent(true); + break; + } + + case 'hover': + { + setShowComponent(true); + break; + } + + case 'default': + { + setShowComponent(false); + } + } + }; + + var inputComponent = /*#__PURE__*/React__namespace.createElement(Input, __assign({ + defaultValue: inputValue, + placeholder: placeholder, + className: InputClass, + autoFocus: editing, + size: size, + onChange: onInputChangeHandler, + error: error && editing, + ref: inputRef, + "data-test": "DesignSystem-EditableInput--Input" + }, rest)); + + var onKeyDown = function onKeyDown(event) { + if (document.activeElement === inputRef.current) { + switch (event.key) { + case 'Enter': + onSaveChanges(); + break; + + case 'Escape': + setDefaultComponent(value); + break; + } + } + }; + + var renderChildren = function renderChildren() { + if (showComponent) { + return error && errorMessage && editing ? /*#__PURE__*/React__namespace.createElement(Popover, { + trigger: inputComponent, + position: "right", + className: "px-6 py-6 d-flex align-items-center", + on: "hover" + }, /*#__PURE__*/React__namespace.createElement(InlineMessage, { + appearance: "alert", + description: errorMessage + })) : inputComponent; + } + + return /*#__PURE__*/React__namespace.createElement("div", { + className: EditableDefaultClass, + "data-test": "DesignSystem-EditableInput--Default" + }, value || placeholder); + }; + + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-EditableInput" + }, baseProps, { + className: EditableInputClass, + onKeyDown: onKeyDown + }), /*#__PURE__*/React__namespace.createElement(Editable, { + onChange: onChangeHandler, + editing: editing + }, renderChildren()), editing && /*#__PURE__*/React__namespace.createElement("div", { + className: ActionClass, + "data-test": "DesignSystem-EditableInput--Actions" + }, /*#__PURE__*/React__namespace.createElement(Button, { + icon: "clear", + className: "mr-3", + largeIcon: true, + size: "tiny", + onClick: function onClick() { + setDefaultComponent(value); + }, + "data-test": "DesignSystem-EditableInput--Discard" + }), /*#__PURE__*/React__namespace.createElement(Button, { + icon: "check", + appearance: "primary", + largeIcon: true, + size: "tiny", + disabled: disableSaveAction, + onClick: onSaveChanges, + "data-test": "DesignSystem-EditableInput--Save" + }))); + }; + EditableInput.defaultProps = { + size: 'regular', + placeholder: '', + inputOptions: {} + }; + + var EditableChipInput = function EditableChipInput(props) { + var _a, _b, _c, _d; + + var placeholder = props.placeholder, + onChange = props.onChange, + className = props.className, + disableSaveAction = props.disableSaveAction, + chipInputOptions = props.chipInputOptions; + + var onChipInputChange = chipInputOptions.onChange, + _e = chipInputOptions.chipOptions, + chipOptions = _e === void 0 ? {} : _e, + rest = __rest(chipInputOptions, ["onChange", "chipOptions"]); + + var _onClick = chipOptions.onClick, + chipObject = __rest(chipOptions, ["onClick"]); + + var _f = React__namespace.useState(props.value), + inputValue = _f[0], + setInputValue = _f[1]; + + var _g = React__namespace.useState(props.value), + value = _g[0], + setValue = _g[1]; + + var _h = React__namespace.useState(false), + showComponent = _h[0], + setShowComponent = _h[1]; + + var baseProps = extractBaseProps(props); + var isWithChips = inputValue && inputValue.length; + var isControlled = props.value !== undefined; + React__namespace.useEffect(function () { + if (isControlled) { + setInputValue(props.value); + setValue(props.value); + } + }, [props.value]); + var classes = classNames__default["default"]((_a = {}, _a['EditableChipInput'] = true, _a), className); + var actionClass = classNames__default["default"]((_b = {}, _b['EditableChipInput-actions'] = true, _b)); + var defaultClasses = classNames__default["default"]((_c = {}, _c['EditableChipInput-default'] = !isWithChips, _c['EditableChipInput-defaultWithChips'] = isWithChips, _c)); + var inputClass = classNames__default["default"]((_d = {}, _d['EditableChipInput-chipInput'] = true, _d)); + + var onChipInputChangeHandler = function onChipInputChangeHandler(val) { + setInputValue(val); + if (onChipInputChange) onChipInputChange(val); + }; + + var setDefaultComponent = function setDefaultComponent(updatedValue) { + setInputValue(updatedValue); + setShowComponent(false); + }; + + var onSaveChanges = function onSaveChanges() { + if (!isControlled) setValue(inputValue); + if (onChange && inputValue) onChange(inputValue); + setDefaultComponent(inputValue); + }; + + var onChangeHandler = function onChangeHandler(eventType) { + switch (eventType) { + case 'edit': + { + setShowComponent(true); + break; + } + + case 'hover': + { + break; + } + + case 'default': + { + setShowComponent(false); + break; + } + } + }; + + var onChipDelete = function onChipDelete(index) { + if (value) { + var updatedValue = __spreadArrays(value); + + updatedValue.splice(index, 1); + + if (!isControlled) { + setInputValue(updatedValue); + setValue(updatedValue); + } + + if (onChange) onChange(updatedValue); + } + }; + + var renderDefaultState = function renderDefaultState() { + if (inputValue && inputValue.length) { + return inputValue.map(function (val, index) { + return /*#__PURE__*/React__namespace.createElement(Chip, __assign({ + "data-test": "DesignSystem-EditableChipInput--Chip", + key: index, + name: val, + label: val, + className: "my-2 mx-2" + }, chipObject, { + onClose: function onClose() { + return onChipDelete(index); + }, + onClick: function onClick() { + return _onClick && _onClick(val, index); + } + })); + }); + } + + return /*#__PURE__*/React__namespace.createElement(Text, { + className: "pt-1" + }, placeholder); + }; + + var renderChildren = function renderChildren() { + if (showComponent) { + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-EditableChipInput--wrapper" + }, /*#__PURE__*/React__namespace.createElement(ChipInput, __assign({ + "data-test": "DesignSystem-EditableChipInput--ChipInput", + placeholder: placeholder, + onChange: onChipInputChangeHandler, + value: inputValue, + chipOptions: chipOptions + }, rest, { + className: inputClass + }))); + } + + return /*#__PURE__*/React__namespace.createElement("div", { + className: defaultClasses, + "data-test": "DesignSystem-EditableChipInput--Default" + }, renderDefaultState()); + }; + + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + className: classes, + "data-test": "DesignSystem-EditableChipInput" + }, baseProps), /*#__PURE__*/React__namespace.createElement(Editable, { + onChange: onChangeHandler, + editing: showComponent + }, renderChildren()), showComponent && /*#__PURE__*/React__namespace.createElement("div", { + className: actionClass, + "data-test": "DesignSystem-EditableChipInput--Actions" + }, /*#__PURE__*/React__namespace.createElement(Button, { + "data-test": "DesignSystem-EditableChipInput--DiscardButton", + icon: "clear", + className: "mr-3", + size: "tiny", + onClick: function onClick() { + setDefaultComponent(value); + } + }), /*#__PURE__*/React__namespace.createElement(Button, { + "data-test": "DesignSystem-EditableChipInput--SaveButton", + icon: "check", + appearance: "primary", + size: "tiny", + disabled: disableSaveAction, + onClick: onSaveChanges + }))); + }; + EditableChipInput.defaultProps = { + placeholder: '', + chipInputOptions: {} + }; + + var ProgressRing = function ProgressRing(props) { + var _a; + + var size = props.size, + max = props.max, + value = props.value, + className = props.className; + var baseProps = extractBaseProps(props); + var radius = 20; + var circumference = 2 * Math.PI * radius; + var ProgressRingClass = classNames__default["default"]((_a = { + Ring: true + }, _a["Ring--" + size] = size, _a), className); + var svgProps = { + viewBox: '0 0 50 50' + }; + var updatedValue = value > 0 ? Math.min(value, max) * 100 / max : 0; + var circleProps = { + cx: 25, + cy: 25, + r: radius, + fill: 'none', + strokeWidth: '8', + strokeDasharray: circumference + " " + circumference + }; + return /*#__PURE__*/React__namespace.createElement("svg", __assign({ + "data-test": "DesignSystem-ProgressRing" + }, baseProps, { + className: ProgressRingClass + }, svgProps), /*#__PURE__*/React__namespace.createElement("circle", __assign({ + className: "Ring-background" + }, circleProps)), /*#__PURE__*/React__namespace.createElement("circle", __assign({ + className: "Ring-indicator", + strokeDashoffset: circumference - updatedValue / 100 * circumference + }, circleProps, { + "data-test": "DesignSystem-ProgressRing--Circle" + }))); + }; + ProgressRing.displayName = 'ProgressRing'; + ProgressRing.defaultProps = { + size: 'regular', + max: 100 + }; + + var Step = function Step(props) { + var _a; + + var label = props.label, + value = props.value, + disabled = props.disabled, + active = props.active, + completed = props.completed, + onChange = props.onChange; + var StepClass = classNames__default["default"]((_a = {}, _a['Step'] = true, _a['Stepper-animate'] = true, _a['Step--active'] = active, _a['Step--disabled'] = disabled, _a['Step--completed'] = completed, _a)); + + var onClickHandle = function onClickHandle() { + if (disabled) return; + if (onChange) onChange(label, value); + }; + + var onKeyDownHandler = function onKeyDownHandler(event) { + if (event.key === 'Enter') { + onClickHandle(); + } + }; + + var textColor = active ? 'primary-dark' : disabled ? 'inverse-lightest' : 'inverse'; + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Step", + className: StepClass, + onKeyDown: function onKeyDown(e) { + return onKeyDownHandler(e); + }, + onClick: onClickHandle, + tabIndex: disabled ? -1 : 0 + }, /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-Step--Icon", + name: completed ? 'check_circle' : 'radio_button_unchecked', + className: "mr-3 my-4 Stepper-animate" + }), label && /*#__PURE__*/React__namespace.createElement(Text, { + weight: "medium", + color: textColor, + className: "Stepper-animate Stepper-text" + }, label)); + }; + Step.displayName = 'Step'; + + var Stepper = function Stepper(props) { + var _a; + + var steps = props.steps, + active = props.active, + completed = props.completed, + onChange = props.onChange, + className = props.className, + skipIndexes = props.skipIndexes; + var baseProps = extractBaseProps(props); + + var onChangeHandler = function onChangeHandler(index, stepLabel, stepValue) { + if (onChange) onChange(index, completed, stepLabel, stepValue); + }; + + var StepperClass = classNames__default["default"]((_a = {}, _a['Stepper'] = true, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-Stepper" + }, baseProps, { + className: StepperClass + }), steps.map(function (step, index) { + var label = step.label, + value = step.value; + var isSkipped = skipIndexes.includes(index); + var activeStep = active === index; + var completedStep = !isSkipped && completed >= index; + var disabled = !activeStep && !isSkipped && completed + 1 < index; + return /*#__PURE__*/React__namespace.createElement(Step, { + key: index, + label: label, + value: value, + active: activeStep, + completed: completedStep, + disabled: disabled, + onChange: function onChange(steplabel, stepvalue) { + return onChangeHandler(index, steplabel, stepvalue); + } + }); + })); + }; + Stepper.displayName = 'Stepper'; + Stepper.defaultProps = { + completed: -1, + active: 0, + skipIndexes: [] + }; + + var Trigger = function Trigger(props) { + var inputFormat = props.inputFormat, + startInputOptions = props.startInputOptions, + endInputOptions = props.endInputOptions, + validators = props.validators, + state = props.state, + setState = props.setState; + var init = state.init, + startDate = state.startDate, + endDate = state.endDate, + startError = state.startError, + endError = state.endError; + + var updateNav = function updateNav(type) { + if (type === 'start') { + var _a = getDateInfo(startDate), + year = _a.year, + month = _a.month; + + setState({ + yearNav: year, + monthNav: month + }); + } + + if (type === 'end') { + var _b = getDateInfo(endDate), + year = _b.year, + month = _b.month; + + setState({ + yearNav: year, + monthNav: month + }); + } + }; + + var onPasteHandler = function onPasteHandler(_e, val, type) { + setState({ + open: true + }); + + if (type === 'start') { + var placeholderChar = startInputOptions.placeholderChar || '_'; + + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); + + if (d) { + setState({ + startDate: d + }); + + if (endDate) { + var _a = getDateInfo(endDate), + eYear = _a.year, + eMonth = _a.month, + eDate = _a.date; + + if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { + setState({ + endDate: undefined + }); + } + } + + if (startInputOptions.onPaste) startInputOptions.onPaste(_e, val); + } + } + } + + if (type === 'end') { + var placeholderChar = endInputOptions.placeholderChar ? endInputOptions.placeholderChar : '_'; + + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); + + if (d) { + setState({ + endDate: d + }); + if (endInputOptions.onPaste) endInputOptions.onPaste(_e, val); + } + } + } + }; + + var onChangeHandler = function onChangeHandler(_e, val, type) { + setState({ + open: true + }); + + if (type === 'start') { + var placeholderChar = startInputOptions.placeholderChar || '_'; + + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); + + if (d && !isNaN(d.getTime())) { + setState({ + startDate: d + }); + + if (endDate) { + var _a = getDateInfo(endDate), + eYear = _a.year, + eMonth = _a.month, + eDate = _a.date; + + if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { + setState({ + endDate: undefined }); } } @@ -8949,4975 +11664,9288 @@ } } - if (type === 'end') { - var placeholderChar = endInputOptions.placeholderChar ? endInputOptions.placeholderChar : '_'; + if (type === 'end') { + var placeholderChar = endInputOptions.placeholderChar ? endInputOptions.placeholderChar : '_'; + + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); + if (d && !isNaN(d.getTime())) setState({ + endDate: d + }); + } + } + }; + + var onBlurHandler = function onBlurHandler(_e, val, type) { + setState({ + init: true + }); + var hasNumber = /\d/; + + if (type === 'start') { + var _a = startInputOptions.placeholderChar, + placeholderChar = _a === void 0 ? '_' : _a; + + if (val && hasNumber.test(val) && val.includes(placeholderChar)) { + setState({ + startError: true + }); + } else if (val && !hasNumber.test(val) || !val) { + setState({ + startError: false + }); + } + + if (!val || val.includes(placeholderChar)) setState({ + startDate: undefined + }); + } + + if (type === 'end') { + var _b = endInputOptions.placeholderChar, + placeholderChar = _b === void 0 ? '_' : _b; + + if (val && hasNumber.test(val) && val.includes(placeholderChar)) { + setState({ + endError: true + }); + } else if (val && !hasNumber.test(val) || !val) { + setState({ + endError: false + }); + } + + if (!val || val.includes(placeholderChar)) setState({ + endDate: undefined + }); + } + }; + + var onClearHandler = function onClearHandler(type) { + setState({ + init: true + }); + + if (type === 'start') { + setState({ + startDate: undefined + }); + updateNav('end'); + } + + if (type === 'end') { + setState({ + endDate: undefined + }); + updateNav('start'); + } + }; + + var onClickHandler = function onClickHandler(type) { + var open = state.open; + + if (!open) { + updateNav(type); + } + }; + + var mask = date[inputFormat]; + var startPlaceholderChar = startInputOptions.placeholderChar || '_'; + var endPlaceholderChar = endInputOptions.placeholderChar || '_'; + var showStartError = startInputOptions.error || startInputOptions.required && startError && init; + var showEndError = endInputOptions.error || endInputOptions.required && endError && init; + var startErrorMessage = startInputOptions.caption === undefined ? 'Invalid value' : startInputOptions.caption; + var endErrorMessage = endInputOptions.caption === undefined ? 'Invalid value' : endInputOptions.caption; + var startLabel = startInputOptions.label; + var endLabel = endInputOptions.label; + + var inputValidator = function inputValidator(val) { + return isValid(validators, val, inputFormat); + }; + + return /*#__PURE__*/React__namespace.createElement(Row, { + "data-test": "DesignSystem-DateRangePicker-InputTrigger" + }, /*#__PURE__*/React__namespace.createElement(Column, { + size: '6', + sizeXS: '12', + className: "DateRangePicker-input DateRangePicker-input--startDate" + }, startLabel && /*#__PURE__*/React__namespace.createElement(Label, { + required: startInputOptions.required, + withInput: true + }, startLabel), /*#__PURE__*/React__namespace.createElement(X, __assign({ + icon: "events", + placeholder: inputFormat + }, startInputOptions, { + mask: mask, + value: startDate ? translateToString(inputFormat, startDate) : init ? X.utils.getDefaultValue(mask, startPlaceholderChar) : '', + onChange: function onChange(e, val) { + onChangeHandler(e, val || '', 'start'); + }, + onPaste: function onPaste(e, val) { + onPasteHandler(e, val || '', 'start'); + }, + onBlur: function onBlur(e, val) { + onBlurHandler(e, val || '', 'start'); + }, + onClear: function onClear() { + return onClearHandler('start'); + }, + onClick: function onClick() { + return onClickHandler('start'); + }, + error: showStartError, + caption: showStartError ? startErrorMessage : '', + validators: [inputValidator], + clearOnEmptyBlur: true + }))), /*#__PURE__*/React__namespace.createElement(Column, { + size: '6', + sizeXS: '12', + className: "DateRangePicker-input DateRangePicker-input--endDate" + }, endLabel && /*#__PURE__*/React__namespace.createElement(Label, { + required: endInputOptions.required, + withInput: true + }, endLabel), /*#__PURE__*/React__namespace.createElement(X, __assign({ + icon: "events", + placeholder: inputFormat + }, endInputOptions, { + mask: mask, + value: endDate ? translateToString(inputFormat, endDate) : init ? X.utils.getDefaultValue(mask, endPlaceholderChar) : '', + onChange: function onChange(e, val) { + onChangeHandler(e, val || '', 'end'); + }, + onPaste: function onPaste(e, val) { + onPasteHandler(e, val || '', 'end'); + }, + onBlur: function onBlur(e, val) { + onBlurHandler(e, val || '', 'end'); + }, + onClear: function onClear() { + return onClearHandler('end'); + }, + onClick: function onClick() { + return onClickHandler('end'); + }, + error: showEndError, + caption: showEndError ? endErrorMessage : '', + validators: [inputValidator], + clearOnEmptyBlur: true + })))); + }; + + var SingleInputTrigger = function SingleInputTrigger(props) { + var inputFormat = props.inputFormat, + inputOptions = props.inputOptions, + validators = props.validators, + state = props.state, + setState = props.setState; + var init = state.init, + startDate = state.startDate, + endDate = state.endDate, + startValue = state.startValue, + endValue = state.endValue, + startError = state.startError, + endError = state.endError; + var mask = rangeDate[inputFormat]; + var showError = inputOptions.error || inputOptions.required && (startError || endError) && init; + var errorMessage = inputOptions.caption === undefined ? 'Invalid value' : inputOptions.caption; + var label = inputOptions.label; + var _a = inputOptions.placeholderChar, + placeholderChar = _a === void 0 ? '_' : _a; + var defaultValue = X.utils.getDefaultValue(mask, placeholderChar).split(' - '); + var sValue = startValue || defaultValue[0]; + var eValue = endValue || defaultValue[1]; + + var inputValidator = function inputValidator(val) { + var _a = val.split(' - '), + startVal = _a[0], + endVal = _a[1]; + + return isValid(validators, startVal, inputFormat) && isValid(validators, endVal, inputFormat); + }; + + var onPasteHandler = function onPasteHandler(_e, val) { + var onPaste = inputOptions.onPaste; + var date = val.split(' - '); + var startVal = date[0]; + var endVal = date[1]; + var endD = translateToDate(inputFormat, endVal, validators); + var startD = translateToDate(inputFormat, startVal, validators); + setState({ + startDate: startD, + endDate: endD, + startValue: startVal, + endValue: endVal + }); + if (onPaste) onPaste(_e, val); + }; + + var onChangeHandler = function onChangeHandler(_e, val) { + var date = val.split(' - '); + var startVal = date[0]; + var endVal = date[1]; + + if (startValue !== startVal && startVal && !startVal.includes(placeholderChar)) { + var startD = translateToDate(inputFormat, startVal, validators); + + if (startD) { + var isEndDateValid = endValue && !endValue.includes(placeholderChar); + setState({ + startDate: startD, + endDate: isEndDateValid ? endDate : undefined + }); + + if (endDate) { + var _a = getDateInfo(endDate), + eYear = _a.year, + eMonth = _a.month, + eDate = _a.date; + + if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { + setState({ + endDate: undefined + }); + } + } + } + } + + if (endValue !== endVal && endVal && !endVal.includes(placeholderChar)) { + var endD = translateToDate(inputFormat, endVal, validators); + var isStartDateValid = startValue && !startValue.includes(placeholderChar); + + if (endD) { + setState({ + endDate: endD, + startDate: isStartDateValid ? startDate : undefined + }); + } + } + + setState({ + startValue: startVal, + endValue: endVal + }); + }; + + var getErrorState = function getErrorState(currentVal, siblingVal) { + var hasNumber = /\d/; + + if (currentVal && siblingVal && !currentVal.includes(placeholderChar) && siblingVal.includes(placeholderChar)) { + return true; + } else if (currentVal && hasNumber.test(currentVal) && currentVal.includes(placeholderChar)) { + return true; + } else if (currentVal && !hasNumber.test(currentVal) || !currentVal) { + return false; + } + + return null; + }; + + var onBlurHandler = function onBlurHandler(_e, val) { + setState({ + init: true + }); + var date = val.split(' - '); + var startVal = date[0]; + var endVal = date[1]; + var startErr = getErrorState(startVal, endVal); + var endErr = getErrorState(endVal, startVal); + + if (startErr !== null && endErr !== null) { + setState({ + startError: startErr, + endError: endErr + }); + } + + if (!startVal || startVal.includes(placeholderChar)) setState({ + startDate: undefined + }); + if (!endVal || endVal.includes(placeholderChar)) setState({ + endDate: undefined + }); + }; + + var onClearHandler = function onClearHandler() { + setState({ + init: true, + startDate: undefined, + endDate: undefined, + yearNav: undefined, + monthNav: undefined + }); + }; + + return /*#__PURE__*/React__namespace.createElement(Row, { + "data-test": "DesignSystem-DateRangePicker-SingleInputTrigger" + }, /*#__PURE__*/React__namespace.createElement(Column, null, label && /*#__PURE__*/React__namespace.createElement(Label, { + required: inputOptions.required, + withInput: true + }, label), /*#__PURE__*/React__namespace.createElement(X, __assign({ + icon: "events", + placeholder: inputFormat + " - " + inputFormat + }, inputOptions, { + mask: mask, + value: !startDate && !endDate && !init ? undefined : sValue + " - " + eValue, + onChange: function onChange(e, val) { + onChangeHandler(e, val || ''); + }, + onBlur: function onBlur(e, val) { + onBlurHandler(e, val || ''); + }, + onPaste: function onPaste(e, val) { + onPasteHandler(e, val || ''); + }, + onClear: onClearHandler, + error: showError, + caption: showError ? errorMessage : '', + validators: [inputValidator], + clearOnEmptyBlur: true + })))); + }; + + var setDate = function setDate(date) { + var d = new Date(); + return new Date(d.setDate(date)); + }; + + var getCurrentYear = function getCurrentYear() { + var current = new Date(); + var currentYear = current.getFullYear(); + return currentYear; + }; + var getCurrentMonth = function getCurrentMonth() { + var current = new Date(); + var currentMonth = current.getMonth(); + return currentMonth; + }; + var getCurrentWeek = function getCurrentWeek() { + var current = new Date(); + var currentDate = current.getDate(); + var currentDay = current.getDay(); + return { + startDate: setDate(currentDate - currentDay + 1), + endDate: setDate(currentDate - currentDay + 7) + }; + }; + var getPreviousWeek = function getPreviousWeek() { + var current = new Date(); + var currentDate = current.getDate(); + var currentDay = current.getDay(); + return { + startDate: setDate(currentDate - currentDay - 6), + endDate: setDate(currentDate - currentDay) + }; + }; + var getPreviousMonth = function getPreviousMonth() { + var current = new Date(); + var currentYear = current.getFullYear(); + var currentMonth = current.getMonth(); + return { + endDate: new Date(currentYear, currentMonth, 0), + startDate: new Date(currentYear - +(currentMonth < 0), (currentMonth + 11) % 12, 1) + }; + }; + var getPrevious90Days = function getPrevious90Days() { + var current = new Date(); + var currentDate = current.getDate(); + return { + startDate: setDate(currentDate - 90), + endDate: setDate(currentDate) + }; + }; + var getCustomDates = function getCustomDates() { + return { + startDate: '', + endDate: '' + }; + }; + + var DateRangePicker = function (_super) { + __extends(DateRangePicker, _super); + + function DateRangePicker(props) { + var _this = _super.call(this, props) || this; + + _this.getDate = function (startDate, endDate) { + var inputFormat = _this.props.inputFormat; + var startVal = startDate ? translateToString(inputFormat, startDate) : ''; + var endVal = endDate ? translateToString(inputFormat, endDate) : ''; + return { + startValue: startVal, + endValue: endVal + }; + }; + + _this.getErrors = function (startDate, endDate) { + var isError = function isError(date) { + var _a = _this.props, + disabledBefore = _a.disabledBefore, + disabledAfter = _a.disabledAfter; + + var _b = getDateInfo(disabledBefore), + dbYear = _b.year, + dbMonth = _b.month, + dbDate = _b.date; + + var _c = getDateInfo(disabledAfter), + daYear = _c.year, + daMonth = _c.month, + daDate = _c.date; + + return !date ? false : compareDate(date, 'less', dbYear, dbMonth, dbDate) || compareDate(date, 'more', daYear, daMonth, daDate); + }; + + var startError = isError(startDate); + var endError = isError(endDate); + + var _a = getDateInfo(endDate), + eYear = _a.year, + eMonth = _a.month, + eDate = _a.date; + + if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { + startError = true; + endError = true; + } + + return { + startError: startError, + endError: endError + }; + }; + + _this.getInRangeError = function () { + var rangeLimit = _this.props.rangeLimit; + + if (rangeLimit) { + var _a = _this.state, + startDate = _a.startDate, + endDate = _a.endDate; + + var _b = getDateInfo(startDate), + sYear = _b.year, + sMonth = _b.month, + sDate = _b.date; + + var _c = getDateInfo(endDate), + eYear = _c.year, + eMonth = _c.month, + eDate = _c.date; + + var limitDate = void 0; + + if (startDate) { + limitDate = new Date(startDate); + limitDate.setDate(sDate + rangeLimit); + return compareDate(limitDate, 'less', eYear, eMonth, eDate + 1); + } + + if (endDate) { + limitDate = new Date(endDate); + limitDate.setDate(eDate - rangeLimit); + return compareDate(limitDate, 'more', sYear, sMonth, sDate - 1); + } + } + + return false; + }; + + _this.onRangeChangeHandler = function (sDate, eDate) { + _this.setState({ + init: true, + startDate: sDate, + endDate: eDate, + startValue: sDate ? translateToString(_this.props.inputFormat, sDate) : '', + endValue: eDate ? translateToString(_this.props.inputFormat, eDate) : '' + }); + }; + + _this.onToggleHandler = function (o, type) { + var _a = _this.props, + singleInput = _a.singleInput, + inputOptions = _a.inputOptions, + startInputOptions = _a.startInputOptions, + endInputOptions = _a.endInputOptions; + var disabled = singleInput ? inputOptions.disabled : startInputOptions.disabled || endInputOptions.disabled; + if (disabled) return; + + switch (type) { + case 'outsideClick': + _this.setState({ + open: o + }); + + break; + + case 'onClick': + _this.setState({ + open: true + }); + + break; + } + }; + + var inputFormat = props.inputFormat, + validators = props.validators; + var startDate = convertToDate(props.startDate, inputFormat, validators); + var endDate = convertToDate(props.endDate, inputFormat, validators); + + var _a = _this.getDate(startDate, endDate), + startValue = _a.startValue, + endValue = _a.endValue; + + var _b = _this.getErrors(startDate, endDate), + startError = _b.startError, + endError = _b.endError; + + _this.state = { + startDate: startDate, + endDate: endDate, + startValue: startValue, + endValue: endValue, + startError: startError, + endError: endError, + init: false, + open: props.open || false, + yearNav: props.yearNav, + monthNav: props.monthNav + }; + _this.monthsInView = props.monthsInView || (props.withInput ? 2 : 1); + return _this; + } + + DateRangePicker.prototype.componentDidUpdate = function (prevProps, prevState) { + if (prevProps.startDate !== this.props.startDate) { + var _a = this.props, + inputFormat = _a.inputFormat, + validators = _a.validators; + var d = convertToDate(this.props.startDate, inputFormat, validators); + var val = translateToString(inputFormat, d); + this.setState({ + startDate: d, + startValue: val + }); + } + + if (prevProps.endDate !== this.props.endDate) { + var _b = this.props, + inputFormat = _b.inputFormat, + validators = _b.validators; + var d = convertToDate(this.props.endDate, inputFormat, validators); + var val = translateToString(inputFormat, d); + this.setState({ + endDate: d, + endValue: val + }); + } + + if (prevProps.open !== this.props.open) { + this.setState({ + open: this.props.open || false + }); + } + + if (prevProps.yearNav !== this.props.yearNav) { + this.setState({ + yearNav: this.props.yearNav + }); + } + + if (prevProps.monthNav !== this.props.monthNav) { + this.setState({ + monthNav: this.props.monthNav + }); + } + + if (prevState.startDate !== this.state.startDate || prevState.endDate !== this.state.endDate) { + var _c = this.props, + onRangeChange = _c.onRangeChange, + outputFormat = _c.outputFormat; + var _d = this.state, + startDate = _d.startDate, + endDate = _d.endDate; + + var _e = this.getErrors(startDate, endDate), + startError = _e.startError, + endError = _e.endError; + + this.setState({ + startError: startError, + endError: endError + }); + + if (onRangeChange) { + var inRangeError = this.getInRangeError(); + var sValue = translateToString(outputFormat, startDate); + var eValue = translateToString(outputFormat, endDate); + + if (!inRangeError && !startError && !endError) { + if (this.props.allowReverseSelection) { + if (startDate && endDate) { + onRangeChange(startDate, endDate, sValue, eValue); + } + } else { + onRangeChange(startDate, endDate, sValue, eValue); + } + } else if (!this.props.allowReverseSelection) { + if (!startError) onRangeChange(startDate, undefined, sValue, eValue);else if (!endError) onRangeChange(undefined, endDate, sValue, eValue);else onRangeChange(undefined, undefined, sValue, eValue); + } + } + + if (this.state.startDate && this.state.endDate) { + this.setState({ + open: false + }); + } + } + }; + + DateRangePicker.prototype.renderCalendar = function () { + var _a = this.props; + _a.startDate; + _a.endDate; + _a.yearNav; + _a.monthNav; + _a.open; + var inputFormat = _a.inputFormat; + _a.outputFormat; + _a.startInputOptions; + _a.endInputOptions; + var validators = _a.validators; + _a.withInput; + _a.position; + var disabledBefore = _a.disabledBefore, + disabledAfter = _a.disabledAfter; + _a.onRangeChange; + var rangeLimit = _a.rangeLimit, + rest = __rest(_a, ["startDate", "endDate", "yearNav", "monthNav", "open", "inputFormat", "outputFormat", "startInputOptions", "endInputOptions", "validators", "withInput", "position", "disabledBefore", "disabledAfter", "onRangeChange", "rangeLimit"]); + + var _b = this.state, + startDate = _b.startDate, + endDate = _b.endDate, + yearNav = _b.yearNav, + monthNav = _b.monthNav; + return /*#__PURE__*/React__namespace.createElement(Calendar, __assign({}, rest, { + monthsInView: this.monthsInView, + rangePicker: true, + startDate: convertToDate(startDate, inputFormat, validators), + endDate: convertToDate(endDate, inputFormat, validators), + disabledBefore: convertToDate(disabledBefore, inputFormat, validators), + disabledAfter: convertToDate(disabledAfter, inputFormat, validators), + onRangeChange: this.onRangeChangeHandler, + yearNav: yearNav, + monthNav: monthNav, + rangeLimit: rangeLimit + })); + }; + + DateRangePicker.prototype.render = function () { + var _a; + + var _b = this.props, + withInput = _b.withInput, + startInputOptions = _b.startInputOptions, + endInputOptions = _b.endInputOptions, + inputOptions = _b.inputOptions, + inputFormat = _b.inputFormat, + position = _b.position, + validators = _b.validators, + singleInput = _b.singleInput, + contentAlign = _b.contentAlign, + children = _b.children; + var open = this.state.open; + var RangePickerClass = classNames__default["default"]((_a = {}, _a['DateRangePicker'] = true, _a["DateRangePicker--" + contentAlign] = contentAlign, _a)); + + if (withInput) { + var trigger = singleInput ? /*#__PURE__*/React__namespace.createElement(SingleInputTrigger, { + inputFormat: inputFormat, + inputOptions: inputOptions, + validators: validators, + state: this.state, + setState: this.setState.bind(this) + }) : /*#__PURE__*/React__namespace.createElement(Trigger, { + inputFormat: inputFormat, + startInputOptions: startInputOptions, + endInputOptions: endInputOptions, + validators: validators, + state: this.state, + setState: this.setState.bind(this) + }); + return /*#__PURE__*/React__namespace.createElement(Popover, { + trigger: trigger, + triggerClass: "w-100", + className: RangePickerClass, + position: position, + appendToBody: true, + open: open, + onToggle: this.onToggleHandler + }, children, this.renderCalendar()); + } + + return this.renderCalendar(); + }; + + DateRangePicker.utils = { + getCurrentWeek: getCurrentWeek, + getPreviousWeek: getPreviousWeek, + getPreviousMonth: getPreviousMonth, + getPrevious90Days: getPrevious90Days, + getCustomDates: getCustomDates, + getCurrentYear: getCurrentYear, + getCurrentMonth: getCurrentMonth + }; + DateRangePicker.defaultProps = __assign(__assign({}, Calendar.defaultProps), { + children: /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null), + contentAlign: 'left', + monthsInView: undefined, + position: 'bottom-start', + inputFormat: 'mm/dd/yyyy', + outputFormat: 'mm/dd/yyyy', + validators: [date$1], + inputOptions: { + label: 'Date' + }, + startInputOptions: { + label: 'Start Date' + }, + endInputOptions: { + label: 'End Date' + } + }); + return DateRangePicker; + }(React__namespace.Component); + + var TabsWrapper = function TabsWrapper(props) { + var _a; + + var children = props.children, + onTabChange = props.onTabChange, + className = props.className; + var baseProps = extractBaseProps(props); + var tabs = Array.isArray(children) ? children : [children]; + var totalTabs = tabs.length; + + var _b = React__namespace.useState(props.active && props.active < totalTabs ? props.active : 0), + active = _b[0], + setActiveTab = _b[1]; + + React__namespace.useEffect(function () { + setActiveTab(props.active && props.active < totalTabs ? props.active : 0); + }, [props.active]); + var wrapperClass = classNames__default["default"]((_a = {}, _a['TabsWrapper'] = true, _a), className); + + var tabClickHandler = function tabClickHandler(tabIndex) { + setActiveTab(tabIndex); + if (onTabChange) onTabChange(tabIndex); + }; + + var TabsHeader = tabs.map(function (child, index) { + var _a; + + var _b = child.props, + label = _b.label, + disabled = _b.disabled; + var tabHeaderClass = classNames__default["default"]((_a = {}, _a['Tab'] = true, _a['Tab--disabled'] = disabled, _a['Tab--active'] = !disabled && active === index, _a)); + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Tabs--Header", + key: index, + className: tabHeaderClass, + onClick: function onClick() { + return !disabled && tabClickHandler(index); + } + }, label); + }); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-TabsWrapper" + }, baseProps, { + className: wrapperClass + }), /*#__PURE__*/React__namespace.createElement("div", { + className: "TabsWrapper-header" + }, TabsHeader), /*#__PURE__*/React__namespace.createElement("div", { + className: "TabsWrapper-content", + "data-test": "DesignSystem-Tabs--Content" + }, tabs[active])); + }; + TabsWrapper.displayName = 'TabsWrapper'; + + var Tab = function Tab(props) { + var children = props.children; + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, children); + }; + Tab.displayName = 'Tab'; + + var getChildrenArray = function getChildrenArray(children) { + return Array.isArray(children) ? children : [children]; + }; + + var filterTabs = function filterTabs(children) { + var childrenArray = getChildrenArray(children); + var tabs = childrenArray.filter(function (element) { + return typeof element.type === 'function' && element.type.name === Tab.name; + }); + return tabs; + }; + + var filterInlineComponent = function filterInlineComponent(children) { + var childrenArray = getChildrenArray(children); + var inlineComponent = childrenArray.filter(function (element) { + return !(typeof element.type === 'function' && element.type.name === Tab.name); + }); + return inlineComponent; + }; + + var Tabs = function Tabs(props) { + var _a, _b, _c; + + var children = props.children, + withSeparator = props.withSeparator, + onTabChange = props.onTabChange, + className = props.className, + headerClassName = props.headerClassName; + var baseProps = extractBaseProps(props); + var tabRefs = []; + var tabs = children ? filterTabs(children) : props.tabs; + var inlineComponent = children ? filterInlineComponent(children) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null); + var totalTabs = tabs.length; + + var _d = React__namespace.useState(props.activeIndex && props.activeIndex < totalTabs ? props.activeIndex : 0), + activeIndex = _d[0], + setActiveTab = _d[1]; + + React__namespace.useEffect(function () { + if (props.activeIndex !== undefined && props.activeIndex < totalTabs) { + setActiveTab(props.activeIndex); + } + }, [props.activeIndex]); + var wrapperClass = classNames__default["default"]((_a = {}, _a['TabsWrapper'] = true, _a), className); + var headerClass = classNames__default["default"]((_b = {}, _b['TabsWrapper-header'] = true, _b['TabsWrapper-header--withSeparator'] = withSeparator, _b), className, headerClassName); + + var getPillsClass = function getPillsClass(disabled) { + var _a; + + return classNames__default["default"]((_a = {}, _a['Tab-pills'] = true, _a['Tab-pills--disabled'] = disabled, _a)); + }; + + var getActiveTabClass = function getActiveTabClass() { + var _a; + + var activeTab; + var activeTabClass; + + if (tabs && tabs.length && tabs[activeIndex] && 'props' in tabs[activeIndex]) { + activeTab = tabs[activeIndex]; + activeTabClass = (_a = activeTab.props) === null || _a === void 0 ? void 0 : _a.className; + } else { + activeTab = tabs[activeIndex]; + activeTabClass = activeTab && activeTab.className; + } + + return activeTabClass; + }; + + var activeTabClass = getActiveTabClass(); + var tabContentClass = classNames__default["default"]((_c = {}, _c['TabsWrapper-content'] = true, _c["" + activeTabClass] = activeTabClass, _c)); + + var tabClickHandler = function tabClickHandler(tabIndex, isKeyboard) { + var _a; + + if (props.activeIndex === undefined) { + setActiveTab(tabIndex); + if (!isKeyboard) (_a = tabRefs[tabIndex]) === null || _a === void 0 ? void 0 : _a.blur(); + } + + if (onTabChange) onTabChange(tabIndex); + }; + + var tabKeyDownHandler = function tabKeyDownHandler(event, tabIndex) { + if (event.key === 'Enter') { + tabClickHandler(tabIndex, true); + } + + if (event.key === 'ArrowLeft' && tabIndex > 0) { + var prevElement = tabRefs[tabIndex - 1]; + prevElement === null || prevElement === void 0 ? void 0 : prevElement.focus(); + } + + if (event.key === 'ArrowRight' && tabIndex < tabs.length) { + var nextElement = tabRefs[tabIndex + 1]; + nextElement === null || nextElement === void 0 ? void 0 : nextElement.focus(); + } + }; + + var renderInfo = function renderInfo(tab, index) { + var _a; + + var _b = tab, + count = _b.count, + icon = _b.icon, + disabled = _b.disabled, + iconType = _b.iconType; + + if (count !== undefined) { + return /*#__PURE__*/React__namespace.createElement(Pills, { + "data-test": "DesignSystem-Tabs--Pills", + className: getPillsClass(disabled), + appearance: activeIndex === index ? 'primary' : 'secondary' + }, count); + } + + var iconClass = classNames__default["default"]((_a = {}, _a['Tab-selected'] = !disabled && activeIndex === index, _a)); + + if (icon) { + var iconAppearance = activeIndex === index ? 'info' : disabled ? 'disabled' : 'subtle'; + return /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-Tabs--Icon", + className: "mr-4 " + iconClass, + name: icon, + type: iconType, + appearance: iconAppearance + }); + } + + return null; + }; + + var renderDismissIcon = function renderDismissIcon(tab, index, onDismiss) { + var _a = tab, + disabled = _a.disabled, + label = _a.label; + var iconAppearance = activeIndex === index ? 'info' : disabled ? 'disabled' : 'subtle'; + + var dismissIconClass = function dismissIconClass(disabled) { + var _a; + + return classNames__default["default"]((_a = {}, _a["DismissibleTab-icon--right"] = true, _a['DismissibleTab-icon--default'] = !disabled && activeIndex !== index, _a["DismissibleTab-icon--selected"] = !disabled && activeIndex === index, _a['cursor-pointer'] = !disabled, _a['Tab-selected'] = !disabled && activeIndex === index, _a)); + }; + + var tabInfo = { + label: label, + activeIndex: activeIndex, + currentTabIndex: index + }; + + var onCloseHandler = function onCloseHandler(e) { + e.stopPropagation(); + if (onDismiss) onDismiss(tabInfo); + }; + + return /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-DismissibleTabs--Icon", + name: "clear", + appearance: iconAppearance, + className: dismissIconClass(disabled), + onClick: !disabled ? onCloseHandler : undefined, + tabIndex: disabled ? -1 : 0 + }); + }; + + var renderTab = function renderTab(tab, index) { + var _a; + + var _b = tab, + _c = _b.label, + label = _c === void 0 ? '' : _c, + disabled = _b.disabled, + isDismissible = _b.isDismissible, + _d = _b.onDismiss, + onDismiss = _d === void 0 ? function () {} : _d; + + if (typeof label !== 'string') { + return label; + } + + var textAppearance = activeIndex === index ? 'link' : disabled ? 'disabled' : 'subtle'; + var tabTextClass = classNames__default["default"]((_a = {}, _a['Tab-selected'] = !disabled && activeIndex === index, _a)); + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, renderInfo(tab, index), /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-Tabs--Text", + appearance: textAppearance, + className: tabTextClass + }, label), isDismissible && renderDismissIcon(tab, index, onDismiss)); + }; + + var renderTabs = tabs.map(function (tab, index) { + var _a; + + var currentTabProp = children && 'props' in tab ? tab.props : tab; + var disabled = currentTabProp.disabled; + var tabHeaderClass = classNames__default["default"]((_a = {}, _a['Tab'] = true, _a['Tab--disabled'] = disabled, _a['Tab--active'] = !disabled && activeIndex === index, _a['Tab-selected'] = !disabled && activeIndex === index, _a['align-items-center'] = true, _a)); + return /*#__PURE__*/React__namespace.createElement("div", { + ref: function ref(element) { + return element && !disabled && tabRefs.push(element); + }, + "data-test": "DesignSystem-Tabs--Tab", + key: index, + className: tabHeaderClass, + onClick: function onClick() { + return !disabled && tabClickHandler(index); + }, + onKeyDown: function onKeyDown(event) { + return tabKeyDownHandler(event, index); + }, + tabIndex: disabled ? -1 : 0 + }, renderTab(currentTabProp, index)); + }); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-Tabs" + }, baseProps, { + className: wrapperClass + }), /*#__PURE__*/React__namespace.createElement("div", { + className: headerClass, + "data-test": "DesignSystem-Tabs--Header" + }, renderTabs, inlineComponent), children && /*#__PURE__*/React__namespace.createElement("div", { + className: tabContentClass, + "data-test": "DesignSystem-Tabs--Content" + }, tabs[activeIndex])); + }; + Tabs.displayName = 'Tabs'; + Tabs.defaultProps = { + withSeparator: true, + tabs: [] + }; + + var accepts = function accepts(file, acceptedFiles) { + if (file && acceptedFiles) { + var acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(','); + var fileName_1 = file.name || ''; + var mimeType_1 = (file.type || '').toLowerCase(); + var baseMimeType_1 = mimeType_1.replace(/\/.*$/, ''); + return acceptedFilesArray.some(function (type) { + var validType = type.trim().toLowerCase(); + + if (validType.charAt(0) === '.') { + return fileName_1.toLowerCase().endsWith(validType); + } + + if (validType.endsWith('/*')) { + return baseMimeType_1 === validType.replace(/\/.*$/, ''); + } + + return mimeType_1 === validType; + }); + } + + return true; + }; + var isPropagationStopped = function isPropagationStopped(event) { + if (typeof event.isPropagationStopped === 'function') { + return event.isPropagationStopped(); + } + + if (typeof event.cancelBubble !== 'undefined') { + return event.cancelBubble; + } + + return false; + }; + var isEvtWithFiles = function isEvtWithFiles(event) { + if (!event.dataTransfer) { + return !!event.target && !!event.target.files; + } + + return Array.prototype.some.call(event.dataTransfer.types, function (type) { + return type === 'Files' || type === 'application/x-moz-file'; + }); + }; + var onDocumentDragOver = function onDocumentDragOver(event) { + event.preventDefault(); + }; + var composeEventHandlers = function composeEventHandlers() { + var fns = []; + + for (var _i = 0; _i < arguments.length; _i++) { + fns[_i] = arguments[_i]; + } + + return function (event) { + var args = []; + + for (var _i = 1; _i < arguments.length; _i++) { + args[_i - 1] = arguments[_i]; + } + + return fns.some(function (fn) { + if (!isPropagationStopped(event) && fn) { + fn.apply(void 0, __spreadArrays([event], args)); + } + + return isPropagationStopped(event); + }); + }; + }; + var reducer = function reducer(state, action) { + switch (action.type) { + case 'focus': + return __assign(__assign({}, state), { + isFocused: true + }); + + case 'blur': + return __assign(__assign({}, state), { + isFocused: false + }); + + case 'openDialog': + return __assign(__assign({}, state), { + isFileDialogActive: true + }); + + case 'closeDialog': + return __assign(__assign({}, state), { + isFileDialogActive: false + }); + + case 'setDraggedFiles': + var isDragActive = action.isDragActive, + draggedFiles = action.draggedFiles; + return __assign(__assign({}, state), { + draggedFiles: draggedFiles, + isDragActive: isDragActive + }); + + case 'setFiles': + return __assign(__assign({}, state), { + acceptedFiles: action.acceptedFiles, + fileRejections: action.fileRejections + }); + + case 'reset': + return __assign(__assign({}, state), { + isFileDialogActive: false, + isDragActive: false, + draggedFiles: [], + acceptedFiles: [], + fileRejections: [] + }); + + default: + return state; + } + }; + + var fileErrorMessages = { + FILE_INVALID_TYPE: 'File format not accepted', + FILE_TOO_LARGE: 'File is too large', + FILE_TOO_SMALL: 'File is too small', + TOO_MANY_FILES: 'Multiple files are not accepted' + }; + + var isDefined = function isDefined(value) { + return value !== undefined && value !== null; + }; + + var getInvalidTypeRejectionErr = function getInvalidTypeRejectionErr(accept) { + var updatedAccept = Array.isArray(accept) && accept.length === 1 ? accept[0] : accept; + var messageSuffix = Array.isArray(updatedAccept) ? "one of " + updatedAccept.join(', ') : updatedAccept; + return { + type: 'FILE_INVALID_TYPE', + message: "File type must be " + messageSuffix + }; + }; + var getTooLargeRejectionErr = function getTooLargeRejectionErr(maxSize) { + return { + type: 'FILE_TOO_LARGE', + message: "File is larger than " + maxSize + " bytes" + }; + }; + var getTooSmallRejectionErr = function getTooSmallRejectionErr(minSize) { + return { + type: 'FILE_TOO_SMALL', + message: "File is smaller than " + minSize + " bytes" + }; + }; + var fileAccepted = function fileAccepted(file, accept) { + var isAcceptable = file.type === 'application/x-moz-file' || accepts(file, accept); + return [isAcceptable, isAcceptable ? null : getInvalidTypeRejectionErr(accept)]; + }; + var fileMatchSize = function fileMatchSize(file, minSize, maxSize) { + if (isDefined(file.size)) { + if (isDefined(minSize) && isDefined(maxSize)) { + if (file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)]; + if (file.size < minSize) return [false, getTooSmallRejectionErr(minSize)]; + } else if (isDefined(minSize) && file.size < minSize) { + return [false, getTooSmallRejectionErr(minSize)]; + } else if (isDefined(maxSize) && file.size > maxSize) { + return [false, getTooLargeRejectionErr(maxSize)]; + } + } + + return [true, null]; + }; + var getFileError = function getFileError(options) { + var files = options.files, + accept = options.accept, + minSize = options.minSize, + maxSize = options.maxSize, + multiple = options.multiple; + + if (!multiple && files.length > 1) { + return 'TOO_MANY_FILES'; + } + + var typeError = files.every(function (file) { + var accepted = fileAccepted(file, accept)[0]; + return !accepted; + }); + var sizeError = files.every(function (file) { + var sizeMatch = fileMatchSize(file, minSize, maxSize)[0]; + return !sizeMatch; + }); + return typeError ? 'FILE_INVALID_TYPE' : sizeError ? 'FILE_TOO_LARGE' : ''; + }; + var allFilesAccepted = function allFilesAccepted(options) { + var files = options.files, + accept = options.accept, + minSize = options.minSize, + maxSize = options.maxSize, + multiple = options.multiple; + + if (!multiple && files.length > 1) { + return false; + } + + return files.every(function (file) { + var accepted = fileAccepted(file, accept)[0]; + var sizeMatch = fileMatchSize(file, minSize, maxSize)[0]; + return accepted && sizeMatch; + }); + }; + + var COMMON_MIME_TYPES = new Map([['gif', 'image/gif'], ['ico', 'image/x-icon'], ['jpeg', 'image/jpeg'], ['jpg', 'image/jpeg'], ['png', 'image/png'], ['bmp', 'image/bmp'], ['tif', 'image/tiff'], ['tiff', 'image/tiff'], ['apng', 'image/apng'], ['avif', 'image/avif'], ['jfif', 'image/jpeg'], ['pjpeg', 'image/pjpeg'], ['pjp', 'image/jpeg'], ['svg', 'image/svg+xml'], ['webp', 'image/webp'], ['cur', 'image/x-win-bitmap'], ['MTS', 'model/vnd.mts'], ['roq', 'video'], ['f4a', 'video'], ['f4b', 'video'], ['drc', 'video'], ['nsv', 'video'], ['avi', 'video/x-msvideo'], ['mkv', 'video/x-matroska'], ['mov', 'video/quicktime'], ['mp4', 'video/mp4'], ['webm', 'video/webm'], ['flv', 'video/x-flv'], ['vob', 'video/x-ms-vob'], ['ogv', 'video/ogg'], ['ogg', 'application/ogg'], ['gifv', 'image/gif'], ['mng', 'video/x-mng'], ['M2TS', 'video/MP2T'], ['TS', 'video/mp2t'], ['qt', 'video/quicktime'], ['wmv', 'video/x-ms-wmv'], ['yuv', 'application/octet-stream'], ['rm', 'application/vnd.rn-realmedia'], ['rmvb', 'application/vnd.rn-realmedia-vbr'], ['viv', 'video/vnd.vivo'], ['asf', 'video/x-ms-asf'], ['amv', 'video/x-amv'], ['m4v', 'video/x-m4v'], ['mpg', 'video/mpeg'], ['mpeg', 'video/mpeg'], ['mpe', 'video/mpeg'], ['mpv', 'video/mpv'], ['m2v', 'video/mpeg'], ['svi', 'video/x-msvideo'], ['3gp', 'video/3gpp'], ['3g2', 'video/3gpp2'], ['mxf', 'application/mxf'], ['flv', 'video/x-flv'], ['f4v', 'video/x-f4v'], ['f4p', 'video/mp4'], ['aa', 'audio'], ['aax', 'audio'], ['act', 'audio'], ['alac', 'audio'], ['ape', 'audio'], ['awb', 'audio'], ['dss', 'audio'], ['dvf', 'audio'], ['iklax', 'audio'], ['ivs', 'audio'], ['msv', 'audio'], ['nmf', 'audio'], ['mogg', 'audio'], ['raw', 'audio'], ['rf64', 'audio'], ['sln', 'audio'], ['wv', 'audio'], ['8svx', 'audio'], ['3gp', 'audio/3gpp'], ['mp2', 'audio/mpeg'], ['aac', 'audio/x-aac'], ['aiff', 'audio/x-aiff'], ['amr', 'audio/amr'], ['au', 'audio/basic'], ['flac', 'audio/x-flac'], ['gsm', 'audio/gsm'], ['m4a', 'audio/mp4a-latm'], ['m4b', 'audio/mp4a-latm'], ['m4p', 'audio/mp4a-latm'], ['mmf', 'application/vnd.smaf'], ['mp3', 'audio/mpeg'], ['ogg', 'audio/ogg'], ['oga', 'audio/ogg'], ['opus', 'audio/opus'], ['tta', 'audio/x-tta'], ['voc', 'audio/x-voice'], ['wav', 'audio/x-wav'], ['wma', 'audio/x-ms-wma'], ['webm', 'audio/webm'], ['cda ', 'application/x-cdf'], ['ra', 'audio/x-pn-realaudio'], ['vox', 'application/x-authorware-bin'], ['rm', 'application/vnd.rn-realmedia'], ['mpc', 'application/vnd.mophun.certificate'], ['pdf', 'application/pdf'], ['zip', 'application/zip'], ['doc', 'application/msword'], ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'], ['xlss', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'], ['xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'], ['xls', 'application/vnd.ms-excel'], ['odt', 'application/vnd.oasis.opendocument.text'], ['tex', 'application/x-tex'], ['wpd', 'application/wordperfect'], ['ods', 'application/vnd.oasis.opendocument.spreadsheet'], ['csv', 'text/csv'], ['rtf', 'text/rtf'], ['txt', 'text/plain'], ['tsv', 'text/tab-separated-values']]); + var FILES_TO_IGNORE = ['.DS_Store', 'Thumbs.db']; + function fromEvent(evt) { + return __awaiter(this, void 0, void 0, function () { + return __generator(this, function (_a) { + return [2, isDragEvt(evt) && evt.dataTransfer ? getDataTransferFiles(evt.dataTransfer, evt.type) : getInputFiles(evt)]; + }); + }); + } + + function isDragEvt(value) { + return !!value.dataTransfer; + } + + function toFileWithPath(file, path) { + var f = withMimeType(file); + + if (typeof f.path !== 'string') { + var webkitRelativePath = file.webkitRelativePath; + Object.defineProperty(f, 'path', { + value: typeof path === 'string' ? path : typeof webkitRelativePath === 'string' && webkitRelativePath.length > 0 ? webkitRelativePath : file.name, + writable: false, + configurable: false, + enumerable: true + }); + } + + return f; + } + + function withMimeType(file) { + var name = file.name; + var hasExtension = name && name.lastIndexOf('.') !== -1; + + if (hasExtension && !file.type) { + var ext = name.split('.').pop().toLowerCase(); + var type = COMMON_MIME_TYPES.get(ext); + + if (type) { + Object.defineProperty(file, 'type', { + value: type, + writable: false, + configurable: false, + enumerable: true + }); + } + } + + return file; + } + + function getInputFiles(evt) { + var files = isInput(evt.target) ? evt.target.files ? fromList(evt.target.files) : [] : []; + return files.map(function (file) { + return toFileWithPath(file); + }); + } + + function isInput(value) { + return value !== null; + } + + function getDataTransferFiles(dt, type) { + return __awaiter(this, void 0, void 0, function () { + var items, files; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + if (!dt.items) return [3, 2]; + items = fromList(dt.items).filter(function (item) { + return item.kind === 'file'; + }); + + if (type !== 'drop') { + return [2, items]; + } + + return [4, Promise.all(items.map(toFilePromises))]; + + case 1: + files = _a.sent(); + return [2, noIgnoredFiles(flatten(files))]; + + case 2: + return [2, noIgnoredFiles(fromList(dt.files).map(function (file) { + return toFileWithPath(file); + }))]; + } + }); + }); + } + + function noIgnoredFiles(files) { + return files.filter(function (file) { + return FILES_TO_IGNORE.indexOf(file.name) === -1; + }); + } + + function fromList(items) { + var files = []; + + for (var i = 0; i < items.length; i++) { + var file = items[i]; + files.push(file); + } + + return files; + } + + function toFilePromises(item) { + if (typeof item.webkitGetAsEntry !== 'function') { + return fromDataTransferItem(item); + } + + var entry = item.webkitGetAsEntry(); + + if (entry && entry.isDirectory) { + return fromDirEntry(entry); + } + + return fromDataTransferItem(item); + } + + function flatten(items) { + return items.reduce(function (acc, files) { + return __spreadArrays(acc, Array.isArray(files) ? flatten(files) : [files]); + }, []); + } + + function fromDataTransferItem(item) { + var file = item.getAsFile(); + + if (!file) { + return Promise.reject(item + " is not a File"); + } + + var fwp = toFileWithPath(file); + return Promise.resolve(fwp); + } + + function fromEntry(entry) { + return __awaiter(this, void 0, void 0, function () { + return __generator(this, function (_a) { + return [2, entry.isDirectory ? fromDirEntry(entry) : fromFileEntry(entry)]; + }); + }); + } + + function fromDirEntry(entry) { + var reader = entry.createReader(); + return new Promise(function (resolve, reject) { + var entries = []; + + function readEntries() { + var _this = this; + + reader.readEntries(function (batch) { + return __awaiter(_this, void 0, void 0, function () { + var files, err_1, items; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + if (!!batch.length) return [3, 5]; + _a.label = 1; + + case 1: + _a.trys.push([1, 3,, 4]); + + return [4, Promise.all(entries)]; + + case 2: + files = _a.sent(); + resolve(files); + return [3, 4]; + + case 3: + err_1 = _a.sent(); + reject(err_1); + return [3, 4]; + + case 4: + return [3, 6]; + + case 5: + items = Promise.all(batch.map(fromEntry)); + entries.push(items); + readEntries(); + _a.label = 6; + + case 6: + return [2]; + } + }); + }); + }, function (err) { + reject(err); + }); + } + + readEntries(); + }); + } + + function fromFileEntry(entry) { + return __awaiter(this, void 0, void 0, function () { + return __generator(this, function (_a) { + return [2, new Promise(function (resolve, reject) { + entry.file(function (file) { + var fwp = toFileWithPath(file, entry.fullPath); + resolve(fwp); + }, function (err) { + reject(err); + }); + })]; + }); + }); + } + + var initialState = { + isFocused: false, + isFileDialogActive: false, + isDragActive: false, + isDragAccept: false, + isDragReject: false, + draggedFiles: [], + acceptedFiles: [], + fileRejections: [] + }; + var DropzoneBase = function DropzoneBase(props) { + var accept = props.accept, + disabled = props.disabled, + maxSize = props.maxSize, + minSize = props.minSize, + multiple = props.multiple, + onDragEnter = props.onDragEnter, + onDragLeave = props.onDragLeave, + onDragOver = props.onDragOver, + onDrop = props.onDrop, + onDropAccepted = props.onDropAccepted, + onDropRejected = props.onDropRejected, + onFileDialogCancel = props.onFileDialogCancel, + getFilesFromEvent = props.getFilesFromEvent, + preventDropOnDocument = props.preventDropOnDocument, + validator = props.validator; + var rootRef = React.useRef(null); + var inputRef = React.useRef(null); + + var _a = React.useReducer(reducer, initialState), + state = _a[0], + dispatch = _a[1]; + + var isFocused = state.isFocused, + isFileDialogActive = state.isFileDialogActive, + draggedFiles = state.draggedFiles; + var openFileDialog = React.useCallback(function () { + if (inputRef.current) { + dispatch({ + type: 'openDialog' + }); + inputRef.current.value = ''; + inputRef.current.click(); + } + }, [dispatch]); + + var onWindowFocus = function onWindowFocus() { + if (isFileDialogActive) { + setTimeout(function () { + if (inputRef.current) { + var files = inputRef.current.files; + + if (!files || !files.length) { + dispatch({ + type: 'closeDialog' + }); + + if (typeof onFileDialogCancel === 'function') { + onFileDialogCancel(); + } + } + } + }, 300); + } + }; + + React.useEffect(function () { + window.addEventListener('focus', onWindowFocus, false); + return function () { + window.removeEventListener('focus', onWindowFocus, false); + }; + }, [inputRef, isFileDialogActive, onFileDialogCancel]); + var onKeyDownCb = React.useCallback(function (event) { + if (!rootRef.current || !rootRef.current.isEqualNode(event.target)) { + return; + } + + if (event.keyCode === 32 || event.keyCode === 13) { + event.preventDefault(); + openFileDialog(); + } + }, [rootRef, inputRef]); + var onFocusCb = React.useCallback(function () { + dispatch({ + type: 'focus' + }); + }, []); + var onBlurCb = React.useCallback(function () { + dispatch({ + type: 'blur' + }); + }, []); + var dragTargetsRef = React.useRef([]); + + var onDocumentDrop = function onDocumentDrop(event) { + if (event.target instanceof HTMLDivElement && rootRef.current && rootRef.current.contains(event.target)) { + return; + } + + event.preventDefault(); + dragTargetsRef.current = []; + }; + + React.useEffect(function () { + if (preventDropOnDocument) { + document.addEventListener('dragover', onDocumentDragOver, false); + document.addEventListener('drop', onDocumentDrop, false); + } + + return function () { + if (preventDropOnDocument) { + document.removeEventListener('dragover', onDocumentDragOver); + document.removeEventListener('drop', onDocumentDrop); + } + }; + }, [rootRef, preventDropOnDocument]); + var onDragEnterCb = React.useCallback(function (event) { + event.preventDefault(); + event.persist(); + dragTargetsRef.current = __spreadArrays(dragTargetsRef.current, [event.target]); + + if (isEvtWithFiles(event)) { + Promise.resolve(getFilesFromEvent(event)).then(function (files) { + if (isPropagationStopped(event)) { + return; + } + + dispatch({ + draggedFiles: files, + isDragActive: true, + type: 'setDraggedFiles' + }); + + if (onDragEnter) { + onDragEnter(event); + } + }); + } + }, [getFilesFromEvent, onDragEnter]); + var onDragOverCb = React.useCallback(function (event) { + event.preventDefault(); + event.persist(); + + if (event.dataTransfer) { + try { + event.dataTransfer.dropEffect = 'copy'; + } catch (_a) {} + } + + if (isEvtWithFiles(event) && onDragOver) { + onDragOver(event); + } + + return false; + }, [onDragOver]); + var onDragLeaveCb = React.useCallback(function (event) { + event.preventDefault(); + event.persist(); + var targets = dragTargetsRef.current.filter(function (target) { + return rootRef.current && rootRef.current.contains(target); + }); + var targetIdx = targets.indexOf(event.target); + + if (targetIdx !== -1) { + targets.splice(targetIdx, 1); + } + + dragTargetsRef.current = targets; + + if (targets.length > 0) { + return; + } + + dispatch({ + isDragActive: false, + type: 'setDraggedFiles', + draggedFiles: [] + }); + + if (isEvtWithFiles(event) && onDragLeave) { + onDragLeave(event); + } + }, [rootRef, onDragLeave]); + var onDropCb = React.useCallback(function (event) { + event.preventDefault(); + event.persist(); + dragTargetsRef.current = []; + + if (isEvtWithFiles(event)) { + Promise.resolve(getFilesFromEvent(event)).then(function (files) { + if (isPropagationStopped(event)) { + return; + } + + var acceptedFiles = []; + var fileRejections = []; + files.forEach(function (file) { + var _a = fileAccepted(file, accept), + accepted = _a[0], + acceptError = _a[1]; + + var _b = fileMatchSize(file, minSize, maxSize), + sizeMatch = _b[0], + sizeError = _b[1]; + + var customErrors = validator ? validator(file) : null; + + if (accepted && sizeMatch && !customErrors) { + acceptedFiles.push(file); + } else { + var errors = [acceptError, sizeError]; + + if (customErrors) { + errors = errors.concat(customErrors); + } + + var filteredErrors = errors.filter(function (e) { + return e; + }); + fileRejections.push({ + file: file, + errors: filteredErrors + }); + } + }); + dispatch({ + acceptedFiles: acceptedFiles, + fileRejections: fileRejections, + type: 'setFiles' + }); + + if (onDrop) { + onDrop(event, acceptedFiles, fileRejections); + } + + if (fileRejections.length > 0 && onDropRejected) { + onDropRejected(event, fileRejections); + } + + if (acceptedFiles.length > 0 && onDropAccepted) { + onDropAccepted(event, acceptedFiles); + } + }); + } + + dispatch({ + type: 'reset' + }); + }, [multiple, accept, minSize, maxSize, getFilesFromEvent, onDrop, onDropAccepted, onDropRejected]); + + var composeDragHandler = function composeDragHandler(fn) { + return disabled ? null : fn; + }; + + var getRootProps = React.useMemo(function () { + return function (_a) { + var _b; + + if (_a === void 0) { + _a = {}; + } + + var _c = _a.refKey, + refKey = _c === void 0 ? 'ref' : _c; + _a.onKeyDown; + _a.onFocus; + _a.onBlur; + _a.onClick; + var onDragEnterCallback = _a.onDragEnterCallback, + onDragOverCallback = _a.onDragOverCallback, + onDragLeaveCallback = _a.onDragLeaveCallback, + onDropCallback = _a.onDropCallback, + rest = __rest(_a, ["refKey", "onKeyDown", "onFocus", "onBlur", "onClick", "onDragEnterCallback", "onDragOverCallback", "onDragLeaveCallback", "onDropCallback"]); + + return __assign((_b = { + onDragEnter: composeDragHandler(composeEventHandlers(onDragEnterCallback, onDragEnterCb)), + onDragOver: composeDragHandler(composeEventHandlers(onDragOverCallback, onDragOverCb)), + onDragLeave: composeDragHandler(composeEventHandlers(onDragLeaveCallback, onDragLeaveCb)), + onDrop: composeDragHandler(composeEventHandlers(onDropCallback, onDropCb)) + }, _b[refKey] = rootRef, _b), rest); + }; + }, [rootRef, onKeyDownCb, onFocusCb, onBlurCb, onDragEnterCb, onDragOverCb, onDragLeaveCb, onDropCb, disabled]); + var onInputElementClick = React.useCallback(function (event) { + event.stopPropagation(); + }, []); + var getInputProps = React.useMemo(function () { + return function (_a) { + var _b; + + if (_a === void 0) { + _a = {}; + } + + var _c = _a.refKey, + refKey = _c === void 0 ? 'ref' : _c, + onChange = _a.onChange, + onClick = _a.onClick, + rest = __rest(_a, ["refKey", "onChange", "onClick"]); + + var inputProps = (_b = { + accept: accept, + multiple: multiple, + type: 'file', + style: { + display: 'none' + }, + onChange: composeDragHandler(composeEventHandlers(onChange, onDropCb)), + onClick: composeDragHandler(composeEventHandlers(onClick, onInputElementClick)), + autoComplete: 'off', + tabIndex: -1 + }, _b[refKey] = inputRef, _b); + return __assign(__assign({}, inputProps), rest); + }; + }, [inputRef, accept, multiple, onDropCb, disabled]); + var fileCount = draggedFiles.length; + var isDragAccept = fileCount > 0 && allFilesAccepted({ + accept: accept, + minSize: minSize, + maxSize: maxSize, + multiple: multiple, + files: draggedFiles + }); + var isDragReject = fileCount > 0 && !isDragAccept; + var fileError = isDragReject ? getFileError({ + accept: accept, + minSize: minSize, + maxSize: maxSize, + multiple: multiple, + files: draggedFiles + }) : ''; + return __assign(__assign({}, state), { + isDragAccept: isDragAccept, + isDragReject: isDragReject, + getRootProps: getRootProps, + getInputProps: getInputProps, + rootRef: rootRef, + inputRef: inputRef, + draggedFiles: draggedFiles, + fileError: fileError, + isFocused: isFocused && !disabled, + open: composeDragHandler(openFileDialog) + }); + }; + DropzoneBase.displayName = 'DropzoneBase'; + DropzoneBase.defaultProps = { + disabled: false, + getFilesFromEvent: fromEvent, + maxSize: Infinity, + minSize: 0, + multiple: true, + preventDropOnDocument: true, + validator: function validator() { + return null; + } + }; + + var svgCode = { + active: 'M14.6667 53.3333C13.6 53.3333 12.6667 52.9333 11.8667 52.1333C11.0667 51.3333 10.6667 50.4 10.6667 49.3333V39.8H14.6667V49.3333H49.3333V39.8H53.3333V49.3333C53.3333 50.4 52.9333 51.3333 52.1333 52.1333C51.3333 52.9333 50.4 53.3333 49.3333 53.3333H14.6667ZM30 43.1333V18.4L22 26.4L19.1333 23.5333L32 10.6666L44.8667 23.5333L42 26.4L34 18.4V43.1333H30Z', + "default": 'M14.6667 53.3334C13.6 53.3334 12.6667 52.9334 11.8667 52.1334C11.0667 51.3334 10.6667 50.4 10.6667 49.3334V39.8H14.6667V49.3334H49.3333V39.8H53.3333V49.3334C53.3333 50.4 52.9333 51.3334 52.1333 52.1334C51.3333 52.9334 50.4 53.3334 49.3333 53.3334H14.6667ZM32 43.1334L19.1333 30.2667L22 27.4L30 35.4V10.6667H34V35.4L42 27.4L44.8667 30.2667L32 43.1334Z', + error: 'M31.9988 45.3334C32.6218 45.3334 33.1444 45.1227 33.5667 44.7012C33.9889 44.2798 34.2 43.7575 34.2 43.1346C34.2 42.5115 33.9893 41.9889 33.5679 41.5667C33.1464 41.1445 32.6242 40.9334 32.0012 40.9334C31.3782 40.9334 30.8555 41.1441 30.4333 41.5655C30.0111 41.987 29.8 42.5092 29.8 43.1322C29.8 43.7552 30.0107 44.2778 30.4321 44.7C30.8536 45.1223 31.3758 45.3334 31.9988 45.3334ZM32.2117 35.1334C32.7817 35.1334 33.2555 34.9417 33.6333 34.5584C34.0111 34.175 34.2 33.7 34.2 33.1334V20.2667C34.2 19.7 34.0072 19.225 33.6217 18.8417C33.2361 18.4584 32.7583 18.2667 32.1883 18.2667C31.6183 18.2667 31.1444 18.4584 30.7667 18.8417C30.3889 19.225 30.2 19.7 30.2 20.2667V33.1334C30.2 33.7 30.3928 34.175 30.7783 34.5584C31.1639 34.9417 31.6417 35.1334 32.2117 35.1334ZM32.0177 58.6667C28.3407 58.6667 24.8851 57.9667 21.6511 56.5667C18.417 55.1667 15.5889 53.2556 13.1667 50.8334C10.7444 48.4111 8.83333 45.5813 7.43333 42.344C6.03333 39.1066 5.33333 35.6475 5.33333 31.9667C5.33333 28.2859 6.03333 24.8268 7.43333 21.5894C8.83333 18.3521 10.7444 15.5334 13.1667 13.1334C15.5889 10.7334 18.4187 8.83337 21.6561 7.43337C24.8934 6.03337 28.3525 5.33337 32.0333 5.33337C35.7142 5.33337 39.1733 6.03337 42.4106 7.43337C45.648 8.83337 48.4667 10.7334 50.8667 13.1334C53.2667 15.5334 55.1667 18.3556 56.5667 21.6C57.9667 24.8445 58.6667 28.3052 58.6667 31.9823C58.6667 35.6594 57.9667 39.1149 56.5667 42.349C55.1667 45.583 53.2667 48.4071 50.8667 50.8211C48.4667 53.2351 45.6444 55.1463 42.4 56.5544C39.1555 57.9626 35.6948 58.6667 32.0177 58.6667Z' + }; + + var DropzoneIcon = function DropzoneIcon(props) { + var IconStyle = { + height: 'var(--spacing-5)', + width: 'var(--spacing-5)' + }; + return /*#__PURE__*/React__default["default"].createElement("svg", { + style: IconStyle, + className: "Dropzone-icon--" + props.type, + viewBox: "0 0 64 64", + fill: "none", + xmlns: "http://www.w3.org/2000/svg" + }, /*#__PURE__*/React__default["default"].createElement("path", { + d: svgCode[props.name], + className: props.disabled ? 'Dropzone-icon--disabled' : "Dropzone-icon--" + props.name + })); + }; + + var DropzoneActive = function DropzoneActive(props) { + var type = props.type; + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, type !== 'tight' && /*#__PURE__*/React__namespace.createElement(DropzoneIcon, { + name: "active", + type: type + }), /*#__PURE__*/React__namespace.createElement(Text, { + appearance: "link", + size: "large", + weight: "strong" + }, "Drop your files here")); + }; + DropzoneActive.displayName = 'DropzoneActive'; + + var DropzoneError = function DropzoneError(props) { + var type = props.type, + error = props.error; + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, type !== 'tight' && /*#__PURE__*/React__namespace.createElement(DropzoneIcon, { + type: type, + name: "error" + }), /*#__PURE__*/React__namespace.createElement(Text, { + appearance: "destructive", + size: "large", + weight: "strong" + }, error)); + }; + DropzoneError.displayName = 'DropzoneError'; + + var Dropzone = function Dropzone(props) { + var _a, _b; + + var type = props.type, + sizeLabel = props.sizeLabel, + className = props.className, + formatLabel = props.formatLabel, + sampleFileLink = props.sampleFileLink, + disabled = props.disabled; + + var _c = DropzoneBase(props), + open = _c.open, + getRootProps = _c.getRootProps, + getInputProps = _c.getInputProps, + isDragActive = _c.isDragActive, + isDragReject = _c.isDragReject, + fileError = _c.fileError; + + var baseProps = extractBaseProps(props); + var DropzoneClass = classNames__default["default"]((_a = {}, _a['Dropzone'] = true, _a["Dropzone--" + type] = type, _a['Dropzone--disabled'] = disabled, _a['Dropzone--active'] = isDragActive, _a['Dropzone--error'] = isDragReject, _a['Dropzone-animation'] = true, _a['Dropzone-animation--default'] = !isDragActive && type !== 'standard', _a['Dropzone-animation--active'] = isDragActive && !isDragReject && type !== 'standard', _a['Dropzone-standard--default'] = !isDragActive && type === 'standard', _a['Dropzone-standard--active'] = isDragActive && !isDragReject && type === 'standard', _a), className); + var WrapperClass = classNames__default["default"]((_b = {}, _b['DropzoneWrapper'] = true, _b["DropzoneWrapper--" + type] = true, _b)); + + var renderDropzone = function renderDropzone() { + if (isDragReject) return /*#__PURE__*/React__namespace.createElement(DropzoneError, { + type: type, + error: fileErrorMessages[fileError] + }); + if (isDragActive) return /*#__PURE__*/React__namespace.createElement(DropzoneActive, { + type: type + }); + var buttonAccessibilityProps = useAccessibilityProps({ + onClick: open, + 'aria-label': 'Drag your files here or click to select files' + }); + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, type !== 'tight' && /*#__PURE__*/React__namespace.createElement(DropzoneIcon, { + disabled: disabled, + name: "default", + type: type + }), /*#__PURE__*/React__namespace.createElement("div", { + className: WrapperClass, + "data-test": "DesignSystem-Dropzone-Wrapper" + }, /*#__PURE__*/React__namespace.createElement("span", null, /*#__PURE__*/React__namespace.createElement(Text, { + size: "large", + weight: "strong", + className: "mr-2", + appearance: disabled ? 'disabled' : 'default' + }, "Drag your files here or"), /*#__PURE__*/React__namespace.createElement(Text, __assign({ + tabIndex: disabled ? -1 : 0, + className: "ml-2 cursor-pointer", + size: "large", + weight: "strong", + appearance: disabled ? 'disabled' : 'link' + }, buttonAccessibilityProps), "browse files"), /*#__PURE__*/React__namespace.createElement("input", __assign({}, getInputProps()))), formatLabel && /*#__PURE__*/React__namespace.createElement(Text, { + appearance: disabled ? 'disabled' : 'subtle' + }, formatLabel), sizeLabel && /*#__PURE__*/React__namespace.createElement(Text, { + appearance: disabled ? 'disabled' : 'subtle' + }, sizeLabel), sampleFileLink && /*#__PURE__*/React__namespace.createElement("div", { + className: "mt-5" + }, sampleFileLink))); + }; + + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, getRootProps(), baseProps, { + className: DropzoneClass, + "data-test": "DesignSystem-Dropzone" + }), renderDropzone()); + }; + Dropzone.displayName = 'Dropzone'; + Dropzone.defaultProps = __assign(__assign({}, DropzoneBase.defaultProps), { + type: 'standard' + }); + + var FileUploaderFormat = function FileUploaderFormat(props) { + var formatLabel = props.formatLabel; + + if (formatLabel) { + return /*#__PURE__*/React__namespace.createElement(Text, { + size: "small", + appearance: "subtle", + className: "mt-4" + }, formatLabel); + } + + return null; + }; + FileUploaderFormat.displayName = 'FileUploaderFormat'; + + var FileUploaderButton = function FileUploaderButton(props) { + var _a; + + var accept = props.accept, + multiple = props.multiple, + uploadButtonLabel = props.uploadButtonLabel, + disabled = props.disabled, + name = props.name, + className = props.className, + id = props.id, + _onChange = props.onChange; + var baseProps = extractBaseProps(props); + var FileUploaderButtonClass = classNames__default["default"]((_a = {}, _a['FileUploaderButton'] = true, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: FileUploaderButtonClass + }), /*#__PURE__*/React__namespace.createElement(Button, { + type: "button", + disabled: disabled, + icon: "backup" + }, uploadButtonLabel), /*#__PURE__*/React__namespace.createElement("input", { + name: name, + id: id, + "data-test": "DesignSystem-FileUploaderButton--Input", + accept: accept && accept.join(', '), + multiple: multiple, + disabled: disabled, + type: "file", + tabIndex: -1, + className: "FileUploaderButton-input", + onChange: function onChange(event) { + var fileList = event.target.files ? Array.from(event.target.files) : []; + if (_onChange) _onChange(fileList, event); + } + })); + }; + FileUploaderButton.defaultProps = { + uploadButtonLabel: 'Upload files', + disabled: false, + multiple: false + }; + FileUploaderButton.displayName = 'FileUploaderButton'; + + var FileUploader = function FileUploader(props) { + var _a; + + var accept = props.accept, + multiple = props.multiple, + disabled = props.disabled, + title = props.title, + uploadButtonLabel = props.uploadButtonLabel, + sizeLabel = props.sizeLabel, + formatLabel = props.formatLabel, + sampleFileLink = props.sampleFileLink, + className = props.className, + id = props.id, + name = props.name, + onChange = props.onChange; + var baseProps = extractBaseProps(props); + var FileUploaderClass = classNames__default["default"]((_a = {}, _a['FileUploader'] = true, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: FileUploaderClass, + "data-test": "DesignSystem-FileUploader" + }), /*#__PURE__*/React__namespace.createElement(Text, { + weight: "medium" + }, title), /*#__PURE__*/React__namespace.createElement(FileUploaderFormat, { + formatLabel: formatLabel + }), /*#__PURE__*/React__namespace.createElement(Text, { + size: "small", + appearance: "subtle", + className: !formatLabel ? 'mt-4' : '' + }, sizeLabel), sampleFileLink && /*#__PURE__*/React__namespace.createElement("div", { + className: "mt-4" + }, sampleFileLink), /*#__PURE__*/React__namespace.createElement(FileUploaderButton, { + id: id, + name: name, + accept: accept, + multiple: multiple, + disabled: disabled, + uploadButtonLabel: uploadButtonLabel, + onChange: onChange, + className: "mt-5" + })); + }; + FileUploader.defaultProps = Object.assign({}, FileUploaderButton.defaultProps, { + title: 'Upload files', + sizeLabel: 'Maximum size: 25 MB' + }); + FileUploader.displayName = 'FileUploader'; + + var FileUploaderStatus = function FileUploaderStatus(props) { + var progress = props.progress, + status = props.status, + onRetry = props.onRetry; + + switch (status) { + case 'uploading': + return /*#__PURE__*/React__namespace.createElement(ProgressRing, { + size: "small", + value: progress, + className: "mr-4" + }); + + case 'error': + return /*#__PURE__*/React__namespace.createElement(Button, { + appearance: "transparent", + size: "regular", + onClick: onRetry, + icon: "refresh", + className: "mr-2" + }); + + default: + return null; + } + }; + FileUploaderStatus.displayName = 'FileUploaderStatus'; + FileUploaderStatus.defaultProps = { + status: 'completed', + progress: 0 + }; + + var FileUploaderItem = function FileUploaderItem(props) { + var _a; + + var file = props.file, + id = props.id, + status = props.status, + errorMessage = props.errorMessage, + progress = props.progress, + _onClick = props.onClick, + onDelete = props.onDelete, + _onRetry = props.onRetry, + className = props.className; + var name = file.name; + var baseProps = extractBaseProps(props); + var FileItemClass = classNames__default["default"]((_a = {}, _a['FileUploaderItem'] = true, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + "data-test": "DesignSystem-FileUploader--Item", + className: FileItemClass, + onClick: function onClick() { + return _onClick && _onClick(file, id); + } + }), /*#__PURE__*/React__namespace.createElement("div", { + className: "FileUploaderItem-file" + }, /*#__PURE__*/React__namespace.createElement(Text, { + className: "FileUploaderItem-text", + appearance: status === 'completed' ? 'default' : 'subtle' + }, name), /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex align-items-center" + }, /*#__PURE__*/React__namespace.createElement(FileUploaderStatus, { + file: file, + id: id, + status: status, + progress: progress, + onRetry: function onRetry() { + return _onRetry && _onRetry(file, id); + } + }), /*#__PURE__*/React__namespace.createElement(Button, { + "data-test": "DesignSystem-FileUploader--CancelButton", + appearance: "transparent", + size: "regular", + onClick: function onClick() { + return onDelete && onDelete(file, id); + }, + icon: "close" + }))), status === 'error' && /*#__PURE__*/React__namespace.createElement(InlineMessage, { + size: "small", + appearance: "alert", + description: errorMessage + })); + }; + FileUploaderItem.defaultProps = { + status: 'completed', + progress: 0, + errorMessage: 'Network Error' + }; + FileUploaderItem.displayName = 'FileUploaderItem'; + + var FileUploaderList = function FileUploaderList(props) { + var _a; + + var fileList = props.fileList, + onClick = props.onClick, + onDelete = props.onDelete, + onRetry = props.onRetry, + className = props.className; + var baseProps = extractBaseProps(props); + var FileListClass = classNames__default["default"]((_a = {}, _a['FileUploaderList'] = true, _a), className); + if (fileList.length === 0) return null; + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: FileListClass, + "data-test": "DesignSystem-FileUploader--List" + }), fileList.map(function (fileName, i) { + return /*#__PURE__*/React__namespace.createElement(FileUploaderItem, __assign({ + key: i, + onDelete: onDelete, + onRetry: onRetry, + onClick: onClick + }, fileName)); + })); + }; + FileUploaderList.defaultProps = { + fileList: [] + }; + FileUploaderList.displayName = 'FileUploaderList'; + + var resizeCol = function resizeCol(_a, name, el) { + var updateColumnSchema = _a.updateColumnSchema; + var elX = el === null || el === void 0 ? void 0 : el.getBoundingClientRect().x; + + function resizable(ev) { + ev.preventDefault(); + + if (elX) { + updateColumnSchema(name, { + width: ev.pageX - elX + }); + } + } + + window.addEventListener('mousemove', resizable); + window.addEventListener('mouseup', function () { + window.removeEventListener('mousemove', resizable); + }); + }; + var sortColumn = function sortColumn(_a, name, type) { + var sortingList = _a.sortingList, + updateSortingList = _a.updateSortingList; + + var newSortingList = __spreadArrays(sortingList); + + var index = newSortingList.findIndex(function (l) { + return l.name === name; + }); + + if (index !== -1) { + newSortingList = __spreadArrays(newSortingList.slice(0, index), newSortingList.slice(index + 1)); + } + + if (type !== 'unsort') newSortingList.push({ + name: name, + type: type + }); + updateSortingList(newSortingList); + }; + var pinColumn = function pinColumn(_a, name, type) { + var updateColumnSchema = _a.updateColumnSchema; + var schemaUpdate = { + pinned: type !== 'unpin' ? type : undefined + }; + updateColumnSchema(name, schemaUpdate); + }; + var hideColumn = function hideColumn(_a, name, value) { + var updateColumnSchema = _a.updateColumnSchema; + var schemaUpdate = { + hidden: value + }; + updateColumnSchema(name, schemaUpdate); + }; + function getWidth(_a, width) { + var ref = _a.ref, + withCheckbox = _a.withCheckbox; + var isPercent = typeof width === 'string' && width.slice(-1) === '%'; + + if (isPercent) { + var checkboxCell = ref.querySelector('.Grid-cell--checkbox'); + var checkboxWidth = withCheckbox ? (checkboxCell === null || checkboxCell === void 0 ? void 0 : checkboxCell.clientWidth) || 28 : 0; + var gridWidth = ref.clientWidth - checkboxWidth; + return gridWidth * (+width.slice(0, -1) / 100); + } + + return width; + } + function getCellSize(cellType) { + var sizes = { + AVATAR: { + minWidth: 48 + }, + AVATAR_WITH_TEXT: { + width: 256 + }, + AVATAR_WITH_META_LIST: { + width: 256 + }, + ICON: { + minWdth: 48 + }, + STATUS_HINT: { + width: 96 + }, + WITH_META_LIST: { + width: 176 + }, + DEFAULT: { + width: 176 + } + }; + return sizes[cellType]; + } + + var updateBatchData = function updateBatchData(data, rowIndexes, dataUpdate, selectDisabledRow) { + var updatedData = __spreadArrays(data); + + for (var _i = 0, rowIndexes_1 = rowIndexes; _i < rowIndexes_1.length; _i++) { + var rowIndex = rowIndexes_1[_i]; + + if (data[rowIndex].disabled && selectDisabledRow || !data[rowIndex].disabled) { + updatedData[rowIndex] = __assign(__assign({}, updatedData[rowIndex]), dataUpdate); + } + } + + return updatedData; + }; + function translateData(schema, data) { + var newData = __assign({}, data); + + if (schema.translate) { + var translatedData = schema.translate(data); + newData[schema.name] = translatedData !== null && _typeof(translatedData) === 'object' ? __assign(__assign({}, newData[schema.name]), translatedData) : translatedData; + } + + if (newData[schema.name] === null || _typeof(newData[schema.name]) !== 'object') { + newData[schema.name] = { + title: newData[schema.name] + }; + } + + return newData; + } + var filterData = function filterData(schema, data, filterList) { + if (schema === void 0) { + schema = []; + } + + if (data === void 0) { + data = []; + } + + var filteredData = data; + + if (filterList) { + Object.keys(filterList).forEach(function (schemaName) { + var filters = filterList[schemaName]; + var sIndex = schema.findIndex(function (s) { + return s.name === schemaName; + }); + var onFilterChange = schema[sIndex].onFilterChange; + + if (filters.length && onFilterChange) { + filteredData = filteredData.filter(function (d) { + return onFilterChange(d, filters); + }); + } + }); + } + + return filteredData; + }; + var sortData = function sortData(schema, data, sortingList) { + if (schema === void 0) { + schema = []; + } + + if (data === void 0) { + data = []; + } + + var sortedData = __spreadArrays(data); + + sortingList === null || sortingList === void 0 ? void 0 : sortingList.forEach(function (l) { + var sIndex = schema.findIndex(function (s) { + return s.name === l.name; + }); + + if (sIndex !== -1) { + var defaultComparator = function defaultComparator(a, b) { + var aData = translateData(schema[sIndex], a); + var bData = translateData(schema[sIndex], b); + return aData[l.name].title.localeCompare(bData[l.name].title); + }; + + var _a = schema[sIndex].comparator, + comparator = _a === void 0 ? defaultComparator : _a; + sortedData.sort(comparator); + if (l.type === 'desc') sortedData.reverse(); + } + }); + return sortedData; + }; + var paginateData = function paginateData(data, page, pageSize) { + if (data === void 0) { + data = []; + } + + var start = (page - 1) * pageSize; + var end = start + pageSize; + var paginatedData = data.slice(start, end); + return paginatedData; + }; + + var moveToIndex = function moveToIndex(arr, from, to) { + if (from === to) return arr; + var newArr = arr; + + if (from < to) { + newArr = __spreadArrays(arr.slice(0, from), arr.slice(from + 1, to + 1), [arr[from]], arr.slice(to + 1)); + } else { + newArr = __spreadArrays(arr.slice(0, to), [arr[from]], arr.slice(to, from), arr.slice(from + 1)); + } + + return newArr; + }; + var getTotalPages = function getTotalPages(totalRecords, pageSize) { + return Math.ceil(totalRecords / pageSize); + }; + var getSelectAll = function getSelectAll(tableData, selectDisabledRow, clearSelection) { + if (clearSelection) { + return { + indeterminate: false, + checked: false + }; + } + + var data = tableData.filter(function (d) { + return d.disabled && selectDisabledRow || !d.disabled; + }); + + if (data.length) { + var anyUnSelected = data.some(function (d) { + return !d._selected; + }); + var allUnSelected = data.every(function (d) { + return !d._selected; + }); + var indeterminate = data.length >= 0 && anyUnSelected && !allUnSelected; + var checked = !indeterminate && !allUnSelected; + return { + indeterminate: indeterminate, + checked: checked + }; + } + + return { + indeterminate: false, + checked: false + }; + }; + var hasSchema = function hasSchema(schema) { + return schema && !!schema.length; + }; + var getSchema = function getSchema(schema, loading, loaderSchema) { + var response = schema; + + if (!hasSchema(schema) && loading) { + response = loaderSchema; + } + + return response; + }; + var getPluralSuffix = function getPluralSuffix(count) { + return count > 1 ? 's' : ''; + }; + + var defaultProps$1 = { + showHead: true, + loaderSchema: [], + schema: [], + data: [], + totalRecords: 0, + type: 'data', + size: 'standard', + page: 1, + pageSize: 15, + loading: false, + error: false, + sortingList: [], + filterList: {}, + showFilters: true + }; + + var context = /*#__PURE__*/React__namespace.createContext(__assign(__assign({}, defaultProps$1), { + ref: null + })); + var GridProvider = context.Provider; + + var HeaderCell = function HeaderCell(props) { + var context$1 = React__namespace.useContext(context); + var schema = props.schema, + setIsDragged = props.setIsDragged, + colIndex = props.colIndex, + onSelectAll = props.onSelectAll, + onMenuChange = props.onMenuChange, + onFilterChange = props.onFilterChange, + updateColumnSchema = props.updateColumnSchema, + reorderColumn = props.reorderColumn; + var headProps = { + schema: schema, + colIndex: colIndex, + onSelectAll: onSelectAll, + onMenuChange: onMenuChange, + onFilterChange: onFilterChange, + updateColumnSchema: updateColumnSchema, + reorderColumn: reorderColumn, + setIsDragged: setIsDragged + }; + var loading = context$1.loading, + draggable = context$1.draggable, + showMenu = context$1.showMenu, + sortingList = context$1.sortingList, + filterList = context$1.filterList, + headCellTooltip = context$1.headCellTooltip, + showFilters = context$1.showFilters, + schemaProp = context$1.schema; + var _a = schema.sorting, + sorting = _a === void 0 ? true : _a, + name = schema.name, + filters = schema.filters, + pinned = schema.pinned; + var isValidSchema = hasSchema(schemaProp); + var listIndex = sortingList.findIndex(function (l) { + return l.name === name; + }); + var sorted = listIndex !== -1 ? sortingList[listIndex].type : null; + var el = /*#__PURE__*/React__namespace.createRef(); + var sortOptions = [{ + label: 'Sort Ascending', + value: 'sortAsc', + icon: 'arrow_upward' + }, { + label: 'Sort Descending', + value: 'sortDesc', + icon: 'arrow_downward' + }]; + var pinOptions = [{ + label: 'Pin Left', + value: 'pinLeft', + icon: 'skip_previous' + }, { + label: 'Pin Right', + value: 'pinRight', + icon: 'skip_next' + }]; + var unpinOption = { + label: 'Unpin', + value: 'unpin', + icon: 'replay' + }; + if (pinned === 'left') pinOptions[0] = unpinOption; + if (pinned === 'right') pinOptions[1] = unpinOption; + var hideOptions = [{ + label: 'Hide Column', + value: 'hide', + icon: 'cancel' + }]; + var unsortOption = { + label: 'Unsort', + value: 'unsort', + icon: 'unfold_more' + }; + if (sorted === 'asc') sortOptions[0] = unsortOption; + if (sorted === 'desc') sortOptions[1] = unsortOption; + + var options = __spreadArrays(pinOptions, hideOptions); + + if (sorting) options = __spreadArrays(sortOptions, options); + var classes = classNames__default["default"]({ + 'Grid-headCell': true, + 'Grid-headCell--draggable': draggable + }); + var filterOptions = filters ? filters.map(function (f) { + return __assign(__assign({}, f), { + selected: filterList[name] && filterList[name].findIndex(function (fl) { + return fl === f.value; + }) !== -1 + }); + }) : []; + + var renderLabel = function renderLabel() { + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Text, { + weight: "strong", + className: "ellipsis--noWrap" + }, schema.displayName), sorting && /*#__PURE__*/React__namespace.createElement("div", { + className: "Grid-sortingIcons" + }, sorted ? sorted === 'asc' ? /*#__PURE__*/React__namespace.createElement(Icon, { + name: "arrow_upward" + }) : /*#__PURE__*/React__namespace.createElement(Icon, { + name: "arrow_downward" + }) : /*#__PURE__*/React__namespace.createElement(Icon, { + name: "unfold_more" + }))); + }; + + return /*#__PURE__*/React__namespace.createElement("div", { + key: name, + className: classes, + ref: el + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "Grid-cellContent", + "data-test": "DesignSystem-Grid-cellContent", + onClick: function onClick() { + if (!loading && sorting) { + if (sorted === 'asc') onMenuChange(name, 'sortDesc'); + if (sorted === 'desc') onMenuChange(name, 'unsort'); + if (!sorted) onMenuChange(name, 'sortAsc'); + } + } + }, loading && !isValidSchema ? /*#__PURE__*/React__namespace.createElement(Placeholder, { + withImage: false + }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: "medium" + })) : !schema.headerCellRenderer && headCellTooltip ? /*#__PURE__*/React__namespace.createElement(Tooltip, { + position: "top-start", + triggerClass: "w-100 overflow-hidden", + tooltip: schema.displayName + }, renderLabel()) : schema.headerCellRenderer && !headCellTooltip ? schema.headerCellRenderer(headProps) : renderLabel()), showFilters && filters && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, loading && !isValidSchema ? /*#__PURE__*/React__namespace.createElement("span", null, /*#__PURE__*/React__namespace.createElement(Placeholder, null)) : /*#__PURE__*/React__namespace.createElement("div", null, /*#__PURE__*/React__namespace.createElement(Dropdown, { + menu: true, + showApplyButton: true, + withCheckbox: true, + triggerOptions: { + customTrigger: function customTrigger() { + return /*#__PURE__*/React__namespace.createElement(Button, { + icon: "filter_list", + appearance: "transparent" + }); + } + }, + options: filterOptions, + align: 'left', + onChange: function onChange(selected) { + return onFilterChange(name, selected); + }, + minWidth: 176 + }))), showMenu && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, loading && !isValidSchema ? /*#__PURE__*/React__namespace.createElement("span", { + className: "ml-4" + }, /*#__PURE__*/React__namespace.createElement(Placeholder, null)) : /*#__PURE__*/React__namespace.createElement("div", null, /*#__PURE__*/React__namespace.createElement(Dropdown, { + key: name + "-" + sorted + "-" + pinned, + menu: true, + optionType: "WITH_ICON", + triggerOptions: { + customTrigger: function customTrigger() { + return /*#__PURE__*/React__namespace.createElement(Button, { + icon: "more_vert_filled", + appearance: "transparent" + }); + } + }, + options: options, + align: 'left', + onChange: function onChange(selected) { + return onMenuChange(name, selected); + }, + minWidth: 176 + }))), schema.resizable && /*#__PURE__*/React__namespace.createElement("span", { + className: "Grid-cellResize", + onMouseDown: function onMouseDown() { + resizeCol({ + updateColumnSchema: updateColumnSchema + }, name, el.current); + setIsDragged(false); + } + })); + }; + + var BodyCell = function BodyCell(props) { + var context$1 = React__namespace.useContext(context); + var data = props.data, + schema = props.schema, + expandedState = props.expandedState, + rowIndex = props.rowIndex, + colIndex = props.colIndex, + nestedRowData = props.nestedRowData; + var size = context$1.size, + loading = context$1.loading, + nestedRows = context$1.nestedRows; + var expanded = expandedState[0], + setExpanded = expandedState[1]; + var cellProps = { + rowIndex: rowIndex, + colIndex: colIndex, + size: size, + schema: schema, + data: data, + loading: loading, + expanded: expanded + }; + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Grid-cellContent" + }, colIndex === 0 && nestedRows && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, nestedRowData ? /*#__PURE__*/React__namespace.createElement(Icon, { + className: 'Grid-nestedRowTrigger', + name: expanded ? 'keyboard_arrow_up' : 'keyboard_arrow_down', + size: 20, + appearance: 'default', + onClick: function onClick(e) { + if (nestedRowData) { + e.stopPropagation(); + setExpanded(!expanded); + } + } + }) : /*#__PURE__*/React__namespace.createElement("span", { + className: "Grid-nestedRowPlaceholder" + })), schema.cellRenderer ? schema.cellRenderer(cellProps) : /*#__PURE__*/React__namespace.createElement(GridCell, __assign({ + key: rowIndex + "-" + colIndex + }, cellProps))); + }; + + var Cell = function Cell(props) { + var context$1 = React__namespace.useContext(context); + var _a = props, + isHead = _a.isHead, + firstCell = _a.firstCell, + schema = _a.schema, + data = _a.data, + rowIndex = _a.rowIndex, + colIndex = _a.colIndex, + expandedState = _a.expandedState, + onSelectAll = _a.onSelectAll, + onMenuChange = _a.onMenuChange, + onFilterChange = _a.onFilterChange, + updateColumnSchema = _a.updateColumnSchema, + reorderColumn = _a.reorderColumn, + nestedRowData = _a.nestedRowData; + var draggable = context$1.draggable, + separator = context$1.separator, + nestedRows = context$1.nestedRows, + ref = context$1.ref, + withCheckbox = context$1.withCheckbox; + var name = schema.name, + hidden = schema.hidden, + pinned = schema.pinned, + _b = schema.cellType, + cellType = _b === void 0 ? 'DEFAULT' : _b; + + var _c = getCellSize(cellType), + width = _c.width, + _d = _c.minWidth, + minWidth = _d === void 0 ? 96 : _d, + _e = _c.maxWidth, + maxWidth = _e === void 0 ? 800 : _e; + + var _f = React__namespace.useState(false), + isDragged = _f[0], + setIsDragged = _f[1]; + + var cellClass = classNames__default["default"]({ + 'Grid-cell': true, + 'Grid-cell--head': isHead, + 'Grid-cell--dragged': isDragged && draggable, + 'Grid-cell--body': !isHead, + 'Grid-cell--separator': !firstCell && (schema.separator !== undefined ? schema.separator : separator), + 'Grid-cell--nestedRow': !isHead && colIndex === 0 && nestedRows + }); + if (hidden) return null; + return /*#__PURE__*/React__namespace.createElement("div", { + key: rowIndex + "-" + colIndex, + className: cellClass, + draggable: isHead && draggable, + onDragStart: function onDragStart(e) { + if (draggable) { + setIsDragged(true); + e.dataTransfer.setData('name', name); + if (pinned) e.dataTransfer.setData('type', pinned); + } + }, + onDrag: function onDrag() { + setIsDragged(false); + }, + onDragOver: function onDragOver(e) { + return e.preventDefault(); + }, + onMouseUpCapture: function onMouseUpCapture() { + setIsDragged(false); + }, + onDragEnd: function onDragEnd(e) { + e.preventDefault(); + setIsDragged(false); + }, + onDrop: function onDrop(e) { + if (draggable) { + setIsDragged(false); + var from = { + name: e.dataTransfer.getData('name'), + type: e.dataTransfer.getData('type') + }; + var to = { + name: name, + type: pinned || '' + }; + if (from.type === to.type && reorderColumn) reorderColumn(from.name, to.name); + } + }, + style: { + width: getWidth({ + ref: ref, + withCheckbox: withCheckbox + }, schema.width || width), + minWidth: getWidth({ + ref: ref, + withCheckbox: withCheckbox + }, schema.minWidth || minWidth), + maxWidth: getWidth({ + ref: ref, + withCheckbox: withCheckbox + }, schema.maxWidth || maxWidth) + } + }, isHead ? /*#__PURE__*/React__namespace.createElement(HeaderCell, { + colIndex: colIndex, + schema: schema, + onSelectAll: onSelectAll, + onMenuChange: onMenuChange, + onFilterChange: onFilterChange, + updateColumnSchema: updateColumnSchema, + reorderColumn: reorderColumn, + setIsDragged: setIsDragged + }) : /*#__PURE__*/React__namespace.createElement(BodyCell, { + rowIndex: rowIndex, + colIndex: colIndex, + data: data, + schema: schema, + expandedState: expandedState, + nestedRowData: nestedRowData + })); + }; + + var GridHead = function GridHead(props) { + var context$1 = React__namespace.useContext(context); + var schema = props.schema, + onSelectAll = props.onSelectAll, + onMenuChange = props.onMenuChange, + onFilterChange = props.onFilterChange, + updateColumnSchema = props.updateColumnSchema, + reorderColumn = props.reorderColumn; + var withCheckbox = context$1.withCheckbox, + loading = context$1.loading, + selectAll = context$1.selectAll; + var pinnedSchema = schema.filter(function (s) { + return !s.hidden && s.pinned; + }); + var leftPinnedSchema = pinnedSchema.filter(function (s) { + return !s.hidden && s.pinned === 'left'; + }); + var rightPinnedSchema = pinnedSchema.filter(function (s) { + return !s.hidden && s.pinned === 'right'; + }); + var unpinnedSchema = schema.filter(function (s) { + return !s.hidden && !s.pinned; + }); - if (val && !val.includes(placeholderChar)) { - var d = translateToDate(inputFormat, val, validators); - if (d) setState({ - endDate: d - }); - } - } + var renderCheckbox = function renderCheckbox(show) { + if (!show || !withCheckbox) return null; + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Grid-cell Grid-cell--head Grid-cell--checkbox" + }, loading ? /*#__PURE__*/React__namespace.createElement(Placeholder, null) : /*#__PURE__*/React__namespace.createElement(Checkbox, __assign({}, selectAll, { + onChange: onSelectAll + }))); }; - var onBlurHandler = function onBlurHandler(_e, val, type) { - setState({ - init: true - }); + var renderSchema = function renderSchema(currSchema, shouldRenderCheckbox, pinned) { + var _a; - if (type === 'start') { - var _a = startInputOptions.placeholderChar, - placeholderChar = _a === void 0 ? '_' : _a; - if (!val || val.includes(placeholderChar)) setState({ - startDate: undefined - }); + if (currSchema.length) { + var classes = classNames__default["default"]((_a = { + 'Grid-cellGroup': true, + 'Grid-cellGroup--pinned': pinned + }, _a["Grid-cellGroup--pinned-" + pinned] = pinned, _a['Grid-cellGroup--main'] = !pinned, _a)); + return /*#__PURE__*/React__namespace.createElement("div", { + className: classes + }, renderCheckbox(shouldRenderCheckbox), currSchema.map(function (s, index) { + var cI = pinned === 'left' ? index : leftPinnedSchema.length + index; + if (pinned === 'right') cI += unpinnedSchema.length; + return /*#__PURE__*/React__namespace.createElement(Cell, { + key: "" + cI, + firstCell: !index, + colIndex: cI, + isHead: true, + schema: s, + onSelectAll: onSelectAll, + onMenuChange: onMenuChange, + onFilterChange: onFilterChange, + updateColumnSchema: updateColumnSchema, + reorderColumn: reorderColumn + }); + })); } - if (type === 'end') { - var _b = endInputOptions.placeholderChar, - placeholderChar = _b === void 0 ? '_' : _b; - if (!val || val.includes(placeholderChar)) setState({ - endDate: undefined - }); - } + return null; }; - var onClearHandler = function onClearHandler(type) { - setState({ - init: true - }); + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Grid-head", + "data-test": "DesignSystem-GridHead-wrapper" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "Grid-row Grid-row--head" + }, renderSchema(leftPinnedSchema, !!leftPinnedSchema.length, 'left'), renderSchema(unpinnedSchema, !leftPinnedSchema.length && !!unpinnedSchema.length), renderSchema(rightPinnedSchema, false, 'right'))); + }; - if (type === 'start') { - setState({ - startDate: undefined - }); - updateNav('end'); - } + var GridNestedRow = function GridNestedRow(props) { + var context$1 = React__namespace.useContext(context); + var schema = context$1.schema, + loading = context$1.loading, + nestedRowRenderer = context$1.nestedRowRenderer; + var data = props.data, + rowIndex = props.rowIndex, + expanded = props.expanded; + if (nestedRowRenderer) return nestedRowRenderer({ + data: data, + schema: schema, + loading: loading, + rowIndex: rowIndex, + expanded: expanded + }); + return null; + }; - if (type === 'end') { - setState({ - endDate: undefined - }); - updateNav('start'); - } - }; + var GridRow = function GridRow(props) { + var context$1 = React__namespace.useContext(context); + var type = context$1.type, + onRowClick = context$1.onRowClick, + loading = context$1.loading, + withCheckbox = context$1.withCheckbox, + nestedRows = context$1.nestedRows; + var schema = props.schema, + data = props.data, + rI = props.rowIndex, + onSelect = props.onSelect, + className = props.className; + var rowRef = React__namespace.useRef(null); - var onClickHandler = function onClickHandler(type) { - var open = state.open; + var _a = React__namespace.useState(false), + expanded = _a[0], + setExpanded = _a[1]; - if (!open) { - updateNav(type); + var rowClasses = classNames__default["default"]('Grid-row', 'Grid-row--body', { + 'Grid-row--selected': data._selected, + 'Grid-row--disabled': data.disabled + }); + var onClickHandler = React__namespace.useCallback(function () { + if (type === 'resource' && !loading) { + if (onRowClick) { + onRowClick(data, rI); + } } + }, [data, rI]); + var pinnedSchema = schema.filter(function (s) { + return !s.hidden && s.pinned; + }); + var leftPinnedSchema = pinnedSchema.filter(function (s) { + return !s.hidden && s.pinned === 'left'; + }); + var rightPinnedSchema = pinnedSchema.filter(function (s) { + return !s.hidden && s.pinned === 'right'; + }); + var unpinnedSchema = schema.filter(function (s) { + return !s.hidden && !s.pinned; + }); + var nestedProps = { + data: data, + rowIndex: rI, + expanded: expanded }; + var nestedRowData = GridNestedRow(nestedProps); - var mask = date[inputFormat]; - var startPlaceholderChar = startInputOptions.placeholderChar || '_'; - var endPlaceholderChar = endInputOptions.placeholderChar || '_'; - var showStartError = startInputOptions.error || startInputOptions.required && startError && init; - var showEndError = endInputOptions.error || endInputOptions.required && endError && init; - var startErrorMessage = startInputOptions.caption === undefined ? 'Invalid value' : startInputOptions.caption; - var endErrorMessage = endInputOptions.caption === undefined ? 'Invalid value' : endInputOptions.caption; - var startLabel = startInputOptions.label; - var endLabel = endInputOptions.label; - - var inputValidator = function inputValidator(val) { - return isValid(validators, val, inputFormat); - }; - - return /*#__PURE__*/React__namespace.createElement(Row, null, /*#__PURE__*/React__namespace.createElement(Column, { - size: '6', - sizeXS: '12', - className: "DateRangePicker-input DateRangePicker-input--startDate" - }, startLabel && /*#__PURE__*/React__namespace.createElement(Label, { - required: startInputOptions.required, - withInput: true - }, startLabel), /*#__PURE__*/React__namespace.createElement(InputMask, __assign({ - icon: "events", - placeholder: inputFormat - }, startInputOptions, { - mask: mask, - value: startDate ? translateToString(inputFormat, startDate) : init ? InputMask.utils.getDefaultValue(mask, startPlaceholderChar) : '', - onChange: function onChange(e, val) { - onChangeHandler(e, val || '', 'start'); - }, - onBlur: function onBlur(e, val) { - onBlurHandler(e, val || '', 'start'); - }, - onClear: function onClear() { - return onClearHandler('start'); - }, - onClick: function onClick() { - return onClickHandler('start'); - }, - error: showStartError, - caption: showStartError ? startErrorMessage : '', - validators: [inputValidator], - clearOnEmptyBlur: false - }))), /*#__PURE__*/React__namespace.createElement(Column, { - size: '6', - sizeXS: '12', - className: "DateRangePicker-input DateRangePicker-input--endDate" - }, endLabel && /*#__PURE__*/React__namespace.createElement(Label, { - required: endInputOptions.required, - withInput: true - }, endLabel), /*#__PURE__*/React__namespace.createElement(InputMask, __assign({ - icon: "events", - placeholder: inputFormat - }, endInputOptions, { - mask: mask, - value: endDate ? translateToString(inputFormat, endDate) : init ? InputMask.utils.getDefaultValue(mask, endPlaceholderChar) : '', - onChange: function onChange(e, val) { - onChangeHandler(e, val || '', 'end'); - }, - onBlur: function onBlur(e, val) { - onBlurHandler(e, val || '', 'end'); - }, - onClear: function onClear() { - return onClearHandler('end'); - }, - onClick: function onClick() { - return onClickHandler('end'); - }, - error: showEndError, - caption: showEndError ? endErrorMessage : '', - validators: [inputValidator], - clearOnEmptyBlur: false - })))); - }; + var renderCheckbox = function renderCheckbox(show) { + if (!show || !withCheckbox) return null; + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Grid-cell Grid-cell--body Grid-cell--checkbox", + onClick: function onClick(e) { + return e.stopPropagation(); + } + }, loading ? /*#__PURE__*/React__namespace.createElement(Placeholder, null) : /*#__PURE__*/React__namespace.createElement(Checkbox, { + checked: !!data._selected, + onChange: function onChange(event) { + onSelect(rI, event.target.checked); + } + })); + }; - var SingleInputTrigger = function SingleInputTrigger(props) { - var inputFormat = props.inputFormat, - inputOptions = props.inputOptions, - validators = props.validators, - state = props.state, - setState = props.setState; - var init = state.init, - startDate = state.startDate, - endDate = state.endDate, - startValue = state.startValue, - endValue = state.endValue, - startError = state.startError, - endError = state.endError; - var mask = rangeDate[inputFormat]; - var showError = inputOptions.error || inputOptions.required && (startError || endError) && init; - var errorMessage = inputOptions.caption === undefined ? 'Invalid value' : inputOptions.caption; - var label = inputOptions.label; - var _a = inputOptions.placeholderChar, - placeholderChar = _a === void 0 ? '_' : _a; - var defaultValue = InputMask.utils.getDefaultValue(mask, placeholderChar).split(' - '); - var sValue = startValue || defaultValue[0]; - var eValue = endValue || defaultValue[1]; + var renderSchema = function renderSchema(currSchema, shouldRenderCheckbox, pinned) { + var _a; - var inputValidator = function inputValidator(val) { - var _a = val.split(' - '), - startVal = _a[0], - endVal = _a[1]; + if (currSchema.length) { + var classes = classNames__default["default"]((_a = { + 'Grid-cellGroup': true, + 'Grid-cellGroup--pinned': pinned + }, _a["Grid-cellGroup--pinned-" + pinned] = pinned, _a['Grid-cellGroup--main'] = !pinned, _a)); + return /*#__PURE__*/React__namespace.createElement("div", { + className: classes, + "data-test": "DesignSystem-Grid-cellGroup" + }, renderCheckbox(shouldRenderCheckbox), currSchema.map(function (s, index) { + var cI = pinned === 'left' ? index : leftPinnedSchema.length + index; + if (pinned === 'right') cI += unpinnedSchema.length; + return /*#__PURE__*/React__namespace.createElement(Cell, { + key: rI + "-" + cI, + rowIndex: rI, + colIndex: cI, + firstCell: !index, + schema: s, + data: data, + expandedState: [expanded, setExpanded], + nestedRowData: nestedRowData + }); + })); + } - return isValid(validators, startVal, inputFormat) && isValid(validators, endVal, inputFormat); + return null; }; - var onChangeHandler = function onChangeHandler(_e, val) { - var date = val.split(' - '); - var startVal = date[0]; - var endVal = date[1]; + var wrapperClasses = classNames__default["default"](className, { + 'Grid-rowWrapper': true + }); + return /*#__PURE__*/React__namespace.createElement("div", { + className: wrapperClasses + }, /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Grid-row", + className: rowClasses, + onClick: onClickHandler, + ref: rowRef + }, renderSchema(leftPinnedSchema, !!leftPinnedSchema.length, 'left'), renderSchema(unpinnedSchema, !leftPinnedSchema.length && !!unpinnedSchema.length), renderSchema(rightPinnedSchema, false, 'right')), nestedRows && expanded && /*#__PURE__*/React__namespace.createElement("div", { + className: "Grid-nestedRow" + }, nestedRowData)); + }; + GridRow.defaultProps = { + data: {} + }; - if (startValue !== startVal && startVal && !startVal.includes(placeholderChar)) { - var startD = translateToDate(inputFormat, startVal, validators); + var GridBody = function GridBody(props) { + var context$1 = React__namespace.useContext(context); + var data = context$1.data, + ref = context$1.ref, + loading = context$1.loading, + error = context$1.error, + withPagination = context$1.withPagination, + page = context$1.page, + pageSize = context$1.pageSize, + totalRecords = context$1.totalRecords, + errorTemplate = context$1.errorTemplate; - if (startD) { - var isEndDateValid = endValue && !endValue.includes(placeholderChar); - setState({ - startDate: startD, - endDate: isEndDateValid ? endDate : undefined - }); + if (!loading && error) { + return errorTemplate ? typeof errorTemplate === 'function' ? errorTemplate({}) : errorTemplate : null; + } - if (endDate) { - var _a = getDateInfo(endDate), - eYear = _a.year, - eMonth = _a.month, - eDate = _a.date; + var schema = props.schema, + prevPageInfo = props.prevPageInfo, + updatePrevPageInfo = props.updatePrevPageInfo, + onSelect = props.onSelect; + React__namespace.useEffect(function () { + var gridBodyEl = ref.querySelector('.Grid-body'); - if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { - setState({ - endDate: undefined - }); - } + if (gridBodyEl) { + window.requestAnimationFrame(function () { + if (prevPageInfo.page === page) { + gridBodyEl.scrollTop = prevPageInfo.scrollTop; } - } + }); } - if (endValue !== endVal && endVal && !endVal.includes(placeholderChar)) { - var endD = translateToDate(inputFormat, endVal, validators); - var isStartDateValid = startValue && !startValue.includes(placeholderChar); - - if (endD) { - setState({ - endDate: endD, - startDate: isStartDateValid ? startDate : undefined + return function () { + if (gridBodyEl) { + updatePrevPageInfo({ + page: page, + scrollTop: gridBodyEl.scrollTop }); } - } + }; + }, []); + var totalPages = Math.ceil(totalRecords / pageSize); + var isLastPage = withPagination && page === totalPages; + var dataLength = isLastPage ? totalRecords - (page - 1) * pageSize : loading ? pageSize : withPagination ? Math.min(totalRecords, pageSize) : totalRecords; - setState({ - startValue: startVal, - endValue: endVal + var renderRow = function renderRow(rowIndex, item) { + return /*#__PURE__*/React__namespace.createElement(GridRow, { + key: rowIndex, + rowIndex: rowIndex, + data: !item ? data[rowIndex] : item, + schema: schema, + onSelect: onSelect }); }; - var onBlurHandler = function onBlurHandler(_e, val) { - setState({ - init: true - }); - var date = val.split(' - '); - var startVal = date[0]; - var endVal = date[1]; - if (!startVal || startVal.includes(placeholderChar)) setState({ - startDate: undefined - }); - if (!endVal || endVal.includes(placeholderChar)) setState({ - endDate: undefined - }); - }; + var getArrayList = function getArrayList() { + if (loading && !data.length) { + return __spreadArrays(Array(dataLength).map(function (x) { + return x; + })); + } - var onClearHandler = function onClearHandler() { - setState({ - init: true, - startDate: undefined, - endDate: undefined, - yearNav: undefined, - monthNav: undefined - }); + return data; }; - return /*#__PURE__*/React__namespace.createElement(Row, null, /*#__PURE__*/React__namespace.createElement(Column, null, label && /*#__PURE__*/React__namespace.createElement(Label, { - required: inputOptions.required, - withInput: true - }, label), /*#__PURE__*/React__namespace.createElement(InputMask, __assign({ - icon: "events", - placeholder: inputFormat + " - " + inputFormat - }, inputOptions, { - mask: mask, - value: !startDate && !endDate && !init ? undefined : sValue + " - " + eValue, - onChange: function onChange(e, val) { - onChangeHandler(e, val || ''); - }, - onBlur: function onBlur(e, val) { - onBlurHandler(e, val || ''); - }, - onClear: onClearHandler, - error: showError, - caption: showError ? errorMessage : '', - validators: [inputValidator], - clearOnEmptyBlur: false - })))); + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Grid-body" + }, getArrayList().map(function (item, i) { + return renderRow(i, item); + })); }; - var setDate = function setDate(date) { - var d = new Date(); - return new Date(d.setDate(date)); - }; + var Grid = function (_super) { + __extends(Grid, _super); - var getCurrentYear = function getCurrentYear() { - var current = new Date(); - var currentYear = current.getFullYear(); - return currentYear; - }; - var getCurrentMonth = function getCurrentMonth() { - var current = new Date(); - var currentMonth = current.getMonth(); - return currentMonth; - }; - var getCurrentWeek = function getCurrentWeek() { - var current = new Date(); - var currentDate = current.getDate(); - var currentDay = current.getDay(); - return { - startDate: setDate(currentDate - currentDay + 1), - endDate: setDate(currentDate - currentDay + 7) - }; - }; - var getPreviousWeek = function getPreviousWeek() { - var current = new Date(); - var currentDate = current.getDate(); - var currentDay = current.getDay(); - return { - startDate: setDate(currentDate - currentDay - 6), - endDate: setDate(currentDate - currentDay) - }; - }; - var getPreviousMonth = function getPreviousMonth() { - var current = new Date(); - var currentYear = current.getFullYear(); - var currentMonth = current.getMonth(); - return { - endDate: new Date(currentYear, currentMonth, 0), - startDate: new Date(currentYear - +(currentMonth < 0), (currentMonth + 11) % 12, 1) - }; - }; - var getPrevious90Days = function getPrevious90Days() { - var current = new Date(); - var currentDate = current.getDate(); - return { - startDate: setDate(currentDate - 90), - endDate: setDate(currentDate) - }; - }; - var getCustomDates = function getCustomDates() { - var current = new Date(); - var currentDate = current.getDate(); - return { - startDate: setDate(currentDate), - endDate: setDate(currentDate) - }; - }; + function Grid(props) { + var _this = _super.call(this, props) || this; + + _this.gridRef = null; + _this.isHeadSyncing = false; + _this.isBodySyncing = false; - var DateRangePicker = function (_super) { - __extends(DateRangePicker, _super); + _this.syncScroll = function (type) { + return function () { + var gridHeadEl = _this.gridRef.querySelector('.Grid-head'); - function DateRangePicker(props) { - var _this = _super.call(this, props) || this; + var gridBodyEl = _this.gridRef.querySelector('.Grid-body'); - _this.getDate = function (startDate, endDate) { - var inputFormat = _this.props.inputFormat; - var startVal = startDate ? translateToString(inputFormat, startDate) : ''; - var endVal = endDate ? translateToString(inputFormat, endDate) : ''; - return { - startValue: startVal, - endValue: endVal + if (type === 'head') { + if (!_this.isHeadSyncing) { + _this.isBodySyncing = true; + gridBodyEl.scrollLeft = gridHeadEl.scrollLeft; + } + + _this.isHeadSyncing = false; + } + + if (type === 'body') { + if (!_this.isBodySyncing) { + _this.isHeadSyncing = true; + gridHeadEl.scrollLeft = gridBodyEl.scrollLeft; + } + + _this.isBodySyncing = false; + } }; }; - _this.getErrors = function (startDate, endDate) { - var isError = function isError(date) { - var _a = _this.props, - disabledBefore = _a.disabledBefore, - disabledAfter = _a.disabledAfter; + _this.updateRenderedSchema = function (newSchema) { + var updateSchema = _this.props.updateSchema; - var _b = getDateInfo(disabledBefore), - dbYear = _b.year, - dbMonth = _b.month, - dbDate = _b.date; + if (updateSchema) { + updateSchema(newSchema); + } + }; - var _c = getDateInfo(disabledAfter), - daYear = _c.year, - daMonth = _c.month, - daDate = _c.date; + _this.updateColumnSchema = function (name, schemaUpdate) { + var schema = _this.props.schema; - return !date ? true : compareDate(date, 'less', dbYear, dbMonth, dbDate) || compareDate(date, 'more', daYear, daMonth, daDate); - }; + var newSchema = __spreadArrays(schema); - var startError = isError(startDate); - var endError = isError(endDate); + var ind = newSchema.findIndex(function (s) { + return s.name === name; + }); + newSchema[ind] = __assign(__assign({}, newSchema[ind]), schemaUpdate); - var _a = getDateInfo(endDate), - eYear = _a.year, - eMonth = _a.month, - eDate = _a.date; + _this.updateRenderedSchema(newSchema); + }; - if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { - startError = true; - endError = true; + _this.reorderColumn = function (from, to) { + var schema = _this.props.schema; + var fromInd = schema.findIndex(function (s) { + return s.name === from; + }); + var toInd = schema.findIndex(function (s) { + return s.name === to; + }); + var newSchema = moveToIndex(schema, fromInd, toInd); + + _this.updateRenderedSchema(newSchema); + }; + + _this.updateSortingList = function (sortingList) { + var updateSortingList = _this.props.updateSortingList; + + if (updateSortingList) { + updateSortingList(sortingList); } + }; - return { - startError: startError, - endError: endError - }; + _this.updateFilterList = function (filterList) { + var updateFilterList = _this.props.updateFilterList; + + if (updateFilterList) { + updateFilterList(filterList); + } }; - _this.getInRangeError = function () { - var rangeLimit = _this.props.rangeLimit; + _this.onMenuChange = function (name, selected) { + var sortingList = _this.props.sortingList; - if (rangeLimit) { - var _a = _this.state, - startDate = _a.startDate, - endDate = _a.endDate; + switch (selected) { + case 'sortAsc': + sortColumn({ + sortingList: sortingList, + updateSortingList: _this.updateSortingList + }, name, 'asc'); + break; - var _b = getDateInfo(startDate), - sYear = _b.year, - sMonth = _b.month, - sDate = _b.date; + case 'sortDesc': + sortColumn({ + sortingList: sortingList, + updateSortingList: _this.updateSortingList + }, name, 'desc'); + break; - var _c = getDateInfo(endDate), - eYear = _c.year, - eMonth = _c.month, - eDate = _c.date; + case 'unsort': + sortColumn({ + sortingList: sortingList, + updateSortingList: _this.updateSortingList + }, name, 'unsort'); + break; - var limitDate = void 0; + case 'pinLeft': + pinColumn({ + updateColumnSchema: _this.updateColumnSchema + }, name, 'left'); + break; - if (startDate) { - limitDate = new Date(startDate); - limitDate.setDate(sDate + rangeLimit); - return compareDate(limitDate, 'less', eYear, eMonth, eDate + 1); - } + case 'pinRight': + pinColumn({ + updateColumnSchema: _this.updateColumnSchema + }, name, 'right'); + break; - if (endDate) { - limitDate = new Date(endDate); - limitDate.setDate(eDate - rangeLimit); - return compareDate(limitDate, 'more', sYear, sMonth, sDate - 1); - } - } + case 'unpin': + pinColumn({ + updateColumnSchema: _this.updateColumnSchema + }, name, 'unpin'); + break; - return false; + case 'hide': + hideColumn({ + updateColumnSchema: _this.updateColumnSchema + }, name, true); + break; + } }; - _this.onRangeChangeHandler = function (sDate, eDate) { - _this.setState({ - init: true, - startDate: sDate, - endDate: eDate, - startValue: sDate ? translateToString(_this.props.inputFormat, sDate) : '', - endValue: eDate ? translateToString(_this.props.inputFormat, eDate) : '' - }); - }; + _this.onFilterChange = function (name, selected) { + var _a; - _this.onToggleHandler = function (o, type) { - switch (type) { - case 'outsideClick': - _this.setState({ - open: o - }); + var filterList = _this.props.filterList; - break; + var newFilterList = __assign(__assign({}, filterList), (_a = {}, _a[name] = selected, _a)); - case 'onClick': - _this.setState({ - open: true - }); + _this.updateFilterList(newFilterList); + }; - break; + _this.onSelect = function (rowIndex, selected) { + var onSelect = _this.props.onSelect; + + if (onSelect) { + onSelect(rowIndex, selected); } }; - var inputFormat = props.inputFormat, - validators = props.validators; - var startDate = convertToDate(props.startDate, inputFormat, validators); - var endDate = convertToDate(props.endDate, inputFormat, validators); + _this.onSelectAll = function (event) { + var onSelectAll = _this.props.onSelectAll; - var _a = _this.getDate(startDate, endDate), - startValue = _a.startValue, - endValue = _a.endValue; + if (onSelectAll) { + onSelectAll(event.target.checked, undefined, true); + } + }; - var _b = _this.getErrors(startDate, endDate), - startError = _b.startError, - endError = _b.endError; + _this.updatePrevPageInfo = function (value) { + _this.setState({ + prevPageInfo: value + }); + }; + var pageInfo = { + page: 1, + scrollTop: 0 + }; _this.state = { - startDate: startDate, - endDate: endDate, - startValue: startValue, - endValue: endValue, - startError: startError, - endError: endError, init: false, - open: props.open || false, - yearNav: props.yearNav, - monthNav: props.monthNav + prevPageInfo: pageInfo }; - _this.monthsInView = props.monthsInView || (props.withInput ? 2 : 1); return _this; } - DateRangePicker.prototype.componentDidUpdate = function (prevProps, prevState) { - if (prevProps.startDate !== this.props.startDate) { - var _a = this.props, - inputFormat = _a.inputFormat, - validators = _a.validators; - var d = convertToDate(this.props.startDate, inputFormat, validators); - var val = translateToString(inputFormat, d); - this.setState({ - startDate: d, - startValue: val - }); - } + Grid.prototype.componentDidMount = function () { + this.setState({ + init: true + }); + window.addEventListener('resize', this.forceRerender.bind(this)); + }; + + Grid.prototype.forceRerender = function () { + this.forceUpdate(); + }; - if (prevProps.endDate !== this.props.endDate) { - var _b = this.props, - inputFormat = _b.inputFormat, - validators = _b.validators; - var d = convertToDate(this.props.endDate, inputFormat, validators); - var val = translateToString(inputFormat, d); - this.setState({ - endDate: d, - endValue: val - }); - } + Grid.prototype.componentWillUnmount = function () { + this.removeScrollListeners(); + window.removeEventListener('resize', this.forceRerender.bind(this)); + }; - if (prevProps.open !== this.props.open) { - this.setState({ - open: this.props.open || false - }); + Grid.prototype.componentDidUpdate = function (prevProps, prevState) { + if (prevState.init !== this.state.init) { + this.addScrollListeners(); } - if (prevProps.yearNav !== this.props.yearNav) { - this.setState({ - yearNav: this.props.yearNav - }); + if (prevProps.page !== this.props.page || prevProps.error !== this.props.error) { + this.removeScrollListeners(); + this.addScrollListeners(); } + }; - if (prevProps.monthNav !== this.props.monthNav) { - this.setState({ - monthNav: this.props.monthNav - }); + Grid.prototype.addScrollListeners = function () { + var gridHeadEl = this.gridRef.querySelector('.Grid-head'); + var gridBodyEl = this.gridRef.querySelector('.Grid-body'); + + if (gridHeadEl && gridBodyEl) { + gridHeadEl.addEventListener('scroll', this.syncScroll('head')); + gridBodyEl.addEventListener('scroll', this.syncScroll('body')); } + }; - if (prevState.startDate !== this.state.startDate || prevState.endDate !== this.state.endDate) { - var _c = this.props, - onRangeChange = _c.onRangeChange, - outputFormat = _c.outputFormat; - var _d = this.state, - startDate = _d.startDate, - endDate = _d.endDate; + Grid.prototype.removeScrollListeners = function () { + var gridHeadEl = this.gridRef.querySelector('.Grid-head'); + var gridBodyEl = this.gridRef.querySelector('.Grid-body'); - var _e = this.getErrors(startDate, endDate), - startError = _e.startError, - endError = _e.endError; + if (gridHeadEl && gridBodyEl) { + gridHeadEl.removeEventListener('scroll', this.syncScroll('head')); + gridBodyEl.removeEventListener('scroll', this.syncScroll('body')); + } + }; - this.setState({ - startError: startError, - endError: endError - }); + Grid.prototype.render = function () { + var _a; - if (onRangeChange) { - var inRangeError = this.getInRangeError(); - var sValue = translateToString(outputFormat, startDate); - var eValue = translateToString(outputFormat, endDate); + var _this = this; - if (!inRangeError && !startError && !endError) { - onRangeChange(startDate, endDate, sValue, eValue); - } else { - if (!startError) onRangeChange(startDate, undefined, sValue, eValue);else if (!endError) onRangeChange(undefined, endDate, sValue, eValue);else onRangeChange(undefined, undefined, sValue, eValue); - } + var _b; + + var baseProps = extractBaseProps(this.props); + var _c = this.state, + init = _c.init, + prevPageInfo = _c.prevPageInfo; + var _d = this.props, + type = _d.type, + size = _d.size, + showHead = _d.showHead, + className = _d.className, + page = _d.page, + loading = _d.loading, + loaderSchema = _d.loaderSchema; + var schema = getSchema(this.props.schema, loading, loaderSchema); + var classes = classNames__default["default"]((_a = { + Grid: 'true' + }, _a["Grid--" + type] = type, _a["Grid--" + size] = size, _a), className); + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + className: classes + }, baseProps, { + ref: function ref(el) { + _this.gridRef = el; } - } + }), init && /*#__PURE__*/React__namespace.createElement(GridProvider, { + value: __assign(__assign({}, this.props), { + ref: this.gridRef + }) + }, showHead && /*#__PURE__*/React__namespace.createElement(GridHead, { + schema: schema, + onSelectAll: (_b = this.onSelectAll) === null || _b === void 0 ? void 0 : _b.bind(this), + onMenuChange: this.onMenuChange.bind(this), + onFilterChange: this.onFilterChange.bind(this), + updateColumnSchema: this.updateColumnSchema.bind(this), + reorderColumn: this.reorderColumn.bind(this) + }), /*#__PURE__*/React__namespace.createElement(GridBody, { + key: "" + page, + schema: schema, + prevPageInfo: prevPageInfo, + updatePrevPageInfo: this.updatePrevPageInfo.bind(this), + onSelect: this.onSelect.bind(this) + }))); }; - DateRangePicker.prototype.renderCalendar = function () { - var _a = this.props; - _a.startDate; - _a.endDate; - _a.yearNav; - _a.monthNav; - _a.open; - var inputFormat = _a.inputFormat; - _a.outputFormat; - _a.startInputOptions; - _a.endInputOptions; - var validators = _a.validators; - _a.withInput; - _a.position; - var disabledBefore = _a.disabledBefore, - disabledAfter = _a.disabledAfter; - _a.onRangeChange; - var rangeLimit = _a.rangeLimit, - rest = __rest(_a, ["startDate", "endDate", "yearNav", "monthNav", "open", "inputFormat", "outputFormat", "startInputOptions", "endInputOptions", "validators", "withInput", "position", "disabledBefore", "disabledAfter", "onRangeChange", "rangeLimit"]); + return Grid; + }(React__namespace.Component); + Grid.defaultProps = defaultProps$1; - var _b = this.state, - startDate = _b.startDate, - endDate = _b.endDate, - yearNav = _b.yearNav, - monthNav = _b.monthNav; - return /*#__PURE__*/React__namespace.createElement(Calendar, __assign({}, rest, { - monthsInView: this.monthsInView, - rangePicker: true, - startDate: convertToDate(startDate, inputFormat, validators), - endDate: convertToDate(endDate, inputFormat, validators), - disabledBefore: convertToDate(disabledBefore, inputFormat, validators), - disabledAfter: convertToDate(disabledAfter, inputFormat, validators), - onRangeChange: this.onRangeChangeHandler, - yearNav: yearNav, - monthNav: monthNav, - rangeLimit: rangeLimit - })); - }; + var renderTitle = function renderTitle(props) { + var tooltip = props.tooltip, + cellData = props.cellData; + var children = cellData.title; - DateRangePicker.prototype.render = function () { - var _a; + if (children !== undefined && children !== null) { + if (tooltip) { + return /*#__PURE__*/React__namespace.createElement(Tooltip, { + tooltip: children, + position: 'top-start', + triggerClass: "w-100 overflow-hidden" + }, /*#__PURE__*/React__namespace.createElement(Text, { + className: "w-100 ellipsis" + }, children)); + } - var _b = this.props, - withInput = _b.withInput, - startInputOptions = _b.startInputOptions, - endInputOptions = _b.endInputOptions, - inputOptions = _b.inputOptions, - inputFormat = _b.inputFormat, - position = _b.position, - validators = _b.validators, - singleInput = _b.singleInput, - contentAlign = _b.contentAlign, - children = _b.children; - var open = this.state.open; - var RangePickerClass = classNames__default['default']((_a = {}, _a['DateRangePicker'] = true, _a["DateRangePicker--" + contentAlign] = contentAlign, _a)); + return /*#__PURE__*/React__namespace.createElement(Text, { + className: "w-100 ellipsis" + }, children); + } - if (withInput) { - var trigger = singleInput ? /*#__PURE__*/React__namespace.createElement(SingleInputTrigger, { - inputFormat: inputFormat, - inputOptions: inputOptions, - validators: validators, - state: this.state, - setState: this.setState.bind(this) - }) : /*#__PURE__*/React__namespace.createElement(Trigger, { - inputFormat: inputFormat, - startInputOptions: startInputOptions, - endInputOptions: endInputOptions, - validators: validators, - state: this.state, - setState: this.setState.bind(this) - }); - return /*#__PURE__*/React__namespace.createElement(Popover, { - trigger: trigger, - triggerClass: "w-100", - className: RangePickerClass, - position: position, - appendToBody: true, - open: open, - onToggle: this.onToggleHandler - }, children, this.renderCalendar()); - } + return null; + }; - return this.renderCalendar(); - }; + var renderMetaList = function renderMetaList(props) { + var cellData = props.cellData; + var metaList = cellData.metaList; - DateRangePicker.defaultProps = __assign(__assign({}, Calendar.defaultProps), { - children: /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null), - contentAlign: 'left', - monthsInView: undefined, - position: 'bottom-start', - inputFormat: 'mm/dd/yyyy', - outputFormat: 'mm/dd/yyyy', - validators: [date$1], - inputOptions: { - label: 'Date' - }, - startInputOptions: { - label: 'Start Date' - }, - endInputOptions: { - label: 'End Date' - } - }); - return DateRangePicker; - }(React__namespace.Component); - DateRangePicker.utils = { - getCurrentWeek: getCurrentWeek, - getPreviousWeek: getPreviousWeek, - getPreviousMonth: getPreviousMonth, - getPrevious90Days: getPrevious90Days, - getCustomDates: getCustomDates, - getCurrentYear: getCurrentYear, - getCurrentMonth: getCurrentMonth + if (metaList) { + return /*#__PURE__*/React__namespace.createElement("div", { + className: "GridCell-metaList", + "data-test": "DesignSystem-GridCell-metaList" + }, metaList.map(function (list, index) { + return /*#__PURE__*/React__namespace.createElement(Text, { + key: index, + className: "ellipsis", + appearance: 'subtle', + size: "small" + }, list); + })); + } + + return null; }; - var TabsWrapper = function TabsWrapper(props) { - var _a; + var renderAvatar = function renderAvatar(props) { + var cellData = props.cellData; + var firstName = cellData.firstName, + lastName = cellData.lastName, + title = cellData.title; - var children = props.children, - onTabChange = props.onTabChange, - className = props.className; - var baseProps = extractBaseProps(props); - var tabs = Array.isArray(children) ? children : [children]; - var totalTabs = tabs.length; + if (firstName || lastName) { + return /*#__PURE__*/React__namespace.createElement(Avatar, { + className: "mr-5", + firstName: firstName, + lastName: lastName + }); + } - var _b = React__namespace.useState(props.active && props.active < totalTabs ? props.active : 0), - active = _b[0], - setActiveTab = _b[1]; + if (title) { + return /*#__PURE__*/React__namespace.createElement(Avatar, { + className: "mr-5" + }, title); + } - React__namespace.useEffect(function () { - setActiveTab(props.active && props.active < totalTabs ? props.active : 0); - }, [props.active]); - var wrapperClass = classNames__default['default']((_a = {}, _a['TabsWrapper'] = true, _a), className); + return null; + }; - var tabClickHandler = function tabClickHandler(tabIndex) { - setActiveTab(tabIndex); - if (onTabChange) onTabChange(tabIndex); - }; + var renderIcon = function renderIcon(props) { + var cellData = props.cellData; + var title = cellData.title, + icon = cellData.icon; + var iconName = icon || title; - var TabsHeader = tabs.map(function (child, index) { - var _a; + if (iconName) { + return /*#__PURE__*/React__namespace.createElement(Icon, { + name: iconName + }); + } - var _b = child.props, - label = _b.label, - disabled = _b.disabled; - var tabHeaderClass = classNames__default['default']((_a = {}, _a['Tab'] = true, _a['Tab--disabled'] = disabled, _a['Tab--active'] = !disabled && active === index, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - "data-test": "DesignSystem-Tabs--Header", - key: index, - className: tabHeaderClass, - onClick: function onClick() { - return !disabled && tabClickHandler(index); - } - }, label); - }); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-TabsWrapper" - }, baseProps, { - className: wrapperClass - }), /*#__PURE__*/React__namespace.createElement("div", { - className: "TabsWrapper-header" - }, TabsHeader), /*#__PURE__*/React__namespace.createElement("div", { - className: "TabsWrapper-content", - "data-test": "DesignSystem-Tabs--Content" - }, tabs[active])); + return null; }; - TabsWrapper.displayName = 'TabsWrapper'; - var Tab = function Tab(props) { - var children = props.children; - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, children); + var renderStatusHint = function renderStatusHint(props) { + var cellData = props.cellData; + var statusAppearance = cellData.statusAppearance; + var children = cellData.title; + + if (children) { + return /*#__PURE__*/React__namespace.createElement(StatusHint, { + appearance: statusAppearance + }, children); + } + + return null; }; - Tab.displayName = 'Tab'; - var Tabs = function Tabs(props) { + var GridCell = function GridCell(props) { var _a; - var tabs = props.tabs, - withSeparator = props.withSeparator, - onTabChange = props.onTabChange, - className = props.className; - var baseProps = extractBaseProps(props); - var totalTabs = tabs.length; + var size = props.size, + schema = props.schema, + loading = props.loading; + var data = !loading ? translateData(schema, props.data) : {}; + var name = schema.name, + _b = schema.cellType, + cellType = _b === void 0 ? 'DEFAULT' : _b, + _c = schema.align, + align = _c === void 0 ? 'left' : _c, + tooltip = schema.tooltip; + var cellData = data[name]; + var cellClass = classNames__default["default"]((_a = {}, _a['GridCell'] = true, _a)); - var _b = React__namespace.useState(props.activeIndex && props.activeIndex < totalTabs ? props.activeIndex : 0), - activeIndex = _b[0], - setActiveTab = _b[1]; + switch (cellType) { + case 'DEFAULT': + return /*#__PURE__*/React__namespace.createElement("div", { + className: cellClass + " GridCell--align-" + align + " GridCell--default" + }, loading ? /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: "medium", + "data-test": "DesignSystem-GridCell-placeHolder" + }) : renderTitle({ + tooltip: tooltip, + cellData: cellData + })); - React__namespace.useEffect(function () { - if (props.activeIndex !== undefined && props.activeIndex < totalTabs) { - setActiveTab(props.activeIndex); - } - }, [props.activeIndex]); - var tabsClass = classNames__default['default']((_a = {}, _a['Tabs'] = true, _a['Tabs--withSeparator'] = withSeparator, _a), className); + case 'WITH_META_LIST': + return /*#__PURE__*/React__namespace.createElement("div", { + className: cellClass + " GridCell--metaList" + }, loading ? /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: "medium", + "data-test": "DesignSystem-GridCell-withMetaList" + }), /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: "large", + size: "xxs" + })) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, renderTitle({ + tooltip: tooltip, + cellData: cellData + }), renderMetaList({ + cellData: cellData + }))); - var getPillsClass = function getPillsClass(disabled) { - var _a; + case 'AVATAR': + if (loading) { + return /*#__PURE__*/React__namespace.createElement(Placeholder, { + className: "GridCell--align-" + align, + imageSize: 'medium', + round: true + }); + } - return classNames__default['default']((_a = {}, _a['Tabs-pills'] = true, _a['Tabs-pills--disabled'] = disabled, _a)); - }; + return /*#__PURE__*/React__namespace.createElement("div", { + className: cellClass + " GridCell--align-" + align + " GridCell--avatar", + "data-test": "DesignSystem-GridCell-avatar" + }, size !== 'tight' && renderAvatar({ + cellData: cellData + })); - var tabClickHandler = function tabClickHandler(tabIndex, isKeyboard) { - var _a; + case 'AVATAR_WITH_TEXT': + if (loading) { + return /*#__PURE__*/React__namespace.createElement(Placeholder, { + imageSize: 'medium', + round: true + }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + className: "ml-3", + length: "medium" + })); + } - if (props.activeIndex === undefined) { - setActiveTab(tabIndex); - if (!isKeyboard) (_a = tabRefs[tabIndex]) === null || _a === void 0 ? void 0 : _a.blur(); - } + return /*#__PURE__*/React__namespace.createElement("div", { + className: cellClass + " ", + "data-test": "DesignSystem-GridCell-avatarWithText" + }, size !== 'tight' && renderAvatar({ + cellData: cellData + }), renderTitle({ + tooltip: tooltip, + cellData: cellData + })); - if (onTabChange) onTabChange(tabIndex); - }; + case 'AVATAR_WITH_META_LIST': + if (loading) { + return /*#__PURE__*/React__namespace.createElement(Placeholder, { + imageSize: 'medium', + round: true + }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + className: "ml-3", + length: "medium" + }), /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + className: "ml-3", + length: "large" + })); + } - var tabRefs = []; + return /*#__PURE__*/React__namespace.createElement("div", { + className: cellClass + " GridCell--avatarWithText", + "data-test": "DesignSystem-GridCell-avatarWithMetaList" + }, size !== 'tight' && renderAvatar({ + cellData: cellData + }), /*#__PURE__*/React__namespace.createElement("div", { + className: "GridCell-metaListWrapper" + }, renderTitle({ + tooltip: tooltip, + cellData: cellData + }), renderMetaList({ + cellData: cellData + }))); - var tabKeyDownHandler = function tabKeyDownHandler(event, tabIndex) { - if (event.key === 'Enter') { - tabClickHandler(tabIndex, true); - } + case 'ICON': + if (loading) { + return /*#__PURE__*/React__namespace.createElement(Placeholder, { + className: "GridCell--align-" + align, + imageSize: 'small', + round: true + }); + } - if (event.key === 'ArrowLeft' && tabIndex > 0) { - var prevElement = tabRefs[tabIndex - 1]; - prevElement === null || prevElement === void 0 ? void 0 : prevElement.focus(); - } + return /*#__PURE__*/React__namespace.createElement("div", { + className: cellClass + " GridCell--align-" + align + " GridCell--icon", + "data-test": "DesignSystem-GridCell-icon" + }, renderIcon({ + cellData: cellData + })); - if (event.key === 'ArrowRight' && tabIndex < tabs.length) { - var nextElement = tabRefs[tabIndex + 1]; - nextElement === null || nextElement === void 0 ? void 0 : nextElement.focus(); - } - }; + case 'STATUS_HINT': + return /*#__PURE__*/React__namespace.createElement("div", { + className: cellClass + " GridCell--align-" + align + " GridCell--statusHint" + }, loading ? /*#__PURE__*/React__namespace.createElement(Placeholder, { + className: "w-75 flex-grow-0", + imageSize: 'small', + round: true + }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: "large" + })) : renderStatusHint({ + cellData: cellData + })); + } - var renderInfo = function renderInfo(tab, index) { - var count = tab.count, - icon = tab.icon, - disabled = tab.disabled; + return null; + }; + GridCell.displayName = 'GridCell'; + + var DraggableDropdown = function DraggableDropdown(props) { + var options = props.options, + onChange = props.onChange; + + var _a = React__namespace.useState(false), + open = _a[0], + setOpen = _a[1]; + + var _b = React__namespace.useState(options), + tempOptions = _b[0], + setTempOptions = _b[1]; + + var _c = React__namespace.useState('var(--spacing-8)'), + triggerWidth = _c[0], + setTriggerWidth = _c[1]; - if (count !== undefined) { - return /*#__PURE__*/React__namespace.createElement(Pills, { - "data-test": "DesignSystem-Tabs--Pills", - className: getPillsClass(disabled), - appearance: activeIndex === index ? 'primary' : 'secondary' - }, count); - } + React__namespace.useEffect(function () { + setTempOptions(options); + }, [open]); - if (icon) { - var iconAppearance = activeIndex === index ? 'info' : disabled ? 'disabled' : 'subtle'; - return /*#__PURE__*/React__namespace.createElement(Icon, { - "data-test": "DesignSystem-Tabs--Icon", - className: "mr-4", - name: icon, - appearance: iconAppearance + var handleParentChange = function handleParentChange(e) { + setTempOptions(tempOptions.map(function (option) { + return __assign(__assign({}, option), { + selected: e.target.checked }); - } - - return null; + })); }; - var renderTabs = function renderTabs() { - return tabs.map(function (tab, index) { - var _a; + var handleChildChange = function handleChildChange(e, index) { + var newOptions = __spreadArrays(tempOptions); - var label = tab.label, - disabled = tab.disabled; - var textAppearance = activeIndex === index ? 'link' : disabled ? 'disabled' : 'subtle'; - var tabHeaderClass = classNames__default['default']((_a = {}, _a['Tab'] = true, _a['Tab--disabled'] = disabled, _a['Tab--active'] = !disabled && activeIndex === index, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - ref: function ref(element) { - return element && !disabled && tabRefs.push(element); - }, - "data-test": "DesignSystem-Tabs--Tab", - key: index, - className: tabHeaderClass, - onClick: function onClick() { - return !disabled && tabClickHandler(index); - }, - onKeyDown: function onKeyDown(event) { - return tabKeyDownHandler(event, index); - }, - tabIndex: activeIndex === index ? 0 : -1 - }, renderInfo(tab, index), /*#__PURE__*/React__namespace.createElement(Text, { - "data-test": "DesignSystem-Tabs--Text", - appearance: textAppearance - }, label)); + newOptions[index] = __assign(__assign({}, newOptions[index]), { + selected: e.target.checked }); + setTempOptions(newOptions); }; - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - "data-test": "DesignSystem-Tabs" - }, baseProps, { - className: tabsClass - }), renderTabs()); - }; - Tabs.displayName = 'Tabs'; - Tabs.defaultProps = { - withSeparator: true - }; + var onToggleHandler = function onToggleHandler(newOpen) { + setOpen(newOpen); + }; - var accepts = function accepts(file, acceptedFiles) { - if (file && acceptedFiles) { - var acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(','); - var fileName_1 = file.name || ''; - var mimeType_1 = (file.type || '').toLowerCase(); - var baseMimeType_1 = mimeType_1.replace(/\/.*$/, ''); - return acceptedFilesArray.some(function (type) { - var validType = type.trim().toLowerCase(); + var onCancelHandler = function onCancelHandler() { + setOpen(false); + }; - if (validType.charAt(0) === '.') { - return fileName_1.toLowerCase().endsWith(validType); - } + var onApplyHandler = function onApplyHandler() { + setOpen(false); + if (onChange) onChange(tempOptions); + }; - if (validType.endsWith('/*')) { - return baseMimeType_1 === validType.replace(/\/.*$/, ''); + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Dropdown" + }, /*#__PURE__*/React__namespace.createElement(Popover, { + open: open, + onToggle: onToggleHandler, + trigger: /*#__PURE__*/React__namespace.createElement(Button, { + type: "button", + ref: function ref(el) { + setTriggerWidth((el === null || el === void 0 ? void 0 : el.clientWidth) + "px"); + }, + size: "tiny", + appearance: "transparent", + icon: "keyboard_arrow_down_filled", + iconAlign: "right" + }, "Showing " + options.filter(function (option) { + return option.selected; + }).length + " of " + options.length + " column" + getPluralSuffix(options.length)), + triggerClass: "w-100", + customStyle: { + width: triggerWidth + }, + className: "Header-draggableDropdown" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "Dropdown-wrapper" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "OptionWrapper" + }, /*#__PURE__*/React__namespace.createElement(Checkbox, { + className: "OptionCheckbox", + label: "Select All", + checked: tempOptions.every(function (option) { + return option.selected; + }), + indeterminate: tempOptions.some(function (option) { + return option.selected; + }) && tempOptions.some(function (option) { + return !option.selected; + }), + onChange: handleParentChange + })), tempOptions.map(function (option, index) { + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Table-Header--draggableDropdownOption", + key: option.value, + className: "OptionWrapper d-flex flex-space-between align-items-center cursor-pointer", + draggable: true, + onDragStart: function onDragStart(e) { + e.dataTransfer.setData('index', "" + index); + }, + onDragOver: function onDragOver(e) { + return e.preventDefault(); + }, + onDrop: function onDrop(e) { + var from = +e.dataTransfer.getData('index'); + var to = index; + if (from !== to) setTempOptions(moveToIndex(tempOptions, from, to)); + } + }, /*#__PURE__*/React__namespace.createElement(Checkbox, { + className: "OptionCheckbox", + name: option.value, + label: option.label, + checked: tempOptions[index].selected, + onChange: function onChange(e) { + return handleChildChange(e, index); } + }), /*#__PURE__*/React__namespace.createElement(Icon, { + name: "drag_handle", + className: "mr-4" + })); + })), /*#__PURE__*/React__namespace.createElement("div", { + className: "Dropdown-buttonWrapper" + }, /*#__PURE__*/React__namespace.createElement(Button, { + type: "button", + className: "mr-4", + size: "tiny", + onClick: onCancelHandler + }, "Cancel"), /*#__PURE__*/React__namespace.createElement(Button, { + type: "button", + appearance: "primary", + size: "tiny", + onClick: onApplyHandler + }, "Apply")))); + }; - return mimeType_1 === validType; - }); - } + var Header = function Header(props) { + var _a; - return true; - }; - var isPropagationStopped = function isPropagationStopped(event) { - if (typeof event.isPropagationStopped === 'function') { - return event.isPropagationStopped(); - } + var loading = props.loading, + error = props.error, + data = props.data, + displayData = props.displayData, + schema = props.schema, + withSearch = props.withSearch, + showHead = props.showHead, + withPagination = props.withPagination, + page = props.page, + pageSize = props.pageSize, + withCheckbox = props.withCheckbox, + children = props.children, + updateSchema = props.updateSchema, + _b = props.filterList, + filterList = _b === void 0 ? {} : _b, + updateFilterList = props.updateFilterList, + _c = props.totalRecords, + totalRecords = _c === void 0 ? 0 : _c, + onSelectAll = props.onSelectAll, + searchPlaceholder = props.searchPlaceholder, + selectAll = props.selectAll, + searchTerm = props.searchTerm, + updateSearchTerm = props.updateSearchTerm, + globalActionRenderer = props.globalActionRenderer, + dynamicColumn = props.dynamicColumn, + allowSelectAll = props.allowSelectAll, + showFilters = props.showFilters, + customSelectionLabel = props.customSelectionLabel, + selectedRowsRef = props.selectedRowsRef, + selectedAllRef = props.selectedAllRef, + onClearSelection = props.onClearSelection, + onSelectAllRows = props.onSelectAllRows, + selectionActionRenderer = props.selectionActionRenderer, + uniqueColumnName = props.uniqueColumnName; + + var _d = React__namespace.useState(false), + selectAllRecords = _d[0], + setSelectAllRecords = _d[1]; - if (typeof event.cancelBubble !== 'undefined') { - return event.cancelBubble; - } + var _e = React__namespace.useState(true), + flag = _e[0], + setFlag = _e[1]; - return false; - }; - var isEvtWithFiles = function isEvtWithFiles(event) { - if (!event.dataTransfer) { - return !!event.target && !!event.target.files; - } + var customLabel = customSelectionLabel ? customSelectionLabel : 'item'; + var selectedCount = data.filter(function (d) { + return d._selected; + }).length; + var startIndex = (page - 1) * pageSize + 1; + var endIndex = Math.min(page * pageSize, totalRecords); + var selectedRowsCount = (selectedAllRef === null || selectedAllRef === void 0 ? void 0 : selectedAllRef.current) === true ? totalRecords : ((_a = selectedRowsRef === null || selectedRowsRef === void 0 ? void 0 : selectedRowsRef.current) === null || _a === void 0 ? void 0 : _a.length) || 0; + var showSelectedRowLabel = withCheckbox && (selectedCount || selectedRowsCount > 0); - return Array.prototype.some.call(event.dataTransfer.types, function (type) { - return type === 'Files' || type === 'application/x-moz-file'; - }); - }; - var onDocumentDragOver = function onDocumentDragOver(event) { - event.preventDefault(); - }; - var composeEventHandlers = function composeEventHandlers() { - var fns = []; + var _f = React__namespace.useState(true), + showSelectedLabel = _f[0], + setShowSelectedLabel = _f[1]; - for (var _i = 0; _i < arguments.length; _i++) { - fns[_i] = arguments[_i]; - } + var _g = React__namespace.useState(false), + animateSelectedLabel = _g[0], + setAnimateSelectedLabel = _g[1]; - return function (event) { - var args = []; + var _h = React__namespace.useState(false), + animateUnSelectedLabel = _h[0], + setAnimateUnSelectedLabel = _h[1]; - for (var _i = 1; _i < arguments.length; _i++) { - args[_i - 1] = arguments[_i]; + React__namespace.useEffect(function () { + if (showSelectedRowLabel) { + setAnimateUnSelectedLabel(true); + setAnimateSelectedLabel(false); + } else { + setAnimateUnSelectedLabel(false); + setAnimateSelectedLabel(true); } + }, [showSelectedRowLabel]); - return fns.some(function (fn) { - if (!isPropagationStopped(event) && fn) { - fn.apply(void 0, __spreadArrays([event], args)); - } + var onUnSelectAnimationEnd = function onUnSelectAnimationEnd() { + showSelectedRowLabel ? setShowSelectedLabel(true) : setShowSelectedLabel(false); + setAnimateSelectedLabel(true); + setAnimateUnSelectedLabel(false); + }; - return isPropagationStopped(event); - }); + var onSelectAnimationEnd = function onSelectAnimationEnd() { + showSelectedRowLabel ? setShowSelectedLabel(true) : setShowSelectedLabel(false); + setAnimateSelectedLabel(false); + setAnimateUnSelectedLabel(true); }; - }; - var reducer = function reducer(state, action) { - switch (action.type) { - case 'focus': - return __assign(__assign({}, state), { - isFocused: true - }); - case 'blur': - return __assign(__assign({}, state), { - isFocused: false - }); + var unselectedRowLabelClass = classNames__default["default"]({ + 'Table-Header-Label--hide': animateUnSelectedLabel && showSelectedRowLabel, + 'Table-Header-Label--show': animateUnSelectedLabel && !showSelectedRowLabel + }); + var selectedRowLabelClass = classNames__default["default"]({ + 'Table-Header-Label--hide': animateSelectedLabel && !showSelectedRowLabel, + 'Table-Header-Label--show': animateSelectedLabel && showSelectedRowLabel + }); + React__namespace.useEffect(function () { + setFlag(!flag); + }, [schema]); + React__namespace.useEffect(function () { + if (selectAll && selectAll.checked) { + if (onSelectAll) onSelectAll(true, selectAllRecords); + } + }, [selectAllRecords]); + React__namespace.useEffect(function () { + if (selectAll && !selectAll.checked) setSelectAllRecords(false); + }, [selectAll]); + var filterSchema = schema.filter(function (s) { + return s.filters; + }); - case 'openDialog': - return __assign(__assign({}, state), { - isFileDialogActive: true - }); + var onSearchChange = function onSearchChange(e) { + var value = e.target.value; + + if (updateSearchTerm) { + updateSearchTerm(value); + } + }; - case 'closeDialog': - return __assign(__assign({}, state), { - isFileDialogActive: false - }); + var onFilterChange = function onFilterChange(name, filters) { + var _a; - case 'setDraggedFiles': - var isDragActive = action.isDragActive, - draggedFiles = action.draggedFiles; - return __assign(__assign({}, state), { - draggedFiles: draggedFiles, - isDragActive: isDragActive - }); + var newFilterList = __assign(__assign({}, filterList), (_a = {}, _a[name] = filters, _a)); - case 'setFiles': - return __assign(__assign({}, state), { - acceptedFiles: action.acceptedFiles, - fileRejections: action.fileRejections - }); + if (updateFilterList) { + updateFilterList(newFilterList); + } + }; - case 'reset': - return __assign(__assign({}, state), { - isFileDialogActive: false, - isDragActive: false, - draggedFiles: [], - acceptedFiles: [], - fileRejections: [] + var columnOptions = schema.map(function (s) { + return { + label: s.displayName, + value: s.name, + selected: !s.hidden + }; + }); + + var onDynamicColumnUpdate = function onDynamicColumnUpdate(options) { + var newSchema = options.map(function (option) { + return __assign(__assign({}, schema.find(function (colSchema) { + return colSchema.name === option.value; + })), { + hidden: !option.selected }); + }); + if (updateSchema) updateSchema(newSchema); + }; - default: - return state; - } - }; + var getUnSelectedRowLabel = function getUnSelectedRowLabel() { + if (error) { + return "Showing 0 " + customLabel + "s"; + } else if (withPagination) { + return "Showing " + startIndex + "-" + endIndex + " of " + totalRecords + " " + customLabel + getPluralSuffix(totalRecords); + } - var fileErrorMessages = { - FILE_INVALID_TYPE: 'File format not accepted', - FILE_TOO_LARGE: 'File is too large', - FILE_TOO_SMALL: 'File is too small', - TOO_MANY_FILES: 'Multiple files are not accepted' - }; + return "Showing " + totalRecords + " " + customLabel + getPluralSuffix(totalRecords); + }; - var isDefined = function isDefined(value) { - return value !== undefined && value !== null; - }; + var getSelectedRowLabel = function getSelectedRowLabel() { + if (selectedRowsCount > 0 && uniqueColumnName && withCheckbox) { + return "Selected " + selectedRowsCount + " " + customLabel + getPluralSuffix(selectedRowsCount); + } else if (selectedCount && !uniqueColumnName && withCheckbox) { + return "Selected " + selectedCount + " " + customLabel + getPluralSuffix(selectedCount); + } else if (withPagination) { + return "Showing " + startIndex + "-" + endIndex + " of " + totalRecords + " " + customLabel + getPluralSuffix(totalRecords); + } - var getInvalidTypeRejectionErr = function getInvalidTypeRejectionErr(accept) { - var updatedAccept = Array.isArray(accept) && accept.length === 1 ? accept[0] : accept; - var messageSuffix = Array.isArray(updatedAccept) ? "one of " + updatedAccept.join(', ') : updatedAccept; - return { - type: 'FILE_INVALID_TYPE', - message: "File type must be " + messageSuffix - }; - }; - var getTooLargeRejectionErr = function getTooLargeRejectionErr(maxSize) { - return { - type: 'FILE_TOO_LARGE', - message: "File is larger than " + maxSize + " bytes" - }; - }; - var getTooSmallRejectionErr = function getTooSmallRejectionErr(minSize) { - return { - type: 'FILE_TOO_SMALL', - message: "File is smaller than " + minSize + " bytes" + return "Showing " + totalRecords + " " + customLabel + getPluralSuffix(totalRecords); }; + + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Header" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "Header-content Header-content--top" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex w-100" + }, withSearch && /*#__PURE__*/React__namespace.createElement("div", { + className: "Header-search" + }, /*#__PURE__*/React__namespace.createElement(Input, { + "data-test": "DesignSystem-Table-Header--withSearch", + name: "GridHeader-search", + icon: "search", + placeholder: searchPlaceholder, + onChange: onSearchChange, + value: searchTerm, + onClear: function onClear() { + return updateSearchTerm && updateSearchTerm(''); + }, + disabled: loading && !hasSchema(schema), + autoComplete: "off" + })), showFilters && filterSchema.length > 0 && /*#__PURE__*/React__namespace.createElement("div", { + className: "Header-dropdown" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "Header-filters" + }, filterSchema.map(function (s) { + var name = s.name, + displayName = s.displayName, + filters = s.filters; + var filterOptions = filters ? filters.map(function (f) { + return __assign(__assign({}, f), { + selected: filterList[name] && filterList[name].findIndex(function (fl) { + return fl === f.value; + }) !== -1 + }); + }) : []; + return /*#__PURE__*/React__namespace.createElement(Dropdown, { + key: name, + withCheckbox: true, + showApplyButton: true, + inlineLabel: displayName, + icon: 'filter_list', + options: filterOptions, + onChange: function onChange(selected) { + return onFilterChange(name, selected); + } + }); + }))), children && /*#__PURE__*/React__namespace.createElement("div", { + className: "Header-actions" + }, children)), globalActionRenderer && /*#__PURE__*/React__namespace.createElement("div", { + className: "Header-global-actions" + }, globalActionRenderer(displayData))), /*#__PURE__*/React__namespace.createElement("div", { + className: "Header-content Header-content--bottom" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "Header-label" + }, !showHead && withCheckbox && !loading && /*#__PURE__*/React__namespace.createElement(Checkbox, __assign({}, selectAll, { + onChange: function onChange(event) { + if (onSelectAll) onSelectAll(event.target.checked); + } + })), loading ? /*#__PURE__*/React__namespace.createElement(Placeholder, { + withImage: !showHead && withCheckbox + }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: 'small', + size: 's' + })) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, showSelectedLabel ? /*#__PURE__*/React__namespace.createElement("span", { + className: selectedRowLabelClass, + onAnimationEnd: onSelectAnimationEnd + }, /*#__PURE__*/React__namespace.createElement(Label, null, getSelectedRowLabel())) : /*#__PURE__*/React__namespace.createElement("span", { + className: unselectedRowLabelClass, + onAnimationEnd: onUnSelectAnimationEnd + }, /*#__PURE__*/React__namespace.createElement(Label, null, getUnSelectedRowLabel())), selectedRowsCount > 0 && allowSelectAll && showSelectedLabel && /*#__PURE__*/React__namespace.createElement("div", { + className: selectedRowLabelClass + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "ml-4 d-flex" + }, /*#__PURE__*/React__namespace.createElement(Button, { + "data-test": "DesignSystem-Table-Header--selectAllItemsButton", + size: "tiny", + disabled: selectedRowsCount === totalRecords, + onClick: onSelectAllRows + }, "Select " + totalRecords + " " + customLabel + "s"), /*#__PURE__*/React__namespace.createElement(Button, { + "data-test": "DesignSystem-Table-Header--clearSelectionItemsButton", + size: "tiny", + className: "ml-4", + onClick: onClearSelection + }, "Clear Selection"), selectionActionRenderer && /*#__PURE__*/React__namespace.createElement(Divider, { + vertical: true, + className: "mx-4 Table-Header--Divider" + }))), selectionActionRenderer && selectedRowsCount > 0 && showSelectedLabel && /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Table-Header--ActionRenderer", + className: selectedRowLabelClass + }, selectionActionRenderer(selectedRowsRef === null || selectedRowsRef === void 0 ? void 0 : selectedRowsRef.current, selectedAllRef === null || selectedAllRef === void 0 ? void 0 : selectedAllRef.current)))), dynamicColumn && /*#__PURE__*/React__namespace.createElement("div", { + className: "Header-hideColumns" + }, /*#__PURE__*/React__namespace.createElement(DraggableDropdown, { + options: columnOptions, + onChange: onDynamicColumnUpdate + })))); }; - var fileAccepted = function fileAccepted(file, accept) { - var isAcceptable = file.type === 'application/x-moz-file' || accepts(file, accept); - return [isAcceptable, isAcceptable ? null : getInvalidTypeRejectionErr(accept)]; + Header.defaultProps = { + schema: [], + data: [], + searchPlaceholder: 'Search', + dynamicColumn: true, + showFilters: true }; - var fileMatchSize = function fileMatchSize(file, minSize, maxSize) { - if (isDefined(file.size)) { - if (isDefined(minSize) && isDefined(maxSize)) { - if (file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)]; - if (file.size < minSize) return [false, getTooSmallRejectionErr(minSize)]; - } else if (isDefined(minSize) && file.size < minSize) { - return [false, getTooSmallRejectionErr(minSize)]; - } else if (isDefined(maxSize) && file.size > maxSize) { - return [false, getTooLargeRejectionErr(maxSize)]; - } - } - return [true, null]; + var isElementPresent = function isElementPresent(list, uniqueColumnName, value) { + var arr = list === null || list === void 0 ? void 0 : list.filter(function (item) { + return item[uniqueColumnName] === value; + }); + return arr.length > 0; }; - var getFileError = function getFileError(options) { - var files = options.files, - accept = options.accept, - minSize = options.minSize, - maxSize = options.maxSize, - multiple = options.multiple; - if (!multiple && files.length > 1) { - return 'TOO_MANY_FILES'; - } + var getUpdatedData = function getUpdatedData(data, selectedList, uniqueColumnName, isCancelSelection, isSelectAll) { + var updatedData = data.map(function (item) { + if (isSelectAll || item._selected && !isCancelSelection || uniqueColumnName && item[uniqueColumnName] && selectedList && isElementPresent(selectedList, uniqueColumnName, item[uniqueColumnName]) && !isCancelSelection) { + item._selected = true; + } else if (isCancelSelection) { + item._selected = false; + } else { + item._selected = false; + } - var typeError = files.every(function (file) { - var accepted = fileAccepted(file, accept)[0]; - return !accepted; - }); - var sizeError = files.every(function (file) { - var sizeMatch = fileMatchSize(file, minSize, maxSize)[0]; - return !sizeMatch; + return item; }); - return typeError ? 'FILE_INVALID_TYPE' : sizeError ? 'FILE_TOO_LARGE' : ''; + return updatedData; }; - var allFilesAccepted = function allFilesAccepted(options) { - var files = options.files, - accept = options.accept, - minSize = options.minSize, - maxSize = options.maxSize, - multiple = options.multiple; - if (!multiple && files.length > 1) { - return false; - } + var uniqueByKey = function uniqueByKey(arr, key) { + var list = new Set(); + return arr.filter(function (obj) { + var value = obj[key]; - return files.every(function (file) { - var accepted = fileAccepted(file, accept)[0]; - var sizeMatch = fileMatchSize(file, minSize, maxSize)[0]; - return accepted && sizeMatch; + if (list.has(value)) { + return false; + } else { + list.add(value); + return true; + } }); }; - var COMMON_MIME_TYPES = new Map([['avi', 'video/avi'], ['gif', 'image/gif'], ['ico', 'image/x-icon'], ['jpeg', 'image/jpeg'], ['jpg', 'image/jpeg'], ['mkv', 'video/x-matroska'], ['mov', 'video/quicktime'], ['mp4', 'video/mp4'], ['pdf', 'application/pdf'], ['png', 'image/png'], ['zip', 'application/zip'], ['doc', 'application/msword'], ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document']]); - var FILES_TO_IGNORE = ['.DS_Store', 'Thumbs.db']; - function fromEvent(evt) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2, isDragEvt(evt) && evt.dataTransfer ? getDataTransferFiles(evt.dataTransfer, evt.type) : getInputFiles(evt)]; - }); - }); - } - - function isDragEvt(value) { - return !!value.dataTransfer; - } - - function toFileWithPath(file, path) { - var f = withMimeType(file); - - if (typeof f.path !== 'string') { - var webkitRelativePath = file.webkitRelativePath; - Object.defineProperty(f, 'path', { - value: typeof path === 'string' ? path : typeof webkitRelativePath === 'string' && webkitRelativePath.length > 0 ? webkitRelativePath : file.name, - writable: false, - configurable: false, - enumerable: true - }); + var removeDuplicate = function removeDuplicate(data, uniqueColumnName) { + if (uniqueColumnName) { + return uniqueByKey(data, uniqueColumnName); } - return f; - } + return data; + }; - function withMimeType(file) { - var name = file.name; - var hasExtension = name && name.lastIndexOf('.') !== -1; + var defaultErrorTemplate = function defaultErrorTemplate(props) { + var _a = props.errorType, + errorType = _a === void 0 ? 'DEFAULT' : _a; + var errorMessages = { + FAILED_TO_FETCH: 'Failed to fetch data', + NO_RECORDS_FOUND: 'No results found', + DEFAULT: 'No results found' + }; + return /*#__PURE__*/React__namespace.createElement(Heading, null, errorMessages[errorType]); + }; - if (hasExtension && !file.type) { - var ext = name.split('.').pop().toLowerCase(); - var type = COMMON_MIME_TYPES.get(ext); + var defaultProps = { + type: 'data', + size: 'standard', + showHead: true, + showMenu: true, + multipleSorting: true, + headerOptions: {}, + withPagination: true, + paginationType: 'jump', + page: 1, + pageSize: 15, + draggable: true, + data: [], + displayData: [], + schema: [], + loading: false, + error: false, + loaderSchema: [], + sortingList: [], + filterList: {}, + filterPosition: 'GRID', + searchDebounceDuration: 750, + pageJumpDebounceDuration: 750, + errorTemplate: defaultErrorTemplate + }; - if (type) { - Object.defineProperty(file, 'type', { - value: type, - writable: false, - configurable: false, - enumerable: true - }); - } - } + var Table = function (_super) { + __extends(Table, _super); - return file; - } + function Table(props) { + var _this = _super.call(this, props) || this; - function getInputFiles(evt) { - var files = isInput(evt.target) ? evt.target.files ? fromList(evt.target.files) : [] : []; - return files.map(function (file) { - return toFileWithPath(file); - }); - } + _this.selectedRowsRef = /*#__PURE__*/React__namespace.createRef(); + _this.clearSelectionRef = /*#__PURE__*/React__namespace.createRef(); + _this.selectAllRef = /*#__PURE__*/React__namespace.createRef(); - function isInput(value) { - return value !== null; - } + _this.updateData = function (searchUpdate) { + if (_this.state.async) { + _this.setState({ + loading: true + }); + } - function getDataTransferFiles(dt, type) { - return __awaiter(this, void 0, void 0, function () { - var items, files; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (!dt.items) return [3, 2]; - items = fromList(dt.items).filter(function (item) { - return item.kind === 'file'; - }); + if (searchUpdate) { + _this.debounceUpdate(); + } else { + _this.updateDataFn(); + } + }; - if (type !== 'drop') { - return [2, items]; - } + _this.updateDataFn = function () { + var _a = _this.props, + fetchData = _a.fetchData, + pageSize = _a.pageSize, + withPagination = _a.withPagination, + dataProp = _a.data, + onSearch = _a.onSearch, + uniqueColumnName = _a.uniqueColumnName; + var _b = _this.state, + async = _b.async, + page = _b.page, + sortingList = _b.sortingList, + filterList = _b.filterList, + searchTerm = _b.searchTerm; - return [4, Promise.all(items.map(toFilePromises))]; + _this.onSelect(-1, false); - case 1: - files = _a.sent(); - return [2, noIgnoredFiles(flatten(files))]; + var opts = { + page: page, + pageSize: pageSize, + sortingList: sortingList, + filterList: filterList, + searchTerm: searchTerm + }; - case 2: - return [2, noIgnoredFiles(fromList(dt.files).map(function (file) { - return toFileWithPath(file); - }))]; + if (!_this.props.withPagination) { + delete opts.page; + delete opts.pageSize; } - }); - }); - } - function noIgnoredFiles(files) { - return files.filter(function (file) { - return FILES_TO_IGNORE.indexOf(file.name) === -1; - }); - } + if (async) { + if (fetchData) { + fetchData(opts).then(function (res) { + if (!res.searchTerm || res.searchTerm && res.searchTerm === _this.state.searchTerm) { + var data = res.data; + var dataReplica = JSON.parse(JSON.stringify(data)); + var schema = _this.state.schema.length ? _this.state.schema : res.schema; + var preSelectedRows = data.filter(function (item) { + return item._selected; + }); - function fromList(items) { - var files = []; + if (_this.clearSelectionRef.current) { + _this.selectedRowsRef.current = []; + } else { + _this.selectedRowsRef.current = _this.selectedRowsRef.current ? removeDuplicate(__spreadArrays(_this.selectedRowsRef.current, preSelectedRows), uniqueColumnName) : removeDuplicate(__spreadArrays(preSelectedRows), uniqueColumnName); + } - for (var i = 0; i < items.length; i++) { - var file = items[i]; - files.push(file); - } + var selectedData = getUpdatedData(dataReplica, _this.selectedRowsRef.current, uniqueColumnName, _this.clearSelectionRef.current, _this.selectAllRef.current); - return files; - } + _this.setState({ + data: selectedData, + displayData: data, + schema: schema, + selectAll: getSelectAll(selectedData, _this.props.selectDisabledRow, _this.clearSelectionRef.current), + totalRecords: res.count, + loading: false, + error: !data.length, + errorType: 'NO_RECORDS_FOUND' + }); + } + })["catch"](function () { + _this.setState({ + loading: false, + error: true, + errorType: 'FAILED_TO_FETCH' + }); + }); + } + } else { + var schema = _this.state.schema; + var filteredData = filterData(schema, dataProp, filterList); + var searchedData = onSearch && opts.searchTerm !== undefined ? onSearch(filteredData, opts.searchTerm) : filteredData; + var sortedData = sortData(schema, searchedData, sortingList); + var renderedData = sortedData; + var totalRecords = sortedData.length; - function toFilePromises(item) { - if (typeof item.webkitGetAsEntry !== 'function') { - return fromDataTransferItem(item); - } + if (withPagination && page && pageSize) { + renderedData = paginateData(renderedData, page, pageSize); + } - var entry = item.webkitGetAsEntry(); + var renderedSchema = _this.state.schema.length ? _this.state.schema : schema; + var preSelectedRows = renderedData.filter(function (item) { + return item._selected; + }); + var renderedDataReplica = JSON.parse(JSON.stringify(renderedData)); - if (entry && entry.isDirectory) { - return fromDirEntry(entry); - } + if (_this.clearSelectionRef.current) { + _this.selectedRowsRef.current = []; + } else { + _this.selectedRowsRef.current = _this.selectedRowsRef.current ? removeDuplicate(__spreadArrays(_this.selectedRowsRef.current, preSelectedRows), uniqueColumnName) : removeDuplicate(__spreadArrays(preSelectedRows), uniqueColumnName); + } - return fromDataTransferItem(item); - } + var selectedData = getUpdatedData(renderedDataReplica, _this.selectedRowsRef.current, uniqueColumnName, _this.clearSelectionRef.current, _this.selectAllRef.current); - function flatten(items) { - return items.reduce(function (acc, files) { - return __spreadArrays(acc, Array.isArray(files) ? flatten(files) : [files]); - }, []); - } + _this.setState({ + totalRecords: totalRecords, + error: !renderedData.length, + errorType: 'NO_RECORDS_FOUND', + selectAll: getSelectAll(renderedData, _this.props.selectDisabledRow, _this.clearSelectionRef.current), + schema: renderedSchema, + displayData: sortedData, + data: selectedData + }); + } + }; - function fromDataTransferItem(item) { - var file = item.getAsFile(); + _this.onSelect = function (rowIndexes, selected) { + var data = _this.state.data; + var _a = _this.props, + onSelect = _a.onSelect, + uniqueColumnName = _a.uniqueColumnName; + + if (_this.selectAllRef.current && rowIndexes !== -1 && !selected) { + _this.selectAllRef.current = false; + _this.selectedRowsRef.current = []; + var indexes_1 = Array.from({ + length: data.length + }, function (_, i) { + return i; + }); + var newData_1 = updateBatchData(data, indexes_1, { + _selected: false + }, _this.props.selectDisabledRow); - if (!file) { - return Promise.reject(item + " is not a File"); - } + _this.setState({ + data: newData_1, + selectAll: { + checked: false, + indeterminate: false + } + }); - var fwp = toFileWithPath(file); - return Promise.resolve(fwp); - } + if (onSelect) { + if (_this.props.uniqueColumnName) { + onSelect(indexes_1, selected, _this.selectedRowsRef.current, _this.selectAllRef.current); + } else { + onSelect(indexes_1, selected, rowIndexes === -1 ? [] : newData_1.filter(function (d) { + return d._selected; + })); + } + } - function fromEntry(entry) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2, entry.isDirectory ? fromDirEntry(entry) : fromFileEntry(entry)]; - }); - }); - } + return; + } - function fromDirEntry(entry) { - var reader = entry.createReader(); - return new Promise(function (resolve, reject) { - var entries = []; + var indexes = [rowIndexes]; + var rowData = data[rowIndexes]; + var selectedItemList = rowIndexes === -1 ? [] : [rowData]; + var newData = data; - function readEntries() { - var _this = this; + if (rowIndexes >= 0) { + newData = updateBatchData(data, indexes, { + _selected: selected + }, _this.props.selectDisabledRow); - reader.readEntries(function (batch) { - return __awaiter(_this, void 0, void 0, function () { - var files, err_1, items; - return __generator(this, function (_a) { - switch (_a.label) { - case 0: - if (!!batch.length) return [3, 5]; - _a.label = 1; + _this.resetClearSelection(); - case 1: - _a.trys.push([1, 3,, 4]); + _this.setState({ + data: newData, + selectAll: getSelectAll(newData, _this.props.selectDisabledRow, _this.clearSelectionRef.current) + }); - return [4, Promise.all(entries)]; + if (_this.selectedRowsRef.current && selected) { + selectedItemList = __spreadArrays([__assign(__assign({}, rowData), { + _selected: selected + })], _this.selectedRowsRef.current); + } - case 2: - files = _a.sent(); - resolve(files); - return [3, 4]; + if (!selected && uniqueColumnName) { + selectedItemList = _this.selectedRowsRef.current.filter(function (item) { + return item[uniqueColumnName] !== rowData[uniqueColumnName]; + }); + } - case 3: - err_1 = _a.sent(); - reject(err_1); - return [3, 4]; + _this.selectedRowsRef.current = removeDuplicate(selectedItemList, uniqueColumnName); + } else if (rowIndexes === -1 && _this.selectedRowsRef.current) { + selectedItemList = _this.selectedRowsRef.current; + } - case 4: - return [3, 6]; + if (onSelect) { + if (_this.props.uniqueColumnName) { + onSelect(indexes, selected, rowIndexes === -1 && (selectedItemList === null || selectedItemList === void 0 ? void 0 : selectedItemList.length) === 0 ? [] : _this.selectedRowsRef.current, _this.selectAllRef.current); + } else { + onSelect(indexes, selected, rowIndexes === -1 ? [] : newData.filter(function (d) { + return d._selected; + })); + } + } + }; + + _this.onSelectAll = function (selected, selectAll, headerCheckbox) { + var _a = _this.props, + onSelect = _a.onSelect, + uniqueColumnName = _a.uniqueColumnName; + var data = _this.state.data; + var indexes = Array.from({ + length: data.length + }, function (_, i) { + return i; + }); + var newData = updateBatchData(data, indexes, { + _selected: selected + }, _this.props.selectDisabledRow); + var selectedIndex = []; + newData.forEach(function (item, key) { + if (item._selected) { + selectedIndex.push(key); + } + }); + var selectedData = []; - case 5: - items = Promise.all(batch.map(fromEntry)); - entries.push(items); - readEntries(); - _a.label = 6; + if (selected) { + _this.resetClearSelection(); - case 6: - return [2]; - } + selectedData = selectAll === undefined ? __spreadArrays(_this.selectedRowsRef.current || [], newData.filter(function (d) { + return d._selected; + })) : _this.selectedRowsRef.current; + } else if (!selected && headerCheckbox && uniqueColumnName) { + _this.selectAllRef.current = false; + _this.selectedRowsRef.current = __spreadArrays(_this.selectedRowsRef.current || [], newData); + _this.selectedRowsRef.current = _this.selectedRowsRef.current.filter(function (item1) { + return !newData.some(function (item2) { + return item1[uniqueColumnName] === item2[uniqueColumnName]; }); }); - }, function (err) { - reject(err); - }); - } - - readEntries(); - }); - } + } else { + _this.selectedRowsRef.current = []; + _this.selectAllRef.current = false; + } - function fromFileEntry(entry) { - return __awaiter(this, void 0, void 0, function () { - return __generator(this, function (_a) { - return [2, new Promise(function (resolve, reject) { - entry.file(function (file) { - var fwp = toFileWithPath(file, entry.fullPath); - resolve(fwp); - }, function (err) { - reject(err); - }); - })]; - }); - }); - } + if (!(headerCheckbox && !selected)) { + _this.selectedRowsRef.current = removeDuplicate(selectedData, uniqueColumnName); + } - var initialState = { - isFocused: false, - isFileDialogActive: false, - isDragActive: false, - isDragAccept: false, - isDragReject: false, - draggedFiles: [], - acceptedFiles: [], - fileRejections: [] - }; - var DropzoneBase = function DropzoneBase(props) { - var accept = props.accept, - disabled = props.disabled, - maxSize = props.maxSize, - minSize = props.minSize, - multiple = props.multiple, - onDragEnter = props.onDragEnter, - onDragLeave = props.onDragLeave, - onDragOver = props.onDragOver, - onDrop = props.onDrop, - onDropAccepted = props.onDropAccepted, - onDropRejected = props.onDropRejected, - onFileDialogCancel = props.onFileDialogCancel, - getFilesFromEvent = props.getFilesFromEvent, - preventDropOnDocument = props.preventDropOnDocument, - validator = props.validator; - var rootRef = React.useRef(null); - var inputRef = React.useRef(null); + if (onSelect) { + if (_this.props.uniqueColumnName) { + if (headerCheckbox && !selected) { + onSelect(selectedIndex, selected, removeDuplicate(_this.selectedRowsRef.current, uniqueColumnName), _this.selectAllRef.current); + } else { + onSelect(selectedIndex, selected, removeDuplicate(selectedData, uniqueColumnName), _this.selectAllRef.current); + } + } else { + onSelect(selectedIndex, selected, newData.filter(function (d) { + return d._selected; + }), selectAll); + } + } - var _a = React.useReducer(reducer, initialState), - state = _a[0], - dispatch = _a[1]; + _this.setState({ + data: newData, + selectAll: getSelectAll(newData, _this.props.selectDisabledRow) + }); + }; - var isFocused = state.isFocused, - isFileDialogActive = state.isFileDialogActive, - draggedFiles = state.draggedFiles; - var openFileDialog = React.useCallback(function () { - if (inputRef.current) { - dispatch({ - type: 'openDialog' + _this.onPageChange = function (newPage) { + _this.setState({ + page: newPage }); - inputRef.current.value = null; - inputRef.current.click(); - } - }, [dispatch]); + }; - var onWindowFocus = function onWindowFocus() { - if (isFileDialogActive) { - setTimeout(function () { - if (inputRef.current) { - var files = inputRef.current.files; + _this.updateSchema = function (newSchema) { + _this.setState({ + schema: newSchema + }); + }; - if (!files.length) { - dispatch({ - type: 'closeDialog' - }); + _this.updateSortingList = function (newSortingList) { + var multipleSorting = _this.props.multipleSorting; - if (typeof onFileDialogCancel === 'function') { - onFileDialogCancel(); - } - } - } - }, 300); - } - }; + _this.setState({ + sortingList: multipleSorting ? __spreadArrays(newSortingList) : newSortingList.slice(-1), + page: 1 + }); + }; - React.useEffect(function () { - window.addEventListener('focus', onWindowFocus, false); - return function () { - window.removeEventListener('focus', onWindowFocus, false); + _this.updateFilterList = function (newFilterList) { + _this.setState({ + filterList: newFilterList, + page: 1 + }); }; - }, [inputRef, isFileDialogActive, onFileDialogCancel]); - var onKeyDownCb = React.useCallback(function (event) { - if (!rootRef.current || !rootRef.current.isEqualNode(event.target)) { - return; - } - if (event.keyCode === 32 || event.keyCode === 13) { - event.preventDefault(); - openFileDialog(); - } - }, [rootRef, inputRef]); - var onFocusCb = React.useCallback(function () { - dispatch({ - type: 'focus' - }); - }, []); - var onBlurCb = React.useCallback(function () { - dispatch({ - type: 'blur' - }); - }, []); - var dragTargetsRef = React.useRef([]); + _this.updateSearchTerm = function (newSearchTerm) { + _this.setState({ + searchTerm: newSearchTerm, + page: 1 + }); + }; - var onDocumentDrop = function onDocumentDrop(event) { - if (rootRef.current && rootRef.current.contains(event.target)) { - return; - } + _this.onClearSelection = function () { + _this.selectedRowsRef.current = []; + _this.clearSelectionRef.current = true; + _this.selectAllRef.current = false; - event.preventDefault(); - dragTargetsRef.current = []; - }; + _this.onSelectAll(false); - React.useEffect(function () { - if (preventDropOnDocument) { - document.addEventListener('dragover', onDocumentDragOver, false); - document.addEventListener('drop', onDocumentDrop, false); - } + _this.setState({ + selectAll: getSelectAll([], _this.props.selectDisabledRow, _this.clearSelectionRef.current) + }); + }; - return function () { - if (preventDropOnDocument) { - document.removeEventListener('dragover', onDocumentDragOver); - document.removeEventListener('drop', onDocumentDrop); - } + _this.resetClearSelection = function () { + _this.clearSelectionRef.current = false; }; - }, [rootRef, preventDropOnDocument]); - var onDragEnterCb = React.useCallback(function (event) { - event.preventDefault(); - event.persist(); - dragTargetsRef.current = __spreadArrays(dragTargetsRef.current, [event.target]); - if (isEvtWithFiles(event)) { - Promise.resolve(getFilesFromEvent(event)).then(function (files) { - if (isPropagationStopped(event)) { - return; - } + _this.onSelectAllRows = function () { + _this.selectAllRef.current = _this.props.uniqueColumnName ? true : false; - dispatch({ - draggedFiles: files, - isDragActive: true, - type: 'setDraggedFiles' - }); + _this.onSelectAll(true, true); + }; - if (onDragEnter) { - onDragEnter(event); - } - }); - } - }, [getFilesFromEvent, onDragEnter]); - var onDragOverCb = React.useCallback(function (event) { - event.preventDefault(); - event.persist(); + var async = ('fetchData' in _this.props); + var data = props.data || []; + var schema = props.schema || []; + _this.state = { + async: async, + data: !async ? data : [], + displayData: !async ? data : [], + schema: !async ? schema : [], + page: props.page, + sortingList: props.sortingList, + filterList: props.filterList, + totalRecords: !async ? data.length : 0, + loading: !async ? props.loading : true, + error: !async ? props.error : false, + errorType: props.errorType, + selectAll: getSelectAll([]), + searchTerm: undefined + }; + _this.debounceUpdate = debounce(props.searchDebounceDuration, _this.updateDataFn); + return _this; + } - if (event.dataTransfer) { - try { - event.dataTransfer.dropEffect = 'copy'; - } catch (_a) {} - } + Table.prototype.componentDidMount = function () { + this.updateData(); + }; - if (isEvtWithFiles(event) && onDragOver) { - onDragOver(event); - } + Table.prototype.componentDidUpdate = function (prevProps, prevState) { + var _this = this; - return false; - }, [onDragOver]); - var onDragLeaveCb = React.useCallback(function (event) { - event.preventDefault(); - event.persist(); - var targets = dragTargetsRef.current.filter(function (target) { - return rootRef.current && rootRef.current.contains(target); - }); - var targetIdx = targets.indexOf(event.target); + if (!this.state.async) { + if (prevProps.error !== this.props.error) { + var _a = this.props, + _b = _a.data, + data = _b === void 0 ? [] : _b, + _c = _a.schema, + schema = _c === void 0 ? [] : _c; + this.setState({ + data: data, + displayData: data, + schema: schema, + error: this.props.error || false, + errorType: this.props.errorType, + page: 1, + totalRecords: data.length || 0, + selectAll: getSelectAll([]) + }); + } - if (targetIdx !== -1) { - targets.splice(targetIdx, 1); + if (prevProps.loading !== this.props.loading) { + var _d = this.props, + _e = _d.data, + data = _e === void 0 ? [] : _e, + _f = _d.schema, + schema = _f === void 0 ? [] : _f; + this.setState({ + data: data, + displayData: data, + schema: schema, + loading: this.props.loading || false, + error: this.props.error || false, + errorType: this.props.errorType, + page: 1, + totalRecords: data.length || 0, + selectAll: getSelectAll([]) + }, function () { + _this.updateData(); + }); + } } - dragTargetsRef.current = targets; - - if (targets.length > 0) { - return; + if (prevState.page !== this.state.page) { + var onPageChange = this.props.onPageChange; + if (onPageChange) onPageChange(this.state.page); } - dispatch({ - isDragActive: false, - type: 'setDraggedFiles', - draggedFiles: [] - }); - - if (isEvtWithFiles(event) && onDragLeave) { - onDragLeave(event); + if (prevState.page !== this.state.page || prevState.filterList !== this.state.filterList || prevState.sortingList !== this.state.sortingList || prevState.searchTerm !== this.state.searchTerm) { + if (!this.props.loading) { + var searchUpdate = prevState.searchTerm !== this.state.searchTerm; + this.updateData(searchUpdate); + } } - }, [rootRef, onDragLeave]); - var onDropCb = React.useCallback(function (event) { - event.preventDefault(); - event.persist(); - dragTargetsRef.current = []; - - if (isEvtWithFiles(event)) { - Promise.resolve(getFilesFromEvent(event)).then(function (files) { - if (isPropagationStopped(event)) { - return; - } + }; - var acceptedFiles = []; - var fileRejections = []; - files.forEach(function (file) { - var _a = fileAccepted(file, accept), - accepted = _a[0], - acceptError = _a[1]; + Table.prototype.render = function () { + var _a = this.props, + showHead = _a.showHead, + type = _a.type, + size = _a.size, + headCellTooltip = _a.headCellTooltip, + separator = _a.separator, + draggable = _a.draggable, + nestedRows = _a.nestedRows, + nestedRowRenderer = _a.nestedRowRenderer, + withHeader = _a.withHeader, + headerOptions = _a.headerOptions, + withCheckbox = _a.withCheckbox, + showMenu = _a.showMenu, + withPagination = _a.withPagination, + paginationType = _a.paginationType, + pageSize = _a.pageSize, + pageJumpDebounceDuration = _a.pageJumpDebounceDuration, + onRowClick = _a.onRowClick, + loaderSchema = _a.loaderSchema, + errorTemplate = _a.errorTemplate, + className = _a.className, + filterPosition = _a.filterPosition, + uniqueColumnName = _a.uniqueColumnName; + var baseProps = extractBaseProps(this.props); - var _b = fileMatchSize(file, minSize, maxSize), - sizeMatch = _b[0], - sizeError = _b[1]; + var _b = headerOptions, + headerChildren = _b.children, + headerAttr = __rest(_b, ["children"]); - var customErrors = validator ? validator(file) : null; + var classes = className ? " " + className : ''; + var totalRecords = this.state.totalRecords; + var totalPages = getTotalPages(totalRecords, pageSize); + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: "Table" + classes, + "data-test": "DesignSystem-Table-wrapper" + }), withHeader && /*#__PURE__*/React__namespace.createElement("div", { + className: "Table-header", + "data-test": "DesignSystem-Table-header" + }, /*#__PURE__*/React__namespace.createElement(Header, __assign({}, this.state, { + updateSchema: this.updateSchema, + updateFilterList: this.updateFilterList, + updateSearchTerm: this.updateSearchTerm, + showHead: showHead, + onSelectAll: this.onSelectAll, + withCheckbox: withCheckbox, + withPagination: withPagination, + pageSize: pageSize, + showFilters: filterPosition === 'HEADER', + selectedRowsRef: this.selectedRowsRef, + onClearSelection: this.onClearSelection, + onSelectAllRows: this.onSelectAllRows, + selectedAllRef: this.selectAllRef, + uniqueColumnName: uniqueColumnName + }, headerAttr), headerChildren)), /*#__PURE__*/React__namespace.createElement("div", { + className: "Table-grid" + }, /*#__PURE__*/React__namespace.createElement(Grid, __assign({}, this.state, { + key: this.state.searchTerm, + updateData: this.updateData, + updateSchema: this.updateSchema, + updateSortingList: this.updateSortingList, + updateFilterList: this.updateFilterList, + withCheckbox: withCheckbox, + onSelect: this.onSelect, + onSelectAll: this.onSelectAll, + showMenu: showMenu, + showHead: showHead, + type: type, + size: size, + headCellTooltip: headCellTooltip, + separator: separator, + draggable: draggable, + nestedRows: nestedRows, + nestedRowRenderer: nestedRowRenderer, + withPagination: withPagination && totalPages > 1, + pageSize: pageSize, + loaderSchema: loaderSchema, + errorTemplate: errorTemplate && errorTemplate({ + errorType: this.state.errorType + }), + onRowClick: onRowClick, + showFilters: filterPosition === 'GRID' + }))), withPagination && !this.state.loading && !this.state.error && totalPages > 1 && /*#__PURE__*/React__namespace.createElement("div", { + className: "Table-pagination" + }, /*#__PURE__*/React__namespace.createElement(Pagination, { + page: this.state.page, + totalPages: getTotalPages(totalRecords, pageSize), + type: paginationType, + onPageChange: this.onPageChange, + pageJumpDebounceDuration: pageJumpDebounceDuration + }))); + }; - if (accepted && sizeMatch && !customErrors) { - acceptedFiles.push(file); - } else { - var errors = [acceptError, sizeError]; + Table.defaultProps = defaultProps; + return Table; + }(React__namespace.Component); - if (customErrors) { - errors = errors.concat(customErrors); - } + var List = function List(props) { + return /*#__PURE__*/React__namespace.createElement(Table, __assign({}, props, { + showHead: false, + filterPosition: 'HEADER' + })); + }; + List.defaultProps = defaultProps; - fileRejections.push({ - file: file, - errors: errors.filter(function (e) { - return e; - }) - }); - } - }); - dispatch({ - acceptedFiles: acceptedFiles, - fileRejections: fileRejections, - type: 'setFiles' - }); + var useState$1 = React__namespace.useState; + var VerticalNavigation = function VerticalNavigation(props) { + var _a; - if (onDrop) { - onDrop(event, acceptedFiles, fileRejections); - } + var menus = props.menus, + active = props.active, + onClick = props.onClick, + expanded = props.expanded, + rounded = props.rounded, + onToggle = props.onToggle, + footer = props.footer, + autoCollapse = props.autoCollapse; - if (fileRejections.length > 0 && onDropRejected) { - onDropRejected(event, fileRejections); - } + var _b = useState$1({}), + menuState = _b[0], + setMenuState = _b[1]; - if (acceptedFiles.length > 0 && onDropAccepted) { - onDropAccepted(event, acceptedFiles); - } - }); + React__namespace.useEffect(function () { + if (props.active) { + var currMenu = getMenu(menus, props.active); + if (currMenu) updateMenuState(currMenu, true); } + }, [props.active]); - dispatch({ - type: 'reset' - }); - }, [multiple, accept, minSize, maxSize, getFilesFromEvent, onDrop, onDropAccepted, onDropRejected]); + var updateMenuState = function updateMenuState(menu, val) { + var _a; - var composeHandler = function composeHandler(fn) { - return disabled ? null : fn; - }; + var currMenu = getMenu(menus, menu); - var composeKeyboardHandler = function composeKeyboardHandler(_fn) { - return null; - }; + if (currMenu) { + var nameSplit = currMenu.name.split('.'); - var composeDragHandler = function composeDragHandler(fn) { - return composeHandler(fn); - }; + if (nameSplit.length > 1 || currMenu.subMenu) { + var name_1 = nameSplit[0]; - var getRootProps = React.useMemo(function () { - return function (_a) { - var _b; + if (autoCollapse) { + setMenuState((_a = {}, _a[name_1] = val || !menuState[name_1], _a)); + } else { + var menuData = __assign({}, menuState); - if (_a === void 0) { - _a = {}; + menuData[name_1] = val !== undefined ? val : !menuData[name_1]; + setMenuState(menuData); + } + } else { + if (autoCollapse) { + if (!expanded) setMenuState({}); + } } + } + }; - var _c = _a.refKey, - refKey = _c === void 0 ? 'ref' : _c, - onKeyDown = _a.onKeyDown, - onFocus = _a.onFocus, - onBlur = _a.onBlur; - _a.onClick; - var onDragEnterCallback = _a.onDragEnterCallback, - onDragOverCallback = _a.onDragOverCallback, - onDragLeaveCallback = _a.onDragLeaveCallback, - onDropCallback = _a.onDropCallback, - rest = __rest(_a, ["refKey", "onKeyDown", "onFocus", "onBlur", "onClick", "onDragEnterCallback", "onDragOverCallback", "onDragLeaveCallback", "onDropCallback"]); - - return __assign((_b = { - onKeyDown: composeKeyboardHandler(composeEventHandlers(onKeyDown, onKeyDownCb)), - onFocus: composeKeyboardHandler(composeEventHandlers(onFocus, onFocusCb)), - onBlur: composeKeyboardHandler(composeEventHandlers(onBlur, onBlurCb)), - onDragEnter: composeDragHandler(composeEventHandlers(onDragEnterCallback, onDragEnterCb)), - onDragOver: composeDragHandler(composeEventHandlers(onDragOverCallback, onDragOverCb)), - onDragLeave: composeDragHandler(composeEventHandlers(onDragLeaveCallback, onDragLeaveCb)), - onDrop: composeDragHandler(composeEventHandlers(onDropCallback, onDropCb)) - }, _b[refKey] = rootRef, _b), rest); - }; - }, [rootRef, onKeyDownCb, onFocusCb, onBlurCb, onDragEnterCb, onDragOverCb, onDragLeaveCb, onDropCb, disabled]); - var onInputElementClick = React.useCallback(function (event) { - event.stopPropagation(); - }, []); - var getInputProps = React.useMemo(function () { - return function (_a) { - var _b; - - if (_a === void 0) { - _a = {}; + var onClickHandler = function onClickHandler(menu) { + if (!menu.disabled) { + if (menu.subMenu) { + if (!expanded) { + if (onClick) onClick(menu.subMenu[0]); + } else { + updateMenuState(menu); + } + } else { + if (onClick) onClick(menu); } + } + }; - var _c = _a.refKey, - refKey = _c === void 0 ? 'ref' : _c, - onChange = _a.onChange, - onClick = _a.onClick, - rest = __rest(_a, ["refKey", "onChange", "onClick"]); + var list = menus.map(function (menu, index) { + var _a; - var inputProps = (_b = { - accept: accept, - multiple: multiple, - type: 'file', - style: { - display: 'none' - }, - onChange: composeHandler(composeEventHandlers(onChange, onDropCb)), - onClick: composeHandler(composeEventHandlers(onClick, onInputElementClick)), - autoComplete: 'off', - tabIndex: -1 - }, _b[refKey] = inputRef, _b); - return __assign(__assign({}, inputProps), rest); - }; - }, [inputRef, accept, multiple, onDropCb, disabled]); - var fileCount = draggedFiles.length; - var isDragAccept = fileCount > 0 && allFilesAccepted({ - accept: accept, - minSize: minSize, - maxSize: maxSize, - multiple: multiple, - files: draggedFiles - }); - var isDragReject = fileCount > 0 && !isDragAccept; - var fileError = isDragReject ? getFileError({ - accept: accept, - minSize: minSize, - maxSize: maxSize, - multiple: multiple, - files: draggedFiles - }) : ''; - return __assign(__assign({}, state), { - isDragAccept: isDragAccept, - isDragReject: isDragReject, - getRootProps: getRootProps, - getInputProps: getInputProps, - rootRef: rootRef, - inputRef: inputRef, - draggedFiles: draggedFiles, - fileError: fileError, - isFocused: isFocused && !disabled, - open: composeHandler(openFileDialog) + var activeMenu = expanded && !menuState[menu.name] && isMenuActive(menus, menu, active); + var activeMenuIcon = !expanded && isMenuActive(menus, menu, active) || activeMenu; + var menuClasses = classNames__default["default"]((_a = { + 'Navigation-menu': true + }, _a['Navigation-menu--vertical'] = true, _a['Navigation-menu--active'] = activeMenu, _a['Navigation-menu--rounded'] = expanded && rounded, _a)); + var menuIconClasses = classNames__default["default"]({ + 'Navigation-menuIcon': true, + 'Navigation-menuIcon--active': activeMenuIcon + }); + return /*#__PURE__*/React__namespace.createElement("div", { + key: index, + "data-test": "DesignSystem-Navigation-VerticalNavigation--menuWrapper" + }, /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Navigation-VerticalNavigation--menuItem", + className: menuClasses, + onClick: function onClick() { + return onClickHandler(menu); + } + }, menu.icon && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-Navigation-VerticalNavigation--menuIcon", + className: menuIconClasses, + name: menu.icon, + appearance: getIconAppearance(activeMenuIcon, menu.disabled) + }), expanded && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("span", { + className: "Navigation-menuLabel" + }, /*#__PURE__*/React__namespace.createElement(Text, { + appearance: getTextAppearance(activeMenu, menu.disabled) + }, menu.label)), menu.subMenu && menu.subMenu.length > 0 && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-Navigation-VerticalNavigation--expandedSubMenuIcon", + className: "mx-4", + name: menuState[menu.name] ? 'keyboard_arrow_up' : 'keyboard_arrow_down', + appearance: "subtle" + }))), /*#__PURE__*/React__namespace.createElement("div", { + className: "Navigation-subMenu" + }, menuState[menu.name] && menu.subMenu && expanded && menu.subMenu.map(function (subMenu, ind) { + var _a; + + var isActive = isMenuActive(menus, subMenu, active); + var subMenuClasses = classNames__default["default"](menuClasses, (_a = {}, _a['Navigation-menu--subMenu'] = true, _a['Navigation-menu--active'] = isActive, _a)); + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Navigation-VerticalNavigation--subMenu", + key: ind, + className: subMenuClasses, + onClick: function onClick() { + return onClickHandler(subMenu); + } + }, /*#__PURE__*/React__namespace.createElement(Text, { + appearance: getTextAppearance(isActive, subMenu.disabled) + }, subMenu.label)); + }))); }); + var footerClasses = classNames__default["default"]((_a = { + 'Navigation-footer': true + }, _a['Navigation-footer--border'] = true, _a)); + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", { + className: "Navigation-body" + }, list), footer && /*#__PURE__*/React__namespace.createElement("div", { + className: footerClasses + }, /*#__PURE__*/React__namespace.createElement(Icon, { + className: "Navigation-menuIcon Navigation-menuIcon--footer", + name: "menu_open", + size: 16, + onClick: function onClick() { + return onToggle && onToggle(!expanded); + } + }))); }; - DropzoneBase.displayName = 'DropzoneBase'; - DropzoneBase.defaultProps = { - disabled: false, - getFilesFromEvent: fromEvent, - maxSize: Infinity, - minSize: 0, - multiple: true, - preventDropOnDocument: true, - validator: function validator() { - return null; - } - }; - - var DropzoneActive = function DropzoneActive(props) { - var _a; - - var type = props.type; - var IconClass = classNames__default['default']((_a = {}, _a['Dropzone-stateIcon'] = true, _a["Dropzone-stateIcon--" + type] = type, _a)); - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, type !== 'tight' && /*#__PURE__*/React__namespace.createElement(Icon, { - name: "archive", - size: 64, - appearance: "info", - className: IconClass - }), /*#__PURE__*/React__namespace.createElement(Text, { - appearance: "link", - size: "large", - weight: "strong" - }, "Drop your files here")); + VerticalNavigation.defaultProps = { + expanded: true, + autoCollapse: true, + rounded: false }; - DropzoneActive.displayName = 'DropzoneActive'; - var DropzoneError = function DropzoneError(props) { + var Navigation = function Navigation(props) { var _a; var type = props.type, - error = props.error; - var IconClass = classNames__default['default']((_a = {}, _a['Dropzone-stateIcon'] = true, _a["Dropzone-stateIcon--" + type] = type, _a)); - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, type !== 'tight' && /*#__PURE__*/React__namespace.createElement(Icon, { - name: "error", - size: 64, - appearance: "alert", - className: IconClass - }), /*#__PURE__*/React__namespace.createElement(Text, { - appearance: "destructive", - size: "large", - weight: "strong" - }, error)); - }; - DropzoneError.displayName = 'DropzoneError'; + align = props.align, + menus = props.menus, + active = props.active, + onClick = props.onClick, + expanded = props.expanded, + rounded = props.rounded, + onToggle = props.onToggle, + footer = props.footer, + autoCollapse = props.autoCollapse, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]((_a = {}, _a['Navigation'] = true, _a["Navigation--" + type] = type, _a['justify-content-center'] = type === 'horizontal' && align === 'center', _a['justify-content-start'] = type === 'horizontal' && align === 'left', _a['Navigation--collapsed'] = !expanded, _a), className); - var Dropzone = function Dropzone(props) { - var _a, _b, _c; + var renderNavigation = function renderNavigation() { + return type === 'horizontal' ? /*#__PURE__*/React__namespace.createElement(HorizontalNav, { + menus: menus, + active: active, + onClick: onClick + }) : /*#__PURE__*/React__namespace.createElement(VerticalNavigation, { + menus: menus, + active: active, + autoCollapse: autoCollapse, + expanded: expanded, + rounded: rounded, + footer: footer, + onToggle: onToggle, + onClick: onClick + }); + }; - var type = props.type, - sizeLabel = props.sizeLabel, - className = props.className, - formatLabel = props.formatLabel, - sampleFileLink = props.sampleFileLink, - disabled = props.disabled; + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: classes + }), renderNavigation()); + }; + Navigation.defaultProps = { + type: 'horizontal', + align: 'center', + expanded: true, + autoCollapse: true, + rounded: false + }; - var _d = DropzoneBase(props), - open = _d.open, - getRootProps = _d.getRootProps, - getInputProps = _d.getInputProps, - isDragActive = _d.isDragActive, - isDragReject = _d.isDragReject, - fileError = _d.fileError; + var Status = function Status(props) { + var status = props.status, + meta = props.meta, + navigationPosition = props.navigationPosition, + navigation = props.navigation, + tabs = props.tabs; + var statusClasses = classNames__default["default"]({ + 'PageHeader-statusWrapper': true, + 'mb-3': navigationPosition === 'bottom' && navigation || tabs + }); + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, (status || meta) && /*#__PURE__*/React__namespace.createElement("div", { + className: statusClasses, + "data-test": "DesignSystem-PageHeader--Status" + }, status, meta)); + }; + var Action = function Action(props) { + var actions = props.actions, + navigation = props.navigation, + stepper = props.stepper; + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, actions ? /*#__PURE__*/React__namespace.createElement(Column, { + size: "4", + sizeXL: "4", + sizeM: "4", + "data-test": "DesignSystem-PageHeader--Actions" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "PageHeader-actionsWrapper" + }, actions)) : (navigation || stepper) && /*#__PURE__*/React__namespace.createElement(Column, { + size: "4", + sizeXL: "4", + sizeM: "4", + "data-test": "DesignSystem-PageHeader--Actions" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "PageHeader-actionsWrapper" + }))); + }; + var Nav = function Nav(props) { + var navigation = props.navigation, + stepper = props.stepper; - var baseProps = extractBaseProps(props); - var DropzoneClass = classNames__default['default']((_a = {}, _a['Dropzone'] = true, _a["Dropzone--" + type] = type, _a['Dropzone--disabled'] = disabled, _a['Dropzone--active'] = isDragActive, _a['Dropzone--error'] = isDragReject, _a), className); - var IconClass = classNames__default['default']((_b = {}, _b['Dropzone-icon'] = true, _b["Dropzone-icon--" + type] = true, _b['Dropzone-icon--disabled'] = disabled, _b)); - var WrapperClass = classNames__default['default']((_c = {}, _c['DropzoneWrapper'] = true, _c["DropzoneWrapper--" + type] = true, _c)); - - if (isDragReject) { - return /*#__PURE__*/React__default['default'].createElement("div", __assign({}, getRootProps(), baseProps, { - className: DropzoneClass - }), /*#__PURE__*/React__default['default'].createElement(DropzoneError, { - type: type, - error: fileErrorMessages[fileError] - })); + if (!navigation && !stepper) { + return null; } - if (isDragActive) { - return /*#__PURE__*/React__default['default'].createElement("div", __assign({}, getRootProps(), baseProps, { - className: DropzoneClass - }), /*#__PURE__*/React__default['default'].createElement(DropzoneActive, { - type: type - })); - } + return /*#__PURE__*/React__namespace.createElement("div", { + className: "PageHeader-navigationWrapper", + "data-test": "DesignSystem-PageHeader--Nav" + }, navigation || stepper); + }; + var CenterNav = function CenterNav(props) { + var colSize = props.colSize, + breadcrumbs = props.breadcrumbs, + navigationPosition = props.navigationPosition; + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, (!breadcrumbs || navigationPosition === 'center') && colSize === '4' && /*#__PURE__*/React__namespace.createElement(Column, { + size: "4", + sizeXL: "4", + sizeM: "4", + "data-test": "DesignSystem-PageHeader--CenterNav" + }, /*#__PURE__*/React__namespace.createElement(Nav, __assign({}, props)))); + }; + var BackButton = function BackButton(props) { + var button = props.button; + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, button && /*#__PURE__*/React__namespace.createElement("div", { + className: "mr-5 my-3", + "data-test": "DesignSystem-PageHeader--Button" + }, button)); + }; + var Title = function Title(props) { + var badge = props.badge, + title = props.title; + return /*#__PURE__*/React__namespace.createElement("div", { + className: "PageHeader-titleWrapper", + "data-test": "DesignSystem-PageHeader--Title" + }, /*#__PURE__*/React__namespace.createElement(Heading, { + className: "PageHeader-title" + }, title), badge); + }; - var renderDropzone = function renderDropzone() { - if (isDragReject) return /*#__PURE__*/React__default['default'].createElement(DropzoneError, { - type: type, - error: fileErrorMessages[fileError] - }); - if (isDragActive) return /*#__PURE__*/React__default['default'].createElement(DropzoneActive, { - type: type - }); - return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, type !== 'tight' && /*#__PURE__*/React__default['default'].createElement(Icon, { - name: "backup", - size: 64, - className: IconClass - }), /*#__PURE__*/React__default['default'].createElement("div", { - className: WrapperClass - }, /*#__PURE__*/React__default['default'].createElement("span", null, /*#__PURE__*/React__default['default'].createElement(Text, { - size: "large", - weight: "strong", - className: "mr-2", - appearance: disabled ? 'disabled' : 'default' - }, "Drag your files here or"), /*#__PURE__*/React__default['default'].createElement("span", { - className: "cursor-pointer", - onClick: open - }, /*#__PURE__*/React__default['default'].createElement(Text, { - size: "large", - weight: "strong", - appearance: disabled ? 'disabled' : 'link' - }, " browse files")), /*#__PURE__*/React__default['default'].createElement("input", __assign({}, getInputProps()))), formatLabel && /*#__PURE__*/React__default['default'].createElement(Text, { - appearance: disabled ? 'disabled' : 'subtle' - }, formatLabel), sizeLabel && /*#__PURE__*/React__default['default'].createElement(Text, { - appearance: disabled ? 'disabled' : 'subtle' - }, sizeLabel), sampleFileLink && /*#__PURE__*/React__default['default'].createElement("div", { - className: "mt-5" - }, sampleFileLink))); + var PageHeader = function PageHeader(props) { + var _a; + + var title = props.title, + navigation = props.navigation, + stepper = props.stepper, + actions = props.actions, + tabs = props.tabs, + breadcrumbs = props.breadcrumbs, + badge = props.badge, + separator = props.separator, + status = props.status, + meta = props.meta, + navigationPosition = props.navigationPosition, + className = props.className, + button = props.button; + var baseProps = extractBaseProps(props); + var wrapperClasses = classNames__default["default"]((_a = { + 'PageHeader-wrapper': true + }, _a['PageHeader-wrapper--withTabs'] = tabs, _a), className); + var classes = classNames__default["default"]({ + PageHeader: true + }); + var colSize = (navigation || stepper) && navigationPosition === 'center' ? '4' : actions ? '8' : '12'; + var centerNavProps = { + colSize: colSize, + breadcrumbs: breadcrumbs, + navigationPosition: navigationPosition, + navigation: navigation, + stepper: stepper + }; + var statusProps = { + status: status, + meta: meta, + navigationPosition: navigationPosition, + navigation: navigation, + tabs: tabs }; + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-PageHeader" + }, /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: wrapperClasses + }), breadcrumbs && /*#__PURE__*/React__namespace.createElement("div", { + className: "pl-6", + "data-test": "DesignSystem-PageHeader--Breadcrumbs" + }, breadcrumbs), /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex pl-6" + }, /*#__PURE__*/React__namespace.createElement(BackButton, { + button: button + }), /*#__PURE__*/React__namespace.createElement("div", { + className: classes + }, /*#__PURE__*/React__namespace.createElement(Row, null, /*#__PURE__*/React__namespace.createElement(Column, { + size: colSize, + sizeXL: colSize, + sizeM: colSize + }, /*#__PURE__*/React__namespace.createElement(Title, { + badge: badge, + title: title + })), /*#__PURE__*/React__namespace.createElement(CenterNav, __assign({}, centerNavProps)), /*#__PURE__*/React__namespace.createElement(Action, { + actions: actions, + navigation: navigation, + stepper: stepper + })), /*#__PURE__*/React__namespace.createElement(Status, __assign({}, statusProps)))), /*#__PURE__*/React__namespace.createElement("div", { + className: "pl-3" + }, navigationPosition === 'bottom' && /*#__PURE__*/React__namespace.createElement(Nav, { + navigation: navigation, + stepper: stepper + }), tabs && /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-PageHeader--Tabs" + }, tabs))), separator && /*#__PURE__*/React__namespace.createElement(Divider, { + appearance: "header" + })); + }; + PageHeader.defaultProps = { + navigationPosition: 'center', + separator: true + }; - return /*#__PURE__*/React__default['default'].createElement("div", __assign({}, getRootProps(), baseProps, { - className: DropzoneClass - }), renderDropzone()); + var useEffect = React__namespace.useEffect, + useState = React__namespace.useState; + var IconMapping$1 = { + audio: 'audiotrack', + image: 'image', + video: 'movie', + application: 'insert_drive_file', + others: 'text_snippet' }; - Dropzone.displayName = 'Dropzone'; - Dropzone.defaultProps = __assign(__assign({}, DropzoneBase.defaultProps), { - type: 'standard' - }); + var FileIcon = function FileIcon(props) { + var _a, _b; - var FileUploaderFormat = function FileUploaderFormat(props) { - var formatLabel = props.formatLabel; + var progress = props.progress, + status = props.status, + file = props.file; - if (formatLabel) { - return /*#__PURE__*/React__namespace.createElement(Text, { + var _c = useState(false), + animate = _c[0], + setAnimate = _c[1]; + + var type = file.type.split('/')[0] || 'others'; + var fileType = IconMapping$1[type] ? type : 'others'; + var iconClass = classNames__default["default"]((_a = {}, _a['FileIcon'] = true, _a['FileIcon--animate'] = animate, _a["FileIcon--" + fileType] = true, _a)); + var uploadingIconClass = classNames__default["default"]((_b = {}, _b['FileIcon'] = true, _b['FileIcon--uploading'] = true, _b)); + useEffect(function () { + if (status === 'completed') { + setAnimate(true); + } else { + setAnimate(false); + } + }, [status]); + + if (status === 'uploading') { + return /*#__PURE__*/React__namespace.createElement(ProgressRing, { size: "small", - appearance: "subtle", - className: "mt-4" - }, formatLabel); + value: progress || 0, + className: uploadingIconClass, + "data-test": "DesignSystem-FileListItem--ProgressRing" + }); } - return null; + return /*#__PURE__*/React__namespace.createElement(Icon, { + name: IconMapping$1[fileType], + className: iconClass, + "data-test": "DesignSystem-FileListItem--Icon" + }); + }; + FileIcon.displayName = 'FileIcon'; + FileIcon.defaultProps = { + progress: 0, + status: 'completed' }; - FileUploaderFormat.displayName = 'FileUploaderFormat'; - var FileUploaderButton = function FileUploaderButton(props) { + var FileListItem = function FileListItem(props) { var _a; - var accept = props.accept, - multiple = props.multiple, - uploadButtonLabel = props.uploadButtonLabel, - disabled = props.disabled, - name = props.name, + var progress = props.progress, + errorMessage = props.errorMessage, + onClick = props.onClick, className = props.className, - id = props.id, - _onChange = props.onChange; + actions = props.actions, + fileItem = props.fileItem, + file = props.file, + status = props.status, + fileSize = props.fileSize; + var name = file.name; var baseProps = extractBaseProps(props); - var FileUploaderButtonClass = classNames__default['default']((_a = {}, _a['FileUploaderButton'] = true, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: FileUploaderButtonClass - }), /*#__PURE__*/React__namespace.createElement(Button, { - disabled: disabled, - icon: "backup" - }, uploadButtonLabel), /*#__PURE__*/React__namespace.createElement("input", { - name: name, - id: id, - accept: accept && accept.join(', '), - multiple: multiple, - disabled: disabled, - type: "file", - tabIndex: -1, - className: "FileUploaderButton-input", - onChange: function onChange(event) { - var fileList = event.target.files ? Array.from(event.target.files) : []; - if (_onChange) _onChange(fileList, event); - } - })); - }; - FileUploaderButton.defaultProps = { - uploadButtonLabel: 'Upload files', - disabled: false, - multiple: false - }; - FileUploaderButton.displayName = 'FileUploaderButton'; + var FileItemClass = classNames__default["default"]((_a = {}, _a['FileItem'] = true, _a), className); - var FileUploader = function FileUploader(props) { - var _a; + var onClickHandler = function onClickHandler() { + if (onClick) { + onClick(fileItem); + } + }; - var accept = props.accept, - multiple = props.multiple, - disabled = props.disabled, - title = props.title, - uploadButtonLabel = props.uploadButtonLabel, - sizeLabel = props.sizeLabel, - formatLabel = props.formatLabel, - sampleFileLink = props.sampleFileLink, - className = props.className, - id = props.id, - name = props.name, - onChange = props.onChange; - var baseProps = extractBaseProps(props); - var FileUploaderClass = classNames__default['default']((_a = {}, _a['FileUploader'] = true, _a), className); return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: FileUploaderClass + className: FileItemClass, + onClick: onClickHandler, + "data-test": "DesignSystem-FileListItem" + }), /*#__PURE__*/React__namespace.createElement("div", { + className: "FileItem-file" + }, /*#__PURE__*/React__namespace.createElement("div", { + className: "FileItem-fileContent" + }, /*#__PURE__*/React__namespace.createElement(FileIcon, { + file: file, + status: status, + progress: progress }), /*#__PURE__*/React__namespace.createElement(Text, { + "data-test": "DesignSystem-FileListItem--Name", + className: "FileItem-text", + appearance: status === 'completed' ? 'default' : 'subtle', weight: "medium" - }, title), /*#__PURE__*/React__namespace.createElement(FileUploaderFormat, { - formatLabel: formatLabel - }), /*#__PURE__*/React__namespace.createElement(Text, { + }, name)), /*#__PURE__*/React__namespace.createElement("div", { + className: "FileItem-actions" + }, /*#__PURE__*/React__namespace.createElement(Text, { + className: "FileItem-size", size: "small", - appearance: "subtle", - className: !formatLabel ? 'mt-4' : '' - }, sizeLabel), sampleFileLink && /*#__PURE__*/React__namespace.createElement("div", { - className: "mt-4" - }, sampleFileLink), /*#__PURE__*/React__namespace.createElement(FileUploaderButton, { - id: id, - name: name, - accept: accept, - multiple: multiple, - disabled: disabled, - uploadButtonLabel: uploadButtonLabel, - onChange: onChange, - className: "mt-5" + appearance: 'subtle', + "data-test": "DesignSystem-FileListItem--Size" + }, fileSize || file.size), !!actions && actions)), status === 'error' && /*#__PURE__*/React__namespace.createElement(InlineMessage, { + size: "small", + appearance: "alert", + description: errorMessage, + className: 'FileItem-error' })); }; - FileUploader.defaultProps = Object.assign({}, FileUploaderButton.defaultProps, { - title: 'Upload files', - sizeLabel: 'Maximum size: 25 MB' - }); - FileUploader.displayName = 'FileUploader'; + FileListItem.defaultProps = { + progress: 0, + errorMessage: 'Network Error' + }; + FileListItem.displayName = 'FileListItem'; + + var FileList = function FileList(props) { + var fileList = props.fileList, + onClick = props.onClick, + actionRenderer = props.actionRenderer, + className = props.className; + var baseProps = extractBaseProps(props); + if (fileList.length === 0) return null; + return /*#__PURE__*/React__namespace.createElement(Card, __assign({}, baseProps, { + shadow: 'none', + className: className + }), fileList.map(function (fileItem, index) { + return /*#__PURE__*/React__namespace.createElement(FileListItem, __assign({ + key: index, + onClick: onClick, + actions: actionRenderer && actionRenderer(fileItem), + fileItem: fileItem + }, fileItem)); + })); + }; + FileList.defaultProps = { + fileList: [] + }; + FileList.displayName = 'FileList'; + + var KEY_CODE = { + backspace: 'Backspace', + left: 'ArrowLeft', + up: 'ArrowUp', + right: 'ArrowRight', + down: 'ArrowDown', + e: 'e', + E: 'E' + }; + + var VerificationCodeInput = function VerificationCodeInput(props) { + var _a = props.type, + type = _a === void 0 ? 'number' : _a, + _b = props.fields, + fields = _b === void 0 ? 4 : _b, + _c = props.placeholder, + placeholder = _c === void 0 ? '_' : _c, + _d = props.autoFocus, + autoFocus = _d === void 0 ? true : _d, + onComplete = props.onComplete, + onFocus = props.onFocus, + onBlur = props.onBlur, + className = props.className; + props.value; + var rest = __rest(props, ["type", "fields", "placeholder", "autoFocus", "onComplete", "onFocus", "onBlur", "className", "value"]); + + var initialValues = React.useMemo(function () { + if (props.value && props.value.length) { + return props.value.split(''); + } + + return Array(fields).fill(''); + }, []); + var initialRefs = React.useMemo(function () { + return __spreadArrays(Array(fields)).map(function () { + return /*#__PURE__*/React__default["default"].createRef(); + }); + }, []); + + var _e = React.useState(initialValues), + values = _e[0], + setValues = _e[1]; + + var refs = React.useState(initialRefs)[0]; + React.useEffect(function () { + if (refs[0] && refs[0].current && autoFocus) { + refs[0].current.focus({ + preventScroll: true + }); + } + }, []); + React.useEffect(function () { + var completeValue = values.join(''); + + if (onComplete && completeValue.length === fields) { + onComplete(completeValue); + } + }, [values]); - var FileUploaderStatus = function FileUploaderStatus(props) { - var progress = props.progress, - status = props.status, - onRetry = props.onRetry; + var onChangeHandler = function onChangeHandler(e) { + var index = parseInt(e.target.dataset.id, 10); + var fieldValue = e.target.value; + var nextRef; - switch (status) { - case 'uploading': - return /*#__PURE__*/React__namespace.createElement(ProgressRing, { - size: "small", - value: progress, - className: "mr-4" + var newValues = __spreadArrays(values); + + if (!fieldValue) { + return; + } + + if (fieldValue.length > 1) { + var nextIndex = fieldValue.length + index - 1; + + if (nextIndex >= fields) { + nextIndex = fields - 1; + } + + nextRef = refs[nextIndex]; + var split = fieldValue.split(''); + split.forEach(function (item, i) { + var cursor = index + i; + + if (cursor < fields) { + newValues[cursor] = item; + } }); + setValues(newValues); + } else { + nextRef = refs[index + 1]; + newValues[index] = fieldValue; + setValues(newValues); + } - case 'error': - return /*#__PURE__*/React__namespace.createElement(Button, { - appearance: "transparent", - size: "regular", - onClick: onRetry, - icon: "refresh", - className: "mr-2" + if (nextRef && nextRef.current) { + nextRef.current.focus({ + preventScroll: true }); + nextRef.current.select(); + } + }; - default: - return null; - } - }; - FileUploaderStatus.displayName = 'FileUploaderStatus'; - FileUploaderStatus.defaultProps = { - status: 'completed', - progress: 0 - }; + var onFocusHandler = function onFocusHandler(e) { + e.target.select(); + e.target.placeholder = ''; - var FileUploaderItem = function FileUploaderItem(props) { - var _a; + if (onFocus) { + onFocus(e); + } + }; - var file = props.file, - id = props.id, - status = props.status, - errorMessage = props.errorMessage, - progress = props.progress, - _onClick = props.onClick, - onDelete = props.onDelete, - _onRetry = props.onRetry, - className = props.className; - var name = file.name; - var baseProps = extractBaseProps(props); - var FileItemClass = classNames__default['default']((_a = {}, _a['FileUploaderItem'] = true, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: FileItemClass, - onClick: function onClick() { - return _onClick && _onClick(file, id); + var onBlurHandler = function onBlurHandler(e) { + e.target.placeholder = placeholder; + + if (onBlur) { + onBlur(e); } - }), /*#__PURE__*/React__namespace.createElement("div", { - className: "FileUploaderItem-file" - }, /*#__PURE__*/React__namespace.createElement(Text, { - className: "FileUploaderItem-text", - appearance: status === 'completed' ? 'default' : 'subtle' - }, name), /*#__PURE__*/React__namespace.createElement("div", { - className: "d-flex align-items-center" - }, /*#__PURE__*/React__namespace.createElement(FileUploaderStatus, { - file: file, - id: id, - status: status, - progress: progress, - onRetry: function onRetry() { - return _onRetry && _onRetry(file, id); + }; + + var onKeyDown = function onKeyDown(e) { + var index = parseInt(e.currentTarget.dataset.id, 10); + var prevIndex = index - 1; + var nextIndex = index + 1; + var prev = refs[prevIndex]; + var nextRef = refs[nextIndex]; + + switch (e.key) { + case KEY_CODE.backspace: + { + e.preventDefault(); + + var vals = __spreadArrays(values); + + if (values[index]) { + vals[index] = ''; + setValues(vals); + } else if (prev && prev.current) { + vals[prevIndex] = ''; + prev.current.focus({ + preventScroll: true + }); + setValues(vals); + } + + break; + } + + case KEY_CODE.left: + { + e.preventDefault(); + + if (prev && prev.current) { + prev.current.focus({ + preventScroll: true + }); + } + + break; + } + + case KEY_CODE.right: + { + e.preventDefault(); + + if (nextRef && nextRef.current) { + nextRef.current.focus({ + preventScroll: true + }); + } + + break; + } + + case KEY_CODE.up: + case KEY_CODE.down: + case KEY_CODE.e: + case KEY_CODE.E: + { + if (type === 'number') { + e.preventDefault(); + } + + break; + } } - }), /*#__PURE__*/React__namespace.createElement(Button, { - appearance: "transparent", - size: "regular", - onClick: function onClick() { - return onDelete && onDelete(file, id); - }, - icon: "close" - }))), status === 'error' && /*#__PURE__*/React__namespace.createElement(Caption, { - error: true - }, errorMessage)); - }; - FileUploaderItem.defaultProps = { - status: 'completed', - progress: 0, - errorMessage: 'Network Error' - }; - FileUploaderItem.displayName = 'FileUploaderItem'; + }; - var FileUploaderList = function FileUploaderList(props) { - var _a; + var wrapperClassNames = function wrapperClassNames(i) { + return classNames__default["default"]({ + 'VerificationCodeInput-Input': true, + 'ml-4': i > 0 + }, className); + }; - var fileList = props.fileList, - onClick = props.onClick, - onDelete = props.onDelete, - onRetry = props.onRetry, - className = props.className; - var baseProps = extractBaseProps(props); - var FileListClass = classNames__default['default']((_a = {}, _a['FileUploaderList'] = true, _a), className); - if (fileList.length === 0) return null; - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: FileListClass - }), fileList.map(function (fileName, i) { - return /*#__PURE__*/React__namespace.createElement(FileUploaderItem, __assign({ - key: i, - onDelete: onDelete, - onRetry: onRetry, - onClick: onClick - }, fileName)); + return /*#__PURE__*/React__default["default"].createElement("div", { + "data-test": "DesignSystem-VerificationCodeInput", + className: "VerificationCodeInput" + }, values.map(function (val, index) { + return /*#__PURE__*/React__default["default"].createElement(Input, __assign({ + key: index, + className: wrapperClassNames(index), + size: "large", + minWidth: "40px", + value: val, + placeholder: placeholder, + onChange: onChangeHandler, + onKeyDown: onKeyDown, + onFocus: onFocusHandler, + onBlur: onBlurHandler, + "data-id": index, + ref: refs[index], + type: type + }, rest)); })); }; - FileUploaderList.defaultProps = { - fileList: [] - }; - FileUploaderList.displayName = 'FileUploaderList'; - var resizeCol = function resizeCol(_a, name, el) { - var updateColumnSchema = _a.updateColumnSchema; - var elX = el === null || el === void 0 ? void 0 : el.getBoundingClientRect().x; + VerificationCodeInput.displayName = 'VerificationCodeInput'; + VerificationCodeInput.defaultProps = { + type: 'number', + fields: 4 + }; - function resizable(ev) { - ev.preventDefault(); + var IconMapping = { + success: 'check_circle', + info: 'info', + warning: 'warning', + alert: 'error' + }; + var InlineMessage = function InlineMessage(props) { + var _a, _b, _c; - if (elX) { - updateColumnSchema(name, { - width: ev.pageX - elX - }); - } - } + var appearance = props.appearance, + className = props.className, + description = props.description, + size = props.size; + var baseProps = extractBaseProps(props); + var InlineMessageClass = classNames__default["default"]((_a = {}, _a['InlineMessage'] = true, _a), className); + var IconClass = classNames__default["default"]((_b = {}, _b['InlineMessage-icon--warning'] = appearance === 'warning', _b['InlineMessage-icon--small'] = size === 'small', _b['InlineMessage-icon--regular'] = size === 'regular', _b)); + var DescriptionClass = classNames__default["default"]((_c = {}, _c["InlineMessage-text--" + appearance] = appearance, _c)); + var IconSize = size === 'small' ? 14 : 16; + var TextWeight = size === 'small' ? 'medium' : undefined; + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-InlineMessage" + }, baseProps, { + className: InlineMessageClass + }), appearance !== 'default' && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-InlineMessage--Icon", + name: IconMapping[appearance], + appearance: appearance, + className: IconClass, + size: IconSize + }), /*#__PURE__*/React__namespace.createElement(Text, { + size: size, + weight: TextWeight, + className: DescriptionClass, + "data-test": "DesignSystem-InlineMessage--Description" + }, description)); + }; + InlineMessage.displayName = 'InlineMessage'; + InlineMessage.defaultProps = { + appearance: 'default', + description: '', + size: 'regular' + }; - window.addEventListener('mousemove', resizable); - window.addEventListener('mouseup', function () { - window.removeEventListener('mousemove', resizable); + var renderCheckbox = function renderCheckbox(list, handleOnChange, ChoiceListDisabled, size, alignment, selected) { + return list.map(function (item, checkboxIndex) { + var name = item.name, + value = item.value, + helpText = item.helpText, + disabled = item.disabled, + label = item.label; + return /*#__PURE__*/React__namespace.createElement(Checkbox, { + key: checkboxIndex, + label: label, + onChange: handleOnChange, + disabled: disabled || ChoiceListDisabled, + helpText: helpText, + size: size, + name: name, + value: value, + defaultChecked: selected.length !== 0 && selected.includes(value), + className: getCheckboxClassName(alignment, checkboxIndex) + }); }); }; - var sortColumn = function sortColumn(_a, name, type) { - var sortingList = _a.sortingList, - updateSortingList = _a.updateSortingList; - - var newSortingList = __spreadArrays(sortingList); - var index = newSortingList.findIndex(function (l) { - return l.name === name; + var renderRadio = function renderRadio(list, handleOnChange, ChoiceListDisabled, size, alignment, selected) { + return list.map(function (item, radioIndex) { + var name = item.name, + value = item.value, + helpText = item.helpText, + disabled = item.disabled, + label = item.label; + return /*#__PURE__*/React__namespace.createElement(Radio, { + key: radioIndex, + label: label, + onChange: handleOnChange, + disabled: disabled || ChoiceListDisabled, + helpText: helpText, + size: size, + name: name, + value: value, + defaultChecked: selected.length !== 0 && selected.includes(value), + className: getRadioClassName(alignment, radioIndex) + }); }); + }; - if (index !== -1) { - newSortingList = __spreadArrays(newSortingList.slice(0, index), newSortingList.slice(index + 1)); - } + var getCheckboxClassName = function getCheckboxClassName(alignment, index) { + var _a; - if (type !== 'unsort') newSortingList.push({ - name: name, - type: type - }); - updateSortingList(newSortingList); - }; - var pinColumn = function pinColumn(_a, name, type) { - var updateColumnSchema = _a.updateColumnSchema; - var schemaUpdate = { - pinned: type !== 'unpin' ? type : undefined - }; - updateColumnSchema(name, schemaUpdate); + var ChoiceListCheckboxClass = classNames__default["default"]((_a = {}, _a["ChoiceList-checkbox--" + alignment] = true, _a['ml-0'] = index === 0 && alignment === 'horizontal', _a['mt-4'] = alignment === 'horizontal', _a)); + return ChoiceListCheckboxClass; }; - var hideColumn = function hideColumn(_a, name, value) { - var updateColumnSchema = _a.updateColumnSchema; - var schemaUpdate = { - hidden: value - }; - updateColumnSchema(name, schemaUpdate); + + var getRadioClassName = function getRadioClassName(alignment, index) { + var _a; + + var ChoiceListRadioClass = classNames__default["default"]((_a = {}, _a["ChoiceList-radio--" + alignment] = true, _a['ml-0'] = index === 0 && alignment === 'horizontal', _a['mt-4'] = alignment === 'horizontal', _a)); + return ChoiceListRadioClass; }; - function getWidth(_a, width) { - var ref = _a.ref, - withCheckbox = _a.withCheckbox; - var isPercent = typeof width === 'string' && width.slice(-1) === '%'; - if (isPercent) { - var checkboxCell = ref.querySelector('.Grid-cell--checkbox'); - var checkboxWidth = withCheckbox ? (checkboxCell === null || checkboxCell === void 0 ? void 0 : checkboxCell.clientWidth) || 28 : 0; - var gridWidth = ref.clientWidth - checkboxWidth; - return gridWidth * (+width.slice(0, -1) / 100); - } + var ChoiceList = function ChoiceList(props) { + var _a, _b, _c; - return width; - } - function getCellSize(cellType) { - var sizes = { - AVATAR: { - minWidth: 48 - }, - AVATAR_WITH_TEXT: { - width: 256 - }, - AVATAR_WITH_META_LIST: { - width: 256 - }, - ICON: { - minWdth: 48 - }, - STATUS_HINT: { - width: 96 - }, - WITH_META_LIST: { - width: 176 - }, - DEFAULT: { - width: 176 + var title = props.title, + choices = props.choices, + _d = props.alignment, + alignment = _d === void 0 ? 'vertical' : _d, + _e = props.allowMultiple, + allowMultiple = _e === void 0 ? false : _e, + onChange = props.onChange, + _f = props.disabled, + disabled = _f === void 0 ? false : _f, + _g = props.size, + size = _g === void 0 ? 'regular' : _g, + className = props.className; + var _h = props.selected, + selected = _h === void 0 ? [] : _h; + var selectedChoiceValue = selected && selected || []; + var ChoiceListClass = classNames__default["default"]((_a = {}, _a['ChoiceList'] = true, _a), className); + var ChoiceListVerticalClass = classNames__default["default"]((_b = {}, _b['ChoiceList--alignVertical'] = true, _b)); + var ChoiceHorizontalClass = classNames__default["default"]((_c = {}, _c['ChoiceList--alignHorizontal'] = true, _c)); + + var handleOnChange = function handleOnChange(e) { + if (e.target.checked && allowMultiple) { + if (!selectedChoiceValue.includes(e.target.value)) { + selectedChoiceValue = __spreadArrays(selectedChoiceValue, [e.target.value]); + } + } else if (!e.target.checked && allowMultiple) { + selectedChoiceValue = selectedChoiceValue.filter(function (el) { + return el !== e.target.value; + }); } - }; - return sizes[cellType]; - } - var updateBatchData = function updateBatchData(data, rowIndexes, dataUpdate) { - var updatedData = __spreadArrays(data); + if (!allowMultiple) { + if (!selectedChoiceValue.includes(e.target.value)) { + selectedChoiceValue = []; + selectedChoiceValue = __spreadArrays(selectedChoiceValue, [e.target.value]); + } + } - for (var _i = 0, rowIndexes_1 = rowIndexes; _i < rowIndexes_1.length; _i++) { - var rowIndex = rowIndexes_1[_i]; - updatedData[rowIndex] = __assign(__assign({}, updatedData[rowIndex]), dataUpdate); - } + if (onChange) onChange(e, selectedChoiceValue); + }; - return updatedData; + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("fieldset", { + className: ChoiceListClass, + "data-test": "DesignSystem-ChoiceList-Wrapper" + }, title && title.trim() && /*#__PURE__*/React__namespace.createElement(Label, { + withInput: true + }, title.trim()), allowMultiple ? /*#__PURE__*/React__namespace.createElement("div", { + className: "" + (alignment === 'horizontal' ? ChoiceHorizontalClass : ChoiceListVerticalClass) + }, renderCheckbox(choices, handleOnChange, disabled, size, alignment, selected)) : /*#__PURE__*/React__namespace.createElement("div", { + className: "" + (alignment === 'horizontal' ? ChoiceHorizontalClass : ChoiceListVerticalClass) + }, renderRadio(choices, handleOnChange, disabled, size, alignment, selected)))); + }; + ChoiceList.displayName = 'ChoiceList'; + ChoiceList.defaultProps = { + alignment: 'vertical', + size: 'regular', + allowMultiple: false, + disabled: false }; - function translateData(schema, data) { - var newData = __assign({}, data); - - if (schema.translate) { - var translatedData = schema.translate(data); - newData[schema.name] = translatedData !== null && _typeof(translatedData) === 'object' ? __assign(__assign({}, newData[schema.name]), translatedData) : translatedData; - } - - if (newData[schema.name] === null || _typeof(newData[schema.name]) !== 'object') { - newData[schema.name] = { - title: newData[schema.name] - }; - } - - return newData; - } - var filterData = function filterData(schema, data, filterList) { - if (schema === void 0) { - schema = []; - } - if (data === void 0) { - data = []; - } + var Divider = function Divider(props) { + var _a; - var filteredData = data; + var vertical = props.vertical, + appearance = props.appearance, + className = props.className; + var baseProps = extractBaseProps(props); + var DividerClass = classNames__default["default"]((_a = {}, _a['Divider'] = true, _a['Divider--horizontal'] = !vertical, _a['Divider--vertical'] = vertical, _a['Divider--basic'] = !vertical && appearance !== 'header', _a['Divider--header'] = !vertical && appearance === 'header', _a), className); + return /*#__PURE__*/React__namespace.createElement("hr", __assign({ + "data-test": "DesignSystem-Divider" + }, baseProps, { + className: DividerClass + })); + }; + Divider.displayName = 'Divider'; + Divider.defaultProps = { + appearance: 'basic', + vertical: false + }; - if (filterList) { - Object.keys(filterList).forEach(function (schemaName) { - var filters = filterList[schemaName]; - var sIndex = schema.findIndex(function (s) { - return s.name === schemaName; - }); - var onFilterChange = schema[sIndex].onFilterChange; + var HelpText = function HelpText(props) { + var error = props.error, + message = props.message, + className = props.className; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]({ + 'mt-3': true + }, className); + if (!message) return null; - if (filters.length && onFilterChange) { - filteredData = filteredData.filter(function (d) { - return onFilterChange(d, filters); - }); - } + if (error) { + return /*#__PURE__*/React__namespace.createElement(InlineMessage, { + size: "small", + className: classes, + appearance: "alert", + description: message }); } - return filteredData; + return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { + className: classes + }), /*#__PURE__*/React__namespace.createElement(Text, { + appearance: "subtle", + size: "small", + weight: "medium" + }, message)); }; - var sortData = function sortData(schema, data, sortingList) { - if (schema === void 0) { - schema = []; - } - - if (data === void 0) { - data = []; - } - - var sortedData = __spreadArrays(data); + HelpText.displayName = 'HelpText'; - sortingList === null || sortingList === void 0 ? void 0 : sortingList.forEach(function (l) { - var sIndex = schema.findIndex(function (s) { - return s.name === l.name; - }); + var sizeMapping = { + tiny: 12, + regular: 16 + }; + var LinkButton = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a, _b; - if (sIndex !== -1) { - var defaultComparator = function defaultComparator(a, b) { - var aData = translateData(schema[sIndex], a); - var bData = translateData(schema[sIndex], b); - return aData[l.name].title.localeCompare(bData[l.name].title); - }; + var children = props.children, + type = props.type, + className = props.className, + disabled = props.disabled, + tabIndex = props.tabIndex, + icon = props.icon, + subtle = props.subtle, + size = props.size, + iconAlign = props.iconAlign, + iconType = props.iconType, + rest = __rest(props, ["children", "type", "className", "disabled", "tabIndex", "icon", "subtle", "size", "iconAlign", "iconType"]); - var _a = schema[sIndex].comparator, - comparator = _a === void 0 ? defaultComparator : _a; - sortedData.sort(comparator); - if (l.type === 'desc') sortedData.reverse(); - } - }); - return sortedData; + var buttonClass = classNames__default["default"]((_a = {}, _a['LinkButton'] = true, _a["LinkButton--" + size] = size, _a['LinkButton--default'] = !subtle, _a['LinkButton--subtle'] = subtle, _a["LinkButton--iconAlign-" + iconAlign] = children && iconAlign, _a["" + className] = className, _a)); + var iconClass = classNames__default["default"]((_b = {}, _b['LinkButton-icon'] = true, _b["LinkButton-icon--" + iconAlign] = children && iconAlign, _b)); + return /*#__PURE__*/React__namespace.createElement("button", __assign({ + ref: ref, + type: type, + "data-test": "DesignSystem-LinkButton", + className: buttonClass, + disabled: disabled, + tabIndex: tabIndex + }, rest), /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, icon && /*#__PURE__*/React__namespace.createElement("div", { + className: iconClass + }, /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-LinkButton--Icon", + name: icon, + type: iconType, + size: size && sizeMapping[size] + })), children)); + }); + LinkButton.displayName = 'LinkButton'; + LinkButton.defaultProps = { + size: 'regular', + type: 'button', + iconAlign: 'left' }; - var paginateData = function paginateData(data, page, pageSize) { - if (data === void 0) { - data = []; - } - var start = (page - 1) * pageSize; - var end = start + pageSize; - var paginatedData = data.slice(start, end); - return paginatedData; - }; + var ActionCard = function ActionCard(props) { + var _a; - var moveToIndex = function moveToIndex(arr, from, to) { - if (from === to) return arr; - var newArr = arr; + var children = props.children, + disabled = props.disabled, + className = props.className, + zIndex = props.zIndex, + onClick = props.onClick, + rest = __rest(props, ["children", "disabled", "className", "zIndex", "onClick"]); - if (from < to) { - newArr = __spreadArrays(arr.slice(0, from), arr.slice(from + 1, to + 1), [arr[from]], arr.slice(to + 1)); - } else { - newArr = __spreadArrays(arr.slice(0, to), [arr[from]], arr.slice(to, from), arr.slice(from + 1)); - } + var classes = classNames__default["default"]((_a = {}, _a['ActionCard'] = true, _a['ActionCard--disabled'] = disabled, _a), className); - return newArr; - }; - var getTotalPages = function getTotalPages(totalRecords, pageSize) { - return Math.ceil(totalRecords / pageSize); - }; - var getSelectAll = function getSelectAll(data) { - if (data.length) { - var anyUnSelected = data.some(function (d) { - return !d._selected; - }); - var allUnSelected = data.every(function (d) { - return !d._selected; - }); - var indeterminate = data.length >= 0 && anyUnSelected && !allUnSelected; - var checked = !indeterminate && !allUnSelected; - return { - indeterminate: indeterminate, - checked: checked - }; - } + var onKeyDownHandler = function onKeyDownHandler(event) { + if (event.key === 'Enter' && onClick) { + onClick(event); + } + }; + + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + tabIndex: disabled ? -1 : 0, + role: "link", + "data-test": "DesignSystem-ActionCard", + className: classes, + onClick: onClick, + onKeyDown: onKeyDownHandler + }, rest), disabled && /*#__PURE__*/React__namespace.createElement("div", { + style: { + zIndex: zIndex + }, + "data-test": "DesignSystem-ActionCard-Overlay", + className: "ActionCard-overlay--disabled" + }), children); + }; + ActionCard.displayName = 'ActionCard'; + + var selectedCardValues = new Map(); + function useMultiSelect() { + var _a = React__namespace.useState([]), + selectedCardIds = _a[0], + setSelectedCardIds = _a[1]; + + var isCardSelected = function isCardSelected(id) { + return selectedCardIds.includes(id); + }; + + var updateCardSelection = function updateCardSelection(id, value) { + var idList = __spreadArrays(selectedCardIds); + + if (isCardSelected(id)) { + idList = selectedCardIds.filter(function (cardKey) { + return id !== cardKey; + }); + selectedCardValues["delete"](id); + } else { + idList.push(id); + selectedCardValues.set(id, value); + } + + setSelectedCardIds(idList); + }; return { - indeterminate: false, - checked: false + selectedCardIds: selectedCardIds, + selectedCardValues: selectedCardValues, + isCardSelected: isCardSelected, + updateCardSelection: updateCardSelection }; - }; - var hasSchema = function hasSchema(schema) { - return schema && !!schema.length; - }; - var getSchema = function getSchema(schema, loading, loaderSchema) { - var response = schema; + } - if (!hasSchema(schema) && loading) { - response = loaderSchema; - } + function useSingleSelect() { + var _a = React__namespace.useState([]), + selectedCardIds = _a[0], + setSelectedCardIds = _a[1]; - return response; - }; - var getPluralSuffix = function getPluralSuffix(count) { - return count > 1 ? 's' : ''; - }; + var _b = React__namespace.useState([]), + selectedCardValues = _b[0], + setSelectedCardValues = _b[1]; - var defaultProps$1 = { - showHead: true, - loaderSchema: [], - schema: [], - data: [], - totalRecords: 0, - type: 'data', - size: 'standard', - page: 1, - pageSize: 15, - loading: false, - error: false, - sortingList: [], - filterList: {}, - showFilters: true - }; + var isCardSelected = function isCardSelected(id) { + return selectedCardIds.includes(id); + }; - var context = /*#__PURE__*/React__default['default'].createContext(__assign(__assign({}, defaultProps$1), { - ref: null - })); - var GridProvider = context.Provider; + var updateCardSelection = function updateCardSelection(id, value) { + var idList = __spreadArrays(selectedCardIds); - var GridNestedRow = function GridNestedRow(props) { - var context$1 = React__namespace.useContext(context); - var schema = context$1.schema, - loading = context$1.loading, - nestedRowRenderer = context$1.nestedRowRenderer; - var data = props.data, - rowIndex = props.rowIndex; - if (nestedRowRenderer) return nestedRowRenderer({ - data: data, - schema: schema, - loading: loading, - rowIndex: rowIndex - }); - return null; - }; + var valueList = __spreadArrays(selectedCardValues); - var HeaderCell = function HeaderCell(props) { - var context$1 = React__namespace.useContext(context); - var schema = props.schema, - onMenuChange = props.onMenuChange, - onFilterChange = props.onFilterChange, - updateColumnSchema = props.updateColumnSchema; - var loading = context$1.loading, - draggable = context$1.draggable, - showMenu = context$1.showMenu, - sortingList = context$1.sortingList, - filterList = context$1.filterList, - headCellTooltip = context$1.headCellTooltip, - showFilters = context$1.showFilters, - schemaProp = context$1.schema; - var _a = schema.sorting, - sorting = _a === void 0 ? true : _a, - name = schema.name, - filters = schema.filters, - pinned = schema.pinned; - var isValidSchema = hasSchema(schemaProp); - var listIndex = sortingList.findIndex(function (l) { - return l.name === name; - }); - var sorted = listIndex !== -1 ? sortingList[listIndex].type : null; - var el = /*#__PURE__*/React__namespace.createRef(); - var sortOptions = [{ - label: 'Sort Ascending', - value: 'sortAsc', - icon: 'arrow_downward' - }, { - label: 'Sort Descending', - value: 'sortDesc', - icon: 'arrow_upward' - }]; - var pinOptions = [{ - label: 'Pin Left', - value: 'pinLeft', - icon: 'skip_previous' - }, { - label: 'Pin Right', - value: 'pinRight', - icon: 'skip_next' - }]; - var unpinOption = { - label: 'Unpin', - value: 'unpin', - icon: 'replay' + if (selectedCardIds.includes(id)) { + idList = []; + valueList = []; + } else { + idList = [id]; + valueList = value ? [value] : []; + } + + setSelectedCardIds(idList); + setSelectedCardValues(valueList); }; - if (pinned === 'left') pinOptions[0] = unpinOption; - if (pinned === 'right') pinOptions[1] = unpinOption; - var hideOptions = [{ - label: 'Hide Column', - value: 'hide', - icon: 'cancel' - }]; - var unsortOption = { - label: 'Unsort', - value: 'unsort', - icon: 'unfold_more' + + return { + selectedCardIds: selectedCardIds, + selectedCardValues: selectedCardValues, + isCardSelected: isCardSelected, + updateCardSelection: updateCardSelection }; - if (sorted === 'asc') sortOptions[0] = unsortOption; - if (sorted === 'desc') sortOptions[1] = unsortOption; + } - var options = __spreadArrays(pinOptions, hideOptions); + var SelectionCard = function SelectionCard(props) { + var _a; - if (sorting) options = __spreadArrays(sortOptions, options); - var classes = classNames__default['default']({ - 'Grid-headCell': true, - 'Grid-headCell--draggable': draggable - }); - var filterOptions = filters ? filters.map(function (f) { - return __assign(__assign({}, f), { - selected: filterList[name] && filterList[name].findIndex(function (fl) { - return fl === f.value; - }) !== -1 - }); - }) : []; + var children = props.children, + onClick = props.onClick, + disabled = props.disabled, + id = props.id, + cardValue = props.cardValue, + overlayZIndex = props.overlayZIndex, + selected = props.selected, + className = props.className, + rest = __rest(props, ["children", "onClick", "disabled", "id", "cardValue", "overlayZIndex", "selected", "className"]); - var renderLabel = function renderLabel() { - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Text, { - weight: "strong", - className: "ellipsis--noWrap" - }, schema.displayName), sorting && /*#__PURE__*/React__namespace.createElement("div", { - className: "Grid-sortingIcons" - }, sorted ? sorted === 'asc' ? /*#__PURE__*/React__namespace.createElement(Icon, { - name: "arrow_downward" - }) : /*#__PURE__*/React__namespace.createElement(Icon, { - name: "arrow_upward" - }) : /*#__PURE__*/React__namespace.createElement(Icon, { - name: "unfold_more" - }))); + var classes = classNames__default["default"]((_a = {}, _a['Selection-card'] = true, _a['Selection-card--selected'] = selected, _a['Selection-card--disabled'] = disabled && !selected, _a['Selection-card--selected-disabled'] = disabled && selected, _a), className); + + var onClickHandler = function onClickHandler(event) { + onClick && onClick(event, id, cardValue); }; - return /*#__PURE__*/React__namespace.createElement("div", { - key: name, - className: classes, - ref: el - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "Grid-cellContent", - onClick: function onClick() { - if (!loading && sorting) { - if (sorted === 'asc') onMenuChange(name, 'sortDesc'); - if (sorted === 'desc') onMenuChange(name, 'unsort'); - if (!sorted) onMenuChange(name, 'sortAsc'); - } + var onKeyDownHandler = function onKeyDownHandler(event) { + if (event.key === 'Enter') { + onClickHandler(event); } - }, loading && !isValidSchema ? /*#__PURE__*/React__namespace.createElement(Placeholder, { - withImage: false - }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { - length: "medium" - })) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, headCellTooltip ? /*#__PURE__*/React__namespace.createElement(Tooltip, { - position: "top-start", - triggerClass: "w-100 overflow-hidden", - tooltip: schema.displayName - }, renderLabel()) : renderLabel())), showFilters && filters && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, loading && !isValidSchema ? /*#__PURE__*/React__namespace.createElement("span", null, /*#__PURE__*/React__namespace.createElement(Placeholder, null)) : /*#__PURE__*/React__namespace.createElement("div", null, /*#__PURE__*/React__namespace.createElement(Dropdown, { - menu: true, - showApplyButton: true, - withCheckbox: true, - triggerOptions: { - customTrigger: function customTrigger() { - return /*#__PURE__*/React__namespace.createElement(Button, { - icon: "filter_list", - appearance: "transparent" - }); - } - }, - options: filterOptions, - align: 'left', - onChange: function onChange(selected) { - return onFilterChange(name, selected); - }, - minWidth: 176 - }))), showMenu && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, loading && !isValidSchema ? /*#__PURE__*/React__namespace.createElement("span", { - className: "ml-4" - }, /*#__PURE__*/React__namespace.createElement(Placeholder, null)) : /*#__PURE__*/React__namespace.createElement("div", null, /*#__PURE__*/React__namespace.createElement(Dropdown, { - key: name + "-" + sorted + "-" + pinned, - menu: true, - optionType: "WITH_ICON", - triggerOptions: { - customTrigger: function customTrigger() { - return /*#__PURE__*/React__namespace.createElement(Button, { - icon: "more_vert_filled", - appearance: "transparent" - }); - } + }; + + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + role: "checkbox", + "aria-checked": selected, + tabIndex: 0, + onKeyDown: onKeyDownHandler, + onClick: function onClick(event) { + return onClickHandler(event); }, - options: options, - align: 'left', - onChange: function onChange(selected) { - return onMenuChange(name, selected); + className: classes, + "data-test": "DesignSystem-SelectionCard" + }, rest), /*#__PURE__*/React__namespace.createElement("div", { + className: "Selection-card-overlay", + style: { + zIndex: overlayZIndex }, - minWidth: 176 - }))), schema.resizable && /*#__PURE__*/React__namespace.createElement("span", { - className: "Grid-cellResize", - onMouseDown: function onMouseDown() { - resizeCol({ - updateColumnSchema: updateColumnSchema - }, name, el.current); + "data-test": "DesignSystem-SelectionCard-Overlay" + }), children); + }; + SelectionCard.defaultProps = { + disabled: false, + overlayZIndex: 2 + }; + SelectionCard.useMultiSelect = useMultiSelect; + SelectionCard.useSingleSelect = useSingleSelect; + + function arrayMove(array, from, to) { + array = array.slice(); + array.splice(to < 0 ? array.length + to : to, 0, array.splice(from, 1)[0]); + return array; + } + function getTranslateOffset(element) { + var style = window.getComputedStyle(element); + return Math.max(parseInt(style['margin-top'], 10), parseInt(style['margin-bottom'], 10)) + element.getBoundingClientRect().height; + } + function isTouchEvent(event) { + return event.touches && event.touches.length || event.changedTouches && event.changedTouches.length; + } + function transformItem(element, offsetY, offsetX) { + if (offsetY === void 0) { + offsetY = 0; + } + + if (offsetX === void 0) { + offsetX = 0; + } + + if (!element) return; + + if (offsetY === null || offsetX === null) { + element.style.removeProperty('transform'); + return; + } + + element.style.transform = "translate(" + offsetX + "px, " + offsetY + "px)"; + } + function setItemTransition(element, duration, timing) { + if (element) { + element.style['transition'] = "transform " + duration + "ms" + (timing ? " " + timing : ''); + } + } + function binarySearch(array, targetValue) { + var min = 0; + var max = array.length - 1; + var guess; + + while (min <= max) { + guess = Math.floor((max + min) / 2); + + if (!array[guess + 1] || array[guess] <= targetValue && array[guess + 1] >= targetValue) { + return guess; + } else if (array[guess] < targetValue && array[guess + 1] < targetValue) { + min = guess + 1; + } else { + max = guess - 1; + } + } + + return -1; + } + var schd = function schd(fn) { + var lastArgs = []; + var frameId = null; + + var wrapperFn = function wrapperFn() { + var args = []; + + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + + lastArgs = args; + + if (frameId) { + return; } - })); - }; - var BodyCell = function BodyCell(props) { - var context$1 = React__namespace.useContext(context); - var data = props.data, - schema = props.schema, - expandedState = props.expandedState, - rowIndex = props.rowIndex, - colIndex = props.colIndex; - var size = context$1.size, - loading = context$1.loading, - nestedRows = context$1.nestedRows; - var expanded = expandedState[0], - setExpanded = expandedState[1]; - var cellProps = { - rowIndex: rowIndex, - colIndex: colIndex, - size: size, - schema: schema, - data: data, - loading: loading, - expanded: expanded - }; - var nestedProps = { - data: data, - rowIndex: rowIndex + frameId = requestAnimationFrame(function () { + frameId = null; + fn.apply(void 0, lastArgs); + }); }; - var isNestedRowDisabled = !GridNestedRow(nestedProps); - return /*#__PURE__*/React__namespace.createElement("div", { - className: "Grid-cellContent" - }, colIndex === 0 && nestedRows && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, !isNestedRowDisabled ? /*#__PURE__*/React__namespace.createElement(Icon, { - className: 'Grid-nestedRowTrigger', - name: expanded ? 'keyboard_arrow_up' : 'keyboard_arrow_down', - size: 20, - appearance: 'default', - onClick: function onClick(e) { - if (!isNestedRowDisabled) { - e.stopPropagation(); - setExpanded(!expanded); - } + + wrapperFn.cancel = function () { + if (frameId) { + cancelAnimationFrame(frameId); } - }) : /*#__PURE__*/React__namespace.createElement("span", { - className: "Grid-nestedRowPlaceholder" - })), schema.cellRenderer ? schema.cellRenderer(cellProps) : /*#__PURE__*/React__namespace.createElement(GridCell, __assign({ - key: rowIndex + "-" + colIndex - }, cellProps))); + }; + + return wrapperFn; }; - var Cell = function Cell(props) { - var context$1 = React__namespace.useContext(context); - var isHead = props.isHead, - firstCell = props.firstCell, - schema = props.schema, - data = props.data, - rowIndex = props.rowIndex, - colIndex = props.colIndex, - expandedState = props.expandedState, - onSelectAll = props.onSelectAll, - onMenuChange = props.onMenuChange, - onFilterChange = props.onFilterChange, - updateColumnSchema = props.updateColumnSchema, - reorderColumn = props.reorderColumn; - var draggable = context$1.draggable, - separator = context$1.separator, - nestedRows = context$1.nestedRows, - ref = context$1.ref, - withCheckbox = context$1.withCheckbox; - var name = schema.name, - hidden = schema.hidden, - pinned = schema.pinned, - _a = schema.cellType, - cellType = _a === void 0 ? 'DEFAULT' : _a; + var AUTOSCROLL_ACTIVE_OFFSET = 200; + var AUTOSCROLL_SPEED_RATIO = 10; - var _b = getCellSize(cellType), - width = _b.width, - _c = _b.minWidth, - minWidth = _c === void 0 ? 96 : _c, - _d = _b.maxWidth, - maxWidth = _d === void 0 ? 800 : _d; + var Draggable = function (_super) { + __extends(Draggable, _super); - var cellClass = classNames__default['default']({ - 'Grid-cell': true, - 'Grid-cell--head': isHead, - 'Grid-cell--body': !isHead, - 'Grid-cell--separator': !firstCell && (schema.separator !== undefined ? schema.separator : separator), - 'Grid-cell--nestedRow': !isHead && colIndex === 0 && nestedRows - }); - if (hidden) return null; - return /*#__PURE__*/React__namespace.createElement("div", { - key: rowIndex + "-" + colIndex, - className: cellClass, - draggable: isHead && draggable, - onDragStart: function onDragStart(e) { - if (draggable) { - e.dataTransfer.setData('name', name); - if (pinned) e.dataTransfer.setData('type', pinned); + function Draggable(props) { + var _this = _super.call(this, props) || this; + + _this.listRef = /*#__PURE__*/React__namespace.createRef(); + _this.ghostRef = /*#__PURE__*/React__namespace.createRef(); + _this.topOffsets = []; + _this.itemTranslateOffsets = []; + _this.initialYOffset = 0; + _this.lastScroll = 0; + _this.lastYOffset = 0; + _this.lastListYOffset = 0; + _this.needle = -1; + _this.afterIndex = -2; + _this.state = { + itemDragged: -1, + itemDraggedOutOfBounds: -1, + selectedItem: -1, + initialX: 0, + initialY: 0, + targetX: 0, + targetY: 0, + targetHeight: 0, + targetWidth: 0, + scrollingSpeed: 0, + scrollWindow: false + }; + + _this.doScrolling = function () { + var _a = _this.state, + scrollingSpeed = _a.scrollingSpeed, + scrollWindow = _a.scrollWindow; + var listEl = _this.listRef.current; + window.requestAnimationFrame(function () { + if (scrollWindow) { + window.scrollTo(window.pageXOffset, window.pageYOffset + scrollingSpeed * 1.5); + } else { + listEl.scrollTop += scrollingSpeed; + } + + if (scrollingSpeed !== 0) { + _this.doScrolling(); + } + }); + }; + + _this.getChildren = function () { + if (_this.listRef && _this.listRef.current) { + return Array.from(_this.listRef.current.children); } - }, - onDragOver: function onDragOver(e) { - return e.preventDefault(); - }, - onDrop: function onDrop(e) { - if (draggable) { - var from = { - name: e.dataTransfer.getData('name'), - type: e.dataTransfer.getData('type') - }; - var to = { - name: name, - type: pinned || '' - }; - if (from.type === to.type) reorderColumn(from.name, to.name); + + return []; + }; + + _this.calculateOffsets = function () { + _this.topOffsets = _this.getChildren().map(function (item) { + return item.getBoundingClientRect().top; + }); + _this.itemTranslateOffsets = _this.getChildren().map(function (item) { + return getTranslateOffset(item); + }); + }; + + _this.getTargetIndex = function (e) { + return _this.getChildren().findIndex(function (child) { + return child === e.target || child.contains(e.target); + }); + }; + + _this.onMouseOrTouchStart = function (e) { + var _a; + + if (_this.dropTimeout && _this.state.itemDragged > -1) { + window.clearTimeout(_this.dropTimeout); + + _this.finishDrop(); } - }, - style: { - width: getWidth({ - ref: ref, - withCheckbox: withCheckbox - }, schema.width || width), - minWidth: getWidth({ - ref: ref, - withCheckbox: withCheckbox - }, schema.minWidth || minWidth), - maxWidth: getWidth({ - ref: ref, - withCheckbox: withCheckbox - }, schema.maxWidth || maxWidth) - } - }, isHead ? /*#__PURE__*/React__namespace.createElement(HeaderCell, { - colIndex: colIndex, - schema: schema, - onSelectAll: onSelectAll, - onMenuChange: onMenuChange, - onFilterChange: onFilterChange, - updateColumnSchema: updateColumnSchema, - reorderColumn: reorderColumn - }) : /*#__PURE__*/React__namespace.createElement(BodyCell, { - rowIndex: rowIndex, - colIndex: colIndex, - data: data, - schema: schema, - expandedState: expandedState - })); - }; - var GridHead = function GridHead(props) { - var context$1 = React__namespace.useContext(context); - var schema = props.schema, - onSelectAll = props.onSelectAll, - onMenuChange = props.onMenuChange, - onFilterChange = props.onFilterChange, - updateColumnSchema = props.updateColumnSchema, - reorderColumn = props.reorderColumn; - var withCheckbox = context$1.withCheckbox, - loading = context$1.loading, - selectAll = context$1.selectAll; - var pinnedSchema = schema.filter(function (s) { - return !s.hidden && s.pinned; - }); - var leftPinnedSchema = pinnedSchema.filter(function (s) { - return !s.hidden && s.pinned === 'left'; - }); - var rightPinnedSchema = pinnedSchema.filter(function (s) { - return !s.hidden && s.pinned === 'right'; - }); - var unpinnedSchema = schema.filter(function (s) { - return !s.hidden && !s.pinned; - }); + var isTouch = isTouchEvent(e); + if (!isTouch && e.button !== 0) return; - var renderCheckbox = function renderCheckbox(show) { - if (!show || !withCheckbox) return null; - return /*#__PURE__*/React__namespace.createElement("div", { - className: "Grid-cell Grid-cell--head Grid-cell--checkbox" - }, loading ? /*#__PURE__*/React__namespace.createElement(Placeholder, null) : /*#__PURE__*/React__namespace.createElement(Checkbox, __assign({}, selectAll, { - onChange: onSelectAll - }))); - }; + var index = _this.getTargetIndex(e); - var renderSchema = function renderSchema(currSchema, shouldRenderCheckbox, pinned) { - var _a; + var listItemTouched = _this.getChildren()[index]; - if (currSchema.length) { - var classes = classNames__default['default']((_a = { - 'Grid-cellGroup': true, - 'Grid-cellGroup--pinned': pinned - }, _a["Grid-cellGroup--pinned-" + pinned] = pinned, _a['Grid-cellGroup--main'] = !pinned, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - className: classes - }, renderCheckbox(shouldRenderCheckbox), currSchema.map(function (s, index) { - var cI = pinned === 'left' ? index : leftPinnedSchema.length + index; - if (pinned === 'right') cI += unpinnedSchema.length; - return /*#__PURE__*/React__namespace.createElement(Cell, { - key: "" + cI, - firstCell: !index, - colIndex: cI, - isHead: true, - schema: s, - onSelectAll: onSelectAll, - onMenuChange: onMenuChange, - onFilterChange: onFilterChange, - updateColumnSchema: updateColumnSchema, - reorderColumn: reorderColumn + var isValidDragHandle = (_a = e.target) === null || _a === void 0 ? void 0 : _a.classList.contains('Listbox-item--drag-icon'); + if (!isValidDragHandle) return; + e.preventDefault(); + + if (isTouch) { + var opts = { + passive: false + }; + listItemTouched.style.touchAction = 'none'; + document.addEventListener('touchend', _this.schdOnEnd, opts); + document.addEventListener('touchmove', _this.schdOnTouchMove, opts); + document.addEventListener('touchcancel', _this.schdOnEnd, opts); + } else { + document.addEventListener('mousemove', _this.schdOnMouseMove); + document.addEventListener('mouseup', _this.schdOnEnd); + + var listItemDragged = _this.getChildren()[_this.state.itemDragged]; + + if (listItemDragged && listItemDragged.style) { + listItemDragged.style.touchAction = ''; + } + } + + _this.onStart(listItemTouched, isTouch ? e.touches[0].clientX : e.clientX, isTouch ? e.touches[0].clientY : e.clientY, index); + }; + + _this.getYOffset = function () { + var listScroll = _this.listRef.current ? _this.listRef.current.scrollTop : 0; + return window.pageYOffset + listScroll; + }; + + _this.onStart = function (target, clientX, clientY, index) { + if (_this.state.selectedItem > -1) { + _this.setState({ + selectedItem: -1 }); - })); - } - return null; - }; + _this.needle = -1; + } - return /*#__PURE__*/React__namespace.createElement("div", { - className: "Grid-head" - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "Grid-row Grid-row--head" - }, renderSchema(leftPinnedSchema, !!leftPinnedSchema.length, 'left'), renderSchema(unpinnedSchema, !leftPinnedSchema.length && !!unpinnedSchema.length), renderSchema(rightPinnedSchema, false, 'right'))); - }; + var targetRect = target.getBoundingClientRect(); + var targetStyles = window.getComputedStyle(target); + + _this.calculateOffsets(); + + _this.initialYOffset = _this.getYOffset(); + _this.lastYOffset = window.pageYOffset; + _this.lastListYOffset = _this.listRef.current.scrollTop; + + _this.setState({ + itemDragged: index, + targetX: targetRect.left - parseInt(targetStyles['margin-left'], 10), + targetY: targetRect.top - parseInt(targetStyles['margin-top'], 10), + targetHeight: targetRect.height, + targetWidth: targetRect.width, + initialX: clientX, + initialY: clientY + }); + }; + + _this.onMouseMove = function (e) { + e.cancelable && e.preventDefault(); + + _this.onMove(e.clientX, e.clientY); + }; + + _this.onTouchMove = function (e) { + e.cancelable && e.preventDefault(); + + _this.onMove(e.touches[0].clientX, e.touches[0].clientY); + }; + + _this.onWheel = function (e) { + if (_this.state.itemDragged < 0) return; + _this.lastScroll = _this.listRef.current.scrollTop += e.deltaY; + + _this.moveOtherItems(); + }; + + _this.onMove = function (clientX, clientY) { + if (_this.state.itemDragged === -1) return null; + transformItem(_this.ghostRef.current, clientY - _this.state.initialY, _this.props.lockVertically ? 0 : clientX - _this.state.initialX); + + _this.autoScrolling(clientY); + + _this.moveOtherItems(); + + return; + }; + + _this.moveOtherItems = function () { + var targetRect = _this.ghostRef.current.getBoundingClientRect(); + + var itemVerticalCenter = targetRect.top + targetRect.height / 2; + var offset = getTranslateOffset(_this.getChildren()[_this.state.itemDragged]); + + var currentYOffset = _this.getYOffset(); + + if (_this.initialYOffset !== currentYOffset) { + _this.topOffsets = _this.topOffsets.map(function (offset) { + return offset - (currentYOffset - _this.initialYOffset); + }); + _this.initialYOffset = currentYOffset; + } + + if (_this.isDraggedItemOutOfBounds() && _this.props.removableByMove) { + _this.afterIndex = _this.topOffsets.length + 1; + } else { + _this.afterIndex = binarySearch(_this.topOffsets, itemVerticalCenter); + } - function _classCallCheck(instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } - } + _this.animateItems(_this.afterIndex === -1 ? 0 : _this.afterIndex, _this.state.itemDragged, offset); + }; - function _defineProperties(target, props) { - for (var i = 0; i < props.length; i++) { - var descriptor = props[i]; - descriptor.enumerable = descriptor.enumerable || false; - descriptor.configurable = true; - if ("value" in descriptor) descriptor.writable = true; - Object.defineProperty(target, descriptor.key, descriptor); - } - } + _this.autoScrolling = function (clientY) { + var _a = _this.listRef.current.getBoundingClientRect(), + top = _a.top, + bottom = _a.bottom, + height = _a.height; - function _createClass(Constructor, protoProps, staticProps) { - if (protoProps) _defineProperties(Constructor.prototype, protoProps); - if (staticProps) _defineProperties(Constructor, staticProps); - return Constructor; - } + var viewportHeight = window.innerHeight || document.documentElement.clientHeight; - function _defineProperty(obj, key, value) { - if (key in obj) { - Object.defineProperty(obj, key, { - value: value, - enumerable: true, - configurable: true, - writable: true - }); - } else { - obj[key] = value; - } + if (bottom > viewportHeight && viewportHeight - clientY < AUTOSCROLL_ACTIVE_OFFSET) { + _this.setState({ + scrollingSpeed: Math.round((AUTOSCROLL_ACTIVE_OFFSET - (viewportHeight - clientY)) / AUTOSCROLL_SPEED_RATIO), + scrollWindow: true + }); + } else if (top < 0 && clientY < AUTOSCROLL_ACTIVE_OFFSET) { + _this.setState({ + scrollingSpeed: Math.round((AUTOSCROLL_ACTIVE_OFFSET - clientY) / -AUTOSCROLL_SPEED_RATIO), + scrollWindow: true + }); + } else { + if (_this.state.scrollWindow && _this.state.scrollingSpeed !== 0) { + _this.setState({ + scrollingSpeed: 0, + scrollWindow: false + }); + } - return obj; - } + if (height + 20 < _this.listRef.current.scrollHeight) { + var scrollingSpeed = 0; - function _extends() { - _extends = Object.assign || function (target) { - for (var i = 1; i < arguments.length; i++) { - var source = arguments[i]; + if (clientY - top < AUTOSCROLL_ACTIVE_OFFSET) { + scrollingSpeed = Math.round((AUTOSCROLL_ACTIVE_OFFSET - (clientY - top)) / -AUTOSCROLL_SPEED_RATIO); + } else if (bottom - clientY < AUTOSCROLL_ACTIVE_OFFSET) { + scrollingSpeed = Math.round((AUTOSCROLL_ACTIVE_OFFSET - (bottom - clientY)) / AUTOSCROLL_SPEED_RATIO); + } - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; + if (_this.state.scrollingSpeed !== scrollingSpeed) { + _this.setState({ + scrollingSpeed: scrollingSpeed + }); + } } } - } + }; - return target; - }; + _this.animateItems = function (needle, movedItem, offset, animateMovedItem) { + if (animateMovedItem === void 0) { + animateMovedItem = false; + } - return _extends.apply(this, arguments); - } + _this.getChildren().forEach(function (item, i) { + setItemTransition(item, _this.props.transitionDuration); - function _inherits(subClass, superClass) { - if (typeof superClass !== "function" && superClass !== null) { - throw new TypeError("Super expression must either be null or a function"); - } + if (movedItem === i && animateMovedItem) { + if (movedItem === needle) { + return transformItem(item, null); + } - subClass.prototype = Object.create(superClass && superClass.prototype, { - constructor: { - value: subClass, - writable: true, - configurable: true - } - }); - if (superClass) _setPrototypeOf(subClass, superClass); - } + transformItem(item, movedItem < needle ? _this.itemTranslateOffsets.slice(movedItem + 1, needle + 1).reduce(function (a, b) { + return a + b; + }, 0) : _this.itemTranslateOffsets.slice(needle, movedItem).reduce(function (a, b) { + return a + b; + }, 0) * -1); + } else if (movedItem < needle && i > movedItem && i <= needle) { + transformItem(item, -offset); + } else if (i < movedItem && movedItem > needle && i >= needle) { + transformItem(item, offset); + } else { + transformItem(item, null); + } + }); + }; - function _getPrototypeOf(o) { - _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { - return o.__proto__ || Object.getPrototypeOf(o); - }; - return _getPrototypeOf(o); - } + _this.isDraggedItemOutOfBounds = function () { + var initialRect = _this.getChildren()[_this.state.itemDragged].getBoundingClientRect(); - function _setPrototypeOf(o, p) { - _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { - o.__proto__ = p; - return o; - }; + var targetRect = _this.ghostRef.current.getBoundingClientRect(); - return _setPrototypeOf(o, p); - } + if (Math.abs(initialRect.left - targetRect.left) > targetRect.width) { + if (_this.state.itemDraggedOutOfBounds === -1) { + _this.setState({ + itemDraggedOutOfBounds: _this.state.itemDragged + }); + } - function _isNativeReflectConstruct() { - if (typeof Reflect === "undefined" || !Reflect.construct) return false; - if (Reflect.construct.sham) return false; - if (typeof Proxy === "function") return true; + return true; + } - try { - Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); - return true; - } catch (e) { - return false; - } - } + if (_this.state.itemDraggedOutOfBounds > -1) { + _this.setState({ + itemDraggedOutOfBounds: -1 + }); + } - function _objectWithoutPropertiesLoose(source, excluded) { - if (source == null) return {}; - var target = {}; - var sourceKeys = Object.keys(source); - var key, i; + return false; + }; - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - target[key] = source[key]; - } + _this.onEnd = function (e) { + e.cancelable && e.preventDefault(); + document.removeEventListener('mousemove', _this.schdOnMouseMove); + document.removeEventListener('touchmove', _this.schdOnTouchMove); + document.removeEventListener('mouseup', _this.schdOnEnd); + document.removeEventListener('touchup', _this.schdOnEnd); + document.removeEventListener('touchcancel', _this.schdOnEnd); - return target; - } + var removeItem = _this.props.removableByMove && _this.isDraggedItemOutOfBounds(); - function _objectWithoutProperties(source, excluded) { - if (source == null) return {}; + if (!removeItem && _this.props.transitionDuration > 0 && _this.afterIndex !== -2) { + schd(function () { + setItemTransition(_this.ghostRef.current, _this.props.transitionDuration, 'cubic-bezier(0.2, 0, 0.38, 0.9)'); - var target = _objectWithoutPropertiesLoose(source, excluded); + if (_this.afterIndex < 1 && _this.state.itemDragged === 0) { + transformItem(_this.ghostRef.current, 0, 0); + } else { + transformItem(_this.ghostRef.current, -(window.pageYOffset - _this.lastYOffset) + -(_this.listRef.current.scrollTop - _this.lastListYOffset) + (_this.state.itemDragged < _this.afterIndex ? _this.itemTranslateOffsets.slice(_this.state.itemDragged + 1, _this.afterIndex + 1).reduce(function (a, b) { + return a + b; + }, 0) : _this.itemTranslateOffsets.slice(_this.afterIndex < 0 ? 0 : _this.afterIndex, _this.state.itemDragged).reduce(function (a, b) { + return a + b; + }, 0) * -1), 0); + } + })(); + } - var key, i; + _this.dropTimeout = window.setTimeout(_this.finishDrop, removeItem || _this.afterIndex === -2 ? 0 : _this.props.transitionDuration); + }; - if (Object.getOwnPropertySymbols) { - var sourceSymbolKeys = Object.getOwnPropertySymbols(source); + _this.finishDrop = function () { + var removeItem = _this.props.removableByMove && _this.isDraggedItemOutOfBounds(); - for (i = 0; i < sourceSymbolKeys.length; i++) { - key = sourceSymbolKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; - target[key] = source[key]; - } - } + if (removeItem || _this.afterIndex > -2 && _this.state.itemDragged !== _this.afterIndex) { + _this.props.onChange({ + oldIndex: _this.state.itemDragged, + newIndex: removeItem ? -1 : Math.max(_this.afterIndex, 0), + targetRect: _this.ghostRef.current.getBoundingClientRect() + }); + } - return target; - } + _this.getChildren().forEach(function (item) { + setItemTransition(item, 0); + transformItem(item, null); + item.style.touchAction = ''; + }); - function _assertThisInitialized(self) { - if (self === void 0) { - throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); - } + _this.setState({ + itemDragged: -1, + scrollingSpeed: 0 + }); - return self; - } + _this.afterIndex = -2; - function _possibleConstructorReturn(self, call) { - if (call && (typeof call === "object" || typeof call === "function")) { - return call; - } + if (_this.lastScroll > 0) { + _this.listRef.current.scrollTop = _this.lastScroll; + _this.lastScroll = 0; + } + }; - return _assertThisInitialized(self); - } + _this.onKeyDown = function (e) { + var selectedItem = _this.state.selectedItem; - function _createSuper(Derived) { - var hasNativeReflectConstruct = _isNativeReflectConstruct(); + var index = _this.getTargetIndex(e); - return function _createSuperInternal() { - var Super = _getPrototypeOf(Derived), - result; + if (index === -1 || _this.props.values[index] && _this.props.values[index].props.disabled) { + return; + } - if (hasNativeReflectConstruct) { - var NewTarget = _getPrototypeOf(this).constructor; + if (e.key === ' ') { + e.preventDefault(); - result = Reflect.construct(Super, arguments, NewTarget); - } else { - result = Super.apply(this, arguments); - } + if (selectedItem === index) { + if (selectedItem !== _this.needle) { + _this.getChildren().forEach(function (item) { + setItemTransition(item, 0); + transformItem(item, null); + }); - return _possibleConstructorReturn(this, result); - }; - } + _this.props.onChange({ + oldIndex: selectedItem, + newIndex: _this.needle, + targetRect: _this.getChildren()[_this.needle].getBoundingClientRect() + }); - var isInView = function isInView(container, element) { - var containerTop = container.offsetTop; - var elementRect = element.getBoundingClientRect(); - var elementTop = elementRect.top; - var elementHeight = elementRect.height; - return elementHeight - (containerTop - elementTop) > 0; - }; + _this.getChildren()[_this.needle].focus(); + } - var VirtualScroll = /*#__PURE__*/function (_React$Component) { - _inherits(VirtualScroll, _React$Component); + _this.setState({ + selectedItem: -1 + }); - var _super = _createSuper(VirtualScroll); + _this.needle = -1; + } else { + _this.setState({ + selectedItem: index + }); - function VirtualScroll(props) { - var _this; + _this.needle = index; - _classCallCheck(this, VirtualScroll); + _this.calculateOffsets(); + } + } - _this = _super.call(this, props); - _this.state = { - offset: props.offset - }; - _this.lastScrollTop = 0; - _this.avgRowHeight = props.minItemHeight; - return _this; - } + if ((e.key === 'ArrowDown' || e.key === 'j') && selectedItem > -1 && _this.needle < _this.props.values.length - 1) { + e.preventDefault(); + var offset = getTranslateOffset(_this.getChildren()[selectedItem]); + _this.needle++; - _createClass(VirtualScroll, [{ - key: "componentDidMount", - value: function componentDidMount() { - var _this2 = this; + _this.animateItems(_this.needle, selectedItem, offset, true); + } - window.requestAnimationFrame(function () { - if (_this2.listRef) { - _this2.listRef.scrollTop = _this2.state.offset * _this2.avgRowHeight; - } - }); - } - }, { - key: "componentDidUpdate", - value: function componentDidUpdate(_prevProps, prevState) { - if (prevState.offset > this.state.offset) { - this.updateOffset(prevState); + if ((e.key === 'ArrowUp' || e.key === 'k') && selectedItem > -1 && _this.needle > 0) { + e.preventDefault(); + var offset = getTranslateOffset(_this.getChildren()[selectedItem]); + _this.needle--; + + _this.animateItems(_this.needle, selectedItem, offset, true); } - } - }, { - key: "updateOffset", - value: function updateOffset(prevState) { - var offsetDiff = prevState.offset - this.state.offset; - - if (this.listRef) { - var el = this.listRef; - var items = el.querySelectorAll(".VS-item"); - var heightAdded = 0; - var currOffset = prevState.offset; - var start = Math.min(this.state.offset, this.props.buffer); - var end = start + offsetDiff; - - for (var i = Math.min(items.length, end) - 1; i >= start; i--) { - var inView = isInView(el, items[i]); - - if (inView) { - currOffset--; - var rowHeight = items[i].clientHeight; - heightAdded += rowHeight; - } else { - break; - } - } - if (items.length < end) { - var diff = end - items.length; - heightAdded += diff * this.props.minItemHeight; - currOffset -= diff; - } + if (e.key === 'Escape' && selectedItem > -1) { + _this.getChildren().forEach(function (item) { + setItemTransition(item, 0); + transformItem(item, null); + }); - var newAvgRowHeight = currOffset === 0 ? this.props.minItemHeight : (this.avgRowHeight * prevState.offset - heightAdded) / currOffset; - this.setState({ - offset: currOffset + _this.setState({ + selectedItem: -1 }); - this.avgRowHeight = Math.max(this.props.minItemHeight, newAvgRowHeight); + + _this.needle = -1; + } + + if ((e.key === 'Tab' || e.key === 'Enter') && selectedItem > -1) { + e.preventDefault(); } + }; + + _this.schdOnMouseMove = schd(_this.onMouseMove); + _this.schdOnTouchMove = schd(_this.onTouchMove); + _this.schdOnEnd = schd(_this.onEnd); + return _this; + } + + Draggable.prototype.componentDidMount = function () { + this.calculateOffsets(); + document.addEventListener('touchstart', this.onMouseOrTouchStart, { + passive: false, + capture: false + }); + document.addEventListener('mousedown', this.onMouseOrTouchStart); + }; + + Draggable.prototype.componentDidUpdate = function (_prevProps, prevState) { + if (prevState.scrollingSpeed !== this.state.scrollingSpeed && prevState.scrollingSpeed === 0) { + this.doScrolling(); } - }, { - key: "onScrollHandler", - value: function onScrollHandler(event) { - if (this.listRef) { - var _this$props = this.props, - totalLength = _this$props.totalLength, - length = _this$props.length, - buffer = _this$props.buffer; - var offset = this.state.offset; - var avgRowHeight = this.avgRowHeight; - var el = this.listRef; - var scrollTop = el.scrollTop; - var direction = Math.floor(scrollTop - this.lastScrollTop); - if (direction === 0) return; - var items = el.querySelectorAll(".VS-item"); - var newOffset = offset; - var newAvgRowHeight = avgRowHeight; - var start = Math.min(offset, buffer); - - if (direction > 0) { - if (offset < totalLength - length) { - var heightAdded = 0; - - for (var i = start; i < items.length; i++) { - var inView = isInView(el, items[i]); - var rowHeight = items[i].clientHeight; - - if (!inView) { - heightAdded += rowHeight; - newOffset++; - } else { - break; - } - } + }; - if (heightAdded < direction) { - var heightLeft = direction - heightAdded; - var offsetToBeAdded = Math.floor(heightLeft / this.props.minItemHeight); - newOffset += offsetToBeAdded; - heightAdded += offsetToBeAdded * this.props.minItemHeight; - } + Draggable.prototype.componentWillUnmount = function () { + document.removeEventListener('touchstart', this.onMouseOrTouchStart); + document.removeEventListener('mousedown', this.onMouseOrTouchStart); - newAvgRowHeight = newOffset > 0 ? (offset * avgRowHeight + heightAdded) / newOffset : this.props.minItemHeight; - this.setState({ - offset: Math.min(newOffset, totalLength - length) - }); - this.avgRowHeight = Math.max(this.props.minItemHeight, newAvgRowHeight); - } - } else { - var scrollDiff = items[start].getBoundingClientRect().y - el.getBoundingClientRect().y; + if (this.dropTimeout) { + window.clearTimeout(this.dropTimeout); + } - if (scrollDiff > 0) { - var offsetDiff = Math.floor(scrollDiff / this.props.minItemHeight) || 1; + this.schdOnMouseMove.cancel(); + this.schdOnTouchMove.cancel(); + this.schdOnEnd.cancel(); + }; - var _newOffset = offset - offsetDiff; + Draggable.prototype.render = function () { + var _this = this; - if (_newOffset < totalLength - (length + buffer)) { - this.setState({ - offset: Math.max(0, _newOffset) - }); - } - } - } + var baseStyle = { + userSelect: 'none', + WebkitUserSelect: 'none', + MozUserSelect: 'none', + msUserSelect: 'none', + boxSizing: 'border-box', + position: 'relative' + }; - this.lastScrollTop = scrollTop; - } + var ghostStyle = __assign(__assign({}, baseStyle), { + top: this.state.targetY, + left: this.state.targetX, + width: this.state.targetWidth, + height: this.state.targetHeight, + backgroundColor: '#ffffff', + listStyleType: 'none', + margin: 0, + position: 'fixed', + boxShadow: '0 4px 16px 0 rgba(0, 0, 0, 0.16)' + }); - if (this.props.onScroll) this.props.onScroll(event); - } - }, { - key: "renderItems", - value: function renderItems(start, end) { - var renderItem = this.props.renderItem; - return Array.from({ - length: end - start + 1 - }, function (_, index) { - var rowIndex = start + index; - var component = renderItem(rowIndex); - return /*#__PURE__*/React__namespace.cloneElement(component, { - key: rowIndex, - className: ["VS-item", component.props.className].join(' ').trim() + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, this.props.renderList({ + children: this.props.values.map(function (value, index) { + var isHidden = index === _this.state.itemDragged; + var isSelected = index === _this.state.selectedItem; + var isDisabled = _this.props.values[index] && _this.props.values[index].props.disabled; + var props = { + key: index, + tabIndex: isDisabled ? -1 : 0, + onKeyDown: _this.onKeyDown, + style: __assign(__assign({}, baseStyle), { + visibility: isHidden ? 'hidden' : undefined, + zIndex: isSelected ? 5000 : 0 + }) + }; + return _this.props.renderItem({ + value: value, + props: props, + index: index, + isDragged: false, + isSelected: isSelected, + isOutOfBounds: false }); - }); - } - }, { - key: "render", - value: function render() { - var _this3 = this; - - var _this$props2 = this.props, - totalLength = _this$props2.totalLength, - length = _this$props2.length, - buffer = _this$props2.buffer; - _this$props2.offset; - _this$props2.renderItem; - _this$props2.minItemHeight; - var forwardRef = _this$props2.forwardRef, - rest = _objectWithoutProperties(_this$props2, ["totalLength", "length", "buffer", "offset", "renderItem", "minItemHeight", "forwardRef"]); - - var _this$state = this.state, - init = _this$state.init, - offset = _this$state.offset; - var avgRowHeight = this.avgRowHeight; - var start = Math.max(0, offset - buffer); - var end = Math.min(offset + (length + buffer) - 1, totalLength - 1); - var topPadding = Math.max(0, start * avgRowHeight); - var bottomPadding = Math.max(0, (totalLength - end - 1) * avgRowHeight); - return /*#__PURE__*/React__namespace.createElement("div", _extends({}, rest, { - ref: function ref(el) { - _this3.listRef = el; - if (forwardRef) forwardRef.current = el; - if (!init) _this3.setState({ - init: true - }); - }, - onScroll: this.onScrollHandler.bind(this) - }), init && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", { - style: { - flexShrink: 0, - height: topPadding - } - }), this.renderItems(start, end), /*#__PURE__*/React__namespace.createElement("div", { - style: { - flexShrink: 0, - height: bottomPadding - } - }))); - } - }]); + }), + isDragged: this.state.itemDragged > -1, + props: { + ref: this.listRef + } + }), this.state.itemDragged > -1 && /*#__PURE__*/ReactDOM__namespace.createPortal(this.props.renderItem({ + value: this.props.values[this.state.itemDragged], + props: { + ref: this.ghostRef, + style: ghostStyle, + onWheel: this.onWheel + }, + index: this.state.itemDragged, + isDragged: true, + isSelected: false, + isOutOfBounds: this.state.itemDraggedOutOfBounds > -1 + }), document.body)); + }; - return VirtualScroll; + Draggable.defaultProps = { + transitionDuration: 240, + lockVertically: false, + removableByMove: false + }; + return Draggable; }(React__namespace.Component); - _defineProperty(VirtualScroll, "defaultProps", { - buffer: 10, - length: 30, - offset: 0 - }); - - var index = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { - return /*#__PURE__*/React__namespace.createElement(VirtualScroll, _extends({ - forwardRef: ref - }, props)); - }); + var DraggableList = function DraggableList(props) { + var children = props.children, + className = props.className, + Tag = props.tagName; + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]({ + Listbox: true + }, className); + var renderChildren = React__default["default"].Children.toArray(children).map(function (child) { + var element = /*#__PURE__*/React__default["default"].cloneElement(child, { + parentProps: __assign({}, props) + }); + return element; + }); - var GridRow = function GridRow(props) { - var context$1 = React__namespace.useContext(context); - var type = context$1.type, - onRowClick = context$1.onRowClick, - loading = context$1.loading, - withCheckbox = context$1.withCheckbox, - nestedRows = context$1.nestedRows; - var schema = props.schema, - data = props.data, - rI = props.rowIndex, - onSelect = props.onSelect, - className = props.className; - var rowRef = React__namespace.useRef(null); + var _a = React__default["default"].useState(renderChildren), + childList = _a[0], + setChildList = _a[1]; - var _a = React__namespace.useState(false), - expanded = _a[0], - setExpanded = _a[1]; + var onChangeHandler = function onChangeHandler(props) { + var oldIndex = props.oldIndex, + newIndex = props.newIndex; + var updatedList = arrayMove(childList, oldIndex, newIndex); + setChildList(updatedList); + }; - var rowClasses = classNames__default['default']('Grid-row', 'Grid-row--body', { - 'Grid-row--selected': data._selected - }); - var onClickHandler = React__namespace.useCallback(function () { - if (type === 'resource' && !loading) { - if (onRowClick) { - onRowClick(data, rI); - } + return /*#__PURE__*/React__default["default"].createElement(Draggable, { + values: childList, + onChange: onChangeHandler, + renderItem: function renderItem(_a) { + var value = _a.value, + props = _a.props; + return /*#__PURE__*/React__default["default"].createElement("div", __assign({}, props, { + className: "Listbox-item--draggable" + }), value); + }, + renderList: function renderList(_a) { + var children = _a.children, + props = _a.props; + return /*#__PURE__*/React__default["default"].createElement(Tag, __assign({ + "data-test": "DesignSystem-Listbox" + }, baseProps, { + className: classes + }, props), children); } - }, [data, rI]); - var pinnedSchema = schema.filter(function (s) { - return !s.hidden && s.pinned; - }); - var leftPinnedSchema = pinnedSchema.filter(function (s) { - return !s.hidden && s.pinned === 'left'; - }); - var rightPinnedSchema = pinnedSchema.filter(function (s) { - return !s.hidden && s.pinned === 'right'; }); - var unpinnedSchema = schema.filter(function (s) { - return !s.hidden && !s.pinned; - }); - - var renderCheckbox = function renderCheckbox(show) { - if (!show || !withCheckbox) return null; - return /*#__PURE__*/React__namespace.createElement("div", { - className: "Grid-cell Grid-cell--body Grid-cell--checkbox", - onClick: function onClick(e) { - return e.stopPropagation(); - } - }, loading ? /*#__PURE__*/React__namespace.createElement(Placeholder, null) : /*#__PURE__*/React__namespace.createElement(Checkbox, { - checked: !!data._selected, - onChange: function onChange(event) { - onSelect(rI, event.target.checked); - } - })); - }; + }; - var renderSchema = function renderSchema(currSchema, shouldRenderCheckbox, pinned) { - var _a; + var isDisabledElement = function isDisabledElement(element) { + return element && element.getAttribute('data-disabled') === 'true'; + }; - if (currSchema.length) { - var classes = classNames__default['default']((_a = { - 'Grid-cellGroup': true, - 'Grid-cellGroup--pinned': pinned - }, _a["Grid-cellGroup--pinned-" + pinned] = pinned, _a['Grid-cellGroup--main'] = !pinned, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - className: classes - }, renderCheckbox(shouldRenderCheckbox), currSchema.map(function (s, index) { - var cI = pinned === 'left' ? index : leftPinnedSchema.length + index; - if (pinned === 'right') cI += unpinnedSchema.length; - return /*#__PURE__*/React__namespace.createElement(Cell, { - key: rI + "-" + cI, - rowIndex: rI, - colIndex: cI, - firstCell: !index, - schema: s, - data: data, - expandedState: [expanded, setExpanded] - }); - })); + var getNextSibling = function getNextSibling(element) { + var _a, _b; + + return (_b = (_a = element === null || element === void 0 ? void 0 : element.parentNode) === null || _a === void 0 ? void 0 : _a.nextSibling) === null || _b === void 0 ? void 0 : _b.firstChild; + }; + + var getPrevSibling = function getPrevSibling(element) { + var _a, _b; + + return (_b = (_a = element === null || element === void 0 ? void 0 : element.parentNode) === null || _a === void 0 ? void 0 : _a.previousSibling) === null || _b === void 0 ? void 0 : _b.firstChild; + }; + + var focusOption = function focusOption(element, direction) { + var iterateElement = element; + + while (iterateElement) { + if (!isDisabledElement(iterateElement)) { + iterateElement.focus(); + break; } - return null; - }; + if (direction === 'down') { + iterateElement = getNextSibling(iterateElement); + } else { + iterateElement = getPrevSibling(iterateElement); + } + } + }; - var wrapperClasses = classNames__default['default'](className, { - 'Grid-rowWrapper': true - }); + var onKeyDown = function onKeyDown(event) { + var sourceElement = event.target; + var nextElement = getNextSibling(sourceElement); + var prevElement = getPrevSibling(sourceElement); + + switch (event.key) { + case 'ArrowDown': + event.preventDefault(); + focusOption(nextElement, 'down'); + break; + + case 'ArrowUp': + event.preventDefault(); + focusOption(prevElement, 'up'); + break; + } + }; + + var ListBody = function ListBody(props) { + var _a; + + var children = props.children, + className = props.className, + disabled = props.disabled, + selected = props.selected, + activated = props.activated, + tabIndex = props.tabIndex; + var contextProp = React__namespace.useContext(ListboxContext); + var size = contextProp.size, + type = contextProp.type, + draggable = contextProp.draggable; + var itemClass = classNames__default["default"]((_a = { + 'Listbox-item': true + }, _a["Listbox-item--" + size] = size, _a["Listbox-item--" + type] = type, _a['Listbox-item--disabled'] = disabled, _a['Listbox-item--selected'] = selected && type === 'option', _a['Listbox-item--activated'] = activated && type === 'resource', _a), className); return /*#__PURE__*/React__namespace.createElement("div", { - className: wrapperClasses - }, /*#__PURE__*/React__namespace.createElement("div", { - className: rowClasses, - onClick: onClickHandler, - ref: rowRef - }, renderSchema(leftPinnedSchema, !!leftPinnedSchema.length, 'left'), renderSchema(unpinnedSchema, !leftPinnedSchema.length && !!unpinnedSchema.length), renderSchema(rightPinnedSchema, false, 'right')), nestedRows && expanded && /*#__PURE__*/React__namespace.createElement("div", { - className: "Grid-nestedRow" - }, /*#__PURE__*/React__namespace.createElement(GridNestedRow, { - data: data, - rowIndex: rI - }))); + "data-disabled": disabled, + "data-test": "DesignSystem-Listbox-ItemWrapper", + tabIndex: draggable ? -1 : tabIndex || 0, + className: itemClass, + onKeyDown: onKeyDown, + role: "tablist" + }, draggable && /*#__PURE__*/React__namespace.createElement(Icon, { + size: 16, + appearance: "subtle", + name: "drag_indicator", + className: "Listbox-item--drag-icon", + "data-test": "DesignSystem-Listbox-DragIcon" + }), children); }; - GridRow.defaultProps = { - data: {} + ListBody.displayName = 'ListBody'; + + var getAnimationClass = function getAnimationClass(uniqueKey, expanded) { + if (expanded) return "nestedList-open-" + uniqueKey + " 240ms cubic-bezier(0, 0, 0.38, 0.9)";else if (!expanded) return "nestedList-close-" + uniqueKey + " 160ms cubic-bezier(0.2, 0, 1, 0.9)"; + return ''; }; - var GridBody = function GridBody(props) { - var context$1 = React__namespace.useContext(context); - var data = context$1.data, - ref = context$1.ref, - size = context$1.size, - loading = context$1.loading, - error = context$1.error, - withPagination = context$1.withPagination, - page = context$1.page, - pageSize = context$1.pageSize, - totalRecords = context$1.totalRecords, - errorTemplate = context$1.errorTemplate; + var getHeight = function getHeight(listItemRef) { + var _a; - if (!loading && error) { - return errorTemplate ? typeof errorTemplate === 'function' ? errorTemplate({}) : errorTemplate : null; - } + var scrollHeight = (_a = listItemRef.current) === null || _a === void 0 ? void 0 : _a.scrollHeight; + return scrollHeight; + }; - var schema = props.schema, - prevPageInfo = props.prevPageInfo, - updatePrevPageInfo = props.updatePrevPageInfo, - onSelect = props.onSelect; - React__namespace.useEffect(function () { - var gridBodyEl = ref.querySelector('.Grid-body'); + var menuItemAnimation = function menuItemAnimation(listItemRef, uniqueKey) { + return "\n @keyframes nestedList-open-" + uniqueKey + " {\n from {\n height: 0px;\n }\n to {\n height: " + getHeight(listItemRef) + "px;\n }\n }\n\n @keyframes nestedList-close-" + uniqueKey + " {\n from {\n height: " + getHeight(listItemRef) + "px;\n }\n to {\n height: 0px;\n }\n }\n "; + }; - if (gridBodyEl) { - window.requestAnimationFrame(function () { - if (prevPageInfo.page === page) { - gridBodyEl.scrollTop = prevPageInfo.scrollTop; - } - }); + function usePrevious(value) { + var ref = React__namespace.useRef(); + React__namespace.useEffect(function () { + if (value != undefined) { + ref.current = value; } + }, [value]); + return ref.current; + } - return function () { - if (gridBodyEl) { - updatePrevPageInfo({ - page: page, - scrollTop: gridBodyEl.scrollTop - }); - } - }; - }, []); - var minRowHeight = { - comfortable: 40, - standard: 40, - compressed: 32, - tight: 24 - }; - var totalPages = Math.ceil(totalRecords / pageSize); - var isLastPage = withPagination && page === totalPages; - var dataLength = isLastPage ? totalRecords - (page - 1) * pageSize : loading ? pageSize : withPagination ? Math.min(totalRecords, pageSize) : totalRecords; + var NestedList = function NestedList(props) { + var nestedBody = props.nestedBody, + expanded = props.expanded; + var prevState = usePrevious(expanded); - var renderItem = function renderItem(rowIndex) { - return /*#__PURE__*/React__namespace.createElement(GridRow, { - rowIndex: rowIndex, - data: data[rowIndex], - schema: schema, - onSelect: onSelect - }); - }; + var _a = React__namespace.useState(expanded), + open = _a[0], + setOpen = _a[1]; - return /*#__PURE__*/React__namespace.createElement(index, { - className: "Grid-body", - minItemHeight: minRowHeight[size], - totalLength: dataLength, - length: 20, - buffer: 7, - renderItem: renderItem - }); - }; + var _b = React__namespace.useState(''), + keyframe = _b[0], + setKeyframe = _b[1]; - var Grid = function (_super) { - __extends(Grid, _super); + var listItemRef = React__namespace.useRef(null); + var uniqueKey = Math.random().toString(36).substring(2, 6); - function Grid(props) { - var _this = _super.call(this, props) || this; + var _c = React__namespace.useState(getAnimationClass(uniqueKey, expanded)), + animation = _c[0], + setAnimation = _c[1]; - _this.gridRef = null; - _this.isHeadSyncing = false; - _this.isBodySyncing = false; + React__namespace.useEffect(function () { + if (prevState != undefined && prevState !== expanded) { + setOpen(true); + } - _this.syncScroll = function (type) { - return function () { - var gridHeadEl = _this.gridRef.querySelector('.Grid-head'); + requestAnimationFrame(function () { + var result = menuItemAnimation(listItemRef, uniqueKey); + setKeyframe(result); + }); + var animationClass = getAnimationClass(uniqueKey, expanded); + setAnimation(animationClass); + }, [expanded]); - var gridBodyEl = _this.gridRef.querySelector('.Grid-body'); + var handleAnimationEnd = function handleAnimationEnd() { + !expanded && setOpen(false); + }; - if (type === 'head') { - if (!_this.isHeadSyncing) { - _this.isBodySyncing = true; - gridBodyEl.scrollLeft = gridHeadEl.scrollLeft; - } + var styles = { + animation: animation, + overflow: 'hidden', + animationFillMode: 'forwards' + }; + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("style", null, keyframe), nestedBody && open && /*#__PURE__*/React__namespace.createElement("div", { + style: styles, + onAnimationEnd: handleAnimationEnd, + "data-test": "DesignSystem-Listbox--Nested-Item", + ref: listItemRef + }, nestedBody)); + }; - _this.isHeadSyncing = false; - } + var ListboxItem = function ListboxItem(props) { + var _a; - if (type === 'body') { - if (!_this.isBodySyncing) { - _this.isHeadSyncing = true; - gridHeadEl.scrollLeft = gridBodyEl.scrollLeft; - } + var nestedBody = props.nestedBody, + expanded = props.expanded, + id = props.id, + onClick = props.onClick, + value = props.value, + _b = props.tagName, + Tag = _b === void 0 ? 'li' : _b, + rest = __rest(props, ["nestedBody", "expanded", "id", "onClick", "value", "tagName"]); - _this.isBodySyncing = false; - } - }; - }; + var contextProp = React__namespace.useContext(ListboxContext); + var showDivider = contextProp.showDivider, + draggable = contextProp.draggable; - _this.updateRenderedSchema = function (newSchema) { - var updateSchema = _this.props.updateSchema; + var onClickHandler = function onClickHandler(e) { + onClick && onClick(e, id, value); + }; - if (updateSchema) { - updateSchema(newSchema); - } - }; + var tagClass = classNames__default["default"]((_a = {}, _a['Listbox-item-wrapper'] = !draggable, _a)); + return /*#__PURE__*/React__namespace.createElement(Tag, __assign({ + id: id, + "data-test": "DesignSystem-Listbox-Item" + }, rest, { + onClick: onClickHandler, + "data-value": value, + className: tagClass + }), /*#__PURE__*/React__namespace.createElement(ListBody, __assign({}, props)), nestedBody && /*#__PURE__*/React__namespace.createElement(NestedList, { + expanded: expanded, + nestedBody: nestedBody + }), showDivider && /*#__PURE__*/React__namespace.createElement(Divider, { + className: "Listbox-divider" + })); + }; + ListboxItem.displayName = 'Listbox.Item'; + ListboxItem.defaultProps = { + tagName: 'li' + }; - _this.updateColumnSchema = function (name, schemaUpdate) { - var schema = _this.props.schema; + var ListboxContext = /*#__PURE__*/React__namespace.createContext({ + size: 'standard', + type: 'resource', + draggable: false, + showDivider: true + }); + var Provider = ListboxContext.Provider; + var Listbox = function Listbox(props) { + var children = props.children, + className = props.className, + draggable = props.draggable, + size = props.size, + type = props.type, + showDivider = props.showDivider, + Tag = props.tagName, + rest = __rest(props, ["children", "className", "draggable", "size", "type", "showDivider", "tagName"]); - var newSchema = __spreadArrays(schema); + var baseProps = extractBaseProps(props); + var classes = classNames__default["default"]({ + Listbox: true + }, className); + var sharedProp = { + size: size, + type: type, + draggable: draggable, + showDivider: showDivider + }; + return /*#__PURE__*/React__namespace.createElement(Provider, { + value: sharedProp + }, draggable ? /*#__PURE__*/React__namespace.createElement(DraggableList, __assign({}, props)) : /*#__PURE__*/React__namespace.createElement(Tag, __assign({ + "data-test": "DesignSystem-Listbox" + }, baseProps, { + className: classes + }, rest), children)); + }; + Listbox.displayName = 'Listbox'; + Listbox.defaultProps = { + tagName: 'ul', + size: 'standard', + type: 'resource', + draggable: false, + showDivider: true + }; + Listbox.Item = ListboxItem; + + var RenderHelpText = function RenderHelpText(_a) { + var helpText = _a.helpText, + error = _a.error; + return /*#__PURE__*/React__default["default"].createElement(HelpText, { + className: "d-flex", + message: helpText.trim().length > 0 ? helpText : ' ', + error: error ? error : undefined + }); + }; + var RenderCounter = function RenderCounter(_a) { + var inputText = _a.inputText, + max = _a.max; + return /*#__PURE__*/React__default["default"].createElement("div", { + className: "mt-3 d-flex" + }, /*#__PURE__*/React__default["default"].createElement(Text, { + appearance: "subtle", + className: "pr-2", + color: inputText.length > max ? 'alert' : undefined, + size: "small", + weight: "medium" + }, inputText.length), /*#__PURE__*/React__default["default"].createElement(Text, { + appearance: "subtle", + className: "pr-2", + size: "small", + weight: "medium" + }, "/"), /*#__PURE__*/React__default["default"].createElement(Text, { + appearance: "subtle", + size: "small", + weight: "medium" + }, max)); + }; - var ind = newSchema.findIndex(function (s) { - return s.name === name; - }); - newSchema[ind] = __assign(__assign({}, newSchema[ind]), schemaUpdate); + var TextFieldWithTextarea = function TextFieldWithTextarea(props) { + var label = props.label, + _a = props.rows, + rows = _a === void 0 ? 3 : _a, + _b = props.resize, + resize = _b === void 0 ? true : _b, + required = props.required, + error = props.error, + onChange = props.onChange, + _c = props.value, + value = _c === void 0 ? '' : _c, + _d = props.max, + max = _d === void 0 ? 200 : _d, + _e = props.helpText, + helpText = _e === void 0 ? ' ' : _e; + var textareaRef = React__namespace.useRef(null); - _this.updateRenderedSchema(newSchema); - }; + var _f = React__namespace.useState(value), + inputText = _f[0], + setInputText = _f[1]; - _this.reorderColumn = function (from, to) { - var schema = _this.props.schema; - var fromInd = schema.findIndex(function (s) { - return s.name === from; - }); - var toInd = schema.findIndex(function (s) { - return s.name === to; + var _g = React__namespace.useState(0), + helptextWidth = _g[0], + setHelptextWidth = _g[1]; + + var onChangeHandler = function onChangeHandler(e) { + setInputText(e.target.value); + if (onChange) onChange(e); + }; + + var inputError = error || inputText.length > max; + React__namespace.useEffect(function () { + var textarea = textareaRef.current; + + if (window.ResizeObserver) { + var resizeObserver_1 = new window.ResizeObserver(function (entries) { + var entry = entries[0]; + var offsetWidth = entry.target.offsetWidth; + setHelptextWidth(offsetWidth); }); - var newSchema = moveToIndex(schema, fromInd, toInd); + textarea && resizeObserver_1.observe(textarea); + return function () { + resizeObserver_1.disconnect(); + }; + } - _this.updateRenderedSchema(newSchema); - }; + return function () {}; + }, []); + return /*#__PURE__*/React__namespace.createElement("div", null, label && /*#__PURE__*/React__namespace.createElement(Label, { + required: required, + withInput: true + }, label), /*#__PURE__*/React__namespace.createElement(Textarea, __assign({}, props, { + resize: resize, + rows: rows, + onChange: onChangeHandler, + error: inputError, + ref: textareaRef + })), /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex justify-content-between", + style: { + width: helptextWidth + } + }, /*#__PURE__*/React__namespace.createElement(RenderHelpText, { + helpText: helpText, + error: inputError + }), /*#__PURE__*/React__namespace.createElement(RenderCounter, { + inputText: inputText, + max: max + }))); + }; - _this.updateSortingList = function (sortingList) { - var updateSortingList = _this.props.updateSortingList; + var TextFieldWithInput = function TextFieldWithInput(props) { + var label = props.label, + minWidth = props.minWidth, + required = props.required, + error = props.error, + onChange = props.onChange, + _a = props.value, + value = _a === void 0 ? '' : _a, + _b = props.max, + max = _b === void 0 ? 200 : _b, + _c = props.helpText, + helpText = _c === void 0 ? ' ' : _c; - if (updateSortingList) { - updateSortingList(sortingList); - } - }; + var _d = React__namespace.useState(value), + inputText = _d[0], + setInputText = _d[1]; - _this.updateFilterList = function (filterList) { - var updateFilterList = _this.props.updateFilterList; + var onChangeHandler = function onChangeHandler(event) { + setInputText(event.target.value); + if (onChange) onChange(event); + }; - if (updateFilterList) { - updateFilterList(filterList); - } - }; + var inputError = error || inputText.length > max; + return /*#__PURE__*/React__namespace.createElement("div", null, label && /*#__PURE__*/React__namespace.createElement(Label, { + required: required, + withInput: true + }, label), /*#__PURE__*/React__namespace.createElement(Input, __assign({}, props, { + error: inputError, + onChange: onChangeHandler + })), /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex justify-content-between", + style: { + minWidth: minWidth + } + }, /*#__PURE__*/React__namespace.createElement(RenderHelpText, { + helpText: helpText, + error: inputError + }), /*#__PURE__*/React__namespace.createElement(RenderCounter, { + inputText: inputText, + max: max + }))); + }; + TextFieldWithInput.defaultProps = { + minWidth: 256 + }; - _this.onMenuChange = function (name, selected) { - var sortingList = _this.props.sortingList; + var TextField = function TextField(props) { + var withTextarea = props.withTextarea; - switch (selected) { - case 'sortAsc': - sortColumn({ - sortingList: sortingList, - updateSortingList: _this.updateSortingList - }, name, 'asc'); - break; + if (withTextarea) { + return /*#__PURE__*/React__namespace.createElement(TextFieldWithTextarea, __assign({}, props)); + } - case 'sortDesc': - sortColumn({ - sortingList: sortingList, - updateSortingList: _this.updateSortingList - }, name, 'desc'); - break; + return /*#__PURE__*/React__namespace.createElement(TextFieldWithInput, __assign({}, props)); + }; + TextField.displayName = 'TextField'; - case 'unsort': - sortColumn({ - sortingList: sortingList, - updateSortingList: _this.updateSortingList - }, name, 'unsort'); - break; + var SelectionAvatar = function SelectionAvatar(props) { + var icon = props.icon, + image = props.image, + rest = __rest(props, ["icon", "image"]); - case 'pinLeft': - pinColumn({ - updateColumnSchema: _this.updateColumnSchema - }, name, 'left'); - break; + return /*#__PURE__*/React__namespace.createElement(Avatar, __assign({ + role: "checkbox" + }, rest, { + withTooltip: true, + className: "cursor-pointer" + }), image || icon); + }; - case 'pinRight': - pinColumn({ - updateColumnSchema: _this.updateColumnSchema - }, name, 'right'); - break; + var AvatarSelectionContext = /*#__PURE__*/React__namespace.createContext({}); - case 'unpin': - pinColumn({ - updateColumnSchema: _this.updateColumnSchema - }, name, 'unpin'); - break; + var SelectionAvatarsWrapper = function SelectionAvatarsWrapper(props) { + var avatarList = props.avatarList, + avatarStyle = props.avatarStyle, + tooltipPosition = props.tooltipPosition, + size = props.size, + avatarRenderer = props.avatarRenderer; + var contextProp = React__namespace.useContext(AvatarSelectionContext); + var setSelectedItems = contextProp.setSelectedItems, + selectedItems = contextProp.selectedItems, + onSelect = contextProp.onSelect; - case 'hide': - hideColumn({ - updateColumnSchema: _this.updateColumnSchema - }, name, true); - break; - } - }; + var onClickHandler = function onClickHandler(item) { + var list = selectedItems; - _this.onFilterChange = function (name, selected) { - var _a; + if (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(item)) { + list = selectedItems.filter(function (selectedItem) { + return selectedItem !== item; + }); + } else { + list === null || list === void 0 ? void 0 : list.push(item); + } - var filterList = _this.props.filterList; + list && (setSelectedItems === null || setSelectedItems === void 0 ? void 0 : setSelectedItems(__spreadArrays(list))); + onSelect && onSelect(list); + }; - var newFilterList = __assign(__assign({}, filterList), (_a = {}, _a[name] = selected, _a)); + var handleKeyDown = function handleKeyDown(event, item) { + switch (event.key) { + case 'Enter': + onClickHandler(item); + break; + } + }; - _this.updateFilterList(newFilterList); - }; + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, avatarList.map(function (avatarItem, index) { + var _a; - _this.onSelect = function (rowIndex, selected) { - var onSelect = _this.props.onSelect; + var appearance = avatarItem.appearance, + firstName = avatarItem.firstName, + lastName = avatarItem.lastName, + icon = avatarItem.icon, + image = avatarItem.image; + var GroupClass = classNames__default["default"]((_a = {}, _a["SelectionAvatarGroup-item"] = true, _a["SelectionAvatarGroup-item--selected"] = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(avatarItem), _a)); - if (onSelect) { - onSelect(rowIndex, selected); + if (avatarRenderer) { + return avatarRenderer(avatarItem); + } + + return /*#__PURE__*/React__namespace.createElement("span", { + key: index, + className: "SelectionAvatarGroup-wrapper" + }, /*#__PURE__*/React__namespace.createElement("div", { + tabIndex: 0, + role: "checkbox", + style: avatarStyle, + className: GroupClass, + "data-test": "DesignSystem-AvatarSelection--Avatar", + "aria-checked": selectedItems && selectedItems.includes(avatarItem), + onClick: function onClick() { + return onClickHandler(avatarItem); + }, + onKeyDown: function onKeyDown(event) { + return handleKeyDown(event, avatarItem); } - }; + }, /*#__PURE__*/React__namespace.createElement(SelectionAvatar, { + size: size, + appearance: appearance, + firstName: firstName, + lastName: lastName, + withTooltip: true, + tooltipPosition: tooltipPosition, + icon: icon, + image: image + }))); + })); + }; - _this.onSelectAll = function (event) { - var onSelectAll = _this.props.onSelectAll; + var handleKeyDown$6 = function handleKeyDown(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem) { + switch (event.key) { + case 'Enter': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; - if (onSelectAll) { - onSelectAll(event.target.checked); - } - }; + case 'ArrowDown': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; - _this.updatePrevPageInfo = function (value) { - _this.setState({ - prevPageInfo: value - }); - }; + case 'ArrowUp': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(true); + break; + } + }; + var focusListItem$3 = function focusListItem(position, setFocusedOption, listRef, withSearch) { + var _a, _b, _c, _d, _e; - var pageInfo = { - page: 1, - scrollTop: 0 - }; - _this.state = { - init: false, - prevPageInfo: pageInfo - }; - return _this; + if (withSearch && position === 'down') { + var searchInput = (_a = listRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('[data-test="DesignSystem-AvatarSelection--Input"]'); + searchInput && ((_b = searchInput[0]) === null || _b === void 0 ? void 0 : _b.focus()); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(searchInput); + return; } - Grid.prototype.componentDidMount = function () { - this.setState({ - init: true + var listItems = (_c = listRef.current) === null || _c === void 0 ? void 0 : _c.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; + + if (position === 'down') { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[0]; + } else { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[listItems.length - 1]; + } + + (_d = targetOption) === null || _d === void 0 ? void 0 : _d.focus(); + (_e = targetOption === null || targetOption === void 0 ? void 0 : targetOption.scrollIntoView) === null || _e === void 0 ? void 0 : _e.call(targetOption, { + block: 'center' + }); + setFocusedOption && setFocusedOption(targetOption); + }; + + var AvatarSelectionCount = function AvatarSelectionCount(props) { + var _a; + + var hiddenAvatarCount = props.hiddenAvatarCount, + avatarStyle = props.avatarStyle, + size = props.size, + hiddenAvatarList = props.hiddenAvatarList; + var contextProp = React__namespace.useContext(AvatarSelectionContext); + var selectedItems = contextProp.selectedItems, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + triggerRef = contextProp.triggerRef, + setOpenPopover = contextProp.setOpenPopover, + openPopover = contextProp.openPopover, + popoverId = contextProp.popoverId; + + var _b = React__namespace.useState(0), + selectedItemCount = _b[0], + setSelectedItemCount = _b[1]; + + var wrapperClassName = classNames__default["default"]((_a = {}, _a['SelectionAvatarCount-wrapper'] = true, _a['SelectionAvatarCount--selected'] = selectedItemCount > 0, _a)); + React__namespace.useEffect(function () { + var selectedList = hiddenAvatarList.filter(function (data1) { + return selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.some(function (data2) { + return data2 === data1; + }); }); - window.addEventListener('resize', this.forceRerender.bind(this)); - }; + setSelectedItemCount(selectedList.length); + }, [selectedItems]); + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-AvatarSelection--TriggerAvatar", + className: wrapperClassName, + onKeyDown: function onKeyDown(event) { + return handleKeyDown$6(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem); + }, + style: avatarStyle, + tabIndex: 0, + role: "button", + "aria-haspopup": "listbox", + "aria-expanded": openPopover, + "aria-controls": popoverId, + ref: triggerRef + }, /*#__PURE__*/React__namespace.createElement(Avatar, { + size: size, + appearance: "secondary", + className: "SelectionAvatarCount cursor-pointer" + }, /*#__PURE__*/React__namespace.createElement(Text, { + className: "overflow-hidden" + }, "+" + hiddenAvatarCount))); + }; - Grid.prototype.forceRerender = function () { - this.forceUpdate(); - }; + var handleKeyDown$5 = function handleKeyDown(event, focusedOption, setFocusedOption, setHighlightFirstItem, setHighlightLastItem, listRef, withSearch, setOpenPopover, triggerRef) { + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + navigateOptions$3('up', focusedOption, setFocusedOption, listRef, withSearch); + break; - Grid.prototype.componentWillUnmount = function () { - this.removeScrollListeners(); - window.removeEventListener('resize', this.forceRerender.bind(this)); - }; + case 'ArrowDown': + event.preventDefault(); + navigateOptions$3('down', focusedOption, setFocusedOption, listRef, withSearch); + break; + + case 'Enter': + handleEnterKey$2(focusedOption); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(false); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(false); + break; + + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + triggerRef.current.focus(); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; + } + }; - Grid.prototype.componentDidUpdate = function (prevProps, prevState) { - if (prevState.init !== this.state.init) { - this.addScrollListeners(); - } + var handleEnterKey$2 = function handleEnterKey(focusedOption) { + var _a; - if (prevProps.page !== this.props.page) { - this.removeScrollListeners(); - this.addScrollListeners(); - } - }; + (_a = focusedOption) === null || _a === void 0 ? void 0 : _a.click(); + }; - Grid.prototype.addScrollListeners = function () { - var gridHeadEl = this.gridRef.querySelector('.Grid-head'); - var gridBodyEl = this.gridRef.querySelector('.Grid-body'); + var navigateOptions$3 = function navigateOptions(direction, focusedOption, setFocusedOption, listRef, withSearch) { + var listItems = listRef === null || listRef === void 0 ? void 0 : listRef.current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var index = Array.from(listItems).findIndex(function (item) { + return item == focusedOption; + }); - if (gridHeadEl && gridBodyEl) { - gridHeadEl.addEventListener('scroll', this.syncScroll('head')); - gridBodyEl.addEventListener('scroll', this.syncScroll('body')); - } - }; + if (index === -1) { + index = direction === 'up' ? listItems.length - 1 : 0; + } else if (withSearch && index === 0 && direction === 'up' || withSearch && index === listItems.length - 1 && direction === 'down') { + var searchInput = listRef.current.querySelector('[data-test="DesignSystem-AvatarSelection--Input"]'); + searchInput.focus(); + setFocusedOption && setFocusedOption(searchInput); + } else { + index = direction === 'up' ? (index - 1 + listItems.length) % listItems.length : (index + 1) % listItems.length; + var targetOption = listItems[index]; + targetOption.focus(); + setFocusedOption && setFocusedOption(targetOption); + targetOption.scrollIntoView({ + block: 'center' + }); + } + }; - Grid.prototype.removeScrollListeners = function () { - var gridHeadEl = this.gridRef.querySelector('.Grid-head'); - var gridBodyEl = this.gridRef.querySelector('.Grid-body'); + var handleInputKeyDown$1 = function handleInputKeyDown(event, listRef, setFocusedOption, setOpenPopover, triggerRef) { + var _a, _b, _c; - if (gridHeadEl && gridBodyEl) { - gridHeadEl.removeEventListener('scroll', this.syncScroll('head')); - gridBodyEl.removeEventListener('scroll', this.syncScroll('body')); - } - }; + var listItems = (_a = listRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; - Grid.prototype.render = function () { - var _a; + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + targetOption = listItems[listItems.length - 1]; + break; - var _this = this; + case 'ArrowDown': + event.preventDefault(); + targetOption = listItems[0]; + break; + + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + triggerRef.current.focus(); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; + } - var _b; + (_b = targetOption) === null || _b === void 0 ? void 0 : _b.focus(); + (_c = targetOption === null || targetOption === void 0 ? void 0 : targetOption.scrollIntoView) === null || _c === void 0 ? void 0 : _c.call(targetOption, { + block: 'center' + }); + setFocusedOption && setFocusedOption(targetOption); + }; - var baseProps = extractBaseProps(this.props); - var _c = this.state, - init = _c.init, - prevPageInfo = _c.prevPageInfo; - var _d = this.props, - type = _d.type, - size = _d.size, - showHead = _d.showHead, - className = _d.className, - page = _d.page, - loading = _d.loading, - loaderSchema = _d.loaderSchema; - var schema = getSchema(this.props.schema, loading, loaderSchema); - var classes = classNames__default['default']((_a = { - Grid: 'true' - }, _a["Grid--" + type] = type, _a["Grid--" + size] = size, _a), className); - return /*#__PURE__*/React__namespace.createElement("div", __assign({ - className: classes - }, baseProps, { - ref: function ref(el) { - _this.gridRef = el; - } - }), init && /*#__PURE__*/React__namespace.createElement(GridProvider, { - value: __assign(__assign({}, this.props), { - ref: this.gridRef - }) - }, showHead && /*#__PURE__*/React__namespace.createElement(GridHead, { - schema: schema, - onSelectAll: (_b = this.onSelectAll) === null || _b === void 0 ? void 0 : _b.bind(this), - onMenuChange: this.onMenuChange.bind(this), - onFilterChange: this.onFilterChange.bind(this), - updateColumnSchema: this.updateColumnSchema.bind(this), - reorderColumn: this.reorderColumn.bind(this) - }), /*#__PURE__*/React__namespace.createElement(GridBody, { - key: "" + page, - schema: schema, - prevPageInfo: prevPageInfo, - updatePrevPageInfo: this.updatePrevPageInfo.bind(this), - onSelect: this.onSelect.bind(this) - }))); - }; + var AvatarSelectionInput = function AvatarSelectionInput(props) { + var contextProp = React__namespace.useContext(AvatarSelectionContext); + var listRef = contextProp.listRef, + setFocusedOption = contextProp.setFocusedOption, + setOpenPopover = contextProp.setOpenPopover, + triggerRef = contextProp.triggerRef; + return /*#__PURE__*/React__namespace.createElement("div", { + className: "SelectionAvatar-inputWrapper" + }, /*#__PURE__*/React__namespace.createElement(Input, __assign({ + icon: "search", + onKeyDown: function onKeyDown(event) { + return handleInputKeyDown$1(event, listRef, setFocusedOption, setOpenPopover, triggerRef); + }, + className: "w-100 SelectionAvatar-input", + "data-test": "DesignSystem-AvatarSelection--Input" + }, props))); + }; - return Grid; - }(React__namespace.Component); - Grid.defaultProps = defaultProps$1; + var AvatarSelectionList = function AvatarSelectionList(props) { + return /*#__PURE__*/React__namespace.createElement(Listbox, __assign({}, props), props.children); + }; + AvatarSelectionList.defaultProps = { + type: 'option', + showDivider: false, + size: 'compressed', + tagName: 'ul' + }; - var renderTitle = function renderTitle(props) { - var tooltip = props.tooltip, - cellData = props.cellData; - var children = cellData.title; + var AvatarSelectionOption = function AvatarSelectionOption(props) { + var children = props.children, + value = props.value, + rest = __rest(props, ["children", "value"]); + + var contextProp = React__namespace.useContext(AvatarSelectionContext); + var setSelectedItems = contextProp.setSelectedItems, + selectedItems = contextProp.selectedItems, + onSelect = contextProp.onSelect, + focusedOption = contextProp.focusedOption, + setFocusedOption = contextProp.setFocusedOption, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + listRef = contextProp.listRef, + withSearch = contextProp.withSearch, + setOpenPopover = contextProp.setOpenPopover, + triggerRef = contextProp.triggerRef; + + var onSelectHandler = function onSelectHandler(event, avatarData) { + event.preventDefault(); + var list = selectedItems ? __spreadArrays(selectedItems) : []; - if (children !== undefined && children !== null) { - if (tooltip) { - return /*#__PURE__*/React__namespace.createElement(Tooltip, { - tooltip: children, - position: 'top-start', - triggerClass: "w-100 overflow-hidden" - }, /*#__PURE__*/React__namespace.createElement(Text, { - className: "w-100 ellipsis" - }, children)); + if (selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(avatarData)) { + list = selectedItems.filter(function (selectedItem) { + return selectedItem !== avatarData; + }); + } else { + list.push(avatarData); } - return /*#__PURE__*/React__namespace.createElement(Text, { - className: "w-100 ellipsis" - }, children); - } + setSelectedItems === null || setSelectedItems === void 0 ? void 0 : setSelectedItems(__spreadArrays(list)); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + onSelect && onSelect(list); + }; + + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$5(event, focusedOption, setFocusedOption, setHighlightFirstItem, setHighlightLastItem, listRef, withSearch, setOpenPopover, triggerRef); + }; - return null; + return /*#__PURE__*/React__namespace.createElement(Listbox.Item, __assign({ + onClick: function onClick(event) { + return onSelectHandler(event, value); + }, + onKeyDown: function onKeyDown(event) { + return onKeyDownHandler(event); + }, + selected: selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(value), + "data-test": "DesignSystem-AvatarSelection--Option", + tabIndex: -1 + }, rest), children); + }; + AvatarSelectionOption.defaultProps = { + tagName: 'li' }; - var renderMetaList = function renderMetaList(props) { - var cellData = props.cellData; - var metaList = cellData.metaList; + var AvatarSelectionEmptyState = function AvatarSelectionEmptyState(props) { + var height = props.height, + title = props.title, + description = props.description; + return /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex flex-column justify-content-center align-items-center", + style: { + height: height ? height - 4 : '' + }, + "data-test": "DesignSystem-AvatarSelection--EmptyState" + }, title && /*#__PURE__*/React__namespace.createElement(Text, { + className: "text-align-center mb-3", + weight: "strong" + }, title), description && /*#__PURE__*/React__namespace.createElement(Text, { + className: "text-align-center mb-6", + weight: "medium", + size: "small", + appearance: "subtle" + }, description)); + }; - if (metaList) { - return /*#__PURE__*/React__namespace.createElement("div", { - className: "GridCell-metaList" - }, metaList.map(function (list, index) { - return /*#__PURE__*/React__namespace.createElement(Text, { - key: index, - className: "ellipsis", - appearance: 'subtle', - size: "small" - }, list); - })); - } + var AvatarSelectionItem = function AvatarSelectionItem(props) { + var avatarData = props.avatarData, + isSelected = props.isSelected; - return null; + var _a = React__namespace.useState(false), + showTooltip = _a[0], + setShowTooltip = _a[1]; + + var elementRef = React__namespace.useRef(null); + var _b = avatarData.firstName, + firstName = _b === void 0 ? '' : _b, + _c = avatarData.lastName, + lastName = _c === void 0 ? '' : _c; + var name = firstName + " " + lastName; + return /*#__PURE__*/React__namespace.createElement(Tooltip, { + showOnTruncation: true, + tooltip: name, + elementRef: elementRef, + open: showTooltip + }, /*#__PURE__*/React__namespace.createElement(AvatarSelectionOption, { + value: avatarData, + onFocus: function onFocus() { + setShowTooltip(true); + }, + onBlur: function onBlur() { + setShowTooltip(false); + } + }, /*#__PURE__*/React__namespace.createElement(Checkbox, { + defaultChecked: isSelected, + checked: isSelected, + label: name, + size: "regular", + tabIndex: -1, + className: "ellipsis--noWrap", + "data-test": "DesignSystem-AvatarSelection--Checkbox", + labelRef: elementRef + }))); }; - var renderAvatar = function renderAvatar(props) { - var cellData = props.cellData; - var firstName = cellData.firstName, - lastName = cellData.lastName, - title = cellData.title; + var AvatarSelectionPopover = function AvatarSelectionPopover(props) { + var _a; - if (firstName || lastName) { - return /*#__PURE__*/React__namespace.createElement(Avatar, { - className: "mr-5", - firstName: firstName, - lastName: lastName - }); - } + var hiddenAvatarList = props.hiddenAvatarList, + customStyle = props.customStyle, + searchPlaceholder = props.searchPlaceholder, + searchComparator = props.searchComparator, + children = props.children; - if (title) { - return /*#__PURE__*/React__namespace.createElement(Avatar, { - className: "mr-5" - }, title); - } + var _b = React__namespace.useState(hiddenAvatarList), + searchList = _b[0], + setSearchList = _b[1]; - return null; - }; + var _c = React__namespace.useState(''), + searchValue = _c[0], + setSearchValue = _c[1]; - var renderIcon = function renderIcon(props) { - var cellData = props.cellData; - var title = cellData.title, - icon = cellData.icon; - var iconName = icon || title; + var contextProp = React__namespace.useContext(AvatarSelectionContext); + var selectedItems = contextProp.selectedItems, + listRef = contextProp.listRef, + withSearch = contextProp.withSearch, + popoverId = contextProp.popoverId; - if (iconName) { - return /*#__PURE__*/React__namespace.createElement(Icon, { - name: iconName - }); + if (children) { + return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, children); } - return null; - }; + var onSearchHandler = function onSearchHandler(event) { + var searchValue = event.target.value; + var list = hiddenAvatarList === null || hiddenAvatarList === void 0 ? void 0 : hiddenAvatarList.filter(function (avatarData) { + var _a, _b; - var renderStatusHint = function renderStatusHint(props) { - var cellData = props.cellData; - var statusAppearance = cellData.statusAppearance; - var children = cellData.title; + var firstName = avatarData.firstName, + lastName = avatarData.lastName; - if (children) { - return /*#__PURE__*/React__namespace.createElement(StatusHint, { - appearance: statusAppearance - }, children); - } + if (searchComparator) { + return searchComparator(searchValue, avatarData); + } - return null; + return ((_a = firstName === null || firstName === void 0 ? void 0 : firstName.toLowerCase()) === null || _a === void 0 ? void 0 : _a.startsWith(searchValue.toLowerCase())) || ((_b = lastName === null || lastName === void 0 ? void 0 : lastName.toLowerCase()) === null || _b === void 0 ? void 0 : _b.startsWith(searchValue.toLowerCase())); + }); + setSearchValue(searchValue); + setSearchList(list); + }; + + var onClearHandler = function onClearHandler() { + setSearchValue(''); + setSearchList(hiddenAvatarList); + }; + + var popperClassName = classNames__default["default"]((_a = {}, _a['py-3'] = !withSearch, _a['pb-3'] = withSearch, _a['SelectionAvatarGroup-popper'] = true, _a)); + return /*#__PURE__*/React__namespace.createElement("div", { + style: { + width: customStyle.width + }, + ref: listRef, + "data-test": "DesignSystem-AvatarSelection--Popover", + id: popoverId + }, withSearch && /*#__PURE__*/React__namespace.createElement(AvatarSelectionInput, { + placeholder: searchPlaceholder, + onChange: onSearchHandler, + value: searchValue, + onClear: onClearHandler + }), /*#__PURE__*/React__namespace.createElement("div", { + style: customStyle, + className: popperClassName + }, searchList.length === 0 && /*#__PURE__*/React__namespace.createElement(AvatarSelectionEmptyState, { + height: customStyle.maxHeight, + title: "No users found", + description: "Try modifying your search to find what you are looking for." + }), /*#__PURE__*/React__namespace.createElement(AvatarSelectionList, null, searchList.map(function (avatarData, index) { + var isSelected = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.includes(avatarData); + return /*#__PURE__*/React__namespace.createElement(AvatarSelectionItem, { + key: index, + avatarData: avatarData, + isSelected: isSelected + }); + })))); }; - var GridCell = function GridCell(props) { + var AvatarSelection = function AvatarSelection(props) { var _a; - var size = props.size, - schema = props.schema, - loading = props.loading; - var data = !loading ? translateData(schema, props.data) : {}; - var name = schema.name, - _b = schema.cellType, - cellType = _b === void 0 ? 'DEFAULT' : _b, - _c = schema.align, - align = _c === void 0 ? 'left' : _c, - tooltip = schema.tooltip; - var cellData = data[name]; - var cellClass = classNames__default['default']((_a = {}, _a['GridCell'] = true, _a)); + var max = props.max, + borderColor = props.borderColor, + tooltipPosition = props.tooltipPosition, + list = props.list, + className = props.className, + size = props.size, + avatarRenderer = props.avatarRenderer, + onSelect = props.onSelect, + width = props.width, + maxHeight = props.maxHeight, + minHeight = props.minHeight, + searchPlaceholder = props.searchPlaceholder, + withSearch = props.withSearch, + searchComparator = props.searchComparator, + children = props.children; - switch (cellType) { - case 'DEFAULT': - return /*#__PURE__*/React__namespace.createElement("div", { - className: cellClass + " GridCell--align-" + align + " GridCell--default" - }, loading ? /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { - length: "medium" - }) : renderTitle({ - tooltip: tooltip, - cellData: cellData - })); + var _b = React__namespace.useState([]), + selectedItems = _b[0], + setSelectedItems = _b[1]; - case 'WITH_META_LIST': - return /*#__PURE__*/React__namespace.createElement("div", { - className: cellClass + " GridCell--metaList" - }, loading ? /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { - length: "medium" - }), /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { - length: "large", - size: "xxs" - })) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, renderTitle({ - tooltip: tooltip, - cellData: cellData - }), renderMetaList({ - cellData: cellData - }))); + var _c = React__namespace.useState(false), + openPopover = _c[0], + setOpenPopover = _c[1]; - case 'AVATAR': - if (loading) { - return /*#__PURE__*/React__namespace.createElement(Placeholder, { - className: "GridCell--align-" + align, - imageSize: 'medium', - round: true - }); - } + var _d = React__namespace.useState(), + focusedOption = _d[0], + setFocusedOption = _d[1]; - return /*#__PURE__*/React__namespace.createElement("div", { - className: cellClass + " GridCell--align-" + align + " GridCell--avatar" - }, size !== 'tight' && renderAvatar({ - cellData: cellData - })); + var _e = React__namespace.useState(false), + highlightFirstItem = _e[0], + setHighlightFirstItem = _e[1]; - case 'AVATAR_WITH_TEXT': - if (loading) { - return /*#__PURE__*/React__namespace.createElement(Placeholder, { - imageSize: 'medium', - round: true - }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { - className: "ml-3", - length: "medium" - })); + var _f = React__namespace.useState(false), + highlightLastItem = _f[0], + setHighlightLastItem = _f[1]; + + var listRef = /*#__PURE__*/React__namespace.createRef(); + var triggerRef = /*#__PURE__*/React__namespace.createRef(); + React__namespace.useEffect(function () { + var selectedList = []; + list.forEach(function (avatarItem) { + if (avatarItem.selected) { + selectedList.push(avatarItem); } + }); + setSelectedItems(selectedList); + }, []); + React__namespace.useEffect(function () { + if (!openPopover) { + setHighlightFirstItem(false); + setHighlightLastItem(false); + } else { + setHighlightFirstItem(true); + } + }, [openPopover]); + React__namespace.useEffect(function () { + if (highlightFirstItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$3('down', setFocusedOption, listRef, withSearch); + }); + } + }, [highlightFirstItem]); + React__namespace.useEffect(function () { + if (highlightLastItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$3('up', setFocusedOption, listRef, withSearch); + }); + } + }, [highlightLastItem]); + var baseProps = extractBaseProps(props); + var hiddenAvatarCount = list.length - max; + var avatarStyle = { + backgroundColor: "" + borderColor, + boxShadow: "0 0 0 calc(var(--spacing-xs) + var(--spacing-s)) " + borderColor + }; + var AvatarSelectionClass = classNames__default["default"]((_a = {}, _a['SelectionAvatarGroup'] = true, _a), className); + var searchInputHeight = 36; + var searchBorder = 1; + var customStyle = { + width: width, + minHeight: minHeight, + maxHeight: withSearch ? maxHeight - searchInputHeight - searchBorder : maxHeight + }; + var hiddenAvatarList = list.slice(max, list.length); + var popoverId = "DesignSystem-AvatarSelection-Popover-" + uidGenerator(); + var popoverProps = { + hiddenAvatarList: hiddenAvatarList, + customStyle: customStyle, + searchPlaceholder: searchPlaceholder, + searchComparator: searchComparator, + children: children + }; + var triggerProps = { + size: size, + avatarStyle: avatarStyle, + hiddenAvatarCount: hiddenAvatarCount, + hiddenAvatarList: hiddenAvatarList + }; - return /*#__PURE__*/React__namespace.createElement("div", { - className: cellClass + " GridCell--avatarWithText" - }, size !== 'tight' && renderAvatar({ - cellData: cellData - }), renderTitle({ - tooltip: tooltip, - cellData: cellData - })); + var onToggleHandler = function onToggleHandler(open) { + open ? setOpenPopover(true) : setOpenPopover(false); + }; - case 'AVATAR_WITH_META_LIST': - if (loading) { - return /*#__PURE__*/React__namespace.createElement(Placeholder, { - imageSize: 'medium', - round: true - }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { - className: "ml-3", - length: "medium" - }), /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { - className: "ml-3", - length: "large" - })); - } + var contextProp = { + listRef: listRef, + onSelect: onSelect, + withSearch: withSearch, + triggerRef: triggerRef, + selectedItems: selectedItems, + focusedOption: focusedOption, + openPopover: openPopover, + setSelectedItems: setSelectedItems, + setFocusedOption: setFocusedOption, + setHighlightFirstItem: setHighlightFirstItem, + setHighlightLastItem: setHighlightLastItem, + setOpenPopover: setOpenPopover, + popoverId: popoverId + }; + return /*#__PURE__*/React__namespace.createElement(AvatarSelectionContext.Provider, { + value: contextProp + }, /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-AvatarSelection" + }, baseProps, { + className: AvatarSelectionClass + }), /*#__PURE__*/React__namespace.createElement(SelectionAvatarsWrapper, { + size: size, + avatarStyle: avatarStyle, + avatarList: list.slice(0, max), + avatarRenderer: avatarRenderer, + tooltipPosition: tooltipPosition + }), (hiddenAvatarCount > 0 || children && hiddenAvatarCount > 0) && /*#__PURE__*/React__namespace.createElement(Popover, { + open: openPopover, + position: "bottom-end", + trigger: /*#__PURE__*/React__namespace.createElement(AvatarSelectionCount, __assign({}, triggerProps)), + triggerClass: "flex-grow-0", + onToggle: onToggleHandler + }, /*#__PURE__*/React__namespace.createElement(AvatarSelectionPopover, __assign({}, popoverProps))))); + }; + AvatarSelection.displayName = 'AvatarSelection'; + AvatarSelection.defaultProps = { + max: 5, + tooltipPosition: 'bottom', + borderColor: 'white', + size: 'regular', + width: 176, + maxHeight: 256 + }; + AvatarSelection.Input = AvatarSelectionInput; + AvatarSelection.List = AvatarSelectionList; + AvatarSelection.Option = AvatarSelectionOption; + AvatarSelection.EmptyState = AvatarSelectionEmptyState; - return /*#__PURE__*/React__namespace.createElement("div", { - className: cellClass + " GridCell--avatarWithText" - }, size !== 'tight' && renderAvatar({ - cellData: cellData - }), /*#__PURE__*/React__namespace.createElement("div", { - className: "GridCell-metaListWrapper" - }, renderTitle({ - tooltip: tooltip, - cellData: cellData - }), renderMetaList({ - cellData: cellData - }))); + var ComboboxList = function ComboboxList(props) { + return /*#__PURE__*/React__namespace.createElement(Listbox, __assign({ + className: "py-3" + }, props, { + role: "listbox" + }), props.children); + }; + ComboboxList.defaultProps = { + type: 'option', + showDivider: false, + tagName: 'ul', + size: 'compressed' + }; - case 'ICON': - if (loading) { - return /*#__PURE__*/React__namespace.createElement(Placeholder, { - className: "GridCell--align-" + align, - imageSize: 'small', - round: true - }); - } + var ComboboxContext = /*#__PURE__*/React__namespace.createContext({}); - return /*#__PURE__*/React__namespace.createElement("div", { - className: cellClass + " GridCell--align-" + align + " GridCell--icon" - }, renderIcon({ - cellData: cellData - })); + var handleKeyDown$4 = function handleKeyDown(event, focusedOption, setFocusedOption, setOpenPopover, inputTriggerRef, setHighlightFirstItem, setHighlightLastItem, multiSelect, listRef) { + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + navigateOptions$2('up', focusedOption, setFocusedOption, listRef); + break; - case 'STATUS_HINT': - return /*#__PURE__*/React__namespace.createElement("div", { - className: cellClass + " GridCell--align-" + align + " GridCell--statusHint" - }, loading ? /*#__PURE__*/React__namespace.createElement(Placeholder, { - className: "w-75 flex-grow-0", - imageSize: 'small', - round: true - }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { - length: "large" - })) : renderStatusHint({ - cellData: cellData - })); + case 'ArrowDown': + event.preventDefault(); + navigateOptions$2('down', focusedOption, setFocusedOption, listRef); + break; + + case 'Enter': + handleEnterKey$1(focusedOption, multiSelect, inputTriggerRef, listRef, setFocusedOption); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(false); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(false); + break; + + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + inputTriggerRef.current.focus(); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; } + }; - return null; + var handleEnterKey$1 = function handleEnterKey(focusedOption, multiSelect, inputTriggerRef, listRef, setFocusedOption) { + var _a; + + (_a = focusedOption) === null || _a === void 0 ? void 0 : _a.click(); + + if (!multiSelect) { + inputTriggerRef.current.focus(); + } else { + var listItems = listRef.current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var listArr = Array.from(listItems); + var index = listArr.findIndex(function (item) { + return item == focusedOption; + }); + + if (index === listArr.length - 1) { + listItems[0].focus(); + setFocusedOption && setFocusedOption(listItems[0]); + listItems[0].scrollIntoView({ + block: 'center' + }); + } + } }; - GridCell.displayName = 'GridCell'; - var DraggableDropdown = function DraggableDropdown(props) { - var options = props.options, - onChange = props.onChange; + var navigateOptions$2 = function navigateOptions(direction, focusedOption, setFocusedOption, listRef) { + var _a; - var _a = React__namespace.useState(false), - open = _a[0], - setOpen = _a[1]; + var listItems = listRef.current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var index = Array.from(listItems).findIndex(function (item) { + return item == focusedOption; + }); - var _b = React__namespace.useState(options), - tempOptions = _b[0], - setTempOptions = _b[1]; + if (index === -1) { + index = direction === 'up' ? listItems.length - 1 : 0; + } else { + index = direction === 'up' ? (index - 1 + listItems.length) % listItems.length : (index + 1) % listItems.length; + } - var _c = React__namespace.useState('var(--spacing-8)'), - triggerWidth = _c[0], - setTriggerWidth = _c[1]; + var targetOption = listItems[index]; + targetOption.focus(); + setFocusedOption && setFocusedOption(targetOption); + (_a = targetOption === null || targetOption === void 0 ? void 0 : targetOption.scrollIntoView) === null || _a === void 0 ? void 0 : _a.call(targetOption, { + block: 'center' + }); + }; - React__namespace.useEffect(function () { - setTempOptions(options); - }, [open]); + var ComboboxOption = function ComboboxOption(props) { + var children = props.children, + option = props.option, + onClick = props.onClick, + rest = __rest(props, ["children", "option", "onClick"]); + + var contextProp = React__namespace.useContext(ComboboxContext); + var onOptionClick = contextProp.onOptionClick, + inputValue = contextProp.inputValue, + focusedOption = contextProp.focusedOption, + setFocusedOption = contextProp.setFocusedOption, + setOpenPopover = contextProp.setOpenPopover, + inputTriggerRef = contextProp.inputTriggerRef, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + multiSelect = contextProp.multiSelect, + listRef = contextProp.listRef; - var handleParentChange = function handleParentChange(e) { - setTempOptions(tempOptions.map(function (option) { - return __assign(__assign({}, option), { - selected: e.target.checked - }); + var onClickHandler = function onClickHandler() { + if (onClick) { + return onClick(option); + } + + return onOptionClick && onOptionClick(__assign(__assign({}, option), { + isSelectedOption: true })); }; - var handleChildChange = function handleChildChange(e, index) { - var newOptions = __spreadArrays(tempOptions); + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$4(event, focusedOption, setFocusedOption, setOpenPopover, inputTriggerRef, setHighlightFirstItem, setHighlightLastItem, multiSelect, listRef); + }; - newOptions[index] = __assign(__assign({}, newOptions[index]), { - selected: e.target.checked + return /*#__PURE__*/React__namespace.createElement(Listbox.Item, __assign({ + onClick: onClickHandler, + selected: option.label === (inputValue === null || inputValue === void 0 ? void 0 : inputValue.label), + onKeyDown: onKeyDownHandler, + tabIndex: -1, + role: "option", + "data-test": "DesignSystem-Combobox-Option" + }, rest), children); + }; + ComboboxOption.defaultProps = { + tagName: 'li' + }; + + var handleKeyDown$3 = function handleKeyDown(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem) { + switch (event.key) { + case 'ArrowUp': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(true); + break; + + case 'ArrowDown': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; + + case 'Escape': + case 'Tab': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + break; + } + }; + var focusListItem$2 = function focusListItem(position, setFocusedOption, listRef) { + var _a, _b, _c; + + var listItems = (_a = listRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; + + if (position === 'down') { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[0]; + } else { + targetOption = listItems[listItems.length - 1]; + } + + (_b = targetOption) === null || _b === void 0 ? void 0 : _b.focus(); + + if (targetOption && typeof targetOption.scrollIntoView === 'function') { + (_c = targetOption) === null || _c === void 0 ? void 0 : _c.scrollIntoView({ + block: 'center', + behavior: 'smooth' }); - setTempOptions(newOptions); - }; + } - var onToggleHandler = function onToggleHandler(newOpen) { - setOpen(newOpen); + setFocusedOption && setFocusedOption(targetOption); + }; + + var InputBox = function InputBox(props) { + var contextProp = React__namespace.useContext(ComboboxContext); + var inputValue = contextProp.inputValue, + setInputValue = contextProp.setInputValue, + setFocusedOption = contextProp.setFocusedOption, + setOpenPopover = contextProp.setOpenPopover, + inputTriggerRef = contextProp.inputTriggerRef, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + openPopover = contextProp.openPopover, + popoverId = contextProp.popoverId; + + var onChangeHandler = function onChangeHandler(event) { + var value = event.target.value; + setFocusedOption && setFocusedOption(undefined); + var newValue = { + label: value, + value: value, + isSelectedOption: false + }; + setInputValue && setInputValue(newValue); + + if (value !== '') { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + } }; - var onCancelHandler = function onCancelHandler() { - setOpen(false); + var onClearHandler = function onClearHandler(event) { + var _a; + + event.stopPropagation(); + var newValue = { + label: '', + value: '', + isSelectedOption: false + }; + setInputValue && setInputValue(newValue); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + (_a = props.onClear) === null || _a === void 0 ? void 0 : _a.call(props, event); }; - var onApplyHandler = function onApplyHandler() { - setOpen(false); - if (onChange) onChange(tempOptions); + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$3(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem); + props.onKeyDown && props.onKeyDown(event); }; - return /*#__PURE__*/React__namespace.createElement("div", { - className: "Dropdown" - }, /*#__PURE__*/React__namespace.createElement(Popover, { - open: open, - onToggle: onToggleHandler, - trigger: /*#__PURE__*/React__namespace.createElement(Button, { - ref: function ref(el) { - setTriggerWidth((el === null || el === void 0 ? void 0 : el.clientWidth) + "px"); - }, - size: "tiny", - appearance: "transparent", - icon: "keyboard_arrow_down_filled", - iconAlign: "right" - }, "Showing " + options.filter(function (option) { - return option.selected; - }).length + " of " + options.length + " column" + getPluralSuffix(options.length)), - triggerClass: "w-100", - customStyle: { - width: triggerWidth - }, - className: "Header-draggableDropdown" - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "Dropdown-wrapper" - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "OptionWrapper" - }, /*#__PURE__*/React__namespace.createElement(Checkbox, { - className: "OptionCheckbox", - label: "Select All", - checked: tempOptions.every(function (option) { - return option.selected; - }), - indeterminate: tempOptions.some(function (option) { - return option.selected; - }) && tempOptions.some(function (option) { - return !option.selected; - }), - onChange: handleParentChange - })), tempOptions.map(function (option, index) { - return /*#__PURE__*/React__namespace.createElement("div", { - key: option.value, - className: "OptionWrapper d-flex flex-space-between align-items-center cursor-pointer", - draggable: true, - onDragStart: function onDragStart(e) { - e.dataTransfer.setData('index', "" + index); - }, - onDragOver: function onDragOver(e) { - return e.preventDefault(); - }, - onDrop: function onDrop(e) { - var from = +e.dataTransfer.getData('index'); - var to = index; - if (from !== to) setTempOptions(moveToIndex(tempOptions, from, to)); - } - }, /*#__PURE__*/React__namespace.createElement(Checkbox, { - className: "OptionCheckbox", - name: option.value, - label: option.label, - checked: tempOptions[index].selected, - onChange: function onChange(e) { - return handleChildChange(e, index); - } - }), /*#__PURE__*/React__namespace.createElement(Icon, { - name: "drag_handle", - className: "mr-4" - })); - })), /*#__PURE__*/React__namespace.createElement("div", { - className: "Dropdown-buttonWrapper" - }, /*#__PURE__*/React__namespace.createElement(Button, { - className: "mr-4", - size: "tiny", - onClick: onCancelHandler - }, "Cancel"), /*#__PURE__*/React__namespace.createElement(Button, { - appearance: "primary", - size: "tiny", - onClick: onApplyHandler - }, "Apply")))); + return /*#__PURE__*/React__namespace.createElement(Input, __assign({}, props, { + ref: inputTriggerRef, + value: inputValue === null || inputValue === void 0 ? void 0 : inputValue.label, + onChange: onChangeHandler, + onKeyDown: onKeyDownHandler, + onClear: onClearHandler, + role: "combobox", + "aria-haspopup": "listbox", + "aria-controls": popoverId, + "aria-label": props.placeholder || 'Combobox-Input-Trigger', + "aria-expanded": openPopover, + "data-test": "DesignSystem-Combobox-Input" + })); }; - var Header = function Header(props) { - var loading = props.loading, + var keyCodes = { + BACKSPACE: 'Backspace', + DELETE: 'Delete', + ENTER: 'Enter' + }; + var MultiSelectTrigger = function MultiSelectTrigger(props) { + var _a, _b; + + var chipOptions = props.chipOptions, + allowDuplicates = props.allowDuplicates, + disabled = props.disabled, error = props.error, - data = props.data, - schema = props.schema, - withSearch = props.withSearch, - showHead = props.showHead, - withPagination = props.withPagination, - page = props.page, - pageSize = props.pageSize, - withCheckbox = props.withCheckbox, - children = props.children, - updateSchema = props.updateSchema, - _a = props.filterList, - filterList = _a === void 0 ? {} : _a, - updateFilterList = props.updateFilterList, - _b = props.totalRecords, - totalRecords = _b === void 0 ? 0 : _b, - onSelectAll = props.onSelectAll, - searchPlaceholder = props.searchPlaceholder, - selectAll = props.selectAll, - searchTerm = props.searchTerm, - updateSearchTerm = props.updateSearchTerm, - dynamicColumn = props.dynamicColumn, - allowSelectAll = props.allowSelectAll, - showFilters = props.showFilters; + placeholder = props.placeholder, + defaultValue = props.defaultValue, + value = props.value, + className = props.className, + autoFocus = props.autoFocus, + onChange = props.onChange, + onBlur = props.onBlur, + onFocus = props.onFocus, + onKeyDown = props.onKeyDown, + onInputChange = props.onInputChange, + tabIndex = props.tabIndex, + role = props.role, + rest = __rest(props, ["chipOptions", "allowDuplicates", "disabled", "error", "placeholder", "defaultValue", "value", "className", "autoFocus", "onChange", "onBlur", "onFocus", "onKeyDown", "onInputChange", "tabIndex", "role"]); - var _c = React__namespace.useState(false), - selectAllRecords = _c[0], - setSelectAllRecords = _c[1]; + var inputRef = /*#__PURE__*/React__namespace.createRef(); - var _d = React__namespace.useState(true), - flag = _d[0], - setFlag = _d[1]; + var _c = React__namespace.useState(value || defaultValue), + chips = _c[0], + setChips = _c[1]; + var _d = React__namespace.useState(''), + inputValue = _d[0], + setInputValue = _d[1]; + + var baseProps = extractBaseProps(props); React__namespace.useEffect(function () { - setFlag(!flag); - }, [schema]); - React__namespace.useEffect(function () { - if (selectAll && selectAll.checked) { - if (onSelectAll) onSelectAll(true, selectAllRecords); + if (value !== undefined) { + setChips(value); + setInputValue(''); } - }, [selectAllRecords]); - React__namespace.useEffect(function () { - if (selectAll && !selectAll.checked) setSelectAllRecords(false); - }, [selectAll]); - var filterSchema = schema.filter(function (s) { - return s.filters; - }); + }, [value]); + var ChipInputBorderClass = classNames__default["default"]((_a = {}, _a['ChipInput-border'] = true, _a['ChipInput-border--error'] = error, _a)); + var ChipInputClass = classNames__default["default"]((_b = { + ChipInput: true + }, _b['ChipInput--disabled'] = disabled, _b['ChipInput--withChips'] = chips && chips.length > 0, _b['ChipInput--error'] = error, _b), className); + + var onUpdateChips = function onUpdateChips(updatedChips) { + if (onChange) onChange(updatedChips); + }; + + var onChipDeleteHandler = function onChipDeleteHandler(index) { + var updatedChips = __spreadArrays(chips); + + updatedChips.splice(index, 1); + + if (!value) { + setChips(updatedChips); + } + + onUpdateChips(updatedChips); + }; + + var onChipAddHandler = function onChipAddHandler() { + if (!inputValue) return; + var chip = inputValue.trim(); + var isChipExist = chips.filter(function (item) { + return item.label === chip; + }).length > 0; + + if ((allowDuplicates || !isChipExist) && chip) { + var updatedChips = __spreadArrays(chips, [{ + label: chip, + value: chip, + isSelectedOption: false + }]); + + if (!value) { + setChips(updatedChips); + } + + onUpdateChips(updatedChips); + setInputValue(''); + } + }; - var onSearchChange = function onSearchChange(e) { - var value = e.target.value; + var onDeleteAllHandler = function onDeleteAllHandler(e) { + e.stopPropagation(); + var updatedChips = []; - if (updateSearchTerm) { - updateSearchTerm(value); + if (!value) { + setChips(updatedChips); } + + onUpdateChips(updatedChips); + setInputValue(''); + onInputChange && onInputChange(); }; - var onFilterChange = function onFilterChange(name, filters) { - var _a; + var onKeyDownHandler = function onKeyDownHandler(event) { + var chipsLength = chips.length; - var newFilterList = __assign(__assign({}, filterList), (_a = {}, _a[name] = filters, _a)); + switch (event.key) { + case keyCodes.DELETE: + case keyCodes.BACKSPACE: + if (inputValue === '' && chipsLength > 0) { + onChipDeleteHandler(chipsLength - 1); + } - if (updateFilterList) { - updateFilterList(newFilterList); + break; + + case keyCodes.ENTER: + event.preventDefault(); + onChipAddHandler(); + break; } + + onKeyDown && onKeyDown(event); }; - var columnOptions = schema.map(function (s) { - return { - label: s.displayName, - value: s.name, - selected: !s.hidden - }; - }); + var onInputChangeHandler = function onInputChangeHandler(event) { + setInputValue(event.target.value); + onInputChange && onInputChange(event); + }; - var onDynamicColumnUpdate = function onDynamicColumnUpdate(options) { - var newSchema = options.map(function (option) { - return __assign(__assign({}, schema.find(function (colSchema) { - return colSchema.name === option.value; - })), { - hidden: !option.selected - }); - }); - if (updateSchema) updateSchema(newSchema); + var onClickHandler = function onClickHandler() { + var _a; + + (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus(); }; - var selectedCount = data.filter(function (d) { - return d._selected; - }).length; - var startIndex = (page - 1) * pageSize + 1; - var endIndex = Math.min(page * pageSize, totalRecords); - var label = error ? 'Showing 0 items' : withCheckbox && selectedCount ? selectAllRecords ? "Selected all " + totalRecords + " item" + getPluralSuffix(totalRecords) : "Selected " + selectedCount + " item" + getPluralSuffix(totalRecords) + " on this page" : withPagination ? "Showing " + startIndex + "-" + endIndex + " of " + totalRecords + " item" + getPluralSuffix(totalRecords) : "Showing " + totalRecords + " item" + getPluralSuffix(totalRecords); - return /*#__PURE__*/React__namespace.createElement("div", { - className: "Header" - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "Header-content Header-content--top" - }, withSearch && /*#__PURE__*/React__namespace.createElement("div", { - className: "Header-search" - }, /*#__PURE__*/React__namespace.createElement(Input, { - name: "GridHeader-search", - icon: "search", - placeholder: searchPlaceholder, - onChange: onSearchChange, - value: searchTerm, - onClear: function onClear() { - return updateSearchTerm && updateSearchTerm(''); - }, - disabled: loading && !hasSchema(schema) - })), showFilters && filterSchema.length > 0 && /*#__PURE__*/React__namespace.createElement("div", { - className: "Header-dropdown" - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "Header-filters" - }, filterSchema.map(function (s) { - var name = s.name, - displayName = s.displayName, - filters = s.filters; - var filterOptions = filters ? filters.map(function (f) { - return __assign(__assign({}, f), { - selected: filterList[name] && filterList[name].findIndex(function (fl) { - return fl === f.value; - }) !== -1 - }); - }) : []; - return /*#__PURE__*/React__namespace.createElement(Dropdown, { - key: name, - withCheckbox: true, - showApplyButton: true, - inlineLabel: displayName, - icon: 'filter_list', - options: filterOptions, - onChange: function onChange(selected) { - return onFilterChange(name, selected); + var chipComponents = chips.map(function (chip, index) { + var _a = chipOptions.type, + type = _a === void 0 ? 'input' : _a, + _onClick = chipOptions.onClick, + rest = __rest(chipOptions, ["type", "onClick"]); + + var chipLabel = typeof chip === 'string' ? chip : chip === null || chip === void 0 ? void 0 : chip.label; + return /*#__PURE__*/React__namespace.createElement(Chip, __assign({ + "data-test": "DesignSystem-MultiSelectTrigger--Chip", + label: chipLabel, + name: chip, + type: type, + disabled: disabled, + key: index, + className: "my-3 mx-2", + onClick: function onClick() { + return _onClick && _onClick(chip, index); + }, + onClose: function onClose() { + return onChipDeleteHandler(index); } - }); - }))), children && /*#__PURE__*/React__namespace.createElement("div", { - className: "Header-actions" - }, children)), /*#__PURE__*/React__namespace.createElement("div", { - className: "Header-content Header-content--bottom" - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "Header-label" - }, !showHead && withCheckbox && !loading && /*#__PURE__*/React__namespace.createElement(Checkbox, __assign({}, selectAll, { - onChange: function onChange(event) { - if (onSelectAll) onSelectAll(event.target.checked); - } - })), loading ? /*#__PURE__*/React__namespace.createElement(Placeholder, { - withImage: !showHead && withCheckbox - }, /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { - length: 'small', - size: 's' - })) : /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement(Label, null, label), withPagination && (selectAll === null || selectAll === void 0 ? void 0 : selectAll.checked) && allowSelectAll && /*#__PURE__*/React__namespace.createElement("div", { - className: "ml-4" - }, !selectAllRecords ? /*#__PURE__*/React__namespace.createElement(Button, { - size: "tiny", - onClick: function onClick() { - return setSelectAllRecords(true); - } - }, "Select all " + totalRecords + " items") : /*#__PURE__*/React__namespace.createElement(Button, { - size: "tiny", - onClick: function onClick() { - return setSelectAllRecords(false); - } - }, "Clear Selection")))), dynamicColumn && /*#__PURE__*/React__namespace.createElement("div", { - className: "Header-hideColumns" - }, /*#__PURE__*/React__namespace.createElement(DraggableDropdown, { - options: columnOptions, - onChange: onDynamicColumnUpdate - })))); + }, rest)); + }); + return /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-MultiSelectTrigger--Border", + className: ChipInputBorderClass + }, /*#__PURE__*/React__namespace.createElement("div", __assign({ + "data-test": "DesignSystem-MultiSelectTrigger" + }, baseProps, { + className: ChipInputClass, + onClick: onClickHandler, + tabIndex: disabled ? -1 : tabIndex || 0 + }), /*#__PURE__*/React__namespace.createElement("div", { + className: "ChipInput-wrapper" + }, chips && chips.length > 0 && chipComponents, /*#__PURE__*/React__namespace.createElement("input", __assign({}, rest, { + "data-test": "DesignSystem-MultiSelectTrigger--Input", + ref: props.forwardedRef || inputRef, + className: "ChipInput-input", + autoFocus: autoFocus, + placeholder: chips && chips.length > 0 ? '' : placeholder, + disabled: disabled, + value: inputValue, + onBlur: onBlur, + onFocus: onFocus, + onChange: onInputChangeHandler, + onKeyDown: onKeyDownHandler, + role: role + }))), (chips.length > 0 || inputValue.length > 0) && /*#__PURE__*/React__namespace.createElement(Icon, { + "data-test": "DesignSystem-MultiSelectTrigger--Icon", + name: "close", + appearance: disabled ? 'disabled' : 'subtle', + className: "ChipInput-icon", + onClick: onDeleteAllHandler, + tabIndex: disabled ? -1 : 0 + }))); }; - Header.defaultProps = { - schema: [], - data: [], - searchPlaceholder: 'Search', - dynamicColumn: true, - showFilters: true + MultiSelectTrigger.displayName = 'MultiSelectTrigger'; + MultiSelectTrigger.defaultProps = { + chipOptions: {}, + defaultValue: [], + allowDuplicates: false, + autoFocus: false }; - var defaultErrorTemplate = function defaultErrorTemplate(props) { - var _a = props.errorType, - errorType = _a === void 0 ? 'DEFAULT' : _a; - var errorMessages = { - FAILED_TO_FETCH: 'Failed to fetch data', - NO_RECORDS_FOUND: 'No results found', - DEFAULT: 'No results found' + var ChipInputBox = function ChipInputBox(props) { + var contextProp = React__default["default"].useContext(ComboboxContext); + var chipInputValue = contextProp.chipInputValue, + setChipInputValue = contextProp.setChipInputValue, + setOpenPopover = contextProp.setOpenPopover, + setFocusedOption = contextProp.setFocusedOption, + setChipInputText = contextProp.setChipInputText, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + inputTriggerRef = contextProp.inputTriggerRef, + openPopover = contextProp.openPopover, + popoverId = contextProp.popoverId; + + var onChangeHandler = function onChangeHandler(chips) { + setFocusedOption && setFocusedOption(undefined); + setChipInputValue && setChipInputValue(chips); + + if (chips.length === 0) { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + } }; - return /*#__PURE__*/React__namespace.createElement(Heading, null, errorMessages[errorType]); - }; - var defaultProps = { - type: 'data', - size: 'standard', - showHead: true, - showMenu: true, - multipleSorting: true, - headerOptions: {}, - withPagination: true, - paginationType: 'jump', - page: 1, - pageSize: 15, - draggable: true, - data: [], - schema: [], - loading: false, - error: false, - loaderSchema: [], - sortingList: [], - filterList: {}, - filterPosition: 'GRID', - searchDebounceDuration: 750, - errorTemplate: defaultErrorTemplate - }; + var onUpdateHandler = function onUpdateHandler(event) { + var _a; - var Table = function (_super) { - __extends(Table, _super); + var value = (_a = event === null || event === void 0 ? void 0 : event.target) === null || _a === void 0 ? void 0 : _a.value; - function Table(props) { - var _this = _super.call(this, props) || this; + if (!value) { + setChipInputText === null || setChipInputText === void 0 ? void 0 : setChipInputText(''); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + inputTriggerRef === null || inputTriggerRef === void 0 ? void 0 : inputTriggerRef.current.focus(); + return; + } - _this.updateData = function (searchUpdate) { - if (_this.state.async) { - _this.setState({ - loading: true - }); - } + setChipInputText && setChipInputText(value); - if (searchUpdate) { - _this.debounceUpdate(); - } else { - _this.updateDataFn(); - } + if (value !== '') { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + } + }; + + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$3(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem); + props.onKeyDown && props.onKeyDown(event); + }; + + return /*#__PURE__*/React__default["default"].createElement(MultiSelectTrigger, __assign({}, props, { + value: chipInputValue, + onChange: onChangeHandler, + onInputChange: onUpdateHandler, + onKeyDown: onKeyDownHandler, + tabIndex: -1, + forwardedRef: inputTriggerRef, + role: "combobox", + "aria-haspopup": "listbox", + "aria-controls": popoverId, + "aria-label": props.placeholder || 'Combobox-ChipInput-Trigger', + "aria-expanded": openPopover, + "data-test": "DesignSystem-Combobox-ChipInput" + })); + }; + + var ComboboxTrigger = function ComboboxTrigger(props) { + var multiSelect = props.multiSelect, + chipValue = props.chipValue, + value = props.value, + rest = __rest(props, ["multiSelect", "chipValue", "value"]); + + if (multiSelect) { + var icon = props.icon, + clearButton = props.clearButton, + iconType = props.iconType; + var chipInputOptions = { + icon: icon, + clearButton: clearButton, + iconType: iconType }; + return /*#__PURE__*/React__namespace.createElement(ChipInputBox, __assign({ + defaultValue: [], + chipOptions: __assign({}, chipInputOptions) + }, rest, { + value: chipValue + })); + } - _this.updateDataFn = function () { - var _a = _this.props, - fetchData = _a.fetchData, - pageSize = _a.pageSize, - withPagination = _a.withPagination, - dataProp = _a.data, - onSearch = _a.onSearch; - var _b = _this.state, - async = _b.async, - page = _b.page, - sortingList = _b.sortingList, - filterList = _b.filterList, - searchTerm = _b.searchTerm; + return /*#__PURE__*/React__namespace.createElement(InputBox, __assign({}, props, { + value: value === null || value === void 0 ? void 0 : value.label + })); + }; + + var Combobox = function Combobox(props) { + var children = props.children, + onChange = props.onChange, + multiSelect = props.multiSelect, + className = props.className, + maxHeight = props.maxHeight, + width = props.width, + value = props.value, + placeholder = props.placeholder, + disabled = props.disabled, + error = props.error, + onBlur = props.onBlur, + onFocus = props.onFocus, + onClear = props.onClear, + icon = props.icon, + iconType = props.iconType, + size = props.size, + chipValue = props.chipValue, + clearButton = props.clearButton, + onSearch = props.onSearch, + onKeyDown = props.onKeyDown, + onKeyUp = props.onKeyUp; - _this.onSelect(-1, false); + var _a = React__namespace.useState(), + popoverStyle = _a[0], + setPopoverStyle = _a[1]; - var opts = { - page: page, - pageSize: pageSize, - sortingList: sortingList, - filterList: filterList, - searchTerm: searchTerm - }; + var _b = React__namespace.useState({}), + wrapperStyle = _b[0], + setWrapperStyle = _b[1]; - if (!_this.props.withPagination) { - delete opts.page; - delete opts.pageSize; - } + var triggerRef = /*#__PURE__*/React__namespace.createRef(); + var listRef = /*#__PURE__*/React__namespace.createRef(); - if (async) { - if (fetchData) { - fetchData(opts).then(function (res) { - if (!res.searchTerm || res.searchTerm && res.searchTerm === _this.state.searchTerm) { - var data = res.data; - var schema = _this.state.schema.length ? _this.state.schema : res.schema; + var _c = React__namespace.useState(false), + openPopover = _c[0], + setOpenPopover = _c[1]; - _this.setState({ - data: data, - schema: schema, - selectAll: getSelectAll(data), - totalRecords: res.count, - loading: false, - error: !data.length, - errorType: 'NO_RECORDS_FOUND' - }); - } - })["catch"](function () { - _this.setState({ - loading: false, - error: true, - errorType: 'FAILED_TO_FETCH' - }); - }); - } - } else { - var schema = _this.state.schema; - var filteredData = filterData(schema, dataProp, filterList); - var searchedData = onSearch && opts.searchTerm !== undefined ? onSearch(filteredData, opts.searchTerm) : filteredData; - var sortedData = sortData(schema, searchedData, sortingList); - var renderedData = sortedData; - var totalRecords = sortedData.length; + var _d = React__namespace.useState(false), + isOptionSelected = _d[0], + setIsOptionSelected = _d[1]; - if (withPagination && page && pageSize) { - renderedData = paginateData(renderedData, page, pageSize); - } + var _e = React__namespace.useState(), + focusedOption = _e[0], + setFocusedOption = _e[1]; - var renderedSchema = _this.state.schema.length ? _this.state.schema : schema; + var _f = React__namespace.useState(value || { + label: '', + value: '' + }), + inputValue = _f[0], + setInputValue = _f[1]; - _this.setState({ - totalRecords: totalRecords, - error: !renderedData.length, - errorType: 'NO_RECORDS_FOUND', - selectAll: getSelectAll(renderedData), - schema: renderedSchema, - data: renderedData - }); - } - }; + var _g = React__namespace.useState(chipValue), + chipInputValue = _g[0], + setChipInputValue = _g[1]; - _this.onSelect = function (rowIndexes, selected) { - var data = _this.state.data; - var onSelect = _this.props.onSelect; - var indexes = [rowIndexes]; - var newData = data; + var _h = React__namespace.useState(''), + chipInputText = _h[0], + setChipInputText = _h[1]; - if (rowIndexes >= 0) { - newData = updateBatchData(data, indexes, { - _selected: selected - }); + var _j = React__namespace.useState(false), + highlightFirstItem = _j[0], + setHighlightFirstItem = _j[1]; - _this.setState({ - data: newData, - selectAll: getSelectAll(newData) - }); - } + var _k = React__namespace.useState(false), + highlightLastItem = _k[0], + setHighlightLastItem = _k[1]; - if (onSelect) { - onSelect(indexes, selected, rowIndexes === -1 ? [] : newData.filter(function (d) { - return d._selected; - })); - } + var inputTriggerRef = React__namespace.useRef(); + var popoverId = "DesignSystem-Combobox--Popover-" + uidGenerator(); + React__namespace.useEffect(function () { + var _a; + + var popperWidth = (_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.clientWidth; + var popperWrapperStyle = { + width: width || popperWidth + }; + var wrapperStyle = { + maxHeight: maxHeight || 'var(--spacing-9)', + overflowY: 'auto', + boxSizing: 'border-box' }; + setWrapperStyle(wrapperStyle); + setPopoverStyle(popperWrapperStyle); + }, []); + React__namespace.useEffect(function () { + if (isOptionSelected) { + multiSelect ? setOpenPopover(true) : setOpenPopover(false); + setIsOptionSelected(false); + } - _this.onSelectAll = function (selected, selectAll) { - var onSelect = _this.props.onSelect; - var data = _this.state.data; - var indexes = Array.from({ - length: data.length - }, function (_, i) { - return i; + var value = multiSelect ? chipInputValue : inputValue; + onChange && !isOptionSelected && onChange(value); + }, [inputValue, chipInputValue]); + React__namespace.useEffect(function () { + if (highlightFirstItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$2('down', setFocusedOption, listRef); }); - var newData = updateBatchData(data, indexes, { - _selected: selected + } + }, [highlightFirstItem]); + React__namespace.useEffect(function () { + if (highlightLastItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$2('up', setFocusedOption, listRef); }); + } + }, [highlightLastItem]); + React__namespace.useEffect(function () { + if (!openPopover) { + setHighlightFirstItem(false); + setHighlightLastItem(false); + } + }, [openPopover]); + React__namespace.useEffect(function () { + onSearch && onSearch(chipInputText); + }, [chipInputText]); - if (onSelect) { - onSelect(indexes, selected, newData.filter(function (d) { - return d._selected; - }), selectAll); - } - - _this.setState({ - data: newData, - selectAll: getSelectAll(newData) - }); - }; + var onOptionClick = function onOptionClick(option) { + setIsOptionSelected(true); - _this.onPageChange = function (newPage) { - _this.setState({ - page: newPage - }); - }; + if (!multiSelect) { + setInputValue(option); + onChange && onChange(option); + } else { + var chipList = chipInputValue ? __spreadArrays(chipInputValue, [option]) : [option]; + setChipInputValue(chipList); + onChange && onChange(chipList); + } + }; - _this.updateSchema = function (newSchema) { - _this.setState({ - schema: newSchema - }); - }; + var outsideClickHandler = function outsideClickHandler() { + !multiSelect && setOpenPopover(false); + }; - _this.updateSortingList = function (newSortingList) { - var multipleSorting = _this.props.multipleSorting; + var onToggleHandler = function onToggleHandler(open) { + open ? setOpenPopover(true) : setOpenPopover(false); + }; - _this.setState({ - sortingList: multipleSorting ? __spreadArrays(newSortingList) : newSortingList.slice(-1), - page: 1 - }); - }; + var triggerProps = { + value: value, + placeholder: placeholder, + disabled: disabled, + error: error, + onBlur: onBlur, + onFocus: onFocus, + onClear: onClear, + icon: icon, + iconType: iconType, + size: size, + multiSelect: multiSelect, + chipValue: chipValue, + clearButton: clearButton, + onKeyDown: onKeyDown, + onKeyUp: onKeyUp + }; + var contextProp = { + inputValue: inputValue, + setInputValue: setInputValue, + onOptionClick: onOptionClick, + openPopover: openPopover, + setOpenPopover: setOpenPopover, + isOptionSelected: isOptionSelected, + setIsOptionSelected: setIsOptionSelected, + chipInputValue: chipInputValue, + setChipInputValue: setChipInputValue, + focusedOption: focusedOption, + setFocusedOption: setFocusedOption, + chipInputText: chipInputText, + setChipInputText: setChipInputText, + inputTriggerRef: inputTriggerRef, + setHighlightFirstItem: setHighlightFirstItem, + setHighlightLastItem: setHighlightLastItem, + multiSelect: multiSelect, + listRef: listRef, + onSearch: onSearch, + popoverId: popoverId + }; + return /*#__PURE__*/React__namespace.createElement(ComboboxContext.Provider, { + value: contextProp + }, /*#__PURE__*/React__namespace.createElement("div", { + ref: triggerRef, + className: className + }, /*#__PURE__*/React__namespace.createElement(OutsideClick, { + onOutsideClick: outsideClickHandler + }, /*#__PURE__*/React__namespace.createElement(Popover, { + open: openPopover && !disabled, + triggerClass: "d-block", + customStyle: popoverStyle, + onToggle: onToggleHandler, + trigger: /*#__PURE__*/React__namespace.createElement(ComboboxTrigger, __assign({}, triggerProps)) + }, /*#__PURE__*/React__namespace.createElement("div", { + style: wrapperStyle, + ref: listRef, + id: popoverId + }, children && typeof children === 'function' ? children(contextProp) : children))))); + }; + Combobox.List = ComboboxList; + Combobox.Option = ComboboxOption; - _this.updateFilterList = function (newFilterList) { - _this.setState({ - filterList: newFilterList, - page: 1 - }); - }; + var SelectContext = /*#__PURE__*/React__namespace.createContext({}); - _this.updateSearchTerm = function (newSearchTerm) { - _this.setState({ - searchTerm: newSearchTerm, - page: 1 - }); - }; + var SelectList = function SelectList(props) { + var contextProp = React__namespace.useContext(SelectContext); + var withSearch = contextProp.withSearch, + minHeight = contextProp.minHeight, + maxHeight = contextProp.maxHeight, + multiSelect = contextProp.multiSelect; - var async = ('fetchData' in _this.props); - var data = props.data || []; - var schema = props.schema || []; - _this.state = { - async: async, - data: !async ? data : [], - schema: !async ? schema : [], - page: props.page, - sortingList: props.sortingList, - filterList: props.filterList, - totalRecords: !async ? data.length : 0, - loading: !async ? props.loading : true, - error: !async ? props.error : false, - errorType: props.errorType, - selectAll: getSelectAll([]), - searchTerm: undefined - }; - _this.debounceUpdate = debounce(props.searchDebounceDuration, _this.updateDataFn); - return _this; - } + var children = props.children, + rest = __rest(props, ["children"]); - Table.prototype.componentDidMount = function () { - this.updateData(); + var searchInputHeight = 33; + var wrapperStyle = { + maxHeight: withSearch ? maxHeight - searchInputHeight : maxHeight, + overflowY: 'auto', + minHeight: minHeight }; + return /*#__PURE__*/React__namespace.createElement(Listbox, __assign({ + "aria-label": "Options item list", + "aria-multiselectable": multiSelect, + className: "my-3" + }, rest), /*#__PURE__*/React__namespace.createElement("div", { + style: wrapperStyle + }, children)); + }; + SelectList.defaultProps = { + type: 'option', + showDivider: false, + size: 'compressed', + tagName: 'ul' + }; - Table.prototype.componentDidUpdate = function (prevProps, prevState) { - var _this = this; - - if (!this.state.async) { - if (prevProps.loading !== this.props.loading || prevProps.error !== this.props.error) { - var _a = this.props, - _b = _a.data, - data = _b === void 0 ? [] : _b, - _c = _a.schema, - schema = _c === void 0 ? [] : _c; - this.setState({ - data: data, - schema: schema, - loading: this.props.loading || false, - error: this.props.error || false, - errorType: this.props.errorType, - page: 1, - totalRecords: data.length || 0, - selectAll: getSelectAll([]) - }, function () { - _this.updateData(); - }); - } - } + var mapInitialValue = function mapInitialValue(multiSelect, selectedValue) { + if (multiSelect) { + return selectedValue && !Array.isArray(selectedValue) ? [selectedValue] : selectedValue || []; + } else { + return selectedValue || { + label: '', + value: '' + }; + } + }; + var elementExist = function elementExist(targetObject, mainList) { + if (!Array.isArray(mainList)) { + return targetObject.value === (mainList === null || mainList === void 0 ? void 0 : mainList.value) ? 0 : -1; + } - if (prevState.page !== this.state.page) { - var onPageChange = this.props.onPageChange; - if (onPageChange) onPageChange(this.state.page); - } + return mainList.findIndex(function (item) { + return item.value === targetObject.value; + }); + }; + var removeOrAddToList = function removeOrAddToList(targetObject, prevList) { + var newList = __spreadArrays(prevList); - if (prevState.page !== this.state.page || prevState.filterList !== this.state.filterList || prevState.sortingList !== this.state.sortingList || prevState.searchTerm !== this.state.searchTerm) { - if (!this.props.loading) { - var searchUpdate = prevState.searchTerm !== this.state.searchTerm; - this.updateData(searchUpdate); - } - } - }; + var existingIndex = elementExist(targetObject, newList); - Table.prototype.render = function () { - var _a = this.props, - showHead = _a.showHead, - type = _a.type, - size = _a.size, - headCellTooltip = _a.headCellTooltip, - separator = _a.separator, - draggable = _a.draggable, - nestedRows = _a.nestedRows, - nestedRowRenderer = _a.nestedRowRenderer, - withHeader = _a.withHeader, - headerOptions = _a.headerOptions, - withCheckbox = _a.withCheckbox, - showMenu = _a.showMenu, - withPagination = _a.withPagination, - paginationType = _a.paginationType, - pageSize = _a.pageSize, - onRowClick = _a.onRowClick, - loaderSchema = _a.loaderSchema, - errorTemplate = _a.errorTemplate, - className = _a.className, - filterPosition = _a.filterPosition; - var baseProps = extractBaseProps(this.props); + if (existingIndex !== -1) { + newList.splice(existingIndex, 1); + } else { + newList.push(targetObject); + } - var _b = headerOptions, - headerChildren = _b.children, - headerAttr = __rest(_b, ["children"]); + return newList; + }; + var computeValue = function computeValue(multiSelect, selectValue, setLabel) { + if (!multiSelect) { + return (selectValue === null || selectValue === void 0 ? void 0 : selectValue.label.trim()) || ''; + } - var classes = className ? " " + className : ''; - var totalRecords = this.state.totalRecords; - var totalPages = getTotalPages(totalRecords, pageSize); - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: "Table" + classes - }), withHeader && /*#__PURE__*/React__namespace.createElement("div", { - className: "Table-header" - }, /*#__PURE__*/React__namespace.createElement(Header, __assign({}, this.state, { - updateSchema: this.updateSchema, - updateFilterList: this.updateFilterList, - updateSearchTerm: this.updateSearchTerm, - showHead: showHead, - onSelectAll: this.onSelectAll, - withCheckbox: withCheckbox, - withPagination: withPagination, - pageSize: pageSize, - showFilters: filterPosition === 'HEADER' - }, headerAttr), headerChildren)), /*#__PURE__*/React__namespace.createElement("div", { - className: "Table-grid" - }, /*#__PURE__*/React__namespace.createElement(Grid, __assign({}, this.state, { - updateData: this.updateData, - updateSchema: this.updateSchema, - updateSortingList: this.updateSortingList, - updateFilterList: this.updateFilterList, - withCheckbox: withCheckbox, - onSelect: this.onSelect, - onSelectAll: this.onSelectAll, - showMenu: showMenu, - showHead: showHead, - type: type, - size: size, - headCellTooltip: headCellTooltip, - separator: separator, - draggable: draggable, - nestedRows: nestedRows, - nestedRowRenderer: nestedRowRenderer, - withPagination: withPagination && totalPages > 1, - pageSize: pageSize, - loaderSchema: loaderSchema, - errorTemplate: errorTemplate && errorTemplate({ - errorType: this.state.errorType - }), - onRowClick: onRowClick, - showFilters: filterPosition === 'GRID' - }))), withPagination && !this.state.loading && !this.state.error && totalPages > 1 && /*#__PURE__*/React__namespace.createElement("div", { - className: "Table-pagination" - }, /*#__PURE__*/React__namespace.createElement(Pagination, { - page: this.state.page, - totalPages: getTotalPages(totalRecords, pageSize), - type: paginationType, - onPageChange: this.onPageChange - }))); - }; + var label = setLabel === null || setLabel === void 0 ? void 0 : setLabel(selectValue.length); - Table.defaultProps = defaultProps; - return Table; - }(React__namespace.Component); + if (label) { + return label; + } - var List = function List(props) { - return /*#__PURE__*/React__namespace.createElement(Table, __assign({}, props, { - showHead: false, - filterPosition: 'HEADER' - })); + if (selectValue.length <= 2) { + return selectValue.map(function (pair) { + return "" + pair.label; + }).join(', '); + } else { + return selectValue.length + " Selected"; + } }; - List.defaultProps = defaultProps; + var handleKeyDownTrigger = function handleKeyDownTrigger(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem) { + switch (event.key) { + case 'Enter': + event.preventDefault(); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; + + case 'ArrowDown': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; + + case 'ArrowUp': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(true); + break; + } + }; + var focusListItem$1 = function focusListItem(position, setFocusedOption, listRef) { + var _a, _b, _c; - var useState$1 = React__namespace.useState; - var VerticalNavigation = function VerticalNavigation(props) { + var searchInput = (_a = listRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('[data-test="DesignSystem-Select--Input"]'); + var listItems = (_b = listRef.current) === null || _b === void 0 ? void 0 : _b.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; + + if (position === 'down') { + targetOption = (searchInput === null || searchInput === void 0 ? void 0 : searchInput[0]) || (listItems === null || listItems === void 0 ? void 0 : listItems[0]); + } else { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[listItems.length - 1]; + } + + (_c = targetOption) === null || _c === void 0 ? void 0 : _c.focus(); + targetOption === null || targetOption === void 0 ? void 0 : targetOption.scrollIntoView({ + block: 'center' + }); + setFocusedOption && setFocusedOption(targetOption); + }; + var handleKeyDown$2 = function handleKeyDown(event, focusedOption, setFocusedOption, setHighlightFirstItem, setHighlightLastItem, listRef, withSearch, setOpenPopover, triggerRef) { + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + navigateOptions$1('up', focusedOption, setFocusedOption, listRef, withSearch); + break; + + case 'ArrowDown': + event.preventDefault(); + navigateOptions$1('down', focusedOption, setFocusedOption, listRef, withSearch); + break; + + case 'Enter': + handleEnterKey(focusedOption); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(false); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(false); + break; + + case 'Tab': + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(false); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(false); + break; + + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + triggerRef.current.focus(); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; + } + }; + var handleEnterKey = function handleEnterKey(focusedOption) { var _a; - var menus = props.menus, - active = props.active, - onClick = props.onClick, - expanded = props.expanded, - rounded = props.rounded, - onToggle = props.onToggle, - footer = props.footer, - autoCollapse = props.autoCollapse; + (_a = focusedOption) === null || _a === void 0 ? void 0 : _a.click(); + }; + var navigateOptions$1 = function navigateOptions(direction, focusedOption, setFocusedOption, listRef, withSearch) { + var listItems = listRef.current.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var index = Array.from(listItems).findIndex(function (item) { + return item == focusedOption; + }); - var _b = useState$1({}), - menuState = _b[0], - setMenuState = _b[1]; + if (index === -1) { + index = direction === 'up' ? listItems.length - 1 : 0; + } else if (withSearch && index === 0 && direction === 'up' || withSearch && index === listItems.length - 1 && direction === 'down') { + var searchInput = listRef.current.querySelector('[data-test="DesignSystem-Select--Input"]'); + searchInput.focus(); + setFocusedOption && setFocusedOption(searchInput); + } else { + index = direction === 'up' ? (index - 1 + listItems.length) % listItems.length : (index + 1) % listItems.length; + var targetOption = listItems[index]; + targetOption.focus(); + setFocusedOption && setFocusedOption(targetOption); + targetOption.scrollIntoView({ + block: 'center' + }); + } + }; + var handleInputKeyDown = function handleInputKeyDown(event, listRef, setFocusedOption, setOpenPopover, triggerRef) { + var _a, _b; - React__namespace.useEffect(function () { - if (props.active) { - var currMenu = getMenu(menus, props.active); - if (currMenu) updateMenuState(currMenu, true); - } - }, [props.active]); + var listItems = (_a = listRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; - var updateMenuState = function updateMenuState(menu, val) { - var _a; + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + targetOption = listItems[listItems.length - 1]; + break; - var currMenu = getMenu(menus, menu); + case 'ArrowDown': + event.preventDefault(); + targetOption = listItems[0]; + break; + + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + triggerRef.current.focus(); + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; + } - if (currMenu) { - var nameSplit = currMenu.name.split('.'); + (_b = targetOption) === null || _b === void 0 ? void 0 : _b.focus(); + targetOption === null || targetOption === void 0 ? void 0 : targetOption.scrollIntoView({ + block: 'center' + }); + setFocusedOption && setFocusedOption(targetOption); + }; - if (nameSplit.length > 1 || currMenu.subMenu) { - var name_1 = nameSplit[0]; + var SelectOption = function SelectOption(props) { + var children = props.children, + option = props.option, + checkedState = props.checkedState, + onClick = props.onClick, + _a = props.withCheckbox, + withCheckbox = _a === void 0 ? true : _a, + disabled = props.disabled, + rest = __rest(props, ["children", "option", "checkedState", "onClick", "withCheckbox", "disabled"]); + + var contextProp = React__namespace.useContext(SelectContext); + var onOptionClick = contextProp.onOptionClick, + selectValue = contextProp.selectValue, + setSelectValue = contextProp.setSelectValue, + multiSelect = contextProp.multiSelect, + setIsOptionSelected = contextProp.setIsOptionSelected, + focusedOption = contextProp.focusedOption, + setFocusedOption = contextProp.setFocusedOption, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + listRef = contextProp.listRef, + withSearch = contextProp.withSearch, + setOpenPopover = contextProp.setOpenPopover, + triggerRef = contextProp.triggerRef; - if (autoCollapse) { - setMenuState((_a = {}, _a[name_1] = val || !menuState[name_1], _a)); - } else { - var menuData = __assign({}, menuState); + var onClickHandler = function onClickHandler() { + if (disabled) return; - menuData[name_1] = val !== undefined ? val : !menuData[name_1]; - setMenuState(menuData); - } - } else { - if (autoCollapse) { - if (!expanded) setMenuState({}); - } - } + if (onClick) { + onClick(option); + return; } + + var newList = multiSelect && Array.isArray(selectValue) ? removeOrAddToList(option, selectValue) : option; + setIsOptionSelected === null || setIsOptionSelected === void 0 ? void 0 : setIsOptionSelected(Array.isArray(newList) ? newList.length !== 0 : true); + setSelectValue === null || setSelectValue === void 0 ? void 0 : setSelectValue(newList); + onOptionClick === null || onOptionClick === void 0 ? void 0 : onOptionClick(newList); }; - var onClickHandler = function onClickHandler(menu) { - if (!menu.disabled) { - if (menu.subMenu) { - if (!expanded) { - if (onClick) onClick(menu.subMenu[0]); - } else { - updateMenuState(menu); - } - } else { - if (onClick) onClick(menu); - } - } + var checked = checkedState === 'checked' || elementExist(option, selectValue) !== -1; + var indeterminate = checkedState === 'indeterminate'; + + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$2(event, focusedOption, setFocusedOption, setHighlightFirstItem, setHighlightLastItem, listRef, withSearch, setOpenPopover, triggerRef); }; - var list = menus.map(function (menu, index) { - var _a; + return /*#__PURE__*/React__namespace.createElement(Listbox.Item, __assign({ + role: "option", + onClick: onClickHandler, + "aria-selected": checked, + "aria-label": "option item", + onKeyDown: function onKeyDown(event) { + return onKeyDownHandler(event); + }, + selected: checked, + tabIndex: -1, + disabled: disabled, + "data-test": "DesignSystem-Select-Option" + }, rest), /*#__PURE__*/React__namespace.createElement("div", { + className: "d-flex align-items-center" + }, multiSelect && withCheckbox && /*#__PURE__*/React__namespace.createElement(Checkbox, { + tabIndex: -1, + "aria-checked": indeterminate ? 'mixed' : checked, + checked: checked, + indeterminate: indeterminate + }), /*#__PURE__*/React__namespace.createElement("div", { + className: multiSelect ? 'Select-trigger-text pt-2' : 'Select-trigger-text' + }, children))); + }; + SelectOption.defaultProps = { + withCheckbox: true + }; - var activeMenu = expanded && !menuState[menu.name] && isMenuActive(menus, menu, active); - var activeMenuIcon = !expanded && isMenuActive(menus, menu, active) || activeMenu; - var menuClasses = classNames__default['default']((_a = { - 'Navigation-menu': true - }, _a['Navigation-menu--vertical'] = true, _a['Navigation-menu--active'] = activeMenu, _a['Navigation-menu--rounded'] = expanded && rounded, _a)); - var menuIconClasses = classNames__default['default']({ - 'Navigation-menuIcon': true, - 'Navigation-menuIcon--active': activeMenuIcon - }); - return /*#__PURE__*/React__namespace.createElement("div", { - key: index - }, /*#__PURE__*/React__namespace.createElement("div", { - className: menuClasses, - onClick: function onClick() { - return onClickHandler(menu); - } - }, menu.icon && /*#__PURE__*/React__namespace.createElement(Icon, { - className: menuIconClasses, - name: menu.icon, - appearance: getIconAppearance(activeMenuIcon, menu.disabled) - }), expanded && /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("span", { - className: "Navigation-menuLabel" - }, /*#__PURE__*/React__namespace.createElement(Text, { - appearance: getTextAppearance(activeMenu, menu.disabled) - }, menu.label)), menu.subMenu && menu.subMenu.length > 0 && /*#__PURE__*/React__namespace.createElement(Icon, { - className: "mx-4", - name: menuState[menu.name] ? 'keyboard_arrow_up' : 'keyboard_arrow_down', - appearance: "subtle" - }))), /*#__PURE__*/React__namespace.createElement("div", { - className: "Navigation-subMenu" - }, menuState[menu.name] && menu.subMenu && expanded && menu.subMenu.map(function (subMenu, ind) { - var _a; + var SelectTrigger = function SelectTrigger(props) { + var _a, _b; - var isActive = isMenuActive(menus, subMenu, active); - var subMenuClasses = classNames__default['default'](menuClasses, (_a = {}, _a['Navigation-menu--subMenu'] = true, _a['Navigation-menu--active'] = isActive, _a)); - return /*#__PURE__*/React__namespace.createElement("div", { - key: ind, - className: subMenuClasses, - onClick: function onClick() { - return onClickHandler(subMenu); - } - }, /*#__PURE__*/React__namespace.createElement(Text, { - appearance: getTextAppearance(isActive, subMenu.disabled) - }, subMenu.label)); - }))); - }); - var footerClasses = classNames__default['default']((_a = { - 'Navigation-footer': true - }, _a['Navigation-footer--border'] = true, _a)); - return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null, /*#__PURE__*/React__namespace.createElement("div", { - className: "Navigation-body" - }, list), footer && /*#__PURE__*/React__namespace.createElement("div", { - className: footerClasses - }, /*#__PURE__*/React__namespace.createElement(Icon, { - className: "Navigation-menuIcon Navigation-menuIcon--footer", - name: "menu_open", - size: 16, - onClick: function onClick() { - return onToggle && onToggle(!expanded); + var triggerSize = props.triggerSize, + placeholder = props.placeholder, + withClearButton = props.withClearButton, + icon = props.icon, + disabled = props.disabled, + inlineLabel = props.inlineLabel, + iconType = props.iconType, + onClear = props.onClear, + setLabel = props.setLabel, + rest = __rest(props, ["triggerSize", "placeholder", "withClearButton", "icon", "disabled", "inlineLabel", "iconType", "onClear", "setLabel"]); + + var contextProp = React__namespace.useContext(SelectContext); + var elementRef = React__namespace.useRef(null); + var openPopover = contextProp.openPopover, + selectValue = contextProp.selectValue, + setSelectValue = contextProp.setSelectValue, + isOptionSelected = contextProp.isOptionSelected, + setIsOptionSelected = contextProp.setIsOptionSelected, + multiSelect = contextProp.multiSelect, + setOpenPopover = contextProp.setOpenPopover, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + triggerRef = contextProp.triggerRef; + var buttonDisabled = disabled ? 'disabled' : 'default'; + var trimmedPlaceholder = placeholder === null || placeholder === void 0 ? void 0 : placeholder.trim(); + var displayValue = computeValue(multiSelect, selectValue, setLabel); + var value = isOptionSelected && displayValue.length > 0 ? displayValue : trimmedPlaceholder; + var iconName = openPopover ? 'keyboard_arrow_up' : 'keyboard_arrow_down'; + + var onClearHandler = function onClearHandler(event) { + event.stopPropagation(); + var emptyValue = multiSelect ? [] : { + label: '', + value: '' + }; + setSelectValue === null || setSelectValue === void 0 ? void 0 : setSelectValue(emptyValue); + setIsOptionSelected === null || setIsOptionSelected === void 0 ? void 0 : setIsOptionSelected(false); + + if (onClear) { + onClear(event); } + }; + + var buttonClass = classNames__default["default"]((_a = {}, _a['Button'] = true, _a['Select-trigger'] = true, _a["Select-trigger--" + triggerSize] = triggerSize, _a['Select-trigger--placeholder'] = !isOptionSelected, _a['Select-trigger--icon'] = icon, _a['Select-trigger--open'] = openPopover, _a)); + var textClass = classNames__default["default"]((_b = {}, _b['Select-trigger-text'] = true, _b)); + return /*#__PURE__*/React__namespace.createElement(Tooltip, { + showOnTruncation: true, + showTooltip: !openPopover, + tooltip: value, + elementRef: elementRef, + className: "w-100", + triggerClass: "w-100" + }, /*#__PURE__*/React__namespace.createElement("button", __assign({ + ref: triggerRef, + onKeyDown: function onKeyDown(event) { + return handleKeyDownTrigger(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem); + }, + type: "button", + className: buttonClass, + disabled: disabled, + tabIndex: 0, + "aria-haspopup": "listbox", + "aria-expanded": openPopover, + "aria-label": "trigger", + "data-test": "DesignSystem-Select-trigger" + }, rest), /*#__PURE__*/React__namespace.createElement("div", { + className: "Select-trigger-wrapper ellipsis--noWrap" + }, inlineLabel && /*#__PURE__*/React__namespace.createElement(Text, { + appearance: "subtle", + className: "mr-4 white-space-nowrap" + }, "" + inlineLabel.trim().charAt(0).toUpperCase() + inlineLabel.trim().slice(1)), icon && !inlineLabel && /*#__PURE__*/React__namespace.createElement(Icon, { + appearance: buttonDisabled, + className: "d-flex align-items-center mr-4", + name: icon, + type: iconType + }), value && /*#__PURE__*/React__namespace.createElement(Text, { + ref: elementRef, + className: textClass + }, value)), isOptionSelected && withClearButton && /*#__PURE__*/React__namespace.createElement(Icon, { + appearance: buttonDisabled, + onClick: onClearHandler, + className: "align-items-center mr-2 ml-3 Select-crossButton", + size: 12, + name: "close", + "aria-label": "clear selected", + type: iconType, + "data-test": "DesignSystem-Select--closeIcon" + }), /*#__PURE__*/React__namespace.createElement(Icon, { + appearance: buttonDisabled, + name: iconName, + type: iconType }))); }; - VerticalNavigation.defaultProps = { - expanded: true, - autoCollapse: true, - rounded: false - }; - var Navigation = function Navigation(props) { - var _a; + SelectTrigger.defaultProps = { + triggerSize: 'regular', + placeholder: 'Select', + withClearButton: true + }; - var type = props.type, - align = props.align, - menus = props.menus, - active = props.active, - onClick = props.onClick, - expanded = props.expanded, - rounded = props.rounded, - onToggle = props.onToggle, - footer = props.footer, - autoCollapse = props.autoCollapse, - className = props.className; - var baseProps = extractBaseProps(props); - var classes = classNames__default['default']((_a = {}, _a['Navigation'] = true, _a["Navigation--" + type] = type, _a['justify-content-center'] = type === 'horizontal' && align === 'center', _a['justify-content-start'] = type === 'horizontal' && align === 'left', _a['Navigation--collapsed'] = !expanded, _a), className); + var SearchInput = function SearchInput(props) { + var contextProp = React__namespace.useContext(SelectContext); + var setWithSearch = contextProp.setWithSearch, + maxHeight = contextProp.maxHeight, + listRef = contextProp.listRef, + setFocusedOption = contextProp.setFocusedOption, + setOpenPopover = contextProp.setOpenPopover, + triggerRef = contextProp.triggerRef; - var renderNavigation = function renderNavigation() { - return type === 'horizontal' ? /*#__PURE__*/React__namespace.createElement(HorizontalNav, { - menus: menus, - active: active, - onClick: onClick - }) : /*#__PURE__*/React__namespace.createElement(VerticalNavigation, { - menus: menus, - active: active, - autoCollapse: autoCollapse, - expanded: expanded, - rounded: rounded, - footer: footer, - onToggle: onToggle, - onClick: onClick - }); + var onChange = props.onChange, + onClear = props.onClear, + rest = __rest(props, ["onChange", "onClear"]); + + React__namespace.useEffect(function () { + setWithSearch === null || setWithSearch === void 0 ? void 0 : setWithSearch(true); + }, [maxHeight]); + + var searchHandler = function searchHandler(event) { + if (onChange) onChange(event.target.value); }; - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: classes - }), renderNavigation()); - }; - Navigation.defaultProps = { - type: 'horizontal', - align: 'center', - expanded: true, - autoCollapse: true, - rounded: false + var searchClearHandler = function searchClearHandler(event) { + if (onClear) onClear(event); + }; + + return /*#__PURE__*/React__namespace.createElement("div", { + className: "Select-inputWrapper" + }, /*#__PURE__*/React__namespace.createElement(Input, __assign({}, rest, { + icon: 'search', + onKeyDown: function onKeyDown(event) { + return handleInputKeyDown(event, listRef, setFocusedOption, setOpenPopover, triggerRef); + }, + autoFocus: true, + onChange: searchHandler, + onClear: searchClearHandler, + autoComplete: 'off', + "aria-label": "Search", + "aria-haspopup": "listbox", + className: "Select-input", + "data-test": "DesignSystem-Select--Input" + }))); }; - var PageHeader = function PageHeader(props) { - var _a; + var SelectEmptyTemplate = function SelectEmptyTemplate(props) { + var contextProp = React__namespace.useContext(SelectContext); + var maxHeight = contextProp.maxHeight, + withSearch = contextProp.withSearch; var title = props.title, - navigation = props.navigation, - stepper = props.stepper, - actions = props.actions, - tabs = props.tabs, - breadcrumbs = props.breadcrumbs, - badge = props.badge, - separator = props.separator, - status = props.status, - meta = props.meta, - navigationPosition = props.navigationPosition, - className = props.className; - var baseProps = extractBaseProps(props); - var wrapperClasses = classNames__default['default']((_a = { - 'PageHeader-wrapper': true - }, _a['PageHeader-wrapper--separator'] = separator, _a['PageHeader-wrapper--withTabs'] = tabs, _a), className); - var classes = classNames__default['default']({ - PageHeader: true - }); - - var renderCenter = function renderCenter() { - if (!navigation && !stepper) { - return null; - } + description = props.description, + children = props.children, + rest = __rest(props, ["title", "description", "children"]); - return /*#__PURE__*/React__namespace.createElement("div", { - className: "PageHeader-navigationWrapper" - }, navigation || stepper); + var searchInputHeight = 33; + var wrapperStyle = { + minHeight: withSearch ? maxHeight - searchInputHeight : maxHeight }; - - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: wrapperClasses - }), breadcrumbs, /*#__PURE__*/React__namespace.createElement("div", { - className: classes - }, /*#__PURE__*/React__namespace.createElement(Row, null, /*#__PURE__*/React__namespace.createElement(Column, { - size: "4", - sizeXL: "4", - sizeM: "4" - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "PageHeader-titleWrapper" - }, /*#__PURE__*/React__namespace.createElement(Heading, { - className: "PageHeader-title" - }, title), badge)), /*#__PURE__*/React__namespace.createElement(Column, { - size: "4", - sizeXL: "4", - sizeM: "4" - }, (!breadcrumbs || navigationPosition === 'center') && renderCenter()), /*#__PURE__*/React__namespace.createElement(Column, { - size: "4", - sizeXL: "4", - sizeM: "4" - }, actions))), (status || meta) && /*#__PURE__*/React__namespace.createElement("div", { - className: "PageHeader-statusWrapper" - }, status, meta), breadcrumbs && navigationPosition === 'bottom' && renderCenter(), tabs && /*#__PURE__*/React__namespace.createElement("div", null, tabs)); - }; - PageHeader.defaultProps = { - navigationPosition: 'center', - separator: true + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + className: "px-7 d-flex justify-content-center align-items-center", + style: wrapperStyle, + "data-test": "DesignSystem-Select-EmptyState--wrapper", + "aria-live": "polite", + role: "alert" + }, rest), /*#__PURE__*/React__namespace.createElement("div", { + "aria-labelledby": title, + "aria-describedby": description, + className: "d-flex flex-column justify-content-center align-items-center" + }, title && /*#__PURE__*/React__namespace.createElement(Text, { + id: title, + role: "heading", + className: "text-align-center mb-3", + weight: "strong" + }, title), description && /*#__PURE__*/React__namespace.createElement(Text, { + id: description, + className: "text-align-center mb-6", + weight: "medium", + size: "small", + appearance: "subtle" + }, description), children && children)); }; - var useEffect = React__namespace.useEffect, - useState = React__namespace.useState; - var IconMapping = { - audio: 'audiotrack', - image: 'image', - video: 'movie', - application: 'insert_drive_file', - others: 'text_snippet' + var SelectFooter = function SelectFooter(props) { + var children = props.children, + rest = __rest(props, ["children"]); + + return /*#__PURE__*/React__namespace.createElement("div", __assign({ + className: "Select-buttonWrapper" + }, rest), children); }; - var FileIcon = function FileIcon(props) { - var _a, _b; - var progress = props.progress, - status = props.status, - file = props.file; + var Select = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var children = props.children, + onSelect = props.onSelect, + width = props.width, + maxHeight = props.maxHeight, + minHeight = props.minHeight, + value = props.value, + boundaryElement = props.boundaryElement, + appendToBody = props.appendToBody, + _a = props.multiSelect, + multiSelect = _a === void 0 ? false : _a, + onOutsideClick = props.onOutsideClick, + triggerOptions = props.triggerOptions, + popoverWidth = props.popoverWidth; - var _c = useState(false), - animate = _c[0], - setAnimate = _c[1]; + var _b = React__namespace.useState(false), + openPopover = _b[0], + setOpenPopover = _b[1]; - var type = file.type.split('/')[0] || 'others'; - var fileType = IconMapping[type] ? type : 'others'; - var iconClass = classNames__default['default']((_a = {}, _a['FileIcon'] = true, _a['FileIcon--animate'] = animate, _a["FileIcon--" + fileType] = true, _a)); - var uploadingIconClass = classNames__default['default']((_b = {}, _b['FileIcon'] = true, _b['FileIcon--uploading'] = true, _b)); - useEffect(function () { - if (status === 'completed') { - setAnimate(true); - } else { - setAnimate(false); - } - }, [status]); + var mapValue = mapInitialValue(multiSelect, value); - if (status === 'uploading') { - return /*#__PURE__*/React__namespace.createElement(ProgressRing, { - size: "small", - value: progress || 0, - className: uploadingIconClass - }); - } + var _c = React__namespace.useState(mapValue), + selectValue = _c[0], + setSelectValue = _c[1]; - return /*#__PURE__*/React__namespace.createElement(Icon, { - name: IconMapping[fileType], - className: iconClass - }); - }; - FileIcon.displayName = 'FileIcon'; - FileIcon.defaultProps = { - progress: 0, - status: 'completed' - }; + var _d = React__namespace.useState(false), + isOptionSelected = _d[0], + setIsOptionSelected = _d[1]; - var FileListItem = function FileListItem(props) { - var _a; + var triggerRef = /*#__PURE__*/React__namespace.createRef(); + var listRef = React__namespace.useRef(null); - var progress = props.progress, - errorMessage = props.errorMessage, - onClick = props.onClick, - className = props.className, - actions = props.actions, - fileItem = props.fileItem, - file = props.file, - status = props.status, - fileSize = props.fileSize; - var name = file.name; - var baseProps = extractBaseProps(props); - var FileItemClass = classNames__default['default']((_a = {}, _a['FileItem'] = true, _a), className); + var _e = React__namespace.useState(false), + withSearch = _e[0], + setWithSearch = _e[1]; - var onClickHandler = function onClickHandler() { - if (onClick) { - onClick(fileItem); + var _f = React__namespace.useState(), + focusedOption = _f[0], + setFocusedOption = _f[1]; + + var _g = React__namespace.useState(false), + highlightFirstItem = _g[0], + setHighlightFirstItem = _g[1]; + + var _h = React__namespace.useState(false), + highlightLastItem = _h[0], + setHighlightLastItem = _h[1]; + + var _j = React__namespace.useState({ + width: popoverWidth || width + }), + popoverStyle = _j[0], + setPopoverStyle = _j[1]; + + var triggerStyle = { + width: width + }; + React__namespace.useEffect(function () { + var _a, _b; + + if (!popoverWidth && ((_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.clientWidth)) { + setPopoverStyle(__assign(__assign({}, popoverStyle), { + width: (_b = triggerRef.current) === null || _b === void 0 ? void 0 : _b.clientWidth + })); + } + }, []); + React__namespace.useImperativeHandle(ref, function () { + return { + setOpen: function setOpen(open) { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(open); + }, + setFocusFirstItem: function setFocusFirstItem() { + if (openPopover) { + requestAnimationFrame(function () { + return focusListItem$1('down', setFocusedOption, listRef); + }); + setHighlightFirstItem(true); + } + }, + setFocusLastItem: function setFocusLastItem() { + if (openPopover) { + requestAnimationFrame(function () { + return focusListItem$1('up', setFocusedOption, listRef); + }); + setHighlightLastItem(true); + } + } + }; + }); + React__namespace.useEffect(function () { + if (!openPopover) { + setHighlightFirstItem(false); + setHighlightLastItem(false); + } + }, [openPopover]); + React__namespace.useEffect(function () { + if (highlightFirstItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$1('down', setFocusedOption, listRef); + }); + } + }, [highlightFirstItem]); + React__namespace.useEffect(function () { + if (highlightLastItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem$1('up', setFocusedOption, listRef); + }); + } + }, [highlightLastItem]); + React__namespace.useEffect(function () { + if (value) { + setSelectValue(value); + setIsOptionSelected(Array.isArray(value) ? value.length > 0 : value.value.trim().length > 0); + } + }, [value]); + + var onToggleHandler = function onToggleHandler(open) { + if (triggerOptions && triggerOptions.disabled) { + setOpenPopover(false); + } else { + setHighlightFirstItem(open); + setOpenPopover(open); } }; - return /*#__PURE__*/React__namespace.createElement("div", __assign({}, baseProps, { - className: FileItemClass, - onClick: onClickHandler - }), /*#__PURE__*/React__namespace.createElement("div", { - className: "FileItem-file" - }, /*#__PURE__*/React__namespace.createElement("div", { - className: "FileItem-fileContent" - }, /*#__PURE__*/React__namespace.createElement(FileIcon, { - file: file, - status: status, - progress: progress - }), /*#__PURE__*/React__namespace.createElement(Text, { - className: "FileItem-text", - appearance: status === 'completed' ? 'default' : 'subtle' - }, name)), /*#__PURE__*/React__namespace.createElement("div", { - className: "FileItem-actions" - }, /*#__PURE__*/React__namespace.createElement(Text, { - className: "FileItem-size", - appearance: 'subtle' - }, fileSize || file.size), !!actions && actions)), status === 'error' && /*#__PURE__*/React__namespace.createElement(Caption, { - className: 'FileItem-error', - error: true - }, errorMessage)); - }; - FileListItem.defaultProps = { - progress: 0, - errorMessage: 'Network Error' - }; - FileListItem.displayName = 'FileListItem'; + var onOptionClick = function onOptionClick(option) { + onSelect === null || onSelect === void 0 ? void 0 : onSelect(option); + !multiSelect && setOpenPopover(false); + }; - var FileList = function FileList(props) { - var fileList = props.fileList, - onClick = props.onClick, - actionRenderer = props.actionRenderer, - className = props.className; - var baseProps = extractBaseProps(props); - if (fileList.length === 0) return null; - return /*#__PURE__*/React__namespace.createElement(Card, __assign({}, baseProps, { - shadow: 'none', - className: className - }), fileList.map(function (fileItem, index) { - return /*#__PURE__*/React__namespace.createElement(FileListItem, __assign({ - key: index, - onClick: onClick, - actions: actionRenderer && actionRenderer(fileItem), - fileItem: fileItem - }, fileItem)); + var onOutsideClickHandler = function onOutsideClickHandler() { + onOutsideClick === null || onOutsideClick === void 0 ? void 0 : onOutsideClick(); + }; + + var contextProp = { + openPopover: openPopover, + setOpenPopover: setOpenPopover, + selectValue: selectValue, + setSelectValue: setSelectValue, + isOptionSelected: isOptionSelected, + setIsOptionSelected: setIsOptionSelected, + onOptionClick: onOptionClick, + maxHeight: maxHeight, + minHeight: minHeight, + withSearch: withSearch, + width: width, + setWithSearch: setWithSearch, + multiSelect: multiSelect, + listRef: listRef, + triggerRef: triggerRef, + focusedOption: focusedOption, + setFocusedOption: setFocusedOption, + setHighlightFirstItem: setHighlightFirstItem, + setHighlightLastItem: setHighlightLastItem + }; + return /*#__PURE__*/React__namespace.createElement(SelectContext.Provider, { + value: contextProp + }, /*#__PURE__*/React__namespace.createElement("div", { + "data-test": "DesignSystem-Select", + "aria-haspopup": "listbox", + "aria-expanded": openPopover, + style: triggerStyle + }, /*#__PURE__*/React__namespace.createElement(Popover, { + open: openPopover, + onToggle: onToggleHandler, + className: "mt-3", + triggerClass: "d-block", + customStyle: popoverStyle, + boundaryElement: boundaryElement, + appendToBody: appendToBody, + trigger: /*#__PURE__*/React__namespace.createElement(SelectTrigger, __assign({ + "aria-controls": "select-listbox" + }, triggerOptions)) + }, /*#__PURE__*/React__namespace.createElement(OutsideClick, { + onOutsideClick: onOutsideClickHandler + }, /*#__PURE__*/React__namespace.createElement("div", { + role: "listbox", + id: "select-listbox", + tabIndex: 0, + ref: listRef + }, children))))); + }); + Select.displayName = 'Select'; + Select.defaultProps = { + maxHeight: 256, + width: 176 + }; + Select.Option = SelectOption; + Select.List = SelectList; + Select.SearchInput = SearchInput; + Select.EmptyTemplate = SelectEmptyTemplate; + Select.Footer = SelectFooter; + + var MenuGroup = function MenuGroup(props) { + var label = props.label, + children = props.children, + showDivider = props.showDivider, + rest = __rest(props, ["label", "children", "showDivider"]); + + if (label) { + return /*#__PURE__*/React__default["default"].createElement("div", __assign({ + "data-test": "DesignSystem-Menu-Group", + role: "group", + className: "Menu-Group" + }, rest), /*#__PURE__*/React__default["default"].createElement(Text, { + "data-test": "DesignSystem-Menu-Group-Label", + size: "small", + weight: "medium", + appearance: "subtle", + className: "Menu-Group-Label" + }, label), children); + } + + return /*#__PURE__*/React__default["default"].createElement("div", __assign({ + "data-test": "DesignSystem-Menu-Group", + role: "group" + }, rest), children, showDivider && /*#__PURE__*/React__default["default"].createElement(Divider, { + className: "my-3" })); }; - FileList.defaultProps = { - fileList: [] + MenuGroup.defaultProps = { + showDivider: true }; - FileList.displayName = 'FileList'; - var KEY_CODE = { - backspace: 'Backspace', - left: 'ArrowLeft', - up: 'ArrowUp', - right: 'ArrowRight', - down: 'ArrowDown', - e: 'e', - E: 'E' - }; + var MenuContext = /*#__PURE__*/React__namespace.createContext({}); - var VerificationCodeInput = function VerificationCodeInput(props) { - var _a = props.type, - type = _a === void 0 ? 'number' : _a, - _b = props.fields, - fields = _b === void 0 ? 4 : _b, - _c = props.placeholder, - placeholder = _c === void 0 ? '_' : _c, - _d = props.autoFocus, - autoFocus = _d === void 0 ? true : _d, - onComplete = props.onComplete, - onFocus = props.onFocus, - onBlur = props.onBlur, - className = props.className; - props.value; - var rest = __rest(props, ["type", "fields", "placeholder", "autoFocus", "onComplete", "onFocus", "onBlur", "className", "value"]); + var handleKeyDown$1 = function handleKeyDown(event, focusedOption, setFocusedOption, setOpenPopover, menuTriggerRef, listRef, subListRef, isSubMenuTrigger, triggerRef, menuID, triggerID, parentListRef) { + var _a, _b, _c; - var initialValues = React.useMemo(function () { - if (props.value && props.value.length) { - return props.value.split(''); - } + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + navigateOptions('up', focusedOption, setFocusedOption, listRef); + break; - return Array(fields).fill(''); - }, []); - var initialRefs = React.useMemo(function () { - return __spreadArrays(Array(fields)).map(function () { - return /*#__PURE__*/React__default['default'].createRef(); - }); - }, []); + case 'ArrowDown': + event.preventDefault(); + navigateOptions('down', focusedOption, setFocusedOption, listRef); + break; - var _e = React.useState(initialValues), - values = _e[0], - setValues = _e[1]; + case 'Enter': + (_a = focusedOption) === null || _a === void 0 ? void 0 : _a.click(); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + break; - var refs = React.useState(initialRefs)[0]; - React.useEffect(function () { - if (refs[0] && refs[0].current && autoFocus) { - refs[0].current.focus({ - preventScroll: true - }); - } - }, []); - React.useEffect(function () { - var completeValue = values.join(''); + case 'Escape': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); - if (onComplete && completeValue.length === fields) { - onComplete(completeValue); - } - }, [values]); + if (triggerRef && !isSubMenuTrigger) { + (_b = triggerRef === null || triggerRef === void 0 ? void 0 : triggerRef.current) === null || _b === void 0 ? void 0 : _b.focus(); + } else { + (_c = menuTriggerRef === null || menuTriggerRef === void 0 ? void 0 : menuTriggerRef.current) === null || _c === void 0 ? void 0 : _c.focus(); + } - var onChangeHandler = function onChangeHandler(e) { - var index = parseInt(e.target.dataset.id, 10); - var fieldValue = e.target.value; - var nextRef; + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(undefined); + break; - var newValues = __spreadArrays(values); + case 'Tab': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + break; - if (!fieldValue) { - return; - } + case 'ArrowRight': + navigateSubMenu(isSubMenuTrigger, 'right', subListRef, menuID, triggerID, parentListRef); + break; - if (fieldValue.length > 1) { - var nextIndex = fieldValue.length + index - 1; + case 'ArrowLeft': + navigateSubMenu(isSubMenuTrigger, 'left', subListRef, menuID, triggerID, parentListRef); + break; + } + }; - if (nextIndex >= fields) { - nextIndex = fields - 1; - } + var navigateOptions = function navigateOptions(direction, focusedOption, setFocusedOption, listRef) { + var _a, _b; - nextRef = refs[nextIndex]; - var split = fieldValue.split(''); - split.forEach(function (item, i) { - var cursor = index + i; + var listItems = (_a = listRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var index = Array.from(listItems).findIndex(function (item) { + return item == focusedOption; + }); - if (cursor < fields) { - newValues[cursor] = item; - } - }); - setValues(newValues); - } else { - nextRef = refs[index + 1]; - newValues[index] = fieldValue; - setValues(newValues); - } + if (index === -1) { + index = direction === 'up' ? listItems.length - 1 : 0; + } else { + index = direction === 'up' ? (index - 1 + listItems.length) % listItems.length : (index + 1) % listItems.length; + } - if (nextRef && nextRef.current) { - nextRef.current.focus({ - preventScroll: true - }); - nextRef.current.select(); - } - }; + var targetOption = listItems[index]; + targetOption.focus(); + setFocusedOption && setFocusedOption(targetOption); + (_b = targetOption === null || targetOption === void 0 ? void 0 : targetOption.scrollIntoView) === null || _b === void 0 ? void 0 : _b.call(targetOption, { + block: 'center' + }); + }; - var onFocusHandler = function onFocusHandler(e) { - e.target.select(); - e.target.placeholder = ''; + var navigateSubMenu = function navigateSubMenu(isSubMenuTrigger, direction, subListRef, menuID, triggerID, parentListRef) { + var _a, _b, _c, _d; - if (onFocus) { - onFocus(e); + var element = document.querySelector("[data-name=\"" + menuID + "\"]"); + var menuPlacement = element === null || element === void 0 ? void 0 : element.getAttribute('data-placement'); + + if (isSubMenuTrigger) { + if (direction === 'right' && (menuPlacement === null || menuPlacement === void 0 ? void 0 : menuPlacement.includes('right')) || direction === 'left' && (menuPlacement === null || menuPlacement === void 0 ? void 0 : menuPlacement.includes('left'))) { + var listItems = (_a = subListRef === null || subListRef === void 0 ? void 0 : subListRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + (listItems === null || listItems === void 0 ? void 0 : listItems[0]).focus(); } + } else if (direction === 'left' && (menuPlacement === null || menuPlacement === void 0 ? void 0 : menuPlacement.includes('right')) || direction === 'right' && (menuPlacement === null || menuPlacement === void 0 ? void 0 : menuPlacement.includes('left'))) { + var triggerElement = (_c = (_b = parentListRef === null || parentListRef === void 0 ? void 0 : parentListRef.current) === null || _b === void 0 ? void 0 : _b.querySelector("#" + triggerID)) === null || _c === void 0 ? void 0 : _c.firstChild; + (_d = triggerElement) === null || _d === void 0 ? void 0 : _d.focus(); + } + }; + + var SubMenuContext = /*#__PURE__*/React__namespace.createContext({}); + + var MenuItem = function MenuItem(props) { + var children = props.children, + className = props.className, + onClick = props.onClick, + disabled = props.disabled, + onFocus = props.onFocus, + rest = __rest(props, ["children", "className", "onClick", "disabled", "onFocus"]); + + var contextProp = React__default["default"].useContext(MenuContext); + var subMenuContextProp = React__default["default"].useContext(SubMenuContext); + var isSubMenuTrigger = false; + var subListRef = null; + var triggerRef = subMenuContextProp.triggerRef, + menuID = subMenuContextProp.menuID, + setParentOpen = subMenuContextProp.setParentOpen, + triggerID = subMenuContextProp.triggerID, + parentListRef = subMenuContextProp.parentListRef; + var setOpenPopover = contextProp.setOpenPopover, + focusedOption = contextProp.focusedOption, + setFocusedOption = contextProp.setFocusedOption, + menuTriggerRef = contextProp.menuTriggerRef, + listRef = contextProp.listRef; + var MenuItemClassName = classNames__default["default"]({ + 'Menu-Item': true + }, className); + React__default["default"].useEffect(function () { + var _a, _b; + + var handlePopoverOpen = function handlePopoverOpen() { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + }; + + var handlePopoverClose = function handlePopoverClose() { + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + }; + + var triggerElement = (_b = (_a = parentListRef === null || parentListRef === void 0 ? void 0 : parentListRef.current) === null || _a === void 0 ? void 0 : _a.querySelector("#" + triggerID)) === null || _b === void 0 ? void 0 : _b.firstChild; + triggerElement === null || triggerElement === void 0 ? void 0 : triggerElement.addEventListener('focus', handlePopoverOpen); + triggerElement === null || triggerElement === void 0 ? void 0 : triggerElement.addEventListener('blur', handlePopoverClose); + return function () { + triggerElement === null || triggerElement === void 0 ? void 0 : triggerElement.removeEventListener('focus', handlePopoverOpen); + triggerElement === null || triggerElement === void 0 ? void 0 : triggerElement.removeEventListener('blur', handlePopoverClose); + }; + }, [triggerID]); + + var onFocusHandler = function onFocusHandler(event) { + setFocusedOption === null || setFocusedOption === void 0 ? void 0 : setFocusedOption(event.target); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + onFocus === null || onFocus === void 0 ? void 0 : onFocus(event); }; - var onBlurHandler = function onBlurHandler(e) { - e.target.placeholder = placeholder; + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$1(event, focusedOption, setFocusedOption, setOpenPopover, menuTriggerRef, listRef, subListRef, isSubMenuTrigger, triggerRef, menuID, triggerID, parentListRef); + }; - if (onBlur) { - onBlur(e); + var onClickHandler = function onClickHandler(event) { + if (disabled) { + return; } - }; - var onKeyDown = function onKeyDown(e) { - var index = parseInt(e.currentTarget.dataset.id, 10); - var prevIndex = index - 1; - var nextIndex = index + 1; - var prev = refs[prevIndex]; - var nextRef = refs[nextIndex]; + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + onClick === null || onClick === void 0 ? void 0 : onClick(event); + setParentOpen === null || setParentOpen === void 0 ? void 0 : setParentOpen(false); + }; - switch (e.key) { - case KEY_CODE.backspace: - e.preventDefault(); + return /*#__PURE__*/React__default["default"].createElement(Listbox.Item, __assign({ + "data-test": "DesignSystem-Menu-ListItem", + className: MenuItemClassName, + tabIndex: -1, + onKeyDown: onKeyDownHandler, + onFocus: onFocusHandler, + onClick: onClickHandler, + disabled: disabled, + role: "menuitem", + "aria-disabled": disabled + }, rest), children); + }; + MenuItem.displayName = 'MenuItem'; + MenuItem.defaultProps = { + tagName: 'a' + }; - var vals = __spreadArrays(values); + var MenuList = function MenuList(props) { + var children = props.children, + rest = __rest(props, ["children"]); - if (values[index]) { - vals[index] = ''; - setValues(vals); - } else if (prev && prev.current) { - vals[prevIndex] = ''; - prev.current.focus({ - preventScroll: true - }); - setValues(vals); - } + return /*#__PURE__*/React__default["default"].createElement(Listbox, __assign({ + "data-test": "DesignSystem-Menu-List" + }, rest), children); + }; + MenuList.defaultProps = { + type: 'option', + showDivider: false, + tagName: 'nav', + size: 'compressed' + }; - break; + var handleKeyDown = function handleKeyDown(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem) { + switch (event.key) { + case 'ArrowUp': + event.preventDefault(); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightLastItem === null || setHighlightLastItem === void 0 ? void 0 : setHighlightLastItem(true); + break; - case KEY_CODE.left: - e.preventDefault(); + case 'ArrowDown': + event.preventDefault(); + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(true); + setHighlightFirstItem === null || setHighlightFirstItem === void 0 ? void 0 : setHighlightFirstItem(true); + break; + + case 'Escape': + case 'Tab': + setOpenPopover === null || setOpenPopover === void 0 ? void 0 : setOpenPopover(false); + break; + } + }; + var focusListItem = function focusListItem(position, setFocusedOption, listRef) { + var _a, _b, _c; - if (prev && prev.current) { - prev.current.focus({ - preventScroll: true - }); - } + var listItems = (_a = listRef.current) === null || _a === void 0 ? void 0 : _a.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]'); + var targetOption; - break; + if (position === 'down') { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[0]; + } else { + targetOption = listItems === null || listItems === void 0 ? void 0 : listItems[listItems.length - 1]; + } - case KEY_CODE.right: - e.preventDefault(); + (_b = targetOption) === null || _b === void 0 ? void 0 : _b.focus(); - if (nextRef && nextRef.current) { - nextRef.current.focus({ - preventScroll: true - }); - } + if (targetOption && typeof targetOption.scrollIntoView === 'function') { + (_c = targetOption) === null || _c === void 0 ? void 0 : _c.scrollIntoView({ + block: 'end' + }); + } - break; + setFocusedOption && setFocusedOption(targetOption); + }; - case KEY_CODE.up: - case KEY_CODE.down: - case KEY_CODE.e: - case KEY_CODE.E: - if (type === 'number') { - e.preventDefault(); - } + var MenuTrigger = function MenuTrigger(props) { + var className = props.className; + var contextProp = React__default["default"].useContext(MenuContext); + var openPopover = contextProp.openPopover, + setOpenPopover = contextProp.setOpenPopover, + setHighlightFirstItem = contextProp.setHighlightFirstItem, + setHighlightLastItem = contextProp.setHighlightLastItem, + menuTriggerRef = contextProp.menuTriggerRef; + var triggerClassName = classNames__default["default"]({ + 'Menu-Trigger--active': openPopover + }, className); - break; - } + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown(event, setOpenPopover, setHighlightFirstItem, setHighlightLastItem); }; - var wrapperClassNames = function wrapperClassNames(i) { - return classNames__default['default']({ - 'VerificationCodeInput-Input': true, - 'ml-4': i > 0 - }, className); + return /*#__PURE__*/React__default["default"].createElement(Button, __assign({ + "data-test": "DesignSystem-Menu-Trigger", + icon: "more_horiz", + ref: menuTriggerRef, + "aria-label": "Open menu", + "aria-haspopup": true, + "aria-expanded": openPopover + }, props, { + className: triggerClassName, + onKeyDown: onKeyDownHandler + })); + }; + + var SubMenu = function SubMenu(props) { + var _a; + + var children = props.children; + var menuID = "DesignSystem-Menu--Popover-" + uidGenerator(); + var triggerID = "DesignSystem-Menu--Trigger-" + uidGenerator(); + + var _b = React__default["default"].Children.toArray(children), + submenuTrigger = _b[0], + submenuContent = _b[1]; + + var contextProp = React__default["default"].useContext(MenuContext); + var subListRef = React__default["default"].useRef(null); + var triggerRef = React__default["default"].useRef(null); + var isSubMenuTrigger = true; + var subMenuElement = /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null); + var setOpenPopover = contextProp.setOpenPopover, + focusedOption = contextProp.focusedOption, + setFocusedOption = contextProp.setFocusedOption, + menuTriggerRef = contextProp.menuTriggerRef, + listRef = contextProp.listRef; + + var onKeyDownHandler = function onKeyDownHandler(event) { + handleKeyDown$1(event, focusedOption, setFocusedOption, setOpenPopover, menuTriggerRef, listRef, subListRef, isSubMenuTrigger, triggerRef, menuID); }; - return /*#__PURE__*/React__default['default'].createElement("div", { - "data-test": "DesignSystem-VerificationCodeInput", - className: "VerificationCodeInput" - }, values.map(function (val, index) { - return /*#__PURE__*/React__default['default'].createElement(Input, __assign({ - key: index, - className: wrapperClassNames(index), - size: "large", - minWidth: "40px", - value: val, - placeholder: placeholder, - onChange: onChangeHandler, - onKeyDown: onKeyDown, - onFocus: onFocusHandler, - onBlur: onBlurHandler, - "data-id": index, - ref: refs[index] - }, rest)); + var subMenuContextProp = { + triggerRef: triggerRef, + menuID: menuID, + setParentOpen: setOpenPopover, + parentListRef: listRef, + triggerID: triggerID + }; + var triggerElement = /*#__PURE__*/React__default["default"].cloneElement(submenuTrigger, __assign(__assign({}, (_a = submenuTrigger) === null || _a === void 0 ? void 0 : _a.props), { + onKeyDown: onKeyDownHandler, + ref: triggerRef, + 'aria-haspopup': 'menu', + 'aria-expanded': subListRef.current ? 'true' : 'false', + 'aria-controls': menuID, + id: triggerID })); + + if ( /*#__PURE__*/React__default["default"].isValidElement(submenuContent)) { + var _c = submenuContent === null || submenuContent === void 0 ? void 0 : submenuContent.props, + on = _c.on, + children_1 = _c.children; + + subMenuElement = /*#__PURE__*/React__default["default"].cloneElement(submenuContent, __assign(__assign({}, submenuContent.props), { + on: on || 'hover', + offset: 'small', + children: /*#__PURE__*/React__default["default"].createElement("div", { + ref: subListRef + }, children_1), + trigger: triggerElement + })); + } + + return /*#__PURE__*/React__default["default"].createElement(SubMenuContext.Provider, { + value: subMenuContextProp + }, subMenuElement); }; - VerificationCodeInput.displayName = 'VerificationCodeInput'; + var Menu = function Menu(props) { + var _a; + + var children = props.children, + width = props.width, + minHeight = props.minHeight, + maxHeight = props.maxHeight, + className = props.className, + open = props.open, + rest = __rest(props, ["children", "width", "minHeight", "maxHeight", "className", "open"]); + + var _b = React__default["default"].useState(open), + openPopover = _b[0], + setOpenPopover = _b[1]; + + var _c = React__default["default"].useState(false), + highlightFirstItem = _c[0], + setHighlightFirstItem = _c[1]; + + var _d = React__default["default"].useState(false), + highlightLastItem = _d[0], + setHighlightLastItem = _d[1]; + + var _e = React__default["default"].useState(), + focusedOption = _e[0], + setFocusedOption = _e[1]; + + var listRef = /*#__PURE__*/React__default["default"].createRef(); + var menuTriggerRef = React__default["default"].useRef(null); + var subMenuContextProp = React__default["default"].useContext(SubMenuContext); + var menuID = subMenuContextProp.menuID; + var popoverClassName = classNames__default["default"]((_a = {}, _a['Menu'] = true, _a), className); + React__default["default"].useEffect(function () { + setOpenPopover(open); + }, [open]); + React__default["default"].useEffect(function () { + if (highlightFirstItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem('down', setFocusedOption, listRef); + }); + } + }, [highlightFirstItem]); + React__default["default"].useEffect(function () { + if (highlightLastItem && openPopover) { + requestAnimationFrame(function () { + return focusListItem('up', setFocusedOption, listRef); + }); + } + }, [highlightLastItem]); + React__default["default"].useEffect(function () { + if (!openPopover) { + setHighlightFirstItem(false); + setHighlightLastItem(false); + } + }, [openPopover]); + + var onToggleHandler = function onToggleHandler(open) { + setOpenPopover(open); + }; + + var contextProp = { + openPopover: openPopover, + setOpenPopover: setOpenPopover, + setHighlightFirstItem: setHighlightFirstItem, + setHighlightLastItem: setHighlightLastItem, + focusedOption: focusedOption, + setFocusedOption: setFocusedOption, + menuTriggerRef: menuTriggerRef, + listRef: listRef + }; + return /*#__PURE__*/React__default["default"].createElement(MenuContext.Provider, { + value: contextProp + }, /*#__PURE__*/React__default["default"].createElement(Popover, __assign({ + "data-test": "DesignSystem-Menu", + name: menuID, + offset: "medium" + }, rest, { + open: openPopover, + customStyle: { + width: width + }, + onToggle: onToggleHandler + }), /*#__PURE__*/React__default["default"].createElement("div", { + ref: listRef, + role: "menu", + "data-test": props['data-test'] || 'DesignSystem-Menu-Wrapper', + className: popoverClassName, + style: { + maxHeight: maxHeight, + minHeight: minHeight + } + }, children))); + }; + Menu.Group = MenuGroup; + Menu.Item = MenuItem; + Menu.List = MenuList; + Menu.Trigger = MenuTrigger; + Menu.SubMenu = SubMenu; + Menu.defaultProps = { + width: 176, + maxHeight: 256, + position: 'bottom-start' + }; - var version = "2.2.1"; + var version = "2.35.0"; + exports.ActionCard = ActionCard; exports.Avatar = Avatar; exports.AvatarGroup = AvatarGroup; + exports.AvatarSelection = AvatarSelection; exports.Backdrop = Backdrop; exports.Badge = Badge; exports.Breadcrumbs = Breadcrumbs; @@ -13934,11 +20962,14 @@ exports.Chip = Chip; exports.ChipGroup = ChipGroup; exports.ChipInput = ChipInput; + exports.ChoiceList = ChoiceList; exports.Collapsible = Collapsible; exports.Column = Column; + exports.Combobox = Combobox; exports.DatePicker = DatePicker; exports.DateRangePicker = DateRangePicker; exports.Dialog = Dialog; + exports.Divider = Divider; exports.Dropdown = Dropdown; exports.Dropzone = Dropzone; exports.EditableChipInput = EditableChipInput; @@ -13952,14 +20983,19 @@ exports.Grid = Grid; exports.GridCell = GridCell; exports.Heading = Heading; + exports.HelpText = HelpText; exports.HorizontalNav = HorizontalNav; exports.Icon = Icon; + exports.InlineMessage = InlineMessage; exports.Input = Input; - exports.InputMask = InputMask; + exports.InputMask = X; exports.Label = Label; exports.Legend = Legend; exports.Link = Link; + exports.LinkButton = LinkButton; exports.List = List; + exports.Listbox = Listbox; + exports.Menu = Menu; exports.Message = Message; exports.MetaList = MetaList; exports.MetricInput = MetricInput; @@ -13968,6 +21004,7 @@ exports.ModalDescription = ModalDescription; exports.ModalFooter = ModalFooter; exports.ModalHeader = ModalHeader; + exports.MultiSlider = MultiSlider; exports.Navigation = Navigation; exports.OutsideClick = OutsideClick; exports.PageHeader = PageHeader; @@ -13975,6 +21012,7 @@ exports.Paragraph = Paragraph; exports.Pills = Pills; exports.Placeholder = Placeholder; + exports.PlaceholderImage = PlaceholderImage; exports.PlaceholderParagraph = PlaceholderParagraph; exports.Popover = Popover; exports.ProgressBar = ProgressBar; @@ -13982,6 +21020,8 @@ exports.Radio = Radio; exports.RangeSlider = RangeSlider; exports.Row = Row; + exports.Select = Select; + exports.SelectionCard = SelectionCard; exports.Sidesheet = Sidesheet; exports.Slider = Slider; exports.Spinner = Spinner; @@ -13994,16 +21034,17 @@ exports.Tabs = Tabs; exports.TabsWrapper = TabsWrapper; exports.Text = Text; + exports.TextField = TextField; exports.Textarea = Textarea; exports.TimePicker = TimePicker; exports.Toast = Toast; exports.Tooltip = Tooltip; - exports.Utils = index$1; + exports.Utils = index; exports.VerificationCodeInput = VerificationCodeInput; exports.VerticalNav = VerticalNav; exports.version = version; Object.defineProperty(exports, '__esModule', { value: true }); -}))); +})); //# sourceMappingURL=index.js.map diff --git a/dist/index.js.map b/dist/index.js.map index 5e51729ed8..7732475595 100644 --- a/dist/index.js.map +++ b/dist/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sources":["../../../core/utils/css.ts","../../../core/components/organisms/timePicker/utils.tsx","../../../core/utils/validators.ts","../../../core/utils/masks.ts","../node_modules/tslib/tslib.es6.js","../../../core/utils/types.tsx","../../../core/components/atoms/avatar/Avatar.tsx","../../../core/components/atoms/avatarGroup/AvatarGroup.tsx","../../../core/components/atoms/backdrop/Backdrop.tsx","../../../core/components/atoms/badge/Badge.tsx","../node_modules/throttle-debounce/index.esm.js","../../../core/components/atoms/dropdown/utility.tsx","../../../core/components/atoms/dropdown/DropdownButton.tsx","../../../core/components/atoms/_text/index.tsx","../../../core/components/atoms/text/Text.tsx","../../../core/components/atoms/icon/Icon.tsx","../../../core/utils/uidGenerator.tsx","../../../core/components/atoms/checkbox/Checkbox.tsx","../../../core/components/atoms/dropdown/option/CheckboxOption.tsx","../../../core/components/atoms/dropdown/option/DefaultOption.tsx","../../../core/components/atoms/dropdown/option/MetaOption.tsx","../../../core/components/atoms/dropdown/option/IconOption.tsx","../../../core/components/atoms/dropdown/option/IconWithMetaOption.tsx","../../../core/components/atoms/dropdown/option/index.tsx","../../../core/components/atoms/placeholderParagraph/PlaceholderParagraph.tsx","../../../core/components/atoms/placeholderImage/PlaceholderImage.tsx","../../../core/components/molecules/placeholder/Placeholder.tsx","../../../core/components/atoms/dropdown/Loading.tsx","../../../core/components/atoms/dropdown/DropdownList.tsx","../../../core/components/atoms/dropdown/Dropdown.tsx","../../../core/components/atoms/breadcrumbs/Breadcrumbs.tsx","../../../core/components/atoms/button/Button.tsx","../../../core/components/organisms/calendar/config.ts","../../../core/components/organisms/calendar/utility.ts","../../../core/components/organisms/calendar/Calendar.tsx","../../../core/components/atoms/card/Card.tsx","../../../core/components/atoms/cardSubdued/CardSubdued.tsx","../../../core/components/atoms/cardHeader/CardHeader.tsx","../../../core/components/atoms/cardBody/CardBody.tsx","../../../core/components/atoms/cardFooter/CardFooter.tsx","../../../core/components/atoms/_chip/index.tsx","../../../core/components/atoms/chip/Chip.tsx","../../../core/components/atoms/chipGroup/ChipGroup.tsx","../../../core/components/atoms/column/Column.tsx","../../../core/components/organisms/datePicker/Trigger.tsx","../../../core/components/organisms/datePicker/DatePicker.tsx","../../../core/components/organisms/timePicker/TimePicker.tsx","../../../core/components/atoms/heading/Heading.tsx","../../../core/components/atoms/input/Input.tsx","../../../core/components/atoms/metricInput/MetricInput.tsx","../../../core/components/molecules/inputMask/utilites.tsx","../../../core/components/molecules/inputMask/InputMask.tsx","../../../core/components/atoms/label/Label.tsx","../../../core/components/atoms/caption/Caption.tsx","../../../core/components/atoms/legend/Legend.tsx","../../../core/components/atoms/editable/Editable.tsx","../../../core/components/molecules/editableDropdown/EditableDropdown.tsx","../../../core/components/atoms/link/Link.tsx","../../../core/components/atoms/message/Message.tsx","../../../core/components/atoms/metaList/Meta.tsx","../../../core/components/atoms/metaList/MetaList.tsx","../../../core/components/atoms/outsideClick/OutsideClick.tsx","../../../core/components/atoms/paragraph/Paragraph.tsx","../../../core/components/atoms/progressBar/ProgressBar.tsx","../../../core/components/atoms/radio/Radio.tsx","../../../core/components/atoms/row/Row.tsx","../../../core/components/atoms/statusHint/StatusHint.tsx","../../../core/components/atoms/pills/Pills.tsx","../../../core/components/atoms/spinner/Spinner.tsx","../../../core/utils/Keys.ts","../../../core/components/atoms/multiSlider/SliderUtils.tsx","../../../core/components/atoms/multiSlider/Handle.tsx","../../../core/components/atoms/multiSlider/index.tsx","../../../core/components/atoms/slider/Slider.tsx","../../../core/components/atoms/rangeSlider/RangeSlider.tsx","../../../core/components/atoms/subheading/Subheading.tsx","../../../core/components/atoms/switchInput/Switch.tsx","../../../core/components/atoms/textarea/Textarea.tsx","../../../core/components/atoms/toast/ActionButton.tsx","../../../core/components/atoms/toast/Toast.tsx","../../../core/components/atoms/popperWrapper/PopperWrapper.tsx","../../../core/components/molecules/popover/Popover.tsx","../../../core/components/molecules/chipInput/ChipInput.tsx","../../../core/utils/navigationHelper.tsx","../../../core/components/organisms/verticalNav/MenuItem.tsx","../../../core/components/organisms/verticalNav/VerticalNav.tsx","../../../core/components/organisms/horizontalNav/HorizontalNav.tsx","../../../core/components/molecules/tooltip/Tooltip.tsx","../../../core/components/molecules/dialog/Dialog.tsx","../../../core/components/molecules/overlayFooter/OverlayFooter.tsx","../../../core/components/molecules/overlayHeader/OverlayHeader.tsx","../../../core/components/molecules/overlayBody/OverlayBody.tsx","../../../core/utils/overlayHelper.ts","../../../core/components/molecules/modal/Modal.tsx","../../../core/components/molecules/modal/ModalHeader.tsx","../../../core/components/molecules/modal/ModalBody.tsx","../../../core/components/molecules/modal/ModalFooter.tsx","../../../core/components/molecules/fullscreenModal/FullscreenModal.tsx","../../../core/components/molecules/sidesheet/Sidesheet.tsx","../../../core/components/atoms/collapsible/Collapsible.tsx","../../../core/components/molecules/chatMessage/Status.tsx","../../../core/components/molecules/chatMessage/Box.tsx","../../../core/components/molecules/chatMessage/MessageText.tsx","../../../core/components/molecules/chatMessage/ChatMessage.tsx","../../../core/components/molecules/emptyState/EmptyState.tsx","../../../core/components/molecules/modalDescription/ModalDescription.tsx","../../../core/components/molecules/pagination/Pagination.tsx","../../../core/components/molecules/editableInput/EditableInput.tsx","../../../core/components/molecules/editableChipInput/EditableChipInput.tsx","../../../core/components/atoms/progressRing/ProgressRing.tsx","../../../core/components/molecules/stepper/Step.tsx","../../../core/components/molecules/stepper/Stepper.tsx","../../../core/components/organisms/dateRangePicker/Trigger.tsx","../../../core/components/organisms/dateRangePicker/SingleInputTrigger.tsx","../../../core/components/organisms/dateRangePicker/utilities.tsx","../../../core/components/organisms/dateRangePicker/DateRangePicker.tsx","../../../core/components/molecules/tabs/TabsWrapper.tsx","../../../core/components/molecules/tabs/Tab.tsx","../../../core/components/molecules/tabs/Tabs.tsx","../../../core/components/molecules/dropzone/utils.tsx","../../../core/components/molecules/dropzone/FileErrors.tsx","../../../core/components/molecules/dropzone/FileSelectorUtils.tsx","../../../core/components/molecules/dropzone/DropzoneBase.tsx","../../../core/components/molecules/dropzone/DropzoneActive.tsx","../../../core/components/molecules/dropzone/DropzoneError.tsx","../../../core/components/molecules/dropzone/Dropzone.tsx","../../../core/components/molecules/fileUploader/FileUploaderFormat.tsx","../../../core/components/molecules/fileUploader/FileUploaderButton.tsx","../../../core/components/molecules/fileUploader/FileUploader.tsx","../../../core/components/molecules/fileUploader/FileUploaderStatus.tsx","../../../core/components/molecules/fileUploader/FileUploaderItem.tsx","../../../core/components/molecules/fileUploader/FileUploaderList.tsx","../../../core/components/organisms/grid/columnUtility.tsx","../../../core/components/organisms/grid/rowUtility.tsx","../../../core/components/organisms/grid/utility.tsx","../../../core/components/organisms/grid/defaultProps.tsx","../../../core/components/organisms/grid/GridContext.ts","../../../core/components/organisms/grid/GridNestedRow.tsx","../../../core/components/organisms/grid/Cell.tsx","../../../core/components/organisms/grid/GridHead.tsx","../node_modules/react-dynamic-virtual-scroll/dist/rvs-es.js","../../../core/components/organisms/grid/GridRow.tsx","../../../core/components/organisms/grid/GridBody.tsx","../../../core/components/organisms/grid/Grid.tsx","../../../core/components/organisms/grid/GridCell.tsx","../../../core/components/organisms/table/DraggableDropdown.tsx","../../../core/components/organisms/table/Header.tsx","../../../core/components/organisms/table/Table.tsx","../../../core/components/organisms/list/List.tsx","../../../core/components/organisms/navigation/VerticalNavigation.tsx","../../../core/components/organisms/navigation/Navigation.tsx","../../../core/components/organisms/pageHeader/PageHeader.tsx","../../../core/components/molecules/fileList/FileIcon.tsx","../../../core/components/molecules/fileList/FileListItem.tsx","../../../core/components/molecules/fileList/FileList.tsx","../../../core/components/molecules/verificationCodeInput/VerificationCodeInput.tsx"],"sourcesContent":[null,null,null,null,"/*! *****************************************************************************\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 */\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 __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 (_) 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 Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\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 || 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: n === \"return\" } : 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",null,null,null,null,null,"/* eslint-disable no-undefined,no-param-reassign,no-shadow */\n\n/**\n * Throttle execution of a function. Especially useful for rate limiting\n * execution of handlers on events like resize and scroll.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n * @param {boolean} [noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds while the\n * throttled-function is being called. If noTrailing is false or unspecified, callback will be executed one final time\n * after the last throttled-function call. (After the throttled-function has not been called for `delay` milliseconds,\n * the internal counter is reset).\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n * to `callback` when the throttled-function is executed.\n * @param {boolean} [debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is false (at end),\n * schedule `callback` to execute after `delay` ms.\n *\n * @returns {Function} A new, throttled, function.\n */\nfunction throttle (delay, noTrailing, callback, debounceMode) {\n /*\n * After wrapper has stopped being called, this timeout ensures that\n * `callback` is executed at the proper times in `throttle` and `end`\n * debounce modes.\n */\n var timeoutID;\n var cancelled = false; // Keep track of the last time `callback` was executed.\n\n var lastExec = 0; // Function to clear existing timeout\n\n function clearExistingTimeout() {\n if (timeoutID) {\n clearTimeout(timeoutID);\n }\n } // Function to cancel next exec\n\n\n function cancel() {\n clearExistingTimeout();\n cancelled = true;\n } // `noTrailing` defaults to falsy.\n\n\n if (typeof noTrailing !== 'boolean') {\n debounceMode = callback;\n callback = noTrailing;\n noTrailing = undefined;\n }\n /*\n * The `wrapper` function encapsulates all of the throttling / debouncing\n * functionality and when executed will limit the rate at which `callback`\n * is executed.\n */\n\n\n function wrapper() {\n for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {\n arguments_[_key] = arguments[_key];\n }\n\n var self = this;\n var elapsed = Date.now() - lastExec;\n\n if (cancelled) {\n return;\n } // Execute `callback` and update the `lastExec` timestamp.\n\n\n function exec() {\n lastExec = Date.now();\n callback.apply(self, arguments_);\n }\n /*\n * If `debounceMode` is true (at begin) this is used to clear the flag\n * to allow future `callback` executions.\n */\n\n\n function clear() {\n timeoutID = undefined;\n }\n\n if (debounceMode && !timeoutID) {\n /*\n * Since `wrapper` is being called for the first time and\n * `debounceMode` is true (at begin), execute `callback`.\n */\n exec();\n }\n\n clearExistingTimeout();\n\n if (debounceMode === undefined && elapsed > delay) {\n /*\n * In throttle mode, if `delay` time has been exceeded, execute\n * `callback`.\n */\n exec();\n } else if (noTrailing !== true) {\n /*\n * In trailing throttle mode, since `delay` time has not been\n * exceeded, schedule `callback` to execute `delay` ms after most\n * recent execution.\n *\n * If `debounceMode` is true (at begin), schedule `clear` to execute\n * after `delay` ms.\n *\n * If `debounceMode` is false (at end), schedule `callback` to\n * execute after `delay` ms.\n */\n timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);\n }\n }\n\n wrapper.cancel = cancel; // Return the wrapper function.\n\n return wrapper;\n}\n\n/* eslint-disable no-undefined */\n/**\n * Debounce execution of a function. Debouncing, unlike throttling,\n * guarantees that a function is only executed a single time, either at the\n * very beginning of a series of calls, or at the very end.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n * @param {boolean} [atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds\n * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.\n * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n * to `callback` when the debounced-function is executed.\n *\n * @returns {Function} A new, debounced function.\n */\n\nfunction debounce (delay, atBegin, callback) {\n return callback === undefined ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false);\n}\n\nexport { debounce, throttle };\n//# sourceMappingURL=index.esm.js.map\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"import * as React from 'react';\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\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\n return obj;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\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\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nvar isInView = function isInView(container, element) {\n var containerTop = container.offsetTop;\n var elementRect = element.getBoundingClientRect();\n var elementTop = elementRect.top;\n var elementHeight = elementRect.height;\n return elementHeight - (containerTop - elementTop) > 0;\n};\n\nvar VirtualScroll = /*#__PURE__*/function (_React$Component) {\n _inherits(VirtualScroll, _React$Component);\n\n var _super = _createSuper(VirtualScroll);\n\n function VirtualScroll(props) {\n var _this;\n\n _classCallCheck(this, VirtualScroll);\n\n _this = _super.call(this, props);\n _this.state = {\n offset: props.offset\n };\n _this.lastScrollTop = 0;\n _this.avgRowHeight = props.minItemHeight;\n return _this;\n }\n\n _createClass(VirtualScroll, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n var _this2 = this;\n\n window.requestAnimationFrame(function () {\n if (_this2.listRef) {\n _this2.listRef.scrollTop = _this2.state.offset * _this2.avgRowHeight;\n }\n });\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(_prevProps, prevState) {\n if (prevState.offset > this.state.offset) {\n this.updateOffset(prevState);\n }\n }\n }, {\n key: \"updateOffset\",\n value: function updateOffset(prevState) {\n var offsetDiff = prevState.offset - this.state.offset;\n\n if (this.listRef) {\n var el = this.listRef;\n var items = el.querySelectorAll(\".VS-item\");\n var heightAdded = 0;\n var currOffset = prevState.offset;\n var start = Math.min(this.state.offset, this.props.buffer);\n var end = start + offsetDiff;\n\n for (var i = Math.min(items.length, end) - 1; i >= start; i--) {\n var inView = isInView(el, items[i]);\n\n if (inView) {\n currOffset--;\n var rowHeight = items[i].clientHeight;\n heightAdded += rowHeight;\n } else {\n break;\n }\n }\n\n if (items.length < end) {\n var diff = end - items.length;\n heightAdded += diff * this.props.minItemHeight;\n currOffset -= diff;\n }\n\n var newAvgRowHeight = currOffset === 0 ? this.props.minItemHeight : (this.avgRowHeight * prevState.offset - heightAdded) / currOffset;\n this.setState({\n offset: currOffset\n });\n this.avgRowHeight = Math.max(this.props.minItemHeight, newAvgRowHeight);\n }\n }\n }, {\n key: \"onScrollHandler\",\n value: function onScrollHandler(event) {\n if (this.listRef) {\n var _this$props = this.props,\n totalLength = _this$props.totalLength,\n length = _this$props.length,\n buffer = _this$props.buffer;\n var offset = this.state.offset;\n var avgRowHeight = this.avgRowHeight;\n var el = this.listRef;\n var scrollTop = el.scrollTop;\n var direction = Math.floor(scrollTop - this.lastScrollTop);\n if (direction === 0) return;\n var items = el.querySelectorAll(\".VS-item\");\n var newOffset = offset;\n var newAvgRowHeight = avgRowHeight;\n var start = Math.min(offset, buffer);\n\n if (direction > 0) {\n if (offset < totalLength - length) {\n var heightAdded = 0;\n\n for (var i = start; i < items.length; i++) {\n var inView = isInView(el, items[i]);\n var rowHeight = items[i].clientHeight;\n\n if (!inView) {\n heightAdded += rowHeight;\n newOffset++;\n } else {\n break;\n }\n }\n\n if (heightAdded < direction) {\n var heightLeft = direction - heightAdded;\n var offsetToBeAdded = Math.floor(heightLeft / this.props.minItemHeight);\n newOffset += offsetToBeAdded;\n heightAdded += offsetToBeAdded * this.props.minItemHeight;\n }\n\n newAvgRowHeight = newOffset > 0 ? (offset * avgRowHeight + heightAdded) / newOffset : this.props.minItemHeight;\n this.setState({\n offset: Math.min(newOffset, totalLength - length)\n });\n this.avgRowHeight = Math.max(this.props.minItemHeight, newAvgRowHeight);\n }\n } else {\n var scrollDiff = items[start].getBoundingClientRect().y - el.getBoundingClientRect().y;\n\n if (scrollDiff > 0) {\n var offsetDiff = Math.floor(scrollDiff / this.props.minItemHeight) || 1;\n\n var _newOffset = offset - offsetDiff;\n\n if (_newOffset < totalLength - (length + buffer)) {\n this.setState({\n offset: Math.max(0, _newOffset)\n });\n }\n }\n }\n\n this.lastScrollTop = scrollTop;\n }\n\n if (this.props.onScroll) this.props.onScroll(event);\n }\n }, {\n key: \"renderItems\",\n value: function renderItems(start, end) {\n var renderItem = this.props.renderItem;\n return Array.from({\n length: end - start + 1\n }, function (_, index) {\n var rowIndex = start + index;\n var component = renderItem(rowIndex);\n return /*#__PURE__*/React.cloneElement(component, {\n key: rowIndex,\n className: [\"VS-item\", component.props.className].join(' ').trim()\n });\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this3 = this;\n\n var _this$props2 = this.props,\n totalLength = _this$props2.totalLength,\n length = _this$props2.length,\n buffer = _this$props2.buffer;\n _this$props2.offset;\n _this$props2.renderItem;\n _this$props2.minItemHeight;\n var forwardRef = _this$props2.forwardRef,\n rest = _objectWithoutProperties(_this$props2, [\"totalLength\", \"length\", \"buffer\", \"offset\", \"renderItem\", \"minItemHeight\", \"forwardRef\"]);\n\n var _this$state = this.state,\n init = _this$state.init,\n offset = _this$state.offset;\n var avgRowHeight = this.avgRowHeight;\n var start = Math.max(0, offset - buffer);\n var end = Math.min(offset + (length + buffer) - 1, totalLength - 1);\n var topPadding = Math.max(0, start * avgRowHeight);\n var bottomPadding = Math.max(0, (totalLength - end - 1) * avgRowHeight);\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, rest, {\n ref: function ref(el) {\n _this3.listRef = el;\n if (forwardRef) forwardRef.current = el;\n if (!init) _this3.setState({\n init: true\n });\n },\n onScroll: this.onScrollHandler.bind(this)\n }), init && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n style: {\n flexShrink: 0,\n height: topPadding\n }\n }), this.renderItems(start, end), /*#__PURE__*/React.createElement(\"div\", {\n style: {\n flexShrink: 0,\n height: bottomPadding\n }\n })));\n }\n }]);\n\n return VirtualScroll;\n}(React.Component);\n\n_defineProperty(VirtualScroll, \"defaultProps\", {\n buffer: 10,\n length: 30,\n offset: 0\n});\n\nvar index = /*#__PURE__*/React.forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(VirtualScroll, _extends({\n forwardRef: ref\n }, props));\n});\n\nexport default index;\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["colorToHex","color","getComputedStyle","document","documentElement","getPropertyValue","placeholders","_a","isPlaceholderPresent","placeholderChar","time","includes","isFormat12hour","format","get12hourFormat","hours","AMPM","hrs","get24hourFormat","am_pm","convertedHours","translateToTime","timeObj","getTimeObjectFromNumber","translateToString","d","Date","getHours","minutes","getMinutes","seconds","getSeconds","getTimeObjFromStr","separator","len","length","timeLength","lastChars","substring","is12hrFormat","timeFormat","inputFormat","v","split","forEach","f","i","getOutputTimeString","outputFormat","timeStr","val","isValid","validators","_i","value","iterator","Array","isArray","every","validator","date","validate","month","year","monthLength","p","hoursCond","rangeDate","extractBaseProps","props","baseProps","basePropsObj","reduce","acc","curr","filterProps","propsList","include","Object","entries","filter","obj","initialsLength","Avatar","withTooltip","tooltipPosition","size","children","firstName","lastName","className","appearance","initials","trim","slice","tooltip","DefaultAppearance","colors","AvatarAppearance","charCodeAt","classes","classNames","ContentClass","_b","IconClass","_c","renderAvatar","React","Text","weight","Icon","name","renderTooltip","Tooltip","position","triggerClass","displayName","defaultProps","AvatarGroup","max","borderColor","popoverOptions","list","popperRenderer","maxHeight","_d","_e","on","_f","dark","_g","appendToBody","_h","popperClassName","extraAvatars","style","borderRadius","backgroundColor","border","boxShadow","AvatarGroupClass","popperClass","trigger","renderPopper","extraAvatarsList","map","item","ind","key","renderAvatars","avatars","index","Popover","useEffect","useState","Backdrop","savedBodyOverflow","setBodyOverflow","open","setOpen","animate","setAnimate","disableBodyScroll","body","setProperty","enableBodyScroll","overflow","window","setTimeout","BackdropElement","ReactDOM","createPortal","Badge","subtle","getSearchedOptions","options","searchTerm","result","option","label","toLowerCase","_isEqual","arr1","arr2","_isControlled","selected","undefined","_isOpenControlled","_showSelectedItems","bulk","withCheckbox","_isSelectAllPresent","bulkOptions","withSelectAll","scrollTo","element","top","scrollIntoView","menuElement","focusedElement","menuRect","getBoundingClientRect","focusedRect","overscroll","offsetHeight","bottom","offsetTop","height","getSelectAll","optionsLength","disabledOptionsLength","indeterminate","checked","DropdownButton","forwardRef","ref","triggerSize","placeholder","menu","icon","disabled","inlineLabel","error","rest","buttonDisabled","trimmedPlaceholder","iconName","buttonClass","textClass","type","tabIndex","charAt","toUpperCase","GenericText","componentType","createElement","small","onClick","mapper","getIconAppearance","iconColor","x","indexOf","iconClass","styles","fontSize","width","isValidElement","uidGenerator","dt","getTime","uuid","replace","c","r","Math","random","floor","s","toString","Checkbox","forwardedRef","defaultChecked","onChange","useRef","useImperativeHandle","current","setChecked","setIndeterminate","CheckboxClass","CheckboxOuterWrapper","CheckboxTextClass","CheckboxInputWrapper","CheckboxWrapper","indeterminateValue","onChangeHandler","e","target","id","IconName","IconSize","htmlFor","CheckboxOption","optionData","onUpdateActiveOption","dataTest","onMouseEnter","DefaultOption","textClassName","onClickHandler","MetaOption","renderSubInfo","subInfo","IconOption","OptionClass","IconWithMetaOption","OptionTypeMapping","Option","updateActiveOption","active","checkboxes","optionType","OptionClassName","CheckboxClassName","truncateOption","customOptionClass","stopPropagation","optionRenderer","labelAppearance","iconAppearance","seperator","MetaList","seperatorAppearance","component","PlaceholderParagraph","wrapperClass","PlaceholderImage","round","Placeholder","imageSize","withImage","paragraphClasses","Loading","loadingType","alignmentMapping","right","left","DropdownList","listOptions","inputRef","align","applyButtonLabel","_j","cancelButtonLabel","_k","_l","_m","customTrigger","tempSelected","previousSelected","remainingOptions","firstEnabledOption","dropdownOpen","showApplyButton","withSearch","onSearchChange","applyOptions","cancelOptions","toggleDropdown","dropdownRef","createRef","triggerRef","dropdownTriggerRef","dropdownCancelButtonRef","dropdownApplyButtonRef","_o","popoverStyle","setPopoverStyle","_p","cursor","setCursor","minWidth","maxWidth","popperWidth","clientWidth","popperMinWidth","popperWrapperStyle","_q","_r","triggerLabel","CustomTrigger","NewCustomTrigger","cloneElement","dropdownStyle","overflowY","overflowX","getDropdownClass","isGroup","Dropdown","getDropdownSectionClass","showClearButton","dropdownClass","dropdownWrapperClass","SelectAllClass","onToggleDropdown","focus","onCancelOptions","onApplyOptions","optionClickHandler","onOptionSelect","searchClearHandler","searchHandler","event","parentCheckbox","updatedIndex","async","renderFooter","footerLabel","renderGroups","group","selectedGroup","onClearOptions","isClearDisabled","Button","renderApplyButton","disable","renderSearch","Input","autoFocus","onClear","autoComplete","renderLoading","loadersLength","arr","fill","renderSelectAll","selectAllLabel","selectAll","onSelectAll","renderOptions","selectAllPresent","optionIsSelected","findIndex","onSelect","renderDropdownSection","selectedSectionLabel","loadersCount","loadingOptions","noResultMessage","prevGroup","currentGroup","focusOption","direction","elements","querySelectorAll","updatedCursor","startIndex","endIndex","node","getAttribute","onkeydown","optionClass","preventDefault","activeElement","click","currentElement","disabledApplyButton","onKeyDown","onToggle","customStyle","__extends","_super","_this","filteredOptions","Promise","resolve","count","init","state","selected_1","unSelectedGroup","updatedAsync","fetchOptions","fetchFunction","fetchOptionsFunction","then","res","staticLimit","getUnSelectedOptions","getSelectedOptions","disabledOptions","getDisabledOptions","setState","loading","searchedOptionsLength","updateTriggerLabel","search","searchInit","onClose","popperIsOpen","disabledOptionsCount","temporarySelected","moveSelectedGroup","updateOptions","values","selectedArray","totalOptions","selectedLength","triggerOptions","getLabel","customLabel","labelLimit","join","isSingleSelect","isControlled","closeOnSelect","onPopperToggle","updatePreviousSelected","isClearClicked","debounceClear","selectedValues","onUpdate","updateSelectedOptions","splice","concat","selectedArr","selectedDisabledArray","debounce","searchDebounceDuration","onTogglePopper","optionsApplied","updatedOpen","min","prevProps","prevState","debounceSearch","updateOnPopperToggle","remainingOptionsLen","updateSearchTerm","Component","renderLink","Link","href","link","ev","renderDropdown","Breadcrumbs","BreadcrumbClass","sizeMapping","tiny","regular","large","iconAlign","largeIcon","expanded","Spinner","yearBlockRange","yearsInRow","monthBlock","monthsInRow","daysInRow","months","days","config","getIndexOfDay","day","getYearBlock","getDaysInMonth","getDate","getFirstDayOfMonth","getDay","getDateInfo","dateVal","convertToDate","getFullYear","getMonth","decadeYear","translateToDate","compareYearBlock","operator","currDecade","limitDecade","compareDate","currYear","currMonth","currDate","limitYear","limitMonth","limitDate","year_1","month_1","date_1","separator_1","f_1","out","year_2","month_2","date_2","v_1","yearBlockNav","yearNav","monthNav","yearBlock","rangePicker","rangeLimit","startDateState","endDateState","hoverDateState","startYear","startMonth","startDate","endYear","endMonth","endDate","hoverYear","hoverMonth","hoverDate","setDate","updateState","view","getNavDateInfo","getDateValue","disabledBefore","disabledAfter","headerIconClass","onNavIconClickHandler","currView","monthsInView","jumpView","yearNavVal","monthNavVal","headerContentClass","headerContent","renderHeading","content","Heading","onNavHeadingClickHandler","noOfRows","ceil","from","_y","row","_x","col","offset","valueClass","selectYear","selectMonth","firstDayOfWeek","dayValue","Subheading","onMouseLeave","onDateRowMouseLeaveHandler","renderDateValues","yearState","monthState","dateState","dayRange","dayDiff","dummyDays","abs","inRangeError","getInRangeError","selectDate","onMouseOverHandler","dummy","startActive","endActive","inRange","inRangeLast","sYear","sMonth","sDate","eYear","eMonth","eDate","isStart","isEnd","isRangeError","onMouseOver","containerClass","headerClass","bodyClass","renderJumpButton","renderHeaderContent","renderBodyYear","renderBodyMonth","renderBodyDate","now","Calendar","onDateChange","onRangeChange","renderCalendar","Card","shadow","CardSubdued","CardHeader","CardBody","CardFooter","withSeperator","GenericChip","clearButton","onCloseHandler","Chip","chipClass","clearbutton","select","ChipGroup","ChipGroupClass","Column","sizeXS","sizeS","sizeM","sizeL","sizeXL","Trigger","inputOptions","onBlurHandler","onClearHandler","showError","required","errorMessage","caption","inputValidator","Utils","mask","InputMask","utils","getDefaultValue","onBlur","clearOnEmptyBlur","dbYear","dbMonth","dbDate","daYear","daMonth","daDate","o","getError","DatePicker","newError","dVal","onDateChangeHandler","withInput","bind","onToggleHandler","TimePicker","onTimeChange","timeProp","setTime","setInit","updatedTime","outputTimeStr","sizeMap","m","l","xl","xxl","defaultValue","info","onFocus","actionIcon","readOnly","preventScroll","inputClass","leftIconClass","rightIconClass","capMin","Infinity","isNaN","capMax","MetricInput","prefix","suffix","valueProp","isUncontrolled","setValue","getArrowClass","onArrowClick","newValue","Number","syntheticEvent","create","iconSize","isEditable","pos","getNewCursorPosition","getDefaultSelection","start","end","getPlaceholderValue","getSelectionLength","deferId","selectionRef","selection","setSelection","setCursorPosition","setSelectionPos","getCurrSelection","selectionStart","selectionEnd","el","setSelectionRange","updateSelection","requestAnimationFrame","insertAtIndex","currValue","newIndex","newIterator","match","inputVal","currentTarget","currSelection","cursorPosition","enteredVal","updatedVal","removedLength","insertedStringLength","maskedVal","newCursorPosition","cancelAnimationFrame","onFocusHandler","Caption","hide","Label","optional","LabelClass","renderInfo","isRequired","isOptional","errorIconClass","Legend","labelWeight","legendClass","background","Editable","editing","EditableClass","EditableDropdown","dropdownOptions","customTriggerRenderer","onDropdownChange","onDropdownClose","setLabel","setEditing","showComponent","setShowComponent","CompClass","DefaultCompClass","EditableDropdownClass","updatedLabel","eventType","renderComponent","componentLabel","IconMapping","success","warning","alert","Message","actions","title","MessageClass","TitleClass","DescriptionClass","renderDescription","description","Meta","MetaClass","SeperatorClass","LeftSeperatorClass","rightSeperator","OutsideClick","onOutsideClick","innerRef","addEventListener","handleOutsideClick","removeEventListener","useCallback","findDOMNode","contains","Paragraph","ProgressBar","ProgressBarClass","Radio","RadioClass","RadioWrapper","RadioOuterWrapper","Row","StatusHint","StatusHintClass","StatusHintIconClass","Pills","wrapperClasses","circleClasses","Circle","svgProps","viewBox","circleProps","cx","cy","strokeMiterlimit","strokeWidth","ARROW_LEFT","ARROW_RIGHT","formatPercentage","ratio","toFixed","countDecimalPlaces","isFinite","valueArray","approxEqual","a","b","tolerance","clamp","arraysEqual","oldValues","newValues","argMin","argFn","minValue","minArg","arg","fillValues","fillValue","inc","isElementOfType","_ComponentType","isHandleMoving","isHandleHovered","handle","handleElement","clientX","clientPixel","stepSize","tickSize","clientPixelNormalized","getHandleMidpointAndOffset","handleMidpoint","handleOffset","handleCenterPixel","pixelDelta","callback","updatedValue","mouseEventClientOffset","onRelease","removeDocumentEventListeners","finalValue","changeValue","clientToValue","continueHandleMovement","endHandleMovement","which","Keys","useOppositeDimension","handleRect","sizeKey","Handle","_prevProps","tickSizeRatio","isCurrentLabelHovered","showTootlip","offsetRatio","offsetCalc","TooltipClass","handleMouseOver","handleMouseLeave","onMouseDown","beginHandleMovement","handleKeyDown","onKeyUp","handleKeyUp","refHandlers","MultiSliderHandle","labelPrecision","handleElements","push","maybeHandles","Children","child","handles","sort","trackElement","trackSize","fillAfter","fillBefore","canHandleTrackEvent","closest","foundHandle","nearestHandleForValue","oldIndex","handleProps","getHandleValues","lockIndex","getLockedHandleIndex","lockValue","onRangeRelease","getNewHandleValues","range","labelRenderer","hoveredLabelValue","onReleaseHandler","formatLabel","addHandleRef","labelStepSize","labels","stepSizeRatio","activeLabels","offsetPercentage","handleLabelMouseOver","handleLabelMouseLeave","getOffsetRatio","startRatio","endRatio","startOffset","endOffset","orientationStyle","fillTrack","getTrackFill","trackStops","previous","track","renderTrackFill","getLabelPrecision","MultiSlider","prevHandleProps","newHandleProps","updateTickSize","getOffset","offsetValue","handleValue","SliderClass","WrapperClass","maybeHandleTrackClick","renderTracks","renderLabels","renderHandles","Slider","RangeIndex","RangeSlider","START","END","Switch","checkedProp","SwitchClass","SwitchWrapper","Textarea","rows","resize","ActionButton","Toast","message","titleClass","headingClass","action","oldStyle","placement","newStyle","marginBottom","offsetMapping","marginTop","marginRight","marginLeft","hoverableDelay","medium","popupRef","getPopperChildren","mouseMoveHandler","handleMouseEnter","boundaryScrollHandler","PopperWrapper","addBoundaryScrollHandler","boundaryElement","removeBoundaryScrollHandler","_throttleWait","triggerElement","zIndex","getZIndexForLayer","closeOnScroll","togglePopper","_timer","clearTimeout","hoverable","layerNode","parseInt","onOutsideClickHandler","closeOnBackdropClick","doesEventContainsElement","outOfBoundaries","getUpdatedStyle","Manager","Reference","getTriggerElement","Popper","modifiers","preventOverflow","boundariesElement","enabled","hideOnReferenceEscape","defaultOnToggle","newOpen","PopoverWrapper","assign","keyCodes","BACKSPACE","DELETE","ENTER","ChipInput","chipOptions","allowDuplicates","chips","setChips","inputValue","setInputValue","ChipInputClass","onUpdateChips","updatedChips","onChipDeleteHandler","onChipAddHandler","chip","onDeleteAllHandler","onKeyDownHandler","chipsLength","onInputChangeHandler","chipComponents","getTextAppearance","isActive","getPillsAppearance","getMenu","menus","menus_1","subMenu","activeMenu","find","submenu","isMenuActive","currActiveMenu","MenuItem","rounded","hasSubmenu","isChildren","isChildrenVisible","ItemClass","renderSubMenu","PillsClass","VerticalNav","autoCollapse","menuState","setMenuState","currMenu","updateMenuState","nameSplit","name_1","menuData","renderList","hasGroup","sectionClass","HorizontalNav","getPillsClass","renderIcon","menuClasses","tooltipWrapper","Dialog","dimension","primaryButtonAppearance","secondaryButtonAppearance","heading","primaryButtonLabel","primaryButtonCallback","secondaryButtonLabel","secondaryButtonCallback","Modal","headerOptions","footer","ModalDescription","OverlayFooter","wrapperRef","secondaryBtns","secondaryBtn_1","OverlayHeader","subHeading","backButton","backIcon","backIconCallback","backButtonCallback","subheadingClass","OverlayBody","stickFooter","withFooter","getWrapperElement","querySelector","classList","add","appendChild","getUpdatedZIndex","ele","containerClassName","elementRef","siblings","prevZIndex","modalRef","backdropClose","header","footerOptions","footerClass","ContainerClass","ModalContainer","ModalWrapper","WrapperElement","ModalHeader","ModalBody","ModalFooter","FullscreenModal","sidesheetWidth","Sidesheet","sidesheetRef","SidesheetContainer","SidesheetWrapper","Collapsible","expandedWidth","isClicked","setIsClicked","setSeperator","scrollHeight","clientHeight","BodyClass","FooterClass","newExpanded","Status","readText","failedText","sendingText","StatusClass","TextClass","t","Box","isTyping","statusType","withStatus","MessageText","text","typingText","ChatMessage","statusOptions","imageHeight","HeadingSize","textSize","EmptyState","imageSrc","HeadingClass","src","Pagination","totalPages","onPageChange","page","setPage","nextButtonWrapperClass","prevButtonWrapperClass","inputChangeHandler","buttonType","EditableInput","disableSaveAction","onInputChange","EditableInputClass","EditableDefaultClass","InputClass","ActionClass","setDefaultComponent","onSaveChanges","inputComponent","renderChildren","EditableChipInput","chipInputOptions","onChipInputChange","chipObject","isWithChips","actionClass","defaultClasses","onChipInputChangeHandler","renderDefaultState","ProgressRing","radius","circumference","PI","ProgressRingClass","Ring","strokeDasharray","strokeDashoffset","Step","completed","StepClass","onClickHandle","Stepper","steps","skipIndexes","stepLabel","stepValue","StepperClass","step","isSkipped","activeStep","completedStep","steplabel","stepvalue","startInputOptions","endInputOptions","startError","endError","updateNav","startPlaceholderChar","endPlaceholderChar","showStartError","showEndError","startErrorMessage","endErrorMessage","startLabel","endLabel","SingleInputTrigger","startValue","endValue","sValue","eValue","startVal","endVal","startD","isEndDateValid","endD","isStartDateValid","getCurrentYear","currentYear","getCurrentMonth","currentMonth","getCurrentWeek","currentDate","currentDay","getPreviousWeek","getPreviousMonth","getPrevious90Days","getCustomDates","isError","getErrors","DateRangePicker","onRangeChangeHandler","singleInput","contentAlign","RangePickerClass","TabsWrapper","onTabChange","tabs","totalTabs","setActiveTab","tabClickHandler","TabsHeader","tabHeaderClass","Tab","Fragment","Tabs","withSeparator","activeIndex","tabsClass","isKeyboard","tabRefs","blur","tabKeyDownHandler","prevElement","nextElement","tab","renderTabs","textAppearance","accepts","file","acceptedFiles","acceptedFilesArray","fileName_1","mimeType_1","baseMimeType_1","some","validType","endsWith","isPropagationStopped","cancelBubble","isEvtWithFiles","dataTransfer","files","prototype","call","types","onDocumentDragOver","composeEventHandlers","fns","args","fn","reducer","isFocused","isFileDialogActive","isDragActive","draggedFiles","fileRejections","fileErrorMessages","FILE_INVALID_TYPE","FILE_TOO_LARGE","FILE_TOO_SMALL","TOO_MANY_FILES","isDefined","getInvalidTypeRejectionErr","accept","updatedAccept","messageSuffix","getTooLargeRejectionErr","maxSize","getTooSmallRejectionErr","minSize","fileAccepted","isAcceptable","fileMatchSize","getFileError","multiple","typeError","accepted","sizeError","sizeMatch","allFilesAccepted","COMMON_MIME_TYPES","Map","FILES_TO_IGNORE","fromEvent","evt","isDragEvt","getDataTransferFiles","getInputFiles","toFileWithPath","path","withMimeType","webkitRelativePath","defineProperty","writable","configurable","enumerable","hasExtension","lastIndexOf","ext","pop","get","isInput","fromList","items","kind","all","toFilePromises","noIgnoredFiles","flatten","webkitGetAsEntry","fromDataTransferItem","entry","isDirectory","fromDirEntry","getAsFile","reject","fwp","fromEntry","fromFileEntry","reader","createReader","readEntries","batch","err_1","err","fullPath","initialState","isDragAccept","isDragReject","DropzoneBase","onDragEnter","onDragLeave","onDragOver","onDrop","onDropAccepted","onDropRejected","onFileDialogCancel","getFilesFromEvent","preventDropOnDocument","rootRef","useReducer","dispatch","openFileDialog","onWindowFocus","onKeyDownCb","isEqualNode","keyCode","onFocusCb","onBlurCb","dragTargetsRef","onDocumentDrop","onDragEnterCb","persist","onDragOverCb","dropEffect","onDragLeaveCb","targets","targetIdx","onDropCb","acceptError","customErrors","errors","composeHandler","composeKeyboardHandler","_fn","composeDragHandler","getRootProps","useMemo","refKey","onDragEnterCallback","onDragOverCallback","onDragLeaveCallback","onDropCallback","onInputElementClick","getInputProps","inputProps","display","fileCount","fileError","DropzoneActive","DropzoneError","Dropzone","sizeLabel","sampleFileLink","DropzoneClass","renderDropzone","FileUploaderFormat","FileUploaderButton","uploadButtonLabel","FileUploaderButtonClass","fileList","FileUploader","FileUploaderClass","FileUploaderStatus","progress","status","onRetry","FileUploaderItem","onDelete","FileItemClass","FileUploaderList","FileListClass","fileName","resizeCol","updateColumnSchema","elX","resizable","pageX","sortColumn","sortingList","updateSortingList","newSortingList","pinColumn","schemaUpdate","pinned","hideColumn","hidden","getWidth","isPercent","checkboxCell","checkboxWidth","gridWidth","getCellSize","cellType","sizes","AVATAR","AVATAR_WITH_TEXT","AVATAR_WITH_META_LIST","ICON","minWdth","STATUS_HINT","WITH_META_LIST","DEFAULT","updateBatchData","data","rowIndexes","dataUpdate","updatedData","rowIndexes_1","rowIndex","translateData","schema","newData","translate","translatedData","filterData","filterList","filteredData","keys","schemaName","filters","sIndex","onFilterChange","sortData","sortedData","defaultComparator","aData","bData","localeCompare","comparator","reverse","paginateData","pageSize","paginatedData","moveToIndex","to","newArr","getTotalPages","totalRecords","anyUnSelected","_selected","allUnSelected","hasSchema","getSchema","loaderSchema","response","getPluralSuffix","showHead","showFilters","context","createContext","GridProvider","Provider","GridNestedRow","useContext","GridContext","nestedRowRenderer","HeaderCell","onMenuChange","draggable","showMenu","headCellTooltip","schemaProp","sorting","isValidSchema","listIndex","sorted","sortOptions","pinOptions","unpinOption","hideOptions","unsortOption","filterOptions","fl","renderLabel","BodyCell","expandedState","colIndex","nestedRows","setExpanded","cellProps","nestedProps","isNestedRowDisabled","cellRenderer","GridCell","Cell","isHead","firstCell","reorderColumn","cellClass","onDragStart","setData","getData","GridHead","pinnedSchema","leftPinnedSchema","rightPinnedSchema","unpinnedSchema","renderCheckbox","show","renderSchema","currSchema","shouldRenderCheckbox","cI","GridRow","onRowClick","rI","rowRef","rowClasses","GridBody","withPagination","errorTemplate","prevPageInfo","updatePrevPageInfo","gridBodyEl","scrollTop","minRowHeight","comfortable","standard","compressed","tight","isLastPage","dataLength","renderItem","VirtualScroll","minItemHeight","totalLength","buffer","gridHeadEl","gridRef","isHeadSyncing","isBodySyncing","scrollLeft","newSchema","updateSchema","updateRenderedSchema","fromInd","toInd","updateFilterList","newFilterList","pageInfo","Grid","forceRerender","forceUpdate","removeScrollListeners","addScrollListeners","syncScroll","renderTitle","cellData","renderMetaList","metaList","renderStatusHint","statusAppearance","DraggableDropdown","tempOptions","setTempOptions","triggerWidth","setTriggerWidth","handleParentChange","handleChildChange","newOptions","onCancelHandler","onApplyHandler","Header","searchPlaceholder","dynamicColumn","allowSelectAll","selectAllRecords","setSelectAllRecords","flag","setFlag","filterSchema","columnOptions","onDynamicColumnUpdate","__assign","colSchema","selectedCount","defaultErrorTemplate","errorType","errorMessages","FAILED_TO_FETCH","NO_RECORDS_FOUND","multipleSorting","paginationType","filterPosition","searchUpdate","debounceUpdate","updateDataFn","fetchData","dataProp","onSearch","opts","searchedData","renderedData","renderedSchema","indexes","_","newPage","newSearchTerm","Table","updateData","withHeader","headerChildren","headerAttr","List","VerticalNavigation","activeMenuIcon","menuIconClasses","subMenuClasses","footerClasses","Navigation","renderNavigation","PageHeader","navigation","stepper","breadcrumbs","badge","meta","navigationPosition","renderCenter","audio","image","video","application","others","FileIcon","fileType","uploadingIconClass","FileListItem","fileItem","fileSize","FileList","actionRenderer","KEY_CODE","backspace","up","down","E","VerificationCodeInput","fields","onComplete","initialValues","initialRefs","__spreadArrays","setValues","refs","completeValue","dataset","fieldValue","nextRef","nextIndex","prevIndex","prev","vals","wrapperClassNames"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sources":["../../../core/utils/css.ts","../../../core/components/organisms/timePicker/utils.tsx","../../../core/utils/validators.ts","../../../core/utils/masks.ts","../node_modules/tslib/tslib.es6.js","../../../core/utils/types.tsx","../../../core/components/atoms/avatar/AvatarProvider.tsx","../../../core/components/atoms/avatar/avatarIcon/AvatarIcon.tsx","../../../core/components/atoms/avatar/avatarImage/AvatarImage.tsx","../../../core/components/atoms/avatar/Avatar.tsx","../../../core/components/atoms/avatarGroup/AvatarCount.tsx","../../../core/components/atoms/avatarGroup/Avatars.tsx","../../../core/components/atoms/avatarGroup/AvatarPopperBody.tsx","../../../core/components/atoms/avatarGroup/AvatarGroup.tsx","../../../core/components/atoms/backdrop/Backdrop.tsx","../../../core/components/atoms/badge/Badge.tsx","../../../core/components/atoms/breadcrumbs/Breadcrumbs.tsx","../../../core/components/atoms/button/Button.tsx","../../../core/components/organisms/calendar/config.ts","../../../core/components/organisms/calendar/utility.ts","../../../core/components/organisms/calendar/Calendar.tsx","../../../core/components/atoms/card/Card.tsx","../../../core/components/atoms/cardSubdued/CardSubdued.tsx","../../../core/components/atoms/cardHeader/CardHeader.tsx","../../../core/components/atoms/cardBody/CardBody.tsx","../../../core/components/atoms/cardFooter/CardFooter.tsx","../../../core/accessibility/utils/isSpaceKey.ts","../../../core/accessibility/utils/useAccessibilityProps.ts","../../../core/components/atoms/icon/Icon.tsx","../../../core/components/atoms/_text/index.tsx","../../../core/components/atoms/text/Text.tsx","../../../core/components/atoms/_chip/index.tsx","../../../core/components/atoms/chip/Chip.tsx","../../../core/components/atoms/chipGroup/ChipGroup.tsx","../../../core/utils/uidGenerator.tsx","../../../core/components/atoms/checkbox/CheckboxIcon.tsx","../../../core/components/atoms/checkbox/Checkbox.tsx","../../../core/components/atoms/column/Column.tsx","../../../core/components/organisms/datePicker/Trigger.tsx","../../../core/components/organisms/datePicker/DatePicker.tsx","../../../core/components/organisms/timePicker/utility/timePickerUtility.tsx","../../../core/components/organisms/timePicker/utility/searchUtils.tsx","../../../core/components/atoms/dropdown/utility.tsx","../../../core/components/organisms/timePicker/TimePickerWithSearch.tsx","../../../core/components/organisms/timePicker/TimePickerWithInput.tsx","../../../core/components/organisms/timePicker/TimePicker.tsx","../node_modules/throttle-debounce/index.esm.js","../../../core/components/atoms/dropdown/DropdownButton.tsx","../../../core/components/atoms/dropdown/option/CheckboxOption.tsx","../../../core/components/atoms/dropdown/option/DefaultOption.tsx","../../../core/components/atoms/dropdown/option/MetaOption.tsx","../../../core/components/atoms/dropdown/option/IconOption.tsx","../../../core/components/atoms/dropdown/option/IconWithMetaOption.tsx","../../../core/components/atoms/dropdown/option/index.tsx","../../../core/components/atoms/placeholderParagraph/PlaceholderParagraph.tsx","../../../core/components/atoms/placeholderImage/PlaceholderImage.tsx","../../../core/components/molecules/placeholder/Placeholder.tsx","../../../core/components/atoms/dropdown/Loading.tsx","../../../core/components/atoms/dropdown/ErrorTemplate.tsx","../../../core/components/atoms/dropdown/DropdownList.tsx","../../../core/components/atoms/dropdown/Dropdown.tsx","../../../core/components/atoms/heading/Heading.tsx","../../../core/components/atoms/input/actionButton/ActionButton.tsx","../../../core/components/atoms/input/Input.tsx","../../../core/components/atoms/metricInput/MetricInput.tsx","../../../core/components/molecules/inputMask/utilites.tsx","../../../core/components/molecules/inputMask/InputMask.tsx","../../../core/components/atoms/label/Label.tsx","../../../core/components/atoms/caption/Caption.tsx","../../../core/components/atoms/legend/Legend.tsx","../../../core/components/atoms/editable/Editable.tsx","../../../core/components/molecules/editableDropdown/EditableDropdown.tsx","../../../core/components/atoms/link/Link.tsx","../../../core/components/atoms/message/Message.tsx","../../../core/components/atoms/metaList/Meta.tsx","../../../core/components/atoms/metaList/MetaList.tsx","../../../core/utils/Keys.ts","../../../core/components/atoms/multiSlider/SliderUtils.tsx","../../../core/components/atoms/multiSlider/Handle.tsx","../../../core/components/atoms/multiSlider/index.tsx","../../../core/components/atoms/outsideClick/OutsideClick.tsx","../../../core/components/atoms/paragraph/Paragraph.tsx","../../../core/components/atoms/progressBar/ProgressBar.tsx","../../../core/components/atoms/radio/Radio.tsx","../../../core/components/atoms/row/Row.tsx","../../../core/components/atoms/statusHint/StatusHint.tsx","../../../core/components/atoms/pills/Pills.tsx","../../../core/components/atoms/spinner/Spinner.tsx","../../../core/components/atoms/slider/Slider.tsx","../../../core/components/atoms/rangeSlider/RangeSlider.tsx","../../../core/components/atoms/subheading/Subheading.tsx","../../../core/components/atoms/switchInput/Switch.tsx","../../../core/components/atoms/textarea/Textarea.tsx","../../../core/components/atoms/toast/ActionButton.tsx","../../../core/components/atoms/toast/Toast.tsx","../../../core/components/atoms/popperWrapper/PopperWrapper.tsx","../../../core/components/molecules/popover/Popover.tsx","../../../core/components/molecules/chipInput/ChipInput.tsx","../../../core/utils/navigationHelper.tsx","../../../core/components/organisms/verticalNav/MenuItem.tsx","../../../core/components/organisms/verticalNav/VerticalNav.tsx","../../../core/components/organisms/horizontalNav/HorizontalNav.tsx","../../../core/components/molecules/tooltip/Tooltip.tsx","../../../core/components/molecules/dialog/Dialog.tsx","../../../core/components/molecules/overlayFooter/OverlayFooter.tsx","../../../core/components/molecules/overlayHeader/OverlayHeader.tsx","../../../core/components/molecules/overlayBody/OverlayBody.tsx","../../../core/utils/overlayHelper.ts","../../../core/utils/OverlayManager.tsx","../../../core/components/molecules/modal/Modal.tsx","../../../core/components/molecules/modal/ModalHeader.tsx","../../../core/components/molecules/modal/ModalBody.tsx","../../../core/components/molecules/modal/ModalFooter.tsx","../../../core/components/molecules/fullscreenModal/FullscreenModal.tsx","../../../core/components/molecules/sidesheet/Sidesheet.tsx","../../../core/components/atoms/collapsible/Collapsible.tsx","../../../core/components/molecules/chatMessage/Status.tsx","../../../core/components/molecules/chatMessage/Box.tsx","../../../core/components/molecules/chatMessage/MessageText.tsx","../../../core/components/molecules/chatMessage/ChatMessage.tsx","../../../core/components/molecules/emptyState/EmptyStateContext.tsx","../../../core/components/molecules/emptyState/EmptyStateImage.tsx","../../../core/components/molecules/emptyState/EmptyStateTitle.tsx","../../../core/components/molecules/emptyState/EmptyStateDescription.tsx","../../../core/components/molecules/emptyState/EmptyStateActions.tsx","../../../core/components/molecules/emptyState/EmptyState.tsx","../../../core/components/molecules/modalDescription/ModalDescription.tsx","../../../core/components/molecules/pagination/Pagination.tsx","../../../core/components/molecules/editableInput/EditableInput.tsx","../../../core/components/molecules/editableChipInput/EditableChipInput.tsx","../../../core/components/atoms/progressRing/ProgressRing.tsx","../../../core/components/molecules/stepper/Step.tsx","../../../core/components/molecules/stepper/Stepper.tsx","../../../core/components/organisms/dateRangePicker/Trigger.tsx","../../../core/components/organisms/dateRangePicker/SingleInputTrigger.tsx","../../../core/components/organisms/dateRangePicker/utilities.tsx","../../../core/components/organisms/dateRangePicker/DateRangePicker.tsx","../../../core/components/molecules/tabs/TabsWrapper.tsx","../../../core/components/molecules/tabs/Tab.tsx","../../../core/components/molecules/tabs/Tabs.tsx","../../../core/components/molecules/dropzone/utils.tsx","../../../core/components/molecules/dropzone/FileErrors.tsx","../../../core/components/molecules/dropzone/FileSelectorUtils.tsx","../../../core/components/molecules/dropzone/DropzoneBase.tsx","../../../core/components/molecules/dropzone/DropzoneIcon.tsx","../../../core/components/molecules/dropzone/DropzoneActive.tsx","../../../core/components/molecules/dropzone/DropzoneError.tsx","../../../core/components/molecules/dropzone/Dropzone.tsx","../../../core/components/molecules/fileUploader/FileUploaderFormat.tsx","../../../core/components/molecules/fileUploader/FileUploaderButton.tsx","../../../core/components/molecules/fileUploader/FileUploader.tsx","../../../core/components/molecules/fileUploader/FileUploaderStatus.tsx","../../../core/components/molecules/fileUploader/FileUploaderItem.tsx","../../../core/components/molecules/fileUploader/FileUploaderList.tsx","../../../core/components/organisms/grid/columnUtility.tsx","../../../core/components/organisms/grid/rowUtility.tsx","../../../core/components/organisms/grid/utility.tsx","../../../core/components/organisms/grid/defaultProps.tsx","../../../core/components/organisms/grid/GridContext.ts","../../../core/components/organisms/grid/Cell.tsx","../../../core/components/organisms/grid/GridHead.tsx","../../../core/components/organisms/grid/GridNestedRow.tsx","../../../core/components/organisms/grid/GridRow.tsx","../../../core/components/organisms/grid/GridBody.tsx","../../../core/components/organisms/grid/Grid.tsx","../../../core/components/organisms/grid/GridCell.tsx","../../../core/components/organisms/table/DraggableDropdown.tsx","../../../core/components/organisms/table/Header.tsx","../../../core/components/organisms/table/utils.tsx","../../../core/components/organisms/table/Table.tsx","../../../core/components/organisms/list/List.tsx","../../../core/components/organisms/navigation/VerticalNavigation.tsx","../../../core/components/organisms/navigation/Navigation.tsx","../../../core/components/organisms/pageHeader/utils.tsx","../../../core/components/organisms/pageHeader/PageHeader.tsx","../../../core/components/molecules/fileList/FileIcon.tsx","../../../core/components/molecules/fileList/FileListItem.tsx","../../../core/components/molecules/fileList/FileList.tsx","../../../core/components/molecules/verificationCodeInput/VerificationCodeInput.tsx","../../../core/components/organisms/inlineMessage/InlineMessage.tsx","../../../core/components/organisms/choiceList/ChoiceList.tsx","../../../core/components/atoms/divider/Divider.tsx","../../../core/components/atoms/helpText/HelpText.tsx","../../../core/components/atoms/linkButton/LinkButton.tsx","../../../core/components/atoms/actionCard/ActionCard.tsx","../../../core/components/atoms/selectionCard/hooks/useMultiSelect.tsx","../../../core/components/atoms/selectionCard/hooks/useSingleSelect.tsx","../../../core/components/atoms/selectionCard/SelectionCard.tsx","../../../core/components/organisms/listbox/reorderList/utils.ts","../../../core/components/organisms/listbox/reorderList/Draggable.tsx","../../../core/components/organisms/listbox/reorderList/DraggableList.tsx","../../../core/components/organisms/listbox/utils.ts","../../../core/components/organisms/listbox/listboxItem/ListBody.tsx","../../../core/components/organisms/listbox/nestedList/Animation.tsx","../../../core/components/organisms/listbox/nestedList/NestedList.tsx","../../../core/components/organisms/listbox/listboxItem/ListboxItem.tsx","../../../core/components/organisms/listbox/Listbox.tsx","../../../core/components/organisms/textField/TextFieldCommon.tsx","../../../core/components/organisms/textField/TextFieldWithTextarea.tsx","../../../core/components/organisms/textField/TextFieldWithInput.tsx","../../../core/components/organisms/textField/TextField.tsx","../../../core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatar.tsx","../../../core/components/atoms/avatarSelection/AvatarSelectionContext.tsx","../../../core/components/atoms/avatarSelection/avatarsSelection/SelectionAvatarsWrapper.tsx","../../../core/components/atoms/avatarSelection/avatarsSelection/utils.tsx","../../../core/components/atoms/avatarSelection/avatarsSelection/AvatarSelectionCount.tsx","../../../core/components/atoms/avatarSelection/avatarPopover/utils.tsx","../../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionInput.tsx","../../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionList.tsx","../../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionOption.tsx","../../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionEmptyState.tsx","../../../core/components/atoms/avatarSelection/avatarPopover/AvatarSelectionPopover.tsx","../../../core/components/atoms/avatarSelection/AvatarSelection.tsx","../../../core/components/organisms/combobox/ComboboxList.tsx","../../../core/components/organisms/combobox/ComboboxContext.tsx","../../../core/components/organisms/combobox/utils.tsx","../../../core/components/organisms/combobox/ComboboxOption.tsx","../../../core/components/organisms/combobox/trigger/utils.tsx","../../../core/components/organisms/combobox/trigger/InputBox.tsx","../../../core/components/organisms/combobox/trigger/MultiselectTrigger.tsx","../../../core/components/organisms/combobox/trigger/ChipInputBox.tsx","../../../core/components/organisms/combobox/trigger/ComboboxTrigger.tsx","../../../core/components/organisms/combobox/Combobox.tsx","../../../core/components/organisms/select/SelectContext.tsx","../../../core/components/organisms/select/SelectList.tsx","../../../core/components/organisms/select/utils.tsx","../../../core/components/organisms/select/SelectOption.tsx","../../../core/components/organisms/select/SelectTrigger.tsx","../../../core/components/organisms/select/SearchInput.tsx","../../../core/components/organisms/select/SelectEmptyTemplate.tsx","../../../core/components/organisms/select/SelectFooter.tsx","../../../core/components/organisms/select/Select.tsx","../../../core/components/organisms/menu/MenuGroup.tsx","../../../core/components/organisms/menu/MenuContext.tsx","../../../core/components/organisms/menu/utils.tsx","../../../core/components/organisms/menu/SubMenuContext.tsx","../../../core/components/organisms/menu/MenuItem.tsx","../../../core/components/organisms/menu/MenuList.tsx","../../../core/components/organisms/menu/trigger/utils.tsx","../../../core/components/organisms/menu/trigger/MenuTrigger.tsx","../../../core/components/organisms/menu/SubMenu.tsx","../../../core/components/organisms/menu/Menu.tsx"],"sourcesContent":[null,null,null,null,"/******************************************************************************\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 */\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 __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: n === \"return\" } : 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",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"/* eslint-disable no-undefined,no-param-reassign,no-shadow */\n\n/**\n * Throttle execution of a function. Especially useful for rate limiting\n * execution of handlers on events like resize and scroll.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n * @param {boolean} [noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds while the\n * throttled-function is being called. If noTrailing is false or unspecified, callback will be executed one final time\n * after the last throttled-function call. (After the throttled-function has not been called for `delay` milliseconds,\n * the internal counter is reset).\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n * to `callback` when the throttled-function is executed.\n * @param {boolean} [debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is false (at end),\n * schedule `callback` to execute after `delay` ms.\n *\n * @returns {Function} A new, throttled, function.\n */\nfunction throttle (delay, noTrailing, callback, debounceMode) {\n /*\n * After wrapper has stopped being called, this timeout ensures that\n * `callback` is executed at the proper times in `throttle` and `end`\n * debounce modes.\n */\n var timeoutID;\n var cancelled = false; // Keep track of the last time `callback` was executed.\n\n var lastExec = 0; // Function to clear existing timeout\n\n function clearExistingTimeout() {\n if (timeoutID) {\n clearTimeout(timeoutID);\n }\n } // Function to cancel next exec\n\n\n function cancel() {\n clearExistingTimeout();\n cancelled = true;\n } // `noTrailing` defaults to falsy.\n\n\n if (typeof noTrailing !== 'boolean') {\n debounceMode = callback;\n callback = noTrailing;\n noTrailing = undefined;\n }\n /*\n * The `wrapper` function encapsulates all of the throttling / debouncing\n * functionality and when executed will limit the rate at which `callback`\n * is executed.\n */\n\n\n function wrapper() {\n for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {\n arguments_[_key] = arguments[_key];\n }\n\n var self = this;\n var elapsed = Date.now() - lastExec;\n\n if (cancelled) {\n return;\n } // Execute `callback` and update the `lastExec` timestamp.\n\n\n function exec() {\n lastExec = Date.now();\n callback.apply(self, arguments_);\n }\n /*\n * If `debounceMode` is true (at begin) this is used to clear the flag\n * to allow future `callback` executions.\n */\n\n\n function clear() {\n timeoutID = undefined;\n }\n\n if (debounceMode && !timeoutID) {\n /*\n * Since `wrapper` is being called for the first time and\n * `debounceMode` is true (at begin), execute `callback`.\n */\n exec();\n }\n\n clearExistingTimeout();\n\n if (debounceMode === undefined && elapsed > delay) {\n /*\n * In throttle mode, if `delay` time has been exceeded, execute\n * `callback`.\n */\n exec();\n } else if (noTrailing !== true) {\n /*\n * In trailing throttle mode, since `delay` time has not been\n * exceeded, schedule `callback` to execute `delay` ms after most\n * recent execution.\n *\n * If `debounceMode` is true (at begin), schedule `clear` to execute\n * after `delay` ms.\n *\n * If `debounceMode` is false (at end), schedule `callback` to\n * execute after `delay` ms.\n */\n timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);\n }\n }\n\n wrapper.cancel = cancel; // Return the wrapper function.\n\n return wrapper;\n}\n\n/* eslint-disable no-undefined */\n/**\n * Debounce execution of a function. Debouncing, unlike throttling,\n * guarantees that a function is only executed a single time, either at the\n * very beginning of a series of calls, or at the very end.\n *\n * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n * @param {boolean} [atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds\n * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.\n * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).\n * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n * to `callback` when the debounced-function is executed.\n *\n * @returns {Function} A new, debounced function.\n */\n\nfunction debounce (delay, atBegin, callback) {\n return callback === undefined ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false);\n}\n\nexport { debounce, throttle };\n//# sourceMappingURL=index.esm.js.map\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["colorToHex","color","getComputedStyle","document","documentElement","getPropertyValue","placeholders","_a","isPlaceholderPresent","placeholderChar","time","includes","isFormat12hour","format","get12hourFormat","hours","AMPM","hrs","get24hourFormat","am_pm","convertedHours","translateToTime","timeObj","getTimeObjectFromNumber","translateToString","d","Date","getHours","minutes","getMinutes","seconds","getSeconds","getTimeObjFromStr","separator","len","length","timeLength","lastChars","substring","is12hrFormat","timeFormat","inputFormat","v","split","forEach","f","i","getOutputTimeString","outputFormat","timeStr","val","isValid","validators","_i","value","iterator","Array","isArray","every","validator","date","validate","month","year","monthLength","p","date_1","date_2","date_3","date_4","date_5","date_6","hoursCond","isNaturalNumber","test","Math","floor","rangeDate","extractBaseProps","props","baseProps","basePropsObj","reduce","acc","curr","filterProps","propsList","include","Object","entries","filter","obj","AvatarContext","React","createContext","size","appearance","firstName","lastName","Provider","appearanceMapper","secondary","primary","alert","accent2","accent3","warning","success","accent1","accent4","AvatarIcon","contextProp","useContext","iconSize","iconAppearance","Icon","sizeMapper","regular","tiny","AvatarImage","children","src","_c","useState","error","setError","initials","trim","imgSize","TextClassNames","classNames","IconClassNames","_b","onError","Text","weight","className","name","alt","height","width","initialsLength","DefaultAppearance","colors","Avatar","withTooltip","tooltipPosition","shape","_e","role","slice","tooltip","AvatarAppearance","charCodeAt","AvatarClassNames","AvatarWrapperClassNames","_d","sharedProp","renderAvatar","AvatarProvider","renderTooltip","Tooltip","position","triggerClass","displayName","Image","defaultProps","AvatarCount","hiddenAvatarCount","avatarStyle","on","ContentClass","AvatarVariantsClass","style","Avatars","avatarList","GroupClass","avatars","map","item","index","icon","image","key","AvatarPopperBody","hiddenAvatarList","popperRenderer","maxHeight","dark","ind","AvatarTextClass","AvatarGroup","max","borderColor","popoverOptions","list","_f","_g","appendToBody","_h","popperClassName","min","backgroundColor","boxShadow","tinyAvatarStyle","AvatarGroupClass","popperClass","Popover","trigger","offset","useEffect","Backdrop","savedBodyOverflow","setBodyOverflow","open","setOpen","animate","setAnimate","classes","disableBodyScroll","body","setProperty","enableBodyScroll","overflow","window","setTimeout","BackdropElement","ReactDOM","createPortal","zIndex","Badge","subtle","RenderLink","onClick","onClickHandler","ev","preventDefault","link","Link","href","label","RenderItem","showTooltip","renderDropdown","options","customTrigger","Button","type","largeIcon","Dropdown","triggerSize","triggerOptions","menu","onChange","selected","Breadcrumbs","BreadcrumbClass","sizeMapping","large","ButtonElement","forwardRef","ref","iconAlign","tabIndex","expanded","loading","disabled","iconType","rest","buttonClass","iconClass","Spinner","yearBlockRange","yearsInRow","monthBlock","monthsInRow","daysInRow","months","days","small","config","getIndexOfDay","day","indexOf","getYearBlock","getDaysInMonth","getDate","getFirstDayOfMonth","getDay","getDateInfo","dateVal","convertToDate","getFullYear","getMonth","decadeYear","translateToDate","undefined","compareYearBlock","operator","currDecade","limitDecade","compareDate","currYear","currMonth","currDate","limitYear","limitMonth","limitDate","year_1","month_1","separator_1","f_1","out","year_2","month_2","v_1","dateComparison","currentDate","toDateString","__extends","_super","_this","setState","state","yearBlockNav","yearNav","monthNav","yearBlock","rangePicker","rangeLimit","startDateState","endDateState","hoverDateState","startYear","startMonth","startDate","endYear","endMonth","endDate","hoverYear","hoverMonth","hoverDate","setDate","updateState","view","isCurrentYear","isDisabled","onYearHover","yearData","isCurrentMonth","onMonthHover","monthData","prevMonthDayRange","dayRange","calculateDate","isDateHovered","neighbouringMonthIndex","neighbouringMonthDate","getNavDateInfo","onNavIconClickHandler","getDateValue","disabledBefore","disabledAfter","headerIconClass","currView","monthsInView","jumpView","yearNavVal","monthNavVal","headerContentClass","headerContent","renderHeading","content","Heading","onNavHeadingClickHandler","noOfRows","ceil","from","_y","row","_x","col","active","valueClass","textClass","getTextColor","inverse","white","selectYear","onMouseOver","yearMouseOverHandler","bind","selectMonth","monthMouseOverHandler","firstDayOfWeek","textSize","dayValue","onMouseLeave","onDateRowMouseLeaveHandler","renderDateValues","onDateHover","yearState","monthState","dateState","todayDate","prevMonth","prevYear","firstDayIndex","desiredFirstDayIndex","dayDiff","dummyDays","abs","inRangeError","getInRangeError","events","selectDate","onMouseOverHandler","onMouseEnterHandler","isToday","dayName","dateData","fullDate","dummy","today","boolVal","startActive","endActive","inRange","inRangeLast","sYear","sMonth","sDate","eYear","eMonth","eDate","isStart","isEnd","dateInString","monthInString","yearInString","completeDateString","isEventExist","hasOwnProperty","isRangeError","isStartActive","isEndActive","activeDate","isHoverBackwardLast","allowReverseSelection","isHoverForwardLast","isEdgeElement","isValueRange","wrapperClass","onMouseEnter","renderEventsIndicator","containerClass","headerClass","bodyClass","renderJumpButton","renderHeaderContent","renderBodyYear","renderBodyMonth","renderBodyDate","now","todayCompleteDate","Calendar","prevProps","prevState","isNaN","getTime","onDateChange","_j","onRangeChange","_k","_l","_m","_o","eventsIndicatorClass","renderCalendar","Component","Card","shadow","CardSubdued","border","CardHeader","CardBody","CardFooter","withSeperator","isSpaceKey","e","allowed","button","Set","checkbox","radio","isKeyboardInteractionAllowed","allowedKeys","has","useAccessibilityProps","onKeyDown","iconTypeMapper","timelapse","content_copy","speed","add_circle_outline","turned_in_not","important_devices","thumb_down_off_alt","alarm_on","calendar_view_month","aspect_ratio","change_history","arrow_circle_down","card_membership","query_builder","copyright","arrow_circle_up","alarm","work_outline","bookmark_border","delete_outline","credit_card","highlight_of","check_circle_outline","help_outline","schedule","radio_button_unchecked","radio_button_checked","accessibilityProps","mapper","outline","sharp","round","filled","getIconAppearance","iconColor","x","charAt","toUpperCase","styles","fontSize","isValidElement","GenericText","componentType","createElement","GenericChip","clearButton","onClose","labelPrefix","align","onCloseHandler","stopPropagation","onKeyDownHandler","event","textColor","renderLabel","Chip","clearbutton","select","chipClass","ChipGroup","ChipGroupClass","uidGenerator","dt","uuid","replace","c","r","random","s","toString","CheckboxIcon","viewBox","fill","xmlns","fillRule","clipRule","Checkbox","forwardedRef","defaultChecked","indeterminate","checkedProp","helpText","id","labelRef","useRef","useImperativeHandle","current","checked","setChecked","setIndeterminate","CheckboxClass","CheckboxOuterWrapper","CheckboxInputWrapper","CheckboxWrapper","CheckboxLabelClass","indeterminateValue","onChangeHandler","target","IconMapper","htmlFor","Column","sizeXS","sizeS","sizeM","sizeL","sizeXL","Trigger","inputOptions","init","onPasteHandler","onPaste","onBlurHandler","onBlur","hasNumber","onClearHandler","onClear","showError","required","errorMessage","caption","inputValidator","Utils","mask","InputMask","placeholder","utils","getDefaultValue","clearOnEmptyBlur","dbYear","dbMonth","dbDate","daYear","daMonth","daDate","dVal","closeOnSelect","o","getError","DatePicker","newError","showTodayDate","todayMonthAndDate","dateDisabledBefore","dateDisabledAfter","isTodayDisabled","isTodayDateDisabled","todayChipClass","onDateChangeHandler","withInput","onToggle","onToggleHandler","parseDate","date_time","setHours","setMinutes","isFormat12Hour","isTimeIn12HourFormat","_isTimeInAM","_isTimeInPM","convert12To24HourFormat","modifier","timeArr","parseInt","convertToTwoDigit","convert24To12HourFormat","hoursInString","result","getTimeIn24HrFormat","checkTimeDifference","startTime","endTime","parseStartTime","parseEndTime","get24HourTimeList","interval","timeList","push","toTimeString","getReverseTimeList","startTimeIndex","endTimeIndex","nextDayTimeIndex","presentDayList","nextDayList","concat","getTimeListIn24HourFormat","getTimeDifference","timeStart","timeEnd","diff","diff_as_date","hour","getUTCHours","minute","getUTCMinutes","getCustomLabel","showDuration","referenceTime","timeDiffLabel","isOptionDisabled","disabledSlotList","timeValue","convertTimeToOptionList","optionList","optionID","computeEndTime","getDropdownOptionList","startTimeIn24Hr","endTimeIn24Hr","dropdownOptionList","convertMinTo60","parseNum","timeInNum","get24HourCurrentTime","convertHourTo24","convertHourTo12","_checkNumber","str","numberRegex","_checkNumberWithAMPM","numberWithAMPMRegex","_checkNumberWithSpecialChar","numberWithSpecialCharRegex","_checkNumberWithSpecialCharAMPM","numberWithSpecialCharAMPM","specialCharRegex","getTimeFromNumberWithSpecialChar","searchTime","hh","mm","getSearchTimeFromNumber","searchTerm","show12HourFormat","searchLen","searchTimeInNum","firstTwoTerm","getTimeFromNumberWithAMPM","formatSearchTerm","searchTimeInHHMM","getCurrentRelativeTime","timeWithoutAMPM","searchTimeStr","currentTime","greaterTime","currentTimeIndex","findClosestTimeIndex","searchTimeIndex","hourIn24Format","searchItem","closestItemIndex","minTime","mins","getSearchIndex","searchIndex","countNumberInStr","match","isValidSearchTerm","totalDigit","getValueFromOptionList","option","getSearchValueIndex","getScrollIndex","currTime","currTimeIndex","getSearchedOptions","toLowerCase","sortList","arr","sort","a","b","_isEqual","firstList","secondList","firstSortedList","secondSortedList","_isControlled","_isOpenControlled","_showSelectedItems","bulk","withCheckbox","_isSelectAllPresent","bulkOptions","withSelectAll","scrollTo","element","top","scrollIntoView","menuElement","focusedElement","menuRect","getBoundingClientRect","focusedRect","overscroll","offsetHeight","bottom","offsetTop","getSelectAll","optionsLength","disabledOptionsLength","scrollToOptionIndex","scrollIndex","listOptions","targetOption","getElementById","block","groupListOptions","groupList","group","flattenedGroupList","values","flatMap","TimePickerWithSearch","noResultMessage","fetchTimeOptions","setTabIndex","openPopover","setOpenPopover","selectedIndex","setSelectedIndex","counter","setCounter","timer","clearTimeout","selectIndex","findIndex","getOptionList","indexValue","Promise","resolve","count","scrollToIndex","fetchOptionList","loadersCount","withSearch","searchPlaceholder","fetchOptions","staticLimit","onPopperToggle","TimePickerWithInput","onTimeChange","timeProp","setTime","setInit","updatedTime","outputTimeStr","TimePicker","DropdownButton","inlineLabel","buttonDisabled","trimmedPlaceholder","iconName","CheckboxOption","optionData","onUpdateActiveOption","dataTest","subInfo","renderSubInfo","labelAppearance","seperator","MetaList","seperatorAppearance","DefaultOption","textClassName","MetaOption","IconOption","OptionClass","IconWithMetaOption","OptionTypeMapping","Option","updateActiveOption","checkboxes","optionType","component","OptionClassName","CheckboxClassName","truncateOption","customOptionClass","optionRenderer","subInfoColor","PlaceholderParagraph","PlaceholderImage","Placeholder","imageSize","withImage","paragraphClasses","Loading","loadingType","optionIndex","placeholderSizes","errorTitle","FAILED_TO_FETCH","NO_RECORDS_FOUND","DEFAULT","errorDescription","ErrorTemplate","dropdownStyle","errorType","updateOptions","alignmentMapping","right","left","DropdownList","inputRef","applyButtonLabel","cancelButtonLabel","tempSelected","previousSelected","remainingOptions","firstEnabledOption","dropdownOpen","showApplyButton","onSearchChange","applyOptions","cancelOptions","toggleDropdown","loadingOptions","dropdownRef","createRef","triggerRef","dropdownTriggerRef","dropdownCancelButtonRef","dropdownApplyButtonRef","popoverStyle","setPopoverStyle","_p","cursor","setCursor","_q","minHeight","setMinHeight","getMinHeight","dropdownWrapper","querySelector","isDropdownListBlank","minWidth","maxWidth","popperWidth","clientWidth","popperMinWidth","popperWrapperStyle","requestAnimationFrame","_r","_s","triggerLabel","CustomTrigger","NewCustomTrigger","cloneElement","overflowY","overflowX","loaderStyle","defaultErrorTemplate","getDropdownSectionClass","showClearButton","dropdownClass","dropdownWrapperClass","SelectAllClass","onToggleDropdown","focus","onCancelOptions","onApplyOptions","optionClickHandler","onOptionSelect","searchClearHandler","searchHandler","parentCheckbox","updatedIndex","async","renderFooter","footerLabel","renderGroups","selectedGroup","onClearOptions","isClearDisabled","renderApplyButton","disable","renderSearch","Input","autoFocus","autoComplete","renderLoading","loadersLength","renderSelectAll","selectAllLabel","selectAll","onSelectAll","renderOptions","selectAllPresent","optionIsSelected","onSelect","renderDropdownSection","selectedSectionLabel","allItemsSectionLabel","errorTemplate","groupedListOptions","prevGroup","currentGroup","isGroupDifferent","focusOption","direction","elements","querySelectorAll","updatedCursor","startIndex","endIndex","node","getAttribute","onkeydown","optionClass","activeElement","click","currentElement","disabledApplyButton","enableSearch","customStyle","filteredOptions","selected_1","unSelectedGroup","updatedAsync","fetchFunction","fetchOptionsFunction","then","res","getUnSelectedOptions","getSelectedOptions","disabledOptions","getDisabledOptions","errorResult","searchedOptionsLength","updateTriggerLabel","search","searchInit","popperIsOpen","disabledOptionsCount","temporarySelected","moveSelectedGroup","debounceOnClose","debounce","selectedArray","totalOptions","selectedLength","getLabel","customLabel","labelLimit","join","isSingleSelect","isControlled","updatePreviousSelected","isClearClicked","debounceClear","selectedValues","temp","onUpdate","isValidOption","updateSelectedOptions","splice","selectedArr","selectedDisabledArray","searchDebounceDuration","onTogglePopper","optionsApplied","updatedOpen","debounceSearch","updateOnPopperToggle","remainingOptionsLen","updateSearchTerm","reload","sizeMap","m","l","xl","xxl","ActionButton","defaultValue","info","onFocus","actionIcon","readOnly","isInputBlank","setIsInputBlank","preventScroll","inputClass","leftIconClass","rightIconClass","assign","capMin","Infinity","capMax","MetricInput","prefix","suffix","valueProp","showActionButton","isUncontrolled","setValue","prefixClass","suffixClass","actionButton","onArrowClick","newValue","Number","decimalDigits","toFixed","syntheticEvent","create","handleKeyDown","actionButtonSize","isEditable","pos","useCallback","getNewCursorPosition","getDefaultSelection","start","end","getPlaceholderValue","defaultPlaceholderValue","useMemo","defaultSelection","deferId","selectionPos","newSelectionPos","setCursorPosition","getSelectionLength","getCurrSelection","selectionStart","selectionEnd","setSelectionRange_compatible_types","setSelectionPos","el","setSelectionRange","el_type","insertAtIndex","currValue","newIndex","newIterator","updateSelection","matchSeparatorValue","isSameFormat","inputLength","startVal","endVal","pastedValue","clipboardData","getData","sameFormat","isValidDate","inputVal","currentTarget","currSelection","cursorPosition","enteredVal","updatedVal","removedLength","insertedStringLength","oldValue","maskedVal","enteredValue","newCursorPosition","cancelAnimationFrame","onFocusHandler","isValueEqualPlaceholder","HelpText","message","X","Label","optional","LabelClass","renderInfo","isRequired","isOptional","renderIndicator","Caption","hide","errorIconClass","Legend","labelWeight","legendClass","background","Editable","editing","EditableClass","EditableDropdown","dropdownOptions","customTriggerRenderer","onDropdownChange","onDropdownClose","setLabel","setEditing","showComponent","setShowComponent","CompClass","DefaultCompClass","EditableDropdownClass","updatedLabel","eventType","renderComponent","componentLabel","IconMapping","Message","actions","title","MessageClass","IconClass","TitleClass","DescriptionClass","renderDescription","description","Meta","MetaClass","SeperatorClass","LeftSeperatorClass","rightSeperator","ARROW_LEFT","ARROW_RIGHT","formatPercentage","ratio","countDecimalPlaces","isFinite","valueArray","approxEqual","tolerance","clamp","arraysEqual","oldValues","newValues","argMin","argFn","minValue","minArg","arg","fillValues","fillValue","inc","isElementOfType","isHandleMoving","isHandleHovered","handle","handleElement","clientX","clientPixel","stepSize","tickSize","clientPixelNormalized","getHandleMidpointAndOffset","handleMidpoint","handleOffset","handleCenterPixel","pixelDelta","callback","updatedValue","mouseEventClientOffset","onRelease","removeDocumentEventListeners","finalValue","changeValue","clientToValue","addEventListener","continueHandleMovement","endHandleMovement","keyCode","Keys","useOppositeDimension","handleRect","sizeKey","removeEventListener","Handle","_prevProps","tickSizeRatio","isCurrentLabelHovered","showTootlip","offsetRatio","offsetCalc","TooltipClass","handleMouseOver","handleMouseLeave","onMouseDown","beginHandleMovement","onKeyUp","handleKeyUp","refHandlers","MultiSliderHandle","labelPrecision","handleElements","maybeHandles","Children","child","handles","trackElement","trackSize","fillAfter","fillBefore","canHandleTrackEvent","closest","foundHandle","nearestHandleForValue","oldIndex","handleProps","getHandleValues","lockIndex","getLockedHandleIndex","lockValue","onRangeRelease","getNewHandleValues","range","labelRenderer","labelValue","hoveredLabelValue","onReleaseHandler","formatLabel","addHandleRef","labelStepSize","labels","stepSizeRatio","activeLabels","offsetPercentage","SliderTicksClass","handleLabelMouseOver","handleLabelMouseLeave","getOffsetRatio","startRatio","endRatio","startOffset","endOffset","orientationStyle","fillTrack","getTrackFill","trackStops","previous","track","renderTrackFill","getLabelPrecision","MultiSlider","prevHandleProps","newHandleProps","updateTickSize","getOffset","offsetValue","handleValue","SliderClass","WrapperClass","maybeHandleTrackClick","renderTracks","renderLabels","renderHandles","OutsideClick","onOutsideClick","innerRef","handleOutsideClick","contains","Paragraph","ProgressBar","ProgressBarClass","ProgressIndicatorClass","Radio","RadioClass","RadioWrapper","RadioOuterWrapper","RadioLabelClass","Row","StatusHint","truncateLabel","StatusHintClass","StatusHintIconClass","StatusHintTextClass","Pills","wrapperClasses","circleClasses","Circle","svgProps","circleProps","cx","cy","strokeMiterlimit","strokeWidth","Slider","RangeIndex","RangeSlider","START","END","Subheading","Switch","SwitchClass","SwitchWrapper","Textarea","rows","resize","Toast","titleClass","headingClass","action","oldStyle","placement","newStyle","marginBottom","offsetMapping","marginTop","marginRight","marginLeft","triggerCoordinates","transform","y","animationKeyframe","isOpen","uniqueKey","hoverableDelay","medium","popupRef","getPopperChildren","mouseMoveHandler","handleMouseEnter","boundaryScrollHandler","PopperWrapper","addBoundaryScrollHandler","triggerElement","getZIndexForLayer","boundaryElement","removeBoundaryScrollHandler","_throttleWait","animationClass","closeOnScroll","togglePopper","_timer","hoverable","layerNode","shouldPopoverClose","clicked","popover","container","popoverIndex","clickInsideLayer","shouldClose","openedLayers","layer","clickedIndex","isEqualNode","onOutsideClickHandler","closeOnBackdropClick","doesEventContainsElement","outOfBoundaries","getUpdatedStyle","childrenStyles","transformStyles","uniqueKey_1","isTop","popperAnimation","popperAnimationStyles","animation","close","childProps","onAnimationEnd","coordinatesPopper","Popper","modifiers","preventOverflow","boundariesElement","enabled","Manager","Reference","getTriggerElement","hideOnReferenceEscape","defaultOnToggle","newOpen","PopoverWrapper","keyCodes","BACKSPACE","DELETE","ENTER","ChipInput","chipOptions","allowDuplicates","chips","setChips","inputValue","setInputValue","ChipInputBorderClass","ChipInputClass","onUpdateChips","updatedChips","onChipDeleteHandler","onChipAddHandler","chip","onDeleteAllHandler","chipsLength","onInputChangeHandler","chipComponents","getTextAppearance","isActive","getPillsAppearance","getMenu","menus","menus_1","subMenu","activeMenu","find","submenu","getExpandedMenus","expandedMenus","menus_2","isActiveOrExpanded","isMenuActive","currActiveMenu","getNavItemColor","MenuIcon","isChildrenVisible","MenuPills","PillsClass","MenuItem","rounded","hasSubmenu","isChildren","customItemRenderer","isTextTruncated","setIsTextTruncated","detectTruncation","useAutoTooltip","contentRef","isTruncated","MenuLabel","labelColor","itemColor","ItemClass","renderSubMenu","customItemProps","VerticalNav","autoCollapse","subMenuExpandedState","setSubMenuExpandedState","menuState","setMenuState","currMenu","updateMenuState","nameSplit","name_1","menuData","renderList","hasGroup","sectionClass","Fragment","HorizontalNav","getPillsClass","renderIcon","menuClasses","tooltipPropsList","positionValue","boundaryRef","scrollWidth","showOnTruncation","elementRef","childrenRef","setIsTruncated","renderChildren","tooltipWrapper","Dialog","dimension","primaryButtonAppearance","secondaryButtonAppearance","heading","primaryButtonLabel","primaryButtonCallback","secondaryButtonLabel","secondaryButtonCallback","Modal","headerOptions","footer","ModalDescription","OverlayFooter","wrapperRef","secondaryBtns","secondaryBtn_1","OverlayHeader","subHeading","backButton","backIcon","backIconCallback","backButtonCallback","subheadingClass","OverlayBody","stickFooter","withFooter","getWrapperElement","classList","add","appendChild","getUpdatedZIndex","ele","containerClassName","siblings","prevZIndex","closeOnEscapeKeypress","isTopOverlay","overlays","OverlayManager","overlay","overlayIdx","instance","freeze","modalRef","closeOnEscape","backdropClose","remove","header","footerOptions","BackdropZIndex","footerClass","ContainerClass","isAPINew","ModalContainer","ModalWrapper","WrapperElement","ModalHeader","ModalBody","ModalFooter","FullscreenModal","sidesheetWidth","sidesheetRef","Sidesheet","SidesheetContainer","handleAnimationEnd","SidesheetWrapper","Collapsible","expandedWidth","withTrigger","isClicked","setIsClicked","setSeperator","scrollHeight","clientHeight","BodyClass","FooterClass","newExpanded","Status","readText","failedText","sendingText","StatusClass","TextClass","t","Box","isTyping","statusType","withStatus","MessageText","text","typingText","ChatMessage","statusOptions","EmptyStateContext","imageHeight","standard","compressed","tight","EmptyStateImage","imageClasses","imageWrapperClasses","sizeStyle","EmptyStateTitle","EmptyStateDescription","descriptionClasses","EmptyStateActions","actionWrapperClasses","templateWidth","HeadingSize","EmptyState","imageSrc","templateSize","isValidSize","emptyStateWrapper","headingClasses","textClasses","templateMaxWidth","Title","Description","Actions","Pagination","totalPages","onPageChange","pageJumpDebounceDuration","page","setPage","debounceCancelCounter","setDebounceCancelCounter","debouncePageChange","nextButtonWrapperClass","prevButtonWrapperClass","cancel","prev","inputChangeHandler","onKeyPressHandler","buttonType","onKeyPress","EditableInput","disableSaveAction","onInputChange","EditableInputClass","EditableDefaultClass","InputClass","ActionClass","setDefaultComponent","onSaveChanges","inputComponent","InlineMessage","EditableChipInput","chipInputOptions","onChipInputChange","chipObject","isWithChips","actionClass","defaultClasses","onChipInputChangeHandler","onChipDelete","renderDefaultState","ProgressRing","radius","circumference","PI","ProgressRingClass","Ring","strokeDasharray","strokeDashoffset","Step","completed","StepClass","onClickHandle","Stepper","steps","skipIndexes","stepLabel","stepValue","StepperClass","step","isSkipped","activeStep","completedStep","steplabel","stepvalue","startInputOptions","endInputOptions","startError","endError","updateNav","startPlaceholderChar","endPlaceholderChar","showStartError","showEndError","startErrorMessage","endErrorMessage","startLabel","endLabel","SingleInputTrigger","startValue","endValue","sValue","eValue","endD","startD","isEndDateValid","isStartDateValid","getErrorState","currentVal","siblingVal","startErr","endErr","getCurrentYear","currentYear","getCurrentMonth","currentMonth","getCurrentWeek","currentDay","getPreviousWeek","getPreviousMonth","getPrevious90Days","getCustomDates","isError","singleInput","getErrors","DateRangePicker","onRangeChangeHandler","contentAlign","RangePickerClass","TabsWrapper","onTabChange","tabs","totalTabs","setActiveTab","tabClickHandler","TabsHeader","tabHeaderClass","Tab","getChildrenArray","filterTabs","childrenArray","filterInlineComponent","inlineComponent","Tabs","withSeparator","headerClassName","tabRefs","activeIndex","getActiveTabClass","activeTab","activeTabClass","tabContentClass","isKeyboard","blur","tabKeyDownHandler","prevElement","nextElement","tab","renderDismissIcon","onDismiss","dismissIconClass","tabInfo","currentTabIndex","renderTab","isDismissible","textAppearance","tabTextClass","renderTabs","currentTabProp","accepts","file","acceptedFiles","acceptedFilesArray","fileName_1","mimeType_1","baseMimeType_1","some","validType","endsWith","isPropagationStopped","cancelBubble","isEvtWithFiles","dataTransfer","files","prototype","call","types","onDocumentDragOver","composeEventHandlers","fns","args","fn","reducer","isFocused","isFileDialogActive","isDragActive","draggedFiles","fileRejections","fileErrorMessages","FILE_INVALID_TYPE","FILE_TOO_LARGE","FILE_TOO_SMALL","TOO_MANY_FILES","isDefined","getInvalidTypeRejectionErr","accept","updatedAccept","messageSuffix","getTooLargeRejectionErr","maxSize","getTooSmallRejectionErr","minSize","fileAccepted","isAcceptable","fileMatchSize","getFileError","multiple","typeError","accepted","sizeError","sizeMatch","allFilesAccepted","COMMON_MIME_TYPES","Map","FILES_TO_IGNORE","fromEvent","evt","isDragEvt","getDataTransferFiles","getInputFiles","toFileWithPath","path","withMimeType","webkitRelativePath","defineProperty","writable","configurable","enumerable","hasExtension","lastIndexOf","ext","pop","get","isInput","fromList","items","kind","all","toFilePromises","noIgnoredFiles","flatten","webkitGetAsEntry","fromDataTransferItem","entry","isDirectory","fromDirEntry","getAsFile","reject","fwp","fromEntry","fromFileEntry","reader","createReader","readEntries","batch","err_1","err","fullPath","initialState","isDragAccept","isDragReject","DropzoneBase","onDragEnter","onDragLeave","onDragOver","onDrop","onDropAccepted","onDropRejected","onFileDialogCancel","getFilesFromEvent","preventDropOnDocument","rootRef","useReducer","dispatch","openFileDialog","onWindowFocus","onKeyDownCb","onFocusCb","onBlurCb","dragTargetsRef","onDocumentDrop","HTMLDivElement","onDragEnterCb","persist","onDragOverCb","dropEffect","onDragLeaveCb","targets","targetIdx","onDropCb","acceptError","customErrors","errors","filteredErrors","composeDragHandler","getRootProps","refKey","onDragEnterCallback","onDragOverCallback","onDragLeaveCallback","onDropCallback","onInputElementClick","getInputProps","inputProps","display","fileCount","fileError","svgCode","DropzoneIcon","IconStyle","DropzoneActive","DropzoneError","Dropzone","sizeLabel","sampleFileLink","DropzoneClass","renderDropzone","buttonAccessibilityProps","FileUploaderFormat","FileUploaderButton","uploadButtonLabel","FileUploaderButtonClass","fileList","FileUploader","FileUploaderClass","FileUploaderStatus","progress","status","onRetry","FileUploaderItem","onDelete","FileItemClass","FileUploaderList","FileListClass","fileName","resizeCol","updateColumnSchema","elX","resizable","pageX","sortColumn","sortingList","updateSortingList","newSortingList","pinColumn","schemaUpdate","pinned","hideColumn","hidden","getWidth","isPercent","checkboxCell","checkboxWidth","gridWidth","getCellSize","cellType","sizes","AVATAR","AVATAR_WITH_TEXT","AVATAR_WITH_META_LIST","ICON","minWdth","STATUS_HINT","WITH_META_LIST","updateBatchData","data","rowIndexes","dataUpdate","selectDisabledRow","updatedData","rowIndexes_1","rowIndex","translateData","schema","newData","translate","translatedData","filterData","filterList","filteredData","keys","schemaName","filters","sIndex","onFilterChange","sortData","sortedData","defaultComparator","aData","bData","localeCompare","comparator","reverse","paginateData","pageSize","paginatedData","moveToIndex","to","newArr","getTotalPages","totalRecords","tableData","clearSelection","anyUnSelected","_selected","allUnSelected","hasSchema","getSchema","loaderSchema","response","getPluralSuffix","showHead","showFilters","context","GridProvider","HeaderCell","GridContext","setIsDragged","colIndex","onMenuChange","reorderColumn","headProps","draggable","showMenu","headCellTooltip","schemaProp","sorting","isValidSchema","listIndex","sorted","sortOptions","pinOptions","unpinOption","hideOptions","unsortOption","filterOptions","fl","headerCellRenderer","BodyCell","expandedState","nestedRowData","nestedRows","setExpanded","cellProps","cellRenderer","GridCell","Cell","isHead","firstCell","isDragged","cellClass","onDragStart","setData","onDrag","onMouseUpCapture","onDragEnd","GridHead","pinnedSchema","leftPinnedSchema","rightPinnedSchema","unpinnedSchema","renderCheckbox","show","renderSchema","currSchema","shouldRenderCheckbox","cI","GridNestedRow","nestedRowRenderer","GridRow","onRowClick","rI","rowRef","rowClasses","nestedProps","GridBody","withPagination","prevPageInfo","updatePrevPageInfo","gridBodyEl","scrollTop","isLastPage","dataLength","renderRow","getArrayList","gridHeadEl","gridRef","isHeadSyncing","isBodySyncing","scrollLeft","newSchema","updateSchema","updateRenderedSchema","fromInd","toInd","updateFilterList","newFilterList","pageInfo","Grid","forceRerender","forceUpdate","removeScrollListeners","addScrollListeners","syncScroll","renderTitle","cellData","renderMetaList","metaList","renderStatusHint","statusAppearance","DraggableDropdown","tempOptions","setTempOptions","triggerWidth","setTriggerWidth","handleParentChange","handleChildChange","newOptions","onCancelHandler","onApplyHandler","Header","displayData","globalActionRenderer","dynamicColumn","allowSelectAll","customSelectionLabel","selectedRowsRef","selectedAllRef","onClearSelection","onSelectAllRows","selectionActionRenderer","uniqueColumnName","selectAllRecords","setSelectAllRecords","flag","setFlag","selectedCount","selectedRowsCount","showSelectedRowLabel","showSelectedLabel","setShowSelectedLabel","animateSelectedLabel","setAnimateSelectedLabel","animateUnSelectedLabel","setAnimateUnSelectedLabel","onUnSelectAnimationEnd","onSelectAnimationEnd","unselectedRowLabelClass","selectedRowLabelClass","filterSchema","columnOptions","onDynamicColumnUpdate","__assign","colSchema","getUnSelectedRowLabel","getSelectedRowLabel","Divider","vertical","isElementPresent","getUpdatedData","selectedList","isCancelSelection","isSelectAll","uniqueByKey","removeDuplicate","errorMessages","multipleSorting","paginationType","filterPosition","searchUpdate","debounceUpdate","updateDataFn","fetchData","dataProp","onSearch","opts","dataReplica","JSON","parse","stringify","preSelectedRows","clearSelectionRef","selectedData","selectAllRef","searchedData","renderedData","renderedSchema","renderedDataReplica","indexes_1","_","newData_1","indexes","rowData","selectedItemList","resetClearSelection","headerCheckbox","item1","item2","newPage","newSearchTerm","Table","updateData","withHeader","headerChildren","headerAttr","List","VerticalNavigation","activeMenuIcon","menuIconClasses","subMenuClasses","footerClasses","Navigation","renderNavigation","meta","navigationPosition","navigation","statusClasses","Action","stepper","Nav","CenterNav","colSize","breadcrumbs","BackButton","badge","PageHeader","centerNavProps","statusProps","audio","video","application","others","FileIcon","fileType","uploadingIconClass","FileListItem","fileItem","fileSize","FileList","actionRenderer","KEY_CODE","backspace","up","down","E","VerificationCodeInput","fields","onComplete","initialValues","initialRefs","__spreadArrays","setValues","refs","completeValue","dataset","fieldValue","nextRef","nextIndex","prevIndex","vals","wrapperClassNames","InlineMessageClass","IconSize","TextWeight","handleOnChange","ChoiceListDisabled","alignment","checkboxIndex","getCheckboxClassName","renderRadio","radioIndex","getRadioClassName","ChoiceListCheckboxClass","ChoiceListRadioClass","ChoiceList","choices","allowMultiple","selectedChoiceValue","ChoiceListClass","ChoiceListVerticalClass","ChoiceHorizontalClass","DividerClass","LinkButton","ActionCard","selectedCardValues","useMultiSelect","selectedCardIds","setSelectedCardIds","isCardSelected","updateCardSelection","idList","cardKey","set","useSingleSelect","setSelectedCardValues","valueList","SelectionCard","cardValue","overlayZIndex","arrayMove","array","getTranslateOffset","isTouchEvent","touches","changedTouches","transformItem","offsetY","offsetX","removeProperty","setItemTransition","duration","timing","binarySearch","targetValue","guess","schd","lastArgs","frameId","wrapperFn","AUTOSCROLL_ACTIVE_OFFSET","AUTOSCROLL_SPEED_RATIO","itemDragged","itemDraggedOutOfBounds","selectedItem","initialX","initialY","targetX","targetY","targetHeight","targetWidth","scrollingSpeed","scrollWindow","listEl","listRef","pageXOffset","pageYOffset","doScrolling","topOffsets","getChildren","itemTranslateOffsets","dropTimeout","finishDrop","isTouch","getTargetIndex","listItemTouched","isValidDragHandle","passive","touchAction","schdOnEnd","schdOnTouchMove","schdOnMouseMove","listItemDragged","onStart","clientY","listScroll","needle","targetRect","targetStyles","calculateOffsets","initialYOffset","getYOffset","lastYOffset","lastListYOffset","cancelable","onMove","lastScroll","deltaY","moveOtherItems","ghostRef","lockVertically","autoScrolling","itemVerticalCenter","currentYOffset","isDraggedItemOutOfBounds","removableByMove","afterIndex","animateItems","viewportHeight","innerHeight","movedItem","animateMovedItem","transitionDuration","initialRect","removeItem","onMouseMove","onTouchMove","onEnd","Draggable","onMouseOrTouchStart","capture","baseStyle","userSelect","WebkitUserSelect","MozUserSelect","msUserSelect","boxSizing","ghostStyle","listStyleType","margin","isHidden","isSelected","visibility","renderItem","isOutOfBounds","onWheel","DraggableList","Tag","Listbox","toArray","parentProps","childList","setChildList","updatedList","isDisabledElement","getNextSibling","parentNode","nextSibling","firstChild","getPrevSibling","previousSibling","iterateElement","sourceElement","ListBody","activated","ListboxContext","itemClass","getAnimationClass","getHeight","listItemRef","menuItemAnimation","usePrevious","NestedList","nestedBody","keyframe","setKeyframe","setAnimation","animationFillMode","ListboxItem","showDivider","tagClass","tagName","Item","RenderHelpText","RenderCounter","inputText","TextFieldWithTextarea","textareaRef","setInputText","helptextWidth","setHelptextWidth","inputError","textarea","ResizeObserver","resizeObserver_1","offsetWidth","observe","disconnect","TextFieldWithInput","TextField","withTextarea","SelectionAvatar","AvatarSelectionContext","SelectionAvatarsWrapper","avatarRenderer","setSelectedItems","selectedItems","avatarItem","setHighlightFirstItem","setHighlightLastItem","focusListItem","setFocusedOption","searchInput","listItems","AvatarSelectionCount","popoverId","selectedItemCount","setSelectedItemCount","wrapperClassName","data1","data2","focusedOption","navigateOptions","handleEnterKey","handleInputKeyDown","AvatarSelectionInput","AvatarSelectionList","AvatarSelectionOption","onSelectHandler","avatarData","AvatarSelectionEmptyState","AvatarSelectionItem","setShowTooltip","AvatarSelectionPopover","searchComparator","searchList","setSearchList","searchValue","setSearchValue","onSearchHandler","startsWith","SelectionAvatarInput","AvatarSelection","highlightFirstItem","highlightLastItem","AvatarSelectionClass","searchInputHeight","searchBorder","popoverProps","triggerProps","ComboboxList","ComboboxContext","inputTriggerRef","multiSelect","listArr","ComboboxOption","onOptionClick","isSelectedOption","behavior","InputBox","MultiSelectTrigger","isChipExist","chipLabel","ChipInputBox","chipInputValue","setChipInputValue","setChipInputText","onUpdateHandler","ComboboxTrigger","chipValue","Combobox","wrapperStyle","setWrapperStyle","isOptionSelected","setIsOptionSelected","chipInputText","chipList","outsideClickHandler","SelectContext","SelectList","mapInitialValue","selectedValue","elementExist","targetObject","mainList","removeOrAddToList","prevList","newList","existingIndex","computeValue","selectValue","pair","handleKeyDownTrigger","SelectOption","checkedState","setSelectValue","SelectTrigger","withClearButton","displayValue","emptyValue","SearchInput","setWithSearch","SelectEmptyTemplate","SelectFooter","Select","popoverWidth","mapValue","triggerStyle","setFocusFirstItem","setFocusLastItem","EmptyTemplate","Footer","MenuGroup","MenuContext","menuTriggerRef","subListRef","isSubMenuTrigger","menuID","triggerID","parentListRef","navigateSubMenu","menuPlacement","SubMenuContext","subMenuContextProp","setParentOpen","MenuItemClassName","handlePopoverOpen","handlePopoverClose","MenuList","MenuTrigger","triggerClassName","SubMenu","submenuTrigger","submenuContent","subMenuElement","children_1","Menu","popoverClassName","Group"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAAO,IAAMA,UAAU,GAAG,SAAbA,UAAa,CAACC,KAAD;IAAmB,SAAAC,gBAAgB,CAACC,QAAQ,CAACC,eAAV,CAAhB,CAA2CC,gBAA3C,CAA4D,OAAKJ,KAAjE,CAAA;IAAyE,CAA/G;;;;;;;;;ICSA,IAAMK,YAAY,eACvBC,KAAC,QAAD,GAAW,SACXA,KAAC,WAAD,GAAc,gBAFS,CAAlB;IAKA,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACC,eAAD,EAA0BC,IAA1B;IAClC,SAAOA,IAAI,IAAIA,IAAI,CAACC,QAAL,CAAcF,eAAd,CAAf;IACD,CAFM;IAIA,IAAMG,cAAc,GAAG,SAAjBA,cAAiB,CAACC,MAAD;IAC5B,SAAOA,MAAM,KAAK,UAAlB;IACD,CAFM;;IAIP,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD;IACtB,MAAMC,IAAI,GAAGD,KAAK,GAAG,EAAR,GAAa,IAAb,GAAoB,IAAjC;IACA,MAAME,GAAG,GAAGF,KAAK,GAAG,EAAR,IAAc,EAA1B;IACA,SAAO;IAAEE,IAAAA,GAAG,KAAL;IAAOD,IAAAA,IAAI;IAAX,GAAP;IACD,CAJD;;IAMA,IAAME,eAAe,GAAG,SAAlBA,eAAkB,CAACH,KAAD,EAAgBI,KAAhB;IACtB,MAAIC,cAAc,GAAGL,KAArB;;IAEA,MAAII,KAAJ,EAAW;IACT,QAAIA,KAAK,KAAK,IAAV,IAAkBJ,KAAK,GAAG,EAA9B,EAAkC;IAChCK,MAAAA,cAAc,GAAGL,KAAK,GAAG,EAAzB;IACD,KAFD,MAEO,IAAII,KAAK,KAAK,IAAV,IAAkBJ,KAAK,KAAK,EAAhC,EAAoC;IACzCK,MAAAA,cAAc,GAAGL,KAAK,GAAG,EAAzB;IACD;;IAED,WAAOK,cAAP;IACD;;IAED,SAAOL,KAAP;IACD,CAdD;;IAgBO,IAAMM,eAAe,GAAG,SAAlBA,eAAkB,CAACR,MAAD,EAAiBH,IAAjB;IAC7B,MAAI,CAACA,IAAL,EAAW,OAAO,EAAP;;IAEX,MAAI,OAAOA,IAAP,KAAgB,QAApB,EAA8B;IAC5B,QAAMY,OAAO,GAAGC,uBAAuB,CAACV,MAAD,EAASH,IAAT,CAAvC;IACA,WAAOc,mBAAiB,CAACX,MAAD,EAASS,OAAT,CAAxB;IACD;;IAED,SAAOZ,IAAP;IACD,CATM;;IAWP,IAAMa,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACV,MAAD,EAAiBH,IAAjB;IAC9B,MAAMe,CAAC,GAAG,IAAIC,IAAJ,CAAShB,IAAT,CAAV;IACA,MAAMO,GAAG,GAAGQ,CAAC,CAACE,QAAF,EAAZ;IAEA,MAAMZ,KAAK,GAAGH,cAAc,CAACC,MAAD,CAAd,GAAyBC,eAAe,CAACG,GAAD,CAAf,CAAqBA,GAA9C,GAAoDA,GAAlE;IACA,MAAME,KAAK,GAAGP,cAAc,CAACC,MAAD,CAAd,GAAyBC,eAAe,CAACG,GAAD,CAAf,CAAqBD,IAA9C,GAAqD,EAAnE;IACA,MAAMY,OAAO,GAAGH,CAAC,CAACI,UAAF,EAAhB;IACA,MAAMC,OAAO,GAAGL,CAAC,CAACM,UAAF,EAAhB;IACA,SAAO;IAAEhB,IAAAA,KAAK,OAAP;IAASa,IAAAA,OAAO,SAAhB;IAAkBE,IAAAA,OAAO,SAAzB;IAA2BX,IAAAA,KAAK;IAAhC,GAAP;IACD,CATD;;IAWO,IAAMa,iBAAiB,GAAG,SAApBA,iBAAoB,CAACnB,MAAD,EAAiBH,IAAjB;IAC/B,MAAMuB,SAAS,GAAG,GAAlB;IACA,MAAIlB,KAAK,GAAG,CAAZ;IACA,MAAIa,OAAO,GAAG,CAAd;IAEA,MAAMM,GAAG,GAAGrB,MAAM,CAACsB,MAAnB;IACA,MAAMC,UAAU,GAAG1B,IAAI,CAACyB,MAAxB;IACA,MAAME,SAAS,GAAGxB,MAAM,CAACyB,SAAP,CAAiBJ,GAAG,GAAG,CAAvB,EAA0BA,GAA1B,CAAlB;IACA,MAAMK,YAAY,GAAGF,SAAS,KAAK,IAAd,IAAsBA,SAAS,KAAK,IAAzD;IAEA,MAAMlB,KAAK,GAAsBoB,YAAY,GAAG7B,IAAI,CAAC4B,SAAL,CAAeF,UAAU,GAAG,CAA5B,EAA+BA,UAA/B,CAAH,GAAgD,EAA7F;IACA,MAAMI,UAAU,GAAGD,YAAY,GAAG7B,IAAI,CAAC4B,SAAL,CAAe,CAAf,EAAkBF,UAAU,GAAG,CAA/B,CAAH,GAAuC1B,IAAtE;IACA,MAAM+B,WAAW,GAAGF,YAAY,GAAG1B,MAAM,CAACyB,SAAP,CAAiB,CAAjB,EAAoBJ,GAAG,GAAG,CAA1B,CAAH,GAAkCrB,MAAlE;IAEA,MAAM6B,CAAC,GAAGF,UAAU,CAACG,KAAX,CAAiBV,SAAjB,CAAV;IACAQ,EAAAA,WAAW,CAACE,KAAZ,CAAkBV,SAAlB,EAA6BW,OAA7B,CAAqC,UAACC,CAAD,EAAIC,CAAJ;IACnC,YAAQD,CAAR;IACE,WAAK,IAAL;IACE9B,QAAAA,KAAK,GAAG,CAAC2B,CAAC,CAACI,CAAD,CAAF,IAAS,CAAjB;IACA;;IACF,WAAK,IAAL;IACElB,QAAAA,OAAO,GAAG,CAACc,CAAC,CAACI,CAAD,CAAF,IAAS,CAAnB;IACA;IANJ;IAQD,GATD;IAUA,SAAO;IAAE/B,IAAAA,KAAK,OAAP;IAASa,IAAAA,OAAO,SAAhB;IAAkBT,IAAAA,KAAK;IAAvB,GAAP;IACD,CA1BM;IA4BA,IAAM4B,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACN,WAAD,EAAsBO,YAAtB,EAA4CtC,IAA5C;IACjC,MAAI+B,WAAW,KAAKO,YAApB,EAAkC,OAAOtC,IAAP;;IAE5B,MAAAH,KAA4ByB,iBAAiB,CAACS,WAAD,EAAc/B,IAAd,CAA7C;IAAA,MAAEK,KAAK,WAAP;IAAA,MAASa,OAAO,aAAhB;IAAA,MAAkBT,KAAK,WAAvB;;IACN,MAAMH,IAAI,GAAGJ,cAAc,CAACoC,YAAD,CAAd,GAA+BlC,eAAe,CAACC,KAAD,CAAf,CAAuBC,IAAtD,GAA6D,EAA1E;IACA,MAAMC,GAAG,GAAGL,cAAc,CAACoC,YAAD,CAAd,GAA+BlC,eAAe,CAACC,KAAD,CAAf,CAAuBE,GAAtD,GAA4DC,eAAe,CAACH,KAAD,EAAQI,KAAR,CAAvF;IAEA,MAAM8B,OAAO,GAAGzB,mBAAiB,CAACwB,YAAD,EAAe;IAAEpB,IAAAA,OAAO,SAAT;IAAWb,IAAAA,KAAK,EAAEE,GAAlB;IAAuBE,IAAAA,KAAK,EAAEH;IAA9B,GAAf,CAAjC;IACA,SAAOiC,OAAP;IACD,CATM;;IAWP,IAAMzB,mBAAiB,GAAG,SAApBA,iBAAoB,CAACX,MAAD,EAAiBH,IAAjB;IAChB,MAAAK,KAAK,GAAqBL,IAAI,MAA9B;IAAA,MAAOkB,OAAO,GAAYlB,IAAI,QAA9B;IAAA,MAAgBS,KAAK,GAAKT,IAAI,MAA9B;IAER,MAAMuB,SAAS,GAAG,GAAlB;IACA,MAAMO,UAAU,GAAG3B,MAAM,CAAC8B,KAAP,CAAa,GAAb,CAAnB;IACA,MAAMD,CAAC,GAAGF,UAAU,CAAC,CAAD,CAAV,CAAcG,KAAd,CAAoBV,SAApB,CAAV;IACA,MAAIiB,GAAG,GAAG,EAAV;IAEAR,EAAAA,CAAC,CAACE,OAAF,CAAU,UAACC,CAAD,EAAIC,CAAJ;IACR,YAAQD,CAAR;IACE,WAAK,IAAL;IACEK,QAAAA,GAAG,IAAInC,KAAK,GAAG,EAAR,GAAa,MAAIA,KAAjB,GAA2BA,KAAlC;IACA;;IACF,WAAK,IAAL;IACEmC,QAAAA,GAAG,IAAItB,OAAO,GAAG,EAAV,GAAe,MAAIA,OAAnB,GAA+BA,OAAtC;IACA;IANJ;;IAQA,QAAIkB,CAAC,KAAKD,CAAC,CAACV,MAAF,GAAW,CAArB,EAAwBe,GAAG,IAAIjB,SAAP;IACzB,GAVD;IAYAiB,EAAAA,GAAG,IAAItC,cAAc,CAACC,MAAD,CAAd,IAA0BM,KAA1B,GAAkC,MAAIA,KAAtC,GAAgD,EAAvD;IACA,SAAO+B,GAAP;IACD,CAtBD;;ICtGO,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAACC,UAAD;IAAyB,gBAAA;;WAAA,YAAAC,uBAAAA;IAAAC,IAAAA,aAAA,gBAAA;;;IAC9C,MAAMC,QAAQ,GAAGC,KAAK,CAACC,OAAN,CAAcL,UAAd,IAA4BA,UAA5B,GAAyC,CAACA,UAAD,CAA1D;IAEA,SAAOG,QAAQ,CAACG,KAAT,CAAe,UAACC,SAAD;IAAe,WAAAA,SAAS,MAAT,OAAA,EAAaL,KAAb,CAAA;IAAmB,GAAjD,CAAP;IACD,CAJM;IAMA,IAAMM,MAAI,GAAG,SAAPA,IAAO,CAACV,GAAD,EAAcrC,MAAd;IAClB,MAAMgD,QAAQ,GAAG,SAAXA,QAAW,CAACD,IAAD,EAAeE,KAAf,EAA8BC,IAA9B;IACf,QAAMC,WAAW,GAAG,CAAC,EAAD,EAAK,EAAL,EAAS,EAAT,EAAa,EAAb,EAAiB,EAAjB,EAAqB,EAArB,EAAyB,EAAzB,EAA6B,EAA7B,EAAiC,EAAjC,EAAqC,EAArC,EAAyC,EAAzC,EAA6C,EAA7C,CAApB;IAGA,QAAID,IAAI,GAAG,GAAP,IAAc,CAAd,IAAoBA,IAAI,GAAG,GAAP,IAAc,CAAd,IAAmBA,IAAI,GAAG,CAAP,IAAY,CAAvD,EAA2DC,WAAW,CAAC,CAAD,CAAX,GAAiB,EAAjB;IAG3D,WAAOF,KAAK,IAAI,EAAT,IAAeF,IAAI,IAAII,WAAW,CAACF,KAAK,GAAG,CAAT,CAAzC;IACD,GARD;;IAUA,MAAIZ,GAAJ,EAAS;IACP,YAAQrC,MAAR;IACE,WAAK,YAAL;IAAmB;IACjB,cAAMoD,CAAC,GAAGf,GAAG,CAACP,KAAJ,CAAU,GAAV,CAAV;IACA,cAAMuB,MAAI,GAAG,CAACD,CAAC,CAAC,CAAD,CAAF,IAAS,CAAtB;IACA,cAAMH,KAAK,GAAG,CAACG,CAAC,CAAC,CAAD,CAAF,IAAS,CAAvB;IACA,cAAMF,IAAI,GAAG,CAACE,CAAC,CAAC,CAAD,CAAF,IAAS,IAAtB;IACA,iBAAOJ,QAAQ,CAACK,MAAD,EAAOJ,KAAP,EAAcC,IAAd,CAAf;IACD;;IACD,WAAK,YAAL;IAAmB;IACjB,cAAME,CAAC,GAAGf,GAAG,CAACP,KAAJ,CAAU,GAAV,CAAV;IACA,cAAMwB,MAAI,GAAG,CAACF,CAAC,CAAC,CAAD,CAAF,IAAS,CAAtB;IACA,cAAMH,KAAK,GAAG,CAACG,CAAC,CAAC,CAAD,CAAF,IAAS,CAAvB;IACA,cAAMF,IAAI,GAAG,CAACE,CAAC,CAAC,CAAD,CAAF,IAAS,IAAtB;IACA,iBAAOJ,QAAQ,CAACM,MAAD,EAAOL,KAAP,EAAcC,IAAd,CAAf;IACD;;IAED,WAAK,YAAL;IAAmB;IACjB,cAAME,CAAC,GAAGf,GAAG,CAACP,KAAJ,CAAU,GAAV,CAAV;IACA,cAAMyB,MAAI,GAAG,CAACH,CAAC,CAAC,CAAD,CAAF,IAAS,CAAtB;IACA,cAAMH,KAAK,GAAG,CAACG,CAAC,CAAC,CAAD,CAAF,IAAS,CAAvB;IACA,cAAMF,IAAI,GAAG,CAACE,CAAC,CAAC,CAAD,CAAF,IAAS,IAAtB;IACA,iBAAOJ,QAAQ,CAACO,MAAD,EAAON,KAAP,EAAcC,IAAd,CAAf;IACD;;IACD,WAAK,YAAL;IAAmB;IACjB,cAAME,CAAC,GAAGf,GAAG,CAACP,KAAJ,CAAU,GAAV,CAAV;IACA,cAAM0B,MAAI,GAAG,CAACJ,CAAC,CAAC,CAAD,CAAF,IAAS,CAAtB;IACA,cAAMH,KAAK,GAAG,CAACG,CAAC,CAAC,CAAD,CAAF,IAAS,CAAvB;IACA,cAAMF,IAAI,GAAG,CAACE,CAAC,CAAC,CAAD,CAAF,IAAS,IAAtB;IACA,iBAAOJ,QAAQ,CAACQ,MAAD,EAAOP,KAAP,EAAcC,IAAd,CAAf;IACD;;IAED,WAAK,YAAL;IAAmB;IACjB,cAAME,CAAC,GAAGf,GAAG,CAACP,KAAJ,CAAU,GAAV,CAAV;IACA,cAAM2B,MAAI,GAAG,CAACL,CAAC,CAAC,CAAD,CAAF,IAAS,CAAtB;IACA,cAAMH,KAAK,GAAG,CAACG,CAAC,CAAC,CAAD,CAAF,IAAS,CAAvB;IACA,cAAMF,IAAI,GAAG,CAACE,CAAC,CAAC,CAAD,CAAF,IAAS,IAAtB;IACA,iBAAOJ,QAAQ,CAACS,MAAD,EAAOR,KAAP,EAAcC,IAAd,CAAf;IACD;;IAED,WAAK,YAAL;IAAmB;IACjB,cAAME,CAAC,GAAGf,GAAG,CAACP,KAAJ,CAAU,GAAV,CAAV;IACA,cAAM4B,MAAI,GAAG,CAACN,CAAC,CAAC,CAAD,CAAF,IAAS,CAAtB;IACA,cAAMH,KAAK,GAAG,CAACG,CAAC,CAAC,CAAD,CAAF,IAAS,CAAvB;IACA,cAAMF,IAAI,GAAG,CAACE,CAAC,CAAC,CAAD,CAAF,IAAS,IAAtB;IACA,iBAAOJ,QAAQ,CAACU,MAAD,EAAOT,KAAP,EAAcC,IAAd,CAAf;IACD;;IACD;IACE,eAAO,KAAP;IA/CJ;IAiDD;;IACD,SAAO,KAAP;IACD,CA/DM;IAiEA,IAAMrD,MAAI,GAAG,SAAPA,IAAO,CAACwC,GAAD,EAAcrC,MAAd;IACZ,MAAAN,KAAqByB,iBAAiB,CAACnB,MAAD,EAASqC,GAAT,CAAtC;IAAA,MAAEnC,KAAK,WAAP;IAAA,MAASa,OAAO,aAAhB;;IACN,MAAM4C,SAAS,GAAG5D,cAAc,CAACC,MAAD,CAAd,GAAyBE,KAAK,IAAI,EAAlC,GAAuCA,KAAK,GAAG,EAAjE;IAEA,SAAOyD,SAAS,IAAI5C,OAAO,IAAI,EAA/B;IACD,CALM;IAOA,IAAM6C,eAAe,GAAG,SAAlBA,eAAkB,CAACvB,GAAD;IAC7B,MACG,OAAOA,GAAP,KAAe,QAAf,IAA2B,SAASwB,IAAT,CAAcxB,GAAd,CAA5B,IACC,OAAOA,GAAP,KAAe,QAAf,KAA4BA,GAAG,IAAI,CAAP,IAAYA,GAAG,GAAGyB,IAAI,CAACC,KAAL,CAAW1B,GAAX,CAAN,KAA0B,CAAlE,CAFH,EAGE;IACA,WAAO,KAAP;IACD;;IAED,SAAO,IAAP;IACD,CATM;;;;;;;;;;;;IC7EA,IAAMU,IAAI,GAA6B;IAC5C,gBAAc,CAAC,QAAD,EAAW,IAAX,EAAiB,GAAjB,EAAsB,MAAtB,EAA8B,IAA9B,EAAoC,GAApC,EAAyC,IAAzC,EAA+C,IAA/C,EAAqD,IAArD,EAA2D,IAA3D,CAD8B;IAE5C,gBAAc,CAAC,MAAD,EAAS,IAAT,EAAe,GAAf,EAAoB,QAApB,EAA8B,IAA9B,EAAoC,GAApC,EAAyC,IAAzC,EAA+C,IAA/C,EAAqD,IAArD,EAA2D,IAA3D,CAF8B;IAG5C,gBAAc,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,EAAyB,GAAzB,EAA8B,MAA9B,EAAsC,IAAtC,EAA4C,GAA5C,EAAiD,QAAjD,EAA2D,IAA3D,CAH8B;IAI5C,gBAAc,CAAC,QAAD,EAAW,IAAX,EAAiB,GAAjB,EAAsB,MAAtB,EAA8B,IAA9B,EAAoC,GAApC,EAAyC,IAAzC,EAA+C,IAA/C,EAAqD,IAArD,EAA2D,IAA3D,CAJ8B;IAK5C,gBAAc,CAAC,MAAD,EAAS,IAAT,EAAe,GAAf,EAAoB,QAApB,EAA8B,IAA9B,EAAoC,GAApC,EAAyC,IAAzC,EAA+C,IAA/C,EAAqD,IAArD,EAA2D,IAA3D,CAL8B;IAM5C,gBAAc,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,EAAyB,GAAzB,EAA8B,MAA9B,EAAsC,IAAtC,EAA4C,GAA5C,EAAiD,QAAjD,EAA2D,IAA3D;IAN8B,CAAvC;IASA,IAAMiB,SAAS,GAA6B;IACjD,gBAAc,CACZ,QADY,EAEZ,IAFY,EAGZ,GAHY,EAIZ,MAJY,EAKZ,IALY,EAMZ,GANY,EAOZ,IAPY,EAQZ,IARY,EASZ,IATY,EAUZ,IAVY,EAWZ,GAXY,EAYZ,GAZY,EAaZ,GAbY,EAcZ,QAdY,EAeZ,IAfY,EAgBZ,GAhBY,EAiBZ,MAjBY,EAkBZ,IAlBY,EAmBZ,GAnBY,EAoBZ,IApBY,EAqBZ,IArBY,EAsBZ,IAtBY,EAuBZ,IAvBY,CADmC;IA0BjD,gBAAc,CACZ,MADY,EAEZ,IAFY,EAGZ,GAHY,EAIZ,QAJY,EAKZ,IALY,EAMZ,GANY,EAOZ,IAPY,EAQZ,IARY,EASZ,IATY,EAUZ,IAVY,EAWZ,GAXY,EAYZ,GAZY,EAaZ,GAbY,EAcZ,MAdY,EAeZ,IAfY,EAgBZ,GAhBY,EAiBZ,QAjBY,EAkBZ,IAlBY,EAmBZ,GAnBY,EAoBZ,IApBY,EAqBZ,IArBY,EAsBZ,IAtBY,EAuBZ,IAvBY,CA1BmC;IAmDjD,gBAAc,CACZ,IADY,EAEZ,IAFY,EAGZ,IAHY,EAIZ,IAJY,EAKZ,GALY,EAMZ,MANY,EAOZ,IAPY,EAQZ,GARY,EASZ,QATY,EAUZ,IAVY,EAWZ,GAXY,EAYZ,GAZY,EAaZ,GAbY,EAcZ,IAdY,EAeZ,IAfY,EAgBZ,IAhBY,EAiBZ,IAjBY,EAkBZ,GAlBY,EAmBZ,MAnBY,EAoBZ,IApBY,EAqBZ,GArBY,EAsBZ,QAtBY,EAuBZ,IAvBY,CAnDmC;IA4EjD,gBAAc,CACZ,QADY,EAEZ,IAFY,EAGZ,GAHY,EAIZ,MAJY,EAKZ,IALY,EAMZ,GANY,EAOZ,IAPY,EAQZ,IARY,EASZ,IATY,EAUZ,IAVY,EAWZ,GAXY,EAYZ,GAZY,EAaZ,GAbY,EAcZ,QAdY,EAeZ,IAfY,EAgBZ,GAhBY,EAiBZ,MAjBY,EAkBZ,IAlBY,EAmBZ,GAnBY,EAoBZ,IApBY,EAqBZ,IArBY,EAsBZ,IAtBY,EAuBZ,IAvBY,CA5EmC;IAqGjD,gBAAc,CACZ,MADY,EAEZ,IAFY,EAGZ,GAHY,EAIZ,QAJY,EAKZ,IALY,EAMZ,GANY,EAOZ,IAPY,EAQZ,IARY,EASZ,IATY,EAUZ,IAVY,EAWZ,GAXY,EAYZ,GAZY,EAaZ,GAbY,EAcZ,MAdY,EAeZ,IAfY,EAgBZ,GAhBY,EAiBZ,QAjBY,EAkBZ,IAlBY,EAmBZ,GAnBY,EAoBZ,IApBY,EAqBZ,IArBY,EAsBZ,IAtBY,EAuBZ,IAvBY,CArGmC;IA8HjD,gBAAc,CACZ,IADY,EAEZ,IAFY,EAGZ,IAHY,EAIZ,IAJY,EAKZ,GALY,EAMZ,MANY,EAOZ,IAPY,EAQZ,GARY,EASZ,QATY,EAUZ,IAVY,EAWZ,GAXY,EAYZ,GAZY,EAaZ,GAbY,EAcZ,IAdY,EAeZ,IAfY,EAgBZ,IAhBY,EAiBZ,IAjBY,EAkBZ,GAlBY,EAmBZ,MAnBY,EAoBZ,IApBY,EAqBZ,GArBY,EAsBZ,QAtBY,EAuBZ,IAvBY;IA9HmC,CAA5C;IAyJA,IAAMnE,IAAI,eACfH,KAAC,QAAD,GAAW,CAAC,SAAD,EAAY,IAAZ,EAAkB,GAAlB,EAAuB,OAAvB,EAAgC,IAAhC,GACXA,KAAC,WAAD,GAAc,CAAC,OAAD,EAAU,IAAV,EAAgB,GAAhB,EAAqB,OAArB,EAA8B,IAA9B,EAAoC,GAApC,EAAyC,QAAzC,EAAmD,GAAnD,OAFC,CAAV;;;;;;;;;;;;;;;;ICtKP;IACA;AACA;IACA;IACA;AACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;AACA;IACA,IAAI,aAAa,GAAG,SAAS,CAAC,EAAE,CAAC,EAAE;IACnC,IAAI,aAAa,GAAG,MAAM,CAAC,cAAc;IACzC,SAAS,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;IACpF,QAAQ,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1G,IAAI,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;AACF;IACO,SAAS,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE;IAChC,IAAI,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI;IAC7C,QAAQ,MAAM,IAAI,SAAS,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAC;IAClG,IAAI,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxB,IAAI,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;IAC3C,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;AACD;IACO,IAAI,QAAQ,GAAG,WAAW;IACjC,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC,EAAE;IACrD,QAAQ,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;IAC7D,YAAY,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC7B,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzF,SAAS;IACT,QAAQ,OAAO,CAAC,CAAC;IACjB,MAAK;IACL,IAAI,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,EAAC;AACD;IACO,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE;IAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IACf,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACvF,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;IACvE,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;IAChF,YAAY,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1F,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClC,SAAS;IACT,IAAI,OAAO,CAAC,CAAC;IACb,CAAC;AAgBD;IACO,SAAS,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE;IAC7D,IAAI,SAAS,KAAK,CAAC,KAAK,EAAE,EAAE,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;IAChH,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM,EAAE;IAC/D,QAAQ,SAAS,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;IACnG,QAAQ,SAAS,QAAQ,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE;IACtG,QAAQ,SAAS,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;IACtH,QAAQ,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9E,KAAK,CAAC,CAAC;IACP,CAAC;AACD;IACO,SAAS,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE;IAC3C,IAAI,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACrH,IAAI,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAW,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC7J,IAAI,SAAS,IAAI,CAAC,CAAC,EAAE,EAAE,OAAO,UAAU,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;IACtE,IAAI,SAAS,IAAI,CAAC,EAAE,EAAE;IACtB,QAAQ,IAAI,CAAC,EAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;IACtE,QAAQ,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI;IACtD,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACzK,YAAY,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;IACpD,YAAY,QAAQ,EAAE,CAAC,CAAC,CAAC;IACzB,gBAAgB,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM;IAC9C,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACxE,gBAAgB,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;IACjE,gBAAgB,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;IACjE,gBAAgB;IAChB,oBAAoB,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE;IAChI,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;IAC1G,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACzF,oBAAoB,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE;IACvF,oBAAoB,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAC1C,oBAAoB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS;IAC3C,aAAa;IACb,YAAY,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACvC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;IAClE,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACzF,KAAK;IACL,CAAC;AAqDD;IACA;IACO,SAAS,cAAc,GAAG;IACjC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACxF,IAAI,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;IACpD,QAAQ,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;IACzE,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,OAAO,CAAC,CAAC;IACb;;ICpIO,IAAMuE,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IAC9B,MAAMC,SAAS,GAAG,CAAC,WAAD,EAAc,WAAd,CAAlB;IACA,MAAMC,YAAY,GAAGD,SAAS,CAACE,MAAV,CAAiB,UAACC,GAAD,EAAMC,IAAN;;;IACpC,WAAOL,KAAK,CAACK,IAAD,CAAL,yBAAmBD,mBAAMC,QAAOL,KAAK,CAACK,IAAD,OAArC,gBAAqDD,IAA5D;IACD,GAFoB,EAElB,EAFkB,CAArB;IAIA,SAAOF,YAAP;IACD,CAPM;IASA,IAAMI,WAAW,GAAG,SAAdA,WAAc,CACzBN,KADyB,EAEzBO,SAFyB,EAGzBC,OAHyB;IAKzB,SAAAC,MAAM,CAACC,OAAP,CAAeV,KAAf,EACGW,MADH,CACU,UAACC,GAAD;IAAS,WAACJ,OAAO,GAAGD,SAAS,CAAC3E,QAAV,CAAmBgF,GAAG,CAAC,CAAD,CAAtB,CAAH,GAAgC,CAACL,SAAS,CAAC3E,QAAV,CAAmBgF,GAAG,CAAC,CAAD,CAAtB,CAAzC;IAAoE,GADvF,EAEGT,MAFH,CAEU,UAACC,GAAD,EAA2BC,IAA3B;IACND,IAAAA,GAAG,CAACC,IAAI,CAAC,CAAD,CAAL,CAAH,GAAeA,IAAI,CAAC,CAAD,CAAnB;IACA,WAAOD,GAAP;IACD,GALH,EAKK,EALL,CAAA;IAKQ,CAVH;;IClCA,IAAMS,aAAa,gBAAGC,gBAAK,CAACC,aAAN,CAAkC;IAC7DC,EAAAA,IAAI,EAAE,SADuD;IAE7DC,EAAAA,UAAU,EAAE,WAFiD;IAG7DC,EAAAA,SAAS,EAAE,EAHkD;IAI7DC,EAAAA,QAAQ,EAAE;IAJmD,CAAlC,CAAtB;AAOP,yBAAeN,aAAa,CAACO,QAA7B;;ICCA,IAAMC,gBAAgB,GAA2B;IAC/CC,EAAAA,SAAS,EAAE,SADoC;IAE/CC,EAAAA,OAAO,EAAE,OAFsC;IAG/CC,EAAAA,KAAK,EAAE,OAHwC;IAI/CC,EAAAA,OAAO,EAAE,OAJsC;IAK/CC,EAAAA,OAAO,EAAE,OALsC;IAM/CC,EAAAA,OAAO,EAAE,gBANsC;IAO/CC,EAAAA,OAAO,EAAE,gBAPsC;IAQ/CC,EAAAA,OAAO,EAAE,gBARsC;IAS/CC,EAAAA,OAAO,EAAE;IATsC,CAAjD;IAYO,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAAC/B,KAAD;IACxB,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiBpB,aAAjB,CAApB;IACQ,MAAAG,IAAI,GAAiBgB,WAAW,KAAhC;IAAA,MAAMf,UAAU,GAAKe,WAAW,WAAhC;IACR,MAAME,QAAQ,GAAGlB,IAAI,KAAK,SAAT,GAAqB,EAArB,GAA0B,EAA3C;IAEA,MAAMmB,cAAc,GAAIlB,UAAU,IAAKI,gBAAgB,CAACJ,UAAD,CAAhC,IAAoE,SAA3F;IAEA,sBAAOH,8BAAA,CAACsB,IAAD,eAAUpC;IAAOgB,IAAAA,IAAI,EAAEkB;IAAUjB,IAAAA,UAAU,EAAEkB;QAA7C,CAAP;IACD,CARM;;ICZP,IAAME,UAAU,GAA2B;IACzCC,EAAAA,OAAO,EAAE,EADgC;IAEzCC,EAAAA,IAAI,EAAE;IAFmC,CAA3C;IAKO,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACxC,KAAD;;;IACjB,MAAAyC,QAAQ,GAAUzC,KAAK,SAAvB;IAAA,MAAU0C,GAAG,GAAK1C,KAAK,IAAvB;;IACF,MAAA2C,KAAoB7B,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAApB;IAAA,MAACC,KAAK,QAAN;IAAA,MAAQC,QAAQ,QAAhB;;IACN,MAAMd,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiBpB,aAAjB,CAApB;IACQ,MAAAG,IAAI,GAAsCgB,WAAW,KAArD;IAAA,MAAMf,UAAU,GAA0Be,WAAW,WAArD;IAAA,MAAkBd,SAAS,GAAec,WAAW,UAArD;IAAA,MAA6Bb,QAAQ,GAAKa,WAAW,SAArD;IAER,MAAM/B,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM+C,QAAQ,GAAG,MAAG7B,SAAS,GAAGA,SAAS,CAAC8B,IAAV,GAAiB,CAAjB,CAAH,GAAyB,EAArC,KAA0C7B,QAAQ,GAAGA,QAAQ,CAAC6B,IAAT,GAAgB,CAAhB,CAAH,GAAwB,EAA1E,CAAjB;IACA,MAAMC,OAAO,GAAGjC,IAAI,IAAIqB,UAAU,CAACrB,IAAD,CAAlC;IAEA,MAAMkC,cAAc,GAAGC,8BAAU,WAC/B3H,GAAC,qBAAmBwF,KAApB,GAA6BA,MAC7BxF,GAAC,qBAAmByF,WAApB,GAAmCA,cAFJ,EAAjC;IAKA,MAAMmC,cAAc,GAAGD,8BAAU,WAC/BE,GAAC,qBAAmBpC,WAApB,GAAmCA,cADJ,EAAjC;;IAIA,MAAMqC,OAAO,GAAG,SAAVA,OAAU;IACdR,IAAAA,QAAQ,CAAC,IAAD,CAAR;IACD,GAFD;;IAIA,MAAIL,QAAJ,EAAc;IACZ,wBAAO3B,8BAAA,0BAAA,MAAA,EAAG2B,QAAH,CAAP;IACD;;IAED,MAAII,KAAJ,EAAW;IACT,QAAIE,QAAJ,EAAc;IACZ,0BACEjC,8BAAA,CAACyC,IAAD;IAAMC,QAAAA,MAAM,EAAC;IAASvC,QAAAA,UAAU,EAAE;IAASwC,QAAAA,SAAS,EAAEP;aAAoBjD,UAA1E,EACG8C,QADH,CADF;IAKD;;IAED,wBACEjC,8BAAA,CAACsB,IAAD;uBACY;IACVsB,MAAAA,IAAI,EAAC;IACL1C,MAAAA,IAAI,EAAEA,IAAI,KAAK,SAAT,GAAqB,EAArB,GAA0B;IAChCC,MAAAA,UAAU,EAAC;IACXwC,MAAAA,SAAS,EAAEL;SALb,CADF;IASD;;IAED,sBACEtC,8BAAA,MAAA;qBACY;IACV4B,IAAAA,GAAG,EAAEA;IACLiB,IAAAA,GAAG,EAAEzC;SACDjB;IACJ2D,IAAAA,MAAM,EAAEX;IACRY,IAAAA,KAAK,EAAEZ;IACPK,IAAAA,OAAO,EAAEA;QAPX,CADF;IAWD,CA3DM;;IC2BP,IAAMQ,cAAc,GAAG,CAAvB;IACA,IAAMC,iBAAiB,GAAG,WAA1B;IACA,IAAMC,MAAM,GAAG,CAAC,SAAD,EAAY,SAAZ,EAAuB,SAAvB,EAAkC,OAAlC,EAA2C,SAA3C,EAAsD,SAAtD,EAAiE,SAAjE,EAA4E,SAA5E,CAAf;QAEaC,MAAM,GAAG,SAATA,MAAS,CAACjE,KAAD;;;IAElB,MAAAkE,WAAW,GAUTlE,KAAK,YAVP;IAAA,MACAmE,eAAe,GASbnE,KAAK,gBAVP;IAAA,MAEAgB,IAAI,GAQFhB,KAAK,KAVP;IAAA,MAGAyC,QAAQ,GAONzC,KAAK,SAVP;IAAA,MAIAkB,SAAS,GAMPlB,KAAK,UAVP;IAAA,MAKAmB,QAAQ,GAKNnB,KAAK,SAVP;IAAA,MAMAyD,SAAS,GAIPzD,KAAK,UAVP;IAAA,MAOAiB,UAAU,GAGRjB,KAAK,WAVP;IAAA,MAQAoE,KAAK,GAEHpE,KAAK,MAVP;IAAA,MASAqE,KACErE,KAAK,KAVP;IAAA,MASAsE,IAAI,mBAAG,mBATP;IAYF,MAAMrE,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM+C,QAAQ,GACZN,QAAQ,IAAI,OAAOA,QAAP,KAAoB,QAAhC,GACIA,QAAQ,CAACO,IAAT,GAAgBuB,KAAhB,CAAsB,CAAtB,EAAyBT,cAAzB,CADJ,GAEI,MAAG5C,SAAS,GAAGA,SAAS,CAAC8B,IAAV,GAAiB,CAAjB,CAAH,GAAyB,EAArC,KAA0C7B,QAAQ,GAAGA,QAAQ,CAAC6B,IAAT,GAAgB,CAAhB,CAAH,GAAwB,EAA1E,CAHN;IAKA,MAAMwB,OAAO,GAAG/B,QAAQ,IAAI,OAAOA,QAAP,KAAoB,QAAhC,GAA2CA,QAA3C,GAAsD,CAAGvB,SAAS,IAAI,EAAhB,OAAA,IAAsBC,QAAQ,IAAI,EAAlC,KAA0C,EAAhH;IAEA,MAAMsD,gBAAgB,GACpBxD,UAAU,IAAI+C,MAAM,CAAC,CAACjB,QAAQ,CAAC2B,UAAT,CAAoB,CAApB,KAA0B3B,QAAQ,CAAC2B,UAAT,CAAoB,CAApB,KAA0B,CAApD,CAAD,IAA2D,CAA5D,CAApB,IAAsFX,iBADxF;IAGA,MAAMY,gBAAgB,GAAGxB,8BAAU;IAE/Bc,IAAAA,MAAM,EAAE;SACRzI,GAAC,iBAAD,GAAoB4I,KAAK,KAAK,UAC9B5I,GAAC,aAAWwF,KAAZ,GAAqBoD,KAAK,KAAK,UAC/B5I,GAAC,aAAWiJ,iBAAZ,GAAiCA,kBACjCjJ,GAAC,mBAAD,GAAsB,CAACuH,QAAD,IAAa,CAACmB,eANL,GAQjCT,SARiC,CAAnC;IAWA,MAAMmB,uBAAuB,GAAGzB,8BAAU,WACxCE,GAAC,kBAAD,GAAqBe,KAAK,KAAK,UAC/Bf,GAAC,aAAWrC,KAAZ,GAAqBoD,KAAK,KAAK,YAFS,EAA1C;IAKA,MAAMlB,cAAc,GAAGC,8BAAU,WAC/BR,GAAC,qBAAmB3B,KAApB,GAA6BA,MAC7B2B,GAAC,qBAAmB8B,iBAApB,GAAyCA,oBAFV,EAAjC;IAKA,MAAMrB,cAAc,GAAGD,8BAAU,WAC/B0B,GAAC,qBAAmBJ,iBAApB,GAAyCA,oBADV,EAAjC;IAIA,MAAMK,UAAU,GAAG;IACjB9D,IAAAA,IAAI,MADa;IAEjBE,IAAAA,SAAS,WAFQ;IAGjBC,IAAAA,QAAQ,UAHS;IAIjBF,IAAAA,UAAU,EAAEwD;IAJK,GAAnB;;IAOA,MAAMM,YAAY,GAAG,SAAfA,YAAe;IACnB,QAAItC,QAAQ,IAAI,OAAOA,QAAP,KAAoB,QAApC,EAA8C;IAC5C,0BACE3B,8BAAA,OAAA;yBAAgB;IAA6B2C,QAAAA,SAAS,EAAEmB;IAAyBN,QAAAA,IAAI,EAAEA;WAAvF,eACExD,8BAAA,CAACkE,cAAD;IAAgBzG,QAAAA,KAAK,EAAEuG;WAAvB,eACEhE,8BAAA,OAAA;yBAAgB;aAA0Bb;IAAWwD,QAAAA,SAAS,EAAEkB;YAAhE,EACGlC,QADH,CADF,CADF,CADF;IASD;;IAED,wBACE3B,8BAAA,OAAA;uBAAgB;IAA6B2C,MAAAA,SAAS,EAAEmB;IAAyBN,MAAAA,IAAI,EAAEA;SAAvF,eACExD,8BAAA,OAAA;uBAAgB;WAA0Bb;IAAWwD,MAAAA,SAAS,EAAEkB;UAAhE,EACG5B,QAAQ,iBACPjC,8BAAA,CAACyC,IAAD;IAAMC,MAAAA,MAAM,EAAC;IAASvC,MAAAA,UAAU,EAAE;IAASwC,MAAAA,SAAS,EAAEP;SAAtD,EACGH,QADH,CAFJ,EAMG,CAACA,QAAD,iBACCjC,8BAAA,CAACsB,IAAD;uBACY;IACVsB,MAAAA,IAAI,EAAC;IACL1C,MAAAA,IAAI,EAAEA,IAAI,KAAK,SAAT,GAAqB,EAArB,GAA0B;IAChCC,MAAAA,UAAU,EAAE;IACZwC,MAAAA,SAAS,EAAEL;SALb,CAPJ,CADF,CADF;IAoBD,GAjCD;;IAmCA,MAAM6B,aAAa,GAAG,SAAhBA,aAAgB;IACpB,QAAIf,WAAW,IAAInB,QAAnB,EAA6B;IAC3B,0BACEjC,8BAAA,CAACoE,OAAD;IAASV,QAAAA,OAAO,EAAEA;IAASW,QAAAA,QAAQ,EAAEhB;IAAiBiB,QAAAA,YAAY,EAAE;WAApE,EACGL,YAAY,EADf,CADF;IAKD;;IAED,WAAOA,YAAY,EAAnB;IACD,GAVD;;IAYA,SAAOE,aAAa,EAApB;IACD;IAEDhB,MAAM,CAACoB,WAAP,GAAqB,QAArB;IAEApB,MAAM,CAAC7B,IAAP,GAAcL,UAAd;IACAkC,MAAM,CAACqB,KAAP,GAAe9C,WAAf;IAEAyB,MAAM,CAACsB,YAAP,GAAsB;IACpBpB,EAAAA,eAAe,EAAE,QADG;IAEpBD,EAAAA,WAAW,EAAE,IAFO;IAGpBlD,EAAAA,IAAI,EAAE,SAHc;IAIpBoD,EAAAA,KAAK,EAAE;IAJa,CAAtB;;IClKA,IAAMoB,WAAW,GAAG,SAAdA,WAAc,CAACxF,KAAD;;;IACV,MAAAyF,iBAAiB,GAA4BzF,KAAK,kBAAlD;IAAA,MAAmB0F,WAAW,GAAe1F,KAAK,YAAlD;IAAA,MAAgCgB,IAAI,GAAShB,KAAK,KAAlD;IAAA,MAAsC2F,EAAE,GAAK3F,KAAK,GAAlD;IAER,MAAM4F,YAAY,GAAGzC,8BAAU,WAC7B3H,GAAC,4BAAD,GAA+B,MAC/BA,GAAC,uBAAD,GAA0BwF,IAAI,KAAK,UAFN,EAA/B;IAKA,MAAM6E,mBAAmB,GAAG1C,8BAAU;IACpCc,IAAAA,MAAM,EAAE;SACRZ,GAAC,kBAAD,GAAqBrC,IAAI,KAAK,WAC9BqC,GAAC,eAAD,GAAkBrC,IAAI,KAAK,QAC3BqC,GAAC,oBAAD,GAAuB,MACvBA,GAAC,mBAAD,GAAsB,MACtBA,GAAC,iBAAD,GAAoBsC,EAAE,KAAK,WANS,EAAtC;IASA,sBACE7E,8BAAA,MAAA;qBAAe;IAA0C2C,IAAAA,SAAS,EAAC;IAAsBqC,IAAAA,KAAK,EAAEJ;OAAhG,eACE5E,8BAAA,OAAA;qBAAgB;IAAkD2C,IAAAA,SAAS,EAAEoC;OAA7E,eACE/E,8BAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAE;IAASwC,IAAAA,SAAS,EAAEmC;OAAtC,EACG,MAAIH,iBADP,CADF,CADF,CADF;IASD,CA1BD;;ICAA,IAAMM,OAAO,GAAG,SAAVA,OAAU,CAAC/F,KAAD;;;IACN,MAAAgG,UAAU,GAAyChG,KAAK,WAAxD;IAAA,MAAY0F,WAAW,GAA4B1F,KAAK,YAAxD;IAAA,MAAyBmE,eAAe,GAAWnE,KAAK,gBAAxD;IAAA,MAA0CgB,IAAI,GAAKhB,KAAK,KAAxD;IAER,MAAMiG,UAAU,GAAG9C,8BAAU,WAC3B3H,GAAC,mBAAD,GAAsB,MACtBA,GAAC,yBAAD,GAA4BwF,IAAI,KAAK,QACrCxF,GAAC,4BAAD,GAA+BwF,IAAI,KAAK,aAHb,EAA7B;IAMA,MAAMkF,OAAO,GAAGF,UAAU,CAACG,GAAX,CAAe,UAACC,IAAD,EAAYC,KAAZ;IACrB,QAAApF,UAAU,GAAuCmF,IAAI,WAArD;IAAA,QAAYlF,SAAS,GAA4BkF,IAAI,UAArD;IAAA,QAAuBjF,QAAQ,GAAkBiF,IAAI,SAArD;IAAA,QAAiCE,IAAI,GAAYF,IAAI,KAArD;IAAA,QAAuCG,KAAK,GAAKH,IAAI,MAArD;IACR,wBACEtF,8BAAA,MAAA;uBAAe;IAAmC2C,MAAAA,SAAS,EAAEwC;IAAYH,MAAAA,KAAK,EAAEJ;IAAac,MAAAA,GAAG,EAAEH;SAAlG,eACEvF,8BAAA,CAACmD,MAAD;IACEjD,MAAAA,IAAI,EAAEA;IACNC,MAAAA,UAAU,EAAEA;IACZC,MAAAA,SAAS,EAAEA;IACXC,MAAAA,QAAQ,EAAEA;IACV+C,MAAAA,WAAW,EAAE;IACbC,MAAAA,eAAe,EAAEA;SANnB,EAQGoC,KAAK,IAAID,IARZ,CADF,CADF;IAcD,GAhBe,CAAhB;IAiBA,SAAOJ,OAAP;IACD,CA3BD;;ICAA,IAAMO,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACzG,KAAD;IACf,MAAA0G,gBAAgB,GAAsC1G,KAAK,iBAA3D;IAAA,MAAkB2G,cAAc,GAAsB3G,KAAK,eAA3D;IAAA,MAAkC4G,SAAS,GAAW5G,KAAK,UAA3D;IAAA,MAA6C6G,IAAI,GAAK7G,KAAK,KAA3D;;IAER,MAAI2G,cAAJ,EAAoB;IAClB,WAAOA,cAAc,CAACD,gBAAD,CAArB;IACD;;IAED,sBACE5F,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;IAA0BqC,IAAAA,KAAK,EAAE;IAAEc,MAAAA,SAAS;IAAX;OAAhD,EACGF,gBAAgB,CAACP,GAAjB,CAAqB,UAACC,IAAD,EAAYU,GAAZ;;;IACZ,QAAAzD,KAAkC+C,IAAI,UAAtC;IAAA,QAAAlF,SAAS,mBAAG,OAAZ;IAAA,QAAgByB,KAAkByD,IAAI,SAAtC;IAAA,QAAgBjF,QAAQ,mBAAG,OAA3B;IACR,QAAMuC,IAAI,GAAMxC,SAAS,MAAT,GAAaC,QAA7B;IACA,QAAM4F,eAAe,GAAG5D,8BAAU,WAChC3H,GAAC,OAAD,GAAUsL,GAAG,GAAGJ,gBAAgB,CAACtJ,MAAjB,GAA0B,KADV,EAAlC;IAGA,wBACE0D,8BAAA,CAACyC,IAAD;IACEiD,MAAAA,GAAG,EAAEM;IACL7F,MAAAA,UAAU,EAAE4F,IAAI,GAAG,OAAH,GAAa;IAC7BpD,MAAAA,SAAS,EAAEsD;uBACD;SAJZ,EAMGrD,IANH,CADF;IAUD,GAhBA,CADH,CADF,CADF;IAuBD,CA9BD;;QCqFasD,WAAW,GAAG,SAAdA,WAAc,CAAChH,KAAD;;;IACjB,MAAAiH,GAAG,GAA0EjH,KAAK,IAAlF;IAAA,MAAKkH,WAAW,GAA6DlH,KAAK,YAAlF;IAAA,MAAkBmH,cAAc,GAA6CnH,KAAK,eAAlF;IAAA,MAAkCmE,eAAe,GAA4BnE,KAAK,gBAAlF;IAAA,MAAmDoH,IAAI,GAAsBpH,KAAK,KAAlF;IAAA,MAAyDyD,SAAS,GAAWzD,KAAK,UAAlF;IAAA,MAAoEgB,IAAI,GAAKhB,KAAK,KAAlF;IAGN,MAAA2G,cAAc,GAOZQ,cAAc,eAPhB;IAAA,MACAxE,KAMEwE,cAAc,UAPhB;IAAA,MACAP,SAAS,mBAAG,QADZ;IAAA,MAEA/B,KAKEsC,cAAc,SAPhB;IAAA,MAEAhC,QAAQ,mBAAG,aAFX;IAAA,MAGAd,KAIE8C,cAAc,GAPhB;IAAA,MAGAxB,EAAE,mBAAG,YAHL;IAAA,MAIA0B,KAGEF,cAAc,KAPhB;IAAA,MAIAN,IAAI,mBAAG,SAJP;IAAA,MAKAS,KAEEH,cAAc,aAPhB;IAAA,MAKAI,YAAY,mBAAG,SALf;IAAA,MAMAC,KACEL,cAAc,gBAPhB;IAAA,MAMAM,eAAe,mBAAG,OANlB;IASF,MAAMxH,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMyF,iBAAiB,GAAG2B,IAAI,CAAChK,MAAL,GAAc6J,GAAd,GAAoBrH,IAAI,CAAC8H,GAAL,CAASN,IAAI,CAAChK,MAAL,GAAc6J,GAAvB,EAA4B,EAA5B,CAApB,GAAsD,CAAhF;IAEA,MAAMnB,KAAK,GAAG;IACZ6B,IAAAA,eAAe,EAAE,KAAGT,WADR;IAEZU,IAAAA,SAAS,EAAE,uDAAqDV;IAFpD,GAAd;IAKA,MAAMW,eAAe,GAAG;IACtBD,IAAAA,SAAS,EAAE,6BAA2BV;IADhB,GAAxB;IAIA,MAAMxB,WAAW,GAAG1E,IAAI,KAAK,MAAT,yBAAuB8E,QAAU+B,gBAAjC,GAAqD/B,KAAzE;IAEA,MAAME,UAAU,GAAGoB,IAAI,CAAChK,MAAL,KAAgB,CAAhB,GAAoBgK,IAApB,GAA2BA,IAAI,CAAC7C,KAAL,CAAW,CAAX,EAAc0C,GAAd,CAA9C;IAEA,MAAMa,gBAAgB,GAAG3E,8BAAU,WAE/B3H,GAAC,cAAD,GAAiB,QAFc,GAIjCiI,SAJiC,CAAnC;IAOA,MAAMsE,WAAW,GAAG5E,8BAAU,WAE1BE,GAAC,qBAAD,GAAwB,QAFE,GAI5BoE,eAJ4B,CAA9B;IAOA,sBACE3G,8BAAA,MAAA;qBAAe;SAA+Bb;IAAWwD,IAAAA,SAAS,EAAKqE,gBAAgB;QAAvF,eACEhH,8BAAA,CAACiF,OAAD;IAAS/E,IAAAA,IAAI,EAAEA;IAAMgF,IAAAA,UAAU,EAAEA;IAAYN,IAAAA,WAAW,EAAEA;IAAavB,IAAAA,eAAe,EAAEA;OAAxF,CADF,EAEGiD,IAAI,CAAChK,MAAL,GAAc6J,GAAd,GAAoB,CAApB,IAAyBG,IAAI,CAAChK,MAAL,KAAgB,CAAzC,iBACC0D,8BAAA,CAACkH,OAAD;IACErC,IAAAA,EAAE,EAAEA;IACJkB,IAAAA,IAAI,EAAEA;IACNoB,IAAAA,OAAO,eAAEnH,8BAAA,CAAC0E,WAAD;IAAaG,MAAAA,EAAE,EAAEA;IAAI3E,MAAAA,IAAI,EAAEA;IAAMyE,MAAAA,iBAAiB,EAAEA;IAAmBC,MAAAA,WAAW,EAAEA;SAApF;IACTP,IAAAA,QAAQ,EAAEA;IACVoC,IAAAA,YAAY,EAAEA;IACd9D,IAAAA,SAAS,EAAEsE;IACXG,IAAAA,MAAM,EAAC;OAPT,eASEpH,8BAAA,CAAC2F,gBAAD;IACEC,IAAAA,gBAAgB,EAAEU,IAAI,CAAC7C,KAAL,CAAW0C,GAAX,EAAgBG,IAAI,CAAChK,MAArB;IAClBuJ,IAAAA,cAAc,EAAEA;IAChBC,IAAAA,SAAS,EAAEA;IACXC,IAAAA,IAAI,EAAEA;OAJR,CATF,CAHJ,CADF;IAuBD;IAEDG,WAAW,CAAC3B,WAAZ,GAA0B,aAA1B;IACA2B,WAAW,CAACzB,YAAZ,GAA2B;IACzB0B,EAAAA,GAAG,EAAE,CADoB;IAEzB9C,EAAAA,eAAe,EAAE,QAFQ;IAGzB+C,EAAAA,WAAW,EAAE,OAHY;IAIzBC,EAAAA,cAAc,EAAE,EAJS;IAKzBnG,EAAAA,IAAI,EAAE;IALmB,CAA3B;;IC1JQ,IAAAmH,WAAS,GAAerH,gBAAK,UAA7B;IAAA,IAAW8B,UAAQ,GAAK9B,gBAAK,SAA7B;QAoBKsH,QAAQ,GAA4B,SAApCA,QAAoC,CAACpI,KAAD;IACvC,MAAAyD,SAAS,GAAKzD,KAAK,UAAnB;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;;IAEM,MAAAxE,KAAuCoH,UAAQ,CAAgB,IAAhB,CAA/C;IAAA,MAACyF,iBAAiB,QAAlB;IAAA,MAAoBC,eAAe,QAAnC;;IACA,MAAAjF,KAAkBvC,gBAAK,CAAC8B,QAAN,CAAwB5C,KAAK,CAACuI,IAA9B,CAAlB;IAAA,MAACA,IAAI,QAAL;IAAA,MAAOC,OAAO,QAAd;;IACA,MAAA7F,KAAwB7B,gBAAK,CAAC8B,QAAN,CAAwB5C,KAAK,CAACuI,IAA9B,CAAxB;IAAA,MAACE,OAAO,QAAR;IAAA,MAAUC,UAAU,QAApB;;IAEN,MAAMC,OAAO,GAAGxF,8BAAU,CACxB;IACEiF,IAAAA,QAAQ,EAAE,IADZ;IAEE,sBAAkBG,IAFpB;IAGE,gCAA4BE,OAH9B;IAIE,iCAA6B,CAACA;IAJhC,GADwB,EAOxBhF,SAPwB,CAA1B;;IAUA,MAAMmF,iBAAiB,GAAG,SAApBA,iBAAoB;IACxBxN,IAAAA,QAAQ,CAACyN,IAAT,CAAc/C,KAAd,CAAoBgD,WAApB,CAAgC,UAAhC,EAA4C,QAA5C,EAAsD,WAAtD;IACD,GAFD;;IAIA,MAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB;IACvB3N,IAAAA,QAAQ,CAACyN,IAAT,CAAc/C,KAAd,CAAoBkD,QAApB,GAA+BX,iBAAiB,IAAI,EAApD;IACAC,IAAAA,eAAe,CAAC,IAAD,CAAf;IACD,GAHD;;IAKAH,EAAAA,WAAS,CAAC;IACR,QAAInI,KAAK,CAACuI,IAAV,EAAgB;IACdD,MAAAA,eAAe,CAAClN,QAAQ,CAACyN,IAAT,CAAc/C,KAAd,CAAoBkD,QAArB,CAAf;IACAJ,MAAAA,iBAAiB;IACjBJ,MAAAA,OAAO,CAAC,IAAD,CAAP;IACAE,MAAAA,UAAU,CAAC,IAAD,CAAV;IACD;;IACD,QAAI,CAAC1I,KAAK,CAACuI,IAAX,EAAiB;IACfU,MAAAA,MAAM,CAACC,UAAP,CAAkB;IAChBV,QAAAA,OAAO,CAAC,KAAD,CAAP;IACD,OAFD,EAEG,GAFH;IAGAE,MAAAA,UAAU,CAAC,KAAD,CAAV;IACAK,MAAAA,gBAAgB;IACjB;;IAED,WAAO;IACLA,MAAAA,gBAAgB;IACjB,KAFD;IAGD,GAlBQ,EAkBN,CAAC/I,KAAK,CAACuI,IAAP,CAlBM,CAAT;IAoBA,MAAMY,eAAe,gBAAGC,mBAAQ,CAACC,YAAT,eACtBvI,8BAAA,MAAA;qBACY;sBACE;uBACCyH;SACTtI;IACJwD,IAAAA,SAAS,EAAEkF;IACX7C,IAAAA,KAAK,EAAE;IAAEwD,MAAAA,MAAM,EAAEtJ,KAAK,CAACsJ;IAAhB;QANT,CADsB,EAStBlO,QAAQ,CAACyN,IATa,CAAxB;IAYA,SAAOM,eAAP;IACD;IAEDf,QAAQ,CAAC/C,WAAT,GAAuB,UAAvB;;QCpEakE,KAAK,GAAG,SAARA,KAAQ,CAACvJ,KAAD;;;IACX,MAAAiB,UAAU,GAAkCjB,KAAK,WAAjD;IAAA,MAAYyC,QAAQ,GAAwBzC,KAAK,SAAjD;IAAA,MAAsBwJ,MAAM,GAAgBxJ,KAAK,OAAjD;IAAA,MAA8ByD,SAAS,GAAKzD,KAAK,UAAjD;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtBoG,IAAAA,KAAK,EAAE;SACP/N,GAAC,YAAUyF,WAAX,GAA0BA,UAAU,IAAI,CAACuI,QACzChO,GAAC,mBAAiByF,WAAlB,GAAiCuI,UAJX,GAMxB/F,SANwB,CAA1B;IASA,sBACE3C,8BAAA,OAAA;qBAAgB;SAAyBb;IAAWwD,IAAAA,SAAS,EAAEkF;QAA/D,EACGlG,QADH,CADF;IAKD;IAED8G,KAAK,CAAClE,WAAN,GAAoB,OAApB;IACAkE,KAAK,CAAChE,YAAN,GAAqB;IACnBtE,EAAAA,UAAU,EAAE;IADO,CAArB;;ICEA,IAAMwI,UAAU,GAAG,SAAbA,UAAa,CAACjO,EAAD;UAAG4K,IAAI;UAAEsD,OAAO;;IACjC,MAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAACC,EAAD;IACrB,QAAIF,OAAJ,EAAa;IACXE,MAAAA,EAAE,CAACC,cAAH;IACAH,MAAAA,OAAO,CAACtD,IAAI,CAAC0D,IAAN,CAAP;IACD;IACF,GALD;;IAOA,sBACEhJ,8BAAA,CAACiJ,IAAD;IACEtG,IAAAA,SAAS,EAAC;qBACA;IACVuG,IAAAA,IAAI,EAAE5D,IAAI,CAAC0D;IACXJ,IAAAA,OAAO,EAAEC;IACT1I,IAAAA,UAAU,EAAC;IACXD,IAAAA,IAAI,EAAC;OANP,EAQGoF,IAAI,CAAC6D,KARR,CADF;IAYD,CApBD;;IAsBA,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAAC1O,EAAD;UAAG4K,IAAI;UAAEsD,OAAO;UAAErD,KAAK;UAAE8D,WAAW;IACrD,sBACErJ,8BAAA,MAAA;IAAK0F,IAAAA,GAAG,EAAEH;IAAO5C,IAAAA,SAAS,EAAC;qBAA6B;OAAxD,EACG0G,WAAW,gBACVrJ,8BAAA,CAACoE,OAAD;IAASV,IAAAA,OAAO,EAAE4B,IAAI,CAAC6D;IAAO9E,IAAAA,QAAQ,EAAC;OAAvC,eACErE,8BAAA,CAAC2I,UAAD;IAAYrD,IAAAA,IAAI,EAAEA;IAAMsD,IAAAA,OAAO,EAAEA;OAAjC,CADF,CADU,gBAKV5I,8BAAA,CAAC2I,UAAD;IAAYrD,IAAAA,IAAI,EAAEA;IAAMsD,IAAAA,OAAO,EAAEA;OAAjC,CANJ,eAQE5I,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAC;OAAhB,KAAA,CARF,CADF;IAYD,CAbD;;IAeA,IAAM2G,cAAc,GAAG,SAAjBA,cAAiB,CAAChD,IAAD,EAAiCsC,OAAjC;IACrB,MAAMW,OAAO,GAAGjD,IAAI,CAACjB,GAAL,CAAS,UAACC,IAAD;IAAU,WAAC;IAClC6D,MAAAA,KAAK,EAAE7D,IAAI,CAAC6D,KADsB;IAElC1L,MAAAA,KAAK,EAAE6H,IAAI,CAAC0D;IAFsB,KAAD;IAGjC,GAHc,CAAhB;;IAKA,MAAMQ,aAAa,GAAG,SAAhBA,aAAgB;IACpB,wBACExJ,8BAAA,CAACyJ,MAAD;IACEC,MAAAA,IAAI,EAAC;IACLxJ,MAAAA,IAAI,EAAC;IACLC,MAAAA,UAAU,EAAC;IACXqF,MAAAA,IAAI,EAAC;IACLmE,MAAAA,SAAS,EAAE;IACXhH,MAAAA,SAAS,EAAC;uBACA;SAPZ,CADF;IAWD,GAZD;;IAcA,sBACE3C,8BAAA,CAAC4J,QAAD;IACEjH,IAAAA,SAAS,EAAC;IACVkH,IAAAA,WAAW,EAAE;IACbC,IAAAA,cAAc,EAAE;IAAEN,MAAAA,aAAa;IAAf;IAChBD,IAAAA,OAAO,EAAEA;IACTQ,IAAAA,IAAI,EAAE;IACNC,IAAAA,QAAQ,EAAE,kBAACC,QAAD;IACR,UAAIrB,OAAJ,EAAa;IACXA,QAAAA,OAAO,CAACqB,QAAD,CAAP;IACD;IACF;OAVH,CADF;IAcD,CAlCD;;QAoCaC,WAAW,GAAG,SAAdA,WAAc,CAAChL,KAAD;;;IACjB,MAAAoH,IAAI,GAAsCpH,KAAK,KAA/C;IAAA,MAAM0J,OAAO,GAA6B1J,KAAK,QAA/C;IAAA,MAAeyD,SAAS,GAAkBzD,KAAK,UAA/C;IAAA,MAA0BmK,WAAW,GAAKnK,KAAK,YAA/C;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMiL,eAAe,GAAG9H,8BAAU,WAE9B3H,GAAC,cAAD,GAAiB,QAFa,GAIhCiI,SAJgC,CAAlC;IAOA,sBACE3C,8BAAA,MAAA;qBAAe;SAA+Bb;IAAWwD,IAAAA,SAAS,EAAEwH;QAApE,EACG7D,IAAI,CAAChK,MAAL,IAAe,CAAf,GACCgK,IAAI,CAACjB,GAAL,CAAS,UAACC,IAAD,EAAOC,KAAP;IACP,wBAAOvF,8BAAA,CAACoJ,UAAD;IAAY1D,MAAAA,GAAG,EAAEH;IAAOD,MAAAA,IAAI,EAAEA;IAAMsD,MAAAA,OAAO,EAAEA;IAASS,MAAAA,WAAW,EAAEA;SAAnE,CAAP;IACD,GAFD,CADD,gBAKCrJ,8BAAA,0BAAA,MAAA,eACEA,8BAAA,CAACoJ,UAAD;IAAY9D,IAAAA,IAAI,EAAEgB,IAAI,CAAC,CAAD;IAAKsC,IAAAA,OAAO,EAAEA;IAASS,IAAAA,WAAW,EAAEA;OAA1D,CADF,eAEErJ,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACG2G,cAAc,CAAChD,IAAI,CAAC7C,KAAL,CAAW,CAAX,EAAc6C,IAAI,CAAChK,MAAL,GAAc,CAA5B,CAAD,EAAiCsM,OAAjC,CADjB,eAEE5I,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAC;OAAhB,KAAA,CAFF,CAFF,eAME3C,8BAAA,CAACoJ,UAAD;IAAY9D,IAAAA,IAAI,EAAEgB,IAAI,CAACA,IAAI,CAAChK,MAAL,GAAc,CAAf;IAAmBsM,IAAAA,OAAO,EAAEA;IAASS,IAAAA,WAAW,EAAEA;OAAxE,CANF,CANJ,CADF;IAkBD;;ICjDD,IAAMe,aAAW,GAA+B;IAC9C3I,EAAAA,IAAI,EAAE,EADwC;IAE9CD,EAAAA,OAAO,EAAE,EAFqC;IAG9C6I,EAAAA,KAAK,EAAE;IAHuC,CAAhD;IAOA,IAAMC,aAAa,gBAAGtK,gBAAK,CAACuK,UAAN,CAAiD,UAACrL,KAAD,EAAQsL,GAAR;;;IAEnE,MAAA3I,KAgBE3C,KAAK,KAhBP;IAAA,MAAAgB,IAAI,mBAAG,cAAP;IAAA,MACA6D,KAeE7E,KAAK,WAhBP;IAAA,MACAiB,UAAU,mBAAG,YADb;IAAA,MAEAoD,KAcErE,KAAK,UAhBP;IAAA,MAEAuL,SAAS,mBAAG,WAFZ;IAAA,MAGAlE,KAaErH,KAAK,SAhBP;IAAA,MAGAwL,QAAQ,mBAAG,MAHX;IAAA,MAIAf,SAAS,GAYPzK,KAAK,UAhBP;IAAA,MAKAwK,IAAI,GAWFxK,KAAK,KAhBP;IAAA,MAMAyC,QAAQ,GAUNzC,KAAK,SAhBP;IAAA,MAOAsG,IAAI,GASFtG,KAAK,KAhBP;IAAA,MAQAyL,QAAQ,GAQNzL,KAAK,SAhBP;IAAA,MASA+K,QAAQ,GAON/K,KAAK,SAhBP;IAAA,MAUA0L,OAAO,GAML1L,KAAK,QAhBP;IAAA,MAWA2L,QAAQ,GAKN3L,KAAK,SAhBP;IAAA,MAYAyD,SAAS,GAIPzD,KAAK,UAhBP;IAAA,MAgBEA,KAAK,QAhBP;IAAA,UAcA4L,QAAQ,GAEN5L,KAAK,SAhBP;IAAA,MAeG6L,IAAI,UACL7L,OAjBE,OAAA,cAAA,aAAA,YAAA,aAAA,QAAA,YAAA,QAAA,YAAA,YAAA,WAAA,YAAA,aAAA,WAAA,YAAA;;IAmBN,MAAM8L,WAAW,GAAG3I,8BAAU,WAC5B3H,GAAC,SAAD,GAAY,MACZA,GAAC,mBAAD,GAAsBiQ,UACtBjQ,GAAC,aAAWwF,KAAZ,GAAqBA,MACrBxF,GAAC,aAAWwF,IAAX,YAAD,GAA2B,CAACyB,UAC5BjH,GAAC,aAAWyF,WAAZ,GAA2BA,YAC3BzF,GAAC,mBAAD,GAAsBuP,QAAQ,KAAK9J,UAAU,KAAK,OAAf,IAA0BA,UAAU,KAAK,aAA9C,GAC9BzF,GAAC,uBAAqB+P,UAAtB,GAAoC9I,QAAQ,IAAI8I,WAChD/P,GAAC,KAAGiI,UAAJ,GAAkBA,aARU,EAA9B;IAWA,MAAMsI,SAAS,GAAG5I,8BAAU,WAC1BE,GAAC,cAAD,GAAiB,MACjBA,GAAC,kBAAgBkI,UAAjB,GAA+B9I,QAAQ,IAAI8I,aAFjB,EAA5B;IAKA,sBACEzK,8BAAA,SAAA;qBACY;IACVwK,IAAAA,GAAG,EAAEA;IACLd,IAAAA,IAAI,EAAEA;IACN/G,IAAAA,SAAS,EAAEqI;IACXH,IAAAA,QAAQ,EAAEA,QAAQ,IAAID;IACtBF,IAAAA,QAAQ,EAAEA;SACNK,KAPN,EASGH,OAAO,gBACN5K,8BAAA,0BAAA,MAAA,eACEA,8BAAA,CAACkL,OAAD;IACEhL,IAAAA,IAAI,EAAC;IACLC,IAAAA,UAAU,EAAEA,UAAU,KAAK,OAAf,IAA0BA,UAAU,KAAK,aAAzC,GAAyD,WAAzD,GAAuE;qBACzE;IACVwC,IAAAA,SAAS,EAAC;OAJZ,CADF,eAOE3C,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAC;OAAhB,EAAmDhB,QAAQ,IAAI,EAA/D,CAPF,CADM,gBAWN3B,8BAAA,0BAAA,MAAA,EACGwF,IAAI,iBACHxF,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEsI;OAAhB,eACEjL,8BAAA,CAACsB,IAAD;qBACY;IACVsB,IAAAA,IAAI,EAAE4C;IACNkE,IAAAA,IAAI,EAAEoB;IACN5K,IAAAA,IAAI,EAAEyJ,SAAS,IAAI,CAAChI,QAAd,GAAyByI,aAAW,CAAClK,IAAD,CAAX,GAAoB,CAA7C,GAAiDkK,aAAW,CAAClK,IAAD;OAJpE,CADF,CAFJ,EAWGyB,QAAQ,iBAAI3B,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAC;OAAhB,EAA+BhB,QAA/B,CAXf,CApBJ,CADF;IAqCD,CAzEqB,CAAtB;QA2Ea8H,MAAM,gBAAGzJ,gBAAK,CAACuK,UAAN,CAAiD,UAACrL,KAAD,EAAQsL,GAAR;IAC7D,MAAAhF,IAAI,GAAwBtG,KAAK,KAAjC;IAAA,MAAMwE,OAAO,GAAexE,KAAK,QAAjC;IAAA,MAAeyC,QAAQ,GAAKzC,KAAK,SAAjC;IAER,SAAOsG,IAAI,IAAI9B,OAAR,IAAmB,CAAC/B,QAApB,gBACL3B,8BAAA,CAACoE,OAAD;IAASV,IAAAA,OAAO,EAAEA;OAAlB,eACE1D,8BAAA,CAACsK,aAAD,eAAmBpL;IAAOsL,IAAAA,GAAG,EAAEA;QAA/B,CADF,CADK,gBAKLxK,8BAAA,CAACsK,aAAD,eAAmBpL;IAAOsL,IAAAA,GAAG,EAAEA;QAA/B,CALF;IAOD,CAVqB;IAYtBf,MAAM,CAAClF,WAAP,GAAqB,QAArB;;;;;;;;;;;;;;;;;;AChMA,iBAAe;IACb4G,EAAAA,cAAc,EAAE,EADH;IAEbC,EAAAA,UAAU,EAAE,CAFC;IAGbC,EAAAA,UAAU,EAAE,EAHC;IAIbC,EAAAA,WAAW,EAAE,CAJA;IAKbC,EAAAA,SAAS,EAAE,CALE;IAMbC,EAAAA,MAAM,EAAE,CAAC,KAAD,EAAQ,KAAR,EAAe,KAAf,EAAsB,KAAtB,EAA6B,KAA7B,EAAoC,KAApC,EAA2C,KAA3C,EAAkD,KAAlD,EAAyD,KAAzD,EAAgE,KAAhE,EAAuE,KAAvE,EAA8E,KAA9E,CANK;IAObC,EAAAA,IAAI,EAAE;IACJC,IAAAA,KAAK,EAAE,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,EAAqC,IAArC,CADH;IAEJrB,IAAAA,KAAK,EAAE,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,EAAqC,IAArC;IAFH;IAPO,CAAf;;ICOQ,IAAAc,cAAc,GAAKQ,MAAM,eAAzB;IAED,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACC,GAAD;IAC3B,SAAA,CAAC,QAAD,EAAW,QAAX,EAAqB,SAArB,EAAgC,WAAhC,EAA6C,UAA7C,EAAyD,QAAzD,EAAmE,UAAnE,EAA+EC,OAA/E,CAAuFD,GAAvF,CAAA;IAA2F,CADtF;IAGA,IAAME,YAAY,GAAG,SAAfA,YAAe,CAAC7N,IAAD;IAA0B,SAAAA,IAAI,GAAIA,IAAI,GAAGiN,cAAf;IAA8B,CAA7E;IAEA,IAAMa,cAAc,GAAG,SAAjBA,cAAiB,CAAC9N,IAAD,EAAeD,KAAf;IAAyC,SAAA,IAAIpC,IAAJ,CAASqC,IAAT,EAAeD,KAAK,GAAG,CAAvB,EAA0B,CAA1B,EAA6BgO,OAA7B,EAAA;IAAsC,CAAtG;IAEA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAAChO,IAAD,EAAeD,KAAf;IAAyC,SAAA,IAAIpC,IAAJ,CAASqC,IAAT,EAAeD,KAAf,EAAsBkO,MAAtB,EAAA;IAA8B,CAAlG;IAEA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACxQ,CAAD;IACzB,MAAIA,CAAJ,EAAO;IACL,QAAMyQ,OAAO,GAAGC,aAAa,CAAC1Q,CAAD,CAA7B;;IACA,QAAIyQ,OAAJ,EAAa;IACX,UAAMnO,IAAI,GAAGmO,OAAO,CAACE,WAAR,EAAb;IACA,UAAMtO,KAAK,GAAGoO,OAAO,CAACG,QAAR,EAAd;IACA,UAAMX,GAAG,GAAGQ,OAAO,CAACF,MAAR,EAAZ;IACA,UAAMpO,IAAI,GAAGsO,OAAO,CAACJ,OAAR,EAAb;IACA,UAAMQ,UAAU,GAAGV,YAAY,CAAC7N,IAAD,CAA/B;IAEA,aAAO;IAAEuO,QAAAA,UAAU,YAAZ;IAAcvO,QAAAA,IAAI,MAAlB;IAAoBD,QAAAA,KAAK,OAAzB;IAA2B4N,QAAAA,GAAG,KAA9B;IAAgC9N,QAAAA,IAAI;IAApC,OAAP;IACD,KARD,MAQO;IACL,aAAO,EAAP;IACD;IACF;;IACD,SAAO,EAAP;IACD,CAhBM;IAkBA,IAAMuO,aAAa,GAAG,SAAhBA,aAAgB,CAC3B1Q,CAD2B,EAE3BZ,MAF2B,EAG3BuC,UAH2B;IAK3B,MAAI8O,OAAJ;;IAEA,MAAIzQ,CAAJ,EAAO;IACL,QAAI,OAAOA,CAAP,KAAa,QAAjB,EAA2B;IACzByQ,MAAAA,OAAO,GAAG,IAAIxQ,IAAJ,CAASD,CAAT,CAAV;IACD,KAFD,MAEO,IAAI,OAAOA,CAAP,KAAa,QAAjB,EAA2B;IAChC,aAAOZ,MAAM,GAAG0R,eAAe,CAAC1R,MAAD,EAASY,CAAT,EAAY2B,UAAZ,CAAlB,GAA4CoP,SAAzD;IACD,KAFM,MAEA,IAAI,EAAE/Q,CAAC,YAAYC,IAAf,CAAJ,EAA0B;IACzB,UAAAnB,KAAwBkB,CAAxB;IAAA,UAAEsC,IAAI,UAAN;IAAA,UAAQD,KAAK,WAAb;IAAA,UAAeF,IAAI,UAAnB;IACNsO,MAAAA,OAAO,GAAG,IAAIxQ,IAAJ,CAASqC,IAAT,EAAeD,KAAf,EAAsBF,IAAtB,EAA4B,CAA5B,EAA+B,CAA/B,EAAkC,CAAlC,CAAV;IACD,KAHM,MAGA;IACLsO,MAAAA,OAAO,GAAGzQ,CAAV;IACD;IACF;;IAED,SAAOyQ,OAAP;IACD,CArBM;IAuBA,IAAMO,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAChR,CAAD,EAA0BiR,QAA1B,EAA8CC,UAA9C;IAC9B,MAAIlR,CAAJ,EAAO;IACG,QAAYmR,WAAW,GAAKX,WAAW,CAACxQ,CAAD,CAAX,WAA5B;;IAER,YAAQiR,QAAR;IACE,WAAK,MAAL;IACE,YAAIE,WAAW,GAAGD,UAAlB,EAA8B,OAAO,IAAP;IAC9B;;IAEF,WAAK,MAAL;IACE,YAAIC,WAAW,GAAGD,UAAlB,EAA8B,OAAO,IAAP;IAC9B;;IAEF,WAAK,OAAL;IACE,YAAIC,WAAW,KAAKD,UAApB,EAAgC,OAAO,IAAP;IAChC;IAXJ;IAaD;;IACD,SAAO,KAAP;IACD,CAnBM;IAqBA,IAAME,WAAW,GAAG,SAAdA,WAAc,CACzBpR,CADyB,EAEzBiR,QAFyB,EAGzBI,QAHyB,EAIzBC,SAJyB,EAKzBC,QALyB;IAOzB,MAAIvR,CAAJ,EAAO;IACC,QAAAlB,KAA0D0R,WAAW,CAACxQ,CAAD,CAArE;IAAA,QAAQwR,SAAS,UAAjB;IAAA,QAA0BC,UAAU,WAApC;IAAA,QAA4CC,SAAS,UAArD;;IAEN,YAAQT,QAAR;IACE,WAAK,MAAL;IACE,YAAIO,SAAS,GAAGH,QAAhB,EAA0B,OAAO,IAAP;IAC1B,YAAIG,SAAS,GAAGH,QAAhB,EAA0B,OAAO,KAAP;;IAC1B,YAAIC,SAAS,KAAKP,SAAlB,EAA6B;IAC3B,cAAIU,UAAU,GAAGH,SAAjB,EAA4B,OAAO,IAAP;IAC5B,cAAIG,UAAU,GAAGH,SAAjB,EAA4B,OAAO,KAAP;IAC7B;;IACD,YAAIC,QAAQ,KAAKR,SAAb,IAA0BW,SAAS,GAAGH,QAA1C,EAAoD,OAAO,IAAP;IACpD;;IAEF,WAAK,MAAL;IACE,YAAIC,SAAS,GAAGH,QAAhB,EAA0B,OAAO,IAAP;IAC1B,YAAIG,SAAS,GAAGH,QAAhB,EAA0B,OAAO,KAAP;;IAC1B,YAAIC,SAAS,KAAKP,SAAlB,EAA6B;IAC3B,cAAIU,UAAU,GAAGH,SAAjB,EAA4B,OAAO,IAAP;IAC5B,cAAIG,UAAU,GAAGH,SAAjB,EAA4B,OAAO,KAAP;IAC7B;;IACD,YAAIC,QAAQ,KAAKR,SAAb,IAA0BW,SAAS,GAAGH,QAA1C,EAAoD,OAAO,IAAP;IACpD;;IAEF,WAAK,OAAL;IACE,YAAIA,QAAQ,KAAKR,SAAjB,EAA4B;IAC1B,cAAIS,SAAS,KAAKH,QAAd,IAA0BI,UAAU,KAAKH,SAAzC,IAAsDI,SAAS,KAAKH,QAAxE,EAAkF,OAAO,IAAP;IACnF,SAFD,MAEO,IAAID,SAAS,KAAKP,SAAlB,EAA6B;IAClC,cAAIS,SAAS,KAAKH,QAAd,IAA0BI,UAAU,KAAKH,SAA7C,EAAwD,OAAO,IAAP;IACzD,SAFM,MAEA,IAAIE,SAAS,KAAKH,QAAlB,EAA4B,OAAO,IAAP;;IA1BvC;IA4BD;;IACD,SAAO,KAAP;IACD,CAxCM;IA0CA,IAAMtR,iBAAiB,GAAG,SAApBA,iBAAoB,CAACX,MAAD,EAAiBY,CAAjB;IAC/B,MAAIZ,MAAM,IAAIY,CAAd,EAAiB;IACT,QAAAlB,KAAwB0R,WAAW,CAACxQ,CAAD,CAAnC;IAAA,QAAE2R,MAAI,UAAN;IAAA,QAAQC,OAAK,WAAb;IAAA,QAAenP,MAAI,UAAnB;;IAEN,QAAMoP,WAAS,GAAGzS,MAAM,CAACF,QAAP,CAAgB,GAAhB,IAAuB,GAAvB,GAA6B,GAA/C;IACA,QAAM4S,GAAC,GAAG1S,MAAM,CAAC8B,KAAP,CAAa2Q,WAAb,CAAV;IACA,QAAMpQ,GAAG,GAAGqQ,GAAC,CAACrO,MAAF,CAAS,UAACsO,GAAD,EAAMpO,IAAN,EAAYtC,CAAZ;IACnB,cAAQsC,IAAR;IACE,aAAK,IAAL;IACEoO,UAAAA,GAAG,IAAI,CAACH,OAAK,GAAG,CAAR,IAAa,GAAd,KAAsBA,OAAK,GAAG,CAA9B,CAAP;IACA;;IACF,aAAK,MAAL;IACEG,UAAAA,GAAG,IAAIJ,MAAP;IACA;;IACF,aAAK,IAAL;IACEI,UAAAA,GAAG,IAAI,CAACtP,MAAI,GAAG,EAAP,IAAa,GAAd,IAAqBA,MAA5B;IACA;IATJ;;IAWA,UAAIpB,CAAC,KAAKyQ,GAAC,CAACpR,MAAF,GAAW,CAArB,EAAwBqR,GAAG,IAAIF,WAAP;IACxB,aAAOE,GAAP;IACD,KAdW,EAcT,EAdS,CAAZ;IAgBA,WAAOtQ,GAAP;IACD;;IACD,SAAO,EAAP;IACD,CAzBM;IA2BA,IAAMqP,eAAe,GAAG,SAAlBA,eAAkB,CAAC1R,MAAD,EAAiBqC,GAAjB,EAA8BE,UAA9B;IAA8B,2BAAA,EAAA;IAAAA,IAAAA,eAAA;;;IAC3D,MAAID,OAAO,CAACC,UAAD,EAAaF,GAAb,EAAkBrC,MAAlB,CAAX,EAAsC;IACpC,QAAMoB,SAAS,GAAGpB,MAAM,CAACF,QAAP,CAAgB,GAAhB,IAAuB,GAAvB,GAA6B,GAA/C;IAEA,QAAI8S,MAAI,GAAG,CAAC,CAAZ;IAAA,QACEC,OAAK,GAAG,CAAC,CADX;IAAA,QAEEvP,MAAI,GAAG,CAAC,CAFV;IAGA,QAAMwP,GAAC,GAAGzQ,GAAG,CAACP,KAAJ,CAAUV,SAAV,CAAV;IACApB,IAAAA,MAAM,CAAC8B,KAAP,CAAaV,SAAb,EAAwBW,OAAxB,CAAgC,UAACC,CAAD,EAAIC,CAAJ;IAC9B,cAAQD,CAAR;IACE,aAAK,IAAL;IACE6Q,UAAAA,OAAK,GAAG,CAACC,GAAC,CAAC7Q,CAAD,CAAF,GAAQ,CAAhB;IACA;;IACF,aAAK,MAAL;IACE2Q,UAAAA,MAAI,GAAG,CAACE,GAAC,CAAC7Q,CAAD,CAAT;IACA;;IACF,aAAK,IAAL;IACEqB,UAAAA,MAAI,GAAG,CAACwP,GAAC,CAAC7Q,CAAD,CAAT;IACA;IATJ;IAWD,KAZD;IAaA,QAAMrB,CAAC,GAAG0Q,aAAa,CAAC;IAAEpO,MAAAA,IAAI,QAAN;IAAQD,MAAAA,KAAK,SAAb;IAAeF,MAAAA,IAAI;IAAnB,KAAD,CAAvB;IACA,WAAOnC,CAAP;IACD,GAtBD,MAsBO;IACL,WAAO+Q,SAAP;IACD;IACF,CA1BM;IA4BA,IAAMoB,cAAc,GAAG,SAAjBA,cAAiB,CAC5BhQ,IAD4B,EAE5B8O,QAF4B,EAG5BM,QAH4B,EAI5BD,SAJ4B,EAK5BD,QAL4B;IAO5B,MAAMe,WAAW,GAAG,IAAInS,IAAJ,CAAYoR,QAAQ,MAAR,GAAYC,SAAZ,MAAA,GAAyBC,QAArC,CAApB;;IAEA,MAAIpP,IAAJ,EAAU;IACR,YAAQ8O,QAAR;IACE,WAAK,MAAL;IACE,eAAO9O,IAAI,IAAIiQ,WAAf;;IAEF,WAAK,OAAL;IACE,eAAOjQ,IAAI,CAACkQ,YAAL,OAAwBD,WAAW,CAACC,YAAZ,EAA/B;;IAEF,WAAK,MAAL;IACE,eAAOlQ,IAAI,IAAIiQ,WAAf;;IAEF;IACE,eAAO,KAAP;IAXJ;IAaD;;IACD,SAAO,KAAP;IACD,CAzBM;;;ICXuBE,EAAAA,2BAAA;;IAS5B,mBAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IAgLAkP,IAAAA,iBAAA,GAAc,UAAClQ,IAAD,EAAeD,KAAf,EAA+BF,IAA/B;IACZqQ,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZnQ,QAAAA,IAAI,MADQ;IAEZD,QAAAA,KAAK,OAFO;IAGZF,QAAAA,IAAI;IAHQ,OAAd;IAKD,KAND;;IAQAqQ,IAAAA,kBAAA,GAAe,UAAClQ,IAAD,EAAeD,KAAf,EAA8BF,IAA9B;IACb,UAAMnC,CAAC,GAAG,IAAIC,IAAJ,CAASqC,IAAT,EAAeD,KAAf,EAAsBF,IAAtB,CAAV;IACA,aAAOnC,CAAP;IACD,KAHD;;IAKAwS,IAAAA,oBAAA,GAAiB,UAAC7I,KAAD;IACT,UAAA7K,KAAsC0T,KAAI,CAACE,KAA3C;IAAA,UAAEC,YAAY,kBAAd;IAAA,UAAgBC,OAAO,aAAvB;IAAA,UAAyBC,QAAQ,cAAjC;IAEE,UAAApD,UAAU,GAAKM,MAAM,WAArB;IACR,UAAM+C,SAAS,GAAGH,YAAlB;IACA,UAAMtQ,KAAK,GAAG,CAACwQ,QAAQ,GAAGlJ,KAAZ,IAAqB8F,UAArB,KAAoC,CAAC,CAArC,GAAyC,EAAzC,GAA8C,CAACoD,QAAQ,GAAGlJ,KAAZ,IAAqB8F,UAAjF;IAEA,UAAInN,IAAJ;;IACA,UAAIqH,KAAK,IAAI,CAAb,EAAgB;IACdrH,QAAAA,IAAI,GAAGsQ,OAAO,IAAIjJ,KAAK,KAAK,CAAV,IAAetH,KAAK,GAAGwQ,QAAvB,GAAkC,CAAlC,GAAsC,CAA1C,CAAd;IACD,OAFD,MAEO;IACLvQ,QAAAA,IAAI,GAAGsQ,OAAO,IAAIjJ,KAAK,KAAK,CAAV,IAAetH,KAAK,GAAGwQ,QAAvB,GAAkC,CAAlC,GAAsC,CAA1C,CAAd;IACD;;IACD,aAAO;IAAEC,QAAAA,SAAS,WAAX;IAAaxQ,QAAAA,IAAI,MAAjB;IAAmBD,QAAAA,KAAK;IAAxB,OAAP;IACD,KAdD;;IAgBAmQ,IAAAA,qBAAA,GAAkB;IACV,UAAA1T,KAA8B0T,KAAI,CAAClP,KAAnC;IAAA,UAAEyP,WAAW,iBAAb;IAAA,UAAeC,UAAU,gBAAzB;IAEA,UAAArM,KAAkF6L,KAAI,CAACE,KAAvF;IAAA,UAAaO,cAAc,eAA3B;IAAA,UAAsCC,YAAY,aAAlD;IAAA,UAA+DC,cAAc,eAA7E;;IAEN,UAAIJ,WAAW,IAAIC,UAAnB,EAA+B;IACvB,YAAA/M,KAA0DuK,WAAW,CAACyC,cAAD,CAArE;IAAA,YAAQG,SAAS,UAAjB;IAAA,YAA0BC,UAAU,WAApC;IAAA,YAA4CC,SAAS,UAArD;;IAEA,YAAAnL,KAAoDqI,WAAW,CAAC0C,YAAD,CAA/D;IAAA,YAAQK,OAAO,UAAf;IAAA,YAAwBC,QAAQ,WAAhC;IAAA,YAAwCC,OAAO,UAA/C;;IAEA,YAAA9L,KAA0D6I,WAAW,CAAC2C,cAAD,CAArE;IAAA,YAAQO,SAAS,UAAjB;IAAA,YAA0BC,UAAU,WAApC;IAAA,YAA4CC,SAAS,UAArD;;IAEN,YAAIlC,SAAS,SAAb;;IACA,YAAIuB,cAAJ,EAAoB;IAClBvB,UAAAA,SAAS,GAAG,IAAIzR,IAAJ,CAASgT,cAAT,CAAZ;IACAvB,UAAAA,SAAS,CAACmC,OAAV,CAAkBP,SAAS,GAAGN,UAA9B;IAEA,iBACE5B,WAAW,CAACM,SAAD,EAAY,MAAZ,EAAoBgC,SAApB,EAA+BC,UAA/B,EAA2CC,SAAS,GAAG,CAAvD,CAAX,IACAxC,WAAW,CAACM,SAAD,EAAY,MAAZ,EAAoB6B,OAApB,EAA6BC,QAA7B,EAAuCC,OAAO,GAAG,CAAjD,CAFb;IAID;;IACD,YAAIP,YAAJ,EAAkB;IAChBxB,UAAAA,SAAS,GAAG,IAAIzR,IAAJ,CAASiT,YAAT,CAAZ;IACAxB,UAAAA,SAAS,CAACmC,OAAV,CAAkBJ,OAAO,GAAGT,UAA5B;IAEA,iBACE5B,WAAW,CAACM,SAAD,EAAY,MAAZ,EAAoBgC,SAApB,EAA+BC,UAA/B,EAA2CC,SAAS,GAAG,CAAvD,CAAX,IACAxC,WAAW,CAACM,SAAD,EAAY,MAAZ,EAAoB0B,SAApB,EAA+BC,UAA/B,EAA2CC,SAAS,GAAG,CAAvD,CAFb;IAID;IACF;;IACD,aAAO,KAAP;IACD,KAjCD;;IAmCAd,IAAAA,gBAAA,GAAa,UAAClQ,IAAD;IAAkB,aAAA;IAC7BkQ,QAAAA,KAAI,CAACsB,WAAL,CAAiBxR,IAAjB;;IACAkQ,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZsB,UAAAA,IAAI,EAAE;IADM,SAAd;IAGD,OAL8B;IAK9B,KALD;;IAOAvB,IAAAA,0BAAA,GAAuB,UACrBlQ,IADqB,EAErB0R,aAFqB,EAGrBC,UAHqB,EAIrB/G,EAJqB;IAMb,UAAAgH,WAAW,GAAK1B,KAAI,CAAClP,KAAL,YAAhB;IACR,UAAM6Q,QAAQ,GAAG;IACftS,QAAAA,KAAK,EAAES,IADQ;IAEfA,QAAAA,IAAI,EAAEA,IAFS;IAGf0R,QAAAA,aAAa,EAAEA,aAHA;IAIfC,QAAAA,UAAU,EAAEA;IAJG,OAAjB;IAMA,UAAIC,WAAJ,EAAiBA,WAAW,CAACC,QAAD,EAAWjH,EAAX,CAAX;IAClB,KAdD;;IAgBAsF,IAAAA,iBAAA,GAAc,UAACnQ,KAAD;IAAmB,aAAA;IAC/BmQ,QAAAA,KAAI,CAACsB,WAAL,CAAiBtB,KAAI,CAACE,KAAL,CAAWE,OAA5B,EAAqCvQ,KAArC;;IACAmQ,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZsB,UAAAA,IAAI,EAAE;IADM,SAAd;IAGD,OALgC;IAKhC,KALD;;IAOAvB,IAAAA,2BAAA,GAAwB,UACtBnQ,KADsB,EAEtB+R,cAFsB,EAGtBH,UAHsB,EAItB/G,EAJsB;IAMd,UAAA0C,MAAM,GAAKG,MAAM,OAAjB;IACA,UAAAsE,YAAY,GAAK7B,KAAI,CAAClP,KAAL,aAAjB;IACR,UAAMgR,SAAS,GAAG;IAChBzS,QAAAA,KAAK,EAAE+N,MAAM,CAACvN,KAAD,CADG;IAEhBA,QAAAA,KAAK,EAAEuN,MAAM,CAACvN,KAAD,CAFG;IAGhBC,QAAAA,IAAI,EAAEkQ,KAAI,CAACE,KAAL,CAAWpQ,IAHD;IAIhB8R,QAAAA,cAAc,EAAEA,cAJA;IAKhBH,QAAAA,UAAU,EAAEA;IALI,OAAlB;IAOA,UAAII,YAAJ,EAAkBA,YAAY,CAACC,SAAD,EAAYpH,EAAZ,CAAZ;IACnB,KAhBD;;IAkBAsF,IAAAA,gBAAA,GAAa,UAAC7I,KAAD,EAAgBxH,IAAhB,EAA8BoS,iBAA9B,EAAyDC,QAAzD;IACX,UAAMxU,CAAC,GAAGwS,KAAI,CAACiC,aAAL,CAAmB9K,KAAnB,EAA0BxH,IAA1B,EAAgCoS,iBAAhC,EAAmDC,QAAnD,EAA6D,KAA7D,CAAV;;IACAhC,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZlB,QAAAA,QAAQ,EAAEvR;IADE,OAAd;IAGD,KALD;;IAOAwS,IAAAA,mBAAA,GAAgB,UACd7I,KADc,EAEdxH,IAFc,EAGdoS,iBAHc,EAIdC,QAJc,EAKdE,aALc;IAOd,UAAIC,sBAAJ;IACA,UAAIC,qBAAJ;IACA,UAAI9G,IAAI,GAAG,EAAX;;IACA,UAAI3L,IAAI,IAAI,CAAZ,EAAe;IACbwS,QAAAA,sBAAsB,GAAGhL,KAAK,GAAG,CAAjC;IACAiL,QAAAA,qBAAqB,GAAGL,iBAAiB,GAAGpS,IAA5C;IACA2L,QAAAA,IAAI,GAAG,MAAP;IACD,OAJD,MAIO,IAAI3L,IAAI,GAAGqS,QAAX,EAAqB;IAC1BG,QAAAA,sBAAsB,GAAGhL,KAAzB;IACAiL,QAAAA,qBAAqB,GAAGzS,IAAxB;IACD,OAHM,MAGA;IACLwS,QAAAA,sBAAsB,GAAGhL,KAAzB;IACAiL,QAAAA,qBAAqB,GAAGzS,IAAxB;IACD;;IACK,UAAArD,KAAkB0T,KAAI,CAACqC,cAAL,CAAoBF,sBAApB,CAAlB;IAAA,UAAErS,IAAI,UAAN;IAAA,UAAQD,KAAK,WAAb;;IACN,UAAIqS,aAAa,KAAK,KAAtB,EAA6B;IAC3BlC,QAAAA,KAAI,CAACsB,WAAL,CAAiBxR,IAAjB,EAAuBD,KAAvB,EAA8BuS,qBAA9B;;IACApC,QAAAA,KAAI,CAACsC,qBAAL,CAA2BhH,IAA3B;IACD;;IACD,UAAM9N,CAAC,GAAGwS,KAAI,CAACuC,YAAL,CAAkBzS,IAAlB,EAAwBD,KAAxB,EAA+BuS,qBAA/B,CAAV;;IACA,aAAO5U,CAAP;IACD,KA5BD;;IA8BAwS,IAAAA,2BAAA,GAAwB,UAAC1E,IAAD;IAAkB,aAAA;IAClC,YAAAhP,KAA4C0T,KAAI,CAACE,KAAjD;IAAA,YAAEqB,IAAI,UAAN;IAAA,YAAQpB,YAAY,kBAApB;IAAA,YAAsBC,OAAO,aAA7B;IAAA,YAA+BC,QAAQ,cAAvC;IAEE,YAAAtD,cAAc,GAAiBQ,MAAM,eAArC;IAAA,YAAgBN,UAAU,GAAKM,MAAM,WAArC;;IAER,gBAAQgE,IAAR;IACE,eAAK,MAAL;IACE,gBAAIjG,IAAI,KAAK,MAAb,EAAqB0E,KAAI,CAACC,QAAL,CAAc;IAAEE,cAAAA,YAAY,EAAEA,YAAY,GAAGpD;IAA/B,aAAd;IACrB,gBAAIzB,IAAI,KAAK,MAAb,EAAqB0E,KAAI,CAACC,QAAL,CAAc;IAAEE,cAAAA,YAAY,EAAEA,YAAY,GAAGpD;IAA/B,aAAd;IACrB;;IAEF,eAAK,OAAL;IACE,gBAAIzB,IAAI,KAAK,MAAb,EAAqB0E,KAAI,CAACC,QAAL,CAAc;IAAEG,cAAAA,OAAO,EAAEA,OAAO,GAAG;IAArB,aAAd;IACrB,gBAAI9E,IAAI,KAAK,MAAb,EAAqB0E,KAAI,CAACC,QAAL,CAAc;IAAEG,cAAAA,OAAO,EAAEA,OAAO,GAAG;IAArB,aAAd;IACrB;;IAEF,eAAK,MAAL;IACE,gBAAI9E,IAAI,KAAK,MAAb,EAAqB;IACnB,kBAAI+E,QAAQ,KAAK,CAAjB,EAAoBL,KAAI,CAACC,QAAL,CAAc;IAAEG,gBAAAA,OAAO,EAAEA,OAAO,GAAG;IAArB,eAAd;;IACpBJ,cAAAA,KAAI,CAACC,QAAL,CAAc;IAAEI,gBAAAA,QAAQ,EAAE,CAACpD,UAAU,GAAGoD,QAAb,GAAwB,CAAzB,IAA8BpD;IAA1C,eAAd;IACD;;IACD,gBAAI3B,IAAI,KAAK,MAAb,EAAqB;IACnB,kBAAI+E,QAAQ,KAAKpD,UAAU,GAAG,CAA9B,EAAiC+C,KAAI,CAACC,QAAL,CAAc;IAAEG,gBAAAA,OAAO,EAAEA,OAAO,GAAG;IAArB,eAAd;;IACjCJ,cAAAA,KAAI,CAACC,QAAL,CAAc;IAAEI,gBAAAA,QAAQ,EAAE,CAACA,QAAQ,GAAG,CAAZ,IAAiBpD;IAA7B,eAAd;IACD;;IACD;IApBJ;IAsBD,OA3ByC;IA2BzC,KA3BD;;IA6BA+C,IAAAA,sBAAA,GAAmB,UAAC1E,IAAD;;;IACX,UAAAnH,KAA0C6L,KAAI,CAAClP,KAA/C;IAAA,UAAE0R,cAAc,oBAAhB;IAAA,UAAkBC,aAAa,mBAA/B;IAAA,UAAiC3Q,IAAI,UAArC;IAEA,UAAA2B,KAA4CuM,KAAI,CAACE,KAAjD;IAAA,UAAEqB,IAAI,UAAN;IAAA,UAAQpB,YAAY,kBAApB;IAAA,UAAsBC,OAAO,aAA7B;IAAA,UAA+BC,QAAQ,cAAvC;IAEN,UAAI5D,QAAQ,GAAG,KAAf;;IACA,cAAQ8E,IAAR;IACE,aAAK,MAAL;IACE,cAAIjG,IAAI,KAAK,MAAb,EAAqB;IACnBmB,YAAAA,QAAQ,GACN+B,gBAAgB,CAACgE,cAAD,EAAiB,MAAjB,EAAyBrC,YAAzB,CAAhB,IACA3B,gBAAgB,CAACgE,cAAD,EAAiB,OAAjB,EAA0BrC,YAA1B,CAFlB;IAGD;;IACD,cAAI7E,IAAI,KAAK,MAAb,EAAqB;IACnBmB,YAAAA,QAAQ,GACN+B,gBAAgB,CAACiE,aAAD,EAAgB,MAAhB,EAAwBtC,YAAxB,CAAhB,IACA3B,gBAAgB,CAACiE,aAAD,EAAgB,OAAhB,EAAyBtC,YAAzB,CAFlB;IAGD;;IACD;;IAEF,aAAK,OAAL;IACE,cAAI7E,IAAI,KAAK,MAAb,EAAqB;IACnBmB,YAAAA,QAAQ,GAAGmC,WAAW,CAAC4D,cAAD,EAAiB,MAAjB,EAAyBpC,OAAO,GAAG,CAAnC,CAAtB;IACD;;IACD,cAAI9E,IAAI,KAAK,MAAb,EAAqB;IACnBmB,YAAAA,QAAQ,GAAGmC,WAAW,CAAC6D,aAAD,EAAgB,MAAhB,EAAwBrC,OAAO,GAAG,CAAlC,CAAtB;IACD;;IACD;;IAEF,aAAK,MAAL;IACE,cAAI9E,IAAI,KAAK,MAAb,EAAqB;IACnBmB,YAAAA,QAAQ,GAAGmC,WAAW,CAAC4D,cAAD,EAAiB,MAAjB,EAAyBpC,OAAzB,EAAkCC,QAAQ,GAAG,CAA7C,CAAtB;IACD;;IACD,cAAI/E,IAAI,KAAK,MAAb,EAAqB;IACnBmB,YAAAA,QAAQ,GAAGmC,WAAW,CAAC6D,aAAD,EAAgB,MAAhB,EAAwBrC,OAAxB,EAAiCC,QAAQ,GAAG,CAA5C,CAAtB;IACD;;IACD;IA9BJ;;IAiCA,UAAMqC,eAAe,GAAGzO,8BAAU;IAChC,+BAAuB;aACvB3H,GAAC,0BAAwBgP,KAAzB,GAAkCA,QAFF,EAAlC;IAKA,0BACE1J,8BAAA,CAACyJ,MAAD;IACEC,QAAAA,IAAI,EAAC;IACL/G,QAAAA,SAAS,EAAEmO;IACX3Q,QAAAA,UAAU,EAAC;IACXqF,QAAAA,IAAI,EAAE,YAASkE,IAAI,KAAK,MAAT,GAAkB,SAAlB,GAA8B,MAAvC;IACNmB,QAAAA,QAAQ,EAAEA;IACV3K,QAAAA,IAAI,EAAEA,IAAI,KAAK,OAAT,GAAmB,MAAnB,GAA4B;IAClC0I,QAAAA,OAAO,EAAEwF,KAAI,CAACsC,qBAAL,CAA2BhH,IAA3B;WAPX,CADF;IAWD,KAvDD;;IAyDA0E,IAAAA,8BAAA,GAA2B,UAAC2C,QAAD;IAAoB,aAAA;IACrC,YAAAC,YAAY,GAAK5C,KAAI,CAAClP,KAAL,aAAjB;IAEF,YAAA+R,QAAQ,GAAK7C,KAAI,CAAClP,KAAL,SAAb;;IAEN,YAAI+R,QAAJ,EAAc;IACZ,cAAID,YAAY,GAAG,CAAnB,EAAsBC,QAAQ,GAAG,KAAX;IACvB;;IAED,YAAIA,QAAJ,EAAc;IACZ,cAAIF,QAAQ,KAAK,MAAjB,EAAyB3C,KAAI,CAACC,QAAL,CAAc;IAAEsB,YAAAA,IAAI,EAAE;IAAR,WAAd;IACzB,cAAIoB,QAAQ,KAAK,OAAjB,EAA0B3C,KAAI,CAACC,QAAL,CAAc;IAAEsB,YAAAA,IAAI,EAAE;IAAR,WAAd;IAC1B,cAAIoB,QAAQ,KAAK,MAAjB,EAAyB3C,KAAI,CAACC,QAAL,CAAc;IAAEsB,YAAAA,IAAI,EAAE;IAAR,WAAd;IAC1B;IACF,OAd8C;IAc9C,KAdD;;IAgBAvB,IAAAA,yBAAA,GAAsB,UAAC7I,KAAD;IACd,UAAA7K,KAAsC0T,KAAI,CAAClP,KAA3C;IAAA,UAAEgB,IAAI,UAAN;IAAA,UAAQ8Q,YAAY,kBAApB;IAAA,UAAsBrC,WAAW,iBAAjC;IAEA,UAAApM,KAAyB6L,KAAI,CAACE,KAA9B;IAAA,UAAEqB,IAAI,UAAN;IAAA,UAAQpB,YAAY,kBAApB;IAEE,UAAApD,cAAc,GAAaQ,MAAM,eAAjC;IAAA,UAAgBH,MAAM,GAAKG,MAAM,OAAjC;;IAEF,UAAA9J,KAA2CuM,KAAI,CAACqC,cAAL,CAAoBlL,KAApB,CAA3C;IAAA,UAAQ2L,UAAU,UAAlB;IAAA,UAA2BC,WAAW,WAAtC;;IAEN,UAAMC,kBAAkB,GAAG/O,8BAAU,CAAC;IACpC,kCAA0B,IADU;IAEpC,+CAAuCkD,KAAK,KAAKyL,YAAY,GAAG,CAF5B;IAGpC,gDAAwCzL,KAAK,KAAK;IAHd,OAAD,CAArC;IAMA,UAAI8L,aAAa,GAAG,EAApB;IAEA,UAAI1B,IAAI,KAAK,MAAb,EAAqB0B,aAAa,GAAM9C,YAAY,QAAZ,IAAkBA,YAAY,IAAIpD,cAAc,GAAG,CAArB,CAA9B,CAAnB;IACrB,UAAIwE,IAAI,KAAK,OAAb,EAAsB0B,aAAa,GAAG,KAAGH,UAAnB;;IAEtB,UAAMI,aAAa,GAAG,SAAhBA,aAAgB,CAACC,OAAD;IACpB,YAAIrR,IAAI,KAAK,OAAb,EAAsB;IACpB,8BACEF,8BAAA,0BAAA,MAAA,eACEA,8BAAA,CAACyC,IAAD;IAAMC,YAAAA,MAAM,EAAC;eAAb,EAAuB6O,OAAvB,CADF,EAEG5B,IAAI,KAAK,MAAT,IAAmB,CAAChB,WAApB,iBACC3O,8BAAA,CAACsB,IAAD;IAAMnB,YAAAA,UAAU,EAAC;IAAUwC,YAAAA,SAAS,EAAC;IAAOC,YAAAA,IAAI,EAAC;eAAjD,CAHJ,CADF;IAQD;;IACD,4BACE5C,8BAAA,0BAAA,MAAA,eACEA,8BAAA,CAACwR,OAAD;IAAStR,UAAAA,IAAI,EAAC;aAAd,EAAmBqR,OAAnB,CADF,EAEG5B,IAAI,KAAK,MAAT,IAAmB,CAAChB,WAApB,iBAAmC3O,8BAAA,CAACsB,IAAD;IAAMnB,UAAAA,UAAU,EAAC;IAAUwC,UAAAA,SAAS,EAAC;IAAOC,UAAAA,IAAI,EAAC;aAAjD,CAFtC,CADF;IAMD,OAjBD;;IAmBA,0BACE5C,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAEyO;WAAhB,EACGzB,IAAI,KAAK,MAAT,iBAGC3P,8BAAA,MAAA;IACE2C,QAAAA,SAAS,EAAC;IACViG,QAAAA,OAAO,EAAEwF,KAAI,CAACqD,wBAAL,CAA8B9B,IAA9B;WAFX,EAIG2B,aAAa,CAACD,aAAD,CAJhB,CAJJ,EAYG1B,IAAI,KAAK,MAAT,iBACC3P,8BAAA,0BAAA,MAAA,eAGEA,8BAAA,MAAA;IACE4I,QAAAA,OAAO,EAAEwF,KAAI,CAACqD,wBAAL,CAA8B9B,IAA9B;IACThN,QAAAA,SAAS,EAAC;WAFZ,EAIG2O,aAAa,CAAC9F,MAAM,CAAC2F,WAAD,CAAP,CAJhB,CAHF,eAWEnR,8BAAA,MAAA;IACE2C,QAAAA,SAAS,EAAC;IACViG,QAAAA,OAAO,EAAEwF,KAAI,CAACqD,wBAAL,CAA8B,OAA9B;WAFX,EAIGH,aAAa,CAACJ,UAAD,CAJhB,CAXF,CAbJ,CADF;IAmCD,KA1ED;;IA4EA9C,IAAAA,oBAAA,GAAiB;IACP,UAAAjD,cAAc,GAAiBQ,MAAM,eAArC;IAAA,UAAgBP,UAAU,GAAKO,MAAM,WAArC;IAEF,UAAAjR,KAAuD0T,KAAI,CAAClP,KAA5D;IAAA,UAAEgB,IAAI,UAAN;IAAA,UAAQyO,WAAW,iBAAnB;IAAA,UAAqBiC,cAAc,oBAAnC;IAAA,UAAqCC,aAAa,mBAAlD;IAEA,UAAAtO,KAA6B6L,KAAI,CAACE,KAAlC;IAAA,UAAEC,YAAY,kBAAd;IAAA,UAAgBtB,QAAQ,cAAxB;IAEN,UAAMyE,QAAQ,GAAG5S,IAAI,CAAC6S,IAAL,CAAUxG,cAAc,GAAGC,UAA3B,CAAjB;IAEA,aAAOzN,KAAK,CAACiU,IAAN,CAAW;IAAEtV,QAAAA,MAAM,EAAEoV;IAAV,OAAX,EAAiC,UAACG,EAAD,EAAKC,GAAL;IAAa,4BACnD9R,8BAAA,MAAA;IAAK0F,UAAAA,GAAG,EAAEoM;IAAKnP,UAAAA,SAAS,EAAC;aAAzB,EACGhF,KAAK,CAACiU,IAAN,CAAW;IAAEtV,UAAAA,MAAM,EAAE8O;IAAV,SAAX,EAAmC,UAAC2G,EAAD,EAAKC,GAAL;;;IAClC,cAAM5K,MAAM,GAAGgE,UAAU,GAAG0G,GAAb,GAAmBE,GAAlC;IACA,cAAI5K,MAAM,KAAKmH,YAAf,EAA6B,OAAO5B,SAAP;IAE7B,cAAMzO,IAAI,GAAGqQ,YAAY,GAAGnH,MAA5B;IACA,cAAMyD,QAAQ,GAAGmC,WAAW,CAAC4D,cAAD,EAAiB,MAAjB,EAAyB1S,IAAzB,CAAX,IAA6C8O,WAAW,CAAC6D,aAAD,EAAgB,MAAhB,EAAwB3S,IAAxB,CAAzE;IACA,cAAM+T,MAAM,GAAG,CAACpH,QAAD,IAAa,CAAC8D,WAAd,IAA6BzQ,IAAI,KAAKkQ,KAAI,CAACE,KAAL,CAAWpQ,IAAhE;;IACA,cAAM0R,aAAa,GAAG,SAAhBA,aAAgB;IACpB,mBAAO1R,IAAI,KAAK+O,QAAhB;IACD,WAFD;;IAIA,cAAMiF,UAAU,GAAG7P,8BAAU;IAC3B,8BAAkB;IAClB,sCAA0B4P;IAC1B,wCAA4BpH;IAC5B,kCAAsB;iBACtBnQ,GAAC,yBAAuBwF,KAAxB,GAAiCA,MACjCxF,uCAAA,GAAqCkV,aAAa,MANvB,EAA7B;IASA,cAAMuC,SAAS,GAAG9P,8BAAU,CAAC;IAC3B,wCAA4BuN,aAAa,MAAM,CAACqC,MADrB;IAE3B,6BAAiB;IAFU,WAAD,CAA5B;IAKA,cAAMG,YAAY,GAAG/P,8BAAU,CAAC;IAC9BgQ,YAAAA,OAAO,EAAE,CAACJ,MAAD,IAAW,CAACrC,aAAa,EAAzB,IAA+B,CAAC/E,QADX;IAE9ByH,YAAAA,KAAK,EAAEL,MAFuB;IAG9B,+BAAmBrC,aAAa,MAAM/E,QAHR;IAI9BpK,YAAAA,OAAO,EAAEmP,aAAa,EAJQ;IAK9B,gCAAoB/E;IALU,WAAD,CAA/B;IAQA,8BAGE7K,8BAAA,MAAA;IACE0F,YAAAA,GAAG,EAAKoM,GAAG,MAAH,GAAOE;6BACL;IACVrP,YAAAA,SAAS,EAAEuP;IACXtJ,YAAAA,OAAO,EAAEwF,KAAI,CAACmE,UAAL,CAAgBrU,IAAhB;IACTsU,YAAAA,WAAW,EAAEpE,KAAI,CAACqE,oBAAL,CAA0BC,IAA1B,CAA+BtE,KAA/B,EAAqClQ,IAArC,EAA2C0R,aAAa,EAAxD,EAA4D/E,QAA5D;eALf,eAOE7K,8BAAA,CAACyC,IAAD;IAAMvC,YAAAA,IAAI,EAAEA,IAAI,KAAK,OAAT,GAAmB,OAAnB,GAA6B;IAAW9F,YAAAA,KAAK,EAAEgY;IAAczP,YAAAA,SAAS,EAAEwP;eAApF,EACGjU,IADH,CAPF,CAHF;IAeD,SAhDA,CADH,CADmD;IAoDpD,OApDM,CAAP;IAqDD,KA9DD;;IAgEAkQ,IAAAA,qBAAA,GAAkB;IACR,UAAA/C,UAAU,GAA0BM,MAAM,WAA1C;IAAA,UAAYL,WAAW,GAAaK,MAAM,YAA1C;IAAA,UAAyBH,MAAM,GAAKG,MAAM,OAA1C;IAEF,UAAAjR,KAA0C0T,KAAI,CAAClP,KAA/C;IAAA,UAAEgB,IAAI,UAAN;IAAA,UAAQ0Q,cAAc,oBAAtB;IAAA,UAAwBC,aAAa,mBAArC;IAEA,UAAAtO,KAAyC6L,KAAI,CAACE,KAA9C;IAAA,UAAEE,OAAO,aAAT;IAAA,UAAWtQ,IAAI,UAAf;IAAA,UAAiB+O,QAAQ,cAAzB;IAAA,UAA2BC,SAAS,eAApC;IAEN,UAAMwE,QAAQ,GAAG5S,IAAI,CAAC6S,IAAL,CAAUtG,UAAU,GAAGC,WAAvB,CAAjB;IAEA,aAAO3N,KAAK,CAACiU,IAAN,CAAW;IAAEtV,QAAAA,MAAM,EAAEoV;IAAV,OAAX,EAAiC,UAACG,EAAD,EAAKC,GAAL;IAAa,4BACnD9R,8BAAA,MAAA;IAAK0F,UAAAA,GAAG,EAAEoM;IAAKnP,UAAAA,SAAS,EAAC;aAAzB,EACGhF,KAAK,CAACiU,IAAN,CAAW;IAAEtV,UAAAA,MAAM,EAAEgP;IAAV,SAAX,EAAoC,UAACyG,EAAD,EAAKC,GAAL;;;IACnC,cAAM/T,KAAK,GAAGqN,WAAW,GAAGwG,GAAd,GAAoBE,GAAlC;IACA,cAAMnH,QAAQ,GACZmC,WAAW,CAAC4D,cAAD,EAAiB,MAAjB,EAAyBpC,OAAzB,EAAkCvQ,KAAlC,CAAX,IAAuD+O,WAAW,CAAC6D,aAAD,EAAgB,MAAhB,EAAwBrC,OAAxB,EAAiCvQ,KAAjC,CADpE;IAEA,cAAMgU,MAAM,GAAG,CAACpH,QAAD,IAAa3M,IAAI,KAAKsQ,OAAtB,IAAiCvQ,KAAK,KAAKmQ,KAAI,CAACE,KAAL,CAAWrQ,KAArE;;IACA,cAAM+R,cAAc,GAAG,SAAjBA,cAAiB;IACrB,mBAAO/C,QAAQ,KAAKuB,OAAb,IAAwBtB,SAAS,KAAKjP,KAA7C;IACD,WAFD;;IAGA,cAAMiU,UAAU,GAAG7P,8BAAU;IAC3B,8BAAkB;IAClB,sCAA0B4P;IAC1B,wCAA4BpH;IAC5B,mCAAuB;iBACvBnQ,GAAC,0BAAwBwF,KAAzB,GAAkCA,MAClCxF,uCAAA,GAAqCsV,cAAc,MANxB,EAA7B;IASA,cAAMoC,YAAY,GAAG/P,8BAAU,CAAC;IAC9BgQ,YAAAA,OAAO,EAAE,CAACJ,MAAD,IAAW,CAACjC,cAAc,EAA1B,IAAgC,CAACnF,QADZ;IAE9ByH,YAAAA,KAAK,EAAEL,MAFuB;IAG9B,+BAAmBjC,cAAc,MAAMnF,QAHT;IAI9BpK,YAAAA,OAAO,EAAEuP,cAAc,EAJO;IAK9B,gCAAoBnF;IALU,WAAD,CAA/B;IAQA,cAAMsH,SAAS,GAAG9P,8BAAU,CAAC;IAC3B,wCAA4B2N,cAAc,MAAM,CAACiC,MADtB;IAE3B,6BAAiB;IAFU,WAAD,CAA5B;IAKA,8BAGEjS,8BAAA,MAAA;IACE0F,YAAAA,GAAG,EAAKoM,GAAG,MAAH,GAAOE;6BACL;IACVrP,YAAAA,SAAS,EAAEuP;IACXtJ,YAAAA,OAAO,EAAEwF,KAAI,CAACuE,WAAL,CAAiB1U,KAAjB;IACTuU,YAAAA,WAAW,EAAEpE,KAAI,CAACwE,qBAAL,CAA2BF,IAA3B,CAAgCtE,KAAhC,EAAsCnQ,KAAtC,EAA6C+R,cAAc,EAA3D,EAA+DnF,QAA/D;eALf,eAOE7K,8BAAA,CAACyC,IAAD;IAAMvC,YAAAA,IAAI,EAAEA,IAAI,KAAK,OAAT,GAAmB,OAAnB,GAA6B;IAAW9F,YAAAA,KAAK,EAAEgY;IAAczP,YAAAA,SAAS,EAAEwP;eAApF,EACG3G,MAAM,CAACvN,KAAD,CADT,CAPF,CAHF;IAeD,SA7CA,CADH,CADmD;IAiDpD,OAjDM,CAAP;IAkDD,KA3DD;;IA6DAmQ,IAAAA,gCAAA,GAA6B;IACnB,UAAAO,WAAW,GAAKP,KAAI,CAAClP,KAAL,YAAhB;;IAER,UAAIyP,WAAJ,EAAiB;IACfP,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZmB,UAAAA,SAAS,EAAE7C;IADC,SAAd;IAGD;IACF,KARD;;IAUAyB,IAAAA,oBAAA,GAAiB,UAAC7I,KAAD;IACP,UAAAgG,SAAS,GAAWI,MAAM,UAA1B;IAAA,UAAWF,IAAI,GAAKE,MAAM,KAA1B;IAEF,UAAAjR,KAA2B0T,KAAI,CAAClP,KAAhC;IAAA,UAAEgB,IAAI,UAAN;IAAA,UAAQ2S,cAAc,oBAAtB;IAEN,UAAMC,QAAQ,GAAG5S,IAAI,KAAK,OAAT,GAAmB,SAAnB,GAA+B,OAAhD;IAEA,0BACEF,8BAAA,0BAAA,MAAA,eACEA,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAC;WAAf,EACGhF,KAAK,CAACiU,IAAN,CAAW;IAAEtV,QAAAA,MAAM,EAAE;IAAV,OAAX,EAA0B,UAACyV,EAAD,EAAKlG,GAAL;IACzB,YAAMqG,UAAU,GAAG7P,8BAAU,CAAC;IAC5B,mCAAyB;IADG,SAAD,CAA7B;IAGA,YAAM0Q,QAAQ,GAAG,CAAClH,GAAG,GAAGN,SAAN,GAAkBK,aAAa,CAACiH,cAAD,CAAhC,IAAoDtH,SAArE;IAEA,4BACEvL,8BAAA,CAACyC,IAAD;IAAMiD,UAAAA,GAAG,EAAEmG;IAAKlJ,UAAAA,SAAS,EAAEuP;IAAY/R,UAAAA,UAAU,EAAC;IAAUuC,UAAAA,MAAM,EAAC;IAASxC,UAAAA,IAAI,EAAE4S;aAAlF,EACGrH,IAAI,CAACvL,IAAD,CAAJ,CAAW6S,QAAX,CADH,CADF;IAKD,OAXA,CADH,CADF,eAeE/S,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAC;IAAsBqQ,QAAAA,YAAY,EAAE5E,KAAI,CAAC6E;WAAxD,EACG7E,KAAI,CAAC8E,gBAAL,CAAsB3N,KAAtB,CADH,CAfF,CADF;IAqBD,KA5BD;;IAuCA6I,IAAAA,sBAAA,GAAmB,UAAC7I,KAAD;IACT,UAAAgG,SAAS,GAAiBI,MAAM,UAAhC;IAAA,UAAWN,UAAU,GAAKM,MAAM,WAAhC;IAEF,UAAAjR,KAAkG0T,KAAI,CAAClP,KAAvG;IAAA,UAAEgB,IAAI,UAAN;IAAA,UAAQyO,WAAW,iBAAnB;IAAA,UAAqBkE,cAAc,oBAAnC;IAAA,UAAqCjC,cAAc,oBAAnD;IAAA,UAAqDC,aAAa,mBAAlE;IAAA,UAAoEG,YAAY,kBAAhF;IAAA,UAAkFmC,WAAW,iBAA7F;IAEA,UAAA5Q,KAUF6L,KAAI,CAACE,KAVH;IAAA,UACJY,SAAS,eADL;IAAA,UAEJG,OAAO,aAFH;IAAA,UAGJG,SAAS,eAHL;IAAA,UAIE4D,SAAS,UAJX;IAAA,UAKGC,UAAU,WALb;IAAA,UAMEC,SAAS,UANX;IAAA,UAOJpG,SAAS,eAPL;IAAA,UAQJD,QAAQ,cARJ;IAAA,UASJsG,SAAS,eATL;;IAYA,UAAA1R,KAA2CuM,KAAI,CAACqC,cAAL,CAAoBlL,KAApB,CAA3C;IAAA,UAAQ2L,UAAU,UAAlB;IAAA,UAA2BC,WAAW,WAAtC;;IAEN,UAAMqC,SAAS,GAAGrC,WAAW,GAAG,CAAhC;IACA,UAAMsC,QAAQ,GAAGvC,UAAjB;IACA,UAAMf,iBAAiB,GAAGnE,cAAc,CAACyH,QAAD,EAAWD,SAAX,CAAxC;IAEA,UAAMpD,QAAQ,GAAGpE,cAAc,CAACkF,UAAD,EAAaC,WAAb,CAA/B;IACA,UAAMuC,aAAa,GAAGxH,kBAAkB,CAACgF,UAAD,EAAaC,WAAb,CAAxC;IACA,UAAMwC,oBAAoB,GAAG/H,aAAa,CAACiH,cAAD,CAA1C;IACA,UAAMe,OAAO,GAAG,CAACF,aAAa,GAAGC,oBAAhB,GAAuC,CAAxC,IAA6C,CAA7D;IACA,UAAME,SAAS,GAAG/U,IAAI,CAACgV,GAAL,CAASF,OAAT,CAAlB;IACA,UAAIlC,QAAQ,GAAG5S,IAAI,CAAC6S,IAAL,CAAU,CAACvB,QAAQ,GAAGyD,SAAZ,IAAyBtI,SAAnC,CAAf;;IAGA,UAAImG,QAAQ,KAAK,CAAjB,EAAoB,CAApB,MACO,IAAIV,YAAY,GAAG,CAAnB,EAAsB,CAAtB,MACA;IACLU,QAAAA,QAAQ,GAAGA,QAAQ,GAAG,CAAtB;IACD;;IACD,UAAMqC,YAAY,GAAG3F,KAAI,CAAC4F,eAAL,EAArB;;IAEA,UAAMC,MAAM,GAAG7F,KAAI,CAAClP,KAAL,CAAW+U,MAA1B;;IAEA,UAAMpL,cAAc,GAAG,SAAjBA,cAAiB,CAAC9K,IAAD;IAAkB,eAAA;IACvC,cAAI4Q,WAAJ,EAAiB;IACf,gBAAIO,SAAS,IAAIG,OAAjB,EAA0B;IACxBjB,cAAAA,KAAI,CAAC8F,UAAL,CAAgB3O,KAAhB,EAAuBxH,IAAvB,EAA6BoS,iBAA7B,EAAgDC,QAAhD;IACD,aAFD,MAEO;IACL,kBAAI,CAAC2D,YAAL,EAAmB3F,KAAI,CAAC8F,UAAL,CAAgB3O,KAAhB,EAAuBxH,IAAvB,EAA6BoS,iBAA7B,EAAgDC,QAAhD;IACpB;IACF,WAND,MAMO;IACLhC,YAAAA,KAAI,CAAC8F,UAAL,CAAgB3O,KAAhB,EAAuBxH,IAAvB,EAA6BoS,iBAA7B,EAAgDC,QAAhD;IACD;IACF,SAVwC;IAUxC,OAVD;;IAYA,UAAM+D,kBAAkB,GAAG,SAArBA,kBAAqB,CAACpW,IAAD;IAAkB,eAAA;IAC3C,cAAI4Q,WAAJ,EAAiB;IACf,gBAAM/S,CAAC,GAAGwS,KAAI,CAACuC,YAAL,CAAkBO,UAAlB,EAA8BC,WAA9B,EAA2CpT,IAA3C,CAAV;;IACA,gBAAI,CAACmR,SAAD,IAAc,CAACG,OAAnB,EAA4B;IAC1BjB,cAAAA,KAAI,CAACC,QAAL,CAAc;IACZmB,gBAAAA,SAAS,EAAE5T;IADC,eAAd;IAGD;IACF;IACF,SAT4C;IAS5C,OATD;;IAWA,UAAMwY,mBAAmB,GAAG,SAAtBA,mBAAsB,CAC1BrW,IAD0B,EAE1BsW,OAF0B,EAG1BxE,UAH0B,EAI1B/G,EAJ0B;IAM1B,YAAMlN,CAAC,GAAGwS,KAAI,CAACiC,aAAL,CAAmB9K,KAAnB,EAA0BxH,IAA1B,EAAgCoS,iBAAhC,EAAmDC,QAAnD,EAA6D,IAA7D,KAAsE,IAAIvU,IAAJ,EAAhF;IACQ,YAAA2P,MAAM,GAAWG,MAAM,OAAvB;IAAA,YAAQF,IAAI,GAAKE,MAAM,KAAvB;IACR,YAAM2I,OAAO,GAAG7I,IAAI,CAACpB,KAAL,CAAWzO,CAAC,CAACuQ,MAAF,EAAX,CAAhB;IACA,YAAMoI,QAAQ,GAAG;IACf9W,UAAAA,KAAK,EAAE7B,CAAC,CAACqQ,OAAF,EADQ;IAEfoI,UAAAA,OAAO,EAAEA,OAFM;IAGfxE,UAAAA,UAAU,EAAEA,UAHG;IAIf0D,UAAAA,SAAS,EAAEnF,KAAI,CAACE,KAAL,CAAWnB,QAJP;IAKfqH,UAAAA,QAAQ,EAAE5Y,CALK;IAMfmC,UAAAA,IAAI,EAAEnC,CAAC,CAACqQ,OAAF,EANS;IAOfhO,UAAAA,KAAK,EAAEuN,MAAM,CAAC5P,CAAC,CAAC4Q,QAAF,EAAD,CAPE;IAQftO,UAAAA,IAAI,EAAEtC,CAAC,CAAC2Q,WAAF,EARS;IASf+H,UAAAA,OAAO,EAAEA;IATM,SAAjB;IAWA,YAAInB,WAAJ,EAAiBA,WAAW,CAACoB,QAAD,EAAWzL,EAAX,CAAX;IAClB,OArBD;;IAuBA,aAAOnL,KAAK,CAACiU,IAAN,CAAW;IAAEtV,QAAAA,MAAM,EAAEoV;IAAV,OAAX,EAAiC,UAACG,EAAD,EAAKC,GAAL;IACtC,4BACE9R,8BAAA,MAAA;IAAK0F,UAAAA,GAAG,EAAEoM;IAAKnP,UAAAA,SAAS,EAAC;aAAzB,EACGhF,KAAK,CAACiU,IAAN,CAAW;IAAEtV,UAAAA,MAAM,EAAEiP;IAAV,SAAX,EAAkC,UAACwG,EAAD,EAAKC,GAAL;;;IACjC,cAAMjU,IAAI,GAAGwN,SAAS,GAAGuG,GAAZ,GAAkBE,GAAlB,GAAwB6B,SAAxB,GAAoC,CAAjD;IACA,cAAMY,KAAK,GAAG1W,IAAI,IAAI,CAAR,IAAaA,IAAI,GAAGqS,QAAlC;IACA,cAAMvF,QAAQ,GACZmC,WAAW,CAAC4D,cAAD,EAAiB,MAAjB,EAAyBM,UAAzB,EAAqCC,WAArC,EAAkDpT,IAAlD,CAAX,IACAiP,WAAW,CAAC6D,aAAD,EAAgB,MAAhB,EAAwBK,UAAxB,EAAoCC,WAApC,EAAiDpT,IAAjD,CAFb;IAGA,cAAIkU,MAAM,GAAG,CAACpH,QAAD,IAAauI,SAAS,KAAKlC,UAA3B,IAAyCmC,UAAU,KAAKlC,WAAxD,IAAuEmC,SAAS,KAAKvV,IAAlG;;IACA,cAAM2W,KAAK,GAAG,SAARA,KAAQ;IACZ,gBAAIC,OAAJ;;IACA,gBAAI5W,IAAI,IAAI,CAAZ,EAAe;IACb4W,cAAAA,OAAO,GACL1H,QAAQ,KAAKiE,UAAb,IAA2BhE,SAAS,KAAKiE,WAAW,GAAG,CAAvD,IAA4DoC,SAAS,KAAKpD,iBAAiB,GAAGpS,IADhG;IAED,aAHD,MAGO,IAAIA,IAAI,GAAGqS,QAAX,EAAqB;IAC1BuE,cAAAA,OAAO,GAAG1H,QAAQ,KAAKiE,UAAb,IAA2BhE,SAAS,KAAKiE,WAAW,GAAG,CAAvD,IAA4DoC,SAAS,KAAKxV,IAAI,GAAGqS,QAA3F;IACD,aAFM,MAEA;IACLuE,cAAAA,OAAO,GAAG1H,QAAQ,KAAKiE,UAAb,IAA2BhE,SAAS,KAAKiE,WAAzC,IAAwDoC,SAAS,KAAKxV,IAAhF;IACD;;IACD,mBAAO4W,OAAP;IACD,WAXD;;IAYA,cAAIC,WAAW,GAAG,KAAlB;IACA,cAAIC,SAAS,GAAG,KAAhB;IACA,cAAIC,OAAO,GAAG,KAAd;IACA,cAAIC,WAAW,GAAG,KAAlB;;IAEM,cAAAxS,KAA8C6J,WAAW,CAAC8C,SAAD,CAAzD;IAAA,cAAQ8F,KAAK,UAAb;IAAA,cAAsBC,MAAM,WAA5B;IAAA,cAAoCC,KAAK,UAAzC;;IACA,cAAArT,KAA8CuK,WAAW,CAACiD,OAAD,CAAzD;IAAA,cAAQ8F,KAAK,UAAb;IAAA,cAAsBC,MAAM,WAA5B;IAAA,cAAoCC,KAAK,UAAzC;;IACN,cAAMC,OAAO,GACXV,WAAW,IAAKvF,OAAO,IAAI0F,WAAX,IAA0B/H,WAAW,CAACwC,SAAD,EAAY,MAAZ,EAAoB2F,KAApB,EAA2BC,MAA3B,EAAmCC,KAAnC,CADvD;IAEA,cAAME,KAAK,GACTV,SAAS,IAAK3F,SAAS,IAAI6F,WAAb,IAA4B/H,WAAW,CAACwC,SAAD,EAAY,MAAZ,EAAoBwF,KAApB,EAA2BC,MAA3B,EAAmCC,KAAnC,CADvD;IAGA,cAAMM,YAAY,GAAG,MAAGzX,IAAI,IAAI,CAAR,GAAYoS,iBAAiB,GAAGpS,IAAhC,GAAuCA,IAAI,GAAGqS,QAAP,GAAkBrS,IAAI,GAAGqS,QAAzB,GAAoCrS,IAA9E,CAArB;IACA,cAAM0X,aAAa,GAAG,MACpB1X,IAAI,IAAI,CAAR,GACIoT,WAAW,KAAK,CAAhB,GACEA,WAAW,GAAG9F,UADhB,GAEG,CAAC8F,WAAW,GAAG,CAAf,IAAoB9F,UAArB,GAAmC,CAHzC,GAIItN,IAAI,GAAGqS,QAAP,GACC,CAACe,WAAW,GAAG,CAAf,IAAoB9F,UAArB,GAAmC,CADnC,GAEA8F,WAAW,GAAG,CAPE,CAAtB;IASA,cAAMuE,YAAY,GAAG,MACnB3X,IAAI,IAAI,CAAR,IAAaoT,WAAW,GAAG,CAAd,KAAoB,CAAjC,GACID,UAAU,GAAG,CADjB,GAEInT,IAAI,GAAGqS,QAAP,IAAmBe,WAAW,GAAG,CAAd,KAAoB,EAAvC,GACAD,UAAU,GAAG,CADb,GAEAA,UALe,CAArB;IAOA,cAAMyE,kBAAkB,GAAG,CAAGF,aAAa,CAACnZ,MAAd,KAAyB,CAAzB,GAA6BmZ,aAA7B,GAA6C,MAAIA,aAApD,OAAA,IACzBD,YAAY,CAAClZ,MAAb,KAAwB,CAAxB,GAA4BkZ,YAA5B,GAA2C,MAAIA,YADtB,OAAA,GAEvBE,YAFJ;IAIA,cAAME,YAAY,GAAG3B,MAAM,IAAI,QAAOA,MAAP,MAAkB,QAA5B,IAAwCA,MAAM,CAAC4B,cAAP,CAAsBF,kBAAtB,CAA7D;;IAEA,cAAIhH,WAAJ,EAAiB;IACfiG,YAAAA,WAAW,GAAG5H,WAAW,CAACkC,SAAD,EAAY,OAAZ,EAAqBgC,UAArB,EAAiCC,WAAjC,EAA8CpT,IAA9C,CAAzB;IACA8W,YAAAA,SAAS,GAAG7H,WAAW,CAACqC,OAAD,EAAU,OAAV,EAAmB6B,UAAnB,EAA+BC,WAA/B,EAA4CpT,IAA5C,CAAvB;IACAgX,YAAAA,WAAW,GAAG/H,WAAW,CAACwC,SAAD,EAAY,OAAZ,EAAqB0B,UAArB,EAAiCC,WAAjC,EAA8CpT,IAA9C,CAAzB;IACAkU,YAAAA,MAAM,GAAG,CAACpH,QAAD,KAAc+J,WAAW,IAAIC,SAA7B,CAAT;;IACA,gBAAI3F,SAAS,IAAIG,OAAjB,EAA0B;IACxByF,cAAAA,OAAO,GACL,CAACjK,QAAD,KACEkD,cAAc,CAACmB,SAAD,EAAY,MAAZ,EAAoBsG,YAApB,EAAkCC,aAAlC,EAAiDC,YAAjD,CAAd,IACA3H,cAAc,CAACsB,OAAD,EAAU,MAAV,EAAkBmG,YAAlB,EAAgCC,aAAhC,EAA+CC,YAA/C,CADf,IAECd,WAFD,IAGCC,SAJF,CADF;IAMD,aAPD,MAOO,IAAI3F,SAAJ,EAAe;IACpB4F,cAAAA,OAAO,GACL,CAACjK,QAAD,KACCkD,cAAc,CAACyB,SAAD,EAAY,MAAZ,EAAoBgG,YAApB,EAAkCC,aAAlC,EAAiDC,YAAjD,CAAd,IAAgFX,WADjF,KAEAhH,cAAc,CAACmB,SAAD,EAAY,MAAZ,EAAoBsG,YAApB,EAAkCC,aAAlC,EAAiDC,YAAjD,CAHhB;IAID,aALM,MAKA,IAAIrG,OAAJ,EAAa;IAClByF,cAAAA,OAAO,GACL,CAACjK,QAAD,KACCkD,cAAc,CAACyB,SAAD,EAAY,MAAZ,EAAoBgG,YAApB,EAAkCC,aAAlC,EAAiDC,YAAjD,CAAd,IAAgFX,WADjF,KAEAhH,cAAc,CAACsB,OAAD,EAAU,MAAV,EAAkBmG,YAAlB,EAAgCC,aAAhC,EAA+CC,YAA/C,CAHhB;IAID;IACF;;IAED,cAAMI,YAAY,GAAGhB,OAAO,IAAIf,YAAhC;IAEA,cAAMgC,aAAa,GACjB7G,SAAS,IAAInB,cAAc,CAACmB,SAAD,EAAY,OAAZ,EAAqBsG,YAArB,EAAmCC,aAAnC,EAAkDC,YAAlD,CAD7B;IAGA,cAAMM,WAAW,GAAG3G,OAAO,IAAItB,cAAc,CAACsB,OAAD,EAAU,OAAV,EAAmBmG,YAAnB,EAAiCC,aAAjC,EAAgDC,YAAhD,CAA7C;IAEA,cAAMO,UAAU,GAAG/G,SAAS,IAAIG,OAAb,KAAyB0G,aAAa,IAAIC,WAA1C,CAAnB;IACA,cAAME,mBAAmB,GACvB9H,KAAI,CAAClP,KAAL,CAAWiX,qBAAX,IACApI,cAAc,CAACyB,SAAD,EAAY,OAAZ,EAAqBgG,YAArB,EAAmCC,aAAnC,EAAkDC,YAAlD,CADd,IAEAlG,SAFA,KAGEN,SAAS,IAAIM,SAAS,GAAGN,SAA1B,IAAyCG,OAAO,IAAIG,SAAS,GAAGH,OAHjE,CADF;IAMA,cAAM+G,kBAAkB,GACtBrI,cAAc,CAACyB,SAAD,EAAY,OAAZ,EAAqBgG,YAArB,EAAmCC,aAAnC,EAAkDC,YAAlD,CAAd,IACAlG,SADA,IAEAN,SAFA,IAGAM,SAAS,IAAIN,SAJf;IAMA,cAAMmH,aAAa,GAAGrE,GAAG,KAAK,CAAR,IAAaA,GAAG,KAAK,CAA3C;IACA,cAAMsE,YAAY,GAAGxB,OAAO,IAAKnG,WAAW,KAAKsD,MAAM,IAAIgE,UAAf,CAA5C;IAEA,cAAMM,YAAY,GAAGlU,8BAAU,CAAC;IAC9B,qCAAyB,IADK;IAE9B,8CAAkC,CAACgU,aAAD,IAAkBC,YAFtB;IAG9B,kDAAsCA,YAAY,IAAID,aAHxB;IAI9B,mDAAuCP,YAJT;IAK9B,4CACGR,OAAO,IAAI,CAACC,KAAZ,IAAqBvD,GAAG,KAAK,CAA9B,IAAqCrD,WAAW,IAAIoH,aAAf,IAAgC/D,GAAG,KAAK,CANjD;IAO9B,0CACGuD,KAAK,IAAI,CAACD,OAAV,IAAqBtD,GAAG,KAAK,CAA9B,IAAqCrD,WAAW,IAAIqH,WAAf,IAA8BhE,GAAG,KAAK,CAR/C;IAS9B,+CAAmCsD,OAAO,IAAIC,KAThB;IAU9B,iDACGD,OAAO,IAAIQ,YAAZ,IAA8BnH,WAAW,IAAImH,YAAf,IAA+BC,aAXjC;IAY9B,+CACGR,KAAK,IAAIO,YAAV,IAA4BnH,WAAW,IAAImH,YAAf,IAA+BE,WAb/B;IAc9B,4CAAgCvB,KAdF;IAe9B,gDAAoC9F,WAAW,IAAIyH,kBAfrB;IAgB9B,mDAAuCzH,WAAW,IAAIuH,mBAhBxB;IAiB9B,mDAAuCI,YAAY,IAAItE,GAAG,KAAK,CAAxB,IAA6B,CAACC,MAA9B,IAAwC,CAACgE,UAjBlD;IAkB9B,iDAAqCK,YAAY,IAAItE,GAAG,KAAK,CAAxB,IAA6B,CAACC,MAA9B,IAAwC,CAACgE;IAlBhD,WAAD,CAA/B;IAqBA,cAAM/D,UAAU,GAAG7P,8BAAU;IAC3B,8BAAkB;IAClB,qCAAyB,CAACiT,OAAD,IAAY,CAACC,KAAb,IAAsB,CAACtD,MAAvB,IAAiC,CAACgE;IAC3D,qCAAyBX,OAAO,IAAI,CAACC;IACrC,mCAAuBA,KAAK,IAAI,CAACD;IACjC,0CAA8BA,OAAO,IAAIQ;IACzC,wCAA4BP,KAAK,IAAIO;IACrC,sCAA0B7D,MAAM,IAAIgE;IACpC,wCAA4BpL;IAC5B,kCAAsB;iBACtBnQ,GAAC,yBAAuBwF,KAAxB,GAAiCA,MACjCxF,uCAAA,GAAqCga,KAAK,IAC1Cha,8BAAA,GAA4Bga,KAAK,MAAM,CAACzC,MAAZ,IAAsB,CAACgE,cAZxB,EAA7B;IAeA,cAAM7D,YAAY,GAAG/P,8BAAU,CAAC;IAC9BgQ,YAAAA,OAAO,EAAE,CAACJ,MAAD,IAAW,CAACyC,KAAK,EAAjB,IAAuB,CAAC7J,QAAxB,IAAoC,CAACoL,UADhB;IAE9B3D,YAAAA,KAAK,EAAEL,MAAM,IAAIgE,UAFa;IAG9B,+BAAmBvB,KAAK,MAAM7J,QAHA;IAI9BpK,YAAAA,OAAO,EAAEiU,KAAK,EAJgB;IAK9B,gCAAoB7J;IALU,WAAD,CAA/B;IAQA,8BACE7K,8BAAA,MAAA;IAAK0F,YAAAA,GAAG,EAAKoM,GAAG,MAAH,GAAOE;IAAOrP,YAAAA,SAAS,EAAE4T;6BAAwB;eAA9D,EACG,CAAC9B,KAAD,iBACCzU,8BAAA,0BAAA,MAAA,eACEA,8BAAA,CAACyC,IAAD;IACErI,YAAAA,KAAK,EAAEgY;IACPlS,YAAAA,IAAI,EAAEA,IAAI,KAAK,OAAT,GAAmB,OAAnB,GAA6B;6BACzB;IACVyC,YAAAA,SAAS,EAAEuP;IACXtJ,YAAAA,OAAO,EAAEC,cAAc,CAAC9K,IAAD;IACvByU,YAAAA,WAAW,EAAE2B,kBAAkB,CAACpW,IAAD;IAC/ByY,YAAAA,YAAY,EAAEpC,mBAAmB,CAAC1B,IAApB,CAAyBtE,KAAzB,EAA+BrQ,IAA/B,EAAqC2W,KAAK,EAA1C,EAA8C7J,QAA9C;eAPhB,EASG9M,IATH,CADF,EAYG6X,YAAY,IAAIxH,KAAI,CAACqI,qBAAL,CAA2BvW,IAA3B,EAAiC+R,MAAjC,CAZnB,CAFJ,EAiBG,CAAEwC,KAAK,IAAI1W,IAAI,GAAG,CAAhB,IAAqBwH,KAAK,KAAKyL,YAAY,GAAG,CAA/C,IAAsDyD,KAAK,IAAI1W,IAAI,IAAI,CAAjB,IAAsBwH,KAAK,KAAK,CAAvF,kBACCvF,8BAAA,0BAAA,MAAA,eACEA,8BAAA,CAACyC,IAAD;IACEtC,YAAAA,UAAU,EAAE8R,MAAM,IAAIgE,UAAV,GAAuB,OAAvB,GAAiCpL,QAAQ,GAAG,UAAH,GAAgB6J,KAAK,KAAK,MAAL,GAAc;IACxFxU,YAAAA,IAAI,EAAEA,IAAI,KAAK,OAAT,GAAmB,OAAnB,GAA6B;6BACzB;IACVyC,YAAAA,SAAS,EAAEuP;IACXtJ,YAAAA,OAAO,EAAEC,cAAc,CAAC9K,IAAD;IACvByU,YAAAA,WAAW,EAAE2B,kBAAkB,CAACpW,IAAD;IAC/ByY,YAAAA,YAAY,EAAEpC,mBAAmB,CAAC1B,IAApB,CAAyBtE,KAAzB,EAA+BrQ,IAA/B,EAAqC2W,KAAK,EAA1C,EAA8C7J,QAA9C;eAPhB,EASG9M,IAAI,IAAI,CAAR,GAAYoS,iBAAiB,GAAGpS,IAAhC,GAAuCA,IAAI,GAAGqS,QATjD,CADF,EAYGwF,YAAY,IAAIxH,KAAI,CAACqI,qBAAL,CAA2BvW,IAA3B,EAAiC+R,MAAjC,CAZnB,CAlBJ,CADF;IAoCD,SAtLA,CADH,CADF;IA2LD,OA5LM,CAAP;IA6LD,KAnRD;;IAqRA7D,IAAAA,oBAAA,GAAiB,UAAC7I,KAAD;;;IACT,UAAA1D,KAAyBuM,KAAI,CAAClP,KAA9B;IAAA,UAAEgB,IAAI,UAAN;IAAA,UAAQ8Q,YAAY,kBAApB;IAEE,UAAArB,IAAI,GAAKvB,KAAI,CAACE,KAAL,KAAT;IAER,UAAMoI,cAAc,GAAGrU,8BAAU,WAC/B3H,GAAC,WAAD,GAAc,MACdA,GAAC,cAAYiV,IAAZ,OAAA,GAAqBzP,KAAtB,GAA+ByP,MAC/BjV,GAAC,eAAawF,KAAd,GAAuBA,QAHQ,EAAjC;IAMA,UAAMyW,WAAW,GAAGtU,8BAAU,WAC5BE,GAAC,sBAAoBrC,KAArB,GAA8BA,QADF,EAA9B;IAIA,UAAM0W,SAAS,GAAGvU,8BAAU,CAAC;IAC3B,yBAAiB;IADU,OAAD,CAA5B;IAIA,0BACErC,8BAAA,MAAA;IAAK0F,QAAAA,GAAG,EAAEH;yBAAiB;IAAwB5C,QAAAA,SAAS,EAAE+T;WAA9D,eACE1W,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAEgU;WAAhB,EACGpR,KAAK,KAAK,CAAV,IAAe6I,KAAI,CAACyI,gBAAL,CAAsB,MAAtB,CADlB,EAEGzI,KAAI,CAAC0I,mBAAL,CAAyBvR,KAAzB,CAFH,EAGGA,KAAK,KAAKyL,YAAY,GAAG,CAAzB,IAA8B5C,KAAI,CAACyI,gBAAL,CAAsB,MAAtB,CAHjC,CADF,eAME7W,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAEiU;WAAhB,EACGjH,IAAI,KAAK,MAAT,IAAmBvB,KAAI,CAAC2I,cAAL,EADtB,EAEGpH,IAAI,KAAK,OAAT,IAAoBvB,KAAI,CAAC4I,eAAL,EAFvB,EAGGrH,IAAI,KAAK,MAAT,IAAmBvB,KAAI,CAAC6I,cAAL,CAAoB1R,KAApB,CAHtB,CANF,CADF;IAcD,KAjCD;;IAv7BQ,QAAA7K,KAA0D0T,KAAI,CAAClP,KAA/D;IAAA,QAAEyP,WAAW,iBAAb;IAAA,QAAeO,SAAS,eAAxB;IAAA,QAA0BG,OAAO,aAAjC;IAAA,QAAmC2B,YAAY,kBAA/C;IAAA,QAAiDrB,IAAI,UAArD;IAEN,QAAMxC,QAAQ,GAAGwB,WAAW,GAAGU,OAAO,IAAIH,SAAd,GAA0BhQ,KAAK,CAACnB,IAA5D;IAEA,QAAMyQ,OAAO,GAAGtP,KAAK,CAACsP,OAAN,KAAkB7B,SAAlB,GAA8BzN,KAAK,CAACsP,OAApC,GAA8CpC,WAAW,CAACe,QAAQ,IAAItR,IAAI,CAACqb,GAAL,EAAb,CAAX,CAAoChZ,IAAlG;IACA,QAAMuQ,QAAQ,GAAGvP,KAAK,CAACuP,QAAN,KAAmB9B,SAAnB,GAA+BzN,KAAK,CAACuP,QAArC,GAAgDrC,WAAW,CAACe,QAAQ,IAAItR,IAAI,CAACqb,GAAL,EAAb,CAAX,CAAoCjZ,KAArG;;IACM,QAAAsE,KAAwB6J,WAAW,CAACe,QAAD,CAAnC;IAAA,QAAEjP,IAAI,UAAN;IAAA,QAAQD,KAAK,WAAb;IAAA,QAAeF,IAAI,UAAnB;;IACN,QAAMoZ,iBAAiB,GAAG/K,WAAW,CAAC,IAAIvQ,IAAJ,CAASA,IAAI,CAACqb,GAAL,EAAT,CAAD,CAArC;IACA9I,IAAAA,KAAI,CAACE,KAAL,GAAa;IACXnB,MAAAA,QAAQ,UADG;IAEX+B,MAAAA,SAAS,WAFE;IAGXG,MAAAA,OAAO,SAHI;IAIXb,MAAAA,OAAO,SAJI;IAKXC,MAAAA,QAAQ,UALG;IAMXvQ,MAAAA,IAAI,MANO;IAOXD,MAAAA,KAAK,OAPM;IAQXF,MAAAA,IAAI,MARO;IASXwV,MAAAA,SAAS,EAAE4D,iBAAiB,CAACpZ,IATlB;IAUXmP,MAAAA,SAAS,EAAEiK,iBAAiB,CAAClZ,KAVlB;IAWXgP,MAAAA,QAAQ,EAAEkK,iBAAiB,CAACjZ,IAXjB;IAYXyR,MAAAA,IAAI,EAAEqB,YAAY,GAAG,CAAf,GAAmB,MAAnB,GAA4BrB,IAZvB;IAaXpB,MAAAA,YAAY,EAAExC,YAAY,CAACyC,OAAD;IAbf,KAAb;;IAeD;;IAED4I,EAAAA,kBAAA,mBAAA,GAAA,UAAmBC,SAAnB,EAA6CC,SAA7C;;;IACU,QAAAtG,YAAY,GAAK,KAAK9R,KAAL,aAAjB;;IAER,QAAImY,SAAS,CAACtZ,IAAV,KAAmB,KAAKmB,KAAL,CAAWnB,IAAlC,EAAwC;IAChC,UAAAwI,KAAwB6F,WAAW,CAAC,KAAKlN,KAAL,CAAWnB,IAAZ,CAAnC;IAAA,UAAEG,IAAI,UAAN;IAAA,UAAQD,KAAK,WAAb;IAAA,UAAeF,IAAI,UAAnB;;IACN,WAAK2R,WAAL,CAAiBxR,IAAjB,EAAuBD,KAAvB,EAA8BF,IAA9B;IACA,UAAMnC,CAAC,GAAG0Q,aAAa,CAAC,KAAKpN,KAAL,CAAWnB,IAAZ,CAAvB;IACA,WAAKsQ,QAAL,CAAc;IACZlB,QAAAA,QAAQ,EAAEvR;IADE,OAAd;IAGD;;IAED,QACE,KAAKsD,KAAL,CAAWgQ,SAAX,IACA,CAACqI,KAAK,CAAC,KAAKrY,KAAL,CAAWgQ,SAAX,CAAqBsI,OAArB,EAAD,CADN,IAEAH,SAAS,CAACnI,SAAV,KAAwB,KAAKhQ,KAAL,CAAWgQ,SAHrC,EAIE;IACA,UAAMtT,CAAC,GAAG0Q,aAAa,CAAC,KAAKpN,KAAL,CAAWgQ,SAAZ,CAAvB;IACA,WAAKb,QAAL,CAAc;IACZa,QAAAA,SAAS,EAAEtT;IADC,OAAd;IAGD;;IAED,QAAI,KAAKsD,KAAL,CAAWmQ,OAAX,IAAsB,CAACkI,KAAK,CAAC,KAAKrY,KAAL,CAAWmQ,OAAX,CAAmBmI,OAAnB,EAAD,CAA5B,IAA8DH,SAAS,CAAChI,OAAV,KAAsB,KAAKnQ,KAAL,CAAWmQ,OAAnG,EAA4G;IAC1G,UAAMzT,CAAC,GAAG0Q,aAAa,CAAC,KAAKpN,KAAL,CAAWmQ,OAAZ,CAAvB;IACA,WAAKhB,QAAL,CAAc;IACZgB,QAAAA,OAAO,EAAEzT;IADG,OAAd;IAGD;;IAED,QAAIyb,SAAS,CAAC1H,IAAV,KAAmB,KAAKzQ,KAAL,CAAWyQ,IAAlC,EAAwC;IACtC,UAAI,KAAKzQ,KAAL,CAAW8R,YAAX,KAA4B,CAAhC,EAAmC;IACjC,aAAK3C,QAAL,CAAc;IACZsB,UAAAA,IAAI,EAAE,KAAKzQ,KAAL,CAAWyQ;IADL,SAAd;IAGD;IACF;;IAED,QAAI0H,SAAS,CAAC7I,OAAV,KAAsB,KAAKtP,KAAL,CAAWsP,OAArC,EAA8C;IACpC,UAAAA,OAAO,GAAK,KAAKtP,KAAL,QAAZ;;IACR,UAAIsP,OAAJ,EAAa;IACX,aAAKH,QAAL,CAAc;IACZG,UAAAA,OAAO,SADK;IAEZD,UAAAA,YAAY,EAAExC,YAAY,CAACyC,OAAD;IAFd,SAAd;IAID;IACF;;IAED,QAAI6I,SAAS,CAAC5I,QAAV,KAAuB,KAAKvP,KAAL,CAAWuP,QAAtC,EAAgD;IACtC,UAAAA,QAAQ,GAAK,KAAKvP,KAAL,SAAb;;IACR,UAAIuP,QAAJ,EAAc;IACZ,aAAKJ,QAAL,CAAc;IACZI,UAAAA,QAAQ;IADI,SAAd;IAGD;IACF;;IAED,QAAI6I,SAAS,CAACnK,QAAV,KAAuB,KAAKmB,KAAL,CAAWnB,QAAtC,EAAgD;IACxC,UAAA3G,KAAgC,KAAKtH,KAArC;IAAA,UAAEyP,WAAW,iBAAb;IAAA,UAAe8I,YAAY,kBAA3B;IAEA,UAAA/Q,KAAmC,KAAK4H,KAAxC;IAAA,UAAEnB,QAAQ,cAAV;IAAA,UAAY+B,SAAS,eAArB;IAAA,UAAuBG,OAAO,aAA9B;;IAEN,UAAIlC,QAAJ,EAAc;IACZ,YAAIsK,YAAJ,EAAkBA,YAAY,CAACtK,QAAD,CAAZ;;IAClB,YAAIwB,WAAJ,EAAiB;IACf,eAAKN,QAAL,CAAc;IACZmB,YAAAA,SAAS,EAAE7C;IADC,WAAd;;IAGA,cAAIuC,SAAS,IAAIG,OAAjB,EAA0B;IACxB,iBAAKhB,QAAL,CAAc;IACZa,cAAAA,SAAS,EAAE/B,QADC;IAEZkC,cAAAA,OAAO,EAAE1C;IAFG,aAAd;IAID,WALD,MAKO;IACC,gBAAA+K,KAAwBtL,WAAW,CAACe,QAAD,CAAnC;IAAA,gBAAEjP,IAAI,UAAN;IAAA,gBAAQD,KAAK,WAAb;IAAA,gBAAeF,IAAI,UAAnB;;IACN,gBAAImR,SAAJ,EAAe;IACb,kBAAIlC,WAAW,CAACkC,SAAD,EAAY,MAAZ,EAAoBhR,IAApB,EAA0BD,KAA1B,EAAiCF,IAAjC,CAAf,EAAuD;IACrD,qBAAKsQ,QAAL,CAAc;IAAEa,kBAAAA,SAAS,EAAE/B;IAAb,iBAAd;IACD,eAFD,MAEO;IACL,qBAAKkB,QAAL,CAAc;IAAEgB,kBAAAA,OAAO,EAAElC;IAAX,iBAAd;IACD;IACF,aAND,MAMO,IAAIkC,OAAJ,EAAa;IAClB,kBAAIrC,WAAW,CAACqC,OAAD,EAAU,MAAV,EAAkBnR,IAAlB,EAAwBD,KAAxB,EAA+BF,IAA/B,CAAf,EAAqD;IACnD,qBAAKsQ,QAAL,CAAc;IAAEgB,kBAAAA,OAAO,EAAElC;IAAX,iBAAd;IACD,eAFD,MAEO;IACL,qBAAKkB,QAAL,CAAc;IAAEa,kBAAAA,SAAS,EAAE/B;IAAb,iBAAd;IACD;IACF,aANM,MAMA;IACL,mBAAKkB,QAAL,CAAc;IAAEa,gBAAAA,SAAS,EAAE/B;IAAb,eAAd;IACD;IACF;IACF,SA3BD,MA2BO;IACL,eAAKkB,QAAL,CAAc;IAAEa,YAAAA,SAAS,EAAE/B;IAAb,WAAd;IACD;IACF;IACF;;IAED,QACG,KAAKmB,KAAL,CAAWY,SAAX,IACC,CAACqI,KAAK,CAAC,KAAKjJ,KAAL,CAAWY,SAAX,CAAqBsI,OAArB,EAAD,CADP,IAEC,OAAAF,SAAS,CAACpI,mDAAWsI,SAArB,aAAmC,KAAKlJ,KAAL,CAAWY,mDAAWsI,SAAzD,CAFF,IAGC,KAAKlJ,KAAL,CAAWe,OAAX,IACC,CAACkI,KAAK,OAAC,KAAKjJ,KAAL,CAAWe,iDAASmI,SAArB,CADP,IAEC,OAAAF,SAAS,CAACjI,iDAASmI,SAAnB,aAAiC,KAAKlJ,KAAL,CAAWe,iDAASmI,SAArD,CANJ,EAOE;IACQ,UAAAG,aAAa,GAAK,KAAKzY,KAAL,cAAlB;IAEF,UAAA0Y,KAAyB,KAAKtJ,KAA9B;IAAA,UAAEY,SAAS,eAAX;IAAA,UAAaG,OAAO,aAApB;IAEN,UAAIsI,aAAJ,EAAmBA,aAAa,CAACzI,SAAD,EAAYG,OAAZ,CAAb;IACpB;;IAED,QAAI,KAAKnQ,KAAL,CAAWiX,qBAAX,IAAoCmB,SAAS,CAAC9H,SAAV,KAAwB,KAAKlB,KAAL,CAAWkB,SAA3E,EAAsF;IAC9E,UAAAqI,KAAoC,KAAKvJ,KAAzC;IAAA,UAAEkB,SAAS,eAAX;IAAA,UAAaN,SAAS,eAAtB;IAAA,UAAwBG,OAAO,aAA/B;;IACN,UAAIH,SAAS,IAAI,CAACG,OAAlB,EAA2B;IACnB,YAAAyI,KAAwB1L,WAAW,CAAC8C,SAAD,CAAnC;IAAA,YAAEhR,IAAI,UAAN;IAAA,YAAQD,KAAK,WAAb;IAAA,YAAeF,IAAI,UAAnB;;IACN,YAAIiP,WAAW,CAACwC,SAAD,EAAY,MAAZ,EAAoBtR,IAApB,EAA0BD,KAA1B,EAAiCF,IAAjC,CAAf,EAAuD;IACrD,eAAKsQ,QAAL,CAAc;IAAEa,YAAAA,SAAS,EAAEvC,SAAb;IAAwB0C,YAAAA,OAAO,EAAEH;IAAjC,WAAd;IACD;IACF,OALD,MAKO,IAAIG,OAAO,IAAI,CAACH,SAAhB,EAA2B;IAC1B,YAAA6I,KAAwB3L,WAAW,CAACiD,OAAD,CAAnC;IAAA,YAAEnR,IAAI,UAAN;IAAA,YAAQD,KAAK,WAAb;IAAA,YAAeF,IAAI,UAAnB;;IACN,YAAIiP,WAAW,CAACwC,SAAD,EAAY,MAAZ,EAAoBtR,IAApB,EAA0BD,KAA1B,EAAiCF,IAAjC,CAAf,EAAuD;IACrD,eAAKsQ,QAAL,CAAc;IAAEa,YAAAA,SAAS,EAAEG,OAAb;IAAsBA,YAAAA,OAAO,EAAE1C;IAA/B,WAAd;IACD;IACF;IACF;;IAED,QAAI2K,SAAS,CAACpZ,IAAV,KAAmB,KAAKoQ,KAAL,CAAWpQ,IAAlC,EAAwC;IAC9B,UAAAA,IAAI,GAAK,KAAKoQ,KAAL,KAAT;;IACR,UAAIpQ,IAAI,KAAKyO,SAAT,IAAsBqE,YAAY,KAAK,CAA3C,EAA8C;IAC5C,aAAK3C,QAAL,CAAc;IACZnQ,UAAAA,IAAI,MADQ;IAEZqQ,UAAAA,YAAY,EAAExC,YAAY,CAAC7N,IAAD,CAFd;IAGZsQ,UAAAA,OAAO,EAAEtQ;IAHG,SAAd;IAKD;IACF;;IAED,QAAIoZ,SAAS,CAACrZ,KAAV,KAAoB,KAAKqQ,KAAL,CAAWrQ,KAAnC,EAA0C;IAChC,UAAAA,KAAK,GAAK,KAAKqQ,KAAL,MAAV;;IACR,UAAIrQ,KAAK,KAAK0O,SAAV,IAAuBqE,YAAY,KAAK,CAA5C,EAA+C;IAC7C,aAAK3C,QAAL,CAAc;IACZI,UAAAA,QAAQ,EAAExQ;IADE,SAAd;IAGD;IACF;IACF,GAlJD;;IAgoBAmZ,EAAAA,kBAAA,sBAAA,GAAA,UAAsBlX,IAAtB,EAAoC+R,MAApC;;;IACE,QAAM+F,oBAAoB,GAAG3V,8BAAU;IACrC,kCAA4B;WAC5B3H,GAAC,+BAA6BwF,KAA9B,GAAuC,MACvCxF,sCAAA,GAAoCuX,UAHC,EAAvC;IAKA,wBAAOjS,8BAAA,OAAA;uBAAgB;IAAwC2C,MAAAA,SAAS,EAAEqV;SAAnE,CAAP;IACD,GAPD;;IAiUAZ,EAAAA,kBAAA,OAAA,GAAA;IAAA,oBAAA;;IACQ,QAAA1c,KAA8B,KAAKwE,KAAnC;IAAA,QAAE8R,YAAY,kBAAd;IAAA,QAAgBrO,SAAS,eAAzB;IAEN,QAAMxD,SAAS,GAAGF,gBAAgB,CAAC,KAAKC,KAAN,CAAlC;IACA,QAAM2I,OAAO,GAAGxF,8BAAU,CACxB;IACE,0BAAoB;IADtB,KADwB,EAIxBM,SAJwB,CAA1B;IAOA,wBACE3C,8BAAA,MAAA,eAASb;IAAWwD,MAAAA,SAAS,EAAEkF;uBAAmB;UAAlD,EACGlK,KAAK,CAACiU,IAAN,CAAW;IAAEtV,MAAAA,MAAM,EAAE0U;IAAV,KAAX,EAAqC,UAACe,EAAD,EAAKxM,KAAL;IACpC,aAAO6I,KAAI,CAAC6J,cAAL,CAAoB1S,KAApB,CAAP;IACD,KAFA,CADH,CADF;IAOD,GAlBD;;IAr+BO6R,EAAAA,qBAAA,GAAe;IACpBlX,IAAAA,IAAI,EAAE,OADc;IAEpB8Q,IAAAA,YAAY,EAAE,CAFM;IAGpBrB,IAAAA,IAAI,EAAE,MAHc;IAIpBkD,IAAAA,cAAc,EAAE,QAJI;IAKpB5B,IAAAA,QAAQ,EAAE;IALU,GAAf;IAw/BT,iBAAA;IAz/BA,EAA8BjR,gBAAK,CAACkY;;QCtJvBC,IAAI,gBAAGnY,gBAAK,CAACuK,UAAN,CAA4C,UAACrL,KAAD,EAAQsL,GAAR;;;IACtD,MAAAjI,KAAsDrD,KAAK,OAA3D;IAAA,MAAAkZ,MAAM,mBAAG,eAAT;IAAA,MAAqBzW,QAAQ,GAAyBzC,KAAK,SAA3D;IAAA,MAA+ByD,SAAS,GAAczD,KAAK,UAA3D;IAAA,MAA6C6L,IAAI,UAAK7L,OAAxD,SAAA,YAAA,aAAA,EAAE;;IAER,MAAM2I,OAAO,GAAGxF,8BAAU;IACxB8V,IAAAA,IAAI,EAAE;SACNzd,GAAC,WAAS0d,OAAV,GAAqBA,QACrB1d,GAAC,KAAGiI,UAAJ,GAAkBA,aAHM,EAA1B;IAMA,sBACE3C,8BAAA,MAAA;qBAAe;IAAoBwK,IAAAA,GAAG,EAAEA;SAASO;IAAMpI,IAAAA,SAAS,EAAEkF;QAAlE,EACGlG,QADH,CADF;IAKD,CAdmB;IAgBpBwW,IAAI,CAAC5T,WAAL,GAAmB,MAAnB;IACA4T,IAAI,CAAC1T,YAAL,GAAoB;IAClB2T,EAAAA,MAAM,EAAE;IADU,CAApB;;QCpBaC,WAAW,gBAAGrY,gBAAK,CAACuK,UAAN,CAAmD,UAACrL,KAAD,EAAQsL,GAAR;;;IACpE,MAAA8N,MAAM,GAAmCpZ,KAAK,OAA9C;IAAA,MAAQyC,QAAQ,GAAyBzC,KAAK,SAA9C;IAAA,MAAkByD,SAAS,GAAczD,KAAK,UAA9C;IAAA,MAAgC6L,IAAI,UAAK7L,OAA3C,SAAA,YAAA,aAAA,EAAE;;IAER,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtBgW,IAAAA,WAAW,EAAE;SACb3d,GAAC,kBAAgB4d,OAAjB,GAA4BA,UAHN,GAKxB3V,SALwB,CAA1B;IAQA,sBACE3C,8BAAA,MAAA;qBAAe;IAA2BwK,IAAAA,GAAG,EAAEA;SAASO;IAAMpI,IAAAA,SAAS,EAAEkF;QAAzE,EACGlG,QADH,CADF;IAKD,CAhB0B;IAkB3B0W,WAAW,CAAC9T,WAAZ,GAA0B,aAA1B;;QCpBagU,UAAU,GAAG,SAAbA,UAAa,CAACrZ,KAAD;IAChB,MAAAyD,SAAS,GAAezD,KAAK,UAA7B;IAAA,MAAWyC,QAAQ,GAAKzC,KAAK,SAA7B;IACR,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,CACxB;IACE,mBAAe;IADjB,GADwB,EAIxBM,SAJwB,CAA1B;IAOA,sBACE3C,8BAAA,MAAA;qBAAe;SAA8Bb;IAAWwD,IAAAA,SAAS,EAAEkF;QAAnE,EACGlG,QADH,CADF;IAKD;IAED4W,UAAU,CAAChU,WAAX,GAAyB,YAAzB;;QClBaiU,QAAQ,GAAG,SAAXA,QAAW,CAACtZ,KAAD;IACd,MAAAyD,SAAS,GAAezD,KAAK,UAA7B;IAAA,MAAWyC,QAAQ,GAAKzC,KAAK,SAA7B;IACR,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,CACxB;IACE,iBAAa;IADf,GADwB,EAIxBM,SAJwB,CAA1B;IAOA,sBACE3C,8BAAA,MAAA;qBAAe;SAA4Bb;IAAWwD,IAAAA,SAAS,EAAEkF;QAAjE,EACGlG,QADH,CADF;IAKD;IAED6W,QAAQ,CAACjU,WAAT,GAAuB,UAAvB;;QCdakU,UAAU,GAAG,SAAbA,UAAa,CAACvZ,KAAD;;;IAChB,MAAAyD,SAAS,GAA8BzD,KAAK,UAA5C;IAAA,MAAWyC,QAAQ,GAAoBzC,KAAK,SAA5C;IAAA,MAAqBwZ,aAAa,GAAKxZ,KAAK,cAA5C;IACR,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtB,mBAAe;SACf3H,GAAC,6BAAD,GAAgCge,iBAHV,GAKxB/V,SALwB,CAA1B;IAQA,sBACE3C,8BAAA,MAAA;qBAAe;SAA8Bb;IAAWwD,IAAAA,SAAS,EAAEkF;QAAnE,EACGlG,QADH,CADF;IAKD;IAED8W,UAAU,CAAClU,WAAX,GAAyB,YAAzB;IAEAkU,UAAU,CAAChU,YAAX,GAA0B;IACxBiU,EAAAA,aAAa,EAAE;IADS,CAA1B;;IClCA,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAACC,CAAD;IAA4B,SAAAA,CAAC,CAAClT,GAAF,KAAU,OAAV;IAAiB,CAAhE;;ICWA,IAAMmT,OAAO,GAA8C;IACzDC,EAAAA,MAAM,EAAE,IAAIC,GAAJ,CAAQ,CAAC,OAAD,EAAU,OAAV,EAAmB,UAAnB,EAA+B,GAA/B,CAAR,CADiD;IAEzD/P,EAAAA,IAAI,EAAE,IAAI+P,GAAJ,CAAQ,CAAC,OAAD,CAAR,CAFmD;IAIzDC,EAAAA,QAAQ,EAAE,IAAID,GAAJ,CAAQ,EAAR,CAJ+C;IAKzDE,EAAAA,KAAK,EAAE,IAAIF,GAAJ,CAAQ,EAAR;IALkD,CAA3D;;IASA,IAAMG,4BAA4B,GAAG,SAA/BA,4BAA+B,CAAC1V,IAAD,EAAqBkC,GAArB;IACnC,MAAI,CAACmT,OAAO,CAACrV,IAAD,CAAZ,EAAoB;IAClB,WAAO,KAAP;IACD;;IAED,MAAM2V,WAAW,GAAGN,OAAO,CAACrV,IAAD,CAA3B;IACA,SAAO2V,WAAW,CAACC,GAAZ,CAAgB1T,GAAhB,CAAP;IACD,CAPD;;IASA,IAAM2T,qBAAqB,GAAG,SAAxBA,qBAAwB,CAAC3e,EAAD;IAAG,MAAAkO,OAAO,aAAP;IAAA,MAAS0Q,UAAS,eAAlB;IAAA,MAAoB/W,YAApB;IAAA,MAAoBiB,IAAI,mBAAG,aAA3B;IAAA,MAAqCkH,QAAQ,cAA7C;IAAA,MAAkDK,IAAI,cAAxD,UAAA,aAAA,QAAA,YAAA,EAAE;;IAC/B,sBACMnC,OAAO,GACP;IACEA,IAAAA,OAAO,EAAEA,OADX;IAEEpF,IAAAA,IAAI,EAAEA,IAFR;IAGEkH,IAAAA,QAAQ,EAAEA,QAAQ,IAAI,CAHxB;IAIE,kBAAcK,IAAI,CAAC,YAAD,CAJpB;IAKEuO,IAAAA,SAAS,EAAE,mBAACV,CAAD;IACT,UAAIU,UAAJ,EAAe;IACbA,QAAAA,UAAS,CAACV,CAAD,CAAT;;IACA;IACD;;IACD,UAAMlT,GAAG,GAAIkT,CAAsC,CAAClT,GAApD;;IACA,UAAIwT,4BAA4B,CAAC1V,IAAD,EAAOkC,GAAP,CAAhC,EAA6C;IAC3C,YAAIkD,OAAJ,EAAa;IACXgQ,UAAAA,CAAC,CAAC7P,cAAF;IACAH,UAAAA,OAAO,CAACgQ,CAAD,CAAP;IACD;IACF;IACF;IAjBH,GADO,GAoBP;IAAEpV,IAAAA,IAAI,MAAN;IAAQkH,IAAAA,QAAQ,UAAhB;IAAkB,kBAAcK,IAAI,CAAC,YAAD;IAApC,IArBN;IAuBD,CAxBD;;ICyDA,IAAMwO,cAAc,GAA2B;IAC7CC,EAAAA,SAAS,EAAE,UADkC;IAE7CC,EAAAA,YAAY,EAAE,UAF+B;IAG7CC,EAAAA,KAAK,EAAE,UAHsC;IAI7CC,EAAAA,kBAAkB,EAAE,UAJyB;IAK7CC,EAAAA,aAAa,EAAE,UAL8B;IAM7CC,EAAAA,iBAAiB,EAAE,UAN0B;IAO7CC,EAAAA,kBAAkB,EAAE,UAPyB;IAQ7CC,EAAAA,QAAQ,EAAE,UARmC;IAS7CC,EAAAA,mBAAmB,EAAE,UATwB;IAU7CC,EAAAA,YAAY,EAAE,UAV+B;IAW7CC,EAAAA,cAAc,EAAE,UAX6B;IAY7CC,EAAAA,iBAAiB,EAAE,UAZ0B;IAa7CC,EAAAA,eAAe,EAAE,UAb4B;IAc7CC,EAAAA,aAAa,EAAE,UAd8B;IAe7CC,EAAAA,SAAS,EAAE,UAfkC;IAgB7CC,EAAAA,eAAe,EAAE,UAhB4B;IAiB7CC,EAAAA,KAAK,EAAE,UAjBsC;IAkB7CC,EAAAA,YAAY,EAAE,UAlB+B;IAmB7CC,EAAAA,eAAe,EAAE,UAnB4B;IAoB7CC,EAAAA,cAAc,EAAE,UApB6B;IAqB7CC,EAAAA,WAAW,EAAE,UArBgC;IAsB7CC,EAAAA,YAAY,EAAE,UAtB+B;IAuB7CC,EAAAA,oBAAoB,EAAE,UAvBuB;IAwB7CC,EAAAA,YAAY,EAAE,UAxB+B;IAyB7CC,EAAAA,QAAQ,EAAE,UAzBmC;IA0B7CC,EAAAA,sBAAsB,EAAE,UA1BqB;IA2B7CC,EAAAA,oBAAoB,EAAE,UA3BuB;IA4B7C,YAAQ;IA5BqC,CAA/C;QAwCa5Z,IAAI,GAAG,SAAPA,IAAO,CAACpC,KAAD;;;IACV,MAAAiB,UAAU,GAAsCjB,KAAK,WAArD;IAAA,MAAYyD,SAAS,GAA2BzD,KAAK,UAArD;IAAA,MAAuB0D,IAAI,GAAqB1D,KAAK,KAArD;IAAA,MAA6BgB,IAAI,GAAehB,KAAK,KAArD;IAAA,MAAmCyC,QAAQ,GAAKzC,KAAK,SAArD;IACR,MAAMic,kBAAkB,GAAG9B,qBAAqB,CAACna,KAAD,CAAhD;IAEA,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMkc,MAAM,GAA2B;IACrCC,IAAAA,OAAO,EAAE,UAD4B;IAErCC,IAAAA,KAAK,EAAE,UAF8B;IAGrCC,IAAAA,KAAK,EAAE,SAH8B;IAIrCC,IAAAA,MAAM,EAAE,SAJ6B;IAKrC,gBAAY;IALyB,GAAvC;IAQA,MAAM9R,IAAI,GAAIxK,KAAK,CAACwK,IAAN,IAAc0R,MAAM,CAAClc,KAAK,CAACwK,IAAP,CAArB,IAAsCxK,KAAK,CAACwK,IAA5C,IAAqD9G,IAAI,IAAI2W,cAAc,CAAC3W,IAAD,CAA3E,IAAsF,SAAnG;;IAEA,MAAM6Y,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,SAAD;IACxB,QAAMC,CAAC,GAAGD,SAAS,CAAC5P,OAAV,CAAkB,GAAlB,CAAV;IACA,WAAO4P,SAAS,CAACjY,KAAV,CAAgB,CAAhB,EAAmBkY,CAAnB,IAAwBD,SAAS,CAACE,MAAV,CAAiBD,CAAC,GAAG,CAArB,EAAwBE,WAAxB,EAAxB,GAAgEH,SAAS,CAACjY,KAAV,CAAgBkY,CAAC,GAAG,CAApB,CAAvE;IACD,GAHD;;IAKA,MAAMvhB,KAAK,GAAG+F,UAAU,IAAIA,UAAU,CAACrF,QAAX,CAAoB,GAApB,CAAd,GAAyC2gB,iBAAiB,CAACtb,UAAD,CAA1D,GAAyEA,UAAvF;IAEA,MAAM8K,SAAS,GAAG5I,8BAAU,WAC1B3H,GAAC,mBAAD,GAAsB,MACtBA,GAAC,2BAAD,GAA8BgP,IAAI,KAAK,WACvChP,GAAC,4BAAD,GAA+BgP,IAAI,KAAK,YACxChP,GAAC,OAAD,GAAU,MACVA,GAAC,WAASN,MAAV,GAAoB+F,YACpBzF,GAAC,KAAGiI,UAAJ,GAAkBA,aANQ,EAA5B;IASA,MAAMmZ,MAAM,GAAG;IACbC,IAAAA,QAAQ,EAAK7b,IAAI,OADJ;IAEb6C,IAAAA,KAAK,EAAK7C,IAAI;IAFD,GAAf;;IAMA,MAAIyB,QAAQ,iBAAI3B,gBAAK,CAACgc,cAAN,CAAqBra,QAArB,CAAhB,EAAgD;IAC9C,wBACE3B,8BAAA,OAAA,eAAUb;IAAWwD,MAAAA,SAAS,EAAEA;UAAhC,EACGhB,QADH,CADF;IAKD;;IACD,sBACE3B,8BAAA,IAAA;qBAAa;SAAwBb;IAAWwD,IAAAA,SAAS,EAAEsI;IAAWjG,IAAAA,KAAK,EAAE8W;SAAYX,mBAAzF,EACGvY,IADH,CADF;IAKD;IAEDtB,IAAI,CAACiD,WAAL,GAAmB,MAAnB;IACAjD,IAAI,CAACmD,YAAL,GAAoB;IAClBvE,EAAAA,IAAI,EAAE;IADY,CAApB;;IC7KA,IAAM+b,WAAW,GAAuD,SAAlEA,WAAkE,CACtEvhB,EADsE,EAEtE8P,GAFsE;IACpE,MAAA7I,QAAQ,cAAR;IAAA,MAAUY,qBAAV;IAAA,MAAU2Z,aAAa,mBAAG,WAA1B;IAAA,MAAkCvZ,SAAS,eAA3C;IAAA,MAAgDoI,IAAI,cAAtD,WAAA,iBAAA,aAAA,EAAE;;IAGF,sBAAO/K,gBAAK,CAACmc,aAAN,CAAoBD,aAApB,wBAAwCnR;IAAMpI,IAAAA,SAAS;IAAE6H,IAAAA,GAAG;QAA5D,EAAgE7I,QAAhE,CAAP;IACD,CALD;;AAOA,8BAAe3B,gBAAK,CAACuK,UAAN,CAAiB0R,WAAjB,CAAf;;QCqBaxZ,IAAI,gBAAGzC,gBAAK,CAACuK,UAAN,CAA6C,UAACrL,KAAD,EAAQsL,GAAR;;;IACvD,MAAAjI,KAAiGrD,KAAK,WAAtG;IAAA,MAAAiB,UAAU,mBAAG,cAAb;IAAA,MAAwB0B,KAAyE3C,KAAK,KAAtG;IAAA,MAAwBgB,IAAI,mBAAG,cAA/B;IAAA,MAA0CyB,QAAQ,GAA+CzC,KAAK,SAAtG;IAAA,MAAoDwD,MAAM,GAAuCxD,KAAK,OAAtG;IAAA,MAA4DwM,KAAK,GAAgCxM,KAAK,MAAtG;IAAA,MAAmEyD,SAAS,GAAqBzD,KAAK,UAAtG;IAAA,MAA8E9E,KAAK,GAAc8E,KAAK,MAAtG;IAAA,MAAwF6L,IAAI,UAAK7L,OAAnG,aAAA,QAAA,YAAA,UAAA,SAAA,aAAA,SAAA,EAAE;;IAER,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtBI,IAAAA,IAAI,EAAE;SACN/H,GAAC,WAASyF,WAAV,GAAyB,CAAC/F,KAAD,IAAU+F,YACnCzF,GAAC,WAASgI,OAAV,GAAqBA,QACrBhI,GAAC,WAASwF,KAAV,GAAmBA,MACnBxF,GAAC,WAASN,MAAV,GAAoBA,OAEpBM,GAAC,cAAD,GAAiBwF,IAAI,KAAK,OAAT,IAAoBwL,SARf,GAUxB/I,SAVwB,CAA1B;IAaA,sBACE3C,8BAAA,CAACic,MAAD;IAAazR,IAAAA,GAAG,EAAEA;qBAAe;SAAwBO;IAAMpI,IAAAA,SAAS,EAAEkF;IAASqU,IAAAA,aAAa,EAAC;QAAjG,EACGva,QADH,CADF;IAKD,CArBmB;IAuBpBc,IAAI,CAAC8B,WAAL,GAAmB,MAAnB;IAEA9B,IAAI,CAACgC,YAAL,GAAoB;IAClBtE,EAAAA,UAAU,EAAE,SADM;IAElBD,EAAAA,IAAI,EAAE;IAFY,CAApB;;ICvCO,IAAMkc,WAAW,GAAG,SAAdA,WAAc,CAACld,KAAD;;;IACjB,MAAAiK,KAAK,GAAgGjK,KAAK,MAA1G;IAAA,MAAOsG,IAAI,GAA0FtG,KAAK,KAA1G;IAAA,MAAamd,WAAW,GAA6End,KAAK,YAA1G;IAAA,MAA0B2L,QAAQ,GAAmE3L,KAAK,SAA1G;IAAA,MAAoCyD,SAAS,GAAwDzD,KAAK,UAA1G;IAAA,MAA+C+K,QAAQ,GAA8C/K,KAAK,SAA1G;IAAA,MAAyDod,OAAO,GAAqCpd,KAAK,QAA1G;IAAA,MAAkE0J,OAAO,GAA4B1J,KAAK,QAA1G;IAAA,MAA2Eqd,WAAW,GAAerd,KAAK,YAA1G;IAAA,MAAwF4L,QAAQ,GAAK5L,KAAK,SAA1G;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;;IAEA,MAAM+L,SAAS,GAAG,SAAZA,SAAY,CAACuR,KAAD;;;IAChB,WAAAna,8BAAU,WACR3H,GAAC,YAAD,GAAe,MACfA,GAAC,gBAAc8hB,MAAf,GAAyBA,OACzB9hB,GAAC,4BAAD,GAA+B8hB,KAAK,KAAK,OAAV,IAAqB3R,UACpDnQ,GAAC,iBAAD,GAAoB8hB,KAAK,KAAK,OAAV,IAAqB,CAAC3R,UAC1CnQ,GAAC,sBAAD,GAAyB8hB,KAAK,KAAK,OAAV,IAAqBvS,YALtC,EAAV;IAME,GAPJ;;IASA,MAAMwS,cAAc,GAAG,SAAjBA,cAAiB,CAAC7D,CAAD;IACrBA,IAAAA,CAAC,CAAC8D,eAAF;IACA,QAAIJ,OAAJ,EAAaA,OAAO;IACrB,GAHD;;IAKA,MAAMzT,cAAc,GAAG,SAAjBA,cAAiB;IACrB,QAAID,OAAJ,EAAaA,OAAO;IACrB,GAFD;;IAIA,MAAM+T,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvB,QAAIA,KAAK,CAAClX,GAAN,KAAc,OAAlB,EAA2B;IACzB+W,MAAAA,cAAc,CAACG,KAAD,CAAd;IACD;IACF,GAJD;;IAMA,MAAMvb,cAAc,GAAG,SAAjBA,cAAiB,CAACmb,KAAD;;;IACrB,WAAAna,8BAAU,WACR3H,GAAC,WAAD,GAAcmQ,QAAQ,IAAI,CAACZ,UAC3BvP,GAAC,eAAD,GAAkB,CAACmQ,QAAD,IAAaZ,UAC/BvP,GAAC,kBAAD,GAAqBmQ,QAAQ,IAAIZ,UACjCvP,GAAC,SAAD,GAAY,CAACmQ,QAAD,IAAa,CAACZ,QAAd,IAA0BuS,KAAK,KAAK,SAChD9hB,GAAC,UAAD,GAAa,CAACmQ,QAAD,IAAa,CAACZ,QAAd,IAA0BuS,KAAK,KAAK,UALzC,EAAV;IAM6B,GAP/B;;IASA,MAAMK,SAAS,GAAGxa,8BAAU,WAC1B3H,GAAC,kBAAD,GAAqBmQ,QAAQ,IAAIZ,UACjCvP,GAAC,mBAAD,GAAsBmQ,QAAQ,IAAI,CAACZ,UACnCvP,GAAC,eAAD,GAAkBuP,UAClBvP,GAAC,UAAD,GAAa,CAACmQ,QAAD,IAAa,CAACZ,YAJD,EAA5B;;IAOA,MAAM6S,WAAW,GAAG,SAAdA,WAAc;IAClB,QAAI,OAAO3T,KAAP,KAAiB,QAArB,EAA+B;IAC7B,0BACEnJ,8BAAA,0BAAA,MAAA,EACGuc,WAAW,iBACVvc,8BAAA,CAACyC,IAAD;yBACY;IACVC,QAAAA,MAAM,EAAC;IACPtI,QAAAA,KAAK,EAAEyiB;IACPla,QAAAA,SAAS,EAAC;WAJZ,EAMG4Z,WANH,CAFJ,eAWEvc,8BAAA,CAACyC,IAAD;yBAAgB;IAAiCrI,QAAAA,KAAK,EAAEyiB;IAAWla,QAAAA,SAAS,EAAC;WAA7E,EACGwG,KADH,CAXF,CADF;IAiBD;;IACD,WAAOA,KAAP;IACD,GArBD;;IAuBA,sBAGEnJ,8BAAA,MAAA;IAEE0K,IAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQ;qBAChB;SACN1L;IACJwD,IAAAA,SAAS,EAAE,kBAAgBA;IAC3BiG,IAAAA,OAAO,EAAEC;QANX,EAQGrD,IAAI,iBACHxF,8BAAA,CAACsB,IAAD;qBACY;IACVsB,IAAAA,IAAI,EAAE4C;IACNkE,IAAAA,IAAI,EAAEoB;IACN3K,IAAAA,UAAU,EAAEkB,cAAc,CAAC,MAAD;IAC1BsB,IAAAA,SAAS,EAAEsI,SAAS,CAAC,MAAD;OALtB,CATJ,EAiBG6R,WAAW,EAjBd,EAkBGT,WAAW,iBACVrc,8BAAA,MAAA;IACEwD,IAAAA,IAAI,EAAC;IACLoF,IAAAA,OAAO,EAAE6T;IACT/R,IAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQ;IAC1ByO,IAAAA,SAAS,EAAEqD;IACXha,IAAAA,SAAS,EAAEsI,SAAS,CAAC,OAAD;qBACV;OANZ,eAQEjL,8BAAA,CAACsB,IAAD;IAAMsB,IAAAA,IAAI,EAAC;IAAQzC,IAAAA,UAAU,EAAEkB,cAAc,CAAC,OAAD;IAAWsB,IAAAA,SAAS,EAAC;OAAlE,CARF,CAnBJ,CAHF;IAmCD,CAvGM;IAyGPyZ,WAAW,CAAC7X,WAAZ,GAA0B,aAA1B;;QCvEawY,IAAI,GAAG,SAAPA,IAAO,CAAC7d,KAAD;;;IAEhB,MAAAiK,KAAK,GAYHjK,KAAK,MAZP;IAAA,MACAsG,IAAI,GAWFtG,KAAK,KAZP;IAAA,MAEAmd,WAAW,GAUTnd,KAAK,YAZP;IAAA,MAGAwK,IAAI,GASFxK,KAAK,KAZP;IAAA,MAIA2L,QAAQ,GAQN3L,KAAK,SAZP;IAAA,MAKA+K,QAAQ,GAON/K,KAAK,SAZP;IAAA,MAMAod,OAAO,GAMLpd,KAAK,QAZP;IAAA,MAOA0J,OAAO,GAKL1J,KAAK,QAZP;IAAA,MAQA0D,IAAI,GAIF1D,KAAK,KAZP;IAAA,MASAyD,SAAS,GAGPzD,KAAK,UAZP;IAAA,MAUAqd,WAAW,GAETrd,KAAK,YAZP;IAAA,MAWA4L,QAAQ,GACN5L,KAAK,SAZP;IAcF,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;;IAEA,MAAMud,cAAc,GAAG,SAAjBA,cAAiB;IACrB,QAAI,CAAC5R,QAAD,IAAayR,OAAjB,EAA0BA,OAAO,CAAC1Z,IAAD,CAAP;IAC3B,GAFD;;IAGA,MAAMiG,cAAc,GAAG,SAAjBA,cAAiB;IACrB,QAAI,CAACgC,QAAD,IAAajC,OAAjB,EAA0BA,OAAO,CAAChG,IAAD,CAAP;IAC3B,GAFD;;IAIA,MAAMoa,WAAW,GAAGtT,IAAI,KAAK,QAAT,GAAoB,KAApB,GAA4B2S,WAAhD;IACA,MAAMY,MAAM,GAAGvT,IAAI,KAAK,WAAT,IAAwBO,QAAxB,GAAmC,IAAnC,GAA0C,KAAzD;IAEA,MAAMiT,SAAS,GAAG7a,8BAAU;IAExB0a,IAAAA,IAAI,EAAE;SACNriB,GAAC,UAAQgP,IAAR,gBAAD,GAA4BmB,UAC5BnQ,GAAC,WAASgP,KAAV,GAAmBA,IAAI,IAAI,CAACmB,UAC5BnQ,GAAC,UAAQgP,IAAR,gBAAD,GAA4BO,QAAQ,IAAI,CAACY,UACzCnQ,GAAC,mCAAD,GAAsCgP,IAAI,KAAK,WAAT,IAAwBO,QAAxB,IAAoCY,UAC1EnQ,GAAC,mBAAD,GAAsBsiB,eAPE,GAS1Bra,SAT0B,CAA5B;IAYA,sBACE3C,8BAAA,CAACoc,WAAD;qBACY;SACNjd;IACJgK,IAAAA,KAAK,EAAEA;IACPc,IAAAA,QAAQ,EAAEgT;IACVzX,IAAAA,IAAI,EAAEA;IACNsF,IAAAA,QAAQ,EAAEA;IACVuR,IAAAA,WAAW,EAAEW;IACbnS,IAAAA,QAAQ,EAAEA;IACVlI,IAAAA,SAAS,EAAEua;IACXZ,IAAAA,OAAO,EAAEG;IACT7T,IAAAA,OAAO,EAAEC;IACTjG,IAAAA,IAAI,EAAEA;IACN2Z,IAAAA,WAAW,EAAEA;QAbf,CADF;IAiBD;IAEDQ,IAAI,CAACxY,WAAL,GAAmB,MAAnB;IACAwY,IAAI,CAACtY,YAAL,GAAoB;IAClBiF,EAAAA,IAAI,EAAE;IADY,CAApB;;QCjFayT,SAAS,GAAG,SAAZA,SAAY,CAACje,KAAD;;;IACf,MAAAoH,IAAI,GAAkCpH,KAAK,KAA3C;IAAA,MAAM0J,OAAO,GAAyB1J,KAAK,QAA3C;IAAA,MAAeod,OAAO,GAAgBpd,KAAK,QAA3C;IAAA,MAAwByD,SAAS,GAAKzD,KAAK,UAA3C;IACR,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;;IAEA,MAAM2J,cAAc,GAAG,SAAjBA,cAAiB,CAACvD,IAAD;IACrB,QAAIsD,OAAJ,EAAaA,OAAO,CAACtD,IAAD,CAAP;IACd,GAFD;;IAGA,MAAMmX,cAAc,GAAG,SAAjBA,cAAiB,CAACnX,IAAD;IACrB,QAAIgX,OAAJ,EAAaA,OAAO,CAAChX,IAAD,CAAP;IACd,GAFD;;IAIA,MAAM8X,cAAc,GAAG/a,8BAAU,WAE7B3H,GAAC,YAAD,GAAe,QAFc,GAI/BiI,SAJ+B,CAAjC;IAOA,sBACE3C,8BAAA,MAAA;qBAAe;SAA6Bb;IAAWwD,IAAAA,SAAS,EAAEya;QAAlE,EACG9W,IAAI,CAACjB,GAAL,CAAS,UAACC,IAAD,EAAOU,GAAP;IACA,QAAAtL,KAA4E4K,IAAI,MAAhF;IAAA,QAAA6D,KAAK,mBAAG,OAAR;IAAA,QAAY3D,IAAI,GAA4DF,IAAI,KAAhF;IAAA,QAAkBoE,IAAI,GAAsDpE,IAAI,KAAhF;IAAA,QAAwBuF,QAAQ,GAA4CvF,IAAI,SAAhF;IAAA,QAAkC2E,QAAQ,GAAkC3E,IAAI,SAAhF;IAAA,QAA4C+W,WAAW,GAAqB/W,IAAI,YAAhF;IAAA,QAAyD1C,IAAI,GAAe0C,IAAI,KAAhF;IAAA,QAA+DwF,QAAQ,GAAKxF,IAAI,SAAhF;IACR,wBACEtF,8BAAA,OAAA;IAAM0F,MAAAA,GAAG,EAAEM;IAAKrD,MAAAA,SAAS,EAAC;SAA1B,eACE3C,8BAAA,CAAC+c,IAAD;uBACY;IACVna,MAAAA,IAAI,EAAEA;IACNuG,MAAAA,KAAK,EAAEA;IACPc,MAAAA,QAAQ,EAAEA;IACVzE,MAAAA,IAAI,EAAEA;IACNqF,MAAAA,QAAQ,EAAEA;IACVwR,MAAAA,WAAW,EAAEA;IACbvR,MAAAA,QAAQ,EAAEA;IACVpB,MAAAA,IAAI,EAAEA;IACNd,MAAAA,OAAO,EAAE;IAAM,eAAAC,cAAc,CAACvD,IAAD,CAAd;IAAoB;IACnCgX,MAAAA,OAAO,EAAE;IAAM,eAAAG,cAAc,CAACnX,IAAD,CAAd;IAAoB;SAXrC,CADF,CADF;IAiBD,GAnBA,CADH,CADF;IAwBD;IAED6X,SAAS,CAAC5Y,WAAV,GAAwB,WAAxB;;IC/EO,IAAM8Y,YAAY,GAAG,SAAfA,YAAe;IAC1B,MAAIC,EAAE,GAAG,IAAIzhB,IAAJ,GAAW2b,OAAX,EAAT;IACA,MAAM+F,IAAI,GAAG,uCAAuCC,OAAvC,CAA+C,OAA/C,EAAwD,UAACC,CAAD;IACnE,QAAMC,CAAC,GAAG,CAACJ,EAAE,GAAGxe,IAAI,CAAC6e,MAAL,KAAgB,EAAtB,IAA4B,EAA5B,GAAiC,CAA3C;IACAL,IAAAA,EAAE,GAAGxe,IAAI,CAACC,KAAL,CAAWue,EAAE,GAAG,EAAhB,CAAL;IACA,QAAMM,CAAC,GAAG,CAACH,CAAC,KAAK,GAAN,GAAYC,CAAZ,GAAiBA,CAAC,GAAG,GAAL,GAAY,GAA7B,EAAkCG,QAAlC,CAA2C,EAA3C,CAAV;IACA,WAAOD,CAAP;IACD,GALY,CAAb;IAMA,SAAOL,IAAP;IACD,CATM;;ICMP,IAAMO,YAAY,GAAG,SAAfA,YAAe,CAAC5e,KAAD;IACnB,UAAQA,KAAK,CAAC0D,IAAd;IACE,SAAK,kBAAL;IACE,0BACE5C,uCAAA,MAAA;IAAK+C,QAAAA,KAAK,EAAC;IAAKD,QAAAA,MAAM,EAAC;IAAIib,QAAAA,OAAO,EAAC;IAAWC,QAAAA,IAAI,EAAC;IAAOC,QAAAA,KAAK,EAAC;WAAhE,eACEje,uCAAA,OAAA;IACEke,QAAAA,QAAQ,EAAC;IACTC,QAAAA,QAAQ,EAAC;IACTviB,QAAAA,CAAC,EAAC;IACFoiB,QAAAA,IAAI,EAAC;WAJP,CADF,CADF;;IAWF,SAAK,eAAL;IACE,0BACEhe,uCAAA,MAAA;IAAK+C,QAAAA,KAAK,EAAC;IAAKD,QAAAA,MAAM,EAAC;IAAIib,QAAAA,OAAO,EAAC;IAAWC,QAAAA,IAAI,EAAC;IAAOC,QAAAA,KAAK,EAAC;WAAhE,eACEje,uCAAA,OAAA;IACEpE,QAAAA,CAAC,EAAC;IACFoiB,QAAAA,IAAI,EAAC;WAFP,CADF,CADF;;IASF,SAAK,wBAAL;IACE,0BACEhe,uCAAA,MAAA;IAAK+C,QAAAA,KAAK,EAAC;IAAKD,QAAAA,MAAM,EAAC;IAAIib,QAAAA,OAAO,EAAC;IAAWC,QAAAA,IAAI,EAAC;IAAOC,QAAAA,KAAK,EAAC;WAAhE,eACEje,uCAAA,OAAA;IAAMpE,QAAAA,CAAC,EAAC;IAAiBoiB,QAAAA,IAAI,EAAC;WAA9B,CADF,CADF;;IAMF,SAAK,qBAAL;IACE,0BACEhe,uCAAA,MAAA;IAAK+C,QAAAA,KAAK,EAAC;IAAID,QAAAA,MAAM,EAAC;IAAIib,QAAAA,OAAO,EAAC;IAAUC,QAAAA,IAAI,EAAC;IAAOC,QAAAA,KAAK,EAAC;WAA9D,eACEje,uCAAA,OAAA;IAAMke,QAAAA,QAAQ,EAAC;IAAUC,QAAAA,QAAQ,EAAC;IAAUviB,QAAAA,CAAC,EAAC;IAAgBoiB,QAAAA,IAAI,EAAC;WAAnE,CADF,CADF;;IAMF;IACE,aAAO,IAAP;IAtCJ;IAwCD,CAzCD;;QCgEaI,QAAQ,gBAAGpe,gBAAK,CAACuK,UAAN,CAAkD,UAACrL,KAAD,EAAQmf,YAAR;;;IAEtE,MAAA7X,KAgBEtH,KAAK,KAhBP;IAAA,MAAAgB,IAAI,mBAAG,cAAP;IAAA,MACAwG,KAeExH,KAAK,SAhBP;IAAA,MACAwL,QAAQ,mBAAG,MADX;IAAA,MAEA4T,cAAc,GAcZpf,KAAK,eAhBP;IAAA,MAGAqf,aAAa,GAaXrf,KAAK,cAhBP;IAAA,MAIAiK,KAAK,GAYHjK,KAAK,MAhBP;IAAA,MAKA6C,KAAK,GAWH7C,KAAK,MAhBP;IAAA,MAMA2L,QAAQ,GAUN3L,KAAK,SAhBP;IAAA,MAOA8K,QAAQ,GASN9K,KAAK,SAhBP;IAAA,MAQA0D,IAAI,GAQF1D,KAAK,KAhBP;IAAA,MASAzB,KAAK,GAOHyB,KAAK,MAhBP;IAAA,MAUAyD,SAAS,GAMPzD,KAAK,UAhBP;IAAA,MAWSsf,WAAW,GAKlBtf,KAAK,QAhBP;IAAA,MAYAuf,QAAQ,GAINvf,KAAK,SAhBP;IAAA,MAaAwY,KAGExY,KAAK,GAhBP;IAAA,MAaAwf,EAAE,mBAAM9b,IAAI,MAAJ,GAAQuG,KAAR,MAAA,GAAiBkU,YAAY,OAbrC;IAAA,MAcAsB,QAAQ,GAENzf,KAAK,SAhBP;IAAA,MAeG6L,IAAI,UACL7L,OAjBE,OAAA,YAAA,kBAAA,iBAAA,SAAA,SAAA,YAAA,YAAA,QAAA,SAAA,aAAA,WAAA,YAAA,MAAA,YAAA,EACJ;;IAkBF,MAAMsL,GAAG,GAAGxK,gBAAK,CAAC4e,MAAN,CAA+B,IAA/B,CAAZ;IAEA5e,EAAAA,gBAAK,CAAC6e,mBAAN,CAA0BR,YAA1B,EAAwC;IACtC,WAAO7T,GAAG,CAACsU,OAAX;IACD,GAFD;;IAIM,MAAAlH,KAAwB5X,gBAAK,CAAC8B,QAAN,CAAe0c,WAAW,KAAK7R,SAAhB,GAA4B2R,cAA5B,GAA6CE,WAA5D,CAAxB;IAAA,MAACO,OAAO,QAAR;IAAA,MAAUC,UAAU,QAApB;;IAENhf,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd4X,IAAAA,gBAAgB,CAACV,aAAD,CAAhB;IACD,GAFD,EAEG,CAACA,aAAD,CAFH;IAIAve,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAImX,WAAW,KAAK7R,SAApB,EAA+B;IAC7BqS,MAAAA,UAAU,CAACR,WAAD,CAAV;IACD;IACF,GAJD,EAIG,CAACA,WAAD,CAJH;IAMA,MAAMU,aAAa,GAAG7c,8BAAU,WAE5B3H,GAAC,WAAD,GAAc,MACdA,GAAC,qBAAD,GAAwBmQ,YAHI,GAK9BlI,SAL8B,CAAhC;IAQA,MAAMwc,oBAAoB,GAAG9c,8BAAU,WACrCE,GAAC,wBAAD,GAA2B,MAC3BA,GAAC,4BAA0BrC,KAA3B,GAAoCA,QAFC,EAAvC;IAKA,MAAMkf,oBAAoB,GAAG/c,8BAAU,WACrCR,GAAC,iBAAD,GAAoB,MACpBA,GAAC,0BAAD,GAA6Bkd,SAC7Bld,GAAC,gCAAD,GAAmC3C,KAAK,CAACqf,iBAHJ,EAAvC;IAMA,MAAMc,eAAe,GAAGhd,8BAAU,WAChC0B,GAAC,mBAAD,GAAsB,MACtBA,GAAC,4BAAD,GAA+B,CAAChC,OAChCgC,GAAC,0BAAD,GAA6BhC,SAHG,EAAlC;IAMA,MAAMud,kBAAkB,GAAGjd,8BAAU,WACnCkB,GAAC,iBAAD,GAAoB,MACpBA,GAAC,uBAAD,GAA0BrD,IAAI,KAAK,UAFA,EAArC;;IAKA,MAAM+e,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACM,kBAAD;IACvB/U,IAAAA,GAAG,CAACsU,OAAJ,CAAaP,aAAb,GAA6BgB,kBAA7B;IACD,GAFD;;IAIA,MAAMC,eAAe,GAAG,SAAlBA,eAAkB,CAAC5G,CAAD;IACtB,QAAI4F,WAAW,KAAK7R,SAApB,EAA+B;IAC7BqS,MAAAA,UAAU,CAACpG,CAAC,CAAC6G,MAAF,CAASV,OAAV,CAAV;IACAE,MAAAA,gBAAgB,CAACrG,CAAC,CAAC6G,MAAF,CAASlB,aAAV,CAAhB;IACD;;IACD,QAAIvU,QAAJ,EAAcA,QAAQ,CAAC4O,CAAD,CAAR;IACf,GAND;;IAQA,MAAM8G,UAAU,GAAGrd,8BAAU,WAC3BkE,GAAC,mBAAD,GAAsBwY,OAAO,IAAI7e,IAAI,KAAK,WAC1CqG,GAAC,gBAAD,GAAmBwY,OAAO,IAAI7e,IAAI,KAAK,QACvCqG,GAAC,yBAAD,GAA4BgY,aAAa,IAAIre,IAAI,KAAK,WACtDqG,GAAC,sBAAD,GAAyBgY,aAAa,IAAIre,IAAI,KAAK,UAJxB,EAA7B;IAOA,sBACEF,8BAAA,0BAAA,MAAA,eACEA,8BAAA,MAAA;qBAAe;IAAwB2C,IAAAA,SAAS,EAAEuc;OAAlD,eACElf,8BAAA,MAAA;qBAAe;IAAqC2C,IAAAA,SAAS,EAAEwc;OAA/D,eACEnf,8BAAA,QAAA,eACM+K;IACJrB,IAAAA,IAAI,EAAC;IACL4U,IAAAA,cAAc,EAAEA;IAChBtU,IAAAA,QAAQ,EAAEwV;IACVT,IAAAA,OAAO,EAAEA;IACTlU,IAAAA,QAAQ,EAAEA;IACVL,IAAAA,GAAG,EAAEA;IACL5H,IAAAA,IAAI,EAAEA;IACNnF,IAAAA,KAAK,EAAEA;IACPkF,IAAAA,SAAS,EAAEyc;IACX1U,IAAAA,QAAQ,EAAEA;IACVgU,IAAAA,EAAE,EAAEA;qBACM;QAbZ,CADF,eAgBE1e,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAE0c;qBAA2B;OAA5C,EACGK,UAAU,iBAAI1f,8BAAA,CAAC8d,YAAD;IAAclb,IAAAA,IAAI,EAAE8c;OAApB,CADjB,CAhBF,CADF,eAqBE1f,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGwG,KAAK,IAAIA,KAAK,CAACjH,IAAN,EAAT,iBACClC,8BAAA,QAAA;IAAO2f,IAAAA,OAAO,EAAEjB;IAAI/b,IAAAA,SAAS,EAAE2c;qBAA8B;OAA7D,eACEtf,8BAAA,CAACyC,IAAD;IACEvC,IAAAA,IAAI,EAAEA,IAAI,KAAK,MAAT,GAAkB,OAAlB,GAA4B;IAClCC,IAAAA,UAAU,EAAE0K,QAAQ,GAAG,UAAH,GAAgB;IACpClI,IAAAA,SAAS,EAAC;IACV6H,IAAAA,GAAG,EAAEmU;OAJP,EAMGxV,KAAK,CAACjH,IAAN,EANH,CADF,CAFJ,EAaGuc,QAAQ,iBACPze,8BAAA,CAACyC,IAAD;qBAAgB;IAAiCvC,IAAAA,IAAI,EAAC;IAAQC,IAAAA,UAAU,EAAE0K,QAAQ,GAAG,UAAH,GAAgB;OAAlG,EACG4T,QAAQ,CAACvc,IAAT,EADH,CAdJ,CArBF,CADF,CADF;IA6CD,CApIuB;IAsIxBkc,QAAQ,CAAC7Z,WAAT,GAAuB,UAAvB;;QClJaqb,MAAM,gBAAG5f,gBAAK,CAACuK,UAAN,CAA8C,UAACrL,KAAD,EAAQsL,GAAR;;;IAC1D,MAAAtK,IAAI,GAAwEhB,KAAK,KAAjF;IAAA,MAAM2gB,MAAM,GAAgE3gB,KAAK,OAAjF;IAAA,MAAc4gB,KAAK,GAAyD5gB,KAAK,MAAjF;IAAA,MAAqB6gB,KAAK,GAAkD7gB,KAAK,MAAjF;IAAA,MAA4B8gB,KAAK,GAA2C9gB,KAAK,MAAjF;IAAA,MAAmC+gB,MAAM,GAAmC/gB,KAAK,OAAjF;IAAA,MAA2CyD,SAAS,GAAwBzD,KAAK,UAAjF;IAAA,MAAsDyC,QAAQ,GAAczC,KAAK,SAAjF;IAAA,MAAmE6L,IAAI,UAAK7L,OAA9E,OAAA,UAAA,SAAA,SAAA,SAAA,UAAA,aAAA,YAAA,EAAE;;IAER,MAAM2I,OAAO,GAAGxF,8BAAU,WACxB3H,GAAC,MAAD,GAAS,MACTA,GAAC,UAAQwF,KAAT,GAAkBA,MAClBxF,GAAC,aAAWmlB,OAAZ,GAAuBA,QACvBnlB,GAAC,YAAUolB,MAAX,GAAqBA,OACrBplB,GAAC,YAAUqlB,MAAX,GAAqBA,OACrBrlB,GAAC,YAAUslB,MAAX,GAAqBA,OACrBtlB,GAAC,aAAWulB,OAAZ,GAAuBA,QACvBvlB,GAAC,KAAGiI,UAAJ,GAAkBA,aARM,EAA1B;IAWA,sBACE3C,8BAAA,MAAA;IAAKwK,IAAAA,GAAG,EAAEA;qBAAe;SAA0BO;IAAMpI,IAAAA,SAAS,EAAEkF;QAApE,EACGlG,QADH,CADF;IAKD,CAnBqB;IAqBtBie,MAAM,CAACrb,WAAP,GAAqB,QAArB;;IClEO,IAAM2b,SAAO,GAAG,SAAVA,OAAU,CAAChhB,KAAD;IACb,MAAAtC,WAAW,GAAgDsC,KAAK,YAAhE;IAAA,MAAaihB,YAAY,GAAkCjhB,KAAK,aAAhE;IAAA,MAA2B3B,UAAU,GAAsB2B,KAAK,WAAhE;IAAA,MAAuCoP,KAAK,GAAepP,KAAK,MAAhE;IAAA,MAA8CmP,QAAQ,GAAKnP,KAAK,SAAhE;IAEA,MAAAkhB,IAAI,GAAkB9R,KAAK,KAA3B;IAAA,MAAMvQ,MAAI,GAAYuQ,KAAK,KAA3B;IAAA,MAAYvM,KAAK,GAAKuM,KAAK,MAA3B;IAEA,MAAA5T,KAA0BylB,YAAY,gBAAtC;IAAA,MAAAvlB,eAAe,mBAAG,QAAlB;;IAER,MAAMylB,cAAc,GAAG,SAAjBA,cAAiB,CAAC9c,EAAD,EAA6ClG,GAA7C;IACb,QAAAijB,OAAO,GAAKH,YAAY,QAAxB;IACR9R,IAAAA,QAAQ,CAAC;IACP5G,MAAAA,IAAI,EAAE;IADC,KAAD,CAAR;;IAIA,QAAIpK,GAAG,IAAI,CAACA,GAAG,CAACvC,QAAJ,CAAaF,eAAb,CAAZ,EAA2C;IACzC,UAAMgB,CAAC,GAAG8Q,eAAe,CAAC9P,WAAD,EAAcS,GAAd,EAAmBE,UAAnB,CAAzB;IACA8Q,MAAAA,QAAQ,CAAC;IAAEtQ,QAAAA,IAAI,EAAEnC;IAAR,OAAD,CAAR;IACD;;IAED,QAAI0kB,OAAJ,EAAaA,OAAO,CAAC/c,EAAD,EAAKlG,GAAL,CAAP;IACd,GAZD;;IAcA,MAAMmiB,eAAe,GAAG,SAAlBA,eAAkB,CAACjc,EAAD,EAA0ClG,GAA1C;IACd,QAAA2M,QAAQ,GAAKmW,YAAY,SAAzB;IACR9R,IAAAA,QAAQ,CAAC;IACP5G,MAAAA,IAAI,EAAE;IADC,KAAD,CAAR;;IAIA,QAAIpK,GAAG,IAAI,CAACA,GAAG,CAACvC,QAAJ,CAAaF,eAAb,CAAZ,EAA2C;IACzC,UAAMgB,CAAC,GAAG8Q,eAAe,CAAC9P,WAAD,EAAcS,GAAd,EAAmBE,UAAnB,CAAzB;IACA8Q,MAAAA,QAAQ,CAAC;IAAEtQ,QAAAA,IAAI,EAAEnC;IAAR,OAAD,CAAR;IACD;;IAED,QAAIoO,QAAJ,EAAcA,QAAQ,CAACzG,EAAD,CAAR;IACf,GAZD;;IAcA,MAAMgd,aAAa,GAAG,SAAhBA,aAAgB,CAAChd,EAAD,EAA0ClG,GAA1C;IACZ,QAAAmjB,MAAM,GAAKL,YAAY,OAAvB;IACR9R,IAAAA,QAAQ,CAAC;IACP+R,MAAAA,IAAI,EAAE;IADC,KAAD,CAAR;IAIA,QAAMK,SAAS,GAAG,IAAlB;;IAEA,QAAIpjB,GAAG,IAAIojB,SAAS,CAAC5hB,IAAV,CAAexB,GAAf,CAAP,IAA8BA,GAAG,CAACvC,QAAJ,CAAaF,eAAb,CAAlC,EAAiE;IAC/DyT,MAAAA,QAAQ,CAAC;IAAEtM,QAAAA,KAAK,EAAE;IAAT,OAAD,CAAR;IACD,KAFD,MAEO,IAAK1E,GAAG,IAAI,CAACojB,SAAS,CAAC5hB,IAAV,CAAexB,GAAf,CAAT,IAAiC,CAACA,GAAtC,EAA2C;IAChDgR,MAAAA,QAAQ,CAAC;IAAEtM,QAAAA,KAAK,EAAE;IAAT,OAAD,CAAR;IACD;;IAED,QAAIye,MAAJ,EAAYA,MAAM,CAACjd,EAAD,EAAKlG,GAAG,IAAI,EAAZ,CAAN;IACb,GAfD;;IAiBA,MAAMqjB,cAAc,GAAG,SAAjBA,cAAiB,CAAC9H,CAAD;IACb,QAAA+H,OAAO,GAAKR,YAAY,QAAxB;IACR9R,IAAAA,QAAQ,CAAC;IACP+R,MAAAA,IAAI,EAAE,IADC;IAEPriB,MAAAA,IAAI,EAAE4O;IAFC,KAAD,CAAR;IAKA,QAAIgU,OAAJ,EAAaA,OAAO,CAAC/H,CAAD,CAAP;IACd,GARD;;IAUA,MAAMgI,SAAS,GAAGT,YAAY,CAACpe,KAAb,IAAuBoe,YAAY,CAACU,QAAb,IAAyB9e,KAAzB,IAAkCqe,IAA3E;IACA,MAAMU,YAAY,GAAGX,YAAY,CAACY,OAAb,KAAyBpU,SAAzB,GAAqC,eAArC,GAAuDwT,YAAY,CAACY,OAAzF;;IACA,MAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAAC3jB,GAAD;IACrB,WAAO4jB,OAAA,CAAyB1jB,UAAzB,EAAqCF,GAArC,EAA0CT,WAA1C,CAAP;IACD,GAFD;;IAIA,MAAMskB,IAAI,GAAGD,IAAA,CAAiBrkB,WAAjB,CAAb;IACA,sBACEoD,8BAAA,CAACmhB,CAAD;IACE3b,IAAAA,IAAI,EAAC;IACL4b,IAAAA,WAAW,EAAExkB;SACTujB;IACJpe,IAAAA,KAAK,EAAE6e;IACPM,IAAAA,IAAI,EAAEA;IACNzjB,IAAAA,KAAK,EACHM,MAAI,GAAGpC,iBAAiB,CAACiB,WAAD,EAAcmB,MAAd,CAApB,GAA0CqiB,IAAI,GAAGe,CAAS,CAACE,KAAV,CAAgBC,eAAhB,CAAgCJ,IAAhC,EAAsCtmB,eAAtC,CAAH,GAA4D;IAEhHoP,IAAAA,QAAQ,EAAEwV;IACVc,IAAAA,OAAO,EAAED;IACTG,IAAAA,MAAM,EAAED;IACRI,IAAAA,OAAO,EAAED;IACTK,IAAAA,OAAO,EAAEH,SAAS,GAAGE,YAAH,GAAkB;IACpCvjB,IAAAA,UAAU,EAAE,CAACyjB,cAAD;IACZO,IAAAA,gBAAgB,EAAE;IAClB7C,IAAAA,EAAE,EAAC;QAhBL,CADF;IAoBD,CAzFM;;;IC+FyBxQ,EAAAA,6BAAA;;IAW9B,qBAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IAoDAkP,IAAAA,cAAA,GAAW,UAACrQ,IAAD;IACH,UAAArD,KAA2D0T,KAAI,CAAClP,KAAhE;IAAA,UAAE0R,cAAc,oBAAhB;IAAA,UAAkBC,aAAa,mBAA/B;IAAA,UAAiC1T,YAAY,kBAA7C;IAAA,UAA+CqF,OAAO,aAAtD;IAEN,UAAI,CAACzE,IAAL,EAAW,OAAO,KAAP;;IAEL,UAAAwE,KAAiD6J,WAAW,CAACwE,cAAD,CAA5D;IAAA,UAAQ4Q,MAAM,UAAd;IAAA,UAAuBC,OAAO,WAA9B;IAAA,UAAsCC,MAAM,UAA5C;;IACA,UAAA7f,KAAiDuK,WAAW,CAACyE,aAAD,CAA5D;IAAA,UAAQ8Q,MAAM,UAAd;IAAA,UAAuBC,OAAO,WAA9B;IAAA,UAAsCC,MAAM,UAA5C;;IAEN,UAAI7U,WAAW,CAACjP,IAAD,EAAO,MAAP,EAAeyjB,MAAf,EAAuBC,OAAvB,EAAgCC,MAAhC,CAAX,IAAsD1U,WAAW,CAACjP,IAAD,EAAO,MAAP,EAAe4jB,MAAf,EAAuBC,OAAvB,EAAgCC,MAAhC,CAArE,EAA8G;IAC5G,YAAIrf,OAAJ,EAAa;IACX,cAAMsf,IAAI,GAAGnmB,iBAAiB,CAACwB,YAAD,EAAeY,IAAf,CAA9B;IACAyE,UAAAA,OAAO,CAACzE,IAAD,EAAO+jB,IAAP,CAAP;IACD;;IACD,eAAO,IAAP;IACD;;IACD,aAAO,KAAP;IACD,KAhBD;;IAkBA1T,IAAAA,yBAAA,GAAsB,UAACxS,CAAD;IACpBwS,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZ+R,QAAAA,IAAI,EAAE,IADM;IAEZriB,QAAAA,IAAI,EAAEnC;IAFM,OAAd;;IAKQ,UAAAmmB,aAAa,GAAK3T,KAAI,CAAClP,KAAL,cAAlB;IAER,UAAI6iB,aAAJ,EAAmB3T,KAAI,CAACC,QAAL,CAAc;IAAE5G,QAAAA,IAAI,EAAE;IAAR,OAAd;IACpB,KATD;;IAWA2G,IAAAA,qBAAA,GAAkB,UAAC4T,CAAD,EAAatY,IAAb;IACR,UAAAmB,QAAQ,GAAKuD,KAAI,CAAClP,KAAL,CAAWihB,YAAX,SAAb;IACR,UAAItV,QAAJ,EAAc;;IAEd,cAAQnB,IAAR;IACE,aAAK,cAAL;IACE0E,UAAAA,KAAI,CAACC,QAAL,CAAc;IAAE5G,YAAAA,IAAI,EAAEua;IAAR,WAAd;;IACA;;IACF,aAAK,SAAL;IACE5T,UAAAA,KAAI,CAACC,QAAL,CAAc;IAAE5G,YAAAA,IAAI,EAAE;IAAR,WAAd;;IACA;IANJ;IAQD,KAZD;;IA9EU,QAAA7K,WAAW,GAAiBsC,KAAK,YAAjC;IAAA,QAAa3B,UAAU,GAAK2B,KAAK,WAAjC;IAER,QAAMnB,IAAI,GAAGuO,aAAa,CAACpN,KAAK,CAACnB,IAAP,EAAanB,WAAb,EAA0BW,UAA1B,CAA1B;;IACA,QAAMwE,KAAK,GAAGqM,KAAI,CAAC6T,QAAL,CAAclkB,IAAd,CAAd;;IAEAqQ,IAAAA,KAAI,CAACE,KAAL,GAAa;IACXvQ,MAAAA,IAAI,MADO;IAEXgE,MAAAA,KAAK,OAFM;IAGXqe,MAAAA,IAAI,EAAE,KAHK;IAIX3Y,MAAAA,IAAI,EAAEvI,KAAK,CAACuI,IAAN,IAAc;IAJT,KAAb;;IAMD;;IAEDya,EAAAA,oBAAA,mBAAA,GAAA,UAAmB7K,SAAnB,EAA+CC,SAA/C;IACE,QAAID,SAAS,CAACtZ,IAAV,KAAmB,KAAKmB,KAAL,CAAWnB,IAAlC,EAAwC;IAChC,UAAArD,KAA8B,KAAKwE,KAAnC;IAAA,UAAEtC,WAAW,iBAAb;IAAA,UAAeW,UAAU,gBAAzB;IAEN,UAAM3B,CAAC,GAAG0Q,aAAa,CAAC,KAAKpN,KAAL,CAAWnB,IAAZ,EAAkBnB,WAAlB,EAA+BW,UAA/B,CAAvB;IACA,WAAK8Q,QAAL,CAAc;IACZtQ,QAAAA,IAAI,EAAEnC;IADM,OAAd;IAGD;;IAED,QAAIyb,SAAS,CAAC5P,IAAV,KAAmB,KAAKvI,KAAL,CAAWuI,IAAlC,EAAwC;IACtC,WAAK4G,QAAL,CAAc;IACZ5G,QAAAA,IAAI,EAAE,KAAKvI,KAAL,CAAWuI,IAAX,IAAmB;IADb,OAAd;IAGD;;IAED,QAAI6P,SAAS,CAACvZ,IAAV,KAAmB,KAAKuQ,KAAL,CAAWvQ,IAAlC,EAAwC;IAChC,UAAAwE,KAAiC,KAAKrD,KAAtC;IAAA,UAAEuY,YAAY,kBAAd;IAAA,UAAgBta,YAAY,kBAA5B;IAEE,UAAAY,IAAI,GAAK,KAAKuQ,KAAL,KAAT;IAER,UAAM6T,QAAQ,GAAG,KAAKF,QAAL,CAAclkB,IAAd,CAAjB;IAEA,WAAKsQ,QAAL,CAAc;IAAEtM,QAAAA,KAAK,EAAEogB;IAAT,OAAd;;IAEA,UAAI1K,YAAJ,EAAkB;IAChB,YAAI,CAAC0K,QAAL,EAAe;IACb,cAAML,IAAI,GAAGnmB,iBAAiB,CAACwB,YAAD,EAAeY,IAAf,CAA9B;IACA0Z,UAAAA,YAAY,CAAC1Z,IAAD,EAAO+jB,IAAP,CAAZ;IACD,SAHD,MAGO;IACLrK,UAAAA,YAAY,CAAC9K,SAAD,EAAY,EAAZ,CAAZ;IACD;IACF;IACF;IACF,GAlCD;;IA+EAuV,EAAAA,oBAAA,eAAA,GAAA;IAAA,oBAAA;;IACE,QAAMxnB,KAkBF,KAAKwE,KAlBT;IAAA,eAAA;IAAA,eAAA;IAAA,mBAAA;IAAA,YAIEtC,WAAW,iBAJb;IAAA,uBAAA;IAAA,uBAAA;IAAA,YAOEW,UAAU,gBAPZ;IAAA,oBAAA;IAAA,YASEqT,cAAc,oBAThB;IAAA,QAUEC,aAAa,mBAVf;IAAA,uBAAA;IAAA,wBAAA;IAAA,YAaE3Q,IAAI,UAbN;IAAA,QAcEqC,qBAdF;IAAA,QAcE6f,aAAa,mBAAG,SAdlB;IAAA,QAeEvgB,gBAfF;IAAA,QAeEF,QAAQ,gCAAG3B,8BAAA,0BAAA,MAAA,MAfb;IAAA,QAgBE2P,IAAI,UAhBN;IAAA,QAiBK5E,IAAI,cAjBH,OAAA,QAAA,YAAA,eAAA,gBAAA,gBAAA,cAAA,aAAA,kBAAA,iBAAA,gBAAA,iBAAA,QAAA,iBAAA,YAAA,QAAA;;IAoBE,QAAAhN,IAAI,GAAK,KAAKuQ,KAAL,KAAT;IACA,QAAA9C,MAAM,GAAKG,MAAM,OAAjB;IACR,QAAM4H,SAAS,GAAG,IAAI1X,IAAJ,CAASA,IAAI,CAACqb,GAAL,EAAT,CAAlB;IACA,QAAMmL,iBAAiB,GAAM7W,MAAM,CAAC+H,SAAS,CAAC/G,QAAV,EAAD,CAAN,MAAA,GAAgC+G,SAAS,CAACtH,OAAV,EAA7D;IACA,QAAMkB,QAAQ,GAAGb,aAAa,CAACvO,IAAD,EAAOnB,WAAP,EAAoBW,UAApB,CAA9B;IACA,QAAM+kB,kBAAkB,GAAGhW,aAAa,CAACsE,cAAD,EAAiBhU,WAAjB,EAA8BW,UAA9B,CAAxC;IACA,QAAMglB,iBAAiB,GAAGjW,aAAa,CAACuE,aAAD,EAAgBjU,WAAhB,EAA6BW,UAA7B,CAAvC;;IAEA,QAAMilB,eAAe,GAAG,SAAlBA,eAAkB;IACtB,UAAIC,mBAAmB,GAAG,IAA1B;;IACA,UAAItV,QAAQ,IAAImV,kBAAZ,IAAkCC,iBAAtC,EAAyD;IACvDE,QAAAA,mBAAmB,GAAGtV,QAAQ,GAAGmV,kBAAX,IAAiCnV,QAAQ,GAAGoV,iBAAlE;IACD,OAFD,MAEO,IAAIpV,QAAQ,IAAImV,kBAAhB,EAAoC;IACzCG,QAAAA,mBAAmB,GAAGtV,QAAQ,GAAGmV,kBAAjC;IACD,OAFM,MAEA,IAAInV,QAAQ,IAAIoV,iBAAhB,EAAmC;IACxCE,QAAAA,mBAAmB,GAAGtV,QAAQ,GAAGoV,iBAAjC;IACD;;IAED,aAAO,CAACE,mBAAR;IACD,KAXD;;IAaA,QAAMC,cAAc,GAAGrgB,8BAAU,CAAC;IAChC,uCAAiC,IADD;IAEhC,cAAQnC,IAAI,KAAK,OAFe;IAGhC,cAAQA,IAAI,KAAK,OAHe;IAIhC,cAAQA,IAAI,KAAK,OAAT,IAAoByP,IAAI,KAAK;IAJL,KAAD,CAAjC;IAOA,wBACE3P,8BAAA,MAAA,MAAA,eACEA,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;SAAf,EACGhB,QADH,eAEE3B,8BAAA,CAACoX,QAAD,eACMrM;IACJ7K,MAAAA,IAAI,EAAEA;IACNnC,MAAAA,IAAI,EAAEoP;IACNwC,MAAAA,IAAI,EAAEA;IACNiB,MAAAA,cAAc,EAAE0R;IAChBzR,MAAAA,aAAa,EAAE0R;IACf9K,MAAAA,YAAY,EAAE,KAAKkL;UAPrB,CAFF,CADF,EAaGP,aAAa,iBACZpiB,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAE+f;uBAA0B;SAA1C,eACE1iB,8BAAA,CAAC+c,IAAD;IACE5T,MAAAA,KAAK,EAAE,YAAUkZ;IACjBzf,MAAAA,IAAI,EAAC;IACL8G,MAAAA,IAAI,EAAC;IACLmB,MAAAA,QAAQ,EAAE2X,eAAe;IACzB5Z,MAAAA,OAAO,EAAE;IAAM,eAAAwF,KAAI,CAACuU,mBAAL,CAAyB,IAAI9mB,IAAJ,EAAzB,CAAA;IAAoC;SALrD,CADF,CAdJ,CADF;IA2BD,GA5ED;;IA8EAqmB,EAAAA,oBAAA,OAAA,GAAA;IACQ,QAAAxnB,KAAiF,KAAKwE,KAAtF;IAAA,QAAEmF,QAAQ,cAAV;IAAA,QAAYue,SAAS,eAArB;IAAA,QAAuBhmB,WAAW,iBAAlC;IAAA,QAAoCujB,YAAY,kBAAhD;IAAA,QAAkD5iB,UAAU,gBAA5D;IAAA,QAA8D8I,cAAc,oBAA5E;IAEE,QAAAoB,IAAI,GAAK,KAAK6G,KAAL,KAAT;;IAER,QAAIsU,SAAJ,EAAe;IACb,0BACE5iB,8BAAA,CAACkH,OAAD;IACEC,QAAAA,OAAO,eACLnH,8BAAA,CAACkgB,SAAD;IACEtjB,UAAAA,WAAW,EAAEA;IACbujB,UAAAA,YAAY,EAAEA;IACd5iB,UAAAA,UAAU,EAAEA;IACZ+Q,UAAAA,KAAK,EAAE,KAAKA;IACZD,UAAAA,QAAQ,EAAE,KAAKA,QAAL,CAAcqE,IAAd,CAAmB,IAAnB;aALZ;aAQErM;IACJ/B,QAAAA,YAAY,EAAC;IACbD,QAAAA,QAAQ,EAAEA;IACVoC,QAAAA,YAAY,EAAE;IACdgB,QAAAA,IAAI,EAAEA;IACNob,QAAAA,QAAQ,EAAE,KAAKC;YAfjB,EAiBG,KAAK7K,cAAL,EAjBH,CADF;IAqBD;;IAED,WAAO,KAAKA,cAAL,EAAP;IACD,GA9BD;;IAvLOiK,EAAAA,uBAAA,yBACF9K,QAAQ,CAAC3S;IACZJ,IAAAA,QAAQ,EAAE;IACVzH,IAAAA,WAAW,EAAE;IACbO,IAAAA,YAAY,EAAE;IACdI,IAAAA,UAAU,EAAE,CAAC0jB,MAAD;IACZd,IAAAA,YAAY,EAAE;IACd4B,IAAAA,aAAa,EAAE;QAPV;IAsNT,mBAAA;IAvNA,EAAgC/hB,gBAAK,CAACkY;;IC1GtC,IAAM6K,SAAS,GAAG,SAAZA,SAAY,CAACC,SAAD;IAChB,MAAMpnB,CAAC,GAAG,IAAIC,IAAJ,EAAV;IACAD,EAAAA,CAAC,CAACqnB,QAAF,CAAWD,SAAS,CAACvmB,SAAV,CAAoB,CAApB,EAAuB,CAAvB,CAAX;IACAb,EAAAA,CAAC,CAACsnB,UAAF,CAAaF,SAAS,CAACvmB,SAAV,CAAoB,CAApB,EAAuB,CAAvB,CAAb;IACA,SAAOb,CAAP;IACD,CALD;;IAOO,IAAMunB,cAAc,GAAG,SAAjBA,cAAiB,CAACnoB,MAAD;IAC5B,SAAOA,MAAM,KAAK,SAAlB;IACD,CAFM;;IAIP,IAAMooB,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACvoB,IAAD;IAC3B,SAAOwoB,WAAW,CAACxoB,IAAD,CAAX,IAAqByoB,WAAW,CAACzoB,IAAD,CAAvC;IACD,CAFD;;IAIO,IAAMwoB,WAAW,GAAG,SAAdA,WAAc,CAACxoB,IAAD;IACzB,SAAOA,IAAI,CAACC,QAAL,CAAc,GAAd,KAAsBD,IAAI,CAACC,QAAL,CAAc,GAAd,CAA7B;IACD,CAFM;IAIA,IAAMwoB,WAAW,GAAG,SAAdA,WAAc,CAACzoB,IAAD;IACzB,SAAOA,IAAI,CAACC,QAAL,CAAc,GAAd,KAAsBD,IAAI,CAACC,QAAL,CAAc,GAAd,CAA7B;IACD,CAFM;IASA,IAAMyoB,yBAAuB,GAAG,SAA1BA,uBAA0B,CAACnmB,OAAD;IAC/B,MAAA1C,KAAmB0C,OAAO,CAACN,KAAR,CAAc,GAAd,CAAnB;IAAA,MAACjC,IAAI,QAAL;IAAA,MAAO2oB,QAAQ,QAAf;;IACN,MAAMC,OAAO,GAAG5oB,IAAI,CAACiC,KAAL,CAAW,GAAX,CAAhB;IACA,MAAI5B,KAAK,GAAGuoB,OAAO,CAAC,CAAD,CAAnB;IACA,MAAM1nB,OAAO,GAAG0nB,OAAO,CAAC,CAAD,CAAvB;;IAEA,MAAIvoB,KAAK,KAAK,IAAV,IAAkBmoB,WAAW,CAACG,QAAD,CAAjC,EAA6C;IAC3CtoB,IAAAA,KAAK,GAAG,IAAR;IACD;;IACD,MAAIooB,WAAW,CAACE,QAAD,CAAX,IAAyBtoB,KAAK,KAAK,IAAvC,EAA6C;IAC3CA,IAAAA,KAAK,GAAG,CAACwoB,QAAQ,CAACxoB,KAAD,EAAQ,EAAR,CAAR,GAAsB,EAAvB,EAA2B2iB,QAA3B,EAAR;IACD;;IACD,SAAU3iB,KAAK,MAAL,GAASa,OAAnB;IACD,CAbM;IAmBA,IAAM4nB,iBAAiB,GAAG,SAApBA,iBAAoB,CAACtmB,GAAD;IAC/B,SAAO,CAAC,MAAMA,GAAP,EAAYoG,KAAZ,CAAkB,CAAC,CAAnB,CAAP;IACD,CAFM;IASA,IAAMmgB,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACxmB,OAAD;IACrC,MAAMqmB,OAAO,GAAGrmB,OAAO,CAACN,KAAR,CAAc,GAAd,CAAhB;IACA,MAAM5B,KAAK,GAAGwoB,QAAQ,CAACD,OAAO,CAAC,CAAD,CAAR,EAAa,EAAb,CAAtB;IACA,MAAMD,QAAQ,GAAGtoB,KAAK,IAAI,EAAT,GAAc,IAAd,GAAqB,IAAtC;IAEA,MAAMK,cAAc,GAAGL,KAAK,GAAG,EAAR,IAAc,EAArC;IACA,MAAI2oB,aAAa,GAAGtoB,cAAc,CAACsiB,QAAf,EAApB;IACAgG,EAAAA,aAAa,GAAGF,iBAAiB,CAACE,aAAD,CAAjC;IAEA,MAAM9nB,OAAO,GAAG0nB,OAAO,CAAC,CAAD,CAAvB;IAEA,MAAMK,MAAM,GAAMD,aAAa,CAAChG,QAAd,QAAA,GAA4B9hB,OAA5B,MAAA,GAAuCynB,QAAzD;IACA,SAAOM,MAAP;IACD,CAbM;;IAeP,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAC3mB,OAAD;IAC1B,MAAIgmB,oBAAoB,CAAChmB,OAAD,CAAxB,EAAmC;IACjC,WAAOmmB,yBAAuB,CAACnmB,OAAD,CAA9B;IACD;;IAED,SAAOA,OAAP;IACD,CAND;;IAaO,IAAM4mB,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,SAAD,EAAoBC,OAApB;IACjC,MAAMC,cAAc,GAAGpB,SAAS,CAACkB,SAAD,CAAhC;IACA,MAAMG,YAAY,GAAGrB,SAAS,CAACmB,OAAD,CAA9B;IACA,SAAOC,cAAc,GAAGC,YAAxB;IACD,CAJM;;IAYP,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACJ,SAAD,EAAoBC,OAApB,EAAqCI,QAArC;IACxB,MAAMC,QAAQ,GAAG,EAAjB;IACA,MAAMJ,cAAc,GAAGpB,SAAS,CAACkB,SAAD,CAAhC;IACA,MAAMG,YAAY,GAAGrB,SAAS,CAACmB,OAAD,CAA9B;;IAEA,SAAOC,cAAc,IAAIC,YAAzB,EAAuC;IACrCG,IAAAA,QAAQ,CAACC,IAAT,CAAcL,cAAc,CAACM,YAAf,GAA8BhoB,SAA9B,CAAwC,CAAxC,EAA2C,CAA3C,CAAd;IACA0nB,IAAAA,cAAc,CAACjB,UAAf,CAA0BiB,cAAc,CAACnoB,UAAf,KAA8BsoB,QAAxD;IACD;;IAED,SAAOC,QAAP;IACD,CAXD;;IAkBA,IAAMG,kBAAkB,GAAG,SAArBA,kBAAqB,CAACT,SAAD,EAAoBC,OAApB,EAAqCI,QAArC;IACzB,MAAMC,QAAQ,GAAGF,iBAAiB,CAAC,OAAD,EAAU,OAAV,EAAmBC,QAAnB,CAAlC;IACA,MAAMK,cAAc,GAAGJ,QAAQ,CAACzY,OAAT,CAAiBmY,SAAjB,CAAvB;IACA,MAAMW,YAAY,GAAGL,QAAQ,CAACzY,OAAT,CAAiBoY,OAAjB,CAArB;IACA,MAAMW,gBAAgB,GAAGX,OAAO,KAAK,EAAZ,GAAiBS,cAAjB,GAAkCC,YAAY,GAAG,CAA1E;IAEA,MAAME,cAAc,GAAGP,QAAQ,CAAC9gB,KAAT,CAAekhB,cAAf,CAAvB;IACA,MAAMI,WAAW,GAAGR,QAAQ,CAAC9gB,KAAT,CAAe,CAAf,EAAkBohB,gBAAlB,CAApB;IACA,MAAMf,MAAM,GAAGgB,cAAc,CAACE,MAAf,CAAsBD,WAAtB,CAAf;IAEA,SAAOjB,MAAP;IACD,CAXD;;IAaA,IAAMmB,yBAAyB,GAAG,SAA5BA,yBAA4B,CAAChB,SAAD,EAAoBC,OAApB,EAAqCI,QAArC;IAChC,MAAIJ,OAAO,KAAK,EAAZ,IAAkBF,mBAAmB,CAACC,SAAD,EAAYC,OAAZ,CAAzC,EAA+D;IAC7D,WAAOQ,kBAAkB,CAACT,SAAD,EAAYC,OAAZ,EAAqBI,QAArB,CAAzB;IACD;;IAED,SAAOD,iBAAiB,CAACJ,SAAD,EAAYC,OAAZ,EAAqBI,QAArB,CAAxB;IACD,CAND;;IAQO,IAAMY,iBAAiB,GAAG,SAApBA,iBAAoB,CAACjB,SAAD,EAAoBC,OAApB;IAC/B,MAAMiB,SAAS,GAAG,IAAItpB,IAAJ,CAAS,gBAAgBooB,SAAzB,CAAlB;IACA,MAAMmB,OAAO,GAAG,IAAIvpB,IAAJ,CAAS,gBAAgBqoB,OAAzB,CAAhB;IAEA,MAAMmB,IAAI,GAAGD,OAAO,CAAC5N,OAAR,KAAoB2N,SAAS,CAAC3N,OAAV,EAAjC;IACA,MAAM8N,YAAY,GAAG,IAAIzpB,IAAJ,CAASwpB,IAAT,CAArB;IAEA,MAAME,IAAI,GAAGD,YAAY,CAACE,WAAb,EAAb;IACA,MAAMC,MAAM,GAAGH,YAAY,CAACI,aAAb,EAAf;IAEA,SAAO;IAAEH,IAAAA,IAAI,MAAN;IAAQE,IAAAA,MAAM;IAAd,GAAP;IACD,CAXM;;IAaP,IAAME,cAAc,GAAG,SAAjBA,cAAiB,CAAC9qB,IAAD,EAAe8B,UAAf,EAAuCipB,YAAvC,EAA+DC,aAA/D;IACrB,MAAI1c,KAAK,GAAGtO,IAAZ;;IACA,MAAIsoB,cAAc,CAACxmB,UAAD,CAAlB,EAAgC;IAC9BwM,IAAAA,KAAK,GAAGya,uBAAuB,CAAC/oB,IAAD,CAA/B;IACD;;IACD,MAAI+qB,YAAY,IAAIC,aAApB,EAAmC;IAC3B,QAAAnrB,KAAmBwqB,iBAAiB,CAACW,aAAD,EAAgBhrB,IAAhB,CAApC;IAAA,QAAE0qB,IAAI,UAAN;IAAA,QAAQE,MAAM,YAAd;;IACN,QAAMK,aAAa,GAAG,OAAKP,IAAL,SAAA,GAAgBE,MAAhB,UAAtB;IACAtc,IAAAA,KAAK,IAAI2c,aAAT;IACD;;IAED,SAAO3c,KAAP;IACD,CAZD;;IAcA,IAAM4c,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAClrB,IAAD,EAAe8B,UAAf,EAAuCqpB,gBAAvC;IACvB,MAAIC,SAAS,GAAGprB,IAAhB;;IACA,MAAIsoB,cAAc,CAACxmB,UAAD,CAAlB,EAAgC;IAC9BspB,IAAAA,SAAS,GAAGrC,uBAAuB,CAAC/oB,IAAD,CAAnC;IACD;;IACD,MAAImrB,gBAAgB,CAAClrB,QAAjB,CAA0BmrB,SAA1B,CAAJ,EAA0C;IACxC,WAAO,IAAP;IACD;;IAED,SAAO,KAAP;IACD,CAVD;;IAYA,IAAMC,uBAAuB,GAAG,SAA1BA,uBAA0B,CAC9B3B,QAD8B,EAE9B5nB,UAF8B,EAG9B+hB,EAH8B,EAI9BkH,YAJ8B,EAK9BC,aAL8B,EAM9BG,gBAN8B;IAG9B,mBAAA,EAAA;IAAAtH,IAAAA,4BAAA;;;IAKA,MAAMyH,UAAU,GAAG5B,QAAQ,CAAClf,GAAT,CAAa,UAACxK,IAAD,EAAO0K,KAAP;IAC9B,WAAO;IACL4D,MAAAA,KAAK,EAAEwc,cAAc,CAAC9qB,IAAD,EAAO8B,UAAP,EAAmBipB,YAAnB,EAAiCC,aAAjC,CADhB;IAELpoB,MAAAA,KAAK,EAAE5C,IAFF;IAGLgQ,MAAAA,QAAQ,EAAEmb,gBAAgB,IAAID,gBAAgB,CAAClrB,IAAD,EAAO8B,UAAP,EAAmBqpB,gBAAnB,CAHzC;IAIL/b,MAAAA,QAAQ,EAAE,KAJL;IAKLmc,MAAAA,QAAQ,EAAE1H,EAAE,GAAGnZ;IALV,KAAP;IAOD,GARkB,CAAnB;IASA,SAAO4gB,UAAP;IACD,CAlBD;;IAoBA,IAAME,cAAc,GAAG,SAAjBA,cAAiB,CAACpC,SAAD;IACrB,SAAOA,SAAS,GAAG,EAAH,GAAQ,OAAxB;IACD,CAFD;;IAIO,IAAMqC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACpnB,KAAD;IAC3B,MAAA+kB,SAAS,GAAwE/kB,KAAK,UAAtF;IAAA,MAAWglB,OAAO,GAA+DhlB,KAAK,QAAtF;IAAA,MAAoBolB,QAAQ,GAAqDplB,KAAK,SAAtF;IAAA,MAA8BvC,UAAU,GAAyCuC,KAAK,WAAtF;IAAA,MAA0C0mB,YAAY,GAA2B1mB,KAAK,aAAtF;IAAA,MAAwD8mB,gBAAgB,GAAS9mB,KAAK,iBAAtF;IAAA,MAA0Ewf,EAAE,GAAKxf,KAAK,GAAtF;IAER,MAAMqnB,eAAe,GAAGtC,SAAS,GAAGF,mBAAmB,CAACE,SAAD,CAAtB,GAAoC,OAArE;IACA,MAAMuC,aAAa,GAAGtC,OAAO,GAAGH,mBAAmB,CAACG,OAAD,CAAtB,GAAkCmC,cAAc,CAACpC,SAAD,CAA7E;IAEA,MAAMM,QAAQ,GAAGU,yBAAyB,CAACsB,eAAD,EAAkBC,aAAlB,EAAiClC,QAAjC,CAA1C;IAEA,MAAMmC,kBAAkB,GAAGP,uBAAuB,CAChD3B,QADgD,EAEhD5nB,UAFgD,EAGhD+hB,EAHgD,EAIhDkH,YAJgD,EAKhD3B,SALgD,EAMhD+B,gBANgD,CAAlD;IASA,SAAOS,kBAAP;IACD,CAlBM;;IC1LP,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAAC7rB,IAAD;IACrB,MAAM8rB,QAAQ,GAAGjD,QAAQ,CAAC7oB,IAAD,EAAO,EAAP,CAAzB;IACA,MAAI8rB,QAAQ,GAAG,EAAf,EAAmB,OAAO9rB,IAAP;IAEnB,MAAM+rB,SAAS,GAAGD,QAAQ,GAAG,EAAX,GAAgBA,QAAQ,GAAG,EAA3B,GAAgCA,QAAlD;IACA,MAAM/f,GAAG,GAAG,CAACggB,SAAS,CAAC/I,QAAV,KAAuB,GAAxB,EAA6Bpa,KAA7B,CAAmC,CAAnC,EAAsC,CAAtC,CAAZ;IACA,SAAOmD,GAAP;IACD,CAPD;;IASA,IAAMigB,oBAAoB,GAAG,SAAvBA,oBAAuB;IAC3B,MAAMnS,KAAK,GAAG,IAAI7Y,IAAJ,EAAd;IACA,SAAO8nB,iBAAiB,CAACjP,KAAK,CAAC5Y,QAAN,EAAD,CAAjB,GAAsC,GAAtC,GAA4C6nB,iBAAiB,CAACjP,KAAK,CAAC1Y,UAAN,EAAD,CAApE;IACD,CAHD;;IAKA,IAAM8qB,eAAe,GAAG,SAAlBA,eAAkB,CAACjsB,IAAD;IACtB,MAAM+rB,SAAS,GAAGlD,QAAQ,CAAC7oB,IAAD,EAAO,EAAP,CAAR,GAAqB,EAAvC;IACA,SAAO+rB,SAAS,CAAC/I,QAAV,EAAP;IACD,CAHD;;IAKA,IAAMkJ,eAAe,GAAG,SAAlBA,eAAkB,CAAClsB,IAAD;IACtB,MAAM+rB,SAAS,GAAGlD,QAAQ,CAAC7oB,IAAD,EAAO,EAAP,CAAR,GAAqB,EAAvC;IACA,SAAO+rB,SAAS,CAAC/I,QAAV,EAAP;IACD,CAHD;;IAKA,IAAMmJ,YAAY,GAAG,SAAfA,YAAe,CAACC,GAAD;IACnB,MAAMC,WAAW,GAAG,UAApB;IACA,SAAOA,WAAW,CAACroB,IAAZ,CAAiBooB,GAAjB,CAAP;IACD,CAHD;;IAKA,IAAME,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACF,GAAD;IAC3B,MAAMG,mBAAmB,GAAG,oBAA5B;IACA,SAAOA,mBAAmB,CAACvoB,IAApB,CAAyBooB,GAAzB,CAAP;IACD,CAHD;;IAKA,IAAMI,2BAA2B,GAAG,SAA9BA,2BAA8B,CAACJ,GAAD;IAClC,MAAMK,0BAA0B,GAAG,uDAAnC;IACA,SAAOA,0BAA0B,CAACzoB,IAA3B,CAAgCooB,GAAhC,CAAP;IACD,CAHD;;IAKA,IAAMM,+BAA+B,GAAG,SAAlCA,+BAAkC,CAACN,GAAD;IACtC,MAAMO,yBAAyB,GAAG,iEAAlC;IACA,SAAOA,yBAAyB,CAAC3oB,IAA1B,CAA+BooB,GAA/B,CAAP;IACD,CAHD;;IAKA,IAAMQ,gBAAgB,GAAG,yCAAzB;;IAMA,IAAMC,gCAAgC,GAAG,SAAnCA,gCAAmC,CAACC,UAAD;IACvC,MAAM9sB,IAAI,GAAG8sB,UAAU,CAAC7qB,KAAX,CAAiB2qB,gBAAjB,CAAb;IACA,MAAMlC,IAAI,GAAGuB,eAAe,CAACjsB,IAAI,CAAC,CAAD,CAAL,CAA5B;IACA,MAAM+sB,EAAE,GAAGjE,iBAAiB,CAAC4B,IAAD,CAA5B;IAEA,MAAM3e,GAAG,GAAG/L,IAAI,CAAC,CAAD,CAAJ,KAAY,EAAZ,GAAiB6rB,cAAc,CAAC7rB,IAAI,CAAC,CAAD,CAAL,CAA/B,GAA2C,IAAvD;IACA,MAAMgtB,EAAE,GAAG,CAACjhB,GAAG,GAAG,GAAP,EAAYnD,KAAZ,CAAkB,CAAlB,EAAqB,CAArB,CAAX;IAEA,SAAO;IAAE8hB,IAAAA,IAAI,EAAEqC,EAAR;IAAYhhB,IAAAA,GAAG,EAAEihB;IAAjB,GAAP;IACD,CATD;;IAgBA,IAAMC,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,UAAD,EAAqBC,gBAArB;IAC9B,MAAMC,SAAS,GAAGF,UAAU,CAACzrB,MAA7B;IACA,MAAM4rB,eAAe,GAAGxE,QAAQ,CAACqE,UAAD,EAAa,EAAb,CAAhC;IACA,MAAMI,YAAY,GAAGJ,UAAU,CAACtkB,KAAX,CAAiB,CAAjB,EAAoB,CAApB,CAArB;IACA,MAAImkB,EAAE,GAAG,IAAT;IACA,MAAIC,EAAE,GAAG,IAAT;;IAEA,UAAQI,SAAR;IACE,SAAK,CAAL;IACEL,MAAAA,EAAE,GAAG,MAAMG,UAAX;IACA;;IAEF,SAAK,CAAL;IACE,UAAIG,eAAe,IAAI,EAAnB,IAA0BF,gBAAgB,IAAIE,eAAe,IAAI,EAArE,EAA0E;IAExEN,QAAAA,EAAE,GAAGjE,iBAAiB,CAACoE,UAAD,CAAtB;IACD,OAHD,MAGO;IAELH,QAAAA,EAAE,GAAG,MAAMG,UAAU,CAAC,CAAD,CAArB;IACAF,QAAAA,EAAE,GAAGnB,cAAc,CAACqB,UAAU,CAAC,CAAD,CAAV,GAAgB,GAAjB,CAAnB;IAED;;IACD;;IAEF,SAAK,CAAL;IACEH,MAAAA,EAAE,GAAG,MAAMG,UAAU,CAAC,CAAD,CAArB;IACAF,MAAAA,EAAE,GAAGnB,cAAc,CAACqB,UAAU,CAACtkB,KAAX,CAAiB,CAAjB,CAAD,CAAnB;IACA;;IAEF,SAAK,CAAL;IACEmkB,MAAAA,EAAE,GAAGI,gBAAgB,GAAGjB,eAAe,CAACoB,YAAD,CAAlB,GAAmCrB,eAAe,CAACqB,YAAD,CAAvE;IACAN,MAAAA,EAAE,GAAGnB,cAAc,CAACqB,UAAU,CAACtkB,KAAX,CAAiB,CAAjB,CAAD,CAAnB;IACA;;IAEF;IAEEmkB,MAAAA,EAAE,GAAG,IAAL;IACAC,MAAAA,EAAE,GAAG,IAAL;IA9BJ;;IAgCA,SAAO;IAAEtC,IAAAA,IAAI,EAAEqC,EAAR;IAAYhhB,IAAAA,GAAG,EAAEihB;IAAjB,GAAP;IACD,CAxCD;;IA8CA,IAAMO,yBAAyB,GAAG,SAA5BA,yBAA4B,CAACT,UAAD;IAChC,MAAMlE,OAAO,GAAGkE,UAAU,CAAC7qB,KAAX,CAAiB,YAAjB,CAAhB;;IACM,MAAApC,KAAgBotB,uBAAuB,CAACrE,OAAO,CAAC,CAAD,CAAR,EAAa,IAAb,CAAvC;IAAA,MAAE8B,IAAI,UAAN;IAAA,MAAQ3e,GAAG,SAAX;;IAEN,SAAO;IAAE2e,IAAAA,IAAI,MAAN;IAAQ3e,IAAAA,GAAG;IAAX,GAAP;IACD,CALD;;IAWO,IAAMyhB,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAClC,UAAD,EAAuB4B,UAAvB;IAC9B,MAAIJ,UAAU,GAAG;IAAEpC,IAAAA,IAAI,EAAE,IAAR;IAAc3e,IAAAA,GAAG,EAAE;IAAnB,GAAjB;;IAGA,MAAIogB,YAAY,CAACe,UAAD,CAAhB,EAA8B;IAC5B,QAAMO,gBAAgB,GAAGR,uBAAuB,CAACC,UAAD,CAAhD;;IAEA,QAAIrE,QAAQ,CAAC4E,gBAAgB,CAAC/C,IAAlB,CAAR,IAAmC,EAAnC,IAAyC7B,QAAQ,CAAC4E,gBAAgB,CAAC/C,IAAlB,CAAR,GAAkC,CAA/E,EAAkF;IAEhFoC,MAAAA,UAAU,GAAGY,sBAAsB,CAACpC,UAAD,EAAamC,gBAAb,CAAnC;IACD,KAHD,MAGO;IACLX,MAAAA,UAAU,GAAGW,gBAAb;IACD;IACF,GATD,MAYK,IAAInB,oBAAoB,CAACY,UAAD,CAAxB,EAAsC;IACzCJ,IAAAA,UAAU,GAAGS,yBAAyB,CAACL,UAAD,CAAtC;IACAJ,IAAAA,UAAU,CAACpC,IAAX,GAAkBhC,uBAAuB,CAACoE,UAAU,CAACpC,IAAZ,EAAkBwC,UAAlB,CAAzC;IACD,GAHI,MAMA,IAAIV,2BAA2B,CAACU,UAAD,CAA/B,EAA6C;IAChD,QAAMO,gBAAgB,GAAGZ,gCAAgC,CAACK,UAAD,CAAzD;;IAEA,QAAIrE,QAAQ,CAAC4E,gBAAgB,CAAC/C,IAAlB,CAAR,IAAmC,EAAvC,EAA2C;IAEzCoC,MAAAA,UAAU,GAAGY,sBAAsB,CAACpC,UAAD,EAAamC,gBAAb,CAAnC;IACD,KAHD,MAGO;IACLX,MAAAA,UAAU,GAAGW,gBAAb;IACD;IACF,GATI,MAYA,IAAIf,+BAA+B,CAACQ,UAAD,CAAnC,EAAiD;IACpD,QAAMS,eAAe,GAAGT,UAAU,CAACvK,OAAX,CAAmB,aAAnB,EAAkC,EAAlC,CAAxB;;IAEA,QAAIwJ,YAAY,CAACwB,eAAD,CAAhB,EAAmC;IACjCb,MAAAA,UAAU,GAAGG,uBAAuB,CAACU,eAAD,EAAkB,IAAlB,CAApC;IACD,KAFD,MAEO,IAAInB,2BAA2B,CAACmB,eAAD,CAA/B,EAAkD;IACvDb,MAAAA,UAAU,GAAGD,gCAAgC,CAACc,eAAD,CAA7C;IACD;;IAEDb,IAAAA,UAAU,CAACpC,IAAX,GAAkBhC,uBAAuB,CAACoE,UAAU,CAACpC,IAAZ,EAAkBwC,UAAlB,CAAzC;IACD;;IAED,SAAOJ,UAAP;IACD,CA/CM;;IAsDP,IAAMpE,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACroB,KAAD,EAAgB6sB,UAAhB;IAC9B,MAAI7sB,KAAK,KAAK,IAAV,IAAkBmoB,WAAW,CAAC0E,UAAD,CAAjC,EAA+C;IAC7C7sB,IAAAA,KAAK,GAAG,IAAR;IACD,GAFD,MAEO,IAAIooB,WAAW,CAACyE,UAAD,CAAX,IAA2B7sB,KAAK,KAAK,IAAzC,EAA+C;IACpDA,IAAAA,KAAK,GAAG,CAACwoB,QAAQ,CAACxoB,KAAD,EAAQ,EAAR,CAAR,GAAsB,EAAvB,EAA2B2iB,QAA3B,EAAR;IACD;;IACD,SAAO3iB,KAAP;IACD,CAPD;;IAcA,IAAMqtB,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACpC,UAAD,EAAuBwB,UAAvB;IAC7B,MAAMc,aAAa,GAAMd,UAAU,CAACpC,IAAX,MAAA,GAAmBoC,UAAU,CAAC/gB,GAAvD;IACA,MAAM8hB,WAAW,GAAG7B,oBAAoB,EAAxC;IACA,MAAM8B,WAAW,GAAG3E,mBAAmB,CAAC0E,WAAD,EAAcD,aAAd,CAAvC;IACA,MAAMG,gBAAgB,GAAGC,oBAAoB,CAAC1C,UAAD,EAAauC,WAAb,CAA7C;IACA,MAAMI,eAAe,GAAGD,oBAAoB,CAAC1C,UAAD,EAAasC,aAAb,CAA5C;;IAEA,MAAIE,WAAW,IAAIC,gBAAgB,GAAGE,eAAtC,EAAuD;IACrD,QAAMC,cAAc,GAAGrF,QAAQ,CAACiE,UAAU,CAACpC,IAAZ,EAAkB,EAAlB,CAAR,GAAgC,EAAvD;IACAoC,IAAAA,UAAU,CAACpC,IAAX,GAAkBwD,cAAc,CAAClL,QAAf,EAAlB;IACD;;IAED,SAAO8J,UAAP;IACD,CAbD;;IAeA,IAAMkB,oBAAoB,GAAG,SAAvBA,oBAAuB,CAAC1C,UAAD,EAAuB6C,UAAvB;IAC3B,MAAIC,gBAAgB,GAAG,CAAvB;IACA,MAAMC,OAAO,GAAG;IAAE3D,IAAAA,IAAI,EAAE,GAAR;IAAa4D,IAAAA,IAAI,EAAE;IAAnB,GAAhB;;IAEA,OAAK,IAAI5jB,KAAK,GAAG,CAAjB,EAAoBA,KAAK,GAAG4gB,UAAU,CAAC7pB,MAAvC,EAA+CiJ,KAAK,EAApD,EAAwD;IAChD,QAAA7K,KAAmBwqB,iBAAiB,CAAC8D,UAAD,EAAa7C,UAAU,CAAC5gB,KAAD,CAAvB,CAApC;IAAA,QAAEggB,IAAI,UAAN;IAAA,QAAQE,MAAM,YAAd;;IACN,QAAIF,IAAI,GAAG2D,OAAO,CAAC3D,IAAf,IAAwBA,IAAI,KAAK2D,OAAO,CAAC3D,IAAjB,IAAyBE,MAAM,GAAGyD,OAAO,CAACC,IAAtE,EAA6E;IAC3ED,MAAAA,OAAO,CAAC3D,IAAR,GAAeA,IAAf;IACA2D,MAAAA,OAAO,CAACC,IAAR,GAAe1D,MAAf;IACAwD,MAAAA,gBAAgB,GAAG1jB,KAAnB;IACD;IACF;;IAED,SAAO0jB,gBAAP;IACD,CAdD;;IAsBO,IAAMG,cAAc,GAAG,SAAjBA,cAAiB,CAACjD,UAAD,EAAuB4B,UAAvB;IACxB,MAAArtB,KAAgB2tB,gBAAgB,CAAClC,UAAD,EAAa4B,UAAb,CAAhC;IAAA,MAAExC,IAAI,UAAN;IAAA,MAAQ3e,GAAG,SAAX;;IACJ,MAAIA,GAAG,KAAK,IAAZ,EAAkB;IAChBA,IAAAA,GAAG,GAAG,IAAN;IACA2e,IAAAA,IAAI,GAAG,CAAC7B,QAAQ,CAAC6B,IAAD,EAAO,EAAP,CAAR,GAAqB,CAAtB,EAAyB1H,QAAzB,EAAP;IACD;;IACD,MAAMmL,UAAU,GAAMzD,IAAI,MAAJ,GAAQ3e,GAA9B;IAEA,MAAMyiB,WAAW,GAAGR,oBAAoB,CAAC1C,UAAD,EAAa6C,UAAb,CAAxC;IACA,SAAOK,WAAP;IACD,CAVM;;IAgBP,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACvB,UAAD;;;IACvB,SAAO,OAAAA,UAAU,CAACwB,KAAX,CAAiB,KAAjB,2CAAyBjtB,MAAzB,KAAmC,CAA1C;IACD,CAFD;;IAIA,IAAMktB,iBAAiB,GAAG,SAApBA,iBAAoB,CAACzB,UAAD;IACxB,MAAM0B,UAAU,GAAGH,gBAAgB,CAACvB,UAAD,CAAnC;IACA,SAAO0B,UAAU,GAAG,CAAb,IAAkBA,UAAU,GAAG,CAAtC;IACD,CAHD;;IAKA,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACvD,UAAD;IAC7B,MAAM7f,IAAI,GAAG6f,UAAU,CAAC9gB,GAAX,CAAe,UAACskB,MAAD;IAAiB,WAAAA,MAAM,CAAClsB,KAAP;IAAY,GAA5C,CAAb;IACA,SAAO6I,IAAP;IACD,CAHD;;IAKA,IAAMsjB,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACrgB,OAAD,EAAoBwe,UAApB;IAE1B,MAAI,CAACyB,iBAAiB,CAACzB,UAAD,CAAtB,EAAoC;IAClC,WAAO,CAAC,CAAR;IACD;;IAED,MAAMsB,WAAW,GAAGD,cAAc,CAAC7f,OAAD,EAAUwe,UAAV,CAAlC;IACA,SAAOsB,WAAP;IACD,CARD;;IAUO,IAAMQ,cAAc,GAAG,SAAjBA,cAAiB,CAACpD,kBAAD,EAAqCsB,UAArC;IAC5B,MAAM5B,UAAU,GAAGuD,sBAAsB,CAACjD,kBAAD,CAAzC;;IAEA,MAAIsB,UAAU,KAAK,EAAnB,EAAuB;IAErB,QAAM+B,QAAQ,GAAGjD,oBAAoB,EAArC;IAEA,QAAMkD,aAAa,GAAGlB,oBAAoB,CAAC1C,UAAD,EAAa2D,QAAb,CAA1C;IACA,WAAOC,aAAP;IACD;;IAED,SAAOH,mBAAmB,CAACzD,UAAD,EAAa4B,UAAb,CAA1B;IACD,CAZM;;ICxRA,IAAMiC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACzgB,OAAD,EAAewe,UAAf;IAChC,MAAMjE,MAAM,GAAGva,OAAO,CAAC1J,MAAR,CAAe,UAAC8pB,MAAD;IAAoB,WAAAA,MAAM,CAACxgB,KAAP,CAAa8gB,WAAb,GAA2BnvB,QAA3B,CAAoCitB,UAAU,CAACkC,WAAX,EAApC,CAAA;IAA6D,GAAhG,CAAf;IACA,SAAOnG,MAAP;IACD,CAHM;;IAKP,IAAMoG,QAAQ,GAAG,SAAXA,QAAW,CAACC,GAAD;IACf,SAAOA,GAAG,CAACC,IAAJ,CAAS,UAACC,CAAD,EAAIC,CAAJ;IAAU,WAACD,CAAC,CAAC5sB,KAAF,GAAU6sB,CAAC,CAAC7sB,KAAZ,GAAoB,CAApB,GAAwB6sB,CAAC,CAAC7sB,KAAF,GAAU4sB,CAAC,CAAC5sB,KAAZ,GAAoB,CAAC,CAArB,GAAyB,CAAlD;IAAoD,GAAvE,CAAP;IACD,CAFD;;IAIO,IAAM8sB,QAAQ,GAAG,SAAXA,QAAW,CAACC,SAAD,EAAsBC,UAAtB;IACtB,MAAMC,eAAe,GAAGR,QAAQ,gBAAKM,UAAL,CAAhC;IACA,MAAMG,gBAAgB,GAAGT,QAAQ,gBAAKO,WAAL,CAAjC;IACA,SACEC,eAAe,CAACpuB,MAAhB,KAA2BquB,gBAAgB,CAACruB,MAA5C,IACAouB,eAAe,CAAC7sB,KAAhB,CAAsB,UAAC8rB,MAAD,EAASpkB,KAAT;IAAmB,WAAAokB,MAAM,CAAClsB,KAAP,KAAiBktB,gBAAgB,CAACplB,KAAD,CAAhB,CAAwB9H,KAAzC;IAA8C,GAAvF,CAFF;IAID,CAPM;IASA,IAAMmtB,aAAa,GAAG,SAAhBA,aAAgB,CAAC3gB,QAAD;IAAyB,SAAAA,QAAQ,KAAK0C,SAAb;IAAsB,CAArE;IAEA,IAAMke,iBAAiB,GAAG,SAApBA,iBAAoB,CAACpjB,IAAD;IAAoB,SAAAA,IAAI,KAAKkF,SAAT;IAAkB,CAAhE;IAEA,IAAMme,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,IAAD,EAAgBhD,UAAhB,EAAoCiD,YAApC;IAChC,SAAAD,IAAI,IAAIC,YAAR,IAAwBjD,UAAU,KAAK,EAAvC;IAAyC,CADpC;IAGA,IAAMkD,mBAAmB,GAAG,SAAtBA,mBAAsB,CACjClD,UADiC,EAEjCmD,WAFiC,EAGjCC,aAHiC,EAIjCH,YAJiC;IAK9B,SAAAA,YAAY,IAAIG,aAAhB,IAAiCD,WAAW,KAAK,CAAjD,IAAsDnD,UAAU,KAAK,EAArE;IAAuE,CALrE;IAOA,IAAMqD,QAAQ,GAAG,SAAXA,QAAW,CAACC,OAAD,EAAmBC,GAAnB;IACtBD,EAAAA,OAAO,CAACD,QAAR,CAAiB,CAAjB,EAAoBE,GAApB;IACD,CAFM;IAIA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAACC,WAAD,EAAqCC,cAArC;IAC5B,MAAMC,QAAQ,GAAGF,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEG,qBAAb,EAAjB;IACA,MAAMC,WAAW,GAAGH,cAAc,CAACE,qBAAf,EAApB;IACA,MAAME,UAAU,GAAGJ,cAAc,CAACK,YAAlC;;IAEA,MAAIF,WAAW,CAACG,MAAZ,GAAqBL,QAAS,CAACK,MAA/B,IAAyCP,WAA7C,EAA0D;IACxDJ,IAAAA,QAAQ,CAACI,WAAD,EAAcC,cAAc,CAACO,SAAf,GAA2BN,QAAS,CAAC5oB,MAArC,GAA8C+oB,UAA5D,CAAR;IACD,GAFD,MAEO,IAAID,WAAW,CAACN,GAAZ,GAAkBI,QAAS,CAACJ,GAA5B,IAAmCE,WAAvC,EAAoD;IACzDJ,IAAAA,QAAQ,CAACI,WAAD,EAAcC,cAAc,CAACO,SAAf,GAA2BH,UAAzC,CAAR;IACD;IACF,CAVM;IAYA,IAAMI,cAAY,GAAG,SAAfA,YAAe,CAAChiB,QAAD,EAAqBiiB,aAArB,EAA4CC,qBAA5C;IAC1B,MAAIliB,QAAQ,CAAC3N,MAAb,EAAqB;IACnB,QAAI2N,QAAQ,CAAC3N,MAAT,GAAkB,CAAlB,IAAuB6vB,qBAAqB,GAAG,CAA/C,IAAoDliB,QAAQ,CAAC3N,MAAT,KAAoB4vB,aAAa,GAAGC,qBAA5F,EAAmH;IACjH,aAAO;IAAE5N,QAAAA,aAAa,EAAE,IAAjB;IAAuBQ,QAAAA,OAAO,EAAE;IAAhC,OAAP;IACD;;IACD,QAAMR,aAAa,GAAGtU,QAAQ,CAAC3N,MAAT,GAAkB,CAAlB,IAAuB2N,QAAQ,CAAC3N,MAAT,KAAoB4vB,aAAjE;IACA,QAAMnN,OAAO,GAAG9U,QAAQ,CAAC3N,MAAT,GAAkB,CAAlB,IAAuB2N,QAAQ,CAAC3N,MAAT,KAAoB4vB,aAA3D;IACA,QAAMpsB,GAAG,GAAG;IAAEif,MAAAA,OAAO,SAAT;IAAWR,MAAAA,aAAa;IAAxB,KAAZ;IACA,WAAOze,GAAP;IACD;;IACD,SAAO;IAAEye,IAAAA,aAAa,EAAE,KAAjB;IAAwBQ,IAAAA,OAAO,EAAE;IAAjC,GAAP;IACD,CAXM;IAaA,IAAMqN,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,WAAD,EAAsBC,WAAtB;;;IACjC,MAAMlG,QAAQ,GAAGkG,WAAW,WAAIA,WAAW,CAACD,WAAD,2CAAejG,QAA9B,CAA5B;IACA,MAAMmG,YAAY,GAAGjyB,QAAQ,CAACkyB,cAAT,CAAwBpG,QAAxB,CAArB;IACAmG,EAAAA,YAAY,IAAIA,YAAY,CAAChB,cAA7B,IAA+CgB,YAAY,CAAChB,cAAb,CAA4B;IAAEkB,IAAAA,KAAK,EAAE;IAAT,GAA5B,CAA/C;IACD,CAJM;IAMA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACJ,WAAD;IAC9B,MAAMK,SAAS,GAAGL,WAAW,CAACjtB,MAAZ,CAAmB,UAACC,GAAD,EAAMqqB,MAAN;IACnC,QAAMiD,KAAK,GAAGjD,MAAM,CAACiD,KAAP,IAAgB,EAA9B;;IAEA,QAAI,CAACttB,GAAG,CAACstB,KAAD,CAAR,EAAiB;IACfttB,MAAAA,GAAG,CAACstB,KAAD,CAAH,GAAa,EAAb;IACD;;IAEDttB,IAAAA,GAAG,CAACstB,KAAD,CAAH,CAAWpI,IAAX,CAAgBmF,MAAhB;IAEA,WAAOrqB,GAAP;IACD,GAViB,EAUf,EAVe,CAAlB;IAYA,MAAMutB,kBAAkB,GAAGltB,MAAM,CAACmtB,MAAP,CAAcH,SAAd,EAAyBI,OAAzB,CAAiC,UAACznB,IAAD;IAAU,0BAAIA,KAAJ;IAAS,GAApD,CAA3B;IAEA,SAAOunB,kBAAP;IACD,CAhBM;;ICyBA,IAAMG,oBAAoB,GAAG,SAAvBA,oBAAuB,CAAC9tB,KAAD;IAEhC,MAAAuI,IAAI,GAWFvI,KAAK,KAXP;IAAA,MACAglB,OAAO,GAULhlB,KAAK,QAXP;IAAA,MAEAolB,QAAQ,GASNplB,KAAK,SAXP;IAAA,MAGA8K,QAAQ,GAQN9K,KAAK,SAXP;IAAA,MAIA+kB,SAAS,GAOP/kB,KAAK,UAXP;IAAA,MAKAvC,UAAU,GAMRuC,KAAK,WAXP;IAAA,MAMA0mB,YAAY,GAKV1mB,KAAK,aAXP;IAAA,MAOA+tB,eAAe,GAIb/tB,KAAK,gBAXP;IAAA,MAQA8mB,gBAAgB,GAGd9mB,KAAK,iBAXP;IAAA,MASAguB,gBAAgB,GAEdhuB,KAAK,iBAXP;IAAA,MAUA6C,KAAK,GACH7C,KAAK,MAXP;;IAaI,MAAAxE,KAA0BsF,gBAAK,CAAC8B,QAAN,CAAe,CAAf,CAA1B;IAAA,MAAC4I,QAAQ,QAAT;IAAA,MAAWyiB,WAAW,QAAtB;;IACA,MAAA5qB,KAAgCvC,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAhC;IAAA,MAACsrB,WAAW,QAAZ;IAAA,MAAcC,cAAc,QAA5B;;IACA,MAAAxrB,KAAoC7B,gBAAK,CAAC8B,QAAN,CAAe,CAAC,CAAhB,CAApC;IAAA,MAACwrB,aAAa,QAAd;IAAA,MAAgBC,gBAAgB,QAAhC;;IACA,MAAAxpB,KAAwB/D,gBAAK,CAAC8B,QAAN,CAAe,CAAf,CAAxB;IAAA,MAAC0rB,OAAO,QAAR;IAAA,MAAUC,UAAU,QAApB;;IAEN,MAAMhH,kBAAkB,GAAGH,qBAAqB,CAACpnB,KAAD,CAAhD;IAEAc,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACdI,IAAAA,IAAI,KAAKkF,SAAT,IAAsB0gB,cAAc,CAAC5lB,IAAD,CAApC;IACD,GAFD,EAEG,CAACA,IAAD,CAFH;IAIAzH,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIqmB,KAAJ;;IAEA,QAAIN,WAAW,IAAIE,aAAa,IAAI,CAAC,CAArC,EAAwC;IACtCH,MAAAA,WAAW,CAACG,aAAD,CAAX;IAEAI,MAAAA,KAAK,GAAGtlB,UAAU,CAAC;IACjBgkB,QAAAA,mBAAmB,CAACkB,aAAD,EAAgB7G,kBAAhB,CAAnB;IACD,OAFiB,EAEf,GAFe,CAAlB;IAGD;;IACD,WAAO;IACLkH,MAAAA,YAAY,CAACD,KAAD,CAAZ;IACD,KAFD;IAGD,GAbD,EAaG,CAACN,WAAD,CAbH;IAgBAptB,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACdomB,IAAAA,UAAU,CAACD,OAAO,GAAG,CAAX,CAAV;IACD,GAFD,EAEG,CAACvJ,SAAD,EAAYC,OAAZ,EAAqBI,QAArB,EAA+BsB,YAA/B,EAA6CI,gBAA7C,CAFH;;IAIA,MAAMxG,eAAe,GAAG,SAAlBA,eAAkB,CAACtgB,KAAD;IACtB,QAAIrE,IAAI,GAAGqE,KAAX;;IAEA,QAAIikB,cAAc,CAACxmB,UAAD,CAAlB,EAAgC;IAC9B9B,MAAAA,IAAI,GAAG+oB,uBAAuB,CAAC/oB,IAAD,CAA9B;IACD;;IAED,QAAM+yB,WAAW,GAAGnH,kBAAkB,CAACoH,SAAnB,CAA6B,UAAClE,MAAD;IAAY,aAAAA,MAAM,CAAClsB,KAAP,KAAiByB,KAAjB;IAAsB,KAA/D,CAApB;IACAquB,IAAAA,gBAAgB,CAACK,WAAD,CAAhB;IACA5jB,IAAAA,QAAQ,IAAIA,QAAQ,CAACnP,IAAD,CAApB;IACD,GAVD;;IAYA,MAAMizB,aAAa,GAAG,SAAhBA,aAAgB,CAAC/F,UAAD;IACpB,QAAIsE,WAAJ;IACA,QAAM0B,UAAU,GAAGlE,cAAc,CAACpD,kBAAD,EAAqBsB,UAArB,CAAjC;;IAEA,QAAIA,UAAU,KAAK,EAAf,IAAqBuF,aAAa,IAAI,CAAC,CAA3C,EAA8C;IAC5CjB,MAAAA,WAAW,GAAGiB,aAAd;IACAH,MAAAA,WAAW,CAACG,aAAD,CAAX;IACD,KAHD,MAGO;IACLjB,MAAAA,WAAW,GAAG0B,UAAd;IACAZ,MAAAA,WAAW,CAACY,UAAD,CAAX;IACD;;IAED,WAAOC,OAAO,CAACC,OAAR,CAAgB;IACrB1kB,MAAAA,OAAO,EAAEwkB,UAAU,KAAK,CAAC,CAAhB,GAAoB,EAApB,GAAyBtH,kBADb;IAErByH,MAAAA,KAAK,EAAEzH,kBAAkB,CAACnqB,MAFL;IAGrB6xB,MAAAA,aAAa,EAAE9B,WAAW,KAAK,CAAhB,GAAoBA,WAAW,GAAG,CAAlC,GAAsCA,WAHhC;IAIrBtE,MAAAA,UAAU;IAJW,KAAhB,CAAP;IAMD,GAlBD;;IAoBA,MAAMqG,eAAe,GAAG,SAAlBA,eAAkB;IACtB,WAAOlB,gBAAgB,GAAGA,gBAAH,GAAsBY,aAA7C;IACD,GAFD;;IAIA,sBACE9tB,8BAAA,CAAC4J,QAAD;IACElE,IAAAA,GAAG,EAAE8nB;IACL1nB,IAAAA,SAAS,EAAE;IACXuoB,IAAAA,YAAY,EAAE;IACdC,IAAAA,UAAU,EAAE;IACZ7mB,IAAAA,IAAI,EAAE2lB;IACN1iB,IAAAA,QAAQ,EAAEA;IACV6jB,IAAAA,iBAAiB,EAAC;IAClBvkB,IAAAA,QAAQ,EAAEwV;IACVgP,IAAAA,YAAY,EAAEJ,eAAe;IAC7BnB,IAAAA,eAAe,EAAEA;IACjBwB,IAAAA,WAAW,EAAEhI,kBAAkB,CAACnqB;IAChCoyB,IAAAA,cAAc,EAAE;IACdrB,MAAAA,cAAc,CAAC,CAACD,WAAF,CAAd;IACD;IACDrrB,IAAAA,KAAK,EAAEA;OAfT,CADF;IAmBD,CArGM;IAuGPirB,oBAAoB,CAACvoB,YAArB,GAAoC;IAClC9H,EAAAA,UAAU,EAAE,SADsB;IAElC2nB,EAAAA,QAAQ,EAAE;IAFwB,CAApC;IAKA0I,oBAAoB,CAACzoB,WAArB,GAAmC,sBAAnC;;ICzJO,IAAMoqB,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACzvB,KAAD;IACzB,MAAA3B,UAAU,GAAmF2B,KAAK,WAAlG;IAAA,MAAYihB,YAAY,GAAqEjhB,KAAK,aAAlG;IAAA,MAA0BtC,WAAW,GAAwDsC,KAAK,YAAlG;IAAA,MAAuC/B,YAAY,GAA0C+B,KAAK,aAAlG;IAAA,MAAqD0vB,YAAY,GAA4B1vB,KAAK,aAAlG;IAAA,MAAyE2vB,QAAQ,GAAY3vB,KAAK,KAAlG;IAAA,MAAmF6C,KAAK,GAAK7C,KAAK,MAAlG;;IAEF,MAAAxE,KAAkBsF,gBAAK,CAAC8B,QAAN,CAAe+sB,QAAf,CAAlB;IAAA,MAACh0B,MAAI,QAAL;IAAA,MAAOi0B,OAAO,QAAd;;IACA,MAAAvsB,KAAkBvC,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAlB;IAAA,MAACse,IAAI,QAAL;IAAA,MAAO2O,OAAO,QAAd;;IACE,MAAAltB,KAA0Bse,YAAY,gBAAtC;IAAA,MAAAvlB,eAAe,mBAAG,QAAlB;IAERoF,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAMjK,OAAO,GAAG5B,eAAe,CAACoB,WAAD,EAAc/B,MAAd,CAA/B;IACA,QAAMm0B,WAAW,GAAGH,QAAQ,KAAKliB,SAAb,IAA0BvP,OAAO,CAACtC,QAAR,CAAiBF,eAAjB,CAA1B,GAA8DC,MAA9D,GAAqEg0B,QAAzF;IAEAC,IAAAA,OAAO,CAACE,WAAD,CAAP;IACD,GALD,EAKG,CAACH,QAAD,CALH;;IAOA,MAAMrP,eAAe,GAAG,SAAlBA,eAAkB,CAAC5G,CAAD,EAAyCvb,GAAzC;IAAyC,sBAAA,EAAA;IAAAA,MAAAA,QAAA;;;IAC/D,QAAM2xB,WAAW,GAAG3xB,GAAG,SAAH,IAAAA,GAAG,WAAH,SAAA,GAAAA,GAAG,CAAEwe,WAAL,EAApB;IACAiT,IAAAA,OAAO,CAACE,WAAD,CAAP;;IAEA,QAAI7O,YAAY,CAACnW,QAAjB,EAA2B;IACzBmW,MAAAA,YAAY,CAACnW,QAAb,CAAsB4O,CAAtB,EAAyBvb,GAAzB;IACD;IACF,GAPD;;IASA,MAAMkjB,aAAa,GAAG,SAAhBA,aAAgB,CAAC3H,CAAD,EAAyCvb,GAAzC;IAAyC,sBAAA,EAAA;IAAAA,MAAAA,QAAA;;;IAC7D,QAAM2xB,WAAW,GAAGxzB,eAAe,CAACoB,WAAD,EAAc/B,MAAd,CAAnC;IACAk0B,IAAAA,OAAO,CAAC,IAAD,CAAP;;IAEA,QAAIH,YAAJ,EAAkB;IAChB,UAAMK,aAAa,GACjBD,WAAW,IAAI,CAACr0B,oBAAoB,CAACC,eAAD,EAAkBo0B,WAAlB,CAApC,GACI9xB,mBAAmB,CAACN,WAAD,EAAcO,YAAd,EAA4B6xB,WAA5B,CADvB,GAEIriB,SAHN;IAKAiiB,MAAAA,YAAY,CAACK,aAAD,CAAZ;IACD;;IAED,QAAI9O,YAAY,CAACK,MAAjB,EAAyBL,YAAY,CAACK,MAAb,CAAoB5H,CAApB,EAAuBvb,GAAvB;IAC1B,GAdD;;IAgBA,MAAMqjB,cAAc,GAAG,SAAjBA,cAAiB,CAAC9H,CAAD;IACrB,QAAMoW,WAAW,GAAG,EAApB;IACAD,IAAAA,OAAO,CAAC,IAAD,CAAP;IAEA,QAAIH,YAAJ,EAAkBA,YAAY,CAACI,WAAD,CAAZ;IAClB,QAAI7O,YAAY,CAACQ,OAAjB,EAA0BR,YAAY,CAACQ,OAAb,CAAqB/H,CAArB;IAC3B,GAND;;IAQA,MAAMoI,cAAc,GAAG,SAAjBA,cAAiB,CAAC3jB,GAAD;IACrB,WAAO4jB,OAAA,CAAyB1jB,UAAzB,EAAqCF,GAArC,EAA0CT,WAA1C,CAAP;IACD,GAFD;;IAIA,MAAMskB,IAAI,GAAGD,IAAA,CAAiBrkB,WAAjB,CAAb;IACA,sBACEoD,8BAAA,CAACmhB,CAAD;IACEC,IAAAA,WAAW,EAAE3mB,YAAY,CAACmC,WAAD;IACzBhC,IAAAA,eAAe,EAAEA;SACbulB;IACJe,IAAAA,IAAI,EAAEA;IACNzjB,IAAAA,KAAK,EACH5C,MAAI,GAAGW,eAAe,CAACoB,WAAD,EAAc/B,MAAd,CAAlB,GAAwCulB,IAAI,GAAGe,CAAS,CAACE,KAAV,CAAgBC,eAAhB,CAAgCJ,IAAhC,EAAsCtmB,eAAtC,CAAH,GAA4D;IAE9G2C,IAAAA,UAAU,EAAEyjB;IACZhX,IAAAA,QAAQ,EAAEwV;IACVmB,IAAAA,OAAO,EAAED;IACTF,IAAAA,MAAM,EAAED;IACRxe,IAAAA,KAAK,EAAEA;IACP2c,IAAAA,EAAE,EAAC;QAbL,CADF;IAiBD,CArEM;IAuEPiQ,mBAAmB,CAAClqB,YAApB,GAAmC;IACjC7H,EAAAA,WAAW,EAAE,UADoB;IAEjCO,EAAAA,YAAY,EAAE,UAFmB;IAGjCgjB,EAAAA,YAAY,EAAE,EAHmB;IAIjC5iB,EAAAA,UAAU,EAAE,CAAC0jB,MAAD;IAJqB,CAAnC;IAOA0N,mBAAmB,CAACpqB,WAApB,GAAkC,qBAAlC;;QCzHa2qB,UAAU,GAAG,SAAbA,UAAa,CAAChwB,KAAD;IACxB,SAAOA,KAAK,CAACovB,UAAN,gBAAmBtuB,8BAAA,CAACgtB,oBAAD,eAA0B9tB,MAA1B,CAAnB,gBAAyDc,8BAAA,CAAC2uB,mBAAD,eAAyBzvB,MAAzB,CAAhE;IACD;IAEDgwB,UAAU,CAACzqB,YAAX,yBACKkqB,mBAAmB,CAAClqB,eACpBuoB,oBAAoB,CAACvoB,aAF1B;IAKAyqB,UAAU,CAAC3qB,WAAX,GAAyB,YAAzB;;ICfA;AACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,SAAS,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE;IAC9D;IACA;IACA;IACA;IACA;IACA,EAAE,IAAI,SAAS,CAAC;IAChB,EAAE,IAAI,SAAS,GAAG,KAAK,CAAC;AACxB;IACA,EAAE,IAAI,QAAQ,GAAG,CAAC,CAAC;AACnB;IACA,EAAE,SAAS,oBAAoB,GAAG;IAClC,IAAI,IAAI,SAAS,EAAE;IACnB,MAAM,YAAY,CAAC,SAAS,CAAC,CAAC;IAC9B,KAAK;IACL,GAAG;AACH;AACA;IACA,EAAE,SAAS,MAAM,GAAG;IACpB,IAAI,oBAAoB,EAAE,CAAC;IAC3B,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,GAAG;AACH;AACA;IACA,EAAE,IAAI,OAAO,UAAU,KAAK,SAAS,EAAE;IACvC,IAAI,YAAY,GAAG,QAAQ,CAAC;IAC5B,IAAI,QAAQ,GAAG,UAAU,CAAC;IAC1B,IAAI,UAAU,GAAG,SAAS,CAAC;IAC3B,GAAG;IACH;IACA;IACA;IACA;IACA;AACA;AACA;IACA,EAAE,SAAS,OAAO,GAAG;IACrB,IAAI,KAAK,IAAI,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE;IACnG,MAAM,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IACzC,KAAK;AACL;IACA,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC;IACpB,IAAI,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC;AACxC;IACA,IAAI,IAAI,SAAS,EAAE;IACnB,MAAM,OAAO;IACb,KAAK;AACL;AACA;IACA,IAAI,SAAS,IAAI,GAAG;IACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5B,MAAM,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACvC,KAAK;IACL;IACA;IACA;IACA;AACA;AACA;IACA,IAAI,SAAS,KAAK,GAAG;IACrB,MAAM,SAAS,GAAG,SAAS,CAAC;IAC5B,KAAK;AACL;IACA,IAAI,IAAI,YAAY,IAAI,CAAC,SAAS,EAAE;IACpC;IACA;IACA;IACA;IACA,MAAM,IAAI,EAAE,CAAC;IACb,KAAK;AACL;IACA,IAAI,oBAAoB,EAAE,CAAC;AAC3B;IACA,IAAI,IAAI,YAAY,KAAK,SAAS,IAAI,OAAO,GAAG,KAAK,EAAE;IACvD;IACA;IACA;IACA;IACA,MAAM,IAAI,EAAE,CAAC;IACb,KAAK,MAAM,IAAI,UAAU,KAAK,IAAI,EAAE;IACpC;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,GAAG,KAAK,GAAG,IAAI,EAAE,YAAY,KAAK,SAAS,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,CAAC,CAAC;IAChH,KAAK;IACL,GAAG;AACH;IACA,EAAE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;AAC1B;IACA,EAAE,OAAO,OAAO,CAAC;IACjB,CAAC;AACD;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;AACA;IACA,SAAS,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE;IAC7C,EAAE,OAAO,QAAQ,KAAK,SAAS,GAAG,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,KAAK,KAAK,CAAC,CAAC;IACjH;;ICtFA,IAAM4qB,cAAc,gBAAGnvB,gBAAK,CAACuK,UAAN,CAAyD,UAACrL,KAAD,EAAQsL,GAAR;;;IAE5E,MAAA3I,KAWE3C,KAAK,YAXP;IAAA,MAAA2K,WAAW,mBAAG,cAAd;IAAA,MACA9F,KAUE7E,KAAK,YAXP;IAAA,MACAkiB,WAAW,mBAAG,aADd;IAAA,MAEA7d,KASErE,KAAK,KAXP;IAAA,MAEA6K,IAAI,mBAAG,UAFP;IAAA,MAGApI,QAAQ,GAQNzC,KAAK,SAXP;IAAA,MAIAsG,IAAI,GAOFtG,KAAK,KAXP;IAAA,MAKA2L,QAAQ,GAMN3L,KAAK,SAXP;IAAA,MAMAuI,IAAI,GAKFvI,KAAK,KAXP;IAAA,MAOAkwB,WAAW,GAITlwB,KAAK,YAXP;IAAA,MAQA6C,KAAK,GAGH7C,KAAK,MAXP;IAAA,MASA4L,QAAQ,GAEN5L,KAAK,SAXP;IAAA,MAUG6L,IAAI,UACL7L,OAZE,cAAA,eAAA,QAAA,YAAA,QAAA,YAAA,QAAA,eAAA,SAAA,YAAA,EACJ;;IAaF,MAAMmwB,cAAc,GAAGxkB,QAAQ,GAAG,UAAH,GAAgB,SAA/C;IACA,MAAMykB,kBAAkB,GAAGlO,WAAW,CAAClf,IAAZ,EAA3B;IACA,MAAMzE,KAAK,GAAGkE,QAAQ,GAAGA,QAAH,GAAc2tB,kBAApC;IACA,MAAMC,QAAQ,GAAG,CAACxlB,IAAD,GAAQ,qBAAR,GAAgCvE,IAAI,GAAGA,IAAH,GAAU,YAA/D;IAEA,MAAMwF,WAAW,GAAG3I,8BAAU,WAC5B3H,GAAC,SAAD,GAAY,MACZA,GAAC,iBAAD,GAAoB,MACpBA,GAAC,qBAAmBmP,YAApB,GAAoCA,aACpCnP,GAAC,qBAAmBmP,WAAnB,YAAD,GAA0CE,MAC1CrP,GAAC,8BAAD,GAAiC,CAACiH,QAAD,IAAa,CAACoI,MAC/CrP,GAAC,uBAAD,GAA0B8K,MAC1B9K,GAAC,uBAAD,GAA0B+M,MAC1B/M,GAAC,wBAAD,GAA2BqH,SARC,EAA9B;IAWA,MAAMoQ,SAAS,GAAG9P,8BAAU,WAC1BE,GAAC,OAAD,GAAU,MACVA,GAAC,gBAAD,GAAmB,MACnBA,GAAC,sBAAD,GAAyB,QAHC,EAA5B;IAMA,sBACEvC,8BAAA,SAAA;IACEwK,IAAAA,GAAG,EAAEA;IACLd,IAAAA,IAAI,EAAC;IACLjM,IAAAA,KAAK,EAAEkE;IACPgB,IAAAA,SAAS,EAAEqI;IACXH,IAAAA,QAAQ,EAAEA;IACVH,IAAAA,QAAQ,EAAE;qBACA;SACNK,KARN,EAUG,CAAChB,IAAD,iBACC/J,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGysB,WAAW,iBACVpvB,8BAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAC;IAASwC,IAAAA,SAAS,EAAC;OAApC,EACG,KAAGysB,WAAW,CAACltB,IAAZ,GAAmB0Z,MAAnB,CAA0B,CAA1B,EAA6BC,WAA7B,EAAH,GAAgDuT,WAAW,CAACltB,IAAZ,GAAmBuB,KAAnB,CAAyB,CAAzB,CADnD,CAFJ,EAMG+B,IAAI,IAAI,CAAC4pB,WAAT,iBACCpvB,8BAAA,CAACsB,IAAD;IAAMnB,IAAAA,UAAU,EAAEkvB;IAAgB1sB,IAAAA,SAAS,EAAC;IAAiCC,IAAAA,IAAI,EAAE4C;IAAMkE,IAAAA,IAAI,EAAEoB;OAA/F,CAPJ,EASGrN,KAAK,iBAAIuC,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAEwP;OAAjB,EAA6B1U,KAA7B,CATZ,CAXJ,eAuBEuC,8BAAA,CAACsB,IAAD;IAAMnB,IAAAA,UAAU,EAAEkvB;IAAgBzsB,IAAAA,IAAI,EAAE2sB;IAAU7lB,IAAAA,IAAI,EAAEoB;OAAxD,CAvBF,CADF;IA2BD,CAhEsB,CAAvB;IAkEAqkB,cAAc,CAAC5qB,WAAf,GAA6B,gBAA7B;;IC9GA,IAAMirB,cAAc,GAAG,SAAjBA,cAAiB,CAACtwB,KAAD;IACb,MAAAyD,SAAS,GAAqFzD,KAAK,UAAnG;IAAA,MAAW+K,QAAQ,GAA2E/K,KAAK,SAAnG;IAAA,MAAqBuwB,UAAU,GAA+DvwB,KAAK,WAAnG;IAAA,MAAiCsgB,eAAe,GAA8CtgB,KAAK,gBAAnG;IAAA,MAAkDwwB,oBAAoB,GAAwBxwB,KAAK,qBAAnG;IAAA,MAAwEywB,QAAQ,GAAczwB,KAAK,SAAnG;IAAA,MAAkFxE,KAAYwE,KAAK,GAAnG;IAAA,MAAkFwf,EAAE,mBAAG,OAAvF;IACA,MAAAkR,OAAO,GAAsBH,UAAU,QAAvC;IAAA,MAAStmB,KAAK,GAAesmB,UAAU,MAAvC;IAAA,MAAgB5kB,QAAQ,GAAK4kB,UAAU,SAAvC;;IAER,MAAMI,aAAa,GAAG,SAAhBA,aAAgB,CAACD,OAAD;IACpB,QAAME,eAAe,GAAGjlB,QAAQ,GAAG,UAAH,GAAgB,QAAhD;IACA,QAAMxJ,cAAc,GAAG4I,QAAQ,GAAG,OAAH,GAAa,UAA5C;;IAEA,QAAI,OAAO2lB,OAAP,KAAmB,QAAvB,EAAiC;IAC/B,0BACE5vB,8BAAA,CAACyC,IAAD;yBACY;IACVtC,QAAAA,UAAU,EAAE2vB;IACZ5vB,QAAAA,IAAI,EAAC;IACLwC,QAAAA,MAAM,EAAC;WAJT,EAMGktB,OANH,CADF;IAUD;;IAEO,QAAAl1B,KAAyBk1B,OAAO,KAAhC;IAAA,QAAAtpB,IAAI,mBAAG,OAAP;IAAA,QAAWypB,SAAS,GAAKH,OAAO,UAAhC;IACR,wBACE5vB,8BAAA,CAACgwB,QAAD;IACE1pB,MAAAA,IAAI,EAAEA;IACNypB,MAAAA,SAAS,EAAEA;IACX1uB,MAAAA,cAAc,EAAEA;IAChByuB,MAAAA,eAAe,EAAEA;IACjBG,MAAAA,mBAAmB,EAAE5uB;uBACX;SANZ,CADF;IAUD,GA5BD;;IA8BA,sBACErB,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEA;IAAW6T,IAAAA,YAAY,EAAEkZ;qBAAiCC;yBAAyB9kB;OAAnG,eACE7K,8BAAA,CAACoe,QAAD;IACEjV,IAAAA,KAAK,EAAEA;IACP0B,IAAAA,QAAQ,EAAEA;IACVkU,IAAAA,OAAO,EAAE9U;IACTD,IAAAA,QAAQ,EAAEwV;IACV9U,IAAAA,QAAQ,EAAE,CAAC;IACX/H,IAAAA,SAAS,EAAE,qBAAkBitB,OAAO,GAAG,MAAH,GAAY,EAArC;qBACGD,QAAQ;IACtBjR,IAAAA,EAAE,EAAEA;OARN,CADF,EAWGkR,OAAO,iBAAI5vB,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EAA4BktB,aAAa,CAACD,OAAD,CAAzC,CAXd,CADF;IAeD,CAjDD;;ICFA,IAAMM,aAAa,GAAG,SAAhBA,aAAgB,CAAChxB,KAAD;IACZ,MAAAyD,SAAS,GAAuFzD,KAAK,UAArG;IAAA,MAAWixB,aAAa,GAAwEjxB,KAAK,cAArG;IAAA,MAA0B2J,cAAc,GAAwD3J,KAAK,eAArG;IAAA,MAA0CuwB,UAAU,GAA4CvwB,KAAK,WAArG;IAAA,MAAsD9E,KAAK,GAAqC8E,KAAK,MAArG;IAAA,MAA6DwwB,oBAAoB,GAAexwB,KAAK,qBAArG;IAAA,MAAmFywB,QAAQ,GAAKzwB,KAAK,SAArG;IAEA,MAAAiK,KAAK,GAAesmB,UAAU,MAA9B;IAAA,MAAO5kB,QAAQ,GAAK4kB,UAAU,SAA9B;IAER,sBAGEzvB,8BAAA,MAAA;IACE2C,IAAAA,SAAS,EAAEA;IACXiG,IAAAA,OAAO,EAAEC;IACT2N,IAAAA,YAAY,EAAEkZ;qBACHC;yBACI9kB;OALjB,eAQE7K,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE;OAAhB,eACE3C,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAEwtB;IAAe/1B,IAAAA,KAAK,EAAEA;IAAOskB,IAAAA,EAAE,EAAE+Q,UAAU,CAACrJ;OAA7D,EACGjd,KADH,CADF,CARF,CAHF;IAkBD,CAvBD;;ICAA,IAAMinB,UAAU,GAAG,SAAbA,UAAa,CAAClxB,KAAD;IACT,MAAAyD,SAAS,GACfzD,KAAK,UADC;IAAA,MAAWixB,aAAa,GAC9BjxB,KAAK,cADC;IAAA,MAA0B2J,cAAc,GAC9C3J,KAAK,eADC;IAAA,MAA0CuwB,UAAU,GAC1DvwB,KAAK,WADC;IAAA,MAAsDwwB,oBAAoB,GAChFxwB,KAAK,qBADC;IAAA,MAA4E2wB,aAAa,GAC/F3wB,KAAK,cADC;IAAA,MAA2F9E,KAAK,GACtG8E,KAAK,MADC;IAAA,MAAkGywB,QAAQ,GAChHzwB,KAAK,SADC;IAGA,MAAA0wB,OAAO,GAAsBH,UAAU,QAAvC;IAAA,MAAStmB,KAAK,GAAesmB,UAAU,MAAvC;IAAA,MAAgB5kB,QAAQ,GAAK4kB,UAAU,SAAvC;IAER,sBAGEzvB,8BAAA,MAAA;IACE2C,IAAAA,SAAS,EAAEA;IACXiG,IAAAA,OAAO,EAAEC;IACT2N,IAAAA,YAAY,EAAEkZ;qBACHC;yBACI9kB;OALjB,eAQE7K,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE;OAAhB,eACE3C,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAEwtB;IAAe/1B,IAAAA,KAAK,EAAEA;OAAvC,EACG+O,KADH,CADF,EAIGymB,OAAO,IAAIC,aAAa,CAACD,OAAD,CAJ3B,CARF,CAHF;IAmBD,CAzBD;;ICCA,IAAMS,UAAU,GAAG,SAAbA,UAAa,CAACnxB,KAAD;;;IACT,MAAAyD,SAAS,GAAuFzD,KAAK,UAArG;IAAA,MAAWixB,aAAa,GAAwEjxB,KAAK,cAArG;IAAA,MAA0B2J,cAAc,GAAwD3J,KAAK,eAArG;IAAA,MAA0CuwB,UAAU,GAA4CvwB,KAAK,WAArG;IAAA,MAAsDwwB,oBAAoB,GAAsBxwB,KAAK,qBAArG;IAAA,MAA4E9E,KAAK,GAAe8E,KAAK,MAArG;IAAA,MAAmFywB,QAAQ,GAAKzwB,KAAK,SAArG;IAEA,MAAAiK,KAAK,GAA+BsmB,UAAU,MAA9C;IAAA,MAAOjqB,IAAI,GAAyBiqB,UAAU,KAA9C;IAAA,MAAa5kB,QAAQ,GAAe4kB,UAAU,SAA9C;IAAA,MAAuB3kB,QAAQ,GAAK2kB,UAAU,SAA9C;IAER,MAAMa,WAAW,GAAGjuB,8BAAU,WAC5B3H,GAAC,KAAGiI,UAAJ,GAAkB,MAClBjI,GAAC,eAAD,GAAkB8K,QAFU,EAA9B;IAKA,sBAGExF,8BAAA,MAAA;IACE2C,IAAAA,SAAS,EAAE2tB;IACX1nB,IAAAA,OAAO,EAAEC;IACT2N,IAAAA,YAAY,EAAEkZ;qBACHC;yBACI9kB;OALjB,EAQGrF,IAAI,iBAAIxF,8BAAA,CAACsB,IAAD;IAAMqB,IAAAA,SAAS,EAAC;qBAAiCgtB,QAAQ;IAAU/sB,IAAAA,IAAI,EAAE4C;IAAMkE,IAAAA,IAAI,EAAEoB;OAArF,CARX,eASE9K,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE;OAAhB,eACE3C,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAEwtB;IAAe/1B,IAAAA,KAAK,EAAEA;OAAvC,EACG+O,KADH,CADF,CATF,CAHF;IAmBD,CA7BD;;ICAA,IAAMonB,kBAAkB,GAAG,SAArBA,kBAAqB,CAACrxB,KAAD;;;IAEvB,MAAAyD,SAAS,GASPzD,KAAK,UATP;IAAA,MACAixB,aAAa,GAQXjxB,KAAK,cATP;IAAA,MAEA2wB,aAAa,GAOX3wB,KAAK,cATP;IAAA,MAGA2J,cAAc,GAMZ3J,KAAK,eATP;IAAA,MAIAuwB,UAAU,GAKRvwB,KAAK,WATP;IAAA,MAKAwwB,oBAAoB,GAIlBxwB,KAAK,qBATP;IAAA,MAMAiB,UAAU,GAGRjB,KAAK,WATP;IAAA,MAOA9E,KAAK,GAEH8E,KAAK,MATP;IAAA,MAQAywB,QAAQ,GACNzwB,KAAK,SATP;IAWM,MAAA0wB,OAAO,GAA4BH,UAAU,QAA7C;IAAA,MAAStmB,KAAK,GAAqBsmB,UAAU,MAA7C;IAAA,MAAgBjqB,IAAI,GAAeiqB,UAAU,KAA7C;IAAA,MAAsB5kB,QAAQ,GAAK4kB,UAAU,SAA7C;IAER,MAAMa,WAAW,GAAGjuB,8BAAU,WAC5B3H,GAAC,KAAGiI,UAAJ,GAAkB,MAClBjI,GAAC,eAAD,GAAkB8K,QAFU,EAA9B;IAKA,sBAGExF,8BAAA,MAAA;IACE2C,IAAAA,SAAS,EAAE2tB;IACX1nB,IAAAA,OAAO,EAAEC;IACT2N,IAAAA,YAAY,EAAEkZ;qBACHC;yBACI9kB;OALjB,EAQGrF,IAAI,iBACHxF,8BAAA,CAACsB,IAAD;qBAAoBquB,QAAQ;IAAUhtB,IAAAA,SAAS,EAAC;IAAmBC,IAAAA,IAAI,EAAE4C;IAAMrF,IAAAA,UAAU,EAAEA;OAA3F,CATJ,eAWEH,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE;OAAhB,eACE3C,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAEwtB;IAAe/1B,IAAAA,KAAK,EAAEA;OAAvC,EACG+O,KADH,CADF,EAIGymB,OAAO,IAAIC,aAAa,CAACD,OAAD,CAJ3B,CAXF,CAHF;IAsBD,CA1CD;;;ICwEA,IAAMY,iBAAiB,aACrB91B,GAAC,UAAD,GAAaw1B,eACbx1B,GAAC,YAAD,GAAe21B,YACf31B,GAAC,YAAD,GAAe01B,YACf11B,GAAC,gBAAD,GAAmB80B,gBACnB90B,GAAC,iBAAD,GAAoB61B,sBALC,CAAvB;;IAQA,IAAME,MAAM,GAAG,SAATA,MAAS,CAACvxB,KAAD;;;IAEX,MAAAuwB,UAAU,GAURvwB,KAAK,WAVP;IAAA,MACA+K,QAAQ,GASN/K,KAAK,SAVP;IAAA,MAEA0J,OAAO,GAQL1J,KAAK,QAVP;IAAA,MAGAwxB,kBAAkB,GAOhBxxB,KAAK,mBAVP;IAAA,MAIA8K,QAAQ,GAMN9K,KAAK,SAVP;IAAA,MAKA+S,MAAM,GAKJ/S,KAAK,OAVP;IAAA,MAMAqG,KAAK,GAIHrG,KAAK,MAVP;IAAA,MAOAyxB,UAAU,GAGRzxB,KAAK,WAVP;IAAA,MAQA6K,IAAI,GAEF7K,KAAK,KAVP;IAAA,MASAqE,KACErE,KAAK,GAVP;IAAA,MASAwf,EAAE,mBAAG,OATL;IAYM,MAAAnY,KAA2B,CAAAkpB,UAAU,CAACmB,UAAX,GAAwBnB,UAAxB,GAAqCvwB,KAArC,YAA3B;IAAA,MAAA0xB,UAAU,mBAAG,cAAb;IACA,MAAA/lB,QAAQ,GAAK4kB,UAAU,SAAvB;IACR,MAAMr1B,KAAK,GAAGyQ,QAAQ,GAAG,kBAAH,GAAwBZ,QAAQ,IAAI,CAACF,IAAb,GAAoB,cAApB,GAAqC,SAAnF;IACA,MAAM5J,UAAU,GAAG0K,QAAQ,GAAG,UAAH,GAAgBZ,QAAQ,IAAI,CAACF,IAAb,GAAoB,cAApB,GAAqC,SAAhF;IACA,MAAML,IAAI,GAAGinB,UAAU,GAAG,eAAH,GAAqBC,UAA5C;IACA,MAAMC,SAAS,GAAGL,iBAAiB,CAAC9mB,IAAD,CAAnC;IAEA,MAAMonB,eAAe,GAAGzuB,8BAAU,WAChC3H,GAAC,SAAD,GAAY,MACZA,GAAC,iBAAD,GAAoBuX,QACpBvX,GAAC,mBAAD,GAAsBuP,QAAQ,IAAI,CAACF,MACnCrP,GAAC,mBAAD,GAAsBmQ,UACtBnQ,GAAC,gBAAD,GAAmB,MACnBA,GAAC,WAASN,MAAV,GAAoB,QANY,EAAlC;IASA,MAAM22B,iBAAiB,GAAG1uB,8BAAU,WAClCE,GAAC,kBAAD,GAAqB,MACrBA,GAAC,0BAAD,GAA6B0P,QAC7B1P,GAAC,gBAAD,GAAmB,QAHe,EAApC;IAMA,MAAM4tB,aAAa,GAAG9tB,8BAAU,WAC9BR,GAAC,cAAD,GAAiB,MACjBA,GAAC,oBAAD,GAAuB,CAAC3C,KAAK,CAAC8xB,kBAFA,EAAhC;IAKA,MAAMC,iBAAiB,GAAG5uB,8BAAU,WAClC0B,GAAC,gBAAD,GAAmB,MACnBA,GAAC,0BAAD,GAA6B8G,YAFK,EAApC;;IAKA,MAAM6kB,oBAAoB,GAAG,SAAvBA,oBAAuB;IAC3B,QAAI7kB,QAAJ,EAAc;IAEd,QAAI6lB,kBAAJ,EAAwBA,kBAAkB,CAACnrB,KAAD,CAAlB;IACzB,GAJD;;IAMA,MAAMsD,cAAc,GAAG,SAAjBA,cAAiB,CAAC+P,CAAD;IACrBA,IAAAA,CAAC,CAAC8D,eAAF;IACA,QAAI7R,QAAJ,EAAc;IAEd,QAAIjC,OAAJ,EAAaA,OAAO;IACrB,GALD;;IAOA,MAAM4W,eAAe,GAAG,SAAlBA,eAAkB,CAAC5G,CAAD;IACtBA,IAAAA,CAAC,CAAC8D,eAAF;IACA,QAAI7R,QAAJ,EAAc;IAEd,QAAIb,QAAJ,EAAcA,QAAQ,CAAC4O,CAAD,CAAR;IACf,GALD;;IAOA,MAAI1Z,KAAK,CAACgyB,cAAV,EAA0B;IACxB,wBACElxB,8BAAA,MAAA;uBACY;IACV2C,MAAAA,SAAS,EAAEsuB;2BACIpmB;IACf2L,MAAAA,YAAY,EAAEkZ;WACT,CAACiB,UAAD,IAAe;IAAE/nB,MAAAA,OAAO;IAAT,MALtB,EAOG1J,KAAK,CAACgyB,cAAN,CAAqB;IACpBzB,MAAAA,UAAU,YADU;IAEpBxlB,MAAAA,QAAQ,UAFY;IAGpBD,MAAAA,QAAQ,UAHY;IAIpBiI,MAAAA,MAAM,QAJc;IAKpB1M,MAAAA,KAAK;IALe,KAArB,CAPH,CADF;IAiBD;;IAED,MAAMsqB,aAAa,GAAG,SAAhBA,aAAgB,CAACD,OAAD;IACpB,QAAME,eAAe,GAAGjlB,QAAQ,GAAG,UAAH,GAAgBZ,QAAQ,IAAI,CAACF,IAAb,GAAoB,OAApB,GAA8B,QAA9E;IACA,QAAMonB,YAAY,GAAGtmB,QAAQ,GAAG,kBAAH,GAAwBZ,QAAQ,IAAI,CAACF,IAAb,GAAoB,cAApB,GAAqC,iBAA1F;IACA,QAAM1I,cAAc,GAAG4I,QAAQ,GAAG,OAAH,GAAa,UAA5C;;IAEA,QAAI,OAAO2lB,OAAP,KAAmB,QAAvB,EAAiC;IAC/B,0BACE5vB,8BAAA,CAACyC,IAAD;yBACY;IACVrI,QAAAA,KAAK,EAAE+2B;IACPjxB,QAAAA,IAAI,EAAC;IACLwC,QAAAA,MAAM,EAAC;IACPC,QAAAA,SAAS,EAAC;WALZ,EAOGitB,OAPH,CADF;IAWD;;IAEO,QAAAl1B,KAAyBk1B,OAAO,KAAhC;IAAA,QAAAtpB,IAAI,mBAAG,OAAP;IAAA,QAAWypB,SAAS,GAAKH,OAAO,UAAhC;IACR,wBACE5vB,8BAAA,CAACgwB,QAAD;IACE1pB,MAAAA,IAAI,EAAEA;IACNypB,MAAAA,SAAS,EAAEA;IACX1uB,MAAAA,cAAc,EAAEA;IAChByuB,MAAAA,eAAe,EAAEA;IACjBG,MAAAA,mBAAmB,EAAE5uB;uBACX;SANZ,CADF;IAUD,GA9BD;;IAgCA,SAAOwvB,SAAS,CAAC;IACf5mB,IAAAA,QAAQ,UADO;IAEf1E,IAAAA,KAAK,OAFU;IAGfsqB,IAAAA,aAAa,eAHE;IAIfJ,IAAAA,UAAU,YAJK;IAKfU,IAAAA,aAAa,eALE;IAMfhwB,IAAAA,UAAU,YANK;IAOf/F,IAAAA,KAAK,OAPU;IAQfyO,IAAAA,cAAc,gBARC;IASf2W,IAAAA,eAAe,iBATA;IAUfkQ,IAAAA,oBAAoB,sBAVL;IAWfC,IAAAA,QAAQ,EAAE,kCAAgCjmB,IAX3B;IAYf/G,IAAAA,SAAS,EAAEguB,UAAU,GAAGI,iBAAH,GAAuBD,eAZ7B;IAafpS,IAAAA,EAAE;IAba,GAAD,CAAhB;IAeD,CArID;;QCjDa0S,oBAAoB,GAAG,SAAvBA,oBAAuB,CAAClyB,KAAD;;;IAC1B,MAAA5C,MAAM,GAAsB4C,KAAK,OAAjC;IAAA,MAAQgB,IAAI,GAAgBhB,KAAK,KAAjC;IAAA,MAAcyD,SAAS,GAAKzD,KAAK,UAAjC;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU;IACxB,8BAA0B;IAC1B+uB,IAAAA,oBAAoB,EAAE;SACtB12B,GAAC,2BAAyBwF,KAA1B,GAAmCA,QAHX,EAA1B;IAMA,MAAMqW,YAAY,GAAGlU,8BAAU;IAE3B,oCAAgC;SAChCE,GAAC,0CAAwCjG,OAAzC,GAAoDA,QACpDiG,GAAC,wCAAsCrC,KAAvC,GAAgDA,QAJrB,GAM7ByC,SAN6B,CAA/B;IASA,sBACE3C,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAE4T;QAA/B,eACEvW,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAEkF;OAAjB,CADF,CADF;IAKD;IAEDupB,oBAAoB,CAAC7sB,WAArB,GAAmC,sBAAnC;IACA6sB,oBAAoB,CAAC3sB,YAArB,GAAoC;IAClCnI,EAAAA,MAAM,EAAE;IAD0B,CAApC;;QC/Ca+0B,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACnyB,KAAD;;;IACtB,MAAAqD,KAAqCrD,KAAK,KAA1C;IAAA,MAAAgB,IAAI,mBAAG,YAAP;IAAA,MAAgBqb,KAAK,GAAgBrc,KAAK,MAA1C;IAAA,MAAuByD,SAAS,GAAKzD,KAAK,UAA1C;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtBgvB,IAAAA,gBAAgB,EAAE;IAClB,8BAA0B;SAC1B32B,GAAC,0BAAD,GAA6B6gB,OAC7B7gB,GAAC,uBAAqBwF,KAAtB,GAA+BA,QALT,GAOxByC,SAPwB,CAA1B;IAUA,sBAAO3C,8BAAA,OAAA,eAAUb;IAAWwD,IAAAA,SAAS,EAAEkF;QAAhC,CAAP;IACD;IAEDwpB,gBAAgB,CAAC9sB,WAAjB,GAA+B,kBAA/B;IACA8sB,gBAAgB,CAAC5sB,YAAjB,GAAgC;IAC9BvE,EAAAA,IAAI,EAAE;IADwB,CAAhC;;QCXaoxB,WAAW,GAAG,SAAdA,WAAc,CAACpyB,KAAD;;;IACjB,MAAAqyB,SAAS,GAA4CryB,KAAK,UAA1D;IAAA,MAAWsyB,SAAS,GAAiCtyB,KAAK,UAA1D;IAAA,MAAsBqc,KAAK,GAA0Brc,KAAK,MAA1D;IAAA,MAA6ByC,QAAQ,GAAgBzC,KAAK,SAA1D;IAAA,MAAuCyD,SAAS,GAAKzD,KAAK,UAA1D;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMuyB,gBAAgB,GAAGpvB,8BAAU;IACjC,6BAAyB;SACzB3H,GAAC,mCAAD,GAAsC82B,aAFL,EAAnC;IAKA,MAAM3pB,OAAO,GAAGxF,8BAAU,WAEtBE,GAAC,cAAD,GAAiB,QAFK,GAIxBI,SAJwB,CAA1B;IAOA,sBACE3C,8BAAA,MAAA;qBAAe;SAA+Bb;IAAWwD,IAAAA,SAAS,EAAEkF;QAApE,EACG2pB,SAAS,iBAAIxxB,8BAAA,CAACqxB,gBAAD;IAAkB9V,IAAAA,KAAK,EAAEA;IAAOrb,IAAAA,IAAI,EAAEqxB;qBAAqB;OAA3D,CADhB,EAEG5vB,QAAQ,iBACP3B,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE8uB;qBAA4B;OAA5C,EACG9vB,QADH,CAHJ,CADF;IAUD;IAED2vB,WAAW,CAAC/sB,WAAZ,GAA0B,aAA1B;IACA+sB,WAAW,CAAC7sB,YAAZ,GAA2B;IACzB+sB,EAAAA,SAAS,EAAE,IADc;IAEzBD,EAAAA,SAAS,EAAE;IAFc,CAA3B;;IClDA,IAAMG,OAAO,GAAG,SAAVA,OAAU,CAACxyB,KAAD;IACN,MAAAyyB,WAAW,GAAkBzyB,KAAK,YAAlC;IAAA,MAAa0yB,WAAW,GAAK1yB,KAAK,YAAlC;IACR,MAAM2yB,gBAAgB,GAA0C,CAAC,QAAD,EAAW,OAAX,CAAhE;IACA,MAAM3xB,IAAI,GAAG2xB,gBAAgB,CAAC,CAACD,WAAW,GAAG,CAAf,IAAoB,CAArB,CAA7B;;IAEA,UAAQD,WAAR;IACE,SAAK,SAAL;IACE,0BAAO3xB,8BAAA,CAACoxB,oBAAD;IAAsB90B,QAAAA,MAAM,EAAE4D;yBAAgB;WAA9C,CAAP;;IACF,SAAK,WAAL;IACE,0BACEF,8BAAA,CAACsxB,WAAD;IAAaE,QAAAA,SAAS,EAAE;IAAMjW,QAAAA,KAAK,EAAE;yBAAgB;WAArD,eACEvb,8BAAA,CAACoxB,oBAAD;IAAsB90B,QAAAA,MAAM,EAAC;WAA7B,CADF,CADF;;IAKF,SAAK,WAAL;IACE,0BACE0D,8BAAA,CAACsxB,WAAD;IAAaE,QAAAA,SAAS,EAAE;yBAAiB;WAAzC,eACExxB,8BAAA,CAACoxB,oBAAD;IAAsB90B,QAAAA,MAAM,EAAC;yBAAkB;WAA/C,CADF,eAEE0D,8BAAA,CAACoxB,oBAAD;IAAsB90B,QAAAA,MAAM,EAAC;IAAS4D,QAAAA,IAAI,EAAC;yBAAgB;WAA3D,CAFF,CADF;;IAMF,SAAK,eAAL;IACE,0BACEF,8BAAA,CAACsxB,WAAD;IAAaE,QAAAA,SAAS,EAAE;yBAAgB;WAAxC,eACExxB,8BAAA,CAACoxB,oBAAD;IAAsB90B,QAAAA,MAAM,EAAC;WAA7B,CADF,CADF;;IAKF,SAAK,gBAAL;IACE,0BACE0D,8BAAA,CAACsxB,WAAD;IAAaE,QAAAA,SAAS,EAAE;IAAMjW,QAAAA,KAAK,EAAE;IAAMgW,QAAAA,SAAS,EAAE;yBAAoB;WAA1E,eACEvxB,8BAAA,CAACoxB,oBAAD;IAAsB90B,QAAAA,MAAM,EAAC;yBAAkB;WAA/C,CADF,eAEE0D,8BAAA,CAACoxB,oBAAD;IAAsB90B,QAAAA,MAAM,EAAC;IAAS4D,QAAAA,IAAI,EAAC;yBAAgB;WAA3D,CAFF,CADF;IAvBJ;;IA8BA,SAAO,IAAP;IACD,CApCD;;ICKA,IAAM4xB,UAAU,GAA2B;IACzCC,EAAAA,eAAe,EAAE,sBADwB;IAEzCC,EAAAA,gBAAgB,EAAE,kBAFuB;IAGzCC,EAAAA,OAAO,EAAE;IAHgC,CAA3C;IAMA,IAAMC,gBAAgB,GAA2B;IAC/CH,EAAAA,eAAe,EAAE,2CAD8B;IAE/CC,EAAAA,gBAAgB,EAAE,6DAF6B;IAG/CC,EAAAA,OAAO,EAAE;IAHsC,CAAjD;IAMO,IAAME,aAAa,GAAiC,SAA9CA,aAA8C,CAACz3B,EAAD;UAAG03B,aAAa;UAAEC,SAAS;UAAEC,aAAa;IACnG,sBACEtyB,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;IAA+BqC,IAAAA,KAAK,EAAEotB;qBAAyB;OAA9E,eACEpyB,8BAAA,MAAA;IACE2C,IAAAA,SAAS,EAAC;qBACA;OAFZ,eAIE3C,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAC;IAAyBD,IAAAA,MAAM,EAAC;OAAhD,EACGovB,UAAU,CAACO,SAAD,CADb,CAJF,eAOEryB,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAC;IAAyBD,IAAAA,MAAM,EAAC;IAASxC,IAAAA,IAAI,EAAC;IAAQC,IAAAA,UAAU,EAAC;OAAjF,EACG+xB,gBAAgB,CAACG,SAAD,CADnB,CAPF,EAUGA,SAAS,KAAK,iBAAd,iBACCryB,8BAAA,CAACyJ,MAAD;IACEvJ,IAAAA,IAAI,EAAC;IACLyJ,IAAAA,SAAS,EAAE;sBACA;IACXnE,IAAAA,IAAI,EAAC;IACLiF,IAAAA,SAAS,EAAC;IACV7B,IAAAA,OAAO,EAAE;IAAM,aAAA0pB,aAAa,EAAb;IAAe;OANhC,UAAA,CAXJ,CADF,CADF;IA2BD,CA5BM;;ICNP,IAAMC,gBAAgB,GAAG;IACvBC,EAAAA,KAAK,EAAE,cADgB;IAEvBC,EAAAA,IAAI,EAAE;IAFiB,CAAzB;;IA8LA,IAAMC,YAAY,GAAG,SAAfA,YAAe,CAACxzB,KAAD;;;IAEjB,MAAA6E,KAkCE7E,KAAK,YAlCP;IAAA,MAAAotB,WAAW,mBAAG,OAAd;IAAA,MACAqG,QAAQ,GAiCNzzB,KAAK,SAlCP;IAAA,MAEAqE,KAgCErE,KAAK,MAlCP;IAAA,MAEAsd,KAAK,mBAAG,YAFR;IAAA,MAGAjW,KA+BErH,KAAK,WAlCP;IAAA,MAGA0xB,UAAU,mBAAG,cAHb;IAAA,MAIApqB,KA8BEtH,KAAK,iBAlCP;IAAA,MAIA0zB,gBAAgB,mBAAG,YAJnB;IAAA,MAKAlsB,KA6BExH,KAAK,kBAlCP;IAAA,MAKA2zB,iBAAiB,mBAAG,aALpB;IAAA,MAMAnb,KA4BExY,KAAK,eAlCP;IAAA,MAMA8xB,cAAc,mBAAG,SANjB;IAAA,MAOApZ,KA2BE1Y,KAAK,cAlCP;IAAA,MAOAisB,aAAa,mBAAG,SAPhB;IAAA,MAQAtT,KA0BE3Y,KAAK,UAlCP;IAAA,MAQA4G,SAAS,mBAAG,QARZ;IAAA,MASA0D,aAAa,GAyBXtK,KAAK,cAlCP;IAAA,MAUA+K,QAAQ,GAwBN/K,KAAK,SAlCP;IAAA,MAWA4zB,YAAY,GAuBV5zB,KAAK,aAlCP;IAAA,MAYA6zB,gBAAgB,GAsBd7zB,KAAK,iBAlCP;IAAA,MAaA8zB,gBAAgB,GAqBd9zB,KAAK,iBAlCP;IAAA,MAcA+zB,kBAAkB,GAoBhB/zB,KAAK,mBAlCP;IAAA,MAeAg0B,YAAY,GAmBVh0B,KAAK,aAlCP;IAAA,MAgBA6K,IAAI,GAkBF7K,KAAK,KAlCP;IAAA,MAiBA6oB,UAAU,GAiBR7oB,KAAK,WAlCP;IAAA,MAkBAi0B,eAAe,GAgBbj0B,KAAK,gBAlCP;IAAA,MAmBA8rB,YAAY,GAeV9rB,KAAK,aAlCP;IAAA,MAoBAovB,UAAU,GAcRpvB,KAAK,WAlCP;IAAA,MAqBAmH,cAAc,GAaZnH,KAAK,eAlCP;IAAA,MAsBAk0B,cAAc,GAYZl0B,KAAK,eAlCP;IAAA,MAuBAgyB,cAAc,GAWZhyB,KAAK,eAlCP;IAAA,MAwBAm0B,YAAY,GAUVn0B,KAAK,aAlCP;IAAA,MAyBAo0B,aAAa,GASXp0B,KAAK,cAlCP;IAAA,MA0BAq0B,cAAc,GAQZr0B,KAAK,eAlCP;IAAA,MA2BAyD,SAAS,GAOPzD,KAAK,UAlCP;IAAA,MA4BA4Y,KAME5Y,KAAK,kBAlCP;IAAA,MA4BAqvB,iBAAiB,mBAAG,eA5BpB;IAAA,MA6BAlC,WAAW,GAKTntB,KAAK,YAlCP;IAAA,MA8BAozB,aAAa,GAIXpzB,KAAK,cAlCP;IAAA,MA+BA+tB,eAAe,GAGb/tB,KAAK,gBAlCP;IAAA,MAgCAmzB,SAAS,GAEPnzB,KAAK,UAlCP;IAAA,MAiCAs0B,cAAc,GACZt0B,KAAK,eAlCP;IAoCF,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMu0B,WAAW,gBAAGzzB,gBAAK,CAAC0zB,SAAN,EAApB;IACA,MAAMC,UAAU,gBAAG3zB,gBAAK,CAAC0zB,SAAN,EAAnB;IACA,MAAME,kBAAkB,gBAAG5zB,gBAAK,CAAC0zB,SAAN,EAA3B;IACA,MAAMG,uBAAuB,gBAAG7zB,gBAAK,CAAC0zB,SAAN,EAAhC;IACA,MAAMI,sBAAsB,gBAAG9zB,gBAAK,CAAC0zB,SAAN,EAA/B;;IAEM,MAAA3b,KAAkC/X,gBAAK,CAAC8B,QAAN,EAAlC;IAAA,MAACiyB,YAAY,QAAb;IAAA,MAAeC,eAAe,QAA9B;;IACA,MAAAC,KAAsBj0B,gBAAK,CAAC8B,QAAN,CAAemxB,kBAAf,CAAtB;IAAA,MAACiB,MAAM,QAAP;IAAA,MAASC,SAAS,QAAlB;;IACA,MAAAC,KAA4Bp0B,gBAAK,CAAC8B,QAAN,EAA5B;IAAA,MAACuyB,SAAS,QAAV;IAAA,MAAYC,YAAY,QAAxB;;IAEN,MAAMC,YAAY,GAAG,SAAfA,YAAe;IACnB,QAAMC,eAAe,GAAGl6B,QAAQ,CAACm6B,aAAT,CAAoC,mBAApC,CAAxB;IACA,QAAMJ,SAAS,GAAGG,eAAe,SAAf,IAAAA,eAAe,WAAf,SAAA,GAAAA,eAAe,CAAE1I,YAAnC;IACAuI,IAAAA,SAAS,IAAIC,YAAY,CAACD,SAAD,CAAzB;IACD,GAJD;;IAMA,MAAMK,mBAAmB,GAAGpI,WAAW,CAAChwB,MAAZ,KAAuB,CAAvB,IAA4B,CAACk3B,cAA7B,IAA+CvpB,QAAQ,CAAC3N,MAAT,IAAmB,CAA9F;IAEA0D,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;;;IACd,QAAIqmB,KAAJ;;IACA,QAAIwF,YAAJ,EAAkB;IACR,UAAAnwB,KAAK,GAAyB7D,KAAK,MAAnC;IAAA,UAAOy1B,QAAQ,GAAez1B,KAAK,SAAnC;IAAA,UAAiB01B,QAAQ,GAAK11B,KAAK,SAAnC;IACR,UAAM21B,WAAW,SAAGlB,UAAU,CAAC7U,iDAASgW,WAAxC;IACA,UAAMC,cAAc,GAAG5B,eAAe,GAAG,GAAH,GAASppB,IAAI,GAAG,GAAH,GAAS8qB,WAA5D;IAEA,UAAMG,kBAAkB,GAAG;IACzBjyB,QAAAA,KAAK,EAAEA,KAAK,GAAGA,KAAH,GAAW8xB,WADE;IAEzBF,QAAAA,QAAQ,EAAEA,QAAQ,GAAGA,QAAH,GAAcI,cAFP;IAGzBH,QAAAA,QAAQ,EAAEA,QAAQ,GAAGA,QAAH,GAAc;IAHP,OAA3B;IAKAK,MAAAA,qBAAqB,CAACV,YAAD,CAArB;IAEAP,MAAAA,eAAe,CAACgB,kBAAD,CAAf;;IAGA,UAAI3I,WAAW,IAAIyG,YAAY,CAACx2B,MAAb,KAAwB,CAA3C,EAA8C;IAC5CoxB,QAAAA,KAAK,GAAGtlB,UAAU,CAAC;IACjBgkB,UAAAA,mBAAmB,CAACC,WAAD,EAAcC,WAAd,CAAnB;IACD,SAFiB,EAEf,GAFe,CAAlB;IAGD;IACF;;IAED,WAAO;IACLqB,MAAAA,YAAY,CAACD,KAAD,CAAZ;IACD,KAFD;IAGD,GA3BD,EA2BG,CAACwF,YAAD,CA3BH;IA6BAlzB,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI4rB,kBAAkB,KAAKiB,MAA3B,EAAmCC,SAAS,CAAClB,kBAAD,CAAT;IACpC,GAFD,EAEG,CAACA,kBAAD,CAFH;IAKE,MAAAiC,KAQEh2B,KAAK,YARP;IAAA,MAAA2K,WAAW,mBAAG,cAAd;IAAA,MACAsrB,KAOEj2B,KAAK,YARP;IAAA,MACAkiB,WAAW,mBAAG,aADd;IAAA,MAEA5b,IAAI,GAMFtG,KAAK,KARP;IAAA,MAGA6C,KAAK,GAKH7C,KAAK,MARP;IAAA,MAIA2L,QAAQ,GAIN3L,KAAK,SARP;IAAA,MAKAkwB,WAAW,GAGTlwB,KAAK,YARP;IAAA,MAMAk2B,YAAY,GAEVl2B,KAAK,aARP;IAAA,MAOA4L,QAAQ,GACN5L,KAAK,SARP;IAUF,MAAMm2B,aAAa,GAAG7rB,aAAa,GAAGA,aAAa,CAAC4rB,YAAY,GAAGA,YAAH,GAAkBhU,WAA/B,CAAhB,gBAA8DphB,8BAAA,0BAAA,MAAA,CAAjG;IACA,MAAMs1B,gBAAgB,gBAAGt1B,gBAAK,CAACu1B,YAAN,CAAmBF,aAAnB,EAAkC;IAAE3qB,IAAAA,QAAQ,EAAE,CAAZ;IAAeF,IAAAA,GAAG,EAAEopB;IAApB,GAAlC,CAAzB;IAEA,MAAMzsB,OAAO,GAAGqC,aAAa,GAC3B8rB,gBAD2B,gBAG3Bt1B,8BAAA,CAACmvB,cAAD;IACE/N,IAAAA,WAAW,EAAEA;IACbvX,IAAAA,WAAW,EAAEA;IACbpC,IAAAA,IAAI,EAAEyrB;IACN1tB,IAAAA,IAAI,EAAEA;IACNqF,IAAAA,QAAQ,EAAEA;IACVukB,IAAAA,WAAW,EAAEA;IACbrlB,IAAAA,IAAI,EAAEA;IACNhI,IAAAA,KAAK,EAAEA;IACPyI,IAAAA,GAAG,EAAEopB;IACL9oB,IAAAA,QAAQ,EAAEA;OAVZ,EAYGsqB,YAZH,CAHF;IAmBA,MAAMhD,aAAa,GAAwB;IACzCtsB,IAAAA,SAAS,WADgC;IAEzC0vB,IAAAA,SAAS,EAAE,MAF8B;IAGzCC,IAAAA,SAAS,EAAE,QAH8B;IAIzCpB,IAAAA,SAAS,EAAEA;IAJ8B,GAA3C;IAOA,MAAMqB,WAAW,GAAwB;IACvC5vB,IAAAA,SAAS,EAAEuuB,SAAS,GAAGA,SAAH,GAAevuB,SADI;IAEvC0vB,IAAAA,SAAS,EAAE,MAF4B;IAGvCC,IAAAA,SAAS,EAAE,QAH4B;IAIvCpB,IAAAA,SAAS,EAAEA;IAJ4B,GAAzC;;IAOA,MAAMsB,oBAAoB,GAAG,SAAvBA,oBAAuB;IAC3B,wBACE31B,8BAAA,CAACmyB,aAAD;IACEC,MAAAA,aAAa,wBAAOA;IAAeiC,QAAAA,SAAS,EAAEvuB;;IAC9CwsB,MAAAA,aAAa,EAAEA;IACfD,MAAAA,SAAS,EAAEA;SAHb,CADF;IAOD,GARD;;IAUA,MAAMuD,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,eAAD;;;IAC9B,WAAOxzB,8BAAU,WACf3H,GAAC,mBAAD,GAAsB,MACtBA,GAAC,8BAAD,GAAiCm7B,mBAFlB,EAAjB;IAID,GALD;;IAOA,MAAMC,aAAa,GAAGzzB,8BAAU,WAE5B3H,GAAC,WAAD,GAAc,QAFc,GAI9BiI,SAJ8B,CAAhC;IAOA,MAAMozB,oBAAoB,GAAG1zB,8BAAU,WACrCE,GAAC,mBAAD,GAAsB,MACtBA,GAAC,yBAAD,GAA4B,CAACyuB,kBAFQ,EAAvC;IAKA,MAAMgF,cAAc,GAAG3zB,8BAAU,WAC/BR,GAAC,0BAAD,GAA6BqyB,MAAM,KAAK,GACxCryB,GAAC,yBAAD,GAA4B,MAC5BA,GAAC,kBAAD,GAAqB,MACrBA,GAAC,gBAAD,GAAmB,QAJY,EAAjC;;IAOA,MAAMo0B,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACxuB,IAAD,EAAgBiC,IAAhB;;;IACvB6pB,IAAAA,cAAc,CAAC9rB,IAAD,EAAOiC,IAAP,CAAd;IACA,QAAI,CAACmB,QAAL,EAAe,MAAA+oB,kBAAkB,CAAC9U,OAAnB,UAAA,iBAAA,SAAA,MAA4BoX,OAA5B;IACf/B,IAAAA,SAAS,CAAClB,kBAAD,CAAT;IACD,GAJD;;IAMA,MAAMkD,eAAe,GAAG,SAAlBA,eAAkB;;;IACtB7C,IAAAA,aAAa;IACb,UAAAM,kBAAkB,CAAC9U,OAAnB,UAAA,iBAAA,SAAA,MAA4BoX,OAA5B;IACD,GAHD;;IAKA,MAAME,cAAc,GAAG,SAAjBA,cAAiB;;;IACrB/C,IAAAA,YAAY;IACZ,UAAAO,kBAAkB,CAAC9U,OAAnB,UAAA,iBAAA,SAAA,MAA4BoX,OAA5B;IACD,GAHD;;IAKA,MAAMG,kBAAkB,GAAG,SAArBA,kBAAqB,CAAC/wB,IAAD;;;IACzBpG,IAAAA,KAAK,CAACo3B,cAAN,CAAqBhxB,IAArB;IACA,UAAAsuB,kBAAkB,CAAC9U,OAAnB,UAAA,iBAAA,SAAA,MAA4BoX,OAA5B;IACD,GAHD;;IAKA,MAAMK,kBAAkB,GAAG,SAArBA,kBAAqB;IACzBpC,IAAAA,SAAS,CAAClB,kBAAD,CAAT;IACA,QAAIG,cAAc,IAAIrL,UAAtB,EAAkCqL,cAAc,CAAC,EAAD,CAAd;IACnC,GAHD;;IAKA,MAAMoD,aAAa,GAAG,SAAhBA,aAAgB,CAAC5Z,KAAD;IACpBuX,IAAAA,SAAS,CAAClB,kBAAD,CAAT;IACA,QAAIG,cAAJ,EAAoBA,cAAc,CAACxW,KAAK,CAAC6C,MAAN,CAAahiB,KAAd,CAAd;IACrB,GAHD;;IAKA,MAAMizB,kBAAkB,GAAG,SAArBA,kBAAqB,CAACnrB,KAAD,EAAgBkxB,cAAhB;IACzB,QAAMC,YAAY,GAAG1L,YAAY,IAAIG,aAAhB,IAAiC,CAACjsB,KAAK,CAACy3B,KAAxC,IAAiD,CAACF,cAAlD,GAAmElxB,KAAK,GAAG,CAA3E,GAA+EA,KAApG;IAEA4uB,IAAAA,SAAS,CAACuC,YAAD,CAAT;IACD,GAJD;;IAMA,MAAME,YAAY,GAAG,SAAfA,YAAe;IACX,QAAAl8B,KAA4CwE,KAAK,YAAjD;IAAA,QAAA23B,WAAW,mBAAG,8BAAd;IACR,wBACE72B,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;SAAf,eACE3C,8BAAA,CAACyC,IAAD;IAAMvC,MAAAA,IAAI,EAAC;IAAQC,MAAAA,UAAU,EAAE;SAA/B,EACG02B,WADH,CADF,CADF;IAOD,GATD;;IAWA,MAAMC,YAAY,GAAG,SAAfA,YAAe,CAAClK,KAAD,EAAgBmK,aAAhB;IACX,QAAAC,cAAc,GAAK93B,KAAK,eAAxB;IACR,QAAM+3B,eAAe,GAAGhtB,QAAQ,CAACpM,KAAT,CAAe,UAAC8rB,MAAD;IAAY,aAAAA,MAAM,CAAC9e,QAAP;IAAe,KAA1C,CAAxB;IAEA,wBACE7K,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAEizB,uBAAuB,CAACmB,aAAD;SAAvC,eACE/2B,8BAAA,CAACyC,IAAD;IAAMvC,MAAAA,IAAI,EAAC;IAAQC,MAAAA,UAAU,EAAE;SAA/B,EACGysB,KADH,CADF,EAIGmK,aAAa,iBACZ/2B,8BAAA,CAACyJ,MAAD;IACEb,MAAAA,OAAO,EAAEouB;IACTnsB,MAAAA,QAAQ,EAAEosB;IACV92B,MAAAA,UAAU,EAAC;IACXD,MAAAA,IAAI,EAAC;IACLwJ,MAAAA,IAAI,EAAC;SALP,SAAA,CALJ,CADF;IAkBD,GAtBD;;IAwBA,MAAMwtB,iBAAiB,GAAG,SAApBA,iBAAoB;IACxB,QAAMC,OAAO,GAAG5M,QAAQ,CAACwI,gBAAD,EAAmBD,YAAnB,CAAR,IAA4C5zB,KAAK,CAACs0B,cAAlE;IAEA,wBACExzB,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;SAAf,eACE3C,8BAAA,CAACyJ,MAAD;IACEe,MAAAA,GAAG,EAAEqpB;IACLlxB,MAAAA,SAAS,EAAC;IACVxC,MAAAA,UAAU,EAAE;IACZyI,MAAAA,OAAO,EAAEutB;IACTtrB,MAAAA,QAAQ,EAAE3L,KAAK,CAACs0B;IAChBtzB,MAAAA,IAAI,EAAE;IACNwK,MAAAA,QAAQ,EAAE,CAAC;uBACD;IACVhB,MAAAA,IAAI,EAAC;SATP,EAWGmpB,iBAXH,CADF,eAcE7yB,8BAAA,CAACyJ,MAAD;IACEe,MAAAA,GAAG,EAAEspB;IACL3zB,MAAAA,UAAU,EAAE;IACZ0K,MAAAA,QAAQ,EAAEssB;IACVj3B,MAAAA,IAAI,EAAE;IACN0I,MAAAA,OAAO,EAAEwtB;uBACC;IACV1sB,MAAAA,IAAI,EAAC;SAPP,EASGkpB,gBATH,CAdF,CADF;IA4BD,GA/BD;;IAiCA,MAAMwE,YAAY,GAAG,SAAfA,YAAe;IACnB,wBACEp3B,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;SAAf,eACE3C,8BAAA,CAACq3B,KAAD;IACEz0B,MAAAA,IAAI,EAAC;IACL4C,MAAAA,IAAI,EAAE;IACN/H,MAAAA,KAAK,EAAEsqB;IACP3G,MAAAA,WAAW,EAAEmN;IAGb+I,MAAAA,SAAS,EAAE;IACXttB,MAAAA,QAAQ,EAAEwsB;IACV7V,MAAAA,OAAO,EAAE4V;IACT/rB,MAAAA,GAAG,EAAEmoB;IACL4E,MAAAA,YAAY,EAAE;IACd50B,MAAAA,SAAS,EAAC;SAZZ,CADF,CADF;IAkBD,GAnBD;;IAqBA,MAAM60B,aAAa,GAAG,SAAhBA,aAAgB,CAACC,aAAD;IACpB,QAAMtN,GAAG,GAAGxsB,KAAK,CAAC85B,aAAD,CAAL,CAAqBzZ,IAArB,CAA0B,SAA1B,CAAZ;IACA,QAAMtU,IAAI,GAAGshB,YAAY,GAAG,eAAH,GAAqB4F,UAA9C;IACA,WAAOzG,GAAG,CAAC9kB,GAAJ,CAAQ,UAACskB,MAAD,EAAS3jB,GAAT;IACb,0BACEhG,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAC;IAAiB+C,QAAAA,GAAG,EAAKikB,MAAM,MAAN,GAAU3jB;WAAlD,eACEhG,8BAAA,CAAC0xB,OAAD;IAASC,QAAAA,WAAW,EAAEjoB;IAAMkoB,QAAAA,WAAW,EAAE5rB;WAAzC,CADF,CADF;IAKD,KANM,CAAP;IAOD,GAVD;;IAYA,MAAM0xB,eAAe,GAAG,SAAlBA,eAAkB;IACd,QAAAh9B,KAA0DwE,KAAK,eAA/D;IAAA,QAAAy4B,cAAc,mBAAG,iBAAjB;IAAA,QAA+BC,SAAS,GAAkB14B,KAAK,UAA/D;IAAA,QAA0C24B,WAAW,GAAK34B,KAAK,YAA/D;IAER,QAAMiK,KAAK,GAAGwuB,cAAc,CAACz1B,IAAf,KAAwBy1B,cAAc,CAACz1B,IAAf,EAAxB,GAAgD,YAA9D;IACA,QAAMwc,EAAE,GAAG,qBAAmBvV,KAAK,CAAC8gB,WAAN,GAAoBzM,OAApB,CAA4B,MAA5B,EAAoC,EAApC,CAAnB,MAAA,GAA8D,IAAI3hB,IAAJ,GAAW2b,OAAX,EAAzE;IAEA,wBACExX,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAEqzB;IAAgBxf,MAAAA,YAAY,EAAE;IAAM,eAAAka,kBAAkB,CAAC,CAAD,EAAI,IAAJ,CAAlB;IAA2B;SAA/E,eACE1wB,8BAAA,QAAA;IAAO2f,MAAAA,OAAO,EAAEjB;IAAI/b,MAAAA,SAAS,EAAC;SAA9B,eACE3C,8BAAA,CAACoe,QAAD;IACEjV,MAAAA,KAAK,EAAEA;IACPa,MAAAA,QAAQ,EAAE6tB;IACV9Y,MAAAA,OAAO,EAAE6Y,SAAS,CAAC7Y;IACnBR,MAAAA,aAAa,EAAEqZ,SAAS,CAACrZ;IACzB7T,MAAAA,QAAQ,EAAE,CAAC;IACX/H,MAAAA,SAAS,EAAC;IACV+b,MAAAA,EAAE,EAAEA;SAPN,CADF,CADF,CADF;IAeD,GArBD;;IAuBA,MAAMoZ,aAAa,GAAG,SAAhBA,aAAgB,CAACxyB,IAAD,EAAqBC,KAArB;IAMpB,QAAMwyB,gBAAgB,GAAG9M,mBAAmB,CAAClD,UAAD,EAAaiL,gBAAb,EAA+B7H,aAA/B,EAA8CH,YAA9C,CAA5C;;IAEA,QAAM/Y,MAAM,GAAG8lB,gBAAgB,GAAGxyB,KAAK,GAAG,CAAR,KAAc2uB,MAAjB,GAA0B3uB,KAAK,KAAK2uB,MAAnE;IACA,QAAM8D,gBAAgB,GAAGlF,YAAY,CAACjF,SAAb,CAAuB,UAAClE,MAAD;IAAY,aAAAA,MAAM,CAAClsB,KAAP,KAAiB6H,IAAI,CAAC7H,KAAtB;IAA2B,KAA9D,MAAoE,CAAC,CAA9F;IACA,QAAMihB,EAAE,GAAG,qBAAmBnZ,KAAnB,MAAA,GAA4BD,IAAI,CAAC7H,KAAjC,MAAA,GAA0C,IAAI5B,IAAJ,GAAW2b,OAAX,EAArD;IAEA,wBACExX,8BAAA,QAAA;IAAO2f,MAAAA,OAAO,EAAEjB;SAAhB,eACE1e,8BAAA,CAACywB,MAAD;IACEhB,MAAAA,UAAU,EAAEnqB;IACZ0rB,MAAAA,cAAc,EAAEA;IAChB/mB,MAAAA,QAAQ,EAAE+tB;IACVzyB,MAAAA,KAAK,EAAEA;IACPmrB,MAAAA,kBAAkB,EAAEA;IACpBQ,MAAAA,cAAc,EAAEA;IAChBjf,MAAAA,MAAM,EAAEA;IACR0e,MAAAA,UAAU,EAAE3F;IACZjhB,MAAAA,IAAI,EAAEA;IACNnB,MAAAA,OAAO,EAAE;IAAM,eAAAytB,kBAAkB,CAAC/wB,IAAD,CAAlB;IAAwB;IACvC0E,MAAAA,QAAQ,EAAE,kBAAC4O,CAAD;IAAO,eAAA1Z,KAAK,CAAC+4B,QAAN,CAAe3yB,IAAf,EAAqBsT,CAAC,CAAC6G,MAAF,CAASV,OAA9B,CAAA;IAAsC;IACvD6R,MAAAA,UAAU,EAAE1xB,KAAK,CAAC0xB;IAClBlS,MAAAA,EAAE,EAAEA;SAbN,CADF,CADF;IAmBD,GA/BD;;IAiCA,MAAMwZ,qBAAqB,GAAG,SAAxBA,qBAAwB;;;IAE1B,QAAA31B,KAIErD,KAAK,qBAJP;IAAA,QAAAi5B,oBAAoB,mBAAG,qBAAvB;IAAA,QACAt2B,KAGE3C,KAAK,qBAJP;IAAA,QACAk5B,oBAAoB,mBAAG,gBADvB;IAAA,QAEAr0B,KAEE7E,KAAK,aAJP;IAAA,QAEAmvB,YAAY,mBAAG,OAFf;IAAA,QAGA9qB,KACErE,KAAK,cAJP;IAAA,QAGAm5B,aAAa,mBAAG1C,yBAHhB;;IAKF,QAAMoC,gBAAgB,GAAG9M,mBAAmB,CAAClD,UAAD,EAAaiL,gBAAb,EAA+B7H,aAA/B,EAA8CH,YAA9C,CAA5C;;IAEA,QAAMsN,kBAAkB,GAAG5L,gBAAgB,CAACJ,WAAD,CAA3C;;IAEA,QAAI+B,YAAY,IAAImF,cAApB,EAAoC;IAClC,0BACExzB,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAE;WAAhB,eACE3C,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAC;IAAmBqC,QAAAA,KAAK,EAAE0wB;WAAzC,EACG8B,aAAa,CAACnJ,YAAD,CADhB,CADF,CADF;IAOD;;IAED,QAAIqG,mBAAJ,EAAyB;IACvB,UAAIzH,eAAJ,EAAqB;IACnB,4BACEjtB,8BAAA,MAAA;IAAK2C,UAAAA,SAAS,EAAC;IAAyBqC,UAAAA,KAAK,EAAEotB;2BAAyB;aAAxE,eACEpyB,8BAAA,MAAA;IAAK2C,UAAAA,SAAS,EAAE;aAAhB,eACE3C,8BAAA,MAAA;IAAK2C,UAAAA,SAAS,EAAE;aAAhB,EAAmCsqB,eAAnC,CADF,CADF,CADF;IAOD,OARD,MAQO;IACL,eAAOoL,aAAa,IAAIA,aAAa,CAAC;IAAEhG,UAAAA,SAAS;IAAX,SAAD,CAArC;IACD;IACF;;IAED,wBACEryB,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAEozB;IAAsB/wB,MAAAA,KAAK,EAAEotB;IAAe5nB,MAAAA,GAAG,EAAEipB;SAAjE,EACGsE,gBAAgB,IAAIL,eAAe,EADtC,EAEGztB,QAAQ,CAAC3N,MAAT,GAAkB,CAAlB,IAAuBw6B,YAAY,CAACqB,oBAAD,EAAuB,IAAvB,CAFtC,EAGGluB,QAAQ,CAAC5E,GAAT,CAAa,UAACskB,MAAD,EAASpkB,KAAT;IAAmB,aAAAuyB,aAAa,CAACnO,MAAD,EAASpkB,KAAT,CAAb;IAA4B,KAA5D,CAHH,EAIG0E,QAAQ,CAAC3N,MAAT,GAAkB,CAAlB,IACCgwB,WAAW,CAAChwB,MAAZ,GAAqB2N,QAAQ,CAAC3N,MAA9B,GAAuC,CADxC,IAEC,QAACgwB,WAAW,CAAC,CAAD,CAAX,CAAeM,+CAAO1qB,MAAvB,CAFD,IAGC40B,YAAY,CAACsB,oBAAD,CAPhB,EAQGE,kBAAkB,CAACjzB,GAAnB,CAAuB,UAACskB,MAAD,EAASpkB,KAAT;IACtB,UAAMgzB,SAAS,GACbhzB,KAAK,GAAG,CAAR,GAAY+yB,kBAAkB,CAAC/yB,KAAK,GAAG,CAAT,CAAlB,CAA8BqnB,KAA1C,GAAkD3iB,QAAQ,CAAC3N,MAAT,GAAkB67B,oBAAlB,GAAyCxrB,SAD7F;IAEA,UAAM6rB,YAAY,GAAG7O,MAAM,CAACiD,KAA5B;IACA,UAAM6L,gBAAgB,GAAGF,SAAS,KAAKC,YAAvC;IACA,UAAM9B,YAAY,GAAGnxB,KAAK,GAAG0E,QAAQ,CAAC3N,MAAtC;IAEA,0BACE0D,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAC;IAAyB+C,QAAAA,GAAG,EAAEH;WAA7C,EACGkzB,gBAAgB,IAAID,YAApB,IAAoC1B,YAAY,CAAC0B,YAAD,CADnD,EAEGV,aAAa,CAACnO,MAAD,EAAS+M,YAAT,CAFhB,CADF;IAMD,KAbA,CARH,EAsBGx3B,KAAK,CAACy3B,KAAN,IAAe3D,gBAAgB,GAAG,CAAlC,IAAuC4D,YAAY,EAtBtD,CADF;IA0BD,GA7DD;;IA+DA,MAAM8B,WAAW,GAAG,SAAdA,WAAc,CAACC,SAAD,EAAoB9wB,OAApB;IAClB,QAAM+wB,QAAQ,GAAGt+B,QAAQ,CAACu+B,gBAAT,CAA0BhxB,OAA1B,CAAjB;IAEA,QAAMixB,aAAa,GAAGH,SAAS,KAAK,MAAd,GAAuBzE,MAAM,GAAG,CAAhC,GAAoCA,MAAM,GAAG,CAAnE;IACA,QAAI6E,UAAU,GAAGD,aAAjB;IACA,QAAME,QAAQ,GAAGL,SAAS,KAAK,MAAd,GAAuBC,QAAQ,CAACt8B,MAAhC,GAAyC,CAAC,CAA3D;;IAEA,WAAOy8B,UAAU,KAAKC,QAAtB,EAAgC;IAC9B,UAAMC,IAAI,GAAGL,QAAQ,CAACG,UAAD,CAArB;;IAEA,UAAIE,IAAI,CAACC,YAAL,CAAkB,eAAlB,MAAuC,MAA3C,EAAmD;IACjD,YAAM7N,OAAO,GAAgBuN,QAAQ,CAACG,UAAD,CAArC;IACA,YAAI1N,OAAJ,EAAaE,cAAc,CAACkI,WAAW,CAAC3U,OAAb,EAAsBuM,OAAtB,CAAd;IACb,YAAIA,OAAO,KAAK1e,SAAhB,EAA2BwnB,SAAS,CAAC4E,UAAD,CAAT;IAC3B;IACD;;IAED,UAAIJ,SAAS,KAAK,MAAlB,EAA0B;IACxBI,QAAAA,UAAU;IACX,OAFD,MAEO;IACLA,QAAAA,UAAU;IACX;IACF;IACF,GAvBD;;IAyBA,MAAMI,SAAS,GAAG,SAAZA,SAAY,CAACvc,KAAD;;;IAChB,QAAMwc,WAAW,GAAG,gBAApB;;IACA,YAAQxc,KAAK,CAAClX,GAAd;IACE,WAAK,WAAL;IACEkX,QAAAA,KAAK,CAAC7T,cAAN;IACAmqB,QAAAA,YAAY,GAAGwF,WAAW,CAAC,MAAD,EAASU,WAAT,CAAd,GAAsCnD,gBAAgB,CAAC,CAAC/C,YAAF,CAAlE;IACA;;IACF,WAAK,SAAL;IACEtW,QAAAA,KAAK,CAAC7T,cAAN;IACAmqB,QAAAA,YAAY,GAAGwF,WAAW,CAAC,IAAD,EAAOU,WAAP,CAAd,GAAoCnD,gBAAgB,CAAC,CAAC/C,YAAF,CAAhE;IACA;;IACF,WAAK,OAAL;IAAc;IACZ,cAAMmG,aAAa,GAAG/+B,QAAQ,CAAC++B,aAA/B;;IACA,cAAInG,YAAY,KAAKP,QAAQ,CAAC7T,OAAT,KAAqBua,aAArB,IAAsCzF,kBAAkB,CAAC9U,OAAnB,KAA+Bua,aAA1E,CAAhB,EAA0G;IACxGzc,YAAAA,KAAK,CAAC7T,cAAN;IACA,gBAAMlB,OAAO,GAAGmjB,YAAY,GAAMoO,WAAW,qBAAjB,GAAsCA,WAAlE;IACA,gBAAMR,QAAQ,GAAGt+B,QAAQ,CAACu+B,gBAAT,CAA0BhxB,OAA1B,CAAjB;IACA,gBAAMwjB,OAAO,GAAGuN,QAAQ,CAAC1E,MAAD,CAAxB;IACA,gBAAI7I,OAAJ,EAAaA,OAAO,CAACiO,KAAR;IACd;;IACD,cAAI,CAACpG,YAAL,EAAmB+C,gBAAgB,CAAC,CAAC/C,YAAF,CAAhB;IACnB;IACD;;IACD,WAAK,KAAL;IAAY;IACV,cAAI,CAACC,eAAD,IAAoBD,YAAxB,EAAsC;IACpCtW,YAAAA,KAAK,CAAC7T,cAAN;IACAktB,YAAAA,gBAAgB,CAAC,KAAD,EAAQ,SAAR,CAAhB;IACA;IACD;;IAED,cAAMsD,cAAc,GAAGj/B,QAAQ,CAAC++B,aAAhC;IACA,cAAMG,mBAAmB,SAAG1F,sBAAsB,CAAChV,iDAASjU,QAA5D;;IAEA,cACE,CAAE0uB,cAAc,KAAK1F,uBAAuB,CAAC/U,OAA3C,IAAsD0a,mBAAvD,IACCD,cAAc,KAAKzF,sBAAsB,CAAChV,OAD5C,KAEAoU,YAHF,EAIE;IACAtW,YAAAA,KAAK,CAAC7T,cAAN;IACAktB,YAAAA,gBAAgB,CAAC,KAAD,EAAQ,SAAR,CAAhB;IACA;IACD;;IAED,cAAI9C,eAAe,IAAID,YAAvB,EAAqC;IACnCtW,YAAAA,KAAK,CAAC7T,cAAN;;IACA,gBAAIwwB,cAAc,KAAK1F,uBAAuB,CAAC/U,OAA/C,EAAwD;IACtD,oBAAAgV,sBAAsB,CAAChV,OAAvB,UAAA,iBAAA,SAAA,MAAgCoX,OAAhC;IACD,aAFD,MAEO;IACL,oBAAArC,uBAAuB,CAAC/U,OAAxB,UAAA,iBAAA,SAAA,MAAiCoX,OAAjC;IACD;IACF;;IAED;IACD;IAnDH;IAuDD,GAzDD;;IA2DA,MAAMuD,YAAY,GAAGnL,UAAU,IAAIpvB,KAAK,CAACy3B,KAAzC;IAEA,sBAGE32B,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAEmzB;IAAetrB,IAAAA,GAAG,EAAEmpB;IAAYra,IAAAA,SAAS,EAAE6f;QAA1E,eACEn5B,8BAAA,CAACkH,OAAD;IACE2b,IAAAA,QAAQ,EAAEoT;IACV9uB,IAAAA,OAAO,EAAEA;IACT7C,IAAAA,YAAY,EAAE,CAACyF,IAAD,GAAQ,OAAR,GAAkB;IAChCtC,IAAAA,IAAI,EAAEyrB;IACNwG,IAAAA,WAAW,EAAE3F;IACb1vB,IAAAA,QAAQ,EAAEkuB,gBAAgB,CAAC/V,KAAD;SACtBnW;qBACM;QARZ,EAUGozB,YAAY,IAAIrC,YAAY,EAV/B,EAWGc,qBAAqB,EAXxB,EAYG/E,eAAe,IAAInI,YAAnB,IAAmCkM,iBAAiB,EAZvD,CADF,CAHF;IAoBD,CAzhBD;;IA2hBAxE,YAAY,CAACnuB,WAAb,GAA2B,cAA3B;;ICxhBA,IAAMouB,QAAQ,gBAAG3yB,gBAAK,CAAC0zB,SAAN,EAAjB;;;IA8D8BxlB,EAAAA,2BAAA;;IAW5B,mBAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IAkFAkP,IAAAA,wBAAA,GAAqB,UAAC7E,OAAD;IAAC,4BAAA,EAAA;IAAAA,QAAAA,YAAA;;;IACpB,aAAOA,OAAO,CAAC1J,MAAR,CAAe,UAAC8pB,MAAD;IAAY,eAAAA,MAAM,CAAC9e,QAAP;IAAe,OAA1C,CAAP;IACD,KAFD;;IAIAuD,IAAAA,0BAAA,GAAuB,UAAC2Z,UAAD;IACb,UAAAxe,OAAO,GAAK6E,KAAI,CAAClP,KAAL,QAAZ;IACR,UAAMy6B,eAAe,GAAG5R,UAAU,GAAGiC,kBAAkB,CAACzgB,OAAD,EAAUwe,UAAV,CAArB,GAA6Cxe,OAA/E;IACA,aAAO,IAAIykB,OAAJ,CAAiB,UAACC,OAAD;IACtBA,QAAAA,OAAO,CAAC;IACNlG,UAAAA,UAAU,YADJ;IAENxe,UAAAA,OAAO,EAAEowB,eAFH;IAGNzL,UAAAA,KAAK,EAAEyL,eAAe,CAACr9B;IAHjB,SAAD,CAAP;IAKD,OANM,CAAP;IAOD,KAVD;;IAYA8R,IAAAA,0BAAA,GAAuB,UAAC7E,OAAD,EAA0B6W,IAA1B;IACrB,UAAI7W,OAAO,CAACjN,MAAZ,EAAoB;IAClB,YAAI,CAAC8jB,IAAL,EAAW;IACT,iBAAO7W,OAAO,CAAC1J,MAAR,CACL,UAAC8pB,MAAD;IAAY,mBAAAvb,KAAI,CAACE,KAAL,CAAWwkB,YAAX,CAAwBjF,SAAxB,CAAkC,UAACvoB,IAAD;IAAU,qBAAAA,IAAI,CAAC7H,KAAL,KAAeksB,MAAM,CAAClsB,KAAtB;IAA2B,aAAvE,MAA6E,CAAC,CAA9E;IAA+E,WADtF,CAAP;IAGD;;IAEO,YAAA/C,KAAkB0T,KAAI,CAAClP,KAAL,SAAlB;IAAA,YAAA06B,UAAQ,mBAAG,OAAX;IACR,YAAMC,eAAe,GAAGtwB,OAAO,CAAC1J,MAAR,CAAe,UAAC8pB,MAAD;IACrC,iBAAAiB,aAAa,CAACxc,KAAI,CAAClP,KAAL,CAAW+K,QAAZ,CAAb,GACI2vB,UAAQ,CAAC/L,SAAT,CAAmB,UAACvoB,IAAD;IAAU,mBAAAA,IAAI,CAAC7H,KAAL,KAAeksB,MAAM,CAAClsB,KAAtB;IAA2B,WAAxD,MAA8D,CAAC,CADnE,GAEI,CAACksB,MAAM,CAAC1f,QAFZ;IAEoB,SAHE,CAAxB;IAMA,eAAO4vB,eAAP;IACD;;IACD,aAAOtwB,OAAP;IACD,KAlBD;;IAoBA6E,IAAAA,wBAAA,GAAqB,UAAC7E,OAAD,EAA0B6W,IAA1B;IACX,UAAA1lB,KAAkB0T,KAAI,CAAClP,KAAL,SAAlB;IAAA,UAAA+K,QAAQ,mBAAG,OAAX;;IACR,UAAIV,OAAO,CAACjN,MAAZ,EAAoB;IAClB,YAAI,CAAC8jB,IAAL,EAAW,OAAOhS,KAAI,CAACE,KAAL,CAAWwkB,YAAlB;IAEX,YAAMiE,aAAa,GAAGnM,aAAa,CAACxc,KAAI,CAAClP,KAAL,CAAW+K,QAAZ,CAAb,GAAqCA,QAArC,GAAgDV,OAAO,CAAC1J,MAAR,CAAe,UAAC8pB,MAAD;IAAY,iBAAAA,MAAM,CAAC1f,QAAP;IAAe,SAA1C,CAAtE;IACA,eAAO8sB,aAAP;IACD;;IACD,aAAO,EAAP;IACD,KATD;;IAWA3oB,IAAAA,mBAAA,GAAgB,UAACgS,IAAD,EAAgBuW,KAAhB;IACR,UAAAj8B,KAAuE0T,KAAI,CAACE,KAA5E;IAAA,UAAEyZ,UAAU,gBAAZ;IAAA,UAAc6P,SAAS,eAAvB;IAAA,UAAyB9E,YAAY,kBAArC;IAAA,UAAuCC,gBAAgB,sBAAvD;IAAA,UAAyDV,SAAS,eAAlE;IAEN,UAAIyH,YAAY,GAAGnD,KAAK,KAAKhqB,SAAV,GAAsByB,KAAI,CAACE,KAAL,CAAWqoB,KAAjC,GAAyCA,KAA5D;IACM,UAAAp0B,KAA6C6L,KAAI,CAAClP,KAAlD;IAAA,UAAEsvB,YAAY,kBAAd;IAAA,UAAgBxD,YAAY,kBAA5B;IAAA,UAA8BsD,UAAU,gBAAxC;IACN,UAAMyL,aAAa,GAAGvL,YAAY,GAAGA,YAAH,GAAkBpgB,KAAI,CAAC4rB,oBAAzD;IAEAD,MAAAA,aAAa,CAAChS,UAAD,CAAb,CACGkS,IADH,CACQ,UAACC,GAAD;;;IACI,YAAA3wB,OAAO,GAAY2wB,GAAG,QAAtB;IAAA,YAAShM,KAAK,GAAKgM,GAAG,MAAtB;;IACR,YAAIA,GAAG,CAAC/L,aAAR,EAAuB;IACrB/lB,UAAAA,UAAU,CAAC;IACTgkB,YAAAA,mBAAmB,CAAC8N,GAAG,CAAC/L,aAAL,EAAoB5kB,OAApB,CAAnB;IACD,WAFS,EAEP,CAFO,CAAV;IAGD;;IACD,YAAI,CAAC2wB,GAAG,CAACnS,UAAL,IAAoBmS,GAAG,CAACnS,UAAJ,IAAkBmS,GAAG,CAACnS,UAAJ,KAAmB3Z,KAAI,CAACE,KAAL,CAAWyZ,UAAxE,EAAqF;IACnF+R,UAAAA,YAAY,GAAG/R,UAAU,KAAK,EAAf,GAAoBmG,KAAK,GAAG9f,KAAI,CAACqgB,WAAjC,GAA+CqL,YAA9D;IAEA,cAAMD,eAAe,GAAG/O,kBAAkB,CAACgP,YAAD,EAAe/R,UAAf,EAA2BiD,YAA3B,CAAlB,GACpB5c,KAAI,CAAC+rB,oBAAL,CAA0B5wB,OAA1B,EAAmC6W,IAAnC,CADoB,GAEpB7W,OAFJ;IAGA,cAAMwtB,aAAa,GAAGhP,UAAU,KAAK,EAAf,GAAoB3Z,KAAI,CAACgsB,kBAAL,CAAwB7wB,OAAxB,EAAiC6W,IAAjC,CAApB,GAA6D,EAAnF;IACA,cAAM8L,aAAa,GAAGnE,UAAU,KAAK,EAAf,GAAoBmG,KAApB,GAA4B9f,KAAI,CAACE,KAAL,CAAW4d,aAA7D;;IACA,cAAMmO,eAAe,GAAGjsB,KAAI,CAACksB,kBAAL,CAAwBT,eAAe,CAACp2B,KAAhB,CAAsB,CAAtB,EAAyB2K,KAAI,CAACqgB,WAA9B,CAAxB,CAAxB;;IAEA,cAAI8L,WAAW,GAAGlI,SAAlB;;IAEA,cAAInG,aAAa,KAAK,CAAlB,IAAuBnE,UAAU,KAAK,EAA1C,EAA8C;IAC5CwS,YAAAA,WAAW,GAAG,SAAd;IACD,WAFD,MAEO,IAAIxS,UAAU,KAAK,EAAnB,EAAuB;IAC5BwS,YAAAA,WAAW,GAAG,kBAAd;IACD,WAFM,MAEA;IACLA,YAAAA,WAAW,GAAG,iBAAd;IACD;;IAEDnsB,UAAAA,KAAI,CAACC,QAAL,uBACKD,KAAI,CAACE;IACR+jB,YAAAA,SAAS,EAAE7D,YAAY,GAAG+L,WAAH,GAAiBlI;IACxChG,YAAAA,WAAW,EAAE6N,GAAG,CAAC/L,aAAJ,IAAqB;IAClCjC,YAAAA,aAAa;IACbthB,YAAAA,OAAO,EAAE;IACT+rB,YAAAA,KAAK,EAAEmD;IACPU,YAAAA,qBAAqB,EAAEtM;IACvB3kB,YAAAA,OAAO,EAAEswB,eAAe,CAACp2B,KAAhB,CAAsB,CAAtB,EAAyB2K,KAAI,CAACqgB,WAA9B;IACTqE,YAAAA,YAAY,EAAE1S,IAAI,GAAG2W,aAAH,GAAmBjE;IACrCC,YAAAA,gBAAgB,EAAE3S,IAAI,GAAG2W,aAAH,GAAmBhE;IACzC9oB,YAAAA,QAAQ,EAAE6gB,kBAAkB,CAACgP,YAAD,EAAe/R,UAAf,EAA2BiD,YAA3B,CAAlB,GAA6D+L,aAA7D,GAA6E;IACvF3B,YAAAA,YAAY,EAAEhnB,KAAI,CAACqsB,kBAAL,CAAwBra,IAAI,GAAG2W,aAAH,GAAmBjE,YAA/C;IACd8E,YAAAA,SAAS,EACP,CAACkC,YAAD,IAAiB1Z,IAAjB,GAAwB6L,cAAY,CAAC8K,aAAD,EAAgB7K,aAAhB,EAA+BmO,eAAe,CAAC/9B,MAA/C,CAApC,GAA6Fs7B;gBAdjG;;IAgBA,cAAIkC,YAAY,IAAIxL,UAApB,EAAgC,MAAAqE,QAAQ,CAAC7T,OAAT,UAAA,iBAAA,SAAA,MAAkBoX,OAAlB;IACjC;IACF,OA9CH,WA+CS;IACL9nB,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZgkB,UAAAA,SAAS,EAAE7D,YAAY,GAAG,iBAAH,GAAuB6D,SADlC;IAEZznB,UAAAA,OAAO,EAAE,KAFG;IAGZrB,UAAAA,OAAO,EAAE;IAHG,SAAd;IAKD,OArDH;IAsDD,KA7DD;;IA+DA6E,IAAAA,sBAAA,GAAmB,UAACssB,MAAD;IACjBtsB,MAAAA,KAAI,CAACC,QAAL,uBACKD,KAAI,CAACE;IACR1D,QAAAA,OAAO,EAAE;IACT+vB,QAAAA,UAAU,EAAE;IACZ5S,QAAAA,UAAU,EAAE2S;IACZrI,QAAAA,SAAS,EAAE;YALb;IAOD,KARD;;IAUAjkB,IAAAA,0BAAA,GAAuB;IACf,UAAA1T,KAAkE0T,KAAI,CAAClP,KAAvE;IAAA,UAAE8rB,YAAY,kBAAd;IAAA,UAAgBmI,eAAe,qBAA/B;IAAA,UAAiC7W,OAAO,aAAxC;IAAA,UAA0C1Z,IAAI,UAA9C;IAAA,UAAgDL,gBAAhD;IAAA,UAAgD0H,QAAQ,mBAAG,OAA3D;IAEA,UAAApI,KAAyFuM,KAAI,CAACE,KAA9F;IAAA,UAAEykB,gBAAgB,sBAAlB;IAAA,UAAoBD,YAAY,kBAAhC;IAAA,UAAkC5G,aAAa,mBAA/C;IAAA,UAAiDyK,KAAK,WAAtD;IAAA,UAAwD/rB,OAAO,aAA/D;IAAA,UAAiEmd,UAAU,gBAA3E;IAAA,UAA6Exe,OAAO,aAApF;IAEN,UAAMqxB,YAAY,GAAG/P,iBAAiB,CAACzc,KAAI,CAAClP,KAAL,CAAWuI,IAAZ,CAAjB,GAAqC2G,KAAI,CAAClP,KAAL,CAAWuI,IAAhD,GAAuD2G,KAAI,CAACE,KAAL,CAAW7G,IAAvF;;IACA,UAAMozB,oBAAoB,GAAGzsB,KAAI,CAACksB,kBAAL,CAAwB/wB,OAAxB,EAAiCjN,MAA9D;;IAEA,UAAI0uB,YAAY,IAAImI,eAApB,EAAqC;IACnC,YAAM2H,iBAAiB,GAAGlQ,aAAa,CAACxc,KAAI,CAAClP,KAAL,CAAW+K,QAAZ,CAAb,GAAqCA,QAArC,GAAgD8oB,gBAA1E;;IAEA3kB,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZykB,UAAAA,YAAY,EAAEgI,iBADF;IAEZlD,UAAAA,SAAS,EAAE3L,cAAY,CAAC6O,iBAAD,EAAoB5O,aAApB,EAAmC2O,oBAAnC,CAFX;IAGZzF,UAAAA,YAAY,EAAEhnB,KAAI,CAACqsB,kBAAL,CAAwBK,iBAAxB;IAHF,SAAd;IAKD;;IAED,UAAIjQ,iBAAiB,CAACzc,KAAI,CAAClP,KAAL,CAAWuI,IAAZ,CAArB,EAAwC;IACtC2G,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZ5G,UAAAA,IAAI,EAAEmzB;IADM,SAAd;IAGD;;IAED,UAAIA,YAAJ,EAAkB;IAChB,YAAMG,iBAAiB,GACrBjQ,kBAAkB,CAAC6L,KAAD,EAAQ5O,UAAR,EAAoBiD,YAApB,CAAlB,IAAuD,CAACT,QAAQ,CAACnc,KAAI,CAACE,KAAL,CAAWrE,QAAZ,EAAsB6oB,YAAtB,CADlE;;IAGA1kB,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZzD,UAAAA,OAAO,EAAEmwB,iBAAiB,IAAInwB,OAArB,IAAgCmd,UAAU,KAAK,EAD5C;IAEZ4S,UAAAA,UAAU,EAAE5S,UAAU,KAAK,EAFf;IAGZA,UAAAA,UAAU,EAAE;IAHA,SAAd;;IAMA,YAAIgT,iBAAJ,EAAuB3sB,KAAI,CAACkkB,aAAL,CAAmB,KAAnB;IACxB;;IAED,UAAIhW,OAAO,IAAI,CAACse,YAAhB,EAA8B;IAC5B,YAAMzQ,GAAG,GACPa,YAAY,IAAImI,eAAhB,GACIvI,aAAa,CAACxc,KAAI,CAAClP,KAAL,CAAW+K,QAAZ,CAAb,GACEA,QADF,GAEE8oB,gBAHN,GAII3kB,KAAI,CAACE,KAAL,CAAWwkB,YALjB;IAOA,YAAMhG,MAAM,GAAG3C,GAAG,CAAC9kB,GAAJ,CAAQ,UAACskB,MAAD;IAAY,iBAAAA,MAAM,CAAClsB,KAAP;IAAY,SAAhC,CAAf;;IACA2Q,QAAAA,KAAI,CAAC4sB,eAAL,CAAqBlO,MAArB,EAA6BlqB,IAA7B;IACD;IACF,KAhDD;;IAkDAwL,IAAAA,qBAAA,GAAkB6sB,QAAQ,CAAC,GAAD,EAAM,UAACnO,MAAD,EAASlqB,IAAT;IACtB,UAAA0Z,OAAO,GAAKlO,KAAI,CAAClP,KAAL,QAAZ;;IACR,UAAIod,OAAJ,EAAa;IACXA,QAAAA,OAAO,CAACwQ,MAAD,EAASlqB,IAAT,CAAP;IACD;IACF,KALyB,CAA1B;;IAOAwL,IAAAA,wBAAA,GAAqB,UAAC8sB,aAAD,EAAiCC,YAAjC;IAAC,kCAAA,EAAA;IAAAD,QAAAA,kBAAA;;;IACpB,UAAME,cAAc,GAAGF,aAAa,CAAC5+B,MAArC;IACA,UAAI8+B,cAAc,KAAK,CAAvB,EAA0B,OAAO,EAAP;IAEpB,UAAA1gC,KAAoC0T,KAAI,CAAClP,KAAzC;IAAA,UAAEqD,sBAAF;IAAA,UAAEuH,cAAc,mBAAG,OAAnB;IAAA,UAAuBuxB,QAAQ,cAA/B;IACE,UAAAC,WAAW,GAAqBxxB,cAAc,YAA9C;IAAA,UAAajI,KAAmBiI,cAAc,WAA9C;IAAA,UAAayxB,UAAU,mBAAG,MAA1B;IACR,UAAMrP,aAAa,GAAG9d,KAAI,CAACE,KAAL,GAAaF,KAAI,CAACE,KAAL,CAAW4d,aAAxB,GAAwCiP,YAA9D;IACA,UAAIhyB,KAAK,GAAG,EAAZ;;IAEA,UAAIiyB,cAAc,IAAIG,UAAtB,EAAkC;IAChCpyB,QAAAA,KAAK,GAAG+xB,aAAa,CAClB71B,GADK,CACD,UAACskB,MAAD;IACH,iBAAOA,MAAM,CAACxgB,KAAd;IACD,SAHK,EAILqyB,IAJK,CAIA,IAJA,CAAR;IAKD,OAND,MAMO;IACLryB,QAAAA,KAAK,GAAGmyB,WAAW,GAAGA,WAAW,CAACF,cAAD,EAAiBlP,aAAjB,EAAgCgP,aAAhC,CAAd,GAAkEE,cAAc,cAAnG;IACD;;IAED,UAAIC,QAAJ,EAAcA,QAAQ,CAAClyB,KAAD,CAAR;IACd,aAAOA,KAAP;IACD,KArBD;;IAuBAiF,IAAAA,2BAAA,GAAwB,UAAC8sB,aAAD,EAAgCO,cAAhC,EAAyDC,YAAzD;IAChB,UAAAhhC,KAA+D0T,KAAI,CAACE,KAApE;IAAA,UAAE4d,aAAa,mBAAf;IAAA,UAAiB6G,gBAAgB,sBAAjC;IAAA,UAAmC9oB,QAAQ,cAA3C;IAAA,UAA6CW,OAAO,aAApD;IAAA,UAAsDnD,IAAI,UAA1D;IAEA,UAAAlF,KAAmF6L,KAAI,CAAClP,KAAxF;IAAA,UAAE8K,QAAQ,cAAV;IAAA,UAAYghB,YAAY,kBAAxB;IAAA,UAA0BmI,eAAe,qBAAzC;IAAA,UAA2CpR,aAAa,mBAAxD;IAAA,UAA0Dnf,IAAI,UAA9D;IAAA,UAAgE8rB,cAAc,oBAA9E;IAEN,UAAMiN,sBAAsB,GAAG3Q,YAAY,IAAImI,eAAhB,IAAmCuI,YAAlE;;IACA,UAAMrB,eAAe,GAAGjsB,KAAI,CAACksB,kBAAL,CAAwBlsB,KAAI,CAACE,KAAL,CAAW/E,OAAnC,CAAxB;;IACA,UAAMqyB,cAAc,GACjBV,aAAa,CAAC5+B,MAAd,KAAyB,CAAzB,IAA8B2N,QAAQ,CAAC3N,MAAT,GAAkB,CAAjD,IACC4+B,aAAa,CAACr9B,KAAd,CAAoB,UAAC8rB,MAAD;IAAY,eAAAA,MAAM,CAAC9e,QAAP;IAAe,OAA/C,KAAoD,CAACZ,QAAQ,CAACpM,KAAT,CAAe,UAAC8rB,MAAD;IAAY,eAAAA,MAAM,CAAC9e,QAAP;IAAe,OAA1C,CAFxD;;IAIAuD,MAAAA,KAAI,CAACC,QAAL,uBACKD,KAAI,CAACE;IACRwkB,QAAAA,YAAY,EAAEoI;IACd9F,QAAAA,YAAY,EAAEhnB,KAAI,CAACqsB,kBAAL,CAAwBS,aAAxB;IACdtD,QAAAA,SAAS,EAAE3L,cAAY,CAACiP,aAAD,EAAgBhP,aAAhB,EAA+BmO,eAAe,CAAC/9B,MAA/C;IACvBmL,QAAAA,IAAI,EAAEojB,iBAAiB,CAACzc,KAAI,CAAClP,KAAL,CAAWuI,IAAZ,CAAjB,IAAsCujB,YAAtC,GAAqDvjB,IAArD,GAA4D,CAACsa;IACnEgR,QAAAA,gBAAgB,EAAE4I,sBAAsB,GAAGT,aAAH,GAAmBnI;IAC3D9oB,QAAAA,QAAQ,EAAE2xB,cAAc,GAAGV,aAAH,GAAmBjxB;IAC3CW,QAAAA,OAAO,EAAEgxB,cAAc,GAAG,IAAH,GAAUhxB;YARnC;;IAWA,UAAIgxB,cAAJ,EAAoBxtB,KAAI,CAACytB,aAAL;;IAEpB,UAAI7xB,QAAQ,KAAK,CAACmpB,eAAD,IAAoBuI,YAAzB,CAAZ,EAAoD;IAClD,YAAM5O,MAAM,GAAGoO,aAAa,CAAC71B,GAAd,CAAkB,UAACC,IAAD;IAAU,iBAAAA,IAAI,CAAC7H,KAAL;IAAU,SAAtC,CAAf;IACA,YAAMq+B,cAAc,GAAGL,cAAc,GAAG3O,MAAM,CAAC,CAAD,CAAT,GAAeA,MAApD;IACA9iB,QAAAA,QAAQ,CAAC8xB,cAAD,EAAiBl5B,IAAjB,CAAR;IACD;;IAED,UAAI,CAACooB,YAAD,IAAiBjJ,aAAjB,IAAkC2M,cAAlC,IAAoD7D,iBAAiB,CAACzc,KAAI,CAAClP,KAAL,CAAWuI,IAAZ,CAAzE,EAA4F;IAC1FinB,QAAAA,cAAc,CAAC,KAAD,EAAQ,aAAR,CAAd;IACD;IACF,KAjCD;;IAmCAtgB,IAAAA,mBAAA,GAAgB,UAACub,MAAD;IACR,UAAAjvB,KAAwD0T,KAAI,CAAClP,KAA7D;IAAA,UAAE6iB,aAAa,mBAAf;IAAA,UAAiBiJ,YAAY,kBAA7B;IAAA,UAA+BvjB,IAAI,UAAnC;IAAA,UAAqCinB,cAAc,oBAAnD;IACN,UAAMqN,IAAI,GAAG3tB,KAAI,CAACE,KAAL,CAAWwkB,YAAxB;;IACA,UAAIiJ,IAAI,CAACz/B,MAAL,GAAc,CAAd,IAAmB,CAAC0uB,YAApB,IAAoC+Q,IAAI,CAAC,CAAD,CAAJ,CAAQt+B,KAAR,KAAkBksB,MAAM,CAAC,OAAD,CAAhE,EAA2E;IACzEvb,QAAAA,KAAI,CAACC,QAAL,uBACKD,KAAI,CAACE;IACR7G,UAAAA,IAAI,EAAEojB,iBAAiB,CAACpjB,IAAD,CAAjB,IAA2B,CAACsa;cAFpC;;IAIA,YAAI,CAACiJ,YAAD,IAAiBjJ,aAAjB,IAAkC2M,cAAlC,IAAoD7D,iBAAiB,CAACpjB,IAAD,CAAzE,EAAiF;IAC/EinB,UAAAA,cAAc,CAAC,KAAD,EAAQ,aAAR,CAAd;IACD;;IACD,eAAO,KAAP;IACD;;IACD,aAAO,IAAP;IACD,KAdD;;IAgBAtgB,IAAAA,oBAAA,GAAiB,UAACub,MAAD;IACT,UAAAjvB,KAA+B0T,KAAI,CAAClP,KAApC;IAAA,UAAE88B,QAAQ,cAAV;IAAA,UAAY/xB,QAAQ,cAApB;IAAA,UAAsBF,IAAI,UAA1B;;IACN,UAAI6gB,aAAa,CAAC3gB,QAAD,CAAjB,EAA6B;IAC3B,YAAI+xB,QAAQ,KAAK5tB,KAAI,CAAC6tB,aAAL,CAAmBtS,MAAnB,KAA8B5f,IAAnC,CAAZ,EAAsD;IACpDiyB,UAAAA,QAAQ,CAAC,eAAD,EAAkBrS,MAAlB,CAAR;IACD;;IACD;IACD;;IACD,UAAIvb,KAAI,CAAC6tB,aAAL,CAAmBtS,MAAnB,KAA8B5f,IAAlC,EAAwC;IACtCqE,QAAAA,KAAI,CAAC8tB,qBAAL,CAA2B,CAACvS,MAAD,CAA3B,EAAqC,IAArC;IACD;IACF,KAXD;;IAaAvb,IAAAA,cAAA,GAAW,UAACub,MAAD,EAAuB5K,OAAvB;IACH,UAAArkB,KAA0C0T,KAAI,CAAClP,KAA/C;IAAA,UAAE88B,QAAQ,cAAV;IAAA,UAAY/xB,QAAQ,cAApB;IAAA,UAAsBkpB,eAAe,qBAArC;;IAEN,UAAIvI,aAAa,CAAC3gB,QAAD,CAAb,IAA2B,CAACkpB,eAAhC,EAAiD;IAC/C,YAAI6I,QAAJ,EAAcA,QAAQ,CAACjd,OAAO,GAAG,eAAH,GAAqB,iBAA7B,EAAgD4K,MAAhD,CAAR;IACd;IACD;;IAEO,UAAAmJ,YAAY,GAAK1kB,KAAI,CAACE,KAAL,aAAjB;IAER,UAAI4sB,aAAa,GAAGpI,YAAY,CAACrvB,KAAb,EAApB;;IAEA,UAAI,CAACsb,OAAL,EAAc;IACZ,YAAMxZ,KAAK,GAAG21B,aAAa,CAACrN,SAAd,CAAwB,UAACvoB,IAAD;IAAU,iBAAAA,IAAI,CAAC7H,KAAL,KAAeksB,MAAM,CAAClsB,KAAtB;IAA2B,SAA7D,CAAd;IACAy9B,QAAAA,aAAa,CAACiB,MAAd,CAAqB52B,KAArB,EAA4B,CAA5B;IACD;;IAED21B,MAAAA,aAAa,GAAGnc,OAAO,GAAGmc,aAAa,CAAClW,MAAd,CAAqB2E,MAArB,CAAH,GAAkCuR,aAAzD;;IAEA9sB,MAAAA,KAAI,CAAC8tB,qBAAL,CAA2BhB,aAA3B,EAA0C,KAA1C;IACD,KApBD;;IAsBA9sB,IAAAA,iBAAA,GAAc,UAACwO,KAAD;IACN,UAAAliB,KAA0C0T,KAAI,CAAClP,KAA/C;IAAA,UAAE88B,QAAQ,cAAV;IAAA,UAAY/xB,QAAQ,cAApB;IAAA,UAAsBkpB,eAAe,qBAArC;IAEA,UAAA5wB,KAA4B6L,KAAI,CAACE,KAAjC;IAAA,UAAEwkB,YAAY,kBAAd;IAAA,UAAgBvpB,OAAO,aAAvB;;IAEN,UAAIqhB,aAAa,CAAC3gB,QAAD,CAAb,IAA2B,CAACkpB,eAAhC,EAAiD;IAC/C,YAAI6I,QAAJ,EAAcA,QAAQ,CAACpf,KAAK,CAAC6C,MAAN,CAAaV,OAAb,GAAuB,YAAvB,GAAsC,cAAvC,CAAR;IACd;IACD;;IAED,UAAMqd,WAAW,GAAGtJ,YAAY,CAACrvB,KAAb,EAApB;IACA,UAAM44B,qBAAqB,GAAGD,WAAW,CAACv8B,MAAZ,CAAmB,UAAC8pB,MAAD;IAAY,eAAAA,MAAM,CAAC9e,QAAP;IAAe,OAA9C,CAA9B;IAEA,UAAMqwB,aAAa,GAAGte,KAAK,CAAC6C,MAAN,CAAaV,OAAb,kBACdxV,OAAO,CAAC1J,MAAR,CAAe,UAAC8pB,MAAD;IAAY,eAAA,CAACA,MAAM,CAAC9e,QAAR;IAAgB,OAA3C,GAAiDwxB,sBADnC,GAElBA,qBAFJ;;IAIAjuB,MAAAA,KAAI,CAAC8tB,qBAAL,CAA2BhB,aAA3B,EAA0C,KAA1C;IACD,KAlBD;;IAoBA9sB,IAAAA,oBAAA,GAAiB6sB,QAAQ,CAAC7sB,KAAI,CAAClP,KAAL,CAAWo9B,sBAAZ,EAAoC;IAC3DluB,MAAAA,KAAI,CAACC,QAAL,CACE;IACEssB,QAAAA,UAAU,EAAE;IADd,OADF,EAIE;IACEvsB,QAAAA,KAAI,CAACkkB,aAAL,CAAmB,KAAnB;IACD,OANH;IAQD,KATwB,CAAzB;;IAWAlkB,IAAAA,YAAA,GAAS;IACPA,MAAAA,KAAI,CAACC,QAAL,CACE;IACEzD,QAAAA,OAAO,EAAE;IADX,OADF,EAIE;IACEwD,QAAAA,KAAI,CAACkkB,aAAL,CAAmB,KAAnB;IACD,OANH;IAQD,KATD;;IAWAlkB,IAAAA,mBAAA,GAAgB6sB,QAAQ,CAAC,GAAD,EAAM;IAAM,aAAA7sB,KAAI,CAACkkB,aAAL,CAAmB,KAAnB,CAAA;IAAyB,KAArC,CAAxB;;IAEAlkB,IAAAA,oBAAA,GAAiB;IACT,UAAA1T,KAA0D0T,KAAI,CAAClP,KAA/D;IAAA,UAAE+K,QAAQ,cAAV;IAAA,UAAYrH,IAAI,UAAhB;IAAA,UAAkBo5B,QAAQ,cAA1B;IAAA,UAA4B7I,eAAe,qBAA3C;IAAA,UAA6CnpB,QAAQ,cAArD;IACE,UAAA8oB,YAAY,GAAK1kB,KAAI,CAACE,KAAL,aAAjB;IACR,UAAM4sB,aAAa,GAAGpI,YAAY,CAACjzB,MAAb,CAAoB,UAAC8pB,MAAD;IAAY,eAAAA,MAAM,CAAC9e,QAAP;IAAe,OAA/C,CAAtB;;IAEA,UAAI+f,aAAa,CAAC3gB,QAAD,CAAb,IAA2B,CAACkpB,eAAhC,EAAiD;IAC/C,YAAI6I,QAAJ,EAAcA,QAAQ,CAAC,WAAD,CAAR;IACd;IACD;;IAED5tB,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZpE,QAAAA,QAAQ,EAAEixB,aADE;IAEZpI,QAAAA,YAAY,EAAEoI,aAFF;IAGZ9F,QAAAA,YAAY,EAAE,EAHF;IAIZxqB,QAAAA,OAAO,EAAE;IAJG,OAAd;;IAMAwD,MAAAA,KAAI,CAACytB,aAAL;;IACA,UAAI7xB,QAAQ,IAAI,CAACmpB,eAAjB,EAAkCnpB,QAAQ,CAACkxB,aAAD,EAAgBt4B,IAAhB,CAAR;IACnC,KAlBD;;IAoBAwL,IAAAA,oBAAA,GAAiB,UAAC1E,IAAD;IACP,UAAAglB,cAAc,GAAKtgB,KAAI,CAAClP,KAAL,eAAnB;;IAER,UAAIwvB,cAAc,IAAI7D,iBAAiB,CAACzc,KAAI,CAAClP,KAAL,CAAWuI,IAAZ,CAAvC,EAA0D;IACxDinB,QAAAA,cAAc,CAAC,KAAD,EAAQhlB,IAAR,CAAd;IACD;IACF,KAND;;IAQA0E,IAAAA,qBAAA,GAAkB;IACV,UAAA1T,KAAoD0T,KAAI,CAACE,KAAzD;IAAA,UAAEykB,gBAAgB,sBAAlB;IAAA,UAAoBD,YAAY,kBAAhC;IAAA,UAAkC5G,aAAa,mBAA/C;IACA,UAAA3pB,KAAwC6L,KAAI,CAAClP,KAA7C;IAAA,UAAE+K,QAAQ,cAAV;IAAA,UAAY+xB,QAAQ,cAApB;IAAA,UAAsB1f,OAAO,aAA7B;IAAA,UAA+B1Z,IAAI,UAAnC;IAEN,UAAMg4B,YAAY,GAAG/P,iBAAiB,CAACzc,KAAI,CAAClP,KAAL,CAAWuI,IAAZ,CAAjB,GAAqC2G,KAAI,CAACE,KAAL,CAAW7G,IAAhD,GAAuD,KAA5E;IACA,UAAMqlB,MAAM,GAAGiG,gBAAgB,CAAC1tB,GAAjB,CAAqB,UAACskB,MAAD;IAAY,eAAAA,MAAM,CAAClsB,KAAP;IAAY,OAA7C,CAAf;;IAEA,UAAImtB,aAAa,CAAC3gB,QAAD,CAAjB,EAA6B;IAC3B,YAAI+xB,QAAJ,EAAcA,QAAQ,CAAC,iBAAD,EAAoBjJ,gBAApB,EAAsCD,YAAtC,CAAR;;IACd1kB,QAAAA,KAAI,CAACmuB,cAAL,CAAoB,aAApB;;IACA;IACD;;IAED,UAAMpzB,KAAK,GAAGiF,KAAI,CAACqsB,kBAAL,CAAwB1H,gBAAxB,CAAd;;IACA,UAAMsH,eAAe,GAAGjsB,KAAI,CAACksB,kBAAL,CAAwBlsB,KAAI,CAACE,KAAL,CAAW/E,OAAnC,CAAxB;;IAEA6E,MAAAA,KAAI,CAACC,QAAL,uBACKD,KAAI,CAACE;IACRwkB,QAAAA,YAAY,EAAEC;IACd6E,QAAAA,SAAS,EAAE3L,cAAY,CAAC8G,gBAAD,EAAmB7G,aAAnB,EAAkCmO,eAAe,CAAC/9B,MAAlD;IACvB84B,QAAAA,YAAY,EAAEjsB;IACd1B,QAAAA,IAAI,EAAEmzB;YALR;;IAQA,UAAIte,OAAO,IAAI,CAACse,YAAhB,EAA8B;IAC5Bte,QAAAA,OAAO,CAACwQ,MAAD,EAASlqB,IAAT,CAAP;IACD;;IAEDwL,MAAAA,KAAI,CAACmuB,cAAL,CAAoB,aAApB;IACD,KA7BD;;IA+BAnuB,IAAAA,oBAAA,GAAiB;IACT,UAAA1T,KAAqC0T,KAAI,CAACE,KAA1C;IAAA,UAAEwkB,YAAY,kBAAd;IAAA,UAAgBC,gBAAgB,sBAAhC;IAEA,UAAAxwB,KAAkD6L,KAAI,CAAClP,KAAvD;IAAA,UAAE8K,QAAQ,cAAV;IAAA,UAAYC,QAAQ,cAApB;IAAA,UAAsB+xB,QAAQ,cAA9B;IAAA,UAAgC1f,OAAO,aAAvC;IAAA,UAAyC1Z,IAAI,UAA7C;IAEN,UAAMg4B,YAAY,GAAG/P,iBAAiB,CAACzc,KAAI,CAAClP,KAAL,CAAWuI,IAAZ,CAAjB,GAAqC2G,KAAI,CAACE,KAAL,CAAW7G,IAAhD,GAAuD,KAA5E;IACA,UAAMqlB,MAAM,GAAGgG,YAAY,CAACztB,GAAb,CAAiB,UAACskB,MAAD;IAAY,eAAAA,MAAM,CAAClsB,KAAP;IAAY,OAAzC,CAAf;;IAEA,UAAImtB,aAAa,CAAC3gB,QAAD,CAAjB,EAA6B;IAC3B,YAAI+xB,QAAJ,EAAcA,QAAQ,CAAC,gBAAD,EAAmBjJ,gBAAnB,EAAqCD,YAArC,CAAR;;IACd1kB,QAAAA,KAAI,CAACmuB,cAAL,CAAoB,YAApB;;IACA;IACD;;IAEDnuB,MAAAA,KAAI,CAACC,QAAL,uBACKD,KAAI,CAACE;IACRykB,QAAAA,gBAAgB,EAAED;IAClB0J,QAAAA,cAAc,EAAE;IAChB/0B,QAAAA,IAAI,EAAEmzB;YAJR;;IAOA,UAAI5wB,QAAJ,EAAc;IACZA,QAAAA,QAAQ,CAAC8iB,MAAD,EAASlqB,IAAT,CAAR;IACD;;IAED,UAAI0Z,OAAO,IAAI,CAACse,YAAhB,EAA8B;IAC5Bte,QAAAA,OAAO,CAACwQ,MAAD,EAASlqB,IAAT,CAAP;IACD;;IAEDwL,MAAAA,KAAI,CAACmuB,cAAL,CAAoB,YAApB;IACD,KA9BD;;IAgCAnuB,IAAAA,sBAAA,GAAmB,UAACquB,WAAD,EAAuB/yB,IAAvB;IACjB,UAAI0E,KAAI,CAAClP,KAAL,CAAW2L,QAAf,EAAyB;IACvB;IACD;;IAEO,UAAA6jB,cAAc,GAAKtgB,KAAI,CAAClP,KAAL,eAAnB;;IAER,UAAIwvB,cAAc,IAAI7D,iBAAiB,CAACzc,KAAI,CAAClP,KAAL,CAAWuI,IAAZ,CAAvC,EAA0D;IACxDinB,QAAAA,cAAc,CAAC+N,WAAD,EAAc/yB,IAAd,CAAd;IACA;IACD;;IAED0E,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZ5G,QAAAA,IAAI,EAAEg1B;IADM,OAAd;IAGD,KAfD;;IApfU,QAAA/hC,KAAsEwE,KAAK,SAA3E;IAAA,QAAA+K,QAAQ,mBAAG,OAAX;IAAA,QAAekxB,YAAY,GAA2Cj8B,KAAK,aAA3E;IAAA,QAA6B8rB,YAAY,GAA6B9rB,KAAK,aAA3E;IAAA,QAA2C0L,OAAO,GAAoB1L,KAAK,QAA3E;IAAA,QAAoDuI,IAAI,GAAcvI,KAAK,KAA3E;IAAA,QAA0DqK,OAAO,GAAKrK,KAAK,QAA3E;IAERkP,IAAAA,KAAI,CAACqgB,WAAL,GAAmB3vB,IAAI,CAAC8H,GAAL,CAAS,GAAT,EAAc1H,KAAK,CAACuvB,WAApB,CAAnB;IACA,QAAMvC,aAAa,GAAGiP,YAAY,GAAGA,YAAH,GAAkB5xB,OAAO,CAACjN,MAA5D;IACA,QAAMq6B,KAAK,GAAG,kBAAkBvoB,KAAI,CAAClP,KAAvB,IAAgCgtB,aAAa,GAAG9d,KAAI,CAACqgB,WAAnE;IAEA,QAAMsI,aAAa,GAAG,CAACJ,KAAD,GAASvoB,KAAI,CAACgsB,kBAAL,CAAwB7wB,OAAxB,EAAiC,IAAjC,CAAT,GAAkD,EAAxE;;IACA,QAAM8wB,eAAe,GAAGjsB,KAAI,CAACksB,kBAAL,CAAwB/wB,OAAxB,CAAxB;;IAEA6E,IAAAA,KAAI,CAACE,KAAL,GAAa;IACXqoB,MAAAA,KAAK,OADM;IAEXzK,MAAAA,aAAa,eAFF;IAGXzkB,MAAAA,IAAI,MAHO;IAIXkzB,MAAAA,UAAU,EAAE,KAJD;IAKXH,MAAAA,qBAAqB,EAAEtO,aALZ;IAMXsQ,MAAAA,cAAc,EAAE,KANL;IAOXjzB,MAAAA,OAAO,EAAEA,OAAO,IAAI,EAPT;IAQXqB,MAAAA,OAAO,EAAE+rB,KAAK,GAAG,IAAH,GAAU/rB,OARb;IASXmd,MAAAA,UAAU,EAAE,EATD;IAUX+K,MAAAA,YAAY,EAAEiE,aAVH;IAWXhE,MAAAA,gBAAgB,EAAEgE,aAXP;IAYX9sB,MAAAA,QAAQ,EAAE6gB,kBAAkB,CAAC6L,KAAD,EAAQ,EAAR,EAAY3L,YAAZ,CAAlB,GAA8C/gB,QAA9C,GAAyD,EAZxD;IAaXmrB,MAAAA,YAAY,EAAEhnB,KAAI,CAACqsB,kBAAL,CAAwB1D,aAAxB,EAAuC7K,aAAvC,CAbH;IAcX0L,MAAAA,SAAS,EAAE3L,cAAY,CAAC8K,aAAD,EAAgB7K,aAAhB,EAA+BmO,eAAe,CAAC/9B,MAA/C,CAdZ;IAeX+1B,MAAAA,SAAS,EAAE;IAfA,KAAb;;IAiBD;;IAEDzoB,EAAAA,kBAAA,kBAAA,GAAA;IACU,QAAA+sB,KAAK,GAAK,KAAKroB,KAAL,MAAV;IACR,QAAIqoB,KAAJ,EAAW,KAAKrE,aAAL,CAAmB,IAAnB;IACZ,GAHD;;IAKA1oB,EAAAA,kBAAA,mBAAA,GAAA,UAAmByN,SAAnB,EAA6CC,SAA7C;;;IACE,QAAI,CAAC,KAAKhJ,KAAL,CAAWqoB,KAAhB,EAAuB;IACf,UAAAp0B,KAAsD,KAAKrD,KAA3D;IAAA,UAAE0L,OAAO,aAAT;IAAA,UAAW4jB,YAAY,kBAAvB;IAAA,UAAyB3sB,eAAzB;IAAA,UAAyB0H,OAAO,mBAAG,OAAnC;IAAA,UAAuC+kB,UAAU,gBAAjD;IACN,UAAMuM,oBAAoB,GAAG,KAAKP,kBAAL,CAAwB/wB,OAAxB,EAAiCjN,MAA9D;;IAEA,UAAI+a,SAAS,CAACzM,OAAV,KAAsBA,OAAtB,IAAiC,CAAC4jB,YAAtC,EAAoD;IAClD,YAAIjlB,OAAO,CAACjN,MAAR,GAAiB,KAAKmyB,WAA1B,EAAuC;IACrC,eAAK6D,aAAL,CAAmB,IAAnB,EAAyB,IAAzB;IACD,SAFD,MAEO;IACL,cAAMyE,aAAa,GAAG,KAAKqD,kBAAL,CAAwB7wB,OAAxB,EAAiC,IAAjC,CAAtB;IACA,eAAK8E,QAAL,uBACK,KAAKC;IACR/E,YAAAA,OAAO;IACPqB,YAAAA,OAAO;IACPkoB,YAAAA,YAAY,EAAEiE;IACdhE,YAAAA,gBAAgB,EAAEgE;IAClB7K,YAAAA,aAAa,EAAE3iB,OAAO,CAACjN;IACvBk+B,YAAAA,qBAAqB,EAAEjxB,OAAO,CAACjN;IAC/B84B,YAAAA,YAAY,EAAE,KAAKqF,kBAAL,CAAwB1D,aAAxB;IACda,YAAAA,SAAS,EAAE3L,cAAY,CAAC8K,aAAD,EAAgB,KAAKzoB,KAAL,CAAW4d,aAA3B,EAA0C2O,oBAA1C;gBATzB;IAYA,cAAIvM,UAAJ,EAAgB,MAAAqE,QAAQ,CAAC7T,OAAT,UAAA,iBAAA,SAAA,MAAkBoX,OAAlB;IACjB;IACF;IACF;;IAED,QACE,KAAKh3B,KAAL,CAAW+K,QAAX,KAAwB0C,SAAxB,IACA0K,SAAS,CAACpN,QAAV,KAAuB,KAAK/K,KAAL,CAAW+K,QADlC,IAEAoN,SAAS,CAACzM,OAAV,KAAsB,KAAK1L,KAAL,CAAW0L,OAHnC,EAIE;IACA,UAAM6wB,cAAc,GAAG,CAAC,KAAKv8B,KAAL,CAAW8rB,YAAnC;IACA,WAAKkR,qBAAL,CAA2B,KAAKh9B,KAAL,CAAW+K,QAAtC,EAAgDwxB,cAAhD,EAAgE,IAAhE;IACD;;IAED,QAAInkB,SAAS,CAACyQ,UAAV,KAAyB,KAAKzZ,KAAL,CAAWyZ,UAAxC,EAAoD;IAClD,WAAK2U,cAAL;IACD;;IAED,QAAIrlB,SAAS,CAAC5P,IAAV,KAAmB,KAAKvI,KAAL,CAAWuI,IAA9B,IAAsC6P,SAAS,CAAC7P,IAAV,KAAmB,KAAK6G,KAAL,CAAW7G,IAAxE,EAA8E;IAC5E,UAAIojB,iBAAiB,CAAC,KAAK3rB,KAAL,CAAWuI,IAAZ,CAAjB,IAAsC,KAAKvI,KAAL,CAAWuI,IAAX,KAAoB,KAAK6G,KAAL,CAAW7G,IAAzE,EAA+E;IAC/E,WAAKk1B,oBAAL;IACD;IACF,GA5CD;;IAoeA/yB,EAAAA,kBAAA,OAAA,GAAA;IACQ,QAAAlP,KAcF,KAAK4T,KAdH;IAAA,QACJ/E,OAAO,aADH;IAAA,QAEJotB,KAAK,WAFD;IAAA,QAGJlvB,IAAI,UAHA;IAAA,QAIJsgB,UAAU,gBAJN;IAAA,QAKJ4S,UAAU,gBALN;IAAA,QAMJ/vB,OAAO,aANH;IAAA,QAOJ4vB,qBAAqB,2BAPjB;IAAA,QAQJ1H,YAAY,kBARR;IAAA,QASJ8E,SAAS,eATL;IAAA,QAUJxC,YAAY,kBAVR;IAAA,QAWJrC,gBAAgB,sBAXZ;IAAA,QAYJ1G,WAAW,iBAZP;IAAA,QAaJgG,SAAS,eAbL;IAgBA,QAAA9vB,KAAyC,KAAKrD,KAA9C;IAAA,QAAE2C,qBAAF;IAAA,QAAEspB,aAAa,mBAAG,SAAlB;IAAA,QAAwBH,YAAY,kBAApC;;IAEN,QAAMjnB,KAAuD,KAAK7E,KAAlE;IAAA,QAAQqE,sBAAR;IAAA,QAAQuG,cAAc,mBAAG,OAAzB;IAAA,mBAAA;IAAA,YAAuCY,QAAQ,cAA/C;IAAA,QAAoDK,IAAI,cAAlD,iBAAA,YAAA,YAAA;;IACN,QAAM6xB,mBAAmB,GAAGpC,qBAAqB,GAAGjxB,OAAO,CAACjN,MAA5D;IAEA,QAAM22B,kBAAkB,GAAGvoB,QAAQ,GAC/BA,QAD+B,GAE/BugB,mBAAmB,CAAClD,UAAD,EAAa6U,mBAAb,EAAkCzR,aAAlC,EAAiDH,YAAjD,CAAnB,GACA,CADA,GAEAzhB,OAAO,CAACskB,SAAR,CAAkB,UAAClE,MAAD;IAAY,aAAA,CAACA,MAAM,CAAC9e,QAAR;IAAgB,KAA9C,CAJJ;IAMA,wBACE7K,8BAAA,CAAC0yB,YAAD;IACEpG,MAAAA,WAAW,EAAE/iB;IACbopB,MAAAA,QAAQ,EAAEA;IACVK,MAAAA,gBAAgB,EAAE4J;IAClB3J,MAAAA,kBAAkB,EAAEA;IACpBO,MAAAA,cAAc,EAAE5oB;IAChB+rB,MAAAA,KAAK,EAAEA;IACPgE,MAAAA,UAAU,EAAEA;IACZzH,MAAAA,YAAY,EAAEzrB;IACdsgB,MAAAA,UAAU,EAAEA;IACZqN,MAAAA,YAAY,EAAEA;IACdtC,MAAAA,YAAY,EAAEA;IACdC,MAAAA,gBAAgB,EAAEA;IAClB9oB,MAAAA,QAAQ,EAAE,KAAKqE,KAAL,CAAWrE;IACrBopB,MAAAA,YAAY,EAAE,KAAK+C;IACnB9C,MAAAA,aAAa,EAAE,KAAK6C;IACpB5C,MAAAA,cAAc,EAAE,KAAK0C;IACrBe,MAAAA,cAAc,EAAE,KAAKA;IACrBiB,MAAAA,QAAQ,EAAE,KAAKA;IACfL,MAAAA,SAAS,EAAEA;IACXxE,MAAAA,cAAc,EAAE,KAAKyJ;IACrBvG,MAAAA,cAAc,EAAE,KAAKA;IACrBuB,MAAAA,WAAW,EAAE,KAAKA;IAClBruB,MAAAA,aAAa,EAAEM,cAAc,CAACN;IAC9B6iB,MAAAA,WAAW,EAAEA;IACbiG,MAAAA,aAAa,EAAE,KAAKwK;IACpBzK,MAAAA,SAAS,EAAEA;WACPtnB,KA3BN,CADF;IA+BD,GA3DD;;IAhhBOnB,EAAAA,qBAAA,GAAe;IACpBE,IAAAA,cAAc,EAAE,EADI;IAEpBP,IAAAA,OAAO,EAAE,EAFW;IAGpBwY,IAAAA,aAAa,EAAE,IAHK;IAIpB0M,IAAAA,WAAW,EAAE,EAJO;IAKpB6N,IAAAA,sBAAsB,EAAE;IALJ,GAAf;IA4kBT,iBAAA;IA/kBA,EAA8Bt8B,gBAAK,CAACkY;;ICpPpC,IAAM6kB,OAAO,GAAG;IACdnf,EAAAA,CAAC,EAAE,IADW;IAEdof,EAAAA,CAAC,EAAE,IAFW;IAGdC,EAAAA,CAAC,EAAE,IAHW;IAIdC,EAAAA,EAAE,EAAE,IAJU;IAKdC,EAAAA,GAAG,EAAE;IALS,CAAhB;QAQa3rB,OAAO,GAAG,SAAVA,OAAU,CAACtS,KAAD;;;IACb,MAAAiB,UAAU,GAAgDjB,KAAK,WAA/D;IAAA,MAAYgB,IAAI,GAA0ChB,KAAK,KAA/D;IAAA,MAAkByC,QAAQ,GAAgCzC,KAAK,SAA/D;IAAA,MAA4ByD,SAAS,GAAqBzD,KAAK,UAA/D;IAAA,MAAuC9E,KAAK,GAAc8E,KAAK,MAA/D;IAAA,MAAiD6L,IAAI,UAAK7L,OAA5D,aAAA,QAAA,YAAA,aAAA,SAAA,EAAE;;IAER,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtBmP,IAAAA,OAAO,EAAE;SACT9W,GAAC,cAAYwF,KAAb,GAAsBA,MACtBxF,GAAC,cAAYyF,WAAb,GAA4B,CAAC/F,KAAD,IAAU+F,YACtCzF,GAAC,WAASN,MAAV,GAAoBA,SALE,GAOxBuI,SAPwB,CAA1B;IAUA,sBACE3C,8BAAA,CAACic,MAAD;qBAAuB;SAA2BlR;IAAMpI,IAAAA,SAAS,EAAEkF;IAASqU,IAAAA,aAAa,EAAE6gB,OAAO,CAAC78B,IAAD;QAAlG,EACGyB,QADH,CADF;IAKD;IAED6P,OAAO,CAACjN,WAAR,GAAsB,SAAtB;IACAiN,OAAO,CAAC/M,YAAR,GAAuB;IACrBtE,EAAAA,UAAU,EAAE,SADS;IAErBD,EAAAA,IAAI,EAAE;IAFe,CAAvB;;ICZO,IAAMk9B,cAAY,GAAG,SAAfA,YAAe,CAACl+B,KAAD;;;IAClB,MAAAyD,SAAS,GAAwBzD,KAAK,UAAtC;IAAA,MAAW4L,QAAQ,GAAc5L,KAAK,SAAtC;IAAA,MAAwB6L,IAAI,UAAK7L,OAAnC,YAAA,YAAA,EAAE;;IAER,MAAM+L,SAAS,GAAG5I,8BAAU,WAC1B3H,GAAC,eAAD,GAAkB,MAClBA,GAAC,KAAGiI,UAAJ,GAAkBA,aAFQ,EAA5B;IAKA,sBAAO3C,8BAAA,CAACsB,IAAD;IAAMqB,IAAAA,SAAS,EAAEsI;IAAWvB,IAAAA,IAAI,EAAEoB;qBAAoB;SAAsCC,KAA5F,CAAP;IACD,CATM;AAWPqyB,kBAAY,CAAC74B,WAAb,GAA2B,cAA3B;AACA64B,kBAAY,CAAC34B,YAAb,GAA4B;IAC1BvE,EAAAA,IAAI,EAAE,EADoB;IAE1BwJ,EAAAA,IAAI,EAAE;IAFoB,CAA5B;;ICoFA,IAAMU,aAAW,GAAG;IAClB3I,EAAAA,IAAI,EAAE,EADY;IAElBD,EAAAA,OAAO,EAAE,EAFS;IAGlB6I,EAAAA,KAAK,EAAE;IAHW,CAApB;QAWagtB,KAAK,gBAAGr3B,gBAAK,CAACuK,UAAN,CAA+C,UAACrL,KAAD,EAAQmf,YAAR;;;IAEhE,MAAA9a,KAyBErE,KAAK,KAzBP;IAAA,MAAAgB,IAAI,mBAAG,cAAP;IAAA,MACAqG,KAwBErH,KAAK,KAzBP;IAAA,MACAwK,IAAI,mBAAG,WADP;IAAA,MAEAlD,KAuBEtH,KAAK,SAzBP;IAAA,MAEAy1B,QAAQ,mBAAGjrB,IAAI,KAAK,QAAT,GAAoB,GAApB,GAA0BiD,cAFrC;IAAA,MAGA0wB,YAAY,GAsBVn+B,KAAK,aAzBP;IAAA,MAIA0D,IAAI,GAqBF1D,KAAK,KAzBP;IAAA,MAKAkiB,WAAW,GAoBTliB,KAAK,YAzBP;IAAA,MAMAzB,KAAK,GAmBHyB,KAAK,MAzBP;IAAA,MAOAsG,IAAI,GAkBFtG,KAAK,KAzBP;IAAA,MAQAkwB,WAAW,GAiBTlwB,KAAK,YAzBP;IAAA,MASA2hB,QAAQ,GAgBN3hB,KAAK,SAzBP;IAAA,MAUA6C,KAAK,GAeH7C,KAAK,MAzBP;IAAA,MAWAo+B,IAAI,GAcFp+B,KAAK,KAzBP;IAAA,MAYA8K,QAAQ,GAaN9K,KAAK,SAzBP;IAAA,MAaA0J,OAAO,GAYL1J,KAAK,QAzBP;IAAA,MAcAyhB,OAAO,GAWLzhB,KAAK,QAzBP;IAAA,MAeAshB,MAAM,GAUJthB,KAAK,OAzBP;IAAA,MAgBAq+B,OAAO,GASLr+B,KAAK,QAzBP;IAAA,MAiBAohB,OAAO,GAQLphB,KAAK,QAzBP;IAAA,MAkBAs+B,UAAU,GAORt+B,KAAK,WAzBP;IAAA,MAmBAyD,SAAS,GAMPzD,KAAK,UAzBP;IAAA,MAoBAo4B,SAAS,GAKPp4B,KAAK,UAzBP;IAAA,MAqBA2L,QAAQ,GAIN3L,KAAK,SAzBP;IAAA,MAsBAu+B,QAAQ,GAGNv+B,KAAK,SAzBP;IAAA,MAuBA4L,QAAQ,GAEN5L,KAAK,SAzBP;IAAA,MAwBG6L,IAAI,UACL7L,OA1BE,OAAA,QAAA,YAAA,gBAAA,QAAA,eAAA,SAAA,QAAA,eAAA,YAAA,SAAA,QAAA,YAAA,WAAA,WAAA,UAAA,WAAA,WAAA,cAAA,aAAA,aAAA,YAAA,YAAA,YAAA,EACJ;;IA2BF,MAAMsL,GAAG,GAAGxK,gBAAK,CAAC4e,MAAN,CAA+B,IAA/B,CAAZ;;IACM,MAAAlY,KAAkC1G,gBAAK,CAAC8B,QAAN,CAAwB,CAACrE,KAAzB,CAAlC;IAAA,MAACigC,YAAY,QAAb;IAAA,MAAeC,eAAe,QAA9B;;IAEN39B,EAAAA,gBAAK,CAAC6e,mBAAN,CAA0BR,YAA1B,EAAwC;IACtC,WAAO7T,GAAG,CAACsU,OAAX;IACD,GAFD;IAIA9e,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;;;IACd,QAAIiwB,SAAJ,EAAe,MAAA9sB,GAAG,CAACsU,OAAJ,UAAA,iBAAA,SAAA,MAAaoX,MAAM;IAAE0H,MAAAA,aAAa,EAAE;IAAjB,MAAnB;IAChB,GAFD,EAEG,EAFH;IAIA,MAAMz+B,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,WAEtB3H,GAAC,QAAD,GAAW,MACXA,GAAC,YAAUwF,KAAX,GAAoBA,MACpBxF,GAAC,kBAAD,GAAqBmQ,QAAQ,IAAI4yB,UACjC/iC,GAAC,eAAD,GAAkBqH,SALI,GAOxBY,SAPwB,CAA1B;IAUA,MAAMk7B,UAAU,GAAGx7B,8BAAU,WAC3BE,GAAC,cAAD,GAAiB,MACjBA,GAAC,kBAAgBrC,KAAjB,GAA0BA,QAFC,EAA7B;IAKA,MAAM49B,aAAa,GAAGz7B,8BAAU,WAC9BR,GAAC,aAAD,GAAgB,MAChBA,GAAC,mBAAD,GAAsB,MACtBA,GAAC,yBAAD,GAA4B67B,cAC5B77B,GAAC,oBAAD,GAAuBE,SAJO,EAAhC;IAOA,MAAMg8B,cAAc,GAAG17B,8BAAU,WAC/B0B,GAAC,aAAD,GAAgB,MAChBA,GAAC,2BAAD,GAA8B,QAFC,EAAjC;IAKA,MAAMoD,OAAO,gBACXnH,8BAAA,MAAA;IACE2C,IAAAA,SAAS,EAAEo7B;IACXrzB,IAAAA,QAAQ,EAAE;OAFZ,eAIE1K,8BAAA,CAACsB,IAAD;IAAMsB,IAAAA,IAAI,EAAE;IAAQ1C,IAAAA,IAAI,EAAEkK,aAAW,CAAClK,IAAD;IAAQyC,IAAAA,SAAS,EAAC;OAAvD,CAJF,CADF;IASA,sBACE3C,8BAAA,MAAA;qBACY;IACV2C,IAAAA,SAAS,EAAEkF;IACX7C,IAAAA,KAAK,EAAE;IAAE2vB,MAAAA,QAAQ;IAAV;IACP/rB,IAAAA,OAAO,EAAE;;;uBAAM4B,GAAG,CAACsU,iDAASoX;IAAO;IACnC1yB,IAAAA,IAAI,EAAC;IACLgd,IAAAA,MAAM,EAAE;;;IAAM,aAAAmd,eAAe,CAAC,QAACnzB,GAAG,CAACsU,iDAASrhB,KAAd,CAAD,CAAf;IAAoC;OANpD,EAQG2xB,WAAW,iBACVpvB,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAC;OAAjB,EAA2BivB,WAA3B,CADF,CATJ,EAaGlvB,IAAI,KAAK,MAAT,IAAmBsF,IAAnB,iBACCxF,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEm7B;OAAhB,eACE99B,8BAAA,CAACsB,IAAD;IAAMsB,IAAAA,IAAI,EAAE4C;IAAMtF,IAAAA,IAAI,EAAEkK,aAAW,CAAClK,IAAD;IAAQwJ,IAAAA,IAAI,EAAEoB;OAAjD,CADF,CAdJ,eAkBE9K,8BAAA,QAAA;qBACY;SACNb,WACA4L;IACJP,IAAAA,GAAG,EAAEA;IACL5H,IAAAA,IAAI,EAAEA;IACN8G,IAAAA,IAAI,EAAEA;IACN2zB,IAAAA,YAAY,EAAEA;IACdjc,IAAAA,WAAW,EAAEA;IACbze,IAAAA,SAAS,EAAEk7B;IACXpgC,IAAAA,KAAK,EAAEA;IACPojB,IAAAA,QAAQ,EAAEA;IACVhW,IAAAA,QAAQ,EAAEA;IACV4yB,IAAAA,QAAQ,EAAEA;IACVzzB,IAAAA,QAAQ,EAAEA;IACVwW,IAAAA,MAAM,EAAEA;IACR5X,IAAAA,OAAO,EAAEA;IACT20B,IAAAA,OAAO,EAAEA;IACTjd,IAAAA,OAAO,EAAEA;IAKT5V,IAAAA,QAAQ,EAAE+yB,QAAQ,GAAG,CAAC,CAAJ,GAAQ9wB;QAvB5B,CAlBF,EA2CG9B,QAAQ,GACP,EADO,GAELyyB,IAAI,gBACNt9B,8BAAA,CAACoE,OAAD;IAASC,IAAAA,QAAQ,EAAC;IAASX,IAAAA,OAAO,EAAE45B;OAApC,EACGn2B,OADH,CADM,GAIJq2B,UAAU,KAAK//B,KAAK,IAAI4/B,YAAd,CAAV,GACFG,UADE,GAGF7c,OAAO,KACNljB,KAAK,IAAI4/B,YADH,CAAP,iBAEEr9B,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEo7B;OAAhB,eACE/9B,8BAAA,CAACsB,IAAD;qBACY;IACVsH,IAAAA,OAAO,EAAE,iBAACgQ,CAAD;;;IACP,YAAApO,GAAG,CAACsU,OAAJ,UAAA,iBAAA,SAAA,MAAaoX,MAAM;IAAE0H,QAAAA,aAAa,EAAE;IAAjB,QAAnB;IACAjd,MAAAA,OAAO,CAAC/H,CAAD,CAAP;IACD;IACDhW,IAAAA,IAAI,EAAE;IACN1C,IAAAA,IAAI,EAAEkK,aAAW,CAAClK,IAAD;IACjByC,IAAAA,SAAS,EAAC;OARZ,CADF,CAtDN,CADF;IAuED,CArJoB;IAuJrB00B,KAAK,CAAC9yB,WAAN,GAAoB,OAApB;IACoB5E,MAAM,CAACq+B,MAAP,CAAc3G,KAAd,EAAqB;IAAE+F,EAAAA,YAAY,EAAEA;IAAhB,CAArB;;IC1MpB,IAAMhzB,aAAW,GAAG;IAClB5I,EAAAA,OAAO,EAAE,EADS;IAElB6I,EAAAA,KAAK,EAAE;IAFW,CAApB;;IAKA,IAAM4zB,MAAM,GAAG,SAATA,MAAS,CAACr3B,GAAD,EAAkBnJ,KAAlB;IAAC,oBAAA,EAAA;IAAAmJ,IAAAA,OAAOs3B,QAAP;;;IACd,SAAA3mB,KAAK,CAAC3Q,GAAD,CAAL,IAAe,CAACA,GAAD,IAAQA,GAAG,KAAK,CAA/B,IAAqC2Q,KAAK,CAAC9Z,KAAD,CAA1C,IAAsD,CAACA,KAAD,IAAUA,KAAK,KAAK,CAA1E,GAA+EA,KAA/E,GAAuFqB,IAAI,CAACqH,GAAL,CAASS,GAAT,EAAcnJ,KAAd,CAAvF;IAA2G,CAD7G;;IAGA,IAAM0gC,MAAM,GAAG,SAATA,MAAS,CAACh4B,GAAD,EAAkB1I,KAAlB;IAAC,oBAAA,EAAA;IAAA0I,IAAAA,OAAO+3B,QAAP;;;IACd,SAAA3mB,KAAK,CAACpR,GAAD,CAAL,IAAe,CAACA,GAAD,IAAQA,GAAG,KAAK,CAA/B,IAAqCoR,KAAK,CAAC9Z,KAAD,CAA1C,IAAsD,CAACA,KAAD,IAAUA,KAAK,KAAK,CAA1E,GAA+EA,KAA/E,GAAuFqB,IAAI,CAAC8H,GAAL,CAAST,GAAT,EAAc1I,KAAd,CAAvF;IAA2G,CAD7G;;QAQa2gC,WAAW,gBAAGp+B,gBAAK,CAACuK,UAAN,CAAqD,UAACrL,KAAD,EAAQmf,YAAR;;;IAE5E,MAAA7X,KAuBEtH,KAAK,KAvBP;IAAA,MAAAgB,IAAI,mBAAG,cAAP;IAAA,MACAm9B,YAAY,GAsBVn+B,KAAK,aAvBP;IAAA,MAEA0D,IAAI,GAqBF1D,KAAK,KAvBP;IAAA,MAGAkiB,WAAW,GAoBTliB,KAAK,YAvBP;IAAA,MAIAsG,IAAI,GAmBFtG,KAAK,KAvBP;IAAA,MAKAm/B,MAAM,GAkBJn/B,KAAK,OAvBP;IAAA,MAMAo/B,MAAM,GAiBJp/B,KAAK,OAvBP;IAAA,MAOA6C,KAAK,GAgBH7C,KAAK,MAvBP;IAAA,MAQA0H,GAAG,GAeD1H,KAAK,IAvBP;IAAA,MASAiH,GAAG,GAcDjH,KAAK,IAvBP;IAAA,MAUA8K,QAAQ,GAaN9K,KAAK,SAvBP;IAAA,MAWA0J,OAAO,GAYL1J,KAAK,QAvBP;IAAA,MAYAshB,MAAM,GAWJthB,KAAK,OAvBP;IAAA,MAaAq+B,OAAO,GAULr+B,KAAK,QAvBP;IAAA,MAcAyD,SAAS,GASPzD,KAAK,UAvBP;IAAA,MAeAo4B,SAAS,GAQPp4B,KAAK,UAvBP;IAAA,MAgBA2L,QAAQ,GAON3L,KAAK,SAvBP;IAAA,MAiBAu+B,QAAQ,GAMNv+B,KAAK,SAvBP;IAAA,MAkBOq/B,SAAS,GAKdr/B,KAAK,MAvBP;IAAA,MAmBAwH,KAIExH,KAAK,iBAvBP;IAAA,MAmBAs/B,gBAAgB,mBAAG,SAnBnB;IAAA,MAoBAllB,SAAS,GAGPpa,KAAK,UAvBP;IAAA,MAqBA4L,QAAQ,GAEN5L,KAAK,SAvBP;IAAA,MAsBG6L,IAAI,UACL7L,OAxBE,OAAA,gBAAA,QAAA,eAAA,QAAA,UAAA,UAAA,SAAA,OAAA,OAAA,YAAA,WAAA,UAAA,WAAA,aAAA,aAAA,YAAA,YAAA,SAAA,oBAAA,aAAA,YAAA,EACJ;;IAyBF,MAAMsL,GAAG,GAAGxK,gBAAK,CAAC4e,MAAN,CAA+B,IAA/B,CAAZ;IACA,MAAM6f,cAAc,GAAGF,SAAS,KAAK5xB,SAArC;;IAEM,MAAA+K,KAAoB1X,gBAAK,CAAC8B,QAAN,CAAey8B,SAAS,IAAIlB,YAA5B,CAApB;IAAA,MAAC5/B,KAAK,QAAN;IAAA,MAAQihC,QAAQ,QAAhB;;IAEN1+B,EAAAA,gBAAK,CAAC6e,mBAAN,CAA0BR,YAA1B,EAAwC;IACtC,WAAO7T,GAAG,CAACsU,OAAX;IACD,GAFD;IAIA9e,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;;;IACd,QAAIiwB,SAAJ,EAAe,MAAA9sB,GAAG,CAACsU,OAAJ,UAAA,iBAAA,SAAA,MAAaoX,MAAM;IAAE0H,MAAAA,aAAa,EAAE;IAAjB,MAAnB;IAChB,GAFD,EAEG,EAFH;IAIA59B,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIk3B,SAAS,KAAK5xB,SAAlB,EAA6B;IAC3B+xB,MAAAA,QAAQ,CAACH,SAAD,CAAR;IACD;IACF,GAJD,EAIG,CAACA,SAAD,CAJH;IAMA,MAAMp/B,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,WAEtB3H,GAAC,cAAD,GAAiB,MACjBA,GAAC,kBAAgBwF,KAAjB,GAA0BA,MAC1BxF,GAAC,wBAAD,GAA2BmQ,QAAQ,IAAI4yB,UACvC/iC,GAAC,qBAAD,GAAwBqH,SALF,GAOxBY,SAPwB,CAA1B;IAUA,MAAMk7B,UAAU,GAAGx7B,8BAAU,WAC3BE,GAAC,oBAAD,GAAuB,MACvBA,GAAC,wBAAsBrC,KAAvB,GAAgCA,MAChCqC,GAAC,OAAD,GAAU,CAAC+7B,MAAD,IAAW,CAACE,gBAAZ,IAAgCt+B,IAAI,KAAK,WACnDqC,GAAC,OAAD,GAAU,CAAC+7B,MAAD,IAAW,CAACE,gBAAZ,IAAgCt+B,IAAI,KAAK,WAJxB,EAA7B;IAOA,MAAM+K,SAAS,GAAG5I,8BAAU,WAC1BR,GAAC,mBAAD,GAAsB,MACtBA,GAAC,uBAAqB3B,KAAtB,GAA+BA,QAFL,EAA5B;IAKA,MAAMy+B,WAAW,GAAGt8B,8BAAU,WAC5B0B,GAAC,OAAD,GAAU7D,IAAI,KAAK,WACnB6D,GAAC,OAAD,GAAU7D,IAAI,KAAK,aAFS,EAA9B;IAKA,MAAM0+B,WAAW,GAAGv8B,8BAAU,WAC5BkB,GAAC,YAAD,GAAerD,IAAI,KAAK,WACxBqD,GAAC,OAAD,GAAUrD,IAAI,KAAK,aAFS,EAA9B;IAKA,MAAM2+B,YAAY,GAAGx8B,8BAAU,WAC7BkE,GAAC,MAAD,GAAS,MACTA,GAAC,4BAA0BrG,KAA3B,GAAoCA,MACpCqG,GAAC,OAAD,GAAU,QAHmB,EAA/B;;IAMA,MAAMiZ,eAAe,GAAG,SAAlBA,eAAkB,CAAC5G,CAAD;IACtB,QAAI6lB,cAAJ,EAAoB;IAClBC,MAAAA,QAAQ,CAAC9lB,CAAC,CAAC6G,MAAF,CAAShiB,KAAV,CAAR;IACD;;IAED,QAAIuM,QAAJ,EAAcA,QAAQ,CAAC4O,CAAD,CAAR;IACf,GAND;;IAQA,MAAMkmB,YAAY,GAAG,SAAfA,YAAe,CAAClmB,CAAD,EAA+C+f,SAA/C;;;IACnB,QAAIoG,QAAQ,GAAGC,MAAM,CAACvhC,KAAK,IAAI,CAAV,CAArB;IACA,QAAMwhC,aAAa,GAAG,OAAAF,QAAQ,CAAClhB,QAAT,GAAoB/gB,KAApB,CAA0B,GAA1B,EAA+B,CAA/B,2CAAmCR,MAAnC,KAA6C,CAAnE;IACA,QAAMgB,OAAO,GACXq7B,SAAS,KAAK,MAAd,GACK/xB,GAAG,KAAK+F,SAAR,IAAqBoyB,QAAQ,GAAGn4B,GAAjC,IAAyCA,GAAG,KAAK+F,SADrD,GAEKxG,GAAG,KAAKwG,SAAR,IAAqBoyB,QAAQ,GAAG54B,GAAjC,IAAyCA,GAAG,KAAKwG,SAHvD;IAKA,QAAI9B,QAAQ,IAAI4yB,QAAZ,IAAwB,CAACngC,OAA7B,EAAsC;IAEtCyhC,IAAAA,QAAQ,GAAGpG,SAAS,KAAK,MAAd,GAAuBoG,QAAQ,GAAG,CAAlC,GAAsCA,QAAQ,GAAG,CAA5D;IACAA,IAAAA,QAAQ,GAAGZ,MAAM,CAACh4B,GAAD,EAAM83B,MAAM,CAACr3B,GAAD,EAAM,CAACm4B,QAAQ,CAACG,OAAT,CAAiBD,aAAjB,CAAP,CAAZ,CAAjB;IAEA,QAAIR,cAAJ,EAAoBC,QAAQ,CAACK,QAAD,CAAR;;IAEpB,QAAI/0B,QAAJ,EAAc;IACZ,UAAMm1B,cAAc,GAAGx/B,MAAM,CAACy/B,MAAP,CAAcxmB,CAAd,EAAiB;IACtC6G,QAAAA,MAAM,EAAE;IACNhiB,UAAAA,KAAK,EAAE;IAAEA,YAAAA,KAAK,EAAEshC;IAAT;IADD;IAD8B,OAAjB,CAAvB;IAKA/0B,MAAAA,QAAQ,CAACm1B,cAAD,CAAR;IACD;IACF,GAvBD;;IAyBA,MAAMxiB,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAC/D,CAAD;IACvB,YAAQA,CAAC,CAAClT,GAAV;IACE,WAAK,GAAL;IACA,WAAK,GAAL;IACEkT,QAAAA,CAAC,CAAC7P,cAAF;IACA;;IAEF,WAAK,WAAL;IACE6P,QAAAA,CAAC,CAAC7P,cAAF;IACA+1B,QAAAA,YAAY,CAAClmB,CAAD,EAAI,MAAJ,CAAZ;IACA;;IAEF,WAAK,SAAL;IACEA,QAAAA,CAAC,CAAC7P,cAAF;IACA+1B,QAAAA,YAAY,CAAClmB,CAAD,EAAI,IAAJ,CAAZ;IACA;IAdJ;IAgBD,GAjBD;;IAmBA,MAAMymB,aAAa,GAAG,SAAhBA,aAAgB,CAACzmB,CAAD;IACpB,QAAI4lB,gBAAJ,EAAsB;IACpB7hB,MAAAA,gBAAgB,CAAC/D,CAAD,CAAhB;IACD,KAFD,MAEOA,CAAC,CAAC7P,cAAF;IACR,GAJD;;IAMA,MAAMu2B,gBAAgB,GAAGp/B,IAAI,KAAK,OAAT,GAAmB,SAAnB,GAA+B,MAAxD;IAEA,sBACEF,8BAAA,MAAA;qBAAe;IAAkC2C,IAAAA,SAAS,EAAEkF;IAASyR,IAAAA,SAAS,EAAEA;IAAW9V,IAAAA,IAAI,EAAC;OAAhG,EACGgC,IAAI,iBACHxF,8BAAA,CAACsB,IAAD;qBACY;IACVsB,IAAAA,IAAI,EAAE4C;IACNkE,IAAAA,IAAI,EAAEoB;IACN5K,IAAAA,IAAI,EAAEkK,aAAW,CAAClK,IAAD;IACjBC,IAAAA,UAAU,EAAE,CAAC1C,KAAD,GAAS,UAAT,GAAsB;IAClCkF,IAAAA,SAAS,EAAEsI;OANb,CAFJ,EAWGozB,MAAM,iBACLr+B,8BAAA,CAACyC,IAAD;qBAAgB;IAAmCE,IAAAA,SAAS,EAAEg8B;IAAaz+B,IAAAA,IAAI,EAAEA;IAAMC,IAAAA,UAAU,EAAC;OAAlG,EACGk+B,MADH,CAZJ,eAgBEr+B,8BAAA,QAAA;qBACY;SACNb,WACA4L;IACJrB,IAAAA,IAAI,EAAC;IACLc,IAAAA,GAAG,EAAEA;IACL5H,IAAAA,IAAI,EAAEA;IACNy6B,IAAAA,YAAY,EAAEA;IACdjc,IAAAA,WAAW,EAAEA;IACbze,IAAAA,SAAS,EAAEk7B;IACXpgC,IAAAA,KAAK,EAAEA;IACPoN,IAAAA,QAAQ,EAAEA;IACV4yB,IAAAA,QAAQ,EAAEA;IACVzzB,IAAAA,QAAQ,EAAEwV;IACVgB,IAAAA,MAAM,EAAEA;IACR5X,IAAAA,OAAO,EAAEA;IACT20B,IAAAA,OAAO,EAAEA;IACTjkB,IAAAA,SAAS,EAAE+lB;QAjBb,CAhBF,EAmCGf,MAAM,iBACLt+B,8BAAA,CAACyC,IAAD;qBAAgB;IAAmCE,IAAAA,SAAS,EAAEi8B;IAAa1+B,IAAAA,IAAI,EAAEA;IAAMC,IAAAA,UAAU,EAAC;OAAlG,EACGm+B,MADH,CApCJ,EAwCGE,gBAAgB,iBACfx+B,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACyJ,MAAD;IACEC,IAAAA,IAAI,EAAC;IACLlE,IAAAA,IAAI,EAAC;IACLtF,IAAAA,IAAI,EAAEo/B;IACN38B,IAAAA,SAAS,EAAKk8B,YAAY;IAC1Bj2B,IAAAA,OAAO,EAAE,iBAACgQ,CAAD;IAAO,aAAAkmB,YAAY,CAAClmB,CAAD,EAAI,IAAJ,CAAZ;IAAqB;qBAC3B;OANZ,CADF,eASE5Y,8BAAA,CAACyJ,MAAD;IACEC,IAAAA,IAAI,EAAC;IACLlE,IAAAA,IAAI,EAAC;IACLtF,IAAAA,IAAI,EAAEo/B;IACN38B,IAAAA,SAAS,EAAEk8B;IACXj2B,IAAAA,OAAO,EAAE,iBAACgQ,CAAD;IAAO,aAAAkmB,YAAY,CAAClmB,CAAD,EAAI,MAAJ,CAAZ;IAAuB;qBAC7B;OANZ,CATF,CAzCJ,CADF;IA+DD,CAjN0B;IAmN3BwlB,WAAW,CAAC75B,WAAZ,GAA0B,aAA1B;;ICtUO,IAAMg7B,UAAU,GAAG,SAAbA,UAAa,CAACre,IAAD,EAA+Bse,GAA/B;IAA+C,SAAA,QAAOte,IAAI,CAACse,GAAD,CAAX,MAAqB,QAArB;IAA6B,CAA/F;IAEA,IAAMle,eAAe,GAAG,SAAlBA,eAAkB,CAACJ,IAAD,EAA+BtmB,eAA/B;IAC7B,MAAIyC,GAAG,GAAG,EAAV;;IACA,OAAK,IAAIJ,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGikB,IAAI,CAAC5kB,MAAzB,EAAiCW,CAAC,EAAlC,EAAsC;IACpCI,IAAAA,GAAG,IAAIkiC,UAAU,CAACre,IAAD,EAAOjkB,CAAP,CAAV,GAAsBrC,eAAtB,GAAwCsmB,IAAI,CAACjkB,CAAD,CAAnD;IACD;;IAED,SAAOI,GAAP;IACD,CAPM;;ICiEP,IAAM8jB,SAAS,gBAAGnhB,gBAAK,CAACuK,UAAN,CAAmD,UAACrL,KAAD,EAAQqL,UAAR;IAEjE,EAmBErL,KAAK,KAnBP;IAAA,UACOq/B,SAAS,GAkBdr/B,KAAK,MAnBP;IAAA,MAEAxE,KAiBEwE,KAAK,gBAnBP;IAAA,MAEAtE,eAAe,mBAAG,QAFlB;IAAA,MAGA2H,KAgBErD,KAAK,WAnBP;IAAA,MAGA3B,UAAU,mBAAG,OAHb;IAAA,MAIAsE,KAeE3C,KAAK,iBAnBP;IAAA,MAIAqiB,gBAAgB,mBAAG,SAJnB;IAAA,MAKA8b,YAAY,GAcVn+B,KAAK,aAnBP;IAAA,MAMAgiB,IAAI,GAaFhiB,KAAK,KAnBP;IAAA,MAOA6C,KAAK,GAYH7C,KAAK,MAnBP;IAAA,MAQA6hB,OAAO,GAWL7hB,KAAK,QAnBP;IAAA,MASA2hB,QAAQ,GAUN3hB,KAAK,SAnBP;IAAA,MAUA8K,QAAQ,GASN9K,KAAK,SAnBP;IAAA,MAWAohB,OAAO,GAQLphB,KAAK,QAnBP;IAAA,MAYAshB,MAAM,GAOJthB,KAAK,OAnBP;IAAA,MAaAq+B,OAAO,GAMLr+B,KAAK,QAnBP;IAAA,MAcAyhB,OAAO,GAKLzhB,KAAK,QAnBP;IAAA,MAeAyD,SAAS,GAIPzD,KAAK,UAnBP;IAAA,MAgBAwf,EAAE,GAGAxf,KAAK,GAnBP;IAAA,MAiBAuf,QAAQ,GAENvf,KAAK,SAnBP;IAAA,MAkBG6L,IAAI,UACL7L,OApBE,OAAA,SAAA,mBAAA,cAAA,oBAAA,gBAAA,QAAA,SAAA,WAAA,YAAA,YAAA,WAAA,UAAA,WAAA,WAAA,aAAA,MAAA,YAAA;;IAsBN,MAAMqgC,UAAU,GAAGv/B,gBAAK,CAACy/B,WAAN,CAAkB,UAACD,GAAD;IAAiB,WAAA,QAAOte,IAAI,CAACse,GAAD,CAAX,MAAqB,QAArB;IAA6B,GAAhE,EAAkE,CAACte,IAAD,CAAlE,CAAnB;IAEA,MAAMwe,oBAAoB,GAAG1/B,gBAAK,CAACy/B,WAAN,CAC3B,UAAC/1B,IAAD,EAAyBrF,QAAzB;IACE,QAAIqF,IAAI,KAAK,OAAb,EAAsB;IACpB,WAAK,IAAIzM,CAAC,GAAGoH,QAAb,EAAuBpH,CAAC,GAAGikB,IAAI,CAAC5kB,MAAhC,EAAwCW,CAAC,EAAzC,EAA6C;IAC3C,YAAIsiC,UAAU,CAACtiC,CAAD,CAAd,EAAmB,OAAOA,CAAP;IACpB;;IACD,aAAOikB,IAAI,CAAC5kB,MAAZ;IACD;;IACD,QAAIoN,IAAI,KAAK,MAAb,EAAqB;IACnB,WAAK,IAAIzM,CAAC,GAAGoH,QAAb,EAAuBpH,CAAC,IAAI,CAA5B,EAA+BA,CAAC,EAAhC,EAAoC;IAClC,YAAIsiC,UAAU,CAACtiC,CAAC,GAAG,CAAL,CAAd,EAAuB,OAAOA,CAAP;IACxB;;IACD,aAAO,CAAP;IACD;;IACD,WAAOoH,QAAP;IACD,GAf0B,EAgB3B,CAAC6c,IAAD,EAAOqe,UAAP,CAhB2B,CAA7B;IAmBA,MAAMI,mBAAmB,GAAG3/B,gBAAK,CAACy/B,WAAN,CAAkB;IAC5C,QAAMD,GAAG,GAAGE,oBAAoB,CAAC,OAAD,EAAU,CAAV,CAAhC;IACA,WAAO;IAAEE,MAAAA,KAAK,EAAEJ,GAAT;IAAcK,MAAAA,GAAG,EAAEL;IAAnB,KAAP;IACD,GAH2B,EAGzB,CAACE,oBAAD,CAHyB,CAA5B;IAKA,MAAMI,mBAAmB,GAAG9/B,gBAAK,CAACy/B,WAAN,CAC1B,UAACG,KAAD,EAAYC,GAAZ;IAAC,wBAAA,EAAA;IAAAD,MAAAA,SAAA;;;IAAW,sBAAA,EAAA;IAAAC,MAAAA,MAAc3e,IAAI,CAAC5kB,MAAL,GAAc,CAA5B;;;IAAkC,WAAAglB,eAAe,CAACJ,IAAD,EAAOtmB,eAAP,CAAf,CAAuC6I,KAAvC,CAA6Cm8B,KAA7C,EAAoDC,GAAG,GAAG,CAA1D,CAAA;IAA4D,GADhF,EAE1B,CAAC3e,IAAD,EAAOtmB,eAAP,CAF0B,CAA5B;IAKA,MAAMmlC,uBAAuB,GAAG//B,gBAAK,CAACggC,OAAN,CAAc;IAAM,WAAAF,mBAAmB,EAAnB;IAAqB,GAAzC,EAA2C,CAACA,mBAAD,CAA3C,CAAhC;IACA,MAAMG,gBAAgB,GAAGjgC,gBAAK,CAACggC,OAAN,CAAc;IAAM,WAAAL,mBAAmB,EAAnB;IAAqB,GAAzC,EAA2C,CAACA,mBAAD,CAA3C,CAAzB;IAEA,MAAMn1B,GAAG,GAAGxK,gBAAK,CAAC4e,MAAN,CAA+B,IAA/B,CAAZ;IACA,MAAMshB,OAAO,GAAGlgC,gBAAK,CAAC4e,MAAN,EAAhB;IACA,MAAMuhB,YAAY,GAAGngC,gBAAK,CAAC4e,MAAN,CAA2BqhB,gBAA3B,CAArB;IACA,MAAMG,eAAe,GAAGpgC,gBAAK,CAAC4e,MAAN,CAAqB,CAArB,CAAxB;;IAEM,MAAA7a,KAAoB/D,gBAAK,CAAC8B,QAAN,CAAuBu7B,YAAY,IAAIkB,SAAhB,IAA6B,EAApD,CAApB;IAAA,MAAC9gC,KAAK,QAAN;IAAA,MAAQihC,QAAQ,QAAhB;;IAEN1+B,EAAAA,gBAAK,CAAC6e,mBAAN,CAA0BtU,UAA1B,EAAsC;IAAM,WAAAC,GAAG,CAACsU,OAAJ;IAA+B,GAA3E;IAEA9e,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACdq3B,IAAAA,QAAQ,CAACH,SAAS,IAAI,EAAd,CAAR;IACD,GAFD,EAEG,CAACA,SAAD,CAFH;IAIAv+B,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACdg5B,IAAAA,iBAAiB,CAACD,eAAe,CAACthB,OAAjB,CAAjB;IACD,GAFD,EAEG,CAACrhB,KAAD,CAFH;IAIA,MAAM6iC,kBAAkB,GAAGtgC,gBAAK,CAACy/B,WAAN,CAAkB,UAACpiC,GAAD;IAAuB,WAAAyB,IAAI,CAACgV,GAAL,CAASzW,GAAG,CAACwiC,GAAJ,GAAUxiC,GAAG,CAACuiC,KAAvB,CAAA;IAA6B,GAAtE,EAAwE,EAAxE,CAA3B;IAEA,MAAMW,gBAAgB,GAAGvgC,gBAAK,CAACy/B,WAAN,CACvB;;;IAAM,WAAC;IACLG,MAAAA,KAAK,EAAE,OAAAp1B,GAAG,CAACsU,iDAAS0hB,cAAb,KAA+B,CADjC;IAELX,MAAAA,GAAG,EAAE,OAAAr1B,GAAG,CAACsU,iDAAS2hB,YAAb,KAA6B;IAF7B,KAAD;IAGJ,GAJqB,EAKvB,CAACj2B,GAAG,CAACsU,OAAL,CALuB,CAAzB;IAQA,MAAM4hB,kCAAkC,GAAG,CAAC,MAAD,EAAS,UAAT,EAAqB,KAArB,EAA4B,KAA5B,CAA3C;IAEA,MAAMC,eAAe,GAAG3gC,gBAAK,CAACy/B,WAAN,CACtB,UAACD,GAAD;IACE,QAAIh1B,GAAG,CAACsU,OAAR,EAAiB;IACf,UAAM8hB,EAAE,GAAGp2B,GAAG,CAACsU,OAAf;IACA,UAAM8gB,KAAK,GAAG9gC,IAAI,CAAC8H,GAAL,CAAS44B,GAAG,CAACI,KAAb,EAAoBJ,GAAG,CAACK,GAAxB,CAAd;IACA,UAAMA,GAAG,GAAG/gC,IAAI,CAACqH,GAAL,CAASq5B,GAAG,CAACI,KAAb,EAAoBJ,GAAG,CAACK,GAAxB,CAAZ;;IACA,UAAIa,kCAAkC,CAAC5lC,QAAnC,CAA4C8lC,EAAE,CAACl3B,IAA/C,CAAJ,EAA0D;IACxDk3B,QAAAA,EAAE,CAACC,iBAAH,CAAqBjB,KAArB,EAA4BC,GAA5B;IACD,OAFD,MAEO;IACL,YAAMiB,OAAO,GAAGF,EAAE,CAACl3B,IAAnB;IACAk3B,QAAAA,EAAE,CAACl3B,IAAH,GAAU,MAAV;IACAk3B,QAAAA,EAAE,CAACC,iBAAH,CAAqBjB,KAArB,EAA4BC,GAA5B;IACAe,QAAAA,EAAE,CAACl3B,IAAH,GAAUo3B,OAAV;IACD;IACF;IACF,GAfqB,EAgBtB,CAACt2B,GAAG,CAACsU,OAAL,CAhBsB,CAAxB;IAmBA,MAAMuhB,iBAAiB,GAAGrgC,gBAAK,CAACy/B,WAAN,CACxB,UAACpiC,GAAD;IAAiB,WAAAsjC,eAAe,CAAC;IAAEf,MAAAA,KAAK,EAAEviC,GAAT;IAAcwiC,MAAAA,GAAG,EAAExiC;IAAnB,KAAD,CAAf;IAAyC,GADlC,EAExB,CAACsjC,eAAD,CAFwB,CAA1B;IAKA,MAAMI,aAAa,GAAG/gC,gBAAK,CAACy/B,WAAN,CACpB,UAACuB,SAAD,EAAoBz7B,KAApB,EAAmC7H,QAAnC;IAAmC,2BAAA,EAAA;IAAAA,MAAAA,YAAA;;;IACjC,QAAIqhC,QAAQ,GAAG,EAAf;IACA,QAAMkC,QAAQ,GAAG17B,KAAK,GAAG,CAAzB;IACA,QAAI27B,WAAW,GAAGxjC,QAAlB;;IAEA,QAAI6H,KAAK,IAAI2b,IAAI,CAAC5kB,MAAlB,EAA0B;IACxB,aAAOyiC,QAAP;IACD;;IAED,QAAIrhC,QAAQ,IAAIsjC,SAAS,CAAC1kC,MAA1B,EAAkC;IAChC6jC,MAAAA,YAAY,CAACrhB,OAAb,GAAuB;IAAE8gB,QAAAA,KAAK,EAAEr6B,KAAT;IAAgBs6B,QAAAA,GAAG,EAAEt6B;IAArB,OAAvB;IACA,aAAOw5B,QAAP;IACD;;IAED,QAAM/B,CAAC,GAAG9b,IAAI,CAAC3b,KAAD,CAAd;;IACA,QAAIg6B,UAAU,CAACh6B,KAAD,CAAd,EAAuB;IACrB,UAAIy7B,SAAS,CAACtjC,QAAD,CAAT,CAAoB6rB,KAApB,CAA0ByT,CAA1B,CAAJ,EAAkC;IAChC+B,QAAAA,QAAQ,IAAIiC,SAAS,CAACtjC,QAAD,CAArB;IACD,OAFD,MAEO;IACLqhC,QAAAA,QAAQ,IAAInkC,eAAZ;IACD;;IACDsmC,MAAAA,WAAW;IACZ,KAPD,MAOO;IACLnC,MAAAA,QAAQ,IAAI/B,CAAZ;IACD;;IAED+B,IAAAA,QAAQ,IAAIgC,aAAa,CAACC,SAAD,EAAYC,QAAZ,EAAsBC,WAAtB,CAAzB;IAEA,WAAOnC,QAAP;IACD,GA9BmB,EA+BpB,CAAC7d,IAAD,EAAOtmB,eAAP,EAAwB2kC,UAAxB,CA/BoB,CAAtB;IAkCA,MAAM4B,eAAe,GAAGnhC,gBAAK,CAACy/B,WAAN,CAAkB;IACxCU,IAAAA,YAAY,CAACrhB,OAAb,GAAuByhB,gBAAgB,EAAvC;IAEAL,IAAAA,OAAO,CAACphB,OAAR,GAAkB3W,MAAM,CAAC8sB,qBAAP,CAA6BkM,eAA7B,CAAlB;IACD,GAJuB,EAIrB,CAAChB,YAAY,CAACrhB,OAAd,EAAuByhB,gBAAvB,CAJqB,CAAxB;;IAMA,MAAMa,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACJ,SAAD;IAC1B,QAAM5kC,SAAS,GAAG8C,KAAK,CAACkiB,WAAN,IAAqB,YAAvC;;IACA,QAAIhlB,SAAS,CAACK,SAAV,CAAoB,CAApB,EAAuB,CAAvB,MAA8B,MAAlC,EAA0C;IACxC,aAAOukC,SAAS,IAAIA,SAAS,CAAC,CAAD,CAAT,KAAiB5kC,SAAS,CAAC,CAAD,CAAvC,IAA8C4kC,SAAS,CAAC,CAAD,CAAT,KAAiB5kC,SAAS,CAAC,CAAD,CAA/E;IACD;;IACD,WAAO4kC,SAAS,IAAIA,SAAS,CAAC,CAAD,CAAT,KAAiB5kC,SAAS,CAAC,CAAD,CAAvC,IAA8C4kC,SAAS,CAAC,CAAD,CAAT,KAAiB5kC,SAAS,CAAC,CAAD,CAA/E;IACD,GAND;;IAQA,MAAMilC,YAAY,GAAG,SAAfA,YAAe,CAACL,SAAD,EAAoBM,WAApB;IACnB,QAAM7jC,KAAK,GAAGujC,SAAS,CAACvkC,SAAV,CAAoB,CAApB,EAAuB6kC,WAAvB,CAAd;;IACA,QAAIA,WAAW,KAAK,EAApB,EAAwB;IACtB,UAAMvjC,IAAI,GAAGN,KAAK,CAACX,KAAN,CAAY,KAAZ,CAAb;IACA,UAAMykC,QAAQ,GAAGxjC,IAAI,CAAC,CAAD,CAArB;IACA,UAAMyjC,MAAM,GAAGzjC,IAAI,CAAC,CAAD,CAAnB;IACA,aAAOqjC,mBAAmB,CAACG,QAAD,CAAnB,IAAiCH,mBAAmB,CAACI,MAAD,CAA3D;IACD;;IACD,WAAOJ,mBAAmB,CAAC3jC,KAAD,CAA1B;IACD,GATD;;IAWA,MAAM4iB,cAAc,GAAG,SAAjBA,cAAiB,CAACzH,CAAD;;;IACrBA,IAAAA,CAAC,CAAC7P,cAAF;IACA,QAAM04B,WAAW,SAAG7oB,CAAC,CAAC8oB,uDAAeC,QAAQ,OAA7C;IACA,QAAMC,UAAU,GAAGP,YAAY,CAACI,WAAD,EAAcA,WAAW,CAACnlC,MAA1B,CAA/B;IACA,QAAMulC,WAAW,GAAG5gB,OAAA,CAAyB1jB,UAAzB,EAAqCkkC,WAArC,CAApB;;IACA,QAAIG,UAAU,IAAIthB,OAAd,IAAyBuhB,WAA7B,EAA0C;IACxCvhB,MAAAA,OAAO,CAAC1H,CAAD,EAAI6oB,WAAJ,CAAP;IACA/C,MAAAA,QAAQ,CAAC+C,WAAD,CAAR;IACD;IACF,GATD;;IAWA,MAAMjiB,eAAe,GAAGxf,gBAAK,CAACy/B,WAAN,CACtB,UAAC7mB,CAAD;;;IACE,QAAMkpB,QAAQ,SAAGlpB,CAAC,CAACmpB,uDAAetkC,KAAlC;IAEA,QAAMukC,aAAa,GAAGzB,gBAAgB,EAAtC;IACA,QAAMX,KAAK,GAAG9gC,IAAI,CAAC8H,GAAL,CAASu5B,YAAY,CAACrhB,OAAb,CAAqB8gB,KAA9B,EAAqCoC,aAAa,CAACpC,KAAnD,CAAd;IACA,QAAMC,GAAG,GAAGmC,aAAa,CAACnC,GAA1B;IAEA,QAAIoC,cAAc,GAAGrC,KAArB;IACA,QAAIsC,UAAU,GAAG,EAAjB;IACA,QAAIC,UAAU,GAAG,EAAjB;IACA,QAAIC,aAAa,GAAG,CAApB;IACA,QAAIC,oBAAoB,GAAG,CAA3B;IAEAH,IAAAA,UAAU,GAAGJ,QAAQ,CAACr+B,KAAT,CAAem8B,KAAf,EAAsBC,GAAtB,CAAb;IACAsC,IAAAA,UAAU,GAAGpB,aAAa,CAACmB,UAAD,EAAatC,KAAb,CAA1B;IACA,QAAI0C,QAAQ,GAAG7kC,KAAf;;IACA,QAAI6kC,QAAQ,CAAChmC,MAAT,KAAoB,CAApB,KAA0BoiB,EAAE,KAAK,mBAAP,IAA8BA,EAAE,KAAK,mBAA/D,CAAJ,EAAyF;IACvF4jB,MAAAA,QAAQ,GAAGvC,uBAAX;IACD;;IACDsC,IAAAA,oBAAoB,GAAGF,UAAU,CAAC7lC,MAAlC;;IACA,QAAI0lC,aAAa,CAACnC,GAAd,GAAoBM,YAAY,CAACrhB,OAAb,CAAqB+gB,GAA7C,EAAkD;IAChDuC,MAAAA,aAAa,GAAGC,oBAAoB,GAAG/B,kBAAkB,CAACH,YAAY,CAACrhB,OAAd,CAArB,GAA8C,CAAlF;IACD,KAFD,MAEO,IAAIgjB,QAAQ,CAACxlC,MAAT,GAAkBgmC,QAAQ,CAAChmC,MAA/B,EAAuC;IAC5C8lC,MAAAA,aAAa,GAAGE,QAAQ,CAAChmC,MAAT,GAAkBwlC,QAAQ,CAACxlC,MAA3C;IACD;;IAED,QAAMimC,SAAS,GAAGD,QAAQ,CAACxlC,KAAT,CAAe,EAAf,CAAlB;;IACA,SAAK,IAAIG,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGolC,oBAApB,EAA0CplC,CAAC,EAA3C,EAA+C;IAC7CslC,MAAAA,SAAS,CAAC3C,KAAK,GAAG3iC,CAAT,CAAT,GAAuBklC,UAAU,CAACllC,CAAD,CAAjC;IACD;;IACD,SAAK,IAAIA,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGmlC,aAApB,EAAmCnlC,CAAC,EAApC,EAAwC;IACtC,UAAMsI,OAAK,GAAGq6B,KAAK,GAAGyC,oBAAR,GAA+BplC,CAA7C;IACAslC,MAAAA,SAAS,CAACh9B,OAAD,CAAT,GAAmBu6B,mBAAmB,CAACv6B,OAAD,EAAQA,OAAR,CAAtC;IACD;;IAED,QAAMi9B,YAAY,GAAGD,SAAS,CAAC9+B,KAAV,CAAgB,CAAhB,EAAmByd,IAAI,CAAC5kB,MAAxB,EAAgCk/B,IAAhC,CAAqC,EAArC,CAArB;;IACA,QACE2G,UAAU,KAAKvnC,eAAf,IACAunC,UAAU,KAAK,EADf,IAEA,CAACA,UAAU,CAACrnC,QAAX,CAAoBF,eAApB,CAFD,IAGAqmB,OAAA,CAAyB1jB,UAAzB,EAAqCilC,YAArC,CAJF,EAKE;IACAP,MAAAA,cAAc,IAAII,oBAAlB;IACD;;IAED,QAAMI,iBAAiB,GAAG/C,oBAAoB,CAAC0C,aAAa,GAAG,MAAH,GAAY,OAA1B,EAAmCH,cAAnC,CAA9C;;IACA,QAAIG,aAAa,KAAK,CAAlB,IAAuB,CAACD,UAAU,CAAC7lC,MAAnC,IAA6C,CAACijC,UAAU,CAAC0C,cAAD,CAAxD,IAA4EQ,iBAAiB,GAAG,CAApG,EAAuG;IACrGR,MAAAA,cAAc,GAAGQ,iBAAjB;IACAR,MAAAA,cAAc;IACdM,MAAAA,SAAS,CAACN,cAAD,CAAT,GAA4BrnC,eAA5B;IACD,KAJD,MAIO,IAAIwnC,aAAa,KAAK,CAAtB,EAAyB;IAC9BH,MAAAA,cAAc,GAAGQ,iBAAjB;IACD;;IAED,QAAM1D,QAAQ,GAAGwD,SAAS,CAAC9+B,KAAV,CAAgB,CAAhB,EAAmByd,IAAI,CAAC5kB,MAAxB,EAAgCk/B,IAAhC,CAAqC,EAArC,CAAjB;IACA4E,IAAAA,eAAe,CAACthB,OAAhB,GAA0BmjB,cAA1B;;IACA,QAAIlD,QAAQ,KAAKuD,QAAb,IAAyBrhB,OAAA,CAAyB1jB,UAAzB,EAAqCwhC,QAArC,CAA7B,EAA6E;IAC3E,UAAIgB,uBAAuB,KAAK,UAAhC,EAA4C;IAC1CrB,QAAAA,QAAQ,CAACK,QAAQ,CAACljB,WAAT,EAAD,CAAR;IACA7R,QAAAA,QAAQ,SAAR,IAAAA,QAAQ,WAAR,SAAA,GAAAA,QAAQ,CAAG4O,CAAH,EAAMmmB,QAAQ,CAACljB,WAAT,EAAN,CAAR;IACD,OAHD,MAGO;IACL6iB,QAAAA,QAAQ,CAACK,QAAD,CAAR;IACA/0B,QAAAA,QAAQ,SAAR,IAAAA,QAAQ,WAAR,SAAA,GAAAA,QAAQ,CAAG4O,CAAH,EAAMmmB,QAAN,CAAR;IACD;IACF,KARD,MAQO;IACL52B,MAAAA,MAAM,CAAC8sB,qBAAP,CAA6B;IAAM,eAAAoL,iBAAiB,CAACD,eAAe,CAACthB,OAAjB,CAAjB;IAA0C,OAA7E;IACD;IACF,GApEqB,EAqEtB,CACEqhB,YAAY,CAACrhB,OADf,EAEEvhB,UAFF,EAGEgjC,gBAHF,EAIEQ,aAJF,EAKET,kBALF,EAMER,mBANF,EAOEJ,oBAPF,EAQEH,UARF,EASEc,iBATF,EAUE3B,QAVF,EAWE10B,QAXF,CArEsB,CAAxB;IAoFA,MAAMuW,aAAa,GAAGvgB,gBAAK,CAACy/B,WAAN,CACpB,UAAC7mB,CAAD;IACE,QAAIkpB,QAAQ,GAAGlpB,CAAC,CAACmpB,aAAF,CAAgBtkC,KAA/B;;IACA,QAAI8jB,gBAAJ,EAAsB;IACpB,UAAIugB,QAAQ,KAAK/B,uBAAjB,EAA0C;IACxCrB,QAAAA,QAAQ,CAAC,EAAD,CAAR;IACAoD,QAAAA,QAAQ,GAAG,EAAX;IACD;IACF;;IAEDthB,IAAAA,MAAM,SAAN,IAAAA,MAAM,WAAN,SAAA,GAAAA,MAAM,CAAG5H,CAAH,EAAMkpB,QAAN,CAAN;IAEA,QAAI5B,OAAO,CAACphB,OAAZ,EAAqB3W,MAAM,CAACu6B,oBAAP,CAA4BxC,OAAO,CAACphB,OAApC;IACtB,GAbmB,EAcpB,CAACyC,gBAAD,EAAmB2e,OAAO,CAACphB,OAA3B,EAAoCghB,mBAApC,EAAyDpB,QAAzD,EAAmEle,MAAnE,CAdoB,CAAtB;IAiBA,MAAME,cAAc,GAAG1gB,gBAAK,CAACy/B,WAAN,CACrB,UAAC7mB,CAAD;IACEwnB,IAAAA,eAAe,CAACthB,OAAhB,GAA0BmhB,gBAAgB,CAACL,KAA3C;IACAlB,IAAAA,QAAQ,CAACqB,uBAAD,CAAR;IAEApf,IAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAG/H,CAAH,CAAP;IACD,GANoB,EAOrB,CAAC8lB,QAAD,EAAWoB,mBAAX,EAAgCO,iBAAhC,EAAmDV,mBAAnD,EAAwEhf,OAAxE,CAPqB,CAAvB;IAUA,MAAMgiB,cAAc,GAAG3iC,gBAAK,CAACy/B,WAAN,CACrB,UAAC7mB,CAAD;IACEsnB,IAAAA,OAAO,CAACphB,OAAR,GAAkB3W,MAAM,CAAC8sB,qBAAP,CAA6BkM,eAA7B,CAAlB;;IACA,QAAI,CAAC1jC,KAAL,EAAY;IACV2iC,MAAAA,eAAe,CAACthB,OAAhB,GAA0BmhB,gBAAgB,CAACL,KAA3C;IACAlB,MAAAA,QAAQ,CAACoB,mBAAmB,EAApB,CAAR;IACD;;IAEDvC,IAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAG3kB,CAAH,CAAP;IACD,GAToB,EAUrB,CAACsnB,OAAO,CAACphB,OAAT,EAAkBrhB,KAAlB,EAAyB0jC,eAAzB,EAA0CzC,QAA1C,EAAoDiC,eAApD,EAAqEpD,OAArE,CAVqB,CAAvB;IAaA,MAAM11B,OAAO,GAAG7H,gBAAK,CAACggC,OAAN,CACd;IACE,WAAA39B,8BAAU,CACR;IACE,wCAAkC;IADpC,KADQ,EAIRM,SAJQ,CAAV;IAKC,GAPW,EAQd,CAACA,SAAD,CARc,CAAhB;IAWA,MAAMigC,uBAAuB,GAAGnlC,KAAK,KAAKsiC,uBAA1C;IAEA,sBACE//B,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEkF;qBAAmB;OAAnC,eACE7H,8BAAA,CAACq3B,KAAD,eACMtsB;IACJtN,IAAAA,KAAK,EAAEA;IACPsE,IAAAA,KAAK,EAAEA;IACP8e,IAAAA,QAAQ,EAAEA;IACV0c,IAAAA,OAAO,EAAEoF;IACT34B,IAAAA,QAAQ,EAAEwV;IAKVmB,IAAAA,OAAO,EAAE,CAACiiB,uBAAD,GAA2BliB,cAA3B,GAA4C/T;IACrD6T,IAAAA,MAAM,EAAED;IACRD,IAAAA,OAAO,EAAED;IACTkX,IAAAA,YAAY,EAAE;IACd/sB,IAAAA,GAAG,EAAEA;QAfP,CADF,eAkBExK,8BAAA,CAAC6iC,QAAD;IAAUC,IAAAA,OAAO,EAAE/gC,KAAK,GAAGgf,OAAH,GAAatC;IAAU1c,IAAAA,KAAK,EAAEA;OAAtD,CAlBF,CADF;IAsBD,CAnViB,CAAlB;IAqVAof,SAAS,CAAC5c,WAAV,GAAwB,WAAxB;IAMC4c,SAA2B,CAACE,KAA5B,GAAoC;IACnCC,EAAAA,eAAe;IADoB,CAApC;QAIKyhB,CAAC,GAAG5hB;;QC/XG6hB,KAAK,GAAG,SAARA,KAAQ,CAAC9jC,KAAD;;;IACX,MAAA2hB,QAAQ,GAAwE3hB,KAAK,SAArF;IAAA,MAAU+jC,QAAQ,GAA8D/jC,KAAK,SAArF;IAAA,MAAoB0jB,SAAS,GAAmD1jB,KAAK,UAArF;IAAA,MAA+B2L,QAAQ,GAAyC3L,KAAK,SAArF;IAAA,MAAyCyC,QAAQ,GAA+BzC,KAAK,SAArF;IAAA,MAAmDyD,SAAS,GAAoBzD,KAAK,UAArF;IAAA,MAA8Do+B,IAAI,GAAcp+B,KAAK,KAArF;IAAA,MAAuE6L,IAAI,UAAK7L,OAAlF,WAAA,YAAA,aAAA,YAAA,YAAA,aAAA,QAAA,EAAE;;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMgkC,UAAU,GAAG7gC,8BAAU;IAEzB2gC,IAAAA,KAAK,EAAE;SACPtoC,GAAC,mBAAD,GAAsBkoB,WACtBloB,GAAC,kBAAD,GAAqBuoC,YAJI,GAM3BtgC,SAN2B,CAA7B;IASA,MAAMkF,OAAO,GAAGxF,8BAAU,CAAC;IACzB,kBAAc,IADW;IAEzB,uBAAmBwI;IAFM,GAAD,CAA1B;;IAKA,MAAMs4B,UAAU,GAAG,SAAbA,UAAa,CAACC,UAAD,EAAqBC,UAArB;IAAC,6BAAA,EAAA;IAAAD,MAAAA,kBAAA;;;IAClB,QAAIA,UAAJ,EAAgB;IACd,0BAAOpjC,8BAAA,OAAA;IAAM2C,QAAAA,SAAS,EAAC;yBAAoC;WAApD,CAAP;IACD;;IAED,QAAI0gC,UAAJ,EAAgB;IACd,0BACErjC,8BAAA,CAACyC,IAAD;yBAAgB;IAAmCtC,QAAAA,UAAU,EAAC;IAASwC,QAAAA,SAAS,EAAC;WAAjF,cAAA,CADF;IAKD;;IACD,WAAO,IAAP;IACD,GAbD;;IAeA,MAAM2gC,eAAe,GAAG,SAAlBA,eAAkB,CAAChG,IAAD;IACtB,wBACEt9B,8BAAA,CAACoE,OAAD;IAASV,MAAAA,OAAO,EAAE45B;SAAlB,eACEt9B,8BAAA,CAACsB,IAAD;uBACY;IACVsB,MAAAA,IAAI,EAAC;IACL1C,MAAAA,IAAI,EAAE;IACNC,MAAAA,UAAU,EAAC;IACXwC,MAAAA,SAAS,EAAC;SALZ,CADF,CADF;IAWD,GAZD;;IAcA,sBACE3C,8BAAA,MAAA;qBAAe;SAAyBb;IAAWwD,IAAAA,SAAS,EAAEugC;QAA9D,eACEljC,8BAAA,CAACic,MAAD;qBAAuB;IAA2BtZ,IAAAA,SAAS,EAAEkF;IAASqU,IAAAA,aAAa,EAAC;SAAYnR,KAAhG,EACGpJ,QADH,EAEGwhC,UAAU,CAACtiB,QAAD,EAAWoiB,QAAX,CAFb,EAGG3F,IAAI,IAAIgG,eAAe,CAAChG,IAAD,CAH1B,CADF,CADF;IASD;IAED0F,KAAK,CAACz+B,WAAN,GAAoB,OAApB;;QCvEag/B,OAAO,GAAG,SAAVA,OAAU,CAACrkC,KAAD;;;IACb,MAAA6C,KAAK,GAA2C7C,KAAK,MAArD;IAAA,MAAOskC,IAAI,GAAqCtkC,KAAK,KAArD;IAAA,MAAa0jB,SAAS,GAA0B1jB,KAAK,UAArD;IAAA,MAAwByC,QAAQ,GAAgBzC,KAAK,SAArD;IAAA,MAAkCyD,SAAS,GAAKzD,KAAK,UAArD;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtBkhC,IAAAA,OAAO,EAAE;SACT7oC,GAAC,kBAAD,GAAqB8oC,MACrB9oC,GAAC,qBAAD,GAAwBkoB,aAJF,GAMxBjgB,SANwB,CAA1B;IASA,MAAM8gC,cAAc,GAAGphC,8BAAU,WAC/BE,GAAC,eAAD,GAAkB,QADa,EAAjC;IAIA,sBACEvC,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAEkF;qBAAmB;QAAlD,EACG9F,KAAK,iBACJ/B,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE8gC;OAAhB,eACEzjC,8BAAA,CAACsB,IAAD;IAAMpB,IAAAA,IAAI,EAAE;IAAI0C,IAAAA,IAAI,EAAE;IAASzC,IAAAA,UAAU,EAAE;OAA3C,CADF,CAFJ,eAMEH,8BAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAE4B,KAAK,GAAG,aAAH,GAAmB;IAAU7B,IAAAA,IAAI,EAAC;IAAQwC,IAAAA,MAAM,EAAC;OAAxE,EAAkF,KAAGf,QAArF,CANF,CADF;IAUD;IAED4hC,OAAO,CAACh/B,WAAR,GAAsB,SAAtB;;QCfam/B,MAAM,GAAG,SAATA,MAAS,CAACxkC,KAAD;;;IAElB,MAAAmC,cAAc,GASZnC,KAAK,eATP;IAAA,MACAkC,QAAQ,GAQNlC,KAAK,SATP;IAAA,MAEA4wB,eAAe,GAOb5wB,KAAK,gBATP;IAAA,MAGAyC,QAAQ,GAMNzC,KAAK,SATP;IAAA,MAIAykC,WAAW,GAKTzkC,KAAK,YATP;IAAA,MAKAsX,aAAY,GAIVtX,KAAK,aATP;IAAA,MAMA8T,aAAY,GAGV9T,KAAK,aATP;IAAA,MAOA0J,QAAO,GAEL1J,KAAK,QATP;IAAA,MAQAyD,SAAS,GACPzD,KAAK,UATP;IAWF,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM0kC,WAAW,GAAGvhC,8BAAU,WAE1B3H,GAAC,SAAD,GAAY,QAFc,GAI5BiI,SAJ4B,CAA9B;IAOA,MAAMmZ,MAAM,GAAG;IACb+nB,IAAAA,UAAU,EAAE,WAASxiC,cAAT,MADC;IAEbyB,IAAAA,MAAM,EAAK1B,QAAQ,OAFN;IAGb2B,IAAAA,KAAK,EAAK3B,QAAQ;IAHL,GAAf;IAQA,sBACEpB,8BAAA,MAAA,eACMb;IACJwD,IAAAA,SAAS,EAAEihC;IACXh7B,IAAAA,OAAO,EAAE,iBAACgQ,CAAD;IAAO,aAAAhQ,QAAO,IAAIA,QAAO,CAACgQ,CAAD,CAAlB;IAAqB;IACrCpC,IAAAA,YAAY,EAAE,sBAACoC,CAAD;IAAO,aAAApC,aAAY,IAAIA,aAAY,CAACoC,CAAD,CAA5B;IAA+B;IACpD5F,IAAAA,YAAY,EAAE,sBAAC4F,CAAD;IAAO,aAAA5F,aAAY,IAAIA,aAAY,CAAC4F,CAAD,CAA5B;IAA+B;QALtD,eAQE5Y,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAC;IAAcqC,IAAAA,KAAK,EAAE8W;OAArC,CARF,eASE9b,8BAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAE2vB;IAAiBptB,IAAAA,MAAM,EAAEihC;OAA3C,EACGhiC,QADH,CATF,CADF;IAeD;IAED+hC,MAAM,CAACn/B,WAAP,GAAqB,QAArB;IACAm/B,MAAM,CAACj/B,YAAP,GAAsB;IACpBpD,EAAAA,cAAc,EAAE,SADI;IAEpBD,EAAAA,QAAQ,EAAE;IAFU,CAAtB;;IC9EO,IAAM0iC,QAAQ,GAAG,SAAXA,QAAW,CAAC5kC,KAAD;;;IACd,MAAAyD,SAAS,GAAkCzD,KAAK,UAAhD;IAAA,MAAW8K,QAAQ,GAAwB9K,KAAK,SAAhD;IAAA,MAAqB6kC,OAAO,GAAe7kC,KAAK,QAAhD;IAAA,MAA8ByC,QAAQ,GAAKzC,KAAK,SAAhD;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM8kC,aAAa,GAAG3hC,8BAAU,WAE5B3H,GAAC,WAAD,GAAc,QAFc,GAI9BiI,SAJ8B,CAAhC;IAOA,sBACE3C,8BAAA,MAAA;qBAAe;SAA4Bb;IAAWwD,IAAAA,SAAS,EAAEqhC;QAAjE,eAGEhkC,8BAAA,MAAA;qBACY;IACV4I,IAAAA,OAAO,EAAE;IAAM,aAAAoB,QAAQ,CAAC,MAAD,CAAR;IAAgB;IAC/BwM,IAAAA,YAAY,EAAE;IAAM,aAAA,CAACutB,OAAD,IAAY/5B,QAAQ,CAAC,OAAD,CAApB;IAA6B;IACjDgJ,IAAAA,YAAY,EAAE;IAAM,aAAA,CAAC+wB,OAAD,IAAY/5B,QAAQ,CAAC,SAAD,CAApB;IAA+B;OAJrD,EAOGrI,QAPH,CAHF,CADF;IAeD,CA3BM;IA6BPmiC,QAAQ,CAACv/B,WAAT,GAAuB,UAAvB;;QCfa0/B,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAC/kC,KAAD;;;IACtB,MAAAkiB,WAAW,GAAwDliB,KAAK,YAAxE;IAAA,MAAaglC,eAAe,GAAuChlC,KAAK,gBAAxE;IAAA,MAA8ByD,SAAS,GAA4BzD,KAAK,UAAxE;IAAA,MAAyCilC,qBAAqB,GAAKjlC,KAAK,sBAAxE;;IAEA,MAAUklC,gBAAgB,GAAwCF,eAAe,SAAjF;IAAA,MAAqCG,eAAe,GAAcH,eAAe,QAAjF;IAAA,MAAyDn5B,IAAI,UAAKm5B,iBAApE,WAAA,WAAA,EAAE;;IAEF,MAAAngC,KAAoB/D,gBAAK,CAAC8B,QAAN,CAAesf,WAAf,CAApB;IAAA,MAACjY,KAAK,QAAN;IAAA,MAAQm7B,QAAQ,QAAhB;;IACA,MAAA/gC,KAAwBvD,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAxB;IAAA,MAACiiC,OAAO,QAAR;IAAA,MAAUQ,UAAU,QAApB;;IACA,MAAAh+B,KAAoCvG,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAApC;IAAA,MAAC0iC,aAAa,QAAd;IAAA,MAAgBC,gBAAgB,QAAhC;;IAEN,MAAMC,SAAS,GAAGriC,8BAAU,WAExB3H,GAAC,mBAAD,GAAsB,QAFE,GAI1BiI,SAJ0B,CAA5B;IAOA,MAAMgiC,gBAAgB,GAAGtiC,8BAAU,WACjCE,GAAC,2BAAD,GAA8B,MAC9BA,GAAC,SAAD,GAAYiiC,iBAFqB,EAAnC;IAKA,MAAMI,qBAAqB,GAAGviC,8BAAU,WACtCR,GAAC,SAAD,GAAY,CAAC2iC,iBADyB,EAAxC;IAIA,MAAMrlC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;;IAEA,MAAMm8B,QAAQ,GAAG,SAAXA,QAAW,CAACwJ,YAAD;IACfP,IAAAA,QAAQ,CAACO,YAAD,CAAR;IACD,GAFD;;IAIA,MAAMrlB,eAAe,GAAG,SAAlBA,eAAkB,CAACslB,SAAD;IACtB,YAAQA,SAAR;IACE,WAAK,MAAL;IACEP,QAAAA,UAAU,CAAC,IAAD,CAAV;IACAE,QAAAA,gBAAgB,CAAC,IAAD,CAAhB;IACA;;IACF,WAAK,OAAL;IACEA,QAAAA,gBAAgB,CAAC,IAAD,CAAhB;IACA;;IACF,WAAK,SAAL;IACEA,QAAAA,gBAAgB,CAAC,KAAD,CAAhB;IATJ;IAWD,GAZD;;IAcA,MAAMz6B,QAAQ,GAAG,SAAXA,QAAW,CAACvM,KAAD;IACf8mC,IAAAA,UAAU,CAAC,KAAD,CAAV;IACAE,IAAAA,gBAAgB,CAAC,KAAD,CAAhB;IACA,QAAIL,gBAAJ,EAAsBA,gBAAgB,CAAC3mC,KAAD,CAAhB;IACvB,GAJD;;IAMA,MAAM6e,OAAO,GAAG,SAAVA,OAAU,CAACrS,QAAD;IACds6B,IAAAA,UAAU,CAAC,KAAD,CAAV;IACAE,IAAAA,gBAAgB,CAAC,KAAD,CAAhB;IACA,QAAIJ,eAAJ,EAAqBA,eAAe,CAACp6B,QAAD,CAAf;IACtB,GAJD;;IAMA,MAAM86B,eAAe,GAAG,SAAlBA,eAAkB,CAACC,cAAD;IACtB,QAAIb,qBAAJ,EAA2B,OAAOA,qBAAqB,CAACa,cAAD,CAA5B;IAE3B,WAAOA,cAAP;IACD,GAJD;;IAMA,sBACEhlC,8BAAA,MAAA;qBAAe;SAAoCb;IAAWwD,IAAAA,SAAS,EAAE+hC;QAAzE,eACE1kC,8BAAA,CAAC8jC,QAAD;IAAU95B,IAAAA,QAAQ,EAAEwV;IAAiBukB,IAAAA,OAAO,EAAEA;OAA9C,eACE/jC,8BAAA,CAAC4J,QAAD;IACEwX,IAAAA,WAAW,EAAEA;IACbpX,IAAAA,QAAQ,EAAEA;IACVqxB,IAAAA,QAAQ,EAAEA;IACV/e,IAAAA,OAAO,EAAEA;IACT3Z,IAAAA,SAAS,EAAEiiC;qBACD;SACN75B,KAPN,CADF,eAUE/K,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEgiC;qBAA4B;OAA5C,EACGI,eAAe,CAAC57B,KAAK,IAAIiY,WAAV,CADlB,CAVF,CADF,CADF;IAkBD;IAED6iB,gBAAgB,CAACx/B,YAAjB,GAAgC;IAC9B2c,EAAAA,WAAW,EAAE,EADiB;IAE9B8iB,EAAAA,eAAe,EAAE;IAFa,CAAhC;;QCnDaj7B,IAAI,GAAG,SAAPA,IAAO,CAAC/J,KAAD;;;IACV,MAAAyC,QAAQ,GAAqDzC,KAAK,SAAlE;IAAA,MAAUyD,SAAS,GAA0CzD,KAAK,UAAlE;IAAA,MAAqBiB,UAAU,GAA8BjB,KAAK,WAAlE;IAAA,MAAiCgB,IAAI,GAAwBhB,KAAK,KAAlE;IAAA,MAAuC2L,QAAQ,GAAc3L,KAAK,SAAlE;IAAA,MAAoD6L,IAAI,UAAK7L,OAA/D,WAAA,aAAA,cAAA,QAAA,YAAA,EAAE;;IAER,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtB4G,IAAAA,IAAI,EAAE;SACNvO,GAAC,WAASwF,KAAV,GAAmBA,MACnBxF,GAAC,WAASyF,WAAV,GAAyBA,YACzBzF,GAAC,WAASyF,UAAT,eAAD,GAAkC0K,YALZ,GAOxBlI,SAPwB,CAA1B;IAUA,sBACE3C,8BAAA,CAACic,MAAD;qBACY;IACVtZ,IAAAA,SAAS,EAAEkF;IACXqU,IAAAA,aAAa,EAAC;IACdxR,IAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQ;SACtBE,KALN,EAOGpJ,QAPH,CADF;IAWD;IAEDsH,IAAI,CAAC1E,WAAL,GAAmB,MAAnB;IAEA0E,IAAI,CAACxE,YAAL,GAAoB;IAClBtE,EAAAA,UAAU,EAAE,SADM;IAElBD,EAAAA,IAAI,EAAE,SAFY;IAGlB2K,EAAAA,QAAQ,EAAE;IAHQ,CAApB;;IC9EA,IAAMo6B,aAAW,GAAG;IAClBnkC,EAAAA,OAAO,EAAE,cADS;IAElBw8B,EAAAA,IAAI,EAAE,MAFY;IAGlBz8B,EAAAA,OAAO,EAAE,SAHS;IAIlBH,EAAAA,KAAK,EAAE;IAJW,CAApB;QAiCawkC,OAAO,GAAG,SAAVA,OAAU,CAAChmC,KAAD;;;IACb,MAAAimC,OAAO,GAAuBjmC,KAAK,QAAnC;IAAA,MAASkmC,KAAK,GAAgBlmC,KAAK,MAAnC;IAAA,MAAgByD,SAAS,GAAKzD,KAAK,UAAnC;IACF,MAAAiB,UAAU,GAAKjB,KAAK,WAApB;IACNiB,EAAAA,UAAU,GAAGA,UAAU,KAAK,SAAf,GAA2B,MAA3B,GAAoCA,UAAjD;IAEA,MAAMhB,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMmmC,YAAY,GAAGhjC,8BAAU,WAE3B3H,GAAC,UAAD,GAAa,MACbA,GAAC,cAAYyF,WAAb,GAA4BA,cAHD,GAK7BwC,SAL6B,CAA/B;IAQA,MAAM2iC,SAAS,GAAGjjC,8BAAU,WAC1BE,GAAC,eAAD,GAAkB,MAClBA,GAAC,mBAAiBpC,WAAlB,GAAiCA,YACjCoC,GAAC,0BAAD,GAA6B6iC,SAHH,EAA5B;IAMA,MAAMG,UAAU,GAAGljC,8BAAU,WAC3BR,GAAC,kBAAD,GAAqB,MACrBA,GAAC,sBAAoB1B,WAArB,GAAoCA,cAFT,EAA7B;IAKA,MAAMqlC,gBAAgB,GAAGnjC,8BAAU,WACjC0B,GAAC,eAAD,GAAkB,MAClBA,GAAC,mBAAiB5D,WAAlB,GAAiCA,cAFA,EAAnC;;IAKA,MAAMslC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,WAAD,EAAsB/jC,QAAtB;IACxB,QAAI+jC,WAAW,IAAI,OAAO/jC,QAAP,KAAoB,QAAvC,EAAiD;IAC/C,0BACE3B,8BAAA,CAACyC,IAAD;yBAAgB;IAAoCE,QAAAA,SAAS,EAAE6iC;WAA/D,EACGE,WAAW,KAAK,OAAO/jC,QAAP,KAAoB,QAApB,GAA+BA,QAA/B,GAA0C,EAA/C,CADd,CADF;IAKD;;IAED,QAAIA,QAAJ,EAAc;IACZ,0BACE3B,8BAAA,MAAA;yBAAe;IAAoC2C,QAAAA,SAAS,EAAC;WAA7D,EACGhB,QADH,CADF;IAKD;;IAED,WAAO,IAAP;IACD,GAlBD;;IAoBA,sBACE3B,8BAAA,MAAA;qBAAe;SAA2Bb;IAAWwD,IAAAA,SAAS,EAAE0iC;QAAhE,eACErlC,8BAAA,CAACsB,IAAD;qBACY;IACVsB,IAAAA,IAAI,EAAEqiC,aAAW,CAAC9kC,UAAD;IACjBA,IAAAA,UAAU,EAAEA;IACZwC,IAAAA,SAAS,EAAE2iC;OAJb,CADF,eAOEtlC,8BAAA,MAAA,MAAA,EACGolC,KAAK,iBACJplC,8BAAA,CAACwR,OAAD;qBAAmB;IAA8BtR,IAAAA,IAAI,EAAC;IAAIyC,IAAAA,SAAS,EAAE4iC;OAArE,EACGH,KADH,CAFJ,EAMGK,iBAAiB,CAACvmC,KAAK,CAACwmC,WAAP,EAAoBxmC,KAAK,CAACyC,QAA1B,CANpB,EAOGwjC,OAAO,iBACNnlC,8BAAA,MAAA;qBAAe;IAAgC2C,IAAAA,SAAS,EAAC;OAAzD,EACGwiC,OADH,CARJ,CAPF,CADF;IAuBD;IAEDD,OAAO,CAAC3gC,WAAR,GAAsB,SAAtB;IACA2gC,OAAO,CAACzgC,YAAR,GAAuB;IACrBtE,EAAAA,UAAU,EAAE,MADS;IAErBulC,EAAAA,WAAW,EAAE;IAFQ,CAAvB;;ICxGO,IAAMC,IAAI,GAAG,SAAPA,IAAO,CAACzmC,KAAD;IACV,MAAAiK,KAAK,GAA2BjK,KAAK,MAArC;IAAA,MAAOsG,IAAI,GAAqBtG,KAAK,KAArC;IAAA,MAAagB,IAAI,GAAehB,KAAK,KAArC;IAAA,MAAmB4L,QAAQ,GAAK5L,KAAK,SAArC;IAER,sBACEc,8BAAA,OAAA;qBAAgB;IAA8B2C,IAAAA,SAAS,EAAE;OAAzD,EACG6C,IAAI,iBACHxF,8BAAA,CAACsB,IAAD;qBACY;IACVsB,IAAAA,IAAI,EAAE4C;IACNrF,IAAAA,UAAU,EAAC;IACXwC,IAAAA,SAAS,EAAE;IACX+G,IAAAA,IAAI,EAAEoB;IACN5K,IAAAA,IAAI,EAAEA,IAAI,KAAK,SAAT,GAAqB,EAArB,GAA0B;OANlC,CAFJ,eAWEF,8BAAA,CAACyC,IAAD;IAAMvC,IAAAA,IAAI,EAAEA;qBAAgB;IAAmCC,IAAAA,UAAU,EAAC;OAA1E,EACGgJ,KADH,CAXF,CADF;IAiBD,CApBM;IAsBPw8B,IAAI,CAACphC,WAAL,GAAmB,MAAnB;;QCkBayrB,QAAQ,GAAG,SAAXA,QAAW,CAAC9wB,KAAD;;;IACd,MAAAoH,IAAI,GAAiCpH,KAAK,KAA1C;IAAA,MAAM6wB,SAAS,GAAsB7wB,KAAK,UAA1C;IAAA,MAAiByD,SAAS,GAAWzD,KAAK,UAA1C;IAAA,MAA4BgB,IAAI,GAAKhB,KAAK,KAA1C;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM0mC,SAAS,GAAGvjC,8BAAU,WAExB3H,GAAC,WAAD,GAAc,QAFU,GAI1BiI,SAJ0B,CAA5B;IAOA,MAAMkjC,cAAc,GAAGxjC,8BAAU,WAC/BE,GAAC,qBAAD,GAAwB,QADO,EAAjC;IAIA,MAAMujC,kBAAkB,GAAGzjC,8BAAU,WACnCR,GAAC,qBAAD,GAAwB,MACxBA,GAAC,2BAAD,GAA8B,QAFK,EAArC;IAKA,sBACE7B,8BAAA,MAAA;qBAAe;SAA4Bb;IAAWwD,IAAAA,SAAS,EAAEijC;QAAjE,EACG7V,SAAS,iBACR/vB,8BAAA,CAACsB,IAAD;qBACY;IACVsB,IAAAA,IAAI,EAAC;IACL1C,IAAAA,IAAI,EAAE;IACNyC,IAAAA,SAAS,EAAEmjC;IACX3lC,IAAAA,UAAU,EAAC;OALb,CAFJ,EAWGmG,IAAI,CAACjB,GAAL,CAAS,UAACC,IAAD,EAAOU,GAAP;IACA,QAAAtL,KAA+B4K,IAAI,MAAnC;IAAA,QAAA6D,KAAK,mBAAG,OAAR;IAAA,QAAY3D,IAAI,GAAeF,IAAI,KAAnC;IAAA,QAAkBwF,QAAQ,GAAKxF,IAAI,SAAnC;IACR,QAAMygC,cAAc,GAAG//B,GAAG,KAAKM,IAAI,CAAChK,MAAL,GAAc,CAA7C;IAEA,wBACE0D,8BAAA,OAAA;IAAM0F,MAAAA,GAAG,EAAEM;IAAKrD,MAAAA,SAAS,EAAC;SAA1B,eACE3C,8BAAA,CAAC2lC,IAAD;IAAMzlC,MAAAA,IAAI,EAAEA;IAAMiJ,MAAAA,KAAK,EAAEA;IAAO3D,MAAAA,IAAI,EAAEA;IAAMsF,MAAAA,QAAQ,EAAEA;SAAtD,CADF,EAEGi7B,cAAc,iBACb/lC,8BAAA,CAACsB,IAAD;uBACY;IACVsB,MAAAA,IAAI,EAAC;IACL1C,MAAAA,IAAI,EAAE;IACNyC,MAAAA,SAAS,EAAEkjC;IACX1lC,MAAAA,UAAU,EAAC;SALb,CAHJ,CADF;IAcD,GAlBA,CAXH,CADF;IAiCD;IAED6vB,QAAQ,CAACzrB,WAAT,GAAuB,UAAvB;IAEAyrB,QAAQ,CAACvrB,YAAT,GAAwB;IACtBwrB,EAAAA,mBAAmB,EAAE,UADC;IAEtB5uB,EAAAA,cAAc,EAAE,QAFM;IAGtByuB,EAAAA,eAAe,EAAE,QAHK;IAItB5vB,EAAAA,IAAI,EAAE;IAJgB,CAAxB;;ICpGO,IAAM8lC,UAAU,GAAG,EAAnB;IAEA,IAAMC,WAAW,GAAG,EAApB;;ICZA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IAC9B,SAAU,CAACA,KAAK,GAAG,GAAT,EAAcjH,OAAd,CAAsB,CAAtB,OAAV;IACD,CAFM;IAIA,IAAMkH,kBAAkB,GAAG,SAArBA,kBAAqB,CAAC3oC,KAAD;IAChC,MAAI,CAAC4oC,QAAQ,CAAC5oC,KAAD,CAAb,EAAsB,OAAO,CAAP;;IAEtB,MAAIqB,IAAI,CAACC,KAAL,CAAWtB,KAAX,MAAsBA,KAA1B,EAAiC;IAC/B,QAAM6oC,UAAU,GAAG7oC,KAAK,CAACogB,QAAN,GAAiB/gB,KAAjB,CAAuB,GAAvB,CAAnB;IACA,WAAOwpC,UAAU,CAAC,CAAD,CAAV,CAAchqC,MAAd,IAAwB,CAA/B;IACD;;IAED,SAAO,CAAP;IACD,CATM;IAWA,IAAMiqC,WAAW,GAAG,SAAdA,WAAc,CAAClc,CAAD,EAAYC,CAAZ;IACzB,MAAMkc,SAAS,GAAG,OAAlB;IACA,SAAO1nC,IAAI,CAACgV,GAAL,CAASuW,CAAC,GAAGC,CAAb,KAAmBkc,SAA1B;IACD,CAHM;IAKA,IAAMC,KAAK,GAAG,SAARA,KAAQ,CAAChpC,KAAD,EAAgBmJ,GAAhB,EAA6BT,GAA7B;IACnB,MAAI1I,KAAK,IAAI,IAAb,EAAmB;IACjB,WAAOA,KAAP;IACD;;IAED,SAAOqB,IAAI,CAAC8H,GAAL,CAAS9H,IAAI,CAACqH,GAAL,CAAS1I,KAAT,EAAgBmJ,GAAhB,CAAT,EAA+BT,GAA/B,CAAP;IACD,CANM;IAQA,IAAMugC,WAAW,GAAG,SAAdA,WAAc,CAACC,SAAD,EAAsBC,SAAtB;IACzB,MAAID,SAAS,CAACrqC,MAAV,KAAqBqqC,SAAS,CAACrqC,MAAnC,EAA2C;IAE3C,SAAOsqC,SAAS,CAAC/oC,KAAV,CAAgB,UAACJ,KAAD,EAAQ8H,KAAR;IAAkB,WAAA9H,KAAK,KAAKkpC,SAAS,CAACphC,KAAD,CAAnB;IAA0B,GAA5D,CAAP;IACD,CAJM;aAMSshC,OAAU/Z,QAAaga;IACrC,MAAIha,MAAM,CAACxwB,MAAP,KAAkB,CAAtB,EAAyB;IACvB,WAAOqQ,SAAP;IACD;;IAED,MAAIo6B,QAAQ,GAAGja,MAAM,CAAC,CAAD,CAArB;IACA,MAAIka,MAAM,GAAGF,KAAK,CAACC,QAAD,CAAlB;;IAEA,OAAK,IAAIxhC,KAAK,GAAG,CAAjB,EAAoBA,KAAK,GAAGunB,MAAM,CAACxwB,MAAnC,EAA2CiJ,KAAK,EAAhD,EAAoD;IAClD,QAAM9H,KAAK,GAAGqvB,MAAM,CAACvnB,KAAD,CAApB;IACA,QAAM0hC,GAAG,GAAGH,KAAK,CAACrpC,KAAD,CAAjB;;IACA,QAAIwpC,GAAG,GAAGD,MAAV,EAAkB;IAChBD,MAAAA,QAAQ,GAAGtpC,KAAX;IACAupC,MAAAA,MAAM,GAAGC,GAAT;IACD;IACF;;IAED,SAAOF,QAAP;IACD;aAEeG,WAAcpa,QAAaiM,YAAoBC,UAAkBmO;IAC/E,MAAMC,GAAG,GAAGrO,UAAU,GAAGC,QAAb,GAAwB,CAAxB,GAA4B,CAAC,CAAzC;;IACA,OAAK,IAAIzzB,KAAK,GAAGwzB,UAAjB,EAA6BxzB,KAAK,KAAKyzB,QAAQ,GAAGoO,GAAlD,EAAuD7hC,KAAK,IAAI6hC,GAAhE,EAAqE;IACnEta,IAAAA,MAAM,CAACvnB,KAAD,CAAN,GAAgB4hC,SAAhB;IACD;IACF;aAEeE,gBAAgBhc;IAC9B,SAAOA,OAAO,IAAI,IAAX,IAAmBA,OAAO,CAAC3hB,IAAR,IAAgB,IAA1C;IACD;;ICjCD;IAA4BwE,EAAAA,yBAAA;;IAA5B,iBAAA;IAAA,wEAAA;;IACEE,IAAAA,WAAA,GAAQ;IACNk5B,MAAAA,cAAc,EAAE,KADV;IAENC,MAAAA,eAAe,EAAE;IAFX,KAAR;IAKAn5B,IAAAA,mBAAA,GAAoC,IAApC;IACAA,IAAAA,iBAAA,GAAc;IACZo5B,MAAAA,MAAM,EAAE,gBAAC5G,EAAD;IAAwB,eAACxyB,KAAI,CAACq5B,aAAL,GAAqB7G,EAAtB;IAAyB;IAD7C,KAAd;;IAcAxyB,IAAAA,4BAAA,GAAyB,UAACwO,KAAD;IACvB,aAAOA,KAAK,CAAC8qB,OAAb;IACD,KAFD;;IAIAt5B,IAAAA,mBAAA,GAAgB,UAACu5B,WAAD;IACR,UAAAjtC,KAAgC0T,KAAI,CAAClP,KAArC;IAAA,UAAE0oC,QAAQ,cAAV;IAAA,UAAYC,QAAQ,cAApB;IAAA,UAAsBpqC,KAAK,WAA3B;;IACN,UAAI2Q,KAAI,CAACq5B,aAAL,IAAsB,IAA1B,EAAgC;IAC9B,eAAOhqC,KAAP;IACD;;IAED,UAAMqqC,qBAAqB,GAAGH,WAA9B;;IACM,UAAAplC,KAAmC6L,KAAI,CAAC25B,0BAAL,CAAgC35B,KAAI,CAACq5B,aAArC,CAAnC;IAAA,UAAEO,cAAc,oBAAhB;IAAA,UAAkBC,YAAY,kBAA9B;;IACN,UAAMC,iBAAiB,GAAGF,cAAc,GAAGC,YAA3C;IACA,UAAME,UAAU,GAAGL,qBAAqB,GAAGI,iBAA3C;;IAEA,UAAI3wB,KAAK,CAAC4wB,UAAD,CAAT,EAAuB;IACrB,eAAO1qC,KAAP;IACD;;IAED,aAAOA,KAAK,GAAGqB,IAAI,CAACyc,KAAL,CAAW4sB,UAAU,IAAIN,QAAQ,GAAGD,QAAf,CAArB,IAAiDA,QAAhE;IACD,KAhBD;;IAkBAx5B,IAAAA,iBAAA,GAAc,UAAC2wB,QAAD,EAAmBqJ,QAAnB;IAAmB,6BAAA,EAAA;IAAAA,QAAAA,WAAWh6B,KAAI,CAAClP,KAAL,CAAW8K,QAAtB;;;IAC/B,UAAMq+B,YAAY,GAAG5B,KAAK,CAAC1H,QAAD,EAAW3wB,KAAI,CAAClP,KAAL,CAAW0H,GAAtB,EAA2BwH,KAAI,CAAClP,KAAL,CAAWiH,GAAtC,CAA1B;;IAEA,UAAI,CAACoR,KAAK,CAAC8wB,YAAD,CAAN,IAAwBj6B,KAAI,CAAClP,KAAL,CAAWzB,KAAX,KAAqB4qC,YAAjD,EAA+D;IAC7D,YAAID,QAAJ,EAAcA,QAAQ,CAACC,YAAD,CAAR;IACf;;IACD,aAAOA,YAAP;IACD,KAPD;;IASAj6B,IAAAA,uBAAA,GAAoB,UAACwO,KAAD;IAClB,UAAM+qB,WAAW,GAAGv5B,KAAI,CAACk6B,sBAAL,CAA4B1rB,KAA5B,CAApB;;IACQ,UAAA2rB,SAAS,GAAKn6B,KAAI,CAAClP,KAAL,UAAd;;IAERkP,MAAAA,KAAI,CAACo6B,4BAAL;;IACAp6B,MAAAA,KAAI,CAACC,QAAL,CAAc;IAAEi5B,QAAAA,cAAc,EAAE;IAAlB,OAAd;;IAEA,UAAMmB,UAAU,GAAGr6B,KAAI,CAACs6B,WAAL,CAAiBt6B,KAAI,CAACu6B,aAAL,CAAmBhB,WAAnB,CAAjB,CAAnB;;IACA,UAAIY,SAAJ,EAAeA,SAAS,CAACE,UAAD,CAAT;IAChB,KATD;;IAWAr6B,IAAAA,4BAAA,GAAyB,UAACwO,KAAD;IACvB,UAAM+qB,WAAW,GAAGv5B,KAAI,CAACk6B,sBAAL,CAA4B1rB,KAA5B,CAApB;;IACA,UAAIxO,KAAI,CAACE,KAAL,CAAWg5B,cAAX,IAA6B,CAACl5B,KAAI,CAAClP,KAAL,CAAW2L,QAA7C,EAAuD;IACrD,YAAMpN,KAAK,GAAG2Q,KAAI,CAACu6B,aAAL,CAAmBhB,WAAnB,CAAd;;IACAv5B,QAAAA,KAAI,CAACs6B,WAAL,CAAiBjrC,KAAjB;IACD;IACF,KAND;;IAQA2Q,IAAAA,yBAAA,GAAsB,UAACwO,KAAD;IACpB,UAAIxO,KAAI,CAAClP,KAAL,CAAW2L,QAAf,EAAyB;IACzBvQ,MAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,WAA1B,EAAuCx6B,KAAI,CAACy6B,sBAA5C;IACAvuC,MAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,SAA1B,EAAqCx6B,KAAI,CAAC06B,iBAA1C;;IAEA16B,MAAAA,KAAI,CAACC,QAAL,CAAc;IAAEi5B,QAAAA,cAAc,EAAE;IAAlB,OAAd;;IAEA,UAAM7pC,KAAK,GAAG2Q,KAAI,CAACu6B,aAAL,CAAmB/rB,KAAK,CAAC8qB,OAAzB,CAAd;;IACAt5B,MAAAA,KAAI,CAACs6B,WAAL,CAAiBjrC,KAAjB;IACD,KATD;;IAWA2Q,IAAAA,mBAAA,GAAgB,UAACwO,KAAD;IACd,UAAIxO,KAAI,CAAClP,KAAL,CAAW2L,QAAf,EAAyB;IAEnB,UAAAnQ,KAAsB0T,KAAI,CAAClP,KAA3B;IAAA,UAAE0oC,QAAQ,cAAV;IAAA,UAAYnqC,KAAK,WAAjB;IACE,UAAAsrC,OAAO,GAAKnsB,KAAK,QAAjB;;IAGR,UAAImsB,OAAO,KAAKC,UAAhB,EAAiC;IAC/B56B,QAAAA,KAAI,CAACs6B,WAAL,CAAiBjrC,KAAK,GAAGmqC,QAAzB;;IACAhrB,QAAAA,KAAK,CAAC7T,cAAN;IACD,OAHD,MAGO,IAAIggC,OAAO,KAAKC,WAAhB,EAAkC;IACvC56B,QAAAA,KAAI,CAACs6B,WAAL,CAAiBjrC,KAAK,GAAGmqC,QAAzB;;IACAhrB,QAAAA,KAAK,CAAC7T,cAAN;IACD;IACF,KAdD;;IAgBAqF,IAAAA,iBAAA,GAAc,UAACwO,KAAD;IACZ,UAAIxO,KAAI,CAAClP,KAAL,CAAW2L,QAAf,EAAyB;;IAEzB,UAAI,CAACm+B,UAAD,EAAkBA,WAAlB,EAAoCl9B,OAApC,CAA4C8Q,KAAK,CAACmsB,OAAlD,KAA8D,CAAlE,EAAqE;IAC3D,YAAAR,SAAS,GAAKn6B,KAAI,CAAClP,KAAL,UAAd;IACR,YAAIqpC,SAAJ,EAAeA,SAAS,CAACn6B,KAAI,CAAClP,KAAL,CAAWzB,KAAZ,CAAT;IAChB;IACF,KAPD;;IASA2Q,IAAAA,gCAAA,GAA6B,UAACq5B,aAAD,EAAoCwB,oBAApC;IAAoC,yCAAA,EAAA;IAAAA,QAAAA,4BAAA;;;IAC/D,UAAIxB,aAAa,IAAI,IAArB,EAA2B;IACzB,eAAO;IAAEO,UAAAA,cAAc,EAAE,CAAlB;IAAqBC,UAAAA,YAAY,EAAE;IAAnC,SAAP;IACD;;IAED,UAAMiB,UAAU,GAAGzB,aAAa,CAAC9b,qBAAd,EAAnB;IACA,UAAMwd,OAAO,GAAGF,oBAAoB,GAAG,QAAH,GAAc,OAAlD;IACA,UAAMhB,YAAY,GAAGiB,UAAU,CAACzW,IAAhC;IAEA,aAAO;IAAEwV,QAAAA,YAAY,cAAd;IAAgBD,QAAAA,cAAc,EAAEkB,UAAU,CAACC,OAAD,CAAV,GAAsB;IAAtD,OAAP;IACD,KAVD;;IAYA/6B,IAAAA,qBAAA,GAAkB;IAChBA,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZk5B,QAAAA,eAAe,EAAE;IADL,OAAd;IAGD,KAJD;;IAMAn5B,IAAAA,sBAAA,GAAmB;IACjBA,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZk5B,QAAAA,eAAe,EAAE;IADL,OAAd;IAGD,KAJD;;IAsDAn5B,IAAAA,kCAAA,GAA+B;IAC7B9T,MAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,WAA7B,EAA0Ch7B,KAAI,CAACy6B,sBAA/C;IACAvuC,MAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,SAA7B,EAAwCh7B,KAAI,CAAC06B,iBAA7C;IACD,KAHD;;;IAID;;IA5KCO,EAAAA,gBAAA,qBAAA,GAAA;IACE,SAAKb,4BAAL;IACD,GAFD;;IAIAa,EAAAA,gBAAA,mBAAA,GAAA,UAAmBC,UAAnB,EAAoDhyB,SAApD;IACE,QAAIA,SAAS,CAACgwB,cAAV,KAA6B,KAAKh5B,KAAL,CAAWg5B,cAA5C,EAA4D;IAC1D,UAAI,KAAKG,aAAT,EAAwB,KAAKA,aAAL,CAAmBvR,KAAnB;IACzB;IACF,GAJD;;IAoHAmT,EAAAA,gBAAA,OAAA,GAAA;;;IACQ,QAAAxnC,KAAwE,KAAK3C,KAA7E;IAAA,QAAE0H,GAAG,SAAL;IAAA,QAAO2iC,aAAa,mBAApB;IAAA,QAAsB9rC,KAAK,WAA3B;IAAA,QAA6BoN,QAAQ,cAArC;IAAA,QAAuC1B,KAAK,WAA5C;IAAA,QAA8CqgC,qBAAqB,2BAAnE;IACA,QAAAzlC,KAAsC,KAAKuK,KAA3C;IAAA,QAAEg5B,cAAc,oBAAhB;IAAA,QAAkBC,eAAe,qBAAjC;IAEN,QAAMkC,WAAW,GAAGnC,cAAc,IAAIC,eAAlB,IAAqCiC,qBAAzD;IAEQ,QAAAxB,cAAc,GAAK,KAAKD,0BAAL,CAAgC,KAAKN,aAArC,EAAoD,IAApD,gBAAnB;IACR,QAAMiC,WAAW,GAAG,CAACjsC,KAAK,GAAGmJ,GAAT,IAAgB2iC,aAApC;IACA,QAAMI,UAAU,GAAG,UAAQzD,gBAAgB,CAACwD,WAAD,CAAxB,QAAA,GAA2C1B,cAA3C,QAAnB;IACA,QAAMhjC,KAAK,GAAG;IAAEytB,MAAAA,IAAI,EAAEkX;IAAR,KAAd;IAEA,QAAMhnC,SAAS,GAAGN,8BAAU,WAC1B3H,GAAC,gBAAD,GAAmB,MACnBA,GAAC,0BAAD,GAA6BmQ,UAC7BnQ,GAAC,wBAAD,GAA2B4sC,gBAC3B5sC,GAAC,WAAD,GAAcmQ,YAJY,EAA5B;IAOA,QAAM++B,YAAY,GAAGvnC,8BAAU,WAC7BE,GAAC,iBAAD,GAAoB,MACpBA,GAAC,UAAD,GAAa,MACbA,GAAC,SAAD,GAAY,CAACknC,eAHgB,EAA/B;IAMA,wBAGEzpC,8BAAA,0BAAA,MAAA,eACEA,8BAAA,MAAA;IACE2C,MAAAA,SAAS,EAAEA;IACX6P,MAAAA,WAAW,EAAE,KAAKq3B;IAClB72B,MAAAA,YAAY,EAAE,KAAK82B;IACnBC,MAAAA,WAAW,EAAE,KAAKC;IAClB1wB,MAAAA,SAAS,EAAE,KAAK+lB;IAChB4K,MAAAA,OAAO,EAAE,KAAKC;IACd1/B,MAAAA,GAAG,EAAE,KAAK2/B,WAAL,CAAiB3C;IACtBxiC,MAAAA,KAAK,EAAEA;IACP0F,MAAAA,QAAQ,EAAE;uBACA;SAVZ,CADF,eAcE1K,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAEinC;IAAc5kC,MAAAA,KAAK,EAAEA;SAArC,EACGmE,KADH,CAdF,CAHF;IAsBD,GA9CD;;IAoDF,eAAA;IAAC,EAvL2BnJ,gBAAK,CAACkY,UAAlC;;IC4CA,IAAMkyB,iBAAiB,GAAyC,SAA1DA,iBAA0D;IAAM,SAAA,IAAA;IAAI,CAA1E;;;IAEiCl8B,EAAAA,8BAAA;;IAa/B,sBAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IAHAkP,IAAAA,oBAAA,GAA2B,EAA3B;IACAA,IAAAA,kBAAA,GAAmC,IAAnC;;IA6BAA,IAAAA,uBAAA,GAAoB,UAAC1T,EAAD;cAAG2vC,cAAc;cAAEzC,QAAQ;IAC7C,aAAOyC,cAAc,IAAI,IAAlB,GAAyBjE,kBAAkB,CAACwB,QAAD,CAA3C,GAAwDyC,cAA/D;IACD,KAFD;;IAIAj8B,IAAAA,oBAAA,GAAiB,UAAC3Q,KAAD;IACf,aAAOgpC,KAAK,CAAC,CAAChpC,KAAK,GAAG2Q,KAAI,CAAClP,KAAL,CAAW0H,GAApB,IAA2BwH,KAAI,CAACE,KAAL,CAAWi7B,aAAvC,EAAsD,CAAtD,EAAyD,CAAzD,CAAZ;IACD,KAFD;;IAIAn7B,IAAAA,kBAAA,GAAe,UAAC5D,GAAD;IACb,UAAIA,GAAG,IAAI,IAAX,EAAiB;IACf4D,QAAAA,KAAI,CAACk8B,cAAL,CAAoB9lB,IAApB,CAAyBha,GAAzB;IACD;IACF,KAJD;;IAMA4D,IAAAA,qBAAA,GAAkB,UAAClP,KAAD;IAChB,UAAMqrC,YAAY,GAAGvqC,gBAAK,CAACwqC,QAAN,CAAenlC,GAAf,CAAmBnG,KAAK,CAACyC,QAAzB,EAAyD,UAAC8oC,KAAD;IAC5E,eAAApD,eAAe,CAACoD,KAAD,CAAf,GAAyBA,KAAK,CAACvrC,KAA/B,GAAuC,IAAvC;IAA2C,OADxB,CAArB;IAIA,UAAIwrC,OAAO,GAAGH,YAAY,IAAI,IAAhB,GAAuBA,YAAvB,GAAsC,EAApD;IACAG,MAAAA,OAAO,GAAGA,OAAO,CAAC7qC,MAAR,CAAe,UAAC2nC,MAAD;IAAY,eAAAA,MAAM,KAAK,IAAX;IAAe,OAA1C,CAAV;IACAkD,MAAAA,OAAO,CAACtgB,IAAR,CAAa,UAACqI,IAAD,EAAOD,KAAP;IAAiB,eAAAC,IAAI,CAACh1B,KAAL,GAAa+0B,KAAK,CAAC/0B,KAAnB;IAAwB,OAAtD;IACA,aAAOitC,OAAP;IACD,KATD;;IAWAt8B,IAAAA,oBAAA,GAAiB;IACf,UAAIA,KAAI,CAACu8B,YAAL,IAAqB,IAAzB,EAA+B;IAC7B,YAAMC,SAAS,GAAGx8B,KAAI,CAACu8B,YAAL,CAAkB7V,WAApC;IACA,YAAMyU,aAAa,GAAG,KAAKn7B,KAAI,CAAClP,KAAL,CAAWiH,GAAX,GAAiBiI,KAAI,CAAClP,KAAL,CAAW0H,GAAjC,CAAtB;IACA,YAAMihC,QAAQ,GAAG+C,SAAS,GAAGrB,aAA7B;;IACAn7B,QAAAA,KAAI,CAACC,QAAL,CAAc;IAAEw5B,UAAAA,QAAQ,UAAV;IAAY0B,UAAAA,aAAa;IAAzB,SAAd;IACD;IACF,KAPD;;IASAn7B,IAAAA,kBAAA,GAAe,UAACwxB,KAAD,EAAqBC,GAArB;IACb,UAAID,KAAK,CAACiL,SAAN,KAAoBl+B,SAAxB,EAAmC;IACjC,eAAOizB,KAAK,CAACiL,SAAb;IACD;;IAED,UAAIhL,GAAG,KAAKlzB,SAAR,IAAqBkzB,GAAG,CAACiL,UAAJ,KAAmBn+B,SAA5C,EAAuD;IACrD,eAAOkzB,GAAG,CAACiL,UAAX;IACD;;IACD,aAAO,KAAP;IACD,KATD;;IAoBA18B,IAAAA,2BAAA,GAAwB,UAACwO,KAAD;IACtB,UAAM6C,MAAM,GAAG7C,KAAK,CAAC6C,MAArB;IACA,UAAMsrB,mBAAmB,GAAG,CAAC38B,KAAI,CAAClP,KAAL,CAAW2L,QAAZ,IAAwB4U,MAAM,CAACurB,OAAP,CAAe,gBAAf,KAAoC,IAAxF;;IAEA,UAAID,mBAAJ,EAAyB;IACvB,YAAME,WAAW,GAAG78B,KAAI,CAAC88B,qBAAL,CAA2B98B,KAAI,CAACk8B,cAAhC,EAAgD,UAAC9C,MAAD;IAClE,iBAAAA,MAAM,CAACc,sBAAP,CAA8B1rB,KAA9B,CAAA;IAAoC,SADlB,CAApB;;IAIA,YAAIquB,WAAJ,EAAiB;IACfA,UAAAA,WAAW,CAACjB,mBAAZ,CAAgCptB,KAAhC;IACD;IACF;IACF,KAbD;;IAeAxO,IAAAA,0BAAA,GAAuB,UAAC2qB,UAAD,EAAqBC,QAArB;IACrB,UAAMoO,GAAG,GAAGrO,UAAU,GAAGC,QAAb,GAAwB,CAAxB,GAA4B,CAAC,CAAzC;;IAEA,WAAK,IAAIzzB,KAAK,GAAGwzB,UAAU,GAAGqO,GAA9B,EAAmC7hC,KAAK,KAAKyzB,QAAQ,GAAGoO,GAAxD,EAA6D7hC,KAAK,IAAI6hC,GAAtE,EAA2E;IACzE,eAAO7hC,KAAP;IACD;;IAED,aAAO,CAAC,CAAR;IACD,KARD;;IAUA6I,IAAAA,wBAAA,GAAqB,UAAC2wB,QAAD,EAAmBoM,QAAnB;IACnB,UAAMC,WAAW,GAAGh9B,KAAI,CAACi9B,eAAL,CAAqBj9B,KAAI,CAAClP,KAA1B,CAApB;;IACA,UAAMynC,SAAS,GAAGyE,WAAW,CAAC/lC,GAAZ,CAAgB,UAACmiC,MAAD;IAAY,eAAAA,MAAM,CAAC/pC,KAAP;IAAY,OAAxC,CAAlB;IACA,UAAMmpC,SAAS,GAAGD,SAAS,CAACljC,KAAV,EAAlB;IACAmjC,MAAAA,SAAS,CAACuE,QAAD,CAAT,GAAsBpM,QAAtB;IACA,UAAI6H,SAAS,CAACtqC,MAAV,GAAmB,CAAvB,EAA0BsqC,SAAS,CAACxc,IAAV,CAAe,UAACqI,IAAD,EAAOD,KAAP;IAAiB,eAAAC,IAAI,GAAGD,KAAP;IAAY,OAA5C;IAE1B,UAAMyO,QAAQ,GAAG2F,SAAS,CAAC96B,OAAV,CAAkBizB,QAAlB,CAAjB;;IACA,UAAMuM,SAAS,GAAGl9B,KAAI,CAACm9B,oBAAL,CAA0BJ,QAA1B,EAAoClK,QAApC,CAAlB;;IAEA,UAAIqK,SAAS,KAAK,CAAC,CAAnB,EAAsB;IACpBpE,QAAAA,UAAU,CAACN,SAAD,EAAYuE,QAAZ,EAAsBlK,QAAtB,EAAgClC,QAAhC,CAAV;IACD,OAFD,MAEO;IACL,YAAMyM,SAAS,GAAG7E,SAAS,CAAC2E,SAAD,CAA3B;IACApE,QAAAA,UAAU,CAACP,SAAD,EAAYwE,QAAZ,EAAsBG,SAAtB,EAAiCE,SAAjC,CAAV;IACA,eAAO7E,SAAP;IACD;;IACD,aAAOC,SAAP;IACD,KAlBD;;IAoBAx4B,IAAAA,sBAAA,GAAmB,UAAC2wB,QAAD,EAAmBx5B,KAAnB;IACT,UAAAkmC,cAAc,GAAKr9B,KAAI,CAAClP,KAAL,eAAnB;;IAER,UAAMksC,WAAW,GAAGh9B,KAAI,CAACi9B,eAAL,CAAqBj9B,KAAI,CAAClP,KAA1B,CAApB;;IACA,UAAM0nC,SAAS,GAAGx4B,KAAI,CAACs9B,kBAAL,CAAwB3M,QAAxB,EAAkCx5B,KAAlC,CAAlB;;IAGA,UAAIkmC,cAAJ,EAAoB;IAClB,YAAME,KAAK,GAAG/E,SAAd;IACA6E,QAAAA,cAAc,CAACE,KAAD,CAAd;IACD;;IAGDP,MAAAA,WAAW,CAACruC,OAAZ,CAAoB,UAACyqC,MAAD,EAASvqC,CAAT;IAClB,YAAIuqC,MAAM,CAACe,SAAX,EAAsBf,MAAM,CAACe,SAAP,CAAiB3B,SAAS,CAAC3pC,CAAD,CAA1B;IACvB,OAFD;IAGD,KAhBD;;IAkBAmR,IAAAA,qBAAA,GAAkB,UAAC2wB,QAAD,EAAmBx5B,KAAnB;IACR,UAAAoS,aAAa,GAAKvJ,KAAI,CAAClP,KAAL,cAAlB;;IAER,UAAMksC,WAAW,GAAGh9B,KAAI,CAACi9B,eAAL,CAAqBj9B,KAAI,CAAClP,KAA1B,CAApB;;IACA,UAAMynC,SAAS,GAAGyE,WAAW,CAAC/lC,GAAZ,CAAgB,UAACmiC,MAAD;IAAY,eAAAA,MAAM,CAAC/pC,KAAP;IAAY,OAAxC,CAAlB;;IACA,UAAMmpC,SAAS,GAAGx4B,KAAI,CAACs9B,kBAAL,CAAwB3M,QAAxB,EAAkCx5B,KAAlC,CAAlB;;IAEA,UAAI,CAACmhC,WAAW,CAACE,SAAD,EAAYD,SAAZ,CAAhB,EAAwC;IAEtC,YAAIhvB,aAAJ,EAAmB;IACjB,cAAMg0B,KAAK,GAAG/E,SAAd;IACAjvB,UAAAA,aAAa,CAACg0B,KAAD,CAAb;IACD;;IAGDP,QAAAA,WAAW,CAACruC,OAAZ,CAAoB,UAACyqC,MAAD,EAASvqC,CAAT;IAClB,cAAIuqC,MAAM,CAACx9B,QAAX,EAAqBw9B,MAAM,CAACx9B,QAAP,CAAgB48B,SAAS,CAAC3pC,CAAD,CAAzB;IACtB,SAFD;IAGD;IACF,KAnBD;;IAqBAmR,IAAAA,iBAAA,GAAc,UAAC3Q,KAAD;IACJ,UAAAmuC,aAAa,GAAKx9B,KAAI,CAAClP,KAAL,cAAlB;IAER,UAAM2sC,UAAU,GAAGpuC,KAAK,CAACyhC,OAAN,CAAc9wB,KAAI,CAACE,KAAL,CAAW+7B,cAAzB,CAAnB;;IAEA,UAAI,OAAOuB,aAAP,KAAyB,UAA7B,EAAyC;IACvC,eAAOA,aAAa,CAAC5M,MAAM,CAAC6M,UAAD,CAAP,CAApB;IACD;;IAED,aAAOA,UAAP;IACD,KAVD;;IAYAz9B,IAAAA,mBAAA,GAAgB;IACR,UAAA1T,KAAmC0T,KAAI,CAAClP,KAAxC;IAAA,UAAE2L,QAAQ,cAAV;IAAA,UAAY1E,GAAG,SAAf;IAAA,UAAiBS,GAAG,SAApB;IAAA,UAAsBghC,QAAQ,cAA9B;;IACN,UAAMwD,WAAW,GAAGh9B,KAAI,CAACi9B,eAAL,CAAqBj9B,KAAI,CAAClP,KAA1B,CAApB;;IAEA,UAAIksC,WAAW,CAAC9uC,MAAZ,KAAuB,CAA3B,EAA8B;IAC5B,eAAO,IAAP;IACD;;IAED,aAAO8uC,WAAW,CAAC/lC,GAAZ,CAAgB,UAAC3K,EAAD,EAAY6K,KAAZ;gBAAG9H,KAAK;IAC7B,YAAM+rC,qBAAqB,GAAGp7B,KAAI,CAACE,KAAL,CAAWw9B,iBAAX,KAAiC9M,MAAM,CAACvhC,KAAK,CAACyhC,OAAN,CAAc9wB,KAAI,CAACE,KAAL,CAAW+7B,cAAzB,CAAD,CAArE;IAEA,4BACErqC,8BAAA,CAACqpC,MAAD;IACEx+B,UAAAA,QAAQ,EAAEA;IACVnF,UAAAA,GAAG,EAAKH,KAAK,MAAL,GAAS6lC,WAAW,CAAC9uC;IAC7B6J,UAAAA,GAAG,EAAEA;IACLS,UAAAA,GAAG,EAAEA;IACL2hC,UAAAA,SAAS,EAAE,mBAACxJ,QAAD;IAAc,mBAAA3wB,KAAI,CAAC29B,gBAAL,CAAsBhN,QAAtB,EAAgCx5B,KAAhC,CAAA;IAAsC;IAC/DyE,UAAAA,QAAQ,EAAE,kBAAC+0B,QAAD;IAAc,mBAAA3wB,KAAI,CAACoR,eAAL,CAAqBuf,QAArB,EAA+Bx5B,KAA/B,CAAA;IAAqC;IAC7D4D,UAAAA,KAAK,EAAEiF,KAAI,CAAC49B,WAAL,CAAiBvuC,KAAjB;IACP+M,UAAAA,GAAG,EAAE4D,KAAI,CAAC69B;IACVrE,UAAAA,QAAQ,EAAEA;IACVC,UAAAA,QAAQ,EAAEz5B,KAAI,CAACE,KAAL,CAAWu5B;IACrB0B,UAAAA,aAAa,EAAEn7B,KAAI,CAACE,KAAL,CAAWi7B;IAC1B9rC,UAAAA,KAAK,EAAEA;IACP+rC,UAAAA,qBAAqB,EAAEA;aAbzB,CADF;IAiBD,OApBM,CAAP;IAqBD,KA7BD;;IA+BAp7B,IAAAA,kBAAA,GAAe;IACP,UAAA1T,KAAuD0T,KAAI,CAAClP,KAA5D;IAAA,UAAEgtC,aAAa,mBAAf;IAAA,UAAiB/lC,GAAG,SAApB;IAAA,UAAsBS,GAAG,SAAzB;IAAA,UAA2BglC,aAAa,mBAAxC;IAAA,UAA0C/gC,QAAQ,cAAlD;IAEN,UAAMshC,MAAM,GAAG,EAAf;IACA,UAAMC,aAAa,GAAGh+B,KAAI,CAACE,KAAL,CAAWi7B,aAAX,GAA2B2C,aAAjD;;IACA,UAAMxB,OAAO,GAAGt8B,KAAI,CAACi9B,eAAL,CAAqBj9B,KAAI,CAAClP,KAA1B,CAAhB;;IACA,UAAMmtC,YAAY,GAAG3B,OAAO,CAACrlC,GAAR,CAAY,UAACmiC,MAAD;IAAY,eAAAA,MAAM,CAAC/pC,KAAP,CAAayhC,OAAb,CAAqB9wB,KAAI,CAACE,KAAL,CAAW+7B,cAAhC,CAAA;IAA+C,OAAvE,CAArB;;yCAGMptC,GAASysC;;;IAIb,YAAM4C,gBAAgB,GAAGpG,gBAAgB,CAACwD,WAAD,CAAzC;IACA,YAAM1kC,KAAK,GAAG;IAAEytB,UAAAA,IAAI,EAAE6Z;IAAR,SAAd;IACA,YAAMr6B,MAAM,GAAG,CAACpH,QAAD,IAAawhC,YAAY,CAACvgC,OAAb,CAAqB7O,CAAC,CAACiiC,OAAF,CAAU9wB,KAAI,CAACE,KAAL,CAAW+7B,cAArB,CAArB,MAA+D,CAAC,CAA5F;;IACA,YAAMxhC,cAAc,GAAG,SAAjBA,cAAiB,CAAC+T,KAAD;IACrB,cAAI,CAACxO,KAAI,CAAClP,KAAL,CAAW2L,QAAhB,EAA0B;IACxB,gBAAMogC,WAAW,GAAG78B,KAAI,CAAC88B,qBAAL,CAA2B98B,KAAI,CAACk8B,cAAhC,EAAgD,UAAC9C,MAAD;IAClE,qBAAAA,MAAM,CAACc,sBAAP,CAA8B1rB,KAA9B,CAAA;IAAoC,aADlB,CAApB;;IAIA,gBAAIquB,WAAJ,EAAiB;IACfA,cAAAA,WAAW,CAACvC,WAAZ,CAAwBzrC,CAAxB;IACD;IACF;IACF,SAVD;;IAYA,YAAMsvC,gBAAgB,GAAGlqC,8BAAU,WACjC3H,GAAC,eAAD,GAAkB,MAClBA,GAAC,UAAD,GAAauX,UAFoB,EAAnC;IAOAk6B,QAAAA,MAAM,CAAC3nB,IAAP,eACExkB,8BAAA,MAAA;IACE4I,UAAAA,OAAO,EAAEC;IACTlG,UAAAA,SAAS,EAAE;IACX+C,UAAAA,GAAG,EAAEzI;IACL+H,UAAAA,KAAK,EAAEA;IACPwN,UAAAA,WAAW,EAAE;IAAM,mBAAApE,KAAI,CAACo+B,oBAAL,CAA0BvvC,CAA1B,CAAA;IAA4B;IAC/C+V,UAAAA,YAAY,EAAE5E,KAAI,CAACq+B;2BACT;aAPZ,eAUEzsC,8BAAA,OAAA;IAAM2C,UAAAA,SAAS,EAAE4pC;aAAjB,CAVF,EAWGX,aAAa,KAAK,KAAlB,iBACC5rC,8BAAA,CAACyC,IAAD;IAAMvC,UAAAA,IAAI,EAAC;IAAQC,UAAAA,UAAU,EAAE8R,MAAM,GAAG,SAAH,GAAe;aAApD,EACG7D,KAAI,CAAC49B,WAAL,CAAiB/uC,CAAjB,CADH,CAZJ,CADF;;;IA3BF,WACE,IAAIA,CAAC,GAAG2J,GAAR,EAAa8iC,WAAW,GAAG,CAD7B,EAEEzsC,CAAC,GAAGkJ,GAAJ,IAAWogC,WAAW,CAACtpC,CAAD,EAAIkJ,GAAJ,CAFxB,EAGElJ,CAAC,IAAIivC,aAAL,EAAoBxC,WAAW,IAAI0C,aAHrC;oBACMnvC,GAASysC;IA6Cd;;IACD,aAAOyC,MAAP;IACD,KAxDD;;IA0DA/9B,IAAAA,qBAAA,GAAkB,UAAC7I,KAAD,EAAgBq6B,KAAhB,EAAoCC,GAApC;;;IACV,UAAAt9B,KAAyB,CAAC6L,KAAI,CAACs+B,cAAL,CAAoB9M,KAAK,CAACniC,KAA1B,CAAD,EAAmC2Q,KAAI,CAACs+B,cAAL,CAAoB7M,GAAG,CAACpiC,KAAxB,CAAnC,EAAmE2sB,IAAnE,CAC7B,UAACqI,IAAD,EAAOD,KAAP;IAAiB,eAAAC,IAAI,GAAGD,KAAP;IAAY,OADA,CAAzB;IAAA,UAACma,UAAU,QAAX;IAAA,UAAaC,QAAQ,QAArB;;IAGN,UAAMC,WAAW,GAAG7N,MAAM,CAAC,CAAC2N,UAAU,GAAG,GAAd,EAAmBzN,OAAnB,CAA2B,CAA3B,CAAD,CAA1B;IACA,UAAM4N,SAAS,GAAG9N,MAAM,CAAC,CAAC,CAAC,IAAI4N,QAAL,IAAiB,GAAlB,EAAuB1N,OAAvB,CAA+B,CAA/B,CAAD,CAAxB;IAEA,UAAMn8B,KAAK,GAAM,MAAM+pC,SAAN,GAAkBD,WAAlB,MAAjB;IACA,UAAME,gBAAgB,GAAwB;IAAEhqC,QAAAA,KAAK;IAAP,OAA9C;;IACA,UAAMiC,KAAK,gBAA6B+nC,iBAAxC;;IACA,UAAMC,SAAS,GAAG5+B,KAAI,CAAC6+B,YAAL,CAAkBrN,KAAlB,EAAyBC,GAAzB,CAAlB;;IAEA,UAAMh4B,OAAO,GAAGxF,8BAAU,WACxB3H,GAAC,kBAAD,GAAqB,MACrBA,GAAC,4BAAD,GAA+B0T,KAAI,CAAClP,KAAL,CAAW2L,UAC1CnQ,GAAC,2BAAD,GAA8BsyC,WAC9BtyC,GAAC,mCAAD,GAAsCsyC,SAAS,IAAI5+B,KAAI,CAAClP,KAAL,CAAW2L,YAJtC,EAA1B;IAOA,0BAAO7K,8BAAA,MAAA;IAAK0F,QAAAA,GAAG,EAAE,WAASH;IAAS5C,QAAAA,SAAS,EAAEkF;IAAS7C,QAAAA,KAAK,EAAEA;WAAvD,CAAP;IACD,KApBD;;IAsBAoJ,IAAAA,kBAAA,GAAe;IACb,UAAM8+B,UAAU,GAAG9+B,KAAI,CAACi9B,eAAL,CAAqBj9B,KAAI,CAAClP,KAA1B,CAAnB;;IACAguC,MAAAA,UAAU,CAAC1oB,IAAX,CAAgB;IAAE/mB,QAAAA,KAAK,EAAE2Q,KAAI,CAAClP,KAAL,CAAWiH;IAApB,OAAhB;IAEA,UAAIgnC,QAAQ,GAAgB;IAAE1vC,QAAAA,KAAK,EAAE2Q,KAAI,CAAClP,KAAL,CAAW0H,GAAX,IAAkB;IAA3B,OAA5B;IACA,UAAM8jC,OAAO,GAAkB,EAA/B;IAEAwC,MAAAA,UAAU,CAACnwC,OAAX,CAAmB,UAACqwC,KAAD,EAAQ7nC,KAAR;IACjB,YAAMuZ,OAAO,GAAGsuB,KAAhB;IACA1C,QAAAA,OAAO,CAAClmB,IAAR,CAAapW,KAAI,CAACi/B,eAAL,CAAqB9nC,KAArB,EAA4B4nC,QAA5B,EAAsCruB,OAAtC,CAAb;IACAquB,QAAAA,QAAQ,GAAGruB,OAAX;IACD,OAJD;IAMA,aAAO4rB,OAAP;IACD,KAdD;;IAgBAt8B,IAAAA,0BAAA,GAAuB,UAAC3Q,KAAD;IACrB2Q,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZy9B,QAAAA,iBAAiB,EAAEruC;IADP,OAAd;IAGD,KAJD;;IAMA2Q,IAAAA,2BAAA,GAAwB;IACtBA,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZy9B,QAAAA,iBAAiB,EAAEn/B;IADP,OAAd;IAGD,KAJD;;IAnTEyB,IAAAA,KAAI,CAACE,KAAL,GAAa;IACX+7B,MAAAA,cAAc,EAAEj8B,KAAI,CAACk/B,iBAAL,CAAuBl/B,KAAI,CAAClP,KAA5B,CADL;IAEX2oC,MAAAA,QAAQ,EAAE,CAFC;IAGX0B,MAAAA,aAAa,EAAE;IAHJ,KAAb;;IAKD;;IAEDgE,EAAAA,qBAAA,yBAAA,GAAA,UAAyBruC,KAAzB;IACE,WAAO;IAAEmrC,MAAAA,cAAc,EAAE,KAAKiD,iBAAL,CAAuBpuC,KAAvB;IAAlB,KAAP;IACD,GAFD;;IAIAquC,EAAAA,qBAAA,wBAAA,GAAA,UAAwBl2B,SAAxB;IACE,QAAMm2B,eAAe,GAAG,KAAKnC,eAAL,CAAqBh0B,SAArB,CAAxB;IACA,QAAMo2B,cAAc,GAAG,KAAKpC,eAAL,CAAqB,KAAKnsC,KAA1B,CAAvB;;IACA,QAAIuuC,cAAc,CAACnxC,MAAf,KAA0BkxC,eAAe,CAAClxC,MAA9C,EAAsD;IACpD,WAAKguC,cAAL,GAAsB,EAAtB;IACD;;IACD,WAAO,IAAP;IACD,GAPD;;IASAiD,EAAAA,qBAAA,kBAAA,GAAA;IACE,SAAKG,cAAL;IACD,GAFD;;IAiDAH,EAAAA,qBAAA,sBAAA,GAAA,UAAsB7C,OAAtB,EAAyCiD,SAAzC;IACE,WAAO9G,MAAM,CAAC6D,OAAD,EAAU,UAAClD,MAAD;IACrB,UAAMpgC,MAAM,GAAGumC,SAAS,CAACnG,MAAD,CAAxB;IACA,UAAMoG,WAAW,GAAGpG,MAAM,CAACmB,aAAP,CAAqBvhC,MAArB,CAApB;IACA,UAAMymC,WAAW,GAAGrG,MAAM,CAACtoC,KAAP,CAAazB,KAAjC;IACA,aAAOqB,IAAI,CAACgV,GAAL,CAAS85B,WAAW,GAAGC,WAAvB,CAAP;IACD,KALY,CAAb;IAMD,GAPD;;IAoPAN,EAAAA,qBAAA,OAAA,GAAA;;;IAAA,oBAAA;;IACQ,QAAA1rC,KAAuB,KAAK3C,KAA5B;IAAA,QAAEiK,KAAK,WAAP;IAAA,QAASxG,SAAS,eAAlB;IACN,QAAMxD,SAAS,GAAGF,gBAAgB,CAAC,KAAKC,KAAN,CAAlC;IAEA,QAAM4uC,WAAW,GAAGzrC,8BAAU,WAE1B3H,GAAC,SAAD,GAAY,QAFc,GAI5BiI,SAJ4B,CAA9B;IAOA,QAAMorC,YAAY,GAAG1rC,8BAAU,WAC7BE,GAAC,iBAAD,GAAoB,MACpBA,GAAC,2BAAD,GAA8B,KAAKrD,KAAL,CAAW2L,YAFZ,EAA/B;IAKA,wBACE7K,8BAAA,MAAA,eAASb;IAAWwD,MAAAA,SAAS,EAAEmrC;uBAAuB;UAAtD,EACG3kC,KAAK,iBAAInJ,8BAAA,CAACgjC,KAAD;IAAOpgB,MAAAA,SAAS,EAAE;SAAlB,EAAyBzZ,KAAzB,CADZ,eAEEnJ,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAEorC;SAAhB,eAGE/tC,8BAAA,MAAA;IACE2C,MAAAA,SAAS,EAAC;IACV6H,MAAAA,GAAG,EAAE,aAACA,IAAD;IAAS,eAAC4D,KAAI,CAACu8B,YAAL,GAAoBngC,IAArB;IAAyB;IACvCu/B,MAAAA,WAAW,EAAE,KAAKiE;uBACR;SAJZ,EAOG,KAAKC,YAAL,EAPH,CAHF,eAYEjuC,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;SAAf,EAA8B,KAAKurC,YAAL,EAA9B,CAZF,EAaG,KAAKC,aAAL,EAbH,CAFF,CADF;IAoBD,GApCD;;IAxUOZ,EAAAA,wBAAA,GAAe;IACpBrB,IAAAA,aAAa,EAAE,CADK;IAEpB/lC,IAAAA,GAAG,EAAE,EAFe;IAGpBS,IAAAA,GAAG,EAAE,CAHe;IAIpBghC,IAAAA,QAAQ,EAAE,CAJU;IAKpBgE,IAAAA,aAAa,EAAE;IALK,GAAf;IAOA2B,EAAAA,kBAAA,GAASnD,iBAAT;IAsWT,oBAAA;IA9WA,EAAiCpqC,gBAAK,CAACkY;;QC7D1Bk2B,YAAY,gBAAGpuC,gBAAK,CAACuK,UAAN,CAAoD,UAACrL,KAAD,EAAQsL,GAAR;;;IACtE,MAAA7I,QAAQ,GAAyCzC,KAAK,SAAtD;IAAA,MAAUyD,SAAS,GAA8BzD,KAAK,UAAtD;IAAA,MAAqBmvC,cAAc,GAAcnvC,KAAK,eAAtD;IAAA,MAAwC6L,IAAI,UAAK7L,OAAnD,WAAA,aAAA,kBAAA,EAAE;;IAER,MAAMovC,QAAQ,GAAGtuC,gBAAK,CAAC4e,MAAN,CAA6B,IAA7B,CAAjB;IAEA5e,EAAAA,gBAAK,CAAC6e,mBAAN,CAA0BrU,GAA1B,EAA+B;IAAM,WAAA8jC,QAAQ,CAACxvB,OAAT;IAAiB,GAAtD,EAAwD,CAACwvB,QAAD,CAAxD;IAEAtuC,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd/M,IAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,OAA1B,EAAmC2F,kBAAnC,EAAuD,IAAvD;IACA,WAAO;IACLj0C,MAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,OAA7B,EAAsCmF,kBAAtC;IACD,KAFD;IAGD,GALD,EAKG,EALH;IAOA,MAAMA,kBAAkB,GAAGvuC,gBAAK,CAACy/B,WAAN,CAAkB,UAAC7iB,KAAD;IAC3C,QAAMyO,OAAO,GAAGijB,QAAhB;;IAEA,QAAI,CAAC1xB,KAAK,CAAC6C,MAAP,IAAiB,CAAC4L,OAAO,CAACvM,OAA9B,EAAuC;IACrC;IACD;;IAED,QAAI,CAACuM,OAAO,CAACvM,OAAR,CAAiB0vB,QAAjB,CAA0B5xB,KAAK,CAAC6C,MAAhC,CAAL,EAA6D;IAC3D4uB,MAAAA,cAAc,CAACzxB,KAAD,CAAd;IACD;IACF,GAV0B,EAUxB,EAVwB,CAA3B;IAYA,MAAM/U,OAAO,GAAGxF,8BAAU,WAEtB3H,GAAC,eAAD,GAAkB,QAFI,GAIxBiI,SAJwB,CAA1B;IAOA,sBACE3C,8BAAA,MAAA;IAAKwK,IAAAA,GAAG,EAAE8jC;SAAcvjC;IAAMpI,IAAAA,SAAS,EAAEkF;QAAzC,EACGlG,QADH,CADF;IAKD,CAtC2B;IAwC5BysC,YAAY,CAAC7pC,WAAb,GAA2B,cAA3B;;QC/BakqC,SAAS,GAAG,SAAZA,SAAY,CAACvvC,KAAD;;;IACf,MAAAiB,UAAU,GAA0CjB,KAAK,WAAzD;IAAA,MAAYyC,QAAQ,GAAgCzC,KAAK,SAAzD;IAAA,MAAsByD,SAAS,GAAqBzD,KAAK,UAAzD;IAAA,MAAiC9E,KAAK,GAAc8E,KAAK,MAAzD;IAAA,MAA2C6L,IAAI,UAAK7L,OAAtD,aAAA,YAAA,aAAA,SAAA,EAAE;;IAER,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtBI,IAAAA,IAAI,EAAE;SACN/H,GAAC,WAASyF,WAAV,GAAyB,CAAC/F,KAAD,IAAU+F,YACnCzF,GAAC,WAASN,MAAV,GAAoBA,SAJE,GAMxBuI,SANwB,CAA1B;IASA,sBACE3C,8BAAA,CAACic,MAAD;qBAAuB;SAA6BlR;IAAMpI,IAAAA,SAAS,EAAEkF;IAASqU,IAAAA,aAAa,EAAC;QAA5F,EACGva,QADH,CADF;IAKD;IAED8sC,SAAS,CAAClqC,WAAV,GAAwB,WAAxB;IACAkqC,SAAS,CAAChqC,YAAV,GAAyB;IACvBtE,EAAAA,UAAU,EAAE;IADW,CAAzB;;QCvBauuC,WAAW,GAAG,SAAdA,WAAc,CAACxvC,KAAD;;;IACjB,MAAAiH,GAAG,GAA6BjH,KAAK,IAArC;IAAA,MAAKzB,KAAK,GAAsByB,KAAK,MAArC;IAAA,MAAYyD,SAAS,GAAWzD,KAAK,UAArC;IAAA,MAAuBgB,IAAI,GAAKhB,KAAK,KAArC;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM8F,KAAK,GAAG;IACZjC,IAAAA,KAAK,EAAEtF,KAAK,GAAG,CAAR,GAAgBqB,IAAI,CAAC8H,GAAL,CAASnJ,KAAT,EAAgB0I,GAAhB,IAAuB,GAAxB,GAA+BA,GAA/B,MAAf,GAAuD;IADlD,GAAd;IAIA,MAAMwoC,gBAAgB,GAAGtsC,8BAAU,CACjC;IACEqsC,IAAAA,WAAW,EAAE;IADf,GADiC,EAIjC/rC,SAJiC,CAAnC;IAOA,MAAMisC,sBAAsB,GAAGvsC,8BAAU,WACvC3H,GAAC,wBAAD,GAA2B,MAC3BA,GAAC,+BAAD,GAAkCwF,IAAI,KAAK,SAC3CxF,GAAC,iCAAD,GAAoCwF,IAAI,KAAK,aAHN,EAAzC;IAMA,sBACEF,8BAAA,MAAA;qBAAe;SAA+Bb;IAAWwD,IAAAA,SAAS,EAAEgsC;QAApE,eACE3uC,8BAAA,MAAA;qBAAe;IAAqC2C,IAAAA,SAAS,EAAEisC;IAAwB5pC,IAAAA,KAAK,EAAEA;OAA9F,CADF,CADF;IAKD;IAED0pC,WAAW,CAACnqC,WAAZ,GAA0B,aAA1B;IACAmqC,WAAW,CAACjqC,YAAZ,GAA2B;IACzB0B,EAAAA,GAAG,EAAE,GADoB;IAEzBjG,EAAAA,IAAI,EAAE;IAFmB,CAA3B;;QCEa2uC,KAAK,gBAAG7uC,gBAAK,CAACuK,UAAN,CAA+C,UAACrL,KAAD,EAAQmf,YAAR;;;IAEhE,MAAA9a,KAYErE,KAAK,KAZP;IAAA,MAAAgB,IAAI,mBAAG,cAAP;IAAA,MACAiJ,KAAK,GAWHjK,KAAK,MAZP;IAAA,MAEA2L,QAAQ,GAUN3L,KAAK,SAZP;IAAA,MAGA8K,QAAQ,GASN9K,KAAK,SAZP;IAAA,MAIA0D,IAAI,GAQF1D,KAAK,KAZP;IAAA,MAKAzB,KAAK,GAOHyB,KAAK,MAZP;IAAA,MAMA6f,OAAO,GAML7f,KAAK,QAZP;IAAA,MAOAof,cAAc,GAKZpf,KAAK,eAZP;IAAA,MAQAyD,SAAS,GAIPzD,KAAK,UAZP;IAAA,MASAuf,QAAQ,GAGNvf,KAAK,SAZP;IAAA,MAUA6C,KAAK,GAEH7C,KAAK,MAZP;IAAA,MAWG6L,IAAI,UACL7L,OAbE,OAAA,SAAA,YAAA,YAAA,QAAA,SAAA,WAAA,kBAAA,aAAA,YAAA,SAAA,EACJ;;IAcF,MAAMsL,GAAG,GAAGxK,gBAAK,CAAC4e,MAAN,CAA+B,IAA/B,CAAZ;IAEA5e,EAAAA,gBAAK,CAAC6e,mBAAN,CAA0BR,YAA1B,EAAwC;IACtC,WAAO7T,GAAG,CAACsU,OAAX;IACD,GAFD;IAIA,MAAMgwB,UAAU,GAAGzsC,8BAAU,WAEzB3H,GAAC,QAAD,GAAW,MACXA,GAAC,kBAAD,GAAqBmQ,YAHI,GAK3BlI,SAL2B,CAA7B;IAQA,MAAMosC,YAAY,GAAG1sC,8BAAU,WAC7BE,GAAC,gBAAD,GAAmB,MACnBA,GAAC,uBAAD,GAA0B,CAACR,OAC3BQ,GAAC,qBAAD,GAAwBR,OACxBQ,GAAC,oBAAkBrC,KAAnB,GAA4BA,QAJC,EAA/B;IAOA,MAAM8uC,iBAAiB,GAAG3sC,8BAAU,WAClCR,GAAC,qBAAD,GAAwB,MACxBA,GAAC,yBAAuB3B,KAAxB,GAAiCA,QAFC,EAApC;IAKA,MAAM+uC,eAAe,GAAG5sC,8BAAU,WAChC0B,GAAC,cAAD,GAAiB,QADe,EAAlC;IAIA,MAAM2a,EAAE,GAAM9b,IAAI,MAAJ,GAAQuG,KAAR,MAAA,GAAiBkU,YAAY,EAA3C;IACA,sBACErd,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEmsC;qBAAsB;OAAtC,eACE9uC,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEqsC;qBAA6B;OAA7C,eACEhvC,8BAAA,QAAA;IACE0K,IAAAA,QAAQ,EAAE;SACNK;IACJrB,IAAAA,IAAI,EAAC;IACLmB,IAAAA,QAAQ,EAAEA;IACVkU,IAAAA,OAAO,EAAEA;IACTT,IAAAA,cAAc,EAAEA;IAChB9T,IAAAA,GAAG,EAAEA;IACL5H,IAAAA,IAAI,EAAEA;IACNnF,IAAAA,KAAK,EAAEA;IACPuM,IAAAA,QAAQ,EAAEA;IACVrH,IAAAA,SAAS,EAAC;IACV+b,IAAAA,EAAE,EAAEA;qBACM;QAbZ,CADF,eAgBE1e,8BAAA,OAAA;qBAAgB;IAA6B2C,IAAAA,SAAS,EAAEosC;OAAxD,CAhBF,CADF,eAmBE/uC,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGwG,KAAK,iBACJnJ,8BAAA,QAAA;IAAO2C,IAAAA,SAAS,EAAEssC;IAAiBtvB,IAAAA,OAAO,EAAEjB;qBAAc;OAA1D,eACE1e,8BAAA,CAACyC,IAAD;IAAMvC,IAAAA,IAAI,EAAEA,IAAI,KAAK,MAAT,GAAkB,OAAlB,GAA4B;IAAWC,IAAAA,UAAU,EAAE0K,QAAQ,GAAG,UAAH,GAAgB;OAAvF,EACG1B,KADH,CADF,CAFJ,EAQGsV,QAAQ,iBACPze,8BAAA,CAACyC,IAAD;qBAAgB;IAA8BvC,IAAAA,IAAI,EAAC;IAAQC,IAAAA,UAAU,EAAE0K,QAAQ,GAAG,UAAH,GAAgB;OAA/F,EACG4T,QAAQ,CAACvc,IAAT,EADH,CATJ,CAnBF,CADF;IAoCD,CAnFoB;IAqFrB2sC,KAAK,CAACtqC,WAAN,GAAoB,OAApB;;QCpIa2qC,GAAG,gBAAGlvC,gBAAK,CAACuK,UAAN,CAA2C,UAACrL,KAAD,EAAQsL,GAAR;;;IACpD,MAAA7H,SAAS,GAAwBzD,KAAK,UAAtC;IAAA,MAAWyC,QAAQ,GAAczC,KAAK,SAAtC;IAAA,MAAwB6L,IAAI,UAAK7L,OAAnC,YAAA,YAAA,EAAE;;IAER,MAAM2I,OAAO,GAAGxF,8BAAU;IACxB6sC,IAAAA,GAAG,EAAE;SACLx0C,GAAC,KAAGiI,UAAJ,GAAkBA,aAFM,EAA1B;IAIA,sBACE3C,8BAAA,MAAA;qBAAe;IAAmBwK,IAAAA,GAAG,EAAEA;SAASO;IAAMpI,IAAAA,SAAS,EAAEkF;QAAjE,EACGlG,QADH,CADF;IAKD,CAZkB;IAcnButC,GAAG,CAAC3qC,WAAJ,GAAkB,KAAlB;;QCaa4qC,UAAU,GAAG,SAAbA,UAAa,CAACjwC,KAAD;;;IAChB,MAAAiB,UAAU,GAA8EjB,KAAK,WAA7F;IAAA,MAAYyC,QAAQ,GAAoEzC,KAAK,SAA7F;IAAA,MAAsBsX,aAAY,GAAsDtX,KAAK,aAA7F;IAAA,MAAoC8T,aAAY,GAAwC9T,KAAK,aAA7F;IAAA,MAAkD0J,QAAO,GAA+B1J,KAAK,QAA7F;IAAA,MAA2DkwC,aAAa,GAAgBlwC,KAAK,cAA7F;IAAA,MAA0EyD,SAAS,GAAKzD,KAAK,UAA7F;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMmwC,eAAe,GAAGhtC,8BAAU,WAE9B3H,GAAC,aAAD,GAAgB,QAFc,GAIhCiI,SAJgC,CAAlC;IAOA,MAAM2sC,mBAAmB,GAAGjtC,8BAAU,WACpCE,GAAC,kBAAD,GAAqB,MACrBA,GAAC,iBAAepC,WAAhB,GAA+BA,cAFK,EAAtC;IAKA,MAAMovC,mBAAmB,GAAGltC,8BAAU,WACpCR,GAAC,mBAAD,GAAsButC,iBADc,EAAtC;IAIA,sBAGEpvC,8BAAA,MAAA;qBACY;SACNb;IACJwD,IAAAA,SAAS,EAAE0sC;IACXzmC,IAAAA,OAAO,EAAE,iBAACgQ,CAAD;IAAO,aAAAhQ,QAAO,IAAIA,QAAO,CAACgQ,CAAD,CAAlB;IAAqB;IACrCpC,IAAAA,YAAY,EAAE,sBAACoC,CAAD;IAAO,aAAApC,aAAY,IAAIA,aAAY,CAACoC,CAAD,CAA5B;IAA+B;IACpD5F,IAAAA,YAAY,EAAE,sBAAC4F,CAAD;IAAO,aAAA5F,aAAY,IAAIA,aAAY,CAAC4F,CAAD,CAA5B;IAA+B;QANtD,eASE5Y,8BAAA,OAAA;qBAAgB;IAAgC2C,IAAAA,SAAS,EAAE2sC;OAA3D,CATF,eAUEtvC,8BAAA,CAACyC,IAAD;qBAAgB;IAAgCC,IAAAA,MAAM,EAAE;IAAUC,IAAAA,SAAS,EAAE4sC;OAA7E,EACG5tC,QADH,CAVF,CAHF;IAkBD;IAEDwtC,UAAU,CAAC5qC,WAAX,GAAyB,YAAzB;IACA4qC,UAAU,CAAC1qC,YAAX,GAA0B;IACxBtE,EAAAA,UAAU,EAAE;IADY,CAA1B;;QCvDaqvC,KAAK,GAAG,SAARA,KAAQ,CAACtwC,KAAD;;;IACX,MAAAiB,UAAU,GAAkCjB,KAAK,WAAjD;IAAA,MAAYyC,QAAQ,GAAwBzC,KAAK,SAAjD;IAAA,MAAsBwJ,MAAM,GAAgBxJ,KAAK,OAAjD;IAAA,MAA8ByD,SAAS,GAAKzD,KAAK,UAAjD;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtBmtC,IAAAA,KAAK,EAAE;SACP90C,GAAC,YAAUyF,WAAX,GAA0BA,UAAU,IAAI,CAACuI,QACzChO,GAAC,mBAAiByF,WAAlB,GAAiCuI,UAJX,GAMxB/F,SANwB,CAA1B;IASA,sBACE3C,8BAAA,OAAA;qBAAgB;SAAyBb;IAAWwD,IAAAA,SAAS,EAAEkF;QAA/D,EACGlG,QADH,CADF;IAKD;IAED6tC,KAAK,CAACjrC,WAAN,GAAoB,OAApB;IACAirC,KAAK,CAAC/qC,YAAN,GAAqB;IACnBtE,EAAAA,UAAU,EAAE;IADO,CAArB;;QCtBa+K,OAAO,GAAG,SAAVA,OAAU,CAAChM,KAAD;;;IACb,MAAAiB,UAAU,GAAsBjB,KAAK,WAArC;IAAA,MAAYgB,IAAI,GAAgBhB,KAAK,KAArC;IAAA,MAAkByD,SAAS,GAAKzD,KAAK,UAArC;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMuwC,cAAc,GAAGptC,8BAAU;IAE7B6I,IAAAA,OAAO,EAAE;SACTxQ,GAAC,cAAYwF,KAAb,GAAsBA,QAHO,GAK/ByC,SAL+B,CAAjC;IAOA,MAAM+sC,aAAa,GAAGrtC,8BAAU;IAC9BstC,IAAAA,MAAM,EAAE;SACRptC,GAAC,aAAWpC,WAAZ,GAA2BA,cAFG,EAAhC;IAKA,MAAMyvC,QAAQ,GAAG;IACf7xB,IAAAA,OAAO,EAAE;IADM,GAAjB;IAGA,MAAM8xB,WAAW,GAAG;IAClBC,IAAAA,EAAE,EAAE,EADc;IAElBC,IAAAA,EAAE,EAAE,EAFc;IAGlBryB,IAAAA,CAAC,EAAE,EAHe;IAIlBM,IAAAA,IAAI,EAAE,MAJY;IAKlBgyB,IAAAA,gBAAgB,EAAE,IALA;IAMlBC,IAAAA,WAAW,EAAE;IANK,GAApB;IASA,sBACEjwC,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAE8sC;SAAoBG,SAAnD,eACE5vC,8BAAA,SAAA;IAAQ2C,IAAAA,SAAS,EAAE+sC;SAAmBG,YAAtC,CADF,CADF;IAKD;IAED3kC,OAAO,CAAC3G,WAAR,GAAsB,SAAtB;IACA2G,OAAO,CAACzG,YAAR,GAAuB;IACrBtE,EAAAA,UAAU,EAAE,SADS;IAErBD,EAAAA,IAAI,EAAE;IAFe,CAAvB;;QCnCagwC,MAAM,GAAG,SAATA,MAAS,CAAChxC,KAAD;IACZ,MAAOq/B,SAAS,GAAiDr/B,KAAK,MAAtE;IAAA,MAAkBm+B,YAAY,GAAmCn+B,KAAK,aAAtE;IAAA,MAAgCqpC,SAAS,GAAwBrpC,KAAK,UAAtE;IAAA,MAA2C8K,QAAQ,GAAc9K,KAAK,SAAtE;IAAA,MAAwD6L,IAAI,UAAK7L,OAAnE,QAAA,gBAAA,aAAA,YAAA,EAAE;;IAEF,MAAAxE,KAAoBsF,gBAAK,CAAC8B,QAAN,CAAey8B,SAAS,KAAK5xB,SAAd,GAA0B0wB,YAA1B,GAAyCkB,SAAxD,CAApB;IAAA,MAAC9gC,KAAK,QAAN;IAAA,MAAQihC,QAAQ,QAAhB;;IAEN1+B,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIk3B,SAAS,KAAK5xB,SAAlB,EAA6B;IAC3B+xB,MAAAA,QAAQ,CAACH,SAAD,CAAR;IACD;IACF,GAJD,EAIG,CAACA,SAAD,CAJH;;IAMA,MAAM/e,eAAe,GAAG,SAAlBA,eAAkB,CAACuf,QAAD;IACtB,QAAIR,SAAS,KAAK5xB,SAAlB,EAA6B;IAC3B+xB,MAAAA,QAAQ,CAACK,QAAD,CAAR;IACD;;IACD,QAAI/0B,QAAJ,EAAcA,QAAQ,CAAC+0B,QAAD,CAAR;IACf,GALD;;IAOA,sBACE/+B,8BAAA,CAACutC,WAAD,eAAiBxiC,KAAjB,eACE/K,8BAAA,CAACutC,WAAW,CAAClE,MAAb;IAAoB5rC,IAAAA,KAAK,EAAEA;IAAOuM,IAAAA,QAAQ,EAAEwV;IAAiB+oB,IAAAA,SAAS,EAAEA;IAAWuC,IAAAA,UAAU,EAAE;OAA/F,CADF,CADF;IAKD;IAEDoF,MAAM,CAAC3rC,WAAP,GAAqB,QAArB;IACA2rC,MAAM,CAACzrC,YAAP,yBACK8oC,WAAW,CAAC9oC;IACf44B,EAAAA,YAAY,EAAE;MAFhB;;IC5CA,IAAK8S,UAAL;;IAAA,WAAKA;IACHA,EAAAA,mCAAA,UAAA;IACAA,EAAAA,iCAAA,QAAA;IACD,CAHD,EAAKA,UAAU,KAAVA,UAAU,KAAA,CAAf;;QAyBaC,WAAW,GAAG,SAAdA,WAAc,CAAClxC,KAAD;IACjB,MAAOq/B,SAAS,GAAiDr/B,KAAK,MAAtE;IAAA,MAAkBm+B,YAAY,GAAmCn+B,KAAK,aAAtE;IAAA,MAAgC8K,QAAQ,GAAyB9K,KAAK,SAAtE;IAAA,MAA0CqpC,SAAS,GAAcrpC,KAAK,UAAtE;IAAA,MAAwD6L,IAAI,UAAK7L,OAAnE,QAAA,gBAAA,YAAA,aAAA,EAAE;;IAEF,MAAAxE,KAAoBsF,gBAAK,CAAC8B,QAAN,CAAey8B,SAAS,KAAK5xB,SAAd,GAA0B0wB,YAA1B,GAAyCkB,SAAxD,CAApB;IAAA,MAAC9gC,KAAK,QAAN;IAAA,MAAQihC,QAAQ,QAAhB;;IAEN1+B,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIk3B,SAAS,KAAK5xB,SAAlB,EAA6B;IAC3B+xB,MAAAA,QAAQ,CAACH,SAAD,CAAR;IACD;IACF,GAJD,EAIG,CAACA,SAAD,CAJH;;IAMA,MAAM/e,eAAe,GAAG,SAAlBA,eAAkB,CAACmsB,KAAD;IACtB,QAAIpN,SAAS,KAAK5xB,SAAlB,EAA6B;IAC3B+xB,MAAAA,QAAQ,CAACiN,KAAD,CAAR;IACD;;IACD,QAAI3hC,QAAJ,EAAcA,QAAQ,CAAC2hC,KAAD,CAAR;IACf,GALD;;IAOA,sBACE3rC,8BAAA,CAACutC,WAAD;IAAa51B,IAAAA,aAAa,EAAE6H;IAAiBisB,IAAAA,cAAc,EAAElD;SAAex9B,KAA5E,eACE/K,8BAAA,CAACutC,WAAW,CAAClE,MAAb;IAAoB5rC,IAAAA,KAAK,EAAEA,KAAK,CAAC0yC,UAAU,CAACE,KAAZ;IAAoBxF,IAAAA,SAAS,EAAE;OAA/D,CADF,eAEE7qC,8BAAA,CAACutC,WAAW,CAAClE,MAAb;IAAoB5rC,IAAAA,KAAK,EAAEA,KAAK,CAAC0yC,UAAU,CAACG,GAAZ;OAAhC,CAFF,CADF;IAMD;IAEDF,WAAW,CAAC7rC,WAAZ,GAA0B,aAA1B;IACA6rC,WAAW,CAAC3rC,YAAZ,yBACK8oC,WAAW,CAAC9oC;IACf44B,EAAAA,YAAY,EAAE,CAAC,CAAD,EAAI,EAAJ;MAFhB;;QClCakT,UAAU,GAAG,SAAbA,UAAa,CAACrxC,KAAD;;;IAChB,MAAAiB,UAAU,GAA0CjB,KAAK,WAAzD;IAAA,MAAYyC,QAAQ,GAAgCzC,KAAK,SAAzD;IAAA,MAAsByD,SAAS,GAAqBzD,KAAK,UAAzD;IAAA,MAAiC9E,KAAK,GAAc8E,KAAK,MAAzD;IAAA,MAA2C6L,IAAI,UAAK7L,OAAtD,aAAA,YAAA,aAAA,SAAA,EAAE;;IAER,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtBkuC,IAAAA,UAAU,EAAE;SACZ71C,GAAC,iBAAeyF,WAAhB,GAA+B,CAAC/F,KAAD,IAAU+F,YACzCzF,GAAC,WAASN,MAAV,GAAoBA,SAJE,GAMxBuI,SANwB,CAA1B;IASA,sBACE3C,8BAAA,CAACic,MAAD;qBAAuB;SAA8BlR;IAAMpI,IAAAA,SAAS,EAAEkF;IAASqU,IAAAA,aAAa,EAAE;QAA9F,EACGva,QADH,CADF;IAKD;IAED4uC,UAAU,CAAChsC,WAAX,GAAyB,YAAzB;IACAgsC,UAAU,CAAC9rC,YAAX,GAA0B;IACxBtE,EAAAA,UAAU,EAAE;IADY,CAA1B;;QCaaqwC,MAAM,gBAAGxwC,gBAAK,CAACuK,UAAN,CAAgD,UAACrL,KAAD,EAAQsL,GAAR;;;IAElE,MAAA3I,KAUE3C,KAAK,KAVP;IAAA,MAAAgB,IAAI,mBAAG,cAAP;IAAA,MACAoe,cAAc,GASZpf,KAAK,eAVP;IAAA,MAEA2L,QAAQ,GAQN3L,KAAK,SAVP;IAAA,MAGA8K,QAAQ,GAON9K,KAAK,SAVP;IAAA,MAIA0D,IAAI,GAMF1D,KAAK,KAVP;IAAA,MAKAzB,KAAK,GAKHyB,KAAK,MAVP;IAAA,MAMAyD,SAAS,GAIPzD,KAAK,UAVP;IAAA,MAUEA,KAAK,WAVP;IAAA,UAQSsf,WAAW,GAElBtf,KAAK,QAVP;IAAA,MASG6L,IAAI,UACL7L,OAXE,OAAA,kBAAA,YAAA,YAAA,QAAA,SAAA,aAAA,cAAA,WAAA;;IAaA,MAAA6E,KAAwB/D,gBAAK,CAAC8B,QAAN,CAAe0c,WAAW,KAAK7R,SAAhB,GAA4B2R,cAA5B,GAA6CE,WAA5D,CAAxB;IAAA,MAACO,OAAO,QAAR;IAAA,MAAUC,UAAU,QAApB;;IAENhf,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAImX,WAAW,KAAK7R,SAApB,EAA+BqS,UAAU,CAACR,WAAD,CAAV;IAChC,GAFD,EAEG,CAACA,WAAD,CAFH;IAIA,MAAMiyB,WAAW,GAAGpuC,8BAAU,WAE1B3H,GAAC,SAAD,GAAY,MACZA,GAAC,mBAAD,GAAsBmQ,UACtBnQ,GAAC,aAAWwF,KAAZ,GAAqBA,QAJK,GAM5ByC,SAN4B,CAA9B;IASA,MAAM+tC,aAAa,GAAGruC,8BAAU,WAC9BE,GAAC,iBAAD,GAAoB,MACpBA,GAAC,2BAAD,GAA8BsI,UAC9BtI,GAAC,qBAAmBrC,KAApB,GAA6BA,MAC7BqC,GAAC,0BAAD,GAA6Bwc,SAC7Bxc,GAAC,kCAAD,GAAqCwc,OAAO,IAAIlU,YALlB,EAAhC;;IAQA,MAAM2U,eAAe,GAAG,SAAlBA,eAAkB,CAAC5C,KAAD;IACtB,QAAIA,KAAK,CAAClT,IAAN,IAAc,QAAd,IAA0BiP,UAAU,CAACiE,KAAD,CAAxC,EAAqF;IACnF,UAAI4B,WAAW,KAAK7R,SAApB,EAA+BqS,UAAU,CAAC,CAACD,OAAF,CAAV;IAC/B,UAAI/U,QAAJ,EAAcA,QAAQ,CAAC4S,KAAD,EAAQ,CAACmC,OAAT,CAAR;IACf;IACF,GALD;;IAOA,sBACE/e,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE8tC;OAAhB,eACEzwC,8BAAA,QAAA,eACM+K;IACJrB,IAAAA,IAAI,EAAC;IACL4U,IAAAA,cAAc,EAAEA;IAChBzT,IAAAA,QAAQ,EAAEA;IACVb,IAAAA,QAAQ,EAAEwV;IACVT,IAAAA,OAAO,EAAEA;IACTvU,IAAAA,GAAG,EAAEA;IACL5H,IAAAA,IAAI,EAAEA;IACNnF,IAAAA,KAAK,EAAEA;IACPkF,IAAAA,SAAS,EAAC;IACVsnC,IAAAA,OAAO,EAAEzqB;QAXX,CADF,eAcExf,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAE+tC;OAAjB,CAdF,CADF;IAkBD,CA9DqB;IAgEtBF,MAAM,CAACjsC,WAAP,GAAqB,QAArB;;QCzDaosC,QAAQ,gBAAG3wC,gBAAK,CAACuK,UAAN,CAAqD,UAACrL,KAAD,EAAQsL,GAAR;;;IAEzE,MAAAjI,KAeErD,KAAK,KAfP;IAAA,MAAA0xC,IAAI,mBAAG,MAAP;IAAA,MACA/uC,KAcE3C,KAAK,OAfP;IAAA,MACA2xC,MAAM,mBAAG,SADT;IAAA,MAEAhmC,QAAQ,GAaN3L,KAAK,SAfP;IAAA,MAGA0D,IAAI,GAYF1D,KAAK,KAfP;IAAA,MAIAkiB,WAAW,GAWTliB,KAAK,YAfP;IAAA,MAKAzB,KAAK,GAUHyB,KAAK,MAfP;IAAA,MAMAm+B,YAAY,GASVn+B,KAAK,aAfP;IAAA,MAOA2hB,QAAQ,GAQN3hB,KAAK,SAfP;IAAA,MAQA6C,KAAK,GAOH7C,KAAK,MAfP;IAAA,MASA8K,QAAQ,GAMN9K,KAAK,SAfP;IAAA,MAUA0J,OAAO,GAKL1J,KAAK,QAfP;IAAA,MAWAshB,MAAM,GAIJthB,KAAK,OAfP;IAAA,MAYAq+B,OAAO,GAGLr+B,KAAK,QAfP;IAAA,MAaAyD,SAAS,GAEPzD,KAAK,UAfP;IAAA,MAcG6L,IAAI,UACL7L,OAhBE,OAAA,UAAA,YAAA,QAAA,eAAA,SAAA,gBAAA,YAAA,SAAA,YAAA,WAAA,UAAA,WAAA,aAAA,EACJ;;IAiBF,MAAM2I,OAAO,GAAGxF,8BAAU,WAEtB3H,GAAC,WAAD,GAAc,MACdA,GAAC,mBAAD,GAAsBm2C,QACtBn2C,GAAC,kBAAD,GAAqBqH,SAJC,GAMxBY,SANwB,CAA1B;IASA,sBACE3C,8BAAA,WAAA;qBACY;SACN+K;IACJP,IAAAA,GAAG,EAAEA;IACL5H,IAAAA,IAAI,EAAEA;IACNguC,IAAAA,IAAI,EAAEA;IACNxvB,IAAAA,WAAW,EAAEA;IACbze,IAAAA,SAAS,EAAEkF;IACXpK,IAAAA,KAAK,EAAEA;IACP4/B,IAAAA,YAAY,EAAEA;IACdxc,IAAAA,QAAQ,EAAEA;IACVhW,IAAAA,QAAQ,EAAEA;IACVb,IAAAA,QAAQ,EAAEA;IACVwW,IAAAA,MAAM,EAAEA;IACR5X,IAAAA,OAAO,EAAEA;IACT20B,IAAAA,OAAO,EAAEA;QAfX,CADF;IAmBD,CA/CuB;IAiDxBoT,QAAQ,CAACpsC,WAAT,GAAuB,UAAvB;;ICpGA,IAAM64B,YAAY,GAAG,SAAfA,YAAe,CAACl+B,KAAD;;;IACX,MAAAiB,UAAU,GAAqBjB,KAAK,WAApC;IAAA,MAAYiK,KAAK,GAAcjK,KAAK,MAApC;IAAA,MAAmB0J,OAAO,GAAK1J,KAAK,QAApC;IAER,MAAM8L,WAAW,GAAG3I,8BAAU,WAC5B3H,GAAC,SAAD,GAAY,MACZA,GAAC,eAAD,GAAkB,MAClBA,GAAC,qBAAD,GAAwB,MACxBA,GAAC,yBAAuByF,WAAxB,GAAuCA,cAJX,EAA9B;;IAOA,MAAM0I,cAAc,GAAG,SAAjBA,cAAiB,CAAC+P,CAAD;IACrBA,IAAAA,CAAC,CAAC7P,cAAF;IACA,QAAIH,OAAJ,EAAaA,OAAO,CAACgQ,CAAD,CAAP;IACd,GAHD;;IAKA,sBACE5Y,8BAAA,SAAA;IAAQ2C,IAAAA,SAAS,EAAEqI;IAAapC,IAAAA,OAAO,EAAEC;OAAzC,eACE7I,8BAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAC;OAAjB,EAA0BgJ,KAA1B,CADF,CADF;IAKD,CApBD;;IAsBAi0B,YAAY,CAAC74B,WAAb,GAA2B,cAA3B;IACA64B,YAAY,CAAC34B,YAAb,GAA4B;IAC1BtE,EAAAA,UAAU,EAAE;IADc,CAA5B;;QCoBa2wC,KAAK,GAAG,SAARA,KAAQ,CAAC5xC,KAAD;;;IACX,MAAAkmC,KAAK,GAA2ClmC,KAAK,MAArD;IAAA,MAAO4jC,OAAO,GAAkC5jC,KAAK,QAArD;IAAA,MAAgBimC,OAAO,GAAyBjmC,KAAK,QAArD;IAAA,MAAyBod,OAAO,GAAgBpd,KAAK,QAArD;IAAA,MAAkCyD,SAAS,GAAKzD,KAAK,UAArD;IACF,MAAAiB,UAAU,GAAKjB,KAAK,WAApB;IACNiB,EAAAA,UAAU,GAAGA,UAAU,KAAK,SAAf,GAA2B,MAA3B,GAAoCA,UAAjD;IAEA,MAAMhB,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMqX,YAAY,GAAGlU,8BAAU,WAE3B3H,GAAC,QAAD,GAAW,MACXA,GAAC,qBAAD,GAAwBooC,SACxBpoC,GAAC,YAAUyF,WAAX,GAA0BA,cAJC,GAM7BwC,SAN6B,CAA/B;IASA,MAAMsiC,WAAW,GAAwB;IACvC3H,IAAAA,IAAI,EAAE,MADiC;IAEvCx8B,IAAAA,OAAO,EAAE,cAF8B;IAGvCJ,IAAAA,KAAK,EAAE,OAHgC;IAIvCG,IAAAA,OAAO,EAAE;IAJ8B,GAAzC;IAOA,MAAM2E,IAAI,GAAGy/B,WAAW,CAAC9kC,UAAD,CAAxB;IAEA,MAAM4wC,UAAU,GAAG1uC,8BAAU,WAC3BE,GAAC,cAAD,GAAiB,MACjBA,GAAC,2BAAD,GAA8BugC,WAFH,EAA7B;;IAKA,MAAM73B,SAAS,GAAG,SAAZA,SAAY,CAACuR,KAAD;;;IAChB,WAAAna,8BAAU,WACR3H,GAAC,aAAD,GAAgB,MAChBA,GAAC,iBAAe8hB,MAAhB,GAA0BA,OAC1B9hB,GAAC,iBAAeyF,WAAhB,GAA+BA,YAC/BzF,GAAC,uBAAqByF,WAAtB,GAAqCA,UAAU,IAAIqc,KAAK,KAAK,WAJrD,EAAV;IAKE,GANJ;;IAQA,MAAMrK,SAAS,GAAG9P,8BAAU,WAC1BR,GAAC,aAAD,GAAgB,MAChBA,GAAC,iBAAe1B,WAAhB,GAA+BA,cAFL,EAA5B;IAKA,MAAM6wC,YAAY,GAAG3uC,8BAAU,WAC7B0B,GAAC,gBAAD,GAAmB,MACnBA,GAAC,oBAAkB5D,WAAnB,GAAkCA,cAFL,EAA/B;;IAKA,MAAMsc,cAAc,GAAG,SAAjBA,cAAiB;IACrB,QAAIH,OAAJ,EAAaA,OAAO;IACrB,GAFD;;IAIA,sBACEtc,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAE4T;QAA/B,EACG/Q,IAAI,iBAAIxF,8BAAA,CAACsB,IAAD;IAAMsB,IAAAA,IAAI,EAAE4C;IAAM7C,IAAAA,SAAS,EAAEsI,SAAS,CAAC,MAAD;OAAtC,CADX,eAEEjL,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEouC;OAAhB,eACE/wC,8BAAA,CAACwR,OAAD;IAAStR,IAAAA,IAAI,EAAC;IAAIyC,IAAAA,SAAS,EAAEquC;IAAc7wC,IAAAA,UAAU,EAAEA,UAAU,KAAK,SAAf,GAA2B,OAA3B,GAAqC;OAA5F,EACGilC,KADH,CADF,eAIEplC,8BAAA,CAACsB,IAAD;IACEsB,IAAAA,IAAI,EAAE;IACND,IAAAA,SAAS,EAAEsI,SAAS,CAAC,OAAD;IACpBrC,IAAAA,OAAO,EAAE6T;IACTtc,IAAAA,UAAU,EAAEA,UAAU,KAAK,SAAf,GAA2B,OAA3B,GAAqC;OAJnD,CAJF,CADF,EAYG2iC,OAAO,iBACN9iC,8BAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAEA,UAAU,KAAK,SAAf,GAA2B,OAA3B,GAAqC;IAAWwC,IAAAA,SAAS,EAAEwP;OAA7E,EACG2wB,OADH,CAbJ,EAiBG,CAAC,EAACqC,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE7oC,MAAV,CAAD,iBACC0D,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGwiC,OAAO,CAAC1hC,KAAR,CAAc,CAAd,EAAiB,CAAjB,EAAoB4B,GAApB,CAAwB,UAAC4rC,MAAD,EAAS1rC,KAAT;IAAmB,wBAC1CvF,8BAAA,CAACo9B,YAAD;IAAc13B,MAAAA,GAAG,EAAEH;IAAO4D,MAAAA,KAAK,EAAE8nC,MAAO,CAAC9nC;IAAOhJ,MAAAA,UAAU,EAAEA;IAAYyI,MAAAA,OAAO,EAAEqoC,MAAO,CAACroC;SAAzF,CAD0C;IAE3C,GAFA,CADH,CAlBJ,CAFF,CADF;IA8BD;IAEDkoC,KAAK,CAACvsC,WAAN,GAAoB,OAApB;IACAusC,KAAK,CAACrsC,YAAN,GAAqB;IACnBtE,EAAAA,UAAU,EAAE;IADO,CAArB;;IC1CA;IAAmC+N,EAAAA,gCAAA;;IAiBjC,wBAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IA8HAkP,IAAAA,kBAAA,GAAe,UAAC1E,IAAD,EAAeq1B,QAAf;IACP,UAAArkC,KAAqB0T,KAAI,CAAClP,KAA1B;IAAA,UAAEuI,IAAI,UAAN;IAAA,UAAQob,QAAQ,cAAhB;IACNA,MAAAA,QAAQ,CAACkc,QAAQ,KAAKpyB,SAAb,GAAyB,CAAClF,IAA1B,GAAiCs3B,QAAlC,EAA4Cr1B,IAA5C,CAAR;IACD,KAHD;;IAKA0E,IAAAA,8BAAA,GAA2B,UAACwO,KAAD,EAAepS,GAAf;IACzB,UAAMo2B,EAAE,GAAGp2B,GAAG,CAACsU,OAAf;IACA,aAAO8hB,EAAE,IAAIA,EAAE,CAAC4N,QAAH,CAAY5xB,KAAK,CAAC6C,MAAlB,CAAb;IACD,KAHD;;IAgBArR,IAAAA,qBAAA,GAAkB,UAAC8iC,QAAD,EAAgCC,SAAhC,EAAyD/pC,MAAzD;IACR,UAAApC,KAAK,GAAKoJ,KAAI,CAAClP,KAAL,MAAV;;IACR,UAAMkyC,QAAQ,yBAAQpsC,QAAUksC,SAAhC;;IACA,UAAM7sC,QAAQ,GAAG8sC,SAAS,GAAGA,SAAS,CAACr0C,KAAV,CAAgB,GAAhB,EAAqB,CAArB,CAAH,GAA6Bq0C,SAAvD;;IACA,cAAQ9sC,QAAR;IACE,aAAK,KAAL;IACE+sC,UAAAA,QAAQ,CAACC,YAAT,GAAwBjjC,KAAI,CAACkjC,aAAL,CAAmBlqC,MAAnB,CAAxB;IACA;;IAEF,aAAK,QAAL;IACEgqC,UAAAA,QAAQ,CAACG,SAAT,GAAqBnjC,KAAI,CAACkjC,aAAL,CAAmBlqC,MAAnB,CAArB;IACA;;IAEF,aAAK,MAAL;IACEgqC,UAAAA,QAAQ,CAACI,WAAT,GAAuBpjC,KAAI,CAACkjC,aAAL,CAAmBlqC,MAAnB,CAAvB;IACA;;IAEF,aAAK,OAAL;IACEgqC,UAAAA,QAAQ,CAACK,UAAT,GAAsBrjC,KAAI,CAACkjC,aAAL,CAAmBlqC,MAAnB,CAAtB;IACA;IAfJ;;IAiBA,UAAIgH,KAAI,CAAClP,KAAL,CAAWwyC,kBAAf,EAAmC;IACjCN,QAAAA,QAAQ,CAAC/sC,QAAT,GAAoB,UAApB;IACA+sC,QAAAA,QAAQ,CAACO,SAAT,GAAqB,eAAavjC,KAAI,CAAClP,KAAL,CAAWwyC,kBAAX,CAA8B/1B,CAA3C,SAAA,GAAmDvN,KAAI,CAAClP,KAAL,CAAWwyC,kBAAX,CAA8BE,CAAjF,QAArB;IACD;;IACD,aAAOR,QAAP;IACD,KA1BD;;IAhJEhjC,IAAAA,KAAI,CAACE,KAAL,GAAa;IACXujC,MAAAA,iBAAiB,EAAE,EADR;IAEXC,MAAAA,MAAM,EAAE1jC,KAAI,CAAClP,KAAL,CAAWuI,IAAX,IAAmB,KAFhB;IAGXsqC,MAAAA,SAAS,EAAE;IAHA,KAAb;IAMA3jC,IAAAA,KAAI,CAAC4jC,cAAL,GAAsB,GAAtB;IACA5jC,IAAAA,KAAI,CAACkjC,aAAL,GAAqB;IACnB5lC,MAAAA,KAAK,EAAE,KADY;IAEnBumC,MAAAA,MAAM,EAAE,KAFW;IAGnB5nC,MAAAA,KAAK,EAAE;IAHY,KAArB;IAMA+D,IAAAA,KAAI,CAACulB,UAAL,gBAAkB3zB,gBAAK,CAAC0zB,SAAN,EAAlB;IACAtlB,IAAAA,KAAI,CAAC8jC,QAAL,gBAAgBlyC,gBAAK,CAAC0zB,SAAN,EAAhB;IAEAtlB,IAAAA,KAAI,CAAC+jC,iBAAL,GAAyB/jC,KAAI,CAAC+jC,iBAAL,CAAuBz/B,IAAvB,CAA4BtE,KAA5B,CAAzB;IACAA,IAAAA,KAAI,CAACgkC,gBAAL,GAAwBhkC,KAAI,CAACgkC,gBAAL,CAAsB1/B,IAAtB,CAA2BtE,KAA3B,CAAxB;IACAA,IAAAA,KAAI,CAACikC,gBAAL,GAAwBjkC,KAAI,CAACikC,gBAAL,CAAsB3/B,IAAtB,CAA2BtE,KAA3B,CAAxB;IACAA,IAAAA,KAAI,CAAC07B,gBAAL,GAAwB17B,KAAI,CAAC07B,gBAAL,CAAsBp3B,IAAtB,CAA2BtE,KAA3B,CAAxB;IACAA,IAAAA,KAAI,CAACkkC,qBAAL,GAA6BlkC,KAAI,CAACkkC,qBAAL,CAA2B5/B,IAA3B,CAAgCtE,KAAhC,CAA7B;;IACD;;IAEDmkC,EAAAA,uBAAA,kBAAA,GAAA;IACE,SAAKC,wBAAL;IACA,QAAMC,cAAc,GAAG,KAAK9e,UAAL,CAAgB7U,OAAvC;IACA,QAAMtW,MAAM,GAAG,KAAKkqC,iBAAL,CAAuBD,cAAvB,CAAf;IACA,SAAKpkC,QAAL,CAAc;IACZ7F,MAAAA,MAAM,EAAEA,MAAM,KAAKmE,SAAX,GAAuBnE,MAAvB,GAAgCA,MAAM,GAAG;IADrC,KAAd;IAGD,GAPD;;IASA+pC,EAAAA,uBAAA,mBAAA,GAAA,UAAmBl7B,SAAnB;IACE,QAAI,CAACA,SAAS,CAACs7B,eAAX,IAA8B,KAAKzzC,KAAL,CAAWyzC,eAA7C,EAA8D;IAC5D,WAAKC,2BAAL;IACA,WAAKJ,wBAAL;IACD;;IACD,QAAIn7B,SAAS,CAAC5P,IAAV,KAAmB,KAAKvI,KAAL,CAAWuI,IAAlC,EAAwC;IACtC,WAAKorC,aAAL,GAAqB,KAArB;IACA,WAAKxkC,QAAL,CAAc;IACZwjC,QAAAA,iBAAiB,EAAE;IADP,OAAd;;IAGA,UAAI,KAAK3yC,KAAL,CAAWuI,IAAf,EAAqB;IACnB,YAAMgrC,cAAc,GAAG,KAAK9e,UAAL,CAAgB7U,OAAvC;IACA,YAAMtW,MAAM,GAAG,KAAKkqC,iBAAL,CAAuBD,cAAvB,CAAf;IAEA,aAAKpkC,QAAL,CAAc;IACZ7F,UAAAA,MAAM,EAAEA,MAAM,KAAKmE,SAAX,GAAuBnE,MAAvB,GAAgCA,MAAM,GAAG,CADrC;IAEZspC,UAAAA,MAAM,EAAE;IAFI,SAAd;IAID,OARD,MAQO,IAAI,CAAC,KAAK5yC,KAAL,CAAWuI,IAAZ,IAAoB,KAAKvI,KAAL,CAAW4zC,cAAnC,EAAmD;IACxD,aAAKzkC,QAAL,CAAc;IACZyjC,UAAAA,MAAM,EAAE;IADI,SAAd;IAGD;IACF;IACF,GAxBD;;IA0BAS,EAAAA,uBAAA,qBAAA,GAAA;IACE,SAAKK,2BAAL;IACD,GAFD;;IAIAL,EAAAA,uBAAA,sBAAA,GAAA;IACQ,QAAA73C,KAA8B,KAAKwE,KAAnC;IAAA,QAAEuI,IAAI,UAAN;IAAA,QAAQ5C,EAAE,QAAV;IAAA,QAAYkuC,aAAa,mBAAzB;;IACN,QAAIluC,EAAE,KAAK,OAAP,IAAkBkuC,aAAtB,EAAqC;IACnC,UAAItrC,IAAJ,EAAU;IACR,YAAI,CAAC,KAAKorC,aAAV,EAAyB;IACvB,eAAKG,YAAL,CAAkB,UAAlB,EAA8B,KAA9B;IACA,eAAKH,aAAL,GAAqB,IAArB;IACD;IACF;IACF;IACF,GAVD;;IAYAN,EAAAA,uBAAA,yBAAA,GAAA;IACE,QAAI,KAAKrzC,KAAL,CAAWyzC,eAAX,IAA8B,KAAKzzC,KAAL,CAAWyzC,eAAX,CAA2B/J,gBAA7D,EAA+E;IAC7E,WAAK1pC,KAAL,CAAWyzC,eAAX,CAA2B/J,gBAA3B,CAA4C,QAA5C,EAAsD,KAAK0J,qBAA3D;IACD;IACF,GAJD;;IAMAC,EAAAA,uBAAA,4BAAA,GAAA;IACE,QAAI,KAAKrzC,KAAL,CAAWyzC,eAAX,IAA8B,KAAKzzC,KAAL,CAAWyzC,eAAX,CAA2BvJ,mBAA7D,EAAkF;IAChF,WAAKlqC,KAAL,CAAWyzC,eAAX,CAA2BvJ,mBAA3B,CAA+C,QAA/C,EAAyD,KAAKkJ,qBAA9D;IACD;IACF,GAJD;;IAMAC,EAAAA,uBAAA,iBAAA,GAAA;IAAA,oBAAA;;IACE,QAAI,KAAKU,MAAT,EAAiBtlB,YAAY,CAAC,KAAKslB,MAAN,CAAZ;IAEjB,SAAKA,MAAL,GAAc9qC,MAAM,CAACC,UAAP,CAAkB;IACtB,UAAAya,QAAQ,GAAKzU,KAAI,CAAClP,KAAL,SAAb;IACR2jB,MAAAA,QAAQ,CAAC,KAAD,EAAQ,YAAR,CAAR;IACD,KAHa,EAGX,KAAKmvB,cAHM,CAAd;IAID,GAPD;;IASAO,EAAAA,uBAAA,iBAAA,GAAA;IACU,QAAA1tC,EAAE,GAAK,KAAK3F,KAAL,GAAP;;IACR,QAAI2F,EAAE,KAAK,OAAX,EAAoB;IAClB,UAAI,KAAKouC,MAAT,EAAiBtlB,YAAY,CAAC,KAAKslB,MAAN,CAAZ;IACT,UAAApwB,QAAQ,GAAK,KAAK3jB,KAAL,SAAb;IAER2jB,MAAAA,QAAQ,CAAC,IAAD,EAAO,YAAP,CAAR;IACA,WAAKxU,QAAL,CAAc;IACZ,eAAO;IAAEyjC,UAAAA,MAAM,EAAE;IAAV,SAAP;IACD,OAFD;IAGD;IACF,GAXD;;IAaAS,EAAAA,uBAAA,iBAAA,GAAA;IACU,QAAA1tC,EAAE,GAAK,KAAK3F,KAAL,GAAP;;IACR,QAAI2F,EAAE,KAAK,OAAX,EAAoB;IACZ,UAAAnK,KAA0B,KAAKwE,KAA/B;IAAA,UAAEg0C,SAAS,eAAX;IAAA,UAAarwB,QAAQ,cAArB;;IACN,UAAIqwB,SAAJ,EAAe;IACb,aAAKd,gBAAL;IACD,OAFD,MAEO;IACLvvB,QAAAA,QAAQ,CAAC,KAAD,EAAQ,YAAR,CAAR;IACA,aAAKxU,QAAL,CAAc;IACZyjC,UAAAA,MAAM,EAAE;IADI,SAAd;IAGD;IACF;IACF,GAbD;;IAyBAS,EAAAA,uBAAA,kBAAA,GAAA,UAAkBtZ,IAAlB;IACE,QAAIA,IAAI,KAAK,IAAb,EAAmB;IACjB;IACD;;IAED,QAAMka,SAAS,GAAGla,IAAI,CAAC+R,OAAL,CAAa,cAAb,KAAgC1wC,QAAQ,CAACyN,IAA3D;IACA,QAAMS,MAAM,GACV2qC,SAAS,KAAK74C,QAAQ,CAACyN,IAAvB,GAA8B,MAA9B,GAAuC2b,QAAQ,CAACvb,MAAM,CAAC9N,gBAAP,CAAwB84C,SAAxB,EAAmC3qC,MAAnC,IAA6C,GAA9C,EAAmD,EAAnD,CADjD;IAEA,WAAOA,MAAM,KAAK,MAAX,IAAqB+O,KAAK,CAAC/O,MAAD,CAA1B,GAAqC,GAArC,GAA2CA,MAAlD;IACD,GATD;;IAuCA+pC,EAAAA,uBAAA,kBAAA,GAAA,UAAkB/nC,GAAlB;IAAA,oBAAA;;IACQ,QAAA9P,KAAgC,KAAKwE,KAArC;IAAA,QAAEiI,OAAO,aAAT;IAAA,QAAWtC,EAAE,QAAb;IAAA,QAAeP,YAAY,kBAA3B;IACN,QAAMiF,OAAO,GACX1E,EAAE,KAAK,OAAP,GACI;IACE2F,MAAAA,GAAG,KADL;IAEEgM,MAAAA,YAAY,EAAE,KAAK67B,gBAFrB;IAGEr/B,MAAAA,YAAY,EAAE,KAAK82B;IAHrB,KADJ,GAMI;IACEt/B,MAAAA,GAAG,KADL;IAEE5B,MAAAA,OAAO,EAAE,iBAACE,EAAD;IACPA,QAAAA,EAAE,CAAC4T,eAAH;;IACAtO,QAAAA,KAAI,CAAC4kC,YAAL,CAAkB,SAAlB;IACD;IALH,KAPN;IAeA,QAAMnrC,OAAO,GAAGxF,8BAAU,CAAC,uBAAD,EAA0BiC,YAA1B,CAA1B;;IAEA,QAAM8uC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,OAAD;IACzB,UAAMC,OAAO,GAAGllC,KAAI,CAAC8jC,QAAL,CAAcpzB,OAA9B;IACA,UAAMy0B,SAAS,GAAGj5C,QAAQ,CAACyN,IAA3B;IACA,UAAMyrC,YAAY,GAAG9vB,QAAQ,CAACvb,MAAM,CAAC9N,gBAAP,CAAwBi5C,OAAxB,EAAiC9qC,MAAlC,CAA7B;IACA,UAAIirC,gBAAgB,GAAG,KAAvB;IACA,UAAIC,WAAW,GAAG,KAAlB;IAEA,UAAMC,YAAY,GAAGJ,SAAS,CAAC1a,gBAAV,CAA2B,sBAA3B,CAArB;IACA8a,MAAAA,YAAY,CAAC52C,OAAb,CAAqB,UAAC62C,KAAD;IACnB,YAAIA,KAAK,CAACpF,QAAN,CAAe6E,OAAf,CAAJ,EAA6B;IAC3BI,UAAAA,gBAAgB,GAAG,IAAnB;IACA,cAAMI,YAAY,GAAGnwB,QAAQ,CAACvb,MAAM,CAAC9N,gBAAP,CAAwBu5C,KAAxB,EAA+BprC,MAAhC,CAA7B;;IACA,cAAIgrC,YAAY,GAAGK,YAAnB,EAAiC;IAC/BH,YAAAA,WAAW,GAAG,IAAd;IACA;IACD;IACF;IACF,OATD;;IAWA,UAAIH,SAAS,CAACO,WAAV,CAAsBT,OAAtB,KAAkCK,WAAlC,IAAiD,CAACH,SAAS,CAAC/E,QAAV,CAAmB6E,OAAnB,CAAlD,IAAiF,CAACI,gBAAtF,EAAwG;IACtG,eAAO,IAAP;IACD;;IACD,aAAO,KAAP;IACD,KAvBD;;IAyBA,QAAMM,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACn3B,KAAD;IACtB,UAAAliB,KAAiC0T,KAAI,CAAClP,KAAtC;IAAA,UAAEuI,IAAI,UAAN;IAAA,UAAQusC,oBAAoB,0BAA5B;;IACN,UAAIvsC,IAAI,IAAI2rC,kBAAkB,CAACx2B,KAAK,CAAC6C,MAAP,CAA1B,IAA2Du0B,oBAA/D,EAAqF;IACnF,YAAI,CAAC5lC,KAAI,CAAC6lC,wBAAL,CAA8Br3B,KAA9B,EAAqCxO,KAAI,CAAC8jC,QAA1C,CAAL,EAA0D;IACxD9jC,UAAAA,KAAI,CAAC4kC,YAAL,CAAkB,cAAlB;IACD;IACF;IACF,KAPD;;IASA,wBACEhzC,8BAAA,CAACouC,YAAD;IAAczrC,MAAAA,SAAS,EAAEkF;IAASwmC,MAAAA,cAAc,EAAE0F;WAA2BxqC,QAA7E,EACGpC,OADH,CADF;IAKD,GA1DD;;IA4DAorC,EAAAA,uBAAA,kBAAA,GAAA,UAAkB73C,EAAlB;;;IAAA,oBAAA;;;;YAAoB8P,GAAG;YAAExF,KAAK;YAAEmsC,SAAS;YAAE+C,eAAe;IAClD,QAAA3wC,KAA6C,KAAKrE,KAAlD;IAAA,QAAEkI,MAAM,YAAR;IAAA,QAAUzF,QAAQ,cAAlB;IAAA,QAAoB8F,IAAI,UAAxB;IAAA,QAA0BqrC,cAAc,oBAAxC;IACA,QAAAvsC,KAA2C,KAAK+H,KAAhD;IAAA,QAAE9F,MAAM,YAAR;IAAA,QAAUqpC,iBAAiB,uBAA3B;IAAA,QAA6BE,SAAS,eAAtC;IACN,QAAMX,QAAQ,GAAGhqC,MAAM,GAAG,KAAK+sC,eAAL,CAAqBnvC,KAArB,EAA4BmsC,SAA5B,EAAuC/pC,MAAvC,CAAH,GAAoDpC,KAA3E;;IACA,QAAIovC,cAAc,yBACbhD;IACH5oC,MAAAA,MAAM;UAFR;;IAIA,QAAIX,OAAO,GAAG,EAAd;;IAEA,QAAI,CAACirC,cAAL,EAAqB;IACnB,UAAMhtC,SAAS,SAAG,KAAKosC,QAAL,CAAcpzB,iDAASgN,YAAzC;IAEA,UAAMuoB,eAAe,SAAG,KAAKnC,QAAL,CAAcpzB,iDAAS9Z,MAAMxK,iBAAiB,YAAtE;;IACA,UAAI65C,eAAe,IAAIvuC,SAAnB,IAAgCqrC,SAAhC,IAA6C,CAACU,iBAAlD,EAAqE;IACnE,YAAMyC,WAAS,GAAGx1C,IAAI,CAAC6e,MAAL,GAAcE,QAAd,CAAuB,EAAvB,EAA2BphB,SAA3B,CAAqC,CAArC,EAAwC,CAAxC,CAAlB;IACA,YAAM83C,KAAK,GAAGpD,SAAS,CAACr2C,QAAV,CAAmB,KAAnB,CAAd;IAEA,YAAM05C,eAAe,GAAG,sCACCF,WADD,oEAAA,IAIlBC,KAAK,GAAG,iBAAezuC,SAAf,OAAH,GAAkC,EAJrB,8DAAA,GAONA,SAPM,sBAAA,IAQlByuC,KAAK,GAAG,iBAAH,GAAuB,EARV,iEAAA,GAWED,WAXF,mDAAA,GAaNxuC,SAbM,sBAAA,IAclByuC,KAAK,GAAG,iBAAH,GAAuB,EAdV,8EAAA,IAkBlBA,KAAK,GAAG,iBAAezuC,SAAf,OAAH,GAAkC,EAlBrB,yCAAxB;IAuBA,aAAKuI,QAAL,CAAc;IACZwjC,UAAAA,iBAAiB,EAAE2C,eADP;IAEZzC,UAAAA,SAAS;IAFG,SAAd;IAID;;IAGD,UAAM0C,qBAAqB,GAAG;IAC5BC,QAAAA,SAAS,EAAEjtC,IAAI,GACX,iBAAesqC,SAAf,+DADW,GAEX,kBAAgBA,SAAhB;IAHwB,OAA9B;IAMAqC,MAAAA,cAAc,kCACTA,iBACAK;IACHvsC,QAAAA,QAAQ,EAAE;YAHZ;IAKD,KAjDD,MAiDO;IACLL,MAAAA,OAAO,GAAGxF,8BAAU,WAEhBE,GAAC,KAAGuwC,cAAc,CAACrrC,KAAnB,GAA4B,KAAK6G,KAAL,CAAWwjC,QACvCvvC,GAAC,KAAGuwC,cAAc,CAAC6B,MAAnB,GAA6B,CAAC,KAAKrmC,KAAL,CAAWwjC,UAHzB,GAKlBnwC,QAAQ,CAACzC,KAAT,CAAeyD,SALG,CAApB;IAOD;;IAED,QAAMiyC,UAAU,GAAG;IACjBpqC,MAAAA,GAAG,KADc;IAEjBxF,MAAAA,KAAK,EAAEovC,cAFU;IAGjB,wBAAkBjD,SAHD;IAIjB,mBAAa+C,eAJI;IAKjB19B,MAAAA,YAAY,EAAE,KAAK67B,gBALF;IAMjBr/B,MAAAA,YAAY,EAAE,KAAK82B,gBANF;IAOjB+K,MAAAA,cAAc,EAAE;IACd,YAAI,CAACptC,IAAL,EAAW;IACT2G,UAAAA,KAAI,CAACC,QAAL,CAAc;IACZyjC,YAAAA,MAAM,EAAE;IADI,WAAd;IAGD;IACF;IAbgB,KAAnB;IAgBA,QAAMzmB,OAAO,gBAAGrrB,gBAAK,CAACu1B,YAAN,CACd5zB,QADc,EAEdmxC,cAAc,yBAAQ8B;IAAYjyC,MAAAA,SAAS,EAAEkF;UAA/B,gBAAgD+sC,WAFhD,CAAhB;IAIA,WAAOvpB,OAAP;IACD,GA1FD;;IA4FAknB,EAAAA,uBAAA,OAAA,GAAA;IAAA,oBAAA;;IACQ,QAAA73C,KAAyE,KAAKwE,KAA9E;IAAA,QAAEiyC,SAAS,eAAX;IAAA,QAAa1qC,YAAY,kBAAzB;IAAA,QAA2B+8B,IAAI,UAA/B;IAAA,QAAiCmP,eAAe,qBAAhD;IAAA,QAAkDjB,kBAAkB,wBAApE;IACA,QAAAnvC,KAAgC,KAAK+L,KAArC;IAAA,QAAEujC,iBAAiB,uBAAnB;IAAA,QAAqBC,MAAM,YAA3B;IAEN,QAAMgD,iBAAiB,gBACrB90C,8BAAA,CAAC+0C,kBAAD;IACE5D,MAAAA,SAAS,EAAEA;IACX7C,MAAAA,QAAQ,EAAE,KAAK4D;IACf8C,MAAAA,SAAS;IACPC,QAAAA,eAAe,EAAE;IAAEC,UAAAA,iBAAiB,EAAEvC,eAAe,IAAIr4C,QAAQ,CAACyN;IAAjD;IACjBy7B,QAAAA,IAAI,EAAE;IAAE2R,UAAAA,OAAO,EAAE3R;IAAX;aACFkO,kBAAkB,IAAI;IACxBtqC,QAAAA,MAAM,EAAE;IACNA,UAAAA,MAAM,EAAKsqC,kBAAkB,CAAC/1B,CAAnB,SAAA,GAA2B+1B,kBAAkB,CAACE,CAA9C;IADL;IADgB;SAN9B,EAaG,KAAKO,iBAbR,CADF;IAkBA,wBACEnyC,8BAAA,CAACo1C,mBAAD,MAAA,eACEp1C,8BAAA,QAAA,MAAA,EAAQ6xC,iBAAR,CADF,eAEE7xC,8BAAA,CAACq1C,qBAAD;IAAW/G,MAAAA,QAAQ,EAAE,KAAK3a;SAA1B,EAAuC,UAACj5B,EAAD;cAAG8P,GAAG;IAAO,aAAA4D,KAAI,CAACknC,iBAAL,CAAuB9qC,GAAvB,CAAA;IAA2B,KAA/E,CAFF,EAIGsnC,MAAM,IACLrrC,YADD,IAEC,CAACirC,kBAFF,iBAGCppC,mBAAQ,CAACC,YAAT,eACEvI,8BAAA,CAAC+0C,kBAAD;IACE5D,MAAAA,SAAS,EAAEA;IACX7C,MAAAA,QAAQ,EAAE,KAAK4D;IACf8C,MAAAA,SAAS,EAAE;IACTC,QAAAA,eAAe,EAAE;IAAEC,UAAAA,iBAAiB,EAAEvC,eAAe,IAAIr4C,QAAQ,CAACyN;IAAjD,SADR;IAETy7B,QAAAA,IAAI,EAAE;IAAE2R,UAAAA,OAAO,EAAE3R;IAAX;IAFG;SAHb,EAQG,KAAK2O,iBARR,CADF,EAWE73C,QAAQ,CAACyN,IAXX,CAPJ,EAqBG+pC,MAAM,IAAIrrC,YAAV,IAA0BirC,kBAA1B,iBAAgDppC,mBAAQ,CAACC,YAAT,CAAsBusC,iBAAtB,EAAyCx6C,QAAQ,CAACyN,IAAlD,CArBnD,EAuBG+pC,MAAM,IAAI,CAACrrC,YAAX,IAA2B,CAACirC,kBAA5B,iBACC1xC,8BAAA,CAAC+0C,kBAAD;IAAQ5D,MAAAA,SAAS,EAAEA;IAAW7C,MAAAA,QAAQ,EAAE,KAAK4D;SAA7C,EACG,KAAKC,iBADR,CAxBJ,CADF;IA+BD,GArDD;;IAhVOI,EAAAA,0BAAA,GAAe;IACpB1tC,IAAAA,EAAE,EAAE,OADgB;IAEpBuC,IAAAA,MAAM,EAAE,QAFY;IAGpB4sC,IAAAA,oBAAoB,EAAE,IAHF;IAIpBd,IAAAA,SAAS,EAAE,IAJS;IAKpBzsC,IAAAA,YAAY,EAAE,IALM;IAMpBzB,IAAAA,KAAK,EAAE;IANa,GAAf;IAsYT,sBAAA;IA9YA,EAAmChF,gBAAK,CAACkY,UAAzC;;IClFA,IAAMzY,SAAS,GAAG,CAChB,cADgB,EAEhB,SAFgB,EAGhB,WAHgB,EAIhB,IAJgB,EAKhB,MALgB,EAMhB,sBANgB,EAOhB,QAPgB,EAQhB,eARgB,CAAlB;QAoFayH,OAAO,GAAG,SAAVA,OAAU,CAAChI,KAAD;;;IAEnB,MAAAmF,QAAQ,GAUNnF,KAAK,SAVP;IAAA,MACAw6B,WAAW,GASTx6B,KAAK,YAVP;IAAA,MAEA6G,IAAI,GAQF7G,KAAK,KAVP;IAAA,MAGAyC,QAAQ,GAONzC,KAAK,SAVP;IAAA,MAIA2jB,QAAQ,GAMN3jB,KAAK,SAVP;IAAA,MAKAyD,SAAS,GAKPzD,KAAK,UAVP;IAAA,MAMAq2C,qBAAqB,GAInBr2C,KAAK,sBAVP;IAAA,MAOAqD,KAGErD,KAAK,gBAVP;IAAA,MAOAyzC,eAAe,mBAAGr4C,QAAQ,CAACyN,SAP3B;IAAA,MAQAnF,IAAI,GAEF1D,KAAK,KAVP;IAAA,MASG6L,IAAI,UACL7L,OAXE,WAAA,eAAA,QAAA,YAAA,YAAA,aAAA,yBAAA,mBAAA,QAAA,EACJ;;IAYI,MAAA2C,KAAkB7B,gBAAK,CAAC8B,QAAN,CAAwB,CAAC,CAAC5C,KAAK,CAACuI,IAAhC,CAAlB;IAAA,MAACA,IAAI,QAAL;IAAA,MAAOC,OAAO,QAAd;;IACA,MAAA3D,KAAkB/D,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAlB;IAAA,MAACse,IAAI,QAAL;IAAA,MAAO2O,OAAO,QAAd;;IAEN/uB,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAInI,KAAK,CAACuI,IAAN,KAAekF,SAAnB,EAA8BjF,OAAO,CAACxI,KAAK,CAACuI,IAAP,CAAP;IAC/B,GAFD,EAEG,CAACvI,KAAK,CAACuI,IAAP,CAFH;IAIA,MAAM+tC,eAAe,GAAGx1C,gBAAK,CAACy/B,WAAN,CAAkB,UAACgW,OAAD;IACxC/tC,IAAAA,OAAO,CAAC+tC,OAAD,CAAP;IACD,GAFuB,EAErB,EAFqB,CAAxB;IAIAz1C,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI,CAAC+Y,IAAL,EAAW;IACT,UAAI,aAAauyB,eAAb,IAAgCA,eAAe,CAAC7zB,OAApD,EAA6D;IAC3DiQ,QAAAA,OAAO,CAAC,IAAD,CAAP;IACD;IACF;IACF,GAND,EAMG,CAAC4jB,eAAD,CANH;IAQA,MAAM9qC,OAAO,GAAGxF,8BAAU;IAEtB6E,IAAAA,OAAO,EAAE;SACTxM,GAAC,gBAAD,GAAmBqL,QAHG,GAKxBpD,SALwB,CAA1B;IAQA,MAAM+yC,cAAc,gBAClB11C,8BAAA,MAAA;qBAAe;IAAuB2C,IAAAA,SAAS,EAAEkF;sBAAqB;uBAAmBJ;qBAAiB7E;OAA1G,EACGjB,QADH,CADF;IAMA,sBACE3B,8BAAA,CAACuyC,aAAD,eACMxnC;IACJqV,IAAAA,IAAI,EAAEA;IACNuyB,IAAAA,eAAe,EAAE,aAAaA,eAAb,GAA+BA,eAAe,CAAC7zB,OAA/C,GAAyD6zB;IAC1ElrC,IAAAA,IAAI,EAAEA;IACN+7B,IAAAA,IAAI,EAAE+R;IACNvwC,IAAAA,KAAK,EAAE00B;IACP7W,IAAAA,QAAQ,EAAEA,QAAQ,IAAI2yB;IACtBrE,IAAAA,SAAS,EAAE9sC;QARb,EAUGqxC,cAVH,CADF;IAcD;IAEDxuC,OAAO,CAAC3C,WAAR,GAAsB,SAAtB;IAEA2C,OAAO,CAACzC,YAAR,GAAuB9E,MAAM,CAACq+B,MAAP,CAAc,EAAd,EAAkBx+B,WAAW,CAAC+yC,aAAa,CAAC9tC,YAAf,EAA6BhF,SAA7B,EAAwC,IAAxC,CAA7B,EAA4E;IACjG2H,EAAAA,MAAM,EAAE,OADyF;IAEjG/C,EAAAA,QAAQ,EAAE,QAFuF;IAGjGkxC,EAAAA,qBAAqB,EAAE,IAH0E;IAIjG7b,EAAAA,WAAW,EAAE;IAJoF,CAA5E,CAAvB;;IC9JA,IAAMic,UAAQ,GAAG;IACfC,EAAAA,SAAS,EAAE,WADI;IAEfC,EAAAA,MAAM,EAAE,QAFO;IAGfC,EAAAA,KAAK,EAAE;IAHQ,CAAjB;QAqEaC,SAAS,GAAG,SAAZA,SAAY,CAAC72C,KAAD;;;IAErB,MAAA82C,WAAW,GAYT92C,KAAK,YAZP;IAAA,MACA+2C,eAAe,GAWb/2C,KAAK,gBAZP;IAAA,MAEA2L,QAAQ,GAUN3L,KAAK,SAZP;IAAA,MAGA6C,KAAK,GASH7C,KAAK,MAZP;IAAA,MAIAkiB,WAAW,GAQTliB,KAAK,YAZP;IAAA,MAKAm+B,YAAY,GAOVn+B,KAAK,aAZP;IAAA,MAMAzB,KAAK,GAMHyB,KAAK,MAZP;IAAA,MAOAyD,SAAS,GAKPzD,KAAK,UAZP;IAAA,MAQAo4B,SAAS,GAIPp4B,KAAK,UAZP;IAAA,MASA8K,QAAQ,GAGN9K,KAAK,SAZP;IAAA,MAUAshB,MAAM,GAEJthB,KAAK,OAZP;IAAA,MAWAq+B,OAAO,GACLr+B,KAAK,QAZP;IAcF,MAAMyzB,QAAQ,gBAAG3yB,gBAAK,CAAC0zB,SAAN,EAAjB;;IACM,MAAA7xB,KAAoB7B,gBAAK,CAAC8B,QAAN,CAAerE,KAAK,IAAI4/B,YAAxB,CAApB;IAAA,MAAC6Y,KAAK,QAAN;IAAA,MAAQC,QAAQ,QAAhB;;IACA,MAAApyC,KAA8B/D,gBAAK,CAAC8B,QAAN,CAAe,EAAf,CAA9B;IAAA,MAACs0C,UAAU,QAAX;IAAA,MAAaC,aAAa,QAA1B;;IAEN,MAAMl3C,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEAc,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI5J,KAAK,KAAKkP,SAAd,EAAyB;IACvBwpC,MAAAA,QAAQ,CAAC14C,KAAD,CAAR;IACD;IACF,GAJD,EAIG,CAACA,KAAD,CAJH;IAMA,MAAM64C,oBAAoB,GAAGj0C,8BAAU,WACrC3H,GAAC,mBAAD,GAAsB,MACtBA,GAAC,0BAAD,GAA6BqH,SAFQ,EAAvC;IAKA,MAAMw0C,cAAc,GAAGl0C,8BAAU;IAE7B0zC,IAAAA,SAAS,EAAE;SACXxzC,GAAC,sBAAD,GAAyBsI,UACzBtI,GAAC,uBAAD,GAA0B2zC,KAAK,IAAIA,KAAK,CAAC55C,MAAN,GAAe,GAClDiG,GAAC,mBAAD,GAAsBR,SALO,GAO/BY,SAP+B,CAAjC;;IAUA,MAAM6zC,aAAa,GAAG,SAAhBA,aAAgB,CAACC,YAAD;IACpB,QAAIzsC,QAAJ,EAAcA,QAAQ,CAACysC,YAAD,CAAR;IACf,GAFD;;IAIA,MAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACnxC,KAAD;IAC1B,QAAMkxC,YAAY,kBAAOP,MAAzB;;IACAO,IAAAA,YAAY,CAACta,MAAb,CAAoB52B,KAApB,EAA2B,CAA3B;;IACA,QAAI,CAAC9H,KAAL,EAAY;IACV04C,MAAAA,QAAQ,CAACM,YAAD,CAAR;IACD;;IAEDD,IAAAA,aAAa,CAACC,YAAD,CAAb;IACD,GARD;;IAUA,MAAME,gBAAgB,GAAG,SAAnBA,gBAAmB;IACvB,QAAI,CAACP,UAAL,EAAiB;IAEjB,QAAMQ,IAAI,GAAGR,UAAU,CAACl0C,IAAX,EAAb;;IACA,QAAI,CAAC+zC,eAAe,IAAIC,KAAK,CAACpqC,OAAN,CAAc8qC,IAAd,MAAwB,CAAC,CAA7C,KAAmDA,IAAvD,EAA6D;IAC3D,UAAMH,YAAY,kBAAOP,QAAOU,MAAhC;;IAEA,UAAI,CAACn5C,KAAL,EAAY;IACV04C,QAAAA,QAAQ,CAACM,YAAD,CAAR;IACD;;IAEDD,MAAAA,aAAa,CAACC,YAAD,CAAb;IACAJ,MAAAA,aAAa,CAAC,EAAD,CAAb;IACD;IACF,GAdD;;IAgBA,MAAMQ,kBAAkB,GAAG,SAArBA,kBAAqB;IACzB,QAAMJ,YAAY,GAAa,EAA/B;;IAEA,QAAI,CAACh5C,KAAL,EAAY;IACV04C,MAAAA,QAAQ,CAACM,YAAD,CAAR;IACD;;IAEDD,IAAAA,aAAa,CAACC,YAAD,CAAb;IACD,GARD;;IAUA,MAAM95B,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvB,QAAMk6B,WAAW,GAAGZ,KAAK,CAAC55C,MAA1B;;IAEA,YAAQsgB,KAAK,CAAClX,GAAd;IACE,WAAKiwC,UAAQ,CAACE,MAAd;IACA,WAAKF,UAAQ,CAACC,SAAd;IACE,YAAIQ,UAAU,KAAK,EAAf,IAAqBU,WAAW,GAAG,CAAvC,EAA0C;IACxCJ,UAAAA,mBAAmB,CAACI,WAAW,GAAG,CAAf,CAAnB;IACD;;IACD;;IACF,WAAKnB,UAAQ,CAACG,KAAd;IACEl5B,QAAAA,KAAK,CAAC7T,cAAN;IACA4tC,QAAAA,gBAAgB;IAChB;IAVJ;IAcD,GAjBD;;IAmBA,MAAMI,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACn+B,CAAD;IAC3By9B,IAAAA,aAAa,CAACz9B,CAAC,CAAC6G,MAAF,CAAShiB,KAAV,CAAb;IACD,GAFD;;IAIA,MAAMoL,cAAc,GAAG,SAAjBA,cAAiB;;;IACrB,UAAA8pB,QAAQ,CAAC7T,OAAT,UAAA,iBAAA,SAAA,MAAkBoX,OAAlB;IACD,GAFD;;IAIA,MAAM8gB,cAAc,GAAGd,KAAK,CAAC7wC,GAAN,CAAU,UAACuxC,IAAD,EAAOrxC,KAAP;IACvB,QAAA7K,KAAqCs7C,WAAW,KAAhD;IAAA,QAAAtsC,IAAI,mBAAG,YAAP;IAAA,QAAgBd,QAAO,GAAcotC,WAAW,QAAhD;IAAA,QAA4BjrC,IAAI,UAAKirC,aAAvC,OAAA,WAAA,EAAE;;IAER,wBACEh2C,8BAAA,CAAC+c,IAAD;uBACY;IACV5T,MAAAA,KAAK,EAAEytC;IACPh0C,MAAAA,IAAI,EAAEg0C;IACNltC,MAAAA,IAAI,EAAEA;IACNmB,MAAAA,QAAQ,EAAEA;IACVnF,MAAAA,GAAG,EAAEH;IACL5C,MAAAA,SAAS,EAAC;IACViG,MAAAA,OAAO,EAAE;IAAM,eAAAA,QAAO,IAAIA,QAAO,CAACguC,IAAD,EAAOrxC,KAAP,CAAlB;IAA+B;IAC9C+W,MAAAA,OAAO,EAAE;IAAM,eAAAo6B,mBAAmB,CAACnxC,KAAD,CAAnB;IAA0B;WACrCwF,KAVN,CADF;IAcD,GAjBsB,CAAvB;IAmBA,sBAGE/K,8BAAA,MAAA;qBAAe;IAAiC2C,IAAAA,SAAS,EAAE2zC;OAA3D,eACEt2C,8BAAA,MAAA;qBACY;SACNb;IACJwD,IAAAA,SAAS,EAAE4zC;IACX3tC,IAAAA,OAAO,EAAEC;IACT6B,IAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQ;QAL5B,eAOE7K,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGuzC,KAAK,IAAIA,KAAK,CAAC55C,MAAN,GAAe,CAAxB,IAA6B06C,cADhC,eAEEh3C,8BAAA,QAAA;qBACY;IACVwK,IAAAA,GAAG,EAAEmoB;IACLhwB,IAAAA,SAAS,EAAC;IACV20B,IAAAA,SAAS,EAAEA;IACXlW,IAAAA,WAAW,EAAE80B,KAAK,IAAIA,KAAK,CAAC55C,MAAN,GAAe,CAAxB,GAA4B,EAA5B,GAAiC8kB;IAC9CvW,IAAAA,QAAQ,EAAEA;IACVpN,IAAAA,KAAK,EAAE24C;IACP51B,IAAAA,MAAM,EAAEA;IACR+c,IAAAA,OAAO,EAAEA;IACTvzB,IAAAA,QAAQ,EAAE+sC;IACVz9B,IAAAA,SAAS,EAAEqD;OAXb,CAFF,CAPF,EAwBGu5B,KAAK,CAAC55C,MAAN,GAAe,CAAf,iBACC0D,8BAAA,CAACsB,IAAD;qBACY;IACVsB,IAAAA,IAAI,EAAC;IACLzC,IAAAA,UAAU,EAAE0K,QAAQ,GAAG,UAAH,GAAgB;IACpClI,IAAAA,SAAS,EAAC;IACViG,IAAAA,OAAO,EAAEiuC;IACTnsC,IAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQ;OAN5B,CAzBJ,CADF,CAHF;IAyCD;IAEDkrC,SAAS,CAACxxC,WAAV,GAAwB,WAAxB;IACAwxC,SAAS,CAACtxC,YAAV,GAAyB;IACvBuxC,EAAAA,WAAW,EAAE,EADU;IAEvB3Y,EAAAA,YAAY,EAAE,EAFS;IAGvB4Y,EAAAA,eAAe,EAAE,KAHM;IAIvB3e,EAAAA,SAAS,EAAE;IAJY,CAAzB;;ICvOO,IAAM2f,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,QAAD,EAAoBrsC,QAApB;IAC/B,SAAOA,QAAQ,GAAG,UAAH,GAAgBqsC,QAAQ,GAAG,MAAH,GAAY,SAAnD;IACD,CAFM;IAIA,IAAMz7B,iBAAiB,GAAG,SAApBA,iBAAoB,CAACy7B,QAAD,EAAoBrsC,QAApB;IAC/B,SAAOA,QAAQ,GAAG,UAAH,GAAgBqsC,QAAQ,GAAG,cAAH,GAAoB,SAA3D;IACD,CAFM;IAIA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACD,QAAD;IAChC,SAAOA,QAAQ,GAAG,SAAH,GAAe,WAA9B;IACD,CAFM;IAIA,IAAME,OAAO,GAAG,SAAVA,OAAU,CAACC,KAAD,EAAgBplC,MAAhB;IACrB,OAAmB,UAAA,EAAAqlC,eAAnB,EAAmB95C,mBAAnB,EAAmBA,IAAnB,EAA0B;IAArB,QAAMuM,IAAI,cAAV;;IACH,QAAKkI,MAAM,CAACrP,IAAP,IAAemH,IAAI,CAACnH,IAAL,KAAcqP,MAAM,CAACrP,IAArC,IAA+CqP,MAAM,CAACjJ,IAAP,IAAee,IAAI,CAACf,IAAL,KAAciJ,MAAM,CAACjJ,IAAvF,EAA8F;IAC5F,aAAOe,IAAP;IACD;;IACD,QAAIA,IAAI,CAACwtC,OAAT,EAAkB;IAChB,UAAMC,UAAU,GAAGztC,IAAI,CAACwtC,OAAL,CAAaE,IAAb,CACjB,UAACC,OAAD;IAAa,eAACzlC,MAAM,CAACrP,IAAP,IAAe80C,OAAO,CAAC90C,IAAR,KAAiBqP,MAAM,CAACrP,IAAxC,IAAkDqP,MAAM,CAACjJ,IAAP,IAAe0uC,OAAO,CAAC1uC,IAAR,KAAiBiJ,MAAM,CAACjJ,IAAzF;IAA8F,OAD1F,CAAnB;IAGA,UAAIwuC,UAAJ,EAAgB,OAAOA,UAAP;IACjB;IACF;;IACD,SAAO,IAAP;IACD,CAbM;IAeA,IAAMG,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACN,KAAD,EAAgBplC,MAAhB;IAC9B,MAAM2lC,aAAa,GAA4B,EAA/C;IACA,MAAMJ,UAAU,GAAgBvlC,MAAM,GAAGmlC,OAAO,CAACC,KAAD,EAAQplC,MAAR,CAAV,GAA4B,IAAlE;;IAEA,OAAmB,UAAA,EAAA4lC,eAAnB,EAAmBr6C,mBAAnB,EAAmBA,IAAnB,EAA0B;IAArB,QAAMuM,IAAI,cAAV;IAEH,QAAM+tC,kBAAkB,GAAG,CAAAN,UAAU,SAAV,IAAAA,UAAU,WAAV,SAAA,GAAAA,UAAU,CAAE50C,IAAZ,CAAiB9F,KAAjB,CAAuB,GAAvB,EAA4B,CAA5B,CAAA,MAAmCiN,IAAI,CAACnH,IAAxC,IAAgDmH,IAAI,CAACY,QAAhF;;IACA,QAAIZ,IAAI,CAACwtC,OAAT,EAAkB;IAChBK,MAAAA,aAAa,CAAC7tC,IAAI,CAACnH,IAAN,CAAb,GAA2B,CAAC,CAACk1C,kBAA7B;IACD;IACF;;IACD,SAAOF,aAAP;IACD,CAZM;IAcA,IAAMG,YAAY,GAAG,SAAfA,YAAe,CAACV,KAAD,EAAgBttC,IAAhB,EAA4BkI,MAA5B;IAC1B,MAAIA,MAAJ,EAAY;IACV,QAAM+lC,cAAc,GAAGZ,OAAO,CAACC,KAAD,EAAQplC,MAAR,CAA9B;IACA,WACE,CAAC,CAAC+lC,cAAF,KACCA,cAAc,KAAKjuC,IAAnB,IACCiuC,cAAc,CAACp1C,IAAf,CAAoB9F,KAApB,CAA0B,GAA1B,EAA+B,CAA/B,MAAsCiN,IAAI,CAACnH,IAD5C,IAECo1C,cAAc,CAACp1C,IAAf,KAAwBmH,IAAI,CAACnH,IAF9B,IAGE,CAAC,CAACo1C,cAAc,CAAChvC,IAAjB,IAAyBgvC,cAAc,CAAChvC,IAAf,KAAwBe,IAAI,CAACf,IAJzD,CADF;IAOD;;IACD,SAAO,KAAP;IACD,CAZM;IAcA,IAAMivC,eAAe,GAAG,SAAlBA,eAAkB,CAACf,QAAD,EAAoBrsC,QAApB;IAC7B,SAAOA,QAAQ,GAAG,kBAAH,GAAwBqsC,QAAQ,GAAG,cAAH,GAAoB,SAAnE;IACD,CAFM;;ICvCP,IAAMgB,SAAQ,GAAG,SAAXA,QAAW,CAACh5C,KAAD;IACP,MAAAi5C,iBAAiB,GAAKj5C,KAAK,kBAA3B;IACR,sBAAOc,8BAAA,CAACsB,IAAD;IAAMqB,IAAAA,SAAS,EAAC;IAAOC,IAAAA,IAAI,EAAEu1C,iBAAiB,GAAG,mBAAH,GAAyB;OAAvE,CAAP;IACD,CAHD;;IAKA,IAAMC,UAAS,GAAG,SAAZA,SAAY,CAACl5C,KAAD;;;IACR,MAAA2L,QAAQ,GAAsB3L,KAAK,SAAnC;IAAA,MAAUg4C,QAAQ,GAAYh4C,KAAK,SAAnC;IAAA,MAAoBgvB,KAAK,GAAKhvB,KAAK,MAAnC;IAER,MAAMm5C,UAAU,GAAGh2C,8BAAU,WAC3B3H,GAAC,iBAAD,GAAoB,MACpBA,GAAC,2BAAD,GAA8BmQ,YAFH,EAA7B;IAKA,sBACE7K,8BAAA,CAACwvC,KAAD;IACE9mC,IAAAA,MAAM,EAAEmC;IACRlI,IAAAA,SAAS,EAAE01C;IACXl4C,IAAAA,UAAU,EAAEg3C,kBAAkB,CAACD,QAAD;qBACpB;OAJZ,EAMGhpB,KANH,CADF;IAUD,CAlBD;;IAoBO,IAAMoqB,UAAQ,GAAG,SAAXA,QAAW,CAACp5C,KAAD;;;IACd,MAAA6K,IAAI,GACV7K,KAAK,KADC;IAAA,MAAMg4C,QAAQ,GACpBh4C,KAAK,SADC;IAAA,MAAgByL,QAAQ,GAC9BzL,KAAK,SADC;IAAA,MAA0Bq5C,OAAO,GACvCr5C,KAAK,QADC;IAAA,MAAmCs5C,UAAU,GACnDt5C,KAAK,WADC;IAAA,MAA+Cu5C,UAAU,GAC/Dv5C,KAAK,WADC;IAAA,MAA2Di5C,iBAAiB,GAClFj5C,KAAK,kBADC;IAAA,MAA8E0J,OAAO,GAC3F1J,KAAK,QADC;IAAA,MAAuFw5C,kBAAkB,GAC/Gx5C,KAAK,mBADC;;IAGF,MAAAqD,KAAwCvC,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAxC;IAAA,MAAC62C,eAAe,QAAhB;IAAA,MAAkBC,kBAAkB,QAApC;;IACE,MAAAC,gBAAgB,GAAKz0C,OAAO,CAAC00C,cAAR,mBAArB;IACR,MAAMC,UAAU,gBAAG/4C,gBAAK,CAAC0zB,SAAN,EAAnB;IAEA1zB,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAM2xC,WAAW,GAAGH,gBAAgB,CAACE,UAAD,CAApC;IACAH,IAAAA,kBAAkB,CAACI,WAAD,CAAlB;IACD,GAHD,EAGG,CAACD,UAAD,CAHH;;IAKA,MAAME,UAAS,GAAG,SAAZA,SAAY,CAAC/5C,KAAD;IACR,QAAAiK,KAAK,GAAiBjK,KAAK,MAA3B;IAAA,QAAOg6C,UAAU,GAAKh6C,KAAK,WAA3B;IACR,wBACEc,8BAAA,CAACyC,IAAD;uBACY;IACV+H,MAAAA,GAAG,EAAEuuC;IACL3+C,MAAAA,KAAK,EAAE8+C;IACPv2C,MAAAA,SAAS,EAAE,uCAAoC61C,UAAU,IAAIzuC,IAAI,CAACmkB,KAAL,KAAevhB,SAA7B,GAAyC,EAAzC,GAA8C,MAAlF;SAJb,EAMGxD,KANH,CADF;IAUD,GAZD;;IAcA,MAAMN,cAAc,GAAG,SAAjBA,cAAiB,CAACC,EAAD;IACrBA,IAAAA,EAAE,CAACC,cAAH;IACA,QAAIH,OAAJ,EAAaA,OAAO,CAACmB,IAAD,CAAP;IACd,GAHD;;IAKA,MAAM5K,SAAS;IACbyJ,IAAAA,OAAO,EAAEC;IACTK,IAAAA,IAAI,EAAEa,IAAI,CAACf;IACX0B,IAAAA,QAAQ,EAAE;SACPzL,gBAAgB,CAACC,KAAD,EAJrB;;IAOA,MAAMi6C,SAAS,GAAGlB,eAAe,CAACf,QAAD,EAAWntC,IAAI,CAACc,QAAhB,CAAjC;IAEA,MAAMuuC,SAAS,GAAG/2C,8BAAU,WAC1B3H,GAAC,WAAD,GAAc,MACdA,GAAC,qBAAD,GAAwB,MACxBA,GAAC,sBAAD,GAAyB,CAACiQ,UAC1BjQ,GAAC,qBAAD,GAAwBiQ,UACxBjQ,GAAC,mBAAD,GAAsBw8C,UACtBx8C,GAAC,qBAAD,GAAwBqP,IAAI,CAACc,UAC7BnQ,GAAC,oBAAD,GAAuB+9C,UAAU,IAAI9tC,UACrCjQ,GAAC,oBAAD,GAAuB69C,OAAO,IAAI5tC,UAClCjQ,GAAC,WAASy+C,UAAV,GAAwB,QATE,EAA5B;;IAYA,MAAME,aAAa,GAAG,SAAhBA,aAAgB;IACpB,QAAIb,UAAJ,EAAgB;IACd,0BAAOx4C,8BAAA,CAACk4C,SAAD;IAAUC,QAAAA,iBAAiB,EAAEA;WAA7B,CAAP;IACD;;IAED,QAAIpuC,IAAI,CAACmkB,KAAL,KAAevhB,SAAnB,EAA8B;IAC5B,UAAMuhB,KAAK,GAAGnkB,IAAI,CAACmkB,KAAL,GAAa,EAAb,GAAkB,KAAlB,GAA0BnkB,IAAI,CAACmkB,KAA7C;IACA,0BAAOluB,8BAAA,CAACo4C,UAAD;IAAWvtC,QAAAA,QAAQ,EAAEd,IAAI,CAACc;IAAUqsC,QAAAA,QAAQ,EAAEA;IAAUhpB,QAAAA,KAAK,EAAEA;WAA/D,CAAP;IACD;;IACD,WAAO,IAAP;IACD,GAVD;;IAYA,MAAI,CAACvjB,QAAD,IAAa,CAACZ,IAAI,CAACvE,IAAvB,EAA6B,OAAO,IAAP;;IAE7B,MAAM8zC,eAAe,yBAChBp6C;IACH65C,IAAAA,UAAU;IACVb,IAAAA,QAAQ,EAAE;IAAM,aAAAA,SAAQ,CAAC;IAAEC,QAAAA,iBAAiB;IAAnB,OAAD,CAAR;IAA+B;IAC/Cc,IAAAA,SAAS,EAAE;IAAM,aAAAA,UAAS,CAAC;IAAE9vC,QAAAA,KAAK,EAAEY,IAAI,CAACZ,KAAd;IAAqB+vC,QAAAA,UAAU,EAAEC;IAAjC,OAAD,CAAT;IAAuD;IACxEf,IAAAA,SAAS,EAAE;IACT,aAAAruC,IAAI,CAACmkB,KAAL,KAAevhB,SAAf,GAA2ByrC,UAAS,CAAC;IAAEvtC,QAAAA,QAAQ,EAAEd,IAAI,CAACc,QAAjB;IAA2BqsC,QAAAA,QAAQ,EAAEA,QAArC;IAA+ChpB,QAAAA,KAAK,EAAEnkB,IAAI,CAACmkB;IAA3D,OAAD,CAApC,gBAA2GluB,8BAAA,0BAAA,MAAA,CAA3G;IAAgH;QANpH;;IASA,SAAO04C,kBAAkB,GACvBA,kBAAkB,CAACY,eAAD,CADK,gBAKvBt5C,8BAAA,CAACoE,OAAD;IAASiF,IAAAA,WAAW,EAAEsB,QAAQ,GAAGguC,eAAH,GAAqB;IAAMj1C,IAAAA,OAAO,EAAEqG,IAAI,CAACZ;IAAO9E,IAAAA,QAAQ,EAAC;OAAvF,eACErE,8BAAA,CAACiJ,MAAD;IAAMiT,IAAAA,aAAa,EAAC;IAAIvZ,IAAAA,SAAS,EAAEy2C;SAAej6C,UAAlD,eACEa,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGoH,IAAI,CAACvE,IAAL,iBACCxF,8BAAA,CAACsB,IAAD;qBACY;IACVqB,IAAAA,SAAS,EAAEgI,QAAQ,GAAG,MAAH,GAAY;IAC/B/H,IAAAA,IAAI,EAAEmH,IAAI,CAACvE;IACXkE,IAAAA,IAAI,EAAEK,IAAI,CAACe;OAJb,CAFJ,EASGH,QAAQ,iBAAI3K,8BAAA,CAACi5C,UAAD;IAAW9vC,IAAAA,KAAK,EAAEY,IAAI,CAACZ;IAAO+vC,IAAAA,UAAU,EAAEC;OAA1C,CATf,CADF,EAYGxuC,QAAQ,IAAI0uC,aAAa,EAZ5B,CADF,CALF;IAsBD,CAlGM;AAoGPf,cAAQ,CAAC7zC,YAAT,GAAwB;IACtByyC,EAAAA,QAAQ,EAAE;IADY,CAAxB;;QCjFaqC,WAAW,GAAG,SAAdA,WAAc,CAACr6C,KAAD;;;IACjB,MAAAm4C,KAAK,GAAsFn4C,KAAK,MAAhG;IAAA,MAAO+S,MAAM,GAA8E/S,KAAK,OAAhG;IAAA,MAAe0J,OAAO,GAAqE1J,KAAK,QAAhG;IAAA,MAAwByL,QAAQ,GAA2DzL,KAAK,SAAhG;IAAA,MAAkCq5C,OAAO,GAAkDr5C,KAAK,QAAhG;IAAA,MAA2Cs6C,YAAY,GAAoCt6C,KAAK,aAAhG;IAAA,MAAyDyD,SAAS,GAAyBzD,KAAK,UAAhG;IAAA,MAAoEw5C,kBAAkB,GAAKx5C,KAAK,mBAAhG;;IAEF,MAAAqD,KAAkDvC,gBAAK,CAAC8B,QAAN,CAAwC,EAAxC,CAAlD;IAAA,MAAC23C,oBAAoB,QAArB;IAAA,MAAuBC,uBAAuB,QAA9C;;IACA,MAAA73C,KAA4B7B,gBAAK,CAAC8B,QAAN,CAAwC,EAAxC,CAA5B;IAAA,MAAC63C,SAAS,QAAV;IAAA,MAAYC,YAAY,QAAxB;;IACN,MAAMz6C,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEAc,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAInI,KAAK,CAAC+S,MAAV,EAAkB;IAChB,UAAM4nC,QAAQ,GAAGzC,OAAO,CAACC,KAAD,EAAQn4C,KAAK,CAAC+S,MAAd,CAAxB;IACA,UAAI4nC,QAAJ,EAAcC,eAAe,CAACD,QAAD,EAAW,IAAX,CAAf;IACf;IACF,GALD,EAKG,CAAC36C,KAAK,CAAC+S,MAAP,CALH;IAOAjS,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAMuwC,aAAa,GAAGD,gBAAgB,CAACN,KAAD,EAAQplC,MAAR,CAAtC;IACAynC,IAAAA,uBAAuB,CAAC9B,aAAD,CAAvB;IACD,GAHD,EAGG,EAHH;;IAKA,MAAMkC,eAAe,GAAG,SAAlBA,eAAkB,CAAC/vC,IAAD,EAAmB1M,GAAnB;;;IACtB,QAAMw8C,QAAQ,GAAGzC,OAAO,CAACC,KAAD,EAAQttC,IAAR,CAAxB;;IACA,QAAI8vC,QAAJ,EAAc;IACZ,UAAME,SAAS,GAAGF,QAAQ,CAACj3C,IAAT,CAAc9F,KAAd,CAAoB,GAApB,CAAlB;;IACA,UAAIi9C,SAAS,CAACz9C,MAAV,GAAmB,CAAnB,IAAwBu9C,QAAQ,CAACtC,OAArC,EAA8C;IAC5C,YAAMyC,MAAI,GAAGD,SAAS,CAAC,CAAD,CAAtB;;IACA,YAAIP,YAAJ,EAAkB;IAChBI,UAAAA,YAAY,WAAGl/C,GAACs/C,OAAD,GAAQ38C,GAAG,IAAI,CAACs8C,SAAS,CAACK,MAAD,KAA5B,EAAZ;IACD,SAFD,MAEO;IACL,cAAMC,QAAQ,gBAAQN,UAAtB;;IACAM,UAAAA,QAAQ,CAACD,MAAD,CAAR,GAAiB38C,GAAG,KAAKsP,SAAR,GAAoBtP,GAApB,GAA0B,CAAC48C,QAAQ,CAACD,MAAD,CAApD;IACAJ,UAAAA,YAAY,CAACK,QAAD,CAAZ;IACD;IACF,OATD,MASO;IACL,YAAIT,YAAJ,EAAkB;IAChB,cAAI,CAAC7uC,QAAL,EAAeivC,YAAY,CAAC,EAAD,CAAZ;IAChB;IACF;IACF;IACF,GAnBD;;IAqBA,MAAM/wC,cAAc,GAAG,SAAjBA,cAAiB,CAACkB,IAAD;;;IACrB,QAAIA,IAAI,CAACwtC,OAAT,EAAkB;IAChB,UAAI,CAAC5sC,QAAL,EAAe;IACb,YAAI/B,OAAJ,EAAaA,OAAO,CAACmB,IAAI,CAACwtC,OAAL,CAAa,CAAb,CAAD,CAAP;IACd,OAFD,MAEO;IACL,YAAI,CAACkC,oBAAoB,CAAC1vC,IAAI,CAACnH,IAAN,CAAzB,EAAsC;IACpCk3C,UAAAA,eAAe,CAAC/vC,IAAD,CAAf;IACD;;IACD6vC,QAAAA,YAAY,uBAAMD,yBAAY5vC,IAAI,CAACnH,QAAO,WAA9B,CAAZ;IACA82C,QAAAA,uBAAuB,uBAAMD,oCAAuB1vC,IAAI,CAACnH,QAAO,CAAC62C,oBAAoB,CAAC1vC,IAAI,CAACnH,IAAN,OAA9D,CAAvB;IACD;IACF,KAVD,MAUO;IACL,UAAIgG,OAAJ,EAAaA,OAAO,CAACmB,IAAD,CAAP;IACd;IACF,GAdD;;IAgBA,MAAMmwC,UAAU,GAAG,SAAbA,UAAa;IACjB,QAAM5zC,IAAI,GAAG+wC,KAAK,CAAChyC,GAAN,CAAU,UAAC0E,IAAD,EAAOxE,KAAP;;;IACrB,UAAM2xC,QAAQ,GAAG,CAACyC,SAAS,CAAC5vC,IAAI,CAACnH,IAAN,CAAV,IAAyBm1C,YAAY,CAACV,KAAD,EAAQttC,IAAR,EAAckI,MAAd,CAAtD;IACA,UAAMumC,UAAU,GAAGzuC,IAAI,CAACwtC,OAAL,IAAgBxtC,IAAI,CAACwtC,OAAL,CAAaj7C,MAAb,GAAsB,CAAzD;IACA,UAAM67C,iBAAiB,GAAGK,UAAU,KAAKmB,SAAS,CAAC5vC,IAAI,CAACnH,IAAN,CAAT,IAAwB62C,oBAAoB,CAAC1vC,IAAI,CAACnH,IAAN,CAAjD,CAApC;IACA,UAAMu3C,QAAQ,GAAG50C,KAAK,KAAK,CAAV,IAAe8xC,KAAK,CAAC9xC,KAAK,GAAG,CAAT,CAAL,CAAiBqnB,KAAjB,KAA2B7iB,IAAI,CAAC6iB,KAAhE;IAEA,UAAMwtB,YAAY,GAAG/3C,8BAAU,WAC7B3H,GAAC,sBAAD,GAAyB,MACzBA,GAAC,8BAAD,GAAiC6K,KAAK,KAAK,KAFd,EAA/B;IAKA,0BACEvF,8BAAA,CAACA,gBAAK,CAACq6C,QAAP;IAAgB30C,QAAAA,GAAG,EAAEH;WAArB,EACG40C,QAAQ,IAAIpwC,IAAI,CAAC6iB,KAAjB,IAA0BjiB,QAA1B,iBACC3K,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAEy3C;WAAhB,eACEp6C,8BAAA,CAACyC,IAAD;yBAAgB;IAAoCvC,QAAAA,IAAI,EAAC;IAAQwC,QAAAA,MAAM,EAAC;IAASvC,QAAAA,UAAU,EAAC;WAA5F,EACG4J,IAAI,CAAC6iB,KADR,CADF,CAFJ,eASI5sB,8BAAA,CAACs4C,UAAD;yBACY;IACVvuC,QAAAA,IAAI,EAAEA;IACNY,QAAAA,QAAQ,EAAEA;IACVusC,QAAAA,QAAQ,EAAEA;IACVsB,QAAAA,UAAU,EAAEA;IACZC,QAAAA,UAAU,EAAE;IACZF,QAAAA,OAAO,EAAEA;IACTJ,QAAAA,iBAAiB,EAAEA;IACnBvvC,QAAAA,OAAO,EAAEC;IACT6vC,QAAAA,kBAAkB,EAAEA;WAVtB,CATJ,EAsBGP,iBAAiB,IAChBpuC,IAAI,CAACwtC,OAAL,CAAclyC,GAAd,CAAkB,UAACkyC,OAAD,EAAU74B,EAAV;IAChB,4BACE1e,8BAAA,CAACs4C,UAAD;IACE5yC,UAAAA,GAAG,EAAEgZ;IACL3U,UAAAA,IAAI,EAAEwtC;IACN5sC,UAAAA,QAAQ,EAAEA;IACV6tC,UAAAA,UAAU,EAAE;IACZC,UAAAA,UAAU,EAAE;IACZF,UAAAA,OAAO,EAAEA;IACT3vC,UAAAA,OAAO,EAAEC;IACTquC,UAAAA,QAAQ,EAAEa,YAAY,CAACV,KAAD,EAAQE,OAAR,EAAiBtlC,MAAjB;IACtBymC,UAAAA,kBAAkB,EAAEA;aATtB,CADF;IAaD,OAdD,CAvBJ,CADF;IAyCD,KApDY,CAAb;IAsDA,WAAOpyC,IAAP;IACD,GAxDD;;IA0DA,MAAMuB,OAAO,GAAGxF,8BAAU;IAEtBk3C,IAAAA,WAAW,EAAE;SACb7+C,GAAC,wBAAD,GAA2BiQ,YAHL,GAKxBhI,SALwB,CAA1B;IAQA,sBACE3C,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAEkF;QAA/B,EACGqyC,UAAU,EADb,CADF;IAKD;IAEDX,WAAW,CAAC90C,YAAZ,GAA2B;IACzBkG,EAAAA,QAAQ,EAAE,IADe;IAEzB6uC,EAAAA,YAAY,EAAE,IAFW;IAGzBjB,EAAAA,OAAO,EAAE,KAHgB;IAIzBlvC,EAAAA,WAAW,EAAE;IAJY,CAA3B;;QCpMaixC,aAAa,GAAG,SAAhBA,aAAgB,CAACp7C,KAAD;;;IACnB,MAAAm4C,KAAK,GAAiCn4C,KAAK,MAA3C;IAAA,MAAO+S,MAAM,GAAyB/S,KAAK,OAA3C;IAAA,MAAe0J,OAAO,GAAgB1J,KAAK,QAA3C;IAAA,MAAwByD,SAAS,GAAKzD,KAAK,UAA3C;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,WAEtB3H,GAAC,gBAAD,GAAmB,QAFG,GAIxBiI,SAJwB,CAA1B;;IAOA,MAAMkG,cAAc,GAAG,SAAjBA,cAAiB,CAACkB,IAAD;IAAgB,WAAA;IACrC,UAAInB,OAAJ,EAAaA,OAAO,CAACmB,IAAD,CAAP;IACd,KAFsC;IAEtC,GAFD;;IAIA,MAAMwwC,aAAa,GAAG,SAAhBA,aAAgB,CAAC1vC,QAAD;;;IACpB,WAAAxI,8BAAU,WACR3H,GAAC,sBAAD,GAAyB,MACzBA,GAAC,gCAAD,GAAmCmQ,UACnCnQ,GAAC,wBAAD,GAA2B,QAHnB,EAAV;IAIE,GALJ;;IAOA,MAAM8/C,UAAU,GAAG,SAAbA,UAAa,CAACzwC,IAAD,EAAamtC,QAAb;IACjB,QAAIntC,IAAI,CAACmkB,KAAL,KAAevhB,SAAnB,EAA8B;IAC5B,UAAMuhB,KAAK,GAAGnkB,IAAI,CAACmkB,KAAL,GAAa,EAAb,GAAkB,KAAlB,GAA0BnkB,IAAI,CAACmkB,KAA7C;IACA,0BACEluB,8BAAA,CAACwvC,KAAD;IACE9mC,QAAAA,MAAM,EAAEqB,IAAI,CAACc;IACblI,QAAAA,SAAS,EAAE43C,aAAa,CAACxwC,IAAI,CAACc,QAAN;IACxB1K,QAAAA,UAAU,EAAEg3C,kBAAkB,CAACD,QAAD;yBACpB;WAJZ,EAMGhpB,KANH,CADF;IAUD;;IAED,QAAInkB,IAAI,CAACvE,IAAT,EAAe;IACb,0BACExF,8BAAA,CAACsB,IAAD;IACEqB,QAAAA,SAAS,EAAC;IACVC,QAAAA,IAAI,EAAEmH,IAAI,CAACvE;IACXkE,QAAAA,IAAI,EAAEK,IAAI,CAACe;yBACD;WAJZ,CADF;IAQD;;IAED,WAAO,IAAP;IACD,GA3BD;;IA6BA,MAAM6R,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD,EAA6B7S,IAA7B;IACvB,QAAI6S,KAAK,CAAClX,GAAN,KAAc,OAAd,IAAyBkD,OAA7B,EAAsC;IACpCA,MAAAA,OAAO,CAACmB,IAAD,CAAP;IACD;IACF,GAJD;;IAMA,MAAMzD,IAAI,GAAG+wC,KAAK,CAAChyC,GAAN,CAAU,UAAC0E,IAAD,EAAOxE,KAAP;;;IACrB,QAAM2xC,QAAQ,GAAGa,YAAY,CAACV,KAAD,EAAQttC,IAAR,EAAckI,MAAd,CAA7B;IACA,QAAMknC,SAAS,GAAGlB,eAAe,CAACf,QAAD,EAAWntC,IAAI,CAACc,QAAhB,CAAjC;IAEA,QAAM4vC,WAAW,GAAGp4C,8BAAU;IAC5B,4BAAsB;IACtB,qCAA+B,CAAC60C,QAAD,IAAa,CAACntC,IAAI,CAACc;WAClDnQ,GAAC,6BAAD,GAAgCw8C,UAChCx8C,GAAC,+BAAD,GAAkCqP,IAAI,CAACc,UACvCnQ,GAAC,wBAAD,GAA2B,MAC3BA,GAAC,WAASy+C,UAAV,GAAwB,QANI,EAA9B;IASA,wBAGEn5C,8BAAA,MAAA;IACE0K,MAAAA,QAAQ,EAAE;uBACA;IACVhF,MAAAA,GAAG,EAAEH;IACL5C,MAAAA,SAAS,EAAE83C;IACX7xC,MAAAA,OAAO,EAAEC,cAAc,CAACkB,IAAD;IACvBuP,MAAAA,SAAS,EAAE,mBAACV,CAAD;IAAO,eAAA+D,gBAAgB,CAAC/D,CAAD,EAAI7O,IAAJ,CAAhB;IAAyB;IAC3CvG,MAAAA,IAAI,EAAC;SAPP,EASGg3C,UAAU,CAACzwC,IAAD,EAAOmtC,QAAP,CATb,eAUEl3C,8BAAA,CAACyC,IAAD;IACErI,MAAAA,KAAK,EAAE++C;IACPz2C,MAAAA,MAAM,EAAC;uBACG;IACVC,MAAAA,SAAS,EAAC;SAJZ,EAMGoH,IAAI,CAACZ,KANR,CAVF,CAHF;IAuBD,GApCY,CAAb;IAsCA,sBACEnJ,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAEkF;QAA/B,EACGvB,IADH,CADF;IAKD;;ICxGD,IAAMo0C,gBAAgB,GAAG,CACvB,SADuB,EAEvB,IAFuB,EAGvB,MAHuB,EAIvB,QAJuB,EAKvB,UALuB,EAMvB,MANuB,EAOvB,aAPuB,EAQvB,sBARuB,EASvB,uBATuB,EAUvB,eAVuB,CAAzB;IAaA,IAAMC,aAAa,GAAG;IACpB5uB,EAAAA,MAAM,EAAE,QADY;IAEpBT,EAAAA,GAAG,EAAE,KAFe;IAGpB,eAAa,KAHO;IAIpB,aAAW,KAJS;IAKpB,kBAAgB,QALI;IAMpB,gBAAc,QANM;IAOpBmH,EAAAA,IAAI,EAAE,MAPc;IAQpBD,EAAAA,KAAK,EAAE;IARa,CAAtB;IAoDO,IAAMqmB,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAC+B,WAAD;IAC9B,MAAMvvB,OAAO,GAAGuvB,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAE97B,OAA7B;IACA,MAAMk6B,WAAW,GAAG3tB,OAAO,GAAGA,OAAO,CAACwvB,WAAR,GAAsBxvB,OAAO,CAACyJ,WAAjC,GAA+C,KAA1E;IAEA,SAAOkkB,WAAP;IACD,CALM;QAOM50C,OAAO,GAAG,SAAVA,OAAU,CAAClF,KAAD;IACb,MAAAyC,QAAQ,GAAkEzC,KAAK,SAA/E;IAAA,MAAUwE,OAAO,GAAyDxE,KAAK,QAA/E;IAAA,MAAmBmK,WAAW,GAA4CnK,KAAK,YAA/E;IAAA,MAAgC47C,gBAAgB,GAA0B57C,KAAK,iBAA/E;IAAA,MAAkD67C,UAAU,GAAc77C,KAAK,WAA/E;IAAA,MAAiE6L,IAAI,UAAK7L,OAA5E,WAAA,WAAA,eAAA,oBAAA,cAAA,EAAE;;IACR,MAAM87C,WAAW,GAAGh7C,gBAAK,CAAC4e,MAAN,CAAa,IAAb,CAApB;;IACM,MAAAlkB,KAAgCsF,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAhC;IAAA,MAACk3C,WAAW,QAAZ;IAAA,MAAciC,cAAc,QAA5B;;IAENj7C,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAMgkB,OAAO,GAAG0vB,UAAU,GAAGA,UAAH,GAAgBC,WAA1C;IACAC,IAAAA,cAAc,CAACpC,gBAAgB,CAACxtB,OAAD,CAAjB,CAAd;IACD,GAHD,EAGG,CAAC2vB,WAAD,EAAcD,UAAd,EAA0Bp5C,QAA1B,CAHH;IAKA,MAAMu5C,cAAc,GAClBH,UAAU,IAAI,eAAC/6C,gBAAK,CAACgc,cAAN,CAAqBra,QAArB,CAAf,GACIA,QADJ,gBAEI3B,gBAAK,CAACu1B,YAAN,CAAmB5zB,QAAnB,EAAwD;IACtD6I,IAAAA,GAAG,EAAEwwC;IADiD,GAAxD,CAHN;;IAOA,MAAI,CAAC3xC,WAAL,EAAkB;IAEhB,WAAO1H,QAAP;IACD;;IAED,MAAMw5C,cAAc,gBAClBn7C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAC;IAAexC,IAAAA,UAAU,EAAC;OAA1C,EACGuD,OADH,CADF,CADF;;IAQA,MAAIo3C,gBAAJ,EAAsB;IACpB,WAAO9B,WAAW,gBAChBh5C,8BAAA,CAACkH,OAAD;IACEC,MAAAA,OAAO,EAAE+zC;IACTr2C,MAAAA,EAAE,EAAE;IACJuC,MAAAA,MAAM,EAAE;WACJ2D;IACJ+nC,MAAAA,cAAc,EAAE;IACdrrC,QAAAA,IAAI,EAAE,4BAA0BkzC,aAAa,CAACz7C,KAAK,CAACmF,QAAP,CAD/B;IAEdswC,QAAAA,KAAK,EAAE,6BAA2BgG,aAAa,CAACz7C,KAAK,CAACmF,QAAP;IAFjC;IAIhB1B,MAAAA,SAAS,EAAC;UATZ,EAWGw4C,cAXH,CADgB,GAehBD,cAfF;IAiBD;;IAED,sBACEl7C,8BAAA,CAACkH,OAAD;IACEC,IAAAA,OAAO,EAAExF;IACTkD,IAAAA,EAAE,EAAE;IACJuC,IAAAA,MAAM,EAAE;SACJ2D;IACJ+nC,IAAAA,cAAc,EAAE;IACdrrC,MAAAA,IAAI,EAAE,4BAA0BkzC,aAAa,CAACz7C,KAAK,CAACmF,QAAP,CAD/B;IAEdswC,MAAAA,KAAK,EAAE,6BAA2BgG,aAAa,CAACz7C,KAAK,CAACmF,QAAP;IAFjC;IAIhB1B,IAAAA,SAAS,EAAC;QATZ,EAWGw4C,cAXH,CADF;IAeD;;IAED/2C,OAAO,CAAC00C,cAAR,GAAyB;IACvB,SAAO;IACLD,IAAAA,gBAAgB;IADX,GAAP;IAGD,CAJD;;IAMAz0C,OAAO,CAACK,YAAR,GAAuB9E,MAAM,CAACq+B,MAAP,CAAc,EAAd,EAAkBx+B,WAAW,CAAC0H,OAAO,CAACzC,YAAT,EAAuBi2C,gBAAvB,CAA7B,EAAuE;IAC5FxH,EAAAA,SAAS,EAAE,KADiF;IAE5F7pC,EAAAA,WAAW,EAAE,IAF+E;IAG5FyxC,EAAAA,gBAAgB,EAAE;IAH0E,CAAvE,CAAvB;;QC1FMM,MAAM,GAAG,SAATA,MAAS,CAACl8C,KAAD;IAEX,MAAAm8C,SAAS,GAYPn8C,KAAK,UAZP;IAAA,MACAo8C,uBAAuB,GAWrBp8C,KAAK,wBAZP;IAAA,MAEAq8C,yBAAyB,GAUvBr8C,KAAK,0BAZP;IAAA,MAGAuI,IAAI,GASFvI,KAAK,KAZP;IAAA,MAIAod,OAAO,GAQLpd,KAAK,QAZP;IAAA,MAKAs8C,OAAO,GAOLt8C,KAAK,QAZP;IAAA,MAMAkmC,KAAK,GAMHlmC,KAAK,MAZP;IAAA,MAOAwmC,WAAW,GAKTxmC,KAAK,YAZP;IAAA,MAQAu8C,kBAAkB,GAIhBv8C,KAAK,mBAZP;IAAA,MASAw8C,qBAAqB,GAGnBx8C,KAAK,sBAZP;IAAA,MAUAy8C,oBAAoB,GAElBz8C,KAAK,qBAZP;IAAA,MAWA08C,uBAAuB,GACrB18C,KAAK,wBAZP;IAcF,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,sBACEc,8BAAA,CAAC67C,KAAD;qBACY;SACN18C;IACJsI,IAAAA,IAAI,EAAEA;IACN4zC,IAAAA,SAAS,EAAEA;IACX/+B,IAAAA,OAAO,EAAEA;IACTw/B,IAAAA,aAAa,EAAE;IACbN,MAAAA,OAAO;IADM;IAGfO,IAAAA,MAAM,eACJ/7C,8BAAA,0BAAA,MAAA,eACEA,8BAAA,CAACyJ,MAAD;IACEC,MAAAA,IAAI,EAAC;uBACK;IACVvJ,MAAAA,UAAU,EAAEo7C;IACZ3yC,MAAAA,OAAO,EAAEgzC;SAJX,EAMGD,oBANH,CADF,eASE37C,8BAAA,CAACyJ,MAAD;IACEC,MAAAA,IAAI,EAAC;IACL/G,MAAAA,SAAS,EAAC;uBACA;IACVxC,MAAAA,UAAU,EAAEm7C;IACZ1yC,MAAAA,OAAO,EAAE8yC;SALX,EAOGD,kBAPH,CATF;QAVJ,eA+BEz7C,8BAAA,CAACg8C,gBAAD;IAAkB5W,IAAAA,KAAK,EAAEA;IAAOM,IAAAA,WAAW,EAAEA;OAA7C,CA/BF,CADF;IAmCD;;IAED0V,MAAM,CAAC72C,WAAP,GAAqB,QAArB;IACA62C,MAAM,CAAC32C,YAAP,GAAsB;IACpB42C,EAAAA,SAAS,EAAE,OADS;IAEpBC,EAAAA,uBAAuB,EAAE,SAFL;IAGpBC,EAAAA,yBAAyB,EAAE;IAHP,CAAtB;;IC1GO,IAAMU,aAAa,GAAG,SAAhBA,aAAgB,CAAC/8C,KAAD;IACnB,MAAAuI,IAAI,GAAmCvI,KAAK,KAA5C;IAAA,MAAMyD,SAAS,GAAwBzD,KAAK,UAA5C;IAAA,MAAiByC,QAAQ,GAAczC,KAAK,SAA5C;IAAA,MAA2BimC,OAAO,GAAKjmC,KAAK,QAA5C;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,CACxB;IACE45C,IAAAA,aAAa,EAAE;IADjB,GADwB,EAIxBt5C,SAJwB,CAA1B;IAOA,MAAMu5C,UAAU,gBAAGl8C,gBAAK,CAAC0zB,SAAN,EAAnB;IAEA1zB,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;;;IACd,QAAII,IAAJ,EAAU;IACR,UAAIy0C,UAAU,CAACp9B,OAAf,EAAwB;IACtB,YAAMq9B,aAAa,SAAkCD,UAAU,CAACp9B,iDAAS+Z,iBAAiB,iBAA1F;IACA,YAAMujB,cAAY,GAAGD,aAAa,CAACA,aAAa,CAAC7/C,MAAd,GAAuB,CAAxB,CAAlC;;IACA,YAAI8/C,cAAJ,EAAkB;IAChBj0C,UAAAA,MAAM,CAAC8sB,qBAAP,CAA6B;IAAM,mBAAAmnB,cAAY,CAAClmB,KAAb,CAAmB;IAAE0H,cAAAA,aAAa,EAAE;IAAjB,aAAnB,CAAA;IAA2C,WAA9E;IACD;IACF;IACF;IACF,GAVD,EAUG,CAACn2B,IAAD,CAVH;;IAYA,MAAI09B,OAAJ,EAAa;IACX,wBACEnlC,8BAAA,MAAA;IAAKwK,MAAAA,GAAG,EAAE0xC;WAAgB/8C;IAAWwD,MAAAA,SAAS,EAAEkF;UAAhD,EACGs9B,OAAO,CAAC9/B,GAAR,CAAY,UAAC3K,EAAD,EAAwB6K,KAAxB;IAAG,cAAA;IAAA,cAAUgE,OAAO,cAAnB,QAAA;;IACZ,0BAAOvJ,8BAAA,CAACyJ,MAAD;IAAQC,QAAAA,IAAI,EAAC;aAAaH;IAAS7D,QAAAA,GAAG,EAAEH;YAAxC,CAAP;IACD,KAFA,CADH,CADF;IAOD;;IAED,sBACEvF,8BAAA,MAAA;qBAAe;IAA6BwK,IAAAA,GAAG,EAAE0xC;SAAgB/8C;IAAWwD,IAAAA,SAAS,EAAEkF;QAAvF,EACGlG,QADH,CADF;IAKD,CAzCM;IA2CPs6C,aAAa,CAAC13C,WAAd,GAA4B,eAA5B;;ICZO,IAAM83C,aAAa,GAAG,SAAhBA,aAAgB,CAACn9C,KAAD;;;IACnB,MAAAyD,SAAS,GACfzD,KAAK,UADC;IAAA,MAAWs8C,OAAO,GACxBt8C,KAAK,QADC;IAAA,MAAoBo9C,UAAU,GACpCp9C,KAAK,WADC;IAAA,MAAgCq9C,UAAU,GAChDr9C,KAAK,WADC;IAAA,MAA4Cs9C,QAAQ,GAC1Dt9C,KAAK,SADC;IAAA,MAAsDu9C,gBAAgB,GAC5Ev9C,KAAK,iBADC;IAAA,MAAwEw9C,kBAAkB,GAChGx9C,KAAK,mBADC;IAAA,MAA4F8xC,YAAY,GAC9G9xC,KAAK,aADC;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtBg6C,IAAAA,aAAa,EAAE;SACf3hD,GAAC,gCAAD,GAAmC6hD,UAAU,IAAIC,YAH3B,GAKxB75C,SALwB,CAA1B;IAQA,MAAMg6C,eAAe,GAAGt6C,8BAAU,WAChCE,GAAC,2BAAD,GAA8B,MAC9BA,GAAC,2CAAD,GAA8Cg6C,UAAU,IAAIC,YAF5B,EAAlC;IAKA,sBACEx8C,8BAAA,MAAA;qBAAe;SAAiCb;IAAWwD,IAAAA,SAAS,EAAEkF;QAAtE,eACE7H,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACG,CAAC45C,UAAU,IAAIC,QAAf,kBACCx8C,8BAAA,CAACyJ,MAAD;qBACY;IACVtJ,IAAAA,UAAU,EAAC;IACXwC,IAAAA,SAAS,EAAC;IACV6C,IAAAA,IAAI,EAAC;IACLmE,IAAAA,SAAS,EAAE;IACXf,IAAAA,OAAO,EAAE8zC,kBAAkB,IAAID;OANjC,CAFJ,EAWGjB,OAAO,iBACNx7C,8BAAA,CAACwR,OAAD;IAAS7O,IAAAA,SAAS,EAAEquC;qBAAwB;OAA5C,EACGwK,OADH,CAZJ,CADF,EAkBGc,UAAU,iBACTt8C,8BAAA,CAACyC,IAAD;qBAAgB;IAAyCtC,IAAAA,UAAU,EAAC;IAASwC,IAAAA,SAAS,EAAEg6C;OAAxF,EACGL,UADH,CAnBJ,CADF;IA0BD,CA5CM;IA8CPD,aAAa,CAAC93C,WAAd,GAA4B,eAA5B;;ICjFO,IAAMq4C,WAAW,GAAG,SAAdA,WAAc,CAAC19C,KAAD;IACjB,MAAAyC,QAAQ,GAAgBzC,KAAK,SAA7B;IAAA,MAAUyD,SAAS,GAAKzD,KAAK,UAA7B;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,CACxB;IACEu6C,IAAAA,WAAW,EAAE;IADf,GADwB,EAIxBj6C,SAJwB,CAA1B;IAOA,sBACE3C,8BAAA,MAAA;qBAAe;SAA+Bb;IAAWwD,IAAAA,SAAS,EAAEkF;QAApE,EACGlG,QADH,CADF;IAKD,CAjBM;IAmBPi7C,WAAW,CAACn4C,YAAZ,GAA2B;IACzBo4C,EAAAA,WAAW,EAAE,IADY;IAEzBC,EAAAA,UAAU,EAAE;IAFa,CAA3B;IAKAF,WAAW,CAACr4C,WAAZ,GAA0B,aAA1B;;IChCO,IAAMw4C,iBAAiB,GAAG,SAApBA,iBAAoB;IAC/B,MAAI1xB,OAAO,GAAG/wB,QAAQ,CAACm6B,aAAT,CAAuB,kBAAvB,CAAd;;IACA,MAAIpJ,OAAO,KAAK,IAAhB,EAAsB;IACpBA,IAAAA,OAAO,GAAG/wB,QAAQ,CAAC6hB,aAAT,CAAuB,KAAvB,CAAV;IACAkP,IAAAA,OAAO,CAAC2xB,SAAR,CAAkBC,GAAlB,CAAsB,iBAAtB;IACA3iD,IAAAA,QAAQ,CAACyN,IAAT,CAAcm1C,WAAd,CAA0B7xB,OAA1B;IACD;;IACD,SAAOA,OAAP;IACD,CARM;IAgBA,IAAM8xB,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,GAAD;IACtB,MAAAC,kBAAkB,GAA0BD,GAAG,mBAA/C;IAAA,MAAoBrC,UAAU,GAAcqC,GAAG,WAA/C;IAAA,MAAgC/xB,OAAO,GAAK+xB,GAAG,QAA/C;IAER,MAAI/xB,OAAO,KAAK,IAAhB,EAAsB;IAEtB,MAAMuN,QAAQ,GAAGvN,OAAO,CAACwN,gBAAR,CAAyBwkB,kBAAzB,CAAjB;IACA,MAAIzkB,QAAQ,CAACt8B,MAAT,GAAkB,CAAtB,EAAyB;IAEzB,MAAMghD,QAAQ,GAAG3/C,KAAK,CAACiU,IAAN,CAAWgnB,QAAX,EAAqB/4B,MAArB,CAA4B,UAAC+gC,EAAD;IAAQ,WAAAA,EAAE,KAAKma,UAAU,CAACj8B,OAAlB;IAAyB,GAA7D,CAAjB;IACA,MAAItW,MAAM,GAAG,CAAC,CAAd;IAEA80C,EAAAA,QAAQ,CAACvgD,OAAT,CAAiB,UAACsuB,OAAD;IACf,QAAMkyB,UAAU,GAAG75B,QAAQ,CAACvb,MAAM,CAAC9N,gBAAP,CAAwBgxB,OAAxB,EAAiC7iB,MAAjC,IAA2C,GAA5C,EAAiD,EAAjD,CAA3B;IACAA,IAAAA,MAAM,GAAG1J,IAAI,CAACqH,GAAL,CAASqC,MAAT,EAAiB+0C,UAAU,GAAG,EAA9B,CAAT;IACD,GAHD;IAKA,SAAO/0C,MAAM,GAAG,CAAT,GAAaA,MAAb,GAAsBmE,SAA7B;IACD,CAjBM;IAoBA,IAAM6wC,qBAAqB,GAAG,SAAxBA,qBAAwB,CACnC5gC,KADmC,EAEnC6gC,YAFmC,EAGnCnhC,OAHmC;IAKnC,MAAIM,KAAK,CAAClX,GAAN,KAAc,QAAd,IAA0B+3C,YAA9B,EAA4C;IAC1CnhC,IAAAA,OAAO,CAACM,KAAD,CAAP;IAGAA,IAAAA,KAAK,CAAC7T,cAAN;IACD;IACF,CAXM;;ICpCP;IAGE,yBAAA;IACE,SAAK20C,QAAL,GAAgB,EAAhB;IACD;;IAEDC,EAAAA,wBAAA,IAAA,GAAA,UAAIC,OAAJ;IACE,QAAIA,OAAO,KAAK,IAAhB,EAAsB;IAEtB,QAAIC,UAAU,GAAG,KAAKH,QAAL,CAAc5xC,OAAd,CAAsB8xC,OAAtB,CAAjB;;IAEA,QAAIC,UAAU,KAAK,CAAC,CAApB,EAAuB;IACrB,aAAOA,UAAP;IACD;;IAEDA,IAAAA,UAAU,GAAG,KAAKH,QAAL,CAAcphD,MAA3B;IACA,SAAKohD,QAAL,CAAcl5B,IAAd,CAAmBo5B,OAAnB;IAEA,WAAOC,UAAP;IACD,GAbD;;IAeAF,EAAAA,wBAAA,OAAA,GAAA,UAAOC,OAAP;IACE,QAAIA,OAAO,KAAK,IAAhB,EAAsB;IAEtB,QAAMC,UAAU,GAAG,KAAKH,QAAL,CAAc5xC,OAAd,CAAsB8xC,OAAtB,CAAnB;;IAEA,QAAIC,UAAU,KAAK,CAAC,CAApB,EAAuB;IACrB;IACD;;IAED,SAAKH,QAAL,CAAcvhB,MAAd,CAAqB0hB,UAArB,EAAiC,CAAjC;IACD,GAVD;;IAYAF,EAAAA,wBAAA,aAAA,GAAA,UAAaC,OAAb;IACE,QAAIA,OAAO,KAAK,IAAhB,EAAsB;IAEtB,WAAO,CAAC,CAAC,KAAKF,QAAL,CAAcphD,MAAhB,IAA0B,KAAKohD,QAAL,CAAc,KAAKA,QAAL,CAAcphD,MAAd,GAAuB,CAArC,MAA4CshD,OAA7E;IACD,GAJD;;IAKF,uBAAA;IAAC,GAvCD;;IAyCA,IAAME,QAAQ,GAAG,IAAIH,cAAJ,EAAjB;IACAh+C,MAAM,CAACo+C,MAAP,CAAcD,QAAd;;;IC8EoB5vC,EAAAA,wBAAA;;IASlB,gBAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IARAkP,IAAAA,cAAA,gBAAWpO,gBAAK,CAAC0zB,SAAN,EAAX;;IAqBAtlB,IAAAA,oBAAA,GAAiB,UAACwO,KAAD;IACf,UAAM6gC,YAAY,GAAGE,QAAc,CAACF,YAAf,CAA4BrvC,KAAI,CAAC4vC,QAAL,CAAcl/B,OAA1C,CAArB;IACA0+B,MAAAA,qBAAqB,CAAC5gC,KAAD,EAAQ6gC,YAAR,EAAsBrvC,KAAI,CAAC2lC,qBAA3B,CAArB;IACD,KAHD;;IAVE3lC,IAAAA,KAAI,CAACid,OAAL,GAAe0xB,iBAAiB,EAAhC;IAEA3uC,IAAAA,KAAI,CAACE,KAAL,GAAa;IACX7G,MAAAA,IAAI,EAAEvI,KAAK,CAACuI,IADD;IAEXE,MAAAA,OAAO,EAAEzI,KAAK,CAACuI;IAFJ,KAAb;IAKA2G,IAAAA,KAAI,CAAC2lC,qBAAL,GAA6B3lC,KAAI,CAAC2lC,qBAAL,CAA2BrhC,IAA3B,CAAgCtE,KAAhC,CAA7B;;IACD;;IAODytC,EAAAA,eAAA,kBAAA,GAAA;IACE,QAAI,KAAK38C,KAAL,CAAW++C,aAAf,EAA8B;IAC5B,UAAI,KAAK3vC,KAAL,CAAW7G,IAAf,EAAqB;IACnBk2C,QAAAA,QAAc,CAACV,GAAf,CAAmB,KAAKe,QAAL,CAAcl/B,OAAjC;IACD;;IACDxkB,MAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,SAA1B,EAAqC,KAAKnsB,cAA1C;IACD;;IAED,QAAI,KAAKvd,KAAL,CAAWg/C,aAAf,EAA8B;IAC5B,UAAI,KAAK5vC,KAAL,CAAW7G,IAAf,EAAqB;IACnBk2C,QAAAA,QAAc,CAACV,GAAf,CAAmB,KAAKe,QAAL,CAAcl/B,OAAjC;IACD;IACF;;IAED,QAAMtW,MAAM,GAAG20C,gBAAgB,CAAC;IAC9B9xB,MAAAA,OAAO,EAAE,KAAKA,OADgB;IAE9BgyB,MAAAA,kBAAkB,EAAE,oBAFU;IAG9BtC,MAAAA,UAAU,EAAE,KAAKiD;IAHa,KAAD,CAA/B;IAKA,SAAK3vC,QAAL,CAAc;IACZ7F,MAAAA,MAAM;IADM,KAAd;IAGD,GAtBD;;IAwBAqzC,EAAAA,eAAA,qBAAA,GAAA;IACE,QAAI,KAAK38C,KAAL,CAAW++C,aAAf,EAA8B;IAC5B3jD,MAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,SAA7B,EAAwC,KAAK3sB,cAA7C;IACD;IACF,GAJD;;IAMAo/B,EAAAA,eAAA,mBAAA,GAAA,UAAmBxkC,SAAnB;IAAA,oBAAA;;IACE,QAAIA,SAAS,CAAC5P,IAAV,KAAmB,KAAKvI,KAAL,CAAWuI,IAAlC,EAAwC;IACtC,UAAI,KAAKvI,KAAL,CAAWuI,IAAf,EAAqB;IACnB,YAAMe,MAAM,GAAG20C,gBAAgB,CAAC;IAC9B9xB,UAAAA,OAAO,EAAE,KAAKA,OADgB;IAE9BgyB,UAAAA,kBAAkB,EAAE,0BAFU;IAG9BtC,UAAAA,UAAU,EAAE,KAAKiD;IAHa,SAAD,CAA/B;IAMA,aAAK3vC,QAAL,CAAc;IACZ7F,UAAAA,MAAM,QADM;IAEZf,UAAAA,IAAI,EAAE,IAFM;IAGZE,UAAAA,OAAO,EAAE;IAHG,SAAd;IAMA,YAAI,KAAKzI,KAAL,CAAW++C,aAAX,IAA4B,KAAK/+C,KAAL,CAAWg/C,aAA3C,EAA0DP,QAAc,CAACV,GAAf,CAAmB,KAAKe,QAAL,CAAcl/B,OAAjC;IAC3D,OAdD,MAcO;IACL,aAAKzQ,QAAL,CACE;IACE1G,UAAAA,OAAO,EAAE;IADX,SADF,EAIE;IACEQ,UAAAA,MAAM,CAACC,UAAP,CAAkB;IAChBgG,YAAAA,KAAI,CAACC,QAAL,CAAc;IACZ5G,cAAAA,IAAI,EAAE;IADM,aAAd;IAGD,WAJD,EAIG,GAJH;IAKD,SAVH;IAaA,YAAI,KAAKvI,KAAL,CAAW++C,aAAX,IAA4B,KAAK/+C,KAAL,CAAWg/C,aAA3C,EAA0DP,QAAc,CAACQ,MAAf,CAAsB,KAAKH,QAAL,CAAcl/B,OAApC;IAC3D;IACF;IACF,GAjCD;;IAmCA+8B,EAAAA,eAAA,sBAAA,GAAA,UAAsBj/B,KAAtB;IACQ,QAAAliB,KAA4C,KAAKwE,KAAjD;IAAA,QAAE++C,aAAa,mBAAf;IAAA,QAAiBC,aAAa,mBAA9B;IAAA,QAAgC5hC,OAAO,aAAvC;IACE,QAAA7U,IAAI,GAAK,KAAK6G,KAAL,KAAT;;IACR,QAAI7G,IAAI,IAAIk2C,QAAc,CAACF,YAAf,CAA4B,KAAKO,QAAL,CAAcl/B,OAA1C,CAAZ,EAAgE;IAC9D,UAAIm/B,aAAa,IAAIC,aAArB,EAAoCP,QAAc,CAACQ,MAAf,CAAsB,KAAKH,QAAL,CAAcl/B,OAApC;IAEpC,UAAIxC,OAAJ,EAAaA,OAAO,CAACM,KAAD,EAAQ,cAAR,CAAP,CAAb,KACK,IAAI,OAAOshC,aAAP,KAAyB,UAA7B,EAAyCA,aAAa,CAACthC,KAAD,EAAQ,cAAR,CAAb;IAC/C;IACF,GATD;;IAWAi/B,EAAAA,eAAA,OAAA,GAAA;;;IACQ,QAAAt4C,KAA4B,KAAK+K,KAAjC;IAAA,QAAE3G,OAAO,aAAT;IAAA,QAAWF,IAAI,UAAf;IAAA,QAAiBe,MAAM,YAAvB;IACA,QAAAjC,KAWF,KAAKrH,KAXH;IAAA,QACJyD,SAAS,eADL;IAAA,QAEJu7C,aAAa,mBAFT;IAAA,QAGJ7C,SAAS,eAHL;IAAA,QAIJ15C,QAAQ,cAJJ;IAAA,QAKJm6C,aAAa,mBALT;IAAA,QAMJsC,MAAM,YANF;IAAA,QAOJC,aAAa,mBAPT;IAAA,QAQJtuB,SAAS,eARL;IAAA,QASJgsB,MAAM,YATF;IAAA,QAUJz/B,OAAO,aAVH;IAaN,QAAMgiC,cAAc,GAAW91C,MAAM,GAAGA,MAAM,GAAG,CAAZ,GAAgB,IAArD;IAEA,QAAMX,OAAO,GAAGxF,8BAAU,CACxB;IACEw5C,MAAAA,KAAK,EAAE,IADT;IAEE,qBAAep0C,IAFjB;IAGE,+BAAyBE,OAH3B;IAIE,gCAA0B,CAACA;IAJ7B,KADwB,EAOxBhF,SAPwB,CAA1B;IAUA,QAAMgU,WAAW,GAAGtU,8BAAU,WAC5B3H,GAAC,eAAD,GAAkB,MAClBA,GAAC,8BAAD,GAAiCq1B,aAFL,EAA9B;IAKA,QAAMwuB,WAAW,GAAGl8C,8BAAU,WAC5BE,GAAC,eAAD,GAAkB,MAClBA,GAAC,8BAAD,GAAiCwtB,aAFL,EAA9B;IAKA,QAAMyuB,cAAc,GAAGn8C,8BAAU,WAC/BR,GAAC,MAAD,GAAS,MACTA,GAAC,oBAAD,GAAuB,MACvBA,GAAC,0BAAD,GAA6B4F,QAHE,EAAjC;IAMA,QAAMg3C,QAAQ,GAAG3C,aAAa,IAAIuC,aAAjB,IAAkCtC,MAAlC,IAA4CqC,MAA7D;IACA,QAAMxnC,SAAS,GAAGvU,8BAAU,WAC1B0B,GAAC,aAAD,GAAgB,MAChBA,GAAC,yBAAD,GAA4B06C,QAAQ,GAAG,CAAC,CAAC1C,MAAL,GAAc,MAClDh4C,GAAC,0BAAD,GAA6B06C,QAAQ,GAAG,CAAC1C,MAAJ,GAAa,QAHxB,EAA5B;IAMA,QAAM58C,SAAS,GAAGF,gBAAgB,CAAC,KAAKC,KAAN,CAAlC;IACA,QAAM69B,OAAO,GAA0D;IACrErxB,MAAAA,KAAK,EAAE;IACLxL,QAAAA,IAAI,EAAE,GADD;IAEL8f,QAAAA,KAAK,EAAE,GAFF;IAGLD,QAAAA,KAAK,EAAE,GAHF;IAILF,QAAAA,MAAM,EAAE;IAJH,OAD8D;IAOrEoyB,MAAAA,MAAM,EAAE;IACN/xC,QAAAA,IAAI,EAAE,GADA;IAEN8f,QAAAA,KAAK,EAAE,GAFD;IAGND,QAAAA,KAAK,EAAE,GAHD;IAINF,QAAAA,MAAM,EAAE;IAJF,OAP6D;IAarExV,MAAAA,KAAK,EAAE;IACLnK,QAAAA,IAAI,EAAE,GADD;IAEL8f,QAAAA,KAAK,EAAE,GAFF;IAGLD,QAAAA,KAAK,EAAE,GAHF;IAILF,QAAAA,MAAM,EAAE;IAJH;IAb8D,KAAvE;IAqBA,QAAM6+B,cAAc,gBAClB1+C,8BAAA,CAACkvC,GAAD;uBACY;IACVvsC,MAAAA,SAAS,EAAE67C;wBACC;yBACC/2C;IACbzC,MAAAA,KAAK,EAAE;IAAEwD,QAAAA,MAAM,EAAEA,MAAM,GAAGA,MAAH,GAAY;IAA5B;SALT,eAOExI,8BAAA,CAAC4f,MAAD;uBACY;WACNzgB;IACJwD,MAAAA,SAAS,EAAEkF;WACPk1B,OAAO,CAACse,SAAD;IACX7wC,MAAAA,GAAG,EAAE,KAAKwzC;UALZ,EAOG,CAAClC,aAAa,IAAIsC,MAAlB,kBACCp+C,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAEgU;SAAhB,eACE3W,8BAAA,CAAC4f,MAAD,MAAA,EACG,CAACw+B,MAAD,iBAAWp+C,8BAAA,CAACq8C,aAAD;uBAAyB;WAAiCP,cAA1D,CADd,EAGG,CAAC,CAACsC,MAAF,IAAYA,MAHf,CADF,eAMEp+C,8BAAA,CAAC4f,MAAD;IAAQjd,MAAAA,SAAS,EAAC;SAAlB,eACE3C,8BAAA,CAACoE,OAAD;IAASV,MAAAA,OAAO,EAAC;IAAQW,MAAAA,QAAQ,EAAC;SAAlC,eACErE,8BAAA,CAACyJ,MAAD;IACEjE,MAAAA,IAAI,EAAC;IACLrF,MAAAA,UAAU,EAAC;uBACD;IACVyI,MAAAA,OAAO,EAAE,iBAACgU,KAAD;IACP,YAAIN,OAAJ,EAAaA,OAAO,CAACM,KAAD,EAAQ,WAAR,CAAP;IACd;SANH,CADF,CADF,CANF,CARJ,EA4BGnV,IAAI,IAAI9F,QAAR,iBACC3B,8BAAA,0BAAA,MAAA,EACG87C,aAAa,IAAIuC,aAAjB,IAAkCtC,MAAlC,IAA4CqC,MAA5C,gBACCp+C,8BAAA,CAAC48C,WAAD;IAAaj6C,MAAAA,SAAS,EAAEiU;SAAxB,EAAoC,KAAK1X,KAAL,CAAWyC,QAA/C,CADD,GAGCA,QAJJ,CA7BJ,EAqCG,CAAC,CAAC,CAACo6C,MAAF,IAAY,CAAC,CAACsC,aAAf,kBACCr+C,8BAAA,CAACi8C,aAAD;uBACY;WACNoC;IACJ52C,MAAAA,IAAI,EAAEA;IACN9E,MAAAA,SAAS,EAAE47C;UAJb,EAMGxC,MANH,CAtCJ,CAPF,CADF;IA2DA,QAAM4C,YAAY,GAAGT,aAAa,gBAChCl+C,8BAAA,CAACouC,YAAD;IACE5jC,MAAAA,GAAG,EAAE,KAAKwzC;uBACA;IACV3P,MAAAA,cAAc,EAAE,KAAK0F;SAHvB,EAKG2K,cALH,CADgC,GAShCA,cATF;IAYA,QAAME,cAAc,gBAAGt2C,mBAAQ,CAACC,YAAT,CAAsBo2C,YAAtB,EAAoC,KAAKtzB,OAAzC,CAAvB;IAEA,wBACErrB,8BAAA,0BAAA,MAAA,EACG4+C,cADH,eAEE5+C,8BAAA,CAACsH,QAAD;IAAUG,MAAAA,IAAI,EAAE,KAAK6G,KAAL,CAAW3G;IAASa,MAAAA,MAAM,EAAE81C;SAA5C,CAFF,CADF;IAMD,GAvJD;;IAlGOzC,EAAAA,kBAAA,GAAe;IACpBR,IAAAA,SAAS,EAAE;IADS,GAAf;IA0PT,cAAA;IA/PA,EAAoBr7C,gBAAK,CAACkY;;QCzGb2mC,WAAW,GAAG,SAAdA,WAAc,CAAC3/C,KAAD;;;IACjB,MAAAyD,SAAS,GAA0EzD,KAAK,UAAxF;IAAA,MAAWs8C,OAAO,GAAiEt8C,KAAK,QAAxF;IAAA,MAAoBo9C,UAAU,GAAqDp9C,KAAK,WAAxF;IAAA,MAAgCod,OAAO,GAA4Cpd,KAAK,QAAxF;IAAA,MAAyC6wB,SAAS,GAAiC7wB,KAAK,UAAxF;IAAA,MAAoDs9C,QAAQ,GAAuBt9C,KAAK,SAAxF;IAAA,MAA8Du9C,gBAAgB,GAAKv9C,KAAK,iBAAxF;IACR,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU;IAEtB,oBAAgB;SAChB3H,GAAC,8BAAD,GAAiCq1B,aAHX,GAKxBptB,SALwB,CAA1B;IAQA,sBACE3C,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAEkF;QAA/B,eACE7H,8BAAA,CAAC4f,MAAD,MAAA,eACE5f,8BAAA,CAACq8C,aAAD;IACEb,IAAAA,OAAO,EAAEA;IACTc,IAAAA,UAAU,EAAEA;IACZC,IAAAA,UAAU,EAAEC;IACZE,IAAAA,kBAAkB,EAAED;OAJtB,CADF,CADF,eASEz8C,8BAAA,CAAC4f,MAAD;IAAQjd,IAAAA,SAAS,EAAC;OAAlB,eACE3C,8BAAA,CAACyJ,MAAD;IACEjE,IAAAA,IAAI,EAAC;IACLrF,IAAAA,UAAU,EAAC;qBACD;IACVyI,IAAAA,OAAO,EAAE,iBAACgU,KAAD;IACP,UAAIN,OAAJ,EAAaA,OAAO,CAACM,KAAD,EAAQ,WAAR,CAAP;IACd;OANH,CADF,CATF,CADF;IAsBD;IAEDiiC,WAAW,CAACt6C,WAAZ,GAA0B,aAA1B;;QCxCau6C,SAAS,GAAG,SAAZA,SAAY,CAAC5/C,KAAD;IACf,MAAAyC,QAAQ,GAAgBzC,KAAK,SAA7B;IAAA,MAAUyD,SAAS,GAAKzD,KAAK,UAA7B;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,CACxB;IACE,kBAAc,IADhB;IAEE,8BAA0B;IAF5B,GADwB,EAKxBM,SALwB,CAA1B;IAQA,sBACE3C,8BAAA,CAAC48C,WAAD,eAAiBz9C;IAAW09C,IAAAA,WAAW,EAAE;IAAMl6C,IAAAA,SAAS,EAAEkF;QAA1D,EACGlG,QADH,CADF;IAKD;IAEDm9C,SAAS,CAACr6C,YAAV,GAAyB;IACvBo4C,EAAAA,WAAW,EAAE,IADU;IAEvBC,EAAAA,UAAU,EAAE;IAFW,CAAzB;IAKAgC,SAAS,CAACv6C,WAAV,GAAwB,WAAxB;;QCvBaw6C,WAAW,GAAG,SAAdA,WAAc,CAAC7/C,KAAD;;;IACjB,MAAAuI,IAAI,GAAqCvI,KAAK,KAA9C;IAAA,MAAMyC,QAAQ,GAA2BzC,KAAK,SAA9C;IAAA,MAAgByD,SAAS,GAAgBzD,KAAK,UAA9C;IAAA,MAA2B6wB,SAAS,GAAK7wB,KAAK,UAA9C;IACR,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,WAEtB3H,GAAC,eAAD,GAAkB,MAClBA,GAAC,8BAAD,GAAiCq1B,aAHX,GAKxBptB,SALwB,CAA1B;IAQA,sBACE3C,8BAAA,CAACi8C,aAAD,eAAmB98C;IAAWsI,IAAAA,IAAI,EAAEA;IAAM9E,IAAAA,SAAS,EAAEkF;QAArD,EACGlG,QADH,CADF;IAKD;IAEDo9C,WAAW,CAACx6C,WAAZ,GAA0B,aAA1B;;;ICsE8B2J,EAAAA,kCAAA;;IAQ5B,0BAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IAPAkP,IAAAA,cAAA,gBAAWpO,gBAAK,CAAC0zB,SAAN,EAAX;;IAkBAtlB,IAAAA,2BAAA,GAAwB,UAACwO,KAAD;IACtB+gC,MAAAA,QAAc,CAACQ,MAAf,CAAsB/vC,KAAI,CAAC4vC,QAAL,CAAcl/B,OAApC;;IAEA,UAAI1Q,KAAI,CAAClP,KAAL,CAAWod,OAAf,EAAwB;IACtBlO,QAAAA,KAAI,CAAClP,KAAL,CAAWod,OAAX,CAAmBM,KAAnB,EAA0B,aAA1B;IACD,OAFD,MAEO;IACLxO,QAAAA,KAAI,CAACC,QAAL,CACE;IACE1G,UAAAA,OAAO,EAAE;IADX,SADF,EAIE;IACEQ,UAAAA,MAAM,CAACC,UAAP,CAAkB;IAChBgG,YAAAA,KAAI,CAACC,QAAL,CAAc;IACZ5G,cAAAA,IAAI,EAAE;IADM,aAAd;IAGD,WAJD,EAIG,GAJH;IAKD,SAVH;IAYD;IACF,KAnBD;;IAqBA2G,IAAAA,oBAAA,GAAiB,UAACwO,KAAD;IACf,UAAM6gC,YAAY,GAAGE,QAAc,CAACF,YAAf,CAA4BrvC,KAAI,CAAC4vC,QAAL,CAAcl/B,OAA1C,CAArB;IACA0+B,MAAAA,qBAAqB,CAAC5gC,KAAD,EAAQ6gC,YAAR,EAAsBrvC,KAAI,CAAC2lC,qBAA3B,CAArB;IACD,KAHD;;IA7BE3lC,IAAAA,KAAI,CAACid,OAAL,GAAe0xB,iBAAiB,EAAhC;IAEA3uC,IAAAA,KAAI,CAACE,KAAL,GAAa;IACX7G,MAAAA,IAAI,EAAEvI,KAAK,CAACuI,IADD;IAEXE,MAAAA,OAAO,EAAEzI,KAAK,CAACuI;IAFJ,KAAb;;IAID;;IA4BDu3C,EAAAA,yBAAA,kBAAA,GAAA;IACE,QAAI,KAAK9/C,KAAL,CAAW++C,aAAf,EAA8B;IAC5B,UAAI,KAAK3vC,KAAL,CAAW7G,IAAf,EAAqB;IACnBk2C,QAAAA,QAAc,CAACV,GAAf,CAAmB,KAAKe,QAAL,CAAcl/B,OAAjC;IACD;;IACDxkB,MAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,SAA1B,EAAqC,KAAKnsB,cAA1C;IACD;IACF,GAPD;;IASAuiC,EAAAA,yBAAA,qBAAA,GAAA;IACE,QAAI,KAAK9/C,KAAL,CAAW++C,aAAf,EAA8B3jD,QAAQ,CAAC8uC,mBAAT,CAA6B,SAA7B,EAAwC,KAAK3sB,cAA7C;IAC/B,GAFD;;IAIAuiC,EAAAA,yBAAA,mBAAA,GAAA,UAAmB3nC,SAAnB;IAAA,oBAAA;;IACE,QAAIA,SAAS,CAAC5P,IAAV,KAAmB,KAAKvI,KAAL,CAAWuI,IAAlC,EAAwC;IACtC,UAAI,KAAKvI,KAAL,CAAWuI,IAAf,EAAqB;IACnB,YAAMe,MAAM,GAAG20C,gBAAgB,CAAC;IAC9B9xB,UAAAA,OAAO,EAAE,KAAKA,OADgB;IAE9BgyB,UAAAA,kBAAkB,EAAE,0BAFU;IAG9BtC,UAAAA,UAAU,EAAE,KAAKiD;IAHa,SAAD,CAA/B;IAMA,aAAK3vC,QAAL,CAAc;IACZ7F,UAAAA,MAAM,QADM;IAEZf,UAAAA,IAAI,EAAE,IAFM;IAGZE,UAAAA,OAAO,EAAE;IAHG,SAAd;IAMA,YAAI,KAAKzI,KAAL,CAAW++C,aAAf,EAA8BN,QAAc,CAACV,GAAf,CAAmB,KAAKe,QAAL,CAAcl/B,OAAjC;IAC/B,OAdD,MAcO;IACL,aAAKzQ,QAAL,CACE;IACE1G,UAAAA,OAAO,EAAE;IADX,SADF,EAIE;IACEQ,UAAAA,MAAM,CAACC,UAAP,CAAkB;IAChBgG,YAAAA,KAAI,CAACC,QAAL,CAAc;IACZ5G,cAAAA,IAAI,EAAE;IADM,aAAd;IAGD,WAJD,EAIG,GAJH;IAKD,SAVH;IAaA,YAAI,KAAKvI,KAAL,CAAW++C,aAAf,EAA8BN,QAAc,CAACQ,MAAf,CAAsB,KAAKH,QAAL,CAAcl/B,OAApC;IAC/B;IACF;IACF,GAjCD;;IAmCAkgC,EAAAA,yBAAA,OAAA,GAAA;;;IACQ,QAAAz8C,KAA4B,KAAK+L,KAAjC;IAAA,QAAE3G,OAAO,aAAT;IAAA,QAAWF,IAAI,UAAf;IAAA,QAAiBe,MAAM,YAAvB;IACA,QAAA3G,KAA4F,KAAK3C,KAAjG;IAAA,QAAEyD,SAAS,eAAX;IAAA,QAAa04C,SAAS,eAAtB;IAAA,QAAwB15C,QAAQ,cAAhC;IAAA,QAAkCy8C,MAAM,YAAxC;IAAA,QAA0CtC,aAAa,mBAAvD;IAAA,QAAyDC,MAAM,YAA/D;IAAA,QAAiEsC,aAAa,mBAA9E;IAAA,QAAgF/hC,OAAO,aAAvF;IAEN,QAAMzU,OAAO,GAAGxF,8BAAU,CACxB;IACE28C,MAAAA,eAAe,EAAE,IADnB;IAEE,yCAAmCr3C,OAFrC;IAGE,0CAAoC,CAACA;IAHvC,KADwB,EAMxBhF,SANwB,CAA1B;IASA,QAAM67C,cAAc,GAAGn8C,8BAAU,WAC/B3H,GAAC,oBAAD,GAAuB,MACvBA,GAAC,0BAAD,GAA6B+M,QAFE,EAAjC;IAKA,QAAMtI,SAAS,GAAGF,gBAAgB,CAAC,KAAKC,KAAN,CAAlC;IACA,QAAM69B,OAAO,GAAoE;IAC/EkV,MAAAA,MAAM,EAAE;IACN/xC,QAAAA,IAAI,EAAE,GADA;IAEN8f,QAAAA,KAAK,EAAE,GAFD;IAGND,QAAAA,KAAK,EAAE,GAHD;IAINF,QAAAA,MAAM,EAAE;IAJF,OADuE;IAO/ExV,MAAAA,KAAK,EAAE;IACLnK,QAAAA,IAAI,EAAE,GADD;IAEL8f,QAAAA,KAAK,EAAE,GAFF;IAGLD,QAAAA,KAAK,EAAE,GAHF;IAILF,QAAAA,MAAM,EAAE;IAJH;IAPwE,KAAjF;IAeA,QAAM6+B,cAAc,GAAGj3C,IAAI,gBACzBzH,8BAAA,MAAA;uBACY;IACV2C,MAAAA,SAAS,EAAE67C;wBACC;IACZx5C,MAAAA,KAAK,EAAE;IAAEwD,QAAAA,MAAM;IAAR;SAJT,eAMExI,8BAAA,MAAA;uBAAe;WAAmCb;IAAWwD,MAAAA,SAAS,EAAEkF;IAAS2C,MAAAA,GAAG,EAAE,KAAKwzC;UAA3F,eACEh+C,8BAAA,CAACkvC,GAAD;IAAKvsC,MAAAA,SAAS,EAAC;SAAf,eACE3C,8BAAA,CAAC4f,MAAD,eAAYmd,OAAO,CAACse,SAAD,EAAnB,eACEr7C,8BAAA,CAACkvC,GAAD;IAAKvsC,MAAAA,SAAS,EAAC;SAAf,eACE3C,8BAAA,CAAC4f,MAAD,MAAA,EACG,CAACw+B,MAAD,iBAAWp+C,8BAAA,CAACq8C,aAAD;uBAAyB;WAA2CP,cAApE,CADd,EAGG,CAAC,CAACsC,MAAF,IAAYA,MAHf,CADF,eAMEp+C,8BAAA,CAAC4f,MAAD;IAAQjd,MAAAA,SAAS,EAAC;SAAlB,eACE3C,8BAAA,CAACoE,OAAD;IAASV,MAAAA,OAAO,EAAC;SAAjB,eACE1D,8BAAA,CAACyJ,MAAD;IACEjE,MAAAA,IAAI,EAAC;IACLrF,MAAAA,UAAU,EAAC;uBACD;IACVyI,MAAAA,OAAO,EAAE,iBAACgU,KAAD;IACP,YAAIN,OAAJ,EAAaA,OAAO,CAACM,KAAD,EAAQ,WAAR,CAAP;IACd;SANH,CADF,CADF,CANF,CADF,eAoBE5c,8BAAA,CAAC48C,WAAD;uBAAuB;IAAqCj6C,MAAAA,SAAS,EAAC;SAAtE,EACGhB,QADH,CApBF,EAuBG,CAAC,CAAC,CAACo6C,MAAF,IAAY,CAAC,CAACsC,aAAf,kBACCr+C,8BAAA,CAACi8C,aAAD;uBACY;WACNoC;IACJ52C,MAAAA,IAAI,EAAEA;IACN9E,MAAAA,SAAS,EAAC;UAJZ,EAMGo5C,MANH,CAxBJ,CADF,CADF,CANF,CADyB,GA8CvB,IA9CJ;IAgDA,QAAM6C,cAAc,gBAAGt2C,mBAAQ,CAACC,YAAT,CAAsBm2C,cAAtB,EAAsC,KAAKrzB,OAA3C,CAAvB;IAEA,wBAAOrrB,8BAAA,0BAAA,MAAA,EAAG4+C,cAAH,CAAP;IACD,GArFD;;IAzFOI,EAAAA,4BAAA,GAAe;IACpB3D,IAAAA,SAAS,EAAE;IADS,GAAf;IA+KT,wBAAA;IAnLA,EAA8Br7C,gBAAK,CAACkY;;ICMpC,IAAM+mC,cAAc,GAAoD;IACtEz9C,EAAAA,OAAO,EAAE,GAD6D;IAEtE6I,EAAAA,KAAK,EAAE;IAF+D,CAAxE;;;IAKwB6D,EAAAA,4BAAA;;IAUtB,oBAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IATAkP,IAAAA,kBAAA,gBAAepO,gBAAK,CAAC0zB,SAAN,EAAf;;IAsBAtlB,IAAAA,oBAAA,GAAiB,UAACwO,KAAD;IACf,UAAM6gC,YAAY,GAAGE,QAAc,CAACF,YAAf,CAA4BrvC,KAAI,CAAC8wC,YAAL,CAAkBpgC,OAA9C,CAArB;IACA0+B,MAAAA,qBAAqB,CAAC5gC,KAAD,EAAQ6gC,YAAR,EAAsBrvC,KAAI,CAAC2lC,qBAA3B,CAArB;IACD,KAHD;;IAVE3lC,IAAAA,KAAI,CAACid,OAAL,GAAe0xB,iBAAiB,EAAhC;IAEA3uC,IAAAA,KAAI,CAACE,KAAL,GAAa;IACX7G,MAAAA,IAAI,EAAEvI,KAAK,CAACuI,IADD;IAEXE,MAAAA,OAAO,EAAEzI,KAAK,CAACuI;IAFJ,KAAb;IAKA2G,IAAAA,KAAI,CAAC2lC,qBAAL,GAA6B3lC,KAAI,CAAC2lC,qBAAL,CAA2BrhC,IAA3B,CAAgCtE,KAAhC,CAA7B;;IACD;;IAOD+wC,EAAAA,mBAAA,kBAAA,GAAA;IACE,QAAI,KAAKjgD,KAAL,CAAW++C,aAAf,EAA8B;IAC5B,UAAI,KAAK3vC,KAAL,CAAW7G,IAAf,EAAqB;IACnBk2C,QAAAA,QAAc,CAACV,GAAf,CAAmB,KAAKiC,YAAL,CAAkBpgC,OAArC;IACD;;IACDxkB,MAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,SAA1B,EAAqC,KAAKnsB,cAA1C;IACD;;IACD,QAAI,KAAKvd,KAAL,CAAWg/C,aAAX,IAA4B,KAAK5vC,KAAL,CAAW7G,IAA3C,EAAiD;IAC/Ck2C,MAAAA,QAAc,CAACV,GAAf,CAAmB,KAAKiC,YAAL,CAAkBpgC,OAArC;IACD;;IACD,QAAMtW,MAAM,GAAG20C,gBAAgB,CAAC;IAC9B9xB,MAAAA,OAAO,EAAE,KAAKA,OADgB;IAE9BgyB,MAAAA,kBAAkB,EAAE,oBAFU;IAG9BtC,MAAAA,UAAU,EAAE,KAAKmE;IAHa,KAAD,CAA/B;IAKA,SAAK7wC,QAAL,CAAc;IACZ7F,MAAAA,MAAM;IADM,KAAd;IAGD,GAlBD;;IAoBA22C,EAAAA,mBAAA,qBAAA,GAAA;IACE,QAAI,KAAKjgD,KAAL,CAAW++C,aAAf,EAA8B;IAC5B3jD,MAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,SAA7B,EAAwC,KAAK3sB,cAA7C;IACD;IACF,GAJD;;IAMA0iC,EAAAA,mBAAA,mBAAA,GAAA,UAAmB9nC,SAAnB;IACE,QAAIA,SAAS,CAAC5P,IAAV,KAAmB,KAAKvI,KAAL,CAAWuI,IAAlC,EAAwC;IACtC,UAAI,KAAKvI,KAAL,CAAWuI,IAAf,EAAqB;IACnB,YAAMe,MAAM,GAAG20C,gBAAgB,CAAC;IAC9B9xB,UAAAA,OAAO,EAAE,KAAKA,OADgB;IAE9BgyB,UAAAA,kBAAkB,EAAE,0BAFU;IAG9BtC,UAAAA,UAAU,EAAE,KAAKmE;IAHa,SAAD,CAA/B;IAMA,aAAK7wC,QAAL,CAAc;IACZ7F,UAAAA,MAAM,QADM;IAEZf,UAAAA,IAAI,EAAE,IAFM;IAGZE,UAAAA,OAAO,EAAE;IAHG,SAAd;IAMA,YAAI,KAAKzI,KAAL,CAAW++C,aAAX,IAA4B,KAAK/+C,KAAL,CAAWg/C,aAA3C,EAA0DP,QAAc,CAACV,GAAf,CAAmB,KAAKiC,YAAL,CAAkBpgC,OAArC;IAC3D,OAdD,MAcO;IACL,aAAKzQ,QAAL,CAAc;IACZ1G,UAAAA,OAAO,EAAE;IADG,SAAd;IAIA,YAAI,KAAKzI,KAAL,CAAW++C,aAAX,IAA4B,KAAK/+C,KAAL,CAAWg/C,aAA3C,EAA0DP,QAAc,CAACQ,MAAf,CAAsB,KAAKe,YAAL,CAAkBpgC,OAAxC;IAC3D;IACF;IACF,GAxBD;;IA0BAqgC,EAAAA,mBAAA,sBAAA,GAAA,UAAsBviC,KAAtB;IACQ,QAAAliB,KAA4C,KAAKwE,KAAjD;IAAA,QAAEg/C,aAAa,mBAAf;IAAA,QAAiBD,aAAa,mBAA9B;IAAA,QAAgC3hC,OAAO,aAAvC;IACE,QAAA7U,IAAI,GAAK,KAAK6G,KAAL,KAAT;;IAER,QAAI7G,IAAI,IAAIk2C,QAAc,CAACF,YAAf,CAA4B,KAAKyB,YAAL,CAAkBpgC,OAA9C,CAAZ,EAAoE;IAClE,UAAIo/B,aAAa,IAAID,aAArB,EAAoCN,QAAc,CAACQ,MAAf,CAAsB,KAAKe,YAAL,CAAkBpgC,OAAxC;IACpC,UAAIxC,OAAJ,EAAaA,OAAO,CAACM,KAAD,EAAQ,cAAR,CAAP;IACd;IACF,GARD;;IAUAuiC,EAAAA,mBAAA,mBAAA,GAAA;IACE,QAAI,CAAC,KAAK7wC,KAAL,CAAW3G,OAAhB,EAAyB;IACvB,WAAK0G,QAAL,CAAc;IACZ5G,QAAAA,IAAI,EAAE;IADM,OAAd;IAGD;IACF,GAND;;IAQA03C,EAAAA,mBAAA,OAAA,GAAA;;;IAAA,oBAAA;;IACQ,QAAA54C,KAA4B,KAAK+H,KAAjC;IAAA,QAAE3G,OAAO,aAAT;IAAA,QAAWF,IAAI,UAAf;IAAA,QAAiBe,MAAM,YAAvB;IACA,QAAAhC,KAWF,KAAKtH,KAXH;IAAA,QACJyD,SAAS,eADL;IAAA,QAEJu7C,aAAa,mBAFT;IAAA,QAGJ7C,SAAS,eAHL;IAAA,QAIJU,MAAM,YAJF;IAAA,QAKJhsB,SAAS,eALL;IAAA,QAMJ8sB,WAAW,iBANP;IAAA,QAOJf,aAAa,mBAPT;IAAA,QAQJuC,aAAa,mBART;IAAA,QASJD,MAAM,YATF;IAAA,QAUJ9hC,OAAO,aAVH;IAaN,QAAMgiC,cAAc,GAAW91C,MAAM,GAAGA,MAAM,GAAG,CAAZ,GAAgB,IAArD;IAEA,QAAMX,OAAO,GAAGxF,8BAAU,CACxB;IACE88C,MAAAA,SAAS,EAAE,IADb;IAEE,yBAAmB13C,IAFrB;IAGE,mCAA6BE,OAH/B;IAIE,oCAA8B,CAACA;IAJjC,KADwB,EAOxBhF,SAPwB,CAA1B;IAUA,QAAM67C,cAAc,GAAGn8C,8BAAU,WAC/B3H,GAAC,oBAAD,GAAuB,MACvBA,GAAC,UAAD,GAAaiN,SACbjN,GAAC,0BAAD,GAA6BiN,SAC7BjN,GAAC,2BAAD,GAA8B,CAACiN,WAJA,EAAjC;IAOA,QAAMgP,WAAW,GAAGtU,8BAAU,WAC5BE,GAAC,mBAAD,GAAsB,MACtBA,GAAC,kCAAD,GAAqCwtB,aAFT,EAA9B;IAKA,QAAMwuB,WAAW,GAAGl8C,8BAAU,WAC5BR,GAAC,mBAAD,GAAsB,MACtBA,GAAC,kCAAD,GAAqCkuB,WACrCluB,GAAC,kCAAD,GAAqCg7C,eAHT,EAA9B;IAMA,QAAMjmC,SAAS,GAAGvU,8BAAU,WAC1B0B,GAAC,iBAAD,GAAoB,MACpBA,GAAC,6BAAD,GAAgC,CAAC,CAACg4C,MAAF,IAAYc,aAC5C94C,GAAC,2BAAD,GAA8B,CAAA+3C,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAES,UAAf,MAA6BT,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEU,QAA5C,GAC9Bz4C,GAAC,4BAAD,GAA+B,EAAC+3C,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAES,UAAhB,KAA8B,EAACT,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEU,QAAhB,KAJnC,EAA5B;IAOA,QAAMxL,YAAY,GAAG3uC,8BAAU,WAC7BkB,GAAC,+BAAD,GAAkC,CAAAu4C,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAES,UAAf,MAA6BT,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEU,QAA5C,GAClCj5C,GAAC,8BAAD,GAAiC,EAACu4C,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAES,UAAhB,KAA8B,EAACT,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEU,QAAhB,KAFlC,EAA/B;IAKA,QAAMr9C,SAAS,GAAGF,gBAAgB,CAAC,KAAKC,KAAN,CAAlC;IAEA,QAAMkgD,kBAAkB,gBACtBp/C,8BAAA,CAACkvC,GAAD;uBACY;uBACC,KAAK5gC,KAAL,CAAW7G;IACtB9E,MAAAA,SAAS,EAAE67C;wBACC;IACZx5C,MAAAA,KAAK,EAAE;IAAEwD,QAAAA,MAAM,EAAEA,MAAM,GAAGA,MAAH,GAAY;IAA5B;IACPgC,MAAAA,GAAG,EAAE,KAAK00C;IACVrK,MAAAA,cAAc,EAAE;IAAM,eAAAzmC,KAAI,CAACixC,kBAAL;IAAuB;SAP/C,eASEr/C,8BAAA,CAAC4f,MAAD;uBAAkB;WAA6BzgB;IAAWwD,MAAAA,SAAS,EAAEkF;IAAS3H,MAAAA,IAAI,EAAE++C,cAAc,CAAC5D,SAAD;UAAlG,eACEr7C,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAEgU;SAAhB,eACE3W,8BAAA,CAAC4f,MAAD;uBAAkB;SAAlB,EACG,CAACw+B,MAAD,iBAAWp+C,8BAAA,CAACq8C,aAAD;IAAerL,MAAAA,YAAY,EAAEA;WAAkB8K,cAA/C,CADd,EAGG,CAAC,CAACsC,MAAF,IAAYA,MAHf,CADF,eAMEp+C,8BAAA,CAAC4f,MAAD;IAAQjd,MAAAA,SAAS,EAAC;SAAlB,eACE3C,8BAAA,CAACoE,OAAD;IAASV,MAAAA,OAAO,EAAC;SAAjB,eACE1D,8BAAA,CAACyJ,MAAD;IACEjE,MAAAA,IAAI,EAAC;IACLrF,MAAAA,UAAU,EAAC;uBACD;IACVwJ,MAAAA,SAAS,EAAE;IACXf,MAAAA,OAAO,EAAE,iBAACgU,KAAD;IACP,YAAIN,OAAJ,EAAaA,OAAO,CAACM,KAAD,EAAQ,WAAR,CAAP;IACd;SAPH,CADF,CADF,CANF,CADF,eAqBE5c,8BAAA,CAAC48C,WAAD;uBAAuB;IAAsCj6C,MAAAA,SAAS,EAAEiU;SAAxE,EACG,KAAK1X,KAAL,CAAWyC,QADd,CArBF,EAwBG,CAAC,CAAC,CAACo6C,MAAF,IAAY,CAAC,CAACsC,aAAf,kBACCr+C,8BAAA,CAACi8C,aAAD;uBACY;WACNoC;IACJ52C,MAAAA,IAAI,EAAEA;IACN9E,MAAAA,SAAS,EAAE47C;UAJb,EAMGxC,MANH,CAzBJ,CATF,CADF;IAgDA,QAAMuD,gBAAgB,GAAGpB,aAAa,gBACpCl+C,8BAAA,CAACouC,YAAD;IACE5jC,MAAAA,GAAG,EAAE,KAAK00C;uBACA;IACV7Q,MAAAA,cAAc,EAAE,KAAK0F;SAHvB,EAKGqL,kBALH,CADoC,GASpCA,kBATF;IAYA,QAAMR,cAAc,gBAAGt2C,mBAAQ,CAACC,YAAT,CAAsB+2C,gBAAtB,EAAwC,KAAKj0B,OAA7C,CAAvB;IAEA,wBACErrB,8BAAA,0BAAA,MAAA,EACG4+C,cADH,eAEE5+C,8BAAA,CAACsH,QAAD;IAAUG,MAAAA,IAAI,EAAE,KAAK6G,KAAL,CAAW3G;IAASa,MAAAA,MAAM,EAAE81C;SAA5C,CAFF,CADF;IAMD,GA/HD;;IA9FOa,EAAAA,sBAAA,GAAe;IACpB9D,IAAAA,SAAS,EAAE,SADS;IAEpBwB,IAAAA,WAAW,EAAE,KAFO;IAGpBf,IAAAA,aAAa,EAAE;IAHK,GAAf;IA8NT,kBAAA;IAlOA,EAAwB97C,gBAAK,CAACkY;;QC7EjBqnC,WAAW,GAAG,SAAdA,WAAc,CAACrgD,KAAD;;;IACjB,MAAAyL,QAAQ,GAAmFzL,KAAK,SAAhG;IAAA,MAAUg0C,SAAS,GAAwEh0C,KAAK,UAAhG;IAAA,MAAqBsgD,aAAa,GAAyDtgD,KAAK,cAAhG;IAAA,MAAoC4D,MAAM,GAAiD5D,KAAK,OAAhG;IAAA,MAA4CyC,QAAQ,GAAuCzC,KAAK,SAAhG;IAAA,MAAsDyD,SAAS,GAA4BzD,KAAK,UAAhG;IAAA,MAAiE2jB,QAAQ,GAAkB3jB,KAAK,SAAhG;IAAA,MAA2EugD,WAAW,GAAKvgD,KAAK,YAAhG;;IAEF,MAAAqE,KAA4BvD,gBAAK,CAAC8B,QAAN,CAAe,IAAf,CAA5B;IAAA,MAAC49C,SAAS,QAAV;IAAA,MAAYC,YAAY,QAAxB;;IACA,MAAAp5C,KAA4BvG,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAA5B;IAAA,MAACiuB,SAAS,QAAV;IAAA,MAAY6vB,YAAY,QAAxB;;IAEN,MAAMp1C,GAAG,gBAAGxK,gBAAK,CAAC0zB,SAAN,EAAZ;IACA,MAAMv0B,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEAc,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAImD,GAAG,CAACsU,OAAR,EAAiB;IACf8gC,MAAAA,YAAY,CAACp1C,GAAG,CAACsU,OAAJ,CAAY+gC,YAAZ,GAA2Br1C,GAAG,CAACsU,OAAJ,CAAYghC,YAAxC,CAAZ;IACD;IACF,GAJD;IAMA,MAAM/R,YAAY,GAAG1rC,8BAAU,WAC7B3H,GAAC,sBAAD,GAAyB,MACzBA,GAAC,+BAAD,GAAkC,CAACglD,aAFN,EAA/B;IAKA,MAAMK,SAAS,GAAG19C,8BAAU,WAC1BE,GAAC,mBAAD,GAAsB,MACtBA,GAAC,kBAAD,GAAqB,CAACoI,QAAD,IAAauoC,aAFR,EAA5B;IAKA,MAAMrrC,OAAO,GAAGxF,8BAAU;IAEtBk9C,IAAAA,WAAW,EAAE;SACb19C,GAAC,uBAAD,GAA0B,CAAC69C,WAC3B79C,GAAC,sBAAD,GAAyB,CAAC69C,SAAD,IAAc/0C,YAJjB,GAMxBhI,SANwB,CAA1B;IASA,MAAMq9C,WAAW,GAAG39C,8BAAU,WAC5B0B,GAAC,qBAAD,GAAwB,MACxBA,GAAC,gCAAD,GAAmCgsB,aAFP,EAA9B;;IAKA,MAAMjN,eAAe,GAAG,SAAlBA,eAAkB,CAACm9B,WAAD,EAAuBv2C,IAAvB;IAAwC,WAAA;IAC9D,UAAImZ,QAAJ,EAAc;IACZ,YAAInZ,IAAI,KAAK,YAAT,IAAyBA,IAAI,KAAK,YAAtC,EAAoD;IAClD,cAAKg2C,SAAS,IAAI/0C,QAAd,IAA2B,CAACuoC,SAAhC,EAA2C;IAC3CyM,UAAAA,YAAY,CAAC,KAAD,CAAZ;IACD;;IAED,YAAIj2C,IAAI,KAAK,OAAb,EAAsB;IACpBi2C,UAAAA,YAAY,CAAC,IAAD,CAAZ;IACD;;IAED98B,QAAAA,QAAQ,CAACo9B,WAAD,CAAR;IACD;IACF,KAb+D;IAa/D,GAbD;;IAeA,MAAMl9C,KAAK,GAAG4H,QAAQ,GAAG60C,aAAH,GAAmB7yC,SAAzC;IAEA,sBACE3M,8BAAA,MAAA;qBAAe;IAAkC2C,IAAAA,SAAS,EAAEorC;IAAc/oC,IAAAA,KAAK,EAAE;IAAElC,MAAAA,MAAM;IAAR;OAAjF,eACE9C,8BAAA,MAAA;qBAAe;SAA+Bb;sBAAuB;IAAMwD,IAAAA,SAAS,EAAEkF;IAAS7C,IAAAA,KAAK,EAAE;IAAEjC,MAAAA,KAAK;IAAP;QAAtG,eACE/C,8BAAA,MAAA;IACE2C,IAAAA,SAAS,EAAEo9C;qBACD;IACVvpC,IAAAA,YAAY,EAAEsM,eAAe,CAAC,IAAD,EAAO,YAAP;IAC7B9P,IAAAA,YAAY,EAAE8P,eAAe,CAAC,KAAD,EAAQ,YAAR;IAC7BtY,IAAAA,GAAG,EAAEA;OALP,EAOG7I,QAPH,CADF,EAUG89C,WAAW,iBACVz/C,8BAAA,MAAA;IACEwD,IAAAA,IAAI,EAAC;IACLkH,IAAAA,QAAQ,EAAE;IACV/H,IAAAA,SAAS,EAAEq9C;qBACD;IACVp3C,IAAAA,OAAO,EAAEka,eAAe,CAAC,CAACnY,QAAF,EAAY,OAAZ;IACxB2O,IAAAA,SAAS,EAAEwJ,eAAe,CAAC,CAACnY,QAAF,EAAY,OAAZ;OAN5B,eAQE3K,8BAAA,CAACsB,IAAD;IACEsB,IAAAA,IAAI,EAAE+H,QAAQ,GAAG,qBAAH,GAA2B;qBAC/B;IACVhI,IAAAA,SAAS,EAAC;IACVzC,IAAAA,IAAI,EAAE;OAJR,CARF,CAXJ,CADF,CADF;IAgCD;IAEDq/C,WAAW,CAACh7C,WAAZ,GAA0B,aAA1B;IAEAg7C,WAAW,CAAC96C,YAAZ,GAA2B;IACzBkG,EAAAA,QAAQ,EAAE,KADe;IAEzBuoC,EAAAA,SAAS,EAAE,IAFc;IAGzBpwC,EAAAA,MAAM,EAAE,MAHiB;IAIzB08C,EAAAA,aAAa,EAAE,OAJU;IAKzBC,EAAAA,WAAW,EAAE;IALY,CAA3B;;ICjHO,IAAMS,QAAM,GAAG,SAATA,MAAS,CAAChhD,KAAD;;;IACZ,MAAAwK,IAAI,GAAmGxK,KAAK,KAA5G;IAAA,MAAMrE,IAAI,GAA6FqE,KAAK,KAA5G;IAAA,MAAYyD,SAAS,GAAkFzD,KAAK,UAA5G;IAAA,MAAuB2C,KAAgF3C,KAAK,SAA5G;IAAA,MAAuBihD,QAAQ,mBAAG,WAAlC;IAAA,MAA0Cp8C,KAA6D7E,KAAK,WAA5G;IAAA,MAA0CkhD,UAAU,mBAAG,qBAAvD;IAAA,MAAyE78C,KAA8BrE,KAAK,YAA5G;IAAA,MAAyEmhD,WAAW,mBAAG,gBAAvF;IAER,MAAMlhD,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMohD,WAAW,GAAGj+C,8BAAU,WAE1B3H,GAAC,iCAAD,GAAoC,QAFV,GAI5BiI,SAJ4B,CAA9B;IAOA,MAAM49C,SAAS,GAAGl+C,8BAAU,WAExBE,GAAC,qBAAD,GAAwB,QAFA,GAI1BI,SAJ0B,CAA5B;;IAOA,MAAM6U,OAAO,GAAG,SAAVA,OAAU,CAACgpC,CAAD;IACd,QAAI,OAAOA,CAAP,KAAa,QAAjB,EAA2B;IACzB,UAAM5kD,CAAC,GAAG,IAAIC,IAAJ,CAAS2kD,CAAT,CAAV;IACA,UAAMtlD,KAAK,GAAGU,CAAC,CAACE,QAAF,EAAd;IACA,UAAMC,OAAO,GAAGH,CAAC,CAACI,UAAF,EAAhB;IAEA,UAAMb,IAAI,GAAGD,KAAK,GAAG,EAAR,GAAa,IAAb,GAAoB,IAAjC;IACA,UAAME,GAAG,GAAGF,KAAK,GAAG,EAAR,IAAc,EAA1B;IAEA,aAAUE,GAAG,MAAH,GAAOW,OAAP,MAAA,GAAkBZ,IAA5B;IACD;;IAED,WAAOqlD,CAAP;IACD,GAbD;;IAeA,UAAQ92C,IAAR;IACE,SAAK,QAAL;IACE,0BACE1J,8BAAA,MAAA,eAASb;IAAWwD,QAAAA,SAAS,EAAE29C;YAA/B,eACEtgD,8BAAA,CAACsB,IAAD;IAAMsB,QAAAA,IAAI,EAAC;IAAQ8G,QAAAA,IAAI,EAAC;IAAWvJ,QAAAA,UAAU,EAAC;WAA9C,CADF,eAEEH,8BAAA,CAACyC,IAAD;IAAMtC,QAAAA,UAAU,EAAC;IAAcD,QAAAA,IAAI,EAAC;IAAQyC,QAAAA,SAAS,EAAC;WAAtD,UAAA,CAFF,eAKE3C,8BAAA,CAACgwB,QAAD;IAAU1pB,QAAAA,IAAI,EAAE,CAAC;IAAE6C,UAAAA,KAAK,EAAEi3C;IAAT,SAAD;IAAyBrwB,QAAAA,SAAS,EAAE;WAApD,CALF,CADF;;IAUF,SAAK,QAAL;IACE,0BACE/vB,8BAAA,MAAA,eAASb;IAAWwD,QAAAA,SAAS,EAAE29C;YAA/B,eACEtgD,8BAAA,CAACsB,IAAD;IAAMsB,QAAAA,IAAI,EAAC;IAAyB8G,QAAAA,IAAI,EAAC;IAAWvJ,QAAAA,UAAU,EAAC;WAA/D,CADF,eAEEH,8BAAA,CAACyC,IAAD;IAAMtC,QAAAA,UAAU,EAAC;IAAcD,QAAAA,IAAI,EAAC;IAAQyC,QAAAA,SAAS,EAAC;WAAtD,UAAA,CAFF,EAKG9H,IAAI,iBAAImF,8BAAA,CAACgwB,QAAD;IAAU1pB,QAAAA,IAAI,EAAE,CAAC;IAAE6C,UAAAA,KAAK,EAAEqO,OAAO,CAAC3c,IAAD;IAAhB,SAAD;IAA4Bk1B,QAAAA,SAAS,EAAE;WAAvD,CALX,CADF;;IAUF,SAAK,MAAL;IACE,0BACE/vB,8BAAA,MAAA,eAASb;IAAWwD,QAAAA,SAAS,EAAE29C;YAA/B,EACGzlD,IAAI,iBACHmF,8BAAA,CAACyC,IAAD;IAAMtC,QAAAA,UAAU,EAAC;IAASD,QAAAA,IAAI,EAAC;WAA/B,EACGsX,OAAO,CAAC3c,IAAD,CADV,CAFJ,eAMEmF,8BAAA,CAACgwB,QAAD;IAAU1pB,QAAAA,IAAI,EAAE,CAAC;IAAE6C,UAAAA,KAAK,EAAEg3C;IAAT,SAAD;IAAuBpwB,QAAAA,SAAS,EAAE;WAAlD,CANF,CADF;;IAWF,SAAK,SAAL;IACE,0BACE/vB,8BAAA,CAACyC,IAAD,eAAUtD;IAAWgB,QAAAA,UAAU,EAAC;IAASD,QAAAA,IAAI,EAAC;IAAQyC,QAAAA,SAAS,EAAE49C;YAAjE,EACGF,WADH,CADF;;IAMF,SAAK,MAAL;IACE,0BACErgD,8BAAA,0BAAA,MAAA,EACGnF,IAAI,iBACHmF,8BAAA,CAACyC,IAAD,eAAUtD;IAAWgB,QAAAA,UAAU,EAAC;IAASD,QAAAA,IAAI,EAAC;IAAQyC,QAAAA,SAAS,EAAE49C;YAAjE,EACG/oC,OAAO,CAAC3c,IAAD,CADV,CAFJ,CADF;;IAUF;IACE,aAAO,IAAP;IAtDJ;IAwDD,CA1FM;AA4FPqlD,YAAM,CAAC37C,WAAP,GAAqB,QAArB;;ICxFO,IAAMk8C,GAAG,GAAG,SAANA,GAAM,CAACvhD,KAAD;;;IACT,MAAAyC,QAAQ,GAAiEzC,KAAK,SAA9E;IAAA,MAAUwK,IAAI,GAA2DxK,KAAK,KAA9E;IAAA,MAAgBwhD,QAAQ,GAAiDxhD,KAAK,SAA9E;IAAA,MAA0ByhD,UAAU,GAAqCzhD,KAAK,WAA9E;IAAA,MAAsC0hD,UAAU,GAAyB1hD,KAAK,WAA9E;IAAA,MAAkD0J,OAAO,GAAgB1J,KAAK,QAA9E;IAAA,MAA2DyD,SAAS,GAAKzD,KAAK,UAA9E;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMmmC,YAAY,GAAGhjC,8BAAU,WAE3B3H,GAAC,MAAD,GAAS,MACTA,GAAC,UAAQgP,KAAT,GAAkBA,MAClBhP,GAAC,cAAD,GAAiBgmD,UACjBhmD,GAAC,cAAD,GAAiBimD,UAAU,KAAK,UAChCjmD,GAAC,SAAOgP,IAAP,kBAAD,GAA6Bk3C,UAAU,IAAIF,YANhB,GAQ7B/9C,SAR6B,CAA/B;IAaA,sBACE3C,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAE0iC;IAAcz8B,IAAAA,OAAO,EAAEA;qBAAmB;QAAzE,EACGjH,QADH,CADF;IAMD,CAxBM;IA0BP8+C,GAAG,CAACl8C,WAAJ,GAAkB,KAAlB;;IC3BO,IAAMs8C,WAAW,GAAG,SAAdA,WAAc,CAAC3hD,KAAD;IACjB,MAAA4hD,IAAI,GAAwD5hD,KAAK,KAAjE;IAAA,MAAMwK,IAAI,GAAkDxK,KAAK,KAAjE;IAAA,MAAYwhD,QAAQ,GAAwCxhD,KAAK,SAAjE;IAAA,MAAsB6hD,UAAU,GAA4B7hD,KAAK,WAAjE;IAAA,MAAkCyhD,UAAU,GAAgBzhD,KAAK,WAAjE;IAAA,MAA8CyD,SAAS,GAAKzD,KAAK,UAAjE;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;;IAEA,MAAIwhD,QAAQ,IAAIh3C,IAAI,KAAK,UAAzB,EAAqC;IACnC,wBACE1J,8BAAA,CAACyC,IAAD,eAAUtD;IAAWgB,MAAAA,UAAU,EAAE;IAAUD,MAAAA,IAAI,EAAE;IAASyC,MAAAA,SAAS,EAAEA;UAArE,EACGo+C,UADH,CADF;IAKD;;IAED,sBACE/gD,8BAAA,CAACyC,IAAD,eAAUtD;IAAWwD,IAAAA,SAAS,EAAEA;IAAWxC,IAAAA,UAAU,EAAEwgD,UAAU,KAAK,SAAf,GAA2B,QAA3B,GAAsC;QAA7F,EACGG,IADH,CADF;IAKD,CAlBM;IAoBPD,WAAW,CAACp8C,YAAZ,GAA2B;IACzBq8C,EAAAA,IAAI,EAAE,EADmB;IAEzBC,EAAAA,UAAU,EAAE;IAFa,CAA3B;IAKAF,WAAW,CAACt8C,WAAZ,GAA0B,aAA1B;;QCMay8C,WAAW,GAAG,SAAdA,WAAc,CAAC9hD,KAAD;IACjB,MAAAwK,IAAI,GAAoExK,KAAK,KAA7E;IAAA,MAAM4hD,IAAI,GAA8D5hD,KAAK,KAA7E;IAAA,MAAYwhD,QAAQ,GAAoDxhD,KAAK,SAA7E;IAAA,MAAsB6hD,UAAU,GAAwC7hD,KAAK,WAA7E;IAAA,MAAkC+hD,aAAa,GAAyB/hD,KAAK,cAA7E;IAAA,MAAiD0J,OAAO,GAAgB1J,KAAK,QAA7E;IAAA,MAA0DyD,SAAS,GAAKzD,KAAK,UAA7E;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEQ,MAAMyhD,UAAU,GAAK,CAAAM,aAAa,IAAI,EAAjB,MAArB;IAER,sBACEjhD,8BAAA,CAACygD,GAAD,eACMthD;IACJuK,IAAAA,IAAI,EAAEA;IACN/G,IAAAA,SAAS,EAAEA;IACXiG,IAAAA,OAAO,EAAEA;IACT83C,IAAAA,QAAQ,EAAEA;IACVC,IAAAA,UAAU,EAAEA;IACZC,IAAAA,UAAU,EAAEK,aAAa,KAAKt0C;QAPhC,eASE3M,8BAAA,CAAC6gD,WAAD;IAAan3C,IAAAA,IAAI,EAAEA;IAAMo3C,IAAAA,IAAI,EAAEA;IAAMC,IAAAA,UAAU,EAAEA;IAAYL,IAAAA,QAAQ,EAAEA;IAAUC,IAAAA,UAAU,EAAEA;OAA7F,CATF,EAUG,CAACD,QAAD,IAAaO,aAAb,iBAA8BjhD,8BAAA,CAACkgD,QAAD,eAAYe,cAAZ,CAVjC,CADF;IAcD;IAEDD,WAAW,CAACz8C,WAAZ,GAA0B,aAA1B;;IChEO,IAAM28C,iBAAiB,gBAAGlhD,gBAAK,CAACC,aAAN,CAAkC,EAAlC,CAA1B;;ICoCA,IAAMkhD,aAAW,GAAG;IACzBC,EAAAA,QAAQ,EAAE,OADe;IAEzBC,EAAAA,UAAU,EAAE,OAFa;IAGzBC,EAAAA,KAAK,EAAE,OAHkB;IAIzBj3C,EAAAA,KAAK,EAAE,OAJkB;IAKzBqB,EAAAA,KAAK,EAAE;IALkB,CAApB;;IAQP,IAAM61C,eAAe,GAAG,SAAlBA,eAAkB,CAACriD,KAAD;;;IACd,MAAAyC,QAAQ,GAAiEzC,KAAK,SAA9E;IAAA,MAAU4G,SAAS,GAAsD5G,KAAK,UAA9E;IAAA,MAAqB4D,MAAM,GAA8C5D,KAAK,OAA9E;IAAA,MAA6Bm1B,SAAS,GAAmCn1B,KAAK,UAA9E;IAAA,MAAwC0C,GAAG,GAA8B1C,KAAK,IAA9E;IAAA,MAA6C2D,GAAG,GAAyB3D,KAAK,IAA9E;IAAA,MAAkDyD,SAAS,GAAczD,KAAK,UAA9E;IAAA,MAAgE6L,IAAI,UAAK7L,OAA3E,WAAA,aAAA,UAAA,aAAA,OAAA,OAAA,aAAA,EAAE;;IACR,MAAMgC,WAAW,GAAGlB,yBAAK,CAACmB,UAAN,CAAiB+/C,iBAAjB,CAApB;IAEA,MAAMM,YAAY,GAAGn/C,8BAAU,WAE3B3H,GAAC,mBAAD,GAAsB,QAFK,GAI7BiI,SAJ6B,CAA/B;IAOA,MAAM8+C,mBAAmB,GAAGp/C,8BAAU,WAElCE,GAAC,SAAD,GAAY,MACZA,GAAC,yBAAD,GAA4B,QAHM,GAKpCI,SALoC,CAAtC;IAQQ,MAAAd,KAAsBX,WAAW,KAAjC;IAAA,MAAAhB,IAAI,mBAAG,eAAP;IAER,MAAMwhD,SAAS,GAAG;IAChB57C,IAAAA,SAAS,EAAEA,SAAS,SAAT,IAAAA,SAAS,WAAT,GAAAA,SAAA,GAAaq7C,aAAW,CAACjhD,IAAD,CADnB;IAEhB4C,IAAAA,MAAM,EAAEA,MAFQ;IAGhBuxB,IAAAA,SAAS,EAAEA;IAHK,GAAlB;;IAMA,MAAI1yB,QAAJ,EAAc;IACZ,wBACE3B,uCAAA,MAAA,eAAS+K;IAAMpI,MAAAA,SAAS,EAAE8+C;IAAqBz8C,MAAAA,KAAK,eAAO08C;UAA3D,EACG//C,QADH,CADF;IAKD;;IAED,sBACE3B,uCAAA,mCAAA,MAAA,EACG4B,GAAG,iBACF5B,uCAAA,MAAA,MAAA,eACEA,uCAAA,MAAA;IACE2C,IAAAA,SAAS,EAAE6+C;IACX5/C,IAAAA,GAAG,EAAEA;IACLiB,IAAAA,GAAG,EAAEA;IACLmC,IAAAA,KAAK,eAAO08C;qBACF;SACN32C,KANN,CADF,CAFJ,CADF;IAgBD,CAnDD;;ICrCA,IAAM42C,eAAe,GAAG,SAAlBA,eAAkB,CAACziD,KAAD;;;IACd,MAAAyC,QAAQ,GAAyBzC,KAAK,SAAtC;IAAA,MAAUyD,SAAS,GAAczD,KAAK,UAAtC;IAAA,MAAwB6L,IAAI,UAAK7L,OAAnC,WAAA,aAAA,EAAE;;IACR,MAAMgC,WAAW,GAAGlB,yBAAK,CAACmB,UAAN,CAAiB+/C,iBAAjB,CAApB;IAEQ,MAAA3+C,KAAsBrB,WAAW,KAAjC;IAAA,MAAAhB,IAAI,mBAAG,eAAP;IAER,MAAM8wC,YAAY,GAAG3uC,8BAAU,WAE3B3H,GAAC,kBAAD,GAAqB,MACrBA,GAAC,uBAAqBwF,KAAtB,GAA+B,QAHJ,GAK7ByC,SAL6B,CAA/B;;IAQA,MAAIzC,IAAI,KAAK,UAAb,EAAyB;IACvB,wBACEF,uCAAA,CAACwR,OAAD;uBAAmB;IAAmC7O,MAAAA,SAAS,EAAEquC;WAAkBjmC,KAAnF,EACGpJ,QADH,CADF;IAKD;;IAED,sBACE3B,uCAAA,CAACyC,IAAD;qBACY;IACVE,IAAAA,SAAS,EAAEquC;IACXtuC,IAAAA,MAAM,EAAC;IACPxC,IAAAA,IAAI,EAAE4S,QAAQ,CAAC5S,IAAD;SACV6K,KALN,EAOGpJ,QAPH,CADF;IAWD,CAjCD;;ICAA,IAAMigD,qBAAqB,GAAG,SAAxBA,qBAAwB,CAAC1iD,KAAD;;;IACpB,MAAAyC,QAAQ,GAAyBzC,KAAK,SAAtC;IAAA,MAAUyD,SAAS,GAAczD,KAAK,UAAtC;IAAA,MAAwB6L,IAAI,UAAK7L,OAAnC,WAAA,aAAA,EAAE;;IACR,MAAMgC,WAAW,GAAGlB,yBAAK,CAACmB,UAAN,CAAiB+/C,iBAAjB,CAApB;IAEQ,MAAA3+C,KAAsBrB,WAAW,KAAjC;IAAA,MAAAhB,IAAI,mBAAG,eAAP;IAER,MAAM4S,QAAQ,GAA6B;IACzCsuC,IAAAA,QAAQ,EAAE,SAD+B;IAEzCC,IAAAA,UAAU,EAAE,SAF6B;IAGzCC,IAAAA,KAAK,EAAE;IAHkC,GAA3C;IAMA,MAAMO,kBAAkB,GAAGx/C,8BAAU,WAEjC3H,GAAC,kBAAD,GAAqB,MACrBA,GAAC,OAAD,GAAU,QAHuB,GAKnCiI,SALmC,CAArC;IAQA,sBACE3C,uCAAA,CAACyC,IAAD;IACEvC,IAAAA,IAAI,EAAE4S,QAAQ,CAAC5S,IAAD;IACdC,IAAAA,UAAU,EAAC;IACXwC,IAAAA,SAAS,EAAEk/C;qBACD;SACN92C,KALN,EAOGpJ,QAPH,CADF;IAWD,CA/BD;;ICFA,IAAMmgD,iBAAiB,GAAG,SAApBA,iBAAoB,CAAC5iD,KAAD;;;IAChB,MAAAyC,QAAQ,GAAyBzC,KAAK,SAAtC;IAAA,MAAUyD,SAAS,GAAczD,KAAK,UAAtC;IAAA,MAAwB6L,IAAI,UAAK7L,OAAnC,WAAA,aAAA,EAAE;;IACR,MAAMgC,WAAW,GAAGlB,yBAAK,CAACmB,UAAN,CAAiB+/C,iBAAjB,CAApB;IAEQ,MAAA3+C,KAAsBrB,WAAW,KAAjC;IAAA,MAAAhB,IAAI,mBAAG,eAAP;IAER,MAAM6hD,oBAAoB,GAAG1/C,8BAAU,WAEnC3H,GAAC,yBAAuBwF,KAAxB,GAAiC,MACjCxF,GAAC,qBAAD,GAAwB,QAHW,GAKrCiI,SALqC,CAAvC;IAQA,sBACE3C,uCAAA,MAAA;qBAAe;IAAmC2C,IAAAA,SAAS,EAAEo/C;SAA0Bh3C,KAAvF,EACGpJ,QADH,CADF;IAKD,CAnBD;;ICmCO,IAAMw/C,WAAW,GAAG;IACzB92C,EAAAA,KAAK,EAAE,OADkB;IAEzBqB,EAAAA,KAAK,EAAE,OAFkB;IAGzB01C,EAAAA,QAAQ,EAAE,OAHe;IAIzBC,EAAAA,UAAU,EAAE,OAJa;IAKzBC,EAAAA,KAAK,EAAE;IALkB,CAApB;IAQA,IAAMU,aAAa,GAAG;IAC3BZ,EAAAA,QAAQ,EAAE,OADiB;IAE3BC,EAAAA,UAAU,EAAE,OAFe;IAG3BC,EAAAA,KAAK,EAAE,OAHoB;IAI3Bj3C,EAAAA,KAAK,EAAE,OAJoB;IAK3BqB,EAAAA,KAAK,EAAE;IALoB,CAAtB;IAQA,IAAMu2C,WAAW,GAAkD;IACxE53C,EAAAA,KAAK,EAAE,GADiE;IAExEqB,EAAAA,KAAK,EAAE,GAFiE;IAGxE01C,EAAAA,QAAQ,EAAE,GAH8D;IAIxEC,EAAAA,UAAU,EAAE,GAJ4D;IAKxEC,EAAAA,KAAK,EAAE;IALiE,CAAnE;IAQA,IAAMxuC,QAAQ,GAA+C;IAClEzI,EAAAA,KAAK,EAAE,OAD2D;IAElEqB,EAAAA,KAAK,EAAE,SAF2D;IAGlE01C,EAAAA,QAAQ,EAAE,OAHwD;IAIlEC,EAAAA,UAAU,EAAE,OAJsD;IAKlEC,EAAAA,KAAK,EAAE;IAL2D,CAA7D;QAQMY,UAAU,GAAG,SAAbA,UAAa,CAAChjD,KAAD;;;IAEtB,MAAAijD,QAAQ,GAUNjjD,KAAK,SAVP;IAAA,MACAkmC,KAAK,GASHlmC,KAAK,MAVP;IAAA,MAEAwmC,WAAW,GAQTxmC,KAAK,YAVP;IAAA,MAGAqE,KAOErE,KAAK,KAVP;IAAA,MAGAgB,IAAI,mBAAG,eAHP;IAAA,MAIAyB,QAAQ,GAMNzC,KAAK,SAVP;IAAA,MAKAyD,SAAS,GAKPzD,KAAK,UAVP;IAAA,MAMAuG,KAAK,GAIHvG,KAAK,MAVP;IAAA,MAOA01B,QAAQ,GAGN11B,KAAK,SAVP;IAAA,MAQAy1B,QAAQ,GAENz1B,KAAK,SAVP;IAAA,MASA6D,KAAK,GACH7D,KAAK,MAVP;IAYF,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAIkjD,YAAY,GAAoB,UAApC;;IAEA,MAAMC,WAAW,GAAG,SAAdA,WAAc,CAACniD,IAAD;IAA2B,WAAAA,IAAI,KAAK,OAAT,IAAoBA,IAAI,KAAK,OAA7B;IAAoC,GAAnF;;IAEA,MAAIklC,KAAK,IAAIM,WAAb,EAA0B;IACxB0c,IAAAA,YAAY,GAAGC,WAAW,CAACniD,IAAD,CAAX,GAAoBA,IAApB,GAA2B,OAA1C;IACD,GAFD,MAEO;IACLkiD,IAAAA,YAAY,GAAGC,WAAW,CAACniD,IAAD,CAAX,GAAoB,UAApB,GAAiCA,IAAhD;IACD;;IAED,MAAMuvC,cAAc,GAAGptC,8BAAU,WAE7B3H,GAAC,aAAD,GAAgB,QAFa,GAI/BiI,SAJ+B,CAAjC;IAOA,MAAM2/C,iBAAiB,GAAGjgD,8BAAU,WAAGE,GAAC,qBAAD,GAAwB,QAA3B,GAAmCI,SAAnC,CAApC;IAEA,MAAM4/C,cAAc,GAAGlgD,8BAAU,WAC/BR,GAAC,mBAAD,GAAsB,MACtBA,GAAC,uBAAqBugD,aAAtB,GAAuC,QAFR,EAAjC;IAKA,MAAMI,WAAW,GAAGngD,8BAAU,WAC5B0B,GAAC,yBAAD,GAA4B,MAC5BA,GAAC,6BAA2Bq+C,aAA5B,GAA6CzgD,QAAQ,KAAKgL,aAF9B,EAA9B;;IAKA,MAAIy4B,KAAK,IAAIM,WAAb,EAA0B;IACxB,wBACE1lC,8BAAA,MAAA;uBAAe;WAA8Bb;IAAWwD,MAAAA,SAAS,EAAE8sC;UAAnE,EACGhqC,KAAK,iBAAIzF,8BAAA,MAAA;IAAKgF,MAAAA,KAAK,EAAE;IAAElC,QAAAA,MAAM,EAAEq+C,WAAW,CAACiB,YAAD;IAArB;SAAZ,EAAoD38C,KAApD,CADZ,EAEG08C,QAAQ,IAAI,CAAC18C,KAAb,iBAGCzF,8BAAA,MAAA;IAAK4B,MAAAA,GAAG,EAAEugD;IAAUr/C,MAAAA,MAAM,EAAEq+C,WAAW,CAACiB,YAAD;uBAA0B;SAAjE,CALJ,EAOGhd,KAAK,iBACJplC,8BAAA,CAACwR,OAAD;uBACY;IACVtR,MAAAA,IAAI,EAAE+hD,WAAW,CAACG,YAAD;IACjBz/C,MAAAA,SAAS,EAAE4/C;SAHb,EAKGnd,KALH,CARJ,EAgBGM,WAAW,iBACV1lC,8BAAA,CAACyC,IAAD;IACEvC,MAAAA,IAAI,EAAE4S,QAAQ,CAACsvC,YAAD;IACdz/C,MAAAA,SAAS,EAAE6/C;IACXriD,MAAAA,UAAU,EAAC;uBACD;SAJZ,EAMGulC,WANH,CAjBJ,EA0BG/jC,QAAQ,IAAIA,QA1Bf,CADF;IA8BD;;IAED,MAAM8gD,gBAAgB,GAAG7tB,QAAQ,GAAGA,QAAH,GAAcotB,aAAa,CAACI,YAAD,CAA5D;IAEA,MAAM1oB,WAAW,GAAG;IAClB9E,IAAAA,QAAQ,EAAE6tB,gBADQ;IAElB9tB,IAAAA,QAAQ,EAAEA,QAFQ;IAGlB5xB,IAAAA,KAAK,EAAEA;IAHW,GAApB;IAMA,sBACE/C,8BAAA,CAACkhD,iBAAiB,CAAC5gD,QAAnB;IAA4B7C,IAAAA,KAAK,EAAE;IAAEyC,MAAAA,IAAI,EAAEkiD,YAAR;IAAsBxtB,MAAAA,QAAQ,EAAE6tB;IAAhC;OAAnC,eACEziD,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,MAAA;qBACY;IACV2C,IAAAA,SAAS,EAAE2/C;IACXt9C,IAAAA,KAAK,EAAE00B;SACHv6B,UAJN,EAMGwC,QANH,CADF,CADF,CADF;IAcD;IAEDugD,UAAU,CAAC39C,WAAX,GAAyB,YAAzB;IACA29C,UAAU,CAACQ,KAAX,GAAmBf,eAAnB;IACAO,UAAU,CAACS,WAAX,GAAyBf,qBAAzB;IACAM,UAAU,CAAC19C,KAAX,GAAmB+8C,eAAnB;IACAW,UAAU,CAACU,OAAX,GAAqBd,iBAArB;IAEAI,UAAU,CAACz9C,YAAX,GAA0B;IACxBvE,EAAAA,IAAI,EAAE;IADkB,CAA1B;;QClLa87C,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAC98C,KAAD;IACtB,MAAAkmC,KAAK,GAA6BlmC,KAAK,MAAvC;IAAA,MAAOwmC,WAAW,GAAgBxmC,KAAK,YAAvC;IAAA,MAAoByD,SAAS,GAAKzD,KAAK,UAAvC;IACR,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,CACxB;IACE,yBAAqB;IADvB,GADwB,EAIxBM,SAJwB,CAA1B;IAOA,sBACE3C,8BAAA,MAAA;qBAAe;SAAoCb;IAAWwD,IAAAA,SAAS,EAAEkF;QAAzE,EACGu9B,KAAK,iBACJplC,8BAAA,CAACyC,IAAD;IAAMC,IAAAA,MAAM,EAAC;qBAAmB;OAAhC,EACG0iC,KADH,CAFJ,EAMGA,KAAK,IAAIM,WAAT,iBAAwB1lC,8BAAA,KAAA,MAAA,CAN3B,EAOG0lC,WAAW,iBAAI1lC,8BAAA,CAACyC,IAAD;qBAAgB;OAAhB,EAA8DijC,WAA9D,CAPlB,CADF;IAWD;IAEDsW,gBAAgB,CAACz3C,WAAjB,GAA+B,kBAA/B;;QCDas+C,UAAU,GAAG,SAAbA,UAAa,CAAC3jD,KAAD;;;IAChB,MAAAwK,IAAI,GAAoExK,KAAK,KAA7E;IAAA,MAAM4jD,UAAU,GAAwD5jD,KAAK,WAA7E;IAAA,MAAkB6jD,YAAY,GAA0C7jD,KAAK,aAA7E;IAAA,MAAgCyD,SAAS,GAA+BzD,KAAK,UAA7E;IAAA,MAA2C8jD,wBAAwB,GAAK9jD,KAAK,yBAA7E;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;;IAEM,MAAA6E,KAAkB/D,gBAAK,CAAC8B,QAAN,CAAuB5C,KAAK,CAAC+jD,IAA7B,CAAlB;IAAA,MAACA,IAAI,QAAL;IAAA,MAAOC,OAAO,QAAd;;IACA,MAAA3/C,KAAkBvD,gBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAAlB;IAAA,MAACse,IAAI,QAAL;IAAA,MAAO2O,OAAO,QAAd;;IACA,MAAAxoB,KAAoDvG,gBAAK,CAAC8B,QAAN,CAAuB,CAAvB,CAApD;IAAA,MAACqhD,qBAAqB,QAAtB;IAAA,MAAwBC,wBAAwB,QAAhD;;IAEN,MAAMC,kBAAkB,GAAGrjD,gBAAK,CAACy/B,WAAN,CAAkBxE,QAAQ,CAAC+nB,wBAAD,EAA2BD,YAA3B,CAA1B,EAAoE,CAC7FI,qBAD6F,CAApE,CAA3B;IAIAnjD,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd67C,IAAAA,OAAO,CAAChkD,KAAK,CAAC+jD,IAAP,CAAP;IACD,GAFD,EAEG,CAAC/jD,KAAK,CAAC+jD,IAAP,CAFH;IAIA,MAAM1sC,YAAY,GAAGlU,8BAAU,WAE3B3H,GAAC,aAAD,GAAgB,MAChBA,GAAC,iBAAegP,KAAhB,GAAyBA,QAHE,GAK7B/G,SAL6B,CAA/B;IAQA,MAAM2gD,sBAAsB,GAAGjhD,8BAAU,WACvCE,GAAC,2BAAD,GAA8B,MAC9BA,GAAC,iCAAD,GAAoC,QAFG,EAAzC;IAKA,MAAMghD,sBAAsB,GAAGlhD,8BAAU,WACvCR,GAAC,2BAAD,GAA8B,MAC9BA,GAAC,qCAAD,GAAwC,QAFD,EAAzC;IAKA7B,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI+Y,IAAJ,EAAU;IACR,UAAI6iC,IAAI,IAAI,CAAR,IAAaA,IAAI,IAAIH,UAAzB,EAAqC;IACnCO,QAAAA,kBAAkB,CAACJ,IAAD,CAAlB;IACD,OAFD,MAEO;IAKLI,QAAAA,kBAAkB,CAACG,MAAnB;IAMAJ,QAAAA,wBAAwB,CAAC,UAACK,IAAD;IAAU,iBAAAA,IAAI,GAAG,CAAP;IAAQ,SAAnB,CAAxB;IACD;IACF;IACF,GAlBD,EAkBG,CAACR,IAAD,CAlBH;;IAoBA,MAAMS,kBAAkB,GAAG,SAArBA,kBAAqB,CAAC9qC,CAAD;IACzBA,IAAAA,CAAC,CAAC7P,cAAF;IAEA,QAAM1L,GAAG,GAAG,CAACub,CAAC,CAAC6G,MAAF,CAAShiB,KAAT,CAAeyE,IAAf,EAAb;;IACA,QAAI7E,GAAG,IAAI,CAAP,IAAYA,GAAG,IAAIylD,UAAvB,EAAmC;IACjC,UAAI,CAAC1iC,IAAL,EAAW2O,OAAO,CAAC,IAAD,CAAP;IACXm0B,MAAAA,OAAO,CAAC7lD,GAAD,CAAP;IACD;IACF,GARD;;IAUA,MAAMsmD,iBAAiB,GAAG,SAApBA,iBAAoB,CAAC/qC,CAAD;IACxB,QAAI,CAACha,eAAe,CAACga,CAAC,CAAClT,GAAH,CAApB,EAA6B;IAC3BkT,MAAAA,CAAC,CAAC7P,cAAF;IACD;IACF,GAJD;;IAMA,MAAMF,cAAc,GAAG,SAAjBA,cAAiB,CAAC+6C,UAAD;IACrB70B,IAAAA,OAAO,CAAC,IAAD,CAAP;;IACA,YAAQ60B,UAAR;IACE,WAAK,OAAL;IACEV,QAAAA,OAAO,CAAC,CAAD,CAAP;IACA;;IACF,WAAK,MAAL;IACEA,QAAAA,OAAO,CAACJ,UAAD,CAAP;IACA;;IACF,WAAK,MAAL;IACE,YAAIG,IAAI,GAAG,CAAX,EAAcC,OAAO,CAACD,IAAI,GAAG,CAAR,CAAP;IACd;;IACF,WAAK,MAAL;IACE,YAAIA,IAAI,GAAGH,UAAX,EAAuBI,OAAO,CAACD,IAAI,GAAG,CAAR,CAAP;IACvB;IAZJ;IAcD,GAhBD;;IAkBA,sBACEjjD,8BAAA,MAAA;qBAAe;SAA8Bb;IAAWwD,IAAAA,SAAS,EAAE4T;QAAnE,eACEvW,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE4gD;OAAhB,eACEvjD,8BAAA,CAACyJ,MAAD;IACEb,IAAAA,OAAO,EAAE;IAAM,aAAAC,cAAc,CAAC,OAAD,CAAd;IAAuB;IACtCgC,IAAAA,QAAQ,EAAEo4C,IAAI,IAAI;IAClB9iD,IAAAA,UAAU,EAAC;IACXqF,IAAAA,IAAI,EAAC;qBACK;OALZ,CADF,eAQExF,8BAAA,CAACyJ,MAAD;IACEb,IAAAA,OAAO,EAAE;IAAM,aAAAC,cAAc,CAAC,MAAD,CAAd;IAAsB;IACrCgC,IAAAA,QAAQ,EAAEo4C,IAAI,IAAI;IAClBz9C,IAAAA,IAAI,EAAC;qBACK;IACV7C,IAAAA,SAAS,EAAC;OALZ,CARF,CADF,EAiBG+G,IAAI,KAAK,MAAT,iBACC1J,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACo+B,WAAD;IACEx7B,IAAAA,IAAI,EAAC;IACLD,IAAAA,SAAS,EAAC;IACVqH,IAAAA,QAAQ,EAAE05C;IACVjmD,IAAAA,KAAK,EAAE,MAAGmB,eAAe,CAACqkD,IAAD,CAAf,GAAwBA,IAAxB,GAA+B,EAAlC;qBACG;IACVY,IAAAA,UAAU,EAAEF;OANd,CADF,eASE3jD,8BAAA,CAACyC,IAAD,MAAA,EAAO,SAAOqgD,UAAP,WAAP,CATF,CAlBJ,eA8BE9iD,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE2gD;OAAhB,eACEtjD,8BAAA,CAACyJ,MAAD;IACEb,IAAAA,OAAO,EAAE;IAAM,aAAAC,cAAc,CAAC,MAAD,CAAd;IAAsB;IACrCgC,IAAAA,QAAQ,EAAEo4C,IAAI,IAAIH;IAClBt9C,IAAAA,IAAI,EAAC;qBACK;IACV7C,IAAAA,SAAS,EAAC;OALZ,CADF,eAQE3C,8BAAA,CAACyJ,MAAD;IACEb,IAAAA,OAAO,EAAE;IAAM,aAAAC,cAAc,CAAC,MAAD,CAAd;IAAsB;IACrCgC,IAAAA,QAAQ,EAAEo4C,IAAI,IAAIH;IAClB3iD,IAAAA,UAAU,EAAC;IACXqF,IAAAA,IAAI,EAAC;qBACK;OALZ,CARF,CA9BF,CADF;IAiDD;IAEDq9C,UAAU,CAACt+C,WAAX,GAAyB,YAAzB;IACAs+C,UAAU,CAACp+C,YAAX,GAA0B;IACxBiF,EAAAA,IAAI,EAAE,OADkB;IAExBu5C,EAAAA,IAAI,EAAE,CAFkB;IAGxBH,EAAAA,UAAU,EAAE,CAHY;IAIxBE,EAAAA,wBAAwB,EAAE;IAJF,CAA1B;;QCpIac,aAAa,GAAG,SAAhBA,aAAgB,CAAC5kD,KAAD;;;IACnB,MAAA6C,KAAK,GAA4F7C,KAAK,MAAtG;IAAA,MAAOgB,IAAI,GAAsFhB,KAAK,KAAtG;IAAA,MAAa4hB,YAAY,GAAwE5hB,KAAK,aAAtG;IAAA,MAA2BkiB,WAAW,GAA2DliB,KAAK,YAAtG;IAAA,MAAwCihB,YAAY,GAA6CjhB,KAAK,aAAtG;IAAA,MAAsD6kD,iBAAiB,GAA0B7kD,KAAK,kBAAtG;IAAA,MAAyE8K,QAAQ,GAAgB9K,KAAK,SAAtG;IAAA,MAAmFyD,SAAS,GAAKzD,KAAK,UAAtG;;IAEA,MAAU8kD,aAAa,GAAc7jC,YAAY,SAAjD;IAAA,MAA4BpV,IAAI,UAAKoV,cAAvC,WAAA,EAAE;;IAEF,MAAA5c,KAA8BvD,gBAAK,CAAC8B,QAAN,CAAe5C,KAAK,CAACzB,KAArB,CAA9B;IAAA,MAAC24C,UAAU,QAAX;IAAA,MAAaC,aAAa,QAA1B;;IACA,MAAA9vC,KAAoBvG,gBAAK,CAAC8B,QAAN,CAAe5C,KAAK,CAACzB,KAArB,CAApB;IAAA,MAACA,KAAK,QAAN;IAAA,MAAQihC,QAAQ,QAAhB;;IACA,MAAAl4B,KAAwBxG,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAxB;IAAA,MAACiiC,OAAO,QAAR;IAAA,MAAUQ,UAAU,QAApB;;IACA,MAAA79B,KAAoC1G,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAApC;IAAA,MAAC0iC,aAAa,QAAd;IAAA,MAAgBC,gBAAgB,QAAhC;;IAEN,MAAM9R,QAAQ,gBAAG3yB,gBAAK,CAAC0zB,SAAN,EAAjB;IACA,MAAMv0B,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IACA,MAAMw8B,YAAY,GAAGx8B,KAAK,CAACzB,KAAN,KAAgBkP,SAArC;IAEA3M,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIq0B,YAAJ,EAAkBgD,QAAQ,CAACx/B,KAAK,CAACzB,KAAP,CAAR;IACnB,GAFD,EAEG,CAACyB,KAAK,CAACzB,KAAP,CAFH;IAIA,MAAMwmD,kBAAkB,GAAG5hD,8BAAU,WAEjC3H,GAAC,gBAAD,GAAmB,QAFc,GAInCiI,SAJmC,CAArC;IAOA,MAAMuhD,oBAAoB,GAAG7hD,8BAAU,WACrCE,GAAC,wBAAD,GAA2B,MAC3BA,GAAC,4BAA0BrC,KAA3B,GAAoCA,QAFC,EAAvC;IAKA,MAAMikD,UAAU,GAAG9hD,8BAAU,WAC3BR,GAAC,4BAAD,GAA+B3B,IAAI,KAAK,UADb,EAA7B;IAIA,MAAMkkD,WAAW,GAAG/hD,8BAAU,WAC5B0B,GAAC,wBAAD,GAA2B,MAC3BA,GAAC,4BAA0B7D,KAA3B,GAAoCA,QAFR,EAA9B;;IAKA,MAAMmkD,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAChc,YAAD;IAC1BgO,IAAAA,aAAa,CAAChO,YAAD,CAAb;IACA9D,IAAAA,UAAU,CAAC,KAAD,CAAV;IACAE,IAAAA,gBAAgB,CAAC,KAAD,CAAhB;IACD,GAJD;;IAMA,MAAM6f,aAAa,GAAG,SAAhBA,aAAgB;IACpB,QAAI,CAAC5oB,YAAL,EAAmBgD,QAAQ,CAAC0X,UAAD,CAAR;IACnB,QAAIpsC,QAAJ,EAAcA,QAAQ,CAACosC,UAAU,IAAI,EAAf,CAAR;IACdiO,IAAAA,mBAAmB,CAACjO,UAAD,CAAnB;IACD,GAJD;;IAMA,MAAMW,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACn+B,CAAD;IAC3By9B,IAAAA,aAAa,CAACz9B,CAAC,CAAC6G,MAAF,CAAShiB,KAAV,CAAb;IACA,QAAIumD,aAAJ,EAAmBA,aAAa,CAACprC,CAAD,CAAb;IACpB,GAHD;;IAKA,MAAM4G,eAAe,GAAG,SAAlBA,eAAkB,CAACslB,SAAD;;;IACtB,YAAQA,SAAR;IACE,WAAK,MAAL;IAAa;IACX,gBAAAnS,QAAQ,CAAC7T,OAAT,UAAA,iBAAA,SAAA,MAAkBoX,OAAlB;IACAqO,UAAAA,UAAU,CAAC,IAAD,CAAV;IACAE,UAAAA,gBAAgB,CAAC,IAAD,CAAhB;IACA;IACD;;IACD,WAAK,OAAL;IAAc;IACZA,UAAAA,gBAAgB,CAAC,IAAD,CAAhB;IACA;IACD;;IACD,WAAK,SAAL;IAAgB;IACdA,UAAAA,gBAAgB,CAAC,KAAD,CAAhB;IACD;IAbH;IAeD,GAhBD;;IAkBA,MAAM8f,cAAc,gBAClBvkD,8BAAA,CAACq3B,KAAD;IACEgG,IAAAA,YAAY,EAAE+Y;IACdh1B,IAAAA,WAAW,EAAEA;IACbze,IAAAA,SAAS,EAAEwhD;IAGX7sB,IAAAA,SAAS,EAAEyM;IACX7jC,IAAAA,IAAI,EAAEA;IACN8J,IAAAA,QAAQ,EAAE+sC;IACVh1C,IAAAA,KAAK,EAAEA,KAAK,IAAIgiC;IAChBv5B,IAAAA,GAAG,EAAEmoB;qBACK;SACN5nB,KAZN,CADF;;IAiBA,MAAMuO,SAAS,GAAG,SAAZA,SAAY,CAACsD,KAAD;IAChB,QAAItiB,QAAQ,CAAC++B,aAAT,KAA2B1G,QAAQ,CAAC7T,OAAxC,EAAiD;IAC/C,cAAQlC,KAAK,CAAClX,GAAd;IACE,aAAK,OAAL;IACE4+C,UAAAA,aAAa;IACb;;IACF,aAAK,QAAL;IACED,UAAAA,mBAAmB,CAAC5mD,KAAD,CAAnB;IACA;IANJ;IAQD;IACF,GAXD;;IAaA,MAAMy9C,cAAc,GAAG,SAAjBA,cAAiB;IACrB,QAAI1W,aAAJ,EAAmB;IACjB,aAAOziC,KAAK,IAAI+e,YAAT,IAAyBijB,OAAzB,gBACL/jC,8BAAA,CAACkH,OAAD;IAASC,QAAAA,OAAO,EAAEo9C;IAAgBlgD,QAAAA,QAAQ,EAAC;IAAQ1B,QAAAA,SAAS,EAAC;IAAsCkC,QAAAA,EAAE,EAAC;WAAtG,eACE7E,8BAAA,CAACwkD,aAAD;IAAerkD,QAAAA,UAAU,EAAC;IAAQulC,QAAAA,WAAW,EAAE5kB;WAA/C,CADF,CADK,GAKLyjC,cALF;IAOD;;IAED,wBACEvkD,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAEuhD;uBAAgC;SAAhD,EACGzmD,KAAK,IAAI2jB,WADZ,CADF;IAKD,GAhBD;;IAkBA,sBAGEphB,8BAAA,MAAA;qBAAe;SAAiCb;IAAWwD,IAAAA,SAAS,EAAEshD;IAAoB3qC,IAAAA,SAAS,EAAEA;QAArG,eACEtZ,8BAAA,CAAC8jC,QAAD;IAAU95B,IAAAA,QAAQ,EAAEwV;IAAiBukB,IAAAA,OAAO,EAAEA;OAA9C,EACGmX,cAAc,EADjB,CADF,EAIGnX,OAAO,iBACN/jC,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEyhD;qBAAuB;OAAvC,eACEpkD,8BAAA,CAACyJ,MAAD;IACEjE,IAAAA,IAAI,EAAC;IACL7C,IAAAA,SAAS,EAAC;IACVgH,IAAAA,SAAS,EAAE;IACXzJ,IAAAA,IAAI,EAAC;IACL0I,IAAAA,OAAO,EAAE;IACPy7C,MAAAA,mBAAmB,CAAC5mD,KAAD,CAAnB;IACD;qBACS;OARZ,CADF,eAWEuC,8BAAA,CAACyJ,MAAD;IACEjE,IAAAA,IAAI,EAAC;IACLrF,IAAAA,UAAU,EAAC;IACXwJ,IAAAA,SAAS,EAAE;IACXzJ,IAAAA,IAAI,EAAC;IACL2K,IAAAA,QAAQ,EAAEk5C;IACVn7C,IAAAA,OAAO,EAAE07C;qBACC;OAPZ,CAXF,CALJ,CAHF;IAgCD;IAEDR,aAAa,CAACr/C,YAAd,GAA6B;IAC3BvE,EAAAA,IAAI,EAAE,SADqB;IAE3BkhB,EAAAA,WAAW,EAAE,EAFc;IAG3BjB,EAAAA,YAAY,EAAE;IAHa,CAA7B;;QCxKaskC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACvlD,KAAD;;;IACvB,MAAAkiB,WAAW,GAA+DliB,KAAK,YAA/E;IAAA,MAAa8K,QAAQ,GAAqD9K,KAAK,SAA/E;IAAA,MAAuByD,SAAS,GAA0CzD,KAAK,UAA/E;IAAA,MAAkC6kD,iBAAiB,GAAuB7kD,KAAK,kBAA/E;IAAA,MAAqDwlD,gBAAgB,GAAKxlD,KAAK,iBAA/E;;IAEA,MAAUylD,iBAAiB,GAAgCD,gBAAgB,SAA3E;IAAA,MAA6BnhD,KAA8BmhD,gBAAgB,YAA3E;IAAA,MAA6B1O,WAAW,mBAAG,OAA3C;IAAA,MAAkDjrC,IAAI,UAAK25C,kBAA7D,WAAA,eAAA,EAAE;;IACA,MAAA97C,QAAO,GAAoBotC,WAAW,QAAtC;IAAA,MAAY4O,UAAU,UAAK5O,aAA7B,UAAA,EAAE;;IAEF,MAAAzvC,KAA8BvG,gBAAK,CAAC8B,QAAN,CAAe5C,KAAK,CAACzB,KAArB,CAA9B;IAAA,MAAC24C,UAAU,QAAX;IAAA,MAAaC,aAAa,QAA1B;;IACA,MAAA7vC,KAAoBxG,gBAAK,CAAC8B,QAAN,CAAe5C,KAAK,CAACzB,KAArB,CAApB;IAAA,MAACA,KAAK,QAAN;IAAA,MAAQihC,QAAQ,QAAhB;;IACA,MAAAh4B,KAAoC1G,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAApC;IAAA,MAAC0iC,aAAa,QAAd;IAAA,MAAgBC,gBAAgB,QAAhC;;IAEN,MAAMtlC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IACA,MAAM2lD,WAAW,GAAGzO,UAAU,IAAIA,UAAU,CAAC95C,MAA7C;IACA,MAAMo/B,YAAY,GAAGx8B,KAAK,CAACzB,KAAN,KAAgBkP,SAArC;IAEA3M,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIq0B,YAAJ,EAAkB;IAChB2a,MAAAA,aAAa,CAACn3C,KAAK,CAACzB,KAAP,CAAb;IACAihC,MAAAA,QAAQ,CAACx/B,KAAK,CAACzB,KAAP,CAAR;IACD;IACF,GALD,EAKG,CAACyB,KAAK,CAACzB,KAAP,CALH;IAOA,MAAMoK,OAAO,GAAGxF,8BAAU,WAEtB3H,GAAC,oBAAD,GAAuB,QAFD,GAIxBiI,SAJwB,CAA1B;IAOA,MAAMmiD,WAAW,GAAGziD,8BAAU,WAC5BE,GAAC,4BAAD,GAA+B,QADH,EAA9B;IAIA,MAAMwiD,cAAc,GAAG1iD,8BAAU,WAC/BR,GAAC,4BAAD,GAA+B,CAACgjD,aAChChjD,GAAC,qCAAD,GAAwCgjD,eAFT,EAAjC;IAKA,MAAMhnB,UAAU,GAAGx7B,8BAAU,WAC3B0B,GAAC,8BAAD,GAAiC,QADN,EAA7B;;IAIA,MAAMihD,wBAAwB,GAAG,SAA3BA,wBAA2B,CAAC3nD,GAAD;IAC/Bg5C,IAAAA,aAAa,CAACh5C,GAAD,CAAb;IACA,QAAIsnD,iBAAJ,EAAuBA,iBAAiB,CAACtnD,GAAD,CAAjB;IACxB,GAHD;;IAKA,MAAMgnD,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAChc,YAAD;IAC1BgO,IAAAA,aAAa,CAAChO,YAAD,CAAb;IACA5D,IAAAA,gBAAgB,CAAC,KAAD,CAAhB;IACD,GAHD;;IAKA,MAAM6f,aAAa,GAAG,SAAhBA,aAAgB;IACpB,QAAI,CAAC5oB,YAAL,EAAmBgD,QAAQ,CAAC0X,UAAD,CAAR;IACnB,QAAIpsC,QAAQ,IAAIosC,UAAhB,EAA4BpsC,QAAQ,CAACosC,UAAD,CAAR;IAC5BiO,IAAAA,mBAAmB,CAACjO,UAAD,CAAnB;IACD,GAJD;;IAMA,MAAM52B,eAAe,GAAG,SAAlBA,eAAkB,CAACslB,SAAD;IACtB,YAAQA,SAAR;IACE,WAAK,MAAL;IAAa;IACXL,UAAAA,gBAAgB,CAAC,IAAD,CAAhB;IACA;IACD;;IACD,WAAK,OAAL;IAAc;IACZ;IACD;;IACD,WAAK,SAAL;IAAgB;IACdA,UAAAA,gBAAgB,CAAC,KAAD,CAAhB;IACA;IACD;IAXH;IAaD,GAdD;;IAgBA,MAAMwgB,YAAY,GAAG,SAAfA,YAAe,CAAC1/C,KAAD;IACnB,QAAI9H,KAAJ,EAAW;IACT,UAAM4qC,YAAY,kBAAO5qC,MAAzB;;IACA4qC,MAAAA,YAAY,CAAClM,MAAb,CAAoB52B,KAApB,EAA2B,CAA3B;;IACA,UAAI,CAACm2B,YAAL,EAAmB;IACjB2a,QAAAA,aAAa,CAAChO,YAAD,CAAb;IACA3J,QAAAA,QAAQ,CAAC2J,YAAD,CAAR;IACD;;IAED,UAAIr+B,QAAJ,EAAcA,QAAQ,CAACq+B,YAAD,CAAR;IACf;IACF,GAXD;;IAaA,MAAM6c,kBAAkB,GAAG,SAArBA,kBAAqB;IACzB,QAAI9O,UAAU,IAAIA,UAAU,CAAC95C,MAA7B,EAAqC;IACnC,aAAO85C,UAAU,CAAC/wC,GAAX,CAAe,UAAChI,GAAD,EAAMkI,KAAN;IACpB,4BACEvF,8BAAA,CAAC+c,IAAD;2BACY;IACVrX,UAAAA,GAAG,EAAEH;IACL3C,UAAAA,IAAI,EAAEvF;IACN8L,UAAAA,KAAK,EAAE9L;IACPsF,UAAAA,SAAS,EAAC;eACNiiD;IACJtoC,UAAAA,OAAO,EAAE;IAAM,mBAAA2oC,YAAY,CAAC1/C,KAAD,CAAZ;IAAmB;IAClCqD,UAAAA,OAAO,EAAE;IAAM,mBAAAA,QAAO,IAAIA,QAAO,CAACvL,GAAD,EAAMkI,KAAN,CAAlB;IAA8B;cAR/C,CADF;IAYD,OAbM,CAAP;IAcD;;IACD,wBAAOvF,8BAAA,CAACyC,IAAD;IAAME,MAAAA,SAAS,EAAC;SAAhB,EAAwBye,WAAxB,CAAP;IACD,GAlBD;;IAoBA,MAAM85B,cAAc,GAAG,SAAjBA,cAAiB;IACrB,QAAI1W,aAAJ,EAAmB;IACjB,0BACExkC,8BAAA,MAAA;yBAAe;WAAf,eACEA,8BAAA,CAAC+1C,SAAD;yBACY;IACV30B,QAAAA,WAAW,EAAEA;IACbpX,QAAAA,QAAQ,EAAEg7C;IACVvnD,QAAAA,KAAK,EAAE24C;IACPJ,QAAAA,WAAW,EAAEA;aACTjrC;IACJpI,QAAAA,SAAS,EAAEk7B;YAPb,CADF,CADF;IAaD;;IACD,wBACE79B,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAEoiD;uBAA0B;SAA1C,EACGG,kBAAkB,EADrB,CADF;IAKD,GArBD;;IAuBA,sBACEllD,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEkF;qBAAmB;SAAqC1I,UAAxE,eACEa,8BAAA,CAAC8jC,QAAD;IAAU95B,IAAAA,QAAQ,EAAEwV;IAAiBukB,IAAAA,OAAO,EAAES;OAA9C,EACG0W,cAAc,EADjB,CADF,EAIG1W,aAAa,iBACZxkC,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEmiD;qBAAuB;OAAvC,eACE9kD,8BAAA,CAACyJ,MAAD;qBACY;IACVjE,IAAAA,IAAI,EAAC;IACL7C,IAAAA,SAAS,EAAC;IACVzC,IAAAA,IAAI,EAAC;IACL0I,IAAAA,OAAO,EAAE;IACPy7C,MAAAA,mBAAmB,CAAC5mD,KAAD,CAAnB;IACD;OAPH,CADF,eAUEuC,8BAAA,CAACyJ,MAAD;qBACY;IACVjE,IAAAA,IAAI,EAAC;IACLrF,IAAAA,UAAU,EAAC;IACXD,IAAAA,IAAI,EAAC;IACL2K,IAAAA,QAAQ,EAAEk5C;IACVn7C,IAAAA,OAAO,EAAE07C;OANX,CAVF,CALJ,CADF;IA4BD;IACDG,iBAAiB,CAAChgD,YAAlB,GAAiC;IAC/B2c,EAAAA,WAAW,EAAE,EADkB;IAE/BsjC,EAAAA,gBAAgB,EAAE;IAFa,CAAjC;;QCvKaS,YAAY,GAAG,SAAfA,YAAe,CAACjmD,KAAD;;;IAClB,MAAAgB,IAAI,GAA4BhB,KAAK,KAArC;IAAA,MAAMiH,GAAG,GAAuBjH,KAAK,IAArC;IAAA,MAAWzB,KAAK,GAAgByB,KAAK,MAArC;IAAA,MAAkByD,SAAS,GAAKzD,KAAK,UAArC;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMkmD,MAAM,GAAG,EAAf;IACA,MAAMC,aAAa,GAAG,IAAIvmD,IAAI,CAACwmD,EAAT,GAAcF,MAApC;IAEA,MAAMG,iBAAiB,GAAGljD,8BAAU;IAEhCmjD,IAAAA,IAAI,EAAE;SACN9qD,GAAC,WAASwF,KAAV,GAAmBA,QAHa,GAKlCyC,SALkC,CAApC;IAQA,MAAMitC,QAAQ,GAAG;IACf7xB,IAAAA,OAAO,EAAE;IADM,GAAjB;IAIA,MAAMsqB,YAAY,GAAG5qC,KAAK,GAAG,CAAR,GAAaqB,IAAI,CAAC8H,GAAL,CAASnJ,KAAT,EAAgB0I,GAAhB,IAAuB,GAAxB,GAA+BA,GAA3C,GAAiD,CAAtE;IAEA,MAAM0pC,WAAW,GAAG;IAClBC,IAAAA,EAAE,EAAE,EADc;IAElBC,IAAAA,EAAE,EAAE,EAFc;IAGlBryB,IAAAA,CAAC,EAAE0nC,MAHe;IAIlBpnC,IAAAA,IAAI,EAAE,MAJY;IAKlBiyB,IAAAA,WAAW,EAAE,GALK;IAMlBwV,IAAAA,eAAe,EAAKJ,aAAa,MAAb,GAAiBA;IANnB,GAApB;IASA,sBACErlD,8BAAA,MAAA;qBAAe;SAAgCb;IAAWwD,IAAAA,SAAS,EAAE4iD;SAAuB3V,SAA5F,eACE5vC,8BAAA,SAAA;IAAQ2C,IAAAA,SAAS,EAAC;SAAsBktC,YAAxC,CADF,eAEE7vC,8BAAA,SAAA;IACE2C,IAAAA,SAAS,EAAC;IACV+iD,IAAAA,gBAAgB,EAAEL,aAAa,GAAIhd,YAAY,GAAG,GAAhB,GAAuBgd;SACrDxV;qBACM;QAJZ,CAFF,CADF;IAWD;IAEDsV,YAAY,CAAC5gD,WAAb,GAA2B,cAA3B;IACA4gD,YAAY,CAAC1gD,YAAb,GAA4B;IAC1BvE,EAAAA,IAAI,EAAE,SADoB;IAE1BiG,EAAAA,GAAG,EAAE;IAFqB,CAA5B;;ICrDO,IAAMw/C,IAAI,GAAG,SAAPA,IAAO,CAACzmD,KAAD;;;IACV,MAAAiK,KAAK,GAAmDjK,KAAK,MAA7D;IAAA,MAAOzB,KAAK,GAA4CyB,KAAK,MAA7D;IAAA,MAAc2L,QAAQ,GAAkC3L,KAAK,SAA7D;IAAA,MAAwB+S,MAAM,GAA0B/S,KAAK,OAA7D;IAAA,MAAgC0mD,SAAS,GAAe1mD,KAAK,UAA7D;IAAA,MAA2C8K,QAAQ,GAAK9K,KAAK,SAA7D;IAER,MAAM2mD,SAAS,GAAGxjD,8BAAU,WAC1B3H,GAAC,OAAD,GAAU,MACVA,GAAC,kBAAD,GAAqB,MACrBA,GAAC,eAAD,GAAkBuX,QAClBvX,GAAC,iBAAD,GAAoBmQ,UACpBnQ,GAAC,kBAAD,GAAqBkrD,aALK,EAA5B;;IAQA,MAAME,aAAa,GAAG,SAAhBA,aAAgB;IACpB,QAAIj7C,QAAJ,EAAc;IACd,QAAIb,QAAJ,EAAcA,QAAQ,CAACb,KAAD,EAAQ1L,KAAR,CAAR;IACf,GAHD;;IAKA,MAAMkf,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvB,QAAIA,KAAK,CAAClX,GAAN,KAAc,OAAlB,EAA2B;IACzBogD,MAAAA,aAAa;IACd;IACF,GAJD;;IAMA,MAAMjpC,SAAS,GAAG5K,MAAM,GAAG,cAAH,GAAoBpH,QAAQ,GAAG,kBAAH,GAAwB,SAA5E;IAEA,sBAGE7K,8BAAA,MAAA;qBACY;IACV2C,IAAAA,SAAS,EAAEkjD;IACXvsC,IAAAA,SAAS,EAAE,mBAACV,CAAD;IAAO,aAAA+D,gBAAgB,CAAC/D,CAAD,CAAhB;IAAmB;IACrChQ,IAAAA,OAAO,EAAEk9C;IACTp7C,IAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQ;OAL5B,eAOE7K,8BAAA,CAACsB,IAAD;qBACY;IACVsB,IAAAA,IAAI,EAAEgjD,SAAS,GAAG,cAAH,GAAoB;IACnCjjD,IAAAA,SAAS,EAAC;OAHZ,CAPF,EAaGwG,KAAK,iBACJnJ,8BAAA,CAACyC,IAAD;IAAMC,IAAAA,MAAM,EAAC;IAAStI,IAAAA,KAAK,EAAEyiB;IAAWla,IAAAA,SAAS,EAAC;OAAlD,EACGwG,KADH,CAdJ,CAHF;IAuBD,CA/CM;IAiDPw8C,IAAI,CAACphD,WAAL,GAAmB,MAAnB;;QChBawhD,OAAO,GAAG,SAAVA,OAAU,CAAC7mD,KAAD;;;IACb,MAAA8mD,KAAK,GAA0D9mD,KAAK,MAApE;IAAA,MAAO+S,MAAM,GAAkD/S,KAAK,OAApE;IAAA,MAAe0mD,SAAS,GAAuC1mD,KAAK,UAApE;IAAA,MAA0B8K,QAAQ,GAA6B9K,KAAK,SAApE;IAAA,MAAoCyD,SAAS,GAAkBzD,KAAK,UAApE;IAAA,MAA+C+mD,WAAW,GAAK/mD,KAAK,YAApE;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;;IAEA,MAAMsgB,eAAe,GAAG,SAAlBA,eAAkB,CAACja,KAAD,EAAgB2gD,SAAhB,EAAmCC,SAAnC;IACtB,QAAIn8C,QAAJ,EAAcA,QAAQ,CAACzE,KAAD,EAAQqgD,SAAR,EAAmBM,SAAnB,EAA8BC,SAA9B,CAAR;IACf,GAFD;;IAIA,MAAMC,YAAY,GAAG/jD,8BAAU,WAE3B3H,GAAC,UAAD,GAAa,QAFc,GAI7BiI,SAJ6B,CAA/B;IAOA,sBACE3C,8BAAA,MAAA;qBAAe;SAA2Bb;IAAWwD,IAAAA,SAAS,EAAEyjD;QAAhE,EACGJ,KAAK,CAAC3gD,GAAN,CAAU,UAACghD,IAAD,EAAO9gD,KAAP;IACD,QAAA4D,KAAK,GAAYk9C,IAAI,MAArB;IAAA,QAAO5oD,KAAK,GAAK4oD,IAAI,MAArB;IAER,QAAMC,SAAS,GAAGL,WAAW,CAACnrD,QAAZ,CAAqByK,KAArB,CAAlB;IACA,QAAMghD,UAAU,GAAGt0C,MAAM,KAAK1M,KAA9B;IACA,QAAMihD,aAAa,GAAG,CAACF,SAAD,IAAcV,SAAS,IAAIrgD,KAAjD;IACA,QAAMsF,QAAQ,GAAG,CAAC07C,UAAD,IAAe,CAACD,SAAhB,IAA6BV,SAAS,GAAG,CAAZ,GAAgBrgD,KAA9D;IAEA,wBACEvF,8BAAA,CAAC2lD,IAAD;IACEjgD,MAAAA,GAAG,EAAEH;IACL4D,MAAAA,KAAK,EAAEA;IACP1L,MAAAA,KAAK,EAAEA;IACPwU,MAAAA,MAAM,EAAEs0C;IACRX,MAAAA,SAAS,EAAEY;IACX37C,MAAAA,QAAQ,EAAEA;IACVb,MAAAA,QAAQ,EAAE,kBAACy8C,SAAD,EAAYC,SAAZ;IAA0B,eAAAlnC,eAAe,CAACja,KAAD,EAAQkhD,SAAR,EAAmBC,SAAnB,CAAf;IAA4C;SAPlF,CADF;IAWD,GAnBA,CADH,CADF;IAwBD;IAEDX,OAAO,CAACxhD,WAAR,GAAsB,SAAtB;IACAwhD,OAAO,CAACthD,YAAR,GAAuB;IACrBmhD,EAAAA,SAAS,EAAE,CAAC,CADS;IAErB3zC,EAAAA,MAAM,EAAE,CAFa;IAGrBg0C,EAAAA,WAAW,EAAE;IAHQ,CAAvB;;IC3EO,IAAM/lC,OAAO,GAAG,SAAVA,OAAU,CAAChhB,KAAD;IACb,MAAAtC,WAAW,GAAsEsC,KAAK,YAAtF;IAAA,MAAaynD,iBAAiB,GAAmDznD,KAAK,kBAAtF;IAAA,MAAgC0nD,eAAe,GAAkC1nD,KAAK,gBAAtF;IAAA,MAAiD3B,UAAU,GAAsB2B,KAAK,WAAtF;IAAA,MAA6DoP,KAAK,GAAepP,KAAK,MAAtF;IAAA,MAAoEmP,QAAQ,GAAKnP,KAAK,SAAtF;IAEA,MAAAkhB,IAAI,GAA+C9R,KAAK,KAAxD;IAAA,MAAMY,SAAS,GAAoCZ,KAAK,UAAxD;IAAA,MAAiBe,OAAO,GAA2Bf,KAAK,QAAxD;IAAA,MAA0Bu4C,UAAU,GAAev4C,KAAK,WAAxD;IAAA,MAAsCw4C,QAAQ,GAAKx4C,KAAK,SAAxD;;IAER,MAAMy4C,SAAS,GAAG,SAAZA,SAAY,CAACr9C,IAAD;IAChB,QAAIA,IAAI,KAAK,OAAb,EAAsB;IACd,UAAAhP,KAAkB0R,WAAW,CAAC8C,SAAD,CAA7B;IAAA,UAAEhR,IAAI,UAAN;IAAA,UAAQD,KAAK,WAAb;;IACNoQ,MAAAA,QAAQ,CAAC;IACPG,QAAAA,OAAO,EAAEtQ,IADF;IAEPuQ,QAAAA,QAAQ,EAAExQ;IAFH,OAAD,CAAR;IAID;;IACD,QAAIyL,IAAI,KAAK,KAAb,EAAoB;IACZ,UAAAnH,KAAkB6J,WAAW,CAACiD,OAAD,CAA7B;IAAA,UAAEnR,IAAI,UAAN;IAAA,UAAQD,KAAK,WAAb;;IAENoQ,MAAAA,QAAQ,CAAC;IACPG,QAAAA,OAAO,EAAEtQ,IADF;IAEPuQ,QAAAA,QAAQ,EAAExQ;IAFH,OAAD,CAAR;IAID;IACF,GAhBD;;IAkBA,MAAMoiB,cAAc,GAAG,SAAjBA,cAAiB,CAAC9c,EAAD,EAA6ClG,GAA7C,EAA0DqM,IAA1D;IACrB2E,IAAAA,QAAQ,CAAC;IAAE5G,MAAAA,IAAI,EAAE;IAAR,KAAD,CAAR;;IAEA,QAAIiC,IAAI,KAAK,OAAb,EAAsB;IACpB,UAAM9O,eAAe,GAAG+rD,iBAAiB,CAAC/rD,eAAlB,IAAqC,GAA7D;;IACA,UAAIyC,GAAG,IAAI,CAACA,GAAG,CAACvC,QAAJ,CAAaF,eAAb,CAAZ,EAA2C;IACzC,YAAMgB,CAAC,GAAG8Q,eAAe,CAAC9P,WAAD,EAAcS,GAAd,EAAmBE,UAAnB,CAAzB;;IACA,YAAI3B,CAAJ,EAAO;IACLyS,UAAAA,QAAQ,CAAC;IAAEa,YAAAA,SAAS,EAAEtT;IAAb,WAAD,CAAR;;IACA,cAAIyT,OAAJ,EAAa;IACL,gBAAA3U,KAA8C0R,WAAW,CAACiD,OAAD,CAAzD;IAAA,gBAAQ8F,KAAK,UAAb;IAAA,gBAAsBC,MAAM,WAA5B;IAAA,gBAAoCC,KAAK,UAAzC;;IACN,gBAAIrI,WAAW,CAACkC,SAAD,EAAY,MAAZ,EAAoBiG,KAApB,EAA2BC,MAA3B,EAAmCC,KAAnC,CAAf,EAA0D;IACxDhH,cAAAA,QAAQ,CAAC;IAAEgB,gBAAAA,OAAO,EAAE1C;IAAX,eAAD,CAAR;IACD;IACF;;IACD,cAAIg6C,iBAAiB,CAACrmC,OAAtB,EAA+BqmC,iBAAiB,CAACrmC,OAAlB,CAA0B/c,EAA1B,EAA8BlG,GAA9B;IAChC;IACF;IACF;;IACD,QAAIqM,IAAI,KAAK,KAAb,EAAoB;IAClB,UAAM9O,eAAe,GAAGgsD,eAAe,CAAChsD,eAAhB,GAAkCgsD,eAAe,CAAChsD,eAAlD,GAAoE,GAA5F;;IACA,UAAIyC,GAAG,IAAI,CAACA,GAAG,CAACvC,QAAJ,CAAaF,eAAb,CAAZ,EAA2C;IACzC,YAAMgB,CAAC,GAAG8Q,eAAe,CAAC9P,WAAD,EAAcS,GAAd,EAAmBE,UAAnB,CAAzB;;IACA,YAAI3B,CAAJ,EAAO;IACLyS,UAAAA,QAAQ,CAAC;IAAEgB,YAAAA,OAAO,EAAEzT;IAAX,WAAD,CAAR;IACA,cAAIgrD,eAAe,CAACtmC,OAApB,EAA6BsmC,eAAe,CAACtmC,OAAhB,CAAwB/c,EAAxB,EAA4BlG,GAA5B;IAC9B;IACF;IACF;IACF,GA7BD;;IA+BA,MAAMmiB,eAAe,GAAG,SAAlBA,eAAkB,CAACjc,EAAD,EAA0ClG,GAA1C,EAAuDqM,IAAvD;IACtB2E,IAAAA,QAAQ,CAAC;IAAE5G,MAAAA,IAAI,EAAE;IAAR,KAAD,CAAR;;IAEA,QAAIiC,IAAI,KAAK,OAAb,EAAsB;IACpB,UAAM9O,eAAe,GAAG+rD,iBAAiB,CAAC/rD,eAAlB,IAAqC,GAA7D;;IACA,UAAIyC,GAAG,IAAI,CAACA,GAAG,CAACvC,QAAJ,CAAaF,eAAb,CAAZ,EAA2C;IACzC,YAAMgB,CAAC,GAAG8Q,eAAe,CAAC9P,WAAD,EAAcS,GAAd,EAAmBE,UAAnB,CAAzB;;IACA,YAAI3B,CAAC,IAAI,CAAC2b,KAAK,CAAC3b,CAAC,CAAC4b,OAAF,EAAD,CAAf,EAA8B;IAC5BnJ,UAAAA,QAAQ,CAAC;IAAEa,YAAAA,SAAS,EAAEtT;IAAb,WAAD,CAAR;;IACA,cAAIyT,OAAJ,EAAa;IACL,gBAAA3U,KAA8C0R,WAAW,CAACiD,OAAD,CAAzD;IAAA,gBAAQ8F,KAAK,UAAb;IAAA,gBAAsBC,MAAM,WAA5B;IAAA,gBAAoCC,KAAK,UAAzC;;IACN,gBAAIrI,WAAW,CAACkC,SAAD,EAAY,MAAZ,EAAoBiG,KAApB,EAA2BC,MAA3B,EAAmCC,KAAnC,CAAf,EAA0D;IACxDhH,cAAAA,QAAQ,CAAC;IAAEgB,gBAAAA,OAAO,EAAE1C;IAAX,eAAD,CAAR;IACD;IACF;IACF;IACF;IACF;;IACD,QAAIjD,IAAI,KAAK,KAAb,EAAoB;IAClB,UAAM9O,eAAe,GAAGgsD,eAAe,CAAChsD,eAAhB,GAAkCgsD,eAAe,CAAChsD,eAAlD,GAAoE,GAA5F;;IACA,UAAIyC,GAAG,IAAI,CAACA,GAAG,CAACvC,QAAJ,CAAaF,eAAb,CAAZ,EAA2C;IACzC,YAAMgB,CAAC,GAAG8Q,eAAe,CAAC9P,WAAD,EAAcS,GAAd,EAAmBE,UAAnB,CAAzB;IACA,YAAI3B,CAAC,IAAI,CAAC2b,KAAK,CAAC3b,CAAC,CAAC4b,OAAF,EAAD,CAAf,EAA8BnJ,QAAQ,CAAC;IAAEgB,UAAAA,OAAO,EAAEzT;IAAX,SAAD,CAAR;IAC/B;IACF;IACF,GAzBD;;IA2BA,MAAM2kB,aAAa,GAAG,SAAhBA,aAAgB,CAAChd,EAAD,EAA0ClG,GAA1C,EAAuDqM,IAAvD;IACpB2E,IAAAA,QAAQ,CAAC;IACP+R,MAAAA,IAAI,EAAE;IADC,KAAD,CAAR;IAGA,QAAMK,SAAS,GAAG,IAAlB;;IAEA,QAAI/W,IAAI,KAAK,OAAb,EAAsB;IACZ,UAAAhP,KAA0BisD,iBAAiB,gBAA3C;IAAA,UAAA/rD,eAAe,mBAAG,QAAlB;;IAER,UAAIyC,GAAG,IAAIojB,SAAS,CAAC5hB,IAAV,CAAexB,GAAf,CAAP,IAA8BA,GAAG,CAACvC,QAAJ,CAAaF,eAAb,CAAlC,EAAiE;IAC/DyT,QAAAA,QAAQ,CAAC;IAAEw4C,UAAAA,UAAU,EAAE;IAAd,SAAD,CAAR;IACD,OAFD,MAEO,IAAKxpD,GAAG,IAAI,CAACojB,SAAS,CAAC5hB,IAAV,CAAexB,GAAf,CAAT,IAAiC,CAACA,GAAtC,EAA2C;IAChDgR,QAAAA,QAAQ,CAAC;IAAEw4C,UAAAA,UAAU,EAAE;IAAd,SAAD,CAAR;IACD;;IAED,UAAI,CAACxpD,GAAD,IAAQA,GAAG,CAACvC,QAAJ,CAAaF,eAAb,CAAZ,EAA2CyT,QAAQ,CAAC;IAAEa,QAAAA,SAAS,EAAEvC;IAAb,OAAD,CAAR;IAC5C;;IAED,QAAIjD,IAAI,KAAK,KAAb,EAAoB;IACV,UAAAnH,KAA0BqkD,eAAe,gBAAzC;IAAA,UAAAhsD,eAAe,mBAAG,QAAlB;;IAER,UAAIyC,GAAG,IAAIojB,SAAS,CAAC5hB,IAAV,CAAexB,GAAf,CAAP,IAA8BA,GAAG,CAACvC,QAAJ,CAAaF,eAAb,CAAlC,EAAiE;IAC/DyT,QAAAA,QAAQ,CAAC;IAAEy4C,UAAAA,QAAQ,EAAE;IAAZ,SAAD,CAAR;IACD,OAFD,MAEO,IAAKzpD,GAAG,IAAI,CAACojB,SAAS,CAAC5hB,IAAV,CAAexB,GAAf,CAAT,IAAiC,CAACA,GAAtC,EAA2C;IAChDgR,QAAAA,QAAQ,CAAC;IAAEy4C,UAAAA,QAAQ,EAAE;IAAZ,SAAD,CAAR;IACD;;IAED,UAAI,CAACzpD,GAAD,IAAQA,GAAG,CAACvC,QAAJ,CAAaF,eAAb,CAAZ,EAA2CyT,QAAQ,CAAC;IAAEgB,QAAAA,OAAO,EAAE1C;IAAX,OAAD,CAAR;IAC5C;IACF,GA7BD;;IA+BA,MAAM+T,cAAc,GAAG,SAAjBA,cAAiB,CAAChX,IAAD;IACrB2E,IAAAA,QAAQ,CAAC;IACP+R,MAAAA,IAAI,EAAE;IADC,KAAD,CAAR;;IAGA,QAAI1W,IAAI,KAAK,OAAb,EAAsB;IACpB2E,MAAAA,QAAQ,CAAC;IACPa,QAAAA,SAAS,EAAEvC;IADJ,OAAD,CAAR;IAGAo6C,MAAAA,SAAS,CAAC,KAAD,CAAT;IACD;;IACD,QAAIr9C,IAAI,KAAK,KAAb,EAAoB;IAClB2E,MAAAA,QAAQ,CAAC;IACPgB,QAAAA,OAAO,EAAE1C;IADF,OAAD,CAAR;IAGAo6C,MAAAA,SAAS,CAAC,OAAD,CAAT;IACD;IACF,GAhBD;;IAkBA,MAAMl+C,cAAc,GAAG,SAAjBA,cAAiB,CAACa,IAAD;IACb,QAAAjC,IAAI,GAAK6G,KAAK,KAAd;;IACR,QAAI,CAAC7G,IAAL,EAAW;IACTs/C,MAAAA,SAAS,CAACr9C,IAAD,CAAT;IACD;IACF,GALD;;IAOA,MAAMwX,IAAI,GAAGD,IAAA,CAAiBrkB,WAAjB,CAAb;IACA,MAAMoqD,oBAAoB,GAAGL,iBAAiB,CAAC/rD,eAAlB,IAAqC,GAAlE;IACA,MAAMqsD,kBAAkB,GAAGL,eAAe,CAAChsD,eAAhB,IAAmC,GAA9D;IACA,MAAMssD,cAAc,GAAGP,iBAAiB,CAAC5kD,KAAlB,IAA4B4kD,iBAAiB,CAAC9lC,QAAlB,IAA8BgmC,UAA9B,IAA4CzmC,IAA/F;IACA,MAAM+mC,YAAY,GAAGP,eAAe,CAAC7kD,KAAhB,IAA0B6kD,eAAe,CAAC/lC,QAAhB,IAA4BimC,QAA5B,IAAwC1mC,IAAvF;IACA,MAAMgnC,iBAAiB,GAAGT,iBAAiB,CAAC5lC,OAAlB,KAA8BpU,SAA9B,GAA0C,eAA1C,GAA4Dg6C,iBAAiB,CAAC5lC,OAAxG;IACA,MAAMsmC,eAAe,GAAGT,eAAe,CAAC7lC,OAAhB,KAA4BpU,SAA5B,GAAwC,eAAxC,GAA0Di6C,eAAe,CAAC7lC,OAAlG;IACQ,MAAOumC,UAAU,GAAKX,iBAAiB,MAAvC;IACA,MAAOY,QAAQ,GAAKX,eAAe,MAAnC;;IACR,MAAM5lC,cAAc,GAAG,SAAjBA,cAAiB,CAAC3jB,GAAD;IACrB,WAAO4jB,OAAA,CAAyB1jB,UAAzB,EAAqCF,GAArC,EAA0CT,WAA1C,CAAP;IACD,GAFD;;IAIA,sBACEoD,8BAAA,CAACkvC,GAAD;qBAAe;OAAf,eACElvC,8BAAA,CAAC4f,MAAD;IAAQ1f,IAAAA,IAAI,EAAE;IAAK2f,IAAAA,MAAM,EAAE;IAAMld,IAAAA,SAAS,EAAC;OAA3C,EACG2kD,UAAU,iBACTtnD,8BAAA,CAACgjC,KAAD;IAAOniB,IAAAA,QAAQ,EAAE8lC,iBAAiB,CAAC9lC;IAAU+B,IAAAA,SAAS,EAAE;OAAxD,EACG0kC,UADH,CAFJ,eAMEtnD,8BAAA,CAACmhB,CAAD;IACE3b,IAAAA,IAAI,EAAC;IACL4b,IAAAA,WAAW,EAAExkB;SACT+pD;IACJzlC,IAAAA,IAAI,EAAEA;IACNzjB,IAAAA,KAAK,EACHyR,SAAS,GACLvT,iBAAiB,CAACiB,WAAD,EAAcsS,SAAd,CADZ,GAELkR,IAAI,GACJe,CAAS,CAACE,KAAV,CAAgBC,eAAhB,CAAgCJ,IAAhC,EAAsC8lC,oBAAtC,CADI,GAEJ;IAENh9C,IAAAA,QAAQ,EAAE,kBAAC4O,CAAD,EAAyCvb,GAAzC;IACRmiB,MAAAA,eAAe,CAAC5G,CAAD,EAAIvb,GAAG,IAAI,EAAX,EAAe,OAAf,CAAf;IACD;IACDijB,IAAAA,OAAO,EAAE,iBAAC1H,CAAD,EAA4Cvb,GAA5C;IACPgjB,MAAAA,cAAc,CAACzH,CAAD,EAAIvb,GAAG,IAAI,EAAX,EAAe,OAAf,CAAd;IACD;IACDmjB,IAAAA,MAAM,EAAE,gBAAC5H,CAAD,EAAyCvb,GAAzC;IACNkjB,MAAAA,aAAa,CAAC3H,CAAD,EAAIvb,GAAG,IAAI,EAAX,EAAe,OAAf,CAAb;IACD;IACDsjB,IAAAA,OAAO,EAAE;IAAM,aAAAD,cAAc,CAAC,OAAD,CAAd;IAAuB;IACtC9X,IAAAA,OAAO,EAAE;IAAM,aAAAC,cAAc,CAAC,OAAD,CAAd;IAAuB;IACtC9G,IAAAA,KAAK,EAAEmlD;IACPnmC,IAAAA,OAAO,EAAEmmC,cAAc,GAAGE,iBAAH,GAAuB;IAC9C7pD,IAAAA,UAAU,EAAE,CAACyjB,cAAD;IACZO,IAAAA,gBAAgB,EAAE;QA1BpB,CANF,CADF,eAoCEvhB,8BAAA,CAAC4f,MAAD;IAAQ1f,IAAAA,IAAI,EAAE;IAAK2f,IAAAA,MAAM,EAAE;IAAMld,IAAAA,SAAS,EAAC;OAA3C,EACG4kD,QAAQ,iBACPvnD,8BAAA,CAACgjC,KAAD;IAAOniB,IAAAA,QAAQ,EAAE+lC,eAAe,CAAC/lC;IAAU+B,IAAAA,SAAS,EAAE;OAAtD,EACG2kC,QADH,CAFJ,eAMEvnD,8BAAA,CAACmhB,CAAD;IACE3b,IAAAA,IAAI,EAAC;IACL4b,IAAAA,WAAW,EAAExkB;SACTgqD;IACJ1lC,IAAAA,IAAI,EAAEA;IACNzjB,IAAAA,KAAK,EACH4R,OAAO,GACH1T,iBAAiB,CAACiB,WAAD,EAAcyS,OAAd,CADd,GAEH+Q,IAAI,GACJe,CAAS,CAACE,KAAV,CAAgBC,eAAhB,CAAgCJ,IAAhC,EAAsC+lC,kBAAtC,CADI,GAEJ;IAENj9C,IAAAA,QAAQ,EAAE,kBAAC4O,CAAD,EAAyCvb,GAAzC;IACRmiB,MAAAA,eAAe,CAAC5G,CAAD,EAAIvb,GAAG,IAAI,EAAX,EAAe,KAAf,CAAf;IACD;IACDijB,IAAAA,OAAO,EAAE,iBAAC1H,CAAD,EAA4Cvb,GAA5C;IACPgjB,MAAAA,cAAc,CAACzH,CAAD,EAAIvb,GAAG,IAAI,EAAX,EAAe,KAAf,CAAd;IACD;IACDmjB,IAAAA,MAAM,EAAE,gBAAC5H,CAAD,EAAyCvb,GAAzC;IACNkjB,MAAAA,aAAa,CAAC3H,CAAD,EAAIvb,GAAG,IAAI,EAAX,EAAe,KAAf,CAAb;IACD;IACDsjB,IAAAA,OAAO,EAAE;IAAM,aAAAD,cAAc,CAAC,KAAD,CAAd;IAAqB;IACpC9X,IAAAA,OAAO,EAAE;IAAM,aAAAC,cAAc,CAAC,KAAD,CAAd;IAAqB;IACpC9G,IAAAA,KAAK,EAAEolD;IACPpmC,IAAAA,OAAO,EAAEomC,YAAY,GAAGE,eAAH,GAAqB;IAC1C9pD,IAAAA,UAAU,EAAE,CAACyjB,cAAD;IACZO,IAAAA,gBAAgB,EAAE;QA1BpB,CANF,CApCF,CADF;IA0ED,CAhOM;;ICDA,IAAMimC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACtoD,KAAD;IACxB,MAAAtC,WAAW,GAAgDsC,KAAK,YAAhE;IAAA,MAAaihB,YAAY,GAAkCjhB,KAAK,aAAhE;IAAA,MAA2B3B,UAAU,GAAsB2B,KAAK,WAAhE;IAAA,MAAuCoP,KAAK,GAAepP,KAAK,MAAhE;IAAA,MAA8CmP,QAAQ,GAAKnP,KAAK,SAAhE;IAEA,MAAAkhB,IAAI,GAAqE9R,KAAK,KAA9E;IAAA,MAAMY,SAAS,GAA0DZ,KAAK,UAA9E;IAAA,MAAiBe,OAAO,GAAiDf,KAAK,QAA9E;IAAA,MAA0Bm5C,UAAU,GAAqCn5C,KAAK,WAA9E;IAAA,MAAsCo5C,QAAQ,GAA2Bp5C,KAAK,SAA9E;IAAA,MAAgDu4C,UAAU,GAAev4C,KAAK,WAA9E;IAAA,MAA4Dw4C,QAAQ,GAAKx4C,KAAK,SAA9E;IAER,MAAM4S,IAAI,GAAGD,SAAA,CAAsBrkB,WAAtB,CAAb;IACA,MAAMgkB,SAAS,GAAGT,YAAY,CAACpe,KAAb,IAAuBoe,YAAY,CAACU,QAAb,KAA0BgmC,UAAU,IAAIC,QAAxC,KAAqD1mC,IAA9F;IACA,MAAMU,YAAY,GAAGX,YAAY,CAACY,OAAb,KAAyBpU,SAAzB,GAAqC,eAArC,GAAuDwT,YAAY,CAACY,OAAzF;IACQ,MAAA5X,KAAK,GAAKgX,YAAY,MAAtB;IACA,MAAAzlB,KAA0BylB,YAAY,gBAAtC;IAAA,MAAAvlB,eAAe,mBAAG,QAAlB;IACR,MAAMyiC,YAAY,GAAGlc,CAAS,CAACE,KAAV,CAAgBC,eAAhB,CAAgCJ,IAAhC,EAAsCtmB,eAAtC,EAAuDkC,KAAvD,CAA6D,KAA7D,CAArB;IACA,MAAM6qD,MAAM,GAAGF,UAAU,IAAIpqB,YAAY,CAAC,CAAD,CAAzC;IACA,MAAMuqB,MAAM,GAAGF,QAAQ,IAAIrqB,YAAY,CAAC,CAAD,CAAvC;;IACA,MAAMrc,cAAc,GAAG,SAAjBA,cAAiB,CAAC3jB,GAAD;IACf,QAAA3C,KAAqB2C,GAAG,CAACP,KAAJ,CAAU,KAAV,CAArB;IAAA,QAACykC,QAAQ,QAAT;IAAA,QAAWC,MAAM,QAAjB;;IAEN,WACEvgB,OAAA,CAAyB1jB,UAAzB,EAAqCgkC,QAArC,EAA+C3kC,WAA/C,KACAqkB,OAAA,CAAyB1jB,UAAzB,EAAqCikC,MAArC,EAA6C5kC,WAA7C,CAFF;IAID,GAPD;;IASA,MAAMyjB,cAAc,GAAG,SAAjBA,cAAiB,CAAC9c,EAAD,EAA6ClG,GAA7C;IACb,QAAAijB,OAAO,GAAKH,YAAY,QAAxB;IAER,QAAMpiB,IAAI,GAAGV,GAAG,CAACP,KAAJ,CAAU,KAAV,CAAb;IACA,QAAMykC,QAAQ,GAAGxjC,IAAI,CAAC,CAAD,CAArB;IACA,QAAMyjC,MAAM,GAAGzjC,IAAI,CAAC,CAAD,CAAnB;IAEA,QAAM8pD,IAAI,GAAGn7C,eAAe,CAAC9P,WAAD,EAAc4kC,MAAd,EAAsBjkC,UAAtB,CAA5B;IACA,QAAMuqD,MAAM,GAAGp7C,eAAe,CAAC9P,WAAD,EAAc2kC,QAAd,EAAwBhkC,UAAxB,CAA9B;IAEA8Q,IAAAA,QAAQ,CAAC;IACPa,MAAAA,SAAS,EAAE44C,MADJ;IAEPz4C,MAAAA,OAAO,EAAEw4C,IAFF;IAGPJ,MAAAA,UAAU,EAAElmB,QAHL;IAIPmmB,MAAAA,QAAQ,EAAElmB;IAJH,KAAD,CAAR;IAOA,QAAIlhB,OAAJ,EAAaA,OAAO,CAAC/c,EAAD,EAAKlG,GAAL,CAAP;IACd,GAlBD;;IAoBA,MAAMmiB,eAAe,GAAG,SAAlBA,eAAkB,CAACjc,EAAD,EAA0ClG,GAA1C;IACtB,QAAMU,IAAI,GAAGV,GAAG,CAACP,KAAJ,CAAU,KAAV,CAAb;IACA,QAAMykC,QAAQ,GAAGxjC,IAAI,CAAC,CAAD,CAArB;IACA,QAAMyjC,MAAM,GAAGzjC,IAAI,CAAC,CAAD,CAAnB;;IAEA,QAAI0pD,UAAU,KAAKlmB,QAAf,IAA2BA,QAA3B,IAAuC,CAACA,QAAQ,CAACzmC,QAAT,CAAkBF,eAAlB,CAA5C,EAAgF;IAC9E,UAAMktD,MAAM,GAAGp7C,eAAe,CAAC9P,WAAD,EAAc2kC,QAAd,EAAwBhkC,UAAxB,CAA9B;;IAEA,UAAIuqD,MAAJ,EAAY;IACV,YAAMC,cAAc,GAAGL,QAAQ,IAAI,CAACA,QAAQ,CAAC5sD,QAAT,CAAkBF,eAAlB,CAApC;IAEAyT,QAAAA,QAAQ,CAAC;IACPa,UAAAA,SAAS,EAAE44C,MADJ;IAEPz4C,UAAAA,OAAO,EAAE04C,cAAc,GAAG14C,OAAH,GAAa1C;IAF7B,SAAD,CAAR;;IAKA,YAAI0C,OAAJ,EAAa;IACL,cAAA3U,KAA8C0R,WAAW,CAACiD,OAAD,CAAzD;IAAA,cAAQ8F,KAAK,UAAb;IAAA,cAAsBC,MAAM,WAA5B;IAAA,cAAoCC,KAAK,UAAzC;;IACN,cAAIrI,WAAW,CAACkC,SAAD,EAAY,MAAZ,EAAoBiG,KAApB,EAA2BC,MAA3B,EAAmCC,KAAnC,CAAf,EAA0D;IACxDhH,YAAAA,QAAQ,CAAC;IAAEgB,cAAAA,OAAO,EAAE1C;IAAX,aAAD,CAAR;IACD;IACF;IACF;IACF;;IAED,QAAI+6C,QAAQ,KAAKlmB,MAAb,IAAuBA,MAAvB,IAAiC,CAACA,MAAM,CAAC1mC,QAAP,CAAgBF,eAAhB,CAAtC,EAAwE;IACtE,UAAMitD,IAAI,GAAGn7C,eAAe,CAAC9P,WAAD,EAAc4kC,MAAd,EAAsBjkC,UAAtB,CAA5B;IACA,UAAMyqD,gBAAgB,GAAGP,UAAU,IAAI,CAACA,UAAU,CAAC3sD,QAAX,CAAoBF,eAApB,CAAxC;;IAEA,UAAIitD,IAAJ,EAAU;IACRx5C,QAAAA,QAAQ,CAAC;IACPgB,UAAAA,OAAO,EAAEw4C,IADF;IAEP34C,UAAAA,SAAS,EAAE84C,gBAAgB,GAAG94C,SAAH,GAAevC;IAFnC,SAAD,CAAR;IAID;IACF;;IAED0B,IAAAA,QAAQ,CAAC;IACPo5C,MAAAA,UAAU,EAAElmB,QADL;IAEPmmB,MAAAA,QAAQ,EAAElmB;IAFH,KAAD,CAAR;IAID,GAzCD;;IA2CA,MAAMymB,aAAa,GAAG,SAAhBA,aAAgB,CAACC,UAAD,EAAqBC,UAArB;IACpB,QAAM1nC,SAAS,GAAG,IAAlB;;IAEA,QAAIynC,UAAU,IAAIC,UAAd,IAA4B,CAACD,UAAU,CAACptD,QAAX,CAAoBF,eAApB,CAA7B,IAAqEutD,UAAU,CAACrtD,QAAX,CAAoBF,eAApB,CAAzE,EAA+G;IAC7G,aAAO,IAAP;IACD,KAFD,MAEO,IAAIstD,UAAU,IAAIznC,SAAS,CAAC5hB,IAAV,CAAeqpD,UAAf,CAAd,IAA4CA,UAAU,CAACptD,QAAX,CAAoBF,eAApB,CAAhD,EAAsF;IAC3F,aAAO,IAAP;IACD,KAFM,MAEA,IAAKstD,UAAU,IAAI,CAACznC,SAAS,CAAC5hB,IAAV,CAAeqpD,UAAf,CAAhB,IAA+C,CAACA,UAApD,EAAgE;IACrE,aAAO,KAAP;IACD;;IAED,WAAO,IAAP;IACD,GAZD;;IAcA,MAAM3nC,aAAa,GAAG,SAAhBA,aAAgB,CAAChd,EAAD,EAA0ClG,GAA1C;IACpBgR,IAAAA,QAAQ,CAAC;IACP+R,MAAAA,IAAI,EAAE;IADC,KAAD,CAAR;IAIA,QAAMriB,IAAI,GAAGV,GAAG,CAACP,KAAJ,CAAU,KAAV,CAAb;IACA,QAAMykC,QAAQ,GAAGxjC,IAAI,CAAC,CAAD,CAArB;IACA,QAAMyjC,MAAM,GAAGzjC,IAAI,CAAC,CAAD,CAAnB;IAEA,QAAMqqD,QAAQ,GAAGH,aAAa,CAAC1mB,QAAD,EAAWC,MAAX,CAA9B;IACA,QAAM6mB,MAAM,GAAGJ,aAAa,CAACzmB,MAAD,EAASD,QAAT,CAA5B;;IAEA,QAAI6mB,QAAQ,KAAK,IAAb,IAAqBC,MAAM,KAAK,IAApC,EAA0C;IACxCh6C,MAAAA,QAAQ,CAAC;IAAEw4C,QAAAA,UAAU,EAAEuB,QAAd;IAAwBtB,QAAAA,QAAQ,EAAEuB;IAAlC,OAAD,CAAR;IACD;;IAED,QAAI,CAAC9mB,QAAD,IAAaA,QAAQ,CAACzmC,QAAT,CAAkBF,eAAlB,CAAjB,EAAqDyT,QAAQ,CAAC;IAAEa,MAAAA,SAAS,EAAEvC;IAAb,KAAD,CAAR;IACrD,QAAI,CAAC60B,MAAD,IAAWA,MAAM,CAAC1mC,QAAP,CAAgBF,eAAhB,CAAf,EAAiDyT,QAAQ,CAAC;IAAEgB,MAAAA,OAAO,EAAE1C;IAAX,KAAD,CAAR;IAClD,GAlBD;;IAoBA,MAAM+T,cAAc,GAAG,SAAjBA,cAAiB;IACrBrS,IAAAA,QAAQ,CAAC;IACP+R,MAAAA,IAAI,EAAE,IADC;IAEPlR,MAAAA,SAAS,EAAEvC,SAFJ;IAGP0C,MAAAA,OAAO,EAAE1C,SAHF;IAIP6B,MAAAA,OAAO,EAAE7B,SAJF;IAKP8B,MAAAA,QAAQ,EAAE9B;IALH,KAAD,CAAR;IAOD,GARD;;IAUA,sBACE3M,8BAAA,CAACkvC,GAAD;qBAAe;OAAf,eACElvC,8BAAA,CAAC4f,MAAD,MAAA,EACGzW,KAAK,iBACJnJ,8BAAA,CAACgjC,KAAD;IAAOniB,IAAAA,QAAQ,EAAEV,YAAY,CAACU;IAAU+B,IAAAA,SAAS,EAAE;OAAnD,EACGzZ,KADH,CAFJ,eAMEnJ,8BAAA,CAACmhB,CAAD;IACE3b,IAAAA,IAAI,EAAC;IACL4b,IAAAA,WAAW,EAAKxkB,WAAW,QAAX,GAAiBA;SAC7BujB;IACJe,IAAAA,IAAI,EAAEA;IACNzjB,IAAAA,KAAK,EAAE,CAACyR,SAAD,IAAc,CAACG,OAAf,IAA0B,CAAC+Q,IAA3B,GAAkCzT,SAAlC,GAAiDg7C,MAAM,QAAN,GAAYC;IACpE59C,IAAAA,QAAQ,EAAE,kBAAC4O,CAAD,EAAyCvb,GAAzC;IACRmiB,MAAAA,eAAe,CAAC5G,CAAD,EAAIvb,GAAG,IAAI,EAAX,CAAf;IACD;IACDmjB,IAAAA,MAAM,EAAE,gBAAC5H,CAAD,EAAyCvb,GAAzC;IACNkjB,MAAAA,aAAa,CAAC3H,CAAD,EAAIvb,GAAG,IAAI,EAAX,CAAb;IACD;IACDijB,IAAAA,OAAO,EAAE,iBAAC1H,CAAD,EAA4Cvb,GAA5C;IACPgjB,MAAAA,cAAc,CAACzH,CAAD,EAAIvb,GAAG,IAAI,EAAX,CAAd;IACD;IACDsjB,IAAAA,OAAO,EAAED;IACT3e,IAAAA,KAAK,EAAE6e;IACPG,IAAAA,OAAO,EAAEH,SAAS,GAAGE,YAAH,GAAkB;IACpCvjB,IAAAA,UAAU,EAAE,CAACyjB,cAAD;IACZO,IAAAA,gBAAgB,EAAE;QAnBpB,CANF,CADF,CADF;IAgCD,CAjKM;;ICbP,IAAM9R,OAAO,GAAG,SAAVA,OAAU,CAAC1R,IAAD;IACd,MAAMnC,CAAC,GAAG,IAAIC,IAAJ,EAAV;IACA,SAAO,IAAIA,IAAJ,CAASD,CAAC,CAAC6T,OAAF,CAAU1R,IAAV,CAAT,CAAP;IACD,CAHD;;IAKO,IAAMuqD,cAAc,GAAG,SAAjBA,cAAiB;IAC5B,MAAMxpC,OAAO,GAAG,IAAIjjB,IAAJ,EAAhB;IACA,MAAM0sD,WAAW,GAAGzpC,OAAO,CAACvS,WAAR,EAApB;IAEA,SAAOg8C,WAAP;IACD,CALM;IAOA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB;IAC7B,MAAM1pC,OAAO,GAAG,IAAIjjB,IAAJ,EAAhB;IACA,MAAM4sD,YAAY,GAAG3pC,OAAO,CAACtS,QAAR,EAArB;IAEA,SAAOi8C,YAAP;IACD,CALM;IAOA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB;IAC5B,MAAM5pC,OAAO,GAAG,IAAIjjB,IAAJ,EAAhB;IACA,MAAMmS,WAAW,GAAG8Q,OAAO,CAAC7S,OAAR,EAApB;IACA,MAAM08C,UAAU,GAAG7pC,OAAO,CAAC3S,MAAR,EAAnB;IAEA,SAAO;IACL+C,IAAAA,SAAS,EAAEO,OAAO,CAACzB,WAAW,GAAG26C,UAAd,GAA2B,CAA5B,CADb;IAELt5C,IAAAA,OAAO,EAAEI,OAAO,CAACzB,WAAW,GAAG26C,UAAd,GAA2B,CAA5B;IAFX,GAAP;IAID,CATM;IAWA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB;IAC7B,MAAM9pC,OAAO,GAAG,IAAIjjB,IAAJ,EAAhB;IACA,MAAMmS,WAAW,GAAG8Q,OAAO,CAAC7S,OAAR,EAApB;IACA,MAAM08C,UAAU,GAAG7pC,OAAO,CAAC3S,MAAR,EAAnB;IAEA,SAAO;IACL+C,IAAAA,SAAS,EAAEO,OAAO,CAACzB,WAAW,GAAG26C,UAAd,GAA2B,CAA5B,CADb;IAELt5C,IAAAA,OAAO,EAAEI,OAAO,CAACzB,WAAW,GAAG26C,UAAf;IAFX,GAAP;IAID,CATM;IAWA,IAAME,gBAAgB,GAAG,SAAnBA,gBAAmB;IAC9B,MAAM/pC,OAAO,GAAG,IAAIjjB,IAAJ,EAAhB;IACA,MAAM0sD,WAAW,GAAGzpC,OAAO,CAACvS,WAAR,EAApB;IACA,MAAMk8C,YAAY,GAAG3pC,OAAO,CAACtS,QAAR,EAArB;IAEA,SAAO;IACL6C,IAAAA,OAAO,EAAE,IAAIxT,IAAJ,CAAS0sD,WAAT,EAAsBE,YAAtB,EAAoC,CAApC,CADJ;IAELv5C,IAAAA,SAAS,EAAE,IAAIrT,IAAJ,CAAS0sD,WAAW,GAAG,EAAEE,YAAY,GAAG,CAAjB,CAAvB,EAA4C,CAACA,YAAY,GAAG,EAAhB,IAAsB,EAAlE,EAAsE,CAAtE;IAFN,GAAP;IAID,CATM;IAWA,IAAMK,iBAAiB,GAAG,SAApBA,iBAAoB;IAC/B,MAAMhqC,OAAO,GAAG,IAAIjjB,IAAJ,EAAhB;IACA,MAAMmS,WAAW,GAAG8Q,OAAO,CAAC7S,OAAR,EAApB;IAEA,SAAO;IACLiD,IAAAA,SAAS,EAAEO,OAAO,CAACzB,WAAW,GAAG,EAAf,CADb;IAELqB,IAAAA,OAAO,EAAEI,OAAO,CAACzB,WAAD;IAFX,GAAP;IAID,CARM;IAUA,IAAM+6C,cAAc,GAAG,SAAjBA,cAAiB;IAC5B,SAAO;IACL75C,IAAAA,SAAS,EAAE,EADN;IAELG,IAAAA,OAAO,EAAE;IAFJ,GAAP;IAID,CALM;;;IC0D8BnB,EAAAA,kCAAA;;IA+BnC,0BAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IA2GAkP,IAAAA,aAAA,GAAU,UAACc,SAAD,EAAmBG,OAAnB;IACA,UAAAzS,WAAW,GAAKwR,KAAI,CAAClP,KAAL,YAAhB;IAER,UAAMqiC,QAAQ,GAAGryB,SAAS,GAAGvT,iBAAiB,CAACiB,WAAD,EAAcsS,SAAd,CAApB,GAA+C,EAAzE;IACA,UAAMsyB,MAAM,GAAGnyB,OAAO,GAAG1T,iBAAiB,CAACiB,WAAD,EAAcyS,OAAd,CAApB,GAA6C,EAAnE;IAEA,aAAO;IACLo4C,QAAAA,UAAU,EAAElmB,QADP;IAELmmB,QAAAA,QAAQ,EAAElmB;IAFL,OAAP;IAID,KAVD;;IAYApzB,IAAAA,eAAA,GAAY,UAACc,SAAD,EAAmBG,OAAnB;IACV,UAAM25C,OAAO,GAAG,SAAVA,OAAU,CAACjrD,IAAD;IACR,YAAArD,KAAoC0T,KAAI,CAAClP,KAAzC;IAAA,YAAE0R,cAAc,oBAAhB;IAAA,YAAkBC,aAAa,mBAA/B;;IAEA,YAAAtO,KAAiD6J,WAAW,CAACwE,cAAD,CAA5D;IAAA,YAAQ4Q,MAAM,UAAd;IAAA,YAAuBC,OAAO,WAA9B;IAAA,YAAsCC,MAAM,UAA5C;;IAEA,YAAA7f,KAAiDuK,WAAW,CAACyE,aAAD,CAA5D;IAAA,YAAQ8Q,MAAM,UAAd;IAAA,YAAuBC,OAAO,WAA9B;IAAA,YAAsCC,MAAM,UAA5C;;IAEN,eAAO,CAAC9jB,IAAD,GACH,KADG,GAEHiP,WAAW,CAACjP,IAAD,EAAO,MAAP,EAAeyjB,MAAf,EAAuBC,OAAvB,EAAgCC,MAAhC,CAAX,IAAsD1U,WAAW,CAACjP,IAAD,EAAO,MAAP,EAAe4jB,MAAf,EAAuBC,OAAvB,EAAgCC,MAAhC,CAFrE;IAGD,OAVD;;IAYA,UAAIglC,UAAU,GAAGmC,OAAO,CAAC95C,SAAD,CAAxB;IACA,UAAI43C,QAAQ,GAAGkC,OAAO,CAAC35C,OAAD,CAAtB;;IAEM,UAAA3U,KAA8C0R,WAAW,CAACiD,OAAD,CAAzD;IAAA,UAAQ8F,KAAK,UAAb;IAAA,UAAsBC,MAAM,WAA5B;IAAA,UAAoCC,KAAK,UAAzC;;IACN,UAAIrI,WAAW,CAACkC,SAAD,EAAY,MAAZ,EAAoBiG,KAApB,EAA2BC,MAA3B,EAAmCC,KAAnC,CAAf,EAA0D;IACxDwxC,QAAAA,UAAU,GAAG,IAAb;IACAC,QAAAA,QAAQ,GAAG,IAAX;IACD;;IAED,aAAO;IAAED,QAAAA,UAAU,YAAZ;IAAcC,QAAAA,QAAQ;IAAtB,OAAP;IACD,KAvBD;;IAyBA14C,IAAAA,qBAAA,GAAkB;IACR,UAAAQ,UAAU,GAAKR,KAAI,CAAClP,KAAL,WAAf;;IAER,UAAI0P,UAAJ,EAAgB;IACR,YAAAlU,KAAyB0T,KAAI,CAACE,KAA9B;IAAA,YAAEY,SAAS,eAAX;IAAA,YAAaG,OAAO,aAApB;;IAEA,YAAA9M,KAA8C6J,WAAW,CAAC8C,SAAD,CAAzD;IAAA,YAAQ8F,KAAK,UAAb;IAAA,YAAsBC,MAAM,WAA5B;IAAA,YAAoCC,KAAK,UAAzC;;IAEA,YAAArT,KAA8CuK,WAAW,CAACiD,OAAD,CAAzD;IAAA,YAAQ8F,KAAK,UAAb;IAAA,YAAsBC,MAAM,WAA5B;IAAA,YAAoCC,KAAK,UAAzC;;IAEN,YAAI/H,SAAS,SAAb;;IACA,YAAI4B,SAAJ,EAAe;IACb5B,UAAAA,SAAS,GAAG,IAAIzR,IAAJ,CAASqT,SAAT,CAAZ;IACA5B,UAAAA,SAAS,CAACmC,OAAV,CAAkByF,KAAK,GAAGtG,UAA1B;IAEA,iBAAO5B,WAAW,CAACM,SAAD,EAAY,MAAZ,EAAoB6H,KAApB,EAA2BC,MAA3B,EAAmCC,KAAK,GAAG,CAA3C,CAAlB;IACD;;IACD,YAAIhG,OAAJ,EAAa;IACX/B,UAAAA,SAAS,GAAG,IAAIzR,IAAJ,CAASwT,OAAT,CAAZ;IACA/B,UAAAA,SAAS,CAACmC,OAAV,CAAkB4F,KAAK,GAAGzG,UAA1B;IAEA,iBAAO5B,WAAW,CAACM,SAAD,EAAY,MAAZ,EAAoB0H,KAApB,EAA2BC,MAA3B,EAAmCC,KAAK,GAAG,CAA3C,CAAlB;IACD;IACF;;IACD,aAAO,KAAP;IACD,KAzBD;;IA2BA9G,IAAAA,0BAAA,GAAuB,UAAC8G,KAAD,EAAeG,KAAf;IACrBjH,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZ+R,QAAAA,IAAI,EAAE,IADM;IAEZlR,QAAAA,SAAS,EAAEgG,KAFC;IAGZ7F,QAAAA,OAAO,EAAEgG,KAHG;IAIZoyC,QAAAA,UAAU,EAAEvyC,KAAK,GAAGvZ,iBAAiB,CAACyS,KAAI,CAAClP,KAAL,CAAWtC,WAAZ,EAAyBsY,KAAzB,CAApB,GAAsD,EAJ3D;IAKZwyC,QAAAA,QAAQ,EAAEryC,KAAK,GAAG1Z,iBAAiB,CAACyS,KAAI,CAAClP,KAAL,CAAWtC,WAAZ,EAAyByY,KAAzB,CAApB,GAAsD;IALzD,OAAd;IAOD,KARD;;IAUAjH,IAAAA,qBAAA,GAAkB,UAAC4T,CAAD,EAAatY,IAAb;IACV,UAAAhP,KAAoE0T,KAAI,CAAClP,KAAzE;IAAA,UAAE+pD,WAAW,iBAAb;IAAA,UAAe9oC,YAAY,kBAA3B;IAAA,UAA6BwmC,iBAAiB,uBAA9C;IAAA,UAAgDC,eAAe,qBAA/D;IAEN,UAAM/7C,QAAQ,GAAGo+C,WAAW,GAAG9oC,YAAY,CAACtV,QAAhB,GAA2B87C,iBAAiB,CAAC97C,QAAlB,IAA8B+7C,eAAe,CAAC/7C,QAArG;IAEA,UAAIA,QAAJ,EAAc;;IAEd,cAAQnB,IAAR;IACE,aAAK,cAAL;IACE0E,UAAAA,KAAI,CAACC,QAAL,CAAc;IAAE5G,YAAAA,IAAI,EAAEua;IAAR,WAAd;;IACA;;IACF,aAAK,SAAL;IACE5T,UAAAA,KAAI,CAACC,QAAL,CAAc;IAAE5G,YAAAA,IAAI,EAAE;IAAR,WAAd;;IACA;IANJ;IAQD,KAfD;;IAlLU,QAAA7K,WAAW,GAAiBsC,KAAK,YAAjC;IAAA,QAAa3B,UAAU,GAAK2B,KAAK,WAAjC;IAER,QAAMgQ,SAAS,GAAG5C,aAAa,CAACpN,KAAK,CAACgQ,SAAP,EAAkBtS,WAAlB,EAA+BW,UAA/B,CAA/B;IACA,QAAM8R,OAAO,GAAG/C,aAAa,CAACpN,KAAK,CAACmQ,OAAP,EAAgBzS,WAAhB,EAA6BW,UAA7B,CAA7B;;IACM,QAAA7C,KAA2B0T,KAAI,CAACnC,OAAL,CAAaiD,SAAb,EAAwBG,OAAxB,CAA3B;IAAA,QAAEo4C,UAAU,gBAAZ;IAAA,QAAcC,QAAQ,cAAtB;;IAEA,QAAAnlD,KAA2B6L,KAAI,CAAC86C,SAAL,CAAeh6C,SAAf,EAA0BG,OAA1B,CAA3B;IAAA,QAAEw3C,UAAU,gBAAZ;IAAA,QAAcC,QAAQ,cAAtB;;IAEN14C,IAAAA,KAAI,CAACE,KAAL,GAAa;IACXY,MAAAA,SAAS,WADE;IAEXG,MAAAA,OAAO,SAFI;IAGXo4C,MAAAA,UAAU,YAHC;IAIXC,MAAAA,QAAQ,UAJG;IAKXb,MAAAA,UAAU,YALC;IAMXC,MAAAA,QAAQ,UANG;IAOX1mC,MAAAA,IAAI,EAAE,KAPK;IAQX3Y,MAAAA,IAAI,EAAEvI,KAAK,CAACuI,IAAN,IAAc,KART;IASX+G,MAAAA,OAAO,EAAEtP,KAAK,CAACsP,OATJ;IAUXC,MAAAA,QAAQ,EAAEvP,KAAK,CAACuP;IAVL,KAAb;IAaAL,IAAAA,KAAI,CAAC4C,YAAL,GAAoB9R,KAAK,CAAC8R,YAAN,KAAuB9R,KAAK,CAAC0jB,SAAN,GAAkB,CAAlB,GAAsB,CAA7C,CAApB;;IACD;;IAEDumC,EAAAA,yBAAA,mBAAA,GAAA,UAAmB9xC,SAAnB,EAAoDC,SAApD;IACE,QAAID,SAAS,CAACnI,SAAV,KAAwB,KAAKhQ,KAAL,CAAWgQ,SAAvC,EAAkD;IAC1C,UAAAxU,KAA8B,KAAKwE,KAAnC;IAAA,UAAEtC,WAAW,iBAAb;IAAA,UAAeW,UAAU,gBAAzB;IAEN,UAAM3B,CAAC,GAAG0Q,aAAa,CAAC,KAAKpN,KAAL,CAAWgQ,SAAZ,EAAuBtS,WAAvB,EAAoCW,UAApC,CAAvB;IACA,UAAMF,GAAG,GAAG1B,iBAAiB,CAACiB,WAAD,EAAchB,CAAd,CAA7B;IACA,WAAKyS,QAAL,CAAc;IACZa,QAAAA,SAAS,EAAEtT,CADC;IAEZ6rD,QAAAA,UAAU,EAAEpqD;IAFA,OAAd;IAID;;IAED,QAAIga,SAAS,CAAChI,OAAV,KAAsB,KAAKnQ,KAAL,CAAWmQ,OAArC,EAA8C;IACtC,UAAA9M,KAA8B,KAAKrD,KAAnC;IAAA,UAAEtC,WAAW,iBAAb;IAAA,UAAeW,UAAU,gBAAzB;IAEN,UAAM3B,CAAC,GAAG0Q,aAAa,CAAC,KAAKpN,KAAL,CAAWmQ,OAAZ,EAAqBzS,WAArB,EAAkCW,UAAlC,CAAvB;IACA,UAAMF,GAAG,GAAG1B,iBAAiB,CAACiB,WAAD,EAAchB,CAAd,CAA7B;IACA,WAAKyS,QAAL,CAAc;IACZgB,QAAAA,OAAO,EAAEzT,CADG;IAEZ8rD,QAAAA,QAAQ,EAAErqD;IAFE,OAAd;IAID;;IAED,QAAIga,SAAS,CAAC5P,IAAV,KAAmB,KAAKvI,KAAL,CAAWuI,IAAlC,EAAwC;IACtC,WAAK4G,QAAL,CAAc;IACZ5G,QAAAA,IAAI,EAAE,KAAKvI,KAAL,CAAWuI,IAAX,IAAmB;IADb,OAAd;IAGD;;IAED,QAAI4P,SAAS,CAAC7I,OAAV,KAAsB,KAAKtP,KAAL,CAAWsP,OAArC,EAA8C;IAC5C,WAAKH,QAAL,CAAc;IACZG,QAAAA,OAAO,EAAE,KAAKtP,KAAL,CAAWsP;IADR,OAAd;IAGD;;IAED,QAAI6I,SAAS,CAAC5I,QAAV,KAAuB,KAAKvP,KAAL,CAAWuP,QAAtC,EAAgD;IAC9C,WAAKJ,QAAL,CAAc;IACZI,QAAAA,QAAQ,EAAE,KAAKvP,KAAL,CAAWuP;IADT,OAAd;IAGD;;IAED,QAAI6I,SAAS,CAACpI,SAAV,KAAwB,KAAKZ,KAAL,CAAWY,SAAnC,IAAgDoI,SAAS,CAACjI,OAAV,KAAsB,KAAKf,KAAL,CAAWe,OAArF,EAA8F;IACtF,UAAAxN,KAAkC,KAAK3C,KAAvC;IAAA,UAAEyY,aAAa,mBAAf;IAAA,UAAiBxa,YAAY,kBAA7B;IAEA,UAAA4G,KAAyB,KAAKuK,KAA9B;IAAA,UAAEY,SAAS,eAAX;IAAA,UAAaG,OAAO,aAApB;;IAEA,UAAA9L,KAA2B,KAAK2lD,SAAL,CAAeh6C,SAAf,EAA0BG,OAA1B,CAA3B;IAAA,UAAEw3C,UAAU,gBAAZ;IAAA,UAAcC,QAAQ,cAAtB;;IAEN,WAAKz4C,QAAL,CAAc;IACZw4C,QAAAA,UAAU,YADE;IAEZC,QAAAA,QAAQ;IAFI,OAAd;;IAIA,UAAInvC,aAAJ,EAAmB;IACjB,YAAM5D,YAAY,GAAG,KAAKC,eAAL,EAArB;IAEA,YAAM2zC,MAAM,GAAGhsD,iBAAiB,CAACwB,YAAD,EAAe+R,SAAf,CAAhC;IACA,YAAM04C,MAAM,GAAGjsD,iBAAiB,CAACwB,YAAD,EAAekS,OAAf,CAAhC;;IACA,YAAI,CAAC0E,YAAD,IAAiB,CAAC8yC,UAAlB,IAAgC,CAACC,QAArC,EAA+C;IAC7C,cAAI,KAAK5nD,KAAL,CAAWiX,qBAAf,EAAsC;IACpC,gBAAIjH,SAAS,IAAIG,OAAjB,EAA0B;IACxBsI,cAAAA,aAAa,CAACzI,SAAD,EAAYG,OAAZ,EAAqBs4C,MAArB,EAA6BC,MAA7B,CAAb;IACD;IACF,WAJD,MAIO;IACLjwC,YAAAA,aAAa,CAACzI,SAAD,EAAYG,OAAZ,EAAqBs4C,MAArB,EAA6BC,MAA7B,CAAb;IACD;IACF,SARD,MAQO,IAAI,CAAC,KAAK1oD,KAAL,CAAWiX,qBAAhB,EAAuC;IAC5C,cAAI,CAAC0wC,UAAL,EAAiBlvC,aAAa,CAACzI,SAAD,EAAYvC,SAAZ,EAAuBg7C,MAAvB,EAA+BC,MAA/B,CAAb,CAAjB,KACK,IAAI,CAACd,QAAL,EAAenvC,aAAa,CAAChL,SAAD,EAAY0C,OAAZ,EAAqBs4C,MAArB,EAA6BC,MAA7B,CAAb,CAAf,KACAjwC,aAAa,CAAChL,SAAD,EAAYA,SAAZ,EAAuBg7C,MAAvB,EAA+BC,MAA/B,CAAb;IACN;IACF;;IAED,UAAI,KAAKt5C,KAAL,CAAWY,SAAX,IAAwB,KAAKZ,KAAL,CAAWe,OAAvC,EAAgD;IAC9C,aAAKhB,QAAL,CAAc;IACZ5G,UAAAA,IAAI,EAAE;IADM,SAAd;IAGD;IACF;IACF,GA9ED;;IA2KA0hD,EAAAA,yBAAA,eAAA,GAAA;IACE,QAAMzuD,KAkBF,KAAKwE,KAlBT;IAAA,oBAAA;IAAA,kBAAA;IAAA,kBAAA;IAAA,mBAAA;IAAA,eAAA;IAAA,YAMEtC,WAAW,iBANb;IAAA,uBAAA;IAAA,4BAAA;IAAA,0BAAA;IAAA,YAUEW,UAAU,gBAVZ;IAAA,oBAAA;IAAA,mBAAA;IAAA,YAaEqT,cAAc,oBAbhB;IAAA,QAcEC,aAAa,mBAdf;IAAA,wBAAA;IAAA,YAgBEjC,UAAU,gBAhBZ;IAAA,QAiBK7D,IAAI,cAjBH,YAAA,WAAA,WAAA,YAAA,QAAA,eAAA,gBAAA,qBAAA,mBAAA,cAAA,aAAA,YAAA,kBAAA,iBAAA,iBAAA,cAAA;;IAoBA,QAAAxI,KAA4C,KAAK+L,KAAjD;IAAA,QAAEY,SAAS,eAAX;IAAA,QAAaG,OAAO,aAApB;IAAA,QAAsBb,OAAO,aAA7B;IAAA,QAA+BC,QAAQ,cAAvC;IAEN,wBACEzO,8BAAA,CAACoX,QAAD,eACMrM;IACJiG,MAAAA,YAAY,EAAE,KAAKA;IACnBrC,MAAAA,WAAW,EAAE;IACbO,MAAAA,SAAS,EAAE5C,aAAa,CAAC4C,SAAD,EAAYtS,WAAZ,EAAyBW,UAAzB;IACxB8R,MAAAA,OAAO,EAAE/C,aAAa,CAAC+C,OAAD,EAAUzS,WAAV,EAAuBW,UAAvB;IACtBqT,MAAAA,cAAc,EAAEtE,aAAa,CAACsE,cAAD,EAAiBhU,WAAjB,EAA8BW,UAA9B;IAC7BsT,MAAAA,aAAa,EAAEvE,aAAa,CAACuE,aAAD,EAAgBjU,WAAhB,EAA6BW,UAA7B;IAC5Boa,MAAAA,aAAa,EAAE,KAAKyxC;IACpB56C,MAAAA,OAAO,EAAEA;IACTC,MAAAA,QAAQ,EAAEA;IACVG,MAAAA,UAAU,EAAEA;UAXd,CADF;IAeD,GAtCD;;IAwCAu6C,EAAAA,yBAAA,OAAA,GAAA;;;IACQ,QAAA5mD,KAWF,KAAKrD,KAXH;IAAA,QACJ0jB,SAAS,eADL;IAAA,QAEJ+jC,iBAAiB,uBAFb;IAAA,QAGJC,eAAe,qBAHX;IAAA,QAIJzmC,YAAY,kBAJR;IAAA,QAKJvjB,WAAW,iBALP;IAAA,QAMJyH,QAAQ,cANJ;IAAA,QAOJ9G,UAAU,gBAPN;IAAA,QAQJ0rD,WAAW,iBARP;IAAA,QASJI,YAAY,kBATR;IAAA,QAUJ1nD,QAAQ,cAVJ;IAaE,QAAA8F,IAAI,GAAK,KAAK6G,KAAL,KAAT;IAER,QAAMg7C,gBAAgB,GAAGjnD,8BAAU,WACjC3H,GAAC,kBAAD,GAAqB,MACrBA,GAAC,sBAAoB2uD,aAArB,GAAsCA,gBAFL,EAAnC;;IAKA,QAAIzmC,SAAJ,EAAe;IACb,UAAMzb,OAAO,GAAG8hD,WAAW,gBACzBjpD,8BAAA,CAACwnD,kBAAD;IACE5qD,QAAAA,WAAW,EAAEA;IACbujB,QAAAA,YAAY,EAAEA;IACd5iB,QAAAA,UAAU,EAAEA;IACZ+Q,QAAAA,KAAK,EAAE,KAAKA;IACZD,QAAAA,QAAQ,EAAE,KAAKA,QAAL,CAAcqE,IAAd,CAAmB,IAAnB;WALZ,CADyB,gBASzB1S,8BAAA,CAACkgB,OAAD;IACEtjB,QAAAA,WAAW,EAAEA;IACb+pD,QAAAA,iBAAiB,EAAEA;IACnBC,QAAAA,eAAe,EAAEA;IACjBrpD,QAAAA,UAAU,EAAEA;IACZ+Q,QAAAA,KAAK,EAAE,KAAKA;IACZD,QAAAA,QAAQ,EAAE,KAAKA,QAAL,CAAcqE,IAAd,CAAmB,IAAnB;WANZ,CATF;IAmBA,0BACE1S,8BAAA,CAACkH,OAAD;IACEC,QAAAA,OAAO,EAAEA;IACT7C,QAAAA,YAAY,EAAC;IACb3B,QAAAA,SAAS,EAAE2mD;IACXjlD,QAAAA,QAAQ,EAAEA;IACVoC,QAAAA,YAAY,EAAE;IACdgB,QAAAA,IAAI,EAAEA;IACNob,QAAAA,QAAQ,EAAE,KAAKC;WAPjB,EASGnhB,QATH,EAUG,KAAKsW,cAAL,EAVH,CADF;IAcD;;IAED,WAAO,KAAKA,cAAL,EAAP;IACD,GA1DD;;IA5QOkxC,EAAAA,qBAAA,GAAQ;IACbT,IAAAA,cAAc,gBADD;IAEbE,IAAAA,eAAe,iBAFF;IAGbC,IAAAA,gBAAgB,kBAHH;IAIbC,IAAAA,iBAAiB,mBAJJ;IAKbC,IAAAA,cAAc,gBALD;IAMbT,IAAAA,cAAc,gBAND;IAObE,IAAAA,eAAe;IAPF,GAAR;IASAW,EAAAA,4BAAA,yBACF/xC,QAAQ,CAAC3S;IACZ9C,IAAAA,QAAQ,eAAE3B,8BAAA,0BAAA,MAAA;IACVqpD,IAAAA,YAAY,EAAE;IACdr4C,IAAAA,YAAY,EAAErE;IACdtI,IAAAA,QAAQ,EAAE;IACVzH,IAAAA,WAAW,EAAE;IACbO,IAAAA,YAAY,EAAE;IACdI,IAAAA,UAAU,EAAE,CAAC0jB,MAAD;IACZd,IAAAA,YAAY,EAAE;IACZhX,MAAAA,KAAK,EAAE;IADK;IAGdw9C,IAAAA,iBAAiB,EAAE;IACjBx9C,MAAAA,KAAK,EAAE;IADU;IAGnBy9C,IAAAA,eAAe,EAAE;IACfz9C,MAAAA,KAAK,EAAE;IADQ;QAfZ;IA8TT,wBAAA;IAxUA,EAAqCnJ,gBAAK,CAACkY;;QCrG9BqxC,WAAW,GAAG,SAAdA,WAAc,CAACrqD,KAAD;;;IACjB,MAAAyC,QAAQ,GAA6BzC,KAAK,SAA1C;IAAA,MAAUsqD,WAAW,GAAgBtqD,KAAK,YAA1C;IAAA,MAAuByD,SAAS,GAAKzD,KAAK,UAA1C;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IACA,MAAMuqD,IAAI,GAAG9rD,KAAK,CAACC,OAAN,CAAc+D,QAAd,IAA0BA,QAA1B,GAAqC,CAACA,QAAD,CAAlD;IACA,MAAM+nD,SAAS,GAAGD,IAAI,CAACntD,MAAvB;;IAEM,MAAAiG,KAAyBvC,gBAAK,CAAC8B,QAAN,CAAe5C,KAAK,CAAC+S,MAAN,IAAgB/S,KAAK,CAAC+S,MAAN,GAAey3C,SAA/B,GAA2CxqD,KAAK,CAAC+S,MAAjD,GAA0D,CAAzE,CAAzB;IAAA,MAACA,MAAM,QAAP;IAAA,MAAS03C,YAAY,QAArB;;IAEN3pD,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACdsiD,IAAAA,YAAY,CAACzqD,KAAK,CAAC+S,MAAN,IAAgB/S,KAAK,CAAC+S,MAAN,GAAey3C,SAA/B,GAA2CxqD,KAAK,CAAC+S,MAAjD,GAA0D,CAA3D,CAAZ;IACD,GAFD,EAEG,CAAC/S,KAAK,CAAC+S,MAAP,CAFH;IAIA,MAAMsE,YAAY,GAAGlU,8BAAU,WAE3B3H,GAAC,cAAD,GAAiB,QAFU,GAI7BiI,SAJ6B,CAA/B;;IAOA,MAAMinD,eAAe,GAAG,SAAlBA,eAAkB,CAACl/C,QAAD;IACtBi/C,IAAAA,YAAY,CAACj/C,QAAD,CAAZ;IACA,QAAI8+C,WAAJ,EAAiBA,WAAW,CAAC9+C,QAAD,CAAX;IAClB,GAHD;;IAKA,MAAMm/C,UAAU,GAAGJ,IAAI,CAACpkD,GAAL,CAAS,UAAColC,KAAD,EAAQllC,KAAR;;;IACpB,QAAAhD,KAAsBkoC,KAAK,CAACvrC,KAA5B;IAAA,QAAEiK,KAAK,WAAP;IAAA,QAAS0B,QAAQ,cAAjB;IAEN,QAAMi/C,cAAc,GAAGznD,8BAAU,WAC/B3H,GAAC,MAAD,GAAS,MACTA,GAAC,gBAAD,GAAmBmQ,UACnBnQ,GAAC,cAAD,GAAiB,CAACmQ,QAAD,IAAaoH,MAAM,KAAK1M,SAHV,EAAjC;IAMA,wBAGEvF,8BAAA,MAAA;uBACY;IACV0F,MAAAA,GAAG,EAAEH;IACL5C,MAAAA,SAAS,EAAEmnD;IACXlhD,MAAAA,OAAO,EAAE;IAAM,eAAA,CAACiC,QAAD,IAAa++C,eAAe,CAACrkD,KAAD,CAA5B;IAAmC;SAJpD,EAMG4D,KANH,CAHF;IAYD,GArBkB,CAAnB;IAuBA,sBACEnJ,8BAAA,MAAA;qBAAe;SAA+Bb;IAAWwD,IAAAA,SAAS,EAAE4T;QAApE,eACEvW,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EAAqCknD,UAArC,CADF,eAEE7pD,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;qBAAgC;OAA/C,EACG8mD,IAAI,CAACx3C,MAAD,CADP,CAFF,CADF;IAQD;IAEDs3C,WAAW,CAAChlD,WAAZ,GAA0B,aAA1B;;QCxCawlD,GAAG,GAAG,SAANA,GAAM,CAAC7qD,KAAD;IACT,MAAAyC,QAAQ,GAAKzC,KAAK,SAAlB;IAER,sBAAOc,8BAAA,CAACA,gBAAK,CAACq6C,QAAP,MAAA,EAAiB14C,QAAjB,CAAP;IACD;IAEDooD,GAAG,CAACxlD,WAAJ,GAAkB,KAAlB;;IC+BA,IAAMylD,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACroD,QAAD;IACvB,SAAOhE,KAAK,CAACC,OAAN,CAAc+D,QAAd,IAA0BA,QAA1B,GAAqC,CAACA,QAAD,CAA5C;IACD,CAFD;;IAIA,IAAMsoD,UAAU,GAAG,SAAbA,UAAa,CAACtoD,QAAD;IACjB,MAAMuoD,aAAa,GAAGF,gBAAgB,CAACroD,QAAD,CAAtC;IAEA,MAAM8nD,IAAI,GAAGS,aAAa,CAACrqD,MAAd,CACX,UAACwrB,OAAD;IAAiC,WAAA,OAAOA,OAAO,CAAC3hB,IAAf,KAAwB,UAAxB,IAAsC2hB,OAAO,CAAC3hB,IAAR,CAAa9G,IAAb,KAAsBmnD,GAAG,CAACnnD,IAAhE;IAAoE,GAD1F,CAAb;IAIA,SAAO6mD,IAAP;IACD,CARD;;IAUA,IAAMU,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACxoD,QAAD;IAC5B,MAAMuoD,aAAa,GAAGF,gBAAgB,CAACroD,QAAD,CAAtC;IAEA,MAAMyoD,eAAe,GAAGF,aAAa,CAACrqD,MAAd,CACtB,UAACwrB,OAAD;IAAiC,WAAA,EAAE,OAAOA,OAAO,CAAC3hB,IAAf,KAAwB,UAAxB,IAAsC2hB,OAAO,CAAC3hB,IAAR,CAAa9G,IAAb,KAAsBmnD,GAAG,CAACnnD,IAAlE,CAAA;IAAuE,GADlF,CAAxB;IAIA,SAAOwnD,eAAP;IACD,CARD;;QAUaC,IAAI,GAAG,SAAPA,IAAO,CAACnrD,KAAD;;;IACV,MAAAyC,QAAQ,GAA6DzC,KAAK,SAA1E;IAAA,MAAUorD,aAAa,GAA8CprD,KAAK,cAA1E;IAAA,MAAyBsqD,WAAW,GAAiCtqD,KAAK,YAA1E;IAAA,MAAsCyD,SAAS,GAAsBzD,KAAK,UAA1E;IAAA,MAAiDqrD,eAAe,GAAKrrD,KAAK,gBAA1E;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IACA,MAAMsrD,OAAO,GAAqB,EAAlC;IAEA,MAAMf,IAAI,GAAU9nD,QAAQ,GAAGsoD,UAAU,CAACtoD,QAAD,CAAb,GAA0BzC,KAAK,CAACuqD,IAA5D;IACA,MAAMW,eAAe,GAAGzoD,QAAQ,GAAGwoD,qBAAqB,CAACxoD,QAAD,CAAxB,gBAAqC3B,8BAAA,0BAAA,MAAA,CAArE;IACA,MAAM0pD,SAAS,GAAGD,IAAI,CAACntD,MAAvB;;IAEM,MAAAyH,KAA8B/D,gBAAK,CAAC8B,QAAN,CAClC5C,KAAK,CAACurD,WAAN,IAAqBvrD,KAAK,CAACurD,WAAN,GAAoBf,SAAzC,GAAqDxqD,KAAK,CAACurD,WAA3D,GAAyE,CADvC,CAA9B;IAAA,MAACA,WAAW,QAAZ;IAAA,MAAcd,YAAY,QAA1B;;IAIN3pD,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAInI,KAAK,CAACurD,WAAN,KAAsB99C,SAAtB,IAAmCzN,KAAK,CAACurD,WAAN,GAAoBf,SAA3D,EAAsE;IACpEC,MAAAA,YAAY,CAACzqD,KAAK,CAACurD,WAAP,CAAZ;IACD;IACF,GAJD,EAIG,CAACvrD,KAAK,CAACurD,WAAP,CAJH;IAMA,MAAMl0C,YAAY,GAAGlU,8BAAU,WAE3B3H,GAAC,cAAD,GAAiB,QAFU,GAI7BiI,SAJ6B,CAA/B;IAOA,MAAMgU,WAAW,GAAGtU,8BAAU,WAE1BE,GAAC,qBAAD,GAAwB,MACxBA,GAAC,oCAAD,GAAuC+nD,iBAHb,GAK5B3nD,SAL4B,EAM5B4nD,eAN4B,CAA9B;;IASA,MAAMhQ,aAAa,GAAG,SAAhBA,aAAgB,CAAC1vC,QAAD;;;IACpB,WAAAxI,8BAAU,WACR3H,GAAC,YAAD,GAAe,MACfA,GAAC,sBAAD,GAAyBmQ,YAFjB,EAAV;IAGE,GAJJ;;IAMA,MAAM6/C,iBAAiB,GAAG,SAApBA,iBAAoB;;;IACxB,QAAIC,SAAJ;IACA,QAAIC,cAAJ;;IAEA,QAAInB,IAAI,IAAIA,IAAI,CAACntD,MAAb,IAAuBmtD,IAAI,CAACgB,WAAD,CAA3B,IAA4C,WAAWhB,IAAI,CAACgB,WAAD,CAA/D,EAA8E;IAC5EE,MAAAA,SAAS,GAAGlB,IAAI,CAACgB,WAAD,CAAhB;IACAG,MAAAA,cAAc,SAAGD,SAAS,CAACzrD,+CAAOyD,SAAlC;IACD,KAHD,MAGO;IACLgoD,MAAAA,SAAS,GAAGlB,IAAI,CAACgB,WAAD,CAAhB;IACAG,MAAAA,cAAc,GAAGD,SAAS,IAAIA,SAAS,CAAChoD,SAAxC;IACD;;IAED,WAAOioD,cAAP;IACD,GAbD;;IAeA,MAAMA,cAAc,GAAGF,iBAAiB,EAAxC;IAEA,MAAMG,eAAe,GAAGxoD,8BAAU,WAChCR,GAAC,sBAAD,GAAyB,MACzBA,GAAC,KAAG+oD,eAAJ,GAAuBA,kBAFS,EAAlC;;IAKA,MAAMhB,eAAe,GAAG,SAAlBA,eAAkB,CAACl/C,QAAD,EAAmBogD,UAAnB;;;IACtB,QAAI5rD,KAAK,CAACurD,WAAN,KAAsB99C,SAA1B,EAAqC;IACnCg9C,MAAAA,YAAY,CAACj/C,QAAD,CAAZ;IACA,UAAI,CAACogD,UAAL,EAAiB,MAAAN,OAAO,CAAC9/C,QAAD,CAAP,UAAA,iBAAA,SAAA,MAAmBqgD,MAAnB;IAClB;;IACD,QAAIvB,WAAJ,EAAiBA,WAAW,CAAC9+C,QAAD,CAAX;IAClB,GAND;;IAQA,MAAMsgD,iBAAiB,GAAG,SAApBA,iBAAoB,CAACpuC,KAAD,EAA6BlS,QAA7B;IACxB,QAAIkS,KAAK,CAAClX,GAAN,KAAc,OAAlB,EAA2B;IACzBkkD,MAAAA,eAAe,CAACl/C,QAAD,EAAW,IAAX,CAAf;IACD;;IACD,QAAIkS,KAAK,CAAClX,GAAN,KAAc,WAAd,IAA6BgF,QAAQ,GAAG,CAA5C,EAA+C;IAC7C,UAAMugD,WAAW,GAAGT,OAAO,CAAC9/C,QAAQ,GAAG,CAAZ,CAA3B;IACAugD,MAAAA,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAE/0B,KAAb,EAAA;IACD;;IACD,QAAItZ,KAAK,CAAClX,GAAN,KAAc,YAAd,IAA8BgF,QAAQ,GAAG++C,IAAI,CAACntD,MAAlD,EAA0D;IACxD,UAAM4uD,WAAW,GAAGV,OAAO,CAAC9/C,QAAQ,GAAG,CAAZ,CAA3B;IACAwgD,MAAAA,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEh1B,KAAb,EAAA;IACD;IACF,GAZD;;IAcA,MAAMiN,UAAU,GAAG,SAAbA,UAAa,CAACgoB,GAAD,EAAW5lD,KAAX;;;IACX,QAAAhD,KAAsC4oD,GAAtC;IAAA,QAAEj9B,KAAK,WAAP;IAAA,QAAS1oB,IAAI,UAAb;IAAA,QAAeqF,QAAQ,cAAvB;IAAA,QAAyBC,QAAQ,cAAjC;;IAEN,QAAIojB,KAAK,KAAKvhB,SAAd,EAAyB;IACvB,0BACE3M,8BAAA,CAACwvC,KAAD;yBACY;IACV7sC,QAAAA,SAAS,EAAE43C,aAAa,CAAC1vC,QAAD;IACxB1K,QAAAA,UAAU,EAAEsqD,WAAW,KAAKllD,KAAhB,GAAwB,SAAxB,GAAoC;WAHlD,EAKG2oB,KALH,CADF;IASD;;IAED,QAAMjjB,SAAS,GAAG5I,8BAAU,WAC1B3H,GAAC,eAAD,GAAkB,CAACmQ,QAAD,IAAa4/C,WAAW,KAAKllD,SADrB,EAA5B;;IAIA,QAAIC,IAAJ,EAAU;IACR,UAAMnE,cAAc,GAAGopD,WAAW,KAAKllD,KAAhB,GAAwB,MAAxB,GAAiCsF,QAAQ,GAAG,UAAH,GAAgB,QAAhF;IACA,0BACE7K,8BAAA,CAACsB,IAAD;yBACY;IACVqB,QAAAA,SAAS,EAAE,UAAQsI;IACnBrI,QAAAA,IAAI,EAAE4C;IACNkE,QAAAA,IAAI,EAAEoB;IACN3K,QAAAA,UAAU,EAAEkB;WALd,CADF;IASD;;IACD,WAAO,IAAP;IACD,GAhCD;;IAkCA,MAAM+pD,iBAAiB,GAAG,SAApBA,iBAAoB,CAACD,GAAD,EAAW5lD,KAAX,EAA0B8lD,SAA1B;IAClB,QAAA3wD,KAAsBywD,GAAtB;IAAA,QAAEtgD,QAAQ,cAAV;IAAA,QAAY1B,KAAK,WAAjB;IACN,QAAM9H,cAAc,GAAGopD,WAAW,KAAKllD,KAAhB,GAAwB,MAAxB,GAAiCsF,QAAQ,GAAG,UAAH,GAAgB,QAAhF;;IAEA,QAAMygD,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACzgD,QAAD;;;IACvB,aAAAxI,8BAAU,WACR3H,GAAC,6BAAD,GAAgC,MAChCA,GAAC,+BAAD,GAAkC,CAACmQ,QAAD,IAAa4/C,WAAW,KAAKllD,OAC/D7K,GAAC,gCAAD,GAAmC,CAACmQ,QAAD,IAAa4/C,WAAW,KAAKllD,OAChE7K,GAAC,iBAAD,GAAoB,CAACmQ,UACrBnQ,GAAC,eAAD,GAAkB,CAACmQ,QAAD,IAAa4/C,WAAW,KAAKllD,SALvC,EAAV;IAME,KAPJ;;IASA,QAAMgmD,OAAO,GAAG;IAAEpiD,MAAAA,KAAK,EAAEA,KAAT;IAAgBshD,MAAAA,WAAW,EAAEA,WAA7B;IAA0Ce,MAAAA,eAAe,EAAEjmD;IAA3D,KAAhB;;IACA,QAAMkX,cAAc,GAAG,SAAjBA,cAAiB,CAAC7D,CAAD;IACrBA,MAAAA,CAAC,CAAC8D,eAAF;IACA,UAAI2uC,SAAJ,EAAeA,SAAS,CAACE,OAAD,CAAT;IAChB,KAHD;;IAIA,wBACEvrD,8BAAA,CAACsB,IAAD;uBACY;IACVsB,MAAAA,IAAI,EAAC;IACLzC,MAAAA,UAAU,EAAEkB;IACZsB,MAAAA,SAAS,EAAE2oD,gBAAgB,CAACzgD,QAAD;IAC3BjC,MAAAA,OAAO,EAAE,CAACiC,QAAD,GAAY4R,cAAZ,GAA6B9P;IACtCjC,MAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQ;SAN5B,CADF;IAUD,GA5BD;;IA8BA,MAAM4gD,SAAS,GAAG,SAAZA,SAAY,CAACN,GAAD,EAAW5lD,KAAX;;;IACV,QAAAhD,KAAgE4oD,GAAhE;IAAA,QAAEtpD,aAAF;IAAA,QAAEsH,KAAK,mBAAG,OAAV;IAAA,QAAc0B,QAAQ,cAAtB;IAAA,QAAwB6gD,aAAa,mBAArC;IAAA,QAAuC3nD,iBAAvC;IAAA,QAAuCsnD,SAAS,mBAAG,mBAAnD;;IACN,QAAI,OAAOliD,KAAP,KAAiB,QAArB,EAA+B;IAC7B,aAAOA,KAAP;IACD;;IACD,QAAMwiD,cAAc,GAAGlB,WAAW,KAAKllD,KAAhB,GAAwB,MAAxB,GAAiCsF,QAAQ,GAAG,UAAH,GAAgB,QAAhF;IACA,QAAM+gD,YAAY,GAAGvpD,8BAAU,WAC7B3H,GAAC,eAAD,GAAkB,CAACmQ,QAAD,IAAa4/C,WAAW,KAAKllD,SADlB,EAA/B;IAGA,wBACEvF,8BAAA,0BAAA,MAAA,EACGmjC,UAAU,CAACgoB,GAAD,EAAM5lD,KAAN,CADb,eAEEvF,8BAAA,CAACyC,IAAD;uBAAgB;IAA0BtC,MAAAA,UAAU,EAAEwrD;IAAgBhpD,MAAAA,SAAS,EAAEipD;SAAjF,EACGziD,KADH,CAFF,EAKGuiD,aAAa,IAAIN,iBAAiB,CAACD,GAAD,EAAM5lD,KAAN,EAAa8lD,SAAb,CALrC,CADF;IASD,GAlBD;;IAoBA,MAAMQ,UAAU,GAAGpC,IAAI,CAACpkD,GAAL,CAAS,UAAC8lD,GAAD,EAAW5lD,KAAX;;;IAC1B,QAAMumD,cAAc,GAAGnqD,QAAQ,IAAI,WAAWwpD,GAAvB,GAA6BA,GAAG,CAACjsD,KAAjC,GAAyCisD,GAAhE;IACQ,QAAAtgD,QAAQ,GAAKihD,cAAc,SAA3B;IAER,QAAMhC,cAAc,GAAGznD,8BAAU,WAC/B3H,GAAC,MAAD,GAAS,MACTA,GAAC,gBAAD,GAAmBmQ,UACnBnQ,GAAC,cAAD,GAAiB,CAACmQ,QAAD,IAAa4/C,WAAW,KAAKllD,OAC9C7K,GAAC,eAAD,GAAkB,CAACmQ,QAAD,IAAa4/C,WAAW,KAAKllD,OAC/C7K,GAAC,qBAAD,GAAwB,QALO,EAAjC;IAQA,wBAGEsF,8BAAA,MAAA;IACEwK,MAAAA,GAAG,EAAE,aAAC6gB,OAAD;IAAa,eAAAA,OAAO,IAAI,CAACxgB,QAAZ,IAAwB2/C,OAAO,CAAChmC,IAAR,CAAa6G,OAAb,CAAxB;IAA6C;uBACrD;IACV3lB,MAAAA,GAAG,EAAEH;IACL5C,MAAAA,SAAS,EAAEmnD;IACXlhD,MAAAA,OAAO,EAAE;IAAM,eAAA,CAACiC,QAAD,IAAa++C,eAAe,CAACrkD,KAAD,CAA5B;IAAmC;IAClD+T,MAAAA,SAAS,EAAE,mBAACsD,KAAD;IAAgC,eAAAouC,iBAAiB,CAACpuC,KAAD,EAAQrX,KAAR,CAAjB;IAA+B;IAC1EmF,MAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQ;SAP5B,EASG4gD,SAAS,CAACK,cAAD,EAAiBvmD,KAAjB,CATZ,CAHF;IAeD,GA3BkB,CAAnB;IA4BA,sBACEvF,8BAAA,MAAA;qBAAe;SAAwBb;IAAWwD,IAAAA,SAAS,EAAE4T;QAA7D,eACEvW,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEgU;qBAAuB;OAAvC,EACGk1C,UADH,EAEGzB,eAFH,CADF,EAKGzoD,QAAQ,iBACP3B,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEkoD;qBAA2B;OAA3C,EACGpB,IAAI,CAACgB,WAAD,CADP,CANJ,CADF;IAaD;IAEDJ,IAAI,CAAC9lD,WAAL,GAAmB,MAAnB;IACA8lD,IAAI,CAAC5lD,YAAL,GAAoB;IAClB6lD,EAAAA,aAAa,EAAE,IADG;IAElBb,EAAAA,IAAI,EAAE;IAFY,CAApB;;IChTO,IAAMsC,OAAO,GAAG,SAAVA,OAAU,CAACC,IAAD,EAAaC,aAAb;IACrB,MAAID,IAAI,IAAIC,aAAZ,EAA2B;IACzB,QAAMC,kBAAkB,GAAGvuD,KAAK,CAACC,OAAN,CAAcquD,aAAd,IAA+BA,aAA/B,GAA+CA,aAAa,CAACnvD,KAAd,CAAoB,GAApB,CAA1E;IACA,QAAMqvD,UAAQ,GAAGH,IAAI,CAACppD,IAAL,IAAa,EAA9B;IACA,QAAMwpD,UAAQ,GAAG,CAACJ,IAAI,CAACtiD,IAAL,IAAa,EAAd,EAAkBugB,WAAlB,EAAjB;IACA,QAAMoiC,cAAY,GAAGD,UAAQ,CAAC5uC,OAAT,CAAiB,OAAjB,EAA0B,EAA1B,CAArB;IAEA,WAAO0uC,kBAAkB,CAACI,IAAnB,CAAwB,UAAC5iD,IAAD;IAC7B,UAAM6iD,SAAS,GAAG7iD,IAAI,CAACxH,IAAL,GAAY+nB,WAAZ,EAAlB;;IACA,UAAIsiC,SAAS,CAAC3wC,MAAV,CAAiB,CAAjB,MAAwB,GAA5B,EAAiC;IAC/B,eAAOuwC,UAAQ,CAACliC,WAAT,GAAuBuiC,QAAvB,CAAgCD,SAAhC,CAAP;IACD;;IACD,UAAIA,SAAS,CAACC,QAAV,CAAmB,IAAnB,CAAJ,EAA8B;IAC5B,eAAOH,cAAY,KAAKE,SAAS,CAAC/uC,OAAV,CAAkB,OAAlB,EAA2B,EAA3B,CAAxB;IACD;;IACD,aAAO4uC,UAAQ,KAAKG,SAApB;IACD,KATM,CAAP;IAUD;;IACD,SAAO,IAAP;IACD,CAnBM;IAqBA,IAAME,oBAAoB,GAAG,SAAvBA,oBAAuB,CAAC7vC,KAAD;IAClC,MAAI,OAAOA,KAAK,CAAC6vC,oBAAb,KAAsC,UAA1C,EAAsD;IACpD,WAAO7vC,KAAK,CAAC6vC,oBAAN,EAAP;IACD;;IACD,MAAI,OAAO7vC,KAAK,CAAC8vC,YAAb,KAA8B,WAAlC,EAA+C;IAC7C,WAAO9vC,KAAK,CAAC8vC,YAAb;IACD;;IACD,SAAO,KAAP;IACD,CARM;IAUA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAAC/vC,KAAD;IAC5B,MAAI,CAACA,KAAK,CAACgwC,YAAX,EAAyB;IACvB,WAAO,CAAC,CAAChwC,KAAK,CAAC6C,MAAR,IAAkB,CAAC,CAAC7C,KAAK,CAAC6C,MAAN,CAAaotC,KAAxC;IACD;;IAED,SAAOlvD,KAAK,CAACmvD,SAAN,CAAgBR,IAAhB,CAAqBS,IAArB,CACLnwC,KAAK,CAACgwC,YAAN,CAAmBI,KADd,EAEL,UAACtjD,IAAD;IAAU,WAAAA,IAAI,KAAK,OAAT,IAAoBA,IAAI,KAAK,wBAA7B;IAAqD,GAF1D,CAAP;IAID,CATM;IAeA,IAAMujD,kBAAkB,GAAG,SAArBA,kBAAqB,CAACrwC,KAAD;IAChCA,EAAAA,KAAK,CAAC7T,cAAN;IACD,CAFM;IAUA,IAAMmkD,oBAAoB,GAAG,SAAvBA,oBAAuB;IAAC,cAAA;;WAAA,YAAA1vD,uBAAAA;IAAA2vD,IAAAA,OAAA,gBAAA;;;IACnC,SAAO,UAACvwC,KAAD;IAAe,iBAAA;;aAAA,YAAApf,uBAAAA;IAAA4vD,MAAAA,YAAA,gBAAA;;;IACpB,WAAAD,GAAG,CAACb,IAAJ,CAAS,UAACe,EAAD;IACP,UAAI,CAACZ,oBAAoB,CAAC7vC,KAAD,CAArB,IAAgCywC,EAApC,EAAwC;IACtCA,QAAAA,EAAE,MAAF,OAAA,kBAAGzwC,QAAUwwC,KAAb;IACD;;IACD,aAAOX,oBAAoB,CAAC7vC,KAAD,CAA3B;IACD,KALD,CAAA;IAKE,GANJ;IAOD,CARM;IAUA,IAAM0wC,OAAO,GAAG,SAAVA,OAAU,CAACh/C,KAAD,EAAa2iC,MAAb;IACrB,UAAQA,MAAM,CAACvnC,IAAf;IACE,SAAK,OAAL;IACE,mCACK4E;IACHi/C,QAAAA,SAAS,EAAE;YAFb;;IAIF,SAAK,MAAL;IACE,mCACKj/C;IACHi/C,QAAAA,SAAS,EAAE;YAFb;;IAIF,SAAK,YAAL;IACE,mCACKj/C;IACHk/C,QAAAA,kBAAkB,EAAE;YAFtB;;IAIF,SAAK,aAAL;IACE,mCACKl/C;IACHk/C,QAAAA,kBAAkB,EAAE;YAFtB;;IAIF,SAAK,iBAAL;IAEU,UAAAC,YAAY,GAAmBxc,MAAM,aAArC;IAAA,UAAcyc,YAAY,GAAKzc,MAAM,aAArC;IACR,mCACK3iC;IACHo/C,QAAAA,YAAY;IACZD,QAAAA,YAAY;YAHd;;IAKF,SAAK,UAAL;IACE,mCACKn/C;IACH29C,QAAAA,aAAa,EAAEhb,MAAM,CAACgb;IACtB0B,QAAAA,cAAc,EAAE1c,MAAM,CAAC0c;YAHzB;;IAKF,SAAK,OAAL;IACE,mCACKr/C;IACHk/C,QAAAA,kBAAkB,EAAE;IACpBC,QAAAA,YAAY,EAAE;IACdC,QAAAA,YAAY,EAAE;IACdzB,QAAAA,aAAa,EAAE;IACf0B,QAAAA,cAAc,EAAE;YANlB;;IAQF;IACE,aAAOr/C,KAAP;IA7CJ;IA+CD,CAhDM;;ICtEA,IAAMs/C,iBAAiB,GAA8B;IAC1DC,EAAAA,iBAAiB,EAAE,0BADuC;IAE1DC,EAAAA,cAAc,EAAE,mBAF0C;IAG1DC,EAAAA,cAAc,EAAE,mBAH0C;IAI1DC,EAAAA,cAAc,EAAE;IAJ0C,CAArD;;IAOP,IAAMC,SAAS,GAAG,SAAZA,SAAY,CAACxwD,KAAD;IAChB,SAAOA,KAAK,KAAKkP,SAAV,IAAuBlP,KAAK,KAAK,IAAxC;IACD,CAFD;;IAIO,IAAMywD,0BAA0B,GAAG,SAA7BA,0BAA6B,CAACC,MAAD;IACxC,MAAMC,aAAa,GAAGzwD,KAAK,CAACC,OAAN,CAAcuwD,MAAd,KAAyBA,MAAM,CAAC7xD,MAAP,KAAkB,CAA3C,GAA+C6xD,MAAM,CAAC,CAAD,CAArD,GAA2DA,MAAjF;IACA,MAAME,aAAa,GAAG1wD,KAAK,CAACC,OAAN,CAAcwwD,aAAd,IAA+B,YAAUA,aAAa,CAAC5yB,IAAd,CAAmB,IAAnB,CAAzC,GAAsE4yB,aAA5F;IACA,SAAO;IACL1kD,IAAAA,IAAI,EAAE,mBADD;IAELo5B,IAAAA,OAAO,EAAE,uBAAqBurB;IAFzB,GAAP;IAID,CAPM;IASA,IAAMC,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,OAAD;IACrC,SAAO;IACL7kD,IAAAA,IAAI,EAAE,gBADD;IAELo5B,IAAAA,OAAO,EAAE,yBAAuByrB,OAAvB;IAFJ,GAAP;IAID,CALM;IAOA,IAAMC,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,OAAD;IACrC,SAAO;IACL/kD,IAAAA,IAAI,EAAE,gBADD;IAELo5B,IAAAA,OAAO,EAAE,0BAAwB2rB,OAAxB;IAFJ,GAAP;IAID,CALM;IAOA,IAAMC,YAAY,GAAG,SAAfA,YAAe,CAAC1C,IAAD,EAAamC,MAAb;IAC1B,MAAMQ,YAAY,GAAG3C,IAAI,CAACtiD,IAAL,KAAc,wBAAd,IAA0CqiD,OAAO,CAACC,IAAD,EAAOmC,MAAP,CAAtE;IACA,SAAO,CAACQ,YAAD,EAAeA,YAAY,GAAG,IAAH,GAAUT,0BAA0B,CAACC,MAAD,CAA/D,CAAP;IACD,CAHM;IAKA,IAAMS,aAAa,GAAG,SAAhBA,aAAgB,CAAC5C,IAAD,EAAayC,OAAb,EAA8BF,OAA9B;IAC3B,MAAIN,SAAS,CAACjC,IAAI,CAAC9rD,IAAN,CAAb,EAA0B;IACxB,QAAI+tD,SAAS,CAACQ,OAAD,CAAT,IAAsBR,SAAS,CAACM,OAAD,CAAnC,EAA8C;IAC5C,UAAIvC,IAAI,CAAC9rD,IAAL,GAAYquD,OAAhB,EAAyB,OAAO,CAAC,KAAD,EAAQD,uBAAuB,CAACC,OAAD,CAA/B,CAAP;IACzB,UAAIvC,IAAI,CAAC9rD,IAAL,GAAYuuD,OAAhB,EAAyB,OAAO,CAAC,KAAD,EAAQD,uBAAuB,CAACC,OAAD,CAA/B,CAAP;IAC1B,KAHD,MAGO,IAAIR,SAAS,CAACQ,OAAD,CAAT,IAAsBzC,IAAI,CAAC9rD,IAAL,GAAYuuD,OAAtC,EAA+C;IACpD,aAAO,CAAC,KAAD,EAAQD,uBAAuB,CAACC,OAAD,CAA/B,CAAP;IACD,KAFM,MAEA,IAAIR,SAAS,CAACM,OAAD,CAAT,IAAsBvC,IAAI,CAAC9rD,IAAL,GAAYquD,OAAtC,EAA+C;IACpD,aAAO,CAAC,KAAD,EAAQD,uBAAuB,CAACC,OAAD,CAA/B,CAAP;IACD;IACF;;IACD,SAAO,CAAC,IAAD,EAAO,IAAP,CAAP;IACD,CAZM;IAcA,IAAMM,YAAY,GAAG,SAAfA,YAAe,CAACtlD,OAAD;IAClB,MAAAsjD,KAAK,GAAyCtjD,OAAO,MAArD;IAAA,MAAO4kD,MAAM,GAAiC5kD,OAAO,OAArD;IAAA,MAAeklD,OAAO,GAAwBllD,OAAO,QAArD;IAAA,MAAwBglD,OAAO,GAAehlD,OAAO,QAArD;IAAA,MAAiCulD,QAAQ,GAAKvlD,OAAO,SAArD;;IAER,MAAI,CAACulD,QAAD,IAAajC,KAAK,CAACvwD,MAAN,GAAe,CAAhC,EAAmC;IACjC,WAAO,gBAAP;IACD;;IAED,MAAMyyD,SAAS,GAAGlC,KAAK,CAAChvD,KAAN,CAAY,UAACmuD,IAAD;IACrB,QAAAgD,QAAQ,GAAIN,YAAY,CAAC1C,IAAD,EAAOmC,MAAP,CAAZ,EAAA,CAAZ;IACP,WAAO,CAACa,QAAR;IACD,GAHiB,CAAlB;IAKA,MAAMC,SAAS,GAAGpC,KAAK,CAAChvD,KAAN,CAAY,UAACmuD,IAAD;IACrB,QAAAkD,SAAS,GAAIN,aAAa,CAAC5C,IAAD,EAAOyC,OAAP,EAAgBF,OAAhB,CAAb,EAAA,CAAb;IACP,WAAO,CAACW,SAAR;IACD,GAHiB,CAAlB;IAKA,SAAOH,SAAS,GAAG,mBAAH,GAAyBE,SAAS,GAAG,gBAAH,GAAsB,EAAxE;IACD,CAlBM;IAoBA,IAAME,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAC5lD,OAAD;IACtB,MAAAsjD,KAAK,GAAyCtjD,OAAO,MAArD;IAAA,MAAO4kD,MAAM,GAAiC5kD,OAAO,OAArD;IAAA,MAAeklD,OAAO,GAAwBllD,OAAO,QAArD;IAAA,MAAwBglD,OAAO,GAAehlD,OAAO,QAArD;IAAA,MAAiCulD,QAAQ,GAAKvlD,OAAO,SAArD;;IACR,MAAI,CAACulD,QAAD,IAAajC,KAAK,CAACvwD,MAAN,GAAe,CAAhC,EAAmC;IACjC,WAAO,KAAP;IACD;;IAED,SAAOuwD,KAAK,CAAChvD,KAAN,CAAY,UAACmuD,IAAD;IACV,QAAAgD,QAAQ,GAAIN,YAAY,CAAC1C,IAAD,EAAOmC,MAAP,CAAZ,EAAA,CAAZ;IACA,QAAAe,SAAS,GAAIN,aAAa,CAAC5C,IAAD,EAAOyC,OAAP,EAAgBF,OAAhB,CAAb,EAAA,CAAb;IACP,WAAOS,QAAQ,IAAIE,SAAnB;IACD,GAJM,CAAP;IAKD,CAXM;;IC7EA,IAAME,iBAAiB,GAAG,IAAIC,GAAJ,CAAQ,CAEvC,CAAC,KAAD,EAAQ,WAAR,CAFuC,EAGvC,CAAC,KAAD,EAAQ,cAAR,CAHuC,EAIvC,CAAC,MAAD,EAAS,YAAT,CAJuC,EAKvC,CAAC,KAAD,EAAQ,YAAR,CALuC,EAMvC,CAAC,KAAD,EAAQ,WAAR,CANuC,EAOvC,CAAC,KAAD,EAAQ,WAAR,CAPuC,EAQvC,CAAC,KAAD,EAAQ,YAAR,CARuC,EASvC,CAAC,MAAD,EAAS,YAAT,CATuC,EAUvC,CAAC,MAAD,EAAS,YAAT,CAVuC,EAWvC,CAAC,MAAD,EAAS,YAAT,CAXuC,EAYvC,CAAC,MAAD,EAAS,YAAT,CAZuC,EAavC,CAAC,OAAD,EAAU,aAAV,CAbuC,EAcvC,CAAC,KAAD,EAAQ,YAAR,CAduC,EAevC,CAAC,KAAD,EAAQ,eAAR,CAfuC,EAgBvC,CAAC,MAAD,EAAS,YAAT,CAhBuC,EAiBvC,CAAC,KAAD,EAAQ,oBAAR,CAjBuC,EAmBvC,CAAC,KAAD,EAAQ,eAAR,CAnBuC,EAsBvC,CAAC,KAAD,EAAQ,OAAR,CAtBuC,EAuBvC,CAAC,KAAD,EAAQ,OAAR,CAvBuC,EAwBvC,CAAC,KAAD,EAAQ,OAAR,CAxBuC,EAyBvC,CAAC,KAAD,EAAQ,OAAR,CAzBuC,EA0BvC,CAAC,KAAD,EAAQ,OAAR,CA1BuC,EA4BvC,CAAC,KAAD,EAAQ,iBAAR,CA5BuC,EA6BvC,CAAC,KAAD,EAAQ,kBAAR,CA7BuC,EA8BvC,CAAC,KAAD,EAAQ,iBAAR,CA9BuC,EA+BvC,CAAC,KAAD,EAAQ,WAAR,CA/BuC,EAgCvC,CAAC,MAAD,EAAS,YAAT,CAhCuC,EAiCvC,CAAC,KAAD,EAAQ,aAAR,CAjCuC,EAkCvC,CAAC,KAAD,EAAQ,gBAAR,CAlCuC,EAmCvC,CAAC,KAAD,EAAQ,WAAR,CAnCuC,EAoCvC,CAAC,KAAD,EAAQ,iBAAR,CApCuC,EAqCvC,CAAC,MAAD,EAAS,WAAT,CArCuC,EAsCvC,CAAC,KAAD,EAAQ,aAAR,CAtCuC,EAuCvC,CAAC,MAAD,EAAS,YAAT,CAvCuC,EAwCvC,CAAC,IAAD,EAAO,YAAP,CAxCuC,EAyCvC,CAAC,IAAD,EAAO,iBAAP,CAzCuC,EA0CvC,CAAC,KAAD,EAAQ,gBAAR,CA1CuC,EA2CvC,CAAC,KAAD,EAAQ,0BAAR,CA3CuC,EA4CvC,CAAC,IAAD,EAAO,8BAAP,CA5CuC,EA6CvC,CAAC,MAAD,EAAS,kCAAT,CA7CuC,EA8CvC,CAAC,KAAD,EAAQ,gBAAR,CA9CuC,EA+CvC,CAAC,KAAD,EAAQ,gBAAR,CA/CuC,EAgDvC,CAAC,KAAD,EAAQ,aAAR,CAhDuC,EAiDvC,CAAC,KAAD,EAAQ,aAAR,CAjDuC,EAkDvC,CAAC,KAAD,EAAQ,YAAR,CAlDuC,EAmDvC,CAAC,MAAD,EAAS,YAAT,CAnDuC,EAoDvC,CAAC,KAAD,EAAQ,YAAR,CApDuC,EAqDvC,CAAC,KAAD,EAAQ,WAAR,CArDuC,EAsDvC,CAAC,KAAD,EAAQ,YAAR,CAtDuC,EAuDvC,CAAC,KAAD,EAAQ,iBAAR,CAvDuC,EAwDvC,CAAC,KAAD,EAAQ,YAAR,CAxDuC,EAyDvC,CAAC,KAAD,EAAQ,aAAR,CAzDuC,EA0DvC,CAAC,KAAD,EAAQ,iBAAR,CA1DuC,EA2DvC,CAAC,KAAD,EAAQ,aAAR,CA3DuC,EA4DvC,CAAC,KAAD,EAAQ,aAAR,CA5DuC,EA6DvC,CAAC,KAAD,EAAQ,WAAR,CA7DuC,EAgEvC,CAAC,IAAD,EAAO,OAAP,CAhEuC,EAiEvC,CAAC,KAAD,EAAQ,OAAR,CAjEuC,EAkEvC,CAAC,KAAD,EAAQ,OAAR,CAlEuC,EAmEvC,CAAC,MAAD,EAAS,OAAT,CAnEuC,EAoEvC,CAAC,KAAD,EAAQ,OAAR,CApEuC,EAqEvC,CAAC,KAAD,EAAQ,OAAR,CArEuC,EAsEvC,CAAC,KAAD,EAAQ,OAAR,CAtEuC,EAuEvC,CAAC,KAAD,EAAQ,OAAR,CAvEuC,EAwEvC,CAAC,OAAD,EAAU,OAAV,CAxEuC,EAyEvC,CAAC,KAAD,EAAQ,OAAR,CAzEuC,EA0EvC,CAAC,KAAD,EAAQ,OAAR,CA1EuC,EA2EvC,CAAC,KAAD,EAAQ,OAAR,CA3EuC,EA4EvC,CAAC,MAAD,EAAS,OAAT,CA5EuC,EA6EvC,CAAC,KAAD,EAAQ,OAAR,CA7EuC,EA8EvC,CAAC,MAAD,EAAS,OAAT,CA9EuC,EA+EvC,CAAC,KAAD,EAAQ,OAAR,CA/EuC,EAgFvC,CAAC,IAAD,EAAO,OAAP,CAhFuC,EAiFvC,CAAC,MAAD,EAAS,OAAT,CAjFuC,EAmFvC,CAAC,KAAD,EAAQ,YAAR,CAnFuC,EAoFvC,CAAC,KAAD,EAAQ,YAAR,CApFuC,EAqFvC,CAAC,KAAD,EAAQ,aAAR,CArFuC,EAsFvC,CAAC,MAAD,EAAS,cAAT,CAtFuC,EAuFvC,CAAC,KAAD,EAAQ,WAAR,CAvFuC,EAwFvC,CAAC,IAAD,EAAO,aAAP,CAxFuC,EAyFvC,CAAC,MAAD,EAAS,cAAT,CAzFuC,EA0FvC,CAAC,KAAD,EAAQ,WAAR,CA1FuC,EA2FvC,CAAC,KAAD,EAAQ,iBAAR,CA3FuC,EA4FvC,CAAC,KAAD,EAAQ,iBAAR,CA5FuC,EA6FvC,CAAC,KAAD,EAAQ,iBAAR,CA7FuC,EA8FvC,CAAC,KAAD,EAAQ,sBAAR,CA9FuC,EA+FvC,CAAC,KAAD,EAAQ,YAAR,CA/FuC,EAgGvC,CAAC,KAAD,EAAQ,WAAR,CAhGuC,EAiGvC,CAAC,KAAD,EAAQ,WAAR,CAjGuC,EAkGvC,CAAC,MAAD,EAAS,YAAT,CAlGuC,EAmGvC,CAAC,KAAD,EAAQ,aAAR,CAnGuC,EAoGvC,CAAC,KAAD,EAAQ,eAAR,CApGuC,EAqGvC,CAAC,KAAD,EAAQ,aAAR,CArGuC,EAsGvC,CAAC,KAAD,EAAQ,gBAAR,CAtGuC,EAuGvC,CAAC,MAAD,EAAS,YAAT,CAvGuC,EAwGvC,CAAC,MAAD,EAAS,mBAAT,CAxGuC,EAyGvC,CAAC,IAAD,EAAO,sBAAP,CAzGuC,EA0GvC,CAAC,KAAD,EAAQ,8BAAR,CA1GuC,EA2GvC,CAAC,IAAD,EAAO,8BAAP,CA3GuC,EA4GvC,CAAC,KAAD,EAAQ,oCAAR,CA5GuC,EA+GvC,CAAC,KAAD,EAAQ,iBAAR,CA/GuC,EAgHvC,CAAC,KAAD,EAAQ,iBAAR,CAhHuC,EAiHvC,CAAC,KAAD,EAAQ,oBAAR,CAjHuC,EAkHvC,CAAC,MAAD,EAAS,yEAAT,CAlHuC,EAmHvC,CAAC,MAAD,EAAS,mEAAT,CAnHuC,EAoHvC,CAAC,MAAD,EAAS,mEAAT,CApHuC,EAqHvC,CAAC,KAAD,EAAQ,0BAAR,CArHuC,EAsHvC,CAAC,KAAD,EAAQ,yCAAR,CAtHuC,EAuHvC,CAAC,KAAD,EAAQ,mBAAR,CAvHuC,EAwHvC,CAAC,KAAD,EAAQ,yBAAR,CAxHuC,EAyHvC,CAAC,KAAD,EAAQ,gDAAR,CAzHuC,EA0HvC,CAAC,KAAD,EAAQ,UAAR,CA1HuC,EA2HvC,CAAC,KAAD,EAAQ,UAAR,CA3HuC,EA4HvC,CAAC,KAAD,EAAQ,YAAR,CA5HuC,EA6HvC,CAAC,KAAD,EAAQ,2BAAR,CA7HuC,CAAR,CAA1B;IAgIP,IAAMC,eAAe,GAAG,CAAC,WAAD,EAAc,WAAd,CAAxB;aAmBsBC,UAAUC;;;IAC9B,iBAAOC,SAAS,CAACD,GAAD,CAAT,IAAkBA,GAAG,CAAC5C,YAAtB,GAAqC8C,oBAAoB,CAACF,GAAG,CAAC5C,YAAL,EAAmB4C,GAAG,CAAC9lD,IAAvB,CAAzD,GAAwFimD,aAAa,CAACH,GAAD,EAA5G;;;IACD;;IAED,SAASC,SAAT,CAAmBhyD,KAAnB;IACE,SAAO,CAAC,CAACA,KAAK,CAACmvD,YAAf;IACD;;aAEegD,eAAe5D,MAAoB6D;IACjD,MAAM7yD,CAAC,GAAG8yD,YAAY,CAAC9D,IAAD,CAAtB;;IACA,MAAI,OAAOhvD,CAAC,CAAC6yD,IAAT,KAAkB,QAAtB,EAAgC;IACtB,QAAAE,kBAAkB,GAAK/D,IAA0B,mBAAjD;IACRrsD,IAAAA,MAAM,CAACqwD,cAAP,CAAsBhzD,CAAtB,EAAyB,MAAzB,EAAiC;IAC/BS,MAAAA,KAAK,EACH,OAAOoyD,IAAP,KAAgB,QAAhB,GACIA,IADJ,GAEI,OAAOE,kBAAP,KAA8B,QAA9B,IAA0CA,kBAAkB,CAACzzD,MAAnB,GAA4B,CAAtE,GACAyzD,kBADA,GAEA/D,IAAI,CAACppD,IANoB;IAO/BqtD,MAAAA,QAAQ,EAAE,KAPqB;IAQ/BC,MAAAA,YAAY,EAAE,KARiB;IAS/BC,MAAAA,UAAU,EAAE;IATmB,KAAjC;IAWD;;IAED,SAAOnzD,CAAP;IACD;;IAED,SAAS8yD,YAAT,CAAsB9D,IAAtB;IACU,MAAAppD,IAAI,GAAKopD,IAAI,KAAb;IACR,MAAMoE,YAAY,GAAGxtD,IAAI,IAAIA,IAAI,CAACytD,WAAL,CAAiB,GAAjB,MAA0B,CAAC,CAAxD;;IAEA,MAAID,YAAY,IAAI,CAACpE,IAAI,CAACtiD,IAA1B,EAAgC;IAC9B,QAAM4mD,GAAG,GAAG1tD,IAAI,CAAC9F,KAAL,CAAW,GAAX,EAAgByzD,GAAhB,GAAuBtmC,WAAvB,EAAZ;IACA,QAAMvgB,IAAI,GAAG0lD,iBAAiB,CAACoB,GAAlB,CAAsBF,GAAtB,CAAb;;IACA,QAAI5mD,IAAJ,EAAU;IACR/J,MAAAA,MAAM,CAACqwD,cAAP,CAAsBhE,IAAtB,EAA4B,MAA5B,EAAoC;IAClCvuD,QAAAA,KAAK,EAAEiM,IAD2B;IAElCumD,QAAAA,QAAQ,EAAE,KAFwB;IAGlCC,QAAAA,YAAY,EAAE,KAHoB;IAIlCC,QAAAA,UAAU,EAAE;IAJsB,OAApC;IAMD;IACF;;IAED,SAAOnE,IAAP;IACD;;IAED,SAAS2D,aAAT,CAAuBH,GAAvB;IACE,MAAM3C,KAAK,GAAG4D,OAAO,CAACjB,GAAG,CAAC/vC,MAAL,CAAP,GAAuB+vC,GAAG,CAAC/vC,MAAJ,CAAWotC,KAAX,GAAmB6D,QAAQ,CAAelB,GAAG,CAAC/vC,MAAJ,CAAWotC,KAA1B,CAA3B,GAA8D,EAArF,GAA2F,EAAzG;IACA,SAAOA,KAAK,CAACxnD,GAAN,CAAU,UAAC2mD,IAAD;IAAU,WAAA4D,cAAc,CAAC5D,IAAD,CAAd;IAAoB,GAAxC,CAAP;IACD;;IAED,SAASyE,OAAT,CAAiBhzD,KAAjB;IACE,SAAOA,KAAK,KAAK,IAAjB;IACD;;IAED,SAAeiyD,oBAAf,CAAoCpyC,EAApC,EAAsD5T,IAAtD;;;;;;mBACM4T,EAAE,CAACqzC,OAAH,aAAA;IACIA,UAAAA,KAAK,GAAGD,QAAQ,CAAmBpzC,EAAE,CAACqzC,KAAtB,CAAR,CAAqC9wD,MAArC,CAA4C,UAACyF,IAAD;IAAU,mBAAAA,IAAI,CAACsrD,IAAL,KAAc,MAAd;IAAoB,WAA1E,CAAR;;IAEN,cAAIlnD,IAAI,KAAK,MAAb,EAAqB;IACnB,uBAAOinD,MAAP;IACD;;IACa,qBAAM3iC,OAAO,CAAC6iC,GAAR,CAAYF,KAAK,CAACtrD,GAAN,CAAUyrD,cAAV,CAAZ,EAAN;;;IAARjE,UAAAA,KAAK,GAAGnyD,OAAA,EAAR;IACN,qBAAOq2D,cAAc,CAACC,OAAO,CAAenE,KAAf,CAAR,EAArB;;;IAGF,qBAAOkE,cAAc,CAACL,QAAQ,CAAepzC,EAAE,CAACuvC,KAAlB,CAAR,CAAiCxnD,GAAjC,CAAqC,UAAC2mD,IAAD;IAAU,mBAAA4D,cAAc,CAAC5D,IAAD,CAAd;IAAoB,WAAnE,CAAD,EAArB;;;;IACD;;IAED,SAAS+E,cAAT,CAAwBlE,KAAxB;IACE,SAAOA,KAAK,CAAChtD,MAAN,CAAa,UAACmsD,IAAD;IAAU,WAAAsD,eAAe,CAACxjD,OAAhB,CAAwBkgD,IAAI,CAACppD,IAA7B,MAAuC,CAAC,CAAxC;IAAyC,GAAhE,CAAP;IACD;;IAED,SAAS8tD,QAAT,CAAqBC,KAArB;IACE,MAAM9D,KAAK,GAAG,EAAd;;IAGA,OAAK,IAAI5vD,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAG0zD,KAAK,CAACr0D,MAA1B,EAAkCW,CAAC,EAAnC,EAAuC;IACrC,QAAM+uD,IAAI,GAAG2E,KAAK,CAAC1zD,CAAD,CAAlB;IACA4vD,IAAAA,KAAK,CAACroC,IAAN,CAAWwnC,IAAX;IACD;;IAED,SAAOa,KAAP;IACD;;IAED,SAASiE,cAAT,CAAwBxrD,IAAxB;IACE,MAAI,OAAOA,IAAI,CAAC2rD,gBAAZ,KAAiC,UAArC,EAAiD;IAC/C,WAAOC,oBAAoB,CAAC5rD,IAAD,CAA3B;IACD;;IAED,MAAM6rD,KAAK,GAAG7rD,IAAI,CAAC2rD,gBAAL,EAAd;;IAEA,MAAIE,KAAK,IAAIA,KAAK,CAACC,WAAnB,EAAgC;IAC9B,WAAOC,YAAY,CAACF,KAAD,CAAnB;IACD;;IAED,SAAOD,oBAAoB,CAAC5rD,IAAD,CAA3B;IACD;;IAED,SAAS0rD,OAAT,CAAoBL,KAApB;IACE,SAAOA,KAAK,CAACtxD,MAAN,CAAa,UAACC,GAAD,EAAMutD,KAAN;IAAgB,0BAAIvtD,KAAS3B,KAAK,CAACC,OAAN,CAAcivD,KAAd,IAAuBmE,OAAO,CAACnE,KAAD,CAA9B,GAAwC,CAACA,KAAD,EAArD;IAA8D,GAA3F,EAA6F,EAA7F,CAAP;IACD;;IAED,SAASqE,oBAAT,CAA8B5rD,IAA9B;IACE,MAAM0mD,IAAI,GAAG1mD,IAAI,CAACgsD,SAAL,EAAb;;IACA,MAAI,CAACtF,IAAL,EAAW;IACT,WAAOh+B,OAAO,CAACujC,MAAR,CAAkBjsD,IAAI,mBAAtB,CAAP;IACD;;IACD,MAAMksD,GAAG,GAAG5B,cAAc,CAAC5D,IAAD,CAA1B;IACA,SAAOh+B,OAAO,CAACC,OAAR,CAAgBujC,GAAhB,CAAP;IACD;;IAED,SAAeC,SAAf,CAAyBN,KAAzB;;;IACE,iBAAOA,KAAK,CAACC,WAAN,GAAoBC,YAAY,CAACF,KAAD,CAAhC,GAA0CO,aAAa,CAACP,KAAD,EAA9D;;;IACD;;IAED,SAASE,YAAT,CAAsBF,KAAtB;IACE,MAAMQ,MAAM,GAAGR,KAAK,CAACS,YAAN,EAAf;IAEA,SAAO,IAAI5jC,OAAJ,CAAyB,UAACC,OAAD,EAAUsjC,MAAV;IAC9B,QAAM3xD,OAAO,GAA2B,EAAxC;;IAEA,aAASiyD,WAAT;IAAA,sBAAA;;IACEF,MAAAA,MAAM,CAACE,WAAP,CACE,UAAOC,KAAP;;;;;;yBACM,CAACA,KAAK,CAACx1D,QAAP,aAAA;;;;;;IAGc,2BAAM0xB,OAAO,CAAC6iC,GAAR,CAAYjxD,OAAZ,EAAN;;;IAARitD,gBAAAA,KAAK,GAAGnyD,OAAA,EAAR;IACNuzB,gBAAAA,OAAO,CAAC4+B,KAAD,CAAP;;;;;IAEA0E,gBAAAA,MAAM,CAACQ,KAAD,CAAN;;;;;;;IAGIpB,gBAAAA,KAAK,GAAG3iC,OAAO,CAAC6iC,GAAR,CAAYiB,KAAK,CAACzsD,GAAN,CAAUosD,SAAV,CAAZ,CAAR;IACN7xD,gBAAAA,OAAO,CAAC4kB,IAAR,CAAamsC,KAAb;IAGAkB,gBAAAA,WAAW;;;;;;;;IAEd,OAjBH,EAkBE,UAACG,GAAD;IACET,QAAAA,MAAM,CAACS,GAAD,CAAN;IACD,OApBH;IAsBD;;IAEDH,IAAAA,WAAW;IACZ,GA7BM,CAAP;IA8BD;;IAED,SAAeH,aAAf,CAA6BP,KAA7B;;;IACE,iBAAO,IAAInjC,OAAJ,CAA0B,UAACC,OAAD,EAAUsjC,MAAV;IAC/BJ,QAAAA,KAAK,CAACnF,IAAN,CACE,UAACA,IAAD;IACE,cAAMwF,GAAG,GAAG5B,cAAc,CAAC5D,IAAD,EAAOmF,KAAK,CAACc,QAAb,CAA1B;IACAhkC,UAAAA,OAAO,CAACujC,GAAD,CAAP;IACD,SAJH,EAKE,UAACQ,GAAD;IACET,UAAAA,MAAM,CAACS,GAAD,CAAN;IACD,SAPH;IASD,OAVM,EAAP;;;IAWD;;IC/LD,IAAME,YAAY,GAAG;IACnB3E,EAAAA,SAAS,EAAE,KADQ;IAEnBC,EAAAA,kBAAkB,EAAE,KAFD;IAGnBC,EAAAA,YAAY,EAAE,KAHK;IAInB0E,EAAAA,YAAY,EAAE,KAJK;IAKnBC,EAAAA,YAAY,EAAE,KALK;IAMnB1E,EAAAA,YAAY,EAAE,EANK;IAOnBzB,EAAAA,aAAa,EAAE,EAPI;IAQnB0B,EAAAA,cAAc,EAAE;IARG,CAArB;IAWO,IAAM0E,YAAY,GAAG,SAAfA,YAAe,CAACnzD,KAAD;IAExB,MAAAivD,MAAM,GAeJjvD,KAAK,OAfP;IAAA,MACA2L,QAAQ,GAcN3L,KAAK,SAfP;IAAA,MAEAqvD,OAAO,GAaLrvD,KAAK,QAfP;IAAA,MAGAuvD,OAAO,GAYLvvD,KAAK,QAfP;IAAA,MAIA4vD,QAAQ,GAWN5vD,KAAK,SAfP;IAAA,MAKAozD,WAAW,GAUTpzD,KAAK,YAfP;IAAA,MAMAqzD,WAAW,GASTrzD,KAAK,YAfP;IAAA,MAOAszD,UAAU,GAQRtzD,KAAK,WAfP;IAAA,MAQAuzD,MAAM,GAOJvzD,KAAK,OAfP;IAAA,MASAwzD,cAAc,GAMZxzD,KAAK,eAfP;IAAA,MAUAyzD,cAAc,GAKZzzD,KAAK,eAfP;IAAA,MAWA0zD,kBAAkB,GAIhB1zD,KAAK,mBAfP;IAAA,MAYA2zD,iBAAiB,GAGf3zD,KAAK,kBAfP;IAAA,MAaA4zD,qBAAqB,GAEnB5zD,KAAK,sBAfP;IAAA,MAcApB,SAAS,GACPoB,KAAK,UAfP;IAiBF,MAAM6zD,OAAO,GAAGn0C,YAAM,CAAiB,IAAjB,CAAtB;IACA,MAAM+T,QAAQ,GAAG/T,YAAM,CAAmB,IAAnB,CAAvB;;IAEM,MAAAlkB,KAAoBs4D,gBAAU,CAAC1F,OAAD,EAAU4E,YAAV,CAA9B;IAAA,MAAC5jD,KAAK,QAAN;IAAA,MAAQ2kD,QAAQ,QAAhB;;IACE,MAAA1F,SAAS,GAAuCj/C,KAAK,UAArD;IAAA,MAAWk/C,kBAAkB,GAAmBl/C,KAAK,mBAArD;IAAA,MAA+Bo/C,YAAY,GAAKp/C,KAAK,aAArD;IAER,MAAM4kD,cAAc,GAAGzzB,iBAAW,CAAC;IACjC,QAAI9M,QAAQ,CAAC7T,OAAb,EAAsB;IACpBm0C,MAAAA,QAAQ,CAAC;IAAEvpD,QAAAA,IAAI,EAAE;IAAR,OAAD,CAAR;IAEAipB,MAAAA,QAAQ,CAAC7T,OAAT,CAAiBrhB,KAAjB,GAAyB,EAAzB;IAEAk1B,MAAAA,QAAQ,CAAC7T,OAAT,CAAiBwa,KAAjB;IACD;IACF,GARiC,EAQ/B,CAAC25B,QAAD,CAR+B,CAAlC;;IAUA,MAAME,aAAa,GAAG,SAAhBA,aAAgB;IACpB,QAAI3F,kBAAJ,EAAwB;IACtBplD,MAAAA,UAAU,CAAC;IACT,YAAIuqB,QAAQ,CAAC7T,OAAb,EAAsB;IACZ,cAAA+tC,KAAK,GAAKl6B,QAAQ,CAAC7T,OAAT,MAAV;;IAER,cAAI,CAAC+tC,KAAD,IAAU,CAACA,KAAK,CAACvwD,MAArB,EAA6B;IAC3B22D,YAAAA,QAAQ,CAAC;IAAEvpD,cAAAA,IAAI,EAAE;IAAR,aAAD,CAAR;;IAEA,gBAAI,OAAOkpD,kBAAP,KAA8B,UAAlC,EAA8C;IAC5CA,cAAAA,kBAAkB;IACnB;IACF;IACF;IACF,OAZS,EAYP,GAZO,CAAV;IAaD;IACF,GAhBD;;IAiBAvrD,EAAAA,eAAS,CAAC;IACRc,IAAAA,MAAM,CAACygC,gBAAP,CAAwB,OAAxB,EAAiCuqB,aAAjC,EAAgD,KAAhD;IACA,WAAO;IACLhrD,MAAAA,MAAM,CAACihC,mBAAP,CAA2B,OAA3B,EAAoC+pB,aAApC,EAAmD,KAAnD;IACD,KAFD;IAGD,GALQ,EAKN,CAACxgC,QAAD,EAAW66B,kBAAX,EAA+BoF,kBAA/B,CALM,CAAT;IAQA,MAAMQ,WAAW,GAAG3zB,iBAAW,CAC7B,UAAC7iB,KAAD;IACE,QAAI,CAACm2C,OAAO,CAACj0C,OAAT,IAAoB,CAACi0C,OAAO,CAACj0C,OAAR,CAAgBg1B,WAAhB,CAA4Bl3B,KAAK,CAAC6C,MAAlC,CAAzB,EAAoE;IAClE;IACD;;IAED,QAAI7C,KAAK,CAACmsB,OAAN,KAAkB,EAAlB,IAAwBnsB,KAAK,CAACmsB,OAAN,KAAkB,EAA9C,EAAkD;IAChDnsB,MAAAA,KAAK,CAAC7T,cAAN;IACAmqD,MAAAA,cAAc;IACf;IACF,GAV4B,EAW7B,CAACH,OAAD,EAAUpgC,QAAV,CAX6B,CAA/B;IAeA,MAAM0gC,SAAS,GAAG5zB,iBAAW,CAAC;IAC5BwzB,IAAAA,QAAQ,CAAC;IAAEvpD,MAAAA,IAAI,EAAE;IAAR,KAAD,CAAR;IACD,GAF4B,EAE1B,EAF0B,CAA7B;IAIA,MAAM4pD,QAAQ,GAAG7zB,iBAAW,CAAC;IAC3BwzB,IAAAA,QAAQ,CAAC;IAAEvpD,MAAAA,IAAI,EAAE;IAAR,KAAD,CAAR;IACD,GAF2B,EAEzB,EAFyB,CAA5B;IAIA,MAAM6pD,cAAc,GAAG30C,YAAM,CAAgB,EAAhB,CAA7B;;IAEA,MAAM40C,cAAc,GAAG,SAAjBA,cAAiB,CAAC52C,KAAD;IAErB,QAAIA,KAAK,CAAC6C,MAAN,YAAwBg0C,cAAxB,IAA0CV,OAAO,CAACj0C,OAAlD,IAA6Di0C,OAAO,CAACj0C,OAAR,CAAgB0vB,QAAhB,CAAyB5xB,KAAK,CAAC6C,MAA/B,CAAjE,EAAyG;IACvG;IACD;;IACD7C,IAAAA,KAAK,CAAC7T,cAAN;IACAwqD,IAAAA,cAAc,CAACz0C,OAAf,GAAyB,EAAzB;IACD,GAPD;;IASAzX,EAAAA,eAAS,CAAC;IACR,QAAIyrD,qBAAJ,EAA2B;IACzBx4D,MAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,UAA1B,EAAsCqkB,kBAAtC,EAA0D,KAA1D;IACA3yD,MAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,MAA1B,EAAkC4qB,cAAlC,EAAkD,KAAlD;IACD;;IAED,WAAO;IACL,UAAIV,qBAAJ,EAA2B;IACzBx4D,QAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,UAA7B,EAAyC6jB,kBAAzC;IACA3yD,QAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,MAA7B,EAAqCoqB,cAArC;IACD;IACF,KALD;IAMD,GAZQ,EAYN,CAACT,OAAD,EAAUD,qBAAV,CAZM,CAAT;IAcA,MAAMY,aAAa,GAAGj0B,iBAAW,CAC/B,UAAC7iB,KAAD;IACEA,IAAAA,KAAK,CAAC7T,cAAN;IACA6T,IAAAA,KAAK,CAAC+2C,OAAN;IAEAJ,IAAAA,cAAc,CAACz0C,OAAf,kBAA6By0C,cAAc,CAACz0C,UAASlC,KAAK,CAAC6C,QAA3D;;IAEA,QAAIktC,cAAc,CAAC/vC,KAAD,CAAlB,EAA2B;IACzBoR,MAAAA,OAAO,CAACC,OAAR,CAAgB4kC,iBAAiB,CAACj2C,KAAD,CAAjC,EAA0Cqd,IAA1C,CAA+C,UAAC4yB,KAAD;IAC7C,YAAIJ,oBAAoB,CAAC7vC,KAAD,CAAxB,EAAiC;IAC/B;IACD;;IAEDq2C,QAAAA,QAAQ,CAAC;IACPvF,UAAAA,YAAY,EAAEb,KADP;IAEPY,UAAAA,YAAY,EAAE,IAFP;IAGP/jD,UAAAA,IAAI,EAAE;IAHC,SAAD,CAAR;;IAMA,YAAI4oD,WAAJ,EAAiB;IACfA,UAAAA,WAAW,CAAC11C,KAAD,CAAX;IACD;IACF,OAdD;IAeD;IACF,GAxB8B,EAyB/B,CAACi2C,iBAAD,EAAoBP,WAApB,CAzB+B,CAAjC;IA4BA,MAAMsB,YAAY,GAAGn0B,iBAAW,CAC9B,UAAC7iB,KAAD;IACEA,IAAAA,KAAK,CAAC7T,cAAN;IACA6T,IAAAA,KAAK,CAAC+2C,OAAN;;IAEA,QAAI/2C,KAAK,CAACgwC,YAAV,EAAwB;IACtB,UAAI;IACFhwC,QAAAA,KAAK,CAACgwC,YAAN,CAAmBiH,UAAnB,GAAgC,MAAhC;IACD,OAFD,CAEE,SAAA,EAAM;IACT;;IAED,QAAIlH,cAAc,CAAC/vC,KAAD,CAAd,IAAyB41C,UAA7B,EAAyC;IACvCA,MAAAA,UAAU,CAAC51C,KAAD,CAAV;IACD;;IAED,WAAO,KAAP;IACD,GAhB6B,EAiB9B,CAAC41C,UAAD,CAjB8B,CAAhC;IAoBA,MAAMsB,aAAa,GAAGr0B,iBAAW,CAC/B,UAAC7iB,KAAD;IACEA,IAAAA,KAAK,CAAC7T,cAAN;IACA6T,IAAAA,KAAK,CAAC+2C,OAAN;IAEA,QAAMI,OAAO,GAAGR,cAAc,CAACz0C,OAAf,CAAuBjf,MAAvB,CAA8B,UAAC4f,MAAD;IAAY,aAAAszC,OAAO,CAACj0C,OAAR,IAAmBi0C,OAAO,CAACj0C,OAAR,CAAgB0vB,QAAhB,CAAyB/uB,MAAzB,CAAnB;IAAmD,KAA7F,CAAhB;IACA,QAAMu0C,SAAS,GAAGD,OAAO,CAACjoD,OAAR,CAAgB8Q,KAAK,CAAC6C,MAAtB,CAAlB;;IACA,QAAIu0C,SAAS,KAAK,CAAC,CAAnB,EAAsB;IACpBD,MAAAA,OAAO,CAAC53B,MAAR,CAAe63B,SAAf,EAA0B,CAA1B;IACD;;IACDT,IAAAA,cAAc,CAACz0C,OAAf,GAAyBi1C,OAAzB;;IACA,QAAIA,OAAO,CAACz3D,MAAR,GAAiB,CAArB,EAAwB;IACtB;IACD;;IAED22D,IAAAA,QAAQ,CAAC;IACPxF,MAAAA,YAAY,EAAE,KADP;IAEP/jD,MAAAA,IAAI,EAAE,iBAFC;IAGPgkD,MAAAA,YAAY,EAAE;IAHP,KAAD,CAAR;;IAMA,QAAIf,cAAc,CAAC/vC,KAAD,CAAd,IAAyB21C,WAA7B,EAA0C;IACxCA,MAAAA,WAAW,CAAC31C,KAAD,CAAX;IACD;IACF,GAxB8B,EAyB/B,CAACm2C,OAAD,EAAUR,WAAV,CAzB+B,CAAjC;IA4BA,MAAM0B,QAAQ,GAAGx0B,iBAAW,CAC1B,UAAC7iB,KAAD;IACEA,IAAAA,KAAK,CAAC7T,cAAN;IAEA6T,IAAAA,KAAK,CAAC+2C,OAAN;IAEAJ,IAAAA,cAAc,CAACz0C,OAAf,GAAyB,EAAzB;;IAEA,QAAI6tC,cAAc,CAAC/vC,KAAD,CAAlB,EAA2B;IACzBoR,MAAAA,OAAO,CAACC,OAAR,CAAgB4kC,iBAAiB,CAACj2C,KAAD,CAAjC,EAA0Cqd,IAA1C,CAA+C,UAAC4yB,KAAD;IAC7C,YAAIJ,oBAAoB,CAAC7vC,KAAD,CAAxB,EAAiC;IAC/B;IACD;;IAED,YAAMqvC,aAAa,GAAW,EAA9B;IACA,YAAM0B,cAAc,GAGd,EAHN;IAKAd,QAAAA,KAAK,CAAC9vD,OAAN,CAAc,UAACivD,IAAD;IACN,cAAAtxD,KAA0Bg0D,YAAY,CAAC1C,IAAD,EAAOmC,MAAP,CAAtC;IAAA,cAACa,QAAQ,QAAT;IAAA,cAAWkF,WAAW,QAAtB;;IACA,cAAA3xD,KAAyBqsD,aAAa,CAAC5C,IAAD,EAAOyC,OAAP,EAAgBF,OAAhB,CAAtC;IAAA,cAACW,SAAS,QAAV;IAAA,cAAYD,SAAS,QAArB;;IACN,cAAMkF,YAAY,GAAGr2D,SAAS,GAAGA,SAAS,CAACkuD,IAAD,CAAZ,GAAqB,IAAnD;;IAEA,cAAIgD,QAAQ,IAAIE,SAAZ,IAAyB,CAACiF,YAA9B,EAA4C;IAC1ClI,YAAAA,aAAa,CAACznC,IAAd,CAAmBwnC,IAAnB;IACD,WAFD,MAEO;IACL,gBAAIoI,MAAM,GAAG,CAACF,WAAD,EAAcjF,SAAd,CAAb;;IAEA,gBAAIkF,YAAJ,EAAkB;IAChBC,cAAAA,MAAM,GAAGA,MAAM,CAACpvC,MAAP,CAAcmvC,YAAd,CAAT;IACD;;IACD,gBAAME,cAAc,GAAGD,MAAM,CAACv0D,MAAP,CAAc,UAAC+Y,CAAD;IAAO,qBAAAA,CAAA;IAAC,aAAtB,CAAvB;IACA+0C,YAAAA,cAAc,CAACnpC,IAAf,CAAoB;IAAEwnC,cAAAA,IAAI,MAAN;IAAQoI,cAAAA,MAAM,EAAEC;IAAhB,aAApB;IACD;IACF,SAhBD;IAkBApB,QAAAA,QAAQ,CAAC;IACPhH,UAAAA,aAAa,eADN;IAEP0B,UAAAA,cAAc,gBAFP;IAGPjkD,UAAAA,IAAI,EAAE;IAHC,SAAD,CAAR;;IAMA,YAAI+oD,MAAJ,EAAY;IACVA,UAAAA,MAAM,CAAC71C,KAAD,EAAQqvC,aAAR,EAAuB0B,cAAvB,CAAN;IACD;;IAED,YAAIA,cAAc,CAACrxD,MAAf,GAAwB,CAAxB,IAA6Bq2D,cAAjC,EAAiD;IAC/CA,UAAAA,cAAc,CAAC/1C,KAAD,EAAQ+wC,cAAR,CAAd;IACD;;IAED,YAAI1B,aAAa,CAAC3vD,MAAd,GAAuB,CAAvB,IAA4Bo2D,cAAhC,EAAgD;IAC9CA,UAAAA,cAAc,CAAC91C,KAAD,EAAQqvC,aAAR,CAAd;IACD;IACF,OA9CD;IA+CD;;IACDgH,IAAAA,QAAQ,CAAC;IAAEvpD,MAAAA,IAAI,EAAE;IAAR,KAAD,CAAR;IACD,GA1DyB,EA2D1B,CAAColD,QAAD,EAAWX,MAAX,EAAmBM,OAAnB,EAA4BF,OAA5B,EAAqCsE,iBAArC,EAAwDJ,MAAxD,EAAgEC,cAAhE,EAAgFC,cAAhF,CA3D0B,CAA5B;;IA8DA,MAAM2B,kBAAkB,GAAG,SAArBA,kBAAqB,CAACjH,EAAD;IACzB,WAAOxiD,QAAQ,GAAG,IAAH,GAAUwiD,EAAzB;IACD,GAFD;;IAIA,MAAMkH,YAAY,GAAGv0B,aAAO,CAC1B;IACE,WAAA,UAACtlC,EAAD;;;IAAC,uBAAA,EAAA;IAAAA,QAAAA,OAAA;;;IACC,UAAAmH,cAAA;IAAA,UAAA2yD,MAAM,mBAAG,UAAT;IAAA,sBAAA;IAAA,oBAAA;IAAA,mBAAA;IAAA,oBAAA;IAAA,cAKAC,mBAAmB,yBALnB;IAAA,UAMAC,kBAAkB,wBANlB;IAAA,UAOAC,mBAAmB,yBAPnB;IAAA,UAQAC,cAAc,oBARd;IAAA,UASG7pD,IAAI,cAVR,SAAA,aAAA,WAAA,UAAA,WAAA,uBAAA,sBAAA,uBAAA,kBAAA;;IAWe;IACdunD,QAAAA,WAAW,EAAEgC,kBAAkB,CAACpH,oBAAoB,CAACuH,mBAAD,EAAsBf,aAAtB,CAArB;IAC/BlB,QAAAA,UAAU,EAAE8B,kBAAkB,CAACpH,oBAAoB,CAACwH,kBAAD,EAAqBd,YAArB,CAArB;IAC9BrB,QAAAA,WAAW,EAAE+B,kBAAkB,CAACpH,oBAAoB,CAACyH,mBAAD,EAAsBb,aAAtB,CAArB;IAC/BrB,QAAAA,MAAM,EAAE6B,kBAAkB,CAACpH,oBAAoB,CAAC0H,cAAD,EAAiBX,QAAjB,CAArB;gBACzBO,UAASzB,cACPhoD,KANW;IAOd,KAlBF;IAkBE,GApBsB,EAqB1B,CAACgoD,OAAD,EAAUK,WAAV,EAAuBC,SAAvB,EAAkCC,QAAlC,EAA4CI,aAA5C,EAA2DE,YAA3D,EAAyEE,aAAzE,EAAwFG,QAAxF,EAAkGppD,QAAlG,CArB0B,CAA5B;IAwBA,MAAMgqD,mBAAmB,GAAGp1B,iBAAW,CAAC,UAAC7iB,KAAD;IACtCA,IAAAA,KAAK,CAACF,eAAN;IACD,GAFsC,EAEpC,EAFoC,CAAvC;IAIA,MAAMo4C,aAAa,GAAG90B,aAAO,CAC3B;IACE,WAAA,UAACtlC,EAAD;;;IAAC,uBAAA,EAAA;IAAAA,QAAAA,OAAA;;;IAAE,UAAAmH,cAAA;IAAA,UAAA2yD,MAAM,mBAAG,UAAT;IAAA,UAAgBxqD,QAAQ,cAAxB;IAAA,UAA0BpB,OAAO,aAAjC;IAAA,UAAsCmC,IAAI,cAA5C,SAAA,YAAA,WAAA,EAAE;;IACD,UAAMgqD,UAAU;IACd5G,QAAAA,MAAM;IACNW,QAAAA,QAAQ;IACRplD,QAAAA,IAAI,EAAE;IACN1E,QAAAA,KAAK,EAAE;IAAEgwD,UAAAA,OAAO,EAAE;IAAX;IACPhrD,QAAAA,QAAQ,EAAEsqD,kBAAkB,CAACpH,oBAAoB,CAACljD,QAAD,EAAWiqD,QAAX,CAArB;IAC5BrrD,QAAAA,OAAO,EAAE0rD,kBAAkB,CAACpH,oBAAoB,CAACtkD,OAAD,EAAUisD,mBAAV,CAArB;IAC3Bt9B,QAAAA,YAAY,EAAE;IACd7sB,QAAAA,QAAQ,EAAE,CAAC;aACXnI,GAACiyD,OAAD,GAAU7hC,YATI,CAAhB;IAYA,mCACKoiC,aACAhqD,KAFL;IAID,KAjBD;IAiBC,GAnBwB,EAoB3B,CAAC4nB,QAAD,EAAWw7B,MAAX,EAAmBW,QAAnB,EAA6BmF,QAA7B,EAAuCppD,QAAvC,CApB2B,CAA7B;IAuBA,MAAMoqD,SAAS,GAAGvH,YAAY,CAACpxD,MAA/B;IACA,MAAM61D,YAAY,GAAG8C,SAAS,GAAG,CAAZ,IAAiB9F,gBAAgB,CAAC;IAAEhB,IAAAA,MAAM,QAAR;IAAUM,IAAAA,OAAO,SAAjB;IAAmBF,IAAAA,OAAO,SAA1B;IAA4BO,IAAAA,QAAQ,UAApC;IAAsCjC,IAAAA,KAAK,EAAEa;IAA7C,GAAD,CAAtD;IACA,MAAM0E,YAAY,GAAG6C,SAAS,GAAG,CAAZ,IAAiB,CAAC9C,YAAvC;IACA,MAAM+C,SAAS,GAAG9C,YAAY,GAAGvD,YAAY,CAAC;IAAEV,IAAAA,MAAM,QAAR;IAAUM,IAAAA,OAAO,SAAjB;IAAmBF,IAAAA,OAAO,SAA1B;IAA4BO,IAAAA,QAAQ,UAApC;IAAsCjC,IAAAA,KAAK,EAAEa;IAA7C,GAAD,CAAf,GAA+E,EAA7G;IAEA,+BACKp/C;IACH6jD,IAAAA,YAAY;IACZC,IAAAA,YAAY;IACZmC,IAAAA,YAAY;IACZO,IAAAA,aAAa;IACb/B,IAAAA,OAAO;IACPpgC,IAAAA,QAAQ;IACR+6B,IAAAA,YAAY;IACZwH,IAAAA,SAAS;IACT3H,IAAAA,SAAS,EAAEA,SAAS,IAAI,CAAC1iD;IACzBpD,IAAAA,IAAI,EAAE6sD,kBAAkB,CAACpB,cAAD;QAX1B;IAaD,CA/TM;IAiUPb,YAAY,CAAC9tD,WAAb,GAA2B,cAA3B;IAEA8tD,YAAY,CAAC5tD,YAAb,GAA4B;IAC1BoG,EAAAA,QAAQ,EAAE,KADgB;IAE1BgoD,EAAAA,iBAAiB,EAAEtD,SAFO;IAG1BhB,EAAAA,OAAO,EAAErwB,QAHiB;IAI1BuwB,EAAAA,OAAO,EAAE,CAJiB;IAK1BK,EAAAA,QAAQ,EAAE,IALgB;IAM1BgE,EAAAA,qBAAqB,EAAE,IANG;IAO1Bh1D,EAAAA,SAAS,EAAE;IAAM,WAAA,IAAA;IAAI;IAPK,CAA5B;;ICtbA,IAAMq3D,OAAO,GAAG;IACdljD,EAAAA,MAAM,EACJ,gWAFY;IAGd,aACE,gWAJY;IAKdlQ,EAAAA,KAAK,EACH;IANY,CAAhB;;IASA,IAAMqzD,YAAY,GAAG,SAAfA,YAAe,CAACl2D,KAAD;IACnB,MAAMm2D,SAAS,GAAG;IAChBvyD,IAAAA,MAAM,EAAE,kBADQ;IAEhBC,IAAAA,KAAK,EAAE;IAFS,GAAlB;IAKA,sBACE/C,uCAAA,MAAA;IACEgF,IAAAA,KAAK,EAAEqwD;IACP1yD,IAAAA,SAAS,EAAE,oBAAkBzD,KAAK,CAACwK;IACnCqU,IAAAA,OAAO,EAAC;IACRC,IAAAA,IAAI,EAAC;IACLC,IAAAA,KAAK,EAAC;OALR,eAOEje,uCAAA,OAAA;IACEpE,IAAAA,CAAC,EAAEu5D,OAAO,CAACj2D,KAAK,CAAC0D,IAAP;IACVD,IAAAA,SAAS,EAAEzD,KAAK,CAAC2L,QAAN,GAAiB,yBAAjB,GAA6C,oBAAkB3L,KAAK,CAAC0D;OAFlF,CAPF,CADF;IAcD,CApBD;;ICjBO,IAAM0yD,cAAc,GAAG,SAAjBA,cAAiB,CAACp2D,KAAD;IACpB,MAAAwK,IAAI,GAAKxK,KAAK,KAAd;IAER,sBACEc,8BAAA,CAACA,gBAAK,CAACq6C,QAAP,MAAA,EACG3wC,IAAI,KAAK,OAAT,iBAAoB1J,8BAAA,CAACo1D,YAAD;IAAcxyD,IAAAA,IAAI,EAAC;IAAS8G,IAAAA,IAAI,EAAEA;OAAlC,CADvB,eAEE1J,8BAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAC;IAAOD,IAAAA,IAAI,EAAC;IAAQwC,IAAAA,MAAM,EAAC;OAA5C,wBAAA,CAFF,CADF;IAQD,CAXM;IAaP4yD,cAAc,CAAC/wD,WAAf,GAA6B,gBAA7B;;ICZO,IAAMgxD,aAAa,GAAG,SAAhBA,aAAgB,CAACr2D,KAAD;IACnB,MAAAwK,IAAI,GAAYxK,KAAK,KAArB;IAAA,MAAM6C,KAAK,GAAK7C,KAAK,MAArB;IAER,sBACEc,8BAAA,CAACA,gBAAK,CAACq6C,QAAP,MAAA,EACG3wC,IAAI,KAAK,OAAT,iBAAoB1J,8BAAA,CAACo1D,YAAD;IAAc1rD,IAAAA,IAAI,EAAEA;IAAM9G,IAAAA,IAAI,EAAC;OAA/B,CADvB,eAEE5C,8BAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAC;IAAcD,IAAAA,IAAI,EAAC;IAAQwC,IAAAA,MAAM,EAAC;OAAnD,EACGX,KADH,CAFF,CADF;IAQD,CAXM;IAaPwzD,aAAa,CAAChxD,WAAd,GAA4B,eAA5B;;QCSaixD,QAAQ,GAAG,SAAXA,QAAW,CAACt2D,KAAD;;;IACd,MAAAwK,IAAI,GAAkExK,KAAK,KAA3E;IAAA,MAAMu2D,SAAS,GAAuDv2D,KAAK,UAA3E;IAAA,MAAiByD,SAAS,GAA4CzD,KAAK,UAA3E;IAAA,MAA4B8sC,WAAW,GAA+B9sC,KAAK,YAA3E;IAAA,MAAyCw2D,cAAc,GAAex2D,KAAK,eAA3E;IAAA,MAAyD2L,QAAQ,GAAK3L,KAAK,SAA3E;;IAEF,MAAA2C,KAA+EwwD,YAAY,CAACnzD,KAAD,CAA3F;IAAA,MAAEuI,IAAI,UAAN;IAAA,MAAQ8sD,YAAY,kBAApB;IAAA,MAAsBO,aAAa,mBAAnC;IAAA,MAAqCrH,YAAY,kBAAjD;IAAA,MAAmD2E,YAAY,kBAA/D;IAAA,MAAiE8C,SAAS,eAA1E;;IAEN,MAAM/1D,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMy2D,aAAa,GAAGtzD,8BAAU,WAE5B3H,GAAC,WAAD,GAAc,MACdA,GAAC,eAAagP,KAAd,GAAuBA,MACvBhP,GAAC,qBAAD,GAAwBmQ,UACxBnQ,GAAC,mBAAD,GAAsB+yD,cACtB/yD,GAAC,kBAAD,GAAqB03D,cACrB13D,GAAC,qBAAD,GAAwB,MACxBA,GAAC,8BAAD,GAAiC,CAAC+yD,YAAD,IAAiB/jD,IAAI,KAAK,YAC3DhP,GAAC,6BAAD,GAAgC+yD,YAAY,IAAI,CAAC2E,YAAjB,IAAiC1oD,IAAI,KAAK,YAC1EhP,GAAC,6BAAD,GAAgC,CAAC+yD,YAAD,IAAiB/jD,IAAI,KAAK,YAC1DhP,GAAC,4BAAD,GAA+B+yD,YAAY,IAAI,CAAC2E,YAAjB,IAAiC1oD,IAAI,KAAK,cAX7C,GAa9B/G,SAb8B,CAAhC;IAgBA,MAAMorC,YAAY,GAAG1rC,8BAAU,WAC7BE,GAAC,kBAAD,GAAqB,MACrBA,GAAC,sBAAoBmH,KAArB,GAA8B,QAFD,EAA/B;;IAKA,MAAMksD,cAAc,GAAG,SAAjBA,cAAiB;IACrB,QAAIxD,YAAJ,EAAkB,oBAAOpyD,8BAAA,CAACu1D,aAAD;IAAe7rD,MAAAA,IAAI,EAAEA;IAAM3H,MAAAA,KAAK,EAAE6rD,iBAAiB,CAACsH,SAAD;SAAnD,CAAP;IAElB,QAAIzH,YAAJ,EAAkB,oBAAOztD,8BAAA,CAACs1D,cAAD;IAAgB5rD,MAAAA,IAAI,EAAEA;SAAtB,CAAP;IAElB,QAAMmsD,wBAAwB,GAAGx8C,qBAAqB,CAAC;IACrDzQ,MAAAA,OAAO,EAAEnB,IAD4C;IAErD,oBAAc;IAFuC,KAAD,CAAtD;IAKA,wBACEzH,8BAAA,CAACA,gBAAK,CAACq6C,QAAP,MAAA,EACG3wC,IAAI,KAAK,OAAT,iBAAoB1J,8BAAA,CAACo1D,YAAD;IAAcvqD,MAAAA,QAAQ,EAAEA;IAAUjI,MAAAA,IAAI,EAAC;IAAU8G,MAAAA,IAAI,EAAEA;SAAvD,CADvB,eAEE1J,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAEorC;uBAAwB;SAAxC,eACE/tC,8BAAA,OAAA,MAAA,eACEA,8BAAA,CAACyC,IAAD;IAAMvC,MAAAA,IAAI,EAAC;IAAQwC,MAAAA,MAAM,EAAC;IAASC,MAAAA,SAAS,EAAC;IAAOxC,MAAAA,UAAU,EAAE0K,QAAQ,GAAG,UAAH,GAAgB;SAAxF,2BAAA,CADF,eAIE7K,8BAAA,CAACyC,IAAD;IACEiI,MAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQ;IAC1BlI,MAAAA,SAAS,EAAC;IACVzC,MAAAA,IAAI,EAAC;IACLwC,MAAAA,MAAM,EAAC;IACPvC,MAAAA,UAAU,EAAE0K,QAAQ,GAAG,UAAH,GAAgB;WAChCgrD,yBANN,gBAAA,CAJF,eAcE71D,8BAAA,QAAA,eAAW80D,aAAa,GAAxB,CAdF,CADF,EAiBG9oB,WAAW,iBAAIhsC,8BAAA,CAACyC,IAAD;IAAMtC,MAAAA,UAAU,EAAE0K,QAAQ,GAAG,UAAH,GAAgB;SAA1C,EAAqDmhC,WAArD,CAjBlB,EAkBGypB,SAAS,iBAAIz1D,8BAAA,CAACyC,IAAD;IAAMtC,MAAAA,UAAU,EAAE0K,QAAQ,GAAG,UAAH,GAAgB;SAA1C,EAAqD4qD,SAArD,CAlBhB,EAmBGC,cAAc,iBAAI11D,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;SAAf,EAAuB+yD,cAAvB,CAnBrB,CAFF,CADF;IA0BD,GApCD;;IAsCA,sBACE11D,8BAAA,MAAA,eAASu0D,YAAY,IAAQp1D;IAAWwD,IAAAA,SAAS,EAAEgzD;qBAAyB;QAA5E,EACGC,cAAc,EADjB,CADF;IAKD;IAEDJ,QAAQ,CAACjxD,WAAT,GAAuB,UAAvB;IAEAixD,QAAQ,CAAC/wD,YAAT,yBACK4tD,YAAY,CAAC5tD;IAChBiF,EAAAA,IAAI,EAAE;MAFR;;ICjGO,IAAMosD,kBAAkB,GAAG,SAArBA,kBAAqB,CAAC52D,KAAD;IACxB,MAAA8sC,WAAW,GAAK9sC,KAAK,YAArB;;IAER,MAAI8sC,WAAJ,EAAiB;IACf,wBACEhsC,8BAAA,CAACyC,IAAD;IAAMvC,MAAAA,IAAI,EAAC;IAAQC,MAAAA,UAAU,EAAC;IAASwC,MAAAA,SAAS,EAAC;SAAjD,EACGqpC,WADH,CADF;IAKD;;IAED,SAAO,IAAP;IACD,CAZM;IAcP8pB,kBAAkB,CAACvxD,WAAnB,GAAiC,oBAAjC;;ICYO,IAAMwxD,kBAAkB,GAAG,SAArBA,kBAAqB,CAAC72D,KAAD;;;IACxB,MAAAivD,MAAM,GAA2EjvD,KAAK,OAAtF;IAAA,MAAQ4vD,QAAQ,GAAiE5vD,KAAK,SAAtF;IAAA,MAAkB82D,iBAAiB,GAA8C92D,KAAK,kBAAtF;IAAA,MAAqC2L,QAAQ,GAAoC3L,KAAK,SAAtF;IAAA,MAA+C0D,IAAI,GAA8B1D,KAAK,KAAtF;IAAA,MAAqDyD,SAAS,GAAmBzD,KAAK,UAAtF;IAAA,MAAgEwf,EAAE,GAAexf,KAAK,GAAtF;IAAA,MAAoE8K,SAAQ,GAAK9K,KAAK,SAAtF;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM+2D,uBAAuB,GAAG5zD,8BAAU,WAEtC3H,GAAC,qBAAD,GAAwB,QAFc,GAIxCiI,SAJwC,CAA1C;IAOA,sBACE3C,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAEszD;QAA/B,eACEj2D,8BAAA,CAACyJ,MAAD;IAAQC,IAAAA,IAAI,EAAC;IAASmB,IAAAA,QAAQ,EAAEA;IAAUrF,IAAAA,IAAI,EAAC;OAA/C,EACGwwD,iBADH,CADF,eAIEh2D,8BAAA,QAAA;IACE4C,IAAAA,IAAI,EAAEA;IACN8b,IAAAA,EAAE,EAAEA;qBACM;IACVyvC,IAAAA,MAAM,EAAEA,MAAM,IAAIA,MAAM,CAAC3yB,IAAP,CAAY,IAAZ;IAClBszB,IAAAA,QAAQ,EAAEA;IACVjkD,IAAAA,QAAQ,EAAEA;IACVnB,IAAAA,IAAI,EAAC;IACLgB,IAAAA,QAAQ,EAAE,CAAC;IACX/H,IAAAA,SAAS,EAAC;IACVqH,IAAAA,QAAQ,EAAE,kBAAC4S,KAAD;IACR,UAAMs5C,QAAQ,GAAGt5C,KAAK,CAAC6C,MAAN,CAAaotC,KAAb,GAAqBlvD,KAAK,CAACiU,IAAN,CAAWgL,KAAK,CAAC6C,MAAN,CAAaotC,KAAxB,CAArB,GAAsD,EAAvE;IACA,UAAI7iD,SAAJ,EAAcA,SAAQ,CAACksD,QAAD,EAAWt5C,KAAX,CAAR;IACf;OAbH,CAJF,CADF;IAsBD,CAlCM;IAoCPm5C,kBAAkB,CAACtxD,YAAnB,GAAkC;IAChCuxD,EAAAA,iBAAiB,EAAE,cADa;IAEhCnrD,EAAAA,QAAQ,EAAE,KAFsB;IAGhCikD,EAAAA,QAAQ,EAAE;IAHsB,CAAlC;IAMAiH,kBAAkB,CAACxxD,WAAnB,GAAiC,oBAAjC;;QCxDa4xD,YAAY,GAAG,SAAfA,YAAe,CAACj3D,KAAD;;;IAExB,MAAAivD,MAAM,GAYJjvD,KAAK,OAZP;IAAA,MACA4vD,QAAQ,GAWN5vD,KAAK,SAZP;IAAA,MAEA2L,QAAQ,GAUN3L,KAAK,SAZP;IAAA,MAGAkmC,KAAK,GASHlmC,KAAK,MAZP;IAAA,MAIA82D,iBAAiB,GAQf92D,KAAK,kBAZP;IAAA,MAKAu2D,SAAS,GAOPv2D,KAAK,UAZP;IAAA,MAMA8sC,WAAW,GAMT9sC,KAAK,YAZP;IAAA,MAOAw2D,cAAc,GAKZx2D,KAAK,eAZP;IAAA,MAQAyD,SAAS,GAIPzD,KAAK,UAZP;IAAA,MASAwf,EAAE,GAGAxf,KAAK,GAZP;IAAA,MAUA0D,IAAI,GAEF1D,KAAK,KAZP;IAAA,MAWA8K,QAAQ,GACN9K,KAAK,SAZP;IAcF,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMk3D,iBAAiB,GAAG/zD,8BAAU,WAEhC3H,GAAC,eAAD,GAAkB,QAFc,GAIlCiI,SAJkC,CAApC;IAOA,sBACE3C,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAEyzD;qBAA6B;QAA5D,eACEp2D,8BAAA,CAACyC,IAAD;IAAMC,IAAAA,MAAM,EAAC;OAAb,EAAuB0iC,KAAvB,CADF,eAEEplC,8BAAA,CAAC81D,kBAAD;IAAoB9pB,IAAAA,WAAW,EAAEA;OAAjC,CAFF,eAGEhsC,8BAAA,CAACyC,IAAD;IAAMvC,IAAAA,IAAI,EAAC;IAAQC,IAAAA,UAAU,EAAC;IAASwC,IAAAA,SAAS,EAAE,CAACqpC,WAAD,GAAe,MAAf,GAAwB;OAA1E,EACGypB,SADH,CAHF,EAMGC,cAAc,iBAAI11D,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EAAuB+yD,cAAvB,CANrB,eAOE11D,8BAAA,CAAC+1D,kBAAD;IACEr3C,IAAAA,EAAE,EAAEA;IACJ9b,IAAAA,IAAI,EAAEA;IACNurD,IAAAA,MAAM,EAAEA;IACRW,IAAAA,QAAQ,EAAEA;IACVjkD,IAAAA,QAAQ,EAAEA;IACVmrD,IAAAA,iBAAiB,EAAEA;IACnBhsD,IAAAA,QAAQ,EAAEA;IACVrH,IAAAA,SAAS,EAAC;OARZ,CAPF,CADF;IAoBD;IAEDwzD,YAAY,CAAC1xD,YAAb,GAA4B9E,MAAM,CAACq+B,MAAP,CAAc,EAAd,EAAkB+3B,kBAAkB,CAACtxD,YAArC,EAAmD;IAC7E2gC,EAAAA,KAAK,EAAE,cADsE;IAE7EqwB,EAAAA,SAAS,EAAE;IAFkE,CAAnD,CAA5B;IAKAU,YAAY,CAAC5xD,WAAb,GAA2B,cAA3B;;IC9DO,IAAM8xD,kBAAkB,GAAG,SAArBA,kBAAqB,CAACn3D,KAAD;IACxB,MAAAo3D,QAAQ,GAAsBp3D,KAAK,SAAnC;IAAA,MAAUq3D,MAAM,GAAcr3D,KAAK,OAAnC;IAAA,MAAkBs3D,OAAO,GAAKt3D,KAAK,QAAnC;;IAER,UAAQq3D,MAAR;IACE,SAAK,WAAL;IACE,0BAAOv2D,8BAAA,CAACmlD,YAAD;IAAcjlD,QAAAA,IAAI,EAAC;IAAQzC,QAAAA,KAAK,EAAE64D;IAAU3zD,QAAAA,SAAS,EAAC;WAAtD,CAAP;;IAEF,SAAK,OAAL;IACE,0BAAO3C,8BAAA,CAACyJ,MAAD;IAAQtJ,QAAAA,UAAU,EAAC;IAAcD,QAAAA,IAAI,EAAC;IAAU0I,QAAAA,OAAO,EAAE4tD;IAAShxD,QAAAA,IAAI,EAAC;IAAU7C,QAAAA,SAAS,EAAC;WAA3F,CAAP;;IAEF;IACE,aAAO,IAAP;IARJ;IAUD,CAbM;IAeP0zD,kBAAkB,CAAC9xD,WAAnB,GAAiC,oBAAjC;IAEA8xD,kBAAkB,CAAC5xD,YAAnB,GAAkC;IAChC8xD,EAAAA,MAAM,EAAE,WADwB;IAEhCD,EAAAA,QAAQ,EAAE;IAFsB,CAAlC;;ICWO,IAAMG,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACv3D,KAAD;;;IACtB,MAAA8sD,IAAI,GAAgF9sD,KAAK,KAAzF;IAAA,MAAMwf,EAAE,GAA4Exf,KAAK,GAAzF;IAAA,MAAUq3D,MAAM,GAAoEr3D,KAAK,OAAzF;IAAA,MAAkB4hB,YAAY,GAAsD5hB,KAAK,aAAzF;IAAA,MAAgCo3D,QAAQ,GAA4Cp3D,KAAK,SAAzF;IAAA,MAA0C0J,QAAO,GAAmC1J,KAAK,QAAzF;IAAA,MAAmDw3D,QAAQ,GAAyBx3D,KAAK,SAAzF;IAAA,MAA6Ds3D,QAAO,GAAgBt3D,KAAK,QAAzF;IAAA,MAAsEyD,SAAS,GAAKzD,KAAK,UAAzF;IAEA,MAAA0D,IAAI,GAAKopD,IAAI,KAAb;IAER,MAAM7sD,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMy3D,aAAa,GAAGt0D,8BAAU,WAE5B3H,GAAC,mBAAD,GAAsB,QAFM,GAI9BiI,SAJ8B,CAAhC;IAOA,sBAGE3C,8BAAA,MAAA,eACMb;qBACM;IACVwD,IAAAA,SAAS,EAAEg0D;IACX/tD,IAAAA,OAAO,EAAE;IAAM,aAAAA,QAAO,IAAIA,QAAO,CAACojD,IAAD,EAAOttC,EAAP,CAAlB;IAA4B;QAJ7C,eAME1e,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAC;IAAwBxC,IAAAA,UAAU,EAAEo2D,MAAM,KAAK,WAAX,GAAyB,SAAzB,GAAqC;OAAzF,EACG3zD,IADH,CADF,eAIE5C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACq2D,kBAAD;IACErK,IAAAA,IAAI,EAAEA;IACNttC,IAAAA,EAAE,EAAEA;IACJ63C,IAAAA,MAAM,EAAEA;IACRD,IAAAA,QAAQ,EAAEA;IACVE,IAAAA,OAAO,EAAE;IAAM,aAAAA,QAAO,IAAIA,QAAO,CAACxK,IAAD,EAAOttC,EAAP,CAAlB;IAA4B;OAL7C,CADF,eAQE1e,8BAAA,CAACyJ,MAAD;qBACY;IACVtJ,IAAAA,UAAU,EAAC;IACXD,IAAAA,IAAI,EAAC;IACL0I,IAAAA,OAAO,EAAE;IAAM,aAAA8tD,QAAQ,IAAIA,QAAQ,CAAC1K,IAAD,EAAOttC,EAAP,CAApB;IAA8B;IAC7ClZ,IAAAA,IAAI,EAAC;OALP,CARF,CAJF,CANF,EA2BG+wD,MAAM,KAAK,OAAX,iBAAsBv2D,8BAAA,CAACwkD,aAAD;IAAetkD,IAAAA,IAAI,EAAC;IAAQC,IAAAA,UAAU,EAAC;IAAQulC,IAAAA,WAAW,EAAE5kB;OAA5D,CA3BzB,CAHF;IAiCD,CA/CM;IAiDP21C,gBAAgB,CAAChyD,YAAjB,GAAgC;IAC9B8xD,EAAAA,MAAM,EAAE,WADsB;IAE9BD,EAAAA,QAAQ,EAAE,CAFoB;IAG9Bx1C,EAAAA,YAAY,EAAE;IAHgB,CAAhC;IAMA21C,gBAAgB,CAAClyD,WAAjB,GAA+B,kBAA/B;;QCrDaqyD,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAC13D,KAAD;;;IACtB,MAAAg3D,QAAQ,GAA4Ch3D,KAAK,SAAzD;IAAA,MAAU0J,OAAO,GAAmC1J,KAAK,QAAzD;IAAA,MAAmBw3D,QAAQ,GAAyBx3D,KAAK,SAAzD;IAAA,MAA6Bs3D,OAAO,GAAgBt3D,KAAK,QAAzD;IAAA,MAAsCyD,SAAS,GAAKzD,KAAK,UAAzD;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM23D,aAAa,GAAGx0D,8BAAU,WAE5B3H,GAAC,mBAAD,GAAsB,QAFM,GAI9BiI,SAJ8B,CAAhC;IAOA,MAAIuzD,QAAQ,CAAC55D,MAAT,KAAoB,CAAxB,EAA2B,OAAO,IAAP;IAE3B,sBACE0D,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAEk0D;qBAAyB;QAAxD,EACGX,QAAQ,CAAC7wD,GAAT,CAAa,UAACyxD,QAAD,EAAW75D,CAAX;IAAiB,wBAC7B+C,8BAAA,CAACy2D,gBAAD;IAAkB/wD,MAAAA,GAAG,EAAEzI;IAAGy5D,MAAAA,QAAQ,EAAEA;IAAUF,MAAAA,OAAO,EAAEA;IAAS5tD,MAAAA,OAAO,EAAEA;WAAakuD,SAAtF,CAD6B;IAE9B,GAFA,CADH,CADF;IAOD;IAEDF,gBAAgB,CAACnyD,YAAjB,GAAgC;IAC9ByxD,EAAAA,QAAQ,EAAE;IADoB,CAAhC;IAIAU,gBAAgB,CAACryD,WAAjB,GAA+B,kBAA/B;;IClCO,IAAMwyD,SAAS,GAAgB,SAAzBA,SAAyB,CAACr8D,EAAD,EAAyBkI,IAAzB,EAA+Bg+B,EAA/B;UAAGo2B,kBAAkB;IACzD,MAAMC,GAAG,GAAGr2B,EAAE,SAAF,IAAAA,EAAE,WAAF,SAAA,GAAAA,EAAE,CAAEjV,qBAAJ,GAA4BhQ,CAAxC;;IACA,WAASu7C,SAAT,CAAmBpuD,EAAnB;IACEA,IAAAA,EAAE,CAACC,cAAH;;IACA,QAAIkuD,GAAJ,EAAS;IACPD,MAAAA,kBAAkB,CAACp0D,IAAD,EAAO;IACvBG,QAAAA,KAAK,EAAE+F,EAAE,CAACquD,KAAH,GAAWF;IADK,OAAP,CAAlB;IAGD;IACF;;IAED9uD,EAAAA,MAAM,CAACygC,gBAAP,CAAwB,WAAxB,EAAqCsuB,SAArC;IACA/uD,EAAAA,MAAM,CAACygC,gBAAP,CAAwB,SAAxB,EAAmC;IACjCzgC,IAAAA,MAAM,CAACihC,mBAAP,CAA2B,WAA3B,EAAwC8tB,SAAxC;IACD,GAFD;IAGD,CAfM;IAiBA,IAAME,UAAU,GAAiB,SAA3BA,UAA2B,CAAC18D,EAAD,EAAqCkI,IAArC,EAA2C8G,IAA3C;UAAG2tD,WAAW;UAAEC,iBAAiB;;IACvE,MAAIC,cAAc,kBAAOF,YAAzB;;IAEA,MAAM9xD,KAAK,GAAGgyD,cAAc,CAAC1pC,SAAf,CAAyB,UAACoP,CAAD;IAAO,WAAAA,CAAC,CAACr6B,IAAF,KAAWA,IAAX;IAAe,GAA/C,CAAd;;IACA,MAAI2C,KAAK,KAAK,CAAC,CAAf,EAAkB;IAChBgyD,IAAAA,cAAc,kBAAOA,cAAc,CAAC9zD,KAAf,CAAqB,CAArB,EAAwB8B,KAAxB,GAAmCgyD,cAAc,CAAC9zD,KAAf,CAAqB8B,KAAK,GAAG,CAA7B,EAAxD;IACD;;IAED,MAAImE,IAAI,KAAK,QAAb,EAAuB6tD,cAAc,CAAC/yC,IAAf,CAAoB;IAAE5hB,IAAAA,IAAI,MAAN;IAAQ8G,IAAAA,IAAI;IAAZ,GAApB;IAEvB4tD,EAAAA,iBAAiB,CAACC,cAAD,CAAjB;IACD,CAXM;IAaA,IAAMC,SAAS,GAAgB,SAAzBA,SAAyB,CAAC98D,EAAD,EAAyBkI,IAAzB,EAAqD8G,IAArD;UAAGstD,kBAAkB;IACzD,MAAMS,YAAY,GAAG;IACnBC,IAAAA,MAAM,EAAEhuD,IAAI,KAAK,OAAT,GAAmBA,IAAnB,GAA0BiD;IADf,GAArB;IAIAqqD,EAAAA,kBAAkB,CAACp0D,IAAD,EAAO60D,YAAP,CAAlB;IACD,CANM;IAQA,IAAME,UAAU,GAAiB,SAA3BA,UAA2B,CAACj9D,EAAD,EAAyBkI,IAAzB,EAA+BnF,KAA/B;UAAGu5D,kBAAkB;IAC3D,MAAMS,YAAY,GAAG;IACnBG,IAAAA,MAAM,EAAEn6D;IADW,GAArB;IAIAu5D,EAAAA,kBAAkB,CAACp0D,IAAD,EAAO60D,YAAP,CAAlB;IACD,CANM;aAQSI,SAASn9D,IAAiEqI;UAA/DyH,GAAG;UAAEwgB,YAAY;IAC1C,MAAM8sC,SAAS,GAAG,OAAO/0D,KAAP,KAAiB,QAAjB,IAA6BA,KAAK,CAACU,KAAN,CAAY,CAAC,CAAb,MAAoB,GAAnE;;IAEA,MAAIq0D,SAAJ,EAAe;IACb,QAAMC,YAAY,GAAGvtD,GAAI,CAACiqB,aAAL,CAAmB,sBAAnB,CAArB;IACA,QAAMujC,aAAa,GAAGhtC,YAAY,GAAG,CAAA+sC,YAAY,SAAZ,IAAAA,YAAY,WAAZ,SAAA,GAAAA,YAAY,CAAEjjC,WAAd,KAA6B,EAAhC,GAAqC,CAAvE;IACA,QAAMmjC,SAAS,GAAGztD,GAAI,CAACsqB,WAAL,GAAmBkjC,aAArC;IACA,WAAOC,SAAS,IAAI,CAAEl1D,KAAgB,CAACU,KAAjB,CAAuB,CAAvB,EAA0B,CAAC,CAA3B,CAAF,GAAkC,GAAtC,CAAhB;IACD;;IACD,SAAOV,KAAP;IACD;aAEem1D,YAAYC;IAC1B,MAAMC,KAAK,GAA0B;IACnCC,IAAAA,MAAM,EAAE;IACN1jC,MAAAA,QAAQ,EAAE;IADJ,KAD2B;IAInC2jC,IAAAA,gBAAgB,EAAE;IAChBv1D,MAAAA,KAAK,EAAE;IADS,KAJiB;IAOnCw1D,IAAAA,qBAAqB,EAAE;IACrBx1D,MAAAA,KAAK,EAAE;IADc,KAPY;IAUnCy1D,IAAAA,IAAI,EAAE;IACJC,MAAAA,OAAO,EAAE;IADL,KAV6B;IAanCC,IAAAA,WAAW,EAAE;IACX31D,MAAAA,KAAK,EAAE;IADI,KAbsB;IAgBnC41D,IAAAA,cAAc,EAAE;IACd51D,MAAAA,KAAK,EAAE;IADO,KAhBmB;IAmBnCkvB,IAAAA,OAAO,EAAE;IACPlvB,MAAAA,KAAK,EAAE;IADA;IAnB0B,GAArC;IAwBA,SAAOq1D,KAAK,CAACD,QAAD,CAAZ;IACD;;ICrHM,IAAMS,eAAe,GAAG,SAAlBA,eAAkB,CAC7BC,IAD6B,EAE7BC,UAF6B,EAG7BC,UAH6B,EAI7BC,iBAJ6B;IAM7B,MAAMC,WAAW,kBAAOJ,KAAxB;;IACA,OAAuB,UAAA,EAAAK,yBAAvB,EAAuB17D,wBAAvB,EAAuBA,IAAvB,EAAmC;IAA9B,QAAM27D,QAAQ,mBAAd;;IACH,QAAKN,IAAI,CAACM,QAAD,CAAJ,CAAetuD,QAAf,IAA2BmuD,iBAA5B,IAAkD,CAACH,IAAI,CAACM,QAAD,CAAJ,CAAetuD,QAAtE,EAAgF;IAC9EouD,MAAAA,WAAW,CAACE,QAAD,CAAX,yBACKF,WAAW,CAACE,QAAD,IACXJ,WAFL;IAID;IACF;;IAED,SAAOE,WAAP;IACD,CAjBM;aAmBSG,cAAcC,QAAsBR;IAClD,MAAMS,OAAO,gBAAQT,KAArB;;IAEA,MAAIQ,MAAM,CAACE,SAAX,EAAsB;IACpB,QAAMC,cAAc,GAAGH,MAAM,CAACE,SAAP,CAAiBV,IAAjB,CAAvB;IACAS,IAAAA,OAAO,CAACD,MAAM,CAACz2D,IAAR,CAAP,GACE42D,cAAc,KAAK,IAAnB,IAA2B,QAAOA,cAAP,MAA0B,QAArD,yBAESF,OAAO,CAACD,MAAM,CAACz2D,IAAR,IACP42D,eAHT,GAKIA,cANN;IAOD;;IACD,MAAIF,OAAO,CAACD,MAAM,CAACz2D,IAAR,CAAP,KAAyB,IAAzB,IAAiC,QAAO02D,OAAO,CAACD,MAAM,CAACz2D,IAAR,CAAd,MAAgC,QAArE,EAA+E;IAC7E02D,IAAAA,OAAO,CAACD,MAAM,CAACz2D,IAAR,CAAP,GAAuB;IAAEwiC,MAAAA,KAAK,EAAEk0B,OAAO,CAACD,MAAM,CAACz2D,IAAR;IAAhB,KAAvB;IACD;;IAED,SAAO02D,OAAP;IACD;IAEM,IAAMG,UAAU,GAAG,SAAbA,UAAa,CAACJ,MAAD,EAAsBR,IAAtB,EAAuCa,UAAvC;IAAC,uBAAA,EAAA;IAAAL,IAAAA,WAAA;;;IAAqB,qBAAA,EAAA;IAAAR,IAAAA,SAAA;;;IAC9C,MAAIc,YAAY,GAAGd,IAAnB;;IACA,MAAIa,UAAJ,EAAgB;IACd/5D,IAAAA,MAAM,CAACi6D,IAAP,CAAYF,UAAZ,EAAwB38D,OAAxB,CAAgC,UAAC88D,UAAD;IAC9B,UAAMC,OAAO,GAAGJ,UAAU,CAACG,UAAD,CAA1B;IACA,UAAME,MAAM,GAAGV,MAAM,CAACxrC,SAAP,CAAiB,UAACjQ,CAAD;IAAO,eAAAA,CAAC,CAAChb,IAAF,KAAWi3D,UAAX;IAAqB,OAA7C,CAAf;IACQ,UAAAG,cAAc,GAAKX,MAAM,CAACU,MAAD,CAAN,eAAnB;;IACR,UAAID,OAAO,CAACx9D,MAAR,IAAkB09D,cAAtB,EAAsC;IACpCL,QAAAA,YAAY,GAAGA,YAAY,CAAC95D,MAAb,CAAoB,UAACjE,CAAD;IAAO,iBAAAo+D,cAAc,CAACp+D,CAAD,EAAIk+D,OAAJ,CAAd;IAA0B,SAArD,CAAf;IACD;IACF,KAPD;IAQD;;IAED,SAAOH,YAAP;IACD,CAdM;IAgBA,IAAMM,QAAQ,GAAG,SAAXA,QAAW,CAACZ,MAAD,EAAsBR,IAAtB,EAAuCxB,WAAvC;IAAC,uBAAA,EAAA;IAAAgC,IAAAA,WAAA;;;IAAqB,qBAAA,EAAA;IAAAR,IAAAA,SAAA;;;IAC5C,MAAMqB,UAAU,kBAAOrB,KAAvB;;IACAxB,EAAAA,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEt6D,OAAb,CAAqB,UAACkgC,CAAD;IACnB,QAAM88B,MAAM,GAAGV,MAAM,CAACxrC,SAAP,CAAiB,UAACjQ,CAAD;IAAO,aAAAA,CAAC,CAAChb,IAAF,KAAWq6B,CAAC,CAACr6B,IAAb;IAAiB,KAAzC,CAAf;;IACA,QAAIm3D,MAAM,KAAK,CAAC,CAAhB,EAAmB;IACjB,UAAMI,iBAAiB,GAAe,SAAhCA,iBAAgC,CAAC9vC,CAAD,EAAIC,CAAJ;IACpC,YAAM8vC,KAAK,GAAGhB,aAAa,CAACC,MAAM,CAACU,MAAD,CAAP,EAAiB1vC,CAAjB,CAA3B;IACA,YAAMgwC,KAAK,GAAGjB,aAAa,CAACC,MAAM,CAACU,MAAD,CAAP,EAAiBzvC,CAAjB,CAA3B;IACA,eAAO8vC,KAAK,CAACn9B,CAAC,CAACr6B,IAAH,CAAL,CAAcwiC,KAAd,CAAoBk1B,aAApB,CAAkCD,KAAK,CAACp9B,CAAC,CAACr6B,IAAH,CAAL,CAAcwiC,KAAhD,CAAP;IACD,OAJD;;IAMQ,UAAA1qC,KAAmC2+D,MAAM,CAACU,MAAD,CAAN,WAAnC;IAAA,UAAAQ,UAAU,mBAAGJ,sBAAb;IAERD,MAAAA,UAAU,CAAC9vC,IAAX,CAAgBmwC,UAAhB;IACA,UAAIt9B,CAAC,CAACvzB,IAAF,KAAW,MAAf,EAAuBwwD,UAAU,CAACM,OAAX;IACxB;IACF,GAdD,CAAA;IAgBA,SAAON,UAAP;IACD,CAnBM;IAqBA,IAAMO,YAAY,GAAG,SAAfA,YAAe,CAAC5B,IAAD,EAAkB5V,IAAlB,EAAgCyX,QAAhC;IAAC,qBAAA,EAAA;IAAA7B,IAAAA,SAAA;;;IAC3B,MAAMj5B,KAAK,GAAG,CAACqjB,IAAI,GAAG,CAAR,IAAayX,QAA3B;IACA,MAAM76B,GAAG,GAAGD,KAAK,GAAG86B,QAApB;IACA,MAAMC,aAAa,GAAG9B,IAAI,CAACp1D,KAAL,CAAWm8B,KAAX,EAAkBC,GAAlB,CAAtB;IACA,SAAO86B,aAAP;IACD,CALM;;ICzEA,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACzwC,GAAD,EAAavY,IAAb,EAA2BipD,EAA3B;IACzB,MAAIjpD,IAAI,KAAKipD,EAAb,EAAiB,OAAO1wC,GAAP;IAEjB,MAAI2wC,MAAM,GAAG3wC,GAAb;;IACA,MAAIvY,IAAI,GAAGipD,EAAX,EAAe;IACbC,IAAAA,MAAM,kBAAO3wC,GAAG,CAAC1mB,KAAJ,CAAU,CAAV,EAAamO,IAAb,GAAuBuY,GAAG,CAAC1mB,KAAJ,CAAUmO,IAAI,GAAG,CAAjB,EAAoBipD,EAAE,GAAG,CAAzB,IAA6B1wC,GAAG,CAACvY,IAAD,IAAWuY,GAAG,CAAC1mB,KAAJ,CAAUo3D,EAAE,GAAG,CAAf,EAA/E;IACD,GAFD,MAEO;IACLC,IAAAA,MAAM,kBAAO3wC,GAAG,CAAC1mB,KAAJ,CAAU,CAAV,EAAao3D,EAAb,IAAkB1wC,GAAG,CAACvY,IAAD,IAAWuY,GAAG,CAAC1mB,KAAJ,CAAUo3D,EAAV,EAAcjpD,IAAd,GAAwBuY,GAAG,CAAC1mB,KAAJ,CAAUmO,IAAI,GAAG,CAAjB,EAArE;IACD;;IAED,SAAOkpD,MAAP;IACD,CAXM;IAaA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACC,YAAD,EAAuBN,QAAvB;IAA4C,SAAA57D,IAAI,CAAC6S,IAAL,CAAUqpD,YAAY,GAAGN,QAAzB,CAAA;IAAkC,CAApG;IAEA,IAAMzuC,YAAY,GAAG,SAAfA,YAAe,CAACgvC,SAAD,EAAkBjC,iBAAlB,EAA+CkC,cAA/C;IAC1B,MAAIA,cAAJ,EAAoB;IAClB,WAAO;IAAE38C,MAAAA,aAAa,EAAE,KAAjB;IAAwBQ,MAAAA,OAAO,EAAE;IAAjC,KAAP;IACD;;IAED,MAAM85C,IAAI,GAAGoC,SAAS,CAACp7D,MAAV,CAAiB,UAACjE,CAAD;IAAO,WAACA,CAAC,CAACiP,QAAF,IAAcmuD,iBAAf,IAAqC,CAACp9D,CAAC,CAACiP,QAAxC;IAAgD,GAAxE,CAAb;;IAEA,MAAIguD,IAAI,CAACv8D,MAAT,EAAiB;IACf,QAAM6+D,aAAa,GAAGtC,IAAI,CAACvM,IAAL,CAAU,UAAC1wD,CAAD;IAAO,aAAA,CAACA,CAAC,CAACw/D,SAAH;IAAY,KAA7B,CAAtB;IACA,QAAMC,aAAa,GAAGxC,IAAI,CAACh7D,KAAL,CAAW,UAACjC,CAAD;IAAO,aAAA,CAACA,CAAC,CAACw/D,SAAH;IAAY,KAA9B,CAAtB;IAEA,QAAM78C,aAAa,GAAGs6C,IAAI,CAACv8D,MAAL,IAAe,CAAf,IAAoB6+D,aAApB,IAAqC,CAACE,aAA5D;IACA,QAAMt8C,OAAO,GAAG,CAACR,aAAD,IAAkB,CAAC88C,aAAnC;IAEA,WAAO;IAAE98C,MAAAA,aAAa,eAAf;IAAiBQ,MAAAA,OAAO;IAAxB,KAAP;IACD;;IACD,SAAO;IAAER,IAAAA,aAAa,EAAE,KAAjB;IAAwBQ,IAAAA,OAAO,EAAE;IAAjC,GAAP;IACD,CAjBM;IAmBA,IAAMu8C,SAAS,GAAG,SAAZA,SAAY,CAACjC,MAAD;IAA6B,SAAAA,MAAM,IAAI,CAAC,CAACA,MAAM,CAAC/8D,MAAnB;IAAyB,CAAxE;IAEA,IAAMi/D,SAAS,GAAG,SAAZA,SAAY,CACvBlC,MADuB,EAEvBzuD,OAFuB,EAGvB4wD,YAHuB;IAKvB,MAAIC,QAAQ,GAAGpC,MAAf;;IACA,MAAI,CAACiC,SAAS,CAACjC,MAAD,CAAV,IAAsBzuD,OAA1B,EAAmC;IACjC6wD,IAAAA,QAAQ,GAAGD,YAAX;IACD;;IAED,SAAOC,QAAP;IACD,CAXM;IAaA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,CAACxtC,KAAD;IAAmB,SAACA,KAAK,GAAG,CAAR,GAAY,GAAZ,GAAkB,EAAnB;IAAsB,CAAjE;;ICpDA,IAAMzpB,cAAY,GAAc;IACrCk3D,EAAAA,QAAQ,EAAE,IAD2B;IAErCH,EAAAA,YAAY,EAAE,EAFuB;IAGrCnC,EAAAA,MAAM,EAAE,EAH6B;IAIrCR,EAAAA,IAAI,EAAE,EAJ+B;IAKrCmC,EAAAA,YAAY,EAAE,CALuB;IAMrCtxD,EAAAA,IAAI,EAAE,MAN+B;IAOrCxJ,EAAAA,IAAI,EAAE,UAP+B;IAQrC+iD,EAAAA,IAAI,EAAE,CAR+B;IASrCyX,EAAAA,QAAQ,EAAE,EAT2B;IAUrC9vD,EAAAA,OAAO,EAAE,KAV4B;IAWrC7I,EAAAA,KAAK,EAAE,KAX8B;IAYrCs1D,EAAAA,WAAW,EAAE,EAZwB;IAarCqC,EAAAA,UAAU,EAAE,EAbyB;IAcrCkC,EAAAA,WAAW,EAAE;IAdwB,CAAhC;;ICMP,IAAMC,OAAO,gBAAG77D,gBAAK,CAACC,aAAN,uBACXwE;IACH+F,EAAAA,GAAG,EAAE;MAFS,CAAhB;IAKO,IAAMsxD,YAAY,GAAGD,OAAO,CAACv7D,QAA7B;;IC2BP,IAAMy7D,UAAU,GAAG,SAAbA,UAAa,CAAC78D,KAAD;IACjB,MAAM28D,SAAO,GAAG77D,gBAAK,CAACmB,UAAN,CAAiB66D,OAAjB,CAAhB;IAEE,MAAA3C,MAAM,GAQJn6D,KAAK,OARP;IAAA,MACA+8D,YAAY,GAOV/8D,KAAK,aARP;IAAA,MAEAg9D,QAAQ,GAMNh9D,KAAK,SARP;IAAA,MAGA24B,WAAW,GAKT34B,KAAK,YARP;IAAA,MAIAi9D,YAAY,GAIVj9D,KAAK,aARP;IAAA,MAKA86D,cAAc,GAGZ96D,KAAK,eARP;IAAA,MAMA83D,kBAAkB,GAEhB93D,KAAK,mBARP;IAAA,MAOAk9D,aAAa,GACXl9D,KAAK,cARP;IAUF,MAAMm9D,SAAS,GAA4B;IACzChD,IAAAA,MAAM,QADmC;IAEzC6C,IAAAA,QAAQ,UAFiC;IAGzCrkC,IAAAA,WAAW,aAH8B;IAIzCskC,IAAAA,YAAY,cAJ6B;IAKzCnC,IAAAA,cAAc,gBAL2B;IAMzChD,IAAAA,kBAAkB,oBANuB;IAOzCoF,IAAAA,aAAa,eAP4B;IAQzCH,IAAAA,YAAY;IAR6B,GAA3C;IAYE,MAAArxD,OAAO,GAQLixD,SAAO,QART;IAAA,MACAS,SAAS,GAOPT,SAAO,UART;IAAA,MAEAU,QAAQ,GAMNV,SAAO,SART;IAAA,MAGAxE,WAAW,GAKTwE,SAAO,YART;IAAA,MAIAnC,UAAU,GAIRmC,SAAO,WART;IAAA,MAKAW,eAAe,GAGbX,SAAO,gBART;IAAA,MAMAD,WAAW,GAETC,SAAO,YART;IAAA,MAOQY,UAAU,GAChBZ,SAAO,OART;IAUM,MAAAnhE,KAA0C2+D,MAAM,QAAhD;IAAA,MAAAqD,OAAO,mBAAG,SAAV;IAAA,MAAgB95D,IAAI,GAAsBy2D,MAAM,KAAhD;IAAA,MAAsBS,OAAO,GAAaT,MAAM,QAAhD;IAAA,MAA+B3B,MAAM,GAAK2B,MAAM,OAAhD;IAER,MAAMsD,aAAa,GAAGrB,SAAS,CAACmB,UAAD,CAA/B;IAEA,MAAMG,SAAS,GAAGvF,WAAW,CAACxpC,SAAZ,CAAsB,UAACoP,CAAD;IAAO,WAAAA,CAAC,CAACr6B,IAAF,KAAWA,IAAX;IAAe,GAA5C,CAAlB;IACA,MAAMi6D,MAAM,GAAGD,SAAS,KAAK,CAAC,CAAf,GAAmBvF,WAAW,CAACuF,SAAD,CAAX,CAAuBlzD,IAA1C,GAAiD,IAAhE;IAEA,MAAMk3B,EAAE,gBAAG5gC,gBAAK,CAAC0zB,SAAN,EAAX;IAEA,MAAMopC,WAAW,GAA6B,CAC5C;IAAE3zD,IAAAA,KAAK,EAAE,gBAAT;IAA2B1L,IAAAA,KAAK,EAAE,SAAlC;IAA6C+H,IAAAA,IAAI,EAAE;IAAnD,GAD4C,EAE5C;IAAE2D,IAAAA,KAAK,EAAE,iBAAT;IAA4B1L,IAAAA,KAAK,EAAE,UAAnC;IAA+C+H,IAAAA,IAAI,EAAE;IAArD,GAF4C,CAA9C;IAIA,MAAMu3D,UAAU,GAA6B,CAC3C;IAAE5zD,IAAAA,KAAK,EAAE,UAAT;IAAqB1L,IAAAA,KAAK,EAAE,SAA5B;IAAuC+H,IAAAA,IAAI,EAAE;IAA7C,GAD2C,EAE3C;IAAE2D,IAAAA,KAAK,EAAE,WAAT;IAAsB1L,IAAAA,KAAK,EAAE,UAA7B;IAAyC+H,IAAAA,IAAI,EAAE;IAA/C,GAF2C,CAA7C;IAIA,MAAMw3D,WAAW,GAAG;IAAE7zD,IAAAA,KAAK,EAAE,OAAT;IAAkB1L,IAAAA,KAAK,EAAE,OAAzB;IAAkC+H,IAAAA,IAAI,EAAE;IAAxC,GAApB;IACA,MAAIkyD,MAAM,KAAK,MAAf,EAAuBqF,UAAU,CAAC,CAAD,CAAV,GAAgBC,WAAhB;IACvB,MAAItF,MAAM,KAAK,OAAf,EAAwBqF,UAAU,CAAC,CAAD,CAAV,GAAgBC,WAAhB;IAExB,MAAMC,WAAW,GAA6B,CAAC;IAAE9zD,IAAAA,KAAK,EAAE,aAAT;IAAwB1L,IAAAA,KAAK,EAAE,MAA/B;IAAuC+H,IAAAA,IAAI,EAAE;IAA7C,GAAD,CAA9C;IACA,MAAM03D,YAAY,GAAG;IAAE/zD,IAAAA,KAAK,EAAE,QAAT;IAAmB1L,IAAAA,KAAK,EAAE,QAA1B;IAAoC+H,IAAAA,IAAI,EAAE;IAA1C,GAArB;IACA,MAAIq3D,MAAM,KAAK,KAAf,EAAsBC,WAAW,CAAC,CAAD,CAAX,GAAiBI,YAAjB;IACtB,MAAIL,MAAM,KAAK,MAAf,EAAuBC,WAAW,CAAC,CAAD,CAAX,GAAiBI,YAAjB;;IAEvB,MAAI3zD,OAAO,kBAAiCwzD,YAAeE,YAA3D;;IACA,MAAIP,OAAJ,EAAanzD,OAAO,kBAAOuzD,aAAgBvzD,QAA9B;IAEb,MAAM1B,OAAO,GAAGxF,8BAAU,CAAC;IACzB,qBAAiB,IADQ;IAEzB,gCAA4Bi6D;IAFH,GAAD,CAA1B;IAKA,MAAMa,aAAa,GAAGrD,OAAO,GACzBA,OAAO,CAACz0D,GAAR,CAAY,UAACrI,CAAD;IAAO,iCACdA;IACHiN,MAAAA,QAAQ,EAAEyvD,UAAU,CAAC92D,IAAD,CAAV,IAAoB82D,UAAU,CAAC92D,IAAD,CAAV,CAAiBirB,SAAjB,CAA2B,UAACuvC,EAAD;IAAQ,eAAAA,EAAE,KAAKpgE,CAAC,CAACS,KAAT;IAAc,OAAjD,MAAuD,CAAC;UAFrE;IAGjB,GAHF,CADyB,GAKzB,EALJ;;IAOA,MAAMqf,WAAW,GAAG,SAAdA,WAAc;IAAM,wBACxB9c,8BAAA,0BAAA,MAAA,eACEA,8BAAA,CAACyC,IAAD;IAAMC,MAAAA,MAAM,EAAC;IAASC,MAAAA,SAAS,EAAC;SAAhC,EACG02D,MAAM,CAAC90D,WADV,CADF,EAIGm4D,OAAO,iBACN18D,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;SAAf,EACGk6D,MAAM,GACLA,MAAM,KAAK,KAAX,gBACE78D,8BAAA,CAACsB,IAAD;IAAMsB,MAAAA,IAAI,EAAC;SAAX,CADF,gBAGE5C,8BAAA,CAACsB,IAAD;IAAMsB,MAAAA,IAAI,EAAC;SAAX,CAJG,gBAOL5C,8BAAA,CAACsB,IAAD;IAAMsB,MAAAA,IAAI,EAAC;SAAX,CARJ,CALJ,CADwB;IAmBzB,GAnBD;;IAqBA,sBACE5C,8BAAA,MAAA;IAAK0F,IAAAA,GAAG,EAAE9C;IAAMD,IAAAA,SAAS,EAAEkF;IAAS2C,IAAAA,GAAG,EAAEo2B;OAAzC,eAGE5gC,8BAAA,MAAA;IACE2C,IAAAA,SAAS,EAAC;qBACA;IACViG,IAAAA,OAAO,EAAE;IACP,UAAI,CAACgC,OAAD,IAAY8xD,OAAhB,EAAyB;IACvB,YAAIG,MAAM,KAAK,KAAf,EAAsBV,YAAY,CAACv5D,IAAD,EAAO,UAAP,CAAZ;IACtB,YAAIi6D,MAAM,KAAK,MAAf,EAAuBV,YAAY,CAACv5D,IAAD,EAAO,QAAP,CAAZ;IACvB,YAAI,CAACi6D,MAAL,EAAaV,YAAY,CAACv5D,IAAD,EAAO,SAAP,CAAZ;IACd;IACF;OATH,EAWGgI,OAAO,IAAI,CAAC+xD,aAAZ,gBACC38D,8BAAA,CAACsxB,WAAD;IAAaE,IAAAA,SAAS,EAAE;OAAxB,eACExxB,8BAAA,CAACoxB,oBAAD;IAAsB90B,IAAAA,MAAM,EAAC;OAA7B,CADF,CADD,GAIG,CAAC+8D,MAAM,CAACgE,kBAAR,IAA8Bb,eAA9B,gBACFx8D,8BAAA,CAACoE,OAAD;IAASC,IAAAA,QAAQ,EAAC;IAAYC,IAAAA,YAAY,EAAC;IAAwBZ,IAAAA,OAAO,EAAE21D,MAAM,CAAC90D;OAAnF,EACGuY,WAAW,EADd,CADE,GAIAu8C,MAAM,CAACgE,kBAAP,IAA6B,CAACb,eAA9B,GACFnD,MAAM,CAACgE,kBAAP,CAA0BhB,SAA1B,CADE,GAGFv/C,WAAW,EAtBf,CAHF,EA4BG8+C,WAAW,IAAI9B,OAAf,iBACC95D,8BAAA,0BAAA,MAAA,EACG4K,OAAO,IAAI,CAAC+xD,aAAZ,gBACC38D,8BAAA,OAAA,MAAA,eACEA,8BAAA,CAACsxB,WAAD,MAAA,CADF,CADD,gBAKCtxB,8BAAA,MAAA,MAAA,eACEA,8BAAA,CAAC4J,QAAD;IACEG,IAAAA,IAAI,EAAE;IACNopB,IAAAA,eAAe,EAAE;IACjBnI,IAAAA,YAAY,EAAE;IACdlhB,IAAAA,cAAc,EAAE;IACdN,MAAAA,aAAa,EAAE;IAAM,4BAAAxJ,8BAAA,CAACyJ,MAAD;IAAQjE,UAAAA,IAAI,EAAC;IAAcrF,UAAAA,UAAU,EAAC;aAAtC,CAAA;IAAsD;IAD7D;IAGhBoJ,IAAAA,OAAO,EAAE4zD;IACT3gD,IAAAA,KAAK,EAAE;IACPxS,IAAAA,QAAQ,EAAE,kBAACC,QAAD;IAAmB,aAAA+vD,cAAc,CAACp3D,IAAD,EAAOqH,QAAP,CAAd;IAA8B;IAC3D0qB,IAAAA,QAAQ,EAAE;OAVZ,CADF,CANJ,CA7BJ,EAoDG4nC,QAAQ,iBACPv8D,8BAAA,0BAAA,MAAA,EACG4K,OAAO,IAAI,CAAC+xD,aAAZ,gBACC38D,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAC;OAAhB,eACE3C,8BAAA,CAACsxB,WAAD,MAAA,CADF,CADD,gBAKCtxB,8BAAA,MAAA,MAAA,eACEA,8BAAA,CAAC4J,QAAD;IACElE,IAAAA,GAAG,EAAK9C,IAAI,MAAJ,GAAQi6D,MAAR,MAAA,GAAkBnF;IAC1B3tD,IAAAA,IAAI,EAAE;IACN6mB,IAAAA,UAAU,EAAC;IACX9mB,IAAAA,cAAc,EAAE;IACdN,MAAAA,aAAa,EAAE;IAAM,4BAAAxJ,8BAAA,CAACyJ,MAAD;IAAQjE,UAAAA,IAAI,EAAC;IAAmBrF,UAAAA,UAAU,EAAC;aAA3C,CAAA;IAA2D;IADlE;IAGhBoJ,IAAAA,OAAO,EAAEA;IACTiT,IAAAA,KAAK,EAAE;IACPxS,IAAAA,QAAQ,EAAE,kBAACC,QAAD;IAAmB,aAAAkyD,YAAY,CAACv5D,IAAD,EAAOqH,QAAP,CAAZ;IAA4B;IACzD0qB,IAAAA,QAAQ,EAAE;OAVZ,CADF,CANJ,CArDJ,EA4EG0kC,MAAM,CAACnC,SAAP,iBAGCl3D,8BAAA,OAAA;IACE2C,IAAAA,SAAS,EAAC;IACVonC,IAAAA,WAAW,EAAE;IACXgtB,MAAAA,SAAS,CAAC;IAAEC,QAAAA,kBAAkB;IAApB,OAAD,EAAyBp0D,IAAzB,EAA+Bg+B,EAAE,CAAC9hB,OAAlC,CAAT;IACAm9C,MAAAA,YAAY,CAAC,KAAD,CAAZ;IACD;OALH,CA/EJ,CADF;IA0FD,CA3LD;;IA6LA,IAAMqB,QAAQ,GAAG,SAAXA,QAAW,CAACp+D,KAAD;IACf,MAAM28D,SAAO,GAAG77D,gBAAK,CAACmB,UAAN,CAAiB66D,OAAjB,CAAhB;IACQ,MAAAnD,IAAI,GAA+D35D,KAAK,KAAxE;IAAA,MAAMm6D,MAAM,GAAuDn6D,KAAK,OAAxE;IAAA,MAAcq+D,aAAa,GAAwCr+D,KAAK,cAAxE;IAAA,MAA6Bi6D,QAAQ,GAA8Bj6D,KAAK,SAAxE;IAAA,MAAuCg9D,QAAQ,GAAoBh9D,KAAK,SAAxE;IAAA,MAAiDs+D,aAAa,GAAKt+D,KAAK,cAAxE;IAEA,MAAAgB,IAAI,GAA0B27D,SAAO,KAArC;IAAA,MAAMjxD,OAAO,GAAiBixD,SAAO,QAArC;IAAA,MAAe4B,UAAU,GAAK5B,SAAO,WAArC;IAED,MAAAlxD,QAAQ,GAAiB4yD,aAAa,EAAA,CAAtC;IAAA,MAAUG,WAAW,GAAIH,aAAa,EAAA,CAAtC;IAEP,MAAMI,SAAS,GAAkB;IAC/BxE,IAAAA,QAAQ,UADuB;IAE/B+C,IAAAA,QAAQ,UAFuB;IAG/Bh8D,IAAAA,IAAI,MAH2B;IAI/Bm5D,IAAAA,MAAM,QAJyB;IAK/BR,IAAAA,IAAI,MAL2B;IAM/BjuD,IAAAA,OAAO,SANwB;IAO/BD,IAAAA,QAAQ;IAPuB,GAAjC;IAUA,sBACE3K,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGu5D,QAAQ,KAAK,CAAb,IAAkBuB,UAAlB,iBACCz9D,8BAAA,0BAAA,MAAA,EACGw9D,aAAa,gBACZx9D,8BAAA,CAACsB,IAAD;IACEqB,IAAAA,SAAS,EAAE;IACXC,IAAAA,IAAI,EAAE+H,QAAQ,GAAG,mBAAH,GAAyB;IACvCzK,IAAAA,IAAI,EAAE;IACNC,IAAAA,UAAU,EAAE;IACZyI,IAAAA,OAAO,EAAE,iBAACgQ,CAAD;IACP,UAAI4kD,aAAJ,EAAmB;IACjB5kD,QAAAA,CAAC,CAAC8D,eAAF;IACAghD,QAAAA,WAAW,CAAC,CAAC/yD,QAAF,CAAX;IACD;IACF;OAVH,CADY,gBAcZ3K,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAC;OAAhB,CAfJ,CAFJ,EAqBG02D,MAAM,CAACuE,YAAP,GACCvE,MAAM,CAACuE,YAAP,CAAoBD,SAApB,CADD,gBAGC39D,8BAAA,CAAC69D,QAAD;IAAUn4D,IAAAA,GAAG,EAAKyzD,QAAQ,MAAR,GAAY+C;SAAgByB,UAA9C,CAxBJ,CADF;IA6BD,CA/CD;;IAiDO,IAAMG,IAAI,GAAG,SAAPA,IAAO,CAAC5+D,KAAD;IAClB,MAAM28D,SAAO,GAAG77D,gBAAK,CAACmB,UAAN,CAAiB66D,OAAjB,CAAhB;IACM,MAAAthE,KAcFwE,KAdE;IAAA,MACJ6+D,MAAM,YADF;IAAA,MAEJC,SAAS,eAFL;IAAA,MAGJ3E,MAAM,YAHF;IAAA,MAIJR,IAAI,UAJA;IAAA,MAKJM,QAAQ,cALJ;IAAA,MAMJ+C,QAAQ,cANJ;IAAA,MAOJqB,aAAa,mBAPT;IAAA,MAQJ1lC,WAAW,iBARP;IAAA,MASJskC,YAAY,kBATR;IAAA,MAUJnC,cAAc,oBAVV;IAAA,MAWJhD,kBAAkB,wBAXd;IAAA,MAYJoF,aAAa,mBAZT;IAAA,MAaJoB,aAAa,mBAbT;IAgBE,MAAAlB,SAAS,GAA+CT,SAAO,UAA/D;IAAA,MAAWz/D,SAAS,GAAoCy/D,SAAO,UAA/D;IAAA,MAAsB4B,UAAU,GAAwB5B,SAAO,WAA/D;IAAA,MAAkCrxD,GAAG,GAAmBqxD,SAAO,IAA/D;IAAA,MAAuC7wC,YAAY,GAAK6wC,SAAO,aAA/D;IAEA,MAAAj5D,IAAI,GAA2Cy2D,MAAM,KAArD;IAAA,MAAMzB,MAAM,GAAmCyB,MAAM,OAArD;IAAA,MAAc3B,MAAM,GAA2B2B,MAAM,OAArD;IAAA,MAAsB92D,KAAyB82D,MAAM,SAArD;IAAA,MAAsBlB,QAAQ,mBAAG,cAAjC;;IAEF,MAAAt2D,KAA2Cq2D,WAAW,CAACC,QAAD,CAAtD;IAAA,MAAEp1D,KAAK,WAAP;IAAA,MAASgB,gBAAT;IAAA,MAAS4wB,QAAQ,mBAAG,OAApB;IAAA,MAAwBpxB,gBAAxB;IAAA,MAAwBqxB,QAAQ,mBAAG,QAAnC;;IAEA,MAAAruB,KAA4BvG,gBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAA5B;IAAA,MAACm8D,SAAS,QAAV;IAAA,MAAYhC,YAAY,QAAxB;;IAEN,MAAMiC,SAAS,GAAG77D,8BAAU,CAAC;IAC3B,iBAAa,IADc;IAE3B,uBAAmB07D,MAFQ;IAG3B,0BAAsBE,SAAS,IAAI3B,SAHR;IAI3B,uBAAmB,CAACyB,MAJO;IAK3B,4BAAwB,CAACC,SAAD,KAAe3E,MAAM,CAACj9D,SAAP,KAAqBuQ,SAArB,GAAiC0sD,MAAM,CAACj9D,SAAxC,GAAoDA,SAAnE,CALG;IAM3B,4BAAwB,CAAC2hE,MAAD,IAAW7B,QAAQ,KAAK,CAAxB,IAA6BuB;IAN1B,GAAD,CAA5B;IASA,MAAI7F,MAAJ,EAAY,OAAO,IAAP;IAEZ,sBACE53D,8BAAA,MAAA;IACE0F,IAAAA,GAAG,EAAKyzD,QAAQ,MAAR,GAAY+C;IACpBv5D,IAAAA,SAAS,EAAEu7D;IACX5B,IAAAA,SAAS,EAAEyB,MAAM,IAAIzB;IACrB6B,IAAAA,WAAW,EAAE,qBAACvlD,CAAD;IACX,UAAI0jD,SAAJ,EAAe;IACbL,QAAAA,YAAY,CAAC,IAAD,CAAZ;IACArjD,QAAAA,CAAC,CAACg0C,YAAF,CAAewR,OAAf,CAAuB,MAAvB,EAA+Bx7D,IAA/B;IACA,YAAI80D,MAAJ,EAAY9+C,CAAC,CAACg0C,YAAF,CAAewR,OAAf,CAAuB,MAAvB,EAA+B1G,MAA/B;IACb;IACF;IACD2G,IAAAA,MAAM,EAAE;IACNpC,MAAAA,YAAY,CAAC,KAAD,CAAZ;IACD;IACDzJ,IAAAA,UAAU,EAAE,oBAAC55C,CAAD;IAAO,aAAAA,CAAC,CAAC7P,cAAF,EAAA;IAAkB;IACrCu1D,IAAAA,gBAAgB,EAAE;IAChBrC,MAAAA,YAAY,CAAC,KAAD,CAAZ;IACD;IACDsC,IAAAA,SAAS,EAAE,mBAAC3lD,CAAD;IACTA,MAAAA,CAAC,CAAC7P,cAAF;IACAkzD,MAAAA,YAAY,CAAC,KAAD,CAAZ;IACD;IACDxJ,IAAAA,MAAM,EAAE,gBAAC75C,CAAD;IACN,UAAI0jD,SAAJ,EAAe;IACbL,QAAAA,YAAY,CAAC,KAAD,CAAZ;IACA,YAAMrqD,IAAI,GAAG;IACXhP,UAAAA,IAAI,EAAEgW,CAAC,CAACg0C,YAAF,CAAejrB,OAAf,CAAuB,MAAvB,CADK;IAEXj4B,UAAAA,IAAI,EAAEkP,CAAC,CAACg0C,YAAF,CAAejrB,OAAf,CAAuB,MAAvB;IAFK,SAAb;IAIA,YAAMk5B,EAAE,GAAG;IACTj4D,UAAAA,IAAI,MADK;IAET8G,UAAAA,IAAI,EAAEguD,MAAM,IAAI;IAFP,SAAX;IAKA,YAAI9lD,IAAI,CAAClI,IAAL,KAAcmxD,EAAE,CAACnxD,IAAjB,IAAyB0yD,aAA7B,EAA4CA,aAAa,CAACxqD,IAAI,CAAChP,IAAN,EAAYi4D,EAAE,CAACj4D,IAAf,CAAb;IAC7C;IACF;IACDoC,IAAAA,KAAK,EAAE;IACLjC,MAAAA,KAAK,EAAE80D,QAAQ,CAAC;IAAErtD,QAAAA,GAAG,KAAL;IAAOwgB,QAAAA,YAAY;IAAnB,OAAD,EAAwBquC,MAAM,CAACt2D,KAAP,IAAgBA,KAAxC,CADV;IAEL4xB,MAAAA,QAAQ,EAAEkjC,QAAQ,CAAC;IAAErtD,QAAAA,GAAG,KAAL;IAAOwgB,QAAAA,YAAY;IAAnB,OAAD,EAAwBquC,MAAM,CAAC1kC,QAAP,IAAmBA,QAA3C,CAFb;IAGLC,MAAAA,QAAQ,EAAEijC,QAAQ,CAAC;IAAErtD,QAAAA,GAAG,KAAL;IAAOwgB,QAAAA,YAAY;IAAnB,OAAD,EAAwBquC,MAAM,CAACzkC,QAAP,IAAmBA,QAA3C;IAHb;OArCT,EA2CGmpC,MAAM,gBACL/9D,8BAAA,CAAC+7D,UAAD;IACEG,IAAAA,QAAQ,EAAEA;IACV7C,IAAAA,MAAM,EAAEA;IACRxhC,IAAAA,WAAW,EAAEA;IACbskC,IAAAA,YAAY,EAAEA;IACdnC,IAAAA,cAAc,EAAEA;IAChBhD,IAAAA,kBAAkB,EAAEA;IACpBoF,IAAAA,aAAa,EAAEA;IACfH,IAAAA,YAAY,EAAEA;OARhB,CADK,gBAYLj8D,8BAAA,CAACs9D,QAAD;IACEnE,IAAAA,QAAQ,EAAEA;IACV+C,IAAAA,QAAQ,EAAEA;IACVrD,IAAAA,IAAI,EAAEA;IACNQ,IAAAA,MAAM,EAAEA;IACRkE,IAAAA,aAAa,EAAEA;IACfC,IAAAA,aAAa,EAAEA;OANjB,CAvDJ,CADF;IAmED,CAxGM;;IC9PA,IAAMgB,QAAQ,GAAG,SAAXA,QAAW,CAACt/D,KAAD;IACtB,MAAM28D,SAAO,GAAG77D,gBAAK,CAACmB,UAAN,CAAiB66D,OAAjB,CAAhB;IACQ,MAAA3C,MAAM,GAAmFn6D,KAAK,OAA9F;IAAA,MAAQ24B,WAAW,GAAsE34B,KAAK,YAA9F;IAAA,MAAqBi9D,YAAY,GAAwDj9D,KAAK,aAA9F;IAAA,MAAmC86D,cAAc,GAAwC96D,KAAK,eAA9F;IAAA,MAAmD83D,kBAAkB,GAAoB93D,KAAK,mBAA9F;IAAA,MAAuEk9D,aAAa,GAAKl9D,KAAK,cAA9F;IAEA,MAAA8rB,YAAY,GAAyB6wC,SAAO,aAA5C;IAAA,MAAcjxD,OAAO,GAAgBixD,SAAO,QAA5C;IAAA,MAAuBjkC,SAAS,GAAKikC,SAAO,UAA5C;IAER,MAAM4C,YAAY,GAAGpF,MAAM,CAACx5D,MAAP,CAAc,UAAC+d,CAAD;IAAO,WAAA,CAACA,CAAC,CAACg6C,MAAH,IAAah6C,CAAC,CAAC85C,MAAf;IAAqB,GAA1C,CAArB;IACA,MAAMgH,gBAAgB,GAAGD,YAAY,CAAC5+D,MAAb,CAAoB,UAAC+d,CAAD;IAAO,WAAA,CAACA,CAAC,CAACg6C,MAAH,IAAah6C,CAAC,CAAC85C,MAAF,KAAa,MAA1B;IAAgC,GAA3D,CAAzB;IACA,MAAMiH,iBAAiB,GAAGF,YAAY,CAAC5+D,MAAb,CAAoB,UAAC+d,CAAD;IAAO,WAAA,CAACA,CAAC,CAACg6C,MAAH,IAAah6C,CAAC,CAAC85C,MAAF,KAAa,OAA1B;IAAiC,GAA5D,CAA1B;IACA,MAAMkH,cAAc,GAAGvF,MAAM,CAACx5D,MAAP,CAAc,UAAC+d,CAAD;IAAO,WAAA,CAACA,CAAC,CAACg6C,MAAH,IAAa,CAACh6C,CAAC,CAAC85C,MAAhB;IAAsB,GAA3C,CAAvB;;IAEA,MAAMmH,cAAc,GAAG,SAAjBA,cAAiB,CAACC,IAAD;IACrB,QAAI,CAACA,IAAD,IAAS,CAAC9zC,YAAd,EAA4B,OAAO,IAAP;IAC5B,wBACEhrB,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;SAAf,EACGiI,OAAO,gBAAG5K,8BAAA,CAACsxB,WAAD,MAAA,CAAH,gBAAqBtxB,8BAAA,CAACoe,QAAD,eAAcwZ;IAAW5tB,MAAAA,QAAQ,EAAE6tB;UAAnC,CAD/B,CADF;IAKD,GAPD;;IASA,MAAMknC,YAAY,GAAG,SAAfA,YAAe,CAACC,UAAD,EAAqBC,oBAArB,EAAoDvH,MAApD;;;IACnB,QAAIsH,UAAU,CAAC1iE,MAAf,EAAuB;IACrB,UAAMuL,OAAO,GAAGxF,8BAAU;IACxB,0BAAkB;IAClB,kCAA0Bq1D;aAC1Bh9D,GAAC,4BAA0Bg9D,OAA3B,GAAsCA,QACtCh9D,0BAAA,GAAwB,CAACg9D,UAJD,EAA1B;IAOA,0BACE13D,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAEkF;WAAhB,EACGg3D,cAAc,CAACI,oBAAD,CADjB,EAEGD,UAAU,CAAC35D,GAAX,CAAe,UAACuY,CAAD,EAAIrY,KAAJ;IACd,YAAI25D,EAAE,GAAGxH,MAAM,KAAK,MAAX,GAAoBnyD,KAApB,GAA4Bm5D,gBAAgB,CAACpiE,MAAjB,GAA0BiJ,KAA/D;IACA,YAAImyD,MAAM,KAAK,OAAf,EAAwBwH,EAAE,IAAIN,cAAc,CAACtiE,MAArB;IAExB,4BACE0D,8BAAA,CAAC89D,IAAD;IACEp4D,UAAAA,GAAG,EAAE,KAAGw5D;IACRlB,UAAAA,SAAS,EAAE,CAACz4D;IACZ22D,UAAAA,QAAQ,EAAEgD;IACVnB,UAAAA,MAAM,EAAE;IACR1E,UAAAA,MAAM,EAAEz7C;IACRia,UAAAA,WAAW,EAAEA;IACbskC,UAAAA,YAAY,EAAEA;IACdnC,UAAAA,cAAc,EAAEA;IAChBhD,UAAAA,kBAAkB,EAAEA;IACpBoF,UAAAA,aAAa,EAAEA;aAVjB,CADF;IAcD,OAlBA,CAFH,CADF;IAwBD;;IAED,WAAO,IAAP;IACD,GApCD;;IAsCA,sBACEp8D,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;qBAAsB;OAArC,eACE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGo8D,YAAY,CAACL,gBAAD,EAAmB,CAAC,CAACA,gBAAgB,CAACpiE,MAAtC,EAA8C,MAA9C,CADf,EAEGyiE,YAAY,CAACH,cAAD,EAAiB,CAACF,gBAAgB,CAACpiE,MAAlB,IAA4B,CAAC,CAACsiE,cAAc,CAACtiE,MAA9D,CAFf,EAGGyiE,YAAY,CAACJ,iBAAD,EAAoB,KAApB,EAA2B,OAA3B,CAHf,CADF,CADF;IASD,CAnEM;;ICLA,IAAMQ,aAAa,GAAG,SAAhBA,aAAgB,CAACjgE,KAAD;IAC3B,MAAM28D,SAAO,GAAG77D,gBAAK,CAACmB,UAAN,CAAiB66D,OAAjB,CAAhB;IAEQ,MAAA3C,MAAM,GAAiCwC,SAAO,OAA9C;IAAA,MAAQjxD,OAAO,GAAwBixD,SAAO,QAA9C;IAAA,MAAiBuD,iBAAiB,GAAKvD,SAAO,kBAA9C;IAEA,MAAAhD,IAAI,GAAyB35D,KAAK,KAAlC;IAAA,MAAMi6D,QAAQ,GAAej6D,KAAK,SAAlC;IAAA,MAAgByL,QAAQ,GAAKzL,KAAK,SAAlC;IAER,MAAIkgE,iBAAJ,EAAuB,OAAOA,iBAAiB,CAAC;IAAEvG,IAAAA,IAAI,MAAN;IAAQQ,IAAAA,MAAM,QAAd;IAAgBzuD,IAAAA,OAAO,SAAvB;IAAyBuuD,IAAAA,QAAQ,UAAjC;IAAmCxuD,IAAAA,QAAQ;IAA3C,GAAD,CAAxB;IAkCvB,SAAO,IAAP;IACD,CA1CM;;ICFA,IAAM00D,OAAO,GAAG,SAAVA,OAAU,CAACngE,KAAD;IACrB,MAAM28D,SAAO,GAAG77D,gBAAK,CAACmB,UAAN,CAAiB66D,OAAjB,CAAhB;IAEQ,MAAAtyD,IAAI,GAAoDmyD,SAAO,KAA/D;IAAA,MAAMyD,UAAU,GAAwCzD,SAAO,WAA/D;IAAA,MAAkBjxD,OAAO,GAA+BixD,SAAO,QAA/D;IAAA,MAA2B7wC,YAAY,GAAiB6wC,SAAO,aAA/D;IAAA,MAAyC4B,UAAU,GAAK5B,SAAO,WAA/D;IAEA,MAAAxC,MAAM,GAA8Cn6D,KAAK,OAAzD;IAAA,MAAQ25D,IAAI,GAAwC35D,KAAK,KAAzD;IAAA,MAAwBqgE,EAAE,GAA0BrgE,KAAK,SAAzD;IAAA,MAA4B+4B,QAAQ,GAAgB/4B,KAAK,SAAzD;IAAA,MAAsCyD,SAAS,GAAKzD,KAAK,UAAzD;IAER,MAAMsgE,MAAM,GAAGx/D,gBAAK,CAAC4e,MAAN,CAA6B,IAA7B,CAAf;;IACM,MAAAlkB,KAA0BsF,gBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAA1B;IAAA,MAAC6I,QAAQ,QAAT;IAAA,MAAW+yD,WAAW,QAAtB;;IAEN,MAAM+B,UAAU,GAAGp9D,8BAAU,CAAC,UAAD,EAAa,gBAAb,EAA+B;IAC1D,0BAAsBw2D,IAAI,CAACuC,SAD+B;IAE1D,0BAAsBvC,IAAI,CAAChuD;IAF+B,GAA/B,CAA7B;IAKA,MAAMhC,cAAc,GAAG7I,gBAAK,CAACy/B,WAAN,CAAkB;IACvC,QAAI/1B,IAAI,KAAK,UAAT,IAAuB,CAACkB,OAA5B,EAAqC;IACnC,UAAI00D,UAAJ,EAAgB;IACdA,QAAAA,UAAU,CAACzG,IAAD,EAAO0G,EAAP,CAAV;IACD;IACF;IACF,GANsB,EAMpB,CAAC1G,IAAD,EAAO0G,EAAP,CANoB,CAAvB;IAQA,MAAMd,YAAY,GAAGpF,MAAM,CAACx5D,MAAP,CAAc,UAAC+d,CAAD;IAAO,WAAA,CAACA,CAAC,CAACg6C,MAAH,IAAah6C,CAAC,CAAC85C,MAAf;IAAqB,GAA1C,CAArB;IACA,MAAMgH,gBAAgB,GAAGD,YAAY,CAAC5+D,MAAb,CAAoB,UAAC+d,CAAD;IAAO,WAAA,CAACA,CAAC,CAACg6C,MAAH,IAAah6C,CAAC,CAAC85C,MAAF,KAAa,MAA1B;IAAgC,GAA3D,CAAzB;IACA,MAAMiH,iBAAiB,GAAGF,YAAY,CAAC5+D,MAAb,CAAoB,UAAC+d,CAAD;IAAO,WAAA,CAACA,CAAC,CAACg6C,MAAH,IAAah6C,CAAC,CAAC85C,MAAF,KAAa,OAA1B;IAAiC,GAA5D,CAA1B;IACA,MAAMkH,cAAc,GAAGvF,MAAM,CAACx5D,MAAP,CAAc,UAAC+d,CAAD;IAAO,WAAA,CAACA,CAAC,CAACg6C,MAAH,IAAa,CAACh6C,CAAC,CAAC85C,MAAhB;IAAsB,GAA3C,CAAvB;IAEA,MAAMgI,WAAW,GAAG;IAClB7G,IAAAA,IAAI,MADc;IAElBM,IAAAA,QAAQ,EAAEoG,EAFQ;IAGlB50D,IAAAA,QAAQ;IAHU,GAApB;IAMA,MAAM6yD,aAAa,GAAG2B,aAAa,CAACO,WAAD,CAAnC;;IAEA,MAAMb,cAAc,GAAG,SAAjBA,cAAiB,CAACC,IAAD;IACrB,QAAI,CAACA,IAAD,IAAS,CAAC9zC,YAAd,EAA4B,OAAO,IAAP;IAE5B,wBAGEhrB,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;IAAgDiG,MAAAA,OAAO,EAAE,iBAACgQ,CAAD;IAAO,eAAAA,CAAC,CAAC8D,eAAF,EAAA;IAAmB;SAAlG,EACG9R,OAAO,gBACN5K,8BAAA,CAACsxB,WAAD,MAAA,CADM,gBAGNtxB,8BAAA,CAACoe,QAAD;IACEW,MAAAA,OAAO,EAAE,CAAC,CAAC85C,IAAI,CAACuC;IAChBpxD,MAAAA,QAAQ,EAAE,kBAAC4S,KAAD;IACRqb,QAAAA,QAAQ,CAACsnC,EAAD,EAAK3iD,KAAK,CAAC6C,MAAN,CAAaV,OAAlB,CAAR;IACD;SAJH,CAJJ,CAHF;IAgBD,GAnBD;;IAqBA,MAAMggD,YAAY,GAAG,SAAfA,YAAe,CAACC,UAAD,EAAqBC,oBAArB,EAAoDvH,MAApD;;;IACnB,QAAIsH,UAAU,CAAC1iE,MAAf,EAAuB;IACrB,UAAMuL,OAAO,GAAGxF,8BAAU;IACxB,0BAAkB;IAClB,kCAA0Bq1D;aAC1Bh9D,GAAC,4BAA0Bg9D,OAA3B,GAAsCA,QACtCh9D,0BAAA,GAAwB,CAACg9D,UAJD,EAA1B;IAOA,0BACE13D,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAEkF;yBAAmB;WAAnC,EACGg3D,cAAc,CAACI,oBAAD,CADjB,EAEGD,UAAU,CAAC35D,GAAX,CAAe,UAACuY,CAAD,EAAIrY,KAAJ;IACd,YAAI25D,EAAE,GAAGxH,MAAM,KAAK,MAAX,GAAoBnyD,KAApB,GAA4Bm5D,gBAAgB,CAACpiE,MAAjB,GAA0BiJ,KAA/D;IACA,YAAImyD,MAAM,KAAK,OAAf,EAAwBwH,EAAE,IAAIN,cAAc,CAACtiE,MAArB;IAExB,4BACE0D,8BAAA,CAAC89D,IAAD;IACEp4D,UAAAA,GAAG,EAAK65D,EAAE,MAAF,GAAML;IACd/F,UAAAA,QAAQ,EAAEoG;IACVrD,UAAAA,QAAQ,EAAEgD;IACVlB,UAAAA,SAAS,EAAE,CAACz4D;IACZ8zD,UAAAA,MAAM,EAAEz7C;IACRi7C,UAAAA,IAAI,EAAEA;IACN0E,UAAAA,aAAa,EAAE,CAAC5yD,QAAD,EAAW+yD,WAAX;IACfF,UAAAA,aAAa,EAAEA;aARjB,CADF;IAYD,OAhBA,CAFH,CADF;IAsBD;;IAED,WAAO,IAAP;IACD,GAlCD;;IAoCA,MAAM/tB,cAAc,GAAGptC,8BAAU,CAACM,SAAD,EAAY;IAC3C,uBAAmB;IADwB,GAAZ,CAAjC;IAIA,sBACE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE8sC;OAAhB,eAGEzvC,8BAAA,MAAA;qBAAe;IAAwB2C,IAAAA,SAAS,EAAE88D;IAAY72D,IAAAA,OAAO,EAAEC;IAAgB2B,IAAAA,GAAG,EAAEg1D;OAA5F,EACGT,YAAY,CAACL,gBAAD,EAAmB,CAAC,CAACA,gBAAgB,CAACpiE,MAAtC,EAA8C,MAA9C,CADf,EAEGyiE,YAAY,CAACH,cAAD,EAAiB,CAACF,gBAAgB,CAACpiE,MAAlB,IAA4B,CAAC,CAACsiE,cAAc,CAACtiE,MAA9D,CAFf,EAGGyiE,YAAY,CAACJ,iBAAD,EAAoB,KAApB,EAA2B,OAA3B,CAHf,CAHF,EAQGlB,UAAU,IAAI9yD,QAAd,iBAA0B3K,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EAAiC66D,aAAjC,CAR7B,CADF;IAYD,CA7GM;IA+GP6B,OAAO,CAAC56D,YAAR,GAAuB;IACrBo0D,EAAAA,IAAI,EAAE;IADe,CAAvB;;IClHO,IAAM8G,QAAQ,GAAG,SAAXA,QAAW,CAACzgE,KAAD;IACtB,MAAM28D,SAAO,GAAG77D,gBAAK,CAACmB,UAAN,CAAiB66D,OAAjB,CAAhB;IAEQ,MAAAnD,IAAI,GAAuFgD,SAAO,KAAlG;IAAA,MAAMrxD,GAAG,GAAkFqxD,SAAO,IAAlG;IAAA,MAAWjxD,OAAO,GAAyEixD,SAAO,QAAlG;IAAA,MAAoB95D,KAAK,GAAkE85D,SAAO,MAAlG;IAAA,MAA2B+D,cAAc,GAAkD/D,SAAO,eAAlG;IAAA,MAA2C5Y,IAAI,GAA4C4Y,SAAO,KAAlG;IAAA,MAAiDnB,QAAQ,GAAkCmB,SAAO,SAAlG;IAAA,MAA2Db,YAAY,GAAoBa,SAAO,aAAlG;IAAA,MAAyExjC,aAAa,GAAKwjC,SAAO,cAAlG;;IAER,MAAI,CAACjxD,OAAD,IAAY7I,KAAhB,EAAuB;IACrB,WAAOs2B,aAAa,GAAI,OAAOA,aAAP,KAAyB,UAAzB,GAAsCA,aAAa,CAAC,EAAD,CAAnD,GAA0DA,aAA9D,GAA+E,IAAnG;IACD;;IAEO,MAAAghC,MAAM,GAAiDn6D,KAAK,OAA5D;IAAA,MAAQ2gE,YAAY,GAAmC3gE,KAAK,aAA5D;IAAA,MAAsB4gE,kBAAkB,GAAe5gE,KAAK,mBAA5D;IAAA,MAA0C+4B,QAAQ,GAAK/4B,KAAK,SAA5D;IAERc,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAM04D,UAAU,GAAGv1D,GAAI,CAACiqB,aAAL,CAAmB,YAAnB,CAAnB;;IACA,QAAIsrC,UAAJ,EAAgB;IACd53D,MAAAA,MAAM,CAAC8sB,qBAAP,CAA6B;IAC3B,YAAI4qC,YAAY,CAAC5c,IAAb,KAAsBA,IAA1B,EAAgC;IAC9B8c,UAAAA,UAAU,CAACC,SAAX,GAAuBH,YAAY,CAACG,SAApC;IACD;IACF,OAJD;IAKD;;IAED,WAAO;IACL,UAAID,UAAJ,EAAgB;IACdD,QAAAA,kBAAkB,CAAC;IAAE7c,UAAAA,IAAI,MAAN;IAAQ+c,UAAAA,SAAS,EAAED,UAAU,CAACC;IAA9B,SAAD,CAAlB;IACD;IACF,KAJD;IAKD,GAfD,EAeG,EAfH;IAiBA,MAAMld,UAAU,GAAGhkD,IAAI,CAAC6S,IAAL,CAAUqpD,YAAY,GAAGN,QAAzB,CAAnB;IACA,MAAMuF,UAAU,GAAGL,cAAc,IAAI3c,IAAI,KAAKH,UAA9C;IACA,MAAMod,UAAU,GAAGD,UAAU,GACzBjF,YAAY,GAAG,CAAC/X,IAAI,GAAG,CAAR,IAAayX,QADH,GAEzB9vD,OAAO,GACP8vD,QADO,GAEPkF,cAAc,GACd9gE,IAAI,CAAC8H,GAAL,CAASo0D,YAAT,EAAuBN,QAAvB,CADc,GAEdM,YANJ;;IAQA,MAAMmF,SAAS,GAAG,SAAZA,SAAY,CAAChH,QAAD,EAAmB7zD,IAAnB;IAChB,wBACEtF,8BAAA,CAACq/D,OAAD;IACE35D,MAAAA,GAAG,EAAEyzD;IACLA,MAAAA,QAAQ,EAAEA;IACVN,MAAAA,IAAI,EAAE,CAACvzD,IAAD,GAAQuzD,IAAI,CAACM,QAAD,CAAZ,GAAyB7zD;IAC/B+zD,MAAAA,MAAM,EAAEA;IACRphC,MAAAA,QAAQ,EAAEA;SALZ,CADF;IASD,GAVD;;IAYA,MAAMmoC,YAAY,GAAG,SAAfA,YAAe;IACnB,QAAIx1D,OAAO,IAAI,CAACiuD,IAAI,CAACv8D,MAArB,EAA6B;IAC3B,4BAAWqB,KAAK,CAACuiE,UAAD,CAAL,CAAkB76D,GAAlB,CAAsB,UAACsW,CAAD;IAAO,eAAAA,CAAA;IAAC,OAA9B,EAAX;IACD;;IACD,WAAOk9C,IAAP;IACD,GALD;;IAOA,sBACE74D,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGy9D,YAAY,GAAG/6D,GAAf,CAAmB,UAACC,IAAD,EAAOrI,CAAP;IAClB,WAAOkjE,SAAS,CAACljE,CAAD,EAAIqI,IAAJ,CAAhB;IACD,GAFA,CADH,CADF;IAOD,CAhEM;;;ICwRmB4I,EAAAA,uBAAA;;IAMxB,eAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IAJAkP,IAAAA,aAAA,GAAmB,IAAnB;IACAA,IAAAA,mBAAA,GAAgB,KAAhB;IACAA,IAAAA,mBAAA,GAAgB,KAAhB;;IA4DAA,IAAAA,gBAAA,GAAa,UAAC1E,IAAD;IAAkB,aAAA;IAC7B,YAAM22D,UAAU,GAAGjyD,KAAI,CAACkyD,OAAL,CAAc7rC,aAAd,CAA4B,YAA5B,CAAnB;;IACA,YAAMsrC,UAAU,GAAG3xD,KAAI,CAACkyD,OAAL,CAAc7rC,aAAd,CAA4B,YAA5B,CAAnB;;IAEA,YAAI/qB,IAAI,KAAK,MAAb,EAAqB;IACnB,cAAI,CAAC0E,KAAI,CAACmyD,aAAV,EAAyB;IACvBnyD,YAAAA,KAAI,CAACoyD,aAAL,GAAqB,IAArB;IACAT,YAAAA,UAAW,CAACU,UAAZ,GAAyBJ,UAAW,CAACI,UAArC;IACD;;IACDryD,UAAAA,KAAI,CAACmyD,aAAL,GAAqB,KAArB;IACD;;IAED,YAAI72D,IAAI,KAAK,MAAb,EAAqB;IACnB,cAAI,CAAC0E,KAAI,CAACoyD,aAAV,EAAyB;IACvBpyD,YAAAA,KAAI,CAACmyD,aAAL,GAAqB,IAArB;IACAF,YAAAA,UAAW,CAACI,UAAZ,GAAyBV,UAAW,CAACU,UAArC;IACD;;IACDryD,UAAAA,KAAI,CAACoyD,aAAL,GAAqB,KAArB;IACD;IACF,OAnB8B;IAmB9B,KAnBD;;IAqBApyD,IAAAA,0BAAA,GAAuB,UAACsyD,SAAD;IACb,UAAAC,YAAY,GAAKvyD,KAAI,CAAClP,KAAL,aAAjB;;IAER,UAAIyhE,YAAJ,EAAkB;IAChBA,QAAAA,YAAY,CAACD,SAAD,CAAZ;IACD;IACF,KAND;;IAQAtyD,IAAAA,wBAAA,GAAiD,UAACxL,IAAD,EAAO60D,YAAP;IACvC,UAAA4B,MAAM,GAAKjrD,KAAI,CAAClP,KAAL,OAAX;;IACR,UAAMwhE,SAAS,kBAAOrH,OAAtB;;IAEA,UAAMrzD,GAAG,GAAG06D,SAAS,CAAC7yC,SAAV,CAAoB,UAACjQ,CAAD;IAAO,eAAAA,CAAC,CAAChb,IAAF,KAAWA,IAAX;IAAe,OAA1C,CAAZ;IACA89D,MAAAA,SAAS,CAAC16D,GAAD,CAAT,yBACK06D,SAAS,CAAC16D,GAAD,IACTyxD,aAFL;;IAKArpD,MAAAA,KAAI,CAACwyD,oBAAL,CAA0BF,SAA1B;IACD,KAXD;;IAaAtyD,IAAAA,mBAAA,GAAuC,UAACwD,IAAD,EAAOipD,EAAP;IAC7B,UAAAxB,MAAM,GAAKjrD,KAAI,CAAClP,KAAL,OAAX;IAER,UAAM2hE,OAAO,GAAGxH,MAAM,CAACxrC,SAAP,CAAiB,UAACjQ,CAAD;IAAO,eAAAA,CAAC,CAAChb,IAAF,KAAWgP,IAAX;IAAe,OAAvC,CAAhB;IACA,UAAMkvD,KAAK,GAAGzH,MAAM,CAACxrC,SAAP,CAAiB,UAACjQ,CAAD;IAAO,eAAAA,CAAC,CAAChb,IAAF,KAAWi4D,EAAX;IAAa,OAArC,CAAd;IACA,UAAM6F,SAAS,GAAG9F,WAAW,CAACvB,MAAD,EAASwH,OAAT,EAAkBC,KAAlB,CAA7B;;IACA1yD,MAAAA,KAAI,CAACwyD,oBAAL,CAA0BF,SAA1B;IACD,KAPD;;IASAtyD,IAAAA,uBAAA,GAAoB,UAACipD,WAAD;IACV,UAAAC,iBAAiB,GAAKlpD,KAAI,CAAClP,KAAL,kBAAtB;;IAER,UAAIo4D,iBAAJ,EAAuB;IACrBA,QAAAA,iBAAiB,CAACD,WAAD,CAAjB;IACD;IACF,KAND;;IAQAjpD,IAAAA,sBAAA,GAAmB,UAACsrD,UAAD;IACT,UAAAqH,gBAAgB,GAAK3yD,KAAI,CAAClP,KAAL,iBAArB;;IAER,UAAI6hE,gBAAJ,EAAsB;IACpBA,QAAAA,gBAAgB,CAACrH,UAAD,CAAhB;IACD;IACF,KAND;;IAQAtrD,IAAAA,kBAAA,GAA+B,UAACxL,IAAD,EAAOqH,QAAP;IACrB,UAAAotD,WAAW,GAAKjpD,KAAI,CAAClP,KAAL,YAAhB;;IACR,cAAQ+K,QAAR;IACE,aAAK,SAAL;IACEmtD,UAAAA,UAAU,CAAC;IAAEC,YAAAA,WAAW,aAAb;IAAeC,YAAAA,iBAAiB,EAAElpD,KAAI,CAACkpD;IAAvC,WAAD,EAA6D10D,IAA7D,EAAmE,KAAnE,CAAV;IACA;;IACF,aAAK,UAAL;IACEw0D,UAAAA,UAAU,CAAC;IAAEC,YAAAA,WAAW,aAAb;IAAeC,YAAAA,iBAAiB,EAAElpD,KAAI,CAACkpD;IAAvC,WAAD,EAA6D10D,IAA7D,EAAmE,MAAnE,CAAV;IACA;;IACF,aAAK,QAAL;IACEw0D,UAAAA,UAAU,CAAC;IAAEC,YAAAA,WAAW,aAAb;IAAeC,YAAAA,iBAAiB,EAAElpD,KAAI,CAACkpD;IAAvC,WAAD,EAA6D10D,IAA7D,EAAmE,QAAnE,CAAV;IACA;;IACF,aAAK,SAAL;IACE40D,UAAAA,SAAS,CAAC;IAAER,YAAAA,kBAAkB,EAAE5oD,KAAI,CAAC4oD;IAA3B,WAAD,EAAkDp0D,IAAlD,EAAwD,MAAxD,CAAT;IACA;;IACF,aAAK,UAAL;IACE40D,UAAAA,SAAS,CAAC;IAAER,YAAAA,kBAAkB,EAAE5oD,KAAI,CAAC4oD;IAA3B,WAAD,EAAkDp0D,IAAlD,EAAwD,OAAxD,CAAT;IACA;;IACF,aAAK,OAAL;IACE40D,UAAAA,SAAS,CAAC;IAAER,YAAAA,kBAAkB,EAAE5oD,KAAI,CAAC4oD;IAA3B,WAAD,EAAkDp0D,IAAlD,EAAwD,OAAxD,CAAT;IACA;;IACF,aAAK,MAAL;IACE+0D,UAAAA,UAAU,CAAC;IAAEX,YAAAA,kBAAkB,EAAE5oD,KAAI,CAAC4oD;IAA3B,WAAD,EAAkDp0D,IAAlD,EAAwD,IAAxD,CAAV;IACA;IArBJ;IAuBD,KAzBD;;IA2BAwL,IAAAA,oBAAA,GAAmC,UAACxL,IAAD,EAAOqH,QAAP;;;IACzB,UAAAyvD,UAAU,GAAKtrD,KAAI,CAAClP,KAAL,WAAf;;IAER,UAAM8hE,aAAa,yBACdtH,0BACF92D,QAAOqH,cAFV;;IAKAmE,MAAAA,KAAI,CAAC2yD,gBAAL,CAAsBC,aAAtB;IACD,KATD;;IAWA5yD,IAAAA,cAAA,GAAuB,UAAC+qD,QAAD,EAAWlvD,QAAX;IACb,UAAAguB,QAAQ,GAAK7pB,KAAI,CAAClP,KAAL,SAAb;;IAER,UAAI+4B,QAAJ,EAAc;IACZA,QAAAA,QAAQ,CAACkhC,QAAD,EAAWlvD,QAAX,CAAR;IACD;IACF,KAND;;IAQAmE,IAAAA,iBAAA,GAAyC,UAACwO,KAAD;IAC/B,UAAAib,WAAW,GAAKzpB,KAAI,CAAClP,KAAL,YAAhB;;IAER,UAAI24B,WAAJ,EAAiB;IACfA,QAAAA,WAAW,CAACjb,KAAK,CAAC6C,MAAN,CAAaV,OAAd,EAAuBpS,SAAvB,EAAkC,IAAlC,CAAX;IACD;IACF,KAND;;IAQAyB,IAAAA,wBAAA,GAAiD,UAAC3Q,KAAD;IAC/C2Q,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZwxD,QAAAA,YAAY,EAAEpiE;IADF,OAAd;IAGD,KAJD;;IAhLE,QAAMwjE,QAAQ,GAAG;IAAEhe,MAAAA,IAAI,EAAE,CAAR;IAAW+c,MAAAA,SAAS,EAAE;IAAtB,KAAjB;IAEA5xD,IAAAA,KAAI,CAACE,KAAL,GAAa;IACX8R,MAAAA,IAAI,EAAE,KADK;IAEXy/C,MAAAA,YAAY,EAAEoB;IAFH,KAAb;;IAID;;IAEDC,EAAAA,cAAA,kBAAA,GAAA;IACE,SAAK7yD,QAAL,CAAc;IACZ+R,MAAAA,IAAI,EAAE;IADM,KAAd;IAGAjY,IAAAA,MAAM,CAACygC,gBAAP,CAAwB,QAAxB,EAAkC,KAAKu4B,aAAL,CAAmBzuD,IAAnB,CAAwB,IAAxB,CAAlC;IACD,GALD;;IAOAwuD,EAAAA,cAAA,cAAA,GAAA;IACE,SAAKE,WAAL;IACD,GAFD;;IAIAF,EAAAA,cAAA,qBAAA,GAAA;IACE,SAAKG,qBAAL;IACAl5D,IAAAA,MAAM,CAACihC,mBAAP,CAA2B,QAA3B,EAAqC,KAAK+3B,aAAL,CAAmBzuD,IAAnB,CAAwB,IAAxB,CAArC;IACD,GAHD;;IAKAwuD,EAAAA,cAAA,mBAAA,GAAA,UAAmB7pD,SAAnB,EAAyCC,SAAzC;IACE,QAAIA,SAAS,CAAC8I,IAAV,KAAmB,KAAK9R,KAAL,CAAW8R,IAAlC,EAAwC;IACtC,WAAKkhD,kBAAL;IACD;;IAED,QAAIjqD,SAAS,CAAC4rC,IAAV,KAAmB,KAAK/jD,KAAL,CAAW+jD,IAA9B,IAAsC5rC,SAAS,CAACtV,KAAV,KAAoB,KAAK7C,KAAL,CAAW6C,KAAzE,EAAgF;IAC9E,WAAKs/D,qBAAL;IACA,WAAKC,kBAAL;IACD;IACF,GATD;;IAWAJ,EAAAA,cAAA,mBAAA,GAAA;IACE,QAAMb,UAAU,GAAG,KAAKC,OAAL,CAAc7rC,aAAd,CAA4B,YAA5B,CAAnB;IACA,QAAMsrC,UAAU,GAAG,KAAKO,OAAL,CAAc7rC,aAAd,CAA4B,YAA5B,CAAnB;;IAEA,QAAI4rC,UAAU,IAAIN,UAAlB,EAA8B;IAC5BM,MAAAA,UAAU,CAACz3B,gBAAX,CAA4B,QAA5B,EAAsC,KAAK24B,UAAL,CAAgB,MAAhB,CAAtC;IACAxB,MAAAA,UAAU,CAACn3B,gBAAX,CAA4B,QAA5B,EAAsC,KAAK24B,UAAL,CAAgB,MAAhB,CAAtC;IACD;IACF,GARD;;IAUAL,EAAAA,cAAA,sBAAA,GAAA;IACE,QAAMb,UAAU,GAAG,KAAKC,OAAL,CAAc7rC,aAAd,CAA4B,YAA5B,CAAnB;IACA,QAAMsrC,UAAU,GAAG,KAAKO,OAAL,CAAc7rC,aAAd,CAA4B,YAA5B,CAAnB;;IAEA,QAAI4rC,UAAU,IAAIN,UAAlB,EAA8B;IAC5BM,MAAAA,UAAU,CAACj3B,mBAAX,CAA+B,QAA/B,EAAyC,KAAKm4B,UAAL,CAAgB,MAAhB,CAAzC;IACAxB,MAAAA,UAAU,CAAC32B,mBAAX,CAA+B,QAA/B,EAAyC,KAAKm4B,UAAL,CAAgB,MAAhB,CAAzC;IACD;IACF,GARD;;IAyIAL,EAAAA,cAAA,OAAA,GAAA;;;IAAA,oBAAA;;;;IACE,QAAM/hE,SAAS,GAAGF,gBAAgB,CAAC,KAAKC,KAAN,CAAlC;IAEM,QAAA2C,KAAyB,KAAKyM,KAA9B;IAAA,QAAE8R,IAAI,UAAN;IAAA,QAAQy/C,YAAY,kBAApB;IAEA,QAAA97D,KAAmE,KAAK7E,KAAxE;IAAA,QAAEwK,IAAI,UAAN;IAAA,QAAQxJ,IAAI,UAAZ;IAAA,QAAcy7D,QAAQ,cAAtB;IAAA,QAAwBh5D,SAAS,eAAjC;IAAA,QAAmCsgD,IAAI,UAAvC;IAAA,QAAyCr4C,OAAO,aAAhD;IAAA,QAAkD4wD,YAAY,kBAA9D;IAEN,QAAMnC,MAAM,GAAGkC,SAAS,CAAC,KAAKr8D,KAAL,CAAWm6D,MAAZ,EAAoBzuD,OAApB,EAA6B4wD,YAA7B,CAAxB;IAEA,QAAM3zD,OAAO,GAAGxF,8BAAU;IAEtB6+D,MAAAA,IAAI,EAAE;WACNxmE,GAAC,WAASgP,KAAV,GAAmBA,MACnBhP,GAAC,WAASwF,KAAV,GAAmBA,QAJG,GAMxByC,SANwB,CAA1B;IASA,wBACE3C,8BAAA,MAAA;IACE2C,MAAAA,SAAS,EAAEkF;WACP1I;IACJqL,MAAAA,GAAG,EAAE,aAACo2B,EAAD;IACHxyB,QAAAA,KAAI,CAACkyD,OAAL,GAAe1/B,EAAf;IACD;UALH,EAOGxgB,IAAI,iBACHpgB,8BAAA,CAAC87D,YAAD;IACEr+D,MAAAA,KAAK,wBACA,KAAKyB;IACRsL,QAAAA,GAAG,EAAE,KAAK81D;;SAHd,EAMG3E,QAAQ,iBACP37D,8BAAA,CAACw+D,QAAD;IACEnF,MAAAA,MAAM,EAAEA;IACRxhC,MAAAA,WAAW,QAAE,KAAKA,qDAAanlB,KAAK;IACpCypD,MAAAA,YAAY,EAAE,KAAKA,YAAL,CAAkBzpD,IAAlB,CAAuB,IAAvB;IACdsnD,MAAAA,cAAc,EAAE,KAAKA,cAAL,CAAoBtnD,IAApB,CAAyB,IAAzB;IAChBskD,MAAAA,kBAAkB,EAAE,KAAKA,kBAAL,CAAwBtkD,IAAxB,CAA6B,IAA7B;IACpB0pD,MAAAA,aAAa,EAAE,KAAKA,aAAL,CAAmB1pD,IAAnB,CAAwB,IAAxB;SANjB,CAPJ,eAgBE1S,8BAAA,CAAC2/D,QAAD;IACEj6D,MAAAA,GAAG,EAAE,KAAGu9C;IACRoW,MAAAA,MAAM,EAAEA;IACRwG,MAAAA,YAAY,EAAEA;IACdC,MAAAA,kBAAkB,EAAE,KAAKA,kBAAL,CAAwBptD,IAAxB,CAA6B,IAA7B;IACpBulB,MAAAA,QAAQ,EAAE,KAAKA,QAAL,CAAcvlB,IAAd,CAAmB,IAAnB;SALZ,CAhBF,CARJ,CADF;IAoCD,GAtDD;;IAuDF,aAAA;IAAC,EAtPyB1S,gBAAK,CAACkY;IAwPhCgpD,IAAI,CAACz8D,YAAL,GAAoBA,cAApB;;ICtbA,IAAM+8D,WAAW,GAAG,SAAdA,WAAc,CAACtiE,KAAD;IACV,MAAAwE,OAAO,GAAexE,KAAK,QAA3B;IAAA,MAASuiE,QAAQ,GAAKviE,KAAK,SAA3B;IAER,MAAMyC,QAAQ,GAAG8/D,QAAQ,CAACr8B,KAA1B;;IAEA,MAAIzjC,QAAQ,KAAKgL,SAAb,IAA0BhL,QAAQ,KAAK,IAA3C,EAAiD;IAC/C,QAAI+B,OAAJ,EAAa;IACX,0BACE1D,8BAAA,CAACoE,OAAD;IAASV,QAAAA,OAAO,EAAE/B;IAAU0C,QAAAA,QAAQ,EAAE;IAAaC,QAAAA,YAAY,EAAC;WAAhE,eACEtE,8BAAA,CAACyC,IAAD;IAAME,QAAAA,SAAS,EAAC;WAAhB,EAAkChB,QAAlC,CADF,CADF;IAKD;;IACD,wBAAO3B,8BAAA,CAACyC,IAAD;IAAME,MAAAA,SAAS,EAAC;SAAhB,EAAkChB,QAAlC,CAAP;IACD;;IAED,SAAO,IAAP;IACD,CAjBD;;IAmBA,IAAM+/D,cAAc,GAAG,SAAjBA,cAAiB,CAACxiE,KAAD;IACb,MAAAuiE,QAAQ,GAAKviE,KAAK,SAAlB;IAEA,MAAAyiE,QAAQ,GAAKF,QAAQ,SAArB;;IAER,MAAIE,QAAJ,EAAc;IACZ,wBACE3hE,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;uBAA8B;SAA7C,EACGg/D,QAAQ,CAACt8D,GAAT,CAAa,UAACiB,IAAD,EAAOf,KAAP;IAAiB,0BAC7BvF,8BAAA,CAACyC,IAAD;IAAMiD,QAAAA,GAAG,EAAEH;IAAO5C,QAAAA,SAAS,EAAC;IAAWxC,QAAAA,UAAU,EAAE;IAAUD,QAAAA,IAAI,EAAC;WAAlE,EACGoG,IADH,CAD6B;IAI9B,KAJA,CADH,CADF;IASD;;IAED,SAAO,IAAP;IACD,CAlBD;;IAoBA,IAAMrC,YAAY,GAAG,SAAfA,YAAe,CAAC/E,KAAD;IACX,MAAAuiE,QAAQ,GAAKviE,KAAK,SAAlB;IAEA,MAAAkB,SAAS,GAAsBqhE,QAAQ,UAAvC;IAAA,MAAWphE,QAAQ,GAAYohE,QAAQ,SAAvC;IAAA,MAAqBr8B,KAAK,GAAKq8B,QAAQ,MAAvC;;IAER,MAAIrhE,SAAS,IAAIC,QAAjB,EAA2B;IACzB,wBAAOL,8BAAA,CAACmD,MAAD;IAAQR,MAAAA,SAAS,EAAC;IAAOvC,MAAAA,SAAS,EAAEA;IAAWC,MAAAA,QAAQ,EAAEA;SAAzD,CAAP;IACD;;IACD,MAAI+kC,KAAJ,EAAW;IACT,wBAAOplC,8BAAA,CAACmD,MAAD;IAAQR,MAAAA,SAAS,EAAC;SAAlB,EAA0ByiC,KAA1B,CAAP;IACD;;IAED,SAAO,IAAP;IACD,CAbD;;IAeA,IAAMoV,UAAU,GAAG,SAAbA,UAAa,CAACt7C,KAAD;IACT,MAAAuiE,QAAQ,GAAKviE,KAAK,SAAlB;IAEA,MAAAkmC,KAAK,GAAWq8B,QAAQ,MAAxB;IAAA,MAAOj8D,IAAI,GAAKi8D,QAAQ,KAAxB;IACR,MAAMlyC,QAAQ,GAAG/pB,IAAI,IAAI4/B,KAAzB;;IACA,MAAI7V,QAAJ,EAAc;IACZ,wBAAOvvB,8BAAA,CAACsB,IAAD;IAAMsB,MAAAA,IAAI,EAAE2sB;SAAZ,CAAP;IACD;;IAED,SAAO,IAAP;IACD,CAVD;;IAYA,IAAMqyC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAC1iE,KAAD;IACf,MAAAuiE,QAAQ,GAAKviE,KAAK,SAAlB;IAEA,MAAA2iE,gBAAgB,GAAKJ,QAAQ,iBAA7B;IAER,MAAM9/D,QAAQ,GAAG8/D,QAAQ,CAACr8B,KAA1B;;IAEA,MAAIzjC,QAAJ,EAAc;IACZ,wBAAO3B,8BAAA,CAACmvC,UAAD;IAAYhvC,MAAAA,UAAU,EAAE0hE;SAAxB,EAA2ClgE,QAA3C,CAAP;IACD;;IAED,SAAO,IAAP;IACD,CAZD;;QAcak8D,QAAQ,GAAG,SAAXA,QAAW,CAAC3+D,KAAD;;;IAEpB,MAAAgB,IAAI,GAIFhB,KAAK,KAJP;IAAA,MACAm6D,MAAM,GAGJn6D,KAAK,OAJP;IAAA,MAGA0L,OAAO,GACL1L,KAAK,QAJP;IAMF,MAAM25D,IAAI,GAAG,CAACjuD,OAAD,GAAWwuD,aAAa,CAACC,MAAD,EAASn6D,KAAK,CAAC25D,IAAf,CAAxB,GAA+C,EAA5D;IAEQ,MAAAj2D,IAAI,GAAoDy2D,MAAM,KAA9D;IAAA,MAAM92D,KAAkD82D,MAAM,SAA9D;IAAA,MAAMlB,QAAQ,mBAAG,cAAjB;IAAA,MAA4Bt2D,KAA4Bw3D,MAAM,MAA9D;IAAA,MAA4B78C,KAAK,mBAAG,WAApC;IAAA,MAA4C9Y,OAAO,GAAK21D,MAAM,QAA9D;IAER,MAAMoI,QAAQ,GAAG5I,IAAI,CAACj2D,IAAD,CAArB;IAEA,MAAMs7D,SAAS,GAAG77D,8BAAU,WAC1B3H,GAAC,WAAD,GAAc,QADY,EAA5B;;IAIA,UAAQy9D,QAAR;IACE,SAAK,SAAL;IACE,0BACEn4D,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAKu7D,SAAS,sBAAT,GAA6B1hD,KAA7B;WAAnB,EACG5R,OAAO,gBACN5K,8BAAA,CAACoxB,oBAAD;IAAsB90B,QAAAA,MAAM,EAAC;yBAAmB;WAAhD,CADM,GAGNklE,WAAW,CAAC;IAAE99D,QAAAA,OAAO,SAAT;IAAW+9D,QAAAA,QAAQ;IAAnB,OAAD,CAJf,CADF;;IAUF,SAAK,gBAAL;IACE,0BACEzhE,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAKu7D,SAAS;WAA5B,EACGtzD,OAAO,gBACN5K,8BAAA,0BAAA,MAAA,eACEA,8BAAA,CAACoxB,oBAAD;IAAsB90B,QAAAA,MAAM,EAAC;yBAAmB;WAAhD,CADF,eAEE0D,8BAAA,CAACoxB,oBAAD;IAAsB90B,QAAAA,MAAM,EAAC;IAAQ4D,QAAAA,IAAI,EAAC;WAA1C,CAFF,CADM,gBAMNF,8BAAA,0BAAA,MAAA,EACGwhE,WAAW,CAAC;IAAE99D,QAAAA,OAAO,SAAT;IAAW+9D,QAAAA,QAAQ;IAAnB,OAAD,CADd,EAEGC,cAAc,CAAC;IAAED,QAAAA,QAAQ;IAAV,OAAD,CAFjB,CAPJ,CADF;;IAgBF,SAAK,QAAL;IACE,UAAI72D,OAAJ,EAAa;IACX,4BAAO5K,8BAAA,CAACsxB,WAAD;IAAa3uB,UAAAA,SAAS,EAAE,qBAAmB6Z;IAAS+U,UAAAA,SAAS,EAAE;IAAUhW,UAAAA,KAAK,EAAE;aAAhF,CAAP;IACD;;IACD,0BACEvb,8BAAA,MAAA;IACE2C,QAAAA,SAAS,EAAKu7D,SAAS,sBAAT,GAA6B1hD,KAA7B;yBACJ;WAFZ,EAIGtc,IAAI,KAAK,OAAT,IAAoB+D,YAAY,CAAC;IAAEw9D,QAAAA,QAAQ;IAAV,OAAD,CAJnC,CADF;;IASF,SAAK,kBAAL;IACE,UAAI72D,OAAJ,EAAa;IACX,4BACE5K,8BAAA,CAACsxB,WAAD;IAAaC,UAAAA,SAAS,EAAE;IAAUhW,UAAAA,KAAK,EAAE;aAAzC,eACEvb,8BAAA,CAACoxB,oBAAD;IAAsBzuB,UAAAA,SAAS,EAAC;IAAOrG,UAAAA,MAAM,EAAC;aAA9C,CADF,CADF;IAKD;;IACD,0BACE0D,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAKu7D,SAAS;yBAAiB;WAA7C,EACGh+D,IAAI,KAAK,OAAT,IAAoB+D,YAAY,CAAC;IAAEw9D,QAAAA,QAAQ;IAAV,OAAD,CADnC,EAEGD,WAAW,CAAC;IAAE99D,QAAAA,OAAO,SAAT;IAAW+9D,QAAAA,QAAQ;IAAnB,OAAD,CAFd,CADF;;IAOF,SAAK,uBAAL;IACE,UAAI72D,OAAJ,EAAa;IACX,4BACE5K,8BAAA,CAACsxB,WAAD;IAAaC,UAAAA,SAAS,EAAE;IAAUhW,UAAAA,KAAK,EAAE;aAAzC,eACEvb,8BAAA,CAACoxB,oBAAD;IAAsBzuB,UAAAA,SAAS,EAAC;IAAOrG,UAAAA,MAAM,EAAC;aAA9C,CADF,eAEE0D,8BAAA,CAACoxB,oBAAD;IAAsBzuB,UAAAA,SAAS,EAAC;IAAOrG,UAAAA,MAAM,EAAC;aAA9C,CAFF,CADF;IAMD;;IACD,0BACE0D,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAKu7D,SAAS;yBAAuC;WAAnE,EACGh+D,IAAI,KAAK,OAAT,IAAoB+D,YAAY,CAAC;IAAEw9D,QAAAA,QAAQ;IAAV,OAAD,CADnC,eAEEzhE,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAC;WAAf,EACG6+D,WAAW,CAAC;IAAE99D,QAAAA,OAAO,SAAT;IAAW+9D,QAAAA,QAAQ;IAAnB,OAAD,CADd,EAEGC,cAAc,CAAC;IAAED,QAAAA,QAAQ;IAAV,OAAD,CAFjB,CAFF,CADF;;IAUF,SAAK,MAAL;IACE,UAAI72D,OAAJ,EAAa;IACX,4BAAO5K,8BAAA,CAACsxB,WAAD;IAAa3uB,UAAAA,SAAS,EAAE,qBAAmB6Z;IAAS+U,UAAAA,SAAS,EAAE;IAAShW,UAAAA,KAAK,EAAE;aAA/E,CAAP;IACD;;IACD,0BACEvb,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAKu7D,SAAS,sBAAT,GAA6B1hD,KAA7B;yBAA+D;WAAlF,EACGg+B,UAAU,CAAC;IAAEinB,QAAAA,QAAQ;IAAV,OAAD,CADb,CADF;;IAMF,SAAK,aAAL;IACE,0BACEzhE,8BAAA,MAAA;IAAK2C,QAAAA,SAAS,EAAKu7D,SAAS,sBAAT,GAA6B1hD,KAA7B;WAAnB,EACG5R,OAAO,gBACN5K,8BAAA,CAACsxB,WAAD;IAAa3uB,QAAAA,SAAS,EAAC;IAAmB4uB,QAAAA,SAAS,EAAE;IAAShW,QAAAA,KAAK,EAAE;WAArE,eACEvb,8BAAA,CAACoxB,oBAAD;IAAsB90B,QAAAA,MAAM,EAAC;WAA7B,CADF,CADM,GAKNslE,gBAAgB,CAAC;IAAEH,QAAAA,QAAQ;IAAV,OAAD,CANpB,CADF;IAvFJ;;IAoGA,SAAO,IAAP;IACD;IAED5D,QAAQ,CAACt5D,WAAT,GAAuB,UAAvB;;ICvSO,IAAMu9D,iBAAiB,GAAG,SAApBA,iBAAoB,CAAC5iE,KAAD;IACvB,MAAAqK,OAAO,GAAerK,KAAK,QAA3B;IAAA,MAAS8K,QAAQ,GAAK9K,KAAK,SAA3B;;IAEF,MAAAxE,KAAkBsF,gBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAAlB;IAAA,MAAC2F,IAAI,QAAL;IAAA,MAAOC,OAAO,QAAd;;IACA,MAAAnF,KAAgCvC,gBAAK,CAAC8B,QAAN,CAAeyH,OAAf,CAAhC;IAAA,MAACw4D,WAAW,QAAZ;IAAA,MAAcC,cAAc,QAA5B;;IACA,MAAAngE,KAAkC7B,gBAAK,CAAC8B,QAAN,CAAe,kBAAf,CAAlC;IAAA,MAACmgE,YAAY,QAAb;IAAA,MAAeC,eAAe,QAA9B;;IAENliE,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd26D,IAAAA,cAAc,CAACz4D,OAAD,CAAd;IACD,GAFD,EAEG,CAAC9B,IAAD,CAFH;;IAIA,MAAM06D,kBAAkB,GAAG,SAArBA,kBAAqB,CAACvpD,CAAD;IACzBopD,IAAAA,cAAc,CAACD,WAAW,CAAC18D,GAAZ,CAAgB,UAACskB,MAAD;IAAY,mCAAMA;IAAQ1f,QAAAA,QAAQ,EAAE2O,CAAC,CAAC6G,MAAF,CAASV;YAAjC;IAA2C,KAAvE,CAAD,CAAd;IACD,GAFD;;IAIA,MAAMqjD,iBAAiB,GAAG,SAApBA,iBAAoB,CAACxpD,CAAD,EAAyCrT,KAAzC;IACxB,QAAM88D,UAAU,kBAAON,YAAvB;;IACAM,IAAAA,UAAU,CAAC98D,KAAD,CAAV,yBACK88D,UAAU,CAAC98D,KAAD;IACb0E,MAAAA,QAAQ,EAAE2O,CAAC,CAAC6G,MAAF,CAASV;UAFrB;IAKAijD,IAAAA,cAAc,CAACK,UAAD,CAAd;IACD,GARD;;IAUA,MAAMv/C,eAAe,GAAG,SAAlBA,eAAkB,CAAC2yB,OAAD;IACtB/tC,IAAAA,OAAO,CAAC+tC,OAAD,CAAP;IACD,GAFD;;IAIA,MAAM6sB,eAAe,GAAG,SAAlBA,eAAkB;IACtB56D,IAAAA,OAAO,CAAC,KAAD,CAAP;IACD,GAFD;;IAIA,MAAM66D,cAAc,GAAG,SAAjBA,cAAiB;IACrB76D,IAAAA,OAAO,CAAC,KAAD,CAAP;IAEA,QAAIsC,QAAJ,EAAcA,QAAQ,CAAC+3D,WAAD,CAAR;IACf,GAJD;;IAMA,sBACE/hE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACkH,OAAD;IACEO,IAAAA,IAAI,EAAEA;IACNob,IAAAA,QAAQ,EAAEC;IACV3b,IAAAA,OAAO,eACLnH,8BAAA,CAACyJ,MAAD;IACEC,MAAAA,IAAI,EAAC;IACLc,MAAAA,GAAG,EAAE,aAACo2B,EAAD;IACHshC,QAAAA,eAAe,CAAC,CAAGthC,EAAE,SAAF,IAAAA,EAAE,WAAF,SAAA,GAAAA,EAAE,CAAE9L,WAAP,QAAD,CAAf;IACD;IACD50B,MAAAA,IAAI,EAAC;IACLC,MAAAA,UAAU,EAAC;IACXqF,MAAAA,IAAI,EAAC;IACLiF,MAAAA,SAAS,EAAC;SARZ,EAUG,aAAWlB,OAAO,CAAC1J,MAAR,CAAe,UAAC8pB,MAAD;IAAY,aAAAA,MAAM,CAAC1f,QAAP;IAAe,KAA1C,EAA4C3N,MAAvD,SAAA,GACCiN,OAAO,CAACjN,MADT,YAAA,GAESo/D,eAAe,CAACnyD,OAAO,CAACjN,MAAT,CAZ3B;IAeFgI,IAAAA,YAAY,EAAC;IACbo1B,IAAAA,WAAW,EAAE;IACX32B,MAAAA,KAAK,EAAEk/D;IADI;IAGbt/D,IAAAA,SAAS,EAAC;OAvBZ,eAyBE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACoe,QAAD;IACEzb,IAAAA,SAAS,EAAC;IACVwG,IAAAA,KAAK,EAAC;IACN4V,IAAAA,OAAO,EAAEgjD,WAAW,CAAClkE,KAAZ,CAAkB,UAAC8rB,MAAD;IAAY,aAAAA,MAAM,CAAC1f,QAAP;IAAe,KAA7C;IACTsU,IAAAA,aAAa,EACXwjD,WAAW,CAACzV,IAAZ,CAAiB,UAAC3iC,MAAD;IAAY,aAAAA,MAAM,CAAC1f,QAAP;IAAe,KAA5C,KAAiD83D,WAAW,CAACzV,IAAZ,CAAiB,UAAC3iC,MAAD;IAAY,aAAA,CAACA,MAAM,CAAC1f,QAAR;IAAgB,KAA7C;IAEnDD,IAAAA,QAAQ,EAAEm4D;OAPZ,CADF,CADF,EAYGJ,WAAW,CAAC18D,GAAZ,CAAgB,UAACskB,MAAD,EAASpkB,KAAT;IACf,wBACEvF,8BAAA,MAAA;uBACY;IACV0F,MAAAA,GAAG,EAAEikB,MAAM,CAAClsB;IACZkF,MAAAA,SAAS,EAAC;IACV25D,MAAAA,SAAS,EAAE;IACX6B,MAAAA,WAAW,EAAE,qBAACvlD,CAAD;IACXA,QAAAA,CAAC,CAACg0C,YAAF,CAAewR,OAAf,CAAuB,OAAvB,EAAgC,KAAG74D,KAAnC;IACD;IACDitD,MAAAA,UAAU,EAAE,oBAAC55C,CAAD;IAAO,eAAAA,CAAC,CAAC7P,cAAF,EAAA;IAAkB;IACrC0pD,MAAAA,MAAM,EAAE,gBAAC75C,CAAD;IACN,YAAMhH,IAAI,GAAG,CAACgH,CAAC,CAACg0C,YAAF,CAAejrB,OAAf,CAAuB,OAAvB,CAAd;IACA,YAAMk5B,EAAE,GAAGt1D,KAAX;IAEA,YAAIqM,IAAI,KAAKipD,EAAb,EAAiBmH,cAAc,CAACpH,WAAW,CAACmH,WAAD,EAAcnwD,IAAd,EAAoBipD,EAApB,CAAZ,CAAd;IAClB;SAdH,eAgBE76D,8BAAA,CAACoe,QAAD;IACEzb,MAAAA,SAAS,EAAC;IACVC,MAAAA,IAAI,EAAE+mB,MAAM,CAAClsB;IACb0L,MAAAA,KAAK,EAAEwgB,MAAM,CAACxgB;IACd4V,MAAAA,OAAO,EAAEgjD,WAAW,CAACx8D,KAAD,CAAX,CAAmB0E;IAC5BD,MAAAA,QAAQ,EAAE,kBAAC4O,CAAD;IAAO,eAAAwpD,iBAAiB,CAACxpD,CAAD,EAAIrT,KAAJ,CAAjB;IAA2B;SAL9C,CAhBF,eAuBEvF,8BAAA,CAACsB,IAAD;IAAMsB,MAAAA,IAAI,EAAC;IAAcD,MAAAA,SAAS,EAAC;SAAnC,CAvBF,CADF;IA2BD,GA5BA,CAZH,CAzBF,eAmEE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACyJ,MAAD;IAAQC,IAAAA,IAAI,EAAC;IAAS/G,IAAAA,SAAS,EAAC;IAAOzC,IAAAA,IAAI,EAAC;IAAO0I,IAAAA,OAAO,EAAE05D;OAA5D,UAAA,CADF,eAIEtiE,8BAAA,CAACyJ,MAAD;IAAQC,IAAAA,IAAI,EAAC;IAASvJ,IAAAA,UAAU,EAAC;IAAUD,IAAAA,IAAI,EAAC;IAAO0I,IAAAA,OAAO,EAAE25D;OAAhE,SAAA,CAJF,CAnEF,CADF,CADF;IAgFD,CAvHM;;ICgDA,IAAMC,MAAM,GAAG,SAATA,MAAS,CAACtjE,KAAD;;;IAElB,MAAA0L,OAAO,GAiCL1L,KAAK,QAjCP;IAAA,MACA6C,KAAK,GAgCH7C,KAAK,MAjCP;IAAA,MAEA25D,IAAI,GA+BF35D,KAAK,KAjCP;IAAA,MAGAujE,WAAW,GA8BTvjE,KAAK,YAjCP;IAAA,MAIAm6D,MAAM,GA6BJn6D,KAAK,OAjCP;IAAA,MAKAovB,UAAU,GA4BRpvB,KAAK,WAjCP;IAAA,MAMAy8D,QAAQ,GA2BNz8D,KAAK,SAjCP;IAAA,MAOA0gE,cAAc,GA0BZ1gE,KAAK,eAjCP;IAAA,MAQA+jD,IAAI,GAyBF/jD,KAAK,KAjCP;IAAA,MASAw7D,QAAQ,GAwBNx7D,KAAK,SAjCP;IAAA,MAUA8rB,YAAY,GAuBV9rB,KAAK,aAjCP;IAAA,MAWAyC,QAAQ,GAsBNzC,KAAK,SAjCP;IAAA,MAaAyhE,YAAY,GAoBVzhE,KAAK,aAjCP;IAAA,MAcAqD,KAmBErD,KAAK,WAjCP;IAAA,MAcAw6D,UAAU,mBAAG,OAdb;IAAA,MAeAqH,gBAAgB,GAkBd7hE,KAAK,iBAjCP;IAAA,MAgBA2C,KAiBE3C,KAAK,aAjCP;IAAA,MAgBA87D,YAAY,mBAAG,MAhBf;IAAA,MAiBAnjC,WAAW,GAgBT34B,KAAK,YAjCP;IAAA,MAkBAqvB,iBAAiB,GAefrvB,KAAK,kBAjCP;IAAA,MAmBA04B,SAAS,GAcP14B,KAAK,UAjCP;IAAA,MAoBA6oB,UAAU,GAaR7oB,KAAK,WAjCP;IAAA,MAqBA29B,gBAAgB,GAYd39B,KAAK,iBAjCP;IAAA,MAsBAwjE,oBAAoB,GAWlBxjE,KAAK,qBAjCP;IAAA,MAuBAyjE,aAAa,GAUXzjE,KAAK,cAjCP;IAAA,MAwBA0jE,cAAc,GASZ1jE,KAAK,eAjCP;IAAA,MAyBA08D,WAAW,GAQT18D,KAAK,YAjCP;IAAA,MA0BA2jE,oBAAoB,GAOlB3jE,KAAK,qBAjCP;IAAA,MA2BA4jE,eAAe,GAMb5jE,KAAK,gBAjCP;IAAA,MA4BA6jE,cAAc,GAKZ7jE,KAAK,eAjCP;IAAA,MA6BA8jE,gBAAgB,GAId9jE,KAAK,iBAjCP;IAAA,MA8BA+jE,eAAe,GAGb/jE,KAAK,gBAjCP;IAAA,MA+BAgkE,uBAAuB,GAErBhkE,KAAK,wBAjCP;IAAA,MAgCAikE,gBAAgB,GACdjkE,KAAK,iBAjCP;;IAmCI,MAAA6E,KAA0C/D,gBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAA1C;IAAA,MAACshE,gBAAgB,QAAjB;IAAA,MAAmBC,mBAAmB,QAAtC;;IACA,MAAA9/D,KAAkBvD,gBAAK,CAAC8B,QAAN,CAAe,IAAf,CAAlB;IAAA,MAACwhE,IAAI,QAAL;IAAA,MAAOC,OAAO,QAAd;;IACN,MAAMjoC,WAAW,GAAGunC,oBAAoB,GAAGA,oBAAH,GAA0B,MAAlE;IACA,MAAMW,aAAa,GAAG3K,IAAI,CAACh5D,MAAL,CAAY,UAACjE,CAAD;IAAO,WAAAA,CAAC,CAACw/D,SAAF;IAAW,GAA9B,EAAgC9+D,MAAtD;IACA,MAAMy8B,UAAU,GAAG,CAACkqB,IAAI,GAAG,CAAR,IAAayX,QAAb,GAAwB,CAA3C;IACA,MAAM1hC,QAAQ,GAAGl6B,IAAI,CAAC8H,GAAL,CAASq8C,IAAI,GAAGyX,QAAhB,EAA0BM,YAA1B,CAAjB;IACA,MAAMyI,iBAAiB,GAAG,CAAAV,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEjkD,OAAhB,MAA4B,IAA5B,GAAmCk8C,YAAnC,GAAkD,OAAA8H,eAAe,SAAf,IAAAA,eAAe,WAAf,SAAA,GAAAA,eAAe,CAAEhkD,iDAASxiB,MAA1B,KAAoC,CAAhH;IAEA,MAAMonE,oBAAoB,GAAG14C,YAAY,KAAKw4C,aAAa,IAAIC,iBAAiB,GAAG,CAA1C,CAAzC;;IAEM,MAAAl9D,KAA4CvG,gBAAK,CAAC8B,QAAN,CAAe,IAAf,CAA5C;IAAA,MAAC6hE,iBAAiB,QAAlB;IAAA,MAAoBC,oBAAoB,QAAxC;;IACA,MAAAp9D,KAAkDxG,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAlD;IAAA,MAAC+hE,oBAAoB,QAArB;IAAA,MAAuBC,uBAAuB,QAA9C;;IACA,MAAAp9D,KAAsD1G,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAtD;IAAA,MAACiiE,sBAAsB,QAAvB;IAAA,MAAyBC,yBAAyB,QAAlD;;IAENhkE,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIq8D,oBAAJ,EAA0B;IACxBM,MAAAA,yBAAyB,CAAC,IAAD,CAAzB;IACAF,MAAAA,uBAAuB,CAAC,KAAD,CAAvB;IACD,KAHD,MAGO;IACLE,MAAAA,yBAAyB,CAAC,KAAD,CAAzB;IACAF,MAAAA,uBAAuB,CAAC,IAAD,CAAvB;IACD;IACF,GARD,EAQG,CAACJ,oBAAD,CARH;;IAUA,MAAMO,sBAAsB,GAAG,SAAzBA,sBAAyB;IAC7BP,IAAAA,oBAAoB,GAAGE,oBAAoB,CAAC,IAAD,CAAvB,GAAgCA,oBAAoB,CAAC,KAAD,CAAxE;IACAE,IAAAA,uBAAuB,CAAC,IAAD,CAAvB;IACAE,IAAAA,yBAAyB,CAAC,KAAD,CAAzB;IACD,GAJD;;IAMA,MAAME,oBAAoB,GAAG,SAAvBA,oBAAuB;IAC3BR,IAAAA,oBAAoB,GAAGE,oBAAoB,CAAC,IAAD,CAAvB,GAAgCA,oBAAoB,CAAC,KAAD,CAAxE;IACAE,IAAAA,uBAAuB,CAAC,KAAD,CAAvB;IACAE,IAAAA,yBAAyB,CAAC,IAAD,CAAzB;IACD,GAJD;;IAMA,MAAMG,uBAAuB,GAAG9hE,8BAAU,CAAC;IACzC,gCAA4B0hE,sBAAsB,IAAIL,oBADb;IAEzC,gCAA4BK,sBAAsB,IAAI,CAACL;IAFd,GAAD,CAA1C;IAKA,MAAMU,qBAAqB,GAAG/hE,8BAAU,CAAC;IACvC,gCAA4BwhE,oBAAoB,IAAI,CAACH,oBADd;IAEvC,gCAA4BG,oBAAoB,IAAIH;IAFb,GAAD,CAAxC;IAKA1jE,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACdk8D,IAAAA,OAAO,CAAC,CAACD,IAAF,CAAP;IACD,GAFD,EAEG,CAACjK,MAAD,CAFH;IAIAr5D,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIuwB,SAAS,IAAIA,SAAS,CAAC7Y,OAA3B,EAAoC;IAClC,UAAI8Y,WAAJ,EAAiBA,WAAW,CAAC,IAAD,EAAOurC,gBAAP,CAAX;IAClB;IACF,GAJD,EAIG,CAACA,gBAAD,CAJH;IAMApjE,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIuwB,SAAS,IAAI,CAACA,SAAS,CAAC7Y,OAA5B,EAAqCskD,mBAAmB,CAAC,KAAD,CAAnB;IACtC,GAFD,EAEG,CAACzrC,SAAD,CAFH;IAIA,MAAMysC,YAAY,GAAGhL,MAAM,CAACx5D,MAAP,CAAc,UAAC+d,CAAD;IAAO,WAAAA,CAAC,CAACk8C,OAAF;IAAS,GAA9B,CAArB;;IAEA,MAAM1mC,cAAc,GAAG,SAAjBA,cAAiB,CAACxa,CAAD;IACrB,QAAMnb,KAAK,GAAGmb,CAAC,CAAC6G,MAAF,CAAShiB,KAAvB;;IACA,QAAIo/B,gBAAJ,EAAsB;IACpBA,MAAAA,gBAAgB,CAACp/B,KAAD,CAAhB;IACD;IACF,GALD;;IAOA,MAAMu8D,cAAc,GAAG,SAAjBA,cAAiB,CAACp3D,IAAD,EAA6Bk3D,OAA7B;;;IACrB,QAAMkH,aAAa,yBACdtH,0BACF92D,QAAOk3D,aAFV;;IAKA,QAAIiH,gBAAJ,EAAsB;IACpBA,MAAAA,gBAAgB,CAACC,aAAD,CAAhB;IACD;IACF,GATD;;IAWA,MAAMsD,aAAa,GAAGjL,MAAM,CAACh0D,GAAP,CAAW,UAACuY,CAAD;IAAO,WAAC;IACvCzU,MAAAA,KAAK,EAAEyU,CAAC,CAACrZ,WAD8B;IAEvC9G,MAAAA,KAAK,EAAEmgB,CAAC,CAAChb,IAF8B;IAGvCqH,MAAAA,QAAQ,EAAE,CAAC2T,CAAC,CAACg6C;IAH0B,KAAD;IAItC,GAJoB,CAAtB;;IAMA,MAAM2M,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACh7D,OAAD;IAC5B,QAAMm3D,SAAS,GAAGn3D,OAAO,CAAClE,GAAR,CAChB,UAACskB,MAAD;IACE,aAAC66C,sBACInL,MAAM,CAAC5hB,IAAP,CAAY,UAACgtB,SAAD;IAAe,eAAAA,SAAS,CAAC7hE,IAAV,KAAmB+mB,MAAM,CAAClsB,KAA1B;IAA+B,OAA1D;IACHm6D,QAAAA,MAAM,EAAE,CAACjuC,MAAM,CAAC1f;YAFlB;IAIkB,KANJ,CAAlB;IAUA,QAAI02D,YAAJ,EAAkBA,YAAY,CAACD,SAAD,CAAZ;IACnB,GAZD;;IAcA,MAAMgE,qBAAqB,GAAG,SAAxBA,qBAAwB;IAC5B,QAAI3iE,KAAJ,EAAW;IACT,aAAO,eAAau5B,WAAb,MAAP;IACD,KAFD,MAEO,IAAIskC,cAAJ,EAAoB;IACzB,aAAO,aAAW7mC,UAAX,MAAA,GAAyBC,QAAzB,SAAA,GAAwCgiC,YAAxC,MAAA,GAAwD1/B,WAAxD,GAAsEogC,eAAe,CAACV,YAAD,CAA5F;IACD;;IACD,WAAO,aAAWA,YAAX,MAAA,GAA2B1/B,WAA3B,GAAyCogC,eAAe,CAACV,YAAD,CAA/D;IACD,GAPD;;IASA,MAAM2J,mBAAmB,GAAG,SAAtBA,mBAAsB;IAC1B,QAAIlB,iBAAiB,GAAG,CAApB,IAAyBN,gBAAzB,IAA6Cn4C,YAAjD,EAA+D;IAC7D,aAAO,cAAYy4C,iBAAZ,MAAA,GAAiCnoC,WAAjC,GAA+CogC,eAAe,CAAC+H,iBAAD,CAArE;IACD,KAFD,MAEO,IAAID,aAAa,IAAI,CAACL,gBAAlB,IAAsCn4C,YAA1C,EAAwD;IAC7D,aAAO,cAAYw4C,aAAZ,MAAA,GAA6BloC,WAA7B,GAA2CogC,eAAe,CAAC8H,aAAD,CAAjE;IACD,KAFM,MAEA,IAAI5D,cAAJ,EAAoB;IACzB,aAAO,aAAW7mC,UAAX,MAAA,GAAyBC,QAAzB,SAAA,GAAwCgiC,YAAxC,MAAA,GAAwD1/B,WAAxD,GAAsEogC,eAAe,CAACV,YAAD,CAA5F;IACD;;IACD,WAAO,aAAWA,YAAX,MAAA,GAA2B1/B,WAA3B,GAAyCogC,eAAe,CAACV,YAAD,CAA/D;IACD,GATD;;IAWA,sBACEh7D,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACG2rB,UAAU,iBACTtuB,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACq3B,KAAD;qBACY;IACVz0B,IAAAA,IAAI,EAAC;IACL4C,IAAAA,IAAI,EAAC;IACL4b,IAAAA,WAAW,EAAEmN;IACbvkB,IAAAA,QAAQ,EAAEopB;IACV31B,IAAAA,KAAK,EAAEsqB;IACPpH,IAAAA,OAAO,EAAE;IAAM,aAAAkc,gBAAgB,IAAIA,gBAAgB,CAAC,EAAD,CAApC;IAAwC;IACvDhyB,IAAAA,QAAQ,EAAED,OAAO,IAAI,CAAC0wD,SAAS,CAACjC,MAAD;IAC/B9hC,IAAAA,YAAY,EAAC;OATf,CADF,CAFJ,EAgBGqkC,WAAW,IAAIyI,YAAY,CAAC/nE,MAAb,GAAsB,CAArC,iBACC0D,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACG0hE,YAAY,CAACh/D,GAAb,CAAiB,UAACuY,CAAD;IACR,QAAAhb,IAAI,GAA2Bgb,CAAC,KAAhC;IAAA,QAAMrZ,WAAW,GAAcqZ,CAAC,YAAhC;IAAA,QAAmBk8C,OAAO,GAAKl8C,CAAC,QAAhC;IAER,QAAMu/C,aAAa,GAAGrD,OAAO,GACzBA,OAAO,CAACz0D,GAAR,CAAY,UAACrI,CAAD;IAAO,mCACdA;IACHiN,QAAAA,QAAQ,EAAEyvD,UAAU,CAAC92D,IAAD,CAAV,IAAoB82D,UAAU,CAAC92D,IAAD,CAAV,CAAiBirB,SAAjB,CAA2B,UAACuvC,EAAD;IAAQ,iBAAAA,EAAE,KAAKpgE,CAAC,CAACS,KAAT;IAAc,SAAjD,MAAuD,CAAC;YAFrE;IAGjB,KAHF,CADyB,GAKzB,EALJ;IAOA,wBACEuC,8BAAA,CAAC4J,QAAD;IACElE,MAAAA,GAAG,EAAE9C;IACLooB,MAAAA,YAAY,EAAE;IACdmI,MAAAA,eAAe,EAAE;IACjB/D,MAAAA,WAAW,EAAE7qB;IACbiB,MAAAA,IAAI,EAAE;IACN+D,MAAAA,OAAO,EAAE4zD;IACTnzD,MAAAA,QAAQ,EAAE,kBAACC,QAAD;IAAc,eAAA+vD,cAAc,CAACp3D,IAAD,EAAOqH,QAAP,CAAd;IAA8B;SAPxD,CADF;IAWD,GArBA,CADH,CADF,CAjBJ,EA4CGtI,QAAQ,iBAAI3B,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EAAiChB,QAAjC,CA5Cf,CADF,EA+CG+gE,oBAAoB,iBAAI1iE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EAAwC+/D,oBAAoB,CAACD,WAAD,CAA5D,CA/C3B,CADF,eAkDEziE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACG,CAACg5D,QAAD,IAAa3wC,YAAb,IAA6B,CAACpgB,OAA9B,iBACC5K,8BAAA,CAACoe,QAAD,eACMwZ;IACJ5tB,IAAAA,QAAQ,EAAE,kBAAC4S,KAAD;IACR,UAAIib,WAAJ,EAAiBA,WAAW,CAACjb,KAAK,CAAC6C,MAAN,CAAaV,OAAd,CAAX;IAClB;QAJH,CAFJ,EASGnU,OAAO,gBACN5K,8BAAA,CAACsxB,WAAD;IAAaE,IAAAA,SAAS,EAAE,CAACmqC,QAAD,IAAa3wC;OAArC,eACEhrB,8BAAA,CAACoxB,oBAAD;IAAsB90B,IAAAA,MAAM,EAAE;IAAS4D,IAAAA,IAAI,EAAE;OAA7C,CADF,CADM,gBAKNF,8BAAA,0BAAA,MAAA,EACG2jE,iBAAiB,gBAChB3jE,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAEyhE;IAAuBvvB,IAAAA,cAAc,EAAEqvB;OAAxD,eACElkE,8BAAA,CAACgjC,KAAD,MAAA,EAAQ2hC,mBAAmB,EAA3B,CADF,CADgB,gBAKhB3kE,8BAAA,OAAA;IAAM2C,IAAAA,SAAS,EAAEwhE;IAAyBtvB,IAAAA,cAAc,EAAEovB;OAA1D,eACEjkE,8BAAA,CAACgjC,KAAD,MAAA,EAAQ0hC,qBAAqB,EAA7B,CADF,CANJ,EAWGjB,iBAAiB,GAAG,CAApB,IAAyBb,cAAzB,IAA2Ce,iBAA3C,iBACC3jE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEyhE;OAAhB,eACEpkE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACyJ,MAAD;qBACY;IACVvJ,IAAAA,IAAI,EAAC;IACL2K,IAAAA,QAAQ,EAAE44D,iBAAiB,KAAKzI;IAChCpyD,IAAAA,OAAO,EAAEq6D;OAJX,EAMG,YAAUjI,YAAV,MAAA,GAA0B1/B,WAA1B,MANH,CADF,eAUEt7B,8BAAA,CAACyJ,MAAD;qBACY;IACVvJ,IAAAA,IAAI,EAAC;IACLyC,IAAAA,SAAS,EAAC;IACViG,IAAAA,OAAO,EAAEo6D;OAJX,mBAAA,CAVF,EAkBGE,uBAAuB,iBAAIljE,8BAAA,CAAC4kE,OAAD;IAASC,IAAAA,QAAQ,EAAE;IAAMliE,IAAAA,SAAS,EAAC;OAAnC,CAlB9B,CADF,CAZJ,EAoCGugE,uBAAuB,IAAIO,iBAAiB,GAAG,CAA/C,IAAoDE,iBAApD,iBACC3jE,8BAAA,MAAA;qBAAe;IAA4C2C,IAAAA,SAAS,EAAEyhE;OAAtE,EACGlB,uBAAuB,CAACJ,eAAe,SAAf,IAAAA,eAAe,WAAf,SAAA,GAAAA,eAAe,CAAEhkD,OAAlB,EAA2BikD,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAEjkD,OAA3C,CAD1B,CArCJ,CAdJ,CADF,EA2DG6jD,aAAa,iBACZ3iE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAAC8hE,iBAAD;IAAmBv4D,IAAAA,OAAO,EAAE+6D;IAAet6D,IAAAA,QAAQ,EAAEu6D;OAArD,CADF,CA5DJ,CAlDF,CADF;IAsHD,CAnRM;IAqRP/B,MAAM,CAAC/9D,YAAP,GAAsB;IACpB40D,EAAAA,MAAM,EAAE,EADY;IAEpBR,EAAAA,IAAI,EAAE,EAFc;IAGpBtqC,EAAAA,iBAAiB,EAAE,QAHC;IAIpBo0C,EAAAA,aAAa,EAAE,IAJK;IAKpB/G,EAAAA,WAAW,EAAE;IALO,CAAtB;;IC7UA,IAAMkJ,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACx+D,IAAD,EAAW68D,gBAAX,EAAqC1lE,KAArC;IACvB,MAAM0sB,GAAG,GAAG7jB,IAAI,SAAJ,IAAAA,IAAI,WAAJ,SAAA,GAAAA,IAAI,CAAEzG,MAAN,CAAa,UAACyF,IAAD;IAAU,WAAAA,IAAI,CAAC69D,gBAAD,CAAJ,KAA2B1lE,KAA3B;IAAgC,GAAvD,CAAZ;IACA,SAAO0sB,GAAG,CAAC7tB,MAAJ,GAAa,CAApB;IACD,CAHD;;IAKO,IAAMyoE,cAAc,GAAG,SAAjBA,cAAiB,CAC5BlM,IAD4B,EAE5BmM,YAF4B,EAG5B7B,gBAH4B,EAI5B8B,iBAJ4B,EAK5BC,WAL4B;IAO5B,MAAMjM,WAAW,GAAGJ,IAAI,CAACxzD,GAAL,CAAS,UAACC,IAAD;IAC3B,QACE4/D,WAAW,IACV5/D,IAAI,CAAC81D,SAAL,IAAkB,CAAC6J,iBADpB,IAEC9B,gBAAgB,IACf79D,IAAI,CAAC69D,gBAAD,CADL,IAEC6B,YAFD,IAGCF,gBAAgB,CAACE,YAAD,EAAe7B,gBAAf,EAAiC79D,IAAI,CAAC69D,gBAAD,CAArC,CAHjB,IAIC,CAAC8B,iBAPL,EAQE;IACA3/D,MAAAA,IAAI,CAAC81D,SAAL,GAAiB,IAAjB;IACD,KAVD,MAUO,IAAI6J,iBAAJ,EAAuB;IAC5B3/D,MAAAA,IAAI,CAAC81D,SAAL,GAAiB,KAAjB;IACD,KAFM,MAEA;IACL91D,MAAAA,IAAI,CAAC81D,SAAL,GAAiB,KAAjB;IACD;;IAED,WAAO91D,IAAP;IACD,GAlBmB,CAApB;IAoBA,SAAO2zD,WAAP;IACD,CA5BM;;IA8BP,IAAMkM,WAAW,GAAG,SAAdA,WAAc,CAACh7C,GAAD,EAAiBzkB,GAAjB;IAClB,MAAMY,IAAI,GAAG,IAAIyS,GAAJ,EAAb;IACA,SAAOoR,GAAG,CAACtqB,MAAJ,CAAW,UAACC,GAAD;IAChB,QAAMrC,KAAK,GAAGqC,GAAG,CAAC4F,GAAD,CAAjB;;IACA,QAAIY,IAAI,CAAC8S,GAAL,CAAS3b,KAAT,CAAJ,EAAqB;IACnB,aAAO,KAAP;IACD,KAFD,MAEO;IACL6I,MAAAA,IAAI,CAAC22C,GAAL,CAASx/C,KAAT;IACA,aAAO,IAAP;IACD;IACF,GARM,CAAP;IASD,CAXD;;IAaO,IAAM2nE,eAAe,GAAG,SAAlBA,eAAkB,CAACvM,IAAD,EAAkBsK,gBAAlB;IAC7B,MAAIA,gBAAJ,EAAsB;IACpB,WAAOgC,WAAW,CAACtM,IAAD,EAAOsK,gBAAP,CAAlB;IACD;;IACD,SAAOtK,IAAP;IACD,CALM;;ICiUP,IAAMljC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACz2B,KAAD;IACnB,MAAAxE,KAA0BwE,KAAK,UAA/B;IAAA,MAAAmzB,SAAS,mBAAG,cAAZ;IAER,MAAMgzC,aAAa,GAA2B;IAC5CtzC,IAAAA,eAAe,EAAE,sBAD2B;IAE5CC,IAAAA,gBAAgB,EAAE,kBAF0B;IAG5CC,IAAAA,OAAO,EAAE;IAHmC,GAA9C;IAKA,sBAAOjyB,8BAAA,CAACwR,OAAD,MAAA,EAAU6zD,aAAa,CAAChzC,SAAD,CAAvB,CAAP;IACD,CATD;;IAWO,IAAM5tB,YAAY,GAAG;IAC1BiF,EAAAA,IAAI,EAAE,MADoB;IAE1BxJ,EAAAA,IAAI,EAAE,UAFoB;IAG1By7D,EAAAA,QAAQ,EAAE,IAHgB;IAI1BY,EAAAA,QAAQ,EAAE,IAJgB;IAK1B+I,EAAAA,eAAe,EAAE,IALS;IAM1BxpB,EAAAA,aAAa,EAAE,EANW;IAO1B8jB,EAAAA,cAAc,EAAE,IAPU;IAQ1B2F,EAAAA,cAAc,EAAE,MARU;IAS1BtiB,EAAAA,IAAI,EAAE,CAToB;IAU1ByX,EAAAA,QAAQ,EAAE,EAVgB;IAW1B4B,EAAAA,SAAS,EAAE,IAXe;IAY1BzD,EAAAA,IAAI,EAAE,EAZoB;IAa1B4J,EAAAA,WAAW,EAAE,EAba;IAc1BpJ,EAAAA,MAAM,EAAE,EAdkB;IAe1BzuD,EAAAA,OAAO,EAAE,KAfiB;IAgB1B7I,EAAAA,KAAK,EAAE,KAhBmB;IAiB1By5D,EAAAA,YAAY,EAAE,EAjBY;IAkB1BnE,EAAAA,WAAW,EAAE,EAlBa;IAmB1BqC,EAAAA,UAAU,EAAE,EAnBc;IAoB1B8L,EAAAA,cAAc,EAAE,MApBU;IAqB1BlpC,EAAAA,sBAAsB,EAAE,GArBE;IAsB1B0mB,EAAAA,wBAAwB,EAAE,GAtBA;IAuB1B3qB,EAAAA,aAAa,EAAE1C;IAvBW,CAArB;;;IAqDoBznB,EAAAA,wBAAA;;IAOzB,gBAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IAJAkP,IAAAA,qBAAA,gBAA+CpO,gBAAK,CAAC0zB,SAAN,EAA/C;IACAtlB,IAAAA,uBAAA,gBAAiDpO,gBAAK,CAAC0zB,SAAN,EAAjD;IACAtlB,IAAAA,kBAAA,gBAA4CpO,gBAAK,CAAC0zB,SAAN,EAA5C;;IAgGAtlB,IAAAA,gBAAA,GAAa,UAACq3D,YAAD;IACX,UAAIr3D,KAAI,CAACE,KAAL,CAAWqoB,KAAf,EAAsB;IACpBvoB,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZzD,UAAAA,OAAO,EAAE;IADG,SAAd;IAGD;;IAED,UAAI66D,YAAJ,EAAkB;IAChBr3D,QAAAA,KAAI,CAACs3D,cAAL;IACD,OAFD,MAEO;IACLt3D,QAAAA,KAAI,CAACu3D,YAAL;IACD;IACF,KAZD;;IAcAv3D,IAAAA,kBAAA,GAAe;IACP,UAAA1T,KAAsF0T,KAAI,CAAClP,KAA3F;IAAA,UAAE0mE,SAAS,eAAX;IAAA,UAAalL,QAAQ,cAArB;IAAA,UAAuBkF,cAAc,oBAArC;IAAA,UAA6CiG,QAAQ,UAArD;IAAA,UAAuDC,QAAQ,cAA/D;IAAA,UAAiE3C,gBAAgB,sBAAjF;IAEA,UAAA5gE,KAAuD6L,KAAI,CAACE,KAA5D;IAAA,UAAEqoB,KAAK,WAAP;IAAA,UAASssB,IAAI,UAAb;IAAA,UAAeoU,WAAW,iBAA1B;IAAA,UAA4BqC,UAAU,gBAAtC;IAAA,UAAwC3xC,UAAU,gBAAlD;;IAEN3Z,MAAAA,KAAI,CAAC6pB,QAAL,CAAc,CAAC,CAAf,EAAkB,KAAlB;;IAEA,UAAM8tC,IAAI,GAAqB;IAC7B9iB,QAAAA,IAAI,MADyB;IAE7ByX,QAAAA,QAAQ,UAFqB;IAG7BrD,QAAAA,WAAW,aAHkB;IAI7BqC,QAAAA,UAAU,YAJmB;IAK7B3xC,QAAAA,UAAU;IALmB,OAA/B;;IAQA,UAAI,CAAC3Z,KAAI,CAAClP,KAAL,CAAW0gE,cAAhB,EAAgC;IAC9B,eAAOmG,IAAI,CAAC9iB,IAAZ;IACA,eAAO8iB,IAAI,CAACrL,QAAZ;IACD;;IAED,UAAI/jC,KAAJ,EAAW;IACT,YAAIivC,SAAJ,EAAe;IACbA,UAAAA,SAAS,CAACG,IAAD,CAAT,CACG9rC,IADH,CACQ,UAACC,GAAD;IACJ,gBAAI,CAACA,GAAG,CAACnS,UAAL,IAAoBmS,GAAG,CAACnS,UAAJ,IAAkBmS,GAAG,CAACnS,UAAJ,KAAmB3Z,KAAI,CAACE,KAAL,CAAWyZ,UAAxE,EAAqF;IACnF,kBAAM8wC,IAAI,GAAG3+B,GAAG,CAAC2+B,IAAjB;IACA,kBAAMmN,WAAW,GAAGC,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,SAAL,CAAetN,IAAf,CAAX,CAApB;IACA,kBAAMQ,MAAM,GAAGjrD,KAAI,CAACE,KAAL,CAAW+qD,MAAX,CAAkB/8D,MAAlB,GAA2B8R,KAAI,CAACE,KAAL,CAAW+qD,MAAtC,GAA+Cn/B,GAAG,CAACm/B,MAAlE;IACA,kBAAM+M,eAAe,GAAGvN,IAAI,CAACh5D,MAAL,CAAY,UAACyF,IAAD;IAAmB,uBAAAA,IAAI,CAAC81D,SAAL;IAAc,eAA7C,CAAxB;;IAEA,kBAAIhtD,KAAI,CAACi4D,iBAAL,CAAuBvnD,OAA3B,EAAoC;IAClC1Q,gBAAAA,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAA+B,EAA/B;IACD,eAFD,MAEO;IACL1Q,gBAAAA,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAA+B1Q,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAC3BsmD,eAAe,gBAAKh3D,KAAI,CAAC00D,eAAL,CAAqBhkD,SAAYsnD,gBAAtC,EAAwDjD,gBAAxD,CADY,GAE3BiC,eAAe,gBAAKgB,gBAAL,EAAuBjD,gBAAvB,CAFnB;IAGD;;IAED,kBAAMmD,YAAY,GAAGvB,cAAc,CACjCiB,WADiC,EAEjC53D,KAAI,CAAC00D,eAAL,CAAqBhkD,OAFY,EAGjCqkD,gBAHiC,EAIjC/0D,KAAI,CAACi4D,iBAAL,CAAuBvnD,OAJU,EAKjC1Q,KAAI,CAACm4D,YAAL,CAAkBznD,OALe,CAAnC;;IAOA1Q,cAAAA,KAAI,CAACC,QAAL,CAAc;IACZwqD,gBAAAA,IAAI,EAAEyN,YADM;IAEZ7D,gBAAAA,WAAW,EAAE5J,IAFD;IAGZQ,gBAAAA,MAAM,QAHM;IAIZzhC,gBAAAA,SAAS,EAAE3L,YAAY,CAACq6C,YAAD,EAAel4D,KAAI,CAAClP,KAAL,CAAW85D,iBAA1B,EAA6C5qD,KAAI,CAACi4D,iBAAL,CAAuBvnD,OAApE,CAJX;IAKZk8C,gBAAAA,YAAY,EAAE9gC,GAAG,CAAChM,KALN;IAMZtjB,gBAAAA,OAAO,EAAE,KANG;IAOZ7I,gBAAAA,KAAK,EAAE,CAAC82D,IAAI,CAACv8D,MAPD;IAQZ+1B,gBAAAA,SAAS,EAAE;IARC,eAAd;IAUD;IACF,WAlCH,WAmCS;IACLjkB,YAAAA,KAAI,CAACC,QAAL,CAAc;IACZzD,cAAAA,OAAO,EAAE,KADG;IAEZ7I,cAAAA,KAAK,EAAE,IAFK;IAGZswB,cAAAA,SAAS,EAAE;IAHC,aAAd;IAKD,WAzCH;IA0CD;IACF,OA7CD,MA6CO;IACG,YAAAgnC,MAAM,GAAKjrD,KAAI,CAACE,KAAL,OAAX;IAER,YAAMqrD,YAAY,GAAGF,UAAU,CAACJ,MAAD,EAASwM,QAAT,EAAmBnM,UAAnB,CAA/B;IACA,YAAM8M,YAAY,GAChBV,QAAQ,IAAIC,IAAI,CAACh+C,UAAL,KAAoBpb,SAAhC,GAA4Cm5D,QAAQ,CAACnM,YAAD,EAAeoM,IAAI,CAACh+C,UAApB,CAApD,GAAsF4xC,YADxF;IAEA,YAAMO,UAAU,GAAGD,QAAQ,CAACZ,MAAD,EAASmN,YAAT,EAAuBnP,WAAvB,CAA3B;IACA,YAAIoP,YAAY,GAAGvM,UAAnB;IACA,YAAMc,YAAY,GAAGd,UAAU,CAAC59D,MAAhC;;IACA,YAAIsjE,cAAc,IAAI3c,IAAlB,IAA0ByX,QAA9B,EAAwC;IACtC+L,UAAAA,YAAY,GAAGhM,YAAY,CAACgM,YAAD,EAAexjB,IAAf,EAAqByX,QAArB,CAA3B;IACD;;IAED,YAAMgM,cAAc,GAAGt4D,KAAI,CAACE,KAAL,CAAW+qD,MAAX,CAAkB/8D,MAAlB,GAA2B8R,KAAI,CAACE,KAAL,CAAW+qD,MAAtC,GAA+CA,MAAtE;IACA,YAAM+M,eAAe,GAAGK,YAAY,CAAC5mE,MAAb,CAAoB,UAACyF,IAAD;IAAmB,iBAAAA,IAAI,CAAC81D,SAAL;IAAc,SAArD,CAAxB;IACA,YAAMuL,mBAAmB,GAAGV,IAAI,CAACC,KAAL,CAAWD,IAAI,CAACE,SAAL,CAAeM,YAAf,CAAX,CAA5B;;IAEA,YAAIr4D,KAAI,CAACi4D,iBAAL,CAAuBvnD,OAA3B,EAAoC;IAClC1Q,UAAAA,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAA+B,EAA/B;IACD,SAFD,MAEO;IACL1Q,UAAAA,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAA+B1Q,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAC3BsmD,eAAe,gBAAKh3D,KAAI,CAAC00D,eAAL,CAAqBhkD,SAAYsnD,gBAAtC,EAAwDjD,gBAAxD,CADY,GAE3BiC,eAAe,gBAAKgB,gBAAL,EAAuBjD,gBAAvB,CAFnB;IAGD;;IAED,YAAMmD,YAAY,GAAGvB,cAAc,CACjC4B,mBADiC,EAEjCv4D,KAAI,CAAC00D,eAAL,CAAqBhkD,OAFY,EAGjCqkD,gBAHiC,EAIjC/0D,KAAI,CAACi4D,iBAAL,CAAuBvnD,OAJU,EAKjC1Q,KAAI,CAACm4D,YAAL,CAAkBznD,OALe,CAAnC;;IAQA1Q,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZ2sD,UAAAA,YAAY,cADA;IAEZj5D,UAAAA,KAAK,EAAE,CAAC0kE,YAAY,CAACnqE,MAFT;IAGZ+1B,UAAAA,SAAS,EAAE,kBAHC;IAIZuF,UAAAA,SAAS,EAAE3L,YAAY,CAACw6C,YAAD,EAAer4D,KAAI,CAAClP,KAAL,CAAW85D,iBAA1B,EAA6C5qD,KAAI,CAACi4D,iBAAL,CAAuBvnD,OAApE,CAJX;IAKZu6C,UAAAA,MAAM,EAAEqN,cALI;IAMZjE,UAAAA,WAAW,EAAEvI,UAND;IAOZrB,UAAAA,IAAI,EAAEyN;IAPM,SAAd;IASD;IACF,KA5GD;;IA8GAl4D,IAAAA,cAAA,GAAuB,UAAC0qD,UAAD,EAAa7uD,QAAb;IACb,UAAA4uD,IAAI,GAAKzqD,KAAI,CAACE,KAAL,KAAT;IAEF,UAAA5T,KAAiC0T,KAAI,CAAClP,KAAtC;IAAA,UAAE+4B,QAAQ,cAAV;IAAA,UAAYkrC,gBAAgB,sBAA5B;;IAEN,UAAI/0D,KAAI,CAACm4D,YAAL,CAAkBznD,OAAlB,IAA6Bg6C,UAAU,KAAK,CAAC,CAA7C,IAAkD,CAAC7uD,QAAvD,EAAiE;IAC/DmE,QAAAA,KAAI,CAACm4D,YAAL,CAAkBznD,OAAlB,GAA4B,KAA5B;IACA1Q,QAAAA,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAA+B,EAA/B;IAEA,YAAM8nD,SAAO,GAAGjpE,KAAK,CAACiU,IAAN,CAAW;IAAEtV,UAAAA,MAAM,EAAEu8D,IAAI,CAACv8D;IAAf,SAAX,EAAoC,UAACuqE,CAAD,EAAI5pE,CAAJ;IAAU,iBAAAA,CAAA;IAAC,SAA/C,CAAhB;IAEA,YAAM6pE,SAAO,GAAGlO,eAAe,CAC7BC,IAD6B,EAE7B+N,SAF6B,EAG7B;IACExL,UAAAA,SAAS,EAAE;IADb,SAH6B,EAM7BhtD,KAAI,CAAClP,KAAL,CAAW85D,iBANkB,CAA/B;;IASA5qD,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZwqD,UAAAA,IAAI,EAAEiO,SADM;IAEZlvC,UAAAA,SAAS,EAAE;IAAE7Y,YAAAA,OAAO,EAAE,KAAX;IAAkBR,YAAAA,aAAa,EAAE;IAAjC;IAFC,SAAd;;IAKA,YAAI0Z,QAAJ,EAAc;IACZ,cAAI7pB,KAAI,CAAClP,KAAL,CAAWikE,gBAAf,EAAiC;IAC/BlrC,YAAAA,QAAQ,CAAC2uC,SAAD,EAAU38D,QAAV,EAAoBmE,KAAI,CAAC00D,eAAL,CAAqBhkD,OAAzC,EAAkD1Q,KAAI,CAACm4D,YAAL,CAAkBznD,OAApE,CAAR;IACD,WAFD,MAEO;IAELmZ,YAAAA,QAAQ,CAAC2uC,SAAD,EAAU38D,QAAV,EAAoB6uD,UAAU,KAAK,CAAC,CAAhB,GAAoB,EAApB,GAAyBgO,SAAO,CAACjnE,MAAR,CAAe,UAACjE,CAAD;IAAO,qBAAAA,CAAC,CAACw/D,SAAF;IAAW,aAAjC,CAA7C,CAAR;IACD;IACF;;IAED;IACD;;IAED,UAAM2L,OAAO,GAAG,CAACjO,UAAD,CAAhB;IACA,UAAMkO,OAAO,GAAGnO,IAAI,CAACC,UAAD,CAApB;IACA,UAAImO,gBAAgB,GAAGnO,UAAU,KAAK,CAAC,CAAhB,GAAoB,EAApB,GAAyB,CAACkO,OAAD,CAAhD;IAEA,UAAI1N,OAAO,GAAST,IAApB;;IACA,UAAIC,UAAU,IAAI,CAAlB,EAAqB;IACnBQ,QAAAA,OAAO,GAAGV,eAAe,CACvBC,IADuB,EAEvBkO,OAFuB,EAGvB;IACE3L,UAAAA,SAAS,EAAEnxD;IADb,SAHuB,EAMvBmE,KAAI,CAAClP,KAAL,CAAW85D,iBANY,CAAzB;;IASA5qD,QAAAA,KAAI,CAAC84D,mBAAL;;IAEA94D,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZwqD,UAAAA,IAAI,EAAES,OADM;IAEZ1hC,UAAAA,SAAS,EAAE3L,YAAY,CAACqtC,OAAD,EAAUlrD,KAAI,CAAClP,KAAL,CAAW85D,iBAArB,EAAwC5qD,KAAI,CAACi4D,iBAAL,CAAuBvnD,OAA/D;IAFX,SAAd;;IAKA,YAAI1Q,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,IAAgC7U,QAApC,EAA8C;IAC5Cg9D,UAAAA,gBAAgB,yCAASD;IAAS5L,YAAAA,SAAS,EAAEnxD;mBAAemE,KAAI,CAAC00D,eAAL,CAAqBhkD,QAAjF;IACD;;IAED,YAAI,CAAC7U,QAAD,IAAak5D,gBAAjB,EAAmC;IACjC8D,UAAAA,gBAAgB,GAAG74D,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,CAA6Bjf,MAA7B,CACjB,UAACyF,IAAD;IAAmB,mBAAAA,IAAI,CAAC69D,gBAAD,CAAJ,KAA2B6D,OAAO,CAAC7D,gBAAD,CAAlC;IAAoD,WADtD,CAAnB;IAGD;;IACD/0D,QAAAA,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAA+BsmD,eAAe,CAAC6B,gBAAD,EAAmB9D,gBAAnB,CAA9C;IACD,OA3BD,MA2BO,IAAIrK,UAAU,KAAK,CAAC,CAAhB,IAAqB1qD,KAAI,CAAC00D,eAAL,CAAqBhkD,OAA9C,EAAuD;IAC5DmoD,QAAAA,gBAAgB,GAAG74D,KAAI,CAAC00D,eAAL,CAAqBhkD,OAAxC;IACD;;IAED,UAAImZ,QAAJ,EAAc;IACZ,YAAI7pB,KAAI,CAAClP,KAAL,CAAWikE,gBAAf,EAAiC;IAC/BlrC,UAAAA,QAAQ,CACN8uC,OADM,EAEN98D,QAFM,EAGN6uD,UAAU,KAAK,CAAC,CAAhB,IAAqB,CAAAmO,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,CAAE3qE,MAAlB,MAA6B,CAAlD,GAAsD,EAAtD,GAA2D8R,KAAI,CAAC00D,eAAL,CAAqBhkD,OAH1E,EAIN1Q,KAAI,CAACm4D,YAAL,CAAkBznD,OAJZ,CAAR;IAMD,SAPD,MAOO;IAELmZ,UAAAA,QAAQ,CAAC8uC,OAAD,EAAU98D,QAAV,EAAoB6uD,UAAU,KAAK,CAAC,CAAhB,GAAoB,EAApB,GAAyBQ,OAAO,CAACz5D,MAAR,CAAe,UAACjE,CAAD;IAAO,mBAAAA,CAAC,CAACw/D,SAAF;IAAW,WAAjC,CAA7C,CAAR;IACD;IACF;IACF,KAtFD;;IAwFAhtD,IAAAA,iBAAA,GAAmC,UAACnE,QAAD,EAAW2tB,SAAX,EAAsBuvC,cAAtB;IAC3B,UAAAzsE,KAAiC0T,KAAI,CAAClP,KAAtC;IAAA,UAAE+4B,QAAQ,cAAV;IAAA,UAAYkrC,gBAAgB,sBAA5B;IAEE,UAAAtK,IAAI,GAAKzqD,KAAI,CAACE,KAAL,KAAT;IAER,UAAMy4D,OAAO,GAAGppE,KAAK,CAACiU,IAAN,CAAW;IAAEtV,QAAAA,MAAM,EAAEu8D,IAAI,CAACv8D;IAAf,OAAX,EAAoC,UAACuqE,CAAD,EAAI5pE,CAAJ;IAAU,eAAAA,CAAA;IAAC,OAA/C,CAAhB;IAEA,UAAMq8D,OAAO,GAAGV,eAAe,CAC7BC,IAD6B,EAE7BkO,OAF6B,EAG7B;IACE3L,QAAAA,SAAS,EAAEnxD;IADb,OAH6B,EAM7BmE,KAAI,CAAClP,KAAL,CAAW85D,iBANkB,CAA/B;IASA,UAAM1rC,aAAa,GAAa,EAAhC;IAEAgsC,MAAAA,OAAO,CAACv8D,OAAR,CAAgB,UAACuI,IAAD,EAAOI,GAAP;IACd,YAAIJ,IAAI,CAAC81D,SAAT,EAAoB;IAClB9tC,UAAAA,aAAa,CAAC9I,IAAd,CAAmB9e,GAAnB;IACD;IACF,OAJD;IAMA,UAAI4gE,YAAY,GAAG,EAAnB;;IAEA,UAAIr8D,QAAJ,EAAc;IACZmE,QAAAA,KAAI,CAAC84D,mBAAL;;IACAZ,QAAAA,YAAY,GACV1uC,SAAS,KAAKjrB,SAAd,kBACSyB,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,IAAgC,IAAQw6C,OAAO,CAACz5D,MAAR,CAAe,UAACjE,CAAD;IAAO,iBAAAA,CAAC,CAACw/D,SAAF;IAAW,SAAjC,EADjD,GAEIhtD,KAAI,CAAC00D,eAAL,CAAqBhkD,OAH3B;IAID,OAND,MAMO,IAAI,CAAC7U,QAAD,IAAak9D,cAAb,IAA+BhE,gBAAnC,EAAqD;IAC1D/0D,QAAAA,KAAI,CAACm4D,YAAL,CAAkBznD,OAAlB,GAA4B,KAA5B;IACA1Q,QAAAA,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,kBAAoC1Q,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,IAAgC,IAAQw6C,QAA5E;IAEAlrD,QAAAA,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAA+B1Q,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,CAA6Bjf,MAA7B,CAAoC,UAACunE,KAAD;IACjE,iBAAO,CAAC9N,OAAO,CAAChN,IAAR,CAAa,UAAC+a,KAAD;IAAW,mBAAAD,KAAK,CAACjE,gBAAD,CAAL,KAA4BkE,KAAK,CAAClE,gBAAD,CAAjC;IAAmD,WAA3E,CAAR;IACD,SAF8B,CAA/B;IAGD,OAPM,MAOA;IACL/0D,QAAAA,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAA+B,EAA/B;IACA1Q,QAAAA,KAAI,CAACm4D,YAAL,CAAkBznD,OAAlB,GAA4B,KAA5B;IACD;;IAED,UAAI,EAAEqoD,cAAc,IAAI,CAACl9D,QAArB,CAAJ,EAAoC;IAClCmE,QAAAA,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAA+BsmD,eAAe,CAACkB,YAAD,EAAenD,gBAAf,CAA9C;IACD;;IAED,UAAIlrC,QAAJ,EAAc;IACZ,YAAI7pB,KAAI,CAAClP,KAAL,CAAWikE,gBAAf,EAAiC;IAC/B,cAAIgE,cAAc,IAAI,CAACl9D,QAAvB,EAAiC;IAC/BguB,YAAAA,QAAQ,CACN3K,aADM,EAENrjB,QAFM,EAGNm7D,eAAe,CAACh3D,KAAI,CAAC00D,eAAL,CAAqBhkD,OAAtB,EAA+BqkD,gBAA/B,CAHT,EAIN/0D,KAAI,CAACm4D,YAAL,CAAkBznD,OAJZ,CAAR;IAMD,WAPD,MAOO;IACLmZ,YAAAA,QAAQ,CAAC3K,aAAD,EAAgBrjB,QAAhB,EAA0Bm7D,eAAe,CAACkB,YAAD,EAAenD,gBAAf,CAAzC,EAA2E/0D,KAAI,CAACm4D,YAAL,CAAkBznD,OAA7F,CAAR;IACD;IACF,SAXD,MAWO;IACLmZ,UAAAA,QAAQ,CACN3K,aADM,EAENrjB,QAFM,EAGNqvD,OAAO,CAACz5D,MAAR,CAAe,UAACjE,CAAD;IAAO,mBAAAA,CAAC,CAACw/D,SAAF;IAAW,WAAjC,CAHM,EAINxjC,SAJM,CAAR;IAMD;IACF;;IAEDxpB,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZwqD,QAAAA,IAAI,EAAES,OADM;IAEZ1hC,QAAAA,SAAS,EAAE3L,YAAY,CAACqtC,OAAD,EAAUlrD,KAAI,CAAClP,KAAL,CAAW85D,iBAArB;IAFX,OAAd;IAID,KA1ED;;IA4EA5qD,IAAAA,kBAAA,GAAgD,UAACk5D,OAAD;IAC9Cl5D,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZ40C,QAAAA,IAAI,EAAEqkB;IADM,OAAd;IAGD,KAJD;;IAMAl5D,IAAAA,kBAAA,GAAqC,UAACsyD,SAAD;IACnCtyD,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZgrD,QAAAA,MAAM,EAAEqH;IADI,OAAd;IAGD,KAJD;;IAMAtyD,IAAAA,uBAAA,GAA+C,UAACmpD,cAAD;IACrC,UAAA+N,eAAe,GAAKl3D,KAAI,CAAClP,KAAL,gBAApB;;IAERkP,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZgpD,QAAAA,WAAW,EAAEiO,eAAe,kBAAO/N,eAAP,GAAyBA,cAAc,CAAC9zD,KAAf,CAAqB,CAAC,CAAtB,CADzC;IAEZw/C,QAAAA,IAAI,EAAE;IAFM,OAAd;IAID,KAPD;;IASA70C,IAAAA,sBAAA,GAA6C,UAAC4yD,aAAD;IAC3C5yD,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZqrD,QAAAA,UAAU,EAAEsH,aADA;IAEZ/d,QAAAA,IAAI,EAAE;IAFM,OAAd;IAID,KALD;;IAOA70C,IAAAA,sBAAA,GAA6C,UAACm5D,aAAD;IAC3Cn5D,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZ0Z,QAAAA,UAAU,EAAEw/C,aADA;IAEZtkB,QAAAA,IAAI,EAAE;IAFM,OAAd;IAID,KALD;;IAOA70C,IAAAA,sBAAA,GAAmB;IACjBA,MAAAA,KAAI,CAAC00D,eAAL,CAAqBhkD,OAArB,GAA+B,EAA/B;IACA1Q,MAAAA,KAAI,CAACi4D,iBAAL,CAAuBvnD,OAAvB,GAAiC,IAAjC;IACA1Q,MAAAA,KAAI,CAACm4D,YAAL,CAAkBznD,OAAlB,GAA4B,KAA5B;;IAEA1Q,MAAAA,KAAI,CAACypB,WAAL,CAAiB,KAAjB;;IAEAzpB,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZupB,QAAAA,SAAS,EAAE3L,YAAY,CAAC,EAAD,EAAK7d,KAAI,CAAClP,KAAL,CAAW85D,iBAAhB,EAAmC5qD,KAAI,CAACi4D,iBAAL,CAAuBvnD,OAA1D;IADX,OAAd;IAGD,KAVD;;IAYA1Q,IAAAA,yBAAA,GAAsB;IACpBA,MAAAA,KAAI,CAACi4D,iBAAL,CAAuBvnD,OAAvB,GAAiC,KAAjC;IACD,KAFD;;IAIA1Q,IAAAA,qBAAA,GAAkB;IAChBA,MAAAA,KAAI,CAACm4D,YAAL,CAAkBznD,OAAlB,GAA4B1Q,KAAI,CAAClP,KAAL,CAAWikE,gBAAX,GAA8B,IAA9B,GAAqC,KAAjE;;IACA/0D,MAAAA,KAAI,CAACypB,WAAL,CAAiB,IAAjB,EAAuB,IAAvB;IACD,KAHD;;IA9aE,QAAMlB,KAAK,IAAG,eAAevoB,KAAI,CAAClP,KAAvB,CAAX;IACA,QAAM25D,IAAI,GAAG35D,KAAK,CAAC25D,IAAN,IAAc,EAA3B;IACA,QAAMQ,MAAM,GAAGn6D,KAAK,CAACm6D,MAAN,IAAgB,EAA/B;IAEAjrD,IAAAA,KAAI,CAACE,KAAL,GAAa;IACXqoB,MAAAA,KAAK,OADM;IAEXkiC,MAAAA,IAAI,EAAE,CAACliC,KAAD,GAASkiC,IAAT,GAAgB,EAFX;IAGX4J,MAAAA,WAAW,EAAE,CAAC9rC,KAAD,GAASkiC,IAAT,GAAgB,EAHlB;IAIXQ,MAAAA,MAAM,EAAE,CAAC1iC,KAAD,GAAS0iC,MAAT,GAAkB,EAJf;IAKXpW,MAAAA,IAAI,EAAE/jD,KAAK,CAAC+jD,IALD;IAMXoU,MAAAA,WAAW,EAAEn4D,KAAK,CAACm4D,WANR;IAOXqC,MAAAA,UAAU,EAAEx6D,KAAK,CAACw6D,UAPP;IAQXsB,MAAAA,YAAY,EAAE,CAACrkC,KAAD,GAASkiC,IAAI,CAACv8D,MAAd,GAAuB,CAR1B;IASXsO,MAAAA,OAAO,EAAE,CAAC+rB,KAAD,GAASz3B,KAAK,CAAC0L,OAAf,GAAyB,IATvB;IAUX7I,MAAAA,KAAK,EAAE,CAAC40B,KAAD,GAASz3B,KAAK,CAAC6C,KAAf,GAAuB,KAVnB;IAWXswB,MAAAA,SAAS,EAAEnzB,KAAK,CAACmzB,SAXN;IAYXuF,MAAAA,SAAS,EAAE3L,YAAY,CAAC,EAAD,CAZZ;IAaXlE,MAAAA,UAAU,EAAEpb;IAbD,KAAb;IAgBAyB,IAAAA,KAAI,CAACs3D,cAAL,GAAsBzqC,QAAQ,CAAC/7B,KAAK,CAACo9B,sBAAP,EAA+BluB,KAAI,CAACu3D,YAApC,CAA9B;;IACD;;IAED6B,EAAAA,eAAA,kBAAA,GAAA;IACE,SAAKC,UAAL;IACD,GAFD;;IAIAD,EAAAA,eAAA,mBAAA,GAAA,UAAmBnwD,SAAnB,EAA0CC,SAA1C;IAAA,oBAAA;;IACE,QAAI,CAAC,KAAKhJ,KAAL,CAAWqoB,KAAhB,EAAuB;IACrB,UAAItf,SAAS,CAACtV,KAAV,KAAoB,KAAK7C,KAAL,CAAW6C,KAAnC,EAA0C;IAClC,YAAArH,KAA6B,KAAKwE,KAAlC;IAAA,YAAEqD,YAAF;IAAA,YAAEs2D,IAAI,mBAAG,OAAT;IAAA,YAAah3D,cAAb;IAAA,YAAaw3D,MAAM,mBAAG,OAAtB;IAEN,aAAKhrD,QAAL,CAAc;IACZwqD,UAAAA,IAAI,MADQ;IAEZ4J,UAAAA,WAAW,EAAE5J,IAFD;IAGZQ,UAAAA,MAAM,QAHM;IAIZt3D,UAAAA,KAAK,EAAE,KAAK7C,KAAL,CAAW6C,KAAX,IAAoB,KAJf;IAKZswB,UAAAA,SAAS,EAAE,KAAKnzB,KAAL,CAAWmzB,SALV;IAMZ4wB,UAAAA,IAAI,EAAE,CANM;IAOZ+X,UAAAA,YAAY,EAAEnC,IAAI,CAACv8D,MAAL,IAAe,CAPjB;IAQZs7B,UAAAA,SAAS,EAAE3L,YAAY,CAAC,EAAD;IARX,SAAd;IAUD;;IACD,UAAI5U,SAAS,CAACzM,OAAV,KAAsB,KAAK1L,KAAL,CAAW0L,OAArC,EAA8C;IACtC,YAAA7G,KAA6B,KAAK7E,KAAlC;IAAA,YAAEqE,YAAF;IAAA,YAAEs1D,IAAI,mBAAG,OAAT;IAAA,YAAatyD,cAAb;IAAA,YAAa8yD,MAAM,mBAAG,OAAtB;IACN,aAAKhrD,QAAL,CACE;IACEwqD,UAAAA,IAAI,MADN;IAEE4J,UAAAA,WAAW,EAAE5J,IAFf;IAGEQ,UAAAA,MAAM,QAHR;IAIEzuD,UAAAA,OAAO,EAAE,KAAK1L,KAAL,CAAW0L,OAAX,IAAsB,KAJjC;IAKE7I,UAAAA,KAAK,EAAE,KAAK7C,KAAL,CAAW6C,KAAX,IAAoB,KAL7B;IAMEswB,UAAAA,SAAS,EAAE,KAAKnzB,KAAL,CAAWmzB,SANxB;IAOE4wB,UAAAA,IAAI,EAAE,CAPR;IAQE+X,UAAAA,YAAY,EAAEnC,IAAI,CAACv8D,MAAL,IAAe,CAR/B;IASEs7B,UAAAA,SAAS,EAAE3L,YAAY,CAAC,EAAD;IATzB,SADF,EAYE;IACE7d,UAAAA,KAAI,CAACq5D,UAAL;IACD,SAdH;IAgBD;IACF;;IAED,QAAInwD,SAAS,CAAC2rC,IAAV,KAAmB,KAAK30C,KAAL,CAAW20C,IAAlC,EAAwC;IAC9B,UAAAF,YAAY,GAAK,KAAK7jD,KAAL,aAAjB;IACR,UAAI6jD,YAAJ,EAAkBA,YAAY,CAAC,KAAKz0C,KAAL,CAAW20C,IAAZ,CAAZ;IACnB;;IAED,QACE3rC,SAAS,CAAC2rC,IAAV,KAAmB,KAAK30C,KAAL,CAAW20C,IAA9B,IACA3rC,SAAS,CAACoiD,UAAV,KAAyB,KAAKprD,KAAL,CAAWorD,UADpC,IAEApiD,SAAS,CAAC+/C,WAAV,KAA0B,KAAK/oD,KAAL,CAAW+oD,WAFrC,IAGA//C,SAAS,CAACyQ,UAAV,KAAyB,KAAKzZ,KAAL,CAAWyZ,UAJtC,EAKE;IACA,UAAI,CAAC,KAAK7oB,KAAL,CAAW0L,OAAhB,EAAyB;IAUvB,YAAM66D,YAAY,GAAGnuD,SAAS,CAACyQ,UAAV,KAAyB,KAAKzZ,KAAL,CAAWyZ,UAAzD;IACA,aAAK0/C,UAAL,CAAgBhC,YAAhB;IACD;IACF;IACF,GA9DD;;IAwZA+B,EAAAA,eAAA,OAAA,GAAA;IACQ,QAAA9sE,KAuBF,KAAKwE,KAvBH;IAAA,QACJy8D,QAAQ,cADJ;IAAA,QAEJjyD,IAAI,UAFA;IAAA,QAGJxJ,IAAI,UAHA;IAAA,QAIJs8D,eAAe,qBAJX;IAAA,QAKJpgE,SAAS,eALL;IAAA,QAMJkgE,SAAS,eANL;IAAA,QAOJmB,UAAU,gBAPN;IAAA,QAQJ2B,iBAAiB,uBARb;IAAA,QASJsI,UAAU,gBATN;IAAA,QAUJ5rB,aAAa,mBAVT;IAAA,QAWJ9wB,YAAY,kBAXR;IAAA,QAYJuxC,QAAQ,cAZJ;IAAA,QAaJqD,cAAc,oBAbV;IAAA,QAcJ2F,cAAc,oBAdV;IAAA,QAeJ7K,QAAQ,cAfJ;IAAA,QAgBJ1X,wBAAwB,8BAhBpB;IAAA,QAiBJsc,UAAU,gBAjBN;IAAA,QAkBJ9D,YAAY,kBAlBR;IAAA,QAmBJnjC,aAAa,mBAnBT;IAAA,QAoBJ11B,SAAS,eApBL;IAAA,QAqBJ6iE,cAAc,oBArBV;IAAA,QAsBJrC,gBAAgB,sBAtBZ;IAyBN,QAAMhkE,SAAS,GAAGF,gBAAgB,CAAC,KAAKC,KAAN,CAAlC;;IAEA,QAAMqD,KAA8Cu5C,aAApD;IAAA,QAAkB6rB,cAAc,cAAhC;IAAA,QAAqCC,UAAU,cAAzC,WAAA,EAAN;;IAEA,QAAM//D,OAAO,GAAGlF,SAAS,GAAG,MAAIA,SAAP,GAAqB,EAA9C;IAEQ,QAAAq4D,YAAY,GAAK,KAAK1sD,KAAL,aAAjB;IACR,QAAMw0C,UAAU,GAAGiY,aAAa,CAACC,YAAD,EAAeN,QAAf,CAAhC;IAEA,wBACE16D,8BAAA,MAAA,eAASb;IAAWwD,MAAAA,SAAS,EAAE,UAAQkF;uBAAqB;UAA5D,EACG6/D,UAAU,iBACT1nE,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;uBAAyB;SAAxC,eACE3C,8BAAA,CAACwiE,MAAD,eACM,KAAKl0D;IAETqyD,MAAAA,YAAY,EAAE,KAAKA;IAEnBI,MAAAA,gBAAgB,EAAE,KAAKA;IACvBlkC,MAAAA,gBAAgB,EAAE,KAAKA;IACvB8+B,MAAAA,QAAQ,EAAEA;IACV9jC,MAAAA,WAAW,EAAE,KAAKA;IAClB7M,MAAAA,YAAY,EAAEA;IACd40C,MAAAA,cAAc,EAAEA;IAChBlF,MAAAA,QAAQ,EAAEA;IACVkB,MAAAA,WAAW,EAAE4J,cAAc,KAAK;IAChC1C,MAAAA,eAAe,EAAE,KAAKA;IACtBE,MAAAA,gBAAgB,EAAE,KAAKA;IACvBC,MAAAA,eAAe,EAAE,KAAKA;IACtBF,MAAAA,cAAc,EAAE,KAAKwD;IACrBpD,MAAAA,gBAAgB,EAAEA;WACdyE,WAlBN,EAoBGD,cApBH,CADF,CAFJ,eA2BE3nE,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;SAAf,eACE3C,8BAAA,CAACkhE,IAAD,eACM,KAAK5yD;IACT5I,MAAAA,GAAG,EAAE,KAAK4I,KAAL,CAAWyZ;IAChB0/C,MAAAA,UAAU,EAAE,KAAKA;IACjB9G,MAAAA,YAAY,EAAE,KAAKA;IACnBrJ,MAAAA,iBAAiB,EAAE,KAAKA;IACxByJ,MAAAA,gBAAgB,EAAE,KAAKA;IACvB/1C,MAAAA,YAAY,EAAEA;IACdiN,MAAAA,QAAQ,EAAE,KAAKA;IACfJ,MAAAA,WAAW,EAAE,KAAKA;IAClB0kC,MAAAA,QAAQ,EAAEA;IACVZ,MAAAA,QAAQ,EAAEA;IACVjyD,MAAAA,IAAI,EAAEA;IACNxJ,MAAAA,IAAI,EAAEA;IACNs8D,MAAAA,eAAe,EAAEA;IACjBpgE,MAAAA,SAAS,EAAEA;IACXkgE,MAAAA,SAAS,EAAEA;IACXmB,MAAAA,UAAU,EAAEA;IACZ2B,MAAAA,iBAAiB,EAAEA;IACnBQ,MAAAA,cAAc,EAAEA,cAAc,IAAI9c,UAAU,GAAG;IAC/C4X,MAAAA,QAAQ,EAAEA;IACVc,MAAAA,YAAY,EAAEA;IACdnjC,MAAAA,aAAa,EAAEA,aAAa,IAAIA,aAAa,CAAC;IAAEhG,QAAAA,SAAS,EAAE,KAAK/jB,KAAL,CAAW+jB;IAAxB,OAAD;IAC7CitC,MAAAA,UAAU,EAAEA;IACZ1D,MAAAA,WAAW,EAAE4J,cAAc,KAAK;UAxBlC,CADF,CA3BF,EAuDG5F,cAAc,IAAI,CAAC,KAAKtxD,KAAL,CAAW1D,OAA9B,IAAyC,CAAC,KAAK0D,KAAL,CAAWvM,KAArD,IAA8D+gD,UAAU,GAAG,CAA3E,iBACC9iD,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;SAAf,eACE3C,8BAAA,CAAC6iD,UAAD;IACEI,MAAAA,IAAI,EAAE,KAAK30C,KAAL,CAAW20C;IACjBH,MAAAA,UAAU,EAAEiY,aAAa,CAACC,YAAD,EAAeN,QAAf;IACzBhxD,MAAAA,IAAI,EAAE67D;IACNxiB,MAAAA,YAAY,EAAE,KAAKA;IACnBC,MAAAA,wBAAwB,EAAEA;SAL5B,CADF,CAxDJ,CADF;IAqED,GAxGD;;IA5bOwkB,EAAAA,kBAAA,GAAe/iE,YAAf;IAqiBT,cAAA;IAtiBA,EAA2BzE,gBAAK,CAACkY;;QCjapB2vD,IAAI,GAAG,SAAPA,IAAO,CAAC3oE,KAAD;IAClB,sBAAOc,8BAAA,CAACwnE,KAAD,eAAWtoE;IAAOy8D,IAAAA,QAAQ,EAAE;IAAO6J,IAAAA,cAAc,EAAE;QAAnD,CAAP;IACD;IAEDqC,IAAI,CAACpjE,YAAL,GAAoBA,YAApB;;ICVQ,IAAA3C,UAAQ,GAAK9B,gBAAK,SAAlB;IA8DD,IAAM8nE,kBAAkB,GAAG,SAArBA,kBAAqB,CAAC5oE,KAAD;;;IACxB,MAAAm4C,KAAK,GAAyEn4C,KAAK,MAAnF;IAAA,MAAO+S,MAAM,GAAiE/S,KAAK,OAAnF;IAAA,MAAe0J,OAAO,GAAwD1J,KAAK,QAAnF;IAAA,MAAwByL,QAAQ,GAA8CzL,KAAK,SAAnF;IAAA,MAAkCq5C,OAAO,GAAqCr5C,KAAK,QAAnF;IAAA,MAA2C2jB,QAAQ,GAA2B3jB,KAAK,SAAnF;IAAA,MAAqD68C,MAAM,GAAmB78C,KAAK,OAAnF;IAAA,MAA6Ds6C,YAAY,GAAKt6C,KAAK,aAAnF;;IAEF,MAAAqD,KAA4BT,UAAQ,CAA0B,EAA1B,CAApC;IAAA,MAAC63C,SAAS,QAAV;IAAA,MAAYC,YAAY,QAAxB;;IAEN55C,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAInI,KAAK,CAAC+S,MAAV,EAAkB;IAChB,UAAM4nC,QAAQ,GAAGzC,OAAO,CAACC,KAAD,EAAQn4C,KAAK,CAAC+S,MAAd,CAAxB;IACA,UAAI4nC,QAAJ,EAAcC,eAAe,CAACD,QAAD,EAAW,IAAX,CAAf;IACf;IACF,GALD,EAKG,CAAC36C,KAAK,CAAC+S,MAAP,CALH;;IAOA,MAAM6nC,eAAe,GAAG,SAAlBA,eAAkB,CAAC/vC,IAAD,EAAmB1M,GAAnB;;;IACtB,QAAMw8C,QAAQ,GAAGzC,OAAO,CAACC,KAAD,EAAQttC,IAAR,CAAxB;;IACA,QAAI8vC,QAAJ,EAAc;IACZ,UAAME,SAAS,GAAGF,QAAQ,CAACj3C,IAAT,CAAc9F,KAAd,CAAoB,GAApB,CAAlB;;IACA,UAAIi9C,SAAS,CAACz9C,MAAV,GAAmB,CAAnB,IAAwBu9C,QAAQ,CAACtC,OAArC,EAA8C;IAC5C,YAAMyC,MAAI,GAAGD,SAAS,CAAC,CAAD,CAAtB;;IACA,YAAIP,YAAJ,EAAkB;IAChBI,UAAAA,YAAY,WAAGl/C,GAACs/C,OAAD,GAAQ38C,GAAG,IAAI,CAACs8C,SAAS,CAACK,MAAD,KAA5B,EAAZ;IACD,SAFD,MAEO;IACL,cAAMC,QAAQ,gBAAQN,UAAtB;;IACAM,UAAAA,QAAQ,CAACD,MAAD,CAAR,GAAiB38C,GAAG,KAAKsP,SAAR,GAAoBtP,GAApB,GAA0B,CAAC48C,QAAQ,CAACD,MAAD,CAApD;IACAJ,UAAAA,YAAY,CAACK,QAAD,CAAZ;IACD;IACF,OATD,MASO;IACL,YAAIT,YAAJ,EAAkB;IAChB,cAAI,CAAC7uC,QAAL,EAAeivC,YAAY,CAAC,EAAD,CAAZ;IAChB;IACF;IACF;IACF,GAnBD;;IAqBA,MAAM/wC,cAAc,GAAG,SAAjBA,cAAiB,CAACkB,IAAD;IACrB,QAAI,CAACA,IAAI,CAACc,QAAV,EAAoB;IAClB,UAAId,IAAI,CAACwtC,OAAT,EAAkB;IAChB,YAAI,CAAC5sC,QAAL,EAAe;IACb,cAAI/B,OAAJ,EAAaA,OAAO,CAACmB,IAAI,CAACwtC,OAAL,CAAa,CAAb,CAAD,CAAP;IACd,SAFD,MAEO;IACLuC,UAAAA,eAAe,CAAC/vC,IAAD,CAAf;IACD;IACF,OAND,MAMO;IACL,YAAInB,OAAJ,EAAaA,OAAO,CAACmB,IAAD,CAAP;IACd;IACF;IACF,GAZD;;IAcA,MAAMzD,IAAI,GAAG+wC,KAAK,CAAChyC,GAAN,CAAU,UAAC0E,IAAD,EAAOxE,KAAP;;;IACrB,QAAMiyC,UAAU,GAAG7sC,QAAQ,IAAI,CAACgvC,SAAS,CAAC5vC,IAAI,CAACnH,IAAN,CAAtB,IAAqCm1C,YAAY,CAACV,KAAD,EAAQttC,IAAR,EAAckI,MAAd,CAApE;IACA,QAAM81D,cAAc,GAAI,CAACp9D,QAAD,IAAaotC,YAAY,CAACV,KAAD,EAAQttC,IAAR,EAAckI,MAAd,CAA1B,IAAoDulC,UAA3E;IAEA,QAAMiD,WAAW,GAAGp4C,8BAAU;IAC5B,yBAAmB;WACnB3H,GAAC,4BAAD,GAA+B,MAC/BA,GAAC,0BAAD,GAA6B88C,YAC7B98C,GAAC,2BAAD,GAA8BiQ,QAAQ,IAAI4tC,WAJd,EAA9B;IAOA,QAAMyvB,eAAe,GAAG3lE,8BAAU,CAAC;IACjC,6BAAuB,IADU;IAEjC,qCAA+B0lE;IAFE,KAAD,CAAlC;IAKA,wBACE/nE,8BAAA,MAAA;IAAK0F,MAAAA,GAAG,EAAEH;uBAAiB;SAA3B,eAGEvF,8BAAA,MAAA;uBACY;IACV2C,MAAAA,SAAS,EAAE83C;IACX7xC,MAAAA,OAAO,EAAE;IAAM,eAAAC,cAAc,CAACkB,IAAD,CAAd;IAAoB;SAHrC,EAKGA,IAAI,CAACvE,IAAL,iBACCxF,8BAAA,CAACsB,IAAD;uBACY;IACVqB,MAAAA,SAAS,EAAEqlE;IACXplE,MAAAA,IAAI,EAAEmH,IAAI,CAACvE;IACXrF,MAAAA,UAAU,EAAEsb,iBAAiB,CAACssD,cAAD,EAAiBh+D,IAAI,CAACc,QAAtB;SAJ/B,CANJ,EAaGF,QAAQ,iBACP3K,8BAAA,0BAAA,MAAA,eACEA,8BAAA,OAAA;IAAM2C,MAAAA,SAAS,EAAC;SAAhB,eACE3C,8BAAA,CAACyC,IAAD;IAAMtC,MAAAA,UAAU,EAAE82C,iBAAiB,CAACO,UAAD,EAAaztC,IAAI,CAACc,QAAlB;SAAnC,EAAiEd,IAAI,CAACZ,KAAtE,CADF,CADF,EAIGY,IAAI,CAACwtC,OAAL,IAAgBxtC,IAAI,CAACwtC,OAAL,CAAaj7C,MAAb,GAAsB,CAAtC,iBACC0D,8BAAA,CAACsB,IAAD;uBACY;IACVqB,MAAAA,SAAS,EAAC;IACVC,MAAAA,IAAI,EAAE+2C,SAAS,CAAC5vC,IAAI,CAACnH,IAAN,CAAT,GAAuB,mBAAvB,GAA6C;IACnDzC,MAAAA,UAAU,EAAC;SAJb,CALJ,CAdJ,CAHF,eAgCEH,8BAAA,MAAA;IAAK2C,MAAAA,SAAS,EAAC;SAAf,EACGg3C,SAAS,CAAC5vC,IAAI,CAACnH,IAAN,CAAT,IACCmH,IAAI,CAACwtC,OADN,IAEC5sC,QAFD,IAGCZ,IAAI,CAACwtC,OAAL,CAAalyC,GAAb,CAAiB,UAACkyC,OAAD,EAAUvxC,GAAV;;;IACf,UAAMkxC,QAAQ,GAAGa,YAAY,CAACV,KAAD,EAAQE,OAAR,EAAiBtlC,MAAjB,CAA7B;IAEA,UAAMg2D,cAAc,GAAG5lE,8BAAU,CAACo4C,WAAD,YAC/B//C,GAAC,2BAAD,GAA8B,MAC9BA,GAAC,0BAAD,GAA6Bw8C,YAFE,EAAjC;IAKA,0BAGEl3C,8BAAA,MAAA;yBACY;IACV0F,QAAAA,GAAG,EAAEM;IACLrD,QAAAA,SAAS,EAAEslE;IACXr/D,QAAAA,OAAO,EAAE;IAAM,iBAAAC,cAAc,CAAC0uC,OAAD,CAAd;IAAuB;WAJxC,eAMEv3C,8BAAA,CAACyC,IAAD;IAAMtC,QAAAA,UAAU,EAAE82C,iBAAiB,CAACC,QAAD,EAAWK,OAAO,CAAC1sC,QAAnB;WAAnC,EAAkE0sC,OAAO,CAACpuC,KAA1E,CANF,CAHF;IAYD,KApBD,CAJJ,CAhCF,CADF;IA6DD,GA7EY,CAAb;IA+EA,MAAM++D,aAAa,GAAG7lE,8BAAU;IAC9B,yBAAqB;SACrB3H,GAAC,4BAAD,GAA+B,QAFD,EAAhC;IAKA,sBACEsF,8BAAA,0BAAA,MAAA,eACEA,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EAAkC2D,IAAlC,CADF,EAEGy1C,MAAM,iBACL/7C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEulE;OAAhB,eACEloE,8BAAA,CAACsB,IAAD;IACEqB,IAAAA,SAAS,EAAC;IACVC,IAAAA,IAAI,EAAC;IACL1C,IAAAA,IAAI,EAAE;IACN0I,IAAAA,OAAO,EAAE;IAAM,aAAAia,QAAQ,IAAIA,QAAQ,CAAC,CAAClY,QAAF,CAApB;IAA+B;OAJhD,CADF,CAHJ,CADF;IAeD,CAlJM;IAoJPm9D,kBAAkB,CAACrjE,YAAnB,GAAkC;IAChCkG,EAAAA,QAAQ,EAAE,IADsB;IAEhC6uC,EAAAA,YAAY,EAAE,IAFkB;IAGhCjB,EAAAA,OAAO,EAAE;IAHuB,CAAlC;;QCtLa4vB,UAAU,GAAG,SAAbA,UAAa,CAACjpE,KAAD;;;IAChB,MAAAwK,IAAI,GAAkGxK,KAAK,KAA3G;IAAA,MAAMsd,KAAK,GAA2Ftd,KAAK,MAA3G;IAAA,MAAam4C,KAAK,GAAoFn4C,KAAK,MAA3G;IAAA,MAAoB+S,MAAM,GAA4E/S,KAAK,OAA3G;IAAA,MAA4B0J,OAAO,GAAmE1J,KAAK,QAA3G;IAAA,MAAqCyL,QAAQ,GAAyDzL,KAAK,SAA3G;IAAA,MAA+Cq5C,OAAO,GAAgDr5C,KAAK,QAA3G;IAAA,MAAwD2jB,QAAQ,GAAsC3jB,KAAK,SAA3G;IAAA,MAAkE68C,MAAM,GAA8B78C,KAAK,OAA3G;IAAA,MAA0Es6C,YAAY,GAAgBt6C,KAAK,aAA3G;IAAA,MAAwFyD,SAAS,GAAKzD,KAAK,UAA3G;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,WAEtB3H,GAAC,aAAD,GAAgB,MAChBA,GAAC,iBAAegP,KAAhB,GAAyBA,MACzBhP,GAAC,yBAAD,GAA4BgP,IAAI,KAAK,YAAT,IAAyB8S,KAAK,KAAK,UAC/D9hB,GAAC,wBAAD,GAA2BgP,IAAI,KAAK,YAAT,IAAyB8S,KAAK,KAAK,QAC9D9hB,GAAC,wBAAD,GAA2B,CAACiQ,YANN,GAQxBhI,SARwB,CAA1B;;IAWA,MAAMylE,gBAAgB,GAAG,SAAnBA,gBAAmB;IACvB,WAAO1+D,IAAI,KAAK,YAAT,gBACL1J,8BAAA,CAACs6C,aAAD;IAAejD,MAAAA,KAAK,EAAEA;IAAOplC,MAAAA,MAAM,EAAEA;IAAQrJ,MAAAA,OAAO,EAAEA;SAAtD,CADK,gBAGL5I,8BAAA,CAAC8nE,kBAAD;IACEzwB,MAAAA,KAAK,EAAEA;IACPplC,MAAAA,MAAM,EAAEA;IACRunC,MAAAA,YAAY,EAAEA;IACd7uC,MAAAA,QAAQ,EAAEA;IACV4tC,MAAAA,OAAO,EAAEA;IACTwD,MAAAA,MAAM,EAAEA;IACRl5B,MAAAA,QAAQ,EAAEA;IACVja,MAAAA,OAAO,EAAEA;SARX,CAHF;IAcD,GAfD;;IAiBA,sBACE5I,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAEkF;QAA/B,EACGugE,gBAAgB,EADnB,CADF;IAKD;IAEDD,UAAU,CAAC1jE,YAAX,GAA0B;IACxBiF,EAAAA,IAAI,EAAE,YADkB;IAExB8S,EAAAA,KAAK,EAAE,QAFiB;IAGxB7R,EAAAA,QAAQ,EAAE,IAHc;IAIxB6uC,EAAAA,YAAY,EAAE,IAJU;IAKxBjB,EAAAA,OAAO,EAAE;IALe,CAA1B;;IC3EO,IAAM2H,MAAM,GAAG,SAATA,MAAS,CAAChhD,KAAD;IAOZ,MAAAq3D,MAAM,GAAiDr3D,KAAK,OAA5D;IAAA,MAAQmpE,IAAI,GAA2CnpE,KAAK,KAA5D;IAAA,MAAcopE,kBAAkB,GAAuBppE,KAAK,mBAA5D;IAAA,MAAkCqpE,UAAU,GAAWrpE,KAAK,WAA5D;IAAA,MAA8CuqD,IAAI,GAAKvqD,KAAK,KAA5D;IAER,MAAMspE,aAAa,GAAGnmE,8BAAU,CAAC;IAC/B,gCAA4B,IADG;IAE/B,YAASimE,kBAAkB,KAAK,QAAvB,IAAmCC,UAApC,IAAmD9e;IAF5B,GAAD,CAAhC;IAKA,sBACEzpD,8BAAA,0BAAA,MAAA,EACG,CAACu2D,MAAM,IAAI8R,IAAX,kBACCroE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE6lE;qBAAyB;OAAzC,EACGjS,MADH,EAEG8R,IAFH,CAFJ,CADF;IAUD,CAxBM;IA0BA,IAAMI,MAAM,GAAG,SAATA,MAAS,CAACvpE,KAAD;IACZ,MAAAimC,OAAO,GAA0BjmC,KAAK,QAAtC;IAAA,MAASqpE,UAAU,GAAcrpE,KAAK,WAAtC;IAAA,MAAqBwpE,OAAO,GAAKxpE,KAAK,QAAtC;IAER,sBACEc,8BAAA,0BAAA,MAAA,EACGmlC,OAAO,gBACNnlC,8BAAA,CAAC4f,MAAD;IAAQ1f,IAAAA,IAAI,EAAC;IAAI+f,IAAAA,MAAM,EAAC;IAAIF,IAAAA,KAAK,EAAC;qBAAc;OAAhD,eACE/f,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EAA4CwiC,OAA5C,CADF,CADM,GAKN,CAACojC,UAAU,IAAIG,OAAf,kBACE1oE,8BAAA,CAAC4f,MAAD;IAAQ1f,IAAAA,IAAI,EAAC;IAAI+f,IAAAA,MAAM,EAAC;IAAIF,IAAAA,KAAK,EAAC;qBAAc;OAAhD,eACE/f,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,CADF,CAPN,CADF;IAeD,CAlBM;IAoBA,IAAMgmE,GAAG,GAAG,SAANA,GAAM,CAACzpE,KAAD;IACT,MAAAqpE,UAAU,GAAcrpE,KAAK,WAA7B;IAAA,MAAYwpE,OAAO,GAAKxpE,KAAK,QAA7B;;IAER,MAAI,CAACqpE,UAAD,IAAe,CAACG,OAApB,EAA6B;IAC3B,WAAO,IAAP;IACD;;IACD,sBACE1oE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;qBAAyC;OAAxD,EACG4lE,UAAU,IAAIG,OADjB,CADF;IAKD,CAXM;IAaA,IAAME,SAAS,GAAG,SAAZA,SAAY,CAAC1pE,KAAD;IAOf,MAAA2pE,OAAO,GAAsC3pE,KAAK,QAAlD;IAAA,MAAS4pE,WAAW,GAAyB5pE,KAAK,YAAlD;IAAA,MAAsBopE,kBAAkB,GAAKppE,KAAK,mBAAlD;IACR,sBACEc,8BAAA,0BAAA,MAAA,EACG,CAAC,CAAC8oE,WAAD,IAAgBR,kBAAkB,KAAK,QAAxC,KAAqDO,OAAO,KAAK,GAAjE,iBACC7oE,8BAAA,CAAC4f,MAAD;IAAQ1f,IAAAA,IAAI,EAAC;IAAI+f,IAAAA,MAAM,EAAC;IAAIF,IAAAA,KAAK,EAAC;qBAAc;OAAhD,eACE/f,8BAAA,CAAC2oE,GAAD,eAASzpE,MAAT,CADF,CAFJ,CADF;IASD,CAjBM;IAmBA,IAAM6pE,UAAU,GAAG,SAAbA,UAAa,CAAC7pE,KAAD;IAChB,MAAA4Z,MAAM,GAAK5Z,KAAK,OAAhB;IACR,sBACEc,8BAAA,0BAAA,MAAA,EACG8Y,MAAM,iBACL9Y,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;qBAAsB;OAArC,EACGmW,MADH,CAFJ,CADF;IASD,CAXM;IAaA,IAAM4pC,KAAK,GAAG,SAARA,KAAQ,CAACxjD,KAAD;IACX,MAAA8pE,KAAK,GAAY9pE,KAAK,MAAtB;IAAA,MAAOkmC,KAAK,GAAKlmC,KAAK,MAAtB;IACR,sBACEc,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;qBAAoC;OAAnD,eACE3C,8BAAA,CAACwR,OAAD;IAAS7O,IAAAA,SAAS,EAAC;OAAnB,EAAuCyiC,KAAvC,CADF,EAEG4jC,KAFH,CADF;IAMD,CARM;;QCnCMC,UAAU,GAAG,SAAbA,UAAa,CAAC/pE,KAAD;;;IAEtB,MAAAkmC,KAAK,GAaHlmC,KAAK,MAbP;IAAA,MACAqpE,UAAU,GAYRrpE,KAAK,WAbP;IAAA,MAEAwpE,OAAO,GAWLxpE,KAAK,QAbP;IAAA,MAGAimC,OAAO,GAULjmC,KAAK,QAbP;IAAA,MAIAuqD,IAAI,GASFvqD,KAAK,KAbP;IAAA,MAKA4pE,WAAW,GAQT5pE,KAAK,YAbP;IAAA,MAMA8pE,KAAK,GAOH9pE,KAAK,MAbP;IAAA,MAOA9C,SAAS,GAMP8C,KAAK,UAbP;IAAA,MAQAq3D,MAAM,GAKJr3D,KAAK,OAbP;IAAA,MASAmpE,IAAI,GAIFnpE,KAAK,KAbP;IAAA,MAUAopE,kBAAkB,GAGhBppE,KAAK,mBAbP;IAAA,MAWAyD,SAAS,GAEPzD,KAAK,UAbP;IAAA,MAYA4Z,MAAM,GACJ5Z,KAAK,OAbP;IAcF,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMuwC,cAAc,GAAGptC,8BAAU;IAE7B,0BAAsB;SACtB3H,GAAC,+BAAD,GAAkC+uD,QAHL,GAK/B9mD,SAL+B,CAAjC;IAQA,MAAMkF,OAAO,GAAGxF,8BAAU,CAAC;IACzB4mE,IAAAA,UAAU,EAAE;IADa,GAAD,CAA1B;IAIA,MAAMJ,OAAO,GAAG,CAACN,UAAU,IAAIG,OAAf,KAA2BJ,kBAAkB,KAAK,QAAlD,GAA6D,GAA7D,GAAmEnjC,OAAO,GAAG,GAAH,GAAS,IAAnG;IAEA,MAAM+jC,cAAc,GAAG;IACrBL,IAAAA,OAAO,SADc;IAErBC,IAAAA,WAAW,aAFU;IAGrBR,IAAAA,kBAAkB,oBAHG;IAIrBC,IAAAA,UAAU,YAJW;IAKrBG,IAAAA,OAAO;IALc,GAAvB;IAQA,MAAMS,WAAW,GAAG;IAClB5S,IAAAA,MAAM,QADY;IAElB8R,IAAAA,IAAI,MAFc;IAGlBC,IAAAA,kBAAkB,oBAHA;IAIlBC,IAAAA,UAAU,YAJQ;IAKlB9e,IAAAA,IAAI;IALc,GAApB;IAQA,sBACEzpD,8BAAA,MAAA;qBAAe;OAAf,eACEA,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAE8sC;QAA/B,EACGq5B,WAAW,iBACV9oE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;qBAAiB;OAAhC,EACGmmE,WADH,CAFJ,eAME9oE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAAC+oE,UAAD;IAAYjwD,IAAAA,MAAM,EAAEA;OAApB,CADF,eAEE9Y,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEkF;OAAhB,eACE7H,8BAAA,CAACkvC,GAAD,MAAA,eACElvC,8BAAA,CAAC4f,MAAD;IAAQ1f,IAAAA,IAAI,EAAE2oE;IAAS5oD,IAAAA,MAAM,EAAE4oD;IAAS9oD,IAAAA,KAAK,EAAE8oD;OAA/C,eACE7oE,8BAAA,CAAC0iD,KAAD;IAAOsmB,IAAAA,KAAK,EAAEA;IAAO5jC,IAAAA,KAAK,EAAEA;OAA5B,CADF,CADF,eAIEplC,8BAAA,CAAC4oE,SAAD,eAAeM,eAAf,CAJF,eAKElpE,8BAAA,CAACyoE,MAAD;IAAQtjC,IAAAA,OAAO,EAAEA;IAASojC,IAAAA,UAAU,EAAEA;IAAYG,IAAAA,OAAO,EAAEA;OAA3D,CALF,CADF,eAQE1oE,8BAAA,CAACkgD,MAAD,eAAYipB,YAAZ,CARF,CAFF,CANF,eAoBEnpE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACG2lE,kBAAkB,KAAK,QAAvB,iBAAmCtoE,8BAAA,CAAC2oE,GAAD;IAAKJ,IAAAA,UAAU,EAAEA;IAAYG,IAAAA,OAAO,EAAEA;OAAtC,CADtC,EAEGjf,IAAI,iBAAIzpD,8BAAA,MAAA;qBAAe;OAAf,EAAgDypD,IAAhD,CAFX,CApBF,CADF,EA0BGrtD,SAAS,iBAAI4D,8BAAA,CAAC4kE,OAAD;IAASzkE,IAAAA,UAAU,EAAC;OAApB,CA1BhB,CADF;IA8BD;IAED8oE,UAAU,CAACxkE,YAAX,GAA0B;IACxB6jE,EAAAA,kBAAkB,EAAE,QADI;IAExBlsE,EAAAA,SAAS,EAAE;IAFa,CAA1B;;ICzIQ,IAAAiL,SAAS,GAAerH,gBAAK,UAA7B;IAAA,IAAW8B,QAAQ,GAAK9B,gBAAK,SAA7B;IAER,IAAMilC,aAAW,GAA8B;IAC7CmkC,EAAAA,KAAK,EAAE,YADsC;IAE7C3jE,EAAAA,KAAK,EAAE,OAFsC;IAG7C4jE,EAAAA,KAAK,EAAE,OAHsC;IAI7CC,EAAAA,WAAW,EAAE,mBAJgC;IAK7CC,EAAAA,MAAM,EAAE;IALqC,CAA/C;IAcO,IAAMC,QAAQ,GAAG,SAAXA,QAAW,CAACtqE,KAAD;;;IACd,MAAAo3D,QAAQ,GAAmBp3D,KAAK,SAAhC;IAAA,MAAUq3D,MAAM,GAAWr3D,KAAK,OAAhC;IAAA,MAAkB8sD,IAAI,GAAK9sD,KAAK,KAAhC;;IAEF,MAAA2C,KAAwBC,QAAQ,CAAU,KAAV,CAAhC;IAAA,MAAC6F,OAAO,QAAR;IAAA,MAAUC,UAAU,QAApB;;IACN,MAAM8B,IAAI,GAAGsiD,IAAI,CAACtiD,IAAL,CAAU5M,KAAV,CAAgB,GAAhB,EAAqB,CAArB,KAA2B,QAAxC;IACA,MAAM2sE,QAAQ,GAAGxkC,aAAW,CAACv7B,IAAD,CAAX,GAAoBA,IAApB,GAA2B,QAA5C;IAEA,MAAMuB,SAAS,GAAG5I,8BAAU,WAC1B3H,GAAC,WAAD,GAAc,MACdA,GAAC,oBAAD,GAAuBiN,SACvBjN,GAAC,eAAa+uE,SAAd,GAA2B,QAHD,EAA5B;IAMA,MAAMC,kBAAkB,GAAGrnE,8BAAU,WACnCE,GAAC,WAAD,GAAc,MACdA,GAAC,sBAAD,GAAyB,QAFU,EAArC;IAKA8E,EAAAA,SAAS,CAAC;IACR,QAAIkvD,MAAM,KAAK,WAAf,EAA4B;IAC1B3uD,MAAAA,UAAU,CAAC,IAAD,CAAV;IACD,KAFD,MAEO;IACLA,MAAAA,UAAU,CAAC,KAAD,CAAV;IACD;IACF,GANQ,EAMN,CAAC2uD,MAAD,CANM,CAAT;;IAQA,MAAIA,MAAM,KAAK,WAAf,EAA4B;IAC1B,wBACEv2D,8BAAA,CAACmlD,YAAD;IACEjlD,MAAAA,IAAI,EAAC;IACLzC,MAAAA,KAAK,EAAE64D,QAAQ,IAAI;IACnB3zD,MAAAA,SAAS,EAAE+mE;uBACD;SAJZ,CADF;IAQD;;IAED,sBAAO1pE,8BAAA,CAACsB,IAAD;IAAMsB,IAAAA,IAAI,EAAEqiC,aAAW,CAACwkC,QAAD;IAAY9mE,IAAAA,SAAS,EAAEsI;qBAAqB;OAAnE,CAAP;IACD,CAtCM;IAwCPu+D,QAAQ,CAACjlE,WAAT,GAAuB,UAAvB;IAEAilE,QAAQ,CAAC/kE,YAAT,GAAwB;IACtB6xD,EAAAA,QAAQ,EAAE,CADY;IAEtBC,EAAAA,MAAM,EAAE;IAFc,CAAxB;;ICFO,IAAMoT,YAAY,GAAG,SAAfA,YAAe,CAACzqE,KAAD;;;IAClB,MAAAo3D,QAAQ,GAAkFp3D,KAAK,SAA/F;IAAA,MAAU4hB,YAAY,GAAoE5hB,KAAK,aAA/F;IAAA,MAAwB0J,OAAO,GAA2D1J,KAAK,QAA/F;IAAA,MAAiCyD,SAAS,GAAgDzD,KAAK,UAA/F;IAAA,MAA4CimC,OAAO,GAAuCjmC,KAAK,QAA/F;IAAA,MAAqD0qE,QAAQ,GAA6B1qE,KAAK,SAA/F;IAAA,MAA+D8sD,IAAI,GAAuB9sD,KAAK,KAA/F;IAAA,MAAqEq3D,MAAM,GAAer3D,KAAK,OAA/F;IAAA,MAA6E2qE,QAAQ,GAAK3qE,KAAK,SAA/F;IAEA,MAAA0D,IAAI,GAAKopD,IAAI,KAAb;IAER,MAAM7sD,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMy3D,aAAa,GAAGt0D,8BAAU,WAE5B3H,GAAC,WAAD,GAAc,QAFc,GAI9BiI,SAJ8B,CAAhC;;IAOA,MAAMkG,cAAc,GAAG,SAAjBA,cAAiB;IACrB,QAAID,OAAJ,EAAa;IACXA,MAAAA,OAAO,CAACghE,QAAD,CAAP;IACD;IACF,GAJD;;IAMA,sBAGE5pE,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAEg0D;IAAe/tD,IAAAA,OAAO,EAAEC;qBAA0B;QAAjF,eACE7I,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACwpE,QAAD;IAAUxd,IAAAA,IAAI,EAAEA;IAAMuK,IAAAA,MAAM,EAAEA;IAAQD,IAAAA,QAAQ,EAAEA;OAAhD,CADF,eAEEt2D,8BAAA,CAACyC,IAAD;qBACY;IACVE,IAAAA,SAAS,EAAC;IACVxC,IAAAA,UAAU,EAAEo2D,MAAM,KAAK,WAAX,GAAyB,SAAzB,GAAqC;IACjD7zD,IAAAA,MAAM,EAAC;OAJT,EAMGE,IANH,CAFF,CADF,eAYE5C,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACyC,IAAD;IACEE,IAAAA,SAAS,EAAC;IACVzC,IAAAA,IAAI,EAAC;IACLC,IAAAA,UAAU,EAAE;qBACF;OAJZ,EAMG0pE,QAAQ,IAAI7d,IAAI,CAAC9rD,IANpB,CADF,EASG,CAAC,CAACilC,OAAF,IAAaA,OAThB,CAZF,CADF,EAyBGoxB,MAAM,KAAK,OAAX,iBACCv2D,8BAAA,CAACwkD,aAAD;IAAetkD,IAAAA,IAAI,EAAC;IAAQC,IAAAA,UAAU,EAAC;IAAQulC,IAAAA,WAAW,EAAE5kB;IAAcne,IAAAA,SAAS,EAAE;OAArF,CA1BJ,CAHF;IAiCD,CArDM;IAuDPgnE,YAAY,CAACllE,YAAb,GAA4B;IAC1B6xD,EAAAA,QAAQ,EAAE,CADgB;IAE1Bx1C,EAAAA,YAAY,EAAE;IAFY,CAA5B;IAKA6oD,YAAY,CAACplE,WAAb,GAA2B,cAA3B;;QClFaulE,QAAQ,GAAG,SAAXA,QAAW,CAAC5qE,KAAD;IACd,MAAAg3D,QAAQ,GAAyCh3D,KAAK,SAAtD;IAAA,MAAU0J,OAAO,GAAgC1J,KAAK,QAAtD;IAAA,MAAmB6qE,cAAc,GAAgB7qE,KAAK,eAAtD;IAAA,MAAmCyD,SAAS,GAAKzD,KAAK,UAAtD;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAIg3D,QAAQ,CAAC55D,MAAT,KAAoB,CAAxB,EAA2B,OAAO,IAAP;IAE3B,sBACE0D,8BAAA,CAACmY,IAAD,eAAUhZ;IAAWiZ,IAAAA,MAAM,EAAE;IAAQzV,IAAAA,SAAS,EAAEA;QAAhD,EACGuzD,QAAQ,CAAC7wD,GAAT,CAAa,UAACukE,QAAD,EAAWrkE,KAAX;IAAqB,wBACjCvF,8BAAA,CAAC2pE,YAAD;IACEjkE,MAAAA,GAAG,EAAEH;IACLqD,MAAAA,OAAO,EAAEA;IACTu8B,MAAAA,OAAO,EAAE4kC,cAAc,IAAIA,cAAc,CAACH,QAAD;IACzCA,MAAAA,QAAQ,EAAEA;WACNA,SALN,CADiC;IAQlC,GARA,CADH,CADF;IAaD;IAEDE,QAAQ,CAACrlE,YAAT,GAAwB;IACtByxD,EAAAA,QAAQ,EAAE;IADY,CAAxB;IAIA4T,QAAQ,CAACvlE,WAAT,GAAuB,UAAvB;;IC1DA,IAAMylE,QAAQ,GAAG;IACfC,EAAAA,SAAS,EAAE,WADI;IAEfx3C,EAAAA,IAAI,EAAE,WAFS;IAGfy3C,EAAAA,EAAE,EAAE,SAHW;IAIf13C,EAAAA,KAAK,EAAE,YAJQ;IAKf23C,EAAAA,IAAI,EAAE,WALS;IAMfvxD,EAAAA,CAAC,EAAE,GANY;IAOfwxD,EAAAA,CAAC,EAAE;IAPY,CAAjB;;QAmDMC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACnrE,KAAD;IAE1B,MAAAxE,KAUEwE,KAAK,KAVP;IAAA,MAAAwK,IAAI,mBAAG,aAAP;IAAA,MACAnH,KASErD,KAAK,OAVP;IAAA,MACAorE,MAAM,mBAAG,MADT;IAAA,MAEAzoE,KAQE3C,KAAK,YAVP;IAAA,MAEAkiB,WAAW,mBAAG,QAFd;IAAA,MAGArd,KAOE7E,KAAK,UAVP;IAAA,MAGAo4B,SAAS,mBAAG,SAHZ;IAAA,MAIAizC,UAAU,GAMRrrE,KAAK,WAVP;IAAA,MAKAq+B,OAAO,GAKLr+B,KAAK,QAVP;IAAA,MAMAshB,MAAM,GAIJthB,KAAK,OAVP;IAAA,MAOAyD,SAAS,GAGPzD,KAAK,UAVP;IAAA,MAUEA,KAAK,MAVP;IAAA,UASG6L,IAAI,UACL7L,OAXE,OAAA,UAAA,eAAA,aAAA,cAAA,WAAA,UAAA,aAAA,SAAA;;IAaN,MAAMsrE,aAAa,GAAGxqC,aAAO,CAAC;IAC5B,QAAI9gC,KAAK,CAACzB,KAAN,IAAeyB,KAAK,CAACzB,KAAN,CAAYnB,MAA/B,EAAuC;IACrC,aAAO4C,KAAK,CAACzB,KAAN,CAAYX,KAAZ,CAAkB,EAAlB,CAAP;IACD;;IACD,WAAOa,KAAK,CAAC2sE,MAAD,CAAL,CAActsD,IAAd,CAAmB,EAAnB,CAAP;IACD,GAL4B,EAK1B,EAL0B,CAA7B;IAOA,MAAMysD,WAAW,GAAGzqC,aAAO,CAAC;IAC1B,WAAO0qC,eAAI/sE,KAAK,CAAC2sE,MAAD,EAAT,CAAmBjlE,GAAnB,CAAuB;IAC5B,0BAAOrF,yBAAK,CAAC0zB,SAAN,EAAP;IACD,KAFM,CAAP;IAGD,GAJ0B,EAIxB,EAJwB,CAA3B;;IAMM,MAAAnwB,KAAsBzB,cAAQ,CAAW0oE,aAAX,CAA9B;IAAA,MAAC19C,MAAM,QAAP;IAAA,MAAS69C,SAAS,QAAlB;;IACC,MAAAC,IAAI,GAAI9oE,cAAQ,CAAO2oE,WAAP,CAAR,EAAA,CAAR;IAEPpjE,EAAAA,eAAS,CAAC;IACR,QAAIujE,IAAI,CAAC,CAAD,CAAJ,IAAWA,IAAI,CAAC,CAAD,CAAJ,CAAQ9rD,OAAnB,IAA8BwY,SAAlC,EAA6C;IAC3CszC,MAAAA,IAAI,CAAC,CAAD,CAAJ,CAAQ9rD,OAAR,CAAgBoX,KAAhB,CAAsB;IAAE0H,QAAAA,aAAa,EAAE;IAAjB,OAAtB;IACD;IACF,GAJQ,EAIN,EAJM,CAAT;IAMAv2B,EAAAA,eAAS,CAAC;IACR,QAAMwjE,aAAa,GAAG/9C,MAAM,CAAC0O,IAAP,CAAY,EAAZ,CAAtB;;IACA,QAAI+uC,UAAU,IAAIM,aAAa,CAACvuE,MAAd,KAAyBguE,MAA3C,EAAmD;IACjDC,MAAAA,UAAU,CAACM,aAAD,CAAV;IACD;IACF,GALQ,EAKN,CAAC/9C,MAAD,CALM,CAAT;;IAOA,MAAMtN,eAAe,GAAG,SAAlBA,eAAkB,CAAC5G,CAAD;IACtB,QAAMrT,KAAK,GAAGme,QAAQ,CAAC9K,CAAC,CAAC6G,MAAF,CAASqrD,OAAT,CAAiBpsD,EAAlB,EAAgC,EAAhC,CAAtB;IACA,QAAMqsD,UAAU,GAAGnyD,CAAC,CAAC6G,MAAF,CAAShiB,KAA5B;IACA,QAAIutE,OAAJ;;IACA,QAAMpkC,SAAS,kBAAO9Z,OAAtB;;IAEA,QAAI,CAACi+C,UAAL,EAAiB;IACf;IACD;;IAED,QAAIA,UAAU,CAACzuE,MAAX,GAAoB,CAAxB,EAA2B;IACzB,UAAI2uE,SAAS,GAAGF,UAAU,CAACzuE,MAAX,GAAoBiJ,KAApB,GAA4B,CAA5C;;IACA,UAAI0lE,SAAS,IAAIX,MAAjB,EAAyB;IACvBW,QAAAA,SAAS,GAAGX,MAAM,GAAG,CAArB;IACD;;IACDU,MAAAA,OAAO,GAAGJ,IAAI,CAACK,SAAD,CAAd;IACA,UAAMnuE,KAAK,GAAGiuE,UAAU,CAACjuE,KAAX,CAAiB,EAAjB,CAAd;IACAA,MAAAA,KAAK,CAACC,OAAN,CAAc,UAACuI,IAAD,EAAerI,CAAf;IACZ,YAAMi3B,MAAM,GAAW3uB,KAAK,GAAGtI,CAA/B;;IACA,YAAIi3B,MAAM,GAAGo2C,MAAb,EAAqB;IACnB1jC,UAAAA,SAAS,CAAC1S,MAAD,CAAT,GAAoB5uB,IAApB;IACD;IACF,OALD;IAMAqlE,MAAAA,SAAS,CAAC/jC,SAAD,CAAT;IACD,KAdD,MAcO;IACLokC,MAAAA,OAAO,GAAGJ,IAAI,CAACrlE,KAAK,GAAG,CAAT,CAAd;IACAqhC,MAAAA,SAAS,CAACrhC,KAAD,CAAT,GAAmBwlE,UAAnB;IACAJ,MAAAA,SAAS,CAAC/jC,SAAD,CAAT;IACD;;IAED,QAAIokC,OAAO,IAAIA,OAAO,CAAClsD,OAAvB,EAAgC;IAC9BksD,MAAAA,OAAO,CAAClsD,OAAR,CAAgBoX,KAAhB,CAAsB;IAAE0H,QAAAA,aAAa,EAAE;IAAjB,OAAtB;IACAotC,MAAAA,OAAO,CAAClsD,OAAR,CAAgB7B,MAAhB;IACD;IACF,GAlCD;;IAoCA,MAAM0lB,cAAc,GAAG,SAAjBA,cAAiB,CAAC/pB,CAAD;IACrBA,IAAAA,CAAC,CAAC6G,MAAF,CAASxC,MAAT;IACArE,IAAAA,CAAC,CAAC6G,MAAF,CAAS2B,WAAT,GAAuB,EAAvB;;IACA,QAAImc,OAAJ,EAAa;IACXA,MAAAA,OAAO,CAAC3kB,CAAD,CAAP;IACD;IACF,GAND;;IAQA,MAAM2H,aAAa,GAAG,SAAhBA,aAAgB,CAAC3H,CAAD;IACpBA,IAAAA,CAAC,CAAC6G,MAAF,CAAS2B,WAAT,GAAuBA,WAAvB;;IACA,QAAIZ,MAAJ,EAAY;IACVA,MAAAA,MAAM,CAAC5H,CAAD,CAAN;IACD;IACF,GALD;;IAOA,MAAMU,SAAS,GAAG,SAAZA,SAAY,CAACV,CAAD;IAChB,QAAMrT,KAAK,GAAGme,QAAQ,CAAC9K,CAAC,CAACmpB,aAAF,CAAgB+oC,OAAhB,CAAwBpsD,EAAzB,EAAuC,EAAvC,CAAtB;IACA,QAAMwsD,SAAS,GAAG3lE,KAAK,GAAG,CAA1B;IACA,QAAM0lE,SAAS,GAAG1lE,KAAK,GAAG,CAA1B;IACA,QAAMk+C,IAAI,GAAGmnB,IAAI,CAACM,SAAD,CAAjB;IACA,QAAMF,OAAO,GAAGJ,IAAI,CAACK,SAAD,CAApB;;IACA,YAAQryD,CAAC,CAAClT,GAAV;IACE,WAAKskE,QAAQ,CAACC,SAAd;IAAyB;IACvBrxD,UAAAA,CAAC,CAAC7P,cAAF;;IACA,cAAMoiE,IAAI,kBAAOr+C,OAAjB;;IACA,cAAIA,MAAM,CAACvnB,KAAD,CAAV,EAAmB;IACjB4lE,YAAAA,IAAI,CAAC5lE,KAAD,CAAJ,GAAc,EAAd;IACAolE,YAAAA,SAAS,CAACQ,IAAD,CAAT;IACD,WAHD,MAGO,IAAI1nB,IAAI,IAAIA,IAAI,CAAC3kC,OAAjB,EAA0B;IAC/BqsD,YAAAA,IAAI,CAACD,SAAD,CAAJ,GAAkB,EAAlB;IACAznB,YAAAA,IAAI,CAAC3kC,OAAL,CAAaoX,KAAb,CAAmB;IAAE0H,cAAAA,aAAa,EAAE;IAAjB,aAAnB;IACA+sC,YAAAA,SAAS,CAACQ,IAAD,CAAT;IACD;;IACD;IACD;;IACD,WAAKnB,QAAQ,CAACv3C,IAAd;IAAoB;IAClB7Z,UAAAA,CAAC,CAAC7P,cAAF;;IACA,cAAI06C,IAAI,IAAIA,IAAI,CAAC3kC,OAAjB,EAA0B;IACxB2kC,YAAAA,IAAI,CAAC3kC,OAAL,CAAaoX,KAAb,CAAmB;IAAE0H,cAAAA,aAAa,EAAE;IAAjB,aAAnB;IACD;;IACD;IACD;;IACD,WAAKosC,QAAQ,CAACx3C,KAAd;IAAqB;IACnB5Z,UAAAA,CAAC,CAAC7P,cAAF;;IACA,cAAIiiE,OAAO,IAAIA,OAAO,CAAClsD,OAAvB,EAAgC;IAC9BksD,YAAAA,OAAO,CAAClsD,OAAR,CAAgBoX,KAAhB,CAAsB;IAAE0H,cAAAA,aAAa,EAAE;IAAjB,aAAtB;IACD;;IACD;IACD;;IACD,WAAKosC,QAAQ,CAACE,EAAd;IACA,WAAKF,QAAQ,CAACG,IAAd;IACA,WAAKH,QAAQ,CAACpxD,CAAd;IACA,WAAKoxD,QAAQ,CAACI,CAAd;IAAiB;IACf,cAAI1gE,IAAI,KAAK,QAAb,EAAuB;IACrBkP,YAAAA,CAAC,CAAC7P,cAAF;IACD;;IACD;IACD;IApCH;IAwCD,GA9CD;;IAgDA,MAAMqiE,iBAAiB,GAAG,SAApBA,iBAAoB,CAACnuE,CAAD;IACxB,WAAAoF,8BAAU,CACR;IACE,qCAA+B,IADjC;IAEE,cAAQpF,CAAC,GAAG;IAFd,KADQ,EAKR0F,SALQ,CAAV;IAMC,GAPH;;IASA,sBACE3C,uCAAA,MAAA;qBAAe;IAAqC2C,IAAAA,SAAS,EAAC;OAA9D,EACGmqB,MAAM,CAACznB,GAAP,CAAW,UAAChI,GAAD,EAAckI,KAAd;IAAgC,wBAC1CvF,uCAAA,CAACq3B,KAAD;IACE3xB,MAAAA,GAAG,EAAEH;IACL5C,MAAAA,SAAS,EAAEyoE,iBAAiB,CAAC7lE,KAAD;IAC5BrF,MAAAA,IAAI,EAAC;IACLy0B,MAAAA,QAAQ,EAAC;IACTl3B,MAAAA,KAAK,EAAEJ;IACP+jB,MAAAA,WAAW,EAAEA;IACbpX,MAAAA,QAAQ,EAAEwV;IACVlG,MAAAA,SAAS,EAAEA;IACXikB,MAAAA,OAAO,EAAEoF;IACTniB,MAAAA,MAAM,EAAED;qBACChb;IACTiF,MAAAA,GAAG,EAAEogE,IAAI,CAACrlE,KAAD;IACTmE,MAAAA,IAAI,EAAEA;WACFqB,KAdN,CAD0C;IAiB3C,GAjBA,CADH,CADF;IAsBD;;IAEDs/D,qBAAqB,CAAC9lE,WAAtB,GAAoC,uBAApC;IACA8lE,qBAAqB,CAAC5lE,YAAtB,GAAqC;IACnCiF,EAAAA,IAAI,EAAE,QAD6B;IAEnC4gE,EAAAA,MAAM,EAAE;IAF2B,CAArC;;ICnOA,IAAMrlC,WAAW,GAAG;IAClBnkC,EAAAA,OAAO,EAAE,cADS;IAElBw8B,EAAAA,IAAI,EAAE,MAFY;IAGlBz8B,EAAAA,OAAO,EAAE,SAHS;IAIlBH,EAAAA,KAAK,EAAE;IAJW,CAApB;QA0Ba8jD,aAAa,GAAG,SAAhBA,aAAgB,CAACtlD,KAAD;;;IACnB,MAAAiB,UAAU,GAAmCjB,KAAK,WAAlD;IAAA,MAAYyD,SAAS,GAAwBzD,KAAK,UAAlD;IAAA,MAAuBwmC,WAAW,GAAWxmC,KAAK,YAAlD;IAAA,MAAoCgB,IAAI,GAAKhB,KAAK,KAAlD;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMmsE,kBAAkB,GAAGhpE,8BAAU,WAEjC3H,GAAC,gBAAD,GAAmB,QAFc,GAInCiI,SAJmC,CAArC;IAOA,MAAM2iC,SAAS,GAAGjjC,8BAAU,WAC1BE,GAAC,8BAAD,GAAiCpC,UAAU,KAAK,WAChDoC,GAAC,4BAAD,GAA+BrC,IAAI,KAAK,SACxCqC,GAAC,8BAAD,GAAiCrC,IAAI,KAAK,aAHhB,EAA5B;IAMA,MAAMslC,gBAAgB,GAAGnjC,8BAAU,WACjCR,GAAC,yBAAuB1B,WAAxB,GAAuCA,cADN,EAAnC;IAIA,MAAMmrE,QAAQ,GAAGprE,IAAI,KAAK,OAAT,GAAmB,EAAnB,GAAwB,EAAzC;IACA,MAAMqrE,UAAU,GAAGrrE,IAAI,KAAK,OAAT,GAAmB,QAAnB,GAA8ByM,SAAjD;IAEA,sBACE3M,8BAAA,MAAA;qBAAe;SAAiCb;IAAWwD,IAAAA,SAAS,EAAE0oE;QAAtE,EACGlrE,UAAU,KAAK,SAAf,iBACCH,8BAAA,CAACsB,IAAD;qBACY;IACVsB,IAAAA,IAAI,EAAEqiC,WAAW,CAAC9kC,UAAD;IACjBA,IAAAA,UAAU,EAAEA;IACZwC,IAAAA,SAAS,EAAE2iC;IACXplC,IAAAA,IAAI,EAAEorE;OALR,CAFJ,eAUEtrE,8BAAA,CAACyC,IAAD;IACEvC,IAAAA,IAAI,EAAEA;IACNwC,IAAAA,MAAM,EAAE6oE;IACR5oE,IAAAA,SAAS,EAAE6iC;qBACD;OAJZ,EAMGE,WANH,CAVF,CADF;IAqBD;IAED8e,aAAa,CAACjgD,WAAd,GAA4B,eAA5B;IACAigD,aAAa,CAAC//C,YAAd,GAA6B;IAC3BtE,EAAAA,UAAU,EAAE,SADe;IAE3BulC,EAAAA,WAAW,EAAE,EAFc;IAG3BxlC,EAAAA,IAAI,EAAE;IAHqB,CAA7B;;ICDA,IAAM2+D,cAAc,GAAG,SAAjBA,cAAiB,CACrBv4D,IADqB,EAErBklE,cAFqB,EAGrBC,kBAHqB,EAIrBvrE,IAJqB,EAKrBwrE,SALqB,EAMrBzhE,QANqB;IAQrB,SAAO3D,IAAI,CAACjB,GAAL,CAAS,UAACC,IAAD,EAAeqmE,aAAf;IACN,QAAA/oE,IAAI,GAAuC0C,IAAI,KAA/C;IAAA,QAAM7H,KAAK,GAAgC6H,IAAI,MAA/C;IAAA,QAAamZ,QAAQ,GAAsBnZ,IAAI,SAA/C;IAAA,QAAuBuF,QAAQ,GAAYvF,IAAI,SAA/C;IAAA,QAAiC6D,KAAK,GAAK7D,IAAI,MAA/C;IACR,wBACEtF,8BAAA,CAACoe,QAAD;IACE1Y,MAAAA,GAAG,EAAEimE;IACLxiE,MAAAA,KAAK,EAAEA;IACPa,MAAAA,QAAQ,EAAEwhE;IACV3gE,MAAAA,QAAQ,EAAEA,QAAQ,IAAI4gE;IACtBhtD,MAAAA,QAAQ,EAAEA;IACVve,MAAAA,IAAI,EAAEA;IACN0C,MAAAA,IAAI,EAAEA;IACNnF,MAAAA,KAAK,EAAEA;IACP6gB,MAAAA,cAAc,EAAErU,QAAQ,CAAC3N,MAAT,KAAoB,CAApB,IAAyB2N,QAAQ,CAACnP,QAAT,CAAkB2C,KAAlB;IACzCkF,MAAAA,SAAS,EAAEipE,oBAAoB,CAACF,SAAD,EAAYC,aAAZ;SAVjC,CADF;IAcD,GAhBM,CAAP;IAiBD,CAzBD;;IA2BA,IAAME,WAAW,GAAG,SAAdA,WAAc,CAClBvlE,IADkB,EAElBklE,cAFkB,EAGlBC,kBAHkB,EAIlBvrE,IAJkB,EAKlBwrE,SALkB,EAMlBzhE,QANkB;IAQlB,SAAO3D,IAAI,CAACjB,GAAL,CAAS,UAACC,IAAD,EAAewmE,UAAf;IACN,QAAAlpE,IAAI,GAAuC0C,IAAI,KAA/C;IAAA,QAAM7H,KAAK,GAAgC6H,IAAI,MAA/C;IAAA,QAAamZ,QAAQ,GAAsBnZ,IAAI,SAA/C;IAAA,QAAuBuF,QAAQ,GAAYvF,IAAI,SAA/C;IAAA,QAAiC6D,KAAK,GAAK7D,IAAI,MAA/C;IACR,wBACEtF,8BAAA,CAAC6uC,KAAD;IACEnpC,MAAAA,GAAG,EAAEomE;IACL3iE,MAAAA,KAAK,EAAEA;IACPa,MAAAA,QAAQ,EAAEwhE;IACV3gE,MAAAA,QAAQ,EAAEA,QAAQ,IAAI4gE;IACtBhtD,MAAAA,QAAQ,EAAEA;IACVve,MAAAA,IAAI,EAAEA;IACN0C,MAAAA,IAAI,EAAEA;IACNnF,MAAAA,KAAK,EAAEA;IACP6gB,MAAAA,cAAc,EAAErU,QAAQ,CAAC3N,MAAT,KAAoB,CAApB,IAAyB2N,QAAQ,CAACnP,QAAT,CAAkB2C,KAAlB;IACzCkF,MAAAA,SAAS,EAAEopE,iBAAiB,CAACL,SAAD,EAAYI,UAAZ;SAV9B,CADF;IAcD,GAhBM,CAAP;IAiBD,CAzBD;;IA2BA,IAAMF,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACF,SAAD,EAAiCnmE,KAAjC;;;IAC3B,MAAMymE,uBAAuB,GAAG3pE,8BAAU,WACxC3H,GAAC,0BAAwBgxE,UAAzB,GAAuC,MACvChxE,GAAC,OAAD,GAAU6K,KAAK,KAAK,CAAV,IAAemmE,SAAS,KAAK,cACvChxE,GAAC,OAAD,GAAUgxE,SAAS,KAAK,gBAHgB,EAA1C;IAKA,SAAOM,uBAAP;IACD,CAPD;;IASA,IAAMD,iBAAiB,GAAG,SAApBA,iBAAoB,CAACL,SAAD,EAAiCnmE,KAAjC;;;IACxB,MAAM0mE,oBAAoB,GAAG5pE,8BAAU,WACrC3H,GAAC,uBAAqBgxE,UAAtB,GAAoC,MACpChxE,GAAC,OAAD,GAAU6K,KAAK,KAAK,CAAV,IAAemmE,SAAS,KAAK,cACvChxE,GAAC,OAAD,GAAUgxE,SAAS,KAAK,gBAHa,EAAvC;IAKA,SAAOO,oBAAP;IACD,CAPD;;QASaC,UAAU,GAAG,SAAbA,UAAa,CAAChtE,KAAD;;;IAEtB,MAAAkmC,KAAK,GAQHlmC,KAAK,MARP;IAAA,MACAitE,OAAO,GAOLjtE,KAAK,QARP;IAAA,MAEA6E,KAME7E,KAAK,UARP;IAAA,MAEAwsE,SAAS,mBAAG,eAFZ;IAAA,MAGAnoE,KAKErE,KAAK,cARP;IAAA,MAGAktE,aAAa,mBAAG,UAHhB;IAAA,MAIApiE,QAAQ,GAIN9K,KAAK,SARP;IAAA,MAKAqH,KAGErH,KAAK,SARP;IAAA,MAKA2L,QAAQ,mBAAG,UALX;IAAA,MAMArE,KAEEtH,KAAK,KARP;IAAA,MAMAgB,IAAI,mBAAG,cANP;IAAA,MAOAyC,SAAS,GACPzD,KAAK,UARP;IAUM,MAAAwH,KAAkBxH,KAAK,SAAvB;IAAA,MAAA+K,QAAQ,mBAAG,OAAX;IACR,MAAIoiE,mBAAmB,GAAIpiE,QAAQ,IAAIA,QAAb,IAA0B,EAApD;IACA,MAAMqiE,eAAe,GAAGjqE,8BAAU,WAE9B3H,GAAC,aAAD,GAAgB,QAFc,GAIhCiI,SAJgC,CAAlC;IAOA,MAAM4pE,uBAAuB,GAAGlqE,8BAAU,WACxCE,GAAC,4BAAD,GAA+B,QADS,EAA1C;IAIA,MAAMiqE,qBAAqB,GAAGnqE,8BAAU,WACtCR,GAAC,8BAAD,GAAiC,QADK,EAAxC;;IAIA,MAAM2pE,cAAc,GAAG,SAAjBA,cAAiB,CAAC5yD,CAAD;IACrB,QAAIA,CAAC,CAAC6G,MAAF,CAASV,OAAT,IAAoBqtD,aAAxB,EAAuC;IACrC,UAAI,CAACC,mBAAmB,CAACvxE,QAApB,CAA6B8d,CAAC,CAAC6G,MAAF,CAAShiB,KAAtC,CAAL,EAAmD;IACjD4uE,QAAAA,mBAAmB,kBAAOA,sBAAqBzzD,CAAC,CAAC6G,MAAF,CAAShiB,OAAxD;IACD;IACF,KAJD,MAIO,IAAI,CAACmb,CAAC,CAAC6G,MAAF,CAASV,OAAV,IAAqBqtD,aAAzB,EAAwC;IAC7CC,MAAAA,mBAAmB,GAAGA,mBAAmB,CAACxsE,MAApB,CAA2B,UAAC+gC,EAAD;IAAQ,eAAAA,EAAE,KAAKhoB,CAAC,CAAC6G,MAAF,CAAShiB,KAAhB;IAAqB,OAAxD,CAAtB;IACD;;IACD,QAAI,CAAC2uE,aAAL,EAAoB;IAClB,UAAI,CAACC,mBAAmB,CAACvxE,QAApB,CAA6B8d,CAAC,CAAC6G,MAAF,CAAShiB,KAAtC,CAAL,EAAmD;IACjD4uE,QAAAA,mBAAmB,GAAG,EAAtB;IACAA,QAAAA,mBAAmB,kBAAOA,sBAAqBzzD,CAAC,CAAC6G,MAAF,CAAShiB,OAAxD;IACD;IACF;;IACD,QAAIuM,QAAJ,EAAcA,QAAQ,CAAC4O,CAAD,EAAIyzD,mBAAJ,CAAR;IACf,GAfD;;IAiBA,sBACErsE,8BAAA,0BAAA,MAAA,eACEA,8BAAA,WAAA;IAAU2C,IAAAA,SAAS,EAAE2pE;qBAA2B;OAAhD,EACGlnC,KAAK,IAAIA,KAAK,CAACljC,IAAN,EAAT,iBAAyBlC,8BAAA,CAACgjC,KAAD;IAAOpgB,IAAAA,SAAS,EAAE;OAAlB,EAAyBwiB,KAAK,CAACljC,IAAN,EAAzB,CAD5B,EAEGkqE,aAAa,gBACZpsE,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE,MAAG+oE,SAAS,KAAK,YAAd,GAA6Bc,qBAA7B,GAAqDD,uBAAxD;OAAhB,EACG1N,cAAc,CAACsN,OAAD,EAAUX,cAAV,EAA0B3gE,QAA1B,EAAoC3K,IAApC,EAA0CwrE,SAA1C,EAAqDzhE,QAArD,CADjB,CADY,gBAKZjK,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAE,MAAG+oE,SAAS,KAAK,YAAd,GAA6Bc,qBAA7B,GAAqDD,uBAAxD;OAAhB,EACGV,WAAW,CAACM,OAAD,EAAUX,cAAV,EAA0B3gE,QAA1B,EAAoC3K,IAApC,EAA0CwrE,SAA1C,EAAqDzhE,QAArD,CADd,CAPJ,CADF,CADF;IAgBD;IAEDiiE,UAAU,CAAC3nE,WAAX,GAAyB,YAAzB;IACA2nE,UAAU,CAACznE,YAAX,GAA0B;IACxBinE,EAAAA,SAAS,EAAE,UADa;IAExBxrE,EAAAA,IAAI,EAAE,SAFkB;IAGxBksE,EAAAA,aAAa,EAAE,KAHS;IAIxBvhE,EAAAA,QAAQ,EAAE;IAJc,CAA1B;;QCvMa+5D,OAAO,GAAG,SAAVA,OAAU,CAAC1lE,KAAD;;;IACb,MAAA2lE,QAAQ,GAA4B3lE,KAAK,SAAzC;IAAA,MAAUiB,UAAU,GAAgBjB,KAAK,WAAzC;IAAA,MAAsByD,SAAS,GAAKzD,KAAK,UAAzC;IAER,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMutE,YAAY,GAAGpqE,8BAAU,WAE3B3H,GAAC,UAAD,GAAa,MACbA,GAAC,sBAAD,GAAyB,CAACmqE,UAC1BnqE,GAAC,oBAAD,GAAuBmqE,UACvBnqE,GAAC,iBAAD,GAAoB,CAACmqE,QAAD,IAAa1kE,UAAU,KAAK,UAChDzF,GAAC,kBAAD,GAAqB,CAACmqE,QAAD,IAAa1kE,UAAU,KAAK,YANtB,GAQ7BwC,SAR6B,CAA/B;IAWA,sBAAO3C,8BAAA,KAAA;qBAAc;SAA2Bb;IAAWwD,IAAAA,SAAS,EAAE8pE;QAA/D,CAAP;IACD;IAED7H,OAAO,CAACrgE,WAAR,GAAsB,SAAtB;IACAqgE,OAAO,CAACngE,YAAR,GAAuB;IACrBtE,EAAAA,UAAU,EAAE,OADS;IAErB0kE,EAAAA,QAAQ,EAAE;IAFW,CAAvB;;QCtBahiC,QAAQ,GAAG,SAAXA,QAAW,CAAC3jC,KAAD;IACd,MAAA6C,KAAK,GAAyB7C,KAAK,MAAnC;IAAA,MAAO4jC,OAAO,GAAgB5jC,KAAK,QAAnC;IAAA,MAAgByD,SAAS,GAAKzD,KAAK,UAAnC;IACR,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,CACxB;IACE,YAAQ;IADV,GADwB,EAIxBM,SAJwB,CAA1B;IAOA,MAAI,CAACmgC,OAAL,EAAc,OAAO,IAAP;;IAEd,MAAI/gC,KAAJ,EAAW;IACT,wBAAO/B,8BAAA,CAACwkD,aAAD;IAAetkD,MAAAA,IAAI,EAAC;IAAQyC,MAAAA,SAAS,EAAEkF;IAAS1H,MAAAA,UAAU,EAAC;IAAQulC,MAAAA,WAAW,EAAE5C;SAAhF,CAAP;IACD;;IAED,sBACE9iC,8BAAA,MAAA,eAASb;IAAWwD,IAAAA,SAAS,EAAEkF;QAA/B,eACE7H,8BAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAC;IAASD,IAAAA,IAAI,EAAC;IAAQwC,IAAAA,MAAM,EAAC;OAA9C,EACGogC,OADH,CADF,CADF;IAOD;IAEDD,QAAQ,CAACt+B,WAAT,GAAuB,UAAvB;;IC2BA,IAAM6F,WAAW,GAAmC;IAClD3I,EAAAA,IAAI,EAAE,EAD4C;IAElDD,EAAAA,OAAO,EAAE;IAFyC,CAApD;QAKakrE,UAAU,gBAAG1sE,gBAAK,CAACuK,UAAN,CAAqD,UAACrL,KAAD,EAAQsL,GAAR;;;IACrE,MAAA7I,QAAQ,GAA4FzC,KAAK,SAAzG;IAAA,MAAUwK,IAAI,GAAsFxK,KAAK,KAAzG;IAAA,MAAgByD,SAAS,GAA2EzD,KAAK,UAAzG;IAAA,MAA2B2L,QAAQ,GAAiE3L,KAAK,SAAzG;IAAA,MAAqCwL,QAAQ,GAAuDxL,KAAK,SAAzG;IAAA,MAA+CsG,IAAI,GAAiDtG,KAAK,KAAzG;IAAA,MAAqDwJ,MAAM,GAAyCxJ,KAAK,OAAzG;IAAA,MAA6DgB,IAAI,GAAmChB,KAAK,KAAzG;IAAA,MAAmEuL,SAAS,GAAwBvL,KAAK,UAAzG;IAAA,MAA8E4L,QAAQ,GAAc5L,KAAK,SAAzG;IAAA,MAA2F6L,IAAI,UAAK7L,OAAtG,WAAA,QAAA,aAAA,YAAA,YAAA,QAAA,UAAA,QAAA,aAAA,YAAA,EAAE;;IAER,MAAM8L,WAAW,GAAG3I,8BAAU,WAC5B3H,GAAC,aAAD,GAAgB,MAChBA,GAAC,iBAAewF,KAAhB,GAAyBA,MACzBxF,GAAC,sBAAD,GAAyB,CAACgO,QAC1BhO,GAAC,qBAAD,GAAwBgO,QACxBhO,GAAC,2BAAyB+P,UAA1B,GAAwC9I,QAAQ,IAAI8I,WACpD/P,GAAC,KAAGiI,UAAJ,GAAkBA,aANU,EAA9B;IASA,MAAMsI,SAAS,GAAG5I,8BAAU,WAC1BE,GAAC,kBAAD,GAAqB,MACrBA,GAAC,sBAAoBkI,UAArB,GAAmC9I,QAAQ,IAAI8I,aAFrB,EAA5B;IAKA,sBACEzK,8BAAA,SAAA;IACEwK,IAAAA,GAAG,EAAEA;IACLd,IAAAA,IAAI,EAAEA;qBACI;IACV/G,IAAAA,SAAS,EAAEqI;IACXH,IAAAA,QAAQ,EAAEA;IACVH,IAAAA,QAAQ,EAAEA;SACNK,KAPN,eASE/K,8BAAA,0BAAA,MAAA,EACGwF,IAAI,iBACHxF,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEsI;OAAhB,eACEjL,8BAAA,CAACsB,IAAD;qBACY;IACVsB,IAAAA,IAAI,EAAE4C;IACNkE,IAAAA,IAAI,EAAEoB;IACN5K,IAAAA,IAAI,EAAEA,IAAI,IAAIkK,WAAW,CAAClK,IAAD;OAJ3B,CADF,CAFJ,EAWGyB,QAXH,CATF,CADF;IAyBD,CA1CyB;IA4C1B+qE,UAAU,CAACnoE,WAAX,GAAyB,YAAzB;IACAmoE,UAAU,CAACjoE,YAAX,GAA0B;IACxBvE,EAAAA,IAAI,EAAE,SADkB;IAExBwJ,EAAAA,IAAI,EAAE,QAFkB;IAGxBe,EAAAA,SAAS,EAAE;IAHa,CAA1B;;QChGakiE,UAAU,GAAG,SAAbA,UAAa,CAACztE,KAAD;;;IAChB,MAAAyC,QAAQ,GAAoDzC,KAAK,SAAjE;IAAA,MAAU2L,QAAQ,GAA0C3L,KAAK,SAAjE;IAAA,MAAoByD,SAAS,GAA+BzD,KAAK,UAAjE;IAAA,MAA+BsJ,MAAM,GAAuBtJ,KAAK,OAAjE;IAAA,MAAuC0J,OAAO,GAAc1J,KAAK,QAAjE;IAAA,MAAmD6L,IAAI,UAAK7L,OAA9D,WAAA,YAAA,aAAA,UAAA,WAAA,EAAE;;IAER,MAAM2I,OAAO,GAAGxF,8BAAU,WAEtB3H,GAAC,aAAD,GAAgB,MAChBA,GAAC,uBAAD,GAA0BmQ,YAHJ,GAKxBlI,SALwB,CAA1B;;IAQA,MAAMga,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvB,QAAIA,KAAK,CAAClX,GAAN,KAAc,OAAd,IAAyBkD,OAA7B,EAAsC;IACpCA,MAAAA,OAAO,CAACgU,KAAD,CAAP;IACD;IACF,GAJD;;IAMA,sBACE5c,8BAAA,MAAA;IACE0K,IAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQ;IAC1BrH,IAAAA,IAAI,EAAC;qBACK;IACVb,IAAAA,SAAS,EAAEkF;IACXe,IAAAA,OAAO,EAAEA;IACT0Q,IAAAA,SAAS,EAAEqD;SACP5R,KAPN,EASGF,QAAQ,iBACP7K,8BAAA,MAAA;IAAKgF,IAAAA,KAAK,EAAE;IAAEwD,MAAAA,MAAM;IAAR;qBAAsB;IAAkC7F,IAAAA,SAAS,EAAC;OAA9E,CAVJ,EAYGhB,QAZH,CADF;IAgBD;IAEDgrE,UAAU,CAACpoE,WAAX,GAAyB,YAAzB;;ICxDA,IAAMqoE,kBAAkB,GAAG,IAAIvd,GAAJ,EAA3B;aAEgBwd;IACR,MAAAnyE,KAAwCsF,gBAAK,CAAC8B,QAAN,CAAyB,EAAzB,CAAxC;IAAA,MAACgrE,eAAe,QAAhB;IAAA,MAAkBC,kBAAkB,QAApC;;IAEN,MAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAACtuD,EAAD;IACrB,WAAOouD,eAAe,CAAChyE,QAAhB,CAAyB4jB,EAAzB,CAAP;IACD,GAFD;;IAIA,MAAMuuD,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACvuD,EAAD,EAAajhB,KAAb;IAC1B,QAAIyvE,MAAM,kBAAOJ,gBAAjB;;IAEA,QAAIE,cAAc,CAACtuD,EAAD,CAAlB,EAAwB;IACtBwuD,MAAAA,MAAM,GAAGJ,eAAe,CAACjtE,MAAhB,CAAuB,UAACstE,OAAD;IAAqB,eAAAzuD,EAAE,KAAKyuD,OAAP;IAAc,OAA1D,CAAT;IACAP,MAAAA,kBAAkB,UAAlB,CAA0BluD,EAA1B;IACD,KAHD,MAGO;IACLwuD,MAAAA,MAAM,CAAC1oD,IAAP,CAAY9F,EAAZ;IACAkuD,MAAAA,kBAAkB,CAACQ,GAAnB,CAAuB1uD,EAAvB,EAA2BjhB,KAA3B;IACD;;IAEDsvE,IAAAA,kBAAkB,CAACG,MAAD,CAAlB;IACD,GAZD;;IAcA,SAAO;IACLJ,IAAAA,eAAe,iBADV;IAELF,IAAAA,kBAAkB,oBAFb;IAGLI,IAAAA,cAAc,gBAHT;IAILC,IAAAA,mBAAmB;IAJd,GAAP;IAMD;;aC7BeI;IACR,MAAA3yE,KAAwCsF,gBAAK,CAAC8B,QAAN,CAAyB,EAAzB,CAAxC;IAAA,MAACgrE,eAAe,QAAhB;IAAA,MAAkBC,kBAAkB,QAApC;;IACA,MAAAxqE,KAA8CvC,gBAAK,CAAC8B,QAAN,CAAyB,EAAzB,CAA9C;IAAA,MAAC8qE,kBAAkB,QAAnB;IAAA,MAAqBU,qBAAqB,QAA1C;;IAEN,MAAMN,cAAc,GAAG,SAAjBA,cAAiB,CAACtuD,EAAD;IACrB,WAAOouD,eAAe,CAAChyE,QAAhB,CAAyB4jB,EAAzB,CAAP;IACD,GAFD;;IAIA,MAAMuuD,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACvuD,EAAD,EAAajhB,KAAb;IAC1B,QAAIyvE,MAAM,kBAAOJ,gBAAjB;;IACA,QAAIS,SAAS,kBAAOX,mBAApB;;IAEA,QAAIE,eAAe,CAAChyE,QAAhB,CAAyB4jB,EAAzB,CAAJ,EAAkC;IAChCwuD,MAAAA,MAAM,GAAG,EAAT;IACAK,MAAAA,SAAS,GAAG,EAAZ;IACD,KAHD,MAGO;IACLL,MAAAA,MAAM,GAAG,CAACxuD,EAAD,CAAT;IACA6uD,MAAAA,SAAS,GAAG9vE,KAAK,GAAG,CAACA,KAAD,CAAH,GAAa,EAA9B;IACD;;IACDsvE,IAAAA,kBAAkB,CAACG,MAAD,CAAlB;IACAI,IAAAA,qBAAqB,CAACC,SAAD,CAArB;IACD,GAbD;;IAeA,SAAO;IACLT,IAAAA,eAAe,iBADV;IAELF,IAAAA,kBAAkB,oBAFb;IAGLI,IAAAA,cAAc,gBAHT;IAILC,IAAAA,mBAAmB;IAJd,GAAP;IAMD;;QCOYO,aAAa,GAAG,SAAhBA,aAAgB,CAACtuE,KAAD;;;IACnB,MAAAyC,QAAQ,GAAoFzC,KAAK,SAAjG;IAAA,MAAU0J,OAAO,GAA2E1J,KAAK,QAAjG;IAAA,MAAmB2L,QAAQ,GAAiE3L,KAAK,SAAjG;IAAA,MAA6Bwf,EAAE,GAA6Dxf,KAAK,GAAjG;IAAA,MAAiCuuE,SAAS,GAAkDvuE,KAAK,UAAjG;IAAA,MAA4CwuE,aAAa,GAAmCxuE,KAAK,cAAjG;IAAA,MAA2D+K,QAAQ,GAAyB/K,KAAK,SAAjG;IAAA,MAAqEyD,SAAS,GAAczD,KAAK,UAAjG;IAAA,MAAmF6L,IAAI,UAAK7L,OAA9F,WAAA,WAAA,YAAA,MAAA,aAAA,iBAAA,YAAA,aAAA,EAAE;;IAER,MAAM2I,OAAO,GAAGxF,8BAAU,WAEtB3H,GAAC,iBAAD,GAAoB,MACpBA,GAAC,2BAAD,GAA8BuP,UAC9BvP,GAAC,2BAAD,GAA8BmQ,QAAQ,IAAI,CAACZ,UAC3CvP,GAAC,oCAAD,GAAuCmQ,QAAQ,IAAIZ,YAL7B,GAOxBtH,SAPwB,CAA1B;;IAUA,MAAMkG,cAAc,GAAG,SAAjBA,cAAiB,CAAC+T,KAAD;IACrBhU,IAAAA,OAAO,IAAIA,OAAO,CAACgU,KAAD,EAAQ8B,EAAR,EAAY+uD,SAAZ,CAAlB;IACD,GAFD;;IAIA,MAAM9wD,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvB,QAAIA,KAAK,CAAClX,GAAN,KAAc,OAAlB,EAA2B;IACzBmD,MAAAA,cAAc,CAAC+T,KAAD,CAAd;IACD;IACF,GAJD;;IAMA,sBACE5c,8BAAA,MAAA;IACEwD,IAAAA,IAAI,EAAC;wBACSyG;IACdS,IAAAA,QAAQ,EAAE;IACV4O,IAAAA,SAAS,EAAEqD;IACX/T,IAAAA,OAAO,EAAE,iBAACgU,KAAD;IAAW,aAAA/T,cAAc,CAAC+T,KAAD,CAAd;IAAqB;IACzCja,IAAAA,SAAS,EAAEkF;qBACD;SACNkD,KARN,eAUE/K,8BAAA,MAAA;IACE2C,IAAAA,SAAS,EAAC;IACVqC,IAAAA,KAAK,EAAE;IAAEwD,MAAAA,MAAM,EAAEklE;IAAV;qBACG;OAHZ,CAVF,EAeG/rE,QAfH,CADF;IAmBD;IAED6rE,aAAa,CAAC/oE,YAAd,GAA6B;IAC3BoG,EAAAA,QAAQ,EAAE,KADiB;IAE3B6iE,EAAAA,aAAa,EAAE;IAFY,CAA7B;IAKAF,aAAa,CAACX,cAAd,GAA+BA,cAA/B;IAEAW,aAAa,CAACH,eAAd,GAAgCA,eAAhC;;aCzFgBM,UAAaC,OAAYh8D,MAAcipD;IACrD+S,EAAAA,KAAK,GAAGA,KAAK,CAACnqE,KAAN,EAAR;IACAmqE,EAAAA,KAAK,CAACzxC,MAAN,CAAa0+B,EAAE,GAAG,CAAL,GAAS+S,KAAK,CAACtxE,MAAN,GAAeu+D,EAAxB,GAA6BA,EAA1C,EAA8C,CAA9C,EAAiD+S,KAAK,CAACzxC,MAAN,CAAavqB,IAAb,EAAmB,CAAnB,EAAsB,CAAtB,CAAjD;IACA,SAAOg8D,KAAP;IACD;aAEeC,mBAAmBxiD;IACjC,MAAMrmB,KAAK,GAAGmD,MAAM,CAAC9N,gBAAP,CAAwBgxB,OAAxB,CAAd;IACA,SACEvsB,IAAI,CAACqH,GAAL,CAASud,QAAQ,CAAC1e,KAAK,CAAC,YAAD,CAAN,EAA6B,EAA7B,CAAjB,EAAmD0e,QAAQ,CAAC1e,KAAK,CAAC,eAAD,CAAN,EAAgC,EAAhC,CAA3D,IACAqmB,OAAO,CAACM,qBAAR,GAAgC7oB,MAFlC;IAID;aAEegrE,aAAalxD;IAC3B,SAAQA,KAAK,CAACmxD,OAAN,IAAiBnxD,KAAK,CAACmxD,OAAN,CAAczxE,MAAhC,IAA4CsgB,KAAK,CAACoxD,cAAN,IAAwBpxD,KAAK,CAACoxD,cAAN,CAAqB1xE,MAAhG;IACD;aAEe2xE,cAAc5iD,SAAkB6iD,SAA4BC;IAA5B,wBAAA,EAAA;IAAAD,IAAAA,WAAA;;;IAA4B,wBAAA,EAAA;IAAAC,IAAAA,WAAA;;;IAC1E,MAAI,CAAC9iD,OAAL,EAAc;;IACd,MAAI6iD,OAAO,KAAK,IAAZ,IAAoBC,OAAO,KAAK,IAApC,EAA0C;IACvC9iD,IAAAA,OAAuB,CAACrmB,KAAxB,CAA8BopE,cAA9B,CAA6C,WAA7C;IACD;IACD;;IACA/iD,EAAAA,OAAuB,CAACrmB,KAAxB,CAA8B2sC,SAA9B,GAA0C,eAAaw8B,OAAb,SAAA,GAA2BD,OAA3B,QAA1C;IACF;aAEeG,kBAAkBhjD,SAAkBijD,UAAkBC;IACpE,MAAIljD,OAAJ,EAAa;IACVA,IAAAA,OAAuB,CAACrmB,KAAxB,CAA8B,YAA9B,IAAqD,eAAaspE,QAAb,OAAA,IAA0BC,MAAM,GAAG,MAAIA,MAAP,GAAkB,EAAlD,CAArD;IACF;IACF;aAIeC,aAAaZ,OAAiBa;IAC5C,MAAI7nE,GAAG,GAAG,CAAV;IACA,MAAIT,GAAG,GAAGynE,KAAK,CAACtxE,MAAN,GAAe,CAAzB;IACA,MAAIoyE,KAAJ;;IACA,SAAO9nE,GAAG,IAAIT,GAAd,EAAmB;IACjBuoE,IAAAA,KAAK,GAAG5vE,IAAI,CAACC,KAAL,CAAW,CAACoH,GAAG,GAAGS,GAAP,IAAc,CAAzB,CAAR;;IACA,QAAI,CAACgnE,KAAK,CAACc,KAAK,GAAG,CAAT,CAAN,IAAsBd,KAAK,CAACc,KAAD,CAAL,IAAgBD,WAAhB,IAA+Bb,KAAK,CAACc,KAAK,GAAG,CAAT,CAAL,IAAoBD,WAA7E,EAA2F;IACzF,aAAOC,KAAP;IACD,KAFD,MAEO,IAAId,KAAK,CAACc,KAAD,CAAL,GAAeD,WAAf,IAA8Bb,KAAK,CAACc,KAAK,GAAG,CAAT,CAAL,GAAmBD,WAArD,EAAkE;IACvE7nE,MAAAA,GAAG,GAAG8nE,KAAK,GAAG,CAAd;IACD,KAFM,MAEA;IACLvoE,MAAAA,GAAG,GAAGuoE,KAAK,GAAG,CAAd;IACD;IACF;;IACD,SAAO,CAAC,CAAR;IACD;IAGM,IAAMC,IAAI,GAAG,SAAPA,IAAO,CAACthB,EAAD;IAClB,MAAIuhB,QAAQ,GAAU,EAAtB;IACA,MAAIC,OAAO,GAAkB,IAA7B;;IACA,MAAMC,SAAS,GAAG,SAAZA,SAAY;IAAC,iBAAA;;aAAA,YAAAtxE,uBAAAA;IAAA4vD,MAAAA,QAAA,gBAAA;;;IACjBwhB,IAAAA,QAAQ,GAAGxhB,IAAX;;IACA,QAAIyhB,OAAJ,EAAa;IACX;IACD;;IACDA,IAAAA,OAAO,GAAG55C,qBAAqB,CAAC;IAC9B45C,MAAAA,OAAO,GAAG,IAAV;IACAxhB,MAAAA,EAAE,MAAF,OAAA,EAAMuhB,QAAN;IACD,KAH8B,CAA/B;IAID,GATD;;IAUAE,EAAAA,SAAS,CAACtrB,MAAV,GAAmB;IACjB,QAAIqrB,OAAJ,EAAa;IACXnsC,MAAAA,oBAAoB,CAACmsC,OAAD,CAApB;IACD;IACF,GAJD;;IAKA,SAAOC,SAAP;IACD,CAnBM;;IChDP,IAAMC,wBAAwB,GAAG,GAAjC;IACA,IAAMC,sBAAsB,GAAG,EAA/B;;IAEA;IAAwC9gE,EAAAA,4BAAA;;IA6BtC,oBAAA,CAAYhP,KAAZ;IAAA,gBACEiP,WAAA,KAAA,EAAMjP,KAAN,SADF;;IA5BAkP,IAAAA,aAAA,gBAAUpO,gBAAK,CAAC0zB,SAAN,EAAV;IACAtlB,IAAAA,cAAA,gBAAWpO,gBAAK,CAAC0zB,SAAN,EAAX;IACAtlB,IAAAA,gBAAA,GAAuB,EAAvB;IACAA,IAAAA,0BAAA,GAAiC,EAAjC;IACAA,IAAAA,oBAAA,GAAiB,CAAjB;IACAA,IAAAA,gBAAA,GAAa,CAAb;IACAA,IAAAA,iBAAA,GAAc,CAAd;IACAA,IAAAA,qBAAA,GAAkB,CAAlB;IAEAA,IAAAA,YAAA,GAAS,CAAC,CAAV;IACAA,IAAAA,gBAAA,GAAa,CAAC,CAAd;IACAA,IAAAA,WAAA,GAAQ;IACN6gE,MAAAA,WAAW,EAAE,CAAC,CADR;IAENC,MAAAA,sBAAsB,EAAE,CAAC,CAFnB;IAGNC,MAAAA,YAAY,EAAE,CAAC,CAHT;IAINC,MAAAA,QAAQ,EAAE,CAJJ;IAKNC,MAAAA,QAAQ,EAAE,CALJ;IAMNC,MAAAA,OAAO,EAAE,CANH;IAONC,MAAAA,OAAO,EAAE,CAPH;IAQNC,MAAAA,YAAY,EAAE,CARR;IASNC,MAAAA,WAAW,EAAE,CATP;IAUNC,MAAAA,cAAc,EAAE,CAVV;IAWNC,MAAAA,YAAY,EAAE;IAXR,KAAR;;IAkDAvhE,IAAAA,iBAAA,GAAc;IACN,UAAA1T,KAAmC0T,KAAI,CAACE,KAAxC;IAAA,UAAEohE,cAAc,oBAAhB;IAAA,UAAkBC,YAAY,kBAA9B;IACN,UAAMC,MAAM,GAAGxhE,KAAI,CAACyhE,OAAL,CAAa/wD,OAA5B;IACA3W,MAAAA,MAAM,CAAC8sB,qBAAP,CAA6B;IAC3B,YAAI06C,YAAJ,EAAkB;IAChBxnE,UAAAA,MAAM,CAACijB,QAAP,CAAgBjjB,MAAM,CAAC2nE,WAAvB,EAAoC3nE,MAAM,CAAC4nE,WAAP,GAAqBL,cAAc,GAAG,GAA1E;IACD,SAFD,MAEO;IACLE,UAAAA,MAAM,CAAC5P,SAAP,IAAoB0P,cAApB;IACD;;IACD,YAAIA,cAAc,KAAK,CAAvB,EAA0B;IACxBthE,UAAAA,KAAI,CAAC4hE,WAAL;IACD;IACF,OATD;IAUD,KAbD;;IAeA5hE,IAAAA,iBAAA,GAAc;IACZ,UAAIA,KAAI,CAACyhE,OAAL,IAAgBzhE,KAAI,CAACyhE,OAAL,CAAa/wD,OAAjC,EAA0C;IACxC,eAAOnhB,KAAK,CAACiU,IAAN,CAAWxD,KAAI,CAACyhE,OAAL,CAAa/wD,OAAb,CAAqBnd,QAAhC,CAAP;IACD;;IAED,aAAO,EAAP;IACD,KAND;;IAcAyM,IAAAA,sBAAA,GAAmB;IACjBA,MAAAA,KAAI,CAAC6hE,UAAL,GAAkB7hE,KAAI,CAAC8hE,WAAL,GAAmB7qE,GAAnB,CAAuB,UAACC,IAAD;IAAU,eAAAA,IAAI,CAACqmB,qBAAL,GAA6BL,GAA7B;IAAgC,OAAjE,CAAlB;IACAld,MAAAA,KAAI,CAAC+hE,oBAAL,GAA4B/hE,KAAI,CAAC8hE,WAAL,GAAmB7qE,GAAnB,CAAuB,UAACC,IAAD;IAAU,eAAAuoE,kBAAkB,CAACvoE,IAAD,CAAlB;IAAwB,OAAzD,CAA5B;IACD,KAHD;;IAKA8I,IAAAA,oBAAA,GAAiB,UAACwK,CAAD;IACf,aAAOxK,KAAI,CAAC8hE,WAAL,GAAmBriD,SAAnB,CAA6B,UAAC4c,KAAD;IAAW,eAAAA,KAAK,KAAK7xB,CAAC,CAAC6G,MAAZ,IAAsBgrB,KAAK,CAAC+D,QAAN,CAAe51B,CAAC,CAAC6G,MAAjB,CAAtB;IAAsD,OAA9F,CAAP;IACD,KAFD;;IAIArR,IAAAA,yBAAA,GAAsB,UAACwK,CAAD;;;IACpB,UAAIxK,KAAI,CAACgiE,WAAL,IAAoBhiE,KAAI,CAACE,KAAL,CAAW2gE,WAAX,GAAyB,CAAC,CAAlD,EAAqD;IACnD9mE,QAAAA,MAAM,CAACwlB,YAAP,CAAoBvf,KAAI,CAACgiE,WAAzB;;IACAhiE,QAAAA,KAAI,CAACiiE,UAAL;IACD;;IACD,UAAMC,OAAO,GAAGxC,YAAY,CAACl1D,CAAD,CAA5B;IACA,UAAI,CAAC03D,OAAD,IAAY13D,CAAC,CAACE,MAAF,KAAa,CAA7B,EAAgC;;IAChC,UAAMvT,KAAK,GAAG6I,KAAI,CAACmiE,cAAL,CAAoB33D,CAApB,CAAd;;IAEA,UAAM43D,eAAe,GAAGpiE,KAAI,CAAC8hE,WAAL,GAAmB3qE,KAAnB,CAAxB;;IACA,UAAMkrE,iBAAiB,SAAI73D,CAAC,CAAC6G,gDAAoBu9B,UAAUxO,SAAS,0BAApE;IACA,UAAI,CAACiiC,iBAAL,EAAwB;IACxB73D,MAAAA,CAAC,CAAC7P,cAAF;;IAEA,UAAIunE,OAAJ,EAAa;IACX,YAAMvK,IAAI,GAAG;IAAE2K,UAAAA,OAAO,EAAE;IAAX,SAAb;IACAF,QAAAA,eAAe,CAACxrE,KAAhB,CAAsB2rE,WAAtB,GAAoC,MAApC;IACAr2E,QAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,UAA1B,EAAsCx6B,KAAI,CAACwiE,SAA3C,EAAsD7K,IAAtD;IACAzrE,QAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,WAA1B,EAAuCx6B,KAAI,CAACyiE,eAA5C,EAA6D9K,IAA7D;IACAzrE,QAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,aAA1B,EAAyCx6B,KAAI,CAACwiE,SAA9C,EAAyD7K,IAAzD;IACD,OAND,MAMO;IACLzrE,QAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,WAA1B,EAAuCx6B,KAAI,CAAC0iE,eAA5C;IACAx2E,QAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,SAA1B,EAAqCx6B,KAAI,CAACwiE,SAA1C;;IAEA,YAAMG,eAAe,GAAG3iE,KAAI,CAAC8hE,WAAL,GAAmB9hE,KAAI,CAACE,KAAL,CAAW2gE,WAA9B,CAAxB;;IACA,YAAI8B,eAAe,IAAIA,eAAe,CAAC/rE,KAAvC,EAA8C;IAC5C+rE,UAAAA,eAAe,CAAC/rE,KAAhB,CAAsB2rE,WAAtB,GAAoC,EAApC;IACD;IACF;;IACDviE,MAAAA,KAAI,CAAC4iE,OAAL,CACER,eADF,EAEEF,OAAO,GAAG13D,CAAC,CAACm1D,OAAF,CAAU,CAAV,EAAarmC,OAAhB,GAA0B9uB,CAAC,CAAC8uB,OAFrC,EAGE4oC,OAAO,GAAG13D,CAAC,CAACm1D,OAAF,CAAU,CAAV,EAAakD,OAAhB,GAA0Br4D,CAAC,CAACq4D,OAHrC,EAIE1rE,KAJF;IAMD,KAnCD;;IAqCA6I,IAAAA,gBAAA,GAAa;IACX,UAAM8iE,UAAU,GAAG9iE,KAAI,CAACyhE,OAAL,CAAa/wD,OAAb,GAAuB1Q,KAAI,CAACyhE,OAAL,CAAa/wD,OAAb,CAAqBkhD,SAA5C,GAAwD,CAA3E;IACA,aAAO73D,MAAM,CAAC4nE,WAAP,GAAqBmB,UAA5B;IACD,KAHD;;IAKA9iE,IAAAA,aAAA,GAAU,UAACqR,MAAD,EAAsBioB,OAAtB,EAAuCupC,OAAvC,EAAwD1rE,KAAxD;IACR,UAAI6I,KAAI,CAACE,KAAL,CAAW6gE,YAAX,GAA0B,CAAC,CAA/B,EAAkC;IAChC/gE,QAAAA,KAAI,CAACC,QAAL,CAAc;IAAE8gE,UAAAA,YAAY,EAAE,CAAC;IAAjB,SAAd;;IACA/gE,QAAAA,KAAI,CAAC+iE,MAAL,GAAc,CAAC,CAAf;IACD;;IACD,UAAMC,UAAU,GAAG3xD,MAAM,CAACkM,qBAAP,EAAnB;IACA,UAAM0lD,YAAY,GAAGlpE,MAAM,CAAC9N,gBAAP,CAAwBolB,MAAxB,CAArB;;IACArR,MAAAA,KAAI,CAACkjE,gBAAL;;IACAljE,MAAAA,KAAI,CAACmjE,cAAL,GAAsBnjE,KAAI,CAACojE,UAAL,EAAtB;IACApjE,MAAAA,KAAI,CAACqjE,WAAL,GAAmBtpE,MAAM,CAAC4nE,WAA1B;IACA3hE,MAAAA,KAAI,CAACsjE,eAAL,GAAuBtjE,KAAI,CAACyhE,OAAL,CAAa/wD,OAAb,CAAsBkhD,SAA7C;;IACA5xD,MAAAA,KAAI,CAACC,QAAL,CAAc;IACZ4gE,QAAAA,WAAW,EAAE1pE,KADD;IAEZ+pE,QAAAA,OAAO,EAAE8B,UAAU,CAAC3+C,IAAX,GAAkB/O,QAAQ,CAAC2tD,YAAY,CAAC,aAAD,CAAb,EAAqC,EAArC,CAFvB;IAGZ9B,QAAAA,OAAO,EAAE6B,UAAU,CAAC9lD,GAAX,GAAiB5H,QAAQ,CAAC2tD,YAAY,CAAC,YAAD,CAAb,EAAoC,EAApC,CAHtB;IAIZ7B,QAAAA,YAAY,EAAE4B,UAAU,CAACtuE,MAJb;IAKZ2sE,QAAAA,WAAW,EAAE2B,UAAU,CAACruE,KALZ;IAMZqsE,QAAAA,QAAQ,EAAE1nC,OANE;IAOZ2nC,QAAAA,QAAQ,EAAE4B;IAPE,OAAd;IASD,KApBD;;IAsBA7iE,IAAAA,iBAAA,GAAc,UAACwK,CAAD;IACZA,MAAAA,CAAC,CAAC+4D,UAAF,IAAgB/4D,CAAC,CAAC7P,cAAF,EAAhB;;IACAqF,MAAAA,KAAI,CAACwjE,MAAL,CAAYh5D,CAAC,CAAC8uB,OAAd,EAAuB9uB,CAAC,CAACq4D,OAAzB;IACD,KAHD;;IAKA7iE,IAAAA,iBAAA,GAAc,UAACwK,CAAD;IACZA,MAAAA,CAAC,CAAC+4D,UAAF,IAAgB/4D,CAAC,CAAC7P,cAAF,EAAhB;;IACAqF,MAAAA,KAAI,CAACwjE,MAAL,CAAYh5D,CAAC,CAACm1D,OAAF,CAAU,CAAV,EAAarmC,OAAzB,EAAkC9uB,CAAC,CAACm1D,OAAF,CAAU,CAAV,EAAakD,OAA/C;IACD,KAHD;;IAKA7iE,IAAAA,aAAA,GAAU,UAACwK,CAAD;IACR,UAAIxK,KAAI,CAACE,KAAL,CAAW2gE,WAAX,GAAyB,CAA7B,EAAgC;IAChC7gE,MAAAA,KAAI,CAACyjE,UAAL,GAAkBzjE,KAAI,CAACyhE,OAAL,CAAa/wD,OAAb,CAAsBkhD,SAAtB,IAAmCpnD,CAAC,CAACk5D,MAAvD;;IACA1jE,MAAAA,KAAI,CAAC2jE,cAAL;IACD,KAJD;;IAMA3jE,IAAAA,YAAA,GAAS,UAACs5B,OAAD,EAAkBupC,OAAlB;IACP,UAAI7iE,KAAI,CAACE,KAAL,CAAW2gE,WAAX,KAA2B,CAAC,CAAhC,EAAmC,OAAO,IAAP;IACnChB,MAAAA,aAAa,CACX7/D,KAAI,CAAC4jE,QAAL,CAAclzD,OADH,EAEXmyD,OAAO,GAAG7iE,KAAI,CAACE,KAAL,CAAW+gE,QAFV,EAGXjhE,KAAI,CAAClP,KAAL,CAAW+yE,cAAX,GAA4B,CAA5B,GAAgCvqC,OAAO,GAAGt5B,KAAI,CAACE,KAAL,CAAW8gE,QAH1C,CAAb;;IAKAhhE,MAAAA,KAAI,CAAC8jE,aAAL,CAAmBjB,OAAnB;;IACA7iE,MAAAA,KAAI,CAAC2jE,cAAL;;IAEA;IACD,KAXD;;IAaA3jE,IAAAA,oBAAA,GAAiB;IACf,UAAMgjE,UAAU,GAAGhjE,KAAI,CAAC4jE,QAAL,CAAclzD,OAAd,CAAuB6M,qBAAvB,EAAnB;;IACA,UAAMwmD,kBAAkB,GAAGf,UAAU,CAAC9lD,GAAX,GAAiB8lD,UAAU,CAACtuE,MAAX,GAAoB,CAAhE;IACA,UAAMsE,MAAM,GAAGymE,kBAAkB,CAACz/D,KAAI,CAAC8hE,WAAL,GAAmB9hE,KAAI,CAACE,KAAL,CAAW2gE,WAA9B,CAAD,CAAjC;;IACA,UAAMmD,cAAc,GAAGhkE,KAAI,CAACojE,UAAL,EAAvB;;IAEA,UAAIpjE,KAAI,CAACmjE,cAAL,KAAwBa,cAA5B,EAA4C;IAC1ChkE,QAAAA,KAAI,CAAC6hE,UAAL,GAAkB7hE,KAAI,CAAC6hE,UAAL,CAAgB5qE,GAAhB,CAAoB,UAAC+B,MAAD;IAAY,iBAAAA,MAAM,IAAIgrE,cAAc,GAAGhkE,KAAI,CAACmjE,cAA1B,CAAN;IAA+C,SAA/E,CAAlB;IACAnjE,QAAAA,KAAI,CAACmjE,cAAL,GAAsBa,cAAtB;IACD;;IACD,UAAIhkE,KAAI,CAACikE,wBAAL,MAAmCjkE,KAAI,CAAClP,KAAL,CAAWozE,eAAlD,EAAmE;IACjElkE,QAAAA,KAAI,CAACmkE,UAAL,GAAkBnkE,KAAI,CAAC6hE,UAAL,CAAgB3zE,MAAhB,GAAyB,CAA3C;IACD,OAFD,MAEO;IACL8R,QAAAA,KAAI,CAACmkE,UAAL,GAAkB/D,YAAY,CAACpgE,KAAI,CAAC6hE,UAAN,EAAkBkC,kBAAlB,CAA9B;IACD;;IACD/jE,MAAAA,KAAI,CAACokE,YAAL,CAAkBpkE,KAAI,CAACmkE,UAAL,KAAoB,CAAC,CAArB,GAAyB,CAAzB,GAA6BnkE,KAAI,CAACmkE,UAApD,EAAgEnkE,KAAI,CAACE,KAAL,CAAW2gE,WAA3E,EAAwF7nE,MAAxF;IACD,KAhBD;;IAkBAgH,IAAAA,mBAAA,GAAgB,UAAC6iE,OAAD;IACR,UAAAv2E,KAA0B0T,KAAI,CAACyhE,OAAL,CAAa/wD,OAAb,CAAsB6M,qBAAtB,EAA1B;IAAA,UAAEL,GAAG,SAAL;IAAA,UAAOS,MAAM,YAAb;IAAA,UAAejpB,MAAM,YAArB;;IACN,UAAM2vE,cAAc,GAAGtqE,MAAM,CAACuqE,WAAP,IAAsBp4E,QAAQ,CAACC,eAAT,CAAyBulD,YAAtE;;IAEA,UAAI/zB,MAAM,GAAG0mD,cAAT,IAA2BA,cAAc,GAAGxB,OAAjB,GAA2BlC,wBAA1D,EAAoF;IAClF3gE,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZqhE,UAAAA,cAAc,EAAE5wE,IAAI,CAACyc,KAAL,CAAW,CAACwzD,wBAAwB,IAAI0D,cAAc,GAAGxB,OAArB,CAAzB,IAA0DjC,sBAArE,CADJ;IAEZW,UAAAA,YAAY,EAAE;IAFF,SAAd;IAKD,OAND,MAMO,IAAIrkD,GAAG,GAAG,CAAN,IAAW2lD,OAAO,GAAGlC,wBAAzB,EAAmD;IACxD3gE,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZqhE,UAAAA,cAAc,EAAE5wE,IAAI,CAACyc,KAAL,CAAW,CAACwzD,wBAAwB,GAAGkC,OAA5B,IAAuC,CAACjC,sBAAnD,CADJ;IAEZW,UAAAA,YAAY,EAAE;IAFF,SAAd;IAID,OALM,MAKA;IACL,YAAIvhE,KAAI,CAACE,KAAL,CAAWqhE,YAAX,IAA2BvhE,KAAI,CAACE,KAAL,CAAWohE,cAAX,KAA8B,CAA7D,EAAgE;IAC9DthE,UAAAA,KAAI,CAACC,QAAL,CAAc;IAAEqhE,YAAAA,cAAc,EAAE,CAAlB;IAAqBC,YAAAA,YAAY,EAAE;IAAnC,WAAd;IACD;;IAED,YAAI7sE,MAAM,GAAG,EAAT,GAAcsL,KAAI,CAACyhE,OAAL,CAAa/wD,OAAb,CAAsB+gC,YAAxC,EAAsD;IACpD,cAAI6vB,cAAc,GAAG,CAArB;;IACA,cAAIuB,OAAO,GAAG3lD,GAAV,GAAgByjD,wBAApB,EAA8C;IAC5CW,YAAAA,cAAc,GAAG5wE,IAAI,CAACyc,KAAL,CAAW,CAACwzD,wBAAwB,IAAIkC,OAAO,GAAG3lD,GAAd,CAAzB,IAA+C,CAAC0jD,sBAA3D,CAAjB;IACD,WAFD,MAEO,IAAIjjD,MAAM,GAAGklD,OAAT,GAAmBlC,wBAAvB,EAAiD;IACtDW,YAAAA,cAAc,GAAG5wE,IAAI,CAACyc,KAAL,CAAW,CAACwzD,wBAAwB,IAAIhjD,MAAM,GAAGklD,OAAb,CAAzB,IAAkDjC,sBAA7D,CAAjB;IACD;;IACD,cAAI5gE,KAAI,CAACE,KAAL,CAAWohE,cAAX,KAA8BA,cAAlC,EAAkD;IAChDthE,YAAAA,KAAI,CAACC,QAAL,CAAc;IAAEqhE,cAAAA,cAAc;IAAhB,aAAd;IACD;IACF;IACF;IACF,KAhCD;;IAkCAthE,IAAAA,kBAAA,GAAe,UAAC+iE,MAAD,EAAiBwB,SAAjB,EAAoCvrE,MAApC,EAAoDwrE,gBAApD;IAAoD,qCAAA,EAAA;IAAAA,QAAAA,wBAAA;;;IACjExkE,MAAAA,KAAI,CAAC8hE,WAAL,GAAmBnzE,OAAnB,CAA2B,UAACuI,IAAD,EAAOrI,CAAP;IACzBoxE,QAAAA,iBAAiB,CAAC/oE,IAAD,EAAO8I,KAAI,CAAClP,KAAL,CAAW2zE,kBAAlB,CAAjB;;IACA,YAAIF,SAAS,KAAK11E,CAAd,IAAmB21E,gBAAvB,EAAyC;IACvC,cAAID,SAAS,KAAKxB,MAAlB,EAA0B;IACxB,mBAAOlD,aAAa,CAAC3oE,IAAD,EAAO,IAAP,CAApB;IACD;;IACD2oE,UAAAA,aAAa,CACX3oE,IADW,EAEXqtE,SAAS,GAAGxB,MAAZ,GACI/iE,KAAI,CAAC+hE,oBAAL,CAA0B1sE,KAA1B,CAAgCkvE,SAAS,GAAG,CAA5C,EAA+CxB,MAAM,GAAG,CAAxD,EAA2D9xE,MAA3D,CAAkE,UAACgrB,CAAD,EAAIC,CAAJ;IAAU,mBAAAD,CAAC,GAAGC,CAAJ;IAAK,WAAjF,EAAmF,CAAnF,CADJ,GAEIlc,KAAI,CAAC+hE,oBAAL,CAA0B1sE,KAA1B,CAAgC0tE,MAAhC,EAAwCwB,SAAxC,EAAmDtzE,MAAnD,CAA0D,UAACgrB,CAAD,EAAIC,CAAJ;IAAU,mBAAAD,CAAC,GAAGC,CAAJ;IAAK,WAAzE,EAA2E,CAA3E,IAAgF,CAAC,CAJ1E,CAAb;IAMD,SAVD,MAUO,IAAIqoD,SAAS,GAAGxB,MAAZ,IAAsBl0E,CAAC,GAAG01E,SAA1B,IAAuC11E,CAAC,IAAIk0E,MAAhD,EAAwD;IAC7DlD,UAAAA,aAAa,CAAC3oE,IAAD,EAAO,CAAC8B,MAAR,CAAb;IACD,SAFM,MAEA,IAAInK,CAAC,GAAG01E,SAAJ,IAAiBA,SAAS,GAAGxB,MAA7B,IAAuCl0E,CAAC,IAAIk0E,MAAhD,EAAwD;IAC7DlD,UAAAA,aAAa,CAAC3oE,IAAD,EAAO8B,MAAP,CAAb;IACD,SAFM,MAEA;IACL6mE,UAAAA,aAAa,CAAC3oE,IAAD,EAAO,IAAP,CAAb;IACD;IACF,OAnBD;IAoBD,KArBD;;IAuBA8I,IAAAA,8BAAA,GAA2B;IACzB,UAAM0kE,WAAW,GAAG1kE,KAAI,CAAC8hE,WAAL,GAAmB9hE,KAAI,CAACE,KAAL,CAAW2gE,WAA9B,EAA2CtjD,qBAA3C,EAApB;;IACA,UAAMylD,UAAU,GAAGhjE,KAAI,CAAC4jE,QAAL,CAAclzD,OAAd,CAAuB6M,qBAAvB,EAAnB;;IACA,UAAI7sB,IAAI,CAACgV,GAAL,CAASg/D,WAAW,CAACrgD,IAAZ,GAAmB2+C,UAAU,CAAC3+C,IAAvC,IAA+C2+C,UAAU,CAACruE,KAA9D,EAAqE;IACnE,YAAIqL,KAAI,CAACE,KAAL,CAAW4gE,sBAAX,KAAsC,CAAC,CAA3C,EAA8C;IAC5C9gE,UAAAA,KAAI,CAACC,QAAL,CAAc;IAAE6gE,YAAAA,sBAAsB,EAAE9gE,KAAI,CAACE,KAAL,CAAW2gE;IAArC,WAAd;IACD;;IACD,eAAO,IAAP;IACD;;IACD,UAAI7gE,KAAI,CAACE,KAAL,CAAW4gE,sBAAX,GAAoC,CAAC,CAAzC,EAA4C;IAC1C9gE,QAAAA,KAAI,CAACC,QAAL,CAAc;IAAE6gE,UAAAA,sBAAsB,EAAE,CAAC;IAA3B,SAAd;IACD;;IACD,aAAO,KAAP;IACD,KAbD;;IAeA9gE,IAAAA,WAAA,GAAQ,UAACwK,CAAD;IACNA,MAAAA,CAAC,CAAC+4D,UAAF,IAAgB/4D,CAAC,CAAC7P,cAAF,EAAhB;IACAzO,MAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,WAA7B,EAA0Ch7B,KAAI,CAAC0iE,eAA/C;IACAx2E,MAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,WAA7B,EAA0Ch7B,KAAI,CAACyiE,eAA/C;IACAv2E,MAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,SAA7B,EAAwCh7B,KAAI,CAACwiE,SAA7C;IACAt2E,MAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,SAA7B,EAAwCh7B,KAAI,CAACwiE,SAA7C;IACAt2E,MAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,aAA7B,EAA4Ch7B,KAAI,CAACwiE,SAAjD;;IAEA,UAAMmC,UAAU,GAAG3kE,KAAI,CAAClP,KAAL,CAAWozE,eAAX,IAA8BlkE,KAAI,CAACikE,wBAAL,EAAjD;;IACA,UAAI,CAACU,UAAD,IAAe3kE,KAAI,CAAClP,KAAL,CAAW2zE,kBAAX,GAAgC,CAA/C,IAAoDzkE,KAAI,CAACmkE,UAAL,KAAoB,CAAC,CAA7E,EAAgF;IAE9E5D,QAAAA,IAAI,CAAC;IACHN,UAAAA,iBAAiB,CAACjgE,KAAI,CAAC4jE,QAAL,CAAclzD,OAAf,EAAyB1Q,KAAI,CAAClP,KAAL,CAAW2zE,kBAApC,EAAwD,iCAAxD,CAAjB;;IACA,cAAIzkE,KAAI,CAACmkE,UAAL,GAAkB,CAAlB,IAAuBnkE,KAAI,CAACE,KAAL,CAAW2gE,WAAX,KAA2B,CAAtD,EAAyD;IACvDhB,YAAAA,aAAa,CAAC7/D,KAAI,CAAC4jE,QAAL,CAAclzD,OAAf,EAAyB,CAAzB,EAA4B,CAA5B,CAAb;IACD,WAFD,MAEO;IACLmvD,YAAAA,aAAa,CACX7/D,KAAI,CAAC4jE,QAAL,CAAclzD,OADH,EAGX,EAAE3W,MAAM,CAAC4nE,WAAP,GAAqB3hE,KAAI,CAACqjE,WAA5B,IAEE,EAAErjE,KAAI,CAACyhE,OAAL,CAAa/wD,OAAb,CAAsBkhD,SAAtB,GAAkC5xD,KAAI,CAACsjE,eAAzC,CAFF,IAGGtjE,KAAI,CAACE,KAAL,CAAW2gE,WAAX,GAAyB7gE,KAAI,CAACmkE,UAA9B,GACGnkE,KAAI,CAAC+hE,oBAAL,CACG1sE,KADH,CACS2K,KAAI,CAACE,KAAL,CAAW2gE,WAAX,GAAyB,CADlC,EACqC7gE,KAAI,CAACmkE,UAAL,GAAkB,CADvD,EAEGlzE,MAFH,CAEU,UAACgrB,CAAD,EAAIC,CAAJ;IAAU,qBAAAD,CAAC,GAAGC,CAAJ;IAAK,aAFzB,EAE2B,CAF3B,CADH,GAIGlc,KAAI,CAAC+hE,oBAAL,CACG1sE,KADH,CACS2K,KAAI,CAACmkE,UAAL,GAAkB,CAAlB,GAAsB,CAAtB,GAA0BnkE,KAAI,CAACmkE,UADxC,EACoDnkE,KAAI,CAACE,KAAL,CAAW2gE,WAD/D,EAEG5vE,MAFH,CAEU,UAACgrB,CAAD,EAAIC,CAAJ;IAAU,qBAAAD,CAAC,GAAGC,CAAJ;IAAK,aAFzB,EAE2B,CAF3B,IAEgC,CAAC,CATvC,CAHW,EAaX,CAbW,CAAb;IAeD;IACF,SArBG,CAAJ;IAsBD;;IACDlc,MAAAA,KAAI,CAACgiE,WAAL,GAAmBjoE,MAAM,CAACC,UAAP,CACjBgG,KAAI,CAACiiE,UADY,EAEjB0C,UAAU,IAAI3kE,KAAI,CAACmkE,UAAL,KAAoB,CAAC,CAAnC,GAAuC,CAAvC,GAA2CnkE,KAAI,CAAClP,KAAL,CAAW2zE,kBAFrC,CAAnB;IAID,KAtCD;;IAwCAzkE,IAAAA,gBAAA,GAAa;IACX,UAAM2kE,UAAU,GAAG3kE,KAAI,CAAClP,KAAL,CAAWozE,eAAX,IAA8BlkE,KAAI,CAACikE,wBAAL,EAAjD;;IACA,UAAIU,UAAU,IAAK3kE,KAAI,CAACmkE,UAAL,GAAkB,CAAC,CAAnB,IAAwBnkE,KAAI,CAACE,KAAL,CAAW2gE,WAAX,KAA2B7gE,KAAI,CAACmkE,UAA3E,EAAwF;IACtFnkE,QAAAA,KAAI,CAAClP,KAAL,CAAW8K,QAAX,CAAoB;IAClBmhC,UAAAA,QAAQ,EAAE/8B,KAAI,CAACE,KAAL,CAAW2gE,WADH;IAElBhuC,UAAAA,QAAQ,EAAE8xC,UAAU,GAAG,CAAC,CAAJ,GAAQj0E,IAAI,CAACqH,GAAL,CAASiI,KAAI,CAACmkE,UAAd,EAA0B,CAA1B,CAFV;IAGlBnB,UAAAA,UAAU,EAAEhjE,KAAI,CAAC4jE,QAAL,CAAclzD,OAAd,CAAuB6M,qBAAvB;IAHM,SAApB;IAKD;;IACDvd,MAAAA,KAAI,CAAC8hE,WAAL,GAAmBnzE,OAAnB,CAA2B,UAACuI,IAAD;IACzB+oE,QAAAA,iBAAiB,CAAC/oE,IAAD,EAAO,CAAP,CAAjB;IACA2oE,QAAAA,aAAa,CAAC3oE,IAAD,EAAO,IAAP,CAAb;IACCA,QAAAA,IAAoB,CAACN,KAArB,CAA2B2rE,WAA3B,GAAyC,EAAzC;IACF,OAJD;;IAKAviE,MAAAA,KAAI,CAACC,QAAL,CAAc;IAAE4gE,QAAAA,WAAW,EAAE,CAAC,CAAhB;IAAmBS,QAAAA,cAAc,EAAE;IAAnC,OAAd;;IACAthE,MAAAA,KAAI,CAACmkE,UAAL,GAAkB,CAAC,CAAnB;;IAEA,UAAInkE,KAAI,CAACyjE,UAAL,GAAkB,CAAtB,EAAyB;IACvBzjE,QAAAA,KAAI,CAACyhE,OAAL,CAAa/wD,OAAb,CAAsBkhD,SAAtB,GAAkC5xD,KAAI,CAACyjE,UAAvC;IACAzjE,QAAAA,KAAI,CAACyjE,UAAL,GAAkB,CAAlB;IACD;IACF,KArBD;;IAuBAzjE,IAAAA,eAAA,GAAY,UAACwK,CAAD;IACV,UAAMu2D,YAAY,GAAG/gE,KAAI,CAACE,KAAL,CAAW6gE,YAAhC;;IACA,UAAM5pE,KAAK,GAAG6I,KAAI,CAACmiE,cAAL,CAAoB33D,CAApB,CAAd;;IAEA,UAAIrT,KAAK,KAAK,CAAC,CAAX,IAAiB6I,KAAI,CAAClP,KAAL,CAAW4tB,MAAX,CAAkBvnB,KAAlB,KAA4B6I,KAAI,CAAClP,KAAL,CAAW4tB,MAAX,CAAkBvnB,KAAlB,EAAyBrG,KAAzB,CAA+B2L,QAAhF,EAA2F;IACzF;IACD;;IAED,UAAI+N,CAAC,CAAClT,GAAF,KAAU,GAAd,EAAmB;IACjBkT,QAAAA,CAAC,CAAC7P,cAAF;;IACA,YAAIomE,YAAY,KAAK5pE,KAArB,EAA4B;IAC1B,cAAI4pE,YAAY,KAAK/gE,KAAI,CAAC+iE,MAA1B,EAAkC;IAChC/iE,YAAAA,KAAI,CAAC8hE,WAAL,GAAmBnzE,OAAnB,CAA2B,UAACuI,IAAD;IACzB+oE,cAAAA,iBAAiB,CAAC/oE,IAAD,EAAO,CAAP,CAAjB;IACA2oE,cAAAA,aAAa,CAAC3oE,IAAD,EAAO,IAAP,CAAb;IACD,aAHD;;IAIA8I,YAAAA,KAAI,CAAClP,KAAL,CAAW8K,QAAX,CAAoB;IAClBmhC,cAAAA,QAAQ,EAAEgkC,YADQ;IAElBluC,cAAAA,QAAQ,EAAE7yB,KAAI,CAAC+iE,MAFG;IAGlBC,cAAAA,UAAU,EAAEhjE,KAAI,CAAC8hE,WAAL,GAAmB9hE,KAAI,CAAC+iE,MAAxB,EAAgCxlD,qBAAhC;IAHM,aAApB;;IAMCvd,YAAAA,KAAI,CAAC8hE,WAAL,GAAmB9hE,KAAI,CAAC+iE,MAAxB,EAAgDj7C,KAAhD;IACF;;IACD9nB,UAAAA,KAAI,CAACC,QAAL,CAAc;IACZ8gE,YAAAA,YAAY,EAAE,CAAC;IADH,WAAd;;IAGA/gE,UAAAA,KAAI,CAAC+iE,MAAL,GAAc,CAAC,CAAf;IACD,SAlBD,MAkBO;IACL/iE,UAAAA,KAAI,CAACC,QAAL,CAAc;IACZ8gE,YAAAA,YAAY,EAAE5pE;IADF,WAAd;;IAGA6I,UAAAA,KAAI,CAAC+iE,MAAL,GAAc5rE,KAAd;;IACA6I,UAAAA,KAAI,CAACkjE,gBAAL;IACD;IACF;;IACD,UAAI,CAAC14D,CAAC,CAAClT,GAAF,KAAU,WAAV,IAAyBkT,CAAC,CAAClT,GAAF,KAAU,GAApC,KAA4CypE,YAAY,GAAG,CAAC,CAA5D,IAAiE/gE,KAAI,CAAC+iE,MAAL,GAAc/iE,KAAI,CAAClP,KAAL,CAAW4tB,MAAX,CAAkBxwB,MAAlB,GAA2B,CAA9G,EAAiH;IAC/Gsc,QAAAA,CAAC,CAAC7P,cAAF;IACA,YAAM3B,MAAM,GAAGymE,kBAAkB,CAACz/D,KAAI,CAAC8hE,WAAL,GAAmBf,YAAnB,CAAD,CAAjC;IACA/gE,QAAAA,KAAI,CAAC+iE,MAAL;;IACA/iE,QAAAA,KAAI,CAACokE,YAAL,CAAkBpkE,KAAI,CAAC+iE,MAAvB,EAA+BhC,YAA/B,EAA6C/nE,MAA7C,EAAqD,IAArD;IACD;;IACD,UAAI,CAACwR,CAAC,CAAClT,GAAF,KAAU,SAAV,IAAuBkT,CAAC,CAAClT,GAAF,KAAU,GAAlC,KAA0CypE,YAAY,GAAG,CAAC,CAA1D,IAA+D/gE,KAAI,CAAC+iE,MAAL,GAAc,CAAjF,EAAoF;IAClFv4D,QAAAA,CAAC,CAAC7P,cAAF;IACA,YAAM3B,MAAM,GAAGymE,kBAAkB,CAACz/D,KAAI,CAAC8hE,WAAL,GAAmBf,YAAnB,CAAD,CAAjC;IACA/gE,QAAAA,KAAI,CAAC+iE,MAAL;;IACA/iE,QAAAA,KAAI,CAACokE,YAAL,CAAkBpkE,KAAI,CAAC+iE,MAAvB,EAA+BhC,YAA/B,EAA6C/nE,MAA7C,EAAqD,IAArD;IACD;;IACD,UAAIwR,CAAC,CAAClT,GAAF,KAAU,QAAV,IAAsBypE,YAAY,GAAG,CAAC,CAA1C,EAA6C;IAC3C/gE,QAAAA,KAAI,CAAC8hE,WAAL,GAAmBnzE,OAAnB,CAA2B,UAACuI,IAAD;IACzB+oE,UAAAA,iBAAiB,CAAC/oE,IAAD,EAAO,CAAP,CAAjB;IACA2oE,UAAAA,aAAa,CAAC3oE,IAAD,EAAO,IAAP,CAAb;IACD,SAHD;;IAIA8I,QAAAA,KAAI,CAACC,QAAL,CAAc;IACZ8gE,UAAAA,YAAY,EAAE,CAAC;IADH,SAAd;;IAGA/gE,QAAAA,KAAI,CAAC+iE,MAAL,GAAc,CAAC,CAAf;IACD;;IACD,UAAI,CAACv4D,CAAC,CAAClT,GAAF,KAAU,KAAV,IAAmBkT,CAAC,CAAClT,GAAF,KAAU,OAA9B,KAA0CypE,YAAY,GAAG,CAAC,CAA9D,EAAiE;IAC/Dv2D,QAAAA,CAAC,CAAC7P,cAAF;IACD;IACF,KA7DD;;IA3TEqF,IAAAA,KAAI,CAAC0iE,eAAL,GAAuBnC,IAAI,CAACvgE,KAAI,CAAC4kE,WAAN,CAA3B;IACA5kE,IAAAA,KAAI,CAACyiE,eAAL,GAAuBlC,IAAI,CAACvgE,KAAI,CAAC6kE,WAAN,CAA3B;IACA7kE,IAAAA,KAAI,CAACwiE,SAAL,GAAiBjC,IAAI,CAACvgE,KAAI,CAAC8kE,KAAN,CAArB;;IACD;;IAEDC,EAAAA,mBAAA,kBAAA,GAAA;IACE,SAAK7B,gBAAL;IACAh3E,IAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,YAA1B,EAAwC,KAAKwqC,mBAA7C,EAAyE;IACvE1C,MAAAA,OAAO,EAAE,KAD8D;IAEvE2C,MAAAA,OAAO,EAAE;IAF8D,KAAzE;IAIA/4E,IAAAA,QAAQ,CAACsuC,gBAAT,CAA0B,WAA1B,EAAuC,KAAKwqC,mBAA5C;IACD,GAPD;;IASAD,EAAAA,mBAAA,mBAAA,GAAA,UAAmB7pC,UAAnB,EAAoChyB,SAApC;IACE,QAAIA,SAAS,CAACo4D,cAAV,KAA6B,KAAKphE,KAAL,CAAWohE,cAAxC,IAA0Dp4D,SAAS,CAACo4D,cAAV,KAA6B,CAA3F,EAA8F;IAC5F,WAAKM,WAAL;IACD;IACF,GAJD;;IAMAmD,EAAAA,mBAAA,qBAAA,GAAA;IACE74E,IAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,YAA7B,EAA2C,KAAKgqC,mBAAhD;IACA94E,IAAAA,QAAQ,CAAC8uC,mBAAT,CAA6B,WAA7B,EAA0C,KAAKgqC,mBAA/C;;IACA,QAAI,KAAKhD,WAAT,EAAsB;IACpBjoE,MAAAA,MAAM,CAACwlB,YAAP,CAAoB,KAAKyiD,WAAzB;IACD;;IACD,SAAKU,eAAL,CAAqBttB,MAArB;IACA,SAAKqtB,eAAL,CAAqBrtB,MAArB;IACA,SAAKotB,SAAL,CAAeptB,MAAf;IACD,GATD;;IAsWA2vB,EAAAA,mBAAA,OAAA,GAAA;IAAA,oBAAA;;IACE,QAAMG,SAAS,GAAG;IAChBC,MAAAA,UAAU,EAAE,MADI;IAEhBC,MAAAA,gBAAgB,EAAE,MAFF;IAGhBC,MAAAA,aAAa,EAAE,MAHC;IAIhBC,MAAAA,YAAY,EAAE,MAJE;IAKhBC,MAAAA,SAAS,EAAE,YALK;IAMhBtvE,MAAAA,QAAQ,EAAE;IANM,KAAlB;;IAQA,QAAMuvE,UAAU,GAAGpP,sBACd8O;IACHhoD,MAAAA,GAAG,EAAE,KAAKhd,KAAL,CAAWihE;IAChB98C,MAAAA,IAAI,EAAE,KAAKnkB,KAAL,CAAWghE;IACjBvsE,MAAAA,KAAK,EAAE,KAAKuL,KAAL,CAAWmhE;IAClB3sE,MAAAA,MAAM,EAAE,KAAKwL,KAAL,CAAWkhE;IACnB3oE,MAAAA,eAAe,EAAE;IACjBgtE,MAAAA,aAAa,EAAE;IACfC,MAAAA,MAAM,EAAE;IACRzvE,MAAAA,QAAQ,EAAE;IACVyC,MAAAA,SAAS,EAAE;UAVb;;IAYA,wBACE9G,8BAAA,CAACA,gBAAK,CAACq6C,QAAP,MAAA,EACG,KAAKn7C,KAAL,CAAWg7C,UAAX,CAAsB;IACrBv4C,MAAAA,QAAQ,EAAE,KAAKzC,KAAL,CAAW4tB,MAAX,CAAkBznB,GAAlB,CAAsB,UAAC5H,KAAD,EAAa8H,KAAb;IAC9B,YAAMwuE,QAAQ,GAAGxuE,KAAK,KAAK6I,KAAI,CAACE,KAAL,CAAW2gE,WAAtC;IACA,YAAM+E,UAAU,GAAGzuE,KAAK,KAAK6I,KAAI,CAACE,KAAL,CAAW6gE,YAAxC;IAEA,YAAMt/D,UAAU,GAAGzB,KAAI,CAAClP,KAAL,CAAW4tB,MAAX,CAAkBvnB,KAAlB,KAA4B6I,KAAI,CAAClP,KAAL,CAAW4tB,MAAX,CAAkBvnB,KAAlB,EAAyBrG,KAAzB,CAA+B2L,QAA9E;IACA,YAAM3L,KAAK,GAAe;IACxBwG,UAAAA,GAAG,EAAEH,KADmB;IAExBmF,UAAAA,QAAQ,EAAEmF,UAAU,GAAG,CAAC,CAAJ,GAAQ,CAFJ;IAGxByJ,UAAAA,SAAS,EAAElL,KAAI,CAACkL,SAHQ;IAIxBtU,UAAAA,KAAK,EAAEw/D,sBACF8O;IACHW,YAAAA,UAAU,EAAEF,QAAQ,GAAG,QAAH,GAAcpnE;IAClCnE,YAAAA,MAAM,EAAEwrE,UAAU,GAAG,IAAH,GAAU;;IAPN,SAA1B;IAWA,eAAO5lE,KAAI,CAAClP,KAAL,CAAWg1E,UAAX,CAAsB;IAC3Bz2E,UAAAA,KAAK,OADsB;IAE3ByB,UAAAA,KAAK,OAFsB;IAG3BqG,UAAAA,KAAK,OAHsB;IAI3B04D,UAAAA,SAAS,EAAE,KAJgB;IAK3B+V,UAAAA,UAAU,YALiB;IAM3BG,UAAAA,aAAa,EAAE;IANY,SAAtB,CAAP;IAQD,OAxBS,CADW;IA0BrBlW,MAAAA,SAAS,EAAE,KAAK3vD,KAAL,CAAW2gE,WAAX,GAAyB,CAAC,CA1BhB;IA2BrB/vE,MAAAA,KAAK,EAAE;IACLsL,QAAAA,GAAG,EAAE,KAAKqlE;IADL;IA3Bc,KAAtB,CADH,EAgCG,KAAKvhE,KAAL,CAAW2gE,WAAX,GAAyB,CAAC,CAA1B,iBACC3mE,mBAAQ,CAACC,YAAT,CACE,KAAKrJ,KAAL,CAAWg1E,UAAX,CAAsB;IACpBz2E,MAAAA,KAAK,EAAE,KAAKyB,KAAL,CAAW4tB,MAAX,CAAkB,KAAKxe,KAAL,CAAW2gE,WAA7B,CADa;IAEpB/vE,MAAAA,KAAK,EAAE;IACLsL,QAAAA,GAAG,EAAE,KAAKwnE,QADL;IAELhtE,QAAAA,KAAK,EAAE4uE,UAFF;IAGLQ,QAAAA,OAAO,EAAE,KAAKA;IAHT,OAFa;IAOpB7uE,MAAAA,KAAK,EAAE,KAAK+I,KAAL,CAAW2gE,WAPE;IAQpBhR,MAAAA,SAAS,EAAE,IARS;IASpB+V,MAAAA,UAAU,EAAE,KATQ;IAUpBG,MAAAA,aAAa,EAAE,KAAK7lE,KAAL,CAAW4gE,sBAAX,GAAoC,CAAC;IAVhC,KAAtB,CADF,EAaE50E,QAAQ,CAACyN,IAbX,CAjCJ,CADF;IAmDD,GAxED;;IApUOorE,EAAAA,sBAAA,GAAe;IACpBN,IAAAA,kBAAkB,EAAE,GADA;IAEpBZ,IAAAA,cAAc,EAAE,KAFI;IAGpBK,IAAAA,eAAe,EAAE;IAHG,GAAf;IA6YT,kBAAA;IAleA,EAAwCtyE,gBAAK,CAACkY,UAA9C;;ICDO,IAAMm8D,aAAa,GAAG,SAAhBA,aAAgB,CAACn1E,KAAD;IACnB,MAAAyC,QAAQ,GAA8BzC,KAAK,SAA3C;IAAA,MAAUyD,SAAS,GAAmBzD,KAAK,UAA3C;IAAA,MAA8Bo1E,GAAG,GAAKp1E,KAAK,QAA3C;IACR,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,CACxB;IACEkyE,IAAAA,OAAO,EAAE;IADX,GADwB,EAIxB5xE,SAJwB,CAA1B;IAOA,MAAMu4C,cAAc,GAAGl7C,yBAAK,CAACwqC,QAAN,CAAegqC,OAAf,CAAuB7yE,QAAvB,EAAiC0D,GAAjC,CAAqC,UAAColC,KAAD;IAC1D,QAAMpf,OAAO,gBAAGrrB,yBAAK,CAACu1B,YAAN,CAAmBkV,KAAnB,EAA0B;IAAEgqC,MAAAA,WAAW,eAAOv1E;IAApB,KAA1B,CAAhB;IACA,WAAOmsB,OAAP;IACD,GAHsB,CAAvB;;IAKM,MAAA3wB,KAA4BsF,yBAAK,CAAC8B,QAAN,CAAeo5C,cAAf,CAA5B;IAAA,MAACw5B,SAAS,QAAV;IAAA,MAAYC,YAAY,QAAxB;;IAEN,MAAMn1D,eAAe,GAAG,SAAlBA,eAAkB,CAACtgB,KAAD;IACd,QAAAisC,QAAQ,GAAejsC,KAAK,SAA5B;IAAA,QAAU+hC,QAAQ,GAAK/hC,KAAK,SAA5B;IACR,QAAM01E,WAAW,GAAGjH,SAAS,CAAC+G,SAAD,EAAYvpC,QAAZ,EAAsBlK,QAAtB,CAA7B;IAEA0zC,IAAAA,YAAY,CAACC,WAAD,CAAZ;IACD,GALD;;IAOA,sBACE50E,uCAAA,CAACmzE,SAAD;IACErmD,IAAAA,MAAM,EAAE4nD;IACR1qE,IAAAA,QAAQ,EAAEwV;IACV00D,IAAAA,UAAU,EAAE,oBAACx5E,EAAD;cAAG+C,KAAK;cAAEyB,KAAK;IACzB,0BACEc,uCAAA,MAAA,eAASd;IAAOyD,QAAAA,SAAS,EAAC;YAA1B,EACGlF,KADH,CADF;IAKD;IACDy8C,IAAAA,UAAU,EAAE,oBAACx/C,EAAD;cAAGiH,QAAQ;cAAEzC,KAAK;IAAO,0BACnCc,uCAAA,CAACs0E,GAAD;yBAAe;aAA2Bn1E;IAAWwD,QAAAA,SAAS,EAAEkF;aAAa3I,MAA7E,EACGyC,QADH,CADmC;IAIpC;OAdH,CADF;IAkBD,CA3CM;;ICPP,IAAMkzE,iBAAiB,GAAG,SAApBA,iBAAoB,CAACxpD,OAAD;IACxB,SAAOA,OAAO,IAAIA,OAAO,CAAC6N,YAAR,CAAqB,eAArB,MAA0C,MAA5D;IACD,CAFD;;IAIA,IAAM47C,cAAc,GAAG,SAAjBA,cAAiB,CAACzpD,OAAD;;;IACrB,SAAO,YAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE0pD,oDAAYC,WAArB,UAAA,iBAAA,SAAA,MAAkCC,UAAzC;IACD,CAFD;;IAIA,IAAMC,cAAc,GAAG,SAAjBA,cAAiB,CAAC7pD,OAAD;;;IACrB,SAAO,YAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE0pD,oDAAYI,eAArB,UAAA,iBAAA,SAAA,MAAsCF,UAA7C;IACD,CAFD;;IAIA,IAAMv8C,WAAW,GAAG,SAAdA,WAAc,CAACrN,OAAD,EAAuBsN,SAAvB;IAClB,MAAIy8C,cAAc,GAAG/pD,OAArB;;IAEA,SAAO+pD,cAAP,EAAuB;IACrB,QAAI,CAACP,iBAAiB,CAACO,cAAD,CAAtB,EAAwC;IACtCA,MAAAA,cAAc,CAACl/C,KAAf;IACA;IACD;;IAED,QAAIyC,SAAS,KAAK,MAAlB,EAA0B;IACxBy8C,MAAAA,cAAc,GAAGN,cAAc,CAACM,cAAD,CAA/B;IACD,KAFD,MAEO;IACLA,MAAAA,cAAc,GAAGF,cAAc,CAACE,cAAD,CAA/B;IACD;IACF;IACF,CAfD;;IAiBO,IAAM97D,SAAS,GAAG,SAAZA,SAAY,CAACsD,KAAD;IACvB,MAAMy4D,aAAa,GAAGz4D,KAAK,CAAC6C,MAA5B;IACA,MAAMyrC,WAAW,GAAG4pB,cAAc,CAACO,aAAD,CAAlC;IACA,MAAMpqB,WAAW,GAAGiqB,cAAc,CAACG,aAAD,CAAlC;;IAEA,UAAQz4D,KAAK,CAAClX,GAAd;IACE,SAAK,WAAL;IACEkX,MAAAA,KAAK,CAAC7T,cAAN;IACA2vB,MAAAA,WAAW,CAACwyB,WAAD,EAAc,MAAd,CAAX;IACA;;IACF,SAAK,SAAL;IACEtuC,MAAAA,KAAK,CAAC7T,cAAN;IACA2vB,MAAAA,WAAW,CAACuyB,WAAD,EAAc,IAAd,CAAX;IACA;IARJ;IAYD,CAjBM;;ICtBA,IAAMqqB,QAAQ,GAAG,SAAXA,QAAW,CAACp2E,KAAD;;;IACd,MAAAyC,QAAQ,GAAyDzC,KAAK,SAAtE;IAAA,MAAUyD,SAAS,GAA8CzD,KAAK,UAAtE;IAAA,MAAqB2L,QAAQ,GAAoC3L,KAAK,SAAtE;IAAA,MAA+B+K,QAAQ,GAA0B/K,KAAK,SAAtE;IAAA,MAAyCq2E,SAAS,GAAer2E,KAAK,UAAtE;IAAA,MAAoDwL,QAAQ,GAAKxL,KAAK,SAAtE;IAER,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiBq0E,cAAjB,CAApB;IACQ,MAAAt1E,IAAI,GAAsBgB,WAAW,KAArC;IAAA,MAAMwI,IAAI,GAAgBxI,WAAW,KAArC;IAAA,MAAYo7D,SAAS,GAAKp7D,WAAW,UAArC;IAER,MAAMu0E,SAAS,GAAGpzE,8BAAU;IAExB,oBAAgB;SAChB3H,GAAC,mBAAiBwF,KAAlB,GAA2BA,MAC3BxF,GAAC,mBAAiBgP,KAAlB,GAA2BA,MAC3BhP,4BAAA,GAA0BmQ,UAC1BnQ,4BAAA,GAA0BuP,QAAQ,IAAIP,IAAI,KAAK,UAC/ChP,6BAAA,GAA2B66E,SAAS,IAAI7rE,IAAI,KAAK,cAPzB,GAS1B/G,SAT0B,CAA5B;IAYA,sBACE3C,8BAAA,MAAA;yBACiB6K;qBACL;IACVH,IAAAA,QAAQ,EAAE4xD,SAAS,GAAG,CAAC,CAAJ,GAAQ5xD,QAAQ,IAAI;IACvC/H,IAAAA,SAAS,EAAE8yE;IACXn8D,IAAAA,SAAS,EAAEA;IACX9V,IAAAA,IAAI,EAAC;OANP,EAQG84D,SAAS,iBACRt8D,8BAAA,CAACsB,IAAD;IACEpB,IAAAA,IAAI,EAAE;IACNC,IAAAA,UAAU,EAAC;IACXyC,IAAAA,IAAI,EAAC;IACLD,IAAAA,SAAS,EAAC;qBACA;OALZ,CATJ,EAiBGhB,QAjBH,CADF;IAqBD,CAvCM;IAyCP2zE,QAAQ,CAAC/wE,WAAT,GAAuB,UAAvB;;IChDO,IAAMmxE,iBAAiB,GAAG,SAApBA,iBAAoB,CAAC3jC,SAAD,EAAoBpnC,QAApB;IAC/B,MAAIA,QAAJ,EAAc,OAAO,qBAAmBonC,SAAnB,yCAAP,CAAd,KACK,IAAI,CAACpnC,QAAL,EAAe,OAAO,sBAAoBonC,SAApB,wCAAP;IACpB,SAAO,EAAP;IACD,CAJM;;IAMP,IAAM4jC,SAAS,GAAG,SAAZA,SAAY,CAACC,WAAD;;;IAChB,MAAM/1B,YAAY,SAAG+1B,WAAW,CAAC92D,iDAAS+gC,YAA1C;IACA,SAAOA,YAAP;IACD,CAHD;;IAKO,IAAMg2B,iBAAiB,GAAG,SAApBA,iBAAoB,CAACD,WAAD,EAA+C7jC,SAA/C;IAC/B,SAAO,wCAC0BA,SAD1B,kFAAA,GAMS4jC,SAAS,CAACC,WAAD,CANlB,4DAAA,GAUyB7jC,SAVzB,uCAAA,GAYS4jC,SAAS,CAACC,WAAD,CAZlB,uEAAP;IAmBD,CApBM;;ICHP,SAASE,WAAT,CAAqBr4E,KAArB;IACE,MAAM+M,GAAG,GAAGxK,gBAAK,CAAC4e,MAAN,EAAZ;IACA5e,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI5J,KAAK,IAAIkP,SAAb,EAAwB;IACtBnC,MAAAA,GAAG,CAACsU,OAAJ,GAAcrhB,KAAd;IACD;IACF,GAJD,EAIG,CAACA,KAAD,CAJH;IAKA,SAAO+M,GAAG,CAACsU,OAAX;IACD;;IAEM,IAAMi3D,UAAU,GAAG,SAAbA,UAAa,CAAC72E,KAAD;IAChB,MAAA82E,UAAU,GAAe92E,KAAK,WAA9B;IAAA,MAAYyL,QAAQ,GAAKzL,KAAK,SAA9B;IACR,MAAMoY,SAAS,GAAGw+D,WAAW,CAACnrE,QAAD,CAA7B;;IACM,MAAAjQ,KAAkBsF,gBAAK,CAAC8B,QAAN,CAAe6I,QAAf,CAAlB;IAAA,MAAClD,IAAI,QAAL;IAAA,MAAOC,OAAO,QAAd;;IACA,MAAAnF,KAA0BvC,gBAAK,CAAC8B,QAAN,CAAe,EAAf,CAA1B;IAAA,MAACm0E,QAAQ,QAAT;IAAA,MAAWC,WAAW,QAAtB;;IACN,MAAMN,WAAW,GAAG51E,gBAAK,CAAC4e,MAAN,CAA6B,IAA7B,CAApB;IACA,MAAMmzB,SAAS,GAAGjzC,IAAI,CAAC6e,MAAL,GAAcE,QAAd,CAAuB,EAAvB,EAA2BphB,SAA3B,CAAqC,CAArC,EAAwC,CAAxC,CAAlB;;IAEM,MAAAoF,KAA4B7B,gBAAK,CAAC8B,QAAN,CAAe4zE,iBAAiB,CAAC3jC,SAAD,EAAYpnC,QAAZ,CAAhC,CAA5B;IAAA,MAAC+pC,SAAS,QAAV;IAAA,MAAYyhC,YAAY,QAAxB;;IAENn2E,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIiQ,SAAS,IAAI3K,SAAb,IAA0B2K,SAAS,KAAK3M,QAA5C,EAAsD;IACpDjD,MAAAA,OAAO,CAAC,IAAD,CAAP;IACD;;IACDutB,IAAAA,qBAAqB,CAAC;IACpB,UAAMnR,MAAM,GAAG+xD,iBAAiB,CAACD,WAAD,EAAc7jC,SAAd,CAAhC;IACAmkC,MAAAA,WAAW,CAACpyD,MAAD,CAAX;IACD,KAHoB,CAArB;IAKA,QAAMgvB,cAAc,GAAG4iC,iBAAiB,CAAC3jC,SAAD,EAAYpnC,QAAZ,CAAxC;IACAwrE,IAAAA,YAAY,CAACrjC,cAAD,CAAZ;IACD,GAXD,EAWG,CAACnoC,QAAD,CAXH;;IAaA,MAAM00C,kBAAkB,GAAG,SAArBA,kBAAqB;IACzB,KAAC10C,QAAD,IAAajD,OAAO,CAAC,KAAD,CAApB;IACD,GAFD;;IAIA,MAAMoU,MAAM,GAAwB;IAClC44B,IAAAA,SAAS,WADyB;IAElCxsC,IAAAA,QAAQ,EAAE,QAFwB;IAGlCkuE,IAAAA,iBAAiB,EAAE;IAHe,GAApC;IAMA,sBACEp2E,8BAAA,0BAAA,MAAA,eACEA,8BAAA,QAAA,MAAA,EAAQi2E,QAAR,CADF,EAEGD,UAAU,IAAIvuE,IAAd,iBACCzH,8BAAA,MAAA;IACEgF,IAAAA,KAAK,EAAE8W;IACP+4B,IAAAA,cAAc,EAAEwK;qBACN;IACV70C,IAAAA,GAAG,EAAEorE;OAJP,EAMGI,UANH,CAHJ,CADF;IAeD,CAhDM;;ICyCA,IAAMK,WAAW,GAAG,SAAdA,WAAc,CAACn3E,KAAD;;;IACjB,MAAA82E,UAAU,GAAiE92E,KAAK,WAAhF;IAAA,MAAYyL,QAAQ,GAAuDzL,KAAK,SAAhF;IAAA,MAAsBwf,EAAE,GAAmDxf,KAAK,GAAhF;IAAA,MAA0B0J,OAAO,GAA0C1J,KAAK,QAAhF;IAAA,MAAmCzB,KAAK,GAAmCyB,KAAK,MAAhF;IAAA,MAA0CqD,KAAiCrD,KAAK,QAAhF;IAAA,MAAmDo1E,GAAG,mBAAG,SAAzD;IAAA,MAAkEvpE,IAAI,UAAK7L,OAA7E,aAAA,YAAA,MAAA,WAAA,SAAA,WAAA,EAAE;;IAER,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiBq0E,cAAjB,CAApB;IACQ,MAAAc,WAAW,GAAgBp1E,WAAW,YAAtC;IAAA,MAAao7D,SAAS,GAAKp7D,WAAW,UAAtC;;IAER,MAAM2H,cAAc,GAAG,SAAjBA,cAAiB,CAAC+P,CAAD;IACrBhQ,IAAAA,OAAO,IAAIA,OAAO,CAACgQ,CAAD,EAAI8F,EAAJ,EAAQjhB,KAAR,CAAlB;IACD,GAFD;;IAIA,MAAM84E,QAAQ,GAAGl0E,8BAAU,WACzB3H,GAAC,uBAAD,GAA0B,CAAC4hE,aADF,EAA3B;IAIA,sBACEt8D,8BAAA,CAACs0E,GAAD;IACE51D,IAAAA,EAAE,EAAEA;qBACM;SACN3T;IACJnC,IAAAA,OAAO,EAAEC;sBACGpL;IACZkF,IAAAA,SAAS,EAAE4zE;QANb,eAQEv2E,8BAAA,CAACs1E,QAAD,eAAcp2E,MAAd,CARF,EASG82E,UAAU,iBAAIh2E,8BAAA,CAAC+1E,UAAD;IAAYprE,IAAAA,QAAQ,EAAEA;IAAUqrE,IAAAA,UAAU,EAAEA;OAA5C,CATjB,EAUGM,WAAW,iBAAIt2E,8BAAA,CAAC4kE,OAAD;IAASjiE,IAAAA,SAAS,EAAC;OAAnB,CAVlB,CADF;IAcD,CA5BM;IA8BP0zE,WAAW,CAAC9xE,WAAZ,GAA0B,cAA1B;IACA8xE,WAAW,CAAC5xE,YAAZ,GAA2B;IACzB+xE,EAAAA,OAAO,EAAE;IADgB,CAA3B;;ICrDO,IAAMhB,cAAc,gBAAGx1E,gBAAK,CAACC,aAAN,CAAgE;IAC5FC,EAAAA,IAAI,EAAE,UADsF;IAE5FwJ,EAAAA,IAAI,EAAE,UAFsF;IAG5F4yD,EAAAA,SAAS,EAAE,KAHiF;IAI5Fga,EAAAA,WAAW,EAAE;IAJ+E,CAAhE,CAAvB;IAOC,IAAAh2E,QAAQ,GAAKk1E,cAAc,SAA3B;QAEKjB,OAAO,GAAG,SAAVA,OAAU,CAACr1E,KAAD;IACb,MAAAyC,QAAQ,GAA2EzC,KAAK,SAAxF;IAAA,MAAUyD,SAAS,GAAgEzD,KAAK,UAAxF;IAAA,MAAqBo9D,SAAS,GAAqDp9D,KAAK,UAAxF;IAAA,MAAgCgB,IAAI,GAA+ChB,KAAK,KAAxF;IAAA,MAAsCwK,IAAI,GAAyCxK,KAAK,KAAxF;IAAA,MAA4Co3E,WAAW,GAA4Bp3E,KAAK,YAAxF;IAAA,MAAkEo1E,GAAG,GAAcp1E,KAAK,QAAxF;IAAA,MAA0E6L,IAAI,UAAK7L,OAArF,WAAA,aAAA,aAAA,QAAA,QAAA,eAAA,WAAA,EAAE;;IACR,MAAMC,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAM2I,OAAO,GAAGxF,8BAAU,CACxB;IACEkyE,IAAAA,OAAO,EAAE;IADX,GADwB,EAIxB5xE,SAJwB,CAA1B;IAOA,MAAMqB,UAAU,GAAG;IACjB9D,IAAAA,IAAI,MADa;IAEjBwJ,IAAAA,IAAI,MAFa;IAGjB4yD,IAAAA,SAAS,WAHQ;IAIjBga,IAAAA,WAAW;IAJM,GAAnB;IAOA,sBACEt2E,8BAAA,CAACM,QAAD;IAAU7C,IAAAA,KAAK,EAAEuG;OAAjB,EACGs4D,SAAS,gBACRt8D,8BAAA,CAACq0E,aAAD,eAAmBn1E,MAAnB,CADQ,gBAGRc,8BAAA,CAACs0E,GAAD;qBAAe;SAA2Bn1E;IAAWwD,IAAAA,SAAS,EAAEkF;SAAakD,KAA7E,EACGpJ,QADH,CAJJ,CADF;IAWD;IAED4yE,OAAO,CAAChwE,WAAR,GAAsB,SAAtB;IAEAgwE,OAAO,CAAC9vE,YAAR,GAAuB;IACrB+xE,EAAAA,OAAO,EAAE,IADY;IAErBt2E,EAAAA,IAAI,EAAE,UAFe;IAGrBwJ,EAAAA,IAAI,EAAE,UAHe;IAIrB4yD,EAAAA,SAAS,EAAE,KAJU;IAKrBga,EAAAA,WAAW,EAAE;IALQ,CAAvB;IAQA/B,OAAO,CAACkC,IAAR,GAAeJ,WAAf;;IC9EO,IAAMK,cAAc,GAAkC,SAAhDA,cAAgD,CAACh8E,EAAD;UAAG+jB,QAAQ;UAAE1c,KAAK;IAAO,sBACpF/B,uCAAA,CAAC6iC,QAAD;IACElgC,IAAAA,SAAS,EAAC;IACVmgC,IAAAA,OAAO,EAAErkB,QAAQ,CAACvc,IAAT,GAAgB5F,MAAhB,GAAyB,CAAzB,GAA6BmiB,QAA7B,GAAwC;IACjD1c,IAAAA,KAAK,EAAEA,KAAK,GAAGA,KAAH,GAAW4K;OAHzB,CADoF;IAMrF,CANM;IAaA,IAAMgqE,aAAa,GAAiC,SAA9CA,aAA8C,CAACj8E,EAAD;UAAGk8E,SAAS;UAAEzwE,GAAG;IAAO,sBACjFnG,uCAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,uCAAA,CAACyC,IAAD;IACEtC,IAAAA,UAAU,EAAC;IACXwC,IAAAA,SAAS,EAAC;IACVvI,IAAAA,KAAK,EAAEw8E,SAAS,CAACt6E,MAAV,GAAmB6J,GAAnB,GAAyB,OAAzB,GAAmCwG;IAC1CzM,IAAAA,IAAI,EAAC;IACLwC,IAAAA,MAAM,EAAC;OALT,EAOGk0E,SAAS,CAACt6E,MAPb,CADF,eAUE0D,uCAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAC;IAASwC,IAAAA,SAAS,EAAC;IAAOzC,IAAAA,IAAI,EAAC;IAAQwC,IAAAA,MAAM,EAAC;OAA/D,KAAA,CAVF,eAaE1C,uCAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAC;IAASD,IAAAA,IAAI,EAAC;IAAQwC,IAAAA,MAAM,EAAC;OAA9C,EACGyD,GADH,CAbF,CADiF;IAkBlF,CAlBM;;ICUA,IAAM0wE,qBAAqB,GAAG,SAAxBA,qBAAwB,CAAC33E,KAAD;IAC3B,MAAAiK,KAAK,GAAgGjK,KAAK,MAA1G;IAAA,MAAOxE,KAA8FwE,KAAK,KAA1G;IAAA,MAAO0xC,IAAI,mBAAG,MAAd;IAAA,MAAiBruC,KAAoFrD,KAAK,OAA1G;IAAA,MAAiB2xC,MAAM,mBAAG,SAA1B;IAAA,MAAgChwB,QAAQ,GAA6D3hB,KAAK,SAA1G;IAAA,MAA0C6C,KAAK,GAAsD7C,KAAK,MAA1G;IAAA,MAAiD8K,QAAQ,GAA4C9K,KAAK,SAA1G;IAAA,MAA2D2C,KAA0C3C,KAAK,MAA1G;IAAA,MAA2DzB,KAAK,mBAAG,OAAnE;IAAA,MAAuEsG,KAA8B7E,KAAK,IAA1G;IAAA,MAAuEiH,GAAG,mBAAG,QAA7E;IAAA,MAAkF5C,KAAmBrE,KAAK,SAA1G;IAAA,MAAkFuf,QAAQ,mBAAG,QAA7F;IAER,MAAMq4D,WAAW,GAAG92E,gBAAK,CAAC4e,MAAN,CAAa,IAAb,CAApB;;IACM,MAAArY,KAA4BvG,gBAAK,CAAC8B,QAAN,CAAuBrE,KAAvB,CAA5B;IAAA,MAACm5E,SAAS,QAAV;IAAA,MAAYG,YAAY,QAAxB;;IACA,MAAAvwE,KAAoCxG,gBAAK,CAAC8B,QAAN,CAAe,CAAf,CAApC;IAAA,MAACk1E,aAAa,QAAd;IAAA,MAAgBC,gBAAgB,QAAhC;;IAEN,MAAMz3D,eAAe,GAAG,SAAlBA,eAAkB,CAAC5G,CAAD;IACtBm+D,IAAAA,YAAY,CAACn+D,CAAC,CAAC6G,MAAF,CAAShiB,KAAV,CAAZ;IACA,QAAIuM,QAAJ,EAAcA,QAAQ,CAAC4O,CAAD,CAAR;IACf,GAHD;;IAKA,MAAMs+D,UAAU,GAAGn1E,KAAK,IAAI60E,SAAS,CAACt6E,MAAV,GAAmB6J,GAA/C;IAEAnG,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAM8vE,QAAQ,GAAGL,WAAW,CAACh4D,OAA7B;;IACA,QAAI3W,MAAM,CAACivE,cAAX,EAA2B;IACzB,UAAMC,gBAAc,GAAG,IAAKlvE,MAAc,CAACivE,cAApB,CAAmC,UAACx3E,OAAD;IACxD,YAAMuxD,KAAK,GAAGvxD,OAAO,CAAC,CAAD,CAArB;IACQ,YAAA03E,WAAW,GAAKnmB,KAAK,CAAC1xC,MAAN,YAAhB;IACRw3D,QAAAA,gBAAgB,CAACK,WAAD,CAAhB;IACD,OAJsB,CAAvB;IAKAH,MAAAA,QAAQ,IAAIE,gBAAc,CAACE,OAAf,CAAuBJ,QAAvB,CAAZ;IAEA,aAAO;IACLE,QAAAA,gBAAc,CAACG,UAAf;IACD,OAFD;IAGD;;IACD,WAAO,cAAP;IACD,GAfD,EAeG,EAfH;IAiBA,sBACEx3E,8BAAA,MAAA,MAAA,EACGmJ,KAAK,iBACJnJ,8BAAA,CAACgjC,KAAD;IAAOniB,IAAAA,QAAQ,EAAEA;IAAU+B,IAAAA,SAAS,EAAE;OAAtC,EACGzZ,KADH,CAFJ,eAMEnJ,8BAAA,CAAC2wC,QAAD,eACMzxC;IACJ2xC,IAAAA,MAAM,EAAEA;IACRD,IAAAA,IAAI,EAAEA;IACN5mC,IAAAA,QAAQ,EAAEwV;IACVzd,IAAAA,KAAK,EAAEm1E;IACP1sE,IAAAA,GAAG,EAAEssE;QANP,CANF,eAcE92E,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;IAAiCqC,IAAAA,KAAK,EAAE;IAAEjC,MAAAA,KAAK,EAAEi0E;IAAT;OAAvD,eACEh3E,8BAAA,CAAC02E,cAAD;IAAgBj4D,IAAAA,QAAQ,EAAEA;IAAU1c,IAAAA,KAAK,EAAEm1E;OAA3C,CADF,eAEEl3E,8BAAA,CAAC22E,aAAD;IAAeC,IAAAA,SAAS,EAAEA;IAAWzwE,IAAAA,GAAG,EAAEA;OAA1C,CAFF,CAdF,CADF;IAqBD,CApDM;;ICXA,IAAMsxE,kBAAkB,GAAG,SAArBA,kBAAqB,CAACv4E,KAAD;IACxB,MAAAiK,KAAK,GAAiFjK,KAAK,MAA3F;IAAA,MAAOy1B,QAAQ,GAAuEz1B,KAAK,SAA3F;IAAA,MAAiB2hB,QAAQ,GAA6D3hB,KAAK,SAA3F;IAAA,MAA2B6C,KAAK,GAAsD7C,KAAK,MAA3F;IAAA,MAAkC8K,QAAQ,GAA4C9K,KAAK,SAA3F;IAAA,MAA4CxE,KAA0CwE,KAAK,MAA3F;IAAA,MAA4CzB,KAAK,mBAAG,OAApD;IAAA,MAAwD8E,KAA8BrD,KAAK,IAA3F;IAAA,MAAwDiH,GAAG,mBAAG,QAA9D;IAAA,MAAmEtE,KAAmB3C,KAAK,SAA3F;IAAA,MAAmEuf,QAAQ,mBAAG,QAA9E;;IAEF,MAAA1a,KAA4B/D,gBAAK,CAAC8B,QAAN,CAAuBrE,KAAvB,CAA5B;IAAA,MAACm5E,SAAS,QAAV;IAAA,MAAYG,YAAY,QAAxB;;IAEN,MAAMv3D,eAAe,GAAG,SAAlBA,eAAkB,CAAC5C,KAAD;IACtBm6D,IAAAA,YAAY,CAACn6D,KAAK,CAAC6C,MAAN,CAAahiB,KAAd,CAAZ;IACA,QAAIuM,QAAJ,EAAcA,QAAQ,CAAC4S,KAAD,CAAR;IACf,GAHD;;IAKA,MAAMs6D,UAAU,GAAGn1E,KAAK,IAAI60E,SAAS,CAACt6E,MAAV,GAAmB6J,GAA/C;IAEA,sBACEnG,8BAAA,MAAA,MAAA,EACGmJ,KAAK,iBACJnJ,8BAAA,CAACgjC,KAAD;IAAOniB,IAAAA,QAAQ,EAAEA;IAAU+B,IAAAA,SAAS,EAAE;OAAtC,EACGzZ,KADH,CAFJ,eAMEnJ,8BAAA,CAACq3B,KAAD,eAAWn4B;IAAO6C,IAAAA,KAAK,EAAEm1E;IAAYltE,IAAAA,QAAQ,EAAEwV;QAA/C,CANF,eAOExf,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;IAAiCqC,IAAAA,KAAK,EAAE;IAAE2vB,MAAAA,QAAQ;IAAV;OAAvD,eACE30B,8BAAA,CAAC02E,cAAD;IAAgBj4D,IAAAA,QAAQ,EAAEA;IAAU1c,IAAAA,KAAK,EAAEm1E;OAA3C,CADF,eAEEl3E,8BAAA,CAAC22E,aAAD;IAAeC,IAAAA,SAAS,EAAEA;IAAWzwE,IAAAA,GAAG,EAAEA;OAA1C,CAFF,CAPF,CADF;IAcD,CA1BM;IA4BPsxE,kBAAkB,CAAChzE,YAAnB,GAAkC;IAChCkwB,EAAAA,QAAQ,EAAE;IADsB,CAAlC;;QC3Ca+iD,SAAS,GAAG,SAAZA,SAAY,CAACx4E,KAAD;IACf,MAAAy4E,YAAY,GAAKz4E,KAAK,aAAtB;;IAER,MAAIy4E,YAAJ,EAAkB;IAChB,wBAAO33E,8BAAA,CAAC62E,qBAAD,eAA2B33E,MAA3B,CAAP;IACD;;IAED,sBAAOc,8BAAA,CAACy3E,kBAAD,eAAwBv4E,MAAxB,CAAP;IACD;IAEDw4E,SAAS,CAACnzE,WAAV,GAAwB,WAAxB;;ICAO,IAAMqzE,eAAe,GAAG,SAAlBA,eAAkB,CAAC14E,KAAD;IACrB,MAAAsG,IAAI,GAAqBtG,KAAK,KAA9B;IAAA,MAAMuG,KAAK,GAAcvG,KAAK,MAA9B;IAAA,MAAgB6L,IAAI,UAAK7L,OAA3B,OAAA,SAAA,EAAE;;IAER,sBACEc,8BAAA,CAACmD,MAAD;IAAQK,IAAAA,IAAI,EAAC;SAAeuH;IAAM3H,IAAAA,WAAW,EAAE;IAAMT,IAAAA,SAAS,EAAC;QAA/D,EACG8C,KAAK,IAAID,IADZ,CADF;IAKD,CARM;;ICGA,IAAMqyE,sBAAsB,gBAAG73E,gBAAK,CAACC,aAAN,CAA2C,EAA3C,CAA/B;;ICHA,IAAM63E,uBAAuB,GAAG,SAA1BA,uBAA0B,CAAC54E,KAAD;IAC7B,MAAAgG,UAAU,GAAyDhG,KAAK,WAAxE;IAAA,MAAY0F,WAAW,GAA4C1F,KAAK,YAAxE;IAAA,MAAyBmE,eAAe,GAA2BnE,KAAK,gBAAxE;IAAA,MAA0CgB,IAAI,GAAqBhB,KAAK,KAAxE;IAAA,MAAgD64E,cAAc,GAAK74E,KAAK,eAAxE;IAER,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiB02E,sBAAjB,CAApB;IAEQ,MAAAG,gBAAgB,GAA8B92E,WAAW,iBAAzD;IAAA,MAAkB+2E,aAAa,GAAe/2E,WAAW,cAAzD;IAAA,MAAiC+2B,QAAQ,GAAK/2B,WAAW,SAAzD;;IAER,MAAM2H,cAAc,GAAG,SAAjBA,cAAiB,CAACvD,IAAD;IACrB,QAAIgB,IAAI,GAAG2xE,aAAX;;IACA,QAAIA,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEn9E,QAAf,CAAwBwK,IAAxB,CAAJ,EAAmC;IACjCgB,MAAAA,IAAI,GAAG2xE,aAAa,CAACp4E,MAAd,CAAqB,UAACsvE,YAAD;IAA8B,eAAAA,YAAY,KAAK7pE,IAAjB;IAAqB,OAAxE,CAAP;IACD,KAFD,MAEO;IACLgB,MAAAA,IAAI,SAAJ,IAAAA,IAAI,WAAJ,SAAA,GAAAA,IAAI,CAAEke,IAAN,CAAWlf,IAAX,CAAA;IACD;;IACDgB,IAAAA,IAAI,KAAI0xE,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,gBAAO1xE,KAAP,CAApB,CAAJ;IAEA2xB,IAAAA,QAAQ,IAAIA,QAAQ,CAAC3xB,IAAD,CAApB;IACD,GAVD;;IAYA,MAAM+4B,aAAa,GAAG,SAAhBA,aAAgB,CAACziB,KAAD,EAA6BtX,IAA7B;IACpB,YAAQsX,KAAK,CAAClX,GAAd;IACE,WAAK,OAAL;IACEmD,QAAAA,cAAc,CAACvD,IAAD,CAAd;IACA;IAHJ;IAOD,GARD;;IAUA,sBACEtF,8BAAA,0BAAA,MAAA,EACGkF,UAAU,CAACG,GAAX,CAAe,UAAC6yE,UAAD,EAAyB3yE,KAAzB;;;IACN,QAAApF,UAAU,GAAuC+3E,UAAU,WAA3D;IAAA,QAAY93E,SAAS,GAA4B83E,UAAU,UAA3D;IAAA,QAAuB73E,QAAQ,GAAkB63E,UAAU,SAA3D;IAAA,QAAiC1yE,IAAI,GAAY0yE,UAAU,KAA3D;IAAA,QAAuCzyE,KAAK,GAAKyyE,UAAU,MAA3D;IACR,QAAM/yE,UAAU,GAAG9C,8BAAU,WAC3B3H,GAAC,4BAAD,GAA+B,MAC/BA,GAAC,sCAAD,GAAyCu9E,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEn9E,QAAf,CAAwBo9E,UAAxB,KAFd,EAA7B;;IAKA,QAAIH,cAAJ,EAAoB;IAClB,aAAOA,cAAc,CAACG,UAAD,CAArB;IACD;;IAED,wBACEl4E,8BAAA,OAAA;IAAM0F,MAAAA,GAAG,EAAEH;IAAO5C,MAAAA,SAAS,EAAC;SAA5B,eACE3C,8BAAA,MAAA;IACE0K,MAAAA,QAAQ,EAAE;IACVlH,MAAAA,IAAI,EAAC;IACLwB,MAAAA,KAAK,EAAEJ;IACPjC,MAAAA,SAAS,EAAEwC;uBACD;0BACI8yE,aAAa,IAAIA,aAAa,CAACn9E,QAAd,CAAuBo9E,UAAvB;IAC/BtvE,MAAAA,OAAO,EAAE;IAAM,eAAAC,cAAc,CAACqvE,UAAD,CAAd;IAA0B;IACzC5+D,MAAAA,SAAS,EAAE,mBAACsD,KAAD;IAAgC,eAAAyiB,aAAa,CAACziB,KAAD,EAAQs7D,UAAR,CAAb;IAAgC;SAR7E,eAUEl4E,8BAAA,CAAC43E,eAAD;IACE13E,MAAAA,IAAI,EAAEA;IACNC,MAAAA,UAAU,EAAEA;IACZC,MAAAA,SAAS,EAAEA;IACXC,MAAAA,QAAQ,EAAEA;IACV+C,MAAAA,WAAW,EAAE;IACbC,MAAAA,eAAe,EAAEA;IACjBmC,MAAAA,IAAI,EAAEA;IACNC,MAAAA,KAAK,EAAEA;SART,CAVF,CADF,CADF;IAyBD,GApCA,CADH,CADF;IAyCD,CAtEM;;ICdA,IAAM45B,eAAa,GAAG,SAAhBA,aAAgB,CAC3BziB,KAD2B,EAE3ByQ,cAF2B,EAG3B8qD,qBAH2B,EAI3BC,oBAJ2B;IAM3B,UAAQx7D,KAAK,CAAClX,GAAd;IACE,SAAK,OAAL;IACE2nB,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA8qD,MAAAA,qBAAqB,SAArB,IAAAA,qBAAqB,WAArB,SAAA,GAAAA,qBAAqB,CAAG,IAAH,CAArB;IACA;;IACF,SAAK,WAAL;IACE9qD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA8qD,MAAAA,qBAAqB,SAArB,IAAAA,qBAAqB,WAArB,SAAA,GAAAA,qBAAqB,CAAG,IAAH,CAArB;IACA;;IACF,SAAK,SAAL;IACE9qD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA+qD,MAAAA,oBAAoB,SAApB,IAAAA,oBAAoB,WAApB,SAAA,GAAAA,oBAAoB,CAAG,IAAH,CAApB;IACA;IAZJ;IAgBD,CAtBM;IAwBA,IAAMC,eAAa,GAAG,SAAhBA,aAAgB,CAC3Bh0E,QAD2B,EAE3Bi0E,gBAF2B,EAG3BzI,OAH2B,EAI3BvhD,UAJ2B;;;IAM3B,MAAIA,UAAU,IAAIjqB,QAAQ,KAAK,MAA/B,EAAuC;IACrC,QAAMk0E,WAAW,SAAG1I,OAAO,CAAC/wD,iDAAS+Z,iBAAiB,oDAAtD;IACA0/C,IAAAA,WAAW,WAAIA,WAAW,CAAC,CAAD,2CAAKriD,OAApB,CAAX;IACAoiD,IAAAA,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,CAAGC,WAAH,CAAhB;IACA;IACD;;IAED,MAAMC,SAAS,SAAG3I,OAAO,CAAC/wD,iDAAS+Z,iBAAiB,iDAApD;IACA,MAAItM,YAAJ;;IAEA,MAAIloB,QAAQ,KAAK,MAAjB,EAAyB;IACvBkoB,IAAAA,YAAY,GAAGisD,SAAS,SAAT,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAG,CAAH,CAAxB;IACD,GAFD,MAEO;IACLjsD,IAAAA,YAAY,GAAGisD,SAAS,SAAT,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAGA,SAAS,CAACl8E,MAAV,GAAmB,CAAtB,CAAxB;IACD;;IACD,QAACiwB,YAAD,UAAA,iBAAA,SAAA,MAA+B2J,OAA/B;IACA,QAAA3J,YAAY,SAAZ,IAAAA,YAAY,WAAZ,SAAA,GAAAA,YAAY,CAAEhB,cAAd,UAAA,iBAAA,SAAA,WAAAgB,cAA+B;IAAEE,IAAAA,KAAK,EAAE;IAAT,IAA/B;IACA6rD,EAAAA,gBAAgB,IAAIA,gBAAgB,CAAC/rD,YAAD,CAApC;IACD,CAxBM;;ICXA,IAAMksD,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACv5E,KAAD;;;IAC1B,MAAAyF,iBAAiB,GAA0CzF,KAAK,kBAAhE;IAAA,MAAmB0F,WAAW,GAA6B1F,KAAK,YAAhE;IAAA,MAAgCgB,IAAI,GAAuBhB,KAAK,KAAhE;IAAA,MAAsC0G,gBAAgB,GAAK1G,KAAK,iBAAhE;IAER,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiB02E,sBAAjB,CAApB;IAEE,MAAAI,aAAa,GAOX/2E,WAAW,cAPb;IAAA,MACAi3E,qBAAqB,GAMnBj3E,WAAW,sBAPb;IAAA,MAEAk3E,oBAAoB,GAKlBl3E,WAAW,qBAPb;IAAA,MAGAyyB,UAAU,GAIRzyB,WAAW,WAPb;IAAA,MAIAmsB,cAAc,GAGZnsB,WAAW,eAPb;IAAA,MAKAksB,WAAW,GAETlsB,WAAW,YAPb;IAAA,MAMAw3E,SAAS,GACPx3E,WAAW,UAPb;;IASI,MAAAqB,KAA4CvC,gBAAK,CAAC8B,QAAN,CAAe,CAAf,CAA5C;IAAA,MAAC62E,iBAAiB,QAAlB;IAAA,MAAoBC,oBAAoB,QAAxC;;IAEN,MAAMC,gBAAgB,GAAGx2E,8BAAU,WACjC3H,GAAC,+BAAD,GAAkC,MAClCA,GAAC,iCAAD,GAAoCi+E,iBAAiB,GAAG,KAFvB,EAAnC;IAKA34E,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAM29D,YAAY,GAAGp/D,gBAAgB,CAAC/F,MAAjB,CAAwB,UAACi5E,KAAD;iBAC3Cb,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAE3rB,IAAf,CAAoB,UAACysB,KAAD;IAAuB,eAAAA,KAAK,KAAKD,KAAV;IAAe,OAA1D;IAA2D,KADxC,CAArB;IAGAF,IAAAA,oBAAoB,CAAC5T,YAAY,CAAC1oE,MAAd,CAApB;IACD,GALD,EAKG,CAAC27E,aAAD,CALH;IAOA,sBACEj4E,8BAAA,MAAA;qBACY;IACV2C,IAAAA,SAAS,EAAEk2E;IACXv/D,IAAAA,SAAS,EAAE,mBAACsD,KAAD;IAAW,aAAAyiB,eAAa,CAACziB,KAAD,EAAQyQ,cAAR,EAAwB8qD,qBAAxB,EAA+CC,oBAA/C,CAAb;IAAiF;IACvGpzE,IAAAA,KAAK,EAAEJ;IACP8F,IAAAA,QAAQ,EAAE;IACVlH,IAAAA,IAAI,EAAC;yBACS;yBACC4pB;yBACAsrD;IACfluE,IAAAA,GAAG,EAAEmpB;OAVP,eAYE3zB,8BAAA,CAACmD,MAAD;IAAQjD,IAAAA,IAAI,EAAEA;IAAMC,IAAAA,UAAU,EAAC;IAAYwC,IAAAA,SAAS,EAAC;OAArD,eACE3C,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAC;OAAhB,EAAmC,MAAIgC,iBAAvC,CADF,CAZF,CADF;IAkBD,CA9CM;;ICbA,IAAM06B,eAAa,GAAG,SAAhBA,aAAgB,CAC3BziB,KAD2B,EAE3Bo8D,aAF2B,EAG3BV,gBAH2B,EAI3BH,qBAJ2B,EAK3BC,oBAL2B,EAM3BvI,OAN2B,EAO3BvhD,UAP2B,EAQ3BjB,cAR2B,EAS3BsG,UAT2B;IAW3B,UAAQ/W,KAAK,CAAClX,GAAd;IACE,SAAK,SAAL;IACEkX,MAAAA,KAAK,CAAC7T,cAAN;IACAkwE,MAAAA,iBAAe,CAAC,IAAD,EAAOD,aAAP,EAAsBV,gBAAtB,EAAwCzI,OAAxC,EAAiDvhD,UAAjD,CAAf;IACA;;IACF,SAAK,WAAL;IACE1R,MAAAA,KAAK,CAAC7T,cAAN;IACAkwE,MAAAA,iBAAe,CAAC,MAAD,EAASD,aAAT,EAAwBV,gBAAxB,EAA0CzI,OAA1C,EAAmDvhD,UAAnD,CAAf;IACA;;IACF,SAAK,OAAL;IACE4qD,MAAAA,gBAAc,CAACF,aAAD,CAAd;IACAZ,MAAAA,oBAAoB,SAApB,IAAAA,oBAAoB,WAApB,SAAA,GAAAA,oBAAoB,CAAG,KAAH,CAApB;IACAD,MAAAA,qBAAqB,SAArB,IAAAA,qBAAqB,WAArB,SAAA,GAAAA,qBAAqB,CAAG,KAAH,CAArB;IACA;;IACF,SAAK,QAAL;IACE9qD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;IACAsG,MAAAA,UAAU,CAAC7U,OAAX,CAAmBoX,KAAnB;IACAoiD,MAAAA,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,CAAG3rE,SAAH,CAAhB;IACA;IAlBJ;IAsBD,CAjCM;;IAmCP,IAAMusE,gBAAc,GAAG,SAAjBA,cAAiB,CAACF,aAAD;;;IACrB,QAACA,aAAD,UAAA,iBAAA,SAAA,MAAgC1/C,OAAhC;IACD,CAFD;;IAIA,IAAM2/C,iBAAe,GAAG,SAAlBA,eAAkB,CACtBtgD,SADsB,EAEtBqgD,aAFsB,EAGtBV,gBAHsB,EAItBzI,OAJsB,EAKtBvhD,UALsB;IAOtB,MAAMkqD,SAAS,GAAG3I,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE/wD,OAAT,CAAiB+Z,gBAAjB,CAAkC,gDAAlC,CAAlB;IACA,MAAItzB,KAAK,GAAG5H,KAAK,CAACiU,IAAN,CAAW4mE,SAAX,EAAsB3qD,SAAtB,CAAgC,UAACvoB,IAAD;IAC1C,WAAOA,IAAI,IAAI0zE,aAAf;IACD,GAFW,CAAZ;;IAIA,MAAIzzE,KAAK,KAAK,CAAC,CAAf,EAAkB;IAChBA,IAAAA,KAAK,GAAGozB,SAAS,KAAK,IAAd,GAAqB6/C,SAAS,CAACl8E,MAAV,GAAmB,CAAxC,GAA4C,CAApD;IACD,GAFD,MAEO,IACJgyB,UAAU,IAAI/oB,KAAK,KAAK,CAAxB,IAA6BozB,SAAS,KAAK,IAA5C,IACCrK,UAAU,IAAI/oB,KAAK,KAAKizE,SAAS,CAACl8E,MAAV,GAAmB,CAA3C,IAAgDq8B,SAAS,KAAK,MAF1D,EAGL;IACA,QAAM4/C,WAAW,GAAG1I,OAAO,CAAC/wD,OAAR,CAAgB2V,aAAhB,CAA8B,mDAA9B,CAApB;IACA8jD,IAAAA,WAAW,CAACriD,KAAZ;IACAoiD,IAAAA,gBAAgB,IAAIA,gBAAgB,CAACC,WAAD,CAApC;IACD,GAPM,MAOA;IACLhzE,IAAAA,KAAK,GAAGozB,SAAS,KAAK,IAAd,GAAqB,CAACpzB,KAAK,GAAG,CAAR,GAAYizE,SAAS,CAACl8E,MAAvB,IAAiCk8E,SAAS,CAACl8E,MAAhE,GAAyE,CAACiJ,KAAK,GAAG,CAAT,IAAcizE,SAAS,CAACl8E,MAAzG;IAEA,QAAMiwB,YAAY,GAAGisD,SAAS,CAACjzE,KAAD,CAA9B;IAECgnB,IAAAA,YAA4B,CAAC2J,KAA7B;IACDoiD,IAAAA,gBAAgB,IAAIA,gBAAgB,CAAC/rD,YAAD,CAApC;IACAA,IAAAA,YAAY,CAAChB,cAAb,CAA4B;IAAEkB,MAAAA,KAAK,EAAE;IAAT,KAA5B;IACD;IACF,CA9BD;;IAgCO,IAAM0sD,oBAAkB,GAAG,SAArBA,kBAAqB,CAChCv8D,KADgC,EAEhCizD,OAFgC,EAGhCyI,gBAHgC,EAIhCjrD,cAJgC,EAKhCsG,UALgC;;;IAOhC,MAAM6kD,SAAS,SAAG3I,OAAO,CAAC/wD,iDAAS+Z,iBAAiB,iDAApD;IACA,MAAItM,YAAJ;;IAEA,UAAQ3P,KAAK,CAAClX,GAAd;IACE,SAAK,SAAL;IACEkX,MAAAA,KAAK,CAAC7T,cAAN;IACAwjB,MAAAA,YAAY,GAAGisD,SAAS,CAACA,SAAS,CAACl8E,MAAV,GAAmB,CAApB,CAAxB;IACA;;IACF,SAAK,WAAL;IACEsgB,MAAAA,KAAK,CAAC7T,cAAN;IACAwjB,MAAAA,YAAY,GAAGisD,SAAS,CAAC,CAAD,CAAxB;IACA;;IACF,SAAK,QAAL;IACEnrD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;IACAsG,MAAAA,UAAU,CAAC7U,OAAX,CAAmBoX,KAAnB;IACAoiD,MAAAA,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,CAAG3rE,SAAH,CAAhB;IACA;IAbJ;;IAkBA,QAAC4f,YAAD,UAAA,iBAAA,SAAA,MAA+B2J,OAA/B;IACA,QAAA3J,YAAY,SAAZ,IAAAA,YAAY,WAAZ,SAAA,GAAAA,YAAY,CAAEhB,cAAd,UAAA,iBAAA,SAAA,WAAAgB,cAA+B;IAAEE,IAAAA,KAAK,EAAE;IAAT,IAA/B;IACA6rD,EAAAA,gBAAgB,IAAIA,gBAAgB,CAAC/rD,YAAD,CAApC;IACD,CA/BM;;ICnEA,IAAM6sD,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACl6E,KAAD;IAClC,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiB02E,sBAAjB,CAApB;IAEQ,MAAAhI,OAAO,GAAmD3uE,WAAW,QAArE;IAAA,MAASo3E,gBAAgB,GAAiCp3E,WAAW,iBAArE;IAAA,MAA2BmsB,cAAc,GAAiBnsB,WAAW,eAArE;IAAA,MAA2CyyB,UAAU,GAAKzyB,WAAW,WAArE;IAER,sBACElB,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACq3B,KAAD;IACE7xB,IAAAA,IAAI,EAAC;IACL8T,IAAAA,SAAS,EAAE,mBAACsD,KAAD;IAAW,aAAAu8D,oBAAkB,CAACv8D,KAAD,EAAQizD,OAAR,EAAiByI,gBAAjB,EAAmCjrD,cAAnC,EAAmDsG,UAAnD,CAAlB;IAAgF;IACtGhxB,IAAAA,SAAS,EAAC;qBACA;SACNzD,MALN,CADF,CADF;IAWD,CAhBM;;ICoBA,IAAMm6E,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACn6E,KAAD;IACjC,sBAAOc,8BAAA,CAACu0E,OAAD,eAAar1E,MAAb,EAAqBA,KAAK,CAACyC,QAA3B,CAAP;IACD,CAFM;IAIP03E,mBAAmB,CAAC50E,YAApB,GAAmC;IACjCiF,EAAAA,IAAI,EAAE,QAD2B;IAEjC4sE,EAAAA,WAAW,EAAE,KAFoB;IAGjCp2E,EAAAA,IAAI,EAAE,YAH2B;IAIjCs2E,EAAAA,OAAO,EAAE;IAJwB,CAAnC;;ICEO,IAAM8C,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACp6E,KAAD;IAC3B,MAAAyC,QAAQ,GAAqBzC,KAAK,SAAlC;IAAA,MAAUzB,KAAK,GAAcyB,KAAK,MAAlC;IAAA,MAAoB6L,IAAI,UAAK7L,OAA/B,WAAA,SAAA,EAAE;;IAER,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiB02E,sBAAjB,CAApB;IAGE,MAAAG,gBAAgB,GAWd92E,WAAW,iBAXb;IAAA,MACA+2E,aAAa,GAUX/2E,WAAW,cAXb;IAAA,MAEA+2B,QAAQ,GASN/2B,WAAW,SAXb;IAAA,MAGA83E,aAAa,GAQX93E,WAAW,cAXb;IAAA,MAIAo3E,gBAAgB,GAOdp3E,WAAW,iBAXb;IAAA,MAKAi3E,qBAAqB,GAMnBj3E,WAAW,sBAXb;IAAA,MAMAk3E,oBAAoB,GAKlBl3E,WAAW,qBAXb;IAAA,MAOA2uE,OAAO,GAIL3uE,WAAW,QAXb;IAAA,MAQAotB,UAAU,GAGRptB,WAAW,WAXb;IAAA,MASAmsB,cAAc,GAEZnsB,WAAW,eAXb;IAAA,MAUAyyB,UAAU,GACRzyB,WAAW,WAXb;;IAaF,MAAMq4E,eAAe,GAAG,SAAlBA,eAAkB,CAAC38D,KAAD,EAAgD48D,UAAhD;IACtB58D,IAAAA,KAAK,CAAC7T,cAAN;IACA,QAAIzC,IAAI,GAAG2xE,aAAa,kBAAOA,cAAP,GAAwB,EAAhD;;IAEA,QAAIA,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEn9E,QAAf,CAAwB0+E,UAAxB,CAAJ,EAAyC;IACvClzE,MAAAA,IAAI,GAAG2xE,aAAa,CAACp4E,MAAd,CAAqB,UAACsvE,YAAD;IAA8B,eAAAA,YAAY,KAAKqK,UAAjB;IAA2B,OAA9E,CAAP;IACD,KAFD,MAEO;IACLlzE,MAAAA,IAAI,CAACke,IAAL,CAAUg1D,UAAV;IACD;;IAEDxB,IAAAA,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,gBAAO1xE,KAAP,CAAhB;IACA+mB,IAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA4K,IAAAA,QAAQ,IAAIA,QAAQ,CAAC3xB,IAAD,CAApB;IACD,GAbD;;IAeA,MAAMqW,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvByiB,IAAAA,eAAa,CACXziB,KADW,EAEXo8D,aAFW,EAGXV,gBAHW,EAIXH,qBAJW,EAKXC,oBALW,EAMXvI,OANW,EAOXvhD,UAPW,EAQXjB,cARW,EASXsG,UATW,CAAb;IAWD,GAZD;;IAcA,sBACE3zB,8BAAA,CAACu0E,OAAO,CAACkC,IAAT;IACE7tE,IAAAA,OAAO,EAAE,iBAACgU,KAAD;IAAW,aAAA28D,eAAe,CAAC38D,KAAD,EAAQnf,KAAR,CAAf;IAA6B;IACjD6b,IAAAA,SAAS,EAAE,mBAACsD,KAAD;IAAW,aAAAD,gBAAgB,CAACC,KAAD,CAAhB;IAAuB;IAC7C3S,IAAAA,QAAQ,EAAEguE,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEn9E,QAAf,CAAwB2C,KAAxB;qBACA;IACViN,IAAAA,QAAQ,EAAE,CAAC;SACPK,KANN,EAQGpJ,QARH,CADF;IAYD,CA5DM;IA8DP23E,qBAAqB,CAAC70E,YAAtB,GAAqC;IACnC+xE,EAAAA,OAAO,EAAE;IAD0B,CAArC;;IC5EO,IAAMiD,yBAAyB,GAAG,SAA5BA,yBAA4B,CAACv6E,KAAD;IAC/B,MAAA4D,MAAM,GAAyB5D,KAAK,OAApC;IAAA,MAAQkmC,KAAK,GAAkBlmC,KAAK,MAApC;IAAA,MAAewmC,WAAW,GAAKxmC,KAAK,YAApC;IACR,sBACEc,8BAAA,MAAA;IACE2C,IAAAA,SAAS,EAAC;IACVqC,IAAAA,KAAK,EAAE;IAAElC,MAAAA,MAAM,EAAEA,MAAM,GAAGA,MAAM,GAAG,CAAZ,GAAgB;IAAhC;qBACG;OAHZ,EAKGsiC,KAAK,iBACJplC,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAC;IAAyBD,IAAAA,MAAM,EAAC;OAAhD,EACG0iC,KADH,CANJ,EAUGM,WAAW,iBACV1lC,8BAAA,CAACyC,IAAD;IAAME,IAAAA,SAAS,EAAC;IAAyBD,IAAAA,MAAM,EAAC;IAASxC,IAAAA,IAAI,EAAC;IAAQC,IAAAA,UAAU,EAAC;OAAjF,EACGulC,WADH,CAXJ,CADF;IAkBD,CApBM;;ICKP,IAAMg0C,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACx6E,KAAD;IAClB,MAAAs6E,UAAU,GAAiBt6E,KAAK,WAAhC;IAAA,MAAY80E,UAAU,GAAK90E,KAAK,WAAhC;;IACF,MAAAxE,KAAgCsF,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAhC;IAAA,MAACuH,WAAW,QAAZ;IAAA,MAAcswE,cAAc,QAA5B;;IACN,MAAM5+B,UAAU,GAAG/6C,gBAAK,CAAC4e,MAAN,CAAa,IAAb,CAAnB;IAEQ,MAAArc,KAAkCi3E,UAAU,UAA5C;IAAA,MAAAp5E,SAAS,mBAAG,OAAZ;IAAA,MAAgByB,KAAkB23E,UAAU,SAA5C;IAAA,MAAgBn5E,QAAQ,mBAAG,OAA3B;IACR,MAAMuC,IAAI,GAAMxC,SAAS,MAAT,GAAaC,QAA7B;IAEA,sBACEL,8BAAA,CAACoE,OAAD;IAAS02C,IAAAA,gBAAgB,EAAE;IAAMp3C,IAAAA,OAAO,EAAEd;IAAMm4C,IAAAA,UAAU,EAAEA;IAAYtzC,IAAAA,IAAI,EAAE4B;OAA9E,eACErJ,8BAAA,CAACs5E,qBAAD;IACE77E,IAAAA,KAAK,EAAE+7E;IACPj8C,IAAAA,OAAO,EAAE;IACPo8C,MAAAA,cAAc,CAAC,IAAD,CAAd;IACD;IACDn5D,IAAAA,MAAM,EAAE;IACNm5D,MAAAA,cAAc,CAAC,KAAD,CAAd;IACD;OAPH,eASE35E,8BAAA,CAACoe,QAAD;IACEE,IAAAA,cAAc,EAAE01D;IAChBj1D,IAAAA,OAAO,EAAEi1D;IACT7qE,IAAAA,KAAK,EAAEvG;IACP1C,IAAAA,IAAI,EAAC;IACLwK,IAAAA,QAAQ,EAAE,CAAC;IACX/H,IAAAA,SAAS,EAAC;qBACA;IACVgc,IAAAA,QAAQ,EAAEo8B;OARZ,CATF,CADF,CADF;IAwBD,CAhCD;;IAkCO,IAAM6+B,sBAAsB,GAAG,SAAzBA,sBAAyB,CAAC16E,KAAD;;;IAC5B,MAAA0G,gBAAgB,GAAiE1G,KAAK,iBAAtF;IAAA,MAAkBw6B,WAAW,GAAoDx6B,KAAK,YAAtF;IAAA,MAA+BqvB,iBAAiB,GAAiCrvB,KAAK,kBAAtF;IAAA,MAAkD26E,gBAAgB,GAAe36E,KAAK,iBAAtF;IAAA,MAAoEyC,QAAQ,GAAKzC,KAAK,SAAtF;;IAEF,MAAAqD,KAA8BvC,gBAAK,CAAC8B,QAAN,CAAe8D,gBAAf,CAA9B;IAAA,MAACk0E,UAAU,QAAX;IAAA,MAAaC,aAAa,QAA1B;;IACA,MAAAl4E,KAAgC7B,gBAAK,CAAC8B,QAAN,CAAe,EAAf,CAAhC;IAAA,MAACk4E,WAAW,QAAZ;IAAA,MAAcC,cAAc,QAA5B;;IAEN,MAAM/4E,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiB02E,sBAAjB,CAApB;IAEQ,MAAAI,aAAa,GAAqC/2E,WAAW,cAA7D;IAAA,MAAe2uE,OAAO,GAA4B3uE,WAAW,QAA7D;IAAA,MAAwBotB,UAAU,GAAgBptB,WAAW,WAA7D;IAAA,MAAoCw3E,SAAS,GAAKx3E,WAAW,UAA7D;;IAER,MAAIS,QAAJ,EAAc;IACZ,wBAAO3B,8BAAA,0BAAA,MAAA,EAAG2B,QAAH,CAAP;IACD;;IAED,MAAMu4E,eAAe,GAAG,SAAlBA,eAAkB,CAACt9D,KAAD;IACtB,QAAMo9D,WAAW,GAAGp9D,KAAK,CAAC6C,MAAN,CAAahiB,KAAjC;IAEA,QAAM6I,IAAI,GAAGV,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,CAAE/F,MAAlB,CAAyB,UAAC25E,UAAD;;;IAC5B,UAAAp5E,SAAS,GAAeo5E,UAAU,UAAlC;IAAA,UAAWn5E,QAAQ,GAAKm5E,UAAU,SAAlC;;IAER,UAAIK,gBAAJ,EAAsB;IACpB,eAAOA,gBAAgB,CAACG,WAAD,EAAcR,UAAd,CAAvB;IACD;;IACD,aACE,OAAAp5E,SAAS,SAAT,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAE6pB,WAAX,4CAA0BkwD,WAAWH,WAAW,CAAC/vD,WAAZ,GAArC,YACA5pB,QAAQ,SAAR,IAAAA,QAAQ,WAAR,SAAA,GAAAA,QAAQ,CAAE4pB,WAAV,4CAAyBkwD,WAAWH,WAAW,CAAC/vD,WAAZ,GADpC,CADF;IAID,KAVY,CAAb;IAYAgwD,IAAAA,cAAc,CAACD,WAAD,CAAd;IACAD,IAAAA,aAAa,CAACzzE,IAAD,CAAb;IACD,GAjBD;;IAmBA,MAAMoa,cAAc,GAAG,SAAjBA,cAAiB;IACrBu5D,IAAAA,cAAc,CAAC,EAAD,CAAd;IACAF,IAAAA,aAAa,CAACn0E,gBAAD,CAAb;IACD,GAHD;;IAKA,MAAMe,eAAe,GAAGtE,8BAAU,WAChC3H,GAAC,OAAD,GAAU,CAAC4zB,YACX5zB,GAAC,OAAD,GAAU4zB,YACV5zB,GAAC,8BAAD,GAAiC,QAHD,EAAlC;IAMA,sBACEsF,8BAAA,MAAA;IACEgF,IAAAA,KAAK,EAAE;IAAEjC,MAAAA,KAAK,EAAE22B,WAAW,CAAC32B;IAArB;IACPyH,IAAAA,GAAG,EAAEqlE;qBACK;IACVnxD,IAAAA,EAAE,EAAEg6D;OAJN,EAMGpqD,UAAU,iBACTtuB,8BAAA,CAACo6E,oBAAD;IACEh5D,IAAAA,WAAW,EAAEmN;IACbvkB,IAAAA,QAAQ,EAAEkwE;IACVz8E,IAAAA,KAAK,EAAEu8E;IACPr5D,IAAAA,OAAO,EAAED;OAJX,CAPJ,eAeE1gB,8BAAA,MAAA;IAAKgF,IAAAA,KAAK,EAAE00B;IAAa/2B,IAAAA,SAAS,EAAEgE;OAApC,EACGmzE,UAAU,CAACx9E,MAAX,KAAsB,CAAtB,iBACC0D,8BAAA,CAACy5E,yBAAD;IACE32E,IAAAA,MAAM,EAAE42B,WAAW,CAAC5zB;IACpBs/B,IAAAA,KAAK,EAAC;IACNM,IAAAA,WAAW,EAAC;OAHd,CAFJ,eASE1lC,8BAAA,CAACq5E,mBAAD,MAAA,EACGS,UAAU,CAACz0E,GAAX,CAAe,UAACm0E,UAAD,EAAyBj0E,KAAzB;IACd,QAAMyuE,UAAU,GAAGiE,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEn9E,QAAf,CAAwB0+E,UAAxB,CAAnB;IAEA,wBAAOx5E,8BAAA,CAAC05E,mBAAD;IAAqBh0E,MAAAA,GAAG,EAAEH;IAAOi0E,MAAAA,UAAU,EAAEA;IAAYxF,MAAAA,UAAU,EAAEA;SAArE,CAAP;IACD,GAJA,CADH,CATF,CAfF,CADF;IAmCD,CA/EM;;QC6CMqG,eAAe,GAAG,SAAlBA,eAAkB,CAACn7E,KAAD;;;IAE3B,MAAAiH,GAAG,GAeDjH,KAAK,IAfP;IAAA,MACAkH,WAAW,GAcTlH,KAAK,YAfP;IAAA,MAEAmE,eAAe,GAabnE,KAAK,gBAfP;IAAA,MAGAoH,IAAI,GAYFpH,KAAK,KAfP;IAAA,MAIAyD,SAAS,GAWPzD,KAAK,UAfP;IAAA,MAKAgB,IAAI,GAUFhB,KAAK,KAfP;IAAA,MAMA64E,cAAc,GASZ74E,KAAK,eAfP;IAAA,MAOA+4B,QAAQ,GAQN/4B,KAAK,SAfP;IAAA,MAQA6D,KAAK,GAOH7D,KAAK,MAfP;IAAA,MASA4G,SAAS,GAMP5G,KAAK,UAfP;IAAA,MAUAm1B,SAAS,GAKPn1B,KAAK,UAfP;IAAA,MAWAqvB,iBAAiB,GAIfrvB,KAAK,kBAfP;IAAA,MAYAovB,UAAU,GAGRpvB,KAAK,WAfP;IAAA,MAaA26E,gBAAgB,GAEd36E,KAAK,iBAfP;IAAA,MAcAyC,QAAQ,GACNzC,KAAK,SAfP;;IAiBI,MAAAqD,KAAoCvC,gBAAK,CAAC8B,QAAN,CAA6B,EAA7B,CAApC;IAAA,MAACm2E,aAAa,QAAd;IAAA,MAAgBD,gBAAgB,QAAhC;;IACA,MAAAn2E,KAAgC7B,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAhC;IAAA,MAACsrB,WAAW,QAAZ;IAAA,MAAcC,cAAc,QAA5B;;IACA,MAAAtpB,KAAoC/D,gBAAK,CAAC8B,QAAN,EAApC;IAAA,MAACk3E,aAAa,QAAd;IAAA,MAAgBV,gBAAgB,QAAhC;;IACA,MAAA/0E,KAA8CvD,gBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAA9C;IAAA,MAACw4E,kBAAkB,QAAnB;IAAA,MAAqBnC,qBAAqB,QAA1C;;IACA,MAAA5xE,KAA4CvG,gBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAA5C;IAAA,MAACy4E,iBAAiB,QAAlB;IAAA,MAAoBnC,oBAAoB,QAAxC;;IAEN,MAAMvI,OAAO,gBAAG7vE,gBAAK,CAAC0zB,SAAN,EAAhB;IACA,MAAMC,UAAU,gBAAG3zB,gBAAK,CAAC0zB,SAAN,EAAnB;IAEA1zB,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAM29D,YAAY,GAAiB,EAAnC;IACA1+D,IAAAA,IAAI,CAACvJ,OAAL,CAAa,UAACm7E,UAAD;IACX,UAAIA,UAAU,CAACjuE,QAAf,EAAyB;IACvB+6D,QAAAA,YAAY,CAACxgD,IAAb,CAAkB0zD,UAAlB;IACD;IACF,KAJD;IAKAF,IAAAA,gBAAgB,CAAChT,YAAD,CAAhB;IACD,GARD,EAQG,EARH;IAUAhlE,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI,CAAC+lB,WAAL,EAAkB;IAChB+qD,MAAAA,qBAAqB,CAAC,KAAD,CAArB;IACAC,MAAAA,oBAAoB,CAAC,KAAD,CAApB;IACD,KAHD,MAGO;IACLD,MAAAA,qBAAqB,CAAC,IAAD,CAArB;IACD;IACF,GAPD,EAOG,CAAC/qD,WAAD,CAPH;IASAptB,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIizE,kBAAkB,IAAIltD,WAA1B,EAAuC;IACrC6H,MAAAA,qBAAqB,CAAC;IAAM,eAAAojD,eAAa,CAAC,MAAD,EAASC,gBAAT,EAA2BzI,OAA3B,EAAoCvhD,UAApC,CAAb;IAA4D,OAAnE,CAArB;IACD;IACF,GAJD,EAIG,CAACgsD,kBAAD,CAJH;IAMAt6E,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIkzE,iBAAiB,IAAIntD,WAAzB,EAAsC;IACpC6H,MAAAA,qBAAqB,CAAC;IAAM,eAAAojD,eAAa,CAAC,IAAD,EAAOC,gBAAP,EAAyBzI,OAAzB,EAAkCvhD,UAAlC,CAAb;IAA0D,OAAjE,CAArB;IACD;IACF,GAJD,EAIG,CAACisD,iBAAD,CAJH;IAMA,MAAMp7E,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEA,MAAMyF,iBAAiB,GAAG2B,IAAI,CAAChK,MAAL,GAAc6J,GAAxC;IAEA,MAAMvB,WAAW,GAAG;IAClBiC,IAAAA,eAAe,EAAE,KAAGT,WADF;IAElBU,IAAAA,SAAS,EAAE,uDAAqDV;IAF9C,GAApB;IAKA,MAAMo0E,oBAAoB,GAAGn4E,8BAAU,WAEnC3H,GAAC,uBAAD,GAA0B,QAFS,GAIrCiI,SAJqC,CAAvC;IAOA,MAAM83E,iBAAiB,GAAG,EAA1B;IACA,MAAMC,YAAY,GAAG,CAArB;IAEA,MAAMhhD,WAAW,GAAG;IAClB32B,IAAAA,KAAK,OADa;IAElBsxB,IAAAA,SAAS,EAAEA,SAFO;IAGlBvuB,IAAAA,SAAS,EAAEwoB,UAAU,GAAGxoB,SAAU,GAAG20E,iBAAb,GAAiCC,YAApC,GAAmD50E;IAHtD,GAApB;IAMA,MAAMF,gBAAgB,GAAGU,IAAI,CAAC7C,KAAL,CAAW0C,GAAX,EAAgBG,IAAI,CAAChK,MAArB,CAAzB;IACA,MAAMo8E,SAAS,GAAG,0CAAwCr7D,YAAY,EAAtE;IAEA,MAAMs9D,YAAY,GAAG;IACnB/0E,IAAAA,gBAAgB,kBADG;IAEnB8zB,IAAAA,WAAW,aAFQ;IAGnBnL,IAAAA,iBAAiB,mBAHE;IAInBsrD,IAAAA,gBAAgB,kBAJG;IAKnBl4E,IAAAA,QAAQ;IALW,GAArB;IAQA,MAAMi5E,YAAY,GAAG;IACnB16E,IAAAA,IAAI,MADe;IAEnB0E,IAAAA,WAAW,aAFQ;IAGnBD,IAAAA,iBAAiB,mBAHE;IAInBiB,IAAAA,gBAAgB;IAJG,GAArB;;IAOA,MAAMkd,eAAe,GAAG,SAAlBA,eAAkB,CAACrb,IAAD;IACtBA,IAAAA,IAAI,GAAG4lB,cAAc,CAAC,IAAD,CAAjB,GAA0BA,cAAc,CAAC,KAAD,CAA5C;IACD,GAFD;;IAIA,MAAMnsB,WAAW,GAAG;IAClB2uE,IAAAA,OAAO,SADW;IAElB53C,IAAAA,QAAQ,UAFU;IAGlB3J,IAAAA,UAAU,YAHQ;IAIlBqF,IAAAA,UAAU,YAJQ;IAKlBskD,IAAAA,aAAa,eALK;IAMlBe,IAAAA,aAAa,eANK;IAOlB5rD,IAAAA,WAAW,aAPO;IAQlB4qD,IAAAA,gBAAgB,kBARE;IASlBM,IAAAA,gBAAgB,kBATE;IAUlBH,IAAAA,qBAAqB,uBAVH;IAWlBC,IAAAA,oBAAoB,sBAXF;IAYlB/qD,IAAAA,cAAc,gBAZI;IAalBqrD,IAAAA,SAAS;IAbS,GAApB;IAgBA,sBACE14E,8BAAA,CAAC63E,sBAAsB,CAACv3E,QAAxB;IAAiC7C,IAAAA,KAAK,EAAEyD;OAAxC,eACElB,8BAAA,MAAA;qBAAe;SAAmCb;IAAWwD,IAAAA,SAAS,EAAE63E;QAAxE,eACEx6E,8BAAA,CAAC83E,uBAAD;IACE53E,IAAAA,IAAI,EAAEA;IACN0E,IAAAA,WAAW,EAAEA;IACbM,IAAAA,UAAU,EAAEoB,IAAI,CAAC7C,KAAL,CAAW,CAAX,EAAc0C,GAAd;IACZ4xE,IAAAA,cAAc,EAAEA;IAChB10E,IAAAA,eAAe,EAAEA;OALnB,CADF,EAQG,CAACsB,iBAAiB,GAAG,CAApB,IAA0BhD,QAAQ,IAAIgD,iBAAiB,GAAG,CAA3D,kBACC3E,8BAAA,CAACkH,OAAD;IACEO,IAAAA,IAAI,EAAE2lB;IACN/oB,IAAAA,QAAQ,EAAC;IACT8C,IAAAA,OAAO,eAAEnH,8BAAA,CAACy4E,oBAAD,eAA0BmC,aAA1B;IACTt2E,IAAAA,YAAY,EAAC;IACbue,IAAAA,QAAQ,EAAEC;OALZ,eAOE9iB,8BAAA,CAAC45E,sBAAD,eAA4Be,aAA5B,CAPF,CATJ,CADF,CADF;IAwBD;IAEDN,eAAe,CAAC91E,WAAhB,GAA8B,iBAA9B;IACA81E,eAAe,CAAC51E,YAAhB,GAA+B;IAC7B0B,EAAAA,GAAG,EAAE,CADwB;IAE7B9C,EAAAA,eAAe,EAAE,QAFY;IAG7B+C,EAAAA,WAAW,EAAE,OAHgB;IAI7BlG,EAAAA,IAAI,EAAE,SAJuB;IAK7B6C,EAAAA,KAAK,EAAE,GALsB;IAM7B+C,EAAAA,SAAS,EAAE;IANkB,CAA/B;IASAu0E,eAAe,CAAChjD,KAAhB,GAAwB+hD,oBAAxB;IACAiB,eAAe,CAACxS,IAAhB,GAAuBwR,mBAAvB;IACAgB,eAAe,CAAC5pD,MAAhB,GAAyB6oD,qBAAzB;IACAe,eAAe,CAACn4B,UAAhB,GAA6Bu3B,yBAA7B;;IC7OO,IAAMoB,YAAY,GAAG,SAAfA,YAAe,CAAC37E,KAAD;IAC1B,sBACEc,8BAAA,CAACu0E,OAAD;IAAS5xE,IAAAA,SAAS,EAAC;SAAWzD;IAAOsE,IAAAA,IAAI,EAAC;QAA1C,EACGtE,KAAK,CAACyC,QADT,CADF;IAKD,CANM;IAQPk5E,YAAY,CAACp2E,YAAb,GAA4B;IAC1BiF,EAAAA,IAAI,EAAE,QADoB;IAE1B4sE,EAAAA,WAAW,EAAE,KAFa;IAG1BE,EAAAA,OAAO,EAAE,IAHiB;IAI1Bt2E,EAAAA,IAAI,EAAE;IAJoB,CAA5B;;ICXO,IAAM46E,eAAe,gBAAG96E,gBAAK,CAACC,aAAN,CAAkC,EAAlC,CAAxB;;ICrBA,IAAMo/B,eAAa,GAAG,SAAhBA,aAAgB,CAC3BziB,KAD2B,EAE3Bo8D,aAF2B,EAG3BV,gBAH2B,EAI3BjrD,cAJ2B,EAK3B0tD,eAL2B,EAM3B5C,qBAN2B,EAO3BC,oBAP2B,EAQ3B4C,WAR2B,EAS3BnL,OAT2B;IAW3B,UAAQjzD,KAAK,CAAClX,GAAd;IACE,SAAK,SAAL;IACEkX,MAAAA,KAAK,CAAC7T,cAAN;IACAkwE,MAAAA,iBAAe,CAAC,IAAD,EAAOD,aAAP,EAAsBV,gBAAtB,EAAwCzI,OAAxC,CAAf;IACA;;IACF,SAAK,WAAL;IACEjzD,MAAAA,KAAK,CAAC7T,cAAN;IACAkwE,MAAAA,iBAAe,CAAC,MAAD,EAASD,aAAT,EAAwBV,gBAAxB,EAA0CzI,OAA1C,CAAf;IACA;;IACF,SAAK,OAAL;IACEqJ,MAAAA,gBAAc,CAACF,aAAD,EAAgBgC,WAAhB,EAA6BD,eAA7B,EAA8ClL,OAA9C,EAAuDyI,gBAAvD,CAAd;IACAF,MAAAA,oBAAoB,SAApB,IAAAA,oBAAoB,WAApB,SAAA,GAAAA,oBAAoB,CAAG,KAAH,CAApB;IACAD,MAAAA,qBAAqB,SAArB,IAAAA,qBAAqB,WAArB,SAAA,GAAAA,qBAAqB,CAAG,KAAH,CAArB;IACA;;IACF,SAAK,QAAL;IACE9qD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;IACA0tD,MAAAA,eAAe,CAACj8D,OAAhB,CAAwBoX,KAAxB;IACAoiD,MAAAA,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,CAAG3rE,SAAH,CAAhB;IACA;IAlBJ;IAsBD,CAjCM;;IAmCP,IAAMusE,gBAAc,GAAG,SAAjBA,cAAiB,CACrBF,aADqB,EAErBgC,WAFqB,EAGrBD,eAHqB,EAIrBlL,OAJqB,EAKrByI,gBALqB;;;IAOrB,QAACU,aAAD,UAAA,iBAAA,SAAA,MAAgC1/C,OAAhC;;IACA,MAAI,CAAC0hD,WAAL,EAAkB;IAChBD,IAAAA,eAAe,CAACj8D,OAAhB,CAAwBoX,KAAxB;IACD,GAFD,MAEO;IAEL,QAAMsiD,SAAS,GAAG3I,OAAO,CAAC/wD,OAAR,CAAgB+Z,gBAAhB,CAAiC,gDAAjC,CAAlB;IACA,QAAMoiD,OAAO,GAAGt9E,KAAK,CAACiU,IAAN,CAAW4mE,SAAX,CAAhB;IACA,QAAMjzE,KAAK,GAAG01E,OAAO,CAACptD,SAAR,CAAkB,UAACvoB,IAAD;IAC9B,aAAOA,IAAI,IAAI0zE,aAAf;IACD,KAFa,CAAd;;IAIA,QAAIzzE,KAAK,KAAK01E,OAAO,CAAC3+E,MAAR,GAAiB,CAA/B,EAAkC;IAC/Bk8E,MAAAA,SAAS,CAAC,CAAD,CAAT,CAA6BtiD,KAA7B;IACDoiD,MAAAA,gBAAgB,IAAIA,gBAAgB,CAACE,SAAS,CAAC,CAAD,CAAV,CAApC;IACAA,MAAAA,SAAS,CAAC,CAAD,CAAT,CAAajtD,cAAb,CAA4B;IAAEkB,QAAAA,KAAK,EAAE;IAAT,OAA5B;IACD;IACF;IACF,CAxBD;;IA0BA,IAAMwsD,iBAAe,GAAG,SAAlBA,eAAkB,CACtBtgD,SADsB,EAEtBqgD,aAFsB,EAGtBV,gBAHsB,EAItBzI,OAJsB;;;IAMtB,MAAM2I,SAAS,GAAG3I,OAAO,CAAC/wD,OAAR,CAAgB+Z,gBAAhB,CAAiC,gDAAjC,CAAlB;IACA,MAAItzB,KAAK,GAAG5H,KAAK,CAACiU,IAAN,CAAW4mE,SAAX,EAAsB3qD,SAAtB,CAAgC,UAACvoB,IAAD;IAC1C,WAAOA,IAAI,IAAI0zE,aAAf;IACD,GAFW,CAAZ;;IAIA,MAAIzzE,KAAK,KAAK,CAAC,CAAf,EAAkB;IAChBA,IAAAA,KAAK,GAAGozB,SAAS,KAAK,IAAd,GAAqB6/C,SAAS,CAACl8E,MAAV,GAAmB,CAAxC,GAA4C,CAApD;IACD,GAFD,MAEO;IACLiJ,IAAAA,KAAK,GAAGozB,SAAS,KAAK,IAAd,GAAqB,CAACpzB,KAAK,GAAG,CAAR,GAAYizE,SAAS,CAACl8E,MAAvB,IAAiCk8E,SAAS,CAACl8E,MAAhE,GAAyE,CAACiJ,KAAK,GAAG,CAAT,IAAcizE,SAAS,CAACl8E,MAAzG;IACD;;IAED,MAAMiwB,YAAY,GAAGisD,SAAS,CAACjzE,KAAD,CAA9B;IAECgnB,EAAAA,YAA4B,CAAC2J,KAA7B;IACDoiD,EAAAA,gBAAgB,IAAIA,gBAAgB,CAAC/rD,YAAD,CAApC;IACA,QAAAA,YAAY,SAAZ,IAAAA,YAAY,WAAZ,SAAA,GAAAA,YAAY,CAAEhB,cAAd,UAAA,iBAAA,SAAA,WAAAgB,cAA+B;IAAEE,IAAAA,KAAK,EAAE;IAAT,IAA/B;IACD,CAtBD;;ICvBO,IAAMyuD,cAAc,GAAG,SAAjBA,cAAiB,CAACh8E,KAAD;IACpB,MAAAyC,QAAQ,GAA+BzC,KAAK,SAA5C;IAAA,MAAUyqB,MAAM,GAAuBzqB,KAAK,OAA5C;IAAA,MAAkB0J,OAAO,GAAc1J,KAAK,QAA5C;IAAA,MAA8B6L,IAAI,UAAK7L,OAAzC,WAAA,UAAA,WAAA,EAAE;;IAER,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiB25E,eAAjB,CAApB;IAGE,MAAAK,aAAa,GAUXj6E,WAAW,cAVb;IAAA,MACAk1C,UAAU,GASRl1C,WAAW,WAVb;IAAA,MAEA83E,aAAa,GAQX93E,WAAW,cAVb;IAAA,MAGAo3E,gBAAgB,GAOdp3E,WAAW,iBAVb;IAAA,MAIAmsB,cAAc,GAMZnsB,WAAW,eAVb;IAAA,MAKA65E,eAAe,GAKb75E,WAAW,gBAVb;IAAA,MAMAi3E,qBAAqB,GAInBj3E,WAAW,sBAVb;IAAA,MAOAk3E,oBAAoB,GAGlBl3E,WAAW,qBAVb;IAAA,MAQA85E,WAAW,GAET95E,WAAW,YAVb;IAAA,MASA2uE,OAAO,GACL3uE,WAAW,QAVb;;IAYF,MAAM2H,cAAc,GAAG,SAAjBA,cAAiB;IACrB,QAAID,OAAJ,EAAa;IACX,aAAOA,OAAO,CAAC+gB,MAAD,CAAd;IACD;;IAED,WAAOwxD,aAAa,IAAIA,aAAa,uBAAMxxD;IAAQyxD,MAAAA,gBAAgB,EAAE;UAAhC,CAArC;IACD,GAND;;IAQA,MAAMz+D,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvByiB,IAAAA,eAAa,CACXziB,KADW,EAEXo8D,aAFW,EAGXV,gBAHW,EAIXjrD,cAJW,EAKX0tD,eALW,EAMX5C,qBANW,EAOXC,oBAPW,EAQX4C,WARW,EASXnL,OATW,CAAb;IAWD,GAZD;;IAcA,sBACE7vE,8BAAA,CAACu0E,OAAO,CAACkC,IAAT;IACE7tE,IAAAA,OAAO,EAAEC;IACToB,IAAAA,QAAQ,EAAE0f,MAAM,CAACxgB,KAAP,MAAiBitC,UAAU,SAAV,IAAAA,UAAU,WAAV,SAAA,GAAAA,UAAU,CAAEjtC,KAA7B;IACVmQ,IAAAA,SAAS,EAAEqD;IACXjS,IAAAA,QAAQ,EAAE,CAAC;IACXlH,IAAAA,IAAI,EAAC;qBACK;SACNuH,KAPN,EASGpJ,QATH,CADF;IAaD,CArDM;IAuDPu5E,cAAc,CAACz2E,YAAf,GAA8B;IAC5B+xE,EAAAA,OAAO,EAAE;IADmB,CAA9B;;IC7FO,IAAMn3C,eAAa,GAAG,SAAhBA,aAAgB,CAC3BziB,KAD2B,EAE3ByQ,cAF2B,EAG3B8qD,qBAH2B,EAI3BC,oBAJ2B;IAM3B,UAAQx7D,KAAK,CAAClX,GAAd;IACE,SAAK,SAAL;IACE2nB,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA+qD,MAAAA,oBAAoB,SAApB,IAAAA,oBAAoB,WAApB,SAAA,GAAAA,oBAAoB,CAAG,IAAH,CAApB;IACA;;IACF,SAAK,WAAL;IACE/qD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA8qD,MAAAA,qBAAqB,SAArB,IAAAA,qBAAqB,WAArB,SAAA,GAAAA,qBAAqB,CAAG,IAAH,CAArB;IACA;;IACF,SAAK,QAAL;IACA,SAAK,KAAL;IACE9qD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;IACA;IAZJ;IAgBD,CAtBM;IAwBA,IAAMgrD,eAAa,GAAG,SAAhBA,aAAgB,CAC3Bh0E,QAD2B,EAE3Bi0E,gBAF2B,EAG3BzI,OAH2B;;;IAK3B,MAAM2I,SAAS,SAAG3I,OAAO,CAAC/wD,iDAAS+Z,iBAAiB,iDAApD;IACA,MAAItM,YAAJ;;IAEA,MAAIloB,QAAQ,KAAK,MAAjB,EAAyB;IACvBkoB,IAAAA,YAAY,GAAGisD,SAAS,SAAT,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAG,CAAH,CAAxB;IACD,GAFD,MAEO;IACLjsD,IAAAA,YAAY,GAAGisD,SAAS,CAACA,SAAS,CAACl8E,MAAV,GAAmB,CAApB,CAAxB;IACD;;IACD,QAACiwB,YAAD,UAAA,iBAAA,SAAA,MAA+B2J,OAA/B;;IAEA,MAAI3J,YAAY,IAAI,OAAOA,YAAY,CAAChB,cAApB,KAAuC,UAA3D,EAAuE;IACrE,UAACgB,YAAD,UAAA,iBAAA,SAAA,MAA+BhB,eAAe;IAAEkB,MAAAA,KAAK,EAAE,QAAT;IAAmB4uD,MAAAA,QAAQ,EAAE;IAA7B,MAA9C;IACD;;IACD/C,EAAAA,gBAAgB,IAAIA,gBAAgB,CAAC/rD,YAAD,CAApC;IACD,CAnBM;;ICpBA,IAAM+uD,QAAQ,GAAG,SAAXA,QAAW,CAACp8E,KAAD;IACtB,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiB25E,eAAjB,CAApB;IAGE,MAAA1kC,UAAU,GASRl1C,WAAW,WATb;IAAA,MACAm1C,aAAa,GAQXn1C,WAAW,cATb;IAAA,MAEAo3E,gBAAgB,GAOdp3E,WAAW,iBATb;IAAA,MAGAmsB,cAAc,GAMZnsB,WAAW,eATb;IAAA,MAIA65E,eAAe,GAKb75E,WAAW,gBATb;IAAA,MAKAi3E,qBAAqB,GAInBj3E,WAAW,sBATb;IAAA,MAMAk3E,oBAAoB,GAGlBl3E,WAAW,qBATb;IAAA,MAOAksB,WAAW,GAETlsB,WAAW,YATb;IAAA,MAQAw3E,SAAS,GACPx3E,WAAW,UATb;;IAWF,MAAMse,eAAe,GAAG,SAAlBA,eAAkB,CAAC5C,KAAD;IACtB,QAAMnf,KAAK,GAAGmf,KAAK,CAAC6C,MAAN,CAAahiB,KAA3B;IACA66E,IAAAA,gBAAgB,IAAIA,gBAAgB,CAAC3rE,SAAD,CAApC;IACA,QAAMoyB,QAAQ,GAAG;IAAE51B,MAAAA,KAAK,EAAE1L,KAAT;IAAgBA,MAAAA,KAAK,OAArB;IAAuB29E,MAAAA,gBAAgB,EAAE;IAAzC,KAAjB;IACA/kC,IAAAA,aAAa,IAAIA,aAAa,CAACtX,QAAD,CAA9B;;IAEA,QAAIthC,KAAK,KAAK,EAAd,EAAkB;IAChB4vB,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACD;IACF,GATD;;IAWA,MAAM3M,cAAc,GAAG,SAAjBA,cAAiB,CAAC9D,KAAD;;;IACrBA,IAAAA,KAAK,CAACF,eAAN;IACA,QAAMqiB,QAAQ,GAAG;IAAE51B,MAAAA,KAAK,EAAE,EAAT;IAAa1L,MAAAA,KAAK,EAAE,EAApB;IAAwB29E,MAAAA,gBAAgB,EAAE;IAA1C,KAAjB;IAEA/kC,IAAAA,aAAa,IAAIA,aAAa,CAACtX,QAAD,CAA9B;IACA1R,IAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA,UAAAnuB,KAAK,CAACyhB,OAAN,UAAA,iBAAA,SAAA,WAAAzhB,OAAgB0d,MAAhB;IACD,GAPD;;IASA,MAAMD,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvByiB,IAAAA,eAAa,CAACziB,KAAD,EAAQyQ,cAAR,EAAwB8qD,qBAAxB,EAA+CC,oBAA/C,CAAb;IACAl5E,IAAAA,KAAK,CAACoa,SAAN,IAAmBpa,KAAK,CAACoa,SAAN,CAAgBsD,KAAhB,CAAnB;IACD,GAHD;;IAKA,sBACE5c,8BAAA,CAACq3B,KAAD,eACMn4B;IACJsL,IAAAA,GAAG,EAAEuwE;IACLt9E,IAAAA,KAAK,EAAE24C,UAAU,SAAV,IAAAA,UAAU,WAAV,SAAA,GAAAA,UAAU,CAAEjtC;IACnBa,IAAAA,QAAQ,EAAEwV;IACVlG,IAAAA,SAAS,EAAEqD;IACXgE,IAAAA,OAAO,EAAED;IACTld,IAAAA,IAAI,EAAC;yBACS;yBACCk1E;sBACHx5E,KAAK,CAACkiB,WAAN,IAAqB;yBAClBgM;qBACL;QAZZ,CADF;IAgBD,CAxDM;;ICCP,IAAMuoB,QAAQ,GAAG;IACfC,EAAAA,SAAS,EAAE,WADI;IAEfC,EAAAA,MAAM,EAAE,QAFO;IAGfC,EAAAA,KAAK,EAAE;IAHQ,CAAjB;IA6FO,IAAMylC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACr8E,KAAD;;;IAE9B,MAAA82C,WAAW,GAiBT92C,KAAK,YAjBP;IAAA,MACA+2C,eAAe,GAgBb/2C,KAAK,gBAjBP;IAAA,MAEA2L,QAAQ,GAeN3L,KAAK,SAjBP;IAAA,MAGA6C,KAAK,GAcH7C,KAAK,MAjBP;IAAA,MAIAkiB,WAAW,GAaTliB,KAAK,YAjBP;IAAA,MAKAm+B,YAAY,GAYVn+B,KAAK,aAjBP;IAAA,MAMAzB,KAAK,GAWHyB,KAAK,MAjBP;IAAA,MAOAyD,SAAS,GAUPzD,KAAK,UAjBP;IAAA,MAQAo4B,SAAS,GASPp4B,KAAK,UAjBP;IAAA,MASA8K,QAAQ,GAQN9K,KAAK,SAjBP;IAAA,MAUAshB,MAAM,GAOJthB,KAAK,OAjBP;IAAA,MAWAq+B,OAAO,GAMLr+B,KAAK,QAjBP;IAAA,MAYAoa,SAAS,GAKPpa,KAAK,UAjBP;IAAA,MAaA8kD,aAAa,GAIX9kD,KAAK,cAjBP;IAAA,MAcAwL,QAAQ,GAGNxL,KAAK,SAjBP;IAAA,MAeAsE,IAAI,GAEFtE,KAAK,KAjBP;IAAA,MAgBG6L,IAAI,UACL7L,OAlBE,cAAA,mBAAA,YAAA,SAAA,eAAA,gBAAA,SAAA,aAAA,aAAA,YAAA,UAAA,WAAA,aAAA,iBAAA,YAAA,QAAA,EACJ;;IAmBF,MAAMyzB,QAAQ,gBAAG3yB,gBAAK,CAAC0zB,SAAN,EAAjB;;IACM,MAAA7xB,KAAoB7B,gBAAK,CAAC8B,QAAN,CAA6BrE,KAAK,IAAI4/B,YAAtC,CAApB;IAAA,MAAC6Y,KAAK,QAAN;IAAA,MAAQC,QAAQ,QAAhB;;IACA,MAAApyC,KAA8B/D,gBAAK,CAAC8B,QAAN,CAAe,EAAf,CAA9B;IAAA,MAACs0C,UAAU,QAAX;IAAA,MAAaC,aAAa,QAA1B;;IAEN,MAAMl3C,SAAS,GAAGF,gBAAgB,CAACC,KAAD,CAAlC;IAEAc,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI5J,KAAK,KAAKkP,SAAd,EAAyB;IACvBwpC,MAAAA,QAAQ,CAAC14C,KAAD,CAAR;IACA44C,MAAAA,aAAa,CAAC,EAAD,CAAb;IACD;IACF,GALD,EAKG,CAAC54C,KAAD,CALH;IAOA,MAAM64C,oBAAoB,GAAGj0C,8BAAU,WACrC3H,GAAC,mBAAD,GAAsB,MACtBA,GAAC,0BAAD,GAA6BqH,SAFQ,EAAvC;IAKA,MAAMw0C,cAAc,GAAGl0C,8BAAU;IAE7B0zC,IAAAA,SAAS,EAAE;SACXxzC,GAAC,sBAAD,GAAyBsI,UACzBtI,GAAC,uBAAD,GAA0B2zC,KAAK,IAAIA,KAAK,CAAC55C,MAAN,GAAe,GAClDiG,GAAC,mBAAD,GAAsBR,SALO,GAO/BY,SAP+B,CAAjC;;IAUA,MAAM6zC,aAAa,GAAG,SAAhBA,aAAgB,CAACC,YAAD;IACpB,QAAIzsC,QAAJ,EAAcA,QAAQ,CAACysC,YAAD,CAAR;IACf,GAFD;;IAIA,MAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACnxC,KAAD;IAC1B,QAAMkxC,YAAY,kBAAOP,MAAzB;;IACAO,IAAAA,YAAY,CAACta,MAAb,CAAoB52B,KAApB,EAA2B,CAA3B;;IACA,QAAI,CAAC9H,KAAL,EAAY;IACV04C,MAAAA,QAAQ,CAACM,YAAD,CAAR;IACD;;IAEDD,IAAAA,aAAa,CAACC,YAAD,CAAb;IACD,GARD;;IAUA,MAAME,gBAAgB,GAAG,SAAnBA,gBAAmB;IACvB,QAAI,CAACP,UAAL,EAAiB;IAEjB,QAAMQ,IAAI,GAAGR,UAAU,CAACl0C,IAAX,EAAb;IACA,QAAMs5E,WAAW,GAAGtlC,KAAK,CAACr2C,MAAN,CAAa,UAACyF,IAAD;IAAU,aAAAA,IAAI,CAAC6D,KAAL,KAAeytC,IAAf;IAAmB,KAA1C,EAA4Ct6C,MAA5C,GAAqD,CAAzE;;IACA,QAAI,CAAC25C,eAAe,IAAI,CAACulC,WAArB,KAAqC5kC,IAAzC,EAA+C;IAC7C,UAAMH,YAAY,kBAAOP,QAAO;IAAE/sC,QAAAA,KAAK,EAAEytC,IAAT;IAAen5C,QAAAA,KAAK,EAAEm5C,IAAtB;IAA4BwkC,QAAAA,gBAAgB,EAAE;IAA9C,SAAhC;;IAEA,UAAI,CAAC39E,KAAL,EAAY;IACV04C,QAAAA,QAAQ,CAACM,YAAD,CAAR;IACD;;IAEDD,MAAAA,aAAa,CAACC,YAAD,CAAb;IACAJ,MAAAA,aAAa,CAAC,EAAD,CAAb;IACD;IACF,GAfD;;IAiBA,MAAMQ,kBAAkB,GAAG,SAArBA,kBAAqB,CAACj+B,CAAD;IACzBA,IAAAA,CAAC,CAAC8D,eAAF;IACA,QAAM+5B,YAAY,GAAiB,EAAnC;;IAEA,QAAI,CAACh5C,KAAL,EAAY;IACV04C,MAAAA,QAAQ,CAACM,YAAD,CAAR;IACD;;IAEDD,IAAAA,aAAa,CAACC,YAAD,CAAb;IACAJ,IAAAA,aAAa,CAAC,EAAD,CAAb;IACA2N,IAAAA,aAAa,IAAIA,aAAa,EAA9B;IACD,GAXD;;IAaA,MAAMrnC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvB,QAAMk6B,WAAW,GAAGZ,KAAK,CAAC55C,MAA1B;;IAEA,YAAQsgB,KAAK,CAAClX,GAAd;IACE,WAAKiwC,QAAQ,CAACE,MAAd;IACA,WAAKF,QAAQ,CAACC,SAAd;IACE,YAAIQ,UAAU,KAAK,EAAf,IAAqBU,WAAW,GAAG,CAAvC,EAA0C;IACxCJ,UAAAA,mBAAmB,CAACI,WAAW,GAAG,CAAf,CAAnB;IACD;;IACD;;IACF,WAAKnB,QAAQ,CAACG,KAAd;IACEl5B,QAAAA,KAAK,CAAC7T,cAAN;IACA4tC,QAAAA,gBAAgB;IAChB;IAVJ;;IAeAr9B,IAAAA,SAAS,IAAIA,SAAS,CAACsD,KAAD,CAAtB;IACD,GAnBD;;IAqBA,MAAMm6B,oBAAoB,GAAG,SAAvBA,oBAAuB,CAACn6B,KAAD;IAC3By5B,IAAAA,aAAa,CAACz5B,KAAK,CAAC6C,MAAN,CAAahiB,KAAd,CAAb;IACAumD,IAAAA,aAAa,IAAIA,aAAa,CAACpnC,KAAD,CAA9B;IACD,GAHD;;IAKA,MAAM/T,cAAc,GAAG,SAAjBA,cAAiB;;;IACrB,UAAA8pB,QAAQ,CAAC7T,OAAT,UAAA,iBAAA,SAAA,MAAkBoX,OAAlB;IACD,GAFD;;IAIA,MAAM8gB,cAAc,GAAGd,KAAK,CAAC7wC,GAAN,CAAU,UAACuxC,IAAD,EAAOrxC,KAAP;IACvB,QAAA7K,KAAqCs7C,WAAW,KAAhD;IAAA,QAAAtsC,IAAI,mBAAG,YAAP;IAAA,QAAgBd,QAAO,GAAcotC,WAAW,QAAhD;IAAA,QAA4BjrC,IAAI,UAAKirC,aAAvC,OAAA,WAAA,EAAE;;IAER,QAAMylC,SAAS,GAAG,OAAO7kC,IAAP,KAAgB,QAAhB,GAA2BA,IAA3B,GAAkCA,IAAI,SAAJ,IAAAA,IAAI,WAAJ,SAAA,GAAAA,IAAI,CAAEztC,KAA1D;IAEA,wBACEnJ,8BAAA,CAAC+c,IAAD;uBACY;IACV5T,MAAAA,KAAK,EAAEsyE;IACP74E,MAAAA,IAAI,EAAEg0C;IACNltC,MAAAA,IAAI,EAAEA;IACNmB,MAAAA,QAAQ,EAAEA;IACVnF,MAAAA,GAAG,EAAEH;IACL5C,MAAAA,SAAS,EAAC;IACViG,MAAAA,OAAO,EAAE;IAAM,eAAAA,QAAO,IAAIA,QAAO,CAACguC,IAAD,EAAOrxC,KAAP,CAAlB;IAA+B;IAC9C+W,MAAAA,OAAO,EAAE;IAAM,eAAAo6B,mBAAmB,CAACnxC,KAAD,CAAnB;IAA0B;WACrCwF,KAVN,CADF;IAcD,GAnBsB,CAAvB;IAqBA,sBAGE/K,8BAAA,MAAA;qBAAe;IAA0C2C,IAAAA,SAAS,EAAE2zC;OAApE,eACEt2C,8BAAA,MAAA;qBACY;SACNb;IACJwD,IAAAA,SAAS,EAAE4zC;IACX3tC,IAAAA,OAAO,EAAEC;IACT6B,IAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQH,QAAQ,IAAI;QALxC,eAOE1K,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGuzC,KAAK,IAAIA,KAAK,CAAC55C,MAAN,GAAe,CAAxB,IAA6B06C,cADhC,eAEEh3C,8BAAA,QAAA,eACM+K;qBACM;IACVP,IAAAA,GAAG,EAAEtL,KAAK,CAACmf,YAAN,IAAsBsU;IAC3BhwB,IAAAA,SAAS,EAAC;IACV20B,IAAAA,SAAS,EAAEA;IACXlW,IAAAA,WAAW,EAAE80B,KAAK,IAAIA,KAAK,CAAC55C,MAAN,GAAe,CAAxB,GAA4B,EAA5B,GAAiC8kB;IAC9CvW,IAAAA,QAAQ,EAAEA;IACVpN,IAAAA,KAAK,EAAE24C;IACP51B,IAAAA,MAAM,EAAEA;IACR+c,IAAAA,OAAO,EAAEA;IACTvzB,IAAAA,QAAQ,EAAE+sC;IACVz9B,IAAAA,SAAS,EAAEqD;IACXnZ,IAAAA,IAAI,EAAEA;QAbR,CAFF,CAPF,EA0BG,CAAC0yC,KAAK,CAAC55C,MAAN,GAAe,CAAf,IAAoB85C,UAAU,CAAC95C,MAAX,GAAoB,CAAzC,kBACC0D,8BAAA,CAACsB,IAAD;qBACY;IACVsB,IAAAA,IAAI,EAAC;IACLzC,IAAAA,UAAU,EAAE0K,QAAQ,GAAG,UAAH,GAAgB;IACpClI,IAAAA,SAAS,EAAC;IACViG,IAAAA,OAAO,EAAEiuC;IACTnsC,IAAAA,QAAQ,EAAEG,QAAQ,GAAG,CAAC,CAAJ,GAAQ;OAN5B,CA3BJ,CADF,CAHF;IA2CD,CA3LM;IA6LP0wE,kBAAkB,CAACh3E,WAAnB,GAAiC,oBAAjC;IACAg3E,kBAAkB,CAAC92E,YAAnB,GAAkC;IAChCuxC,EAAAA,WAAW,EAAE,EADmB;IAEhC3Y,EAAAA,YAAY,EAAE,EAFkB;IAGhC4Y,EAAAA,eAAe,EAAE,KAHe;IAIhC3e,EAAAA,SAAS,EAAE;IAJqB,CAAlC;;IC5RO,IAAMokD,YAAY,GAAG,SAAfA,YAAe,CAACx8E,KAAD;IAC1B,MAAMgC,WAAW,GAAGlB,yBAAK,CAACmB,UAAN,CAAiB25E,eAAjB,CAApB;IAGE,MAAAa,cAAc,GAUZz6E,WAAW,eAVb;IAAA,MACA06E,iBAAiB,GASf16E,WAAW,kBAVb;IAAA,MAEAmsB,cAAc,GAQZnsB,WAAW,eAVb;IAAA,MAGAo3E,gBAAgB,GAOdp3E,WAAW,iBAVb;IAAA,MAIA26E,gBAAgB,GAMd36E,WAAW,iBAVb;IAAA,MAKAi3E,qBAAqB,GAKnBj3E,WAAW,sBAVb;IAAA,MAMAk3E,oBAAoB,GAIlBl3E,WAAW,qBAVb;IAAA,MAOA65E,eAAe,GAGb75E,WAAW,gBAVb;IAAA,MAQAksB,WAAW,GAETlsB,WAAW,YAVb;IAAA,MASAw3E,SAAS,GACPx3E,WAAW,UAVb;;IAYF,MAAMse,eAAe,GAAG,SAAlBA,eAAkB,CAAC02B,KAAD;IACtBoiC,IAAAA,gBAAgB,IAAIA,gBAAgB,CAAC3rE,SAAD,CAApC;IACAivE,IAAAA,iBAAiB,IAAIA,iBAAiB,CAAC1lC,KAAD,CAAtC;;IAEA,QAAIA,KAAK,CAAC55C,MAAN,KAAiB,CAArB,EAAwB;IACtB+wB,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACD;IACF,GAPD;;IASA,MAAMyuD,eAAe,GAAG,SAAlBA,eAAkB,CAACl/D,KAAD;;;IACtB,QAAMnf,KAAK,SAAGmf,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAE6C,gDAAQhiB,KAA7B;;IAEA,QAAI,CAACA,KAAL,EAAY;IACVo+E,MAAAA,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,CAAG,EAAH,CAAhB;IACAxuD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA0tD,MAAAA,eAAe,SAAf,IAAAA,eAAe,WAAf,SAAA,GAAAA,eAAe,CAAEj8D,OAAjB,CAAyBoX,KAAzB,EAAA;IACA;IACD;;IAED2lD,IAAAA,gBAAgB,IAAIA,gBAAgB,CAACp+E,KAAD,CAApC;;IAEA,QAAIA,KAAK,KAAK,EAAd,EAAkB;IAChB4vB,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACD;IACF,GAfD;;IAiBA,MAAM1Q,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvByiB,IAAAA,eAAa,CAACziB,KAAD,EAAQyQ,cAAR,EAAwB8qD,qBAAxB,EAA+CC,oBAA/C,CAAb;IACAl5E,IAAAA,KAAK,CAACoa,SAAN,IAAmBpa,KAAK,CAACoa,SAAN,CAAgBsD,KAAhB,CAAnB;IACD,GAHD;;IAKA,sBACE5c,uCAAA,CAACu7E,kBAAD,eACMr8E;IACJzB,IAAAA,KAAK,EAAEk+E;IACP3xE,IAAAA,QAAQ,EAAEwV;IACVwkC,IAAAA,aAAa,EAAE83B;IACfxiE,IAAAA,SAAS,EAAEqD;IACXjS,IAAAA,QAAQ,EAAE,CAAC;IACX2T,IAAAA,YAAY,EAAE08D;IACdv3E,IAAAA,IAAI,EAAC;yBACS;yBACCk1E;sBACHx5E,KAAK,CAACkiB,WAAN,IAAqB;yBAClBgM;qBACL;QAbZ,CADF;IAiBD,CAhEM;;ICkBA,IAAM2uD,eAAe,GAAG,SAAlBA,eAAkB,CAAC78E,KAAD;IACrB,MAAA87E,WAAW,GAAgC97E,KAAK,YAAhD;IAAA,MAAa88E,SAAS,GAAqB98E,KAAK,UAAhD;IAAA,MAAwBzB,KAAK,GAAcyB,KAAK,MAAhD;IAAA,MAAkC6L,IAAI,UAAK7L,OAA7C,cAAA,aAAA,SAAA,EAAE;;IACR,MAAI87E,WAAJ,EAAiB;IACP,QAAAx1E,IAAI,GAA4BtG,KAAK,KAArC;IAAA,QAAMmd,WAAW,GAAend,KAAK,YAArC;IAAA,QAAmB4L,QAAQ,GAAK5L,KAAK,SAArC;IAER,QAAMwlD,gBAAgB,GAAG;IACvBl/C,MAAAA,IAAI,MADmB;IAEvB6W,MAAAA,WAAW,aAFY;IAGvBvR,MAAAA,QAAQ;IAHe,KAAzB;IAMA,wBAAO9K,8BAAA,CAAC07E,YAAD;IAAcr+C,MAAAA,YAAY,EAAE;IAAI2Y,MAAAA,WAAW,eAAO0O;WAAwB35C;IAAMtN,MAAAA,KAAK,EAAEu+E;UAAvF,CAAP;IACD;;IAED,sBAAOh8E,8BAAA,CAACs7E,QAAD,eAAcp8E;IAAOzB,IAAAA,KAAK,EAAEA,KAAK,SAAL,IAAAA,KAAK,WAAL,SAAA,GAAAA,KAAK,CAAE0L;QAAnC,CAAP;IACD,CAfM;;QCoGM8yE,QAAQ,GAAG,SAAXA,QAAW,CAAC/8E,KAAD;IAEpB,MAAAyC,QAAQ,GAqBNzC,KAAK,SArBP;IAAA,MACA8K,QAAQ,GAoBN9K,KAAK,SArBP;IAAA,MAEA87E,WAAW,GAmBT97E,KAAK,YArBP;IAAA,MAGAyD,SAAS,GAkBPzD,KAAK,UArBP;IAAA,MAIA4G,SAAS,GAiBP5G,KAAK,UArBP;IAAA,MAKA6D,KAAK,GAgBH7D,KAAK,MArBP;IAAA,MAMAzB,KAAK,GAeHyB,KAAK,MArBP;IAAA,MAOAkiB,WAAW,GAcTliB,KAAK,YArBP;IAAA,MAQA2L,QAAQ,GAaN3L,KAAK,SArBP;IAAA,MASA6C,KAAK,GAYH7C,KAAK,MArBP;IAAA,MAUAshB,MAAM,GAWJthB,KAAK,OArBP;IAAA,MAWAq+B,OAAO,GAULr+B,KAAK,QArBP;IAAA,MAYAyhB,OAAO,GASLzhB,KAAK,QArBP;IAAA,MAaAsG,IAAI,GAQFtG,KAAK,KArBP;IAAA,MAcA4L,QAAQ,GAON5L,KAAK,SArBP;IAAA,MAeAgB,IAAI,GAMFhB,KAAK,KArBP;IAAA,MAgBA88E,SAAS,GAKP98E,KAAK,UArBP;IAAA,MAiBAmd,WAAW,GAITnd,KAAK,YArBP;IAAA,MAkBA4mE,QAAQ,GAGN5mE,KAAK,SArBP;IAAA,MAmBAoa,SAAS,GAEPpa,KAAK,UArBP;IAAA,MAoBA+qC,OAAO,GACL/qC,KAAK,QArBP;;IAuBI,MAAAxE,KAAkCsF,gBAAK,CAAC8B,QAAN,EAAlC;IAAA,MAACiyB,YAAY,QAAb;IAAA,MAAeC,eAAe,QAA9B;;IACA,MAAAzxB,KAAkCvC,gBAAK,CAAC8B,QAAN,CAAe,EAAf,CAAlC;IAAA,MAACo6E,YAAY,QAAb;IAAA,MAAeC,eAAe,QAA9B;;IACN,MAAMxoD,UAAU,gBAAG3zB,gBAAK,CAAC0zB,SAAN,EAAnB;IACA,MAAMm8C,OAAO,gBAAG7vE,gBAAK,CAAC0zB,SAAN,EAAhB;;IACM,MAAA7xB,KAAgC7B,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAhC;IAAA,MAACsrB,WAAW,QAAZ;IAAA,MAAcC,cAAc,QAA5B;;IAEA,MAAAtpB,KAA0C/D,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAA1C;IAAA,MAACs6E,gBAAgB,QAAjB;IAAA,MAAmBC,mBAAmB,QAAtC;;IACA,MAAA94E,KAAoCvD,gBAAK,CAAC8B,QAAN,EAApC;IAAA,MAACk3E,aAAa,QAAd;IAAA,MAAgBV,gBAAgB,QAAhC;;IAEA,MAAA/xE,KAA8BvG,gBAAK,CAAC8B,QAAN,CAAuCrE,KAAK,IAAI;IAAE0L,IAAAA,KAAK,EAAE,EAAT;IAAa1L,IAAAA,KAAK,EAAE;IAApB,GAAhD,CAA9B;IAAA,MAAC24C,UAAU,QAAX;IAAA,MAAaC,aAAa,QAA1B;;IACA,MAAA7vC,KAAsCxG,gBAAK,CAAC8B,QAAN,CAAyCk6E,SAAzC,CAAtC;IAAA,MAACL,cAAc,QAAf;IAAA,MAAiBC,iBAAiB,QAAlC;;IACA,MAAAl1E,KAAoC1G,gBAAK,CAAC8B,QAAN,CAAmC,EAAnC,CAApC;IAAA,MAACw6E,aAAa,QAAd;IAAA,MAAgBT,gBAAgB,QAAhC;;IACA,MAAAnkE,KAA8C1X,gBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAA9C;IAAA,MAACw4E,kBAAkB,QAAnB;IAAA,MAAqBnC,qBAAqB,QAA1C;;IACA,MAAAvgE,KAA4C5X,gBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAA5C;IAAA,MAACy4E,iBAAiB,QAAlB;IAAA,MAAoBnC,oBAAoB,QAAxC;;IAEN,MAAM2C,eAAe,GAAG/6E,gBAAK,CAAC4e,MAAN,EAAxB;IACA,MAAM85D,SAAS,GAAG,oCAAkCr7D,YAAY,EAAhE;IAEArd,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;;;IACd,QAAMwtB,WAAW,SAAGlB,UAAU,CAAC7U,iDAASgW,WAAxC;IAEA,QAAME,kBAAkB,GAAG;IACzBjyB,MAAAA,KAAK,EAAEA,KAAK,IAAI8xB;IADS,KAA3B;IAIA,QAAMqnD,YAAY,GAAG;IACnBp2E,MAAAA,SAAS,EAAEA,SAAS,IAAI,kBADL;IAEnB0vB,MAAAA,SAAS,EAAE,MAFQ;IAGnBm+C,MAAAA,SAAS,EAAE;IAHQ,KAArB;IAMAwI,IAAAA,eAAe,CAACD,YAAD,CAAf;IACAloD,IAAAA,eAAe,CAACgB,kBAAD,CAAf;IACD,GAfD,EAeG,EAfH;IAiBAh1B,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI+0E,gBAAJ,EAAsB;IACpBpB,MAAAA,WAAW,GAAG3tD,cAAc,CAAC,IAAD,CAAjB,GAA0BA,cAAc,CAAC,KAAD,CAAnD;IACAgvD,MAAAA,mBAAmB,CAAC,KAAD,CAAnB;IACD;;IACD,QAAM5+E,KAAK,GAAGu9E,WAAW,GAAGW,cAAH,GAAoBvlC,UAA7C;IACApsC,IAAAA,QAAQ,IAAI,CAACoyE,gBAAb,IAAiCpyE,QAAQ,CAACvM,KAAD,CAAzC;IACD,GAPD,EAOG,CAAC24C,UAAD,EAAaulC,cAAb,CAPH;IASA37E,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIizE,kBAAkB,IAAIltD,WAA1B,EAAuC;IACrC6H,MAAAA,qBAAqB,CAAC;IAAM,eAAAojD,eAAa,CAAC,MAAD,EAASC,gBAAT,EAA2BzI,OAA3B,CAAb;IAAgD,OAAvD,CAArB;IACD;IACF,GAJD,EAIG,CAACyK,kBAAD,CAJH;IAMAt6E,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIkzE,iBAAiB,IAAIntD,WAAzB,EAAsC;IACpC6H,MAAAA,qBAAqB,CAAC;IAAM,eAAAojD,eAAa,CAAC,IAAD,EAAOC,gBAAP,EAAyBzI,OAAzB,CAAb;IAA8C,OAArD,CAArB;IACD;IACF,GAJD,EAIG,CAAC0K,iBAAD,CAJH;IAMAv6E,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI,CAAC+lB,WAAL,EAAkB;IAChB+qD,MAAAA,qBAAqB,CAAC,KAAD,CAArB;IACAC,MAAAA,oBAAoB,CAAC,KAAD,CAApB;IACD;IACF,GALD,EAKG,CAAChrD,WAAD,CALH;IAOAptB,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACdy+D,IAAAA,QAAQ,IAAIA,QAAQ,CAACwW,aAAD,CAApB;IACD,GAFD,EAEG,CAACA,aAAD,CAFH;;IAIA,MAAMnB,aAAa,GAAG,SAAhBA,aAAgB,CAACxxD,MAAD;IACpB0yD,IAAAA,mBAAmB,CAAC,IAAD,CAAnB;;IACA,QAAI,CAACrB,WAAL,EAAkB;IAChB3kC,MAAAA,aAAa,CAAC1sB,MAAD,CAAb;IACA3f,MAAAA,QAAQ,IAAIA,QAAQ,CAAC2f,MAAD,CAApB;IACD,KAHD,MAGO;IACL,UAAM4yD,QAAQ,GAAGZ,cAAc,kBAAOA,iBAAgBhyD,QAAvB,GAAiC,CAACA,MAAD,CAAhE;IACAiyD,MAAAA,iBAAiB,CAACW,QAAD,CAAjB;IACAvyE,MAAAA,QAAQ,IAAIA,QAAQ,CAACuyE,QAAD,CAApB;IACD;IACF,GAVD;;IAYA,MAAMC,mBAAmB,GAAG,SAAtBA,mBAAsB;IAC1B,KAACxB,WAAD,IAAgB3tD,cAAc,CAAC,KAAD,CAA9B;IACD,GAFD;;IAIA,MAAMvK,eAAe,GAAG,SAAlBA,eAAkB,CAACrb,IAAD;IACtBA,IAAAA,IAAI,GAAG4lB,cAAc,CAAC,IAAD,CAAjB,GAA0BA,cAAc,CAAC,KAAD,CAA5C;IACD,GAFD;;IAIA,MAAMutD,YAAY,GAAG;IACnBn9E,IAAAA,KAAK,OADc;IAEnB2jB,IAAAA,WAAW,aAFQ;IAGnBvW,IAAAA,QAAQ,UAHW;IAInB9I,IAAAA,KAAK,OAJc;IAKnBye,IAAAA,MAAM,QALa;IAMnB+c,IAAAA,OAAO,SANY;IAOnB5c,IAAAA,OAAO,SAPY;IAQnBnb,IAAAA,IAAI,MARe;IASnBsF,IAAAA,QAAQ,UATW;IAUnB5K,IAAAA,IAAI,MAVe;IAWnB86E,IAAAA,WAAW,aAXQ;IAYnBgB,IAAAA,SAAS,WAZU;IAanB3/D,IAAAA,WAAW,aAbQ;IAcnB/C,IAAAA,SAAS,WAdU;IAenB2wB,IAAAA,OAAO;IAfY,GAArB;IAkBA,MAAM/oC,WAAW,GAAG;IAClBk1C,IAAAA,UAAU,YADQ;IAElBC,IAAAA,aAAa,eAFK;IAGlB8kC,IAAAA,aAAa,eAHK;IAIlB/tD,IAAAA,WAAW,aAJO;IAKlBC,IAAAA,cAAc,gBALI;IAMlB+uD,IAAAA,gBAAgB,kBANE;IAOlBC,IAAAA,mBAAmB,qBAPD;IAQlBV,IAAAA,cAAc,gBARI;IASlBC,IAAAA,iBAAiB,mBATC;IAUlB5C,IAAAA,aAAa,eAVK;IAWlBV,IAAAA,gBAAgB,kBAXE;IAYlBgE,IAAAA,aAAa,eAZK;IAalBT,IAAAA,gBAAgB,kBAbE;IAclBd,IAAAA,eAAe,iBAdG;IAelB5C,IAAAA,qBAAqB,uBAfH;IAgBlBC,IAAAA,oBAAoB,sBAhBF;IAiBlB4C,IAAAA,WAAW,aAjBO;IAkBlBnL,IAAAA,OAAO,SAlBW;IAmBlB/J,IAAAA,QAAQ,UAnBU;IAoBlB4S,IAAAA,SAAS;IApBS,GAApB;IAuBA,sBACE14E,8BAAA,CAAC86E,eAAe,CAACx6E,QAAjB;IAA0B7C,IAAAA,KAAK,EAAEyD;OAAjC,eACElB,8BAAA,MAAA;IAAKwK,IAAAA,GAAG,EAAEmpB;IAAYhxB,IAAAA,SAAS,EAAEA;OAAjC,eACE3C,8BAAA,CAACouC,YAAD;IAAcC,IAAAA,cAAc,EAAEmuC;OAA9B,eACEx8E,8BAAA,CAACkH,OAAD;IACEO,IAAAA,IAAI,EAAE2lB,WAAW,IAAI,CAACviB;IACtBvG,IAAAA,YAAY,EAAC;IACbo1B,IAAAA,WAAW,EAAE3F;IACblR,IAAAA,QAAQ,EAAEC;IACV3b,IAAAA,OAAO,eAAEnH,8BAAA,CAAC+7E,eAAD,eAAqBnB,aAArB;OALX,eAOE56E,8BAAA,MAAA;IAAKgF,IAAAA,KAAK,EAAEk3E;IAAc1xE,IAAAA,GAAG,EAAEqlE;IAASnxD,IAAAA,EAAE,EAAEg6D;OAA5C,EACG/2E,QAAQ,IAAI,OAAOA,QAAP,KAAoB,UAAhC,GAA6CA,QAAQ,CAACT,WAAD,CAArD,GAAqES,QADxE,CAPF,CADF,CADF,CADF,CADF;IAmBD;IAEDs6E,QAAQ,CAACpU,IAAT,GAAgBgT,YAAhB;IACAoB,QAAQ,CAACxrD,MAAT,GAAkByqD,cAAlB;;IClRO,IAAMuB,aAAa,gBAAGz8E,gBAAK,CAACC,aAAN,CAAkC,EAAlC,CAAtB;;ICEA,IAAMy8E,UAAU,GAAG,SAAbA,UAAa,CAACx9E,KAAD;IACxB,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiBs7E,aAAjB,CAApB;IACQ,MAAAnuD,UAAU,GAAwCptB,WAAW,WAA7D;IAAA,MAAYmzB,SAAS,GAA6BnzB,WAAW,UAA7D;IAAA,MAAuB4E,SAAS,GAAkB5E,WAAW,UAA7D;IAAA,MAAkC85E,WAAW,GAAK95E,WAAW,YAA7D;;IACA,MAAAS,QAAQ,GAAczC,KAAK,SAA3B;IAAA,MAAa6L,IAAI,UAAK7L,OAAxB,WAAA,EAAE;;IACR,MAAMu7E,iBAAiB,GAAG,EAA1B;IAEA,MAAMyB,YAAY,GAAwB;IACxCp2E,IAAAA,SAAS,EAAEwoB,UAAU,GAAGxoB,SAAU,GAAG20E,iBAAhB,GAAoC30E,SADjB;IAExC0vB,IAAAA,SAAS,EAAE,MAF6B;IAGxCnB,IAAAA,SAAS,EAAEA;IAH6B,GAA1C;IAMA,sBACEr0B,8BAAA,CAACu0E,OAAD;sBAAoB;gCAA0CyG;IAAar4E,IAAAA,SAAS,EAAC;SAAWoI,KAAhG,eACE/K,8BAAA,MAAA;IAAKgF,IAAAA,KAAK,EAAEk3E;OAAZ,EAA2Bv6E,QAA3B,CADF,CADF;IAKD,CAjBM;IAmBP+6E,UAAU,CAACj4E,YAAX,GAA0B;IACxBiF,EAAAA,IAAI,EAAE,QADkB;IAExB4sE,EAAAA,WAAW,EAAE,KAFW;IAGxBp2E,EAAAA,IAAI,EAAE,YAHkB;IAIxBs2E,EAAAA,OAAO,EAAE;IAJe,CAA1B;;IC3CO,IAAMmG,eAAe,GAAG,SAAlBA,eAAkB,CAAC3B,WAAD,EAAuB4B,aAAvB;IAC7B,MAAI5B,WAAJ,EAAiB;IACf,WAAO4B,aAAa,IAAI,CAACj/E,KAAK,CAACC,OAAN,CAAcg/E,aAAd,CAAlB,GAAiD,CAACA,aAAD,CAAjD,GAAmEA,aAAa,IAAI,EAA3F;IACD,GAFD,MAEO;IACL,WAAOA,aAAa,IAAI;IAAEzzE,MAAAA,KAAK,EAAE,EAAT;IAAa1L,MAAAA,KAAK,EAAE;IAApB,KAAxB;IACD;IACF,CANM;IAQA,IAAMo/E,YAAY,GAAG,SAAfA,YAAe,CAACC,YAAD,EAA2BC,QAA3B;IAC1B,MAAI,CAACp/E,KAAK,CAACC,OAAN,CAAcm/E,QAAd,CAAL,EAA8B;IAC5B,WAAOD,YAAY,CAACr/E,KAAb,MAAuBs/E,QAAQ,SAAR,IAAAA,QAAQ,WAAR,SAAA,GAAAA,QAAQ,CAAEt/E,KAAjC,IAAyC,CAAzC,GAA6C,CAAC,CAArD;IACD;;IACD,SAAOs/E,QAAQ,CAAClvD,SAAT,CAAmB,UAACvoB,IAAD;IAAU,WAAAA,IAAI,CAAC7H,KAAL,KAAeq/E,YAAY,CAACr/E,KAA5B;IAAiC,GAA9D,CAAP;IACD,CALM;IAOA,IAAMu/E,iBAAiB,GAAG,SAApBA,iBAAoB,CAACF,YAAD,EAA2BG,QAA3B;IAC/B,MAAMC,OAAO,kBAAOD,SAApB;;IACA,MAAME,aAAa,GAAGN,YAAY,CAACC,YAAD,EAAeI,OAAf,CAAlC;;IACA,MAAIC,aAAa,KAAK,CAAC,CAAvB,EAA0B;IACxBD,IAAAA,OAAO,CAAC/gD,MAAR,CAAeghD,aAAf,EAA8B,CAA9B;IACD,GAFD,MAEO;IACLD,IAAAA,OAAO,CAAC14D,IAAR,CAAas4D,YAAb;IACD;;IACD,SAAOI,OAAP;IACD,CATM;IAWA,IAAME,YAAY,GAAG,SAAfA,YAAe,CAC1BpC,WAD0B,EAE1BqC,WAF0B,EAG1B/4C,QAH0B;IAK1B,MAAI,CAAC02C,WAAL,EAAkB;IAChB,WAAO,CAAAqC,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAEl0E,KAAb,CAAmBjH,IAAnB,EAAA,KAA6B,EAApC;IACD;;IACD,MAAMiH,KAAK,GAAGm7B,QAAQ,SAAR,IAAAA,QAAQ,WAAR,SAAA,GAAAA,QAAQ,CAAG+4C,WAAW,CAAC/gF,MAAf,CAAtB;;IAEA,MAAI6M,KAAJ,EAAW;IACT,WAAOA,KAAP;IACD;;IAED,MAAIk0E,WAAW,CAAC/gF,MAAZ,IAAsB,CAA1B,EAA6B;IAC3B,WAAO+gF,WAAW,CAACh4E,GAAZ,CAAgB,UAACi4E,IAAD;IAAe,aAAA,KAAGA,IAAI,CAACn0E,KAAR;IAAe,KAA9C,EAAgDqyB,IAAhD,CAAqD,IAArD,CAAP;IACD,GAFD,MAEO;IACL,WAAU6hD,WAAW,CAAC/gF,MAAZ,cAAV;IACD;IACF,CAnBM;IAqBA,IAAMihF,oBAAoB,GAAG,SAAvBA,oBAAuB,CAClC3gE,KADkC,EAElCyQ,cAFkC,EAGlC8qD,qBAHkC,EAIlCC,oBAJkC;IAMlC,UAAQx7D,KAAK,CAAClX,GAAd;IACE,SAAK,OAAL;IACEkX,MAAAA,KAAK,CAAC7T,cAAN;IACAskB,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA8qD,MAAAA,qBAAqB,SAArB,IAAAA,qBAAqB,WAArB,SAAA,GAAAA,qBAAqB,CAAG,IAAH,CAArB;IACA;;IACF,SAAK,WAAL;IACE9qD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA8qD,MAAAA,qBAAqB,SAArB,IAAAA,qBAAqB,WAArB,SAAA,GAAAA,qBAAqB,CAAG,IAAH,CAArB;IACA;;IACF,SAAK,SAAL;IACE9qD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA+qD,MAAAA,oBAAoB,SAApB,IAAAA,oBAAoB,WAApB,SAAA,GAAAA,oBAAoB,CAAG,IAAH,CAApB;IACA;IAbJ;IAiBD,CAvBM;IAyBA,IAAMC,eAAa,GAAG,SAAhBA,aAAgB,CAC3Bh0E,QAD2B,EAE3Bi0E,gBAF2B,EAG3BzI,OAH2B;;;IAK3B,MAAM0I,WAAW,SAAG1I,OAAO,CAAC/wD,iDAAS+Z,iBAAiB,2CAAtD;IACA,MAAM2/C,SAAS,SAAG3I,OAAO,CAAC/wD,iDAAS+Z,iBAAiB,iDAApD;IACA,MAAItM,YAAJ;;IAEA,MAAIloB,QAAQ,KAAK,MAAjB,EAAyB;IACvBkoB,IAAAA,YAAY,GAAG,CAAAgsD,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAG,CAAH,CAAX,MAAoBC,SAAS,SAAT,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAG,CAAH,CAA7B,CAAf;IACD,GAFD,MAEO;IACLjsD,IAAAA,YAAY,GAAGisD,SAAS,SAAT,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAGA,SAAS,CAACl8E,MAAV,GAAmB,CAAtB,CAAxB;IACD;;IAED,QAACiwB,YAAD,UAAA,iBAAA,SAAA,MAA+B2J,OAA/B;IACA3J,EAAAA,YAAY,SAAZ,IAAAA,YAAY,WAAZ,SAAA,GAAAA,YAAY,CAAEhB,cAAd,CAA6B;IAAEkB,IAAAA,KAAK,EAAE;IAAT,GAA7B,CAAA;IACA6rD,EAAAA,gBAAgB,IAAIA,gBAAgB,CAAC/rD,YAAD,CAApC;IACD,CAlBM;IAoBA,IAAM8S,eAAa,GAAG,SAAhBA,aAAgB,CAC3BziB,KAD2B,EAE3Bo8D,aAF2B,EAG3BV,gBAH2B,EAI3BH,qBAJ2B,EAK3BC,oBAL2B,EAM3BvI,OAN2B,EAO3BvhD,UAP2B,EAQ3BjB,cAR2B,EAS3BsG,UAT2B;IAW3B,UAAQ/W,KAAK,CAAClX,GAAd;IACE,SAAK,SAAL;IACEkX,MAAAA,KAAK,CAAC7T,cAAN;IACAkwE,MAAAA,iBAAe,CAAC,IAAD,EAAOD,aAAP,EAAsBV,gBAAtB,EAAwCzI,OAAxC,EAAiDvhD,UAAjD,CAAf;IACA;;IACF,SAAK,WAAL;IACE1R,MAAAA,KAAK,CAAC7T,cAAN;IACAkwE,MAAAA,iBAAe,CAAC,MAAD,EAASD,aAAT,EAAwBV,gBAAxB,EAA0CzI,OAA1C,EAAmDvhD,UAAnD,CAAf;IACA;;IACF,SAAK,OAAL;IACE4qD,MAAAA,cAAc,CAACF,aAAD,CAAd;IACAZ,MAAAA,oBAAoB,SAApB,IAAAA,oBAAoB,WAApB,SAAA,GAAAA,oBAAoB,CAAG,KAAH,CAApB;IACAD,MAAAA,qBAAqB,SAArB,IAAAA,qBAAqB,WAArB,SAAA,GAAAA,qBAAqB,CAAG,KAAH,CAArB;IACA;;IACF,SAAK,KAAL;IACEC,MAAAA,oBAAoB,SAApB,IAAAA,oBAAoB,WAApB,SAAA,GAAAA,oBAAoB,CAAG,KAAH,CAApB;IACAD,MAAAA,qBAAqB,SAArB,IAAAA,qBAAqB,WAArB,SAAA,GAAAA,qBAAqB,CAAG,KAAH,CAArB;IACA;;IACF,SAAK,QAAL;IACE9qD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;IACAsG,MAAAA,UAAU,CAAC7U,OAAX,CAAmBoX,KAAnB;IACAoiD,MAAAA,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,CAAG3rE,SAAH,CAAhB;IACA;IAtBJ;IA0BD,CArCM;IAuCA,IAAMusE,cAAc,GAAG,SAAjBA,cAAiB,CAACF,aAAD;;;IAC5B,QAACA,aAAD,UAAA,iBAAA,SAAA,MAAgC1/C,OAAhC;IACD,CAFM;IAIA,IAAM2/C,iBAAe,GAAG,SAAlBA,eAAkB,CAC7BtgD,SAD6B,EAE7BqgD,aAF6B,EAG7BV,gBAH6B,EAI7BzI,OAJ6B,EAK7BvhD,UAL6B;IAO7B,MAAMkqD,SAAS,GAAG3I,OAAO,CAAC/wD,OAAR,CAAgB+Z,gBAAhB,CAAiC,gDAAjC,CAAlB;IACA,MAAItzB,KAAK,GAAG5H,KAAK,CAACiU,IAAN,CAAW4mE,SAAX,EAAsB3qD,SAAtB,CAAgC,UAACvoB,IAAD;IAC1C,WAAOA,IAAI,IAAI0zE,aAAf;IACD,GAFW,CAAZ;;IAIA,MAAIzzE,KAAK,KAAK,CAAC,CAAf,EAAkB;IAChBA,IAAAA,KAAK,GAAGozB,SAAS,KAAK,IAAd,GAAqB6/C,SAAS,CAACl8E,MAAV,GAAmB,CAAxC,GAA4C,CAApD;IACD,GAFD,MAEO,IACJgyB,UAAU,IAAI/oB,KAAK,KAAK,CAAxB,IAA6BozB,SAAS,KAAK,IAA5C,IACCrK,UAAU,IAAI/oB,KAAK,KAAKizE,SAAS,CAACl8E,MAAV,GAAmB,CAA3C,IAAgDq8B,SAAS,KAAK,MAF1D,EAGL;IACA,QAAM4/C,WAAW,GAAG1I,OAAO,CAAC/wD,OAAR,CAAgB2V,aAAhB,CAA8B,0CAA9B,CAApB;IACA8jD,IAAAA,WAAW,CAACriD,KAAZ;IACAoiD,IAAAA,gBAAgB,IAAIA,gBAAgB,CAACC,WAAD,CAApC;IACD,GAPM,MAOA;IACLhzE,IAAAA,KAAK,GAAGozB,SAAS,KAAK,IAAd,GAAqB,CAACpzB,KAAK,GAAG,CAAR,GAAYizE,SAAS,CAACl8E,MAAvB,IAAiCk8E,SAAS,CAACl8E,MAAhE,GAAyE,CAACiJ,KAAK,GAAG,CAAT,IAAcizE,SAAS,CAACl8E,MAAzG;IAEA,QAAMiwB,YAAY,GAAGisD,SAAS,CAACjzE,KAAD,CAA9B;IAECgnB,IAAAA,YAA4B,CAAC2J,KAA7B;IACDoiD,IAAAA,gBAAgB,IAAIA,gBAAgB,CAAC/rD,YAAD,CAApC;IACAA,IAAAA,YAAY,CAAChB,cAAb,CAA4B;IAAEkB,MAAAA,KAAK,EAAE;IAAT,KAA5B;IACD;IACF,CA9BM;IAgCA,IAAM0sD,kBAAkB,GAAG,SAArBA,kBAAqB,CAChCv8D,KADgC,EAEhCizD,OAFgC,EAGhCyI,gBAHgC,EAIhCjrD,cAJgC,EAKhCsG,UALgC;;;IAOhC,MAAM6kD,SAAS,SAAG3I,OAAO,CAAC/wD,iDAAS+Z,iBAAiB,iDAApD;IACA,MAAItM,YAAJ;;IAEA,UAAQ3P,KAAK,CAAClX,GAAd;IACE,SAAK,SAAL;IACEkX,MAAAA,KAAK,CAAC7T,cAAN;IACAwjB,MAAAA,YAAY,GAAGisD,SAAS,CAACA,SAAS,CAACl8E,MAAV,GAAmB,CAApB,CAAxB;IACA;;IACF,SAAK,WAAL;IACEsgB,MAAAA,KAAK,CAAC7T,cAAN;IACAwjB,MAAAA,YAAY,GAAGisD,SAAS,CAAC,CAAD,CAAxB;IACA;;IACF,SAAK,QAAL;IACEnrD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;IACAsG,MAAAA,UAAU,CAAC7U,OAAX,CAAmBoX,KAAnB;IACAoiD,MAAAA,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,CAAG3rE,SAAH,CAAhB;IACA;IAbJ;;IAkBA,QAAC4f,YAAD,UAAA,iBAAA,SAAA,MAA+B2J,OAA/B;IACA3J,EAAAA,YAAY,SAAZ,IAAAA,YAAY,WAAZ,SAAA,GAAAA,YAAY,CAAEhB,cAAd,CAA6B;IAAEkB,IAAAA,KAAK,EAAE;IAAT,GAA7B,CAAA;IACA6rD,EAAAA,gBAAgB,IAAIA,gBAAgB,CAAC/rD,YAAD,CAApC;IACD,CA/BM;;ICtIA,IAAMixD,YAAY,GAAG,SAAfA,YAAe,CAACt+E,KAAD;IAClB,MAAAyC,QAAQ,GAA4EzC,KAAK,SAAzF;IAAA,MAAUyqB,MAAM,GAAoEzqB,KAAK,OAAzF;IAAA,MAAkBu+E,YAAY,GAAsDv+E,KAAK,aAAzF;IAAA,MAAgC0J,OAAO,GAA6C1J,KAAK,QAAzF;IAAA,MAAyCxE,KAA2CwE,KAAK,aAAzF;IAAA,MAAyC8rB,YAAY,mBAAG,SAAxD;IAAA,MAA8DngB,QAAQ,GAAc3L,KAAK,SAAzF;IAAA,MAA2E6L,IAAI,UAAK7L,OAAtF,WAAA,UAAA,gBAAA,WAAA,gBAAA,YAAA,EAAE;;IACR,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiBs7E,aAAjB,CAApB;IAEE,MAAAtB,aAAa,GAaXj6E,WAAW,cAbb;IAAA,MACAm8E,WAAW,GAYTn8E,WAAW,YAbb;IAAA,MAEAw8E,cAAc,GAWZx8E,WAAW,eAbb;IAAA,MAGA85E,WAAW,GAUT95E,WAAW,YAbb;IAAA,MAIAm7E,mBAAmB,GASjBn7E,WAAW,oBAbb;IAAA,MAKA83E,aAAa,GAQX93E,WAAW,cAbb;IAAA,MAMAo3E,gBAAgB,GAOdp3E,WAAW,iBAbb;IAAA,MAOAi3E,qBAAqB,GAMnBj3E,WAAW,sBAbb;IAAA,MAQAk3E,oBAAoB,GAKlBl3E,WAAW,qBAbb;IAAA,MASA2uE,OAAO,GAIL3uE,WAAW,QAbb;IAAA,MAUAotB,UAAU,GAGRptB,WAAW,WAbb;IAAA,MAWAmsB,cAAc,GAEZnsB,WAAW,eAbb;IAAA,MAYAyyB,UAAU,GACRzyB,WAAW,WAbb;;IAeF,MAAM2H,cAAc,GAAG,SAAjBA,cAAiB;IACrB,QAAIgC,QAAJ,EAAc;;IAEd,QAAIjC,OAAJ,EAAa;IACXA,MAAAA,OAAO,CAAC+gB,MAAD,CAAP;IACA;IACD;;IAED,QAAMuzD,OAAO,GAAGlC,WAAW,IAAIr9E,KAAK,CAACC,OAAN,CAAcy/E,WAAd,CAAf,GAA4CL,iBAAiB,CAACrzD,MAAD,EAAS0zD,WAAT,CAA7D,GAAqF1zD,MAArG;IAEA0yD,IAAAA,mBAAmB,SAAnB,IAAAA,mBAAmB,WAAnB,SAAA,GAAAA,mBAAmB,CAAG1+E,KAAK,CAACC,OAAN,CAAcs/E,OAAd,IAAyBA,OAAO,CAAC5gF,MAAR,KAAmB,CAA5C,GAAgD,IAAnD,CAAnB;IACAohF,IAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAGR,OAAH,CAAd;IACA/B,IAAAA,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAG+B,OAAH,CAAb;IACD,GAbD;;IAeA,MAAMn+D,OAAO,GAAG0+D,YAAY,KAAK,SAAjB,IAA8BZ,YAAY,CAAClzD,MAAD,EAAS0zD,WAAT,CAAZ,KAAsC,CAAC,CAArF;IAEA,MAAM9+D,aAAa,GAAGk/D,YAAY,KAAK,eAAvC;;IAEA,MAAM9gE,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvByiB,IAAAA,eAAa,CACXziB,KADW,EAEXo8D,aAFW,EAGXV,gBAHW,EAIXH,qBAJW,EAKXC,oBALW,EAMXvI,OANW,EAOXvhD,UAPW,EAQXjB,cARW,EASXsG,UATW,CAAb;IAWD,GAZD;;IAcA,sBACE3zB,8BAAA,CAACu0E,OAAO,CAACkC,IAAT;IACEjzE,IAAAA,IAAI,EAAC;IACLoF,IAAAA,OAAO,EAAEC;yBACMkW;sBACJ;IACXzF,IAAAA,SAAS,EAAE,mBAACsD,KAAD;IAAW,aAAAD,gBAAgB,CAACC,KAAD,CAAhB;IAAuB;IAC7C3S,IAAAA,QAAQ,EAAE8U;IACVrU,IAAAA,QAAQ,EAAE,CAAC;IACXG,IAAAA,QAAQ,EAAEA;qBACA;SACNE,KAVN,eAYE/K,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGq4E,WAAW,IAAIhwD,YAAf,iBACChrB,8BAAA,CAACoe,QAAD;IACE1T,IAAAA,QAAQ,EAAE,CAAC;wBACG6T,aAAa,GAAG,OAAH,GAAaQ;IACxCA,IAAAA,OAAO,EAAEA;IACTR,IAAAA,aAAa,EAAEA;OAJjB,CAFJ,eASEve,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAEq4E,WAAW,GAAG,0BAAH,GAAgC;OAA3D,EAAmFr5E,QAAnF,CATF,CAZF,CADF;IA0BD,CA9EM;IAgFP67E,YAAY,CAAC/4E,YAAb,GAA4B;IAC1BumB,EAAAA,YAAY,EAAE;IADY,CAA5B;;IC7DA,IAAM2yD,aAAa,GAAG,SAAhBA,aAAgB,CAACz+E,KAAD;;;IAElB,MAAA2K,WAAW,GAUT3K,KAAK,YAVP;IAAA,MACAkiB,WAAW,GASTliB,KAAK,YAVP;IAAA,MAEA0+E,eAAe,GAQb1+E,KAAK,gBAVP;IAAA,MAGAsG,IAAI,GAOFtG,KAAK,KAVP;IAAA,MAIA2L,QAAQ,GAMN3L,KAAK,SAVP;IAAA,MAKAkwB,WAAW,GAKTlwB,KAAK,YAVP;IAAA,MAMA4L,QAAQ,GAIN5L,KAAK,SAVP;IAAA,MAOAyhB,OAAO,GAGLzhB,KAAK,QAVP;IAAA,MAQAolC,QAAQ,GAENplC,KAAK,SAVP;IAAA,MASG6L,IAAI,UACL7L,OAXE,cAAA,eAAA,mBAAA,QAAA,YAAA,eAAA,YAAA,WAAA,YAAA,EACJ;;IAYF,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiBs7E,aAAjB,CAApB;IACA,MAAM1hC,UAAU,GAAG/6C,gBAAK,CAAC4e,MAAN,CAAa,IAAb,CAAnB;IAGE,MAAAwO,WAAW,GAUTlsB,WAAW,YAVb;IAAA,MACAm8E,WAAW,GASTn8E,WAAW,YAVb;IAAA,MAEAw8E,cAAc,GAQZx8E,WAAW,eAVb;IAAA,MAGAk7E,gBAAgB,GAOdl7E,WAAW,iBAVb;IAAA,MAIAm7E,mBAAmB,GAMjBn7E,WAAW,oBAVb;IAAA,MAKA85E,WAAW,GAKT95E,WAAW,YAVb;IAAA,MAMAmsB,cAAc,GAIZnsB,WAAW,eAVb;IAAA,MAOAi3E,qBAAqB,GAGnBj3E,WAAW,sBAVb;IAAA,MAQAk3E,oBAAoB,GAElBl3E,WAAW,qBAVb;IAAA,MASAyyB,UAAU,GACRzyB,WAAW,WAVb;IAYF,MAAMmuB,cAAc,GAAGxkB,QAAQ,GAAG,UAAH,GAAgB,SAA/C;IACA,MAAMykB,kBAAkB,GAAGlO,WAAW,SAAX,IAAAA,WAAW,WAAX,SAAA,GAAAA,WAAW,CAAElf,IAAb,EAA3B;IACA,MAAM27E,YAAY,GAAGT,YAAY,CAACpC,WAAD,EAAcqC,WAAd,EAA2B/4C,QAA3B,CAAjC;IACA,MAAM7mC,KAAK,GAAG2+E,gBAAgB,IAAIyB,YAAY,CAACvhF,MAAb,GAAsB,CAA1C,GAA8CuhF,YAA9C,GAA6DvuD,kBAA3E;IACA,MAAMC,QAAQ,GAAGnC,WAAW,GAAG,mBAAH,GAAyB,qBAArD;;IAEA,MAAM1M,cAAc,GAAG,SAAjBA,cAAiB,CAAC9D,KAAD;IACrBA,IAAAA,KAAK,CAACF,eAAN;IACA,QAAMohE,UAAU,GAAG9C,WAAW,GAAG,EAAH,GAAQ;IAAE7xE,MAAAA,KAAK,EAAE,EAAT;IAAa1L,MAAAA,KAAK,EAAE;IAApB,KAAtC;IACAigF,IAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAGI,UAAH,CAAd;IACAzB,IAAAA,mBAAmB,SAAnB,IAAAA,mBAAmB,WAAnB,SAAA,GAAAA,mBAAmB,CAAG,KAAH,CAAnB;;IACA,QAAI17D,OAAJ,EAAa;IACXA,MAAAA,OAAO,CAAC/D,KAAD,CAAP;IACD;IACF,GARD;;IAUA,MAAM5R,WAAW,GAAG3I,8BAAU,WAC5B3H,GAAC,SAAD,GAAY,MACZA,GAAC,iBAAD,GAAoB,MACpBA,GAAC,qBAAmBmP,YAApB,GAAoCA,aACpCnP,GAAC,8BAAD,GAAiC,CAAC0hF,kBAClC1hF,GAAC,uBAAD,GAA0B8K,MAC1B9K,GAAC,uBAAD,GAA0B0yB,eANE,EAA9B;IASA,MAAMjb,SAAS,GAAG9P,8BAAU,WAC1BE,GAAC,sBAAD,GAAyB,QADC,EAA5B;IAIA,sBACEvC,8BAAA,CAACoE,OAAD;IACE02C,IAAAA,gBAAgB,EAAE;IAClBzxC,IAAAA,WAAW,EAAE,CAAC+jB;IACd1pB,IAAAA,OAAO,EAAEjG;IACTs9C,IAAAA,UAAU,EAAEA;IACZp4C,IAAAA,SAAS,EAAC;IACV2B,IAAAA,YAAY,EAAC;OANf,eAQEtE,8BAAA,SAAA;IACEwK,IAAAA,GAAG,EAAEmpB;IACLra,IAAAA,SAAS,EAAE,mBAACsD,KAAD;IAAW,aAAA2gE,oBAAoB,CAAC3gE,KAAD,EAAQyQ,cAAR,EAAwB8qD,qBAAxB,EAA+CC,oBAA/C,CAApB;IAAwF;IAC9G1uE,IAAAA,IAAI,EAAC;IACL/G,IAAAA,SAAS,EAAEqI;IACXH,IAAAA,QAAQ,EAAEA;IACVH,IAAAA,QAAQ,EAAE;yBACI;yBACC0iB;sBACJ;qBACD;SACNriB,KAXN,eAcI/K,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,EACGysB,WAAW,iBACVpvB,8BAAA,CAACyC,IAAD;IAAMtC,IAAAA,UAAU,EAAC;IAASwC,IAAAA,SAAS,EAAC;OAApC,EACG,KAAGysB,WAAW,CAACltB,IAAZ,GAAmB0Z,MAAnB,CAA0B,CAA1B,EAA6BC,WAA7B,EAAH,GAAgDuT,WAAW,CAACltB,IAAZ,GAAmBuB,KAAnB,CAAyB,CAAzB,CADnD,CAFJ,EAMG+B,IAAI,IAAI,CAAC4pB,WAAT,iBACCpvB,8BAAA,CAACsB,IAAD;IACEnB,IAAAA,UAAU,EAAEkvB;IACZ1sB,IAAAA,SAAS,EAAC;IACVC,IAAAA,IAAI,EAAE4C;IACNkE,IAAAA,IAAI,EAAEoB;OAJR,CAPJ,EAcGrN,KAAK,iBACJuC,8BAAA,CAACyC,IAAD;IAAM+H,IAAAA,GAAG,EAAEuwC;IAAYp4C,IAAAA,SAAS,EAAEwP;OAAlC,EACG1U,KADH,CAfJ,CAdJ,EAmCG2+E,gBAAgB,IAAIwB,eAApB,iBACC59E,8BAAA,CAACsB,IAAD;IACEnB,IAAAA,UAAU,EAAEkvB;IACZzmB,IAAAA,OAAO,EAAE8X;IACT/d,IAAAA,SAAS,EAAC;IACVzC,IAAAA,IAAI,EAAE;IACN0C,IAAAA,IAAI,EAAC;sBACM;IACX8G,IAAAA,IAAI,EAAEoB;qBACI;OARZ,CApCJ,eAgDE9K,8BAAA,CAACsB,IAAD;IAAMnB,IAAAA,UAAU,EAAEkvB;IAAgBzsB,IAAAA,IAAI,EAAE2sB;IAAU7lB,IAAAA,IAAI,EAAEoB;OAAxD,CAhDF,CARF,CADF;IA6DD,CAxHD;;IA0HA6yE,aAAa,CAACl5E,YAAd,GAA6B;IAC3BoF,EAAAA,WAAW,EAAE,SADc;IAE3BuX,EAAAA,WAAW,EAAE,QAFc;IAG3Bw8D,EAAAA,eAAe,EAAE;IAHU,CAA7B;;IChKO,IAAMG,WAAW,GAAG,SAAdA,WAAc,CAAC7+E,KAAD;IACzB,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiBs7E,aAAjB,CAApB;IACQ,MAAAuB,aAAa,GAAuE98E,WAAW,cAA/F;IAAA,MAAe4E,SAAS,GAA4D5E,WAAW,UAA/F;IAAA,MAA0B2uE,OAAO,GAAmD3uE,WAAW,QAA/F;IAAA,MAAmCo3E,gBAAgB,GAAiCp3E,WAAW,iBAA/F;IAAA,MAAqDmsB,cAAc,GAAiBnsB,WAAW,eAA/F;IAAA,MAAqEyyB,UAAU,GAAKzyB,WAAW,WAA/F;;IACA,MAAA8I,QAAQ,GAAuB9K,KAAK,SAApC;IAAA,MAAUyhB,OAAO,GAAczhB,KAAK,QAApC;IAAA,MAAsB6L,IAAI,UAAK7L,OAAjC,WAAA,WAAA,EAAE;;IAERc,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd22E,IAAAA,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAG,IAAH,CAAb;IACD,GAFD,EAEG,CAACl4E,SAAD,CAFH;;IAIA,MAAM0wB,aAAa,GAAG,SAAhBA,aAAgB,CAAC5Z,KAAD;IACpB,QAAI5S,QAAJ,EAAcA,QAAQ,CAAC4S,KAAK,CAAC6C,MAAN,CAAahiB,KAAd,CAAR;IACf,GAFD;;IAIA,MAAM84B,kBAAkB,GAAG,SAArBA,kBAAqB,CAAC3Z,KAAD;IACzB,QAAI+D,OAAJ,EAAaA,OAAO,CAAC/D,KAAD,CAAP;IACd,GAFD;;IAIA,sBACE5c,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;OAAf,eACE3C,8BAAA,CAACq3B,KAAD,eACMtsB;IACJvF,IAAAA,IAAI,EAAE;IACN8T,IAAAA,SAAS,EAAE,mBAACsD,KAAD;IAAW,aAAAu8D,kBAAkB,CAACv8D,KAAD,EAAQizD,OAAR,EAAiByI,gBAAjB,EAAmCjrD,cAAnC,EAAmDsG,UAAnD,CAAlB;IAAgF;IAGtG2D,IAAAA,SAAS,EAAE;IACXttB,IAAAA,QAAQ,EAAEwsB;IACV7V,IAAAA,OAAO,EAAE4V;IACTgB,IAAAA,YAAY,EAAE;sBACH;yBACG;IACd50B,IAAAA,SAAS,EAAC;qBACA;QAbZ,CADF,CADF;IAmBD,CApCM;;ICGA,IAAMs7E,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAC/+E,KAAD;IACjC,MAAMgC,WAAW,GAAGlB,gBAAK,CAACmB,UAAN,CAAiBs7E,aAAjB,CAApB;IAEQ,MAAA32E,SAAS,GAAiB5E,WAAW,UAArC;IAAA,MAAWotB,UAAU,GAAKptB,WAAW,WAArC;;IAEA,MAAAkkC,KAAK,GAAqClmC,KAAK,MAA/C;IAAA,MAAOwmC,WAAW,GAAwBxmC,KAAK,YAA/C;IAAA,MAAoByC,QAAQ,GAAczC,KAAK,SAA/C;IAAA,MAAiC6L,IAAI,UAAK7L,OAA5C,QAAA,eAAA,YAAA,EAAE;;IAER,MAAMu7E,iBAAiB,GAAG,EAA1B;IAEA,MAAMyB,YAAY,GAAG;IACnB7nD,IAAAA,SAAS,EAAE/F,UAAU,GAAGxoB,SAAU,GAAG20E,iBAAhB,GAAoC30E;IADtC,GAArB;IAIA,sBACE9F,8BAAA,MAAA;IACE2C,IAAAA,SAAS,EAAC;IACVqC,IAAAA,KAAK,EAAEk3E;qBACG;qBACA;IACV14E,IAAAA,IAAI,EAAC;SACDuH,KANN,eAQE/K,8BAAA,MAAA;2BACmBolC;4BACCM;IAClB/iC,IAAAA,SAAS,EAAC;OAHZ,EAKGyiC,KAAK,iBACJplC,8BAAA,CAACyC,IAAD;IAAMic,IAAAA,EAAE,EAAE0mB;IAAO5hC,IAAAA,IAAI,EAAC;IAAUb,IAAAA,SAAS,EAAC;IAAyBD,IAAAA,MAAM,EAAC;OAA1E,EACG0iC,KADH,CANJ,EAUGM,WAAW,iBACV1lC,8BAAA,CAACyC,IAAD;IAAMic,IAAAA,EAAE,EAAEgnB;IAAa/iC,IAAAA,SAAS,EAAC;IAAyBD,IAAAA,MAAM,EAAC;IAASxC,IAAAA,IAAI,EAAC;IAAQC,IAAAA,UAAU,EAAC;OAAlG,EACGulC,WADH,CAXJ,EAeG/jC,QAAQ,IAAIA,QAff,CARF,CADF;IA4BD,CAzCM;;ICVA,IAAMu8E,YAAY,GAAG,SAAfA,YAAe,CAACh/E,KAAD;IAClB,MAAAyC,QAAQ,GAAczC,KAAK,SAA3B;IAAA,MAAa6L,IAAI,UAAK7L,OAAxB,WAAA,EAAE;;IACR,sBACEc,8BAAA,MAAA;IAAK2C,IAAAA,SAAS,EAAC;SAA2BoI,KAA1C,EACGpJ,QADH,CADF;IAKD,CAPM;;QCkGMw8E,MAAM,gBAAGn+E,gBAAK,CAACuK,UAAN,CAA6C,UAACrL,KAAD,EAAQsL,GAAR;IAE/D,MAAA7I,QAAQ,GAYNzC,KAAK,SAZP;IAAA,MACA+4B,QAAQ,GAWN/4B,KAAK,SAZP;IAAA,MAEA6D,KAAK,GAUH7D,KAAK,MAZP;IAAA,MAGA4G,SAAS,GASP5G,KAAK,UAZP;IAAA,MAIAm1B,SAAS,GAQPn1B,KAAK,UAZP;IAAA,MAKAzB,KAAK,GAOHyB,KAAK,MAZP;IAAA,MAMAyzC,eAAe,GAMbzzC,KAAK,gBAZP;IAAA,MAOAuH,YAAY,GAKVvH,KAAK,aAZP;IAAA,MAQAxE,KAIEwE,KAAK,YAZP;IAAA,MAQA87E,WAAW,mBAAG,UARd;IAAA,MASA3sC,cAAc,GAGZnvC,KAAK,eAZP;IAAA,MAUA4K,cAAc,GAEZ5K,KAAK,eAZP;IAAA,MAWAk/E,YAAY,GACVl/E,KAAK,aAZP;;IAcI,MAAAqD,KAAgCvC,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAAhC;IAAA,MAACsrB,WAAW,QAAZ;IAAA,MAAcC,cAAc,QAA5B;;IACN,MAAMgxD,QAAQ,GAAG1B,eAAe,CAAC3B,WAAD,EAAcv9E,KAAd,CAAhC;;IAEM,MAAAoE,KAAgC7B,gBAAK,CAAC8B,QAAN,CAA0Cu8E,QAA1C,CAAhC;IAAA,MAAChB,WAAW,QAAZ;IAAA,MAAcK,cAAc,QAA5B;;IACA,MAAA35E,KAA0C/D,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAA1C;IAAA,MAACs6E,gBAAgB,QAAjB;IAAA,MAAmBC,mBAAmB,QAAtC;;IAEN,MAAM1oD,UAAU,gBAAG3zB,gBAAK,CAAC0zB,SAAN,EAAnB;IACA,MAAMm8C,OAAO,GAAG7vE,gBAAK,CAAC4e,MAAN,CAAoC,IAApC,CAAhB;;IAEM,MAAArb,KAA8BvD,gBAAK,CAAC8B,QAAN,CAAe,KAAf,CAA9B;IAAA,MAACwsB,UAAU,QAAX;IAAA,MAAa0vD,aAAa,QAA1B;;IAEA,MAAAz3E,KAAoCvG,gBAAK,CAAC8B,QAAN,EAApC;IAAA,MAACk3E,aAAa,QAAd;IAAA,MAAgBV,gBAAgB,QAAhC;;IACA,MAAA9xE,KAA8CxG,gBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAA9C;IAAA,MAACw4E,kBAAkB,QAAnB;IAAA,MAAqBnC,qBAAqB,QAA1C;;IACA,MAAAzxE,KAA4C1G,gBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAA5C;IAAA,MAACy4E,iBAAiB,QAAlB;IAAA,MAAoBnC,oBAAoB,QAAxC;;IACA,MAAA1gE,KAAkC1X,gBAAK,CAAC8B,QAAN,CAA4C;IAAEiB,IAAAA,KAAK,EAAEq7E,YAAY,IAAIr7E;IAAzB,GAA5C,CAAlC;IAAA,MAACgxB,YAAY,QAAb;IAAA,MAAeC,eAAe,QAA9B;;IAEN,MAAMsqD,YAAY,GAAG;IACnBv7E,IAAAA,KAAK,EAAEA;IADY,GAArB;IAIA/C,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;;;IAEd,QAAI,CAAC+2E,YAAD,WAAiBzqD,UAAU,CAAC7U,iDAASgW,WAArC,CAAJ,EAAsD;IACpDd,MAAAA,eAAe,uBACVD;IACHhxB,QAAAA,KAAK,QAAE4wB,UAAU,CAAC7U,iDAASgW;YAFd,CAAf;IAID;IACF,GARD,EAQG,EARH;IAUA90B,EAAAA,gBAAK,CAAC6e,mBAAN,CAA0BrU,GAA1B,EAA+B;IAAM,WAAC;IACpC9C,MAAAA,OAAO,EAAE,iBAACD,IAAD;IACP4lB,QAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG5lB,IAAH,CAAd;IACD,OAHmC;IAIpC82E,MAAAA,iBAAiB,EAAE;IACjB,YAAInxD,WAAJ,EAAiB;IACf6H,UAAAA,qBAAqB,CAAC;IAAM,mBAAAojD,eAAa,CAAC,MAAD,EAASC,gBAAT,EAA2BzI,OAA3B,CAAb;IAAgD,WAAvD,CAArB;IACAsI,UAAAA,qBAAqB,CAAC,IAAD,CAArB;IACD;IACF,OATmC;IAUpCqG,MAAAA,gBAAgB,EAAE;IAChB,YAAIpxD,WAAJ,EAAiB;IACf6H,UAAAA,qBAAqB,CAAC;IAAM,mBAAAojD,eAAa,CAAC,IAAD,EAAOC,gBAAP,EAAyBzI,OAAzB,CAAb;IAA8C,WAArD,CAArB;IACAuI,UAAAA,oBAAoB,CAAC,IAAD,CAApB;IACD;IACF;IAfmC,KAAD;IAgBnC,GAhBF;IAkBAp4E,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI,CAAC+lB,WAAL,EAAkB;IAChB+qD,MAAAA,qBAAqB,CAAC,KAAD,CAArB;IACAC,MAAAA,oBAAoB,CAAC,KAAD,CAApB;IACD;IACF,GALD,EAKG,CAAChrD,WAAD,CALH;IAOAptB,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIizE,kBAAkB,IAAIltD,WAA1B,EAAuC;IACrC6H,MAAAA,qBAAqB,CAAC;IAAM,eAAAojD,eAAa,CAAC,MAAD,EAASC,gBAAT,EAA2BzI,OAA3B,CAAb;IAAgD,OAAvD,CAArB;IACD;IACF,GAJD,EAIG,CAACyK,kBAAD,CAJH;IAMAt6E,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIkzE,iBAAiB,IAAIntD,WAAzB,EAAsC;IACpC6H,MAAAA,qBAAqB,CAAC;IAAM,eAAAojD,eAAa,CAAC,IAAD,EAAOC,gBAAP,EAAyBzI,OAAzB,CAAb;IAA8C,OAArD,CAArB;IACD;IACF,GAJD,EAIG,CAAC0K,iBAAD,CAJH;IAMAv6E,EAAAA,gBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI5J,KAAJ,EAAW;IACTigF,MAAAA,cAAc,CAACjgF,KAAD,CAAd;IACA4+E,MAAAA,mBAAmB,CAAC1+E,KAAK,CAACC,OAAN,CAAcH,KAAd,IAAuBA,KAAK,CAACnB,MAAN,GAAe,CAAtC,GAA0CmB,KAAK,CAACA,KAAN,CAAYyE,IAAZ,GAAmB5F,MAAnB,GAA4B,CAAvE,CAAnB;IACD;IACF,GALD,EAKG,CAACmB,KAAD,CALH;;IAOA,MAAMqlB,eAAe,GAAG,SAAlBA,eAAkB,CAACrb,IAAD;IACtB,QAAIqC,cAAc,IAAIA,cAAc,CAACe,QAArC,EAA+C;IAC7CwiB,MAAAA,cAAc,CAAC,KAAD,CAAd;IACD,KAFD,MAEO;IACL8qD,MAAAA,qBAAqB,CAAC1wE,IAAD,CAArB;IACA4lB,MAAAA,cAAc,CAAC5lB,IAAD,CAAd;IACD;IACF,GAPD;;IASA,MAAM0zE,aAAa,GAAG,SAAhBA,aAAgB,CAACxxD,MAAD;IACpBsO,IAAAA,QAAQ,SAAR,IAAAA,QAAQ,WAAR,SAAA,GAAAA,QAAQ,CAAGtO,MAAH,CAAR;IACA,KAACqxD,WAAD,IAAgB3tD,cAAc,CAAC,KAAD,CAA9B;IACD,GAHD;;IAKA,MAAM0mB,qBAAqB,GAAG,SAAxBA,qBAAwB;IAC5B1F,IAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,EAAd;IACD,GAFD;;IAIA,MAAMntC,WAAW,GAAG;IAClBksB,IAAAA,WAAW,aADO;IAElBC,IAAAA,cAAc,gBAFI;IAGlBgwD,IAAAA,WAAW,aAHO;IAIlBK,IAAAA,cAAc,gBAJI;IAKlBtB,IAAAA,gBAAgB,kBALE;IAMlBC,IAAAA,mBAAmB,qBAND;IAOlBlB,IAAAA,aAAa,eAPK;IAQlBr1E,IAAAA,SAAS,WARS;IASlBuuB,IAAAA,SAAS,WATS;IAUlB/F,IAAAA,UAAU,YAVQ;IAWlBvrB,IAAAA,KAAK,OAXa;IAYlBi7E,IAAAA,aAAa,eAZK;IAalBhD,IAAAA,WAAW,aAbO;IAclBnL,IAAAA,OAAO,SAdW;IAelBl8C,IAAAA,UAAU,YAfQ;IAgBlBqlD,IAAAA,aAAa,eAhBK;IAiBlBV,IAAAA,gBAAgB,kBAjBE;IAkBlBH,IAAAA,qBAAqB,uBAlBH;IAmBlBC,IAAAA,oBAAoB;IAnBF,GAApB;IAsBA,sBACEp4E,8BAAA,CAACy8E,aAAa,CAACn8E,QAAf;IAAwB7C,IAAAA,KAAK,EAAEyD;OAA/B,eACElB,8BAAA,MAAA;qBAAe;yBAAoC;yBAAyBotB;IAAapoB,IAAAA,KAAK,EAAEs5E;OAAhG,eACEt+E,8BAAA,CAACkH,OAAD;IACEO,IAAAA,IAAI,EAAE2lB;IACNvK,IAAAA,QAAQ,EAAEC;IACVngB,IAAAA,SAAS,EAAC;IACV2B,IAAAA,YAAY,EAAC;IACbo1B,IAAAA,WAAW,EAAE3F;IACb4e,IAAAA,eAAe,EAAEA;IACjBlsC,IAAAA,YAAY,EAAEA;IACdU,IAAAA,OAAO,eAAEnH,8BAAA,CAAC29E,aAAD;2BAA6B;WAAqB7zE,eAAlD;OARX,eAUE9J,8BAAA,CAACouC,YAAD;IAAcC,IAAAA,cAAc,EAAE0F;OAA9B,eACE/zC,8BAAA,MAAA;IAAKwD,IAAAA,IAAI,EAAC;IAAUkb,IAAAA,EAAE,EAAC;IAAiBhU,IAAAA,QAAQ,EAAE;IAAGF,IAAAA,GAAG,EAAEqlE;OAA1D,EACGluE,QADH,CADF,CAVF,CADF,CADF,CADF;IAsBD,CAxJqB;IA0JtBw8E,MAAM,CAAC55E,WAAP,GAAqB,QAArB;IAEA45E,MAAM,CAAC15E,YAAP,GAAsB;IACpBqB,EAAAA,SAAS,EAAE,GADS;IAEpB/C,EAAAA,KAAK,EAAE;IAFa,CAAtB;IAKAo7E,MAAM,CAAC1tD,MAAP,GAAgB+sD,YAAhB;IACAW,MAAM,CAACtW,IAAP,GAAc6U,UAAd;IACAyB,MAAM,CAACJ,WAAP,GAAqBA,WAArB;IACAI,MAAM,CAACM,aAAP,GAAuBR,mBAAvB;IACAE,MAAM,CAACO,MAAP,GAAgBR,YAAhB;;IC9PO,IAAMS,SAAS,GAAG,SAAZA,SAAY,CAACz/E,KAAD;IACf,MAAAiK,KAAK,GAAqCjK,KAAK,MAA/C;IAAA,MAAOyC,QAAQ,GAA2BzC,KAAK,SAA/C;IAAA,MAAiBo3E,WAAW,GAAcp3E,KAAK,YAA/C;IAAA,MAAiC6L,IAAI,UAAK7L,OAA5C,QAAA,YAAA,eAAA,EAAE;;IAER,MAAIiK,KAAJ,EAAW;IACT,wBACEnJ,uCAAA,MAAA;uBAAe;IAA0BwD,MAAAA,IAAI,EAAC;IAAQb,MAAAA,SAAS,EAAC;WAAiBoI,KAAjF,eACE/K,uCAAA,CAACyC,IAAD;uBACY;IACVvC,MAAAA,IAAI,EAAC;IACLwC,MAAAA,MAAM,EAAC;IACPvC,MAAAA,UAAU,EAAC;IACXwC,MAAAA,SAAS,EAAC;SALZ,EAOGwG,KAPH,CADF,EAUGxH,QAVH,CADF;IAcD;;IAED,sBACE3B,uCAAA,MAAA;qBAAe;IAA0BwD,IAAAA,IAAI,EAAC;SAAYuH,KAA1D,EACGpJ,QADH,EAEG20E,WAAW,iBAAIt2E,uCAAA,CAAC4kE,OAAD;IAASjiE,IAAAA,SAAS,EAAC;OAAnB,CAFlB,CADF;IAMD,CA1BM;IA4BPg8E,SAAS,CAACl6E,YAAV,GAAyB;IACvB6xE,EAAAA,WAAW,EAAE;IADU,CAAzB;;IClCO,IAAMsI,WAAW,gBAAG5+E,gBAAK,CAACC,aAAN,CAAkC,EAAlC,CAApB;;ICXA,IAAMo/B,eAAa,GAAG,SAAhBA,aAAgB,CAC3BziB,KAD2B,EAE3Bo8D,aAF2B,EAG3BV,gBAH2B,EAI3BjrD,cAJ2B,EAK3BwxD,cAL2B,EAM3BhP,OAN2B,EAO3BiP,UAP2B,EAQ3BC,gBAR2B,EAS3BprD,UAT2B,EAU3BqrD,MAV2B,EAW3BC,SAX2B,EAY3BC,aAZ2B;;;IAc3B,UAAQtiE,KAAK,CAAClX,GAAd;IACE,SAAK,SAAL;IACEkX,MAAAA,KAAK,CAAC7T,cAAN;IACAkwE,MAAAA,eAAe,CAAC,IAAD,EAAOD,aAAP,EAAsBV,gBAAtB,EAAwCzI,OAAxC,CAAf;IACA;;IACF,SAAK,WAAL;IACEjzD,MAAAA,KAAK,CAAC7T,cAAN;IACAkwE,MAAAA,eAAe,CAAC,MAAD,EAASD,aAAT,EAAwBV,gBAAxB,EAA0CzI,OAA1C,CAAf;IACA;;IACF,SAAK,OAAL;IACE,YAACmJ,aAAD,UAAA,iBAAA,SAAA,MAAgC1/C,OAAhC;IACAjM,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;IACA;;IACF,SAAK,QAAL;IACEA,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;;IACA,UAAIsG,UAAU,IAAI,CAACorD,gBAAnB,EAAqC;IACnC,cAAAprD,UAAU,SAAV,IAAAA,UAAU,WAAV,SAAA,GAAAA,UAAU,CAAE7U,OAAZ,UAAA,iBAAA,SAAA,MAAqBoX,OAArB;IACD,OAFD,MAEO;IACL,cAAA2oD,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAE//D,OAAhB,UAAA,iBAAA,SAAA,MAAyBoX,OAAzB;IACD;;IACDoiD,MAAAA,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,CAAG3rE,SAAH,CAAhB;IACA;;IACF,SAAK,KAAL;IACE0gB,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;IACA;;IACF,SAAK,YAAL;IACE8xD,MAAAA,eAAe,CAACJ,gBAAD,EAAmB,OAAnB,EAA4BD,UAA5B,EAAwCE,MAAxC,EAAgDC,SAAhD,EAA2DC,aAA3D,CAAf;IACA;;IACF,SAAK,WAAL;IACEC,MAAAA,eAAe,CAACJ,gBAAD,EAAmB,MAAnB,EAA2BD,UAA3B,EAAuCE,MAAvC,EAA+CC,SAA/C,EAA0DC,aAA1D,CAAf;IACA;IA9BJ;IAkCD,CAhDM;;IAkDP,IAAMjG,eAAe,GAAG,SAAlBA,eAAkB,CACtBtgD,SADsB,EAEtBqgD,aAFsB,EAGtBV,gBAHsB,EAItBzI,OAJsB;;;IAMtB,MAAM2I,SAAS,SAAG3I,OAAO,CAAC/wD,iDAAS+Z,iBAAiB,iDAApD;IACA,MAAItzB,KAAK,GAAG5H,KAAK,CAACiU,IAAN,CAAW4mE,SAAX,EAAsB3qD,SAAtB,CAAgC,UAACvoB,IAAD;IAC1C,WAAOA,IAAI,IAAI0zE,aAAf;IACD,GAFW,CAAZ;;IAIA,MAAIzzE,KAAK,KAAK,CAAC,CAAf,EAAkB;IAChBA,IAAAA,KAAK,GAAGozB,SAAS,KAAK,IAAd,GAAqB6/C,SAAS,CAACl8E,MAAV,GAAmB,CAAxC,GAA4C,CAApD;IACD,GAFD,MAEO;IACLiJ,IAAAA,KAAK,GAAGozB,SAAS,KAAK,IAAd,GAAqB,CAACpzB,KAAK,GAAG,CAAR,GAAYizE,SAAS,CAACl8E,MAAvB,IAAiCk8E,SAAS,CAACl8E,MAAhE,GAAyE,CAACiJ,KAAK,GAAG,CAAT,IAAcizE,SAAS,CAACl8E,MAAzG;IACD;;IAED,MAAMiwB,YAAY,GAAGisD,SAAS,CAACjzE,KAAD,CAA9B;IACCgnB,EAAAA,YAA4B,CAAC2J,KAA7B;IACDoiD,EAAAA,gBAAgB,IAAIA,gBAAgB,CAAC/rD,YAAD,CAApC;IACA,QAAAA,YAAY,SAAZ,IAAAA,YAAY,WAAZ,SAAA,GAAAA,YAAY,CAAEhB,cAAd,UAAA,iBAAA,SAAA,WAAAgB,cAA+B;IAAEE,IAAAA,KAAK,EAAE;IAAT,IAA/B;IACD,CArBD;;IAuBA,IAAM0yD,eAAe,GAAG,SAAlBA,eAAkB,CACtBJ,gBADsB,EAEtBpmD,SAFsB,EAGtBmmD,UAHsB,EAItBE,MAJsB,EAKtBC,SALsB,EAMtBC,aANsB;;;IAQtB,MAAM7zD,OAAO,GAAG/wB,QAAQ,CAACm6B,aAAT,CAAuB,kBAAeuqD,MAAf,QAAvB,CAAhB;IACA,MAAMI,aAAa,GAAG/zD,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAE6N,YAAT,CAAsB,gBAAtB,CAAtB;;IAEA,MAAI6lD,gBAAJ,EAAsB;IACpB,QACGpmD,SAAS,KAAK,OAAd,KAAyBymD,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEtkF,QAAf,CAAwB,OAAxB,CAAzB,CAAD,IACC69B,SAAS,KAAK,MAAd,KAAwBymD,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEtkF,QAAf,CAAwB,MAAxB,CAAxB,CAFH,EAGE;IACA,UAAM09E,SAAS,SAAGsG,UAAU,SAAV,IAAAA,UAAU,WAAV,SAAA,GAAAA,UAAU,CAAEhgE,iDAAS+Z,iBAAiB,iDAAxD;IACA,OAAC2/C,SAAS,SAAT,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAG,CAAH,CAAV,EAAgCtiD,KAAhC;IACD;IACF,GARD,MAQO,IACJyC,SAAS,KAAK,MAAd,KAAwBymD,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEtkF,QAAf,CAAwB,OAAxB,CAAxB,CAAD,IACC69B,SAAS,KAAK,OAAd,KAAyBymD,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEtkF,QAAf,CAAwB,MAAxB,CAAzB,CAFI,EAGL;IACA,QAAM23C,cAAc,eAAGysC,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEpgE,iDAAS2V,cAAc,MAAIwqD,oDAAchK,UAA/E;IACA,UAACxiC,cAAD,UAAA,iBAAA,SAAA,MAAiCvc,OAAjC;IACD;IACF,CA1BD;;ICjEO,IAAMmpD,cAAc,gBAAGr/E,gBAAK,CAACC,aAAN,CAAkC,EAAlC,CAAvB;;IC2BA,IAAMq4C,QAAQ,GAAG,SAAXA,QAAW,CAACp5C,KAAD;IACd,MAAAyC,QAAQ,GAAqDzC,KAAK,SAAlE;IAAA,MAAUyD,SAAS,GAA0CzD,KAAK,UAAlE;IAAA,MAAqB0J,OAAO,GAAiC1J,KAAK,QAAlE;IAAA,MAA8B2L,QAAQ,GAAuB3L,KAAK,SAAlE;IAAA,MAAwCq+B,OAAO,GAAcr+B,KAAK,QAAlE;IAAA,MAAoD6L,IAAI,UAAK7L,OAA/D,WAAA,aAAA,WAAA,YAAA,WAAA,EAAE;;IACR,MAAMgC,WAAW,GAAGlB,yBAAK,CAACmB,UAAN,CAAiBy9E,WAAjB,CAApB;IACA,MAAMU,kBAAkB,GAAGt/E,yBAAK,CAACmB,UAAN,CAAiBk+E,cAAjB,CAA3B;IACA,MAAMN,gBAAgB,GAAG,KAAzB;IACA,MAAMD,UAAU,GAAG,IAAnB;IAEQ,MAAAnrD,UAAU,GAAsD2rD,kBAAkB,WAAlF;IAAA,MAAYN,MAAM,GAA8CM,kBAAkB,OAAlF;IAAA,MAAoBC,aAAa,GAA+BD,kBAAkB,cAAlF;IAAA,MAAmCL,SAAS,GAAoBK,kBAAkB,UAAlF;IAAA,MAA8CJ,aAAa,GAAKI,kBAAkB,cAAlF;IAEA,MAAAjyD,cAAc,GAA+DnsB,WAAW,eAAxF;IAAA,MAAgB83E,aAAa,GAAgD93E,WAAW,cAAxF;IAAA,MAA+Bo3E,gBAAgB,GAA8Bp3E,WAAW,iBAAxF;IAAA,MAAiD29E,cAAc,GAAc39E,WAAW,eAAxF;IAAA,MAAiE2uE,OAAO,GAAK3uE,WAAW,QAAxF;IAER,MAAMs+E,iBAAiB,GAAGn9E,8BAAU,CAClC;IACE,iBAAa;IADf,GADkC,EAIlCM,SAJkC,CAApC;IAOA3C,EAAAA,yBAAK,CAACqH,SAAN,CAAgB;;;IACd,QAAMo4E,iBAAiB,GAAG,SAApBA,iBAAoB;IACxBpyD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACD,KAFD;;IAIA,QAAMqyD,kBAAkB,GAAG,SAArBA,kBAAqB;IACzBryD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;IACD,KAFD;;IAIA,QAAMolB,cAAc,eAAGysC,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAEpgE,iDAAS2V,cAAc,MAAIwqD,oDAAchK,UAA/E;IAEAxiC,IAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAE7J,gBAAhB,CAAiC,OAAjC,EAA0C62C,iBAA1C,CAAA;IACAhtC,IAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAE7J,gBAAhB,CAAiC,MAAjC,EAAyC82C,kBAAzC,CAAA;IAEA,WAAO;IACLjtC,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAErJ,mBAAhB,CAAoC,OAApC,EAA6Cq2C,iBAA7C,CAAA;IACAhtC,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAErJ,mBAAhB,CAAoC,MAApC,EAA4Cs2C,kBAA5C,CAAA;IACD,KAHD;IAID,GAlBD,EAkBG,CAACT,SAAD,CAlBH;;IAoBA,MAAMt8C,cAAc,GAAG,SAAjBA,cAAiB,CAAC/lB,KAAD;IACrB07D,IAAAA,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,SAAA,GAAAA,gBAAgB,CAAG17D,KAAK,CAAC6C,MAAT,CAAhB;IACA4N,IAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACAkQ,IAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAG3gB,KAAH,CAAP;IACD,GAJD;;IAMA,MAAMD,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvByiB,IAAAA,eAAa,CACXziB,KADW,EAEXo8D,aAFW,EAGXV,gBAHW,EAIXjrD,cAJW,EAKXwxD,cALW,EAMXhP,OANW,EAOXiP,UAPW,EAQXC,gBARW,EASXprD,UATW,EAUXqrD,MAVW,EAWXC,SAXW,EAYXC,aAZW,CAAb;IAcD,GAfD;;IAiBA,MAAMr2E,cAAc,GAAG,SAAjBA,cAAiB,CAAC+T,KAAD;IACrB,QAAI/R,QAAJ,EAAc;IACZ;IACD;;IACDwiB,IAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;IACAzkB,IAAAA,OAAO,SAAP,IAAAA,OAAO,WAAP,SAAA,GAAAA,OAAO,CAAGgU,KAAH,CAAP;IACA2iE,IAAAA,aAAa,SAAb,IAAAA,aAAa,WAAb,SAAA,GAAAA,aAAa,CAAG,KAAH,CAAb;IACD,GAPD;;IASA,sBACEv/E,uCAAA,CAACu0E,OAAO,CAACkC,IAAT;qBACY;IACV9zE,IAAAA,SAAS,EAAE68E;IACX90E,IAAAA,QAAQ,EAAE,CAAC;IACX4O,IAAAA,SAAS,EAAEqD;IACX4gB,IAAAA,OAAO,EAAEoF;IACT/5B,IAAAA,OAAO,EAAEC;IACTgC,IAAAA,QAAQ,EAAEA;IACVrH,IAAAA,IAAI,EAAC;yBACUqH;SACXE,KAVN,EAYGpJ,QAZH,CADF;IAgBD,CAtFM;IAwFP22C,QAAQ,CAAC/zC,WAAT,GAAuB,UAAvB;IAEA+zC,QAAQ,CAAC7zC,YAAT,GAAwB;IACtB+xE,EAAAA,OAAO,EAAE;IADa,CAAxB;;ICzGO,IAAMmJ,QAAQ,GAAG,SAAXA,QAAW,CAACzgF,KAAD;IACd,MAAAyC,QAAQ,GAAczC,KAAK,SAA3B;IAAA,MAAa6L,IAAI,UAAK7L,OAAxB,WAAA,EAAE;;IAER,sBACEc,uCAAA,CAACu0E,OAAD;qBAAmB;SAA6BxpE,KAAhD,EACGpJ,QADH,CADF;IAKD,CARM;IAUPg+E,QAAQ,CAACl7E,YAAT,GAAwB;IACtBiF,EAAAA,IAAI,EAAE,QADgB;IAEtB4sE,EAAAA,WAAW,EAAE,KAFS;IAGtBE,EAAAA,OAAO,EAAE,KAHa;IAItBt2E,EAAAA,IAAI,EAAE;IAJgB,CAAxB;;IC9BO,IAAMm/B,aAAa,GAAG,SAAhBA,aAAgB,CAC3BziB,KAD2B,EAE3ByQ,cAF2B,EAG3B8qD,qBAH2B,EAI3BC,oBAJ2B;IAM3B,UAAQx7D,KAAK,CAAClX,GAAd;IACE,SAAK,SAAL;IACEkX,MAAAA,KAAK,CAAC7T,cAAN;IACAskB,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA+qD,MAAAA,oBAAoB,SAApB,IAAAA,oBAAoB,WAApB,SAAA,GAAAA,oBAAoB,CAAG,IAAH,CAApB;IACA;;IACF,SAAK,WAAL;IACEx7D,MAAAA,KAAK,CAAC7T,cAAN;IACAskB,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,IAAH,CAAd;IACA8qD,MAAAA,qBAAqB,SAArB,IAAAA,qBAAqB,WAArB,SAAA,GAAAA,qBAAqB,CAAG,IAAH,CAArB;IACA;;IACF,SAAK,QAAL;IACA,SAAK,KAAL;IACE9qD,MAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAG,KAAH,CAAd;IACA;IAdJ;IAkBD,CAxBM;IA0BA,IAAMgrD,aAAa,GAAG,SAAhBA,aAAgB,CAC3Bh0E,QAD2B,EAE3Bi0E,gBAF2B,EAG3BzI,OAH2B;;;IAK3B,MAAM2I,SAAS,SAAG3I,OAAO,CAAC/wD,iDAAS+Z,iBAAiB,iDAApD;IACA,MAAItM,YAAJ;;IAEA,MAAIloB,QAAQ,KAAK,MAAjB,EAAyB;IACvBkoB,IAAAA,YAAY,GAAGisD,SAAS,SAAT,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAG,CAAH,CAAxB;IACD,GAFD,MAEO;IACLjsD,IAAAA,YAAY,GAAGisD,SAAS,SAAT,IAAAA,SAAS,WAAT,SAAA,GAAAA,SAAS,CAAGA,SAAS,CAACl8E,MAAV,GAAmB,CAAtB,CAAxB;IACD;;IACD,QAACiwB,YAAD,UAAA,iBAAA,SAAA,MAA+B2J,OAA/B;;IAEA,MAAI3J,YAAY,IAAI,OAAOA,YAAY,CAAChB,cAApB,KAAuC,UAA3D,EAAuE;IACrE,UAACgB,YAAD,UAAA,iBAAA,SAAA,MAA+BhB,eAAe;IAAEkB,MAAAA,KAAK,EAAE;IAAT,MAA9C;IACD;;IACD6rD,EAAAA,gBAAgB,IAAIA,gBAAgB,CAAC/rD,YAAD,CAApC;IACD,CAnBM;;ICdA,IAAMqzD,WAAW,GAAG,SAAdA,WAAc,CAAC1gF,KAAD;IACjB,MAAAyD,SAAS,GAAKzD,KAAK,UAAnB;IACR,MAAMgC,WAAW,GAAGlB,yBAAK,CAACmB,UAAN,CAAiBy9E,WAAjB,CAApB;IACQ,MAAAxxD,WAAW,GAAkFlsB,WAAW,YAAxG;IAAA,MAAamsB,cAAc,GAAkEnsB,WAAW,eAAxG;IAAA,MAA6Bi3E,qBAAqB,GAA2Cj3E,WAAW,sBAAxG;IAAA,MAAoDk3E,oBAAoB,GAAqBl3E,WAAW,qBAAxG;IAAA,MAA0E29E,cAAc,GAAK39E,WAAW,eAAxG;IAER,MAAM2+E,gBAAgB,GAAGx9E,8BAAU,CACjC;IACE,4BAAwB+qB;IAD1B,GADiC,EAIjCzqB,SAJiC,CAAnC;;IAOA,MAAMga,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvByiB,IAAAA,aAAa,CAACziB,KAAD,EAAQyQ,cAAR,EAAwB8qD,qBAAxB,EAA+CC,oBAA/C,CAAb;IACD,GAFD;;IAIA,sBACEp4E,uCAAA,CAACyJ,MAAD;qBACY;IACVjE,IAAAA,IAAI,EAAC;IACLgF,IAAAA,GAAG,EAAEq0E;sBACM;yBACI;yBACAzxD;SACXluB;IACJyD,IAAAA,SAAS,EAAEk9E;IACXvmE,IAAAA,SAAS,EAAEqD;QATb,CADF;IAaD,CA7BM;;ICGA,IAAMmjE,OAAO,GAAG,SAAVA,OAAU,CAAC5gF,KAAD;;;IACb,MAAAyC,QAAQ,GAAKzC,KAAK,SAAlB;IACR,MAAM8/E,MAAM,GAAG,gCAA8B3hE,YAAY,EAAzD;IACA,MAAM4hE,SAAS,GAAG,gCAA8B5hE,YAAY,EAA5D;;IAEM,MAAA9a,KAAmCvC,yBAAK,CAACwqC,QAAN,CAAegqC,OAAf,CAAuB7yE,QAAvB,CAAnC;IAAA,MAACo+E,cAAc,QAAf;IAAA,MAAiBC,cAAc,QAA/B;;IACN,MAAM9+E,WAAW,GAAGlB,yBAAK,CAACmB,UAAN,CAAiBy9E,WAAjB,CAApB;IACA,MAAME,UAAU,GAAG9+E,yBAAK,CAAC4e,MAAN,CAA6B,IAA7B,CAAnB;IACA,MAAM+U,UAAU,GAAG3zB,yBAAK,CAAC4e,MAAN,CAA6B,IAA7B,CAAnB;IACA,MAAMmgE,gBAAgB,GAAG,IAAzB;IAEA,MAAIkB,cAAc,gBAAGjgF,uCAAA,mCAAA,MAAA,CAArB;IAEQ,MAAAqtB,cAAc,GAA+DnsB,WAAW,eAAxF;IAAA,MAAgB83E,aAAa,GAAgD93E,WAAW,cAAxF;IAAA,MAA+Bo3E,gBAAgB,GAA8Bp3E,WAAW,iBAAxF;IAAA,MAAiD29E,cAAc,GAAc39E,WAAW,eAAxF;IAAA,MAAiE2uE,OAAO,GAAK3uE,WAAW,QAAxF;;IAER,MAAMyb,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACC,KAAD;IACvByiB,IAAAA,eAAa,CACXziB,KADW,EAEXo8D,aAFW,EAGXV,gBAHW,EAIXjrD,cAJW,EAKXwxD,cALW,EAMXhP,OANW,EAOXiP,UAPW,EAQXC,gBARW,EASXprD,UATW,EAUXqrD,MAVW,CAAb;IAYD,GAbD;;IAeA,MAAMM,kBAAkB,GAAG;IACzB3rD,IAAAA,UAAU,YADe;IAEzBqrD,IAAAA,MAAM,QAFmB;IAGzBO,IAAAA,aAAa,EAAElyD,cAHU;IAIzB6xD,IAAAA,aAAa,EAAErP,OAJU;IAKzBoP,IAAAA,SAAS;IALgB,GAA3B;IAQA,MAAMxsC,cAAc,gBAAGzyC,yBAAK,CAACu1B,YAAN,CAAmBwqD,cAAnB,8BACjBA,wDAAuC7gF;IAC3Coa,IAAAA,SAAS,EAAEqD;IACXnS,IAAAA,GAAG,EAAEmpB;IACL,qBAAiB;IACjB,qBAAiBmrD,UAAU,CAAChgE,OAAX,GAAqB,MAArB,GAA8B;IAC/C,qBAAiBkgE;IACjBtgE,IAAAA,EAAE,EAAEugE;QAPiB,CAAvB;;IAUA,oBAAIj/E,yBAAK,CAACgc,cAAN,CAAqBgkE,cAArB,CAAJ,EAA0C;IAClC,QAAAn+E,KAAmBm+E,cAAc,SAAd,IAAAA,cAAc,WAAd,SAAA,GAAAA,cAAc,CAAE9gF,KAAnC;IAAA,QAAE2F,EAAE,QAAJ;IAAA,QAAMq7E,UAAQ,cAAd;;IACND,IAAAA,cAAc,gBAAGjgF,yBAAK,CAACu1B,YAAN,CAAmByqD,cAAnB,wBACZA,cAAc,CAAC9gF;IAClB2F,MAAAA,EAAE,EAAEA,EAAE,IAAI;IACVuC,MAAAA,MAAM,EAAE;IACRzF,MAAAA,QAAQ,eAAE3B,uCAAA,MAAA;IAAKwK,QAAAA,GAAG,EAAEs0E;WAAV,EAAuBoB,UAAvB;IACV/4E,MAAAA,OAAO,EAAEsrC;UALM,CAAjB;IAOD;;IAED,sBAAOzyC,uCAAA,CAACq/E,cAAc,CAAC/+E,QAAhB;IAAyB7C,IAAAA,KAAK,EAAE6hF;OAAhC,EAAqDW,cAArD,CAAP;IACD,CA5DM;;QCmCME,IAAI,GAAG,SAAPA,IAAO,CAACjhF,KAAD;;;IACV,MAAAyC,QAAQ,GAA4DzC,KAAK,SAAzE;IAAA,MAAU6D,KAAK,GAAqD7D,KAAK,MAAzE;IAAA,MAAiBm1B,SAAS,GAA0Cn1B,KAAK,UAAzE;IAAA,MAA4B4G,SAAS,GAA+B5G,KAAK,UAAzE;IAAA,MAAuCyD,SAAS,GAAoBzD,KAAK,UAAzE;IAAA,MAAkDuI,IAAI,GAAcvI,KAAK,KAAzE;IAAA,MAA2D6L,IAAI,UAAK7L,OAAtE,WAAA,SAAA,aAAA,aAAA,aAAA,QAAA,EAAE;;IACF,MAAAqD,KAAgCvC,yBAAK,CAAC8B,QAAN,CAAe2F,IAAf,CAAhC;IAAA,MAAC2lB,WAAW,QAAZ;IAAA,MAAcC,cAAc,QAA5B;;IACA,MAAAxrB,KAA8C7B,yBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAA9C;IAAA,MAACw4E,kBAAkB,QAAnB;IAAA,MAAqBnC,qBAAqB,QAA1C;;IACA,MAAAp0E,KAA4C/D,yBAAK,CAAC8B,QAAN,CAAwB,KAAxB,CAA5C;IAAA,MAACy4E,iBAAiB,QAAlB;IAAA,MAAoBnC,oBAAoB,QAAxC;;IACA,MAAA70E,KAAoCvD,yBAAK,CAAC8B,QAAN,EAApC;IAAA,MAACk3E,aAAa,QAAd;IAAA,MAAgBV,gBAAgB,QAAhC;;IACN,MAAMzI,OAAO,gBAAG7vE,yBAAK,CAAC0zB,SAAN,EAAhB;IACA,MAAMmrD,cAAc,GAAG7+E,yBAAK,CAAC4e,MAAN,CAAgC,IAAhC,CAAvB;IACA,MAAM0gE,kBAAkB,GAAGt/E,yBAAK,CAACmB,UAAN,CAAiBk+E,cAAjB,CAA3B;IAEQ,MAAAL,MAAM,GAAKM,kBAAkB,OAA7B;IAER,MAAMc,gBAAgB,GAAG/9E,8BAAU,WAE/B3H,GAAC,OAAD,GAAU,QAFqB,GAIjCiI,SAJiC,CAAnC;IAOA3C,EAAAA,yBAAK,CAACqH,SAAN,CAAgB;IACdgmB,IAAAA,cAAc,CAAC5lB,IAAD,CAAd;IACD,GAFD,EAEG,CAACA,IAAD,CAFH;IAIAzH,EAAAA,yBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIizE,kBAAkB,IAAIltD,WAA1B,EAAuC;IACrC6H,MAAAA,qBAAqB,CAAC;IAAM,eAAAojD,aAAa,CAAC,MAAD,EAASC,gBAAT,EAA2BzI,OAA3B,CAAb;IAAgD,OAAvD,CAArB;IACD;IACF,GAJD,EAIG,CAACyK,kBAAD,CAJH;IAMAt6E,EAAAA,yBAAK,CAACqH,SAAN,CAAgB;IACd,QAAIkzE,iBAAiB,IAAIntD,WAAzB,EAAsC;IACpC6H,MAAAA,qBAAqB,CAAC;IAAM,eAAAojD,aAAa,CAAC,IAAD,EAAOC,gBAAP,EAAyBzI,OAAzB,CAAb;IAA8C,OAArD,CAArB;IACD;IACF,GAJD,EAIG,CAAC0K,iBAAD,CAJH;IAMAv6E,EAAAA,yBAAK,CAACqH,SAAN,CAAgB;IACd,QAAI,CAAC+lB,WAAL,EAAkB;IAChB+qD,MAAAA,qBAAqB,CAAC,KAAD,CAArB;IACAC,MAAAA,oBAAoB,CAAC,KAAD,CAApB;IACD;IACF,GALD,EAKG,CAAChrD,WAAD,CALH;;IAOA,MAAMtK,eAAe,GAAG,SAAlBA,eAAkB,CAACrb,IAAD;IACtB4lB,IAAAA,cAAc,CAAC5lB,IAAD,CAAd;IACD,GAFD;;IAIA,MAAMvG,WAAW,GAAG;IAClBksB,IAAAA,WAAW,aADO;IAElBC,IAAAA,cAAc,gBAFI;IAGlB8qD,IAAAA,qBAAqB,uBAHH;IAIlBC,IAAAA,oBAAoB,sBAJF;IAKlBY,IAAAA,aAAa,eALK;IAMlBV,IAAAA,gBAAgB,kBANE;IAOlBuG,IAAAA,cAAc,gBAPI;IAQlBhP,IAAAA,OAAO;IARW,GAApB;IAWA,sBACE7vE,uCAAA,CAAC4+E,WAAW,CAACt+E,QAAb;IAAsB7C,IAAAA,KAAK,EAAEyD;OAA7B,eACElB,uCAAA,CAACkH,OAAD;qBACY;IACVtE,IAAAA,IAAI,EAAEo8E;IACN53E,IAAAA,MAAM,EAAC;SACH2D;IACJtD,IAAAA,IAAI,EAAE2lB;IACNsM,IAAAA,WAAW,EAAE;IAAE32B,MAAAA,KAAK;IAAP;IACb8f,IAAAA,QAAQ,EAAEC;QAPZ,eASE9iB,uCAAA,MAAA;IACEwK,IAAAA,GAAG,EAAEqlE;IACLrsE,IAAAA,IAAI,EAAC;qBACMtE,KAAK,CAAC,WAAD,CAAL,IAAsB;IACjCyD,IAAAA,SAAS,EAAEy9E;IACXp7E,IAAAA,KAAK,EAAE;IAAEc,MAAAA,SAAS,WAAX;IAAauuB,MAAAA,SAAS;IAAtB;OALT,EAOG1yB,QAPH,CATF,CADF,CADF;IAuBD;IAEDw+E,IAAI,CAACE,KAAL,GAAa1B,SAAb;IACAwB,IAAI,CAAC1J,IAAL,GAAYn+B,QAAZ;IACA6nC,IAAI,CAACtY,IAAL,GAAY8X,QAAZ;IACAQ,IAAI,CAACjgE,OAAL,GAAe0/D,WAAf;IACAO,IAAI,CAACL,OAAL,GAAeA,OAAf;IAEAK,IAAI,CAAC17E,YAAL,GAAoB;IAClB1B,EAAAA,KAAK,EAAE,GADW;IAElB+C,EAAAA,SAAS,EAAE,GAFO;IAGlBzB,EAAAA,QAAQ,EAAE;IAHQ,CAApB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"} \ No newline at end of file diff --git a/dist/index.umd.js b/dist/index.umd.js index 89b6eef783..6e2b7f96fc 100644 --- a/dist/index.umd.js +++ b/dist/index.umd.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("react-dom")):"function"==typeof define&&define.amd?define(["exports","react","react-dom"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).InnovaccerDesignSystem={},e.React,e.ReactDOM)}(this,function(e,G,t){"use strict";function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function a(n){if(n&&n.__esModule)return n;var a=Object.create(null);return n&&Object.keys(n).forEach(function(e){var t;"default"!==e&&(t=Object.getOwnPropertyDescriptor(n,e),Object.defineProperty(a,e,t.get?t:{enumerable:!0,get:function(){return n[e]}}))}),a.default=n,Object.freeze(a)}var le=a(G),b=n(G),h=a(t),r=Object.freeze({__proto__:null,colorToHex:function(e){return getComputedStyle(document.documentElement).getPropertyValue("--".concat(e))}});function o(t,e){var n,a=Object.keys(t);return Object.getOwnPropertySymbols&&(n=Object.getOwnPropertySymbols(t),e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),a.push.apply(a,n)),a}function q(t){for(var e=1;ee.length)&&(t=e.length);for(var n=0,a=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:t}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,o=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){i=!0,r=e},f:function(){try{o||null==n.return||n.return()}finally{if(i)throw r}}}}function S(e,t){return t?"number"!=typeof t?t:(t=k(e,t),x(e,t)):""}var w=(se(io={},"hh:mm","--:--"),se(io,"hh:mm AM","--:-- AM"),io),N=function(e){return"hh:mm AM"===e},C=function(e){return{hrs:e%12||12,AMPM:e<12?"AM":"PM"}},D=function(e,t){var n=e;return t?("PM"===t&&e<12?n=e+12:"AM"===t&&12===e&&(n=e-12),n):e},k=function(e,t){var n=new Date(t),a=n.getHours(),t=N(e)?C(a).hrs:a,a=N(e)?C(a).AMPM:"";return{hours:t,minutes:n.getMinutes(),seconds:n.getSeconds(),am_pm:a}},O=function(e,t){var n=0,a=0,r=e.length,o=t.length,i=e.substring(r-2,r),l="AM"===i||"PM"===i,i=l?t.substring(o-2,o):"",t=l?t.substring(0,o-3):t,e=l?e.substring(0,r-3):e,s=t.split(":");return e.split(":").forEach(function(e,t){switch(e){case"hh":n=+s[t]||0;break;case"mm":a=+s[t]||0}}),{hours:n,minutes:a,am_pm:i}},x=function(e,t){var n=t.hours,a=t.minutes,r=t.am_pm,t=e.split(" ")[0].split(":"),o="";return t.forEach(function(e,t){switch(e){case"hh":o+=n<10?"0".concat(n):n;break;case"mm":o+=a<10?"0".concat(a):a}t!==e.length-1&&(o+=":")}),o+=N(e)&&r?" ".concat(r):""},M=function(e){for(var t=arguments.length,n=new Array(1t?9r.bottom&&n?he(n,a.offsetTop-r.height+i):o.topg.staticLimit:d,n=ne(d,l,p)?g.getUnSelectedOptions(r,i):r,a=""===l?g.getSelectedOptions(r,i):[],e=""===l?o:g.state.optionsLength,r=g.getDisabledOptions(n.slice(0,g.staticLimit)),g.setState(q(q({},g.state),{},{optionsLength:e,loading:!1,async:d,searchedOptionsLength:o,options:n.slice(0,g.staticLimit),tempSelected:i?a:c,previousSelected:i?a:u,selected:ne(d,l,p)?a:[],triggerLabel:g.updateTriggerLabel(i?a:c),selectAll:!d&&i?ae(a,e,r.length):s})),(d||m)&&null!==(t=Ae.current)&&void 0!==t&&t.focus())})}),se(v(g),"updateSearchTerm",function(e){g.setState(q(q({},g.state),{},{loading:!0,searchInit:!0,searchTerm:e}))}),se(v(g),"updateOnPopperToggle",function(){var e=g.props,t=e.withCheckbox,n=e.showApplyButton,a=e.onClose,r=e.name,o=e.selected,i=void 0===o?[]:o,l=g.state,s=l.previousSelected,c=l.tempSelected,u=l.optionsLength,d=l.async,p=l.loading,m=l.searchTerm,e=l.options,o=(te(g.props.open)?g.props:g.state).open,l=g.getDisabledOptions(e).length;t&&n&&(e=ee(g.props.selected)?i:s,g.setState({tempSelected:e,selectAll:ae(e,u,l),triggerLabel:g.updateTriggerLabel(e)})),te(g.props.open)&&g.setState({open:o}),o&&(c=ne(d,m,t)&&!me(g.state.selected,c),g.setState({loading:c||p||""!==m,searchInit:""!==m,searchTerm:""}),c&&g.updateOptions(!1)),a&&!o&&a((t&&n?ee(g.props.selected)?i:s:g.state.tempSelected).map(function(e){return e.value}),r)}),se(v(g),"updateTriggerLabel",function(){var e=0g.staticLimit,e=t?[]:g.getSelectedOptions(l,!0),a=g.getDisabledOptions(l);return g.state={async:t,optionsLength:s,open:i,searchInit:!1,searchedOptionsLength:s,optionsApplied:!1,options:l||[],loading:t||o,searchTerm:"",tempSelected:e,previousSelected:e,selected:ne(t,"",r)?n:[],triggerLabel:g.updateTriggerLabel(e,s),selectAll:ae(e,s,a.length)},g}return p(u,[{key:"componentDidMount",value:function(){this.state.async&&this.updateOptions(!0)}},{key:"componentDidUpdate",value:function(e,t){var n,a,r,o,i,l;this.state.async||(n=(a=this.props).loading,i=a.fetchOptions,o=a.options,r=a.withSearch,o=this.getDisabledOptions(a=void 0===o?[]:o).length,e.loading===n||i||(a.length>this.staticLimit?this.updateOptions(!0,!0):(i=this.getSelectedOptions(a,!0),this.setState(q(q({},this.state),{},{options:a,loading:n,tempSelected:i,previousSelected:i,optionsLength:a.length,searchedOptionsLength:a.length,triggerLabel:this.updateTriggerLabel(i),selectAll:ae(i,this.state.optionsLength,o)})),r&&null!==(l=Ae.current)&&void 0!==l&&l.focus()))),void 0!==this.props.selected&&e.selected!==this.props.selected&&e.loading===this.props.loading&&(l=!this.props.withCheckbox,this.updateSelectedOptions(this.props.selected,l,!0)),t.searchTerm!==this.state.searchTerm&&this.debounceSearch(),e.open===this.props.open&&t.open===this.state.open||te(this.props.open)&&this.props.open===this.state.open||this.updateOnPopperToggle()}},{key:"render",value:function(){var e=this.state,t=e.options,n=e.async,a=e.open,r=e.searchTerm,o=e.searchInit,i=e.loading,l=e.searchedOptionsLength,s=e.tempSelected,c=e.selectAll,u=e.triggerLabel,d=e.previousSelected,p=this.props,m=p.withSelectAll,f=void 0===m||m,e=p.withCheckbox,m=this.props,p=m.triggerOptions,p=void 0===p?{}:p;m.selected;m=$(m,Te),l-=t.length,e=fe(r,l,f,e)?0:t.findIndex(function(e){return!e.disabled});return le.createElement(Ie,ce({listOptions:t,inputRef:Ae,remainingOptions:l,firstEnabledOption:e,loadingOptions:i,async:n,searchInit:o,dropdownOpen:a,searchTerm:r,triggerLabel:u,tempSelected:s,previousSelected:d,selected:this.state.selected,applyOptions:this.onApplyOptions,cancelOptions:this.onCancelOptions,toggleDropdown:this.onToggleDropdown,onClearOptions:this.onClearOptions,onSelect:this.onSelect,selectAll:c,onSearchChange:this.updateSearchTerm,onOptionSelect:this.onOptionSelect,onSelectAll:this.onSelectAll,customTrigger:p.customTrigger},m))}}]),u}();se(Me,"defaultProps",{triggerOptions:{},options:[],closeOnSelect:!0,staticLimit:50,searchDebounceDuration:300});function Fe(t,n){return le.createElement(Bt,{href:t.link,onClick:function(e){n&&(e.preventDefault(),n(t.link))},appearance:"subtle",size:"tiny"},t.label)}var Re=["size","appearance","iconAlign","tabIndex","largeIcon","type","children","icon","expanded","selected","loading","disabled","className"],Le={tiny:12,regular:16,large:20},ze=le.forwardRef(function(e,t){var n=e.size,a=void 0===n?"regular":n,r=e.appearance,o=void 0===r?"basic":r,i=e.iconAlign,l=void 0===i?"left":i,s=e.tabIndex,c=void 0===s?0:s,u=e.largeIcon,d=e.type,p=e.children,m=e.icon,f=e.expanded,h=e.selected,n=e.loading,r=e.disabled,i=e.className,s=$(e,Re),i=de((se(e={},"Button",!0),se(e,"Button--expanded",f),se(e,"Button--".concat(a),a),se(e,"Button--".concat(a,"Square"),!p),se(e,"Button--".concat(o),o),se(e,"Button--selected",h&&("basic"===o||"transparent"===o)),se(e,"Button--iconAlign-".concat(l),p&&l),se(e,"".concat(i),i),e)),e=de((se(e={},"Button-icon",!0),se(e,"Button-icon--".concat(l),p&&l),e));return le.createElement("button",ce({"data-test":"DesignSystem-Button",ref:t,type:d,className:i,disabled:r||n,tabIndex:c},s),n?le.createElement(le.Fragment,null,le.createElement(en,{size:"small",appearance:"basic"===o||"transparent"===o?"secondary":"white","data-test":"DesignSystem-Button--Spinner",className:"Button-spinner"}),le.createElement(ye,{className:"Button-text Button-text--hidden"},p||"")):le.createElement(le.Fragment,null,m&&le.createElement("div",{className:e},le.createElement(be,{"data-test":"DesignSystem-Button--Icon",name:m,appearance:r?"disabled":"basic"===o||"transparent"===o?h?"info":"default":"white",size:u&&!p?Le[a]+4:Le[a]})),p))});ze.displayName="Button";function Be(e){return["sunday","monday","tuesday","wednesday","thursday","friday","saturday"].indexOf(e)}function He(e,t,n){if(e){var a=Ze(e).decadeYear;switch(t){case"less":if(a=y.length)return a;if(n>=e.length)return S.current=t,a;var i=y[t];return E(t)?(e[n].match(i)?a+=e[n]:a+=v,o++):a+=i,a+=I(e,r,o)}var P=function(){return{start:k.current.selectionStart||0,end:k.current.selectionEnd||0}},T=function(e){var t,n;k.current&&(t=k.current,n=Math.min(e.start,e.end),e=Math.max(e.start,e.end),t.setSelectionRange(n,e))},i=de({"d-flex flex-column flex-grow-1":!0},i);return le.createElement("div",{className:i},le.createElement(wt,ce({},e,{value:w,error:c,required:o,onFocus:function(e){m.current=window.requestAnimationFrame(x),w||(N(h()),window.requestAnimationFrame(function(){return T(n())})),d&&d(e)},onChange:function(e){var t=e.currentTarget.value,n=P(),a=Math.min(C.start,n.start),r=n.end,o=a,i="",l=0,s=t.slice(a,r),c=(i=I(s,a)).length;n.end>C.end?l=c?Math.abs(C.end-C.start):0:t.length=n.length?(s=!!(d=ta(o,c)))&&"get"in d&&!("originalValue"in d.get)?d.get:o[c]:(s=Jn(o,c),o[c]),s&&!i&&(ca[u]=o)}}return o}var ra=ta?function(){try{return na}catch(e){try{return ta(arguments,"callee").get}catch(e){return na}}}():na,oa="function"==typeof $n&&("function"==typeof Symbol&&("symbol"==typeof $n("foo")&&("symbol"==typeof Symbol("bar")&&Un()))),ia=Object.getPrototypeOf||function(e){return e.__proto__},la={},sa="undefined"==typeof Uint8Array?Ai:ia(Uint8Array),ca={"%AggregateError%":"undefined"==typeof AggregateError?Ai:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?Ai:ArrayBuffer,"%ArrayIteratorPrototype%":oa?ia([][Symbol.iterator]()):Ai,"%AsyncFromSyncIteratorPrototype%":Ai,"%AsyncFunction%":la,"%AsyncGenerator%":la,"%AsyncGeneratorFunction%":la,"%AsyncIteratorPrototype%":la,"%Atomics%":"undefined"==typeof Atomics?Ai:Atomics,"%BigInt%":"undefined"==typeof BigInt?Ai:BigInt,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?Ai:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":"undefined"==typeof Float32Array?Ai:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?Ai:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?Ai:FinalizationRegistry,"%Function%":Qn,"%GeneratorFunction%":la,"%Int8Array%":"undefined"==typeof Int8Array?Ai:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?Ai:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?Ai:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":oa?ia(ia([][Symbol.iterator]())):Ai,"%JSON%":"object"==typeof JSON?JSON:Ai,"%Map%":"undefined"==typeof Map?Ai:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&oa?ia((new Map)[Symbol.iterator]()):Ai,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?Ai:Promise,"%Proxy%":"undefined"==typeof Proxy?Ai:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":"undefined"==typeof Reflect?Ai:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?Ai:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&oa?ia((new Set)[Symbol.iterator]()):Ai,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?Ai:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":oa?ia(""[Symbol.iterator]()):Ai,"%Symbol%":oa?Symbol:Ai,"%SyntaxError%":Zn,"%ThrowTypeError%":ra,"%TypedArray%":sa,"%TypeError%":ea,"%Uint8Array%":"undefined"==typeof Uint8Array?Ai:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?Ai:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?Ai:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?Ai:Uint32Array,"%URIError%":URIError,"%WeakMap%":"undefined"==typeof WeakMap?Ai:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?Ai:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?Ai:WeakSet},ua=function e(t){var n,a;return"%AsyncFunction%"===t?n=Gn("async function () {}"):"%GeneratorFunction%"===t?n=Gn("function* () {}"):"%AsyncGeneratorFunction%"===t?n=Gn("async function* () {}"):"%AsyncGenerator%"===t?(a=e("%AsyncGeneratorFunction%"))&&(n=a.prototype):"%AsyncIteratorPrototype%"!==t||(a=e("%AsyncGenerator%"))&&(n=ia(a.prototype)),ca[t]=n},da={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},pa=Kn.call(Function.call,Array.prototype.concat),ma=Kn.call(Function.apply,Array.prototype.splice),fa=Kn.call(Function.call,String.prototype.replace),ha=Kn.call(Function.call,String.prototype.slice),va=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,ga=/\\(\\)?/g,ya=_(function(e){var t=aa("%Function.prototype.apply%"),n=aa("%Function.prototype.call%"),a=aa("%Reflect.apply%",!0)||Kn.call(n,t),r=aa("%Object.getOwnPropertyDescriptor%",!0),o=aa("%Object.defineProperty%",!0),i=aa("%Math.max%");if(o)try{o({},"a",{value:1})}catch(e){o=null}e.exports=function(e){var t=a(Kn,n,arguments);return r&&o&&r(t,"length").configurable&&o(t,"length",{value:1+i(0,e.length-(arguments.length-1))}),t};function l(){return a(Kn,t,arguments)}o?o(e.exports,"apply",{value:l}):e.exports.apply=l});ya.apply;function ba(e){return!(wa&&e&&"object"==typeof e&&Symbol.toStringTag in e)&&"[object Arguments]"===Na(e)}var Ea=ya(aa("String.prototype.indexOf")),Sa=function(e,t){t=aa(e,!!t);return"function"==typeof t&&-1=n.clientWidth&&e>=n.clientHeight}),t=(0s[e]&&!a.escapeWithReference&&(n=Math.min(c[t],s[e]-("right"===e?c.width:c.height))),zr({},t,n)}};return l.forEach(function(e){var t=-1!==["left","top"].indexOf(e)?"primary":"secondary";c=Br({},c,u[t](e))}),e.offsets.popper=c,e},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(e){var t=(o=e.offsets).popper,n=o.reference,a=e.placement.split("-")[0],r=Math.floor,o=(i=-1!==["top","bottom"].indexOf(a))?"right":"bottom",a=i?"left":"top",i=i?"width":"height";return t[o]r(n[o])&&(e.offsets.popper[a]=r(n[o])),e}},arrow:{order:500,enabled:!0,fn:function(e,t){if(!oo(e.instance.modifiers,"arrow","keepTogether"))return e;var n=t.element;if("string"==typeof n){if(!(n=e.instance.popper.querySelector(n)))return e}else if(!e.instance.popper.contains(n))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),e;var a=e.placement.split("-")[0],r=(u=e.offsets).popper,o=u.reference,i=-1!==["left","right"].indexOf(a),l=i?"height":"width",s=i?"Top":"Left",c=s.toLowerCase(),t=i?"left":"top",u=i?"bottom":"right",a=qr(n)[l];return o[u]-ar[u]&&(e.offsets.popper[c]+=o[c]+a-r[u]),e.offsets.popper=Hr(e.offsets.popper),i=o[c]+o[l]/2-a/2,u=wr(e.instance.popper),o=parseFloat(u["margin"+s]),s=parseFloat(u["border"+s+"Width"]),s=i-e.offsets.popper[c]-o-s,s=Math.max(Math.min(r[l]-a,s),0),e.arrowElement=n,e.offsets.arrow=(zr(n={},c,Math.round(s)),zr(n,t,""),n),e},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(c,u){if(Jr(c.instance.modifiers,"inner"))return c;if(c.flipped&&c.placement===c.originalPlacement)return c;var d=Vr(c.instance.popper,c.instance.reference,u.padding,u.boundariesElement,c.positionFixed),p=c.placement.split("-")[0],m=$r(p),f=c.placement.split("-")[1]||"",h=[];switch(u.behavior){case co:h=[p,m];break;case uo:h=so(p);break;case po:h=so(p,!0);break;default:h=u.behavior}return h.forEach(function(e,t){if(p!==e||h.length===t+1)return c;p=c.placement.split("-")[0],m=$r(p);var n=c.offsets.popper,a=c.offsets.reference,r=Math.floor,o="left"===p&&r(n.right)>r(a.left)||"right"===p&&r(n.left)r(a.top)||"bottom"===p&&r(n.top)r(d.right),s=r(n.top)r(d.bottom),a="left"===p&&i||"right"===p&&l||"top"===p&&s||"bottom"===p&&e,n=-1!==["top","bottom"].indexOf(p),r=!!u.flipVariations&&(n&&"start"===f&&i||n&&"end"===f&&l||!n&&"start"===f&&s||!n&&"end"===f&&e),s=!!u.flipVariationsByContent&&(n&&"start"===f&&l||n&&"end"===f&&i||!n&&"start"===f&&e||!n&&"end"===f&&s),s=r||s;(o||a||s)&&(c.flipped=!0,(o||a)&&(p=h[t+1]),s&&(f="end"===(s=f)?"start":"start"===s?"end":s),c.placement=p+(f?"-"+f:""),c.offsets.popper=Br({},c.offsets.popper,Yr(c.instance.popper,c.offsets.reference,c.placement)),c=Kr(c.instance.modifiers,c,"flip"))}),c},behavior:"flip",padding:5,boundariesElement:"viewport",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(e){var t=e.placement,n=t.split("-")[0],a=(i=e.offsets).popper,r=i.reference,o=-1!==["left","right"].indexOf(n),i=-1===["top","left"].indexOf(n);return a[o?"left":"top"]=r[n]-(i?a[o?"width":"height"]:0),e.placement=$r(t),e.offsets.popper=Hr(a),e}},hide:{order:800,enabled:!0,fn:function(e){if(!oo(e.instance.modifiers,"hide","preventOverflow"))return e;var t=e.offsets.reference,n=Xr(e.instance.modifiers,function(e){return"preventOverflow"===e.name}).boundaries;if(t.bottomn.right||t.top>n.bottom||t.rightf.current.clientHeight)});d=de((se(s={},"Collapsible-wrapper",!0),se(s,"Collapsible-wrapper--overlay",!c),s)),e=de(se({},"Collapsible-body",!0)),s=de(se({Collapsible:!0},"Collapsible--overlay",!c),i),p=de((se(i={},"Collapsible-footer",!0),se(i,"Collapsible-footer--seperator",p),i)),i=function(e,t){return function(){if(l){if("mouseenter"===t||"mouseleave"===t){if(c&&n||!a)return;u(!1)}"click"===t&&u(!0),l(e)}}};return le.createElement("div",{"data-test":"DesignSystem-CollapsibleWrapper",className:d,style:{height:r}},le.createElement("div",ce({"data-test":"DesignSystem-Collapsible"},h,{"data-layer":!0,className:s,style:{width:n?t:void 0}}),le.createElement("div",{className:e,"data-test":"DesignSystem-CollapsibleBody",onMouseEnter:i(!0,"mouseenter"),onMouseLeave:i(!1,"mouseleave"),ref:f},o),le.createElement("div",{"data-test":"DesignSystem-Collapsible--Footer",className:p},le.createElement(be,{name:n?"keyboard_arrow_left":"keyboard_arrow_right","data-test":"DesignSystem-Collapsible--FooterIcon",className:"px-5 py-4 my-2 cursor-pointer",onClick:i(!n,"click"),size:16}))))};Ai.displayName="Collapsible",Ai.defaultProps={expanded:!1,hoverable:!0,height:"100%",expandedWidth:"var(--spacing-9)"};function Mi(e){function t(e){if("number"!=typeof e)return e;var t=(n=new Date(e)).getHours(),e=n.getMinutes(),n=t<12?"AM":"PM";return"".concat(t%12||12,":").concat(e," ").concat(n)}var n=e.type,a=e.time,r=e.className,o=e.readText,i=void 0===o?"Read":o,l=void 0===(o=e.failedText)?"Click to retry":o,s=void 0===(o=e.sendingText)?"Sending..":o,c=pe(e),u=de(se({},"d-flex align-items-center mt-3",!0),r),d=de(se({},"ChatMessage-status",!0),r);switch(n){case"failed":return le.createElement("div",ce({},c,{className:u}),le.createElement(be,{name:"error",type:"outlined",appearance:"destructive"}),le.createElement(ye,{appearance:"destructive",size:"small",className:"ml-1"},"Failed"),le.createElement(Wt,{list:[{label:l}],seperator:!0}));case"urgent":return le.createElement("div",ce({},c,{className:u}),le.createElement(be,{name:"notification_important",type:"outlined",appearance:"destructive"}),le.createElement(ye,{appearance:"destructive",size:"small",className:"ml-1"},"Urgent"),a&&le.createElement(Wt,{list:[{label:t(a)}],seperator:!0}));case"read":return le.createElement("div",ce({},c,{className:u}),a&&le.createElement(ye,{appearance:"subtle",size:"small"},t(a)),le.createElement(Wt,{list:[{label:i}],seperator:!0}));case"sending":return le.createElement(ye,ce({},c,{appearance:"subtle",size:"small",className:d}),s);case"sent":return le.createElement(le.Fragment,null,a&&le.createElement(ye,ce({},c,{appearance:"subtle",size:"small",className:d}),t(a)));default:return null}}Mi.displayName="Status";function Fi(e){var t=e.children,n=e.type,a=e.isTyping,r=e.statusType,o=e.withStatus,i=e.onClick,l=e.className,s=pe(e),l=de((se(e={},"Box",!0),se(e,"Box--".concat(n),n),se(e,"Box--typing",a),se(e,"Box--urgent","urgent"===r),se(e,"Box-".concat(n,"--withStatus"),o||a),e),l);return le.createElement("div",ce({},s,{className:l,onClick:i}),t)}Fi.displayName="Box";function Ri(e){var t=e.text,n=e.type,a=e.isTyping,r=e.typingText,o=e.statusType,i=e.className,e=pe(e);return a&&"incoming"===n?le.createElement(ye,ce({},e,{appearance:"subtle",size:"small",className:i}),r):le.createElement(ye,ce({},e,{className:i,appearance:"sending"===o?"subtle":"default"}),t)}Ri.defaultProps={text:"",typingText:"Typing.."},Ri.displayName="MessageText";Da=function(e){var t=e.type,n=e.text,a=e.isTyping,r=e.typingText,o=e.statusOptions,i=e.onClick,l=e.className,s=pe(e),e=(o||{}).type;return le.createElement(Fi,ce({},s,{type:t,className:l,onClick:i,isTyping:a,statusType:e,withStatus:void 0!==o}),le.createElement(Ri,{type:t,text:n,typingText:r,isTyping:a,statusType:e}),!a&&o&&le.createElement(Mi,o))};Da.displayName="ChatMessage";var Li={large:"256px",small:"128px"},zi={large:"l",small:"m"},Bi={large:"large",small:"regular"},Ca=function(e){var t=e.imageSrc,n=e.title,a=e.description,r=e.size,o=e.children,i=e.className,l=pe(e),s=de(se({},"EmptyState",!0),i),i=de((se(e={},"EmptyState-title",!0),se(e,"EmptyState-title--".concat(r),!0),e)),e=de((se(e={},"EmptyState-description",!0),se(e,"EmptyState-description--".concat(r),void 0!==o),e));return le.createElement("div",ce({"data-test":"DesignSystem-EmptyState"},l,{className:s}),le.createElement("img",{src:t,height:Li[r],"data-test":"DesignSystem-EmptyState--Img"}),le.createElement(bt,{"data-test":"DesignSystem-EmptyState--Heading",size:zi[r],className:i},n),le.createElement(ye,{size:Bi[r],className:e,appearance:"subtle","data-test":"DesignSystem-EmptyState--Text"},a),o)};Ca.displayName="EmptyState";var Hi=function(e){var t=e.title,n=e.description,a=e.className,e=pe(e),a=de({"Modal-description":!0},a);return le.createElement("div",ce({"data-test":"DesignSystem-ModalDescription"},e,{className:a}),t&&le.createElement(ye,{weight:"strong","data-test":"DesignSystem-ModalDescription--Title"},t),t&&n&&le.createElement("br",null),n&&le.createElement(ye,{"data-test":"DesignSystem-ModalDescription--Description"},n))};Hi.displayName="ModalDescription";function _i(e){var t=e.type,n=e.totalPages,a=e.onPageChange,r=e.className,o=pe(e),i=ue(le.useState(e.page),2),l=i[0],s=i[1],c=ue(le.useState(!1),2),u=c[0],d=c[1];function p(e){switch(d(!0),e){case"first":s(1);break;case"last":s(n);break;case"prev":1n)return[!1,il(n)];if(e.sizen)return[!1,il(n)]}return[!0,null]},ul=new Map([["avi","video/avi"],["gif","image/gif"],["ico","image/x-icon"],["jpeg","image/jpeg"],["jpg","image/jpeg"],["mkv","video/x-matroska"],["mov","video/quicktime"],["mp4","video/mp4"],["pdf","application/pdf"],["png","image/png"],["zip","application/zip"],["doc","application/msword"],["docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"]]),dl=[".DS_Store","Thumbs.db"];function pl(){return(pl=l(regeneratorRuntime.mark(function e(n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",n.dataTransfer&&n.dataTransfer?function(){return fl.apply(this,arguments)}(n.dataTransfer,n.type):(null!==(t=n).target&&t.target.files?vl(t.target.files):[]).map(function(e){return ml(e)}));case 1:case"end":return e.stop()}var t},e)}))).apply(this,arguments)}function ml(e,t){var n,a=function(e){var t=e.name;t&&-1!==t.lastIndexOf(".")&&!e.type&&(t=t.split(".").pop().toLowerCase(),(t=ul.get(t))&&Object.defineProperty(e,"type",{value:t,writable:!1,configurable:!1,enumerable:!0}));return e}(e);return"string"!=typeof a.path&&(n=e.webkitRelativePath,Object.defineProperty(a,"path",{value:"string"==typeof t?t:"string"==typeof n&&0this.state.offset&&this.updateOffset(t)}},{key:"updateOffset",value:function(e){var t=e.offset-this.state.offset;if(this.listRef){for(var n=this.listRef,a=n.querySelectorAll(".VS-item"),r=0,o=e.offset,i=Math.min(this.state.offset,this.props.buffer),t=i+t,l=Math.min(a.length,t)-1;i<=l;l--){if(!as(n,a[l]))break;o--,r+=a[l].clientHeight}a.lengthe.length)&&(t=e.length);for(var n=0,a=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[a++]}},e:function(e){throw e},f:t}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,o=!0,i=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){i=!0,r=e},f:function(){try{o||null==n.return||n.return()}finally{if(i)throw r}}}}function E(e,t){return t?"number"!=typeof t?t:(t=I(e,t),T(e,t)):""}function S(e,t){function n(e,t,n){var a=[31,28,31,30,31,30,31,31,30,31,30,31];return(n%400==0||n%100!=0&&n%4==0)&&(a[1]=29),t<=12&&e<=a[t-1]}if(e)switch(t){case"dd/mm/yyyy":var a=e.split("/");return n(+a[0]||1,+a[1]||1,+a[2]||1900);case"mm/dd/yyyy":a=e.split("/");return n(+a[1]||1,+a[0]||1,+a[2]||1900);case"yyyy/mm/dd":var r=e.split("/");return n(+r[2]||1,+r[1]||1,+r[0]||1900);case"dd-mm-yyyy":r=e.split("-");return n(+r[0]||1,+r[1]||1,+r[2]||1900);case"mm-dd-yyyy":var o=e.split("-");return n(+o[1]||1,+o[0]||1,+o[2]||1900);case"yyyy-mm-dd":o=e.split("-");return n(+o[2]||1,+o[1]||1,+o[0]||1900);default:return!1}return!1}function w(e,t){var e=(n=O(t,e)).hours,n=n.minutes;return(N(t)?e<=12:e<24)&&n<=60}function C(e){return!("string"==typeof e&&/[^0-9]/.test(e)||"number"==typeof e&&(e<=0||e-Math.floor(e)!=0))}var D=(De(_e={},"hh:mm","--:--"),De(_e,"hh:mm AM","--:-- AM"),_e),N=function(e){return"hh:mm AM"===e},x=function(e){return{hrs:e%12||12,AMPM:e<12?"AM":"PM"}},k=function(e,t){var n=e;return t?("PM"===t&&e<12?n=e+12:"AM"===t&&12===e&&(n=e-12),n):e},I=function(e,t){var n=new Date(t),a=n.getHours(),t=N(e)?x(a).hrs:a,a=N(e)?x(a).AMPM:"";return{hours:t,minutes:n.getMinutes(),seconds:n.getSeconds(),am_pm:a}},O=function(e,t){var n=0,a=0,r=e.length,o=t.length,i=e.substring(r-2,r),l="AM"===i||"PM"===i,i=l?t.substring(o-2,o):"",t=l?t.substring(0,o-3):t,e=l?e.substring(0,r-3):e,s=t.split(":");return e.split(":").forEach(function(e,t){switch(e){case"hh":n=+s[t]||0;break;case"mm":a=+s[t]||0}}),{hours:n,minutes:a,am_pm:i}},T=function(e,t){var n=t.hours,a=t.minutes,r=t.am_pm,t=e.split(" ")[0].split(":"),o="";return t.forEach(function(e,t){switch(e){case"hh":o+=n<10?"0".concat(n):n;break;case"mm":o+=a<10?"0".concat(a):a}t!==e.length-1&&(o+=":")}),o+=N(e)&&r?" ".concat(r):""},U=function(e){for(var t=arguments.length,n=new Array(1t?Math.min(o.length-t,99):0,e={backgroundColor:"".concat(n),boxShadow:"0 0 0 calc(var(--spacing-xs) + var(--spacing-s)) ".concat(n)},n={boxShadow:"0 0 0 var(--spacing-s) ".concat(n)},n="tiny"===l?Ce(Ce({},e),n):e,e=3===o.length?o:o.slice(0,t),i=Ie(De({},"AvatarGroup",!0),i),f=Ie(De({},"AvatarGroup-Popper",!0),f);return we.createElement("div",Ne({"data-test":"DesignSystem-AvatarGroup"},a,{className:"".concat(i," d-inline-flex")}),we.createElement(J,{size:l,avatarList:e,avatarStyle:n,tooltipPosition:r}),0/?~][0-9]*$/.test(e)}function St(e){var t=e.split(Vt),e=yt(t[0]);return{hour:Ft(e),min:((""!==t[1]?vt(t[1]):"00")+"0").slice(0,2)}}function wt(e,t){var n=e.length,a=parseInt(e,10),r=e.slice(0,2),o="00",i="00";switch(n){case 1:o="0"+e;break;case 2:a<=24||t&&a<=12?o=Ft(e):(o="0"+e[0],i=vt(e[1]+"0"));break;case 3:o="0"+e[0],i=vt(e.slice(1));break;case 4:o=t?(parseInt(r,10)%12).toString():yt(r),i=vt(e.slice(2));break;default:i=o="-1"}return{hour:o,min:i}}function Ct(e,t){var n,a,r={hour:"00",min:"00"};return bt(t)?(n=wt(t),r=parseInt(n.hour)<=12&&0/?~][0-9]+[ AaMmPp]+$/.test(t)&&(a=t.replace(/[\saApPmM]/g,""),bt(a)?r=wt(a,!0):Et(a)&&(r=St(a)),r.hour=Dt(r.hour,t)),r}function Dt(e,t){return"12"===e&&Mt(t)?e="00":Lt(t)&&"12"!==e&&(e=(parseInt(e,10)+12).toString()),e}function Nt(e,t){var n="".concat(t.hour,":").concat(t.min),a=jt(),r=Ht(a,n),a=Ut(e,a),n=Ut(e,n);return r&&n/?~]/,Ut=function(e,t){for(var n=0,a={hour:100,mins:100},r=0;rt.value?1:t.value>e.value?-1:0})},Yt=function(e,t){e.scrollTo(0,t)};Rt.defaultProps={timeFormat:"12-Hour",interval:15},Rt.displayName="TimePickerWithSearch";function $t(e){var t=e.validators,o=e.inputOptions,i=e.inputFormat,l=e.outputFormat,s=e.onTimeChange,n=e.time,a=e.error,c=(u=xe(we.useState(n),2))[0],r=u[1],u=(e=xe(we.useState(!1),2))[0],d=e[1],p=void 0===(e=o.placeholderChar)?"_":e;return we.useEffect(function(){var e=E(i,c),e=void 0===n&&e.includes(p)?c:n;r(e)},[n]),e=M[i],we.createElement(On,Ne({placeholder:D[i],placeholderChar:p},o,{mask:e,value:c?E(i,c):u?On.utils.getDefaultValue(e,p):"",validators:function(e){return U(t,e,i)},onChange:function(e){var t=1r.bottom&&n?Yt(n,a.offsetTop-r.height+i):o.topb.staticLimit:h,n=Ot(h,u,v)?b.getUnSelectedOptions(l,c):l,a=""===u?b.getSelectedOptions(l,c):[],r=""===u?s:b.state.optionsLength,o=b.getDisabledOptions(n.slice(0,b.staticLimit)),i=f,i=0===r&&""===u?"DEFAULT":""!==u?"NO_RECORDS_FOUND":"FAILED_TO_FETCH",b.setState(Ce(Ce({},b.state),{},{errorType:g?i:f,scrollIndex:e.scrollToIndex||0,optionsLength:r,loading:!1,async:h,searchedOptionsLength:s,options:n.slice(0,b.staticLimit),tempSelected:c?a:p,previousSelected:c?a:m,selected:Ot(h,u,v)?a:[],triggerLabel:b.updateTriggerLabel(c?a:p),selectAll:!h&&c?At(a,r,o.length):d})),(h||y)&&null!==(t=fn.current)&&void 0!==t&&t.focus())}).catch(function(){b.setState({errorType:g?"FAILED_TO_FETCH":f,loading:!1,options:[]})})}),De($(b),"updateSearchTerm",function(e){b.setState(Ce(Ce({},b.state),{},{loading:!0,searchInit:!0,searchTerm:e,errorType:"NO_RECORDS_FOUND"}))}),De($(b),"updateOnPopperToggle",function(){var e=b.props,t=e.withCheckbox,n=e.showApplyButton,a=e.onClose,r=e.name,o=e.selected,i=void 0===o?[]:o,l=b.state,s=l.previousSelected,c=l.tempSelected,u=l.optionsLength,d=l.async,p=l.loading,m=l.searchTerm,e=l.options,o=(It(b.props.open)?b.props:b.state).open,l=b.getDisabledOptions(e).length;t&&n&&(e=kt(b.props.selected)?i:s,b.setState({tempSelected:e,selectAll:At(e,u,l),triggerLabel:b.updateTriggerLabel(e)})),It(b.props.open)&&b.setState({open:o}),o&&(c=Ot(d,m,t)&&!xt(b.state.selected,c),b.setState({loading:c||p||""!==m,searchInit:""!==m,searchTerm:""}),c&&b.updateOptions(!1)),a&&!o&&(s=(t&&n?kt(b.props.selected)?i:s:b.state.tempSelected).map(function(e){return e.value}),b.debounceOnClose(s,r))}),De($(b),"debounceOnClose",Zt(300,function(e,t){var n=b.props.onClose;n&&n(e,t)})),De($(b),"updateTriggerLabel",function(){var e=0b.staticLimit,e=t?[]:b.getSelectedOptions(l,!0),a=b.getDisabledOptions(l);return b.state={async:t,optionsLength:s,open:i,searchInit:!1,searchedOptionsLength:s,optionsApplied:!1,options:l||[],loading:t||o,searchTerm:"",tempSelected:e,previousSelected:e,selected:Ot(t,"",r)?n:[],triggerLabel:b.updateTriggerLabel(e,s),selectAll:At(e,s,a.length),errorType:"DEFAULT"},b}return f(u,[{key:"componentDidMount",value:function(){this.state.async&&this.updateOptions(!0)}},{key:"componentDidUpdate",value:function(e,t){var n,a,r,o,i,l;this.state.async||(n=(a=this.props).loading,i=a.fetchOptions,o=a.options,r=a.withSearch,o=this.getDisabledOptions(a=void 0===o?[]:o).length,e.loading===n||i||(a.length>this.staticLimit?this.updateOptions(!0,!0):(i=this.getSelectedOptions(a,!0),this.setState(Ce(Ce({},this.state),{},{options:a,loading:n,tempSelected:i,previousSelected:i,optionsLength:a.length,searchedOptionsLength:a.length,triggerLabel:this.updateTriggerLabel(i),selectAll:At(i,this.state.optionsLength,o)})),r&&null!==(l=fn.current)&&void 0!==l&&l.focus()))),void 0!==this.props.selected&&e.selected!==this.props.selected&&e.loading===this.props.loading&&(l=!this.props.withCheckbox,this.updateSelectedOptions(this.props.selected,l,!0)),t.searchTerm!==this.state.searchTerm&&this.debounceSearch(),e.open===this.props.open&&t.open===this.state.open||It(this.props.open)&&this.props.open===this.state.open||this.updateOnPopperToggle()}},{key:"render",value:function(){var e=this.state,t=e.options,n=e.async,a=e.open,r=e.searchTerm,o=e.searchInit,i=e.loading,l=e.searchedOptionsLength,s=e.tempSelected,c=e.selectAll,u=e.triggerLabel,d=e.previousSelected,p=e.scrollIndex,m=e.errorType,f=this.props,h=f.withSelectAll,g=void 0===h||h,v=f.withCheckbox,e=this.props,h=e.triggerOptions,f=void 0===h?{}:h;e.selected;h=e.tabIndex,e=V(e,mn),l-=t.length,v=h||(Tt(r,l,g,v)?0:t.findIndex(function(e){return!e.disabled}));return we.createElement(cn,Ne({listOptions:t,inputRef:fn,remainingOptions:l,firstEnabledOption:v,loadingOptions:i,async:n,searchInit:o,dropdownOpen:a,searchTerm:r,triggerLabel:u,tempSelected:s,previousSelected:d,selected:this.state.selected,applyOptions:this.onApplyOptions,cancelOptions:this.onCancelOptions,toggleDropdown:this.onToggleDropdown,onClearOptions:this.onClearOptions,onSelect:this.onSelect,selectAll:c,onSearchChange:this.updateSearchTerm,onOptionSelect:this.onOptionSelect,onSelectAll:this.onSelectAll,customTrigger:f.customTrigger,scrollIndex:p,updateOptions:this.reload,errorType:m},e))}}]),u}();De(hn,"defaultProps",{triggerOptions:{},options:[],closeOnSelect:!0,staticLimit:50,searchDebounceDuration:300});var gn=["appearance","size","children","className","color"],vn={s:"h5",m:"h4",l:"h3",xl:"h2",xxl:"h1"},yn=function(e){var t=e.appearance,n=e.size,a=e.children,r=e.className,o=e.color,i=V(e,gn),r=Ie((De(e={Heading:!0},"Heading--".concat(n),n),De(e,"Heading--".concat(t),!o&&t),De(e,"color-".concat(o),o),e),r);return we.createElement(Je,Ne({"data-test":"DesignSystem-Heading"},i,{className:r,componentType:vn[n]}),a)};yn.displayName="Heading",yn.defaultProps={appearance:"default",size:"m"};function bn(e){var t=e.className,n=e.iconType,a=V(e,En),e=Ie((De(e={},"ActionButton",!0),De(e,"".concat(t),t),e));return we.createElement($e,Ne({className:e,type:n,"data-test":"DesignSystem-Input-ActionButton"},a))}var En=["className","iconType"];bn.displayName="ActionButton",bn.defaultProps={size:16,type:"rounded"};var Sn=["size","type","minWidth","defaultValue","name","placeholder","value","icon","inlineLabel","required","error","info","onChange","onClick","onClear","onBlur","onFocus","onPaste","actionIcon","className","autoFocus","disabled","readOnly","iconType"],wn={tiny:12,regular:16,large:20},Cn=we.forwardRef(function(e,t){var n=e.size,a=void 0===n?"regular":n,r=e.type,o=void 0===r?"text":r,i=e.minWidth,l=void 0===i?"number"!==o?256:void 0:i,s=e.defaultValue,c=e.name,u=e.placeholder,d=e.value,p=e.icon,m=e.inlineLabel,f=e.required,h=e.error,g=e.info,v=e.onChange,y=e.onClick,b=e.onClear,E=e.onBlur,S=e.onFocus,w=e.onPaste,C=e.actionIcon,D=e.className,N=e.autoFocus,x=e.disabled,k=e.readOnly,I=e.iconType,n=V(e,Sn),O=we.useRef(null),r=xe(we.useState(!d),2),i=r[0],T=r[1];we.useImperativeHandle(t,function(){return O.current}),we.useEffect(function(){var e;N&&null!==(e=O.current)&&void 0!==e&&e.focus({preventScroll:!0})},[]);r=Oe(e),e=Ie((De(t={},"Input",!0),De(t,"Input--".concat(a),a),De(t,"Input--disabled",x||k),De(t,"Input--error",h),t),D),D=Ie((De(t={},"Input-input",!0),De(t,"Input-input--".concat(a),a),t)),i=Ie((De(t={},"Input-icon",!0),De(t,"Input-icon--left",!0),De(t,"Input-icon--inputBlank",i),De(t,"Input-icon--error",h),t)),t=Ie((De(h={},"Input-icon",!0),De(h,"Input-iconWrapper--right",!0),h)),h=we.createElement("div",{className:t,tabIndex:0},we.createElement($e,{name:"info",size:wn[a],className:"Input-icon--right"}));return we.createElement("div",{"data-test":"DesignSystem-InputWrapper",className:e,style:{minWidth:l},onClick:function(){var e;return null===(e=O.current)||void 0===e?void 0:e.focus()},role:"presentation",onBlur:function(){var e;return T(!(null!==(e=O.current)&&void 0!==e&&e.value))}},m&&we.createElement("div",{className:"Input-inlineLabel"},we.createElement(Qe,{appearance:"subtle"},m)),"tiny"!==a&&p&&we.createElement("div",{className:i},we.createElement($e,{name:p,size:wn[a],type:I})),we.createElement("input",Ne({"data-test":"DesignSystem-Input"},r,n,{ref:O,name:c,type:o,defaultValue:s,placeholder:u,className:D,value:d,required:f,disabled:x,readOnly:k,onChange:v,onBlur:E,onClick:y,onFocus:S,onPaste:w,tabIndex:k?-1:void 0})),x?"":g?we.createElement(hl,{position:"bottom",tooltip:g},h):C&&(d||s)?C:b&&(d||s)&&we.createElement("div",{className:t},we.createElement($e,{"data-test":"DesignSystem-Input--closeIcon",onClick:function(e){var t;null!==(t=O.current)&&void 0!==t&&t.focus({preventScroll:!0}),b(e)},name:"close",size:wn[a],className:"Input-icon--right"})))});Cn.displayName="Input",Object.assign(Cn,{ActionButton:bn});var Dn=["size","defaultValue","name","placeholder","icon","prefix","suffix","error","min","max","onChange","onClick","onBlur","onFocus","className","autoFocus","disabled","readOnly","value","showActionButton","onKeyDown","iconType"],Nn={regular:16,large:20},xn=we.forwardRef(function(e,t){var n=e.size,a=void 0===n?"regular":n,r=e.defaultValue,o=e.name,i=e.placeholder,l=e.icon,s=e.prefix,c=e.suffix,u=e.error,d=e.min,p=e.max,m=e.onChange,f=e.onClick,h=e.onBlur,g=e.onFocus,v=e.className,y=e.autoFocus,b=e.disabled,E=e.readOnly,S=e.value,w=e.showActionButton,C=void 0===w||w,D=e.onKeyDown,N=e.iconType,x=V(e,Dn),k=we.useRef(null),I=void 0===S,O=xe(we.useState(S||r),2),T=O[0],A=O[1];we.useImperativeHandle(t,function(){return k.current}),we.useEffect(function(){var e;y&&null!==(e=k.current)&&void 0!==e&&e.focus({preventScroll:!0})},[]),we.useEffect(function(){void 0!==S&&A(S)},[S]);var P=Oe(e),w=Ie((De(n={},"MetricInput",!0),De(n,"MetricInput--".concat(a),a),De(n,"MetricInput--disabled",b||E),De(n,"MetricInput--error",u),n),v),t=Ie((De(O={},"MetricInput-input",!0),De(O,"MetricInput-input--".concat(a),a),De(O,"mr-4",!c&&!C&&"regular"===a),De(O,"mr-6",!c&&!C&&"large"===a),O)),u=Ie((De(e={},"MetricInput-icon",!0),De(e,"MetricInput-icon--".concat(a),a),e)),v=Ie((De(n={},"mr-4","regular"===a),De(n,"mr-5","regular"!==a),n)),e=Ie((De(O={},"ml-4 mr-3","regular"===a),De(O,"mx-5","regular"!==a),O)),O=Ie((De(n={},"p-0",!0),De(n,"MetricInput-arrowIcon--".concat(a),a),De(n,"ml-3",!0),n)),R=function(e,t){var n=Number(T||0),a=(null===(a=n.toString().split(".")[1])||void 0===a?void 0:a.length)||0;b||E||!("down"===t?void 0!==d&&d=h.length)return a;if(n>=e.length)return A.current={start:t,end:t},a;var i=h[t];return C(t)?(e[n].match(i)?a+=e[n]:a+=m,o++):a+=i,a+=_(e,r,o)},[h,m,C]),W=we.useCallback(function(){A.current=F(),T.current=window.requestAnimationFrame(W)},[A.current,F]),j=function(e){var t=n.placeholder||"dd/mm/yyyy";return"yyyy"===t.substring(0,4)?e&&e[4]===t[4]&&e[7]===t[7]:e&&e[2]===t[2]&&e[5]===t[5]},r=we.useCallback(function(e){var t,n=null===(i=e.currentTarget)||void 0===i?void 0:i.value,a=F(),r=Math.min(A.current.start,a.start),o=a.end,i=r,l="",s=0,o=n.slice(r,o),l=_(o,r),o=R;0!==o.length||"parent-TimePicker"!==E&&"parent-DatePicker"!==E||(o=k),t=l.length,a.end>A.current.end?s=t?L(A.current):0:n.length=n.length?(s=!!(d=Ja(o,c)))&&"get"in d&&!("originalValue"in d.get)?d.get:o[c]:(s=Ka(o,c),o[c]),s&&!i&&(ar[u]=o)}}return o}var er=Ja?function(){try{return Za}catch(e){try{return Ja(arguments,"callee").get}catch(e){return Za}}}():Za,r="function"==typeof Va&&("function"==typeof Symbol&&("symbol"==typeof Va("foo")&&("symbol"==typeof Symbol("bar")&&Ba()))),tr=Object.getPrototypeOf||function(e){return e.__proto__},nr={},Va="undefined"==typeof Uint8Array?Zr:tr(Uint8Array),ar={"%AggregateError%":"undefined"==typeof AggregateError?Zr:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?Zr:ArrayBuffer,"%ArrayIteratorPrototype%":r?tr([][Symbol.iterator]()):Zr,"%AsyncFromSyncIteratorPrototype%":Zr,"%AsyncFunction%":nr,"%AsyncGenerator%":nr,"%AsyncGeneratorFunction%":nr,"%AsyncIteratorPrototype%":nr,"%Atomics%":"undefined"==typeof Atomics?Zr:Atomics,"%BigInt%":"undefined"==typeof BigInt?Zr:BigInt,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?Zr:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":"undefined"==typeof Float32Array?Zr:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?Zr:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?Zr:FinalizationRegistry,"%Function%":$a,"%GeneratorFunction%":nr,"%Int8Array%":"undefined"==typeof Int8Array?Zr:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?Zr:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?Zr:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":r?tr(tr([][Symbol.iterator]())):Zr,"%JSON%":"object"==typeof JSON?JSON:Zr,"%Map%":"undefined"==typeof Map?Zr:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&r?tr((new Map)[Symbol.iterator]()):Zr,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?Zr:Promise,"%Proxy%":"undefined"==typeof Proxy?Zr:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":"undefined"==typeof Reflect?Zr:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?Zr:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&r?tr((new Set)[Symbol.iterator]()):Zr,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?Zr:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":r?tr(""[Symbol.iterator]()):Zr,"%Symbol%":r?Symbol:Zr,"%SyntaxError%":Ya,"%ThrowTypeError%":er,"%TypedArray%":Va,"%TypeError%":Xa,"%Uint8Array%":"undefined"==typeof Uint8Array?Zr:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?Zr:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?Zr:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?Zr:Uint32Array,"%URIError%":URIError,"%WeakMap%":"undefined"==typeof WeakMap?Zr:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?Zr:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?Zr:WeakSet},rr=function e(t){var n,a;return"%AsyncFunction%"===t?n=Wa("async function () {}"):"%GeneratorFunction%"===t?n=Wa("function* () {}"):"%AsyncGeneratorFunction%"===t?n=Wa("async function* () {}"):"%AsyncGenerator%"===t?(a=e("%AsyncGeneratorFunction%"))&&(n=a.prototype):"%AsyncIteratorPrototype%"!==t||(a=e("%AsyncGenerator%"))&&(n=tr(a.prototype)),ar[t]=n},or={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},ir=qa.call(Function.call,Array.prototype.concat),lr=qa.call(Function.apply,Array.prototype.splice),sr=qa.call(Function.call,String.prototype.replace),cr=qa.call(Function.call,String.prototype.slice),ur=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,dr=/\\(\\)?/g,pr=z(function(e){var t=Qa("%Function.prototype.apply%"),n=Qa("%Function.prototype.call%"),a=Qa("%Reflect.apply%",!0)||qa.call(n,t),r=Qa("%Object.getOwnPropertyDescriptor%",!0),o=Qa("%Object.defineProperty%",!0),i=Qa("%Math.max%");if(o)try{o({},"a",{value:1})}catch(e){o=null}e.exports=function(e){var t=a(qa,n,arguments);return r&&o&&r(t,"length").configurable&&o(t,"length",{value:1+i(0,e.length-(arguments.length-1))}),t};function l(){return a(qa,t,arguments)}o?o(e.exports,"apply",{value:l}):e.exports.apply=l});pr.apply;function mr(e,t){return"function"==typeof(t=Qa(e,!!t))&&-1=n.clientWidth&&e>=n.clientHeight}),t=(0s[e]&&!a.escapeWithReference&&(n=Math.min(c[t],s[e]-("right"===e?c.width:c.height))),Oo({},t,n)}};return l.forEach(function(e){var t=-1!==["left","top"].indexOf(e)?"primary":"secondary";c=To({},c,u[t](e))}),e.offsets.popper=c,e},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(e){var t=(o=e.offsets).popper,n=o.reference,a=e.placement.split("-")[0],r=Math.floor,o=(i=-1!==["top","bottom"].indexOf(a))?"right":"bottom",a=i?"left":"top",i=i?"width":"height";return t[o]r(n[o])&&(e.offsets.popper[a]=r(n[o])),e}},arrow:{order:500,enabled:!0,fn:function(e,t){if(!Zo(e.instance.modifiers,"arrow","keepTogether"))return e;var n=t.element;if("string"==typeof n){if(!(n=e.instance.popper.querySelector(n)))return e}else if(!e.instance.popper.contains(n))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),e;var a=e.placement.split("-")[0],r=(u=e.offsets).popper,o=u.reference,i=-1!==["left","right"].indexOf(a),l=i?"height":"width",s=i?"Top":"Left",c=s.toLowerCase(),t=i?"left":"top",u=i?"bottom":"right",a=Ho(n)[l];return o[u]-ar[u]&&(e.offsets.popper[c]+=o[c]+a-r[u]),e.offsets.popper=Ao(e.offsets.popper),i=o[c]+o[l]/2-a/2,u=fo(e.instance.popper),o=parseFloat(u["margin"+s]),s=parseFloat(u["border"+s+"Width"]),s=i-e.offsets.popper[c]-o-s,s=Math.max(Math.min(r[l]-a,s),0),e.arrowElement=n,e.offsets.arrow=(Oo(n={},c,Math.round(s)),Oo(n,t,""),n),e},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(c,u){if(Vo(c.instance.modifiers,"inner"))return c;if(c.flipped&&c.placement===c.originalPlacement)return c;var d=Lo(c.instance.popper,c.instance.reference,u.padding,u.boundariesElement,c.positionFixed),p=c.placement.split("-")[0],m=Bo(p),f=c.placement.split("-")[1]||"",h=[];switch(u.behavior){case ti:h=[p,m];break;case ni:h=ei(p);break;case ai:h=ei(p,!0);break;default:h=u.behavior}return h.forEach(function(e,t){if(p!==e||h.length===t+1)return c;p=c.placement.split("-")[0],m=Bo(p);var n=c.offsets.popper,a=c.offsets.reference,r=Math.floor,o="left"===p&&r(n.right)>r(a.left)||"right"===p&&r(n.left)r(a.top)||"bottom"===p&&r(n.top)r(d.right),s=r(n.top)r(d.bottom),a="left"===p&&i||"right"===p&&l||"top"===p&&s||"bottom"===p&&e,n=-1!==["top","bottom"].indexOf(p),r=!!u.flipVariations&&(n&&"start"===f&&i||n&&"end"===f&&l||!n&&"start"===f&&s||!n&&"end"===f&&e),s=!!u.flipVariationsByContent&&(n&&"start"===f&&l||n&&"end"===f&&i||!n&&"start"===f&&e||!n&&"end"===f&&s),s=r||s;(o||a||s)&&(c.flipped=!0,(o||a)&&(p=h[t+1]),s&&(f="end"===(s=f)?"start":"start"===s?"end":s),c.placement=p+(f?"-"+f:""),c.offsets.popper=To({},c.offsets.popper,_o(c.instance.popper,c.offsets.reference,c.placement)),c=jo(c.instance.modifiers,c,"flip"))}),c},behavior:"flip",padding:5,boundariesElement:"viewport",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(e){var t=e.placement,n=t.split("-")[0],a=(i=e.offsets).popper,r=i.reference,o=-1!==["left","right"].indexOf(n),i=-1===["top","left"].indexOf(n);return a[o?"left":"top"]=r[n]-(i?a[o?"width":"height"]:0),e.placement=Bo(t),e.offsets.popper=Ao(a),e}},hide:{order:800,enabled:!0,fn:function(e){if(!Zo(e.instance.modifiers,"hide","preventOverflow"))return e;var t=e.offsets.reference,n=Wo(e.instance.modifiers,function(e){return"preventOverflow"===e.name}).boundaries;if(t.bottomn.right||t.top>n.bottom||t.righte.clientWidth}var ml=["children","tooltip","showTooltip","showOnTruncation","elementRef"],fl={bottom:"bottom",top:"top","top-start":"top","top-end":"top","bottom-start":"bottom","bottom-end":"bottom",left:"left",right:"right"},hl=function(e){var t=e.children,n=e.tooltip,a=e.showTooltip,r=e.showOnTruncation,o=e.elementRef,i=V(e,ml),l=we.useRef(null),s=xe(we.useState(!1),2),c=s[0],u=s[1];we.useEffect(function(){u(pl(o||l))},[l,o,t]);s=o||!we.isValidElement(t)?t:we.cloneElement(t,{ref:l});if(!a)return t;n=we.createElement("div",{className:"Tooltip"},we.createElement(Qe,{className:"Tooltip-text",appearance:"white"},n));return r?c?we.createElement(Xi,Ne({trigger:s,on:"hover",offset:"medium"},i,{animationClass:{open:"Tooltip-animation-open-".concat(fl[e.position]),close:"Tooltip-animation-close-".concat(fl[e.position])},className:"Tooltip-container"}),n):s:we.createElement(Xi,Ne({trigger:t,on:"hover",offset:"medium"},i,{animationClass:{open:"Tooltip-animation-open-".concat(fl[e.position]),close:"Tooltip-animation-close-".concat(fl[e.position])},className:"Tooltip-container"}),n)};hl.useAutoTooltip=function(){return{detectTruncation:pl}},hl.defaultProps=Object.assign({},H(Xi.defaultProps,["trigger","on","open","offset","onToggle","dark","customStyle","closeOnBackdropClick","hideOnReferenceEscape","closeOnScroll"]),{hoverable:!1,showTooltip:!0,showOnTruncation:!1});function gl(e){var t=e.dimension,n=e.primaryButtonAppearance,a=e.secondaryButtonAppearance,r=e.open,o=e.onClose,i=e.heading,l=e.title,s=e.description,c=e.primaryButtonLabel,u=e.primaryButtonCallback,d=e.secondaryButtonLabel,p=e.secondaryButtonCallback,e=Oe(e);return we.createElement(Nl,Ne({"data-test":"DesignSystem-Dialog"},e,{open:r,dimension:t,onClose:o,headerOptions:{heading:i},footer:we.createElement(we.Fragment,null,we.createElement(Te,{type:"button","data-test":"DesignSystem-Dialog--SecondaryButton",appearance:a,onClick:p},d),we.createElement(Te,{type:"button",className:"ml-4","data-test":"DesignSystem-Dialog--PrimaryButton",appearance:n,onClick:u},c))}),we.createElement(ql,{title:l,description:s}))}gl.displayName="Dialog",gl.defaultProps={dimension:"small",primaryButtonAppearance:"primary",secondaryButtonAppearance:"basic"};function vl(e){var n=e.open,t=e.className,a=e.children,r=e.actions,e=Oe(e),t=Ie({OverlayFooter:!0},t),o=we.createRef();return we.useEffect(function(){var e,t;n&&o.current&&(e=null===(e=o.current)||void 0===e?void 0:e.querySelectorAll(".Button--basic"),(t=e[e.length-1])&&window.requestAnimationFrame(function(){return t.focus({preventScroll:!0})}))},[n]),r?we.createElement("div",Ne({ref:o},e,{className:t}),r.map(function(e,t){e.label;e=V(e,yl);return we.createElement(Te,Ne({type:"button"},e,{key:t}))})):we.createElement("div",Ne({"data-test":"DesignSystem-OverlayFooter",ref:o},e,{className:t}),a)}var yl=["label"];vl.displayName="OverlayFooter";function bl(e){var t=e.className,n=e.heading,a=e.subHeading,r=e.backButton,o=e.backIcon,i=e.backIconCallback,l=e.backButtonCallback,s=e.headingClass,c=Oe(e),e=Ie(De({OverlayHeader:!0},"OverlayHeader--withBackButton",r||o),t),t=Ie((De(t={},"OverlayHeader-subheading",!0),De(t,"OverlayHeader-subheading--withBackButton",r||o),t));return we.createElement("div",Ne({"data-test":"DesignSystem-OverlayHeader"},c,{className:e}),we.createElement("div",{className:"OverlayHeader-headerWrapper"},(r||o)&&we.createElement(Te,{"data-test":"DesignSystem-OverlayHeader--Button",appearance:"transparent",className:"mr-4",icon:"arrow_back",largeIcon:!0,onClick:l||i}),n&&we.createElement(yn,{className:s,"data-test":"DesignSystem-OverlayHeader--heading"},n)),a&&we.createElement(Qe,{"data-test":"DesignSystem-OverlayHeader--Subheading",appearance:"subtle",className:t},a))}bl.displayName="OverlayHeader";function El(e){var t=e.children,n=e.className,e=Oe(e),n=Ie({OverlayBody:!0},n);return we.createElement("div",Ne({"data-test":"DesignSystem-OverlayBody"},e,{className:n}),t)}El.defaultProps={stickFooter:!0,withFooter:!0},El.displayName="OverlayBody";function Sl(){var e=document.querySelector(".Overlay-wrapper");return null===e&&((e=document.createElement("div")).classList.add("Overlay-wrapper"),document.body.appendChild(e)),e}function wl(e){var t=e.containerClassName,n=e.elementRef;if(null!==(e=e.element)){t=e.querySelectorAll(t);if(!(t.length<1)){var t=Array.from(t).filter(function(e){return e!==n.current}),a=-1;return t.forEach(function(e){e=parseInt(window.getComputedStyle(e).zIndex||"0",10);a=Math.max(a,e+10)}),0h.current.clientHeight)}),p=Ie((De(c={},"Collapsible-wrapper",!0),De(c,"Collapsible-wrapper--overlay",!u),c)),c=Ie((De(e={},"Collapsible-body",!0),De(e,"overflow-hidden",!n&&a),e)),e=Ie((De(e={Collapsible:!0},"Collapsible--overlay",!u),De(e,"Collapsible--shadow",!u&&n),e),i),i=Ie((De(i={},"Collapsible-footer",!0),De(i,"Collapsible-footer--seperator",m),i)),we.createElement("div",{"data-test":"DesignSystem-CollapsibleWrapper",className:p,style:{height:r}},we.createElement("div",Ne({"data-test":"DesignSystem-Collapsible"},g,{"data-layer":!0,className:e,style:{width:n?t:void 0}}),we.createElement("div",{className:c,"data-test":"DesignSystem-CollapsibleBody",onMouseEnter:v(!0,"mouseenter"),onMouseLeave:v(!1,"mouseleave"),ref:h},o),s&&we.createElement("div",{role:"button",tabIndex:0,className:i,"data-test":"DesignSystem-Collapsible--Footer",onClick:v(!n,"click"),onKeyDown:v(!n,"click")},we.createElement($e,{name:n?"keyboard_arrow_left":"keyboard_arrow_right","data-test":"DesignSystem-Collapsible--FooterIcon",className:"px-6 py-4 my-2 cursor-pointer",size:16}))))}Tl.displayName="Collapsible",Tl.defaultProps={expanded:!1,hoverable:!0,height:"100%",expandedWidth:"240px",withTrigger:!0};function Al(e){function t(e){if("number"!=typeof e)return e;var t=(n=new Date(e)).getHours(),e=n.getMinutes(),n=t<12?"AM":"PM";return"".concat(t%12||12,":").concat(e," ").concat(n)}var n=e.type,a=e.time,r=e.className,o=e.readText,i=void 0===o?"Read":o,l=void 0===(o=e.failedText)?"Click to retry":o,s=void 0===(o=e.sendingText)?"Sending..":o,c=Oe(e),u=Ie(De({},"d-flex align-items-center mt-3",!0),r),d=Ie(De({},"ChatMessage-status",!0),r);switch(n){case"failed":return we.createElement("div",Ne({},c,{className:u}),we.createElement($e,{name:"error",type:"outlined",appearance:"destructive"}),we.createElement(Qe,{appearance:"destructive",size:"small",className:"ml-1"},"Failed"),we.createElement(jn,{list:[{label:l}],seperator:!0}));case"urgent":return we.createElement("div",Ne({},c,{className:u}),we.createElement($e,{name:"notification_important",type:"outlined",appearance:"destructive"}),we.createElement(Qe,{appearance:"destructive",size:"small",className:"ml-1"},"Urgent"),a&&we.createElement(jn,{list:[{label:t(a)}],seperator:!0}));case"read":return we.createElement("div",Ne({},c,{className:u}),a&&we.createElement(Qe,{appearance:"subtle",size:"small"},t(a)),we.createElement(jn,{list:[{label:i}],seperator:!0}));case"sending":return we.createElement(Qe,Ne({},c,{appearance:"subtle",size:"small",className:d}),s);case"sent":return we.createElement(we.Fragment,null,a&&we.createElement(Qe,Ne({},c,{appearance:"subtle",size:"small",className:d}),t(a)));default:return null}}Al.displayName="Status";function Pl(e){var t=e.children,n=e.type,a=e.isTyping,r=e.statusType,o=e.withStatus,i=e.onClick,l=e.className,s=Oe(e),l=Ie((De(e={},"Box",!0),De(e,"Box--".concat(n),n),De(e,"Box--typing",a),De(e,"Box--urgent","urgent"===r),De(e,"Box-".concat(n,"--withStatus"),o||a),e),l);return we.createElement("div",Ne({},s,{className:l,onClick:i,"data-test":"DesignSystem-ChatMessage--Box"}),t)}Pl.displayName="Box";function Rl(e){var t=e.text,n=e.type,a=e.isTyping,r=e.typingText,o=e.statusType,i=e.className,e=Oe(e);return a&&"incoming"===n?we.createElement(Qe,Ne({},e,{appearance:"subtle",size:"small",className:i}),r):we.createElement(Qe,Ne({},e,{className:i,appearance:"sending"===o?"subtle":"default"}),t)}Rl.defaultProps={text:"",typingText:"Typing.."},Rl.displayName="MessageText";function Ml(e){var t=e.type,n=e.text,a=e.isTyping,r=e.typingText,o=e.statusOptions,i=e.onClick,l=e.className,s=Oe(e),e=(o||{}).type;return we.createElement(Pl,Ne({},s,{type:t,className:l,onClick:i,isTyping:a,statusType:e,withStatus:void 0!==o}),we.createElement(Rl,{type:t,text:n,typingText:r,isTyping:a,statusType:e}),!a&&o&&we.createElement(Al,o))}Ml.displayName="ChatMessage";function Ll(e){function t(e){return"large"===e||"small"===e}var n=e.imageSrc,a=e.title,r=e.description,o=void 0===(f=e.size)?"standard":f,i=e.children,l=e.className,s=e.image,c=e.maxWidth,u=e.minWidth,d=e.width,p=Oe(e),m="standard",m=a||r?t(o)?o:"large":t(o)?"standard":o,f=Ie(De({},"EmptyState",!0),l),e=Ie(De({},"EmptyState-Wrapper",!0),l),l=Ie((De(o={},"EmptyState-title",!0),De(o,"EmptyState-title--".concat(m),!0),o)),o=Ie((De(o={},"EmptyState-description",!0),De(o,"EmptyState-description--".concat(m),void 0!==i),o));return a||r?we.createElement("div",Ne({"data-test":"DesignSystem-EmptyState"},p,{className:f}),s&&we.createElement("div",{style:{height:jl[m]}},s),n&&!s&&we.createElement("img",{src:n,height:jl[m],"data-test":"DesignSystem-EmptyState--Img"}),a&&we.createElement(yn,{"data-test":"DesignSystem-EmptyState--Heading",size:Ul[m],className:l},a),r&&we.createElement(Qe,{size:Gl[m],className:o,appearance:"subtle","data-test":"DesignSystem-EmptyState--Text"},r),i):(c=c||Vl[m],we.createElement(Fl.Provider,{value:{size:m,maxWidth:c}},we.createElement("div",{className:"d-flex justify-content-center align-item-center w-100 h-100"},we.createElement("div",Ne({"data-test":"DesignSystem-EmptyState--Wrapper",className:e,style:{maxWidth:c,minWidth:u,width:d}},p),i))))}var Fl=we.createContext({}),zl=["children","maxHeight","height","minHeight","src","alt","className"],Hl={standard:"200px",compressed:"150px",tight:"100px",large:"200px",small:"200px"},Bl=["children","className"],_l=["children","className"],Wl=["children","className"],jl={large:"256px",small:"128px",standard:"256px",compressed:"256px",tight:"256px"},Vl={standard:"480px",compressed:"400px",tight:"320px",large:"480px",small:"480px"},Ul={large:"l",small:"m",standard:"l",compressed:"l",tight:"l"},Gl={large:"large",small:"regular",standard:"large",compressed:"large",tight:"regular"};Ll.displayName="EmptyState",Ll.Title=function(e){var t=e.children,n=e.className,a=V(e,Bl),r=b.default.useContext(Fl).size,e=void 0===r?"standard":r,n=Ie((De(r={},"EmptyState-text",!0),De(r,"EmptyState-title--".concat(e),!0),r),n);return"standard"===e?b.default.createElement(yn,Ne({"data-test":"DesignSystem-EmptyState--Heading",className:n},a),t):b.default.createElement(Qe,Ne({"data-test":"DesignSystem-EmptyState--Heading",className:n,weight:"medium",size:Gl[e]},a),t)},Ll.Description=function(e){var t=e.children,n=e.className,a=V(e,_l),r=b.default.useContext(Fl).size,e=void 0===r?"standard":r,n=Ie((De(r={},"EmptyState-text",!0),De(r,"mt-3",!0),r),n);return b.default.createElement(Qe,Ne({size:{standard:"regular",compressed:"regular",tight:"small"}[e],appearance:"subtle",className:n,"data-test":"DesignSystem-EmptyState--Text"},a),t)},Ll.Image=function(e){var t=e.children,n=e.maxHeight,a=e.height,r=e.minHeight,o=e.src,i=e.alt,l=e.className,s=V(e,zl),c=b.default.useContext(Fl),u=Ie(De({},"EmptyState-image",!0),l),l=Ie((De(e={},"d-flex",!0),De(e,"justify-content-center",!0),e),l),c=c.size,r={maxHeight:null!=n?n:Hl[void 0===c?"standard":c],height:a,minHeight:r};return t?b.default.createElement("div",Ne({},s,{className:l,style:Ce({},r)}),t):b.default.createElement(b.default.Fragment,null,o&&b.default.createElement("div",null,b.default.createElement("img",Ne({className:u,src:o,alt:i,style:Ce({},r),"data-test":"DesignSystem-EmptyState--Img"},s))))},Ll.Actions=function(e){var t=e.children,n=e.className,a=V(e,Wl),r=b.default.useContext(Fl).size,n=Ie((De(e={},"EmptyState-actions--".concat(void 0===r?"standard":r),!0),De(e,"EmptyState-actions",!0),e),n);return b.default.createElement("div",Ne({"data-test":"DesignSystem-EmptyState--Actions",className:n},a),t)},Ll.defaultProps={size:"standard"};var ql=function(e){var t=e.title,n=e.description,a=e.className,e=Oe(e),a=Ie({"Modal-description":!0},a);return we.createElement("div",Ne({"data-test":"DesignSystem-ModalDescription"},e,{className:a}),t&&we.createElement(Qe,{weight:"strong","data-test":"DesignSystem-ModalDescription--Title"},t),t&&n&&we.createElement("br",null),n&&we.createElement(Qe,{"data-test":"DesignSystem-ModalDescription--Description"},n))};ql.displayName="ModalDescription";function Kl(e){var t=e.type,n=e.totalPages,a=e.onPageChange,r=e.className,o=e.pageJumpDebounceDuration,i=Oe(e),l=xe(we.useState(e.page),2),s=l[0],c=l[1],u=(p=xe(we.useState(!1),2))[0],d=p[1],p=(l=xe(we.useState(0),2))[0],m=l[1],f=we.useCallback(Zt(o,a),[p]);function h(e){switch(d(!0),e){case"first":c(1);break;case"last":c(n);break;case"prev":1n)return[!1,bs(n)];if(e.sizen)return[!1,bs(n)]}return[!0,null]},Cs=new Map([["gif","image/gif"],["ico","image/x-icon"],["jpeg","image/jpeg"],["jpg","image/jpeg"],["png","image/png"],["bmp","image/bmp"],["tif","image/tiff"],["tiff","image/tiff"],["apng","image/apng"],["avif","image/avif"],["jfif","image/jpeg"],["pjpeg","image/pjpeg"],["pjp","image/jpeg"],["svg","image/svg+xml"],["webp","image/webp"],["cur","image/x-win-bitmap"],["MTS","model/vnd.mts"],["roq","video"],["f4a","video"],["f4b","video"],["drc","video"],["nsv","video"],["avi","video/x-msvideo"],["mkv","video/x-matroska"],["mov","video/quicktime"],["mp4","video/mp4"],["webm","video/webm"],["flv","video/x-flv"],["vob","video/x-ms-vob"],["ogv","video/ogg"],["ogg","application/ogg"],["gifv","image/gif"],["mng","video/x-mng"],["M2TS","video/MP2T"],["TS","video/mp2t"],["qt","video/quicktime"],["wmv","video/x-ms-wmv"],["yuv","application/octet-stream"],["rm","application/vnd.rn-realmedia"],["rmvb","application/vnd.rn-realmedia-vbr"],["viv","video/vnd.vivo"],["asf","video/x-ms-asf"],["amv","video/x-amv"],["m4v","video/x-m4v"],["mpg","video/mpeg"],["mpeg","video/mpeg"],["mpe","video/mpeg"],["mpv","video/mpv"],["m2v","video/mpeg"],["svi","video/x-msvideo"],["3gp","video/3gpp"],["3g2","video/3gpp2"],["mxf","application/mxf"],["flv","video/x-flv"],["f4v","video/x-f4v"],["f4p","video/mp4"],["aa","audio"],["aax","audio"],["act","audio"],["alac","audio"],["ape","audio"],["awb","audio"],["dss","audio"],["dvf","audio"],["iklax","audio"],["ivs","audio"],["msv","audio"],["nmf","audio"],["mogg","audio"],["raw","audio"],["rf64","audio"],["sln","audio"],["wv","audio"],["8svx","audio"],["3gp","audio/3gpp"],["mp2","audio/mpeg"],["aac","audio/x-aac"],["aiff","audio/x-aiff"],["amr","audio/amr"],["au","audio/basic"],["flac","audio/x-flac"],["gsm","audio/gsm"],["m4a","audio/mp4a-latm"],["m4b","audio/mp4a-latm"],["m4p","audio/mp4a-latm"],["mmf","application/vnd.smaf"],["mp3","audio/mpeg"],["ogg","audio/ogg"],["oga","audio/ogg"],["opus","audio/opus"],["tta","audio/x-tta"],["voc","audio/x-voice"],["wav","audio/x-wav"],["wma","audio/x-ms-wma"],["webm","audio/webm"],["cda ","application/x-cdf"],["ra","audio/x-pn-realaudio"],["vox","application/x-authorware-bin"],["rm","application/vnd.rn-realmedia"],["mpc","application/vnd.mophun.certificate"],["pdf","application/pdf"],["zip","application/zip"],["doc","application/msword"],["docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"],["xlss","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"],["xlsx","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"],["xls","application/vnd.ms-excel"],["odt","application/vnd.oasis.opendocument.text"],["tex","application/x-tex"],["wpd","application/wordperfect"],["ods","application/vnd.oasis.opendocument.spreadsheet"],["csv","text/csv"],["rtf","text/rtf"],["txt","text/plain"],["tsv","text/tab-separated-values"]]),Ds=[".DS_Store","Thumbs.db"];function Ns(){return(Ns=l(regeneratorRuntime.mark(function e(n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",n.dataTransfer&&n.dataTransfer?function(){return ks.apply(this,arguments)}(n.dataTransfer,n.type):(null!==(t=n).target&&t.target.files?Os(t.target.files):[]).map(function(e){return xs(e)}));case 1:case"end":return e.stop()}var t},e)}))).apply(this,arguments)}function xs(e,t){var n,a=function(e){var t=e.name;t&&-1!==t.lastIndexOf(".")&&!e.type&&(t=t.split(".").pop().toLowerCase(),(t=Cs.get(t))&&Object.defineProperty(e,"type",{value:t,writable:!1,configurable:!1,enumerable:!0}));return e}(e);return"string"!=typeof a.path&&(n=e.webkitRelativePath,Object.defineProperty(a,"path",{value:"string"==typeof t?t:"string"==typeof n&&0=t)return n;e[n]t.width?(-1===i.state.itemDraggedOutOfBounds&&i.setState({itemDraggedOutOfBounds:i.state.itemDragged}),!0):(-1s;return we.useEffect(function(){var e=u.current;if(window.ResizeObserver){var t=new window.ResizeObserver(function(e){e=e[0].target.offsetWidth;f(e)});return e&&t.observe(e),function(){t.disconnect()}}return function(){}},[]),we.createElement("div",null,t&&we.createElement(An,{required:r,withInput:!0},t),we.createElement(ha,Ne({},e,{resize:a,rows:n,onChange:function(e){p(e.target.value),i&&i(e)},error:o,ref:u})),we.createElement("div",{className:"d-flex justify-content-between",style:{width:m}},we.createElement(Hu,{helpText:c,error:o}),we.createElement(Bu,{inputText:d,max:s})))}function zu(e){var t=e.label,n=e.minWidth,a=e.required,r=e.error,o=e.onChange,i=e.value,l=void 0===(c=e.max)?200:c,s=e.helpText,c=void 0===s?" ":s,i=(s=xe(we.useState(void 0===i?"":i),2))[0],u=s[1],r=r||i.length>l;return we.createElement("div",null,t&&we.createElement(An,{required:a,withInput:!0},t),we.createElement(Cn,Ne({},e,{error:r,onChange:function(e){u(e.target.value),o&&o(e)}})),we.createElement("div",{className:"d-flex justify-content-between",style:{minWidth:n}},we.createElement(Hu,{helpText:c,error:r}),we.createElement(Bu,{inputText:i,max:l})))}var Hu=function(e){var t=e.helpText,e=e.error;return b.default.createElement(iu,{className:"d-flex",message:0e?"alert":void 0,size:"small",weight:"medium"},t.length),b.default.createElement(Qe,{appearance:"subtle",className:"pr-2",size:"small",weight:"medium"},"/"),b.default.createElement(Qe,{appearance:"subtle",size:"small",weight:"medium"},e))};zu.defaultProps={minWidth:256};function _u(e){return e.withTextarea?we.createElement(Fu,e):we.createElement(zu,e)}function Wu(e){function s(t){var e=m;null!=m&&m.includes(t)?e=m.filter(function(e){return e!==t}):null!==e&&void 0!==e&&e.push(t),e&&null!=n&&n(ke(e)),a&&a(e)}var t=e.avatarList,c=e.avatarStyle,u=e.tooltipPosition,d=e.size,p=e.avatarRenderer,n=(e=we.useContext(qu)).setSelectedItems,m=e.selectedItems,a=e.onSelect;return we.createElement(we.Fragment,null,t.map(function(n,e){var t=n.appearance,a=n.firstName,r=n.lastName,o=n.icon,i=n.image,l=Ie((De(l={},"SelectionAvatarGroup-item",!0),De(l,"SelectionAvatarGroup-item--selected",null==m?void 0:m.includes(n)),l));return p?p(n):we.createElement("span",{key:e,className:"SelectionAvatarGroup-wrapper"},we.createElement("div",{tabIndex:0,role:"checkbox",style:c,className:l,"data-test":"DesignSystem-AvatarSelection--Avatar","aria-checked":m&&m.includes(n),onClick:function(){return s(n)},onKeyDown:function(e){var t;t=n,"Enter"===e.key&&s(t)}},we.createElement(Gu,{size:d,appearance:t,firstName:a,lastName:r,withTooltip:!0,tooltipPosition:u,icon:o,image:i})))}))}function ju(e,t,n,a){if(a&&"down"===e){var r,o=null===(o=n.current)||void 0===o?void 0:o.querySelectorAll('[data-test="DesignSystem-AvatarSelection--Input"]');return o&&null!==(r=o[0])&&void 0!==r&&r.focus(),void(null!=t&&t(o))}var n=null===(o=n.current)||void 0===o?void 0:o.querySelectorAll('[data-test="DesignSystem-Listbox-ItemWrapper"]');null!==(o="down"===e?null==n?void 0:n[0]:null==n?void 0:n[n.length-1])&&void 0!==o&&o.focus(),null===(e=o)||void 0===e||null!==(n=e.scrollIntoView)&&void 0!==n&&n.call(e,{block:"center"}),t&&t(o)}function Vu(e){var t=e.hiddenAvatarCount,n=e.avatarStyle,a=e.size,r=e.hiddenAvatarList,o=(p=we.useContext(qu)).selectedItems,i=p.setHighlightFirstItem,l=p.setHighlightLastItem,s=p.triggerRef,c=p.setOpenPopover,u=p.openPopover,d=p.popoverId,p=(e=xe(we.useState(0),2))[0],m=e[1],e=Ie((De(e={},"SelectionAvatarCount-wrapper",!0),De(e,"SelectionAvatarCount--selected",0bqpG-&;EsxeLU$~LvI15 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 literal 60510 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 Hz`x54#@2v@ diff --git a/dist/index.umd.js.gz b/dist/index.umd.js.gz index bafad00064f017c600b0353a9617e91d6ccfb4f6..32628d27f3ba7d726c74fdad952834b7147a61c2 100644 GIT binary patch literal 103480 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�`;DQSxlQ2$rpR`XB!#~o4J~< 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%0A{{ zTPOLj6p0YvT9uj>X+ksFTu`^HHV2L*@^u_RjHrulWN`GLuD-UnrI+hn3=t9rzb(pH zev)UEF7X?>K$>OCDgz!mn~4EBceIKXzimlv6g>E<7V@ws#Tea4QlP2r?R{KpwEC4t zs@`3e7*`INt#%qRr7A@~%eVz~GCd)M6wVx-_nEEyp>iTiqguft^CIcOdWf(_-0&is z7XMYb@|%OLkq8zTO6@&)zlI+#%0J=XSHYnSU71$*n{Y3JoAVt`4AlU`Xh*@(h&-x| zQzJG@mGq|~O#(Qs)g%aZs+}Uvj7v21!(~6+>{3wrgGxQ(4=U~U&~fGWPntmINm9>! zlG(UAW;)YU&q{NL6f){JNn4UsP}95VZ1xy~VLi|52F*Z29pBC=FRqp-89Qg;**Ig) zzx}w2^r*}4XgbsqBQ$_in*IwX2DYp_ENs;ogD3%FLl{P5KjFyUMa6zH8$Mi8w%nRh zv1=3jb)*w?bZHEvfupD&GlZd-(}LHgR2sno#>}dnsA=TXAunJ6_4E5hz95aXC+KmW zV2Yk2Tiu`o)26kqvRrFvN5atuFG}m#Jm9C)E%KKW+K(0Jmq0nzabEhd$vp-eY}+j7mC zDOJf&%~C7mPJWxW=CX7}HoZ3vp-4P;MDcEIp^;G+pSDXESW2T)KsqR*yO;7`b9+_S z*8rZuZ}dX+TOe9D5<^QwDzbc$iZG4EDV%*M=4FzX@*4Tt+S0mIrdKzMYqDfsTJXl-++?;h zij<#Row#SmOl(MH;ykPHMw99iQ$W!t^BmS=1;3{Aa{A$d%&M3838xw;E|Y4-1jj+o zMXh8_RdTQ=_7354+)Rp+lvpuBcfwzHu74dycY682Y`3ZMMM$Uyh-B5u&v+kniw{|) zr_Ry}PWT;h{cC*(Rg=aA&|he?h7b-v4VNv@VWA7X9Dbu7)ES@|q@NI8DgN4^ULwt3 zM*~1@9Re#I;KO=42t`EBk+XD$o+q>9&ad@X0{#!9*}0=c{WR2Oa!}}vYV__M&=`4% zG9-2nBhgA59Ukg%f3k%J_CGp|@zux^wvEF>gd-x0x6(L`y2O5w*alN@QdiT=%TfpQ zf^wkkDo3=qwCy{vq(f)FC!tdk-z@MN&7!zyW$kd@2=g)%`ExA}I#V)g9Z8O=l7QlB zI1D>snc%|}7RT44J7~%K>+t&5ooMpw?5kgQ@!u%i{R%)17ZLfJgS&?!n;^enP8K>X zodEF~d`U_LC9u~OKFr@4?d^R9Z2I{bUP$Hkc5r?{zkt&SF_j8yv1gx%_%_ne__nQV z5Wz-rysUzvg;FFh>D+^oM(o~?xbJisqqGw!+?^!*3K>;COt5bx^ha8Ltq}4_nOqTr zOae`fFqMSy2?`!jS>2%k@QIeGk5|PbxCyKB63djuLsD?D_4k40Etq6-Q`Lo1$5-`P zj$$dgR$^ENk(pjjims}n;Ar)F)Mz&CGUaHA=a=A=blZnU5vz_YvMoioZt*XpcZSlY`W7XV0qYh}vL601PfxM*d#Q$&-4odWKa zc!AU$)EA|;OP;gV3mmwRUjl%C z^@Sjia`~S;LlnLdqDOvU`_S&Bp(V7CMI`$vRW~{JG8gu;B=wk8^3g?EURHT?NrB2; z$QLU>PC!+p)ul&cc?u-DI@kF7UQMB>w$k0Ko~Fy}ecqgDw=lGz8c}0$fyFThp47|0 z>#NS-E}QwgGw_+YN4kKKG|ou=al=RoIg-2xu_}#Z7}_07S%4T%rQ|Tu14WKvt>v5Z z4P27MUXs9daaRVYORg*`)v0L*hbXxPsv3U(1Cz>)74#L6 zR+T|q-`;RT;Hy0{tmd%m3mSMcY>B+*nZ0R0c;WSu$(MIu_@qMW=N2Bc^~Wl!F84EZ zj#AR&hi-bU+|X}zYiR`vZ6Gsn*@O4@-@JVG^80x38%;nB?>8NyVv2gM0~lP6mVngi zKo;6UTVE+E-UKz_$^&*~va-M~ZyiL28XJ@VLFZi>zs5vMI}-3CzPUaxFO;Yg?&uc4 ztuWzO=|{@rNUsw`bTBtm(7_6*jeFI>^w0-M)5Bpx|At&JVqf_?=|3v?_Se`+xX2KT zcreD(s#A-eI5iPT1jTvTi2E*w3q0BN$NvH|3LkIQow+9(=>)G zLh1Lg1Q&)PlE9V)7@Ke-kb?ybaV^VWI<+ASBk5_iJ>y?UhuVXh$)9iltwv__Lu85D z`AoN+I@8QsbDBF7sN17ObBxV5`;vvQD>^nm0T|OmK#f!zTfnd$*9movNhn6-1n7IK zU8t66rW9GAb~|`*Nfu9N#n|a--tH;)^ptgas%dGjuj?@y;HK~c2?vc3P_{!En7T~P z4ggj;AWC?WsAj@CIYAQ)>L@lH))OibLmxI;S?+`3a5f)r9{3?*Fv4)Sc*_LlB8N+PqbnIbFH>275 zFG#W2ck!o8ke=nUOs&q}Hj?xksZnf(93MIydYc|?EN0TIRza^YzGgk15ZXPkE_%Ai z){%9`k^R3!PWPl@8tYd5Lo1|_iq}7k8k$t-x+hU2&6nf3;pEIj_?u*~yJ-Uy_3^67 z>Vx3puv|66@?>a+5g;E==_*_>%RTJ>lQX z^H*BT1{e8!PI0T~<%=ANWEeSaaI$LfAq<~w5IG=c@tS#+-)p7EAw7rz>e6#RnViH; zd+-Jt!am+U^YBc4+{6c!7HU^$%}O&8e?X5g zmc;}vLAbrDFYm%_^yS^jJceb2aV_9iBUo$fB&6&S+=cS*R=K^sn4GcXaTK3P(uAy3 zV5~%YNVPKjRzwG@ot;1m(=7DLWsw$zQrS|nfD=nzlxnmpIkK~kG_NqyRQt=!bw=rvT2dm_V(E%TppYO z4x&lT(MZ zi$iqF5F^++?}$M^8t}PPu(B2g*(t>P_uIUY=v%$?3U$@so31>Do_)>S?XccJEqDcv zTX@09`=3IZ$`l*q@X*$4X6Foa){>!621J{yp_jy$@Eur-$Y6#Z0>QY|$r z{N$^Y{pUeMI7IJG>DbHkH zzIEFT==L}C>VZu-K|ji#4H@UC%mGaCQ}Jx#w5;BW(S$1W6-QdQRfBWzr6O8OuTlYh`6Uy%1u?ltooFD6GTu?{15(^|R%>_t?=oK_K)<;Wd{y{_Dv zceD9gbbG(m&iCnrq5~wO>6w+`28>_Y^;sr>WtdLNU8bV zW1>)WJ3yV+4UIxJI$N~co}^ATKnrn24t8{G$owyS<@70x5Cpl_usNGLaN)lO|mq{hwZgMXw zor}VPiqkTAJ2Bs=;+{_R(=f1g-|da|z807MVkk>V=d#pyz=(TGomA=CcjB$T%rPo7%g#pPe$Ql)@Fp+95_Cp?6)*fntE^s@h2Fr? z-^7!i*-p!)T9Ut;>-9}3<0}l01h6> zzsK_LzWn=G{(V(yw}1Mr(zJ-^N_8z8ekm({kbhsxzt7~~3r~ZJ;#jY#$Yp7z80(Ga zmh}g(Pm&~$O42Uc8251vGU^ zOA9Gm+ zAR9`)qLM$Q^L!?E1}S0R?zGjS(CMzndG7UfMoY{d;E4g z8~+;X*$L0u2^Z~zm+gcP?S%X7gct3EC+&o{CDQEVFg|_*OZcF4B5)xsw~odS%3Xad zp~$X#;$(__-mD~bqA*EGW#FfQdHRx2jlU6Y@h?Iq{$<#sUlO|Tw}Bt}k`RKwEfm6^ z-O+aNgOg~FSf6wLa7S%UBY&xp^Qq!rX7uKC@RvIS1LgeHhGa~Yj{T3?FM{-+orM{l1#+dq2s=IEDK?~dL-d;a|B!Q-PR z&)z(KL?%cSUk?CNi%Q6`=m4jHr>!2Gii%{>Lgi%4bJMfp}NiqOP_0zIzKcyGKV^4cL0c{yU5CSefCoR>3MM!uKUA2NdD& zwm8svok#l5G&ITLD@EyN)^08TPl)=AHL7Vnvzl|m_l5z=I|gvFi@%_nMTVX^^CpL5 zQ3K=;@f2hgz_DF|qe*G+W8QcljW zn`b#H&7;N$)*h6VwLF3jcCe!(SBxzuu?p?7>*$aKhQ@;|Mwo%qutLT8So&7YT481^ zU#e|Cs~Fr2^$leowG+c<;!TwSQ2>r;6h}v}4(lR(S27@;C8NE+e*M>PMt{5e^;r9g zusz=8>V+EJp~I2ji4BSC9!jyvFxUzA#7x6@80`djRMI3o32QM=H2CkLzau!V_86vf_>B*gcX$6oltYB?X1ru(IXhL2GudhdUDh$&HtoRl>AuPAxI=Q|M zz2PSFNsdlFqWDaZj#YY{pub~#uDH9Q?i!!aoT6BMqLO9O+Wb%koTM8I;+mJ*@L{P`5f3Oi409MIYYU=w}(gh>;<|raAO-nI}$s< z>?9DIgk9Vj>Px;Ls~BDup#Iwf!>PY37N0)0latoq+ztRxenLR(J7=b;NxNyNN)95N z_IgjPvmEN&3h7)6SXVlHStMVoBKrlNPKsPq=*>FmQ+?74b<(Gi#Vd7AxeQ<%Qo!rI zadod5S8&SF`q?_=m37Jsb;?Wol$Whjp3*6ouXfVUxL#WfQd8&+Xt`ho>==f7*M$QR z(Kfo&Qb8Kv?)9~aLCeTLmQt3j)b8APAkqE%l@|G>LW>KlHR_KkDp_Bmz+XQNzqg6I zKWxcs&n8+v^-2$2leB{>4u0TbW2SOgb|fVjc-7;czD}NoH;|~(jHR*&RoM5+9e*ck zOfPY2D2YO^A`=ceOiZdW{A(A9U&`cl7>S?x&yN<>U0M8HW<`cVCoUc6Er@kft1MlN zW#n57tu-wOPL1Elq_P3GY5{J6k$?%l|184i^dDL`1WwSLKrmepwF&`vzH!Sr2pQ=` zryVH}Y^B2eLytyN`T8EpXzOoqdn@CDP9qsTwcDXbw=;5_hVJG25Y;@B+be}o;V&eB zW6792huwD3!D*}B&pq|pt0o`rUCfBoP__=CQR`Ctp>%G%zSDHI0Rh?|G`iPJP!V|# zL1~2E>J%uU2NoYNWfF=cnTXcl;$Nku4Q?r7+3u-DxlE^MuDvIgWscs0=#{yS*{$|k z{If*4R+isO2bL#6&7VMy*QxRR2u! zv!3H*mEwa$(ZX8!q~h40jm(nOLhC3heF5tn0#+_0*pc}VN_WvWo>h{Z+p!kGYiAC8 zNIL_#Z-(e9edw{1M8d7d?bAi~LTX4**mkXDY*deLGG#JBg3Q%PJC#|R)X2c6tzn=% zl=UO5!7H?2IjT`>X6Z>f4r)}sliKoXquX$lD2-#9mn7L#rHp>f6~!XT??m_)Hsj-RrZhTwNZ-pjm;X3`nd7fpUMNVVaj^lTQhcsZ|gSy(>sM%tLD|o z1FZ$T&q(T)^PoP+Lat{XQjPU>3yWFJtG!d1Px`Ap{Jp zm(8$94BHUj0%D~J>s=Zu+D>$8xSHbBvYoQMeX10~TPV%8x4UAsDe~Mpu}V9rl;l}0 z=c$%rqXmL}ElfPcd$iwTU(p^#V_DdLT>{Ceml~xshP`d?KnDiI&4lh3r9D}Fn=_ff z%F+IlvXK=2!)aBMrXl2?Xj<0L9Bhrj87{hq>08&YldsV(lqp>-rc3&;8%9BP7Ap2E z9$STwtSEK{t?883m<_rP@eb?K;D&>2a+?BapA8_iFYxFc1nr#QP+L9wSPlI$PwsC$ z;jRv1ZW&Lqx2@t9 zr2T&Z&-*kjW~hqkEIb}A51ssjNp7=rBKwcAu$xZy#>4xr3?G!`JWC6^f%ZsY-Z!6e zvoM>FM4E?9Kb-#jIlx^oaJPqz@Z1nQlUv!`p8rXRA-(JY^75aezXA7kk}9jckaE5P z5K9)G;|qwfc0dQY81*SXJ*D+GEF70*?rpX7XPsd@V?0NXvUz&xDR9)}3xqmP#ugG4)>FHeFMS*Zh0x2freJB5u_y=-Ul{zh07MR6IE74+4j;jnAMVlaN#yV|ER6n$yL38GZF`P zmmdSM$Y%L!5eMJk#~e2y4*mweu`P3U5`D#>zRk&sYU8 zXbqg`c_vX-(oJ$JoKfNnEb|yeQ%N_ex5D!*J5=*<|4yE=Q$qu~o)L%}Mo9LcfQ=NT zEML(eMK$kWMhXkiDJP$t9Grm(1{BfYT9JPLq5v*W%IbM~nNdg`MJ!4=(w|fy)(8FDSCqbY9lktAg7aW1!{fhd?^? zr-0?2wN+M#_Ei!FrEDY+TO+wrtsU93mZfi_` zqp@C~>>%BX!_1(KS3NUeVu@nGSO?lV_BTx^+;dQY8S0)KD)$_DN5#|VSy$1F`$v~0 zj&4n4)&L{2=y8Z_B259^y+lbvXEn_bJNU_mr*oiuwHc5;?lq7q2Ponj&avWQ5Lr=4 zDMUFGO{&G-o+cAzVPKG1oHk^tBD52oB9yw0 zb!!h1kvc<0FDK;^+3WN)Wgrr12ZvIk4qUsmT;KLf84HI6Ay?yVPx5fdxnd$w+OU#qhf^5C&S;>NwkVE489K=) ziY&0X1`02gM{!|q#~ki^vl`4aOR19NCV-=ae--_J^80|!qvaAPl}Y4aF0TGV0BT=w zWO(RDY<#9f<{mA3b#bi`CX3nI@&TfZN)Z>OboEB$MeD}v1==4=765cI(p+3A5l7sj z)zA>1)2__hN_be!~eeK}?=JgdAA zswcG)v7jpqRi_{lPEDEy#%B7=f%kU9P8^DL2n=o(R$aLuKIt=+r~(uO%;W{ahcHk~ zsP8@euz?1@`COpy9o7QOlLHe`SOn7*V9kZ((BVW>A23m)hCtn-n5r;dz-}2|6-JMn z9N&|JRRc$$&*;!oc0{EXTH!q%>tq4sfRyzFc`>NBw`(Q)+1^Hv zlUToo26DXj0QRl`G7)g_=|=?eV>o0GNF%_y=-#gl{=qCi2PkFSiE+__ICzwyanJrG zP}qy1YzU!MU68p%wL}dC)L+$qzrvZo`xV`5U!fg9yb!HTjGc*2^gLs@fM6}-86W$( zgnhK|V91Hf>+4lZEdi+gah~G?6Qq+(RubqrV1{)(la3|S?=W1ah&TxB6BuX_W?%^= z>0IGIOFCn|a~&v2qsf=--yu4#20S5=0||Xh2p{vB;5`#$7GO>rdg^K~u8Tn}`R!ak zzm$A5m-1DXFRM8qQKF?!(qkKnk83o zhb*5JzzOh))t_)?^ucFk1)+VS@Z-e z!zdeMjiO8!*dJz&eFbpVDx~_D%!bAKA}mFn_aF8t6Vv_Z#F_{GL?P#KHU}1foyCwr zG0<{q1pwC|_0?F|CsJ~z3xkEq+UJew6n9ZR>-A2FG2|_0 z6<|y#icrg=<(_Resr;5I)Ei{Z$LF)+)~<0#Xs z(!UNMqBAlEI+KwTTfsfT^!l0{cQ33EeUX$9CI|W@6>*F>XbxS}BF@P|7&abtpPdbC zZ{Klt+nt-@9Yx2CZ=ir^%d{e2kU_mVZty1a?ua^cjLHzbe*9oZ^Y5 z3zF}_Lov;h0PjYM@)(E}d_KzN8A{G)@SBB8<9X{2H%H9i>ZQKH@B)J6Skcv$*Y_d+ zJfmwW`?v(A4(=?xlE@V@{3f0&t@l^QR4J!Qil(P4%Y6Qn*E!0dYQC%p5l;Em5H>mo z6#fDldj`uM(3Q@JTcr($KrA$Hna=&WQ=kRXWsOLGtLbK|X`m>hlbO)|v*uo;w+n?y0d42Ut*V#MKn^1=B@Zr026Tpb-tLNo~$)$kjrBM%gJ zVxOmzJWTB+XIstAATDn|h_~pG%I;#(?gBpOHjSt+YjyLJu#EcdH(Uq%cKrww<5|ro z0btAH5?xV|8qm=Son*JtW`KLWsAL_Pu{6IpH4eP~BuVu5zu%LYli=@v-vO$F zzgVP)$E$IU*Ko>@Lh=|j?VLWSZ=(KN{-2Gw;&I2OioNCb49{|mig3$)d!5hcb%0{K zH7dA~^#sm)k+&2Kb@bps4?o6Wb$Rh2h?Q6Y;|<-iVqTn-PQ^2qb=RToy|Luh;=J9D zwEavTBf*UBJ5cQ?-30<=jG@8OU4XS{cUBhJSOqIC_@3r43kXy|mg$Ju^n>Cpz!Wh9 z|5672P=HclcY{xJ!uv*Y9;!YfrQis?jbqH&uMSJL|d(ML|T8kw| zgG%O?)==cG&69?%M+}z*>@MGqB)rxaT4Qd?6?~|h5`#Y=DfdubPblNG__?ahVO_1I zxTWGqt`#y_6<(K3zpR4^;w?2Y3VIH!hOz581t}-=J-|{Am3nBgZA+2F1ldPDOgvY`w%riQO#*he8Qn=1h9iU5HTo2nAk(tOvekmHOzG}AJ_J#j+>D`E$9 zJ|ST!o(e@p$AvJYGO*@`GDiOt5>Ei@)}ff`5r!$fB|w%1I~KecXz2o7-=5**SSrvR zwKY_B_p8UcXN^^l%gj>4GdjYJd~|3BRB}9>K#5$!PPbmA{Z#IvZT74LJP9H;mSN+Y-gfC)v;(Dcs8B z;KPFv5Y4w4vd@BX=IyMr)Lj@Vf;eBYc(;;RwxyBCg)$U9M$wG*F4&aiyvdirq1g97 z@ad;JJSeg>02RKzJd7#``xv4dtDuA@dewzyIim9_z7Hy~H}tvpo+*eUGuNccVyLSue#S`5=7Z z-@aK6D^sfnTFLM|ST#*q+}Eqiq?}>_JGqX^f|RP0?CdN{DS9j-q$Y2quxysq(<-N1 zi(Y!1PM;$b)0>ZztR74038*y^uCnZA=t`M<%;|%RXZa0s{6~2@FHaFD#1%a~Rzfcv zff2tXlmcg*Rr*Sn3xKrXNm-)C$<5S5r^KHdiAEk8(Tn!nox_n@1Q)Ow{x0krdycZ6 zoBMoiZ;{hup?h4RUl}jm^c2W7f{J)9ESQLEq_f5sEjh2;0&&r%fy_oIBDn{OV=d1R zy|5ey$7!8U1B)zr=?IghR+oK~rZyI=jZX)Yb++BgJuc$T&hw&w;qyuLO+sKTfON+?MZ_L-u!wv6{ z0O)-GWs+4Onm+0t%iFx}IXlX4U%nAb`s^XztTfKxaQw0b-ELC`_#Qc?kT&&Zu&d;= zpUO{!K*V~ysf3g96Uk*l%IZU7$GKBMC)aHPQI7E`p*SYyoFsmMexO?l@ad|QB%~v- zb*sVHHAlVZx_Xw^;zvYHr^GjLlDy z4f!fwKk}a{xu@n-eaL$$SaZY__AYGfEw$~|MsE9WK^v(KwNOUE#Q2ByJy$odRr>Z2 zcnYk$Hb#O$lLDT zC{mrV?=|%Mjn2C_yM`>(rHlAJ8IH!*J?M!?lzfi%f69@17wJc2CwCxejXD77BsCEt zapcchHoK|EX17RA!_>Af)@$6d*-fRTC;Iki+3YULSvn`PT$hGXHK2$J5Twm#bB>@dMHTj(? znqK8Jo*Y&XinrjxEiJOH;&*r|&12Q1T;--S`L?fy49ptI@Qm=Vw3<4Rl(lTCbkluJ zl@an(vZ*CC^`^YgEi5%%X-?e6Om!TKNZ@nUT@_?snk9cf(lU^nD7hq^>SKUThmtXPg(%1aV^gIr};a@NGub=nhV6=xCgKUB> zYkZ??e5Y%C*Q&vG>axOjy29Udg}=EK)(7)LVSHm)C=Z`KS3c6YLxVT|MIy<{*2>eu zqnl(u^0b^O#$XC?u!T*neD7!*z4@ByOsEJ{Zx1?xY%zFxpCbb0m+O^+;znUZ!hRrtC`#D80{gSv1^lEtc9 z$rd_jVS^)qa0F#2YH+U-mNjg=MMwZ}tA~${c%~O!_)vwG=)$$F=N_lR$WP*2bcHGL zeC>UW|F6XsQcb>tE!N}LEk=`CR2=rx;^sG^J`USP95=DpA9AysExx$JNW-8$iIaX> zcqYhvbeVdmr+q=_d8W=hE9W?ra@J`}N7zU4WH(Se6`6OW{R{O{EmWxxhP6QGl?I=< z%G5JsC5o)l|DSP_|Bog7pJNIC$M`G5P0ej?sy4inpRtnMQr2OtW)}ZMyvfxQxD#ps z%&ah+R4dKmsoFU{?rK9Bm(MD_;&TrR(`;s8NF>r`VOF1E{Mj1$e~zEIjqJ45IZ~PS zHChQD2jOMYth@L372FCZyljvy?FM|;Fkaf9#tYs3R9@&V@ zvqhPQE$R$Il?FtBkya2NwD^|Q=khHpmlLVd+jAms^W>_^PFHYj=(tFicO+J*|A#0N z9QjQnH%KNU{+VL}TeMi@GvtKDx@AyHRr8Pf=ByDJqZX+VtL%gqPjC4nsF(5%#pN z$*x4ao#$(^uO#gnI-QSl+HNhdX{j?ob0J3RX%W-y%8dPnDYMp1hQ1 zb0ei`NJ0n4e1<$-k0cXDr>zWO!OhAqpGJDDMtW@dS@f9I?-NCdEj^Uj6rCuO0RGbj)b`vy zS4dq)F`E6gh`suAiM{&Y5mMJ1Nkd5p0)u1=?nZ58Tjl!depiZJ*arW29ojA=P1gH- zMs{f^}7tu_>`@=nDjaUKX+PrN0}ig4=XXOJy4Y+GSf;WA4j^E6;f@&LfOT>$NU( z&E)4C6OLSnvSfg56**;2PDL?=icPn-3&0<#w38aIaHH48CopW(iXdc8PBGS>Z@^;B zQ0W<37-pvKL55}uLHT)ZY)m(3F0Mvo?pxDmt@^ycvlJH-9m45WmtwZz60t_XnA~yY zm>V~=yg`xc$1yiPV0pVDA_`839Q?OdUgLRd8J3=vMzc8f3eoYO!2ajksqAC^b}OO= z(RN7@EI$sv9V{=0-wen<5}<*)tcEgHpt*rzc?uyxG-6U_^c`Ni(RzHp?Q+Ee2XVjO z%yHy;ER;|PO#I%LfpBnc8~~OM;dEj!!{T)K_sG`3f8iP?HY!46v05C%9JV^qPBR&o zBIFP!j}X@aOOIN1PsrH`SpuHIol0%*upPI zcdxHUcLn4}DiPpyV7?00^d?IvcAbTGFY*P*TpcBO*i2_=x&`P*E9sY$;0+`PaS6AJ zP7Sg6Nt(|yst`>A+Oa`X4q%ArouLG5>K3noVT5&*<@fn(cNdE)7d0yjNB8?pSu|+7 ziMXml<9!RQpQX)qDV09+p>d6p2-Jij?zzd~J%d$xqPe7tYI3zQDM-DN^YF*B0v?Pt>mz-dQh< z`rNl<6`hdJTChHabf0dyJt1HdFbwrAHahPcwLFmh1Ha77sBapNeZ>3 zJhy#JGUl7R5AP4kkM?^zd=7_!!RRt-k;-W{)%IlGB@`(D?2=Ctu#)~Eb|*@nbC%J!xHmM>5eMh6?Yk-mT@J3Rgf3c za)HZ4J|p{~>=tLwb}vg_T)U=Pc5}8fTBm7w{`i)a9a%n*Xz|{(Nf}%r^yOuiA`WK1-Yi<+-K;Ho>+xdQT*~0Hh^+F+IK*K*W=agHYa6Mx^DGPpcnZs9 zQO9ecRmqw`PqS7Dw{Zg>j)TC@;zO-P0RGB8?X{P?%ol*Euj*f7-URP+#9RQ^G$eCD-+yWL2nn}`%8^6T-#*6Fbp zmJZKTzal7ubkPFo)OQ`QdYe+}v*CxNJR4NjZUYF^>LaVs7V=LwxK(VsP`Z6Du!=c* zSZb(wpS@&oT&WoHzUM5Ia{u)pfd-N^~{4Kq0 zw>eeb%)BkR%yyShhoqPDBuD9G4Sz-etvxc%RWij=Gx#$)Y`JHX4C5?hL?qe9yut;l zL&xPVU}R1$oK&(F|W zW6>k5Sze@Vw__&N!h#LiK$CX=d^|h}sU){=KGgMe|Z| z^*M7t-o;vNZ;$RJu=4YJ80{<#F?#C3{IFN5w)tpV>)Lu@o8C%-=ySV(R;zfqB%cX~L zumA6^7w&PE?6^L`r9bZR-aYc6PQV(juCE#G)F>caOAQMn^h1f-d=dcq*yOdzUQX%m z-G8qW;~fmjlYz|<4sh~y;C}j^!1@2 zH8>P6{QLq(!l1`V6lStX4KfFnN|G!MaSL`}4f0HmkfwOUxp7mspPpy;sW0XJjj#5p zbG5IM++@v?FW@@(ogUa)_je-$;4C?W#u6|24mlt%`70o;a5dXf|`yNWm$ ztO4V=l3X~E8cJJ;#fOj>IRsQkqlzkE1OJ}?%ZPBRqtczlZMcz zC;A2HwW^L}CmBpBh?OUd#u||oOoW1N%U~i18GBNc%s%my5SNNynp}0XVum8vK;`?YEUnt>{I!zrG744nz{Mv_E{Bs+&3Z`;+4)(93Q_hp824}101PFq$FhI> zvEW_HRK)m2+BP$!UbOO(jY5M!Q<}oQ#!-oh2#EI%0YQ=al%roDCw`K-GH}WRKXuU# z#KqJ`YLf)rcj+z-k+YzZgRB^G!=fI5^>@OAP0ed`J-J%PXljM@#rquJkf&OPy@b>$ zOorm?xugOI=Q~LjNGY7bpV6U5$%^TTb5^oCWhE;`J}eScBvih}YtMylBFCr)?rc*j z=MKk!T8;*Bx40od7D|)2x6peNx@*Bo#m5_mGIfUDPa*7w($}7$5HLu?)fv5m0ZvdJ z@Aqvw0pIS$DdF~8+^V+j&&}t?j);|i$|dK$-cEb2tkykc-(#n(JL?>nzCJ&Mw?O@N z{59?At^4?TlhUZCISV}9I9Ymm9xHc@zlZgIU_e#-9ISB!PeCMTcZ zuKmWCa6OBn95u5?aUCem8wrk8Z+m%8Y5mo3Xe$5PqAl0(j7SRB8|2>4|5LZD)&31P z?WgS--<*nZ|MXjWzwgfdq+#IY(i+33Ue=}0HFpYthyutH<*VR9`$}%z!R>2}u3wEQ z-#OBA;>#(VSo)DJ(Q_TpvMVpolDl7#v$ogIzPh`|LSIDYZxG{Lk^(EHW&V|@2pF}=ips~DO-$?;{fC<}b1Y^w4@CKc-broJDg z^;wFp>@2aCtG1SH!t?d{>5U@WsywZ-x_-mHAIp}w>gqhtE*_L0<6v*FH~1F+^U`j? zG_R)Q*U`CEc&X4b>6D@*Nbi!LRy{9fs18+D_Nqvi-`Oy|gA1OKSM=LW6EG3?Mu7IN zEkUvuM7-;Ga&!qp0H_%Hw;=C(2l5EPwJ10pkwEzyK9?`bQj`mM&bWf@Gz3=&Y&}I;)K|QN@<{$eZ3CRitmL&q_t~a{9EQbioa? z{=TC~1uIGn!yo<^TUZn_^wU6+J3unGfy8yrf}+Fv1LDV7_A#qnXDyO2#qRZs(!c2u zRkh{whT0}7(*DCyCG~DzOy?`$xlx3cB_+z|dWZJCj2V+kI--#@RUvr6kg!n86>nk8 z`+G@l?xC%0dmB^pozXq7;7fqY%ZuKBkuouyn*|5g*TAQ}$2ZRgeHK7nXqMVS<#2Kqc0vt?r89bra?GPI;TIZG ziz8SbG$gd0>|1oW3^guoYhL5)xwpcKzuW2LyBkXeh#`F>8(V#BQ2aZ^H#OTyVpk^)l0{$T5R|GFf};RDA(x2FKNc zM^8^!lH0R8#TaW>D>9gd{m_x%)H}sw!w!OU+`%p>d)mGj)=3N-k&U|;8(p)FOvw~(iAk-PeI!C;;BtgB!bq=7% zxkTt^P@aFC`(jhR2&aHL^9^+C4}DJD(D>Ey!XiDc*mpUu`x`{$uYowpDh^#e@TQ^> zwcItlx;*#(>jr&V@+!t=u}O#0gn7?A6zwx+keNlI=k3~+1>~d!w@B*`@u|GG7L(r* zb1b5GIeFIXu9|#aqoKpdqt6_*k6KRx$V5$>Vf7z(I!vR09}-GZsN;6r36eWBMw zx0IhHFRfDiF!WeR_=q1*E~MyG9;^7^92MlCzgGq6u+bpVZ9|{Cz5nRe%Oi?5aW`#z z-M8^)pSkgMYvWIN<4j+LwI@xKMbCp!I#3*OO-=Q4G5jGev(vaVdLf#J7K?rKDHS%2L@?5RR z^DWRsMya_~tBfRRv622~T2bWV5-DUlKCLy)6I#$FDOr0WN%HIKE%<+KXsI)#4hy6X z=fFMGM9IPq0Kv7e3yG;sBEiKfNuY8vGi1<=>HyUTei!#mFM7smwHY5}y zB|kMcrTdYn^hBf5lS$S_rCou+3N?G3)wtVU5KV#A6!md?8-D>|j0Sr*Bj%qi$(AzB z)$v7?sV@0pQbxN(hX05Uo`%q(dq@6~D-j@s@*vn;ysE9(-kQlq#WNgT6EB9bjhE^i>K!njl~^Pkh?+MtwiZg_o> z$U*Ij?7WoVDAq{I>9Ut$g0cs28Imo`isaN9Q_-Nsu93FBs=Lk(vb5qvxPwh`$erO9 z#Lx18(5;B2rJAMHilvc?A`WO@mTXUHDNtWAHB`BUQOD0n9hxOog&Yvh<*>LpjkzLx zPqz734C=_BSf7Hs{fq49@~Gfi>XtS^(Y{?83>hgEfHTJtYSwOz=m4Bi2@VM7;123b zCbL7fcxl0eskt=NhoNtbE{M;WQrIyvPHD+Fg&en3^(fOls+4|Yf_X~p^@Q^j@PqSA z;1~58>Q(3%zF`FDL8_O2^#}&?j37;U;By%I$)i1r*Hd zos`5=1J>4<>fAjn{bU2XS#zG^{H75dN%Izzqb-`+Q-A`VrV+P^G7%b>MIcP}HL!|e zyMbk+fr|Vx+%F4kUWSC!Xr7@DO%eq+tq&x#QGh|cGMSK0R#=9l5Vsha*eXe@+*?_x zEJa#wVJfv%nkLGQ%qxjh$`cbs7OJF8AGI1oH-}6F8jd3%A$xip?n<^|wjc&m1T$(% z3M?WjP)Vs621awEY=#M-?me(MK+1Ype(0h(UdOdr(ka72s3tTvQNoG&6@jntPLzKk zS`Zx3;Z!!R$FWpyi&Vu|1$KeRYB4lUN$%>IU$xND58^DrShVZmJ!vrQ6>JuYp(%?Z zB(ZieYy^9?XP`@?-O^`|6tIn1T_cNK!3RnprkwU2wUpFKD~TjEY==!7^dVv6XaNOg z6eGI+11-gDn9~X1*fb*((KsXt?K!MPp@E0v;6L`Bh`mOm{=N&Hs@kpcRT+U9hR&WR!@uu3 z9ar5xSXMxxnEHo`?-j{9mg`q1qhp*ItbTXr0ucUnQk z((0*@(SXy6{=)t+uEUf1l#Z;@$DnS5B(QDH_O|-!gF`2q>`LE7LjS6gi!$%!<`|18PPbp2dvxwHnC^3 zhkXUd@cW|9wVmj#5=_9At{boQpUMqtop&@33`F zHN8^Lvn7gncsh^COL!5T^xrXWx+2ltvbhwiKJ!w+y8|;p%Q+5>t0!zI$0oalW3sD& znKaH|-QtvWi&GX(y5^KX7*rDt@_n3=@Qgd+({FEMIg6devbv<9ypI!5Q`suE3m2}< zPYX0sjOkXh%Troi@I@enA1d^07#7&8p%(l$r;+jY5%>5N%FtxxKreTnlAR$@3$X0P zNj}^|a!HiqvgG0X@q2P6HecsY)uK0rE@pVbZR5z0o|^+d_^er)cG6)vljy;p;Bahf^#cjvnYwEvb)iNURD|@{uMR>AJlk zd7^HZM?35fuP)5R>5r+sFz_-eK1N89SyGN!!UN%_E)eBorz++N-=(@42}r9FZ36dR zq*+pt<>}p>2OY>H1n=X|!+G&#ID^;p7RG05OTi()>eRn?FiT~w%m0;jquZDqKc#qS zT$DZw=THg(66l?-q(ce|trTH*cT_)3M)jjdK?(A!`2Zdif6+aw*A|^yMejXL#>sFG zx5hZy8^usX3{~VOF)UWAl2}(#()jxAQQXQiA3+LO)P+I3QA$>5qQPYa*%9;MwUi!= zBy%spXr>gN7_M{e3aU>3eBMthLa;!4el!cA{J8(zpM6hdM@7c-G|q~P{*Pd8Im(>N31ZbnGGz)3S&|3tRAD;j=c{rn+o-c5I|uN8y9Bh=*A>c|I?ISB zlVnk=LJ%FpdPbME9AIYG{Ot$REeCFtR~~gXEZ)G0;`Kx#WiZKD%4k$QM^+o zWUuBw{y&d*zWU2!0lCy<)$L`2k~d>pxkV`i`yJvrAe_hLe(moDAk8}YP?cMu2RalM zCg#a|{FN7sOZvE@MPbaWOkJs?IbPObtnH~JXodpnhmk^F9bXW8JgN~hV><3m_5*`4 zi~JaNgzVY!9CjRJ5cV@1v$E*+#miTRXD{FUy#MOu^Rwe$-W`U-mj^S_qz&?-9wD$&a@iTMKO@zuR6=o>-|@++$<8K7~j6$fAh;3<~<6%*FZq&0_#Ld z8^mSeRtx)C*GLUmK7oD|S>tTw(iaAb+@pDsZr2H%M9>JKm2d17dE(%WB|En;5@O)MBPr>)g`-JJ2w7Gl~XEu z>!1M(3KeLA9t8Y^J0ARjeT`TPz5CBxnz@`HbHkUXBmMGeZN1F6vLvgLTT@OoOtn7iso_YG$|hA?^AK&U8FO#x z*;9%s^d>j;;%`j*f=B~SZcM>9(_+$iGq0|Ta;jc_ZoIw9r*uvAd7d#7s)ogEmQE54 zABA6o;5h-ZP4kO+wxiy7r>B9KX3>ea^Ze)xI3n2>9$zl!=he>i+_RxnGouS#WKrgq z$wiWLD1!HJT!E2+gKqiBH{ueiR+Ko_&Wv~#&PIc>;AmtJtxzh(eGQ|GkdQUl)!XJy zd|oaWu=~kPK;(`LjVCWh_-=az%rYtcahz5qLIx|}{S-_P2znZ>2Y#M8COVx8YLpg6 z(Ei~bYD9Jr<&X}gZ)ZO2=mD7}W53C3Q_C9gW@mv7YDg83XPKd597D!#Z@)c9p$Csm zX`bMgo0RnpvO_G<6Sr5=4(hsO@CKBoVCBxzi)E>vlN|b`g8QtDb|P7sXaESZj6U!> zL{Gf4i1{dv*UZWJr?h^bWHCx?@8E^#Zdfcl{7g4Y6{`h`dR(^?bJ88CEfVdua7-W6 zClQ-Tn_25?w&D7+U0Fwe@=609jt1w5iH1i+d>4Jk)_g0puZ)P)`8|?)os=CU?wS4U zQ<`HS4-W&tdZ@7sdKYsXjAV`9SoVX1Z_Kiwm){DQ!g*Rj0kHAJw8}0rwVb|Hxl4{% zghnLIiY_xVoQ_TlB+}_}l5|4NoakfXFL>tt#cxUHc(ldq8&q7v@?W9xsBG1D{VWU` zLu1N(<364t%lrEprm-o%xXhfc_fF;zg~DmJlS)Rx6pv?QUDQ>k=!+Q*oPzRbca%R> zvg9a-bNj8d;W^1qM>XpWV{_YXO1sEZEG{kNn`m5eeSe?S`_*Aymp6)@ZtyE@nbgeX zo3jpbZ#dMYCGdozycr*%^b*qNrVaF{+2#e7gHoSQb{tzu_!%flEa|-GyI3e7A(DVT zz%M~A9@Wtt>l(E_u8Qmmjk-Hf%>S_Kk|H(`cIP$ZSpV@3fj18>=X`{Z<_9e@TgMft`MQb=lPQaM*ORL`ap z!k`X+K2NXZI@COU?`z4_^(fMpuvtkC>@e9hP^>stT(!i@FICu{&9A=;WntgJ`+Ap- z*VwqdKoqE=*j0167pm{SwZGr{8fvj?XQYnv4AJPBZ9vs9=ra4a>uG|o1W!)(#CIU} zS|UXU3D!NdvjSnq&R!5RhE$sgUR!JMdc!ps{~JZ+E|MluBBs5kq5UCg65hbzp$rAg zi!OQWOgWFjpSd>QWDQV};P!fZyGrU~7?5J=T!P-12(`Zc&D*G?_Paa((3gjKTN#S- zNLznI@F{3XE56>{W!bwTh#S*K zLy;t)9oqPn&ynmdOz{`y3yuw6X`tzVTq>G(C*r00B0|yc`|f*twbOwpRb21H( zPwdHkXDdTlkCqsgbKFps-ZOW2%rpSqtrMHq6DPB#nLXTD%bN`^LCNk)}1Jkd%}a6x|?rb28GYfjChr5ty1EQ_>wa zC0;a%4tDCxBzH)Y?%z>(s%ae<2i&14gKlVWk>tyu1X;+2#|7scD#1VsmD$gMqSTnbJ5vZiV4+a(V? zFYW!W`xrO4hrOXcAl>fiW1d|8BT^QjKN9JKCTMyGguVOJOm{144U%EK6Dx6|FdLgA?*gRY!S zF=H~t1OWlwPVns#{Q{nlLoxfom;C-}e1$h=$caWdjl@%qv%pCstHK(RJ zbpih{x2llK;|p0@rlqKGSj0?B#X`(s+JA`Ni8G%1*TCC4*m28{c=u`3q`e&A&^<(iVK;It@r9nxhcuPryq(CW! z_)ICfnc)wZoQn548C%JznRumBsgayqi7zs_Sa3=$p5gk<#Ra;*@ZR%DycM6td+|zq z5zj;p6a4F1#)pRo>+05*`+V|0iz2jnsEMP>v-8}Z9Wpe)DdKe&Rze*V!cs0RQksgY zzJat`X^|vRcvl7m<{eM$Ga7F;oqNXv{wu1MmvwOb#gcG|9bnXh@tO7oPiT&uKIy$|EpX!A4 z0)NYs)0V&WQ6HBu-rLWn_MdlvrI$Br*z0}(yAZO@MDtXTXk?`PGN{xfv%1F+JM z;zRWFxLs%>Tb-K&U)(&`ajQxHmpIMV$`yIkb}#O|5nA-Mdm{}TRCjXOa`c$JCqMO- zeAVR_`jTYaao3KV~9TqK94TJVhVfnia(LgOG#>S^Ca_qjuW+q6^ zcEJ25JS1O6wp_J*JX>#DNbBoxtXobBUQI^D zTiwwQO{k%`oLrLGHh~O&`;CKVPv)|=TV!9jA^RgTFP8}T(j2J~zE%##;HFrX(%k4W zDe(?t^|psjm^!U6v7g)HZDP{>KQZz$$Wzz2w}L%wH1JNuruE~Gz(1dRhMJ*xMrpA= z7Cct)O1fGlj^_%UUgmNAO8X#GF^UYhieCY7kZMvZJF|$ivg965e$nU|Z!>kVfkf7PR4o==f7oF75q=DvZ;|7toUn*aSY5SF&_61TE`kKvDn_`z% zQ=3fV#tXM~y_uXgV!Xf0?#h}`cH`Eoc7-uJoiEf~<+)i=Gk`_8reEAv z+g)+8EUTg%E{arz_T$r1)!*ZLd(+!^+EZ6(`B@g%m9)`C*zn#4rwsYGL@haLbJn$~ zw_4>IgNK3qkCuVnjQwS_{XysT@UM6>B``+Vj=Fa%U~PpfJj%mEL#E`Tgj6!sF}faM zG(ICxytGUr{KVbFg0^>(nM-L;ZSTa&o6hacHwaq5x;Jw_@XnEAtlL26qHnp#ide=# z;%(JNrlCES?8H)MD<&M_sT)vNg~UiLZ)@C`KTr)xsbU;)1oaJk7aOrJ(!OX*TBI*! z{3OX?R=5ea%a`=a+^7&K#yXToN;0uA2H{4Q&xKWqt@N;T6!x67`#nt81nkx#kZqgE zW?C~ioA^n~Msq}AZEI4901>}y9&=jL8hYFwxxlTM9sbLPxMnwA;)7a4fx7>9Yrc@v zJeqY&d3|)~gz%|TAabI;HhHFwgqSsC!m2G3HUm8q3*7C!NchV#K0C9%x+3IDO^_BJjzCm%^74twrbE8o9GJn-k|2t?TET$#Rd&!Xj5om z7RN%g*fp~1S%V=<`&h`CUgS9DjdcKQ87Zkr`L{<6P&&k8i}`Qc_1OnQEELpmUdP!Km#e#u|*{HB91&M#mG!O}@p$#;}eQ(+AEo za#%y#b9Fy!>Og7KVP(f=@Vn#2t654dy|=vANU%z|tI?dbm`BZA<32|5vQFlIfLW}G z4q!zC+X(xj*(&zf>4+rOi0#<=u5S7vTXV$T|2n{^k<6AGwXr{}bw@jokr(1cVU1fi zA!Z`Q#D-3gkI?LO44>RKdxr1#tdDjbWRFF4=$Mj4#j){(T%kB%9sG8`7Pow4L;pea z^4@>Y0ueT~hu)i{zAnm71J=8&#QvHUNfbLOJNN7vZKW0O+G@$f_L3>BB~v&{Cee^V z-75vl<&{$CmBK+Cl&1oky==aAimnK0Yr?MXXH*Kq<*5FIu_mEXPjrqlHv8R|jY&}h z4?eG|yp^hYH{ql|Rl67{4y;z3uqJSC&Lp*A)LbnS44gKBG#e`dYCIZ_7OG1~)<%9Hd|9Y9O6y+IzP4Rwm0gyt#DK~A`V$CyCO^jW(Dg{^O(&qCkLk;^%vsqKAa;_ZkowqmNccfHWhB~^TnD=7fm}#-&MG3E zWV&K!_1;@eH)|d3KGkl>9Qi{T#owZN5^QO6m>~j2mytHZEy}f8b!J1SER}E1f_6A_ zTwoY8gKIT;ezim-zl<1?iBPRR*ZyxAVg=KRg$|ZGQWT|tCwWpqcitD*?+HVaf(Wq5 z7~%Mp#WgV`MKH}E8 z)Ee3JLNzS48b;FGq{#SzqS1X`#PBdZ(xHrsoSDNul((ek*GayV$H1vFP_8K^5GF06 zE@ns8&1F)Q2(?M+6u5}4G4Y%uE|EiNV6H0^AJyPi;v%Yv<=wzvo8^gfoCMrF58=mU zI-MrDID((dR>d{^L{@f;7bb)ReY^kj{_+0%@D|9110H|#9c=fMc=qw-@egOmhyOed zZ?EaylfQoJzI=UnynpuU<&m4?<-yxGT%s!Q=y?D5!_nCfFW=~#e}|0SW$gV8UOhj2 zvH#(fleRk11}WELPiFAK>(gL|GTA}({A;#lU|u}_`?uk>9r%fqY4iBAeEr=naBmpo zDdJvfhVS8ht7q|l1dsE8FzvMSVtNA^-9$Zc@CG6BwCzo4=5%cR4le`edp*@y^7b}G z3EbYkGG-5lYlRzzD%O`Hsqlt&Y$od*b|o~$g;3ErmPmU20`yLXU zhlUYHC<}DwVSm`8fS|3keO0Gm(!%IbMpkXiwXGS&_+-hWQT2t>ynw}$zC6@CkkIHV zk?DgAJ?HO^5Me~VCQCngn3H~i%7Te$6@(Ll5W5ie+6-@C`(;ACyMv8QFSvEtRi?YU z>p&=aUH^s5bazJ~+)r^hKk%p~>OW`uLa4Om?EnEnPp@s7< z5axeE?V7Qt!fFU@1chmj!+OKYiER4wz5HLY`Le;WizdfT+Z;RV=Gaw>V^5mw7f<w<=1GItX(|p{0Sg)PKdi`imkuHvwCu>NCbWn|A)VIQODW)WCGKTiYdM`!zP0+Qm*}$Ma>Ii zz4`DV_Lwhraf>F(gpvD87X6m(yekVt(kaC+S%44jEx6b0bM3ux zhq)5;H(gX|1t-t~jqGrTv$<%{8K1jn!<4HZjaQLyZ^nAoyK!}u?XSDmIs~F-X0@)? zW_1XVtat7a7f{@}686;^^7He}1qPJ*6cl{doezRNBXwGfA@;9?VIJ<9pm%an0kgZi z)0vS|k*_Oy&effwB|-VVL|8Vm!f0iA4p~@2G4=#O$9T3VY}&5wC>6IRNK0KTRD_m} z_%;J{>78XDQSqSyGV#_DI&=pu_OUr+IJVf{zUZLBR?~V$!#45jmBKr^&a>S8*=ra+ z_^~9J7xu$_H2Y@*1x#{I>FC1C1EGV&Oejpqu?z&X!9vH|M&@+9d!A)<7uI(Hxgz3_ zwarCrhuG<~DpKlypfJ>KXjKJj;cyDNEIuAM{*Gx#My4Tu=4`l!l`BUBcH=w&Q&UsN zLv&06C#fb;k?H-J(}nEk3`o8{gNftF9-GYBZ1Xvb`{pc1*WdI@On9%G%!+1W@9{f~ zS)RWJ86v4I9V9l2xIG{yIk9^VlvE&dE`o9``z?9Al5LM2U+yW=$M%tA8_GoOM>JD{bIlSZU!f&om&@hQP92 z_=mh)RnT~hidT1_;?; zDahHVR80i(sMx?_cT_wr)!Y^sdI9)gaVmD7T0kK=S{vXL5wfG^VeyI~tf6KzX4W(x z-OSI6tO`^sboHIt9@w51i7jMtFRMensAL!pCbX^&7#y<7o}MkVn~`=G#+GJ#y92JW zc6`lYD75Y;3F=GKq9QEY`(y@u2N)a22lkM#2e2se|BZ;~2`(ErK!DU!CDXxhP%RgT zRp{ivu7CvP;^l@GsAgXI+Jeg3rO_-1L;~UwQ-g&DEyB|}upRjeSr0oeO8VK_!X$|J~v%>A%+9eAf+3aU<;7Q`#nmFQcZ)ZGLt?GRFfj~v2=@qj0tzBc* zquPT&el7Svi4y@bz`qcqTx*sq$zaBQf^R5%sj0arMY}b%VMn+VggtnIHtUTm*LbU# z%@FRcSjgbieNr1@F)y^G-&0_sq{$fi`LJeLvaCc=38*-$>>1x`F@`R>-QHH#Nfw>r zVL+1T5z^oQq#CrC#C{Nbe*$MaNIp;K5@JvQvFUO45ZzbLt6J>5$@=6mqF>^btRCi2 z!ZX_#%exJXI;v>He=Qp=+L z(+=27DKa)aABWyj5~Av=3heZD(Z-;S3mdkIrx?zdC_8D(b#^+14s=W>_hFvBou7}$ zEZf6)EW3RBPUXS@h0N|?7X4PG!i3S@IbY5Yd<FNRmxKYScDu1Ff~+(!Bfk3xQ0Ln_tSV$DjS)R-wsT}_8@o*cYjYE5ApwK||e&nuFl;PYzDzBw ztV~Q#W~Tv~i{V9+O-@+sr6jreqv%R39z9ykpH6_b7LOvQhyG+Z4<7f;WFX-4NiX?f z1j^l~i?LsPl|F)E7GW<*bQ72!jD^6?|4wpS0=ZGBlp2PjKJC@E+zhk+ccWced$90| zp>GXP-9I>YcY8qqv*yQ-%0M!}o-RW3@m?IYEp3X5s+CoTS}?LeH<3g0@XF!<>DZpC zwW?wvnQCb*qaE{w+HfrwO{I8GhVi348*bRhNHMU!Iw~zu4Mq73fidJ+z2>&%)`i81 zr*UOh_5kZ`zpCl7xrU@cZ+E|K54C3 zYLuX|)h{&uBVw4`-PP9Wz|K)j4m7J|+Ggg_*e`a@K^Ec@z-mKOut`zIB78P*VPWS73OG{RCv$w*4q^O3n#Os>C0{$Uk$4WdDrB!sxgcI(; zyznCY8iW+)AG<5z7gglh{yJU&vs(g+wrMR;4hUj<=VofOq+ z1ahdB)T_#}#GiFp;!EtC89GrF*X&?b!lP327Vz7#QG~Owt@llhN;y+%=E~M2+cxiH z@NPV`rm{f>DSHw5SIv;n2nj4vvggqi>XZpyMq5>R!ZUVNWKJz^trT^M?uD7-F_Eaz z=m1Mbh|OYIP7?C;xw|Xx?qK$FAS^`RI)Oi@h&uyqP5*5snOD)(?>EW3*s!6tNoM;0 zt4U_@yG=5Yx;jlVJC*7VqQ48uxf10AO*n70H_nzt$K6+X6TcD~xIunLO8f^Id|uvb z@OkkNgU`xQ{38=pw>Xt;{OK5lYWq*R_{kb3-6x26+qUBbCIeKtw3vW`g5p508&k`2 z6I+d$p8A9gJf^V2`j=vB>#}Lonfez(r=n4(8NSrNa*R3=i+i!TrHpa+=xFh;FcWh4 z%!sd);pn77HfRKz4SiR$ilhniU06#W)lpS7aSyTbTN_t!Y41wQu3d??kvv*T$IK;P zKbG*r>`O}tjF-YM+@apZ7wEbM6~Iokq+4RxiTDRWl1|{kHVy?sk!2hw^94E^5>jai z96}k*F2^0Z*yVT$f>aPL8FCu?F*Up3LWYfi<|HrkSwWs!tVVffC(o>X(W1#tAbnOb z_4t<3mS?os+uNIJp%yeW>>Gr)fBIOnFuzfFvlUn9ymCusvv_qYGlka2bP8a|VdED$ zd0Zi4K?)>|`_gza^fMG$tFRnbVLCRFFKn>kq)o(=s!jF0)w}wV+etA8qGX}yn_Zzy zeepNy%24$RJoM`)f{??)C*Q12VreqW#{#OIemvO~QoQ?{Fw$ighi^5vsw^iJ$-U~6 zL|ZFQwLv=~kFBI7!_-kagGkh&k*%W(JjIzi3bm4o(VW$yIqjKOK3eTM%2MH7z_8(= zg|``*4bs`*{^%y3kP#{hT-Lj1FwWiYDoACa-!fw`p)6YjTIp~sRrguG9mvPFs~+N#z<9>t{tKjp*llr@JVXq0E$w^*gsO3RQ(zxb*|rpcOxYN}gAPu{PjzfmixZDto-8AtaR00O=+$cAJ4MZOlM)ats z`DModTL=mp%$CXAKV>hp$^88Vn!H`*+2;OUmtF{aYsT1WoWu)~A+ofQX!siTeB0Nd z6s?YhMZ2>IltEUiffcmO*s1=ZV#&hQDOcLK{-IKpovdB1GOQ0@K*1e`W<`fh85PFz zU!y2CwSRC~QbKh5izfIFE{Q*LN+J{ZFz+;@>nB@YT<(=ocCOA=Q^G= ziL+J=MbV~lBO$~1N`kLojKiX}6!7}WsfzcH&K01kUrS#=Y+%Wfi)w4- z>uz+~Up}xWn_tZ0D593h+<;+;opQXS6p_d-;5!V;kHx?aZ_TSU@PV(EJ`w#oBV+1z2 zvson8bsmLkGIt*+IMUrmiLQ9|S+}t7dQ#w*q;<~V2c7FH{2_fj;h0!BxOWAg{%l4CE_|_qkr#@^h2o=5!pkWnMeY z&fOu5SSBlWy8V^w?k)MEmE_(}wMJ-JHT9RvK=3LOb0Z1*rmXhT3Tt zUq*=>ubY4br= zmh!Jk#P9aex*r0Pzf<0X1To#A6~F(Z2I|wiYQSOZKF^anCh>C9s{wNDR9|6T4*>qV zk^V(>m+NFVc&-h_Dgy&I`Zlw5s=3v-fbpv&Bw|h$4D^^QZ{FP{?f!psU9HOD zUp=8qM7%9o9;0k+^gZIHH=2KGnokyoiPHEwfLm$*n+4YD0I_{=pHzJZ_!QlEcMtW_p-9I{3EjIy?n!iAJHPhCCa%Ssj|KJi zV_IJxBe=nRy_dEj@vM*h8n`Fplkb$z?~Ja@gc63|AV%C8oP=6JVya=X02cqtcP$2z{vpl#c7(T0!R~K= z9iY9|@B%G*cD;2ovB|c8B+rA1hATbe$*tVi!kD1g!BRMGRr0Ue!S6;x6E(n&al&Qg zq6%p_!U*hFj=(NmxD^041NFq+Hc}ui#b_o~z@NQSkdpkQnX%TkR9Td;f3Dvu&4bE) zn5RXIS5?FB0#AQcQPKC^S7Y#Jj81&I(Sk>CM)F(jn7kB@92Bk+QNNChi;K)Pb-|d| zD|PB zxP~Dfm_TIfLQn4)^EGW;GAL#Pv(RdjKH+;c{p$NnzeRWcj)R&f7@6S62BShXzZ2tDf*ITfsjI7&eI>^?|%{t-&Z^ z*(UQpz$^(IPSm14lq@CYERQkMC>(Gpl#nLRllXLJy{Vr%x<`1PkA;sY{wc8PTwltQ zgYJE#!ipsHQW(iIcxRLf1BZmucXmmp-p#ly-%!My;6bc^curt9YZm#Jq^U>v#&bAx z2SQTela+-)H$%kp+92-6q6FEZyxFX1L6?OoRY8zF9>sOjJNbpPlN;@|3h5dvgXxBv z1FhMP5{zQY=G96yp2>HXr5l=BlYV?6e~_iyvJuLFaK$H=X*Pw;%0d*ku*5B-zL`;t z%u&rU7nk}AbImHQl+T7Tr@JuUU5$6cD{<2R&ppS^P`@l(3~?AG7SQdH&T|Y5S6rL6 zn#4CaZZ|-P=|m#w9$=Xyy7==X^~ zFa530mi*J1=Wu)bP_4i1?Hl+9^@vaS*{AiNZCT&FB?=cOhh%V9t`#06P$EIll|7rw ztztx$kScG4WYjXvM6}iTij33awRNAhC6_qzE3^TeJla#fduRbzeKipmct4YmwRE&Q zpsmCUm)qM{<4?2j_%r z+?LW}$Ci1bq_EKB4DM^xCft#wt<9t)DVa?e+GgNB4u^GtV0^_!HpTK=UWJ_kSFN@I zJifTu6?mk4T9}0%o_B9yi3vZ*0Y|R4x35X8XTm!o{tM-GKxI)@508;Lz8eO$ILpXb zD-h4Ox6#pG*<5el`RRiMTltY(VI9{22CRSA9}<5) z93Qgx{!(F~p7){G6jv5>DCl zA=4aFML1*Ahb+n7Wp-Y`Sj--8fdx?;D9qrc;-iH>1w>@&Se{{Nhi2DH@ zvEqC5CQ{2Huc0rA`&32ZVj$i;gksS~kAkE z_3Wi22D0A3RxuFfMAFP}tF{idt6;R)-d^||C|3HL+*HwtrzBDDR6Hx9+jR)tHuSeb zn#SKMvZplM#H33aAdRxP60WF>Sr+<kb~8NE+= z!L+D_-@=IXZWHHnW#7KofBEY0`PuQ?vloZQ2S0?~i#UZ{c~BRFSyE3f2RzMh-k!Zb zJb3&5`O(>nw;$d-54|_VpiC+l$7(P`U9P7i__SYHfqW9{Qa3rpC3oKNq9{7ND9Y%< zFDx&LLhaB?YJ#FU zA1`;@O8g*P?wDd%bVdPnJ6JRv}Mu@;oYg z0f*6)dje!xhW63Cu*j}|VYcY2SePYvjB1~an zx*ExDHu`aQ=T8%itT>R3be^yd*o?+xt(yir^<|Q`#5SPqk-udhOYiRNC-m<%Pe7Dv zqD^8T!`ex|HecspyCoTLQl^H94v=Qk2zwD3BP4xh4u3#>yBqfa(L0y9iG~IoM6wdC zBG#)KR#;;>vIb{|!N4qf>LgiR@~&NEgAsTnX!=Ripw2SdZ9yW!Ay37-GI)r)r(^p8 zd0rCjZT9V+{p}uoTSQM<-&&cToXVh)sDRO?)^Ogo;QopL?SKzsdx(r(`AK~$Pvo2W ztHe=xlAJaS;YPXc7&_gi>-@L}F`*OC+=+Ar1m}{OCQ2a{QYK;KU zS~H-0hbW%lhVDP~V9m z;c8C#3UMbZU|UHJsD{L^-M7ICcz{7~&t=@OVh1(YCGdTk;sT}^kMw%1ZT32bJx$mN z0Wi!-VAL<$+tv1VPMvM-7{8wy>JDmfr(MoyzUkE0kzb>pC?APJBB(9Mcs z&NRur!Buy3gh-oNa%_lTHJPQzkT1zu;b8lEwB z#~M9}-M*Gl2b7VTyC#~Ey6qrt`3ezlo&Mt*CY5}Nw=$dd2em1!QH$MCi%C&pcN;Bw z+ulp=7D>WPvg(l4y8JusFBR}X=eO%!4%L7+PDmrCcuS_L$H-d4#Kbd}2coXJ`6Uo#9wz_W{zp3t5aW)aSLX+cTh6yDtdJ2HUh_^3F@Qu$1g{HhjgjjJHn zs~DeRu2f#J*rVn~)V8~9OS}$usmHsa+Re3GhBmkQW=KhBC{XeZk>NkqDa<8J^tHFf zNyfSs%_BtgldlBQ<_S=^XA4*j#y_lhuz#2-s>?g;9(O2(txRZ|mP-^(lr>b5-7tv7Xxaxm;_`>K`z?Qr@WQ}$;3vw|)= zm5hmZy(YFAUiMlzTb2E&!(&h6xt*1Rbnok^!RX@Gxd~p#R-z(}E`A%w{u!$UEHxS3 z{%TFZ6=?%BRM>^Q*w(ICH(FmLwMlgAYaF@`^;L&bPl=oLXaG9g}I`$S63_wmhb)hWpkyVj`Ij^|g?-^;!4nKqTFbEBfUbhMV< z4~P5D58val3xNmFU!CvWaK1kLgs zSHZX%qb=1nEH=7I{Zy!wAfRh0^xRsB6P0?($BISNb&93$ z6FOb`dr$pD>Wp@(MV12j?RZ+Ta(9>OPM{wicDx)H(r+vm7$9PaCV4^VLpgNcwq%1n ztzoIhb-0Cgdjc;eASV#MU)|jmIGSkbIFDL3ow}(NtefQtE4NO!w=byW=%^e=Tb1<; z4TXs_UeMl~_$p<9!Xc6eq2-BY>TrnB$I?m6o^R4Ix|NBC)RSOTT{$F8dFY=!K`&|y zRzeXq8(A^_BZEnHywEiv!pJ5O8S721=F2rVyHiGTPRPlkgB7_EoeE{~r?LN*%1r<>(rb*!?UdRLddoTeD?3|9}u0&0`Es!%PIc>O|& z??*CidJV_-6Y3wBb>cMvqwQ9WmC2mH%_BG+4Pi<;Hj#Ji?~gaTc0vil0+?YpSV9}A zvtuwCblSmT2Ay0-cArVw!}K%sQjzuxd*7~^7dRg$7*%bhF*uK^$TBw-zjnm*OB7CX z!j8&xtmI7`&y{i$=bKvI#8WH2ADt!DCSFk{xrt8*C!IENJUcp@_|!SKE%1;Ar~awh zGLi<-Ycfw9f-oL*HECKo!>`M#PG>jTaEhG-JmFmyW%>mYVSmB1{`R&fUr{Lgp06eL zK*z@l&o=LB*+ljfHleMQaO>70=QErbhpEc03B<%-8#XI!fMfMRg$q^FqU(We*l7YhtBSXv#f@?| z`V2L?qnF(@PcDsYHL0eJ6)JUtegc~IQPWY78R$*mT`^Vqh^6tzo0ZF}DjxYx8siww`qG z<{$eug+;B*@T3dKKVRveukqJL=9gBtiO$yeo}AZfzx2o;H|r8eHfXB9mEPT1Ty9FI zliyibiDHpIxw~5i8y%CauJBSYqcDMEiAaHmN}E<}8ntYV6* z!~j}0$HQyKduCA<7l__V>_9GC#skgJei}|NaNazqY?qEQD$u2)h+^73)nV{D;)(wx-=g_EZe|#TDowH}>{XuS zV+BtrXul{XOMC;(lJrauCiz*m#Jsxqo{EcoDn3_{_YBxDd31Z?B|Pq$gRd{>3^cVGT}E&sj%5mz!@SVSqsD{Eq9ta_M9LjWQ- zE|9A#6q%kUReF&h-Bc)U{G62OOiJzt#T4d$v8)~Ji0&LKvFP8G`&x5dTbr|`t3xez zXEj5vjP9AptuWkuTBEEdJ<=qe;5^L<8wgI@yNl22sFXNv&arX3yM&+rNN#XD3~z+o zUBWBDdrNpBc(~Fj?pB0T1QbfXs3a#mD_mKidw^h5+9wpY=%Y|SDNI`QGd$x~j?T={ z2YQ%ZB+-xf%P7b?x8gd&t4?tv(a^;SpPj%d!*HfF#L}ZtLk^T<+jf* z|7~MIQpcY*91rcP<@De5?r1yoHvlsjxko`|V2@U7ZluwzULtTESq{ZAN&B!e9@nu% zH)~6F_j)Mb16MXL%H)jn{u-rhvxy$E)4xa2zKmD@Tzcnr`W>qXHSi6{E^KYSr zo#+2e^Zsupant2Lk=6scx#ekzfDDqIgBYrr!nQyGlMiB=rD&fY%4w9VUl^7uO4ZW~ zx;~0B^~~zws8G*G%k$|nnMNfgT*kH32t?0gN?qlt;Plr>Em}?sFEVh#Mr|)Ykl{3DkjPpf(L#LqV0H4+IJUW&S9~Nvm7tM-B3S~pQ z>KDL;E12;le_c%DEGn@eL{f>SmHdTPe$gd9;qaru`#Cn~2Yp5NCccW!v9qYejLxy6 z+{)`({d^r)pQ4xeNERT`JNlVi08vD*={L}1^o)N&)84@kHJ3ls^uYM5(MS1IrW3B@ zIVDizU#99OkiI2dvUu zS41!QQJVKfXDL0yMpwp*%jkQ`4J@sSexje&+2n2FCYZ0D)0<*}fb~&IB}(nrGgwA{ zsjY@cFd6$wJE-5n|grW=leH@=hS;;?O5uI23vx;i@LtgAeAFzJJ z>Wyv^`3ts$I69|N(z#kySM*^K!}K4~E4Dd}j<6*k>J&!y3;gO7Nuy^4zam31B-I=I w3SAd*uDmBZPj>b^(H#Lh5#HHZQUP%+QJ*gZUXW%W82zvR3+>RPxkBj!0CsuhE&u=k diff --git a/dist/scripts/setupTest.d.ts b/dist/scripts/setupTest.d.ts new file mode 100644 index 0000000000..7b0828bfa8 --- /dev/null +++ b/dist/scripts/setupTest.d.ts @@ -0,0 +1 @@ +import '@testing-library/jest-dom'; diff --git a/package-lock.json b/package-lock.json index a344203ef8..3333e17aab 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@innovaccer/design-system", - "version": "2.23.2", + "version": "2.35.0", "lockfileVersion": 1, "requires": true, "dependencies": {