@dxos/react-ui-table 0.8.4-main.67995b8 → 0.8.4-main.70d3990

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 (143) hide show
  1. package/dist/lib/browser/chunk-5XWSB3JP.mjs +71 -0
  2. package/dist/lib/browser/chunk-5XWSB3JP.mjs.map +7 -0
  3. package/dist/lib/browser/{chunk-5XLSHLOG.mjs → chunk-KNC7XYT6.mjs} +573 -541
  4. package/dist/lib/browser/chunk-KNC7XYT6.mjs.map +7 -0
  5. package/dist/lib/browser/index.mjs +625 -698
  6. package/dist/lib/browser/index.mjs.map +4 -4
  7. package/dist/lib/browser/meta.json +1 -1
  8. package/dist/lib/browser/testing/index.mjs +16 -24
  9. package/dist/lib/browser/testing/index.mjs.map +3 -3
  10. package/dist/lib/browser/types/index.mjs +3 -3
  11. package/dist/lib/node-esm/{chunk-Y66YLSTC.mjs → chunk-CWSGS3Y2.mjs} +573 -541
  12. package/dist/lib/node-esm/chunk-CWSGS3Y2.mjs.map +7 -0
  13. package/dist/lib/node-esm/chunk-MKTMOY46.mjs +72 -0
  14. package/dist/lib/node-esm/chunk-MKTMOY46.mjs.map +7 -0
  15. package/dist/lib/node-esm/index.mjs +625 -698
  16. package/dist/lib/node-esm/index.mjs.map +4 -4
  17. package/dist/lib/node-esm/meta.json +1 -1
  18. package/dist/lib/node-esm/testing/index.mjs +16 -24
  19. package/dist/lib/node-esm/testing/index.mjs.map +3 -3
  20. package/dist/lib/node-esm/types/index.mjs +3 -3
  21. package/dist/types/src/components/Table/ColumnActionsMenu.d.ts +1 -1
  22. package/dist/types/src/components/Table/ColumnActionsMenu.d.ts.map +1 -1
  23. package/dist/types/src/components/Table/ColumnSettings.d.ts +1 -1
  24. package/dist/types/src/components/Table/ColumnSettings.d.ts.map +1 -1
  25. package/dist/types/src/components/Table/DynamicTable.d.ts +2 -2
  26. package/dist/types/src/components/Table/DynamicTable.d.ts.map +1 -1
  27. package/dist/types/src/components/Table/DynamicTable.stories.d.ts +51 -3
  28. package/dist/types/src/components/Table/DynamicTable.stories.d.ts.map +1 -1
  29. package/dist/types/src/components/Table/Relations.stories.d.ts +108 -0
  30. package/dist/types/src/components/Table/Relations.stories.d.ts.map +1 -0
  31. package/dist/types/src/components/Table/RowActionsMenu.d.ts +1 -1
  32. package/dist/types/src/components/Table/RowActionsMenu.d.ts.map +1 -1
  33. package/dist/types/src/components/Table/Table.d.ts +8 -4
  34. package/dist/types/src/components/Table/Table.d.ts.map +1 -1
  35. package/dist/types/src/components/Table/Table.stories.d.ts +105 -4
  36. package/dist/types/src/components/Table/Table.stories.d.ts.map +1 -1
  37. package/dist/types/src/components/TableCellEditor/CellValidationMessage.d.ts.map +1 -1
  38. package/dist/types/src/components/TableCellEditor/FormCellEditor.d.ts +12 -6
  39. package/dist/types/src/components/TableCellEditor/FormCellEditor.d.ts.map +1 -1
  40. package/dist/types/src/components/TableCellEditor/TableCellEditor.d.ts +12 -17
  41. package/dist/types/src/components/TableCellEditor/TableCellEditor.d.ts.map +1 -1
  42. package/dist/types/src/components/TableCellEditor/TableCellEditor.stories.d.ts +39 -4
  43. package/dist/types/src/components/TableCellEditor/TableCellEditor.stories.d.ts.map +1 -1
  44. package/dist/types/src/components/TableCellEditor/index.d.ts +1 -0
  45. package/dist/types/src/components/TableCellEditor/index.d.ts.map +1 -1
  46. package/dist/types/src/components/TableToolbar/TableToolbar.d.ts +2 -2
  47. package/dist/types/src/components/TableToolbar/TableToolbar.d.ts.map +1 -1
  48. package/dist/types/src/components/testing.d.ts +3 -5
  49. package/dist/types/src/components/testing.d.ts.map +1 -1
  50. package/dist/types/src/hooks/index.d.ts +2 -1
  51. package/dist/types/src/hooks/index.d.ts.map +1 -1
  52. package/dist/types/src/hooks/useAddRow.d.ts +3 -2
  53. package/dist/types/src/hooks/useAddRow.d.ts.map +1 -1
  54. package/dist/types/src/hooks/useProjectionModel.d.ts +5 -0
  55. package/dist/types/src/hooks/useProjectionModel.d.ts.map +1 -0
  56. package/dist/types/src/hooks/useTableModel.d.ts +5 -6
  57. package/dist/types/src/hooks/useTableModel.d.ts.map +1 -1
  58. package/dist/types/src/model/modal-controller.d.ts +0 -7
  59. package/dist/types/src/model/modal-controller.d.ts.map +1 -1
  60. package/dist/types/src/model/selection-model.d.ts.map +1 -1
  61. package/dist/types/src/model/table-model.d.ts +14 -14
  62. package/dist/types/src/model/table-model.d.ts.map +1 -1
  63. package/dist/types/src/model/table-presentation.d.ts +2 -1
  64. package/dist/types/src/model/table-presentation.d.ts.map +1 -1
  65. package/dist/types/src/model/table-sorting.d.ts +9 -6
  66. package/dist/types/src/model/table-sorting.d.ts.map +1 -1
  67. package/dist/types/src/playwright/TableManager.d.ts +1 -1
  68. package/dist/types/src/playwright/TableManager.d.ts.map +1 -1
  69. package/dist/types/src/testing/useTestTableModel.d.ts +21 -34
  70. package/dist/types/src/testing/useTestTableModel.d.ts.map +1 -1
  71. package/dist/types/src/translations.d.ts +2 -2
  72. package/dist/types/src/types/Table.d.ts +28 -0
  73. package/dist/types/src/types/Table.d.ts.map +1 -0
  74. package/dist/types/src/types/index.d.ts +1 -1
  75. package/dist/types/src/types/index.d.ts.map +1 -1
  76. package/dist/types/src/util/dynamic-table.d.ts +9 -9
  77. package/dist/types/src/util/dynamic-table.d.ts.map +1 -1
  78. package/dist/types/src/util/index.d.ts +0 -1
  79. package/dist/types/src/util/index.d.ts.map +1 -1
  80. package/dist/types/src/util/schema.d.ts +1 -1
  81. package/dist/types/src/util/schema.d.ts.map +1 -1
  82. package/dist/types/src/util/table-buttons.d.ts.map +1 -1
  83. package/dist/types/src/util/table-controls.d.ts.map +1 -1
  84. package/dist/types/tsconfig.tsbuildinfo +1 -1
  85. package/package.json +61 -59
  86. package/src/components/Table/ColumnActionsMenu.tsx +1 -1
  87. package/src/components/Table/ColumnSettings.tsx +1 -1
  88. package/src/components/Table/DynamicTable.stories.tsx +21 -17
  89. package/src/components/Table/DynamicTable.tsx +19 -13
  90. package/src/components/Table/Relations.stories.tsx +237 -0
  91. package/src/components/Table/RowActionsMenu.tsx +23 -15
  92. package/src/components/Table/Table.stories.tsx +103 -86
  93. package/src/components/Table/Table.tsx +140 -115
  94. package/src/components/TableCellEditor/CellValidationMessage.tsx +1 -1
  95. package/src/components/TableCellEditor/FormCellEditor.tsx +153 -42
  96. package/src/components/TableCellEditor/TableCellEditor.stories.tsx +28 -66
  97. package/src/components/TableCellEditor/TableCellEditor.tsx +75 -225
  98. package/src/components/TableCellEditor/index.ts +1 -0
  99. package/src/components/TableToolbar/TableToolbar.tsx +34 -24
  100. package/src/components/testing.ts +4 -4
  101. package/src/hooks/index.ts +2 -1
  102. package/src/hooks/useAddRow.ts +7 -5
  103. package/src/hooks/useProjectionModel.ts +19 -0
  104. package/src/hooks/useTableModel.ts +12 -14
  105. package/src/model/modal-controller.ts +1 -29
  106. package/src/model/selection-model.ts +3 -2
  107. package/src/model/table-model.test.ts +21 -12
  108. package/src/model/table-model.ts +62 -56
  109. package/src/model/table-presentation.test.ts +25 -23
  110. package/src/model/table-presentation.ts +82 -41
  111. package/src/model/table-sorting.ts +32 -14
  112. package/src/playwright/TableManager.ts +3 -3
  113. package/src/playwright/smoke.spec.ts +132 -38
  114. package/src/testing/useTestTableModel.ts +34 -22
  115. package/src/translations.ts +2 -2
  116. package/src/types/Table.ts +89 -0
  117. package/src/types/index.ts +1 -1
  118. package/src/util/dynamic-table.ts +20 -24
  119. package/src/util/index.ts +0 -1
  120. package/src/util/schema.ts +4 -4
  121. package/src/util/table-buttons.ts +4 -3
  122. package/src/util/table-controls.ts +4 -1
  123. package/dist/lib/browser/chunk-5XLSHLOG.mjs.map +0 -7
  124. package/dist/lib/browser/chunk-L2LSB6KV.mjs +0 -18
  125. package/dist/lib/browser/chunk-L2LSB6KV.mjs.map +0 -7
  126. package/dist/lib/node-esm/chunk-NXZ4CJYX.mjs +0 -20
  127. package/dist/lib/node-esm/chunk-NXZ4CJYX.mjs.map +0 -7
  128. package/dist/lib/node-esm/chunk-Y66YLSTC.mjs.map +0 -7
  129. package/dist/types/src/components/Table/CreateRefPanel.d.ts +0 -9
  130. package/dist/types/src/components/Table/CreateRefPanel.d.ts.map +0 -1
  131. package/dist/types/src/components/Table/relations.stories.d.ts +0 -9
  132. package/dist/types/src/components/Table/relations.stories.d.ts.map +0 -1
  133. package/dist/types/src/components/TableCellEditor/extension.d.ts +0 -13
  134. package/dist/types/src/components/TableCellEditor/extension.d.ts.map +0 -1
  135. package/dist/types/src/types/schema.d.ts +0 -8
  136. package/dist/types/src/types/schema.d.ts.map +0 -1
  137. package/dist/types/src/util/table.d.ts +0 -11
  138. package/dist/types/src/util/table.d.ts.map +0 -1
  139. package/src/components/Table/CreateRefPanel.tsx +0 -86
  140. package/src/components/Table/relations.stories.tsx +0 -116
  141. package/src/components/TableCellEditor/extension.ts +0 -61
  142. package/src/types/schema.ts +0 -16
  143. package/src/util/table.ts +0 -49
@@ -1,21 +1,25 @@
1
- import { type Schema } from 'effect/Schema';
1
+ import type * as Schema from 'effect/Schema';
2
2
  import React, { type PropsWithChildren } from 'react';
3
- import { type Client } from '@dxos/client';
3
+ import { type Client } from '@dxos/react-client';
4
4
  import { type DxGridPosition } from '@dxos/react-ui-grid';
5
- import { type TableModel, type TablePresentation } from '../../model';
5
+ import { type InsertRowResult, type TableModel, type TablePresentation } from '../../model';
6
+ import { type OnCreateHandler } from '../TableCellEditor';
6
7
  export type TableRootProps = PropsWithChildren<{
7
8
  role?: string;
8
9
  }>;
9
10
  export type TableController = {
10
11
  update?: (cell?: DxGridPosition) => void;
12
+ handleInsertRowResult?: (insertRowResult?: InsertRowResult) => void;
11
13
  };
12
14
  export type TableMainProps = {
13
15
  model?: TableModel;
14
16
  presentation?: TablePresentation;
15
- schema?: Schema.AnyNoContext;
17
+ schema?: Schema.Schema.AnyNoContext;
16
18
  client?: Client;
17
19
  ignoreAttention?: boolean;
20
+ onCreate?: OnCreateHandler;
18
21
  onRowClick?: (row: any) => void;
22
+ testId?: string;
19
23
  };
20
24
  export declare const Table: {
21
25
  Root: ({ children, role }: TableRootProps) => React.JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/Table.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,EAEZ,KAAK,iBAAiB,EAQvB,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAQ3C,OAAO,EAGL,KAAK,cAAc,EAOpB,MAAM,qBAAqB,CAAC;AAQ7B,OAAO,EAAmB,KAAK,UAAU,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AASvF,MAAM,MAAM,cAAc,GAAG,iBAAiB,CAAC;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAwBlE,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;CACjC,CAAC;AAmUF,eAAO,MAAM,KAAK;+BArWiC,cAAc;;CAwWhE,CAAC"}
1
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/Table.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,EAEZ,KAAK,iBAAiB,EAQvB,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAIL,KAAK,cAAc,EAMpB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAAE,KAAK,eAAe,EAAmB,KAAK,UAAU,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAE7G,OAAO,EAAE,KAAK,eAAe,EAA+C,MAAM,oBAAoB,CAAC;AAavG,MAAM,MAAM,cAAc,GAAG,iBAAiB,CAAC;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAwBlE,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IACzC,qBAAqB,CAAC,EAAE,CAAC,eAAe,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;CACrE,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AA2VF,eAAO,MAAM,KAAK;+BAhYiC,cAAc;;CAmYhE,CAAC"}
@@ -1,11 +1,112 @@
1
- import '@dxos-theme';
2
- import { type StoryObj, type Meta } from '@storybook/react-vite';
1
+ import { type Meta, type StoryObj } from '@storybook/react-vite';
2
+ import React from 'react';
3
3
  type StoryProps = {
4
4
  rows?: number;
5
5
  };
6
- declare const meta: Meta<StoryProps>;
6
+ declare const meta: {
7
+ title: string;
8
+ render: () => React.JSX.Element;
9
+ decorators: import("@storybook/react").Decorator[];
10
+ parameters: {
11
+ layout: string;
12
+ controls: {
13
+ disable: boolean;
14
+ };
15
+ translations: ({
16
+ readonly 'en-US': {
17
+ readonly "react-ui-table": {
18
+ readonly 'object placeholder': "New table";
19
+ readonly 'create object label': "Create table";
20
+ readonly 'table name placeholder': "Table name";
21
+ readonly 'settings title': "Table settings";
22
+ readonly 'table schema label': "Type";
23
+ readonly 'new schema': "New type";
24
+ readonly 'continue label': "Continue";
25
+ readonly 'create stack section label': "Create table";
26
+ readonly 'add row label': "Add row";
27
+ readonly 'create comment': "Create thread";
28
+ readonly 'column action sort descending': "Sort Descending";
29
+ readonly 'column action sort ascending': "Sort Ascending";
30
+ readonly 'column action clear sorting': "Clear Sorting";
31
+ readonly 'column action settings': "Column Settings";
32
+ readonly 'column action delete': "Delete Column";
33
+ readonly 'delete row label': "Delete row";
34
+ readonly 'bulk delete row label': "Delete selected rows";
35
+ readonly 'column deleted label': "Column deleted";
36
+ readonly 'new column button label': "Create column";
37
+ readonly 'create new object label': "Create new object “{{text}}”";
38
+ readonly 'save view label': "Save changes to view";
39
+ };
40
+ };
41
+ } | {
42
+ readonly 'en-US': {
43
+ readonly "react-ui-form": {
44
+ readonly "fields label": "Fields";
45
+ readonly "hidden fields label": "Hidden Fields";
46
+ readonly "empty readonly ref field label": "(none)";
47
+ readonly "add property button label": "Add property";
48
+ readonly "field property label": "Property";
49
+ readonly "field property placeholder": "Property name";
50
+ readonly "field format label": "Type";
51
+ readonly "field path label": "Field path";
52
+ readonly "add field": "Add field";
53
+ readonly "delete field": "Delete field";
54
+ readonly "field limit reached": "Maximum number of fields reached";
55
+ readonly "boolean input true value": "Yes";
56
+ readonly "boolean input false value": "No";
57
+ readonly "show field label": "Show field";
58
+ readonly "hide field label": "Hide field";
59
+ readonly "delete field label": "Delete field";
60
+ readonly "ref field combobox input placeholder": "Search\u2026";
61
+ readonly "ref field placeholder_one": "Select\u2026";
62
+ readonly "ref field placeholder_other": "Select items\u2026";
63
+ readonly "cancel button label": "Cancel";
64
+ readonly "save button label": "Save";
65
+ readonly "format boolean": "Boolean";
66
+ readonly "format currency": "Currency";
67
+ readonly "format date": "Date";
68
+ readonly "format date-time": "DateTime";
69
+ readonly "format did": "DID";
70
+ readonly "format duration": "Duration";
71
+ readonly "format dxn": "DXN";
72
+ readonly "format email": "Email";
73
+ readonly "format formula": "Formula";
74
+ readonly "format hostname": "Hostname";
75
+ readonly "format integer": "Integer";
76
+ readonly "format json": "JSON";
77
+ readonly "format lnglat": "Geopoint";
78
+ readonly "format markdown": "Markdown";
79
+ readonly "format percent": "Percent";
80
+ readonly "format ref": "Reference";
81
+ readonly "format regex": "RegExp";
82
+ readonly "format string": "String";
83
+ readonly "format single-select": "Select";
84
+ readonly "format multi-select": "Multi-select";
85
+ readonly "format text": "Long text";
86
+ readonly "format time": "Time";
87
+ readonly "format timestamp": "Timestamp";
88
+ readonly "format user": "User";
89
+ readonly "format number": "Number";
90
+ readonly "format uri": "URI";
91
+ readonly "format url": "URL";
92
+ readonly "format uuid": "UUID";
93
+ readonly "latitude label": "Latitude";
94
+ readonly "longitude label": "Longitude";
95
+ readonly "select option label": "Label";
96
+ readonly "select option label placeholder": "Option label";
97
+ readonly "select option color": "Color";
98
+ readonly "select option delete": "Delete";
99
+ readonly "select option add": "Add option";
100
+ readonly "system schema title": "System type";
101
+ readonly "system schema description": "This is a system type and cannot be modified, though the view can still be configured.";
102
+ };
103
+ };
104
+ })[];
105
+ };
106
+ };
7
107
  export default meta;
8
- export declare const Default: {};
108
+ type Story = StoryObj<typeof meta>;
109
+ export declare const Default: Story;
9
110
  export declare const StaticSchema: StoryObj;
10
111
  export declare const ArrayOfObjects: StoryObj;
11
112
  export declare const Tags: Meta<StoryProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"Table.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/Table.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAE,MAAM,uBAAuB,CAAC;AA6IjE,KAAK,UAAU,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAQpC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,UAAU,CAkC1B,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,OAAO,IAAK,CAAC;AAE1B,eAAO,MAAM,YAAY,EAAE,QAsB1B,CAAC;AAmBF,eAAO,MAAM,cAAc,EAAE,QAuB5B,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAAI,CAAC,UAAU,CAsDjC,CAAC"}
1
+ {"version":3,"file":"Table.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/Table.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAsB,MAAM,OAAO,CAAC;AA6I3C,KAAK,UAAU,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAQpC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuC6B,CAAC;AAExC,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,YAAY,EAAE,QAwB1B,CAAC;AAmBF,eAAO,MAAM,cAAc,EAAE,QA6B5B,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAAI,CAAC,UAAU,CAwDjC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"CellValidationMessage.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableCellEditor/CellValidationMessage.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAkB,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3E,MAAM,MAAM,0BAA0B,GAAG;IACvC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,4CAInC,eAAe,CAAC,0BAA0B,CAAC,6BAyB7C,CAAC"}
1
+ {"version":3,"file":"CellValidationMessage.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableCellEditor/CellValidationMessage.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,eAAe,EAAkB,MAAM,qBAAqB,CAAC;AAE3E,MAAM,MAAM,0BAA0B,GAAG;IACvC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,4CAInC,eAAe,CAAC,0BAA0B,CAAC,6BAyB7C,CAAC"}
@@ -1,14 +1,20 @@
1
- import { type Schema } from 'effect';
1
+ import * as Schema from 'effect/Schema';
2
2
  import React from 'react';
3
+ import { Ref } from '@dxos/echo/internal';
4
+ import { type Client } from '@dxos/react-client';
5
+ import { type FormProps } from '@dxos/react-ui-form';
3
6
  import { type FieldProjection } from '@dxos/schema';
4
- import { type TableModel } from '../../model';
5
- type FormCellEditorProps = {
7
+ import { type ModalController, type TableModel } from '../../model';
8
+ export type OnCreateHandler = (schema: Schema.Schema.AnyNoContext, values: any) => Parameters<typeof Ref.make>[0];
9
+ export type FormCellEditorProps = {
6
10
  fieldProjection: FieldProjection;
7
11
  model?: TableModel;
8
12
  schema?: Schema.Schema.AnyNoContext;
9
13
  onSave?: () => void;
14
+ onCreate?: OnCreateHandler;
15
+ client?: Client;
16
+ modals?: ModalController;
10
17
  __gridScope: any;
11
- };
12
- export declare const FormCellEditor: ({ fieldProjection, model, schema, onSave, __gridScope }: FormCellEditorProps) => React.JSX.Element | null;
13
- export {};
18
+ } & Omit<FormProps<any>, 'values' | 'schema' | 'onCreate'>;
19
+ export declare const FormCellEditor: ({ fieldProjection, model, schema, onSave, client, modals, onCreate, __gridScope, ...formProps }: FormCellEditorProps) => React.JSX.Element | null;
14
20
  //# sourceMappingURL=FormCellEditor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormCellEditor.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableCellEditor/FormCellEditor.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,KAA4D,MAAM,OAAO,CAAC;AAOjF,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C,KAAK,mBAAmB,GAAG;IACzB,eAAe,EAAE,eAAe,CAAC;IACjC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,WAAW,EAAE,GAAG,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,yDAAyD,mBAAmB,6BA8E1G,CAAC"}
1
+ {"version":3,"file":"FormCellEditor.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableCellEditor/FormCellEditor.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAA4D,MAAM,OAAO,CAAC;AAGjF,OAAO,EAAU,GAAG,EAAiC,MAAM,qBAAqB,CAAC;AAGjF,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE3D,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAIpE,MAAM,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,KAAK,UAAU,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAElH,MAAM,MAAM,mBAAmB,GAAG;IAChC,eAAe,EAAE,eAAe,CAAC;IACjC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACpC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,WAAW,EAAE,GAAG,CAAC;CAClB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC,CAAC;AAI3D,eAAO,MAAM,cAAc,GAAI,iGAU5B,mBAAmB,6BAuKrB,CAAC"}
@@ -1,31 +1,26 @@
1
1
  import { type Completion } from '@codemirror/autocomplete';
2
- import { type Schema } from 'effect/Schema';
2
+ import type * as Schema from 'effect/Schema';
3
3
  import React from 'react';
4
- import { type DxGrid } from '@dxos/lit-grid';
5
- import { type DxGridPlanePosition, type GridScopedProps } from '@dxos/react-ui-grid';
6
- import { type FieldProjection } from '@dxos/schema';
7
- import { type TableModel, type ModalController } from '../../model';
8
- declare const newValue: unique symbol;
4
+ import type { Client } from '@dxos/client';
5
+ import { type DxGridAxis, type DxGridPosition } from '@dxos/lit-grid';
6
+ import { type GridScopedProps } from '@dxos/react-ui-grid';
7
+ import { type ModalController, type TableModel } from '../../model';
8
+ import { type OnCreateHandler } from './FormCellEditor';
9
9
  /**
10
10
  * Option to create new object/value.
11
11
  */
12
- export declare const createOption: (text: string) => {
13
- [newValue]: boolean;
14
- text: string;
15
- };
16
12
  export type QueryResult = Pick<Completion, 'label'> & {
17
13
  data: any;
18
14
  };
19
15
  export type TableCellEditorProps = {
20
16
  model?: TableModel;
21
17
  modals?: ModalController;
22
- schema?: Schema.AnyNoContext;
23
- onEnter?: (cell: DxGridPlanePosition) => void;
24
- onFocus?: DxGrid['refocus'];
18
+ schema?: Schema.Schema.AnyNoContext;
19
+ onFocus?: (axis?: DxGridAxis, delta?: -1 | 0 | 1, cell?: DxGridPosition) => void;
20
+ onCreate?: OnCreateHandler;
25
21
  onSave?: () => void;
26
- onQuery?: (field: FieldProjection, text: string) => Promise<QueryResult[]>;
22
+ client?: Client;
27
23
  };
28
- export declare const TableValueEditor: ({ model, modals, schema, onEnter, onFocus, onSave, onQuery, __gridScope, }: GridScopedProps<TableCellEditorProps>) => React.JSX.Element;
29
- export declare const TableCellEditor: ({ model, modals, onEnter, onFocus, onQuery, onSave, __gridScope, }: GridScopedProps<TableCellEditorProps>) => React.JSX.Element;
30
- export {};
24
+ export declare const TableValueEditor: ({ model, modals, schema, onFocus, onSave, onCreate, client, __gridScope, }: GridScopedProps<TableCellEditorProps>) => React.JSX.Element;
25
+ export declare const TableCellEditor: ({ model, modals, onFocus, onSave, __gridScope, }: GridScopedProps<TableCellEditorProps>) => React.JSX.Element;
31
26
  //# sourceMappingURL=TableCellEditor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableCellEditor.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableCellEditor/TableCellEditor.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAA4D,MAAM,OAAO,CAAC;AAIjF,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAKL,KAAK,mBAAmB,EAMxB,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAKpD,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAEpE,QAAA,MAAM,QAAQ,eAAyB,CAAC;AAExC;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM;;;CAAiC,CAAC;AAI3E,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG;IAAE,IAAI,EAAE,GAAG,CAAA;CAAE,CAAC;AAEpE,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC;IAC7B,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;CAC5E,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,4EAS9B,eAAe,CAAC,oBAAoB,CAAC,sBA2CvC,CAAC;AAIF,eAAO,MAAM,eAAe,GAAI,oEAQ7B,eAAe,CAAC,oBAAoB,CAAC,sBA8RvC,CAAC"}
1
+ {"version":3,"file":"TableCellEditor.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableCellEditor/TableCellEditor.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAiD,MAAM,OAAO,CAAC;AAGtE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAG3C,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAML,KAAK,eAAe,EAIrB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAGpE,OAAO,EAAkB,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExE;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG;IAAE,IAAI,EAAE,GAAG,CAAA;CAAE,CAAC;AAEpE,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACpC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IACjF,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAKF,eAAO,MAAM,gBAAgB,GAAI,4EAS9B,eAAe,CAAC,oBAAoB,CAAC,sBAqCvC,CAAC;AAIF,eAAO,MAAM,eAAe,GAAI,kDAM7B,eAAe,CAAC,oBAAoB,CAAC,sBAqJvC,CAAC"}
@@ -1,11 +1,46 @@
1
- import '@dxos-theme';
2
- import { type Meta, type StoryObj } from '@storybook/react-vite';
1
+ import { type StoryObj } from '@storybook/react-vite';
2
+ import React from 'react';
3
3
  import { type GridEditing } from '@dxos/react-ui-grid';
4
4
  type StoryProps = {
5
5
  editing: GridEditing;
6
6
  };
7
- declare const meta: Meta<StoryProps>;
7
+ declare const meta: {
8
+ title: string;
9
+ component: ({ editing }: StoryProps) => React.JSX.Element;
10
+ render: ({ editing }: StoryProps) => React.JSX.Element;
11
+ decorators: import("@storybook/react").Decorator[];
12
+ parameters: {
13
+ translations: [{
14
+ readonly 'en-US': {
15
+ readonly "react-ui-table": {
16
+ readonly 'object placeholder': "New table";
17
+ readonly 'create object label': "Create table";
18
+ readonly 'table name placeholder': "Table name";
19
+ readonly 'settings title': "Table settings";
20
+ readonly 'table schema label': "Type";
21
+ readonly 'new schema': "New type";
22
+ readonly 'continue label': "Continue";
23
+ readonly 'create stack section label': "Create table";
24
+ readonly 'add row label': "Add row";
25
+ readonly 'create comment': "Create thread";
26
+ readonly 'column action sort descending': "Sort Descending";
27
+ readonly 'column action sort ascending': "Sort Ascending";
28
+ readonly 'column action clear sorting': "Clear Sorting";
29
+ readonly 'column action settings': "Column Settings";
30
+ readonly 'column action delete': "Delete Column";
31
+ readonly 'delete row label': "Delete row";
32
+ readonly 'bulk delete row label': "Delete selected rows";
33
+ readonly 'column deleted label': "Column deleted";
34
+ readonly 'new column button label': "Create column";
35
+ readonly 'create new object label': "Create new object “{{text}}”";
36
+ readonly 'save view label': "Save changes to view";
37
+ };
38
+ };
39
+ }];
40
+ layout: string;
41
+ };
42
+ };
8
43
  export default meta;
9
- type Story = StoryObj<StoryProps>;
44
+ type Story = StoryObj<typeof meta>;
10
45
  export declare const Default: Story;
11
46
  //# sourceMappingURL=TableCellEditor.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableCellEditor.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableCellEditor/TableCellEditor.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AASjE,OAAO,EAAwB,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAW7E,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,WAAW,CAAC;CACtB,CAAC;AAqDF,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,UAAU,CA4B1B,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;AAElC,eAAO,MAAM,OAAO,EAAE,KAQrB,CAAC"}
1
+ {"version":3,"file":"TableCellEditor.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableCellEditor/TableCellEditor.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAQ,KAAK,WAAW,EAAkB,MAAM,qBAAqB,CAAC;AAU7E,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE,WAAW,CAAC;CACtB,CAAC;AAkBF,QAAA,MAAM,IAAI;;6BAhByB,UAAU;0BAAV,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8CR,CAAC;AAEtC,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAQrB,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export * from './TableCellEditor';
2
+ export { type OnCreateHandler } from './FormCellEditor';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableCellEditor/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableCellEditor/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Rx } from '@effect-rx/rx-react';
1
+ import { Atom } from '@effect-atom/atom-react';
2
2
  import React from 'react';
3
3
  import { type ThemedClassName } from '@dxos/react-ui';
4
4
  import { type ActionGraphProps, type MenuAction } from '@dxos/react-ui-menu';
@@ -14,7 +14,7 @@ export type TableToolbarProps = ThemedClassName<TableToolbarState & {
14
14
  onAdd: () => void;
15
15
  onSave: () => void;
16
16
  attendableId?: string;
17
- customActions?: Rx.Rx<ActionGraphProps>;
17
+ customActions?: Atom.Atom<ActionGraphProps>;
18
18
  }>;
19
19
  export declare const TableToolbar: ({ classNames, viewDirty, attendableId, onAdd, onSave, customActions, }: TableToolbarProps) => React.JSX.Element;
20
20
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"TableToolbar.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableToolbar/TableToolbar.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AACzC,OAAO,KAAkB,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAGL,KAAK,gBAAgB,EAGrB,KAAK,UAAU,EAIhB,MAAM,qBAAqB,CAAC;AAK7B,MAAM,MAAM,4BAA4B,GAAG;IAAE,IAAI,EAAE,sBAAsB,CAAA;CAAE,CAAC;AAE5E,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,4BAA4B,CAAC,CAAC;AAE1E,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;AAEzE,KAAK,iBAAiB,GAAG,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAEzD,MAAM,MAAM,iBAAiB,GAAG,eAAe,CAC7C,iBAAiB,GAAG;IAClB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC;CACzC,CACF,CAAC;AA0CF,eAAO,MAAM,YAAY,GAAI,wEAO1B,iBAAiB,sBAanB,CAAC"}
1
+ {"version":3,"file":"TableToolbar.d.ts","sourceRoot":"","sources":["../../../../../src/components/TableToolbar/TableToolbar.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,KAAkB,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAGL,KAAK,gBAAgB,EACrB,KAAK,UAAU,EAMhB,MAAM,qBAAqB,CAAC;AAK7B,MAAM,MAAM,4BAA4B,GAAG;IAAE,IAAI,EAAE,sBAAsB,CAAA;CAAE,CAAC;AAE5E,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,4BAA4B,CAAC,CAAC;AAE1E,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;AAEzE,KAAK,iBAAiB,GAAG,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAIzD,MAAM,MAAM,iBAAiB,GAAG,eAAe,CAC7C,iBAAiB,GAAG;IAClB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;CAC7C,CACF,CAAC;AAkDF,eAAO,MAAM,YAAY,GAAI,wEAO1B,iBAAiB,sBAanB,CAAC"}
@@ -1,13 +1,11 @@
1
- import { Schema } from 'effect';
1
+ import * as Schema from 'effect/Schema';
2
2
  import { type ProjectionModel } from '@dxos/schema';
3
- export declare const TestSchema: import("@dxos/echo-schema").TypedObjectPrototype<import("@dxos/echo-schema").TypedObjectFields<{
4
- id: import("@dxos/keys").ObjectIdClass;
3
+ export declare const TestSchema: import("@dxos/echo/internal").TypedObjectPrototype<import("@dxos/echo/internal").TypedObjectFields<{
5
4
  name: Schema.optional<typeof Schema.String>;
6
5
  age: Schema.optional<typeof Schema.Number>;
7
6
  active: Schema.optional<typeof Schema.Boolean>;
8
7
  netWorth: Schema.optional<typeof Schema.Number>;
9
- }, import("@dxos/echo-schema").TypedObjectOptions>, Schema.Struct.Encoded<{
10
- id: import("@dxos/keys").ObjectIdClass;
8
+ }, import("@dxos/echo/internal").TypedObjectOptions>, Schema.Struct.Encoded<{
11
9
  name: Schema.optional<typeof Schema.String>;
12
10
  age: Schema.optional<typeof Schema.Number>;
13
11
  active: Schema.optional<typeof Schema.Boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../../../src/components/testing.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAMhC,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,eAAO,MAAM,UAAU;;;;;;;;;;;;GAMrB,CAAC;AAEH,eAAO,MAAM,WAAW,GAAI,GAAG,MAAM;;;;;GAWpC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,uDAAuD,cAAc,SA6DjG,CAAC"}
1
+ {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../../../src/components/testing.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAOxC,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,eAAO,MAAM,UAAU;;;;;;;;;;GAKrB,CAAC;AAEH,eAAO,MAAM,WAAW,GAAI,GAAG,MAAM;;;;;GAWpC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,uDAAuD,cAAc,SA6DjG,CAAC"}
@@ -1,3 +1,4 @@
1
- export * from './useTableModel';
2
1
  export * from './useAddRow';
2
+ export * from './useProjectionModel';
3
+ export * from './useTableModel';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/index.ts"],"names":[],"mappings":"AAIA,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/index.ts"],"names":[],"mappings":"AAIA,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC"}
@@ -1,5 +1,6 @@
1
- import { type Schema } from 'effect';
1
+ import type * as Schema from 'effect/Schema';
2
2
  import { type Space } from '@dxos/client/echo';
3
+ import { type InsertRowResult } from '../model';
3
4
  export type UseAddRowParams = {
4
5
  space?: Space;
5
6
  schema?: Schema.Schema.AnyNoContext;
@@ -9,5 +10,5 @@ export type UseAddRowParams = {
9
10
  * Returns a callback that attempts to create an object and returns boolean success/failure.
10
11
  * Can accept optional data to create objects with specific content (used for committing draft rows).
11
12
  */
12
- export declare const useAddRow: ({ space, schema }: UseAddRowParams) => (data?: any) => boolean;
13
+ export declare const useAddRow: ({ space, schema }: UseAddRowParams) => (data?: any) => InsertRowResult;
13
14
  //# sourceMappingURL=useAddRow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAddRow.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useAddRow.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGrC,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG/C,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;CACrC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,SAAS,GAAI,mBAAmB,eAAe,aAEhD,GAAG,YAad,CAAC"}
1
+ {"version":3,"file":"useAddRow.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useAddRow.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAG7C,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG/C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;CACrC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,SAAS,GAAI,mBAAmB,eAAe,aAEhD,GAAG,KAAG,eAajB,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Type } from '@dxos/echo';
2
+ import { ProjectionModel } from '@dxos/schema';
3
+ import { type Table } from '../types';
4
+ export declare const useProjectionModel: <S extends Type.Entity.Any>(schema: S | undefined, table: Table.Table | undefined) => ProjectionModel | undefined;
5
+ //# sourceMappingURL=useProjectionModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useProjectionModel.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useProjectionModel.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,UAAU,CAAC;AAEtC,eAAO,MAAM,kBAAkB,GAAI,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,SAAS,EAAE,OAAO,KAAK,CAAC,KAAK,GAAG,SAAS,gCAOrE,CAAC"}
@@ -1,15 +1,14 @@
1
- import { type JsonSchemaType } from '@dxos/echo-schema';
2
1
  import { type Live } from '@dxos/live-object';
3
- import { type DataType, type ProjectionModel } from '@dxos/schema';
4
- import { type TableRow, TableModel, type TableModelProps, type TableRowAction } from '../model';
2
+ import { type ProjectionModel } from '@dxos/schema';
3
+ import { TableModel, type TableModelProps, type TableRow, type TableRowAction } from '../model';
4
+ import { type Table } from '../types';
5
5
  export type UseTableModelParams<T extends TableRow = TableRow> = {
6
- view?: DataType.View;
7
- schema?: JsonSchemaType;
6
+ object?: Table.Table;
8
7
  projection?: ProjectionModel;
9
8
  rows?: Live<T>[];
10
9
  rowActions?: TableRowAction[];
11
10
  onSelectionChanged?: (selection: string[]) => void;
12
11
  onRowAction?: (actionId: string, data: T) => void;
13
12
  } & Pick<TableModelProps<T>, 'features' | 'onInsertRow' | 'onDeleteRows' | 'onDeleteColumn' | 'onCellUpdate' | 'onRowOrderChange'>;
14
- export declare const useTableModel: <T extends TableRow = TableRow>({ view, schema, projection, rows, rowActions, features, onSelectionChanged, onRowAction, ...props }: UseTableModelParams<T>) => TableModel<T> | undefined;
13
+ export declare const useTableModel: <T extends TableRow = TableRow>({ object, projection, rows, rowActions, features, onSelectionChanged, onRowAction, ...props }: UseTableModelParams<T>) => TableModel<T> | undefined;
15
14
  //# sourceMappingURL=useTableModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useTableModel.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useTableModel.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAG9C,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAGnE,OAAO,EAAE,KAAK,QAAQ,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAEhG,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,IAAI;IAC/D,IAAI,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACnD,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;CACnD,GAAG,IAAI,CACN,eAAe,CAAC,CAAC,CAAC,EAClB,UAAU,GAAG,aAAa,GAAG,cAAc,GAAG,gBAAgB,GAAG,cAAc,GAAG,kBAAkB,CACrG,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,qGAU1D,mBAAmB,CAAC,CAAC,CAAC,KAAG,UAAU,CAAC,CAAC,CAAC,GAAG,SAkE3C,CAAC"}
1
+ {"version":3,"file":"useTableModel.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useTableModel.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAGpD,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,KAAK,QAAQ,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAChG,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,UAAU,CAAC;AAEtC,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,IAAI;IAC/D,MAAM,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC;IACrB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACnD,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;CACnD,GAAG,IAAI,CACN,eAAe,CAAC,CAAC,CAAC,EAClB,UAAU,GAAG,aAAa,GAAG,cAAc,GAAG,gBAAgB,GAAG,cAAc,GAAG,kBAAkB,CACrG,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,+FAS1D,mBAAmB,CAAC,CAAC,CAAC,KAAG,UAAU,CAAC,CAAC,CAAC,GAAG,SAkE3C,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import { type RefObject } from 'react';
2
- import { type Live } from '@dxos/live-object';
3
2
  export type ColumnSettingsMode = {
4
3
  type: 'create';
5
4
  } | {
@@ -16,11 +15,6 @@ export type ModalState = {
16
15
  type: 'refPanel';
17
16
  targetId: string;
18
17
  typename: string;
19
- } | {
20
- type: 'createRefPanel';
21
- typename: string;
22
- initialValues?: Record<string, string>;
23
- onCreate?: (obj: Live<any>) => void;
24
18
  } | {
25
19
  type: 'columnSettings';
26
20
  mode: ColumnSettingsMode;
@@ -38,7 +32,6 @@ export declare class ModalController {
38
32
  showColumnCreator: () => void;
39
33
  showReferencePanel: (targetId: string, schemaId: string) => void;
40
34
  openColumnSettings: () => void;
41
- openCreateRef: (typename: string, anchorCell: Element | null, initialValues?: Record<string, string>, onCreate?: (obj: Live<any>) => void) => void;
42
35
  close: () => void;
43
36
  }
44
37
  //# sourceMappingURL=modal-controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"modal-controller.d.ts","sourceRoot":"","sources":["../../../../src/model/modal-controller.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,SAAS,EAAyB,MAAM,OAAO,CAAC;AAE9D,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,MAAM,kBAAkB,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAExF,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACxD;IACE,IAAI,EAAE,gBAAgB,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;CACrC,GACD;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,kBAAkB,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEvB,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;IACjE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8E;IAE1G,IAAW,KAAK,sDAEf;IAED,IAAW,OAAO,IACW,SAAS,CAAC,iBAAiB,CAAC,CACxD;IAEM,UAAU,GAAI,SAAS,WAAW,UAEvC;IAEK,WAAW,GAAI,UAAU,MAAM,UAEpC;IAEK,cAAc,GAAI,SAAS,MAAM,UAEtC;IAEK,iBAAiB,aAEtB;IAEK,kBAAkB,GAAI,UAAU,MAAM,EAAE,UAAU,MAAM,UAE7D;IAEK,kBAAkB,aAWvB;IAEK,aAAa,GAClB,UAAU,MAAM,EAChB,YAAY,OAAO,GAAG,IAAI,EAC1B,gBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACtC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,UAanC;IAEK,KAAK,aAEV;CACH"}
1
+ {"version":3,"file":"modal-controller.d.ts","sourceRoot":"","sources":["../../../../src/model/modal-controller.ts"],"names":[],"mappings":"AAKA,OAAO,EAAyB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE9D,MAAM,MAAM,kBAAkB,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAExF,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,kBAAkB,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEvB,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;IACjE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA8E;IAE1G,IAAW,KAAK,sDAEf;IAED,IAAW,OAAO,IACW,SAAS,CAAC,iBAAiB,CAAC,CACxD;IAEM,UAAU,GAAI,SAAS,WAAW,UAEvC;IAEK,WAAW,GAAI,UAAU,MAAM,UAEpC;IAEK,cAAc,GAAI,SAAS,MAAM,UAEtC;IAEK,iBAAiB,aAEtB;IAEK,kBAAkB,GAAI,UAAU,MAAM,EAAE,UAAU,MAAM,UAE7D;IAEK,kBAAkB,aAWvB;IAEK,KAAK,aAEV;CACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"selection-model.d.ts","sourceRoot":"","sources":["../../../../src/model/selection-model.ts"],"names":[],"mappings":"AAIA,OAAO,EAAyC,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAElG,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAG9C,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,UAAU,CAAC;AAElD,qBAAa,cAAc,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,QAAQ;IAyB5D,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IA3BvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IAEjD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAQ/B;IAEH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkE;IAEhG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAO1B;gBAGgB,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,EAC1B,cAAc,EAAE,aAAa,EAC7B,iBAAiB,EAAE,MAAM,EAAE,EAC3B,mBAAmB,CAAC,GAAE,MAAM,IAAI,aAAA;cAM1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAY/C,IAAW,SAAS,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAElD;IAED,IAAW,YAAY,IAAI,cAAc,CAAC,OAAO,CAAC,CAEjD;IAED,IAAW,cAAc,IAAI,cAAc,CAAC,OAAO,CAAC,CAEnD;IAED,IAAW,aAAa,IAAI,aAAa,CAExC;IAEM,eAAe,QAAO,CAAC,EAAE,CAG9B;IAEK,kBAAkB,GAAI,UAAU,MAAM,KAAG,OAAO,CAGrD;IAEK,gBAAgB,GAAI,QAAQ,CAAC,KAAG,OAAO,CAE5C;IAMK,0BAA0B,GAAI,UAAU,MAAM,KAAG,IAAI,CAc1D;IAEK,YAAY,GAAI,MAAM,KAAK,GAAG,MAAM,KAAG,IAAI,CAWhD;CACH"}
1
+ {"version":3,"file":"selection-model.d.ts","sourceRoot":"","sources":["../../../../src/model/selection-model.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,cAAc,EAAyC,MAAM,sBAAsB,CAAC;AAElG,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIzC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,UAAU,CAAC;AAElD,qBAAa,cAAc,CAAC,CAAC,SAAS,QAAQ,CAAE,SAAQ,QAAQ;IAyB5D,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IA3BvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAsB;IAEjD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAQ/B;IAEH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkE;IAEhG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAO1B;gBAGgB,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,EAC1B,cAAc,EAAE,aAAa,EAC7B,iBAAiB,EAAE,MAAM,EAAE,EAC3B,mBAAmB,CAAC,GAAE,MAAM,IAAI,aAAA;cAM1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAY/C,IAAW,SAAS,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAElD;IAED,IAAW,YAAY,IAAI,cAAc,CAAC,OAAO,CAAC,CAEjD;IAED,IAAW,cAAc,IAAI,cAAc,CAAC,OAAO,CAAC,CAEnD;IAED,IAAW,aAAa,IAAI,aAAa,CAExC;IAEM,eAAe,QAAO,CAAC,EAAE,CAG9B;IAEK,kBAAkB,GAAI,UAAU,MAAM,KAAG,OAAO,CAGrD;IAEK,gBAAgB,GAAI,QAAQ,CAAC,KAAG,OAAO,CAE5C;IAMK,0BAA0B,GAAI,UAAU,MAAM,KAAG,IAAI,CAc1D;IAEK,YAAY,GAAI,MAAM,KAAK,GAAG,MAAM,KAAG,IAAI,CAWhD;CACH"}
@@ -1,11 +1,12 @@
1
1
  import { type ReadonlySignal } from '@preact/signals-core';
2
2
  import { Resource } from '@dxos/context';
3
- import { type FieldSortType, type JsonProp, type JsonSchemaType } from '@dxos/echo-schema';
3
+ import { type JsonProp, type JsonSchemaType } from '@dxos/echo/internal';
4
+ import { type Label } from '@dxos/react-ui';
4
5
  import { type DxGridAxisMeta, type DxGridPlanePosition, type DxGridPosition } from '@dxos/react-ui-grid';
5
- import { type DataType, ProjectionModel, type ValidationError } from '@dxos/schema';
6
+ import { type FieldSortType, type ProjectionModel, type ValidationError, type View } from '@dxos/schema';
7
+ import { type Table } from '../types';
6
8
  import { type SelectionMode, SelectionModel } from './selection-model';
7
9
  import { TableSorting } from './table-sorting';
8
- import { TableView } from '../types';
9
10
  export type TableCellType = 'standard' | 'draft' | 'header';
10
11
  export type ValidationResult = {
11
12
  valid: true;
@@ -23,7 +24,7 @@ export type TableRow = Record<JsonProp, any> & {
23
24
  };
24
25
  export type TableRowAction = {
25
26
  id: string;
26
- translationKey: string;
27
+ label: Label;
27
28
  };
28
29
  export type TableFeatures = {
29
30
  selection: {
@@ -33,10 +34,10 @@ export type TableFeatures = {
33
34
  dataEditable: boolean;
34
35
  schemaEditable: boolean;
35
36
  };
37
+ export type InsertRowResult = 'draft' | 'final';
36
38
  export type TableModelProps<T extends TableRow = TableRow> = {
37
- view: DataType.View;
38
- schema: JsonSchemaType;
39
- projection?: ProjectionModel;
39
+ object: Table.Table;
40
+ projection: ProjectionModel;
40
41
  features?: Partial<TableFeatures>;
41
42
  sorting?: FieldSortType[];
42
43
  initialSelection?: string[];
@@ -46,7 +47,7 @@ export type TableModelProps<T extends TableRow = TableRow> = {
46
47
  };
47
48
  rowActions?: TableRowAction[];
48
49
  onResolveSchema?: (typename: string) => Promise<JsonSchemaType>;
49
- onInsertRow?: (data?: any) => boolean;
50
+ onInsertRow?: (data?: any) => InsertRowResult;
50
51
  onDeleteRows?: (index: number, obj: T[]) => void;
51
52
  onDeleteColumn?: (fieldId: string) => void;
52
53
  onCellUpdate?: (cell: DxGridPosition) => void;
@@ -54,9 +55,8 @@ export type TableModelProps<T extends TableRow = TableRow> = {
54
55
  onRowAction?: (actionId: string, data: T) => void;
55
56
  };
56
57
  export declare class TableModel<T extends TableRow = TableRow> extends Resource {
57
- private readonly _view;
58
+ private readonly _object;
58
59
  private readonly _projection;
59
- private _table?;
60
60
  private readonly _visibleRange;
61
61
  private readonly _onInsertRow?;
62
62
  private readonly _onDeleteRows?;
@@ -72,10 +72,10 @@ export declare class TableModel<T extends TableRow = TableRow> extends Resource
72
72
  private _pinnedRows;
73
73
  private _selection;
74
74
  private _columnMeta?;
75
- constructor({ view, schema, projection, features, sorting, initialSelection, pinnedRows, rowActions, onCellUpdate, onDeleteColumn, onDeleteRows, onInsertRow, onRowOrderChange, onRowAction, }: TableModelProps<T>);
75
+ constructor({ object, projection, features, sorting, initialSelection, pinnedRows, rowActions, onCellUpdate, onDeleteColumn, onDeleteRows, onInsertRow, onRowOrderChange, onRowAction, }: TableModelProps<T>);
76
76
  get id(): string;
77
- get view(): DataType.View;
78
- get table(): TableView;
77
+ get view(): View.View;
78
+ get table(): Table.Table;
79
79
  get projection(): ProjectionModel;
80
80
  get rows(): ReadonlySignal<T[]>;
81
81
  get features(): TableFeatures;
@@ -111,7 +111,7 @@ export declare class TableModel<T extends TableRow = TableRow> extends Resource
111
111
  */
112
112
  hasDraftRowValidationError(draftRowIndex: number, fieldPath: string): boolean;
113
113
  getColumnCount: () => number;
114
- insertRow: () => void;
114
+ insertRow: () => InsertRowResult;
115
115
  private createDraftRow;
116
116
  private validateDraftRow;
117
117
  private validateDraftRowData;