@dxos/react-ui-table 0.8.4-main.2c6827d → 0.8.4-main.3c1ae3b

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 (103) hide show
  1. package/dist/lib/browser/chunk-CJQ6T4LL.mjs +77 -0
  2. package/dist/lib/browser/chunk-CJQ6T4LL.mjs.map +7 -0
  3. package/dist/lib/browser/{chunk-GS2UNGJK.mjs → chunk-V7A7ZA5E.mjs} +119 -111
  4. package/dist/lib/browser/chunk-V7A7ZA5E.mjs.map +7 -0
  5. package/dist/lib/browser/index.mjs +162 -147
  6. package/dist/lib/browser/index.mjs.map +3 -3
  7. package/dist/lib/browser/meta.json +1 -1
  8. package/dist/lib/browser/testing/index.mjs +15 -31
  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-TRR3C5NX.mjs → chunk-P73ALX3N.mjs} +119 -111
  12. package/dist/lib/node-esm/chunk-P73ALX3N.mjs.map +7 -0
  13. package/dist/lib/node-esm/chunk-T6PXZQ6W.mjs +78 -0
  14. package/dist/lib/node-esm/chunk-T6PXZQ6W.mjs.map +7 -0
  15. package/dist/lib/node-esm/index.mjs +162 -147
  16. package/dist/lib/node-esm/index.mjs.map +3 -3
  17. package/dist/lib/node-esm/meta.json +1 -1
  18. package/dist/lib/node-esm/testing/index.mjs +15 -31
  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 -2
  22. package/dist/types/src/components/Table/ColumnActionsMenu.d.ts.map +1 -1
  23. package/dist/types/src/components/Table/ColumnSettings.d.ts +2 -2
  24. package/dist/types/src/components/Table/ColumnSettings.d.ts.map +1 -1
  25. package/dist/types/src/components/Table/DynamicTable.d.ts +4 -5
  26. package/dist/types/src/components/Table/DynamicTable.d.ts.map +1 -1
  27. package/dist/types/src/components/Table/DynamicTable.stories.d.ts +3 -17
  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 +10 -6
  30. package/dist/types/src/components/Table/Relations.stories.d.ts.map +1 -1
  31. package/dist/types/src/components/Table/Table.d.ts +8 -8
  32. package/dist/types/src/components/Table/Table.d.ts.map +1 -1
  33. package/dist/types/src/components/Table/Table.stories.d.ts +70 -4
  34. package/dist/types/src/components/Table/Table.stories.d.ts.map +1 -1
  35. package/dist/types/src/components/TableCellEditor/CellValidationMessage.d.ts +1 -1
  36. package/dist/types/src/components/TableCellEditor/FormCellEditor.d.ts +10 -11
  37. package/dist/types/src/components/TableCellEditor/FormCellEditor.d.ts.map +1 -1
  38. package/dist/types/src/components/TableCellEditor/TableCellEditor.d.ts +5 -7
  39. package/dist/types/src/components/TableCellEditor/TableCellEditor.d.ts.map +1 -1
  40. package/dist/types/src/components/TableCellEditor/TableCellEditor.stories.d.ts +3 -3
  41. package/dist/types/src/components/TableCellEditor/TableCellEditor.stories.d.ts.map +1 -1
  42. package/dist/types/src/components/testing.d.ts +0 -2
  43. package/dist/types/src/components/testing.d.ts.map +1 -1
  44. package/dist/types/src/hooks/index.d.ts +2 -1
  45. package/dist/types/src/hooks/index.d.ts.map +1 -1
  46. package/dist/types/src/hooks/useProjectionModel.d.ts +5 -0
  47. package/dist/types/src/hooks/useProjectionModel.d.ts.map +1 -0
  48. package/dist/types/src/hooks/useTableModel.d.ts +4 -5
  49. package/dist/types/src/hooks/useTableModel.d.ts.map +1 -1
  50. package/dist/types/src/model/table-model.d.ts +6 -8
  51. package/dist/types/src/model/table-model.d.ts.map +1 -1
  52. package/dist/types/src/model/table-sorting.d.ts +7 -3
  53. package/dist/types/src/model/table-sorting.d.ts.map +1 -1
  54. package/dist/types/src/playwright/TableManager.d.ts +1 -1
  55. package/dist/types/src/playwright/TableManager.d.ts.map +1 -1
  56. package/dist/types/src/testing/useTestTableModel.d.ts +19 -15
  57. package/dist/types/src/testing/useTestTableModel.d.ts.map +1 -1
  58. package/dist/types/src/translations.d.ts +2 -2
  59. package/dist/types/src/types/Table.d.ts +28 -0
  60. package/dist/types/src/types/Table.d.ts.map +1 -0
  61. package/dist/types/src/types/index.d.ts +1 -1
  62. package/dist/types/src/types/index.d.ts.map +1 -1
  63. package/dist/types/src/util/dynamic-table.d.ts +9 -9
  64. package/dist/types/src/util/dynamic-table.d.ts.map +1 -1
  65. package/dist/types/tsconfig.tsbuildinfo +1 -1
  66. package/package.json +38 -38
  67. package/src/components/Table/ColumnActionsMenu.tsx +4 -1
  68. package/src/components/Table/ColumnSettings.tsx +2 -3
  69. package/src/components/Table/DynamicTable.stories.tsx +7 -9
  70. package/src/components/Table/DynamicTable.tsx +18 -10
  71. package/src/components/Table/Relations.stories.tsx +9 -18
  72. package/src/components/Table/Table.stories.tsx +52 -59
  73. package/src/components/Table/Table.tsx +317 -304
  74. package/src/components/TableCellEditor/CellValidationMessage.tsx +1 -1
  75. package/src/components/TableCellEditor/FormCellEditor.tsx +101 -108
  76. package/src/components/TableCellEditor/TableCellEditor.stories.tsx +11 -8
  77. package/src/components/TableCellEditor/TableCellEditor.tsx +29 -29
  78. package/src/components/TableToolbar/TableToolbar.tsx +1 -1
  79. package/src/components/testing.ts +3 -3
  80. package/src/hooks/index.ts +2 -1
  81. package/src/hooks/useProjectionModel.ts +19 -0
  82. package/src/hooks/useTableModel.ts +11 -13
  83. package/src/model/table-model.test.ts +4 -4
  84. package/src/model/table-model.ts +29 -38
  85. package/src/model/table-presentation.test.ts +4 -4
  86. package/src/model/table-presentation.ts +9 -9
  87. package/src/model/table-sorting.ts +21 -12
  88. package/src/playwright/TableManager.ts +5 -5
  89. package/src/playwright/smoke.spec.ts +1 -1
  90. package/src/testing/useTestTableModel.ts +31 -27
  91. package/src/translations.ts +2 -2
  92. package/src/types/Table.ts +90 -0
  93. package/src/types/index.ts +1 -1
  94. package/src/util/dynamic-table.ts +11 -16
  95. package/dist/lib/browser/chunk-2PFAPQL4.mjs +0 -66
  96. package/dist/lib/browser/chunk-2PFAPQL4.mjs.map +0 -7
  97. package/dist/lib/browser/chunk-GS2UNGJK.mjs.map +0 -7
  98. package/dist/lib/node-esm/chunk-6POOFFYF.mjs +0 -67
  99. package/dist/lib/node-esm/chunk-6POOFFYF.mjs.map +0 -7
  100. package/dist/lib/node-esm/chunk-TRR3C5NX.mjs.map +0 -7
  101. package/dist/types/src/types/schema.d.ts +0 -28
  102. package/dist/types/src/types/schema.d.ts.map +0 -1
  103. package/src/types/schema.ts +0 -73
@@ -1 +1 @@
1
- {"inputs":{"src/translations.ts":{"bytes":4073,"imports":[],"format":"esm"},"src/types/schema.ts":{"bytes":7193,"imports":[{"path":"effect/Match","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/types/index.ts":{"bytes":506,"imports":[{"path":"src/types/schema.ts","kind":"import-statement","original":"./schema"}],"format":"esm"},"src/util/dynamic-table.ts":{"bytes":9977,"imports":[{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"src/util/signals.ts":{"bytes":866,"imports":[],"format":"esm"},"src/util/table-buttons.ts":{"bytes":14540,"imports":[],"format":"esm"},"src/util/table-controls.ts":{"bytes":9201,"imports":[{"path":"@dxos/lit-grid","kind":"import-statement","external":true}],"format":"esm"},"src/util/schema.ts":{"bytes":4055,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"effect/SchemaAST","kind":"import-statement","external":true}],"format":"esm"},"src/util/index.ts":{"bytes":851,"imports":[{"path":"src/util/dynamic-table.ts","kind":"import-statement","original":"./dynamic-table"},{"path":"src/util/signals.ts","kind":"import-statement","original":"./signals"},{"path":"src/util/table-buttons.ts","kind":"import-statement","original":"./table-buttons"},{"path":"src/util/table-controls.ts","kind":"import-statement","original":"./table-controls"},{"path":"src/util/schema.ts","kind":"import-statement","original":"./schema"}],"format":"esm"},"src/util/tag.ts":{"bytes":2842,"imports":[],"format":"esm"},"src/model/selection-model.ts":{"bytes":11746,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"src/util/index.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"src/model/table-sorting.ts":{"bytes":22800,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"lodash.orderby","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"format":"esm"},"src/model/table-model.ts":{"bytes":71009,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"},{"path":"src/util/index.ts","kind":"import-statement","original":"../util"},{"path":"src/util/tag.ts","kind":"import-statement","original":"../util/tag"},{"path":"src/model/selection-model.ts","kind":"import-statement","original":"./selection-model"},{"path":"src/model/table-sorting.ts","kind":"import-statement","original":"./table-sorting"}],"format":"esm"},"src/model/modal-controller.ts":{"bytes":6301,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true}],"format":"esm"},"src/model/table-presentation.ts":{"bytes":56306,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect/Predicate","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/util/index.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"src/model/index.ts":{"bytes":768,"imports":[{"path":"src/model/table-model.ts","kind":"import-statement","original":"./table-model"},{"path":"src/model/modal-controller.ts","kind":"import-statement","original":"./modal-controller"},{"path":"src/model/table-presentation.ts","kind":"import-statement","original":"./table-presentation"}],"format":"esm"},"src/components/TableCellEditor/CellValidationMessage.tsx":{"bytes":4390,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true}],"format":"esm"},"src/components/TableCellEditor/FormCellEditor.tsx":{"bytes":25438,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/translations.ts","kind":"import-statement","original":"../../translations"},{"path":"src/util/index.ts","kind":"import-statement","original":"../../util"}],"format":"esm"},"src/components/TableCellEditor/TableCellEditor.tsx":{"bytes":28873,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"src/components/TableCellEditor/CellValidationMessage.tsx","kind":"import-statement","original":"./CellValidationMessage"},{"path":"src/components/TableCellEditor/FormCellEditor.tsx","kind":"import-statement","original":"./FormCellEditor"}],"format":"esm"},"src/components/TableCellEditor/index.ts":{"bytes":579,"imports":[{"path":"src/components/TableCellEditor/TableCellEditor.tsx","kind":"import-statement","original":"./TableCellEditor"}],"format":"esm"},"src/components/Table/ColumnActionsMenu.tsx":{"bytes":8691,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/translations.ts","kind":"import-statement","original":"../../translations"}],"format":"esm"},"src/components/Table/ColumnSettings.tsx":{"bytes":8958,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"format":"esm"},"src/components/Table/RowActionsMenu.tsx":{"bytes":7087,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/translations.ts","kind":"import-statement","original":"../../translations"}],"format":"esm"},"src/components/Table/Table.tsx":{"bytes":49636,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect/String","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"src/model/index.ts","kind":"import-statement","original":"../../model"},{"path":"src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"src/components/TableCellEditor/index.ts","kind":"import-statement","original":"../TableCellEditor"},{"path":"src/components/Table/ColumnActionsMenu.tsx","kind":"import-statement","original":"./ColumnActionsMenu"},{"path":"src/components/Table/ColumnSettings.tsx","kind":"import-statement","original":"./ColumnSettings"},{"path":"src/components/Table/RowActionsMenu.tsx","kind":"import-statement","original":"./RowActionsMenu"}],"format":"esm"},"src/hooks/useTableModel.ts":{"bytes":10135,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"lodash.orderby","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/model/index.ts","kind":"import-statement","original":"../model"}],"format":"esm"},"src/hooks/useAddRow.ts":{"bytes":3059,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true}],"format":"esm"},"src/hooks/index.ts":{"bytes":565,"imports":[{"path":"src/hooks/useTableModel.ts","kind":"import-statement","original":"./useTableModel"},{"path":"src/hooks/useAddRow.ts","kind":"import-statement","original":"./useAddRow"}],"format":"esm"},"src/components/Table/DynamicTable.tsx":{"bytes":10620,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"src/hooks/index.ts","kind":"import-statement","original":"../../hooks"},{"path":"src/model/index.ts","kind":"import-statement","original":"../../model"},{"path":"src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"src/components/Table/Table.tsx","kind":"import-statement","original":"./Table"}],"format":"esm"},"src/components/Table/index.ts":{"bytes":563,"imports":[{"path":"src/components/Table/Table.tsx","kind":"import-statement","original":"./Table"},{"path":"src/components/Table/DynamicTable.tsx","kind":"import-statement","original":"./DynamicTable"}],"format":"esm"},"src/components/TableToolbar/TableToolbar.tsx":{"bytes":9863,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"src/translations.ts","kind":"import-statement","original":"../../translations"}],"format":"esm"},"src/components/TableToolbar/index.ts":{"bytes":489,"imports":[{"path":"src/components/TableToolbar/TableToolbar.tsx","kind":"import-statement","original":"./TableToolbar"}],"format":"esm"},"src/components/index.ts":{"bytes":557,"imports":[{"path":"src/components/Table/index.ts","kind":"import-statement","original":"./Table"},{"path":"src/components/TableToolbar/index.ts","kind":"import-statement","original":"./TableToolbar"}],"format":"esm"},"src/index.ts":{"bytes":961,"imports":[{"path":"src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"src/hooks/index.ts","kind":"import-statement","original":"./hooks"},{"path":"src/model/index.ts","kind":"import-statement","original":"./model"},{"path":"src/util/index.ts","kind":"import-statement","original":"./util"}],"format":"esm"},"src/testing/useTestTableModel.ts":{"bytes":13107,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/testing","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/hooks/index.ts","kind":"import-statement","original":"../hooks"},{"path":"src/model/index.ts","kind":"import-statement","original":"../model"}],"format":"esm"},"src/testing/index.ts":{"bytes":486,"imports":[{"path":"src/testing/useTestTableModel.ts","kind":"import-statement","original":"./useTestTableModel"}],"format":"esm"}},"outputs":{"dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":79232},"dist/lib/node-esm/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-TRR3C5NX.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-6POOFFYF.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect/String","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true}],"exports":["BUTTON_IDENTIFIERS","CONTROL_IDENTIFIERS","CheckboxStory","DynamicTable","ModalController","SwitchStory","Table","TableModel","TablePresentation","TableToolbar","cellClassesForRowSelection","getBaseSchema","makeDynamicTable","narrowSchema","tableButtons","tableControls","touch","translations","useAddRow","useTableModel"],"entryPoint":"src/index.ts","inputs":{"src/translations.ts":{"bytesInOutput":1169},"src/components/Table/Table.tsx":{"bytesInOutput":11792},"src/components/TableCellEditor/TableCellEditor.tsx":{"bytesInOutput":7576},"src/components/TableCellEditor/CellValidationMessage.tsx":{"bytesInOutput":1117},"src/components/TableCellEditor/FormCellEditor.tsx":{"bytesInOutput":6828},"src/components/TableCellEditor/index.ts":{"bytesInOutput":0},"src/components/Table/ColumnActionsMenu.tsx":{"bytesInOutput":2329},"src/components/Table/ColumnSettings.tsx":{"bytesInOutput":2437},"src/components/Table/RowActionsMenu.tsx":{"bytesInOutput":1832},"src/components/Table/index.ts":{"bytesInOutput":0},"src/components/Table/DynamicTable.tsx":{"bytesInOutput":2179},"src/components/index.ts":{"bytesInOutput":0},"src/components/TableToolbar/TableToolbar.tsx":{"bytesInOutput":2204},"src/components/TableToolbar/index.ts":{"bytesInOutput":0},"src/index.ts":{"bytesInOutput":0}},"bytes":40845},"dist/lib/node-esm/testing/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7073},"dist/lib/node-esm/testing/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-TRR3C5NX.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-6POOFFYF.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/testing","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["useTestTableModel"],"entryPoint":"src/testing/index.ts","inputs":{"src/testing/useTestTableModel.ts":{"bytesInOutput":3095},"src/testing/index.ts":{"bytesInOutput":0}},"bytes":3414},"dist/lib/node-esm/chunk-TRR3C5NX.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":110118},"dist/lib/node-esm/chunk-TRR3C5NX.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-6POOFFYF.mjs","kind":"import-statement"},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/lit-grid","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"effect/SchemaAST","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"lodash.orderby","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect/Predicate","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"lodash.orderby","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true}],"exports":["BUTTON_IDENTIFIERS","CONTROL_IDENTIFIERS","CheckboxStory","ModalController","SwitchStory","TableModel","TablePresentation","cellClassesForRowSelection","getBaseSchema","makeDynamicTable","narrowSchema","tableButtons","tableControls","touch","useAddRow","useTableModel"],"inputs":{"src/util/dynamic-table.ts":{"bytesInOutput":2125},"src/util/signals.ts":{"bytesInOutput":30},"src/util/table-buttons.ts":{"bytesInOutput":3500},"src/util/table-controls.ts":{"bytesInOutput":2045},"src/util/schema.ts":{"bytesInOutput":498},"src/util/index.ts":{"bytesInOutput":0},"src/model/table-model.ts":{"bytesInOutput":17219},"src/util/tag.ts":{"bytesInOutput":334},"src/model/selection-model.ts":{"bytesInOutput":2649},"src/model/table-sorting.ts":{"bytesInOutput":4409},"src/model/modal-controller.ts":{"bytesInOutput":1267},"src/model/table-presentation.ts":{"bytesInOutput":13881},"src/model/index.ts":{"bytesInOutput":0},"src/hooks/useTableModel.ts":{"bytesInOutput":2190},"src/hooks/useAddRow.ts":{"bytesInOutput":389},"src/hooks/index.ts":{"bytesInOutput":0}},"bytes":51435},"dist/lib/node-esm/types/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/types/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-6POOFFYF.mjs","kind":"import-statement"}],"exports":["Table"],"entryPoint":"src/types/index.ts","inputs":{},"bytes":223},"dist/lib/node-esm/chunk-6POOFFYF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3954},"dist/lib/node-esm/chunk-6POOFFYF.mjs":{"imports":[{"path":"effect/Match","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["schema_exports"],"inputs":{"src/types/schema.ts":{"bytesInOutput":1563},"src/types/index.ts":{"bytesInOutput":0}},"bytes":1920}}}
1
+ {"inputs":{"src/translations.ts":{"bytes":4039,"imports":[],"format":"esm"},"src/types/Table.ts":{"bytes":8541,"imports":[{"path":"effect/Match","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"effect/SchemaAST","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/types/index.ts":{"bytes":505,"imports":[{"path":"src/types/Table.ts","kind":"import-statement","original":"./Table"}],"format":"esm"},"src/util/dynamic-table.ts":{"bytes":9814,"imports":[{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"src/util/signals.ts":{"bytes":866,"imports":[],"format":"esm"},"src/util/table-buttons.ts":{"bytes":14540,"imports":[],"format":"esm"},"src/util/table-controls.ts":{"bytes":9201,"imports":[{"path":"@dxos/lit-grid","kind":"import-statement","external":true}],"format":"esm"},"src/util/schema.ts":{"bytes":4055,"imports":[{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"effect/SchemaAST","kind":"import-statement","external":true}],"format":"esm"},"src/util/index.ts":{"bytes":851,"imports":[{"path":"src/util/dynamic-table.ts","kind":"import-statement","original":"./dynamic-table"},{"path":"src/util/signals.ts","kind":"import-statement","original":"./signals"},{"path":"src/util/table-buttons.ts","kind":"import-statement","original":"./table-buttons"},{"path":"src/util/table-controls.ts","kind":"import-statement","original":"./table-controls"},{"path":"src/util/schema.ts","kind":"import-statement","original":"./schema"}],"format":"esm"},"src/util/tag.ts":{"bytes":2842,"imports":[],"format":"esm"},"src/model/selection-model.ts":{"bytes":11746,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"src/util/index.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"src/model/table-sorting.ts":{"bytes":23330,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"lodash.orderby","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"format":"esm"},"src/model/table-model.ts":{"bytes":70306,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/util/index.ts","kind":"import-statement","original":"../util"},{"path":"src/util/tag.ts","kind":"import-statement","original":"../util/tag"},{"path":"src/model/selection-model.ts","kind":"import-statement","original":"./selection-model"},{"path":"src/model/table-sorting.ts","kind":"import-statement","original":"./table-sorting"}],"format":"esm"},"src/model/modal-controller.ts":{"bytes":6301,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true}],"format":"esm"},"src/model/table-presentation.ts":{"bytes":56558,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect/Predicate","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/util/index.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"src/model/index.ts":{"bytes":768,"imports":[{"path":"src/model/table-model.ts","kind":"import-statement","original":"./table-model"},{"path":"src/model/modal-controller.ts","kind":"import-statement","original":"./modal-controller"},{"path":"src/model/table-presentation.ts","kind":"import-statement","original":"./table-presentation"}],"format":"esm"},"src/components/TableCellEditor/CellValidationMessage.tsx":{"bytes":4390,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true}],"format":"esm"},"src/components/TableCellEditor/FormCellEditor.tsx":{"bytes":25752,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/translations.ts","kind":"import-statement","original":"../../translations"},{"path":"src/util/index.ts","kind":"import-statement","original":"../../util"}],"format":"esm"},"src/components/TableCellEditor/TableCellEditor.tsx":{"bytes":28412,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"src/components/TableCellEditor/CellValidationMessage.tsx","kind":"import-statement","original":"./CellValidationMessage"},{"path":"src/components/TableCellEditor/FormCellEditor.tsx","kind":"import-statement","original":"./FormCellEditor"}],"format":"esm"},"src/components/TableCellEditor/index.ts":{"bytes":579,"imports":[{"path":"src/components/TableCellEditor/TableCellEditor.tsx","kind":"import-statement","original":"./TableCellEditor"}],"format":"esm"},"src/components/Table/ColumnActionsMenu.tsx":{"bytes":8711,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/translations.ts","kind":"import-statement","original":"../../translations"}],"format":"esm"},"src/components/Table/ColumnSettings.tsx":{"bytes":8910,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true}],"format":"esm"},"src/components/Table/RowActionsMenu.tsx":{"bytes":7087,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/translations.ts","kind":"import-statement","original":"../../translations"}],"format":"esm"},"src/components/Table/Table.tsx":{"bytes":49888,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect/String","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"src/model/index.ts","kind":"import-statement","original":"../../model"},{"path":"src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"src/components/TableCellEditor/index.ts","kind":"import-statement","original":"../TableCellEditor"},{"path":"src/components/Table/ColumnActionsMenu.tsx","kind":"import-statement","original":"./ColumnActionsMenu"},{"path":"src/components/Table/ColumnSettings.tsx","kind":"import-statement","original":"./ColumnSettings"},{"path":"src/components/Table/RowActionsMenu.tsx","kind":"import-statement","original":"./RowActionsMenu"}],"format":"esm"},"src/hooks/useAddRow.ts":{"bytes":3059,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true}],"format":"esm"},"src/hooks/useProjectionModel.ts":{"bytes":2307,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"src/hooks/useTableModel.ts":{"bytes":9973,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"lodash.orderby","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/model/index.ts","kind":"import-statement","original":"../model"}],"format":"esm"},"src/hooks/index.ts":{"bytes":679,"imports":[{"path":"src/hooks/useAddRow.ts","kind":"import-statement","original":"./useAddRow"},{"path":"src/hooks/useProjectionModel.ts","kind":"import-statement","original":"./useProjectionModel"},{"path":"src/hooks/useTableModel.ts","kind":"import-statement","original":"./useTableModel"}],"format":"esm"},"src/components/Table/DynamicTable.tsx":{"bytes":11757,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/hooks/index.ts","kind":"import-statement","original":"../../hooks"},{"path":"src/model/index.ts","kind":"import-statement","original":"../../model"},{"path":"src/util/index.ts","kind":"import-statement","original":"../../util"},{"path":"src/components/Table/Table.tsx","kind":"import-statement","original":"./Table"}],"format":"esm"},"src/components/Table/index.ts":{"bytes":563,"imports":[{"path":"src/components/Table/Table.tsx","kind":"import-statement","original":"./Table"},{"path":"src/components/Table/DynamicTable.tsx","kind":"import-statement","original":"./DynamicTable"}],"format":"esm"},"src/components/TableToolbar/TableToolbar.tsx":{"bytes":9877,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"src/translations.ts","kind":"import-statement","original":"../../translations"}],"format":"esm"},"src/components/TableToolbar/index.ts":{"bytes":489,"imports":[{"path":"src/components/TableToolbar/TableToolbar.tsx","kind":"import-statement","original":"./TableToolbar"}],"format":"esm"},"src/components/index.ts":{"bytes":557,"imports":[{"path":"src/components/Table/index.ts","kind":"import-statement","original":"./Table"},{"path":"src/components/TableToolbar/index.ts","kind":"import-statement","original":"./TableToolbar"}],"format":"esm"},"src/index.ts":{"bytes":961,"imports":[{"path":"src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"src/hooks/index.ts","kind":"import-statement","original":"./hooks"},{"path":"src/model/index.ts","kind":"import-statement","original":"./model"},{"path":"src/util/index.ts","kind":"import-statement","original":"./util"}],"format":"esm"},"src/testing/useTestTableModel.ts":{"bytes":12582,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/testing","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"src/hooks/index.ts","kind":"import-statement","original":"../hooks"},{"path":"src/model/index.ts","kind":"import-statement","original":"../model"},{"path":"src/types/index.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"src/testing/index.ts":{"bytes":486,"imports":[{"path":"src/testing/useTestTableModel.ts","kind":"import-statement","original":"./useTestTableModel"}],"format":"esm"}},"outputs":{"dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":79764},"dist/lib/node-esm/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-P73ALX3N.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-T6PXZQ6W.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"effect/String","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@codemirror/view","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true}],"exports":["BUTTON_IDENTIFIERS","CONTROL_IDENTIFIERS","CheckboxStory","DynamicTable","ModalController","SwitchStory","Table","TableModel","TablePresentation","TableToolbar","cellClassesForRowSelection","getBaseSchema","makeDynamicTable","narrowSchema","tableButtons","tableControls","touch","translations","useAddRow","useProjectionModel","useTableModel"],"entryPoint":"src/index.ts","inputs":{"src/translations.ts":{"bytesInOutput":1155},"src/components/Table/Table.tsx":{"bytesInOutput":11993},"src/components/TableCellEditor/TableCellEditor.tsx":{"bytesInOutput":7409},"src/components/TableCellEditor/CellValidationMessage.tsx":{"bytesInOutput":1117},"src/components/TableCellEditor/FormCellEditor.tsx":{"bytesInOutput":6889},"src/components/TableCellEditor/index.ts":{"bytesInOutput":0},"src/components/Table/ColumnActionsMenu.tsx":{"bytesInOutput":2329},"src/components/Table/ColumnSettings.tsx":{"bytesInOutput":2437},"src/components/Table/RowActionsMenu.tsx":{"bytesInOutput":1832},"src/components/Table/index.ts":{"bytesInOutput":0},"src/components/Table/DynamicTable.tsx":{"bytesInOutput":2488},"src/components/index.ts":{"bytesInOutput":0},"src/components/TableToolbar/TableToolbar.tsx":{"bytesInOutput":2210},"src/components/TableToolbar/index.ts":{"bytesInOutput":0},"src/index.ts":{"bytesInOutput":0}},"bytes":41285},"dist/lib/node-esm/testing/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6949},"dist/lib/node-esm/testing/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-P73ALX3N.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-T6PXZQ6W.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-client/testing","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["useTestTableModel"],"entryPoint":"src/testing/index.ts","inputs":{"src/testing/useTestTableModel.ts":{"bytesInOutput":2620},"src/testing/index.ts":{"bytesInOutput":0}},"bytes":2986},"dist/lib/node-esm/chunk-P73ALX3N.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":111233},"dist/lib/node-esm/chunk-P73ALX3N.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-T6PXZQ6W.mjs","kind":"import-statement"},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@dxos/lit-grid","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"effect/SchemaAST","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/keys","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"lodash.orderby","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"effect/Predicate","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-grid","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"lodash.orderby","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-attention","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["BUTTON_IDENTIFIERS","CONTROL_IDENTIFIERS","CheckboxStory","ModalController","SwitchStory","TableModel","TablePresentation","cellClassesForRowSelection","getBaseSchema","makeDynamicTable","narrowSchema","tableButtons","tableControls","touch","useAddRow","useProjectionModel","useTableModel"],"inputs":{"src/util/dynamic-table.ts":{"bytesInOutput":2085},"src/util/signals.ts":{"bytesInOutput":30},"src/util/table-buttons.ts":{"bytesInOutput":3500},"src/util/table-controls.ts":{"bytesInOutput":2045},"src/util/schema.ts":{"bytesInOutput":498},"src/util/index.ts":{"bytesInOutput":0},"src/model/table-model.ts":{"bytesInOutput":16945},"src/util/tag.ts":{"bytesInOutput":334},"src/model/selection-model.ts":{"bytesInOutput":2649},"src/model/table-sorting.ts":{"bytesInOutput":4465},"src/model/modal-controller.ts":{"bytesInOutput":1267},"src/model/table-presentation.ts":{"bytesInOutput":13929},"src/model/index.ts":{"bytesInOutput":0},"src/hooks/useAddRow.ts":{"bytesInOutput":389},"src/hooks/useProjectionModel.ts":{"bytesInOutput":469},"src/hooks/useTableModel.ts":{"bytesInOutput":2181},"src/hooks/index.ts":{"bytesInOutput":0}},"bytes":51742},"dist/lib/node-esm/types/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/types/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-T6PXZQ6W.mjs","kind":"import-statement"}],"exports":["Table"],"entryPoint":"src/types/index.ts","inputs":{},"bytes":221},"dist/lib/node-esm/chunk-T6PXZQ6W.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4519},"dist/lib/node-esm/chunk-T6PXZQ6W.mjs":{"imports":[{"path":"effect/Match","kind":"import-statement","external":true},{"path":"effect/Schema","kind":"import-statement","external":true},{"path":"effect/SchemaAST","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/echo/internal","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["Table_exports"],"inputs":{"src/types/Table.ts":{"bytesInOutput":1892},"src/types/index.ts":{"bytesInOutput":0}},"bytes":2247}}}
@@ -2,42 +2,29 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  TablePresentation,
4
4
  useAddRow,
5
+ useProjectionModel,
5
6
  useTableModel
6
- } from "../chunk-TRR3C5NX.mjs";
7
- import "../chunk-6POOFFYF.mjs";
7
+ } from "../chunk-P73ALX3N.mjs";
8
+ import {
9
+ Table_exports
10
+ } from "../chunk-T6PXZQ6W.mjs";
8
11
 
9
12
  // src/testing/useTestTableModel.ts
10
13
  import { useCallback, useMemo, useRef } from "react";
11
- import { isMutable, toJsonSchema } from "@dxos/echo/internal";
14
+ import { isMutable } from "@dxos/echo/internal";
12
15
  import { useGlobalFilteredObjects } from "@dxos/plugin-search";
13
16
  import { faker } from "@dxos/random";
14
- import { useClient } from "@dxos/react-client";
15
17
  import { Filter, useQuery, useSchema } from "@dxos/react-client/echo";
16
18
  import { useClientProvider } from "@dxos/react-client/testing";
17
- import { ProjectionModel, View, getTypenameFromQuery } from "@dxos/schema";
19
+ import { getTypenameFromQuery } from "@dxos/schema";
18
20
  faker.seed(0);
19
21
  var useTestTableModel = () => {
20
- const client = useClient();
21
22
  const { space } = useClientProvider();
22
- const views = useQuery(space, Filter.type(View.View));
23
- const view = useMemo(() => views.at(0), [
24
- views
25
- ]);
26
- const typename = view?.query ? getTypenameFromQuery(view.query.ast) : void 0;
27
- const schema = useSchema(client, space, typename);
28
- const jsonSchema = useMemo(() => schema ? toJsonSchema(schema) : void 0, [
29
- schema
30
- ]);
31
- const projection = useMemo(() => {
32
- if (schema && view?.projection) {
33
- const projection2 = new ProjectionModel(toJsonSchema(schema), view.projection);
34
- projection2.normalizeView();
35
- return projection2;
36
- }
37
- }, [
38
- schema,
39
- view?.projection
40
- ]);
23
+ const tables = useQuery(space, Filter.type(Table_exports.Table));
24
+ const table = tables.at(0);
25
+ const typename = table?.view.target?.query ? getTypenameFromQuery(table.view.target.query.ast) : void 0;
26
+ const schema = useSchema(space, typename);
27
+ const projection = useProjectionModel(schema, table);
41
28
  const features = useMemo(() => ({
42
29
  selection: {
43
30
  enabled: true,
@@ -76,8 +63,7 @@ var useTestTableModel = () => {
76
63
  projection
77
64
  ]);
78
65
  const model = useTableModel({
79
- view,
80
- schema: jsonSchema,
66
+ object: table,
81
67
  projection,
82
68
  features,
83
69
  rows: filteredObjects,
@@ -91,8 +77,7 @@ var useTestTableModel = () => {
91
77
  const insertResult = model?.insertRow();
92
78
  tableRef.current?.handleInsertRowResult?.(insertResult);
93
79
  }, [
94
- model,
95
- tableRef.current
80
+ model
96
81
  ]);
97
82
  const handleSaveView = useCallback(() => {
98
83
  model?.saveView();
@@ -108,13 +93,12 @@ var useTestTableModel = () => {
108
93
  ]);
109
94
  return {
110
95
  schema,
111
- view,
96
+ table,
112
97
  projection,
113
98
  tableRef,
114
99
  model,
115
100
  presentation,
116
101
  space,
117
- client,
118
102
  handleInsertRow,
119
103
  handleSaveView,
120
104
  handleDeleteRows,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/testing/useTestTableModel.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { useCallback, useMemo, useRef } from 'react';\n\nimport { isMutable, toJsonSchema } from '@dxos/echo/internal';\nimport { useGlobalFilteredObjects } from '@dxos/plugin-search';\nimport { faker } from '@dxos/random';\nimport { useClient } from '@dxos/react-client';\nimport { Filter, useQuery, useSchema } from '@dxos/react-client/echo';\nimport { useClientProvider } from '@dxos/react-client/testing';\nimport { ProjectionModel, View, getTypenameFromQuery } from '@dxos/schema';\n\nimport { type TableController } from '../components';\nimport { useAddRow, useTableModel } from '../hooks';\nimport { TablePresentation } from '../model';\n\nfaker.seed(0); // NOTE(ZaymonFC): Required for smoke tests.\n\n/**\n * Custom hook to create and manage a test table model for storybook demonstrations.\n * Provides table data, schema, and handlers for table operations.\n */\nexport const useTestTableModel = () => {\n const client = useClient();\n const { space } = useClientProvider();\n\n const views = useQuery(space, Filter.type(View.View));\n const view = useMemo(() => views.at(0), [views]);\n const typename = view?.query ? getTypenameFromQuery(view.query.ast) : undefined;\n const schema = useSchema(client, space, typename);\n const jsonSchema = useMemo(() => (schema ? toJsonSchema(schema) : undefined), [schema]);\n\n const projection = useMemo(() => {\n if (schema && view?.projection) {\n const projection = new ProjectionModel(toJsonSchema(schema), view.projection);\n projection.normalizeView();\n return projection;\n }\n }, [schema, view?.projection]);\n\n const features = useMemo(\n () => ({\n selection: { enabled: true, mode: 'multiple' as const },\n dataEditable: true,\n schemaEditable: schema && isMutable(schema),\n }),\n [schema],\n );\n\n const objects = useQuery(space, schema ? Filter.type(schema) : Filter.nothing());\n const filteredObjects = useGlobalFilteredObjects(objects);\n\n const tableRef = useRef<TableController>(null);\n const handleCellUpdate = useCallback((cell: any) => {\n tableRef.current?.update?.(cell);\n }, []);\n\n const handleRowOrderChange = useCallback(() => {\n tableRef.current?.update?.();\n }, []);\n\n const addRow = useAddRow({ space, schema });\n\n const handleDeleteRows = useCallback(\n (_: number, objects: any[]) => {\n for (const object of objects) {\n space?.db.remove(object);\n }\n },\n [space],\n );\n\n const handleDeleteColumn = useCallback(\n (fieldId: string) => {\n if (projection) {\n projection.deleteFieldProjection(fieldId);\n }\n },\n [projection],\n );\n\n const model = useTableModel({\n view,\n schema: jsonSchema,\n projection,\n features,\n rows: filteredObjects,\n onInsertRow: addRow,\n onDeleteRows: handleDeleteRows,\n onDeleteColumn: handleDeleteColumn,\n onCellUpdate: handleCellUpdate,\n onRowOrderChange: handleRowOrderChange,\n });\n\n const handleInsertRow = useCallback(() => {\n const insertResult = model?.insertRow();\n tableRef.current?.handleInsertRowResult?.(insertResult);\n }, [model, tableRef.current]);\n\n const handleSaveView = useCallback(() => {\n model?.saveView();\n }, [model]);\n\n const presentation = useMemo(() => {\n if (model) {\n return new TablePresentation(model);\n }\n }, [model]);\n\n return {\n schema,\n view,\n projection,\n tableRef,\n model,\n presentation,\n space,\n client,\n handleInsertRow,\n handleSaveView,\n handleDeleteRows,\n handleDeleteColumn,\n };\n};\n"],
5
- "mappings": ";;;;;;;;;AAIA,SAASA,aAAaC,SAASC,cAAc;AAE7C,SAASC,WAAWC,oBAAoB;AACxC,SAASC,gCAAgC;AACzC,SAASC,aAAa;AACtB,SAASC,iBAAiB;AAC1B,SAASC,QAAQC,UAAUC,iBAAiB;AAC5C,SAASC,yBAAyB;AAClC,SAASC,iBAAiBC,MAAMC,4BAA4B;AAM5DC,MAAMC,KAAK,CAAA;AAMJ,IAAMC,oBAAoB,MAAA;AAC/B,QAAMC,SAASC,UAAAA;AACf,QAAM,EAAEC,MAAK,IAAKC,kBAAAA;AAElB,QAAMC,QAAQC,SAASH,OAAOI,OAAOC,KAAKC,KAAKA,IAAI,CAAA;AACnD,QAAMC,OAAOC,QAAQ,MAAMN,MAAMO,GAAG,CAAA,GAAI;IAACP;GAAM;AAC/C,QAAMQ,WAAWH,MAAMI,QAAQC,qBAAqBL,KAAKI,MAAME,GAAG,IAAIC;AACtE,QAAMC,SAASC,UAAUlB,QAAQE,OAAOU,QAAAA;AACxC,QAAMO,aAAaT,QAAQ,MAAOO,SAASG,aAAaH,MAAAA,IAAUD,QAAY;IAACC;GAAO;AAEtF,QAAMI,aAAaX,QAAQ,MAAA;AACzB,QAAIO,UAAUR,MAAMY,YAAY;AAC9B,YAAMA,cAAa,IAAIC,gBAAgBF,aAAaH,MAAAA,GAASR,KAAKY,UAAU;AAC5EA,MAAAA,YAAWE,cAAa;AACxB,aAAOF;IACT;EACF,GAAG;IAACJ;IAAQR,MAAMY;GAAW;AAE7B,QAAMG,WAAWd,QACf,OAAO;IACLe,WAAW;MAAEC,SAAS;MAAMC,MAAM;IAAoB;IACtDC,cAAc;IACdC,gBAAgBZ,UAAUa,UAAUb,MAAAA;EACtC,IACA;IAACA;GAAO;AAGV,QAAMc,UAAU1B,SAASH,OAAOe,SAASX,OAAOC,KAAKU,MAAAA,IAAUX,OAAO0B,QAAO,CAAA;AAC7E,QAAMC,kBAAkBC,yBAAyBH,OAAAA;AAEjD,QAAMI,WAAWC,OAAwB,IAAA;AACzC,QAAMC,mBAAmBC,YAAY,CAACC,SAAAA;AACpCJ,aAASK,SAASC,SAASF,IAAAA;EAC7B,GAAG,CAAA,CAAE;AAEL,QAAMG,uBAAuBJ,YAAY,MAAA;AACvCH,aAASK,SAASC,SAAAA;EACpB,GAAG,CAAA,CAAE;AAEL,QAAME,SAASC,UAAU;IAAE1C;IAAOe;EAAO,CAAA;AAEzC,QAAM4B,mBAAmBP,YACvB,CAACQ,GAAWf,aAAAA;AACV,eAAWgB,UAAUhB,UAAS;AAC5B7B,aAAO8C,GAAGC,OAAOF,MAAAA;IACnB;EACF,GACA;IAAC7C;GAAM;AAGT,QAAMgD,qBAAqBZ,YACzB,CAACa,YAAAA;AACC,QAAI9B,YAAY;AACdA,iBAAW+B,sBAAsBD,OAAAA;IACnC;EACF,GACA;IAAC9B;GAAW;AAGd,QAAMgC,QAAQC,cAAc;IAC1B7C;IACAQ,QAAQE;IACRE;IACAG;IACA+B,MAAMtB;IACNuB,aAAab;IACbc,cAAcZ;IACda,gBAAgBR;IAChBS,cAActB;IACduB,kBAAkBlB;EACpB,CAAA;AAEA,QAAMmB,kBAAkBvB,YAAY,MAAA;AAClC,UAAMwB,eAAeT,OAAOU,UAAAA;AAC5B5B,aAASK,SAASwB,wBAAwBF,YAAAA;EAC5C,GAAG;IAACT;IAAOlB,SAASK;GAAQ;AAE5B,QAAMyB,iBAAiB3B,YAAY,MAAA;AACjCe,WAAOa,SAAAA;EACT,GAAG;IAACb;GAAM;AAEV,QAAMc,eAAezD,QAAQ,MAAA;AAC3B,QAAI2C,OAAO;AACT,aAAO,IAAIe,kBAAkBf,KAAAA;IAC/B;EACF,GAAG;IAACA;GAAM;AAEV,SAAO;IACLpC;IACAR;IACAY;IACAc;IACAkB;IACAc;IACAjE;IACAF;IACA6D;IACAI;IACApB;IACAK;EACF;AACF;",
6
- "names": ["useCallback", "useMemo", "useRef", "isMutable", "toJsonSchema", "useGlobalFilteredObjects", "faker", "useClient", "Filter", "useQuery", "useSchema", "useClientProvider", "ProjectionModel", "View", "getTypenameFromQuery", "faker", "seed", "useTestTableModel", "client", "useClient", "space", "useClientProvider", "views", "useQuery", "Filter", "type", "View", "view", "useMemo", "at", "typename", "query", "getTypenameFromQuery", "ast", "undefined", "schema", "useSchema", "jsonSchema", "toJsonSchema", "projection", "ProjectionModel", "normalizeView", "features", "selection", "enabled", "mode", "dataEditable", "schemaEditable", "isMutable", "objects", "nothing", "filteredObjects", "useGlobalFilteredObjects", "tableRef", "useRef", "handleCellUpdate", "useCallback", "cell", "current", "update", "handleRowOrderChange", "addRow", "useAddRow", "handleDeleteRows", "_", "object", "db", "remove", "handleDeleteColumn", "fieldId", "deleteFieldProjection", "model", "useTableModel", "rows", "onInsertRow", "onDeleteRows", "onDeleteColumn", "onCellUpdate", "onRowOrderChange", "handleInsertRow", "insertResult", "insertRow", "handleInsertRowResult", "handleSaveView", "saveView", "presentation", "TablePresentation"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type RefObject, useCallback, useMemo, useRef } from 'react';\n\nimport { type Type } from '@dxos/echo';\nimport { isMutable } from '@dxos/echo/internal';\nimport { useGlobalFilteredObjects } from '@dxos/plugin-search';\nimport { faker } from '@dxos/random';\nimport { Filter, type Space, useQuery, useSchema } from '@dxos/react-client/echo';\nimport { useClientProvider } from '@dxos/react-client/testing';\nimport { type ProjectionModel, getTypenameFromQuery } from '@dxos/schema';\n\nimport { type TableController } from '../components';\nimport { useAddRow, useProjectionModel, useTableModel } from '../hooks';\nimport { type TableModel, TablePresentation } from '../model';\nimport { Table } from '../types';\n\nfaker.seed(0); // NOTE(ZaymonFC): Required for smoke tests.\n\nexport type TestTableModel<T extends Type.Entity.Any = Type.Entity.Any> = {\n schema: T | undefined;\n table: Table.Table | undefined;\n projection: ProjectionModel | undefined;\n tableRef: RefObject<TableController | null>;\n model: TableModel | undefined;\n presentation: TablePresentation | undefined;\n space: Space | undefined;\n handleInsertRow: () => void;\n handleSaveView: () => void;\n handleDeleteRows: (rowIndex: number, objects: any[]) => void;\n handleDeleteColumn: (fieldId: string) => void;\n};\n\n/**\n * Custom hook to create and manage a test table model for storybook demonstrations.\n * Provides table data, schema, and handlers for table operations.\n */\nexport const useTestTableModel = <T extends Type.Entity.Any = Type.Entity.Any>(): TestTableModel<T> => {\n const { space } = useClientProvider();\n\n const tables = useQuery(space, Filter.type(Table.Table));\n const table = tables.at(0);\n const typename = table?.view.target?.query ? getTypenameFromQuery(table.view.target.query.ast) : undefined;\n const schema = useSchema<T>(space, typename);\n const projection = useProjectionModel(schema, table);\n\n const features = useMemo(\n () => ({\n selection: { enabled: true, mode: 'multiple' as const },\n dataEditable: true,\n schemaEditable: schema && isMutable(schema),\n }),\n [schema],\n );\n\n const objects = useQuery(space, schema ? Filter.type(schema) : Filter.nothing());\n const filteredObjects = useGlobalFilteredObjects(objects);\n\n const tableRef = useRef<TableController>(null);\n const handleCellUpdate = useCallback((cell: any) => {\n tableRef.current?.update?.(cell);\n }, []);\n\n const handleRowOrderChange = useCallback(() => {\n tableRef.current?.update?.();\n }, []);\n\n const addRow = useAddRow({ space, schema });\n\n const handleDeleteRows = useCallback(\n (_: number, objects: any[]) => {\n for (const object of objects) {\n space?.db.remove(object);\n }\n },\n [space],\n );\n\n const handleDeleteColumn = useCallback(\n (fieldId: string) => {\n if (projection) {\n projection.deleteFieldProjection(fieldId);\n }\n },\n [projection],\n );\n\n const model = useTableModel({\n object: table,\n projection,\n features,\n rows: filteredObjects,\n onInsertRow: addRow,\n onDeleteRows: handleDeleteRows,\n onDeleteColumn: handleDeleteColumn,\n onCellUpdate: handleCellUpdate,\n onRowOrderChange: handleRowOrderChange,\n });\n\n const handleInsertRow = useCallback(() => {\n const insertResult = model?.insertRow();\n tableRef.current?.handleInsertRowResult?.(insertResult);\n }, [model]);\n\n const handleSaveView = useCallback(() => {\n model?.saveView();\n }, [model]);\n\n const presentation = useMemo(() => {\n if (model) {\n return new TablePresentation(model);\n }\n }, [model]);\n\n return {\n schema,\n table,\n projection,\n tableRef,\n model,\n presentation,\n space,\n handleInsertRow,\n handleSaveView,\n handleDeleteRows,\n handleDeleteColumn,\n };\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;AAIA,SAAyBA,aAAaC,SAASC,cAAc;AAG7D,SAASC,iBAAiB;AAC1B,SAASC,gCAAgC;AACzC,SAASC,aAAa;AACtB,SAASC,QAAoBC,UAAUC,iBAAiB;AACxD,SAASC,yBAAyB;AAClC,SAA+BC,4BAA4B;AAO3DC,MAAMC,KAAK,CAAA;AAoBJ,IAAMC,oBAAoB,MAAA;AAC/B,QAAM,EAAEC,MAAK,IAAKC,kBAAAA;AAElB,QAAMC,SAASC,SAASH,OAAOI,OAAOC,KAAKC,cAAMA,KAAK,CAAA;AACtD,QAAMC,QAAQL,OAAOM,GAAG,CAAA;AACxB,QAAMC,WAAWF,OAAOG,KAAKC,QAAQC,QAAQC,qBAAqBN,MAAMG,KAAKC,OAAOC,MAAME,GAAG,IAAIC;AACjG,QAAMC,SAASC,UAAajB,OAAOS,QAAAA;AACnC,QAAMS,aAAaC,mBAAmBH,QAAQT,KAAAA;AAE9C,QAAMa,WAAWC,QACf,OAAO;IACLC,WAAW;MAAEC,SAAS;MAAMC,MAAM;IAAoB;IACtDC,cAAc;IACdC,gBAAgBV,UAAUW,UAAUX,MAAAA;EACtC,IACA;IAACA;GAAO;AAGV,QAAMY,UAAUzB,SAASH,OAAOgB,SAASZ,OAAOC,KAAKW,MAAAA,IAAUZ,OAAOyB,QAAO,CAAA;AAC7E,QAAMC,kBAAkBC,yBAAyBH,OAAAA;AAEjD,QAAMI,WAAWC,OAAwB,IAAA;AACzC,QAAMC,mBAAmBC,YAAY,CAACC,SAAAA;AACpCJ,aAASK,SAASC,SAASF,IAAAA;EAC7B,GAAG,CAAA,CAAE;AAEL,QAAMG,uBAAuBJ,YAAY,MAAA;AACvCH,aAASK,SAASC,SAAAA;EACpB,GAAG,CAAA,CAAE;AAEL,QAAME,SAASC,UAAU;IAAEzC;IAAOgB;EAAO,CAAA;AAEzC,QAAM0B,mBAAmBP,YACvB,CAACQ,GAAWf,aAAAA;AACV,eAAWgB,UAAUhB,UAAS;AAC5B5B,aAAO6C,GAAGC,OAAOF,MAAAA;IACnB;EACF,GACA;IAAC5C;GAAM;AAGT,QAAM+C,qBAAqBZ,YACzB,CAACa,YAAAA;AACC,QAAI9B,YAAY;AACdA,iBAAW+B,sBAAsBD,OAAAA;IACnC;EACF,GACA;IAAC9B;GAAW;AAGd,QAAMgC,QAAQC,cAAc;IAC1BP,QAAQrC;IACRW;IACAE;IACAgC,MAAMtB;IACNuB,aAAab;IACbc,cAAcZ;IACda,gBAAgBR;IAChBS,cAActB;IACduB,kBAAkBlB;EACpB,CAAA;AAEA,QAAMmB,kBAAkBvB,YAAY,MAAA;AAClC,UAAMwB,eAAeT,OAAOU,UAAAA;AAC5B5B,aAASK,SAASwB,wBAAwBF,YAAAA;EAC5C,GAAG;IAACT;GAAM;AAEV,QAAMY,iBAAiB3B,YAAY,MAAA;AACjCe,WAAOa,SAAAA;EACT,GAAG;IAACb;GAAM;AAEV,QAAMc,eAAe3C,QAAQ,MAAA;AAC3B,QAAI6B,OAAO;AACT,aAAO,IAAIe,kBAAkBf,KAAAA;IAC/B;EACF,GAAG;IAACA;GAAM;AAEV,SAAO;IACLlC;IACAT;IACAW;IACAc;IACAkB;IACAc;IACAhE;IACA0D;IACAI;IACApB;IACAK;EACF;AACF;",
6
+ "names": ["useCallback", "useMemo", "useRef", "isMutable", "useGlobalFilteredObjects", "faker", "Filter", "useQuery", "useSchema", "useClientProvider", "getTypenameFromQuery", "faker", "seed", "useTestTableModel", "space", "useClientProvider", "tables", "useQuery", "Filter", "type", "Table", "table", "at", "typename", "view", "target", "query", "getTypenameFromQuery", "ast", "undefined", "schema", "useSchema", "projection", "useProjectionModel", "features", "useMemo", "selection", "enabled", "mode", "dataEditable", "schemaEditable", "isMutable", "objects", "nothing", "filteredObjects", "useGlobalFilteredObjects", "tableRef", "useRef", "handleCellUpdate", "useCallback", "cell", "current", "update", "handleRowOrderChange", "addRow", "useAddRow", "handleDeleteRows", "_", "object", "db", "remove", "handleDeleteColumn", "fieldId", "deleteFieldProjection", "model", "useTableModel", "rows", "onInsertRow", "onDeleteRows", "onDeleteColumn", "onCellUpdate", "onRowOrderChange", "handleInsertRow", "insertResult", "insertRow", "handleInsertRowResult", "handleSaveView", "saveView", "presentation", "TablePresentation"]
7
7
  }
@@ -1,8 +1,8 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
- schema_exports
4
- } from "../chunk-6POOFFYF.mjs";
3
+ Table_exports
4
+ } from "../chunk-T6PXZQ6W.mjs";
5
5
  export {
6
- schema_exports as Table
6
+ Table_exports as Table
7
7
  };
8
8
  //# sourceMappingURL=index.mjs.map
@@ -1,9 +1,8 @@
1
1
  import React from 'react';
2
2
  import { type ModalController, type TableModel } from '../../model';
3
- type ColumnActionsMenuProps = {
3
+ export type ColumnActionsMenuProps = {
4
4
  model: TableModel;
5
5
  modals: ModalController;
6
6
  };
7
7
  export declare const ColumnActionsMenu: ({ model, modals }: ColumnActionsMenuProps) => React.JSX.Element | null;
8
- export {};
9
8
  //# sourceMappingURL=ColumnActionsMenu.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnActionsMenu.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/ColumnActionsMenu.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAGpE,KAAK,sBAAsB,GAAG;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,eAAe,CAAA;CAAE,CAAC;AAE7E,eAAO,MAAM,iBAAiB,GAAI,mBAAmB,sBAAsB,6BAqD1E,CAAC"}
1
+ {"version":3,"file":"ColumnActionsMenu.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/ColumnActionsMenu.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAGpE,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,eAAe,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,mBAAmB,sBAAsB,6BAqD1E,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
- import { type SchemaRegistry } from '@dxos/echo-db';
2
+ import { type SchemaRegistry } from '@dxos/echo';
3
3
  import { type ModalController, type TableModel } from '../../model';
4
4
  type ColumnSettingsProps = {
5
- registry?: SchemaRegistry;
5
+ registry?: SchemaRegistry.SchemaRegistry;
6
6
  model?: TableModel;
7
7
  modals: ModalController;
8
8
  onNewColumn: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"ColumnSettings.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/ColumnSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAGzE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAKpD,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAEpE,KAAK,mBAAmB,GAAG;IACzB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,eAAe,CAAC;IACxB,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,0CAA0C,mBAAmB,6BA4D3F,CAAC"}
1
+ {"version":3,"file":"ColumnSettings.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/ColumnSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAEzE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAKjD,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAEpE,KAAK,mBAAmB,GAAG;IACzB,QAAQ,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC;IACzC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,eAAe,CAAC;IACxB,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,0CAA0C,mBAAmB,6BA4D3F,CAAC"}
@@ -1,15 +1,15 @@
1
- import type * as Schema from 'effect/Schema';
2
1
  import React from 'react';
2
+ import { type Type } from '@dxos/echo';
3
3
  import { type JsonSchemaType } from '@dxos/echo/internal';
4
4
  import { type ThemedClassName } from '@dxos/react-ui';
5
5
  import { type TableFeatures, type TableRowAction } from '../../model';
6
6
  import { type TablePropertyDefinition } from '../../util';
7
- type DynamicTableProps = ThemedClassName<{
7
+ export type DynamicTableProps<T extends Type.Entity.Any = Type.Entity.Any> = ThemedClassName<{
8
+ schema?: T;
8
9
  name?: string;
9
10
  rows: any[];
10
11
  properties?: TablePropertyDefinition[];
11
12
  jsonSchema?: JsonSchemaType;
12
- schema?: Schema.Schema.AnyNoContext;
13
13
  features?: Partial<TableFeatures>;
14
14
  rowActions?: TableRowAction[];
15
15
  onRowClick?: (row: any) => void;
@@ -18,6 +18,5 @@ type DynamicTableProps = ThemedClassName<{
18
18
  /**
19
19
  * Properties define both the schema and display characteristics of the table columns.
20
20
  */
21
- export declare const DynamicTable: ({ classNames, name, rows, properties, jsonSchema: _jsonSchema, schema, rowActions, onRowClick, onRowAction, ...props }: DynamicTableProps) => React.JSX.Element;
22
- export {};
21
+ export declare const DynamicTable: <T extends Type.Entity.Any = Type.Entity.Any>({ classNames, schema, name, rows, properties, jsonSchema: _jsonSchema, rowActions, onRowClick, onRowAction, ...props }: DynamicTableProps<T>) => React.JSX.Element;
23
22
  //# sourceMappingURL=DynamicTable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DynamicTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/DynamicTable.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,KAAK,eAAe,EAAmB,MAAM,gBAAgB,CAAC;AAIvE,OAAO,EAAE,KAAK,aAAa,EAAqB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AACzF,OAAO,EAAE,KAAK,uBAAuB,EAAmC,MAAM,YAAY,CAAC;AAI3F,KAAK,iBAAiB,GAAG,eAAe,CAAC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACvC,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAClC,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;CACtD,CAAC,CAAC;AAEH;;GAEG;AAGH,eAAO,MAAM,YAAY,GAAI,wHAW1B,iBAAiB,sBA6DnB,CAAC"}
1
+ {"version":3,"file":"DynamicTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/DynamicTable.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,KAAK,eAAe,EAAmB,MAAM,gBAAgB,CAAC;AAKvE,OAAO,EAAE,KAAK,aAAa,EAAqB,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AACzF,OAAO,EAAE,KAAK,uBAAuB,EAAmC,MAAM,YAAY,CAAC;AAI3F,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,eAAe,CAAC;IAC3F,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,UAAU,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACvC,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAClC,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;CACtD,CAAC,CAAC;AAEH;;GAEG;AAGH,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,wHAWvE,iBAAiB,CAAC,CAAC,CAAC,sBAoEtB,CAAC"}
@@ -1,22 +1,8 @@
1
1
  import { type StoryObj } from '@storybook/react-vite';
2
2
  import React from 'react';
3
- import { type JsonSchemaType } from '@dxos/echo/internal';
4
- import { type TableFeatures } from '../../model';
5
3
  declare const meta: {
6
4
  title: string;
7
- component: ({ classNames, name, rows, properties, jsonSchema: _jsonSchema, schema, rowActions, onRowClick, onRowAction, ...props }: Omit<{
8
- name?: string;
9
- rows: any[];
10
- properties?: import("../..").TablePropertyDefinition[];
11
- jsonSchema?: JsonSchemaType;
12
- schema?: import("effect/Schema").Schema.AnyNoContext;
13
- features?: Partial<TableFeatures>;
14
- rowActions?: import("../..").TableRowAction[];
15
- onRowClick?: (row: any) => void;
16
- onRowAction?: (actionId: string, datum: any) => void;
17
- }, "className"> & {
18
- classNames?: import("@dxos/react-ui-types").ClassNameValue;
19
- }) => React.JSX.Element;
5
+ component: <T extends import("@dxos/echo/Type").Entity.Any = import("@dxos/echo/Type").Entity.Any>({ classNames, schema, name, rows, properties, jsonSchema: _jsonSchema, rowActions, onRowClick, onRowAction, ...props }: import("./DynamicTable").DynamicTableProps<T>) => React.JSX.Element;
20
6
  decorators: import("@storybook/react").Decorator[];
21
7
  parameters: {
22
8
  layout: string;
@@ -27,8 +13,8 @@ declare const meta: {
27
13
  readonly 'create object label': "Create table";
28
14
  readonly 'table name placeholder': "Table name";
29
15
  readonly 'settings title': "Table settings";
30
- readonly 'table schema label': "Record type";
31
- readonly 'new schema': "New record type";
16
+ readonly 'table schema label': "Type";
17
+ readonly 'new schema': "New type";
32
18
  readonly 'continue label': "Continue";
33
19
  readonly 'create stack section label': "Create table";
34
20
  readonly 'add row label': "Add row";
@@ -1 +1 @@
1
- {"version":3,"file":"DynamicTable.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/DynamicTable.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAA4B,MAAM,OAAO,CAAC;AAGjD,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAStE,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAwCjD,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ2B,CAAC;AAEtC,eAAe,IAAI,CAAC;AAIpB,eAAO,MAAM,OAAO,EAAE,QAErB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,QAW3B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,QAW/B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QA2B5B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QA6B5B,CAAC"}
1
+ {"version":3,"file":"DynamicTable.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/DynamicTable.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAA4B,MAAM,OAAO,CAAC;AAmDjD,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ2B,CAAC;AAEtC,eAAe,IAAI,CAAC;AAIpB,eAAO,MAAM,OAAO,EAAE,QAErB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,QAW3B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,QAW/B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QA2B5B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QA4B5B,CAAC"}
@@ -17,8 +17,8 @@ declare const meta: {
17
17
  readonly 'create object label': "Create table";
18
18
  readonly 'table name placeholder': "Table name";
19
19
  readonly 'settings title': "Table settings";
20
- readonly 'table schema label': "Record type";
21
- readonly 'new schema': "New record type";
20
+ readonly 'table schema label': "Type";
21
+ readonly 'new schema': "New type";
22
22
  readonly 'continue label': "Continue";
23
23
  readonly 'create stack section label': "Create table";
24
24
  readonly 'add row label': "Add row";
@@ -42,7 +42,7 @@ declare const meta: {
42
42
  readonly "fields label": "Fields";
43
43
  readonly "hidden fields label": "Hidden Fields";
44
44
  readonly "empty readonly ref field label": "(none)";
45
- readonly "add property button": "Add property";
45
+ readonly "add property button label": "Add property";
46
46
  readonly "field property label": "Property";
47
47
  readonly "field property placeholder": "Property name";
48
48
  readonly "field format label": "Type";
@@ -58,7 +58,11 @@ declare const meta: {
58
58
  readonly "ref field combobox input placeholder": "Search\u2026";
59
59
  readonly "ref field placeholder_one": "Select\u2026";
60
60
  readonly "ref field placeholder_other": "Select items\u2026";
61
- readonly "save button": "Save";
61
+ readonly "example placeholder": "Example";
62
+ readonly "latitude placeholder": "Latitude (e.g., 40.7128)";
63
+ readonly "longitude placeholder": "Longitude (e.g., -74.0060)";
64
+ readonly "cancel button label": "Cancel";
65
+ readonly "save button label": "Save";
62
66
  readonly "format boolean": "Boolean";
63
67
  readonly "format currency": "Currency";
64
68
  readonly "format date": "Date";
@@ -94,8 +98,8 @@ declare const meta: {
94
98
  readonly "select option color": "Color";
95
99
  readonly "select option delete": "Delete";
96
100
  readonly "select option add": "Add option";
97
- readonly "system schema title": "System record type";
98
- readonly "system schema description": "This is a system record type and cannot be modified, though the view can still be configured.";
101
+ readonly "system schema title": "System type";
102
+ readonly "system schema description": "System type: cannot add or remove fields.";
99
103
  };
100
104
  };
101
105
  })[];
@@ -1 +1 @@
1
- {"version":3,"file":"Relations.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/Relations.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAoD,MAAM,OAAO,CAAC;AAMzE,OAAO,iCAAiC,CAAC;AAqHzC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkB2B,CAAC;AAEtC,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAwFd,CAAC"}
1
+ {"version":3,"file":"Relations.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/Relations.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,KAAoD,MAAM,OAAO,CAAC;AAKzE,OAAO,iCAAiC,CAAC;AA6GzC,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkB2B,CAAC;AAEtC,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAwFd,CAAC"}
@@ -1,6 +1,5 @@
1
- import type * as Schema from 'effect/Schema';
2
- import React, { type PropsWithChildren } from 'react';
3
- import { type Client } from '@dxos/react-client';
1
+ import { type JSX, type PropsWithChildren, type Ref } from 'react';
2
+ import { type Type } from '@dxos/echo';
4
3
  import { type DxGridPosition } from '@dxos/react-ui-grid';
5
4
  import { type InsertRowResult, type TableModel, type TablePresentation } from '../../model';
6
5
  import { type OnCreateHandler } from '../TableCellEditor';
@@ -11,18 +10,19 @@ export type TableController = {
11
10
  update?: (cell?: DxGridPosition) => void;
12
11
  handleInsertRowResult?: (insertRowResult?: InsertRowResult) => void;
13
12
  };
14
- export type TableMainProps = {
13
+ export type TableMainProps<T extends Type.Entity.Any = Type.Entity.Any> = {
14
+ schema?: T;
15
15
  model?: TableModel;
16
16
  presentation?: TablePresentation;
17
- schema?: Schema.Schema.AnyNoContext;
18
- client?: Client;
19
17
  ignoreAttention?: boolean;
20
18
  onCreate?: OnCreateHandler;
21
19
  onRowClick?: (row: any) => void;
22
20
  testId?: string;
23
21
  };
24
22
  export declare const Table: {
25
- Root: ({ children, role }: TableRootProps) => React.JSX.Element;
26
- Main: React.ForwardRefExoticComponent<TableMainProps & React.RefAttributes<TableController>>;
23
+ Root: ({ children, role }: TableRootProps) => JSX.Element;
24
+ Main: <T extends Type.Entity.Any = Type.Entity.Any>(props: TableMainProps<T> & {
25
+ ref?: Ref<TableController>;
26
+ }) => JSX.Element;
27
27
  };
28
28
  //# sourceMappingURL=Table.d.ts.map
@@ -1 +1 @@
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
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../../../src/components/Table/Table.tsx"],"names":[],"mappings":"AAKA,OAAc,EACZ,KAAK,GAAG,EAER,KAAK,iBAAiB,EACtB,KAAK,GAAG,EAQT,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,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,CAAC,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI;IACxE,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,YAAY,CAAC,EAAE,iBAAiB,CAAC;IAEjC,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;AAyWF,eAAO,MAAM,KAAK;+BA7YiC,cAAc;WAyYhB,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,GAAG,2BACjE,cAAc,CAAC,CAAC,CAAC,GAAG;QAAE,GAAG,CAAC,EAAE,GAAG,CAAC,eAAe,CAAC,CAAA;KAAE,KACtD,GAAG,CAAC,OAAO;CAKf,CAAC"}