@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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableFilter.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-filter/TableFilter.tsx"],"names":[],"mappings":"AACA,OAAO,EAAa,QAAQ,
|
|
1
|
+
{"version":3,"file":"TableFilter.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-filter/TableFilter.tsx"],"names":[],"mappings":"AACA,OAAO,EAAa,QAAQ,EAAE,sBAAsB,EAAE,OAAO,EAAqC,MAAM,eAAe,CAAC;AAOxH,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG,eAAe,GAAG,aAAa,CAAC;AAEpF,MAAM,WAAW,gBAAiB,SAAQ,QAAQ,EAAE,sBAAsB,CAAC,kBAAkB,CAAC;IAC1F;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC;IACrC,KAAK,EAAE,gBAAgB,CAAC;IACxB,GAAG,EAAE,cAAc,CAAC;IACpB,WAAW,EAAE,sBAAsB,CAAC;IACpC,QAAQ,EAAE,IAAI,CAAC;CAClB,CAAC,CAAC;AAMH,eAAO,MAAM,WAAW;WAVb,gBAAgB;SAClB,cAAc;iBACN,sBAAsB;cACzB,IAAI;EAiEhB,CAAC"}
|
|
@@ -1,28 +1,24 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { CrossSize16Px, FilterSize16Px } from '@coveord/plasma-react-icons';
|
|
3
|
-
import { ActionIcon,
|
|
3
|
+
import { ActionIcon, Grid, TextInput, factory, useProps } from '@mantine/core';
|
|
4
4
|
import { useDebouncedValue, useDidUpdate } from '@mantine/hooks';
|
|
5
5
|
import { useEffect, useState } from 'react';
|
|
6
6
|
import { TableComponentsOrder } from '../Table';
|
|
7
|
-
import {
|
|
7
|
+
import { useTableContext } from '../TableContext';
|
|
8
8
|
const defaultProps = {
|
|
9
9
|
placeholder: 'Search by any field'
|
|
10
10
|
};
|
|
11
11
|
export const TableFilter = factory((props, ref)=>{
|
|
12
|
-
const
|
|
12
|
+
const { store, getStyles } = useTableContext();
|
|
13
13
|
const { placeholder, classNames, className, styles, style, vars, ...others } = useProps('PlasmaTableFilter', defaultProps, props);
|
|
14
|
-
const
|
|
15
|
-
const [filter, setFilter] = useState(state.globalFilter);
|
|
14
|
+
const [filter, setFilter] = useState(store.state.globalFilter);
|
|
16
15
|
const [debounced, cancel] = useDebouncedValue(filter, 300);
|
|
17
16
|
useDidUpdate(()=>{
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
} : prevState.pagination,
|
|
24
|
-
globalFilter: debounced
|
|
25
|
-
}));
|
|
17
|
+
store.setGlobalFilter(debounced);
|
|
18
|
+
store.setPagination({
|
|
19
|
+
pageIndex: 0,
|
|
20
|
+
pageSize: store.state.pagination.pageSize
|
|
21
|
+
});
|
|
26
22
|
return cancel;
|
|
27
23
|
}, [
|
|
28
24
|
debounced
|
|
@@ -35,9 +31,9 @@ export const TableFilter = factory((props, ref)=>{
|
|
|
35
31
|
setFilter('');
|
|
36
32
|
};
|
|
37
33
|
useEffect(()=>{
|
|
38
|
-
setFilter(state.globalFilter);
|
|
34
|
+
setFilter(store.state.globalFilter);
|
|
39
35
|
}, [
|
|
40
|
-
state.globalFilter
|
|
36
|
+
store.state.globalFilter
|
|
41
37
|
]);
|
|
42
38
|
const stylesApiProps = {
|
|
43
39
|
classNames,
|
|
@@ -47,14 +43,14 @@ export const TableFilter = factory((props, ref)=>{
|
|
|
47
43
|
span: "content",
|
|
48
44
|
order: TableComponentsOrder.Filter,
|
|
49
45
|
ref: ref,
|
|
50
|
-
...
|
|
46
|
+
...getStyles('filterRoot', {
|
|
51
47
|
className,
|
|
52
48
|
style,
|
|
53
49
|
...stylesApiProps
|
|
54
50
|
}),
|
|
55
51
|
...others,
|
|
56
52
|
children: /*#__PURE__*/ _jsx(TextInput, {
|
|
57
|
-
...
|
|
53
|
+
...getStyles('filterWrapper', stylesApiProps),
|
|
58
54
|
placeholder: placeholder,
|
|
59
55
|
autoComplete: "off",
|
|
60
56
|
rightSection: filter ? /*#__PURE__*/ _jsx(ActionIcon, {
|
|
@@ -66,7 +62,7 @@ export const TableFilter = factory((props, ref)=>{
|
|
|
66
62
|
})
|
|
67
63
|
}) : /*#__PURE__*/ _jsx(FilterSize16Px, {
|
|
68
64
|
height: 16,
|
|
69
|
-
...
|
|
65
|
+
...getStyles('filterEmpty', stylesApiProps)
|
|
70
66
|
}),
|
|
71
67
|
value: filter,
|
|
72
68
|
onChange: handleChange
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/table/table-filter/TableFilter.tsx"],"sourcesContent":["import {CrossSize16Px, FilterSize16Px} from '@coveord/plasma-react-icons';\nimport {ActionIcon, BoxProps,
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/table/table-filter/TableFilter.tsx"],"sourcesContent":["import {CrossSize16Px, FilterSize16Px} from '@coveord/plasma-react-icons';\nimport {ActionIcon, BoxProps, CompoundStylesApiProps, Factory, Grid, TextInput, factory, useProps} from '@mantine/core';\nimport {useDebouncedValue, useDidUpdate} from '@mantine/hooks';\nimport {ChangeEventHandler, MouseEventHandler, useEffect, useState} from 'react';\n\nimport {TableComponentsOrder} from '../Table';\nimport {useTableContext} from '../TableContext';\n\nexport type TableFilterStylesNames = 'filterRoot' | 'filterWrapper' | 'filterEmpty';\n\nexport interface TableFilterProps extends BoxProps, CompoundStylesApiProps<TableFilterFactory> {\n /**\n * The placeholder for the filter input\n *\n * @default \"Search by any field\"\n */\n placeholder?: string;\n}\n\nexport type TableFilterFactory = Factory<{\n props: TableFilterProps;\n ref: HTMLDivElement;\n stylesNames: TableFilterStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<TableFilterProps> = {\n placeholder: 'Search by any field',\n};\n\nexport const TableFilter = factory<TableFilterFactory>((props, ref) => {\n const {store, getStyles} = useTableContext();\n const {placeholder, classNames, className, styles, style, vars, ...others} = useProps(\n 'PlasmaTableFilter',\n defaultProps,\n props,\n );\n const [filter, setFilter] = useState(store.state.globalFilter);\n const [debounced, cancel] = useDebouncedValue(filter, 300);\n\n useDidUpdate(() => {\n store.setGlobalFilter(debounced);\n store.setPagination({pageIndex: 0, pageSize: store.state.pagination.pageSize});\n\n return cancel;\n }, [debounced]);\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (event) => {\n const {value} = event.currentTarget;\n setFilter(value);\n };\n\n const handleClear: MouseEventHandler<HTMLButtonElement> = () => {\n setFilter('');\n };\n\n useEffect(() => {\n setFilter(store.state.globalFilter);\n }, [store.state.globalFilter]);\n\n const stylesApiProps = {classNames, styles};\n\n return (\n <Grid.Col\n span=\"content\"\n order={TableComponentsOrder.Filter}\n ref={ref}\n {...getStyles('filterRoot', {className, style, ...stylesApiProps})}\n {...others}\n >\n <TextInput\n {...getStyles('filterWrapper', stylesApiProps)}\n placeholder={placeholder}\n autoComplete=\"off\"\n rightSection={\n filter ? (\n <ActionIcon onClick={handleClear} color=\"gray\" variant=\"subtle\">\n <CrossSize16Px height={16} />\n </ActionIcon>\n ) : (\n <FilterSize16Px height={16} {...getStyles('filterEmpty', stylesApiProps)} />\n )\n }\n value={filter}\n onChange={handleChange}\n />\n </Grid.Col>\n );\n});\n"],"names":["CrossSize16Px","FilterSize16Px","ActionIcon","Grid","TextInput","factory","useProps","useDebouncedValue","useDidUpdate","useEffect","useState","TableComponentsOrder","useTableContext","defaultProps","placeholder","TableFilter","props","ref","store","getStyles","classNames","className","styles","style","vars","others","filter","setFilter","state","globalFilter","debounced","cancel","setGlobalFilter","setPagination","pageIndex","pageSize","pagination","handleChange","event","value","currentTarget","handleClear","stylesApiProps","Col","span","order","Filter","autoComplete","rightSection","onClick","color","variant","height","onChange"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAAQA,aAAa,EAAEC,cAAc,QAAO,8BAA8B;AAC1E,SAAQC,UAAU,EAA6CC,IAAI,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAO,gBAAgB;AACxH,SAAQC,iBAAiB,EAAEC,YAAY,QAAO,iBAAiB;AAC/D,SAA+CC,SAAS,EAAEC,QAAQ,QAAO,QAAQ;AAEjF,SAAQC,oBAAoB,QAAO,WAAW;AAC9C,SAAQC,eAAe,QAAO,kBAAkB;AAoBhD,MAAMC,eAA0C;IAC5CC,aAAa;AACjB;AAEA,OAAO,MAAMC,cAAcV,QAA4B,CAACW,OAAOC;IAC3D,MAAM,EAACC,KAAK,EAAEC,SAAS,EAAC,GAAGP;IAC3B,MAAM,EAACE,WAAW,EAAEM,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,KAAK,EAAEC,IAAI,EAAE,GAAGC,QAAO,GAAGnB,SACzE,qBACAO,cACAG;IAEJ,MAAM,CAACU,QAAQC,UAAU,GAAGjB,SAASQ,MAAMU,KAAK,CAACC,YAAY;IAC7D,MAAM,CAACC,WAAWC,OAAO,GAAGxB,kBAAkBmB,QAAQ;IAEtDlB,aAAa;QACTU,MAAMc,eAAe,CAACF;QACtBZ,MAAMe,aAAa,CAAC;YAACC,WAAW;YAAGC,UAAUjB,MAAMU,KAAK,CAACQ,UAAU,CAACD,QAAQ;QAAA;QAE5E,OAAOJ;IACX,GAAG;QAACD;KAAU;IAEd,MAAMO,eAAqD,CAACC;QACxD,MAAM,EAACC,KAAK,EAAC,GAAGD,MAAME,aAAa;QACnCb,UAAUY;IACd;IAEA,MAAME,cAAoD;QACtDd,UAAU;IACd;IAEAlB,UAAU;QACNkB,UAAUT,MAAMU,KAAK,CAACC,YAAY;IACtC,GAAG;QAACX,MAAMU,KAAK,CAACC,YAAY;KAAC;IAE7B,MAAMa,iBAAiB;QAACtB;QAAYE;IAAM;IAE1C,qBACI,KAACnB,KAAKwC,GAAG;QACLC,MAAK;QACLC,OAAOlC,qBAAqBmC,MAAM;QAClC7B,KAAKA;QACJ,GAAGE,UAAU,cAAc;YAACE;YAAWE;YAAO,GAAGmB,cAAc;QAAA,EAAE;QACjE,GAAGjB,MAAM;kBAEV,cAAA,KAACrB;YACI,GAAGe,UAAU,iBAAiBuB,eAAe;YAC9C5B,aAAaA;YACbiC,cAAa;YACbC,cACItB,uBACI,KAACxB;gBAAW+C,SAASR;gBAAaS,OAAM;gBAAOC,SAAQ;0BACnD,cAAA,KAACnD;oBAAcoD,QAAQ;;+BAG3B,KAACnD;gBAAemD,QAAQ;gBAAK,GAAGjC,UAAU,eAAeuB,eAAe;;YAGhFH,OAAOb;YACP2B,UAAUhB;;;AAI1B,GAAG"}
|
|
@@ -1,11 +1,16 @@
|
|
|
1
|
-
import { BoxProps, Factory } from '@mantine/core';
|
|
2
|
-
import { CompoundStylesApiProps } from '@mantine/core/lib/core/styles-api/styles-api.types';
|
|
1
|
+
import { BoxProps, CompoundStylesApiProps, Factory } from '@mantine/core';
|
|
3
2
|
import { ReactNode } from 'react';
|
|
4
3
|
export type TableHeaderStylesNames = 'headerRoot' | 'headerGrid' | 'headerGridInner' | 'headerCol';
|
|
5
4
|
export interface TableHeaderProps extends Omit<BoxProps, 'classNames' | 'styles' | 'vars'>, CompoundStylesApiProps<TableHeaderFactory> {
|
|
6
5
|
children?: ReactNode;
|
|
7
6
|
unselectAllLabel?: string;
|
|
8
7
|
selectedCountLabel?: (count: number) => string;
|
|
8
|
+
/**
|
|
9
|
+
* Whether to show actions when rows are selected
|
|
10
|
+
*
|
|
11
|
+
* default true
|
|
12
|
+
*/
|
|
13
|
+
showActions?: boolean;
|
|
9
14
|
}
|
|
10
15
|
export type TableHeaderFactory = Factory<{
|
|
11
16
|
props: TableHeaderProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableHeader.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-header/TableHeader.tsx"],"names":[],"mappings":"AACA,OAAO,EAAM,QAAQ,EAAW,OAAO,EAA0B,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"TableHeader.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-header/TableHeader.tsx"],"names":[],"mappings":"AACA,OAAO,EAAM,QAAQ,EAAE,sBAAsB,EAAW,OAAO,EAA0B,MAAM,eAAe,CAAC;AAC/G,OAAO,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAQhC,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG,YAAY,GAAG,iBAAiB,GAAG,WAAW,CAAC;AAEnG,MAAM,WAAW,gBACb,SAAQ,IAAI,CAAC,QAAQ,EAAE,YAAY,GAAG,QAAQ,GAAG,MAAM,CAAC,EACpD,sBAAsB,CAAC,kBAAkB,CAAC;IAE9C,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC;IACrC,KAAK,EAAE,gBAAgB,CAAC;IACxB,GAAG,EAAE,cAAc,CAAC;IACpB,WAAW,EAAE,sBAAsB,CAAC;IACpC,QAAQ,EAAE,IAAI,CAAC;CAClB,CAAC,CAAC;AAQH,eAAO,MAAM,WAAW;WAZb,gBAAgB;SAClB,cAAc;iBACN,sBAAsB;cACzB,IAAI;EA6DhB,CAAC"}
|
|
@@ -4,25 +4,26 @@ import { Box, factory, Grid, Tooltip, useProps } from '@mantine/core';
|
|
|
4
4
|
import { Button } from '../../button';
|
|
5
5
|
import { TableLayoutControl } from '../layouts/TableLayoutControl';
|
|
6
6
|
import { TableComponentsOrder } from '../Table';
|
|
7
|
-
import {
|
|
7
|
+
import { TableHeaderActions } from '../table-actions';
|
|
8
|
+
import { useTableContext } from '../TableContext';
|
|
8
9
|
const defaultProps = {
|
|
9
10
|
unselectAllLabel: 'Unselect all',
|
|
10
|
-
selectedCountLabel: (count)=>`${count} selected
|
|
11
|
+
selectedCountLabel: (count)=>`${count} selected`,
|
|
12
|
+
showActions: true
|
|
11
13
|
};
|
|
12
14
|
export const TableHeader = factory((props, ref)=>{
|
|
13
|
-
const
|
|
14
|
-
const { unselectAllLabel, selectedCountLabel, children, classNames, className, styles, style, vars, ...others } = useProps('PlasmaTableHeader', defaultProps, props);
|
|
15
|
-
const
|
|
16
|
-
const selectedRows = getSelectedRows();
|
|
15
|
+
const { store, getStyles } = useTableContext();
|
|
16
|
+
const { showActions, unselectAllLabel, selectedCountLabel, children, classNames, className, styles, style, vars: _vars, ...others } = useProps('PlasmaTableHeader', defaultProps, props);
|
|
17
|
+
const selectedRows = store.getSelectedRows();
|
|
17
18
|
const stylesApiProps = {
|
|
18
19
|
classNames,
|
|
19
20
|
styles
|
|
20
21
|
};
|
|
21
|
-
const innerStyles =
|
|
22
|
-
const gridStyles =
|
|
22
|
+
const innerStyles = getStyles('headerGridInner', stylesApiProps);
|
|
23
|
+
const gridStyles = getStyles('headerGrid', stylesApiProps);
|
|
23
24
|
return /*#__PURE__*/ _jsx(Box, {
|
|
24
25
|
ref: ref,
|
|
25
|
-
...
|
|
26
|
+
...getStyles('headerRoot', {
|
|
26
27
|
className,
|
|
27
28
|
style,
|
|
28
29
|
...stylesApiProps
|
|
@@ -40,16 +41,16 @@ export const TableHeader = factory((props, ref)=>{
|
|
|
40
41
|
root: gridStyles.style
|
|
41
42
|
},
|
|
42
43
|
children: [
|
|
43
|
-
multiRowSelectionEnabled && selectedRows.length > 0 ? /*#__PURE__*/ _jsx(Grid.Col, {
|
|
44
|
+
store.multiRowSelectionEnabled && selectedRows.length > 0 ? /*#__PURE__*/ _jsx(Grid.Col, {
|
|
44
45
|
span: "auto",
|
|
45
|
-
...
|
|
46
|
+
...getStyles('headerCol', stylesApiProps),
|
|
46
47
|
order: TableComponentsOrder.MultiSelectInfo,
|
|
47
48
|
children: /*#__PURE__*/ _jsx(Tooltip, {
|
|
48
49
|
label: unselectAllLabel,
|
|
49
50
|
children: /*#__PURE__*/ _jsx(Button, {
|
|
50
|
-
onClick:
|
|
51
|
+
onClick: store.clearRowSelection,
|
|
51
52
|
variant: "subtle",
|
|
52
|
-
disabled:
|
|
53
|
+
disabled: !store.rowSelectionEnabled,
|
|
53
54
|
leftSection: /*#__PURE__*/ _jsx(CrossSize16Px, {
|
|
54
55
|
height: 16
|
|
55
56
|
}),
|
|
@@ -58,6 +59,7 @@ export const TableHeader = factory((props, ref)=>{
|
|
|
58
59
|
})
|
|
59
60
|
}) : null,
|
|
60
61
|
children,
|
|
62
|
+
showActions ? /*#__PURE__*/ _jsx(TableHeaderActions, {}) : null,
|
|
61
63
|
/*#__PURE__*/ _jsx(TableLayoutControl, {})
|
|
62
64
|
]
|
|
63
65
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/table/table-header/TableHeader.tsx"],"sourcesContent":["import {CrossSize16Px} from '@coveord/plasma-react-icons';\nimport {Box, BoxProps, factory, Factory, Grid, Tooltip, useProps} from '@mantine/core';\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/table/table-header/TableHeader.tsx"],"sourcesContent":["import {CrossSize16Px} from '@coveord/plasma-react-icons';\nimport {Box, BoxProps, CompoundStylesApiProps, factory, Factory, Grid, Tooltip, useProps} from '@mantine/core';\nimport {ReactNode} from 'react';\n\nimport {Button} from '../../button';\nimport {TableLayoutControl} from '../layouts/TableLayoutControl';\nimport {TableComponentsOrder} from '../Table';\nimport {TableHeaderActions} from '../table-actions';\nimport {useTableContext} from '../TableContext';\n\nexport type TableHeaderStylesNames = 'headerRoot' | 'headerGrid' | 'headerGridInner' | 'headerCol';\n\nexport interface TableHeaderProps\n extends Omit<BoxProps, 'classNames' | 'styles' | 'vars'>,\n CompoundStylesApiProps<TableHeaderFactory> {\n /* Children of header (ie: actions, datepicker, etc.) */\n children?: ReactNode;\n unselectAllLabel?: string;\n selectedCountLabel?: (count: number) => string;\n /**\n * Whether to show actions when rows are selected\n *\n * default true\n */\n showActions?: boolean;\n}\n\nexport type TableHeaderFactory = Factory<{\n props: TableHeaderProps;\n ref: HTMLDivElement;\n stylesNames: TableHeaderStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<TableHeaderProps> = {\n unselectAllLabel: 'Unselect all',\n selectedCountLabel: (count) => `${count} selected`,\n showActions: true,\n};\n\nexport const TableHeader = factory<TableHeaderFactory>((props, ref) => {\n const {store, getStyles} = useTableContext();\n const {\n showActions,\n unselectAllLabel,\n selectedCountLabel,\n children,\n classNames,\n className,\n styles,\n style,\n vars: _vars,\n ...others\n } = useProps('PlasmaTableHeader', defaultProps, props);\n const selectedRows = store.getSelectedRows();\n\n const stylesApiProps = {classNames, styles};\n const innerStyles = getStyles('headerGridInner', stylesApiProps);\n const gridStyles = getStyles('headerGrid', stylesApiProps);\n\n return (\n <Box ref={ref} {...getStyles('headerRoot', {className, style, ...stylesApiProps})} {...others}>\n <Grid\n justify=\"flex-start\"\n align=\"center\"\n classNames={{inner: innerStyles.className, root: gridStyles.className}}\n styles={{inner: innerStyles.style, root: gridStyles.style}}\n >\n {store.multiRowSelectionEnabled && selectedRows.length > 0 ? (\n <Grid.Col\n span=\"auto\"\n {...getStyles('headerCol', stylesApiProps)}\n order={TableComponentsOrder.MultiSelectInfo}\n >\n <Tooltip label={unselectAllLabel}>\n <Button\n onClick={store.clearRowSelection}\n variant=\"subtle\"\n disabled={!store.rowSelectionEnabled}\n leftSection={<CrossSize16Px height={16} />}\n >\n {selectedCountLabel(selectedRows.length)}\n </Button>\n </Tooltip>\n </Grid.Col>\n ) : null}\n {children}\n {showActions ? <TableHeaderActions /> : null}\n <TableLayoutControl />\n </Grid>\n </Box>\n );\n});\n"],"names":["CrossSize16Px","Box","factory","Grid","Tooltip","useProps","Button","TableLayoutControl","TableComponentsOrder","TableHeaderActions","useTableContext","defaultProps","unselectAllLabel","selectedCountLabel","count","showActions","TableHeader","props","ref","store","getStyles","children","classNames","className","styles","style","vars","_vars","others","selectedRows","getSelectedRows","stylesApiProps","innerStyles","gridStyles","justify","align","inner","root","multiRowSelectionEnabled","length","Col","span","order","MultiSelectInfo","label","onClick","clearRowSelection","variant","disabled","rowSelectionEnabled","leftSection","height"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAAQA,aAAa,QAAO,8BAA8B;AAC1D,SAAQC,GAAG,EAAoCC,OAAO,EAAWC,IAAI,EAAEC,OAAO,EAAEC,QAAQ,QAAO,gBAAgB;AAG/G,SAAQC,MAAM,QAAO,eAAe;AACpC,SAAQC,kBAAkB,QAAO,gCAAgC;AACjE,SAAQC,oBAAoB,QAAO,WAAW;AAC9C,SAAQC,kBAAkB,QAAO,mBAAmB;AACpD,SAAQC,eAAe,QAAO,kBAAkB;AA0BhD,MAAMC,eAA0C;IAC5CC,kBAAkB;IAClBC,oBAAoB,CAACC,QAAU,CAAC,EAAEA,MAAM,SAAS,CAAC;IAClDC,aAAa;AACjB;AAEA,OAAO,MAAMC,cAAcd,QAA4B,CAACe,OAAOC;IAC3D,MAAM,EAACC,KAAK,EAAEC,SAAS,EAAC,GAAGV;IAC3B,MAAM,EACFK,WAAW,EACXH,gBAAgB,EAChBC,kBAAkB,EAClBQ,QAAQ,EACRC,UAAU,EACVC,SAAS,EACTC,MAAM,EACNC,KAAK,EACLC,MAAMC,KAAK,EACX,GAAGC,QACN,GAAGvB,SAAS,qBAAqBM,cAAcM;IAChD,MAAMY,eAAeV,MAAMW,eAAe;IAE1C,MAAMC,iBAAiB;QAACT;QAAYE;IAAM;IAC1C,MAAMQ,cAAcZ,UAAU,mBAAmBW;IACjD,MAAME,aAAab,UAAU,cAAcW;IAE3C,qBACI,KAAC9B;QAAIiB,KAAKA;QAAM,GAAGE,UAAU,cAAc;YAACG;YAAWE;YAAO,GAAGM,cAAc;QAAA,EAAE;QAAG,GAAGH,MAAM;kBACzF,cAAA,MAACzB;YACG+B,SAAQ;YACRC,OAAM;YACNb,YAAY;gBAACc,OAAOJ,YAAYT,SAAS;gBAAEc,MAAMJ,WAAWV,SAAS;YAAA;YACrEC,QAAQ;gBAACY,OAAOJ,YAAYP,KAAK;gBAAEY,MAAMJ,WAAWR,KAAK;YAAA;;gBAExDN,MAAMmB,wBAAwB,IAAIT,aAAaU,MAAM,GAAG,kBACrD,KAACpC,KAAKqC,GAAG;oBACLC,MAAK;oBACJ,GAAGrB,UAAU,aAAaW,eAAe;oBAC1CW,OAAOlC,qBAAqBmC,eAAe;8BAE3C,cAAA,KAACvC;wBAAQwC,OAAOhC;kCACZ,cAAA,KAACN;4BACGuC,SAAS1B,MAAM2B,iBAAiB;4BAChCC,SAAQ;4BACRC,UAAU,CAAC7B,MAAM8B,mBAAmB;4BACpCC,2BAAa,KAAClD;gCAAcmD,QAAQ;;sCAEnCtC,mBAAmBgB,aAAaU,MAAM;;;qBAInD;gBACHlB;gBACAN,4BAAc,KAACN,0BAAwB;8BACxC,KAACF;;;;AAIjB,GAAG"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { BoxProps, Factory } from '@mantine/core';
|
|
2
|
-
import { CompoundStylesApiProps } from '@mantine/core/lib/core/styles-api/styles-api.types';
|
|
1
|
+
import { BoxProps, CompoundStylesApiProps, Factory } from '@mantine/core';
|
|
3
2
|
import { Header } from '@tanstack/react-table';
|
|
4
3
|
import { ComponentType, ForwardedRef, SVGProps } from 'react';
|
|
5
4
|
import { CustomComponentThemeExtend } from '../../../utils';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Th.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-header/Th.tsx"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAkC,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"Th.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-header/Th.tsx"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAE,sBAAsB,EAAE,OAAO,EAAkC,MAAM,eAAe,CAAC;AACzG,OAAO,EAAC,MAAM,EAAkC,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAiB,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC5E,OAAO,EAAC,0BAA0B,EAAW,MAAM,gBAAgB,CAAC;AAGpE,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEtC,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;AAEhD,MAAM,WAAW,OAAO,CAAC,CAAC,GAAG,OAAO,CAAE,SAAQ,QAAQ,EAAE,sBAAsB,CAAC,cAAc,CAAC;IAC1F,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;CAC5E;AAcD,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC;IACjC,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,oBAAoB,CAAC;IAC1B,WAAW,EAAE,kBAAkB,CAAC;IAChC,QAAQ,EAAE,IAAI,CAAC;CAClB,CAAC,CAAC;AAMH,eAAO,MAAM,EAAE;;cAAmC,aAAa,oBAAoB,CAAC;;;eAVzE,OAAO;aACT,oBAAoB;qBACZ,kBAAkB;kBACrB,IAAI;;CAkEjB,CAAC"}
|
|
@@ -3,7 +3,7 @@ import { ArrowDownSize16Px, ArrowUpSize16Px, DoubleArrowHeadVSize16Px } from '@c
|
|
|
3
3
|
import { Group, UnstyledButton, useProps } from '@mantine/core';
|
|
4
4
|
import { defaultColumnSizing, flexRender } from '@tanstack/react-table';
|
|
5
5
|
import { identity } from '../../../utils';
|
|
6
|
-
import {
|
|
6
|
+
import { useTableContext } from '../TableContext';
|
|
7
7
|
const SortingIcons = {
|
|
8
8
|
asc: ArrowUpSize16Px,
|
|
9
9
|
desc: ArrowDownSize16Px,
|
|
@@ -18,7 +18,7 @@ const defaultProps = {
|
|
|
18
18
|
sortingIcons: SortingIcons
|
|
19
19
|
};
|
|
20
20
|
export const Th = (props)=>{
|
|
21
|
-
const
|
|
21
|
+
const { getStyles } = useTableContext();
|
|
22
22
|
const { header, sortingIcons, classNames, className, styles, style, vars, ...others } = useProps('PlasmaTableTh', defaultProps, props);
|
|
23
23
|
const columnSizing = {
|
|
24
24
|
...defaultColumnSizing,
|
|
@@ -26,7 +26,7 @@ export const Th = (props)=>{
|
|
|
26
26
|
minSize: header.column.columnDef.minSize,
|
|
27
27
|
maxSize: header.column.columnDef.maxSize
|
|
28
28
|
};
|
|
29
|
-
const thStyles =
|
|
29
|
+
const thStyles = getStyles('th', {
|
|
30
30
|
classNames,
|
|
31
31
|
className,
|
|
32
32
|
styles,
|
|
@@ -45,7 +45,11 @@ export const Th = (props)=>{
|
|
|
45
45
|
maxWidth: columnSizing.maxSize
|
|
46
46
|
},
|
|
47
47
|
...others,
|
|
48
|
-
children:
|
|
48
|
+
children: /*#__PURE__*/ _jsx(Group, {
|
|
49
|
+
wrap: "nowrap",
|
|
50
|
+
gap: "xs",
|
|
51
|
+
children: flexRender(header.column.columnDef.header, header.getContext())
|
|
52
|
+
})
|
|
49
53
|
});
|
|
50
54
|
}
|
|
51
55
|
const onSort = header.column.getToggleSortingHandler();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/table/table-header/Th.tsx"],"sourcesContent":["import {ArrowDownSize16Px, ArrowUpSize16Px, DoubleArrowHeadVSize16Px} from '@coveord/plasma-react-icons';\nimport {BoxProps, Factory, Group, UnstyledButton, useProps} from '@mantine/core';\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/table/table-header/Th.tsx"],"sourcesContent":["import {ArrowDownSize16Px, ArrowUpSize16Px, DoubleArrowHeadVSize16Px} from '@coveord/plasma-react-icons';\nimport {BoxProps, CompoundStylesApiProps, Factory, Group, UnstyledButton, useProps} from '@mantine/core';\nimport {Header, defaultColumnSizing, flexRender} from '@tanstack/react-table';\nimport {AriaAttributes, ComponentType, ForwardedRef, SVGProps} from 'react';\nimport {CustomComponentThemeExtend, identity} from '../../../utils';\nimport {useTableContext} from '../TableContext';\n\nexport type TableThStylesNames = 'th';\n\nexport type SortState = 'asc' | 'desc' | 'none';\n\nexport interface ThProps<T = unknown> extends BoxProps, CompoundStylesApiProps<TableThFactory> {\n header: Header<T, unknown>;\n sortingIcons?: Record<SortState, ComponentType<SVGProps<SVGSVGElement>>>;\n}\n\nconst SortingIcons: ThProps['sortingIcons'] = {\n asc: ArrowUpSize16Px,\n desc: ArrowDownSize16Px,\n none: DoubleArrowHeadVSize16Px,\n};\n\nconst SortingLabels: Record<SortState, AriaAttributes['aria-sort']> = {\n asc: 'ascending',\n desc: 'descending',\n none: 'none',\n} as const;\n\nexport type TableThFactory = Factory<{\n props: ThProps;\n ref: HTMLTableCellElement;\n stylesNames: TableThStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<ThProps> = {\n sortingIcons: SortingIcons,\n};\n\nexport const Th = <T,>(props: ThProps<T> & {ref?: ForwardedRef<HTMLTableCellElement>}) => {\n const {getStyles} = useTableContext();\n const {header, sortingIcons, classNames, className, styles, style, vars, ...others} = useProps(\n 'PlasmaTableTh',\n defaultProps as Partial<ThProps<T>>,\n props,\n );\n\n const columnSizing = {\n ...defaultColumnSizing,\n size: header.column.columnDef.size,\n minSize: header.column.columnDef.minSize,\n maxSize: header.column.columnDef.maxSize,\n };\n\n const thStyles = getStyles('th', {classNames, className, styles, style});\n\n if (header.isPlaceholder) {\n return null;\n }\n\n if (!header.column.getCanSort()) {\n return (\n <th\n className={thStyles.className}\n style={{\n ...thStyles.style,\n width: columnSizing.size ?? 'auto',\n minWidth: columnSizing.minSize,\n maxWidth: columnSizing.maxSize,\n }}\n {...others}\n >\n <Group wrap=\"nowrap\" gap=\"xs\">\n {flexRender(header.column.columnDef.header, header.getContext())}\n </Group>\n </th>\n );\n }\n\n const onSort = header.column.getToggleSortingHandler();\n const sortingOrder = header.column.getIsSorted() || 'none';\n const Icon = sortingIcons[sortingOrder];\n\n return (\n <UnstyledButton\n component=\"th\"\n onClick={onSort}\n aria-sort={SortingLabels[sortingOrder]}\n data-control={true}\n {...thStyles}\n {...others}\n >\n <Group wrap=\"nowrap\" gap=\"xs\">\n {flexRender(header.column.columnDef.header, header.getContext())}\n <Icon height={16} width={16} />\n </Group>\n </UnstyledButton>\n );\n};\nTh.extend = identity as CustomComponentThemeExtend<TableThFactory>;\n"],"names":["ArrowDownSize16Px","ArrowUpSize16Px","DoubleArrowHeadVSize16Px","Group","UnstyledButton","useProps","defaultColumnSizing","flexRender","identity","useTableContext","SortingIcons","asc","desc","none","SortingLabels","defaultProps","sortingIcons","Th","props","getStyles","header","classNames","className","styles","style","vars","others","columnSizing","size","column","columnDef","minSize","maxSize","thStyles","isPlaceholder","getCanSort","th","width","minWidth","maxWidth","wrap","gap","getContext","onSort","getToggleSortingHandler","sortingOrder","getIsSorted","Icon","component","onClick","aria-sort","data-control","height","extend"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAAQA,iBAAiB,EAAEC,eAAe,EAAEC,wBAAwB,QAAO,8BAA8B;AACzG,SAAmDC,KAAK,EAAEC,cAAc,EAAEC,QAAQ,QAAO,gBAAgB;AACzG,SAAgBC,mBAAmB,EAAEC,UAAU,QAAO,wBAAwB;AAE9E,SAAoCC,QAAQ,QAAO,iBAAiB;AACpE,SAAQC,eAAe,QAAO,kBAAkB;AAWhD,MAAMC,eAAwC;IAC1CC,KAAKV;IACLW,MAAMZ;IACNa,MAAMX;AACV;AAEA,MAAMY,gBAAgE;IAClEH,KAAK;IACLC,MAAM;IACNC,MAAM;AACV;AASA,MAAME,eAAiC;IACnCC,cAAcN;AAClB;AAEA,OAAO,MAAMO,KAAK,CAAKC;IACnB,MAAM,EAACC,SAAS,EAAC,GAAGV;IACpB,MAAM,EAACW,MAAM,EAAEJ,YAAY,EAAEK,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,KAAK,EAAEC,IAAI,EAAE,GAAGC,QAAO,GAAGrB,SAClF,iBACAU,cACAG;IAGJ,MAAMS,eAAe;QACjB,GAAGrB,mBAAmB;QACtBsB,MAAMR,OAAOS,MAAM,CAACC,SAAS,CAACF,IAAI;QAClCG,SAASX,OAAOS,MAAM,CAACC,SAAS,CAACC,OAAO;QACxCC,SAASZ,OAAOS,MAAM,CAACC,SAAS,CAACE,OAAO;IAC5C;IAEA,MAAMC,WAAWd,UAAU,MAAM;QAACE;QAAYC;QAAWC;QAAQC;IAAK;IAEtE,IAAIJ,OAAOc,aAAa,EAAE;QACtB,OAAO;IACX;IAEA,IAAI,CAACd,OAAOS,MAAM,CAACM,UAAU,IAAI;QAC7B,qBACI,KAACC;YACGd,WAAWW,SAASX,SAAS;YAC7BE,OAAO;gBACH,GAAGS,SAAST,KAAK;gBACjBa,OAAOV,aAAaC,IAAI,IAAI;gBAC5BU,UAAUX,aAAaI,OAAO;gBAC9BQ,UAAUZ,aAAaK,OAAO;YAClC;YACC,GAAGN,MAAM;sBAEV,cAAA,KAACvB;gBAAMqC,MAAK;gBAASC,KAAI;0BACpBlC,WAAWa,OAAOS,MAAM,CAACC,SAAS,CAACV,MAAM,EAAEA,OAAOsB,UAAU;;;IAI7E;IAEA,MAAMC,SAASvB,OAAOS,MAAM,CAACe,uBAAuB;IACpD,MAAMC,eAAezB,OAAOS,MAAM,CAACiB,WAAW,MAAM;IACpD,MAAMC,OAAO/B,YAAY,CAAC6B,aAAa;IAEvC,qBACI,KAACzC;QACG4C,WAAU;QACVC,SAASN;QACTO,aAAWpC,aAAa,CAAC+B,aAAa;QACtCM,gBAAc;QACb,GAAGlB,QAAQ;QACX,GAAGP,MAAM;kBAEV,cAAA,MAACvB;YAAMqC,MAAK;YAASC,KAAI;;gBACpBlC,WAAWa,OAAOS,MAAM,CAACC,SAAS,CAACV,MAAM,EAAEA,OAAOsB,UAAU;8BAC7D,KAACK;oBAAKK,QAAQ;oBAAIf,OAAO;;;;;AAIzC,EAAE;AACFpB,GAAGoC,MAAM,GAAG7C"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { BoxProps, Factory } from '@mantine/core';
|
|
2
|
-
import { CompoundStylesApiProps } from '@mantine/core/lib/core/styles-api/styles-api.types';
|
|
1
|
+
import { BoxProps, CompoundStylesApiProps, Factory } from '@mantine/core';
|
|
3
2
|
export type TableLastUpdatedStylesNames = 'lastUpdatedRoot' | 'lastUpdatedLabel';
|
|
4
3
|
export interface TableLastUpdatedProps extends BoxProps, CompoundStylesApiProps<TableLastUpdatedFactory> {
|
|
5
4
|
/**
|
|
@@ -8,7 +7,6 @@ export interface TableLastUpdatedProps extends BoxProps, CompoundStylesApiProps<
|
|
|
8
7
|
* @default "Last update:"
|
|
9
8
|
*/
|
|
10
9
|
label?: string;
|
|
11
|
-
dependencies?: never;
|
|
12
10
|
}
|
|
13
11
|
export type TableLastUpdatedFactory = Factory<{
|
|
14
12
|
props: TableLastUpdatedProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableLastUpdated.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-last-updated/TableLastUpdated.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAW,OAAO,EAAwB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"TableLastUpdated.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-last-updated/TableLastUpdated.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAE,sBAAsB,EAAW,OAAO,EAAwB,MAAM,eAAe,CAAC;AAMxG,MAAM,MAAM,2BAA2B,GAAG,iBAAiB,GAAG,kBAAkB,CAAC;AAEjF,MAAM,WAAW,qBAAsB,SAAQ,QAAQ,EAAE,sBAAsB,CAAC,uBAAuB,CAAC;IACpG;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AACD,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC;IAC1C,KAAK,EAAE,qBAAqB,CAAC;IAC7B,GAAG,EAAE,cAAc,CAAC;IACpB,WAAW,EAAE,2BAA2B,CAAC;IACzC,QAAQ,EAAE,IAAI,CAAC;CAClB,CAAC,CAAC;AAMH,eAAO,MAAM,gBAAgB;WAVlB,qBAAqB;SACvB,cAAc;iBACN,2BAA2B;cAC9B,IAAI;EAoChB,CAAC"}
|
|
@@ -3,20 +3,18 @@ import { factory, Group, Text, useProps } from '@mantine/core';
|
|
|
3
3
|
import { useDidUpdate } from '@mantine/hooks';
|
|
4
4
|
import dayjs from 'dayjs';
|
|
5
5
|
import { useState } from 'react';
|
|
6
|
-
import {
|
|
6
|
+
import { useTableContext } from '../TableContext';
|
|
7
7
|
const defaultProps = {
|
|
8
8
|
label: 'Last update:'
|
|
9
9
|
};
|
|
10
10
|
export const TableLastUpdated = factory((props, ref)=>{
|
|
11
|
-
const
|
|
12
|
-
const { label,
|
|
13
|
-
const { state } = useTable();
|
|
11
|
+
const { table, getStyles } = useTableContext();
|
|
12
|
+
const { label, classNames, className, styles, style, vars, ...others } = useProps('PlasmaTableLastUpdated', defaultProps, props);
|
|
14
13
|
const [time, setTime] = useState(new Date());
|
|
15
14
|
useDidUpdate(()=>{
|
|
16
15
|
setTime(new Date());
|
|
17
16
|
}, [
|
|
18
|
-
|
|
19
|
-
...dependencies
|
|
17
|
+
table.options.data
|
|
20
18
|
]);
|
|
21
19
|
const stylesApiProps = {
|
|
22
20
|
classNames,
|
|
@@ -26,7 +24,7 @@ export const TableLastUpdated = factory((props, ref)=>{
|
|
|
26
24
|
px: "xl",
|
|
27
25
|
justify: "right",
|
|
28
26
|
ref: ref,
|
|
29
|
-
...
|
|
27
|
+
...getStyles('lastUpdatedRoot', {
|
|
30
28
|
className,
|
|
31
29
|
style,
|
|
32
30
|
...stylesApiProps
|
|
@@ -34,7 +32,7 @@ export const TableLastUpdated = factory((props, ref)=>{
|
|
|
34
32
|
...others,
|
|
35
33
|
children: /*#__PURE__*/ _jsxs(Text, {
|
|
36
34
|
size: "xs",
|
|
37
|
-
...
|
|
35
|
+
...getStyles('lastUpdatedLabel', {
|
|
38
36
|
className,
|
|
39
37
|
style,
|
|
40
38
|
...stylesApiProps
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/table/table-last-updated/TableLastUpdated.tsx"],"sourcesContent":["import {BoxProps, factory, Factory, Group, Text, useProps} from '@mantine/core';\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/table/table-last-updated/TableLastUpdated.tsx"],"sourcesContent":["import {BoxProps, CompoundStylesApiProps, factory, Factory, Group, Text, useProps} from '@mantine/core';\nimport {useDidUpdate} from '@mantine/hooks';\nimport dayjs from 'dayjs';\nimport {useState} from 'react';\nimport {useTableContext} from '../TableContext';\n\nexport type TableLastUpdatedStylesNames = 'lastUpdatedRoot' | 'lastUpdatedLabel';\n\nexport interface TableLastUpdatedProps extends BoxProps, CompoundStylesApiProps<TableLastUpdatedFactory> {\n /**\n * Label to contextualize the date\n *\n * @default \"Last update:\"\n */\n label?: string;\n}\nexport type TableLastUpdatedFactory = Factory<{\n props: TableLastUpdatedProps;\n ref: HTMLDivElement;\n stylesNames: TableLastUpdatedStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<TableLastUpdatedProps> = {\n label: 'Last update:',\n};\n\nexport const TableLastUpdated = factory<TableLastUpdatedFactory>((props, ref) => {\n const {table, getStyles} = useTableContext();\n const {label, classNames, className, styles, style, vars, ...others} = useProps(\n 'PlasmaTableLastUpdated',\n defaultProps,\n props,\n );\n const [time, setTime] = useState(new Date());\n\n useDidUpdate(() => {\n setTime(new Date());\n }, [table.options.data]);\n\n const stylesApiProps = {classNames, styles};\n\n return (\n <Group\n px=\"xl\"\n justify=\"right\"\n ref={ref}\n {...getStyles('lastUpdatedRoot', {className, style, ...stylesApiProps})}\n {...others}\n >\n <Text size=\"xs\" {...getStyles('lastUpdatedLabel', {className, style, ...stylesApiProps})}>\n {label}\n <span role=\"timer\">{dayjs(time).format('h:mm:ss A')}</span>\n </Text>\n </Group>\n );\n});\n"],"names":["factory","Group","Text","useProps","useDidUpdate","dayjs","useState","useTableContext","defaultProps","label","TableLastUpdated","props","ref","table","getStyles","classNames","className","styles","style","vars","others","time","setTime","Date","options","data","stylesApiProps","px","justify","size","span","role","format"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAA0CA,OAAO,EAAWC,KAAK,EAAEC,IAAI,EAAEC,QAAQ,QAAO,gBAAgB;AACxG,SAAQC,YAAY,QAAO,iBAAiB;AAC5C,OAAOC,WAAW,QAAQ;AAC1B,SAAQC,QAAQ,QAAO,QAAQ;AAC/B,SAAQC,eAAe,QAAO,kBAAkB;AAmBhD,MAAMC,eAA+C;IACjDC,OAAO;AACX;AAEA,OAAO,MAAMC,mBAAmBV,QAAiC,CAACW,OAAOC;IACrE,MAAM,EAACC,KAAK,EAAEC,SAAS,EAAC,GAAGP;IAC3B,MAAM,EAACE,KAAK,EAAEM,UAAU,EAAEC,SAAS,EAAEC,MAAM,EAAEC,KAAK,EAAEC,IAAI,EAAE,GAAGC,QAAO,GAAGjB,SACnE,0BACAK,cACAG;IAEJ,MAAM,CAACU,MAAMC,QAAQ,GAAGhB,SAAS,IAAIiB;IAErCnB,aAAa;QACTkB,QAAQ,IAAIC;IAChB,GAAG;QAACV,MAAMW,OAAO,CAACC,IAAI;KAAC;IAEvB,MAAMC,iBAAiB;QAACX;QAAYE;IAAM;IAE1C,qBACI,KAAChB;QACG0B,IAAG;QACHC,SAAQ;QACRhB,KAAKA;QACJ,GAAGE,UAAU,mBAAmB;YAACE;YAAWE;YAAO,GAAGQ,cAAc;QAAA,EAAE;QACtE,GAAGN,MAAM;kBAEV,cAAA,MAAClB;YAAK2B,MAAK;YAAM,GAAGf,UAAU,oBAAoB;gBAACE;gBAAWE;gBAAO,GAAGQ,cAAc;YAAA,EAAE;;gBACnFjB;8BACD,KAACqB;oBAAKC,MAAK;8BAAS1B,MAAMgB,MAAMW,MAAM,CAAC;;;;;AAIvD,GAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableNoData.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-no-data/TableNoData.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAE,SAAS,EAAC,MAAM,OAAO,CAAC;AAEnD,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED,eAAO,MAAM,WAAW,EAAE,iBAAiB,CAAC,gBAAgB,CAAmC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/table/table-no-data/TableNoData.tsx"],"sourcesContent":["import {FunctionComponent, ReactNode} from 'react';\n\nexport interface TableNoDataProps {\n children: ReactNode;\n}\n\nexport const TableNoData: FunctionComponent<TableNoDataProps> = ({children}) => <>{children}</>;\n"],"names":["TableNoData","children"],"rangeMappings":";;;","mappings":";AAMA,OAAO,MAAMA,cAAmD,CAAC,EAACC,QAAQ,EAAC,iBAAK;kBAAGA;OAAa"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TablePagination.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-pagination/TablePagination.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAC,iBAAiB,EAAC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"TablePagination.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-pagination/TablePagination.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAC,iBAAiB,EAAC,MAAM,OAAO,CAAC;AAExC,OAAO,EAAC,oBAAoB,EAAC,MAAM,yBAAyB,CAAC;AAG7D,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,oBAAoB,CAwCnE,CAAC"}
|
|
@@ -1,33 +1,30 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Pagination } from '@mantine/core';
|
|
3
3
|
import { useDidUpdate } from '@mantine/hooks';
|
|
4
|
-
import {
|
|
5
|
-
export const TablePagination = ({
|
|
6
|
-
const {
|
|
4
|
+
import { useTableContext } from '../TableContext';
|
|
5
|
+
export const TablePagination = ({ onPageChange })=>{
|
|
6
|
+
const { store, table, containerRef } = useTableContext();
|
|
7
7
|
const updatePage = (newPage)=>{
|
|
8
8
|
onPageChange?.(newPage - 1);
|
|
9
|
-
|
|
10
|
-
...
|
|
11
|
-
|
|
12
|
-
...prevState.pagination,
|
|
13
|
-
pageIndex: newPage - 1
|
|
14
|
-
}
|
|
9
|
+
store.setPagination((prev)=>({
|
|
10
|
+
...prev,
|
|
11
|
+
pageIndex: newPage - 1
|
|
15
12
|
}));
|
|
16
13
|
containerRef.current.scrollIntoView({
|
|
17
14
|
behavior: 'smooth'
|
|
18
15
|
});
|
|
19
16
|
};
|
|
20
|
-
const total =
|
|
17
|
+
const total = table.getPageCount();
|
|
21
18
|
useDidUpdate(()=>{
|
|
22
|
-
if (state.pagination.pageIndex + 1 > total && total > 0) {
|
|
19
|
+
if (store.state.pagination.pageIndex + 1 > total && total > 0) {
|
|
23
20
|
updatePage(total);
|
|
24
21
|
}
|
|
25
22
|
}, [
|
|
26
|
-
state.pagination.pageIndex,
|
|
23
|
+
store.state.pagination.pageIndex,
|
|
27
24
|
total
|
|
28
25
|
]);
|
|
29
26
|
return /*#__PURE__*/ _jsx(Pagination, {
|
|
30
|
-
value: state.pagination.pageIndex + 1,
|
|
27
|
+
value: store.state.pagination.pageIndex + 1,
|
|
31
28
|
onChange: updatePage,
|
|
32
29
|
total: total,
|
|
33
30
|
boundaries: 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/table/table-pagination/TablePagination.tsx"],"sourcesContent":["import {Pagination} from '@mantine/core';\nimport {useDidUpdate} from '@mantine/hooks';\nimport {FunctionComponent} from 'react';\n\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/table/table-pagination/TablePagination.tsx"],"sourcesContent":["import {Pagination} from '@mantine/core';\nimport {useDidUpdate} from '@mantine/hooks';\nimport {FunctionComponent} from 'react';\n\nimport {TablePaginationProps} from './TablePagination.types';\nimport {useTableContext} from '../TableContext';\n\nexport const TablePagination: FunctionComponent<TablePaginationProps> = ({onPageChange}) => {\n const {store, table, containerRef} = useTableContext();\n\n const updatePage = (newPage: number) => {\n onPageChange?.(newPage - 1);\n store.setPagination((prev) => ({...prev, pageIndex: newPage - 1}));\n containerRef.current.scrollIntoView({behavior: 'smooth'});\n };\n\n const total = table.getPageCount();\n\n useDidUpdate(() => {\n if (store.state.pagination.pageIndex + 1 > total && total > 0) {\n updatePage(total);\n }\n }, [store.state.pagination.pageIndex, total]);\n\n return (\n <Pagination\n value={store.state.pagination.pageIndex + 1}\n onChange={updatePage}\n total={total}\n boundaries={0}\n size=\"md\"\n gap=\"xs\"\n getControlProps={(control) => {\n switch (control) {\n case 'previous':\n return {\n component: 'button',\n 'aria-label': 'previous page',\n };\n case 'next':\n return {component: 'button', 'aria-label': 'next page'};\n default:\n return {};\n }\n }}\n />\n );\n};\n"],"names":["Pagination","useDidUpdate","useTableContext","TablePagination","onPageChange","store","table","containerRef","updatePage","newPage","setPagination","prev","pageIndex","current","scrollIntoView","behavior","total","getPageCount","state","pagination","value","onChange","boundaries","size","gap","getControlProps","control","component"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAAQA,UAAU,QAAO,gBAAgB;AACzC,SAAQC,YAAY,QAAO,iBAAiB;AAI5C,SAAQC,eAAe,QAAO,kBAAkB;AAEhD,OAAO,MAAMC,kBAA2D,CAAC,EAACC,YAAY,EAAC;IACnF,MAAM,EAACC,KAAK,EAAEC,KAAK,EAAEC,YAAY,EAAC,GAAGL;IAErC,MAAMM,aAAa,CAACC;QAChBL,eAAeK,UAAU;QACzBJ,MAAMK,aAAa,CAAC,CAACC,OAAU,CAAA;gBAAC,GAAGA,IAAI;gBAAEC,WAAWH,UAAU;YAAC,CAAA;QAC/DF,aAAaM,OAAO,CAACC,cAAc,CAAC;YAACC,UAAU;QAAQ;IAC3D;IAEA,MAAMC,QAAQV,MAAMW,YAAY;IAEhChB,aAAa;QACT,IAAII,MAAMa,KAAK,CAACC,UAAU,CAACP,SAAS,GAAG,IAAII,SAASA,QAAQ,GAAG;YAC3DR,WAAWQ;QACf;IACJ,GAAG;QAACX,MAAMa,KAAK,CAACC,UAAU,CAACP,SAAS;QAAEI;KAAM;IAE5C,qBACI,KAAChB;QACGoB,OAAOf,MAAMa,KAAK,CAACC,UAAU,CAACP,SAAS,GAAG;QAC1CS,UAAUb;QACVQ,OAAOA;QACPM,YAAY;QACZC,MAAK;QACLC,KAAI;QACJC,iBAAiB,CAACC;YACd,OAAQA;gBACJ,KAAK;oBACD,OAAO;wBACHC,WAAW;wBACX,cAAc;oBAClB;gBACJ,KAAK;oBACD,OAAO;wBAACA,WAAW;wBAAU,cAAc;oBAAW;gBAC1D;oBACI,OAAO,CAAC;YAChB;QACJ;;AAGZ,EAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TablePagination.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-pagination/TablePagination.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACjC
|
|
1
|
+
{"version":3,"file":"TablePagination.types.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-pagination/TablePagination.types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACjC;;;;OAIG;IACH,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/table/table-pagination/TablePagination.types.ts"],"sourcesContent":["export interface TablePaginationProps {\n /**\n * The
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/table/table-pagination/TablePagination.types.ts"],"sourcesContent":["export interface TablePaginationProps {\n /**\n * The callback if the current page is changed.\n *\n * @param pageIndex The index of the updated page.\n */\n onPageChange?: (pageIndex: number) => void;\n}\n"],"names":[],"rangeMappings":"","mappings":"AAAA,WAOC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TablePerPage.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-per-page/TablePerPage.tsx"],"names":[],"mappings":"AACA,OAAO,EAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"TablePerPage.d.ts","sourceRoot":"","sources":["../../../../../src/components/table/table-per-page/TablePerPage.tsx"],"names":[],"mappings":"AACA,OAAO,EAAC,iBAAiB,EAAU,MAAM,OAAO,CAAC;AAGjD,OAAO,EAAC,iBAAiB,EAAC,MAAM,sBAAsB,CAAC;AAEvD,eAAO,MAAM,YAAY,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,GAAG;IAAC,YAAY,EAAE,MAAM,CAAA;CAwBtF,CAAC"}
|
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Group, SegmentedControl, Text } from '@mantine/core';
|
|
3
|
-
import {
|
|
3
|
+
import { useMemo } from 'react';
|
|
4
|
+
import { useTableContext } from '../TableContext';
|
|
4
5
|
export const TablePerPage = ({ label = 'Results per page', values = [
|
|
5
6
|
25,
|
|
6
7
|
50,
|
|
7
8
|
100
|
|
8
9
|
], onPerPageChange })=>{
|
|
9
|
-
const {
|
|
10
|
+
const { store, table } = useTableContext();
|
|
11
|
+
const choices = useMemo(()=>values.map((value)=>value.toString()), [
|
|
12
|
+
values
|
|
13
|
+
]);
|
|
10
14
|
const updatePerPage = (newPerPage)=>{
|
|
11
15
|
onPerPageChange?.(Number(newPerPage));
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
pageSize: parseInt(newPerPage, 10)
|
|
17
|
-
}
|
|
18
|
-
}));
|
|
16
|
+
store.setPagination({
|
|
17
|
+
pageIndex: 0,
|
|
18
|
+
pageSize: parseInt(newPerPage, 10)
|
|
19
|
+
});
|
|
19
20
|
};
|
|
20
|
-
return getPageCount() > 0 ? /*#__PURE__*/ _jsxs(Group, {
|
|
21
|
+
return table.getPageCount() > 0 ? /*#__PURE__*/ _jsxs(Group, {
|
|
21
22
|
gap: "sm",
|
|
22
23
|
children: [
|
|
23
24
|
/*#__PURE__*/ _jsx(Text, {
|
|
@@ -25,9 +26,9 @@ export const TablePerPage = ({ label = 'Results per page', values = [
|
|
|
25
26
|
children: label
|
|
26
27
|
}),
|
|
27
28
|
/*#__PURE__*/ _jsx(SegmentedControl, {
|
|
28
|
-
value: state.pagination.pageSize.toString() ??
|
|
29
|
+
value: store.state.pagination.pageSize.toString() ?? choices[1] ?? choices[0],
|
|
29
30
|
onChange: updatePerPage,
|
|
30
|
-
data:
|
|
31
|
+
data: choices,
|
|
31
32
|
size: "sm"
|
|
32
33
|
})
|
|
33
34
|
]
|