@dxos/react-ui-table 0.8.4-main.c4373fc → 0.8.4-main.c85a9c8dae
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/lib/browser/chunk-DSR2MRZB.mjs +80 -0
- package/dist/lib/browser/chunk-DSR2MRZB.mjs.map +7 -0
- package/dist/lib/browser/chunk-PTHMYAAM.mjs +1751 -0
- package/dist/lib/browser/chunk-PTHMYAAM.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +1160 -1024
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +30 -42
- package/dist/lib/browser/testing/index.mjs.map +3 -3
- package/dist/lib/browser/types/index.mjs +3 -3
- package/dist/lib/node-esm/chunk-GI72MQSG.mjs +1753 -0
- package/dist/lib/node-esm/chunk-GI72MQSG.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-HTZJSULI.mjs +81 -0
- package/dist/lib/node-esm/chunk-HTZJSULI.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +1160 -1024
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/testing/index.mjs +30 -42
- package/dist/lib/node-esm/testing/index.mjs.map +3 -3
- package/dist/lib/node-esm/types/index.mjs +3 -3
- package/dist/types/src/components/Table/ColumnActionsMenu.d.ts +1 -2
- package/dist/types/src/components/Table/ColumnActionsMenu.d.ts.map +1 -1
- package/dist/types/src/components/Table/ColumnSettings.d.ts +2 -2
- package/dist/types/src/components/Table/ColumnSettings.d.ts.map +1 -1
- package/dist/types/src/components/Table/DynamicTable.d.ts +7 -7
- package/dist/types/src/components/Table/DynamicTable.d.ts.map +1 -1
- package/dist/types/src/components/Table/DynamicTable.stories.d.ts +4 -18
- package/dist/types/src/components/Table/DynamicTable.stories.d.ts.map +1 -1
- package/dist/types/src/components/Table/Relations.stories.d.ts +12 -9
- package/dist/types/src/components/Table/Relations.stories.d.ts.map +1 -1
- package/dist/types/src/components/Table/RowActionsMenu.d.ts.map +1 -1
- package/dist/types/src/components/Table/Table.d.ts +12 -12
- package/dist/types/src/components/Table/Table.d.ts.map +1 -1
- package/dist/types/src/components/Table/Table.stories.d.ts +71 -5
- package/dist/types/src/components/Table/Table.stories.d.ts.map +1 -1
- package/dist/types/src/components/TableCellEditor/CellValidationMessage.d.ts +1 -1
- package/dist/types/src/components/TableCellEditor/FormCellEditor.d.ts +10 -12
- package/dist/types/src/components/TableCellEditor/FormCellEditor.d.ts.map +1 -1
- package/dist/types/src/components/TableCellEditor/TableCellEditor.d.ts +5 -7
- package/dist/types/src/components/TableCellEditor/TableCellEditor.d.ts.map +1 -1
- package/dist/types/src/components/TableCellEditor/TableCellEditor.stories.d.ts +4 -4
- package/dist/types/src/components/TableCellEditor/TableCellEditor.stories.d.ts.map +1 -1
- package/dist/types/src/components/TableToolbar/TableToolbar.d.ts +5 -5
- package/dist/types/src/components/TableToolbar/TableToolbar.d.ts.map +1 -1
- package/dist/types/src/components/testing.d.ts +22 -15
- package/dist/types/src/components/testing.d.ts.map +1 -1
- package/dist/types/src/hooks/index.d.ts +2 -1
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useAddRow.d.ts +5 -6
- package/dist/types/src/hooks/useAddRow.d.ts.map +1 -1
- package/dist/types/src/hooks/useProjectionModel.d.ts +6 -0
- package/dist/types/src/hooks/useProjectionModel.d.ts.map +1 -0
- package/dist/types/src/hooks/useTableModel.d.ts +9 -9
- package/dist/types/src/hooks/useTableModel.d.ts.map +1 -1
- package/dist/types/src/model/modal-controller.d.ts +5 -1
- package/dist/types/src/model/modal-controller.d.ts.map +1 -1
- package/dist/types/src/model/selection-model.d.ts +17 -8
- package/dist/types/src/model/selection-model.d.ts.map +1 -1
- package/dist/types/src/model/table-model.d.ts +105 -25
- package/dist/types/src/model/table-model.d.ts.map +1 -1
- package/dist/types/src/model/table-presentation.d.ts +3 -1
- package/dist/types/src/model/table-presentation.d.ts.map +1 -1
- package/dist/types/src/playwright/TableManager.d.ts +2 -1
- package/dist/types/src/playwright/TableManager.d.ts.map +1 -1
- package/dist/types/src/testing/useTestTableModel.d.ts +18 -15
- package/dist/types/src/testing/useTestTableModel.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +4 -4
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Table.d.ts +31 -0
- package/dist/types/src/types/Table.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +1 -1
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/util/dynamic-table.d.ts +14 -11
- package/dist/types/src/util/dynamic-table.d.ts.map +1 -1
- package/dist/types/src/util/dynamic-table.test.d.ts +2 -0
- package/dist/types/src/util/dynamic-table.test.d.ts.map +1 -0
- package/dist/types/src/util/index.d.ts +2 -0
- package/dist/types/src/util/index.d.ts.map +1 -1
- package/dist/types/src/util/query-ast.d.ts +7 -0
- package/dist/types/src/util/query-ast.d.ts.map +1 -0
- package/dist/types/src/util/sort.d.ts +12 -0
- package/dist/types/src/util/sort.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +54 -54
- package/src/components/Table/ColumnActionsMenu.tsx +10 -6
- package/src/components/Table/ColumnSettings.tsx +8 -9
- package/src/components/Table/DynamicTable.stories.tsx +16 -16
- package/src/components/Table/DynamicTable.tsx +29 -21
- package/src/components/Table/Relations.stories.tsx +52 -60
- package/src/components/Table/RowActionsMenu.tsx +24 -15
- package/src/components/Table/Table.stories.tsx +114 -96
- package/src/components/Table/Table.tsx +326 -300
- package/src/components/TableCellEditor/CellValidationMessage.tsx +5 -5
- package/src/components/TableCellEditor/FormCellEditor.tsx +117 -134
- package/src/components/TableCellEditor/TableCellEditor.stories.tsx +18 -13
- package/src/components/TableCellEditor/TableCellEditor.tsx +31 -31
- package/src/components/TableToolbar/TableToolbar.tsx +53 -37
- package/src/components/testing.ts +38 -12
- package/src/hooks/index.ts +2 -1
- package/src/hooks/useAddRow.ts +8 -10
- package/src/hooks/useProjectionModel.ts +39 -0
- package/src/hooks/useTableModel.ts +36 -34
- package/src/model/modal-controller.ts +23 -12
- package/src/model/selection-model.ts +75 -44
- package/src/model/table-model.test.ts +82 -54
- package/src/model/table-model.ts +436 -170
- package/src/model/table-presentation.test.ts +59 -49
- package/src/model/table-presentation.ts +43 -37
- package/src/playwright/TableManager.ts +13 -6
- package/src/playwright/playwright.config.ts +1 -1
- package/src/playwright/smoke.spec.ts +56 -10
- package/src/testing/useTestTableModel.ts +45 -38
- package/src/translations.ts +3 -3
- package/src/types/Table.ts +95 -0
- package/src/types/index.ts +1 -1
- package/src/util/dynamic-table.test.ts +70 -0
- package/src/util/dynamic-table.ts +41 -28
- package/src/util/index.ts +2 -0
- package/src/util/query-ast.ts +22 -0
- package/src/util/sort.ts +90 -0
- package/src/util/table-buttons.ts +1 -1
- package/src/util/table-controls.ts +2 -2
- package/dist/lib/browser/chunk-4K7JPALT.mjs +0 -66
- package/dist/lib/browser/chunk-4K7JPALT.mjs.map +0 -7
- package/dist/lib/browser/chunk-OZTXLZGM.mjs +0 -1804
- package/dist/lib/browser/chunk-OZTXLZGM.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-MK6OVUF6.mjs +0 -67
- package/dist/lib/node-esm/chunk-MK6OVUF6.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-S56Z4V4X.mjs +0 -1805
- package/dist/lib/node-esm/chunk-S56Z4V4X.mjs.map +0 -7
- package/dist/types/src/model/table-sorting.d.ts +0 -52
- package/dist/types/src/model/table-sorting.d.ts.map +0 -1
- package/dist/types/src/types/schema.d.ts +0 -28
- package/dist/types/src/types/schema.d.ts.map +0 -1
- package/src/model/table-sorting.ts +0 -225
- package/src/types/schema.ts +0 -73
|
@@ -1,12 +1,40 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { Atom, type Registry } from '@effect-atom/atom-react';
|
|
2
2
|
import { Resource } from '@dxos/context';
|
|
3
|
+
import { type Database, type QueryAST } from '@dxos/echo';
|
|
4
|
+
import { type View } from '@dxos/echo';
|
|
3
5
|
import { type JsonProp, type JsonSchemaType } from '@dxos/echo/internal';
|
|
4
6
|
import { type Label } from '@dxos/react-ui';
|
|
5
7
|
import { type DxGridAxisMeta, type DxGridPlanePosition, type DxGridPosition } from '@dxos/react-ui-grid';
|
|
6
|
-
import { type
|
|
7
|
-
import { Table } from '../types';
|
|
8
|
+
import { type ProjectionModel, type ValidationError } from '@dxos/schema';
|
|
9
|
+
import { type Table } from '../types';
|
|
10
|
+
/**
|
|
11
|
+
* Field sort configuration.
|
|
12
|
+
*/
|
|
13
|
+
export type FieldSortType = {
|
|
14
|
+
fieldId: string;
|
|
15
|
+
direction: QueryAST.OrderDirection;
|
|
16
|
+
};
|
|
8
17
|
import { type SelectionMode, SelectionModel } from './selection-model';
|
|
9
|
-
|
|
18
|
+
/**
|
|
19
|
+
* Callback type for wrapping mutations in Obj.change().
|
|
20
|
+
* Contains separate callbacks for table object and row mutations.
|
|
21
|
+
*/
|
|
22
|
+
export type TableChangeCallback<T extends TableRow> = {
|
|
23
|
+
/** Callback to wrap table object mutations. */
|
|
24
|
+
table: (mutate: (mutableTable: Table.Table) => void) => void;
|
|
25
|
+
/** Callback to wrap row mutations. */
|
|
26
|
+
row: (row: T, mutate: (mutableRow: T) => void) => void;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Creates a change callback for ECHO-backed table and rows.
|
|
30
|
+
* Use this when the table and rows are stored in the ECHO database.
|
|
31
|
+
*/
|
|
32
|
+
export declare const createEchoChangeCallback: <T extends TableRow>(table: Table.Table) => TableChangeCallback<T>;
|
|
33
|
+
/**
|
|
34
|
+
* Creates a change callback that directly mutates objects without wrapping.
|
|
35
|
+
* Use this for plain JavaScript objects (tests, non-ECHO scenarios).
|
|
36
|
+
*/
|
|
37
|
+
export declare const createDirectChangeCallback: <T extends TableRow>(table: Table.Table) => TableChangeCallback<T>;
|
|
10
38
|
export type TableCellType = 'standard' | 'draft' | 'header';
|
|
11
39
|
export type ValidationResult = {
|
|
12
40
|
valid: true;
|
|
@@ -36,11 +64,16 @@ export type TableFeatures = {
|
|
|
36
64
|
};
|
|
37
65
|
export type InsertRowResult = 'draft' | 'final';
|
|
38
66
|
export type TableModelProps<T extends TableRow = TableRow> = {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
projection
|
|
67
|
+
registry: Registry.Registry;
|
|
68
|
+
object: Table.Table;
|
|
69
|
+
projection: ProjectionModel;
|
|
70
|
+
db?: Database.Database;
|
|
71
|
+
/**
|
|
72
|
+
* Callbacks to wrap mutations in Obj.change().
|
|
73
|
+
* Use createEchoChangeCallback() for ECHO-backed objects or createDirectChangeCallback() for plain objects.
|
|
74
|
+
*/
|
|
75
|
+
change?: TableChangeCallback<T>;
|
|
42
76
|
features?: Partial<TableFeatures>;
|
|
43
|
-
sorting?: FieldSortType[];
|
|
44
77
|
initialSelection?: string[];
|
|
45
78
|
pinnedRows?: {
|
|
46
79
|
top: number[];
|
|
@@ -50,19 +83,21 @@ export type TableModelProps<T extends TableRow = TableRow> = {
|
|
|
50
83
|
onResolveSchema?: (typename: string) => Promise<JsonSchemaType>;
|
|
51
84
|
onInsertRow?: (data?: any) => InsertRowResult;
|
|
52
85
|
onDeleteRows?: (index: number, obj: T[]) => void;
|
|
53
|
-
|
|
86
|
+
onColumnDelete?: (fieldId: string) => void;
|
|
54
87
|
onCellUpdate?: (cell: DxGridPosition) => void;
|
|
55
88
|
onRowOrderChange?: () => void;
|
|
56
89
|
onRowAction?: (actionId: string, data: T) => void;
|
|
57
90
|
};
|
|
58
91
|
export declare class TableModel<T extends TableRow = TableRow> extends Resource {
|
|
59
|
-
private readonly
|
|
92
|
+
private readonly _registry;
|
|
93
|
+
private readonly _object;
|
|
60
94
|
private readonly _projection;
|
|
61
|
-
private
|
|
95
|
+
private readonly _db?;
|
|
96
|
+
private readonly _change;
|
|
62
97
|
private readonly _visibleRange;
|
|
63
98
|
private readonly _onInsertRow?;
|
|
64
99
|
private readonly _onDeleteRows?;
|
|
65
|
-
private readonly
|
|
100
|
+
private readonly _onColumnDelete?;
|
|
66
101
|
private readonly _onCellUpdate?;
|
|
67
102
|
private readonly _onRowOrderChange?;
|
|
68
103
|
private readonly _onRowAction?;
|
|
@@ -70,41 +105,61 @@ export declare class TableModel<T extends TableRow = TableRow> extends Resource
|
|
|
70
105
|
private readonly _features;
|
|
71
106
|
private readonly _rows;
|
|
72
107
|
private readonly _draftRows;
|
|
108
|
+
private readonly _inMemorySort;
|
|
109
|
+
private readonly _persistedSort;
|
|
73
110
|
private readonly _sorting;
|
|
111
|
+
private readonly _sortedRows;
|
|
112
|
+
private readonly _viewDirty;
|
|
74
113
|
private _pinnedRows;
|
|
75
114
|
private _selection;
|
|
76
115
|
private _columnMeta?;
|
|
77
|
-
|
|
116
|
+
private readonly _cellUpdateCounter;
|
|
117
|
+
constructor({ registry, object, projection, db, change, features, initialSelection, pinnedRows, rowActions, onCellUpdate, onColumnDelete, onDeleteRows, onInsertRow, onRowOrderChange, onRowAction, }: TableModelProps<T>);
|
|
78
118
|
get id(): string;
|
|
79
|
-
get view():
|
|
119
|
+
get view(): View.View;
|
|
80
120
|
get table(): Table.Table;
|
|
81
121
|
get projection(): ProjectionModel;
|
|
82
|
-
get
|
|
122
|
+
get db(): Database.Database | undefined;
|
|
123
|
+
/**
|
|
124
|
+
* Atom for reactive access to rows with in-memory sorting applied.
|
|
125
|
+
*/
|
|
126
|
+
get rows(): Atom.Atom<T[]>;
|
|
127
|
+
/**
|
|
128
|
+
* Gets rows with in-memory sorting applied.
|
|
129
|
+
* In-memory sort is local to this instance until saved.
|
|
130
|
+
*/
|
|
131
|
+
getRows(): T[];
|
|
132
|
+
/** Atom for reactive access to cell changes. */
|
|
133
|
+
get cellUpdate(): Atom.Atom<number>;
|
|
134
|
+
/**
|
|
135
|
+
* Change a row using the configured change callback.
|
|
136
|
+
* Use this instead of directly mutating to ensure consistent mutation handling.
|
|
137
|
+
*/
|
|
138
|
+
changeRow(row: T, mutate: (mutableRow: T) => void): void;
|
|
83
139
|
get features(): TableFeatures;
|
|
84
140
|
/**
|
|
85
|
-
*
|
|
141
|
+
* Gets the current sort state.
|
|
142
|
+
* Priority: in-memory sort (local changes) > persisted sort (from query AST).
|
|
86
143
|
*/
|
|
87
|
-
|
|
144
|
+
getSorting(): FieldSortType | undefined;
|
|
88
145
|
/**
|
|
89
146
|
* Gets the row data at the specified display index.
|
|
90
147
|
*/
|
|
91
148
|
getRowAt(displayIndex: number): T | undefined;
|
|
92
149
|
get pinnedRows(): NonNullable<TableModelProps<T>['pinnedRows']>;
|
|
93
|
-
get columnMeta():
|
|
150
|
+
get columnMeta(): Atom.Atom<DxGridAxisMeta>;
|
|
94
151
|
get selection(): SelectionModel<T>;
|
|
95
|
-
/** @reactive */
|
|
96
|
-
get isViewDirty(): boolean;
|
|
97
152
|
get rowActions(): TableRowAction[];
|
|
98
153
|
protected _open(): Promise<void>;
|
|
99
154
|
private initializeColumnMeta;
|
|
100
155
|
private initializeEffects;
|
|
101
156
|
setRows: (obj: T[]) => void;
|
|
102
157
|
getRowCount: () => number;
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
158
|
+
getDraftRowCount(): number;
|
|
159
|
+
/** Atom for reactive access to draft rows. */
|
|
160
|
+
get draftRows(): Atom.Atom<DraftRow<T>[]>;
|
|
161
|
+
/** Gets the current draft rows. */
|
|
162
|
+
getDraftRows(): DraftRow<T>[];
|
|
108
163
|
/**
|
|
109
164
|
* Checks if a specific field path has validation errors for a given draft row.
|
|
110
165
|
* @param draftRowIndex - The index of the draft row to check
|
|
@@ -146,6 +201,31 @@ export declare class TableModel<T extends TableRow = TableRow> extends Resource
|
|
|
146
201
|
setColumnWidth(columnIndex: number, width: number): void;
|
|
147
202
|
pinRow(rowIndex: number, side: 'top' | 'bottom'): void;
|
|
148
203
|
unpinRow(rowIndex: number): void;
|
|
204
|
+
/**
|
|
205
|
+
* Sets the sort order for a field in-memory (local to this instance).
|
|
206
|
+
* Use saveView() to persist the sort to the view query.
|
|
207
|
+
*/
|
|
208
|
+
setSort(fieldId: string, direction: QueryAST.OrderDirection): void;
|
|
209
|
+
/**
|
|
210
|
+
* Toggles the sort direction for a field in-memory.
|
|
211
|
+
*/
|
|
212
|
+
toggleSort(fieldId: string): void;
|
|
213
|
+
/**
|
|
214
|
+
* Clears the in-memory sort order.
|
|
215
|
+
*/
|
|
216
|
+
clearSort(): void;
|
|
217
|
+
/**
|
|
218
|
+
* Saves the current in-memory sort to the view query AST.
|
|
219
|
+
* This persists the sort so it becomes the default for all viewers.
|
|
220
|
+
*/
|
|
149
221
|
saveView(): void;
|
|
222
|
+
/**
|
|
223
|
+
* Extracts the base query without order clauses.
|
|
224
|
+
*/
|
|
225
|
+
private _getBaseQuery;
|
|
226
|
+
/**
|
|
227
|
+
* Checks if the view has unsaved changes (in-memory sort differs from persisted sort).
|
|
228
|
+
*/
|
|
229
|
+
getViewDirty(): boolean;
|
|
150
230
|
}
|
|
151
231
|
//# sourceMappingURL=table-model.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-model.d.ts","sourceRoot":"","sources":["../../../../src/model/table-model.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"table-model.d.ts","sourceRoot":"","sources":["../../../../src/model/table-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type Registry } from '@effect-atom/atom-react';
|
|
1
2
|
import { type DxGridPlane, type DxGridPlaneCells, type DxGridPlaneRange } from '@dxos/react-ui-grid';
|
|
2
3
|
import { type SelectionMode } from './selection-model';
|
|
3
4
|
import { type TableModel, type TableRow } from './table-model';
|
|
@@ -8,9 +9,10 @@ import { type TableModel, type TableRow } from './table-model';
|
|
|
8
9
|
*/
|
|
9
10
|
export declare class TablePresentation<T extends TableRow = TableRow> {
|
|
10
11
|
private readonly model;
|
|
12
|
+
private readonly _registry;
|
|
11
13
|
private readonly _visibleRange;
|
|
12
14
|
private fieldProjectionCache;
|
|
13
|
-
constructor(model: TableModel<T
|
|
15
|
+
constructor(registry: Registry.Registry, model: TableModel<T>);
|
|
14
16
|
getCells(range: DxGridPlaneRange, plane: DxGridPlane): DxGridPlaneCells;
|
|
15
17
|
/**
|
|
16
18
|
* Gets a field projection, using cache if available within the current render pass.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-presentation.d.ts","sourceRoot":"","sources":["../../../../src/model/table-presentation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"table-presentation.d.ts","sourceRoot":"","sources":["../../../../src/model/table-presentation.ts"],"names":[],"mappings":"AAIA,OAAO,EAAQ,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAO9D,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EAEtB,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE/D;;;;GAIG;AACH,qBAAa,iBAAiB,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ;IAOxD,OAAO,CAAC,QAAQ,CAAC,KAAK;IANxB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkC;IAChE,OAAO,CAAC,oBAAoB,CAAkF;gBAG5G,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EACV,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;IAShC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,GAAG,gBAAgB;IAgD9E;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,cAAc;IA+JtB,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,gBAAgB;IAyCxB,OAAO,CAAC,cAAc;IAwBtB,OAAO,CAAC,uBAAuB;IAgB/B,OAAO,CAAC,oBAAoB;IAgB5B,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,gBAAgB;IAexB,OAAO,CAAC,mBAAmB;IA2B3B,OAAO,CAAC,iBAAiB;CAe1B;AAED,eAAO,MAAM,0BAA0B,GAAI,UAAU,OAAO,EAAE,eAAe,aAAa,yBAezF,CAAC"}
|
|
@@ -10,9 +10,10 @@ export declare class TableManager {
|
|
|
10
10
|
toggleSelectAll(): Promise<void>;
|
|
11
11
|
selection(index: number): Locator;
|
|
12
12
|
sortColumn(index: number, direction: 'ascending' | 'descending'): Promise<void>;
|
|
13
|
+
addRow(): Promise<void>;
|
|
13
14
|
addColumn({ label, format }: {
|
|
14
15
|
label: string;
|
|
15
|
-
format
|
|
16
|
+
format?: string;
|
|
16
17
|
}): Promise<void>;
|
|
17
18
|
}
|
|
18
19
|
//# sourceMappingURL=TableManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableManager.d.ts","sourceRoot":"","sources":["../../../../src/playwright/TableManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"TableManager.d.ts","sourceRoot":"","sources":["../../../../src/playwright/TableManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAgBvD,qBAAa,YAAY;IAGX,OAAO,CAAC,QAAQ,CAAC,IAAI;IAFjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;gBAET,IAAI,EAAE,IAAI;IAIvC,IAAW,IAAI,IAAI,aAAa,CAE/B;IAEY,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1C,SAAS,CAAC,KAAK,SAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnC,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAItC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI3B,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,GAAG,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAK/E,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvB,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAU7F"}
|
|
@@ -1,22 +1,25 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { type RefObject } from 'react';
|
|
2
|
+
import { type Database, type Type } from '@dxos/echo';
|
|
3
|
+
import { type ProjectionModel } from '@dxos/schema';
|
|
2
4
|
import { type TableController } from '../components';
|
|
3
|
-
import { TablePresentation } from '../model';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
export declare const useTestTableModel: () => {
|
|
9
|
-
schema: import("effect/Schema").Schema.AnyNoContext | undefined;
|
|
10
|
-
view: import("@dxos/live-object").Live<DataType.View> | undefined;
|
|
5
|
+
import { type TableModel, TablePresentation } from '../model';
|
|
6
|
+
import { Table } from '../types';
|
|
7
|
+
export type TestTableModel<T extends Type.AnyObj = Type.AnyObj> = {
|
|
8
|
+
schema: T | undefined;
|
|
9
|
+
table: Table.Table | undefined;
|
|
11
10
|
projection: ProjectionModel | undefined;
|
|
12
|
-
tableRef:
|
|
13
|
-
model:
|
|
14
|
-
presentation: TablePresentation
|
|
15
|
-
|
|
16
|
-
client: import("@dxos/client").Client;
|
|
11
|
+
tableRef: RefObject<TableController | null>;
|
|
12
|
+
model: TableModel | undefined;
|
|
13
|
+
presentation: TablePresentation | undefined;
|
|
14
|
+
db: Database.Database | undefined;
|
|
17
15
|
handleInsertRow: () => void;
|
|
18
16
|
handleSaveView: () => void;
|
|
19
|
-
handleDeleteRows: (
|
|
17
|
+
handleDeleteRows: (rowIndex: number, objects: any[]) => void;
|
|
20
18
|
handleDeleteColumn: (fieldId: string) => void;
|
|
21
19
|
};
|
|
20
|
+
/**
|
|
21
|
+
* Custom hook to create and manage a test table model for storybook demonstrations.
|
|
22
|
+
* Provides table data, schema, and handlers for table operations.
|
|
23
|
+
*/
|
|
24
|
+
export declare const useTestTableModel: <T extends Type.AnyObj = Type.AnyObj>() => TestTableModel<T>;
|
|
22
25
|
//# sourceMappingURL=useTestTableModel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTestTableModel.d.ts","sourceRoot":"","sources":["../../../../src/testing/useTestTableModel.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useTestTableModel.d.ts","sourceRoot":"","sources":["../../../../src/testing/useTestTableModel.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,SAAS,EAA4C,MAAM,OAAO,CAAC;AAEjF,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAE,MAAM,YAAY,CAAC;AAMtD,OAAO,EAAE,KAAK,eAAe,EAAwB,MAAM,cAAc,CAAC;AAE1E,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,OAAO,EAAE,KAAK,UAAU,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAIjC,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI;IAChE,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC;IACtB,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC;IAC/B,UAAU,EAAE,eAAe,GAAG,SAAS,CAAC;IACxC,QAAQ,EAAE,SAAS,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAC5C,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC;IAC9B,YAAY,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAC5C,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAC;IAClC,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAC7D,kBAAkB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,OAAK,cAAc,CAAC,CAAC,CA4FzF,CAAC"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
export declare const translationKey = "react-ui-table";
|
|
1
|
+
export declare const translationKey = "@dxos/react-ui-table";
|
|
2
2
|
export declare const translations: [{
|
|
3
3
|
readonly 'en-US': {
|
|
4
|
-
readonly "react-ui-table": {
|
|
4
|
+
readonly "@dxos/react-ui-table": {
|
|
5
5
|
readonly 'object placeholder': "New table";
|
|
6
6
|
readonly 'create object label': "Create table";
|
|
7
7
|
readonly 'table name placeholder': "Table name";
|
|
8
8
|
readonly 'settings title': "Table settings";
|
|
9
|
-
readonly 'table schema label': "
|
|
10
|
-
readonly 'new schema': "New
|
|
9
|
+
readonly 'table schema label': "Type";
|
|
10
|
+
readonly 'new schema': "New type";
|
|
11
11
|
readonly 'continue label': "Continue";
|
|
12
12
|
readonly 'create stack section label': "Create table";
|
|
13
13
|
readonly 'add row label': "Add row";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,cAAc,yBAAyB,CAAC;AAErD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BM,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import * as Schema from 'effect/Schema';
|
|
2
|
+
import { Type } from '@dxos/echo';
|
|
3
|
+
import { View } from '@dxos/echo';
|
|
4
|
+
import { type JsonSchemaType } from '@dxos/echo/internal';
|
|
5
|
+
export declare const Table: Type.Obj<{
|
|
6
|
+
readonly name?: string | undefined;
|
|
7
|
+
readonly view: import("@dxos/echo/internal").Ref<import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & View.View>;
|
|
8
|
+
readonly sizes: {
|
|
9
|
+
[x: string]: number;
|
|
10
|
+
};
|
|
11
|
+
}, Schema.Struct.Fields>;
|
|
12
|
+
export interface Table extends Schema.Schema.Type<typeof Table> {
|
|
13
|
+
}
|
|
14
|
+
type MakeProps = {
|
|
15
|
+
name?: string;
|
|
16
|
+
sizes?: Record<string, number>;
|
|
17
|
+
view: View.View;
|
|
18
|
+
/** Required to auto-size columns. */
|
|
19
|
+
jsonSchema?: JsonSchemaType;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Make a table as a view of a data set.
|
|
23
|
+
*/
|
|
24
|
+
export declare const make: ({ name, sizes, view, jsonSchema }: MakeProps) => Table;
|
|
25
|
+
export declare const TableV1: Type.Obj<{
|
|
26
|
+
readonly sizes: {
|
|
27
|
+
[x: string]: number;
|
|
28
|
+
};
|
|
29
|
+
}, Schema.Struct.Fields>;
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=Table.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../../src/types/Table.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAoC,IAAI,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAsC,KAAK,cAAc,EAAmB,MAAM,qBAAqB,CAAC;AAG/G,eAAO,MAAM,KAAK;;;;;;wBAqBjB,CAAC;AAEF,MAAM,WAAW,KAAM,SAAQ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC;CAAG;AAElE,KAAK,SAAS,GAAG;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;IAChB,qCAAqC;IACrC,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,IAAI,GAAI,mCAAwC,SAAS,KAAG,KA6BxE,CAAC;AAMF,eAAO,MAAM,OAAO;;;;wBAUnB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * as Table from './
|
|
1
|
+
export * as Table from './Table';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC"}
|
|
@@ -1,30 +1,33 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import type
|
|
3
|
-
import {
|
|
1
|
+
import { type Registry } from '@effect-atom/atom-react';
|
|
2
|
+
import type * as Types from 'effect/Types';
|
|
3
|
+
import { JsonSchema, type QueryAST, Type } from '@dxos/echo';
|
|
4
|
+
import { ProjectionModel, type SchemaPropertyDefinition } from '@dxos/schema';
|
|
5
|
+
import { Table } from '../types';
|
|
4
6
|
type PropertyDisplayProps = {
|
|
5
7
|
size: number;
|
|
6
8
|
title: string;
|
|
7
|
-
sort:
|
|
9
|
+
sort: QueryAST.OrderDirection;
|
|
8
10
|
};
|
|
9
11
|
export type TablePropertyDefinition = SchemaPropertyDefinition & Partial<PropertyDisplayProps>;
|
|
10
12
|
/**
|
|
11
13
|
* @deprecated
|
|
12
14
|
*/
|
|
13
|
-
export declare const getBaseSchema: ({ typename, properties, jsonSchema,
|
|
15
|
+
export declare const getBaseSchema: ({ schema, typename, properties, jsonSchema, }: {
|
|
16
|
+
schema?: Type.AnyEntity;
|
|
14
17
|
typename?: string;
|
|
15
18
|
properties?: TablePropertyDefinition[];
|
|
16
|
-
jsonSchema?:
|
|
17
|
-
schema?: Schema.Schema.AnyNoContext;
|
|
19
|
+
jsonSchema?: Types.DeepMutable<JsonSchema.JsonSchema>;
|
|
18
20
|
}) => {
|
|
19
21
|
typename: string;
|
|
20
|
-
jsonSchema:
|
|
22
|
+
jsonSchema: Types.DeepMutable<JsonSchema.JsonSchema>;
|
|
21
23
|
};
|
|
22
|
-
export declare const makeDynamicTable: ({ jsonSchema, properties, }: {
|
|
23
|
-
|
|
24
|
+
export declare const makeDynamicTable: ({ registry, jsonSchema, properties, }: {
|
|
25
|
+
registry: Registry.Registry;
|
|
26
|
+
jsonSchema: Types.DeepMutable<JsonSchema.JsonSchema>;
|
|
24
27
|
properties?: TablePropertyDefinition[];
|
|
25
28
|
}) => {
|
|
26
29
|
projection: ProjectionModel;
|
|
27
|
-
|
|
30
|
+
object: Table.Table;
|
|
28
31
|
};
|
|
29
32
|
export {};
|
|
30
33
|
//# sourceMappingURL=dynamic-table.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic-table.d.ts","sourceRoot":"","sources":["../../../../src/util/dynamic-table.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"dynamic-table.d.ts","sourceRoot":"","sources":["../../../../src/util/dynamic-table.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAU,UAAU,EAAqB,KAAK,QAAQ,EAAO,IAAI,EAAE,MAAM,YAAY,CAAC;AAE7F,OAAO,EACL,eAAe,EACf,KAAK,wBAAwB,EAI9B,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,CAAC,cAAc,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,wBAAwB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAE/F;;GAEG;AAEH,eAAO,MAAM,aAAa,GAAI,+CAK3B;IACD,MAAM,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACvC,UAAU,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;CACvD,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;CAW3E,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,uCAI9B;IACD,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC5B,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IACrD,UAAU,CAAC,EAAE,uBAAuB,EAAE,CAAC;CACxC,KAAG;IAAE,UAAU,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAA;CAoBrD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dynamic-table.test.d.ts","sourceRoot":"","sources":["../../../../src/util/dynamic-table.test.ts"],"names":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/util/index.ts"],"names":[],"mappings":"AAIA,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/util/index.ts"],"names":[],"mappings":"AAIA,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type QueryAST } from '@dxos/echo';
|
|
2
|
+
/**
|
|
3
|
+
* Extracts order clauses from a query AST.
|
|
4
|
+
* Handles nested structures (options, order, etc.).
|
|
5
|
+
*/
|
|
6
|
+
export declare const extractOrder: (queryAst: QueryAST.Query) => readonly QueryAST.Order[] | undefined;
|
|
7
|
+
//# sourceMappingURL=query-ast.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-ast.d.ts","sourceRoot":"","sources":["../../../../src/util/query-ast.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,UAAU,QAAQ,CAAC,KAAK,KAAG,SAAS,QAAQ,CAAC,KAAK,EAAE,GAAG,SAWnF,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Format, type QueryAST } from '@dxos/echo';
|
|
2
|
+
/**
|
|
3
|
+
* Gets a normalized sort value for a given value and format.
|
|
4
|
+
* This ensures consistent sorting behavior across different data types.
|
|
5
|
+
*/
|
|
6
|
+
export declare const getSortValue: (value: any, format: Format.TypeFormat) => any;
|
|
7
|
+
/**
|
|
8
|
+
* Compares two values for sorting based on the field format.
|
|
9
|
+
* Handles dates, numbers, and strings appropriately.
|
|
10
|
+
*/
|
|
11
|
+
export declare const compareValues: (aValue: any, bValue: any, format: Format.TypeFormat, direction: QueryAST.OrderDirection) => number;
|
|
12
|
+
//# sourceMappingURL=sort.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sort.d.ts","sourceRoot":"","sources":["../../../../src/util/sort.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEnD;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,GAAG,EAAE,QAAQ,MAAM,CAAC,UAAU,KAAG,GA2CpE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,GACxB,QAAQ,GAAG,EACX,QAAQ,GAAG,EACX,QAAQ,MAAM,CAAC,UAAU,EACzB,WAAW,QAAQ,CAAC,cAAc,KACjC,MAyBF,CAAC"}
|