@dxos/react-ui-table 0.8.4-main.74a063c4e0 → 0.8.4-main.765dc60934

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 (104) hide show
  1. package/LICENSE +102 -5
  2. package/dist/lib/browser/{chunk-BF54SSNL.mjs → chunk-4URYOFDL.mjs} +8 -9
  3. package/dist/lib/browser/chunk-4URYOFDL.mjs.map +7 -0
  4. package/dist/lib/browser/chunk-J5LGTIGS.mjs +10 -0
  5. package/dist/lib/browser/chunk-J5LGTIGS.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-NTWHM2PX.mjs → chunk-YDXPC7HA.mjs} +16 -72
  7. package/dist/lib/browser/chunk-YDXPC7HA.mjs.map +7 -0
  8. package/dist/lib/browser/index.mjs +29 -96
  9. package/dist/lib/browser/index.mjs.map +4 -4
  10. package/dist/lib/browser/meta.json +1 -1
  11. package/dist/lib/browser/testing/index.mjs +5 -3
  12. package/dist/lib/browser/testing/index.mjs.map +3 -3
  13. package/dist/lib/browser/translations.mjs +36 -0
  14. package/dist/lib/browser/translations.mjs.map +7 -0
  15. package/dist/lib/browser/types/index.mjs +2 -1
  16. package/dist/lib/node-esm/{chunk-Z3TLFG6Z.mjs → chunk-2AN3QQ3D.mjs} +16 -72
  17. package/dist/lib/node-esm/chunk-2AN3QQ3D.mjs.map +7 -0
  18. package/dist/lib/node-esm/{chunk-SIRDIPHZ.mjs → chunk-B2SZYAEC.mjs} +8 -9
  19. package/dist/lib/node-esm/chunk-B2SZYAEC.mjs.map +7 -0
  20. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +11 -0
  21. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs.map +7 -0
  22. package/dist/lib/node-esm/index.mjs +29 -96
  23. package/dist/lib/node-esm/index.mjs.map +4 -4
  24. package/dist/lib/node-esm/meta.json +1 -1
  25. package/dist/lib/node-esm/testing/index.mjs +5 -3
  26. package/dist/lib/node-esm/testing/index.mjs.map +3 -3
  27. package/dist/lib/node-esm/translations.mjs +37 -0
  28. package/dist/lib/node-esm/translations.mjs.map +7 -0
  29. package/dist/lib/node-esm/types/index.mjs +2 -1
  30. package/dist/types/src/components/Table/ColumnActionsMenu.d.ts.map +1 -1
  31. package/dist/types/src/components/Table/ColumnSettings.d.ts.map +1 -1
  32. package/dist/types/src/components/Table/DynamicTable.d.ts +1 -2
  33. package/dist/types/src/components/Table/DynamicTable.d.ts.map +1 -1
  34. package/dist/types/src/components/Table/DynamicTable.stories.d.ts +19 -19
  35. package/dist/types/src/components/Table/DynamicTable.stories.d.ts.map +1 -1
  36. package/dist/types/src/components/Table/Relations.stories.d.ts +82 -80
  37. package/dist/types/src/components/Table/Relations.stories.d.ts.map +1 -1
  38. package/dist/types/src/components/Table/RowActionsMenu.d.ts.map +1 -1
  39. package/dist/types/src/components/Table/Table.d.ts +2 -10
  40. package/dist/types/src/components/Table/Table.d.ts.map +1 -1
  41. package/dist/types/src/components/Table/Table.stories.d.ts +82 -80
  42. package/dist/types/src/components/Table/Table.stories.d.ts.map +1 -1
  43. package/dist/types/src/components/Table/TableContent.d.ts +1 -5
  44. package/dist/types/src/components/Table/TableContent.d.ts.map +1 -1
  45. package/dist/types/src/components/Table/TableToolbar.d.ts +1 -5
  46. package/dist/types/src/components/Table/TableToolbar.d.ts.map +1 -1
  47. package/dist/types/src/components/TableCellEditor/CellValidationMessage.d.ts.map +1 -1
  48. package/dist/types/src/components/TableCellEditor/FormCellEditor.d.ts.map +1 -1
  49. package/dist/types/src/components/TableCellEditor/TableCellEditor.d.ts.map +1 -1
  50. package/dist/types/src/components/TableCellEditor/TableCellEditor.stories.d.ts +19 -19
  51. package/dist/types/src/components/TableCellEditor/TableCellEditor.stories.d.ts.map +1 -1
  52. package/dist/types/src/components/testing.d.ts.map +1 -1
  53. package/dist/types/src/hooks/useAddRow.d.ts.map +1 -1
  54. package/dist/types/src/hooks/useProjectionModel.d.ts.map +1 -1
  55. package/dist/types/src/hooks/useTableModel.d.ts.map +1 -1
  56. package/dist/types/src/index.d.ts +0 -2
  57. package/dist/types/src/index.d.ts.map +1 -1
  58. package/dist/types/src/model/modal-controller.d.ts.map +1 -1
  59. package/dist/types/src/model/selection-model.d.ts +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 +4 -5
  62. package/dist/types/src/model/table-model.d.ts.map +1 -1
  63. package/dist/types/src/model/table-presentation.d.ts.map +1 -1
  64. package/dist/types/src/playwright/TableManager.d.ts.map +1 -1
  65. package/dist/types/src/playwright/playwright.config.d.ts.map +1 -1
  66. package/dist/types/src/testing/useTestTableModel.d.ts.map +1 -1
  67. package/dist/types/src/translations.d.ts +19 -19
  68. package/dist/types/src/translations.d.ts.map +1 -1
  69. package/dist/types/src/types/Table.d.ts +1 -2
  70. package/dist/types/src/types/Table.d.ts.map +1 -1
  71. package/dist/types/src/util/dynamic-table.d.ts.map +1 -1
  72. package/dist/types/src/util/query-ast.d.ts.map +1 -1
  73. package/dist/types/src/util/schema.d.ts.map +1 -1
  74. package/dist/types/src/util/signals.d.ts.map +1 -1
  75. package/dist/types/src/util/sort.d.ts.map +1 -1
  76. package/dist/types/src/util/table-buttons.d.ts +20 -20
  77. package/dist/types/src/util/table-buttons.d.ts.map +1 -1
  78. package/dist/types/src/util/table-controls.d.ts +4 -4
  79. package/dist/types/src/util/table-controls.d.ts.map +1 -1
  80. package/dist/types/src/util/tag.d.ts.map +1 -1
  81. package/dist/types/tsconfig.tsbuildinfo +1 -1
  82. package/package.json +48 -57
  83. package/src/components/Table/ColumnActionsMenu.tsx +2 -1
  84. package/src/components/Table/DynamicTable.stories.tsx +4 -3
  85. package/src/components/Table/DynamicTable.tsx +4 -5
  86. package/src/components/Table/Relations.stories.tsx +42 -7
  87. package/src/components/Table/RowActionsMenu.tsx +3 -2
  88. package/src/components/Table/Table.stories.tsx +13 -14
  89. package/src/components/Table/TableToolbar.tsx +1 -1
  90. package/src/components/TableCellEditor/CellValidationMessage.tsx +1 -2
  91. package/src/components/TableCellEditor/FormCellEditor.tsx +2 -1
  92. package/src/components/TableCellEditor/TableCellEditor.stories.tsx +3 -3
  93. package/src/components/TableCellEditor/TableCellEditor.tsx +5 -7
  94. package/src/index.ts +0 -4
  95. package/src/model/table-model.ts +10 -11
  96. package/src/model/table-presentation.ts +3 -4
  97. package/src/testing/useTestTableModel.ts +2 -2
  98. package/src/types/Table.ts +2 -3
  99. package/src/util/dynamic-table.test.ts +3 -3
  100. package/src/util/dynamic-table.ts +5 -6
  101. package/dist/lib/browser/chunk-BF54SSNL.mjs.map +0 -7
  102. package/dist/lib/browser/chunk-NTWHM2PX.mjs.map +0 -7
  103. package/dist/lib/node-esm/chunk-SIRDIPHZ.mjs.map +0 -7
  104. package/dist/lib/node-esm/chunk-Z3TLFG6Z.mjs.map +0 -7
@@ -17,40 +17,11 @@ import {
17
17
  useAddRow,
18
18
  useProjectionModel,
19
19
  useTableModel
20
- } from "./chunk-Z3TLFG6Z.mjs";
20
+ } from "./chunk-2AN3QQ3D.mjs";
21
21
  import {
22
22
  Table_exports
23
- } from "./chunk-SIRDIPHZ.mjs";
24
-
25
- // src/translations.ts
26
- var translationKey = "@dxos/react-ui-table";
27
- var translations = [
28
- {
29
- "en-US": {
30
- [translationKey]: {
31
- "object.placeholder": "New table",
32
- "create-object.label": "Create table",
33
- "table-name.placeholder": "Table name",
34
- "settings.title": "Table settings",
35
- "table-schema.label": "Type",
36
- "continue.label": "Continue",
37
- "create-stack-section.label": "Create table",
38
- "add-row.label": "Add row",
39
- "column-action-sort-descending.menu": "Sort Descending",
40
- "column-action-sort-ascending.menu": "Sort Ascending",
41
- "column-action-clear-sorting.menu": "Clear Sorting",
42
- "column-action-settings.menu": "Column Settings",
43
- "column-action-delete.menu": "Delete Column",
44
- "delete-row.label": "Delete row",
45
- "bulk-delete-row.label": "Delete selected rows",
46
- "column-deleted.label": "Column deleted",
47
- "new-column-button.label": "Create column",
48
- "create-new-object.label": "Create new object \u201C{{text}}\u201D",
49
- "save-view.label": "Save changes to view"
50
- }
51
- }
52
- }
53
- ];
23
+ } from "./chunk-B2SZYAEC.mjs";
24
+ import "./chunk-HSLMI22Q.mjs";
54
25
 
55
26
  // src/components/Table/Table.tsx
56
27
  import { Atom as Atom4 } from "@effect-atom/atom-react";
@@ -123,8 +94,8 @@ var setProperties = (view, projection, table, properties) => {
123
94
  const field = projection.getFields().find((field2) => field2.path === property.name);
124
95
  if (field) {
125
96
  if (property.size !== void 0) {
126
- Obj.change(table, (obj) => {
127
- obj.sizes[field.path] = property.size;
97
+ Obj.update(table, (table2) => {
98
+ table2.sizes[field.path] = property.size;
128
99
  });
129
100
  }
130
101
  if (property.title !== void 0) {
@@ -140,8 +111,8 @@ var setProperties = (view, projection, table, properties) => {
140
111
  if (property.sort) {
141
112
  const currentQuery = Query.fromAst(Obj.getSnapshot(view).query.ast);
142
113
  const newQuery = currentQuery.orderBy(Order.property(field.path, property.sort));
143
- Obj.change(view, (obj) => {
144
- obj.query.ast = newQuery.ast;
114
+ Obj.update(view, (view2) => {
115
+ view2.query.ast = newQuery.ast;
145
116
  });
146
117
  }
147
118
  }
@@ -258,9 +229,8 @@ var CellValidationMessage = ({ __gridScope, validationError, variant = "error" }
258
229
  return null;
259
230
  }
260
231
  const bgClass = variant === "error" ? "bg-error-surface" : "bg-warning-surface";
261
- const textClass = variant === "error" ? "text-error-surface-text" : "text-warning-surface-text";
232
+ const textClass = variant === "error" ? "text-error-foreground" : "text-warning-foreground";
262
233
  return /* @__PURE__ */ React.createElement("div", {
263
- role: "none",
264
234
  className: `absolute ${bgClass} ${textClass} rounded-h-sm text-xs p-1`,
265
235
  style: {
266
236
  ...{
@@ -283,6 +253,7 @@ import { Popover } from "@dxos/react-ui";
283
253
  import { Form } from "@dxos/react-ui-form";
284
254
  import { parseCellIndex, useGridContext as useGridContext2 } from "@dxos/react-ui-grid";
285
255
  import { getDeep, isTruthy, setDeep } from "@dxos/util";
256
+ import { translationKey } from "#translations";
286
257
  var __dxlog_file = "/__w/dxos/dxos/packages/ui/react-ui-table/src/components/TableCellEditor/FormCellEditor.tsx";
287
258
  var createOptionLabel = [
288
259
  "create-new-object.label",
@@ -321,27 +292,11 @@ var FormCellEditor = ({ __gridScope, schema, model, fieldProjection, onSave, onC
321
292
  const cell = parseCellIndex(contextEditing.index);
322
293
  if (model.isDraftCell(cell)) {
323
294
  const draftRow = model.getDraftRows()[cell.row];
324
- invariant(draftRow, void 0, {
325
- F: __dxlog_file,
326
- L: 74,
327
- S: void 0,
328
- A: [
329
- "draftRow",
330
- ""
331
- ]
332
- });
295
+ invariant(draftRow, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 52, S: void 0, A: ["draftRow", ""] });
333
296
  return draftRow.data;
334
297
  } else {
335
298
  const row = model.getRowAt(cell.row);
336
- invariant(row, void 0, {
337
- F: __dxlog_file,
338
- L: 78,
339
- S: void 0,
340
- A: [
341
- "row",
342
- ""
343
- ]
344
- });
299
+ invariant(row, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 56, S: void 0, A: ["row", ""] });
345
300
  return row;
346
301
  }
347
302
  }
@@ -461,11 +416,6 @@ var FormCellEditor = ({ __gridScope, schema, model, fieldProjection, onSave, onC
461
416
 
462
417
  // src/components/TableCellEditor/TableCellEditor.tsx
463
418
  var __dxlog_file2 = "/__w/dxos/dxos/packages/ui/react-ui-table/src/components/TableCellEditor/TableCellEditor.tsx";
464
- var documentSlots = {
465
- scroll: {
466
- className: "!py-(--dx-grid-cell-editor-padding-block)"
467
- }
468
- };
469
419
  var TableValueEditor = ({ __gridScope, schema, model, modals, onFocus, onSave, onCreate }) => {
470
420
  const { editing } = useGridContext3("TableValueEditor", __gridScope);
471
421
  const fieldProjection = useMemo2(() => {
@@ -475,15 +425,7 @@ var TableValueEditor = ({ __gridScope, schema, model, modals, onFocus, onSave, o
475
425
  const { col } = parseCellIndex2(editing.index);
476
426
  const field = model.projection.getFields()[col];
477
427
  const fieldProjection2 = model.projection.getFieldProjection(field.id);
478
- invariant2(fieldProjection2, void 0, {
479
- F: __dxlog_file2,
480
- L: 72,
481
- S: void 0,
482
- A: [
483
- "fieldProjection",
484
- ""
485
- ]
486
- });
428
+ invariant2(fieldProjection2, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file2, L: 21, S: void 0, A: ["fieldProjection", ""] });
487
429
  return fieldProjection2;
488
430
  }, [
489
431
  model,
@@ -520,15 +462,7 @@ var TableCellEditor = ({ __gridScope, model, modals, onFocus, onSave }) => {
520
462
  const { col } = parseCellIndex2(editing.index);
521
463
  const field = model.projection.getFields()[col];
522
464
  const fieldProjection2 = model.projection.getFieldProjection(field.id);
523
- invariant2(fieldProjection2, void 0, {
524
- F: __dxlog_file2,
525
- L: 119,
526
- S: void 0,
527
- A: [
528
- "fieldProjection",
529
- ""
530
- ]
531
- });
465
+ invariant2(fieldProjection2, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file2, L: 59, S: void 0, A: ["fieldProjection", ""] });
532
466
  return fieldProjection2;
533
467
  }, [
534
468
  model,
@@ -662,9 +596,13 @@ var TableCellEditor = ({ __gridScope, model, modals, onFocus, onSave }) => {
662
596
  __gridScope
663
597
  }), /* @__PURE__ */ React3.createElement(GridCellEditor, {
664
598
  extensions,
599
+ slots: {
600
+ content: {
601
+ className: "!py-(--dx-grid-cell-editor-padding-block)"
602
+ }
603
+ },
665
604
  getCellContent,
666
- onBlur: handleBlur,
667
- slots: documentSlots
605
+ onBlur: handleBlur
668
606
  }));
669
607
  };
670
608
  var determineNavigationAxis = ({ key }) => {
@@ -696,8 +634,9 @@ var determineNavigationDelta = ({ key, shift }) => {
696
634
  import { useAtomValue } from "@effect-atom/atom-react";
697
635
  import React4 from "react";
698
636
  import { DropdownMenu, useTranslation } from "@dxos/react-ui";
637
+ import { translationKey as translationKey2 } from "#translations";
699
638
  var ColumnActionsMenu = ({ model, modals }) => {
700
- const { t } = useTranslation(translationKey);
639
+ const { t } = useTranslation(translationKey2);
701
640
  const state = useAtomValue(modals.state);
702
641
  if (state?.type !== "column") {
703
642
  return null;
@@ -799,8 +738,9 @@ var ColumnSettings = ({ registry, model, modals, onNewColumn }) => {
799
738
  import { useAtomValue as useAtomValue3 } from "@effect-atom/atom-react";
800
739
  import React6 from "react";
801
740
  import { DropdownMenu as DropdownMenu2, toLocalizedString, useTranslation as useTranslation2 } from "@dxos/react-ui";
741
+ import { translationKey as translationKey3 } from "#translations";
802
742
  var RowActionsMenu = ({ model, modals }) => {
803
- const { t } = useTranslation2(translationKey);
743
+ const { t } = useTranslation2(translationKey3);
804
744
  const hasSelection = model.selection.hasSelection;
805
745
  const state = useAtomValue3(modals.state);
806
746
  if (state?.type !== "row") {
@@ -822,7 +762,7 @@ var RowActionsMenu = ({ model, modals }) => {
822
762
  }, toLocalizedString(action.label, t)))), /* @__PURE__ */ React6.createElement(DropdownMenu2.Separator, null)), model.features.dataEditable !== false && /* @__PURE__ */ React6.createElement(DropdownMenu2.Item, {
823
763
  "data-testid": "row-menu-delete",
824
764
  onClick: () => model.deleteRow(state.rowIndex)
825
- }, t(hasSelection ? "bulk delete row label" : "delete row label"))), /* @__PURE__ */ React6.createElement(DropdownMenu2.Arrow, null)));
765
+ }, t(hasSelection ? "bulk-delete-row.label" : "delete-row.label"))), /* @__PURE__ */ React6.createElement(DropdownMenu2.Arrow, null)));
826
766
  };
827
767
 
828
768
  // src/components/Table/TableContent.tsx
@@ -1053,12 +993,7 @@ var TableContent = composable(({ schema, model, presentation, ignoreAttention, o
1053
993
  void navigator.clipboard.writeText(textContent);
1054
994
  event.preventDefault();
1055
995
  } catch (error) {
1056
- log.catch(error, void 0, {
1057
- F: __dxlog_file3,
1058
- L: 278,
1059
- S: void 0,
1060
- C: (f, a) => f(...a)
1061
- });
996
+ log.catch(error, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file3, L: 262, S: void 0 });
1062
997
  }
1063
998
  break;
1064
999
  }
@@ -1210,6 +1145,7 @@ import { Atom as Atom3, RegistryContext as RegistryContext2 } from "@effect-atom
1210
1145
  import React8, { useContext as useContext2, useEffect as useEffect4, useMemo as useMemo5 } from "react";
1211
1146
  import { Menu, createGapSeparator, createMenuAction, useMenuActions } from "@dxos/react-ui-menu";
1212
1147
  import { composable as composable2, composableProps as composableProps2 } from "@dxos/ui-theme";
1148
+ import { translationKey as translationKey4 } from "#translations";
1213
1149
  var createTableToolbarActions = ({ stateAtom, onAdd, onSave, customActions }) => Atom3.make((get) => {
1214
1150
  const nodes = [];
1215
1151
  if (onAdd) {
@@ -1219,7 +1155,7 @@ var createTableToolbarActions = ({ stateAtom, onAdd, onSave, customActions }) =>
1219
1155
  label: [
1220
1156
  "add-row.label",
1221
1157
  {
1222
- ns: translationKey
1158
+ ns: translationKey4
1223
1159
  }
1224
1160
  ],
1225
1161
  testId: "table.toolbar.add-row"
@@ -1234,7 +1170,7 @@ var createTableToolbarActions = ({ stateAtom, onAdd, onSave, customActions }) =>
1234
1170
  label: [
1235
1171
  "save-view.label",
1236
1172
  {
1237
- ns: translationKey
1173
+ ns: translationKey4
1238
1174
  }
1239
1175
  ],
1240
1176
  testId: "table.toolbar.save-view",
@@ -1324,7 +1260,7 @@ import { RegistryContext as RegistryContext3 } from "@effect-atom/atom-react";
1324
1260
  import React10, { useCallback as useCallback5, useContext as useContext3, useEffect as useEffect5, useMemo as useMemo6, useRef as useRef4, useState as useState5 } from "react";
1325
1261
  import { useDefaultValue } from "@dxos/react-ui";
1326
1262
  import { mx as mx2 } from "@dxos/ui-theme";
1327
- var DynamicTable = ({ classNames, schema, name = "com.example.dynamic-table", rows, properties, jsonSchema: jsonSchemaProp, rowActions, onRowClick, onRowAction, ...props }) => {
1263
+ var DynamicTable = ({ classNames, schema, name = "com.example.dynamicTable", rows, properties, jsonSchema: jsonSchemaProp, rowActions, onRowClick, onRowAction, ...props }) => {
1328
1264
  const registry = useContext3(RegistryContext3);
1329
1265
  const [dynamicTable, setDynamicTable] = useState5();
1330
1266
  const { jsonSchema } = useMemo6(() => getBaseSchema({
@@ -1381,10 +1317,8 @@ var DynamicTable = ({ classNames, schema, name = "com.example.dynamic-table", ro
1381
1317
  model
1382
1318
  ]);
1383
1319
  return /* @__PURE__ */ React10.createElement("div", {
1384
- role: "none",
1385
1320
  className: mx2("dx-expander grid", classNames)
1386
1321
  }, /* @__PURE__ */ React10.createElement("div", {
1387
- role: "none",
1388
1322
  className: "grid min-h-0 overflow-hidden"
1389
1323
  }, /* @__PURE__ */ React10.createElement(Table.Root, {
1390
1324
  ref: tableRef
@@ -1417,7 +1351,6 @@ export {
1417
1351
  tableButtons,
1418
1352
  tableControls,
1419
1353
  touch,
1420
- translations,
1421
1354
  useAddRow,
1422
1355
  useProjectionModel,
1423
1356
  useTableContext,