@transferwise/components 46.44.1 → 46.46.0
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/build/accordion/Accordion.js +40 -0
- package/build/accordion/Accordion.js.map +1 -0
- package/build/accordion/Accordion.mjs +38 -0
- package/build/accordion/Accordion.mjs.map +1 -0
- package/build/accordion/AccordionItem/AccordionItem.js +70 -0
- package/build/accordion/AccordionItem/AccordionItem.js.map +1 -0
- package/build/accordion/AccordionItem/AccordionItem.mjs +64 -0
- package/build/accordion/AccordionItem/AccordionItem.mjs.map +1 -0
- package/build/actionButton/ActionButton.js +31 -0
- package/build/actionButton/ActionButton.js.map +1 -0
- package/build/actionButton/ActionButton.mjs +25 -0
- package/build/actionButton/ActionButton.mjs.map +1 -0
- package/build/actionOption/ActionOption.js +61 -0
- package/build/actionOption/ActionOption.js.map +1 -0
- package/build/actionOption/ActionOption.mjs +55 -0
- package/build/actionOption/ActionOption.mjs.map +1 -0
- package/build/alert/Alert.js +159 -0
- package/build/alert/Alert.js.map +1 -0
- package/build/alert/Alert.mjs +151 -0
- package/build/alert/Alert.mjs.map +1 -0
- package/build/alert/inlineMarkdown/InlineMarkdown.js +18 -0
- package/build/alert/inlineMarkdown/InlineMarkdown.js.map +1 -0
- package/build/alert/inlineMarkdown/InlineMarkdown.mjs +16 -0
- package/build/alert/inlineMarkdown/InlineMarkdown.mjs.map +1 -0
- package/build/avatar/Avatar.js +54 -0
- package/build/avatar/Avatar.js.map +1 -0
- package/build/avatar/Avatar.mjs +48 -0
- package/build/avatar/Avatar.mjs.map +1 -0
- package/build/avatar/avatarTypes.js +11 -0
- package/build/avatar/avatarTypes.js.map +1 -0
- package/build/avatar/avatarTypes.mjs +11 -0
- package/build/avatar/avatarTypes.mjs.map +1 -0
- package/build/avatar/colors/colors.js +31 -0
- package/build/avatar/colors/colors.js.map +1 -0
- package/build/avatar/colors/colors.mjs +29 -0
- package/build/avatar/colors/colors.mjs.map +1 -0
- package/build/avatarWrapper/AvatarWrapper.js +120 -0
- package/build/avatarWrapper/AvatarWrapper.js.map +1 -0
- package/build/avatarWrapper/AvatarWrapper.mjs +118 -0
- package/build/avatarWrapper/AvatarWrapper.mjs.map +1 -0
- package/build/avatarWrapper/index.js +8 -0
- package/build/avatarWrapper/index.js.map +1 -0
- package/build/avatarWrapper/index.mjs +6 -0
- package/build/avatarWrapper/index.mjs.map +1 -0
- package/build/badge/Badge.js +36 -0
- package/build/badge/Badge.js.map +1 -0
- package/build/badge/Badge.mjs +30 -0
- package/build/badge/Badge.mjs.map +1 -0
- package/build/body/Body.js +31 -0
- package/build/body/Body.js.map +1 -0
- package/build/body/Body.mjs +25 -0
- package/build/body/Body.mjs.map +1 -0
- package/build/button/Button.js +86 -0
- package/build/button/Button.js.map +1 -0
- package/build/button/Button.messages.js +12 -0
- package/build/button/Button.messages.js.map +1 -0
- package/build/button/Button.messages.mjs +10 -0
- package/build/button/Button.messages.mjs.map +1 -0
- package/build/button/Button.mjs +80 -0
- package/build/button/Button.mjs.map +1 -0
- package/build/button/classMap.js +18 -0
- package/build/button/classMap.js.map +1 -0
- package/build/button/classMap.mjs +15 -0
- package/build/button/classMap.mjs.map +1 -0
- package/build/button/legacyUtils/legacyUtils.js +54 -0
- package/build/button/legacyUtils/legacyUtils.js.map +1 -0
- package/build/button/legacyUtils/legacyUtils.mjs +50 -0
- package/build/button/legacyUtils/legacyUtils.mjs.map +1 -0
- package/build/card/Card.js +65 -0
- package/build/card/Card.js.map +1 -0
- package/build/card/Card.mjs +59 -0
- package/build/card/Card.mjs.map +1 -0
- package/build/carousel/Carousel.js +283 -0
- package/build/carousel/Carousel.js.map +1 -0
- package/build/carousel/Carousel.mjs +277 -0
- package/build/carousel/Carousel.mjs.map +1 -0
- package/build/checkbox/Checkbox.js +64 -0
- package/build/checkbox/Checkbox.js.map +1 -0
- package/build/checkbox/Checkbox.mjs +58 -0
- package/build/checkbox/Checkbox.mjs.map +1 -0
- package/build/checkboxButton/CheckboxButton.js +40 -0
- package/build/checkboxButton/CheckboxButton.js.map +1 -0
- package/build/checkboxButton/CheckboxButton.mjs +34 -0
- package/build/checkboxButton/CheckboxButton.mjs.map +1 -0
- package/build/checkboxOption/CheckboxOption.js +27 -0
- package/build/checkboxOption/CheckboxOption.js.map +1 -0
- package/build/checkboxOption/CheckboxOption.mjs +25 -0
- package/build/checkboxOption/CheckboxOption.mjs.map +1 -0
- package/build/chevron/Chevron.js +60 -0
- package/build/chevron/Chevron.js.map +1 -0
- package/build/chevron/Chevron.mjs +54 -0
- package/build/chevron/Chevron.mjs.map +1 -0
- package/build/chips/Chip.js +71 -0
- package/build/chips/Chip.js.map +1 -0
- package/build/chips/Chip.mjs +65 -0
- package/build/chips/Chip.mjs.map +1 -0
- package/build/chips/Chips.js +62 -0
- package/build/chips/Chips.js.map +1 -0
- package/build/chips/Chips.messages.js +12 -0
- package/build/chips/Chips.messages.js.map +1 -0
- package/build/chips/Chips.messages.mjs +10 -0
- package/build/chips/Chips.messages.mjs.map +1 -0
- package/build/chips/Chips.mjs +56 -0
- package/build/chips/Chips.mjs.map +1 -0
- package/build/circularButton/CircularButton.js +46 -0
- package/build/circularButton/CircularButton.js.map +1 -0
- package/build/circularButton/CircularButton.mjs +40 -0
- package/build/circularButton/CircularButton.mjs.map +1 -0
- package/build/common/DOMOperations/DOMOperations.js +24 -0
- package/build/common/DOMOperations/DOMOperations.js.map +1 -0
- package/build/common/DOMOperations/DOMOperations.mjs +21 -0
- package/build/common/DOMOperations/DOMOperations.mjs.map +1 -0
- package/build/common/Option/Option.js +71 -0
- package/build/common/Option/Option.js.map +1 -0
- package/build/common/Option/Option.mjs +65 -0
- package/build/common/Option/Option.mjs.map +1 -0
- package/build/common/RadioButton/RadioButton.js +46 -0
- package/build/common/RadioButton/RadioButton.js.map +1 -0
- package/build/common/RadioButton/RadioButton.mjs +40 -0
- package/build/common/RadioButton/RadioButton.mjs.map +1 -0
- package/build/common/action/Action.js +37 -0
- package/build/common/action/Action.js.map +1 -0
- package/build/common/action/Action.mjs +31 -0
- package/build/common/action/Action.mjs.map +1 -0
- package/build/common/bottomSheet/BottomSheet.js +194 -0
- package/build/common/bottomSheet/BottomSheet.js.map +1 -0
- package/build/common/bottomSheet/BottomSheet.mjs +188 -0
- package/build/common/bottomSheet/BottomSheet.mjs.map +1 -0
- package/build/common/card/Card.js +49 -0
- package/build/common/card/Card.js.map +1 -0
- package/build/common/card/Card.mjs +43 -0
- package/build/common/card/Card.mjs.map +1 -0
- package/build/common/closeButton/CloseButton.js +46 -0
- package/build/common/closeButton/CloseButton.js.map +1 -0
- package/build/common/closeButton/CloseButton.messages.js +12 -0
- package/build/common/closeButton/CloseButton.messages.js.map +1 -0
- package/build/common/closeButton/CloseButton.messages.mjs +10 -0
- package/build/common/closeButton/CloseButton.messages.mjs.map +1 -0
- package/build/common/closeButton/CloseButton.mjs +40 -0
- package/build/common/closeButton/CloseButton.mjs.map +1 -0
- package/build/common/dateUtils/getDayNames/getDayNames.js +18 -0
- package/build/common/dateUtils/getDayNames/getDayNames.js.map +1 -0
- package/build/common/dateUtils/getDayNames/getDayNames.mjs +16 -0
- package/build/common/dateUtils/getDayNames/getDayNames.mjs.map +1 -0
- package/build/common/dateUtils/getFormatForLocale/getFormatForLocale.js +8 -0
- package/build/common/dateUtils/getFormatForLocale/getFormatForLocale.js.map +1 -0
- package/build/common/dateUtils/getFormatForLocale/getFormatForLocale.mjs +5 -0
- package/build/common/dateUtils/getFormatForLocale/getFormatForLocale.mjs.map +1 -0
- package/build/common/dateUtils/getMonthNames/getMonthNames.js +19 -0
- package/build/common/dateUtils/getMonthNames/getMonthNames.js.map +1 -0
- package/build/common/dateUtils/getMonthNames/getMonthNames.mjs +17 -0
- package/build/common/dateUtils/getMonthNames/getMonthNames.mjs.map +1 -0
- package/build/common/dateUtils/isDateValid/isDateValid.js +17 -0
- package/build/common/dateUtils/isDateValid/isDateValid.js.map +1 -0
- package/build/common/dateUtils/isDateValid/isDateValid.mjs +14 -0
- package/build/common/dateUtils/isDateValid/isDateValid.mjs.map +1 -0
- package/build/common/dateUtils/isMonthAndYearFormat/isMonthAndYearFormat.js +8 -0
- package/build/common/dateUtils/isMonthAndYearFormat/isMonthAndYearFormat.js.map +1 -0
- package/build/common/dateUtils/isMonthAndYearFormat/isMonthAndYearFormat.mjs +6 -0
- package/build/common/dateUtils/isMonthAndYearFormat/isMonthAndYearFormat.mjs.map +1 -0
- package/build/common/dateUtils/isWithinRange/isWithinRange.js +8 -0
- package/build/common/dateUtils/isWithinRange/isWithinRange.js.map +1 -0
- package/build/common/dateUtils/isWithinRange/isWithinRange.mjs +6 -0
- package/build/common/dateUtils/isWithinRange/isWithinRange.mjs.map +1 -0
- package/build/common/dateUtils/moveToWithinRange/moveToWithinRange.js +15 -0
- package/build/common/dateUtils/moveToWithinRange/moveToWithinRange.js.map +1 -0
- package/build/common/dateUtils/moveToWithinRange/moveToWithinRange.mjs +13 -0
- package/build/common/dateUtils/moveToWithinRange/moveToWithinRange.mjs.map +1 -0
- package/build/common/deviceDetection/deviceDetection.js +11 -0
- package/build/common/deviceDetection/deviceDetection.js.map +1 -0
- package/build/common/deviceDetection/deviceDetection.mjs +9 -0
- package/build/common/deviceDetection/deviceDetection.mjs.map +1 -0
- package/build/common/direction.js +9 -0
- package/build/common/direction.js.map +1 -0
- package/build/common/direction.mjs +9 -0
- package/build/common/direction.mjs.map +1 -0
- package/build/common/domHelpers/documentIosClick.js +39 -0
- package/build/common/domHelpers/documentIosClick.js.map +1 -0
- package/build/common/domHelpers/documentIosClick.mjs +33 -0
- package/build/common/domHelpers/documentIosClick.mjs.map +1 -0
- package/build/common/fileType.js +10 -0
- package/build/common/fileType.js.map +1 -0
- package/build/common/fileType.mjs +10 -0
- package/build/common/fileType.mjs.map +1 -0
- package/build/common/flowHeader/FlowHeader.js +53 -0
- package/build/common/flowHeader/FlowHeader.js.map +1 -0
- package/build/common/flowHeader/FlowHeader.mjs +28 -0
- package/build/common/flowHeader/FlowHeader.mjs.map +1 -0
- package/build/common/focusBoundary/FocusBoundary.js +28 -0
- package/build/common/focusBoundary/FocusBoundary.js.map +1 -0
- package/build/common/focusBoundary/FocusBoundary.mjs +26 -0
- package/build/common/focusBoundary/FocusBoundary.mjs.map +1 -0
- package/build/common/historyNavigator/historyNavigator.js +39 -0
- package/build/common/historyNavigator/historyNavigator.js.map +1 -0
- package/build/common/historyNavigator/historyNavigator.mjs +37 -0
- package/build/common/historyNavigator/historyNavigator.mjs.map +1 -0
- package/build/common/hooks/useConditionalListener/useConditionalListener.js +25 -0
- package/build/common/hooks/useConditionalListener/useConditionalListener.js.map +1 -0
- package/build/common/hooks/useConditionalListener/useConditionalListener.mjs +23 -0
- package/build/common/hooks/useConditionalListener/useConditionalListener.mjs.map +1 -0
- package/build/common/hooks/useDirection/useDirection.js +15 -0
- package/build/common/hooks/useDirection/useDirection.js.map +1 -0
- package/build/common/hooks/useDirection/useDirection.mjs +13 -0
- package/build/common/hooks/useDirection/useDirection.mjs.map +1 -0
- package/build/common/hooks/useEffectEvent.js +22 -0
- package/build/common/hooks/useEffectEvent.js.map +1 -0
- package/build/common/hooks/useEffectEvent.mjs +20 -0
- package/build/common/hooks/useEffectEvent.mjs.map +1 -0
- package/build/common/hooks/useHasIntersected/useHasIntersected.js +64 -0
- package/build/common/hooks/useHasIntersected/useHasIntersected.js.map +1 -0
- package/build/common/hooks/useHasIntersected/useHasIntersected.mjs +62 -0
- package/build/common/hooks/useHasIntersected/useHasIntersected.mjs.map +1 -0
- package/build/common/hooks/useLayout/useLayout.js +26 -0
- package/build/common/hooks/useLayout/useLayout.js.map +1 -0
- package/build/common/hooks/useLayout/useLayout.mjs +24 -0
- package/build/common/hooks/useLayout/useLayout.mjs.map +1 -0
- package/build/common/hooks/useMedia.js +16 -0
- package/build/common/hooks/useMedia.js.map +1 -0
- package/build/common/hooks/useMedia.mjs +14 -0
- package/build/common/hooks/useMedia.mjs.map +1 -0
- package/build/common/hooks/useResizeObserver.js +25 -0
- package/build/common/hooks/useResizeObserver.js.map +1 -0
- package/build/common/hooks/useResizeObserver.mjs +23 -0
- package/build/common/hooks/useResizeObserver.mjs.map +1 -0
- package/build/common/hooks/useScreenSize.js +10 -0
- package/build/common/hooks/useScreenSize.js.map +1 -0
- package/build/common/hooks/useScreenSize.mjs +8 -0
- package/build/common/hooks/useScreenSize.mjs.map +1 -0
- package/build/common/hooks/useVirtualKeyboard.js +26 -0
- package/build/common/hooks/useVirtualKeyboard.js.map +1 -0
- package/build/common/hooks/useVirtualKeyboard.mjs +24 -0
- package/build/common/hooks/useVirtualKeyboard.mjs.map +1 -0
- package/build/common/locale/index.js +85 -0
- package/build/common/locale/index.js.map +1 -0
- package/build/common/locale/index.mjs +76 -0
- package/build/common/locale/index.mjs.map +1 -0
- package/build/common/panel/Panel.js +133 -0
- package/build/common/panel/Panel.js.map +1 -0
- package/build/common/panel/Panel.mjs +127 -0
- package/build/common/panel/Panel.mjs.map +1 -0
- package/build/common/polymorphicWithOverrides/PolymorphicWithOverrides.js +21 -0
- package/build/common/polymorphicWithOverrides/PolymorphicWithOverrides.js.map +1 -0
- package/build/common/polymorphicWithOverrides/PolymorphicWithOverrides.mjs +19 -0
- package/build/common/polymorphicWithOverrides/PolymorphicWithOverrides.mjs.map +1 -0
- package/build/common/preventScroll/PreventScroll.js +11 -0
- package/build/common/preventScroll/PreventScroll.js.map +1 -0
- package/build/common/preventScroll/PreventScroll.mjs +9 -0
- package/build/common/preventScroll/PreventScroll.mjs.map +1 -0
- package/build/common/propsValues/breakpoint.js +12 -0
- package/build/common/propsValues/breakpoint.js.map +1 -0
- package/build/common/propsValues/breakpoint.mjs +12 -0
- package/build/common/propsValues/breakpoint.mjs.map +1 -0
- package/build/common/propsValues/control.js +15 -0
- package/build/common/propsValues/control.js.map +1 -0
- package/build/common/propsValues/control.mjs +15 -0
- package/build/common/propsValues/control.mjs.map +1 -0
- package/build/common/propsValues/dateMode.js +8 -0
- package/build/common/propsValues/dateMode.js.map +1 -0
- package/build/common/propsValues/dateMode.mjs +8 -0
- package/build/common/propsValues/dateMode.mjs.map +1 -0
- package/build/common/propsValues/layouts.js +13 -0
- package/build/common/propsValues/layouts.js.map +1 -0
- package/build/common/propsValues/layouts.mjs +13 -0
- package/build/common/propsValues/layouts.mjs.map +1 -0
- package/build/common/propsValues/markdownNodeType.js +22 -0
- package/build/common/propsValues/markdownNodeType.js.map +1 -0
- package/build/common/propsValues/markdownNodeType.mjs +22 -0
- package/build/common/propsValues/markdownNodeType.mjs.map +1 -0
- package/build/common/propsValues/monthFormat.js +8 -0
- package/build/common/propsValues/monthFormat.js.map +1 -0
- package/build/common/propsValues/monthFormat.mjs +8 -0
- package/build/common/propsValues/monthFormat.mjs.map +1 -0
- package/build/common/propsValues/position.js +15 -0
- package/build/common/propsValues/position.js.map +1 -0
- package/build/common/propsValues/position.mjs +15 -0
- package/build/common/propsValues/position.mjs.map +1 -0
- package/build/common/propsValues/profileType.js +8 -0
- package/build/common/propsValues/profileType.js.map +1 -0
- package/build/common/propsValues/profileType.mjs +8 -0
- package/build/common/propsValues/profileType.mjs.map +1 -0
- package/build/common/propsValues/scroll.js +8 -0
- package/build/common/propsValues/scroll.js.map +1 -0
- package/build/common/propsValues/scroll.mjs +8 -0
- package/build/common/propsValues/scroll.mjs.map +1 -0
- package/build/common/propsValues/sentiment.js +23 -0
- package/build/common/propsValues/sentiment.js.map +1 -0
- package/build/common/propsValues/sentiment.mjs +23 -0
- package/build/common/propsValues/sentiment.mjs.map +1 -0
- package/build/common/propsValues/size.js +11 -0
- package/build/common/propsValues/size.js.map +1 -0
- package/build/common/propsValues/size.mjs +11 -0
- package/build/common/propsValues/size.mjs.map +1 -0
- package/build/common/propsValues/status.js +13 -0
- package/build/common/propsValues/status.js.map +1 -0
- package/build/common/propsValues/status.mjs +13 -0
- package/build/common/propsValues/status.mjs.map +1 -0
- package/build/common/propsValues/type.js +17 -0
- package/build/common/propsValues/type.js.map +1 -0
- package/build/common/propsValues/type.mjs +17 -0
- package/build/common/propsValues/type.mjs.map +1 -0
- package/build/common/propsValues/typography.js +25 -0
- package/build/common/propsValues/typography.js.map +1 -0
- package/build/common/propsValues/typography.mjs +25 -0
- package/build/common/propsValues/typography.mjs.map +1 -0
- package/build/common/propsValues/variant.js +8 -0
- package/build/common/propsValues/variant.js.map +1 -0
- package/build/common/propsValues/variant.mjs +8 -0
- package/build/common/propsValues/variant.mjs.map +1 -0
- package/build/common/propsValues/width.js +8 -0
- package/build/common/propsValues/width.js.map +1 -0
- package/build/common/propsValues/width.mjs +8 -0
- package/build/common/propsValues/width.mjs.map +1 -0
- package/build/common/responsivePanel/ResponsivePanel.js +45 -0
- package/build/common/responsivePanel/ResponsivePanel.js.map +1 -0
- package/build/common/responsivePanel/ResponsivePanel.mjs +43 -0
- package/build/common/responsivePanel/ResponsivePanel.mjs.map +1 -0
- package/build/common/textFormat/formatWithPattern/formatWithPattern.js +27 -0
- package/build/common/textFormat/formatWithPattern/formatWithPattern.js.map +1 -0
- package/build/common/textFormat/formatWithPattern/formatWithPattern.mjs +25 -0
- package/build/common/textFormat/formatWithPattern/formatWithPattern.mjs.map +1 -0
- package/build/common/textFormat/getCountOfSymbolsInSelection/getCountOfSymbolsInSelection.js +8 -0
- package/build/common/textFormat/getCountOfSymbolsInSelection/getCountOfSymbolsInSelection.js.map +1 -0
- package/build/common/textFormat/getCountOfSymbolsInSelection/getCountOfSymbolsInSelection.mjs +6 -0
- package/build/common/textFormat/getCountOfSymbolsInSelection/getCountOfSymbolsInSelection.mjs.map +1 -0
- package/build/common/textFormat/getCursorPositionAfterKeystroke/getCursorPositionAfterKeystroke.js +30 -0
- package/build/common/textFormat/getCursorPositionAfterKeystroke/getCursorPositionAfterKeystroke.js.map +1 -0
- package/build/common/textFormat/getCursorPositionAfterKeystroke/getCursorPositionAfterKeystroke.mjs +28 -0
- package/build/common/textFormat/getCursorPositionAfterKeystroke/getCursorPositionAfterKeystroke.mjs.map +1 -0
- package/build/common/textFormat/getDistanceToSymbol/getDistanceToSymbol.js +32 -0
- package/build/common/textFormat/getDistanceToSymbol/getDistanceToSymbol.js.map +1 -0
- package/build/common/textFormat/getDistanceToSymbol/getDistanceToSymbol.mjs +29 -0
- package/build/common/textFormat/getDistanceToSymbol/getDistanceToSymbol.mjs.map +1 -0
- package/build/common/textFormat/getSymbolsInPatternWithPosition/getSymbolsInPatternWithPosition.js +18 -0
- package/build/common/textFormat/getSymbolsInPatternWithPosition/getSymbolsInPatternWithPosition.js.map +1 -0
- package/build/common/textFormat/getSymbolsInPatternWithPosition/getSymbolsInPatternWithPosition.mjs +16 -0
- package/build/common/textFormat/getSymbolsInPatternWithPosition/getSymbolsInPatternWithPosition.mjs.map +1 -0
- package/build/common/textFormat/unformatWithPattern/unformatWithPattern.js +14 -0
- package/build/common/textFormat/unformatWithPattern/unformatWithPattern.js.map +1 -0
- package/build/common/textFormat/unformatWithPattern/unformatWithPattern.mjs +12 -0
- package/build/common/textFormat/unformatWithPattern/unformatWithPattern.mjs.map +1 -0
- package/build/common/theme.js +13 -0
- package/build/common/theme.js.map +1 -0
- package/build/common/theme.mjs +13 -0
- package/build/common/theme.mjs.map +1 -0
- package/build/criticalBanner/CriticalCommsBanner.js +77 -0
- package/build/criticalBanner/CriticalCommsBanner.js.map +1 -0
- package/build/criticalBanner/CriticalCommsBanner.mjs +71 -0
- package/build/criticalBanner/CriticalCommsBanner.mjs.map +1 -0
- package/build/dateInput/DateInput.js +329 -0
- package/build/dateInput/DateInput.js.map +1 -0
- package/build/dateInput/DateInput.messages.js +24 -0
- package/build/dateInput/DateInput.messages.js.map +1 -0
- package/build/dateInput/DateInput.messages.mjs +22 -0
- package/build/dateInput/DateInput.messages.mjs.map +1 -0
- package/build/dateInput/DateInput.mjs +323 -0
- package/build/dateInput/DateInput.mjs.map +1 -0
- package/build/dateInput/utils/convertToLocalMidnight/convertToLocalMidnight.js +9 -0
- package/build/dateInput/utils/convertToLocalMidnight/convertToLocalMidnight.js.map +1 -0
- package/build/dateInput/utils/convertToLocalMidnight/convertToLocalMidnight.mjs +7 -0
- package/build/dateInput/utils/convertToLocalMidnight/convertToLocalMidnight.mjs.map +1 -0
- package/build/dateLookup/DateLookup.js +339 -0
- package/build/dateLookup/DateLookup.js.map +1 -0
- package/build/dateLookup/DateLookup.messages.js +33 -0
- package/build/dateLookup/DateLookup.messages.js.map +1 -0
- package/build/dateLookup/DateLookup.messages.mjs +31 -0
- package/build/dateLookup/DateLookup.messages.mjs.map +1 -0
- package/build/dateLookup/DateLookup.mjs +333 -0
- package/build/dateLookup/DateLookup.mjs.map +1 -0
- package/build/dateLookup/dateHeader/DateHeader.js +73 -0
- package/build/dateLookup/dateHeader/DateHeader.js.map +1 -0
- package/build/dateLookup/dateHeader/DateHeader.mjs +67 -0
- package/build/dateLookup/dateHeader/DateHeader.mjs.map +1 -0
- package/build/dateLookup/dateTrigger/DateTrigger.js +70 -0
- package/build/dateLookup/dateTrigger/DateTrigger.js.map +1 -0
- package/build/dateLookup/dateTrigger/DateTrigger.messages.js +12 -0
- package/build/dateLookup/dateTrigger/DateTrigger.messages.js.map +1 -0
- package/build/dateLookup/dateTrigger/DateTrigger.messages.mjs +10 -0
- package/build/dateLookup/dateTrigger/DateTrigger.messages.mjs.map +1 -0
- package/build/dateLookup/dateTrigger/DateTrigger.mjs +68 -0
- package/build/dateLookup/dateTrigger/DateTrigger.mjs.map +1 -0
- package/build/dateLookup/dayCalendar/DayCalendar.js +71 -0
- package/build/dateLookup/dayCalendar/DayCalendar.js.map +1 -0
- package/build/dateLookup/dayCalendar/DayCalendar.mjs +69 -0
- package/build/dateLookup/dayCalendar/DayCalendar.mjs.map +1 -0
- package/build/dateLookup/dayCalendar/table/DayCalendarTable.js +150 -0
- package/build/dateLookup/dayCalendar/table/DayCalendarTable.js.map +1 -0
- package/build/dateLookup/dayCalendar/table/DayCalendarTable.mjs +148 -0
- package/build/dateLookup/dayCalendar/table/DayCalendarTable.mjs.map +1 -0
- package/build/dateLookup/getFocusableTime/getFocusableTime.js +8 -0
- package/build/dateLookup/getFocusableTime/getFocusableTime.js.map +1 -0
- package/build/dateLookup/getFocusableTime/getFocusableTime.mjs +6 -0
- package/build/dateLookup/getFocusableTime/getFocusableTime.mjs.map +1 -0
- package/build/dateLookup/getStartOfDay/getStartOfDay.js +15 -0
- package/build/dateLookup/getStartOfDay/getStartOfDay.js.map +1 -0
- package/build/dateLookup/getStartOfDay/getStartOfDay.mjs +13 -0
- package/build/dateLookup/getStartOfDay/getStartOfDay.mjs.map +1 -0
- package/build/dateLookup/monthCalendar/MonthCalendar.js +64 -0
- package/build/dateLookup/monthCalendar/MonthCalendar.js.map +1 -0
- package/build/dateLookup/monthCalendar/MonthCalendar.mjs +62 -0
- package/build/dateLookup/monthCalendar/MonthCalendar.mjs.map +1 -0
- package/build/dateLookup/monthCalendar/table/MonthCalendarTable.js +83 -0
- package/build/dateLookup/monthCalendar/table/MonthCalendarTable.js.map +1 -0
- package/build/dateLookup/monthCalendar/table/MonthCalendarTable.mjs +81 -0
- package/build/dateLookup/monthCalendar/table/MonthCalendarTable.mjs.map +1 -0
- package/build/dateLookup/tableLink/TableLink.js +65 -0
- package/build/dateLookup/tableLink/TableLink.js.map +1 -0
- package/build/dateLookup/tableLink/TableLink.mjs +59 -0
- package/build/dateLookup/tableLink/TableLink.mjs.map +1 -0
- package/build/dateLookup/yearCalendar/YearCalendar.js +57 -0
- package/build/dateLookup/yearCalendar/YearCalendar.js.map +1 -0
- package/build/dateLookup/yearCalendar/YearCalendar.mjs +55 -0
- package/build/dateLookup/yearCalendar/YearCalendar.mjs.map +1 -0
- package/build/dateLookup/yearCalendar/table/YearCalendarTable.js +83 -0
- package/build/dateLookup/yearCalendar/table/YearCalendarTable.js.map +1 -0
- package/build/dateLookup/yearCalendar/table/YearCalendarTable.mjs +81 -0
- package/build/dateLookup/yearCalendar/table/YearCalendarTable.mjs.map +1 -0
- package/build/decision/Decision.js +108 -0
- package/build/decision/Decision.js.map +1 -0
- package/build/decision/Decision.mjs +100 -0
- package/build/decision/Decision.mjs.map +1 -0
- package/build/definitionList/DefinitionList.js +72 -0
- package/build/definitionList/DefinitionList.js.map +1 -0
- package/build/definitionList/DefinitionList.mjs +66 -0
- package/build/definitionList/DefinitionList.mjs.map +1 -0
- package/build/dimmer/Dimmer.js +184 -0
- package/build/dimmer/Dimmer.js.map +1 -0
- package/build/dimmer/Dimmer.mjs +172 -0
- package/build/dimmer/Dimmer.mjs.map +1 -0
- package/build/dimmer/dimmerManager/DimmerManager.js +36 -0
- package/build/dimmer/dimmerManager/DimmerManager.js.map +1 -0
- package/build/dimmer/dimmerManager/DimmerManager.mjs +34 -0
- package/build/dimmer/dimmerManager/DimmerManager.mjs.map +1 -0
- package/build/display/Display.js +26 -0
- package/build/display/Display.js.map +1 -0
- package/build/display/Display.mjs +20 -0
- package/build/display/Display.mjs.map +1 -0
- package/build/drawer/Drawer.js +68 -0
- package/build/drawer/Drawer.js.map +1 -0
- package/build/drawer/Drawer.mjs +62 -0
- package/build/drawer/Drawer.mjs.map +1 -0
- package/build/dropFade/DropFade.js +48 -0
- package/build/dropFade/DropFade.js.map +1 -0
- package/build/dropFade/DropFade.mjs +42 -0
- package/build/dropFade/DropFade.mjs.map +1 -0
- package/build/emphasis/Emphasis.js +24 -0
- package/build/emphasis/Emphasis.js.map +1 -0
- package/build/emphasis/Emphasis.mjs +22 -0
- package/build/emphasis/Emphasis.mjs.map +1 -0
- package/build/emphasis/EmphasisHtmlTransformer.js +39 -0
- package/build/emphasis/EmphasisHtmlTransformer.js.map +1 -0
- package/build/emphasis/EmphasisHtmlTransformer.mjs +37 -0
- package/build/emphasis/EmphasisHtmlTransformer.mjs.map +1 -0
- package/build/field/Field.js +63 -0
- package/build/field/Field.js.map +1 -0
- package/build/field/Field.mjs +57 -0
- package/build/field/Field.mjs.map +1 -0
- package/build/flowNavigation/FlowNavigation.js +80 -0
- package/build/flowNavigation/FlowNavigation.js.map +1 -0
- package/build/flowNavigation/FlowNavigation.messages.js +12 -0
- package/build/flowNavigation/FlowNavigation.messages.js.map +1 -0
- package/build/flowNavigation/FlowNavigation.messages.mjs +10 -0
- package/build/flowNavigation/FlowNavigation.messages.mjs.map +1 -0
- package/build/flowNavigation/FlowNavigation.mjs +74 -0
- package/build/flowNavigation/FlowNavigation.mjs.map +1 -0
- package/build/flowNavigation/animatedLabel/AnimatedLabel.js +34 -0
- package/build/flowNavigation/animatedLabel/AnimatedLabel.js.map +1 -0
- package/build/flowNavigation/animatedLabel/AnimatedLabel.mjs +28 -0
- package/build/flowNavigation/animatedLabel/AnimatedLabel.mjs.map +1 -0
- package/build/flowNavigation/backButton/BackButton.js +34 -0
- package/build/flowNavigation/backButton/BackButton.js.map +1 -0
- package/build/flowNavigation/backButton/BackButton.mjs +28 -0
- package/build/flowNavigation/backButton/BackButton.mjs.map +1 -0
- package/build/header/Header.js +87 -0
- package/build/header/Header.js.map +1 -0
- package/build/header/Header.mjs +78 -0
- package/build/header/Header.mjs.map +1 -0
- package/build/i18n/cs.json.js +61 -0
- package/build/i18n/cs.json.js.map +1 -0
- package/build/i18n/cs.json.mjs +59 -0
- package/build/i18n/cs.json.mjs.map +1 -0
- package/build/i18n/de.json.js +62 -0
- package/build/i18n/de.json.js.map +1 -0
- package/build/i18n/de.json.mjs +60 -0
- package/build/i18n/de.json.mjs.map +1 -0
- package/build/i18n/en.json.js +62 -0
- package/build/i18n/en.json.js.map +1 -0
- package/build/i18n/en.json.mjs +60 -0
- package/build/i18n/en.json.mjs.map +1 -0
- package/build/i18n/es.json.js +62 -0
- package/build/i18n/es.json.js.map +1 -0
- package/build/i18n/es.json.mjs +60 -0
- package/build/i18n/es.json.mjs.map +1 -0
- package/build/i18n/fr.json.js +62 -0
- package/build/i18n/fr.json.js.map +1 -0
- package/build/i18n/fr.json.mjs +60 -0
- package/build/i18n/fr.json.mjs.map +1 -0
- package/build/i18n/hu.json.js +62 -0
- package/build/i18n/hu.json.js.map +1 -0
- package/build/i18n/hu.json.mjs +60 -0
- package/build/i18n/hu.json.mjs.map +1 -0
- package/build/i18n/id.json.js +62 -0
- package/build/i18n/id.json.js.map +1 -0
- package/build/i18n/id.json.mjs +60 -0
- package/build/i18n/id.json.mjs.map +1 -0
- package/build/i18n/index.js +45 -0
- package/build/i18n/index.js.map +1 -0
- package/build/i18n/index.mjs +43 -0
- package/build/i18n/index.mjs.map +1 -0
- package/build/i18n/it.json.js +62 -0
- package/build/i18n/it.json.js.map +1 -0
- package/build/i18n/it.json.mjs +60 -0
- package/build/i18n/it.json.mjs.map +1 -0
- package/build/i18n/ja.json.js +62 -0
- package/build/i18n/ja.json.js.map +1 -0
- package/build/i18n/ja.json.mjs +60 -0
- package/build/i18n/ja.json.mjs.map +1 -0
- package/build/i18n/pl.json.js +62 -0
- package/build/i18n/pl.json.js.map +1 -0
- package/build/i18n/pl.json.mjs +60 -0
- package/build/i18n/pl.json.mjs.map +1 -0
- package/build/i18n/pt.json.js +62 -0
- package/build/i18n/pt.json.js.map +1 -0
- package/build/i18n/pt.json.mjs +60 -0
- package/build/i18n/pt.json.mjs.map +1 -0
- package/build/i18n/ro.json.js +62 -0
- package/build/i18n/ro.json.js.map +1 -0
- package/build/i18n/ro.json.mjs +60 -0
- package/build/i18n/ro.json.mjs.map +1 -0
- package/build/i18n/ru.json.js +62 -0
- package/build/i18n/ru.json.js.map +1 -0
- package/build/i18n/ru.json.mjs +60 -0
- package/build/i18n/ru.json.mjs.map +1 -0
- package/build/i18n/th.json.js +62 -0
- package/build/i18n/th.json.js.map +1 -0
- package/build/i18n/th.json.mjs +60 -0
- package/build/i18n/th.json.mjs.map +1 -0
- package/build/i18n/tr.json.js +62 -0
- package/build/i18n/tr.json.js.map +1 -0
- package/build/i18n/tr.json.mjs +60 -0
- package/build/i18n/tr.json.mjs.map +1 -0
- package/build/i18n/uk.json.js +61 -0
- package/build/i18n/uk.json.js.map +1 -0
- package/build/i18n/uk.json.mjs +59 -0
- package/build/i18n/uk.json.mjs.map +1 -0
- package/build/i18n/zh-CN.json.js +62 -0
- package/build/i18n/zh-CN.json.js.map +1 -0
- package/build/i18n/zh-CN.json.mjs +60 -0
- package/build/i18n/zh-CN.json.mjs.map +1 -0
- package/build/i18n/zh-HK.json.js +62 -0
- package/build/i18n/zh-HK.json.js.map +1 -0
- package/build/i18n/zh-HK.json.mjs +60 -0
- package/build/i18n/zh-HK.json.mjs.map +1 -0
- package/build/image/Image.js +55 -0
- package/build/image/Image.js.map +1 -0
- package/build/image/Image.mjs +46 -0
- package/build/image/Image.mjs.map +1 -0
- package/build/index.js +278 -14434
- package/build/index.js.map +1 -1
- package/build/index.mjs +118 -14359
- package/build/index.mjs.map +1 -1
- package/build/info/Info.js +80 -0
- package/build/info/Info.js.map +1 -0
- package/build/info/Info.messages.js +12 -0
- package/build/info/Info.messages.js.map +1 -0
- package/build/info/Info.messages.mjs +10 -0
- package/build/info/Info.messages.mjs.map +1 -0
- package/build/info/Info.mjs +74 -0
- package/build/info/Info.mjs.map +1 -0
- package/build/info/infoPresentations.js +9 -0
- package/build/info/infoPresentations.js.map +1 -0
- package/build/info/infoPresentations.mjs +9 -0
- package/build/info/infoPresentations.mjs.map +1 -0
- package/build/inlineAlert/InlineAlert.js +35 -0
- package/build/inlineAlert/InlineAlert.js.map +1 -0
- package/build/inlineAlert/InlineAlert.mjs +29 -0
- package/build/inlineAlert/InlineAlert.mjs.map +1 -0
- package/build/inputWithDisplayFormat/InputWithDisplayFormat.js +15 -0
- package/build/inputWithDisplayFormat/InputWithDisplayFormat.js.map +1 -0
- package/build/inputWithDisplayFormat/InputWithDisplayFormat.mjs +13 -0
- package/build/inputWithDisplayFormat/InputWithDisplayFormat.mjs.map +1 -0
- package/build/inputs/Input.js +39 -0
- package/build/inputs/Input.js.map +1 -0
- package/build/inputs/Input.mjs +33 -0
- package/build/inputs/Input.mjs.map +1 -0
- package/build/inputs/InputGroup.js +116 -0
- package/build/inputs/InputGroup.js.map +1 -0
- package/build/inputs/InputGroup.mjs +109 -0
- package/build/inputs/InputGroup.mjs.map +1 -0
- package/build/inputs/SearchInput.js +38 -0
- package/build/inputs/SearchInput.js.map +1 -0
- package/build/inputs/SearchInput.mjs +36 -0
- package/build/inputs/SearchInput.mjs.map +1 -0
- package/build/inputs/SelectInput.js +585 -0
- package/build/inputs/SelectInput.js.map +1 -0
- package/build/inputs/SelectInput.messages.js +12 -0
- package/build/inputs/SelectInput.messages.js.map +1 -0
- package/build/inputs/SelectInput.messages.mjs +10 -0
- package/build/inputs/SelectInput.messages.mjs.map +1 -0
- package/build/inputs/SelectInput.mjs +576 -0
- package/build/inputs/SelectInput.mjs.map +1 -0
- package/build/inputs/TextArea.js +27 -0
- package/build/inputs/TextArea.js.map +1 -0
- package/build/inputs/TextArea.mjs +21 -0
- package/build/inputs/TextArea.mjs.map +1 -0
- package/build/inputs/_BottomSheet.js +115 -0
- package/build/inputs/_BottomSheet.js.map +1 -0
- package/build/inputs/_BottomSheet.mjs +109 -0
- package/build/inputs/_BottomSheet.mjs.map +1 -0
- package/build/inputs/_ButtonInput.js +37 -0
- package/build/inputs/_ButtonInput.js.map +1 -0
- package/build/inputs/_ButtonInput.mjs +31 -0
- package/build/inputs/_ButtonInput.mjs.map +1 -0
- package/build/inputs/_Popover.js +120 -0
- package/build/inputs/_Popover.js.map +1 -0
- package/build/inputs/_Popover.mjs +114 -0
- package/build/inputs/_Popover.mjs.map +1 -0
- package/build/inputs/_common.js +23 -0
- package/build/inputs/_common.js.map +1 -0
- package/build/inputs/_common.mjs +17 -0
- package/build/inputs/_common.mjs.map +1 -0
- package/build/inputs/contexts.js +42 -0
- package/build/inputs/contexts.js.map +1 -0
- package/build/inputs/contexts.mjs +35 -0
- package/build/inputs/contexts.mjs.map +1 -0
- package/build/instructionsList/InstructionsList.js +66 -0
- package/build/instructionsList/InstructionsList.js.map +1 -0
- package/build/instructionsList/InstructionsList.mjs +60 -0
- package/build/instructionsList/InstructionsList.mjs.map +1 -0
- package/build/label/Label.js +25 -0
- package/build/label/Label.js.map +1 -0
- package/build/label/Label.mjs +19 -0
- package/build/label/Label.mjs.map +1 -0
- package/build/link/Link.js +42 -0
- package/build/link/Link.js.map +1 -0
- package/build/link/Link.messages.js +12 -0
- package/build/link/Link.messages.js.map +1 -0
- package/build/link/Link.messages.mjs +10 -0
- package/build/link/Link.messages.mjs.map +1 -0
- package/build/link/Link.mjs +36 -0
- package/build/link/Link.mjs.map +1 -0
- package/build/listItem/ListItem.js +50 -0
- package/build/listItem/ListItem.js.map +1 -0
- package/build/listItem/ListItem.mjs +44 -0
- package/build/listItem/ListItem.mjs.map +1 -0
- package/build/loader/Loader.js +68 -0
- package/build/loader/Loader.js.map +1 -0
- package/build/loader/Loader.mjs +62 -0
- package/build/loader/Loader.mjs.map +1 -0
- package/build/logo/Logo.js +176 -0
- package/build/logo/Logo.js.map +1 -0
- package/build/logo/Logo.mjs +168 -0
- package/build/logo/Logo.mjs.map +1 -0
- package/build/markdown/Markdown.js +75 -0
- package/build/markdown/Markdown.js.map +1 -0
- package/build/markdown/Markdown.mjs +69 -0
- package/build/markdown/Markdown.mjs.map +1 -0
- package/build/modal/Modal.js +113 -0
- package/build/modal/Modal.js.map +1 -0
- package/build/modal/Modal.mjs +107 -0
- package/build/modal/Modal.mjs.map +1 -0
- package/build/money/Money.js +20 -0
- package/build/money/Money.js.map +1 -0
- package/build/money/Money.mjs +18 -0
- package/build/money/Money.mjs.map +1 -0
- package/build/moneyInput/MoneyInput.js +369 -0
- package/build/moneyInput/MoneyInput.js.map +1 -0
- package/build/moneyInput/MoneyInput.messages.js +12 -0
- package/build/moneyInput/MoneyInput.messages.js.map +1 -0
- package/build/moneyInput/MoneyInput.messages.mjs +10 -0
- package/build/moneyInput/MoneyInput.messages.mjs.map +1 -0
- package/build/moneyInput/MoneyInput.mjs +363 -0
- package/build/moneyInput/MoneyInput.mjs.map +1 -0
- package/build/moneyInput/currencyFormatting.js +70 -0
- package/build/moneyInput/currencyFormatting.js.map +1 -0
- package/build/moneyInput/currencyFormatting.mjs +64 -0
- package/build/moneyInput/currencyFormatting.mjs.map +1 -0
- package/build/navigationOption/NavigationOption.js +48 -0
- package/build/navigationOption/NavigationOption.js.map +1 -0
- package/build/navigationOption/NavigationOption.mjs +42 -0
- package/build/navigationOption/NavigationOption.mjs.map +1 -0
- package/build/navigationOptionsList/NavigationOptionsList.js +19 -0
- package/build/navigationOptionsList/NavigationOptionsList.js.map +1 -0
- package/build/navigationOptionsList/NavigationOptionsList.mjs +17 -0
- package/build/navigationOptionsList/NavigationOptionsList.mjs.map +1 -0
- package/build/nudge/Nudge.js +121 -0
- package/build/nudge/Nudge.js.map +1 -0
- package/build/nudge/Nudge.mjs +112 -0
- package/build/nudge/Nudge.mjs.map +1 -0
- package/build/overlayHeader/OverlayHeader.js +40 -0
- package/build/overlayHeader/OverlayHeader.js.map +1 -0
- package/build/overlayHeader/OverlayHeader.mjs +34 -0
- package/build/overlayHeader/OverlayHeader.mjs.map +1 -0
- package/build/phoneNumberInput/PhoneNumberInput.js +161 -0
- package/build/phoneNumberInput/PhoneNumberInput.js.map +1 -0
- package/build/phoneNumberInput/PhoneNumberInput.messages.js +12 -0
- package/build/phoneNumberInput/PhoneNumberInput.messages.js.map +1 -0
- package/build/phoneNumberInput/PhoneNumberInput.messages.mjs +10 -0
- package/build/phoneNumberInput/PhoneNumberInput.messages.mjs.map +1 -0
- package/build/phoneNumberInput/PhoneNumberInput.mjs +159 -0
- package/build/phoneNumberInput/PhoneNumberInput.mjs.map +1 -0
- package/build/phoneNumberInput/data/countries.js +1278 -0
- package/build/phoneNumberInput/data/countries.js.map +1 -0
- package/build/phoneNumberInput/data/countries.mjs +1276 -0
- package/build/phoneNumberInput/data/countries.mjs.map +1 -0
- package/build/phoneNumberInput/utils/cleanNumber/cleanNumber.js +7 -0
- package/build/phoneNumberInput/utils/cleanNumber/cleanNumber.js.map +1 -0
- package/build/phoneNumberInput/utils/cleanNumber/cleanNumber.mjs +5 -0
- package/build/phoneNumberInput/utils/cleanNumber/cleanNumber.mjs.map +1 -0
- package/build/phoneNumberInput/utils/excludeCountries/excludeCountries.js +19 -0
- package/build/phoneNumberInput/utils/excludeCountries/excludeCountries.js.map +1 -0
- package/build/phoneNumberInput/utils/excludeCountries/excludeCountries.mjs +17 -0
- package/build/phoneNumberInput/utils/excludeCountries/excludeCountries.mjs.map +1 -0
- package/build/phoneNumberInput/utils/explodeNumberModel/index.js +21 -0
- package/build/phoneNumberInput/utils/explodeNumberModel/index.js.map +1 -0
- package/build/phoneNumberInput/utils/explodeNumberModel/index.mjs +19 -0
- package/build/phoneNumberInput/utils/explodeNumberModel/index.mjs.map +1 -0
- package/build/phoneNumberInput/utils/findCountryByCode/index.js +17 -0
- package/build/phoneNumberInput/utils/findCountryByCode/index.js.map +1 -0
- package/build/phoneNumberInput/utils/findCountryByCode/index.mjs +15 -0
- package/build/phoneNumberInput/utils/findCountryByCode/index.mjs.map +1 -0
- package/build/phoneNumberInput/utils/findCountryByPrefix/index.js +17 -0
- package/build/phoneNumberInput/utils/findCountryByPrefix/index.js.map +1 -0
- package/build/phoneNumberInput/utils/findCountryByPrefix/index.mjs +15 -0
- package/build/phoneNumberInput/utils/findCountryByPrefix/index.mjs.map +1 -0
- package/build/phoneNumberInput/utils/groupCountriesByPrefix/groupCountriesByPrefix.js +12 -0
- package/build/phoneNumberInput/utils/groupCountriesByPrefix/groupCountriesByPrefix.js.map +1 -0
- package/build/phoneNumberInput/utils/groupCountriesByPrefix/groupCountriesByPrefix.mjs +10 -0
- package/build/phoneNumberInput/utils/groupCountriesByPrefix/groupCountriesByPrefix.mjs.map +1 -0
- package/build/phoneNumberInput/utils/isValidPhoneNumber/isValidPhoneNumber.js +11 -0
- package/build/phoneNumberInput/utils/isValidPhoneNumber/isValidPhoneNumber.js.map +1 -0
- package/build/phoneNumberInput/utils/isValidPhoneNumber/isValidPhoneNumber.mjs +9 -0
- package/build/phoneNumberInput/utils/isValidPhoneNumber/isValidPhoneNumber.mjs.map +1 -0
- package/build/phoneNumberInput/utils/longestMatchingPrefix/index.js +6 -0
- package/build/phoneNumberInput/utils/longestMatchingPrefix/index.js.map +1 -0
- package/build/phoneNumberInput/utils/longestMatchingPrefix/index.mjs +4 -0
- package/build/phoneNumberInput/utils/longestMatchingPrefix/index.mjs.map +1 -0
- package/build/phoneNumberInput/utils/setDefaultPrefix/index.js +22 -0
- package/build/phoneNumberInput/utils/setDefaultPrefix/index.js.map +1 -0
- package/build/phoneNumberInput/utils/setDefaultPrefix/index.mjs +20 -0
- package/build/phoneNumberInput/utils/setDefaultPrefix/index.mjs.map +1 -0
- package/build/phoneNumberInput/utils/sortArrayByProperty/sortArrayByProperty.js +8 -0
- package/build/phoneNumberInput/utils/sortArrayByProperty/sortArrayByProperty.js.map +1 -0
- package/build/phoneNumberInput/utils/sortArrayByProperty/sortArrayByProperty.mjs +6 -0
- package/build/phoneNumberInput/utils/sortArrayByProperty/sortArrayByProperty.mjs.map +1 -0
- package/build/popover/Popover.js +79 -0
- package/build/popover/Popover.js.map +1 -0
- package/build/popover/Popover.mjs +73 -0
- package/build/popover/Popover.mjs.map +1 -0
- package/build/processIndicator/ProcessIndicator.js +120 -0
- package/build/processIndicator/ProcessIndicator.js.map +1 -0
- package/build/processIndicator/ProcessIndicator.mjs +114 -0
- package/build/processIndicator/ProcessIndicator.mjs.map +1 -0
- package/build/progress/Progress.js +24 -0
- package/build/progress/Progress.js.map +1 -0
- package/build/progress/Progress.mjs +18 -0
- package/build/progress/Progress.mjs.map +1 -0
- package/build/progressBar/ProgressBar.js +51 -0
- package/build/progressBar/ProgressBar.js.map +1 -0
- package/build/progressBar/ProgressBar.mjs +45 -0
- package/build/progressBar/ProgressBar.mjs.map +1 -0
- package/build/promoCard/PromoCard.js +189 -0
- package/build/promoCard/PromoCard.js.map +1 -0
- package/build/promoCard/PromoCard.mjs +182 -0
- package/build/promoCard/PromoCard.mjs.map +1 -0
- package/build/promoCard/PromoCardContext.js +33 -0
- package/build/promoCard/PromoCardContext.js.map +1 -0
- package/build/promoCard/PromoCardContext.mjs +27 -0
- package/build/promoCard/PromoCardContext.mjs.map +1 -0
- package/build/promoCard/PromoCardGroup.js +80 -0
- package/build/promoCard/PromoCardGroup.js.map +1 -0
- package/build/promoCard/PromoCardGroup.mjs +73 -0
- package/build/promoCard/PromoCardGroup.mjs.map +1 -0
- package/build/promoCard/PromoCardIndicator.js +53 -0
- package/build/promoCard/PromoCardIndicator.js.map +1 -0
- package/build/promoCard/PromoCardIndicator.mjs +47 -0
- package/build/promoCard/PromoCardIndicator.mjs.map +1 -0
- package/build/provider/Provider.js +53 -0
- package/build/provider/Provider.js.map +1 -0
- package/build/provider/Provider.mjs +51 -0
- package/build/provider/Provider.mjs.map +1 -0
- package/build/provider/direction/DirectionProvider.js +20 -0
- package/build/provider/direction/DirectionProvider.js.map +1 -0
- package/build/provider/direction/DirectionProvider.mjs +17 -0
- package/build/provider/direction/DirectionProvider.mjs.map +1 -0
- package/build/provider/language/LanguageProvider.js +20 -0
- package/build/provider/language/LanguageProvider.js.map +1 -0
- package/build/provider/language/LanguageProvider.mjs +17 -0
- package/build/provider/language/LanguageProvider.mjs.map +1 -0
- package/build/radio/Radio.js +63 -0
- package/build/radio/Radio.js.map +1 -0
- package/build/radio/Radio.mjs +57 -0
- package/build/radio/Radio.mjs.map +1 -0
- package/build/radioGroup/RadioGroup.js +40 -0
- package/build/radioGroup/RadioGroup.js.map +1 -0
- package/build/radioGroup/RadioGroup.mjs +38 -0
- package/build/radioGroup/RadioGroup.mjs.map +1 -0
- package/build/radioOption/RadioOption.js +46 -0
- package/build/radioOption/RadioOption.js.map +1 -0
- package/build/radioOption/RadioOption.mjs +44 -0
- package/build/radioOption/RadioOption.mjs.map +1 -0
- package/build/section/Section.js +24 -0
- package/build/section/Section.js.map +1 -0
- package/build/section/Section.mjs +18 -0
- package/build/section/Section.mjs.map +1 -0
- package/build/segmentedControl/SegmentedControl.js +115 -0
- package/build/segmentedControl/SegmentedControl.js.map +1 -0
- package/build/segmentedControl/SegmentedControl.mjs +109 -0
- package/build/segmentedControl/SegmentedControl.mjs.map +1 -0
- package/build/select/Select.js +579 -0
- package/build/select/Select.js.map +1 -0
- package/build/select/Select.messages.js +12 -0
- package/build/select/Select.messages.js.map +1 -0
- package/build/select/Select.messages.mjs +10 -0
- package/build/select/Select.messages.mjs.map +1 -0
- package/build/select/Select.mjs +572 -0
- package/build/select/Select.mjs.map +1 -0
- package/build/select/index.js +8 -0
- package/build/select/index.js.map +1 -0
- package/build/select/index.mjs +6 -0
- package/build/select/index.mjs.map +1 -0
- package/build/select/option/Option.js +58 -0
- package/build/select/option/Option.js.map +1 -0
- package/build/select/option/Option.mjs +52 -0
- package/build/select/option/Option.mjs.map +1 -0
- package/build/select/option/index.js +8 -0
- package/build/select/option/index.js.map +1 -0
- package/build/select/option/index.mjs +6 -0
- package/build/select/option/index.mjs.map +1 -0
- package/build/select/searchBox/SearchBox.js +54 -0
- package/build/select/searchBox/SearchBox.js.map +1 -0
- package/build/select/searchBox/SearchBox.mjs +48 -0
- package/build/select/searchBox/SearchBox.mjs.map +1 -0
- package/build/slidingPanel/SlidingPanel.js +51 -0
- package/build/slidingPanel/SlidingPanel.js.map +1 -0
- package/build/slidingPanel/SlidingPanel.mjs +42 -0
- package/build/slidingPanel/SlidingPanel.mjs.map +1 -0
- package/build/snackbar/Snackbar.js +128 -0
- package/build/snackbar/Snackbar.js.map +1 -0
- package/build/snackbar/Snackbar.mjs +123 -0
- package/build/snackbar/Snackbar.mjs.map +1 -0
- package/build/snackbar/SnackbarContext.js +12 -0
- package/build/snackbar/SnackbarContext.js.map +1 -0
- package/build/snackbar/SnackbarContext.mjs +9 -0
- package/build/snackbar/SnackbarContext.mjs.map +1 -0
- package/build/snackbar/SnackbarProvider.js +48 -0
- package/build/snackbar/SnackbarProvider.js.map +1 -0
- package/build/snackbar/SnackbarProvider.mjs +46 -0
- package/build/snackbar/SnackbarProvider.mjs.map +1 -0
- package/build/snackbar/useSnackbar.js +14 -0
- package/build/snackbar/useSnackbar.js.map +1 -0
- package/build/snackbar/useSnackbar.mjs +12 -0
- package/build/snackbar/useSnackbar.mjs.map +1 -0
- package/build/statusIcon/StatusIcon.js +37 -0
- package/build/statusIcon/StatusIcon.js.map +1 -0
- package/build/statusIcon/StatusIcon.mjs +31 -0
- package/build/statusIcon/StatusIcon.mjs.map +1 -0
- package/build/stepper/Stepper.js +80 -0
- package/build/stepper/Stepper.js.map +1 -0
- package/build/stepper/Stepper.mjs +74 -0
- package/build/stepper/Stepper.mjs.map +1 -0
- package/build/stepper/deviceDetection.js +22 -0
- package/build/stepper/deviceDetection.js.map +1 -0
- package/build/stepper/deviceDetection.mjs +20 -0
- package/build/stepper/deviceDetection.mjs.map +1 -0
- package/build/sticky/Sticky.js +24 -0
- package/build/sticky/Sticky.js.map +1 -0
- package/build/sticky/Sticky.mjs +22 -0
- package/build/sticky/Sticky.mjs.map +1 -0
- package/build/summary/Summary.js +119 -0
- package/build/summary/Summary.js.map +1 -0
- package/build/summary/Summary.messages.js +18 -0
- package/build/summary/Summary.messages.js.map +1 -0
- package/build/summary/Summary.messages.mjs +16 -0
- package/build/summary/Summary.messages.mjs.map +1 -0
- package/build/summary/Summary.mjs +113 -0
- package/build/summary/Summary.mjs.map +1 -0
- package/build/switch/Switch.js +82 -0
- package/build/switch/Switch.js.map +1 -0
- package/build/switch/Switch.mjs +76 -0
- package/build/switch/Switch.mjs.map +1 -0
- package/build/switchOption/SwitchOption.js +59 -0
- package/build/switchOption/SwitchOption.js.map +1 -0
- package/build/switchOption/SwitchOption.mjs +57 -0
- package/build/switchOption/SwitchOption.mjs.map +1 -0
- package/build/tabs/Tab.js +81 -0
- package/build/tabs/Tab.js.map +1 -0
- package/build/tabs/Tab.mjs +74 -0
- package/build/tabs/Tab.mjs.map +1 -0
- package/build/tabs/TabList.js +24 -0
- package/build/tabs/TabList.js.map +1 -0
- package/build/tabs/TabList.mjs +18 -0
- package/build/tabs/TabList.mjs.map +1 -0
- package/build/tabs/TabPanel.js +35 -0
- package/build/tabs/TabPanel.js.map +1 -0
- package/build/tabs/TabPanel.mjs +29 -0
- package/build/tabs/TabPanel.mjs.map +1 -0
- package/build/tabs/Tabs.js +541 -0
- package/build/tabs/Tabs.js.map +1 -0
- package/build/tabs/Tabs.mjs +533 -0
- package/build/tabs/Tabs.mjs.map +1 -0
- package/build/tabs/utils.js +50 -0
- package/build/tabs/utils.js.map +1 -0
- package/build/tabs/utils.mjs +42 -0
- package/build/tabs/utils.mjs.map +1 -0
- package/build/textareaWithDisplayFormat/TextareaWithDisplayFormat.js +15 -0
- package/build/textareaWithDisplayFormat/TextareaWithDisplayFormat.js.map +1 -0
- package/build/textareaWithDisplayFormat/TextareaWithDisplayFormat.mjs +13 -0
- package/build/textareaWithDisplayFormat/TextareaWithDisplayFormat.mjs.map +1 -0
- package/build/tile/Tile.js +58 -0
- package/build/tile/Tile.js.map +1 -0
- package/build/tile/Tile.mjs +52 -0
- package/build/tile/Tile.mjs.map +1 -0
- package/build/title/Title.js +42 -0
- package/build/title/Title.js.map +1 -0
- package/build/title/Title.mjs +36 -0
- package/build/title/Title.mjs.map +1 -0
- package/build/tooltip/Tooltip.js +103 -0
- package/build/tooltip/Tooltip.js.map +1 -0
- package/build/tooltip/Tooltip.mjs +97 -0
- package/build/tooltip/Tooltip.mjs.map +1 -0
- package/build/typeahead/Typeahead.js +468 -0
- package/build/typeahead/Typeahead.js.map +1 -0
- package/build/typeahead/Typeahead.mjs +460 -0
- package/build/typeahead/Typeahead.mjs.map +1 -0
- package/build/typeahead/typeaheadInput/TypeaheadInput.js +120 -0
- package/build/typeahead/typeaheadInput/TypeaheadInput.js.map +1 -0
- package/build/typeahead/typeaheadInput/TypeaheadInput.mjs +114 -0
- package/build/typeahead/typeaheadInput/TypeaheadInput.mjs.map +1 -0
- package/build/typeahead/typeaheadOption/TypeaheadOption.js +49 -0
- package/build/typeahead/typeaheadOption/TypeaheadOption.js.map +1 -0
- package/build/typeahead/typeaheadOption/TypeaheadOption.mjs +43 -0
- package/build/typeahead/typeaheadOption/TypeaheadOption.mjs.map +1 -0
- package/build/typeahead/util/highlight.js +21 -0
- package/build/typeahead/util/highlight.js.map +1 -0
- package/build/typeahead/util/highlight.mjs +19 -0
- package/build/typeahead/util/highlight.mjs.map +1 -0
- package/build/types/definitionList/DefinitionList.d.ts +2 -2
- package/build/types/definitionList/DefinitionList.d.ts.map +1 -1
- package/build/types/definitionList/index.d.ts +1 -1
- package/build/types/definitionList/index.d.ts.map +1 -1
- package/build/types/index.d.ts +1 -1
- package/build/types/index.d.ts.map +1 -1
- package/build/upload/Upload.js +366 -0
- package/build/upload/Upload.js.map +1 -0
- package/build/upload/Upload.messages.js +39 -0
- package/build/upload/Upload.messages.js.map +1 -0
- package/build/upload/Upload.messages.mjs +37 -0
- package/build/upload/Upload.messages.mjs.map +1 -0
- package/build/upload/Upload.mjs +356 -0
- package/build/upload/Upload.mjs.map +1 -0
- package/build/upload/steps/completeStep/completeStep.js +65 -0
- package/build/upload/steps/completeStep/completeStep.js.map +1 -0
- package/build/upload/steps/completeStep/completeStep.mjs +63 -0
- package/build/upload/steps/completeStep/completeStep.mjs.map +1 -0
- package/build/upload/steps/processingStep/processingStep.js +50 -0
- package/build/upload/steps/processingStep/processingStep.js.map +1 -0
- package/build/upload/steps/processingStep/processingStep.mjs +48 -0
- package/build/upload/steps/processingStep/processingStep.mjs.map +1 -0
- package/build/upload/steps/uploadImageStep/uploadImageStep.js +88 -0
- package/build/upload/steps/uploadImageStep/uploadImageStep.js.map +1 -0
- package/build/upload/steps/uploadImageStep/uploadImageStep.mjs +86 -0
- package/build/upload/steps/uploadImageStep/uploadImageStep.mjs.map +1 -0
- package/build/upload/utils/asyncFileRead/asyncFileRead.js +17 -0
- package/build/upload/utils/asyncFileRead/asyncFileRead.js.map +1 -0
- package/build/upload/utils/asyncFileRead/asyncFileRead.mjs +15 -0
- package/build/upload/utils/asyncFileRead/asyncFileRead.mjs.map +1 -0
- package/build/upload/utils/getFileType/getFileType.js +18 -0
- package/build/upload/utils/getFileType/getFileType.js.map +1 -0
- package/build/upload/utils/getFileType/getFileType.mjs +16 -0
- package/build/upload/utils/getFileType/getFileType.mjs.map +1 -0
- package/build/upload/utils/isSizeValid/isSizeValid.js +8 -0
- package/build/upload/utils/isSizeValid/isSizeValid.js.map +1 -0
- package/build/upload/utils/isSizeValid/isSizeValid.mjs +6 -0
- package/build/upload/utils/isSizeValid/isSizeValid.mjs.map +1 -0
- package/build/upload/utils/isTypeValid/isTypeValid.js +21 -0
- package/build/upload/utils/isTypeValid/isTypeValid.js.map +1 -0
- package/build/upload/utils/isTypeValid/isTypeValid.mjs +19 -0
- package/build/upload/utils/isTypeValid/isTypeValid.mjs.map +1 -0
- package/build/upload/utils/postData/postData.js +31 -0
- package/build/upload/utils/postData/postData.js.map +1 -0
- package/build/upload/utils/postData/postData.mjs +28 -0
- package/build/upload/utils/postData/postData.mjs.map +1 -0
- package/build/uploadInput/UploadInput.js +259 -0
- package/build/uploadInput/UploadInput.js.map +1 -0
- package/build/uploadInput/UploadInput.messages.js +30 -0
- package/build/uploadInput/UploadInput.messages.js.map +1 -0
- package/build/uploadInput/UploadInput.messages.mjs +28 -0
- package/build/uploadInput/UploadInput.messages.mjs.map +1 -0
- package/build/uploadInput/UploadInput.mjs +253 -0
- package/build/uploadInput/UploadInput.mjs.map +1 -0
- package/build/uploadInput/uploadButton/UploadButton.js +186 -0
- package/build/uploadInput/uploadButton/UploadButton.js.map +1 -0
- package/build/uploadInput/uploadButton/UploadButton.messages.js +24 -0
- package/build/uploadInput/uploadButton/UploadButton.messages.js.map +1 -0
- package/build/uploadInput/uploadButton/UploadButton.messages.mjs +22 -0
- package/build/uploadInput/uploadButton/UploadButton.messages.mjs.map +1 -0
- package/build/uploadInput/uploadButton/UploadButton.mjs +178 -0
- package/build/uploadInput/uploadButton/UploadButton.mjs.map +1 -0
- package/build/uploadInput/uploadButton/defaults.js +10 -0
- package/build/uploadInput/uploadButton/defaults.js.map +1 -0
- package/build/uploadInput/uploadButton/defaults.mjs +7 -0
- package/build/uploadInput/uploadButton/defaults.mjs.map +1 -0
- package/build/uploadInput/uploadButton/getAllowedFileTypes.js +8 -0
- package/build/uploadInput/uploadButton/getAllowedFileTypes.js.map +1 -0
- package/build/uploadInput/uploadButton/getAllowedFileTypes.mjs +6 -0
- package/build/uploadInput/uploadButton/getAllowedFileTypes.mjs.map +1 -0
- package/build/uploadInput/uploadItem/UploadItem.js +174 -0
- package/build/uploadInput/uploadItem/UploadItem.js.map +1 -0
- package/build/uploadInput/uploadItem/UploadItem.messages.js +27 -0
- package/build/uploadInput/uploadItem/UploadItem.messages.js.map +1 -0
- package/build/uploadInput/uploadItem/UploadItem.messages.mjs +25 -0
- package/build/uploadInput/uploadItem/UploadItem.messages.mjs.map +1 -0
- package/build/uploadInput/uploadItem/UploadItem.mjs +166 -0
- package/build/uploadInput/uploadItem/UploadItem.mjs.map +1 -0
- package/build/uploadInput/uploadItem/UploadItemBody.js +27 -0
- package/build/uploadInput/uploadItem/UploadItemBody.js.map +1 -0
- package/build/uploadInput/uploadItem/UploadItemBody.mjs +25 -0
- package/build/uploadInput/uploadItem/UploadItemBody.mjs.map +1 -0
- package/build/utilities/cssValueWithUnit.js +8 -0
- package/build/utilities/cssValueWithUnit.js.map +1 -0
- package/build/utilities/cssValueWithUnit.mjs +6 -0
- package/build/utilities/cssValueWithUnit.mjs.map +1 -0
- package/build/utilities/logActionRequired.js +17 -0
- package/build/utilities/logActionRequired.js.map +1 -0
- package/build/utilities/logActionRequired.mjs +14 -0
- package/build/utilities/logActionRequired.mjs.map +1 -0
- package/build/withDisplayFormat/WithDisplayFormat.js +304 -0
- package/build/withDisplayFormat/WithDisplayFormat.js.map +1 -0
- package/build/withDisplayFormat/WithDisplayFormat.mjs +282 -0
- package/build/withDisplayFormat/WithDisplayFormat.mjs.map +1 -0
- package/build/withNextPortal/withNextPortal.js +20 -0
- package/build/withNextPortal/withNextPortal.js.map +1 -0
- package/build/withNextPortal/withNextPortal.mjs +18 -0
- package/build/withNextPortal/withNextPortal.mjs.map +1 -0
- package/package.json +4 -3
- package/src/common/hooks/useVirtualKeyboard.ts +1 -1
- package/src/definitionList/DefinitionList.tsx +6 -3
- package/src/definitionList/index.ts +1 -1
- package/src/index.ts +1 -1
|
@@ -0,0 +1,576 @@
|
|
|
1
|
+
import { Listbox } from '@headlessui/react';
|
|
2
|
+
import { CrossCircle, Check, ChevronDown, Cross } from '@transferwise/icons';
|
|
3
|
+
import classNames from 'classnames';
|
|
4
|
+
import mergeProps from 'merge-props';
|
|
5
|
+
import { useState, useRef, useEffect, useContext, useMemo, useId, createContext, forwardRef } from 'react';
|
|
6
|
+
import { useIntl } from 'react-intl';
|
|
7
|
+
import { useEffectEvent } from '../common/hooks/useEffectEvent.mjs';
|
|
8
|
+
import { useScreenSize } from '../common/hooks/useScreenSize.mjs';
|
|
9
|
+
import { PolymorphicWithOverrides } from '../common/polymorphicWithOverrides/PolymorphicWithOverrides.mjs';
|
|
10
|
+
import { Breakpoint } from '../common/propsValues/breakpoint.mjs';
|
|
11
|
+
import dateTriggerMessages from '../dateLookup/dateTrigger/DateTrigger.messages.mjs';
|
|
12
|
+
import { BottomSheet } from './_BottomSheet.mjs';
|
|
13
|
+
import { ButtonInput } from './_ButtonInput.mjs';
|
|
14
|
+
import { Popover } from './_Popover.mjs';
|
|
15
|
+
import { useInputAttributes } from './contexts.mjs';
|
|
16
|
+
import { InputGroup } from './InputGroup.mjs';
|
|
17
|
+
import { SearchInput } from './SearchInput.mjs';
|
|
18
|
+
import messages from './SelectInput.messages.mjs';
|
|
19
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
20
|
+
|
|
21
|
+
function searchableString(value) {
|
|
22
|
+
return value.trim().replace(/\s+/gu, ' ').normalize('NFKC').toLowerCase();
|
|
23
|
+
}
|
|
24
|
+
function inferSearchableStrings(value) {
|
|
25
|
+
if (typeof value === 'string') {
|
|
26
|
+
return [searchableString(value)];
|
|
27
|
+
}
|
|
28
|
+
if (typeof value === 'object' && value != null) {
|
|
29
|
+
return Object.values(value).filter(innerValue => typeof innerValue === 'string').map(innerValue => searchableString(innerValue));
|
|
30
|
+
}
|
|
31
|
+
return [];
|
|
32
|
+
}
|
|
33
|
+
const SelectInputTriggerButtonPropsContext = /*#__PURE__*/createContext({});
|
|
34
|
+
const SelectInputOptionContentWithinTriggerContext = /*#__PURE__*/createContext(false);
|
|
35
|
+
function dedupeSelectInputOptionItem(item, existingValues) {
|
|
36
|
+
if (!existingValues.has(item.value)) {
|
|
37
|
+
existingValues.add(item.value);
|
|
38
|
+
return item;
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
...item,
|
|
42
|
+
value: undefined
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function dedupeSelectInputItems(items) {
|
|
46
|
+
const existingValues = new Set();
|
|
47
|
+
return items.map(item => {
|
|
48
|
+
switch (item.type) {
|
|
49
|
+
case 'option':
|
|
50
|
+
{
|
|
51
|
+
return dedupeSelectInputOptionItem(item, existingValues);
|
|
52
|
+
}
|
|
53
|
+
case 'group':
|
|
54
|
+
{
|
|
55
|
+
return {
|
|
56
|
+
...item,
|
|
57
|
+
options: item.options.map(option => dedupeSelectInputOptionItem(option, existingValues))
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return item;
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
function filterSelectInputOptionItem(item, needle) {
|
|
65
|
+
return inferSearchableStrings(item.filterMatchers ?? item.value).some(haystack => haystack.includes(needle));
|
|
66
|
+
}
|
|
67
|
+
function filterSelectInputItems(items, needle) {
|
|
68
|
+
return items.filter(item => {
|
|
69
|
+
switch (item.type) {
|
|
70
|
+
case 'option':
|
|
71
|
+
{
|
|
72
|
+
return filterSelectInputOptionItem(item, needle);
|
|
73
|
+
}
|
|
74
|
+
case 'group':
|
|
75
|
+
{
|
|
76
|
+
return item.options.some(option => filterSelectInputOptionItem(option, needle));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return false;
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
const defaultRenderTrigger = ({
|
|
83
|
+
content,
|
|
84
|
+
placeholderShown,
|
|
85
|
+
clear,
|
|
86
|
+
disabled,
|
|
87
|
+
size,
|
|
88
|
+
className
|
|
89
|
+
}) => /*#__PURE__*/jsx(InputGroup, {
|
|
90
|
+
addonEnd: {
|
|
91
|
+
content: /*#__PURE__*/jsxs("span", {
|
|
92
|
+
className: classNames('np-select-input-addon-container', disabled && 'disabled'),
|
|
93
|
+
children: [clear != null && !placeholderShown ? /*#__PURE__*/jsxs(Fragment, {
|
|
94
|
+
children: [/*#__PURE__*/jsx(SelectInputClearButton, {
|
|
95
|
+
onClick: event => {
|
|
96
|
+
event.preventDefault();
|
|
97
|
+
clear();
|
|
98
|
+
}
|
|
99
|
+
}), /*#__PURE__*/jsx("span", {
|
|
100
|
+
className: "np-select-input-addon-separator"
|
|
101
|
+
})]
|
|
102
|
+
}) : null, /*#__PURE__*/jsx("span", {
|
|
103
|
+
className: "np-select-input-addon",
|
|
104
|
+
children: /*#__PURE__*/jsx(ChevronDown, {
|
|
105
|
+
size: 16
|
|
106
|
+
})
|
|
107
|
+
})]
|
|
108
|
+
}),
|
|
109
|
+
initialContentWidth: 24 + 4,
|
|
110
|
+
padding: 'sm'
|
|
111
|
+
},
|
|
112
|
+
disabled: disabled,
|
|
113
|
+
className: className,
|
|
114
|
+
children: /*#__PURE__*/jsx(SelectInputTriggerButton, {
|
|
115
|
+
as: ButtonInput,
|
|
116
|
+
size: size,
|
|
117
|
+
children: /*#__PURE__*/jsx("span", {
|
|
118
|
+
className: classNames('np-select-input-content', placeholderShown && 'np-select-input-placeholder'),
|
|
119
|
+
children: content
|
|
120
|
+
})
|
|
121
|
+
})
|
|
122
|
+
});
|
|
123
|
+
function SelectInputClearButton({
|
|
124
|
+
className,
|
|
125
|
+
onClick
|
|
126
|
+
}) {
|
|
127
|
+
const intl = useIntl();
|
|
128
|
+
return /*#__PURE__*/jsx("button", {
|
|
129
|
+
type: "button",
|
|
130
|
+
"aria-label": intl.formatMessage(dateTriggerMessages.ariaLabel),
|
|
131
|
+
className: classNames(className, 'np-select-input-addon np-select-input-addon--interactive'),
|
|
132
|
+
onClick: onClick,
|
|
133
|
+
children: /*#__PURE__*/jsx(Cross, {
|
|
134
|
+
size: 16
|
|
135
|
+
})
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
const noop = () => {};
|
|
139
|
+
function SelectInput({
|
|
140
|
+
id: idProp,
|
|
141
|
+
name,
|
|
142
|
+
multiple,
|
|
143
|
+
placeholder,
|
|
144
|
+
items,
|
|
145
|
+
defaultValue,
|
|
146
|
+
value: controlledValue,
|
|
147
|
+
compareValues,
|
|
148
|
+
renderValue = String,
|
|
149
|
+
renderFooter,
|
|
150
|
+
renderTrigger = defaultRenderTrigger,
|
|
151
|
+
filterable,
|
|
152
|
+
filterPlaceholder,
|
|
153
|
+
disabled,
|
|
154
|
+
size = 'md',
|
|
155
|
+
className,
|
|
156
|
+
UNSAFE_triggerButtonProps,
|
|
157
|
+
onFilterChange = noop,
|
|
158
|
+
onChange,
|
|
159
|
+
onClose,
|
|
160
|
+
onClear
|
|
161
|
+
}) {
|
|
162
|
+
const inputAttributes = useInputAttributes();
|
|
163
|
+
const id = idProp ?? inputAttributes.id;
|
|
164
|
+
const [open, setOpen] = useState(false);
|
|
165
|
+
const initialized = useRef(false);
|
|
166
|
+
const handleClose = useEffectEvent(onClose ?? (() => {}));
|
|
167
|
+
useEffect(() => {
|
|
168
|
+
if (initialized.current) {
|
|
169
|
+
if (!open) {
|
|
170
|
+
handleClose?.();
|
|
171
|
+
}
|
|
172
|
+
} else {
|
|
173
|
+
initialized.current = true;
|
|
174
|
+
}
|
|
175
|
+
}, [handleClose, open]);
|
|
176
|
+
const [filterQuery, _setFilterQuery] = useState('');
|
|
177
|
+
const setFilterQuery = useEffectEvent(query => {
|
|
178
|
+
_setFilterQuery(query);
|
|
179
|
+
onFilterChange({
|
|
180
|
+
query,
|
|
181
|
+
queryNormalized: query ? searchableString(query) : null
|
|
182
|
+
});
|
|
183
|
+
});
|
|
184
|
+
const triggerRef = useRef(null);
|
|
185
|
+
const screenSm = useScreenSize(Breakpoint.SMALL);
|
|
186
|
+
const OptionsOverlay = screenSm ? Popover : BottomSheet;
|
|
187
|
+
const searchInputRef = useRef(null);
|
|
188
|
+
const listboxRef = useRef(null);
|
|
189
|
+
const controllerRef = filterable ? searchInputRef : listboxRef;
|
|
190
|
+
return /*#__PURE__*/jsx(Listbox, {
|
|
191
|
+
name: name,
|
|
192
|
+
multiple: multiple,
|
|
193
|
+
defaultValue: defaultValue,
|
|
194
|
+
value: controlledValue
|
|
195
|
+
// TODO: Remove assertion when upgrading TypeScript to v5
|
|
196
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
|
197
|
+
,
|
|
198
|
+
by: compareValues,
|
|
199
|
+
disabled: disabled,
|
|
200
|
+
onChange: value => {
|
|
201
|
+
if (!multiple) {
|
|
202
|
+
setOpen(false);
|
|
203
|
+
}
|
|
204
|
+
onChange?.(value);
|
|
205
|
+
},
|
|
206
|
+
children: ({
|
|
207
|
+
disabled: uiDisabled,
|
|
208
|
+
value
|
|
209
|
+
}) => {
|
|
210
|
+
const placeholderShown = multiple && Array.isArray(value) ? value.length === 0 : value == null;
|
|
211
|
+
return /*#__PURE__*/jsx(OptionsOverlay, {
|
|
212
|
+
placement: "bottom-start",
|
|
213
|
+
open: open,
|
|
214
|
+
renderTrigger: ({
|
|
215
|
+
ref,
|
|
216
|
+
getInteractionProps
|
|
217
|
+
}) => /*#__PURE__*/jsx(SelectInputTriggerButtonPropsContext.Provider, {
|
|
218
|
+
// eslint-disable-next-line react/jsx-no-constructed-context-values
|
|
219
|
+
value: {
|
|
220
|
+
ref: node => {
|
|
221
|
+
ref(node);
|
|
222
|
+
triggerRef.current = node;
|
|
223
|
+
},
|
|
224
|
+
...inputAttributes,
|
|
225
|
+
...UNSAFE_triggerButtonProps,
|
|
226
|
+
id,
|
|
227
|
+
...mergeProps({
|
|
228
|
+
onClick: () => {
|
|
229
|
+
setOpen(prev => !prev);
|
|
230
|
+
},
|
|
231
|
+
onKeyDown: event => {
|
|
232
|
+
if (event.key === ' ' || event.key === 'Enter' || event.key === 'ArrowDown' || event.key === 'ArrowUp') {
|
|
233
|
+
setOpen(prev => !prev);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}, getInteractionProps())
|
|
237
|
+
},
|
|
238
|
+
children: renderTrigger({
|
|
239
|
+
content: !placeholderShown ? /*#__PURE__*/jsx(SelectInputOptionContentWithinTriggerContext.Provider, {
|
|
240
|
+
value: true,
|
|
241
|
+
children: multiple && Array.isArray(value) ? value.map(option => renderValue(option, true)).filter(node => node != null).join(', ') : renderValue(value, true)
|
|
242
|
+
}) : placeholder,
|
|
243
|
+
placeholderShown,
|
|
244
|
+
clear: onClear != null ? () => {
|
|
245
|
+
onClear();
|
|
246
|
+
triggerRef.current?.focus({
|
|
247
|
+
preventScroll: true
|
|
248
|
+
});
|
|
249
|
+
} : undefined,
|
|
250
|
+
disabled: uiDisabled,
|
|
251
|
+
size,
|
|
252
|
+
className
|
|
253
|
+
})
|
|
254
|
+
}),
|
|
255
|
+
initialFocusRef: controllerRef,
|
|
256
|
+
size: filterable ? 'lg' : 'md',
|
|
257
|
+
padding: "none",
|
|
258
|
+
onClose: () => {
|
|
259
|
+
setOpen(false);
|
|
260
|
+
},
|
|
261
|
+
onCloseEnd: () => {
|
|
262
|
+
if (filterQuery !== '') {
|
|
263
|
+
setFilterQuery('');
|
|
264
|
+
}
|
|
265
|
+
},
|
|
266
|
+
children: /*#__PURE__*/jsx(SelectInputOptions, {
|
|
267
|
+
items: items,
|
|
268
|
+
renderValue: renderValue,
|
|
269
|
+
renderFooter: renderFooter,
|
|
270
|
+
filterable: filterable,
|
|
271
|
+
filterPlaceholder: filterPlaceholder,
|
|
272
|
+
searchInputRef: searchInputRef,
|
|
273
|
+
listboxRef: listboxRef,
|
|
274
|
+
filterQuery: filterQuery,
|
|
275
|
+
onFilterChange: setFilterQuery
|
|
276
|
+
})
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
});
|
|
280
|
+
}
|
|
281
|
+
function SelectInputTriggerButton({
|
|
282
|
+
as = 'button',
|
|
283
|
+
...restProps
|
|
284
|
+
}) {
|
|
285
|
+
const {
|
|
286
|
+
ref,
|
|
287
|
+
onClick,
|
|
288
|
+
onKeyDown,
|
|
289
|
+
...interactionProps
|
|
290
|
+
} = useContext(SelectInputTriggerButtonPropsContext);
|
|
291
|
+
return /*#__PURE__*/jsx(Listbox.Button, {
|
|
292
|
+
ref: ref,
|
|
293
|
+
as: PolymorphicWithOverrides,
|
|
294
|
+
__overrides: {
|
|
295
|
+
as,
|
|
296
|
+
...interactionProps
|
|
297
|
+
},
|
|
298
|
+
...mergeProps({
|
|
299
|
+
onClick,
|
|
300
|
+
onKeyDown
|
|
301
|
+
}, restProps)
|
|
302
|
+
});
|
|
303
|
+
}
|
|
304
|
+
const SelectInputOptionsContainer = /*#__PURE__*/forwardRef(function SelectInputOptionsContainer({
|
|
305
|
+
'aria-orientation': ariaOrientation,
|
|
306
|
+
'aria-activedescendant': ariaActiveDescendant,
|
|
307
|
+
role,
|
|
308
|
+
tabIndex,
|
|
309
|
+
onAriaActiveDescendantChange,
|
|
310
|
+
onKeyDown,
|
|
311
|
+
...restProps
|
|
312
|
+
}, ref) {
|
|
313
|
+
const handleAriaActiveDescendantChange = useEffectEvent(onAriaActiveDescendantChange);
|
|
314
|
+
useEffect(() => {
|
|
315
|
+
handleAriaActiveDescendantChange(ariaActiveDescendant);
|
|
316
|
+
}, [ariaActiveDescendant, handleAriaActiveDescendantChange]);
|
|
317
|
+
return /*#__PURE__*/jsx("div", {
|
|
318
|
+
ref: ref,
|
|
319
|
+
role: "none",
|
|
320
|
+
onKeyDown: event => {
|
|
321
|
+
// Prevent confirmation close without an active item
|
|
322
|
+
if (event.key === 'Enter' && ariaActiveDescendant == null) {
|
|
323
|
+
return;
|
|
324
|
+
}
|
|
325
|
+
// Prevent absorbing actions early
|
|
326
|
+
if (event.key === 'Escape' || event.key === 'Tab') {
|
|
327
|
+
onKeyDown?.({
|
|
328
|
+
...event,
|
|
329
|
+
preventDefault: () => {},
|
|
330
|
+
stopPropagation: () => {}
|
|
331
|
+
});
|
|
332
|
+
return;
|
|
333
|
+
}
|
|
334
|
+
onKeyDown?.(event);
|
|
335
|
+
},
|
|
336
|
+
...restProps
|
|
337
|
+
});
|
|
338
|
+
});
|
|
339
|
+
function SelectInputOptions({
|
|
340
|
+
items,
|
|
341
|
+
renderValue = String,
|
|
342
|
+
renderFooter,
|
|
343
|
+
filterable = false,
|
|
344
|
+
filterPlaceholder,
|
|
345
|
+
searchInputRef,
|
|
346
|
+
listboxRef,
|
|
347
|
+
filterQuery,
|
|
348
|
+
onFilterChange
|
|
349
|
+
}) {
|
|
350
|
+
const intl = useIntl();
|
|
351
|
+
const controllerRef = filterable ? searchInputRef : listboxRef;
|
|
352
|
+
const needle = useMemo(() => {
|
|
353
|
+
if (filterable) {
|
|
354
|
+
return filterQuery ? searchableString(filterQuery) : null;
|
|
355
|
+
}
|
|
356
|
+
return undefined;
|
|
357
|
+
}, [filterQuery, filterable]);
|
|
358
|
+
const resultsEmpty = needle != null && filterSelectInputItems(items, needle).length === 0;
|
|
359
|
+
const listboxContainerRef = useRef(null);
|
|
360
|
+
useEffect(() => {
|
|
361
|
+
if (listboxContainerRef.current != null) {
|
|
362
|
+
listboxContainerRef.current.style.setProperty('--initial-height', `${listboxContainerRef.current.offsetHeight}px`);
|
|
363
|
+
}
|
|
364
|
+
}, []);
|
|
365
|
+
const showStatus = resultsEmpty;
|
|
366
|
+
const statusId = useId();
|
|
367
|
+
const listboxId = useId();
|
|
368
|
+
return /*#__PURE__*/jsxs(Listbox.Options, {
|
|
369
|
+
as: SelectInputOptionsContainer,
|
|
370
|
+
static: true,
|
|
371
|
+
className: "np-select-input-options-container",
|
|
372
|
+
onAriaActiveDescendantChange: value => {
|
|
373
|
+
if (controllerRef.current != null) {
|
|
374
|
+
if (value != null) {
|
|
375
|
+
controllerRef.current.setAttribute('aria-activedescendant', value);
|
|
376
|
+
} else {
|
|
377
|
+
controllerRef.current.removeAttribute('aria-activedescendant');
|
|
378
|
+
if (filterQuery) {
|
|
379
|
+
// Ensure having an active option while filtering
|
|
380
|
+
controllerRef.current.dispatchEvent(new KeyboardEvent('keydown', {
|
|
381
|
+
key: 'Home',
|
|
382
|
+
bubbles: true
|
|
383
|
+
}));
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
},
|
|
388
|
+
children: [filterable ? /*#__PURE__*/jsx("div", {
|
|
389
|
+
className: "np-select-input-query-container",
|
|
390
|
+
children: /*#__PURE__*/jsx(SearchInput, {
|
|
391
|
+
ref: searchInputRef,
|
|
392
|
+
shape: "rectangle",
|
|
393
|
+
placeholder: filterPlaceholder,
|
|
394
|
+
value: filterQuery,
|
|
395
|
+
"aria-controls": listboxId,
|
|
396
|
+
"aria-describedby": showStatus ? statusId : undefined,
|
|
397
|
+
onKeyDown: event => {
|
|
398
|
+
// Prevent interfering with the matcher of Headless UI
|
|
399
|
+
// https://mathiasbynens.be/notes/javascript-unicode#regex
|
|
400
|
+
if (/^.$/u.test(event.key)) {
|
|
401
|
+
event.stopPropagation();
|
|
402
|
+
}
|
|
403
|
+
},
|
|
404
|
+
onChange: event => {
|
|
405
|
+
onFilterChange(event.currentTarget.value);
|
|
406
|
+
}
|
|
407
|
+
})
|
|
408
|
+
}) : null, /*#__PURE__*/jsxs("section", {
|
|
409
|
+
ref: listboxContainerRef,
|
|
410
|
+
tabIndex: -1,
|
|
411
|
+
className: classNames('np-select-input-listbox-container', items.some(item => item.type === 'group') && 'np-select-input-listbox-container--has-group'),
|
|
412
|
+
children: [resultsEmpty ? /*#__PURE__*/jsxs("div", {
|
|
413
|
+
id: statusId,
|
|
414
|
+
className: "np-select-input-options-status",
|
|
415
|
+
children: [/*#__PURE__*/jsx(CrossCircle, {
|
|
416
|
+
size: 16,
|
|
417
|
+
className: "np-select-input-options-status-icon"
|
|
418
|
+
}), intl.formatMessage(messages.noResultsFound)]
|
|
419
|
+
}) : null, /*#__PURE__*/jsx("div", {
|
|
420
|
+
ref: listboxRef,
|
|
421
|
+
id: listboxId,
|
|
422
|
+
role: "listbox",
|
|
423
|
+
"aria-orientation": "vertical",
|
|
424
|
+
tabIndex: 0,
|
|
425
|
+
className: "np-select-input-listbox",
|
|
426
|
+
children: (needle != null ? dedupeSelectInputItems(items) : items).map((item, index) => /*#__PURE__*/jsx(SelectInputItemView
|
|
427
|
+
// eslint-disable-next-line react/no-array-index-key
|
|
428
|
+
, {
|
|
429
|
+
item: item,
|
|
430
|
+
renderValue: renderValue,
|
|
431
|
+
needle: needle
|
|
432
|
+
}, index))
|
|
433
|
+
}), renderFooter != null ? /*#__PURE__*/jsx("footer", {
|
|
434
|
+
className: "np-select-input-footer",
|
|
435
|
+
children: /*#__PURE__*/jsx("div", {
|
|
436
|
+
role: "none",
|
|
437
|
+
onKeyDown: event => {
|
|
438
|
+
// Prevent interfering with Headless UI
|
|
439
|
+
if (event.key !== 'Escape') {
|
|
440
|
+
event.stopPropagation();
|
|
441
|
+
}
|
|
442
|
+
},
|
|
443
|
+
children: renderFooter({
|
|
444
|
+
resultsEmpty,
|
|
445
|
+
queryNormalized: needle
|
|
446
|
+
})
|
|
447
|
+
})
|
|
448
|
+
}) : null]
|
|
449
|
+
})]
|
|
450
|
+
});
|
|
451
|
+
}
|
|
452
|
+
function SelectInputItemView({
|
|
453
|
+
item,
|
|
454
|
+
renderValue,
|
|
455
|
+
needle
|
|
456
|
+
}) {
|
|
457
|
+
switch (item.type) {
|
|
458
|
+
case 'option':
|
|
459
|
+
{
|
|
460
|
+
if (item.value != null && (needle == null || filterSelectInputOptionItem(item, needle))) {
|
|
461
|
+
return /*#__PURE__*/jsx(SelectInputOption, {
|
|
462
|
+
value: item.value,
|
|
463
|
+
disabled: item.disabled,
|
|
464
|
+
children: renderValue(item.value, false)
|
|
465
|
+
});
|
|
466
|
+
}
|
|
467
|
+
break;
|
|
468
|
+
}
|
|
469
|
+
case 'group':
|
|
470
|
+
{
|
|
471
|
+
return /*#__PURE__*/jsx(SelectInputGroupItemView, {
|
|
472
|
+
item: item,
|
|
473
|
+
renderValue: renderValue,
|
|
474
|
+
needle: needle
|
|
475
|
+
});
|
|
476
|
+
}
|
|
477
|
+
case 'separator':
|
|
478
|
+
{
|
|
479
|
+
if (needle == null) {
|
|
480
|
+
return /*#__PURE__*/jsx("hr", {
|
|
481
|
+
className: "np-select-input-separator-item"
|
|
482
|
+
});
|
|
483
|
+
}
|
|
484
|
+
break;
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
return null;
|
|
488
|
+
}
|
|
489
|
+
function SelectInputGroupItemView({
|
|
490
|
+
item,
|
|
491
|
+
renderValue,
|
|
492
|
+
needle
|
|
493
|
+
}) {
|
|
494
|
+
const headerId = useId();
|
|
495
|
+
return (
|
|
496
|
+
/*#__PURE__*/
|
|
497
|
+
// An empty container may be rendered when no options match `needle`
|
|
498
|
+
// However, pre-filtering would result in worse performance overall
|
|
499
|
+
jsxs("section", {
|
|
500
|
+
role: "group",
|
|
501
|
+
"aria-labelledby": headerId,
|
|
502
|
+
className: classNames(needle === null && 'np-select-input-group-item--without-needle'),
|
|
503
|
+
children: [needle == null ? /*#__PURE__*/jsx("header", {
|
|
504
|
+
id: headerId,
|
|
505
|
+
role: "none",
|
|
506
|
+
className: "np-select-input-group-item-header np-text-title-group",
|
|
507
|
+
children: item.label
|
|
508
|
+
}) : null, item.options.map((option, index) => /*#__PURE__*/jsx(SelectInputItemView
|
|
509
|
+
// eslint-disable-next-line react/no-array-index-key
|
|
510
|
+
, {
|
|
511
|
+
item: option,
|
|
512
|
+
renderValue: renderValue,
|
|
513
|
+
needle: needle
|
|
514
|
+
}, index))]
|
|
515
|
+
})
|
|
516
|
+
);
|
|
517
|
+
}
|
|
518
|
+
function SelectInputOption({
|
|
519
|
+
value,
|
|
520
|
+
disabled,
|
|
521
|
+
children
|
|
522
|
+
}) {
|
|
523
|
+
return /*#__PURE__*/jsx(Listbox.Option, {
|
|
524
|
+
as: "div",
|
|
525
|
+
value: value,
|
|
526
|
+
disabled: disabled,
|
|
527
|
+
className: ({
|
|
528
|
+
active,
|
|
529
|
+
disabled: uiDisabled
|
|
530
|
+
}) => classNames('np-select-input-option-container np-text-body-large', active && 'np-select-input-option-container--active', uiDisabled && 'np-select-input-option-container--disabled'),
|
|
531
|
+
children: ({
|
|
532
|
+
selected
|
|
533
|
+
}) => /*#__PURE__*/jsxs(Fragment, {
|
|
534
|
+
children: [/*#__PURE__*/jsx("div", {
|
|
535
|
+
className: "np-select-input-option",
|
|
536
|
+
children: children
|
|
537
|
+
}), /*#__PURE__*/jsx(Check, {
|
|
538
|
+
size: 16,
|
|
539
|
+
className: classNames('np-select-input-option-check', !selected && 'np-select-input-option-check--not-selected')
|
|
540
|
+
})]
|
|
541
|
+
})
|
|
542
|
+
});
|
|
543
|
+
}
|
|
544
|
+
function SelectInputOptionContent({
|
|
545
|
+
title,
|
|
546
|
+
note,
|
|
547
|
+
description,
|
|
548
|
+
icon
|
|
549
|
+
}) {
|
|
550
|
+
const withinTrigger = useContext(SelectInputOptionContentWithinTriggerContext);
|
|
551
|
+
return /*#__PURE__*/jsxs("div", {
|
|
552
|
+
className: classNames('np-select-input-option-content-container', (note || description) && 'np-text-body-large'),
|
|
553
|
+
children: [icon ? /*#__PURE__*/jsx("div", {
|
|
554
|
+
className: classNames('np-select-input-option-content-icon', !withinTrigger && 'np-select-input-option-content-icon--not-within-trigger'),
|
|
555
|
+
children: icon
|
|
556
|
+
}) : null, /*#__PURE__*/jsxs("div", {
|
|
557
|
+
className: "np-select-input-option-content-text",
|
|
558
|
+
children: [/*#__PURE__*/jsxs("div", {
|
|
559
|
+
className: classNames('np-select-input-option-content-text-line-1', withinTrigger && 'np-select-input-option-content-text-within-trigger'),
|
|
560
|
+
children: [/*#__PURE__*/jsx("h4", {
|
|
561
|
+
className: "np-select-input-option-content-text-primary d-inline",
|
|
562
|
+
children: title
|
|
563
|
+
}), note ? /*#__PURE__*/jsx("span", {
|
|
564
|
+
className: "np-select-input-option-content-text-secondary np-text-body-default",
|
|
565
|
+
children: note
|
|
566
|
+
}) : null]
|
|
567
|
+
}), description ? /*#__PURE__*/jsx("div", {
|
|
568
|
+
className: classNames('np-select-input-option-content-text-secondary np-text-body-default', withinTrigger && 'np-select-input-option-content-text-within-trigger'),
|
|
569
|
+
children: description
|
|
570
|
+
}) : null]
|
|
571
|
+
})]
|
|
572
|
+
});
|
|
573
|
+
}
|
|
574
|
+
|
|
575
|
+
export { SelectInput, SelectInputOptionContent, SelectInputTriggerButton };
|
|
576
|
+
//# sourceMappingURL=SelectInput.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectInput.mjs","sources":["../../src/inputs/SelectInput.tsx"],"sourcesContent":["import { Listbox as ListboxBase } from '@headlessui/react';\nimport { Check, ChevronDown, Cross, CrossCircle } from '@transferwise/icons';\nimport classNames from 'classnames';\nimport mergeProps from 'merge-props';\nimport {\n createContext,\n forwardRef,\n useContext,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useIntl } from 'react-intl';\n\nimport { useEffectEvent } from '../common/hooks/useEffectEvent';\nimport { useScreenSize } from '../common/hooks/useScreenSize';\nimport { PolymorphicWithOverrides } from '../common/polymorphicWithOverrides/PolymorphicWithOverrides';\nimport { Breakpoint } from '../common/propsValues/breakpoint';\nimport dateTriggerMessages from '../dateLookup/dateTrigger/DateTrigger.messages';\nimport { Merge } from '../utils';\n\nimport { BottomSheet } from './_BottomSheet';\nimport { ButtonInput } from './_ButtonInput';\nimport { Popover } from './_Popover';\nimport { useInputAttributes, WithInputAttributesProps } from './contexts';\nimport { InputGroup } from './InputGroup';\nimport { SearchInput } from './SearchInput';\nimport messages from './SelectInput.messages';\n\nfunction searchableString(value: string) {\n return value.trim().replace(/\\s+/gu, ' ').normalize('NFKC').toLowerCase();\n}\n\nfunction inferSearchableStrings(value: unknown) {\n if (typeof value === 'string') {\n return [searchableString(value)];\n }\n\n if (typeof value === 'object' && value != null) {\n return Object.values(value)\n .filter((innerValue): innerValue is string => typeof innerValue === 'string')\n .map((innerValue) => searchableString(innerValue));\n }\n\n return [];\n}\n\nconst SelectInputTriggerButtonPropsContext = createContext<{\n ref?: React.ForwardedRef<HTMLButtonElement | null>;\n id?: string;\n onClick?: (event: React.MouseEvent) => void;\n onKeyDown?: (event: React.KeyboardEvent) => void;\n [key: string]: unknown;\n}>({});\nconst SelectInputOptionContentWithinTriggerContext = createContext(false);\n\nexport interface SelectInputOptionItem<T = string> {\n type: 'option';\n value: T;\n filterMatchers?: readonly string[];\n disabled?: boolean;\n}\n\nexport interface SelectInputGroupItem<T = string> {\n type: 'group';\n label: string;\n options: readonly SelectInputOptionItem<T>[];\n}\n\nexport interface SelectInputSeparatorItem {\n type: 'separator';\n}\n\nexport type SelectInputItem<T = string> =\n | SelectInputOptionItem<T>\n | SelectInputGroupItem<T>\n | SelectInputSeparatorItem;\n\nfunction dedupeSelectInputOptionItem<T>(\n item: SelectInputOptionItem<T>,\n existingValues: Set<T>,\n): SelectInputOptionItem<T | undefined> {\n if (!existingValues.has(item.value)) {\n existingValues.add(item.value);\n return item;\n }\n return { ...item, value: undefined };\n}\n\nfunction dedupeSelectInputItems<T>(\n items: readonly SelectInputItem<T>[],\n): SelectInputItem<T | undefined>[] {\n const existingValues = new Set<T>();\n return items.map((item) => {\n switch (item.type) {\n case 'option': {\n return dedupeSelectInputOptionItem(item, existingValues);\n }\n case 'group': {\n return {\n ...item,\n options: item.options.map((option) =>\n dedupeSelectInputOptionItem(option, existingValues),\n ),\n };\n }\n default:\n }\n return item;\n });\n}\n\nfunction filterSelectInputOptionItem<T>(item: SelectInputOptionItem<T>, needle: string) {\n return inferSearchableStrings(item.filterMatchers ?? item.value).some((haystack) =>\n haystack.includes(needle),\n );\n}\n\nfunction filterSelectInputItems<T>(items: readonly SelectInputItem<T>[], needle: string) {\n return items.filter((item) => {\n switch (item.type) {\n case 'option': {\n return filterSelectInputOptionItem(item, needle);\n }\n case 'group': {\n return item.options.some((option) => filterSelectInputOptionItem(option, needle));\n }\n default:\n }\n return false;\n });\n}\n\nexport interface SelectInputProps<T = string, M extends boolean = false> {\n id?: string;\n name?: string;\n multiple?: M;\n placeholder?: string;\n items: readonly SelectInputItem<NonNullable<T>>[];\n defaultValue?: M extends true ? readonly T[] : T;\n value?: M extends true ? readonly T[] : T;\n compareValues?:\n | (keyof NonNullable<T> & string)\n | ((a: T | undefined, b: T | undefined) => boolean);\n renderValue?: (value: NonNullable<T>, withinTrigger: boolean) => React.ReactNode;\n renderFooter?: (args: {\n resultsEmpty: boolean;\n queryNormalized: string | null | undefined;\n }) => React.ReactNode;\n renderTrigger?: (args: {\n content: React.ReactNode;\n placeholderShown: boolean;\n clear: (() => void) | undefined;\n disabled: boolean;\n size: 'sm' | 'md' | 'lg';\n className: string | undefined;\n }) => React.ReactNode;\n filterable?: boolean;\n filterPlaceholder?: string;\n disabled?: boolean;\n size?: 'sm' | 'md' | 'lg';\n className?: string;\n UNSAFE_triggerButtonProps?: WithInputAttributesProps['inputAttributes'];\n onFilterChange?: (args: { query: string; queryNormalized: string | null }) => void;\n onChange?: (value: M extends true ? T[] : T) => void;\n onClose?: () => void;\n onClear?: () => void;\n}\n\nconst defaultRenderTrigger = (({ content, placeholderShown, clear, disabled, size, className }) => (\n <InputGroup\n addonEnd={{\n content: (\n <span className={classNames('np-select-input-addon-container', disabled && 'disabled')}>\n {clear != null && !placeholderShown ? (\n <>\n <SelectInputClearButton\n onClick={(event) => {\n event.preventDefault();\n clear();\n }}\n />\n <span className=\"np-select-input-addon-separator\" />\n </>\n ) : null}\n\n <span className=\"np-select-input-addon\">\n <ChevronDown size={16} />\n </span>\n </span>\n ),\n initialContentWidth: 24 + 4,\n padding: 'sm',\n }}\n disabled={disabled}\n className={className}\n >\n <SelectInputTriggerButton as={ButtonInput} size={size}>\n <span\n className={classNames(\n 'np-select-input-content',\n placeholderShown && 'np-select-input-placeholder',\n )}\n >\n {content}\n </span>\n </SelectInputTriggerButton>\n </InputGroup>\n)) satisfies SelectInputProps['renderTrigger'];\n\ninterface SelectInputClearButtonProps\n extends Pick<React.ComponentPropsWithoutRef<'button'>, 'className' | 'onClick'> {}\n\nfunction SelectInputClearButton({ className, onClick }: SelectInputClearButtonProps) {\n const intl = useIntl();\n\n return (\n <button\n type=\"button\"\n aria-label={intl.formatMessage(dateTriggerMessages.ariaLabel)}\n className={classNames(className, 'np-select-input-addon np-select-input-addon--interactive')}\n onClick={onClick}\n >\n <Cross size={16} />\n </button>\n );\n}\n\nconst noop = () => {};\n\nexport function SelectInput<T = string, M extends boolean = false>({\n id: idProp,\n name,\n multiple,\n placeholder,\n items,\n defaultValue,\n value: controlledValue,\n compareValues,\n renderValue = String,\n renderFooter,\n renderTrigger = defaultRenderTrigger,\n filterable,\n filterPlaceholder,\n disabled,\n size = 'md',\n className,\n UNSAFE_triggerButtonProps,\n onFilterChange = noop,\n onChange,\n onClose,\n onClear,\n}: SelectInputProps<T, M>) {\n const inputAttributes = useInputAttributes();\n const id = idProp ?? inputAttributes.id;\n\n const [open, setOpen] = useState(false);\n\n const initialized = useRef(false);\n const handleClose = useEffectEvent(onClose ?? (() => {}));\n useEffect(() => {\n if (initialized.current) {\n if (!open) {\n handleClose?.();\n }\n } else {\n initialized.current = true;\n }\n }, [handleClose, open]);\n\n const [filterQuery, _setFilterQuery] = useState('');\n const setFilterQuery = useEffectEvent((query: string) => {\n _setFilterQuery(query);\n onFilterChange({\n query,\n queryNormalized: query ? searchableString(query) : null,\n });\n });\n\n const triggerRef = useRef<HTMLButtonElement | null>(null);\n\n const screenSm = useScreenSize(Breakpoint.SMALL);\n const OptionsOverlay = screenSm ? Popover : BottomSheet;\n\n const searchInputRef = useRef<HTMLInputElement>(null);\n const listboxRef = useRef<HTMLDivElement>(null);\n const controllerRef = filterable ? searchInputRef : listboxRef;\n\n return (\n <ListboxBase\n name={name}\n multiple={multiple}\n defaultValue={defaultValue}\n value={controlledValue}\n // TODO: Remove assertion when upgrading TypeScript to v5\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n by={compareValues as any}\n disabled={disabled}\n onChange={\n ((value) => {\n if (!multiple) {\n setOpen(false);\n }\n onChange?.(value);\n }) satisfies SelectInputProps<T, M>['onChange']\n }\n >\n {({ disabled: uiDisabled, value }) => {\n const placeholderShown =\n multiple && Array.isArray(value) ? value.length === 0 : value == null;\n return (\n <OptionsOverlay\n placement=\"bottom-start\"\n open={open}\n renderTrigger={({ ref, getInteractionProps }) => (\n <SelectInputTriggerButtonPropsContext.Provider\n // eslint-disable-next-line react/jsx-no-constructed-context-values\n value={{\n ref: (node) => {\n ref(node);\n triggerRef.current = node;\n },\n ...inputAttributes,\n ...UNSAFE_triggerButtonProps,\n id,\n ...mergeProps(\n {\n onClick: () => {\n setOpen((prev) => !prev);\n },\n onKeyDown: (event: React.KeyboardEvent) => {\n if (\n event.key === ' ' ||\n event.key === 'Enter' ||\n event.key === 'ArrowDown' ||\n event.key === 'ArrowUp'\n ) {\n setOpen((prev) => !prev);\n }\n },\n },\n getInteractionProps(),\n ),\n }}\n >\n {renderTrigger({\n content: !placeholderShown ? (\n <SelectInputOptionContentWithinTriggerContext.Provider value>\n {multiple && Array.isArray(value)\n ? value\n .map((option: NonNullable<T>) => renderValue(option, true))\n .filter((node) => node != null)\n .join(', ')\n : renderValue(value as NonNullable<T>, true)}\n </SelectInputOptionContentWithinTriggerContext.Provider>\n ) : (\n placeholder\n ),\n placeholderShown,\n clear:\n onClear != null\n ? () => {\n onClear();\n triggerRef.current?.focus({ preventScroll: true });\n }\n : undefined,\n disabled: uiDisabled,\n size,\n className,\n })}\n </SelectInputTriggerButtonPropsContext.Provider>\n )}\n initialFocusRef={controllerRef}\n size={filterable ? 'lg' : 'md'}\n padding=\"none\"\n onClose={() => {\n setOpen(false);\n }}\n onCloseEnd={() => {\n if (filterQuery !== '') {\n setFilterQuery('');\n }\n }}\n >\n <SelectInputOptions\n items={items}\n renderValue={renderValue}\n renderFooter={renderFooter}\n filterable={filterable}\n filterPlaceholder={filterPlaceholder}\n searchInputRef={searchInputRef}\n listboxRef={listboxRef}\n filterQuery={filterQuery}\n onFilterChange={setFilterQuery}\n />\n </OptionsOverlay>\n );\n }}\n </ListboxBase>\n );\n}\n\ntype SelectInputTriggerButtonElementType = 'button' | React.ComponentType;\n\nexport type SelectInputTriggerButtonProps<\n T extends SelectInputTriggerButtonElementType = 'button',\n> = Merge<React.ComponentPropsWithoutRef<T>, { as?: T }>;\n\nexport function SelectInputTriggerButton<T extends SelectInputTriggerButtonElementType = 'button'>({\n as = 'button' as T,\n ...restProps\n}: SelectInputTriggerButtonProps<T>) {\n const { ref, onClick, onKeyDown, ...interactionProps } = useContext(\n SelectInputTriggerButtonPropsContext,\n );\n\n return (\n <ListboxBase.Button\n ref={ref}\n as={PolymorphicWithOverrides}\n __overrides={{ as, ...interactionProps }}\n {...mergeProps({ onClick, onKeyDown }, restProps)}\n />\n );\n}\n\ninterface SelectInputOptionsContainerProps extends React.ComponentPropsWithRef<'div'> {\n onAriaActiveDescendantChange: (value: React.AriaAttributes['aria-activedescendant']) => void;\n}\n\nconst SelectInputOptionsContainer = forwardRef(function SelectInputOptionsContainer(\n {\n 'aria-orientation': ariaOrientation,\n 'aria-activedescendant': ariaActiveDescendant,\n role,\n tabIndex,\n onAriaActiveDescendantChange,\n onKeyDown,\n ...restProps\n }: SelectInputOptionsContainerProps,\n ref: React.ForwardedRef<HTMLDivElement | null>,\n) {\n const handleAriaActiveDescendantChange = useEffectEvent(onAriaActiveDescendantChange);\n useEffect(() => {\n handleAriaActiveDescendantChange(ariaActiveDescendant);\n }, [ariaActiveDescendant, handleAriaActiveDescendantChange]);\n\n return (\n <div\n ref={ref}\n role=\"none\"\n onKeyDown={(event) => {\n // Prevent confirmation close without an active item\n if (event.key === 'Enter' && ariaActiveDescendant == null) {\n return;\n }\n\n // Prevent absorbing actions early\n if (event.key === 'Escape' || event.key === 'Tab') {\n onKeyDown?.({\n ...event,\n preventDefault: () => {},\n stopPropagation: () => {},\n });\n return;\n }\n\n onKeyDown?.(event);\n }}\n {...restProps}\n />\n );\n});\n\ninterface SelectInputOptionsProps<T = string>\n extends Pick<\n SelectInputProps<T>,\n 'items' | 'renderValue' | 'renderFooter' | 'filterable' | 'filterPlaceholder'\n > {\n searchInputRef: React.MutableRefObject<HTMLInputElement | null>;\n listboxRef: React.MutableRefObject<HTMLDivElement | null>;\n filterQuery: string;\n onFilterChange: (query: string) => void;\n}\n\nfunction SelectInputOptions<T = string>({\n items,\n renderValue = String,\n renderFooter,\n filterable = false,\n filterPlaceholder,\n searchInputRef,\n listboxRef,\n filterQuery,\n onFilterChange,\n}: SelectInputOptionsProps<T>) {\n const intl = useIntl();\n\n const controllerRef = filterable ? searchInputRef : listboxRef;\n\n const needle = useMemo(() => {\n if (filterable) {\n return filterQuery ? searchableString(filterQuery) : null;\n }\n return undefined;\n }, [filterQuery, filterable]);\n const resultsEmpty = needle != null && filterSelectInputItems(items, needle).length === 0;\n\n const listboxContainerRef = useRef<HTMLDivElement>(null);\n useEffect(() => {\n if (listboxContainerRef.current != null) {\n listboxContainerRef.current.style.setProperty(\n '--initial-height',\n `${listboxContainerRef.current.offsetHeight}px`,\n );\n }\n }, []);\n\n const showStatus = resultsEmpty;\n const statusId = useId();\n const listboxId = useId();\n\n return (\n <ListboxBase.Options\n as={SelectInputOptionsContainer}\n static\n className=\"np-select-input-options-container\"\n onAriaActiveDescendantChange={(value: React.AriaAttributes['aria-activedescendant']) => {\n if (controllerRef.current != null) {\n if (value != null) {\n controllerRef.current.setAttribute('aria-activedescendant', value);\n } else {\n controllerRef.current.removeAttribute('aria-activedescendant');\n if (filterQuery) {\n // Ensure having an active option while filtering\n controllerRef.current.dispatchEvent(\n new KeyboardEvent('keydown', { key: 'Home', bubbles: true }),\n );\n }\n }\n }\n }}\n >\n {filterable ? (\n <div className=\"np-select-input-query-container\">\n <SearchInput\n ref={searchInputRef}\n shape=\"rectangle\"\n placeholder={filterPlaceholder}\n value={filterQuery}\n aria-controls={listboxId}\n aria-describedby={showStatus ? statusId : undefined}\n onKeyDown={(event) => {\n // Prevent interfering with the matcher of Headless UI\n // https://mathiasbynens.be/notes/javascript-unicode#regex\n if (/^.$/u.test(event.key)) {\n event.stopPropagation();\n }\n }}\n onChange={(event) => {\n onFilterChange(event.currentTarget.value);\n }}\n />\n </div>\n ) : null}\n\n <section\n ref={listboxContainerRef}\n tabIndex={-1}\n className={classNames(\n 'np-select-input-listbox-container',\n items.some((item) => item.type === 'group') &&\n 'np-select-input-listbox-container--has-group',\n )}\n >\n {resultsEmpty ? (\n <div id={statusId} className=\"np-select-input-options-status\">\n <CrossCircle size={16} className=\"np-select-input-options-status-icon\" />\n {intl.formatMessage(messages.noResultsFound)}\n </div>\n ) : null}\n\n <div\n ref={listboxRef}\n id={listboxId}\n role=\"listbox\"\n aria-orientation=\"vertical\"\n tabIndex={0}\n className=\"np-select-input-listbox\"\n >\n {(needle != null ? dedupeSelectInputItems(items) : items).map((item, index) => (\n <SelectInputItemView\n // eslint-disable-next-line react/no-array-index-key\n key={index}\n item={item}\n renderValue={renderValue}\n needle={needle}\n />\n ))}\n </div>\n\n {renderFooter != null ? (\n <footer className=\"np-select-input-footer\">\n <div\n role=\"none\"\n onKeyDown={(event) => {\n // Prevent interfering with Headless UI\n if (event.key !== 'Escape') {\n event.stopPropagation();\n }\n }}\n >\n {renderFooter({\n resultsEmpty,\n queryNormalized: needle,\n })}\n </div>\n </footer>\n ) : null}\n </section>\n </ListboxBase.Options>\n );\n}\n\ninterface SelectInputItemViewProps<\n T = string,\n I extends SelectInputItem<T | undefined> = SelectInputItem<T | undefined>,\n> extends Required<Pick<SelectInputProps<T>, 'renderValue'>> {\n item: I;\n needle: string | null | undefined;\n}\n\nfunction SelectInputItemView<T = string>({\n item,\n renderValue,\n needle,\n}: SelectInputItemViewProps<T>) {\n switch (item.type) {\n case 'option': {\n if (item.value != null && (needle == null || filterSelectInputOptionItem(item, needle))) {\n return (\n <SelectInputOption value={item.value} disabled={item.disabled}>\n {renderValue(item.value, false)}\n </SelectInputOption>\n );\n }\n break;\n }\n case 'group': {\n return <SelectInputGroupItemView item={item} renderValue={renderValue} needle={needle} />;\n }\n case 'separator': {\n if (needle == null) {\n return <hr className=\"np-select-input-separator-item\" />;\n }\n break;\n }\n }\n return null;\n}\n\ninterface SelectInputGroupItemViewProps<T = string>\n extends SelectInputItemViewProps<T, SelectInputGroupItem<T | undefined>> {}\n\nfunction SelectInputGroupItemView<T = string>({\n item,\n renderValue,\n needle,\n}: SelectInputGroupItemViewProps<T>) {\n const headerId = useId();\n\n return (\n // An empty container may be rendered when no options match `needle`\n // However, pre-filtering would result in worse performance overall\n <section\n role=\"group\"\n aria-labelledby={headerId}\n className={classNames(needle === null && 'np-select-input-group-item--without-needle')}\n >\n {needle == null ? (\n <header\n id={headerId}\n role=\"none\"\n className=\"np-select-input-group-item-header np-text-title-group\"\n >\n {item.label}\n </header>\n ) : null}\n {item.options.map((option, index) => (\n <SelectInputItemView\n // eslint-disable-next-line react/no-array-index-key\n key={index}\n item={option}\n renderValue={renderValue}\n needle={needle}\n />\n ))}\n </section>\n );\n}\n\ninterface SelectInputOptionProps<T = string> {\n value: T;\n disabled?: boolean;\n children?: React.ReactNode;\n}\n\nfunction SelectInputOption<T = string>({ value, disabled, children }: SelectInputOptionProps<T>) {\n return (\n <ListboxBase.Option\n as=\"div\"\n value={value}\n disabled={disabled}\n className={({ active, disabled: uiDisabled }) =>\n classNames(\n 'np-select-input-option-container np-text-body-large',\n active && 'np-select-input-option-container--active',\n uiDisabled && 'np-select-input-option-container--disabled',\n )\n }\n >\n {({ selected }) => (\n <>\n <div className=\"np-select-input-option\">{children}</div>\n <Check\n size={16}\n className={classNames(\n 'np-select-input-option-check',\n !selected && 'np-select-input-option-check--not-selected',\n )}\n />\n </>\n )}\n </ListboxBase.Option>\n );\n}\n\nexport interface SelectInputOptionContentProps {\n title: string;\n note?: string;\n description?: string;\n icon?: React.ReactNode;\n}\n\nexport function SelectInputOptionContent({\n title,\n note,\n description,\n icon,\n}: SelectInputOptionContentProps) {\n const withinTrigger = useContext(SelectInputOptionContentWithinTriggerContext);\n\n return (\n <div\n className={classNames(\n 'np-select-input-option-content-container',\n (note || description) && 'np-text-body-large',\n )}\n >\n {icon ? (\n <div\n className={classNames(\n 'np-select-input-option-content-icon',\n !withinTrigger && 'np-select-input-option-content-icon--not-within-trigger',\n )}\n >\n {icon}\n </div>\n ) : null}\n\n <div className=\"np-select-input-option-content-text\">\n <div\n className={classNames(\n 'np-select-input-option-content-text-line-1',\n withinTrigger && 'np-select-input-option-content-text-within-trigger',\n )}\n >\n <h4 className=\"np-select-input-option-content-text-primary d-inline\">{title}</h4>\n {note ? (\n <span className=\"np-select-input-option-content-text-secondary np-text-body-default\">\n {note}\n </span>\n ) : null}\n </div>\n\n {description ? (\n <div\n className={classNames(\n 'np-select-input-option-content-text-secondary np-text-body-default',\n withinTrigger && 'np-select-input-option-content-text-within-trigger',\n )}\n >\n {description}\n </div>\n ) : null}\n </div>\n </div>\n );\n}\n"],"names":["searchableString","value","trim","replace","normalize","toLowerCase","inferSearchableStrings","Object","values","filter","innerValue","map","SelectInputTriggerButtonPropsContext","createContext","SelectInputOptionContentWithinTriggerContext","dedupeSelectInputOptionItem","item","existingValues","has","add","undefined","dedupeSelectInputItems","items","Set","type","options","option","filterSelectInputOptionItem","needle","filterMatchers","some","haystack","includes","filterSelectInputItems","defaultRenderTrigger","content","placeholderShown","clear","disabled","size","className","_jsx","InputGroup","addonEnd","_jsxs","classNames","children","_Fragment","SelectInputClearButton","onClick","event","preventDefault","ChevronDown","initialContentWidth","padding","SelectInputTriggerButton","as","ButtonInput","intl","useIntl","formatMessage","dateTriggerMessages","ariaLabel","Cross","noop","SelectInput","id","idProp","name","multiple","placeholder","defaultValue","controlledValue","compareValues","renderValue","String","renderFooter","renderTrigger","filterable","filterPlaceholder","UNSAFE_triggerButtonProps","onFilterChange","onChange","onClose","onClear","inputAttributes","useInputAttributes","open","setOpen","useState","initialized","useRef","handleClose","useEffectEvent","useEffect","current","filterQuery","_setFilterQuery","setFilterQuery","query","queryNormalized","triggerRef","screenSm","useScreenSize","Breakpoint","SMALL","OptionsOverlay","Popover","BottomSheet","searchInputRef","listboxRef","controllerRef","ListboxBase","by","uiDisabled","Array","isArray","length","placement","ref","getInteractionProps","Provider","node","mergeProps","prev","onKeyDown","key","join","focus","preventScroll","initialFocusRef","onCloseEnd","SelectInputOptions","restProps","interactionProps","useContext","Button","PolymorphicWithOverrides","__overrides","SelectInputOptionsContainer","forwardRef","ariaOrientation","ariaActiveDescendant","role","tabIndex","onAriaActiveDescendantChange","handleAriaActiveDescendantChange","stopPropagation","useMemo","resultsEmpty","listboxContainerRef","style","setProperty","offsetHeight","showStatus","statusId","useId","listboxId","Options","static","setAttribute","removeAttribute","dispatchEvent","KeyboardEvent","bubbles","SearchInput","shape","test","currentTarget","CrossCircle","messages","noResultsFound","index","SelectInputItemView","SelectInputOption","SelectInputGroupItemView","headerId","label","Option","active","selected","Check","SelectInputOptionContent","title","note","description","icon","withinTrigger"],"mappings":"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"}
|