@powerhousedao/document-engineering 1.11.0 → 1.12.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.
Files changed (129) hide show
  1. package/dist/src/scalars/components/amount-field/amount-field-validations.d.ts +1 -1
  2. package/dist/src/scalars/components/amount-field/amount-field-validations.d.ts.map +1 -1
  3. package/dist/src/scalars/components/amount-field/amount-field-validations.js +1 -12
  4. package/dist/src/scalars/components/amount-field/amount-field-validations.js.map +1 -1
  5. package/dist/src/ui/components/data-entry/amount-input/amount-input.d.ts.map +1 -1
  6. package/dist/src/ui/components/data-entry/amount-input/amount-input.js +3 -5
  7. package/dist/src/ui/components/data-entry/amount-input/amount-input.js.map +1 -1
  8. package/dist/src/ui/components/data-entry/amount-input/utils.js +1 -1
  9. package/dist/src/ui/components/data-entry/amount-input/utils.js.map +1 -1
  10. package/dist/src/ui/components/data-entry/currency-code-picker/currency-code-picker.d.ts.map +1 -1
  11. package/dist/src/ui/components/data-entry/currency-code-picker/currency-code-picker.js +2 -2
  12. package/dist/src/ui/components/data-entry/currency-code-picker/currency-code-picker.js.map +1 -1
  13. package/dist/src/ui/components/data-entry/input/subcomponent/text-diff.d.ts.map +1 -1
  14. package/dist/src/ui/components/data-entry/input/subcomponent/text-diff.js +56 -21
  15. package/dist/src/ui/components/data-entry/input/subcomponent/text-diff.js.map +1 -1
  16. package/dist/src/ui/components/data-entry/number-input/use-number-input.js +2 -1
  17. package/dist/src/ui/components/data-entry/number-input/use-number-input.js.map +1 -1
  18. package/dist/src/ui/components/data-entry/select/command-list-item.d.ts +1 -1
  19. package/dist/src/ui/components/data-entry/select/command-list-item.d.ts.map +1 -1
  20. package/dist/src/ui/components/data-entry/select/command-list-item.js +2 -2
  21. package/dist/src/ui/components/data-entry/select/command-list-item.js.map +1 -1
  22. package/dist/src/ui/components/data-entry/select/content.d.ts +0 -1
  23. package/dist/src/ui/components/data-entry/select/content.d.ts.map +1 -1
  24. package/dist/src/ui/components/data-entry/select/content.js +5 -5
  25. package/dist/src/ui/components/data-entry/select/content.js.map +1 -1
  26. package/dist/src/ui/components/data-entry/select/select.d.ts.map +1 -1
  27. package/dist/src/ui/components/data-entry/select/select.js +3 -3
  28. package/dist/src/ui/components/data-entry/select/select.js.map +1 -1
  29. package/dist/src/ui/components/data-entry/select/selected-content.d.ts +0 -1
  30. package/dist/src/ui/components/data-entry/select/selected-content.d.ts.map +1 -1
  31. package/dist/src/ui/components/data-entry/select/selected-content.js +3 -3
  32. package/dist/src/ui/components/data-entry/select/selected-content.js.map +1 -1
  33. package/dist/src/ui/components/data-entry/select/types.d.ts +4 -4
  34. package/dist/src/ui/components/data-entry/select/types.d.ts.map +1 -1
  35. package/dist/src/ui/components/data-entry/url-input/types.d.ts +2 -4
  36. package/dist/src/ui/components/data-entry/url-input/types.d.ts.map +1 -1
  37. package/dist/src/ui/components/data-entry/url-input/url-input-diff.d.ts +1 -1
  38. package/dist/src/ui/components/data-entry/url-input/url-input-diff.d.ts.map +1 -1
  39. package/dist/src/ui/components/data-entry/url-input/url-input-diff.js +2 -2
  40. package/dist/src/ui/components/data-entry/url-input/url-input-diff.js.map +1 -1
  41. package/dist/src/ui/components/data-entry/url-input/url-input.d.ts.map +1 -1
  42. package/dist/src/ui/components/data-entry/url-input/url-input.js +2 -2
  43. package/dist/src/ui/components/data-entry/url-input/url-input.js.map +1 -1
  44. package/dist/src/ui/components/icon-components/ArrowDownUp.d.ts +7 -0
  45. package/dist/src/ui/components/icon-components/ArrowDownUp.d.ts.map +1 -0
  46. package/dist/src/ui/components/icon-components/ArrowDownUp.js +7 -0
  47. package/dist/src/ui/components/icon-components/ArrowDownUp.js.map +1 -0
  48. package/dist/src/ui/components/icon-components/index.d.ts +1 -1
  49. package/dist/src/ui/components/icon-components/index.d.ts.map +1 -1
  50. package/dist/src/ui/components/icon-components/index.js +3 -0
  51. package/dist/src/ui/components/icon-components/index.js.map +1 -1
  52. package/dist/src/ui/components/object-set-table/examples/api-usage/api-usage.d.ts.map +1 -1
  53. package/dist/src/ui/components/object-set-table/examples/api-usage/api-usage.js +5 -2
  54. package/dist/src/ui/components/object-set-table/examples/api-usage/api-usage.js.map +1 -1
  55. package/dist/src/ui/components/object-set-table/examples/computed-columns/computed-columns.d.ts.map +1 -1
  56. package/dist/src/ui/components/object-set-table/examples/computed-columns/computed-columns.js +1 -0
  57. package/dist/src/ui/components/object-set-table/examples/computed-columns/computed-columns.js.map +1 -1
  58. package/dist/src/ui/components/object-set-table/examples/custom-rendering/custom-rendering.d.ts.map +1 -1
  59. package/dist/src/ui/components/object-set-table/examples/custom-rendering/custom-rendering.js +4 -1
  60. package/dist/src/ui/components/object-set-table/examples/custom-rendering/custom-rendering.js.map +1 -1
  61. package/dist/src/ui/components/object-set-table/index.d.ts +2 -0
  62. package/dist/src/ui/components/object-set-table/index.d.ts.map +1 -1
  63. package/dist/src/ui/components/object-set-table/index.js +2 -0
  64. package/dist/src/ui/components/object-set-table/index.js.map +1 -1
  65. package/dist/src/ui/components/object-set-table/logic/selection-manager.d.ts.map +1 -1
  66. package/dist/src/ui/components/object-set-table/logic/selection-manager.js +2 -0
  67. package/dist/src/ui/components/object-set-table/logic/selection-manager.js.map +1 -1
  68. package/dist/src/ui/components/object-set-table/logic/table-api.d.ts +33 -2
  69. package/dist/src/ui/components/object-set-table/logic/table-api.d.ts.map +1 -1
  70. package/dist/src/ui/components/object-set-table/logic/table-api.js +53 -0
  71. package/dist/src/ui/components/object-set-table/logic/table-api.js.map +1 -1
  72. package/dist/src/ui/components/object-set-table/logic/types.d.ts +9 -1
  73. package/dist/src/ui/components/object-set-table/logic/types.d.ts.map +1 -1
  74. package/dist/src/ui/components/object-set-table/mock-data.js +14 -14
  75. package/dist/src/ui/components/object-set-table/mock-data.js.map +1 -1
  76. package/dist/src/ui/components/object-set-table/object-set-table.d.ts +1 -1
  77. package/dist/src/ui/components/object-set-table/object-set-table.d.ts.map +1 -1
  78. package/dist/src/ui/components/object-set-table/object-set-table.js +12 -5
  79. package/dist/src/ui/components/object-set-table/object-set-table.js.map +1 -1
  80. package/dist/src/ui/components/object-set-table/subcomponents/body.d.ts +2 -6
  81. package/dist/src/ui/components/object-set-table/subcomponents/body.d.ts.map +1 -1
  82. package/dist/src/ui/components/object-set-table/subcomponents/body.js +7 -106
  83. package/dist/src/ui/components/object-set-table/subcomponents/body.js.map +1 -1
  84. package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell.d.ts +11 -0
  85. package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell.d.ts.map +1 -0
  86. package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell.js +62 -0
  87. package/dist/src/ui/components/object-set-table/subcomponents/cells/render-cell.js.map +1 -0
  88. package/dist/src/ui/components/object-set-table/subcomponents/default-cell-renderers/get-render-fn.d.ts +2 -2
  89. package/dist/src/ui/components/object-set-table/subcomponents/default-cell-renderers/get-render-fn.d.ts.map +1 -1
  90. package/dist/src/ui/components/object-set-table/subcomponents/default-cell-renderers/get-render-fn.js.map +1 -1
  91. package/dist/src/ui/components/object-set-table/subcomponents/default-fns/default-column-config.d.ts +2 -2
  92. package/dist/src/ui/components/object-set-table/subcomponents/default-fns/default-column-config.d.ts.map +1 -1
  93. package/dist/src/ui/components/object-set-table/subcomponents/default-fns/default-column-config.js +2 -2
  94. package/dist/src/ui/components/object-set-table/subcomponents/default-fns/default-column-config.js.map +1 -1
  95. package/dist/src/ui/components/object-set-table/subcomponents/default-header-renderers/{default-header.renderer.d.ts → default-header-renderer.d.ts} +1 -1
  96. package/dist/src/ui/components/object-set-table/subcomponents/default-header-renderers/default-header-renderer.d.ts.map +1 -0
  97. package/dist/src/ui/components/object-set-table/subcomponents/default-header-renderers/default-header-renderer.js +36 -0
  98. package/dist/src/ui/components/object-set-table/subcomponents/default-header-renderers/default-header-renderer.js.map +1 -0
  99. package/dist/src/ui/components/object-set-table/subcomponents/default-sort-columns/default-sort-fns.d.ts +3 -0
  100. package/dist/src/ui/components/object-set-table/subcomponents/default-sort-columns/default-sort-fns.d.ts.map +1 -0
  101. package/dist/src/ui/components/object-set-table/subcomponents/default-sort-columns/default-sort-fns.js +17 -0
  102. package/dist/src/ui/components/object-set-table/subcomponents/default-sort-columns/default-sort-fns.js.map +1 -0
  103. package/dist/src/ui/components/object-set-table/subcomponents/header.d.ts.map +1 -1
  104. package/dist/src/ui/components/object-set-table/subcomponents/header.js +32 -17
  105. package/dist/src/ui/components/object-set-table/subcomponents/header.js.map +1 -1
  106. package/dist/src/ui/components/object-set-table/subcomponents/rows/render-row.d.ts +9 -0
  107. package/dist/src/ui/components/object-set-table/subcomponents/rows/render-row.d.ts.map +1 -0
  108. package/dist/src/ui/components/object-set-table/subcomponents/rows/render-row.js +62 -0
  109. package/dist/src/ui/components/object-set-table/subcomponents/rows/render-row.js.map +1 -0
  110. package/dist/src/ui/components/object-set-table/subcomponents/sort-indicator.d.ts +7 -0
  111. package/dist/src/ui/components/object-set-table/subcomponents/sort-indicator.d.ts.map +1 -0
  112. package/dist/src/ui/components/object-set-table/subcomponents/sort-indicator.js +7 -0
  113. package/dist/src/ui/components/object-set-table/subcomponents/sort-indicator.js.map +1 -0
  114. package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-provider.d.ts +1 -1
  115. package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-provider.d.ts.map +1 -1
  116. package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-provider.js +2 -0
  117. package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-provider.js.map +1 -1
  118. package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-reducer.d.ts +19 -1
  119. package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-reducer.d.ts.map +1 -1
  120. package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-reducer.js +49 -6
  121. package/dist/src/ui/components/object-set-table/subcomponents/table-provider/table-reducer.js.map +1 -1
  122. package/dist/src/ui/components/object-set-table/types.d.ts +64 -3
  123. package/dist/src/ui/components/object-set-table/types.d.ts.map +1 -1
  124. package/dist/style.css +252 -25
  125. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  126. package/package.json +1 -1
  127. package/dist/src/ui/components/object-set-table/subcomponents/default-header-renderers/default-header.renderer.d.ts.map +0 -1
  128. package/dist/src/ui/components/object-set-table/subcomponents/default-header-renderers/default-header.renderer.js +0 -16
  129. package/dist/src/ui/components/object-set-table/subcomponents/default-header-renderers/default-header.renderer.js.map +0 -1
@@ -34,6 +34,19 @@ class TableApi {
34
34
  getHTMLTable() {
35
35
  return this.tableRef.current;
36
36
  }
37
+ /**
38
+ * Returns the total number of rows in the table, including the empty rows
39
+ *
40
+ * @returns The total number of rows in the table
41
+ */
42
+ getTotalRowsCount() {
43
+ const state = this._getState();
44
+ const minRowCount = this._getConfig().minRowCount ?? 0;
45
+ if (state.data.length >= minRowCount) {
46
+ return state.data.length;
47
+ }
48
+ return this._getState().data.length + ((this._getConfig().minRowCount ?? 0) - this._getState().data.length);
49
+ }
37
50
  // cell editing
38
51
  /**
39
52
  * Checks if the cell at the given row and column can be edited
@@ -53,6 +66,14 @@ class TableApi {
53
66
  isEditing() {
54
67
  return this._getState().isCellEditMode;
55
68
  }
69
+ /**
70
+ * Checks if at least one column is editable
71
+ *
72
+ * @returns `true` if the table is editable, `false` otherwise
73
+ */
74
+ isEditable() {
75
+ return this._getConfig().columns.some((column) => column.editable);
76
+ }
56
77
  /**
57
78
  * Checks if the table is currently in cell edit mode for the given cell
58
79
  *
@@ -105,6 +126,38 @@ class TableApi {
105
126
  this.selection.selectCell(nextCell.row, nextCell.column);
106
127
  }
107
128
  }
129
+ /**
130
+ * Sorts the rows by the given column index and direction
131
+ *
132
+ * @param columnIndex - The index of the column to sort
133
+ * @param direction - The direction to sort the rows. Null if the sorting should be removed
134
+ */
135
+ sortRows(columnIndex, direction) {
136
+ if (direction === null) {
137
+ this._getState().dispatch?.({
138
+ type: 'SORT_COLUMN',
139
+ payload: { columnIndex, direction: 'asc', tableConfig: this._getConfig() },
140
+ });
141
+ }
142
+ this._getState().dispatch?.({
143
+ type: 'SORT_COLUMN',
144
+ payload: { columnIndex, direction, tableConfig: this._getConfig() },
145
+ });
146
+ }
147
+ /**
148
+ * Returns the sorting information.
149
+ *
150
+ * @returns The sorting information. `null` if no sorting is applied.
151
+ *
152
+ * @example
153
+ * ```tsx
154
+ * const sortingInfo = apiRef.current?.getCurrentSortInfo()
155
+ * console.log(sortingInfo) // { columnIndex: 0, direction: 'asc' }
156
+ * ```
157
+ */
158
+ getCurrentSortInfo() {
159
+ return this._getState().sortState;
160
+ }
108
161
  }
109
162
  export { TableApi };
110
163
  //# 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":"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"}
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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"}
@@ -1,5 +1,9 @@
1
- import type { CellContext, ObjectSetTableConfig } from '../types.js';
1
+ import type { CellContext, ObjectSetTableConfig, SortDirection } from '../types.js';
2
2
  import type { TableState } from '../subcomponents/table-provider/table-reducer.js';
3
+ export interface SortingInfo {
4
+ columnIndex: number;
5
+ direction: SortDirection;
6
+ }
3
7
  export interface TableSelectionManager {
4
8
  canSelectRows(): boolean;
5
9
  canSelectCells(): boolean;
@@ -17,11 +21,15 @@ export interface TableSelectionManager {
17
21
  export interface TableApiBase {
18
22
  selection: TableSelectionManager;
19
23
  getHTMLTable(): HTMLTableElement | null;
24
+ getTotalRowsCount(): number;
25
+ isEditable(): boolean;
20
26
  canEditCell(row: number, column: number): boolean;
21
27
  isEditing(): boolean;
22
28
  isEditingCell(row: number, column: number): boolean;
23
29
  enterCellEditMode(row: number, column: number): void;
24
30
  exitCellEditMode(save?: boolean): void;
31
+ sortRows(columnIndex: number, direction: SortDirection | null): void;
32
+ getCurrentSortInfo(): SortingInfo | null;
25
33
  }
26
34
  export interface PrivateTableApiBase<TData> extends TableApiBase {
27
35
  _getConfig(): ObjectSetTableConfig<TData>;
@@ -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,MAAM,aAAa,CAAA;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAA;AAElF,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;IAE3C,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;IAGvC,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,IAAI,CAAA;CACvC;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"}
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;IAE3C,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,IAAI,CAAA;IAGtC,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"}
@@ -1,10 +1,10 @@
1
1
  export const mockData = [
2
2
  {
3
- firstName: 'John',
3
+ firstName: 'Alice',
4
4
  walletAddress: '0x1234567890abcdef',
5
5
  isActive: true,
6
6
  payment: 100,
7
- email: 'john@example.com',
7
+ email: 'alice@example.com',
8
8
  status: 'active',
9
9
  address: {
10
10
  addressLine1: '123 Main St',
@@ -15,11 +15,11 @@ export const mockData = [
15
15
  },
16
16
  },
17
17
  {
18
- firstName: 'Jane',
18
+ firstName: 'Bob',
19
19
  walletAddress: '0x1234567890abcdef',
20
20
  isActive: false,
21
21
  payment: 1065460,
22
- email: 'jane@example.com',
22
+ email: 'bob@example.com',
23
23
  status: 'inactive',
24
24
  address: {
25
25
  addressLine1: '123 Main St',
@@ -30,11 +30,11 @@ export const mockData = [
30
30
  },
31
31
  },
32
32
  {
33
- firstName: 'Jim',
33
+ firstName: 'Charlie',
34
34
  walletAddress: '0x1234567890abcdef',
35
35
  isActive: true,
36
36
  payment: 14522,
37
- email: 'jim@example.com',
37
+ email: 'charlie@example.com',
38
38
  status: 'active',
39
39
  address: {
40
40
  addressLine1: '123 Main St',
@@ -45,11 +45,11 @@ export const mockData = [
45
45
  },
46
46
  },
47
47
  {
48
- firstName: 'Jill',
48
+ firstName: 'Diana',
49
49
  walletAddress: '0x1234567890abcdef',
50
50
  isActive: false,
51
51
  payment: 11231200,
52
- email: 'jill@example.com',
52
+ email: 'diana@example.com',
53
53
  status: 'inactive',
54
54
  address: {
55
55
  addressLine1: '123 Main St',
@@ -60,11 +60,11 @@ export const mockData = [
60
60
  },
61
61
  },
62
62
  {
63
- firstName: 'Jack',
63
+ firstName: 'Edward',
64
64
  walletAddress: '0x1234567890abcdef',
65
65
  isActive: true,
66
66
  payment: 10234234230,
67
- email: 'jack@example.com',
67
+ email: 'edward@example.com',
68
68
  status: 'active',
69
69
  address: {
70
70
  addressLine1: '123 Main St',
@@ -75,11 +75,11 @@ export const mockData = [
75
75
  },
76
76
  },
77
77
  {
78
- firstName: 'Jill',
78
+ firstName: 'Fiona',
79
79
  walletAddress: '0x1234567890abcdef',
80
80
  isActive: true,
81
81
  payment: 0,
82
- email: 'jill@example.com',
82
+ email: 'fiona@example.com',
83
83
  status: 'inactive',
84
84
  address: {
85
85
  addressLine1: '123 Main St',
@@ -90,11 +90,11 @@ export const mockData = [
90
90
  },
91
91
  },
92
92
  {
93
- firstName: 'Mike',
93
+ firstName: 'Alex',
94
94
  walletAddress: '0x1234567890abcdef',
95
95
  isActive: true,
96
96
  payment: 15,
97
- email: 'mike@example.com',
97
+ email: 'alex@example.com',
98
98
  status: 'inactive',
99
99
  address: {
100
100
  addressLine1: '123 Main St',
@@ -1 +1 @@
1
- {"version":3,"file":"mock-data.js","sourceRoot":"","sources":["../../../../../src/ui/components/object-set-table/mock-data.ts"],"names":[],"mappings":"AAgBA,MAAM,CAAC,MAAM,QAAQ,GAAmB;IACtC;QACE,SAAS,EAAE,MAAM;QACjB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,GAAG;QACZ,KAAK,EAAE,kBAAkB;QACzB,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,MAAM;QACjB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,OAAO;QAChB,KAAK,EAAE,kBAAkB;QACzB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,KAAK;QAChB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,iBAAiB;QACxB,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,MAAM;QACjB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,QAAQ;QACjB,KAAK,EAAE,kBAAkB;QACzB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,MAAM;QACjB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE,kBAAkB;QACzB,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,MAAM;QACjB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,CAAC;QACV,KAAK,EAAE,kBAAkB;QACzB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,MAAM;QACjB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,kBAAkB;QACzB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;CACF,CAAA"}
1
+ {"version":3,"file":"mock-data.js","sourceRoot":"","sources":["../../../../../src/ui/components/object-set-table/mock-data.ts"],"names":[],"mappings":"AAgBA,MAAM,CAAC,MAAM,QAAQ,GAAmB;IACtC;QACE,SAAS,EAAE,OAAO;QAClB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,GAAG;QACZ,KAAK,EAAE,mBAAmB;QAC1B,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,KAAK;QAChB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,OAAO;QAChB,KAAK,EAAE,iBAAiB;QACxB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,SAAS;QACpB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,qBAAqB;QAC5B,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,OAAO;QAClB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,QAAQ;QACjB,KAAK,EAAE,mBAAmB;QAC1B,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,QAAQ;QACnB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE,oBAAoB;QAC3B,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,OAAO;QAClB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,CAAC;QACV,KAAK,EAAE,mBAAmB;QAC1B,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;IACD;QACE,SAAS,EAAE,MAAM;QACjB,aAAa,EAAE,oBAAoB;QACnC,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,kBAAkB;QACzB,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE;YACP,YAAY,EAAE,aAAa;YAC3B,YAAY,EAAE,OAAO;YACrB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO;SACb;KACF;CACF,CAAA"}
@@ -7,6 +7,6 @@ import type { DataType, ObjectSetTableConfig } from './types.js';
7
7
  * @param allowRowSelection Whether to allow row selection.
8
8
  * @param showRowNumbers Whether to show row numbers.
9
9
  */
10
- declare const ObjectSetTable: <T extends DataType = DataType>({ ...config }: ObjectSetTableConfig<T>) => import("react/jsx-runtime").JSX.Element;
10
+ declare const ObjectSetTable: <T extends DataType = DataType>(config: ObjectSetTableConfig<T>) => import("react/jsx-runtime").JSX.Element;
11
11
  export { ObjectSetTable };
12
12
  //# sourceMappingURL=object-set-table.d.ts.map
@@ -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,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAIhE;;;;;;;GAOG;AACH,QAAA,MAAM,cAAc,GAAI,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,eAAe,oBAAoB,CAAC,CAAC,CAAC,4CA+C5F,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
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;AAK5E;;;;;;;GAOG;AACH,QAAA,MAAM,cAAc,GAAI,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,QAAQ,oBAAoB,CAAC,CAAC,CAAC,4CAqDrF,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
@@ -8,7 +8,8 @@ import { TableHeader } from './subcomponents/header.js';
8
8
  import { TableFocusTrap } from './subcomponents/table-focus-trap.js';
9
9
  import { TableProvider } from './subcomponents/table-provider/table-provider.js';
10
10
  import { defaultColumnAlignment } from './subcomponents/default-fns/default-column-config.js';
11
- import { defaultHeaderRenderer } from './subcomponents/default-header-renderers/default-header.renderer.js';
11
+ import { defaultHeaderRenderer } from './subcomponents/default-header-renderers/default-header-renderer.js';
12
+ import { defaultSortFns } from './subcomponents/default-sort-columns/default-sort-fns.js';
12
13
  /**
13
14
  * The ObjectSetTable component is a table component that displays a list of objects.
14
15
  *
@@ -17,17 +18,18 @@ import { defaultHeaderRenderer } from './subcomponents/default-header-renderers/
17
18
  * @param allowRowSelection Whether to allow row selection.
18
19
  * @param showRowNumbers Whether to show row numbers.
19
20
  */
20
- const ObjectSetTable = ({ ...config }) => {
21
+ const ObjectSetTable = (config) => {
21
22
  /**
22
23
  * Extend the config with default values in case they are not provided
23
24
  */
24
25
  const extendedConfig = useMemo(() => {
26
+ const defaultColumnType = 'text';
25
27
  const _config = {
26
28
  ...config,
27
29
  columns: config.columns.map((column) => ({
28
30
  ...column,
29
- align: column.align ?? defaultColumnAlignment(column.type ?? 'text'),
30
- type: column.type ?? 'text',
31
+ align: column.align ?? defaultColumnAlignment(column.type ?? defaultColumnType),
32
+ type: column.type ?? defaultColumnType,
31
33
  valueGetter: column.valueGetter ?? defaultValueGetter,
32
34
  valueFormatter: column.valueFormatter ?? defaultValueFormatter,
33
35
  renderHeader: column.renderHeader ?? defaultHeaderRenderer,
@@ -39,8 +41,13 @@ const ObjectSetTable = ({ ...config }) => {
39
41
  config.data[context.rowIndex][context.column.field] = value;
40
42
  return true;
41
43
  }),
44
+ // sorting
45
+ sortable: column.sortable ?? false,
46
+ defaultSortDirection: column.defaultSortDirection ?? 'asc',
47
+ rowComparator: column.rowComparator ?? defaultSortFns(column.type ?? defaultColumnType),
42
48
  })),
43
49
  width: config.width ?? 'auto',
50
+ minRowCount: config.minRowCount ?? 0,
44
51
  allowRowSelection: config.allowRowSelection ?? true,
45
52
  showRowNumbers: config.showRowNumbers ?? true,
46
53
  apiRef: config.apiRef,
@@ -48,7 +55,7 @@ const ObjectSetTable = ({ ...config }) => {
48
55
  return _config;
49
56
  }, [config]);
50
57
  const tableRef = useRef(null);
51
- return (_jsx(TableProvider, { config: extendedConfig, tableRef: tableRef, children: _jsx(TableFocusTrap, { children: _jsx("div", { className: "grid grid-cols-1 overflow-x-auto rounded-md border border-gray-300", children: _jsxs("table", { className: "object-set-table", ref: tableRef, style: { minWidth: config.width }, children: [_jsx(TableHeader, { columns: extendedConfig.columns }), _jsx(TableBody, { data: extendedConfig.data, columns: extendedConfig.columns })] }) }) }) }));
58
+ return (_jsx(TableProvider, { config: extendedConfig, tableRef: tableRef, children: _jsx(TableFocusTrap, { children: _jsx("div", { className: "grid grid-cols-1 overflow-x-auto rounded-md border border-gray-300", children: _jsxs("table", { className: "object-set-table", ref: tableRef, style: { minWidth: config.width }, children: [_jsx(TableHeader, { columns: extendedConfig.columns }), _jsx(TableBody, {})] }) }) }) }));
52
59
  };
53
60
  export { ObjectSetTable };
54
61
  //# sourceMappingURL=object-set-table.js.map
@@ -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;AAE3G;;;;;;;GAOG;AACH,MAAM,cAAc,GAAG,CAAgC,EAAE,GAAG,MAAM,EAA2B,EAAE,EAAE;IAC/F;;OAEG;IACH,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE;QAClC,MAAM,OAAO,GAA4B;YACvC,GAAG,MAAM;YACT,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBACvC,GAAG,MAAM;gBACT,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,sBAAsB,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC;gBACpE,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM;gBAC3B,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,kBAAkB;gBACrD,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,qBAAqB;gBAC9D,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,qBAAqB;gBAC1D,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC;gBACzD,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,KAAK;gBAClC,sDAAsD;gBACtD,MAAM,EACJ,MAAM,CAAC,MAAM;oBACb,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;wBAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAgB,CAAC,GAAG,KAAmB,CAAA;wBACpF,OAAO,IAAI,CAAA;oBACb,CAAC,CAAC;aACL,CAAC,CAAC;YACH,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,MAAM;YAC7B,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,IAAI;YACnD,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,IAAI;YAC7C,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAA;QAED,OAAO,OAAO,CAAA;IAChB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IAEZ,MAAM,QAAQ,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAA;IAE/C,OAAO,CACL,KAAC,aAAa,IAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,YACvD,KAAC,cAAc,cACb,cAAK,SAAS,EAAC,oEAAoE,YACjF,iBAAO,SAAS,EAAC,kBAAkB,EAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,aAClF,KAAC,WAAW,IAAC,OAAO,EAAE,cAAc,CAAC,OAAO,GAAI,EAChD,KAAC,SAAS,IAAC,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,OAAO,GAAI,IACnE,GACJ,GACS,GACH,CACjB,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,cAAc,EAAE,CAAA"}
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,8 +1,4 @@
1
- import type { ColumnDef, DataType } from '../types.js';
2
- interface TableBodyProps<T extends DataType> {
3
- data: T[];
4
- columns: Array<ColumnDef<T>>;
5
- }
6
- declare const TableBody: <T extends DataType>({ data, columns }: TableBodyProps<T>) => import("react/jsx-runtime").JSX.Element;
1
+ import type { DataType } from '../types.js';
2
+ declare const TableBody: <T extends DataType>() => import("react/jsx-runtime").JSX.Element;
7
3
  export { TableBody };
8
4
  //# sourceMappingURL=body.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"body.d.ts","sourceRoot":"","sources":["../../../../../../src/ui/components/object-set-table/subcomponents/body.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAe,SAAS,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAQnE,UAAU,cAAc,CAAC,CAAC,SAAS,QAAQ;IACzC,IAAI,EAAE,CAAC,EAAE,CAAA;IACT,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;CAC7B;AAED,QAAA,MAAM,SAAS,GAAI,CAAC,SAAS,QAAQ,EAAE,mBAAmB,cAAc,CAAC,CAAC,CAAC,4CAmK1E,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,CAAA"}
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,8CAsBpC,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,CAAA"}
@@ -1,114 +1,15 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useCallback } from 'react';
3
- import { Input } from '../../data-entry/input/index.js';
4
2
  import { useGlobalTableKeyEvents } from '../hooks/useGlobalTableKeyEvents.js';
5
- import { isCellEqual } from '../utils.js';
6
- import { DefaultTableCell } from './cells/default-cell.js';
7
- import { InformationCell } from './cells/information-cell.js';
8
- import { RowNumberCell } from './cells/row-number-cell.js';
9
- import { TableRow } from './rows/table-row.js';
10
3
  import { useInternalTableState } from './table-provider/table-provider.js';
11
- const TableBody = ({ data, columns }) => {
12
- const { config, state: { dispatch, selectedRowIndexes, selectedCellIndex, isCellEditMode }, api, } = useInternalTableState();
4
+ import { RenderRow } from './rows/render-row.js';
5
+ const TableBody = () => {
6
+ const { config, state: { data }, } = useInternalTableState();
13
7
  // add global key events to the table
14
8
  useGlobalTableKeyEvents();
15
- const { allowRowSelection } = config;
16
- /**
17
- * Create a handler for the click event on the table numbering cell
18
- * This handler is used to select a row when the ctrl key is pressed
19
- * or select single rows when the index is clicked
20
- */
21
- const createSelectRowOnClickHandler = useCallback((index) => (e) => {
22
- if (!allowRowSelection)
23
- return;
24
- if (e.ctrlKey || e.metaKey) {
25
- e.stopPropagation();
26
- api.selection.toggleRow(index);
27
- }
28
- else if (e.shiftKey) {
29
- return; // just let the row handle it
30
- }
31
- else {
32
- api.selection.selectRow(index);
33
- }
34
- }, [allowRowSelection, api.selection]);
35
- /**
36
- * Create a handler for the click event on the table row
37
- * This handler is used to select a row when the ctrl key is pressed
38
- * in any other place other than the index cell or select a range of rows
39
- * when the shift key is pressed
40
- */
41
- const createAddSelectedRowHandler = useCallback((index) => (e) => {
42
- if (!allowRowSelection)
43
- return;
44
- if (e.ctrlKey || e.metaKey) {
45
- api.selection.toggleRow(index);
46
- }
47
- else if (e.shiftKey) {
48
- // Prevent text selection when shift key is pressed
49
- document.getSelection()?.removeAllRanges();
50
- api.selection.selectFromLastActiveRow(index);
51
- }
52
- }, [allowRowSelection]);
53
- /**
54
- * Prevent text selection when shift key is pressed so that we
55
- * can select a range of rows while keeping a good user experience
56
- */
57
- const handleMouseDown = useCallback((event) => {
58
- if (event.shiftKey) {
59
- document.getSelection()?.removeAllRanges();
60
- }
61
- }, []);
62
- const createCellClickHandler = useCallback((index, column, columnDef) => (e) => {
63
- // if the cell is being edited, ignore clicking on it
64
- if (isCellEditMode && selectedCellIndex?.row === index && selectedCellIndex.column === column) {
65
- return;
66
- }
67
- // if shift or ctrl is pressed, the user is probably trying to select rows
68
- if (!e.ctrlKey && !e.metaKey && !e.shiftKey) {
69
- if (e.detail === 2 && columnDef.editable) {
70
- dispatch?.({
71
- type: 'ENTER_CELL_EDIT_MODE',
72
- payload: { row: index, column },
73
- });
74
- }
75
- else {
76
- api.selection.selectCell(index, column);
77
- }
78
- }
79
- }, [dispatch, isCellEditMode]);
80
- return (_jsx("tbody", { className: "text-sm leading-5 text-gray-900", children: data.map((rowItem, index) => (_jsxs(TableRow
81
- // TODO: replace key with unique key (maybe generated with object-hash package)
82
- , { index: index, onClick: createAddSelectedRowHandler(index), onMouseDown: handleMouseDown, children: [_jsx(RowNumberCell, { index: index + 1, handleSelectRowOnClick: createSelectRowOnClickHandler(index), selected: selectedRowIndexes.includes(index) || selectedCellIndex?.row === index }), columns.map((column, columnIndex) => {
83
- const cellContext = {
84
- row: rowItem,
85
- column,
86
- rowIndex: index,
87
- columnIndex,
88
- tableConfig: config,
89
- };
90
- // get and format the cell value
91
- const cellValue = column.valueFormatter?.(column.valueGetter?.(rowItem, cellContext), cellContext);
92
- // render the cell
93
- const cell = column.renderCell?.(cellValue, cellContext);
94
- const currentCellIndex = {
95
- row: index,
96
- column: columnIndex,
97
- };
98
- const isCellSelected = isCellEqual(selectedCellIndex, currentCellIndex);
99
- const isThisCellEditMode = isCellEditMode && isCellSelected;
100
- const style = {
101
- width: column.width ?? 'auto',
102
- minWidth: column.minWidth ?? 'auto',
103
- maxWidth: column.maxWidth ?? column.width ?? 'auto',
104
- };
105
- return (_jsx(DefaultTableCell, { onClick: createCellClickHandler(index, columnIndex, column), isSelected: isCellSelected, isEditable: column.editable ?? false, style: style, children: isThisCellEditMode ? (_jsx(Input, { className: "max-w-full", autoFocus: true, defaultValue: column.valueGetter?.(rowItem, cellContext), onKeyDown: (e) => {
106
- if (e.key === 'Enter') {
107
- const newValue = e.target.value;
108
- column.onSave?.(newValue, cellContext);
109
- }
110
- } })) : (cell) }, column.field));
111
- }), _jsx(InformationCell, {})] }, index))) }));
9
+ return (_jsxs("tbody", { className: "text-sm leading-5 text-gray-900", children: [data.map((data, index) => (
10
+ // TODO: replace key with unique key (maybe generated with object-hash package)
11
+ _jsx(RenderRow, { item: data, rowIndex: index }, index))), data.length < (config.minRowCount ?? 0) &&
12
+ Array.from({ length: (config.minRowCount ?? 0) - data.length }).map((_, index) => (_jsx(RenderRow, { item: {}, rowIndex: index + data.length, emptyRow: true }, index)))] }));
112
13
  };
113
14
  export { TableBody };
114
15
  //# 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,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAE7E,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAO1E,MAAM,SAAS,GAAG,CAAqB,EAAE,IAAI,EAAE,OAAO,EAAqB,EAAE,EAAE;IAC7E,MAAM,EACJ,MAAM,EACN,KAAK,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,cAAc,EAAE,EAC1E,GAAG,GACJ,GAAG,qBAAqB,EAAK,CAAA;IAE9B,qCAAqC;IACrC,uBAAuB,EAAE,CAAA;IAEzB,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAAA;IAEpC;;;;OAIG;IACH,MAAM,6BAA6B,GAAG,WAAW,CAC/C,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,CAAyC,EAAE,EAAE;QAC/D,IAAI,CAAC,iBAAiB;YAAE,OAAM;QAC9B,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC,CAAC,eAAe,EAAE,CAAA;YACnB,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAChC,CAAC;aAAM,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACtB,OAAM,CAAC,6BAA6B;QACtC,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAChC,CAAC;IACH,CAAC,EACD,CAAC,iBAAiB,EAAE,GAAG,CAAC,SAAS,CAAC,CACnC,CAAA;IAED;;;;;OAKG;IACH,MAAM,2BAA2B,GAAG,WAAW,CAC7C,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,CAAwC,EAAE,EAAE;QAC9D,IAAI,CAAC,iBAAiB;YAAE,OAAM;QAE9B,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAC3B,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QAChC,CAAC;aAAM,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACtB,mDAAmD;YACnD,QAAQ,CAAC,YAAY,EAAE,EAAE,eAAe,EAAE,CAAA;YAC1C,GAAG,CAAC,SAAS,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAA;QAC9C,CAAC;IACH,CAAC,EACD,CAAC,iBAAiB,CAAC,CACpB,CAAA;IAED;;;OAGG;IACH,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,KAA4C,EAAE,EAAE;QACnF,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,QAAQ,CAAC,YAAY,EAAE,EAAE,eAAe,EAAE,CAAA;QAC5C,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,sBAAsB,GAAG,WAAW,CACxC,CAAC,KAAa,EAAE,MAAc,EAAE,SAAuB,EAAE,EAAE,CAAC,CAAC,CAAyC,EAAE,EAAE;QACxG,qDAAqD;QACrD,IAAI,cAAc,IAAI,iBAAiB,EAAE,GAAG,KAAK,KAAK,IAAI,iBAAiB,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9F,OAAM;QACR,CAAC;QAED,0EAA0E;QAC1E,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC5C,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACzC,QAAQ,EAAE,CAAC;oBACT,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE;iBAChC,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;YACzC,CAAC;QACH,CAAC;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,cAAc,CAAC,CAC3B,CAAA;IAED,OAAO,CACL,gBAAO,SAAS,EAAC,iCAAiC,YAC/C,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAC5B,MAAC,QAAQ;QACP,+EAA+E;YAE/E,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,2BAA2B,CAAC,KAAK,CAAC,EAC3C,WAAW,EAAE,eAAe,aAE5B,KAAC,aAAa,IACZ,KAAK,EAAE,KAAK,GAAG,CAAC,EAChB,sBAAsB,EAAE,6BAA6B,CAAC,KAAK,CAAC,EAC5D,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,iBAAiB,EAAE,GAAG,KAAK,KAAK,GAChF,EAED,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE;oBACnC,MAAM,WAAW,GAAmB;wBAClC,GAAG,EAAE,OAAO;wBACZ,MAAM;wBACN,QAAQ,EAAE,KAAK;wBACf,WAAW;wBACX,WAAW,EAAE,MAAM;qBACpB,CAAA;oBAED,gCAAgC;oBAChC,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,WAAW,CAAC,CAAA;oBAElG,kBAAkB;oBAClB,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;oBAExD,MAAM,gBAAgB,GAAG;wBACvB,GAAG,EAAE,KAAK;wBACV,MAAM,EAAE,WAAW;qBACpB,CAAA;oBACD,MAAM,cAAc,GAAG,WAAW,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAA;oBAEvE,MAAM,kBAAkB,GAAG,cAAc,IAAI,cAAc,CAAA;oBAE3D,MAAM,KAAK,GAAwB;wBACjC,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,MAAM;wBAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,MAAM;wBACnC,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM;qBACpD,CAAA;oBAED,OAAO,CACL,KAAC,gBAAgB,IAEf,OAAO,EAAE,sBAAsB,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,EAC3D,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,MAAM,CAAC,QAAQ,IAAI,KAAK,EACpC,KAAK,EAAE,KAAK,YAEX,kBAAkB,CAAC,CAAC,CAAC,CACpB,KAAC,KAAK,IACJ,SAAS,EAAC,YAAY,EACtB,SAAS,QACT,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,WAAW,CAAW,EAClE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;gCACf,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;oCACtB,MAAM,QAAQ,GAAI,CAAC,CAAC,MAA2B,CAAC,KAAK,CAAA;oCACrD,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;gCACxC,CAAC;4BACH,CAAC,GACD,CACH,CAAC,CAAC,CAAC,CACF,IAAI,CACL,IApBI,MAAM,CAAC,KAAK,CAqBA,CACpB,CAAA;gBACH,CAAC,CAAC,EAGF,KAAC,eAAe,KAAG,KApEd,KAAK,CAqED,CACZ,CAAC,GACI,CACT,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,CAAA"}
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,EACJ,MAAM,EACN,KAAK,EAAE,EAAE,IAAI,EAAE,GAChB,GAAG,qBAAqB,EAAK,CAAA;IAE9B,qCAAqC;IACrC,uBAAuB,EAAE,CAAA;IAEzB,OAAO,CACL,iBAAO,SAAS,EAAC,iCAAiC,aAC/C,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACzB,+EAA+E;YAC/E,KAAC,SAAS,IAAa,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,IAAlC,KAAK,CAAiC,CACvD,CAAC,EAED,IAAI,CAAC,MAAM,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;gBACtC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAChF,KAAC,SAAS,IAAa,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,QAAQ,UAAxD,KAAK,CAAsD,CAC5E,CAAC,IACE,CACT,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,CAAA"}
@@ -0,0 +1,11 @@
1
+ import type { ColumnDef, DataType } from '../../types.js';
2
+ interface RenderCellProps<T extends DataType> {
3
+ rowItem: T;
4
+ column: ColumnDef<T>;
5
+ rowIndex: number;
6
+ columnIndex: number;
7
+ renderEmptyCell?: boolean;
8
+ }
9
+ declare const RenderCell: <T extends DataType>({ rowItem, column, rowIndex, columnIndex, renderEmptyCell, }: RenderCellProps<T>) => import("react/jsx-runtime").JSX.Element;
10
+ export { RenderCell };
11
+ //# sourceMappingURL=render-cell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render-cell.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/cells/render-cell.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAe,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAKtE,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,4CA4FpB,CAAA;AAED,OAAO,EAAE,UAAU,EAAE,CAAA"}
@@ -0,0 +1,62 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useCallback } from 'react';
3
+ import { Input } from '../../../data-entry/input/index.js';
4
+ import { isCellEqual } from '../../utils.js';
5
+ import { useInternalTableState } from '../table-provider/table-provider.js';
6
+ import { DefaultTableCell } from './default-cell.js';
7
+ const RenderCell = ({ rowItem, column, rowIndex, columnIndex, renderEmptyCell = false, }) => {
8
+ const { config, state: { dispatch, selectedCellIndex, isCellEditMode }, api, } = useInternalTableState();
9
+ /**
10
+ * Create a handler for the click event on the table cell
11
+ * This handler is used to enter cell edit mode or select a cell
12
+ */
13
+ const createCellClickHandler = useCallback((index, column, columnDef) => (e) => {
14
+ // if the cell is being edited, ignore clicking on it
15
+ if (isCellEditMode && selectedCellIndex?.row === index && selectedCellIndex.column === column) {
16
+ return;
17
+ }
18
+ // if shift or ctrl is pressed, the user is probably trying to select rows
19
+ if (!e.ctrlKey && !e.metaKey && !e.shiftKey) {
20
+ if (e.detail === 2 && columnDef.editable) {
21
+ // TODO: move this to the api
22
+ dispatch?.({
23
+ type: 'ENTER_CELL_EDIT_MODE',
24
+ payload: { row: index, column },
25
+ });
26
+ }
27
+ else {
28
+ api.selection.selectCell(index, column);
29
+ }
30
+ }
31
+ }, [dispatch, isCellEditMode]);
32
+ const currentCellIndex = {
33
+ row: rowIndex,
34
+ column: columnIndex,
35
+ };
36
+ const isThisCellSelected = isCellEqual(selectedCellIndex, currentCellIndex);
37
+ /**
38
+ * If the cell is empty, we don't want to render anything
39
+ * so we're going to return a default table cell with no content
40
+ */
41
+ if (renderEmptyCell) {
42
+ return (_jsx(DefaultTableCell, { onClick: createCellClickHandler(rowIndex, columnIndex, column), isSelected: isThisCellSelected, isEditable: false }, column.field));
43
+ }
44
+ const cellContext = {
45
+ row: rowItem,
46
+ column,
47
+ rowIndex,
48
+ columnIndex,
49
+ tableConfig: config,
50
+ };
51
+ // get and format the cell value
52
+ const cellValue = column.valueFormatter?.(column.valueGetter?.(rowItem, cellContext), cellContext);
53
+ const isThisCellEditMode = isCellEditMode && isThisCellSelected;
54
+ return (_jsx(DefaultTableCell, { onClick: createCellClickHandler(rowIndex, columnIndex, column), isSelected: isThisCellSelected, isEditable: column.editable ?? false, children: isThisCellEditMode ? (_jsx(Input, { className: "max-w-full", autoFocus: true, defaultValue: column.valueGetter?.(rowItem, cellContext), onKeyDown: (e) => {
55
+ if (e.key === 'Enter') {
56
+ const newValue = e.target.value;
57
+ column.onSave?.(newValue, cellContext);
58
+ }
59
+ } })) : (column.renderCell?.(cellValue, cellContext)) }, column.field));
60
+ };
61
+ export { RenderCell };
62
+ //# sourceMappingURL=render-cell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render-cell.js","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/cells/render-cell.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { CellType, RenderCellFn } from '../../types.js';
2
- declare const getRenderFn: <T>(type: CellType | undefined) => RenderCellFn<T>;
1
+ import type { ColumnType, RenderCellFn } from '../../types.js';
2
+ declare const getRenderFn: <T>(type: ColumnType | undefined) => RenderCellFn<T>;
3
3
  export { getRenderFn };
4
4
  //# sourceMappingURL=get-render-fn.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-render-fn.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/default-cell-renderers/get-render-fn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAK5D,QAAA,MAAM,WAAW,GAAI,CAAC,EAAE,MAAM,QAAQ,GAAG,SAAS,KAAG,YAAY,CAAC,CAAC,CAalE,CAAA;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"get-render-fn.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/default-cell-renderers/get-render-fn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAK9D,QAAA,MAAM,WAAW,GAAI,CAAC,EAAE,MAAM,UAAU,GAAG,SAAS,KAAG,YAAY,CAAC,CAAC,CAapE,CAAA;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-render-fn.js","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/default-cell-renderers/get-render-fn.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,MAAM,WAAW,GAAG,CAAI,IAA0B,EAAmB,EAAE;IACrE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM;YACT,OAAO,cAAc,CAAA;QACvB,KAAK,QAAQ;YACX,OAAO,gBAAgB,CAAA;QACzB,KAAK,SAAS;YACZ,OAAO,iBAAiB,CAAA;QAC1B,KAAK,SAAS;YACZ,OAAO,cAAc,CAAA;QACvB;YACE,OAAO,cAAc,CAAA;IACzB,CAAC;AACH,CAAC,CAAA;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"get-render-fn.js","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/default-cell-renderers/get-render-fn.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,MAAM,WAAW,GAAG,CAAI,IAA4B,EAAmB,EAAE;IACvE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM;YACT,OAAO,cAAc,CAAA;QACvB,KAAK,QAAQ;YACX,OAAO,gBAAgB,CAAA;QACzB,KAAK,SAAS;YACZ,OAAO,iBAAiB,CAAA;QAC1B,KAAK,SAAS;YACZ,OAAO,cAAc,CAAA;QACvB;YACE,OAAO,cAAc,CAAA;IACzB,CAAC;AACH,CAAC,CAAA;AAED,OAAO,EAAE,WAAW,EAAE,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { CellType, ColumnAlignment } from '../../types.js';
2
- declare const defaultColumnAlignment: (cellType: CellType) => ColumnAlignment;
1
+ import type { ColumnAlignment, ColumnType } from '../../types.js';
2
+ declare const defaultColumnAlignment: (columnType: ColumnType) => ColumnAlignment;
3
3
  export { defaultColumnAlignment };
4
4
  //# sourceMappingURL=default-column-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"default-column-config.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/default-fns/default-column-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAE/D,QAAA,MAAM,sBAAsB,GAAI,UAAU,QAAQ,KAAG,eAUpD,CAAA;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAA"}
1
+ {"version":3,"file":"default-column-config.d.ts","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/default-fns/default-column-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEjE,QAAA,MAAM,sBAAsB,GAAI,YAAY,UAAU,KAAG,eAUxD,CAAA;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAA"}
@@ -1,5 +1,5 @@
1
- const defaultColumnAlignment = (cellType) => {
2
- switch (cellType) {
1
+ const defaultColumnAlignment = (columnType) => {
2
+ switch (columnType) {
3
3
  case 'number':
4
4
  return 'right';
5
5
  case 'text':
@@ -1 +1 @@
1
- {"version":3,"file":"default-column-config.js","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/default-fns/default-column-config.ts"],"names":[],"mappings":"AAEA,MAAM,sBAAsB,GAAG,CAAC,QAAkB,EAAmB,EAAE;IACrE,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,OAAO,CAAA;QAEhB,KAAK,MAAM,CAAC;QACZ,KAAK,SAAS,CAAC;QACf;YACE,OAAO,MAAM,CAAA;IACjB,CAAC;AACH,CAAC,CAAA;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAA"}
1
+ {"version":3,"file":"default-column-config.js","sourceRoot":"","sources":["../../../../../../../src/ui/components/object-set-table/subcomponents/default-fns/default-column-config.ts"],"names":[],"mappings":"AAEA,MAAM,sBAAsB,GAAG,CAAC,UAAsB,EAAmB,EAAE;IACzE,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,OAAO,CAAA;QAEhB,KAAK,MAAM,CAAC;QACZ,KAAK,SAAS,CAAC;QACf;YACE,OAAO,MAAM,CAAA;IACjB,CAAC;AACH,CAAC,CAAA;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAA"}