@laerdal/life-react-components 6.0.0-dev.1.full → 6.0.0-dev.12.full
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Accordion/ContentAccordion.cjs +40 -11
- package/dist/Accordion/ContentAccordion.cjs.map +1 -1
- package/dist/Accordion/ContentAccordion.js +40 -11
- package/dist/Accordion/ContentAccordion.js.map +1 -1
- package/dist/Accordion/__tests__/AccordionMenu.test.tsx +42 -0
- package/dist/Accordion/__tests__/ContentAccordion.test.tsx +150 -0
- package/dist/Accordion/styles.cjs +51 -13
- package/dist/Accordion/styles.cjs.map +1 -1
- package/dist/Accordion/styles.js +51 -13
- package/dist/Accordion/styles.js.map +1 -1
- package/dist/AuthPage/__tests__/AuthPage.test.tsx +27 -0
- package/dist/Banners/Banner.cjs +38 -34
- package/dist/Banners/Banner.cjs.map +1 -1
- package/dist/Banners/Banner.d.ts +2 -3
- package/dist/Banners/Banner.js +38 -34
- package/dist/Banners/Banner.js.map +1 -1
- package/dist/Banners/__tests__/Banner.test.tsx +47 -0
- package/dist/Banners/__tests__/OverviewBanner.test.tsx +20 -0
- package/dist/Banners/styles.cjs +8 -16
- package/dist/Banners/styles.cjs.map +1 -1
- package/dist/Banners/styles.js +8 -16
- package/dist/Banners/styles.js.map +1 -1
- package/dist/Breadcrumb/Breadcrumb.cjs +8 -2
- package/dist/Breadcrumb/Breadcrumb.cjs.map +1 -1
- package/dist/Breadcrumb/Breadcrumb.js +8 -2
- package/dist/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/Breadcrumb/__tests__/Breadcrumb.test.tsx +78 -0
- package/dist/Breadcrumb/styles.cjs +15 -4
- package/dist/Breadcrumb/styles.cjs.map +1 -1
- package/dist/Breadcrumb/styles.js +15 -4
- package/dist/Breadcrumb/styles.js.map +1 -1
- package/dist/Button/BackButton.cjs +27 -6
- package/dist/Button/BackButton.cjs.map +1 -1
- package/dist/Button/BackButton.js +27 -6
- package/dist/Button/BackButton.js.map +1 -1
- package/dist/Button/Button.cjs +179 -47
- package/dist/Button/Button.cjs.map +1 -1
- package/dist/Button/Button.d.ts +2 -0
- package/dist/Button/Button.js +179 -47
- package/dist/Button/Button.js.map +1 -1
- package/dist/Button/Iconbutton.cjs +83 -21
- package/dist/Button/Iconbutton.cjs.map +1 -1
- package/dist/Button/Iconbutton.js +83 -21
- package/dist/Button/Iconbutton.js.map +1 -1
- package/dist/Button/__tests__/BackButton.test.tsx +32 -0
- package/dist/Button/__tests__/Button.test.tsx +45 -0
- package/dist/Button/__tests__/DualButton.test.tsx +119 -0
- package/dist/Card/HorizontalCard/HorizontalCard.cjs +20 -5
- package/dist/Card/HorizontalCard/HorizontalCard.cjs.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCard.js +20 -5
- package/dist/Card/HorizontalCard/HorizontalCard.js.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardBody.cjs +12 -3
- package/dist/Card/HorizontalCard/HorizontalCardBody.cjs.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardBody.js +12 -3
- package/dist/Card/HorizontalCard/HorizontalCardBody.js.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.cjs +8 -2
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.cjs.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.js +8 -2
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.js.map +1 -1
- package/dist/Card/HorizontalCard/__tests__/HorizontalCard.test.tsx +71 -0
- package/dist/Card/HorizontalCard/__tests__/VerticalCard.test.tsx +124 -0
- package/dist/Card/VerticalCard/Card.cjs +20 -5
- package/dist/Card/VerticalCard/Card.cjs.map +1 -1
- package/dist/Card/VerticalCard/Card.js +20 -5
- package/dist/Card/VerticalCard/Card.js.map +1 -1
- package/dist/Card/VerticalCard/CardBottomSection.cjs +72 -19
- package/dist/Card/VerticalCard/CardBottomSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardBottomSection.d.ts +8 -1
- package/dist/Card/VerticalCard/CardBottomSection.js +73 -20
- package/dist/Card/VerticalCard/CardBottomSection.js.map +1 -1
- package/dist/Card/VerticalCard/CardMiddleSection.cjs +19 -4
- package/dist/Card/VerticalCard/CardMiddleSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardMiddleSection.js +19 -4
- package/dist/Card/VerticalCard/CardMiddleSection.js.map +1 -1
- package/dist/Card/VerticalCard/CardTopSection.cjs +9 -2
- package/dist/Card/VerticalCard/CardTopSection.cjs.map +1 -1
- package/dist/Card/VerticalCard/CardTopSection.js +9 -2
- package/dist/Card/VerticalCard/CardTopSection.js.map +1 -1
- package/dist/Card/__tests__/Card.test.tsx +146 -0
- package/dist/Chips/ChipStyles.cjs +4 -1
- package/dist/Chips/ChipStyles.cjs.map +1 -1
- package/dist/Chips/ChipStyles.js +4 -1
- package/dist/Chips/ChipStyles.js.map +1 -1
- package/dist/Chips/__tests__/ActionChip.test.tsx +94 -0
- package/dist/Chips/__tests__/ChoiceChips.test.tsx +79 -0
- package/dist/Chips/__tests__/FilterChip.test.tsx +95 -0
- package/dist/Chips/__tests__/InputChip.test.tsx +155 -0
- package/dist/ChipsInput/ChipInputField.cjs +16 -4
- package/dist/ChipsInput/ChipInputField.cjs.map +1 -1
- package/dist/ChipsInput/ChipInputField.js +16 -4
- package/dist/ChipsInput/ChipInputField.js.map +1 -1
- package/dist/ChipsInput/__tests__/ChipDropdownInput.test.tsx +100 -0
- package/dist/ChipsInput/__tests__/ChipInputFields.test.tsx +155 -0
- package/dist/Dropdown/BasicDropdown.cjs +12 -3
- package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
- package/dist/Dropdown/BasicDropdown.js +12 -3
- package/dist/Dropdown/BasicDropdown.js.map +1 -1
- package/dist/Dropdown/CommonStyling.cjs +172 -42
- package/dist/Dropdown/CommonStyling.cjs.map +1 -1
- package/dist/Dropdown/CommonStyling.js +172 -42
- package/dist/Dropdown/CommonStyling.js.map +1 -1
- package/dist/Dropdown/DropdownContent.cjs +36 -10
- package/dist/Dropdown/DropdownContent.cjs.map +1 -1
- package/dist/Dropdown/DropdownContent.js +36 -10
- package/dist/Dropdown/DropdownContent.js.map +1 -1
- package/dist/Dropdown/DropdownFilter.cjs +12 -3
- package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
- package/dist/Dropdown/DropdownFilter.js +12 -3
- package/dist/Dropdown/DropdownFilter.js.map +1 -1
- package/dist/Dropdown/__tests__/DropdownFilter.test.tsx +39 -0
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs +4 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs.map +1 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.js +4 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.js.map +1 -1
- package/dist/Footer/__tests__/Footer.test.tsx +182 -0
- package/dist/GlobalNavigationBar/__tests__/GlobalNavigationBar.tests.d.ts +1 -0
- package/dist/GlobalNavigationBar/__tests__/Logo.test.tsx +39 -0
- package/dist/GlobalNavigationBar/__tests__/Logo.tests.d.ts +1 -0
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs +4 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.js +4 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/desktop/__tests__/DesktopActions.test.tsx +108 -0
- package/dist/GlobalNavigationBar/desktop/__tests__/ExtendedMainMenu.test.tsx +28 -0
- package/dist/GlobalNavigationBar/desktop/__tests__/MainMenu.test.tsx +55 -0
- package/dist/GlobalNavigationBar/desktop/__tests__/RightSideNav.test.tsx +45 -0
- package/dist/GlobalNavigationBar/desktop/__tests__/UserMenu.test.tsx +125 -0
- package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenu.test.tsx +317 -0
- package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenuContent.test.tsx +294 -0
- package/dist/GlobalNavigationBar/mobile/__tests__/MobileMenuHeader.test.tsx +195 -0
- package/dist/HyperLink/styling.cjs +38 -8
- package/dist/HyperLink/styling.cjs.map +1 -1
- package/dist/HyperLink/styling.js +38 -8
- package/dist/HyperLink/styling.js.map +1 -1
- package/dist/InputFields/Checkbox.cjs +54 -14
- package/dist/InputFields/Checkbox.cjs.map +1 -1
- package/dist/InputFields/Checkbox.js +54 -14
- package/dist/InputFields/Checkbox.js.map +1 -1
- package/dist/InputFields/DatepickerField.cjs +149 -43
- package/dist/InputFields/DatepickerField.cjs.map +1 -1
- package/dist/InputFields/DatepickerField.d.ts +1 -1
- package/dist/InputFields/DatepickerField.js +150 -44
- package/dist/InputFields/DatepickerField.js.map +1 -1
- package/dist/InputFields/DatepickerFieldHeader.cjs +20 -5
- package/dist/InputFields/DatepickerFieldHeader.cjs.map +1 -1
- package/dist/InputFields/DatepickerFieldHeader.js +20 -5
- package/dist/InputFields/DatepickerFieldHeader.js.map +1 -1
- package/dist/InputFields/Label.cjs +38 -11
- package/dist/InputFields/Label.cjs.map +1 -1
- package/dist/InputFields/Label.js +38 -11
- package/dist/InputFields/Label.js.map +1 -1
- package/dist/InputFields/NumberField.cjs +66 -16
- package/dist/InputFields/NumberField.cjs.map +1 -1
- package/dist/InputFields/NumberField.js +66 -16
- package/dist/InputFields/NumberField.js.map +1 -1
- package/dist/InputFields/PasswordField.cjs +4 -1
- package/dist/InputFields/PasswordField.cjs.map +1 -1
- package/dist/InputFields/PasswordField.d.ts +1 -1
- package/dist/InputFields/PasswordField.js +4 -1
- package/dist/InputFields/PasswordField.js.map +1 -1
- package/dist/InputFields/QuickSearch.cjs +30 -6
- package/dist/InputFields/QuickSearch.cjs.map +1 -1
- package/dist/InputFields/QuickSearch.js +30 -6
- package/dist/InputFields/QuickSearch.js.map +1 -1
- package/dist/InputFields/RadioButton.cjs +63 -15
- package/dist/InputFields/RadioButton.cjs.map +1 -1
- package/dist/InputFields/RadioButton.js +63 -15
- package/dist/InputFields/RadioButton.js.map +1 -1
- package/dist/InputFields/RichTextField.cjs +60 -15
- package/dist/InputFields/RichTextField.cjs.map +1 -1
- package/dist/InputFields/RichTextField.js +60 -15
- package/dist/InputFields/RichTextField.js.map +1 -1
- package/dist/InputFields/SearchBar.cjs +4 -1
- package/dist/InputFields/SearchBar.cjs.map +1 -1
- package/dist/InputFields/SearchBar.js +4 -1
- package/dist/InputFields/SearchBar.js.map +1 -1
- package/dist/InputFields/TextField.cjs +9 -3
- package/dist/InputFields/TextField.cjs.map +1 -1
- package/dist/InputFields/TextField.d.ts +1 -1
- package/dist/InputFields/TextField.js +9 -3
- package/dist/InputFields/TextField.js.map +1 -1
- package/dist/InputFields/Textarea.cjs +68 -17
- package/dist/InputFields/Textarea.cjs.map +1 -1
- package/dist/InputFields/Textarea.js +68 -17
- package/dist/InputFields/Textarea.js.map +1 -1
- package/dist/InputFields/__tests__/NumberField.test.tsx +67 -0
- package/dist/InputFields/__tests__/NumberInput.test.tsx +68 -0
- package/dist/InputFields/__tests__/QuickSearch.test.tsx +42 -0
- package/dist/InputFields/components/SearchBarInput.cjs +28 -7
- package/dist/InputFields/components/SearchBarInput.cjs.map +1 -1
- package/dist/InputFields/components/SearchBarInput.js +28 -7
- package/dist/InputFields/components/SearchBarInput.js.map +1 -1
- package/dist/InputFields/components/SearchField.cjs +60 -15
- package/dist/InputFields/components/SearchField.cjs.map +1 -1
- package/dist/InputFields/components/SearchField.js +60 -15
- package/dist/InputFields/components/SearchField.js.map +1 -1
- package/dist/InputFields/styling.cjs +95 -39
- package/dist/InputFields/styling.cjs.map +1 -1
- package/dist/InputFields/styling.d.ts +1 -2
- package/dist/InputFields/styling.js +95 -39
- package/dist/InputFields/styling.js.map +1 -1
- package/dist/LinearProgress/LinearProgress.cjs +161 -53
- package/dist/LinearProgress/LinearProgress.cjs.map +1 -1
- package/dist/LinearProgress/LinearProgress.js +161 -53
- package/dist/LinearProgress/LinearProgress.js.map +1 -1
- package/dist/LinearProgress/__tests__/LinearProgress.test.tsx +25 -0
- package/dist/List/ListRow.cjs +36 -9
- package/dist/List/ListRow.cjs.map +1 -1
- package/dist/List/ListRow.js +36 -9
- package/dist/List/ListRow.js.map +1 -1
- package/dist/List/__tests__/ListRow.test.tsx +18 -0
- package/dist/List/__tests__/ListRow.tests.d.ts +1 -0
- package/dist/LoadingIndicator/LoadingIndicator.cjs +4 -1
- package/dist/LoadingIndicator/LoadingIndicator.cjs.map +1 -1
- package/dist/LoadingIndicator/LoadingIndicator.js +4 -1
- package/dist/LoadingIndicator/LoadingIndicator.js.map +1 -1
- package/dist/LoadingPage/GlobalLoadingPage.cjs +4 -1
- package/dist/LoadingPage/GlobalLoadingPage.cjs.map +1 -1
- package/dist/LoadingPage/GlobalLoadingPage.js +4 -1
- package/dist/LoadingPage/GlobalLoadingPage.js.map +1 -1
- package/dist/LoadingPage/__tests__/GlobalLoadingPage.test.tsx +23 -0
- package/dist/MenuItem/MenuItem.cjs +101 -26
- package/dist/MenuItem/MenuItem.cjs.map +1 -1
- package/dist/MenuItem/MenuItem.js +101 -26
- package/dist/MenuItem/MenuItem.js.map +1 -1
- package/dist/Modals/Modal.cjs +4 -1
- package/dist/Modals/Modal.cjs.map +1 -1
- package/dist/Modals/Modal.js +4 -1
- package/dist/Modals/Modal.js.map +1 -1
- package/dist/Modals/ModalContent.cjs +24 -6
- package/dist/Modals/ModalContent.cjs.map +1 -1
- package/dist/Modals/ModalContent.js +24 -6
- package/dist/Modals/ModalContent.js.map +1 -1
- package/dist/Modals/ModalDialog.cjs +12 -3
- package/dist/Modals/ModalDialog.cjs.map +1 -1
- package/dist/Modals/ModalDialog.js +12 -3
- package/dist/Modals/ModalDialog.js.map +1 -1
- package/dist/Modals/ModalNote.cjs +16 -4
- package/dist/Modals/ModalNote.cjs.map +1 -1
- package/dist/Modals/ModalNote.js +16 -4
- package/dist/Modals/ModalNote.js.map +1 -1
- package/dist/Modals/ModalStyles.cjs +44 -11
- package/dist/Modals/ModalStyles.cjs.map +1 -1
- package/dist/Modals/ModalStyles.js +44 -11
- package/dist/Modals/ModalStyles.js.map +1 -1
- package/dist/Modals/__tests__/Modal.test.tsx +169 -0
- package/dist/Modals/__tests__/ModalContainer.test.tsx +77 -0
- package/dist/Modals/__tests__/ModalContent.test.tsx +126 -0
- package/dist/NavItem/NavItem.cjs +4 -1
- package/dist/NavItem/NavItem.cjs.map +1 -1
- package/dist/NavItem/NavItem.js +4 -1
- package/dist/NavItem/NavItem.js.map +1 -1
- package/dist/NavItem/__tests__/NavItem.test.ts +6 -0
- package/dist/NotificationDot/NotificationDot.cjs +17 -2
- package/dist/NotificationDot/NotificationDot.cjs.map +1 -1
- package/dist/NotificationDot/NotificationDot.js +17 -2
- package/dist/NotificationDot/NotificationDot.js.map +1 -1
- package/dist/NotificationDot/__tests__/NotificationDot.test.tsx +33 -0
- package/dist/Paginator/Paginator.cjs +76 -29
- package/dist/Paginator/Paginator.cjs.map +1 -1
- package/dist/Paginator/Paginator.js +76 -29
- package/dist/Paginator/Paginator.js.map +1 -1
- package/dist/Paginator/__tests__/Paginator.test.tsx +39 -0
- package/dist/Panel/Panel.cjs +4 -1
- package/dist/Panel/Panel.cjs.map +1 -1
- package/dist/Panel/Panel.js +4 -1
- package/dist/Panel/Panel.js.map +1 -1
- package/dist/Popover/Popover.cjs +22 -3
- package/dist/Popover/Popover.cjs.map +1 -1
- package/dist/Popover/Popover.js +22 -3
- package/dist/Popover/Popover.js.map +1 -1
- package/dist/Popover/__tests__/Popover.test.tsx +64 -0
- package/dist/ProfileButton/ProfileButton.cjs +9 -2
- package/dist/ProfileButton/ProfileButton.cjs.map +1 -1
- package/dist/ProfileButton/ProfileButton.js +9 -2
- package/dist/ProfileButton/ProfileButton.js.map +1 -1
- package/dist/ProfileButton/__tests__/ProfileButton.test.tsx +31 -0
- package/dist/QuizButton/__tests__/QuizButton.test.tsx +53 -0
- package/dist/SegmentControl/SegmentControl.cjs +46 -11
- package/dist/SegmentControl/SegmentControl.cjs.map +1 -1
- package/dist/SegmentControl/SegmentControl.js +46 -11
- package/dist/SegmentControl/SegmentControl.js.map +1 -1
- package/dist/SegmentControl/__tests__/SegmentControl.test.tsx +145 -0
- package/dist/SideMenu/SideMenuHeader.cjs +12 -3
- package/dist/SideMenu/SideMenuHeader.cjs.map +1 -1
- package/dist/SideMenu/SideMenuHeader.js +12 -3
- package/dist/SideMenu/SideMenuHeader.js.map +1 -1
- package/dist/SideMenu/__tests__/SideMenu.test.tsx +99 -0
- package/dist/Switcher/SwitcherMenuItem.cjs +4 -1
- package/dist/Switcher/SwitcherMenuItem.cjs.map +1 -1
- package/dist/Switcher/SwitcherMenuItem.js +4 -1
- package/dist/Switcher/SwitcherMenuItem.js.map +1 -1
- package/dist/Switcher/__tests__/SwitcherMenuItem.tsx +14 -0
- package/dist/Table/TableFooter.cjs +8 -2
- package/dist/Table/TableFooter.cjs.map +1 -1
- package/dist/Table/TableFooter.js +8 -2
- package/dist/Table/TableFooter.js.map +1 -1
- package/dist/Table/TableStyles.cjs +132 -33
- package/dist/Table/TableStyles.cjs.map +1 -1
- package/dist/Table/TableStyles.js +132 -33
- package/dist/Table/TableStyles.js.map +1 -1
- package/dist/Table/__tests__/Table.test.tsx +499 -0
- package/dist/Tabs/HorizontalTabs.cjs +68 -18
- package/dist/Tabs/HorizontalTabs.cjs.map +1 -1
- package/dist/Tabs/HorizontalTabs.js +68 -18
- package/dist/Tabs/HorizontalTabs.js.map +1 -1
- package/dist/Tabs/TabLink.cjs +4 -1
- package/dist/Tabs/TabLink.cjs.map +1 -1
- package/dist/Tabs/TabLink.js +4 -1
- package/dist/Tabs/TabLink.js.map +1 -1
- package/dist/Tabs/__tests__/HorizontalTabs.test.tsx +95 -0
- package/dist/Tabs/__tests__/TabLink.test.tsx +40 -0
- package/dist/Tabs/__tests__/TabLink.tests.d.ts +1 -0
- package/dist/Tabs/__tests__/Tablist.test.tsx +37 -0
- package/dist/Tabs/__tests__/Tablist.tests.d.ts +2 -0
- package/dist/Tag/Tag.cjs +2 -2
- package/dist/Tag/Tag.cjs.map +1 -1
- package/dist/Tag/Tag.js +2 -2
- package/dist/Tag/Tag.js.map +1 -1
- package/dist/Tag/__tests__/Tag.test.tsx +86 -0
- package/dist/Tile/Tile.cjs +8 -2
- package/dist/Tile/Tile.cjs.map +1 -1
- package/dist/Tile/Tile.js +8 -2
- package/dist/Tile/Tile.js.map +1 -1
- package/dist/Tile/TileCommonItems.cjs +8 -2
- package/dist/Tile/TileCommonItems.cjs.map +1 -1
- package/dist/Tile/TileCommonItems.js +8 -2
- package/dist/Tile/TileCommonItems.js.map +1 -1
- package/dist/Tile/TileFooter.cjs +4 -1
- package/dist/Tile/TileFooter.cjs.map +1 -1
- package/dist/Tile/TileFooter.js +4 -1
- package/dist/Tile/TileFooter.js.map +1 -1
- package/dist/Tile/TileHeader.cjs +12 -3
- package/dist/Tile/TileHeader.cjs.map +1 -1
- package/dist/Tile/TileHeader.js +12 -3
- package/dist/Tile/TileHeader.js.map +1 -1
- package/dist/Toasters/Toast.cjs +62 -13
- package/dist/Toasters/Toast.cjs.map +1 -1
- package/dist/Toasters/Toast.js +62 -13
- package/dist/Toasters/Toast.js.map +1 -1
- package/dist/Toasters/__tests__/Toast.test.tsx +74 -0
- package/dist/Toggles/ToggleButton.cjs +9 -3
- package/dist/Toggles/ToggleButton.cjs.map +1 -1
- package/dist/Toggles/ToggleButton.d.ts +1 -1
- package/dist/Toggles/ToggleButton.js +9 -3
- package/dist/Toggles/ToggleButton.js.map +1 -1
- package/dist/Toggles/TogglerStyles.cjs +22 -8
- package/dist/Toggles/TogglerStyles.cjs.map +1 -1
- package/dist/Toggles/TogglerStyles.js +22 -8
- package/dist/Toggles/TogglerStyles.js.map +1 -1
- package/dist/Toggles/__tests__/ToggleButton.test.tsx +53 -0
- package/dist/Toggles/__tests__/ToggleSwitch.test.tsx +87 -0
- package/dist/Tooltips/TooltipStyles.cjs +28 -6
- package/dist/Tooltips/TooltipStyles.cjs.map +1 -1
- package/dist/Tooltips/TooltipStyles.js +28 -6
- package/dist/Tooltips/TooltipStyles.js.map +1 -1
- package/dist/Tooltips/__tests__/TooltipWrapper.test.tsx +16 -0
- package/dist/common/InputStyling.cjs +30 -7
- package/dist/common/InputStyling.cjs.map +1 -1
- package/dist/common/InputStyling.js +30 -7
- package/dist/common/InputStyling.js.map +1 -1
- package/dist/common/Link.cjs +45 -0
- package/dist/common/Link.cjs.map +1 -0
- package/dist/common/Link.d.ts +9 -0
- package/dist/common/Link.js +37 -0
- package/dist/common/Link.js.map +1 -0
- package/dist/common/NavigationHelper.cjs +30 -0
- package/dist/common/NavigationHelper.cjs.map +1 -0
- package/dist/common/NavigationHelper.d.ts +4 -0
- package/dist/common/NavigationHelper.js +23 -0
- package/dist/common/NavigationHelper.js.map +1 -0
- package/dist/custom.d.ts +2 -0
- package/dist/styles/colors.cjs +439 -84
- package/dist/styles/colors.cjs.map +1 -1
- package/dist/styles/colors.d.ts +200 -11
- package/dist/styles/colors.js +439 -84
- package/dist/styles/colors.js.map +1 -1
- package/dist/styles/global.cjs +19 -2
- package/dist/styles/global.cjs.map +1 -1
- package/dist/styles/global.d.ts +3 -2
- package/dist/styles/global.js +18 -3
- package/dist/styles/global.js.map +1 -1
- package/dist/styles/index.cjs +21 -9
- package/dist/styles/index.cjs.map +1 -1
- package/dist/styles/index.d.ts +2 -2
- package/dist/styles/index.js +18 -6
- package/dist/styles/index.js.map +1 -1
- package/dist/styles/react-datepicker.css +766 -0
- package/dist/utils/color-tokens.cjs +91 -0
- package/dist/utils/color-tokens.cjs.map +1 -0
- package/dist/utils/color-tokens.d.ts +19 -0
- package/dist/utils/color-tokens.js +82 -0
- package/dist/utils/color-tokens.js.map +1 -0
- package/package.json +144 -141
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { act, fireEvent, render, RenderResult } from '../../test-utils';
|
|
3
|
+
import { ChipInput, Size } from '../..';
|
|
4
|
+
import '../../../jest.setup';
|
|
5
|
+
|
|
6
|
+
const list = ['Contact', 'About', 'Base', 'Blog', 'Custom', 'Support', 'Tools'];
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
describe('<ChipInput />', () => {
|
|
11
|
+
it('Render component correctly', async () => {
|
|
12
|
+
let componentResult: RenderResult;
|
|
13
|
+
|
|
14
|
+
//initial values are determined by using multiple hooks (useEffect)
|
|
15
|
+
//in order to be sure we get the last rendered version of the component, we need to wait for it
|
|
16
|
+
await act(async () => {
|
|
17
|
+
componentResult = render(
|
|
18
|
+
<ChipInput size={Size.Medium} inputId="utest" values={[list[0]]} onValueChange={() => {}} placeholder="Plchd label" altPlaceholder="Alt plchd label" />,
|
|
19
|
+
);
|
|
20
|
+
});
|
|
21
|
+
//check element wrapper component rendered
|
|
22
|
+
expect(componentResult!.getByTestId('chip-input-container')).toBeTruthy();
|
|
23
|
+
//check correct placeholder displayed
|
|
24
|
+
expect(componentResult!.getByPlaceholderText('Alt plchd label') as HTMLInputElement).toBeTruthy();
|
|
25
|
+
//check chip input with provided id rendered
|
|
26
|
+
expect(componentResult!.container.querySelector('input[id="utest"]')).toBeTruthy();
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
it('Render component with correct size', async () => {
|
|
30
|
+
let componentResult: RenderResult;
|
|
31
|
+
|
|
32
|
+
await act(async () => {
|
|
33
|
+
componentResult = render(
|
|
34
|
+
<ChipInput size={Size.Small} inputId="utest" values={[list[0]]} onValueChange={() => {}} placeholder="Plchd label" altPlaceholder="Alt plchd label" />,
|
|
35
|
+
);
|
|
36
|
+
});
|
|
37
|
+
//check element wrapper component rendered
|
|
38
|
+
expect(componentResult!.getByTestId('chip-input-container')).toBeTruthy();
|
|
39
|
+
|
|
40
|
+
//check element has correct class size present
|
|
41
|
+
expect(componentResult!.getByTestId('chip-input-container')).toHaveClass('small');
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
it('Test component focused on click', async () => {
|
|
45
|
+
let componentResult: RenderResult;
|
|
46
|
+
|
|
47
|
+
//initial values are determined by using multiple hooks (useEffect)
|
|
48
|
+
//in order to be sure we get the last rendered version of the component, we need to wait for it
|
|
49
|
+
await act(async () => {
|
|
50
|
+
componentResult = render(
|
|
51
|
+
<ChipInput size={Size.Small} inputId="utest" values={[list[0]]} onValueChange={() => {}} placeholder="Plchd label" altPlaceholder="Alt plchd label" />,
|
|
52
|
+
);
|
|
53
|
+
});
|
|
54
|
+
//check element wrapper component rendered
|
|
55
|
+
expect(componentResult!.getByTestId('chip-input-container')).toBeTruthy();
|
|
56
|
+
|
|
57
|
+
//check focus not present
|
|
58
|
+
expect(componentResult!.getByPlaceholderText('Alt plchd label') as HTMLInputElement).not.toHaveFocus();
|
|
59
|
+
|
|
60
|
+
//trigger click for chip input
|
|
61
|
+
fireEvent.click(componentResult!.getByTestId('chip-input-container'));
|
|
62
|
+
|
|
63
|
+
//check focus present
|
|
64
|
+
expect(componentResult!.getByPlaceholderText('Alt plchd label') as HTMLInputElement).toHaveFocus();
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
it('Test component callbacks', async () => {
|
|
68
|
+
const onValueChange = jest.fn();
|
|
69
|
+
let componentResult: RenderResult;
|
|
70
|
+
|
|
71
|
+
//initial values are determined by using multiple hooks (useEffect)
|
|
72
|
+
//in order to be sure we get the last rendered version of the component, we need to wait for it
|
|
73
|
+
await act(async () => {
|
|
74
|
+
componentResult = render(
|
|
75
|
+
<ChipInput size={Size.Small} inputId="utest" values={[list[0]]} onValueChange={onValueChange} placeholder="Plchd label" altPlaceholder="Alt plchd label" />,
|
|
76
|
+
);
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
//mock scrollIntoView otherwise test will fail when selecting an item
|
|
80
|
+
window.HTMLElement.prototype.scrollIntoView = function () {};
|
|
81
|
+
|
|
82
|
+
const inputElem = componentResult!.getByPlaceholderText('Alt plchd label') as HTMLInputElement;
|
|
83
|
+
|
|
84
|
+
//check element wrapper component rendered
|
|
85
|
+
expect(componentResult!.getByTestId('chip-input-container')).toBeTruthy();
|
|
86
|
+
|
|
87
|
+
//trigger click for chip input
|
|
88
|
+
fireEvent.click(componentResult!.getByTestId('chip-input-container'));
|
|
89
|
+
|
|
90
|
+
//trigger value change
|
|
91
|
+
fireEvent.change(inputElem, { target: { value: list[1] } });
|
|
92
|
+
|
|
93
|
+
//pressing enter will automatically select the found item
|
|
94
|
+
fireEvent.keyDown(inputElem, { key: 'Enter', code: 'Enter', charCode: 13 });
|
|
95
|
+
|
|
96
|
+
expect(onValueChange).toHaveBeenCalledTimes(1);
|
|
97
|
+
|
|
98
|
+
//two items present, default and the new selected one
|
|
99
|
+
expect(componentResult!.container.querySelectorAll('.chip-icon')).toHaveLength(2);
|
|
100
|
+
|
|
101
|
+
//pressing on the x button, the item will be removed from selection
|
|
102
|
+
const removeItemElem = componentResult!.getByTestId('chip-input-container').querySelector('div.chip-icon') as HTMLDivElement;
|
|
103
|
+
|
|
104
|
+
fireEvent.click(removeItemElem);
|
|
105
|
+
|
|
106
|
+
//change callback should be called
|
|
107
|
+
expect(onValueChange).toHaveBeenCalledTimes(2);
|
|
108
|
+
//only one item should be present at the moment
|
|
109
|
+
expect(componentResult!.container.querySelectorAll('.chip-icon')).toHaveLength(1);
|
|
110
|
+
|
|
111
|
+
//expect that on pressing backspace the added item will be deleted
|
|
112
|
+
fireEvent.keyDown(inputElem, { key: 'Backspace', charCode: 8 });
|
|
113
|
+
|
|
114
|
+
//no item should be present at the moment
|
|
115
|
+
expect(componentResult!.container.querySelectorAll('.chip-icon')).toHaveLength(0);
|
|
116
|
+
});
|
|
117
|
+
|
|
118
|
+
it('Test component chips are removed when clear all button toggled', async () => {
|
|
119
|
+
const onValueChange = jest.fn();
|
|
120
|
+
let componentResult: RenderResult;
|
|
121
|
+
|
|
122
|
+
//initial values are determined by using multiple hooks (useEffect)
|
|
123
|
+
//in order to be sure we get the last rendered version of the component, we need to wait for it
|
|
124
|
+
await act(async () => {
|
|
125
|
+
componentResult = render(
|
|
126
|
+
<ChipInput size={Size.Small} inputId="utest" values={[list[0]]} onValueChange={onValueChange} placeholder="Plchd label" altPlaceholder="Alt plchd label" />,
|
|
127
|
+
);
|
|
128
|
+
});
|
|
129
|
+
|
|
130
|
+
//check element wrapper component rendered
|
|
131
|
+
expect(componentResult!.getByTestId('chip-input-container')).toBeTruthy();
|
|
132
|
+
|
|
133
|
+
//one item present, the default one
|
|
134
|
+
expect(componentResult!.container.querySelectorAll('.chip-icon')).toHaveLength(1);
|
|
135
|
+
const input = componentResult!.getByPlaceholderText('Alt plchd label') as HTMLInputElement;
|
|
136
|
+
|
|
137
|
+
const mockInputData = 'mock data';
|
|
138
|
+
//trigger value change
|
|
139
|
+
fireEvent.change(input, { target: { value: mockInputData } });
|
|
140
|
+
|
|
141
|
+
expect(input).toHaveValue(mockInputData);
|
|
142
|
+
|
|
143
|
+
//expect clear button to be displayed
|
|
144
|
+
expect(componentResult!.getByTestId('clear-btn-utest')).toBeTruthy();
|
|
145
|
+
|
|
146
|
+
//press on clear button
|
|
147
|
+
fireEvent.click(componentResult!.getByTestId('clear-btn-utest'));
|
|
148
|
+
|
|
149
|
+
//expect input to have no value
|
|
150
|
+
expect(input).toHaveValue('');
|
|
151
|
+
|
|
152
|
+
//one chip selected
|
|
153
|
+
expect(componentResult!.container.querySelectorAll('.chip-icon')).toHaveLength(1);
|
|
154
|
+
});
|
|
155
|
+
});
|
|
@@ -191,7 +191,10 @@ const BasicDropdown = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
191
191
|
children: getDisplayItems()
|
|
192
192
|
}) : null, isLoading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_LoadingIndicator.LoadingIndicator, {
|
|
193
193
|
size: _types.Size.Small,
|
|
194
|
-
color: _styles.COLORS.
|
|
194
|
+
color: _styles.COLORS.generateToken({
|
|
195
|
+
componentType: 'icon',
|
|
196
|
+
defaultVariant: 'subtle'
|
|
197
|
+
}, theme)
|
|
195
198
|
}) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
196
199
|
className: 'icon dropdown-arrow',
|
|
197
200
|
children: isOpen ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SystemIcons.ArrowDropUp, {
|
|
@@ -239,13 +242,19 @@ const BasicDropdown = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
239
242
|
})]
|
|
240
243
|
}), activeValidationMessage && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_InputFields.ErrorMessage, {
|
|
241
244
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SystemIcons.TechnicalWarning, {
|
|
242
|
-
color: _styles.COLORS.
|
|
245
|
+
color: _styles.COLORS.generateToken({
|
|
246
|
+
componentType: 'icon',
|
|
247
|
+
defaultVariant: 'critical'
|
|
248
|
+
}, theme)
|
|
243
249
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
244
250
|
children: activeValidationMessage
|
|
245
251
|
})]
|
|
246
252
|
}), autofilledMessage && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_InputFields.AutofilledMessage, {
|
|
247
253
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SystemIcons.Information, {
|
|
248
|
-
color: _styles.COLORS.
|
|
254
|
+
color: _styles.COLORS.generateToken({
|
|
255
|
+
componentType: 'icon',
|
|
256
|
+
defaultVariant: 'subtle'
|
|
257
|
+
}, theme)
|
|
249
258
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
250
259
|
children: autofilledMessage
|
|
251
260
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasicDropdown.cjs","names":["React","_interopRequireWildcard","require","_styles","_icons","_LoadingIndicator","_CommonStyling","_DropdownContent","_interopRequireDefault","_InputFields","_TooltipOverflow","_types","_common","_styledComponents","_jsxRuntime","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","BasicDropdown","forwardRef","props","ref","id","list","placeholder","messageOnNoResults","itemsType","action","actionLabel","actionVariant","actionIcon","actionLoading","actionDisabled","pinTopItem","scrollable","maxHeight","disabled","readOnly","isButton","activeValidationMessage","autofilledMessage","size","margin","minWidth","className","overflowTooltipPosition","onBlur","dataTestId","onSelect","textOverflow","dropdownIcon","rest","_objectWithoutProperties2","theme","useTheme","isOpen","setIsOpen","useState","activeDescendant","setActiveDescendant","isLoading","setIsLoading","input","setInput","focused","setFocused","keyboardNavigated","setKeyboardNavigated","inputRef","useRef","styledFieldRef","useFocusVisibleRef","dropdownRef","resetDropdown","containerRef","useFocusOutsideRef","useClickOutsideRef","handleKeyDown","key","handleValueSelect","values","join","multiSelect","undefined","current","focus","focusVisible","useEffect","value","useImperativeHandle","customSetIsOpen","getDisplayItems","split","map","val","trim","listDisplayLabels","item","includes","l","displayLabel","handleBlur","currentTarget","contains","relatedTarget","cls","concat","jsxs","Fragment","children","DropdownContainer","role","$isButton","$readOnly","$disabled","DropdownInputFieldStyles","onMouseDown","defaultOnMouseDownHandler","onClick","stopPropagation","blur","tabIndex","$isPlaceholder","$showValidationMessage","onKeyDown","$minWidth","jsx","DropdownInputField","type","$ellipsis","position","withArrow","maxWidth","align","LoadingIndicator","Size","Small","color","COLORS","getColor","SystemIcons","ArrowDropUp","ArrowDropDown","onActiveDescendantChanged","customizationProps","onValueUpdate","items","ariaRolesType","outline","selectedValues","setSelectedValues","ErrorMessage","TechnicalWarning","AutofilledMessage","Information","propTypes","_propTypes","array","isRequired","oneOf","func","string","node","bool","disableSorting","_default","exports"],"sources":["../../src/Dropdown/BasicDropdown.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport {COLORS} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {LoadingIndicator} from '../LoadingIndicator';\r\nimport {DropdownContainer, DropdownInputFieldStyles, DropdownInputField} from './CommonStyling';\r\nimport DropdownContent, {DropdownItem} from './DropdownContent';\r\nimport {AutofilledMessage, ErrorMessage} from '../InputFields';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\nimport {Size, Testable} from '../types';\r\nimport {defaultOnMouseDownHandler, useClickOutsideRef, useFocusVisibleRef} from '../common';\r\nimport {useFocusOutsideRef} from '../common';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport interface BasicDropdownCommonProps extends Testable, Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect' | 'placeholder' | 'tabIndex' | 'onMouseDown' | 'onClick' | 'onKeyDown'>{\r\n /**\r\n * Required. An array of DropdownItem objects representing the items in the dropdown.\r\n */\r\n list: DropdownItem[];\r\n /**\r\n * Optional. The type of the items in the dropdown. Can be 'normal', 'checkbox', or 'radio'.\r\n */\r\n itemsType?: 'normal' | 'checkbox' | 'radio';\r\n /**\r\n * Optional. A function to be called when the action button in the dropdown is clicked.\r\n */\r\n action?: () => void;\r\n /**\r\n * Optional. The label for the action button in the dropdown.\r\n */\r\n actionLabel?: string;\r\n /**\r\n * Optional. The variant of the action button in the dropdown. Can be 'primary', 'secondary', 'tertiary', or undefined.\r\n */\r\n actionVariant?: 'primary' | 'secondary' | 'tertiary' | undefined;\r\n /**\r\n * Optional. The icon for the action button in the dropdown.\r\n */\r\n actionIcon?: React.ReactNode;\r\n /**\r\n * Optional. A boolean indicating whether the action button in the dropdown is loading.\r\n */\r\n actionLoading?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the action button in the dropdown is disabled.\r\n */\r\n actionDisabled?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the top item in the dropdown should be pinned.\r\n */\r\n pinTopItem?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown content is scrollable.\r\n */\r\n scrollable?: boolean;\r\n /**\r\n * Optional. The maximum height of the dropdown.\r\n */\r\n maxHeight?: string;\r\n /*\r\n * Optional. Placeholder text to be shown when none of the items is selected is selected\r\n */\r\n placeholder?: string;\r\n /**\r\n * Optional. A boolean indicating whether sorting is disabled in the dropdown.\r\n */\r\n disableSorting?: boolean;\r\n /**\r\n * Optional. The message to be displayed when there are no results in the dropdown.\r\n */\r\n messageOnNoResults?: string;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is disabled.\r\n */\r\n disabled?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is read-only.\r\n */\r\n readOnly?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is a button.\r\n */\r\n isButton?: boolean;\r\n /**\r\n * Optional. The validation message to be displayed when the dropdown is active.\r\n */\r\n activeValidationMessage?: string;\r\n /**\r\n * Optional. The message to be displayed when the dropdown is autofilled.\r\n */\r\n autofilledMessage?: string;\r\n /**\r\n * Optional. The size of the dropdown. Can be 'Small' or 'Medium'.\r\n */ \r\n size?: Size.Small | Size.Medium;\r\n /**\r\n * Optional. The margin of the dropdown. Can be any valid CSS margin value.\r\n */\r\n margin?: string;\r\n /**\r\n * Optional. The minimum width of the dropdown.\r\n */\r\n minWidth?: string;\r\n /**\r\n * Optional. The text overflow behavior of the dropdown. Can be 'ellipsis' or 'default'.\r\n */\r\n textOverflow?: 'ellipsis' | 'default';\r\n /**\r\n * Optional. The position of the tooltip when dropdown is closed. Can be 'top' or 'bottom'.\r\n */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n /**\r\n * Optional. The action icon to be shown on the rightside of the dropdown that opens dropdown content.\r\n */\r\n dropdownIcon?: React.ReactNode;\r\n}\r\n\r\nexport type BasicDropdownMultiSelectProps = BasicDropdownCommonProps & {\r\n /** Required. If this flag is set then user can select multiple items. */\r\n multiSelect: true;\r\n /** Required. Selected items. */\r\n value?: string[];\r\n /** Required. Callback handler to call when user selects one of the items. Provides all selected items after last change. */\r\n onSelect: (value: string[]) => void;\r\n}\r\n\r\nexport type BasucDropdownSingleSelectProps = BasicDropdownCommonProps & {\r\n /** Required. If this flag is set then user can select multiple items. */\r\n multiSelect?: false;\r\n /** Required. Selected item. */\r\n value?: string;\r\n /** Required. Callback handler to call when user selects one of the items. Provides value of selected item. */\r\n onSelect: (value: string) => void;\r\n}\r\n\r\nexport type BasicDropdownProps = BasucDropdownSingleSelectProps | BasicDropdownMultiSelectProps;\r\n\r\nconst BasicDropdown = React.forwardRef((props: BasicDropdownProps, ref) => {\r\n const {\r\n id,\r\n list,\r\n placeholder,\r\n messageOnNoResults,\r\n itemsType = 'normal',\r\n action,\r\n actionLabel,\r\n actionVariant,\r\n actionIcon,\r\n actionLoading,\r\n actionDisabled,\r\n pinTopItem,\r\n scrollable = true,\r\n maxHeight,\r\n disabled,\r\n readOnly,\r\n isButton,\r\n activeValidationMessage,\r\n autofilledMessage,\r\n size,\r\n margin,\r\n minWidth,\r\n className,\r\n overflowTooltipPosition,\r\n onBlur,\r\n dataTestId,\r\n onSelect,\r\n textOverflow = 'ellipsis',\r\n dropdownIcon,\r\n ...rest\r\n } = props;\r\n\r\n const theme = useTheme();\r\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\r\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\r\n const [isLoading, setIsLoading] = React.useState<boolean>(false);\r\n const [input, setInput] = React.useState<string>('');\r\n const [focused, setFocused] = React.useState<number | null>(null);\r\n \r\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\r\n\r\n const inputRef = React.useRef<HTMLInputElement>(null);\r\n const styledFieldRef = useFocusVisibleRef([inputRef]);\r\n const dropdownRef = React.useRef<HTMLDivElement>(null);\r\n\r\n const resetDropdown = () => {\r\n setIsOpen(false);\r\n setFocused(null);\r\n };\r\n\r\n const containerRef = useFocusOutsideRef(resetDropdown, [dropdownRef]);\r\n\r\n useClickOutsideRef(resetDropdown, [], containerRef);\r\n\r\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\r\n if (e.key === 'Enter' || e.key === ' ') {\r\n setIsOpen(!isOpen);\r\n setKeyboardNavigated(true);\r\n }\r\n };\r\n\r\n const handleValueSelect = (values: string[]) => {\r\n setInput(values.join(', '));\r\n\r\n if (props.multiSelect === true) {\r\n props.onSelect(values);\r\n } else if (props.multiSelect === false || props.multiSelect === undefined) {\r\n props.onSelect(values[0]);\r\n }\r\n\r\n //don't close dropdown on item select if have custom action or multiselect\r\n if (actionLabel || props.multiSelect) return;\r\n\r\n if (keyboardNavigated) {\r\n styledFieldRef.current?.focus({focusVisible: true} as any);\r\n }\r\n setIsOpen(false);\r\n setFocused(null);\r\n };\r\n\r\n React.useEffect(() => {\r\n if (props.value) {\r\n if (props.multiSelect) {\r\n setInput(props.value.join(', '));\r\n } else if (props.multiSelect === false || props.multiSelect === undefined) {\r\n setInput(props.value);\r\n }\r\n } else {\r\n setInput('');\r\n }\r\n }, [props.value, props.multiSelect]);\r\n\r\n React.useEffect(() => {\r\n setIsLoading(false);\r\n }, [input]);\r\n\r\n React.useEffect(() => {\r\n !isOpen && setKeyboardNavigated(false);\r\n }, [isOpen]);\r\n\r\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\r\n\r\n const customSetIsOpen = (isOpen: boolean) => {\r\n setIsOpen(isOpen);\r\n };\r\n\r\n const getDisplayItems = () => {\r\n const values = input.split(',').map((val) => val.trim());\r\n const listDisplayLabels = list.filter((item) => values.includes(item.value)).map((l) => l.displayLabel);\r\n return listDisplayLabels.join(', ');\r\n };\r\n\r\n const handleBlur = (e: React.FocusEvent<HTMLDivElement>) => {\r\n // @ts-ignore\r\n if (!e.currentTarget.contains(e.relatedTarget)) {\r\n onBlur && onBlur(e);\r\n }\r\n };\r\n\r\n const cls = (isOpen ? 'expanded ' : '').concat(size ? size : '').concat(isButton ? ' button ' : '').concat(className ? ` ${className}` : '');\r\n \r\n return (\r\n <>\r\n <DropdownContainer ref={containerRef}\r\n aria-expanded={isOpen ? true : false}\r\n aria-activedescendant={activeDescendant}\r\n aria-controls={`${id}_dropdowncontent`}\r\n role=\"listbox\"\r\n aria-multiselectable={props.multiSelect}\r\n $isButton={isButton || false}\r\n className={size ? size : ''}\r\n $readOnly={readOnly}\r\n $disabled={disabled}\r\n margin={margin}\r\n onBlur={handleBlur}\r\n minWidth={minWidth}>\r\n <DropdownInputFieldStyles\r\n ref={styledFieldRef}\r\n className={cls}\r\n onMouseDown={defaultOnMouseDownHandler}\r\n onClick={(e) => {\r\n if (!readOnly && !disabled) {\r\n e.stopPropagation();\r\n setIsOpen(!isOpen);\r\n if (isOpen) {\r\n inputRef.current?.blur();\r\n } else {\r\n inputRef.current?.focus();\r\n }\r\n }\r\n }}\r\n tabIndex={disabled || readOnly ? -1 : 0}\r\n $disabled={disabled || false}\r\n $readOnly={readOnly || false}\r\n $isPlaceholder={!input}\r\n $showValidationMessage={!!activeValidationMessage}\r\n onKeyDown={handleKeyDown}\r\n $minWidth={minWidth}\r\n {...rest}>\r\n <DropdownInputField\r\n ref={inputRef}\r\n type=\"search\"\r\n $ellipsis={textOverflow == 'ellipsis'}\r\n id={id}\r\n data-testid={dataTestId}\r\n readOnly\r\n placeholder={placeholder}\r\n value={getDisplayItems()}\r\n className={size ? `${size} value` : 'value'}\r\n tabIndex={-1}\r\n disabled={disabled || false}\r\n />\r\n {!isOpen ? <TooltipOverflow position={overflowTooltipPosition} input={inputRef} withArrow={true} maxWidth=\"100%\" size={size} align='end'>\r\n {getDisplayItems()}\r\n </TooltipOverflow> : null}\r\n {isLoading ? <LoadingIndicator size={Size.Small} color={COLORS.getColor('neutral_600', theme)}/> : null}\r\n <div className={'icon dropdown-arrow'}>\r\n {isOpen ? <SystemIcons.ArrowDropUp aria-label='Expanded' size=\"24px\" className={size ? size : ''}/> :\r\n (dropdownIcon ?? <SystemIcons.ArrowDropDown aria-label='Collapsed' size=\"24px\" className={size ? size : ''}/>)}\r\n </div>\r\n </DropdownInputFieldStyles>\r\n {!readOnly && !disabled && (\r\n <DropdownContent\r\n ref={dropdownRef}\r\n containerRef={containerRef}\r\n onActiveDescendantChanged={(id) => setActiveDescendant(id)}\r\n customizationProps={{\r\n itemsType: itemsType,\r\n action: action ?? (() => {\r\n }),\r\n actionLabel: actionLabel,\r\n actionVariant: actionVariant,\r\n actionDisabled: actionDisabled,\r\n scrollable: scrollable,\r\n onValueUpdate: handleValueSelect,\r\n items: list,\r\n multiSelect: props.multiSelect,\r\n pinTopItem: pinTopItem,\r\n maxHeight: maxHeight,\r\n actionIcon: actionIcon,\r\n actionLoading: actionLoading,\r\n }}\r\n ariaRolesType=\"input\"\r\n focused={focused}\r\n setFocused={setFocused}\r\n size={size ?? Size.Small}\r\n filter={''}\r\n isOpen={isOpen}\r\n setIsOpen={customSetIsOpen}\r\n messageOnNoResults={messageOnNoResults ?? ''}\r\n outline={keyboardNavigated}\r\n isButton={isButton || false}\r\n selectedValues={props.multiSelect ? props.value || [] : [props.value || '']}\r\n setSelectedValues={handleValueSelect}\r\n id={`${id}_dropdowncontent`}\r\n />\r\n )}\r\n </DropdownContainer>\r\n {activeValidationMessage && (\r\n <ErrorMessage>\r\n <SystemIcons.TechnicalWarning color={COLORS.getColor('critical_400', theme)}/>\r\n <span>{activeValidationMessage}</span>\r\n </ErrorMessage>\r\n )}\r\n {autofilledMessage && (\r\n <AutofilledMessage>\r\n <SystemIcons.Information color={COLORS.getColor('neutral_600', theme)}/>\r\n <span>{autofilledMessage}</span>\r\n </AutofilledMessage>\r\n )}\r\n </>\r\n );\r\n});\r\n\r\nexport default BasicDropdown;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"BasicDropdown.cjs","names":["React","_interopRequireWildcard","require","_styles","_icons","_LoadingIndicator","_CommonStyling","_DropdownContent","_interopRequireDefault","_InputFields","_TooltipOverflow","_types","_common","_styledComponents","_jsxRuntime","_excluded","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","BasicDropdown","forwardRef","props","ref","id","list","placeholder","messageOnNoResults","itemsType","action","actionLabel","actionVariant","actionIcon","actionLoading","actionDisabled","pinTopItem","scrollable","maxHeight","disabled","readOnly","isButton","activeValidationMessage","autofilledMessage","size","margin","minWidth","className","overflowTooltipPosition","onBlur","dataTestId","onSelect","textOverflow","dropdownIcon","rest","_objectWithoutProperties2","theme","useTheme","isOpen","setIsOpen","useState","activeDescendant","setActiveDescendant","isLoading","setIsLoading","input","setInput","focused","setFocused","keyboardNavigated","setKeyboardNavigated","inputRef","useRef","styledFieldRef","useFocusVisibleRef","dropdownRef","resetDropdown","containerRef","useFocusOutsideRef","useClickOutsideRef","handleKeyDown","key","handleValueSelect","values","join","multiSelect","undefined","current","focus","focusVisible","useEffect","value","useImperativeHandle","customSetIsOpen","getDisplayItems","split","map","val","trim","listDisplayLabels","item","includes","l","displayLabel","handleBlur","currentTarget","contains","relatedTarget","cls","concat","jsxs","Fragment","children","DropdownContainer","role","$isButton","$readOnly","$disabled","DropdownInputFieldStyles","onMouseDown","defaultOnMouseDownHandler","onClick","stopPropagation","blur","tabIndex","$isPlaceholder","$showValidationMessage","onKeyDown","$minWidth","jsx","DropdownInputField","type","$ellipsis","position","withArrow","maxWidth","align","LoadingIndicator","Size","Small","color","COLORS","generateToken","componentType","defaultVariant","SystemIcons","ArrowDropUp","ArrowDropDown","onActiveDescendantChanged","customizationProps","onValueUpdate","items","ariaRolesType","outline","selectedValues","setSelectedValues","ErrorMessage","TechnicalWarning","AutofilledMessage","Information","propTypes","_propTypes","array","isRequired","oneOf","func","string","node","bool","disableSorting","_default","exports"],"sources":["../../src/Dropdown/BasicDropdown.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport {COLORS} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {LoadingIndicator} from '../LoadingIndicator';\r\nimport {DropdownContainer, DropdownInputFieldStyles, DropdownInputField} from './CommonStyling';\r\nimport DropdownContent, {DropdownItem} from './DropdownContent';\r\nimport {AutofilledMessage, ErrorMessage} from '../InputFields';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\nimport {Size, Testable} from '../types';\r\nimport {defaultOnMouseDownHandler, useClickOutsideRef, useFocusVisibleRef} from '../common';\r\nimport {useFocusOutsideRef} from '../common';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport interface BasicDropdownCommonProps extends Testable, Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect' | 'placeholder' | 'tabIndex' | 'onMouseDown' | 'onClick' | 'onKeyDown'>{\r\n /**\r\n * Required. An array of DropdownItem objects representing the items in the dropdown.\r\n */\r\n list: DropdownItem[];\r\n /**\r\n * Optional. The type of the items in the dropdown. Can be 'normal', 'checkbox', or 'radio'.\r\n */\r\n itemsType?: 'normal' | 'checkbox' | 'radio';\r\n /**\r\n * Optional. A function to be called when the action button in the dropdown is clicked.\r\n */\r\n action?: () => void;\r\n /**\r\n * Optional. The label for the action button in the dropdown.\r\n */\r\n actionLabel?: string;\r\n /**\r\n * Optional. The variant of the action button in the dropdown. Can be 'primary', 'secondary', 'tertiary', or undefined.\r\n */\r\n actionVariant?: 'primary' | 'secondary' | 'tertiary' | undefined;\r\n /**\r\n * Optional. The icon for the action button in the dropdown.\r\n */\r\n actionIcon?: React.ReactNode;\r\n /**\r\n * Optional. A boolean indicating whether the action button in the dropdown is loading.\r\n */\r\n actionLoading?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the action button in the dropdown is disabled.\r\n */\r\n actionDisabled?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the top item in the dropdown should be pinned.\r\n */\r\n pinTopItem?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown content is scrollable.\r\n */\r\n scrollable?: boolean;\r\n /**\r\n * Optional. The maximum height of the dropdown.\r\n */\r\n maxHeight?: string;\r\n /*\r\n * Optional. Placeholder text to be shown when none of the items is selected is selected\r\n */\r\n placeholder?: string;\r\n /**\r\n * Optional. A boolean indicating whether sorting is disabled in the dropdown.\r\n */\r\n disableSorting?: boolean;\r\n /**\r\n * Optional. The message to be displayed when there are no results in the dropdown.\r\n */\r\n messageOnNoResults?: string;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is disabled.\r\n */\r\n disabled?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is read-only.\r\n */\r\n readOnly?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is a button.\r\n */\r\n isButton?: boolean;\r\n /**\r\n * Optional. The validation message to be displayed when the dropdown is active.\r\n */\r\n activeValidationMessage?: string;\r\n /**\r\n * Optional. The message to be displayed when the dropdown is autofilled.\r\n */\r\n autofilledMessage?: string;\r\n /**\r\n * Optional. The size of the dropdown. Can be 'Small' or 'Medium'.\r\n */ \r\n size?: Size.Small | Size.Medium;\r\n /**\r\n * Optional. The margin of the dropdown. Can be any valid CSS margin value.\r\n */\r\n margin?: string;\r\n /**\r\n * Optional. The minimum width of the dropdown.\r\n */\r\n minWidth?: string;\r\n /**\r\n * Optional. The text overflow behavior of the dropdown. Can be 'ellipsis' or 'default'.\r\n */\r\n textOverflow?: 'ellipsis' | 'default';\r\n /**\r\n * Optional. The position of the tooltip when dropdown is closed. Can be 'top' or 'bottom'.\r\n */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n /**\r\n * Optional. The action icon to be shown on the rightside of the dropdown that opens dropdown content.\r\n */\r\n dropdownIcon?: React.ReactNode;\r\n}\r\n\r\nexport type BasicDropdownMultiSelectProps = BasicDropdownCommonProps & {\r\n /** Required. If this flag is set then user can select multiple items. */\r\n multiSelect: true;\r\n /** Required. Selected items. */\r\n value?: string[];\r\n /** Required. Callback handler to call when user selects one of the items. Provides all selected items after last change. */\r\n onSelect: (value: string[]) => void;\r\n}\r\n\r\nexport type BasucDropdownSingleSelectProps = BasicDropdownCommonProps & {\r\n /** Required. If this flag is set then user can select multiple items. */\r\n multiSelect?: false;\r\n /** Required. Selected item. */\r\n value?: string;\r\n /** Required. Callback handler to call when user selects one of the items. Provides value of selected item. */\r\n onSelect: (value: string) => void;\r\n}\r\n\r\nexport type BasicDropdownProps = BasucDropdownSingleSelectProps | BasicDropdownMultiSelectProps;\r\n\r\nconst BasicDropdown = React.forwardRef((props: BasicDropdownProps, ref) => {\r\n const {\r\n id,\r\n list,\r\n placeholder,\r\n messageOnNoResults,\r\n itemsType = 'normal',\r\n action,\r\n actionLabel,\r\n actionVariant,\r\n actionIcon,\r\n actionLoading,\r\n actionDisabled,\r\n pinTopItem,\r\n scrollable = true,\r\n maxHeight,\r\n disabled,\r\n readOnly,\r\n isButton,\r\n activeValidationMessage,\r\n autofilledMessage,\r\n size,\r\n margin,\r\n minWidth,\r\n className,\r\n overflowTooltipPosition,\r\n onBlur,\r\n dataTestId,\r\n onSelect,\r\n textOverflow = 'ellipsis',\r\n dropdownIcon,\r\n ...rest\r\n } = props;\r\n\r\n const theme = useTheme();\r\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\r\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\r\n const [isLoading, setIsLoading] = React.useState<boolean>(false);\r\n const [input, setInput] = React.useState<string>('');\r\n const [focused, setFocused] = React.useState<number | null>(null);\r\n \r\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\r\n\r\n const inputRef = React.useRef<HTMLInputElement>(null);\r\n const styledFieldRef = useFocusVisibleRef([inputRef]);\r\n const dropdownRef = React.useRef<HTMLDivElement>(null);\r\n\r\n const resetDropdown = () => {\r\n setIsOpen(false);\r\n setFocused(null);\r\n };\r\n\r\n const containerRef = useFocusOutsideRef(resetDropdown, [dropdownRef]);\r\n\r\n useClickOutsideRef(resetDropdown, [], containerRef);\r\n\r\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\r\n if (e.key === 'Enter' || e.key === ' ') {\r\n setIsOpen(!isOpen);\r\n setKeyboardNavigated(true);\r\n }\r\n };\r\n\r\n const handleValueSelect = (values: string[]) => {\r\n setInput(values.join(', '));\r\n\r\n if (props.multiSelect === true) {\r\n props.onSelect(values);\r\n } else if (props.multiSelect === false || props.multiSelect === undefined) {\r\n props.onSelect(values[0]);\r\n }\r\n\r\n //don't close dropdown on item select if have custom action or multiselect\r\n if (actionLabel || props.multiSelect) return;\r\n\r\n if (keyboardNavigated) {\r\n styledFieldRef.current?.focus({focusVisible: true} as any);\r\n }\r\n setIsOpen(false);\r\n setFocused(null);\r\n };\r\n\r\n React.useEffect(() => {\r\n if (props.value) {\r\n if (props.multiSelect) {\r\n setInput(props.value.join(', '));\r\n } else if (props.multiSelect === false || props.multiSelect === undefined) {\r\n setInput(props.value);\r\n }\r\n } else {\r\n setInput('');\r\n }\r\n }, [props.value, props.multiSelect]);\r\n\r\n React.useEffect(() => {\r\n setIsLoading(false);\r\n }, [input]);\r\n\r\n React.useEffect(() => {\r\n !isOpen && setKeyboardNavigated(false);\r\n }, [isOpen]);\r\n\r\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\r\n\r\n const customSetIsOpen = (isOpen: boolean) => {\r\n setIsOpen(isOpen);\r\n };\r\n\r\n const getDisplayItems = () => {\r\n const values = input.split(',').map((val) => val.trim());\r\n const listDisplayLabels = list.filter((item) => values.includes(item.value)).map((l) => l.displayLabel);\r\n return listDisplayLabels.join(', ');\r\n };\r\n\r\n const handleBlur = (e: React.FocusEvent<HTMLDivElement>) => {\r\n // @ts-ignore\r\n if (!e.currentTarget.contains(e.relatedTarget)) {\r\n onBlur && onBlur(e);\r\n }\r\n };\r\n\r\n const cls = (isOpen ? 'expanded ' : '').concat(size ? size : '').concat(isButton ? ' button ' : '').concat(className ? ` ${className}` : '');\r\n \r\n return (\r\n <>\r\n <DropdownContainer ref={containerRef}\r\n aria-expanded={isOpen ? true : false}\r\n aria-activedescendant={activeDescendant}\r\n aria-controls={`${id}_dropdowncontent`}\r\n role=\"listbox\"\r\n aria-multiselectable={props.multiSelect}\r\n $isButton={isButton || false}\r\n className={size ? size : ''}\r\n $readOnly={readOnly}\r\n $disabled={disabled}\r\n margin={margin}\r\n onBlur={handleBlur}\r\n minWidth={minWidth}>\r\n <DropdownInputFieldStyles\r\n ref={styledFieldRef}\r\n className={cls}\r\n onMouseDown={defaultOnMouseDownHandler}\r\n onClick={(e) => {\r\n if (!readOnly && !disabled) {\r\n e.stopPropagation();\r\n setIsOpen(!isOpen);\r\n if (isOpen) {\r\n inputRef.current?.blur();\r\n } else {\r\n inputRef.current?.focus();\r\n }\r\n }\r\n }}\r\n tabIndex={disabled || readOnly ? -1 : 0}\r\n $disabled={disabled || false}\r\n $readOnly={readOnly || false}\r\n $isPlaceholder={!input}\r\n $showValidationMessage={!!activeValidationMessage}\r\n onKeyDown={handleKeyDown}\r\n $minWidth={minWidth}\r\n {...rest}>\r\n <DropdownInputField\r\n ref={inputRef}\r\n type=\"search\"\r\n $ellipsis={textOverflow == 'ellipsis'}\r\n id={id}\r\n data-testid={dataTestId}\r\n readOnly\r\n placeholder={placeholder}\r\n value={getDisplayItems()}\r\n className={size ? `${size} value` : 'value'}\r\n tabIndex={-1}\r\n disabled={disabled || false}\r\n />\r\n {!isOpen ? <TooltipOverflow position={overflowTooltipPosition} input={inputRef} withArrow={true} maxWidth=\"100%\" size={size} align='end'>\r\n {getDisplayItems()}\r\n </TooltipOverflow> : null}\r\n {isLoading ? <LoadingIndicator size={Size.Small} color={COLORS.generateToken({componentType:'icon', defaultVariant:'subtle'}, theme)}/> : null}\r\n <div className={'icon dropdown-arrow'}>\r\n {isOpen ? <SystemIcons.ArrowDropUp aria-label='Expanded' size=\"24px\" className={size ? size : ''}/> :\r\n (dropdownIcon ?? <SystemIcons.ArrowDropDown aria-label='Collapsed' size=\"24px\" className={size ? size : ''}/>)}\r\n </div>\r\n </DropdownInputFieldStyles>\r\n {!readOnly && !disabled && (\r\n <DropdownContent\r\n ref={dropdownRef}\r\n containerRef={containerRef}\r\n onActiveDescendantChanged={(id) => setActiveDescendant(id)}\r\n customizationProps={{\r\n itemsType: itemsType,\r\n action: action ?? (() => {\r\n }),\r\n actionLabel: actionLabel,\r\n actionVariant: actionVariant,\r\n actionDisabled: actionDisabled,\r\n scrollable: scrollable,\r\n onValueUpdate: handleValueSelect,\r\n items: list,\r\n multiSelect: props.multiSelect,\r\n pinTopItem: pinTopItem,\r\n maxHeight: maxHeight,\r\n actionIcon: actionIcon,\r\n actionLoading: actionLoading,\r\n }}\r\n ariaRolesType=\"input\"\r\n focused={focused}\r\n setFocused={setFocused}\r\n size={size ?? Size.Small}\r\n filter={''}\r\n isOpen={isOpen}\r\n setIsOpen={customSetIsOpen}\r\n messageOnNoResults={messageOnNoResults ?? ''}\r\n outline={keyboardNavigated}\r\n isButton={isButton || false}\r\n selectedValues={props.multiSelect ? props.value || [] : [props.value || '']}\r\n setSelectedValues={handleValueSelect}\r\n id={`${id}_dropdowncontent`}\r\n />\r\n )}\r\n </DropdownContainer>\r\n {activeValidationMessage && (\r\n <ErrorMessage>\r\n <SystemIcons.TechnicalWarning color={COLORS.generateToken({ componentType:'icon', defaultVariant:'critical' }, theme)}/>\r\n <span>{activeValidationMessage}</span>\r\n </ErrorMessage>\r\n )}\r\n {autofilledMessage && (\r\n <AutofilledMessage>\r\n <SystemIcons.Information color={COLORS.generateToken({componentType:'icon', defaultVariant:'subtle'}, theme)}/>\r\n <span>{autofilledMessage}</span>\r\n </AutofilledMessage>\r\n )}\r\n </>\r\n );\r\n});\r\n\r\nexport default BasicDropdown;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -183,7 +183,10 @@ const BasicDropdown = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
183
183
|
children: getDisplayItems()
|
|
184
184
|
}) : null, isLoading ? /*#__PURE__*/_jsx(LoadingIndicator, {
|
|
185
185
|
size: Size.Small,
|
|
186
|
-
color: COLORS.
|
|
186
|
+
color: COLORS.generateToken({
|
|
187
|
+
componentType: 'icon',
|
|
188
|
+
defaultVariant: 'subtle'
|
|
189
|
+
}, theme)
|
|
187
190
|
}) : null, /*#__PURE__*/_jsx("div", {
|
|
188
191
|
className: 'icon dropdown-arrow',
|
|
189
192
|
children: isOpen ? /*#__PURE__*/_jsx(SystemIcons.ArrowDropUp, {
|
|
@@ -231,13 +234,19 @@ const BasicDropdown = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
231
234
|
})]
|
|
232
235
|
}), activeValidationMessage && /*#__PURE__*/_jsxs(ErrorMessage, {
|
|
233
236
|
children: [/*#__PURE__*/_jsx(SystemIcons.TechnicalWarning, {
|
|
234
|
-
color: COLORS.
|
|
237
|
+
color: COLORS.generateToken({
|
|
238
|
+
componentType: 'icon',
|
|
239
|
+
defaultVariant: 'critical'
|
|
240
|
+
}, theme)
|
|
235
241
|
}), /*#__PURE__*/_jsx("span", {
|
|
236
242
|
children: activeValidationMessage
|
|
237
243
|
})]
|
|
238
244
|
}), autofilledMessage && /*#__PURE__*/_jsxs(AutofilledMessage, {
|
|
239
245
|
children: [/*#__PURE__*/_jsx(SystemIcons.Information, {
|
|
240
|
-
color: COLORS.
|
|
246
|
+
color: COLORS.generateToken({
|
|
247
|
+
componentType: 'icon',
|
|
248
|
+
defaultVariant: 'subtle'
|
|
249
|
+
}, theme)
|
|
241
250
|
}), /*#__PURE__*/_jsx("span", {
|
|
242
251
|
children: autofilledMessage
|
|
243
252
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasicDropdown.js","names":["React","COLORS","SystemIcons","LoadingIndicator","DropdownContainer","DropdownInputFieldStyles","DropdownInputField","DropdownContent","AutofilledMessage","ErrorMessage","TooltipOverflow","Size","defaultOnMouseDownHandler","useClickOutsideRef","useFocusVisibleRef","useFocusOutsideRef","useTheme","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","BasicDropdown","forwardRef","props","ref","id","list","placeholder","messageOnNoResults","itemsType","action","actionLabel","actionVariant","actionIcon","actionLoading","actionDisabled","pinTopItem","scrollable","maxHeight","disabled","readOnly","isButton","activeValidationMessage","autofilledMessage","size","margin","minWidth","className","overflowTooltipPosition","onBlur","dataTestId","onSelect","textOverflow","dropdownIcon","rest","_objectWithoutProperties","_excluded","theme","isOpen","setIsOpen","useState","activeDescendant","setActiveDescendant","isLoading","setIsLoading","input","setInput","focused","setFocused","keyboardNavigated","setKeyboardNavigated","inputRef","useRef","styledFieldRef","dropdownRef","resetDropdown","containerRef","handleKeyDown","e","key","handleValueSelect","values","join","multiSelect","undefined","current","focus","focusVisible","useEffect","value","useImperativeHandle","customSetIsOpen","getDisplayItems","split","map","val","trim","listDisplayLabels","filter","item","includes","l","displayLabel","handleBlur","currentTarget","contains","relatedTarget","cls","concat","children","role","$isButton","$readOnly","$disabled","_objectSpread","onMouseDown","onClick","stopPropagation","blur","tabIndex","$isPlaceholder","$showValidationMessage","onKeyDown","$minWidth","type","$ellipsis","position","withArrow","maxWidth","align","Small","color","getColor","ArrowDropUp","ArrowDropDown","onActiveDescendantChanged","customizationProps","onValueUpdate","items","ariaRolesType","outline","selectedValues","setSelectedValues","TechnicalWarning","Information","propTypes","_pt","array","isRequired","oneOf","func","string","node","bool","disableSorting"],"sources":["../../src/Dropdown/BasicDropdown.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport {COLORS} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {LoadingIndicator} from '../LoadingIndicator';\r\nimport {DropdownContainer, DropdownInputFieldStyles, DropdownInputField} from './CommonStyling';\r\nimport DropdownContent, {DropdownItem} from './DropdownContent';\r\nimport {AutofilledMessage, ErrorMessage} from '../InputFields';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\nimport {Size, Testable} from '../types';\r\nimport {defaultOnMouseDownHandler, useClickOutsideRef, useFocusVisibleRef} from '../common';\r\nimport {useFocusOutsideRef} from '../common';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport interface BasicDropdownCommonProps extends Testable, Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect' | 'placeholder' | 'tabIndex' | 'onMouseDown' | 'onClick' | 'onKeyDown'>{\r\n /**\r\n * Required. An array of DropdownItem objects representing the items in the dropdown.\r\n */\r\n list: DropdownItem[];\r\n /**\r\n * Optional. The type of the items in the dropdown. Can be 'normal', 'checkbox', or 'radio'.\r\n */\r\n itemsType?: 'normal' | 'checkbox' | 'radio';\r\n /**\r\n * Optional. A function to be called when the action button in the dropdown is clicked.\r\n */\r\n action?: () => void;\r\n /**\r\n * Optional. The label for the action button in the dropdown.\r\n */\r\n actionLabel?: string;\r\n /**\r\n * Optional. The variant of the action button in the dropdown. Can be 'primary', 'secondary', 'tertiary', or undefined.\r\n */\r\n actionVariant?: 'primary' | 'secondary' | 'tertiary' | undefined;\r\n /**\r\n * Optional. The icon for the action button in the dropdown.\r\n */\r\n actionIcon?: React.ReactNode;\r\n /**\r\n * Optional. A boolean indicating whether the action button in the dropdown is loading.\r\n */\r\n actionLoading?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the action button in the dropdown is disabled.\r\n */\r\n actionDisabled?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the top item in the dropdown should be pinned.\r\n */\r\n pinTopItem?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown content is scrollable.\r\n */\r\n scrollable?: boolean;\r\n /**\r\n * Optional. The maximum height of the dropdown.\r\n */\r\n maxHeight?: string;\r\n /*\r\n * Optional. Placeholder text to be shown when none of the items is selected is selected\r\n */\r\n placeholder?: string;\r\n /**\r\n * Optional. A boolean indicating whether sorting is disabled in the dropdown.\r\n */\r\n disableSorting?: boolean;\r\n /**\r\n * Optional. The message to be displayed when there are no results in the dropdown.\r\n */\r\n messageOnNoResults?: string;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is disabled.\r\n */\r\n disabled?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is read-only.\r\n */\r\n readOnly?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is a button.\r\n */\r\n isButton?: boolean;\r\n /**\r\n * Optional. The validation message to be displayed when the dropdown is active.\r\n */\r\n activeValidationMessage?: string;\r\n /**\r\n * Optional. The message to be displayed when the dropdown is autofilled.\r\n */\r\n autofilledMessage?: string;\r\n /**\r\n * Optional. The size of the dropdown. Can be 'Small' or 'Medium'.\r\n */ \r\n size?: Size.Small | Size.Medium;\r\n /**\r\n * Optional. The margin of the dropdown. Can be any valid CSS margin value.\r\n */\r\n margin?: string;\r\n /**\r\n * Optional. The minimum width of the dropdown.\r\n */\r\n minWidth?: string;\r\n /**\r\n * Optional. The text overflow behavior of the dropdown. Can be 'ellipsis' or 'default'.\r\n */\r\n textOverflow?: 'ellipsis' | 'default';\r\n /**\r\n * Optional. The position of the tooltip when dropdown is closed. Can be 'top' or 'bottom'.\r\n */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n /**\r\n * Optional. The action icon to be shown on the rightside of the dropdown that opens dropdown content.\r\n */\r\n dropdownIcon?: React.ReactNode;\r\n}\r\n\r\nexport type BasicDropdownMultiSelectProps = BasicDropdownCommonProps & {\r\n /** Required. If this flag is set then user can select multiple items. */\r\n multiSelect: true;\r\n /** Required. Selected items. */\r\n value?: string[];\r\n /** Required. Callback handler to call when user selects one of the items. Provides all selected items after last change. */\r\n onSelect: (value: string[]) => void;\r\n}\r\n\r\nexport type BasucDropdownSingleSelectProps = BasicDropdownCommonProps & {\r\n /** Required. If this flag is set then user can select multiple items. */\r\n multiSelect?: false;\r\n /** Required. Selected item. */\r\n value?: string;\r\n /** Required. Callback handler to call when user selects one of the items. Provides value of selected item. */\r\n onSelect: (value: string) => void;\r\n}\r\n\r\nexport type BasicDropdownProps = BasucDropdownSingleSelectProps | BasicDropdownMultiSelectProps;\r\n\r\nconst BasicDropdown = React.forwardRef((props: BasicDropdownProps, ref) => {\r\n const {\r\n id,\r\n list,\r\n placeholder,\r\n messageOnNoResults,\r\n itemsType = 'normal',\r\n action,\r\n actionLabel,\r\n actionVariant,\r\n actionIcon,\r\n actionLoading,\r\n actionDisabled,\r\n pinTopItem,\r\n scrollable = true,\r\n maxHeight,\r\n disabled,\r\n readOnly,\r\n isButton,\r\n activeValidationMessage,\r\n autofilledMessage,\r\n size,\r\n margin,\r\n minWidth,\r\n className,\r\n overflowTooltipPosition,\r\n onBlur,\r\n dataTestId,\r\n onSelect,\r\n textOverflow = 'ellipsis',\r\n dropdownIcon,\r\n ...rest\r\n } = props;\r\n\r\n const theme = useTheme();\r\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\r\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\r\n const [isLoading, setIsLoading] = React.useState<boolean>(false);\r\n const [input, setInput] = React.useState<string>('');\r\n const [focused, setFocused] = React.useState<number | null>(null);\r\n \r\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\r\n\r\n const inputRef = React.useRef<HTMLInputElement>(null);\r\n const styledFieldRef = useFocusVisibleRef([inputRef]);\r\n const dropdownRef = React.useRef<HTMLDivElement>(null);\r\n\r\n const resetDropdown = () => {\r\n setIsOpen(false);\r\n setFocused(null);\r\n };\r\n\r\n const containerRef = useFocusOutsideRef(resetDropdown, [dropdownRef]);\r\n\r\n useClickOutsideRef(resetDropdown, [], containerRef);\r\n\r\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\r\n if (e.key === 'Enter' || e.key === ' ') {\r\n setIsOpen(!isOpen);\r\n setKeyboardNavigated(true);\r\n }\r\n };\r\n\r\n const handleValueSelect = (values: string[]) => {\r\n setInput(values.join(', '));\r\n\r\n if (props.multiSelect === true) {\r\n props.onSelect(values);\r\n } else if (props.multiSelect === false || props.multiSelect === undefined) {\r\n props.onSelect(values[0]);\r\n }\r\n\r\n //don't close dropdown on item select if have custom action or multiselect\r\n if (actionLabel || props.multiSelect) return;\r\n\r\n if (keyboardNavigated) {\r\n styledFieldRef.current?.focus({focusVisible: true} as any);\r\n }\r\n setIsOpen(false);\r\n setFocused(null);\r\n };\r\n\r\n React.useEffect(() => {\r\n if (props.value) {\r\n if (props.multiSelect) {\r\n setInput(props.value.join(', '));\r\n } else if (props.multiSelect === false || props.multiSelect === undefined) {\r\n setInput(props.value);\r\n }\r\n } else {\r\n setInput('');\r\n }\r\n }, [props.value, props.multiSelect]);\r\n\r\n React.useEffect(() => {\r\n setIsLoading(false);\r\n }, [input]);\r\n\r\n React.useEffect(() => {\r\n !isOpen && setKeyboardNavigated(false);\r\n }, [isOpen]);\r\n\r\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\r\n\r\n const customSetIsOpen = (isOpen: boolean) => {\r\n setIsOpen(isOpen);\r\n };\r\n\r\n const getDisplayItems = () => {\r\n const values = input.split(',').map((val) => val.trim());\r\n const listDisplayLabels = list.filter((item) => values.includes(item.value)).map((l) => l.displayLabel);\r\n return listDisplayLabels.join(', ');\r\n };\r\n\r\n const handleBlur = (e: React.FocusEvent<HTMLDivElement>) => {\r\n // @ts-ignore\r\n if (!e.currentTarget.contains(e.relatedTarget)) {\r\n onBlur && onBlur(e);\r\n }\r\n };\r\n\r\n const cls = (isOpen ? 'expanded ' : '').concat(size ? size : '').concat(isButton ? ' button ' : '').concat(className ? ` ${className}` : '');\r\n \r\n return (\r\n <>\r\n <DropdownContainer ref={containerRef}\r\n aria-expanded={isOpen ? true : false}\r\n aria-activedescendant={activeDescendant}\r\n aria-controls={`${id}_dropdowncontent`}\r\n role=\"listbox\"\r\n aria-multiselectable={props.multiSelect}\r\n $isButton={isButton || false}\r\n className={size ? size : ''}\r\n $readOnly={readOnly}\r\n $disabled={disabled}\r\n margin={margin}\r\n onBlur={handleBlur}\r\n minWidth={minWidth}>\r\n <DropdownInputFieldStyles\r\n ref={styledFieldRef}\r\n className={cls}\r\n onMouseDown={defaultOnMouseDownHandler}\r\n onClick={(e) => {\r\n if (!readOnly && !disabled) {\r\n e.stopPropagation();\r\n setIsOpen(!isOpen);\r\n if (isOpen) {\r\n inputRef.current?.blur();\r\n } else {\r\n inputRef.current?.focus();\r\n }\r\n }\r\n }}\r\n tabIndex={disabled || readOnly ? -1 : 0}\r\n $disabled={disabled || false}\r\n $readOnly={readOnly || false}\r\n $isPlaceholder={!input}\r\n $showValidationMessage={!!activeValidationMessage}\r\n onKeyDown={handleKeyDown}\r\n $minWidth={minWidth}\r\n {...rest}>\r\n <DropdownInputField\r\n ref={inputRef}\r\n type=\"search\"\r\n $ellipsis={textOverflow == 'ellipsis'}\r\n id={id}\r\n data-testid={dataTestId}\r\n readOnly\r\n placeholder={placeholder}\r\n value={getDisplayItems()}\r\n className={size ? `${size} value` : 'value'}\r\n tabIndex={-1}\r\n disabled={disabled || false}\r\n />\r\n {!isOpen ? <TooltipOverflow position={overflowTooltipPosition} input={inputRef} withArrow={true} maxWidth=\"100%\" size={size} align='end'>\r\n {getDisplayItems()}\r\n </TooltipOverflow> : null}\r\n {isLoading ? <LoadingIndicator size={Size.Small} color={COLORS.getColor('neutral_600', theme)}/> : null}\r\n <div className={'icon dropdown-arrow'}>\r\n {isOpen ? <SystemIcons.ArrowDropUp aria-label='Expanded' size=\"24px\" className={size ? size : ''}/> :\r\n (dropdownIcon ?? <SystemIcons.ArrowDropDown aria-label='Collapsed' size=\"24px\" className={size ? size : ''}/>)}\r\n </div>\r\n </DropdownInputFieldStyles>\r\n {!readOnly && !disabled && (\r\n <DropdownContent\r\n ref={dropdownRef}\r\n containerRef={containerRef}\r\n onActiveDescendantChanged={(id) => setActiveDescendant(id)}\r\n customizationProps={{\r\n itemsType: itemsType,\r\n action: action ?? (() => {\r\n }),\r\n actionLabel: actionLabel,\r\n actionVariant: actionVariant,\r\n actionDisabled: actionDisabled,\r\n scrollable: scrollable,\r\n onValueUpdate: handleValueSelect,\r\n items: list,\r\n multiSelect: props.multiSelect,\r\n pinTopItem: pinTopItem,\r\n maxHeight: maxHeight,\r\n actionIcon: actionIcon,\r\n actionLoading: actionLoading,\r\n }}\r\n ariaRolesType=\"input\"\r\n focused={focused}\r\n setFocused={setFocused}\r\n size={size ?? Size.Small}\r\n filter={''}\r\n isOpen={isOpen}\r\n setIsOpen={customSetIsOpen}\r\n messageOnNoResults={messageOnNoResults ?? ''}\r\n outline={keyboardNavigated}\r\n isButton={isButton || false}\r\n selectedValues={props.multiSelect ? props.value || [] : [props.value || '']}\r\n setSelectedValues={handleValueSelect}\r\n id={`${id}_dropdowncontent`}\r\n />\r\n )}\r\n </DropdownContainer>\r\n {activeValidationMessage && (\r\n <ErrorMessage>\r\n <SystemIcons.TechnicalWarning color={COLORS.getColor('critical_400', theme)}/>\r\n <span>{activeValidationMessage}</span>\r\n </ErrorMessage>\r\n )}\r\n {autofilledMessage && (\r\n <AutofilledMessage>\r\n <SystemIcons.Information color={COLORS.getColor('neutral_600', theme)}/>\r\n <span>{autofilledMessage}</span>\r\n </AutofilledMessage>\r\n )}\r\n </>\r\n );\r\n});\r\n\r\nexport default BasicDropdown;\r\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"BasicDropdown.js","names":["React","COLORS","SystemIcons","LoadingIndicator","DropdownContainer","DropdownInputFieldStyles","DropdownInputField","DropdownContent","AutofilledMessage","ErrorMessage","TooltipOverflow","Size","defaultOnMouseDownHandler","useClickOutsideRef","useFocusVisibleRef","useFocusOutsideRef","useTheme","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","BasicDropdown","forwardRef","props","ref","id","list","placeholder","messageOnNoResults","itemsType","action","actionLabel","actionVariant","actionIcon","actionLoading","actionDisabled","pinTopItem","scrollable","maxHeight","disabled","readOnly","isButton","activeValidationMessage","autofilledMessage","size","margin","minWidth","className","overflowTooltipPosition","onBlur","dataTestId","onSelect","textOverflow","dropdownIcon","rest","_objectWithoutProperties","_excluded","theme","isOpen","setIsOpen","useState","activeDescendant","setActiveDescendant","isLoading","setIsLoading","input","setInput","focused","setFocused","keyboardNavigated","setKeyboardNavigated","inputRef","useRef","styledFieldRef","dropdownRef","resetDropdown","containerRef","handleKeyDown","e","key","handleValueSelect","values","join","multiSelect","undefined","current","focus","focusVisible","useEffect","value","useImperativeHandle","customSetIsOpen","getDisplayItems","split","map","val","trim","listDisplayLabels","filter","item","includes","l","displayLabel","handleBlur","currentTarget","contains","relatedTarget","cls","concat","children","role","$isButton","$readOnly","$disabled","_objectSpread","onMouseDown","onClick","stopPropagation","blur","tabIndex","$isPlaceholder","$showValidationMessage","onKeyDown","$minWidth","type","$ellipsis","position","withArrow","maxWidth","align","Small","color","generateToken","componentType","defaultVariant","ArrowDropUp","ArrowDropDown","onActiveDescendantChanged","customizationProps","onValueUpdate","items","ariaRolesType","outline","selectedValues","setSelectedValues","TechnicalWarning","Information","propTypes","_pt","array","isRequired","oneOf","func","string","node","bool","disableSorting"],"sources":["../../src/Dropdown/BasicDropdown.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport {COLORS} from '../styles';\r\nimport {SystemIcons} from '../icons';\r\nimport {LoadingIndicator} from '../LoadingIndicator';\r\nimport {DropdownContainer, DropdownInputFieldStyles, DropdownInputField} from './CommonStyling';\r\nimport DropdownContent, {DropdownItem} from './DropdownContent';\r\nimport {AutofilledMessage, ErrorMessage} from '../InputFields';\r\nimport TooltipOverflow from '../Tooltips/TooltipOverflow';\r\nimport {Size, Testable} from '../types';\r\nimport {defaultOnMouseDownHandler, useClickOutsideRef, useFocusVisibleRef} from '../common';\r\nimport {useFocusOutsideRef} from '../common';\r\nimport { useTheme } from 'styled-components';\r\n\r\nexport interface BasicDropdownCommonProps extends Testable, Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect' | 'placeholder' | 'tabIndex' | 'onMouseDown' | 'onClick' | 'onKeyDown'>{\r\n /**\r\n * Required. An array of DropdownItem objects representing the items in the dropdown.\r\n */\r\n list: DropdownItem[];\r\n /**\r\n * Optional. The type of the items in the dropdown. Can be 'normal', 'checkbox', or 'radio'.\r\n */\r\n itemsType?: 'normal' | 'checkbox' | 'radio';\r\n /**\r\n * Optional. A function to be called when the action button in the dropdown is clicked.\r\n */\r\n action?: () => void;\r\n /**\r\n * Optional. The label for the action button in the dropdown.\r\n */\r\n actionLabel?: string;\r\n /**\r\n * Optional. The variant of the action button in the dropdown. Can be 'primary', 'secondary', 'tertiary', or undefined.\r\n */\r\n actionVariant?: 'primary' | 'secondary' | 'tertiary' | undefined;\r\n /**\r\n * Optional. The icon for the action button in the dropdown.\r\n */\r\n actionIcon?: React.ReactNode;\r\n /**\r\n * Optional. A boolean indicating whether the action button in the dropdown is loading.\r\n */\r\n actionLoading?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the action button in the dropdown is disabled.\r\n */\r\n actionDisabled?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the top item in the dropdown should be pinned.\r\n */\r\n pinTopItem?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown content is scrollable.\r\n */\r\n scrollable?: boolean;\r\n /**\r\n * Optional. The maximum height of the dropdown.\r\n */\r\n maxHeight?: string;\r\n /*\r\n * Optional. Placeholder text to be shown when none of the items is selected is selected\r\n */\r\n placeholder?: string;\r\n /**\r\n * Optional. A boolean indicating whether sorting is disabled in the dropdown.\r\n */\r\n disableSorting?: boolean;\r\n /**\r\n * Optional. The message to be displayed when there are no results in the dropdown.\r\n */\r\n messageOnNoResults?: string;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is disabled.\r\n */\r\n disabled?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is read-only.\r\n */\r\n readOnly?: boolean;\r\n /**\r\n * Optional. A boolean indicating whether the dropdown is a button.\r\n */\r\n isButton?: boolean;\r\n /**\r\n * Optional. The validation message to be displayed when the dropdown is active.\r\n */\r\n activeValidationMessage?: string;\r\n /**\r\n * Optional. The message to be displayed when the dropdown is autofilled.\r\n */\r\n autofilledMessage?: string;\r\n /**\r\n * Optional. The size of the dropdown. Can be 'Small' or 'Medium'.\r\n */ \r\n size?: Size.Small | Size.Medium;\r\n /**\r\n * Optional. The margin of the dropdown. Can be any valid CSS margin value.\r\n */\r\n margin?: string;\r\n /**\r\n * Optional. The minimum width of the dropdown.\r\n */\r\n minWidth?: string;\r\n /**\r\n * Optional. The text overflow behavior of the dropdown. Can be 'ellipsis' or 'default'.\r\n */\r\n textOverflow?: 'ellipsis' | 'default';\r\n /**\r\n * Optional. The position of the tooltip when dropdown is closed. Can be 'top' or 'bottom'.\r\n */\r\n overflowTooltipPosition?: 'top' | 'bottom';\r\n /**\r\n * Optional. The action icon to be shown on the rightside of the dropdown that opens dropdown content.\r\n */\r\n dropdownIcon?: React.ReactNode;\r\n}\r\n\r\nexport type BasicDropdownMultiSelectProps = BasicDropdownCommonProps & {\r\n /** Required. If this flag is set then user can select multiple items. */\r\n multiSelect: true;\r\n /** Required. Selected items. */\r\n value?: string[];\r\n /** Required. Callback handler to call when user selects one of the items. Provides all selected items after last change. */\r\n onSelect: (value: string[]) => void;\r\n}\r\n\r\nexport type BasucDropdownSingleSelectProps = BasicDropdownCommonProps & {\r\n /** Required. If this flag is set then user can select multiple items. */\r\n multiSelect?: false;\r\n /** Required. Selected item. */\r\n value?: string;\r\n /** Required. Callback handler to call when user selects one of the items. Provides value of selected item. */\r\n onSelect: (value: string) => void;\r\n}\r\n\r\nexport type BasicDropdownProps = BasucDropdownSingleSelectProps | BasicDropdownMultiSelectProps;\r\n\r\nconst BasicDropdown = React.forwardRef((props: BasicDropdownProps, ref) => {\r\n const {\r\n id,\r\n list,\r\n placeholder,\r\n messageOnNoResults,\r\n itemsType = 'normal',\r\n action,\r\n actionLabel,\r\n actionVariant,\r\n actionIcon,\r\n actionLoading,\r\n actionDisabled,\r\n pinTopItem,\r\n scrollable = true,\r\n maxHeight,\r\n disabled,\r\n readOnly,\r\n isButton,\r\n activeValidationMessage,\r\n autofilledMessage,\r\n size,\r\n margin,\r\n minWidth,\r\n className,\r\n overflowTooltipPosition,\r\n onBlur,\r\n dataTestId,\r\n onSelect,\r\n textOverflow = 'ellipsis',\r\n dropdownIcon,\r\n ...rest\r\n } = props;\r\n\r\n const theme = useTheme();\r\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\r\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\r\n const [isLoading, setIsLoading] = React.useState<boolean>(false);\r\n const [input, setInput] = React.useState<string>('');\r\n const [focused, setFocused] = React.useState<number | null>(null);\r\n \r\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\r\n\r\n const inputRef = React.useRef<HTMLInputElement>(null);\r\n const styledFieldRef = useFocusVisibleRef([inputRef]);\r\n const dropdownRef = React.useRef<HTMLDivElement>(null);\r\n\r\n const resetDropdown = () => {\r\n setIsOpen(false);\r\n setFocused(null);\r\n };\r\n\r\n const containerRef = useFocusOutsideRef(resetDropdown, [dropdownRef]);\r\n\r\n useClickOutsideRef(resetDropdown, [], containerRef);\r\n\r\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\r\n if (e.key === 'Enter' || e.key === ' ') {\r\n setIsOpen(!isOpen);\r\n setKeyboardNavigated(true);\r\n }\r\n };\r\n\r\n const handleValueSelect = (values: string[]) => {\r\n setInput(values.join(', '));\r\n\r\n if (props.multiSelect === true) {\r\n props.onSelect(values);\r\n } else if (props.multiSelect === false || props.multiSelect === undefined) {\r\n props.onSelect(values[0]);\r\n }\r\n\r\n //don't close dropdown on item select if have custom action or multiselect\r\n if (actionLabel || props.multiSelect) return;\r\n\r\n if (keyboardNavigated) {\r\n styledFieldRef.current?.focus({focusVisible: true} as any);\r\n }\r\n setIsOpen(false);\r\n setFocused(null);\r\n };\r\n\r\n React.useEffect(() => {\r\n if (props.value) {\r\n if (props.multiSelect) {\r\n setInput(props.value.join(', '));\r\n } else if (props.multiSelect === false || props.multiSelect === undefined) {\r\n setInput(props.value);\r\n }\r\n } else {\r\n setInput('');\r\n }\r\n }, [props.value, props.multiSelect]);\r\n\r\n React.useEffect(() => {\r\n setIsLoading(false);\r\n }, [input]);\r\n\r\n React.useEffect(() => {\r\n !isOpen && setKeyboardNavigated(false);\r\n }, [isOpen]);\r\n\r\n React.useImperativeHandle(ref, () => inputRef.current, [inputRef]);\r\n\r\n const customSetIsOpen = (isOpen: boolean) => {\r\n setIsOpen(isOpen);\r\n };\r\n\r\n const getDisplayItems = () => {\r\n const values = input.split(',').map((val) => val.trim());\r\n const listDisplayLabels = list.filter((item) => values.includes(item.value)).map((l) => l.displayLabel);\r\n return listDisplayLabels.join(', ');\r\n };\r\n\r\n const handleBlur = (e: React.FocusEvent<HTMLDivElement>) => {\r\n // @ts-ignore\r\n if (!e.currentTarget.contains(e.relatedTarget)) {\r\n onBlur && onBlur(e);\r\n }\r\n };\r\n\r\n const cls = (isOpen ? 'expanded ' : '').concat(size ? size : '').concat(isButton ? ' button ' : '').concat(className ? ` ${className}` : '');\r\n \r\n return (\r\n <>\r\n <DropdownContainer ref={containerRef}\r\n aria-expanded={isOpen ? true : false}\r\n aria-activedescendant={activeDescendant}\r\n aria-controls={`${id}_dropdowncontent`}\r\n role=\"listbox\"\r\n aria-multiselectable={props.multiSelect}\r\n $isButton={isButton || false}\r\n className={size ? size : ''}\r\n $readOnly={readOnly}\r\n $disabled={disabled}\r\n margin={margin}\r\n onBlur={handleBlur}\r\n minWidth={minWidth}>\r\n <DropdownInputFieldStyles\r\n ref={styledFieldRef}\r\n className={cls}\r\n onMouseDown={defaultOnMouseDownHandler}\r\n onClick={(e) => {\r\n if (!readOnly && !disabled) {\r\n e.stopPropagation();\r\n setIsOpen(!isOpen);\r\n if (isOpen) {\r\n inputRef.current?.blur();\r\n } else {\r\n inputRef.current?.focus();\r\n }\r\n }\r\n }}\r\n tabIndex={disabled || readOnly ? -1 : 0}\r\n $disabled={disabled || false}\r\n $readOnly={readOnly || false}\r\n $isPlaceholder={!input}\r\n $showValidationMessage={!!activeValidationMessage}\r\n onKeyDown={handleKeyDown}\r\n $minWidth={minWidth}\r\n {...rest}>\r\n <DropdownInputField\r\n ref={inputRef}\r\n type=\"search\"\r\n $ellipsis={textOverflow == 'ellipsis'}\r\n id={id}\r\n data-testid={dataTestId}\r\n readOnly\r\n placeholder={placeholder}\r\n value={getDisplayItems()}\r\n className={size ? `${size} value` : 'value'}\r\n tabIndex={-1}\r\n disabled={disabled || false}\r\n />\r\n {!isOpen ? <TooltipOverflow position={overflowTooltipPosition} input={inputRef} withArrow={true} maxWidth=\"100%\" size={size} align='end'>\r\n {getDisplayItems()}\r\n </TooltipOverflow> : null}\r\n {isLoading ? <LoadingIndicator size={Size.Small} color={COLORS.generateToken({componentType:'icon', defaultVariant:'subtle'}, theme)}/> : null}\r\n <div className={'icon dropdown-arrow'}>\r\n {isOpen ? <SystemIcons.ArrowDropUp aria-label='Expanded' size=\"24px\" className={size ? size : ''}/> :\r\n (dropdownIcon ?? <SystemIcons.ArrowDropDown aria-label='Collapsed' size=\"24px\" className={size ? size : ''}/>)}\r\n </div>\r\n </DropdownInputFieldStyles>\r\n {!readOnly && !disabled && (\r\n <DropdownContent\r\n ref={dropdownRef}\r\n containerRef={containerRef}\r\n onActiveDescendantChanged={(id) => setActiveDescendant(id)}\r\n customizationProps={{\r\n itemsType: itemsType,\r\n action: action ?? (() => {\r\n }),\r\n actionLabel: actionLabel,\r\n actionVariant: actionVariant,\r\n actionDisabled: actionDisabled,\r\n scrollable: scrollable,\r\n onValueUpdate: handleValueSelect,\r\n items: list,\r\n multiSelect: props.multiSelect,\r\n pinTopItem: pinTopItem,\r\n maxHeight: maxHeight,\r\n actionIcon: actionIcon,\r\n actionLoading: actionLoading,\r\n }}\r\n ariaRolesType=\"input\"\r\n focused={focused}\r\n setFocused={setFocused}\r\n size={size ?? Size.Small}\r\n filter={''}\r\n isOpen={isOpen}\r\n setIsOpen={customSetIsOpen}\r\n messageOnNoResults={messageOnNoResults ?? ''}\r\n outline={keyboardNavigated}\r\n isButton={isButton || false}\r\n selectedValues={props.multiSelect ? props.value || [] : [props.value || '']}\r\n setSelectedValues={handleValueSelect}\r\n id={`${id}_dropdowncontent`}\r\n />\r\n )}\r\n </DropdownContainer>\r\n {activeValidationMessage && (\r\n <ErrorMessage>\r\n <SystemIcons.TechnicalWarning color={COLORS.generateToken({ componentType:'icon', defaultVariant:'critical' }, theme)}/>\r\n <span>{activeValidationMessage}</span>\r\n </ErrorMessage>\r\n )}\r\n {autofilledMessage && (\r\n <AutofilledMessage>\r\n <SystemIcons.Information color={COLORS.generateToken({componentType:'icon', defaultVariant:'subtle'}, theme)}/>\r\n <span>{autofilledMessage}</span>\r\n </AutofilledMessage>\r\n )}\r\n </>\r\n );\r\n});\r\n\r\nexport default BasicDropdown;\r\n"],"mappings":";;;;;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAAQC,MAAM,QAAO,WAAW;AAChC,SAAQC,WAAW,QAAO,UAAU;AACpC,SAAQC,gBAAgB,QAAO,qBAAqB;AACpD,SAAQC,iBAAiB,EAAEC,wBAAwB,EAAEC,kBAAkB,QAAO,iBAAiB;AAC/F,OAAOC,eAAe,MAAsB,mBAAmB;AAC/D,SAAQC,iBAAiB,EAAEC,YAAY,QAAO,gBAAgB;AAC9D,OAAOC,eAAe,MAAM,6BAA6B;AACzD,SAAQC,IAAI,QAAiB,UAAU;AACvC,SAAQC,yBAAyB,EAAEC,kBAAkB,EAAEC,kBAAkB,QAAO,WAAW;AAC3F,SAAQC,kBAAkB,QAAO,WAAW;AAC5C,SAASC,QAAQ,QAAQ,mBAAmB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AA6H7C,MAAMC,aAAa,gBAAGvB,KAAK,CAACwB,UAAU,CAAC,CAACC,KAAyB,EAAEC,GAAG,KAAK;EACzE,MAAM;MACJC,EAAE;MACFC,IAAI;MACJC,WAAW;MACXC,kBAAkB;MAClBC,SAAS,GAAG,QAAQ;MACpBC,MAAM;MACNC,WAAW;MACXC,aAAa;MACbC,UAAU;MACVC,aAAa;MACbC,cAAc;MACdC,UAAU;MACVC,UAAU,GAAG,IAAI;MACjBC,SAAS;MACTC,QAAQ;MACRC,QAAQ;MACRC,QAAQ;MACRC,uBAAuB;MACvBC,iBAAiB;MACjBC,IAAI;MACJC,MAAM;MACNC,QAAQ;MACRC,SAAS;MACTC,uBAAuB;MACvBC,MAAM;MACNC,UAAU;MACVC,QAAQ;MACRC,YAAY,GAAG,UAAU;MACzBC;IAEF,CAAC,GAAG9B,KAAK;IADJ+B,IAAI,GAAAC,wBAAA,CACLhC,KAAK,EAAAiC,SAAA;EAET,MAAMC,KAAK,GAAG3C,QAAQ,CAAC,CAAC;EACxB,MAAM,CAAC4C,MAAM,EAAEC,SAAS,CAAC,GAAG7D,KAAK,CAAC8D,QAAQ,CAAU,KAAK,CAAC;EAC1D,MAAM,CAACC,gBAAgB,EAAEC,mBAAmB,CAAC,GAAGhE,KAAK,CAAC8D,QAAQ,CAAS,CAAC;EACxE,MAAM,CAACG,SAAS,EAAEC,YAAY,CAAC,GAAGlE,KAAK,CAAC8D,QAAQ,CAAU,KAAK,CAAC;EAChE,MAAM,CAACK,KAAK,EAAEC,QAAQ,CAAC,GAAGpE,KAAK,CAAC8D,QAAQ,CAAS,EAAE,CAAC;EACpD,MAAM,CAACO,OAAO,EAAEC,UAAU,CAAC,GAAGtE,KAAK,CAAC8D,QAAQ,CAAgB,IAAI,CAAC;EAEjE,MAAM,CAACS,iBAAiB,EAAEC,oBAAoB,CAAC,GAAGxE,KAAK,CAAC8D,QAAQ,CAAU,KAAK,CAAC;EAEhF,MAAMW,QAAQ,GAAGzE,KAAK,CAAC0E,MAAM,CAAmB,IAAI,CAAC;EACrD,MAAMC,cAAc,GAAG7D,kBAAkB,CAAC,CAAC2D,QAAQ,CAAC,CAAC;EACrD,MAAMG,WAAW,GAAG5E,KAAK,CAAC0E,MAAM,CAAiB,IAAI,CAAC;EAEtD,MAAMG,aAAa,GAAGA,CAAA,KAAM;IAC1BhB,SAAS,CAAC,KAAK,CAAC;IAChBS,UAAU,CAAC,IAAI,CAAC;EAClB,CAAC;EAED,MAAMQ,YAAY,GAAG/D,kBAAkB,CAAC8D,aAAa,EAAE,CAACD,WAAW,CAAC,CAAC;EAErE/D,kBAAkB,CAACgE,aAAa,EAAE,EAAE,EAAEC,YAAY,CAAC;EAEnD,MAAMC,aAAa,GAAIC,CAAsC,IAAK;IAChE,IAAIA,CAAC,CAACC,GAAG,KAAK,OAAO,IAAID,CAAC,CAACC,GAAG,KAAK,GAAG,EAAE;MACtCpB,SAAS,CAAC,CAACD,MAAM,CAAC;MAClBY,oBAAoB,CAAC,IAAI,CAAC;IAC5B;EACF,CAAC;EAED,MAAMU,iBAAiB,GAAIC,MAAgB,IAAK;IAC9Cf,QAAQ,CAACe,MAAM,CAACC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE3B,IAAI3D,KAAK,CAAC4D,WAAW,KAAK,IAAI,EAAE;MAC9B5D,KAAK,CAAC4B,QAAQ,CAAC8B,MAAM,CAAC;IACxB,CAAC,MAAM,IAAI1D,KAAK,CAAC4D,WAAW,KAAK,KAAK,IAAI5D,KAAK,CAAC4D,WAAW,KAAKC,SAAS,EAAE;MACzE7D,KAAK,CAAC4B,QAAQ,CAAC8B,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3B;;IAEA;IACA,IAAIlD,WAAW,IAAIR,KAAK,CAAC4D,WAAW,EAAE;IAEtC,IAAId,iBAAiB,EAAE;MACrBI,cAAc,CAACY,OAAO,EAAEC,KAAK,CAAC;QAACC,YAAY,EAAE;MAAI,CAAQ,CAAC;IAC5D;IACA5B,SAAS,CAAC,KAAK,CAAC;IAChBS,UAAU,CAAC,IAAI,CAAC;EAClB,CAAC;EAEDtE,KAAK,CAAC0F,SAAS,CAAC,MAAM;IACpB,IAAIjE,KAAK,CAACkE,KAAK,EAAE;MACf,IAAIlE,KAAK,CAAC4D,WAAW,EAAE;QACrBjB,QAAQ,CAAC3C,KAAK,CAACkE,KAAK,CAACP,IAAI,CAAC,IAAI,CAAC,CAAC;MAClC,CAAC,MAAM,IAAI3D,KAAK,CAAC4D,WAAW,KAAK,KAAK,IAAI5D,KAAK,CAAC4D,WAAW,KAAKC,SAAS,EAAE;QACzElB,QAAQ,CAAC3C,KAAK,CAACkE,KAAK,CAAC;MACvB;IACF,CAAC,MAAM;MACLvB,QAAQ,CAAC,EAAE,CAAC;IACd;EACF,CAAC,EAAE,CAAC3C,KAAK,CAACkE,KAAK,EAAElE,KAAK,CAAC4D,WAAW,CAAC,CAAC;EAEpCrF,KAAK,CAAC0F,SAAS,CAAC,MAAM;IACpBxB,YAAY,CAAC,KAAK,CAAC;EACrB,CAAC,EAAE,CAACC,KAAK,CAAC,CAAC;EAEXnE,KAAK,CAAC0F,SAAS,CAAC,MAAM;IACpB,CAAC9B,MAAM,IAAIY,oBAAoB,CAAC,KAAK,CAAC;EACxC,CAAC,EAAE,CAACZ,MAAM,CAAC,CAAC;EAEZ5D,KAAK,CAAC4F,mBAAmB,CAAClE,GAAG,EAAE,MAAM+C,QAAQ,CAACc,OAAO,EAAE,CAACd,QAAQ,CAAC,CAAC;EAElE,MAAMoB,eAAe,GAAIjC,MAAe,IAAK;IAC3CC,SAAS,CAACD,MAAM,CAAC;EACnB,CAAC;EAED,MAAMkC,eAAe,GAAGA,CAAA,KAAM;IAC5B,MAAMX,MAAM,GAAGhB,KAAK,CAAC4B,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAAEC,GAAG,IAAKA,GAAG,CAACC,IAAI,CAAC,CAAC,CAAC;IACxD,MAAMC,iBAAiB,GAAGvE,IAAI,CAACwE,MAAM,CAAEC,IAAI,IAAKlB,MAAM,CAACmB,QAAQ,CAACD,IAAI,CAACV,KAAK,CAAC,CAAC,CAACK,GAAG,CAAEO,CAAC,IAAKA,CAAC,CAACC,YAAY,CAAC;IACvG,OAAOL,iBAAiB,CAACf,IAAI,CAAC,IAAI,CAAC;EACrC,CAAC;EAED,MAAMqB,UAAU,GAAIzB,CAAmC,IAAK;IAC1D;IACA,IAAI,CAACA,CAAC,CAAC0B,aAAa,CAACC,QAAQ,CAAC3B,CAAC,CAAC4B,aAAa,CAAC,EAAE;MAC9CzD,MAAM,IAAIA,MAAM,CAAC6B,CAAC,CAAC;IACrB;EACF,CAAC;EAED,MAAM6B,GAAG,GAAG,CAACjD,MAAM,GAAG,WAAW,GAAG,EAAE,EAAEkD,MAAM,CAAChE,IAAI,GAAGA,IAAI,GAAG,EAAE,CAAC,CAACgE,MAAM,CAACnE,QAAQ,GAAG,UAAU,GAAG,EAAE,CAAC,CAACmE,MAAM,CAAC7D,SAAS,GAAG,IAAIA,SAAS,EAAE,GAAG,EAAE,CAAC;EAE5I,oBACE7B,KAAA,CAAAE,SAAA;IAAAyF,QAAA,gBACE3F,KAAA,CAAChB,iBAAiB;MAACsB,GAAG,EAAEoD,YAAa;MAC3B,iBAAelB,MAAM,GAAG,IAAI,GAAG,KAAM;MACrC,yBAAuBG,gBAAiB;MACxC,iBAAe,GAAGpC,EAAE,kBAAmB;MACvCqF,IAAI,EAAC,SAAS;MACd,wBAAsBvF,KAAK,CAAC4D,WAAY;MACxC4B,SAAS,EAAEtE,QAAQ,IAAI,KAAM;MAC7BM,SAAS,EAAEH,IAAI,GAAGA,IAAI,GAAG,EAAG;MAC5BoE,SAAS,EAAExE,QAAS;MACpByE,SAAS,EAAE1E,QAAS;MACpBM,MAAM,EAAEA,MAAO;MACfI,MAAM,EAAEsD,UAAW;MACnBzD,QAAQ,EAAEA,QAAS;MAAA+D,QAAA,gBAC3B3F,KAAA,CAACf,wBAAwB,EAAA+G,aAAA,CAAAA,aAAA;QACvB1F,GAAG,EAAEiD,cAAe;QACpB1B,SAAS,EAAE4D,GAAI;QACfQ,WAAW,EAAEzG,yBAA0B;QACvC0G,OAAO,EAAGtC,CAAC,IAAK;UACd,IAAI,CAACtC,QAAQ,IAAI,CAACD,QAAQ,EAAE;YAC1BuC,CAAC,CAACuC,eAAe,CAAC,CAAC;YACnB1D,SAAS,CAAC,CAACD,MAAM,CAAC;YAClB,IAAIA,MAAM,EAAE;cACVa,QAAQ,CAACc,OAAO,EAAEiC,IAAI,CAAC,CAAC;YAC1B,CAAC,MAAM;cACL/C,QAAQ,CAACc,OAAO,EAAEC,KAAK,CAAC,CAAC;YAC3B;UACF;QACF,CAAE;QACFiC,QAAQ,EAAEhF,QAAQ,IAAIC,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAE;QACxCyE,SAAS,EAAE1E,QAAQ,IAAI,KAAM;QAC7ByE,SAAS,EAAExE,QAAQ,IAAI,KAAM;QAC7BgF,cAAc,EAAE,CAACvD,KAAM;QACvBwD,sBAAsB,EAAE,CAAC,CAAC/E,uBAAwB;QAClDgF,SAAS,EAAE7C,aAAc;QACzB8C,SAAS,EAAE7E;MAAS,GAChBQ,IAAI;QAAAuD,QAAA,gBACR7F,IAAA,CAACZ,kBAAkB;UACjBoB,GAAG,EAAE+C,QAAS;UACdqD,IAAI,EAAC,QAAQ;UACbC,SAAS,EAAEzE,YAAY,IAAI,UAAW;UACtC3B,EAAE,EAAEA,EAAG;UACP,eAAayB,UAAW;UACxBV,QAAQ;UACRb,WAAW,EAAEA,WAAY;UACzB8D,KAAK,EAAEG,eAAe,CAAC,CAAE;UACzB7C,SAAS,EAAEH,IAAI,GAAG,GAAGA,IAAI,QAAQ,GAAG,OAAQ;UAC5C2E,QAAQ,EAAE,CAAC,CAAE;UACbhF,QAAQ,EAAEA,QAAQ,IAAI;QAAM,CAC7B,CAAC,EACD,CAACmB,MAAM,gBAAG1C,IAAA,CAACR,eAAe;UAACsH,QAAQ,EAAE9E,uBAAwB;UAACiB,KAAK,EAAEM,QAAS;UAACwD,SAAS,EAAE,IAAK;UAACC,QAAQ,EAAC,MAAM;UAACpF,IAAI,EAAEA,IAAK;UAACqF,KAAK,EAAC,KAAK;UAAApB,QAAA,EACrIjB,eAAe,CAAC;QAAC,CACL,CAAC,GAAG,IAAI,EACtB7B,SAAS,gBAAG/C,IAAA,CAACf,gBAAgB;UAAC2C,IAAI,EAAEnC,IAAI,CAACyH,KAAM;UAACC,KAAK,EAAEpI,MAAM,CAACqI,aAAa,CAAC;YAACC,aAAa,EAAC,MAAM;YAAEC,cAAc,EAAC;UAAQ,CAAC,EAAE7E,KAAK;QAAE,CAAC,CAAC,GAAG,IAAI,eAC9IzC,IAAA;UAAK+B,SAAS,EAAE,qBAAsB;UAAA8D,QAAA,EACnCnD,MAAM,gBAAG1C,IAAA,CAAChB,WAAW,CAACuI,WAAW;YAAC,cAAW,UAAU;YAAC3F,IAAI,EAAC,MAAM;YAACG,SAAS,EAAEH,IAAI,GAAGA,IAAI,GAAG;UAAG,CAAC,CAAC,GAChGS,YAAY,iBAAIrC,IAAA,CAAChB,WAAW,CAACwI,aAAa;YAAC,cAAW,WAAW;YAAC5F,IAAI,EAAC,MAAM;YAACG,SAAS,EAAEH,IAAI,GAAGA,IAAI,GAAG;UAAG,CAAC;QAAE,CAC7G,CAAC;MAAA,EACkB,CAAC,EAC1B,CAACJ,QAAQ,IAAI,CAACD,QAAQ,iBACrBvB,IAAA,CAACX,eAAe;QACdmB,GAAG,EAAEkD,WAAY;QACjBE,YAAY,EAAEA,YAAa;QAC3B6D,yBAAyB,EAAGhH,EAAE,IAAKqC,mBAAmB,CAACrC,EAAE,CAAE;QAC3DiH,kBAAkB,EAAE;UAClB7G,SAAS,EAAEA,SAAS;UACpBC,MAAM,EAAEA,MAAM,KAAK,MAAM,CACzB,CAAC,CAAC;UACFC,WAAW,EAAEA,WAAW;UACxBC,aAAa,EAAEA,aAAa;UAC5BG,cAAc,EAAEA,cAAc;UAC9BE,UAAU,EAAEA,UAAU;UACtBsG,aAAa,EAAE3D,iBAAiB;UAChC4D,KAAK,EAAElH,IAAI;UACXyD,WAAW,EAAE5D,KAAK,CAAC4D,WAAW;UAC9B/C,UAAU,EAAEA,UAAU;UACtBE,SAAS,EAAEA,SAAS;UACpBL,UAAU,EAAEA,UAAU;UACtBC,aAAa,EAAEA;QACjB,CAAE;QACF2G,aAAa,EAAC,OAAO;QACrB1E,OAAO,EAAEA,OAAQ;QACjBC,UAAU,EAAEA,UAAW;QACvBxB,IAAI,EAAEA,IAAI,IAAInC,IAAI,CAACyH,KAAM;QACzBhC,MAAM,EAAE,EAAG;QACXxC,MAAM,EAAEA,MAAO;QACfC,SAAS,EAAEgC,eAAgB;QAC3B/D,kBAAkB,EAAEA,kBAAkB,IAAI,EAAG;QAC7CkH,OAAO,EAAEzE,iBAAkB;QAC3B5B,QAAQ,EAAEA,QAAQ,IAAI,KAAM;QAC5BsG,cAAc,EAAExH,KAAK,CAAC4D,WAAW,GAAG5D,KAAK,CAACkE,KAAK,IAAI,EAAE,GAAG,CAAClE,KAAK,CAACkE,KAAK,IAAI,EAAE,CAAE;QAC5EuD,iBAAiB,EAAEhE,iBAAkB;QACrCvD,EAAE,EAAE,GAAGA,EAAE;MAAmB,CAC7B,CACF;IAAA,CACgB,CAAC,EACnBiB,uBAAuB,iBACtBxB,KAAA,CAACX,YAAY;MAAAsG,QAAA,gBACX7F,IAAA,CAAChB,WAAW,CAACiJ,gBAAgB;QAACd,KAAK,EAAEpI,MAAM,CAACqI,aAAa,CAAC;UAAEC,aAAa,EAAC,MAAM;UAAEC,cAAc,EAAC;QAAW,CAAC,EAAE7E,KAAK;MAAE,CAAC,CAAC,eACxHzC,IAAA;QAAA6F,QAAA,EAAOnE;MAAuB,CAAO,CAAC;IAAA,CAC1B,CACf,EACAC,iBAAiB,iBAChBzB,KAAA,CAACZ,iBAAiB;MAAAuG,QAAA,gBAChB7F,IAAA,CAAChB,WAAW,CAACkJ,WAAW;QAACf,KAAK,EAAEpI,MAAM,CAACqI,aAAa,CAAC;UAACC,aAAa,EAAC,MAAM;UAAEC,cAAc,EAAC;QAAQ,CAAC,EAAE7E,KAAK;MAAE,CAAC,CAAC,eAC/GzC,IAAA;QAAA6F,QAAA,EAAOlE;MAAiB,CAAO,CAAC;IAAA,CACf,CACpB;EAAA,CACD,CAAC;AAEP,CAAC,CAAC;AAACtB,aAAA,CAAA8H,SAAA;EAjWDzH,IAAI,EAAA0H,GAAA,CAAAC,KAAA,CAAAC,UAAA;EAIJzH,SAAS,EAAAuH,GAAA,CAAAG,KAAA,EAAG,QAAQ,EAAG,UAAU,EAAG,OAAO;EAI3CzH,MAAM,EAAAsH,GAAA,CAAAI,IAAA;EAINzH,WAAW,EAAAqH,GAAA,CAAAK,MAAA;EAQXxH,UAAU,EAAAmH,GAAA,CAAAM,IAAA;EAIVxH,aAAa,EAAAkH,GAAA,CAAAO,IAAA;EAIbxH,cAAc,EAAAiH,GAAA,CAAAO,IAAA;EAIdvH,UAAU,EAAAgH,GAAA,CAAAO,IAAA;EAIVtH,UAAU,EAAA+G,GAAA,CAAAO,IAAA;EAIVrH,SAAS,EAAA8G,GAAA,CAAAK,MAAA;EAIT9H,WAAW,EAAAyH,GAAA,CAAAK,MAAA;EAIXG,cAAc,EAAAR,GAAA,CAAAO,IAAA;EAId/H,kBAAkB,EAAAwH,GAAA,CAAAK,MAAA;EAIlBlH,QAAQ,EAAA6G,GAAA,CAAAO,IAAA;EAIRnH,QAAQ,EAAA4G,GAAA,CAAAO,IAAA;EAIRlH,QAAQ,EAAA2G,GAAA,CAAAO,IAAA;EAIRjH,uBAAuB,EAAA0G,GAAA,CAAAK,MAAA;EAIvB9G,iBAAiB,EAAAyG,GAAA,CAAAK,MAAA;EAQjB5G,MAAM,EAAAuG,GAAA,CAAAK,MAAA;EAIN3G,QAAQ,EAAAsG,GAAA,CAAAK,MAAA;EAIRrG,YAAY,EAAAgG,GAAA,CAAAG,KAAA,EAAG,UAAU,EAAG,SAAS;EAIrCvG,uBAAuB,EAAAoG,GAAA,CAAAG,KAAA,EAAG,KAAK,EAAG,QAAQ;EAI1ClG,YAAY,EAAA+F,GAAA,CAAAM,IAAA;EAcZvE,WAAW,EAAAiE,GAAA,CAAAG,KAAA,EAAG,KAAK;EAEnB9D,KAAK,EAAA2D,GAAA,CAAAK;AAAA;AAmPP,eAAepI,aAAa","ignoreList":[]}
|