@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":"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","zIndex"],"mappings":";;;;;;;;;;;;;;;;;;;AAIA,IAAMA,UAAU,GAAG;AACjBC,EAAAA,UAAU,EAAEC,QADK;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,4BAAmDP,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,0BACE;AAAK,QAAA,KAAK,EAAE;AAAEC,UAAAA,MAAM,EAAE;AAAV;AAAZ,sBACE,oBAAC,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,wBACE,oBAAC,SAAD;AAAW,MAAA,SAAS,MAApB;AAAqB,MAAA,OAAO,EAAEJ,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","height","RowSizes","extend","e","current","focus","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","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","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","get","slice","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","cx","className"],"mappings":";;;;;;;AAMA,IAAMA,SAAS,aAAMC,iBAAN,kBAAf;AAEA,IAAMC,cAAc,GAAGC,iBAAiB,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,sBACE,oBAAC,YAAD,eAAkBH,QAAlB;AAA4B,IAAA,SAAS,EAAEI,EAAE,CAACJ,QAAQ,CAACK,SAAV,EAAqB,qBAArB;AAAzC,mBACE,oBAAC,YAAD;AAAc,IAAA,SAAS,EAAC;AAAxB,KAA+CP,QAA/C,CADF,eAEE,oBAAC,WAAD;AAAa,IAAA,MAAM,MAAnB;AAAoB,IAAA,MAAM,EAAC;AAA3B,IAFF,eAGE,oBAAC,cAAD,QAAiBK,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,cAAc,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,QAAQ,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,UAAU,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,iBAAiB,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,iBAAiB,CAACN,IAAD,EAAON,KAAP,CADJ,GAEba,sBAAsB,CAACP,IAAD,EAAON,KAAP,EAAcU,YAAd,CAF1B;AAIA,SAAO,CAACF,cAAD,GAAkBG,QAAlB,GAA6BL,IAApC;AACD,CAXD;;IAaaQ,gBAAgB,GAAGC,oBAAoB,CAAC,YAAD,EAAe;AACjEC,EAAAA,iBAAiB,EAAEC,kBAD8C;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,GAAG,CAACnC,MAAD,EAAS,CACnC,YADmC,EAEnC,SAFmC,EAGnC,YAHmC,CAAT,CAA5B;AAKA,YAAIoC,UAAU,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,SAAS,EAA/B;AACAF,EAAAA,MAAM,CAACG,MAAP,CAAcC,UAAd,CAAyBC,IAAzB,CACEC,mBAAmB,iCAAMP,KAAN;AAAaE,IAAAA,aAAa,EAAbA;AAAb,KADrB;AAGAD,EAAAA,MAAM,CAACO,UAAP,GAAoBN,aAApB;AACA,SAAOO,4BAA4B,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","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","e","code","backgroundColor","boxShadow","width","padding","display","justifyContent","_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","startOf","endOf","group","property","label","value","type","filterParams","start","end","transformRowValue","dateFormat","operator","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","boxShadow","propTypes","PropTypes","func","bool","formatDate","format","DEFAULT_DATE_FORMAT","SingleDateFilterMenu","column","className","isMenuOpened","onOpenMenu","placement","Position","BOTTOM_END","onAddFilter","dateFormatter","menuProps","t","clone","group","property","label","value","dateFormat","type","operator","filterParams","start","startOf","end","endOf","transformRowValue","zIndex","any","string"],"mappings":"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"}
|
|
@@ -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","backgroundColor","boxShadow","width","display","justifyContent","e","code","_start","_end","_date","propTypes","PropTypes","func","bool","formatRangeDate","format","DEFAULT_DATE_FORMAT","sameDay","isSame","SingleRangeSwitcherMenu","column","className","isMenuOpened","onOpenMenu","placement","Position","BOTTOM_END","onAddFilter","dateFormatter","menuProps","startOf","endOf","group","property","label","value","type","filterParams","start","end","transformRowValue","dateFormat","operator","zIndex","any","string"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TextFilterMenu.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/TextFilterMenu.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { compact } from 'lodash';\nimport DSDropdownMenu from '@elliemae/ds-dropdownmenu';\nimport DSButton from '@elliemae/ds-button';\nimport { PopperPositions as Position } from '@elliemae/ds-popper';\nimport { Menu, MenuCombobox } from '@elliemae/ds-menu';\nimport { SearchSmall } from '@elliemae/ds-icons';\n\nfunction TextFilterMenu({\n column,\n menuStyle = {},\n className,\n filters = [],\n isMenuOpened = false,\n onOpenMenu = () => null,\n onClose = () => null,\n placement = Position.BOTTOM_END,\n menuProps = {},\n onAddFilter = () => null,\n onRemoveFilter = () => null,\n maxOptions = 10,\n isMulti = false,\n}) {\n const { options, ...otherMenuProps } = menuProps;\n\n const generateOption = (option, idx) => <Menu.ItemCheckbox key={idx} label={option.label} name={option.id} />;\n\n const renderOptions = (arr) => arr.map(generateOption);\n\n const filtersForColumn = filters.filter((f) => f.group === column.property);\n\n const initialSelectedOptions = filtersForColumn.map((f) => f.value);\n\n const [selected, setSelected] = useState(initialSelectedOptions);\n\n React.useEffect(() => {\n const filtersForColumn2 = filters.filter((f) => f.group === column.property);\n setSelected(filtersForColumn2.map((f) => f.value));\n }, [filters]);\n\n const filterGroup = column.searchBy || column.property;\n\n const onCloseMulti = () => {\n let nextFilters = [...filters];\n const shouldRemove = [];\n // if selected doesn't includes item, then we have to remove the filter\n // but given that we are maintaining state here and updating the grid state\n // is not implemented on useFilterableState, we have to do this in 2 traverses\n // as doing it in one gives trouble when removing and adding at the same time.\n initialSelectedOptions.forEach((item) => {\n if (!selected.includes(item)) {\n nextFilters = nextFilters.filter((filter) => !(filter.group === filterGroup && filter.value === item));\n shouldRemove.push({ group: filterGroup, pill: { value: item } });\n }\n });\n shouldRemove.forEach((removedFilter) => {\n onRemoveFilter({\n ...removedFilter,\n nextFilters,\n });\n });\n selected.forEach((item) => {\n // if initialSelectedOptions includes item, then we do nothing\n if (!initialSelectedOptions.includes(item)) {\n onAddFilter(\n {\n group: filterGroup,\n label: column.label,\n value: item,\n operator: column?.filter?.operator || 'contains',\n transformRowValue: column.valueTransformation,\n },\n column,\n );\n }\n });\n onClose();\n };\n\n return (\n <DSDropdownMenu\n closeMenuOnItemSelection\n contentStyle={menuStyle}\n customMenu={\n isMulti ? (\n <Menu containerProps={{ id: 'text-filter-menu-multiple' }} className=\"dg-multiple-filter\" visible>\n <Menu.SelectionGroup\n active={selected}\n onSelect={(newValues) => {\n setSelected(newValues);\n }}\n focusOnOpen\n multi\n searchable\n >\n {renderOptions(options)}\n </Menu.SelectionGroup>\n </Menu>\n ) : (\n <MenuCombobox\n {...otherMenuProps}\n className={className}\n dropdownFilterOptions={{\n ...column.dropdownFilterOptions,\n maxOptions,\n }}\n maxWidth={column.filterMenuMaxWidth}\n minWidth={column.filterMenuMinWidth}\n onSelectMenuItem={(selectedValue) => {\n if (selectedValue) {\n onAddFilter(\n {\n group: column.searchBy || column.property,\n label: column.label,\n value: selectedValue,\n operator: column?.filter?.operator || 'contains',\n transformRowValue: column.valueTransformation,\n },\n column,\n );\n onOpenMenu(false);\n }\n }}\n />\n )\n }\n isOpen={isMenuOpened}\n maxWidth={column.filterMenuMaxWidth}\n menuProps={menuProps}\n minWidth={column.filterMenuMinWidth}\n onOpenMenu={onOpenMenu}\n onClose={isMulti ? onCloseMulti : onClose}\n options={compact(options)}\n placement={placement}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<SearchSmall />}\n onClick={() => (isMenuOpened ? onOpenMenu(false) : onOpenMenu(true))}\n size=\"s\"\n />\n }\n />\n );\n}\n\nTextFilterMenu.propTypes = {\n column: PropTypes.any,\n menuStyle: PropTypes.shape({}),\n className: PropTypes.string,\n filters: PropTypes.arrayOf(PropTypes.shape({})),\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n onClose: PropTypes.func,\n placement: PropTypes.string,\n menuProps: PropTypes.shape({}),\n onAddFilter: PropTypes.func,\n onRemoveFilter: PropTypes.func,\n maxOptions: PropTypes.number,\n isMulti: PropTypes.bool,\n};\n\nexport default TextFilterMenu;\n"],"names":["TextFilterMenu","column","menuStyle","className","filters","isMenuOpened","onOpenMenu","onClose","placement","Position","BOTTOM_END","menuProps","onAddFilter","onRemoveFilter","maxOptions","isMulti","options","otherMenuProps","generateOption","option","idx","label","id","renderOptions","arr","map","filtersForColumn","filter","f","group","property","initialSelectedOptions","value","useState","selected","setSelected","React","useEffect","filtersForColumn2","filterGroup","searchBy","onCloseMulti","nextFilters","shouldRemove","forEach","item","includes","push","pill","removedFilter","operator","transformRowValue","valueTransformation","newValues","dropdownFilterOptions","filterMenuMaxWidth","filterMenuMinWidth","selectedValue","compact","propTypes","PropTypes","any","shape","string","arrayOf","bool","func","number"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"defaultDateFormat.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/defaultDateFormat.tsx"],"sourcesContent":["export const DEFAULT_DATE_FORMAT = 'MM/DD/YYYY';\n"],"names":["DEFAULT_DATE_FORMAT"],"mappings":"IAAaA,mBAAmB,GAAG;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getFilterMenuByType.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/getFilterMenuByType.tsx"],"sourcesContent":["import DateRangeFilterMenu from './DateRangeFilterMenu';\nimport SingleDateFilterMenu from './SingleDateFilterMenu'; // implement\nimport SingleRangeDateSwitcher from './SingleRangeSwitcherMenu'; // implement\nimport TextFilterMenu from './TextFilterMenu';\n\nconst ComponentTypes = {\n 'date-range': DateRangeFilterMenu,\n 'single-date': SingleDateFilterMenu,\n 'date-switcher': SingleRangeDateSwitcher,\n string: TextFilterMenu,\n};\n\nexport default function getFilterMenuByType(type) {\n return ComponentTypes[type] || ComponentTypes.string;\n}\n"],"names":["ComponentTypes","DateRangeFilterMenu","SingleDateFilterMenu","SingleRangeDateSwitcher","string","TextFilterMenu","getFilterMenuByType","type"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,cAAc,GAAG;AACrB,gBAAcC,mBADO;AAErB,iBAAeC,oBAFM;AAGrB,mBAAiBC,uBAHI;AAIrBC,EAAAA,MAAM,EAAEC;AAJa,CAAvB;AAOe,SAASC,mBAAT,CAA6BC,IAA7B,EAAmC;AAChD,SAAOP,cAAc,CAACO,IAAD,CAAd,IAAwBP,cAAc,CAACI,MAA9C;AACD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"filterableFormatter.js","sources":["../../../../src/plugins/filterable/filterableFormatter.tsx"],"sourcesContent":["/* eslint-disable react/display-name */\nimport React from 'react';\nimport FilterableHeader from './components/FilterableHeader';\nimport { getFilterLabels, getFilterLabelsGroup } from './helper';\n\nfunction FilterableFormatter({\n grid,\n onAddFilter,\n onRemoveFilter,\n query,\n filterMenuRef,\n}) {\n return (value, { column }) => {\n const {\n rows,\n composedRows,\n props: { groupedRows, groupedBy, onFilterMenuClose, onFilterMenuOpen },\n state: { filters },\n } = grid.getInstance();\n\n let rowsToUse = composedRows;\n if (column.filter && column.filter.isMulti) {\n rowsToUse = rows;\n }\n\n const filteredLabels =\n groupedRows && !groupedBy\n ? getFilterLabelsGroup(column, rows, query)\n : getFilterLabels(column, rowsToUse.rows || rowsToUse, query);\n\n const columnData = column.filterOptions || filteredLabels;\n return (\n <FilterableHeader\n column={column}\n columnData={columnData}\n filters={filters}\n filterMenuRef={filterMenuRef}\n onAddFilter={onAddFilter}\n onFilterMenuClose={onFilterMenuClose}\n onFilterMenuOpen={onFilterMenuOpen}\n onRemoveFilter={onRemoveFilter}\n isMulti={column.filter && column.filter.isMulti}\n value={value}\n />\n );\n };\n}\n\nexport default FilterableFormatter;\n"],"names":["FilterableFormatter","grid","onAddFilter","onRemoveFilter","query","filterMenuRef","value","column","getInstance","rows","composedRows","props","groupedRows","groupedBy","onFilterMenuClose","onFilterMenuOpen","filters","state","rowsToUse","filter","isMulti","filteredLabels","getFilterLabelsGroup","getFilterLabels","columnData","filterOptions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAKA,SAASA,mBAAT,OAMG;AAAA,MALDC,IAKC,QALDA,IAKC;AAAA,MAJDC,WAIC,QAJDA,WAIC;AAAA,MAHDC,cAGC,QAHDA,cAGC;AAAA,WAFDC,KAEC;AAAA,UADDC,aACC,QADDA;AAEA,SAAO,UAACC,KAAD,SAAuB;AAAA,QAAbC,MAAa,SAAbA,MAAa;;AAC5B,4BAKIN,IAAI,CAACO,WAAL,EALJ;AAAA,QACEC,IADF,qBACEA,IADF;AAAA,QAEEC,YAFF,qBAEEA,YAFF;AAAA,kDAGEC,KAHF;AAAA,QAGWC,WAHX,yBAGWA,WAHX;AAAA,QAGwBC,SAHxB,yBAGwBA,SAHxB;AAAA,QAGmCC,iBAHnC,yBAGmCA,iBAHnC;AAAA,QAGsDC,gBAHtD,yBAGsDA,gBAHtD;AAAA,QAIWC,OAJX,qBAIEC,KAJF,CAIWD,OAJX;;AAOA,QAAIE,SAAS,GAAGR,YAAhB;;AACA,QAAIH,MAAM,CAACY,MAAP,IAAiBZ,MAAM,CAACY,MAAP,CAAcC,OAAnC,EAA4C;AAC1CF,MAAAA,SAAS,GAAGT,IAAZ;AACD;;AAED,QAAMY,cAAc,GAClBT,WAAW,IAAI,CAACC,SAAhB,GACIS,oBAAoB,CAACf,MAAD,EAASE,IAAT,CADxB,GAEIc,eAAe,CAAChB,MAAD,EAASW,SAAS,CAACT,IAAV,IAAkBS,SAA3B,CAHrB;AAKA,QAAMM,UAAU,GAAGjB,MAAM,CAACkB,aAAP,IAAwBJ,cAA3C;AACA,wBACE,oBAAC,gBAAD;AACE,MAAA,MAAM,EAAEd,MADV;AAEE,MAAA,UAAU,EAAEiB,UAFd;AAGE,MAAA,OAAO,EAAER,OAHX;AAIE,MAAA,aAAa,EAAEX,aAJjB;AAKE,MAAA,WAAW,EAAEH,WALf;AAME,MAAA,iBAAiB,EAAEY,iBANrB;AAOE,MAAA,gBAAgB,EAAEC,gBAPpB;AAQE,MAAA,cAAc,EAAEZ,cARlB;AASE,MAAA,OAAO,EAAEI,MAAM,CAACY,MAAP,IAAiBZ,MAAM,CAACY,MAAP,CAAcC,OAT1C;AAUE,MAAA,KAAK,EAAEd;AAVT,MADF;AAcD,GAjCD;AAkCD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"filterRowsByQuery.js","sources":["../../../../../src/plugins/filterable/filtering-helper/filterRowsByQuery.tsx"],"sourcesContent":["import { isFunction } from '@elliemae/ds-utilities';\nimport strategiesOperators from './strategiesOperators';\n\nconst getRuleStrategyOperator = rule =>\n rule.strategy || strategiesOperators(rule.operator);\n\nconst executeFilterStrategy = (rule, row) => {\n const { value, field, transform, transformRowValue } = rule;\n if (field === 'all')\n return Object.values(row).some(colValue =>\n strategiesOperators('contains')(colValue, value),\n );\n const rowValue = row[field];\n const transformedValue = isFunction(transform) ? transform(value) : value;\n const transformedRowValue = isFunction(transformRowValue)\n ? transformRowValue(rowValue)\n : rowValue;\n\n const filterStrategy = getRuleStrategyOperator(rule);\n return filterStrategy(transformedRowValue, transformedValue);\n};\n\nconst filterByRules = (rules, condition = 'AND') => row =>\n condition === 'AND'\n ? rules.reduce(\n (isFiltered, rule) =>\n rule.rules && rule.rules.length\n ? isFiltered && filterByRules(rule.rules, rule.condition)(row)\n : isFiltered && executeFilterStrategy(rule, row),\n true,\n )\n : rules.some(rule =>\n rule.rules && rule.rules.length\n ? filterByRules(rule.rules, rule.condition)(row)\n : executeFilterStrategy(rule, row),\n );\n\nexport function filterRowsByQueryGroup(rows, query, composedRows) {\n if (query && query.rules && query.rules.length === 0) return rows;\n const newRows = [];\n const parentMap = {};\n composedRows.forEach(parentRow => {\n if (parentRow.isGroup) {\n newRows.push({\n ...parentRow,\n _filtered: true,\n });\n } else if (\n !parentRow.isGroup &&\n filterByRules(query.rules, query.condition)(parentRow.data)\n ) {\n newRows.push({\n ...parentRow,\n _filtered: true,\n });\n parentMap[parentRow.parentNode.id] = true;\n }\n });\n\n return newRows.filter(r => {\n if (r.isGroup && !parentMap[r.id]) return false;\n return true;\n });\n}\n\nexport default function filterRowsByQuery(rows, query) {\n return rows.filter(filterByRules(query.rules, query.condition));\n}\n"],"names":["getRuleStrategyOperator","rule","strategy","strategiesOperators","operator","executeFilterStrategy","row","value","field","transform","transformRowValue","Object","values","some","colValue","rowValue","transformedValue","isFunction","transformedRowValue","filterStrategy","filterByRules","rules","condition","reduce","isFiltered","length","filterRowsByQueryGroup","rows","query","composedRows","newRows","parentMap","forEach","parentRow","isGroup","push","_filtered","data","parentNode","id","filter","r","filterRowsByQuery"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"strategiesOperators.js","sources":["../../../../../src/plugins/filterable/filtering-helper/strategiesOperators.tsx"],"sourcesContent":["import compare from 'comparejs';\n\nexport default op =>\n ({\n range: (rowValue, { start, end }) => start <= rowValue && end >= rowValue,\n equal: (value1, value2) => compare.id(value1, value2),\n greaterThan: compare.gt,\n lessThan: compare.lt,\n contains: (rowValue, value) =>\n String(rowValue)\n .toLowerCase()\n .indexOf(String(value).toLowerCase()) !== -1,\n }[op] || compare.id);\n"],"names":["op","range","rowValue","start","end","equal","value1","value2","compare","id","greaterThan","gt","lessThan","lt","contains","value","String","toLowerCase","indexOf"],"mappings":";;AAEA,2BAAe,UAAAA,EAAE;AAAA,SACd;AACCC,IAAAA,KAAK,EAAE,eAACC,QAAD;AAAA,UAAaC,KAAb,QAAaA,KAAb;AAAA,UAAoBC,GAApB,QAAoBA,GAApB;AAAA,aAA8BD,KAAK,IAAID,QAAT,IAAqBE,GAAG,IAAIF,QAA1D;AAAA,KADR;AAECG,IAAAA,KAAK,EAAE,eAACC,MAAD,EAASC,MAAT;AAAA,aAAoBC,OAAO,CAACC,EAAR,CAAWH,MAAX,EAAmBC,MAAnB,CAApB;AAAA,KAFR;AAGCG,IAAAA,WAAW,EAAEF,OAAO,CAACG,EAHtB;AAICC,IAAAA,QAAQ,EAAEJ,OAAO,CAACK,EAJnB;AAKCC,IAAAA,QAAQ,EAAE,kBAACZ,QAAD,EAAWa,KAAX;AAAA,aACRC,MAAM,CAACd,QAAD,CAAN,CACGe,WADH,GAEGC,OAFH,CAEWF,MAAM,CAACD,KAAD,CAAN,CAAcE,WAAd,EAFX,MAE4C,CAAC,CAHrC;AAAA;AALX,IASCjB,EATD,KASQQ,OAAO,CAACC,EAVF;AAAA,CAAjB;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"helper.js","sources":["../../../../src/plugins/filterable/helper.tsx"],"sourcesContent":["import {\n isFunction,\n uniqBy,\n get,\n groupBy,\n property,\n} from '@elliemae/ds-utilities';\n\nexport const getFilterLabel = (column, value) =>\n column.filterLabels ? column.filterLabels[value] || value : value;\n\nexport const getFilterLabels = (column, rows) =>\n uniqBy(rows, property(column.searchBy || column.property))\n .map((row) => {\n const value = get(row, column.searchBy || column.property);\n if (value === undefined) return {};\n const rowColumnValue = String(\n get(row, column.searchBy || column.property),\n );\n if (isFunction(column.valueTransformation)) {\n const nextValue = column.valueTransformation(rowColumnValue);\n return { id: nextValue, label: nextValue };\n }\n const label = getFilterLabel(column, rowColumnValue);\n return { id: rowColumnValue || label, label };\n })\n .filter((row) => row.id)\n .filter((row) => {\n if (row.id.startsWith) return !row.id.startsWith('grouped-by');\n return true;\n });\n\nexport const getFilterLabelsGroup = (column, rows) => {\n let flat = [];\n rows.forEach((r) => {\n if (r.children) {\n flat = [...flat, ...r.children];\n }\n });\n return getFilterLabels(column, flat);\n};\n\nexport function getFilterValue(filter, column) {\n const { value } = filter;\n\n if (!column) return value;\n\n const { filterOptions, filterLabels } = column;\n\n if (filterOptions) {\n const foundOption = column.filterOptions.filter(\n (option) => option.id === value,\n )[0];\n if (foundOption) return foundOption.label;\n return value;\n }\n if (filterLabels) {\n return filterLabels[value];\n }\n\n return value;\n}\n\nexport function buildFilterArray(newFilter, filters) {\n // if (newFilter.type && newFilter.type === 'date') return [...filters.slice(1), newFilter]\n return uniqBy([...filters, newFilter], (v) => [v.group, v.value].join());\n}\n\nexport const groupFilters = (filters) =>\n filters.filter((filter) => !filter.fixed);\n\nfunction parseFilterToRule(filter) {\n return {\n ...filter,\n value: filter.filterParams || filter.value,\n field: filter.group,\n };\n}\n\nexport function parseFiltersToQuery(filters) {\n const groupedFilters = groupBy(\n groupFilters(filters),\n (filter) => filter.group,\n );\n return Object.keys(groupedFilters).reduce(\n (queryResult, field) => {\n const filter = groupedFilters[field];\n if (Array.isArray(filter) && filter.length > 1) {\n // create query group with 'OR' condition\n queryResult.rules.push({\n condition: 'OR',\n rules: filter.map(parseFilterToRule),\n });\n } else {\n queryResult.rules.push(parseFilterToRule(filter[0]));\n }\n return queryResult;\n },\n { condition: 'AND', rules: [] },\n );\n}\n"],"names":["getFilterLabel","column","value","filterLabels","getFilterLabels","rows","uniqBy","property","searchBy","map","row","get","undefined","rowColumnValue","String","isFunction","valueTransformation","nextValue","id","label","filter","startsWith","getFilterLabelsGroup","flat","forEach","r","children","getFilterValue","filterOptions","foundOption","option","buildFilterArray","newFilter","filters","v","group","join","groupFilters","fixed","parseFilterToRule","filterParams","field","parseFiltersToQuery","groupedFilters","groupBy","Object","keys","reduce","queryResult","Array","isArray","length","rules","push","condition"],"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":"useFilterableState.js","sources":["../../../../src/plugins/filterable/useFilterableState.tsx"],"sourcesContent":["import { useMemo, useState, useEffect } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\nimport {\n buildFilterArray,\n getFilterValue,\n parseFiltersToQuery,\n} from './helper';\n\nconst noop = () => null;\n\nexport function useFilterableState(grid) {\n const {\n filters: filtersProp,\n onAddFilter = noop,\n onRemoveFilter = noop,\n onRemoveAllFilters = noop,\n onFiltersChange = noop,\n } = grid.props;\n\n const [filters, setFilters] = useState(filtersProp || []);\n\n useEffect(() => {\n if (filtersProp && filtersProp !== filters) {\n setFilters(filtersProp);\n }\n }, [filtersProp]);\n\n const queryFromFilters = useMemo(() => parseFiltersToQuery(filters || []), [\n filters,\n ]);\n\n const handleFiltersChange = (nextFilters) => {\n const {\n refs: { body },\n } = grid.getInstance();\n body.current.scrollTop = 0;\n setFilters(nextFilters);\n grid.observeRows((rows) =>\n onFiltersChange(nextFilters, queryFromFilters, rows),\n );\n };\n\n const addFilter = (filter, column) => {\n let hasBeenCalled = false;\n const trimmedFilter = {\n ...filter,\n value: String(filter.value).trim(),\n };\n /* eslint-disable indent */\n const parsedFilter = !filter.group\n ? {\n ...trimmedFilter,\n value: String(filter.value).trim(),\n group: 'all',\n label: 'All',\n id: uuidv4(),\n }\n : {\n ...trimmedFilter,\n value: String(filter.value).trim(),\n id: uuidv4(),\n label: (column && column.filterLabel) || trimmedFilter.label,\n originalProperty: column.originalProperty || column.property,\n customValue: getFilterValue(trimmedFilter, column),\n };\n /* eslint-enable indent */\n setFilters((prevFilters) => {\n // This was setted for an issue that was recalling this function on the handleFiltersChange\n if (hasBeenCalled) {\n return;\n }\n hasBeenCalled = true;\n\n const nextFilters = buildFilterArray(parsedFilter, prevFilters);\n handleFiltersChange(nextFilters, true);\n onAddFilter(parsedFilter, nextFilters, column);\n });\n };\n\n const removeFilter = ({ group, pill, nextFilters }) => {\n onRemoveFilter(group, pill.value, nextFilters);\n handleFiltersChange(nextFilters);\n };\n\n const removeAllFilters = () => {\n onRemoveAllFilters();\n handleFiltersChange([]);\n };\n return {\n actions: {\n addFilter,\n removeFilter,\n removeAllFilters,\n },\n state: {\n query: queryFromFilters,\n filters,\n },\n };\n}\n"],"names":["noop","useFilterableState","grid","props","filtersProp","filters","onAddFilter","onRemoveFilter","onRemoveAllFilters","onFiltersChange","useState","setFilters","useEffect","queryFromFilters","useMemo","parseFiltersToQuery","handleFiltersChange","nextFilters","getInstance","body","refs","current","scrollTop","observeRows","rows","addFilter","filter","column","hasBeenCalled","trimmedFilter","value","String","trim","parsedFilter","group","label","id","uuidv4","filterLabel","originalProperty","property","customValue","getFilterValue","prevFilters","buildFilterArray","removeFilter","pill","removeAllFilters","actions","state","query"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GroupingByPlugin.js","sources":["../../../../src/plugins/grouping-by/GroupingByPlugin.tsx"],"sourcesContent":["import createInstancePlugin from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { groupBy } from 'lodash';\n\nconst groupedByData = (groupedBy, composedRows) => {\n const grouped = groupBy(composedRows, groupedBy);\n return Object.keys(grouped).map((c, key) => ({\n id: `grouped-by-${groupedBy}-${key}`,\n key: groupedBy,\n value: c,\n children: grouped[c],\n _isGroup: true,\n isGroup: true,\n }));\n};\n\nexport const GroupingByPlugin = createInstancePlugin('groupedByRows', {\n decorateGrid(grid) {\n const {\n composedRows,\n props: { groupedBy },\n } = grid.getInstance();\n grid.composedRows = groupedBy\n ? groupedByData(groupedBy, composedRows)\n : composedRows;\n return grid;\n },\n});\n"],"names":["groupedByData","groupedBy","composedRows","grouped","groupBy","Object","keys","map","c","key","id","value","children","_isGroup","isGroup","GroupingByPlugin","createInstancePlugin","decorateGrid","grid","getInstance","props"],"mappings":";;;AAGA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAACC,SAAD,EAAYC,YAAZ,EAA6B;AACjD,MAAMC,OAAO,GAAGC,OAAO,CAACF,YAAD,EAAeD,SAAf,CAAvB;AACA,SAAOI,MAAM,CAACC,IAAP,CAAYH,OAAZ,EAAqBI,GAArB,CAAyB,UAACC,CAAD,EAAIC,GAAJ;AAAA,WAAa;AAC3CC,MAAAA,EAAE,uBAAgBT,SAAhB,cAA6BQ,GAA7B,CADyC;AAE3CA,MAAAA,GAAG,EAAER,SAFsC;AAG3CU,MAAAA,KAAK,EAAEH,CAHoC;AAI3CI,MAAAA,QAAQ,EAAET,OAAO,CAACK,CAAD,CAJ0B;AAK3CK,MAAAA,QAAQ,EAAE,IALiC;AAM3CC,MAAAA,OAAO,EAAE;AANkC,KAAb;AAAA,GAAzB,CAAP;AAQD,CAVD;;IAYaC,gBAAgB,GAAGC,oBAAoB,CAAC,eAAD,EAAkB;AACpEC,EAAAA,YADoE,wBACvDC,IADuD,EACjD;AACjB,4BAGIA,IAAI,CAACC,WAAL,EAHJ;AAAA,QACEjB,YADF,qBACEA,YADF;AAAA,QAEWD,SAFX,qBAEEmB,KAFF,CAEWnB,SAFX;;AAIAiB,IAAAA,IAAI,CAAChB,YAAL,GAAoBD,SAAS,GACzBD,aAAa,CAACC,SAAD,EAAYC,YAAZ,CADY,GAEzBA,YAFJ;AAGA,WAAOgB,IAAP;AACD;AAVmE,CAAlB;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GroupingPlugin.js","sources":["../../../../src/plugins/grouping-grid/GroupingPlugin.tsx"],"sourcesContent":["/* eslint-disable max-lines */\n/* eslint-disable no-underscore-dangle */\nimport React, { useMemo } from 'react';\nimport createInstancePlugin from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { VariableSizeList } from 'react-window';\nimport { walkTreeStrategy } from './walkStrategy';\nimport { RowSizes } from '../../rowSizes';\nimport { dataGridBlockName } from '../../blockNames';\n\nconst blockName = `${dataGridBlockName}-group-row-header`;\nconst GroupRowHeaderWrapper = aggregatedClasses('div')(blockName);\nconst GroupRowHeaderTitle = aggregatedClasses('div')(blockName, 'title');\n\nexport const GroupingPlugin = createInstancePlugin('groupedRows', {\n decorateGrid(grid) {\n const { columns, composedRows } = grid.getInstance();\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const detailColumns = useMemo(\n () =>\n columns\n .map((column) => ({\n ...column,\n customRenderer: column.detailCustomRenderer,\n }))\n .filter((col) => !col.expandableColumn),\n [columns],\n );\n const flatRows = [];\n walkTreeStrategy({\n data: composedRows,\n cb: (n) => flatRows.push(n),\n });\n return {\n detailColumns,\n composedRows: flatRows,\n };\n },\n getBodyProps(bodyProps, grid) {\n const { composedRows: rows } = grid.getInstance();\n // implementation of expandable row single column with aggregation\n const getItemSize = (index) => {\n const rowData = rows[index];\n if (!rowData) return RowSizes.normal;\n return rowData._isGroup || rowData.isGroup\n ? RowSizes.compact\n : RowSizes.normal;\n };\n // eslint-disable-next-line no-unused-vars\n const getListHeight = () => {\n const size = rows.reduce((h, r) => {\n const rowHeight =\n r._isGroup || r.isGroup ? RowSizes.compact : RowSizes.normal;\n return h + rowHeight;\n }, 0);\n return size;\n };\n return {\n ...bodyProps,\n getListHeight,\n listComponent: VariableSizeList,\n listProps: { itemSize: getItemSize },\n };\n },\n composeRows: (rows, grid) => {\n const {\n composedRows,\n props: { rowKey },\n } = grid.getInstance();\n\n if (Array.isArray(rows)) {\n const filterIds = rows.map((r) => r.data[rowKey]);\n return composedRows\n .filter((c) => filterIds.includes(c.data[rowKey]))\n .map((r) => ({\n ...r.data,\n children: Array.isArray(r.data.children)\n ? r.data.children.filter((c) => filterIds.includes(c[rowKey]))\n : r.data.children,\n _isGroup: r.isGroup,\n }))\n .filter((g) => g.children === undefined || g.children.length > 0);\n }\n return {\n ...rows,\n allRows: rows.allRows.map((r) => ({\n ...r.data,\n _isGroup: r.isGroup,\n })),\n rows: rows.rows.map((r) => ({\n ...r.data,\n _isGroup: r.isGroup,\n })),\n };\n },\n decorateRenderers(renderers, grid) {\n const Row = renderers.body.row;\n // eslint-disable-next-line react-hooks/rules-of-hooks\n renderers.body.row = useMemo(\n () =>\n // eslint-disable-next-line react/display-name\n // eslint-disable-next-line react/prop-types\n ({ isExpanded, ...rowProps }) => {\n const { composedRows } = grid.getInstance();\n // // https://jira.elliemae.io/browse/PUI-1667\n const node = composedRows[rowProps.index]\n ? composedRows[rowProps.index]\n : rowProps.rowData;\n const { groupedRowsRenderHeader } = grid.props;\n // eslint-disable-next-line no-underscore-dangle\n if (node && node._isGroup) {\n return (\n <>\n <GroupRowHeaderWrapper {...rowProps}>\n <GroupRowHeaderTitle>\n {groupedRowsRenderHeader\n ? groupedRowsRenderHeader(node)\n : 'Group'}\n </GroupRowHeaderTitle>\n </GroupRowHeaderWrapper>\n </>\n );\n }\n return <Row {...rowProps} />;\n },\n [],\n );\n\n return renderers;\n },\n});\n"],"names":["blockName","dataGridBlockName","GroupRowHeaderWrapper","aggregatedClasses","GroupRowHeaderTitle","GroupingPlugin","createInstancePlugin","decorateGrid","grid","getInstance","columns","composedRows","detailColumns","useMemo","map","column","customRenderer","detailCustomRenderer","filter","col","expandableColumn","flatRows","walkTreeStrategy","data","cb","n","push","getBodyProps","bodyProps","rows","getItemSize","index","rowData","RowSizes","normal","_isGroup","isGroup","compact","getListHeight","size","reduce","h","r","rowHeight","listComponent","VariableSizeList","listProps","itemSize","composeRows","rowKey","props","Array","isArray","filterIds","c","includes","children","g","undefined","length","allRows","decorateRenderers","renderers","Row","body","row","isExpanded","rowProps","node","groupedRowsRenderHeader"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"walkStrategy.js","sources":["../../../../src/plugins/grouping-grid/walkStrategy.tsx"],"sourcesContent":["function getPath(parentNode, index, childrenKey) {\n if (!parentNode) return [index];\n return [...parentNode.path, childrenKey, index];\n}\n\nexport function walkTreeStrategy({\n data,\n childrenKey = 'children',\n level = 0,\n getId = item => item.id,\n parentNode,\n shouldWalkChildren = () => true,\n cb,\n}) {\n // eslint-disable-next-line no-loops/no-loops,no-plusplus\n for (let i = 0; i < data.length; i++) {\n const currLevel = level + 1;\n const children = data[i][childrenKey];\n const isGroup = children && !!children.length;\n const node = {\n index: i,\n id: getId(data[i]),\n data: data[i],\n path: getPath(parentNode, i, childrenKey),\n isGroup,\n nestingLevel: currLevel,\n parentNode: parentNode || {\n isGroup: true,\n data: { children: data },\n },\n };\n cb(node);\n if (shouldWalkChildren(node) && children && children.length) {\n walkTreeStrategy({\n data: children,\n level: currLevel,\n parentNode: node,\n shouldWalkChildren,\n cb,\n });\n }\n }\n}\n"],"names":["getPath","parentNode","index","childrenKey","path","walkTreeStrategy","data","level","getId","item","id","shouldWalkChildren","cb","i","length","currLevel","children","isGroup","node","nestingLevel"],"mappings":";;AAAA,SAASA,OAAT,CAAiBC,UAAjB,EAA6BC,KAA7B,EAAoCC,WAApC,EAAiD;AAC/C,MAAI,CAACF,UAAL,EAAiB,OAAO,CAACC,KAAD,CAAP;AACjB,sCAAWD,UAAU,CAACG,IAAtB,IAA4BD,WAA5B,EAAyCD,KAAzC;AACD;;AAEM,SAASG,gBAAT,OAQJ;AAAA,MAPDC,IAOC,QAPDA,IAOC;AAAA,8BANDH,WAMC;AAAA,MANDA,WAMC,iCANa,UAMb;AAAA,wBALDI,KAKC;AAAA,MALDA,KAKC,2BALO,CAKP;AAAA,wBAJDC,KAIC;AAAA,MAJDA,KAIC,2BAJO,UAAAC,IAAI;AAAA,WAAIA,IAAI,CAACC,EAAT;AAAA,GAIX;AAAA,MAHDT,UAGC,QAHDA,UAGC;AAAA,mCAFDU,kBAEC;AAAA,MAFDA,kBAEC,sCAFoB;AAAA,WAAM,IAAN;AAAA,GAEpB;AAAA,MADDC,EACC,QADDA,EACC;;AACD;AACA,OAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGP,IAAI,CAACQ,MAAzB,EAAiCD,CAAC,EAAlC,EAAsC;AACpC,QAAME,SAAS,GAAGR,KAAK,GAAG,CAA1B;AACA,QAAMS,QAAQ,GAAGV,IAAI,CAACO,CAAD,CAAJ,CAAQV,WAAR,CAAjB;AACA,QAAMc,OAAO,GAAGD,QAAQ,IAAI,CAAC,CAACA,QAAQ,CAACF,MAAvC;AACA,QAAMI,IAAI,GAAG;AACXhB,MAAAA,KAAK,EAAEW,CADI;AAEXH,MAAAA,EAAE,EAAEF,KAAK,CAACF,IAAI,CAACO,CAAD,CAAL,CAFE;AAGXP,MAAAA,IAAI,EAAEA,IAAI,CAACO,CAAD,CAHC;AAIXT,MAAAA,IAAI,EAAEJ,OAAO,CAACC,UAAD,EAAaY,CAAb,EAAgBV,WAAhB,CAJF;AAKXc,MAAAA,OAAO,EAAPA,OALW;AAMXE,MAAAA,YAAY,EAAEJ,SANH;AAOXd,MAAAA,UAAU,EAAEA,UAAU,IAAI;AACxBgB,QAAAA,OAAO,EAAE,IADe;AAExBX,QAAAA,IAAI,EAAE;AAAEU,UAAAA,QAAQ,EAAEV;AAAZ;AAFkB;AAPf,KAAb;AAYAM,IAAAA,EAAE,CAACM,IAAD,CAAF;;AACA,QAAIP,kBAAkB,CAACO,IAAD,CAAlB,IAA4BF,QAA5B,IAAwCA,QAAQ,CAACF,MAArD,EAA6D;AAC3DT,MAAAA,gBAAgB,CAAC;AACfC,QAAAA,IAAI,EAAEU,QADS;AAEfT,QAAAA,KAAK,EAAEQ,SAFQ;AAGfd,QAAAA,UAAU,EAAEiB,IAHG;AAIfP,QAAAA,kBAAkB,EAAlBA,kBAJe;AAKfC,QAAAA,EAAE,EAAFA;AALe,OAAD,CAAhB;AAOD;AACF;AACF;;;;"}
|
package/esm/plugins/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InfiniteScrollPlugin.js","sources":["../../../../src/plugins/infinite-scrolling/InfiniteScrollPlugin.tsx"],"sourcesContent":["import { useRef, useEffect, useState } from 'react';\nimport createInstancePlugin from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\n\n// TODO: EXPORT A SEPARATED INFINITE LOADER GRID\n\nconst registerStateHook = (grid) => {\n const {\n props: { getData, onInfiniteScrolling = () => null },\n actions: { updateRows },\n } = grid;\n\n const loading = useRef(false);\n\n const addMoreData = (data = []) => {\n loading.current = false;\n updateRows((prevRows) => prevRows.concat(data || []));\n };\n\n const doLoadData = async (currentRows) => {\n loading.current = true;\n return Promise.resolve(getData(currentRows)).then(addMoreData);\n };\n\n const loadMoreData = (currentRows) => {\n onInfiniteScrolling(currentRows);\n if (loading.current || !getData) return;\n doLoadData(currentRows);\n };\n\n return {\n actions: {\n loadMoreData,\n },\n };\n};\n\nconst getBodyProps = ({ children, ...props }, grid) => {\n const { loadMoreData } = grid.getInstance().actions;\n\n const [bodyNode, setBodyRef] = useState();\n const prevScroll = useRef();\n prevScroll.current = 0;\n\n const handleBodyScroll = (event, s) => {\n const { target } = event;\n const { scrollHeight, scrollTop, offsetHeight, scrollLeft } = target;\n const { composedRows } = grid.getInstance();\n // prevent horizontal scroll triggering infinite scrolling callbacks\n if (prevScroll.current !== scrollLeft) {\n prevScroll.current = scrollLeft;\n return;\n }\n // todo: clean this. Better approach using another component for the infinite scroll\n if (bodyNode !== target) return;\n if (scrollTop + offsetHeight >= scrollHeight - 1) {\n loadMoreData(composedRows);\n }\n };\n\n useEffect(() => {\n if (bodyNode) {\n bodyNode.addEventListener('scroll', handleBodyScroll);\n }\n return () => {\n if (bodyNode) {\n bodyNode.removeEventListener('scroll', handleBodyScroll);\n }\n };\n }, [bodyNode]);\n\n return {\n ...props,\n listProps: { outerRef: setBodyRef },\n };\n};\n\nexport const InfiniteScrollPlugin = createInstancePlugin('infinite-scroll', {\n registerStateHook,\n getBodyProps,\n});\n"],"names":["registerStateHook","grid","props","getData","onInfiniteScrolling","updateRows","actions","loading","useRef","addMoreData","data","current","prevRows","concat","doLoadData","currentRows","Promise","resolve","then","loadMoreData","getBodyProps","children","getInstance","useState","bodyNode","setBodyRef","prevScroll","handleBodyScroll","event","s","target","scrollHeight","scrollTop","offsetHeight","scrollLeft","composedRows","useEffect","addEventListener","removeEventListener","listProps","outerRef","InfiniteScrollPlugin","createInstancePlugin"],"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":"PaginationPlugin.js","sources":["../../../../src/plugins/pagination/PaginationPlugin.tsx"],"sourcesContent":["/* eslint-disable react/display-name */\nimport React, { useMemo } from 'react';\nimport { mergeRefs } from '@elliemae/ds-utilities';\nimport FocusGridManager from '@elliemae/ds-shared/FocusGroup/FocusGrid';\nimport createInstancePlugin from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport paginate from './helper';\nimport { usePaginationState } from './usePaginationState';\nimport NoResults from '../../components/NoResults';\n\nconst composeRows = (rows, grid) => {\n const {\n state: { pagination },\n props: { groupedRows },\n } = grid.getInstance();\n if (groupedRows) return rows; // disable pagination with grouping\n if (groupedRows) {\n const filterIds = rows.map(r => r.id);\n return paginate(\n rows\n .filter(c => filterIds.includes(c.id))\n .map(r => ({\n ...r,\n _isGroup: r.isGroup,\n })),\n pagination,\n );\n }\n\n return paginate(rows, pagination);\n};\n\nconst Body = React.memo(\n ({\n component: Component,\n rows,\n rowRenderer,\n noResultsPlaceholder,\n innerRef,\n innerBodyRef, // depends on body-header-scroll-sync\n isPlaceholderActive = false,\n ...otherBodyProps\n }) => (\n <Component {...otherBodyProps} innerRef={mergeRefs(innerRef)}>\n {!isPlaceholderActive ? (\n rows.map((row, index) =>\n rowRenderer(row, { index, rowIndex: index }, {}),\n )\n ) : (\n <NoResults innerRef={innerRef} rowRenderer={rowRenderer}>\n {noResultsPlaceholder}\n </NoResults>\n )}\n </Component>\n ),\n);\n\nconst decorateRenderers = (renderers, grid) => {\n const BodyWrapper = renderers.body.wrapper;\n renderers.body.wrapper = useMemo(\n () => props => {\n const { hotKeys, shouldRefocus, state } = grid.getInstance();\n return (\n <FocusGridManager hotKeys={hotKeys} shouldRefocus={false}>\n <Body {...props} component={BodyWrapper} />\n </FocusGridManager>\n );\n },\n [],\n );\n return renderers;\n};\n\nexport const PaginationPlugin = createInstancePlugin('pagination', {\n registerStateHook: usePaginationState,\n decorateRenderers,\n composeRows,\n});\n"],"names":["composeRows","rows","grid","getInstance","pagination","state","groupedRows","props","filterIds","map","r","id","paginate","filter","c","includes","_isGroup","isGroup","Body","React","memo","Component","component","rowRenderer","noResultsPlaceholder","innerRef","innerBodyRef","isPlaceholderActive","otherBodyProps","mergeRefs","row","index","rowIndex","decorateRenderers","renderers","BodyWrapper","body","wrapper","useMemo","hotKeys","shouldRefocus","PaginationPlugin","createInstancePlugin","registerStateHook","usePaginationState"],"mappings":";;;;;;;;;;;;;;;;;;;;AASA,IAAMA,WAAW,GAAG,SAAdA,WAAc,CAACC,IAAD,EAAOC,IAAP,EAAgB;AAClC,0BAGIA,IAAI,CAACC,WAAL,EAHJ;AAAA,MACWC,UADX,qBACEC,KADF,CACWD,UADX;AAAA,MAEWE,WAFX,qBAEEC,KAFF,CAEWD,WAFX;;AAIA,MAAIA,WAAJ,EAAiB,OAAOL,IAAP,CALiB;;AAMlC,MAAIK,WAAJ,EAAiB;AACf,QAAME,SAAS,GAAGP,IAAI,CAACQ,GAAL,CAAS,UAAAC,CAAC;AAAA,aAAIA,CAAC,CAACC,EAAN;AAAA,KAAV,CAAlB;AACA,WAAOC,QAAQ,CACbX,IAAI,CACDY,MADH,CACU,UAAAC,CAAC;AAAA,aAAIN,SAAS,CAACO,QAAV,CAAmBD,CAAC,CAACH,EAArB,CAAJ;AAAA,KADX,EAEGF,GAFH,CAEO,UAAAC,CAAC;AAAA,6CACDA,CADC;AAEJM,QAAAA,QAAQ,EAAEN,CAAC,CAACO;AAFR;AAAA,KAFR,CADa,EAObb,UAPa,CAAf;AASD;;AAED,SAAOQ,QAAQ,CAACX,IAAD,EAAOG,UAAP,CAAf;AACD,CApBD;;AAsBA,IAAMc,IAAI,gBAAGC,KAAK,CAACC,IAAN,CACX;AAAA,MACaC,SADb,QACEC,SADF;AAAA,MAEErB,IAFF,QAEEA,IAFF;AAAA,MAGEsB,WAHF,QAGEA,WAHF;AAAA,MAIEC,oBAJF,QAIEA,oBAJF;AAAA,MAKEC,QALF,QAKEA,QALF;AAAA,WAMEC,YANF;AAAA,uCAOEC,mBAPF;AAAA,MAOEA,mBAPF,sCAOwB,KAPxB;AAAA,MAQKC,cARL;;AAAA,sBAUE,oBAAC,SAAD,eAAeA,cAAf;AAA+B,IAAA,QAAQ,EAAEC,SAAS,CAACJ,QAAD;AAAlD,MACG,CAACE,mBAAD,GACC1B,IAAI,CAACQ,GAAL,CAAS,UAACqB,GAAD,EAAMC,KAAN;AAAA,WACPR,WAAW,CAACO,GAAD,EAAM;AAAEC,MAAAA,KAAK,EAALA,KAAF;AAASC,MAAAA,QAAQ,EAAED;AAAnB,KAAN,EAAkC,EAAlC,CADJ;AAAA,GAAT,CADD,gBAKC,oBAAC,SAAD;AAAW,IAAA,QAAQ,EAAEN,QAArB;AAA+B,IAAA,WAAW,EAAEF;AAA5C,KACGC,oBADH,CANJ,CAVF;AAAA,CADW,CAAb;;AAyBA,IAAMS,iBAAiB,GAAG,SAApBA,iBAAoB,CAACC,SAAD,EAAYhC,IAAZ,EAAqB;AAC7C,MAAMiC,WAAW,GAAGD,SAAS,CAACE,IAAV,CAAeC,OAAnC;AACAH,EAAAA,SAAS,CAACE,IAAV,CAAeC,OAAf,GAAyBC,OAAO,CAC9B;AAAA,WAAM,UAAA/B,KAAK,EAAI;AACb,+BAA0CL,IAAI,CAACC,WAAL,EAA1C;AAAA,UAAQoC,OAAR,sBAAQA,OAAR;AAAA,6BAAiBC,aAAjB;AAAA,6BAAgCnC;;AAChC,0BACE,oBAAC,gBAAD;AAAkB,QAAA,OAAO,EAAEkC,OAA3B;AAAoC,QAAA,aAAa,EAAE;AAAnD,sBACE,oBAAC,IAAD,eAAUhC,KAAV;AAAiB,QAAA,SAAS,EAAE4B;AAA5B,SADF,CADF;AAKD,KAPD;AAAA,GAD8B,EAS9B,EAT8B,CAAhC;AAWA,SAAOD,SAAP;AACD,CAdD;;IAgBaO,gBAAgB,GAAGC,oBAAoB,CAAC,YAAD,EAAe;AACjEC,EAAAA,iBAAiB,EAAEC,kBAD8C;AAEjEX,EAAAA,iBAAiB,EAAjBA,iBAFiE;AAGjEjC,EAAAA,WAAW,EAAXA;AAHiE,CAAf;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Pagination.js","sources":["../../../../../src/plugins/pagination/components/Pagination.tsx"],"sourcesContent":["import React from 'react';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport Paginator from './Paginator';\nimport PerPageDropdown from './PerPageDropdown';\n\nconst PaginationControls = aggregatedClasses('div')(\n 'data-grid',\n 'controls-pagination',\n);\n\nconst Pagination = ({\n paginated,\n pagination = {},\n onPerPage,\n onPageSelect,\n paginationStep = 5,\n maxPerPage = 10,\n minPerPage = 5,\n}) => {\n const { perPage } = pagination;\n if (\n pagination &&\n pagination.conditionalPagination === true &&\n paginated.amount === 1\n )\n return null;\n return paginated.amount > 0 ? (\n <PaginationControls>\n <PerPageDropdown\n max={maxPerPage}\n min={minPerPage}\n onChange={onPerPage}\n step={paginationStep}\n value={perPage}\n />\n <Paginator\n onSelect={onPageSelect}\n pages={paginated.amount}\n pagination={pagination}\n />\n </PaginationControls>\n ) : null;\n};\n\nexport { Pagination };\n"],"names":["PaginationControls","aggregatedClasses","Pagination","paginated","pagination","onPerPage","onPageSelect","paginationStep","maxPerPage","minPerPage","perPage","conditionalPagination","amount"],"mappings":";;;;;;;;;;;AAKA,IAAMA,kBAAkB,GAAGC,iBAAiB,CAAC,KAAD,CAAjB,CACzB,WADyB,EAEzB,qBAFyB,CAA3B;;IAKMC,UAAU,GAAG,SAAbA,UAAa,OAQb;AAAA,MAPJC,SAOI,QAPJA,SAOI;AAAA,6BANJC,UAMI;AAAA,MANJA,UAMI,gCANS,EAMT;AAAA,MALJC,SAKI,QALJA,SAKI;AAAA,MAJJC,YAII,QAJJA,YAII;AAAA,iCAHJC,cAGI;AAAA,MAHJA,cAGI,oCAHa,CAGb;AAAA,6BAFJC,UAEI;AAAA,MAFJA,UAEI,gCAFS,EAET;AAAA,6BADJC,UACI;AAAA,MADJA,UACI,gCADS,CACT;AACJ,MAAQC,OAAR,GAAoBN,UAApB,CAAQM,OAAR;AACA,MACEN,UAAU,IACVA,UAAU,CAACO,qBAAX,KAAqC,IADrC,IAEAR,SAAS,CAACS,MAAV,KAAqB,CAHvB,EAKE,OAAO,IAAP;AACF,SAAOT,SAAS,CAACS,MAAV,GAAmB,CAAnB,gBACL,oBAAC,kBAAD,qBACE,oBAAC,eAAD;AACE,IAAA,GAAG,EAAEJ,UADP;AAEE,IAAA,GAAG,EAAEC,UAFP;AAGE,IAAA,QAAQ,EAAEJ,SAHZ;AAIE,IAAA,IAAI,EAAEE,cAJR;AAKE,IAAA,KAAK,EAAEG;AALT,IADF,eAQE,oBAAC,SAAD;AACE,IAAA,QAAQ,EAAEJ,YADZ;AAEE,IAAA,KAAK,EAAEH,SAAS,CAACS,MAFnB;AAGE,IAAA,UAAU,EAAER;AAHd,IARF,CADK,GAeH,IAfJ;AAgBD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Paginator.js","sources":["../../../../../src/plugins/pagination/components/Paginator.tsx"],"sourcesContent":["import React from 'react';\nimport Pagify from 'react-pagify';\nimport segmentize from 'segmentize';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\n\nconst blockName = 'data-grid';\n\nconst PaginationContainer = aggregatedClasses('div')(blockName, 'pagination');\nconst PagifyContext = aggregatedClasses(Pagify.Context)(\n blockName,\n 'pagify-pagination',\n);\n\nconst Paginator = ({\n pagination,\n pages,\n onSelect,\n labelPrevious = 'Previous',\n labelNext = 'Next',\n}) => {\n const prevPage = pagination.page - 1;\n const nextPage = pagination.page + 1;\n return (\n <PaginationContainer>\n <PagifyContext\n onSelect={page => page !== pagination.page && onSelect(page)}\n segments={segmentize({\n page: pagination.page,\n pages,\n beginPages: 1,\n endPages: 1,\n sidePages: 1,\n })}\n >\n <Pagify.Button\n className={pagination.page <= 1 ? 'button-disabled' : ''}\n page={prevPage}\n >\n {labelPrevious}\n </Pagify.Button>\n\n <Pagify.Segment field=\"beginPages\" />\n\n <Pagify.Ellipsis\n className=\"ellipsis\"\n nextField=\"previousPages\"\n previousField=\"beginPages\"\n />\n\n <Pagify.Segment field=\"previousPages\" />\n <Pagify.Segment className=\"selected\" field=\"centerPage\" />\n <Pagify.Segment field=\"nextPages\" />\n\n <Pagify.Ellipsis\n className=\"ellipsis\"\n nextField=\"endPages\"\n previousField=\"nextPages\"\n />\n\n <Pagify.Segment field=\"endPages\" />\n\n <Pagify.Button\n className={pagination.page >= pages ? 'button-disabled' : ''}\n page={nextPage}\n >\n {labelNext}\n </Pagify.Button>\n </PagifyContext>\n </PaginationContainer>\n );\n};\n\nexport default Paginator;\n"],"names":["blockName","PaginationContainer","aggregatedClasses","PagifyContext","Pagify","Context","Paginator","pagination","pages","onSelect","labelPrevious","labelNext","prevPage","page","nextPage","segmentize","beginPages","endPages","sidePages"],"mappings":";;;;;AAKA,IAAMA,SAAS,GAAG,WAAlB;AAEA,IAAMC,mBAAmB,GAAGC,iBAAiB,CAAC,KAAD,CAAjB,CAAyBF,SAAzB,EAAoC,YAApC,CAA5B;AACA,IAAMG,aAAa,GAAGD,iBAAiB,CAACE,MAAM,CAACC,OAAR,CAAjB,CACpBL,SADoB,EAEpB,mBAFoB,CAAtB;;IAKMM,SAAS,GAAG,SAAZA,SAAY,OAMZ;AAAA,MALJC,UAKI,QALJA,UAKI;AAAA,MAJJC,KAII,QAJJA,KAII;AAAA,MAHJC,SAGI,QAHJA,QAGI;AAAA,gCAFJC,aAEI;AAAA,MAFJA,aAEI,mCAFY,UAEZ;AAAA,4BADJC,SACI;AAAA,MADJA,SACI,+BADQ,MACR;AACJ,MAAMC,QAAQ,GAAGL,UAAU,CAACM,IAAX,GAAkB,CAAnC;AACA,MAAMC,QAAQ,GAAGP,UAAU,CAACM,IAAX,GAAkB,CAAnC;AACA,sBACE,oBAAC,mBAAD,qBACE,oBAAC,aAAD;AACE,IAAA,QAAQ,EAAE,kBAAAA,IAAI;AAAA,aAAIA,IAAI,KAAKN,UAAU,CAACM,IAApB,IAA4BJ,SAAQ,CAACI,IAAD,CAAxC;AAAA,KADhB;AAEE,IAAA,QAAQ,EAAEE,UAAU,CAAC;AACnBF,MAAAA,IAAI,EAAEN,UAAU,CAACM,IADE;AAEnBL,MAAAA,KAAK,EAALA,KAFmB;AAGnBQ,MAAAA,UAAU,EAAE,CAHO;AAInBC,MAAAA,QAAQ,EAAE,CAJS;AAKnBC,MAAAA,SAAS,EAAE;AALQ,KAAD;AAFtB,kBAUE,oBAAC,MAAD,CAAQ,MAAR;AACE,IAAA,SAAS,EAAEX,UAAU,CAACM,IAAX,IAAmB,CAAnB,GAAuB,iBAAvB,GAA2C,EADxD;AAEE,IAAA,IAAI,EAAED;AAFR,KAIGF,aAJH,CAVF,eAiBE,oBAAC,MAAD,CAAQ,OAAR;AAAgB,IAAA,KAAK,EAAC;AAAtB,IAjBF,eAmBE,oBAAC,MAAD,CAAQ,QAAR;AACE,IAAA,SAAS,EAAC,UADZ;AAEE,IAAA,SAAS,EAAC,eAFZ;AAGE,IAAA,aAAa,EAAC;AAHhB,IAnBF,eAyBE,oBAAC,MAAD,CAAQ,OAAR;AAAgB,IAAA,KAAK,EAAC;AAAtB,IAzBF,eA0BE,oBAAC,MAAD,CAAQ,OAAR;AAAgB,IAAA,SAAS,EAAC,UAA1B;AAAqC,IAAA,KAAK,EAAC;AAA3C,IA1BF,eA2BE,oBAAC,MAAD,CAAQ,OAAR;AAAgB,IAAA,KAAK,EAAC;AAAtB,IA3BF,eA6BE,oBAAC,MAAD,CAAQ,QAAR;AACE,IAAA,SAAS,EAAC,UADZ;AAEE,IAAA,SAAS,EAAC,UAFZ;AAGE,IAAA,aAAa,EAAC;AAHhB,IA7BF,eAmCE,oBAAC,MAAD,CAAQ,OAAR;AAAgB,IAAA,KAAK,EAAC;AAAtB,IAnCF,eAqCE,oBAAC,MAAD,CAAQ,MAAR;AACE,IAAA,SAAS,EAAEH,UAAU,CAACM,IAAX,IAAmBL,KAAnB,GAA2B,iBAA3B,GAA+C,EAD5D;AAEE,IAAA,IAAI,EAAEM;AAFR,KAIGH,SAJH,CArCF,CADF,CADF;AAgDD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PerPageDropdown.js","sources":["../../../../../src/plugins/pagination/components/PerPageDropdown.tsx"],"sourcesContent":["import React from 'react';\nimport memoize from 'memoize-one';\nimport { range } from '@elliemae/ds-utilities';\nimport { DSComboBox, components } from '@elliemae/ds-form';\n\nconst SingleValue = ({ children, ...props }) => (\n <components.SingleValue {...props}>\n {children} <span>per page</span>\n </components.SingleValue>\n);\n\nconst generateOption = (value) => ({\n value,\n label: value,\n});\nconst getOptions = memoize((step, min, max) => {\n const options = range(min, max + step, step).map(generateOption);\n return min === 0 ? options.slice(1, options.length) : options;\n});\n\nfunction PerPageDropdown({ min = 0, max = 100, step = 5, value = 0, onChange = () => null }) {\n const options = getOptions(step, min, max);\n return (\n <DSComboBox\n className=\"per-page-dropdown\"\n components={{\n SingleValue,\n }}\n containerProps={{\n 'data-testid': 'per-page-dropdown',\n }}\n maxOptions={10}\n onChange={onChange}\n options={options}\n searchable={false}\n value={value}\n />\n );\n}\n\nexport default PerPageDropdown;\n"],"names":["SingleValue","children","props","generateOption","value","label","getOptions","memoize","step","min","max","options","range","map","slice","length","PerPageDropdown","onChange"],"mappings":";;;;;;;;AAKA,IAAMA,WAAW,GAAG,SAAdA,WAAc;AAAA,MAAGC,QAAH,QAAGA,QAAH;AAAA,MAAgBC,KAAhB;;AAAA,sBAClB,oBAAC,UAAD,CAAY,WAAZ,EAA4BA,KAA5B,EACGD,QADH,oBACa,6CADb,CADkB;AAAA,CAApB;;AAMA,IAAME,cAAc,GAAG,SAAjBA,cAAiB,CAACC,KAAD;AAAA,SAAY;AACjCA,IAAAA,KAAK,EAALA,KADiC;AAEjCC,IAAAA,KAAK,EAAED;AAF0B,GAAZ;AAAA,CAAvB;;AAIA,IAAME,UAAU,GAAGC,UAAO,CAAC,UAACC,IAAD,EAAOC,GAAP,EAAYC,GAAZ,EAAoB;AAC7C,MAAMC,OAAO,GAAGC,KAAK,CAACH,GAAD,EAAMC,GAAG,GAAGF,IAAZ,EAAkBA,IAAlB,CAAL,CAA6BK,GAA7B,CAAiCV,cAAjC,CAAhB;AACA,SAAOM,GAAG,KAAK,CAAR,GAAYE,OAAO,CAACG,KAAR,CAAc,CAAd,EAAiBH,OAAO,CAACI,MAAzB,CAAZ,GAA+CJ,OAAtD;AACD,CAHyB,CAA1B;;AAKA,SAASK,eAAT,QAA6F;AAAA,wBAAlEP,GAAkE;AAAA,MAAlEA,GAAkE,0BAA5D,CAA4D;AAAA,wBAAzDC,GAAyD;AAAA,MAAzDA,GAAyD,0BAAnD,GAAmD;AAAA,yBAA9CF,IAA8C;AAAA,MAA9CA,IAA8C,2BAAvC,CAAuC;AAAA,0BAApCJ,KAAoC;AAAA,MAApCA,KAAoC,4BAA5B,CAA4B;AAAA,6BAAzBa,QAAyB;AAAA,MAAzBA,QAAyB,+BAAd;AAAA,WAAM,IAAN;AAAA,GAAc;AAC3F,MAAMN,OAAO,GAAGL,UAAU,CAACE,IAAD,EAAOC,GAAP,EAAYC,GAAZ,CAA1B;AACA,sBACE,oBAAC,UAAD;AACE,IAAA,SAAS,EAAC,mBADZ;AAEE,IAAA,UAAU,EAAE;AACVV,MAAAA,WAAW,EAAXA;AADU,KAFd;AAKE,IAAA,cAAc,EAAE;AACd,qBAAe;AADD,KALlB;AAQE,IAAA,UAAU,EAAE,EARd;AASE,IAAA,QAAQ,EAAEiB,QATZ;AAUE,IAAA,OAAO,EAAEN,OAVX;AAWE,IAAA,UAAU,EAAE,KAXd;AAYE,IAAA,KAAK,EAAEP;AAZT,IADF;AAgBD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"helper.js","sources":["../../../../src/plugins/pagination/helper.tsx"],"sourcesContent":["export const parsePerPageNumber = (number, max, min = 1) => {\n if (number > max) return max;\n if (number < min) return min;\n return number;\n};\n\nexport default function paginate(\n rows,\n { page, perPage = 1, amountOfPages: amount, totalRows },\n) {\n // return if pagination state is controlled\n if (amount && totalRows) {\n return {\n amount,\n rows,\n page,\n };\n }\n // adapt to zero indexed logic\n const p = page - 1 || 0;\n\n const amountOfPages = perPage\n ? Math.ceil(rows.length / (perPage > 0 ? perPage : 1))\n : 1;\n const startPage = p < amountOfPages ? p : 0;\n\n return {\n amount: amountOfPages,\n rows: perPage\n ? rows.slice(startPage * perPage, startPage * perPage + perPage)\n : rows,\n allRows: rows,\n page: startPage,\n };\n}\n"],"names":["parsePerPageNumber","number","max","min","paginate","rows","page","perPage","amount","amountOfPages","totalRows","p","Math","ceil","length","startPage","slice","allRows"],"mappings":"IAAaA,kBAAkB,GAAG,SAArBA,kBAAqB,CAACC,MAAD,EAASC,GAAT,EAA0B;AAAA,MAAZC,GAAY,uEAAN,CAAM;AAC1D,MAAIF,MAAM,GAAGC,GAAb,EAAkB,OAAOA,GAAP;AAClB,MAAID,MAAM,GAAGE,GAAb,EAAkB,OAAOA,GAAP;AAClB,SAAOF,MAAP;AACD;AAEc,SAASG,QAAT,CACbC,IADa,QAGb;AAAA,MADEC,IACF,QADEA,IACF;AAAA,0BADQC,OACR;AAAA,MADQA,OACR,6BADkB,CAClB;AAAA,MADoCC,MACpC,QADqBC,aACrB;AAAA,MAD4CC,SAC5C,QAD4CA,SAC5C;;AACA;AACA,MAAIF,MAAM,IAAIE,SAAd,EAAyB;AACvB,WAAO;AACLF,MAAAA,MAAM,EAANA,MADK;AAELH,MAAAA,IAAI,EAAJA,IAFK;AAGLC,MAAAA,IAAI,EAAJA;AAHK,KAAP;AAKD,GARD;;;AAUA,MAAMK,CAAC,GAAGL,IAAI,GAAG,CAAP,IAAY,CAAtB;AAEA,MAAMG,aAAa,GAAGF,OAAO,GACzBK,IAAI,CAACC,IAAL,CAAUR,IAAI,CAACS,MAAL,IAAeP,OAAO,GAAG,CAAV,GAAcA,OAAd,GAAwB,CAAvC,CAAV,CADyB,GAEzB,CAFJ;AAGA,MAAMQ,SAAS,GAAGJ,CAAC,GAAGF,aAAJ,GAAoBE,CAApB,GAAwB,CAA1C;AAEA,SAAO;AACLH,IAAAA,MAAM,EAAEC,aADH;AAELJ,IAAAA,IAAI,EAAEE,OAAO,GACTF,IAAI,CAACW,KAAL,CAAWD,SAAS,GAAGR,OAAvB,EAAgCQ,SAAS,GAAGR,OAAZ,GAAsBA,OAAtD,CADS,GAETF,IAJC;AAKLY,IAAAA,OAAO,EAAEZ,IALJ;AAMLC,IAAAA,IAAI,EAAES;AAND,GAAP;AAQD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"usePaginationState.js","sources":["../../../../src/plugins/pagination/usePaginationState.tsx"],"sourcesContent":["import { useDerivedStateFromProps } from '@elliemae/ds-utilities';\nimport { parsePerPageNumber } from './helper';\n\nexport function usePaginationState(grid) {\n const {\n minPerPage = 0,\n maxPerPage = 50,\n onPerPageChange = () => null,\n onPageChange = () => null,\n pagination: paginationProp = {\n page: 1,\n perPage: 10,\n },\n groupedRows,\n } = grid.props;\n const { composedRows, rows } = grid.getInstance();\n const [pagination, setPagination] = useDerivedStateFromProps(paginationProp);\n\n const onPerPage = perPageNumber => {\n const parsedPerPageNumber = parsePerPageNumber(\n perPageNumber,\n maxPerPage,\n minPerPage,\n );\n const actualNumber = parsedPerPageNumber\n ? parseInt(parsedPerPageNumber, 10)\n : 0;\n\n setPagination(prevPagination => {\n onPerPageChange(actualNumber);\n return {\n page: prevPagination.page,\n perPage: actualNumber,\n };\n });\n };\n\n const onPageSelect = page => {\n const length = groupedRows ? composedRows.length : rows.length;\n setPagination(prevPagination => {\n const pages = Math.ceil(length / prevPagination.perPage);\n onPageChange(page);\n return {\n ...prevPagination,\n page: Math.min(Math.max(page, 1), pages),\n };\n });\n };\n\n return {\n state: {\n pagination,\n },\n actions: {\n onPerPage,\n onPageSelect,\n },\n };\n}\n"],"names":["usePaginationState","grid","props","minPerPage","maxPerPage","onPerPageChange","onPageChange","pagination","paginationProp","page","perPage","groupedRows","getInstance","composedRows","rows","useDerivedStateFromProps","setPagination","onPerPage","perPageNumber","parsedPerPageNumber","parsePerPageNumber","actualNumber","parseInt","prevPagination","onPageSelect","length","pages","Math","ceil","min","max","state","actions"],"mappings":";;;;;;;;AAGO,SAASA,kBAAT,CAA4BC,IAA5B,EAAkC;AACvC,oBAUIA,IAAI,CAACC,KAVT;AAAA,0CACEC,UADF;AAAA,MACEA,UADF,sCACe,CADf;AAAA,0CAEEC,UAFF;AAAA,MAEEA,UAFF,sCAEe,EAFf;AAAA,0CAGEC,eAHF;AAAA,MAGEA,eAHF,sCAGoB;AAAA,WAAM,IAAN;AAAA,GAHpB;AAAA,0CAIEC,YAJF;AAAA,MAIEA,YAJF,sCAIiB;AAAA,WAAM,IAAN;AAAA,GAJjB;AAAA,0CAKEC,UALF;AAAA,MAKcC,cALd,sCAK+B;AAC3BC,IAAAA,IAAI,EAAE,CADqB;AAE3BC,IAAAA,OAAO,EAAE;AAFkB,GAL/B;AAAA,MASEC,WATF,eASEA,WATF;;AAWA,0BAA+BV,IAAI,CAACW,WAAL,EAA/B;AAAA,MAAQC,YAAR,qBAAQA,YAAR;AAAA,MAAsBC,IAAtB,qBAAsBA,IAAtB;;AACA,8BAAoCC,wBAAwB,CAACP,cAAD,CAA5D;AAAA;AAAA,MAAOD,UAAP;AAAA,MAAmBS,aAAnB;;AAEA,MAAMC,SAAS,GAAG,SAAZA,SAAY,CAAAC,aAAa,EAAI;AACjC,QAAMC,mBAAmB,GAAGC,kBAAkB,CAC5CF,aAD4C,EAE5Cd,UAF4C,EAG5CD,UAH4C,CAA9C;AAKA,QAAMkB,YAAY,GAAGF,mBAAmB,GACpCG,QAAQ,CAACH,mBAAD,EAAsB,EAAtB,CAD4B,GAEpC,CAFJ;AAIAH,IAAAA,aAAa,CAAC,UAAAO,cAAc,EAAI;AAC9BlB,MAAAA,eAAe,CAACgB,YAAD,CAAf;AACA,aAAO;AACLZ,QAAAA,IAAI,EAAEc,cAAc,CAACd,IADhB;AAELC,QAAAA,OAAO,EAAEW;AAFJ,OAAP;AAID,KANY,CAAb;AAOD,GAjBD;;AAmBA,MAAMG,YAAY,GAAG,SAAfA,YAAe,CAAAf,IAAI,EAAI;AAC3B,QAAMgB,MAAM,GAAGd,WAAW,GAAGE,YAAY,CAACY,MAAhB,GAAyBX,IAAI,CAACW,MAAxD;AACAT,IAAAA,aAAa,CAAC,UAAAO,cAAc,EAAI;AAC9B,UAAMG,KAAK,GAAGC,IAAI,CAACC,IAAL,CAAUH,MAAM,GAAGF,cAAc,CAACb,OAAlC,CAAd;AACAJ,MAAAA,YAAY,CAACG,IAAD,CAAZ;AACA,6CACKc,cADL;AAEEd,QAAAA,IAAI,EAAEkB,IAAI,CAACE,GAAL,CAASF,IAAI,CAACG,GAAL,CAASrB,IAAT,EAAe,CAAf,CAAT,EAA4BiB,KAA5B;AAFR;AAID,KAPY,CAAb;AAQD,GAVD;;AAYA,SAAO;AACLK,IAAAA,KAAK,EAAE;AACLxB,MAAAA,UAAU,EAAVA;AADK,KADF;AAILyB,IAAAA,OAAO,EAAE;AACPf,MAAAA,SAAS,EAATA,SADO;AAEPO,MAAAA,YAAY,EAAZA;AAFO;AAJJ,GAAP;AASD;;;;"}
|