@elliemae/ds-data-table 2.2.1 → 2.3.0-alpha.4
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/cjs/DataTable.js +63 -57
- package/cjs/DataTable.js.map +7 -0
- package/cjs/DataTableContext.js +52 -26
- package/cjs/DataTableContext.js.map +7 -0
- package/cjs/DataTableSchema.js +151 -113
- package/cjs/DataTableSchema.js.map +7 -0
- package/cjs/addons/Columns/ColumnAction/ColumnAction.js +40 -14
- package/cjs/addons/Columns/ColumnAction/ColumnAction.js.map +7 -0
- package/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js +52 -52
- package/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +7 -0
- package/cjs/addons/Columns/ColumnExpand/ColumnExpand.js +124 -154
- package/cjs/addons/Columns/ColumnExpand/ColumnExpand.js.map +7 -0
- package/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +63 -105
- package/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +7 -0
- package/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +62 -81
- package/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +7 -0
- package/cjs/addons/Columns/index.js +51 -18
- package/cjs/addons/Columns/index.js.map +7 -0
- package/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +57 -85
- package/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +7 -0
- package/cjs/addons/Editables/DateEditableCell/DateEditableCell.js +51 -73
- package/cjs/addons/Editables/DateEditableCell/DateEditableCell.js.map +7 -0
- package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js +67 -88
- package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js.map +7 -0
- package/cjs/addons/Editables/index.js +39 -14
- package/cjs/addons/Editables/index.js.map +7 -0
- package/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js +87 -137
- package/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js.map +7 -0
- package/cjs/addons/Filters/Components/DateRangeFilter/index.js +64 -88
- package/cjs/addons/Filters/Components/DateRangeFilter/index.js.map +7 -0
- package/cjs/addons/Filters/Components/DateSwitcherFilter/index.js +72 -97
- package/cjs/addons/Filters/Components/DateSwitcherFilter/index.js.map +7 -0
- package/cjs/addons/Filters/Components/NumberRangeFilter/index.js +89 -141
- package/cjs/addons/Filters/Components/NumberRangeFilter/index.js.map +7 -0
- package/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +68 -117
- package/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +7 -0
- package/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +59 -75
- package/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +7 -0
- package/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +59 -75
- package/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +7 -0
- package/cjs/addons/Filters/Components/SelectFilter/components.js +86 -36
- package/cjs/addons/Filters/Components/SelectFilter/components.js.map +7 -0
- package/cjs/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js +67 -57
- package/cjs/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js.map +7 -0
- package/cjs/addons/Filters/Components/SelectFilter/utils.js +40 -46
- package/cjs/addons/Filters/Components/SelectFilter/utils.js.map +7 -0
- package/cjs/addons/Filters/Components/SingleDateFilter/index.js +64 -80
- package/cjs/addons/Filters/Components/SingleDateFilter/index.js.map +7 -0
- package/cjs/addons/Filters/Components/index.js +34 -21
- package/cjs/addons/Filters/Components/index.js.map +7 -0
- package/cjs/addons/Filters/index.js +28 -21
- package/cjs/addons/Filters/index.js.map +7 -0
- package/cjs/addons/Pagination/Pagination.js +45 -37
- package/cjs/addons/Pagination/Pagination.js.map +7 -0
- package/cjs/addons/Pagination/index.js +35 -9
- package/cjs/addons/Pagination/index.js.map +7 -0
- package/cjs/configs/constants.js +74 -47
- package/cjs/configs/constants.js.map +7 -0
- package/cjs/configs/fixedSizes.js +34 -6
- package/cjs/configs/fixedSizes.js.map +7 -0
- package/cjs/configs/index.js +32 -22
- package/cjs/configs/index.js.map +7 -0
- package/cjs/configs/useDatatableConfig.js +72 -59
- package/cjs/configs/useDatatableConfig.js.map +7 -0
- package/cjs/configs/usePaginationConfig.js +61 -23
- package/cjs/configs/usePaginationConfig.js.map +7 -0
- package/cjs/configs/useRowFlattenization.js +50 -36
- package/cjs/configs/useRowFlattenization.js.map +7 -0
- package/cjs/configs/useTableColsWithAddons.js +75 -62
- package/cjs/configs/useTableColsWithAddons.js.map +7 -0
- package/cjs/configs/zIndexInternalConfig.js +34 -6
- package/cjs/configs/zIndexInternalConfig.js.map +7 -0
- package/cjs/exported-related/EditableCell.js +64 -54
- package/cjs/exported-related/EditableCell.js.map +7 -0
- package/cjs/exported-related/FilterPopover.js +103 -137
- package/cjs/exported-related/FilterPopover.js.map +7 -0
- package/cjs/exported-related/FilterTypes.js +42 -14
- package/cjs/exported-related/FilterTypes.js.map +7 -0
- package/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js +50 -27
- package/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js.map +7 -0
- package/cjs/exported-related/Filters/currencyRangeFilterFn.js +44 -19
- package/cjs/exported-related/Filters/currencyRangeFilterFn.js.map +7 -0
- package/cjs/exported-related/Filters/dateRangeFilterFn.js +37 -45
- package/cjs/exported-related/Filters/dateRangeFilterFn.js.map +7 -0
- package/cjs/exported-related/Filters/dateSwitcherFilterFn.js +37 -12
- package/cjs/exported-related/Filters/dateSwitcherFilterFn.js.map +7 -0
- package/cjs/exported-related/Filters/index.js +34 -21
- package/cjs/exported-related/Filters/index.js.map +7 -0
- package/cjs/exported-related/Filters/multiSelectFilterFn.js +35 -14
- package/cjs/exported-related/Filters/multiSelectFilterFn.js.map +7 -0
- package/cjs/exported-related/Filters/numberRangeFilterFn.js +36 -13
- package/cjs/exported-related/Filters/numberRangeFilterFn.js.map +7 -0
- package/cjs/exported-related/Filters/singleDateFilterFn.js +37 -45
- package/cjs/exported-related/Filters/singleDateFilterFn.js.map +7 -0
- package/cjs/exported-related/Filters/singleSelectFilterFn.js +35 -12
- package/cjs/exported-related/Filters/singleSelectFilterFn.js.map +7 -0
- package/cjs/exported-related/Filters/types.js +27 -2
- package/cjs/exported-related/Filters/types.js.map +7 -0
- package/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js +107 -109
- package/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +7 -0
- package/cjs/exported-related/RowRenderer/index.js +77 -95
- package/cjs/exported-related/RowRenderer/index.js.map +7 -0
- package/cjs/exported-related/RowRenderer/useRowRendererHandlers.js +71 -100
- package/cjs/exported-related/RowRenderer/useRowRendererHandlers.js.map +7 -0
- package/cjs/exported-related/RowRenderer/useRowRendererProperties.js +51 -42
- package/cjs/exported-related/RowRenderer/useRowRendererProperties.js.map +7 -0
- package/cjs/exported-related/RowRenderer/useRowStyle.js +47 -35
- package/cjs/exported-related/RowRenderer/useRowStyle.js.map +7 -0
- package/cjs/exported-related/RowVariants.js +43 -15
- package/cjs/exported-related/RowVariants.js.map +7 -0
- package/cjs/exported-related/Toolbar/Toolbar.js +103 -80
- package/cjs/exported-related/Toolbar/Toolbar.js.map +7 -0
- package/cjs/exported-related/Toolbar/index.js +35 -9
- package/cjs/exported-related/Toolbar/index.js.map +7 -0
- package/cjs/exported-related/groupBy.js +43 -25
- package/cjs/exported-related/groupBy.js.map +7 -0
- package/cjs/exported-related/index.js +44 -35
- package/cjs/exported-related/index.js.map +7 -0
- package/cjs/helpers/addCellData.js +43 -32
- package/cjs/helpers/addCellData.js.map +7 -0
- package/cjs/helpers/cellPadding.js +44 -27
- package/cjs/helpers/cellPadding.js.map +7 -0
- package/cjs/helpers/columnsToGrid.js +41 -17
- package/cjs/helpers/columnsToGrid.js.map +7 -0
- package/cjs/helpers/getIdFromUniqueRowAccessor.js +38 -20
- package/cjs/helpers/getIdFromUniqueRowAccessor.js.map +7 -0
- package/cjs/helpers/index.js +33 -20
- package/cjs/helpers/index.js.map +7 -0
- package/cjs/helpers/refs-helpers.js +41 -22
- package/cjs/helpers/refs-helpers.js.map +7 -0
- package/cjs/helpers/sizeToCss.js +35 -7
- package/cjs/helpers/sizeToCss.js.map +7 -0
- package/cjs/hooks/useRecoverFocusCol.js +41 -21
- package/cjs/hooks/useRecoverFocusCol.js.map +7 -0
- package/cjs/hooks/useRecoverFocusRow.js +37 -14
- package/cjs/hooks/useRecoverFocusRow.js.map +7 -0
- package/cjs/index.js +29 -38
- package/cjs/index.js.map +7 -0
- package/cjs/parts/Cells/Cell.js +95 -105
- package/cjs/parts/Cells/Cell.js.map +7 -0
- package/cjs/parts/Cells/index.js +83 -76
- package/cjs/parts/Cells/index.js.map +7 -0
- package/cjs/parts/Cells/useCellStyle.js +47 -27
- package/cjs/parts/Cells/useCellStyle.js.map +7 -0
- package/cjs/parts/DnDHandle.js +61 -73
- package/cjs/parts/DnDHandle.js.map +7 -0
- package/cjs/parts/DropIndicator.js +77 -68
- package/cjs/parts/DropIndicator.js.map +7 -0
- package/cjs/parts/EmptyContent.js +93 -58
- package/cjs/parts/EmptyContent.js.map +7 -0
- package/cjs/parts/FilterBar/FiltersBar.js +82 -115
- package/cjs/parts/FilterBar/FiltersBar.js.map +7 -0
- package/cjs/parts/FilterBar/components/DateRangePill.js +57 -40
- package/cjs/parts/FilterBar/components/DateRangePill.js.map +7 -0
- package/cjs/parts/FilterBar/components/DateSwitcherPill.js +57 -40
- package/cjs/parts/FilterBar/components/DateSwitcherPill.js.map +7 -0
- package/cjs/parts/FilterBar/components/MultiSelectPill.js +57 -42
- package/cjs/parts/FilterBar/components/MultiSelectPill.js.map +7 -0
- package/cjs/parts/FilterBar/components/NumberRangePill.js +56 -39
- package/cjs/parts/FilterBar/components/NumberRangePill.js.map +7 -0
- package/cjs/parts/FilterBar/components/SelectPill.js +55 -36
- package/cjs/parts/FilterBar/components/SelectPill.js.map +7 -0
- package/cjs/parts/FilterBar/components/SingleDatePill.js +56 -38
- package/cjs/parts/FilterBar/components/SingleDatePill.js.map +7 -0
- package/cjs/parts/FilterBar/components/index.js +33 -19
- package/cjs/parts/FilterBar/components/index.js.map +7 -0
- package/cjs/parts/FilterBar/index.js +35 -9
- package/cjs/parts/FilterBar/index.js.map +7 -0
- package/cjs/parts/FilterBar/styled.js +49 -23
- package/cjs/parts/FilterBar/styled.js.map +7 -0
- package/cjs/parts/FilterBar/types.js +27 -2
- package/cjs/parts/FilterBar/types.js.map +7 -0
- package/cjs/parts/Filters/index.js +69 -108
- package/cjs/parts/Filters/index.js.map +7 -0
- package/cjs/parts/Footer.js +39 -21
- package/cjs/parts/Footer.js.map +7 -0
- package/cjs/parts/Headers/EmptyChildrenGroup.js +42 -20
- package/cjs/parts/Headers/EmptyChildrenGroup.js.map +7 -0
- package/cjs/parts/Headers/HeaderCell.js +114 -159
- package/cjs/parts/Headers/HeaderCell.js.map +7 -0
- package/cjs/parts/Headers/HeaderCellGroup.js +94 -93
- package/cjs/parts/Headers/HeaderCellGroup.js.map +7 -0
- package/cjs/parts/Headers/HeaderCellTitle.js +50 -77
- package/cjs/parts/Headers/HeaderCellTitle.js.map +7 -0
- package/cjs/parts/Headers/HeaderResizer.js +74 -94
- package/cjs/parts/Headers/HeaderResizer.js.map +7 -0
- package/cjs/parts/Headers/RequiredDot.js +39 -21
- package/cjs/parts/Headers/RequiredDot.js.map +7 -0
- package/cjs/parts/Headers/index.js +58 -42
- package/cjs/parts/Headers/index.js.map +7 -0
- package/cjs/parts/Headers/useHeaderCellConfig.js +48 -25
- package/cjs/parts/Headers/useHeaderCellConfig.js.map +7 -0
- package/cjs/parts/Headers/useHeaderCellHandlers.js +87 -76
- package/cjs/parts/Headers/useHeaderCellHandlers.js.map +7 -0
- package/cjs/parts/HoC/SortableItemContext.js +44 -19
- package/cjs/parts/HoC/SortableItemContext.js.map +7 -0
- package/cjs/parts/HoC/withConditionalDnDColumnContext.js +86 -101
- package/cjs/parts/HoC/withConditionalDnDColumnContext.js.map +7 -0
- package/cjs/parts/HoC/withConditionalDnDRowContext.js +90 -93
- package/cjs/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
- package/cjs/parts/HoC/withConditionalDnDSortableContext.js +50 -43
- package/cjs/parts/HoC/withConditionalDnDSortableContext.js.map +7 -0
- package/cjs/parts/HoC/withDnDSortableColumnContext.js +60 -58
- package/cjs/parts/HoC/withDnDSortableColumnContext.js.map +7 -0
- package/cjs/parts/HoC/withDnDSortableRowContext.js +59 -59
- package/cjs/parts/HoC/withDnDSortableRowContext.js.map +7 -0
- package/cjs/parts/Loader.js +50 -30
- package/cjs/parts/Loader.js.map +7 -0
- package/cjs/parts/Row.js +64 -59
- package/cjs/parts/Row.js.map +7 -0
- package/cjs/parts/RowLoading.js +53 -52
- package/cjs/parts/RowLoading.js.map +7 -0
- package/cjs/parts/RowVariants/RowVariantHeader.js +79 -95
- package/cjs/parts/RowVariants/RowVariantHeader.js.map +7 -0
- package/cjs/parts/RowVariants/RowVariantPrimary.js +55 -36
- package/cjs/parts/RowVariants/RowVariantPrimary.js.map +7 -0
- package/cjs/parts/RowVariants/RowVariantSecondary.js +56 -37
- package/cjs/parts/RowVariants/RowVariantSecondary.js.map +7 -0
- package/cjs/parts/RowVariants/index.js +59 -77
- package/cjs/parts/RowVariants/index.js.map +7 -0
- package/cjs/parts/RowVariants/types.js +27 -2
- package/cjs/parts/RowVariants/types.js.map +7 -0
- package/cjs/parts/Rows.js +71 -68
- package/cjs/parts/Rows.js.map +7 -0
- package/cjs/parts/SortByCaret.js +44 -30
- package/cjs/parts/SortByCaret.js.map +7 -0
- package/cjs/parts/SortableHeaderCell.js +43 -38
- package/cjs/parts/SortableHeaderCell.js.map +7 -0
- package/cjs/parts/TableContent.js +68 -84
- package/cjs/parts/TableContent.js.map +7 -0
- package/cjs/parts/VirtualRowsList.js +74 -89
- package/cjs/parts/VirtualRowsList.js.map +7 -0
- package/cjs/parts/index.js +45 -19
- package/cjs/parts/index.js.map +7 -0
- package/cjs/prop-types.js +76 -56
- package/cjs/prop-types.js.map +7 -0
- package/cjs/redux/reducers/headersReducers/defaults.js +34 -6
- package/cjs/redux/reducers/headersReducers/defaults.js.map +7 -0
- package/cjs/redux/reducers/headersReducers/headersReducers.js +46 -23
- package/cjs/redux/reducers/headersReducers/headersReducers.js.map +7 -0
- package/cjs/redux/reducers/headersReducers/index.js +29 -14
- package/cjs/redux/reducers/headersReducers/index.js.map +7 -0
- package/cjs/redux/reducers/headersReducers/logic.js +42 -33
- package/cjs/redux/reducers/headersReducers/logic.js.map +7 -0
- package/cjs/redux/reducers/headersReducers/useDispatchHeadersActions.js +40 -19
- package/cjs/redux/reducers/headersReducers/useDispatchHeadersActions.js.map +7 -0
- package/cjs/redux/reducers/index.js +46 -17
- package/cjs/redux/reducers/index.js.map +7 -0
- package/cjs/redux/reducers/rowsReducers/actions_types.js +47 -19
- package/cjs/redux/reducers/rowsReducers/actions_types.js.map +7 -0
- package/cjs/redux/reducers/rowsReducers/defaults.js +35 -7
- package/cjs/redux/reducers/rowsReducers/defaults.js.map +7 -0
- package/cjs/redux/reducers/rowsReducers/index.js +29 -20
- package/cjs/redux/reducers/rowsReducers/index.js.map +7 -0
- package/cjs/redux/reducers/rowsReducers/logic.js +41 -14
- package/cjs/redux/reducers/rowsReducers/logic.js.map +7 -0
- package/cjs/redux/reducers/rowsReducers/rowsReducer.js +58 -41
- package/cjs/redux/reducers/rowsReducers/rowsReducer.js.map +7 -0
- package/cjs/redux/reducers/rowsReducers/useDispatchRowsActions.js +48 -21
- package/cjs/redux/reducers/rowsReducers/useDispatchRowsActions.js.map +7 -0
- package/cjs/redux/storeConfig.js +36 -9
- package/cjs/redux/storeConfig.js.map +7 -0
- package/cjs/styled.js +295 -219
- package/cjs/styled.js.map +7 -0
- package/cjs/tests/utils/index.js +119 -0
- package/cjs/tests/utils/index.js.map +7 -0
- package/cjs/types/FunctionalHoC.js +27 -2
- package/cjs/types/FunctionalHoC.js.map +7 -0
- package/cjs/types/props.js +27 -2
- package/cjs/types/props.js.map +7 -0
- package/esm/DataTable.js +29 -42
- package/esm/DataTable.js.map +7 -0
- package/esm/DataTableContext.js +22 -19
- package/esm/DataTableContext.js.map +7 -0
- package/esm/DataTableSchema.js +110 -97
- package/esm/DataTableSchema.js.map +7 -0
- package/esm/addons/Columns/ColumnAction/ColumnAction.js +11 -10
- package/esm/addons/Columns/ColumnAction/ColumnAction.js.map +7 -0
- package/esm/addons/Columns/ColumnDragHandle/ColumnDragHandle.js +22 -43
- package/esm/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +7 -0
- package/esm/addons/Columns/ColumnExpand/ColumnExpand.js +83 -132
- package/esm/addons/Columns/ColumnExpand/ColumnExpand.js.map +7 -0
- package/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +30 -92
- package/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +7 -0
- package/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +32 -71
- package/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +7 -0
- package/esm/addons/Columns/index.js +22 -9
- package/esm/addons/Columns/index.js.map +7 -0
- package/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +23 -72
- package/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +7 -0
- package/esm/addons/Editables/DateEditableCell/DateEditableCell.js +19 -62
- package/esm/addons/Editables/DateEditableCell/DateEditableCell.js.map +7 -0
- package/esm/addons/Editables/TextEditableCell/TextEditableCell.js +35 -76
- package/esm/addons/Editables/TextEditableCell/TextEditableCell.js.map +7 -0
- package/esm/addons/Editables/index.js +9 -9
- package/esm/addons/Editables/index.js.map +7 -0
- package/esm/addons/Filters/Components/CurrencyRangeFilter/index.js +55 -124
- package/esm/addons/Filters/Components/CurrencyRangeFilter/index.js.map +7 -0
- package/esm/addons/Filters/Components/DateRangeFilter/index.js +33 -77
- package/esm/addons/Filters/Components/DateRangeFilter/index.js.map +7 -0
- package/esm/addons/Filters/Components/DateSwitcherFilter/index.js +44 -85
- package/esm/addons/Filters/Components/DateSwitcherFilter/index.js.map +7 -0
- package/esm/addons/Filters/Components/NumberRangeFilter/index.js +57 -128
- package/esm/addons/Filters/Components/NumberRangeFilter/index.js.map +7 -0
- package/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +35 -105
- package/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +7 -0
- package/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +30 -67
- package/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +7 -0
- package/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +30 -67
- package/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +7 -0
- package/esm/addons/Filters/Components/SelectFilter/components.js +57 -23
- package/esm/addons/Filters/Components/SelectFilter/components.js.map +7 -0
- package/esm/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js +38 -53
- package/esm/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js.map +7 -0
- package/esm/addons/Filters/Components/SelectFilter/utils.js +11 -41
- package/esm/addons/Filters/Components/SelectFilter/utils.js.map +7 -0
- package/esm/addons/Filters/Components/SingleDateFilter/index.js +31 -67
- package/esm/addons/Filters/Components/SingleDateFilter/index.js.map +7 -0
- package/esm/addons/Filters/Components/index.js +9 -7
- package/esm/addons/Filters/Components/index.js.map +7 -0
- package/esm/addons/Filters/index.js +3 -7
- package/esm/addons/Filters/index.js.map +7 -0
- package/esm/addons/Pagination/Pagination.js +14 -27
- package/esm/addons/Pagination/Pagination.js.map +7 -0
- package/esm/addons/Pagination/index.js +6 -1
- package/esm/addons/Pagination/index.js.map +7 -0
- package/esm/configs/constants.js +45 -42
- package/esm/configs/constants.js.map +7 -0
- package/esm/configs/fixedSizes.js +5 -2
- package/esm/configs/fixedSizes.js.map +7 -0
- package/esm/configs/index.js +7 -5
- package/esm/configs/index.js.map +7 -0
- package/esm/configs/useDatatableConfig.js +35 -47
- package/esm/configs/useDatatableConfig.js.map +7 -0
- package/esm/configs/usePaginationConfig.js +30 -17
- package/esm/configs/usePaginationConfig.js.map +7 -0
- package/esm/configs/useRowFlattenization.js +18 -29
- package/esm/configs/useRowFlattenization.js.map +7 -0
- package/esm/configs/useTableColsWithAddons.js +51 -55
- package/esm/configs/useTableColsWithAddons.js.map +7 -0
- package/esm/configs/zIndexInternalConfig.js +5 -2
- package/esm/configs/zIndexInternalConfig.js.map +7 -0
- package/esm/exported-related/EditableCell.js +33 -44
- package/esm/exported-related/EditableCell.js.map +7 -0
- package/esm/exported-related/FilterPopover.js +70 -122
- package/esm/exported-related/FilterPopover.js.map +7 -0
- package/esm/exported-related/FilterTypes.js +12 -9
- package/esm/exported-related/FilterTypes.js.map +7 -0
- package/esm/exported-related/Filters/applyOutOfTheBoxFilters.js +14 -16
- package/esm/exported-related/Filters/applyOutOfTheBoxFilters.js.map +7 -0
- package/esm/exported-related/Filters/currencyRangeFilterFn.js +15 -15
- package/esm/exported-related/Filters/currencyRangeFilterFn.js.map +7 -0
- package/esm/exported-related/Filters/dateRangeFilterFn.js +8 -37
- package/esm/exported-related/Filters/dateRangeFilterFn.js.map +7 -0
- package/esm/exported-related/Filters/dateSwitcherFilterFn.js +7 -7
- package/esm/exported-related/Filters/dateSwitcherFilterFn.js.map +7 -0
- package/esm/exported-related/Filters/index.js +9 -7
- package/esm/exported-related/Filters/index.js.map +7 -0
- package/esm/exported-related/Filters/multiSelectFilterFn.js +6 -10
- package/esm/exported-related/Filters/multiSelectFilterFn.js.map +7 -0
- package/esm/exported-related/Filters/numberRangeFilterFn.js +7 -9
- package/esm/exported-related/Filters/numberRangeFilterFn.js.map +7 -0
- package/esm/exported-related/Filters/singleDateFilterFn.js +8 -37
- package/esm/exported-related/Filters/singleDateFilterFn.js.map +7 -0
- package/esm/exported-related/Filters/singleSelectFilterFn.js +6 -8
- package/esm/exported-related/Filters/singleSelectFilterFn.js.map +7 -0
- package/esm/exported-related/Filters/types.js +2 -1
- package/esm/exported-related/Filters/types.js.map +7 -0
- package/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js +72 -94
- package/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +7 -0
- package/esm/exported-related/RowRenderer/index.js +45 -85
- package/esm/exported-related/RowRenderer/index.js.map +7 -0
- package/esm/exported-related/RowRenderer/useRowRendererHandlers.js +41 -95
- package/esm/exported-related/RowRenderer/useRowRendererHandlers.js.map +7 -0
- package/esm/exported-related/RowRenderer/useRowRendererProperties.js +19 -31
- package/esm/exported-related/RowRenderer/useRowRendererProperties.js.map +7 -0
- package/esm/exported-related/RowRenderer/useRowStyle.js +17 -30
- package/esm/exported-related/RowRenderer/useRowStyle.js.map +7 -0
- package/esm/exported-related/RowVariants.js +14 -9
- package/esm/exported-related/RowVariants.js.map +7 -0
- package/esm/exported-related/Toolbar/Toolbar.js +68 -64
- package/esm/exported-related/Toolbar/Toolbar.js.map +7 -0
- package/esm/exported-related/Toolbar/index.js +6 -1
- package/esm/exported-related/Toolbar/index.js.map +7 -0
- package/esm/exported-related/groupBy.js +14 -21
- package/esm/exported-related/groupBy.js.map +7 -0
- package/esm/exported-related/index.js +15 -13
- package/esm/exported-related/index.js.map +7 -0
- package/esm/helpers/addCellData.js +15 -25
- package/esm/helpers/addCellData.js.map +7 -0
- package/esm/helpers/cellPadding.js +15 -22
- package/esm/helpers/cellPadding.js.map +7 -0
- package/esm/helpers/columnsToGrid.js +12 -13
- package/esm/helpers/columnsToGrid.js.map +7 -0
- package/esm/helpers/getIdFromUniqueRowAccessor.js +9 -16
- package/esm/helpers/getIdFromUniqueRowAccessor.js.map +7 -0
- package/esm/helpers/index.js +8 -6
- package/esm/helpers/index.js.map +7 -0
- package/esm/helpers/refs-helpers.js +13 -19
- package/esm/helpers/refs-helpers.js.map +7 -0
- package/esm/helpers/sizeToCss.js +6 -3
- package/esm/helpers/sizeToCss.js.map +7 -0
- package/esm/hooks/useRecoverFocusCol.js +10 -15
- package/esm/hooks/useRecoverFocusCol.js.map +7 -0
- package/esm/hooks/useRecoverFocusRow.js +6 -8
- package/esm/hooks/useRecoverFocusRow.js.map +7 -0
- package/esm/index.js +4 -14
- package/esm/index.js.map +7 -0
- package/esm/parts/Cells/Cell.js +63 -94
- package/esm/parts/Cells/Cell.js.map +7 -0
- package/esm/parts/Cells/index.js +54 -70
- package/esm/parts/Cells/index.js.map +7 -0
- package/esm/parts/Cells/useCellStyle.js +16 -21
- package/esm/parts/Cells/useCellStyle.js.map +7 -0
- package/esm/parts/DnDHandle.js +32 -65
- package/esm/parts/DnDHandle.js.map +7 -0
- package/esm/parts/DropIndicator.js +49 -62
- package/esm/parts/DropIndicator.js.map +7 -0
- package/esm/parts/EmptyContent.js +64 -48
- package/esm/parts/EmptyContent.js.map +7 -0
- package/esm/parts/FilterBar/FiltersBar.js +49 -94
- package/esm/parts/FilterBar/FiltersBar.js.map +7 -0
- package/esm/parts/FilterBar/components/DateRangePill.js +27 -31
- package/esm/parts/FilterBar/components/DateRangePill.js.map +7 -0
- package/esm/parts/FilterBar/components/DateSwitcherPill.js +27 -31
- package/esm/parts/FilterBar/components/DateSwitcherPill.js.map +7 -0
- package/esm/parts/FilterBar/components/MultiSelectPill.js +28 -34
- package/esm/parts/FilterBar/components/MultiSelectPill.js.map +7 -0
- package/esm/parts/FilterBar/components/NumberRangePill.js +26 -30
- package/esm/parts/FilterBar/components/NumberRangePill.js.map +7 -0
- package/esm/parts/FilterBar/components/SelectPill.js +25 -27
- package/esm/parts/FilterBar/components/SelectPill.js.map +7 -0
- package/esm/parts/FilterBar/components/SingleDatePill.js +26 -29
- package/esm/parts/FilterBar/components/SingleDatePill.js.map +7 -0
- package/esm/parts/FilterBar/components/index.js +8 -6
- package/esm/parts/FilterBar/components/index.js.map +7 -0
- package/esm/parts/FilterBar/index.js +6 -1
- package/esm/parts/FilterBar/index.js.map +7 -0
- package/esm/parts/FilterBar/styled.js +20 -12
- package/esm/parts/FilterBar/styled.js.map +7 -0
- package/esm/parts/FilterBar/types.js +2 -1
- package/esm/parts/FilterBar/types.js.map +7 -0
- package/esm/parts/Filters/index.js +40 -92
- package/esm/parts/Filters/index.js.map +7 -0
- package/esm/parts/Footer.js +10 -15
- package/esm/parts/Footer.js.map +7 -0
- package/esm/parts/Headers/EmptyChildrenGroup.js +13 -11
- package/esm/parts/Headers/EmptyChildrenGroup.js.map +7 -0
- package/esm/parts/Headers/HeaderCell.js +77 -141
- package/esm/parts/Headers/HeaderCell.js.map +7 -0
- package/esm/parts/Headers/HeaderCellGroup.js +64 -82
- package/esm/parts/Headers/HeaderCellGroup.js.map +7 -0
- package/esm/parts/Headers/HeaderCellTitle.js +22 -70
- package/esm/parts/Headers/HeaderCellTitle.js.map +7 -0
- package/esm/parts/Headers/HeaderResizer.js +36 -77
- package/esm/parts/Headers/HeaderResizer.js.map +7 -0
- package/esm/parts/Headers/RequiredDot.js +10 -13
- package/esm/parts/Headers/RequiredDot.js.map +7 -0
- package/esm/parts/Headers/index.js +28 -35
- package/esm/parts/Headers/index.js.map +7 -0
- package/esm/parts/Headers/useHeaderCellConfig.js +19 -21
- package/esm/parts/Headers/useHeaderCellConfig.js.map +7 -0
- package/esm/parts/Headers/useHeaderCellHandlers.js +56 -66
- package/esm/parts/Headers/useHeaderCellHandlers.js.map +7 -0
- package/esm/parts/HoC/SortableItemContext.js +15 -15
- package/esm/parts/HoC/SortableItemContext.js.map +7 -0
- package/esm/parts/HoC/withConditionalDnDColumnContext.js +52 -85
- package/esm/parts/HoC/withConditionalDnDColumnContext.js.map +7 -0
- package/esm/parts/HoC/withConditionalDnDRowContext.js +59 -80
- package/esm/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
- package/esm/parts/HoC/withConditionalDnDSortableContext.js +21 -34
- package/esm/parts/HoC/withConditionalDnDSortableContext.js.map +7 -0
- package/esm/parts/HoC/withDnDSortableColumnContext.js +26 -44
- package/esm/parts/HoC/withDnDSortableColumnContext.js.map +7 -0
- package/esm/parts/HoC/withDnDSortableRowContext.js +26 -46
- package/esm/parts/HoC/withDnDSortableRowContext.js.map +7 -0
- package/esm/parts/Loader.js +21 -22
- package/esm/parts/Loader.js.map +7 -0
- package/esm/parts/Row.js +33 -48
- package/esm/parts/Row.js.map +7 -0
- package/esm/parts/RowLoading.js +23 -42
- package/esm/parts/RowLoading.js.map +7 -0
- package/esm/parts/RowVariants/RowVariantHeader.js +47 -83
- package/esm/parts/RowVariants/RowVariantHeader.js.map +7 -0
- package/esm/parts/RowVariants/RowVariantPrimary.js +26 -28
- package/esm/parts/RowVariants/RowVariantPrimary.js.map +7 -0
- package/esm/parts/RowVariants/RowVariantSecondary.js +27 -29
- package/esm/parts/RowVariants/RowVariantSecondary.js.map +7 -0
- package/esm/parts/RowVariants/index.js +26 -65
- package/esm/parts/RowVariants/index.js.map +7 -0
- package/esm/parts/RowVariants/types.js +2 -1
- package/esm/parts/RowVariants/types.js.map +7 -0
- package/esm/parts/Rows.js +41 -61
- package/esm/parts/Rows.js.map +7 -0
- package/esm/parts/SortByCaret.js +15 -22
- package/esm/parts/SortByCaret.js.map +7 -0
- package/esm/parts/SortableHeaderCell.js +14 -29
- package/esm/parts/SortableHeaderCell.js.map +7 -0
- package/esm/parts/TableContent.js +35 -72
- package/esm/parts/TableContent.js.map +7 -0
- package/esm/parts/VirtualRowsList.js +40 -78
- package/esm/parts/VirtualRowsList.js.map +7 -0
- package/esm/parts/index.js +16 -6
- package/esm/parts/index.js.map +7 -0
- package/esm/prop-types.js +28 -22
- package/esm/prop-types.js.map +7 -0
- package/esm/redux/reducers/headersReducers/defaults.js +5 -2
- package/esm/redux/reducers/headersReducers/defaults.js.map +7 -0
- package/esm/redux/reducers/headersReducers/headersReducers.js +12 -11
- package/esm/redux/reducers/headersReducers/headersReducers.js.map +7 -0
- package/esm/redux/reducers/headersReducers/index.js +4 -2
- package/esm/redux/reducers/headersReducers/index.js.map +7 -0
- package/esm/redux/reducers/headersReducers/logic.js +13 -24
- package/esm/redux/reducers/headersReducers/logic.js.map +7 -0
- package/esm/redux/reducers/headersReducers/useDispatchHeadersActions.js +10 -14
- package/esm/redux/reducers/headersReducers/useDispatchHeadersActions.js.map +7 -0
- package/esm/redux/reducers/index.js +17 -11
- package/esm/redux/reducers/index.js.map +7 -0
- package/esm/redux/reducers/rowsReducers/actions_types.js +18 -9
- package/esm/redux/reducers/rowsReducers/actions_types.js.map +7 -0
- package/esm/redux/reducers/rowsReducers/defaults.js +6 -2
- package/esm/redux/reducers/rowsReducers/defaults.js.map +7 -0
- package/esm/redux/reducers/rowsReducers/index.js +4 -2
- package/esm/redux/reducers/rowsReducers/index.js.map +7 -0
- package/esm/redux/reducers/rowsReducers/logic.js +12 -3
- package/esm/redux/reducers/rowsReducers/logic.js.map +7 -0
- package/esm/redux/reducers/rowsReducers/rowsReducer.js +28 -18
- package/esm/redux/reducers/rowsReducers/rowsReducer.js.map +7 -0
- package/esm/redux/reducers/rowsReducers/useDispatchRowsActions.js +26 -15
- package/esm/redux/reducers/rowsReducers/useDispatchRowsActions.js.map +7 -0
- package/esm/redux/storeConfig.js +6 -4
- package/esm/redux/storeConfig.js.map +7 -0
- package/esm/styled.js +268 -194
- package/esm/styled.js.map +7 -0
- package/esm/tests/utils/index.js +90 -0
- package/esm/tests/utils/index.js.map +7 -0
- package/esm/types/FunctionalHoC.js +2 -1
- package/esm/types/FunctionalHoC.js.map +7 -0
- package/esm/types/props.js +2 -1
- package/esm/types/props.js.map +7 -0
- package/package.json +18 -18
- package/types/DataTable.d.ts +44 -246
- package/types/DataTableContext.d.ts +1 -0
- package/types/DataTableSchema.d.ts +43 -245
- package/types/configs/useTableColsWithAddons.d.ts +1 -0
- package/types/exported-related/RowRenderer/index.d.ts +1 -0
- package/types/exported-related/RowRenderer/useRowRendererProperties.d.ts +1 -1
- package/types/parts/Cells/Cell.d.ts +1 -0
- package/types/parts/Cells/index.d.ts +1 -0
- package/types/parts/DropIndicator.d.ts +1 -0
- package/types/parts/EmptyContent.d.ts +1 -0
- package/types/parts/Footer.d.ts +1 -0
- package/types/parts/Headers/index.d.ts +2 -2
- package/types/parts/Loader.d.ts +2 -2
- package/types/parts/Row.d.ts +3 -2
- package/types/parts/RowLoading.d.ts +1 -0
- package/types/parts/Rows.d.ts +2 -2
- package/types/parts/TableContent.d.ts +1 -0
- package/types/parts/VirtualRowsList.d.ts +1 -1
- package/types/redux/reducers/index.d.ts +2 -2
|
@@ -1,56 +1,16 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import { CurrencyRangeFilter } from '../../addons/Filters/Components/CurrencyRangeFilter/index.js';
|
|
15
|
-
import { SingleSelectFilter } from '../../addons/Filters/Components/SelectFilter/SingleSelectFilter.js';
|
|
16
|
-
import { MultiSelectFilter } from '../../addons/Filters/Components/SelectFilter/MultiSelectFilter.js';
|
|
17
|
-
import { SingleDateFilter } from '../../addons/Filters/Components/SingleDateFilter/index.js';
|
|
18
|
-
import '@babel/runtime/helpers/esm/jsx';
|
|
19
|
-
import '@elliemae/ds-button';
|
|
20
|
-
import '@elliemae/ds-popperjs';
|
|
21
|
-
import 'styled-components';
|
|
22
|
-
import '../../redux/reducers/index.js';
|
|
23
|
-
import '../../configs/constants.js';
|
|
24
|
-
import 'core-js/modules/esnext.async-iterator.reduce.js';
|
|
25
|
-
import 'core-js/modules/esnext.iterator.reduce.js';
|
|
26
|
-
import 'react-virtual';
|
|
27
|
-
import '../../configs/useRowFlattenization.js';
|
|
28
|
-
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
29
|
-
import 'core-js/modules/esnext.iterator.map.js';
|
|
30
|
-
import '@elliemae/ds-icons';
|
|
31
|
-
import '../../styled.js';
|
|
32
|
-
import { jsx } from 'react/jsx-runtime';
|
|
33
|
-
import '@elliemae/ds-form';
|
|
34
|
-
import '../TableContent.js';
|
|
35
|
-
import '@elliemae/ds-grid';
|
|
36
|
-
import '@elliemae/ds-circular-progress-indicator';
|
|
37
|
-
import '@elliemae/ds-system';
|
|
38
|
-
import '../../DataTableContext.js';
|
|
39
|
-
import '../Row.js';
|
|
40
|
-
import '../Footer.js';
|
|
41
|
-
import '../HoC/SortableItemContext.js';
|
|
42
|
-
import '@elliemae/ds-utilities';
|
|
43
|
-
import 'uid';
|
|
44
|
-
import { FILTER_TYPES } from '../../exported-related/FilterTypes.js';
|
|
45
|
-
import '../../exported-related/Filters/applyOutOfTheBoxFilters.js';
|
|
46
|
-
import 'moment';
|
|
47
|
-
import 'core-js/modules/esnext.async-iterator.some.js';
|
|
48
|
-
import 'core-js/modules/esnext.iterator.some.js';
|
|
49
|
-
import { useDispatchHeadersActions } from '../../redux/reducers/headersReducers/useDispatchHeadersActions.js';
|
|
50
|
-
|
|
51
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
52
|
-
|
|
53
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2, { useCallback } from "react";
|
|
3
|
+
import {
|
|
4
|
+
DateRangeFilter,
|
|
5
|
+
DateSwitcherFilter,
|
|
6
|
+
NumberRangeFilter,
|
|
7
|
+
MultiSelectFilter,
|
|
8
|
+
SingleSelectFilter,
|
|
9
|
+
SingleDateFilter,
|
|
10
|
+
CurrencyRangeFilter
|
|
11
|
+
} from "../../addons/Filters";
|
|
12
|
+
import { FILTER_TYPES } from "../../exported-related";
|
|
13
|
+
import { useDispatchHeadersActions } from "../../redux/reducers";
|
|
54
14
|
const FilterMapper = {
|
|
55
15
|
[FILTER_TYPES.SELECT]: SingleSelectFilter,
|
|
56
16
|
[FILTER_TYPES.MULTI_SELECT]: MultiSelectFilter,
|
|
@@ -60,29 +20,17 @@ const FilterMapper = {
|
|
|
60
20
|
[FILTER_TYPES.NUMBER_RANGE]: NumberRangeFilter,
|
|
61
21
|
[FILTER_TYPES.CURRENCY_RANGE]: CurrencyRangeFilter
|
|
62
22
|
};
|
|
63
|
-
const FilterMapItem = props => {
|
|
64
|
-
const {
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
onFiltersChange
|
|
68
|
-
} = props;
|
|
69
|
-
const {
|
|
70
|
-
patchHeaderFilterButtonAndMenu,
|
|
71
|
-
patchHeader
|
|
72
|
-
} = useDispatchHeadersActions();
|
|
73
|
-
const filterValue = filters.find(filter => filter.id === column.id);
|
|
23
|
+
const FilterMapItem = (props) => {
|
|
24
|
+
const { column, filterValue: filters, onFiltersChange } = props;
|
|
25
|
+
const { patchHeaderFilterButtonAndMenu, patchHeader } = useDispatchHeadersActions();
|
|
26
|
+
const filterValue = filters.find((filter) => filter.id === column.id);
|
|
74
27
|
const onValueChange = useCallback((type, newValue) => {
|
|
75
|
-
const filterIndex = filters.findIndex(filter => filter.id === column.id);
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
const newFilters = filters.filter(filter => filter.id !== column.id);
|
|
28
|
+
const filterIndex = filters.findIndex((filter) => filter.id === column.id);
|
|
29
|
+
if (newValue === void 0) {
|
|
30
|
+
const newFilters = filters.filter((filter) => filter.id !== column.id);
|
|
79
31
|
onFiltersChange(newFilters);
|
|
80
32
|
} else if (filterIndex === -1) {
|
|
81
|
-
onFiltersChange([...filters, {
|
|
82
|
-
id: column.id,
|
|
83
|
-
type,
|
|
84
|
-
value: newValue
|
|
85
|
-
}]);
|
|
33
|
+
onFiltersChange([...filters, { id: column.id, type, value: newValue }]);
|
|
86
34
|
} else {
|
|
87
35
|
const newFilters = [...filters];
|
|
88
36
|
newFilters[filterIndex].type = type;
|
|
@@ -90,34 +38,34 @@ const FilterMapItem = props => {
|
|
|
90
38
|
onFiltersChange(newFilters);
|
|
91
39
|
}
|
|
92
40
|
}, [column.id, filters, onFiltersChange]);
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
filterValue: filterValue
|
|
41
|
+
const filterProps = {
|
|
42
|
+
...props,
|
|
43
|
+
filterValue: filterValue?.value,
|
|
96
44
|
onValueChange,
|
|
97
45
|
patchHeader,
|
|
98
46
|
patchHeaderFilterButtonAndMenu
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
if (typeof column.filter === 'string') {
|
|
47
|
+
};
|
|
48
|
+
if (typeof column.filter === "string") {
|
|
102
49
|
if (!(column.filter in FilterMapper)) {
|
|
103
|
-
throw new Error(
|
|
50
|
+
throw new Error(`column.filter must be a supported out-of-the-box filter in ${column}`);
|
|
104
51
|
}
|
|
105
|
-
|
|
106
52
|
const FilterComp = FilterMapper[column.filter];
|
|
107
|
-
return
|
|
53
|
+
return /* @__PURE__ */ React2.createElement(FilterComp, {
|
|
54
|
+
...filterProps
|
|
55
|
+
});
|
|
108
56
|
}
|
|
109
|
-
|
|
110
57
|
if (column.Filter) {
|
|
111
|
-
if (typeof column.Filter !==
|
|
112
|
-
throw new Error(
|
|
58
|
+
if (typeof column.Filter !== "function") {
|
|
59
|
+
throw new Error(`column.Filter must be a component`);
|
|
113
60
|
}
|
|
114
|
-
|
|
115
61
|
const FilterComp = column.Filter;
|
|
116
|
-
return
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
62
|
+
return /* @__PURE__ */ React2.createElement(FilterComp, {
|
|
63
|
+
...filterProps
|
|
64
|
+
});
|
|
65
|
+
}
|
|
120
66
|
return null;
|
|
121
67
|
};
|
|
122
|
-
|
|
123
|
-
|
|
68
|
+
export {
|
|
69
|
+
FilterMapItem
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Filters/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/indent */\n/* eslint-disable react/prop-types */\nimport React, { useCallback } from 'react';\nimport {\n DateRangeFilter,\n DateSwitcherFilter,\n NumberRangeFilter,\n MultiSelectFilter,\n SingleSelectFilter,\n SingleDateFilter,\n CurrencyRangeFilter,\n} from '../../addons/Filters';\nimport { FILTER_TYPES } from '../../exported-related';\nimport { useDispatchHeadersActions } from '../../redux/reducers';\nimport { FilterProps } from '../../types/props';\n\nconst FilterMapper: Record<string, React.ComponentType<FilterProps>> = {\n [FILTER_TYPES.SELECT]: SingleSelectFilter,\n [FILTER_TYPES.MULTI_SELECT]: MultiSelectFilter,\n [FILTER_TYPES.SINGLE_DATE]: SingleDateFilter,\n [FILTER_TYPES.DATE_RANGE]: DateRangeFilter,\n [FILTER_TYPES.DATE_SWITCHER]: DateSwitcherFilter,\n [FILTER_TYPES.NUMBER_RANGE]: NumberRangeFilter,\n [FILTER_TYPES.CURRENCY_RANGE]: CurrencyRangeFilter,\n};\nexport const FilterMapItem: React.ComponentType<\n Omit<FilterProps, 'patchHeaderFilterButtonAndMenu' | 'patchHeader' | 'onValueChange'>\n> = (props) => {\n const { column, filterValue: filters, onFiltersChange } = props;\n\n const { patchHeaderFilterButtonAndMenu, patchHeader } = useDispatchHeadersActions();\n\n const filterValue = filters.find((filter) => filter.id === column.id);\n\n const onValueChange = useCallback(\n (type: string, newValue: any) => {\n const filterIndex = filters.findIndex((filter) => filter.id === column.id);\n if (newValue === undefined) {\n const newFilters = filters.filter((filter) => filter.id !== column.id);\n onFiltersChange(newFilters);\n } else if (filterIndex === -1) {\n onFiltersChange([...filters, { id: column.id, type, value: newValue }]);\n } else {\n const newFilters = [...filters];\n newFilters[filterIndex].type = type;\n newFilters[filterIndex].value = newValue;\n onFiltersChange(newFilters);\n }\n },\n [column.id, filters, onFiltersChange],\n );\n\n const filterProps = {\n ...props,\n filterValue: filterValue?.value,\n onValueChange,\n patchHeader,\n patchHeaderFilterButtonAndMenu,\n };\n\n if (typeof column.filter === 'string') {\n if (!(column.filter in FilterMapper)) {\n throw new Error(`column.filter must be a supported out-of-the-box filter in ${column}`);\n }\n const FilterComp = FilterMapper[column.filter];\n return <FilterComp {...filterProps} />;\n }\n\n if (column.Filter) {\n if (typeof column.Filter !== 'function') {\n throw new Error(`column.Filter must be a component`);\n }\n const FilterComp = column.Filter;\n return <FilterComp {...filterProps} />;\n }\n\n // Column doesn't have any filters\n return null;\n};\n"],
|
|
5
|
+
"mappings": "AAAA;ACEA;AACA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA;AACA;AAGA,MAAM,eAAiE;AAAA,GACpE,aAAa,SAAS;AAAA,GACtB,aAAa,eAAe;AAAA,GAC5B,aAAa,cAAc;AAAA,GAC3B,aAAa,aAAa;AAAA,GAC1B,aAAa,gBAAgB;AAAA,GAC7B,aAAa,eAAe;AAAA,GAC5B,aAAa,iBAAiB;AAAA;AAE1B,MAAM,gBAET,CAAC,UAAU;AACb,QAAM,EAAE,QAAQ,aAAa,SAAS,oBAAoB;AAE1D,QAAM,EAAE,gCAAgC,gBAAgB;AAExD,QAAM,cAAc,QAAQ,KAAK,CAAC,WAAW,OAAO,OAAO,OAAO;AAElE,QAAM,gBAAgB,YACpB,CAAC,MAAc,aAAkB;AAC/B,UAAM,cAAc,QAAQ,UAAU,CAAC,WAAW,OAAO,OAAO,OAAO;AACvE,QAAI,aAAa,QAAW;AAC1B,YAAM,aAAa,QAAQ,OAAO,CAAC,WAAW,OAAO,OAAO,OAAO;AACnE,sBAAgB;AAAA,eACP,gBAAgB,IAAI;AAC7B,sBAAgB,CAAC,GAAG,SAAS,EAAE,IAAI,OAAO,IAAI,MAAM,OAAO;AAAA,WACtD;AACL,YAAM,aAAa,CAAC,GAAG;AACvB,iBAAW,aAAa,OAAO;AAC/B,iBAAW,aAAa,QAAQ;AAChC,sBAAgB;AAAA;AAAA,KAGpB,CAAC,OAAO,IAAI,SAAS;AAGvB,QAAM,cAAc;AAAA,OACf;AAAA,IACH,aAAa,aAAa;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA;AAGF,MAAI,OAAO,OAAO,WAAW,UAAU;AACrC,QAAI,CAAE,QAAO,UAAU,eAAe;AACpC,YAAM,IAAI,MAAM,8DAA8D;AAAA;AAEhF,UAAM,aAAa,aAAa,OAAO;AACvC,WAAO,qCAAC,YAAD;AAAA,SAAgB;AAAA;AAAA;AAGzB,MAAI,OAAO,QAAQ;AACjB,QAAI,OAAO,OAAO,WAAW,YAAY;AACvC,YAAM,IAAI,MAAM;AAAA;AAElB,UAAM,aAAa,OAAO;AAC1B,WAAO,qCAAC,YAAD;AAAA,SAAgB;AAAA;AAAA;AAIzB,SAAO;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/esm/parts/Footer.js
CHANGED
|
@@ -1,18 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
const Footer = _ref => {
|
|
6
|
-
let {
|
|
7
|
-
children
|
|
8
|
-
} = _ref;
|
|
9
|
-
return /*#__PURE__*/jsx(Fragment, {
|
|
10
|
-
children: children
|
|
11
|
-
});
|
|
12
|
-
};
|
|
13
|
-
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2 from "react";
|
|
3
|
+
import PropTypes from "prop-types";
|
|
4
|
+
const Footer = ({ children }) => /* @__PURE__ */ React2.createElement(React2.Fragment, null, children);
|
|
14
5
|
Footer.propTypes = {
|
|
15
6
|
children: PropTypes.node
|
|
16
7
|
};
|
|
17
|
-
|
|
18
|
-
export {
|
|
8
|
+
var Footer_default = Footer;
|
|
9
|
+
export {
|
|
10
|
+
Footer,
|
|
11
|
+
Footer_default as default
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=Footer.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/parts/Footer.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Footer: React.ComponentType = ({ children }) => <>{children}</>;\n\nFooter.propTypes = {\n children: PropTypes.node,\n};\n\nexport { Footer };\nexport default Footer;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AAEA,MAAM,SAA8B,CAAC,EAAE,eAAe,4DAAG;AAEzD,OAAO,YAAY;AAAA,EACjB,UAAU,UAAU;AAAA;AAItB,IAAO,iBAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import styled from
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const EmptyChildrenGroup = () =>
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2 from "react";
|
|
3
|
+
import styled from "styled-components";
|
|
4
|
+
const StyledBox = styled.div`
|
|
5
|
+
height: 24px;
|
|
6
|
+
margin: 0 ${(props) => props.theme.space.xxs};
|
|
7
|
+
border-top: 1px solid ${(props) => props.theme.colors.neutral[200]};
|
|
8
|
+
`;
|
|
9
|
+
const EmptyChildrenGroup = () => /* @__PURE__ */ React2.createElement(StyledBox, null);
|
|
10
|
+
export {
|
|
11
|
+
EmptyChildrenGroup
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=EmptyChildrenGroup.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/EmptyChildrenGroup.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport styled from 'styled-components';\n\nconst StyledBox = styled.div`\n height: 24px;\n margin: 0 ${(props) => props.theme.space.xxs};\n border-top: 1px solid ${(props) => props.theme.colors.neutral[200]};\n`;\n\nexport const EmptyChildrenGroup: React.ComponentType<Record<string, never>> = () => <StyledBox />;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AAEA,MAAM,YAAY,OAAO;AAAA;AAAA,cAEX,CAAC,UAAU,MAAM,MAAM,MAAM;AAAA,0BACjB,CAAC,UAAU,MAAM,MAAM,OAAO,QAAQ;AAAA;AAGzD,MAAM,qBAAiE,MAAM,qCAAC,WAAD;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,111 +1,50 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import {
|
|
13
|
-
import
|
|
14
|
-
import {
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
import
|
|
18
|
-
import '@elliemae/ds-icons';
|
|
19
|
-
import '@elliemae/ds-system';
|
|
20
|
-
import '@elliemae/ds-button';
|
|
21
|
-
import '../Row.js';
|
|
22
|
-
import '../Footer.js';
|
|
23
|
-
import DragHandle from '../DnDHandle.js';
|
|
24
|
-
import { SortableItemContext } from '../HoC/SortableItemContext.js';
|
|
25
|
-
import { FilterMapItem } from '../Filters/index.js';
|
|
26
|
-
import { HeaderResizer } from './HeaderResizer.js';
|
|
27
|
-
import { useHeaderCellHandlers } from './useHeaderCellHandlers.js';
|
|
28
|
-
import { useHeaderCellConfig } from './useHeaderCellConfig.js';
|
|
29
|
-
import { useRecoverFocusCol } from '../../hooks/useRecoverFocusCol.js';
|
|
30
|
-
import { DATA_TESTID } from '../../configs/constants.js';
|
|
31
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
32
|
-
import 'core-js/modules/esnext.async-iterator.reduce.js';
|
|
33
|
-
import 'core-js/modules/esnext.iterator.reduce.js';
|
|
34
|
-
import 'react-virtual';
|
|
35
|
-
import '../../configs/useRowFlattenization.js';
|
|
36
|
-
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
37
|
-
import 'core-js/modules/esnext.iterator.map.js';
|
|
38
|
-
import { jsxs } from 'react/jsx-runtime';
|
|
39
|
-
import '@elliemae/ds-form';
|
|
40
|
-
import { HeaderCellTitle } from './HeaderCellTitle.js';
|
|
41
|
-
import { useDispatchHeadersActions } from '../../redux/reducers/headersReducers/useDispatchHeadersActions.js';
|
|
42
|
-
|
|
43
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
44
|
-
|
|
45
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
46
|
-
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2, { useContext, useMemo, useRef } from "react";
|
|
3
|
+
import { connect } from "react-redux";
|
|
4
|
+
import { Grid } from "@elliemae/ds-grid";
|
|
5
|
+
import { useDispatchHeadersActions } from "../../redux/reducers";
|
|
6
|
+
import { StyledHeadTh, StyledHeaderRightIconsWrapper, StyledFocusWithin } from "../../styled";
|
|
7
|
+
import { DataTableContext } from "../../DataTableContext";
|
|
8
|
+
import { SortByCaret } from "../SortByCaret";
|
|
9
|
+
import { DnDHandle } from "..";
|
|
10
|
+
import { SortableItemContext } from "../HoC/SortableItemContext";
|
|
11
|
+
import { FilterMapItem } from "../Filters";
|
|
12
|
+
import { HeaderResizer } from "./HeaderResizer";
|
|
13
|
+
import { useHeaderCellHandlers } from "./useHeaderCellHandlers";
|
|
14
|
+
import { useHeaderCellConfig } from "./useHeaderCellConfig";
|
|
15
|
+
import { useRecoverFocusCol } from "../../hooks/useRecoverFocusCol";
|
|
16
|
+
import { DATA_TESTID } from "../../configs/constants";
|
|
17
|
+
import { HeaderCellTitle } from "./HeaderCellTitle";
|
|
47
18
|
const buildScreenReaderInstructions = (colSpan, draggable, filterable, sortable) => {
|
|
48
|
-
const preffix = colSpan === 1 ?
|
|
49
|
-
if (!draggable && !filterable && !sortable)
|
|
50
|
-
|
|
51
|
-
|
|
19
|
+
const preffix = colSpan === 1 ? "" : "Column Group. ";
|
|
20
|
+
if (!draggable && !filterable && !sortable)
|
|
21
|
+
return preffix;
|
|
22
|
+
let message = sortable ? "You can sort the data ascendingly/descendingly by this column. Use the up / down arrows keys to do so" : "";
|
|
52
23
|
if (draggable && filterable) {
|
|
53
|
-
message =
|
|
24
|
+
message = `This column is draggable and filterable. To enable these interactions press the enter key. ${message}`;
|
|
54
25
|
} else if (draggable || filterable) {
|
|
55
|
-
message =
|
|
26
|
+
message = `This column is ${draggable ? "draggable" : "filterable"}. To enable this interaction press the enter key. ${message}`;
|
|
56
27
|
}
|
|
57
|
-
|
|
58
|
-
return "".concat(preffix).concat(message);
|
|
28
|
+
return `${preffix}${message}`;
|
|
59
29
|
};
|
|
60
|
-
|
|
61
30
|
function mapStateToProps(state, ownProps) {
|
|
62
|
-
var _state$headers;
|
|
63
|
-
|
|
64
31
|
return {
|
|
65
|
-
reduxHeader:
|
|
32
|
+
reduxHeader: state.headers?.[ownProps.column.id]
|
|
66
33
|
};
|
|
67
34
|
}
|
|
68
|
-
|
|
69
35
|
const connector = connect(mapStateToProps);
|
|
70
|
-
|
|
71
|
-
const
|
|
72
|
-
var _FilterMapItem, _flattenedData$, _flattenedData$$origi;
|
|
73
|
-
|
|
74
|
-
const {
|
|
75
|
-
reduxHeader,
|
|
76
|
-
column,
|
|
77
|
-
isDragOverlay,
|
|
78
|
-
colSpan
|
|
79
|
-
} = props;
|
|
36
|
+
const HeaderCellComp = (props) => {
|
|
37
|
+
const { reduxHeader, column, isDragOverlay, colSpan } = props;
|
|
80
38
|
const ctx = useContext(DataTableContext);
|
|
81
39
|
const {
|
|
82
|
-
tableProps: {
|
|
83
|
-
isResizeable,
|
|
84
|
-
onColumnSortChange,
|
|
85
|
-
dragAndDropColumns,
|
|
86
|
-
onFiltersChange,
|
|
87
|
-
filters,
|
|
88
|
-
textWrap
|
|
89
|
-
},
|
|
40
|
+
tableProps: { isResizeable, onColumnSortChange, dragAndDropColumns, onFiltersChange, filters, textWrap },
|
|
90
41
|
flattenedData
|
|
91
42
|
} = ctx;
|
|
92
|
-
const {
|
|
93
|
-
patchHeader
|
|
94
|
-
} = useDispatchHeadersActions();
|
|
43
|
+
const { patchHeader } = useDispatchHeadersActions();
|
|
95
44
|
const dragHandleRef = useRef(null);
|
|
96
45
|
const filterIconRef = useRef(null);
|
|
97
|
-
const {
|
|
98
|
-
|
|
99
|
-
} = useContext(SortableItemContext);
|
|
100
|
-
const {
|
|
101
|
-
hasFilter,
|
|
102
|
-
hasDnD,
|
|
103
|
-
hasSortingCaret,
|
|
104
|
-
hasRightIcons,
|
|
105
|
-
shouldShowDnD,
|
|
106
|
-
hCols,
|
|
107
|
-
isDragging
|
|
108
|
-
} = useHeaderCellConfig({
|
|
46
|
+
const { draggableProps } = useContext(SortableItemContext);
|
|
47
|
+
const { hasFilter, hasDnD, hasSortingCaret, hasRightIcons, shouldShowDnD, hCols, isDragging } = useHeaderCellConfig({
|
|
109
48
|
column,
|
|
110
49
|
dragAndDropColumns,
|
|
111
50
|
draggableProps,
|
|
@@ -114,32 +53,32 @@ const HeaderCellComp = props => {
|
|
|
114
53
|
});
|
|
115
54
|
useRecoverFocusCol(isDragging, dragHandleRef);
|
|
116
55
|
const rightIcons = useMemo(() => {
|
|
117
|
-
if (!hasRightIcons)
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
56
|
+
if (!hasRightIcons)
|
|
57
|
+
return null;
|
|
58
|
+
return /* @__PURE__ */ React2.createElement(StyledHeaderRightIconsWrapper, null, /* @__PURE__ */ React2.createElement(FilterMapItem, {
|
|
59
|
+
column,
|
|
60
|
+
ctx,
|
|
61
|
+
onFiltersChange,
|
|
62
|
+
reduxHeader,
|
|
123
63
|
filterValue: filters,
|
|
124
64
|
innerRef: filterIconRef
|
|
125
|
-
})
|
|
65
|
+
}), hasSortingCaret && /* @__PURE__ */ React2.createElement(SortByCaret, {
|
|
126
66
|
isSortedDesc: column.isSortedDesc
|
|
127
67
|
}));
|
|
128
68
|
}, [hasRightIcons, column, ctx, onFiltersChange, reduxHeader, filters, hasSortingCaret]);
|
|
129
|
-
const DnDHandleComponent = useMemo(() =>
|
|
69
|
+
const DnDHandleComponent = useMemo(() => /* @__PURE__ */ React2.createElement(Grid, {
|
|
130
70
|
mr: "2px",
|
|
131
71
|
alignItems: "center",
|
|
132
|
-
style: {
|
|
133
|
-
|
|
134
|
-
}
|
|
135
|
-
}, void 0, /*#__PURE__*/_jsx(StyledFocusWithin, {
|
|
72
|
+
style: { position: "relative" }
|
|
73
|
+
}, /* @__PURE__ */ React2.createElement(StyledFocusWithin, {
|
|
136
74
|
hideFocus: isDragging
|
|
137
|
-
},
|
|
75
|
+
}, /* @__PURE__ */ React2.createElement(DnDHandle, {
|
|
76
|
+
key: column.id,
|
|
138
77
|
innerRef: dragHandleRef,
|
|
139
|
-
isReachable: reduxHeader
|
|
78
|
+
isReachable: reduxHeader?.withTabStops,
|
|
140
79
|
id: column.id,
|
|
141
|
-
isDragOverlay
|
|
142
|
-
}
|
|
80
|
+
isDragOverlay
|
|
81
|
+
}))), [column.id, isDragOverlay, isDragging, reduxHeader?.withTabStops]);
|
|
143
82
|
const handlers = useHeaderCellHandlers({
|
|
144
83
|
hasFilter,
|
|
145
84
|
patchHeader,
|
|
@@ -151,41 +90,38 @@ const HeaderCellComp = props => {
|
|
|
151
90
|
filterIconRef,
|
|
152
91
|
headerRef: column.ref
|
|
153
92
|
});
|
|
154
|
-
return
|
|
155
|
-
column
|
|
156
|
-
|
|
157
|
-
role: colSpan === 1 ?
|
|
158
|
-
colSpan
|
|
159
|
-
"aria-describedby":
|
|
160
|
-
,
|
|
161
|
-
"aria-sort": hasSortingCaret ? column.isSortedDesc ? 'descending' : 'ascending' : 'none',
|
|
93
|
+
return /* @__PURE__ */ React2.createElement(StyledHeadTh, {
|
|
94
|
+
column,
|
|
95
|
+
...handlers,
|
|
96
|
+
role: colSpan === 1 ? "columnheader" : "group",
|
|
97
|
+
colSpan,
|
|
98
|
+
"aria-describedby": `${column.id}-instructions`,
|
|
99
|
+
"aria-sort": hasSortingCaret ? column.isSortedDesc ? "descending" : "ascending" : "none",
|
|
162
100
|
"data-testid": DATA_TESTID.DATA_TABLE_HEADER,
|
|
163
|
-
isFirstRowGroup: !!
|
|
101
|
+
isFirstRowGroup: !!flattenedData[0]?.original?.dimsumHeaderValue,
|
|
164
102
|
tabIndex: column.isFocuseable === false ? -1 : 0,
|
|
165
|
-
isDragOverlay
|
|
103
|
+
isDragOverlay,
|
|
166
104
|
isDraggingActive: draggableProps && draggableProps.active,
|
|
167
|
-
shouldShowDnD
|
|
168
|
-
ref: column.ref
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
"aria-hidden": "false"
|
|
185
|
-
}, void 0, buildScreenReaderInstructions(colSpan, dragAndDropColumns && column.disableDnD !== true, hasFilter, column.canSort))]
|
|
186
|
-
}));
|
|
105
|
+
shouldShowDnD,
|
|
106
|
+
ref: column.ref
|
|
107
|
+
}, /* @__PURE__ */ React2.createElement(Grid, {
|
|
108
|
+
width: "100%",
|
|
109
|
+
cols: hCols
|
|
110
|
+
}, shouldShowDnD && DnDHandleComponent, /* @__PURE__ */ React2.createElement(HeaderCellTitle, {
|
|
111
|
+
column,
|
|
112
|
+
ctx,
|
|
113
|
+
draggableProps,
|
|
114
|
+
textWrap
|
|
115
|
+
}), rightIcons, isResizeable && column.canResize !== false && /* @__PURE__ */ React2.createElement(HeaderResizer, {
|
|
116
|
+
column
|
|
117
|
+
})), /* @__PURE__ */ React2.createElement("span", {
|
|
118
|
+
id: `${column.id}-instructions`,
|
|
119
|
+
style: { display: "none" },
|
|
120
|
+
"aria-hidden": "false"
|
|
121
|
+
}, buildScreenReaderInstructions(colSpan, dragAndDropColumns && column.disableDnD !== true, hasFilter, column.canSort)));
|
|
187
122
|
};
|
|
188
|
-
|
|
189
123
|
const HeaderCell = connector(HeaderCellComp);
|
|
190
|
-
|
|
191
|
-
|
|
124
|
+
export {
|
|
125
|
+
HeaderCell
|
|
126
|
+
};
|
|
127
|
+
//# sourceMappingURL=HeaderCell.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/HeaderCell.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-params */\n/* eslint-disable max-lines */\n/* eslint-disable complexity */\n/* eslint-disable react/prop-types */\nimport React, { useContext, useMemo, useRef } from 'react';\nimport { connect, ConnectedProps } from 'react-redux';\nimport { Grid } from '@elliemae/ds-grid';\nimport { useDispatchHeadersActions } from '../../redux/reducers';\nimport { StyledHeadTh, StyledHeaderRightIconsWrapper, StyledFocusWithin } from '../../styled';\nimport { DataTableContext } from '../../DataTableContext';\nimport { SortByCaret } from '../SortByCaret';\nimport { DnDHandle } from '..';\nimport { SortableItemContext } from '../HoC/SortableItemContext';\nimport { FilterMapItem } from '../Filters';\nimport { HeaderResizer } from './HeaderResizer';\nimport { TypescriptColumn } from '../../types/props';\nimport { useHeaderCellHandlers } from './useHeaderCellHandlers';\nimport { useHeaderCellConfig } from './useHeaderCellConfig';\nimport { useRecoverFocusCol } from '../../hooks/useRecoverFocusCol';\nimport { DATA_TESTID } from '../../configs/constants';\nimport { HeaderCellTitle } from './HeaderCellTitle';\n\nconst buildScreenReaderInstructions = (colSpan: number, draggable: boolean, filterable: boolean, sortable: boolean) => {\n const preffix = colSpan === 1 ? '' : 'Column Group. ';\n if (!draggable && !filterable && !sortable) return preffix;\n\n let message = sortable\n ? 'You can sort the data ascendingly/descendingly by this column. Use the up / down arrows keys to do so'\n : '';\n if (draggable && filterable) {\n message = `This column is draggable and filterable. To enable these interactions press the enter key. ${message}`;\n } else if (draggable || filterable) {\n message = `This column is ${\n draggable ? 'draggable' : 'filterable'\n }. To enable this interaction press the enter key. ${message}`;\n }\n return `${preffix}${message}`;\n};\n\ninterface HeaderCellCompProps {\n column: TypescriptColumn;\n isDragOverlay: boolean;\n colSpan: number;\n}\n\nfunction mapStateToProps(state, ownProps) {\n return {\n reduxHeader: state.headers?.[ownProps.column.id],\n };\n}\n\nconst connector = connect(mapStateToProps);\n\nconst HeaderCellComp: React.ComponentType<HeaderCellCompProps & ConnectedProps<typeof connector>> = (props) => {\n const { reduxHeader, column, isDragOverlay, colSpan } = props;\n const ctx = useContext(DataTableContext);\n const {\n tableProps: { isResizeable, onColumnSortChange, dragAndDropColumns, onFiltersChange, filters, textWrap },\n flattenedData,\n } = ctx;\n const { patchHeader } = useDispatchHeadersActions();\n const dragHandleRef = useRef<HTMLDivElement>(null);\n const filterIconRef = useRef<HTMLDivElement>(null);\n\n const { draggableProps } = useContext(SortableItemContext);\n\n const { hasFilter, hasDnD, hasSortingCaret, hasRightIcons, shouldShowDnD, hCols, isDragging } = useHeaderCellConfig({\n column,\n dragAndDropColumns,\n draggableProps,\n reduxHeader,\n isDragOverlay,\n });\n\n useRecoverFocusCol(isDragging, dragHandleRef);\n\n const rightIcons = useMemo(() => {\n if (!hasRightIcons) return null;\n return (\n <StyledHeaderRightIconsWrapper>\n <FilterMapItem\n column={column}\n ctx={ctx}\n onFiltersChange={onFiltersChange}\n reduxHeader={reduxHeader}\n filterValue={filters}\n innerRef={filterIconRef}\n />\n {hasSortingCaret && <SortByCaret isSortedDesc={column.isSortedDesc} />}\n </StyledHeaderRightIconsWrapper>\n );\n }, [hasRightIcons, column, ctx, onFiltersChange, reduxHeader, filters, hasSortingCaret]);\n\n const DnDHandleComponent = useMemo(\n () => (\n <Grid mr=\"2px\" alignItems=\"center\" style={{ position: 'relative' }}>\n <StyledFocusWithin hideFocus={isDragging}>\n <DnDHandle\n key={column.id}\n innerRef={dragHandleRef}\n isReachable={reduxHeader?.withTabStops}\n id={column.id}\n isDragOverlay={isDragOverlay}\n />\n </StyledFocusWithin>\n </Grid>\n ),\n [column.id, isDragOverlay, isDragging, reduxHeader?.withTabStops],\n );\n\n const handlers = useHeaderCellHandlers({\n hasFilter,\n patchHeader,\n column,\n reduxHeader,\n hasDnD,\n onColumnSortChange,\n dragHandleRef,\n filterIconRef,\n headerRef: column.ref,\n });\n\n return (\n <StyledHeadTh\n column={column}\n {...handlers}\n role={colSpan === 1 ? 'columnheader' : 'group'}\n colSpan={colSpan}\n aria-describedby={`${column.id}-instructions`}\n // eslint-disable-next-line no-nested-ternary\n aria-sort={hasSortingCaret ? (column.isSortedDesc ? 'descending' : 'ascending') : 'none'}\n data-testid={DATA_TESTID.DATA_TABLE_HEADER}\n isFirstRowGroup={!!flattenedData[0]?.original?.dimsumHeaderValue}\n tabIndex={column.isFocuseable === false ? -1 : 0}\n isDragOverlay={isDragOverlay}\n isDraggingActive={draggableProps && draggableProps.active}\n shouldShowDnD={shouldShowDnD}\n ref={column.ref}\n >\n <Grid width=\"100%\" cols={hCols}>\n {shouldShowDnD && DnDHandleComponent}\n <HeaderCellTitle column={column} ctx={ctx} draggableProps={draggableProps} textWrap={textWrap} />\n {rightIcons}\n {isResizeable && column.canResize !== false && <HeaderResizer column={column} />}\n </Grid>\n <span id={`${column.id}-instructions`} style={{ display: 'none' }} aria-hidden=\"false\">\n {buildScreenReaderInstructions(\n colSpan,\n dragAndDropColumns && column.disableDnD !== true,\n hasFilter,\n column.canSort,\n )}\n </span>\n </StyledHeadTh>\n );\n};\n\nexport const HeaderCell = connector(HeaderCellComp);\n"],
|
|
5
|
+
"mappings": "AAAA;ACIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA,MAAM,gCAAgC,CAAC,SAAiB,WAAoB,YAAqB,aAAsB;AACrH,QAAM,UAAU,YAAY,IAAI,KAAK;AACrC,MAAI,CAAC,aAAa,CAAC,cAAc,CAAC;AAAU,WAAO;AAEnD,MAAI,UAAU,WACV,0GACA;AACJ,MAAI,aAAa,YAAY;AAC3B,cAAU,8FAA8F;AAAA,aAC/F,aAAa,YAAY;AAClC,cAAU,kBACR,YAAY,cAAc,iEACyB;AAAA;AAEvD,SAAO,GAAG,UAAU;AAAA;AAStB,yBAAyB,OAAO,UAAU;AACxC,SAAO;AAAA,IACL,aAAa,MAAM,UAAU,SAAS,OAAO;AAAA;AAAA;AAIjD,MAAM,YAAY,QAAQ;AAE1B,MAAM,iBAA8F,CAAC,UAAU;AAC7G,QAAM,EAAE,aAAa,QAAQ,eAAe,YAAY;AACxD,QAAM,MAAM,WAAW;AACvB,QAAM;AAAA,IACJ,YAAY,EAAE,cAAc,oBAAoB,oBAAoB,iBAAiB,SAAS;AAAA,IAC9F;AAAA,MACE;AACJ,QAAM,EAAE,gBAAgB;AACxB,QAAM,gBAAgB,OAAuB;AAC7C,QAAM,gBAAgB,OAAuB;AAE7C,QAAM,EAAE,mBAAmB,WAAW;AAEtC,QAAM,EAAE,WAAW,QAAQ,iBAAiB,eAAe,eAAe,OAAO,eAAe,oBAAoB;AAAA,IAClH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGF,qBAAmB,YAAY;AAE/B,QAAM,aAAa,QAAQ,MAAM;AAC/B,QAAI,CAAC;AAAe,aAAO;AAC3B,WACE,qCAAC,+BAAD,MACE,qCAAC,eAAD;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,aAAa;AAAA,MACb,UAAU;AAAA,QAEX,mBAAmB,qCAAC,aAAD;AAAA,MAAa,cAAc,OAAO;AAAA;AAAA,KAGzD,CAAC,eAAe,QAAQ,KAAK,iBAAiB,aAAa,SAAS;AAEvE,QAAM,qBAAqB,QACzB,MACE,qCAAC,MAAD;AAAA,IAAM,IAAG;AAAA,IAAM,YAAW;AAAA,IAAS,OAAO,EAAE,UAAU;AAAA,KACpD,qCAAC,mBAAD;AAAA,IAAmB,WAAW;AAAA,KAC5B,qCAAC,WAAD;AAAA,IACE,KAAK,OAAO;AAAA,IACZ,UAAU;AAAA,IACV,aAAa,aAAa;AAAA,IAC1B,IAAI,OAAO;AAAA,IACX;AAAA,QAKR,CAAC,OAAO,IAAI,eAAe,YAAY,aAAa;AAGtD,QAAM,WAAW,sBAAsB;AAAA,IACrC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW,OAAO;AAAA;AAGpB,SACE,qCAAC,cAAD;AAAA,IACE;AAAA,OACI;AAAA,IACJ,MAAM,YAAY,IAAI,iBAAiB;AAAA,IACvC;AAAA,IACA,oBAAkB,GAAG,OAAO;AAAA,IAE5B,aAAW,kBAAmB,OAAO,eAAe,eAAe,cAAe;AAAA,IAClF,eAAa,YAAY;AAAA,IACzB,iBAAiB,CAAC,CAAC,cAAc,IAAI,UAAU;AAAA,IAC/C,UAAU,OAAO,iBAAiB,QAAQ,KAAK;AAAA,IAC/C;AAAA,IACA,kBAAkB,kBAAkB,eAAe;AAAA,IACnD;AAAA,IACA,KAAK,OAAO;AAAA,KAEZ,qCAAC,MAAD;AAAA,IAAM,OAAM;AAAA,IAAO,MAAM;AAAA,KACtB,iBAAiB,oBAClB,qCAAC,iBAAD;AAAA,IAAiB;AAAA,IAAgB;AAAA,IAAU;AAAA,IAAgC;AAAA,MAC1E,YACA,gBAAgB,OAAO,cAAc,SAAS,qCAAC,eAAD;AAAA,IAAe;AAAA,OAEhE,qCAAC,QAAD;AAAA,IAAM,IAAI,GAAG,OAAO;AAAA,IAAmB,OAAO,EAAE,SAAS;AAAA,IAAU,eAAY;AAAA,KAC5E,8BACC,SACA,sBAAsB,OAAO,eAAe,MAC5C,WACA,OAAO;AAAA;AAOV,MAAM,aAAa,UAAU;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|