From b3929637a24c278e5910835c54aaed8ae8efa992 Mon Sep 17 00:00:00 2001 From: release-bot Date: Thu, 16 May 2024 09:27:52 +0000 Subject: [PATCH] Released 2.34.0 --- css/dist/MaterialSymbolsRounded.woff2 | Bin 0 -> 410988 bytes css/dist/index.css | 9865 ++++ css/dist/index.css.map | 1 + dist/.lib/tsconfig.type.tsbuildinfo | 9348 ++-- 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 | 23 + 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 | 23 + .../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 | 45 + .../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 | 20 + .../organisms/combobox/trigger/InputBox.d.ts | 3 + .../combobox/trigger/MultiselectTrigger.d.ts | 40 + .../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 | 38874 +++++++++------- dist/index.js | 29775 +++++++----- dist/index.js.map | 2 +- dist/index.umd.js | 2 +- dist/index.umd.js.br | Bin 60510 -> 85114 bytes dist/index.umd.js.gz | Bin 72662 -> 102672 bytes dist/scripts/setupTest.d.ts | 1 + package-lock.json | 2 +- 377 files changed, 63399 insertions(+), 30607 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/_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..489ef084cd --- /dev/null +++ b/css/dist/index.css @@ -0,0 +1,9865 @@ +/**** 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-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); +} + +.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..126edeef9b --- /dev/null +++ b/css/dist/index.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["index.css"],"names":[],"mappings":"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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,4CA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","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-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.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..7eb45eb0fc 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": "ee6a77bcd074d1dd7e7ce647b7cd0250708fcc16c46cd57a97818da06a0ddbf9", + "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 }, @@ -897,8 +1047,8 @@ "affectsGlobalScope": false }, "../../core/components/molecules/emptyState/EmptyState.tsx": { - "version": "53b0dd55640901ad51d16cbc1ddab221fb30300fdf8ca20b257917ca60d0b3c9", - "signature": "37b09708391d897204c352d1440459a4052651de102a6dd63688b149bc4c9921", + "version": "9e84832e1a29fc46485298bb333e9c245ab9e1f759c36449d04be517c75aee58", + "signature": "4107a8d2303a3dc2f1d9375cb4221bb4f2d7df2c24396a1650ba00559adfebd9", "affectsGlobalScope": false }, "../../core/components/molecules/emptyState/index.tsx": { @@ -906,19 +1056,9 @@ "signature": "177bdd267c09acfba8e6c3c59e0bdfc49873520e44801e30ff5380c5132dfdeb", "affectsGlobalScope": false }, - "../../core/components/molecules/overlayFooter/OverlayFooter.tsx": { - "version": "e7759769336a00416abc6a61af6cd3bf80588ca2c5ded949933952a40247bd99", - "signature": "79f12c6a6d8fa70ab572a5a262b67c1119eed6488b4f1ee423dcde62c55fffd8", - "affectsGlobalScope": false - }, - "../../core/components/molecules/overlayFooter/index.tsx": { - "version": "439a89eef207a81122381d9db8223b6f7413c54029c12c8170d380ca848aa348", - "signature": "2f4ba29d3e5dc49a68f4510d5989678974c3b9975ced76d71963e65304edef6c", - "affectsGlobalScope": false - }, "../../core/components/molecules/overlayHeader/OverlayHeader.tsx": { - "version": "02304207c8f3768e19d8c84c827927a59cb1fa36c12962c13377029c095554df", - "signature": "7faae95c74b56b1e4e654331c1ea1e7d87b74979a1f01eec1da117db41206ac3", + "version": "7a9449503b288a792f88d4199f144c9205753266ca8f910fc8a38b0fbff4a0bd", + "signature": "2cd9ea5c8e11c9e0040029f3ec2fab8df6b246357355f93a275e708be58ceece", "affectsGlobalScope": false }, "../../core/components/molecules/overlayHeader/index.tsx": { @@ -927,7 +1067,7 @@ "affectsGlobalScope": false }, "../../core/components/molecules/overlayBody/OverlayBody.tsx": { - "version": "7663a0c438a6c7953d30e1d30b38ef50c973c25a6943c684f08786492e616e5f", + "version": "12c27262f7508e8a27dea089a5d20b5e4017f81c44560884461cf3e99219247c", "signature": "c37271c24b9c311da4fea544944a56f7c2c9c59fb0a2af9217f0fe29a3f369d4", "affectsGlobalScope": false }, @@ -937,13 +1077,18 @@ "affectsGlobalScope": false }, "../../core/utils/overlayHelper.ts": { - "version": "6b9a145a9ba341510d4903c074f47fc33e43464923f8267b08e0fc6861464f54", - "signature": "8689745105fe56a18a0e70eb8126867b63470f064db4a10e4bccecc268039ad0", + "version": "0e2dc1026bd8b023f14ea0af5e584b6b1569fc8b377a80fa9c62e0b32e8b1e79", + "signature": "47c1de1aef33dfd400b27d75b157a4dd153533944c7fe2cc61914745a580edc2", + "affectsGlobalScope": false + }, + "../../core/utils/OverlayManager.tsx": { + "version": "7b72e874c8a5fecc8b7e5a57de1d37536a7225b4e5d3382efb5643ee6083476f", + "signature": "2495b576600e82176c7108c241f7bb4509c080db4780a530242d0e2d5ad190bd", "affectsGlobalScope": false }, "../../core/components/molecules/sidesheet/Sidesheet.tsx": { - "version": "3a801d268586deb40e1c70e24205e1a8d2c0edd0484ecca59e158b3e69fc9926", - "signature": "00bd96158558e071856efa9680d4ea9a1dec28ef8ba4c1e940c1bb6517588d85", + "version": "6599e8c568ea0b9064381779eaaab4126b7f4953ac65526fc8e2fbaf5f7d4232", + "signature": "e347f172382f4e8ed7f55cbfb543a8b58312908da18c8cfb5757e96be55363d2", "affectsGlobalScope": false }, "../../core/components/molecules/sidesheet/index.tsx": { @@ -952,22 +1097,22 @@ "affectsGlobalScope": false }, "../../core/components/molecules/modal/Modal.tsx": { - "version": "5ddd15016f2d68a7ee5db14a4dea75e1d1e03ee303df7fa815d50fdbd6294c55", - "signature": "ff79a4a01a5ece297536e191fdf930a87469480afc0152d01ee4c1e8dee33d40", + "version": "55ec4e0de63ba0dbd79114c09726db352f103c643643a2cd61878716b9f9d58d", + "signature": "c3d5700b02359fe54053b47b58a29ba3aefe8271a9e372907edb04a61ebe9c2f", "affectsGlobalScope": false }, "../../core/components/molecules/modal/ModalHeader.tsx": { - "version": "556fd8c023b4a14859e0484922986fc02f0abd449862c4f03b8198e398bfca5a", + "version": "7120aae5594e4adc56f2e4fd32940838c93d6d59503432e40f417a7fe975578f", "signature": "be3f60cdb43b5e1493ecad29fed039b7c49adfc9fad38e79cb6f302e5115c639", "affectsGlobalScope": false }, "../../core/components/molecules/modal/ModalBody.tsx": { - "version": "346b6f0c226fd118118eaf08918f19d0e4bbab75bdc93467cccc6b0ebd19515b", + "version": "8441e1cd0c076ef961d4d7c4a55fa8d04a338e6f41e8bf92100a706830bbe821", "signature": "24746ac7a4a44dfae8e10c8e55db43be145f99b80e773b0c80b9b1463a1c865d", "affectsGlobalScope": false }, "../../core/components/molecules/modal/ModalFooter.tsx": { - "version": "ae45b14fdb4275a9127bbbaf959f163e4201ae94979896147e5b776a06593543", + "version": "d8d6187309a01df6aa9a98ba89f20ee5cfa27bafb53aa331eff30f7dc5d55328", "signature": "a48ad2c1b077f64d89eb96f881dd7c22b049f5f6ce765b41ff9f63e2edc6e860", "affectsGlobalScope": false }, @@ -977,8 +1122,8 @@ "affectsGlobalScope": false }, "../../core/components/molecules/chipInput/ChipInput.tsx": { - "version": "6452dc1f0998eb9150a8eb7c278fd9e1dfa9bbe62889be4f6eb6e7b2ff781b07", - "signature": "7e03f5815331aceb4dcdde07a2a73a891636dae43f459ee8d91a4ecd78d6cb09", + "version": "962b6ff8a104f56dd65187f021c1e0b432aa47430ac61c60fa39ff07323877ec", + "signature": "f6f6ce6b9921561439101986472ca2beaa8a60acfad24678ef5347239aedd88f", "affectsGlobalScope": false }, "../../core/components/molecules/chipInput/index.tsx": { @@ -987,8 +1132,8 @@ "affectsGlobalScope": false }, "../../core/components/molecules/fullscreenModal/FullscreenModal.tsx": { - "version": "cd6ccf4abc757b6e5c4ae2f485497a784a5ad99aab849d90ef1e64632fed9906", - "signature": "aaacc3582011c1e87cc61c3bcf6377fb6075e88ec2a78d8b93c57bfa235b11bf", + "version": "80bd7cd2a5274b8af443b78c5eaa6e655e225cfb19c8419c143ac4940d846668", + "signature": "75cd13adea58fdd4e866fddccd8ce9f459490220343db22e694ef3ea7f43c7ad", "affectsGlobalScope": false }, "../../core/components/molecules/fullscreenModal/index.tsx": { @@ -997,7 +1142,7 @@ "affectsGlobalScope": false }, "../../core/components/molecules/modalDescription/ModalDescription.tsx": { - "version": "d7fb7d5974088431520a490863fc3242daae840220f76631b48e85769a8da67a", + "version": "17d2f4c22aeb0173ec2dca6da5746c24a80aa794aa839addc035bb4b1d7d3926", "signature": "b2c258ebd79e78a89fd4fd5576322f7e7e5ea2ddb2cf70034b71e285c03c143f", "affectsGlobalScope": false }, @@ -1007,8 +1152,8 @@ "affectsGlobalScope": false }, "../../core/components/molecules/pagination/Pagination.tsx": { - "version": "14610e8496fb4f24bee08fa594924305695787cecf8abdbb208eef94a144a1a3", - "signature": "12eff4722fe853ec6816232cc744e8fda010e2a3c0b92d54d8b853a46b415383", + "version": "53cd6f264559d72d4926d01c5ba8627e18ad9d8ee495c674e0304fa469fc5f3b", + "signature": "7162d0f6243222e00261b23518f2de41f0d3c4a102eff858121f697bb2902580", "affectsGlobalScope": false }, "../../core/components/molecules/pagination/index.tsx": { @@ -1017,8 +1162,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/progressBar/ProgressBar.tsx": { - "version": "df2884764b869bfa18fe6382aaaea4cc7b263469038440de7b04b1b84c83234b", - "signature": "935b924f1e2a4f72c2133bf199a3c5926aee823ccae8ea6b15379b465d75e099", + "version": "3ddedb88699194bc1dcb359b1bec9674b6f07ab6dffa73f6fa1185fc01ae68d1", + "signature": "eb7d48a661aec52ba0854ec19e758f208c62ec52662eb0674888e3cba3ae1317", "affectsGlobalScope": false }, "../../core/components/atoms/progressBar/index.tsx": { @@ -1027,8 +1172,8 @@ "affectsGlobalScope": false }, "../../core/components/molecules/editableInput/EditableInput.tsx": { - "version": "04c0c307618d2f1bbadbd967071deae68e47362bd2a7f7b4c005dc36db883df3", - "signature": "8ac9ad0e028f9716152586e0cf67df9fdbd00e939ce0428989bfe8781e5fb8d5", + "version": "d24b5bdb12cc8080bc7f83a3f10c336f3dcfda22b16c3b947b96cb2d32ec5750", + "signature": "ecfe16f129ccf80ceeed9b9bd6d2a6656f8e04e332800cead71e5f86e1d483de", "affectsGlobalScope": false }, "../../core/components/molecules/editableInput/index.tsx": { @@ -1037,7 +1182,7 @@ "affectsGlobalScope": false }, "../../core/components/molecules/editableChipInput/EditableChipInput.tsx": { - "version": "b270ac905504c181e12a19f8ed737bb314c72a599385f3ed8e391100b20e2057", + "version": "d0065089928ee37e0cb7f802502af3e77a2e62fdf0851db0d2d123482c7d8830", "signature": "1d1196a1d3a13ba64e141972debf7d789cbcb1173a737fbd5771d421c7675b04", "affectsGlobalScope": false }, @@ -1057,8 +1202,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/popperWrapper/PopperWrapper.tsx": { - "version": "2cd2a9cff8caefbf0d8d24b0c5e482a0a9767feae97b30fc4025cfe233fe3edd", - "signature": "50325d1368fadf00a75824b09ccc0263e23629d33be574638879f61dd056ad23", + "version": "a54d196c7466a9a7d275d4b66f53c7bbd73b33d982c636b050937a8e97f2d61b", + "signature": "ac33238ce724a8b94967a75c9c18e7294a192d81b14d89155a9e4f7869555f20", "affectsGlobalScope": false }, "../../core/components/atoms/popperWrapper/index.tsx": { @@ -1067,8 +1212,8 @@ "affectsGlobalScope": false }, "../../core/components/molecules/popover/Popover.tsx": { - "version": "3046c88c1d4505821f4e3ee3d45011f637b6db0de7531a8b7d36da72ab12b320", - "signature": "eeb017ea4312735392744a19241d851d85814efa5230d043df60a3b157b1bfb5", + "version": "e96b9a9b31621ea75d8599f955db2345cb0a54a3d535a2dad488244ad38256e8", + "signature": "e04a21f672c57406bc22c6e8ecd371ffb50c8dc53aff443fb456394b7c015921", "affectsGlobalScope": false }, "../../core/components/molecules/popover/index.tsx": { @@ -1077,8 +1222,8 @@ "affectsGlobalScope": false }, "../../core/components/atoms/progressRing/ProgressRing.tsx": { - "version": "49069e33ded61bc3c33b2a004ce6ad06825f3788b99b1ac798fbd5b717a50dd8", - "signature": "748cf673982658e2ce3f1fcf434adadaa889fda64dd88f50a88dbf35cef7bcba", + "version": "0b548d05afc77b1b7ef317a31b512828049dc5f5ab47b582aba727e19fb1d26d", + "signature": "5a52db688bab52674d2f9474fde584776e5725da8db4f9f77a0d98ad53ecec34", "affectsGlobalScope": false }, "../../core/components/atoms/progressRing/index.tsx": { @@ -1087,12 +1232,12 @@ "affectsGlobalScope": false }, "../../core/components/molecules/stepper/Step.tsx": { - "version": "a6f563e165c0b98317435393bfc1b56961c7d8ee80d7b964bbffa7dbbd6124a5", + "version": "5de77f3470beb34ff8cd8ed788c418f24a043235925c56cf3fba705ba91749db", "signature": "272441305427b4d5b85edaff2df6af465c28fda2ff78e005056745a7e4f342dd", "affectsGlobalScope": false }, "../../core/components/molecules/stepper/Stepper.tsx": { - "version": "0870f8c762b5030063ceae57356f2f31fdd73eab324ecbe090b1585eea23a979", + "version": "1185bf606b9f3edb937fdb16007efe7be0e5790c11fef490b3914049b82bc1be", "signature": "c5df07bffb6808f65eb54e255bc028923cf58355652d3356fa80b0e2e775ce92", "affectsGlobalScope": false }, @@ -1102,23 +1247,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 +1272,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 +1292,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 +1337,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 +1372,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 +1432,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 +1462,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 +1472,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 +1486,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 +1502,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,368 +1522,513 @@ "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": "e902b6389bb3a3cf05face55ca1cbc287ce221164b11219d00fcb06cb93717d2", + "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": "08f6474d000ecd0d8e3f281c693f92d479554e93e02f5480ad056a48bb21ec66", + "signature": "dfca50dc2fa446590901ae9da769a28664c493ef49bed19ccaceb08dc03defde", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Overflow/Overflow.story.tsx": { - "version": "dd139fc25e8aed9f800f8c4f64752bc609763e58b7640e7a85e65dfcfd3b01d4", - "signature": "51d6333d0d51d0c853b9517a538fb359d20447c721ba32104e5bca799b48fd47", + "../../core/components/organisms/combobox/trigger/MultiselectTrigger.tsx": { + "version": "f5f6cec6c603fadb6f20d2a94298240867ffa098fc207046314681756dcb0f87", + "signature": "a5aed0ecee8f303b50df8babf7ebfd60682636fc5a7c29a93a7c9ee3d46ebf56", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Position/Position.story.tsx": { - "version": "ab6cb504226e9beff365562e644f34385001e76d1a0b919edbd57531ca0fa9fd", - "signature": "99eefb34084ecb833986c14634c62aa83edf4cd87f9547b7e01f86aec5a34119", + "../../core/components/organisms/combobox/trigger/ChipInputBox.tsx": { + "version": "1da0f41d7a4cfd1624d271083482d7e5ea0bd2d2aead0fb3911fa9dbff1ec927", + "signature": "4593087d4208f4ad20c318d6cac3945b2457483b31345c920eb633355b109886", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Sizing/Sizing.story.tsx": { - "version": "c6080f4f49391a41a8c22ec55239f31dbf9160ce1497b816ff5fb0b7905ff26d", - "signature": "8de5cc5edbfa6946982f36503c92b6cde95c21e52422cc017256a214978085e0", + "../../core/components/organisms/combobox/trigger/ComboboxTrigger.tsx": { + "version": "463b872729195dfb62f731b9fa3aef441d780c4223431713ad59d16b95209a95", + "signature": "1426593383e10af553a86c3036fa229f8b85babcc2c698c0846bb9e9d6d8b7bf", "affectsGlobalScope": false }, - "../../core/components/css-utilities/Spacing/Data.tsx": { - "version": "e4f9fd913d33502db9a6e1d0a60421673b5d053aeb0b152a584877372ae68a72", - "signature": "b58336d143b58336739c5a9734a83ce78ee25852b3f3133aeff906fc364b3e09", + "../../core/components/organisms/combobox/Combobox.tsx": { + "version": "b554b5133648dc4a92f68c48034ac2c25474c51f5bb048f6e178b169be4bda33", + "signature": "867c15a9cee7de5e1d53570f7bf341ee8559c3aa3219cbc5896176fef68397e9", "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/organisms/select/SelectTrigger.tsx": { + "version": "d7be3231dd47a8b5f67559bc8dadeafcf27fb3b38b259662403bb2f732bb1242", + "signature": "342e41566380c2b501da61c4a9eb07c72385c14f64bb177d4d5744e1e6217919", + "affectsGlobalScope": false + }, + "../../core/components/organisms/select/SearchInput.tsx": { + "version": "750dcfebc2901103fc62d287f3b34b2b0a2082215d3dd4a90613f588f23b66ce", + "signature": "882194d8695e6a44baf52f08ea016ab11c16608f2db8ad8c66e4262a3d5a909c", + "affectsGlobalScope": false + }, + "../../core/components/organisms/select/SelectEmptyTemplate.tsx": { + "version": "f041344b371db22a3e1b3b070c4a810017d7cdb2a6db823a27e054a103b04034", + "signature": "e48f1587740af45506a9b690ec0f4201e28e60f916d8ee47429acc615396ea0d", + "affectsGlobalScope": false + }, + "../../core/components/organisms/select/SelectFooter.tsx": { + "version": "ac90f516fae747301560408de14706c332187b8b9acd8b3f130431beb8e78e35", + "signature": "5686f3bb3acf4466c6794f124cd98575b897436b182bce621b0c51cc38ee54af", + "affectsGlobalScope": false + }, + "../../core/components/organisms/select/Select.tsx": { + "version": "3be13bfb478cf3779423a730c6f56d816b0e279e48f3cc0c4cd1c16dc4a09aeb", + "signature": "7c4b8e05fda14918072776e80e8beeba13c0f4bd91b9072bc72f96cce85c020a", + "affectsGlobalScope": false + }, + "../../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": "0126ddc01b7456ffa12842d18033c805a3eb90012b1f3323263aece7fe4601f5", + "signature": "3785c1ad25ab06d88a19dee228c8cf3d046a1b61328f18a0c02d806dd0c0e772", + "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/designTokens/Colors.story.tsx": { - "version": "8650c051e65380d105110e14bdbf43f423013b53c6cb8ac65845401d7f93ae53", - "signature": "817007c8805bdffa63c2c9d851231cb06612a3e1b96cbc643e6366ac54bbb68b", + "../../core/components/css-utilities/Spacing/Data.tsx": { + "version": "0ad5fbcf0e16bd8bb901bb8e0828cfb4bf3a4ace87257062baf92ce01c969a61", + "signature": "b58336d143b58336739c5a9734a83ce78ee25852b3f3133aeff906fc364b3e09", "affectsGlobalScope": false }, - "../../core/components/css-utilities/designTokens/Miscellaneous.story.tsx": { - "version": "4baec42bed86644c88fb68513d8acff7fac7b11821550a8138f0c19f9585da6c", - "signature": "952745f88d79ec4dee4434fdff2534089aaea74b15be11cbcaea4ffd148b801c", + "../../core/components/css-utilities/Spacing/Schema.tsx": { + "version": "cfade1e6f2231e969598991fdfcf349d08fcce1a2839e9b36fa19915cd01b69b", + "signature": "fb38e8c85063168d2ac414a267dbaf488b2e091b8eca22a58b6cb4065090bef1", "affectsGlobalScope": false }, - "../../core/components/css-utilities/designTokens/Spacing.story.tsx": { - "version": "e43742f948763b2f73cd0efad45636e558c8174d11a449c910d980b72f338bc6", - "signature": "8256f7a6b98114343d3022339c3c3287abd3894364792e44a9e14b522f6d74bd", + "../../core/components/css-utilities/designTokens/Data.tsx": { + "version": "7daabc625d30ee5f1eb3af93302475a838b923bba48625ba44353d47cfc8b914", + "signature": "2583c1f78c1b3d0dfe4ab20b9118007fd35cbc26426964b94c6f8a32844c4dc7", "affectsGlobalScope": false }, - "../../core/components/css-utilities/designTokens/Typography.story.tsx": { - "version": "c0379f12e73c1d2ba74cc17ffdac0cd5f803cbfbcb0160f39309dcc913c3c6d1", - "signature": "42a9dbec2186535d4c8fc314fd0f484c60701f1a831c6663cecb449700af1716", + "../../core/components/css-utilities/designTokens/Schema.tsx": { + "version": "4da2a55b1c31db6ec200658a9455b438d0d3ac94c0c70b56afbccbe81e0fe36f", + "signature": "16059f2389bf9f06c4fff930238472606123e371e2e797aff1349c9497448d56", "affectsGlobalScope": false }, - "../../core/components/molecules/Layout/index.story.tsx": { - "version": "423f1dfe179a09c1f35faddec8d78fe528f110ca38de16e92cc7d16135c3602a", - "signature": "0590faaf326a710fa3ecb3c256cc99f5d84e9eee6064ab6103a19ed81f09050c", + "../../core/components/css-utilities/designTokens/Utilities.tsx": { + "version": "773fec2dd9c2fdf9315b5ecf307281fa4b184eef4f4ac29a4353b587520126d6", + "signature": "0b101b2721b0e6bfbff480c267b1e3b58f3728a42d551906abf6ccda1a0ab19a", "affectsGlobalScope": false }, "../../node_modules/pretty-format/build/types.d.ts": { @@ -1847,118 +2152,88 @@ "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": "22f57a226061af289efd8d2a28d000cb6122783648ae7606f1c2e9c85d6f6416", "signature": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881", "affectsGlobalScope": false }, - "../../core/components/patterns/datePicker/dateAndTimePicker.story.tsx": { - "version": "b4901536f4fce8fa8c202bf6c86f8cc3167f5180dd72bee6b514634c87f9bd9c", - "signature": "d1d71f62d405cd49ffe4c8c5a042a74f70675653a22c3dfc1fec8184b2a78a7e", + "../../core/components/organisms/combobox/trigger/index.tsx": { + "version": "5d41aa8d2e99bcf48e6dbed6c936fc9779ceb117b148ca5df8f360ddc1b0d95b", + "signature": "bfb7f1c9a5612091021689bc548b97d649a9a47f89eab39cfb701b8034394c9e", "affectsGlobalScope": false }, - "../../core/components/patterns/dateRangePicker/withCustomPopover.story.tsx": { - "version": "62b67029f62106531db68dd0cb93999b7cbfd01a67783e08c7b40d1b52fcc765", - "signature": "582908329b69f7201a550a46183a72844d7f0ff2af67f01eac59a905f2fbf133", + "../../core/components/organisms/select/__test__/Select.test.tsx": { + "version": "fb39a55ed7f3f9134cc9ba698c596140c82fac1420b72ab268c5a07abbcc1de6", + "signature": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881", "affectsGlobalScope": false }, - "../../core/components/patterns/forms/CreatePassword.story.tsx": { - "version": "532ff79f2f031a44aba61a1e9a17e0b40decb9672230eddc9ecb95d490bd4b82", - "signature": "c1fb850fd204c9c70b2184080ddbb71269dd6b1cd2b4288b8b77d022e1f285b3", + "../../core/components/organisms/select/__test__/utils.test.tsx": { + "version": "0de9ba67678d1670154f07844331f9f2307a4c3062d815c2c4e40abc67094df0", + "signature": "8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881", "affectsGlobalScope": false }, - "../../core/components/patterns/forms/CreateUser.story.tsx": { - "version": "49bbd32e18c7aa17c7a49735ad39cd6157db1f5c253e5b24b2fd8c1602376fb9", - "signature": "0bb5abbe1dc644a507039554825127489caab855735814b69d924fb3edf5302f", + "../../node_modules/jest-diff/build/types.d.ts": { + "version": "71ba0678a3c647f5c0706ae975c031ace0d464e60f9ce56eaa7f1678d065aab7", + "signature": "71ba0678a3c647f5c0706ae975c031ace0d464e60f9ce56eaa7f1678d065aab7", "affectsGlobalScope": false }, - "../../core/components/patterns/forms/InlineForm.story.tsx": { - "version": "bb63b711270ffbed0bdd45c009100401090fe4f5c3082bdf290a41482d69ec51", - "signature": "d45a4ddf454e23ab86b7b653aafff029a2e508eb21cbf8549eefcf0301b51404", + "../../node_modules/jest-diff/build/index.d.ts": { + "version": "162c6f2951bd80ae6e16679378f382200b26bba9de8f255af3a2895fbfa670b4", + "signature": "162c6f2951bd80ae6e16679378f382200b26bba9de8f255af3a2895fbfa670b4", "affectsGlobalScope": false }, - "../../core/components/patterns/forms/InlineLabelForm.story.tsx": { - "version": "18cce8af5187805dce2736e4782fe53210d133fe5256567a1755ca3899652722", - "signature": "c5b0b1bbc5bc864b7c5d084fb5272d76ac5cfe63e17f75e256ef5232b52fc060", - "affectsGlobalScope": false + "../../node_modules/@types/jest/index.d.ts": { + "version": "375c56b1890858dcdae495877f0ce3b694980adf64762e2fd3fbe78e3eac76ba", + "signature": "375c56b1890858dcdae495877f0ce3b694980adf64762e2fd3fbe78e3eac76ba", + "affectsGlobalScope": true }, - "../../core/components/patterns/forms/StepperForm.story.tsx": { - "version": "79762741e72537da7848e2d71cc2d63268256e4389664d7775d666144cadf4f4", - "signature": "ff0a6fe849eadf1a1c60112e12f61c4ea4ce8ef071f6e5c6b2f5b1e203e22912", - "affectsGlobalScope": false + "../../node_modules/@types/testing-library__jest-dom/index.d.ts": { + "version": "dd4d769260a2b8cf19f0d2457f3142b24f083237932b0d1edb5fd728a989c8bd", + "signature": "dd4d769260a2b8cf19f0d2457f3142b24f083237932b0d1edb5fd728a989c8bd", + "affectsGlobalScope": true }, - "../../core/components/patterns/forms/TimePeriodForm.story.tsx": { - "version": "62a33ae0a21c4db906297377975e54e0e992643c5959b7a7d213236762cd8a27", - "signature": "a90d036e0f61cbe18b90b7dfc2fe2b9b075f6e5cce5602325059e80cb2508603", - "affectsGlobalScope": false + "../../core/components/organisms/textField/__test__/Textarea.test.tsx": { + "version": "029983cfb96ed5938f7e9e0d6dbb7f9de1802b81f476bd7ef2c3d5b140dc6e2f", + "signature": "5f9f3f8074805005c69f5c02a05d5ec4099b9d39fa8cad858b134fd60b98d3ae", + "affectsGlobalScope": true }, - "../../core/components/patterns/forms/VerificationCodeInput.story.tsx": { - "version": "bfcb08fe3f82df00eae57aeddb1bff11583933d396c1dcaf60794de0a5f1db20", - "signature": "8e547e5e1cb0b680ae5001086b478264cd5e1e84275539a527dc9c1f7462bdf9", + "../../core/utils/action.ts": { + "version": "475ce5f77cf4739dfdf31ba0def5e6cc07b108f6ad875544923bfd4614db7393", + "signature": "52eff0895b53806f45cb2cd8fce432b87cee4d2e8e2858082963653c3bf8596e", "affectsGlobalScope": false }, - "../../core/components/patterns/forms/basicForm.story.tsx": { - "version": "b426ce9ce178700e28d02c69e072c6d1b067e9b1fba5b724c132680759f67d45", - "signature": "37a5345c0f6b493624346bb88007d46673ec12c399a5a49ff552d37d7521f71c", + "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts": { + "version": "01b6d577a343d4e23ca5a754f6a6f24da5fa3602d445d348fd1d4f873e7feed7", + "signature": "01b6d577a343d4e23ca5a754f6a6f24da5fa3602d445d348fd1d4f873e7feed7", "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", - "affectsGlobalScope": false - }, - "../../core/components/patterns/layouts/miniSidebarTemplate.story.tsx": { - "version": "2a4341d2d4755129d0c0d0bb207bfb54692f8ddde33b5a5b3e3c039bbef3c450", - "signature": "598d3bdc9a3c248a6f9e46c413032b7e7f00174ae685aa5432e16f0bb2202485", - "affectsGlobalScope": false - }, - "../../core/components/patterns/layouts/narrowWidthContentTemplate.story.tsx": { - "version": "a5cddf7a5ddcc0ddb8a17f252f91899893a1f3a888412ff78bfba207e0a4feb3", - "signature": "42abab01aac1608f28108f378d029133ed612456319276402cc4855e7f19c8bb", - "affectsGlobalScope": false - }, - "../../core/components/patterns/layouts/resourceTableTemplate.story.tsx": { - "version": "719facaeb249246fd7d212af2939f59eaa1774a281b33178a8e227ff68370fe6", - "signature": "f2a08bdd745ac83b5f46dedebab8f9569e1c4cf685d41d9bff461e5d683c8faf", - "affectsGlobalScope": false - }, - "../../core/components/patterns/layouts/sidebarTemplate.story.tsx": { - "version": "eefe41a379d074109a7a92b83141b51c869dfc0002baa6fb736882816510ea4a", - "signature": "3e429df5d99756d374b6eb6bfd1d7c026c4453af23bbbccb4d09e41b9ee39dc2", - "affectsGlobalScope": false - }, - "../../core/components/patterns/verticalNavigation/sideNav.story.tsx": { - "version": "ec0947b3a840905498695f4a83292308f012566d58061406483ccf6bfa661a73", - "signature": "86de2353c64682d83051ad96acbb4d2ef145448d3a3985d0963b6abfb96798a1", + "../../node_modules/@storybook/router/dist/ts3.9/utils.d.ts": { + "version": "4ad348823e7c04268b38d6b2f185b194a91c7a61a75f333970bb9353be6d3c26", + "signature": "4ad348823e7c04268b38d6b2f185b194a91c7a61a75f333970bb9353be6d3c26", "affectsGlobalScope": false }, - "../../node_modules/@storybook/channels/dist/ts3.9/index.d.ts": { - "version": "01b6d577a343d4e23ca5a754f6a6f24da5fa3602d445d348fd1d4f873e7feed7", - "signature": "01b6d577a343d4e23ca5a754f6a6f24da5fa3602d445d348fd1d4f873e7feed7", + "../../node_modules/react-router/node_modules/history/index.d.ts": { + "version": "f438d15f5b9657ad0b526ff15b9a3779bd84ec68b8210de9a4cf56c2beb84a9e", + "signature": "f438d15f5b9657ad0b526ff15b9a3779bd84ec68b8210de9a4cf56c2beb84a9e", "affectsGlobalScope": false }, - "../../node_modules/@storybook/router/dist/ts3.9/utils.d.ts": { - "version": "bb93c69cbaeb9ed5d55658ef4bc3399df48360a884dd71be72651714ee7d4c11", - "signature": "bb93c69cbaeb9ed5d55658ef4bc3399df48360a884dd71be72651714ee7d4c11", + "../../node_modules/react-router/index.d.ts": { + "version": "4c9571972ab57c3bc9f59bcde67997bdd32573003077b3d7d3fa0709ecf39973", + "signature": "4c9571972ab57c3bc9f59bcde67997bdd32573003077b3d7d3fa0709ecf39973", "affectsGlobalScope": false }, - "../../node_modules/@types/reach__router/index.d.ts": { - "version": "94a274c882504de552300fc5d6be141820041e9e2c530064ea10a0b76e2f905f", - "signature": "94a274c882504de552300fc5d6be141820041e9e2c530064ea10a0b76e2f905f", + "../../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 +2246,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 +2287,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 +2327,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 +2337,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 +2377,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 +2387,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 +2421,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 +2432,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 +2442,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 +2452,23 @@ "affectsGlobalScope": false }, "../../node_modules/@storybook/api/dist/ts3.9/index.d.ts": { - "version": "a433739b7377a51dac457d6510ee563175494b71c8c3b8713badec4d49c99b69", - "signature": "a433739b7377a51dac457d6510ee563175494b71c8c3b8713badec4d49c99b69", + "version": "74d261da2ea12ac078ca44ac5eb00e342bcf5ff28c22796867966bf1c04aac9c", + "signature": "74d261da2ea12ac078ca44ac5eb00e342bcf5ff28c22796867966bf1c04aac9c", "affectsGlobalScope": false }, "../../node_modules/@types/webpack-env/index.d.ts": { - "version": "c856e68ae3c730c5b59b0a5c0c8e951596ae79da7d29c9a1b1a8257109f3f3cc", - "signature": "c856e68ae3c730c5b59b0a5c0c8e951596ae79da7d29c9a1b1a8257109f3f3cc", + "version": "3a1e422f919c70fca66e94dc641ad8d9732b3d2533ac047b8a9aaca9eea3aa10", + "signature": "3a1e422f919c70fca66e94dc641ad8d9732b3d2533ac047b8a9aaca9eea3aa10", "affectsGlobalScope": true }, - "../../node_modules/@storybook/addons/dist/ts3.9/hooks.d.ts": { - "version": "61eaafbbc6acf01e7bb9fdfcef24486198d8c2d34328f3af2a56cfe63ccadc42", - "signature": "61eaafbbc6acf01e7bb9fdfcef24486198d8c2d34328f3af2a56cfe63ccadc42", - "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 +2481,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/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/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/input/input.d.ts": { - "version": "1ff53a8ed8cc1c0381e5164ac0223ad28db0362a378cc947bd611115d0b5840a", - "signature": "1ff53a8ed8cc1c0381e5164ac0223ad28db0362a378cc947bd611115d0b5840a", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/csf/dist/SBType.d.ts": { + "version": "3819fe3eacd5a1ce3dd8dfc14b81d7e558075e0b0078ecd49da69e4ba8f28d3d", + "signature": "3819fe3eacd5a1ce3dd8dfc14b81d7e558075e0b0078ecd49da69e4ba8f28d3d", "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/csf/dist/story.d.ts": { + "version": "258b1dd7b027f299399832158c1a029fd7e28dd4626a4e36834561eacfe56179", + "signature": "258b1dd7b027f299399832158c1a029fd7e28dd4626a4e36834561eacfe56179", "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/includeConditionalArg.d.ts": { + "version": "0600b53c0d4016a371a7dd9902597271c3bfccd923bb226adcfd1a8baa712167", + "signature": "0600b53c0d4016a371a7dd9902597271c3bfccd923bb226adcfd1a8baa712167", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/enums.d.ts": { - "version": "3192b54876effeb978785858ec960ba7c57f81171070b5a0054a011ca09795f2", - "signature": "3192b54876effeb978785858ec960ba7c57f81171070b5a0054a011ca09795f2", + "../../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/popperOffsets.d.ts": { - "version": "869ac759ae8f304536d609082732cb025a08dcc38237fe619caf3fcdd41dde6f", - "signature": "869ac759ae8f304536d609082732cb025a08dcc38237fe619caf3fcdd41dde6f", + "../../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/flip.d.ts": { - "version": "0ea900fe6565f9133e06bce92e3e9a4b5a69234e83d40b7df2e1752b8d2b5002", - "signature": "0ea900fe6565f9133e06bce92e3e9a4b5a69234e83d40b7df2e1752b8d2b5002", + "../../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/hide.d.ts": { - "version": "e5408f95ca9ac5997c0fea772d68b1bf390e16c2a8cad62858553409f2b12412", - "signature": "e5408f95ca9ac5997c0fea772d68b1bf390e16c2a8cad62858553409f2b12412", + "../../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/offset.d.ts": { - "version": "c512c0e8912b562194a3664dbe894a13b962b7fdc5e6467049e5776c9c573093", - "signature": "c512c0e8912b562194a3664dbe894a13b962b7fdc5e6467049e5776c9c573093", + "../../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/eventListeners.d.ts": { - "version": "9260b03453970e98ce9b1ad851275acd9c7d213c26c7d86bae096e8e9db4e62b", - "signature": "9260b03453970e98ce9b1ad851275acd9c7d213c26c7d86bae096e8e9db4e62b", + "../../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/computeStyles.d.ts": { - "version": "c47202f28798de29986d7c1fcca4be4031fb72cd1c0dab001a8c9b19eddc7e07", - "signature": "c47202f28798de29986d7c1fcca4be4031fb72cd1c0dab001a8c9b19eddc7e07", + "../../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/arrow.d.ts": { - "version": "969132719f0f5822e669f6da7bd58ea0eb47f7899c1db854f8f06379f753b365", - "signature": "969132719f0f5822e669f6da7bd58ea0eb47f7899c1db854f8f06379f753b365", + "../../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/modifiers/preventOverflow.d.ts": { - "version": "8854881635098c8842b5e489272fc951546b2767e4f447a88ca9ce50a6ca9d34", - "signature": "8854881635098c8842b5e489272fc951546b2767e4f447a88ca9ce50a6ca9d34", + "../../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/applyStyles.d.ts": { - "version": "2cbc88cf54c50e74ee5642c12217e6fd5415e1b35232d5666d53418bae210b3b", - "signature": "2cbc88cf54c50e74ee5642c12217e6fd5415e1b35232d5666d53418bae210b3b", + "../../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/types.d.ts": { - "version": "b96e8e3de3b3f500d50aefe067db5e2f3d8fdd51dc002727038c1b19c483205c", - "signature": "b96e8e3de3b3f500d50aefe067db5e2f3d8fdd51dc002727038c1b19c483205c", + "../../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/modifiers/index.d.ts": { - "version": "5ea98f44cc9de1fe05d037afe4813f3dcd3a8c5de43bdd7db24624a364fad8e6", - "signature": "5ea98f44cc9de1fe05d037afe4813f3dcd3a8c5de43bdd7db24624a364fad8e6", + "../../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/utils/detectOverflow.d.ts": { - "version": "3a1e3199054ae95161fc6a8418ee28cd774f1a258d1b0ee14aa71c48a1f8448c", - "signature": "3a1e3199054ae95161fc6a8418ee28cd774f1a258d1b0ee14aa71c48a1f8448c", + "../../node_modules/react-textarea-autosize/dist/declarations/src/index.d.ts": { + "version": "d4990b42f1ac9307bffb12d35f57d89dbc7cf617c7eb01a791fcaa4a4069eaa6", + "signature": "d4990b42f1ac9307bffb12d35f57d89dbc7cf617c7eb01a791fcaa4a4069eaa6", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/createPopper.d.ts": { - "version": "0b3fc2d2d41ad187962c43cb38117d0aee0d3d515c8a6750aaea467da76b42aa", - "signature": "0b3fc2d2d41ad187962c43cb38117d0aee0d3d515c8a6750aaea467da76b42aa", + "../../node_modules/react-textarea-autosize/dist/react-textarea-autosize.cjs.d.ts": { + "version": "e38d5bb0f0d07c2105b55ae8845df8c8271822186005469796be48c68058ef33", + "signature": "e38d5bb0f0d07c2105b55ae8845df8c8271822186005469796be48c68058ef33", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/popper-lite.d.ts": { - "version": "ed219f328224100dad91505388453a8c24a97367d1bc13dcec82c72ab13012b7", - "signature": "ed219f328224100dad91505388453a8c24a97367d1bc13dcec82c72ab13012b7", + "../../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/lib/popper.d.ts": { - "version": "6847b17c96eb44634daa112849db0c9ade344fe23e6ced190b7eeb862beca9f4", - "signature": "6847b17c96eb44634daa112849db0c9ade344fe23e6ced190b7eeb862beca9f4", + "../../node_modules/@storybook/addon-docs/dist/ts3.9/blocks/Anchor.d.ts": { + "version": "250b248631e324bcfa82caa03d8f48ad08cb2903e659e09eb7951ec28c68ad77", + "signature": "250b248631e324bcfa82caa03d8f48ad08cb2903e659e09eb7951ec28c68ad77", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/lib/index.d.ts": { - "version": "d479a5128f27f63b58d57a61e062bd68fa43b684271449a73a4d3e3666a599a7", - "signature": "d479a5128f27f63b58d57a61e062bd68fa43b684271449a73a4d3e3666a599a7", + "../../node_modules/synchronous-promise/index.d.ts": { + "version": "aa9e4a9713ef35a17d2c37648e6bca646b94d80e8109b792c6e199f2d76803ce", + "signature": "aa9e4a9713ef35a17d2c37648e6bca646b94d80e8109b792c6e199f2d76803ce", "affectsGlobalScope": false }, - "../../node_modules/@popperjs/core/index.d.ts": { - "version": "6f308b141358ac799edc3e83e887441852205dc1348310d30b62c69438b93ca0", - "signature": "6f308b141358ac799edc3e83e887441852205dc1348310d30b62c69438b93ca0", + "../../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/WithTooltip.d.ts": { - "version": "f4205476566ce5a01be9767692f15cc3cd323e7979754023f86fc303dc912c2a", - "signature": "f4205476566ce5a01be9767692f15cc3cd323e7979754023f86fc303dc912c2a", + "../../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/lazy-WithTooltip.d.ts": { - "version": "f1f7f3857a41db1a188a3881bc8ce8db1b0f9d76715607e2807bbfb94285888d", - "signature": "f1f7f3857a41db1a188a3881bc8ce8db1b0f9d76715607e2807bbfb94285888d", + "../../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/TooltipMessage.d.ts": { - "version": "ea26aafe49ae12b18e146cfd587c1627eb35fa6d918b7ec4d54019d512e6d530", - "signature": "ea26aafe49ae12b18e146cfd587c1627eb35fa6d918b7ec4d54019d512e6d530", + "../../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/TooltipNote.d.ts": { - "version": "224ae7123b17c372d05507c29b1d90ceaa004384ca7f179e1e4d60f861f869d1", - "signature": "224ae7123b17c372d05507c29b1d90ceaa004384ca7f179e1e4d60f861f869d1", + "../../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/tooltip/ListItem.d.ts": { - "version": "7da3d88ad0c75495b2fd801bea91558c772141377df1d1d15aca7243624a8d88", - "signature": "7da3d88ad0c75495b2fd801bea91558c772141377df1d1d15aca7243624a8d88", + "../../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/tooltip/TooltipLinkList.d.ts": { - "version": "de6918d94f3a0df16fc912690290fef4ad0b76f09780da3bd24c3e6d1b0c9cd8", - "signature": "de6918d94f3a0df16fc912690290fef4ad0b76f09780da3bd24c3e6d1b0c9cd8", + "../../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/tabs/tabs.d.ts": { - "version": "5da0e8489def7f04c7b0947da04b0fc0653bdf9e3739e29cd2dcfdcedd98f36c", - "signature": "5da0e8489def7f04c7b0947da04b0fc0653bdf9e3739e29cd2dcfdcedd98f36c", + "../../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/button.d.ts": { - "version": "6a98254aa6ecbdf88511d9e5657210db51f58a6f06a078872e75438dbef710dd", - "signature": "6a98254aa6ecbdf88511d9e5657210db51f58a6f06a078872e75438dbef710dd", + "../../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/bar/separator.d.ts": { - "version": "2843274da43dafd1a006c3abf53027297c4f6c7a8a07ed720aa29ade5bab0b97", - "signature": "2843274da43dafd1a006c3abf53027297c4f6c7a8a07ed720aa29ade5bab0b97", + "../../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/bar/bar.d.ts": { - "version": "57a11e63068bff37cb05310cb638dad8e69a933ca4a8adf866670c482e566a10", - "signature": "57a11e63068bff37cb05310cb638dad8e69a933ca4a8adf866670c482e566a10", + "../../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/addon-panel/addon-panel.d.ts": { - "version": "b3ff83c15f296507e6cb9f875eb9c299f03ea1b4ab4bda70cf0fda1e786503e9", - "signature": "b3ff83c15f296507e6cb9f875eb9c299f03ea1b4ab4bda70cf0fda1e786503e9", + "../../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/icons.d.ts": { - "version": "0c78968a032eaac4892518fb08fe092ab94d96f8dc3f52012382a731bfef1456", - "signature": "0c78968a032eaac4892518fb08fe092ab94d96f8dc3f52012382a731bfef1456", + "../../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/icon/svg.d.ts": { - "version": "435ae1f04887bb884d6e0a788d7032a079e8cd0a786bbb49bf8a293112bcb61f", - "signature": "435ae1f04887bb884d6e0a788d7032a079e8cd0a786bbb49bf8a293112bcb61f", + "../../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/icon/icon.d.ts": { - "version": "0f3b8aebc25f55e110865c4c31537cc61370a825aa6ccb3f10b643c9b0cac7cc", - "signature": "0f3b8aebc25f55e110865c4c31537cc61370a825aa6ccb3f10b643c9b0cac7cc", + "../../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/brand/StorybookLogo.d.ts": { - "version": "8b092618c0f59fe387916c4da4a73de9ba5fe3b0859a56e12f63277097b8a10f", - "signature": "8b092618c0f59fe387916c4da4a73de9ba5fe3b0859a56e12f63277097b8a10f", + "../../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/brand/StorybookIcon.d.ts": { - "version": "38e8569cc9571bbc7f54af6e35af4da8d3bd19806b7b54e5ea1f95be04bdaae0", - "signature": "38e8569cc9571bbc7f54af6e35af4da8d3bd19806b7b54e5ea1f95be04bdaae0", + "../../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/Description.d.ts": { - "version": "504f73082e3c55dc806b318c7f2d8359f2a11882fc74326aa8355127601f5100", - "signature": "504f73082e3c55dc806b318c7f2d8359f2a11882fc74326aa8355127601f5100", + "../../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/DocsPage.d.ts": { - "version": "2bf19d29f8dfa21d3b1e9d02240a6ab00dfb3d9e4e0c19a6e2bae7a9cd6d55d3", - "signature": "2bf19d29f8dfa21d3b1e9d02240a6ab00dfb3d9e4e0c19a6e2bae7a9cd6d55d3", + "../../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/Source.d.ts": { - "version": "e6302abcc277710b37d987bd3ac0f4d07a8a84d4e164c38ff5c6b1d24c376667", - "signature": "e6302abcc277710b37d987bd3ac0f4d07a8a84d4e164c38ff5c6b1d24c376667", + "../../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/Preview.d.ts": { - "version": "59e5539e2bb1eb03de643e0d12115bb62800eb9f62872477497c965dfe67fdbb", - "signature": "59e5539e2bb1eb03de643e0d12115bb62800eb9f62872477497c965dfe67fdbb", + "../../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/types.d.ts": { - "version": "f0173b9051458c6085f2759727a13b0bf583f92eeff1c119ad4ac660ee892eba", - "signature": "f0173b9051458c6085f2759727a13b0bf583f92eeff1c119ad4ac660ee892eba", + "../../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/ArgsTable.d.ts": { - "version": "1ad5d74fbdd4d8ab340e65591bd3c66236326892facfb1a747b2a6084afea213", - "signature": "1ad5d74fbdd4d8ab340e65591bd3c66236326892facfb1a747b2a6084afea213", + "../../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/TabbedArgsTable.d.ts": { - "version": "ffc417b36bb84e55290842204f0be5eabec0daf179f019a9219ddf2d7dc3ebaa", - "signature": "ffc417b36bb84e55290842204f0be5eabec0daf179f019a9219ddf2d7dc3ebaa", + "../../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/ArgsTable/NoControlsWarning.d.ts": { - "version": "1bd5217982b2bf7eeb6d0f87ab0ee7b090744c2c8b096cc0c3d4985081521cab", - "signature": "1bd5217982b2bf7eeb6d0f87ab0ee7b090744c2c8b096cc0c3d4985081521cab", + "../../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/ArgsTable/index.d.ts": { - "version": "a9e5000632f6250a4267d7523948d5605d8b99cd870bef9a5c582c235e2c1a52", - "signature": "a9e5000632f6250a4267d7523948d5605d8b99cd870bef9a5c582c235e2c1a52", + "../../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/Story.d.ts": { - "version": "f99c8045abb10ed1cddc40e6642fdd1d4802bbfc2e26ad30092413a1a37dad24", - "signature": "f99c8045abb10ed1cddc40e6642fdd1d4802bbfc2e26ad30092413a1a37dad24", + "../../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/IFrame.d.ts": { - "version": "16870ebef7d9d08a19a9bfaa488253f968ab4423e1d5e04f7c752f0917496ddb", - "signature": "16870ebef7d9d08a19a9bfaa488253f968ab4423e1d5e04f7c752f0917496ddb", + "../../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/Typeset.d.ts": { - "version": "d683d2364094aadc27d87cdeee8e9df01afc55ba2cc8d7ae9cd99225e96da004", - "signature": "d683d2364094aadc27d87cdeee8e9df01afc55ba2cc8d7ae9cd99225e96da004", + "../../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/ColorPalette.d.ts": { - "version": "0d0a11acf058175bc7ac423fad59a490ff77eec1cb6437287b918d88baa128b1", - "signature": "0d0a11acf058175bc7ac423fad59a490ff77eec1cb6437287b918d88baa128b1", + "../../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/blocks/IconGallery.d.ts": { - "version": "7e39367785f759fe002dd35c6a87cb0fe53a3f9ce228b008ad81f6c913ab27f6", - "signature": "7e39367785f759fe002dd35c6a87cb0fe53a3f9ce228b008ad81f6c913ab27f6", + "../../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/blocks/index.d.ts": { - "version": "dbe3f9543a11118fbd6fb940939d265ef15e0d1de540661c2d9ca2e41f362dab", - "signature": "dbe3f9543a11118fbd6fb940939d265ef15e0d1de540661c2d9ca2e41f362dab", + "../../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/types.d.ts": { - "version": "413a5da2ec2d57dba44a50caf28d401f1574298c38dcf61e7630f134ab661647", - "signature": "413a5da2ec2d57dba44a50caf28d401f1574298c38dcf61e7630f134ab661647", + "../../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/Array.d.ts": { - "version": "b2da7a9e821c5df34f4cff4e74fde5d869cd9cfa842cb29e8f939e4569d4a006", - "signature": "b2da7a9e821c5df34f4cff4e74fde5d869cd9cfa842cb29e8f939e4569d4a006", + "../../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/Boolean.d.ts": { - "version": "04245b669827d1b0b9e56be1e33a4a388c1287da5bbb1e0e0dbfefb7db87b227", - "signature": "04245b669827d1b0b9e56be1e33a4a388c1287da5bbb1e0e0dbfefb7db87b227", + "../../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/Color.d.ts": { - "version": "8d66c6001f9db9a8d3a732cbd97b9cfe9862ef4e530771ed074c9ffaea886546", - "signature": "8d66c6001f9db9a8d3a732cbd97b9cfe9862ef4e530771ed074c9ffaea886546", + "../../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/Date.d.ts": { - "version": "71c80528f0ae98b8527e89204fe6a3b45e209bef429e0d94ef2ae85c0294137d", - "signature": "71c80528f0ae98b8527e89204fe6a3b45e209bef429e0d94ef2ae85c0294137d", + "../../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/Number.d.ts": { - "version": "a8acd8868f1f922c56ecbded384fd7e752129b46f444a8a7b7e5c5f7c8c6a43b", - "signature": "a8acd8868f1f922c56ecbded384fd7e752129b46f444a8a7b7e5c5f7c8c6a43b", + "../../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/options/Options.d.ts": { - "version": "420640664c21ee64f7923fcec4bfe7638b0533e1ce05a187c47325bcdf6f4500", - "signature": "420640664c21ee64f7923fcec4bfe7638b0533e1ce05a187c47325bcdf6f4500", + "../../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/options/index.d.ts": { - "version": "da2780126c0088a28592d3ddfd2f997109457e41381a7a83706188c0966d61aa", - "signature": "da2780126c0088a28592d3ddfd2f997109457e41381a7a83706188c0966d61aa", + "../../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/Object.d.ts": { - "version": "053120d217ea30f9748ff01d56953a0657c65bd0616be313fd73fda14b783b76", - "signature": "053120d217ea30f9748ff01d56953a0657c65bd0616be313fd73fda14b783b76", + "../../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/Range.d.ts": { - "version": "12f26fe06a092c14fe8aa2c58077650d7c74bdd7b38efcac2851aaf6edb38a0b", - "signature": "12f26fe06a092c14fe8aa2c58077650d7c74bdd7b38efcac2851aaf6edb38a0b", + "../../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/Text.d.ts": { - "version": "a7545005a8d0f65ed0307a17cdde07e636e1aa762b2d6804107ab12a62d7109c", - "signature": "a7545005a8d0f65ed0307a17cdde07e636e1aa762b2d6804107ab12a62d7109c", + "../../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/controls/Files.d.ts": { - "version": "28f6bd0135271a7ca69011f733f217ae40a63eece5f1a682cc266c6cf45811cb", - "signature": "28f6bd0135271a7ca69011f733f217ae40a63eece5f1a682cc266c6cf45811cb", + "../../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/controls/index.d.ts": { - "version": "bbaf4c1ba30e4fe5c9670dbf287f75ff13072740b6d5ae2d223e256058cdd793", - "signature": "bbaf4c1ba30e4fe5c9670dbf287f75ff13072740b6d5ae2d223e256058cdd793", + "../../node_modules/@storybook/addon-docs/node_modules/@storybook/store/dist/ts3.9/StoryStore.d.ts": { + "version": "4d114335033a164073e9fb2320a24c5dc44525ab4e342ec25c01baef83b1041a", + "signature": "4d114335033a164073e9fb2320a24c5dc44525ab4e342ec25c01baef83b1041a", "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/parameters.d.ts": { + "version": "4b1a4bf2a32618f74b38745710130a89ac2d955a62e133ef05111a7eddf009f5", + "signature": "4b1a4bf2a32618f74b38745710130a89ac2d955a62e133ef05111a7eddf009f5", "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/filterArgTypes.d.ts": { + "version": "9c3d635be0246132dd76875a4bc3dac5139c644a436a488a45276c203f32b5d1", + "signature": "9c3d635be0246132dd76875a4bc3dac5139c644a436a488a45276c203f32b5d1", "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/inferControls.d.ts": { + "version": "a60b1a5dff484334ed305ceafdaf5fd6305dadc8b0d144e733fa9432580bdfe4", + "signature": "a60b1a5dff484334ed305ceafdaf5fd6305dadc8b0d144e733fa9432580bdfe4", "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/decorators.d.ts": { + "version": "cb9812c41f87bebeb12bdfca83f30e7084f68852c32b655435598a2710c4f428", + "signature": "cb9812c41f87bebeb12bdfca83f30e7084f68852c32b655435598a2710c4f428", "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/args.d.ts": { + "version": "c6ad9dd0fe7be2239514419f35b3fd3a10acecfdc9edb2e78bb6c9d7adb26acc", + "signature": "c6ad9dd0fe7be2239514419f35b3fd3a10acecfdc9edb2e78bb6c9d7adb26acc", "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/autoTitle.d.ts": { + "version": "f62b7e8866a79edcdbfde99dc5df8bd69045d8d275b992b855e1d1ca5f8de15d", + "signature": "f62b7e8866a79edcdbfde99dc5df8bd69045d8d275b992b855e1d1ca5f8de15d", "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/sortStories.d.ts": { + "version": "213f651eadbf5736883d63725669993618c3516567ccbd5a43f68b4319d4c3ab", + "signature": "213f651eadbf5736883d63725669993618c3516567ccbd5a43f68b4319d4c3ab", "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/index.d.ts": { + "version": "25ea2cf6abce2a6cd833d6c9f5ab298352a90d51a53d2e67fb330d77bf2a74c1", + "signature": "25ea2cf6abce2a6cd833d6c9f5ab298352a90d51a53d2e67fb330d77bf2a74c1", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/parameters.d.ts": { - "version": "f28c53db804af1a03f44796f6e6974c625f78c5b2caf48da814be789c428de39", - "signature": "f28c53db804af1a03f44796f6e6974c625f78c5b2caf48da814be789c428de39", + "../../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/config_api.d.ts": { - "version": "d757d6d448845614be09acf8d59a25bc1889d9beb6435fca5273adf5746bdc26", - "signature": "d757d6d448845614be09acf8d59a25bc1889d9beb6435fca5273adf5746bdc26", + "../../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/client-api/dist/ts3.9/pathToId.d.ts": { - "version": "1deb18d0229913a06465d88e51baa9bc79a697a809fa5a402229482faec4c7d0", - "signature": "1deb18d0229913a06465d88e51baa9bc79a697a809fa5a402229482faec4c7d0", + "../../node_modules/@storybook/preview-web/node_modules/@storybook/csf/dist/index.d.ts": { + "version": "216708d627d353eaddcafce82bbafb950f8443d7070235624d2c7db1abd465d0", + "signature": "216708d627d353eaddcafce82bbafb950f8443d7070235624d2c7db1abd465d0", "affectsGlobalScope": false }, - "../../node_modules/@storybook/client-api/dist/ts3.9/simulate-pageload.d.ts": { - "version": "da3c50cff44e0f5753cb68ede19138f180c44ee4a014385ce1827d807c843044", - "signature": "da3c50cff44e0f5753cb68ede19138f180c44ee4a014385ce1827d807c843044", + "../../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 +2981,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 +3032,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 +3052,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 +3062,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 +3077,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 +3102,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 +3117,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 +3151,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 +3166,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 +3187,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 +3201,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 +3217,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,38 +3232,13 @@ "affectsGlobalScope": false }, "../../node_modules/@types/babel__core/index.d.ts": { - "version": "71c56bdaa82d7ce75a72d3c06c04fe10becec09bd9c4ef21776a2a055d3f428e", - "signature": "71c56bdaa82d7ce75a72d3c06c04fe10becec09bd9c4ef21776a2a055d3f428e", - "affectsGlobalScope": false - }, - "../../node_modules/@types/braces/index.d.ts": { - "version": "40304c033bb6e39f0eb01b106d29523950148dfc3cd547ddb500167871171281", - "signature": "40304c033bb6e39f0eb01b106d29523950148dfc3cd547ddb500167871171281", - "affectsGlobalScope": false - }, - "../../node_modules/@types/color-name/index.d.ts": { - "version": "f0cb4b3ab88193e3e51e9e2622e4c375955003f1f81239d72c5b7a95415dad3e", - "signature": "f0cb4b3ab88193e3e51e9e2622e4c375955003f1f81239d72c5b7a95415dad3e", - "affectsGlobalScope": false - }, - "../../node_modules/@types/color-convert/conversions.d.ts": { - "version": "92450d617e92f96354d281c8ed5613fd16cacea79eb60b1e9736494b3c057e69", - "signature": "92450d617e92f96354d281c8ed5613fd16cacea79eb60b1e9736494b3c057e69", - "affectsGlobalScope": false - }, - "../../node_modules/@types/color-convert/route.d.ts": { - "version": "8a9086357fe289efb682dc925358f30b6312c7219a5ca92212857a0a79612012", - "signature": "8a9086357fe289efb682dc925358f30b6312c7219a5ca92212857a0a79612012", - "affectsGlobalScope": false - }, - "../../node_modules/@types/color-convert/index.d.ts": { - "version": "92bc42ed0e2d41559513fd457ee30d834c2f0fedb9ed5004c029cbf0ad2f8bd9", - "signature": "92bc42ed0e2d41559513fd457ee30d834c2f0fedb9ed5004c029cbf0ad2f8bd9", + "version": "80164ffebe1723a50e020a648e0623c026ff39be13c5cd45e6a82d0fcc06e2d0", + "signature": "80164ffebe1723a50e020a648e0623c026ff39be13c5cd45e6a82d0fcc06e2d0", "affectsGlobalScope": false }, - "../../node_modules/@types/estree/index.d.ts": { - "version": "89ccbe04e737ce613f5f04990271cfa84901446350b8551b0555ddf19319723b", - "signature": "89ccbe04e737ce613f5f04990271cfa84901446350b8551b0555ddf19319723b", + "../../node_modules/@types/node/assert.d.ts": { + "version": "0d5a2ee1fdfa82740e0103389b9efd6bfe145a20018a2da3c02b89666181f4d9", + "signature": "0d5a2ee1fdfa82740e0103389b9efd6bfe145a20018a2da3c02b89666181f4d9", "affectsGlobalScope": false }, "../../node_modules/@types/node/assert/strict.d.ts": { @@ -2962,33 +3247,33 @@ "affectsGlobalScope": false }, "../../node_modules/@types/node/globals.d.ts": { - "version": "bf629ebbac2c65601bcb5c032644023a2b4b3b1151c0d1bf60ced7c35cc81b5d", - "signature": "bf629ebbac2c65601bcb5c032644023a2b4b3b1151c0d1bf60ced7c35cc81b5d", + "version": "92d63add669d18ebc349efbacd88966d6f2ccdddfb1b880b2db98ae3aa7bf7c4", + "signature": "92d63add669d18ebc349efbacd88966d6f2ccdddfb1b880b2db98ae3aa7bf7c4", "affectsGlobalScope": true }, "../../node_modules/@types/node/async_hooks.d.ts": { - "version": "0ddef426964b396f57357b9e61209dd558f7652dd06af5a35893d296c29dff7a", - "signature": "0ddef426964b396f57357b9e61209dd558f7652dd06af5a35893d296c29dff7a", + "version": "ccc94049a9841fe47abe5baef6be9a38fc6228807974ae675fb15dc22531b4be", + "signature": "ccc94049a9841fe47abe5baef6be9a38fc6228807974ae675fb15dc22531b4be", "affectsGlobalScope": false }, "../../node_modules/@types/node/buffer.d.ts": { - "version": "b0f339dfc10ee8baac59f7d37d24d963216311b8894a776bc0ed18b77de81fe2", - "signature": "b0f339dfc10ee8baac59f7d37d24d963216311b8894a776bc0ed18b77de81fe2", + "version": "9acfe4d1ff027015151ce81d60797b04b52bffe97ad8310bb0ec2e8fd61e1303", + "signature": "9acfe4d1ff027015151ce81d60797b04b52bffe97ad8310bb0ec2e8fd61e1303", "affectsGlobalScope": true }, "../../node_modules/@types/node/child_process.d.ts": { - "version": "ca3b86d3300cb6817ee3d161421db0b4994d168fb5820a33c89743bc73716292", - "signature": "ca3b86d3300cb6817ee3d161421db0b4994d168fb5820a33c89743bc73716292", + "version": "95843d5cfafced8f3f8a5ce57d2335f0bcd361b9483587d12a25e4bd403b8216", + "signature": "95843d5cfafced8f3f8a5ce57d2335f0bcd361b9483587d12a25e4bd403b8216", "affectsGlobalScope": false }, "../../node_modules/@types/node/cluster.d.ts": { - "version": "3669eaf567a388a01c91df316093c2c8f565ba4c27a4ae0866e45ec932472b15", - "signature": "3669eaf567a388a01c91df316093c2c8f565ba4c27a4ae0866e45ec932472b15", + "version": "afc6e96061af46bcff47246158caee7e056f5288783f2d83d6858cd25be1c565", + "signature": "afc6e96061af46bcff47246158caee7e056f5288783f2d83d6858cd25be1c565", "affectsGlobalScope": false }, "../../node_modules/@types/node/console.d.ts": { - "version": "5012207e217a67f821855e1ce3059e089953847e1ce0adff8186a46c459e96f7", - "signature": "5012207e217a67f821855e1ce3059e089953847e1ce0adff8186a46c459e96f7", + "version": "34f5bcac12b36d70304b73de5f5aab3bb91bd9919f984be80579ebcad03a624e", + "signature": "34f5bcac12b36d70304b73de5f5aab3bb91bd9919f984be80579ebcad03a624e", "affectsGlobalScope": true }, "../../node_modules/@types/node/constants.d.ts": { @@ -2997,123 +3282,123 @@ "affectsGlobalScope": false }, "../../node_modules/@types/node/crypto.d.ts": { - "version": "c9ea3bedb7f5bfb493e375136dc70723bded041efc311c654d06ab7a7d0280d8", - "signature": "c9ea3bedb7f5bfb493e375136dc70723bded041efc311c654d06ab7a7d0280d8", + "version": "2f520601649a893e6a49a8851ebfcf4be8ce090dc1281c2a08a871cb04e8251f", + "signature": "2f520601649a893e6a49a8851ebfcf4be8ce090dc1281c2a08a871cb04e8251f", "affectsGlobalScope": false }, "../../node_modules/@types/node/dgram.d.ts": { - "version": "decd29e5c9dfd0159e88721a4986dff6b58d255012ade0cacba7130dc7abe3c1", - "signature": "decd29e5c9dfd0159e88721a4986dff6b58d255012ade0cacba7130dc7abe3c1", + "version": "f50c975ab7b50e25a69e3d8a3773894125b44e9698924105f23b812bf7488baf", + "signature": "f50c975ab7b50e25a69e3d8a3773894125b44e9698924105f23b812bf7488baf", "affectsGlobalScope": false }, "../../node_modules/@types/node/diagnostics_channel.d.ts": { - "version": "7ed1067f8c4acf58cdaf97c0a755445a56a61b54ef70d59da7aa73743912b189", - "signature": "7ed1067f8c4acf58cdaf97c0a755445a56a61b54ef70d59da7aa73743912b189", + "version": "2b8c764f856a1dd0a9a2bf23e5efddbff157de8138b0754010be561ae5fcaa90", + "signature": "2b8c764f856a1dd0a9a2bf23e5efddbff157de8138b0754010be561ae5fcaa90", "affectsGlobalScope": false }, "../../node_modules/@types/node/dns.d.ts": { - "version": "71e7ae0849476c298e522bc8a7b29e85a982f7b9ec90a133bf8f45a8c25d01c9", - "signature": "71e7ae0849476c298e522bc8a7b29e85a982f7b9ec90a133bf8f45a8c25d01c9", + "version": "76650408392bf49a8fbf3e2b6b302712a92d76af77b06e2da1cc8077359c4409", + "signature": "76650408392bf49a8fbf3e2b6b302712a92d76af77b06e2da1cc8077359c4409", "affectsGlobalScope": false }, "../../node_modules/@types/node/dns/promises.d.ts": { - "version": "95f59cb29266f9a11b4eadd67b6b96268d8a0e0ab99a933df0d9b7ec5a42806b", - "signature": "95f59cb29266f9a11b4eadd67b6b96268d8a0e0ab99a933df0d9b7ec5a42806b", + "version": "0af3121e68297b2247dd331c0d24dba599e50736a7517a5622d5591aae4a3122", + "signature": "0af3121e68297b2247dd331c0d24dba599e50736a7517a5622d5591aae4a3122", "affectsGlobalScope": false }, "../../node_modules/@types/node/domain.d.ts": { - "version": "9c158ac9bc84d33422b85d4f274f47790e59b9729e739d4fc3f3abff8770d270", - "signature": "9c158ac9bc84d33422b85d4f274f47790e59b9729e739d4fc3f3abff8770d270", + "version": "6972fca26f6e9bd56197568d4379f99071a90766e06b4fcb5920a0130a9202be", + "signature": "6972fca26f6e9bd56197568d4379f99071a90766e06b4fcb5920a0130a9202be", "affectsGlobalScope": false }, "../../node_modules/@types/node/events.d.ts": { - "version": "a976ad617bce5d95209068df27cb6ad69e367f2a72e193c7dbabb73dc35b533c", - "signature": "a976ad617bce5d95209068df27cb6ad69e367f2a72e193c7dbabb73dc35b533c", + "version": "4a2628e95962c8ab756121faa3ac2ed348112ff7a87b5c286dd2cc3326546b4c", + "signature": "4a2628e95962c8ab756121faa3ac2ed348112ff7a87b5c286dd2cc3326546b4c", "affectsGlobalScope": true }, "../../node_modules/@types/node/fs.d.ts": { - "version": "ae970d705be0b31839d7e773efc751ab00438f5c1ff36577cc2ac72c3156c44b", - "signature": "ae970d705be0b31839d7e773efc751ab00438f5c1ff36577cc2ac72c3156c44b", + "version": "80793b2277f31baa199234daed806fff0fb11491d1ebd3357e520c3558063f00", + "signature": "80793b2277f31baa199234daed806fff0fb11491d1ebd3357e520c3558063f00", "affectsGlobalScope": false }, "../../node_modules/@types/node/fs/promises.d.ts": { - "version": "252892c3bc1a3322a655e887671e4bb5dcaf7dcd5a6f5a78d210c64419733a8d", - "signature": "252892c3bc1a3322a655e887671e4bb5dcaf7dcd5a6f5a78d210c64419733a8d", + "version": "a049a59a02009fc023684fcfaf0ac526fe36c35dcc5d2b7d620c1750ba11b083", + "signature": "a049a59a02009fc023684fcfaf0ac526fe36c35dcc5d2b7d620c1750ba11b083", "affectsGlobalScope": false }, "../../node_modules/@types/node/http.d.ts": { - "version": "f7d60b8a9be58779e95cce126c4a3c985497556257c4e323aa836e419f26e3aa", - "signature": "f7d60b8a9be58779e95cce126c4a3c985497556257c4e323aa836e419f26e3aa", + "version": "b9b963043551b034abd9e7c6d859f7a81d99479fde938d983114d167d0644a78", + "signature": "b9b963043551b034abd9e7c6d859f7a81d99479fde938d983114d167d0644a78", "affectsGlobalScope": false }, "../../node_modules/@types/node/http2.d.ts": { - "version": "d421d2324434c851830535137ff327b6cc4e9eaa428745300ccb478d0113cb4b", - "signature": "d421d2324434c851830535137ff327b6cc4e9eaa428745300ccb478d0113cb4b", + "version": "b287b810b5035d5685f1df6e1e418f1ca452a3ed4f59fd5cc081dbf2045f0d9b", + "signature": "b287b810b5035d5685f1df6e1e418f1ca452a3ed4f59fd5cc081dbf2045f0d9b", "affectsGlobalScope": false }, "../../node_modules/@types/node/https.d.ts": { - "version": "2b8374271ab2a2fff2efa2eca782782d94157121d7a12b7ec4827c8ba1a87abb", - "signature": "2b8374271ab2a2fff2efa2eca782782d94157121d7a12b7ec4827c8ba1a87abb", + "version": "4b9a003b5c556c96784132945bb41c655ea11273b1917f5c8d0c154dd5fd20dd", + "signature": "4b9a003b5c556c96784132945bb41c655ea11273b1917f5c8d0c154dd5fd20dd", "affectsGlobalScope": false }, "../../node_modules/@types/node/inspector.d.ts": { - "version": "ed3129f404bfea369c236104e125d5f3885d78540f8f37d3c7e90f0c2449b50f", - "signature": "ed3129f404bfea369c236104e125d5f3885d78540f8f37d3c7e90f0c2449b50f", + "version": "a458dc78104cc80048ac24fdc02fe6dce254838094c2f25641b3f954d9721241", + "signature": "a458dc78104cc80048ac24fdc02fe6dce254838094c2f25641b3f954d9721241", "affectsGlobalScope": false }, "../../node_modules/@types/node/module.d.ts": { - "version": "241dce6950eeec0a86f8c8f292b0e865b710083f0e3850decec889b46914a520", - "signature": "241dce6950eeec0a86f8c8f292b0e865b710083f0e3850decec889b46914a520", + "version": "e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5", + "signature": "e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5", "affectsGlobalScope": true }, "../../node_modules/@types/node/net.d.ts": { - "version": "298ca2d6112d194797d0e2eebf54867c84ac18fd0b60eb6e001467e8b5addcf7", - "signature": "298ca2d6112d194797d0e2eebf54867c84ac18fd0b60eb6e001467e8b5addcf7", + "version": "902cd98bf46e95caf4118a0733fb801e9e90eec3edaed6abdad77124afec9ca2", + "signature": "902cd98bf46e95caf4118a0733fb801e9e90eec3edaed6abdad77124afec9ca2", "affectsGlobalScope": false }, "../../node_modules/@types/node/os.d.ts": { - "version": "8e8df21b9513f0a1de0e9bad48243f8aad8c065c7ab695074e7a6c276596cc62", - "signature": "8e8df21b9513f0a1de0e9bad48243f8aad8c065c7ab695074e7a6c276596cc62", + "version": "abc1c425b2ad6720433f40f1877abfa4223f0f3dd486c9c28c492179ca183cb6", + "signature": "abc1c425b2ad6720433f40f1877abfa4223f0f3dd486c9c28c492179ca183cb6", "affectsGlobalScope": false }, "../../node_modules/@types/node/path.d.ts": { - "version": "1b7690edef33f9d150a4ac170d662a9dffedc08e4c9504ece603785007ffdba1", - "signature": "1b7690edef33f9d150a4ac170d662a9dffedc08e4c9504ece603785007ffdba1", + "version": "cd4854d38f4eb5592afd98ab95ca17389a7dfe38013d9079e802d739bdbcc939", + "signature": "cd4854d38f4eb5592afd98ab95ca17389a7dfe38013d9079e802d739bdbcc939", "affectsGlobalScope": false }, "../../node_modules/@types/node/perf_hooks.d.ts": { - "version": "62d37937d7321b1df75292b92eb984babf32302748f200d8aabf67328b37bed0", - "signature": "62d37937d7321b1df75292b92eb984babf32302748f200d8aabf67328b37bed0", + "version": "94eed4cc2f5f658d5e229ff1ccd38860bddf4233e347bf78edd2154dee1f2b99", + "signature": "94eed4cc2f5f658d5e229ff1ccd38860bddf4233e347bf78edd2154dee1f2b99", "affectsGlobalScope": false }, "../../node_modules/@types/node/process.d.ts": { - "version": "e8a92400cdf00bbbcc93ec1c57f8bad21cc0723c959ebc5da165ae3aa190e5a4", - "signature": "e8a92400cdf00bbbcc93ec1c57f8bad21cc0723c959ebc5da165ae3aa190e5a4", + "version": "bd1a08e30569b0fb2f0b21035eb9b039871f68faa9b98accf847e9c878c5e0a9", + "signature": "bd1a08e30569b0fb2f0b21035eb9b039871f68faa9b98accf847e9c878c5e0a9", "affectsGlobalScope": true }, "../../node_modules/@types/node/punycode.d.ts": { - "version": "d1b323391b9604f2fa2cca0ddf206a951feb745fd36d400677447436cc7b4f8d", - "signature": "d1b323391b9604f2fa2cca0ddf206a951feb745fd36d400677447436cc7b4f8d", + "version": "9f1069b9e2c051737b1f9b4f1baf50e4a63385a6a89c32235549ae87fc3d5492", + "signature": "9f1069b9e2c051737b1f9b4f1baf50e4a63385a6a89c32235549ae87fc3d5492", "affectsGlobalScope": false }, "../../node_modules/@types/node/querystring.d.ts": { - "version": "760bf13f54eafb24321fdc0d74e3293e3f2030527729a351370377169fc1442c", - "signature": "760bf13f54eafb24321fdc0d74e3293e3f2030527729a351370377169fc1442c", + "version": "ee18f2da7a037c6ceeb112a084e485aead9ea166980bf433474559eac1b46553", + "signature": "ee18f2da7a037c6ceeb112a084e485aead9ea166980bf433474559eac1b46553", "affectsGlobalScope": false }, "../../node_modules/@types/node/readline.d.ts": { - "version": "0b28384ffe11674b35d97b9f91248d3f00f823fc4ffc67070e71206a5c7e6305", - "signature": "0b28384ffe11674b35d97b9f91248d3f00f823fc4ffc67070e71206a5c7e6305", + "version": "29c2706fa0cc49a2bd90c83234da33d08bb9554ecec675e91c1f85087f5a5324", + "signature": "29c2706fa0cc49a2bd90c83234da33d08bb9554ecec675e91c1f85087f5a5324", "affectsGlobalScope": false }, "../../node_modules/@types/node/repl.d.ts": { - "version": "695bfa2ca7a20a9d4e43f3b7a8af58ce76b12e094b07203bd9bf47345cba7626", - "signature": "695bfa2ca7a20a9d4e43f3b7a8af58ce76b12e094b07203bd9bf47345cba7626", + "version": "0acbf26bf958f9e80c1ffa587b74749d2697b75b484062d36e103c137c562bc3", + "signature": "0acbf26bf958f9e80c1ffa587b74749d2697b75b484062d36e103c137c562bc3", "affectsGlobalScope": false }, "../../node_modules/@types/node/stream.d.ts": { - "version": "187acc08c6fc060163b8df4c5103b4228b25d669efc74e31b84479a55ffa11af", - "signature": "187acc08c6fc060163b8df4c5103b4228b25d669efc74e31b84479a55ffa11af", + "version": "d7838022c7dab596357a9604b9c6adffe37dc34085ce0779c958ce9545bd7139", + "signature": "d7838022c7dab596357a9604b9c6adffe37dc34085ce0779c958ce9545bd7139", "affectsGlobalScope": false }, "../../node_modules/@types/node/stream/promises.d.ts": { @@ -3121,64 +3406,79 @@ "signature": "1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff", "affectsGlobalScope": false }, + "../../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": "912e95aafa5d85e0636eab990cdcfe2f288310dcd9ee5b7c028d8231e179e967", - "signature": "912e95aafa5d85e0636eab990cdcfe2f288310dcd9ee5b7c028d8231e179e967", + "version": "c33a6ea7147af60d8e98f1ac127047f4b0d4e2ce28b8f08ff3de07ca7cc00637", + "signature": "c33a6ea7147af60d8e98f1ac127047f4b0d4e2ce28b8f08ff3de07ca7cc00637", "affectsGlobalScope": false }, "../../node_modules/@types/node/timers.d.ts": { - "version": "93c6f408623f52df4fd29ed34f3e9cabbe2f4041a6c58ffe9df0f565bad441df", - "signature": "93c6f408623f52df4fd29ed34f3e9cabbe2f4041a6c58ffe9df0f565bad441df", + "version": "b42b47e17b8ece2424ae8039feb944c2e3ba4b262986aebd582e51efbdca93dc", + "signature": "b42b47e17b8ece2424ae8039feb944c2e3ba4b262986aebd582e51efbdca93dc", "affectsGlobalScope": true }, "../../node_modules/@types/node/timers/promises.d.ts": { - "version": "009f2558b6ae78151e24cc2f1a43bac7599a0a65ddffa9707a924ca1e354d4b2", - "signature": "009f2558b6ae78151e24cc2f1a43bac7599a0a65ddffa9707a924ca1e354d4b2", + "version": "664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980", + "signature": "664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980", "affectsGlobalScope": false }, "../../node_modules/@types/node/tls.d.ts": { - "version": "21ac36b32a69c93318314047186a9ee6d69d9644dab7cd8d8dc256e1031545a6", - "signature": "21ac36b32a69c93318314047186a9ee6d69d9644dab7cd8d8dc256e1031545a6", + "version": "2408611d9b4146e35d1dbd1f443ccd8e187c74614a54b80300728277529dbf11", + "signature": "2408611d9b4146e35d1dbd1f443ccd8e187c74614a54b80300728277529dbf11", "affectsGlobalScope": false }, "../../node_modules/@types/node/trace_events.d.ts": { - "version": "4b465e7d07abea8e7cfe4e50a63b901a0a32e283f8a81eb7f569e623dc2a6a6a", - "signature": "4b465e7d07abea8e7cfe4e50a63b901a0a32e283f8a81eb7f569e623dc2a6a6a", + "version": "998a3de5237518c0b3ac00a11b3b4417affb008aa20aedee52f3fdae3cb86151", + "signature": "998a3de5237518c0b3ac00a11b3b4417affb008aa20aedee52f3fdae3cb86151", "affectsGlobalScope": false }, "../../node_modules/@types/node/tty.d.ts": { - "version": "0fe8b060f4143dcccc5e64f53cb630059304f9b52576cefd9ac5816b0e067c7f", - "signature": "0fe8b060f4143dcccc5e64f53cb630059304f9b52576cefd9ac5816b0e067c7f", + "version": "ad41008ffe077206e1811fc873f4d9005b5fd7f6ab52bb6118fef600815a5cb4", + "signature": "ad41008ffe077206e1811fc873f4d9005b5fd7f6ab52bb6118fef600815a5cb4", "affectsGlobalScope": false }, "../../node_modules/@types/node/url.d.ts": { - "version": "8e140f571d87ed63406cdb71a35790c40055f2a1b1e01269f93ba2fce6338f15", - "signature": "8e140f571d87ed63406cdb71a35790c40055f2a1b1e01269f93ba2fce6338f15", + "version": "d88ecca73348e7c337541c4b8b60a50aca5e87384f6b8a422fc6603c637e4c21", + "signature": "d88ecca73348e7c337541c4b8b60a50aca5e87384f6b8a422fc6603c637e4c21", "affectsGlobalScope": false }, "../../node_modules/@types/node/util.d.ts": { - "version": "1275061127b8f7878a6f745bd85a7053d17cc757037815fdceb532881d3062a6", - "signature": "1275061127b8f7878a6f745bd85a7053d17cc757037815fdceb532881d3062a6", + "version": "badae0df9a8016ac36994b0a0e7b82ba6aaa3528e175a8c3cb161e4683eec03e", + "signature": "badae0df9a8016ac36994b0a0e7b82ba6aaa3528e175a8c3cb161e4683eec03e", "affectsGlobalScope": false }, "../../node_modules/@types/node/v8.d.ts": { - "version": "0a8c5fb0f16e51973f22f2e01791b9e8376203514e4b72f65a451afebc29f5a0", - "signature": "0a8c5fb0f16e51973f22f2e01791b9e8376203514e4b72f65a451afebc29f5a0", + "version": "c3db860bcaaaeb3bbc23f353bbda1f8ab82756c8d5e973bebb3953cb09ea68f2", + "signature": "c3db860bcaaaeb3bbc23f353bbda1f8ab82756c8d5e973bebb3953cb09ea68f2", "affectsGlobalScope": false }, "../../node_modules/@types/node/vm.d.ts": { - "version": "c19d3a3bb01ac8c5d244c31eac930c451110a58b76ff7a2b82bdffed082e36f6", - "signature": "c19d3a3bb01ac8c5d244c31eac930c451110a58b76ff7a2b82bdffed082e36f6", + "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": "8ca49a6223d59be5b7228ad99800f01982a1f350eb61c1a195e77547121877bb", - "signature": "8ca49a6223d59be5b7228ad99800f01982a1f350eb61c1a195e77547121877bb", + "version": "9c266243b01545e11d2733a55ad02b4c00ecdbda99c561cd1674f96e89cdc958", + "signature": "9c266243b01545e11d2733a55ad02b4c00ecdbda99c561cd1674f96e89cdc958", "affectsGlobalScope": false }, "../../node_modules/@types/node/zlib.d.ts": { - "version": "55d6f9768363cf0356f4c9fff535ed3c24c67c782a566238cd08fa11a6111940", - "signature": "55d6f9768363cf0356f4c9fff535ed3c24c67c782a566238cd08fa11a6111940", + "version": "c71155c05fc76ff948a4759abc1cb9feec036509f500174bc18dad4c7827a60c", + "signature": "c71155c05fc76ff948a4759abc1cb9feec036509f500174bc18dad4c7827a60c", "affectsGlobalScope": false }, "../../node_modules/@types/node/globals.global.d.ts": { @@ -3186,44 +3486,69 @@ "signature": "ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e", "affectsGlobalScope": true }, - "../../node_modules/@types/node/wasi.d.ts": { - "version": "437c2700eaa23c440e97dd4ba5883c75ee82fe8b64772af7bebaa99410776705", - "signature": "437c2700eaa23c440e97dd4ba5883c75ee82fe8b64772af7bebaa99410776705", + "../../node_modules/@types/node/index.d.ts": { + "version": "1cdb8f094b969dcc183745dc88404e2d8fcf2a858c6e7cc2441011476573238e", + "signature": "1cdb8f094b969dcc183745dc88404e2d8fcf2a858c6e7cc2441011476573238e", "affectsGlobalScope": false }, - "../../node_modules/@types/node/ts3.6/base.d.ts": { - "version": "de0e63feaddfdf1a7a92071f6e7897d86ca497499116433e99fe15bf4af32e01", - "signature": "de0e63feaddfdf1a7a92071f6e7897d86ca497499116433e99fe15bf4af32e01", + "../../node_modules/keyv/src/index.d.ts": { + "version": "92edb6e257fa64d3baae647490e041912684f5dc1f243d0aedd60b4b383ff50b", + "signature": "92edb6e257fa64d3baae647490e041912684f5dc1f243d0aedd60b4b383ff50b", "affectsGlobalScope": false }, - "../../node_modules/@types/node/assert.d.ts": { - "version": "6b7029d09218b4187ca45dcde322bc413561b419551e0a6c938d72af37d53817", - "signature": "6b7029d09218b4187ca45dcde322bc413561b419551e0a6c938d72af37d53817", + "../../node_modules/@types/http-cache-semantics/index.d.ts": { + "version": "cab425b5559edac18327eb2c3c0f47e7e9f71b667290b7689faafd28aac69eae", + "signature": "cab425b5559edac18327eb2c3c0f47e7e9f71b667290b7689faafd28aac69eae", "affectsGlobalScope": false }, - "../../node_modules/@types/node/base.d.ts": { - "version": "e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b", - "signature": "e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b", + "../../node_modules/@types/responselike/index.d.ts": { + "version": "3cfb0cb51cc2c2e1b313d7c4df04dbf7e5bda0a133c6b309bf6af77cf614b971", + "signature": "3cfb0cb51cc2c2e1b313d7c4df04dbf7e5bda0a133c6b309bf6af77cf614b971", "affectsGlobalScope": false }, - "../../node_modules/@types/node/index.d.ts": { - "version": "73e8de7786fd2ba696ea4fbd96f0a157b4fc148a25255b8c9199cb69423a7fce", - "signature": "73e8de7786fd2ba696ea4fbd96f0a157b4fc148a25255b8c9199cb69423a7fce", + "../../node_modules/@types/cacheable-request/index.d.ts": { + "version": "f992cd6cc0bcbaa4e6c810468c90f2d8595f8c6c3cf050c806397d3de8585562", + "signature": "f992cd6cc0bcbaa4e6c810468c90f2d8595f8c6c3cf050c806397d3de8585562", "affectsGlobalScope": false }, - "../../node_modules/@types/minimatch/index.d.ts": { - "version": "8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649", - "signature": "8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649", + "../../node_modules/@types/color-name/index.d.ts": { + "version": "f0cb4b3ab88193e3e51e9e2622e4c375955003f1f81239d72c5b7a95415dad3e", + "signature": "f0cb4b3ab88193e3e51e9e2622e4c375955003f1f81239d72c5b7a95415dad3e", "affectsGlobalScope": false }, - "../../node_modules/@types/glob/index.d.ts": { - "version": "725b884357ba84171341a8e4cc08edf11417854fd069842ca6d22afb2e340e45", - "signature": "725b884357ba84171341a8e4cc08edf11417854fd069842ca6d22afb2e340e45", + "../../node_modules/@types/color-convert/conversions.d.ts": { + "version": "92450d617e92f96354d281c8ed5613fd16cacea79eb60b1e9736494b3c057e69", + "signature": "92450d617e92f96354d281c8ed5613fd16cacea79eb60b1e9736494b3c057e69", + "affectsGlobalScope": false + }, + "../../node_modules/@types/color-convert/route.d.ts": { + "version": "8a9086357fe289efb682dc925358f30b6312c7219a5ca92212857a0a79612012", + "signature": "8a9086357fe289efb682dc925358f30b6312c7219a5ca92212857a0a79612012", + "affectsGlobalScope": false + }, + "../../node_modules/@types/color-convert/index.d.ts": { + "version": "92bc42ed0e2d41559513fd457ee30d834c2f0fedb9ed5004c029cbf0ad2f8bd9", + "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/minimatch/index.d.ts": { + "version": "963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e", + "signature": "963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e", "affectsGlobalScope": false }, - "../../node_modules/@types/glob-base/index.d.ts": { - "version": "d1ae472dde31ac39e68d52e1e21dcccba3989d146b7b8472f03525d0caad1775", - "signature": "d1ae472dde31ac39e68d52e1e21dcccba3989d146b7b8472f03525d0caad1775", + "../../node_modules/@types/glob/index.d.ts": { + "version": "a55ca8b5f8c6a8535bb26fac1e10132a5338234ca3d5b9ed739fbc8ef41c8075", + "signature": "a55ca8b5f8c6a8535bb26fac1e10132a5338234ca3d5b9ed739fbc8ef41c8075", "affectsGlobalScope": false }, "../../node_modules/@types/graceful-fs/index.d.ts": { @@ -3237,8 +3562,8 @@ "affectsGlobalScope": false }, "../../node_modules/@types/hast/index.d.ts": { - "version": "ac295e0d29ca135d7dca2069a6e57943ed18800754dbe8fcb3974fb9ce497c3c", - "signature": "ac295e0d29ca135d7dca2069a6e57943ed18800754dbe8fcb3974fb9ce497c3c", + "version": "3d2cd8f3047fff04a71e7037a6a4cb9f4accb28dbd8c0d83164d414811025af0", + "signature": "3d2cd8f3047fff04a71e7037a6a4cb9f4accb28dbd8c0d83164d414811025af0", "affectsGlobalScope": false }, "../../node_modules/@types/html-minifier-terser/index.d.ts": { @@ -3247,8 +3572,8 @@ "affectsGlobalScope": false }, "../../node_modules/@types/is-function/index.d.ts": { - "version": "11ef35fa1e8aef8229ce6b62ac1a6a0761d1d4bb4de1538bce6d10762a919139", - "signature": "11ef35fa1e8aef8229ce6b62ac1a6a0761d1d4bb4de1538bce6d10762a919139", + "version": "de1d6e224048139baf7494237a9231be6bab9e990fb239c7825bfd38b06d8c90", + "signature": "de1d6e224048139baf7494237a9231be6bab9e990fb239c7825bfd38b06d8c90", "affectsGlobalScope": false }, "../../node_modules/@types/istanbul-lib-coverage/index.d.ts": { @@ -3267,23 +3592,83 @@ "affectsGlobalScope": false }, "../../node_modules/@types/json-schema/index.d.ts": { - "version": "a185ebc69c9f6798ebd67bfdfd72a37457dc67c23459784783c7128ae9bd5250", - "signature": "a185ebc69c9f6798ebd67bfdfd72a37457dc67c23459784783c7128ae9bd5250", + "version": "0359682c54e487c4cab2b53b2b4d35cc8dea4d9914bc6abcdb5701f8b8e745a4", + "signature": "0359682c54e487c4cab2b53b2b4d35cc8dea4d9914bc6abcdb5701f8b8e745a4", "affectsGlobalScope": false }, - "../../node_modules/@types/markdown-to-jsx/index.d.ts": { - "version": "9c138947e4cf970491111d971aa615db8353c7f0efc72bd84d8ad6e4743079c5", - "signature": "9c138947e4cf970491111d971aa615db8353c7f0efc72bd84d8ad6e4743079c5", + "../../node_modules/@types/keyv/index.d.ts": { + "version": "fec943fdb3275eb6e006b35e04a8e2e99e9adf3f4b969ddf15315ac7575a93e4", + "signature": "fec943fdb3275eb6e006b35e04a8e2e99e9adf3f4b969ddf15315ac7575a93e4", "affectsGlobalScope": false }, - "../../node_modules/@types/mdast/index.d.ts": { - "version": "cee164cd6c157d0ce3d3350c1df75dee40d2da203223a72890430ec6d8ccf4a1", - "signature": "cee164cd6c157d0ce3d3350c1df75dee40d2da203223a72890430ec6d8ccf4a1", + "../../node_modules/@types/lodash/ts4.2/common/common.d.ts": { + "version": "675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8", + "signature": "675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8", "affectsGlobalScope": false }, - "../../node_modules/@types/micromatch/index.d.ts": { - "version": "1a255ad66d2b50f7b42eca69228b9587878cf06900780ad57a306a933c6eaeb4", - "signature": "1a255ad66d2b50f7b42eca69228b9587878cf06900780ad57a306a933c6eaeb4", + "../../node_modules/@types/lodash/ts4.2/common/array.d.ts": { + "version": "458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22", + "signature": "458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22", + "affectsGlobalScope": false + }, + "../../node_modules/@types/lodash/ts4.2/common/collection.d.ts": { + "version": "d70c026dd2eeaa974f430ea229230a1897fdb897dc74659deebe2afd4feeb08f", + "signature": "d70c026dd2eeaa974f430ea229230a1897fdb897dc74659deebe2afd4feeb08f", + "affectsGlobalScope": false + }, + "../../node_modules/@types/lodash/ts4.2/common/date.d.ts": { + "version": "187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42", + "signature": "187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42", + "affectsGlobalScope": false + }, + "../../node_modules/@types/lodash/ts4.2/common/function.d.ts": { + "version": "febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6", + "signature": "febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6", + "affectsGlobalScope": false + }, + "../../node_modules/@types/lodash/ts4.2/common/lang.d.ts": { + "version": "98f9d826db9cd99d27a01a59ee5f22863df00ccf1aaf43e1d7db80ebf716f7c3", + "signature": "98f9d826db9cd99d27a01a59ee5f22863df00ccf1aaf43e1d7db80ebf716f7c3", + "affectsGlobalScope": false + }, + "../../node_modules/@types/lodash/ts4.2/common/math.d.ts": { + "version": "0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e", + "signature": "0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e", + "affectsGlobalScope": false + }, + "../../node_modules/@types/lodash/ts4.2/common/number.d.ts": { + "version": "00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a", + "signature": "00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a", + "affectsGlobalScope": false + }, + "../../node_modules/@types/lodash/ts4.2/common/object.d.ts": { + "version": "7a79ca84e4370ed2e1afaa99ff7d25194901916b7672e977d16f77af3b71342f", + "signature": "7a79ca84e4370ed2e1afaa99ff7d25194901916b7672e977d16f77af3b71342f", + "affectsGlobalScope": false + }, + "../../node_modules/@types/lodash/ts4.2/common/seq.d.ts": { + "version": "3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd", + "signature": "3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd", + "affectsGlobalScope": false + }, + "../../node_modules/@types/lodash/ts4.2/common/string.d.ts": { + "version": "3cf0d343c2276842a5b617f22ba82af6322c7cfe8bb52238ffc0c491a3c21019", + "signature": "3cf0d343c2276842a5b617f22ba82af6322c7cfe8bb52238ffc0c491a3c21019", + "affectsGlobalScope": false + }, + "../../node_modules/@types/lodash/ts4.2/common/util.d.ts": { + "version": "df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9", + "signature": "df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9", + "affectsGlobalScope": false + }, + "../../node_modules/@types/lodash/ts4.2/index.d.ts": { + "version": "6200960745bf1d8f99adecc0e7ecabf002d0bd641bd9d44ae27273988743ec56", + "signature": "6200960745bf1d8f99adecc0e7ecabf002d0bd641bd9d44ae27273988743ec56", + "affectsGlobalScope": true + }, + "../../node_modules/@types/mdast/index.d.ts": { + "version": "2a2e2c6463bcf3c59f31bc9ab4b6ef963bbf7dffb049cd017e2c1834e3adca63", + "signature": "2a2e2c6463bcf3c59f31bc9ab4b6ef963bbf7dffb049cd017e2c1834e3adca63", "affectsGlobalScope": false }, "../../node_modules/@types/minimist/index.d.ts": { @@ -3297,13 +3682,13 @@ "affectsGlobalScope": false }, "../../node_modules/@types/node-fetch/externals.d.ts": { - "version": "208bb742e0f201470da121bc73847c74b62cff4172f38ae5949ae77d6c9c6b71", - "signature": "208bb742e0f201470da121bc73847c74b62cff4172f38ae5949ae77d6c9c6b71", + "version": "3898e3dbe94b6fe529fbe8f0faee1309c1923100516d7a014b301955e52ece77", + "signature": "3898e3dbe94b6fe529fbe8f0faee1309c1923100516d7a014b301955e52ece77", "affectsGlobalScope": false }, "../../node_modules/@types/node-fetch/index.d.ts": { - "version": "062bd2910098fc059ba93e347649b3e126c555f7b144033d21d3f8ef63d3e39b", - "signature": "062bd2910098fc059ba93e347649b3e126c555f7b144033d21d3f8ef63d3e39b", + "version": "3663d1b50f356656a314e5df169bb51cb9d5fd75905fa703f75db6bb32030568", + "signature": "3663d1b50f356656a314e5df169bb51cb9d5fd75905fa703f75db6bb32030568", "affectsGlobalScope": false }, "../../node_modules/@types/normalize-package-data/index.d.ts": { @@ -3331,77 +3716,367 @@ "signature": "c555dd691dd05955e99cd93dd99c685a65e5287813ccb5e6bfde951183248e26", "affectsGlobalScope": false }, - "../../node_modules/@types/prettier/index.d.ts": { - "version": "29651525db5579157e617c77e869af8bfdc1130f5d811c1f759ad35b7bafc8ef", - "signature": "29651525db5579157e617c77e869af8bfdc1130f5d811c1f759ad35b7bafc8ef", - "affectsGlobalScope": false - }, "../../node_modules/@types/pretty-hrtime/index.d.ts": { "version": "c0a3ea3aee13c4946a6aefce3a6ab9292a40a29f6622cde0fda0b1067a1a1f5f", "signature": "c0a3ea3aee13c4946a6aefce3a6ab9292a40a29f6622cde0fda0b1067a1a1f5f", "affectsGlobalScope": false }, - "../../node_modules/@types/resolve/index.d.ts": { - "version": "2880728492d6a6baa55411d14cc42fa55714a24b1d1d27ff9a8a610abd47c761", - "signature": "2880728492d6a6baa55411d14cc42fa55714a24b1d1d27ff9a8a610abd47c761", + "../../node_modules/@types/reach__router/index.d.ts": { + "version": "94a274c882504de552300fc5d6be141820041e9e2c530064ea10a0b76e2f905f", + "signature": "94a274c882504de552300fc5d6be141820041e9e2c530064ea10a0b76e2f905f", "affectsGlobalScope": false }, - "../../node_modules/@types/scheduler/index.d.ts": { - "version": "74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57", - "signature": "74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57", + "../../node_modules/@types/reactcss/index.d.ts": { + "version": "ebe77545478bf39a23059a3b0ea03d2c0e502d9c8e1122015e19213cd0815097", + "signature": "ebe77545478bf39a23059a3b0ea03d2c0e502d9c8e1122015e19213cd0815097", "affectsGlobalScope": false }, - "../../node_modules/@types/source-list-map/index.d.ts": { - "version": "67fc055eb86a0632e2e072838f889ffe1754083cb13c8c80a06a7d895d877aae", - "signature": "67fc055eb86a0632e2e072838f889ffe1754083cb13c8c80a06a7d895d877aae", + "../../node_modules/@types/react-color/lib/components/alpha/Alpha.d.ts": { + "version": "ad8c69f4a471cafdf093acdcdf3b444ae56b227b92024ae45f8c9c9c8be8afcc", + "signature": "ad8c69f4a471cafdf093acdcdf3b444ae56b227b92024ae45f8c9c9c8be8afcc", "affectsGlobalScope": false }, - "../../node_modules/@types/stack-utils/index.d.ts": { - "version": "41422586881bcd739b4e62d9b91cd29909f8572aa3e3cdf316b7c50f14708d49", - "signature": "41422586881bcd739b4e62d9b91cd29909f8572aa3e3cdf316b7c50f14708d49", + "../../node_modules/@types/react-color/lib/components/block/Block.d.ts": { + "version": "71a6149f67a64b55baeddb83e5254e9e017c80c15a260d6f6b3a12deb3a575ed", + "signature": "71a6149f67a64b55baeddb83e5254e9e017c80c15a260d6f6b3a12deb3a575ed", "affectsGlobalScope": false }, - "../../node_modules/@types/tapable/index.d.ts": { - "version": "3833c70307dc3d2b46cb6f2a8b6a90e4d7e7367a21ab18c481d7de0909a43e67", - "signature": "3833c70307dc3d2b46cb6f2a8b6a90e4d7e7367a21ab18c481d7de0909a43e67", + "../../node_modules/@types/react-color/lib/components/common/Checkboard.d.ts": { + "version": "6c881abb4a0e7579a9d5b63a7e4da3d98b094adf0f1d1fa75bbe433b9f3d7c27", + "signature": "6c881abb4a0e7579a9d5b63a7e4da3d98b094adf0f1d1fa75bbe433b9f3d7c27", "affectsGlobalScope": false }, - "../../node_modules/@types/uglify-js/node_modules/source-map/source-map.d.ts": { - "version": "2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579", - "signature": "2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579", + "../../node_modules/@types/react-color/lib/components/chrome/Chrome.d.ts": { + "version": "66d6844502d7764a8e02b632228c4c5a95f7cac7bce1a0db07f0dcc377d3755b", + "signature": "66d6844502d7764a8e02b632228c4c5a95f7cac7bce1a0db07f0dcc377d3755b", "affectsGlobalScope": false }, - "../../node_modules/@types/uglify-js/index.d.ts": { - "version": "9d74c7330800b325bb19cc8c1a153a612c080a60094e1ab6cfb6e39cf1b88c36", - "signature": "9d74c7330800b325bb19cc8c1a153a612c080a60094e1ab6cfb6e39cf1b88c36", + "../../node_modules/@types/react-color/lib/components/circle/Circle.d.ts": { + "version": "2e1be3fee9ccef82555b2f039e8e100e0a176ee2d18b0de95e7da6a61e1e360a", + "signature": "2e1be3fee9ccef82555b2f039e8e100e0a176ee2d18b0de95e7da6a61e1e360a", "affectsGlobalScope": false }, - "../../node_modules/@types/webpack/node_modules/anymatch/index.d.ts": { - "version": "4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349", - "signature": "4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349", + "../../node_modules/@types/react-color/lib/components/compact/Compact.d.ts": { + "version": "5c48fc6096e361e639c1d0a9f7f066242bf757ace84843582d29c6813563055a", + "signature": "5c48fc6096e361e639c1d0a9f7f066242bf757ace84843582d29c6813563055a", "affectsGlobalScope": false }, - "../../node_modules/@types/webpack/node_modules/source-map/source-map.d.ts": { - "version": "2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579", - "signature": "2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579", + "../../node_modules/@types/react-color/lib/components/github/Github.d.ts": { + "version": "bebac54845e03ea36044fab99b5a51266cec2492fcd8a95bde6d5527a3174732", + "signature": "bebac54845e03ea36044fab99b5a51266cec2492fcd8a95bde6d5527a3174732", "affectsGlobalScope": false }, - "../../node_modules/@types/webpack-sources/node_modules/source-map/source-map.d.ts": { - "version": "b90c59ac4682368a01c83881b814738eb151de8a58f52eb7edadea2bcffb11b9", - "signature": "b90c59ac4682368a01c83881b814738eb151de8a58f52eb7edadea2bcffb11b9", + "../../node_modules/@types/react-color/lib/components/hue/Hue.d.ts": { + "version": "ef141fd0ac854fc92cbc9a13cd25a0ac87b3961f70d516f191bb3e29d3b183fe", + "signature": "ef141fd0ac854fc92cbc9a13cd25a0ac87b3961f70d516f191bb3e29d3b183fe", "affectsGlobalScope": false }, - "../../node_modules/@types/webpack-sources/lib/Source.d.ts": { - "version": "8560a87b2e9f8e2c3808c8f6172c9b7eb6c9b08cb9f937db71c285ecf292c81d", - "signature": "8560a87b2e9f8e2c3808c8f6172c9b7eb6c9b08cb9f937db71c285ecf292c81d", + "../../node_modules/@types/react-color/lib/components/material/Material.d.ts": { + "version": "a90c6f5554bd74f63aaf03751e6b79d01a457b59339b03d308c16af8f266cf47", + "signature": "a90c6f5554bd74f63aaf03751e6b79d01a457b59339b03d308c16af8f266cf47", "affectsGlobalScope": false }, - "../../node_modules/@types/webpack-sources/lib/CompatSource.d.ts": { - "version": "ffe3931ff864f28d80ae2f33bd11123ad3d7bad9896b910a1e61504cc093e1f5", - "signature": "ffe3931ff864f28d80ae2f33bd11123ad3d7bad9896b910a1e61504cc093e1f5", + "../../node_modules/@types/react-color/lib/components/photoshop/Photoshop.d.ts": { + "version": "7d5d42c18c62ef137b8830b7de8432b466c8f4d93fa8476ac36d2f69114fad1e", + "signature": "7d5d42c18c62ef137b8830b7de8432b466c8f4d93fa8476ac36d2f69114fad1e", "affectsGlobalScope": false }, - "../../node_modules/@types/webpack-sources/lib/ConcatSource.d.ts": { + "../../node_modules/@types/react-color/lib/components/sketch/Sketch.d.ts": { + "version": "484faf958ae025f8d1ce6cb9c75e12c2148190efc22151299d14d10e3601cbba", + "signature": "484faf958ae025f8d1ce6cb9c75e12c2148190efc22151299d14d10e3601cbba", + "affectsGlobalScope": false + }, + "../../node_modules/@types/react-color/lib/components/slider/Slider.d.ts": { + "version": "66ddf54cc3d66cdab1b69e6879af9876bbc30030f85e51ba8a73223339e65b85", + "signature": "66ddf54cc3d66cdab1b69e6879af9876bbc30030f85e51ba8a73223339e65b85", + "affectsGlobalScope": false + }, + "../../node_modules/@types/react-color/lib/components/swatches/Swatches.d.ts": { + "version": "734166f6ae00b52512304c153644963fd93cd152620231ea7a0560802c968d28", + "signature": "734166f6ae00b52512304c153644963fd93cd152620231ea7a0560802c968d28", + "affectsGlobalScope": false + }, + "../../node_modules/@types/react-color/lib/components/twitter/Twitter.d.ts": { + "version": "15ce0cfa537ada25e07633617a993a8e02827939c2128d39c010739f28a0379c", + "signature": "15ce0cfa537ada25e07633617a993a8e02827939c2128d39c010739f28a0379c", + "affectsGlobalScope": false + }, + "../../node_modules/@types/react-color/lib/components/common/ColorWrap.d.ts": { + "version": "a3868158152cc946c27c5e7b7803537c14cada9bb442c96c759c66b0d01f9eca", + "signature": "a3868158152cc946c27c5e7b7803537c14cada9bb442c96c759c66b0d01f9eca", + "affectsGlobalScope": false + }, + "../../node_modules/@types/react-color/index.d.ts": { + "version": "00ee901c4135af0d5688bee246d1e42ef7421cec93c32587e4814f744b95e2e8", + "signature": "00ee901c4135af0d5688bee246d1e42ef7421cec93c32587e4814f744b95e2e8", + "affectsGlobalScope": false + }, + "../../node_modules/@types/resolve/index.d.ts": { + "version": "2880728492d6a6baa55411d14cc42fa55714a24b1d1d27ff9a8a610abd47c761", + "signature": "2880728492d6a6baa55411d14cc42fa55714a24b1d1d27ff9a8a610abd47c761", + "affectsGlobalScope": false + }, + "../../node_modules/@types/scheduler/index.d.ts": { + "version": "74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57", + "signature": "74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/classes/semver.d.ts": { + "version": "2b93035328f7778d200252681c1d86285d501ed424825a18f81e4c3028aa51d9", + "signature": "2b93035328f7778d200252681c1d86285d501ed424825a18f81e4c3028aa51d9", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/parse.d.ts": { + "version": "2ac9c8332c5f8510b8bdd571f8271e0f39b0577714d5e95c1e79a12b2616f069", + "signature": "2ac9c8332c5f8510b8bdd571f8271e0f39b0577714d5e95c1e79a12b2616f069", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/valid.d.ts": { + "version": "42c21aa963e7b86fa00801d96e88b36803188018d5ad91db2a9101bccd40b3ff", + "signature": "42c21aa963e7b86fa00801d96e88b36803188018d5ad91db2a9101bccd40b3ff", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/clean.d.ts": { + "version": "d31eb848cdebb4c55b4893b335a7c0cca95ad66dee13cbb7d0893810c0a9c301", + "signature": "d31eb848cdebb4c55b4893b335a7c0cca95ad66dee13cbb7d0893810c0a9c301", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/inc.d.ts": { + "version": "77c1d91a129ba60b8c405f9f539e42df834afb174fe0785f89d92a2c7c16b77a", + "signature": "77c1d91a129ba60b8c405f9f539e42df834afb174fe0785f89d92a2c7c16b77a", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/diff.d.ts": { + "version": "7a9e0a564fee396cacf706523b5aeed96e04c6b871a8bebefad78499fbffc5bc", + "signature": "7a9e0a564fee396cacf706523b5aeed96e04c6b871a8bebefad78499fbffc5bc", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/major.d.ts": { + "version": "906c751ef5822ec0dadcea2f0e9db64a33fb4ee926cc9f7efa38afe5d5371b2a", + "signature": "906c751ef5822ec0dadcea2f0e9db64a33fb4ee926cc9f7efa38afe5d5371b2a", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/minor.d.ts": { + "version": "5387c049e9702f2d2d7ece1a74836a14b47fbebe9bbeb19f94c580a37c855351", + "signature": "5387c049e9702f2d2d7ece1a74836a14b47fbebe9bbeb19f94c580a37c855351", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/patch.d.ts": { + "version": "c68391fb9efad5d99ff332c65b1606248c4e4a9f1dd9a087204242b56c7126d6", + "signature": "c68391fb9efad5d99ff332c65b1606248c4e4a9f1dd9a087204242b56c7126d6", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/prerelease.d.ts": { + "version": "e9cf02252d3a0ced987d24845dcb1f11c1be5541f17e5daa44c6de2d18138d0c", + "signature": "e9cf02252d3a0ced987d24845dcb1f11c1be5541f17e5daa44c6de2d18138d0c", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/compare.d.ts": { + "version": "e8b02b879754d85f48489294f99147aeccc352c760d95a6fe2b6e49cd400b2fe", + "signature": "e8b02b879754d85f48489294f99147aeccc352c760d95a6fe2b6e49cd400b2fe", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/rcompare.d.ts": { + "version": "9f6908ab3d8a86c68b86e38578afc7095114e66b2fc36a2a96e9252aac3998e0", + "signature": "9f6908ab3d8a86c68b86e38578afc7095114e66b2fc36a2a96e9252aac3998e0", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/compare-loose.d.ts": { + "version": "0eedb2344442b143ddcd788f87096961cd8572b64f10b4afc3356aa0460171c6", + "signature": "0eedb2344442b143ddcd788f87096961cd8572b64f10b4afc3356aa0460171c6", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/compare-build.d.ts": { + "version": "71405cc70f183d029cc5018375f6c35117ffdaf11846c35ebf85ee3956b1b2a6", + "signature": "71405cc70f183d029cc5018375f6c35117ffdaf11846c35ebf85ee3956b1b2a6", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/sort.d.ts": { + "version": "c68baff4d8ba346130e9753cefe2e487a16731bf17e05fdacc81e8c9a26aae9d", + "signature": "c68baff4d8ba346130e9753cefe2e487a16731bf17e05fdacc81e8c9a26aae9d", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/rsort.d.ts": { + "version": "2cd15528d8bb5d0453aa339b4b52e0696e8b07e790c153831c642c3dea5ac8af", + "signature": "2cd15528d8bb5d0453aa339b4b52e0696e8b07e790c153831c642c3dea5ac8af", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/gt.d.ts": { + "version": "479d622e66283ffa9883fbc33e441f7fc928b2277ff30aacbec7b7761b4e9579", + "signature": "479d622e66283ffa9883fbc33e441f7fc928b2277ff30aacbec7b7761b4e9579", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/lt.d.ts": { + "version": "ade307876dc5ca267ca308d09e737b611505e015c535863f22420a11fffc1c54", + "signature": "ade307876dc5ca267ca308d09e737b611505e015c535863f22420a11fffc1c54", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/eq.d.ts": { + "version": "f8cdefa3e0dee639eccbe9794b46f90291e5fd3989fcba60d2f08fde56179fb9", + "signature": "f8cdefa3e0dee639eccbe9794b46f90291e5fd3989fcba60d2f08fde56179fb9", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/neq.d.ts": { + "version": "86c5a62f99aac7053976e317dbe9acb2eaf903aaf3d2e5bb1cafe5c2df7b37a8", + "signature": "86c5a62f99aac7053976e317dbe9acb2eaf903aaf3d2e5bb1cafe5c2df7b37a8", + "affectsGlobalScope": false + }, + "../../node_modules/@types/semver/functions/gte.d.ts": { + "version": "2b300954ce01a8343866f737656e13243e86e5baef51bd0631b21dcef1f6e954", + "signature": "2b300954ce01a8343866f737656e13243e86e5baef51bd0631b21dcef1f6e954", + "affectsGlobalScope": false + }, + "../../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": { + "version": "67fc055eb86a0632e2e072838f889ffe1754083cb13c8c80a06a7d895d877aae", + "signature": "67fc055eb86a0632e2e072838f889ffe1754083cb13c8c80a06a7d895d877aae", + "affectsGlobalScope": false + }, + "../../node_modules/@types/stack-utils/index.d.ts": { + "version": "41422586881bcd739b4e62d9b91cd29909f8572aa3e3cdf316b7c50f14708d49", + "signature": "41422586881bcd739b4e62d9b91cd29909f8572aa3e3cdf316b7c50f14708d49", + "affectsGlobalScope": false + }, + "../../node_modules/@types/tapable/index.d.ts": { + "version": "3833c70307dc3d2b46cb6f2a8b6a90e4d7e7367a21ab18c481d7de0909a43e67", + "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": "9dcd1a6ae84def6ce3e80b27a367912e5b8e9f15c039143820ab76f7ceb8f3ab", + "signature": "9dcd1a6ae84def6ce3e80b27a367912e5b8e9f15c039143820ab76f7ceb8f3ab", + "affectsGlobalScope": false + }, + "../../node_modules/anymatch/index.d.ts": { + "version": "4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349", + "signature": "4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349", + "affectsGlobalScope": false + }, + "../../node_modules/@types/webpack/node_modules/source-map/source-map.d.ts": { + "version": "2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579", + "signature": "2887592574fcdfd087647c539dcb0fbe5af2521270dad4a37f9d17c16190d579", + "affectsGlobalScope": false + }, + "../../node_modules/@types/webpack-sources/node_modules/source-map/source-map.d.ts": { + "version": "b90c59ac4682368a01c83881b814738eb151de8a58f52eb7edadea2bcffb11b9", + "signature": "b90c59ac4682368a01c83881b814738eb151de8a58f52eb7edadea2bcffb11b9", + "affectsGlobalScope": false + }, + "../../node_modules/@types/webpack-sources/lib/Source.d.ts": { + "version": "8560a87b2e9f8e2c3808c8f6172c9b7eb6c9b08cb9f937db71c285ecf292c81d", + "signature": "8560a87b2e9f8e2c3808c8f6172c9b7eb6c9b08cb9f937db71c285ecf292c81d", + "affectsGlobalScope": false + }, + "../../node_modules/@types/webpack-sources/lib/CompatSource.d.ts": { + "version": "ffe3931ff864f28d80ae2f33bd11123ad3d7bad9896b910a1e61504cc093e1f5", + "signature": "ffe3931ff864f28d80ae2f33bd11123ad3d7bad9896b910a1e61504cc093e1f5", + "affectsGlobalScope": false + }, + "../../node_modules/@types/webpack-sources/lib/ConcatSource.d.ts": { "version": "083c1bd82f8dc3a1ed6fc9e8eaddf141f7c05df418eca386598821e045253af9", "signature": "083c1bd82f8dc3a1ed6fc9e8eaddf141f7c05df418eca386598821e045253af9", "affectsGlobalScope": false @@ -3432,8 +4107,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 +4122,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,147 +5061,502 @@ "*", "*", "*", - "*" - ] - }, - "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": [ - "../../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/avatarGroup/index.tsx": [ - "../../core/components/atoms/avatarGroup/AvatarGroup.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-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", - "../../node_modules/@types/node/util.d.ts" - ], - "../../core/components/atoms/badge/Badge.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", - "../../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", - "../../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", - "../../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", - "../../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", - "../../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", - "../../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", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*", + "*" + ] + }, + "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", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../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/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/index.d.ts", + "../../node_modules/classnames/index.d.ts" + ], + "../../core/components/atoms/avatar/avatarImage/index.tsx": [ + "../../core/components/atoms/avatar/avatarImage/AvatarImage.tsx", + "../../node_modules/@types/node/util.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/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/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/avatarSelection/avatarPopover/AvatarSelectionEmptyState.tsx": [ + "../../core/index.tsx", + "../../node_modules/@types/node/util.d.ts", + "../../node_modules/@types/react/index.d.ts" + ], + "../../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_/index.story.tsx": [ - "../../core/components/atoms/badge/Badge.tsx", - "../../node_modules/@storybook/addon-knobs/dist/index.d.ts", + "../../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_/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/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_/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/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/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/classnames/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/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-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", + "../../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/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 +5568,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 +5642,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 +5651,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 +5678,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 +5703,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 +5724,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 +5745,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 +5765,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 +5797,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 +5825,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 +5836,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 +5859,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 +5868,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 +5918,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 +5943,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 +5958,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 +5985,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 +5997,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 +6005,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 +6017,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 +6048,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 +6081,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 +6094,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 +6113,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 +6157,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 +6169,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 +6181,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 +6193,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 +6215,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 +6236,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 +6251,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 +6320,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 +6333,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 +6348,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", @@ -5409,6 +6446,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 +6480,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 +6496,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 +6507,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 +6543,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 +6633,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 +6656,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 +6668,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 +6708,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 +6751,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 +6770,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 +6886,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 +6939,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 +6948,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 +6965,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 +7049,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 +7072,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 +7246,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 +7257,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 +7519,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 +7575,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 +7619,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 +7641,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 +7673,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 +7697,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 +7710,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 +7741,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 +7792,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 +7821,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 +7833,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 +7878,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 +7899,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 +7915,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 +7963,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 +8498,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 +8521,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 +8552,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 +8592,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 +8717,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 +8887,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 +8917,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 +8942,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 +8963,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 +9205,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 +9315,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 +9430,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 +9473,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", @@ -7957,39 +9517,143 @@ "../../node_modules/@types/node/zlib.d.ts": [ "../../node_modules/@types/node/stream.d.ts", "../../node_modules/@types/node/util.d.ts", - "../../node_modules/@types/node/zlib.d.ts" + "../../node_modules/@types/node/zlib.d.ts" + ], + "../../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/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/normalize-package-data/index.d.ts": [ - "../../node_modules/@types/node/util.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/npmlog/index.d.ts": [ - "../../node_modules/@types/node/events.d.ts", - "../../node_modules/@types/node/util.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 +9666,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 +9693,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 +9975,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 +10087,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 +10099,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 +10130,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 +10157,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 +10167,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 +10188,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 +10269,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" ], @@ -8339,6 +10313,9 @@ ] }, "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 +10342,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/@emotion/serialize/types/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/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 +10383,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 +10428,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 +10449,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 +10465,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 +10513,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 +10524,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/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/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/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/lib/merge.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/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/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/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/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/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-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/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-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/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-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/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/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/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/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/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-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/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-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/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-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/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-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/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-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/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/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/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-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/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-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/channels/dist/ts3.9/index.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/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/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/config_api.d.ts": [ - "../../node_modules/@storybook/client-api/dist/ts3.9/story_store.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/webpack-env/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/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/csf/dist/SBType.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/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/hooks.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/@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/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/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/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/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/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/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/client-api/dist/ts3.9/pathToId.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/client-api/dist/ts3.9/queryparams.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/qs/index.d.ts" + "../../node_modules/@types/react/index.d.ts" ], - "../../node_modules/@storybook/client-api/dist/ts3.9/simulate-pageload.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/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/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/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/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/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/@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/Badge/Badge.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/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/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/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/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/ScrollArea/ScrollArea.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/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/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/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/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/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/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/addon-panel/addon-panel.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/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/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/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/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/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/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/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/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/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/ArgsTable/NoControlsWarning.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/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/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/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/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/ArgsTable/types.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/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/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/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/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/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/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/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/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/blocks/IconGallery.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/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/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/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/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/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/theming/dist/ts3.9/_modules/@emotion-is-prop-valid-types-index.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/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/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/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/brand/StorybookIcon.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/brand/StorybookLogo.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/Array.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/Boolean.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/Color.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/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/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/Files.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/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/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/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/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/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/controls/Range.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.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/@types/webpack-env/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/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/@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/@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/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/controls/options/Options.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/types.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/controls/options/index.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/controls/options/Options.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/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/controls/types.d.ts": [ - "../../node_modules/@storybook/components/dist/ts3.9/blocks/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/form/field/field.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/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/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/react-textarea-autosize/dist/react-textarea-autosize.cjs.d.ts" + "../../node_modules/@types/react/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/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/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/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/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/icon/icons.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/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/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/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/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/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/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/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/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/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/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/syntaxhighlighter/syntaxhighlighter-types.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/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/csf/dist/SBType.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/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/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/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/tooltip/TooltipMessage.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/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/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/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/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/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/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/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/@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/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/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/typography/link/link.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/csf/dist/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/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 +11267,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 +11437,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 +11467,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 +11492,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 +11513,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 +11755,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 +11865,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 +11980,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 +12023,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 +12085,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 +12098,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 +12216,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 +12243,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 +12525,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 +12637,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 +12649,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 +12680,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 +12707,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 +12717,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 +12738,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,9 +12819,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" ], @@ -10362,25 +12857,45 @@ ] }, "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 +12914,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 +12943,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 +12957,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 +12991,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 +13013,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 +13032,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", @@ -10584,6 +13099,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 +13136,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 +13229,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 +13236,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 +13261,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 +13372,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 +13424,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 +13467,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 +13499,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 +13520,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 +13619,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 +13630,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 +13639,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,7 +13671,16 @@ "../../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", 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..dc61e09067 --- /dev/null +++ b/dist/core/common.type.d.ts @@ -0,0 +1,23 @@ +/// +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'; 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..a3ad4e445e --- /dev/null +++ b/dist/core/components/molecules/emptyState/EmptyState.d.ts @@ -0,0 +1,23 @@ +import * as React from 'react'; +import { HeadingProps, TextProps } from "../../../index.type"; +import { BaseProps } from "../../../utils/types"; +declare type EmptyStateSize = 'large' | 'small'; +export interface EmptyStateProps extends BaseProps { + imageSrc?: string; + title: string; + description: string; + size: EmptyStateSize; + children?: React.ReactNode; + image?: React.ReactNode; +} +export declare const imageHeight: { + large: string; + small: string; +}; +export declare const HeadingSize: Record; +export declare const textSize: Record; +export declare const EmptyState: { + (props: EmptyStateProps): JSX.Element; + displayName: string; +}; +export default EmptyState; 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..c7456d85cd --- /dev/null +++ b/dist/core/components/organisms/combobox/Combobox.d.ts @@ -0,0 +1,45 @@ +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; + 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..6ca510e043 --- /dev/null +++ b/dist/core/components/organisms/combobox/trigger/ComboboxTrigger.d.ts @@ -0,0 +1,20 @@ +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; + 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..a16bc217cc --- /dev/null +++ b/dist/core/components/organisms/combobox/trigger/MultiselectTrigger.d.ts @@ -0,0 +1,40 @@ +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?: (e: 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..6984402fcd 100644 --- a/dist/index.esm.js +++ b/dist/index.esm.js @@ -1,8 +1,8 @@ /** - * Generated on: 1627478629993 + * Generated on: 1715851595101 * Package: @innovaccer/design-system - * Version: v2.2.1 + * Version: v2.34.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$V = ["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$V); - 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 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 Loading = function Loading(props) { - var loadingType = props.loadingType; - - switch (loadingType) { - case 'DEFAULT': - return /*#__PURE__*/React__default.createElement(PlaceholderParagraph, { - length: 'large' - }); - - case 'WITH_ICON': - return /*#__PURE__*/React__default.createElement(Placeholder, { - withImage: true, - round: true - }, /*#__PURE__*/React__default.createElement(PlaceholderParagraph, { - length: "large" - })); + var _getDateInfo2 = getDateInfo(endDateState), + endYear = _getDateInfo2.year, + endMonth = _getDateInfo2.month, + _endDate2 = _getDateInfo2.date; - 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" - })); + var _getDateInfo3 = getDateInfo(hoverDateState), + hoverYear = _getDateInfo3.year, + hoverMonth = _getDateInfo3.month, + hoverDate = _getDateInfo3.date; - case 'WITH_CHECKBOX': - return /*#__PURE__*/React__default.createElement(Placeholder, { - withImage: true - }, /*#__PURE__*/React__default.createElement(PlaceholderParagraph, { - length: "large" - })); + var limitDate; - 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" - })); - } + 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); + } - return null; -}; + 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); + } + } -var alignmentMapping = { - right: 'bottom-start', - left: 'bottom-end' -}; + return false; + }); -var DropdownList = function DropdownList(props) { - var _classNames4, _classNames5; + _defineProperty$1(_assertThisInitialized$1(_this), "selectYear", function (year) { + return function () { + _this.updateState(year); - 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(); + _this.setState({ + view: 'month' + }); + }; + }); - var _React$useState = React.useState(), - _React$useState2 = _slicedToArray(_React$useState, 2), - popoverStyle = _React$useState2[0], - setPopoverStyle = _React$useState2[1]; + _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 _React$useState3 = React.useState(firstEnabledOption), - _React$useState4 = _slicedToArray(_React$useState3, 2), - cursor = _React$useState4[0], - setCursor = _React$useState4[1]; + _defineProperty$1(_assertThisInitialized$1(_this), "selectMonth", function (month) { + return function () { + _this.updateState(_this.state.yearNav, month); - React.useEffect(function () { - if (dropdownOpen) { - var _triggerRef$current; + _this.setState({ + view: '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%' + _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 }; - 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' - }; + if (onMonthHover) onMonthHover(monthData, ev); + }); - var getDropdownClass = function getDropdownClass(index, isGroup) { - var Dropdown = classnames(_defineProperty$2({}, 'Dropdown--border', isGroup && index !== 0)); - return Dropdown; - }; + _defineProperty$1(_assertThisInitialized$1(_this), "selectDate", function (index, date, prevMonthDayRange, dayRange) { + var d = _this.calculateDate(index, date, prevMonthDayRange, dayRange, false); - var getDropdownSectionClass = function getDropdownSectionClass(showClearButton) { - var _classNames2; + _this.setState({ + currDate: d + }); + }); - return classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'Dropdown-section', true), _defineProperty$2(_classNames2, 'Dropdown-section--withClear', showClearButton), _classNames2)); - }; + _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 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)); + var _this$getNavDateInfo = _this.getNavDateInfo(neighbouringMonthIndex), + year = _this$getNavDateInfo.year, + month = _this$getNavDateInfo.month; - var onToggleDropdown = function onToggleDropdown(open, type) { - var _dropdownTriggerRef$c; + if (isDateHovered === false) { + _this.updateState(year, month, neighbouringMonthDate); - toggleDropdown(open, type); - if (!disabled) (_dropdownTriggerRef$c = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c === void 0 ? void 0 : _dropdownTriggerRef$c.focus(); - setCursor(firstEnabledOption); - }; + _this.onNavIconClickHandler(type)(); + } - var onCancelOptions = function onCancelOptions() { - var _dropdownTriggerRef$c2; + var d = _this.getDateValue(year, month, neighbouringMonthDate); - cancelOptions(); - (_dropdownTriggerRef$c2 = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c2 === void 0 ? void 0 : _dropdownTriggerRef$c2.focus(); - }; + return d; + }); - var onApplyOptions = function onApplyOptions() { - var _dropdownTriggerRef$c3; - - applyOptions(); - (_dropdownTriggerRef$c3 = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c3 === void 0 ? void 0 : _dropdownTriggerRef$c3.focus(); - }; + _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; - var optionClickHandler = function optionClickHandler(item) { - var _dropdownTriggerRef$c4; + switch (view) { + case 'year': + if (type === 'prev') _this.setState({ + yearBlockNav: yearBlockNav - yearBlockRange + }); + if (type === 'next') _this.setState({ + yearBlockNav: yearBlockNav + yearBlockRange + }); + break; - props.onOptionSelect(item); - (_dropdownTriggerRef$c4 = dropdownTriggerRef.current) === null || _dropdownTriggerRef$c4 === void 0 ? void 0 : _dropdownTriggerRef$c4.focus(); - }; + case 'month': + if (type === 'prev') _this.setState({ + yearNav: yearNav - 1 + }); + if (type === 'next') _this.setState({ + yearNav: yearNav + 1 + }); + break; - var searchClearHandler = function searchClearHandler() { - setCursor(firstEnabledOption); - if (onSearchChange && searchTerm) onSearchChange(''); - }; + case 'date': + if (type === 'prev') { + if (monthNav === 0) _this.setState({ + yearNav: yearNav - 1 + }); - var searchHandler = function searchHandler(event) { - setCursor(firstEnabledOption); - if (onSearchChange) onSearchChange(event.target.value); - }; + _this.setState({ + monthNav: (monthBlock + monthNav - 1) % monthBlock + }); + } - var updateActiveOption = function updateActiveOption(index, parentCheckbox) { - var updatedIndex = withCheckbox && withSelectAll && !props.async && !parentCheckbox ? index + 1 : index; - setCursor(updatedIndex); - }; + if (type === 'next') { + if (monthNav === monthBlock - 1) _this.setState({ + yearNav: yearNav + 1 + }); - 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)); - }; + _this.setState({ + monthNav: (monthNav + 1) % monthBlock + }); + } - var renderGroups = function renderGroups(group, selectedGroup) { - var onClearOptions = props.onClearOptions; - var isClearDisabled = selected.every(function (option) { - return option.disabled; + break; + } + }; }); - 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")); - }; - var renderApplyButton = function renderApplyButton() { - var disable = _isEqual(previousSelected, tempSelected); + _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; - 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)); - }; + switch (view) { + case 'year': + if (type === 'prev') { + disabled = compareYearBlock(disabledBefore, 'more', yearBlockNav) || compareYearBlock(disabledBefore, 'equal', yearBlockNav); + } - 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" - })); - }; + if (type === 'next') { + disabled = compareYearBlock(disabledAfter, 'less', yearBlockNav) || compareYearBlock(disabledAfter, 'equal', yearBlockNav); + } - 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 - })); - }); - }; + break; - 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); - } - }, /*#__PURE__*/React.createElement(Checkbox, { - label: label, - onChange: onSelectAll, - checked: selectAll.checked, - indeterminate: selectAll.indeterminate, - tabIndex: -1, - className: "OptionCheckbox" - })); - }; + case 'month': + if (type === 'prev') { + disabled = compareDate(disabledBefore, 'more', yearNav - 1); + } - var renderOptions = function renderOptions(item, index) { - // const selectAllPresent = withCheckbox - // && remainingOptions === 0 - // && searchTerm === '' - // && withSelectAll; - var selectAllPresent = _isSelectAllPresent(searchTerm, remainingOptions, withSelectAll, withCheckbox); + if (type === 'next') { + disabled = compareDate(disabledAfter, 'less', yearNav + 1); + } - 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 - }); - }; + break; - 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; + case 'date': + if (type === 'prev') { + disabled = compareDate(disabledBefore, 'more', yearNav, monthNav - 1); + } - var selectAllPresent = _isSelectAllPresent(searchTerm, remainingOptions, withSelectAll, withCheckbox); + if (type === 'next') { + disabled = compareDate(disabledAfter, 'less', yearNav, monthNav + 1); + } - if (loadersCount && loadingOptions) { - return /*#__PURE__*/React.createElement("div", { - className: 'Dropdown-loading' - }, /*#__PURE__*/React.createElement("div", { - className: "Dropdown-wrapper", - style: dropdownStyle - }, renderLoading(loadersCount))); - } + break; + } - 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))); - } + 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) + }); + }); - 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 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; - - while (startIndex !== endIndex) { - var node = elements[startIndex]; - - 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 onkeydown = function onkeydown(event) { - var _dropdownApplyButtonR; - - var optionClass = '.OptionWrapper'; - - switch (event.key) { - case 'ArrowDown': - event.preventDefault(); - dropdownOpen ? focusOption('down', optionClass) : onToggleDropdown(!dropdownOpen); - break; - - case 'ArrowUp': - event.preventDefault(); - dropdownOpen ? focusOption('up', optionClass) : onToggleDropdown(!dropdownOpen); - break; - - 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(); - } - - if (!dropdownOpen) onToggleDropdown(!dropdownOpen); - break; + _defineProperty$1(_assertThisInitialized$1(_this), "onNavHeadingClickHandler", function (currView) { + return function () { + var monthsInView = _this.props.monthsInView; + var jumpView = _this.props.jumpView; - case 'Tab': - if (!showApplyButton && dropdownOpen) { - event.preventDefault(); - onToggleDropdown(false, 'onClick'); - return; + if (jumpView) { + if (monthsInView > 1) jumpView = false; } - var currentElement = document.activeElement; - var disabledApplyButton = (_dropdownApplyButtonR = dropdownApplyButtonRef.current) === null || _dropdownApplyButtonR === void 0 ? void 0 : _dropdownApplyButtonR.disabled; - - if ((currentElement === dropdownCancelButtonRef.current && disabledApplyButton || currentElement === dropdownApplyButtonRef.current) && dropdownOpen) { - event.preventDefault(); - onToggleDropdown(false, 'onClick'); - return; + if (jumpView) { + if (currView === 'year') _this.setState({ + view: 'date' + }); + if (currView === 'month') _this.setState({ + view: 'year' + }); + if (currView === 'date') _this.setState({ + view: 'month' + }); } + }; + }); - if (showApplyButton && dropdownOpen) { - event.preventDefault(); + _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; - if (currentElement === dropdownCancelButtonRef.current) { - var _dropdownApplyButtonR2; + var _this$getNavDateInfo2 = _this.getNavDateInfo(index), + yearNavVal = _this$getNavDateInfo2.year, + monthNavVal = _this$getNavDateInfo2.month; - (_dropdownApplyButtonR2 = dropdownApplyButtonRef.current) === null || _dropdownApplyButtonR2 === void 0 ? void 0 : _dropdownApplyButtonR2.focus(); - } else { - var _dropdownCancelButton; + 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); - (_dropdownCancelButton = dropdownCancelButtonRef.current) === null || _dropdownCancelButton === void 0 ? void 0 : _dropdownCancelButton.focus(); - } + 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" + })); } - break; - } - }; - - 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())); -}; - -DropdownList.displayName = 'DropdownList'; + 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" + })); + }; -var _excluded$v = ["triggerOptions", "selected"]; -var inputRef = /*#__PURE__*/React.createRef(); + 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)))); + }); -/** - * ###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); + _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 _super = _createSuper$1(Dropdown); + 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; - function Dropdown(props) { - var _this; + var isCurrentYear = function isCurrentYear() { + return year === currYear; + }; - _classCallCheck$1(this, Dropdown); + 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)) + ); + })); + }); + }); - _this = _super.call(this, props); + _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; - _defineProperty$2(_assertThisInitialized$2(_this), "staticLimit", void 0); + 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; - _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 isCurrentMonth = function isCurrentMonth() { + return currYear === yearNav && currMonth === month; + }; - _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 - }); + 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])) + ); + })); }); }); - _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; - }); - } - - var _this$props$selected = _this.props.selected, - _selected2 = _this$props$selected === void 0 ? [] : _this$props$selected; + _defineProperty$1(_assertThisInitialized$1(_this), "onDateRowMouseLeaveHandler", function () { + var rangePicker = _this.props.rangePicker; - var unSelectedGroup = options.filter(function (option) { - return _isControlled(_this.props.selected) ? _selected2.findIndex(function (item) { - return item.value === option.value; - }) === -1 : !option.selected; + if (rangePicker) { + _this.setState({ + hoverDate: undefined }); - return unSelectedGroup; } - - return options; }); - _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; - - if (options.length) { - if (!init) return _this.state.tempSelected; - var selectedGroup = _isControlled(_this.props.selected) ? selected : options.filter(function (option) { - return option.selected; + _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 }); - return selectedGroup; - } - - return []; + 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))); }); - _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), "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; - if (!res.searchTerm || res.searchTerm && res.searchTerm === _this.state.searchTerm) { - var _inputRef$current; + var _this$getNavDateInfo3 = _this.getNavDateInfo(index), + yearNavVal = _this$getNavDateInfo3.year, + monthNavVal = _this$getNavDateInfo3.month; - 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 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) ? - var disabledOptions = _this.getDisabledOptions(unSelectedGroup.slice(0, _this.staticLimit)); + if (noOfRows === 6) ; else if (monthsInView > 1) ; else { + noOfRows = noOfRows + 1; + } - _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 inRangeError = _this.getInRangeError(); - if (updatedAsync || withSearch) (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus(); - } - }); - }); + var events = _this.props.events; - _defineProperty$2(_assertThisInitialized$2(_this), "updateSearchTerm", function (search) { - _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { - loading: true, - searchInit: true, - searchTerm: search - })); - }); + 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); + } + }; + }; - _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; + var onMouseOverHandler = function onMouseOverHandler(date) { + return function () { + if (rangePicker) { + var d = _this.getDateValue(yearNavVal, monthNavVal, date); - var disabledOptionsCount = _this.getDisabledOptions(options).length; + if (!startDate || !endDate) { + _this.setState({ + hoverDate: d + }); + } + } + }; + }; - if (withCheckbox && showApplyButton) { - var temporarySelected = _isControlled(_this.props.selected) ? selected : previousSelected; + 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.setState({ - tempSelected: temporarySelected, - selectAll: getSelectAll$1(temporarySelected, optionsLength, disabledOptionsCount), - triggerLabel: _this.updateTriggerLabel(temporarySelected) - }); - } + 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; - if (_isOpenControlled(_this.props.open)) { - _this.setState({ - open: popperIsOpen - }); - } + 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 (popperIsOpen) { - var moveSelectedGroup = _showSelectedItems(async, searchTerm, withCheckbox) && !_isEqual(_this.state.selected, tempSelected); + var today = function today() { + var boolVal; - _this.setState({ - loading: moveSelectedGroup || loading || searchTerm !== '', - searchInit: searchTerm !== '', - searchTerm: '' - }); + 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 (moveSelectedGroup) _this.updateOptions(false); - } + return boolVal; + }; - 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); - } - }); + var startActive = false; + var endActive = false; + var inRange = false; + var inRangeLast = false; - _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 = ''; + var _getDateInfo4 = getDateInfo(startDate), + sYear = _getDateInfo4.year, + sMonth = _getDateInfo4.month, + sDate = _getDateInfo4.date; - if (selectedLength <= labelLimit) { - label = selectedArray.map(function (option) { - return option.label; - }).join(', '); - } else { - label = customLabel ? customLabel(selectedLength, optionsLength, selectedArray) : "".concat(selectedLength, " selected"); - } + var _getDateInfo5 = getDateInfo(endDate), + eYear = _getDateInfo5.year, + eMonth = _getDateInfo5.month, + eDate = _getDateInfo5.date; - if (getLabel) getLabel(label); - return label; - }); + 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); - _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 (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 disabledOptions = _this.getDisabledOptions(_this.state.options); + 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 isClearClicked = selectedArray.length === 0 && selected.length > 0 || selectedArray.every(function (option) { - return option.disabled; - }) && !selected.every(function (option) { - return option.disabled; + 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))); + })); }); - - _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 (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), "onOptionSelect", function (option) { - var _this$props5 = _this.props, - onUpdate = _this$props5.onUpdate, - selected = _this$props5.selected; + _defineProperty$1(_assertThisInitialized$1(_this), "renderCalendar", function (index) { + var _classNames5; - if (_isControlled(selected)) { - if (onUpdate) onUpdate('select-option', option); - return; - } - - _this.updateSelectedOptions([option], true); + 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))); }); - _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 (_isControlled(selected) && !showApplyButton) { - if (onUpdate) onUpdate(checked ? 'select-option' : 'deselect-option', option); - return; - } + 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 tempSelected = _this.state.tempSelected; - var selectedArray = tempSelected.slice(); + var _yearNav = props.yearNav !== undefined ? props.yearNav : getDateInfo(currDate || Date.now()).year; - if (!checked) { - var index = selectedArray.findIndex(function (item) { - return item.value === option.value; - }); - selectedArray.splice(index, 1); - } + var _monthNav = props.monthNav !== undefined ? props.monthNav : getDateInfo(currDate || Date.now()).month; - selectedArray = checked ? selectedArray.concat(option) : selectedArray; + var _getDateInfo6 = getDateInfo(currDate), + _year = _getDateInfo6.year, + _month = _getDateInfo6.month, + _date = _getDateInfo6.date; - _this.updateSelectedOptions(selectedArray, false); - }); + 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), "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; + _createClass(Calendar, [{ + key: "componentDidUpdate", + value: function componentDidUpdate(prevProps, prevState) { + var _prevState$startDate, _this$state$startDate, _this$state$endDate, _prevState$endDate, _this$state$endDate2; - if (_isControlled(selected) && !showApplyButton) { - if (onUpdate) onUpdate(event.target.checked ? 'select-all' : 'deselect-all'); - return; - } + var monthsInView = this.props.monthsInView; - 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; + if (prevProps.date !== this.props.date) { + var _getDateInfo7 = getDateInfo(this.props.date), + year = _getDateInfo7.year, + month = _getDateInfo7.month, + _date2 = _getDateInfo7.date; - _this.updateSelectedOptions(selectedArray, false); - }); + this.updateState(year, month, _date2); + var d = convertToDate(this.props.date); + this.setState({ + currDate: d + }); + } - _defineProperty$2(_assertThisInitialized$2(_this), "debounceSearch", debounce$1(_this.props.searchDebounceDuration, function () { - _this.setState({ - searchInit: false - }, function () { - _this.updateOptions(false); - }); - })); + if (this.props.startDate && !isNaN(this.props.startDate.getTime()) && prevProps.startDate !== this.props.startDate) { + var _d = convertToDate(this.props.startDate); - _defineProperty$2(_assertThisInitialized$2(_this), "debounceClear", debounce$1(250, function () { - return _this.updateOptions(false); - })); + this.setState({ + startDate: _d + }); + } - _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; - }); + if (this.props.endDate && !isNaN(this.props.endDate.getTime()) && prevProps.endDate !== this.props.endDate) { + var _d2 = convertToDate(this.props.endDate); - if (_isControlled(selected) && !showApplyButton) { - if (onUpdate) onUpdate('clear-all'); - return; + this.setState({ + endDate: _d2 + }); } - _this.setState({ - selected: selectedArray, - tempSelected: selectedArray, - triggerLabel: '', - loading: true - }); + if (prevProps.view !== this.props.view) { + if (this.props.monthsInView === 1) { + this.setState({ + view: this.props.view + }); + } + } - _this.debounceClear(); + if (prevProps.yearNav !== this.props.yearNav) { + var yearNav = this.props.yearNav; - if (onChange && !showApplyButton) onChange(selectedArray, name); - }); + if (yearNav) { + this.setState({ + yearNav: yearNav, + yearBlockNav: getYearBlock(yearNav) + }); + } + } - _defineProperty$2(_assertThisInitialized$2(_this), "onTogglePopper", function (type) { - var onPopperToggle = _this.props.onPopperToggle; + if (prevProps.monthNav !== this.props.monthNav) { + var monthNav = this.props.monthNav; - if (onPopperToggle && _isOpenControlled(_this.props.open)) { - onPopperToggle(false, type); + if (monthNav) { + this.setState({ + monthNav: monthNav + }); + } } - }); - _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; - }); + 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; - if (_isControlled(selected)) { - if (onUpdate) onUpdate('cancel-selected', previousSelected, tempSelected); + if (currDate) { + if (onDateChange) onDateChange(currDate); - _this.onTogglePopper('cancelClick'); + if (rangePicker) { + this.setState({ + hoverDate: undefined + }); - return; + if (_startDate3 && _endDate3) { + this.setState({ + startDate: currDate, + endDate: undefined + }); + } else { + var _getDateInfo8 = getDateInfo(currDate), + _year2 = _getDateInfo8.year, + _month2 = _getDateInfo8.month, + _date3 = _getDateInfo8.date; + + 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 + }); + } + } } - var label = _this.updateTriggerLabel(previousSelected); + 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); + } - var disabledOptions = _this.getDisabledOptions(_this.state.options); + 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.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { - tempSelected: previousSelected, - selectAll: getSelectAll$1(previousSelected, optionsLength, disabledOptions.length), - triggerLabel: label, - open: popperIsOpen - })); + if (_startDate5 && !_endDate5) { + var _getDateInfo9 = getDateInfo(_startDate5), + _year3 = _getDateInfo9.year, + _month3 = _getDateInfo9.month, + _date4 = _getDateInfo9.date; - if (onClose && !popperIsOpen) { - onClose(values, name); + 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 (compareDate(hoverDate, 'more', _year4, _month4, _date5)) { + this.setState({ + startDate: _endDate5, + endDate: undefined + }); + } + } } - _this.onTogglePopper('cancelClick'); - }); - - _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; - }); + if (prevState.year !== this.state.year) { + var _year5 = this.state.year; - if (_isControlled(selected)) { - if (onUpdate) onUpdate('apply-selected', previousSelected, tempSelected); + if (_year5 !== undefined && monthsInView === 1) { + this.setState({ + year: _year5, + yearBlockNav: getYearBlock(_year5), + yearNav: _year5 + }); + } + } - _this.onTogglePopper('applyClick'); + if (prevState.month !== this.state.month) { + var _month5 = this.state.month; - return; + if (_month5 !== undefined && monthsInView === 1) { + this.setState({ + monthNav: _month5 + }); + } } + } + }, { + key: "renderEventsIndicator", + value: function renderEventsIndicator(size, active) { + var _classNames7; - _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { - previousSelected: tempSelected, - optionsApplied: true, - open: popperIsOpen - })); + 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 (onChange) { - onChange(values, name); - } + 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); + })); + } + }]); - if (onClose && !popperIsOpen) { - onClose(values, name); - } + return Calendar; +}(React.Component); - _this.onTogglePopper('applyClick'); - }); +_defineProperty$1(Calendar, "defaultProps", { + size: 'large', + monthsInView: 1, + view: 'date', + firstDayOfWeek: 'sunday', + jumpView: true +}); - _defineProperty$2(_assertThisInitialized$2(_this), "onToggleDropdown", function (updatedOpen, type) { - if (_this.props.disabled) { - return; - } +var _excluded$U = ["shadow", "children", "className"]; +var Card = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames; - 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$U); - if (onPopperToggle && _isOpenControlled(_this.props.open)) { - onPopperToggle(updatedOpen, type); - return; - } + 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' +}; - _this.setState({ - open: updatedOpen - }); - }); +var _excluded$T = ["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$T); - 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 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'; - _this.staticLimit = Math.min(100, props.staticLimit); +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 _optionsLength = _totalOptions ? _totalOptions : _options.length; +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 _async = 'fetchOptions' in _this.props || _optionsLength > _this.staticLimit; +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 +}; - var _selectedGroup = !_async ? _this.getSelectedOptions(_options, true) : []; +var isSpaceKey = function isSpaceKey(e) { + return e.key === 'Space'; +}; - var _disabledOptions = _this.getDisabledOptions(_options); +var _excluded$S = ["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.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 isKeyboardInteractionAllowed = function isKeyboardInteractionAllowed(role, key) { + if (!allowed[role]) { + return false; } - _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 disabledOptionsCount = this.getDisabledOptions(_options2).length; + var allowedKeys = allowed[role]; + return allowedKeys.has(key); +}; - if (prevProps.loading !== loading && !fetchOptions) { - if (_options2.length > this.staticLimit) { - this.updateOptions(true, true); - } else { - var _inputRef$current2; +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$S); - 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 _objectSpread2({}, onClick ? { + onClick: onClick, + role: role, + tabIndex: tabIndex || 0, + 'aria-label': rest['aria-label'], + onKeyDown: function onKeyDown(e) { + if (_onKeyDown) { + _onKeyDown(e); - 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; } - if (prevState.searchTerm !== this.state.searchTerm) { - this.debounceSearch(); - } + var key = e.key; - 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(); + if (isKeyboardInteractionAllowed(role, key)) { + if (onClick) { + e.preventDefault(); + onClick(e); + } } } - }, { - 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; + } : { + role: role, + tabIndex: tabIndex, + 'aria-label': rest['aria-label'] + }); +}; - 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 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 + *
+ */ - 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)); - } - }]); +var Icon = function Icon(props) { + var _classNames; - return Dropdown; -}(React.Component); + 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'; -_defineProperty$2(Dropdown, "defaultProps", { - triggerOptions: {}, - options: [], - closeOnSelect: true, - staticLimit: 50, - searchDebounceDuration: 300 -}); + var getIconAppearance = function getIconAppearance(iconColor) { + var x = iconColor.indexOf('_'); + return iconColor.slice(0, x) + iconColor.charAt(x + 1).toUpperCase() + iconColor.slice(x + 2); + }; -var renderLink = function renderLink(item, _onClick) { - return /*#__PURE__*/React.createElement(Link, { - href: item.link, - onClick: function onClick(ev) { - if (_onClick) { - ev.preventDefault(); + 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 - _onClick(item.link); - } - }, - appearance: "subtle", - size: "tiny" - }, item.label); + if (children && /*#__PURE__*/React.isValidElement(children)) { + return /*#__PURE__*/React.createElement("span", _extends$2({}, baseProps, { + className: className + }), children); + } + + 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 }; -var renderDropdown = function renderDropdown(list, onClick) { - var options = list.map(function (item) { - return { - label: item.label, - value: item.link - }; - }); +var _excluded$R = ["children", "componentType", "className"]; - var customTrigger = function customTrigger() { - return /*#__PURE__*/React.createElement(Button, { - size: "tiny", - appearance: "transparent", - icon: "more_horiz_filled", - "data-test": "DesignSystem-Breadcrumbs--Button" - }); - }; +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$R); - return /*#__PURE__*/React.createElement(Dropdown, { - triggerSize: 'tiny', - triggerOptions: { - customTrigger: customTrigger - }, - options: options, - menu: true, - onChange: function onChange(selected) { - if (onClick) { - onClick(selected); - } - } - }); + return /*#__PURE__*/React.createElement(componentType, _objectSpread2(_objectSpread2({}, rest), {}, { + className: className, + ref: ref + }), children); }; -var Breadcrumbs = function Breadcrumbs(props) { - var list = props.list, - onClick = props.onClick, - 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" - }, 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" - }, "/")))); -}; +var Link$1 = /*#__PURE__*/React.forwardRef(GenericText); -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 Button = /*#__PURE__*/React.forwardRef(function (props, ref) { - var _classNames, _classNames2; +var _excluded$Q = ["appearance", "size", "children", "weight", "small", "className", "color"]; +var Text = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames; - var _props$size = props.size, + 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, - _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, + weight = props.weight, + small = props.small, className = props.className, - rest = _objectWithoutProperties$1(props, _excluded$u); + color = props.color, + rest = _objectWithoutProperties(props, _excluded$Q); - 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", + 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, - 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)); + "data-test": "DesignSystem-Text" + }, rest, { + className: classes, + componentType: "span" + }), 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'] - } +Text.displayName = 'Text'; +Text.defaultProps = { + appearance: 'default', + size: 'regular' }; -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 GenericChip = function GenericChip(props) { + var _classNames3; - 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 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); - return {}; -}; -var convertToDate = function convertToDate(d, format, validators) { - var dateVal; + var iconClass = function iconClass(align) { + var _classNames; - 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; - } - } + 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)); + }; - return dateVal; -}; -var compareYearBlock = function compareYearBlock(d, operator, currDecade) { - if (d) { - var _getDateInfo = getDateInfo(d), - limitDecade = _getDateInfo.decadeYear; - - switch (operator) { - case 'less': - if (limitDecade < currDecade) return true; - break; + var onCloseHandler = function onCloseHandler(e) { + e.stopPropagation(); + if (onClose) onClose(); + }; - case 'more': - if (limitDecade > currDecade) return true; - break; + var onClickHandler = function onClickHandler() { + if (onClick) onClick(); + }; - case 'equal': - if (limitDecade === currDecade) return true; - break; + var onKeyDownHandler = function onKeyDownHandler(event) { + if (event.key === 'Enter') { + onCloseHandler(event); } - } + }; - 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 iconAppearance = function iconAppearance(align) { + var _classNames2; - switch (operator) { - case 'less': - if (limitYear < currYear) return true; - if (limitYear > currYear) return false; + 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)); + }; - if (currMonth !== undefined) { - if (limitMonth < currMonth) return true; - if (limitMonth > currMonth) return false; - } + 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)); - if (currDate !== undefined && limitDate < currDate) return true; - break; + 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)); + } - case 'more': - if (limitYear > currYear) return true; - if (limitYear < currYear) return false; + return label; + }; - if (currMonth !== undefined) { - if (limitMonth > currMonth) return true; - if (limitMonth < currMonth) return false; - } + 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'; - if (currDate !== undefined && limitDate > currDate) return true; - break; +var Chip = function Chip(props) { + var _classNames; - 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 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 false; + 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 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; +var ChipGroup = function ChipGroup(props) { + var list = props.list, + onClick = props.onClick, + onClose = props.onClose, + className = props.className; + var baseProps = extractBaseProps(props); - case 'yyyy': - out += year; - break; + var onClickHandler = function onClickHandler(item) { + if (onClick) onClick(item); + }; - case 'dd': - out += (date < 10 && '0') + date; - break; - } + var onCloseHandler = function onCloseHandler(item) { + if (onClose) onClose(item); + }; - if (i !== f.length - 1) out += separator; - return out; - }, ''); - return val; - } + var ChipGroupClass = classnames(_defineProperty$1({}, 'ChipGroup', true), className); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "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, + 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'; - 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 translateToDate = function translateToDate(format, val) { - var validators = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; - 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 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 'yyyy': - year = +v[i]; - break; + 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 'dd': - date = +v[i]; - break; - } - }); - var d = convertToDate({ - year: year, - month: month, - date: date - }); - return d; - } else { - return undefined; + 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 Calendar = /*#__PURE__*/function (_React$Component) { - _inherits$1(Calendar, _React$Component); - - var _super = _createSuper$1(Calendar); +var _excluded$P = ["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; - function Calendar(props) { - var _this; + 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, + error = props.error, + disabled = props.disabled, + onChange = props.onChange, + name = props.name, + value = props.value, + className = props.className, + 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$P); - _classCallCheck$1(this, Calendar); + var ref = React.useRef(null); + React.useImperativeHandle(forwardedRef, function () { + return ref.current; + }); - _this = _super.call(this, props); + var _React$useState = React.useState(checkedProp === undefined ? defaultChecked : checkedProp), + _React$useState2 = _slicedToArray(_React$useState, 2), + checked = _React$useState2[0], + setChecked = _React$useState2[1]; - _defineProperty$2(_assertThisInitialized$2(_this), "updateState", function (year, month, date) { - _this.setState({ - year: year, - month: month, - date: date - }); - }); + 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)); - _defineProperty$2(_assertThisInitialized$2(_this), "getDateValue", function (year, month, date) { - var d = new Date(year, month, date); - return d; - }); + var setIndeterminate = function setIndeterminate(indeterminateValue) { + ref.current.indeterminate = indeterminateValue; + }; - _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 - }; - }); + var onChangeHandler = function onChangeHandler(e) { + if (checkedProp === undefined) { + setChecked(e.target.checked); + setIndeterminate(e.target.indeterminate); + } - _defineProperty$2(_assertThisInitialized$2(_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; + if (onChange) onChange(e); + }; - if (rangePicker && rangeLimit) { - var _getDateInfo = getDateInfo(startDateState), - startYear = _getDateInfo.year, - startMonth = _getDateInfo.month, - _startDate2 = _getDateInfo.date; + 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'; - var _getDateInfo2 = getDateInfo(endDateState), - endYear = _getDateInfo2.year, - endMonth = _getDateInfo2.month, - _endDate2 = _getDateInfo2.date; +var _excluded$O = ["size", "sizeXS", "sizeS", "sizeM", "sizeL", "sizeXL", "className", "children"]; +var Column = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames; - var _getDateInfo3 = getDateInfo(hoverDateState), - hoverYear = _getDateInfo3.year, - hoverMonth = _getDateInfo3.month, - hoverDate = _getDateInfo3.date; + 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$O); - var limitDate; + 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'; - 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); - } +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 (endDateState) { - limitDate = new Date(endDateState); - limitDate.setDate(_endDate2 - rangeLimit); - return compareDate(limitDate, 'more', hoverYear, hoverMonth, hoverDate - 1) || compareDate(limitDate, 'more', startYear, startMonth, _startDate2 - 1); - } - } + var onPasteHandler = function onPasteHandler(_e, val) { + var onPaste = inputOptions.onPaste; + setState({ + open: true + }); - return false; + 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 }); - _defineProperty$2(_assertThisInitialized$2(_this), "selectYear", function (year) { - return function () { - _this.updateState(year); + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); + setState({ + date: d + }); + } - _this.setState({ - view: 'month' - }); - }; + if (onChange) onChange(_e); + }; + + var onBlurHandler = function onBlurHandler(_e, val) { + var onBlur = inputOptions.onBlur; + setState({ + init: true }); + var hasNumber = /\d/; - _defineProperty$2(_assertThisInitialized$2(_this), "selectMonth", function (month) { - return function () { - _this.updateState(_this.state.yearNav, month); + if (val && hasNumber.test(val) && val.includes(placeholderChar)) { + setState({ + error: true + }); + } else if (val && !hasNumber.test(val) || !val) { + setState({ + error: false + }); + } - _this.setState({ - view: 'date' - }); - }; + if (onBlur) onBlur(_e, val || ''); + }; + + var onClearHandler = function onClearHandler(e) { + var onClear = inputOptions.onClear; + setState({ + init: true, + date: undefined }); + if (onClear) onClear(e); + }; - _defineProperty$2(_assertThisInitialized$2(_this), "selectDate", function (index, date) { - var _this$getNavDateInfo = _this.getNavDateInfo(index), - year = _this$getNavDateInfo.year, - month = _this$getNavDateInfo.month; + var showError = inputOptions.error || inputOptions.required && error && init; + var errorMessage = inputOptions.caption === undefined ? 'Invalid value' : inputOptions.caption; - _this.updateState(year, month, date); + var inputValidator = function inputValidator(val) { + return isValid(validators, val, inputFormat); + }; - var d = _this.getDateValue(year, month, date); + 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" + })); +}; - _this.setState({ - currDate: d - }); - }); +var _excluded$N = ["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); - _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; + var _super = _createSuper(DatePicker); - switch (view) { - case 'year': - if (type === 'prev') _this.setState({ - yearBlockNav: yearBlockNav - yearBlockRange - }); - if (type === 'next') _this.setState({ - yearBlockNav: yearBlockNav + yearBlockRange - }); - break; + function DatePicker(props) { + var _this; - case 'month': - if (type === 'prev') _this.setState({ - yearNav: yearNav - 1 - }); - if (type === 'next') _this.setState({ - yearNav: yearNav + 1 - }); - break; + _classCallCheck(this, DatePicker); - case 'date': - if (type === 'prev') { - if (monthNav === 0) _this.setState({ - yearNav: yearNav - 1 - }); + _this = _super.call(this, props); - _this.setState({ - monthNav: (monthBlock + monthNav - 1) % monthBlock - }); - } + _defineProperty$1(_assertThisInitialized$1(_this), "getError", function (date) { + var _this$props = _this.props, + disabledBefore = _this$props.disabledBefore, + disabledAfter = _this$props.disabledAfter, + outputFormat = _this$props.outputFormat, + onError = _this$props.onError; + if (!date) return false; - if (type === 'next') { - if (monthNav === monthBlock - 1) _this.setState({ - yearNav: yearNav + 1 - }); + var _getDateInfo = getDateInfo(disabledBefore), + dbYear = _getDateInfo.year, + dbMonth = _getDateInfo.month, + dbDate = _getDateInfo.date; - _this.setState({ - monthNav: (monthNav + 1) % monthBlock - }); - } + var _getDateInfo2 = getDateInfo(disabledAfter), + daYear = _getDateInfo2.year, + daMonth = _getDateInfo2.month, + daDate = _getDateInfo2.date; - break; + 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; }); - _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; + _defineProperty$1(_assertThisInitialized$1(_this), "onDateChangeHandler", function (d) { + _this.setState({ + init: true, + date: d + }); - switch (view) { - case 'year': - if (type === 'prev') { - disabled = compareYearBlock(disabledBefore, 'more', yearBlockNav) || compareYearBlock(disabledBefore, 'equal', yearBlockNav); - } + var closeOnSelect = _this.props.closeOnSelect; + if (closeOnSelect) _this.setState({ + open: false + }); + }); - if (type === 'next') { - disabled = compareYearBlock(disabledAfter, 'less', yearBlockNav) || compareYearBlock(disabledAfter, 'equal', yearBlockNav); - } + _defineProperty$1(_assertThisInitialized$1(_this), "onToggleHandler", function (o, type) { + var disabled = _this.props.inputOptions.disabled; + if (disabled) return; - break; + switch (type) { + case 'outsideClick': + _this.setState({ + open: o + }); - case 'month': - if (type === 'prev') { - disabled = compareDate(disabledBefore, 'more', yearNav - 1); - } + break; - if (type === 'next') { - disabled = compareDate(disabledAfter, 'less', yearNav + 1); - } + case 'onClick': + _this.setState({ + open: true + }); break; + } + }); - case 'date': - if (type === 'prev') { - disabled = compareDate(disabledBefore, 'more', yearNav, monthNav - 1); - } + var inputFormat = props.inputFormat, + validators = props.validators; - if (type === 'next') { - disabled = compareDate(disabledAfter, 'less', yearNav, monthNav + 1); - } + var _date = convertToDate(props.date, inputFormat, validators); - break; + var error = _this.getError(_date); + + _this.state = { + date: _date, + error: error, + init: false, + open: props.open || false + }; + return _this; + } + + _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 + }); } - 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) - }); - }); + if (prevProps.open !== this.props.open) { + this.setState({ + open: this.props.open || false + }); + } - _defineProperty$2(_assertThisInitialized$2(_this), "onNavHeadingClickHandler", function (currView) { - return function () { - var monthsInView = _this.props.monthsInView; - var jumpView = _this.props.jumpView; + 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 (jumpView) { - if (monthsInView > 1) jumpView = false; + if (onDateChange) { + if (!newError) { + var dVal = translateToString(outputFormat, _date2); + onDateChange(_date2, dVal); + } else { + onDateChange(undefined, ''); + } } + } + } + }, { + key: "renderCalendar", + value: function renderCalendar() { + var _this2 = this; - if (jumpView) { - if (currView === 'year') _this.setState({ - view: 'date' - }); - if (currView === 'month') _this.setState({ - view: 'year' - }); - if (currView === 'date') _this.setState({ - view: 'month' - }); + 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$N); + + 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; } + + return !isTodayDateDisabled; }; - }); - _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; + 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; - var _this$getNavDateInfo2 = _this.getNavDateInfo(index), - yearNavVal = _this$getNavDateInfo2.year, - monthNavVal = _this$getNavDateInfo2.month; + 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()); + } - 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 this.renderCalendar(); + } + }]); - var renderHeading = function renderHeading(content) { - if (size === 'small') { - return /*#__PURE__*/React.createElement(Text, { - weight: "strong" - }, content); - } + return DatePicker; +}(React.Component); - return /*#__PURE__*/React.createElement(Heading, { - size: "s" - }, content); - }; +_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 +})); - 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 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; +}; - _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)); - })); - }); - }); +var isFormat12Hour = function isFormat12Hour(format) { + return format === '12-Hour'; +}; - _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 isTimeIn12HourFormat = function isTimeIn12HourFormat(time) { + return _isTimeInAM(time) || _isTimeInPM(time); +}; - if (rangePicker) { - _this.setState({ - hoverDate: undefined - }); - } - }); +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 + */ - _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))); - }); +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]; - _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; + var timeArr = time.split(':'); + var hours = timeArr[0]; + var minutes = timeArr[1]; - var _this$getNavDateInfo3 = _this.getNavDateInfo(index), - yearNavVal = _this$getNavDateInfo3.year, - monthNavVal = _this$getNavDateInfo3.month; + if (hours === '12' && _isTimeInAM(modifier)) { + hours = '00'; + } - var dayRange = getDaysInMonth(yearNavVal, monthNavVal); - var dayDiff = getFirstDayOfMonth(yearNavVal, monthNavVal) - getIndexOfDay(firstDayOfWeek); - var dummyDays = Math.abs(dayDiff); - var noOfRows = Math.ceil((dayRange + dummyDays) / daysInRow); + if (_isTimeInPM(modifier) && hours !== '12') { + hours = (parseInt(hours, 10) + 12).toString(); + } - var inRangeError = _this.getInRangeError(); + return "".concat(hours, ":").concat(minutes); +}; +/** + * @param val + * @returns insert 0 at start in case of single digit + */ - 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 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 + */ - var onMouseOverHandler = function onMouseOverHandler(date) { - return function () { - if (rangePicker) { - var d = _this.getDateValue(yearNavVal, monthNavVal, date); +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; +}; - if (!startDate || !endDate) { - _this.setState({ - hoverDate: d - }); - } - } - }; - }; +var getTimeIn24HrFormat = function getTimeIn24HrFormat(timeStr) { + if (isTimeIn12HourFormat(timeStr)) { + return convert12To24HourFormat$1(timeStr); + } - 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; + 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 + */ - 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 (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 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 + */ - var _getDateInfo4 = getDateInfo(startDate), - sYear = _getDateInfo4.year, - sMonth = _getDateInfo4.month, - sDate = _getDateInfo4.date; +var get24HourTimeList = function get24HourTimeList(startTime, endTime, interval) { + var timeList = []; + var parseStartTime = parseDate(startTime); + var parseEndTime = parseDate(endTime); - var _getDateInfo5 = getDateInfo(endDate), - eYear = _getDateInfo5.year, - eMonth = _getDateInfo5.month, - eDate = _getDateInfo5.date; + while (parseStartTime <= parseEndTime) { + timeList.push(parseStartTime.toTimeString().substring(0, 5)); + parseStartTime.setMinutes(parseStartTime.getMinutes() + interval); + } - 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)); - })); - }); - }); + return timeList; +}; +/** + * @param startTime in HH:MM format + * @param interval + * @returns time list in 24 hour format including times option for next day + */ - _defineProperty$2(_assertThisInitialized$2(_this), "renderCalendar", function (index) { - var _classNames5; - 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))); - }); +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 _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 getTimeListIn24HourFormat = function getTimeListIn24HourFormat(startTime, endTime, interval) { + if (endTime === '' || checkTimeDifference(startTime, endTime)) { + return getReverseTimeList(startTime, endTime, interval); + } - var _yearNav = props.yearNav !== undefined ? props.yearNav : getDateInfo(currDate || Date.now()).year; + return get24HourTimeList(startTime, endTime, interval); +}; - var _monthNav = props.monthNav !== undefined ? props.monthNav : getDateInfo(currDate || Date.now()).month; +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 + }; +}; - var _getDateInfo6 = getDateInfo(currDate), - _year = _getDateInfo6.year, - _month = _getDateInfo6.month, - _date = _getDateInfo6.date; +var getCustomLabel = function getCustomLabel(time, timeFormat, showDuration, referenceTime) { + var label = time; - _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; + if (isFormat12Hour(timeFormat)) { + label = convert24To12HourFormat(time); } - _createClass$1(Calendar, [{ - key: "componentDidUpdate", - value: function componentDidUpdate(prevProps, prevState) { - var monthsInView = this.props.monthsInView; + if (showDuration && referenceTime) { + var _getTimeDifference = getTimeDifference(referenceTime, time), + hour = _getTimeDifference.hour, + minute = _getTimeDifference.minute; - if (prevProps.date !== this.props.date) { - var _getDateInfo7 = getDateInfo(this.props.date), - year = _getDateInfo7.year, - month = _getDateInfo7.month, - _date2 = _getDateInfo7.date; + var timeDiffLabel = " (".concat(hour, " hr ").concat(minute, " min)"); + label += timeDiffLabel; + } - this.updateState(year, month, _date2); - var d = convertToDate(this.props.date); - this.setState({ - currDate: d - }); - } + return label; +}; - if (prevProps.startDate !== this.props.startDate) { - var _d = convertToDate(this.props.startDate); +var isOptionDisabled = function isOptionDisabled(time, timeFormat, disabledSlotList) { + var timeValue = time; - this.setState({ - startDate: _d - }); - } + if (isFormat12Hour(timeFormat)) { + timeValue = convert24To12HourFormat(time); + } - if (prevProps.endDate !== this.props.endDate) { - var _d2 = convertToDate(this.props.endDate); + if (disabledSlotList.includes(timeValue)) { + return true; + } - this.setState({ - endDate: _d2 - }); - } + return false; +}; - if (prevProps.view !== this.props.view) { - if (this.props.monthsInView === 1) { - this.setState({ - view: this.props.view - }); - } - } +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; +}; - if (prevProps.yearNav !== this.props.yearNav) { - var yearNav = this.props.yearNav; +var computeEndTime = function computeEndTime(startTime) { + return startTime ? '' : '23:59'; +}; - if (yearNav) { - this.setState({ - yearNav: yearNav, - yearBlockNav: getYearBlock(yearNav) - }); - } - } +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; +}; - if (prevProps.monthNav !== this.props.monthNav) { - var monthNav = this.props.monthNav; +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; +}; - if (monthNav) { - this.setState({ - monthNav: monthNav - }); - } - } +var get24HourCurrentTime = function get24HourCurrentTime() { + var today = new Date(); + return convertToTwoDigit(today.getHours()) + ':' + convertToTwoDigit(today.getMinutes()); +}; - 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; +var convertHourTo24 = function convertHourTo24(time) { + var timeInNum = parseInt(time, 10) % 24; + return timeInNum.toString(); +}; - if (currDate) { - if (onDateChange) onDateChange(currDate); +var convertHourTo12 = function convertHourTo12(time) { + var timeInNum = parseInt(time, 10) % 12; + return timeInNum.toString(); +}; - if (rangePicker) { - this.setState({ - hoverDate: undefined - }); +var _checkNumber = function _checkNumber(str) { + var numberRegex = /^[0-9]+$/; + return numberRegex.test(str); +}; - if (_startDate3 && _endDate3) { - this.setState({ - startDate: currDate, - endDate: undefined - }); - } else { - var _getDateInfo8 = getDateInfo(currDate), - _year2 = _getDateInfo8.year, - _month2 = _getDateInfo8.month, - _date3 = _getDateInfo8.date; +var _checkNumberWithAMPM = function _checkNumberWithAMPM(str) { + var numberWithAMPMRegex = /^[0-9]+[ AaMmPp]+$/; + return numberWithAMPMRegex.test(str); +}; - 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 - }); - } - } - } +var _checkNumberWithSpecialChar = function _checkNumberWithSpecialChar(str) { + var numberWithSpecialCharRegex = /^[0-9]+[`\s!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?~][0-9]*$/; + return numberWithSpecialCharRegex.test(str); +}; - 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); - } +var _checkNumberWithSpecialCharAMPM = function _checkNumberWithSpecialCharAMPM(str) { + var numberWithSpecialCharAMPM = /^[0-9]+[`\s!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?~][0-9]+[ AaMmPp]+$/; + return numberWithSpecialCharAMPM.test(str); +}; - if (prevState.year !== this.state.year) { - var _year3 = this.state.year; +var specialCharRegex = /[`\s!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?~]/; +/** + * @param searchTime in [number special-char number] format + * @returns timeObj with hour & minute in 24 hour format + */ - if (_year3 !== undefined && monthsInView === 1) { - this.setState({ - year: _year3, - yearBlockNav: getYearBlock(_year3), - yearNav: _year3 - }); - } - } +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 (prevState.month !== this.state.month) { - var _month3 = this.state.month; - if (_month3 !== undefined && monthsInView === 1) { - this.setState({ - monthNav: _month3 - }); - } +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'; + + switch (searchLen) { + case 1: + // if search term length is 1 consider it as hour + hh = '0' + searchTerm; + break; + + 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'; } - } - }, { - key: "render", - value: function render() { - var _this2 = this; - 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); - })); - } - }]); + break; - return Calendar; -}(React.Component); + case 3: + hh = '0' + searchTerm[0]; + mm = convertMinTo60(searchTerm.slice(1)); + break; -_defineProperty$2(Calendar, "defaultProps", { - size: 'large', - monthsInView: 1, - view: 'date', - firstDayOfWeek: 'sunday', - jumpView: true -}); + case 4: + hh = show12HourFormat ? convertHourTo12(firstTwoTerm) : convertHourTo24(firstTwoTerm); + mm = convertMinTo60(searchTerm.slice(2)); + break; -var _excluded$t = ["shadow", "children", "className"]; -var Card = /*#__PURE__*/React.forwardRef(function (props, ref) { - var _classNames; + default: + // set time as -1 in case of invalid time + hh = '-1'; + mm = '-1'; + } - 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 { + hour: hh, + min: mm + }; +}; +/** + * @param searchTime in [number AMPM] format + * @returns timeObj with hour & minute in 24 hour format + */ - 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 getTimeFromNumberWithAMPM = function getTimeFromNumberWithAMPM(searchTime) { + var timeArr = searchTime.split(/[\saAmMpP]/); - 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'; + var _getSearchTimeFromNum = getSearchTimeFromNumber(timeArr[0], true), + hour = _getSearchTimeFromNum.hour, + min = _getSearchTimeFromNum.min; -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 { + hour: hour, + min: min + }; }; -CardHeader.displayName = 'CardHeader'; +/** + * @param searchTerm entered by user in any format + * @returns modified search term in 24 hour format + */ -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 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 -}; +var formatSearchTerm = function formatSearchTerm(optionList, searchTerm) { + var searchTime = { + hour: '00', + min: '00' + }; // If search term only contains numbers -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 (_checkNumber(searchTerm)) { + var searchTimeInHHMM = getSearchTimeFromNumber(searchTerm); - var iconClass = function iconClass(align) { - var _classNames; + 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; + } + } // if search term contains numbers, special character & [AmPm] + else if (_checkNumberWithSpecialCharAMPM(searchTerm)) { + var timeWithoutAMPM = searchTerm.replace(/[\saApPmM]/g, ''); - 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)); - }; + if (_checkNumber(timeWithoutAMPM)) { + searchTime = getSearchTimeFromNumber(timeWithoutAMPM, true); + } else if (_checkNumberWithSpecialChar(timeWithoutAMPM)) { + searchTime = getTimeFromNumberWithSpecialChar(timeWithoutAMPM); + } - var onCloseHandler = function onCloseHandler(e) { - e.stopPropagation(); - if (onClose) onClose(); - }; + searchTime.hour = convert12To24HourFormat(searchTime.hour, searchTerm); + } - var onClickHandler = function onClickHandler() { - if (onClick) onClick(); - }; + return searchTime; +}; +/** + * @param hours + * @param searchTerm + * @returns hours based on AM/PM in 24 hour format + */ - 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 convert12To24HourFormat = function convert12To24HourFormat(hours, searchTerm) { + if (hours === '12' && _isTimeInAM(searchTerm)) { + hours = '00'; + } else if (_isTimeInPM(searchTerm) && hours !== '12') { + hours = (parseInt(hours, 10) + 12).toString(); + } + + return hours; }; -GenericChip.displayName = 'GenericChip'; +/** + * Switch to AM/PM time based on current time + * @param optionList + * @param searchTime + */ -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); +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 onCloseHandler = function onCloseHandler() { - if (!disabled && onClose) onClose(name); - }; + if (greaterTime && currentTimeIndex > searchTimeIndex) { + var hourIn24Format = parseInt(searchTime.hour, 10) + 12; + searchTime.hour = hourIn24Format.toString(); + } - var onClickHandler = function onClickHandler() { - if (!disabled && onClick) onClick(name); + return searchTime; +}; + +var findClosestTimeIndex = function findClosestTimeIndex(optionList, searchItem) { + var closestItemIndex = 0; + var minTime = { + hour: 100, + mins: 100 }; - 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 - })); -}; -Chip.displayName = 'Chip'; -Chip.defaultProps = { - type: 'input' + for (var index = 0; index < optionList.length; index++) { + var _getTimeDifference = getTimeDifference(searchItem, optionList[index]), + hour = _getTimeDifference.hour, + minute = _getTimeDifference.minute; + + if (hour < minTime.hour || hour === minTime.hour && minute < minTime.mins) { + minTime.hour = hour; + minTime.mins = minute; + closestItemIndex = index; + } + } + + return closestItemIndex; }; +/** + * Get index of search term from option list + * @param optionList + * @param searchTerm + * @returns Index of the search term in option list + */ -var ChipGroup = function ChipGroup(props) { - var list = props.list, - onClick = props.onClick, - onClose = props.onClose, - className = props.className; - var baseProps = extractBaseProps(props); - var onClickHandler = function onClickHandler(item) { - if (onClick) onClick(item); - }; +var getSearchIndex = function getSearchIndex(optionList, searchTerm) { + var _formatSearchTerm = formatSearchTerm(optionList, searchTerm), + hour = _formatSearchTerm.hour, + min = _formatSearchTerm.min; - var onCloseHandler = function onCloseHandler(item) { - if (onClose) onClose(item); - }; + if (min === '60') { + min = '00'; + hour = (parseInt(hour, 10) + 1).toString(); + } - 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); - } - })); - })); + var searchItem = "".concat(hour, ":").concat(min); + var searchIndex = findClosestTimeIndex(optionList, searchItem); + return searchIndex; }; -ChipGroup.displayName = 'ChipGroup'; - -var _excluded$r = ["size", "sizeXS", "sizeS", "sizeM", "sizeL", "sizeXL", "className", "children"]; -var Column = /*#__PURE__*/React.forwardRef(function (props, ref) { - var _classNames; +/** + * @param searchTerm + * @returns count number of digits present inside search term + */ - 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 countNumberInStr = function countNumberInStr(searchTerm) { + var _searchTerm$match; - 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'; + return ((_searchTerm$match = searchTerm.match(/\d/g)) === null || _searchTerm$match === void 0 ? void 0 : _searchTerm$match.length) || 0; +}; -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; +var isValidSearchTerm = function isValidSearchTerm(searchTerm) { + var totalDigit = countNumberInStr(searchTerm); + return totalDigit > 0 && totalDigit < 5; +}; - var onChangeHandler = function onChangeHandler(_e, val) { - setState({ - open: true - }); +var getValueFromOptionList = function getValueFromOptionList(optionList) { + var list = optionList.map(function (option) { + return option.value; + }); + return list; +}; - if (val && !val.includes(placeholderChar)) { - var d = translateToDate(inputFormat, val, validators); - setState({ - date: d - }); - } - }; +var getSearchValueIndex = function getSearchValueIndex(options, searchTerm) { + // Search Term is valid if it contains number + if (!isValidSearchTerm(searchTerm)) { + return -1; + } - var onBlurHandler = function onBlurHandler(_e, val) { - setState({ - init: true - }); + var searchIndex = getSearchIndex(options, searchTerm); + return searchIndex; +}; - if (!val || val.includes(placeholderChar)) { - setState({ - date: undefined - }); - } - }; +var getScrollIndex = function getScrollIndex(dropdownOptionList, searchTerm) { + var optionList = getValueFromOptionList(dropdownOptionList); - var onClearHandler = function onClearHandler() { - setState({ - init: true, - date: undefined - }); - }; + if (searchTerm === '') { + // return current time index + var currTime = get24HourCurrentTime(); + var currTimeIndex = findClosestTimeIndex(optionList, currTime); + return currTimeIndex; + } - var showError = inputOptions.error || inputOptions.required && error && init; - var errorMessage = inputOptions.caption === undefined ? 'Invalid value' : inputOptions.caption; + return getSearchValueIndex(optionList, searchTerm); +}; - var inputValidator = function inputValidator(val) { - return isValid(validators, val, inputFormat); - }; +var getSearchedOptions = function getSearchedOptions(options, searchTerm) { + var result = options.filter(function (option) { + return option.label.toLowerCase().includes(searchTerm.toLowerCase()); + }); + return result; +}; - 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 sortList = function sortList(arr) { + return arr.sort(function (a, b) { + return a.value > b.value ? 1 : b.value > a.value ? -1 : 0; + }); }; -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 _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 _super = _createSuper$1(DatePicker); + 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 + }; // + } - function DatePicker(props) { - var _this; + var indeterminate = selected.length > 0 && selected.length !== optionsLength; + var checked = selected.length > 0 && selected.length === optionsLength; + var obj = { + checked: checked, + indeterminate: indeterminate + }; + return obj; + } - _classCallCheck$1(this, DatePicker); + return { + indeterminate: false, + checked: false + }; +}; +var scrollToOptionIndex = function scrollToOptionIndex(scrollIndex, listOptions) { + var _listOptions$scrollIn; - _this = _super.call(this, props); + 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 || ''; - _defineProperty$2(_assertThisInitialized$2(_this), "getError", function (date) { - var _this$props = _this.props, - disabledBefore = _this$props.disabledBefore, - disabledAfter = _this$props.disabledAfter; + if (!acc[group]) { + acc[group] = []; + } - var _getDateInfo = getDateInfo(disabledBefore), - dbYear = _getDateInfo.year, - dbMonth = _getDateInfo.month, - dbDate = _getDateInfo.date; - - 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 - }); - }); + acc[group].push(option); + return acc; + }, {}); + var flattenedGroupList = Object.values(groupList).flatMap(function (item) { + return _toConsumableArray(item); + }); + return flattenedGroupList; +}; - _defineProperty$2(_assertThisInitialized$2(_this), "onToggleHandler", function (o, type) { - switch (type) { - case 'outsideClick': - _this.setState({ - open: o - }); +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; - break; + var _React$useState = React.useState(0), + _React$useState2 = _slicedToArray(_React$useState, 2), + tabIndex = _React$useState2[0], + setTabIndex = _React$useState2[1]; - case 'onClick': - _this.setState({ - open: true - }); + var _React$useState3 = React.useState(false), + _React$useState4 = _slicedToArray(_React$useState3, 2), + openPopover = _React$useState4[0], + setOpenPopover = _React$useState4[1]; - break; - } - }); + var _React$useState5 = React.useState(-1), + _React$useState6 = _slicedToArray(_React$useState5, 2), + selectedIndex = _React$useState6[0], + setSelectedIndex = _React$useState6[1]; - var inputFormat = props.inputFormat, - validators = props.validators; + var _React$useState7 = React.useState(0), + _React$useState8 = _slicedToArray(_React$useState7, 2), + counter = _React$useState8[0], + setCounter = _React$useState8[1]; - var _date = convertToDate(props.date, inputFormat, validators); + var dropdownOptionList = getDropdownOptionList(props); + React.useEffect(function () { + open !== undefined && setOpenPopover(open); + }, [open]); + React.useEffect(function () { + var timer; - var error = _this.getError(_date); + if (openPopover && selectedIndex != -1) { + setTabIndex(selectedIndex); + timer = setTimeout(function () { + scrollToOptionIndex(selectedIndex, dropdownOptionList); + }, 100); + } - _this.state = { - date: _date, - error: error, - init: false, - open: props.open || false + return function () { + clearTimeout(timer); }; - 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 - }); - } + }, [openPopover]); // Required to re-render dropdown forcefully whenever props changes - if (prevProps.open !== this.props.open) { - this.setState({ - open: this.props.open || false - }); - } + React.useEffect(function () { + setCounter(counter + 1); + }, [startTime, endTime, interval, showDuration, disabledSlotList]); - 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 - }); + var onChangeHandler = function onChangeHandler(props) { + var time = props; - if (onDateChange) { - if (!newError) { - var dVal = translateToString(outputFormat, _date2); - onDateChange(_date2, dVal); - } else { - onDateChange(undefined, ''); - } - } - } + if (isFormat12Hour(timeFormat)) { + time = convert24To12HourFormat(time); } - }, { - 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 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 - })); - } - }, { - 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; + var selectIndex = dropdownOptionList.findIndex(function (option) { + return option.value === props; + }); + setSelectedIndex(selectIndex); + onChange && onChange(time); + }; - 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()); - } + var getOptionList = function getOptionList(searchTerm) { + var scrollIndex; + var indexValue = getScrollIndex(dropdownOptionList, searchTerm); - return this.renderCalendar(); + if (searchTerm === '' && selectedIndex != -1) { + scrollIndex = selectedIndex; + setTabIndex(selectedIndex); + } else { + scrollIndex = indexValue; + setTabIndex(indexValue); } - }]); - return DatePicker; -}(React.Component); + return Promise.resolve({ + options: indexValue === -1 ? [] : dropdownOptionList, + count: dropdownOptionList.length, + scrollToIndex: scrollIndex === 0 ? scrollIndex + 1 : scrollIndex, + searchTerm: searchTerm + }); + }; -_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 -})); + var fetchOptionList = function fetchOptionList() { + return fetchTimeOptions ? fetchTimeOptions : getOptionList; + }; -var TimePicker = function TimePicker(props) { + 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 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,22036 @@ 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); - - 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); + function clearExistingTimeout() { + if (timeoutID) { + clearTimeout(timeoutID); } - }, /*#__PURE__*/React.createElement(Icon, { - name: 'close', - size: sizeMapping$1[size] - }))); -}); -Input.displayName = 'Input'; + } // Function to cancel next exec -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); -}; + function cancel() { + clearExistingTimeout(); + cancelled = true; + } // `noTrailing` defaults to falsy. -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) - */ + 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 MetricInput = /*#__PURE__*/React.forwardRef(function (props, forwardedRef) { - var _classNames, _classNames2, _classNames3; - 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); + function wrapper() { + for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) { + arguments_[_key] = arguments[_key]; + } - var ref = React.useRef(null); - var isUncontrolled = valueProp === undefined; + var self = this; + var elapsed = Date.now() - lastExec; - var _React$useState = React.useState(valueProp || defaultValue), - _React$useState2 = _slicedToArray(_React$useState, 2), - value = _React$useState2[0], - setValue = _React$useState2[1]; + if (cancelled) { + return; + } // Execute `callback` and update the `lastExec` timestamp. - 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 exec() { + lastExec = Date.now(); + callback.apply(self, arguments_); } - }, [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` is true (at begin) this is used to clear the flag + * to allow future `callback` executions. + */ - 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)); - }; - var onChangeHandler = function onChangeHandler(e) { - if (isUncontrolled) { - setValue(e.target.value); + function clear() { + timeoutID = undefined; } - if (onChange) onChange(e); - }; + if (debounceMode && !timeoutID) { + /* + * Since `wrapper` is being called for the first time and + * `debounceMode` is true (at begin), execute `callback`. + */ + exec(); + } - 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); + clearExistingTimeout(); - if (onChange) { - var syntheticEvent = Object.create(e, { - target: { - value: newValue - } - }); - onChange(syntheticEvent); + 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 onKeyDown = function onKeyDown(e) { - switch (e.key) { - case 'e': - case 'E': - e.preventDefault(); - return; + wrapper.cancel = cancel; // Return the wrapper function. - case 'ArrowDown': - e.preventDefault(); - onArrowClick(e, 'down'); - return; + return wrapper; +} - case 'ArrowUp': - e.preventDefault(); - onArrowClick(e, 'up'); - 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. + */ - var iconSize = size === 'regular' ? 12 : 16; - return /*#__PURE__*/React.createElement("div", { - "data-test": "DesignSystem-MetricInputWrapper", - className: classes, - onClick: function onClick() { - var _ref$current2; +function debounce$1 (delay, atBegin, callback) { + return callback === undefined ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false); +} - 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 _excluded$M = ["triggerSize", "placeholder", "menu", "children", "icon", "disabled", "open", "inlineLabel", "error", "iconType"]; +var DropdownButton = /*#__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, + 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$M); + + 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 onUpdateActiveOption = function onUpdateActiveOption() { + if (disabled) return; + if (updateActiveOption) updateActiveOption(index); }; - var getSelectionLength = function getSelectionLength(val) { - return Math.abs(val.end - val.start); + var onClickHandler = function onClickHandler(e) { + e.stopPropagation(); + if (disabled) return; + if (onClick) onClick(); }; - var isEditable = function isEditable(pos) { - return _typeof(mask[pos]) === 'object'; + var onChangeHandler = function onChangeHandler(e) { + e.stopPropagation(); + if (disabled) return; + if (onChange) onChange(e); }; - 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 _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; - } + 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 + }); +}; - var m = mask[index]; +var PlaceholderParagraph = function PlaceholderParagraph(props) { + var _classNames2; - if (isEditable(index)) { - if (currValue[iterator].match(m)) { - newValue += currValue[iterator]; - } else { - newValue += placeholderChar; - } + 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' +}; - newIterator++; - } else { - newValue += m; - } +var PlaceholderImage = function PlaceholderImage(props) { + var _classNames; - newValue += insertAtIndex(currValue, newIndex, newIterator); - return newValue; - }; + 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' +}; - 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 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' +}; - if (currSelection.end > selection.end) { - removedLength = insertedStringLength ? getSelectionLength(selection) : 0; - } else if (inputVal.length < value.length) { - removedLength = value.length - inputVal.length; - } +var Loading = function Loading(props) { + var loadingType = props.loadingType, + optionIndex = props.optionIndex; + var placeholderSizes = ['medium', 'large']; + var size = placeholderSizes[(optionIndex + 2) % 2]; - cursorPosition += insertedStringLength; - var maskedVal = value.split(''); + switch (loadingType) { + case 'DEFAULT': + return /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: size, + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + }); - for (var i = 0; i < insertedStringLength; i++) { - maskedVal[start + i] = updatedVal[i]; - } + case 'WITH_ICON': + return /*#__PURE__*/React.createElement(Placeholder, { + withImage: true, + round: true, + "data-test": "DesignSystem-Dropdown--Placeholder" + }, /*#__PURE__*/React.createElement(PlaceholderParagraph, { + length: "large" + })); - for (var _i2 = 0; _i2 < removedLength; _i2++) { - var index = start + insertedStringLength + _i2; - maskedVal[index] = getPlaceholderValue(index, index); - } + 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 newCursorPosition = getNewCursorPosition(removedLength ? 'left' : 'right', cursorPosition); + case 'WITH_CHECKBOX': + return /*#__PURE__*/React.createElement(Placeholder, { + withImage: 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 '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 newValue = maskedVal.slice(0, mask.length).join(''); - window.requestAnimationFrame(function () { - return setCursorPosition(cursorPosition); - }); + return null; +}; - if (isValid(validators, newValue)) { - setValue(newValue); - if (onChange) onChange(e, newValue); +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"))); +}; - var onBlurHandler = function onBlurHandler(e) { - var inputVal = e.currentTarget.value; +var alignmentMapping = { + right: 'bottom-start', + left: 'bottom-end' +}; - if (clearOnEmptyBlur) { - if (inputVal === getPlaceholderValue()) { - setValue(''); - inputVal = ''; - } - } +var DropdownList = function DropdownList(props) { + var _classNames3, _classNames4; - if (onBlur) onBlur(e, inputVal); - if (deferId.current) window.cancelAnimationFrame(deferId.current); - }; + 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 onClearHandler = function onClearHandler(e) { - // setValue(''); - // window.requestAnimationFrame(() => ref.current!.blur()); - setValue(getPlaceholderValue()); - window.requestAnimationFrame(function () { - return setCursorPosition(getDefaultSelection().start); - }); - if (onClear) onClear(e); - }; + var _React$useState = React.useState(), + _React$useState2 = _slicedToArray(_React$useState, 2), + popoverStyle = _React$useState2[0], + setPopoverStyle = _React$useState2[1]; - var onFocusHandler = function onFocusHandler(e) { - deferId.current = window.requestAnimationFrame(updateSelection); + var _React$useState3 = React.useState(firstEnabledOption), + _React$useState4 = _slicedToArray(_React$useState3, 2), + cursor = _React$useState4[0], + setCursor = _React$useState4[1]; - if (!value) { - setValue(getPlaceholderValue()); - window.requestAnimationFrame(function () { - return setSelectionPos(getDefaultSelection()); - }); - } + var _React$useState5 = React.useState(), + _React$useState6 = _slicedToArray(_React$useState5, 2), + minHeight = _React$useState6[0], + setMinHeight = _React$useState6[1]; - if (onFocus) onFocus(e); + 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$L = ["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; + 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; - if (_this.handleElement == null) { - return value; - } + if (res.scrollToIndex) { + setTimeout(function () { + scrollToOptionIndex(res.scrollToIndex, options); + }, 0); + } - var clientPixelNormalized = clientPixel; + if (!res.searchTerm || res.searchTerm && res.searchTerm === _this.state.searchTerm) { + var _inputRef$current; - var _this$getHandleMidpoi = _this.getHandleMidpointAndOffset(_this.handleElement), - handleMidpoint = _this$getHandleMidpoi.handleMidpoint, - handleOffset = _this$getHandleMidpoi.handleOffset; + 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 handleCenterPixel = handleMidpoint + handleOffset; - var pixelDelta = clientPixelNormalized - handleCenterPixel; + var disabledOptions = _this.getDisabledOptions(unSelectedGroup.slice(0, _this.staticLimit)); - if (isNaN(pixelDelta)) { - return value; - } + var errorResult = errorType; - return value + Math.round(pixelDelta / (tickSize * stepSize)) * stepSize; - }); + if (optionsLength === 0 && searchTerm === '') { + errorResult = 'DEFAULT'; + } else if (searchTerm !== '') { + errorResult = 'NO_RECORDS_FOUND'; + } else { + errorResult = 'FAILED_TO_FETCH'; + } - _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); + _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 + })); - if (!isNaN(updatedValue) && _this.props.value !== updatedValue) { - if (callback) callback(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: [] + }); + }); + }); - return updatedValue; + _defineProperty$1(_assertThisInitialized$1(_this), "updateSearchTerm", function (search) { + _this.setState(_objectSpread2(_objectSpread2({}, _this.state), {}, { + loading: true, + searchInit: true, + searchTerm: search, + errorType: 'NO_RECORDS_FOUND' + })); }); - _defineProperty$2(_assertThisInitialized$2(_this), "endHandleMovement", function (event) { - var clientPixel = _this.mouseEventClientOffset(event); + _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; - var onRelease = _this.props.onRelease; + var disabledOptionsCount = _this.getDisabledOptions(options).length; - _this.removeDocumentEventListeners(); + if (withCheckbox && showApplyButton) { + var temporarySelected = _isControlled(_this.props.selected) ? selected : previousSelected; - _this.setState({ - isHandleMoving: false - }); + _this.setState({ + tempSelected: temporarySelected, + selectAll: getSelectAll$1(temporarySelected, optionsLength, disabledOptionsCount), + triggerLabel: _this.updateTriggerLabel(temporarySelected) + }); + } - var finalValue = _this.changeValue(_this.clientToValue(clientPixel)); + if (_isOpenControlled(_this.props.open)) { + _this.setState({ + open: popperIsOpen + }); + } - if (onRelease) onRelease(finalValue); + 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(); - _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; + if (onChange && (!showApplyButton || isControlled)) { + var values = selectedArray.map(function (item) { + return item.value; + }); + var selectedValues = isSingleSelect ? values[0] : values; + onChange(selectedValues, name); + } - if (which === ARROW_LEFT) { - _this.changeValue(value - stepSize); + if (!withCheckbox && closeOnSelect && onPopperToggle && _isOpenControlled(_this.props.open)) { + onPopperToggle(false, 'optionClick'); + } + }); - event.preventDefault(); - } else if (which === ARROW_RIGHT) { - _this.changeValue(value + stepSize); + _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 + })); - event.preventDefault(); + if (!withCheckbox && closeOnSelect && onPopperToggle && _isOpenControlled(open)) { + onPopperToggle(false, 'optionClick'); + } + + return false; } + + return true; }); - _defineProperty$2(_assertThisInitialized$2(_this), "handleKeyUp", function (event) { - if (_this.props.disabled) return; + _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 ([ARROW_LEFT, ARROW_RIGHT].indexOf(event.which) >= 0) { - var onRelease = _this.props.onRelease; - if (onRelease) onRelease(_this.props.value); + 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), "getHandleMidpointAndOffset", function (handleElement) { - var useOppositeDimension = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + _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 (handleElement == null) { - return { - handleMidpoint: 0, - handleOffset: 0 - }; + if (_isControlled(selected) && !showApplyButton) { + if (onUpdate) onUpdate(checked ? 'select-option' : 'deselect-option', option); + return; } - var handleRect = handleElement.getBoundingClientRect(); - var sizeKey = useOppositeDimension ? 'height' : 'width'; - var handleOffset = handleRect.left; - return { - handleOffset: handleOffset, - handleMidpoint: handleRect[sizeKey] / 2 - }; + 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), "handleMouseOver", function () { - _this.setState({ - isHandleHovered: true + _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 (_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 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), "handleMouseLeave", function () { + _defineProperty$1(_assertThisInitialized$1(_this), "debounceSearch", debounce$1(_this.props.searchDebounceDuration, function () { _this.setState({ - isHandleHovered: false + searchInit: false + }, 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), "reload", function () { + _this.setState({ + loading: true + }, function () { + _this.updateOptions(false); + }); }); - return _this; - } - - _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(); - } - } - }, { - 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; + _defineProperty$1(_assertThisInitialized$1(_this), "debounceClear", debounce$1(250, function () { + return _this.updateOptions(false); + })); - _classCallCheck$1(this, MultiSlider); + _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; + }); - _this = _super.call(this, _props); + if (_isControlled(selected) && !showApplyButton) { + if (onUpdate) onUpdate('clear-all'); + return; + } - _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 _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 handleProps = _this.getHandleValues(_this.props); + _this.staticLimit = Math.min(100, props.staticLimit); - var oldValues = handleProps.map(function (handle) { - return handle.value; - }); + var _optionsLength = _totalOptions ? _totalOptions : _options.length; - var newValues = _this.getNewHandleValues(newValue, index); + var _async = 'fetchOptions' in _this.props || _optionsLength > _this.staticLimit; - if (!arraysEqual(newValues, oldValues)) { - // Range Slider Callback - if (onRangeChange) { - var range = newValues; - onRangeChange(range); - } // Slider callback + var _selectedGroup = !_async ? _this.getSelectedOptions(_options, true) : []; + var _disabledOptions = _this.getDisabledOptions(_options); - handleProps.forEach(function (handle, i) { - if (handle.onChange) handle.onChange(newValues[i]); - }); - } - }); - - _defineProperty$2(_assertThisInitialized$2(_this), "formatLabel", function (value) { - var labelRenderer = _this.props.labelRenderer; + _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; + } - if (typeof labelRenderer === 'function') { - return labelRenderer(value); - } + _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; - return value.toFixed(_this.state.labelPrecision); - }); + var disabledOptionsCount = this.getDisabledOptions(_options2).length; - _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; + if (prevProps.loading !== loading && !fetchOptions) { + if (_options2.length > this.staticLimit) { + this.updateOptions(true, true); + } else { + var _inputRef$current2; - var handleProps = _this.getHandleValues(_this.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(); + } + } + } - if (handleProps.length === 0) { - 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); } - 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 (prevState.searchTerm !== this.state.searchTerm) { + this.debounceSearch(); + } - _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 (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 handles = _this.getHandleValues(_this.props); + 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$L); - var activeLabels = handles.map(function (handle) { - return handle.value.toFixed(_this.state.labelPrecision); + 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 _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 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$K = ["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$K); - 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$J = ["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$J); - 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$I = ["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$I); - _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$H = ["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$H); - 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 _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]; + var onArrowClick = function onArrowClick(e, direction) { + var _newValue$toString$sp; - 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$G = ["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); + id = props.id, + helpText = props.helpText, + rest = _objectWithoutProperties(props, _excluded$G); - 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'; + 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 ActionButton = function ActionButton(props) { - var _classNames; + return mask.length; + } - 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)); + if (type === 'left') { + for (var _i = position; _i >= 0; _i--) { + if (isEditable(_i - 1)) return _i; + } - var onClickHandler = function onClickHandler(e) { - e.preventDefault(); - if (onClick) onClick(e); - }; + return 0; + } - return /*#__PURE__*/React.createElement("button", { - className: buttonClass, - onClick: onClickHandler - }, /*#__PURE__*/React.createElement(Text, { - appearance: "white" - }, label)); -}; - -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 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); + el.setSelectionRange(start, end); + } + }, [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; - 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 (index >= mask.length) { + return newValue; + } - 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 (iterator >= currValue.length) { + selectionPos.current = { + start: index, + end: index + }; + return newValue; + } - var onCloseHandler = function onCloseHandler() { - if (onClose) onClose(); - }; + var m = mask[index]; - 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' -}; + if (isEditable(index)) { + if (currValue[iterator].match(m)) { + newValue += currValue[iterator]; + } else { + newValue += placeholderChar; + } -var objectWithoutPropertiesLoose = createCommonjsModule(function (module) { -function _objectWithoutPropertiesLoose(source, excluded) { - if (source == null) return {}; - var target = {}; - var sourceKeys = Object.keys(source); - var key, i; + newIterator++; + } else { + newValue += m; + } - for (i = 0; i < sourceKeys.length; i++) { - key = sourceKeys[i]; - if (excluded.indexOf(key) >= 0) continue; - target[key] = source[key]; - } + 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]); - return target; -} + var matchSeparatorValue = function matchSeparatorValue(currValue) { + var separator = props.placeholder || 'dd/mm/yyyy'; -module.exports = _objectWithoutPropertiesLoose; -module.exports["default"] = module.exports, module.exports.__esModule = true; -}); + if (separator.substring(0, 4) === 'yyyy') { + return currValue && currValue[4] === separator[4] && currValue[7] === separator[7]; + } -var _objectWithoutPropertiesLoose$1 = unwrapExports(objectWithoutPropertiesLoose); + return currValue && currValue[2] === separator[2] && currValue[5] === separator[5]; + }; -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]; + var isSameFormat = function isSameFormat(currValue, inputLength) { + var value = currValue.substring(0, inputLength); - for (var key in source) { - if (Object.prototype.hasOwnProperty.call(source, key)) { - target[key] = source[key]; - } - } + 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; + if (clearOnEmptyBlur) { + if (inputVal === defaultPlaceholderValue) { + setValue(''); + inputVal = ''; + } + } -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; - } - }; + 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); - 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 (!value) { + newSelectionPos.current = defaultSelection.start; + setValue(getPlaceholderValue()); + } - if (!isObject && !isFunction && !isArguments) { - throw new TypeError('Object.keys called on a non-object'); - } + 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 - 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)); - } - } +InputMask.utils = { + getDefaultValue: getDefaultValue +}; +var X = InputMask; - 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)); - } - } - } +var _excluded$F = ["required", "optional", "withInput", "disabled", "children", "className", "info"]; - if (hasDontEnumBug) { - var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object); +/** + * *NOTE: Extends props with HTMLProps* + */ +var Label = function Label(props) { + var _classNames; - 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 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$F); -var slice$1 = Array.prototype.slice; + 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 renderInfo = function renderInfo() { + var isRequired = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; + var isOptional = arguments.length > 1 ? arguments[1] : undefined; -var origKeys = Object.keys; -var keysShim = origKeys ? function keys(o) { return origKeys(o); } : implementation$4; + if (isRequired) { + return /*#__PURE__*/React.createElement("span", { + className: "Label-requiredIndicator", + "data-test": "DesignSystem-Label--RequiredIndicator" + }); + } -var originalKeys = Object.keys; + if (isOptional) { + return /*#__PURE__*/React.createElement(Text, { + "data-test": "DesignSystem-Label--OptionalText", + appearance: "subtle", + className: "Label-optionalText" + }, "(optional)"); + } -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; -}; + return null; + }; -var objectKeys = keysShim; + 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" + })); + }; -/* 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; } + 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 obj = {}; - var sym = Symbol('test'); - var symObj = Object(sym); - if (typeof sym === 'string') { return false; } +var Caption = function Caption(props) { + var _classNames; - if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; } - if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; } + 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'; - // 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 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 - // if (typeof Symbol.prototype.toString !== 'function') { return false; } - // if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; } + /* eslint-disable */ - 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; } + 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); + } + }), /*#__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 +}; - if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; } +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'; - var syms = Object.getOwnPropertySymbols(obj); - if (syms.length !== 1 || syms[0] !== sym) { return false; } +var _excluded$E = ["onChange", "onClose"]; +var EditableDropdown = function EditableDropdown(props) { + var _classNames2; - if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; } + var placeholder = props.placeholder, + dropdownOptions = props.dropdownOptions, + className = props.className, + customTriggerRenderer = props.customTriggerRenderer; - if (typeof Object.getOwnPropertyDescriptor === 'function') { - var descriptor = Object.getOwnPropertyDescriptor(obj, sym); - if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; } - } + var onDropdownChange = dropdownOptions.onChange, + onDropdownClose = dropdownOptions.onClose, + rest = _objectWithoutProperties(dropdownOptions, _excluded$E); - return true; -}; + var _React$useState = React.useState(placeholder), + _React$useState2 = _slicedToArray(_React$useState, 2), + label = _React$useState2[0], + setLabel = _React$useState2[1]; -var origSymbol = typeof Symbol !== 'undefined' && Symbol; + var _React$useState3 = React.useState(false), + _React$useState4 = _slicedToArray(_React$useState3, 2), + editing = _React$useState4[0], + setEditing = _React$useState4[1]; + var _React$useState5 = React.useState(false), + _React$useState6 = _slicedToArray(_React$useState5, 2), + showComponent = _React$useState6[0], + setShowComponent = _React$useState6[1]; -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; } + 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); - return shams(); -}; + var getLabel = function getLabel(updatedLabel) { + setLabel(updatedLabel); + }; -/* eslint no-invalid-this: 1 */ + var onChangeHandler = function onChangeHandler(eventType) { + switch (eventType) { + case 'edit': + setEditing(true); + setShowComponent(true); + break; -var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible '; -var slice = Array.prototype.slice; -var toStr$2 = Object.prototype.toString; -var funcType = '[object Function]'; + case 'hover': + setShowComponent(true); + break; -var implementation$3 = function bind(that) { - var target = this; - if (typeof target !== 'function' || toStr$2.call(target) !== funcType) { - throw new TypeError(ERROR_MESSAGE + target); + case 'default': + setShowComponent(false); } - 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)) - ); - } - }; + }; - var boundLength = Math.max(0, target.length - args.length); - var boundArgs = []; - for (var i = 0; i < boundLength; i++) { - boundArgs.push('$' + i); - } + var onChange = function onChange(value) { + setEditing(false); + setShowComponent(false); + if (onDropdownChange) onDropdownChange(value); + }; - bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder); + var onClose = function onClose(selected) { + setEditing(false); + setShowComponent(false); + if (onDropdownClose) onDropdownClose(selected); + }; - if (target.prototype) { - var Empty = function Empty() {}; - Empty.prototype = target.prototype; - bound.prototype = new Empty(); - Empty.prototype = null; - } + var renderComponent = function renderComponent(componentLabel) { + if (customTriggerRenderer) return customTriggerRenderer(componentLabel); + return componentLabel; + }; - return bound; + 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 functionBind = Function.prototype.bind || implementation$3; - -var src = functionBind.call(Function.call, Object.prototype.hasOwnProperty); +var _excluded$D = ["children", "className", "appearance", "size", "disabled"]; +var Link = function Link(props) { + var _classNames; -var undefined$1; + var children = props.children, + className = props.className, + appearance = props.appearance, + size = props.size, + disabled = props.disabled, + rest = _objectWithoutProperties(props, _excluded$D); -var $SyntaxError = SyntaxError; -var $Function = Function; -var $TypeError$2 = TypeError; + 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); +}; +Link.displayName = 'Link'; +Link.defaultProps = { + appearance: 'default', + size: 'regular', + disabled: false +}; -// eslint-disable-next-line consistent-return -var getEvalledConstructor = function (expressionSyntax) { - try { - return $Function('"use strict"; return (' + expressionSyntax + ').constructor;')(); - } catch (e) {} +var IconMapping$2 = { + success: 'check_circle', + info: 'info', + warning: 'warning', + alert: 'error' }; +var Message = function Message(props) { + var _classNames, _classNames2, _classNames3, _classNames4; -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 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)); -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; - -var hasSymbols$2 = hasSymbols$3(); - -var getProto$1 = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto + 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 : '')); + } -var needsEval = {}; + if (children) { + return /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-Message--Description", + className: "Message-description" + }, children); + } -var TypedArray = typeof Uint8Array === 'undefined' ? undefined$1 : getProto$1(Uint8Array); + return null; + }; -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-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 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 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'; - INTRINSICS[name] = value; +var MetaList = function MetaList(props) { + var _classNames3; - return value; + 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" + })); + })); }; - -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'] +MetaList.displayName = 'MetaList'; +MetaList.defaultProps = { + seperatorAppearance: 'disabled', + iconAppearance: 'subtle', + labelAppearance: 'subtle', + size: 'regular' }; +/** + * Key codes are deprecated, soon major browser support will end. + */ +var ARROW_LEFT = 37; +var ARROW_RIGHT = 39; +var formatPercentage = function formatPercentage(ratio) { + return "".concat((ratio * 100).toFixed(2), "%"); +}; +var countDecimalPlaces = function countDecimalPlaces(value) { + if (!isFinite(value)) return 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); + if (Math.floor(value) !== value) { + var valueArray = value.toString().split('.'); + return valueArray[1].length || 0; + } -/* 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; + return 0; }; -/* end adaptation */ +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 getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) { - var intrinsicName = name; - var alias; - if (src(LEGACY_ALIASES, intrinsicName)) { - alias = LEGACY_ALIASES[intrinsicName]; - intrinsicName = '%' + alias[0] + '%'; - } + 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; + } - 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 minValue = values[0]; + var minArg = argFn(minValue); - return { - alias: alias, - name: intrinsicName, - value: value - }; - } + for (var index = 1; index < values.length; index++) { + var _value = values[index]; + var arg = argFn(_value); - throw new $SyntaxError('intrinsic ' + name + ' does not exist!'); -}; + if (arg < minArg) { + minValue = _value; + minArg = arg; + } + } -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 minValue; +} +function fillValues(values, startIndex, endIndex, fillValue) { + var inc = startIndex < endIndex ? 1 : -1; - var parts = stringToPath(name); - var intrinsicBaseName = parts.length > 0 ? parts[0] : ''; + for (var index = startIndex; index !== endIndex + inc; index += inc) { + values[index] = fillValue; + } +} +function isElementOfType(element) { + return element != null && element.type != null; +} - var intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing); - var intrinsicRealName = intrinsic.name; - var value = intrinsic.value; - var skipFurtherCaching = false; +var Handle = /*#__PURE__*/function (_React$Component) { + _inherits(Handle, _React$Component); - var alias = intrinsic.alias; - if (alias) { - intrinsicBaseName = alias[0]; - $spliceApply(parts, $concat([0, 1], alias)); - } + var _super = _createSuper(Handle); - 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; - } + function Handle() { + var _this; - intrinsicBaseName += '.' + part; - intrinsicRealName = '%' + intrinsicBaseName + '%'; + _classCallCheck(this, Handle); - 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; + for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } - // 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]; - } + _this = _super.call.apply(_super, [this].concat(args)); - if (isOwn && !skipFurtherCaching) { - INTRINSICS[intrinsicRealName] = value; - } - } - } - return value; -}; + _defineProperty$1(_assertThisInitialized$1(_this), "state", { + isHandleMoving: false, + isHandleHovered: false + }); -var callBind = createCommonjsModule(function (module) { + _defineProperty$1(_assertThisInitialized$1(_this), "handleElement", null); + _defineProperty$1(_assertThisInitialized$1(_this), "refHandlers", { + handle: function handle(el) { + return _this.handleElement = el; + } + }); + _defineProperty$1(_assertThisInitialized$1(_this), "mouseEventClientOffset", function (event) { + return event.clientX; + }); + _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; -var $apply = getIntrinsic('%Function.prototype.apply%'); -var $call = getIntrinsic('%Function.prototype.call%'); -var $reflectApply = getIntrinsic('%Reflect.apply%', true) || functionBind.call($call, $apply); + if (_this.handleElement == null) { + return value; + } -var $gOPD = getIntrinsic('%Object.getOwnPropertyDescriptor%', true); -var $defineProperty = getIntrinsic('%Object.defineProperty%', true); -var $max = getIntrinsic('%Math.max%'); + var clientPixelNormalized = clientPixel; -if ($defineProperty) { - try { - $defineProperty({}, 'a', { value: 1 }); - } catch (e) { - // IE 8 has a broken defineProperty - $defineProperty = null; - } -} + var _this$getHandleMidpoi = _this.getHandleMidpointAndOffset(_this.handleElement), + handleMidpoint = _this$getHandleMidpoi.handleMidpoint, + handleOffset = _this$getHandleMidpoi.handleOffset; -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 handleCenterPixel = handleMidpoint + handleOffset; + var pixelDelta = clientPixelNormalized - handleCenterPixel; -var applyBind = function applyBind() { - return $reflectApply(functionBind, $apply, arguments); -}; + if (isNaN(pixelDelta)) { + return value; + } -if ($defineProperty) { - $defineProperty(module.exports, 'apply', { value: applyBind }); -} else { - module.exports.apply = applyBind; -} -}); -callBind.apply; + return value + Math.round(pixelDelta / (tickSize * stepSize)) * stepSize; + }); -var $indexOf = callBind(getIntrinsic('String.prototype.indexOf')); + _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 callBound = function callBoundIntrinsic(name, allowMissing) { - var intrinsic = getIntrinsic(name, !!allowMissing); - if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) { - return callBind(intrinsic); - } - return intrinsic; -}; + if (!isNaN(updatedValue) && _this.props.value !== updatedValue) { + if (callback) callback(updatedValue); + } -var hasToStringTag$2 = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol'; + return updatedValue; + }); + _defineProperty$1(_assertThisInitialized$1(_this), "endHandleMovement", function (event) { + var clientPixel = _this.mouseEventClientOffset(event); -var $toString$1 = callBound('Object.prototype.toString'); + var onRelease = _this.props.onRelease; -var isStandardArguments = function isArguments(value) { - if (hasToStringTag$2 && value && typeof value === 'object' && Symbol.toStringTag in value) { - return false; - } - return $toString$1(value) === '[object Arguments]'; -}; + _this.removeDocumentEventListeners(); -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]'; -}; + _this.setState({ + isHandleMoving: false + }); -var supportsStandardArguments = (function () { - return isStandardArguments(arguments); -}()); + var finalValue = _this.changeValue(_this.clientToValue(clientPixel)); -isStandardArguments.isLegacyArguments = isLegacyArguments; // for tests + if (onRelease) onRelease(finalValue); + }); -var isArguments = supportsStandardArguments ? isStandardArguments : isLegacyArguments; + _defineProperty$1(_assertThisInitialized$1(_this), "continueHandleMovement", function (event) { + var clientPixel = _this.mouseEventClientOffset(event); -var hasSymbols$1 = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol'; + if (_this.state.isHandleMoving && !_this.props.disabled) { + var value = _this.clientToValue(clientPixel); -var toStr$1 = Object.prototype.toString; -var concat = Array.prototype.concat; -var origDefineProperty = Object.defineProperty; + _this.changeValue(value); + } + }); -var isFunction$1 = function (fn) { - return typeof fn === 'function' && toStr$1.call(fn) === '[object Function]'; -}; + _defineProperty$1(_assertThisInitialized$1(_this), "beginHandleMovement", function (event) { + if (_this.props.disabled) return; + document.addEventListener('mousemove', _this.continueHandleMovement); + document.addEventListener('mouseup', _this.endHandleMovement); -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(); + _this.setState({ + isHandleMoving: true + }); -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; - } -}; + var value = _this.clientToValue(event.clientX); -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]]); - } -}; + _this.changeValue(value); + }); -defineProperties.supportsDescriptors = !!supportsDescriptors$2; + _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 defineProperties_1 = defineProperties; + if (keyCode === ARROW_LEFT) { + _this.changeValue(value - stepSize); -var numberIsNaN = function (value) { - return value !== value; -}; + event.preventDefault(); + } else if (keyCode === ARROW_RIGHT) { + _this.changeValue(value + stepSize); -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; -}; + event.preventDefault(); + } + }); -var polyfill$2 = function getPolyfill() { - return typeof Object.is === 'function' ? Object.is : implementation$2; -}; + _defineProperty$1(_assertThisInitialized$1(_this), "handleKeyUp", function (event) { + if (_this.props.disabled) return; -var shim$1 = function shimObjectIs() { - var polyfill = polyfill$2(); - defineProperties_1(Object, { is: polyfill }, { - is: function testObjectIs() { - return Object.is !== polyfill; - } - }); - return polyfill; -}; + if ([ARROW_LEFT, ARROW_RIGHT].indexOf(event.keyCode) >= 0) { + var onRelease = _this.props.onRelease; + if (onRelease) onRelease(_this.props.value); + } + }); -var polyfill$1 = callBind(polyfill$2(), Object); + _defineProperty$1(_assertThisInitialized$1(_this), "getHandleMidpointAndOffset", function (handleElement) { + var useOppositeDimension = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; -defineProperties_1(polyfill$1, { - getPolyfill: polyfill$2, - implementation: implementation$2, - shim: shim$1 -}); + if (handleElement == null) { + return { + handleMidpoint: 0, + handleOffset: 0 + }; + } -var objectIs = polyfill$1; + var handleRect = handleElement.getBoundingClientRect(); + var sizeKey = useOppositeDimension ? 'height' : 'width'; + var handleOffset = handleRect.left; + return { + handleOffset: handleOffset, + handleMidpoint: handleRect[sizeKey] / 2 + }; + }); -var hasSymbols = shams(); -var hasToStringTag$1 = hasSymbols && !!Symbol.toStringTag; -var has; -var $exec; -var isRegexMarker; -var badStringifier; + _defineProperty$1(_assertThisInitialized$1(_this), "handleMouseOver", function () { + _this.setState({ + isHandleHovered: true + }); + }); -if (hasToStringTag$1) { - has = callBound('Object.prototype.hasOwnProperty'); - $exec = callBound('RegExp.prototype.exec'); - isRegexMarker = {}; + _defineProperty$1(_assertThisInitialized$1(_this), "handleMouseLeave", function () { + _this.setState({ + isHandleHovered: false + }); + }); - var throwRegexMarker = function () { - throw isRegexMarker; - }; - badStringifier = { - toString: throwRegexMarker, - valueOf: throwRegexMarker - }; + _defineProperty$1(_assertThisInitialized$1(_this), "removeDocumentEventListeners", function () { + document.removeEventListener('mousemove', _this.continueHandleMovement); + document.removeEventListener('mouseup', _this.endHandleMovement); + }); - if (typeof Symbol.toPrimitive === 'symbol') { - badStringifier[Symbol.toPrimitive] = throwRegexMarker; - } -} + return _this; + } -var $toString = callBound('Object.prototype.toString'); -var gOPD$1 = Object.getOwnPropertyDescriptor; -var regexClass = '[object RegExp]'; + _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 isRegex = hasToStringTag$1 - // eslint-disable-next-line consistent-return - ? function isRegex(value) { - if (!value || typeof value !== 'object') { - 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 descriptor = gOPD$1(value, 'lastIndex'); - var hasLastIndexDataProperty = descriptor && has(descriptor, 'value'); - if (!hasLastIndexDataProperty) { - return false; - } + var _this$getHandleMidpoi2 = this.getHandleMidpointAndOffset(this.handleElement, true), + handleMidpoint = _this$getHandleMidpoi2.handleMidpoint; - 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; - } + 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)) + ); + } + }]); - return $toString(value) === regexClass; - }; + return Handle; +}(React.Component); -var $Object = Object; -var $TypeError$1 = TypeError; +var MultiSliderHandle = function MultiSliderHandle() { + return null; +}; -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; -}; +var MultiSlider = /*#__PURE__*/function (_React$Component) { + _inherits(MultiSlider, _React$Component); -var supportsDescriptors$1 = defineProperties_1.supportsDescriptors; -var $gOPD = Object.getOwnPropertyDescriptor; -var $TypeError = TypeError; + var _super = _createSuper(MultiSlider); -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; -}; + function MultiSlider(_props) { + var _this; -var supportsDescriptors = defineProperties_1.supportsDescriptors; + _classCallCheck(this, MultiSlider); -var gOPD = Object.getOwnPropertyDescriptor; -var defineProperty$1 = Object.defineProperty; -var TypeErr = TypeError; -var getProto = Object.getPrototypeOf; -var regex = /a/; + _this = _super.call(this, _props); -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), "handleElements", []); -var flagsBound = callBind(implementation$1); + _defineProperty$1(_assertThisInitialized$1(_this), "trackElement", null); -defineProperties_1(flagsBound, { - getPolyfill: polyfill, - implementation: implementation$1, - shim: shim -}); + _defineProperty$1(_assertThisInitialized$1(_this), "getLabelPrecision", function (_ref) { + var labelPrecision = _ref.labelPrecision, + stepSize = _ref.stepSize; + return labelPrecision == null ? countDecimalPlaces(stepSize) : labelPrecision; + }); -var regexp_prototype_flags = flagsBound; + _defineProperty$1(_assertThisInitialized$1(_this), "getOffsetRatio", function (value) { + return clamp((value - _this.props.min) * _this.state.tickSizeRatio, 0, 1); + }); -var getDay = Date.prototype.getDay; -var tryDateObject = function tryDateGetDayCall(value) { - try { - getDay.call(value); - return true; - } catch (e) { - return false; - } -}; + _defineProperty$1(_assertThisInitialized$1(_this), "addHandleRef", function (ref) { + if (ref != null) { + _this.handleElements.push(ref); + } + }); -var toStr = Object.prototype.toString; -var dateClass = '[object Date]'; -var hasToStringTag = typeof Symbol === 'function' && !!Symbol.toStringTag; + _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; + }); -var isDateObject = function isDateObject(value) { - if (typeof value !== 'object' || value === null) { - return false; - } - return hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass; -}; + _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; -var getTime = Date.prototype.getTime; + _this.setState({ + tickSize: tickSize, + tickSizeRatio: tickSizeRatio + }); + } + }); -function deepEqual(actual, expected, options) { - var opts = options || {}; + _defineProperty$1(_assertThisInitialized$1(_this), "getTrackFill", function (start, end) { + if (start.fillAfter !== undefined) { + return start.fillAfter; + } - // 7.1. All identical values are equivalent, as determined by ===. - if (opts.strict ? objectIs(actual, expected) : actual === expected) { - return true; - } + if (end !== undefined && end.fillBefore !== undefined) { + return end.fillBefore; + } - // 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; - } + return false; + }); - /* - * 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); -} + _defineProperty$1(_assertThisInitialized$1(_this), "maybeHandleTrackClick", function (event) { + var target = event.target; + var canHandleTrackEvent = !_this.props.disabled && target.closest('.Slider-handle') == null; -function isUndefinedOrNull(value) { - return value === null || value === undefined; -} + if (canHandleTrackEvent) { + var foundHandle = _this.nearestHandleForValue(_this.handleElements, function (handle) { + return handle.mouseEventClientOffset(event); + }); -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; -} + if (foundHandle) { + foundHandle.beginHandleMovement(event); + } + } + }); -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), "getLockedHandleIndex", function (startIndex, endIndex) { + var inc = startIndex < endIndex ? 1 : -1; - // an identical 'prototype' property. - if (a.prototype !== b.prototype) { return false; } + for (var index = startIndex + inc; index !== endIndex + inc; index += inc) { + return index; + } - if (isArguments(a) !== isArguments(b)) { return false; } + return -1; + }); - 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), "getNewHandleValues", function (newValue, oldIndex) { + var handleProps = _this.getHandleValues(_this.props); - if (isDateObject(a) && isDateObject(b)) { - return getTime.call(a) === getTime.call(b); - } + 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); - 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; - } + var lockIndex = _this.getLockedHandleIndex(oldIndex, newIndex); - if (typeof a !== typeof b) { return false; } + if (lockIndex === -1) { + fillValues(newValues, oldIndex, newIndex, newValue); + } else { + var lockValue = oldValues[lockIndex]; + fillValues(oldValues, oldIndex, lockIndex, lockValue); + return oldValues; + } - 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; } + return newValues; + }); - // 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), "onReleaseHandler", function (newValue, index) { + var onRangeRelease = _this.props.onRangeRelease; - return true; -} + var handleProps = _this.getHandleValues(_this.props); -var deepEqual_1 = deepEqual; + var newValues = _this.getNewHandleValues(newValue, index); // Range Slider callback -/**! - * @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; -}(); + if (onRangeRelease) { + var range = newValues; + onRangeRelease(range); + } // Slider callback -function microtaskDebounce(fn) { - var called = false; - return function () { - if (called) { - return; - } - called = true; - window.Promise.resolve().then(function () { - called = false; - fn(); + + handleProps.forEach(function (handle, i) { + if (handle.onRelease) handle.onRelease(newValues[i]); + }); }); - }; -} -function taskDebounce(fn) { - var scheduled = false; - return function () { - if (!scheduled) { - scheduled = true; - setTimeout(function () { - scheduled = false; - fn(); - }, timeoutDuration); - } - }; -} + _defineProperty$1(_assertThisInitialized$1(_this), "onChangeHandler", function (newValue, index) { + var onRangeChange = _this.props.onRangeChange; -var supportsMicroTasks = isBrowser && window.Promise; + var handleProps = _this.getHandleValues(_this.props); -/** -* 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; + var oldValues = handleProps.map(function (handle) { + return handle.value; + }); -/** - * 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]'; -} + var newValues = _this.getNewHandleValues(newValue, index); -/** - * 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; -} + if (!arraysEqual(newValues, oldValues)) { + // Range Slider Callback + if (onRangeChange) { + var range = newValues; + onRangeChange(range); + } // Slider callback -/** - * 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; - } + handleProps.forEach(function (handle, i) { + if (handle.onChange) handle.onChange(newValues[i]); + }); + } + }); - switch (element.nodeName) { - case 'HTML': - case 'BODY': - return element.ownerDocument.body; - case '#document': - return element.body; - } + _defineProperty$1(_assertThisInitialized$1(_this), "formatLabel", function (value) { + var labelRenderer = _this.props.labelRenderer; + var labelValue = value.toFixed(_this.state.labelPrecision); - // Firefox want us to check `-x` and `-y` variations as well + if (typeof labelRenderer === 'function') { + return labelRenderer(Number(labelValue)); + } - var _getStyleComputedProp = getStyleComputedProperty(element), - overflow = _getStyleComputedProp.overflow, - overflowX = _getStyleComputedProp.overflowX, - overflowY = _getStyleComputedProp.overflowY; + return labelValue; + }); - if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) { - return element; - } + _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; - return getScrollParent(getParentNode(element)); -} + var handleProps = _this.getHandleValues(_this.props); -/** - * 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 (handleProps.length === 0) { + return null; + } -var isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode); -var isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent); + 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 + }); + }); + }); -/** - * 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; -} + _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; -/** - * 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 handles = _this.getHandleValues(_this.props); - var noOffsetParent = isIE(10) ? document.body : null; + var activeLabels = handles.map(function (handle) { + return handle.value.toFixed(_this.state.labelPrecision); + }); - // 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 _loop = function _loop(i, offsetRatio) { + var _classNames; - var nodeName = offsetParent && offsetParent.nodeName; + var offsetPercentage = formatPercentage(offsetRatio); + var style = { + left: offsetPercentage + }; + var active = !disabled && activeLabels.indexOf(i.toFixed(_this.state.labelPrecision)) !== -1; - if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') { - return element ? element.ownerDocument.documentElement : document.documentElement; - } + var onClickHandler = function onClickHandler(event) { + if (!_this.props.disabled) { + var foundHandle = _this.nearestHandleForValue(_this.handleElements, function (handle) { + return handle.mouseEventClientOffset(event); + }); - // .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); - } + if (foundHandle) { + foundHandle.changeValue(i); + } + } + }; - return offsetParent; -} + var SliderTicksClass = classnames((_classNames = {}, _defineProperty$1(_classNames, 'Slider-ticks', true), _defineProperty$1(_classNames, 'bg-dark', active), _classNames)); // TODO(a11y): fix accessibility -function isOffsetContainer(element) { - var nodeName = element.nodeName; + /* eslint-disable */ - if (nodeName === 'BODY') { - return false; - } - return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element; -} + 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)))); + }; -/** - * 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); - } + for (var i = min, offsetRatio = 0; i < max || approxEqual(i, max); i += labelStepSize, offsetRatio += stepSizeRatio) { + _loop(i, offsetRatio); + } - return node; -} + return labels; + }); -/** - * 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; - } + _defineProperty$1(_assertThisInitialized$1(_this), "renderTrackFill", function (index, start, end) { + var _classNames2; - // 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; + 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]; - // Get common ancestor container - var range = document.createRange(); - range.setStart(start, 0); - range.setEnd(end, 0); - var commonAncestorContainer = range.commonAncestorContainer; + 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 + }; - // Both nodes are inside #document + var style = _objectSpread2({}, orientationStyle); - if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) { - if (isOffsetContainer(commonAncestorContainer)) { - return commonAncestorContainer; - } + var fillTrack = _this.getTrackFill(start, end); - return getOffsetParent(commonAncestorContainer); - } + 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 + }); + }); - // 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); - } -} + _defineProperty$1(_assertThisInitialized$1(_this), "renderTracks", function () { + var trackStops = _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'; + 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 upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft'; - var nodeName = element.nodeName; + _defineProperty$1(_assertThisInitialized$1(_this), "handleLabelMouseOver", function (value) { + _this.setState({ + hoveredLabelValue: value + }); + }); - if (nodeName === 'BODY' || nodeName === 'HTML') { - var html = element.ownerDocument.documentElement; - var scrollingElement = element.ownerDocument.scrollingElement || html; - return scrollingElement[upperSide]; + _defineProperty$1(_assertThisInitialized$1(_this), "handleLabelMouseLeave", function () { + _this.setState({ + hoveredLabelValue: undefined + }); + }); + + _this.state = { + labelPrecision: _this.getLabelPrecision(_this.props), + tickSize: 0, + tickSizeRatio: 0 + }; + return _this; } - return element[upperSide]; -} + _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); -/* - * 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 (newHandleProps.length !== prevHandleProps.length) { + this.handleElements = []; + } - 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; -} + 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); + }); + } + }, { + key: "render", + value: function render() { + var _classNames4, + _this2 = this; -/* - * 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 - */ + 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())); + } + }]); -function getBordersSize(styles, axis) { - var sideA = axis === 'x' ? 'Left' : 'Top'; - var sideB = sideA === 'Left' ? 'Right' : 'Bottom'; + return MultiSlider; +}(React.Component); - return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']); -} +_defineProperty$1(MultiSlider, "defaultProps", { + labelStepSize: 1, + max: 10, + min: 0, + stepSize: 1, + labelRenderer: true +}); -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); -} +_defineProperty$1(MultiSlider, "Handle", MultiSliderHandle); -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 _excluded$C = ["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$C); -var classCallCheck = function (instance, Constructor) { - if (!(instance instanceof Constructor)) { - throw new TypeError("Cannot call a class as a function"); - } -}; + 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; -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); + if (!event.target || !element.current) { + return; } - } - - return function (Constructor, protoProps, staticProps) { - if (protoProps) defineProperties(Constructor.prototype, protoProps); - if (staticProps) defineProperties(Constructor, staticProps); - return Constructor; - }; -}(); - - + 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'; +var _excluded$B = ["appearance", "children", "className", "color"]; +var Paragraph = function Paragraph(props) { + var _classNames; -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; - } + var appearance = props.appearance, + children = props.children, + className = props.className, + color = props.color, + rest = _objectWithoutProperties(props, _excluded$B); - return obj; + 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); }; - -var _extends$1 = 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; +Paragraph.displayName = 'Paragraph'; +Paragraph.defaultProps = { + appearance: 'default' }; -/** - * 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 - }); -} +var ProgressBar = function ProgressBar(props) { + var _classNames; -/** - * Get bounding client rect of given element - * @method - * @memberof Popper.Utils - * @param {HTMLElement} element - * @return {Object} client rect - */ -function getBoundingClientRect(element) { - var rect = {}; + 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' +}; - // 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 _excluded$A = ["size", "label", "disabled", "onChange", "name", "value", "checked", "defaultChecked", "className", "helpText", "error"]; +var Radio = /*#__PURE__*/React.forwardRef(function (props, forwardedRef) { + var _classNames, _classNames2, _classNames3; - var result = { - left: rect.left, - top: rect.top, - width: rect.right - rect.left, - height: rect.bottom - rect.top - }; + 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$A); - // 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 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'; - var horizScrollbar = element.offsetWidth - width; - var vertScrollbar = element.offsetHeight - height; +var _excluded$z = ["className", "children"]; +var Row = /*#__PURE__*/React.forwardRef(function (props, ref) { + var className = props.className, + children = props.children, + rest = _objectWithoutProperties(props, _excluded$z); - // 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'); + 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'; - result.width -= horizScrollbar; - result.height -= vertScrollbar; - } +var StatusHint = function StatusHint(props) { + var _classNames2; - return getClientRect(result); -} + 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); + } + }), /*#__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' +}; -function getOffsetRectRelativeToArbitraryNode(children, parent) { - var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; +var Pills = function Pills(props) { + var _classNames; - var isIE10 = isIE(10); - var isHTML = parent.nodeName === 'HTML'; - var childrenRect = getBoundingClientRect(children); - var parentRect = getBoundingClientRect(parent); - var scrollParent = getScrollParent(children); + 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' +}; - var styles = getStyleComputedProperty(parent); - var borderTopWidth = parseFloat(styles.borderTopWidth); - var borderLeftWidth = parseFloat(styles.borderLeftWidth); +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' +}; - // 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; +var _excluded$y = ["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$y); - // 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 _React$useState = React.useState(valueProp === undefined ? defaultValue : valueProp), + _React$useState2 = _slicedToArray(_React$useState, 2), + value = _React$useState2[0], + setValue = _React$useState2[1]; - offsets.top -= borderTopWidth - marginTop; - offsets.bottom -= borderTopWidth - marginTop; - offsets.left -= borderLeftWidth - marginLeft; - offsets.right -= borderLeftWidth - marginLeft; + React.useEffect(function () { + if (valueProp !== undefined) { + setValue(valueProp); + } + }, [valueProp]); - // Attach marginTop and marginLeft because in some circumstances we may need them - offsets.marginTop = marginTop; - offsets.marginLeft = marginLeft; - } + var onChangeHandler = function onChangeHandler(newValue) { + if (valueProp === undefined) { + setValue(newValue); + } - if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') { - offsets = includeScroll(offsets, parent); - } + if (onChange) onChange(newValue); + }; - return offsets; -} + 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 +}); -function getViewportOffsetRectRelativeToArtbitraryNode(element) { - var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; +var _excluded$x = ["value", "defaultValue", "onChange", "onRelease"]; +var RangeIndex; - 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); +(function (RangeIndex) { + RangeIndex[RangeIndex["START"] = 0] = "START"; + RangeIndex[RangeIndex["END"] = 1] = "END"; +})(RangeIndex || (RangeIndex = {})); - var scrollTop = !excludeScroll ? getScroll(html) : 0; - var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0; +var RangeSlider = function RangeSlider(props) { + var valueProp = props.value, + defaultValue = props.defaultValue, + onChange = props.onChange, + onRelease = props.onRelease, + rest = _objectWithoutProperties(props, _excluded$x); - var offset = { - top: scrollTop - relativeOffset.top + relativeOffset.marginTop, - left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft, - width: width, - height: height + 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 onChangeHandler = function onChangeHandler(range) { + if (valueProp === undefined) { + setValue(range); + } + + if (onChange) onChange(range); }; - return getClientRect(offset); -} + 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] +}); -/** - * 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); -} +var _excluded$w = ["appearance", "children", "className", "color"]; +var Subheading = function Subheading(props) { + var _classNames; -/** - * 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 appearance = props.appearance, + children = props.children, + className = props.className, + color = props.color, + rest = _objectWithoutProperties(props, _excluded$w); -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 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 _excluded$v = ["size", "defaultChecked", "disabled", "onChange", "name", "value", "className", "appearance", "checked"]; /** - * 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 + * ######Switch has two types: + * - [Controlled Switch](https://reactjs.org/docs/forms.html#controlled-components) + * - [Uncontrolled Switch](https://reactjs.org/docs/uncontrolled-components.html) */ -function getBoundaries(popper, reference, padding, boundariesElement) { - var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; +var Switch = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames, _classNames2; - // NOTE: 1 DOM access here + 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$v); - var boundaries = { top: 0, left: 0 }; - var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference)); + var _React$useState = React.useState(checkedProp === undefined ? defaultChecked : checkedProp), + _React$useState2 = _slicedToArray(_React$useState, 2), + checked = _React$useState2[0], + setChecked = _React$useState2[1]; - // 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; + 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)); + + var onChangeHandler = function onChangeHandler(event) { + if (event.type == 'change' || isSpaceKey(event)) { + if (checkedProp === undefined) setChecked(!checked); + if (onChange) onChange(event, !checked); } + }; - var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition); + 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'; - // 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 _excluded$u = ["rows", "resize", "disabled", "name", "placeholder", "value", "defaultValue", "required", "error", "onChange", "onClick", "onBlur", "onFocus", "className"]; +var Textarea = /*#__PURE__*/React.forwardRef(function (props, ref) { + var _classNames; - 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 _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$u); - // 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 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'; - return boundaries; -} +var ActionButton = function ActionButton(props) { + var _classNames; -function getArea(_ref) { - var width = _ref.width, - height = _ref.height; + 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)); - return width * height; -} + var onClickHandler = function onClickHandler(e) { + e.preventDefault(); + if (onClick) onClick(e); + }; -/** - * 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; + return /*#__PURE__*/React.createElement("button", { + className: buttonClass, + onClick: onClickHandler + }, /*#__PURE__*/React.createElement(Text, { + appearance: "white" + }, label)); +}; - if (placement.indexOf('auto') === -1) { - return placement; - } +ActionButton.displayName = 'ActionButton'; +ActionButton.defaultProps = { + appearance: 'default' +}; - var boundaries = getBoundaries(popper, reference, padding, boundariesElement); +var Toast = function Toast(props) { + var _classNames, _classNames2, _classNames4, _classNames5; - 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 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 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 iconClass = function iconClass(align) { + var _classNames3; - var filteredAreas = sortedAreas.filter(function (_ref2) { - var width = _ref2.width, - height = _ref2.height; - return width >= popper.clientWidth && height >= popper.clientHeight; - }); + 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 computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key; + 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 variation = placement.split('-')[1]; + var onCloseHandler = function onCloseHandler() { + if (onClose) onClose(); + }; - return computedPlacement + (variation ? '-' + variation : ''); -} + 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' +}; -/** - * 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 objectWithoutPropertiesLoose = createCommonjsModule(function (module) { +function _objectWithoutPropertiesLoose(source, excluded) { + if (source == null) return {}; + var target = {}; + var sourceKeys = Object.keys(source); + var key, i; - var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference)); - return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition); + for (i = 0; i < sourceKeys.length; i++) { + key = sourceKeys[i]; + if (excluded.indexOf(key) >= 0) continue; + target[key] = source[key]; + } + + return target; } -/** - * 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; -} +module.exports = _objectWithoutPropertiesLoose; +module.exports["default"] = module.exports, module.exports.__esModule = true; +}); -/** - * 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 _objectWithoutPropertiesLoose = unwrapExports(objectWithoutPropertiesLoose); -/** - * 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 _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]; - // Get popper node sizes - var popperRect = getOuterSizes(popper); + for (var key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key]; + } + } + } - // Add position, width and height to our offsets object - var popperOffsets = { - width: popperRect.width, - height: popperRect.height + return target; }; - // 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; + module.exports["default"] = module.exports, module.exports.__esModule = true; + return _extends.apply(this, arguments); } -/** - * 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); - } +module.exports = _extends; +module.exports["default"] = module.exports, module.exports.__esModule = true; +}); - // use `filter` to obtain the same behavior of `find` - return arr.filter(check)[0]; -} +var _extends$1 = unwrapExports(_extends_1); -/** - * 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 setPrototypeOf = createCommonjsModule(function (module) { +function _setPrototypeOf(o, p) { + module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { + o.__proto__ = p; + return o; + }; - // use `find` + `indexOf` if `findIndex` isn't supported - var match = find(arr, function (obj) { - return obj[prop] === value; - }); - return arr.indexOf(match); + module.exports["default"] = module.exports, module.exports.__esModule = true; + return _setPrototypeOf(o, p); } -/** - * 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); +module.exports = _setPrototypeOf; +module.exports["default"] = module.exports, module.exports.__esModule = true; +}); - data = fn(data, modifier); - } - }); +unwrapExports(setPrototypeOf); - return data; +var inheritsLoose = createCommonjsModule(function (module) { +function _inheritsLoose(subClass, superClass) { + subClass.prototype = Object.create(superClass.prototype); + subClass.prototype.constructor = subClass; + setPrototypeOf(subClass, superClass); } -/** - * 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); +module.exports = _inheritsLoose; +module.exports["default"] = module.exports, module.exports.__esModule = true; +}); - // store the computed placement inside `originalPlacement` - data.originalPlacement = data.placement; +var _inheritsLoose = unwrapExports(inheritsLoose); - data.positionFixed = this.options.positionFixed; +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"); + } - // compute the popper offsets - data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement); + return self; +} - data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute'; +module.exports = _assertThisInitialized; +module.exports["default"] = module.exports, module.exports.__esModule = true; +}); - // run the modifiers - data = runModifiers(this.modifiers, data); +var _assertThisInitialized = unwrapExports(assertThisInitialized); - // 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); +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; } -} -/** - * 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; - }); + return obj; } -/** - * 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; +module.exports = _defineProperty; +module.exports["default"] = module.exports, module.exports.__esModule = 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')] = ''; - } +var _defineProperty = unwrapExports(defineProperty$3); - this.disableEventListeners(); +var toStr$4 = Object.prototype.toString; - // 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 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; +}; -/** - * Get the window associated with the element - * @argument {Element} element - * @returns {Window} - */ -function getWindow(element) { - var ownerDocument = element.ownerDocument; - return ownerDocument ? ownerDocument.defaultView : window; -} +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; + } + }; -function attachToScrollParents(scrollParent, event, callback, scrollParents) { - var isBody = scrollParent.nodeName === 'BODY'; - var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent; - target.addEventListener(event, callback, { passive: true }); + 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 (!isBody) { - attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents); - } - scrollParents.push(target); -} + if (!isObject && !isFunction && !isArguments) { + throw new TypeError('Object.keys called on a non-object'); + } -/** - * 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 }); + 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)); + } + } - // Scroll event listener on scroll parents - var scrollElement = getScrollParent(reference); - attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents); - state.scrollElement = scrollElement; - state.eventsEnabled = 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)); + } + } + } - return state; -} + if (hasDontEnumBug) { + var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object); -/** - * 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); - } + 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; -/** - * 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); +var slice$1 = Array.prototype.slice; - // 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; -} +var origKeys = Object.keys; +var keysShim = origKeys ? function keys(o) { return origKeys(o); } : implementation$4; -/** - * 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); - } -} +var originalKeys = Object.keys; -/** - * 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); - } - }); -} +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; +}; -/** - * @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); +var objectKeys = keysShim; - // 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); +/* 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; } - // if arrowElement is defined and arrowStyles has some properties - if (data.arrowElement && Object.keys(data.arrowStyles).length) { - setStyles(data.arrowElement, data.arrowStyles); - } + var obj = {}; + var sym = Symbol('test'); + var symObj = Object(sym); + if (typeof sym === 'string') { return false; } - return data; -} + if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; } + if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { 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); + // 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; } - // 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); + // if (typeof Symbol.prototype.toString !== 'function') { return false; } + // if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; } - popper.setAttribute('x-placement', placement); + 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; } - // 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.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; } - return options; -} + var syms = Object.getOwnPropertySymbols(obj); + if (syms.length !== 1 || syms[0] !== sym) { return false; } -/** - * @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; + if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; } - var noRound = function noRound(v) { - return v; - }; + if (typeof Object.getOwnPropertyDescriptor === 'function') { + var descriptor = Object.getOwnPropertyDescriptor(obj, sym); + if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; } + } - var referenceWidth = round(reference.width); - var popperWidth = round(popper.width); + return true; +}; - 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 shams = function hasToStringTagShams() { + return shams$1() && !!Symbol.toStringTag; +}; - var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor; - var verticalToInteger = !shouldRound ? noRound : round; +var origSymbol = typeof Symbol !== 'undefined' && Symbol; - 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); +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; } -/** - * @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; + return shams$1(); +}; - // Remove this legacy support in Popper.js v2 +/* eslint no-invalid-this: 1 */ - 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 ERROR_MESSAGE = 'Function.prototype.bind called on incompatible '; +var slice = Array.prototype.slice; +var toStr$2 = Object.prototype.toString; +var funcType = '[object Function]'; - var offsetParent = getOffsetParent(data.instance.popper); - var offsetParentRect = getBoundingClientRect(offsetParent); +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); - // Styles - var styles = { - position: popper.position - }; + 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 offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox); + var boundLength = Math.max(0, target.length - args.length); + var boundArgs = []; + for (var i = 0; i < boundLength; i++) { + boundArgs.push('$' + i); + } - var sideA = x === 'bottom' ? 'top' : 'bottom'; - var sideB = y === 'right' ? 'left' : 'right'; + bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder); - // 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; + if (target.prototype) { + var Empty = function Empty() {}; + Empty.prototype = target.prototype; + bound.prototype = new Empty(); + Empty.prototype = null; } - } 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 - }; + return bound; +}; - // 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); +var functionBind = Function.prototype.bind || implementation$3; - return data; -} +var src = functionBind.call(Function.call, Object.prototype.hasOwnProperty); -/** - * 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 undefined$1; - var isRequired = !!requesting && modifiers.some(function (modifier) { - return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order; - }); +var $SyntaxError = SyntaxError; +var $Function = Function; +var $TypeError$2 = TypeError; - 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; +// eslint-disable-next-line consistent-return +var getEvalledConstructor = function (expressionSyntax) { + try { + return $Function('"use strict"; return (' + expressionSyntax + ').constructor;')(); + } catch (e) {} +}; + +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 + } } -/** - * @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 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; - // arrow depends on keepTogether in order to work - if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) { - return data; - } +var hasSymbols$1 = hasSymbols$2(); - var arrowElement = options.element; +var getProto$1 = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto - // if arrowElement is a string, suppose it's a CSS selector - if (typeof arrowElement === 'string') { - arrowElement = data.instance.popper.querySelector(arrowElement); +var needsEval = {}; - // 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 TypedArray = typeof Uint8Array === 'undefined' ? undefined$1 : getProto$1(Uint8Array); - var placement = data.placement.split('-')[0]; - var _data$offsets = data.offsets, - popper = _data$offsets.popper, - reference = _data$offsets.reference; +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 +}; - var isVertical = ['left', 'right'].indexOf(placement) !== -1; +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 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]; + INTRINSICS[name] = value; - // - // extends keepTogether behavior making sure the popper and its - // reference have enough pixels in conjunction - // + return value; +}; - // 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 = []; - - 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; - } + // 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]; + } - flipOrder.forEach(function (step, index) { - if (placement !== step || flipOrder.length === index + 1) { - return data; - } + if (isOwn && !skipFurtherCaching) { + INTRINSICS[intrinsicRealName] = value; + } + } + } + return value; +}; - placement = data.placement.split('-')[0]; - placementOpposite = getOppositePlacement(placement); +var callBind = createCommonjsModule(function (module) { - 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; +var $apply = getIntrinsic('%Function.prototype.apply%'); +var $call = getIntrinsic('%Function.prototype.call%'); +var $reflectApply = getIntrinsic('%Reflect.apply%', true) || functionBind.call($call, $apply); - // flip the variation if required - var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; +var $gOPD = getIntrinsic('%Object.getOwnPropertyDescriptor%', true); +var $defineProperty = getIntrinsic('%Object.defineProperty%', true); +var $max = getIntrinsic('%Math.max%'); - // 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); +if ($defineProperty) { + try { + $defineProperty({}, 'a', { value: 1 }); + } catch (e) { + // IE 8 has a broken defineProperty + $defineProperty = null; + } +} - // 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); +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 flippedVariation = flippedVariationByRef || flippedVariationByContent; +var applyBind = function applyBind() { + return $reflectApply(functionBind, $apply, arguments); +}; - if (overlapsRef || overflowsBoundaries || flippedVariation) { - // this boolean to detect any flip loop - data.flipped = true; +if ($defineProperty) { + $defineProperty(module.exports, 'apply', { value: applyBind }); +} else { + module.exports.apply = applyBind; +} +}); +callBind.apply; - if (overlapsRef || overflowsBoundaries) { - placement = flipOrder[index + 1]; - } +var $indexOf = callBind(getIntrinsic('String.prototype.indexOf')); - if (flippedVariation) { - variation = getOppositeVariation(variation); - } +var callBound = function callBoundIntrinsic(name, allowMissing) { + var intrinsic = getIntrinsic(name, !!allowMissing); + if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) { + return callBind(intrinsic); + } + return intrinsic; +}; - data.placement = placement + (variation ? '-' + variation : ''); +var hasToStringTag$2 = shams(); - // 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)); - data = runModifiers(data.instance.modifiers, data, 'flip'); - } - }); - return data; -} +var $toString$1 = callBound('Object.prototype.toString'); -/** - * @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 isStandardArguments = function isArguments(value) { + if (hasToStringTag$2 && value && typeof value === 'object' && Symbol.toStringTag in value) { + return false; + } + return $toString$1(value) === '[object Arguments]'; +}; - 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 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]'; +}; - 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]); - } +var supportsStandardArguments = (function () { + return isStandardArguments(arguments); +}()); - return data; -} +isStandardArguments.isLegacyArguments = isLegacyArguments; // for tests -/** - * 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 isArguments = supportsStandardArguments ? isStandardArguments : isLegacyArguments; - // If it's not a number it's an operator, I guess - if (!value) { - return str; - } +var hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol'; - if (unit.indexOf('%') === 0) { - var element = void 0; - switch (unit) { - case '%p': - element = popperOffsets; - break; - case '%': - case '%r': - default: - element = referenceOffsets; - } +var toStr$1 = Object.prototype.toString; +var concat = Array.prototype.concat; +var origDefineProperty = Object.defineProperty; - 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 isFunction$1 = function (fn) { + return typeof fn === 'function' && toStr$1.call(fn) === '[object Function]'; +}; -/** - * 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 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(); - // 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 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; + } +}; - // 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(); - }); +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]]); + } +}; - // 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; - })); +defineProperties.supportsDescriptors = !!supportsDescriptors$2; - if (fragments[divider] && fragments[divider].indexOf(',') === -1) { - console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.'); - } +var defineProperties_1 = defineProperties; - // 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 numberIsNaN = function (value) { + return value !== value; +}; - // 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 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; +}; - // 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 polyfill$2 = function getPolyfill() { + return typeof Object.is === 'function' ? Object.is : implementation$2; +}; -/** - * @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 shim$1 = function shimObjectIs() { + var polyfill = polyfill$2(); + defineProperties_1(Object, { is: polyfill }, { + is: function testObjectIs() { + return Object.is !== polyfill; + } + }); + return polyfill; +}; - var basePlacement = placement.split('-')[0]; +var polyfill$1 = callBind(polyfill$2(), Object); - var offsets = void 0; - if (isNumeric(+offset)) { - offsets = [+offset, 0]; - } else { - offsets = parseOffset(offset, popper, reference, basePlacement); - } +defineProperties_1(polyfill$1, { + getPolyfill: polyfill$2, + implementation: implementation$2, + shim: shim$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 objectIs = polyfill$1; - data.popper = popper; - return data; -} +var hasToStringTag$1 = shams(); +var has; +var $exec; +var isRegexMarker; +var badStringifier; -/** - * @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 (hasToStringTag$1) { + has = callBound('Object.prototype.hasOwnProperty'); + $exec = callBound('RegExp.prototype.exec'); + isRegexMarker = {}; - // 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); - } + var throwRegexMarker = function () { + throw isRegexMarker; + }; + badStringifier = { + toString: throwRegexMarker, + valueOf: 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]; + if (typeof Symbol.toPrimitive === 'symbol') { + badStringifier[Symbol.toPrimitive] = throwRegexMarker; + } +} - popperStyles.top = ''; - popperStyles.left = ''; - popperStyles[transformProp] = ''; +var $toString = callBound('Object.prototype.toString'); +var gOPD$1 = Object.getOwnPropertyDescriptor; +var regexClass = '[object RegExp]'; - var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed); +var isRegex = hasToStringTag$1 + // eslint-disable-next-line consistent-return + ? function isRegex(value) { + if (!value || typeof value !== 'object') { + 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; + var descriptor = gOPD$1(value, 'lastIndex'); + var hasLastIndexDataProperty = descriptor && has(descriptor, 'value'); + if (!hasLastIndexDataProperty) { + return false; + } - options.boundaries = boundaries; + 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; + } - var order = options.priority; - var popper = data.offsets.popper; + return $toString(value) === regexClass; + }; - 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 $Object = Object; +var $TypeError$1 = TypeError; - order.forEach(function (placement) { - var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary'; - popper = _extends$1({}, popper, check[side](placement)); - }); +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; +}; - data.offsets.popper = popper; +var supportsDescriptors$1 = defineProperties_1.supportsDescriptors; +var $gOPD = Object.getOwnPropertyDescriptor; +var $TypeError = TypeError; - return data; -} +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; +}; -/** - * @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 supportsDescriptors = defineProperties_1.supportsDescriptors; - // if shift shiftvariation is specified, run the modifier - if (shiftvariation) { - var _data$offsets = data.offsets, - reference = _data$offsets.reference, - popper = _data$offsets.popper; +var gOPD = Object.getOwnPropertyDescriptor; +var defineProperty$1 = Object.defineProperty; +var TypeErr = TypeError; +var getProto = Object.getPrototypeOf; +var regex = /a/; - var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1; - var side = isVertical ? 'left' : 'top'; - var measurement = isVertical ? 'width' : 'height'; +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 shiftOffsets = { - start: defineProperty({}, side, reference[side]), - end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement]) - }; +var flagsBound = callBind(implementation$1); + +defineProperties_1(flagsBound, { + getPolyfill: polyfill, + implementation: implementation$1, + shim: shim +}); + +var regexp_prototype_flags = flagsBound; + +var getDay = Date.prototype.getDay; +var tryDateObject = function tryDateGetDayCall(value) { + try { + getDay.call(value); + return true; + } catch (e) { + return false; + } +}; + +var toStr = Object.prototype.toString; +var dateClass = '[object Date]'; +var hasToStringTag = shams(); - data.offsets.popper = _extends$1({}, popper, shiftOffsets[shiftvariation]); +var isDateObject = function isDateObject(value) { + if (typeof value !== 'object' || value === null) { + return false; + } + return hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass; +}; + +var getTime = Date.prototype.getTime; + +function deepEqual(actual, expected, options) { + var opts = options || {}; + + // 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 hide(data) { - if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) { - return data; +function isUndefinedOrNull(value) { + return value === null || value === undefined; +} + +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 refRect = data.offsets.reference; - var bound = find(data.instance.modifiers, function (modifier) { - return modifier.name === 'preventOverflow'; - }).boundaries; +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; } - 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; - } + // an identical 'prototype' property. + if (a.prototype !== b.prototype) { return false; } - 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; - } + if (isArguments(a) !== isArguments(b)) { return false; } - data.hide = false; - data.attributes['x-out-of-boundaries'] = false; + 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); } - 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; + if (isDateObject(a) && isDateObject(b)) { + return getTime.call(a) === getTime.call(b); + } - var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1; + 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; + } - var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1; + if (typeof a !== typeof b) { return false; } - popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0); + 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; } - data.placement = getOppositePlacement(placement); - data.offsets.popper = getClientRect(popper); + // 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; } + } - return data; + return true; } -/** - * 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 - */ +var deepEqual_1 = deepEqual; -/** - * 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. +/**! + * @fileOverview Kickass library to create and place poppers near their reference elements. + * @version 1.16.1 + * @license + * Copyright (c) 2016 Federico Zivolo and contributors * - * 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 + * 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 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 - }, +var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined'; - /** - * 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 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; +}(); - /** - * 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' - }, +function microtaskDebounce(fn) { + var called = false; + return function () { + if (called) { + return; + } + called = true; + window.Promise.resolve().then(function () { + called = false; + fn(); + }); + }; +} - /** - * 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 - }, +function taskDebounce(fn) { + var scheduled = false; + return function () { + if (!scheduled) { + scheduled = true; + setTimeout(function () { + scheduled = false; + fn(); + }, timeoutDuration); + } + }; +} - /** - * 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]' - }, +var supportsMicroTasks = isBrowser && window.Promise; - /** - * 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 - }, +/** +* 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; - /** - * 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' - }, +/** + * 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]'; +} - /** - * 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 +/** + * 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; +} /** - * 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 + * 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; +} /** - * 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 + * Returns the scrolling parent of the given element + * @method + * @memberof Popper.Utils + * @argument {Element} element + * @returns {Element} scroll parent */ -var Defaults = { - /** - * Popper's placement. - * @prop {Popper.placements} placement='bottom' - */ - placement: 'bottom', +function getScrollParent(element) { + // Return body, `getScroll` will take care to get the correct `scrollTop` from it + if (!element) { + return document.body; + } - /** - * Set this to true if you want popper to position it self in 'fixed' mode - * @prop {Boolean} positionFixed=false - */ - positionFixed: false, + switch (element.nodeName) { + case 'HTML': + case 'BODY': + return element.ownerDocument.body; + case '#document': + return element.body; + } - /** - * Whether events (resize, scroll) are initially enabled. - * @prop {Boolean} eventsEnabled=true - */ - eventsEnabled: true, + // Firefox want us to check `-x` and `-y` variations as well - /** - * Set to true if you want to automatically remove the popper when - * you call the `destroy` method. - * @prop {Boolean} removeOnDestroy=false - */ - removeOnDestroy: false, + 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 + */ + 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$t = ["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$t); + + 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$s = ["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$s); + + 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$r = ["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$r); + + 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$q = ["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$q); + + 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); + } + }]); - /** - * 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() {}, + return FullscreenModal; +}(React.Component); - /** - * 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(FullscreenModal, "defaultProps", { + dimension: 'medium' +}); - /** - * 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 +var sidesheetWidth = { + regular: '6', + large: '10' }; -/** - * @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 Sidesheet = /*#__PURE__*/function (_React$Component) { + _inherits(Sidesheet, _React$Component); - var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; - classCallCheck(this, Popper); + var _super = _createSuper(Sidesheet); - this.scheduleUpdate = function () { - return requestAnimationFrame(_this.update); - }; + function Sidesheet(props) { + var _this; - // make update() debounced, so that it only runs at most once-per-tick - this.update = debounce(this.update.bind(this)); + _classCallCheck(this, Sidesheet); - // with {} we create a new object with the options inside it - this.options = _extends$1({}, Popper.Defaults, options); + _this = _super.call(this, props); - // init state - this.state = { - isDestroyed: false, - isCreated: false, - scrollParents: [] - }; + _defineProperty$1(_assertThisInitialized$1(_this), "sidesheetRef", /*#__PURE__*/React.createRef()); - // 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(_assertThisInitialized$1(_this), "element", void 0); - // 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] : {}); + _defineProperty$1(_assertThisInitialized$1(_this), "onCloseHandler", function (event) { + var isTopOverlay = instance.isTopOverlay(_this.sidesheetRef.current); + closeOnEscapeKeypress(event, isTopOverlay, _this.onOutsideClickHandler); }); - // 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; - }); + _this.element = getWrapperElement(); + _this.state = { + open: props.open, + animate: props.open + }; + _this.onOutsideClickHandler = _this.onOutsideClickHandler.bind(_assertThisInitialized$1(_this)); + return _this; + } - // 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); + _createClass(Sidesheet, [{ + key: "componentDidMount", + value: function componentDidMount() { + if (this.props.closeOnEscape) { + if (this.state.open) { + instance.add(this.sidesheetRef.current); + } + + document.addEventListener('keydown', this.onCloseHandler); } - }); - // fire the first update to position the popper in the right place - this.update(); + if (this.props.backdropClose && this.state.open) { + instance.add(this.sidesheetRef.current); + } - var eventsEnabled = this.options.eventsEnabled; - if (eventsEnabled) { - // setup event listeners, they will take care of update the position in specific situations - this.enableEventListeners(); + var zIndex = getUpdatedZIndex({ + element: this.element, + containerClassName: '.Overlay-container', + elementRef: this.sidesheetRef + }); + this.setState({ + zIndex: zIndex + }); } - - 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: "componentWillUnmount", + value: function componentWillUnmount() { + if (this.props.closeOnEscape) { + document.removeEventListener('keydown', this.onCloseHandler); + } } }, { - key: 'destroy', - value: function destroy$$1() { - return destroy.call(this); + 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: 'enableEventListeners', - value: function enableEventListeners$$1() { - return enableEventListeners.call(this); + 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; + + if (open && instance.isTopOverlay(this.sidesheetRef.current)) { + if (backdropClose || closeOnEscape) instance.remove(this.sidesheetRef.current); + if (onClose) onClose(event, 'OutsideClick'); + } } }, { - key: 'disableEventListeners', - value: function disableEventListeners$$1() { - return disableEventListeners.call(this); + 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; - /** - * 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 - */ - + 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 + })); + } }]); - 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; + return Sidesheet; +}(React.Component); -/** @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; +_defineProperty$1(Sidesheet, "defaultProps", { + dimension: 'regular', + stickFooter: false, + headerOptions: {} +}); -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 Collapsible = function Collapsible(props) { + var _classNames, _classNames2, _classNames3, _classNames4; -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; + 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; -createCommonjsModule(function (module) { + var _React$useState = React.useState(true), + _React$useState2 = _slicedToArray(_React$useState, 2), + isClicked = _React$useState2[0], + setIsClicked = _React$useState2[1]; -{ - module.exports = reactIs_production_min; -} -}); + var _React$useState3 = React.useState(false), + _React$useState4 = _slicedToArray(_React$useState3, 2), + seperator = _React$useState4[0], + setSeperator = _React$useState4[1]; -/* -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; + 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)); -function toObject(val) { - if (val === null || val === undefined) { - throw new TypeError('Object.assign cannot be called with null or undefined'); - } + var onToggleHandler = function onToggleHandler(newExpanded, type) { + return function () { + if (onToggle) { + if (type === 'mouseenter' || type === 'mouseleave') { + if (isClicked && expanded || !hoverable) return; + setIsClicked(false); + } - return Object(val); -} + if (type === 'click') { + setIsClicked(true); + } -function shouldUseNative() { - try { - if (!Object.assign) { - return false; - } + onToggle(newExpanded); + } + }; + }; - // Detect buggy property enumeration order in older V8 versions. + var width = expanded ? expandedWidth : undefined; + return /*#__PURE__*/React.createElement("div", { + "data-test": "DesignSystem-CollapsibleWrapper", + className: WrapperClass, + style: { + height: height + } + }, /*#__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 +}; - // 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 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); - // 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 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); + } - // 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 t; + }; - return true; - } catch (err) { - // We don't expect any of the above to throw, but better to be safe. - return false; - } -} + 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 + })); -shouldUseNative() ? Object.assign : function (target, source) { - var from; - var to = toObject(target); - var symbols; + 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 + })); - for (var s = 1; s < arguments.length; s++) { - from = Object(arguments[s]); + 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 + })); - for (var key in from) { - if (hasOwnProperty.call(from, key)) { - to[key] = from[key]; - } - } + case 'sending': + return /*#__PURE__*/React.createElement(Text, _extends$2({}, baseProps, { + appearance: "subtle", + size: "small", + className: TextClass + }), sendingText); - 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]]; - } - } - } - } + 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))); - return to; + default: + return null; + } }; +Status$1.displayName = 'Status'; -/** - * 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 Box = function Box(props) { + var _classNames; -var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; + 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 ReactPropTypesSecret_1 = ReactPropTypesSecret; + /* eslint-disable */ -Function.call.bind(Object.prototype.hasOwnProperty); + return /*#__PURE__*/React.createElement("div", _extends$2({}, baseProps, { + className: MessageClass, + onClick: onClick, + "data-test": "DesignSystem-ChatMessage--Box" + }), children); + /* eslint-enable */ +}; +Box.displayName = 'Box'; -function emptyFunction() {} -function emptyFunctionWithReset() {} -emptyFunctionWithReset.resetWarningCache = emptyFunction; +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 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, + if (isTyping && type === 'incoming') { + return /*#__PURE__*/React.createElement(Text, _extends$2({}, baseProps, { + appearance: 'subtle', + size: 'small', + className: className + }), typingText); + } - any: shim, - arrayOf: getShim, - element: shim, - elementType: shim, - instanceOf: getShim, - node: shim, - objectOf: getShim, - oneOf: getShim, - oneOfType: getShim, - shape: getShim, - exact: getShim, + return /*#__PURE__*/React.createElement(Text, _extends$2({}, baseProps, { + className: className, + appearance: statusType === 'sending' ? 'subtle' : 'default' + }), text); +}; +MessageText.defaultProps = { + text: '', + typingText: 'Typing..' +}; +MessageText.displayName = 'MessageText'; - checkPropTypes: emptyFunctionWithReset, - resetWarningCache: emptyFunction - }; +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); - ReactPropTypes.PropTypes = ReactPropTypes; + var _ref = statusOptions || {}, + statusType = _ref.type; - return ReactPropTypes; + 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'; + +var imageHeight = { + large: '256px', + small: '128px' +}; +var HeadingSize = { + large: 'l', + small: 'm' +}; +var textSize = { + large: 'large', + small: 'regular' +}; +var EmptyState = function EmptyState(props) { + var _classNames2, _classNames3; + + var imageSrc = props.imageSrc, + title = props.title, + description = props.description, + size = props.size, + children = props.children, + className = props.className, + image = props.image; + var baseProps = extractBaseProps(props); + var WrapperClass = classnames(_defineProperty$1({}, 'EmptyState', true), className); + var HeadingClass = classnames((_classNames2 = {}, _defineProperty$1(_classNames2, 'EmptyState-title', true), _defineProperty$1(_classNames2, "EmptyState-title--".concat(size), true), _classNames2)); + var TextClass = classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'EmptyState-description', true), _defineProperty$1(_classNames3, "EmptyState-description--".concat(size), children !== undefined), _classNames3)); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-EmptyState" + }, baseProps, { + className: WrapperClass + }), image && /*#__PURE__*/React.createElement("div", { + style: { + height: imageHeight[size] + } + }, image), imageSrc && !image && + /*#__PURE__*/ + //TODO(a11y) + //eslint-disable-next-line + 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); }; +EmptyState.displayName = 'EmptyState'; -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; +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 warning = function() {}; - -var warning_1 = warning; - -var implementation = createCommonjsModule(function (module, exports) { - -exports.__esModule = true; - - - -_interopRequireDefault(React__default); - - +var Pagination = function Pagination(props) { + var _classNames, _classNames2, _classNames3; -var _propTypes2 = _interopRequireDefault(propTypes); + var type = props.type, + totalPages = props.totalPages, + onPageChange = props.onPageChange, + className = props.className, + pageJumpDebounceDuration = props.pageJumpDebounceDuration; + 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]; -var _gud2 = _interopRequireDefault(gud); + 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(warning_1); + if (val >= 0 && val <= totalPages) { + if (!init) setInit(true); + setPage(val); + } + }; -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + var onKeyPressHandler = function onKeyPressHandler(e) { + if (!isNaturalNumber(e.key)) { + e.preventDefault(); + } + }; -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + var onClickHandler = function onClickHandler(buttonType) { + setInit(true); -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; } + switch (buttonType) { + case 'first': + setPage(1); + break; -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; } + case 'last': + setPage(totalPages); + break; -var MAX_SIGNED_31_BIT_INT = 1073741823; + case 'prev': + if (page > 1) setPage(page - 1); + break; -// 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; - } -} + case 'next': + if (page < totalPages) setPage(page + 1); + break; + } + }; -function createEventEmitter(value) { - var handlers = []; - return { - on: function on(handler) { - handlers.push(handler); + 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'); }, - off: function off(handler) { - handlers = handlers.filter(function (h) { - return h !== handler; - }); + disabled: page <= 1, + appearance: "transparent", + icon: "first_page", + "data-test": "DesignSystem-Pagination--FirstButton" + }), /*#__PURE__*/React.createElement(Button, { + onClick: function onClick() { + return onClickHandler('prev'); }, - get: function get() { - return value; + 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'); }, - 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; + 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 contextProp = '__create-react-context-' + (0, _gud2.default)() + '__'; +var _excluded$p = ["onChange"]; +var EditableInput = function EditableInput(props) { + var _classNames2, _classNames4; - var Provider = function (_Component) { - _inherits(Provider, _Component); + 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; - function Provider() { - var _temp, _this, _ret; + var onInputChange = inputOptions.onChange, + rest = _objectWithoutProperties(inputOptions, _excluded$p); - _classCallCheck(this, Provider); + var _React$useState = React.useState(props.value), + _React$useState2 = _slicedToArray(_React$useState, 2), + inputValue = _React$useState2[0], + setInputValue = _React$useState2[1]; - for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } + var _React$useState3 = React.useState(props.value), + _React$useState4 = _slicedToArray(_React$useState3, 2), + value = _React$useState4[0], + setValue = _React$useState4[1]; - return _ret = (_temp = (_this = _possibleConstructorReturn(this, _Component.call.apply(_Component, [this].concat(args))), _this), _this.emitter = createEventEmitter(_this.props.value), _temp), _possibleConstructorReturn(_this, _ret); - } + var _React$useState5 = React.useState(false), + _React$useState6 = _slicedToArray(_React$useState5, 2), + editing = _React$useState6[0], + setEditing = _React$useState6[1]; - Provider.prototype.getChildContext = function getChildContext() { - var _ref; + var _React$useState7 = React.useState(false), + _React$useState8 = _slicedToArray(_React$useState7, 2), + showComponent = _React$useState8[0], + setShowComponent = _React$useState8[1]; - return _ref = {}, _ref[contextProp] = this.emitter, _ref; - }; + 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); + }; - 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; + var onSaveChanges = function onSaveChanges() { + if (!isControlled) setValue(inputValue); + if (onChange) onChange(inputValue || ''); + setDefaultComponent(inputValue); + }; - if (objectIs(oldValue, newValue)) { - changedBits = 0; // No change - } else { - changedBits = typeof calculateChangedBits === 'function' ? calculateChangedBits(oldValue, newValue) : MAX_SIGNED_31_BIT_INT; + var onInputChangeHandler = function onInputChangeHandler(e) { + setInputValue(e.target.value); + if (onInputChange) onInputChange(e); + }; - changedBits |= 0; + var onChangeHandler = function onChangeHandler(eventType) { + switch (eventType) { + case 'edit': + { + var _inputRef$current; - if (changedBits !== 0) { - this.emitter.set(nextProps.value, changedBits); - } + (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus(); + setEditing(true); + setShowComponent(true); + break; } - } - }; - - 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); + case 'hover': + { + setShowComponent(true); + break; + } - var Consumer = function (_Component2) { - _inherits(Consumer, _Component2); + case 'default': + { + setShowComponent(false); + } + } + }; - function Consumer() { - var _temp2, _this2, _ret2; + 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, Consumer); + var onKeyDown = function onKeyDown(event) { + if (document.activeElement === inputRef.current) { + switch (event.key) { + case 'Enter': + onSaveChanges(); + break; - for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { - args[_key2] = arguments[_key2]; + case 'Escape': + setDefaultComponent(value); + break; } + } + }; - 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 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; } - Consumer.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) { - var observedBits = nextProps.observedBits; + return /*#__PURE__*/React.createElement("div", { + className: EditableDefaultClass, + "data-test": "DesignSystem-EditableInput--Default" + }, value || placeholder); + }; - this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default - : observedBits; - }; + 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: {} +}; - Consumer.prototype.componentDidMount = function componentDidMount() { - if (this.context[contextProp]) { - this.context[contextProp].on(this.onUpdate); - } - var observedBits = this.props.observedBits; +var _excluded$o = ["onChange", "chipOptions"], + _excluded2$2 = ["onClick"]; +var EditableChipInput = function EditableChipInput(props) { + var _classNames3; - this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default - : observedBits; - }; + var placeholder = props.placeholder, + onChange = props.onChange, + className = props.className, + disableSaveAction = props.disableSaveAction, + chipInputOptions = props.chipInputOptions; - Consumer.prototype.componentWillUnmount = function componentWillUnmount() { - if (this.context[contextProp]) { - this.context[contextProp].off(this.onUpdate); - } - }; + var onChipInputChange = chipInputOptions.onChange, + _chipInputOptions$chi = chipInputOptions.chipOptions, + chipOptions = _chipInputOptions$chi === void 0 ? {} : _chipInputOptions$chi, + rest = _objectWithoutProperties(chipInputOptions, _excluded$o); - Consumer.prototype.getValue = function getValue() { - if (this.context[contextProp]) { - return this.context[contextProp].get(); - } else { - return defaultValue; - } - }; + var _onClick = chipOptions.onClick, + chipObject = _objectWithoutProperties(chipOptions, _excluded2$2); - Consumer.prototype.render = function render() { - return onlyChild(this.props.children)(this.state.value); - }; + var _React$useState = React.useState(props.value), + _React$useState2 = _slicedToArray(_React$useState, 2), + inputValue = _React$useState2[0], + setInputValue = _React$useState2[1]; - return Consumer; - }(React__default.Component); + var _React$useState3 = React.useState(props.value), + _React$useState4 = _slicedToArray(_React$useState3, 2), + value = _React$useState4[0], + setValue = _React$useState4[1]; - Consumer.contextTypes = (_Consumer$contextType = {}, _Consumer$contextType[contextProp] = _propTypes2.default.object, _Consumer$contextType); + var _React$useState5 = React.useState(false), + _React$useState6 = _slicedToArray(_React$useState5, 2), + showComponent = _React$useState6[0], + setShowComponent = _React$useState6[1]; + 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)); - return { - Provider: Provider, - Consumer: Consumer + var onChipInputChangeHandler = function onChipInputChangeHandler(val) { + setInputValue(val); + if (onChipInputChange) onChipInputChange(val); }; -} -exports.default = createReactContext; -module.exports = exports['default']; -}); + var setDefaultComponent = function setDefaultComponent(updatedValue) { + setInputValue(updatedValue); + setShowComponent(false); + }; -unwrapExports(implementation); + var onSaveChanges = function onSaveChanges() { + if (!isControlled) setValue(inputValue); + if (onChange && inputValue) onChange(inputValue); + setDefaultComponent(inputValue); + }; -var lib = createCommonjsModule(function (module, exports) { + var onChangeHandler = function onChangeHandler(eventType) { + switch (eventType) { + case 'edit': + { + setShowComponent(true); + break; + } -exports.__esModule = true; + case 'hover': + { + break; + } + case 'default': + { + setShowComponent(false); + break; + } + } + }; + var onChipDelete = function onChipDelete(index) { + if (value) { + var updatedValue = _toConsumableArray(value); -var _react2 = _interopRequireDefault(React__default); + updatedValue.splice(index, 1); + if (!isControlled) { + setInputValue(updatedValue); + setValue(updatedValue); + } + if (onChange) onChange(updatedValue); + } + }; -var _implementation2 = _interopRequireDefault(implementation); + 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); + } + })); + }); + } -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + return /*#__PURE__*/React.createElement(Text, { + className: "pt-1" + }, placeholder); + }; -exports.default = _react2.default.createContext || _implementation2.default; -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 + }))); + } -var createContext = unwrapExports(lib); + return /*#__PURE__*/React.createElement("div", { + className: defaultClasses, + "data-test": "DesignSystem-EditableChipInput--Default" + }, renderDefaultState()); + }; + + 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: {} +}; + +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 ManagerReferenceNodeContext = createContext(); -var ManagerReferenceNodeSetterContext = createContext(); +var Step = function Step(props) { + var _classNames; -var Manager = -/*#__PURE__*/ -function (_React$Component) { - _inheritsLoose(Manager, _React$Component); + 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)); - function Manager() { - var _this; + var onClickHandle = function onClickHandle() { + if (disabled) return; + if (onChange) onChange(label, value); + }; - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; + var onKeyDownHandler = function onKeyDownHandler(event) { + if (event.key === 'Enter') { + onClickHandle(); } + }; - _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this; + 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'; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "referenceNode", void 0); +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); - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "setReferenceNode", function (newReferenceNode) { - if (newReferenceNode && _this.referenceNode !== newReferenceNode) { - _this.referenceNode = newReferenceNode; + var onChangeHandler = function onChangeHandler(index, stepLabel, stepValue) { + if (onChange) onChange(index, completed, stepLabel, stepValue); + }; - _this.forceUpdate(); + 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); } }); - - 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; + })); +}; +Stepper.displayName = 'Stepper'; +Stepper.defaultProps = { + completed: -1, + active: 0, + skipIndexes: [] }; -/** - * 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]; - } +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; - return fn.apply(void 0, args); - } -}; -/** - * Sets a ref using either a ref callback or a ref object - */ + var updateNav = function updateNav(type) { + if (type === 'start') { + var _getDateInfo = getDateInfo(startDate), + year = _getDateInfo.year, + month = _getDateInfo.month; -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; + setState({ + yearNav: year, + monthNav: month + }); } -}; - -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; + 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; - - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "state", { - data: undefined, - placement: undefined + var onPasteHandler = function onPasteHandler(_e, val, type) { + setState({ + open: true }); - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "popperInstance", void 0); - - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "popperNode", null); - - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "arrowNode", null); - - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "setPopperNode", function (popperNode) { - if (!popperNode || _this.popperNode === popperNode) return; - setRef(_this.props.innerRef, popperNode); - _this.popperNode = popperNode; - - _this.updatePopperInstance(); - }); + if (type === 'start') { + var placeholderChar = startInputOptions.placeholderChar || '_'; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "setArrowNode", function (arrowNode) { - _this.arrowNode = arrowNode; - }); + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "updateStateModifier", { - enabled: true, - order: 900, - fn: function fn(data) { - var placement = data.placement; + if (d) { + setState({ + startDate: d + }); - _this.setState({ - data: data, - placement: placement - }); + if (endDate) { + var _getDateInfo3 = getDateInfo(endDate), + eYear = _getDateInfo3.year, + eMonth = _getDateInfo3.month, + eDate = _getDateInfo3.date; - return data; - } - }); + if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { + setState({ + endDate: undefined + }); + } + } - _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 (startInputOptions.onPaste) startInputOptions.onPaste(_e, val); + } + } + } - _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); - }); + if (type === 'end') { + var _placeholderChar = endInputOptions.placeholderChar ? endInputOptions.placeholderChar : '_'; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "getPopperPlacement", function () { - return !_this.state.data ? undefined : _this.state.placement; - }); + if (val && !val.includes(_placeholderChar)) { + var _d = translateToDate(inputFormat, val, validators); - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "getArrowStyle", function () { - return !_this.arrowNode || !_this.state.data ? initialArrowStyle : _this.state.data.arrowStyles; - }); + if (_d) { + setState({ + endDate: _d + }); + if (endInputOptions.onPaste) endInputOptions.onPaste(_e, val); + } + } + } + }; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "getOutOfBoundariesState", function () { - return _this.state.data ? _this.state.data.hide : undefined; + var onChangeHandler = function onChangeHandler(_e, val, type) { + setState({ + open: true }); - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "destroyPopperInstance", function () { - if (!_this.popperInstance) return; + if (type === 'start') { + var placeholderChar = startInputOptions.placeholderChar || '_'; - _this.popperInstance.destroy(); + if (val && !val.includes(placeholderChar)) { + var d = translateToDate(inputFormat, val, validators); - _this.popperInstance = null; - }); + if (d && !isNaN(d.getTime())) { + setState({ + startDate: d + }); - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "updatePopperInstance", function () { - _this.destroyPopperInstance(); + if (endDate) { + var _getDateInfo4 = getDateInfo(endDate), + eYear = _getDateInfo4.year, + eMonth = _getDateInfo4.month, + eDate = _getDateInfo4.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 (type === 'end') { + var _placeholderChar2 = endInputOptions.placeholderChar ? endInputOptions.placeholderChar : '_'; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "scheduleUpdate", function () { - if (_this.popperInstance) { - _this.popperInstance.scheduleUpdate(); + if (val && !val.includes(_placeholderChar2)) { + var _d2 = translateToDate(inputFormat, val, validators); + + if (_d2 && !isNaN(_d2.getTime())) setState({ + endDate: _d2 + }); } + } + }; + + var onBlurHandler = function onBlurHandler(_e, val, type) { + setState({ + init: true }); + var hasNumber = /\d/; - return _this; - } + if (type === 'start') { + var _startInputOptions$pl = startInputOptions.placeholderChar, + placeholderChar = _startInputOptions$pl === void 0 ? '_' : _startInputOptions$pl; - var _proto = InnerPopper.prototype; + if (val && hasNumber.test(val) && val.includes(placeholderChar)) { + setState({ + startError: true + }); + } else if (val && !hasNumber.test(val) || !val) { + setState({ + startError: false + }); + } - _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 (!val || val.includes(placeholderChar)) setState({ + startDate: undefined + }); + } - 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 (type === 'end') { + var _endInputOptions$plac = endInputOptions.placeholderChar, + _placeholderChar3 = _endInputOptions$plac === void 0 ? '_' : _endInputOptions$plac; + if (val && hasNumber.test(val) && val.includes(_placeholderChar3)) { + setState({ + endError: true + }); + } else if (val && !hasNumber.test(val) || !val) { + setState({ + endError: false + }); + } - if (prevState.placement !== this.state.placement) { - this.scheduleUpdate(); + if (!val || val.includes(_placeholderChar3)) setState({ + endDate: undefined + }); } }; - _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() - } + var onClearHandler = function onClearHandler(type) { + setState({ + init: true }); - }; - - return InnerPopper; -}(React.Component); - -_defineProperty$1(InnerPopper, "defaultProps", { - placement: 'bottom', - eventsEnabled: true, - referenceElement: undefined, - positionFixed: false -}); - -PopperJS.placements; -function Popper(_ref) { - var referenceElement = _ref.referenceElement, - props = _objectWithoutPropertiesLoose$1(_ref, ["referenceElement"]); - return React.createElement(ManagerReferenceNodeContext.Consumer, null, function (referenceNode) { - return React.createElement(InnerPopper, _extends$2({ - referenceElement: referenceElement !== undefined ? referenceElement : referenceNode - }, props)); - }); -} + if (type === 'start') { + setState({ + startDate: undefined + }); + updateNav('end'); + } -var InnerReference = -/*#__PURE__*/ -function (_React$Component) { - _inheritsLoose(InnerReference, _React$Component); + if (type === 'end') { + setState({ + endDate: undefined + }); + updateNav('start'); + } + }; - function InnerReference() { - var _this; + var onClickHandler = function onClickHandler(type) { + var open = state.open; - for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; + if (!open) { + updateNav(type); } + }; - _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this; + 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; - _defineProperty$1(_assertThisInitialized$1(_assertThisInitialized$1(_this)), "refHandler", function (node) { - setRef(_this.props.innerRef, node); - safeInvoke(_this.props.setReferenceNode, node); - }); + var inputValidator = function inputValidator(val) { + return isValid(validators, val, inputFormat); + }; - return _this; - } + 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]; - var _proto = InnerReference.prototype; + var inputValidator = function inputValidator(val) { + var _val$split = val.split(' - '), + _val$split2 = _slicedToArray(_val$split, 2), + startVal = _val$split2[0], + endVal = _val$split2[1]; - _proto.componentWillUnmount = function componentWillUnmount() { - setRef(this.props.innerRef, null); + return isValid(validators, startVal, inputFormat) && isValid(validators, endVal, inputFormat); }; - _proto.render = function render() { - warning_1(Boolean(this.props.setReferenceNode)); - return unwrapArray(this.props.children)({ - ref: this.refHandler + 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); }; - return InnerReference; -}(React.Component); - -function Reference(props) { - return React.createElement(ManagerReferenceNodeSetterContext.Consumer, null, function (setReferenceNode) { - return React.createElement(InnerReference, _extends$2({ - setReferenceNode: setReferenceNode - }, props)); - }); -} - -var PopperWrapper = /*#__PURE__*/function (_React$Component) { - _inherits$1(PopperWrapper, _React$Component); - - var _super = _createSuper$1(PopperWrapper); - - function PopperWrapper(props) { - var _this; - - _classCallCheck$1(this, PopperWrapper); - - _this = _super.call(this, props); - - _defineProperty$2(_assertThisInitialized$2(_this), "triggerRef", void 0); - - _defineProperty$2(_assertThisInitialized$2(_this), "popupRef", void 0); - - _defineProperty$2(_assertThisInitialized$2(_this), "hoverableDelay", void 0); + var onChangeHandler = function onChangeHandler(_e, val) { + var date = val.split(' - '); + var startVal = date[0]; + var endVal = date[1]; - _defineProperty$2(_assertThisInitialized$2(_this), "_timer", void 0); + if (startValue !== startVal && startVal && !startVal.includes(placeholderChar)) { + var startD = translateToDate(inputFormat, startVal, validators); - _defineProperty$2(_assertThisInitialized$2(_this), "_throttleWait", void 0); + if (startD) { + var isEndDateValid = endValue && !endValue.includes(placeholderChar); + setState({ + startDate: startD, + endDate: isEndDateValid ? endDate : undefined + }); - _defineProperty$2(_assertThisInitialized$2(_this), "offsetMapping", void 0); + if (endDate) { + var _getDateInfo = getDateInfo(endDate), + eYear = _getDateInfo.year, + eMonth = _getDateInfo.month, + eDate = _getDateInfo.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); - }); + if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { + setState({ + endDate: undefined + }); + } + } + } + } - _defineProperty$2(_assertThisInitialized$2(_this), "findDOMNode", function (ref) { - return ReactDOM.findDOMNode(ref.current); - }); + if (endValue !== endVal && endVal && !endVal.includes(placeholderChar)) { + var endD = translateToDate(inputFormat, endVal, validators); + var isStartDateValid = startValue && !startValue.includes(placeholderChar); - _defineProperty$2(_assertThisInitialized$2(_this), "doesEventContainsElement", function (event, ref) { - var el = _this.findDOMNode(ref); + if (endD) { + setState({ + endDate: endD, + startDate: isStartDateValid ? startDate : undefined + }); + } + } - return el && el.contains(event.target); + setState({ + startValue: startVal, + endValue: endVal }); + }; - _defineProperty$2(_assertThisInitialized$2(_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; + var getErrorState = function getErrorState(currentVal, siblingVal) { + var hasNumber = /\d/; - case 'left': - newStyle.marginRight = _this.offsetMapping[offset]; - break; + 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; + } - case 'right': - newStyle.marginLeft = _this.offsetMapping[offset]; - break; - } + return null; + }; - return newStyle; + 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); - _this.state = {}; - _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$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)); - return _this; - } - - _createClass$1(PopperWrapper, [{ - key: "componentDidMount", - value: function componentDidMount() { - this.addBoundaryScrollHandler(); + if (startErr !== null && endErr !== null) { + setState({ + startError: startErr, + endError: endErr + }); } - }, { - 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 (!startVal || startVal.includes(placeholderChar)) setState({ + startDate: undefined + }); + if (!endVal || endVal.includes(placeholderChar)) setState({ + endDate: undefined + }); + }; - if (this.props.open) { - var triggerElement = this.findDOMNode(this.triggerRef); - var zIndex = this.getZIndexForLayer(triggerElement); - this.setState({ - zIndex: zIndex === undefined ? zIndex : zIndex + 1 - }); - } - } - } - }, { - 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; + var onClearHandler = function onClearHandler() { + setState({ + init: true, + startDate: undefined, + endDate: undefined, + yearNav: undefined, + monthNav: undefined + }); + }; - 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; + 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 + })))); +}; - 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 setDate = function setDate(date) { + var d = new Date(); + return new Date(d.setDate(date)); +}; - 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 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: '' + }; +}; - if (on === 'hover') { - var _this$props3 = this.props, - hoverable = _this$props3.hoverable, - onToggle = _this$props3.onToggle; +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); - if (hoverable) { - this.mouseMoveHandler(); - } else { - onToggle(false, 'mouseLeave'); - } - } - } - }, { - key: "getZIndexForLayer", - value: function getZIndexForLayer(node) { - if (node === null) { - return; - } + var _super = _createSuper(DateRangePicker); - 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; + function DateRangePicker(props) { + var _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(); + _classCallCheck(this, DateRangePicker); - _this3.togglePopper('onClick'); - } - }; - var classes = classnames('PopperWrapper-trigger', triggerClass); + _this = _super.call(this, props); - var onOutsideClickHandler = function onOutsideClickHandler(event) { - var _this3$props = _this3.props, - open = _this3$props.open, - closeOnBackdropClick = _this3$props.closeOnBackdropClick; + _defineProperty$1(_assertThisInitialized$1(_this), "monthsInView", void 0); - if (open && closeOnBackdropClick) { - if (!_this3.doesEventContainsElement(event, _this3.popupRef)) { - _this3.togglePopper('outsideClick'); - } - } + _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 /*#__PURE__*/React.createElement(OutsideClick, _extends$3({ - className: classes, - onOutsideClick: onOutsideClickHandler - }, options), trigger); - } - }, { - 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: "render", - value: function render() { - var _this4 = this; - - 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)); - } - }]); + _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; - return PopperWrapper; -}(React.Component); + var _getDateInfo = getDateInfo(disabledBefore), + dbYear = _getDateInfo.year, + dbMonth = _getDateInfo.month, + dbDate = _getDateInfo.date; -_defineProperty$2(PopperWrapper, "defaultProps", { - on: 'click', - offset: 'medium', - closeOnBackdropClick: true, - hoverable: true, - appendToBody: true, - style: {} -}); + var _getDateInfo2 = getDateInfo(disabledAfter), + daYear = _getDateInfo2.year, + daMonth = _getDateInfo2.month, + daDate = _getDateInfo2.date; -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); + return !date ? false : compareDate(date, 'less', dbYear, dbMonth, dbDate) || compareDate(date, 'more', daYear, daMonth, daDate); + }; - var _React$useState = React.useState(!!props.open), - _React$useState2 = _slicedToArray(_React$useState, 2), - open = _React$useState2[0], - setOpen = _React$useState2[1]; + var startError = isError(startDate); + var endError = isError(endDate); - var _React$useState3 = React.useState(false), - _React$useState4 = _slicedToArray(_React$useState3, 2), - init = _React$useState4[0], - setInit = _React$useState4[1]; + var _getDateInfo3 = getDateInfo(endDate), + eYear = _getDateInfo3.year, + eMonth = _getDateInfo3.month, + eDate = _getDateInfo3.date; - 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); + if (compareDate(startDate, 'more', eYear, eMonth, eDate)) { + startError = true; + endError = 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); -}; -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 _excluded$8 = ["type", "onClick"]; -var keyCodes = { - BACKSPACE: 'Backspace', - DELETE: 'Delete', - ENTER: 'Enter' -}; -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, - className = props.className, - autoFocus = props.autoFocus, - onChange = props.onChange, - onBlur = props.onBlur, - onFocus = props.onFocus; - var inputRef = /*#__PURE__*/React.createRef(); + return { + startError: startError, + endError: endError + }; + }); - var _React$useState = React.useState(value || defaultValue), - _React$useState2 = _slicedToArray(_React$useState, 2), - chips = _React$useState2[0], - setChips = _React$useState2[1]; + _defineProperty$1(_assertThisInitialized$1(_this), "getInRangeError", function () { + var rangeLimit = _this.props.rangeLimit; - var _React$useState3 = React.useState(''), - _React$useState4 = _slicedToArray(_React$useState3, 2), - inputValue = _React$useState4[0], - setInputValue = _React$useState4[1]; + if (rangeLimit) { + var _this$state = _this.state, + _startDate2 = _this$state.startDate, + _endDate2 = _this$state.endDate; - var baseProps = extractBaseProps(props); - React.useEffect(function () { - if (value !== undefined) { - setChips(value); - } - }, [value]); - var ChipInputClass = classnames((_classNames = { - ChipInput: true - }, _defineProperty$2(_classNames, 'ChipInput--disabled', disabled), _defineProperty$2(_classNames, 'ChipInput--withChips', chips.length > 0), _classNames), className); + var _getDateInfo4 = getDateInfo(_startDate2), + sYear = _getDateInfo4.year, + sMonth = _getDateInfo4.month, + sDate = _getDateInfo4.date; - var onUpdateChips = function onUpdateChips(updatedChips) { - if (onChange) onChange(updatedChips); - }; + var _getDateInfo5 = getDateInfo(_endDate2), + eYear = _getDateInfo5.year, + eMonth = _getDateInfo5.month, + eDate = _getDateInfo5.date; - var onChipDeleteHandler = function onChipDeleteHandler(index) { - var updatedChips = _toConsumableArray(chips); + var limitDate; - updatedChips.splice(index, 1); + if (_startDate2) { + limitDate = new Date(_startDate2); + limitDate.setDate(sDate + rangeLimit); + return compareDate(limitDate, 'less', eYear, eMonth, eDate + 1); + } - if (!value) { - setChips(updatedChips); - } + if (_endDate2) { + limitDate = new Date(_endDate2); + limitDate.setDate(eDate - rangeLimit); + return compareDate(limitDate, 'more', sYear, sMonth, sDate - 1); + } + } - onUpdateChips(updatedChips); - }; + return false; + }); - var onChipAddHandler = function onChipAddHandler() { - if (!inputValue) return; - var chip = inputValue.trim().toLowerCase(); + _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) : '' + }); + }); - if ((allowDuplicates || chips.indexOf(chip) === -1) && chip) { - var updatedChips = [].concat(_toConsumableArray(chips), [chip]); + _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; - if (!value) { - setChips(updatedChips); + switch (type) { + case 'outsideClick': + _this.setState({ + open: o + }); + + break; + + case 'onClick': + _this.setState({ + open: true + }); + + break; } + }); - onUpdateChips(updatedChips); - setInputValue(''); - } - }; + var _inputFormat = props.inputFormat, + validators = props.validators; - var onDeleteAllHandler = function onDeleteAllHandler() { - var updatedChips = []; + var _startDate = convertToDate(props.startDate, _inputFormat, validators); - if (!value) { - setChips(updatedChips); - } + var _endDate = convertToDate(props.endDate, _inputFormat, validators); - onUpdateChips(updatedChips); - }; + var _this$getDate = _this.getDate(_startDate, _endDate), + startValue = _this$getDate.startValue, + endValue = _this$getDate.endValue; - var onKeyDownHandler = function onKeyDownHandler(event) { - var chipsLength = chips.length; + var _this$getErrors = _this.getErrors(_startDate, _endDate), + _startError = _this$getErrors.startError, + _endError = _this$getErrors.endError; - switch (event.key) { - case keyCodes.DELETE: - case keyCodes.BACKSPACE: - if (inputValue === '' && chipsLength > 0) { - onChipDeleteHandler(chipsLength - 1); - } + _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; + } - break; + _createClass(DateRangePicker, [{ + key: "componentDidUpdate", + 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 + }); + } - case keyCodes.ENTER: - event.preventDefault(); - onChipAddHandler(); - break; - } - }; + if (prevProps.endDate !== this.props.endDate) { + var _this$props4 = this.props, + _inputFormat2 = _this$props4.inputFormat, + _validators = _this$props4.validators; - var onInputChangeHandler = function onInputChangeHandler(e) { - setInputValue(e.target.value); - }; + var _d = convertToDate(this.props.endDate, _inputFormat2, _validators); - var onClickHandler = function onClickHandler() { - var _inputRef$current; + var _val = translateToString(_inputFormat2, _d); - (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus(); - }; + this.setState({ + endDate: _d, + endValue: _val + }); + } - 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); + if (prevProps.open !== this.props.open) { + this.setState({ + open: this.props.open || false + }); + } - 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); + if (prevProps.yearNav !== this.props.yearNav) { + this.setState({ + yearNav: this.props.yearNav + }); } - }, rest)); - }); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-ChipInput" - }, baseProps, { - className: ChipInputClass, - onClick: onClickHandler - }), /*#__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'; -}; -var getPillsAppearance = function getPillsAppearance(isActive) { - return isActive ? 'primary' : 'secondary'; -}; -var getMenu = function getMenu(menus, active) { - var _iterator = _createForOfIteratorHelper(menus), - _step; + if (prevProps.monthNav !== this.props.monthNav) { + this.setState({ + monthNav: this.props.monthNav + }); + } - try { - for (_iterator.s(); !(_step = _iterator.n()).done;) { - var menu = _step.value; + 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; + + var _this$getErrors2 = this.getErrors(_startDate3, _endDate3), + startError = _this$getErrors2.startError, + endError = _this$getErrors2.endError; + + this.setState({ + startError: startError, + endError: endError + }); + + 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); + } + } - if (active.name && menu.name === active.name || active.link && menu.link === active.link) { - return menu; + if (this.state.startDate && this.state.endDate) { + this.setState({ + open: false + }); + } } + } + }, { + 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); - 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 _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 + })); } - } catch (err) { - _iterator.e(err); - } finally { - _iterator.f(); - } + }, { + key: "render", + value: function render() { + var _classNames; - 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 _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)); - return false; -}; + 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()); + } -var MenuItem = function MenuItem(props) { - var _classNames; + return this.renderCalendar(); + } + }]); - 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 DateRangePicker; +}(React.Component); - var onClickHandler = function onClickHandler() { - if (onClick) onClick(menu); - }; +_defineProperty$1(DateRangePicker, "utils", { + getCurrentWeek: getCurrentWeek, + getPreviousWeek: getPreviousWeek, + getPreviousMonth: getPreviousMonth, + getPrevious90Days: getPrevious90Days, + getCustomDates: getCustomDates, + getCurrentYear: getCurrentYear, + getCurrentMonth: getCurrentMonth +}); - 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)); +_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 renderSubMenu = function renderSubMenu() { - if (hasSubmenu) { - return /*#__PURE__*/React.createElement(Icon, { - className: "mx-4", - name: isChildrenVisible ? 'keyboard_arrow_up' : 'keyboard_arrow_down', - appearance: "subtle" - }); - } +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; - if (menu.count !== undefined) { - var _classNames2; + 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]; - 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); - } + React.useEffect(function () { + setActiveTab(props.active && props.active < totalTabs ? props.active : 0); + }, [props.active]); + var wrapperClass = classnames(_defineProperty$1({}, 'TabsWrapper', true), className); - return null; + var tabClickHandler = function tabClickHandler(tabIndex) { + setActiveTab(tabIndex); + if (onTabChange) onTabChange(tabIndex); }; - if (!expanded && !menu.icon) return null; - return /*#__PURE__*/React.createElement("div", _extends$3({ - className: ItemClass + 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, { - onClick: onClickHandler + className: wrapperClass }), /*#__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 + className: "TabsWrapper-header" + }, TabsHeader), /*#__PURE__*/React.createElement("div", { + className: "TabsWrapper-content", + "data-test": "DesignSystem-Tabs--Content" + }, tabs[active])); }; +TabsWrapper.displayName = 'TabsWrapper'; -/** - * ####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 _React$useState = React.useState({}), - _React$useState2 = _slicedToArray(_React$useState, 2), - menuState = _React$useState2[0], - setMenuState = _React$useState2[1]; +var Tab = function Tab(props) { + var children = props.children; + return /*#__PURE__*/React.createElement(React.Fragment, null, children); +}; +Tab.displayName = 'Tab'; - var baseProps = extractBaseProps(props); - React.useEffect(function () { - if (props.active) { - var currMenu = getMenu(menus, props.active); - if (currMenu) updateMenuState(currMenu, true); - } - }, [props.active]); +var getChildrenArray = function getChildrenArray(children) { + return Array.isArray(children) ? children : [children]; +}; - var updateMenuState = function updateMenuState(menu, val) { - var currMenu = getMenu(menus, menu); +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; +}; - if (currMenu) { - var nameSplit = currMenu.name.split('.'); +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; +}; - if (nameSplit.length > 1 || currMenu.subMenu) { - var name = nameSplit[0]; +var Tabs = function Tabs(props) { + var _classNames2, _classNames4; - if (autoCollapse) { - setMenuState(_defineProperty$2({}, name, val || !menuState[name])); - } else { - var menuData = _objectSpread2({}, menuState); + 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.createElement(React.Fragment, null); + var totalTabs = tabs.length; - menuData[name] = val !== undefined ? val : !menuData[name]; - setMenuState(menuData); - } - } else { - if (autoCollapse) { - if (!expanded) setMenuState({}); - } - } - } - }; + 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 onClickHandler = function onClickHandler(menu) { - if (menu.subMenu) { - if (!expanded) { - if (onClick) onClick(menu.subMenu[0]); - } else { - updateMenuState(menu); - } - } else { - if (onClick) onClick(menu); + React.useEffect(function () { + if (props.activeIndex !== undefined && props.activeIndex < totalTabs) { + setActiveTab(props.activeIndex); } + }, [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 getPillsClass = function getPillsClass(disabled) { + var _classNames3; + + return classnames((_classNames3 = {}, _defineProperty$1(_classNames3, 'Tab-pills', true), _defineProperty$1(_classNames3, 'Tab-pills--disabled', disabled), _classNames3)); }; - var renderList = function renderList() { - var list = menus.map(function (menu, index) { - var _classNames; + var getActiveTabClass = function getActiveTabClass() { + var activeTab; + var activeTabClass; - 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) - }); - })); - }); - return /*#__PURE__*/React.createElement(React.Fragment, null, list); + if (tabs && tabs.length && tabs[activeIndex] && 'props' in tabs[activeIndex]) { + var _activeTab$props; + + 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; + } + + return activeTabClass; }; - 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 activeTabClass = getActiveTabClass(); + var tabContentClass = classnames((_classNames4 = {}, _defineProperty$1(_classNames4, 'TabsWrapper-content', true), _defineProperty$1(_classNames4, "".concat(activeTabClass), activeTabClass), _classNames4)); -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 tabClickHandler = function tabClickHandler(tabIndex, isKeyboard) { + if (props.activeIndex === undefined) { + var _tabRefs$tabIndex; - var onClickHandler = function onClickHandler(menu) { - return function () { - if (onClick) onClick(menu); - }; + setActiveTab(tabIndex); + if (!isKeyboard) (_tabRefs$tabIndex = tabRefs[tabIndex]) === null || _tabRefs$tabIndex === void 0 ? void 0 : _tabRefs$tabIndex.blur(); + } + + if (onTabChange) onTabChange(tabIndex); }; - var getPillsClass = function getPillsClass(disabled) { - var _classNames2; + 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(); + } - return classnames((_classNames2 = {}, _defineProperty$2(_classNames2, 'HorizontalNav-pills', true), _defineProperty$2(_classNames2, 'HorizontalNav-pills--disabled', disabled), _classNames2)); + if (event.key === 'ArrowRight' && tabIndex < tabs.length) { + var nextElement = tabRefs[tabIndex + 1]; + nextElement === null || nextElement === void 0 ? void 0 : nextElement.focus(); + } }; - var renderIcon = function renderIcon(menu, isActive) { - if (menu.count !== undefined) { - var count = menu.count > 99 ? '99+' : menu.count; + var renderInfo = function renderInfo(tab, index) { + var _ref = tab, + count = _ref.count, + icon = _ref.icon, + disabled = _ref.disabled, + iconType = _ref.iconType; + + if (count !== undefined) { return /*#__PURE__*/React.createElement(Pills, { - subtle: menu.disabled, - className: getPillsClass(menu.disabled), - appearance: getPillsAppearance(isActive), - "data-test": "DesignSystem-HorizontalNav--Pills" + "data-test": "DesignSystem-Tabs--Pills", + className: getPillsClass(disabled), + appearance: activeIndex === index ? 'primary' : 'secondary' }, count); } - if (menu.icon) { + var iconClass = classnames(_defineProperty$1({}, 'Tab-selected', !disabled && activeIndex === index)); + + if (icon) { + var iconAppearance = activeIndex === index ? 'info' : disabled ? 'disabled' : 'subtle'; return /*#__PURE__*/React.createElement(Icon, { - className: "mr-3", - name: menu.icon, - appearance: getIconAppearance(isActive, menu.disabled), - "data-test": "DesignSystem-HorizontalNav--Icon" + "data-test": "DesignSystem-Tabs--Icon", + className: "mr-4 ".concat(iconClass), + name: icon, + type: iconType, + appearance: iconAppearance }); } return null; }; - var list = menus.map(function (menu, index) { - var _classNames3; + var renderDismissIcon = function renderDismissIcon(tab, index, onDismiss) { + var _ref2 = tab, + disabled = _ref2.disabled, + label = _ref2.label; + var iconAppearance = activeIndex === index ? 'info' : disabled ? 'disabled' : 'subtle'; - 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)); + 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 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; + + 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({}, baseProps, { - className: classes - }), list); + return /*#__PURE__*/React.createElement("div", _extends$2({ + "data-test": "DesignSystem-Tabs" + }, baseProps, { + className: wrapperClass + }), /*#__PURE__*/React.createElement("div", { + className: headerClass, + "data-test": "DesignSystem-Tabs--Header" + }, renderTabs, inlineComponent), children && /*#__PURE__*/React.createElement("div", { + className: tabContentClass, + "data-test": "DesignSystem-Tabs--Content" + }, tabs[activeIndex])); +}; +Tabs.displayName = 'Tabs'; +Tabs.defaultProps = { + withSeparator: true, + tabs: [] }; -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 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 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 -}); + if (validType.charAt(0) === '.') { + return fileName.toLowerCase().endsWith(validType); + } -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 - })); + if (validType.endsWith('/*')) { + return baseMimeType === validType.replace(/\/.*$/, ''); + } + + return mimeType === 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() { + for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) { + fns[_key] = arguments[_key]; + } + + 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]; + } + + return fns.some(function (fn) { + if (!isPropagationStopped(event) && fn) { + fn.apply(void 0, [event].concat(args)); + } -Dialog.displayName = 'Dialog'; -Dialog.defaultProps = { - dimension: 'small', - primaryButtonAppearance: 'primary', - secondaryButtonAppearance: 'basic' + return isPropagationStopped(event); + }); + }; }; +var reducer = function reducer(state, action) { + switch (action.type) { + case 'focus': + return _objectSpread2(_objectSpread2({}, state), {}, { + isFocused: true + }); -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; + case 'blur': + return _objectSpread2(_objectSpread2({}, state), {}, { + isFocused: false + }); - var secondaryBtns = (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.querySelectorAll('.Button--basic'); - var secondaryBtn = secondaryBtns[secondaryBtns.length - 1]; + case 'openDialog': + return _objectSpread2(_objectSpread2({}, state), {}, { + isFileDialogActive: true + }); - if (secondaryBtn) { - window.requestAnimationFrame(function () { - return secondaryBtn.focus({ - preventScroll: true - }); - }); - } - } - } - }, [open]); + case 'closeDialog': + return _objectSpread2(_objectSpread2({}, state), {}, { + isFileDialogActive: false + }); - 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); + case 'setDraggedFiles': + /* eslint no-case-declarations: 0 */ + var isDragActive = action.isDragActive, + draggedFiles = action.draggedFiles; + return _objectSpread2(_objectSpread2({}, state), {}, { + draggedFiles: draggedFiles, + isDragActive: isDragActive + }); - return /*#__PURE__*/React.createElement(Button, _extends$3({}, options, { - key: index - })); - })); - } + case 'setFiles': + return _objectSpread2(_objectSpread2({}, state), {}, { + acceptedFiles: action.acceptedFiles, + fileRejections: action.fileRejections + }); - return /*#__PURE__*/React.createElement("div", _extends$3({ - "data-test": "DesignSystem-OverlayFooter", - ref: wrapperRef - }, baseProps, { - className: classes - }), children); + case 'reset': + return _objectSpread2(_objectSpread2({}, state), {}, { + isFileDialogActive: false, + isDragActive: false, + draggedFiles: [], + acceptedFiles: [], + fileRejections: [] + }); + + default: + return state; + } }; -OverlayFooter.displayName = 'OverlayFooter'; -var OverlayHeader = function OverlayHeader(props) { - var _classNames2; +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 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)); +var isDefined = function isDefined(value) { + return value !== undefined && value !== null; }; -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$3({ - "data-test": "DesignSystem-OverlayBody" - }, baseProps, { - className: classes - }), children); +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) + }; }; -OverlayBody.defaultProps = { - stickFooter: true, - withFooter: true +var getTooLargeRejectionErr = function getTooLargeRejectionErr(maxSize) { + return { + type: 'FILE_TOO_LARGE', + message: "File is larger than ".concat(maxSize, " bytes") + }; }; -OverlayBody.displayName = 'OverlayBody'; +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)]; + } + } -var getWrapperElement = function getWrapperElement() { - var element = document.querySelector('.Overlay-wrapper'); + 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 (element === null) { - element = document.createElement('div'); - element.classList.add('Overlay-wrapper'); - document.body.appendChild(element); + if (!multiple && files.length > 1) { + return 'TOO_MANY_FILES'; } - 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 typeError = files.every(function (file) { + var _fileAccepted = fileAccepted(file, accept), + _fileAccepted2 = _slicedToArray(_fileAccepted, 1), + accepted = _fileAccepted2[0]; + + return !accepted; }); - var zIndex = -1; - siblings.forEach(function (element) { - var prevZIndex = parseInt(window.getComputedStyle(element).zIndex || '0', 10); - zIndex = Math.max(zIndex, prevZIndex + 10); + 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 _fileMatchSize3 = fileMatchSize(file, minSize, maxSize), + _fileMatchSize4 = _slicedToArray(_fileMatchSize3, 1), + sizeMatch = _fileMatchSize4[0]; + + return accepted && sizeMatch; }); - return zIndex > 0 ? zIndex : undefined; }; -/** - * ** 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); +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); +} + +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); +} - var _super = _createSuper$1(Modal); +function isDragEvt(value) { + return !!value.dataTransfer; +} - function Modal(props) { - var _this; +function toFileWithPath(file, path) { + var f = withMimeType(file); - _classCallCheck$1(this, Modal); + 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 + }); + } - _this = _super.call(this, props); + return f; +} - _defineProperty$2(_assertThisInitialized$2(_this), "modalRef", /*#__PURE__*/React.createRef()); +function withMimeType(file) { + var name = file.name; + var hasExtension = name && name.lastIndexOf('.') !== -1; - _defineProperty$2(_assertThisInitialized$2(_this), "element", void 0); + if (hasExtension && !file.type) { + var ext = name.split('.').pop().toLowerCase(); + var type = COMMON_MIME_TYPES.get(ext); - _this.element = getWrapperElement(); - _this.state = { - open: props.open, - animate: props.open - }; - _this.onOutsideClickHandler = _this.onOutsideClickHandler.bind(_assertThisInitialized$2(_this)); - return _this; + if (type) { + Object.defineProperty(file, 'type', { + value: type, + writable: false, + configurable: false, + enumerable: true + }); + } } - _createClass$1(Modal, [{ - key: "componentDidUpdate", - value: function componentDidUpdate(prevProps) { - var _this2 = this; + return file; +} - 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); - }); - } - } - } - }, { - key: "onOutsideClickHandler", - value: function onOutsideClickHandler(event) { - var _this$props = this.props, - backdropClose = _this$props.backdropClose, - onClose = _this$props.onClose; - var open = this.state.open; +function getInputFiles(evt) { + var files = isInput(evt.target) ? evt.target.files ? fromList(evt.target.files) : [] : []; + return files.map(function (file) { + return toFileWithPath(file); + }); +} - if (open) { - if (onClose) onClose(event, 'OutsideClick');else if (typeof backdropClose === 'function') backdropClose(event, 'OutsideClick'); - } - } - }, { - key: "render", - value: function render() { - var _classNames, _classNames2, _classNames3; +function isInput(value) { + return value !== null; +} - 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 - })); - } - }]); +function getDataTransferFiles(_x2, _x3) { + return _getDataTransferFiles.apply(this, arguments); +} - return Modal; -}(React.Component); +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; + } -_defineProperty$2(Modal, "defaultProps", { - dimension: 'medium' -}); + items = fromList(dt.items).filter(function (item) { + return item.kind === 'file'; + }); -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'); - } - }))); -}; -ModalHeader.displayName = 'ModalHeader'; + if (!(type !== 'drop')) { + _context3.next = 4; + break; + } + + return _context3.abrupt("return", items); + + case 4: + _context3.next = 6; + return Promise.all(items.map(toFilePromises)); + + case 6: + files = _context3.sent; + return _context3.abrupt("return", noIgnoredFiles(flatten(files))); + + case 8: + return _context3.abrupt("return", noIgnoredFiles(fromList(dt.files).map(function (file) { + return toFileWithPath(file); + }))); -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'; + case 9: + case "end": + return _context3.stop(); + } + } + }, _callee3); + })); + return _getDataTransferFiles.apply(this, arguments); +} -var ModalFooter = function ModalFooter(props) { - var _classNames; +function noIgnoredFiles(files) { + return files.filter(function (file) { + return FILES_TO_IGNORE.indexOf(file.name) === -1; + }); +} - 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 fromList(items) { + var files = []; // tslint:disable: prefer-for-of -var FullscreenModal = /*#__PURE__*/function (_React$Component) { - _inherits$1(FullscreenModal, _React$Component); + for (var i = 0; i < items.length; i++) { + var file = items[i]; + files.push(file); + } - var _super = _createSuper$1(FullscreenModal); + return files; +} - function FullscreenModal(props) { - var _this; +function toFilePromises(item) { + if (typeof item.webkitGetAsEntry !== 'function') { + return fromDataTransferItem(item); + } - _classCallCheck$1(this, FullscreenModal); + var entry = item.webkitGetAsEntry(); - _this = _super.call(this, props); + if (entry && entry.isDirectory) { + return fromDirEntry(entry); + } - _defineProperty$2(_assertThisInitialized$2(_this), "modalRef", /*#__PURE__*/React.createRef()); + return fromDataTransferItem(item); +} - _defineProperty$2(_assertThisInitialized$2(_this), "element", void 0); +function flatten(items) { + return items.reduce(function (acc, files) { + return [].concat(_toConsumableArray(acc), _toConsumableArray(Array.isArray(files) ? flatten(files) : [files])); + }, []); +} - _this.element = getWrapperElement(); - _this.state = { - open: props.open, - animate: props.open - }; - return _this; +function fromDataTransferItem(item) { + var file = item.getAsFile(); + + if (!file) { + return Promise.reject("".concat(item, " is not a File")); } - _createClass$1(FullscreenModal, [{ - 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: "render", - value: function render() { - var _classNames; + }, _callee4); + })); + return _fromEntry.apply(this, arguments); +} - 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); +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); + + case 4: + files = _context.sent; + resolve(files); + _context.next = 11; + break; + + case 8: + _context.prev = 8; + _context.t0 = _context["catch"](1); + reject(_context.t0); + + case 11: + _context.next = 16; + break; + + case 13: + items = Promise.all(batch.map(fromEntry)); + entries.push(items); // Continue reading + + readEntries(); + + case 16: + case "end": + return _context.stop(); + } + } + }, _callee, null, [[1, 8]]); + })); + + return function (_x5) { + return _ref2.apply(this, arguments); + }; + }(), function (err) { + reject(err); + }); } - }]); - return FullscreenModal; -}(React.Component); + readEntries(); + }); +} -_defineProperty$2(FullscreenModal, "defaultProps", { - dimension: 'medium' -}); +function fromFileEntry(_x6) { + return _fromFileEntry.apply(this, arguments); +} -var sidesheetWidth = { - regular: '6', - large: '10' -}; +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 Sidesheet = /*#__PURE__*/function (_React$Component) { - _inherits$1(Sidesheet, _React$Component); + case 1: + case "end": + return _context5.stop(); + } + } + }, _callee5); + })); + return _fromFileEntry.apply(this, arguments); +} - var _super = _createSuper$1(Sidesheet); +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 Sidesheet(props) { - var _this; + var _useReducer = useReducer(reducer, initialState), + _useReducer2 = _slicedToArray(_useReducer, 2), + state = _useReducer2[0], + dispatch = _useReducer2[1]; - _classCallCheck$1(this, Sidesheet); + 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), "sidesheetRef", /*#__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); }; - _this.onOutsideClickHandler = _this.onOutsideClickHandler.bind(_assertThisInitialized$2(_this)); - return _this; - } + }, [inputRef, isFileDialogActive, onFileDialogCancel]); // Cb to open the file dialog when SPACE/ENTER occurs on the dropzone - _createClass$1(Sidesheet, [{ - 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.sidesheetRef - }); - 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: "onOutsideClickHandler", - value: function onOutsideClickHandler(event) { - var onClose = this.props.onClose; - var open = this.state.open; + }, [rootRef, inputRef]); // Update focus state for the dropzone - if (open) { - if (onClose) onClose(event, 'OutsideClick'); - } + 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; } - }, { - 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$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.preventDefault(); + dragTargetsRef.current = []; + }; + + useEffect$2(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 = useCallback(function (event) { + event.preventDefault(); + event.persist(); + dragTargetsRef.current = [].concat(_toConsumableArray(dragTargetsRef.current), [event.target]); + + 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 - })); + + dispatch({ + draggedFiles: files, + isDragActive: true, + type: 'setDraggedFiles' + }); + + if (onDragEnter) { + onDragEnter(event); + } + }); } - }]); + }, [getFilesFromEvent, onDragEnter]); + var onDragOverCb = useCallback(function (event) { + event.preventDefault(); + event.persist(); - return Sidesheet; -}(React.Component); + if (event.dataTransfer) { + try { + event.dataTransfer.dropEffect = 'copy'; + } catch (_unused) {} + /* eslint-disable-line no-empty */ -_defineProperty$2(Sidesheet, "defaultProps", { - dimension: 'regular', - stickFooter: false, - headerOptions: {} -}); + } -var Collapsible = function Collapsible(props) { - var _classNames, _classNames4; + if (isEvtWithFiles(event) && onDragOver) { + onDragOver(event); + } - var expanded = props.expanded, - hoverable = props.hoverable, - expandedWidth = props.expandedWidth, - height = props.height, - children = props.children, - className = props.className, - onToggle = props.onToggle; + 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); - var _React$useState = React.useState(true), - _React$useState2 = _slicedToArray(_React$useState, 2), - isClicked = _React$useState2[0], - setIsClicked = _React$useState2[1]; + if (targetIdx !== -1) { + targets.splice(targetIdx, 1); + } - var _React$useState3 = React.useState(false), - _React$useState4 = _slicedToArray(_React$useState3, 2), - seperator = _React$useState4[0], - setSeperator = _React$useState4[1]; + dragTargetsRef.current = targets; - var ref = /*#__PURE__*/React.createRef(); - var baseProps = extractBaseProps(props); - React.useEffect(function () { - if (ref.current) { - setSeperator(ref.current.scrollHeight > ref.current.clientHeight); + if (targets.length > 0) { + return; } - }); - 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)); - var onToggleHandler = function onToggleHandler(newExpanded, type) { - return function () { - if (onToggle) { - if (type === 'mouseenter' || type === 'mouseleave') { - if (isClicked && expanded || !hoverable) return; - setIsClicked(false); + dispatch({ + isDragActive: false, + type: 'setDraggedFiles', + draggedFiles: [] + }); + + if (isEvtWithFiles(event) && onDragLeave) { + onDragLeave(event); + } + }, [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; } - if (type === 'click') { - setIsClicked(true); + 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; + + 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); } - onToggle(newExpanded); - } - }; - }; + if (fileRejections.length > 0 && onDropRejected) { + onDropRejected(event, fileRejections); + } - 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 + if (acceptedFiles.length > 0 && onDropAccepted) { + onDropAccepted(event, acceptedFiles); + } + }); } - }), /*#__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 - })))); + + dispatch({ + type: 'reset' + }); + }, [multiple, accept, minSize, maxSize, getFilesFromEvent, onDrop, onDropAccepted, onDropRejected]); + + var composeDragHandler = function composeDragHandler(fn) { + return disabled ? null : fn; + }; + + 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) + }); +}; +DropzoneBase.displayName = 'DropzoneBase'; +DropzoneBase.defaultProps = { + disabled: false, + getFilesFromEvent: fromEvent, + maxSize: Infinity, + minSize: 0, + multiple: true, + preventDropOnDocument: true, + validator: function validator() { + return null; + } }; -Collapsible.displayName = 'Collapsible'; -Collapsible.defaultProps = { - expanded: false, - hoverable: true, - height: '100%', - expandedWidth: 'var(--spacing-9)' + +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 Status = function Status(props) { +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) + })); +}; + +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'; + +var DropzoneError = function DropzoneError(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); + 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'; - 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 Dropzone = function Dropzone(props) { + var _classNames, _classNames2; - return t; - }; + var type = props.type, + sizeLabel = props.sizeLabel, + className = props.className, + formatLabel = props.formatLabel, + sampleFileLink = props.sampleFileLink, + disabled = props.disabled; - 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 _DropzoneBase = DropzoneBase(props), + open = _DropzoneBase.open, + getRootProps = _DropzoneBase.getRootProps, + getInputProps = _DropzoneBase.getInputProps, + isDragActive = _DropzoneBase.isDragActive, + isDragReject = _DropzoneBase.isDragReject, + fileError = _DropzoneBase.fileError; - 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 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)); - 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 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))); + }; - case 'sending': - return /*#__PURE__*/React.createElement(Text, _extends$3({}, baseProps, { - appearance: "subtle", - size: "small", - className: TextClass - }), sendingText); + return /*#__PURE__*/React.createElement("div", _extends$2({}, getRootProps(), baseProps, { + className: DropzoneClass, + "data-test": "DesignSystem-Dropzone" + }), renderDropzone()); +}; +Dropzone.displayName = 'Dropzone'; +Dropzone.defaultProps = _objectSpread2(_objectSpread2({}, DropzoneBase.defaultProps), {}, { + type: 'standard' +}); - 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 FileUploaderFormat = function FileUploaderFormat(props) { + var formatLabel = props.formatLabel; - default: - return null; + if (formatLabel) { + return /*#__PURE__*/React.createElement(Text, { + size: "small", + appearance: "subtle", + className: "mt-4" + }, formatLabel); } -}; -Status.displayName = 'Status'; -var Box = function Box(props) { - var _classNames; + return null; +}; +FileUploaderFormat.displayName = 'FileUploaderFormat'; - var children = props.children, - type = props.type, - isTyping = props.isTyping, - statusType = props.statusType, - withStatus = props.withStatus, - onClick = props.onClick, - className = props.className; +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 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); + 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); + } + })); }; -Box.displayName = 'Box'; +FileUploaderButton.defaultProps = { + uploadButtonLabel: 'Upload files', + disabled: false, + multiple: false +}; +FileUploaderButton.displayName = 'FileUploaderButton'; -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 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); - - if (isTyping && type === 'incoming') { - return /*#__PURE__*/React.createElement(Text, _extends$3({}, baseProps, { - appearance: 'subtle', - size: 'small', - className: className - }), typingText); - } - - return /*#__PURE__*/React.createElement(Text, _extends$3({}, baseProps, { - className: className, - appearance: statusType === 'sending' ? 'subtle' : 'default' - }), text); -}; -MessageText.defaultProps = { - text: '', - typingText: 'Typing..' + 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); + }; - 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); + }; -/** - * **`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; - 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 + }; + 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.34.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..3264e24ea1 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1,8 +1,8 @@ /** - * Generated on: 1627478630381 + * Generated on: 1715851595353 * Package: @innovaccer/design-system - * Version: v2.2.1 + * Version: v2.34.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,9662 +4073,16685 @@ }; 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; + 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 + }); + }; - if (currSelection.end > selection.end) { - removedLength = insertedStringLength ? getSelectionLength(selection) : 0; - } else if (inputVal.length < value.length) { - removedLength = value.length - inputVal.length; - } + var PlaceholderParagraph = function PlaceholderParagraph(props) { + var _a, _b; - cursorPosition += insertedStringLength; - var maskedVal = value.split(''); + 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' + }; - for (var i = 0; i < insertedStringLength; i++) { - maskedVal[start + i] = updatedVal[i]; - } + var PlaceholderImage = function PlaceholderImage(props) { + var _a; - for (var i = 0; i < removedLength; i++) { - var index = start + insertedStringLength + i; - maskedVal[index] = getPlaceholderValue(index, index); - } + 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 newCursorPosition = getNewCursorPosition(removedLength ? 'left' : 'right', cursorPosition); + var Placeholder = function Placeholder(props) { + var _a, _b; - if (removedLength === 1 && !updatedVal.length && !isEditable(cursorPosition) && newCursorPosition > 0) { - cursorPosition = newCursorPosition; - cursorPosition--; - maskedVal[cursorPosition] = placeholderChar; - } else if (removedLength !== 1) { - cursorPosition = newCursorPosition; - } + 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 newValue = maskedVal.slice(0, mask.length).join(''); - window.requestAnimationFrame(function () { - return setCursorPosition(cursorPosition); - }); + var Loading = function Loading(props) { + var loadingType = props.loadingType, + optionIndex = props.optionIndex; + var placeholderSizes = ['medium', 'large']; + var size = placeholderSizes[(optionIndex + 2) % 2]; - if (isValid(validators, newValue)) { - setValue(newValue); - if (onChange) onChange(e, newValue); - } - }; + switch (loadingType) { + case 'DEFAULT': + return /*#__PURE__*/React__namespace.createElement(PlaceholderParagraph, { + length: size, + "data-test": "DesignSystem-Dropdown--PlaceholderParagraph" + }); - var onBlurHandler = function onBlurHandler(e) { - var inputVal = e.currentTarget.value; + 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" + })); - if (clearOnEmptyBlur) { - if (inputVal === getPlaceholderValue()) { - setValue(''); - inputVal = ''; - } - } + 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" + })); - if (onBlur) onBlur(e, inputVal); - if (deferId.current) window.cancelAnimationFrame(deferId.current); - }; + case 'WITH_CHECKBOX': + return /*#__PURE__*/React__namespace.createElement(Placeholder, { + withImage: 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 '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" + })); + } - var onFocusHandler = function onFocusHandler(e) { - deferId.current = window.requestAnimationFrame(updateSelection); + return null; + }; - if (!value) { - setValue(getPlaceholderValue()); - window.requestAnimationFrame(function () { - return setSelectionPos(getDefaultSelection()); - }); + 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: "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"))); + }; - if (onFocus) onFocus(e); - }; - - var classes = classNames__default['default']({ - 'd-flex flex-column flex-grow-1': true - }, className); - 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 + var alignmentMapping = { + right: 'bottom-start', + left: 'bottom-end' }; - var Label = function Label(props) { - var _a; + var DropdownList = function DropdownList(props) { + var _a, _b, _c; - var required = props.required, - optional = props.optional, - withInput = props.withInput, - disabled = props.disabled, - children = props.children, + 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, - rest = __rest(props, ["required", "optional", "withInput", "disabled", "children", "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; - var onCloseHandler = function onCloseHandler() { - if (onClose) onClose(); + case 'ArrowDown': + e.preventDefault(); + onArrowClick(e, 'down'); + return; + + 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; - - var newStyle = __assign(__assign({}, style), oldStyle); + if (end === void 0) { + end = mask.length - 1; + } - var position = placement ? placement.split('-')[0] : placement; + 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); - 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; + var _d = React__namespace.useState(defaultValue || valueProp || ''), + value = _d[0], + setValue = _d[1]; - case 'right': - newStyle.marginLeft = _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; - return newStyle; + 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 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); + el.setSelectionRange(start, end); + } + }, [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; + } - _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'; + if (lockIndex === -1) { + fillValues(newValues, oldIndex, newIndex, newValue); + } else { + var lockValue = oldValues[lockIndex]; + fillValues(oldValues, oldIndex, lockIndex, lockValue); + return oldValues; + } - 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; + return newValues; + }; - 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'; + _this.onReleaseHandler = function (newValue, index) { + var onRangeRelease = _this.props.onRangeRelease; - 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 handleProps = _this.getHandleValues(_this.props); - var Pagination = function Pagination(props) { - var _a, _b, _c; + var newValues = _this.getNewHandleValues(newValue, index); - var type = props.type, - totalPages = props.totalPages, - onPageChange = props.onPageChange, - className = props.className; - var baseProps = extractBaseProps(props); + if (onRangeRelease) { + var range = newValues; + onRangeRelease(range); + } - var _d = React__namespace.useState(props.page), - page = _d[0], - setPage = _d[1]; + handleProps.forEach(function (handle, i) { + if (handle.onRelease) handle.onRelease(newValues[i]); + }); + }; - var _e = React__namespace.useState(false), - init = _e[0], - setInit = _e[1]; + _this.onChangeHandler = function (newValue, index) { + var onRangeChange = _this.props.onRangeChange; - 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 handleProps = _this.getHandleValues(_this.props); - var inputChangeHandler = function inputChangeHandler(e) { - e.preventDefault(); - var val = +e.target.value.trim(); + var oldValues = handleProps.map(function (handle) { + return handle.value; + }); - if (val >= 0 && val <= totalPages) { - if (!init) setInit(true); - setPage(val); - } - }; + var newValues = _this.getNewHandleValues(newValue, index); - var onClickHandler = function onClickHandler(buttonType) { - setInit(true); + if (!arraysEqual(newValues, oldValues)) { + if (onRangeChange) { + var range = newValues; + onRangeChange(range); + } - switch (buttonType) { - case 'first': - setPage(1); - break; + handleProps.forEach(function (handle, i) { + if (handle.onChange) handle.onChange(newValues[i]); + }); + } + }; - case 'last': - setPage(totalPages); - break; + _this.formatLabel = function (value) { + var labelRenderer = _this.props.labelRenderer; + var labelValue = value.toFixed(_this.state.labelPrecision); - case 'prev': - if (page > 1) setPage(page - 1); - break; + if (typeof labelRenderer === 'function') { + return labelRenderer(Number(labelValue)); + } - case 'next': - if (page < totalPages) setPage(page + 1); - break; - } - }; + return labelValue; + }; - 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 - }; + _this.renderHandles = function () { + var _a = _this.props, + disabled = _a.disabled, + max = _a.max, + min = _a.min, + stepSize = _a.stepSize; - var EditableInput = function EditableInput(props) { - var _a, _b, _c, _d; + var handleProps = _this.getHandleValues(_this.props); - 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 (handleProps.length === 0) { + return null; + } - var onInputChange = inputOptions.onChange, - rest = __rest(inputOptions, ["onChange"]); + 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 _e = React__namespace.useState(value), - inputValue = _e[0], - setInputValue = _e[1]; + _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 _f = React__namespace.useState(false), - editing = _f[0], - setEditing = _f[1]; + var handles = _this.getHandleValues(_this.props); - var _g = React__namespace.useState(false), - showComponent = _g[0], - setShowComponent = _g[1]; + var activeLabels = handles.map(function (handle) { + return handle.value.toFixed(_this.state.labelPrecision); + }); - 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 _loop_1 = function _loop_1(i, offsetRatio) { + var _a; - var setDefaultComponent = function setDefaultComponent() { - setInputValue(value); - setEditing(false); - setShowComponent(false); - }; + var offsetPercentage = formatPercentage(offsetRatio); + var style = { + left: offsetPercentage + }; + var active = !disabled && activeLabels.indexOf(i.toFixed(_this.state.labelPrecision)) !== -1; - var onSaveChanges = function onSaveChanges() { - if (onChange) onChange(inputValue); - }; + var onClickHandler = function onClickHandler(event) { + if (!_this.props.disabled) { + var foundHandle = _this.nearestHandleForValue(_this.handleElements, function (handle) { + return handle.mouseEventClientOffset(event); + }); - var onInputChangeHandler = function onInputChangeHandler(e) { - setInputValue(e.target.value); - if (onInputChange) onInputChange(e); - }; + if (foundHandle) { + foundHandle.changeValue(i); + } + } + }; - var onChangeHandler = function onChangeHandler(eventType) { - var _a; + 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)))); + }; - switch (eventType) { - case 'edit': - (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus(); - setEditing(true); + for (var i = min, offsetRatio = 0; i < max || approxEqual(i, max); i += labelStepSize, offsetRatio += stepSizeRatio) { + _loop_1(i, offsetRatio); + } - case 'hover': - setShowComponent(true); - return; + return labels; + }; - case 'default': - setShowComponent(false); - } - }; + _this.renderTrackFill = function (index, start, end) { + var _a; - 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 _b = [_this.getOffsetRatio(start.value), _this.getOffsetRatio(end.value)].sort(function (left, right) { + return left - right; + }), + startRatio = _b[0], + endRatio = _b[1]; - var onKeyDown = function onKeyDown(event) { - if (document.activeElement === inputRef.current) { - switch (event.key) { - case 'Enter': - onSaveChanges(); - break; + var startOffset = Number((startRatio * 100).toFixed(2)); + var endOffset = Number(((1 - endRatio) * 100).toFixed(2)); + var width = 100 - endOffset - startOffset + "%"; + var orientationStyle = { + width: width + }; - case 'Escape': - setDefaultComponent(); - break; - } - } - }; + var style = __assign({}, orientationStyle); - 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; - } + var fillTrack = _this.getTrackFill(start, end); - return /*#__PURE__*/React__namespace.createElement("div", { - className: EditableDefaultClass, - "data-test": "DesignSystem-EditableInput--Default" - }, value || placeholder); - }; + 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 + }); + }; - 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: {} - }; + _this.renderTracks = function () { + var trackStops = _this.getHandleValues(_this.props); - var EditableChipInput = function EditableChipInput(props) { - var _a, _b, _c, _d; + 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 placeholder = props.placeholder, - value = props.value, - onChange = props.onChange, - className = props.className, - disableSaveAction = props.disableSaveAction, - chipInputOptions = props.chipInputOptions; + _this.handleLabelMouseOver = function (value) { + _this.setState({ + hoveredLabelValue: value + }); + }; - var onChipInputChange = chipInputOptions.onChange, - _e = chipInputOptions.chipOptions, - chipOptions = _e === void 0 ? {} : _e, - rest = __rest(chipInputOptions, ["onChange", "chipOptions"]); + _this.handleLabelMouseLeave = function () { + _this.setState({ + hoveredLabelValue: undefined + }); + }; - var _onClick = chipOptions.onClick, - chipObject = __rest(chipOptions, ["onClick"]); + _this.state = { + labelPrecision: _this.getLabelPrecision(_this.props), + tickSize: 0, + tickSizeRatio: 0 + }; + return _this; + } - var _f = React__namespace.useState(value), - inputValue = _f[0], - setInputValue = _f[1]; + MultiSlider.prototype.getDerivedStateFromProps = function (props) { + return { + labelPrecision: this.getLabelPrecision(props) + }; + }; - var _g = React__namespace.useState(false), - showComponent = _g[0], - setShowComponent = _g[1]; + MultiSlider.prototype.getSnapshotBeforeUpdate = function (prevProps) { + var prevHandleProps = this.getHandleValues(prevProps); + var newHandleProps = this.getHandleValues(this.props); - 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]); + if (newHandleProps.length !== prevHandleProps.length) { + this.handleElements = []; + } - var onChipInputChangeHandler = function onChipInputChangeHandler(val) { - setInputValue(val); - if (onChipInputChange) onChipInputChange(val); + return null; }; - var setDefaultComponent = function setDefaultComponent() { - setInputValue(value); - setShowComponent(false); + MultiSlider.prototype.componentDidMount = function () { + this.updateTickSize(); }; - var onSaveChanges = function onSaveChanges() { - if (onChange && inputValue) onChange(inputValue); + 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 onChangeHandler = function onChangeHandler(eventType) { - switch (eventType) { - case 'edit': - setShowComponent(true); + MultiSlider.prototype.render = function () { + var _a, _b; - case 'hover': - return; + var _this = this; - case 'default': - setShowComponent(false); - return; - } + 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())); }; - 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); - } - })); - }); - } - - return /*#__PURE__*/React__namespace.createElement(Text, { - className: "EditableChipInput--Text" - }, placeholder); + MultiSlider.defaultProps = { + labelStepSize: 1, + max: 10, + min: 0, + stepSize: 1, + labelRenderer: true }; + MultiSlider.Handle = MultiSliderHandle; + return MultiSlider; + }(React__namespace.Component); - 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 - }))); - } + var OutsideClick = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { + var _a; - return /*#__PURE__*/React__namespace.createElement("div", { - className: defaultClasses, - "data-test": "DesignSystem-EditableChipInput--Default" - }, renderDefaultState()); - }; + 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); - }; + 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 = __rest(props, ["size", "label", "disabled", "onChange", "name", "value", "checked", "defaultChecked", "className", "helpText", "error"]); - var iconAppearance = completed ? 'info' : disabled ? 'disabled' : active ? 'info' : 'default'; - var appearance = active ? 'link' : disabled ? 'disabled' : 'default'; + 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", { - "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'; + 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 Stepper = function Stepper(props) { + var Row = /*#__PURE__*/React__namespace.forwardRef(function (props, ref) { 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 className = props.className, + children = props.children, + rest = __rest(props, ["className", "children"]); - var onChangeHandler = function onChangeHandler(index, stepLabel, stepValue) { - if (onChange) onChange(index, completed, stepLabel, stepValue); - }; + 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'; + + var StatusHint = function StatusHint(props) { + var _a, _b, _c; - var StepperClass = classNames__default['default']((_a = {}, _a['Stepper'] = true, _a), className); + 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-Stepper" + "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 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, + image = props.image; + 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 + }), image && /*#__PURE__*/React__namespace.createElement("div", { + style: { + height: imageHeight[size] + } + }, image), imageSrc && !image && /*#__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; + + 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 + }); + } + } + } + } + } + + 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 + })); + }; - if (type === 'end') { - var placeholderChar = endInputOptions.placeholderChar ? endInputOptions.placeholderChar : '_'; + 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); }; - 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); + }; + + 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; - _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 + }; + 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.34.0"; + exports.ActionCard = ActionCard; exports.Avatar = Avatar; exports.AvatarGroup = AvatarGroup; + exports.AvatarSelection = AvatarSelection; exports.Backdrop = Backdrop; exports.Badge = Badge; exports.Breadcrumbs = Breadcrumbs; @@ -13934,11 +20768,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 +20789,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 +20810,7 @@ exports.ModalDescription = ModalDescription; exports.ModalFooter = ModalFooter; exports.ModalHeader = ModalHeader; + exports.MultiSlider = MultiSlider; exports.Navigation = Navigation; exports.OutsideClick = OutsideClick; exports.PageHeader = PageHeader; @@ -13975,6 +20818,7 @@ exports.Paragraph = Paragraph; exports.Pills = Pills; exports.Placeholder = Placeholder; + exports.PlaceholderImage = PlaceholderImage; exports.PlaceholderParagraph = PlaceholderParagraph; exports.Popover = Popover; exports.ProgressBar = ProgressBar; @@ -13982,6 +20826,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 +20840,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..f453864e02 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/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],"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","setSelectionPos","el","setSelectionRange","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","imageHeight","HeadingSize","EmptyState","imageSrc","HeadingClass","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","Title","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":"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"} \ No newline at end of file diff --git a/dist/index.umd.js b/dist/index.umd.js index 89b6eef783..b7db0efcfc 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):""},V=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})},Kt=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 V(t,e,i)},onChange:function(e){var t=1r.bottom&&n?Kt(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=j(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=j(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=j(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=j(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=j(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+=B(e,r,o)},[h,m,C]),_=we.useCallback(function(){A.current=F(),T.current=window.requestAnimationFrame(_)},[A.current,F]),W=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=B(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=Ya(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%":Ka,"%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=j(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(Bl,{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=j(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){var t=e.imageSrc,n=e.title,a=e.description,r=e.size,o=e.children,i=e.className,l=e.image,s=Oe(e),c=Ie(De({},"EmptyState",!0),i),i=Ie((De(e={},"EmptyState-title",!0),De(e,"EmptyState-title--".concat(r),!0),e)),e=Ie((De(e={},"EmptyState-description",!0),De(e,"EmptyState-description--".concat(r),void 0!==o),e));return we.createElement("div",Ne({"data-test":"DesignSystem-EmptyState"},s,{className:c}),l&&we.createElement("div",{style:{height:Fl[r]}},l),t&&!l&&we.createElement("img",{src:t,height:Fl[r],"data-test":"DesignSystem-EmptyState--Img"}),we.createElement(yn,{"data-test":"DesignSystem-EmptyState--Heading",size:zl[r],className:i},n),we.createElement(Qe,{size:Hl[r],className:e,appearance:"subtle","data-test":"DesignSystem-EmptyState--Text"},a),o)}var Fl={large:"256px",small:"128px"},zl={large:"l",small:"m"},Hl={large:"large",small:"regular"};Ll.displayName="EmptyState";var Bl=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))};Bl.displayName="ModalDescription";function _l(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,ps(n)];if(e.sizen)return[!1,ps(n)]}return[!0,null]},gs=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"]]),vs=[".DS_Store","Thumbs.db"];function ys(){return(ys=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 Es.apply(this,arguments)}(n.dataTransfer,n.type):(null!==(t=n).target&&t.target.files?ws(t.target.files):[]).map(function(e){return bs(e)}));case 1:case"end":return e.stop()}var t},e)}))).apply(this,arguments)}function bs(e,t){var n,a=function(e){var t=e.name;t&&-1!==t.lastIndexOf(".")&&!e.type&&(t=t.split(".").pop().toLowerCase(),(t=gs.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(Au,{helpText:c,error:o}),we.createElement(Pu,{inputText:d,max:s})))}function Tu(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(Au,{helpText:c,error:r}),we.createElement(Pu,{inputText:i,max:l})))}var Au=function(e){var t=e.helpText,e=e.error;return b.default.createElement(Qc,{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))};Tu.defaultProps={minWidth:256};function Ru(e){return e.withTextarea?we.createElement(Ou,e):we.createElement(Tu,e)}function Mu(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(Bu)).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(Hu,{size:d,appearance:t,firstName:a,lastName:r,withTooltip:!0,tooltipPosition:u,icon:o,image:i})))}))}function Lu(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 Fu(e){var t=e.hiddenAvatarCount,n=e.avatarStyle,a=e.size,r=e.hiddenAvatarList,o=(p=we.useContext(Bu)).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",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 XMh5V>;C?2DMqT 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

bT9GcoL2w81Gd+JwGNpr?YWAkP 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 ZW%Q6 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 Hz`x54#@2v@ diff --git a/dist/index.umd.js.gz b/dist/index.umd.js.gz index bafad00064f017c600b0353a9617e91d6ccfb4f6..ca25b3ea515bcc7e3d2455938e4800baa80129f4 100644 GIT binary patch literal 102672 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 z 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≈YHb*;#lF2+FRe471JOv^8UZA2#bQBYqLv0hRO%i3%Pvrmf zLqAn{1UyRyC)kd2k>A$Cq4rKe=7J6gh!3Tu2Gcn7o%P3@HoSDS;aU}X!A*GTXo8_vf8jOO@%+_%T`VzUrE z9in--28WTe7BX;1BHc;SySrq$f8c-B$5S9RdA8fi{~me@d+oO|aqd2#d6=4G28mnY zx$_)^NQk@<=2Hl^0f1a(V z{OsP9$`#^~QxlXA z;&WjaE#9{~by%#P2o0G14&0}2;fucOMs-at7f|hsO$yvm*vzcWFsI=NI@ot(PwV#CgIU@?pv~Y3B zr_C3wnNeHl_}UUnZgE+zb}qglJI5<@3x^4;o#yg-QbWJT^-%c*&0>d}iG>qy>Wn$V z-Wwz?WBzQy?+g0tsFP{yZNk*a_@+~NtoxM5x}$?OaL-gIYlJm!E0ld$G(}gUb1RRe zRav?sFdN#olwr#ZUtw*~Pyifg@lMocR#1C9$) zsY-Al`z=}U4e6+!M5FJ&$Ec9DK&1V0^W_Rh54J{|^WX{1Y74#kwg|*sj5jroJva!$ za$L5}^yKljE^>km@Hk-CvD=s6);i}s-M?rnxhoxkHV&XXx6V`}CA>!NGgU(ayvLa; zmomb^gZ~bPw|-lxMOOzEfMXr%4mSpCu@8B_>G0NdRD0xBt|RTQ#RduT?jz-=g=(yE z1~U=9A-(dT%NZ%#N|6@G#xWrqw{5Monr(NlsS23o-BJX&9vipfmg2t<=Gm4QN-DbT zDmHVOZ7+N6u@`;z*lQ!=?$(ZAIqw>QkF4NY;5?p$g+kiAyBqDnTpq`Mgc&e^sxVs+ z%pEWs^w-5Q8#$KQ&PaVnTDU&SvsCoeq9x!S>+Ty z&Wut4+_cT6qPts+O7{0VxE;jb8q#|ZZxGUZ6W=SO*YI%pF9-mh2eaTZxCpL;+u%Gn zGMx_-OQ2Emf4V}75NupI#AWxv)IB9CW&W z)D|4gqUhUWAm3Y3hM@anw1>OAyr>?-Dqc#HdSMC^e4Lu4dGdmeEHl&IUKtj70hqz1 z8ivS^5gfcDe*}w8)Wk+MJXq5n8kFJ~kFFW7;BbzgxGj;B!^p zC6GPj%}3$GN!^poPY2UT2lnM~=Tnj9z87p^A|Q=xCIN>Jcs!TH34E&sd#&HF6Eo%@WG>()K7V@prAoSfpG2+%m;3YP~h=HCCr z$ajVrYWoUVhppQeeZ|;iqU?K&Bn)aR%48xbgcXTuZ$*@>`rdI#cuyg^%~hDv)C^Nv zbTEdzmRXW-x@>q7o{z*^vhCgrplTH)oGVZKy-?x)CL}p%I|x_7F&c?TDVJlQN3qrt zR$)RKZVqBNZ%NULaM#LfwQ`|rHWJucv?d(fwmKnTON8ffh7qno)}EK6AGRnsi_WtW zsPKj>)C?k(kml3NsC-=eyO^r!9X3QjT679>hxgv)79-^ttV8@h9>h8t{*FE!c0wx zOg%&1CR%psc*3;g7R1vOX%n>%jUlm!=O@~KB_XhADXV~p^{Qi=)1NmY56vSNPa0fX zts#L7yK#lxu)J{i!>7S>>R?K%$}@tS*?24Lg~4mvei$Sr3QfXrje?WQo4RdUl5ioV z^2O--XlPTe?Wb{$Pz_OeE2fYA{bBm@_@tmzTusX+6o<-6hPDOax?!HEk$FgrtqfI| zX}>y=1g+Njhn{vdsnXe3ROQ}QFTUvI2n4?*nA@!PIezj$kH+XBz|G%W}#upPW$Ed z>$nS=V!C)-v|T)|14GdrH-W9@j*q$?AeT-LkmD8JDu%?HfJzRlhf_5gE=tB>TWSKj z+=_tvGN3eA>i)UqDiA9tjsp__=BDLva@ch^dDY`Pa^?0NdEF1$vcipCosMoSu3rcU z5SLepa`?D#`*Bd>2`P+BXsE}qvJymvBA1_5-kr8`=JXjk30fO6CWte(oBITV|F{S76W;mn1|pRgL;*liD`Yx zEDUOCSYxl-sbOW~GxV!?*t-MU`Y>>-Xa%?G)gCv5vL=U=zXs1*oha9CG;6~O_Fs=? zU4-e!^jpxZ3(9)@7o%AhtFnu@p07QyrmqwP)GJQvfN~6{`dzoT5o@G&)R;SV1l@W_ zg2GA>!VDt?#$GX-wYASx5obP+{$r~rL*9BQE4{r(lN|kR@>OV7V!Sj~&Pb<55z_^- zG`zJaG6Lyg_RdM(RyxoalMTD$`7L_j@I4-{bG}(PY&+kE<+Vg}lGD_aVhT-e_+=8s z7*HI13m{iXc@FzNQLL@=n^3t5PS%T5{In>bCMP~ui{@V6m*xZ=ut8LB2MIx`=!2&d z>)=VJ)wHY;W;$hV&STx2da^oK;hKQsByUCn-jOHtf-j7&7-gsftJ3~$@}-fmF0D!j z=$blrn?!AtfHNPC|Bk_+Ugzi(+E;rki#L12$!wTtkIIBW%{baLb3UK$pR_G$t*pqJ zWZuMG-w=lVxwnVN3)4g79{wROZ2u6KcZdV}XT7%v4%cG8wZFqwxt$5XkxFC9EW*lV z9YJwg?&@O;QJP;W*S+MB9(vqZTs@(2dyAy(ji1JtbFicfm?oa0PT?2HOqI>>w<>A? zz`X4bF|#wXYv3~DB)Tv{!BXNM&tOB&-0tBorT3fj=@)c@vl5OaJFo(p=ZDhy?M;NE zixN8dzKOE%9IcuQdiX+!`13I9=61+hZg7`e$kqcc;3j_7@Djgb+ALYd5Awl=BSSyI-H zsl4OU{td-+7+k}(v2vPe^8m_n^m1!g#7xmuY);N%1dfhg#IOY8U_l~z3z1S8h3E)M z`SZ6Eco?DDQnK$PAQ3LNnt}q`++?^LvRP3brAp}w*8sZ{3Q17;P?XCcRj_R@dt9ww z^g)zqcW48w%%s3lQegR4xKEX)`&6_Ugc-u2mJDH5Y6!E)4PjP}_8vsaXDL!XOC|a& zMGC^Kw4Ihp31L>65N72@5N4$d!tANbAr1CVhN7a4JPKoI!o1gwD<>422FfkKXed>m3zZ|7#6WPg+^ou(w@fr7X{E^hW4fvCF%JP21EGX z_|h(6@VM0N@}9~zr+)!44OM06zOF=pZGUYKbYIsFi|DK*3%?S5Ep%TI`_s|aOqZx& z$Li(yrOojx*{jOn_%PU&M)dj8v&f&dT5<)NY4nL( zGGR64EOu|JS3__4EAkjRsJ1c~@>JB4M4NJKFR@+yz6SA)rZ`2Pkj-#0~Y z{5>#zh@9>U^Z3*+;PUZ%WF5Gd)?s`%6$lxB=ugWV8Moi+g_q)m-(3#riLRrs>BtiF0|T zTdfdPU#>a4tlEc{)1K42*nN68Z=DCuy61r)!&(~A_*xw;UVxJx%8O($?rK)X@fd5@EJ+Ipg#v~d?}DcQB5SSwhyXj+p=JHnw`x8I*6 zo9y>0)|XGn=0%yDT^42fg+T!GpdGZDeO`xgA* zKjZ7W9#U8yQ{nQ%G|%zQadVDCzS;<$hmJ|=%hD4$3rlio6)x=^@j!fWr!LsHgpv^g z^_I9hrtpW{sd`sJ*0(`ceGlr+Rx3$W-?!2Y4rRcGjo04}-;7=1n+stsGnUlc2+u5) z10{0pD&Vaf$lbE5A(o|SN7Jc;pez!%*`ut;H5Njkk@}lf7R&`o!t6Y@!cv0R@>4>W z&jNI*r{tuRQNDZXXs$=S_%bONPrSNp@E~j!W!jTg`&i`Y=@2c44vvym@1rb@RnQzN zoe_rLbFU0_l6$p7p*e*n=elo%QawVcJtX4@c9=^}*eEwaade?lNo}y5Wqkf5{7n+V zyzG1JOIM~SmjrVAsT1t&rbR>>9R-B26)?AgQA*5>*!4ZS zX{R}L)=xFplo+V5@;@7^YIimv)yowGC9yTdF{S_)g89y`mMb8aFLSFU#$1e$zQj3` z=~rH-`K`L8;0{^-6r9z8|J?a7h$3I@u$9WF-aLS;;cvw}w=0sI&C-l9!O;?oPW&iz z^z=x1-fu#SBUyY&z}2Fo32h6#o+Y%`lX$)KYZ)7&NO*)sW*0?3_j0dyB9J1E6Ola+ z!&Uy_xf0|W1gSr`f->nCeuq05o*?r$h~Tvt_|Q|nV#l*LIb8s&dX|V^=(!hul2_s& z|Gm6^22F?S5Aqs>oVZEi@QiL;M)k|2sv_W6FEhHqF`;2v(^a|%Yx#@0U@kA&*X>^^ zT^2C5B*uR?#p@!=qD7USXGwUH@r`DlhZVgmaA?AL3|EIRW^Z6bpowuUuHWKJikrWe zcr%T%;v&4r=r?Tx;qUmNL$NBt%UoQ2fh{cjQo+?xoDw{XZtMHZxUF7&ksEip;0G$G zb3DDk>!)ePUHmc?SML^CL4$i%weC>4_jDK7RRyGx!&h}!)hvi9VD<- zFYxLadys^;IbCE6#EuGop+~sBKq82;SJ8DCV}o#gh2P;cKBq_(Igvk4=@xe6AeTR1 zM%7jL8ZXI7AbdMaj$UGBT4yFOuzWMPjb4b zBYNYLxGK{rx8*b4ph0+*$)7~KSL*UmyE}zX)LlW+&(#e<)1T=Ec@Sqr6TjgnV0=;z zkqQs6)uzvB_#Kvb1FaQRoJ{!|0R!-jvy84`vjKhiGW?Z_15>NQGQyuadM7M$`^NJ* z4noLuSfo!k@7r zz&3<`Qy9}jQvbro@DsGFFsb+lEcl}-|E$7V+^mH0A^ZhvVwz6Gucv8}0R=YV5;m47 zyu=Tjq;tswenrM`Qh+iZUehCHo8cu^_pVN1cCf_zq)cZiN4Xvpu~^H`ru?XeC$x4_ zd<*8F!uj?d?tK5l&aM}{KK}&chO#8ABorm#ja%5}y|c5V0-|fs>qdy4n8OQp@&D`p M0el6A(!!ht0QQ6Tz5oCK literal 72662 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%0A{{ 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 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..6d0284123c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@innovaccer/design-system", - "version": "2.23.2", + "version": "2.34.0", "lockfileVersion": 1, "requires": true, "dependencies": {