@dxos/react-ui-table 0.7.5-main.ff8607b → 0.7.5-staging.b81e783

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 (79) hide show
  1. package/dist/lib/browser/{chunk-T7CTRLHA.mjs → chunk-3FR6NHPD.mjs} +6 -4
  2. package/dist/lib/browser/chunk-3FR6NHPD.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +30 -4
  4. package/dist/lib/browser/index.mjs.map +3 -3
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/lib/browser/types/index.mjs +1 -1
  7. package/dist/lib/node/{chunk-XQRKYO7Q.cjs → chunk-NB3SFHGA.cjs} +8 -6
  8. package/dist/lib/node/chunk-NB3SFHGA.cjs.map +7 -0
  9. package/dist/lib/node/index.cjs +32 -6
  10. package/dist/lib/node/index.cjs.map +3 -3
  11. package/dist/lib/node/meta.json +1 -1
  12. package/dist/lib/node/types/index.cjs +3 -3
  13. package/dist/lib/node/types/index.cjs.map +1 -1
  14. package/dist/lib/node-esm/{chunk-6HE6MLBK.mjs → chunk-RLVVOZW5.mjs} +6 -4
  15. package/dist/lib/node-esm/chunk-RLVVOZW5.mjs.map +7 -0
  16. package/dist/lib/node-esm/index.mjs +30 -4
  17. package/dist/lib/node-esm/index.mjs.map +3 -3
  18. package/dist/lib/node-esm/meta.json +1 -1
  19. package/dist/lib/node-esm/types/index.mjs +1 -1
  20. package/dist/types/src/_deprecated/components/Cell/Cell.d.ts +2 -2
  21. package/dist/types/src/_deprecated/components/Cell/Cell.d.ts.map +1 -1
  22. package/dist/types/src/_deprecated/components/Cell/CellCombobox.d.ts +1 -2
  23. package/dist/types/src/_deprecated/components/Cell/CellCombobox.d.ts.map +1 -1
  24. package/dist/types/src/_deprecated/components/ColumnMenu/ColumnMenu.d.ts +2 -3
  25. package/dist/types/src/_deprecated/components/ColumnMenu/ColumnMenu.d.ts.map +1 -1
  26. package/dist/types/src/_deprecated/components/ColumnMenu/ColumnMenu.stories.d.ts +2 -3
  27. package/dist/types/src/_deprecated/components/ColumnMenu/ColumnMenu.stories.d.ts.map +1 -1
  28. package/dist/types/src/_deprecated/components/ColumnMenu/ColumnSettings.d.ts +1 -2
  29. package/dist/types/src/_deprecated/components/ColumnMenu/ColumnSettings.d.ts.map +1 -1
  30. package/dist/types/src/_deprecated/components/ColumnMenu/ColumnSettings.stories.d.ts +2 -3
  31. package/dist/types/src/_deprecated/components/ColumnMenu/ColumnSettings.stories.d.ts.map +1 -1
  32. package/dist/types/src/_deprecated/components/Table/Table.d.ts +5 -5
  33. package/dist/types/src/_deprecated/components/Table/Table.d.ts.map +1 -1
  34. package/dist/types/src/_deprecated/components/Table/Table.stories.d.ts +7 -8
  35. package/dist/types/src/_deprecated/components/Table/Table.stories.d.ts.map +1 -1
  36. package/dist/types/src/_deprecated/components/Table/TableBody.d.ts +1 -2
  37. package/dist/types/src/_deprecated/components/Table/TableBody.d.ts.map +1 -1
  38. package/dist/types/src/_deprecated/components/Table/TableContext.d.ts +1 -1
  39. package/dist/types/src/_deprecated/components/Table/TableContext.d.ts.map +1 -1
  40. package/dist/types/src/_deprecated/components/Table/TableHead.d.ts +1 -2
  41. package/dist/types/src/_deprecated/components/Table/TableHead.d.ts.map +1 -1
  42. package/dist/types/src/_deprecated/schema/Schema.stories.d.ts +1 -2
  43. package/dist/types/src/_deprecated/schema/Schema.stories.d.ts.map +1 -1
  44. package/dist/types/src/components/Table/ColumnActionsMenu.d.ts +1 -2
  45. package/dist/types/src/components/Table/ColumnActionsMenu.d.ts.map +1 -1
  46. package/dist/types/src/components/Table/ColumnSettings.d.ts +1 -2
  47. package/dist/types/src/components/Table/ColumnSettings.d.ts.map +1 -1
  48. package/dist/types/src/components/Table/CreateRefPanel.d.ts +1 -2
  49. package/dist/types/src/components/Table/CreateRefPanel.d.ts.map +1 -1
  50. package/dist/types/src/components/Table/RefPanel.d.ts +1 -2
  51. package/dist/types/src/components/Table/RefPanel.d.ts.map +1 -1
  52. package/dist/types/src/components/Table/RowActionsMenu.d.ts +1 -2
  53. package/dist/types/src/components/Table/RowActionsMenu.d.ts.map +1 -1
  54. package/dist/types/src/components/Table/Table.d.ts +1 -1
  55. package/dist/types/src/components/Table/Table.stories.d.ts.map +1 -1
  56. package/dist/types/src/components/TableCellEditor/TableCellEditor.d.ts +1 -2
  57. package/dist/types/src/components/TableCellEditor/TableCellEditor.d.ts.map +1 -1
  58. package/dist/types/src/components/TableToolbar/TableToolbar.d.ts +1 -2
  59. package/dist/types/src/components/TableToolbar/TableToolbar.d.ts.map +1 -1
  60. package/dist/types/src/components/testing.d.ts +2 -25
  61. package/dist/types/src/components/testing.d.ts.map +1 -1
  62. package/dist/types/src/hooks/useTableModel.d.ts.map +1 -1
  63. package/dist/types/src/types/table.d.ts +7 -76
  64. package/dist/types/src/types/table.d.ts.map +1 -1
  65. package/dist/types/src/util/table.d.ts.map +1 -1
  66. package/package.json +31 -30
  67. package/src/components/Table/Table.stories.tsx +3 -4
  68. package/src/components/TableCellEditor/TableCellEditor.stories.tsx +1 -1
  69. package/src/hooks/useTableModel.ts +19 -0
  70. package/src/model/table-model.ts +1 -1
  71. package/src/playwright/smoke.spec.ts +3 -3
  72. package/src/types/table.ts +3 -3
  73. package/src/util/table.ts +9 -2
  74. package/dist/lib/browser/chunk-T7CTRLHA.mjs.map +0 -7
  75. package/dist/lib/node/chunk-XQRKYO7Q.cjs.map +0 -7
  76. package/dist/lib/node-esm/chunk-6HE6MLBK.mjs.map +0 -7
  77. package/dist/types/src/playwright/playwright.config.d.ts +0 -3
  78. package/dist/types/src/playwright/playwright.config.d.ts.map +0 -1
  79. /package/src/playwright/{playwright.config.ts → playwright.config.cts} +0 -0
@@ -1,13 +1,15 @@
1
1
  // packages/ui/react-ui-table/src/types/table.ts
2
- import { Ref, ObjectId, S, TypedObject } from "@dxos/echo-schema";
3
- import { ThreadType } from "@dxos/plugin-space/types";
2
+ import { Ref, ObjectId, S, TypedObject, Expando } from "@dxos/echo-schema";
4
3
  import { ViewType } from "@dxos/schema";
5
4
  var TableSchema = S.Struct({
6
5
  id: ObjectId,
7
6
  name: S.optional(S.String),
8
7
  view: S.optional(Ref(ViewType)),
9
8
  // TODO(burdon): Should not import from plugin. Either factor out type or use reverse deps when supported.
10
- threads: S.optional(S.Array(Ref(ThreadType)))
9
+ threads: S.optional(S.Array(Ref(
10
+ Expando
11
+ /* ThreadType */
12
+ )))
11
13
  });
12
14
  var TableType = class extends TypedObject({
13
15
  typename: "dxos.org/type/Table",
@@ -19,4 +21,4 @@ export {
19
21
  TableSchema,
20
22
  TableType
21
23
  };
22
- //# sourceMappingURL=chunk-T7CTRLHA.mjs.map
24
+ //# sourceMappingURL=chunk-3FR6NHPD.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/table.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Ref, ObjectId, S, TypedObject, Expando } from '@dxos/echo-schema';\n// import { ThreadType } from '@dxos/plugin-space/types';\nimport { ViewType } from '@dxos/schema';\n\nexport const TableSchema = S.Struct({\n id: ObjectId, // TODO(burdon): Where should this be?\n name: S.optional(S.String),\n view: S.optional(Ref(ViewType)),\n // TODO(burdon): Should not import from plugin. Either factor out type or use reverse deps when supported.\n threads: S.optional(S.Array(Ref(Expando /* ThreadType */))), // TODO(dmaretskyi): Breaks edge because plugin-space depends on react-client.\n});\n\n// type TableType = S.Schema.Type<typeof TableSchema>;\n\nexport class TableType extends TypedObject({\n typename: 'dxos.org/type/Table',\n version: '0.1.0',\n})(TableSchema.fields) {}\n"],
5
+ "mappings": ";AAIA,SAASA,KAAKC,UAAUC,GAAGC,aAAaC,eAAe;AAEvD,SAASC,gBAAgB;AAElB,IAAMC,cAAcC,EAAEC,OAAO;EAClCC,IAAIC;EACJC,MAAMJ,EAAEK,SAASL,EAAEM,MAAM;EACzBC,MAAMP,EAAEK,SAASG,IAAIC,QAAAA,CAAAA;;EAErBC,SAASV,EAAEK,SAASL,EAAEW,MAAMH;IAAII;;EAAsB,CAAA,CAAA;AACxD,CAAA;AAIO,IAAMC,YAAN,cAAwBC,YAAY;EACzCC,UAAU;EACVC,SAAS;AACX,CAAA,EAAGjB,YAAYkB,MAAM,EAAA;AAAG;",
6
+ "names": ["Ref", "ObjectId", "S", "TypedObject", "Expando", "ViewType", "TableSchema", "S", "Struct", "id", "ObjectId", "name", "optional", "String", "view", "Ref", "ViewType", "threads", "Array", "Expando", "TableType", "TypedObject", "typename", "version", "fields"]
7
+ }
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  TableSchema,
3
3
  TableType
4
- } from "./chunk-T7CTRLHA.mjs";
4
+ } from "./chunk-3FR6NHPD.mjs";
5
5
 
6
6
  // packages/ui/react-ui-table/src/translations.ts
7
7
  var translationKey = "table";
@@ -314,7 +314,7 @@ var initializeTable = async ({ space, table, initialRow = true, initialSchema })
314
314
  if (!schema) {
315
315
  throw new Error(`Schema not found: ${initialSchema}`);
316
316
  }
317
- const fields = getSchemaProperties(schema.ast).filter((prop) => prop.type !== "object" || prop.format === FormatEnum.Ref).map((prop) => prop.name);
317
+ const fields = getSchemaProperties(schema.ast).filter((prop) => prop.format !== FormatEnum.Ref).map((prop) => prop.name);
318
318
  table.view = makeRef(createView({
319
319
  // TODO(ZaymonFC): Don't hardcode name?
320
320
  name: "View",
@@ -346,9 +346,9 @@ var initializeTable = async ({ space, table, initialRow = true, initialSchema })
346
346
  jsonSchema: contactSchema.jsonSchema,
347
347
  fields: [
348
348
  "name",
349
- "active",
350
349
  "email",
351
- "salary"
350
+ "salary",
351
+ "active"
352
352
  ]
353
353
  }));
354
354
  const projection = new ViewProjection(contactSchema, table.view.target);
@@ -359,6 +359,13 @@ var initializeTable = async ({ space, table, initialRow = true, initialSchema })
359
359
  size: 150
360
360
  }
361
361
  });
362
+ projection.setFieldProjection({
363
+ field: {
364
+ id: table.view.target.fields.find((f) => f.path === "active").id,
365
+ path: "active",
366
+ size: 100
367
+ }
368
+ });
362
369
  projection.setFieldProjection({
363
370
  field: {
364
371
  id: createFieldId(),
@@ -1926,7 +1933,9 @@ var TableToolbar = ({ classNames, viewDirty, attendableId, onAction }) => {
1926
1933
  };
1927
1934
 
1928
1935
  // packages/ui/react-ui-table/src/hooks/useTableModel.ts
1936
+ import { effect as effect3 } from "@preact/signals-core";
1929
1937
  import { useEffect as useEffect2, useState as useState3 } from "react";
1938
+ import { useSelectionActions } from "@dxos/react-ui-attention";
1930
1939
  var useTableModel = ({ objects, table, projection, ...props }) => {
1931
1940
  const [model, setModel] = useState3();
1932
1941
  useEffect2(() => {
@@ -1959,6 +1968,23 @@ var useTableModel = ({ objects, table, projection, ...props }) => {
1959
1968
  model,
1960
1969
  objects
1961
1970
  ]);
1971
+ const { select, clear } = useSelectionActions(table?.id);
1972
+ useEffect2(() => {
1973
+ if (!model) {
1974
+ return;
1975
+ }
1976
+ const unsubscribe = effect3(() => {
1977
+ select([
1978
+ ...model.selection.selection.value
1979
+ ]);
1980
+ });
1981
+ return () => {
1982
+ clear();
1983
+ unsubscribe();
1984
+ };
1985
+ }, [
1986
+ model
1987
+ ]);
1962
1988
  return model;
1963
1989
  };
1964
1990
  export {