@elliemae/ds-datagrids 2.2.0-alpha.1 → 2.2.0-alpha.5
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/DSDataGrid.js +395 -635
- package/cjs/DSDataGrid.js.map +7 -0
- package/cjs/DataGridImpl.js +103 -128
- package/cjs/DataGridImpl.js.map +7 -0
- package/cjs/PaginatedDataGrid.js +68 -68
- package/cjs/PaginatedDataGrid.js.map +7 -0
- package/cjs/blockNames.js +39 -11
- package/cjs/blockNames.js.map +7 -0
- package/cjs/columns/IconColumn.js +78 -62
- package/cjs/columns/IconColumn.js.map +7 -0
- package/cjs/columns/NumberColumn.js +35 -5
- package/cjs/columns/NumberColumn.js.map +7 -0
- package/cjs/components/BodyCell.js +83 -80
- package/cjs/components/BodyCell.js.map +7 -0
- package/cjs/components/BodyList.js +52 -52
- package/cjs/components/BodyList.js.map +7 -0
- package/cjs/components/ColumnVisibilityMenuOption.js +53 -31
- package/cjs/components/ColumnVisibilityMenuOption.js.map +7 -0
- package/cjs/components/ColumnsOptionsMenuSection.js +59 -44
- package/cjs/components/ColumnsOptionsMenuSection.js.map +7 -0
- package/cjs/components/EmptyState.js +81 -50
- package/cjs/components/EmptyState.js.map +7 -0
- package/cjs/components/HeaderCell.js +64 -58
- package/cjs/components/HeaderCell.js.map +7 -0
- package/cjs/components/List.js +41 -29
- package/cjs/components/List.js.map +7 -0
- package/cjs/components/ListItem.js +43 -36
- package/cjs/components/ListItem.js.map +7 -0
- package/cjs/components/NoResults.js +55 -51
- package/cjs/components/NoResults.js.map +7 -0
- package/cjs/components/RowsLoader.js +42 -22
- package/cjs/components/RowsLoader.js.map +7 -0
- package/cjs/components/Table.js +78 -87
- package/cjs/components/Table.js.map +7 -0
- package/cjs/components/TableBody.js +61 -60
- package/cjs/components/TableBody.js.map +7 -0
- package/cjs/components/TableHeader.js +47 -30
- package/cjs/components/TableHeader.js.map +7 -0
- package/cjs/components/footer/addOptionalFooterComponents.js +53 -43
- package/cjs/components/footer/addOptionalFooterComponents.js.map +7 -0
- package/cjs/components/header/PrimaryControls.js +49 -35
- package/cjs/components/header/PrimaryControls.js.map +7 -0
- package/cjs/components/header/addOptionalHeaderComponents.js +54 -43
- package/cjs/components/header/addOptionalHeaderComponents.js.map +7 -0
- package/cjs/components/index.js +43 -17
- package/cjs/components/index.js.map +7 -0
- package/cjs/components/renderers/defaultClassedRenderers.js +64 -57
- package/cjs/components/renderers/defaultClassedRenderers.js.map +7 -0
- package/cjs/components/renderers/index.js +44 -17
- package/cjs/components/renderers/index.js.map +7 -0
- package/cjs/components/renderers/renderRowsLoader.js +39 -18
- package/cjs/components/renderers/renderRowsLoader.js.map +7 -0
- package/cjs/components/tableContext.js +36 -13
- package/cjs/components/tableContext.js.map +7 -0
- package/cjs/defaultPlugins.js +44 -12
- package/cjs/defaultPlugins.js.map +7 -0
- package/cjs/index.js +72 -67
- package/cjs/index.js.map +7 -0
- package/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +102 -114
- package/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js.map +7 -0
- package/cjs/plugins/body-header-scroll-sync/index.js +35 -9
- package/cjs/plugins/body-header-scroll-sync/index.js.map +7 -0
- package/cjs/plugins/column-dnd/DndColumnsPlugin.js +107 -86
- package/cjs/plugins/column-dnd/DndColumnsPlugin.js.map +7 -0
- package/cjs/plugins/column-dnd/decorateGridWithDndColumns.js +43 -27
- package/cjs/plugins/column-dnd/decorateGridWithDndColumns.js.map +7 -0
- package/cjs/plugins/column-dnd/index.js +35 -9
- package/cjs/plugins/column-dnd/index.js.map +7 -0
- package/cjs/plugins/column-sizing/ColumnSizingPlugin.js +59 -55
- package/cjs/plugins/column-sizing/ColumnSizingPlugin.js.map +7 -0
- package/cjs/plugins/column-sizing/columnMeasurerTransformer.js +48 -53
- package/cjs/plugins/column-sizing/columnMeasurerTransformer.js.map +7 -0
- package/cjs/plugins/column-sizing/ext-points/decorateColumn.js +40 -13
- package/cjs/plugins/column-sizing/ext-points/decorateColumn.js.map +7 -0
- package/cjs/plugins/column-sizing/ext-points/getTableProps.js +55 -54
- package/cjs/plugins/column-sizing/ext-points/getTableProps.js.map +7 -0
- package/cjs/plugins/column-sizing/getColumnNameFromProperty.js +37 -9
- package/cjs/plugins/column-sizing/getColumnNameFromProperty.js.map +7 -0
- package/cjs/plugins/column-sizing/index.js +35 -9
- package/cjs/plugins/column-sizing/index.js.map +7 -0
- package/cjs/plugins/column-sizing/useColumnSizeService.js +72 -86
- package/cjs/plugins/column-sizing/useColumnSizeService.js.map +7 -0
- package/cjs/plugins/column-sizing/useStylesheetHelpers.js +96 -199
- package/cjs/plugins/column-sizing/useStylesheetHelpers.js.map +7 -0
- package/cjs/plugins/column-sizing/utils.js +52 -29
- package/cjs/plugins/column-sizing/utils.js.map +7 -0
- package/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js +38 -16
- package/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js.map +7 -0
- package/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js +61 -56
- package/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js.map +7 -0
- package/cjs/plugins/custom-cell-renderer/getRendererComponent.js +58 -60
- package/cjs/plugins/custom-cell-renderer/getRendererComponent.js.map +7 -0
- package/cjs/plugins/custom-cell-renderer/index.js +35 -9
- package/cjs/plugins/custom-cell-renderer/index.js.map +7 -0
- package/cjs/plugins/editable/EditableComponents/ComboBox.js +50 -53
- package/cjs/plugins/editable/EditableComponents/ComboBox.js.map +7 -0
- package/cjs/plugins/editable/EditableComponents/TextBox.js +56 -76
- package/cjs/plugins/editable/EditableComponents/TextBox.js.map +7 -0
- package/cjs/plugins/editable/EditableComponents/index.js +37 -11
- package/cjs/plugins/editable/EditableComponents/index.js.map +7 -0
- package/cjs/plugins/editable/EditablePlugin.js +60 -75
- package/cjs/plugins/editable/EditablePlugin.js.map +7 -0
- package/cjs/plugins/editable/decorateEditable.js +61 -98
- package/cjs/plugins/editable/decorateEditable.js.map +7 -0
- package/cjs/plugins/editable/getEditorComponent.js +70 -76
- package/cjs/plugins/editable/getEditorComponent.js.map +7 -0
- package/cjs/plugins/editable/index.js +38 -13
- package/cjs/plugins/editable/index.js.map +7 -0
- package/cjs/plugins/expandable-grid/ExpandableColumn.js +112 -144
- package/cjs/plugins/expandable-grid/ExpandableColumn.js.map +7 -0
- package/cjs/plugins/expandable-grid/ExpandablePlugin.js +118 -180
- package/cjs/plugins/expandable-grid/ExpandablePlugin.js.map +7 -0
- package/cjs/plugins/expandable-grid/ExpandedRow.js +117 -139
- package/cjs/plugins/expandable-grid/ExpandedRow.js.map +7 -0
- package/cjs/plugins/expandable-grid/ExpandedRowExtra.js +54 -52
- package/cjs/plugins/expandable-grid/ExpandedRowExtra.js.map +7 -0
- package/cjs/plugins/expandable-grid/index.js +37 -11
- package/cjs/plugins/expandable-grid/index.js.map +7 -0
- package/cjs/plugins/expandable-grid/useExpandGridState.js +45 -31
- package/cjs/plugins/expandable-grid/useExpandGridState.js.map +7 -0
- package/cjs/plugins/export-data/ExportDataPlugin.js +82 -116
- package/cjs/plugins/export-data/ExportDataPlugin.js.map +7 -0
- package/cjs/plugins/export-data/index.js +35 -12
- package/cjs/plugins/export-data/index.js.map +7 -0
- package/cjs/plugins/filterable/FilterablePlugin.js +54 -55
- package/cjs/plugins/filterable/FilterablePlugin.js.map +7 -0
- package/cjs/plugins/filterable/addFilterToColumn.js +40 -28
- package/cjs/plugins/filterable/addFilterToColumn.js.map +7 -0
- package/cjs/plugins/filterable/components/FilterableHeader.js +119 -107
- package/cjs/plugins/filterable/components/FilterableHeader.js.map +7 -0
- package/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +116 -116
- package/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +7 -0
- package/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +97 -73
- package/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +7 -0
- package/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +138 -132
- package/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js.map +7 -0
- package/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js +115 -119
- package/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js.map +7 -0
- package/cjs/plugins/filterable/components/filterable-menus/defaultDateFormat.js +35 -7
- package/cjs/plugins/filterable/components/filterable-menus/defaultDateFormat.js.map +7 -0
- package/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +46 -15
- package/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +7 -0
- package/cjs/plugins/filterable/filterableFormatter.js +61 -51
- package/cjs/plugins/filterable/filterableFormatter.js.map +7 -0
- package/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js +60 -55
- package/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js.map +7 -0
- package/cjs/plugins/filterable/filtering-helper/strategiesOperators.js +43 -22
- package/cjs/plugins/filterable/filtering-helper/strategiesOperators.js.map +7 -0
- package/cjs/plugins/filterable/helper.js +68 -79
- package/cjs/plugins/filterable/helper.js.map +7 -0
- package/cjs/plugins/filterable/index.js +35 -9
- package/cjs/plugins/filterable/index.js.map +7 -0
- package/cjs/plugins/filterable/useFilterableState.js +62 -66
- package/cjs/plugins/filterable/useFilterableState.js.map +7 -0
- package/cjs/plugins/grouping-by/GroupingByPlugin.js +40 -23
- package/cjs/plugins/grouping-by/GroupingByPlugin.js.map +7 -0
- package/cjs/plugins/grouping-grid/GroupingPlugin.js +86 -109
- package/cjs/plugins/grouping-grid/GroupingPlugin.js.map +7 -0
- package/cjs/plugins/grouping-grid/walkStrategy.js +46 -26
- package/cjs/plugins/grouping-grid/walkStrategy.js.map +7 -0
- package/cjs/plugins/index.js +68 -48
- package/cjs/plugins/index.js.map +7 -0
- package/cjs/plugins/infinite-scrolling/InfiniteScrollPlugin.js +64 -88
- package/cjs/plugins/infinite-scrolling/InfiniteScrollPlugin.js.map +7 -0
- package/cjs/plugins/infinite-scrolling/index.js +35 -9
- package/cjs/plugins/infinite-scrolling/index.js.map +7 -0
- package/cjs/plugins/pagination/PaginationPlugin.js +73 -90
- package/cjs/plugins/pagination/PaginationPlugin.js.map +7 -0
- package/cjs/plugins/pagination/components/Pagination.js +54 -35
- package/cjs/plugins/pagination/components/Pagination.js.map +7 -0
- package/cjs/plugins/pagination/components/Paginator.js +59 -44
- package/cjs/plugins/pagination/components/Paginator.js.map +7 -0
- package/cjs/plugins/pagination/components/PerPageDropdown.js +51 -63
- package/cjs/plugins/pagination/components/PerPageDropdown.js.map +7 -0
- package/cjs/plugins/pagination/helper.js +45 -24
- package/cjs/plugins/pagination/helper.js.map +7 -0
- package/cjs/plugins/pagination/index.js +35 -9
- package/cjs/plugins/pagination/index.js.map +7 -0
- package/cjs/plugins/pagination/usePaginationState.js +46 -38
- package/cjs/plugins/pagination/usePaginationState.js.map +7 -0
- package/cjs/plugins/resizable/ResizablePlugin.js +51 -55
- package/cjs/plugins/resizable/ResizablePlugin.js.map +7 -0
- package/cjs/plugins/resizable/decorateResizable.js +49 -53
- package/cjs/plugins/resizable/decorateResizable.js.map +7 -0
- package/cjs/plugins/resizable/index.js +35 -9
- package/cjs/plugins/resizable/index.js.map +7 -0
- package/cjs/plugins/resizable/useResizeHandle.js +56 -50
- package/cjs/plugins/resizable/useResizeHandle.js.map +7 -0
- package/cjs/plugins/resizable/utils.js +49 -28
- package/cjs/plugins/resizable/utils.js.map +7 -0
- package/cjs/plugins/row-dnd/DndRowsPlugin.js +103 -82
- package/cjs/plugins/row-dnd/DndRowsPlugin.js.map +7 -0
- package/cjs/plugins/row-dnd/index.js +35 -9
- package/cjs/plugins/row-dnd/index.js.map +7 -0
- package/cjs/plugins/selectable/SelectablePlugin.js +101 -134
- package/cjs/plugins/selectable/SelectablePlugin.js.map +7 -0
- package/cjs/plugins/selectable/addSelectableColumn.js +67 -68
- package/cjs/plugins/selectable/addSelectableColumn.js.map +7 -0
- package/cjs/plugins/selectable/helper.js +50 -39
- package/cjs/plugins/selectable/helper.js.map +7 -0
- package/cjs/plugins/selectable/index.js +35 -9
- package/cjs/plugins/selectable/index.js.map +7 -0
- package/cjs/plugins/selectable/selectableFormatter.js +83 -105
- package/cjs/plugins/selectable/selectableFormatter.js.map +7 -0
- package/cjs/plugins/selectable/useSelectableState.js +67 -94
- package/cjs/plugins/selectable/useSelectableState.js.map +7 -0
- package/cjs/plugins/sortable/SortablePlugin.js +62 -76
- package/cjs/plugins/sortable/SortablePlugin.js.map +7 -0
- package/cjs/plugins/sortable/checkIfSortable.js +37 -14
- package/cjs/plugins/sortable/checkIfSortable.js.map +7 -0
- package/cjs/plugins/sortable/index.js +35 -9
- package/cjs/plugins/sortable/index.js.map +7 -0
- package/cjs/plugins/sortable/sortHeaderFormatter.js +56 -50
- package/cjs/plugins/sortable/sortHeaderFormatter.js.map +7 -0
- package/cjs/plugins/sortable/sortTree.js +40 -47
- package/cjs/plugins/sortable/sortTree.js.map +7 -0
- package/cjs/plugins/sortable/sorter.js +140 -172
- package/cjs/plugins/sortable/sorter.js.map +7 -0
- package/cjs/plugins/sortable/useSortableState.js +53 -79
- package/cjs/plugins/sortable/useSortableState.js.map +7 -0
- package/cjs/plugins/toolbar/RowRenderer.js +75 -76
- package/cjs/plugins/toolbar/RowRenderer.js.map +7 -0
- package/cjs/plugins/toolbar/ToolbarPlugin.js +49 -33
- package/cjs/plugins/toolbar/ToolbarPlugin.js.map +7 -0
- package/cjs/plugins/toolbar/ToolbarTrigger.js +89 -70
- package/cjs/plugins/toolbar/ToolbarTrigger.js.map +7 -0
- package/cjs/plugins/toolbar/index.js +35 -9
- package/cjs/plugins/toolbar/index.js.map +7 -0
- package/cjs/plugins/virtualization/AutoHeightList.js +64 -52
- package/cjs/plugins/virtualization/AutoHeightList.js.map +7 -0
- package/cjs/plugins/virtualization/VirtualizationPlugin.js +86 -97
- package/cjs/plugins/virtualization/VirtualizationPlugin.js.map +7 -0
- package/cjs/plugins/virtualization/VirtualizedBody.js +139 -155
- package/cjs/plugins/virtualization/VirtualizedBody.js.map +7 -0
- package/cjs/plugins/virtualization/VirtualizedBodyRow.js +39 -17
- package/cjs/plugins/virtualization/VirtualizedBodyRow.js.map +7 -0
- package/cjs/plugins/virtualization/helper.js +35 -7
- package/cjs/plugins/virtualization/helper.js.map +7 -0
- package/cjs/plugins/virtualization/index.js +35 -9
- package/cjs/plugins/virtualization/index.js.map +7 -0
- package/cjs/renders/CellWithAddons.js +98 -50
- package/cjs/renders/CellWithAddons.js.map +7 -0
- package/cjs/renders/index.js +37 -11
- package/cjs/renders/index.js.map +7 -0
- package/cjs/renders/styled.js +78 -27
- package/cjs/renders/styled.js.map +7 -0
- package/cjs/rowSizes.js +44 -12
- package/cjs/rowSizes.js.map +7 -0
- package/cjs/utilities/DataGridUtilities.json +1315 -0
- package/cjs/utilities/getPluginsFromProps.js +67 -39
- package/cjs/utilities/getPluginsFromProps.js.map +7 -0
- package/cjs/utilities/getScrollbarSize.js +44 -25
- package/cjs/utilities/getScrollbarSize.js.map +7 -0
- package/cjs/utilities/normalizeData.js +44 -34
- package/cjs/utilities/normalizeData.js.map +7 -0
- package/esm/DSDataGrid.js +337 -597
- package/esm/DSDataGrid.js.map +7 -0
- package/esm/DataGridImpl.js +68 -113
- package/esm/DataGridImpl.js.map +7 -0
- package/esm/PaginatedDataGrid.js +39 -59
- package/esm/PaginatedDataGrid.js.map +7 -0
- package/esm/blockNames.js +10 -5
- package/esm/blockNames.js.map +7 -0
- package/esm/columns/IconColumn.js +49 -54
- package/esm/columns/IconColumn.js.map +7 -0
- package/esm/columns/NumberColumn.js +6 -3
- package/esm/columns/NumberColumn.js.map +7 -0
- package/esm/components/BodyCell.js +51 -68
- package/esm/components/BodyCell.js.map +7 -0
- package/esm/components/BodyList.js +23 -43
- package/esm/components/BodyList.js.map +7 -0
- package/esm/components/ColumnVisibilityMenuOption.js +24 -27
- package/esm/components/ColumnVisibilityMenuOption.js.map +7 -0
- package/esm/components/ColumnsOptionsMenuSection.js +30 -38
- package/esm/components/ColumnsOptionsMenuSection.js.map +7 -0
- package/esm/components/EmptyState.js +52 -40
- package/esm/components/EmptyState.js.map +7 -0
- package/esm/components/HeaderCell.js +33 -48
- package/esm/components/HeaderCell.js.map +7 -0
- package/esm/components/List.js +12 -23
- package/esm/components/List.js.map +7 -0
- package/esm/components/ListItem.js +14 -30
- package/esm/components/ListItem.js.map +7 -0
- package/esm/components/NoResults.js +26 -43
- package/esm/components/NoResults.js.map +7 -0
- package/esm/components/RowsLoader.js +13 -15
- package/esm/components/RowsLoader.js.map +7 -0
- package/esm/components/Table.js +45 -76
- package/esm/components/Table.js.map +7 -0
- package/esm/components/TableBody.js +32 -52
- package/esm/components/TableBody.js.map +7 -0
- package/esm/components/TableHeader.js +17 -23
- package/esm/components/TableHeader.js.map +7 -0
- package/esm/components/footer/addOptionalFooterComponents.js +24 -37
- package/esm/components/footer/addOptionalFooterComponents.js.map +7 -0
- package/esm/components/header/PrimaryControls.js +20 -29
- package/esm/components/header/PrimaryControls.js.map +7 -0
- package/esm/components/header/addOptionalHeaderComponents.js +25 -36
- package/esm/components/header/addOptionalHeaderComponents.js.map +7 -0
- package/esm/components/index.js +14 -5
- package/esm/components/index.js.map +7 -0
- package/esm/components/renderers/defaultClassedRenderers.js +41 -46
- package/esm/components/renderers/defaultClassedRenderers.js.map +7 -0
- package/esm/components/renderers/index.js +16 -5
- package/esm/components/renderers/index.js.map +7 -0
- package/esm/components/renderers/renderRowsLoader.js +10 -10
- package/esm/components/renderers/renderRowsLoader.js.map +7 -0
- package/esm/components/tableContext.js +7 -5
- package/esm/components/tableContext.js.map +7 -0
- package/esm/defaultPlugins.js +15 -8
- package/esm/defaultPlugins.js.map +7 -0
- package/esm/index.js +63 -27
- package/esm/index.js.map +7 -0
- package/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +71 -101
- package/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js.map +7 -0
- package/esm/plugins/body-header-scroll-sync/index.js +6 -1
- package/esm/plugins/body-header-scroll-sync/index.js.map +7 -0
- package/esm/plugins/column-dnd/DndColumnsPlugin.js +69 -68
- package/esm/plugins/column-dnd/DndColumnsPlugin.js.map +7 -0
- package/esm/plugins/column-dnd/decorateGridWithDndColumns.js +16 -18
- package/esm/plugins/column-dnd/decorateGridWithDndColumns.js.map +7 -0
- package/esm/plugins/column-dnd/index.js +6 -1
- package/esm/plugins/column-dnd/index.js.map +7 -0
- package/esm/plugins/column-sizing/ColumnSizingPlugin.js +20 -37
- package/esm/plugins/column-sizing/ColumnSizingPlugin.js.map +7 -0
- package/esm/plugins/column-sizing/columnMeasurerTransformer.js +16 -42
- package/esm/plugins/column-sizing/columnMeasurerTransformer.js.map +7 -0
- package/esm/plugins/column-sizing/ext-points/decorateColumn.js +9 -7
- package/esm/plugins/column-sizing/ext-points/decorateColumn.js.map +7 -0
- package/esm/plugins/column-sizing/ext-points/getTableProps.js +23 -43
- package/esm/plugins/column-sizing/ext-points/getTableProps.js.map +7 -0
- package/esm/plugins/column-sizing/getColumnNameFromProperty.js +8 -7
- package/esm/plugins/column-sizing/getColumnNameFromProperty.js.map +7 -0
- package/esm/plugins/column-sizing/index.js +6 -1
- package/esm/plugins/column-sizing/index.js.map +7 -0
- package/esm/plugins/column-sizing/useColumnSizeService.js +34 -71
- package/esm/plugins/column-sizing/useColumnSizeService.js.map +7 -0
- package/esm/plugins/column-sizing/useStylesheetHelpers.js +64 -171
- package/esm/plugins/column-sizing/useStylesheetHelpers.js.map +7 -0
- package/esm/plugins/column-sizing/utils.js +23 -21
- package/esm/plugins/column-sizing/utils.js.map +7 -0
- package/esm/plugins/custom-cell-renderer/CustomRendererPlugin.js +8 -7
- package/esm/plugins/custom-cell-renderer/CustomRendererPlugin.js.map +7 -0
- package/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js +28 -43
- package/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js.map +7 -0
- package/esm/plugins/custom-cell-renderer/getRendererComponent.js +22 -44
- package/esm/plugins/custom-cell-renderer/getRendererComponent.js.map +7 -0
- package/esm/plugins/custom-cell-renderer/index.js +6 -1
- package/esm/plugins/custom-cell-renderer/index.js.map +7 -0
- package/esm/plugins/editable/EditableComponents/ComboBox.js +20 -46
- package/esm/plugins/editable/EditableComponents/ComboBox.js.map +7 -0
- package/esm/plugins/editable/EditableComponents/TextBox.js +26 -68
- package/esm/plugins/editable/EditableComponents/TextBox.js.map +7 -0
- package/esm/plugins/editable/EditableComponents/index.js +8 -2
- package/esm/plugins/editable/EditableComponents/index.js.map +7 -0
- package/esm/plugins/editable/EditablePlugin.js +27 -63
- package/esm/plugins/editable/EditablePlugin.js.map +7 -0
- package/esm/plugins/editable/decorateEditable.js +32 -68
- package/esm/plugins/editable/decorateEditable.js.map +7 -0
- package/esm/plugins/editable/getEditorComponent.js +39 -66
- package/esm/plugins/editable/getEditorComponent.js.map +7 -0
- package/esm/plugins/editable/index.js +9 -3
- package/esm/plugins/editable/index.js.map +7 -0
- package/esm/plugins/expandable-grid/ExpandableColumn.js +82 -133
- package/esm/plugins/expandable-grid/ExpandableColumn.js.map +7 -0
- package/esm/plugins/expandable-grid/ExpandablePlugin.js +81 -160
- package/esm/plugins/expandable-grid/ExpandablePlugin.js.map +7 -0
- package/esm/plugins/expandable-grid/ExpandedRow.js +86 -124
- package/esm/plugins/expandable-grid/ExpandedRow.js.map +7 -0
- package/esm/plugins/expandable-grid/ExpandedRowExtra.js +25 -44
- package/esm/plugins/expandable-grid/ExpandedRowExtra.js.map +7 -0
- package/esm/plugins/expandable-grid/index.js +8 -2
- package/esm/plugins/expandable-grid/index.js.map +7 -0
- package/esm/plugins/expandable-grid/useExpandGridState.js +14 -25
- package/esm/plugins/expandable-grid/useExpandGridState.js.map +7 -0
- package/esm/plugins/export-data/ExportDataPlugin.js +52 -103
- package/esm/plugins/export-data/ExportDataPlugin.js.map +7 -0
- package/esm/plugins/export-data/index.js +6 -1
- package/esm/plugins/export-data/index.js.map +7 -0
- package/esm/plugins/filterable/FilterablePlugin.js +22 -44
- package/esm/plugins/filterable/FilterablePlugin.js.map +7 -0
- package/esm/plugins/filterable/addFilterToColumn.js +11 -20
- package/esm/plugins/filterable/addFilterToColumn.js.map +7 -0
- package/esm/plugins/filterable/components/FilterableHeader.js +85 -95
- package/esm/plugins/filterable/components/FilterableHeader.js.map +7 -0
- package/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +83 -103
- package/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +7 -0
- package/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +68 -63
- package/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +7 -0
- package/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +108 -116
- package/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js.map +7 -0
- package/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js +84 -106
- package/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js.map +7 -0
- package/esm/plugins/filterable/components/filterable-menus/defaultDateFormat.js +6 -3
- package/esm/plugins/filterable/components/filterable-menus/defaultDateFormat.js.map +7 -0
- package/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +16 -12
- package/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +7 -0
- package/esm/plugins/filterable/filterableFormatter.js +32 -45
- package/esm/plugins/filterable/filterableFormatter.js.map +7 -0
- package/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js +29 -44
- package/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js.map +7 -0
- package/esm/plugins/filterable/filtering-helper/strategiesOperators.js +11 -13
- package/esm/plugins/filterable/filtering-helper/strategiesOperators.js.map +7 -0
- package/esm/plugins/filterable/helper.js +42 -62
- package/esm/plugins/filterable/helper.js.map +7 -0
- package/esm/plugins/filterable/index.js +6 -1
- package/esm/plugins/filterable/index.js.map +7 -0
- package/esm/plugins/filterable/useFilterableState.js +33 -54
- package/esm/plugins/filterable/useFilterableState.js.map +7 -0
- package/esm/plugins/grouping-by/GroupingByPlugin.js +10 -14
- package/esm/plugins/grouping-by/GroupingByPlugin.js.map +7 -0
- package/esm/plugins/grouping-grid/GroupingPlugin.js +53 -94
- package/esm/plugins/grouping-grid/GroupingPlugin.js.map +7 -0
- package/esm/plugins/grouping-grid/walkStrategy.js +17 -22
- package/esm/plugins/grouping-grid/walkStrategy.js.map +7 -0
- package/esm/plugins/index.js +39 -19
- package/esm/plugins/index.js.map +7 -0
- package/esm/plugins/infinite-scrolling/InfiniteScrollPlugin.js +31 -74
- package/esm/plugins/infinite-scrolling/InfiniteScrollPlugin.js.map +7 -0
- package/esm/plugins/infinite-scrolling/index.js +6 -1
- package/esm/plugins/infinite-scrolling/index.js.map +7 -0
- package/esm/plugins/pagination/PaginationPlugin.js +42 -75
- package/esm/plugins/pagination/PaginationPlugin.js.map +7 -0
- package/esm/plugins/pagination/components/Pagination.js +25 -27
- package/esm/plugins/pagination/components/Pagination.js.map +7 -0
- package/esm/plugins/pagination/components/Paginator.js +29 -35
- package/esm/plugins/pagination/components/Paginator.js.map +7 -0
- package/esm/plugins/pagination/components/PerPageDropdown.js +22 -54
- package/esm/plugins/pagination/components/PerPageDropdown.js.map +7 -0
- package/esm/plugins/pagination/helper.js +16 -19
- package/esm/plugins/pagination/helper.js.map +7 -0
- package/esm/plugins/pagination/index.js +6 -1
- package/esm/plugins/pagination/index.js.map +7 -0
- package/esm/plugins/pagination/usePaginationState.js +15 -28
- package/esm/plugins/pagination/usePaginationState.js.map +7 -0
- package/esm/plugins/resizable/ResizablePlugin.js +20 -45
- package/esm/plugins/resizable/ResizablePlugin.js.map +7 -0
- package/esm/plugins/resizable/decorateResizable.js +19 -41
- package/esm/plugins/resizable/decorateResizable.js.map +7 -0
- package/esm/plugins/resizable/index.js +6 -1
- package/esm/plugins/resizable/index.js.map +7 -0
- package/esm/plugins/resizable/useResizeHandle.js +24 -39
- package/esm/plugins/resizable/useResizeHandle.js.map +7 -0
- package/esm/plugins/resizable/utils.js +20 -18
- package/esm/plugins/resizable/utils.js.map +7 -0
- package/esm/plugins/row-dnd/DndRowsPlugin.js +73 -71
- package/esm/plugins/row-dnd/DndRowsPlugin.js.map +7 -0
- package/esm/plugins/row-dnd/index.js +6 -1
- package/esm/plugins/row-dnd/index.js.map +7 -0
- package/esm/plugins/selectable/SelectablePlugin.js +64 -117
- package/esm/plugins/selectable/SelectablePlugin.js.map +7 -0
- package/esm/plugins/selectable/addSelectableColumn.js +39 -57
- package/esm/plugins/selectable/addSelectableColumn.js.map +7 -0
- package/esm/plugins/selectable/helper.js +19 -25
- package/esm/plugins/selectable/helper.js.map +7 -0
- package/esm/plugins/selectable/index.js +6 -1
- package/esm/plugins/selectable/index.js.map +7 -0
- package/esm/plugins/selectable/selectableFormatter.js +54 -97
- package/esm/plugins/selectable/selectableFormatter.js.map +7 -0
- package/esm/plugins/selectable/useSelectableState.js +34 -78
- package/esm/plugins/selectable/useSelectableState.js.map +7 -0
- package/esm/plugins/sortable/SortablePlugin.js +30 -43
- package/esm/plugins/sortable/SortablePlugin.js.map +7 -0
- package/esm/plugins/sortable/checkIfSortable.js +8 -9
- package/esm/plugins/sortable/checkIfSortable.js.map +7 -0
- package/esm/plugins/sortable/index.js +6 -1
- package/esm/plugins/sortable/index.js.map +7 -0
- package/esm/plugins/sortable/sortHeaderFormatter.js +27 -43
- package/esm/plugins/sortable/sortHeaderFormatter.js.map +7 -0
- package/esm/plugins/sortable/sortTree.js +13 -24
- package/esm/plugins/sortable/sortTree.js.map +7 -0
- package/esm/plugins/sortable/sorter.js +112 -163
- package/esm/plugins/sortable/sorter.js.map +7 -0
- package/esm/plugins/sortable/useSortableState.js +22 -49
- package/esm/plugins/sortable/useSortableState.js.map +7 -0
- package/esm/plugins/toolbar/RowRenderer.js +40 -61
- package/esm/plugins/toolbar/RowRenderer.js.map +7 -0
- package/esm/plugins/toolbar/ToolbarPlugin.js +19 -23
- package/esm/plugins/toolbar/ToolbarPlugin.js.map +7 -0
- package/esm/plugins/toolbar/ToolbarTrigger.js +59 -57
- package/esm/plugins/toolbar/ToolbarTrigger.js.map +7 -0
- package/esm/plugins/toolbar/index.js +6 -1
- package/esm/plugins/toolbar/index.js.map +7 -0
- package/esm/plugins/virtualization/AutoHeightList.js +30 -40
- package/esm/plugins/virtualization/AutoHeightList.js.map +7 -0
- package/esm/plugins/virtualization/VirtualizationPlugin.js +55 -84
- package/esm/plugins/virtualization/VirtualizationPlugin.js.map +7 -0
- package/esm/plugins/virtualization/VirtualizedBody.js +94 -132
- package/esm/plugins/virtualization/VirtualizedBody.js.map +7 -0
- package/esm/plugins/virtualization/VirtualizedBodyRow.js +10 -15
- package/esm/plugins/virtualization/VirtualizedBodyRow.js.map +7 -0
- package/esm/plugins/virtualization/helper.js +6 -3
- package/esm/plugins/virtualization/helper.js.map +7 -0
- package/esm/plugins/virtualization/index.js +6 -1
- package/esm/plugins/virtualization/index.js.map +7 -0
- package/esm/renders/CellWithAddons.js +69 -40
- package/esm/renders/CellWithAddons.js.map +7 -0
- package/esm/renders/index.js +8 -2
- package/esm/renders/index.js.map +7 -0
- package/esm/renders/styled.js +49 -16
- package/esm/renders/styled.js.map +7 -0
- package/esm/rowSizes.js +15 -6
- package/esm/rowSizes.js.map +7 -0
- package/esm/utilities/DataGridUtilities.json +1315 -0
- package/esm/utilities/getPluginsFromProps.js +25 -24
- package/esm/utilities/getPluginsFromProps.js.map +7 -0
- package/esm/utilities/getScrollbarSize.js +15 -21
- package/esm/utilities/getScrollbarSize.js.map +7 -0
- package/esm/utilities/normalizeData.js +15 -24
- package/esm/utilities/normalizeData.js.map +7 -0
- package/package.json +20 -20
- package/types/DSDataGrid.d.ts +1 -1
- package/types/DataGridImpl.d.ts +3 -2
- package/types/PaginatedDataGrid.d.ts +1 -2
- package/types/columns/IconColumn.d.ts +3 -2
- package/types/components/BodyCell.d.ts +13 -12
- package/types/components/ColumnVisibilityMenuOption.d.ts +2 -2
- package/types/components/ColumnsOptionsMenuSection.d.ts +1 -0
- package/types/components/HeaderCell.d.ts +10 -10
- package/types/components/NoResults.d.ts +2 -2
- package/types/components/RowsLoader.d.ts +2 -2
- package/types/components/Table.d.ts +6 -11
- package/types/components/TableBody.d.ts +3 -8
- package/types/components/TableHeader.d.ts +2 -1
- package/types/components/footer/addOptionalFooterComponents.d.ts +1 -0
- package/types/components/header/PrimaryControls.d.ts +1 -0
- package/types/components/header/addOptionalHeaderComponents.d.ts +1 -1
- package/types/components/renderers/index.d.ts +1 -1
- package/types/components/renderers/renderRowsLoader.d.ts +1 -1
- package/types/index.d.ts +7 -8
- package/types/plugins/body-header-scroll-sync/index.d.ts +1 -1
- package/types/plugins/column-dnd/index.d.ts +1 -1
- package/types/plugins/column-sizing/getColumnNameFromProperty.d.ts +2 -1
- package/types/plugins/column-sizing/index.d.ts +1 -1
- package/types/plugins/column-sizing/useColumnSizeService.d.ts +2 -1
- package/types/plugins/custom-cell-renderer/addCustomRendererToCell.d.ts +1 -0
- package/types/plugins/custom-cell-renderer/getRendererComponent.d.ts +1 -0
- package/types/plugins/custom-cell-renderer/index.d.ts +1 -1
- package/types/plugins/editable/EditableComponents/ComboBox.d.ts +3 -1
- package/types/plugins/editable/EditableComponents/TextBox.d.ts +3 -1
- package/types/plugins/editable/getEditorComponent.d.ts +1 -0
- package/types/plugins/editable/index.d.ts +2 -2
- package/types/plugins/expandable-grid/ExpandableColumn.d.ts +3 -2
- package/types/plugins/expandable-grid/ExpandedRow.d.ts +1 -0
- package/types/plugins/expandable-grid/ExpandedRowExtra.d.ts +1 -0
- package/types/plugins/expandable-grid/index.d.ts +2 -2
- package/types/plugins/export-data/index.d.ts +1 -1
- package/types/plugins/filterable/components/FilterableHeader.d.ts +15 -15
- package/types/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.d.ts +1 -0
- package/types/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.d.ts +1 -0
- package/types/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.d.ts +2 -1
- package/types/plugins/filterable/components/filterable-menus/TextFilterMenu.d.ts +1 -0
- package/types/plugins/filterable/components/filterable-menus/getFilterMenuByType.d.ts +2 -1
- package/types/plugins/filterable/filterableFormatter.d.ts +3 -2
- package/types/plugins/filterable/filtering-helper/filterRowsByQuery.d.ts +2 -1
- package/types/plugins/filterable/filtering-helper/strategiesOperators.d.ts +2 -2
- package/types/plugins/filterable/index.d.ts +1 -1
- package/types/plugins/index.d.ts +16 -16
- package/types/plugins/infinite-scrolling/index.d.ts +1 -1
- package/types/plugins/pagination/components/Paginator.d.ts +1 -0
- package/types/plugins/pagination/components/PerPageDropdown.d.ts +1 -0
- package/types/plugins/pagination/helper.d.ts +3 -2
- package/types/plugins/pagination/index.d.ts +1 -1
- package/types/plugins/resizable/index.d.ts +1 -1
- package/types/plugins/row-dnd/index.d.ts +1 -1
- package/types/plugins/selectable/index.d.ts +1 -1
- package/types/plugins/selectable/selectableFormatter.d.ts +1 -0
- package/types/plugins/sortable/index.d.ts +1 -1
- package/types/plugins/sortable/sortHeaderFormatter.d.ts +1 -0
- package/types/plugins/sortable/sortTree.d.ts +1 -0
- package/types/plugins/toolbar/index.d.ts +1 -1
- package/types/plugins/virtualization/AutoHeightList.d.ts +1 -1
- package/types/plugins/virtualization/VirtualizedBody.d.ts +1 -0
- package/types/plugins/virtualization/VirtualizedBodyRow.d.ts +2 -2
- package/types/plugins/virtualization/index.d.ts +1 -1
- package/types/utilities/getPluginsFromProps.d.ts +2 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/column-sizing/ColumnSizingPlugin.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-param-reassign */\n/* eslint-disable react-hooks/rules-of-hooks */\nimport { useRef } from 'react';\nimport { cx } from '@elliemae/ds-utilities';\nimport { createInstancePlugin } from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { useStylesheetHelpers } from './useStylesheetHelpers';\nimport { useColumnSizeService } from './useColumnSizeService';\nimport { getTableProps } from './ext-points/getTableProps';\nimport { decorateColumn } from './ext-points/decorateColumn';\n\nconst getHeaderRowProps = (rowProps, { rowsStylesheet }) => {\n rowProps.className = `${rowsStylesheet.getRowClassName()}-header`;\n return rowProps;\n};\n\nconst getRowProps = (rowProps, { rowsStylesheet }) => {\n rowProps.className = cx(rowProps.className, rowsStylesheet.getRowClassName());\n return rowProps;\n};\n\nconst decorateColumns = (columns, grid) => grid.columnsStylesheet.decorateColumns(columns, grid);\n\nconst decorateGrid = (grid) => {\n const isDragging = useRef(false);\n const tableRef = useRef();\n const resizedColumns = useRef({});\n const scrollbarWidth = useRef();\n const bodyWidth = useRef();\n const allColumnsHaveBeenFixed = useRef(false);\n const columnSizeService = useColumnSizeService(grid);\n const { columnsStylesheet, rowsStylesheet } = useStylesheetHelpers(grid);\n\n // row size side-effect\n const updateRowWidth = (width) => {\n const gridWidth = width || tableRef.current.offsetWidth;\n const columnsTotalSize = columnSizeService.computeColumnsTotalSize();\n\n if (columnsTotalSize > gridWidth + 5) {\n if (!allColumnsHaveBeenFixed.current && isDragging.current) {\n columnSizeService.setActualColumnsSizesFixed();\n allColumnsHaveBeenFixed.current = true;\n }\n rowsStylesheet.update(columnsTotalSize);\n } else {\n rowsStylesheet.update(undefined);\n }\n };\n\n return {\n isDragging,\n tableRef,\n bodyWidth,\n scrollbarWidth,\n columnSizeService,\n rowsStylesheet,\n columnsStylesheet,\n resizedColumns,\n updateRowWidth,\n };\n};\n\nexport const ColumnSizingPlugin = createInstancePlugin('column-sizing', {\n decorateGrid,\n decorateColumn,\n getRowProps,\n getHeaderRowProps,\n getTableProps,\n decorateColumns,\n});\n"],
|
|
5
|
+
"mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,oBAAoB,CAAC,UAAU,EAAE,qBAAqB;AAC1D,WAAS,YAAY,GAAG,eAAe;AACvC,SAAO;AAAA;AAGT,MAAM,cAAc,CAAC,UAAU,EAAE,qBAAqB;AACpD,WAAS,YAAY,GAAG,SAAS,WAAW,eAAe;AAC3D,SAAO;AAAA;AAGT,MAAM,kBAAkB,CAAC,SAAS,SAAS,KAAK,kBAAkB,gBAAgB,SAAS;AAE3F,MAAM,eAAe,CAAC,SAAS;AAC7B,QAAM,aAAa,OAAO;AAC1B,QAAM,WAAW;AACjB,QAAM,iBAAiB,OAAO;AAC9B,QAAM,iBAAiB;AACvB,QAAM,YAAY;AAClB,QAAM,0BAA0B,OAAO;AACvC,QAAM,oBAAoB,qBAAqB;AAC/C,QAAM,EAAE,mBAAmB,mBAAmB,qBAAqB;AAGnE,QAAM,iBAAiB,CAAC,UAAU;AAChC,UAAM,YAAY,SAAS,SAAS,QAAQ;AAC5C,UAAM,mBAAmB,kBAAkB;AAE3C,QAAI,mBAAmB,YAAY,GAAG;AACpC,UAAI,CAAC,wBAAwB,WAAW,WAAW,SAAS;AAC1D,0BAAkB;AAClB,gCAAwB,UAAU;AAAA;AAEpC,qBAAe,OAAO;AAAA,WACjB;AACL,qBAAe,OAAO;AAAA;AAAA;AAI1B,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA;AAIG,MAAM,qBAAqB,qBAAqB,iBAAiB;AAAA,EACtE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,56 +1,27 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
7
|
-
import { useRef, useLayoutEffect } from 'react';
|
|
8
|
-
import { mergeRefs } from '@elliemae/ds-utilities';
|
|
9
|
-
|
|
10
|
-
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; }
|
|
11
|
-
|
|
12
|
-
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; }
|
|
13
|
-
const columnMeasurerTransformer = columnSizeService => function (value, _ref) {
|
|
14
|
-
let {
|
|
15
|
-
column,
|
|
16
|
-
grid
|
|
17
|
-
} = _ref;
|
|
18
|
-
let props = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
19
|
-
const {
|
|
20
|
-
registerColumn
|
|
21
|
-
} = columnSizeService;
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useLayoutEffect, useRef } from "react";
|
|
3
|
+
import { mergeRefs } from "@elliemae/ds-utilities";
|
|
4
|
+
const columnMeasurerTransformer = (columnSizeService) => (value, { column, grid }, props = {}) => {
|
|
5
|
+
const { registerColumn } = columnSizeService;
|
|
22
6
|
const cellRef = useRef();
|
|
23
7
|
useLayoutEffect(() => {
|
|
8
|
+
const { columns, expandedToContentColumns } = columnSizeService;
|
|
24
9
|
const {
|
|
25
|
-
|
|
26
|
-
expandedToContentColumns
|
|
27
|
-
} = columnSizeService;
|
|
28
|
-
const {
|
|
29
|
-
props: {
|
|
30
|
-
minColumnWidth
|
|
31
|
-
},
|
|
10
|
+
props: { minColumnWidth },
|
|
32
11
|
resizedColumns
|
|
33
12
|
} = grid.getInstance();
|
|
34
|
-
|
|
35
13
|
if (cellRef.current) {
|
|
36
|
-
// FIX: merge
|
|
37
|
-
// if (column.width && column.width !== 'string' && !initialUsedSpace[column.property]) {
|
|
38
|
-
// increaseUsedSpace(getColumnWidthSize(column.width, minColumnWidth, column), column.property)
|
|
39
|
-
// }
|
|
40
14
|
if (column.expandWidthToContent && !expandedToContentColumns[column.uuid]) {
|
|
41
|
-
// measure the content and reset to flex
|
|
42
15
|
const originalWidth = cellRef.current.offsetWidth;
|
|
43
|
-
cellRef.current.style.flex =
|
|
44
|
-
cellRef.current.style.minWidth =
|
|
16
|
+
cellRef.current.style.flex = "initial";
|
|
17
|
+
cellRef.current.style.minWidth = "initial";
|
|
45
18
|
const calcWidth = cellRef.current.offsetWidth + 20;
|
|
46
|
-
|
|
47
19
|
if (originalWidth + 20 <= calcWidth) {
|
|
48
20
|
resizedColumns.current[column.uuid] = calcWidth;
|
|
49
21
|
columns[column.uuid].minWidth = calcWidth;
|
|
50
22
|
} else {
|
|
51
23
|
columns[column.uuid].minWidth = originalWidth;
|
|
52
24
|
}
|
|
53
|
-
|
|
54
25
|
expandedToContentColumns[column.uuid] = true;
|
|
55
26
|
cellRef.current.style.minWidth = null;
|
|
56
27
|
cellRef.current.style.flex = 1;
|
|
@@ -58,9 +29,12 @@ const columnMeasurerTransformer = columnSizeService => function (value, _ref) {
|
|
|
58
29
|
}
|
|
59
30
|
}
|
|
60
31
|
});
|
|
61
|
-
return
|
|
32
|
+
return {
|
|
33
|
+
...props,
|
|
62
34
|
innerRef: mergeRefs(cellRef, props.innerRef, registerColumn(column))
|
|
63
|
-
}
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
export {
|
|
38
|
+
columnMeasurerTransformer
|
|
64
39
|
};
|
|
65
|
-
|
|
66
|
-
export { columnMeasurerTransformer };
|
|
40
|
+
//# sourceMappingURL=columnMeasurerTransformer.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/column-sizing/columnMeasurerTransformer.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useLayoutEffect, useRef } from 'react';\nimport { mergeRefs } from '@elliemae/ds-utilities';\n\nexport const columnMeasurerTransformer =\n (columnSizeService) =>\n (value, { column, grid }, props = {}) => {\n const { registerColumn } = columnSizeService;\n const cellRef = useRef();\n\n useLayoutEffect(() => {\n const { columns, expandedToContentColumns } = columnSizeService;\n const {\n props: { minColumnWidth },\n resizedColumns,\n } = grid.getInstance();\n if (cellRef.current) {\n // FIX: merge\n // if (column.width && column.width !== 'string' && !initialUsedSpace[column.property]) {\n // increaseUsedSpace(getColumnWidthSize(column.width, minColumnWidth, column), column.property)\n // }\n if (column.expandWidthToContent && !expandedToContentColumns[column.uuid]) {\n // measure the content and reset to flex\n const originalWidth = cellRef.current.offsetWidth;\n cellRef.current.style.flex = 'initial';\n cellRef.current.style.minWidth = 'initial';\n const calcWidth = cellRef.current.offsetWidth + 20;\n if (originalWidth + 20 <= calcWidth) {\n resizedColumns.current[column.uuid] = calcWidth;\n columns[column.uuid].minWidth = calcWidth;\n } else {\n columns[column.uuid].minWidth = originalWidth;\n }\n expandedToContentColumns[column.uuid] = true;\n cellRef.current.style.minWidth = null;\n cellRef.current.style.flex = 1;\n column.node = cellRef.current;\n }\n }\n });\n\n return {\n ...props,\n innerRef: mergeRefs(cellRef, props.innerRef, registerColumn(column)),\n };\n };\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AAEO,MAAM,4BACX,CAAC,sBACD,CAAC,OAAO,EAAE,QAAQ,QAAQ,QAAQ,OAAO;AACvC,QAAM,EAAE,mBAAmB;AAC3B,QAAM,UAAU;AAEhB,kBAAgB,MAAM;AACpB,UAAM,EAAE,SAAS,6BAA6B;AAC9C,UAAM;AAAA,MACJ,OAAO,EAAE;AAAA,MACT;AAAA,QACE,KAAK;AACT,QAAI,QAAQ,SAAS;AAKnB,UAAI,OAAO,wBAAwB,CAAC,yBAAyB,OAAO,OAAO;AAEzE,cAAM,gBAAgB,QAAQ,QAAQ;AACtC,gBAAQ,QAAQ,MAAM,OAAO;AAC7B,gBAAQ,QAAQ,MAAM,WAAW;AACjC,cAAM,YAAY,QAAQ,QAAQ,cAAc;AAChD,YAAI,gBAAgB,MAAM,WAAW;AACnC,yBAAe,QAAQ,OAAO,QAAQ;AACtC,kBAAQ,OAAO,MAAM,WAAW;AAAA,eAC3B;AACL,kBAAQ,OAAO,MAAM,WAAW;AAAA;AAElC,iCAAyB,OAAO,QAAQ;AACxC,gBAAQ,QAAQ,MAAM,WAAW;AACjC,gBAAQ,QAAQ,MAAM,OAAO;AAC7B,eAAO,OAAO,QAAQ;AAAA;AAAA;AAAA;AAK5B,SAAO;AAAA,OACF;AAAA,IACH,UAAU,UAAU,SAAS,MAAM,UAAU,eAAe;AAAA;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { get, set } from "@elliemae/ds-utilities";
|
|
3
|
+
import { columnMeasurerTransformer } from "../columnMeasurerTransformer";
|
|
4
4
|
function decorateColumn(column, grid, index) {
|
|
5
|
-
const transformsPath = [
|
|
5
|
+
const transformsPath = ["header", "transforms"];
|
|
6
6
|
const transforms = get(column, transformsPath, []);
|
|
7
|
-
transforms.push(columnMeasurerTransformer(grid.columnSizeService));
|
|
7
|
+
transforms.push(columnMeasurerTransformer(grid.columnSizeService, grid));
|
|
8
8
|
column.index = index;
|
|
9
9
|
set(column, transformsPath, transforms);
|
|
10
10
|
return column;
|
|
11
11
|
}
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
export {
|
|
13
|
+
decorateColumn
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=decorateColumn.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/plugins/column-sizing/ext-points/decorateColumn.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { get, set } from '@elliemae/ds-utilities';\nimport { columnMeasurerTransformer } from '../columnMeasurerTransformer';\n\nexport function decorateColumn(column, grid, index) {\n const transformsPath = ['header', 'transforms'];\n const transforms = get(column, transformsPath, []);\n transforms.push(columnMeasurerTransformer(grid.columnSizeService, grid));\n column.index = index;\n set(column, transformsPath, transforms);\n\n return column;\n}\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AAEO,wBAAwB,QAAQ,MAAM,OAAO;AAClD,QAAM,iBAAiB,CAAC,UAAU;AAClC,QAAM,aAAa,IAAI,QAAQ,gBAAgB;AAC/C,aAAW,KAAK,0BAA0B,KAAK,mBAAmB;AAClE,SAAO,QAAQ;AACf,MAAI,QAAQ,gBAAgB;AAE5B,SAAO;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,41 +1,18 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
7
|
-
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
8
|
-
import { useState, useEffect } from 'react';
|
|
9
|
-
import { useResizeObserver, mergeRefs } from '@elliemae/ds-utilities';
|
|
10
|
-
import { getScrollbarSizeFromHeaderAndBody } from '../utils.js';
|
|
11
|
-
|
|
12
|
-
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; }
|
|
13
|
-
|
|
14
|
-
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; }
|
|
15
|
-
function getTableProps(tableProps, _ref) {
|
|
16
|
-
let {
|
|
17
|
-
refs,
|
|
18
|
-
tableRef,
|
|
19
|
-
bodyWidth,
|
|
20
|
-
scrollbarWidth,
|
|
21
|
-
isDragging,
|
|
22
|
-
columnSizeService,
|
|
23
|
-
updateRowWidth,
|
|
24
|
-
columns
|
|
25
|
-
} = _ref;
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useEffect, useState } from "react";
|
|
3
|
+
import { useResizeObserver, mergeRefs } from "@elliemae/ds-utilities";
|
|
4
|
+
import { getScrollbarSizeFromHeaderAndBody } from "../utils";
|
|
5
|
+
function getTableProps(tableProps, { refs, tableRef, bodyWidth, scrollbarWidth, isDragging, columnSizeService, updateRowWidth, columns }) {
|
|
26
6
|
const [tableNode, tableRefCallback] = useState();
|
|
27
|
-
useResizeObserver(
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
if (typeof
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
// }
|
|
37
|
-
|
|
38
|
-
if (isDragging.current) return;
|
|
7
|
+
useResizeObserver(({ width }) => {
|
|
8
|
+
if (!refs.header.current)
|
|
9
|
+
return;
|
|
10
|
+
if (typeof scrollbarWidth.current !== "number")
|
|
11
|
+
scrollbarWidth.current = getScrollbarSizeFromHeaderAndBody(refs, width);
|
|
12
|
+
if (typeof bodyWidth.current !== "number")
|
|
13
|
+
bodyWidth.current = refs.body.offsetWidth;
|
|
14
|
+
if (isDragging.current)
|
|
15
|
+
return;
|
|
39
16
|
columnSizeService.updateMissingWidths(width);
|
|
40
17
|
updateRowWidth(width);
|
|
41
18
|
}, tableNode);
|
|
@@ -44,12 +21,15 @@ function getTableProps(tableProps, _ref) {
|
|
|
44
21
|
columnSizeService.updateMissingWidths(tableNode.clientWidth);
|
|
45
22
|
updateRowWidth(tableNode.clientWidth);
|
|
46
23
|
}
|
|
47
|
-
|
|
48
|
-
|
|
24
|
+
if (typeof bodyWidth.current !== "number")
|
|
25
|
+
bodyWidth.current = refs.body.clientWidth;
|
|
49
26
|
}, [columns, tableNode]);
|
|
50
|
-
return
|
|
27
|
+
return {
|
|
28
|
+
...tableProps,
|
|
51
29
|
innerRef: mergeRefs(tableRefCallback, tableProps.innerRef, tableRef)
|
|
52
|
-
}
|
|
30
|
+
};
|
|
53
31
|
}
|
|
54
|
-
|
|
55
|
-
|
|
32
|
+
export {
|
|
33
|
+
getTableProps
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=getTableProps.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/plugins/column-sizing/ext-points/getTableProps.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useEffect, useState } from 'react';\nimport { useResizeObserver, mergeRefs } from '@elliemae/ds-utilities';\nimport { getScrollbarSizeFromHeaderAndBody } from '../utils';\n\nexport function getTableProps(\n tableProps,\n { refs, tableRef, bodyWidth, scrollbarWidth, isDragging, columnSizeService, updateRowWidth, columns },\n) {\n const [tableNode, tableRefCallback] = useState();\n\n useResizeObserver(({ width }) => {\n if (!refs.header.current) return;\n if (typeof scrollbarWidth.current !== 'number')\n scrollbarWidth.current = getScrollbarSizeFromHeaderAndBody(refs, width);\n if (typeof bodyWidth.current !== 'number') bodyWidth.current = refs.body.offsetWidth;\n // DataGrid: header with width 0 after redirect from details page (https://jira.elliemae.io/browse/PUI-2162)\n // if (scrollbarWidth.current !== 0 && width - scrollbarWidth.current > 0) {\n // refs.header.current.style.width = `${width - scrollbarWidth.current}px`\n // }\n\n if (isDragging.current) return;\n columnSizeService.updateMissingWidths(width);\n updateRowWidth(width);\n }, tableNode);\n\n useEffect(() => {\n if (tableNode) {\n columnSizeService.updateMissingWidths(tableNode.clientWidth);\n updateRowWidth(tableNode.clientWidth);\n }\n if (typeof bodyWidth.current !== 'number') bodyWidth.current = refs.body.clientWidth;\n }, [columns, tableNode]);\n\n return {\n ...tableProps,\n innerRef: mergeRefs(tableRefCallback, tableProps.innerRef, tableRef),\n };\n}\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AACA;AAEO,uBACL,YACA,EAAE,MAAM,UAAU,WAAW,gBAAgB,YAAY,mBAAmB,gBAAgB,WAC5F;AACA,QAAM,CAAC,WAAW,oBAAoB;AAEtC,oBAAkB,CAAC,EAAE,YAAY;AAC/B,QAAI,CAAC,KAAK,OAAO;AAAS;AAC1B,QAAI,OAAO,eAAe,YAAY;AACpC,qBAAe,UAAU,kCAAkC,MAAM;AACnE,QAAI,OAAO,UAAU,YAAY;AAAU,gBAAU,UAAU,KAAK,KAAK;AAMzE,QAAI,WAAW;AAAS;AACxB,sBAAkB,oBAAoB;AACtC,mBAAe;AAAA,KACd;AAEH,YAAU,MAAM;AACd,QAAI,WAAW;AACb,wBAAkB,oBAAoB,UAAU;AAChD,qBAAe,UAAU;AAAA;AAE3B,QAAI,OAAO,UAAU,YAAY;AAAU,gBAAU,UAAU,KAAK,KAAK;AAAA,KACxE,CAAC,SAAS;AAEb,SAAO;AAAA,OACF;AAAA,IACH,UAAU,UAAU,kBAAkB,WAAW,UAAU;AAAA;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
const getColumnNameFromProperty = (property) => property && property.replace(/\./g, "-");
|
|
3
|
+
var getColumnNameFromProperty_default = getColumnNameFromProperty;
|
|
4
|
+
export {
|
|
5
|
+
getColumnNameFromProperty_default as default,
|
|
6
|
+
getColumnNameFromProperty
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=getColumnNameFromProperty.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/column-sizing/getColumnNameFromProperty.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export const getColumnNameFromProperty = (property) => property && property.replace(/\\./g, '-');\n\nexport default getColumnNameFromProperty;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAO,MAAM,4BAA4B,CAAC,aAAa,YAAY,SAAS,QAAQ,OAAO;AAE3F,IAAO,oCAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/column-sizing/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { ColumnSizingPlugin } from './ColumnSizingPlugin';\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,21 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
6
|
-
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
7
|
-
import 'core-js/modules/esnext.iterator.map.js';
|
|
8
|
-
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
9
|
-
import 'core-js/modules/esnext.iterator.filter.js';
|
|
10
|
-
import 'core-js/modules/esnext.async-iterator.reduce.js';
|
|
11
|
-
import 'core-js/modules/esnext.iterator.reduce.js';
|
|
12
|
-
import { useRef, useState, useLayoutEffect } from 'react';
|
|
13
|
-
import { getColumnWidthSize, getPercentageValue } from './utils.js';
|
|
14
|
-
|
|
15
|
-
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; }
|
|
16
|
-
|
|
17
|
-
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; }
|
|
18
|
-
function useColumnSizeService(instance) {
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { useRef, useState, useLayoutEffect } from "react";
|
|
3
|
+
import { getColumnWidthSize, getPercentageValue } from "./utils";
|
|
4
|
+
const useColumnSizeService = (instance) => {
|
|
19
5
|
const columns = useRef({});
|
|
20
6
|
const [expandableGridDetailWidth, setExpandableGridDetailWidth] = useState(0);
|
|
21
7
|
const [expandableColumnWidth, setExpandableColumnWidth] = useState(0);
|
|
@@ -26,118 +12,91 @@ function useColumnSizeService(instance) {
|
|
|
26
12
|
amount: 0,
|
|
27
13
|
percentage: 0
|
|
28
14
|
});
|
|
29
|
-
|
|
30
15
|
const increaseUsedSpace = (space, columnUuid) => {
|
|
31
|
-
if (typeof space ===
|
|
16
|
+
if (typeof space === "number") {
|
|
32
17
|
initialUsedSpace.current.space += space;
|
|
33
|
-
} else if (space && space.endsWith(
|
|
18
|
+
} else if (space && space.endsWith("%")) {
|
|
34
19
|
initialUsedSpace.current.percentage += Number(space.slice(0, -1));
|
|
35
20
|
}
|
|
36
|
-
|
|
37
21
|
initialUsedSpace.current.amount += 1;
|
|
38
22
|
initialUsedSpace.current[columnUuid] = true;
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
const registerColumn = column => node => columns.current[column.uuid] = _objectSpread(_objectSpread({}, column), {}, {
|
|
43
|
-
node
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
const unregisterColumn = column => {
|
|
23
|
+
};
|
|
24
|
+
const registerColumn = (column) => (node) => columns.current[column.uuid] = { ...column, node };
|
|
25
|
+
const unregisterColumn = (column) => {
|
|
47
26
|
delete columns.current[column.property];
|
|
48
27
|
};
|
|
49
|
-
|
|
50
28
|
const setActualColumnsSizesFixed = () => {
|
|
51
29
|
const columnsArray = Object.values(columns.current);
|
|
52
|
-
columnsArray.forEach(column => {
|
|
30
|
+
columnsArray.forEach((column) => {
|
|
53
31
|
const columnOffsetWidth = column.node.offsetWidth;
|
|
54
|
-
column.updateBodyHeaderWidth(
|
|
32
|
+
column.updateBodyHeaderWidth(`${columnOffsetWidth}px`, `${columnOffsetWidth}px`);
|
|
55
33
|
});
|
|
56
34
|
};
|
|
57
|
-
|
|
58
|
-
const updateMissingWidths = totalWidth => {
|
|
35
|
+
const updateMissingWidths = (totalWidth) => {
|
|
59
36
|
if (totalWidth) {
|
|
60
37
|
previousTotalWidth.current = totalWidth;
|
|
61
38
|
}
|
|
62
|
-
|
|
63
39
|
const gridWidth = previousTotalWidth.current - 4;
|
|
64
40
|
const {
|
|
65
|
-
props: {
|
|
66
|
-
minColumnWidth,
|
|
67
|
-
expandable
|
|
68
|
-
},
|
|
41
|
+
props: { minColumnWidth, expandable },
|
|
69
42
|
resizedColumns,
|
|
70
43
|
decoratedColumns: columnDefinitions
|
|
71
44
|
} = instance.getInstance();
|
|
72
|
-
if (!initialUsedSpace.current)
|
|
73
|
-
|
|
74
|
-
const
|
|
75
|
-
|
|
76
|
-
initialUsedSpace.current = {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
percentage: 0
|
|
80
|
-
};
|
|
81
|
-
columnsArray.forEach(column => {
|
|
82
|
-
if (column.width && column.width !== 'string' && !initialUsedSpace[column.uuid]) {
|
|
45
|
+
if (!initialUsedSpace.current)
|
|
46
|
+
return;
|
|
47
|
+
const columnUuids = columnDefinitions.map((c) => c.uuid);
|
|
48
|
+
const columnsArray = Object.values(columns.current).filter((c) => columnUuids.includes(c.uuid));
|
|
49
|
+
initialUsedSpace.current = { space: 0, amount: 0, percentage: 0 };
|
|
50
|
+
columnsArray.forEach((column) => {
|
|
51
|
+
if (column.width && column.width !== "string" && !initialUsedSpace[column.uuid]) {
|
|
83
52
|
increaseUsedSpace(getColumnWidthSize(column.width, minColumnWidth, column), column.uuid);
|
|
84
53
|
}
|
|
85
54
|
});
|
|
86
|
-
const nextColumnDict = {};
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
if (typeof column.width === 'number') {
|
|
55
|
+
const nextColumnDict = {};
|
|
56
|
+
columnsArray.forEach((column) => {
|
|
57
|
+
if (typeof column.width === "number") {
|
|
90
58
|
nextColumnDict[column.uuid] = column;
|
|
91
59
|
return;
|
|
92
60
|
}
|
|
93
|
-
|
|
94
61
|
if (resizedColumns.current[column.uuid]) {
|
|
95
62
|
nextColumnDict[column.uuid] = column;
|
|
96
63
|
return;
|
|
97
64
|
}
|
|
98
|
-
|
|
99
65
|
const {
|
|
100
66
|
space: usedSpace,
|
|
101
67
|
amount: usedAmount,
|
|
102
68
|
percentage: usedPercentage
|
|
103
69
|
} = initialUsedSpace.current;
|
|
104
|
-
const percentValue = getPercentageValue(column.width);
|
|
105
|
-
|
|
70
|
+
const percentValue = getPercentageValue(column.width);
|
|
106
71
|
if (percentValue) {
|
|
107
72
|
const pxs = gridWidth * percentValue / 100;
|
|
108
|
-
const pxWidths =
|
|
73
|
+
const pxWidths = `${getColumnWidthSize(pxs, minColumnWidth, column)}px`;
|
|
109
74
|
column.updateBodyHeaderWidth(pxWidths, pxWidths);
|
|
110
75
|
columns.current[column.uuid].computedWidth = pxs;
|
|
111
|
-
|
|
112
76
|
if (expandable && column.expandableColumn) {
|
|
113
77
|
setExpandableColumnWidth(pxs);
|
|
114
78
|
}
|
|
115
79
|
} else {
|
|
116
|
-
// otherwise the values are auto calculated from the total size
|
|
117
80
|
const columnFixWidth = (gridWidth * (1 - usedPercentage / 100) - usedSpace) / (columnsArray.length - usedAmount);
|
|
118
81
|
const percentWidth = columnFixWidth / gridWidth * 100;
|
|
119
82
|
const pxs = gridWidth * percentWidth / 100;
|
|
120
83
|
const actualWidthAfterChecks = getColumnWidthSize(pxs, minColumnWidth, column);
|
|
121
|
-
column.updateBodyHeaderWidth(
|
|
84
|
+
column.updateBodyHeaderWidth(`${actualWidthAfterChecks}px`, column.minWidth || minColumnWidth ? `${column.minWidth || minColumnWidth}px` : `${pxs}px`);
|
|
122
85
|
resizedColumns.current[column.uuid] = actualWidthAfterChecks;
|
|
123
86
|
columns.current[column.uuid].computedWidth = actualWidthAfterChecks;
|
|
124
87
|
}
|
|
125
|
-
|
|
126
88
|
nextColumnDict[column.uuid] = column;
|
|
127
89
|
});
|
|
128
90
|
columns.current = nextColumnDict;
|
|
129
91
|
};
|
|
130
|
-
|
|
131
92
|
useLayoutEffect(() => {
|
|
132
93
|
const totalWidth = computeColumnsTotalSize();
|
|
133
94
|
setExpandableGridDetailWidth(totalWidth - expandableColumnWidth);
|
|
134
|
-
}, [expandableColumnWidth]);
|
|
135
|
-
|
|
95
|
+
}, [expandableColumnWidth]);
|
|
136
96
|
const computeColumnsTotalSize = () => {
|
|
137
97
|
const columnsArray = Object.values(columns.current);
|
|
138
98
|
return columnsArray.reduce((totalSize, column) => totalSize + column.node.offsetWidth, 0);
|
|
139
99
|
};
|
|
140
|
-
|
|
141
100
|
return {
|
|
142
101
|
columns: columns.current,
|
|
143
102
|
expandedToContentColumns: expandedToContentColumns.current,
|
|
@@ -151,6 +110,10 @@ function useColumnSizeService(instance) {
|
|
|
151
110
|
expandableGridDetailWidth,
|
|
152
111
|
expandableColumnWidth
|
|
153
112
|
};
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
export {
|
|
113
|
+
};
|
|
114
|
+
var useColumnSizeService_default = useColumnSizeService;
|
|
115
|
+
export {
|
|
116
|
+
useColumnSizeService_default as default,
|
|
117
|
+
useColumnSizeService
|
|
118
|
+
};
|
|
119
|
+
//# sourceMappingURL=useColumnSizeService.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/column-sizing/useColumnSizeService.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport { useRef, useState, useLayoutEffect } from 'react';\nimport { getColumnWidthSize, getPercentageValue } from './utils';\n\nexport const useColumnSizeService = (instance) => {\n const columns = useRef({});\n const [expandableGridDetailWidth, setExpandableGridDetailWidth] = useState(0);\n const [expandableColumnWidth, setExpandableColumnWidth] = useState(0);\n const expandedToContentColumns = useRef({});\n const previousTotalWidth = useRef(0);\n const initialUsedSpace = useRef({\n space: 0,\n amount: 0,\n percentage: 0,\n });\n\n const increaseUsedSpace = (space, columnUuid) => {\n if (typeof space === 'number') {\n initialUsedSpace.current.space += space;\n } else if (space && space.endsWith('%')) {\n initialUsedSpace.current.percentage += Number(space.slice(0, -1));\n }\n initialUsedSpace.current.amount += 1;\n initialUsedSpace.current[columnUuid] = true;\n };\n\n // eslint-disable-next-line no-return-assign\n const registerColumn = (column) => (node) =>\n (columns.current[column.uuid] = { ...column, node });\n\n const unregisterColumn = (column) => {\n delete columns.current[column.property];\n };\n\n const setActualColumnsSizesFixed = () => {\n const columnsArray = Object.values(columns.current);\n\n columnsArray.forEach((column) => {\n const columnOffsetWidth = column.node.offsetWidth;\n column.updateBodyHeaderWidth(\n `${columnOffsetWidth}px`,\n `${columnOffsetWidth}px`,\n );\n });\n };\n\n const updateMissingWidths = (totalWidth) => {\n if (totalWidth) {\n previousTotalWidth.current = totalWidth;\n }\n const gridWidth = previousTotalWidth.current - 4;\n const {\n props: { minColumnWidth, expandable },\n resizedColumns,\n decoratedColumns: columnDefinitions,\n } = instance.getInstance();\n if (!initialUsedSpace.current) return;\n const columnUuids = columnDefinitions.map((c) => c.uuid);\n const columnsArray = Object.values(columns.current).filter((c) =>\n columnUuids.includes(c.uuid),\n );\n // reset the initial space to the last columns\n initialUsedSpace.current = { space: 0, amount: 0, percentage: 0 };\n columnsArray.forEach((column) => {\n if (\n column.width &&\n column.width !== 'string' &&\n !initialUsedSpace[column.uuid]\n ) {\n increaseUsedSpace(\n getColumnWidthSize(column.width, minColumnWidth, column),\n column.uuid,\n );\n }\n });\n\n const nextColumnDict = {};\n // eslint-disable-next-line max-statements\n columnsArray.forEach((column) => {\n if (typeof column.width === 'number') {\n nextColumnDict[column.uuid] = column;\n return;\n }\n if (resizedColumns.current[column.uuid]) {\n nextColumnDict[column.uuid] = column;\n return;\n }\n const {\n space: usedSpace,\n amount: usedAmount,\n percentage: usedPercentage,\n } = initialUsedSpace.current;\n\n const percentValue = getPercentageValue(column.width);\n // check if is percentage value\n if (percentValue) {\n const pxs = (gridWidth * percentValue) / 100;\n const pxWidths = `${getColumnWidthSize(pxs, minColumnWidth, column)}px`;\n column.updateBodyHeaderWidth(pxWidths, pxWidths);\n columns.current[column.uuid].computedWidth = pxs;\n if (expandable && column.expandableColumn) {\n setExpandableColumnWidth(pxs);\n }\n } else {\n // otherwise the values are auto calculated from the total size\n const columnFixWidth =\n (gridWidth * (1 - usedPercentage / 100) - usedSpace) /\n (columnsArray.length - usedAmount);\n const percentWidth = (columnFixWidth / gridWidth) * 100;\n const pxs = (gridWidth * percentWidth) / 100;\n const actualWidthAfterChecks = getColumnWidthSize(\n pxs,\n minColumnWidth,\n column,\n );\n column.updateBodyHeaderWidth(\n `${actualWidthAfterChecks}px`,\n column.minWidth || minColumnWidth\n ? `${column.minWidth || minColumnWidth}px`\n : `${pxs}px`,\n );\n resizedColumns.current[column.uuid] = actualWidthAfterChecks;\n columns.current[column.uuid].computedWidth = actualWidthAfterChecks;\n }\n nextColumnDict[column.uuid] = column;\n });\n columns.current = nextColumnDict;\n };\n\n useLayoutEffect(() => {\n const totalWidth = computeColumnsTotalSize();\n setExpandableGridDetailWidth(totalWidth - expandableColumnWidth);\n }, [expandableColumnWidth]);\n\n // todo: make this incremental\n const computeColumnsTotalSize = () => {\n const columnsArray = Object.values(columns.current);\n return columnsArray.reduce(\n (totalSize, column) => totalSize + column.node.offsetWidth,\n 0,\n );\n };\n\n return {\n columns: columns.current,\n expandedToContentColumns: expandedToContentColumns.current,\n initialUsedSpace: initialUsedSpace.current,\n increaseUsedSpace,\n registerColumn,\n unregisterColumn,\n updateMissingWidths,\n computeColumnsTotalSize,\n setActualColumnsSizesFixed,\n expandableGridDetailWidth,\n expandableColumnWidth,\n };\n};\n\nexport default useColumnSizeService;\n"],
|
|
5
|
+
"mappings": "AAAA;ACCA;AACA;AAEO,MAAM,uBAAuB,CAAC,aAAa;AAChD,QAAM,UAAU,OAAO;AACvB,QAAM,CAAC,2BAA2B,gCAAgC,SAAS;AAC3E,QAAM,CAAC,uBAAuB,4BAA4B,SAAS;AACnE,QAAM,2BAA2B,OAAO;AACxC,QAAM,qBAAqB,OAAO;AAClC,QAAM,mBAAmB,OAAO;AAAA,IAC9B,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,YAAY;AAAA;AAGd,QAAM,oBAAoB,CAAC,OAAO,eAAe;AAC/C,QAAI,OAAO,UAAU,UAAU;AAC7B,uBAAiB,QAAQ,SAAS;AAAA,eACzB,SAAS,MAAM,SAAS,MAAM;AACvC,uBAAiB,QAAQ,cAAc,OAAO,MAAM,MAAM,GAAG;AAAA;AAE/D,qBAAiB,QAAQ,UAAU;AACnC,qBAAiB,QAAQ,cAAc;AAAA;AAIzC,QAAM,iBAAiB,CAAC,WAAW,CAAC,SACjC,QAAQ,QAAQ,OAAO,QAAQ,KAAK,QAAQ;AAE/C,QAAM,mBAAmB,CAAC,WAAW;AACnC,WAAO,QAAQ,QAAQ,OAAO;AAAA;AAGhC,QAAM,6BAA6B,MAAM;AACvC,UAAM,eAAe,OAAO,OAAO,QAAQ;AAE3C,iBAAa,QAAQ,CAAC,WAAW;AAC/B,YAAM,oBAAoB,OAAO,KAAK;AACtC,aAAO,sBACL,GAAG,uBACH,GAAG;AAAA;AAAA;AAKT,QAAM,sBAAsB,CAAC,eAAe;AAC1C,QAAI,YAAY;AACd,yBAAmB,UAAU;AAAA;AAE/B,UAAM,YAAY,mBAAmB,UAAU;AAC/C,UAAM;AAAA,MACJ,OAAO,EAAE,gBAAgB;AAAA,MACzB;AAAA,MACA,kBAAkB;AAAA,QAChB,SAAS;AACb,QAAI,CAAC,iBAAiB;AAAS;AAC/B,UAAM,cAAc,kBAAkB,IAAI,CAAC,MAAM,EAAE;AACnD,UAAM,eAAe,OAAO,OAAO,QAAQ,SAAS,OAAO,CAAC,MAC1D,YAAY,SAAS,EAAE;AAGzB,qBAAiB,UAAU,EAAE,OAAO,GAAG,QAAQ,GAAG,YAAY;AAC9D,iBAAa,QAAQ,CAAC,WAAW;AAC/B,UACE,OAAO,SACP,OAAO,UAAU,YACjB,CAAC,iBAAiB,OAAO,OACzB;AACA,0BACE,mBAAmB,OAAO,OAAO,gBAAgB,SACjD,OAAO;AAAA;AAAA;AAKb,UAAM,iBAAiB;AAEvB,iBAAa,QAAQ,CAAC,WAAW;AAC/B,UAAI,OAAO,OAAO,UAAU,UAAU;AACpC,uBAAe,OAAO,QAAQ;AAC9B;AAAA;AAEF,UAAI,eAAe,QAAQ,OAAO,OAAO;AACvC,uBAAe,OAAO,QAAQ;AAC9B;AAAA;AAEF,YAAM;AAAA,QACJ,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,YAAY;AAAA,UACV,iBAAiB;AAErB,YAAM,eAAe,mBAAmB,OAAO;AAE/C,UAAI,cAAc;AAChB,cAAM,MAAO,YAAY,eAAgB;AACzC,cAAM,WAAW,GAAG,mBAAmB,KAAK,gBAAgB;AAC5D,eAAO,sBAAsB,UAAU;AACvC,gBAAQ,QAAQ,OAAO,MAAM,gBAAgB;AAC7C,YAAI,cAAc,OAAO,kBAAkB;AACzC,mCAAyB;AAAA;AAAA,aAEtB;AAEL,cAAM,iBACH,aAAa,KAAI,iBAAiB,OAAO,aACzC,cAAa,SAAS;AACzB,cAAM,eAAgB,iBAAiB,YAAa;AACpD,cAAM,MAAO,YAAY,eAAgB;AACzC,cAAM,yBAAyB,mBAC7B,KACA,gBACA;AAEF,eAAO,sBACL,GAAG,4BACH,OAAO,YAAY,iBACf,GAAG,OAAO,YAAY,qBACtB,GAAG;AAET,uBAAe,QAAQ,OAAO,QAAQ;AACtC,gBAAQ,QAAQ,OAAO,MAAM,gBAAgB;AAAA;AAE/C,qBAAe,OAAO,QAAQ;AAAA;AAEhC,YAAQ,UAAU;AAAA;AAGpB,kBAAgB,MAAM;AACpB,UAAM,aAAa;AACnB,iCAA6B,aAAa;AAAA,KACzC,CAAC;AAGJ,QAAM,0BAA0B,MAAM;AACpC,UAAM,eAAe,OAAO,OAAO,QAAQ;AAC3C,WAAO,aAAa,OAClB,CAAC,WAAW,WAAW,YAAY,OAAO,KAAK,aAC/C;AAAA;AAIJ,SAAO;AAAA,IACL,SAAS,QAAQ;AAAA,IACjB,0BAA0B,yBAAyB;AAAA,IACnD,kBAAkB,iBAAiB;AAAA,IACnC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA;AAIJ,IAAO,+BAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|