@elliemae/ds-datagrids 1.61.0 → 2.0.0-alpha.12
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 +142 -424
- package/cjs/DataGridImpl.js +107 -202
- package/cjs/PaginatedDataGrid.js +46 -155
- package/cjs/blockNames.js +3 -4
- package/cjs/columns/IconColumn.js +40 -47
- package/cjs/columns/NumberColumn.js +0 -3
- package/cjs/components/BodyCell.js +65 -82
- package/cjs/components/BodyList.js +37 -25
- package/cjs/components/ColumnVisibilityMenuOption.js +27 -32
- package/cjs/components/ColumnsOptionsMenuSection.js +30 -30
- package/cjs/components/EmptyState.js +22 -39
- package/cjs/components/HeaderCell.js +49 -50
- package/cjs/components/List.js +20 -10
- package/cjs/components/ListItem.js +32 -19
- package/cjs/components/NoResults.js +34 -23
- package/cjs/components/RowsLoader.js +8 -9
- package/cjs/components/Table.js +71 -67
- package/cjs/components/TableBody.js +40 -34
- package/cjs/components/TableHeader.js +20 -14
- package/cjs/components/footer/addOptionalFooterComponents.js +36 -34
- package/cjs/components/header/PrimaryControls.js +17 -16
- package/cjs/components/header/addOptionalHeaderComponents.js +36 -34
- package/cjs/components/index.js +10 -21
- package/cjs/components/renderers/defaultClassedRenderers.js +24 -17
- package/cjs/components/renderers/index.js +17 -12
- package/cjs/components/renderers/renderRowsLoader.js +6 -9
- package/cjs/components/tableContext.js +1 -2
- package/cjs/defaultPlugins.js +5 -38
- package/cjs/index.js +54 -181
- package/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +116 -116
- package/cjs/plugins/body-header-scroll-sync/index.js +2 -10
- package/cjs/plugins/column-dnd/DndColumnsPlugin.js +59 -63
- package/cjs/plugins/column-dnd/decorateGridWithDndColumns.js +12 -12
- package/cjs/plugins/column-dnd/index.js +2 -11
- package/cjs/plugins/column-sizing/ColumnSizingPlugin.js +46 -53
- package/cjs/plugins/column-sizing/columnMeasurerTransformer.js +53 -43
- package/cjs/plugins/column-sizing/ext-points/decorateColumn.js +4 -7
- package/cjs/plugins/column-sizing/ext-points/getTableProps.js +25 -23
- package/cjs/plugins/column-sizing/getColumnNameFromProperty.js +2 -1
- package/cjs/plugins/column-sizing/index.js +2 -17
- package/cjs/plugins/column-sizing/useColumnSizeService.js +69 -83
- package/cjs/plugins/column-sizing/useStylesheetHelpers.js +145 -145
- package/cjs/plugins/column-sizing/utils.js +16 -16
- package/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js +4 -24
- package/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js +46 -58
- package/cjs/plugins/custom-cell-renderer/getRendererComponent.js +41 -34
- package/cjs/plugins/custom-cell-renderer/index.js +2 -22
- package/cjs/plugins/editable/EditableComponents/ComboBox.js +51 -74
- package/cjs/plugins/editable/EditableComponents/TextBox.js +85 -100
- package/cjs/plugins/editable/EditableComponents/index.js +4 -14
- package/cjs/plugins/editable/EditablePlugin.js +66 -78
- package/cjs/plugins/editable/decorateEditable.js +64 -66
- package/cjs/plugins/editable/getEditorComponent.js +36 -36
- package/cjs/plugins/editable/index.js +6 -26
- package/cjs/plugins/expandable-grid/ExpandableColumn.js +100 -89
- package/cjs/plugins/expandable-grid/ExpandablePlugin.js +142 -162
- package/cjs/plugins/expandable-grid/ExpandedRow.js +110 -126
- package/cjs/plugins/expandable-grid/ExpandedRowExtra.js +38 -29
- package/cjs/plugins/expandable-grid/index.js +4 -57
- package/cjs/plugins/expandable-grid/useExpandGridState.js +38 -48
- package/cjs/plugins/export-data/ExportDataPlugin.js +88 -91
- package/cjs/plugins/export-data/index.js +5 -10
- package/cjs/plugins/filterable/FilterablePlugin.js +51 -78
- package/cjs/plugins/filterable/addFilterToColumn.js +11 -35
- package/cjs/plugins/filterable/components/FilterableHeader.js +81 -114
- package/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +60 -103
- package/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +39 -75
- package/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +68 -113
- package/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js +68 -118
- package/cjs/plugins/filterable/components/filterable-menus/defaultDateFormat.js +1 -2
- package/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +9 -31
- package/cjs/plugins/filterable/filterableFormatter.js +36 -56
- package/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js +32 -33
- package/cjs/plugins/filterable/filtering-helper/strategiesOperators.js +13 -18
- package/cjs/plugins/filterable/helper.js +48 -53
- package/cjs/plugins/filterable/index.js +2 -42
- package/cjs/plugins/filterable/useFilterableState.js +44 -53
- package/cjs/plugins/grouping-by/GroupingByPlugin.js +21 -19
- package/cjs/plugins/grouping-grid/GroupingPlugin.js +83 -87
- package/cjs/plugins/grouping-grid/walkStrategy.js +19 -30
- package/cjs/plugins/index.js +41 -151
- package/cjs/plugins/infinite-scrolling/InfiniteScrollPlugin.js +53 -72
- package/cjs/plugins/infinite-scrolling/index.js +2 -10
- package/cjs/plugins/pagination/PaginationPlugin.js +70 -69
- package/cjs/plugins/pagination/components/Pagination.js +21 -27
- package/cjs/plugins/pagination/components/Paginator.js +33 -34
- package/cjs/plugins/pagination/components/PerPageDropdown.js +44 -31
- package/cjs/plugins/pagination/helper.js +15 -15
- package/cjs/plugins/pagination/index.js +2 -16
- package/cjs/plugins/pagination/usePaginationState.js +35 -44
- package/cjs/plugins/resizable/ResizablePlugin.js +45 -59
- package/cjs/plugins/resizable/decorateResizable.js +43 -36
- package/cjs/plugins/resizable/index.js +2 -10
- package/cjs/plugins/resizable/useResizeHandle.js +24 -22
- package/cjs/plugins/resizable/utils.js +12 -20
- package/cjs/plugins/row-dnd/DndRowsPlugin.js +51 -52
- package/cjs/plugins/row-dnd/index.js +2 -11
- package/cjs/plugins/selectable/SelectablePlugin.js +129 -120
- package/cjs/plugins/selectable/addSelectableColumn.js +47 -39
- package/cjs/plugins/selectable/helper.js +18 -28
- package/cjs/plugins/selectable/index.js +2 -17
- package/cjs/plugins/selectable/selectableFormatter.js +64 -53
- package/cjs/plugins/selectable/useSelectableState.js +66 -68
- package/cjs/plugins/sortable/SortablePlugin.js +50 -56
- package/cjs/plugins/sortable/checkIfSortable.js +4 -5
- package/cjs/plugins/sortable/index.js +2 -19
- package/cjs/plugins/sortable/sortHeaderFormatter.js +41 -36
- package/cjs/plugins/sortable/sortTree.js +16 -16
- package/cjs/plugins/sortable/sorter.js +82 -95
- package/cjs/plugins/sortable/useSortableState.js +40 -41
- package/cjs/plugins/toolbar/RowRenderer.js +43 -60
- package/cjs/plugins/toolbar/ToolbarPlugin.js +18 -29
- package/cjs/plugins/toolbar/ToolbarTrigger.js +39 -50
- package/cjs/plugins/toolbar/index.js +2 -19
- package/cjs/plugins/virtualization/AutoHeightList.js +31 -23
- package/cjs/plugins/virtualization/VirtualizationPlugin.js +80 -83
- package/cjs/plugins/virtualization/VirtualizedBody.js +136 -195
- package/cjs/plugins/virtualization/VirtualizedBodyRow.js +18 -13
- package/cjs/plugins/virtualization/helper.js +1 -2
- package/cjs/plugins/virtualization/index.js +2 -20
- package/cjs/renders/CellWithAddons.js +29 -75
- package/cjs/renders/index.js +4 -11
- package/cjs/renders/styled.js +7 -24
- package/cjs/rowSizes.js +3 -4
- package/cjs/utilities/getPluginsFromProps.js +33 -139
- package/cjs/utilities/getScrollbarSize.js +4 -5
- package/cjs/utilities/normalizeData.js +22 -22
- package/esm/DSDataGrid.js +140 -422
- package/esm/DataGridImpl.js +93 -186
- package/esm/PaginatedDataGrid.js +36 -145
- package/esm/blockNames.js +3 -4
- package/esm/columns/IconColumn.js +38 -45
- package/esm/columns/NumberColumn.js +0 -3
- package/esm/components/BodyCell.js +61 -75
- package/esm/components/BodyList.js +32 -21
- package/esm/components/ColumnVisibilityMenuOption.js +27 -28
- package/esm/components/ColumnsOptionsMenuSection.js +29 -28
- package/esm/components/EmptyState.js +21 -38
- package/esm/components/HeaderCell.js +47 -47
- package/esm/components/List.js +19 -9
- package/esm/components/ListItem.js +30 -16
- package/esm/components/NoResults.js +31 -19
- package/esm/components/RowsLoader.js +6 -7
- package/esm/components/Table.js +63 -58
- package/esm/components/TableBody.js +35 -28
- package/esm/components/TableHeader.js +19 -12
- package/esm/components/footer/addOptionalFooterComponents.js +34 -32
- package/esm/components/header/PrimaryControls.js +16 -15
- package/esm/components/header/addOptionalHeaderComponents.js +35 -32
- package/esm/components/index.js +0 -11
- package/esm/components/renderers/defaultClassedRenderers.js +24 -17
- package/esm/components/renderers/index.js +17 -8
- package/esm/components/renderers/renderRowsLoader.js +4 -7
- package/esm/components/tableContext.js +1 -2
- package/esm/defaultPlugins.js +1 -34
- package/esm/index.js +0 -127
- package/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +111 -111
- package/esm/plugins/body-header-scroll-sync/index.js +0 -8
- package/esm/plugins/column-dnd/DndColumnsPlugin.js +56 -59
- package/esm/plugins/column-dnd/decorateGridWithDndColumns.js +11 -11
- package/esm/plugins/column-dnd/index.js +0 -9
- package/esm/plugins/column-sizing/ColumnSizingPlugin.js +40 -47
- package/esm/plugins/column-sizing/columnMeasurerTransformer.js +52 -42
- package/esm/plugins/column-sizing/ext-points/decorateColumn.js +2 -5
- package/esm/plugins/column-sizing/ext-points/getTableProps.js +22 -19
- package/esm/plugins/column-sizing/getColumnNameFromProperty.js +2 -1
- package/esm/plugins/column-sizing/index.js +0 -15
- package/esm/plugins/column-sizing/useColumnSizeService.js +66 -79
- package/esm/plugins/column-sizing/useStylesheetHelpers.js +141 -136
- package/esm/plugins/column-sizing/utils.js +16 -16
- package/esm/plugins/custom-cell-renderer/CustomRendererPlugin.js +3 -23
- package/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js +46 -58
- package/esm/plugins/custom-cell-renderer/getRendererComponent.js +42 -34
- package/esm/plugins/custom-cell-renderer/index.js +0 -20
- package/esm/plugins/editable/EditableComponents/ComboBox.js +51 -67
- package/esm/plugins/editable/EditableComponents/TextBox.js +84 -93
- package/esm/plugins/editable/EditableComponents/index.js +0 -10
- package/esm/plugins/editable/EditablePlugin.js +64 -75
- package/esm/plugins/editable/decorateEditable.js +56 -56
- package/esm/plugins/editable/getEditorComponent.js +30 -29
- package/esm/plugins/editable/index.js +0 -20
- package/esm/plugins/expandable-grid/ExpandableColumn.js +99 -88
- package/esm/plugins/expandable-grid/ExpandablePlugin.js +137 -156
- package/esm/plugins/expandable-grid/ExpandedRow.js +101 -117
- package/esm/plugins/expandable-grid/ExpandedRowExtra.js +36 -27
- package/esm/plugins/expandable-grid/index.js +0 -53
- package/esm/plugins/expandable-grid/useExpandGridState.js +38 -44
- package/esm/plugins/export-data/ExportDataPlugin.js +87 -89
- package/esm/plugins/export-data/index.js +0 -5
- package/esm/plugins/filterable/FilterablePlugin.js +46 -73
- package/esm/plugins/filterable/addFilterToColumn.js +8 -32
- package/esm/plugins/filterable/components/FilterableHeader.js +79 -110
- package/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +59 -100
- package/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +37 -71
- package/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +67 -110
- package/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js +66 -113
- package/esm/plugins/filterable/components/filterable-menus/defaultDateFormat.js +1 -2
- package/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +1 -23
- package/esm/plugins/filterable/filterableFormatter.js +33 -53
- package/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js +29 -30
- package/esm/plugins/filterable/filtering-helper/strategiesOperators.js +13 -18
- package/esm/plugins/filterable/helper.js +47 -51
- package/esm/plugins/filterable/index.js +0 -40
- package/esm/plugins/filterable/useFilterableState.js +41 -49
- package/esm/plugins/grouping-by/GroupingByPlugin.js +21 -19
- package/esm/plugins/grouping-grid/GroupingPlugin.js +80 -84
- package/esm/plugins/grouping-grid/walkStrategy.js +19 -26
- package/esm/plugins/index.js +0 -110
- package/esm/plugins/infinite-scrolling/InfiniteScrollPlugin.js +53 -69
- package/esm/plugins/infinite-scrolling/index.js +0 -8
- package/esm/plugins/pagination/PaginationPlugin.js +60 -59
- package/esm/plugins/pagination/components/Pagination.js +18 -24
- package/esm/plugins/pagination/components/Paginator.js +30 -31
- package/esm/plugins/pagination/components/PerPageDropdown.js +41 -29
- package/esm/plugins/pagination/helper.js +14 -14
- package/esm/plugins/pagination/index.js +0 -14
- package/esm/plugins/pagination/usePaginationState.js +33 -41
- package/esm/plugins/resizable/ResizablePlugin.js +43 -57
- package/esm/plugins/resizable/decorateResizable.js +37 -31
- package/esm/plugins/resizable/index.js +0 -8
- package/esm/plugins/resizable/useResizeHandle.js +26 -24
- package/esm/plugins/resizable/utils.js +11 -19
- package/esm/plugins/row-dnd/DndRowsPlugin.js +50 -50
- package/esm/plugins/row-dnd/index.js +0 -9
- package/esm/plugins/selectable/SelectablePlugin.js +123 -111
- package/esm/plugins/selectable/addSelectableColumn.js +43 -35
- package/esm/plugins/selectable/helper.js +17 -27
- package/esm/plugins/selectable/index.js +0 -15
- package/esm/plugins/selectable/selectableFormatter.js +62 -52
- package/esm/plugins/selectable/useSelectableState.js +60 -61
- package/esm/plugins/sortable/SortablePlugin.js +42 -46
- package/esm/plugins/sortable/checkIfSortable.js +3 -4
- package/esm/plugins/sortable/index.js +0 -17
- package/esm/plugins/sortable/sortHeaderFormatter.js +40 -36
- package/esm/plugins/sortable/sortTree.js +13 -11
- package/esm/plugins/sortable/sorter.js +79 -91
- package/esm/plugins/sortable/useSortableState.js +34 -33
- package/esm/plugins/toolbar/RowRenderer.js +41 -55
- package/esm/plugins/toolbar/ToolbarPlugin.js +15 -25
- package/esm/plugins/toolbar/ToolbarTrigger.js +37 -47
- package/esm/plugins/toolbar/index.js +0 -17
- package/esm/plugins/virtualization/AutoHeightList.js +27 -18
- package/esm/plugins/virtualization/VirtualizationPlugin.js +78 -80
- package/esm/plugins/virtualization/VirtualizedBody.js +131 -187
- package/esm/plugins/virtualization/VirtualizedBodyRow.js +18 -13
- package/esm/plugins/virtualization/helper.js +1 -2
- package/esm/plugins/virtualization/index.js +0 -18
- package/esm/renders/CellWithAddons.js +27 -72
- package/esm/renders/index.js +0 -7
- package/esm/renders/styled.js +7 -24
- package/esm/rowSizes.js +3 -4
- package/esm/utilities/getPluginsFromProps.js +7 -113
- package/esm/utilities/getScrollbarSize.js +4 -5
- package/esm/utilities/normalizeData.js +21 -21
- package/package.json +555 -26
- package/types/DSDataGrid.d.ts +977 -0
- package/types/DataGridImpl.d.ts +12 -0
- package/types/PaginatedDataGrid.d.ts +16 -0
- package/types/blockNames.d.ts +4 -0
- package/types/columns/IconColumn.d.ts +35 -0
- package/types/columns/NumberColumn.d.ts +4 -0
- package/types/components/BodyCell.d.ts +33 -0
- package/types/components/BodyList.d.ts +12 -0
- package/types/components/ColumnVisibilityMenuOption.d.ts +15 -0
- package/types/components/ColumnsOptionsMenuSection.d.ts +8 -0
- package/types/components/EmptyState.d.ts +7 -0
- package/types/components/HeaderCell.d.ts +19 -0
- package/types/components/List.d.ts +3 -0
- package/types/components/ListItem.d.ts +3 -0
- package/types/components/NoResults.d.ts +8 -0
- package/types/components/RowsLoader.d.ts +5 -0
- package/types/components/Table.d.ts +13 -0
- package/types/components/TableBody.d.ts +9 -0
- package/types/components/TableHeader.d.ts +3 -0
- package/types/components/footer/addOptionalFooterComponents.d.ts +6 -0
- package/types/components/header/PrimaryControls.d.ts +5 -0
- package/types/components/header/addOptionalHeaderComponents.d.ts +11 -0
- package/types/components/index.d.ts +5 -0
- package/types/components/renderers/defaultClassedRenderers.d.ts +11 -0
- package/types/components/renderers/index.d.ts +15 -0
- package/types/components/renderers/renderRowsLoader.d.ts +2 -0
- package/types/components/tableContext.d.ts +2 -0
- package/types/components/tests/ColumnVisibilityMenu.test.d.ts +1 -0
- package/types/defaultPlugins.d.ts +1 -0
- package/types/index.d.ts +10 -0
- package/types/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.d.ts +1 -0
- package/types/plugins/body-header-scroll-sync/index.d.ts +1 -0
- package/types/plugins/column-dnd/DndColumnsPlugin.d.ts +1 -0
- package/types/plugins/column-dnd/decorateGridWithDndColumns.d.ts +2 -0
- package/types/plugins/column-dnd/index.d.ts +1 -0
- package/types/plugins/column-sizing/ColumnSizingPlugin.d.ts +1 -0
- package/types/plugins/column-sizing/columnMeasurerTransformer.d.ts +6 -0
- package/types/plugins/column-sizing/ext-points/decorateColumn.d.ts +1 -0
- package/types/plugins/column-sizing/ext-points/getTableProps.d.ts +10 -0
- package/types/plugins/column-sizing/getColumnNameFromProperty.d.ts +1 -0
- package/types/plugins/column-sizing/index.d.ts +1 -0
- package/types/plugins/column-sizing/useColumnSizeService.d.ts +17 -0
- package/types/plugins/column-sizing/useStylesheetHelpers.d.ts +22 -0
- package/types/plugins/column-sizing/utils.d.ts +5 -0
- package/types/plugins/custom-cell-renderer/CustomRendererPlugin.d.ts +1 -0
- package/types/plugins/custom-cell-renderer/addCustomRendererToCell.d.ts +3 -0
- package/types/plugins/custom-cell-renderer/getRendererComponent.d.ts +11 -0
- package/types/plugins/custom-cell-renderer/index.d.ts +1 -0
- package/types/plugins/editable/EditableComponents/ComboBox.d.ts +10 -0
- package/types/plugins/editable/EditableComponents/TextBox.d.ts +22 -0
- package/types/plugins/editable/EditableComponents/index.d.ts +2 -0
- package/types/plugins/editable/EditablePlugin.d.ts +1 -0
- package/types/plugins/editable/decorateEditable.d.ts +7 -0
- package/types/plugins/editable/getEditorComponent.d.ts +6 -0
- package/types/plugins/editable/index.d.ts +2 -0
- package/types/plugins/expandable-grid/ExpandableColumn.d.ts +28 -0
- package/types/plugins/expandable-grid/ExpandablePlugin.d.ts +1 -0
- package/types/plugins/expandable-grid/ExpandedRow.d.ts +11 -0
- package/types/plugins/expandable-grid/ExpandedRowExtra.d.ts +9 -0
- package/types/plugins/expandable-grid/index.d.ts +2 -0
- package/types/plugins/expandable-grid/tests/ExpandablePlugin.test.d.ts +1 -0
- package/types/plugins/expandable-grid/useExpandGridState.d.ts +14 -0
- package/types/plugins/export-data/ExportDataPlugin.d.ts +4 -0
- package/types/plugins/export-data/index.d.ts +1 -0
- package/types/plugins/filterable/FilterablePlugin.d.ts +1 -0
- package/types/plugins/filterable/addFilterToColumn.d.ts +1 -0
- package/types/plugins/filterable/components/FilterableHeader.d.ts +29 -0
- package/types/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.d.ts +30 -0
- package/types/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.d.ts +27 -0
- package/types/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.d.ts +30 -0
- package/types/plugins/filterable/components/filterable-menus/TextFilterMenu.d.ts +35 -0
- package/types/plugins/filterable/components/filterable-menus/defaultDateFormat.d.ts +1 -0
- package/types/plugins/filterable/components/filterable-menus/getFilterMenuByType.d.ts +1 -0
- package/types/plugins/filterable/filterableFormatter.d.ts +11 -0
- package/types/plugins/filterable/filtering-helper/filterRowsByQuery.d.ts +2 -0
- package/types/plugins/filterable/filtering-helper/strategiesOperators.d.ts +2 -0
- package/types/plugins/filterable/helper.d.ts +22 -0
- package/types/plugins/filterable/index.d.ts +1 -0
- package/types/plugins/filterable/useFilterableState.d.ts +18 -0
- package/types/plugins/grouping-by/GroupingByPlugin.d.ts +1 -0
- package/types/plugins/grouping-grid/GroupingPlugin.d.ts +1 -0
- package/types/plugins/grouping-grid/walkStrategy.d.ts +9 -0
- package/types/plugins/index.d.ts +16 -0
- package/types/plugins/infinite-scrolling/InfiniteScrollPlugin.d.ts +1 -0
- package/types/plugins/infinite-scrolling/index.d.ts +1 -0
- package/types/plugins/pagination/PaginationPlugin.d.ts +1 -0
- package/types/plugins/pagination/components/Pagination.d.ts +11 -0
- package/types/plugins/pagination/components/Paginator.d.ts +9 -0
- package/types/plugins/pagination/components/PerPageDropdown.d.ts +9 -0
- package/types/plugins/pagination/helper.d.ts +17 -0
- package/types/plugins/pagination/index.d.ts +1 -0
- package/types/plugins/pagination/usePaginationState.d.ts +9 -0
- package/types/plugins/resizable/ResizablePlugin.d.ts +1 -0
- package/types/plugins/resizable/decorateResizable.d.ts +4 -0
- package/types/plugins/resizable/index.d.ts +1 -0
- package/types/plugins/resizable/useResizeHandle.d.ts +13 -0
- package/types/plugins/resizable/utils.d.ts +3 -0
- package/types/plugins/row-dnd/DndRowsPlugin.d.ts +1 -0
- package/types/plugins/row-dnd/index.d.ts +1 -0
- package/types/plugins/selectable/SelectablePlugin.d.ts +1 -0
- package/types/plugins/selectable/addSelectableColumn.d.ts +30 -0
- package/types/plugins/selectable/helper.d.ts +5 -0
- package/types/plugins/selectable/index.d.ts +1 -0
- package/types/plugins/selectable/selectableFormatter.d.ts +9 -0
- package/types/plugins/selectable/useSelectableState.d.ts +9 -0
- package/types/plugins/sortable/SortablePlugin.d.ts +1 -0
- package/types/plugins/sortable/checkIfSortable.d.ts +2 -0
- package/types/plugins/sortable/index.d.ts +1 -0
- package/types/plugins/sortable/sortHeaderFormatter.d.ts +6 -0
- package/types/plugins/sortable/sortTree.d.ts +2 -0
- package/types/plugins/sortable/sorter.d.ts +12 -0
- package/types/plugins/sortable/useSortableState.d.ts +8 -0
- package/types/plugins/toolbar/RowRenderer.d.ts +11 -0
- package/types/plugins/toolbar/ToolbarPlugin.d.ts +1 -0
- package/types/plugins/toolbar/ToolbarTrigger.d.ts +8 -0
- package/types/plugins/toolbar/index.d.ts +1 -0
- package/types/plugins/virtualization/AutoHeightList.d.ts +3 -0
- package/types/plugins/virtualization/VirtualizationPlugin.d.ts +1 -0
- package/types/plugins/virtualization/VirtualizedBody.d.ts +32 -0
- package/types/plugins/virtualization/VirtualizedBodyRow.d.ts +8 -0
- package/types/plugins/virtualization/helper.d.ts +1 -0
- package/types/plugins/virtualization/index.d.ts +1 -0
- package/types/renders/CellWithAddons.d.ts +52 -0
- package/types/renders/index.d.ts +2 -0
- package/types/renders/styled.d.ts +3 -0
- package/types/rowSizes.d.ts +11 -0
- package/types/stories/datagrids-export.stories.d.ts +1 -0
- package/types/stories/datagrids-selectable-multi.stories.d.ts +1 -0
- package/types/tests/DataGrid-Columns.test.d.ts +1 -0
- package/types/tests/DataGrid-Editable.test.d.ts +1 -0
- package/types/tests/DataGrid-Export.test.d.ts +1 -0
- package/types/tests/DataGrid-Filter-helper.test.d.ts +1 -0
- package/types/tests/DataGrid-Filterable-Dates.test.d.ts +1 -0
- package/types/tests/DataGrid-Filterable-State.test.d.ts +1 -0
- package/types/tests/DataGrid-RowDnd.test.d.ts +1 -0
- package/types/tests/DataGrid-Selectable.test.d.ts +1 -0
- package/types/tests/DataGrid-Sortable.test.d.ts +1 -0
- package/types/tests/DataGrid-Toolbar.test.d.ts +1 -0
- package/types/tests/DataGrid-Virtualization.test.d.ts +1 -0
- package/types/tests/DataGrids-ColumnSizing.test.d.ts +1 -0
- package/types/tests/DataGrids-ConditionalPagination.test.d.ts +1 -0
- package/types/tests/DataGrids-Rows.test.d.ts +1 -0
- package/types/tests/DataGrids.test.d.ts +1 -0
- package/types/utilities/getPluginsFromProps.d.ts +1 -0
- package/types/utilities/getScrollbarSize.d.ts +1 -0
- package/types/utilities/normalizeData.d.ts +3 -0
- package/DSDataGrid/package.json +0 -10
- package/DataGridImpl/package.json +0 -10
- package/PaginatedDataGrid/package.json +0 -10
- package/blockNames/package.json +0 -10
- package/cjs/DSDataGrid.js.map +0 -1
- package/cjs/DataGridImpl.js.map +0 -1
- package/cjs/PaginatedDataGrid.js.map +0 -1
- package/cjs/blockNames.js.map +0 -1
- package/cjs/columns/IconColumn.js.map +0 -1
- package/cjs/columns/NumberColumn.js.map +0 -1
- package/cjs/components/BodyCell.js.map +0 -1
- package/cjs/components/BodyList.js.map +0 -1
- package/cjs/components/ColumnVisibilityMenuOption.js.map +0 -1
- package/cjs/components/ColumnsOptionsMenuSection.js.map +0 -1
- package/cjs/components/EmptyState.js.map +0 -1
- package/cjs/components/HeaderCell.js.map +0 -1
- package/cjs/components/List.js.map +0 -1
- package/cjs/components/ListItem.js.map +0 -1
- package/cjs/components/NoResults.js.map +0 -1
- package/cjs/components/RowsLoader.js.map +0 -1
- package/cjs/components/Table.js.map +0 -1
- package/cjs/components/TableBody.js.map +0 -1
- package/cjs/components/TableHeader.js.map +0 -1
- package/cjs/components/footer/addOptionalFooterComponents.js.map +0 -1
- package/cjs/components/header/PrimaryControls.js.map +0 -1
- package/cjs/components/header/addOptionalHeaderComponents.js.map +0 -1
- package/cjs/components/index.js.map +0 -1
- package/cjs/components/renderers/defaultClassedRenderers.js.map +0 -1
- package/cjs/components/renderers/index.js.map +0 -1
- package/cjs/components/renderers/renderRowsLoader.js.map +0 -1
- package/cjs/components/tableContext.js.map +0 -1
- package/cjs/defaultPlugins.js.map +0 -1
- package/cjs/index-0be12eb8.js +0 -28
- package/cjs/index-0be12eb8.js.map +0 -1
- package/cjs/index.js.map +0 -1
- package/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js.map +0 -1
- package/cjs/plugins/body-header-scroll-sync/index.js.map +0 -1
- package/cjs/plugins/column-dnd/DndColumnsPlugin.js.map +0 -1
- package/cjs/plugins/column-dnd/decorateGridWithDndColumns.js.map +0 -1
- package/cjs/plugins/column-dnd/index.js.map +0 -1
- package/cjs/plugins/column-sizing/ColumnSizingPlugin.js.map +0 -1
- package/cjs/plugins/column-sizing/columnMeasurerTransformer.js.map +0 -1
- package/cjs/plugins/column-sizing/ext-points/decorateColumn.js.map +0 -1
- package/cjs/plugins/column-sizing/ext-points/getTableProps.js.map +0 -1
- package/cjs/plugins/column-sizing/getColumnNameFromProperty.js.map +0 -1
- package/cjs/plugins/column-sizing/index.js.map +0 -1
- package/cjs/plugins/column-sizing/useColumnSizeService.js.map +0 -1
- package/cjs/plugins/column-sizing/useStylesheetHelpers.js.map +0 -1
- package/cjs/plugins/column-sizing/utils.js.map +0 -1
- package/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js.map +0 -1
- package/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js.map +0 -1
- package/cjs/plugins/custom-cell-renderer/getRendererComponent.js.map +0 -1
- package/cjs/plugins/custom-cell-renderer/index.js.map +0 -1
- package/cjs/plugins/editable/EditableComponents/ComboBox.js.map +0 -1
- package/cjs/plugins/editable/EditableComponents/TextBox.js.map +0 -1
- package/cjs/plugins/editable/EditableComponents/index.js.map +0 -1
- package/cjs/plugins/editable/EditablePlugin.js.map +0 -1
- package/cjs/plugins/editable/decorateEditable.js.map +0 -1
- package/cjs/plugins/editable/getEditorComponent.js.map +0 -1
- package/cjs/plugins/editable/index.js.map +0 -1
- package/cjs/plugins/expandable-grid/ExpandableColumn.js.map +0 -1
- package/cjs/plugins/expandable-grid/ExpandablePlugin.js.map +0 -1
- package/cjs/plugins/expandable-grid/ExpandedRow.js.map +0 -1
- package/cjs/plugins/expandable-grid/ExpandedRowExtra.js.map +0 -1
- package/cjs/plugins/expandable-grid/index.js.map +0 -1
- package/cjs/plugins/expandable-grid/useExpandGridState.js.map +0 -1
- package/cjs/plugins/export-data/ExportDataPlugin.js.map +0 -1
- package/cjs/plugins/export-data/index.js.map +0 -1
- package/cjs/plugins/filterable/FilterablePlugin.js.map +0 -1
- package/cjs/plugins/filterable/addFilterToColumn.js.map +0 -1
- package/cjs/plugins/filterable/components/FilterableHeader.js.map +0 -1
- package/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +0 -1
- package/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +0 -1
- package/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js.map +0 -1
- package/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js.map +0 -1
- package/cjs/plugins/filterable/components/filterable-menus/defaultDateFormat.js.map +0 -1
- package/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +0 -1
- package/cjs/plugins/filterable/filterableFormatter.js.map +0 -1
- package/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js.map +0 -1
- package/cjs/plugins/filterable/filtering-helper/strategiesOperators.js.map +0 -1
- package/cjs/plugins/filterable/helper.js.map +0 -1
- package/cjs/plugins/filterable/index.js.map +0 -1
- package/cjs/plugins/filterable/useFilterableState.js.map +0 -1
- package/cjs/plugins/grouping-by/GroupingByPlugin.js.map +0 -1
- package/cjs/plugins/grouping-grid/GroupingPlugin.js.map +0 -1
- package/cjs/plugins/grouping-grid/walkStrategy.js.map +0 -1
- package/cjs/plugins/index.js.map +0 -1
- package/cjs/plugins/infinite-scrolling/InfiniteScrollPlugin.js.map +0 -1
- package/cjs/plugins/infinite-scrolling/index.js.map +0 -1
- package/cjs/plugins/pagination/PaginationPlugin.js.map +0 -1
- package/cjs/plugins/pagination/components/Pagination.js.map +0 -1
- package/cjs/plugins/pagination/components/Paginator.js.map +0 -1
- package/cjs/plugins/pagination/components/PerPageDropdown.js.map +0 -1
- package/cjs/plugins/pagination/helper.js.map +0 -1
- package/cjs/plugins/pagination/index.js.map +0 -1
- package/cjs/plugins/pagination/usePaginationState.js.map +0 -1
- package/cjs/plugins/resizable/ResizablePlugin.js.map +0 -1
- package/cjs/plugins/resizable/decorateResizable.js.map +0 -1
- package/cjs/plugins/resizable/index.js.map +0 -1
- package/cjs/plugins/resizable/useResizeHandle.js.map +0 -1
- package/cjs/plugins/resizable/utils.js.map +0 -1
- package/cjs/plugins/row-dnd/DndRowsPlugin.js.map +0 -1
- package/cjs/plugins/row-dnd/index.js.map +0 -1
- package/cjs/plugins/selectable/SelectablePlugin.js.map +0 -1
- package/cjs/plugins/selectable/addSelectableColumn.js.map +0 -1
- package/cjs/plugins/selectable/helper.js.map +0 -1
- package/cjs/plugins/selectable/index.js.map +0 -1
- package/cjs/plugins/selectable/selectableFormatter.js.map +0 -1
- package/cjs/plugins/selectable/useSelectableState.js.map +0 -1
- package/cjs/plugins/sortable/SortablePlugin.js.map +0 -1
- package/cjs/plugins/sortable/checkIfSortable.js.map +0 -1
- package/cjs/plugins/sortable/index.js.map +0 -1
- package/cjs/plugins/sortable/sortHeaderFormatter.js.map +0 -1
- package/cjs/plugins/sortable/sortTree.js.map +0 -1
- package/cjs/plugins/sortable/sorter.js.map +0 -1
- package/cjs/plugins/sortable/useSortableState.js.map +0 -1
- package/cjs/plugins/toolbar/RowRenderer.js.map +0 -1
- package/cjs/plugins/toolbar/ToolbarPlugin.js.map +0 -1
- package/cjs/plugins/toolbar/ToolbarTrigger.js.map +0 -1
- package/cjs/plugins/toolbar/index.js.map +0 -1
- package/cjs/plugins/virtualization/AutoHeightList.js.map +0 -1
- package/cjs/plugins/virtualization/VirtualizationPlugin.js.map +0 -1
- package/cjs/plugins/virtualization/VirtualizedBody.js.map +0 -1
- package/cjs/plugins/virtualization/VirtualizedBodyRow.js.map +0 -1
- package/cjs/plugins/virtualization/helper.js.map +0 -1
- package/cjs/plugins/virtualization/index.js.map +0 -1
- package/cjs/renders/CellWithAddons.js.map +0 -1
- package/cjs/renders/index.js.map +0 -1
- package/cjs/renders/styled.js.map +0 -1
- package/cjs/rowSizes.js.map +0 -1
- package/cjs/utilities/getPluginsFromProps.js.map +0 -1
- package/cjs/utilities/getScrollbarSize.js.map +0 -1
- package/cjs/utilities/normalizeData.js.map +0 -1
- package/columns/IconColumn/package.json +0 -10
- package/columns/NumberColumn/package.json +0 -10
- package/components/BodyCell/package.json +0 -10
- package/components/BodyList/package.json +0 -10
- package/components/ColumnVisibilityMenuOption/package.json +0 -10
- package/components/ColumnsOptionsMenuSection/package.json +0 -10
- package/components/EmptyState/package.json +0 -10
- package/components/HeaderCell/package.json +0 -10
- package/components/List/package.json +0 -10
- package/components/ListItem/package.json +0 -10
- package/components/NoResults/package.json +0 -10
- package/components/RowsLoader/package.json +0 -10
- package/components/Table/package.json +0 -10
- package/components/TableBody/package.json +0 -10
- package/components/TableHeader/package.json +0 -10
- package/components/footer/addOptionalFooterComponents/package.json +0 -10
- package/components/header/PrimaryControls/package.json +0 -10
- package/components/header/addOptionalHeaderComponents/package.json +0 -10
- package/components/package.json +0 -10
- package/components/renderers/defaultClassedRenderers/package.json +0 -10
- package/components/renderers/package.json +0 -10
- package/components/renderers/renderRowsLoader/package.json +0 -10
- package/components/tableContext/package.json +0 -10
- package/defaultPlugins/package.json +0 -10
- package/esm/DSDataGrid.js.map +0 -1
- package/esm/DataGridImpl.js.map +0 -1
- package/esm/PaginatedDataGrid.js.map +0 -1
- package/esm/blockNames.js.map +0 -1
- package/esm/columns/IconColumn.js.map +0 -1
- package/esm/columns/NumberColumn.js.map +0 -1
- package/esm/components/BodyCell.js.map +0 -1
- package/esm/components/BodyList.js.map +0 -1
- package/esm/components/ColumnVisibilityMenuOption.js.map +0 -1
- package/esm/components/ColumnsOptionsMenuSection.js.map +0 -1
- package/esm/components/EmptyState.js.map +0 -1
- package/esm/components/HeaderCell.js.map +0 -1
- package/esm/components/List.js.map +0 -1
- package/esm/components/ListItem.js.map +0 -1
- package/esm/components/NoResults.js.map +0 -1
- package/esm/components/RowsLoader.js.map +0 -1
- package/esm/components/Table.js.map +0 -1
- package/esm/components/TableBody.js.map +0 -1
- package/esm/components/TableHeader.js.map +0 -1
- package/esm/components/footer/addOptionalFooterComponents.js.map +0 -1
- package/esm/components/header/PrimaryControls.js.map +0 -1
- package/esm/components/header/addOptionalHeaderComponents.js.map +0 -1
- package/esm/components/index.js.map +0 -1
- package/esm/components/renderers/defaultClassedRenderers.js.map +0 -1
- package/esm/components/renderers/index.js.map +0 -1
- package/esm/components/renderers/renderRowsLoader.js.map +0 -1
- package/esm/components/tableContext.js.map +0 -1
- package/esm/defaultPlugins.js.map +0 -1
- package/esm/index-afbbe9c8.js +0 -25
- package/esm/index-afbbe9c8.js.map +0 -1
- package/esm/index.js.map +0 -1
- package/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js.map +0 -1
- package/esm/plugins/body-header-scroll-sync/index.js.map +0 -1
- package/esm/plugins/column-dnd/DndColumnsPlugin.js.map +0 -1
- package/esm/plugins/column-dnd/decorateGridWithDndColumns.js.map +0 -1
- package/esm/plugins/column-dnd/index.js.map +0 -1
- package/esm/plugins/column-sizing/ColumnSizingPlugin.js.map +0 -1
- package/esm/plugins/column-sizing/columnMeasurerTransformer.js.map +0 -1
- package/esm/plugins/column-sizing/ext-points/decorateColumn.js.map +0 -1
- package/esm/plugins/column-sizing/ext-points/getTableProps.js.map +0 -1
- package/esm/plugins/column-sizing/getColumnNameFromProperty.js.map +0 -1
- package/esm/plugins/column-sizing/index.js.map +0 -1
- package/esm/plugins/column-sizing/useColumnSizeService.js.map +0 -1
- package/esm/plugins/column-sizing/useStylesheetHelpers.js.map +0 -1
- package/esm/plugins/column-sizing/utils.js.map +0 -1
- package/esm/plugins/custom-cell-renderer/CustomRendererPlugin.js.map +0 -1
- package/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js.map +0 -1
- package/esm/plugins/custom-cell-renderer/getRendererComponent.js.map +0 -1
- package/esm/plugins/custom-cell-renderer/index.js.map +0 -1
- package/esm/plugins/editable/EditableComponents/ComboBox.js.map +0 -1
- package/esm/plugins/editable/EditableComponents/TextBox.js.map +0 -1
- package/esm/plugins/editable/EditableComponents/index.js.map +0 -1
- package/esm/plugins/editable/EditablePlugin.js.map +0 -1
- package/esm/plugins/editable/decorateEditable.js.map +0 -1
- package/esm/plugins/editable/getEditorComponent.js.map +0 -1
- package/esm/plugins/editable/index.js.map +0 -1
- package/esm/plugins/expandable-grid/ExpandableColumn.js.map +0 -1
- package/esm/plugins/expandable-grid/ExpandablePlugin.js.map +0 -1
- package/esm/plugins/expandable-grid/ExpandedRow.js.map +0 -1
- package/esm/plugins/expandable-grid/ExpandedRowExtra.js.map +0 -1
- package/esm/plugins/expandable-grid/index.js.map +0 -1
- package/esm/plugins/expandable-grid/useExpandGridState.js.map +0 -1
- package/esm/plugins/export-data/ExportDataPlugin.js.map +0 -1
- package/esm/plugins/export-data/index.js.map +0 -1
- package/esm/plugins/filterable/FilterablePlugin.js.map +0 -1
- package/esm/plugins/filterable/addFilterToColumn.js.map +0 -1
- package/esm/plugins/filterable/components/FilterableHeader.js.map +0 -1
- package/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +0 -1
- package/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +0 -1
- package/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js.map +0 -1
- package/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js.map +0 -1
- package/esm/plugins/filterable/components/filterable-menus/defaultDateFormat.js.map +0 -1
- package/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +0 -1
- package/esm/plugins/filterable/filterableFormatter.js.map +0 -1
- package/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js.map +0 -1
- package/esm/plugins/filterable/filtering-helper/strategiesOperators.js.map +0 -1
- package/esm/plugins/filterable/helper.js.map +0 -1
- package/esm/plugins/filterable/index.js.map +0 -1
- package/esm/plugins/filterable/useFilterableState.js.map +0 -1
- package/esm/plugins/grouping-by/GroupingByPlugin.js.map +0 -1
- package/esm/plugins/grouping-grid/GroupingPlugin.js.map +0 -1
- package/esm/plugins/grouping-grid/walkStrategy.js.map +0 -1
- package/esm/plugins/index.js.map +0 -1
- package/esm/plugins/infinite-scrolling/InfiniteScrollPlugin.js.map +0 -1
- package/esm/plugins/infinite-scrolling/index.js.map +0 -1
- package/esm/plugins/pagination/PaginationPlugin.js.map +0 -1
- package/esm/plugins/pagination/components/Pagination.js.map +0 -1
- package/esm/plugins/pagination/components/Paginator.js.map +0 -1
- package/esm/plugins/pagination/components/PerPageDropdown.js.map +0 -1
- package/esm/plugins/pagination/helper.js.map +0 -1
- package/esm/plugins/pagination/index.js.map +0 -1
- package/esm/plugins/pagination/usePaginationState.js.map +0 -1
- package/esm/plugins/resizable/ResizablePlugin.js.map +0 -1
- package/esm/plugins/resizable/decorateResizable.js.map +0 -1
- package/esm/plugins/resizable/index.js.map +0 -1
- package/esm/plugins/resizable/useResizeHandle.js.map +0 -1
- package/esm/plugins/resizable/utils.js.map +0 -1
- package/esm/plugins/row-dnd/DndRowsPlugin.js.map +0 -1
- package/esm/plugins/row-dnd/index.js.map +0 -1
- package/esm/plugins/selectable/SelectablePlugin.js.map +0 -1
- package/esm/plugins/selectable/addSelectableColumn.js.map +0 -1
- package/esm/plugins/selectable/helper.js.map +0 -1
- package/esm/plugins/selectable/index.js.map +0 -1
- package/esm/plugins/selectable/selectableFormatter.js.map +0 -1
- package/esm/plugins/selectable/useSelectableState.js.map +0 -1
- package/esm/plugins/sortable/SortablePlugin.js.map +0 -1
- package/esm/plugins/sortable/checkIfSortable.js.map +0 -1
- package/esm/plugins/sortable/index.js.map +0 -1
- package/esm/plugins/sortable/sortHeaderFormatter.js.map +0 -1
- package/esm/plugins/sortable/sortTree.js.map +0 -1
- package/esm/plugins/sortable/sorter.js.map +0 -1
- package/esm/plugins/sortable/useSortableState.js.map +0 -1
- package/esm/plugins/toolbar/RowRenderer.js.map +0 -1
- package/esm/plugins/toolbar/ToolbarPlugin.js.map +0 -1
- package/esm/plugins/toolbar/ToolbarTrigger.js.map +0 -1
- package/esm/plugins/toolbar/index.js.map +0 -1
- package/esm/plugins/virtualization/AutoHeightList.js.map +0 -1
- package/esm/plugins/virtualization/VirtualizationPlugin.js.map +0 -1
- package/esm/plugins/virtualization/VirtualizedBody.js.map +0 -1
- package/esm/plugins/virtualization/VirtualizedBodyRow.js.map +0 -1
- package/esm/plugins/virtualization/helper.js.map +0 -1
- package/esm/plugins/virtualization/index.js.map +0 -1
- package/esm/renders/CellWithAddons.js.map +0 -1
- package/esm/renders/index.js.map +0 -1
- package/esm/renders/styled.js.map +0 -1
- package/esm/rowSizes.js.map +0 -1
- package/esm/utilities/getPluginsFromProps.js.map +0 -1
- package/esm/utilities/getScrollbarSize.js.map +0 -1
- package/esm/utilities/normalizeData.js.map +0 -1
- package/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin/package.json +0 -10
- package/plugins/body-header-scroll-sync/package.json +0 -10
- package/plugins/column-dnd/DndColumnsPlugin/package.json +0 -10
- package/plugins/column-dnd/decorateGridWithDndColumns/package.json +0 -10
- package/plugins/column-dnd/package.json +0 -10
- package/plugins/column-sizing/ColumnSizingPlugin/package.json +0 -10
- package/plugins/column-sizing/columnMeasurerTransformer/package.json +0 -10
- package/plugins/column-sizing/ext-points/decorateColumn/package.json +0 -10
- package/plugins/column-sizing/ext-points/getTableProps/package.json +0 -10
- package/plugins/column-sizing/getColumnNameFromProperty/package.json +0 -10
- package/plugins/column-sizing/package.json +0 -10
- package/plugins/column-sizing/useColumnSizeService/package.json +0 -10
- package/plugins/column-sizing/useStylesheetHelpers/package.json +0 -10
- package/plugins/column-sizing/utils/package.json +0 -10
- package/plugins/custom-cell-renderer/CustomRendererPlugin/package.json +0 -10
- package/plugins/custom-cell-renderer/addCustomRendererToCell/package.json +0 -10
- package/plugins/custom-cell-renderer/getRendererComponent/package.json +0 -10
- package/plugins/custom-cell-renderer/package.json +0 -10
- package/plugins/editable/EditableComponents/ComboBox/package.json +0 -10
- package/plugins/editable/EditableComponents/TextBox/package.json +0 -10
- package/plugins/editable/EditableComponents/package.json +0 -10
- package/plugins/editable/EditablePlugin/package.json +0 -10
- package/plugins/editable/decorateEditable/package.json +0 -10
- package/plugins/editable/getEditorComponent/package.json +0 -10
- package/plugins/editable/package.json +0 -10
- package/plugins/expandable-grid/ExpandableColumn/package.json +0 -10
- package/plugins/expandable-grid/ExpandablePlugin/package.json +0 -10
- package/plugins/expandable-grid/ExpandedRow/package.json +0 -10
- package/plugins/expandable-grid/ExpandedRowExtra/package.json +0 -10
- package/plugins/expandable-grid/package.json +0 -10
- package/plugins/expandable-grid/useExpandGridState/package.json +0 -10
- package/plugins/export-data/ExportDataPlugin/package.json +0 -10
- package/plugins/export-data/package.json +0 -10
- package/plugins/filterable/FilterablePlugin/package.json +0 -10
- package/plugins/filterable/addFilterToColumn/package.json +0 -10
- package/plugins/filterable/components/FilterableHeader/package.json +0 -10
- package/plugins/filterable/components/filterable-menus/DateRangeFilterMenu/package.json +0 -10
- package/plugins/filterable/components/filterable-menus/SingleDateFilterMenu/package.json +0 -10
- package/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu/package.json +0 -10
- package/plugins/filterable/components/filterable-menus/TextFilterMenu/package.json +0 -10
- package/plugins/filterable/components/filterable-menus/defaultDateFormat/package.json +0 -10
- package/plugins/filterable/components/filterable-menus/getFilterMenuByType/package.json +0 -10
- package/plugins/filterable/filterableFormatter/package.json +0 -10
- package/plugins/filterable/filtering-helper/filterRowsByQuery/package.json +0 -10
- package/plugins/filterable/filtering-helper/strategiesOperators/package.json +0 -10
- package/plugins/filterable/helper/package.json +0 -10
- package/plugins/filterable/package.json +0 -10
- package/plugins/filterable/useFilterableState/package.json +0 -10
- package/plugins/grouping-by/GroupingByPlugin/package.json +0 -10
- package/plugins/grouping-grid/GroupingPlugin/package.json +0 -10
- package/plugins/grouping-grid/walkStrategy/package.json +0 -10
- package/plugins/infinite-scrolling/InfiniteScrollPlugin/package.json +0 -10
- package/plugins/infinite-scrolling/package.json +0 -10
- package/plugins/package.json +0 -10
- package/plugins/pagination/PaginationPlugin/package.json +0 -10
- package/plugins/pagination/components/Pagination/package.json +0 -10
- package/plugins/pagination/components/Paginator/package.json +0 -10
- package/plugins/pagination/components/PerPageDropdown/package.json +0 -10
- package/plugins/pagination/helper/package.json +0 -10
- package/plugins/pagination/package.json +0 -10
- package/plugins/pagination/usePaginationState/package.json +0 -10
- package/plugins/resizable/ResizablePlugin/package.json +0 -10
- package/plugins/resizable/decorateResizable/package.json +0 -10
- package/plugins/resizable/package.json +0 -10
- package/plugins/resizable/useResizeHandle/package.json +0 -10
- package/plugins/resizable/utils/package.json +0 -10
- package/plugins/row-dnd/DndRowsPlugin/package.json +0 -10
- package/plugins/row-dnd/package.json +0 -10
- package/plugins/selectable/SelectablePlugin/package.json +0 -10
- package/plugins/selectable/addSelectableColumn/package.json +0 -10
- package/plugins/selectable/helper/package.json +0 -10
- package/plugins/selectable/package.json +0 -10
- package/plugins/selectable/selectableFormatter/package.json +0 -10
- package/plugins/selectable/useSelectableState/package.json +0 -10
- package/plugins/sortable/SortablePlugin/package.json +0 -10
- package/plugins/sortable/checkIfSortable/package.json +0 -10
- package/plugins/sortable/package.json +0 -10
- package/plugins/sortable/sortHeaderFormatter/package.json +0 -10
- package/plugins/sortable/sortTree/package.json +0 -10
- package/plugins/sortable/sorter/package.json +0 -10
- package/plugins/sortable/useSortableState/package.json +0 -10
- package/plugins/toolbar/RowRenderer/package.json +0 -10
- package/plugins/toolbar/ToolbarPlugin/package.json +0 -10
- package/plugins/toolbar/ToolbarTrigger/package.json +0 -10
- package/plugins/toolbar/package.json +0 -10
- package/plugins/virtualization/AutoHeightList/package.json +0 -10
- package/plugins/virtualization/VirtualizationPlugin/package.json +0 -10
- package/plugins/virtualization/VirtualizedBody/package.json +0 -10
- package/plugins/virtualization/VirtualizedBodyRow/package.json +0 -10
- package/plugins/virtualization/helper/package.json +0 -10
- package/plugins/virtualization/package.json +0 -10
- package/renders/CellWithAddons/package.json +0 -10
- package/renders/package.json +0 -10
- package/renders/styled/package.json +0 -10
- package/rowSizes/package.json +0 -10
- package/utilities/getPluginsFromProps/package.json +0 -10
- package/utilities/getScrollbarSize/package.json +0 -10
- package/utilities/normalizeData/package.json +0 -10
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DndColumnsPlugin.js","sources":["../../../../src/plugins/column-dnd/DndColumnsPlugin.tsx"],"sourcesContent":["/* eslint-disable react/display-name */\nimport React, { useEffect, useMemo, useRef } from 'react';\nimport { SortableContainer, SortableElement } from 'react-sortable-hoc';\nimport { arrayMove, omit, mergeRefs } from '@elliemae/ds-utilities';\nimport createInstancePlugin from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { addDragAndDropToColumn } from './decorateGridWithDndColumns';\n\n// todo: remove once it's fixed in react-sortable-hoc library\nconst keysToOmit = [\n 'axis',\n 'contentWindow',\n 'disableAutoscroll',\n 'distance',\n 'getContainer',\n 'getHelperDimensions',\n 'helperClass',\n 'helperContainer',\n 'hideSortableGhost',\n 'keyboardSortingTransitionDuration',\n 'lockAxis',\n 'lockOffset',\n 'lockToContainerEdges',\n 'onSortEnd',\n 'onSortMove',\n 'onSortOver',\n 'onSortStart',\n 'pressDelay',\n 'pressThreshold',\n 'shouldCancelStart',\n 'transitionDuration',\n 'updateBeforeSortStart',\n 'useDragHandle',\n 'useWindowAsScrollContainer',\n];\n\nconst decorateColumn = (column, grid) => (column.isUserColumn ? addDragAndDropToColumn(grid, column) : column);\n\nconst getHeaderRowProps = (props, grid) => {\n const { onMoveColumnStart, onMoveColumnEnd, onMoveColumnOver } = grid.props;\n\n const headerRowRef = useRef();\n const columnDraggingOffset = useRef(0);\n const sortedColumns = useRef(grid.getInstance().decoratedColumns);\n const nodeRef = useRef();\n\n useEffect(() => {\n sortedColumns.current = grid.getInstance().decoratedColumns;\n });\n\n const onSortOver = (params) => {\n const { index, newIndex, oldIndex } = params;\n const oldColumn = sortedColumns.current[oldIndex];\n const newColumn = sortedColumns.current[newIndex];\n\n if (!newColumn.isUserColumn || !oldColumn.isUserColumn) return;\n\n const columnWidth = nodeRef.current.offsetWidth;\n const newColumnWidth = headerRowRef.current.childNodes.item(newColumn.index).offsetWidth;\n\n const forward = newIndex > oldIndex;\n\n // eslint-disable-next-line no-nested-ternary\n const columnTranslate = forward ? (newIndex > index ? columnWidth * -1 : 0) : newIndex < index ? columnWidth : 0;\n\n columnDraggingOffset.current += forward ? newColumnWidth : newColumnWidth * -1;\n\n newColumn.updateStyle({\n transitionDuration: '300ms',\n transform: `translate3d(${columnTranslate}px, 0, 0)`,\n });\n oldColumn.updateStyle({\n transitionDuration: '300ms',\n transform: `translate3d(${columnDraggingOffset.current}px, 0, 0)`,\n });\n\n sortedColumns.current = arrayMove(sortedColumns.current, oldIndex, newIndex);\n onMoveColumnOver(params);\n };\n\n const onSortStart = (params) => {\n const { node } = params;\n grid.disableEvents();\n nodeRef.current = node;\n onMoveColumnStart(params);\n };\n\n const onSortEnd = (params) => {\n const { oldIndex, newIndex } = params;\n grid.enableEvents();\n columnDraggingOffset.current = 0;\n sortedColumns.current = grid.decoratedColumns;\n grid.decoratedColumns.forEach((column) => {\n if (!column.updateStyle) return;\n column.updateStyle({\n transitionDuration: null,\n transform: null,\n });\n });\n\n const originalOldColumnIndex = grid.columns.findIndex(\n (column) => column.property === grid.decoratedColumns[oldIndex].property,\n );\n const originalNewColumnIndex = grid.columns.findIndex(\n (column) => column.property === grid.decoratedColumns[newIndex].property,\n );\n\n onMoveColumnEnd({\n newIndex: originalNewColumnIndex,\n oldIndex: originalOldColumnIndex,\n });\n };\n\n return {\n axis: 'x',\n helperClass: 'header-dnd-column',\n innerRef: mergeRefs(props.innerRef, headerRowRef),\n lockAxis: 'x',\n onSortEnd,\n onSortOver,\n onSortStart,\n useDragHandle: true,\n };\n};\n\nconst decorateRenderers = (renderers) => {\n const RowComponent = renderers.header.row;\n const CellComponent = renderers.header.cell;\n\n const Row = useMemo(() => SortableContainer((props) => <RowComponent {...omit(props, keysToOmit)} />), []);\n\n const Cell = useMemo(() => SortableElement(CellComponent), []);\n\n return {\n ...renderers,\n header: {\n ...renderers.header,\n row: Row,\n cell: Cell,\n },\n };\n};\n\nexport const DndColumnsPlugin = createInstancePlugin('dnd-columns', {\n getHeaderRowProps,\n decorateColumn,\n decorateRenderers,\n});\n"],"names":["keysToOmit","decorateColumn","column","grid","isUserColumn","addDragAndDropToColumn","getHeaderRowProps","props","onMoveColumnStart","onMoveColumnEnd","onMoveColumnOver","headerRowRef","useRef","columnDraggingOffset","sortedColumns","getInstance","decoratedColumns","nodeRef","useEffect","current","onSortOver","params","index","newIndex","oldIndex","oldColumn","newColumn","columnWidth","offsetWidth","newColumnWidth","childNodes","item","forward","columnTranslate","updateStyle","transitionDuration","transform","arrayMove","onSortStart","node","disableEvents","onSortEnd","enableEvents","forEach","originalOldColumnIndex","columns","findIndex","property","originalNewColumnIndex","axis","helperClass","innerRef","mergeRefs","lockAxis","useDragHandle","decorateRenderers","renderers","RowComponent","header","row","CellComponent","cell","Row","useMemo","SortableContainer","React","omit","Cell","SortableElement","DndColumnsPlugin","createInstancePlugin"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"decorateGridWithDndColumns.js","sources":["../../../../src/plugins/column-dnd/decorateGridWithDndColumns.tsx"],"sourcesContent":["import React from 'react';\nimport { SortableHandle } from 'react-sortable-hoc';\nimport { GripperVertical } from '@elliemae/ds-icons';\nimport {\n appendHeaderFormatter,\n mergeClassNameToColumnHeader,\n} from '@elliemae/ds-shared/useDataGrid/initColumnDefinition';\n\nconst DragHandle = SortableHandle(() => <GripperVertical className=\"drag-handle\" />);\n\nconst DndHeaderFormatter = (value) => (\n <>\n <DragHandle />\n {value}\n </>\n);\n\nconst addDragAndDropToColumn = (grid, column) => {\n column = appendHeaderFormatter(DndHeaderFormatter, column);\n return mergeClassNameToColumnHeader('with-dnd-column', column);\n};\n\nexport { addDragAndDropToColumn };\n"],"names":["DragHandle","SortableHandle","React","GripperVertical","DndHeaderFormatter","value","addDragAndDropToColumn","grid","column","appendHeaderFormatter","mergeClassNameToColumnHeader"],"mappings":";;;;;;;;;;;;;AAQA,IAAMA,UAAU,GAAGC,+BAAc,CAAC;AAAA,sBAAMC,wCAACC,uBAAD;AAAiB,IAAA,SAAS,EAAC;AAA3B,IAAN;AAAA,CAAD,CAAjC;;AAEA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,KAAD;AAAA,sBACzBH,+FACEA,wCAAC,UAAD,OADF,EAEGG,KAFH,CADyB;AAAA,CAA3B;;IAOMC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACC,IAAD,EAAOC,MAAP,EAAkB;AAC/CA,EAAAA,MAAM,GAAGC,0CAAqB,CAACL,kBAAD,EAAqBI,MAArB,CAA9B;AACA,SAAOE,iDAA4B,CAAC,iBAAD,EAAoBF,MAApB,CAAnC;AACD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnSizingPlugin.js","sources":["../../../../src/plugins/column-sizing/ColumnSizingPlugin.tsx"],"sourcesContent":["/* 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"],"names":["getHeaderRowProps","rowProps","rowsStylesheet","className","getRowClassName","getRowProps","cx","decorateColumns","columns","grid","columnsStylesheet","decorateGrid","isDragging","useRef","tableRef","resizedColumns","scrollbarWidth","bodyWidth","allColumnsHaveBeenFixed","columnSizeService","useColumnSizeService","useStylesheetHelpers","updateRowWidth","width","gridWidth","current","offsetWidth","columnsTotalSize","computeColumnsTotalSize","setActualColumnsSizesFixed","update","undefined","ColumnSizingPlugin","createInstancePlugin","decorateColumn","getTableProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAUA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,QAAD,QAAkC;AAAA,MAArBC,cAAqB,QAArBA,cAAqB;AAC1DD,EAAAA,QAAQ,CAACE,SAAT,aAAwBD,cAAc,CAACE,eAAf,EAAxB;AACA,SAAOH,QAAP;AACD,CAHD;;AAKA,IAAMI,WAAW,GAAG,SAAdA,WAAc,CAACJ,QAAD,SAAkC;AAAA,MAArBC,cAAqB,SAArBA,cAAqB;AACpDD,EAAAA,QAAQ,CAACE,SAAT,GAAqBG,cAAE,CAACL,QAAQ,CAACE,SAAV,EAAqBD,cAAc,CAACE,eAAf,EAArB,CAAvB;AACA,SAAOH,QAAP;AACD,CAHD;;AAKA,IAAMM,eAAe,GAAG,SAAlBA,eAAkB,CAACC,OAAD,EAAUC,IAAV;AAAA,SAAmBA,IAAI,CAACC,iBAAL,CAAuBH,eAAvB,CAAuCC,OAAvC,EAAgDC,IAAhD,CAAnB;AAAA,CAAxB;;AAEA,IAAME,YAAY,GAAG,SAAfA,YAAe,CAACF,IAAD,EAAU;AAC7B,MAAMG,UAAU,GAAGC,YAAM,CAAC,KAAD,CAAzB;AACA,MAAMC,QAAQ,GAAGD,YAAM,EAAvB;AACA,MAAME,cAAc,GAAGF,YAAM,CAAC,EAAD,CAA7B;AACA,MAAMG,cAAc,GAAGH,YAAM,EAA7B;AACA,MAAMI,SAAS,GAAGJ,YAAM,EAAxB;AACA,MAAMK,uBAAuB,GAAGL,YAAM,CAAC,KAAD,CAAtC;AACA,MAAMM,iBAAiB,GAAGC,yCAAoB,CAACX,IAAD,CAA9C;;AACA,8BAA8CY,8DAAoB,CAACZ,IAAD,CAAlE;AAAA,MAAQC,iBAAR,yBAAQA,iBAAR;AAAA,MAA2BR,cAA3B,yBAA2BA,cAA3B,CAR6B;;;AAW7B,MAAMoB,cAAc,GAAG,SAAjBA,cAAiB,CAACC,KAAD,EAAW;AAChC,QAAMC,SAAS,GAAGD,KAAK,IAAIT,QAAQ,CAACW,OAAT,CAAiBC,WAA5C;AACA,QAAMC,gBAAgB,GAAGR,iBAAiB,CAACS,uBAAlB,EAAzB;;AAEA,QAAID,gBAAgB,GAAGH,SAAS,GAAG,CAAnC,EAAsC;AACpC,UAAI,CAACN,uBAAuB,CAACO,OAAzB,IAAoCb,UAAU,CAACa,OAAnD,EAA4D;AAC1DN,QAAAA,iBAAiB,CAACU,0BAAlB;AACAX,QAAAA,uBAAuB,CAACO,OAAxB,GAAkC,IAAlC;AACD;;AACDvB,MAAAA,cAAc,CAAC4B,MAAf,CAAsBH,gBAAtB;AACD,KAND,MAMO;AACLzB,MAAAA,cAAc,CAAC4B,MAAf,CAAsBC,SAAtB;AACD;AACF,GAbD;;AAeA,SAAO;AACLnB,IAAAA,UAAU,EAAVA,UADK;AAELE,IAAAA,QAAQ,EAARA,QAFK;AAGLG,IAAAA,SAAS,EAATA,SAHK;AAILD,IAAAA,cAAc,EAAdA,cAJK;AAKLG,IAAAA,iBAAiB,EAAjBA,iBALK;AAMLjB,IAAAA,cAAc,EAAdA,cANK;AAOLQ,IAAAA,iBAAiB,EAAjBA,iBAPK;AAQLK,IAAAA,cAAc,EAAdA,cARK;AASLO,IAAAA,cAAc,EAAdA;AATK,GAAP;AAWD,CArCD;;IAuCaU,kBAAkB,GAAGC,wCAAoB,CAAC,eAAD,EAAkB;AACtEtB,EAAAA,YAAY,EAAZA,YADsE;AAEtEuB,EAAAA,cAAc,EAAdA,4DAFsE;AAGtE7B,EAAAA,WAAW,EAAXA,WAHsE;AAItEL,EAAAA,iBAAiB,EAAjBA,iBAJsE;AAKtEmC,EAAAA,aAAa,EAAbA,0DALsE;AAMtE5B,EAAAA,eAAe,EAAfA;AANsE,CAAlB;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"columnMeasurerTransformer.js","sources":["../../../../src/plugins/column-sizing/columnMeasurerTransformer.tsx"],"sourcesContent":["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"],"names":["columnMeasurerTransformer","columnSizeService","value","column","grid","props","registerColumn","cellRef","useRef","useLayoutEffect","columns","expandedToContentColumns","getInstance","minColumnWidth","resizedColumns","current","expandWidthToContent","uuid","originalWidth","offsetWidth","style","flex","minWidth","calcWidth","node","innerRef","mergeRefs"],"mappings":";;;;;;;;;;;;;;;IAGaA,yBAAyB,GACpC,SADWA,yBACX,CAACC,iBAAD;AAAA,SACA,UAACC,KAAD,QAAyC;AAAA,QAA/BC,MAA+B,QAA/BA,MAA+B;AAAA,QAAvBC,IAAuB,QAAvBA,IAAuB;AAAA,QAAfC,KAAe,uEAAP,EAAO;AACvC,QAAQC,cAAR,GAA2BL,iBAA3B,CAAQK,cAAR;AACA,QAAMC,OAAO,GAAGC,YAAM,EAAtB;AAEAC,IAAAA,qBAAe,CAAC,YAAM;AACpB,UAAQC,OAAR,GAA8CT,iBAA9C,CAAQS,OAAR;AAAA,UAAiBC,wBAAjB,GAA8CV,iBAA9C,CAAiBU,wBAAjB;;AACA,8BAGIP,IAAI,CAACQ,WAAL,EAHJ;AAAA,4BACEP,KADF,CACWQ,cADX;AAAA,cAEEC,cAFF,qBAEEA;;AAEF,UAAIP,OAAO,CAACQ,OAAZ,EAAqB;AACnB;AACA;AACA;AACA;AACA,YAAIZ,MAAM,CAACa,oBAAP,IAA+B,CAACL,wBAAwB,CAACR,MAAM,CAACc,IAAR,CAA5D,EAA2E;AACzE;AACA,cAAMC,aAAa,GAAGX,OAAO,CAACQ,OAAR,CAAgBI,WAAtC;AACAZ,UAAAA,OAAO,CAACQ,OAAR,CAAgBK,KAAhB,CAAsBC,IAAtB,GAA6B,SAA7B;AACAd,UAAAA,OAAO,CAACQ,OAAR,CAAgBK,KAAhB,CAAsBE,QAAtB,GAAiC,SAAjC;AACA,cAAMC,SAAS,GAAGhB,OAAO,CAACQ,OAAR,CAAgBI,WAAhB,GAA8B,EAAhD;;AACA,cAAID,aAAa,GAAG,EAAhB,IAAsBK,SAA1B,EAAqC;AACnCT,YAAAA,cAAc,CAACC,OAAf,CAAuBZ,MAAM,CAACc,IAA9B,IAAsCM,SAAtC;AACAb,YAAAA,OAAO,CAACP,MAAM,CAACc,IAAR,CAAP,CAAqBK,QAArB,GAAgCC,SAAhC;AACD,WAHD,MAGO;AACLb,YAAAA,OAAO,CAACP,MAAM,CAACc,IAAR,CAAP,CAAqBK,QAArB,GAAgCJ,aAAhC;AACD;;AACDP,UAAAA,wBAAwB,CAACR,MAAM,CAACc,IAAR,CAAxB,GAAwC,IAAxC;AACAV,UAAAA,OAAO,CAACQ,OAAR,CAAgBK,KAAhB,CAAsBE,QAAtB,GAAiC,IAAjC;AACAf,UAAAA,OAAO,CAACQ,OAAR,CAAgBK,KAAhB,CAAsBC,IAAtB,GAA6B,CAA7B;AACAlB,UAAAA,MAAM,CAACqB,IAAP,GAAcjB,OAAO,CAACQ,OAAtB;AACD;AACF;AACF,KA7Bc,CAAf;AA+BA,2CACKV,KADL;AAEEoB,MAAAA,QAAQ,EAAEC,qBAAS,CAACnB,OAAD,EAAUF,KAAK,CAACoB,QAAhB,EAA0BnB,cAAc,CAACH,MAAD,CAAxC;AAFrB;AAID,GAxCD;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"decorateColumn.js","sources":["../../../../../src/plugins/column-sizing/ext-points/decorateColumn.tsx"],"sourcesContent":["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"],"names":["decorateColumn","column","grid","index","transformsPath","transforms","get","push","columnMeasurerTransformer","columnSizeService","set"],"mappings":";;;;;;;;;AAGO,SAASA,cAAT,CAAwBC,MAAxB,EAAgCC,IAAhC,EAAsCC,KAAtC,EAA6C;AAClD,MAAMC,cAAc,GAAG,CAAC,QAAD,EAAW,YAAX,CAAvB;AACA,MAAMC,UAAU,GAAGC,eAAG,CAACL,MAAD,EAASG,cAAT,EAAyB,EAAzB,CAAtB;AACAC,EAAAA,UAAU,CAACE,IAAX,CAAgBC,wEAAyB,CAACN,IAAI,CAACO,iBAAN,CAAzC;AACAR,EAAAA,MAAM,CAACE,KAAP,GAAeA,KAAf;AACAO,EAAAA,eAAG,CAACT,MAAD,EAASG,cAAT,EAAyBC,UAAzB,CAAH;AAEA,SAAOJ,MAAP;AACD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getTableProps.js","sources":["../../../../../src/plugins/column-sizing/ext-points/getTableProps.tsx"],"sourcesContent":["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"],"names":["getTableProps","tableProps","refs","tableRef","bodyWidth","scrollbarWidth","isDragging","columnSizeService","updateRowWidth","columns","useState","tableNode","tableRefCallback","useResizeObserver","width","header","current","getScrollbarSizeFromHeaderAndBody","body","offsetWidth","updateMissingWidths","useEffect","clientWidth","innerRef","mergeRefs"],"mappings":";;;;;;;;;;;;;;;;;;AAIO,SAASA,aAAT,CACLC,UADK,QAGL;AAAA,MADEC,IACF,QADEA,IACF;AAAA,MADQC,QACR,QADQA,QACR;AAAA,MADkBC,SAClB,QADkBA,SAClB;AAAA,MAD6BC,cAC7B,QAD6BA,cAC7B;AAAA,MAD6CC,UAC7C,QAD6CA,UAC7C;AAAA,MADyDC,iBACzD,QADyDA,iBACzD;AAAA,MAD4EC,cAC5E,QAD4EA,cAC5E;AAAA,MAD4FC,OAC5F,QAD4FA,OAC5F;;AACA,kBAAsCC,cAAQ,EAA9C;AAAA;AAAA,MAAOC,SAAP;AAAA,MAAkBC,gBAAlB;;AAEAC,EAAAA,6BAAiB,CAAC,iBAAe;AAAA,QAAZC,KAAY,SAAZA,KAAY;AAC/B,QAAI,CAACZ,IAAI,CAACa,MAAL,CAAYC,OAAjB,EAA0B;AAC1B,QAAI,OAAOX,cAAc,CAACW,OAAtB,KAAkC,QAAtC,EACEX,cAAc,CAACW,OAAf,GAAyBC,4DAAiC,CAACf,IAAD,CAA1D;AACF,QAAI,OAAOE,SAAS,CAACY,OAAjB,KAA6B,QAAjC,EAA2CZ,SAAS,CAACY,OAAV,GAAoBd,IAAI,CAACgB,IAAL,CAAUC,WAA9B,CAJZ;AAM/B;AACA;AACA;;AAEA,QAAIb,UAAU,CAACU,OAAf,EAAwB;AACxBT,IAAAA,iBAAiB,CAACa,mBAAlB,CAAsCN,KAAtC;AACAN,IAAAA,cAAc,CAACM,KAAD,CAAd;AACD,GAbgB,EAadH,SAbc,CAAjB;AAeAU,EAAAA,eAAS,CAAC,YAAM;AACd,QAAIV,SAAJ,EAAe;AACbJ,MAAAA,iBAAiB,CAACa,mBAAlB,CAAsCT,SAAS,CAACW,WAAhD;AACAd,MAAAA,cAAc,CAACG,SAAS,CAACW,WAAX,CAAd;AACD;;AACD,QAAI,OAAOlB,SAAS,CAACY,OAAjB,KAA6B,QAAjC,EAA2CZ,SAAS,CAACY,OAAV,GAAoBd,IAAI,CAACgB,IAAL,CAAUI,WAA9B;AAC5C,GANQ,EAMN,CAACb,OAAD,EAAUE,SAAV,CANM,CAAT;AAQA,yCACKV,UADL;AAEEsB,IAAAA,QAAQ,EAAEC,qBAAS,CAACZ,gBAAD,EAAmBX,UAAU,CAACsB,QAA9B,EAAwCpB,QAAxC;AAFrB;AAID;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getColumnNameFromProperty.js","sources":["../../../../src/plugins/column-sizing/getColumnNameFromProperty.tsx"],"sourcesContent":["export default function getColumnFromProperty(property) {\n return property && property.replace(/\\./g, '-');\n}\n"],"names":["getColumnFromProperty","property","replace"],"mappings":";;AAAe,SAASA,qBAAT,CAA+BC,QAA/B,EAAyC;AACtD,SAAOA,QAAQ,IAAIA,QAAQ,CAACC,OAAT,CAAiB,KAAjB,EAAwB,GAAxB,CAAnB;AACD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useColumnSizeService.js","sources":["../../../../src/plugins/column-sizing/useColumnSizeService.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport { useRef, useState, useLayoutEffect } from 'react';\nimport { getColumnWidthSize, getPercentageValue } from './utils';\n\nexport default function 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"],"names":["useColumnSizeService","instance","columns","useRef","useState","expandableGridDetailWidth","setExpandableGridDetailWidth","expandableColumnWidth","setExpandableColumnWidth","expandedToContentColumns","previousTotalWidth","initialUsedSpace","space","amount","percentage","increaseUsedSpace","columnUuid","current","endsWith","Number","slice","registerColumn","column","node","uuid","unregisterColumn","property","setActualColumnsSizesFixed","columnsArray","Object","values","forEach","columnOffsetWidth","offsetWidth","updateBodyHeaderWidth","updateMissingWidths","totalWidth","gridWidth","getInstance","props","minColumnWidth","expandable","resizedColumns","columnDefinitions","decoratedColumns","columnUuids","map","c","filter","includes","width","getColumnWidthSize","nextColumnDict","usedSpace","usedAmount","usedPercentage","percentValue","getPercentageValue","pxs","pxWidths","computedWidth","expandableColumn","columnFixWidth","length","percentWidth","actualWidthAfterChecks","minWidth","useLayoutEffect","computeColumnsTotalSize","reduce","totalSize"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useStylesheetHelpers.js","sources":["../../../../src/plugins/column-sizing/useStylesheetHelpers.tsx"],"sourcesContent":["/* eslint-disable no-param-reassign */\n/* eslint-disable max-lines */\nimport * as stylesheet from 'stylesheet-helpers';\nimport { useState, useEffect } from 'react';\nimport { set } from '@elliemae/ds-utilities';\nimport getColumnNameFromProperty from './getColumnNameFromProperty';\nimport { getScrollbarWidth } from '../../utilities/getScrollbarSize';\n\nconst SCROLLBAR_WIDTH = getScrollbarWidth();\n\nexport const RowStylesheetHelper = ({ grid, className }) => {\n const { styleSheet, styleSheetElement } = stylesheet.create();\n const update = (width) => {\n const widths = typeof width === 'string' ? width : `${width}px`;\n stylesheet.updateProperties(\n window,\n styleSheet,\n className,\n width\n ? { width: widths, minWidth: widths, maxWidth: widths }\n : { width: null, minWidth: null, maxWidth: null },\n );\n const { hasScroll } = grid.getState();\n const headerWidth = `${width + (hasScroll ? SCROLLBAR_WIDTH : 0)}px`;\n stylesheet.updateProperties(\n window,\n styleSheet,\n `${className}-header`,\n width\n ? { width: headerWidth, minWidth: headerWidth, maxWidth: headerWidth }\n : { width: null, minWidth: null, maxWidth: null },\n );\n };\n const remove = () => styleSheetElement.remove();\n const getRowClassName = () => className;\n return {\n update,\n remove,\n getRowClassName,\n };\n};\n\nconst getColumnClassName = ({ globalId, column, isHeader = false, getId }) =>\n `column-${globalId}-${getId(column)}${isHeader ? '-header' : ''}`;\n\nfunction setWidth({ styleSheet, className, width, minWidth }) {\n let widths;\n if (typeof width === 'string') widths = width;\n if (typeof width === 'number') widths = `${width}px`;\n\n let minWidths;\n if (typeof minWidth === 'string') minWidths = minWidth;\n if (typeof minWidth === 'number') minWidths = `${minWidth}px`;\n\n stylesheet.updateProperties(window, styleSheet, className, {\n width: `${widths || minWidths}`,\n minWidth: `${widths || minWidths}`,\n // minWidth: `${minWidths || widths}`,\n maxWidth: `${widths || minWidths}`,\n });\n}\n\nfunction updateStyle({ styleSheet, className, style }) {\n stylesheet.updateProperties(window, styleSheet, className, style);\n}\n\nfunction columnSizesHelperImpl({\n globalId,\n getId = ({ property }) => getColumnNameFromProperty(property),\n}) {\n const { styleSheetElement, styleSheet } = stylesheet.create();\n\n const updateBodyHeaderWidth = ({\n className,\n headerClassName,\n width,\n minWidth,\n }) => {\n setWidth({\n styleSheet,\n className,\n width,\n minWidth,\n });\n setWidth({\n styleSheet,\n className: headerClassName,\n width,\n minWidth,\n isHeader: true,\n });\n };\n\n return {\n decorateColumns: (columns, grid) => {\n const {\n props: { minColumnWidth },\n } = grid.getInstance();\n return columns.map((column) => {\n const cellClassName = getColumnClassName({ globalId, getId, column });\n const headerClassName = `${cellClassName}-header`;\n\n set(column, 'header.props.className', headerClassName);\n set(column, 'cell.props.className', cellClassName);\n\n column.updateBodyHeaderWidth = (width, minWidth) => {\n updateBodyHeaderWidth({\n className: cellClassName,\n headerClassName,\n width,\n minWidth,\n });\n };\n column.updateWidth = (width, minWidth) => {\n setWidth({\n styleSheet,\n className: cellClassName,\n width,\n minWidth,\n });\n };\n column.updateStyle = (style) =>\n updateStyle({\n styleSheet,\n className: cellClassName,\n style,\n });\n\n column.headerHookEffects = [\n () => {\n useEffect(() => {\n const { resizedColumns } = grid.getInstance();\n const resizedWidth = resizedColumns.current[column.uuid];\n updateBodyHeaderWidth({\n className: cellClassName,\n headerClassName,\n width: resizedWidth || column.width || minColumnWidth,\n minWidth:\n resizedWidth ||\n column.minWidth ||\n minColumnWidth ||\n column.width,\n });\n }, [column.uuid]);\n },\n ];\n\n return column;\n });\n },\n getColumnCellClassName(column) {\n return getColumnClassName({ globalId, getId, column });\n },\n getColumnHeaderClassName(column) {\n return `${getColumnClassName({ globalId, getId, column })}-header`;\n },\n cleanup() {\n styleSheetElement.remove();\n },\n };\n}\n\nexport function useStylesheetHelpers(grid) {\n const {\n props: { bindColumnsSizeTo, bindRowSizeTo },\n } = grid;\n\n const [columnsStylesheet] = useState(() =>\n columnSizesHelperImpl({\n globalId: bindColumnsSizeTo || grid.uuid,\n getId: ({ uuid }) => getColumnNameFromProperty(uuid),\n }),\n );\n const rowClassName = `row-${bindRowSizeTo || grid.uuid}`;\n const [rowsStylesheet] = useState(() =>\n RowStylesheetHelper({ grid, className: rowClassName }),\n );\n\n return { columnsStylesheet, rowsStylesheet, rowClassName };\n}\n"],"names":["SCROLLBAR_WIDTH","getScrollbarWidth","RowStylesheetHelper","grid","className","stylesheet","create","styleSheet","styleSheetElement","update","width","widths","updateProperties","window","minWidth","maxWidth","getState","hasScroll","headerWidth","remove","getRowClassName","getColumnClassName","globalId","column","isHeader","getId","setWidth","minWidths","updateStyle","style","columnSizesHelperImpl","property","getColumnNameFromProperty","updateBodyHeaderWidth","headerClassName","decorateColumns","columns","getInstance","minColumnWidth","props","map","cellClassName","set","updateWidth","headerHookEffects","useEffect","resizedColumns","resizedWidth","current","uuid","getColumnCellClassName","getColumnHeaderClassName","cleanup","useStylesheetHelpers","bindColumnsSizeTo","bindRowSizeTo","useState","columnsStylesheet","rowClassName","rowsStylesheet"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAMA,eAAe,GAAGC,4CAAiB,EAAzC;IAEaC,mBAAmB,GAAG,SAAtBA,mBAAsB,OAAyB;AAAA,MAAtBC,IAAsB,QAAtBA,IAAsB;AAAA,MAAhBC,SAAgB,QAAhBA,SAAgB;;AAC1D,2BAA0CC,qBAAU,CAACC,MAAX,EAA1C;AAAA,MAAQC,UAAR,sBAAQA,UAAR;AAAA,MAAoBC,iBAApB,sBAAoBA,iBAApB;;AACA,MAAMC,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD,EAAW;AACxB,QAAMC,MAAM,GAAG,OAAOD,KAAP,KAAiB,QAAjB,GAA4BA,KAA5B,aAAuCA,KAAvC,OAAf;AACAL,IAAAA,qBAAU,CAACO,gBAAX,CACEC,MADF,EAEEN,UAFF,EAGEH,SAHF,EAIEM,KAAK,GACD;AAAEA,MAAAA,KAAK,EAAEC,MAAT;AAAiBG,MAAAA,QAAQ,EAAEH,MAA3B;AAAmCI,MAAAA,QAAQ,EAAEJ;AAA7C,KADC,GAED;AAAED,MAAAA,KAAK,EAAE,IAAT;AAAeI,MAAAA,QAAQ,EAAE,IAAzB;AAA+BC,MAAAA,QAAQ,EAAE;AAAzC,KANN;;AAQA,yBAAsBZ,IAAI,CAACa,QAAL,EAAtB;AAAA,QAAQC,SAAR,kBAAQA,SAAR;;AACA,QAAMC,WAAW,aAAMR,KAAK,IAAIO,SAAS,GAAGjB,eAAH,GAAqB,CAAlC,CAAX,OAAjB;AACAK,IAAAA,qBAAU,CAACO,gBAAX,CACEC,MADF,EAEEN,UAFF,YAGKH,SAHL,cAIEM,KAAK,GACD;AAAEA,MAAAA,KAAK,EAAEQ,WAAT;AAAsBJ,MAAAA,QAAQ,EAAEI,WAAhC;AAA6CH,MAAAA,QAAQ,EAAEG;AAAvD,KADC,GAED;AAAER,MAAAA,KAAK,EAAE,IAAT;AAAeI,MAAAA,QAAQ,EAAE,IAAzB;AAA+BC,MAAAA,QAAQ,EAAE;AAAzC,KANN;AAQD,GApBD;;AAqBA,MAAMI,MAAM,GAAG,SAATA,MAAS;AAAA,WAAMX,iBAAiB,CAACW,MAAlB,EAAN;AAAA,GAAf;;AACA,MAAMC,eAAe,GAAG,SAAlBA,eAAkB;AAAA,WAAMhB,SAAN;AAAA,GAAxB;;AACA,SAAO;AACLK,IAAAA,MAAM,EAANA,MADK;AAELU,IAAAA,MAAM,EAANA,MAFK;AAGLC,IAAAA,eAAe,EAAfA;AAHK,GAAP;AAKD;;AAED,IAAMC,kBAAkB,GAAG,SAArBA,kBAAqB;AAAA,MAAGC,QAAH,SAAGA,QAAH;AAAA,MAAaC,MAAb,SAAaA,MAAb;AAAA,6BAAqBC,QAArB;AAAA,MAAqBA,QAArB,+BAAgC,KAAhC;AAAA,MAAuCC,KAAvC,SAAuCA,KAAvC;AAAA,0BACfH,QADe,cACHG,KAAK,CAACF,MAAD,CADF,SACaC,QAAQ,GAAG,SAAH,GAAe,EADpC;AAAA,CAA3B;;AAGA,SAASE,QAAT,QAA8D;AAAA,MAA1CnB,UAA0C,SAA1CA,UAA0C;AAAA,MAA9BH,SAA8B,SAA9BA,SAA8B;AAAA,MAAnBM,KAAmB,SAAnBA,KAAmB;AAAA,MAAZI,QAAY,SAAZA,QAAY;AAC5D,MAAIH,MAAJ;AACA,MAAI,OAAOD,KAAP,KAAiB,QAArB,EAA+BC,MAAM,GAAGD,KAAT;AAC/B,MAAI,OAAOA,KAAP,KAAiB,QAArB,EAA+BC,MAAM,aAAMD,KAAN,OAAN;AAE/B,MAAIiB,SAAJ;AACA,MAAI,OAAOb,QAAP,KAAoB,QAAxB,EAAkCa,SAAS,GAAGb,QAAZ;AAClC,MAAI,OAAOA,QAAP,KAAoB,QAAxB,EAAkCa,SAAS,aAAMb,QAAN,OAAT;AAElCT,EAAAA,qBAAU,CAACO,gBAAX,CAA4BC,MAA5B,EAAoCN,UAApC,EAAgDH,SAAhD,EAA2D;AACzDM,IAAAA,KAAK,YAAKC,MAAM,IAAIgB,SAAf,CADoD;AAEzDb,IAAAA,QAAQ,YAAKH,MAAM,IAAIgB,SAAf,CAFiD;AAGzD;AACAZ,IAAAA,QAAQ,YAAKJ,MAAM,IAAIgB,SAAf;AAJiD,GAA3D;AAMD;;AAED,SAASC,WAAT,QAAuD;AAAA,MAAhCrB,UAAgC,SAAhCA,UAAgC;AAAA,MAApBH,SAAoB,SAApBA,SAAoB;AAAA,MAATyB,KAAS,SAATA,KAAS;AACrDxB,EAAAA,qBAAU,CAACO,gBAAX,CAA4BC,MAA5B,EAAoCN,UAApC,EAAgDH,SAAhD,EAA2DyB,KAA3D;AACD;;AAED,SAASC,qBAAT,QAGG;AAAA,MAFDR,QAEC,SAFDA,QAEC;AAAA,0BADDG,KACC;AAAA,MADDA,KACC,4BADO;AAAA,QAAGM,QAAH,SAAGA,QAAH;AAAA,WAAkBC,8CAAyB,CAACD,QAAD,CAA3C;AAAA,GACP;;AACD,4BAA0C1B,qBAAU,CAACC,MAAX,EAA1C;AAAA,MAAQE,iBAAR,uBAAQA,iBAAR;AAAA,MAA2BD,UAA3B,uBAA2BA,UAA3B;;AAEA,MAAM0B,qBAAqB,GAAG,SAAxBA,qBAAwB,QAKxB;AAAA,QAJJ7B,SAII,SAJJA,SAII;AAAA,QAHJ8B,eAGI,SAHJA,eAGI;AAAA,QAFJxB,KAEI,SAFJA,KAEI;AAAA,QADJI,QACI,SADJA,QACI;AACJY,IAAAA,QAAQ,CAAC;AACPnB,MAAAA,UAAU,EAAVA,UADO;AAEPH,MAAAA,SAAS,EAATA,SAFO;AAGPM,MAAAA,KAAK,EAALA,KAHO;AAIPI,MAAAA,QAAQ,EAARA;AAJO,KAAD,CAAR;AAMAY,IAAAA,QAAQ,CAAC;AACPnB,MAAAA,UAAU,EAAVA,UADO;AAEPH,MAAAA,SAAS,EAAE8B,eAFJ;AAGPxB,MAAAA,KAAK,EAALA,KAHO;AAIPI,MAAAA,QAAQ,EAARA,QAJO;AAKPU,MAAAA,QAAQ,EAAE;AALH,KAAD,CAAR;AAOD,GAnBD;;AAqBA,SAAO;AACLW,IAAAA,eAAe,EAAE,yBAACC,OAAD,EAAUjC,IAAV,EAAmB;AAClC,8BAEIA,IAAI,CAACkC,WAAL,EAFJ;AAAA,UACWC,cADX,qBACEC,KADF,CACWD,cADX;;AAGA,aAAOF,OAAO,CAACI,GAAR,CAAY,UAACjB,MAAD,EAAY;AAC7B,YAAMkB,aAAa,GAAGpB,kBAAkB,CAAC;AAAEC,UAAAA,QAAQ,EAARA,QAAF;AAAYG,UAAAA,KAAK,EAALA,KAAZ;AAAmBF,UAAAA,MAAM,EAANA;AAAnB,SAAD,CAAxC;AACA,YAAMW,eAAe,aAAMO,aAAN,YAArB;AAEAC,QAAAA,eAAG,CAACnB,MAAD,EAAS,wBAAT,EAAmCW,eAAnC,CAAH;AACAQ,QAAAA,eAAG,CAACnB,MAAD,EAAS,sBAAT,EAAiCkB,aAAjC,CAAH;;AAEAlB,QAAAA,MAAM,CAACU,qBAAP,GAA+B,UAACvB,KAAD,EAAQI,QAAR,EAAqB;AAClDmB,UAAAA,qBAAqB,CAAC;AACpB7B,YAAAA,SAAS,EAAEqC,aADS;AAEpBP,YAAAA,eAAe,EAAfA,eAFoB;AAGpBxB,YAAAA,KAAK,EAALA,KAHoB;AAIpBI,YAAAA,QAAQ,EAARA;AAJoB,WAAD,CAArB;AAMD,SAPD;;AAQAS,QAAAA,MAAM,CAACoB,WAAP,GAAqB,UAACjC,KAAD,EAAQI,QAAR,EAAqB;AACxCY,UAAAA,QAAQ,CAAC;AACPnB,YAAAA,UAAU,EAAVA,UADO;AAEPH,YAAAA,SAAS,EAAEqC,aAFJ;AAGP/B,YAAAA,KAAK,EAALA,KAHO;AAIPI,YAAAA,QAAQ,EAARA;AAJO,WAAD,CAAR;AAMD,SAPD;;AAQAS,QAAAA,MAAM,CAACK,WAAP,GAAqB,UAACC,KAAD;AAAA,iBACnBD,WAAW,CAAC;AACVrB,YAAAA,UAAU,EAAVA,UADU;AAEVH,YAAAA,SAAS,EAAEqC,aAFD;AAGVZ,YAAAA,KAAK,EAALA;AAHU,WAAD,CADQ;AAAA,SAArB;;AAOAN,QAAAA,MAAM,CAACqB,iBAAP,GAA2B,CACzB,YAAM;AACJC,UAAAA,eAAS,CAAC,YAAM;AACd,qCAA2B1C,IAAI,CAACkC,WAAL,EAA3B;AAAA,gBAAQS,cAAR,sBAAQA,cAAR;;AACA,gBAAMC,YAAY,GAAGD,cAAc,CAACE,OAAf,CAAuBzB,MAAM,CAAC0B,IAA9B,CAArB;AACAhB,YAAAA,qBAAqB,CAAC;AACpB7B,cAAAA,SAAS,EAAEqC,aADS;AAEpBP,cAAAA,eAAe,EAAfA,eAFoB;AAGpBxB,cAAAA,KAAK,EAAEqC,YAAY,IAAIxB,MAAM,CAACb,KAAvB,IAAgC4B,cAHnB;AAIpBxB,cAAAA,QAAQ,EACNiC,YAAY,IACZxB,MAAM,CAACT,QADP,IAEAwB,cAFA,IAGAf,MAAM,CAACb;AARW,aAAD,CAArB;AAUD,WAbQ,EAaN,CAACa,MAAM,CAAC0B,IAAR,CAbM,CAAT;AAcD,SAhBwB,CAA3B;AAmBA,eAAO1B,MAAP;AACD,OAlDM,CAAP;AAmDD,KAxDI;AAyDL2B,IAAAA,sBAzDK,kCAyDkB3B,MAzDlB,EAyD0B;AAC7B,aAAOF,kBAAkB,CAAC;AAAEC,QAAAA,QAAQ,EAARA,QAAF;AAAYG,QAAAA,KAAK,EAALA,KAAZ;AAAmBF,QAAAA,MAAM,EAANA;AAAnB,OAAD,CAAzB;AACD,KA3DI;AA4DL4B,IAAAA,wBA5DK,oCA4DoB5B,MA5DpB,EA4D4B;AAC/B,uBAAUF,kBAAkB,CAAC;AAAEC,QAAAA,QAAQ,EAARA,QAAF;AAAYG,QAAAA,KAAK,EAALA,KAAZ;AAAmBF,QAAAA,MAAM,EAANA;AAAnB,OAAD,CAA5B;AACD,KA9DI;AA+DL6B,IAAAA,OA/DK,qBA+DK;AACR5C,MAAAA,iBAAiB,CAACW,MAAlB;AACD;AAjEI,GAAP;AAmED;;AAEM,SAASkC,oBAAT,CAA8BlD,IAA9B,EAAoC;AACzC,oBAEIA,IAFJ,CACEoC,KADF;AAAA,MACWe,iBADX,eACWA,iBADX;AAAA,MAC8BC,aAD9B,eAC8BA,aAD9B;;AAIA,kBAA4BC,cAAQ,CAAC;AAAA,WACnC1B,qBAAqB,CAAC;AACpBR,MAAAA,QAAQ,EAAEgC,iBAAiB,IAAInD,IAAI,CAAC8C,IADhB;AAEpBxB,MAAAA,KAAK,EAAE;AAAA,YAAGwB,IAAH,SAAGA,IAAH;AAAA,eAAcjB,8CAAyB,CAACiB,IAAD,CAAvC;AAAA;AAFa,KAAD,CADc;AAAA,GAAD,CAApC;AAAA;AAAA,MAAOQ,iBAAP;;AAMA,MAAMC,YAAY,iBAAUH,aAAa,IAAIpD,IAAI,CAAC8C,IAAhC,CAAlB;;AACA,mBAAyBO,cAAQ,CAAC;AAAA,WAChCtD,mBAAmB,CAAC;AAAEC,MAAAA,IAAI,EAAJA,IAAF;AAAQC,MAAAA,SAAS,EAAEsD;AAAnB,KAAD,CADa;AAAA,GAAD,CAAjC;AAAA;AAAA,MAAOC,cAAP;;AAIA,SAAO;AAAEF,IAAAA,iBAAiB,EAAjBA,iBAAF;AAAqBE,IAAAA,cAAc,EAAdA,cAArB;AAAqCD,IAAAA,YAAY,EAAZA;AAArC,GAAP;AACD;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../../../src/plugins/column-sizing/utils.tsx"],"sourcesContent":["import { get } from '@elliemae/ds-utilities';\n\nexport function getScrollbarSizeFromHeaderAndBody(refs) {\n const innerBodyOffsetWidth = get(refs, ['innerBody', 'current', 'offsetWidth']);\n const headerOffsetWidth = get(refs, ['header', 'current', 'offsetWidth']);\n\n return headerOffsetWidth - innerBodyOffsetWidth;\n}\n\nexport const isScrollbarVisible = (element) => element.scrollHeight > element.clientHeight;\n\nexport const getPercentageValue = (percentString) => {\n if (typeof percentString !== 'string') return null;\n const result = percentString.match(/(\\d+|\\d*[.,]\\d{1,2})/);\n\n return result && Number(result[0]);\n};\n\nexport const getColumnWidthSize = (width, minWidth, column) => {\n if (column.special) {\n return column.width;\n }\n if (minWidth && minWidth > width) return minWidth;\n return width;\n};\n\nexport const calculateMinWidthForWrappedText = (columns) => {\n let longestWord = 0;\n\n columns.forEach(({ label }) => {\n const localLongestWord = label.split(' ').sort((a, b) => b.length - a.length)[0].length;\n if (localLongestWord > longestWord) longestWord = localLongestWord;\n });\n\n return longestWord * 8.5;\n};\n"],"names":["getScrollbarSizeFromHeaderAndBody","refs","innerBodyOffsetWidth","get","headerOffsetWidth","isScrollbarVisible","element","scrollHeight","clientHeight","getPercentageValue","percentString","result","match","Number","getColumnWidthSize","width","minWidth","column","special","calculateMinWidthForWrappedText","columns","longestWord","forEach","label","localLongestWord","split","sort","a","b","length"],"mappings":";;;;;;AAEO,SAASA,iCAAT,CAA2CC,IAA3C,EAAiD;AACtD,MAAMC,oBAAoB,GAAGC,eAAG,CAACF,IAAD,EAAO,CAAC,WAAD,EAAc,SAAd,EAAyB,aAAzB,CAAP,CAAhC;AACA,MAAMG,iBAAiB,GAAGD,eAAG,CAACF,IAAD,EAAO,CAAC,QAAD,EAAW,SAAX,EAAsB,aAAtB,CAAP,CAA7B;AAEA,SAAOG,iBAAiB,GAAGF,oBAA3B;AACD;IAEYG,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,OAAD;AAAA,SAAaA,OAAO,CAACC,YAAR,GAAuBD,OAAO,CAACE,YAA5C;AAAA;IAErBC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,aAAD,EAAmB;AACnD,MAAI,OAAOA,aAAP,KAAyB,QAA7B,EAAuC,OAAO,IAAP;AACvC,MAAMC,MAAM,GAAGD,aAAa,CAACE,KAAd,CAAoB,sBAApB,CAAf;AAEA,SAAOD,MAAM,IAAIE,MAAM,CAACF,MAAM,CAAC,CAAD,CAAP,CAAvB;AACD;IAEYG,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,KAAD,EAAQC,QAAR,EAAkBC,MAAlB,EAA6B;AAC7D,MAAIA,MAAM,CAACC,OAAX,EAAoB;AAClB,WAAOD,MAAM,CAACF,KAAd;AACD;;AACD,MAAIC,QAAQ,IAAIA,QAAQ,GAAGD,KAA3B,EAAkC,OAAOC,QAAP;AAClC,SAAOD,KAAP;AACD;IAEYI,+BAA+B,GAAG,SAAlCA,+BAAkC,CAACC,OAAD,EAAa;AAC1D,MAAIC,WAAW,GAAG,CAAlB;AAEAD,EAAAA,OAAO,CAACE,OAAR,CAAgB,gBAAe;AAAA,QAAZC,KAAY,QAAZA,KAAY;AAC7B,QAAMC,gBAAgB,GAAGD,KAAK,CAACE,KAAN,CAAY,GAAZ,EAAiBC,IAAjB,CAAsB,UAACC,CAAD,EAAIC,CAAJ;AAAA,aAAUA,CAAC,CAACC,MAAF,GAAWF,CAAC,CAACE,MAAvB;AAAA,KAAtB,EAAqD,CAArD,EAAwDA,MAAjF;AACA,QAAIL,gBAAgB,GAAGH,WAAvB,EAAoCA,WAAW,GAAGG,gBAAd;AACrC,GAHD;AAKA,SAAOH,WAAW,GAAG,GAArB;AACD;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CustomRendererPlugin.js","sources":["../../../../src/plugins/custom-cell-renderer/CustomRendererPlugin.tsx"],"sourcesContent":["import createInstancePlugin from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport addCustomRendererToCell from './addCustomRendererToCell';\n\n// todo: this probably needs to go to the core\n\nconst decorateColumn = (column, grid) => addCustomRendererToCell(grid)(column);\n\nexport const CustomRendererPlugin = createInstancePlugin('custom-renderer', {\n decorateColumn,\n});\n"],"names":["decorateColumn","column","grid","addCustomRendererToCell","CustomRendererPlugin","createInstancePlugin"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CAACC,MAAD,EAASC,IAAT;AAAA,SAAkBC,6DAAuB,CAACD,IAAD,CAAvB,CAA8BD,MAA9B,CAAlB;AAAA,CAAvB;;IAEaG,oBAAoB,GAAGC,wCAAoB,CAAC,iBAAD,EAAoB;AAC1EL,EAAAA,cAAc,EAAdA;AAD0E,CAApB;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"addCustomRendererToCell.js","sources":["../../../../src/plugins/custom-cell-renderer/addCustomRendererToCell.tsx"],"sourcesContent":["/* eslint-disable max-statements */\nimport { isFunction, get } from '@elliemae/ds-utilities';\nimport { appendCellFormatter } from '@elliemae/ds-shared/useDataGrid/initColumnDefinition';\nimport getRendererComponent from './getRendererComponent';\n\nexport const getRenderer = (renderer, grid, column) => (value, metaData) => {\n const {\n props: { customHandlers, parentRowData },\n } = grid.getInstance();\n if (\n column &&\n column.formatExpandable &&\n value &&\n value.props &&\n value.props.children &&\n value.props.children.length === 2\n ) {\n return [\n value.props.children[0],\n renderer({\n value: value.props.children[1], // apply custom render only to the original value not the arrow\n metaData: { ...metaData, parentRowData },\n customHandlers,\n }),\n ];\n }\n return renderer({\n value,\n metaData: { ...metaData, parentRowData },\n customHandlers,\n });\n};\n\nconst addCustomRendererToCell = (grid) => (column) => {\n const { customRenderer } = column;\n const customHeaderRenderer = get(column, ['header', 'customRenderer']);\n if (!customRenderer && !customHeaderRenderer) return column;\n\n if (isFunction(customHeaderRenderer)) {\n column.header.formatters.push(getRenderer(customHeaderRenderer, grid));\n }\n\n if (isFunction(customRenderer)) {\n column = appendCellFormatter(getRenderer(customRenderer, grid, column), column);\n } else {\n if (!customRenderer) return column;\n column.cell.formatters.push((value, columnData) => getRendererComponent(grid, customRenderer, columnData));\n }\n\n return column;\n};\n\nexport default addCustomRendererToCell;\n"],"names":["getRenderer","renderer","grid","column","value","metaData","getInstance","props","customHandlers","parentRowData","formatExpandable","children","length","addCustomRendererToCell","customRenderer","customHeaderRenderer","get","isFunction","header","formatters","push","appendCellFormatter","cell","columnData","getRendererComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKaA,WAAW,GAAG,SAAdA,WAAc,CAACC,QAAD,EAAWC,IAAX,EAAiBC,MAAjB;AAAA,SAA4B,UAACC,KAAD,EAAQC,QAAR,EAAqB;AAC1E,4BAEIH,IAAI,CAACI,WAAL,EAFJ;AAAA,kDACEC,KADF;AAAA,QACWC,cADX,yBACWA,cADX;AAAA,QAC2BC,aAD3B,yBAC2BA,aAD3B;;AAGA,QACEN,MAAM,IACNA,MAAM,CAACO,gBADP,IAEAN,KAFA,IAGAA,KAAK,CAACG,KAHN,IAIAH,KAAK,CAACG,KAAN,CAAYI,QAJZ,IAKAP,KAAK,CAACG,KAAN,CAAYI,QAAZ,CAAqBC,MAArB,KAAgC,CANlC,EAOE;AACA,aAAO,CACLR,KAAK,CAACG,KAAN,CAAYI,QAAZ,CAAqB,CAArB,CADK,EAELV,QAAQ,CAAC;AACPG,QAAAA,KAAK,EAAEA,KAAK,CAACG,KAAN,CAAYI,QAAZ,CAAqB,CAArB,CADA;AACyB;AAChCN,QAAAA,QAAQ,kCAAOA,QAAP;AAAiBI,UAAAA,aAAa,EAAbA;AAAjB,UAFD;AAGPD,QAAAA,cAAc,EAAdA;AAHO,OAAD,CAFH,CAAP;AAQD;;AACD,WAAOP,QAAQ,CAAC;AACdG,MAAAA,KAAK,EAALA,KADc;AAEdC,MAAAA,QAAQ,kCAAOA,QAAP;AAAiBI,QAAAA,aAAa,EAAbA;AAAjB,QAFM;AAGdD,MAAAA,cAAc,EAAdA;AAHc,KAAD,CAAf;AAKD,GA1B0B;AAAA;;IA4BrBK,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACX,IAAD;AAAA,SAAU,UAACC,MAAD,EAAY;AACpD,kBAA2BA,MAA3B;AAAA,QAAQW,cAAR,WAAQA,cAAR;AACA,QAAMC,oBAAoB,GAAGC,eAAG,CAACb,MAAD,EAAS,CAAC,QAAD,EAAW,gBAAX,CAAT,CAAhC;AACA,QAAI,CAACW,cAAD,IAAmB,CAACC,oBAAxB,EAA8C,OAAOZ,MAAP;;AAE9C,QAAIc,sBAAU,CAACF,oBAAD,CAAd,EAAsC;AACpCZ,MAAAA,MAAM,CAACe,MAAP,CAAcC,UAAd,CAAyBC,IAAzB,CAA8BpB,WAAW,CAACe,oBAAD,EAAuBb,IAAvB,CAAzC;AACD;;AAED,QAAIe,sBAAU,CAACH,cAAD,CAAd,EAAgC;AAC9BX,MAAAA,MAAM,GAAGkB,wCAAmB,CAACrB,WAAW,CAACc,cAAD,EAAiBZ,IAAjB,EAAuBC,MAAvB,CAAZ,EAA4CA,MAA5C,CAA5B;AACD,KAFD,MAEO;AACL,UAAI,CAACW,cAAL,EAAqB,OAAOX,MAAP;AACrBA,MAAAA,MAAM,CAACmB,IAAP,CAAYH,UAAZ,CAAuBC,IAAvB,CAA4B,UAAChB,KAAD,EAAQmB,UAAR;AAAA,eAAuBC,+CAAoB,CAACtB,IAAD,EAAOY,cAAP,EAAuBS,UAAvB,CAA3C;AAAA,OAA5B;AACD;;AAED,WAAOpB,MAAP;AACD,GAjB+B;AAAA;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getRendererComponent.js","sources":["../../../../src/plugins/custom-cell-renderer/getRendererComponent.tsx"],"sourcesContent":["import React from 'react';\nimport DSButton from '@elliemae/ds-button';\nimport { DSCheckbox, DSComboBox, DSRadio, DSTextBox, DSToggle } from '@elliemae/ds-form';\nimport DSDropdownMenu from '@elliemae/ds-dropdownmenu';\nimport * as renderers from '../../components/renderers';\n\nconst components = {\n DSButton,\n DSCheckbox,\n DSComboBox,\n DSRadio,\n DSTextBox,\n DSToggle,\n DSDropdownMenu,\n};\n\nconst getRendererComponent = ({ props }, { type = 'DSTextBox', handlers, ...rest }, { rowData }) => {\n const Component = components[type] || renderers[type];\n const { customHandlers, rowKey } = props;\n const mappedHandlers = {};\n\n Object.keys(handlers).forEach((key) => {\n mappedHandlers[handlers[key]] = () =>\n typeof customHandlers[key] === 'function' ? customHandlers[key](rowData, rowData[rowKey]) : null;\n });\n return <Component {...rowData} {...mappedHandlers} {...rest} />;\n};\n\nexport default getRendererComponent;\n"],"names":["components","DSButton","DSCheckbox","DSComboBox","DSRadio","DSTextBox","DSToggle","DSDropdownMenu","getRendererComponent","props","rowData","type","handlers","rest","Component","renderers","customHandlers","rowKey","mappedHandlers","Object","keys","forEach","key","React"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAMA,UAAU,GAAG;AACjBC,EAAAA,QAAQ,EAARA,4BADiB;AAEjBC,EAAAA,UAAU,EAAVA,iBAFiB;AAGjBC,EAAAA,UAAU,EAAVA,iBAHiB;AAIjBC,EAAAA,OAAO,EAAPA,cAJiB;AAKjBC,EAAAA,SAAS,EAATA,gBALiB;AAMjBC,EAAAA,QAAQ,EAARA,eANiB;AAOjBC,EAAAA,cAAc,EAAdA;AAPiB,CAAnB;;IAUMC,oBAAoB,GAAG,SAAvBA,oBAAuB,qBAAuE;AAAA,MAApEC,KAAoE,SAApEA,KAAoE;AAAA,MAAdC,OAAc,SAAdA,OAAc;;AAAA,uBAAzDC,IAAyD;AAAA,MAAzDA,IAAyD,0BAAlD,WAAkD;AAAA,MAArCC,QAAqC,QAArCA,QAAqC;AAAA,MAAxBC,IAAwB;;AAClG,MAAMC,SAAS,GAAGd,UAAU,CAACW,IAAD,CAAV,IAAoBI,oCAAS,CAACJ,IAAD,CAA/C;AACA,MAAQK,cAAR,GAAmCP,KAAnC,CAAQO,cAAR;AAAA,MAAwBC,MAAxB,GAAmCR,KAAnC,CAAwBQ,MAAxB;AACA,MAAMC,cAAc,GAAG,EAAvB;AAEAC,EAAAA,MAAM,CAACC,IAAP,CAAYR,QAAZ,EAAsBS,OAAtB,CAA8B,UAACC,GAAD,EAAS;AACrCJ,IAAAA,cAAc,CAACN,QAAQ,CAACU,GAAD,CAAT,CAAd,GAAgC;AAAA,aAC9B,OAAON,cAAc,CAACM,GAAD,CAArB,KAA+B,UAA/B,GAA4CN,cAAc,CAACM,GAAD,CAAd,CAAoBZ,OAApB,EAA6BA,OAAO,CAACO,MAAD,CAApC,CAA5C,GAA4F,IAD9D;AAAA,KAAhC;AAED,GAHD;AAIA,sBAAOM,wCAAC,SAAD,mCAAeb,OAAf,EAA4BQ,cAA5B,EAAgDL,IAAhD,EAAP;AACD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ComboBox.js","sources":["../../../../../src/plugins/editable/EditableComponents/ComboBox.tsx"],"sourcesContent":["import React, { Component } from 'react';\nimport { DSComboBox } from '@elliemae/ds-form';\n\nexport default class ComboBox extends Component {\n static defaultProps = {\n onValue: () => null,\n };\n\n constructor(props) {\n super(props);\n this.state = { value: props.value };\n }\n\n handleChange(value) {\n const { onValue } = this.props;\n\n // some how this is executed before handleBlur, and handleBlur before the value is set\n // causing the value to be the same as the prevProp\n // todo: find a better solution to this\n setTimeout(() => onValue(value), 1);\n this.setState({ value });\n }\n\n handleBlur() {\n const { onValue } = this.props;\n const { value } = this.state;\n onValue(value);\n }\n\n render() {\n const { value } = this.state;\n return (\n <DSComboBox\n {...this.props}\n menuIsOpen\n onBlur={this.handleBlur}\n onChange={this.handleChange}\n onClick={(e) => e.stopPropagation()}\n value={value}\n />\n );\n }\n}\n"],"names":["ComboBox","props","state","value","onValue","setTimeout","setState","React","DSComboBox","handleBlur","handleChange","e","stopPropagation","Component","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;IAGqBA;;;;;AAKnB,oBAAYC,KAAZ,EAAmB;AAAA;;AAAA;;AACjB,8BAAMA,KAAN;AACA,UAAKC,KAAL,GAAa;AAAEC,MAAAA,KAAK,EAAEF,KAAK,CAACE;AAAf,KAAb;AAFiB;AAAA;AAAA;AAGlB;;;;WAED,sBAAaA,KAAb,EAAoB;AAClB,UAAQC,OAAR,GAAoB,KAAKH,KAAzB,CAAQG,OAAR,CADkB;AAIlB;AACA;;AACAC,MAAAA,UAAU,CAAC;AAAA,eAAMD,OAAO,CAACD,KAAD,CAAb;AAAA,OAAD,EAAuB,CAAvB,CAAV;AACA,WAAKG,QAAL,CAAc;AAAEH,QAAAA,KAAK,EAALA;AAAF,OAAd;AACD;;;WAED,sBAAa;AACX,UAAQC,OAAR,GAAoB,KAAKH,KAAzB,CAAQG,OAAR;AACA,UAAQD,KAAR,GAAkB,KAAKD,KAAvB,CAAQC,KAAR;AACAC,MAAAA,OAAO,CAACD,KAAD,CAAP;AACD;;;WAED,kBAAS;AACP,UAAQA,KAAR,GAAkB,KAAKD,KAAvB,CAAQC,KAAR;AACA,0BACEI,wCAACC,iBAAD,mCACM,KAAKP,KADX;AAEE,QAAA,UAAU,MAFZ;AAGE,QAAA,MAAM,EAAE,KAAKQ,UAHf;AAIE,QAAA,QAAQ,EAAE,KAAKC,YAJjB;AAKE,QAAA,OAAO,EAAE,iBAACC,CAAD;AAAA,iBAAOA,CAAC,CAACC,eAAF,EAAP;AAAA,SALX;AAME,QAAA,KAAK,EAAET;AANT,SADF;AAUD;;;;EAtCmCU;;AAAjBb,SACZc,eAAe;AACpBV,EAAAA,OAAO,EAAE;AAAA,WAAM,IAAN;AAAA;AADW;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TextBox.js","sources":["../../../../../src/plugins/editable/EditableComponents/TextBox.tsx"],"sourcesContent":["/* eslint-disable react/prop-types */\n/* eslint-disable react/static-property-placement */\nimport React, { Component } from 'react';\nimport { DSTextBox } from '@elliemae/ds-form';\n\n// todo: redo with hooks\nexport default class TextBox extends Component {\n static defaultProps = {\n onValue: () => null,\n };\n\n constructor(props) {\n super(props);\n this.inputRef = React.createRef();\n this.state = { value: props.value };\n }\n\n componentDidMount() {\n setTimeout(() => {\n if (this.inputRef && this.inputRef.current) {\n this.inputRef.current.focus();\n }\n }, 50);\n }\n\n handleKeyUp({ key, target: { value } }) {\n const { onValue } = this.props;\n if (key === 'Enter') {\n onValue(value);\n }\n }\n\n handleKeyDown(e) {\n // PUI-2553 prevent form submit on `Enter` keypress\n if (e.key === 'Enter') {\n e.preventDefault();\n }\n }\n\n handleBlur(e) {\n const { onValue } = this.props;\n const {\n target: { value },\n } = e;\n onValue(value);\n }\n\n handleChange({ target: { value } }) {\n this.setState({ value });\n }\n\n render() {\n const { value } = this.state;\n return (\n <DSTextBox\n data-testid=\"ds-datagrids-editable-text-box\"\n {...this.props}\n innerRef={this.inputRef}\n onBlur={this.handleBlur}\n onChange={this.handleChange}\n onClick={(e) => e.stopPropagation()}\n onKeyUp={this.handleKeyUp}\n onKeyDown={this.handleKeyDown}\n value={value}\n />\n );\n }\n}\n"],"names":["TextBox","props","inputRef","React","createRef","state","value","setTimeout","current","focus","key","target","onValue","e","preventDefault","setState","DSTextBox","handleBlur","handleChange","stopPropagation","handleKeyUp","handleKeyDown","Component","defaultProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;IAMqBA;;;;;AAKnB,mBAAYC,KAAZ,EAAmB;AAAA;;AAAA;;AACjB,8BAAMA,KAAN;AACA,UAAKC,QAAL,gBAAgBC,yBAAK,CAACC,SAAN,EAAhB;AACA,UAAKC,KAAL,GAAa;AAAEC,MAAAA,KAAK,EAAEL,KAAK,CAACK;AAAf,KAAb;AAHiB;AAAA;AAAA;AAAA;AAAA;AAIlB;;;;WAED,6BAAoB;AAAA;;AAClBC,MAAAA,UAAU,CAAC,YAAM;AACf,YAAI,MAAI,CAACL,QAAL,IAAiB,MAAI,CAACA,QAAL,CAAcM,OAAnC,EAA4C;AAC1C,UAAA,MAAI,CAACN,QAAL,CAAcM,OAAd,CAAsBC,KAAtB;AACD;AACF,OAJS,EAIP,EAJO,CAAV;AAKD;;;WAED,2BAAwC;AAAA,UAA1BC,GAA0B,QAA1BA,GAA0B;AAAA,UAAXJ,KAAW,QAArBK,MAAqB,CAAXL,KAAW;AACtC,UAAQM,OAAR,GAAoB,KAAKX,KAAzB,CAAQW,OAAR;;AACA,UAAIF,GAAG,KAAK,OAAZ,EAAqB;AACnBE,QAAAA,OAAO,CAACN,KAAD,CAAP;AACD;AACF;;;WAED,uBAAcO,CAAd,EAAiB;AACf;AACA,UAAIA,CAAC,CAACH,GAAF,KAAU,OAAd,EAAuB;AACrBG,QAAAA,CAAC,CAACC,cAAF;AACD;AACF;;;WAED,oBAAWD,CAAX,EAAc;AACZ,UAAQD,OAAR,GAAoB,KAAKX,KAAzB,CAAQW,OAAR;AACA,UACYN,KADZ,GAEIO,CAFJ,CACEF,MADF,CACYL,KADZ;AAGAM,MAAAA,OAAO,CAACN,KAAD,CAAP;AACD;;;WAED,6BAAoC;AAAA,UAAXA,KAAW,SAArBK,MAAqB,CAAXL,KAAW;AAClC,WAAKS,QAAL,CAAc;AAAET,QAAAA,KAAK,EAALA;AAAF,OAAd;AACD;;;WAED,kBAAS;AACP,UAAQA,KAAR,GAAkB,KAAKD,KAAvB,CAAQC,KAAR;AACA,0BACEH,wCAACa,gBAAD;AACE,uBAAY;AADd,SAEM,KAAKf,KAFX;AAGE,QAAA,QAAQ,EAAE,KAAKC,QAHjB;AAIE,QAAA,MAAM,EAAE,KAAKe,UAJf;AAKE,QAAA,QAAQ,EAAE,KAAKC,YALjB;AAME,QAAA,OAAO,EAAE,iBAACL,CAAD;AAAA,iBAAOA,CAAC,CAACM,eAAF,EAAP;AAAA,SANX;AAOE,QAAA,OAAO,EAAE,KAAKC,WAPhB;AAQE,QAAA,SAAS,EAAE,KAAKC,aARlB;AASE,QAAA,KAAK,EAAEf;AATT,SADF;AAaD;;;;EA5DkCgB;;AAAhBtB,QACZuB,eAAe;AACpBX,EAAAA,OAAO,EAAE;AAAA,WAAM,IAAN;AAAA;AADW;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EditablePlugin.js","sources":["../../../../src/plugins/editable/EditablePlugin.tsx"],"sourcesContent":["import { useDerivedStateFromProps, toggleInObject } from '@elliemae/ds-utilities';\nimport createInstancePlugin from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { addEditableToCell, makeEditableConfig } from './decorateEditable';\n\nconst registerStateHook = (grid) => {\n const { rowKey = 'id', editingRows: editingRowsProp, onColumnRowEdited, onColumnRowEdit } = grid.props;\n const [editingRows, setEditingRows] = useDerivedStateFromProps(editingRowsProp || {});\n\n const activateEdit = (editParams) => {\n const { shouldRefocus } = grid.getInstance();\n const { rowData, columnIndex } = editParams;\n shouldRefocus.current = { forced: true, value: false };\n setEditingRows((prevEditingRows) => {\n onColumnRowEdit(editParams);\n return toggleInObject(prevEditingRows, rowData[rowKey], columnIndex);\n });\n };\n\n const editValue = ({ value, rowData, property, rowIndex }) => {\n setEditingRows({});\n onColumnRowEdited({\n value,\n rowData,\n property,\n rowIndex,\n });\n };\n\n return {\n state: { editingRows },\n actions: {\n activateEdit,\n editValue,\n },\n };\n};\n\nconst decorateColumn = (column, grid) => {\n const {\n props: { isColumnEditable = (col) => col.editable, customHandlers },\n } = grid;\n\n const editableConfig = makeEditableConfig(grid);\n\n return isColumnEditable(column)\n ? addEditableToCell(\n {\n column,\n config: editableConfig,\n handlers: customHandlers,\n },\n grid,\n )\n : column;\n};\n\nexport const EditablePlugin = createInstancePlugin('editable', {\n registerStateHook,\n decorateColumn,\n registerHotKeys(grid) {\n return {\n key: 'enter',\n handler: ({ rowIndex, cellIndex }) => {\n const {\n composedRows,\n decoratedColumns,\n actions: { activateEdit },\n props: { isColumnEditable },\n } = grid.getInstance();\n\n if (!isColumnEditable(decoratedColumns[cellIndex])) return;\n\n const rows = composedRows.rows || composedRows;\n const row = rows[rowIndex];\n if (!row) return;\n\n activateEdit({\n rowData: row,\n columnIndex: cellIndex,\n });\n },\n options: {\n keydown: false,\n keyup: true,\n },\n };\n },\n});\n"],"names":["registerStateHook","grid","props","rowKey","editingRowsProp","editingRows","onColumnRowEdited","onColumnRowEdit","useDerivedStateFromProps","setEditingRows","activateEdit","editParams","getInstance","shouldRefocus","rowData","columnIndex","current","forced","value","prevEditingRows","toggleInObject","editValue","property","rowIndex","state","actions","decorateColumn","column","isColumnEditable","col","editable","customHandlers","editableConfig","makeEditableConfig","addEditableToCell","config","handlers","EditablePlugin","createInstancePlugin","registerHotKeys","key","handler","cellIndex","composedRows","decoratedColumns","rows","row","options","keydown","keyup"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"decorateEditable.js","sources":["../../../../src/plugins/editable/decorateEditable.tsx"],"sourcesContent":["import React from 'react';\nimport * as edit from 'react-edit';\nimport { EditPencil } from '@elliemae/ds-icons';\nimport { cx } from '@elliemae/ds-utilities';\nimport { appendCellFormatter } from '@elliemae/ds-shared/useDataGrid/initColumnDefinition';\nimport getEditorComponent from './getEditorComponent';\n\nconst makeEditableConfig = (grid) =>\n edit.edit({\n isEditing: ({ columnIndex, rowData, column = {}, ...rest }) => {\n const {\n state: { editingRows },\n props: { rowKey },\n } = grid.getInstance();\n let isCustomEditing;\n\n if (typeof column.isEditing === 'function') {\n isCustomEditing = column.isEditing({\n columnIndex,\n rowData,\n column,\n ...rest,\n });\n }\n return editingRows[rowData[rowKey]] === columnIndex || column.alwaysEditing || isCustomEditing;\n },\n onActivate: () => null,\n onValue: (...args) => grid.getInstance().actions.editValue(...args),\n });\nconst addEditableToCell = ({ column, config, handlers }, grid) => {\n column.cell.transforms.push(config(getEditorComponent(column.customEditor, handlers)));\n column.cell.props.className = cx(\n column.cell.props.className,\n `editable${column.customEditor ? ' customEditor' : ''}`,\n );\n return appendCellFormatter(\n [\n (value, extraParams) => (\n <>\n <div\n onClick={(e) => {\n e.stopPropagation();\n grid.getInstance().actions.activateEdit(extraParams);\n }}\n onKeyUp={(e) => {\n e.stopPropagation();\n if (e.keyCode === 33) {\n grid.getInstance().actions.activateEdit(extraParams);\n }\n }}\n role=\"gridcell\"\n tabIndex={0}\n >\n {value}\n <EditPencil className=\"edit-pencil\" />\n <span className=\"edit-separator\"> </span>\n </div>\n </>\n ),\n ],\n column,\n );\n};\n\nexport { makeEditableConfig, addEditableToCell };\n"],"names":["makeEditableConfig","grid","edit","isEditing","columnIndex","rowData","column","rest","getInstance","editingRows","state","rowKey","props","isCustomEditing","alwaysEditing","onActivate","onValue","actions","editValue","addEditableToCell","config","handlers","cell","transforms","push","getEditorComponent","customEditor","className","cx","appendCellFormatter","value","extraParams","React","e","stopPropagation","activateEdit","keyCode","EditPencil"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOMA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,IAAD;AAAA,SACzBC,eAAI,CAACA,IAAL,CAAU;AACRC,IAAAA,SAAS,EAAE,yBAAoD;AAAA,UAAjDC,WAAiD,QAAjDA,WAAiD;AAAA,UAApCC,OAAoC,QAApCA,OAAoC;AAAA,6BAA3BC,MAA2B;AAAA,UAA3BA,MAA2B,4BAAlB,EAAkB;AAAA,UAAXC,IAAW;;AAC7D,8BAGIN,IAAI,CAACO,WAAL,EAHJ;AAAA,UACWC,WADX,qBACEC,KADF,CACWD,WADX;AAAA,UAEWE,MAFX,qBAEEC,KAFF,CAEWD,MAFX;;AAIA,UAAIE,eAAJ;;AAEA,UAAI,OAAOP,MAAM,CAACH,SAAd,KAA4B,UAAhC,EAA4C;AAC1CU,QAAAA,eAAe,GAAGP,MAAM,CAACH,SAAP;AAChBC,UAAAA,WAAW,EAAXA,WADgB;AAEhBC,UAAAA,OAAO,EAAPA,OAFgB;AAGhBC,UAAAA,MAAM,EAANA;AAHgB,WAIbC,IAJa,EAAlB;AAMD;;AACD,aAAOE,WAAW,CAACJ,OAAO,CAACM,MAAD,CAAR,CAAX,KAAiCP,WAAjC,IAAgDE,MAAM,CAACQ,aAAvD,IAAwED,eAA/E;AACD,KAjBO;AAkBRE,IAAAA,UAAU,EAAE;AAAA,aAAM,IAAN;AAAA,KAlBJ;AAmBRC,IAAAA,OAAO,EAAE;AAAA;;AAAA,aAAa,yBAAAf,IAAI,CAACO,WAAL,GAAmBS,OAAnB,EAA2BC,SAA3B,wCAAb;AAAA;AAnBD,GAAV,CADyB;AAAA;;IAsBrBC,iBAAiB,GAAG,SAApBA,iBAAoB,QAA+BlB,IAA/B,EAAwC;AAAA,MAArCK,MAAqC,SAArCA,MAAqC;AAAA,MAA7Bc,MAA6B,SAA7BA,MAA6B;AAAA,MAArBC,QAAqB,SAArBA,QAAqB;AAChEf,EAAAA,MAAM,CAACgB,IAAP,CAAYC,UAAZ,CAAuBC,IAAvB,CAA4BJ,MAAM,CAACK,mCAAkB,CAACnB,MAAM,CAACoB,YAAR,EAAsBL,QAAtB,CAAnB,CAAlC;AACAf,EAAAA,MAAM,CAACgB,IAAP,CAAYV,KAAZ,CAAkBe,SAAlB,GAA8BC,cAAE,CAC9BtB,MAAM,CAACgB,IAAP,CAAYV,KAAZ,CAAkBe,SADY,oBAEnBrB,MAAM,CAACoB,YAAP,GAAsB,eAAtB,GAAwC,EAFrB,EAAhC;AAIA,SAAOG,wCAAmB,CACxB,CACE,UAACC,KAAD,EAAQC,WAAR;AAAA,wBACEC,+FACEA;AACE,MAAA,OAAO,EAAE,iBAACC,CAAD,EAAO;AACdA,QAAAA,CAAC,CAACC,eAAF;AACAjC,QAAAA,IAAI,CAACO,WAAL,GAAmBS,OAAnB,CAA2BkB,YAA3B,CAAwCJ,WAAxC;AACD,OAJH;AAKE,MAAA,OAAO,EAAE,iBAACE,CAAD,EAAO;AACdA,QAAAA,CAAC,CAACC,eAAF;;AACA,YAAID,CAAC,CAACG,OAAF,KAAc,EAAlB,EAAsB;AACpBnC,UAAAA,IAAI,CAACO,WAAL,GAAmBS,OAAnB,CAA2BkB,YAA3B,CAAwCJ,WAAxC;AACD;AACF,OAVH;AAWE,MAAA,IAAI,EAAC,UAXP;AAYE,MAAA,QAAQ,EAAE;AAZZ,OAcGD,KAdH,eAeEE,wCAACK,kBAAD;AAAY,MAAA,SAAS,EAAC;AAAtB,MAfF,eAgBEL;AAAM,MAAA,SAAS,EAAC;AAAhB,WAhBF,CADF,CADF;AAAA,GADF,CADwB,EAyBxB1B,MAzBwB,CAA1B;AA2BD;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getEditorComponent.js","sources":["../../../../src/plugins/editable/getEditorComponent.tsx"],"sourcesContent":["/* eslint-disable react/display-name */\nimport React from 'react';\nimport { ComboBox, TextBox } from './EditableComponents';\n\nconst components = {\n DSComboBox: ComboBox,\n DSTextBox: TextBox,\n};\n\nconst getEditorComponent = (editorComponent = {}, handlers) => ({\n value,\n onValue,\n extraParameters,\n}) => {\n if (typeof editorComponent === 'function') {\n return editorComponent({\n value,\n onValue,\n customHandlers: handlers,\n ...extraParameters,\n });\n }\n\n const { type = 'DSTextBox', ...restEditorProps } = editorComponent;\n const Component = components[type];\n\n if (type === 'DSComboBox') {\n // TODO: remove this whole condition when combobox v3 is out and fully working without \"maxOptions\" parameter\n const maxOptions = restEditorProps?.options?.length || 100;\n return (\n <div style={{ zIndex: 0 }}>\n <Component\n autoFocus\n onValue={onValue}\n value={value}\n maxOptions={maxOptions}\n {...restEditorProps}\n />\n </div>\n );\n }\n\n return (\n <Component autoFocus onValue={onValue} value={value} {...restEditorProps} />\n );\n};\n\nexport default getEditorComponent;\n"],"names":["components","DSComboBox","ComboBox","DSTextBox","TextBox","getEditorComponent","editorComponent","handlers","value","onValue","extraParameters","customHandlers","type","restEditorProps","Component","maxOptions","options","length","React","zIndex"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAMA,UAAU,GAAG;AACjBC,EAAAA,UAAU,EAAEC,4CADK;AAEjBC,EAAAA,SAAS,EAAEC;AAFM,CAAnB;;IAKMC,kBAAkB,GAAG,SAArBA,kBAAqB;AAAA,MAACC,eAAD,uEAAmB,EAAnB;AAAA,MAAuBC,QAAvB;AAAA,SAAoC,gBAIzD;AAAA,QAHJC,KAGI,QAHJA,KAGI;AAAA,QAFJC,OAEI,QAFJA,OAEI;AAAA,QADJC,eACI,QADJA,eACI;;AACJ,QAAI,OAAOJ,eAAP,KAA2B,UAA/B,EAA2C;AACzC,aAAOA,eAAe;AACpBE,QAAAA,KAAK,EAALA,KADoB;AAEpBC,QAAAA,OAAO,EAAPA,OAFoB;AAGpBE,QAAAA,cAAc,EAAEJ;AAHI,SAIjBG,eAJiB,EAAtB;AAMD;;AAED,gCAAmDJ,eAAnD,CAAQM,IAAR;AAAA,QAAQA,IAAR,sCAAe,WAAf;AAAA,QAA+BC,eAA/B,gDAAmDP,eAAnD;;AACA,QAAMQ,SAAS,GAAGd,UAAU,CAACY,IAAD,CAA5B;;AAEA,QAAIA,IAAI,KAAK,YAAb,EAA2B;AAAA;;AACzB;AACA,UAAMG,UAAU,GAAG,CAAAF,eAAe,SAAf,IAAAA,eAAe,WAAf,qCAAAA,eAAe,CAAEG,OAAjB,gFAA0BC,MAA1B,KAAoC,GAAvD;AACA,0BACEC;AAAK,QAAA,KAAK,EAAE;AAAEC,UAAAA,MAAM,EAAE;AAAV;AAAZ,sBACED,wCAAC,SAAD;AACE,QAAA,SAAS,MADX;AAEE,QAAA,OAAO,EAAET,OAFX;AAGE,QAAA,KAAK,EAAED,KAHT;AAIE,QAAA,UAAU,EAAEO;AAJd,SAKMF,eALN,EADF,CADF;AAWD;;AAED,wBACEK,wCAAC,SAAD;AAAW,MAAA,SAAS,MAApB;AAAqB,MAAA,OAAO,EAAET,OAA9B;AAAuC,MAAA,KAAK,EAAED;AAA9C,OAAyDK,eAAzD,EADF;AAGD,GApC0B;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ExpandableColumn.js","sources":["../../../../src/plugins/expandable-grid/ExpandableColumn.tsx"],"sourcesContent":["/* eslint-disable react/display-name */\nimport React, { useRef } from 'react';\nimport { ArrowheadDown, ArrowheadRight } from '@elliemae/ds-icons';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport DSButton from '@elliemae/ds-button';\nimport DSTruncatedTooltipText from '@elliemae/ds-truncated-tooltip-text';\nimport { dataGridBlockName } from '../../blockNames';\nimport { RowSizes } from '../../rowSizes';\n\nconst blockName = `${dataGridBlockName}-expandable-column`;\n\n// todo: clean this when we move to css-js\nconst ExpandableColumnWrapper = aggregatedClasses('div')(blockName);\nconst LabelDescriptionWrapper = aggregatedClasses('div')(blockName, 'label-description-wrapper');\nconst Label = aggregatedClasses('span')(blockName, 'label');\nconst Description = aggregatedClasses('span')(blockName, 'description');\nconst ExtraColumnData = aggregatedClasses('div')(blockName, 'extra-column-data');\nconst ExpandableMasterWrapper = aggregatedClasses('div')(`${blockName}-master-wrapper`);\nconst ExpandableDetailsWrapper = aggregatedClasses('div')(`${blockName}-details-wrapper`);\n\nfunction ExpandableColumnCell({ label, description, isExpanded, expandableDetails, extraData, onToggleExpand }) {\n const ref = useRef();\n return (\n <ExpandableColumnWrapper ref={ref} tabindex={0}>\n <ExpandableMasterWrapper style={{ height: RowSizes.extend }}>\n <DSButton\n buttonType=\"text\"\n className=\"expandable-arrow\"\n icon={isExpanded ? <ArrowheadDown /> : <ArrowheadRight />}\n onClick={(e) => {\n onToggleExpand(e);\n if (ref && ref.current) {\n ref.current.focus();\n }\n }}\n size=\"s\"\n />\n <LabelDescriptionWrapper>\n <Label>\n <DSTruncatedTooltipText value={label} />\n </Label>\n <Description>\n <DSTruncatedTooltipText value={description} />\n </Description>\n </LabelDescriptionWrapper>\n <ExtraColumnData>{extraData}</ExtraColumnData>\n </ExpandableMasterWrapper>\n {isExpanded && <ExpandableDetailsWrapper>{expandableDetails}</ExpandableDetailsWrapper>}\n </ExpandableColumnWrapper>\n );\n}\n\nconst expandableColumnRenderer =\n ({ renderRowLabel, renderRowDescription, renderExtraData }) =>\n (value, { rowData, isExpanded }, grid) => {\n const {\n props: { renderExpandedDetails },\n actions: { toggleExpand },\n } = grid.getInstance();\n\n const expandableDetails = renderExpandedDetails({ rowData });\n return (\n <ExpandableColumnCell\n description={renderRowDescription({ rowData })}\n expandableDetails={expandableDetails}\n extraData={renderExtraData({ rowData })}\n isExpanded={isExpanded}\n label={renderRowLabel({ rowData })}\n onToggleExpand={() => toggleExpand(rowData)}\n />\n );\n };\nconst noop = () => null;\nexport default function createExpandableColumn({\n property,\n label,\n renderRowLabel = () => '----',\n renderRowDescription = noop,\n renderExtraData = noop,\n width,\n resizable,\n sortable,\n searchable,\n customRenderer,\n ...rest\n}) {\n return {\n ...rest,\n label,\n property,\n cell: {\n formatters: [\n expandableColumnRenderer({\n renderRowLabel,\n renderRowDescription,\n renderExtraData,\n }),\n ],\n },\n width: width || '50%',\n expandableColumn: true,\n resizable,\n sortable,\n searchable,\n };\n}\n"],"names":["blockName","dataGridBlockName","ExpandableColumnWrapper","aggregatedClasses","LabelDescriptionWrapper","Label","Description","ExtraColumnData","ExpandableMasterWrapper","ExpandableDetailsWrapper","ExpandableColumnCell","label","description","isExpanded","expandableDetails","extraData","onToggleExpand","ref","useRef","React","height","RowSizes","extend","DSButton","ArrowheadDown","ArrowheadRight","e","current","focus","DSTruncatedTooltipText","expandableColumnRenderer","renderRowLabel","renderRowDescription","renderExtraData","value","grid","rowData","getInstance","renderExpandedDetails","props","toggleExpand","actions","noop","createExpandableColumn","property","width","resizable","sortable","searchable","customRenderer","rest","cell","formatters","expandableColumn"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ExpandablePlugin.js","sources":["../../../../src/plugins/expandable-grid/ExpandablePlugin.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React, { useEffect, useMemo, useRef } from 'react';\nimport { cx, isFunction } from '@elliemae/ds-utilities';\nimport { VariableSizeList } from 'react-window';\nimport { ArrowheadDown, ArrowheadRight } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-button';\nimport createInstancePlugin from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { appendCellFormatter } from '@elliemae/ds-shared/useDataGrid/initColumnDefinition';\nimport ExpandedRow from './ExpandedRow';\nimport ExpandedRowExtra from './ExpandedRowExtra';\nimport { RowSizes } from '../../rowSizes';\nimport { useExpandGridState } from './useExpandGridState';\n\nconst getExpandedRowSizeBySubrows = ({ totalAmount, amountVisible, isShowingAll, size = 36 }) =>\n isShowingAll ? size * (totalAmount + 1) - 6 : size * (amountVisible + 1) + 32;\n\nconst ExpandedRows = {\n SingleColumn: ExpandedRow,\n Master: ExpandedRowExtra,\n};\n\nconst createExpandedRow = (type) => ExpandedRows[type] || ExpandedRows.Master;\n\nconst isExpandableSingleColumn = (columns) => columns.some((column) => column.expandableColumn);\n\nexport const ExpandablePlugin = createInstancePlugin('expandable', {\n registerStateHook: useExpandGridState,\n decorateGrid(grid) {\n const { decoratedColumns, columns } = grid.getInstance();\n const detailColumns = useMemo(\n () =>\n decoratedColumns\n .map((column) => ({\n ...column,\n customRenderer: column.detailCustomRenderer,\n }))\n .filter((col) => !col.expandableColumn),\n [columns],\n );\n return {\n detailColumns,\n };\n },\n\n decorateColumns(columns, grid) {\n if (isExpandableSingleColumn(columns)) return columns;\n // get first column from user\n const firstColumnIndex = columns.findIndex((column) => column.isUserColumn);\n const firstColumn = columns[firstColumnIndex];\n firstColumn.formatExpandable = true;\n\n return [\n ...columns.slice(0, firstColumnIndex),\n appendCellFormatter((value, { isExpanded, rowData }) => {\n const {\n actions: { toggleExpand },\n } = grid.getInstance();\n /*\n * should return only 2 elements ../custom-cell-renderer/addCustomRendererToCell.js\n * getRenderer it's checking that length to apply the custom render to value only\n */\n return (\n <>\n <DSButton\n buttonType=\"text\"\n className=\"expandable-arrow\"\n icon={isExpanded ? <ArrowheadDown /> : <ArrowheadRight />}\n onClick={(e) => {\n e.stopPropagation();\n toggleExpand(rowData);\n }}\n size=\"s\"\n />\n {value}\n </>\n );\n }, firstColumn),\n ...columns.slice(firstColumnIndex + 1),\n ];\n },\n\n getBodyProps(bodyProps, grid) {\n const {\n composedRows: rows,\n props: {\n rowKey,\n getChildrenRows,\n rowSize = 'normal',\n subrowSize = 'normal',\n getExpandedRowMinSize,\n getExpandedRowSize,\n expandableSubrowsVisible,\n },\n state: { expandedRows },\n } = grid.getInstance();\n const rowSizePx = RowSizes[rowSize];\n const subrowSizePx = RowSizes[subrowSize];\n const listRef = useRef();\n\n useEffect(() => {\n if (listRef.current) listRef.current.resetAfterIndex(0, true);\n });\n\n // implementation of expandable row single column with aggregation\n const getItemSize = (index) => {\n const rowData = rows[index];\n const key = rowData[rowKey];\n const children = getChildrenRows({ rowData });\n\n const expandedSize = getExpandedRowSize\n ? getExpandedRowSize(index, { rowData }) // https://jira.elliemae.io/browse/PUI-1659\n : getExpandedRowSizeBySubrows({\n totalAmount: children.length,\n amountVisible: children.length > expandableSubrowsVisible ? expandableSubrowsVisible : children.length,\n isShowingAll:\n children.length < expandableSubrowsVisible || (expandedRows[key] && expandedRows[key].showAllRows),\n size: subrowSizePx,\n });\n\n const expandedMinSize = isFunction(getExpandedRowMinSize) && getExpandedRowMinSize(index);\n\n // eslint-disable-next-line no-nested-ternary\n return expandedRows[key] ? (expandedMinSize > expandedSize ? expandedMinSize : expandedSize) : rowSizePx;\n };\n\n return {\n ...bodyProps,\n className: cx(bodyProps.className, 'expandable'),\n listComponent: VariableSizeList,\n listProps: { ref: listRef, itemSize: getItemSize },\n };\n },\n\n decorateRenderers(renderers, grid) {\n const Row = renderers.body.row;\n const Cell = renderers.body.cell;\n\n // eslint-disable-next-line react/display-name\n renderers.body.row = useMemo(() => {\n // todo: the expandable grid should be created from another specific grid component\n const expandedRowType = isExpandableSingleColumn(grid.decoratedColumns) ? 'SingleColumn' : 'Master';\n const ExpandedRowComponent = createExpandedRow(expandedRowType);\n // eslint-disable-next-line react/display-name\n return ({ isExpanded, ...rowProps }) => {\n if (isExpanded) {\n const {\n props: { detailColumns, getChildrenRows, renderRowDetails },\n composedRows,\n } = grid.getInstance();\n // https://jira.elliemae.io/browse/PUI-1667\n const rowData = composedRows[rowProps.index] ? composedRows[rowProps.index] : rowProps.rowData;\n return (\n <ExpandedRowComponent\n cellComponent={Cell}\n detailColumns={detailColumns}\n parentGrid={grid}\n renderRowDetails={renderRowDetails}\n rowComponent={Row}\n rowData={rowData}\n rowProps={{\n rowData,\n isExpanded,\n ...rowProps,\n }}\n rows={getChildrenRows({ rowData })}\n >\n {rowProps.children}\n </ExpandedRowComponent>\n );\n }\n return <Row {...rowProps} />;\n };\n }, []);\n\n return renderers;\n },\n\n getRowProps(rowProps, grid, { rowData }) {\n const {\n props: { rowKey },\n state: { expandedRows },\n } = grid.getInstance();\n const key = rowData[rowKey];\n const isExpanded = !!expandedRows[key];\n return {\n ...rowProps,\n className: cx(\n rowProps.className,\n Object.keys(expandedRows).length > 0 && 'expandable-row',\n isExpanded && 'expanded',\n ),\n isExpanded,\n showAllRows: expandedRows[key] && expandedRows[key].showAllRows,\n };\n },\n});\n"],"names":["getExpandedRowSizeBySubrows","totalAmount","amountVisible","isShowingAll","size","ExpandedRows","SingleColumn","ExpandedRow","Master","ExpandedRowExtra","createExpandedRow","type","isExpandableSingleColumn","columns","some","column","expandableColumn","ExpandablePlugin","createInstancePlugin","registerStateHook","useExpandGridState","decorateGrid","grid","getInstance","decoratedColumns","detailColumns","useMemo","map","customRenderer","detailCustomRenderer","filter","col","decorateColumns","firstColumnIndex","findIndex","isUserColumn","firstColumn","formatExpandable","slice","appendCellFormatter","value","isExpanded","rowData","toggleExpand","actions","React","DSButton","ArrowheadDown","ArrowheadRight","e","stopPropagation","getBodyProps","bodyProps","rows","composedRows","props","rowKey","getChildrenRows","rowSize","subrowSize","getExpandedRowMinSize","getExpandedRowSize","expandableSubrowsVisible","expandedRows","state","rowSizePx","RowSizes","subrowSizePx","listRef","useRef","useEffect","current","resetAfterIndex","getItemSize","index","key","children","expandedSize","length","showAllRows","expandedMinSize","isFunction","className","cx","listComponent","VariableSizeList","listProps","ref","itemSize","decorateRenderers","renderers","Row","body","row","Cell","cell","expandedRowType","ExpandedRowComponent","rowProps","renderRowDetails","getRowProps","Object","keys"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ExpandedRow.js","sources":["../../../../src/plugins/expandable-grid/ExpandedRow.tsx"],"sourcesContent":["/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport DSSeparator from '@elliemae/ds-separator';\nimport DSButton from '@elliemae/ds-button';\nimport styled from 'styled-components';\nimport { get } from '@elliemae/ds-utilities';\nimport deferComponentRender from '@elliemae/ds-shared/defer-render-hoc';\nimport useDataGrid from '@elliemae/ds-shared/useDataGrid';\nimport { PaginationPlugin } from '../pagination';\nimport BodyCell from '../../components/BodyCell';\nimport { defaultRenderers } from '../../components/renderers';\nimport TableBody from '../../components/TableBody';\nimport Table from '../../components/Table';\nimport { ColumnSizingPlugin } from '../column-sizing';\n\nconst DetailGrid = deferComponentRender(({ parentGrid, parentRowData, rows }) => {\n const { instanceRef, ...parentProps } = parentGrid.props;\n const grid = useDataGrid({\n uuid: parentGrid.getInstance().uuid,\n ...parentProps,\n columns: parentGrid\n .getInstance()\n .decoratedColumns.filter((col) => !col.expandableColumn)\n .map((c) => ({ ...c, expandableColumn: false })),\n rows,\n plugins: [ColumnSizingPlugin, PaginationPlugin],\n renderers: defaultRenderers,\n bindColumnsSizeTo: parentGrid.uuid,\n numRowsVisible: 'all',\n paginated: true,\n pagination: {\n perPage: rows.length,\n conditionalPagination: true,\n },\n parentRowData,\n });\n\n return (\n <Table {...grid}>\n <TableBody />\n </Table>\n );\n}, null);\n\nconst DetailsWrapper = styled.span`\n flex: 1;\n width: ${(props) => props.width}px;\n`;\n\nconst DetailGridWrapper = styled.div`\n display: flex;\n height: calc(100% - ${(props) => (props.allRowsVisible ? 18 : 60)}px);\n width: ${(props) => props.expandableGridDetailWidth}px;\n margin: 12px 0;\n`;\n\nfunction ExpandedRow({\n parentGrid,\n detailColumns,\n rowData,\n rows,\n rowProps,\n cellComponent: CellComponent,\n rowComponent: RowComponent,\n}) {\n const {\n decoratedColumns,\n actions: { toggleShowAllRows },\n state: { expandedRows },\n props: {\n rowKey,\n showMoreRowsText = 'SHOW ALL ROWS',\n showLessRowsText = 'SHOW LESS ROWS',\n expandableSubrowsVisible,\n },\n columnSizeService: { expandableGridDetailWidth },\n } = parentGrid.getInstance();\n\n const { showAllRows, ...restRowProps } = rowProps;\n return (\n <RowComponent {...restRowProps}>\n <BodyCell\n column={decoratedColumns[0]}\n columnIndex={0}\n component={CellComponent}\n grid={parentGrid}\n rowProps={{ rowData, ...rowProps }}\n />\n <DetailsWrapper width={expandableGridDetailWidth}>\n <DetailGridWrapper\n allRowsVisible={rows.length < expandableSubrowsVisible || get(expandedRows, [rowKey, 'showAllRows'])}\n expandableGridDetailWidth={expandableGridDetailWidth}\n >\n <DSSeparator dashed orientation=\"vertical\" />\n <DetailGrid\n detailColumns={detailColumns}\n parentGrid={parentGrid.getInstance()}\n parentRowData={rowData}\n rows={showAllRows ? rows : (rows || []).slice(0, expandableSubrowsVisible)}\n />\n </DetailGridWrapper>\n {rows.length > expandableSubrowsVisible && (\n <DSButton\n buttonType=\"text\"\n labelText={showAllRows ? showLessRowsText : showMoreRowsText}\n onClick={(e) => {\n e.stopPropagation();\n toggleShowAllRows(rowData);\n }}\n style={{ marginBottom: '10px' }}\n />\n )}\n </DetailsWrapper>\n </RowComponent>\n );\n}\n\nexport default ExpandedRow;\n"],"names":["DetailGrid","deferComponentRender","parentGrid","parentRowData","rows","props","instanceRef","parentProps","grid","useDataGrid","uuid","getInstance","columns","decoratedColumns","filter","col","expandableColumn","map","c","plugins","ColumnSizingPlugin","PaginationPlugin","renderers","defaultRenderers","bindColumnsSizeTo","numRowsVisible","paginated","pagination","perPage","length","conditionalPagination","React","Table","TableBody","DetailsWrapper","styled","span","width","DetailGridWrapper","div","allRowsVisible","expandableGridDetailWidth","ExpandedRow","detailColumns","rowData","rowProps","CellComponent","cellComponent","RowComponent","rowComponent","toggleShowAllRows","actions","expandedRows","state","rowKey","showMoreRowsText","showLessRowsText","expandableSubrowsVisible","columnSizeService","showAllRows","restRowProps","BodyCell","get","DSSeparator","slice","DSButton","e","stopPropagation","marginBottom"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ExpandedRowExtra.js","sources":["../../../../src/plugins/expandable-grid/ExpandedRowExtra.tsx"],"sourcesContent":["import React from 'react';\nimport { cx } from '@elliemae/ds-utilities';\nimport DSSeparator from '@elliemae/ds-separator';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { dataGridBlockName } from '../../blockNames';\n\nconst blockName = `${dataGridBlockName}-expanded-row`;\n\nconst DetailsWrapper = aggregatedClasses('div')(`${blockName}-details-wrapper`, null, () => ({\n 'ie-flex-basis-auto': true,\n}));\n\nfunction ExpandedRowExtra({ children, rowData, rowProps, rowComponent: RowComponent, renderRowDetails = () => null }) {\n return (\n <RowComponent {...rowProps} className={cx(rowProps.className, 'expanded-detail-row')}>\n <RowComponent className=\"master-row-expanded\">{children}</RowComponent>\n <DSSeparator dashed margin=\"xs\" />\n <DetailsWrapper>{renderRowDetails({ rowData })}</DetailsWrapper>\n </RowComponent>\n );\n}\n\nexport default ExpandedRowExtra;\n"],"names":["blockName","dataGridBlockName","DetailsWrapper","aggregatedClasses","ExpandedRowExtra","children","rowData","rowProps","RowComponent","rowComponent","renderRowDetails","React","cx","className","DSSeparator"],"mappings":";;;;;;;;;;;;;;;AAMA,IAAMA,SAAS,aAAMC,4BAAN,kBAAf;AAEA,IAAMC,cAAc,GAAGC,8BAAiB,CAAC,KAAD,CAAjB,WAA4BH,SAA5B,uBAAyD,IAAzD,EAA+D;AAAA,SAAO;AAC3F,0BAAsB;AADqE,GAAP;AAAA,CAA/D,CAAvB;;AAIA,SAASI,gBAAT,OAAsH;AAAA,MAA1FC,QAA0F,QAA1FA,QAA0F;AAAA,MAAhFC,OAAgF,QAAhFA,OAAgF;AAAA,MAAvEC,QAAuE,QAAvEA,QAAuE;AAAA,MAA/CC,YAA+C,QAA7DC,YAA6D;AAAA,mCAAjCC,gBAAiC;AAAA,MAAjCA,gBAAiC,sCAAd;AAAA,WAAM,IAAN;AAAA,GAAc;AACpH,sBACEC,wCAAC,YAAD,mCAAkBJ,QAAlB;AAA4B,IAAA,SAAS,EAAEK,cAAE,CAACL,QAAQ,CAACM,SAAV,EAAqB,qBAArB;AAAzC,mBACEF,wCAAC,YAAD;AAAc,IAAA,SAAS,EAAC;AAAxB,KAA+CN,QAA/C,CADF,eAEEM,wCAACG,+BAAD;AAAa,IAAA,MAAM,MAAnB;AAAoB,IAAA,MAAM,EAAC;AAA3B,IAFF,eAGEH,wCAAC,cAAD,QAAiBD,gBAAgB,CAAC;AAAEJ,IAAAA,OAAO,EAAPA;AAAF,GAAD,CAAjC,CAHF,CADF;AAOD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useExpandGridState.js","sources":["../../../../src/plugins/expandable-grid/useExpandGridState.tsx"],"sourcesContent":["import { isFunction,useExpandState } from '@elliemae/ds-utilities';\nimport { useState } from 'react';\n\nexport const useExpandGridState = grid => {\n const {\n composedRows,\n props: {\n expandedRows: expandedRowsProp = {},\n rowKey = 'id',\n onExpandRow,\n onToggleShowAllRows,\n onExpandChange,\n onExpandAll,\n onToggleExpand,\n onCollapseRow,\n },\n } = grid;\n\n const { state, actions } = useExpandState({\n items: composedRows,\n itemKey: rowKey,\n expanded: expandedRowsProp,\n onExpand: onExpandRow,\n onExpandChange,\n onExpandAll,\n onToggleExpand,\n onCollapse: onCollapseRow,\n });\n\n const [shouldRefocus, setShouldReFocus] = useState(false);\n const expandRow = row => actions.expand(row, { showAllRows: false });\n\n const toggleExpandAllRows = actions.toggleExpandAll;\n\n const collapseRow = actions.collapse;\n\n const toggleExpand = row => {\n setShouldReFocus(false);\n actions.toggleExpand(row, { showAllRows: false });\n };\n\n const toggleShowAllRows = row => {\n if (isFunction(onToggleShowAllRows)) {\n onToggleShowAllRows(row);\n } else {\n const key = row[rowKey];\n actions.expand(row, {\n showAllRows: state.expanded[key] && !state.expanded[key].showAllRows,\n });\n }\n };\n\n return {\n state: {\n expandedRows: state.expanded,\n isExpandedAll: state.isExpandedAll,\n shouldRefocus,\n },\n actions: {\n expandRow,\n toggleExpandAllRows,\n toggleExpand,\n toggleShowAllRows,\n collapseRow,\n },\n };\n};\n"],"names":["useExpandGridState","grid","composedRows","props","expandedRows","expandedRowsProp","rowKey","onExpandRow","onToggleShowAllRows","onExpandChange","onExpandAll","onToggleExpand","onCollapseRow","useExpandState","items","itemKey","expanded","onExpand","onCollapse","state","actions","useState","shouldRefocus","setShouldReFocus","expandRow","row","expand","showAllRows","toggleExpandAllRows","toggleExpandAll","collapseRow","collapse","toggleExpand","toggleShowAllRows","isFunction","key","isExpandedAll"],"mappings":";;;;;;;;;;;;IAGaA,kBAAkB,GAAG,SAArBA,kBAAqB,CAAAC,IAAI,EAAI;AACxC,MACEC,YADF,GAYID,IAZJ,CACEC,YADF;AAAA,oBAYID,IAZJ,CAEEE,KAFF;AAAA,0CAGIC,YAHJ;AAAA,MAGkBC,gBAHlB,sCAGqC,EAHrC;AAAA,uCAIIC,MAJJ;AAAA,MAIIA,MAJJ,mCAIa,IAJb;AAAA,MAKIC,WALJ,eAKIA,WALJ;AAAA,MAMIC,mBANJ,eAMIA,mBANJ;AAAA,MAOIC,cAPJ,eAOIA,cAPJ;AAAA,MAQIC,WARJ,eAQIA,WARJ;AAAA,MASIC,cATJ,eASIA,cATJ;AAAA,MAUIC,aAVJ,eAUIA,aAVJ;;AAcA,wBAA2BC,0BAAc,CAAC;AACxCC,IAAAA,KAAK,EAAEZ,YADiC;AAExCa,IAAAA,OAAO,EAAET,MAF+B;AAGxCU,IAAAA,QAAQ,EAAEX,gBAH8B;AAIxCY,IAAAA,QAAQ,EAAEV,WAJ8B;AAKxCE,IAAAA,cAAc,EAAdA,cALwC;AAMxCC,IAAAA,WAAW,EAAXA,WANwC;AAOxCC,IAAAA,cAAc,EAAdA,cAPwC;AAQxCO,IAAAA,UAAU,EAAEN;AAR4B,GAAD,CAAzC;AAAA,MAAQO,KAAR,mBAAQA,KAAR;AAAA,MAAeC,OAAf,mBAAeA,OAAf;;AAWA,kBAA0CC,cAAQ,CAAC,KAAD,CAAlD;AAAA;AAAA,MAAOC,aAAP;AAAA,MAAsBC,gBAAtB;;AACA,MAAMC,SAAS,GAAG,SAAZA,SAAY,CAAAC,GAAG;AAAA,WAAIL,OAAO,CAACM,MAAR,CAAeD,GAAf,EAAoB;AAAEE,MAAAA,WAAW,EAAE;AAAf,KAApB,CAAJ;AAAA,GAArB;;AAEA,MAAMC,mBAAmB,GAAGR,OAAO,CAACS,eAApC;AAEA,MAAMC,WAAW,GAAGV,OAAO,CAACW,QAA5B;;AAEA,MAAMC,YAAY,GAAG,SAAfA,YAAe,CAAAP,GAAG,EAAI;AAC1BF,IAAAA,gBAAgB,CAAC,KAAD,CAAhB;AACAH,IAAAA,OAAO,CAACY,YAAR,CAAqBP,GAArB,EAA0B;AAAEE,MAAAA,WAAW,EAAE;AAAf,KAA1B;AACD,GAHD;;AAKA,MAAMM,iBAAiB,GAAG,SAApBA,iBAAoB,CAAAR,GAAG,EAAI;AAC/B,QAAIS,sBAAU,CAAC1B,mBAAD,CAAd,EAAqC;AACnCA,MAAAA,mBAAmB,CAACiB,GAAD,CAAnB;AACD,KAFD,MAEO;AACL,UAAMU,GAAG,GAAGV,GAAG,CAACnB,MAAD,CAAf;AACAc,MAAAA,OAAO,CAACM,MAAR,CAAeD,GAAf,EAAoB;AAClBE,QAAAA,WAAW,EAAER,KAAK,CAACH,QAAN,CAAemB,GAAf,KAAuB,CAAChB,KAAK,CAACH,QAAN,CAAemB,GAAf,EAAoBR;AADvC,OAApB;AAGD;AACF,GATD;;AAWA,SAAO;AACLR,IAAAA,KAAK,EAAE;AACLf,MAAAA,YAAY,EAAEe,KAAK,CAACH,QADf;AAELoB,MAAAA,aAAa,EAAEjB,KAAK,CAACiB,aAFhB;AAGLd,MAAAA,aAAa,EAAbA;AAHK,KADF;AAMLF,IAAAA,OAAO,EAAE;AACPI,MAAAA,SAAS,EAATA,SADO;AAEPI,MAAAA,mBAAmB,EAAnBA,mBAFO;AAGPI,MAAAA,YAAY,EAAZA,YAHO;AAIPC,MAAAA,iBAAiB,EAAjBA,iBAJO;AAKPH,MAAAA,WAAW,EAAXA;AALO;AANJ,GAAP;AAcD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ExportDataPlugin.js","sources":["../../../../src/plugins/export-data/ExportDataPlugin.tsx"],"sourcesContent":["/* eslint-disable max-lines */\n/* eslint-disable indent */\nimport { get } from '@elliemae/ds-utilities';\nimport createInstancePlugin from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\n\nconst isVisible = (column) => {\n if (typeof column === 'undefined') {\n return false;\n }\n return typeof column.visible === 'undefined' || column.visible;\n};\n\nexport const getColumnValue = (row, property) => get(row, property);\nexport const getVisibleRowData = (row, columns) =>\n columns.reduce((result, column) => {\n const columnProperty = column.property;\n return isVisible(column)\n ? [\n ...result,\n getColumnValue(row, `_${columnProperty}`) ||\n getColumnValue(row, columnProperty),\n ]\n : result;\n }, []);\n\nconst defaultOptions = (uuid) => ({\n sheetName: 'SheetName',\n fileName: `datagrid-${uuid}`,\n type: 'csv',\n onlySelection: false,\n excludedColumns: undefined,\n});\n\nconst getOptions = (opts, uuid) => ({\n ...defaultOptions(uuid),\n ...opts,\n});\n\nconst getCellValue = (cell) => {\n if (cell === undefined || cell === null) return '';\n return cell;\n};\n\nexport const getExportedData = (rows, columns, range) => {\n const rowsRanged = range ? rows.slice(...range) : rows;\n const dataToExport = rowsRanged.map((row) => getVisibleRowData(row, columns));\n const columnsContent = columns\n .filter((c) => isVisible(c))\n .reduce(\n (acc, curr, idx) => `${acc}${idx === 0 ? '' : ','}${curr.label}`,\n '',\n );\n const rowsContent = dataToExport\n .map((e) =>\n e\n .map((r) => `\"${String(getCellValue(r)).replace(/\"/g, '\"\"')}\"`)\n .join(','),\n )\n .join('\\r\\n');\n const csvContent = `${columnsContent}\\r\\n${rowsContent}`;\n return csvContent;\n};\n\n// eslint-disable-next-line max-statements\nconst exportTo = (\n rows,\n columns,\n { range, fileName, type, excludedColumns },\n) => {\n if (excludedColumns) {\n // eslint-disable-next-line no-param-reassign\n columns = columns.filter((col) => !excludedColumns.includes(col.property));\n }\n const csvContent = getExportedData(rows, columns, range);\n\n const blob = new Blob([csvContent], { type: 'text/csv;charset=utf-8;' });\n if (navigator.msSaveBlob) {\n // IE 10+\n navigator.msSaveBlob(blob, `${fileName}.${type}`);\n } else {\n const link = document.createElement('a');\n if (link.download !== undefined) {\n // feature detection\n // Browsers that support HTML5 download attribute\n const url = URL.createObjectURL(blob);\n link.setAttribute('href', url);\n link.setAttribute('download', `${fileName}.${type}`);\n link.style.visibility = 'hidden';\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n }\n }\n};\n\nexport const ExportDataPlugin = createInstancePlugin('export-data', {\n decorateGrid(instance) {\n return {\n exportRows(opts = {}) {\n const {\n composedRows: rows,\n columns,\n uuid,\n props: { rowKey },\n state: { selection },\n } = instance.getInstance();\n const options = getOptions(opts, uuid);\n // check paginated rows\n let currentRows = rows.allRows || rows;\n if (opts.onlySelection) {\n const selectedRows = Object.keys(selection.selectedRows);\n currentRows = currentRows.filter((r) =>\n selectedRows.includes(String(r[rowKey])),\n );\n }\n\n exportTo(currentRows, columns, options);\n },\n exportVisibleRows(opts = {}) {\n const {\n composedRows: rows,\n columns,\n uuid,\n props: { rowKey },\n state: { selection },\n } = instance.getInstance();\n const options = getOptions(opts, uuid);\n\n // check paginated rows\n let currentRows = rows.rows || rows;\n if (opts.onlySelection) {\n const selectedRows = Object.keys(selection.selectedRows);\n currentRows = currentRows.filter((r) =>\n selectedRows.includes(String(r[rowKey])),\n );\n }\n\n exportTo(currentRows, columns, options);\n },\n };\n },\n});\n"],"names":["isVisible","column","visible","getColumnValue","row","property","get","getVisibleRowData","columns","reduce","result","columnProperty","defaultOptions","uuid","sheetName","fileName","type","onlySelection","excludedColumns","undefined","getOptions","opts","getCellValue","cell","getExportedData","rows","range","rowsRanged","slice","dataToExport","map","columnsContent","filter","c","acc","curr","idx","label","rowsContent","e","r","String","replace","join","csvContent","exportTo","col","includes","blob","Blob","navigator","msSaveBlob","link","document","createElement","download","url","URL","createObjectURL","setAttribute","style","visibility","body","appendChild","click","removeChild","ExportDataPlugin","createInstancePlugin","decorateGrid","instance","exportRows","getInstance","composedRows","rowKey","props","selection","state","options","currentRows","allRows","selectedRows","Object","keys","exportVisibleRows"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FilterablePlugin.js","sources":["../../../../src/plugins/filterable/FilterablePlugin.tsx"],"sourcesContent":["/* eslint-disable indent */\nimport { get, isFunction } from '@elliemae/ds-utilities';\nimport createInstancePlugin from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { addFilterToColumn } from './addFilterToColumn';\n\nimport filterRowsByQuery, {\n filterRowsByQueryGroup,\n} from './filtering-helper/filterRowsByQuery';\nimport { useFilterableState } from './useFilterableState';\n\nconst decorateColumn = (column, grid) => {\n const {\n props: {\n isFilterableColumnActive = (col) => col.searchable,\n onRemoveAllFilters,\n },\n actions: { addFilter, removeFilter },\n state: { query, filters },\n } = grid;\n\n return isFilterableColumnActive(column)\n ? addFilterToColumn(\n {\n grid,\n onAddFilter: addFilter,\n onRemoveFilter: removeFilter,\n onRemoveAllFilters,\n query,\n filters,\n },\n column,\n )\n : column;\n};\n\nconst composeRows = (rows, grid) => {\n const {\n props: { isDataFiltered, groupedRows },\n state: { query },\n composedRows,\n } = grid.getInstance();\n const nextRows = !groupedRows\n ? filterRowsByQuery(rows, query)\n : filterRowsByQueryGroup(rows, query, composedRows);\n\n return !isDataFiltered ? nextRows : rows;\n};\n\nexport const FilterablePlugin = createInstancePlugin('filterable', {\n registerStateHook: useFilterableState,\n decorateColumn,\n composeRows,\n registerHotKeys(grid) {\n return {\n key: 'ctrl+f',\n handler: ({ cellIndex }) => {\n const { decoratedColumns } = grid.getInstance();\n\n const column = decoratedColumns[cellIndex];\n const toggleMenuMethod = get(column, [\n 'filterMenu',\n 'current',\n 'toggleMenu',\n ]);\n if (isFunction(toggleMenuMethod)) toggleMenuMethod();\n },\n };\n },\n});\n"],"names":["decorateColumn","column","grid","props","isFilterableColumnActive","col","searchable","onRemoveAllFilters","actions","addFilter","removeFilter","state","query","filters","addFilterToColumn","onAddFilter","onRemoveFilter","composeRows","rows","getInstance","isDataFiltered","groupedRows","composedRows","nextRows","filterRowsByQuery","filterRowsByQueryGroup","FilterablePlugin","createInstancePlugin","registerStateHook","useFilterableState","registerHotKeys","key","handler","cellIndex","decoratedColumns","toggleMenuMethod","get","isFunction"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAUA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CAACC,MAAD,EAASC,IAAT,EAAkB;AACvC,oBAOIA,IAPJ,CACEC,KADF;AAAA,0CAEIC,wBAFJ;AAAA,MAEIA,wBAFJ,sCAE+B,UAACC,GAAD;AAAA,WAASA,GAAG,CAACC,UAAb;AAAA,GAF/B;AAAA,MAGIC,kBAHJ,eAGIA,kBAHJ;AAAA,sBAOIL,IAPJ,CAKEM,OALF;AAAA,MAKaC,SALb,iBAKaA,SALb;AAAA,MAKwBC,YALxB,iBAKwBA,YALxB;AAAA,oBAOIR,IAPJ,CAMES,KANF;AAAA,MAMWC,KANX,eAMWA,KANX;AAAA,MAMkBC,OANlB,eAMkBA,OANlB;AASA,SAAOT,wBAAwB,CAACH,MAAD,CAAxB,GACHa,sDAAiB,CACf;AACEZ,IAAAA,IAAI,EAAJA,IADF;AAEEa,IAAAA,WAAW,EAAEN,SAFf;AAGEO,IAAAA,cAAc,EAAEN,YAHlB;AAIEH,IAAAA,kBAAkB,EAAlBA,kBAJF;AAKEK,IAAAA,KAAK,EAALA,KALF;AAMEC,IAAAA,OAAO,EAAPA;AANF,GADe,EASfZ,MATe,CADd,GAYHA,MAZJ;AAaD,CAvBD;;AAyBA,IAAMgB,WAAW,GAAG,SAAdA,WAAc,CAACC,IAAD,EAAOhB,IAAP,EAAgB;AAClC,0BAIIA,IAAI,CAACiB,WAAL,EAJJ;AAAA,gDACEhB,KADF;AAAA,MACWiB,cADX,yBACWA,cADX;AAAA,MAC2BC,WAD3B,yBAC2BA,WAD3B;AAAA,MAEWT,KAFX,qBAEED,KAFF,CAEWC,KAFX;AAAA,MAGEU,YAHF,qBAGEA,YAHF;;AAKA,MAAMC,QAAQ,GAAG,CAACF,WAAD,GACbG,+DAAiB,CAACN,IAAD,EAAON,KAAP,CADJ,GAEba,2EAAsB,CAACP,IAAD,EAAON,KAAP,EAAcU,YAAd,CAF1B;AAIA,SAAO,CAACF,cAAD,GAAkBG,QAAlB,GAA6BL,IAApC;AACD,CAXD;;IAaaQ,gBAAgB,GAAGC,wCAAoB,CAAC,YAAD,EAAe;AACjEC,EAAAA,iBAAiB,EAAEC,wDAD8C;AAEjE7B,EAAAA,cAAc,EAAdA,cAFiE;AAGjEiB,EAAAA,WAAW,EAAXA,WAHiE;AAIjEa,EAAAA,eAJiE,2BAIjD5B,IAJiD,EAI3C;AACpB,WAAO;AACL6B,MAAAA,GAAG,EAAE,QADA;AAELC,MAAAA,OAAO,EAAE,uBAAmB;AAAA,YAAhBC,SAAgB,QAAhBA,SAAgB;;AAC1B,iCAA6B/B,IAAI,CAACiB,WAAL,EAA7B;AAAA,YAAQe,gBAAR,sBAAQA,gBAAR;;AAEA,YAAMjC,MAAM,GAAGiC,gBAAgB,CAACD,SAAD,CAA/B;AACA,YAAME,gBAAgB,GAAGC,eAAG,CAACnC,MAAD,EAAS,CACnC,YADmC,EAEnC,SAFmC,EAGnC,YAHmC,CAAT,CAA5B;AAKA,YAAIoC,sBAAU,CAACF,gBAAD,CAAd,EAAkCA,gBAAgB;AACnD;AAZI,KAAP;AAcD;AAnBgE,CAAf;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"addFilterToColumn.js","sources":["../../../../src/plugins/filterable/addFilterToColumn.tsx"],"sourcesContent":["import { createRef } from 'react';\nimport { mergeClassNameToColumnHeader } from '@elliemae/ds-shared/useDataGrid/initColumnDefinition';\nimport filterableFormatter from './filterableFormatter';\n\nexport const addFilterToColumn = (props, column) => {\n const filterMenuRef = createRef();\n column.header.formatters.push(\n filterableFormatter({ ...props, filterMenuRef }),\n );\n column.filterMenu = filterMenuRef;\n return mergeClassNameToColumnHeader('with-filtering', column);\n};\n"],"names":["addFilterToColumn","props","column","filterMenuRef","createRef","header","formatters","push","filterableFormatter","filterMenu","mergeClassNameToColumnHeader"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAIaA,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,KAAD,EAAQC,MAAR,EAAmB;AAClD,MAAMC,aAAa,gBAAGC,eAAS,EAA/B;AACAF,EAAAA,MAAM,CAACG,MAAP,CAAcC,UAAd,CAAyBC,IAAzB,CACEC,sCAAmB,iCAAMP,KAAN;AAAaE,IAAAA,aAAa,EAAbA;AAAb,KADrB;AAGAD,EAAAA,MAAM,CAACO,UAAP,GAAoBN,aAApB;AACA,SAAOO,iDAA4B,CAAC,gBAAD,EAAmBR,MAAnB,CAAnC;AACD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FilterableHeader.js","sources":["../../../../../src/plugins/filterable/components/FilterableHeader.tsx"],"sourcesContent":["/* eslint-disable no-param-reassign */\nimport React, { useCallback, useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { get, debounce ,useResizeObserver} from '@elliemae/ds-utilities';\nimport { useTheme } from '@elliemae/ds-system';\nimport getFilterMenuByType from './filterable-menus/getFilterMenuByType';\n\nconst blockName = 'data-grid-filter-header';\n\nconst Container = aggregatedClasses('div')(\n blockName,\n null,\n ({ showFilter }) => ({\n 'show-filter': showFilter,\n }),\n);\nconst FilterHeaderValue = aggregatedClasses('div')(blockName, 'value');\nconst FilterHeaderButton = aggregatedClasses('div')(blockName, 'button');\n\nexport default function FilterableHeader({\n column,\n value,\n columnData,\n onAddFilter,\n onRemoveFilter,\n filterMenuRef,\n onFilterMenuClose,\n onFilterMenuOpen,\n filters,\n isMulti,\n}) {\n const [isMenuOpened, setMenuOpened] = useState(false);\n const [headerWidth, setHeaderWidth] = useState();\n const debouncedWidthSetter = debounce(setHeaderWidth, 200);\n const { filterMenuMinWidth, filterMenuMaxWidth } = column;\n const theme = useTheme();\n const dropdownMinWidth =\n filterMenuMinWidth || Number(theme.space.xl.replace('px', '')) * 2;\n\n const defineHeaderWidth = ({ width }) => {\n let nextWidth = width + 16; // todo: use dimsum space once we convert it to JS\n if (nextWidth < dropdownMinWidth) nextWidth = dropdownMinWidth;\n if (filterMenuMaxWidth && nextWidth > filterMenuMaxWidth)\n nextWidth = filterMenuMaxWidth;\n return !isMenuOpened\n ? debouncedWidthSetter(nextWidth)\n : setHeaderWidth(nextWidth);\n };\n\n useEffect(() => {\n if (filterMenuRef) {\n filterMenuRef.current = {\n toggleMenu: () => setMenuOpened((prevState) => !prevState),\n };\n }\n }, [filterMenuRef]);\n\n useEffect(() => {\n if (!isMenuOpened) onFilterMenuClose(column);\n else onFilterMenuOpen(column);\n });\n\n const [ref] = useResizeObserver(defineHeaderWidth);\n const handleOpenMenu = useCallback((open) => {\n setMenuOpened(open);\n if (open) onFilterMenuOpen();\n }, []);\n const FilterMenuComponent = getFilterMenuByType(\n get(column, ['filter', 'type']),\n );\n return (\n <Container ref={ref} classProps={{ showFilter: isMenuOpened }}>\n <FilterHeaderValue className=\"header-value\">{value}</FilterHeaderValue>\n <FilterHeaderButton data-testid=\"data-grid-filter-header__button\">\n <FilterMenuComponent\n className=\"filter-header-menu\"\n column={column}\n filters={filters}\n isMenuOpened={isMenuOpened}\n isMulti={isMulti}\n menuProps={{\n options: columnData || [],\n style: { minWidth: headerWidth, maxWidth: filterMenuMaxWidth },\n zIndex: 100,\n }}\n onAddFilter={onAddFilter}\n onRemoveFilter={onRemoveFilter}\n onOpenMenu={handleOpenMenu}\n onClose={onFilterMenuClose}\n width={headerWidth}\n {...get(column, ['filter'], {})}\n />\n </FilterHeaderButton>\n </Container>\n );\n}\n\nFilterableHeader.propTypes = {\n column: PropTypes.any,\n value: PropTypes.any,\n columnData: PropTypes.any,\n onAddFilter: PropTypes.func,\n onRemoveFilter: PropTypes.func,\n filterMenuRef: PropTypes.any,\n onFilterMenuClose: PropTypes.func,\n onFilterMenuOpen: PropTypes.func,\n filters: PropTypes.arrayOf(PropTypes.shape({})),\n isMulti: PropTypes.bool,\n};\n"],"names":["blockName","Container","aggregatedClasses","showFilter","FilterHeaderValue","FilterHeaderButton","FilterableHeader","column","value","columnData","onAddFilter","onRemoveFilter","filterMenuRef","onFilterMenuClose","onFilterMenuOpen","filters","isMulti","useState","isMenuOpened","setMenuOpened","headerWidth","setHeaderWidth","debouncedWidthSetter","debounce","filterMenuMinWidth","filterMenuMaxWidth","theme","useTheme","dropdownMinWidth","Number","space","xl","replace","defineHeaderWidth","width","nextWidth","useEffect","current","toggleMenu","prevState","useResizeObserver","ref","handleOpenMenu","useCallback","open","FilterMenuComponent","getFilterMenuByType","get","React","options","style","minWidth","maxWidth","zIndex","propTypes","PropTypes","any","func","arrayOf","shape","bool"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DateRangeFilterMenu.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { DSControlledDateRangePicker } from '@elliemae/ds-controlled-form';\nimport DSPopper, { PopperPositions as Position } from '@elliemae/ds-popper';\nimport { DatePicker2 } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-button';\nimport moment from 'moment';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { DEFAULT_DATE_FORMAT } from './defaultDateFormat';\n\nconst blockname = 'date-range';\nconst Wrapper = aggregatedClasses('div')(blockname, 'wrapper');\nconst Header = aggregatedClasses('div')(blockname, 'header');\n\n// const randomString = (maxLength = 5) => Math.random().toString(36).slice(-maxLength);\n\nconst DateRangePickerContainer = ({ onChange = () => null, showHeader }) => {\n const [startDate, setStartDate] = useState('');\n const [endDate, setEndDate] = useState('');\n\n // For some reason it worked like this\n const [lastChangeWasPicker, setLastChangeWasPicker] = useState(false);\n\n useEffect(() => {\n const startMoment = moment(startDate);\n const endMoment = moment(endDate);\n if (\n lastChangeWasPicker &&\n startDate &&\n !startDate.includes('_') &&\n endDate &&\n !endDate.includes('_') &&\n endMoment.diff(startMoment) >= 0\n ) {\n onChange({ startDate: startMoment, endDate: endMoment });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [startDate, endDate, lastChangeWasPicker]);\n\n return (\n <Wrapper\n data-testid=\"date-range__wrapper\"\n onKeyDown={(e) => e.code === 'Enter' && setLastChangeWasPicker(true)}\n style={{ backgroundColor: 'white', boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)', width: '261px' }}\n >\n {showHeader && (\n <Header style={{ padding: '8px', display: 'flex', justifyContent: 'center' }}>\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(false);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(false);\n }}\n type=\"date-range-inputs\"\n />\n </Header>\n )}\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(true);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(true);\n }}\n type=\"date-range-picker-controller-only\"\n />\n </Wrapper>\n );\n};\n\nDateRangePickerContainer.propTypes = {\n onChange: PropTypes.func,\n showHeader: PropTypes.bool,\n};\n\nconst formatRangeDate = ({ startDate, endDate }, format = DEFAULT_DATE_FORMAT) => {\n const sameDay = startDate.isSame(endDate, 'day');\n if (sameDay) return `${endDate.format(format)}`;\n return `${startDate.format(format)} - ${endDate.format(format)}`;\n};\n\nfunction DateRangeFilterMenu({\n column,\n className,\n isMenuOpened = false,\n onOpenMenu = () => null,\n placement = Position.BOTTOM_END,\n onAddFilter = () => null,\n dateFormatter = formatRangeDate,\n showHeader = true,\n menuProps,\n}) {\n return (\n <DSPopper\n contentComponent={\n <div className={className}>\n <DateRangePickerContainer\n minimumNights={0}\n onChange={({ startDate, endDate }) => {\n startDate.startOf('day');\n endDate.endOf('day');\n onAddFilter(\n {\n group: column.property,\n label: column.label,\n value: dateFormatter({ startDate, endDate }),\n type: 'date', // todo: create constants for filter types\n filterParams: { start: startDate, end: endDate },\n transformRowValue: (value) => moment(value, column.dateFormat || DEFAULT_DATE_FORMAT),\n operator: 'range',\n },\n column,\n );\n onOpenMenu(false);\n }}\n showHeader={showHeader}\n />\n </div>\n }\n isOpen={isMenuOpened}\n onOpen={onOpenMenu}\n placement={placement}\n showArrow={false}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<DatePicker2 />}\n onClick={() => (!isMenuOpened ? onOpenMenu(true) : onOpenMenu(false))}\n size=\"s\"\n />\n }\n zIndex={menuProps.zIndex}\n />\n );\n}\n\nDateRangeFilterMenu.propTypes = {\n column: PropTypes.any,\n className: PropTypes.string,\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n placement: PropTypes.string,\n onAddFilter: PropTypes.func,\n dateFormatter: PropTypes.any,\n showHeader: PropTypes.bool,\n menuProps: PropTypes.any,\n};\n\nexport default DateRangeFilterMenu;\n"],"names":["blockname","Wrapper","aggregatedClasses","Header","DateRangePickerContainer","onChange","showHeader","useState","startDate","setStartDate","endDate","setEndDate","lastChangeWasPicker","setLastChangeWasPicker","useEffect","startMoment","moment","endMoment","includes","diff","React","e","code","backgroundColor","boxShadow","width","padding","display","justifyContent","DSControlledDateRangePicker","_start","_end","propTypes","PropTypes","func","bool","formatRangeDate","format","DEFAULT_DATE_FORMAT","sameDay","isSame","DateRangeFilterMenu","column","className","isMenuOpened","onOpenMenu","placement","Position","BOTTOM_END","onAddFilter","dateFormatter","menuProps","DSPopper","startOf","endOf","group","property","label","value","type","filterParams","start","end","transformRowValue","dateFormat","operator","DSButton","DatePicker2","zIndex","any","string"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SingleDateFilterMenu.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.tsx"],"sourcesContent":["import React, { useCallback, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport Grid from '@elliemae/ds-grid';\nimport { DSControlledDateTimePicker } from '@elliemae/ds-controlled-form';\nimport DSPopper, { PopperPositions as Position } from '@elliemae/ds-popper';\nimport { DatePicker2 } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-button';\nimport moment from 'moment';\nimport { DEFAULT_DATE_FORMAT } from './defaultDateFormat';\n\nconst SingleDatePickerContainer = ({ onChange = () => null, showHeader }) => {\n const [date, setDate] = useState('');\n\n const handleDateChange = useCallback(\n (data) => {\n if (!data.includes('_')) onChange(moment(data));\n setDate(data);\n },\n [onChange],\n );\n\n return (\n <div style={{ boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)' }}>\n {showHeader && (\n <Grid p=\"xxs\">\n <DSControlledDateTimePicker date={date} onDateChange={handleDateChange} type=\"date-inputs\" isClearable />\n </Grid>\n )}\n <DSControlledDateTimePicker date={date} onDateChange={handleDateChange} type=\"date-picker-controller-only\" />\n </div>\n );\n};\n\nSingleDatePickerContainer.propTypes = {\n onChange: PropTypes.func,\n showHeader: PropTypes.bool,\n};\n\nconst formatDate = (date, format = DEFAULT_DATE_FORMAT) => date.format(format);\n\nfunction SingleDateFilterMenu({\n column,\n className,\n isMenuOpened = false,\n onOpenMenu = () => null,\n placement = Position.BOTTOM_END,\n onAddFilter = () => null,\n dateFormatter = formatDate,\n showHeader = false,\n menuProps,\n}) {\n return (\n <DSPopper\n contentComponent={\n <div className={className} data-testid=\"date-single__wrapper\">\n <SingleDatePickerContainer\n minimumNights={0}\n onChange={(date) => {\n const t = date.clone();\n onAddFilter(\n {\n group: column.property,\n label: column.label,\n value: dateFormatter(date, column.dateFormat),\n type: 'date',\n operator: 'range',\n filterParams: {\n start: date.startOf('day'),\n end: t.endOf('day'),\n },\n transformRowValue: (value) => moment(value, column.dateFormat || DEFAULT_DATE_FORMAT),\n },\n column,\n );\n onOpenMenu(false);\n }}\n showHeader={showHeader}\n />\n </div>\n }\n isOpen={isMenuOpened}\n onOpen={onOpenMenu}\n placement={placement}\n showArrow={false}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<DatePicker2 />}\n onClick={() => (!isMenuOpened ? onOpenMenu(true) : onOpenMenu(false))}\n size=\"s\"\n />\n }\n zIndex={menuProps.zIndex}\n />\n );\n}\n\nSingleDateFilterMenu.propTypes = {\n column: PropTypes.any,\n className: PropTypes.string,\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n placement: PropTypes.string,\n onAddFilter: PropTypes.func,\n dateFormatter: PropTypes.any,\n showHeader: PropTypes.bool,\n menuProps: PropTypes.any,\n};\n\nexport default SingleDateFilterMenu;\n"],"names":["SingleDatePickerContainer","onChange","showHeader","useState","date","setDate","handleDateChange","useCallback","data","includes","moment","React","boxShadow","Grid","DSControlledDateTimePicker","propTypes","PropTypes","func","bool","formatDate","format","DEFAULT_DATE_FORMAT","SingleDateFilterMenu","column","className","isMenuOpened","onOpenMenu","placement","Position","BOTTOM_END","onAddFilter","dateFormatter","menuProps","DSPopper","t","clone","group","property","label","value","dateFormat","type","operator","filterParams","start","startOf","end","endOf","transformRowValue","DSButton","DatePicker2","zIndex","any","string"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAMA,yBAAyB,GAAG,SAA5BA,yBAA4B,OAA2C;AAAA,2BAAxCC,QAAwC;AAAA,MAAxCA,QAAwC,8BAA7B;AAAA,WAAM,IAAN;AAAA,GAA6B;AAAA,MAAjBC,UAAiB,QAAjBA,UAAiB;;AAC3E,kBAAwBC,cAAQ,CAAC,EAAD,CAAhC;AAAA;AAAA,MAAOC,IAAP;AAAA,MAAaC,OAAb;;AAEA,MAAMC,gBAAgB,GAAGC,iBAAW,CAClC,UAACC,IAAD,EAAU;AACR,QAAI,CAACA,IAAI,CAACC,QAAL,CAAc,GAAd,CAAL,EAAyBR,QAAQ,CAACS,0BAAM,CAACF,IAAD,CAAP,CAAR;AACzBH,IAAAA,OAAO,CAACG,IAAD,CAAP;AACD,GAJiC,EAKlC,CAACP,QAAD,CALkC,CAApC;AAQA,sBACEU;AAAK,IAAA,KAAK,EAAE;AAAEC,MAAAA,SAAS,EAAE;AAAb;AAAZ,KACGV,UAAU,iBACTS,wCAACE,wBAAD;AAAM,IAAA,CAAC,EAAC;AAAR,kBACEF,wCAACG,2CAAD;AAA4B,IAAA,IAAI,EAAEV,IAAlC;AAAwC,IAAA,YAAY,EAAEE,gBAAtD;AAAwE,IAAA,IAAI,EAAC,aAA7E;AAA2F,IAAA,WAAW;AAAtG,IADF,CAFJ,eAMEK,wCAACG,2CAAD;AAA4B,IAAA,IAAI,EAAEV,IAAlC;AAAwC,IAAA,YAAY,EAAEE,gBAAtD;AAAwE,IAAA,IAAI,EAAC;AAA7E,IANF,CADF;AAUD,CArBD;;AAuBAN,yBAAyB,CAACe,SAA1B,GAAsC;AACpCd,EAAAA,QAAQ,EAAEe,6BAAS,CAACC,IADgB;AAEpCf,EAAAA,UAAU,EAAEc,6BAAS,CAACE;AAFc,CAAtC;;AAKA,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAACf,IAAD;AAAA,MAAOgB,MAAP,uEAAgBC,mFAAhB;AAAA,SAAwCjB,IAAI,CAACgB,MAAL,CAAYA,MAAZ,CAAxC;AAAA,CAAnB;;AAEA,SAASE,oBAAT,QAUG;AAAA,MATDC,MASC,SATDA,MASC;AAAA,MARDC,SAQC,SARDA,SAQC;AAAA,iCAPDC,YAOC;AAAA,MAPDA,YAOC,mCAPc,KAOd;AAAA,+BANDC,UAMC;AAAA,MANDA,UAMC,iCANY;AAAA,WAAM,IAAN;AAAA,GAMZ;AAAA,8BALDC,SAKC;AAAA,MALDA,SAKC,gCALWC,wBAAQ,CAACC,UAKpB;AAAA,gCAJDC,WAIC;AAAA,MAJDA,WAIC,kCAJa;AAAA,WAAM,IAAN;AAAA,GAIb;AAAA,kCAHDC,aAGC;AAAA,MAHDA,aAGC,oCAHeZ,UAGf;AAAA,+BAFDjB,UAEC;AAAA,MAFDA,UAEC,iCAFY,KAEZ;AAAA,MADD8B,SACC,SADDA,SACC;AACD,sBACErB,wCAACsB,4BAAD;AACE,IAAA,gBAAgB,eACdtB;AAAK,MAAA,SAAS,EAAEa,SAAhB;AAA2B,qBAAY;AAAvC,oBACEb,wCAAC,yBAAD;AACE,MAAA,aAAa,EAAE,CADjB;AAEE,MAAA,QAAQ,EAAE,kBAACP,IAAD,EAAU;AAClB,YAAM8B,CAAC,GAAG9B,IAAI,CAAC+B,KAAL,EAAV;AACAL,QAAAA,WAAW,CACT;AACEM,UAAAA,KAAK,EAAEb,MAAM,CAACc,QADhB;AAEEC,UAAAA,KAAK,EAAEf,MAAM,CAACe,KAFhB;AAGEC,UAAAA,KAAK,EAAER,aAAa,CAAC3B,IAAD,EAAOmB,MAAM,CAACiB,UAAd,CAHtB;AAIEC,UAAAA,IAAI,EAAE,MAJR;AAKEC,UAAAA,QAAQ,EAAE,OALZ;AAMEC,UAAAA,YAAY,EAAE;AACZC,YAAAA,KAAK,EAAExC,IAAI,CAACyC,OAAL,CAAa,KAAb,CADK;AAEZC,YAAAA,GAAG,EAAEZ,CAAC,CAACa,KAAF,CAAQ,KAAR;AAFO,WANhB;AAUEC,UAAAA,iBAAiB,EAAE,2BAACT,KAAD;AAAA,mBAAW7B,0BAAM,CAAC6B,KAAD,EAAQhB,MAAM,CAACiB,UAAP,IAAqBnB,mFAA7B,CAAjB;AAAA;AAVrB,SADS,EAaTE,MAbS,CAAX;AAeAG,QAAAA,UAAU,CAAC,KAAD,CAAV;AACD,OApBH;AAqBE,MAAA,UAAU,EAAExB;AArBd,MADF,CAFJ;AA4BE,IAAA,MAAM,EAAEuB,YA5BV;AA6BE,IAAA,MAAM,EAAEC,UA7BV;AA8BE,IAAA,SAAS,EAAEC,SA9Bb;AA+BE,IAAA,SAAS,EAAE,KA/Bb;AAgCE,IAAA,gBAAgB,eACdhB,wCAACsC,4BAAD;AACE,MAAA,UAAU,EAAC,MADb;AAEE,MAAA,IAAI,eAAEtC,wCAACuC,mBAAD,OAFR;AAGE,MAAA,OAAO,EAAE;AAAA,eAAO,CAACzB,YAAD,GAAgBC,UAAU,CAAC,IAAD,CAA1B,GAAmCA,UAAU,CAAC,KAAD,CAApD;AAAA,OAHX;AAIE,MAAA,IAAI,EAAC;AAJP,MAjCJ;AAwCE,IAAA,MAAM,EAAEM,SAAS,CAACmB;AAxCpB,IADF;AA4CD;;AAED7B,oBAAoB,CAACP,SAArB,GAAiC;AAC/BQ,EAAAA,MAAM,EAAEP,6BAAS,CAACoC,GADa;AAE/B5B,EAAAA,SAAS,EAAER,6BAAS,CAACqC,MAFU;AAG/B5B,EAAAA,YAAY,EAAET,6BAAS,CAACE,IAHO;AAI/BQ,EAAAA,UAAU,EAAEV,6BAAS,CAACC,IAJS;AAK/BU,EAAAA,SAAS,EAAEX,6BAAS,CAACqC,MALU;AAM/BvB,EAAAA,WAAW,EAAEd,6BAAS,CAACC,IANQ;AAO/Bc,EAAAA,aAAa,EAAEf,6BAAS,CAACoC,GAPM;AAQ/BlD,EAAAA,UAAU,EAAEc,6BAAS,CAACE,IARS;AAS/Bc,EAAAA,SAAS,EAAEhB,6BAAS,CAACoC;AATU,CAAjC;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SingleRangeSwitcherMenu.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n DSControlledDateTimePicker,\n DSControlledDateRangePicker,\n DSControlledCheckbox,\n} from '@elliemae/ds-controlled-form';\nimport DSPopper, { PopperPositions as Position } from '@elliemae/ds-basic/Popper';\nimport { DatePicker2 } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-basic/Button';\nimport Grid from '@elliemae/ds-grid';\nimport moment from 'moment';\nimport styled from 'styled-components';\nimport { DEFAULT_DATE_FORMAT } from './defaultDateFormat';\n\nconst StyledGridWrapper = styled(Grid)`\n .notCurrentMonth {\n opacity: ${(props) => (props.enableOutsideDays ? '1' : '0')};\n pointer-events: ${(props) => (props.enableOutsideDays ? 'auto' : 'none')};\n }\n`;\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function\nconst noop = (...args) => {};\n\nconst SingleRangeSwitcherContainer = ({ onChange = noop, enableOutsideDays }) => {\n const [startDate, setStartDate] = useState('');\n const [endDate, setEndDate] = useState('');\n\n // For some reason it worked like this\n const [lastChangeWasPicker, setLastChangeWasPicker] = useState(false);\n\n const [isDateRange, setIsDateRange] = useState(false);\n\n useEffect(() => {\n const startMoment = moment(startDate);\n const endMoment = moment(endDate);\n if (\n lastChangeWasPicker &&\n startDate &&\n !startDate.includes('_') &&\n endDate &&\n !endDate.includes('_') &&\n endMoment.diff(startMoment) >= 0\n ) {\n onChange({ startDate: startMoment, endDate: endMoment });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [startDate, endDate, lastChangeWasPicker]);\n\n return (\n <StyledGridWrapper\n data-testid=\"date-single-range__wrapper\"\n style={{\n backgroundColor: 'white',\n boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)',\n width: '261px',\n display: 'grid',\n justifyContent: 'center',\n }}\n cols={['100%']}\n enableOutsideDays={enableOutsideDays}\n onKeyDown={(e) => e.code === 'Enter' && setLastChangeWasPicker(true)}\n >\n <Grid gutter=\"xxs\" alignItems=\"center\" p=\"xxs\">\n <DSControlledCheckbox\n checked={isDateRange}\n name=\"Date range\"\n label=\"Range\"\n id=\"date-range-switcher-id-internal\"\n onChange={() => {\n setIsDateRange(!isDateRange);\n setStartDate('');\n setEndDate('');\n }}\n />\n <div style={{ width: 'fit-content' }}>\n {isDateRange ? (\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(false);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(false);\n }}\n type=\"date-range-inputs\"\n />\n ) : (\n <DSControlledDateTimePicker\n date={startDate}\n onDateChange={(_date) => {\n setLastChangeWasPicker(false);\n setStartDate(_date);\n setEndDate(_date);\n }}\n type=\"date-inputs\"\n />\n )}\n </div>\n </Grid>\n <Grid>\n {isDateRange ? (\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(true);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(true);\n }}\n type=\"date-range-picker-controller-only\"\n />\n ) : (\n <DSControlledDateTimePicker\n date={startDate}\n onDateChange={(_date) => {\n setLastChangeWasPicker(true);\n setStartDate(_date);\n setEndDate(_date);\n }}\n type=\"date-picker-controller-only\"\n />\n )}\n </Grid>\n </StyledGridWrapper>\n );\n};\n\nSingleRangeSwitcherContainer.propTypes = {\n onChange: PropTypes.func,\n enableOutsideDays: PropTypes.bool,\n};\n\nconst formatRangeDate = ({ startDate, endDate }, format = DEFAULT_DATE_FORMAT) => {\n const sameDay = startDate.isSame(endDate, 'day');\n if (sameDay) return `${endDate.format(format)}`;\n return `${startDate.format(format)} - ${endDate.format(format)}`;\n};\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nfunction SingleRangeSwitcherMenu({\n column,\n className,\n isMenuOpened = false,\n onOpenMenu = noop,\n placement = Position.BOTTOM_END,\n onAddFilter = noop,\n dateFormatter = formatRangeDate,\n enableOutsideDays = true,\n menuProps,\n}): JSX.Element {\n return (\n <DSPopper\n contentComponent={\n <div className={className}>\n <SingleRangeSwitcherContainer\n enableOutsideDays={enableOutsideDays}\n onChange={({ startDate, endDate }) => {\n startDate.startOf('day');\n endDate.endOf('day');\n onAddFilter(\n {\n group: column.property,\n label: column.label,\n value: dateFormatter({ startDate, endDate }, column.format),\n type: 'date', // todo: create constants for filter types\n filterParams: { start: startDate, end: endDate },\n transformRowValue: (value) => moment(value, column.dateFormat || DEFAULT_DATE_FORMAT),\n operator: 'range',\n },\n column,\n );\n onOpenMenu(false);\n }}\n />\n </div>\n }\n isOpen={isMenuOpened}\n onOpen={onOpenMenu}\n placement={placement}\n showArrow={false}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<DatePicker2 />}\n onClick={() => (!isMenuOpened ? onOpenMenu(true) : onOpenMenu(false))}\n size=\"s\"\n />\n }\n zIndex={menuProps.zIndex}\n />\n );\n}\n\nSingleRangeSwitcherMenu.propTypes = {\n column: PropTypes.any,\n className: PropTypes.string,\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n placement: PropTypes.string,\n onAddFilter: PropTypes.func,\n dateFormatter: PropTypes.any,\n enableOutsideDays: PropTypes.bool,\n menuProps: PropTypes.any,\n};\n\nexport default SingleRangeSwitcherMenu;\n"],"names":["StyledGridWrapper","styled","Grid","props","enableOutsideDays","noop","SingleRangeSwitcherContainer","onChange","useState","startDate","setStartDate","endDate","setEndDate","lastChangeWasPicker","setLastChangeWasPicker","isDateRange","setIsDateRange","useEffect","startMoment","moment","endMoment","includes","diff","React","backgroundColor","boxShadow","width","display","justifyContent","e","code","DSControlledCheckbox","DSControlledDateRangePicker","_start","_end","DSControlledDateTimePicker","_date","propTypes","PropTypes","func","bool","formatRangeDate","format","DEFAULT_DATE_FORMAT","sameDay","isSame","SingleRangeSwitcherMenu","column","className","isMenuOpened","onOpenMenu","placement","Position","BOTTOM_END","onAddFilter","dateFormatter","menuProps","DSPopper","startOf","endOf","group","property","label","value","type","filterParams","start","end","transformRowValue","dateFormat","operator","DSButton","DatePicker2","zIndex","any","string"],"mappings":"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"}
|