@homebound/beam 2.378.1 → 2.379.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/dist/chunk-ZQBDHF22.js +95 -0
- package/dist/chunk-ZQBDHF22.js.map +1 -0
- package/dist/index.cjs +17756 -0
- package/dist/index.cjs.map +1 -0
- package/dist/{components/internal/DatePicker/DatePicker.css → index.css} +14 -72
- package/dist/index.css.map +1 -0
- package/dist/index.d.cts +8051 -0
- package/dist/index.d.ts +8051 -10
- package/dist/index.js +17429 -25
- package/dist/index.js.map +1 -0
- package/dist/utils/rtlUtils.cjs +226 -0
- package/dist/utils/rtlUtils.cjs.map +1 -0
- package/dist/utils/rtlUtils.d.cts +34 -0
- package/dist/utils/rtlUtils.d.ts +34 -0
- package/dist/utils/rtlUtils.js +188 -0
- package/dist/utils/rtlUtils.js.map +1 -0
- package/package.json +54 -40
- package/dist/Css.d.ts +0 -4407
- package/dist/Css.d.ts.map +0 -1
- package/dist/Css.js +0 -3988
- package/dist/components/Accordion.d.ts +0 -32
- package/dist/components/Accordion.d.ts.map +0 -1
- package/dist/components/Accordion.js +0 -69
- package/dist/components/AccordionList.d.ts +0 -12
- package/dist/components/AccordionList.d.ts.map +0 -1
- package/dist/components/AccordionList.js +0 -14
- package/dist/components/AutoSaveIndicator.d.ts +0 -7
- package/dist/components/AutoSaveIndicator.d.ts.map +0 -1
- package/dist/components/AutoSaveIndicator.js +0 -45
- package/dist/components/AutoSaveStatus/AutoSaveStatusProvider.d.ts +0 -25
- package/dist/components/AutoSaveStatus/AutoSaveStatusProvider.d.ts.map +0 -1
- package/dist/components/AutoSaveStatus/AutoSaveStatusProvider.js +0 -89
- package/dist/components/AutoSaveStatus/index.d.ts +0 -3
- package/dist/components/AutoSaveStatus/index.d.ts.map +0 -1
- package/dist/components/AutoSaveStatus/index.js +0 -9
- package/dist/components/AutoSaveStatus/useAutoSaveStatus.d.ts +0 -12
- package/dist/components/AutoSaveStatus/useAutoSaveStatus.d.ts.map +0 -1
- package/dist/components/AutoSaveStatus/useAutoSaveStatus.js +0 -18
- package/dist/components/Avatar/Avatar.d.ts +0 -10
- package/dist/components/Avatar/Avatar.d.ts.map +0 -1
- package/dist/components/Avatar/Avatar.js +0 -50
- package/dist/components/Avatar/AvatarButton.d.ts +0 -32
- package/dist/components/Avatar/AvatarButton.d.ts.map +0 -1
- package/dist/components/Avatar/AvatarButton.js +0 -57
- package/dist/components/Avatar/AvatarGroup.d.ts +0 -10
- package/dist/components/Avatar/AvatarGroup.d.ts.map +0 -1
- package/dist/components/Avatar/AvatarGroup.js +0 -24
- package/dist/components/Avatar/index.d.ts +0 -4
- package/dist/components/Avatar/index.d.ts.map +0 -1
- package/dist/components/Avatar/index.js +0 -19
- package/dist/components/Banner.d.ts +0 -10
- package/dist/components/Banner.d.ts.map +0 -1
- package/dist/components/Banner.js +0 -27
- package/dist/components/BeamContext.d.ts +0 -32
- package/dist/components/BeamContext.d.ts.map +0 -1
- package/dist/components/BeamContext.js +0 -86
- package/dist/components/Button.d.ts +0 -26
- package/dist/components/Button.d.ts.map +0 -1
- package/dist/components/Button.js +0 -148
- package/dist/components/ButtonDatePicker.d.ts +0 -8
- package/dist/components/ButtonDatePicker.d.ts.map +0 -1
- package/dist/components/ButtonDatePicker.js +0 -29
- package/dist/components/ButtonGroup.d.ts +0 -25
- package/dist/components/ButtonGroup.d.ts.map +0 -1
- package/dist/components/ButtonGroup.js +0 -66
- package/dist/components/ButtonMenu.d.ts +0 -42
- package/dist/components/ButtonMenu.d.ts.map +0 -1
- package/dist/components/ButtonMenu.js +0 -33
- package/dist/components/ButtonModal.d.ts +0 -12
- package/dist/components/ButtonModal.d.ts.map +0 -1
- package/dist/components/ButtonModal.js +0 -25
- package/dist/components/Chip.d.ts +0 -16
- package/dist/components/Chip.d.ts.map +0 -1
- package/dist/components/Chip.js +0 -46
- package/dist/components/Chips.d.ts +0 -16
- package/dist/components/Chips.d.ts.map +0 -1
- package/dist/components/Chips.js +0 -20
- package/dist/components/Copy.d.ts +0 -5
- package/dist/components/Copy.d.ts.map +0 -1
- package/dist/components/Copy.js +0 -11
- package/dist/components/CssReset.d.ts +0 -6
- package/dist/components/CssReset.d.ts.map +0 -1
- package/dist/components/CssReset.js +0 -764
- package/dist/components/DnDGrid/DnDGrid.d.ts +0 -16
- package/dist/components/DnDGrid/DnDGrid.d.ts.map +0 -1
- package/dist/components/DnDGrid/DnDGrid.js +0 -234
- package/dist/components/DnDGrid/DnDGridContext.d.ts +0 -9
- package/dist/components/DnDGrid/DnDGridContext.d.ts.map +0 -1
- package/dist/components/DnDGrid/DnDGridContext.js +0 -12
- package/dist/components/DnDGrid/DnDGridItemHandle.d.ts +0 -11
- package/dist/components/DnDGrid/DnDGridItemHandle.d.ts.map +0 -1
- package/dist/components/DnDGrid/DnDGridItemHandle.js +0 -21
- package/dist/components/DnDGrid/index.d.ts +0 -7
- package/dist/components/DnDGrid/index.d.ts.map +0 -1
- package/dist/components/DnDGrid/index.js +0 -9
- package/dist/components/DnDGrid/useDnDGridItem.d.ts +0 -18
- package/dist/components/DnDGrid/useDnDGridItem.d.ts.map +0 -1
- package/dist/components/DnDGrid/useDnDGridItem.js +0 -33
- package/dist/components/Filters/BaseFilter.d.ts +0 -21
- package/dist/components/Filters/BaseFilter.d.ts.map +0 -1
- package/dist/components/Filters/BaseFilter.js +0 -31
- package/dist/components/Filters/BooleanFilter.d.ts +0 -9
- package/dist/components/Filters/BooleanFilter.d.ts.map +0 -1
- package/dist/components/Filters/BooleanFilter.js +0 -27
- package/dist/components/Filters/CheckboxFilter.d.ts +0 -20
- package/dist/components/Filters/CheckboxFilter.d.ts.map +0 -1
- package/dist/components/Filters/CheckboxFilter.js +0 -35
- package/dist/components/Filters/DateFilter.d.ts +0 -16
- package/dist/components/Filters/DateFilter.d.ts.map +0 -1
- package/dist/components/Filters/DateFilter.js +0 -26
- package/dist/components/Filters/DateRangeFilter.d.ts +0 -16
- package/dist/components/Filters/DateRangeFilter.d.ts.map +0 -1
- package/dist/components/Filters/DateRangeFilter.js +0 -21
- package/dist/components/Filters/FilterModal.d.ts +0 -14
- package/dist/components/Filters/FilterModal.d.ts.map +0 -1
- package/dist/components/Filters/FilterModal.js +0 -28
- package/dist/components/Filters/Filters.d.ts +0 -29
- package/dist/components/Filters/Filters.d.ts.map +0 -1
- package/dist/components/Filters/Filters.js +0 -43
- package/dist/components/Filters/MultiFilter.d.ts +0 -10
- package/dist/components/Filters/MultiFilter.d.ts.map +0 -1
- package/dist/components/Filters/MultiFilter.js +0 -40
- package/dist/components/Filters/NumberRangeFilter.d.ts +0 -14
- package/dist/components/Filters/NumberRangeFilter.d.ts.map +0 -1
- package/dist/components/Filters/NumberRangeFilter.js +0 -35
- package/dist/components/Filters/SingleFilter.d.ts +0 -10
- package/dist/components/Filters/SingleFilter.d.ts.map +0 -1
- package/dist/components/Filters/SingleFilter.js +0 -20
- package/dist/components/Filters/ToggleFilter.d.ts +0 -20
- package/dist/components/Filters/ToggleFilter.d.ts.map +0 -1
- package/dist/components/Filters/ToggleFilter.js +0 -35
- package/dist/components/Filters/TreeFilter.d.ts +0 -15
- package/dist/components/Filters/TreeFilter.d.ts.map +0 -1
- package/dist/components/Filters/TreeFilter.js +0 -18
- package/dist/components/Filters/index.d.ts +0 -17
- package/dist/components/Filters/index.d.ts.map +0 -1
- package/dist/components/Filters/index.js +0 -41
- package/dist/components/Filters/testDomain.d.ts +0 -81
- package/dist/components/Filters/testDomain.d.ts.map +0 -1
- package/dist/components/Filters/testDomain.js +0 -66
- package/dist/components/Filters/types.d.ts +0 -26
- package/dist/components/Filters/types.d.ts.map +0 -1
- package/dist/components/Filters/types.js +0 -2
- package/dist/components/Filters/utils.d.ts +0 -3
- package/dist/components/Filters/utils.d.ts.map +0 -1
- package/dist/components/Filters/utils.js +0 -14
- package/dist/components/Grid/ResponsiveGrid.d.ts +0 -7
- package/dist/components/Grid/ResponsiveGrid.d.ts.map +0 -1
- package/dist/components/Grid/ResponsiveGrid.js +0 -11
- package/dist/components/Grid/ResponsiveGridItem.d.ts +0 -8
- package/dist/components/Grid/ResponsiveGridItem.d.ts.map +0 -1
- package/dist/components/Grid/ResponsiveGridItem.js +0 -11
- package/dist/components/Grid/index.d.ts +0 -8
- package/dist/components/Grid/index.d.ts.map +0 -1
- package/dist/components/Grid/index.js +0 -11
- package/dist/components/Grid/useResponsiveGrid.d.ts +0 -14
- package/dist/components/Grid/useResponsiveGrid.d.ts.map +0 -1
- package/dist/components/Grid/useResponsiveGrid.js +0 -47
- package/dist/components/Grid/useResponsiveGridItem.d.ts +0 -8
- package/dist/components/Grid/useResponsiveGridItem.d.ts.map +0 -1
- package/dist/components/Grid/useResponsiveGridItem.js +0 -7
- package/dist/components/Grid/utils.d.ts +0 -2
- package/dist/components/Grid/utils.d.ts.map +0 -1
- package/dist/components/Grid/utils.js +0 -4
- package/dist/components/HbLoadingSpinner.base64.d.ts +0 -3
- package/dist/components/HbLoadingSpinner.base64.d.ts.map +0 -1
- package/dist/components/HbLoadingSpinner.base64.js +0 -3
- package/dist/components/HbLoadingSpinner.d.ts +0 -27
- package/dist/components/HbLoadingSpinner.d.ts.map +0 -1
- package/dist/components/HbLoadingSpinner.js +0 -74
- package/dist/components/HelperText.d.ts +0 -9
- package/dist/components/HelperText.d.ts.map +0 -1
- package/dist/components/HelperText.js +0 -12
- package/dist/components/Icon.d.ts +0 -181
- package/dist/components/Icon.d.ts.map +0 -1
- package/dist/components/Icon.js +0 -189
- package/dist/components/IconButton.d.ts +0 -32
- package/dist/components/IconButton.d.ts.map +0 -1
- package/dist/components/IconButton.js +0 -65
- package/dist/components/Label.d.ts +0 -22
- package/dist/components/Label.d.ts.map +0 -1
- package/dist/components/Label.js +0 -29
- package/dist/components/Layout/FullBleed.d.ts +0 -7
- package/dist/components/Layout/FullBleed.d.ts.map +0 -1
- package/dist/components/Layout/FullBleed.js +0 -15
- package/dist/components/Layout/PreventBrowserScroll.d.ts +0 -4
- package/dist/components/Layout/PreventBrowserScroll.d.ts.map +0 -1
- package/dist/components/Layout/PreventBrowserScroll.js +0 -13
- package/dist/components/Layout/RightPaneLayout/RightPaneContext.d.ts +0 -17
- package/dist/components/Layout/RightPaneLayout/RightPaneContext.d.ts.map +0 -1
- package/dist/components/Layout/RightPaneLayout/RightPaneContext.js +0 -53
- package/dist/components/Layout/RightPaneLayout/RightPaneLayout.d.ts +0 -9
- package/dist/components/Layout/RightPaneLayout/RightPaneLayout.d.ts.map +0 -1
- package/dist/components/Layout/RightPaneLayout/RightPaneLayout.js +0 -29
- package/dist/components/Layout/RightPaneLayout/index.d.ts +0 -4
- package/dist/components/Layout/RightPaneLayout/index.d.ts.map +0 -1
- package/dist/components/Layout/RightPaneLayout/index.js +0 -19
- package/dist/components/Layout/RightPaneLayout/useRightPane.d.ts +0 -9
- package/dist/components/Layout/RightPaneLayout/useRightPane.d.ts.map +0 -1
- package/dist/components/Layout/RightPaneLayout/useRightPane.js +0 -11
- package/dist/components/Layout/ScrollableContent.d.ts +0 -20
- package/dist/components/Layout/ScrollableContent.d.ts.map +0 -1
- package/dist/components/Layout/ScrollableContent.js +0 -37
- package/dist/components/Layout/ScrollableParent.d.ts +0 -47
- package/dist/components/Layout/ScrollableParent.d.ts.map +0 -1
- package/dist/components/Layout/ScrollableParent.js +0 -69
- package/dist/components/Layout/index.d.ts +0 -6
- package/dist/components/Layout/index.d.ts.map +0 -1
- package/dist/components/Layout/index.js +0 -21
- package/dist/components/Loader.d.ts +0 -7
- package/dist/components/Loader.d.ts.map +0 -1
- package/dist/components/Loader.js +0 -27
- package/dist/components/LoadingSkeleton.d.ts +0 -11
- package/dist/components/LoadingSkeleton.d.ts.map +0 -1
- package/dist/components/LoadingSkeleton.js +0 -29
- package/dist/components/MaxLines.d.ts +0 -6
- package/dist/components/MaxLines.d.ts.map +0 -1
- package/dist/components/MaxLines.js +0 -36
- package/dist/components/Modal/Modal.d.ts +0 -57
- package/dist/components/Modal/Modal.d.ts.map +0 -1
- package/dist/components/Modal/Modal.js +0 -122
- package/dist/components/Modal/ModalContext.d.ts +0 -12
- package/dist/components/Modal/ModalContext.d.ts.map +0 -1
- package/dist/components/Modal/ModalContext.js +0 -15
- package/dist/components/Modal/OpenModal.d.ts +0 -30
- package/dist/components/Modal/OpenModal.d.ts.map +0 -1
- package/dist/components/Modal/OpenModal.js +0 -41
- package/dist/components/Modal/TestModalContent.d.ts +0 -14
- package/dist/components/Modal/TestModalContent.d.ts.map +0 -1
- package/dist/components/Modal/TestModalContent.js +0 -60
- package/dist/components/Modal/index.d.ts +0 -5
- package/dist/components/Modal/index.d.ts.map +0 -1
- package/dist/components/Modal/index.js +0 -24
- package/dist/components/Modal/useModal.d.ts +0 -11
- package/dist/components/Modal/useModal.d.ts.map +0 -1
- package/dist/components/Modal/useModal.js +0 -50
- package/dist/components/NavLink.d.ts +0 -32
- package/dist/components/NavLink.d.ts.map +0 -1
- package/dist/components/NavLink.js +0 -62
- package/dist/components/Pagination.d.ts +0 -27
- package/dist/components/Pagination.d.ts.map +0 -1
- package/dist/components/Pagination.js +0 -54
- package/dist/components/PresentationContext.d.ts +0 -44
- package/dist/components/PresentationContext.d.ts.map +0 -1
- package/dist/components/PresentationContext.js +0 -23
- package/dist/components/ScrollShadows.d.ts +0 -14
- package/dist/components/ScrollShadows.d.ts.map +0 -1
- package/dist/components/ScrollShadows.js +0 -57
- package/dist/components/Snackbar/Snackbar.d.ts +0 -11
- package/dist/components/Snackbar/Snackbar.d.ts.map +0 -1
- package/dist/components/Snackbar/Snackbar.js +0 -14
- package/dist/components/Snackbar/SnackbarContext.d.ts +0 -12
- package/dist/components/Snackbar/SnackbarContext.d.ts.map +0 -1
- package/dist/components/Snackbar/SnackbarContext.js +0 -18
- package/dist/components/Snackbar/SnackbarNotice.d.ts +0 -20
- package/dist/components/Snackbar/SnackbarNotice.d.ts.map +0 -1
- package/dist/components/Snackbar/SnackbarNotice.js +0 -24
- package/dist/components/Snackbar/index.d.ts +0 -2
- package/dist/components/Snackbar/index.d.ts.map +0 -1
- package/dist/components/Snackbar/index.js +0 -5
- package/dist/components/Snackbar/useSnackbar.d.ts +0 -22
- package/dist/components/Snackbar/useSnackbar.d.ts.map +0 -1
- package/dist/components/Snackbar/useSnackbar.js +0 -61
- package/dist/components/Stepper.d.ts +0 -13
- package/dist/components/Stepper.d.ts.map +0 -1
- package/dist/components/Stepper.js +0 -63
- package/dist/components/SuperDrawer/ConfirmCloseModal.d.ts +0 -9
- package/dist/components/SuperDrawer/ConfirmCloseModal.d.ts.map +0 -1
- package/dist/components/SuperDrawer/ConfirmCloseModal.js +0 -22
- package/dist/components/SuperDrawer/SuperDrawer.d.ts +0 -23
- package/dist/components/SuperDrawer/SuperDrawer.d.ts.map +0 -1
- package/dist/components/SuperDrawer/SuperDrawer.js +0 -76
- package/dist/components/SuperDrawer/SuperDrawerContent.d.ts +0 -22
- package/dist/components/SuperDrawer/SuperDrawerContent.d.ts.map +0 -1
- package/dist/components/SuperDrawer/SuperDrawerContent.js +0 -41
- package/dist/components/SuperDrawer/components/SuperDrawerHeader.d.ts +0 -14
- package/dist/components/SuperDrawer/components/SuperDrawerHeader.d.ts.map +0 -1
- package/dist/components/SuperDrawer/components/SuperDrawerHeader.js +0 -25
- package/dist/components/SuperDrawer/index.d.ts +0 -6
- package/dist/components/SuperDrawer/index.d.ts.map +0 -1
- package/dist/components/SuperDrawer/index.js +0 -22
- package/dist/components/SuperDrawer/useSuperDrawer.d.ts +0 -53
- package/dist/components/SuperDrawer/useSuperDrawer.d.ts.map +0 -1
- package/dist/components/SuperDrawer/useSuperDrawer.js +0 -148
- package/dist/components/SuperDrawer/utils.d.ts +0 -5
- package/dist/components/SuperDrawer/utils.d.ts.map +0 -1
- package/dist/components/SuperDrawer/utils.js +0 -8
- package/dist/components/Table/GridTable.d.ts +0 -166
- package/dist/components/Table/GridTable.d.ts.map +0 -1
- package/dist/components/Table/GridTable.js +0 -461
- package/dist/components/Table/GridTableApi.d.ts +0 -108
- package/dist/components/Table/GridTableApi.d.ts.map +0 -1
- package/dist/components/Table/GridTableApi.js +0 -202
- package/dist/components/Table/TableActions.d.ts +0 -13
- package/dist/components/Table/TableActions.d.ts.map +0 -1
- package/dist/components/Table/TableActions.js +0 -11
- package/dist/components/Table/TableStyles.d.ts +0 -118
- package/dist/components/Table/TableStyles.d.ts.map +0 -1
- package/dist/components/Table/TableStyles.js +0 -133
- package/dist/components/Table/components/CollapseToggle.d.ts +0 -7
- package/dist/components/Table/components/CollapseToggle.d.ts.map +0 -1
- package/dist/components/Table/components/CollapseToggle.js +0 -23
- package/dist/components/Table/components/EditColumnsButton.d.ts +0 -12
- package/dist/components/Table/components/EditColumnsButton.d.ts.map +0 -1
- package/dist/components/Table/components/EditColumnsButton.js +0 -49
- package/dist/components/Table/components/ExpandableHeader.d.ts +0 -12
- package/dist/components/Table/components/ExpandableHeader.d.ts.map +0 -1
- package/dist/components/Table/components/ExpandableHeader.js +0 -35
- package/dist/components/Table/components/KeptGroupRow.d.ts +0 -11
- package/dist/components/Table/components/KeptGroupRow.d.ts.map +0 -1
- package/dist/components/Table/components/KeptGroupRow.js +0 -21
- package/dist/components/Table/components/Row.d.ts +0 -78
- package/dist/components/Table/components/Row.d.ts.map +0 -1
- package/dist/components/Table/components/Row.js +0 -254
- package/dist/components/Table/components/SelectToggle.d.ts +0 -8
- package/dist/components/Table/components/SelectToggle.d.ts.map +0 -1
- package/dist/components/Table/components/SelectToggle.js +0 -15
- package/dist/components/Table/components/SortHeader.d.ts +0 -23
- package/dist/components/Table/components/SortHeader.d.ts.map +0 -1
- package/dist/components/Table/components/SortHeader.js +0 -37
- package/dist/components/Table/components/cell.d.ts +0 -48
- package/dist/components/Table/components/cell.d.ts.map +0 -1
- package/dist/components/Table/components/cell.js +0 -40
- package/dist/components/Table/hooks/useSetupColumnSizes.d.ts +0 -24
- package/dist/components/Table/hooks/useSetupColumnSizes.d.ts.map +0 -1
- package/dist/components/Table/hooks/useSetupColumnSizes.js +0 -67
- package/dist/components/Table/index.d.ts +0 -28
- package/dist/components/Table/index.d.ts.map +0 -1
- package/dist/components/Table/index.js +0 -57
- package/dist/components/Table/types.d.ts +0 -123
- package/dist/components/Table/types.d.ts.map +0 -1
- package/dist/components/Table/types.js +0 -20
- package/dist/components/Table/utils/ColumnState.d.ts +0 -25
- package/dist/components/Table/utils/ColumnState.d.ts.map +0 -1
- package/dist/components/Table/utils/ColumnState.js +0 -89
- package/dist/components/Table/utils/ColumnStates.d.ts +0 -30
- package/dist/components/Table/utils/ColumnStates.d.ts.map +0 -1
- package/dist/components/Table/utils/ColumnStates.js +0 -84
- package/dist/components/Table/utils/ColumnStorage.d.ts +0 -15
- package/dist/components/Table/utils/ColumnStorage.d.ts.map +0 -1
- package/dist/components/Table/utils/ColumnStorage.js +0 -38
- package/dist/components/Table/utils/GridRowLookup.d.ts +0 -34
- package/dist/components/Table/utils/GridRowLookup.d.ts.map +0 -1
- package/dist/components/Table/utils/GridRowLookup.js +0 -67
- package/dist/components/Table/utils/RowState.d.ts +0 -128
- package/dist/components/Table/utils/RowState.d.ts.map +0 -1
- package/dist/components/Table/utils/RowState.js +0 -351
- package/dist/components/Table/utils/RowStates.d.ts +0 -41
- package/dist/components/Table/utils/RowStates.d.ts.map +0 -1
- package/dist/components/Table/utils/RowStates.js +0 -197
- package/dist/components/Table/utils/RowStorage.d.ts +0 -29
- package/dist/components/Table/utils/RowStorage.d.ts.map +0 -1
- package/dist/components/Table/utils/RowStorage.js +0 -43
- package/dist/components/Table/utils/TableState.d.ts +0 -102
- package/dist/components/Table/utils/TableState.d.ts.map +0 -1
- package/dist/components/Table/utils/TableState.js +0 -267
- package/dist/components/Table/utils/columns.d.ts +0 -36
- package/dist/components/Table/utils/columns.d.ts.map +0 -1
- package/dist/components/Table/utils/columns.js +0 -256
- package/dist/components/Table/utils/simpleHelpers.d.ts +0 -31
- package/dist/components/Table/utils/simpleHelpers.d.ts.map +0 -1
- package/dist/components/Table/utils/simpleHelpers.js +0 -12
- package/dist/components/Table/utils/sortRows.d.ts +0 -10
- package/dist/components/Table/utils/sortRows.d.ts.map +0 -1
- package/dist/components/Table/utils/sortRows.js +0 -109
- package/dist/components/Table/utils/utils.d.ts +0 -56
- package/dist/components/Table/utils/utils.d.ts.map +0 -1
- package/dist/components/Table/utils/utils.js +0 -208
- package/dist/components/Table/utils/visitor.d.ts +0 -3
- package/dist/components/Table/utils/visitor.d.ts.map +0 -1
- package/dist/components/Table/utils/visitor.js +0 -13
- package/dist/components/Tabs.d.ts +0 -136
- package/dist/components/Tabs.d.ts.map +0 -1
- package/dist/components/Tabs.js +0 -162
- package/dist/components/Tag.d.ts +0 -18
- package/dist/components/Tag.d.ts.map +0 -1
- package/dist/components/Tag.js +0 -44
- package/dist/components/Toast/Toast.d.ts +0 -2
- package/dist/components/Toast/Toast.d.ts.map +0 -1
- package/dist/components/Toast/Toast.js +0 -12
- package/dist/components/Toast/ToastContext.d.ts +0 -15
- package/dist/components/Toast/ToastContext.d.ts.map +0 -1
- package/dist/components/Toast/ToastContext.js +0 -23
- package/dist/components/Toast/useToast.d.ts +0 -7
- package/dist/components/Toast/useToast.d.ts.map +0 -1
- package/dist/components/Toast/useToast.js +0 -10
- package/dist/components/ToggleChip.d.ts +0 -11
- package/dist/components/ToggleChip.d.ts.map +0 -1
- package/dist/components/ToggleChip.js +0 -26
- package/dist/components/ToggleChips.d.ts +0 -12
- package/dist/components/ToggleChips.d.ts.map +0 -1
- package/dist/components/ToggleChips.js +0 -13
- package/dist/components/Tooltip.d.ts +0 -19
- package/dist/components/Tooltip.d.ts.map +0 -1
- package/dist/components/Tooltip.js +0 -61
- package/dist/components/index.d.ts +0 -51
- package/dist/components/index.d.ts.map +0 -1
- package/dist/components/index.js +0 -73
- package/dist/components/internal/CompoundField.d.ts +0 -5
- package/dist/components/internal/CompoundField.d.ts.map +0 -1
- package/dist/components/internal/CompoundField.js +0 -30
- package/dist/components/internal/ContextualModal.d.ts +0 -8
- package/dist/components/internal/ContextualModal.d.ts.map +0 -1
- package/dist/components/internal/ContextualModal.js +0 -12
- package/dist/components/internal/DatePicker/DatePicker.d.ts +0 -11
- package/dist/components/internal/DatePicker/DatePicker.d.ts.map +0 -1
- package/dist/components/internal/DatePicker/DatePicker.js +0 -23
- package/dist/components/internal/DatePicker/DatePickerOverlay.d.ts +0 -7
- package/dist/components/internal/DatePicker/DatePickerOverlay.d.ts.map +0 -1
- package/dist/components/internal/DatePicker/DatePickerOverlay.js +0 -9
- package/dist/components/internal/DatePicker/DateRangePicker.d.ts +0 -12
- package/dist/components/internal/DatePicker/DateRangePicker.d.ts.map +0 -1
- package/dist/components/internal/DatePicker/DateRangePicker.js +0 -21
- package/dist/components/internal/DatePicker/Day.d.ts +0 -4
- package/dist/components/internal/DatePicker/Day.d.ts.map +0 -1
- package/dist/components/internal/DatePicker/Day.js +0 -54
- package/dist/components/internal/DatePicker/Header.d.ts +0 -4
- package/dist/components/internal/DatePicker/Header.d.ts.map +0 -1
- package/dist/components/internal/DatePicker/Header.js +0 -20
- package/dist/components/internal/DatePicker/WeekHeader.d.ts +0 -2
- package/dist/components/internal/DatePicker/WeekHeader.d.ts.map +0 -1
- package/dist/components/internal/DatePicker/WeekHeader.js +0 -15
- package/dist/components/internal/DatePicker/index.d.ts +0 -4
- package/dist/components/internal/DatePicker/index.d.ts.map +0 -1
- package/dist/components/internal/DatePicker/index.js +0 -19
- package/dist/components/internal/Menu.d.ts +0 -15
- package/dist/components/internal/Menu.d.ts.map +0 -1
- package/dist/components/internal/Menu.js +0 -71
- package/dist/components/internal/MenuItem.d.ts +0 -12
- package/dist/components/internal/MenuItem.d.ts.map +0 -1
- package/dist/components/internal/MenuItem.js +0 -99
- package/dist/components/internal/MenuSection.d.ts +0 -12
- package/dist/components/internal/MenuSection.d.ts.map +0 -1
- package/dist/components/internal/MenuSection.js +0 -16
- package/dist/components/internal/OverlayTrigger.d.ts +0 -47
- package/dist/components/internal/OverlayTrigger.d.ts.map +0 -1
- package/dist/components/internal/OverlayTrigger.js +0 -54
- package/dist/components/internal/Popover.d.ts +0 -12
- package/dist/components/internal/Popover.d.ts.map +0 -1
- package/dist/components/internal/Popover.js +0 -29
- package/dist/components/internal/index.d.ts +0 -6
- package/dist/components/internal/index.d.ts.map +0 -1
- package/dist/components/internal/index.js +0 -21
- package/dist/components/testData.d.ts +0 -8
- package/dist/components/testData.d.ts.map +0 -1
- package/dist/components/testData.js +0 -14
- package/dist/forms/BoundCheckboxField.d.ts +0 -11
- package/dist/forms/BoundCheckboxField.d.ts.map +0 -1
- package/dist/forms/BoundCheckboxField.js +0 -24
- package/dist/forms/BoundCheckboxGroupField.d.ts +0 -12
- package/dist/forms/BoundCheckboxGroupField.d.ts.map +0 -1
- package/dist/forms/BoundCheckboxGroupField.js +0 -24
- package/dist/forms/BoundChipSelectField.d.ts +0 -13
- package/dist/forms/BoundChipSelectField.d.ts.map +0 -1
- package/dist/forms/BoundChipSelectField.js +0 -29
- package/dist/forms/BoundDateField.d.ts +0 -10
- package/dist/forms/BoundDateField.d.ts.map +0 -1
- package/dist/forms/BoundDateField.js +0 -26
- package/dist/forms/BoundDateRangeField.d.ts +0 -11
- package/dist/forms/BoundDateRangeField.d.ts.map +0 -1
- package/dist/forms/BoundDateRangeField.js +0 -26
- package/dist/forms/BoundIconCardField.d.ts +0 -13
- package/dist/forms/BoundIconCardField.d.ts.map +0 -1
- package/dist/forms/BoundIconCardField.js +0 -18
- package/dist/forms/BoundIconCardGroupField.d.ts +0 -12
- package/dist/forms/BoundIconCardGroupField.d.ts.map +0 -1
- package/dist/forms/BoundIconCardGroupField.js +0 -18
- package/dist/forms/BoundMultiLineSelectField.d.ts +0 -14
- package/dist/forms/BoundMultiLineSelectField.d.ts.map +0 -1
- package/dist/forms/BoundMultiLineSelectField.js +0 -25
- package/dist/forms/BoundMultiSelectField.d.ts +0 -21
- package/dist/forms/BoundMultiSelectField.d.ts.map +0 -1
- package/dist/forms/BoundMultiSelectField.js +0 -25
- package/dist/forms/BoundNumberField.d.ts +0 -10
- package/dist/forms/BoundNumberField.d.ts.map +0 -1
- package/dist/forms/BoundNumberField.js +0 -23
- package/dist/forms/BoundRadioGroupField.d.ts +0 -11
- package/dist/forms/BoundRadioGroupField.d.ts.map +0 -1
- package/dist/forms/BoundRadioGroupField.js +0 -23
- package/dist/forms/BoundRichTextField.d.ts +0 -9
- package/dist/forms/BoundRichTextField.d.ts.map +0 -1
- package/dist/forms/BoundRichTextField.js +0 -23
- package/dist/forms/BoundSelectAndTextField.d.ts +0 -18
- package/dist/forms/BoundSelectAndTextField.d.ts.map +0 -1
- package/dist/forms/BoundSelectAndTextField.js +0 -13
- package/dist/forms/BoundSelectField.d.ts +0 -30
- package/dist/forms/BoundSelectField.d.ts.map +0 -1
- package/dist/forms/BoundSelectField.js +0 -24
- package/dist/forms/BoundSwitchField.d.ts +0 -11
- package/dist/forms/BoundSwitchField.d.ts.map +0 -1
- package/dist/forms/BoundSwitchField.js +0 -17
- package/dist/forms/BoundTextAreaField.d.ts +0 -12
- package/dist/forms/BoundTextAreaField.d.ts.map +0 -1
- package/dist/forms/BoundTextAreaField.js +0 -23
- package/dist/forms/BoundTextField.d.ts +0 -12
- package/dist/forms/BoundTextField.d.ts.map +0 -1
- package/dist/forms/BoundTextField.js +0 -23
- package/dist/forms/BoundToggleChipGroupField.d.ts +0 -11
- package/dist/forms/BoundToggleChipGroupField.d.ts.map +0 -1
- package/dist/forms/BoundToggleChipGroupField.js +0 -14
- package/dist/forms/BoundTreeSelectField.d.ts +0 -22
- package/dist/forms/BoundTreeSelectField.d.ts.map +0 -1
- package/dist/forms/BoundTreeSelectField.js +0 -25
- package/dist/forms/FormHeading.d.ts +0 -11
- package/dist/forms/FormHeading.d.ts.map +0 -1
- package/dist/forms/FormHeading.js +0 -16
- package/dist/forms/FormLines.d.ts +0 -36
- package/dist/forms/FormLines.d.ts.map +0 -1
- package/dist/forms/FormLines.js +0 -66
- package/dist/forms/FormStateApp.d.ts +0 -5
- package/dist/forms/FormStateApp.d.ts.map +0 -1
- package/dist/forms/FormStateApp.js +0 -116
- package/dist/forms/StaticField.d.ts +0 -11
- package/dist/forms/StaticField.d.ts.map +0 -1
- package/dist/forms/StaticField.js +0 -16
- package/dist/forms/StepperFormApp.d.ts +0 -2
- package/dist/forms/StepperFormApp.d.ts.map +0 -1
- package/dist/forms/StepperFormApp.js +0 -112
- package/dist/forms/SubmitButton.d.ts +0 -9
- package/dist/forms/SubmitButton.d.ts.map +0 -1
- package/dist/forms/SubmitButton.js +0 -22
- package/dist/forms/formStateDomain.d.ts +0 -55
- package/dist/forms/formStateDomain.d.ts.map +0 -1
- package/dist/forms/formStateDomain.js +0 -31
- package/dist/forms/index.d.ts +0 -24
- package/dist/forms/index.d.ts.map +0 -1
- package/dist/forms/index.js +0 -39
- package/dist/forms/labelUtils.d.ts +0 -2
- package/dist/forms/labelUtils.d.ts.map +0 -1
- package/dist/forms/labelUtils.js +0 -18
- package/dist/hooks/index.d.ts +0 -9
- package/dist/hooks/index.d.ts.map +0 -1
- package/dist/hooks/index.js +0 -24
- package/dist/hooks/useBreakpoint.d.ts +0 -12
- package/dist/hooks/useBreakpoint.d.ts.map +0 -1
- package/dist/hooks/useBreakpoint.js +0 -40
- package/dist/hooks/useComputed.d.ts +0 -44
- package/dist/hooks/useComputed.d.ts.map +0 -1
- package/dist/hooks/useComputed.js +0 -107
- package/dist/hooks/useFilter.d.ts +0 -11
- package/dist/hooks/useFilter.d.ts.map +0 -1
- package/dist/hooks/useFilter.js +0 -11
- package/dist/hooks/useGetRef.d.ts +0 -7
- package/dist/hooks/useGetRef.d.ts.map +0 -1
- package/dist/hooks/useGetRef.js +0 -13
- package/dist/hooks/useGroupBy.d.ts +0 -13
- package/dist/hooks/useGroupBy.d.ts.map +0 -1
- package/dist/hooks/useGroupBy.js +0 -13
- package/dist/hooks/useHover.d.ts +0 -13
- package/dist/hooks/useHover.d.ts.map +0 -1
- package/dist/hooks/useHover.js +0 -9
- package/dist/hooks/usePersistedFilter.d.ts +0 -17
- package/dist/hooks/usePersistedFilter.d.ts.map +0 -1
- package/dist/hooks/usePersistedFilter.js +0 -48
- package/dist/hooks/useQueryState.d.ts +0 -11
- package/dist/hooks/useQueryState.d.ts.map +0 -1
- package/dist/hooks/useQueryState.js +0 -19
- package/dist/hooks/useRenderCount.d.ts +0 -18
- package/dist/hooks/useRenderCount.d.ts.map +0 -1
- package/dist/hooks/useRenderCount.js +0 -27
- package/dist/hooks/useSessionStorage.d.ts +0 -4
- package/dist/hooks/useSessionStorage.d.ts.map +0 -1
- package/dist/hooks/useSessionStorage.js +0 -40
- package/dist/index.d.ts.map +0 -1
- package/dist/inputs/Autocomplete.d.ts +0 -30
- package/dist/inputs/Autocomplete.d.ts.map +0 -1
- package/dist/inputs/Autocomplete.js +0 -66
- package/dist/inputs/Checkbox.d.ts +0 -24
- package/dist/inputs/Checkbox.d.ts.map +0 -1
- package/dist/inputs/Checkbox.js +0 -20
- package/dist/inputs/CheckboxBase.d.ts +0 -37
- package/dist/inputs/CheckboxBase.d.ts.map +0 -1
- package/dist/inputs/CheckboxBase.js +0 -59
- package/dist/inputs/CheckboxGroup.d.ts +0 -29
- package/dist/inputs/CheckboxGroup.d.ts.map +0 -1
- package/dist/inputs/CheckboxGroup.js +0 -30
- package/dist/inputs/ChipSelectField.d.ts +0 -34
- package/dist/inputs/ChipSelectField.d.ts.map +0 -1
- package/dist/inputs/ChipSelectField.js +0 -203
- package/dist/inputs/ChipTextField.d.ts +0 -14
- package/dist/inputs/ChipTextField.d.ts.map +0 -1
- package/dist/inputs/ChipTextField.js +0 -63
- package/dist/inputs/DateFields/DateField.d.ts +0 -5
- package/dist/inputs/DateFields/DateField.d.ts.map +0 -1
- package/dist/inputs/DateFields/DateField.js +0 -8
- package/dist/inputs/DateFields/DateField.mock.d.ts +0 -4
- package/dist/inputs/DateFields/DateField.mock.d.ts.map +0 -1
- package/dist/inputs/DateFields/DateField.mock.js +0 -18
- package/dist/inputs/DateFields/DateFieldBase.d.ts +0 -50
- package/dist/inputs/DateFields/DateFieldBase.d.ts.map +0 -1
- package/dist/inputs/DateFields/DateFieldBase.js +0 -175
- package/dist/inputs/DateFields/DateRangeField.d.ts +0 -5
- package/dist/inputs/DateFields/DateRangeField.d.ts.map +0 -1
- package/dist/inputs/DateFields/DateRangeField.js +0 -8
- package/dist/inputs/DateFields/index.d.ts +0 -6
- package/dist/inputs/DateFields/index.d.ts.map +0 -1
- package/dist/inputs/DateFields/index.js +0 -22
- package/dist/inputs/DateFields/utils.d.ts +0 -15
- package/dist/inputs/DateFields/utils.d.ts.map +0 -1
- package/dist/inputs/DateFields/utils.js +0 -82
- package/dist/inputs/ErrorMessage.d.ts +0 -15
- package/dist/inputs/ErrorMessage.d.ts.map +0 -1
- package/dist/inputs/ErrorMessage.js +0 -17
- package/dist/inputs/IconCard.d.ts +0 -25
- package/dist/inputs/IconCard.d.ts.map +0 -1
- package/dist/inputs/IconCard.js +0 -38
- package/dist/inputs/IconCardGroup.d.ts +0 -27
- package/dist/inputs/IconCardGroup.d.ts.map +0 -1
- package/dist/inputs/IconCardGroup.js +0 -54
- package/dist/inputs/MultiLineSelectField.d.ts +0 -12
- package/dist/inputs/MultiLineSelectField.d.ts.map +0 -1
- package/dist/inputs/MultiLineSelectField.js +0 -29
- package/dist/inputs/MultiSelectField.d.ts +0 -21
- package/dist/inputs/MultiSelectField.d.ts.map +0 -1
- package/dist/inputs/MultiSelectField.js +0 -11
- package/dist/inputs/NumberField.d.ts +0 -42
- package/dist/inputs/NumberField.d.ts.map +0 -1
- package/dist/inputs/NumberField.js +0 -118
- package/dist/inputs/RadioGroupField.d.ts +0 -89
- package/dist/inputs/RadioGroupField.d.ts.map +0 -1
- package/dist/inputs/RadioGroupField.js +0 -118
- package/dist/inputs/RichTextField.d.ts +0 -33
- package/dist/inputs/RichTextField.d.ts.map +0 -1
- package/dist/inputs/RichTextField.js +0 -174
- package/dist/inputs/RichTextField.mock.d.ts +0 -4
- package/dist/inputs/RichTextField.mock.d.ts.map +0 -1
- package/dist/inputs/RichTextField.mock.js +0 -21
- package/dist/inputs/SelectField.d.ts +0 -24
- package/dist/inputs/SelectField.d.ts.map +0 -1
- package/dist/inputs/SelectField.js +0 -18
- package/dist/inputs/Switch.d.ts +0 -34
- package/dist/inputs/Switch.d.ts.map +0 -1
- package/dist/inputs/Switch.js +0 -77
- package/dist/inputs/SwitchGroup.d.ts +0 -21
- package/dist/inputs/SwitchGroup.d.ts.map +0 -1
- package/dist/inputs/SwitchGroup.js +0 -23
- package/dist/inputs/TextAreaField.d.ts +0 -9
- package/dist/inputs/TextAreaField.d.ts.map +0 -1
- package/dist/inputs/TextAreaField.js +0 -42
- package/dist/inputs/TextField.d.ts +0 -29
- package/dist/inputs/TextField.d.ts.map +0 -1
- package/dist/inputs/TextField.js +0 -43
- package/dist/inputs/TextFieldBase.d.ts +0 -25
- package/dist/inputs/TextFieldBase.d.ts.map +0 -1
- package/dist/inputs/TextFieldBase.js +0 -193
- package/dist/inputs/ToggleButton.d.ts +0 -25
- package/dist/inputs/ToggleButton.d.ts.map +0 -1
- package/dist/inputs/ToggleButton.js +0 -61
- package/dist/inputs/ToggleChipGroup.d.ts +0 -25
- package/dist/inputs/ToggleChipGroup.d.ts.map +0 -1
- package/dist/inputs/ToggleChipGroup.js +0 -47
- package/dist/inputs/TreeSelectField/TreeOption.d.ts +0 -13
- package/dist/inputs/TreeSelectField/TreeOption.d.ts.map +0 -1
- package/dist/inputs/TreeSelectField/TreeOption.js +0 -62
- package/dist/inputs/TreeSelectField/TreeSelectField.d.ts +0 -56
- package/dist/inputs/TreeSelectField/TreeSelectField.d.ts.map +0 -1
- package/dist/inputs/TreeSelectField/TreeSelectField.js +0 -468
- package/dist/inputs/TreeSelectField/index.d.ts +0 -3
- package/dist/inputs/TreeSelectField/index.d.ts.map +0 -1
- package/dist/inputs/TreeSelectField/index.js +0 -17
- package/dist/inputs/TreeSelectField/utils.d.ts +0 -54
- package/dist/inputs/TreeSelectField/utils.d.ts.map +0 -1
- package/dist/inputs/TreeSelectField/utils.js +0 -49
- package/dist/inputs/Value.d.ts +0 -18
- package/dist/inputs/Value.d.ts.map +0 -1
- package/dist/inputs/Value.js +0 -53
- package/dist/inputs/hooks/useGrowingTextField.d.ts +0 -10
- package/dist/inputs/hooks/useGrowingTextField.d.ts.map +0 -1
- package/dist/inputs/hooks/useGrowingTextField.js +0 -44
- package/dist/inputs/index.d.ts +0 -24
- package/dist/inputs/index.d.ts.map +0 -1
- package/dist/inputs/index.js +0 -37
- package/dist/inputs/internal/ComboBoxBase.d.ts +0 -89
- package/dist/inputs/internal/ComboBoxBase.d.ts.map +0 -1
- package/dist/inputs/internal/ComboBoxBase.js +0 -302
- package/dist/inputs/internal/ComboBoxInput.d.ts +0 -36
- package/dist/inputs/internal/ComboBoxInput.d.ts.map +0 -1
- package/dist/inputs/internal/ComboBoxInput.js +0 -153
- package/dist/inputs/internal/ListBox.d.ts +0 -20
- package/dist/inputs/internal/ListBox.d.ts.map +0 -1
- package/dist/inputs/internal/ListBox.js +0 -68
- package/dist/inputs/internal/ListBoxChip.d.ts +0 -6
- package/dist/inputs/internal/ListBoxChip.d.ts.map +0 -1
- package/dist/inputs/internal/ListBoxChip.js +0 -10
- package/dist/inputs/internal/ListBoxSection.d.ts +0 -14
- package/dist/inputs/internal/ListBoxSection.d.ts.map +0 -1
- package/dist/inputs/internal/ListBoxSection.js +0 -19
- package/dist/inputs/internal/ListBoxToggleChip.d.ts +0 -13
- package/dist/inputs/internal/ListBoxToggleChip.d.ts.map +0 -1
- package/dist/inputs/internal/ListBoxToggleChip.js +0 -13
- package/dist/inputs/internal/LoadingDots.d.ts +0 -4
- package/dist/inputs/internal/LoadingDots.d.ts.map +0 -1
- package/dist/inputs/internal/LoadingDots.js +0 -28
- package/dist/inputs/internal/MenuSearchField.d.ts +0 -7
- package/dist/inputs/internal/MenuSearchField.d.ts.map +0 -1
- package/dist/inputs/internal/MenuSearchField.js +0 -15
- package/dist/inputs/internal/Option.d.ts +0 -13
- package/dist/inputs/internal/Option.d.ts.map +0 -1
- package/dist/inputs/internal/Option.js +0 -44
- package/dist/inputs/internal/VirtualizedOptions.d.ts +0 -17
- package/dist/inputs/internal/VirtualizedOptions.d.ts.map +0 -1
- package/dist/inputs/internal/VirtualizedOptions.js +0 -58
- package/dist/inputs/internal/constants.d.ts +0 -3
- package/dist/inputs/internal/constants.d.ts.map +0 -1
- package/dist/inputs/internal/constants.js +0 -5
- package/dist/inputs/utils.d.ts +0 -2
- package/dist/inputs/utils.d.ts.map +0 -1
- package/dist/inputs/utils.js +0 -6
- package/dist/interfaces.d.ts +0 -60
- package/dist/interfaces.d.ts.map +0 -1
- package/dist/interfaces.js +0 -2
- package/dist/types.d.ts +0 -32
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -6
- package/dist/utils/defaultLabel.d.ts +0 -9
- package/dist/utils/defaultLabel.d.ts.map +0 -1
- package/dist/utils/defaultLabel.js +0 -14
- package/dist/utils/defaultTestId.d.ts +0 -11
- package/dist/utils/defaultTestId.d.ts.map +0 -1
- package/dist/utils/defaultTestId.js +0 -18
- package/dist/utils/getInteractiveElement.d.ts +0 -7
- package/dist/utils/getInteractiveElement.d.ts.map +0 -1
- package/dist/utils/getInteractiveElement.js +0 -14
- package/dist/utils/index.d.ts +0 -36
- package/dist/utils/index.d.ts.map +0 -1
- package/dist/utils/index.js +0 -109
- package/dist/utils/objectId.d.ts +0 -3
- package/dist/utils/objectId.d.ts.map +0 -1
- package/dist/utils/objectId.js +0 -14
- package/dist/utils/options.d.ts +0 -3
- package/dist/utils/options.d.ts.map +0 -1
- package/dist/utils/options.js +0 -24
- package/dist/utils/rtl.d.ts +0 -45
- package/dist/utils/rtl.d.ts.map +0 -1
- package/dist/utils/rtl.js +0 -241
- package/dist/utils/sb.d.ts +0 -27
- package/dist/utils/sb.d.ts.map +0 -1
- package/dist/utils/sb.js +0 -37
- package/dist/utils/shallowEqual.d.ts +0 -5
- package/dist/utils/shallowEqual.d.ts.map +0 -1
- package/dist/utils/shallowEqual.js +0 -27
- package/dist/utils/useTestIds.d.ts +0 -36
- package/dist/utils/useTestIds.d.ts.map +0 -1
- package/dist/utils/useTestIds.js +0 -63
|
@@ -1,302 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.addNewOption = exports.unsetOption = void 0;
|
|
4
|
-
exports.ComboBoxBase = ComboBoxBase;
|
|
5
|
-
exports.initializeOptions = initializeOptions;
|
|
6
|
-
exports.disabledOptionToKeyedTuple = disabledOptionToKeyedTuple;
|
|
7
|
-
const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
8
|
-
const react_1 = require("react");
|
|
9
|
-
const react_aria_1 = require("react-aria");
|
|
10
|
-
const react_stately_1 = require("react-stately");
|
|
11
|
-
const components_1 = require("../../components");
|
|
12
|
-
const internal_1 = require("../../components/internal");
|
|
13
|
-
const PresentationContext_1 = require("../../components/PresentationContext");
|
|
14
|
-
const Css_1 = require("../../Css");
|
|
15
|
-
const ComboBoxInput_1 = require("./ComboBoxInput");
|
|
16
|
-
const ListBox_1 = require("./ListBox");
|
|
17
|
-
const utils_1 = require("../utils");
|
|
18
|
-
const Value_1 = require("../Value");
|
|
19
|
-
const use_debounce_1 = require("use-debounce");
|
|
20
|
-
/**
|
|
21
|
-
* Provides a non-native select/dropdown widget that allows the user to type to filter the options.
|
|
22
|
-
*
|
|
23
|
-
* The `O` type is a list of options to show, the `V` is the primitive value of a
|
|
24
|
-
* given `O` (i.e. it's id) that you want to use as the current/selected value.
|
|
25
|
-
*
|
|
26
|
-
* Note that the `V extends Key` constraint come from react-aria,
|
|
27
|
-
* and so we cannot easily change them.
|
|
28
|
-
*/
|
|
29
|
-
function ComboBoxBase(props) {
|
|
30
|
-
const { fieldProps } = (0, PresentationContext_1.usePresentationContext)();
|
|
31
|
-
const { disabled, readOnly, onSelect, options: propOptions, multiselect = false, values: propValues, nothingSelectedText = "", contrast, disabledOptions, borderless, unsetLabel, inputStylePalette: propsInputStylePalette, getOptionLabel: propOptionLabel, getOptionValue: propOptionValue, getOptionMenuLabel: propOptionMenuLabel, fullWidth = fieldProps?.fullWidth ?? false, onSearch, onAddNew, ...otherProps } = props;
|
|
32
|
-
const labelStyle = otherProps.labelStyle ?? fieldProps?.labelStyle ?? "above";
|
|
33
|
-
// Memoize the callback functions and handle the `unset` option if provided.
|
|
34
|
-
const getOptionLabel = (0, react_1.useCallback)((o) => unsetLabel && o === exports.unsetOption
|
|
35
|
-
? unsetLabel
|
|
36
|
-
: onAddNew && o === exports.addNewOption
|
|
37
|
-
? exports.addNewOption.name
|
|
38
|
-
: propOptionLabel(o),
|
|
39
|
-
// propOptionLabel is basically always a lambda, so don't dep on it
|
|
40
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
41
|
-
[unsetLabel]);
|
|
42
|
-
const getOptionValue = (0, react_1.useCallback)((o) => unsetLabel && o === exports.unsetOption
|
|
43
|
-
? undefined
|
|
44
|
-
: onAddNew && o === exports.addNewOption
|
|
45
|
-
? exports.addNewOption.id
|
|
46
|
-
: propOptionValue(o),
|
|
47
|
-
// propOptionValue is basically always a lambda, so don't dep on it
|
|
48
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
49
|
-
[unsetLabel]);
|
|
50
|
-
const getOptionMenuLabel = (0, react_1.useCallback)((o) => propOptionMenuLabel
|
|
51
|
-
? propOptionMenuLabel(o, Boolean(unsetLabel) && o === exports.unsetOption, Boolean(onAddNew) && o === exports.addNewOption)
|
|
52
|
-
: getOptionLabel(o),
|
|
53
|
-
// propOptionMenuLabel is basically always a lambda, so don't dep on it
|
|
54
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
55
|
-
[unsetLabel, getOptionLabel]);
|
|
56
|
-
// Call `initializeOptions` to prepend the `unset` option if the `unsetLabel` was provided.
|
|
57
|
-
const options = (0, react_1.useMemo)(() => initializeOptions(propOptions, getOptionValue, unsetLabel, !!onAddNew),
|
|
58
|
-
// If the caller is using { current, load, options }, memoize on only `current` and `options` values.
|
|
59
|
-
// ...and don't bother on memoizing on getOptionValue b/c it's basically always a lambda
|
|
60
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
61
|
-
Array.isArray(propOptions)
|
|
62
|
-
? [propOptions, unsetLabel, onAddNew]
|
|
63
|
-
: [propOptions.current, propOptions.options, unsetLabel, onAddNew]);
|
|
64
|
-
const values = (0, react_1.useMemo)(() => propValues ?? [], [propValues]);
|
|
65
|
-
const inputStylePalette = (0, react_1.useMemo)(() => propsInputStylePalette, [propsInputStylePalette]);
|
|
66
|
-
const selectedOptions = (0, react_1.useMemo)(() => options.filter((o) => values.includes(getOptionValue(o))), [options, values, getOptionValue]);
|
|
67
|
-
const { contains } = (0, react_aria_1.useFilter)({ sensitivity: "base" });
|
|
68
|
-
const isDisabled = !!disabled;
|
|
69
|
-
const isReadOnly = !!readOnly;
|
|
70
|
-
// Do a one-time initialize of fieldState
|
|
71
|
-
const [fieldState, setFieldState] = (0, react_1.useState)(() => {
|
|
72
|
-
return {
|
|
73
|
-
inputValue: getInputValue(selectedOptions, getOptionLabel, multiselect, nothingSelectedText, isReadOnly),
|
|
74
|
-
searchValue: undefined,
|
|
75
|
-
optionsLoading: false,
|
|
76
|
-
};
|
|
77
|
-
});
|
|
78
|
-
const { searchValue } = fieldState;
|
|
79
|
-
const filteredOptions = (0, react_1.useMemo)(() => {
|
|
80
|
-
return !searchValue
|
|
81
|
-
? options
|
|
82
|
-
: options.filter((o) => contains(getOptionLabel(o), searchValue) || o === exports.addNewOption);
|
|
83
|
-
}, [options, searchValue, getOptionLabel, contains]);
|
|
84
|
-
/** Resets field's input value and filtered options list for cases where the user exits the field without making changes (on Escape, or onBlur) */
|
|
85
|
-
function resetField() {
|
|
86
|
-
setFieldState((prevState) => ({ ...prevState, searchValue: undefined }));
|
|
87
|
-
}
|
|
88
|
-
function onSelectionChange(keys) {
|
|
89
|
-
// We don't currently handle the "all" case
|
|
90
|
-
if (keys === "all") {
|
|
91
|
-
return;
|
|
92
|
-
}
|
|
93
|
-
// `onSelectionChange` may be called even if the selection's didn't change.
|
|
94
|
-
// For example, we trigger this `onBlur` of SelectFieldInput in order to reset the input's value.
|
|
95
|
-
// In those cases, we do not need to again call `onSelect` so let's avoid it if we can.
|
|
96
|
-
const selectionChanged = !(keys.size === state.selectionManager.selectedKeys.size &&
|
|
97
|
-
[...keys].every((value) => state.selectionManager.selectedKeys.has(value)));
|
|
98
|
-
if (multiselect && keys.size === 0) {
|
|
99
|
-
selectionChanged && onSelect([], []);
|
|
100
|
-
return;
|
|
101
|
-
}
|
|
102
|
-
const selectedKeys = [...keys.values()];
|
|
103
|
-
const selectedOptions = options.filter((o) => selectedKeys.includes((0, Value_1.valueToKey)(getOptionValue(o))));
|
|
104
|
-
if (!multiselect && selectedOptions[0] === exports.addNewOption && onAddNew) {
|
|
105
|
-
onAddNew(fieldState.inputValue);
|
|
106
|
-
state.close();
|
|
107
|
-
return;
|
|
108
|
-
}
|
|
109
|
-
selectionChanged && onSelect(selectedKeys.map(Value_1.keyToValue), selectedOptions);
|
|
110
|
-
if (!multiselect) {
|
|
111
|
-
// Close menu upon selection change only for Single selection mode
|
|
112
|
-
state.close();
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
function onInputChange(value) {
|
|
116
|
-
if (value !== fieldState.inputValue) {
|
|
117
|
-
setFieldState((prevState) => ({ ...prevState, inputValue: value, searchValue: value }));
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
async function maybeInitLoad() {
|
|
121
|
-
if (!Array.isArray(propOptions)) {
|
|
122
|
-
setFieldState((prevState) => ({ ...prevState, optionsLoading: true }));
|
|
123
|
-
await propOptions.load();
|
|
124
|
-
setFieldState((prevState) => ({ ...prevState, optionsLoading: false }));
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
const firstOpen = (0, react_1.useRef)(true);
|
|
128
|
-
function onOpenChange(isOpen) {
|
|
129
|
-
if (firstOpen.current && isOpen) {
|
|
130
|
-
// TODO: verify this eslint ignore
|
|
131
|
-
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
132
|
-
maybeInitLoad();
|
|
133
|
-
firstOpen.current = false;
|
|
134
|
-
}
|
|
135
|
-
// When using the multiselect field, always empty the input upon open.
|
|
136
|
-
if (multiselect && isOpen) {
|
|
137
|
-
setFieldState((prevState) => ({ ...prevState, inputValue: "" }));
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
// Used to calculate the rendered width of the combo box (input + button)
|
|
141
|
-
const comboBoxRef = (0, react_1.useRef)(null);
|
|
142
|
-
const triggerRef = (0, react_1.useRef)(null);
|
|
143
|
-
const inputRef = (0, react_1.useRef)(null);
|
|
144
|
-
const inputWrapRef = (0, react_1.useRef)(null);
|
|
145
|
-
const listBoxRef = (0, react_1.useRef)(null);
|
|
146
|
-
const popoverRef = (0, react_1.useRef)(null);
|
|
147
|
-
// `disabledKeys` from ComboBoxState does not support additional meta for showing a disabled reason to the user
|
|
148
|
-
// This lookup map helps us cleanly prune out the optional reason text, then access it further down the component tree
|
|
149
|
-
const disabledOptionsWithReasons = Object.fromEntries(disabledOptions?.map(disabledOptionToKeyedTuple) ?? []);
|
|
150
|
-
const comboBoxProps = {
|
|
151
|
-
...otherProps,
|
|
152
|
-
disabledKeys: Object.keys(disabledOptionsWithReasons),
|
|
153
|
-
inputValue: fieldState.inputValue,
|
|
154
|
-
items: filteredOptions,
|
|
155
|
-
isDisabled,
|
|
156
|
-
isReadOnly,
|
|
157
|
-
onInputChange,
|
|
158
|
-
onOpenChange,
|
|
159
|
-
children: (item) => ((0, jsx_runtime_1.jsx)(react_stately_1.Item, { textValue: getOptionLabel(item), children: getOptionMenuLabel(item) }, (0, Value_1.valueToKey)(getOptionValue(item)))),
|
|
160
|
-
};
|
|
161
|
-
const state = (0, react_stately_1.useComboBoxState)({
|
|
162
|
-
...comboBoxProps,
|
|
163
|
-
allowsEmptyCollection: true,
|
|
164
|
-
// We don't really allow custom values, as we reset the input value once a user `blur`s the input field.
|
|
165
|
-
// Though, setting `allowsCustomValue: true` prevents React-Aria/Stately from attempting to reset the input field's value when the menu closes.
|
|
166
|
-
allowsCustomValue: true,
|
|
167
|
-
// useComboBoxState.onSelectionChange will be executed if a keyboard interaction (Enter key) is used to select an item
|
|
168
|
-
onSelectionChange: (key) => {
|
|
169
|
-
// ignore undefined/null keys - `null` can happen if input field's value is completely deleted after having a value assigned.
|
|
170
|
-
if (key) {
|
|
171
|
-
const selectedKeys = state.selectionManager.selectedKeys;
|
|
172
|
-
// Create the `newSelection` Set depending on the value type of SelectField.
|
|
173
|
-
const newSelection = new Set(!multiselect ? [key] : [...selectedKeys, key]);
|
|
174
|
-
// Use only the `multipleSelectionState` to manage selected keys
|
|
175
|
-
state.selectionManager.setSelectedKeys(newSelection);
|
|
176
|
-
}
|
|
177
|
-
},
|
|
178
|
-
});
|
|
179
|
-
const selectedKeys = (0, react_1.useMemo)(() => {
|
|
180
|
-
return selectedOptions.map((o) => (0, Value_1.valueToKey)(getOptionValue(o)));
|
|
181
|
-
}, [selectedOptions, getOptionValue]);
|
|
182
|
-
// @ts-ignore - `selectionManager.state` exists, but not according to the types
|
|
183
|
-
state.selectionManager.state = (0, react_stately_1.useMultipleSelectionState)({
|
|
184
|
-
selectionMode: multiselect ? "multiple" : "single",
|
|
185
|
-
// Do not allow an empty selection if single select mode
|
|
186
|
-
disallowEmptySelection: !multiselect,
|
|
187
|
-
selectedKeys,
|
|
188
|
-
onSelectionChange,
|
|
189
|
-
});
|
|
190
|
-
const [debouncedSearch] = (0, use_debounce_1.useDebounce)(searchValue, 300);
|
|
191
|
-
// Reset inputValue when closed or selected changes
|
|
192
|
-
(0, react_1.useEffect)(() => {
|
|
193
|
-
if (state.isOpen && multiselect && !debouncedSearch) {
|
|
194
|
-
// When a single-select is open, with "inputValue=Blue", when "Blue" is actually
|
|
195
|
-
// selected (our value changes), the box will close immediately, so the inputValue
|
|
196
|
-
// will get reset in the `!isOpen` case.
|
|
197
|
-
//
|
|
198
|
-
// When a multi-select is open, with "inputValue=Blue", when "Blue" is actually
|
|
199
|
-
// selected (our value changes), we leave the box open, and we want to reset
|
|
200
|
-
// the "inputValue=(empty) so the user can now type "inputType=Green".
|
|
201
|
-
//
|
|
202
|
-
// ...unless the multi-select is using onSearch, in which case we want to let them
|
|
203
|
-
// only explicitly trigger a new `onSearch` by changing the existing inputValue,
|
|
204
|
-
// i.e. they might want to keep typing "Blueish".
|
|
205
|
-
setFieldState((prevState) => ({
|
|
206
|
-
...prevState,
|
|
207
|
-
inputValue: "",
|
|
208
|
-
searchValue: "",
|
|
209
|
-
}));
|
|
210
|
-
}
|
|
211
|
-
else if (!state.isOpen) {
|
|
212
|
-
setFieldState((prevState) => ({
|
|
213
|
-
...prevState,
|
|
214
|
-
searchValue: "",
|
|
215
|
-
inputValue: getInputValue(selectedOptions, getOptionLabel, multiselect, nothingSelectedText, isReadOnly),
|
|
216
|
-
}));
|
|
217
|
-
}
|
|
218
|
-
}, [state.isOpen, selectedOptions, getOptionLabel, multiselect, nothingSelectedText, isReadOnly, debouncedSearch]);
|
|
219
|
-
// Call on search callback when the user types in the input field
|
|
220
|
-
(0, react_1.useEffect)(() => {
|
|
221
|
-
onSearch?.(debouncedSearch ?? "");
|
|
222
|
-
}, [onSearch, debouncedSearch]);
|
|
223
|
-
// For the most part, the returned props contain `aria-*` and `id` attributes for accessibility purposes.
|
|
224
|
-
const { buttonProps: triggerProps, inputProps, listBoxProps, labelProps, } = (0, react_aria_1.useComboBox)({
|
|
225
|
-
...comboBoxProps,
|
|
226
|
-
inputRef,
|
|
227
|
-
buttonRef: triggerRef,
|
|
228
|
-
listBoxRef,
|
|
229
|
-
popoverRef,
|
|
230
|
-
}, state);
|
|
231
|
-
const { buttonProps } = (0, react_aria_1.useButton)({ ...triggerProps, isDisabled: isDisabled || isReadOnly }, triggerRef);
|
|
232
|
-
// useOverlayPosition moves the overlay to the top of the DOM to avoid any z-index issues. Uses the `targetRef` to DOM placement
|
|
233
|
-
const { overlayProps: positionProps } = (0, react_aria_1.useOverlayPosition)({
|
|
234
|
-
targetRef: inputWrapRef,
|
|
235
|
-
overlayRef: popoverRef,
|
|
236
|
-
scrollRef: listBoxRef,
|
|
237
|
-
shouldFlip: true,
|
|
238
|
-
isOpen: state.isOpen,
|
|
239
|
-
onClose: state.close,
|
|
240
|
-
placement: "bottom left",
|
|
241
|
-
offset: borderless ? 8 : 4,
|
|
242
|
-
});
|
|
243
|
-
positionProps.style = {
|
|
244
|
-
...positionProps.style,
|
|
245
|
-
width: comboBoxRef?.current?.clientWidth,
|
|
246
|
-
// Ensures the menu never gets too small.
|
|
247
|
-
minWidth: 200,
|
|
248
|
-
};
|
|
249
|
-
const fieldMaxWidth = (0, utils_1.getFieldWidth)(fullWidth);
|
|
250
|
-
return ((0, jsx_runtime_1.jsxs)("div", { css: Css_1.Css.df.fdc.w100.maxw(fieldMaxWidth).if(labelStyle === "left").maxw100.$, ref: comboBoxRef, children: [(0, jsx_runtime_1.jsx)(ComboBoxInput_1.ComboBoxInput, { ...otherProps, inputStylePalette: inputStylePalette, fullWidth: fullWidth, buttonProps: buttonProps, buttonRef: triggerRef, inputProps: inputProps, inputRef: inputRef, inputWrapRef: inputWrapRef, listBoxRef: listBoxRef, state: state, labelProps: labelProps, selectedOptions: selectedOptions, getOptionValue: getOptionValue, getOptionLabel: getOptionLabel, contrast: contrast, nothingSelectedText: nothingSelectedText, borderless: borderless, tooltip: (0, components_1.resolveTooltip)(disabled, undefined, readOnly), resetField: resetField }), state.isOpen && ((0, jsx_runtime_1.jsx)(internal_1.Popover, { triggerRef: triggerRef, popoverRef: popoverRef, positionProps: positionProps, onClose: () => state.close(), isOpen: state.isOpen, minWidth: 200, children: (0, jsx_runtime_1.jsx)(ListBox_1.ListBox, { ...listBoxProps, positionProps: positionProps, state: state, listBoxRef: listBoxRef, selectedOptions: selectedOptions, getOptionLabel: getOptionLabel, getOptionValue: (o) => (0, Value_1.valueToKey)(getOptionValue(o)), contrast: contrast, horizontalLayout: labelStyle === "left", loading: fieldState.optionsLoading, disabledOptionsWithReasons: disabledOptionsWithReasons }) }))] }));
|
|
251
|
-
}
|
|
252
|
-
function getInputValue(selectedOptions, getOptionLabel, multiselect, nothingSelectedText, readOnly) {
|
|
253
|
-
return selectedOptions.length === 1
|
|
254
|
-
? getOptionLabel(selectedOptions[0])
|
|
255
|
-
: readOnly && selectedOptions.length > 0
|
|
256
|
-
? selectedOptions.map(getOptionLabel).join(", ")
|
|
257
|
-
: multiselect && selectedOptions.length === 0
|
|
258
|
-
? nothingSelectedText
|
|
259
|
-
: "";
|
|
260
|
-
}
|
|
261
|
-
/** Transforms/simplifies `optionsOrLoad` into just options, with unsetLabel maybe added. */
|
|
262
|
-
function initializeOptions(optionsOrLoad, getOptionValue, unsetLabel, addNew) {
|
|
263
|
-
const opts = [];
|
|
264
|
-
if (unsetLabel) {
|
|
265
|
-
opts.push(exports.unsetOption);
|
|
266
|
-
}
|
|
267
|
-
if (Array.isArray(optionsOrLoad)) {
|
|
268
|
-
opts.push(...optionsOrLoad);
|
|
269
|
-
}
|
|
270
|
-
else {
|
|
271
|
-
const { options, current } = optionsOrLoad;
|
|
272
|
-
if (options) {
|
|
273
|
-
opts.push(...options);
|
|
274
|
-
}
|
|
275
|
-
// Add the `current` to the list of options in the event it is not already there.
|
|
276
|
-
if (current) {
|
|
277
|
-
const toCheck = Array.isArray(current) ? current : [current];
|
|
278
|
-
toCheck.forEach((current) => {
|
|
279
|
-
const value = getOptionValue(current);
|
|
280
|
-
const found = options && options.find((o) => getOptionValue(o) === value);
|
|
281
|
-
if (!found) {
|
|
282
|
-
opts.push(current);
|
|
283
|
-
}
|
|
284
|
-
});
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
if (addNew) {
|
|
288
|
-
opts.push(exports.addNewOption);
|
|
289
|
-
}
|
|
290
|
-
return opts;
|
|
291
|
-
}
|
|
292
|
-
/** A marker option to automatically add an "Unset" option to the start of options. */
|
|
293
|
-
exports.unsetOption = {};
|
|
294
|
-
exports.addNewOption = { id: "new", name: "Add New" };
|
|
295
|
-
function disabledOptionToKeyedTuple(disabledOption) {
|
|
296
|
-
if (typeof disabledOption === "object" && disabledOption !== null) {
|
|
297
|
-
return [(0, Value_1.valueToKey)(disabledOption.value), disabledOption.reason];
|
|
298
|
-
}
|
|
299
|
-
else {
|
|
300
|
-
return [(0, Value_1.valueToKey)(disabledOption), undefined];
|
|
301
|
-
}
|
|
302
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { InputHTMLAttributes, LabelHTMLAttributes, MutableRefObject, ReactNode } from "react";
|
|
2
|
-
import { ComboBoxState } from "react-stately";
|
|
3
|
-
import { PresentationFieldProps } from "../../components/PresentationContext";
|
|
4
|
-
import { Value } from "../Value";
|
|
5
|
-
interface ComboBoxInputProps<O, V extends Value> extends PresentationFieldProps {
|
|
6
|
-
buttonProps: any;
|
|
7
|
-
buttonRef: MutableRefObject<HTMLButtonElement | null>;
|
|
8
|
-
inputProps: InputHTMLAttributes<HTMLInputElement>;
|
|
9
|
-
inputRef: MutableRefObject<HTMLInputElement | null>;
|
|
10
|
-
inputWrapRef: MutableRefObject<HTMLDivElement | null>;
|
|
11
|
-
listBoxRef?: MutableRefObject<HTMLDivElement | null>;
|
|
12
|
-
state: ComboBoxState<O>;
|
|
13
|
-
fieldDecoration?: (opt: O) => ReactNode;
|
|
14
|
-
errorMsg?: string;
|
|
15
|
-
required?: boolean;
|
|
16
|
-
helperText?: string | ReactNode;
|
|
17
|
-
onBlur?: () => void;
|
|
18
|
-
onFocus?: () => void;
|
|
19
|
-
labelProps: LabelHTMLAttributes<HTMLLabelElement>;
|
|
20
|
-
label: string;
|
|
21
|
-
selectedOptions: O[];
|
|
22
|
-
selectedOptionsLabels?: string[];
|
|
23
|
-
getOptionValue: (opt: O) => V;
|
|
24
|
-
getOptionLabel: (opt: O) => string;
|
|
25
|
-
sizeToContent?: boolean;
|
|
26
|
-
contrast?: boolean;
|
|
27
|
-
nothingSelectedText: string;
|
|
28
|
-
tooltip?: ReactNode;
|
|
29
|
-
resetField: VoidFunction;
|
|
30
|
-
hideErrorMessage?: boolean;
|
|
31
|
-
isTree?: boolean;
|
|
32
|
-
multiline?: boolean;
|
|
33
|
-
}
|
|
34
|
-
export declare function ComboBoxInput<O, V extends Value>(props: ComboBoxInputProps<O, V>): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
35
|
-
export {};
|
|
36
|
-
//# sourceMappingURL=ComboBoxInput.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ComboBoxInput.d.ts","sourceRoot":"","sources":["../../../src/inputs/internal/ComboBoxInput.tsx"],"names":[],"mappings":"AAAA,OAAc,EAEZ,mBAAmB,EAEnB,mBAAmB,EACnB,gBAAgB,EAChB,SAAS,EAEV,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,EAAE,sBAAsB,EAA0B,6CAA2C;AAMpG,OAAO,EAAE,KAAK,EAAE,iBAAyB;AAGzC,UAAU,kBAAkB,CAAC,CAAC,EAAE,CAAC,SAAS,KAAK,CAAE,SAAQ,sBAAsB;IAC7E,WAAW,EAAE,GAAG,CAAC;IACjB,SAAS,EAAE,gBAAgB,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IACtD,UAAU,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAClD,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IACpD,YAAY,EAAE,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACtD,UAAU,CAAC,EAAE,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACrD,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IACxB,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,CAAC,EAAE,CAAC;IACrB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IAC9B,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC;IACnC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,UAAU,EAAE,YAAY,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,oDAwNhF"}
|
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ComboBoxInput = ComboBoxInput;
|
|
4
|
-
const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
5
|
-
const react_1 = require("react");
|
|
6
|
-
const react_aria_1 = require("react-aria");
|
|
7
|
-
const components_1 = require("../../components");
|
|
8
|
-
const PresentationContext_1 = require("../../components/PresentationContext");
|
|
9
|
-
const Css_1 = require("../../Css");
|
|
10
|
-
const useGrowingTextField_1 = require("../hooks/useGrowingTextField");
|
|
11
|
-
const TextFieldBase_1 = require("../TextFieldBase");
|
|
12
|
-
const TreeSelectField_1 = require("../TreeSelectField/TreeSelectField");
|
|
13
|
-
const utils_1 = require("../TreeSelectField/utils");
|
|
14
|
-
const utils_2 = require("../../utils");
|
|
15
|
-
function ComboBoxInput(props) {
|
|
16
|
-
const { inputProps, buttonProps, buttonRef, errorMsg, state, fieldDecoration, onBlur, onFocus, selectedOptions, selectedOptionsLabels, getOptionValue, getOptionLabel, sizeToContent = false, contrast = false, nothingSelectedText, resetField, isTree, listBoxRef, inputRef, inputWrapRef, multiline = false, ...otherProps } = props;
|
|
17
|
-
const { wrap = false } = (0, PresentationContext_1.usePresentationContext)();
|
|
18
|
-
// Allow the field to wrap whether the caller has explicitly set `multiline=true` or the `PresentationContext.wrap=true`
|
|
19
|
-
const allowWrap = wrap || multiline;
|
|
20
|
-
const { collapsedKeys, setCollapsedKeys } = (0, TreeSelectField_1.useTreeSelectFieldProvider)();
|
|
21
|
-
const [isFocused, setIsFocused] = (0, react_1.useState)(false);
|
|
22
|
-
const isMultiSelect = state.selectionManager.selectionMode === "multiple";
|
|
23
|
-
const showNumSelection = isMultiSelect && state.selectionManager.selectedKeys.size > 1;
|
|
24
|
-
// Show selections as chips when using multiselect when unfocused
|
|
25
|
-
const showChipSelection = isMultiSelect && state.selectionManager.selectedKeys.size > 0;
|
|
26
|
-
// For MultiSelect only show the `fieldDecoration` when input is not in focus.
|
|
27
|
-
const showFieldDecoration = (!isMultiSelect || (isMultiSelect && !isFocused)) && fieldDecoration && selectedOptions.length === 1;
|
|
28
|
-
const multilineProps = allowWrap ? { textAreaMinHeight: 0, multiline: true } : {};
|
|
29
|
-
const chipLabels = isTree ? selectedOptionsLabels || [] : selectedOptions.map((o) => getOptionLabel(o));
|
|
30
|
-
(0, useGrowingTextField_1.useGrowingTextField)({
|
|
31
|
-
// This says: When using a multiselect, then only enable the growing textfield when we are focused on it.
|
|
32
|
-
// Because otherwise, we're not displaying the input element that dictates the height (we're displaying <Chips/>). This would cause incorrect calculations
|
|
33
|
-
disabled: (isMultiSelect && (!allowWrap || !isFocused)) || (!isMultiSelect && !allowWrap),
|
|
34
|
-
inputRef,
|
|
35
|
-
inputWrapRef,
|
|
36
|
-
value: inputProps.value,
|
|
37
|
-
});
|
|
38
|
-
return ((0, jsx_runtime_1.jsx)(TextFieldBase_1.TextFieldBase, { ...otherProps, ...multilineProps, unfocusedPlaceholder: showChipSelection && (0, jsx_runtime_1.jsx)(components_1.Chips, { compact: otherProps.compact, values: chipLabels, wrap: allowWrap }), inputRef: inputRef, inputWrapRef: inputWrapRef, errorMsg: errorMsg, contrast: contrast, xss: otherProps.labelStyle !== "inline" && !inputProps.readOnly ? Css_1.Css.fw5.$ : {}, startAdornment: (showNumSelection && ((0, jsx_runtime_1.jsx)(components_1.Tooltip, { title: (0, jsx_runtime_1.jsx)(SelectedOptionBullets, { labels: chipLabels }), children: (0, jsx_runtime_1.jsx)("span", { css: Css_1.Css.wPx(16).hPx(16).fs0.br100.bgBlue700.white.tinySb.df.aic.jcc.$, "data-testid": "selectedOptionsCount", children: isTree ? selectedOptionsLabels?.length : state.selectionManager.selectedKeys.size }) }))) ||
|
|
39
|
-
(showFieldDecoration && fieldDecoration(selectedOptions[0])), endAdornment: !inputProps.readOnly && ((0, jsx_runtime_1.jsx)("button", { ...buttonProps, disabled: inputProps.disabled, ref: buttonRef, css: {
|
|
40
|
-
...Css_1.Css.br4.outline0.gray700.if(contrast).gray400.$,
|
|
41
|
-
...(inputProps.disabled ? Css_1.Css.cursorNotAllowed.gray400.if(contrast).gray600.$ : {}),
|
|
42
|
-
}, "data-testid": "toggleListBox", children: (0, jsx_runtime_1.jsx)(components_1.Icon, { icon: state.isOpen ? "chevronUp" : "chevronDown" }) })), inputProps: {
|
|
43
|
-
...(0, react_aria_1.mergeProps)(inputProps, { "aria-invalid": Boolean(errorMsg), onInput: () => state.open() }),
|
|
44
|
-
// Not merging the following as we want them to overwrite existing events
|
|
45
|
-
...{
|
|
46
|
-
onKeyDown: (e) => {
|
|
47
|
-
// We need to do some custom logic when using MultiSelect, as react-aria/stately Combobox doesn't support multiselect out of the box.
|
|
48
|
-
if (isMultiSelect) {
|
|
49
|
-
if (isTree) {
|
|
50
|
-
const item = state.collection.getItem(state.selectionManager.focusedKey);
|
|
51
|
-
if (item && (e.key === "ArrowRight" || e.key === "ArrowLeft")) {
|
|
52
|
-
if (!(0, utils_1.isLeveledNode)(item))
|
|
53
|
-
return;
|
|
54
|
-
const leveledOption = item.value;
|
|
55
|
-
if (!leveledOption)
|
|
56
|
-
return;
|
|
57
|
-
const [option] = leveledOption;
|
|
58
|
-
e.stopPropagation();
|
|
59
|
-
e.preventDefault();
|
|
60
|
-
if (option && option.children && option.children.length > 0) {
|
|
61
|
-
if (collapsedKeys.includes(item.key) && e.key === "ArrowRight") {
|
|
62
|
-
setCollapsedKeys((prevKeys) => prevKeys.filter((k) => k !== item.key));
|
|
63
|
-
}
|
|
64
|
-
else if (!collapsedKeys.includes(item.key) && e.key === "ArrowLeft") {
|
|
65
|
-
setCollapsedKeys((prevKeys) => [...prevKeys, item.key]);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
// Enter should toggle the focused item.
|
|
72
|
-
if (e.key === "Enter") {
|
|
73
|
-
// Prevent form submissions if menu is open.
|
|
74
|
-
if (state.isOpen) {
|
|
75
|
-
e.preventDefault();
|
|
76
|
-
}
|
|
77
|
-
state.selectionManager.toggleSelection(state.selectionManager.focusedKey);
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
// By default, the Escape key would "revert" changes,
|
|
81
|
-
// but we just want to close the menu and leave the reset of the field state as is.
|
|
82
|
-
if (e.key === "Escape") {
|
|
83
|
-
state.close();
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
// Handle single selection Escape key press
|
|
88
|
-
// When a user hits `Escape`, then react-aria calls `state.revert`, which uses `state.selectedKey` to
|
|
89
|
-
// reset the field to its previous value. However, because we use a the Multiple Selection State manager,
|
|
90
|
-
// then our `state.selectedKey` isn't set. So we need to properly reset the state ourselves.
|
|
91
|
-
if (e.key === "Escape") {
|
|
92
|
-
state.close();
|
|
93
|
-
resetField();
|
|
94
|
-
return;
|
|
95
|
-
}
|
|
96
|
-
inputProps.onKeyDown && inputProps.onKeyDown(e);
|
|
97
|
-
},
|
|
98
|
-
onChange: (e) => {
|
|
99
|
-
// Prevent user from entering any content that has new line characters.
|
|
100
|
-
const target = e.target;
|
|
101
|
-
target.value = target.value.replace(/[\n\r]/g, "");
|
|
102
|
-
// Call existing onChange handler if any.
|
|
103
|
-
inputProps.onChange && inputProps.onChange(e);
|
|
104
|
-
},
|
|
105
|
-
onBlur: (e) => {
|
|
106
|
-
// Do not call onBlur if readOnly or interacting within the input wrapper (such as the menu trigger button), or anything within the listbox.
|
|
107
|
-
if (inputProps.readOnly ||
|
|
108
|
-
(props.inputWrapRef.current && props.inputWrapRef.current.contains(e.relatedTarget)) ||
|
|
109
|
-
(props.listBoxRef?.current && props.listBoxRef.current.contains(e.relatedTarget))) {
|
|
110
|
-
return;
|
|
111
|
-
}
|
|
112
|
-
// We purposefully override onBlur here instead of using mergeProps, b/c inputProps.onBlur
|
|
113
|
-
// goes into useComboBox's onBlur, which calls setFocused(false), which in useComboBoxState
|
|
114
|
-
// detects a) there is no props.selectedKey (b/c we don't pass it), and b) there is an
|
|
115
|
-
// `inputValue`, so it thinks it needs to call `resetInputValue()`.
|
|
116
|
-
setIsFocused(false);
|
|
117
|
-
(0, utils_2.maybeCall)(onBlur);
|
|
118
|
-
state.close();
|
|
119
|
-
// Always call `resetField` onBlur, this ensures the field's `input.value` resets
|
|
120
|
-
// to what it should be in case it doesn't currently match.
|
|
121
|
-
resetField();
|
|
122
|
-
},
|
|
123
|
-
onFocus: () => {
|
|
124
|
-
if (inputProps.readOnly)
|
|
125
|
-
return;
|
|
126
|
-
setIsFocused(true);
|
|
127
|
-
(0, utils_2.maybeCall)(onFocus);
|
|
128
|
-
},
|
|
129
|
-
onClick: () => {
|
|
130
|
-
if (inputProps.readOnly)
|
|
131
|
-
return;
|
|
132
|
-
buttonRef.current?.click();
|
|
133
|
-
},
|
|
134
|
-
size:
|
|
135
|
-
// If sizeToContent, then, in order of precedence, base it of from:
|
|
136
|
-
// 1. input's value if any
|
|
137
|
-
// 2. If is MultiSelect and only one option is chosen, then use the length of that option to define the width to avoid size jumping on blur.
|
|
138
|
-
// 3. Use `nothingSelectedText`
|
|
139
|
-
// 4. Default to "1"
|
|
140
|
-
// And do not allow it to grow past a size of 20.
|
|
141
|
-
// TODO: Combine logic to determine the input's value. Similar logic is used in ComboBoxBase, though it is intertwined with other state logic. Such as when to open/close menu, or filter the options within that menu, etc...
|
|
142
|
-
sizeToContent
|
|
143
|
-
? Math.min(String(inputProps.value ||
|
|
144
|
-
(isMultiSelect && selectedOptions.length === 1 && getOptionLabel(selectedOptions[0])) ||
|
|
145
|
-
nothingSelectedText ||
|
|
146
|
-
"").length || 1, 20)
|
|
147
|
-
: undefined,
|
|
148
|
-
},
|
|
149
|
-
} }));
|
|
150
|
-
}
|
|
151
|
-
function SelectedOptionBullets({ labels = [] }) {
|
|
152
|
-
return (0, jsx_runtime_1.jsx)("div", { children: labels?.map((label) => (0, jsx_runtime_1.jsx)("li", { children: label }, label)) });
|
|
153
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import React, { Key, MutableRefObject } from "react";
|
|
2
|
-
import { SelectState } from "react-stately";
|
|
3
|
-
interface ListBoxProps<O, V extends Key> {
|
|
4
|
-
listBoxRef: MutableRefObject<HTMLDivElement | null>;
|
|
5
|
-
state: SelectState<O>;
|
|
6
|
-
selectedOptions?: O[];
|
|
7
|
-
getOptionLabel: (opt: O) => string;
|
|
8
|
-
getOptionValue: (opt: O) => V;
|
|
9
|
-
contrast?: boolean;
|
|
10
|
-
horizontalLayout?: boolean;
|
|
11
|
-
positionProps: React.HTMLAttributes<Element>;
|
|
12
|
-
loading?: boolean | (() => JSX.Element);
|
|
13
|
-
disabledOptionsWithReasons?: Record<string, string | undefined>;
|
|
14
|
-
isTree?: boolean;
|
|
15
|
-
allowCollapsing?: boolean;
|
|
16
|
-
}
|
|
17
|
-
/** A ListBox is an internal component used by SelectField and MultiSelectField to display the list of options */
|
|
18
|
-
export declare function ListBox<O, V extends Key>(props: ListBoxProps<O, V>): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
19
|
-
export {};
|
|
20
|
-
//# sourceMappingURL=ListBox.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ListBox.d.ts","sourceRoot":"","sources":["../../../src/inputs/internal/ListBox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAA+B,MAAM,OAAO,CAAC;AAElF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAO5C,UAAU,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG;IACrC,UAAU,EAAE,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACpD,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACtB,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC;IACtB,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC;IACnC,cAAc,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC;IACxC,0BAA0B,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAChE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,iHAAiH;AACjH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,oDA+HlE"}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ListBox = ListBox;
|
|
4
|
-
const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
5
|
-
const react_1 = require("react");
|
|
6
|
-
const react_aria_1 = require("react-aria");
|
|
7
|
-
const Css_1 = require("../../Css");
|
|
8
|
-
const constants_1 = require("./constants");
|
|
9
|
-
const ListBoxSection_1 = require("./ListBoxSection");
|
|
10
|
-
const ListBoxToggleChip_1 = require("./ListBoxToggleChip");
|
|
11
|
-
const VirtualizedOptions_1 = require("./VirtualizedOptions");
|
|
12
|
-
/** A ListBox is an internal component used by SelectField and MultiSelectField to display the list of options */
|
|
13
|
-
function ListBox(props) {
|
|
14
|
-
const { state, listBoxRef, selectedOptions = [], getOptionLabel, getOptionValue, contrast = false, positionProps, horizontalLayout = false, loading, disabledOptionsWithReasons = {}, isTree, allowCollapsing, } = props;
|
|
15
|
-
const { listBoxProps } = (0, react_aria_1.useListBox)({ disallowEmptySelection: true, ...props }, state, listBoxRef);
|
|
16
|
-
const positionMaxHeight = positionProps.style?.maxHeight;
|
|
17
|
-
// The popoverMaxHeight will be based on the value defined by the positionProps returned from `useOverlayPosition` (which will always be a defined as a `number` based on React-Aria's `calculatePosition`).
|
|
18
|
-
// If `maxHeight` is set use that, otherwise use `maxPopoverHeight` as a default, per UX guidelines.
|
|
19
|
-
// (`positionMaxHeight` should always be set and defined as a number, but we need to do these type checks to make TS happy)
|
|
20
|
-
const popoverMaxHeight = positionMaxHeight && typeof positionMaxHeight === "number"
|
|
21
|
-
? Math.min(positionMaxHeight, maxPopoverHeight)
|
|
22
|
-
: maxPopoverHeight;
|
|
23
|
-
const [popoverHeight, setPopoverHeight] = (0, react_1.useState)(popoverMaxHeight);
|
|
24
|
-
const isMultiSelect = state.selectionManager.selectionMode === "multiple";
|
|
25
|
-
const firstItem = state.collection.at(0);
|
|
26
|
-
const hasSections = firstItem && firstItem.type === "section";
|
|
27
|
-
// Create a reference for measuring the MultiSelect's selected list's height. Used for re-evaluating `popoverHeight`.
|
|
28
|
-
const selectedList = (0, react_1.useRef)(null);
|
|
29
|
-
const firstRender = (0, react_1.useRef)(true);
|
|
30
|
-
// Keep track of the virtuoso list height to properly update the ListBox's height.
|
|
31
|
-
// Using a ref, this itself should not trigger a rerender, only `popoverHeight` changes will trigger a rerender.
|
|
32
|
-
const virtuosoListHeight = (0, react_1.useRef)(0);
|
|
33
|
-
const onListHeightChange = (listHeight) => {
|
|
34
|
-
virtuosoListHeight.current = listHeight;
|
|
35
|
-
// The "listHeight" is only the list of options.
|
|
36
|
-
// For multiple selects we need to also account for the height of the list of currently selected elements when re-evaluating.
|
|
37
|
-
// Using `offsetHeight` to account for borders
|
|
38
|
-
const height = (selectedList.current?.offsetHeight || 0) + listHeight;
|
|
39
|
-
// Using Math.min to choose between the smaller height, either the total height of the List (`height` arg), or the maximum height defined by the space allotted on screen or our hard coded max.
|
|
40
|
-
// If there are ListBoxSections, then we assume it is the persistent section with a single item and account for that height.
|
|
41
|
-
setPopoverHeight(Math.min(popoverMaxHeight, hasSections ? height + constants_1.persistentItemHeight + constants_1.sectionSeparatorHeight : height));
|
|
42
|
-
};
|
|
43
|
-
(0, react_1.useEffect)(() => {
|
|
44
|
-
// Reevaluate the list height when introducing or removing the MultiSelect's options list.
|
|
45
|
-
// Do not call `onListHeightChange` on the first render. Only when the selectedKeys size has actually changed between empty and not empty.
|
|
46
|
-
if (!firstRender.current &&
|
|
47
|
-
isMultiSelect &&
|
|
48
|
-
(state.selectionManager.selectedKeys.size === 0 || state.selectionManager.selectedKeys.size === 1)) {
|
|
49
|
-
onListHeightChange(virtuosoListHeight.current);
|
|
50
|
-
}
|
|
51
|
-
firstRender.current = false;
|
|
52
|
-
},
|
|
53
|
-
// TODO: validate this eslint-disable. It was automatically ignored as part of https://app.shortcut.com/homebound-team/story/40033/enable-react-hooks-exhaustive-deps-for-react-projects
|
|
54
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
55
|
-
[state.selectionManager.selectedKeys.size]);
|
|
56
|
-
return ((0, jsx_runtime_1.jsxs)("div", { css: {
|
|
57
|
-
// If `horizontalLayout`, then that means `labelStyle === "left"`. In this case the label the the field both take 50% of the horizontal space.
|
|
58
|
-
// Add `w50` in that case to ensure the ListBox is only the width of the field. If the width definitions ever change, we need to update here as well.
|
|
59
|
-
...Css_1.Css.bgWhite.br4.w100.bshBasic.hPx(popoverHeight).df.fdc.if(contrast).bgGray700.if(horizontalLayout).w50.$,
|
|
60
|
-
"&:hover": Css_1.Css.bshHover.$,
|
|
61
|
-
}, ref: listBoxRef, ...listBoxProps, children: [isMultiSelect && !isTree && state.selectionManager.selectedKeys.size > 0 && ((0, jsx_runtime_1.jsx)("ul", { css: Css_1.Css.listReset.pt2.pl2.pb1.pr1.df.bb.bcGray200.add("flexWrap", "wrap").maxh("50%").oa.$, ref: selectedList, children: selectedOptions.map((o) => ((0, jsx_runtime_1.jsx)(ListBoxToggleChip_1.ListBoxToggleChip, { state: state, option: o, getOptionValue: getOptionValue, getOptionLabel: getOptionLabel, disabled: state.disabledKeys.has(getOptionValue(o)) }, getOptionValue(o)))) })), (0, jsx_runtime_1.jsx)("ul", { css: Css_1.Css.listReset.fg1.$, children: hasSections ? ([...state.collection].map((section) => ((0, jsx_runtime_1.jsx)(ListBoxSection_1.ListBoxSection, { section: section, state: state, contrast: contrast, onListHeightChange: onListHeightChange, popoverHeight: popoverHeight,
|
|
62
|
-
// Only scroll on focus if using VirtualFocus (used for ComboBoxState (SelectField), but not SelectState (ChipSelectField))
|
|
63
|
-
scrollOnFocus: props.shouldUseVirtualFocus, disabledOptionsWithReasons: disabledOptionsWithReasons }, section.key)))) : ((0, jsx_runtime_1.jsx)(VirtualizedOptions_1.VirtualizedOptions, { state: state, items: [...state.collection], onListHeightChange: onListHeightChange, contrast: contrast,
|
|
64
|
-
// Only scroll on focus if using VirtualFocus (used for ComboBoxState (SelectField), but not SelectState (ChipSelectField))
|
|
65
|
-
scrollOnFocus: props.shouldUseVirtualFocus, loading: loading, disabledOptionsWithReasons: disabledOptionsWithReasons, isTree: isTree, allowCollapsing: allowCollapsing })) })] }));
|
|
66
|
-
}
|
|
67
|
-
// UX specified maximum height for a ListBox (in pixels)
|
|
68
|
-
const maxPopoverHeight = 512;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ListBoxChip.d.ts","sourceRoot":"","sources":["../../../src/inputs/internal/ListBoxChip.tsx"],"names":[],"mappings":"AAGA,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE,gBAAgB,oDAWtD"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ListBoxChip = ListBoxChip;
|
|
4
|
-
const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
5
|
-
const PresentationContext_1 = require("../../components/PresentationContext");
|
|
6
|
-
const Css_1 = require("../../Css");
|
|
7
|
-
function ListBoxChip({ label }) {
|
|
8
|
-
const { fieldProps } = (0, PresentationContext_1.usePresentationContext)();
|
|
9
|
-
return ((0, jsx_runtime_1.jsx)("span", { css: Css_1.Css[fieldProps?.typeScale ?? "sm"].tal.bgGray300.gray900.br16.pxPx(10).pyPx(2).lineClamp1.wbba.$, title: label, children: label }));
|
|
10
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Node } from "@react-types/shared";
|
|
2
|
-
import { SelectState } from "react-stately";
|
|
3
|
-
interface ListBoxSectionProps<O> {
|
|
4
|
-
section: Node<O>;
|
|
5
|
-
state: SelectState<O>;
|
|
6
|
-
contrast: boolean;
|
|
7
|
-
onListHeightChange: (height: number) => void;
|
|
8
|
-
popoverHeight: number;
|
|
9
|
-
scrollOnFocus?: boolean;
|
|
10
|
-
disabledOptionsWithReasons: Record<string, string | undefined>;
|
|
11
|
-
}
|
|
12
|
-
export declare function ListBoxSection<O>(props: ListBoxSectionProps<O>): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
13
|
-
export {};
|
|
14
|
-
//# sourceMappingURL=ListBoxSection.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ListBoxSection.d.ts","sourceRoot":"","sources":["../../../src/inputs/internal/ListBoxSection.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAM5C,UAAU,mBAAmB,CAAC,CAAC;IAC7B,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,0BAA0B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;CAChE;AAID,wBAAgB,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC,CAAC,oDA2C9D"}
|