@powerhousedao/document-engineering 1.15.0 → 1.16.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/dist/src/scalars/components/amount-field/amount-currency-validations.d.ts +1 -1
- package/dist/src/scalars/components/amount-field/amount-currency-validations.d.ts.map +1 -1
- package/dist/src/scalars/components/amount-field/amount-currency-validations.js +6 -3
- package/dist/src/scalars/components/amount-field/amount-currency-validations.js.map +1 -1
- package/dist/src/scalars/components/amount-field/amount-field-validations.d.ts +1 -1
- package/dist/src/scalars/components/amount-field/amount-field-validations.d.ts.map +1 -1
- package/dist/src/scalars/components/amount-field/amount-field-validations.js +2 -2
- package/dist/src/scalars/components/amount-field/amount-field-validations.js.map +1 -1
- package/dist/src/scalars/components/date-picker-field/date-picker-validations.js +6 -6
- package/dist/src/scalars/components/date-picker-field/date-picker-validations.js.map +1 -1
- package/dist/src/scalars/components/date-time-picker-field/date-time-picker-field-validations.d.ts.map +1 -1
- package/dist/src/scalars/components/date-time-picker-field/date-time-picker-field-validations.js +14 -7
- package/dist/src/scalars/components/date-time-picker-field/date-time-picker-field-validations.js.map +1 -1
- package/dist/src/scalars/components/examples/enum-field-example/enum-field-example.js +1 -1
- package/dist/src/scalars/components/examples/enum-field-example/enum-field-example.js.map +1 -1
- package/dist/src/scalars/components/examples/multiple-fields-with-complex-layout/multiple-fields-with-complex-layout.js +2 -2
- package/dist/src/scalars/components/examples/multiple-fields-with-complex-layout/multiple-fields-with-complex-layout.js.map +1 -1
- package/dist/src/scalars/components/examples/reset-button/reset-button.js +2 -2
- package/dist/src/scalars/components/examples/reset-button/reset-button.js.map +1 -1
- package/dist/src/scalars/components/examples/reset-on-successful-submit/reset-on-successful-submit.d.ts.map +1 -1
- package/dist/src/scalars/components/examples/reset-on-successful-submit/reset-on-successful-submit.js +2 -2
- package/dist/src/scalars/components/examples/reset-on-successful-submit/reset-on-successful-submit.js.map +1 -1
- package/dist/src/scalars/components/examples/submit-changes-only/submit-changes-only.js +3 -3
- package/dist/src/scalars/components/examples/submit-changes-only/submit-changes-only.js.map +1 -1
- package/dist/src/scalars/components/fragments/command/command.d.ts +6 -6
- package/dist/src/scalars/components/fragments/command/command.d.ts.map +1 -1
- package/dist/src/scalars/components/fragments/command/command.js.map +1 -1
- package/dist/src/scalars/components/fragments/with-field-validation/with-field-validation.js +1 -1
- package/dist/src/scalars/components/fragments/with-field-validation/with-field-validation.js.map +1 -1
- package/dist/src/scalars/lib/decorators.js +2 -2
- package/dist/src/scalars/lib/decorators.js.map +1 -1
- package/dist/src/scalars/lib/value-cast.js +4 -4
- package/dist/src/scalars/lib/value-cast.js.map +1 -1
- package/dist/src/ui/components/button/button.d.ts +11 -0
- package/dist/src/ui/components/button/button.d.ts.map +1 -0
- package/dist/src/ui/components/button/button.js +32 -0
- package/dist/src/ui/components/button/button.js.map +1 -0
- package/dist/src/ui/components/button/index.d.ts +2 -0
- package/dist/src/ui/components/button/index.d.ts.map +1 -0
- package/dist/src/ui/components/button/index.js +2 -0
- package/dist/src/ui/components/button/index.js.map +1 -0
- package/dist/src/ui/components/confirm/alert-dialog.d.ts +21 -0
- package/dist/src/ui/components/confirm/alert-dialog.d.ts.map +1 -0
- package/dist/src/ui/components/confirm/alert-dialog.js +40 -0
- package/dist/src/ui/components/confirm/alert-dialog.js.map +1 -0
- package/dist/src/ui/components/confirm/confirm.d.ts +12 -0
- package/dist/src/ui/components/confirm/confirm.d.ts.map +1 -0
- package/dist/src/ui/components/confirm/confirm.js +14 -0
- package/dist/src/ui/components/confirm/confirm.js.map +1 -0
- package/dist/src/ui/components/confirm/index.d.ts +3 -0
- package/dist/src/ui/components/confirm/index.d.ts.map +1 -0
- package/dist/src/ui/components/confirm/index.js +2 -0
- package/dist/src/ui/components/confirm/index.js.map +1 -0
- package/dist/src/ui/components/data-entry/date-picker/subcomponents/date-picker-diff/date-picker-diff.js +1 -1
- package/dist/src/ui/components/data-entry/date-picker/subcomponents/date-picker-diff/date-picker-diff.js.map +1 -1
- package/dist/src/ui/components/data-entry/date-picker/subcomponents/month-grid.js +2 -2
- package/dist/src/ui/components/data-entry/date-picker/subcomponents/month-grid.js.map +1 -1
- package/dist/src/ui/components/data-entry/date-picker/use-date-picker.d.ts.map +1 -1
- package/dist/src/ui/components/data-entry/date-picker/use-date-picker.js +3 -3
- package/dist/src/ui/components/data-entry/date-picker/use-date-picker.js.map +1 -1
- package/dist/src/ui/components/data-entry/date-time-picker/date-time-picker-content.d.ts +3 -1
- package/dist/src/ui/components/data-entry/date-time-picker/date-time-picker-content.d.ts.map +1 -1
- package/dist/src/ui/components/data-entry/date-time-picker/date-time-picker-content.js +2 -2
- package/dist/src/ui/components/data-entry/date-time-picker/date-time-picker-content.js.map +1 -1
- package/dist/src/ui/components/data-entry/date-time-picker/date-time-picker.d.ts.map +1 -1
- package/dist/src/ui/components/data-entry/date-time-picker/date-time-picker.js +2 -2
- package/dist/src/ui/components/data-entry/date-time-picker/date-time-picker.js.map +1 -1
- package/dist/src/ui/components/data-entry/date-time-picker/use-date-time-picker.d.ts +1 -0
- package/dist/src/ui/components/data-entry/date-time-picker/use-date-time-picker.d.ts.map +1 -1
- package/dist/src/ui/components/data-entry/date-time-picker/use-date-time-picker.js +29 -6
- package/dist/src/ui/components/data-entry/date-time-picker/use-date-time-picker.js.map +1 -1
- package/dist/src/ui/components/data-entry/date-time-picker/utils.d.ts +2 -1
- package/dist/src/ui/components/data-entry/date-time-picker/utils.d.ts.map +1 -1
- package/dist/src/ui/components/data-entry/date-time-picker/utils.js +6 -3
- package/dist/src/ui/components/data-entry/date-time-picker/utils.js.map +1 -1
- package/dist/src/ui/components/data-entry/text-input/text-input.d.ts.map +1 -1
- package/dist/src/ui/components/data-entry/text-input/text-input.js +1 -1
- package/dist/src/ui/components/data-entry/text-input/text-input.js.map +1 -1
- package/dist/src/ui/components/data-entry/textarea/textarea.d.ts.map +1 -1
- package/dist/src/ui/components/data-entry/textarea/textarea.js +1 -1
- package/dist/src/ui/components/data-entry/textarea/textarea.js.map +1 -1
- package/dist/src/ui/components/data-entry/toggle/subcomponents/toogle-diff.d.ts +2 -2
- package/dist/src/ui/components/data-entry/toggle/subcomponents/toogle-diff.d.ts.map +1 -1
- package/dist/src/ui/components/data-entry/toggle/subcomponents/toogle-diff.js +2 -2
- package/dist/src/ui/components/data-entry/toggle/subcomponents/toogle-diff.js.map +1 -1
- package/dist/src/ui/components/data-entry/toggle/toggle.d.ts.map +1 -1
- package/dist/src/ui/components/data-entry/toggle/toggle.js +1 -1
- package/dist/src/ui/components/data-entry/toggle/toggle.js.map +1 -1
- package/dist/src/ui/components/data-entry/url-input/url-input-diff.d.ts +1 -1
- package/dist/src/ui/components/data-entry/url-input/url-input-diff.d.ts.map +1 -1
- package/dist/src/ui/components/data-entry/url-input/url-input-diff.js +2 -2
- package/dist/src/ui/components/data-entry/url-input/url-input-diff.js.map +1 -1
- package/dist/src/ui/components/data-entry/url-input/url-input.d.ts.map +1 -1
- package/dist/src/ui/components/data-entry/url-input/url-input.js +1 -1
- package/dist/src/ui/components/data-entry/url-input/url-input.js.map +1 -1
- package/dist/src/ui/components/index.d.ts +2 -0
- package/dist/src/ui/components/index.d.ts.map +1 -1
- package/dist/src/ui/components/index.js +3 -0
- package/dist/src/ui/components/index.js.map +1 -1
- package/dist/src/ui/components/object-set-table/examples/custom-rendering/custom-rendering.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/examples/custom-rendering/custom-rendering.js +0 -1
- package/dist/src/ui/components/object-set-table/examples/custom-rendering/custom-rendering.js.map +1 -1
- package/dist/src/ui/components/object-set-table/examples/table-editing/table-editing.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/examples/table-editing/table-editing.js +28 -5
- package/dist/src/ui/components/object-set-table/examples/table-editing/table-editing.js.map +1 -1
- package/dist/src/ui/components/object-set-table/hooks/useGlobalTableKeyEvents.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/hooks/useGlobalTableKeyEvents.js +13 -0
- package/dist/src/ui/components/object-set-table/hooks/useGlobalTableKeyEvents.js.map +1 -1
- package/dist/src/ui/components/object-set-table/logic/selection-manager.d.ts +4 -0
- package/dist/src/ui/components/object-set-table/logic/selection-manager.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/logic/selection-manager.js +6 -0
- package/dist/src/ui/components/object-set-table/logic/selection-manager.js.map +1 -1
- package/dist/src/ui/components/object-set-table/logic/table-api.d.ts +24 -0
- package/dist/src/ui/components/object-set-table/logic/table-api.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/logic/table-api.js +56 -0
- package/dist/src/ui/components/object-set-table/logic/table-api.js.map +1 -1
- package/dist/src/ui/components/object-set-table/logic/types.d.ts +5 -0
- package/dist/src/ui/components/object-set-table/logic/types.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/object-set-table.d.ts +3 -0
- package/dist/src/ui/components/object-set-table/object-set-table.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/object-set-table.js +8 -1
- package/dist/src/ui/components/object-set-table/object-set-table.js.map +1 -1
- package/dist/src/ui/components/object-set-table/subcomponents/body.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/subcomponents/body.js +11 -5
- package/dist/src/ui/components/object-set-table/subcomponents/body.js.map +1 -1
- package/dist/src/ui/components/object-set-table/subcomponents/cells/information-cell.d.ts +5 -1
- package/dist/src/ui/components/object-set-table/subcomponents/cells/information-cell.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/subcomponents/cells/information-cell.js +8 -2
- package/dist/src/ui/components/object-set-table/subcomponents/cells/information-cell.js.map +1 -1
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/empty-cell.d.ts +9 -0
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/empty-cell.d.ts.map +1 -0
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/empty-cell.js +7 -0
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/empty-cell.js.map +1 -0
- package/dist/src/ui/components/object-set-table/subcomponents/cells/{render-cell.d.ts → render-cell/render-cell.d.ts} +1 -1
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/render-cell.d.ts.map +1 -0
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/render-cell.js +34 -0
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/render-cell.js.map +1 -0
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/use-cell-logic.d.ts +16 -0
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/use-cell-logic.d.ts.map +1 -0
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/use-cell-logic.js +44 -0
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/use-cell-logic.js.map +1 -0
- package/dist/src/ui/components/object-set-table/subcomponents/rows/render-row.js +2 -2
- package/dist/src/ui/components/object-set-table/subcomponents/rows/render-row.js.map +1 -1
- package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-provider.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-provider.js +7 -1
- package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-provider.js.map +1 -1
- package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-reducer.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-reducer.js +5 -3
- package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-reducer.js.map +1 -1
- package/dist/src/ui/components/object-set-table/types.d.ts +12 -4
- package/dist/src/ui/components/object-set-table/types.d.ts.map +1 -1
- package/dist/src/ui/components/object-set-table/utils.js +1 -1
- package/dist/src/ui/components/object-set-table/utils.js.map +1 -1
- package/dist/style.css +342 -0
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell.d.ts.map +0 -1
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell.js +0 -60
- package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell.js.map +0 -1
|
@@ -38,9 +38,22 @@ const useGlobalTableKeyEvents = () => {
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
};
|
|
41
|
+
const handleDeleteRows = (e) => {
|
|
42
|
+
if (e.key === 'Delete' && api.canDelete()) {
|
|
43
|
+
const selectedRowIndexes = api.selection
|
|
44
|
+
.getSelectedRowIndexes()
|
|
45
|
+
// we need to filter out the rows as generated empty rows might be selected
|
|
46
|
+
.filter((index) => index < api._getState().data.length);
|
|
47
|
+
if (selectedRowIndexes.length > 0) {
|
|
48
|
+
void api.deleteRows(selectedRowIndexes);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
};
|
|
41
52
|
api.getHTMLTable()?.addEventListener('keydown', handleKeyDown);
|
|
53
|
+
document.addEventListener('keydown', handleDeleteRows);
|
|
42
54
|
return () => {
|
|
43
55
|
api.getHTMLTable()?.removeEventListener('keydown', handleKeyDown);
|
|
56
|
+
document.removeEventListener('keydown', handleDeleteRows);
|
|
44
57
|
};
|
|
45
58
|
}, [api]);
|
|
46
59
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGlobalTableKeyEvents.js","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/hooks/useGlobalTableKeyEvents.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAA;AACzF,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEtE,MAAM,uBAAuB,GAAG,GAAG,EAAE;IACnC,MAAM,EAAE,GAAG,EAAE,GAAG,qBAAqB,EAAE,CAAA;IAEvC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,aAAa,GAAG,CAAC,CAAgB,EAAE,EAAE;YACzC,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,EAAE,CAAA;YACjC,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC,iBAAiB,CAAA;YAEtD,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;oBACtB,KAAK,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;gBACjC,CAAC;gBACD,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;oBACzC,KAAK,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBAClC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,YAAY,IAAI,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;oBAClG,0EAA0E;oBAC1E,CAAC,CAAC,cAAc,EAAE,CAAA;oBAClB,GAAG,CAAC,iBAAiB,CAAC,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC,MAAM,CAAC,CAAA;gBAC9D,CAAC;gBAED,aAAa;gBACb,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC/E,MAAM,SAAS,GAAG,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;oBAC5C,MAAM,QAAQ,GAAG,mBAAmB,CAAC;wBACnC,SAAS;wBACT,WAAW,EAAE,YAAY;wBACzB,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,MAAM;wBACrC,WAAW,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,MAAM;wBAC5C,aAAa,EAAE,CAAC,CAAC,GAAG,KAAK,KAAK;qBAC/B,CAAC,CAAA;oBACF,IAAI,CAAC,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;wBACpB,CAAC,CAAC,cAAc,EAAE,CAAA;oBACpB,CAAC;oBACD,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;gBACzD,CAAC;YACH,CAAC;QACH,CAAC,CAAA;QAED,GAAG,CAAC,YAAY,EAAE,EAAE,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;QAC9D,OAAO,GAAG,EAAE;YACV,GAAG,CAAC,YAAY,EAAE,EAAE,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"useGlobalTableKeyEvents.js","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/hooks/useGlobalTableKeyEvents.tsx"],"names":[],"mappings":"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"}
|
|
@@ -47,6 +47,10 @@ declare class SelectionManager<TData> implements TableSelectionManager {
|
|
|
47
47
|
* @param to - The index of the last row to select
|
|
48
48
|
*/
|
|
49
49
|
selectRange(from: number, to: number): void;
|
|
50
|
+
/**
|
|
51
|
+
* Returns the indexes of the selected rows
|
|
52
|
+
*/
|
|
53
|
+
getSelectedRowIndexes(): number[];
|
|
50
54
|
/**
|
|
51
55
|
* Selects a cell in the table.
|
|
52
56
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection-manager.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/logic/selection-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAE5E,cAAM,gBAAgB,CAAC,KAAK,CAAE,YAAW,qBAAqB;IAChD,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,mBAAmB,CAAC,KAAK,CAAC;IAEnD;;OAEG;IACH,aAAa;IAIb;;OAEG;IACH,cAAc;IAId;;OAEG;IACH,iBAAiB;IAIjB;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM;IAS1B;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM;IAS1B;;;;OAIG;IACH,uBAAuB,CAAC,QAAQ,EAAE,MAAM;IAkBxC;;OAEG;IACH,aAAa;IASb;;OAEG;IACH,eAAe;IASf;;;;;OAKG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IASpC;;;;;OAKG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAShD;;OAEG;IACH,kBAAkB;IAIlB;;OAEG;IACH,KAAK;CAGN;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
|
|
1
|
+
{"version":3,"file":"selection-manager.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/logic/selection-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAE5E,cAAM,gBAAgB,CAAC,KAAK,CAAE,YAAW,qBAAqB;IAChD,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,mBAAmB,CAAC,KAAK,CAAC;IAEnD;;OAEG;IACH,aAAa;IAIb;;OAEG;IACH,cAAc;IAId;;OAEG;IACH,iBAAiB;IAIjB;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM;IAS1B;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM;IAS1B;;;;OAIG;IACH,uBAAuB,CAAC,QAAQ,EAAE,MAAM;IAkBxC;;OAEG;IACH,aAAa;IASb;;OAEG;IACH,eAAe;IASf;;;;;OAKG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IASpC;;OAEG;IACH,qBAAqB,IAAI,MAAM,EAAE;IAIjC;;;;;OAKG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAShD;;OAEG;IACH,kBAAkB;IAIlB;;OAEG;IACH,KAAK;CAGN;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
|
|
@@ -103,6 +103,12 @@ class SelectionManager {
|
|
|
103
103
|
payload: { from, to },
|
|
104
104
|
});
|
|
105
105
|
}
|
|
106
|
+
/**
|
|
107
|
+
* Returns the indexes of the selected rows
|
|
108
|
+
*/
|
|
109
|
+
getSelectedRowIndexes() {
|
|
110
|
+
return this.api._getState().selectedRowIndexes;
|
|
111
|
+
}
|
|
106
112
|
/**
|
|
107
113
|
* Selects a cell in the table.
|
|
108
114
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection-manager.js","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/logic/selection-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"selection-manager.js","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/logic/selection-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -84,6 +84,30 @@ declare class TableApi<TData> implements PrivateTableApiBase<TData> {
|
|
|
84
84
|
* ```
|
|
85
85
|
*/
|
|
86
86
|
getCurrentSortInfo(): SortingInfo | null;
|
|
87
|
+
/**
|
|
88
|
+
* Checks if the table can be deleted
|
|
89
|
+
*
|
|
90
|
+
* @returns `true` if the table can be deleted, `false` otherwise
|
|
91
|
+
*/
|
|
92
|
+
canDelete(): boolean;
|
|
93
|
+
/**
|
|
94
|
+
* Deletes the rows at the given indexes
|
|
95
|
+
*
|
|
96
|
+
* @param rows - The indexes of the rows to delete
|
|
97
|
+
*/
|
|
98
|
+
deleteRows(rows: number[]): Promise<void>;
|
|
99
|
+
/**
|
|
100
|
+
* Checks if the table can be added
|
|
101
|
+
*
|
|
102
|
+
* @returns `true` if the table can be added, `false` otherwise
|
|
103
|
+
*/
|
|
104
|
+
canAdd(): boolean;
|
|
105
|
+
/**
|
|
106
|
+
* Checks if the table is currently in adding mode
|
|
107
|
+
*
|
|
108
|
+
* @returns `true` if the table is in adding mode, `false` otherwise
|
|
109
|
+
*/
|
|
110
|
+
isAdding(): boolean;
|
|
87
111
|
}
|
|
88
112
|
export { TableApi };
|
|
89
113
|
//# sourceMappingURL=table-api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-api.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/logic/table-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAA;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"table-api.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/logic/table-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAA;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAGlE,cAAM,QAAQ,CAAC,KAAK,CAAE,YAAW,mBAAmB,CAAC,KAAK,CAAC;IAIvD,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAL3B,SAAgB,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBAG/B,QAAQ,EAAE,SAAS,CAAC,gBAAgB,CAAC,EACrC,SAAS,EAAE,SAAS,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,EACjD,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAKzD,UAAU,IAAI,oBAAoB,CAAC,KAAK,CAAC;IAIzC,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC;IAI9B,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC;IAUnE;;;;OAIG;IACH,YAAY,IAAI,gBAAgB,GAAG,IAAI;IAIvC;;;;OAIG;IACH,iBAAiB,IAAI,MAAM;IAY3B;;;;;;OAMG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAIjD;;;;OAIG;IACH,SAAS;IAIT;;;;OAIG;IACH,UAAU;IAIV;;;;;;OAMG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAQzC;;;;;OAKG;IACH,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAsB7C;;;;OAIG;IACG,gBAAgB,CAAC,IAAI,UAAO;IA6ClC;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI;IAa7D;;;;;;;;;;OAUG;IACH,kBAAkB,IAAI,WAAW,GAAG,IAAI;IAKxC;;;;OAIG;IACH,SAAS,IAAI,OAAO;IAIpB;;;;OAIG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAqB/C;;;;OAIG;IACH,MAAM,IAAI,OAAO;IAIjB;;;;OAIG;IACH,QAAQ,IAAI,OAAO;CAKpB;AAED,OAAO,EAAE,QAAQ,EAAE,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { getNextSelectedCell } from '../utils.js';
|
|
2
2
|
import { SelectionManager } from './selection-manager.js';
|
|
3
|
+
import { confirm } from '../../confirm/index.js';
|
|
3
4
|
class TableApi {
|
|
4
5
|
tableRef;
|
|
5
6
|
configRef;
|
|
@@ -134,6 +135,10 @@ class TableApi {
|
|
|
134
135
|
}
|
|
135
136
|
const formData = formRef.current?.getValues();
|
|
136
137
|
const value = formData?.[columnDef.field];
|
|
138
|
+
if (selectedCell.row === this._getState().data.length) {
|
|
139
|
+
await this._getConfig().onAdd?.({ [columnDef.field]: value });
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
137
142
|
// TODO: save only if the value changed
|
|
138
143
|
columnDef.onSave?.(value, this._createCellContext(selectedCell.row, selectedCell.column));
|
|
139
144
|
}
|
|
@@ -181,6 +186,57 @@ class TableApi {
|
|
|
181
186
|
getCurrentSortInfo() {
|
|
182
187
|
return this._getState().sortState;
|
|
183
188
|
}
|
|
189
|
+
// deletion
|
|
190
|
+
/**
|
|
191
|
+
* Checks if the table can be deleted
|
|
192
|
+
*
|
|
193
|
+
* @returns `true` if the table can be deleted, `false` otherwise
|
|
194
|
+
*/
|
|
195
|
+
canDelete() {
|
|
196
|
+
return typeof this._getConfig().onDelete === 'function';
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Deletes the rows at the given indexes
|
|
200
|
+
*
|
|
201
|
+
* @param rows - The indexes of the rows to delete
|
|
202
|
+
*/
|
|
203
|
+
async deleteRows(rows) {
|
|
204
|
+
if (!this.canDelete())
|
|
205
|
+
return;
|
|
206
|
+
const rowsData = rows.map((row) => this._getState().data[row]);
|
|
207
|
+
const count = rows.length;
|
|
208
|
+
const confirmed = await confirm({
|
|
209
|
+
title: 'Delete entries',
|
|
210
|
+
description: `Are you sure you want to delete ${count} selected ${count === 1 ? 'entry' : 'entries'}?`,
|
|
211
|
+
confirmLabel: 'Continue',
|
|
212
|
+
confirmVariant: 'default',
|
|
213
|
+
cancelLabel: 'Cancel',
|
|
214
|
+
cancelVariant: 'secondary',
|
|
215
|
+
});
|
|
216
|
+
if (confirmed) {
|
|
217
|
+
await this._getConfig().onDelete?.(rowsData);
|
|
218
|
+
this.selection.clear();
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
// insertion
|
|
222
|
+
/**
|
|
223
|
+
* Checks if the table can be added
|
|
224
|
+
*
|
|
225
|
+
* @returns `true` if the table can be added, `false` otherwise
|
|
226
|
+
*/
|
|
227
|
+
canAdd() {
|
|
228
|
+
return typeof this._getConfig().onAdd === 'function';
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Checks if the table is currently in adding mode
|
|
232
|
+
*
|
|
233
|
+
* @returns `true` if the table is in adding mode, `false` otherwise
|
|
234
|
+
*/
|
|
235
|
+
isAdding() {
|
|
236
|
+
const editingRow = this._getState().selectedCellIndex?.row;
|
|
237
|
+
const rowCount = this._getState().data.length;
|
|
238
|
+
return this.isEditing() && editingRow === rowCount;
|
|
239
|
+
}
|
|
184
240
|
}
|
|
185
241
|
export { TableApi };
|
|
186
242
|
//# sourceMappingURL=table-api.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-api.js","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/logic/table-api.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"table-api.js","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/logic/table-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@ export interface TableSelectionManager {
|
|
|
14
14
|
selectAllRows(): void;
|
|
15
15
|
toggleSelectAll(): void;
|
|
16
16
|
selectRange(from: number, to: number): void;
|
|
17
|
+
getSelectedRowIndexes(): number[];
|
|
17
18
|
selectCell(rowIndex: number, columnIndex: number): void;
|
|
18
19
|
clearCellSelection(): void;
|
|
19
20
|
clear(): void;
|
|
@@ -28,6 +29,10 @@ export interface TableApiBase {
|
|
|
28
29
|
isEditingCell(row: number, column: number): boolean;
|
|
29
30
|
enterCellEditMode(row: number, column: number): void;
|
|
30
31
|
exitCellEditMode(save?: boolean): Promise<void>;
|
|
32
|
+
canDelete(): boolean;
|
|
33
|
+
deleteRows(rows: number[]): Promise<void>;
|
|
34
|
+
canAdd(): boolean;
|
|
35
|
+
isAdding(): boolean;
|
|
31
36
|
sortRows(columnIndex: number, direction: SortDirection | null): void;
|
|
32
37
|
getCurrentSortInfo(): SortingInfo | null;
|
|
33
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/logic/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAA;AAElF,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,aAAa,CAAA;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,aAAa,IAAI,OAAO,CAAA;IACxB,cAAc,IAAI,OAAO,CAAA;IACzB,iBAAiB,IAAI,OAAO,CAAA;IAE5B,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/C,aAAa,IAAI,IAAI,CAAA;IACrB,eAAe,IAAI,IAAI,CAAA;IACvB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/logic/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAA;AAElF,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,aAAa,CAAA;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,aAAa,IAAI,OAAO,CAAA;IACxB,cAAc,IAAI,OAAO,CAAA;IACzB,iBAAiB,IAAI,OAAO,CAAA;IAE5B,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/C,aAAa,IAAI,IAAI,CAAA;IACrB,eAAe,IAAI,IAAI,CAAA;IACvB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3C,qBAAqB,IAAI,MAAM,EAAE,CAAA;IAEjC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAEvD,kBAAkB,IAAI,IAAI,CAAA;IAC1B,KAAK,IAAI,IAAI,CAAA;CACd;AAED,MAAM,WAAW,YAAY;IAE3B,SAAS,EAAE,qBAAqB,CAAA;IAGhC,YAAY,IAAI,gBAAgB,GAAG,IAAI,CAAA;IACvC,iBAAiB,IAAI,MAAM,CAAA;IAG3B,UAAU,IAAI,OAAO,CAAA;IACrB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAA;IACjD,SAAS,IAAI,OAAO,CAAA;IACpB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAA;IACnD,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACpD,gBAAgB,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAG/C,SAAS,IAAI,OAAO,CAAA;IACpB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAGzC,MAAM,IAAI,OAAO,CAAA;IACjB,QAAQ,IAAI,OAAO,CAAA;IAGnB,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI,CAAA;IACpE,kBAAkB,IAAI,WAAW,GAAG,IAAI,CAAA;CACzC;AAED,MAAM,WAAW,mBAAmB,CAAC,KAAK,CAAE,SAAQ,YAAY;IAC9D,UAAU,IAAI,oBAAoB,CAAC,KAAK,CAAC,CAAA;IACzC,SAAS,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;IAC9B,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;CACpE"}
|
|
@@ -6,6 +6,9 @@ import type { DataType, ObjectSetTableConfig } from './types.js';
|
|
|
6
6
|
* @param data The data to display in the table.
|
|
7
7
|
* @param allowRowSelection Whether to allow row selection.
|
|
8
8
|
* @param showRowNumbers Whether to show row numbers.
|
|
9
|
+
* @param onAdd Function called when a new row is added. Enables insertion row when provided.
|
|
10
|
+
* @param onDelete Function called when rows are deleted. Enables deletion functionality when provided.
|
|
11
|
+
* @param apiRef Reference to the table API for programmatic control.
|
|
9
12
|
*/
|
|
10
13
|
declare const ObjectSetTable: <T extends DataType = DataType>(config: ObjectSetTableConfig<T>) => import("react/jsx-runtime").JSX.Element;
|
|
11
14
|
export { ObjectSetTable };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object-set-table.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/object-set-table/object-set-table.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAc,QAAQ,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAM5E
|
|
1
|
+
{"version":3,"file":"object-set-table.d.ts","sourceRoot":"","sources":["../../../../../src/ui/components/object-set-table/object-set-table.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAc,QAAQ,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAM5E;;;;;;;;;;GAUG;AACH,QAAA,MAAM,cAAc,GAAI,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,QAAQ,oBAAoB,CAAC,CAAC,CAAC,4CA0DrF,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
|
|
@@ -18,6 +18,9 @@ import { getCellEditorFn } from './subcomponents/default-cell-editors/get-cell-e
|
|
|
18
18
|
* @param data The data to display in the table.
|
|
19
19
|
* @param allowRowSelection Whether to allow row selection.
|
|
20
20
|
* @param showRowNumbers Whether to show row numbers.
|
|
21
|
+
* @param onAdd Function called when a new row is added. Enables insertion row when provided.
|
|
22
|
+
* @param onDelete Function called when rows are deleted. Enables deletion functionality when provided.
|
|
23
|
+
* @param apiRef Reference to the table API for programmatic control.
|
|
21
24
|
*/
|
|
22
25
|
const ObjectSetTable = (config) => {
|
|
23
26
|
/**
|
|
@@ -39,13 +42,17 @@ const ObjectSetTable = (config) => {
|
|
|
39
42
|
// TODO: move the default onSave to a utility function
|
|
40
43
|
onSave: column.onSave ??
|
|
41
44
|
((value, context) => {
|
|
45
|
+
if (import.meta.env.DEV) {
|
|
46
|
+
// This is a warning that is only shown in development mode for better DX
|
|
47
|
+
// eslint-disable-next-line no-console
|
|
48
|
+
console.warn(`onSave is not implemented for column %c${column.field}`, 'font-weight: bold');
|
|
49
|
+
}
|
|
42
50
|
config.data[context.rowIndex][context.column.field] = value;
|
|
43
51
|
return true;
|
|
44
52
|
}),
|
|
45
53
|
renderCellEditor: column.renderCellEditor ?? getCellEditorFn(column.type),
|
|
46
54
|
// sorting
|
|
47
55
|
sortable: column.sortable ?? false,
|
|
48
|
-
defaultSortDirection: column.defaultSortDirection ?? 'asc',
|
|
49
56
|
rowComparator: column.rowComparator ?? defaultSortFns(column.type ?? defaultColumnType),
|
|
50
57
|
})),
|
|
51
58
|
width: config.width ?? 'auto',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object-set-table.js","sourceRoot":"","sources":["../../../../../src/ui/components/object-set-table/object-set-table.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,yDAAyD,CAAA;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6DAA6D,CAAA;AACnG,OAAO,EAAE,kBAAkB,EAAE,MAAM,0DAA0D,CAAA;AAC7F,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,kDAAkD,CAAA;AAEhF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAA;AAC7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,qEAAqE,CAAA;AAC3G,OAAO,EAAE,cAAc,EAAE,MAAM,0DAA0D,CAAA;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,4DAA4D,CAAA;AAE5F
|
|
1
|
+
{"version":3,"file":"object-set-table.js","sourceRoot":"","sources":["../../../../../src/ui/components/object-set-table/object-set-table.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/subcomponents/body.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAI3C,QAAA,MAAM,SAAS,GAAI,CAAC,SAAS,QAAQ,
|
|
1
|
+
{"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/subcomponents/body.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAI3C,QAAA,MAAM,SAAS,GAAI,CAAC,SAAS,QAAQ,8CAmCpC,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,CAAA"}
|
|
@@ -3,13 +3,19 @@ import { useGlobalTableKeyEvents } from '../hooks/useGlobalTableKeyEvents.js';
|
|
|
3
3
|
import { useInternalTableState } from './table-provider/table-provider.js';
|
|
4
4
|
import { RenderRow } from './rows/render-row.js';
|
|
5
5
|
const TableBody = () => {
|
|
6
|
-
const { config,
|
|
6
|
+
const { config, api } = useInternalTableState();
|
|
7
7
|
// add global key events to the table
|
|
8
8
|
useGlobalTableKeyEvents();
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
const canRenderInsertRow = api.canAdd();
|
|
10
|
+
// if can insert rows and we need to add emprty rows, we need to substract 1 because the insert row will occupy one row
|
|
11
|
+
const shouldRenderEmptyRows = canRenderInsertRow
|
|
12
|
+
? config.data.length < (config.minRowCount ?? 0) - 1
|
|
13
|
+
: config.data.length < (config.minRowCount ?? 0);
|
|
14
|
+
const emptyRowsCount = shouldRenderEmptyRows
|
|
15
|
+
? (config.minRowCount ?? 0) - config.data.length - (canRenderInsertRow ? 1 : 0)
|
|
16
|
+
: 0;
|
|
17
|
+
return (_jsxs("tbody", { className: "text-sm leading-5 text-gray-900", children: [config.data.map((data, index) => (_jsx(RenderRow, { item: data, rowIndex: index }, JSON.stringify({ data, _reactKeyIndex: index })))), canRenderInsertRow && _jsx(RenderRow, { item: {}, rowIndex: config.data.length }), emptyRowsCount > 0 &&
|
|
18
|
+
Array.from({ length: emptyRowsCount }).map((_, index) => (_jsx(RenderRow, { item: {}, rowIndex: index + config.data.length + (canRenderInsertRow ? 1 : 0), emptyRow: true }, index)))] }));
|
|
13
19
|
};
|
|
14
20
|
export { TableBody };
|
|
15
21
|
//# sourceMappingURL=body.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"body.js","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/subcomponents/body.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAE7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAEhD,MAAM,SAAS,GAAG,GAAuB,EAAE;IACzC,MAAM,
|
|
1
|
+
{"version":3,"file":"body.js","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/subcomponents/body.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAE7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAEhD,MAAM,SAAS,GAAG,GAAuB,EAAE;IACzC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,qBAAqB,EAAK,CAAA;IAElD,qCAAqC;IACrC,uBAAuB,EAAE,CAAA;IAEzB,MAAM,kBAAkB,GAAG,GAAG,CAAC,MAAM,EAAE,CAAA;IACvC,uHAAuH;IACvH,MAAM,qBAAqB,GAAG,kBAAkB;QAC9C,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC;QACpD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC,CAAA;IAElD,MAAM,cAAc,GAAG,qBAAqB;QAC1C,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/E,CAAC,CAAC,CAAC,CAAA;IAEL,OAAO,CACL,iBAAO,SAAS,EAAC,iCAAiC,aAC/C,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAChC,KAAC,SAAS,IAAuD,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,IAA5E,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAiC,CACjG,CAAC,EAED,kBAAkB,IAAI,KAAC,SAAS,IAAC,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,GAAI,EAE3E,cAAc,GAAG,CAAC;gBACjB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CACvD,KAAC,SAAS,IAER,IAAI,EAAE,EAAE,EACR,QAAQ,EAAE,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACnE,QAAQ,UAHH,KAAK,CAIV,CACH,CAAC,IACE,CACT,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,CAAA"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
interface InformationCellProps {
|
|
2
|
+
rowIndex: number;
|
|
3
|
+
emptyRow?: boolean;
|
|
4
|
+
}
|
|
5
|
+
declare const InformationCell: ({ rowIndex, emptyRow }: InformationCellProps) => import("react/jsx-runtime").JSX.Element;
|
|
2
6
|
export { InformationCell };
|
|
3
7
|
//# sourceMappingURL=information-cell.d.ts.map
|
package/dist/src/ui/components/object-set-table/subcomponents/cells/information-cell.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"information-cell.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/cells/information-cell.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"information-cell.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/cells/information-cell.tsx"],"names":[],"mappings":"AAIA,UAAU,oBAAoB;IAC5B,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,QAAA,MAAM,eAAe,GAAI,wBAAwB,oBAAoB,4CAsBpE,CAAA;AAED,OAAO,EAAE,eAAe,EAAE,CAAA"}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Icon } from '../../../icon/icon.js';
|
|
3
|
+
import { useInternalTableState } from '../table-provider/table-provider.js';
|
|
2
4
|
import { TableCellBasic } from './basic-cell.js';
|
|
3
|
-
const InformationCell = () => {
|
|
4
|
-
|
|
5
|
+
const InformationCell = ({ rowIndex, emptyRow }) => {
|
|
6
|
+
const { state: { selectedRowIndexes }, api, } = useInternalTableState();
|
|
7
|
+
const canDelete = api.canDelete();
|
|
8
|
+
return (_jsx(TableCellBasic, { className: "min-w-[40px] max-w-[40px]", children: !emptyRow && canDelete && selectedRowIndexes.includes(rowIndex) && (_jsx("div", { className: "flex h-full w-full items-center justify-center cursor-pointer text-red-900", onClick: () => {
|
|
9
|
+
void api.deleteRows([rowIndex]);
|
|
10
|
+
}, children: _jsx(Icon, { name: "Trash", size: 16 }) })) }));
|
|
5
11
|
};
|
|
6
12
|
export { InformationCell };
|
|
7
13
|
//# sourceMappingURL=information-cell.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"information-cell.js","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/cells/information-cell.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"information-cell.js","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/cells/information-cell.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAA;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAOhD,MAAM,eAAe,GAAG,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAwB,EAAE,EAAE;IACvE,MAAM,EACJ,KAAK,EAAE,EAAE,kBAAkB,EAAE,EAC7B,GAAG,GACJ,GAAG,qBAAqB,EAAE,CAAA;IAE3B,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,EAAE,CAAA;IAEjC,OAAO,CACL,KAAC,cAAc,IAAC,SAAS,EAAC,2BAA2B,YAClD,CAAC,QAAQ,IAAI,SAAS,IAAI,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAClE,cACE,SAAS,EAAC,4EAA4E,EACtF,OAAO,EAAE,GAAG,EAAE;gBACZ,KAAK,GAAG,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;YACjC,CAAC,YAED,KAAC,IAAI,IAAC,IAAI,EAAC,OAAO,EAAC,IAAI,EAAE,EAAE,GAAI,GAC3B,CACP,GACc,CAClB,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,eAAe,EAAE,CAAA"}
|
package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/empty-cell.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ColumnDef, DataType } from '../../../types.js';
|
|
2
|
+
interface EmptyCellProps<T> {
|
|
3
|
+
column: ColumnDef<T>;
|
|
4
|
+
isSelected: boolean;
|
|
5
|
+
onClick: (event: React.MouseEvent<HTMLTableCellElement>) => void;
|
|
6
|
+
}
|
|
7
|
+
declare const EmptyCell: <T extends DataType>({ column, isSelected, onClick }: EmptyCellProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export { EmptyCell };
|
|
9
|
+
//# sourceMappingURL=empty-cell.d.ts.map
|
package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/empty-cell.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"empty-cell.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/components/object-set-table/subcomponents/cells/render-cell/empty-cell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAG5D,UAAU,cAAc,CAAC,CAAC;IACxB,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;IACpB,UAAU,EAAE,OAAO,CAAA;IACnB,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAA;CACjE;AAED,QAAA,MAAM,SAAS,GAAI,CAAC,SAAS,QAAQ,EAAE,iCAAiC,cAAc,CAAC,CAAC,CAAC,4CAExF,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { DefaultTableCell } from '../default-cell.js';
|
|
3
|
+
const EmptyCell = ({ column, isSelected, onClick }) => {
|
|
4
|
+
return _jsx(DefaultTableCell, { onClick: onClick, isSelected: isSelected, isEditable: false }, column.field);
|
|
5
|
+
};
|
|
6
|
+
export { EmptyCell };
|
|
7
|
+
//# sourceMappingURL=empty-cell.js.map
|
package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/empty-cell.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"empty-cell.js","sourceRoot":"","sources":["../../../../../../../../src/ui/components/object-set-table/subcomponents/cells/render-cell/empty-cell.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAQrD,MAAM,SAAS,GAAG,CAAqB,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAqB,EAAE,EAAE;IAC3F,OAAO,KAAC,gBAAgB,IAAoB,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,IAAzE,MAAM,CAAC,KAAK,CAAiE,CAAA;AAC7G,CAAC,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,CAAA"}
|
package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/render-cell.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-cell.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/components/object-set-table/subcomponents/cells/render-cell/render-cell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,SAAS,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAOzE,UAAU,eAAe,CAAC,CAAC,SAAS,QAAQ;IAC1C,OAAO,EAAE,CAAC,CAAA;IACV,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,QAAA,MAAM,UAAU,GAAI,CAAC,SAAS,QAAQ,EAAE,8DAMrC,eAAe,CAAC,CAAC,CAAC,4CA4CpB,CAAA;AAED,OAAO,EAAE,UAAU,EAAE,CAAA"}
|
package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/render-cell.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { DefaultTableCell } from '../default-cell.js';
|
|
3
|
+
import { Form } from '../../../../../../scalars/components/form/form.js';
|
|
4
|
+
import { cn } from '../../../../../../scalars/lib/utils.js';
|
|
5
|
+
import { EmptyCell } from './empty-cell.js';
|
|
6
|
+
import { useCellLogic } from './use-cell-logic.js';
|
|
7
|
+
const RenderCell = ({ rowItem, column, rowIndex, columnIndex, renderEmptyCell = false, }) => {
|
|
8
|
+
const { config, isThisCellSelected, isCellEditMode, handleCellClick, formRef } = useCellLogic({
|
|
9
|
+
column,
|
|
10
|
+
rowIndex,
|
|
11
|
+
columnIndex,
|
|
12
|
+
renderEmptyCell,
|
|
13
|
+
});
|
|
14
|
+
/**
|
|
15
|
+
* If the cell is empty, we don't want to render anything
|
|
16
|
+
* so we're going to return a default table cell with no content
|
|
17
|
+
*/
|
|
18
|
+
if (renderEmptyCell) {
|
|
19
|
+
return _jsx(EmptyCell, { column: column, isSelected: isThisCellSelected, onClick: handleCellClick });
|
|
20
|
+
}
|
|
21
|
+
const cellContext = {
|
|
22
|
+
row: rowItem,
|
|
23
|
+
column,
|
|
24
|
+
rowIndex,
|
|
25
|
+
columnIndex,
|
|
26
|
+
tableConfig: config,
|
|
27
|
+
};
|
|
28
|
+
// get and format the cell value
|
|
29
|
+
const cellValue = column.valueFormatter?.(column.valueGetter?.(rowItem, cellContext), cellContext);
|
|
30
|
+
const isThisCellEditMode = isCellEditMode && isThisCellSelected;
|
|
31
|
+
return (_jsx(DefaultTableCell, { onClick: handleCellClick, isSelected: isThisCellSelected, isEditable: column.editable ?? false, children: _jsxs(Form, { ref: formRef, onSubmit: () => undefined, submitChangesOnly: true, children: [_jsx("div", { className: cn({ hidden: !isThisCellEditMode }), children: column.renderCellEditor?.(cellValue, () => null, cellContext) }), _jsx("div", { className: cn({ hidden: isThisCellEditMode }), children: column.renderCell?.(cellValue, cellContext) })] }) }, column.field));
|
|
32
|
+
};
|
|
33
|
+
export { RenderCell };
|
|
34
|
+
//# sourceMappingURL=render-cell.js.map
|
package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/render-cell.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-cell.js","sourceRoot":"","sources":["../../../../../../../../src/ui/components/object-set-table/subcomponents/cells/render-cell/render-cell.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,mDAAmD,CAAA;AACxE,OAAO,EAAE,EAAE,EAAE,MAAM,wCAAwC,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAUlD,MAAM,UAAU,GAAG,CAAqB,EACtC,OAAO,EACP,MAAM,EACN,QAAQ,EACR,WAAW,EACX,eAAe,GAAG,KAAK,GACJ,EAAE,EAAE;IACvB,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,cAAc,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;QAC5F,MAAM;QACN,QAAQ;QACR,WAAW;QACX,eAAe;KAChB,CAAC,CAAA;IAEF;;;OAGG;IACH,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,KAAC,SAAS,IAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,EAAE,OAAO,EAAE,eAAe,GAAI,CAAA;IAChG,CAAC;IAED,MAAM,WAAW,GAAmB;QAClC,GAAG,EAAE,OAAO;QACZ,MAAM;QACN,QAAQ;QACR,WAAW;QACX,WAAW,EAAE,MAAM;KACpB,CAAA;IAED,gCAAgC;IAChC,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,WAAW,CAAC,CAAA;IAElG,MAAM,kBAAkB,GAAG,cAAc,IAAI,kBAAkB,CAAA;IAE/D,OAAO,CACL,KAAC,gBAAgB,IAEf,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,kBAAkB,EAC9B,UAAU,EAAE,MAAM,CAAC,QAAQ,IAAI,KAAK,YAEpC,MAAC,IAAI,IAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,iBAAiB,mBAC9D,cAAK,SAAS,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,kBAAkB,EAAE,CAAC,YAChD,MAAM,CAAC,gBAAgB,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC,GAC1D,EACN,cAAK,SAAS,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC,YAAG,MAAM,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAAO,IAClG,IAVF,MAAM,CAAC,KAAK,CAWA,CACpB,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,UAAU,EAAE,CAAA"}
|
package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/use-cell-logic.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ColumnDef, DataType } from '../../../types.js';
|
|
2
|
+
interface UseCellLogicProps<T extends DataType> {
|
|
3
|
+
column: ColumnDef<T>;
|
|
4
|
+
rowIndex: number;
|
|
5
|
+
columnIndex: number;
|
|
6
|
+
renderEmptyCell?: boolean;
|
|
7
|
+
}
|
|
8
|
+
declare const useCellLogic: <T extends DataType>({ column, rowIndex, columnIndex, renderEmptyCell, }: UseCellLogicProps<T>) => {
|
|
9
|
+
config: import("../../../types.js").ObjectSetTableConfig<T>;
|
|
10
|
+
isThisCellSelected: boolean;
|
|
11
|
+
isCellEditMode: boolean;
|
|
12
|
+
handleCellClick: (event: React.MouseEvent<HTMLTableCellElement>) => void;
|
|
13
|
+
formRef: import("react").RefObject<import("react-hook-form").UseFormReturn> | null;
|
|
14
|
+
};
|
|
15
|
+
export { useCellLogic };
|
|
16
|
+
//# sourceMappingURL=use-cell-logic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-cell-logic.d.ts","sourceRoot":"","sources":["../../../../../../../../src/ui/components/object-set-table/subcomponents/cells/render-cell/use-cell-logic.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAI5D,UAAU,iBAAiB,CAAC,CAAC,SAAS,QAAQ;IAC5C,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AACD,QAAA,MAAM,YAAY,GAAI,CAAC,SAAS,QAAQ,EAAE,qDAKvC,iBAAiB,CAAC,CAAC,CAAC;;;;6BAcK,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC;;CAkCjE,CAAA;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
|
package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell/use-cell-logic.js
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { useMemo } from 'react';
|
|
2
|
+
import { isCellEqual } from '../../../utils.js';
|
|
3
|
+
import { useInternalTableState } from '../../table-provider/table-provider.js';
|
|
4
|
+
const useCellLogic = ({ column, rowIndex, columnIndex, renderEmptyCell = false, }) => {
|
|
5
|
+
const { config, state: { selectedCellIndex, isCellEditMode }, api, } = useInternalTableState();
|
|
6
|
+
const currentCellIndex = {
|
|
7
|
+
row: rowIndex,
|
|
8
|
+
column: columnIndex,
|
|
9
|
+
};
|
|
10
|
+
const isThisCellSelected = isCellEqual(selectedCellIndex, currentCellIndex);
|
|
11
|
+
const handleCellClick = useMemo(() => {
|
|
12
|
+
const handler = (event) => {
|
|
13
|
+
// if the cell is being edited, ignore clicking on it
|
|
14
|
+
if (api.isEditing() && selectedCellIndex?.row === rowIndex && selectedCellIndex.column === columnIndex) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
// if shift, cmd or ctrl is pressed, the user is probably trying to select rows
|
|
18
|
+
if (!event.ctrlKey && !event.metaKey && !event.shiftKey) {
|
|
19
|
+
// if a cell is being edited but the cell being clicked is not the same
|
|
20
|
+
// we need to save it before exiting edit mode and selecting a new cell
|
|
21
|
+
if (api.isEditing()) {
|
|
22
|
+
void api.exitCellEditMode(true);
|
|
23
|
+
}
|
|
24
|
+
if (event.detail === 2 && column.editable && !renderEmptyCell) {
|
|
25
|
+
api.enterCellEditMode(rowIndex, columnIndex);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
api.selection.selectCell(rowIndex, columnIndex);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
return handler;
|
|
33
|
+
}, [api, selectedCellIndex, rowIndex, columnIndex, column.editable, renderEmptyCell]);
|
|
34
|
+
const formRef = renderEmptyCell ? null : api._getState().dataFormReferences[rowIndex]?.[columnIndex];
|
|
35
|
+
return {
|
|
36
|
+
config,
|
|
37
|
+
isThisCellSelected,
|
|
38
|
+
isCellEditMode,
|
|
39
|
+
handleCellClick,
|
|
40
|
+
formRef,
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
export { useCellLogic };
|
|
44
|
+
//# sourceMappingURL=use-cell-logic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-cell-logic.js","sourceRoot":"","sources":["../../../../../../../../src/ui/components/object-set-table/subcomponents/cells/render-cell/use-cell-logic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAE/B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAA;AAQ9E,MAAM,YAAY,GAAG,CAAqB,EACxC,MAAM,EACN,QAAQ,EACR,WAAW,EACX,eAAe,GAAG,KAAK,GACF,EAAE,EAAE;IACzB,MAAM,EACJ,MAAM,EACN,KAAK,EAAE,EAAE,iBAAiB,EAAE,cAAc,EAAE,EAC5C,GAAG,GACJ,GAAG,qBAAqB,EAAK,CAAA;IAE9B,MAAM,gBAAgB,GAAG;QACvB,GAAG,EAAE,QAAQ;QACb,MAAM,EAAE,WAAW;KACpB,CAAA;IACD,MAAM,kBAAkB,GAAG,WAAW,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAA;IAE3E,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,MAAM,OAAO,GAAG,CAAC,KAA6C,EAAE,EAAE;YAChE,qDAAqD;YACrD,IAAI,GAAG,CAAC,SAAS,EAAE,IAAI,iBAAiB,EAAE,GAAG,KAAK,QAAQ,IAAI,iBAAiB,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBACvG,OAAM;YACR,CAAC;YAED,+EAA+E;YAC/E,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACxD,uEAAuE;gBACvE,uEAAuE;gBACvE,IAAI,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;oBACpB,KAAK,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;gBACjC,CAAC;gBAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,eAAe,EAAE,CAAC;oBAC9D,GAAG,CAAC,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;gBAC9C,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;gBACjD,CAAC;YACH,CAAC;QACH,CAAC,CAAA;QAED,OAAO,OAAO,CAAA;IAChB,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAA;IAErF,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,CAAC,CAAA;IAEpG,OAAO;QACL,MAAM;QACN,kBAAkB;QAClB,cAAc;QACd,eAAe;QACf,OAAO;KACR,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
|
|
@@ -3,7 +3,7 @@ import { useCallback } from 'react';
|
|
|
3
3
|
import { RowNumberCell } from '../cells/row-number-cell.js';
|
|
4
4
|
import { useInternalTableState } from '../table-provider/table-provider.js';
|
|
5
5
|
import { TableRow } from './table-row.js';
|
|
6
|
-
import { RenderCell } from '../cells/render-cell.js';
|
|
6
|
+
import { RenderCell } from '../cells/render-cell/render-cell.js';
|
|
7
7
|
import { InformationCell } from '../cells/information-cell.js';
|
|
8
8
|
const RenderRow = ({ item, rowIndex, emptyRow = false }) => {
|
|
9
9
|
const { config, state: { selectedRowIndexes, selectedCellIndex }, api, } = useInternalTableState();
|
|
@@ -56,7 +56,7 @@ const RenderRow = ({ item, rowIndex, emptyRow = false }) => {
|
|
|
56
56
|
}, []);
|
|
57
57
|
return (_jsxs(TableRow, { index: rowIndex, onClick: createAddSelectedRowHandler(rowIndex), onMouseDown: handleMouseDown, children: [_jsx(RowNumberCell, { index: rowIndex + 1, handleSelectRowOnClick: createSelectRowOnClickHandler(rowIndex), selected: selectedRowIndexes.includes(rowIndex) || selectedCellIndex?.row === rowIndex }), config.columns.map((column, columnIndex) => {
|
|
58
58
|
return (_jsx(RenderCell, { rowItem: item, column: column, rowIndex: rowIndex, columnIndex: columnIndex, renderEmptyCell: emptyRow }, column.field));
|
|
59
|
-
}), api.isEditable() && _jsx(InformationCell, {})] }));
|
|
59
|
+
}), (api.isEditable() || api.canDelete()) && _jsx(InformationCell, { rowIndex: rowIndex, emptyRow: emptyRow })] }));
|
|
60
60
|
};
|
|
61
61
|
export { RenderRow };
|
|
62
62
|
//# sourceMappingURL=render-row.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render-row.js","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/rows/render-row.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAA;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"render-row.js","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/rows/render-row.tsx"],"names":[],"mappings":"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"}
|