@elliemae/ds-data-table 3.5.0-rc.4 → 3.5.0-rc.7
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/cjs/DataTable.js +4 -1
- package/dist/cjs/DataTable.js.map +2 -2
- package/dist/cjs/DataTableContext.js +4 -1
- package/dist/cjs/DataTableContext.js.map +1 -1
- package/dist/cjs/DataTableSchema.js +69 -34
- package/dist/cjs/DataTableSchema.js.map +1 -1
- package/dist/cjs/addons/Columns/ColumnAction/ColumnAction.js +4 -1
- package/dist/cjs/addons/Columns/ColumnAction/ColumnAction.js.map +1 -1
- package/dist/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js +4 -1
- package/dist/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +2 -2
- package/dist/cjs/addons/Columns/ColumnExpand/ColumnExpand.js +57 -36
- package/dist/cjs/addons/Columns/ColumnExpand/ColumnExpand.js.map +2 -2
- package/dist/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +28 -13
- package/dist/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +2 -2
- package/dist/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +10 -4
- package/dist/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +2 -2
- package/dist/cjs/addons/Columns/index.js +4 -1
- package/dist/cjs/addons/Columns/index.js.map +1 -1
- package/dist/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +4 -1
- package/dist/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +2 -2
- package/dist/cjs/addons/Editables/DateEditableCell/DateEditableCell.js +13 -7
- package/dist/cjs/addons/Editables/DateEditableCell/DateEditableCell.js.map +2 -2
- package/dist/cjs/addons/Editables/TextEditableCell/TextEditableCell.js +19 -13
- package/dist/cjs/addons/Editables/TextEditableCell/TextEditableCell.js.map +2 -2
- package/dist/cjs/addons/Editables/index.js +4 -1
- package/dist/cjs/addons/Editables/index.js.map +1 -1
- package/dist/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js +14 -8
- package/dist/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/DateRangeFilter/index.js +4 -1
- package/dist/cjs/addons/Filters/Components/DateRangeFilter/index.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/DateSwitcherFilter/index.js +14 -8
- package/dist/cjs/addons/Filters/Components/DateSwitcherFilter/index.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/NumberRangeFilter/index.js +14 -8
- package/dist/cjs/addons/Filters/Components/NumberRangeFilter/index.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +14 -8
- package/dist/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/SelectFilter/MultiCreatableFilter.js +4 -1
- package/dist/cjs/addons/Filters/Components/SelectFilter/MultiCreatableFilter.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +4 -1
- package/dist/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/SelectFilter/SingleCreatableFilter.js +4 -1
- package/dist/cjs/addons/Filters/Components/SelectFilter/SingleCreatableFilter.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +4 -1
- package/dist/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/SingleDateFilter/index.js +4 -1
- package/dist/cjs/addons/Filters/Components/SingleDateFilter/index.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/index.js +4 -1
- package/dist/cjs/addons/Filters/Components/index.js.map +1 -1
- package/dist/cjs/addons/Filters/index.js +4 -1
- package/dist/cjs/addons/Filters/index.js.map +1 -1
- package/dist/cjs/addons/Pagination/Pagination.js +4 -1
- package/dist/cjs/addons/Pagination/Pagination.js.map +2 -2
- package/dist/cjs/addons/Pagination/index.js +4 -1
- package/dist/cjs/addons/Pagination/index.js.map +1 -1
- package/dist/cjs/configs/constants.js +4 -1
- package/dist/cjs/configs/constants.js.map +2 -2
- package/dist/cjs/configs/fixedSizes.js +4 -1
- package/dist/cjs/configs/fixedSizes.js.map +1 -1
- package/dist/cjs/configs/index.js +4 -1
- package/dist/cjs/configs/index.js.map +1 -1
- package/dist/cjs/configs/useDatatableConfig.js +54 -37
- package/dist/cjs/configs/useDatatableConfig.js.map +1 -1
- package/dist/cjs/configs/useInternalStateConfig.js +31 -22
- package/dist/cjs/configs/useInternalStateConfig.js.map +1 -1
- package/dist/cjs/configs/usePaginationConfig.js +42 -36
- package/dist/cjs/configs/usePaginationConfig.js.map +1 -1
- package/dist/cjs/configs/useRowFlattenization.js +18 -6
- package/dist/cjs/configs/useRowFlattenization.js.map +1 -1
- package/dist/cjs/configs/useTableColsWithAddons.js +4 -1
- package/dist/cjs/configs/useTableColsWithAddons.js.map +1 -1
- package/dist/cjs/configs/zIndexInternalConfig.js +4 -1
- package/dist/cjs/configs/zIndexInternalConfig.js.map +1 -1
- package/dist/cjs/exported-related/EditableCell.js +32 -20
- package/dist/cjs/exported-related/EditableCell.js.map +2 -2
- package/dist/cjs/exported-related/FilterBar/FilterBarDropdownMenu.js +20 -14
- package/dist/cjs/exported-related/FilterBar/FilterBarDropdownMenu.js.map +2 -2
- package/dist/cjs/exported-related/FilterBar/index.js +4 -1
- package/dist/cjs/exported-related/FilterBar/index.js.map +1 -1
- package/dist/cjs/exported-related/FilterPopover.js +12 -6
- package/dist/cjs/exported-related/FilterPopover.js.map +2 -2
- package/dist/cjs/exported-related/FilterTypes.js +4 -1
- package/dist/cjs/exported-related/FilterTypes.js.map +1 -1
- package/dist/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js +4 -1
- package/dist/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js.map +1 -1
- package/dist/cjs/exported-related/Filters/currencyRangeFilterFn.js +10 -3
- package/dist/cjs/exported-related/Filters/currencyRangeFilterFn.js.map +1 -1
- package/dist/cjs/exported-related/Filters/dateRangeFilterFn.js +7 -2
- package/dist/cjs/exported-related/Filters/dateRangeFilterFn.js.map +1 -1
- package/dist/cjs/exported-related/Filters/dateSwitcherFilterFn.js +4 -1
- package/dist/cjs/exported-related/Filters/dateSwitcherFilterFn.js.map +1 -1
- package/dist/cjs/exported-related/Filters/index.js +4 -1
- package/dist/cjs/exported-related/Filters/index.js.map +1 -1
- package/dist/cjs/exported-related/Filters/multiSelectFilterFn.js +4 -1
- package/dist/cjs/exported-related/Filters/multiSelectFilterFn.js.map +1 -1
- package/dist/cjs/exported-related/Filters/numberRangeFilterFn.js +7 -2
- package/dist/cjs/exported-related/Filters/numberRangeFilterFn.js.map +1 -1
- package/dist/cjs/exported-related/Filters/singleDateFilterFn.js +4 -1
- package/dist/cjs/exported-related/Filters/singleDateFilterFn.js.map +1 -1
- package/dist/cjs/exported-related/Filters/singleSelectFilterFn.js +4 -1
- package/dist/cjs/exported-related/Filters/singleSelectFilterFn.js.map +1 -1
- package/dist/cjs/exported-related/Filters/types.js +4 -1
- package/dist/cjs/exported-related/Filters/types.js.map +1 -1
- package/dist/cjs/exported-related/Filters/utilities.js +4 -1
- package/dist/cjs/exported-related/Filters/utilities.js.map +1 -1
- package/dist/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js +21 -12
- package/dist/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +2 -2
- package/dist/cjs/exported-related/RowRenderer/index.js +4 -1
- package/dist/cjs/exported-related/RowRenderer/index.js.map +2 -2
- package/dist/cjs/exported-related/RowRenderer/useRowRendererHandlers.js +88 -70
- package/dist/cjs/exported-related/RowRenderer/useRowRendererHandlers.js.map +1 -1
- package/dist/cjs/exported-related/RowRenderer/useRowRendererProperties.js +12 -6
- package/dist/cjs/exported-related/RowRenderer/useRowRendererProperties.js.map +1 -1
- package/dist/cjs/exported-related/RowRenderer/useRowStyle.js +4 -1
- package/dist/cjs/exported-related/RowRenderer/useRowStyle.js.map +2 -2
- package/dist/cjs/exported-related/RowVariants.js +4 -1
- package/dist/cjs/exported-related/RowVariants.js.map +1 -1
- package/dist/cjs/exported-related/Toolbar/Toolbar.js +14 -8
- package/dist/cjs/exported-related/Toolbar/Toolbar.js.map +2 -2
- package/dist/cjs/exported-related/Toolbar/index.js +4 -1
- package/dist/cjs/exported-related/Toolbar/index.js.map +1 -1
- package/dist/cjs/exported-related/groupBy.js +4 -1
- package/dist/cjs/exported-related/groupBy.js.map +1 -1
- package/dist/cjs/exported-related/index.js +4 -1
- package/dist/cjs/exported-related/index.js.map +1 -1
- package/dist/cjs/helpers/addCellData.js +4 -1
- package/dist/cjs/helpers/addCellData.js.map +2 -2
- package/dist/cjs/helpers/cellPadding.js +4 -1
- package/dist/cjs/helpers/cellPadding.js.map +1 -1
- package/dist/cjs/helpers/columnsToGrid.js +4 -1
- package/dist/cjs/helpers/columnsToGrid.js.map +1 -1
- package/dist/cjs/helpers/getIdFromUniqueRowAccessor.js +4 -1
- package/dist/cjs/helpers/getIdFromUniqueRowAccessor.js.map +1 -1
- package/dist/cjs/helpers/index.js +4 -1
- package/dist/cjs/helpers/index.js.map +1 -1
- package/dist/cjs/helpers/refs-helpers.js +4 -1
- package/dist/cjs/helpers/refs-helpers.js.map +1 -1
- package/dist/cjs/helpers/sizeToCss.js +4 -1
- package/dist/cjs/helpers/sizeToCss.js.map +1 -1
- package/dist/cjs/index.js +4 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/parts/Cells/Cell.js +25 -16
- package/dist/cjs/parts/Cells/Cell.js.map +2 -2
- package/dist/cjs/parts/Cells/index.js +4 -1
- package/dist/cjs/parts/Cells/index.js.map +2 -2
- package/dist/cjs/parts/Cells/useCellStyle.js +4 -1
- package/dist/cjs/parts/Cells/useCellStyle.js.map +1 -1
- package/dist/cjs/parts/DnDHandle.js +4 -1
- package/dist/cjs/parts/DnDHandle.js.map +2 -2
- package/dist/cjs/parts/DropIndicator.js +4 -1
- package/dist/cjs/parts/DropIndicator.js.map +2 -2
- package/dist/cjs/parts/EmptyContent.js +4 -1
- package/dist/cjs/parts/EmptyContent.js.map +2 -2
- package/dist/cjs/parts/FilterBar/FiltersBar.js +4 -1
- package/dist/cjs/parts/FilterBar/FiltersBar.js.map +2 -2
- package/dist/cjs/parts/FilterBar/components/DateRangePill.js +4 -1
- package/dist/cjs/parts/FilterBar/components/DateRangePill.js.map +2 -2
- package/dist/cjs/parts/FilterBar/components/DateSwitcherPill.js +4 -1
- package/dist/cjs/parts/FilterBar/components/DateSwitcherPill.js.map +2 -2
- package/dist/cjs/parts/FilterBar/components/MultiSelectPill.js +20 -14
- package/dist/cjs/parts/FilterBar/components/MultiSelectPill.js.map +2 -2
- package/dist/cjs/parts/FilterBar/components/NumberRangePill.js +4 -1
- package/dist/cjs/parts/FilterBar/components/NumberRangePill.js.map +2 -2
- package/dist/cjs/parts/FilterBar/components/SelectPill.js +4 -1
- package/dist/cjs/parts/FilterBar/components/SelectPill.js.map +2 -2
- package/dist/cjs/parts/FilterBar/components/SingleDatePill.js +4 -1
- package/dist/cjs/parts/FilterBar/components/SingleDatePill.js.map +2 -2
- package/dist/cjs/parts/FilterBar/components/index.js +4 -1
- package/dist/cjs/parts/FilterBar/components/index.js.map +1 -1
- package/dist/cjs/parts/FilterBar/index.js +4 -1
- package/dist/cjs/parts/FilterBar/index.js.map +1 -1
- package/dist/cjs/parts/FilterBar/styled.js +4 -1
- package/dist/cjs/parts/FilterBar/styled.js.map +1 -1
- package/dist/cjs/parts/FilterBar/types.js +4 -1
- package/dist/cjs/parts/FilterBar/types.js.map +1 -1
- package/dist/cjs/parts/Filters/index.js +21 -15
- package/dist/cjs/parts/Filters/index.js.map +2 -2
- package/dist/cjs/parts/Footer.js +4 -1
- package/dist/cjs/parts/Footer.js.map +2 -2
- package/dist/cjs/parts/Headers/EmptyChildrenGroup.js +4 -1
- package/dist/cjs/parts/Headers/EmptyChildrenGroup.js.map +2 -2
- package/dist/cjs/parts/Headers/HeaderCell.js +26 -15
- package/dist/cjs/parts/Headers/HeaderCell.js.map +2 -2
- package/dist/cjs/parts/Headers/HeaderCellGroup.js +4 -1
- package/dist/cjs/parts/Headers/HeaderCellGroup.js.map +2 -2
- package/dist/cjs/parts/Headers/HeaderCellTitle.js +4 -1
- package/dist/cjs/parts/Headers/HeaderCellTitle.js.map +2 -2
- package/dist/cjs/parts/Headers/HeaderResizer.js +30 -17
- package/dist/cjs/parts/Headers/HeaderResizer.js.map +2 -2
- package/dist/cjs/parts/Headers/RequiredDot.js +4 -1
- package/dist/cjs/parts/Headers/RequiredDot.js.map +2 -2
- package/dist/cjs/parts/Headers/index.js +27 -18
- package/dist/cjs/parts/Headers/index.js.map +2 -2
- package/dist/cjs/parts/Headers/useHeaderCellConfig.js +4 -1
- package/dist/cjs/parts/Headers/useHeaderCellConfig.js.map +1 -1
- package/dist/cjs/parts/Headers/useHeaderCellHandlers.js +58 -46
- package/dist/cjs/parts/Headers/useHeaderCellHandlers.js.map +1 -1
- package/dist/cjs/parts/HoC/SortableItemContext.js +4 -1
- package/dist/cjs/parts/HoC/SortableItemContext.js.map +1 -1
- package/dist/cjs/parts/HoC/withConditionalDnDColumnContext.js +36 -26
- package/dist/cjs/parts/HoC/withConditionalDnDColumnContext.js.map +2 -2
- package/dist/cjs/parts/HoC/withConditionalDnDRowContext.js +35 -26
- package/dist/cjs/parts/HoC/withConditionalDnDRowContext.js.map +2 -2
- package/dist/cjs/parts/HoC/withConditionalDnDSortableContext.js +4 -1
- package/dist/cjs/parts/HoC/withConditionalDnDSortableContext.js.map +2 -2
- package/dist/cjs/parts/HoC/withDnDSortableColumnContext.js +16 -7
- package/dist/cjs/parts/HoC/withDnDSortableColumnContext.js.map +2 -2
- package/dist/cjs/parts/HoC/withDnDSortableRowContext.js +16 -7
- package/dist/cjs/parts/HoC/withDnDSortableRowContext.js.map +2 -2
- package/dist/cjs/parts/Loader.js +4 -1
- package/dist/cjs/parts/Loader.js.map +2 -2
- package/dist/cjs/parts/Row.js +4 -1
- package/dist/cjs/parts/Row.js.map +2 -2
- package/dist/cjs/parts/RowVariants/RowVariantHeader.js +8 -2
- package/dist/cjs/parts/RowVariants/RowVariantHeader.js.map +2 -2
- package/dist/cjs/parts/RowVariants/RowVariantPrimary.js +4 -1
- package/dist/cjs/parts/RowVariants/RowVariantPrimary.js.map +2 -2
- package/dist/cjs/parts/RowVariants/RowVariantSecondary.js +4 -1
- package/dist/cjs/parts/RowVariants/RowVariantSecondary.js.map +2 -2
- package/dist/cjs/parts/RowVariants/RowVariantSkeleton.js +4 -1
- package/dist/cjs/parts/RowVariants/RowVariantSkeleton.js.map +2 -2
- package/dist/cjs/parts/RowVariants/index.js +4 -1
- package/dist/cjs/parts/RowVariants/index.js.map +2 -2
- package/dist/cjs/parts/RowVariants/types.js +4 -1
- package/dist/cjs/parts/RowVariants/types.js.map +1 -1
- package/dist/cjs/parts/Rows.js +31 -25
- package/dist/cjs/parts/Rows.js.map +2 -2
- package/dist/cjs/parts/SortByCaret.js +15 -9
- package/dist/cjs/parts/SortByCaret.js.map +2 -2
- package/dist/cjs/parts/SortableHeaderCell.js +4 -1
- package/dist/cjs/parts/SortableHeaderCell.js.map +1 -1
- package/dist/cjs/parts/TableContent.js +21 -15
- package/dist/cjs/parts/TableContent.js.map +2 -2
- package/dist/cjs/parts/VirtualRowsList.js +16 -10
- package/dist/cjs/parts/VirtualRowsList.js.map +2 -2
- package/dist/cjs/parts/index.js +4 -1
- package/dist/cjs/parts/index.js.map +1 -1
- package/dist/cjs/parts/internal.js +4 -1
- package/dist/cjs/parts/internal.js.map +1 -1
- package/dist/cjs/styled.js +4 -1
- package/dist/cjs/styled.js.map +1 -1
- package/dist/cjs/tests/utils/index.js +4 -1
- package/dist/cjs/tests/utils/index.js.map +1 -1
- package/dist/cjs/types/FunctionalHoC.js +4 -1
- package/dist/cjs/types/FunctionalHoC.js.map +1 -1
- package/dist/cjs/types/props.js +4 -1
- package/dist/cjs/types/props.js.map +2 -2
- package/dist/esm/DataTable.js.map +2 -2
- package/dist/esm/DataTableContext.js.map +1 -1
- package/dist/esm/DataTableSchema.js +65 -33
- package/dist/esm/DataTableSchema.js.map +1 -1
- package/dist/esm/addons/Columns/ColumnAction/ColumnAction.js.map +1 -1
- package/dist/esm/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +2 -2
- package/dist/esm/addons/Columns/ColumnExpand/ColumnExpand.js +53 -35
- package/dist/esm/addons/Columns/ColumnExpand/ColumnExpand.js.map +2 -2
- package/dist/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +24 -12
- package/dist/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +2 -2
- package/dist/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +6 -3
- package/dist/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +2 -2
- package/dist/esm/addons/Columns/index.js.map +1 -1
- package/dist/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +2 -2
- package/dist/esm/addons/Editables/DateEditableCell/DateEditableCell.js +9 -6
- package/dist/esm/addons/Editables/DateEditableCell/DateEditableCell.js.map +2 -2
- package/dist/esm/addons/Editables/TextEditableCell/TextEditableCell.js +15 -12
- package/dist/esm/addons/Editables/TextEditableCell/TextEditableCell.js.map +2 -2
- package/dist/esm/addons/Editables/index.js.map +1 -1
- package/dist/esm/addons/Filters/Components/CurrencyRangeFilter/index.js +10 -7
- package/dist/esm/addons/Filters/Components/CurrencyRangeFilter/index.js.map +2 -2
- package/dist/esm/addons/Filters/Components/DateRangeFilter/index.js.map +2 -2
- package/dist/esm/addons/Filters/Components/DateSwitcherFilter/index.js +10 -7
- package/dist/esm/addons/Filters/Components/DateSwitcherFilter/index.js.map +2 -2
- package/dist/esm/addons/Filters/Components/NumberRangeFilter/index.js +10 -7
- package/dist/esm/addons/Filters/Components/NumberRangeFilter/index.js.map +2 -2
- package/dist/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +10 -7
- package/dist/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +2 -2
- package/dist/esm/addons/Filters/Components/SelectFilter/MultiCreatableFilter.js.map +2 -2
- package/dist/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +2 -2
- package/dist/esm/addons/Filters/Components/SelectFilter/SingleCreatableFilter.js.map +2 -2
- package/dist/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +2 -2
- package/dist/esm/addons/Filters/Components/SingleDateFilter/index.js.map +2 -2
- package/dist/esm/addons/Filters/Components/index.js.map +1 -1
- package/dist/esm/addons/Filters/index.js.map +1 -1
- package/dist/esm/addons/Pagination/Pagination.js.map +2 -2
- package/dist/esm/addons/Pagination/index.js.map +1 -1
- package/dist/esm/configs/constants.js.map +2 -2
- package/dist/esm/configs/fixedSizes.js.map +1 -1
- package/dist/esm/configs/index.js.map +1 -1
- package/dist/esm/configs/useDatatableConfig.js +50 -36
- package/dist/esm/configs/useDatatableConfig.js.map +1 -1
- package/dist/esm/configs/useInternalStateConfig.js +27 -21
- package/dist/esm/configs/useInternalStateConfig.js.map +1 -1
- package/dist/esm/configs/usePaginationConfig.js +38 -35
- package/dist/esm/configs/usePaginationConfig.js.map +1 -1
- package/dist/esm/configs/useRowFlattenization.js +14 -5
- package/dist/esm/configs/useRowFlattenization.js.map +1 -1
- package/dist/esm/configs/useTableColsWithAddons.js.map +1 -1
- package/dist/esm/configs/zIndexInternalConfig.js.map +1 -1
- package/dist/esm/exported-related/EditableCell.js +28 -19
- package/dist/esm/exported-related/EditableCell.js.map +2 -2
- package/dist/esm/exported-related/FilterBar/FilterBarDropdownMenu.js +16 -13
- package/dist/esm/exported-related/FilterBar/FilterBarDropdownMenu.js.map +2 -2
- package/dist/esm/exported-related/FilterBar/index.js.map +1 -1
- package/dist/esm/exported-related/FilterPopover.js +8 -5
- package/dist/esm/exported-related/FilterPopover.js.map +2 -2
- package/dist/esm/exported-related/FilterTypes.js.map +1 -1
- package/dist/esm/exported-related/Filters/applyOutOfTheBoxFilters.js.map +1 -1
- package/dist/esm/exported-related/Filters/currencyRangeFilterFn.js +6 -2
- package/dist/esm/exported-related/Filters/currencyRangeFilterFn.js.map +1 -1
- package/dist/esm/exported-related/Filters/dateRangeFilterFn.js +3 -1
- package/dist/esm/exported-related/Filters/dateRangeFilterFn.js.map +1 -1
- package/dist/esm/exported-related/Filters/dateSwitcherFilterFn.js.map +1 -1
- package/dist/esm/exported-related/Filters/index.js.map +1 -1
- package/dist/esm/exported-related/Filters/multiSelectFilterFn.js.map +1 -1
- package/dist/esm/exported-related/Filters/numberRangeFilterFn.js +3 -1
- package/dist/esm/exported-related/Filters/numberRangeFilterFn.js.map +1 -1
- package/dist/esm/exported-related/Filters/singleDateFilterFn.js.map +1 -1
- package/dist/esm/exported-related/Filters/singleSelectFilterFn.js.map +1 -1
- package/dist/esm/exported-related/Filters/types.js.map +1 -1
- package/dist/esm/exported-related/Filters/utilities.js.map +1 -1
- package/dist/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js +17 -11
- package/dist/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +2 -2
- package/dist/esm/exported-related/RowRenderer/index.js.map +2 -2
- package/dist/esm/exported-related/RowRenderer/useRowRendererHandlers.js +84 -69
- package/dist/esm/exported-related/RowRenderer/useRowRendererHandlers.js.map +1 -1
- package/dist/esm/exported-related/RowRenderer/useRowRendererProperties.js +8 -5
- package/dist/esm/exported-related/RowRenderer/useRowRendererProperties.js.map +1 -1
- package/dist/esm/exported-related/RowRenderer/useRowStyle.js.map +1 -1
- package/dist/esm/exported-related/RowVariants.js.map +1 -1
- package/dist/esm/exported-related/Toolbar/Toolbar.js +10 -7
- package/dist/esm/exported-related/Toolbar/Toolbar.js.map +2 -2
- package/dist/esm/exported-related/Toolbar/index.js.map +1 -1
- package/dist/esm/exported-related/groupBy.js.map +1 -1
- package/dist/esm/exported-related/index.js.map +1 -1
- package/dist/esm/helpers/addCellData.js.map +2 -2
- package/dist/esm/helpers/cellPadding.js.map +1 -1
- package/dist/esm/helpers/columnsToGrid.js.map +1 -1
- package/dist/esm/helpers/getIdFromUniqueRowAccessor.js.map +1 -1
- package/dist/esm/helpers/index.js.map +1 -1
- package/dist/esm/helpers/refs-helpers.js.map +1 -1
- package/dist/esm/helpers/sizeToCss.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/parts/Cells/Cell.js +21 -15
- package/dist/esm/parts/Cells/Cell.js.map +2 -2
- package/dist/esm/parts/Cells/index.js.map +2 -2
- package/dist/esm/parts/Cells/useCellStyle.js.map +1 -1
- package/dist/esm/parts/DnDHandle.js.map +2 -2
- package/dist/esm/parts/DropIndicator.js.map +2 -2
- package/dist/esm/parts/EmptyContent.js.map +2 -2
- package/dist/esm/parts/FilterBar/FiltersBar.js.map +2 -2
- package/dist/esm/parts/FilterBar/components/DateRangePill.js.map +2 -2
- package/dist/esm/parts/FilterBar/components/DateSwitcherPill.js.map +2 -2
- package/dist/esm/parts/FilterBar/components/MultiSelectPill.js +16 -13
- package/dist/esm/parts/FilterBar/components/MultiSelectPill.js.map +2 -2
- package/dist/esm/parts/FilterBar/components/NumberRangePill.js.map +2 -2
- package/dist/esm/parts/FilterBar/components/SelectPill.js.map +2 -2
- package/dist/esm/parts/FilterBar/components/SingleDatePill.js.map +2 -2
- package/dist/esm/parts/FilterBar/components/index.js.map +1 -1
- package/dist/esm/parts/FilterBar/index.js.map +1 -1
- package/dist/esm/parts/FilterBar/styled.js.map +1 -1
- package/dist/esm/parts/FilterBar/types.js.map +1 -1
- package/dist/esm/parts/Filters/index.js +17 -14
- package/dist/esm/parts/Filters/index.js.map +2 -2
- package/dist/esm/parts/Footer.js.map +2 -2
- package/dist/esm/parts/Headers/EmptyChildrenGroup.js.map +2 -2
- package/dist/esm/parts/Headers/HeaderCell.js +22 -14
- package/dist/esm/parts/Headers/HeaderCell.js.map +2 -2
- package/dist/esm/parts/Headers/HeaderCellGroup.js.map +2 -2
- package/dist/esm/parts/Headers/HeaderCellTitle.js.map +2 -2
- package/dist/esm/parts/Headers/HeaderResizer.js +26 -16
- package/dist/esm/parts/Headers/HeaderResizer.js.map +2 -2
- package/dist/esm/parts/Headers/RequiredDot.js.map +2 -2
- package/dist/esm/parts/Headers/index.js +23 -17
- package/dist/esm/parts/Headers/index.js.map +2 -2
- package/dist/esm/parts/Headers/useHeaderCellConfig.js.map +1 -1
- package/dist/esm/parts/Headers/useHeaderCellHandlers.js +54 -45
- package/dist/esm/parts/Headers/useHeaderCellHandlers.js.map +1 -1
- package/dist/esm/parts/HoC/SortableItemContext.js.map +1 -1
- package/dist/esm/parts/HoC/withConditionalDnDColumnContext.js +32 -25
- package/dist/esm/parts/HoC/withConditionalDnDColumnContext.js.map +2 -2
- package/dist/esm/parts/HoC/withConditionalDnDRowContext.js +31 -25
- package/dist/esm/parts/HoC/withConditionalDnDRowContext.js.map +2 -2
- package/dist/esm/parts/HoC/withConditionalDnDSortableContext.js.map +2 -2
- package/dist/esm/parts/HoC/withDnDSortableColumnContext.js +12 -6
- package/dist/esm/parts/HoC/withDnDSortableColumnContext.js.map +2 -2
- package/dist/esm/parts/HoC/withDnDSortableRowContext.js +12 -6
- package/dist/esm/parts/HoC/withDnDSortableRowContext.js.map +2 -2
- package/dist/esm/parts/Loader.js.map +2 -2
- package/dist/esm/parts/Row.js.map +2 -2
- package/dist/esm/parts/RowVariants/RowVariantHeader.js +4 -1
- package/dist/esm/parts/RowVariants/RowVariantHeader.js.map +2 -2
- package/dist/esm/parts/RowVariants/RowVariantPrimary.js.map +2 -2
- package/dist/esm/parts/RowVariants/RowVariantSecondary.js.map +2 -2
- package/dist/esm/parts/RowVariants/RowVariantSkeleton.js.map +2 -2
- package/dist/esm/parts/RowVariants/index.js.map +2 -2
- package/dist/esm/parts/RowVariants/types.js.map +1 -1
- package/dist/esm/parts/Rows.js +27 -24
- package/dist/esm/parts/Rows.js.map +2 -2
- package/dist/esm/parts/SortByCaret.js +11 -8
- package/dist/esm/parts/SortByCaret.js.map +2 -2
- package/dist/esm/parts/SortableHeaderCell.js.map +1 -1
- package/dist/esm/parts/TableContent.js +17 -14
- package/dist/esm/parts/TableContent.js.map +2 -2
- package/dist/esm/parts/VirtualRowsList.js +12 -9
- package/dist/esm/parts/VirtualRowsList.js.map +2 -2
- package/dist/esm/parts/index.js.map +2 -2
- package/dist/esm/parts/internal.js.map +1 -1
- package/dist/esm/styled.js.map +1 -1
- package/dist/esm/tests/utils/index.js.map +1 -1
- package/dist/esm/types/FunctionalHoC.js.map +1 -1
- package/dist/esm/types/props.js.map +2 -2
- package/package.json +18 -18
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/HeaderCellTitle.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { SimpleTruncatedTooltipText } from '@elliemae/ds-truncated-tooltip-text';\nimport { TypescriptColumn, TypescriptContext } from '../../types/props';\nimport { SortableItemContextType } from '../HoC/SortableItemContext';\nimport { RequiredDot } from './RequiredDot';\nimport { DATA_TESTID } from '../../configs/constants';\n\ninterface HeaderCellTitle {\n column: TypescriptColumn;\n ctx: TypescriptContext;\n draggableProps: SortableItemContextType['draggableProps'];\n textWrap: 'wrap' | 'wrap-all' | 'truncate';\n}\n\nconst StringTitle = ({ column, textWrap }) =>\n (column.textWrap || textWrap) === 'truncate' ? (\n <SimpleTruncatedTooltipText value={column.Header} />\n ) : (\n <>{column.Header}</>\n );\n\nexport const HeaderCellTitle: React.ComponentType<HeaderCellTitle> = ({ column, ctx, draggableProps, textWrap }) => (\n <div style={{ display: 'flex', alignItems: 'center' }} data-testid={DATA_TESTID.DATA_TABLE_HEADER_CELL_TITLE}>\n {typeof column.Header === 'string' ? (\n <StringTitle column={column} textWrap={textWrap} />\n ) : (\n <column.Header column={column} ctx={ctx} draggableProps={draggableProps} />\n )}\n {column.required && <RequiredDot />}\n </div>\n);\n"],
|
|
5
|
-
"mappings": "AAAA;
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAvB,OAAOA,YAAW;AAClB,SAAS,kCAAkC;AAG3C,SAAS,mBAAmB;AAC5B,SAAS,mBAAmB;AAS5B,MAAM,cAAc,CAAC,EAAE,QAAQ,SAAS,OACrC,OAAO,YAAY,cAAc,aAChC,gBAAAA,OAAA,cAAC;AAAA,EAA2B,OAAO,OAAO;AAAA,CAAQ,IAElD,gBAAAA,OAAA,cAAAA,OAAA,gBAAG,OAAO,MAAO;AAGd,MAAM,kBAAwD,CAAC,EAAE,QAAQ,KAAK,gBAAgB,SAAS,MAC5G,gBAAAA,OAAA,cAAC;AAAA,EAAI,OAAO,EAAE,SAAS,QAAQ,YAAY,SAAS;AAAA,EAAG,eAAa,YAAY;AAAA,GAC7E,OAAO,OAAO,WAAW,WACxB,gBAAAA,OAAA,cAAC;AAAA,EAAY;AAAA,EAAgB;AAAA,CAAoB,IAEjD,gBAAAA,OAAA,cAAC,OAAO,QAAP;AAAA,EAAc;AAAA,EAAgB;AAAA,EAAU;AAAA,CAAgC,GAE1E,OAAO,YAAY,gBAAAA,OAAA,cAAC,iBAAY,CACnC;",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -13,12 +13,15 @@ const HeaderResizer = ({ column }) => {
|
|
|
13
13
|
} = useContext(DataTableContext);
|
|
14
14
|
const [isResizing, setIsResizing] = useState(false);
|
|
15
15
|
const [nextWidth, setNextWidth] = useState(column.width ?? 150);
|
|
16
|
-
const visibleColumnsCopy = useMemo(
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
16
|
+
const visibleColumnsCopy = useMemo(
|
|
17
|
+
() => visibleColumns.reduce((acc, col) => {
|
|
18
|
+
if (col.columns) {
|
|
19
|
+
return [...acc, ...col.columns];
|
|
20
|
+
}
|
|
21
|
+
return [...acc, { ...col }];
|
|
22
|
+
}, []),
|
|
23
|
+
[visibleColumns]
|
|
24
|
+
);
|
|
22
25
|
useEffect(() => {
|
|
23
26
|
const realColumnIndex = visibleColumnsCopy.findIndex((visibleColumn) => visibleColumn.id === column.id);
|
|
24
27
|
if (realColumnIndex > -1) {
|
|
@@ -30,16 +33,23 @@ const HeaderResizer = ({ column }) => {
|
|
|
30
33
|
const onResizeStart = useCallback(() => {
|
|
31
34
|
setIsResizing(true);
|
|
32
35
|
}, []);
|
|
33
|
-
const onResizeHandler = useCallback(
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
36
|
+
const onResizeHandler = useCallback(
|
|
37
|
+
(e) => {
|
|
38
|
+
const delta = ("clientX" in e ? e.clientX : e.touches[0].clientX) - (ref.current?.getBoundingClientRect().x ?? 0);
|
|
39
|
+
const realColumnIndex = visibleColumnsCopy.findIndex((visibleColumn) => visibleColumn.id === column.id);
|
|
40
|
+
if (realColumnIndex > -1) {
|
|
41
|
+
const widthWithDelta = narrow(
|
|
42
|
+
nextWidth + delta,
|
|
43
|
+
visibleColumnsCopy[realColumnIndex].minWidth,
|
|
44
|
+
visibleColumnsCopy[realColumnIndex].maxWidth
|
|
45
|
+
);
|
|
46
|
+
setNextWidth(widthWithDelta);
|
|
47
|
+
}
|
|
48
|
+
e.preventDefault();
|
|
49
|
+
e.stopPropagation();
|
|
50
|
+
},
|
|
51
|
+
[column.id, nextWidth, visibleColumnsCopy]
|
|
52
|
+
);
|
|
43
53
|
const onResizeEnd = useCallback(() => {
|
|
44
54
|
setGridLayout(columnsToGrid(visibleColumns, ColsLayoutStyle.Fixed));
|
|
45
55
|
setIsResizing(false);
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/HeaderResizer.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useState, useCallback, useContext, useRef, useEffect, useMemo } from 'react';\nimport { ColsLayoutStyle } from '../../configs/constants';\nimport { DataTableContext } from '../../DataTableContext';\nimport { columnsToGrid } from '../../helpers';\nimport { StyledResizer } from '../../styled';\nimport { TypescriptColumn } from '../../types/props';\n\nconst narrow = (value: number, min: number | undefined, max: number | undefined): number =>\n Math.min(Math.max(value, min ?? 30), max ?? Infinity);\n\nexport const HeaderResizer: React.ComponentType<{\n column: TypescriptColumn;\n}> = ({ column }) => {\n const {\n layoutHelpers: { setGridLayout },\n visibleColumns,\n tableProps: { onColumnResize },\n } = useContext(DataTableContext);\n\n const [isResizing, setIsResizing] = useState(false);\n const [nextWidth, setNextWidth] = useState(column.width ?? 150);\n const visibleColumnsCopy = useMemo(\n () =>\n visibleColumns.reduce((acc, col) => {\n if (col.columns) {\n return [...acc, ...col.columns];\n }\n return [...acc, { ...col }];\n }, [] as TypescriptColumn[]),\n [visibleColumns],\n );\n\n useEffect(() => {\n const realColumnIndex = visibleColumnsCopy.findIndex((visibleColumn) => visibleColumn.id === column.id);\n if (realColumnIndex > -1) {\n visibleColumnsCopy[realColumnIndex].width = nextWidth;\n setGridLayout(columnsToGrid(visibleColumnsCopy, ColsLayoutStyle.Fixed));\n }\n }, [column.id, nextWidth, setGridLayout, visibleColumnsCopy]);\n\n const ref = useRef<HTMLDivElement>(null);\n\n const onResizeStart = useCallback(() => {\n setIsResizing(true);\n }, []);\n\n const onResizeHandler = useCallback(\n (e: MouseEvent | TouchEvent) => {\n const delta = ('clientX' in e ? e.clientX : e.touches[0].clientX) - (ref.current?.getBoundingClientRect().x ?? 0); // delta in pixels\n\n const realColumnIndex = visibleColumnsCopy.findIndex((visibleColumn) => visibleColumn.id === column.id);\n if (realColumnIndex > -1) {\n const widthWithDelta = narrow(\n nextWidth + delta,\n visibleColumnsCopy[realColumnIndex].minWidth,\n visibleColumnsCopy[realColumnIndex].maxWidth,\n );\n setNextWidth(widthWithDelta);\n }\n // To prevent text selection\n e.preventDefault();\n e.stopPropagation();\n },\n [column.id, nextWidth, visibleColumnsCopy],\n );\n\n const onResizeEnd = useCallback(() => {\n setGridLayout(columnsToGrid(visibleColumns, ColsLayoutStyle.Fixed));\n setIsResizing(false);\n onColumnResize(column.id, nextWidth);\n }, [onColumnResize, column.id, nextWidth, setGridLayout, visibleColumns]);\n\n useEffect(() => {\n const debouncedResizeHandler = onResizeHandler;\n const debouncedResizeEnd = onResizeEnd;\n const addEvents = () => {\n document.addEventListener('mousemove', debouncedResizeHandler);\n document.addEventListener('touchmove', debouncedResizeHandler);\n document.addEventListener('mouseup', debouncedResizeEnd);\n document.addEventListener('touchend', debouncedResizeEnd);\n };\n const removeEvents = () => {\n document.removeEventListener('mousemove', debouncedResizeHandler);\n document.removeEventListener('touchmove', debouncedResizeHandler);\n document.removeEventListener('mouseup', debouncedResizeEnd);\n document.removeEventListener('touchend', debouncedResizeEnd);\n };\n\n if (isResizing) addEvents();\n else removeEvents();\n\n // just in case the component is unmounted\n return removeEvents;\n }, [isResizing, onResizeHandler, onResizeEnd]);\n\n return (\n <StyledResizer\n ref={ref}\n role=\"separator\"\n draggable={false}\n isResizing={isResizing}\n onMouseDown={onResizeStart}\n onTouchStart={onResizeStart}\n onMouseUp={onResizeEnd}\n onTouchEnd={onResizeEnd}\n onClick={(e) => e.stopPropagation()}\n />\n );\n};\n"],
|
|
5
|
-
"mappings": "AAAA;
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/RequiredDot.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\n\nexport const RequiredDot: React.ComponentType = () => (\n <svg height=\"4\" width=\"4\" style={{ marginBottom: '6px', marginLeft: '4px' }}>\n <circle cx=\"2\" cy=\"2\" r=\"2\" fill=\"red\" />\n </svg>\n);\n"],
|
|
5
|
-
"mappings": "AAAA;
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAvB,OAAOA,YAAW;AAEX,MAAM,cAAmC,MAC9C,gBAAAA,OAAA,cAAC;AAAA,EAAI,QAAO;AAAA,EAAI,OAAM;AAAA,EAAI,OAAO,EAAE,cAAc,OAAO,YAAY,MAAM;AAAA,GACxE,gBAAAA,OAAA,cAAC;AAAA,EAAO,IAAG;AAAA,EAAI,IAAG;AAAA,EAAI,GAAE;AAAA,EAAI,MAAK;AAAA,CAAM,CACzC;",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -12,23 +12,29 @@ const HeadersComp = () => {
|
|
|
12
12
|
columnHeaderRef,
|
|
13
13
|
visibleColumns
|
|
14
14
|
} = useContext(DataTableContext);
|
|
15
|
-
const HeadersCells = useMemo(
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
15
|
+
const HeadersCells = useMemo(
|
|
16
|
+
() => /* @__PURE__ */ React2.createElement(SortableHeaderCell, {
|
|
17
|
+
items: visibleColumns
|
|
18
|
+
}, /* @__PURE__ */ React2.createElement(StyledHeadTr, {
|
|
19
|
+
role: "row",
|
|
20
|
+
cols: gridLayout,
|
|
21
|
+
colsLayoutStyle,
|
|
22
|
+
isExpandable
|
|
23
|
+
}, visibleColumns.map((h, index) => /* @__PURE__ */ React2.createElement(HeaderCellGroupSortable, {
|
|
24
|
+
header: h,
|
|
25
|
+
key: h.id,
|
|
26
|
+
isLast: index === visibleColumns.length - 1
|
|
27
|
+
})))),
|
|
28
|
+
[isExpandable, visibleColumns, gridLayout, colsLayoutStyle]
|
|
29
|
+
);
|
|
30
|
+
const PureHeaders = useMemo(
|
|
31
|
+
() => /* @__PURE__ */ React2.createElement(StyledHeadWrapper, {
|
|
32
|
+
totalColumnsWidth,
|
|
33
|
+
colsLayoutStyle,
|
|
34
|
+
ref: columnHeaderRef
|
|
35
|
+
}, HeadersCells),
|
|
36
|
+
[totalColumnsWidth, colsLayoutStyle, columnHeaderRef, HeadersCells]
|
|
37
|
+
);
|
|
32
38
|
return PureHeaders;
|
|
33
39
|
};
|
|
34
40
|
const Headers = withConditionalDnDColumnContext(HeadersComp);
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/index.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useContext, useMemo } from 'react';\nimport { StyledHeadWrapper, StyledHeadTr } from '../../styled';\nimport { DataTableContext } from '../../DataTableContext';\nimport { withConditionalDnDColumnContext } from '../HoC/withConditionalDnDColumnContext';\nimport { HeaderCellGroupSortable } from './HeaderCellGroup';\nimport { SortableHeaderCell } from '../SortableHeaderCell';\nimport { TypescriptColumn } from '../../types/props';\n\nconst HeadersComp = (): JSX.Element => {\n const {\n tableProps: { isExpandable, colsLayoutStyle },\n layoutHelpers: { gridLayout, totalColumnsWidth },\n columnHeaderRef,\n visibleColumns,\n } = useContext(DataTableContext);\n const HeadersCells = useMemo(\n () => (\n <SortableHeaderCell items={visibleColumns}>\n <StyledHeadTr role=\"row\" cols={gridLayout} colsLayoutStyle={colsLayoutStyle} isExpandable={isExpandable}>\n {visibleColumns.map((h: TypescriptColumn, index) => (\n <HeaderCellGroupSortable header={h} key={h.id} isLast={index === visibleColumns.length - 1} />\n ))}\n </StyledHeadTr>\n </SortableHeaderCell>\n ),\n [isExpandable, visibleColumns, gridLayout, colsLayoutStyle],\n );\n\n const PureHeaders = useMemo(\n () => (\n <StyledHeadWrapper totalColumnsWidth={totalColumnsWidth} colsLayoutStyle={colsLayoutStyle} ref={columnHeaderRef}>\n {HeadersCells}\n </StyledHeadWrapper>\n ),\n [totalColumnsWidth, colsLayoutStyle, columnHeaderRef, HeadersCells],\n );\n return PureHeaders;\n};\n\nexport const Headers = withConditionalDnDColumnContext(HeadersComp);\nexport default Headers;\n"],
|
|
5
|
-
"mappings": "AAAA;
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAvB,OAAOA,UAAS,YAAY,eAAe;AAC3C,SAAS,mBAAmB,oBAAoB;AAChD,SAAS,wBAAwB;AACjC,SAAS,uCAAuC;AAChD,SAAS,+BAA+B;AACxC,SAAS,0BAA0B;AAGnC,MAAM,cAAc,MAAmB;AACrC,QAAM;AAAA,IACJ,YAAY,EAAE,cAAc,gBAAgB;AAAA,IAC5C,eAAe,EAAE,YAAY,kBAAkB;AAAA,IAC/C;AAAA,IACA;AAAA,EACF,IAAI,WAAW,gBAAgB;AAC/B,QAAM,eAAe;AAAA,IACnB,MACE,gBAAAA,OAAA,cAAC;AAAA,MAAmB,OAAO;AAAA,OACzB,gBAAAA,OAAA,cAAC;AAAA,MAAa,MAAK;AAAA,MAAM,MAAM;AAAA,MAAY;AAAA,MAAkC;AAAA,OAC1E,eAAe,IAAI,CAAC,GAAqB,UACxC,gBAAAA,OAAA,cAAC;AAAA,MAAwB,QAAQ;AAAA,MAAG,KAAK,EAAE;AAAA,MAAI,QAAQ,UAAU,eAAe,SAAS;AAAA,KAAG,CAC7F,CACH,CACF;AAAA,IAEF,CAAC,cAAc,gBAAgB,YAAY,eAAe;AAAA,EAC5D;AAEA,QAAM,cAAc;AAAA,IAClB,MACE,gBAAAA,OAAA,cAAC;AAAA,MAAkB;AAAA,MAAsC;AAAA,MAAkC,KAAK;AAAA,OAC7F,YACH;AAAA,IAEF,CAAC,mBAAmB,iBAAiB,iBAAiB,YAAY;AAAA,EACpE;AACA,SAAO;AACT;AAEO,MAAM,UAAU,gCAAgC,WAAW;AAClE,IAAO,kBAAQ;",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/useHeaderCellConfig.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport { TypescriptColumn } from '../../types/props';\nimport { SortableItemContextType } from '../HoC/SortableItemContext';\n\ntype useHeaderCellConfigType = (\n args: {\n column: TypescriptColumn;\n dragAndDropColumns: boolean;\n reduxHeader: { showDnDHandle: boolean };\n isDragOverlay: boolean;\n } & SortableItemContextType,\n) => {\n hasFilter: boolean;\n hasDnD: boolean;\n hasSortingCaret: boolean;\n hasRightIcons: boolean;\n isDragging: boolean;\n shouldShowDnD: boolean;\n hCols: string[];\n};\n\nexport const useHeaderCellConfig: useHeaderCellConfigType = ({\n column,\n dragAndDropColumns,\n draggableProps,\n reduxHeader,\n isDragOverlay,\n}) => {\n const hasFilter = !!(column.filter || column.Filter);\n\n const hasDnD = dragAndDropColumns && !column.disableDnD;\n\n const hasSortingCaret = column.canSort && typeof column.isSortedDesc === 'boolean';\n\n const hasRightIcons = !isDragOverlay && (hasSortingCaret || hasFilter);\n\n const isDragging = draggableProps && draggableProps.isDragging;\n\n const shouldShowDnD =\n hasDnD &&\n ((reduxHeader?.showDnDHandle && draggableProps && !draggableProps.active) ||\n (draggableProps && draggableProps.isDragging) ||\n isDragOverlay);\n\n // Column definition\n const hCols = ['auto'];\n if (hasRightIcons) hCols.push('min-content');\n if (shouldShowDnD) hCols.unshift('min-content');\n\n return {\n hasFilter,\n hasDnD,\n hasSortingCaret,\n hasRightIcons,\n isDragging,\n hCols,\n shouldShowDnD,\n };\n};\n"],
|
|
5
|
-
"mappings": "AAAA;
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACqBhB,MAAM,sBAA+C,CAAC;AAAA,EAC3D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,YAAY,CAAC,EAAE,OAAO,UAAU,OAAO;AAE7C,QAAM,SAAS,sBAAsB,CAAC,OAAO;AAE7C,QAAM,kBAAkB,OAAO,WAAW,OAAO,OAAO,iBAAiB;AAEzE,QAAM,gBAAgB,CAAC,kBAAkB,mBAAmB;AAE5D,QAAM,aAAa,kBAAkB,eAAe;AAEpD,QAAM,gBACJ,WACE,aAAa,iBAAiB,kBAAkB,CAAC,eAAe,UAC/D,kBAAkB,eAAe,cAClC;AAGJ,QAAM,QAAQ,CAAC,MAAM;AACrB,MAAI;AAAe,UAAM,KAAK,aAAa;AAC3C,MAAI;AAAe,UAAM,QAAQ,aAAa;AAE9C,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -34,51 +34,60 @@ const useHeaderCellHandlers = ({
|
|
|
34
34
|
});
|
|
35
35
|
}
|
|
36
36
|
}, [column.canSort, column.id, column.isSortedDesc, onColumnSortChange]);
|
|
37
|
-
const onKeyDown = useCallback(
|
|
38
|
-
|
|
39
|
-
e.
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
e.
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
dragHandleRef.current
|
|
55
|
-
|
|
56
|
-
filterIconRef.current
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
37
|
+
const onKeyDown = useCallback(
|
|
38
|
+
(e) => {
|
|
39
|
+
if (e.code === "ArrowDown" && column.canSort) {
|
|
40
|
+
e.preventDefault();
|
|
41
|
+
onColumnSortChange({
|
|
42
|
+
column: column.id,
|
|
43
|
+
direction: "DESC"
|
|
44
|
+
});
|
|
45
|
+
} else if (e.code === "ArrowUp" && column.canSort) {
|
|
46
|
+
e.preventDefault();
|
|
47
|
+
onColumnSortChange({
|
|
48
|
+
column: column.id,
|
|
49
|
+
direction: "ASC"
|
|
50
|
+
});
|
|
51
|
+
} else if (["Enter", "Space"].includes(e.code)) {
|
|
52
|
+
patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD, true));
|
|
53
|
+
setTimeout(() => {
|
|
54
|
+
if (dragHandleRef.current)
|
|
55
|
+
dragHandleRef.current.focus();
|
|
56
|
+
else if (filterIconRef.current)
|
|
57
|
+
filterIconRef.current.focus();
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
[
|
|
62
|
+
column.canSort,
|
|
63
|
+
column.id,
|
|
64
|
+
onColumnSortChange,
|
|
65
|
+
patchHeader,
|
|
66
|
+
reduxHeader,
|
|
67
|
+
hasFilter,
|
|
68
|
+
hasDnD,
|
|
69
|
+
dragHandleRef,
|
|
70
|
+
filterIconRef
|
|
71
|
+
]
|
|
72
|
+
);
|
|
73
|
+
const onFocus = useCallback(
|
|
74
|
+
(e) => {
|
|
75
|
+
if (e.target === headerRef?.current) {
|
|
76
|
+
patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD));
|
|
77
|
+
}
|
|
78
|
+
},
|
|
79
|
+
[column.id, hasDnD, hasFilter, headerRef, patchHeader, reduxHeader]
|
|
80
|
+
);
|
|
81
|
+
const onBlur = useCallback(
|
|
82
|
+
(e) => {
|
|
83
|
+
if (e.relatedTarget === dragHandleRef.current)
|
|
84
|
+
return;
|
|
85
|
+
if (e.relatedTarget === filterIconRef.current)
|
|
86
|
+
return;
|
|
87
|
+
patchHeader(column.id, buildNextHeader(reduxHeader, false, hasFilter, hasDnD));
|
|
88
|
+
},
|
|
89
|
+
[dragHandleRef, filterIconRef, patchHeader, column.id, reduxHeader, hasFilter, hasDnD]
|
|
90
|
+
);
|
|
82
91
|
return { onMouseEnter, onMouseLeave, onClick, onKeyDown, onBlur, onFocus };
|
|
83
92
|
};
|
|
84
93
|
export {
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/useHeaderCellHandlers.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-params */\nimport { useCallback } from 'react';\nimport { TypescriptColumn } from '../../types/props';\n\ntype useHeaderCellHandlersType = (args: {\n hasFilter: boolean;\n patchHeader: (headerId: string, newHeader: Record<string, unknown>) => void;\n column: TypescriptColumn;\n reduxHeader: Record<string, unknown>;\n hasDnD: boolean;\n onColumnSortChange: (newSort: { column: string; direction: 'ASC' | 'DESC' }) => void;\n dragHandleRef: React.MutableRefObject<HTMLDivElement>;\n filterIconRef: React.MutableRefObject<HTMLDivElement>;\n headerRef: React.MutableRefObject<HTMLTableColElement>;\n}) => {\n onMouseEnter: React.MouseEventHandler;\n onMouseLeave: React.MouseEventHandler;\n onClick: React.MouseEventHandler;\n onKeyDown: React.KeyboardEventHandler;\n onFocus: React.FocusEventHandler;\n onBlur: React.FocusEventHandler;\n};\n\nconst buildNextHeader = (\n reduxHeader: Record<string, unknown>,\n value: boolean,\n hasFilter: boolean,\n hasDnD: boolean,\n withTabStops = false,\n) => ({\n hideFilterMenu: true, // Do this to overwrite it if it exists\n ...reduxHeader,\n hideFilterButton: !(hasFilter && value),\n showDnDHandle: hasDnD && value,\n withTabStops,\n});\n\nexport const useHeaderCellHandlers: useHeaderCellHandlersType = ({\n hasFilter,\n patchHeader,\n column,\n reduxHeader,\n hasDnD,\n onColumnSortChange,\n dragHandleRef,\n filterIconRef,\n headerRef,\n}) => {\n const onMouseEnter: React.MouseEventHandler = useCallback(() => {\n patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD));\n }, [column.id, hasDnD, hasFilter, patchHeader, reduxHeader]);\n\n const onMouseLeave: React.MouseEventHandler = useCallback(() => {\n if (!headerRef?.current?.contains(document.activeElement)) {\n patchHeader(column.id, buildNextHeader(reduxHeader, false, hasFilter, hasDnD));\n }\n }, [column.id, hasDnD, hasFilter, headerRef, patchHeader, reduxHeader]);\n\n const onClick: React.MouseEventHandler = useCallback(() => {\n if (column.canSort) {\n onColumnSortChange({\n column: column.id,\n direction: column.isSortedDesc ? 'ASC' : 'DESC',\n });\n }\n }, [column.canSort, column.id, column.isSortedDesc, onColumnSortChange]);\n\n const onKeyDown: React.KeyboardEventHandler = useCallback(\n (e) => {\n if (e.code === 'ArrowDown' && column.canSort) {\n e.preventDefault();\n onColumnSortChange({\n column: column.id,\n direction: 'DESC',\n });\n } else if (e.code === 'ArrowUp' && column.canSort) {\n e.preventDefault();\n onColumnSortChange({\n column: column.id,\n direction: 'ASC',\n });\n } else if (['Enter', 'Space'].includes(e.code)) {\n patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD, true));\n // Elements don't not yet exist\n setTimeout(() => {\n if (dragHandleRef.current) dragHandleRef.current.focus();\n else if (filterIconRef.current) filterIconRef.current.focus();\n });\n }\n },\n [\n column.canSort,\n column.id,\n onColumnSortChange,\n patchHeader,\n reduxHeader,\n hasFilter,\n hasDnD,\n dragHandleRef,\n filterIconRef,\n ],\n );\n\n const onFocus: React.FocusEventHandler = useCallback(\n (e) => {\n // Don't do anything if focus wasn't placed in the element (bubling issues)\n if (e.target === headerRef?.current) {\n patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD));\n }\n },\n [column.id, hasDnD, hasFilter, headerRef, patchHeader, reduxHeader],\n );\n\n const onBlur: React.FocusEventHandler = useCallback(\n (e) => {\n // Don't do anything if blur was caused by going to a child\n if (e.relatedTarget === dragHandleRef.current) return;\n if (e.relatedTarget === filterIconRef.current) return;\n patchHeader(column.id, buildNextHeader(reduxHeader, false, hasFilter, hasDnD));\n },\n [dragHandleRef, filterIconRef, patchHeader, column.id, reduxHeader, hasFilter, hasDnD],\n );\n\n return { onMouseEnter, onMouseLeave, onClick, onKeyDown, onBlur, onFocus };\n};\n"],
|
|
5
|
-
"mappings": "AAAA;
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACCvB,SAAS,mBAAmB;AAsB5B,MAAM,kBAAkB,CACtB,aACA,OACA,WACA,QACA,eAAe,WACX;AAAA,EACJ,gBAAgB;AAAA,EAChB,GAAG;AAAA,EACH,kBAAkB,EAAE,aAAa;AAAA,EACjC,eAAe,UAAU;AAAA,EACzB;AACF;AAEO,MAAM,wBAAmD,CAAC;AAAA,EAC/D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,eAAwC,YAAY,MAAM;AAC9D,gBAAY,OAAO,IAAI,gBAAgB,aAAa,MAAM,WAAW,MAAM,CAAC;AAAA,EAC9E,GAAG,CAAC,OAAO,IAAI,QAAQ,WAAW,aAAa,WAAW,CAAC;AAE3D,QAAM,eAAwC,YAAY,MAAM;AAC9D,QAAI,CAAC,WAAW,SAAS,SAAS,SAAS,aAAa,GAAG;AACzD,kBAAY,OAAO,IAAI,gBAAgB,aAAa,OAAO,WAAW,MAAM,CAAC;AAAA,IAC/E;AAAA,EACF,GAAG,CAAC,OAAO,IAAI,QAAQ,WAAW,WAAW,aAAa,WAAW,CAAC;AAEtE,QAAM,UAAmC,YAAY,MAAM;AACzD,QAAI,OAAO,SAAS;AAClB,yBAAmB;AAAA,QACjB,QAAQ,OAAO;AAAA,QACf,WAAW,OAAO,eAAe,QAAQ;AAAA,MAC3C,CAAC;AAAA,IACH;AAAA,EACF,GAAG,CAAC,OAAO,SAAS,OAAO,IAAI,OAAO,cAAc,kBAAkB,CAAC;AAEvE,QAAM,YAAwC;AAAA,IAC5C,CAAC,MAAM;AACL,UAAI,EAAE,SAAS,eAAe,OAAO,SAAS;AAC5C,UAAE,eAAe;AACjB,2BAAmB;AAAA,UACjB,QAAQ,OAAO;AAAA,UACf,WAAW;AAAA,QACb,CAAC;AAAA,MACH,WAAW,EAAE,SAAS,aAAa,OAAO,SAAS;AACjD,UAAE,eAAe;AACjB,2BAAmB;AAAA,UACjB,QAAQ,OAAO;AAAA,UACf,WAAW;AAAA,QACb,CAAC;AAAA,MACH,WAAW,CAAC,SAAS,OAAO,EAAE,SAAS,EAAE,IAAI,GAAG;AAC9C,oBAAY,OAAO,IAAI,gBAAgB,aAAa,MAAM,WAAW,QAAQ,IAAI,CAAC;AAElF,mBAAW,MAAM;AACf,cAAI,cAAc;AAAS,0BAAc,QAAQ,MAAM;AAAA,mBAC9C,cAAc;AAAS,0BAAc,QAAQ,MAAM;AAAA,QAC9D,CAAC;AAAA,MACH;AAAA,IACF;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,OAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,QAAM,UAAmC;AAAA,IACvC,CAAC,MAAM;AAEL,UAAI,EAAE,WAAW,WAAW,SAAS;AACnC,oBAAY,OAAO,IAAI,gBAAgB,aAAa,MAAM,WAAW,MAAM,CAAC;AAAA,MAC9E;AAAA,IACF;AAAA,IACA,CAAC,OAAO,IAAI,QAAQ,WAAW,WAAW,aAAa,WAAW;AAAA,EACpE;AAEA,QAAM,SAAkC;AAAA,IACtC,CAAC,MAAM;AAEL,UAAI,EAAE,kBAAkB,cAAc;AAAS;AAC/C,UAAI,EAAE,kBAAkB,cAAc;AAAS;AAC/C,kBAAY,OAAO,IAAI,gBAAgB,aAAa,OAAO,WAAW,MAAM,CAAC;AAAA,IAC/E;AAAA,IACA,CAAC,eAAe,eAAe,aAAa,OAAO,IAAI,aAAa,WAAW,MAAM;AAAA,EACvF;AAEA,SAAO,EAAE,cAAc,cAAc,SAAS,WAAW,QAAQ,QAAQ;AAC3E;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/HoC/SortableItemContext.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { createContext } from 'react';\nimport { DraggablePropsT } from 'types/props';\n\nexport type SortableItemContextType = { draggableProps: DraggablePropsT };\n\n/** Context for cross component communication */\nexport const SortableItemContext = createContext<SortableItemContextType>({\n draggableProps: false,\n});\n"],
|
|
5
|
-
"mappings": "AAAA;
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,qBAAqB;AAMvB,MAAM,sBAAsB,cAAuC;AAAA,EACxE,gBAAgB;AAClB,CAAC;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -25,36 +25,43 @@ const withConditionalDnDColumnContext = (Component) => (props) => {
|
|
|
25
25
|
visibleColumns
|
|
26
26
|
} = React2.useContext(DataTableContext);
|
|
27
27
|
const flattenedItems = useMemo(() => flattenColumns(visibleColumns), [visibleColumns]);
|
|
28
|
-
const onReorder = useCallback(
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
parentNode.columns
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
28
|
+
const onReorder = useCallback(
|
|
29
|
+
(movedItem, indexes) => {
|
|
30
|
+
const newFlattenedData = arrayMove(flattenedItems, indexes.fromIndex, indexes.targetIndex);
|
|
31
|
+
const nodes = {};
|
|
32
|
+
newFlattenedData.forEach(([dndData, colData]) => {
|
|
33
|
+
delete colData.columns;
|
|
34
|
+
nodes[dndData.id] = colData;
|
|
35
|
+
});
|
|
36
|
+
const newData = [];
|
|
37
|
+
newFlattenedData.forEach(([dndData, colData]) => {
|
|
38
|
+
if (INTERNAL_COLUMNS.includes(dndData.id)) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
if (dndData.parentId) {
|
|
42
|
+
const parentNode = nodes[dndData.parentId];
|
|
43
|
+
if (parentNode.columns)
|
|
44
|
+
parentNode.columns.push(colData);
|
|
45
|
+
else
|
|
46
|
+
parentNode.columns = [colData];
|
|
47
|
+
} else
|
|
48
|
+
newData.push(colData);
|
|
49
|
+
});
|
|
50
|
+
onColumnsReorder(newData, indexes);
|
|
51
|
+
},
|
|
52
|
+
[flattenedItems, onColumnsReorder]
|
|
53
|
+
);
|
|
51
54
|
const onPreviewResetState = useCallback(() => {
|
|
52
|
-
const el = document.body.querySelector(
|
|
55
|
+
const el = document.body.querySelector(
|
|
56
|
+
`[data-testid="${DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER}"]`
|
|
57
|
+
);
|
|
53
58
|
if (el)
|
|
54
59
|
el.onscroll = () => null;
|
|
55
60
|
}, []);
|
|
56
61
|
const onPreviewDragStart = useCallback(() => {
|
|
57
|
-
const el = document.body.querySelector(
|
|
62
|
+
const el = document.body.querySelector(
|
|
63
|
+
`[data-testid="${DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER}"]`
|
|
64
|
+
);
|
|
58
65
|
if (el) {
|
|
59
66
|
const y = el.scrollTop;
|
|
60
67
|
el.onscroll = () => {
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/HoC/withConditionalDnDColumnContext.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-underscore-dangle */\n/* eslint-disable max-params */\nimport React, { createContext, useCallback, useMemo } from 'react';\nimport { DndContext, DragOverlay, arrayMove, useHierarchyDndkitConfig } from '@elliemae/ds-drag-and-drop';\nimport { FunctionalHOC } from '../../types/FunctionalHoC';\nimport { DataTableContext } from '../../DataTableContext';\nimport { Item } from '../../helpers/dndkit/hierarchy/types';\nimport { TypescriptColumn } from '../../types/props';\nimport { HeaderCellGroup } from '../internal';\nimport { DATA_TESTID } from '../../configs/constants';\nimport { INTERNAL_COLUMNS } from '../../addons/Columns';\n\ntype DnDGroupContextType = {\n activeIndex: number;\n};\n\nexport const DnDGroupContext = createContext<DnDGroupContextType>({\n activeIndex: undefined,\n});\n\nconst flattenColumns = (cols: TypescriptColumn[]) => {\n const flattened = [];\n const flatten = (col: TypescriptColumn, index, parentId = null) => {\n const { id } = col;\n flattened.push([{ id, parentId, index }, col]);\n if (col.columns)\n col.columns.forEach((subColumn: TypescriptColumn, childIndex: number) => flatten(subColumn, childIndex, id));\n };\n cols.forEach((col, index) => flatten(col, index));\n return flattened;\n};\n\n// only wraps in \"DnDContext\" and \"DnDGroupContext\" if any Drag and Drop functionality is requested\nexport const withConditionalDnDColumnContext: FunctionalHOC = (Component) => (props) => {\n const {\n tableProps: { dragAndDropColumns, onColumnsReorder },\n visibleColumns,\n } = React.useContext(DataTableContext);\n\n const flattenedItems = useMemo(() => flattenColumns(visibleColumns), [visibleColumns]);\n\n const onReorder = useCallback(\n (movedItem: Item, indexes: { targetIndex: number; fromIndex: number }) => {\n // Send from index to target index\n const newFlattenedData = arrayMove(flattenedItems, indexes.fromIndex, indexes.targetIndex);\n // Pull the cols's data into an object\n const nodes = {};\n newFlattenedData.forEach(([dndData, colData]) => {\n delete colData.columns;\n nodes[dndData.id] = colData;\n });\n const newData = [];\n newFlattenedData.forEach(([dndData, colData]) => {\n // Don't send internal columns to the user\n if (INTERNAL_COLUMNS.includes(dndData.id)) {\n return;\n }\n // If row has parent, insert it to it's subrows\n // otherwise append it to the new user data\n if (dndData.parentId) {\n const parentNode = nodes[dndData.parentId];\n if (parentNode.columns) parentNode.columns.push(colData);\n else parentNode.columns = [colData];\n } else newData.push(colData);\n });\n onColumnsReorder(newData, indexes);\n },\n [flattenedItems, onColumnsReorder],\n );\n\n const onPreviewResetState = useCallback(() => {\n const el: HTMLDivElement | null = document.body.querySelector(\n `[data-testid=\"${DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER}\"]`,\n );\n if (el) el.onscroll = () => null;\n }, []);\n\n const onPreviewDragStart = useCallback(() => {\n const el: HTMLDivElement | null = document.body.querySelector(\n `[data-testid=\"${DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER}\"]`,\n );\n if (el) {\n const y = el.scrollTop;\n el.onscroll = () => {\n el.scrollTo({ top: y });\n };\n }\n }, []);\n\n const { dndContextProps, activeId, activeIndex } = useHierarchyDndkitConfig({\n flattenedItems,\n dragOverlayDataTestid: DATA_TESTID.DATA_TABLE_COLUMN_DRAG_OVERLAY,\n isHorizontalDnD: true,\n onReorder,\n onPreviewResetState,\n onPreviewDragStart,\n });\n\n if (dragAndDropColumns)\n return (\n <DndContext {...dndContextProps}>\n <DnDGroupContext.Provider value={{ activeIndex }}>\n <Component {...props} />\n </DnDGroupContext.Provider>\n <DragOverlay>\n {activeId ? (\n <HeaderCellGroup header={flattenedItems.find(([item]) => item.id === activeId)[1]} isDragOverlay />\n ) : null}\n </DragOverlay>\n </DndContext>\n );\n return <Component {...props} />;\n};\n"],
|
|
5
|
-
"mappings": "AAAA;
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -20,25 +20,28 @@ const withConditionalDnDRowContext = (Component) => (props) => {
|
|
|
20
20
|
allDataFlattened
|
|
21
21
|
} = React2.useContext(DataTableContext);
|
|
22
22
|
const [lastActiveId, setLastActiveId] = React2.useState(null);
|
|
23
|
-
const onReorder = useCallback(
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
parentNode
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
23
|
+
const onReorder = useCallback(
|
|
24
|
+
(newData, indexes, considerExpanding) => {
|
|
25
|
+
const nodes = {};
|
|
26
|
+
newData.forEach((row) => {
|
|
27
|
+
delete row.original.subRows;
|
|
28
|
+
nodes[row.uid] = row.original;
|
|
29
|
+
});
|
|
30
|
+
const newUserData = [];
|
|
31
|
+
newData.forEach((row) => {
|
|
32
|
+
if (row.parentId) {
|
|
33
|
+
const parentNode = nodes[row.parentId];
|
|
34
|
+
if (parentNode?.subRows)
|
|
35
|
+
parentNode.subRows.push(row.original);
|
|
36
|
+
else
|
|
37
|
+
parentNode.subRows = [row.original];
|
|
38
|
+
} else
|
|
39
|
+
newUserData.push(row.original);
|
|
40
|
+
});
|
|
41
|
+
onRowsReorder(newUserData, indexes, considerExpanding);
|
|
42
|
+
},
|
|
43
|
+
[onRowsReorder]
|
|
44
|
+
);
|
|
42
45
|
const { dndContextProps, sortableContextProps, activeId, activeIndex, depth, dropIndicatorPosition, visibleItems } = useTreeDndkitConfig({
|
|
43
46
|
flattenedItems: allDataFlattened,
|
|
44
47
|
visibleItems: flattenedData,
|
|
@@ -65,12 +68,15 @@ const withConditionalDnDRowContext = (Component) => (props) => {
|
|
|
65
68
|
}
|
|
66
69
|
}, /* @__PURE__ */ React2.createElement(Component, {
|
|
67
70
|
...props
|
|
68
|
-
}))), createPortal(
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
71
|
+
}))), createPortal(
|
|
72
|
+
/* @__PURE__ */ React2.createElement(DragOverlay, {
|
|
73
|
+
style: { width: "auto" }
|
|
74
|
+
}, activeId ? /* @__PURE__ */ React2.createElement(Row, {
|
|
75
|
+
row: flattenedData.find((row) => row.uid === activeId),
|
|
76
|
+
isDragOverlay: true
|
|
77
|
+
}) : null),
|
|
78
|
+
document.body
|
|
79
|
+
));
|
|
74
80
|
return /* @__PURE__ */ React2.createElement(Component, {
|
|
75
81
|
...props
|
|
76
82
|
});
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/HoC/withConditionalDnDRowContext.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { createContext, useCallback } from 'react';\nimport { DataTableContext } from '../../DataTableContext';\nimport { FunctionalHOC } from '../../types/FunctionalHoC';\nimport { DndContext, DragOverlay, SortableContext, useTreeDndkitConfig } from '@elliemae/ds-drag-and-drop';\nimport { Item } from '../../helpers/dndkit/tree/types';\nimport { Row } from '../Row';\nimport { createPortal } from 'react-dom';\nimport { DropIndicatorPosition } from '../../types/props';\n\ntype DnDTreeContextType = {\n depth: number;\n activeIndex: number;\n visibleItems: unknown[];\n dropIndicatorPosition: DropIndicatorPosition;\n lastActiveId: string;\n setLastActiveId: React.Dispatch<React.SetStateAction<string>>;\n};\n\nexport const DnDTreeContext = createContext<DnDTreeContextType>({\n depth: undefined,\n activeIndex: undefined,\n visibleItems: undefined,\n dropIndicatorPosition: DropIndicatorPosition.None,\n lastActiveId: undefined,\n setLastActiveId: undefined,\n});\n\n// only wraps in \"DnDContext\" and \"DnDTreeContext\" if any Drag and Drop functionality is requested\nexport const withConditionalDnDRowContext: FunctionalHOC = (Component) => (props) => {\n const {\n tableProps: { dragAndDropRows, isExpandable, onRowsReorder, maxDragAndDropLevel },\n flattenedData,\n allDataFlattened,\n } = React.useContext(DataTableContext);\n\n const [lastActiveId, setLastActiveId] = React.useState<string>(null);\n\n const onReorder = useCallback(\n (newData: Item[], indexes: { targetIndex: number; fromIndex: number }, considerExpanding: string) => {\n // Pull the row's original data into an object\n const nodes = {};\n newData.forEach((row) => {\n delete row.original.subRows;\n nodes[row.uid] = row.original;\n });\n const newUserData = [];\n newData.forEach((row) => {\n // If row has parent, insert it to it's subrows\n // otherwise append it to the new user data\n if (row.parentId) {\n const parentNode = nodes[row.parentId];\n if (parentNode?.subRows) parentNode.subRows.push(row.original);\n else parentNode.subRows = [row.original];\n } else newUserData.push(row.original);\n });\n // Tell the user that the order has change, he can chose to commit it or not\n onRowsReorder(newUserData, indexes, considerExpanding);\n },\n [onRowsReorder],\n );\n\n const { dndContextProps, sortableContextProps, activeId, activeIndex, depth, dropIndicatorPosition, visibleItems } =\n useTreeDndkitConfig({\n flattenedItems: allDataFlattened,\n visibleItems: flattenedData,\n isHorizontalDnD: false,\n isExpandable,\n onReorder,\n maxDragAndDropLevel,\n });\n\n if (lastActiveId !== activeId && activeId) setLastActiveId(activeId);\n\n if (dragAndDropRows)\n return (\n <DndContext {...dndContextProps}>\n <SortableContext {...sortableContextProps}>\n <DnDTreeContext.Provider\n value={{\n activeIndex,\n depth,\n visibleItems,\n dropIndicatorPosition,\n lastActiveId,\n setLastActiveId,\n }}\n >\n <Component {...props} />\n </DnDTreeContext.Provider>\n </SortableContext>\n {createPortal(\n <DragOverlay style={{ width: 'auto' }}>\n {activeId ? <Row row={flattenedData.find((row) => row.uid === activeId)} isDragOverlay /> : null}\n </DragOverlay>,\n document.body,\n )}\n </DndContext>\n );\n return <Component {...props} />;\n};\n"],
|
|
5
|
-
"mappings": "AAAA;
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAvB,OAAOA,UAAS,eAAe,mBAAmB;AAClD,SAAS,wBAAwB;AAEjC,SAAS,YAAY,aAAa,iBAAiB,2BAA2B;AAE9E,SAAS,WAAW;AACpB,SAAS,oBAAoB;AAC7B,SAAS,6BAA6B;AAW/B,MAAM,iBAAiB,cAAkC;AAAA,EAC9D,OAAO;AAAA,EACP,aAAa;AAAA,EACb,cAAc;AAAA,EACd,uBAAuB,sBAAsB;AAAA,EAC7C,cAAc;AAAA,EACd,iBAAiB;AACnB,CAAC;AAGM,MAAM,+BAA8C,CAAC,cAAc,CAAC,UAAU;AACnF,QAAM;AAAA,IACJ,YAAY,EAAE,iBAAiB,cAAc,eAAe,oBAAoB;AAAA,IAChF;AAAA,IACA;AAAA,EACF,IAAIA,OAAM,WAAW,gBAAgB;AAErC,QAAM,CAAC,cAAc,eAAe,IAAIA,OAAM,SAAiB,IAAI;AAEnE,QAAM,YAAY;AAAA,IAChB,CAAC,SAAiB,SAAqD,sBAA8B;AAEnG,YAAM,QAAQ,CAAC;AACf,cAAQ,QAAQ,CAAC,QAAQ;AACvB,eAAO,IAAI,SAAS;AACpB,cAAM,IAAI,OAAO,IAAI;AAAA,MACvB,CAAC;AACD,YAAM,cAAc,CAAC;AACrB,cAAQ,QAAQ,CAAC,QAAQ;AAGvB,YAAI,IAAI,UAAU;AAChB,gBAAM,aAAa,MAAM,IAAI;AAC7B,cAAI,YAAY;AAAS,uBAAW,QAAQ,KAAK,IAAI,QAAQ;AAAA;AACxD,uBAAW,UAAU,CAAC,IAAI,QAAQ;AAAA,QACzC;AAAO,sBAAY,KAAK,IAAI,QAAQ;AAAA,MACtC,CAAC;AAED,oBAAc,aAAa,SAAS,iBAAiB;AAAA,IACvD;AAAA,IACA,CAAC,aAAa;AAAA,EAChB;AAEA,QAAM,EAAE,iBAAiB,sBAAsB,UAAU,aAAa,OAAO,uBAAuB,aAAa,IAC/G,oBAAoB;AAAA,IAClB,gBAAgB;AAAA,IAChB,cAAc;AAAA,IACd,iBAAiB;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAEH,MAAI,iBAAiB,YAAY;AAAU,oBAAgB,QAAQ;AAEnE,MAAI;AACF,WACE,gBAAAA,OAAA,cAAC;AAAA,MAAY,GAAG;AAAA,OACd,gBAAAA,OAAA,cAAC;AAAA,MAAiB,GAAG;AAAA,OACnB,gBAAAA,OAAA,cAAC,eAAe,UAAf;AAAA,MACC,OAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAAA,OAEA,gBAAAA,OAAA,cAAC;AAAA,MAAW,GAAG;AAAA,KAAO,CACxB,CACF,GACC;AAAA,MACC,gBAAAA,OAAA,cAAC;AAAA,QAAY,OAAO,EAAE,OAAO,OAAO;AAAA,SACjC,WAAW,gBAAAA,OAAA,cAAC;AAAA,QAAI,KAAK,cAAc,KAAK,CAAC,QAAQ,IAAI,QAAQ,QAAQ;AAAA,QAAG,eAAa;AAAA,OAAC,IAAK,IAC9F;AAAA,MACA,SAAS;AAAA,IACX,CACF;AAEJ,SAAO,gBAAAA,OAAA,cAAC;AAAA,IAAW,GAAG;AAAA,GAAO;AAC/B;",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/HoC/withConditionalDnDSortableContext.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { horizontalListSortingStrategy, SortableContext } from '@elliemae/ds-drag-and-drop';\nimport React, { useContext } from 'react';\nimport { DataTableContext } from '../../DataTableContext';\nimport { FunctionalHOC } from '../../types/FunctionalHoC';\nimport { TypescriptColumn } from '../../types/props';\n\nexport const withConditionalDnDSortableContext =\n (items: TypescriptColumn[], isDragOverlay = false): FunctionalHOC =>\n (Component) =>\n (props) => {\n const {\n tableProps: { dragAndDropColumns },\n } = useContext(DataTableContext);\n\n // Only add the context if it's not a dragOverlay and dnd for cols was requested\n // It's important that drag overlays DO NOT have any sortable functionality!\n if (!isDragOverlay && dragAndDropColumns)\n return (\n <SortableContext items={items.map((item) => item.id)} strategy={horizontalListSortingStrategy}>\n <Component {...props} />\n </SortableContext>\n );\n\n return <Component {...props} />;\n };\n"],
|
|
5
|
-
"mappings": "AAAA;
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,+BAA+B,uBAAuB;AAC/D,OAAOA,UAAS,kBAAkB;AAClC,SAAS,wBAAwB;AAI1B,MAAM,oCACX,CAAC,OAA2B,gBAAgB,UAC5C,CAAC,cACD,CAAC,UAAU;AACT,QAAM;AAAA,IACJ,YAAY,EAAE,mBAAmB;AAAA,EACnC,IAAI,WAAW,gBAAgB;AAI/B,MAAI,CAAC,iBAAiB;AACpB,WACE,gBAAAA,OAAA,cAAC;AAAA,MAAgB,OAAO,MAAM,IAAI,CAAC,SAAS,KAAK,EAAE;AAAA,MAAG,UAAU;AAAA,OAC9D,gBAAAA,OAAA,cAAC;AAAA,MAAW,GAAG;AAAA,KAAO,CACxB;AAGJ,SAAO,gBAAAA,OAAA,cAAC;AAAA,IAAW,GAAG;AAAA,GAAO;AAC/B;",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -10,9 +10,12 @@ const withDnDSortableColumnContext = (Component) => (props) => {
|
|
|
10
10
|
tableProps: { dragAndDropColumns }
|
|
11
11
|
} = useContext(DataTableContext);
|
|
12
12
|
const { activeIndex } = useContext(DnDGroupContext);
|
|
13
|
-
const draggableOptions = useMemo(
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
const draggableOptions = useMemo(
|
|
14
|
+
() => ({
|
|
15
|
+
id: props.header.id
|
|
16
|
+
}),
|
|
17
|
+
[props.header.id]
|
|
18
|
+
);
|
|
16
19
|
const useSortableHelpers = useSortable(draggableOptions);
|
|
17
20
|
const draggableProps = useMemo(() => {
|
|
18
21
|
if (!dragAndDropColumns)
|
|
@@ -24,9 +27,12 @@ const withDnDSortableColumnContext = (Component) => (props) => {
|
|
|
24
27
|
dropIndicatorPosition: index > activeIndex ? DropIndicatorPosition.After : DropIndicatorPosition.Before
|
|
25
28
|
};
|
|
26
29
|
}, [useSortableHelpers, dragAndDropColumns, activeIndex]);
|
|
27
|
-
const ctx = useMemo(
|
|
28
|
-
|
|
29
|
-
|
|
30
|
+
const ctx = useMemo(
|
|
31
|
+
() => ({
|
|
32
|
+
draggableProps
|
|
33
|
+
}),
|
|
34
|
+
[draggableProps]
|
|
35
|
+
);
|
|
30
36
|
return /* @__PURE__ */ React2.createElement(SortableItemContext.Provider, {
|
|
31
37
|
value: ctx
|
|
32
38
|
}, /* @__PURE__ */ React2.createElement(Component, {
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/HoC/withDnDSortableColumnContext.tsx"],
|
|
4
4
|
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useContext, useMemo } from 'react';\nimport { useSortable } from '@elliemae/ds-drag-and-drop';\nimport { DataTableContext } from '../../DataTableContext';\nimport { FunctionalHOC } from '../../types/FunctionalHoC';\nimport { DropIndicatorPosition } from '../../types/props';\nimport { DnDGroupContext } from './withConditionalDnDColumnContext';\nimport { SortableItemContext, SortableItemContextType } from './SortableItemContext';\n\nexport const withDnDSortableColumnContext: FunctionalHOC = (Component) => (props: any) => {\n const {\n tableProps: { dragAndDropColumns },\n } = useContext(DataTableContext);\n const { activeIndex } = useContext(DnDGroupContext);\n\n // onMount generate unique options, so everyting is only ran once\n const draggableOptions = useMemo(\n () => ({\n id: props.header.id,\n }),\n [props.header.id],\n );\n\n const useSortableHelpers = useSortable(draggableOptions);\n\n // calculate all the \"useSortable\" values as per required\n const draggableProps = useMemo(() => {\n if (!dragAndDropColumns) return false;\n\n const { index, overIndex } = useSortableHelpers;\n\n return {\n ...useSortableHelpers,\n shouldShowDropIndicatorPosition: overIndex === index && overIndex !== -1,\n dropIndicatorPosition: index > activeIndex ? DropIndicatorPosition.After : DropIndicatorPosition.Before,\n };\n }, [useSortableHelpers, dragAndDropColumns, activeIndex]);\n // we use a context so we can easly access information wherever without bubbling down\n // this context is all Memoized so as long as component is not re-mounted,\n // the context won't trigger un-required renders per-se...\n const ctx: SortableItemContextType = useMemo(\n () => ({\n draggableProps,\n }),\n [draggableProps],\n );\n // we always add the context, if draggableProps===false we don't have the DnD enabled.\n return (\n <SortableItemContext.Provider value={ctx}>\n <Component {...props} />\n </SortableItemContext.Provider>\n );\n};\n"],
|
|
5
|
-
"mappings": "AAAA;
|
|
6
|
-
"names": []
|
|
5
|
+
"mappings": "AAAA,YAAY,WAAW;ACAvB,OAAOA,UAAS,YAAY,eAAe;AAC3C,SAAS,mBAAmB;AAC5B,SAAS,wBAAwB;AAEjC,SAAS,6BAA6B;AACtC,SAAS,uBAAuB;AAChC,SAAS,2BAAoD;AAEtD,MAAM,+BAA8C,CAAC,cAAc,CAAC,UAAe;AACxF,QAAM;AAAA,IACJ,YAAY,EAAE,mBAAmB;AAAA,EACnC,IAAI,WAAW,gBAAgB;AAC/B,QAAM,EAAE,YAAY,IAAI,WAAW,eAAe;AAGlD,QAAM,mBAAmB;AAAA,IACvB,OAAO;AAAA,MACL,IAAI,MAAM,OAAO;AAAA,IACnB;AAAA,IACA,CAAC,MAAM,OAAO,EAAE;AAAA,EAClB;AAEA,QAAM,qBAAqB,YAAY,gBAAgB;AAGvD,QAAM,iBAAiB,QAAQ,MAAM;AACnC,QAAI,CAAC;AAAoB,aAAO;AAEhC,UAAM,EAAE,OAAO,UAAU,IAAI;AAE7B,WAAO;AAAA,MACL,GAAG;AAAA,MACH,iCAAiC,cAAc,SAAS,cAAc;AAAA,MACtE,uBAAuB,QAAQ,cAAc,sBAAsB,QAAQ,sBAAsB;AAAA,IACnG;AAAA,EACF,GAAG,CAAC,oBAAoB,oBAAoB,WAAW,CAAC;AAIxD,QAAM,MAA+B;AAAA,IACnC,OAAO;AAAA,MACL;AAAA,IACF;AAAA,IACA,CAAC,cAAc;AAAA,EACjB;AAEA,SACE,gBAAAA,OAAA,cAAC,oBAAoB,UAApB;AAAA,IAA6B,OAAO;AAAA,KACnC,gBAAAA,OAAA,cAAC;AAAA,IAAW,GAAG;AAAA,GAAO,CACxB;AAEJ;",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|