@coveord/plasma-mantine 53.1.4 → 54.0.0
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/.eslintrc.js +1 -5
- package/.turbo/turbo-build.log +3 -3
- package/.turbo/turbo-test.log +36 -35
- package/dist/.tsbuildinfo +1 -1
- package/dist/cjs/components/button/Button.d.ts +1 -2
- package/dist/cjs/components/button/Button.d.ts.map +1 -1
- package/dist/cjs/components/button/Button.js.map +1 -1
- package/dist/cjs/components/code-editor/CodeEditor.d.ts.map +1 -1
- package/dist/cjs/components/code-editor/CodeEditor.js +2 -4
- package/dist/cjs/components/code-editor/CodeEditor.js.map +1 -1
- package/dist/cjs/components/header/__tests__/__snapshots__/Header.spec.tsx.snap +0 -5
- package/dist/cjs/components/inline-confirm/InlineConfirm.d.ts +10 -2
- package/dist/cjs/components/inline-confirm/InlineConfirm.d.ts.map +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirm.js +2 -1
- package/dist/cjs/components/inline-confirm/InlineConfirm.js.map +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.d.ts +2 -5
- package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.d.ts.map +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js +5 -5
- package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js.map +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirmTarget.d.ts +2 -2
- package/dist/cjs/components/inline-confirm/InlineConfirmTarget.d.ts.map +1 -1
- package/dist/cjs/components/inline-confirm/InlineConfirmTarget.js +3 -3
- package/dist/cjs/components/inline-confirm/InlineConfirmTarget.js.map +1 -1
- package/dist/cjs/components/table/Table.d.ts +68 -55
- package/dist/cjs/components/table/Table.d.ts.map +1 -1
- package/dist/cjs/components/table/Table.js +129 -174
- package/dist/cjs/components/table/Table.js.map +1 -1
- package/dist/cjs/components/table/Table.module.css +8 -1
- package/dist/cjs/components/table/Table.types.d.ts +52 -147
- package/dist/cjs/components/table/Table.types.d.ts.map +1 -1
- package/dist/cjs/components/table/TableContext.d.ts +15 -10
- package/dist/cjs/components/table/TableContext.d.ts.map +1 -1
- package/dist/cjs/components/table/TableContext.js +5 -20
- package/dist/cjs/components/table/TableContext.js.map +1 -1
- package/dist/cjs/components/table/index.d.ts +3 -3
- package/dist/cjs/components/table/index.d.ts.map +1 -1
- package/dist/cjs/components/table/index.js +5 -1
- package/dist/cjs/components/table/index.js.map +1 -1
- package/dist/cjs/components/table/layouts/TableLayoutControl.js +6 -6
- package/dist/cjs/components/table/layouts/TableLayoutControl.js.map +1 -1
- package/dist/cjs/components/table/layouts/TableLayouts.d.ts +1 -22
- package/dist/cjs/components/table/layouts/TableLayouts.d.ts.map +1 -1
- package/dist/cjs/components/table/layouts/TableLayouts.js.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayout.d.ts +1 -2
- package/dist/cjs/components/table/layouts/row-layout/RowLayout.d.ts.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayout.js.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutBody.d.ts +2 -3
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutBody.d.ts.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutBody.js +17 -18
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutBody.js.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutHeader.d.ts +2 -3
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutHeader.d.ts.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutHeader.js +9 -8
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutHeader.js.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutIcon.d.ts +1 -5
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutIcon.d.ts.map +1 -1
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutIcon.js +3 -9
- package/dist/cjs/components/table/layouts/row-layout/RowLayoutIcon.js.map +1 -1
- package/dist/cjs/components/table/table-actions/TableActionContext.d.ts +9 -0
- package/dist/cjs/components/table/table-actions/TableActionContext.d.ts.map +1 -0
- package/dist/cjs/components/table/table-actions/TableActionContext.js +24 -0
- package/dist/cjs/components/table/table-actions/TableActionContext.js.map +1 -0
- package/dist/cjs/components/table/table-actions/TableActionItem.d.ts +44 -0
- package/dist/cjs/components/table/table-actions/TableActionItem.d.ts.map +1 -0
- package/dist/cjs/components/table/table-actions/TableActionItem.js +59 -0
- package/dist/cjs/components/table/table-actions/TableActionItem.js.map +1 -0
- package/dist/cjs/components/table/table-actions/TableActionsList.d.ts +37 -0
- package/dist/cjs/components/table/table-actions/TableActionsList.d.ts.map +1 -0
- package/dist/cjs/components/table/table-actions/TableActionsList.js +217 -0
- package/dist/cjs/components/table/table-actions/TableActionsList.js.map +1 -0
- package/dist/cjs/components/table/table-actions/TableHeaderActions.d.ts +11 -0
- package/dist/cjs/components/table/table-actions/TableHeaderActions.d.ts.map +1 -0
- package/dist/cjs/components/table/table-actions/TableHeaderActions.js +59 -0
- package/dist/cjs/components/table/table-actions/TableHeaderActions.js.map +1 -0
- package/dist/cjs/components/table/table-actions/index.d.ts +3 -0
- package/dist/cjs/components/table/table-actions/index.d.ts.map +1 -0
- package/dist/cjs/components/table/table-actions/index.js +9 -0
- package/dist/cjs/components/table/table-actions/index.js.map +1 -0
- package/dist/cjs/components/table/table-column/TableActionsColumn.d.ts +6 -0
- package/dist/cjs/components/table/table-column/TableActionsColumn.d.ts.map +1 -0
- package/dist/cjs/components/table/table-column/TableActionsColumn.js +53 -0
- package/dist/cjs/components/table/table-column/TableActionsColumn.js.map +1 -0
- package/dist/cjs/components/table/table-column/TableCollapsibleColumn.d.ts.map +1 -1
- package/dist/cjs/components/table/table-column/TableCollapsibleColumn.js +6 -2
- package/dist/cjs/components/table/table-column/TableCollapsibleColumn.js.map +1 -1
- package/dist/cjs/components/table/table-column/TableSelectableColumn.d.ts.map +1 -1
- package/dist/cjs/components/table/table-column/TableSelectableColumn.js +4 -0
- package/dist/cjs/components/table/table-column/TableSelectableColumn.js.map +1 -1
- package/dist/cjs/components/table/table-columns-selector/TableColumnsSelector.d.ts +7 -12
- package/dist/cjs/components/table/table-columns-selector/TableColumnsSelector.d.ts.map +1 -1
- package/dist/cjs/components/table/table-columns-selector/TableColumnsSelector.js +24 -20
- package/dist/cjs/components/table/table-columns-selector/TableColumnsSelector.js.map +1 -1
- package/dist/cjs/components/table/table-date-range-picker/TableDateRangePicker.d.ts +1 -2
- package/dist/cjs/components/table/table-date-range-picker/TableDateRangePicker.d.ts.map +1 -1
- package/dist/cjs/components/table/table-date-range-picker/TableDateRangePicker.js +7 -7
- package/dist/cjs/components/table/table-date-range-picker/TableDateRangePicker.js.map +1 -1
- package/dist/cjs/components/table/table-filter/TableFilter.d.ts +1 -2
- package/dist/cjs/components/table/table-filter/TableFilter.d.ts.map +1 -1
- package/dist/cjs/components/table/table-filter/TableFilter.js +11 -16
- package/dist/cjs/components/table/table-filter/TableFilter.js.map +1 -1
- package/dist/cjs/components/table/table-header/TableHeader.d.ts +7 -2
- package/dist/cjs/components/table/table-header/TableHeader.d.ts.map +1 -1
- package/dist/cjs/components/table/table-header/TableHeader.js +15 -12
- package/dist/cjs/components/table/table-header/TableHeader.js.map +1 -1
- package/dist/cjs/components/table/table-header/Th.d.ts +1 -2
- package/dist/cjs/components/table/table-header/Th.d.ts.map +1 -1
- package/dist/cjs/components/table/table-header/Th.js +7 -3
- package/dist/cjs/components/table/table-header/Th.js.map +1 -1
- package/dist/cjs/components/table/table-last-updated/TableLastUpdated.d.ts +1 -3
- package/dist/cjs/components/table/table-last-updated/TableLastUpdated.d.ts.map +1 -1
- package/dist/cjs/components/table/table-last-updated/TableLastUpdated.js +6 -9
- package/dist/cjs/components/table/table-last-updated/TableLastUpdated.js.map +1 -1
- package/dist/cjs/components/table/table-no-data/TableNoData.d.ts +6 -0
- package/dist/cjs/components/table/table-no-data/TableNoData.d.ts.map +1 -0
- package/dist/cjs/components/table/{table-consumer/TableConsumer.js → table-no-data/TableNoData.js} +4 -4
- package/dist/cjs/components/table/table-no-data/TableNoData.js.map +1 -0
- package/dist/cjs/components/table/table-pagination/TablePagination.d.ts.map +1 -1
- package/dist/cjs/components/table/table-pagination/TablePagination.js +9 -11
- package/dist/cjs/components/table/table-pagination/TablePagination.js.map +1 -1
- package/dist/cjs/components/table/table-pagination/TablePagination.types.d.ts +0 -4
- package/dist/cjs/components/table/table-pagination/TablePagination.types.d.ts.map +1 -1
- package/dist/cjs/components/table/table-per-page/TablePerPage.d.ts.map +1 -1
- package/dist/cjs/components/table/table-per-page/TablePerPage.js +16 -16
- package/dist/cjs/components/table/table-per-page/TablePerPage.js.map +1 -1
- package/dist/cjs/components/table/table-predicate/TablePredicate.d.ts +1 -2
- package/dist/cjs/components/table/table-predicate/TablePredicate.d.ts.map +1 -1
- package/dist/cjs/components/table/table-predicate/TablePredicate.js +12 -14
- package/dist/cjs/components/table/table-predicate/TablePredicate.js.map +1 -1
- package/dist/cjs/components/table/use-table.d.ts +182 -0
- package/dist/cjs/components/table/use-table.d.ts.map +1 -0
- package/dist/cjs/components/table/use-table.js +145 -0
- package/dist/cjs/components/table/use-table.js.map +1 -0
- package/dist/cjs/index.d.ts +11 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/theme/Theme.d.ts.map +1 -1
- package/dist/cjs/theme/Theme.js +0 -1
- package/dist/cjs/theme/Theme.js.map +1 -1
- package/dist/esm/components/button/Button.d.ts +1 -2
- package/dist/esm/components/button/Button.d.ts.map +1 -1
- package/dist/esm/components/button/Button.js.map +1 -1
- package/dist/esm/components/code-editor/CodeEditor.d.ts.map +1 -1
- package/dist/esm/components/code-editor/CodeEditor.js +2 -4
- package/dist/esm/components/code-editor/CodeEditor.js.map +1 -1
- package/dist/esm/components/header/__tests__/__snapshots__/Header.spec.tsx.snap +0 -5
- package/dist/esm/components/inline-confirm/InlineConfirm.d.ts +10 -2
- package/dist/esm/components/inline-confirm/InlineConfirm.d.ts.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirm.js +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirm.js.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmPrompt.d.ts +2 -5
- package/dist/esm/components/inline-confirm/InlineConfirmPrompt.d.ts.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js +4 -4
- package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmTarget.d.ts +2 -2
- package/dist/esm/components/inline-confirm/InlineConfirmTarget.d.ts.map +1 -1
- package/dist/esm/components/inline-confirm/InlineConfirmTarget.js +2 -2
- package/dist/esm/components/inline-confirm/InlineConfirmTarget.js.map +1 -1
- package/dist/esm/components/table/Table.d.ts +68 -55
- package/dist/esm/components/table/Table.d.ts.map +1 -1
- package/dist/esm/components/table/Table.js +122 -157
- package/dist/esm/components/table/Table.js.map +1 -1
- package/dist/esm/components/table/Table.module.css +8 -1
- package/dist/esm/components/table/Table.types.d.ts +52 -147
- package/dist/esm/components/table/Table.types.d.ts.map +1 -1
- package/dist/esm/components/table/Table.types.js.map +1 -1
- package/dist/esm/components/table/TableContext.d.ts +15 -10
- package/dist/esm/components/table/TableContext.d.ts.map +1 -1
- package/dist/esm/components/table/TableContext.js +1 -10
- package/dist/esm/components/table/TableContext.js.map +1 -1
- package/dist/esm/components/table/index.d.ts +3 -3
- package/dist/esm/components/table/index.d.ts.map +1 -1
- package/dist/esm/components/table/index.js +2 -1
- package/dist/esm/components/table/index.js.map +1 -1
- package/dist/esm/components/table/layouts/TableLayoutControl.js +4 -4
- package/dist/esm/components/table/layouts/TableLayoutControl.js.map +1 -1
- package/dist/esm/components/table/layouts/TableLayouts.d.ts +1 -22
- package/dist/esm/components/table/layouts/TableLayouts.d.ts.map +1 -1
- package/dist/esm/components/table/layouts/TableLayouts.js.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayout.d.ts +1 -2
- package/dist/esm/components/table/layouts/row-layout/RowLayout.d.ts.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayout.js.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayoutBody.d.ts +2 -3
- package/dist/esm/components/table/layouts/row-layout/RowLayoutBody.d.ts.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayoutBody.js +13 -11
- package/dist/esm/components/table/layouts/row-layout/RowLayoutBody.js.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayoutHeader.d.ts +2 -3
- package/dist/esm/components/table/layouts/row-layout/RowLayoutHeader.d.ts.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayoutHeader.js +5 -5
- package/dist/esm/components/table/layouts/row-layout/RowLayoutHeader.js.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayoutIcon.d.ts +1 -5
- package/dist/esm/components/table/layouts/row-layout/RowLayoutIcon.d.ts.map +1 -1
- package/dist/esm/components/table/layouts/row-layout/RowLayoutIcon.js +2 -8
- package/dist/esm/components/table/layouts/row-layout/RowLayoutIcon.js.map +1 -1
- package/dist/esm/components/table/table-actions/TableActionContext.d.ts +9 -0
- package/dist/esm/components/table/table-actions/TableActionContext.d.ts.map +1 -0
- package/dist/esm/components/table/table-actions/TableActionContext.js +4 -0
- package/dist/esm/components/table/table-actions/TableActionContext.js.map +1 -0
- package/dist/esm/components/table/table-actions/TableActionItem.d.ts +44 -0
- package/dist/esm/components/table/table-actions/TableActionItem.d.ts.map +1 -0
- package/dist/esm/components/table/table-actions/TableActionItem.js +40 -0
- package/dist/esm/components/table/table-actions/TableActionItem.js.map +1 -0
- package/dist/esm/components/table/table-actions/TableActionsList.d.ts +37 -0
- package/dist/esm/components/table/table-actions/TableActionsList.d.ts.map +1 -0
- package/dist/esm/components/table/table-actions/TableActionsList.js +187 -0
- package/dist/esm/components/table/table-actions/TableActionsList.js.map +1 -0
- package/dist/esm/components/table/table-actions/TableHeaderActions.d.ts +11 -0
- package/dist/esm/components/table/table-actions/TableHeaderActions.d.ts.map +1 -0
- package/dist/esm/components/table/table-actions/TableHeaderActions.js +43 -0
- package/dist/esm/components/table/table-actions/TableHeaderActions.js.map +1 -0
- package/dist/esm/components/table/table-actions/index.d.ts +3 -0
- package/dist/esm/components/table/table-actions/index.d.ts.map +1 -0
- package/dist/esm/components/table/table-actions/index.js +4 -0
- package/dist/esm/components/table/table-actions/index.js.map +1 -0
- package/dist/esm/components/table/table-column/TableActionsColumn.d.ts +6 -0
- package/dist/esm/components/table/table-column/TableActionsColumn.d.ts.map +1 -0
- package/dist/esm/components/table/table-column/TableActionsColumn.js +40 -0
- package/dist/esm/components/table/table-column/TableActionsColumn.js.map +1 -0
- package/dist/esm/components/table/table-column/TableCollapsibleColumn.d.ts.map +1 -1
- package/dist/esm/components/table/table-column/TableCollapsibleColumn.js +7 -3
- package/dist/esm/components/table/table-column/TableCollapsibleColumn.js.map +1 -1
- package/dist/esm/components/table/table-column/TableSelectableColumn.d.ts.map +1 -1
- package/dist/esm/components/table/table-column/TableSelectableColumn.js +4 -0
- package/dist/esm/components/table/table-column/TableSelectableColumn.js.map +1 -1
- package/dist/esm/components/table/table-columns-selector/TableColumnsSelector.d.ts +7 -12
- package/dist/esm/components/table/table-columns-selector/TableColumnsSelector.d.ts.map +1 -1
- package/dist/esm/components/table/table-columns-selector/TableColumnsSelector.js +22 -20
- package/dist/esm/components/table/table-columns-selector/TableColumnsSelector.js.map +1 -1
- package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.d.ts +1 -2
- package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.d.ts.map +1 -1
- package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.js +8 -8
- package/dist/esm/components/table/table-date-range-picker/TableDateRangePicker.js.map +1 -1
- package/dist/esm/components/table/table-filter/TableFilter.d.ts +1 -2
- package/dist/esm/components/table/table-filter/TableFilter.d.ts.map +1 -1
- package/dist/esm/components/table/table-filter/TableFilter.js +14 -18
- package/dist/esm/components/table/table-filter/TableFilter.js.map +1 -1
- package/dist/esm/components/table/table-header/TableHeader.d.ts +7 -2
- package/dist/esm/components/table/table-header/TableHeader.d.ts.map +1 -1
- package/dist/esm/components/table/table-header/TableHeader.js +15 -13
- package/dist/esm/components/table/table-header/TableHeader.js.map +1 -1
- package/dist/esm/components/table/table-header/Th.d.ts +1 -2
- package/dist/esm/components/table/table-header/Th.d.ts.map +1 -1
- package/dist/esm/components/table/table-header/Th.js +8 -4
- package/dist/esm/components/table/table-header/Th.js.map +1 -1
- package/dist/esm/components/table/table-last-updated/TableLastUpdated.d.ts +1 -3
- package/dist/esm/components/table/table-last-updated/TableLastUpdated.d.ts.map +1 -1
- package/dist/esm/components/table/table-last-updated/TableLastUpdated.js +6 -8
- package/dist/esm/components/table/table-last-updated/TableLastUpdated.js.map +1 -1
- package/dist/esm/components/table/table-no-data/TableNoData.d.ts +6 -0
- package/dist/esm/components/table/table-no-data/TableNoData.d.ts.map +1 -0
- package/dist/esm/components/table/table-no-data/TableNoData.js +6 -0
- package/dist/esm/components/table/table-no-data/TableNoData.js.map +1 -0
- package/dist/esm/components/table/table-pagination/TablePagination.d.ts.map +1 -1
- package/dist/esm/components/table/table-pagination/TablePagination.js +10 -13
- package/dist/esm/components/table/table-pagination/TablePagination.js.map +1 -1
- package/dist/esm/components/table/table-pagination/TablePagination.types.d.ts +0 -4
- package/dist/esm/components/table/table-pagination/TablePagination.types.d.ts.map +1 -1
- package/dist/esm/components/table/table-pagination/TablePagination.types.js.map +1 -1
- package/dist/esm/components/table/table-per-page/TablePerPage.d.ts.map +1 -1
- package/dist/esm/components/table/table-per-page/TablePerPage.js +13 -12
- package/dist/esm/components/table/table-per-page/TablePerPage.js.map +1 -1
- package/dist/esm/components/table/table-predicate/TablePredicate.d.ts +1 -2
- package/dist/esm/components/table/table-predicate/TablePredicate.d.ts.map +1 -1
- package/dist/esm/components/table/table-predicate/TablePredicate.js +14 -18
- package/dist/esm/components/table/table-predicate/TablePredicate.js.map +1 -1
- package/dist/esm/components/table/use-table.d.ts +182 -0
- package/dist/esm/components/table/use-table.d.ts.map +1 -0
- package/dist/esm/components/table/use-table.js +122 -0
- package/dist/esm/components/table/use-table.js.map +1 -0
- package/dist/esm/index.d.ts +11 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/theme/Theme.d.ts.map +1 -1
- package/dist/esm/theme/Theme.js +0 -1
- package/dist/esm/theme/Theme.js.map +1 -1
- package/package.json +36 -22
- package/src/__tests__/Utils.tsx +3 -1
- package/src/components/button/Button.tsx +3 -1
- package/src/components/code-editor/CodeEditor.tsx +1 -7
- package/src/components/header/__tests__/__snapshots__/Header.spec.tsx.snap +0 -5
- package/src/components/inline-confirm/InlineConfirm.tsx +12 -4
- package/src/components/inline-confirm/InlineConfirmPrompt.tsx +6 -9
- package/src/components/inline-confirm/InlineConfirmTarget.tsx +9 -4
- package/src/components/inline-confirm/__tests__/InlineConfirm.spec.tsx +37 -12
- package/src/components/table/Table.module.css +8 -1
- package/src/components/table/Table.tsx +148 -170
- package/src/components/table/Table.types.ts +57 -160
- package/src/components/table/TableContext.tsx +17 -16
- package/src/components/table/__tests__/Table.spec.tsx +176 -200
- package/src/components/table/__tests__/TableActions.spec.tsx +142 -31
- package/src/components/table/__tests__/TableCollapsibleColumn.spec.tsx +88 -0
- package/src/components/table/__tests__/TableColumnsSelector.spec.tsx +160 -119
- package/src/components/table/__tests__/TableDateRangePicker.spec.tsx +13 -17
- package/src/components/table/__tests__/TableFilter.spec.tsx +52 -96
- package/src/components/table/__tests__/TableLastUpdated.spec.tsx +18 -37
- package/src/components/table/__tests__/TablePagination.spec.tsx +84 -100
- package/src/components/table/__tests__/TablePerPage.spec.tsx +81 -104
- package/src/components/table/__tests__/TablePredicate.spec.tsx +26 -80
- package/src/components/table/__tests__/Th.spec.tsx +24 -19
- package/src/components/table/index.ts +3 -9
- package/src/components/table/layouts/TableLayoutControl.tsx +4 -4
- package/src/components/table/layouts/TableLayouts.tsx +0 -22
- package/src/components/table/layouts/__tests__/RowLayout.spec.tsx +210 -182
- package/src/components/table/layouts/row-layout/RowLayout.tsx +2 -2
- package/src/components/table/layouts/row-layout/RowLayoutBody.tsx +17 -17
- package/src/components/table/layouts/row-layout/RowLayoutHeader.tsx +18 -9
- package/src/components/table/layouts/row-layout/RowLayoutIcon.tsx +3 -8
- package/src/components/table/table-actions/TableActionContext.ts +9 -0
- package/src/components/table/table-actions/TableActionItem.tsx +80 -0
- package/src/components/table/table-actions/TableActionsList.tsx +209 -0
- package/src/components/table/table-actions/TableHeaderActions.tsx +56 -0
- package/src/components/table/table-actions/index.ts +2 -0
- package/src/components/table/table-column/TableActionsColumn.tsx +39 -0
- package/src/components/table/table-column/TableCollapsibleColumn.tsx +7 -3
- package/src/components/table/table-column/TableSelectableColumn.tsx +4 -0
- package/src/components/table/table-columns-selector/TableColumnsSelector.tsx +33 -28
- package/src/components/table/table-date-range-picker/TableDateRangePicker.tsx +9 -11
- package/src/components/table/table-filter/TableFilter.tsx +12 -18
- package/src/components/table/table-header/TableHeader.tsx +32 -15
- package/src/components/table/table-header/Th.tsx +8 -7
- package/src/components/table/table-last-updated/TableLastUpdated.tsx +7 -10
- package/src/components/table/table-no-data/TableNoData.tsx +7 -0
- package/src/components/table/table-pagination/TablePagination.tsx +8 -11
- package/src/components/table/table-pagination/TablePagination.types.ts +0 -4
- package/src/components/table/table-per-page/TablePerPage.tsx +8 -10
- package/src/components/table/table-predicate/TablePredicate.tsx +21 -17
- package/src/components/table/use-table.ts +323 -0
- package/src/index.ts +11 -1
- package/src/theme/Theme.tsx +0 -1
- package/dist/cjs/components/table/table-actions/TableActions.d.ts +0 -38
- package/dist/cjs/components/table/table-actions/TableActions.d.ts.map +0 -1
- package/dist/cjs/components/table/table-actions/TableActions.js +0 -47
- package/dist/cjs/components/table/table-actions/TableActions.js.map +0 -1
- package/dist/cjs/components/table/table-consumer/TableConsumer.d.ts +0 -5
- package/dist/cjs/components/table/table-consumer/TableConsumer.d.ts.map +0 -1
- package/dist/cjs/components/table/table-consumer/TableConsumer.js.map +0 -1
- package/dist/cjs/hooks/useRowSelection.d.ts +0 -10
- package/dist/cjs/hooks/useRowSelection.d.ts.map +0 -1
- package/dist/cjs/hooks/useRowSelection.js +0 -80
- package/dist/cjs/hooks/useRowSelection.js.map +0 -1
- package/dist/esm/components/table/table-actions/TableActions.d.ts +0 -38
- package/dist/esm/components/table/table-actions/TableActions.d.ts.map +0 -1
- package/dist/esm/components/table/table-actions/TableActions.js +0 -29
- package/dist/esm/components/table/table-actions/TableActions.js.map +0 -1
- package/dist/esm/components/table/table-consumer/TableConsumer.d.ts +0 -5
- package/dist/esm/components/table/table-consumer/TableConsumer.d.ts.map +0 -1
- package/dist/esm/components/table/table-consumer/TableConsumer.js +0 -6
- package/dist/esm/components/table/table-consumer/TableConsumer.js.map +0 -1
- package/dist/esm/hooks/useRowSelection.d.ts +0 -10
- package/dist/esm/hooks/useRowSelection.d.ts.map +0 -1
- package/dist/esm/hooks/useRowSelection.js +0 -59
- package/dist/esm/hooks/useRowSelection.js.map +0 -1
- package/src/components/table/table-actions/TableActions.tsx +0 -67
- package/src/components/table/table-consumer/TableConsumer.tsx +0 -3
- package/src/hooks/useRowSelection.ts +0 -76
|
@@ -1,41 +1,40 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { Box, Center, Loader, useProps, useStyles } from '@mantine/core';
|
|
3
|
-
import {
|
|
4
|
-
import { useDidUpdate, useMergedRef } from '@mantine/hooks';
|
|
3
|
+
import { useClickOutside, useMergedRef } from '@mantine/hooks';
|
|
5
4
|
import { defaultColumnSizing, getCoreRowModel, useReactTable } from '@tanstack/react-table';
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import { Children, cloneElement, useCallback, useEffect, useState } from 'react';
|
|
9
|
-
import { useRowSelection } from '../../hooks/useRowSelection';
|
|
5
|
+
import isEqual from 'fast-deep-equal';
|
|
6
|
+
import { Children, useRef } from 'react';
|
|
10
7
|
import { identity } from '../../utils';
|
|
8
|
+
import classes from './Table.module.css';
|
|
9
|
+
import { TableProvider } from './TableContext';
|
|
11
10
|
import { TableLayouts } from './layouts/TableLayouts';
|
|
12
|
-
import {
|
|
11
|
+
import { TableActionItem } from './table-actions';
|
|
12
|
+
import { TableActionsColumn } from './table-column/TableActionsColumn';
|
|
13
13
|
import { TableAccordionColumn, TableCollapsibleColumn } from './table-column/TableCollapsibleColumn';
|
|
14
14
|
import { TableSelectableColumn } from './table-column/TableSelectableColumn';
|
|
15
15
|
import { TableColumnsSelector } from './table-columns-selector/TableColumnsSelector';
|
|
16
|
-
import { TableConsumer } from './table-consumer/TableConsumer';
|
|
17
16
|
import { TableDateRangePicker } from './table-date-range-picker/TableDateRangePicker';
|
|
18
17
|
import { TableFilter } from './table-filter/TableFilter';
|
|
19
18
|
import { TableFooter } from './table-footer/TableFooter';
|
|
20
19
|
import { TableHeader } from './table-header/TableHeader';
|
|
21
20
|
import { TableLastUpdated } from './table-last-updated/TableLastUpdated';
|
|
22
21
|
import { TableLoading } from './table-loading/TableLoading';
|
|
22
|
+
import { TableNoData } from './table-no-data/TableNoData';
|
|
23
23
|
import { TablePagination } from './table-pagination/TablePagination';
|
|
24
24
|
import { TablePerPage } from './table-per-page/TablePerPage';
|
|
25
25
|
import { TablePredicate } from './table-predicate/TablePredicate';
|
|
26
|
-
import classes from './Table.module.css';
|
|
27
|
-
import { TableContext, TableStylesProvider } from './TableContext';
|
|
28
26
|
const defaultProps = {
|
|
29
27
|
layouts: [
|
|
30
28
|
TableLayouts.Rows
|
|
31
29
|
],
|
|
30
|
+
layoutProps: {},
|
|
32
31
|
loading: false,
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
32
|
+
additionalRootNodes: [],
|
|
33
|
+
options: {},
|
|
34
|
+
getRowActions: ()=>[]
|
|
36
35
|
};
|
|
37
36
|
export const Table = (props)=>{
|
|
38
|
-
const { data, getRowId,
|
|
37
|
+
const { store, data, getRowId, getRowAttributes, getRowExpandedContent, getRowActions, columns, layouts, layoutProps, children, loading, additionalRootNodes, options, ref, // Style props
|
|
39
38
|
style, className, classNames, styles, unstyled, ...others } = useProps('PlasmaTable', defaultProps, props);
|
|
40
39
|
const getStyles = useStyles({
|
|
41
40
|
name: 'PlasmaTable',
|
|
@@ -50,89 +49,74 @@ export const Table = (props)=>{
|
|
|
50
49
|
const convertedChildren = Children.toArray(children);
|
|
51
50
|
const header = convertedChildren.find((child)=>child.type === TableHeader);
|
|
52
51
|
const footer = convertedChildren.find((child)=>child.type === TableFooter);
|
|
53
|
-
const consumer = convertedChildren.find((child)=>child.type === TableConsumer);
|
|
54
52
|
const lastUpdated = convertedChildren.find((child)=>child.type === TableLastUpdated);
|
|
55
|
-
const
|
|
56
|
-
const form = useForm({
|
|
57
|
-
initialValues: {
|
|
58
|
-
predicates: initialState?.predicates ?? {},
|
|
59
|
-
dateRange: initialState?.dateRange ?? [
|
|
60
|
-
null,
|
|
61
|
-
null
|
|
62
|
-
],
|
|
63
|
-
layout: initialState?.layout ?? layouts[0].displayName
|
|
64
|
-
}
|
|
65
|
-
});
|
|
53
|
+
const noData = convertedChildren.find((child)=>child.type === TableNoData);
|
|
66
54
|
const table = useReactTable({
|
|
67
|
-
initialState: defaultsDeep(initialStateWithoutForm, {
|
|
68
|
-
pagination: {
|
|
69
|
-
pageSize: TablePerPage.DEFAULT_SIZE
|
|
70
|
-
},
|
|
71
|
-
globalFilter: ''
|
|
72
|
-
}),
|
|
73
55
|
data,
|
|
74
|
-
|
|
56
|
+
state: {
|
|
57
|
+
globalFilter: store.state.globalFilter,
|
|
58
|
+
sorting: store.state.sorting,
|
|
59
|
+
pagination: store.state.pagination,
|
|
60
|
+
columnVisibility: store.state.columnVisibility,
|
|
61
|
+
expanded: store.state.expanded
|
|
62
|
+
},
|
|
63
|
+
onGlobalFilterChange: store.setGlobalFilter,
|
|
64
|
+
onExpandedChange: store.setExpanded,
|
|
65
|
+
onSortingChange: store.setSorting,
|
|
66
|
+
onPaginationChange: store.setPagination,
|
|
67
|
+
onColumnVisibilityChange: store.setColumnVisibility,
|
|
68
|
+
columns: store.multiRowSelectionEnabled ? [
|
|
75
69
|
TableSelectableColumn
|
|
76
70
|
].concat(columns) : columns,
|
|
77
71
|
getCoreRowModel: getCoreRowModel(),
|
|
78
72
|
manualPagination: options?.getPaginationRowModel === undefined,
|
|
79
|
-
enableMultiRowSelection: !!multiRowSelectionEnabled,
|
|
73
|
+
enableMultiRowSelection: !!store.multiRowSelectionEnabled,
|
|
80
74
|
getRowId,
|
|
81
|
-
getRowCanExpand: (row)=>!!
|
|
75
|
+
getRowCanExpand: (row)=>!!getRowExpandedContent?.(row.original, row.index, row) ?? false,
|
|
82
76
|
enableRowSelection: !loading,
|
|
83
77
|
defaultColumn: {
|
|
84
78
|
size: undefined,
|
|
85
79
|
minSize: defaultColumnSizing.minSize,
|
|
86
80
|
maxSize: defaultColumnSizing.maxSize
|
|
87
81
|
},
|
|
82
|
+
rowCount: options?.getFilteredRowModel ? undefined : store.state.totalEntries,
|
|
88
83
|
...options
|
|
89
84
|
});
|
|
90
|
-
const getAllColumns = table.getAllFlatColumns;
|
|
91
|
-
const [state, setState] = useState(table.initialState);
|
|
92
85
|
table.setOptions((prev)=>({
|
|
93
86
|
...prev,
|
|
94
|
-
state:
|
|
95
|
-
|
|
87
|
+
state: {
|
|
88
|
+
...prev.state,
|
|
89
|
+
rowSelection: store.state.rowSelection
|
|
90
|
+
},
|
|
91
|
+
onRowSelectionChange: (rowSelectionUpdater)=>{
|
|
92
|
+
store.setRowSelection((old)=>{
|
|
93
|
+
const newRowSelection = rowSelectionUpdater instanceof Function ? rowSelectionUpdater(old) : rowSelectionUpdater;
|
|
94
|
+
if (isEqual(old, newRowSelection)) {
|
|
95
|
+
return old;
|
|
96
|
+
}
|
|
97
|
+
const rows = table.getRowModel().rowsById;
|
|
98
|
+
Object.keys(newRowSelection).forEach((rowId)=>{
|
|
99
|
+
if (newRowSelection[rowId] === true) {
|
|
100
|
+
if (!rows[rowId]) {
|
|
101
|
+
console.error('The table was not initialized properly, the rowSelection state should contain an object of type Record<string, TData>.');
|
|
102
|
+
}
|
|
103
|
+
newRowSelection[rowId] = rows[rowId]?.original ?? true;
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
return newRowSelection;
|
|
107
|
+
});
|
|
108
|
+
}
|
|
96
109
|
}));
|
|
97
|
-
const
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
});
|
|
102
|
-
const containerRef = useMergedRef(outsideClickRef, ref);
|
|
103
|
-
const isFiltered = !!state.globalFilter || Object.keys(form.values?.predicates ?? {}).some((predicate)=>!!form.values.predicates[predicate]) || !!form.values.dateRange?.[0] || !!form.values.dateRange?.[1];
|
|
104
|
-
const triggerChange = debounce(()=>onChange?.({
|
|
105
|
-
...state,
|
|
106
|
-
...form.values
|
|
107
|
-
}), 500);
|
|
108
|
-
useEffect(()=>{
|
|
109
|
-
onMount?.({
|
|
110
|
-
...state,
|
|
111
|
-
...form.values
|
|
112
|
-
});
|
|
113
|
-
return ()=>{
|
|
114
|
-
triggerChange.cancel();
|
|
115
|
-
};
|
|
116
|
-
}, []);
|
|
117
|
-
useDidUpdate(()=>{
|
|
118
|
-
triggerChange();
|
|
119
|
-
if (!multiRowSelectionEnabled) {
|
|
120
|
-
clearSelection();
|
|
110
|
+
const containerRef = useRef();
|
|
111
|
+
useClickOutside(()=>{
|
|
112
|
+
if (!store.multiRowSelectionEnabled) {
|
|
113
|
+
store.clearRowSelection();
|
|
121
114
|
}
|
|
122
|
-
}, [
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
state.sorting,
|
|
126
|
-
JSON.stringify(form.values.dateRange),
|
|
127
|
-
JSON.stringify(form.values.predicates)
|
|
115
|
+
}, null, [
|
|
116
|
+
containerRef.current,
|
|
117
|
+
...additionalRootNodes
|
|
128
118
|
]);
|
|
129
|
-
const
|
|
130
|
-
form.setFieldValue('predicates', initialState.predicates ?? {});
|
|
131
|
-
setState((prevState)=>({
|
|
132
|
-
...prevState,
|
|
133
|
-
globalFilter: ''
|
|
134
|
-
}));
|
|
135
|
-
}, []);
|
|
119
|
+
const mergedRef = useMergedRef(containerRef, ref);
|
|
136
120
|
if (!data) {
|
|
137
121
|
return /*#__PURE__*/ _jsx(Center, {
|
|
138
122
|
style: {
|
|
@@ -141,92 +125,73 @@ export const Table = (props)=>{
|
|
|
141
125
|
children: /*#__PURE__*/ _jsx(Loader, {})
|
|
142
126
|
});
|
|
143
127
|
}
|
|
144
|
-
const Layout = layouts.find(({ displayName })=>displayName ===
|
|
128
|
+
const Layout = store.state.layout === null ? layouts[0] : layouts.find(({ displayName })=>displayName === store.state.layout);
|
|
145
129
|
const hasRows = table.getRowModel().rows.length > 0;
|
|
146
130
|
return /*#__PURE__*/ _jsx(Box, {
|
|
147
|
-
ref:
|
|
131
|
+
ref: mergedRef,
|
|
148
132
|
...others,
|
|
149
133
|
...getStyles('root'),
|
|
150
|
-
children: /*#__PURE__*/ _jsx(
|
|
134
|
+
children: /*#__PURE__*/ _jsx(TableProvider, {
|
|
151
135
|
value: {
|
|
152
|
-
getStyles
|
|
136
|
+
getStyles,
|
|
137
|
+
getRowActions,
|
|
138
|
+
store,
|
|
139
|
+
table,
|
|
140
|
+
layouts,
|
|
141
|
+
containerRef
|
|
153
142
|
},
|
|
154
|
-
children: /*#__PURE__*/ _jsx(
|
|
155
|
-
|
|
156
|
-
onChange: triggerChange,
|
|
157
|
-
state,
|
|
158
|
-
isFiltered,
|
|
159
|
-
setState,
|
|
160
|
-
clearFilters,
|
|
161
|
-
getSelectedRow,
|
|
162
|
-
getSelectedRows,
|
|
163
|
-
clearSelection,
|
|
164
|
-
form,
|
|
165
|
-
containerRef: outsideClickRef,
|
|
166
|
-
multiRowSelectionEnabled,
|
|
167
|
-
getPageCount: table.getPageCount,
|
|
168
|
-
getAllColumns,
|
|
169
|
-
disableRowSelection,
|
|
170
|
-
layouts
|
|
171
|
-
},
|
|
172
|
-
children: /*#__PURE__*/ _jsxs(Layout, {
|
|
143
|
+
children: /*#__PURE__*/ _jsx(Layout, {
|
|
144
|
+
children: store.isVacant && !store.isFiltered ? noData : /*#__PURE__*/ _jsxs(_Fragment, {
|
|
173
145
|
children: [
|
|
174
|
-
|
|
175
|
-
|
|
146
|
+
/*#__PURE__*/ _jsxs(Box, {
|
|
147
|
+
component: "table",
|
|
148
|
+
...getStyles('table'),
|
|
149
|
+
pb: "sm",
|
|
150
|
+
mod: {
|
|
151
|
+
loading
|
|
152
|
+
},
|
|
176
153
|
children: [
|
|
177
|
-
/*#__PURE__*/ _jsxs(
|
|
178
|
-
|
|
179
|
-
...getStyles('table'),
|
|
180
|
-
pb: "sm",
|
|
154
|
+
/*#__PURE__*/ _jsxs("thead", {
|
|
155
|
+
...getStyles('header'),
|
|
181
156
|
children: [
|
|
182
|
-
/*#__PURE__*/
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
},
|
|
190
|
-
colSpan: table.getAllColumns().length,
|
|
191
|
-
children: header
|
|
192
|
-
})
|
|
193
|
-
}) : null,
|
|
194
|
-
/*#__PURE__*/ _jsx(Layout.Header, {
|
|
195
|
-
table: table,
|
|
196
|
-
doubleClickAction: doubleClickAction,
|
|
197
|
-
getExpandChildren: getExpandChildren,
|
|
198
|
-
loading: loading
|
|
199
|
-
})
|
|
200
|
-
]
|
|
201
|
-
}),
|
|
202
|
-
/*#__PURE__*/ _jsx("tbody", {
|
|
203
|
-
...getStyles('body'),
|
|
204
|
-
children: hasRows ? /*#__PURE__*/ _jsx(Layout.Body, {
|
|
205
|
-
table: table,
|
|
206
|
-
doubleClickAction: doubleClickAction,
|
|
207
|
-
getExpandChildren: getExpandChildren,
|
|
208
|
-
loading: loading
|
|
209
|
-
}) : /*#__PURE__*/ _jsx("tr", {
|
|
210
|
-
children: /*#__PURE__*/ _jsx("td", {
|
|
211
|
-
colSpan: table.getAllColumns().length,
|
|
212
|
-
children: /*#__PURE__*/ _jsx(TableLoading, {
|
|
213
|
-
visible: loading,
|
|
214
|
-
children: noDataChildren
|
|
215
|
-
})
|
|
216
|
-
})
|
|
157
|
+
!!header ? /*#__PURE__*/ _jsx("tr", {
|
|
158
|
+
children: /*#__PURE__*/ _jsx("th", {
|
|
159
|
+
style: {
|
|
160
|
+
padding: 0
|
|
161
|
+
},
|
|
162
|
+
colSpan: table.getAllColumns().length,
|
|
163
|
+
children: header
|
|
217
164
|
})
|
|
165
|
+
}) : null,
|
|
166
|
+
/*#__PURE__*/ _jsx(Layout.Header, {
|
|
167
|
+
getRowExpandedContent: getRowExpandedContent,
|
|
168
|
+
getRowAttributes: getRowAttributes,
|
|
169
|
+
loading: loading,
|
|
170
|
+
...layoutProps
|
|
218
171
|
})
|
|
219
172
|
]
|
|
220
173
|
}),
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
174
|
+
/*#__PURE__*/ _jsx("tbody", {
|
|
175
|
+
...getStyles('body'),
|
|
176
|
+
children: hasRows ? /*#__PURE__*/ _jsx(Layout.Body, {
|
|
177
|
+
getRowExpandedContent: getRowExpandedContent,
|
|
178
|
+
getRowAttributes: getRowAttributes,
|
|
179
|
+
loading: loading,
|
|
180
|
+
...layoutProps
|
|
181
|
+
}) : /*#__PURE__*/ _jsx("tr", {
|
|
182
|
+
children: /*#__PURE__*/ _jsx("td", {
|
|
183
|
+
colSpan: table.getAllColumns().length,
|
|
184
|
+
children: /*#__PURE__*/ _jsx(TableLoading, {
|
|
185
|
+
visible: loading || !store.isFiltered,
|
|
186
|
+
children: noData
|
|
187
|
+
})
|
|
188
|
+
})
|
|
189
|
+
})
|
|
190
|
+
})
|
|
228
191
|
]
|
|
229
|
-
})
|
|
192
|
+
}),
|
|
193
|
+
footer,
|
|
194
|
+
lastUpdated
|
|
230
195
|
]
|
|
231
196
|
})
|
|
232
197
|
})
|
|
@@ -242,22 +207,22 @@ export const TableComponentsOrder = {
|
|
|
242
207
|
ColumnsSelector: 2,
|
|
243
208
|
LayoutControl: 1
|
|
244
209
|
};
|
|
245
|
-
Table.
|
|
210
|
+
Table.AccordionColumn = TableAccordionColumn;
|
|
211
|
+
Table.ActionsColumn = TableActionsColumn;
|
|
212
|
+
Table.ActionItem = TableActionItem;
|
|
213
|
+
Table.CollapsibleColumn = TableCollapsibleColumn;
|
|
214
|
+
Table.ColumnsSelector = TableColumnsSelector;
|
|
215
|
+
Table.DateRangePicker = TableDateRangePicker;
|
|
246
216
|
Table.Filter = TableFilter;
|
|
247
217
|
Table.Footer = TableFooter;
|
|
248
218
|
Table.Header = TableHeader;
|
|
249
219
|
Table.LastUpdated = TableLastUpdated;
|
|
220
|
+
Table.Layouts = TableLayouts;
|
|
221
|
+
Table.Loading = TableLoading;
|
|
222
|
+
Table.NoData = TableNoData;
|
|
250
223
|
Table.Pagination = TablePagination;
|
|
251
|
-
Table.Predicate = TablePredicate;
|
|
252
224
|
Table.PerPage = TablePerPage;
|
|
253
225
|
Table.Predicate = TablePredicate;
|
|
254
|
-
Table.CollapsibleColumn = TableCollapsibleColumn;
|
|
255
|
-
Table.AccordionColumn = TableAccordionColumn;
|
|
256
|
-
Table.DateRangePicker = TableDateRangePicker;
|
|
257
|
-
Table.Consumer = TableConsumer;
|
|
258
|
-
Table.Loading = TableLoading;
|
|
259
|
-
Table.ColumnsSelector = TableColumnsSelector;
|
|
260
|
-
Table.Layouts = TableLayouts;
|
|
261
226
|
Table.extend = identity;
|
|
262
227
|
|
|
263
228
|
//# sourceMappingURL=Table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import {Box, Center, Factory, Loader, useProps, useStyles} from '@mantine/core';\nimport {useForm} from '@mantine/form';\nimport {useDidUpdate, useMergedRef} from '@mantine/hooks';\nimport {\n ColumnDef,\n defaultColumnSizing,\n getCoreRowModel,\n Row,\n TableState as TanstackTableState,\n useReactTable,\n} from '@tanstack/react-table';\nimport debounce from 'lodash.debounce';\nimport defaultsDeep from 'lodash.defaultsdeep';\nimport {Children, cloneElement, Dispatch, ForwardedRef, ReactElement, useCallback, useEffect, useState} from 'react';\n\nimport {useRowSelection} from '../../hooks/useRowSelection';\nimport {CustomComponentThemeExtend, identity} from '../../utils';\nimport {TableLayouts} from './layouts/TableLayouts';\nimport {TableActions, TableActionsStylesNames} from './table-actions/TableActions';\nimport {\n TableAccordionColumn,\n TableCollapsibleColumn,\n TableCollapsibleColumnStylesNames,\n} from './table-column/TableCollapsibleColumn';\nimport {TableSelectableColumn} from './table-column/TableSelectableColumn';\nimport {TableColumnsSelector, TableColumnsSelectorStylesNames} from './table-columns-selector/TableColumnsSelector';\nimport {TableConsumer} from './table-consumer/TableConsumer';\nimport {TableDateRangePicker, TableDateRangePickerStylesNames} from './table-date-range-picker/TableDateRangePicker';\nimport {TableFilter, TableFilterStylesNames} from './table-filter/TableFilter';\nimport {TableFooter} from './table-footer/TableFooter';\nimport {TableHeader, TableHeaderStylesNames} from './table-header/TableHeader';\nimport {TableThStylesNames} from './table-header/Th';\nimport {TableLastUpdated, TableLastUpdatedStylesNames} from './table-last-updated/TableLastUpdated';\nimport {TableLoading} from './table-loading/TableLoading';\nimport {TablePagination} from './table-pagination/TablePagination';\nimport {TablePerPage} from './table-per-page/TablePerPage';\nimport {TablePredicate, TablePredicateStylesNames} from './table-predicate/TablePredicate';\nimport classes from './Table.module.css';\nimport {TableFormType, TableLayout, TableProps, TableState} from './Table.types';\nimport {TableContext, TableStylesProvider} from './TableContext';\n\ntype TableStylesNames =\n | 'root'\n | 'table'\n | 'header'\n | 'body'\n | TableActionsStylesNames\n | TableCollapsibleColumnStylesNames\n | TableDateRangePickerStylesNames\n | TableFilterStylesNames\n | TableHeaderStylesNames\n | TableThStylesNames\n | TableLastUpdatedStylesNames\n | TablePredicateStylesNames\n | TableColumnsSelectorStylesNames;\n\nexport type PlasmaTableFactory = Factory<{\n props: TableProps<unknown>;\n ref: HTMLDivElement;\n stylesNames: TableStylesNames;\n staticComponents: {\n Actions: typeof TableActions;\n Filter: typeof TableFilter;\n Footer: typeof TableFooter;\n Header: typeof TableHeader;\n LastUpdated: typeof TableLastUpdated;\n Pagination: typeof TablePagination;\n PerPage: typeof TablePerPage;\n Predicate: typeof TablePredicate;\n DateRangePicker: typeof TableDateRangePicker;\n CollapsibleColumn: typeof TableCollapsibleColumn;\n ColumnsSelector: typeof TableColumnsSelector;\n AccordionColumn: typeof TableAccordionColumn;\n Consumer: typeof TableConsumer;\n Loading: typeof TableLoading;\n Layouts: typeof TableLayouts;\n };\n}>;\n\nconst defaultProps: Partial<TableProps<unknown>> = {\n layouts: [TableLayouts.Rows as TableLayout],\n loading: false,\n multiRowSelectionEnabled: false,\n initialState: {},\n options: {},\n};\n\nexport const Table = <T,>(props: TableProps<T> & {ref?: ForwardedRef<HTMLDivElement>}) => {\n const {\n data,\n getRowId,\n noDataChildren,\n getExpandChildren,\n initialState,\n columns,\n layouts,\n onMount,\n onChange,\n children,\n loading,\n doubleClickAction,\n multiRowSelectionEnabled,\n disableRowSelection,\n onRowSelectionChange,\n additionalRootNodes,\n options,\n ref,\n\n // Style props\n style,\n className,\n classNames,\n styles,\n unstyled,\n ...others\n } = useProps('PlasmaTable', defaultProps as TableProps<T>, props);\n\n const getStyles = useStyles<PlasmaTableFactory>({\n name: 'PlasmaTable',\n classes,\n props: props as TableProps<unknown>,\n className,\n style,\n classNames,\n styles,\n unstyled,\n });\n\n const convertedChildren = Children.toArray(children) as ReactElement[];\n const header = convertedChildren.find((child) => child.type === TableHeader);\n const footer = convertedChildren.find((child) => child.type === TableFooter);\n const consumer = convertedChildren.find((child) => child.type === TableConsumer);\n const lastUpdated = convertedChildren.find((child) => child.type === TableLastUpdated);\n\n const {predicates, dateRange, ...initialStateWithoutForm} = initialState;\n const form = useForm<TableFormType>({\n initialValues: {\n predicates: initialState?.predicates ?? {},\n dateRange: initialState?.dateRange ?? [null, null],\n layout: initialState?.layout ?? layouts[0].displayName,\n },\n });\n\n const table = useReactTable({\n initialState: defaultsDeep(initialStateWithoutForm, {\n pagination: {pageSize: TablePerPage.DEFAULT_SIZE},\n globalFilter: '',\n }),\n data,\n columns: multiRowSelectionEnabled ? [TableSelectableColumn as ColumnDef<T>].concat(columns) : columns,\n getCoreRowModel: getCoreRowModel(),\n manualPagination: options?.getPaginationRowModel === undefined,\n enableMultiRowSelection: !!multiRowSelectionEnabled,\n getRowId,\n getRowCanExpand: (row: Row<T>) => !!getExpandChildren?.(row.original) ?? false,\n enableRowSelection: !loading,\n defaultColumn: {\n size: undefined,\n minSize: defaultColumnSizing.minSize,\n maxSize: defaultColumnSizing.maxSize,\n },\n ...options,\n });\n\n const getAllColumns = table.getAllFlatColumns;\n\n const [state, setState] = useState<TableState<T>>(table.initialState as TableState<T>);\n table.setOptions((prev) => ({\n ...prev,\n state: state as TanstackTableState,\n onStateChange: setState as Dispatch<React.SetStateAction<TanstackTableState>>,\n }));\n const {clearSelection, getSelectedRow, getSelectedRows, outsideClickRef} = useRowSelection(table, {\n multiRowSelectionEnabled,\n onRowSelectionChange,\n additionalRootNodes,\n });\n const containerRef = useMergedRef(outsideClickRef, ref);\n const isFiltered =\n !!state.globalFilter ||\n Object.keys(form.values?.predicates ?? {}).some((predicate) => !!form.values.predicates[predicate]) ||\n !!form.values.dateRange?.[0] ||\n !!form.values.dateRange?.[1];\n\n const triggerChange = debounce(() => onChange?.({...state, ...form.values}), 500);\n\n useEffect(() => {\n onMount?.({...state, ...form.values});\n return () => {\n triggerChange.cancel();\n };\n }, []);\n\n useDidUpdate(() => {\n triggerChange();\n if (!multiRowSelectionEnabled) {\n clearSelection();\n }\n }, [\n state.globalFilter,\n state.pagination,\n state.sorting,\n JSON.stringify(form.values.dateRange),\n JSON.stringify(form.values.predicates),\n ]);\n\n const clearFilters = useCallback(() => {\n form.setFieldValue('predicates', initialState.predicates ?? {});\n setState((prevState) => ({...prevState, globalFilter: ''}));\n }, []);\n\n if (!data) {\n return (\n <Center style={{flexGrow: 1}}>\n <Loader />\n </Center>\n );\n }\n\n const Layout = layouts.find(({displayName}) => displayName === form.values.layout);\n const hasRows = table.getRowModel().rows.length > 0;\n\n return (\n <Box ref={containerRef} {...others} {...getStyles('root')}>\n <TableStylesProvider value={{getStyles}}>\n <TableContext.Provider\n value={{\n onChange: triggerChange,\n state,\n isFiltered,\n setState,\n clearFilters,\n getSelectedRow,\n getSelectedRows,\n clearSelection,\n form,\n containerRef: outsideClickRef,\n multiRowSelectionEnabled,\n getPageCount: table.getPageCount,\n getAllColumns,\n disableRowSelection,\n layouts,\n }}\n >\n <Layout>\n {consumer}\n {!hasRows && !isFiltered && !loading ? (\n noDataChildren\n ) : (\n <>\n <Box component=\"table\" {...getStyles('table')} pb=\"sm\">\n <thead {...getStyles('header')}>\n {!!header ? (\n <tr>\n <th style={{padding: 0}} colSpan={table.getAllColumns().length}>\n {header}\n </th>\n </tr>\n ) : null}\n <Layout.Header\n table={table}\n doubleClickAction={doubleClickAction}\n getExpandChildren={getExpandChildren}\n loading={loading}\n />\n </thead>\n <tbody {...getStyles('body')}>\n {hasRows ? (\n <Layout.Body\n table={table}\n doubleClickAction={doubleClickAction}\n getExpandChildren={getExpandChildren}\n loading={loading}\n />\n ) : (\n <tr>\n <td colSpan={table.getAllColumns().length}>\n <TableLoading visible={loading}>{noDataChildren}</TableLoading>\n </td>\n </tr>\n )}\n </tbody>\n </Box>\n {footer}\n {lastUpdated\n ? cloneElement(lastUpdated, {\n dependencies: [data, ...(lastUpdated.props.dependencies ?? [])],\n })\n : null}\n </>\n )}\n </Layout>\n </TableContext.Provider>\n </TableStylesProvider>\n </Box>\n );\n};\n\nexport const TableComponentsOrder = {\n MultiSelectInfo: 7,\n Actions: 6,\n Predicate: 5,\n Filter: 4,\n DateRangePicker: 3,\n ColumnsSelector: 2,\n LayoutControl: 1,\n};\n\nTable.Actions = TableActions;\nTable.Filter = TableFilter;\nTable.Footer = TableFooter;\nTable.Header = TableHeader;\nTable.LastUpdated = TableLastUpdated;\nTable.Pagination = TablePagination;\nTable.Predicate = TablePredicate;\nTable.PerPage = TablePerPage;\nTable.Predicate = TablePredicate;\nTable.CollapsibleColumn = TableCollapsibleColumn;\nTable.AccordionColumn = TableAccordionColumn;\nTable.DateRangePicker = TableDateRangePicker;\nTable.Consumer = TableConsumer;\nTable.Loading = TableLoading;\nTable.ColumnsSelector = TableColumnsSelector;\nTable.Layouts = TableLayouts;\n\nTable.extend = identity as CustomComponentThemeExtend<PlasmaTableFactory>;\n"],"names":["Box","Center","Loader","useProps","useStyles","useForm","useDidUpdate","useMergedRef","defaultColumnSizing","getCoreRowModel","useReactTable","debounce","defaultsDeep","Children","cloneElement","useCallback","useEffect","useState","useRowSelection","identity","TableLayouts","TableActions","TableAccordionColumn","TableCollapsibleColumn","TableSelectableColumn","TableColumnsSelector","TableConsumer","TableDateRangePicker","TableFilter","TableFooter","TableHeader","TableLastUpdated","TableLoading","TablePagination","TablePerPage","TablePredicate","classes","TableContext","TableStylesProvider","defaultProps","layouts","Rows","loading","multiRowSelectionEnabled","initialState","options","Table","props","data","getRowId","noDataChildren","getExpandChildren","columns","onMount","onChange","children","doubleClickAction","disableRowSelection","onRowSelectionChange","additionalRootNodes","ref","style","className","classNames","styles","unstyled","others","getStyles","name","convertedChildren","toArray","header","find","child","type","footer","consumer","lastUpdated","predicates","dateRange","initialStateWithoutForm","form","initialValues","layout","displayName","table","pagination","pageSize","DEFAULT_SIZE","globalFilter","concat","manualPagination","getPaginationRowModel","undefined","enableMultiRowSelection","getRowCanExpand","row","original","enableRowSelection","defaultColumn","size","minSize","maxSize","getAllColumns","getAllFlatColumns","state","setState","setOptions","prev","onStateChange","clearSelection","getSelectedRow","getSelectedRows","outsideClickRef","containerRef","isFiltered","Object","keys","values","some","predicate","triggerChange","cancel","sorting","JSON","stringify","clearFilters","setFieldValue","prevState","flexGrow","Layout","hasRows","getRowModel","rows","length","value","Provider","getPageCount","component","pb","thead","tr","th","padding","colSpan","Header","tbody","Body","td","visible","dependencies","TableComponentsOrder","MultiSelectInfo","Actions","Predicate","Filter","DateRangePicker","ColumnsSelector","LayoutControl","Footer","LastUpdated","Pagination","PerPage","CollapsibleColumn","AccordionColumn","Consumer","Loading","Layouts","extend"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import {Box, Center, Factory, Loader, useProps, useStyles} from '@mantine/core';\nimport {useClickOutside, useMergedRef} from '@mantine/hooks';\nimport {\n ColumnDef,\n Row,\n RowSelectionState,\n defaultColumnSizing,\n getCoreRowModel,\n useReactTable,\n} from '@tanstack/react-table';\nimport isEqual from 'fast-deep-equal';\nimport {Children, ForwardedRef, ReactElement, useRef} from 'react';\nimport {CustomComponentThemeExtend, identity} from '../../utils';\nimport classes from './Table.module.css';\nimport {TableLayout, TableProps} from './Table.types';\nimport {TableProvider} from './TableContext';\nimport {TableLayouts} from './layouts/TableLayouts';\nimport {TableActionItem, TableActionItemStylesNames, TableHeaderActionsStylesNames} from './table-actions';\nimport {TableActionsListStylesNames} from './table-actions/TableActionsList';\nimport {TableActionsColumn} from './table-column/TableActionsColumn';\nimport {\n TableAccordionColumn,\n TableCollapsibleColumn,\n TableCollapsibleColumnStylesNames,\n} from './table-column/TableCollapsibleColumn';\nimport {TableSelectableColumn} from './table-column/TableSelectableColumn';\nimport {TableColumnsSelector, TableColumnsSelectorStylesNames} from './table-columns-selector/TableColumnsSelector';\nimport {TableDateRangePicker, TableDateRangePickerStylesNames} from './table-date-range-picker/TableDateRangePicker';\nimport {TableFilter, TableFilterStylesNames} from './table-filter/TableFilter';\nimport {TableFooter} from './table-footer/TableFooter';\nimport {TableHeader, TableHeaderStylesNames} from './table-header/TableHeader';\nimport {TableThStylesNames} from './table-header/Th';\nimport {TableLastUpdated, TableLastUpdatedStylesNames} from './table-last-updated/TableLastUpdated';\nimport {TableLoading} from './table-loading/TableLoading';\nimport {TableNoData} from './table-no-data/TableNoData';\nimport {TablePagination} from './table-pagination/TablePagination';\nimport {TablePerPage} from './table-per-page/TablePerPage';\nimport {TablePredicate, TablePredicateStylesNames} from './table-predicate/TablePredicate';\nimport {TableState} from './use-table';\n\ntype TableStylesNames =\n | 'root'\n | 'table'\n | 'header'\n | 'body'\n | TableHeaderActionsStylesNames\n | TableActionsListStylesNames\n | TableActionItemStylesNames\n | TableCollapsibleColumnStylesNames\n | TableDateRangePickerStylesNames\n | TableFilterStylesNames\n | TableHeaderStylesNames\n | TableThStylesNames\n | TableLastUpdatedStylesNames\n | TablePredicateStylesNames\n | TableColumnsSelectorStylesNames;\n\nexport type PlasmaTableFactory = Factory<{\n props: TableProps<unknown>;\n ref: HTMLDivElement;\n stylesNames: TableStylesNames;\n staticComponents: {\n AccordionColumn: typeof TableAccordionColumn;\n ActionsColumn: typeof TableActionsColumn;\n ActionItem: typeof TableActionItem;\n CollapsibleColumn: typeof TableCollapsibleColumn;\n ColumnsSelector: typeof TableColumnsSelector;\n DateRangePicker: typeof TableDateRangePicker;\n Filter: typeof TableFilter;\n Footer: typeof TableFooter;\n Header: typeof TableHeader;\n LastUpdated: typeof TableLastUpdated;\n Layouts: typeof TableLayouts;\n Loading: typeof TableLoading;\n NoData: typeof TableNoData;\n Pagination: typeof TablePagination;\n PerPage: typeof TablePerPage;\n Predicate: typeof TablePredicate;\n };\n}>;\n\nconst defaultProps: Partial<TableProps<unknown>> = {\n layouts: [TableLayouts.Rows as TableLayout],\n layoutProps: {},\n loading: false,\n additionalRootNodes: [],\n options: {},\n getRowActions: () => [],\n};\n\nexport const Table = <T,>(props: TableProps<T> & {ref?: ForwardedRef<HTMLDivElement>}) => {\n const {\n store,\n data,\n getRowId,\n getRowAttributes,\n getRowExpandedContent,\n getRowActions,\n columns,\n layouts,\n layoutProps,\n children,\n loading,\n additionalRootNodes,\n options,\n ref,\n\n // Style props\n style,\n className,\n classNames,\n styles,\n unstyled,\n ...others\n } = useProps('PlasmaTable', defaultProps as TableProps<T>, props);\n\n const getStyles = useStyles<PlasmaTableFactory>({\n name: 'PlasmaTable',\n classes,\n props: props as TableProps<unknown>,\n className,\n style,\n classNames,\n styles,\n unstyled,\n });\n\n const convertedChildren = Children.toArray(children) as ReactElement[];\n const header = convertedChildren.find((child) => child.type === TableHeader);\n const footer = convertedChildren.find((child) => child.type === TableFooter);\n const lastUpdated = convertedChildren.find((child) => child.type === TableLastUpdated);\n const noData = convertedChildren.find((child) => child.type === TableNoData);\n\n const table = useReactTable({\n data,\n state: {\n globalFilter: store.state.globalFilter,\n sorting: store.state.sorting,\n pagination: store.state.pagination,\n columnVisibility: store.state.columnVisibility,\n expanded: store.state.expanded,\n },\n onGlobalFilterChange: store.setGlobalFilter,\n onExpandedChange: store.setExpanded,\n onSortingChange: store.setSorting,\n onPaginationChange: store.setPagination,\n onColumnVisibilityChange: store.setColumnVisibility,\n columns: store.multiRowSelectionEnabled ? [TableSelectableColumn as ColumnDef<T>].concat(columns) : columns,\n getCoreRowModel: getCoreRowModel(),\n manualPagination: options?.getPaginationRowModel === undefined,\n enableMultiRowSelection: !!store.multiRowSelectionEnabled,\n getRowId,\n getRowCanExpand: (row: Row<T>) => !!getRowExpandedContent?.(row.original, row.index, row) ?? false,\n enableRowSelection: !loading,\n defaultColumn: {\n size: undefined,\n minSize: defaultColumnSizing.minSize,\n maxSize: defaultColumnSizing.maxSize,\n },\n rowCount: options?.getFilteredRowModel ? undefined : store.state.totalEntries,\n ...options,\n });\n\n table.setOptions((prev) => ({\n ...prev,\n state: {\n ...prev.state,\n rowSelection: store.state.rowSelection as RowSelectionState,\n },\n onRowSelectionChange: (rowSelectionUpdater) => {\n store.setRowSelection((old) => {\n const newRowSelection = (\n rowSelectionUpdater instanceof Function\n ? rowSelectionUpdater(old as RowSelectionState)\n : rowSelectionUpdater\n ) as TableState<T>['rowSelection'];\n\n if (isEqual(old, newRowSelection)) {\n return old;\n }\n\n const rows = table.getRowModel().rowsById;\n\n Object.keys(newRowSelection).forEach((rowId) => {\n if (newRowSelection[rowId] === true) {\n if (!rows[rowId]) {\n console.error(\n 'The table was not initialized properly, the rowSelection state should contain an object of type Record<string, TData>.',\n );\n }\n newRowSelection[rowId] = rows[rowId]?.original ?? (true as T);\n }\n });\n\n return newRowSelection;\n });\n },\n }));\n\n const containerRef = useRef<HTMLDivElement>();\n useClickOutside(\n () => {\n if (!store.multiRowSelectionEnabled) {\n store.clearRowSelection();\n }\n },\n null,\n [containerRef.current, ...additionalRootNodes],\n );\n const mergedRef = useMergedRef(containerRef, ref);\n\n if (!data) {\n return (\n <Center style={{flexGrow: 1}}>\n <Loader />\n </Center>\n );\n }\n\n const Layout =\n store.state.layout === null ? layouts[0] : layouts.find(({displayName}) => displayName === store.state.layout);\n const hasRows = table.getRowModel().rows.length > 0;\n\n return (\n <Box ref={mergedRef} {...others} {...getStyles('root')}>\n <TableProvider<T> value={{getStyles, getRowActions, store, table, layouts, containerRef}}>\n <Layout>\n {store.isVacant && !store.isFiltered ? (\n noData\n ) : (\n <>\n <Box component=\"table\" {...getStyles('table')} pb=\"sm\" mod={{loading}}>\n <thead {...getStyles('header')}>\n {!!header ? (\n <tr>\n <th style={{padding: 0}} colSpan={table.getAllColumns().length}>\n {header}\n </th>\n </tr>\n ) : null}\n <Layout.Header\n getRowExpandedContent={getRowExpandedContent}\n getRowAttributes={getRowAttributes}\n loading={loading}\n {...layoutProps}\n />\n </thead>\n <tbody {...getStyles('body')}>\n {hasRows ? (\n <Layout.Body\n getRowExpandedContent={getRowExpandedContent}\n getRowAttributes={getRowAttributes}\n loading={loading}\n {...layoutProps}\n />\n ) : (\n <tr>\n <td colSpan={table.getAllColumns().length}>\n <TableLoading visible={loading || !store.isFiltered}>\n {noData}\n </TableLoading>\n </td>\n </tr>\n )}\n </tbody>\n </Box>\n {footer}\n {lastUpdated}\n </>\n )}\n </Layout>\n </TableProvider>\n </Box>\n );\n};\n\nexport const TableComponentsOrder = {\n MultiSelectInfo: 7,\n Actions: 6,\n Predicate: 5,\n Filter: 4,\n DateRangePicker: 3,\n ColumnsSelector: 2,\n LayoutControl: 1,\n};\n\nTable.AccordionColumn = TableAccordionColumn;\nTable.ActionsColumn = TableActionsColumn;\nTable.ActionItem = TableActionItem;\nTable.CollapsibleColumn = TableCollapsibleColumn;\nTable.ColumnsSelector = TableColumnsSelector;\nTable.DateRangePicker = TableDateRangePicker;\nTable.Filter = TableFilter;\nTable.Footer = TableFooter;\nTable.Header = TableHeader;\nTable.LastUpdated = TableLastUpdated;\nTable.Layouts = TableLayouts;\nTable.Loading = TableLoading;\nTable.NoData = TableNoData;\nTable.Pagination = TablePagination;\nTable.PerPage = TablePerPage;\nTable.Predicate = TablePredicate;\n\nTable.extend = identity as CustomComponentThemeExtend<PlasmaTableFactory>;\n"],"names":["Box","Center","Loader","useProps","useStyles","useClickOutside","useMergedRef","defaultColumnSizing","getCoreRowModel","useReactTable","isEqual","Children","useRef","identity","classes","TableProvider","TableLayouts","TableActionItem","TableActionsColumn","TableAccordionColumn","TableCollapsibleColumn","TableSelectableColumn","TableColumnsSelector","TableDateRangePicker","TableFilter","TableFooter","TableHeader","TableLastUpdated","TableLoading","TableNoData","TablePagination","TablePerPage","TablePredicate","defaultProps","layouts","Rows","layoutProps","loading","additionalRootNodes","options","getRowActions","Table","props","store","data","getRowId","getRowAttributes","getRowExpandedContent","columns","children","ref","style","className","classNames","styles","unstyled","others","getStyles","name","convertedChildren","toArray","header","find","child","type","footer","lastUpdated","noData","table","state","globalFilter","sorting","pagination","columnVisibility","expanded","onGlobalFilterChange","setGlobalFilter","onExpandedChange","setExpanded","onSortingChange","setSorting","onPaginationChange","setPagination","onColumnVisibilityChange","setColumnVisibility","multiRowSelectionEnabled","concat","manualPagination","getPaginationRowModel","undefined","enableMultiRowSelection","getRowCanExpand","row","original","index","enableRowSelection","defaultColumn","size","minSize","maxSize","rowCount","getFilteredRowModel","totalEntries","setOptions","prev","rowSelection","onRowSelectionChange","rowSelectionUpdater","setRowSelection","old","newRowSelection","Function","rows","getRowModel","rowsById","Object","keys","forEach","rowId","console","error","containerRef","clearRowSelection","current","mergedRef","flexGrow","Layout","layout","displayName","hasRows","length","value","isVacant","isFiltered","component","pb","mod","thead","tr","th","padding","colSpan","getAllColumns","Header","tbody","Body","td","visible","TableComponentsOrder","MultiSelectInfo","Actions","Predicate","Filter","DateRangePicker","ColumnsSelector","LayoutControl","AccordionColumn","ActionsColumn","ActionItem","CollapsibleColumn","Footer","LastUpdated","Layouts","Loading","NoData","Pagination","PerPage","extend"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAAQA,GAAG,EAAEC,MAAM,EAAWC,MAAM,EAAEC,QAAQ,EAAEC,SAAS,QAAO,gBAAgB;AAChF,SAAQC,eAAe,EAAEC,YAAY,QAAO,iBAAiB;AAC7D,SAIIC,mBAAmB,EACnBC,eAAe,EACfC,aAAa,QACV,wBAAwB;AAC/B,OAAOC,aAAa,kBAAkB;AACtC,SAAQC,QAAQ,EAA8BC,MAAM,QAAO,QAAQ;AACnE,SAAoCC,QAAQ,QAAO,cAAc;AACjE,OAAOC,aAAa,qBAAqB;AAEzC,SAAQC,aAAa,QAAO,iBAAiB;AAC7C,SAAQC,YAAY,QAAO,yBAAyB;AACpD,SAAQC,eAAe,QAAkE,kBAAkB;AAE3G,SAAQC,kBAAkB,QAAO,oCAAoC;AACrE,SACIC,oBAAoB,EACpBC,sBAAsB,QAEnB,wCAAwC;AAC/C,SAAQC,qBAAqB,QAAO,uCAAuC;AAC3E,SAAQC,oBAAoB,QAAwC,gDAAgD;AACpH,SAAQC,oBAAoB,QAAwC,iDAAiD;AACrH,SAAQC,WAAW,QAA+B,6BAA6B;AAC/E,SAAQC,WAAW,QAAO,6BAA6B;AACvD,SAAQC,WAAW,QAA+B,6BAA6B;AAE/E,SAAQC,gBAAgB,QAAoC,wCAAwC;AACpG,SAAQC,YAAY,QAAO,+BAA+B;AAC1D,SAAQC,WAAW,QAAO,8BAA8B;AACxD,SAAQC,eAAe,QAAO,qCAAqC;AACnE,SAAQC,YAAY,QAAO,gCAAgC;AAC3D,SAAQC,cAAc,QAAkC,mCAAmC;AA4C3F,MAAMC,eAA6C;IAC/CC,SAAS;QAAClB,aAAamB,IAAI;KAAgB;IAC3CC,aAAa,CAAC;IACdC,SAAS;IACTC,qBAAqB,EAAE;IACvBC,SAAS,CAAC;IACVC,eAAe,IAAM,EAAE;AAC3B;AAEA,OAAO,MAAMC,QAAQ,CAAKC;IACtB,MAAM,EACFC,KAAK,EACLC,IAAI,EACJC,QAAQ,EACRC,gBAAgB,EAChBC,qBAAqB,EACrBP,aAAa,EACbQ,OAAO,EACPd,OAAO,EACPE,WAAW,EACXa,QAAQ,EACRZ,OAAO,EACPC,mBAAmB,EACnBC,OAAO,EACPW,GAAG,EAEH,cAAc;IACdC,KAAK,EACLC,SAAS,EACTC,UAAU,EACVC,MAAM,EACNC,QAAQ,EACR,GAAGC,QACN,GAAGrD,SAAS,eAAe8B,cAA+BS;IAE3D,MAAMe,YAAYrD,UAA8B;QAC5CsD,MAAM;QACN5C;QACA4B,OAAOA;QACPU;QACAD;QACAE;QACAC;QACAC;IACJ;IAEA,MAAMI,oBAAoBhD,SAASiD,OAAO,CAACX;IAC3C,MAAMY,SAASF,kBAAkBG,IAAI,CAAC,CAACC,QAAUA,MAAMC,IAAI,KAAKtC;IAChE,MAAMuC,SAASN,kBAAkBG,IAAI,CAAC,CAACC,QAAUA,MAAMC,IAAI,KAAKvC;IAChE,MAAMyC,cAAcP,kBAAkBG,IAAI,CAAC,CAACC,QAAUA,MAAMC,IAAI,KAAKrC;IACrE,MAAMwC,SAASR,kBAAkBG,IAAI,CAAC,CAACC,QAAUA,MAAMC,IAAI,KAAKnC;IAEhE,MAAMuC,QAAQ3D,cAAc;QACxBmC;QACAyB,OAAO;YACHC,cAAc3B,MAAM0B,KAAK,CAACC,YAAY;YACtCC,SAAS5B,MAAM0B,KAAK,CAACE,OAAO;YAC5BC,YAAY7B,MAAM0B,KAAK,CAACG,UAAU;YAClCC,kBAAkB9B,MAAM0B,KAAK,CAACI,gBAAgB;YAC9CC,UAAU/B,MAAM0B,KAAK,CAACK,QAAQ;QAClC;QACAC,sBAAsBhC,MAAMiC,eAAe;QAC3CC,kBAAkBlC,MAAMmC,WAAW;QACnCC,iBAAiBpC,MAAMqC,UAAU;QACjCC,oBAAoBtC,MAAMuC,aAAa;QACvCC,0BAA0BxC,MAAMyC,mBAAmB;QACnDpC,SAASL,MAAM0C,wBAAwB,GAAG;YAAChE;SAAsC,CAACiE,MAAM,CAACtC,WAAWA;QACpGxC,iBAAiBA;QACjB+E,kBAAkBhD,SAASiD,0BAA0BC;QACrDC,yBAAyB,CAAC,CAAC/C,MAAM0C,wBAAwB;QACzDxC;QACA8C,iBAAiB,CAACC,MAAgB,CAAC,CAAC7C,wBAAwB6C,IAAIC,QAAQ,EAAED,IAAIE,KAAK,EAAEF,QAAQ;QAC7FG,oBAAoB,CAAC1D;QACrB2D,eAAe;YACXC,MAAMR;YACNS,SAAS3F,oBAAoB2F,OAAO;YACpCC,SAAS5F,oBAAoB4F,OAAO;QACxC;QACAC,UAAU7D,SAAS8D,sBAAsBZ,YAAY9C,MAAM0B,KAAK,CAACiC,YAAY;QAC7E,GAAG/D,OAAO;IACd;IAEA6B,MAAMmC,UAAU,CAAC,CAACC,OAAU,CAAA;YACxB,GAAGA,IAAI;YACPnC,OAAO;gBACH,GAAGmC,KAAKnC,KAAK;gBACboC,cAAc9D,MAAM0B,KAAK,CAACoC,YAAY;YAC1C;YACAC,sBAAsB,CAACC;gBACnBhE,MAAMiE,eAAe,CAAC,CAACC;oBACnB,MAAMC,kBACFH,+BAA+BI,WACzBJ,oBAAoBE,OACpBF;oBAGV,IAAIjG,QAAQmG,KAAKC,kBAAkB;wBAC/B,OAAOD;oBACX;oBAEA,MAAMG,OAAO5C,MAAM6C,WAAW,GAAGC,QAAQ;oBAEzCC,OAAOC,IAAI,CAACN,iBAAiBO,OAAO,CAAC,CAACC;wBAClC,IAAIR,eAAe,CAACQ,MAAM,KAAK,MAAM;4BACjC,IAAI,CAACN,IAAI,CAACM,MAAM,EAAE;gCACdC,QAAQC,KAAK,CACT;4BAER;4BACAV,eAAe,CAACQ,MAAM,GAAGN,IAAI,CAACM,MAAM,EAAEzB,YAAa;wBACvD;oBACJ;oBAEA,OAAOiB;gBACX;YACJ;QACJ,CAAA;IAEA,MAAMW,eAAe7G;IACrBP,gBACI;QACI,IAAI,CAACsC,MAAM0C,wBAAwB,EAAE;YACjC1C,MAAM+E,iBAAiB;QAC3B;IACJ,GACA,MACA;QAACD,aAAaE,OAAO;WAAKrF;KAAoB;IAElD,MAAMsF,YAAYtH,aAAamH,cAAcvE;IAE7C,IAAI,CAACN,MAAM;QACP,qBACI,KAAC3C;YAAOkD,OAAO;gBAAC0E,UAAU;YAAC;sBACvB,cAAA,KAAC3H;;IAGb;IAEA,MAAM4H,SACFnF,MAAM0B,KAAK,CAAC0D,MAAM,KAAK,OAAO7F,OAAO,CAAC,EAAE,GAAGA,QAAQ4B,IAAI,CAAC,CAAC,EAACkE,WAAW,EAAC,GAAKA,gBAAgBrF,MAAM0B,KAAK,CAAC0D,MAAM;IACjH,MAAME,UAAU7D,MAAM6C,WAAW,GAAGD,IAAI,CAACkB,MAAM,GAAG;IAElD,qBACI,KAAClI;QAAIkD,KAAK0E;QAAY,GAAGpE,MAAM;QAAG,GAAGC,UAAU,OAAO;kBAClD,cAAA,KAAC1C;YAAiBoH,OAAO;gBAAC1E;gBAAWjB;gBAAeG;gBAAOyB;gBAAOlC;gBAASuF;YAAY;sBACnF,cAAA,KAACK;0BACInF,MAAMyF,QAAQ,IAAI,CAACzF,MAAM0F,UAAU,GAChClE,uBAEA;;sCACI,MAACnE;4BAAIsI,WAAU;4BAAS,GAAG7E,UAAU,QAAQ;4BAAE8E,IAAG;4BAAKC,KAAK;gCAACnG;4BAAO;;8CAChE,MAACoG;oCAAO,GAAGhF,UAAU,SAAS;;wCACzB,CAAC,CAACI,uBACC,KAAC6E;sDACG,cAAA,KAACC;gDAAGxF,OAAO;oDAACyF,SAAS;gDAAC;gDAAGC,SAASzE,MAAM0E,aAAa,GAAGZ,MAAM;0DACzDrE;;6CAGT;sDACJ,KAACiE,OAAOiB,MAAM;4CACVhG,uBAAuBA;4CACvBD,kBAAkBA;4CAClBT,SAASA;4CACR,GAAGD,WAAW;;;;8CAGvB,KAAC4G;oCAAO,GAAGvF,UAAU,OAAO;8CACvBwE,wBACG,KAACH,OAAOmB,IAAI;wCACRlG,uBAAuBA;wCACvBD,kBAAkBA;wCAClBT,SAASA;wCACR,GAAGD,WAAW;uDAGnB,KAACsG;kDACG,cAAA,KAACQ;4CAAGL,SAASzE,MAAM0E,aAAa,GAAGZ,MAAM;sDACrC,cAAA,KAACtG;gDAAauH,SAAS9G,WAAW,CAACM,MAAM0F,UAAU;0DAC9ClE;;;;;;;wBAOxBF;wBACAC;;;;;;AAO7B,EAAE;AAEF,OAAO,MAAMkF,uBAAuB;IAChCC,iBAAiB;IACjBC,SAAS;IACTC,WAAW;IACXC,QAAQ;IACRC,iBAAiB;IACjBC,iBAAiB;IACjBC,eAAe;AACnB,EAAE;AAEFlH,MAAMmH,eAAe,GAAGzI;AACxBsB,MAAMoH,aAAa,GAAG3I;AACtBuB,MAAMqH,UAAU,GAAG7I;AACnBwB,MAAMsH,iBAAiB,GAAG3I;AAC1BqB,MAAMiH,eAAe,GAAGpI;AACxBmB,MAAMgH,eAAe,GAAGlI;AACxBkB,MAAM+G,MAAM,GAAGhI;AACfiB,MAAMuH,MAAM,GAAGvI;AACfgB,MAAMsG,MAAM,GAAGrH;AACfe,MAAMwH,WAAW,GAAGtI;AACpBc,MAAMyH,OAAO,GAAGlJ;AAChByB,MAAM0H,OAAO,GAAGvI;AAChBa,MAAM2H,MAAM,GAAGvI;AACfY,MAAM4H,UAAU,GAAGvI;AACnBW,MAAM6H,OAAO,GAAGvI;AAChBU,MAAM8G,SAAS,GAAGvH;AAElBS,MAAM8H,MAAM,GAAG1J"}
|
|
@@ -19,8 +19,14 @@
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
/* Table.Actions */
|
|
22
|
+
.actionsDropdown {
|
|
23
|
+
text-align: left;
|
|
24
|
+
}
|
|
22
25
|
.actionsGroup {
|
|
23
|
-
|
|
26
|
+
&:has(.actionsGroupItems:empty) {
|
|
27
|
+
/* Hide empty groups */
|
|
28
|
+
display: none;
|
|
29
|
+
}
|
|
24
30
|
}
|
|
25
31
|
|
|
26
32
|
/* Table.Filter */
|
|
@@ -37,6 +43,7 @@
|
|
|
37
43
|
background-color: var(--mantine-color-gray-1);
|
|
38
44
|
padding: var(--mantine-spacing-sm) var(--mantine-spacing-xl);
|
|
39
45
|
position: relative;
|
|
46
|
+
min-height: 69px;
|
|
40
47
|
}
|
|
41
48
|
|
|
42
49
|
.headerGridInner {
|