@dxos/plugin-space 0.8.2 → 0.8.3-main.7f5a14c

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 (177) hide show
  1. package/dist/lib/browser/{app-graph-builder-DCWUULKX.mjs → app-graph-builder-UNXUTH53.mjs} +11 -10
  2. package/dist/lib/browser/app-graph-builder-UNXUTH53.mjs.map +7 -0
  3. package/dist/lib/browser/{app-graph-serializer-MLU7XI2P.mjs → app-graph-serializer-KPKPMC4M.mjs} +6 -6
  4. package/dist/lib/browser/app-graph-serializer-KPKPMC4M.mjs.map +7 -0
  5. package/dist/lib/browser/{chunk-Q4BTFH2P.mjs → chunk-CF4FBDGP.mjs} +26 -24
  6. package/dist/lib/browser/chunk-CF4FBDGP.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-W46VVHFM.mjs → chunk-LGEIVEYC.mjs} +8 -7
  8. package/dist/lib/browser/chunk-LGEIVEYC.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-N5QMRLKI.mjs → chunk-RRJIDXPY.mjs} +18 -18
  10. package/dist/lib/browser/chunk-RRJIDXPY.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-VEBKN45O.mjs → chunk-TQPBDRXV.mjs} +2 -2
  12. package/dist/lib/browser/{identity-created-O63SIYOF.mjs → identity-created-EM6GZDNF.mjs} +4 -4
  13. package/dist/lib/browser/identity-created-EM6GZDNF.mjs.map +7 -0
  14. package/dist/lib/browser/index.mjs +7 -7
  15. package/dist/lib/browser/index.mjs.map +3 -3
  16. package/dist/lib/browser/{intent-resolver-KBF3YU6I.mjs → intent-resolver-K3ULKQ6V.mjs} +27 -29
  17. package/dist/lib/browser/intent-resolver-K3ULKQ6V.mjs.map +7 -0
  18. package/dist/lib/browser/meta.json +1 -1
  19. package/dist/lib/browser/{react-root-PVKJE4EZ.mjs → react-root-ECO7G77L.mjs} +4 -4
  20. package/dist/lib/browser/{react-surface-252P4NCK.mjs → react-surface-Y5AZBYA7.mjs} +12 -12
  21. package/dist/lib/browser/react-surface-Y5AZBYA7.mjs.map +7 -0
  22. package/dist/lib/browser/{schema-tools-JIEMHUXV.mjs → schema-tools-ILTVSSS3.mjs} +7 -6
  23. package/dist/lib/browser/schema-tools-ILTVSSS3.mjs.map +7 -0
  24. package/dist/lib/browser/{settings-2IN2WLUK.mjs → settings-MU7O6JDD.mjs} +4 -4
  25. package/dist/lib/browser/settings-MU7O6JDD.mjs.map +7 -0
  26. package/dist/lib/browser/{spaces-ready-L4QAGTDE.mjs → spaces-ready-NXZAWHGI.mjs} +9 -10
  27. package/dist/lib/browser/spaces-ready-NXZAWHGI.mjs.map +7 -0
  28. package/dist/lib/browser/types/index.mjs +1 -1
  29. package/dist/lib/node/{app-graph-builder-WC445X77.cjs → app-graph-builder-6QDQEYHS.cjs} +38 -37
  30. package/dist/lib/node/app-graph-builder-6QDQEYHS.cjs.map +7 -0
  31. package/dist/lib/node/{app-graph-serializer-UPQOQVMJ.cjs → app-graph-serializer-6SWKHDE2.cjs} +21 -21
  32. package/dist/lib/node/app-graph-serializer-6SWKHDE2.cjs.map +7 -0
  33. package/dist/lib/node/{chunk-COQYISES.cjs → chunk-KDBPQ6L3.cjs} +54 -54
  34. package/dist/lib/node/chunk-KDBPQ6L3.cjs.map +7 -0
  35. package/dist/lib/node/{chunk-Q3YZEYZT.cjs → chunk-QCANR24R.cjs} +67 -65
  36. package/dist/lib/node/chunk-QCANR24R.cjs.map +7 -0
  37. package/dist/lib/node/{chunk-DXL5TDFP.cjs → chunk-SF3NU7EW.cjs} +6 -6
  38. package/dist/lib/node/{chunk-FXHI7JNY.cjs → chunk-UUBPYP7E.cjs} +33 -32
  39. package/dist/lib/node/chunk-UUBPYP7E.cjs.map +7 -0
  40. package/dist/lib/node/{identity-created-UXEAUGC7.cjs → identity-created-KCJAOFZC.cjs} +7 -7
  41. package/dist/lib/node/identity-created-KCJAOFZC.cjs.map +7 -0
  42. package/dist/lib/node/index.cjs +61 -61
  43. package/dist/lib/node/index.cjs.map +3 -3
  44. package/dist/lib/node/{intent-resolver-SVFJKUH7.cjs → intent-resolver-XR4S7LME.cjs} +79 -81
  45. package/dist/lib/node/intent-resolver-XR4S7LME.cjs.map +7 -0
  46. package/dist/lib/node/meta.json +1 -1
  47. package/dist/lib/node/{react-root-DDPDUMCG.cjs → react-root-Z2YM6JYC.cjs} +8 -8
  48. package/dist/lib/node/{react-surface-JUIU37BX.cjs → react-surface-H6XNU6DS.cjs} +56 -56
  49. package/dist/lib/node/react-surface-H6XNU6DS.cjs.map +7 -0
  50. package/dist/lib/node/{schema-tools-ZG6Z2QRC.cjs → schema-tools-IYREN4IH.cjs} +9 -8
  51. package/dist/lib/node/schema-tools-IYREN4IH.cjs.map +7 -0
  52. package/dist/lib/node/{settings-FOH7EB5C.cjs → settings-XRAT3YMN.cjs} +7 -7
  53. package/dist/lib/node/settings-XRAT3YMN.cjs.map +7 -0
  54. package/dist/lib/node/{spaces-ready-VXQYCBII.cjs → spaces-ready-KKFEN2MM.cjs} +22 -23
  55. package/dist/lib/node/spaces-ready-KKFEN2MM.cjs.map +7 -0
  56. package/dist/lib/node/types/index.cjs +12 -12
  57. package/dist/lib/node/types/index.cjs.map +1 -1
  58. package/dist/lib/node-esm/{app-graph-builder-E7CCGPQJ.mjs → app-graph-builder-5EAV4CDH.mjs} +11 -10
  59. package/dist/lib/node-esm/app-graph-builder-5EAV4CDH.mjs.map +7 -0
  60. package/dist/lib/node-esm/{app-graph-serializer-UCMSLPIA.mjs → app-graph-serializer-BRLVJW6I.mjs} +6 -6
  61. package/dist/lib/node-esm/app-graph-serializer-BRLVJW6I.mjs.map +7 -0
  62. package/dist/lib/node-esm/{chunk-FTELJGEG.mjs → chunk-226REPOB.mjs} +8 -7
  63. package/dist/lib/node-esm/chunk-226REPOB.mjs.map +7 -0
  64. package/dist/lib/node-esm/{chunk-OSPEGYX3.mjs → chunk-55OOAFBS.mjs} +2 -2
  65. package/dist/lib/node-esm/{chunk-HL2Z2GNW.mjs → chunk-AVONUBZO.mjs} +26 -24
  66. package/dist/lib/node-esm/chunk-AVONUBZO.mjs.map +7 -0
  67. package/dist/lib/node-esm/{chunk-XAZNQ3QN.mjs → chunk-FTL5AMXF.mjs} +18 -18
  68. package/dist/lib/node-esm/chunk-FTL5AMXF.mjs.map +7 -0
  69. package/dist/lib/node-esm/{identity-created-ZECO4NH3.mjs → identity-created-FOFH2WPI.mjs} +4 -4
  70. package/dist/lib/node-esm/identity-created-FOFH2WPI.mjs.map +7 -0
  71. package/dist/lib/node-esm/index.mjs +7 -7
  72. package/dist/lib/node-esm/index.mjs.map +3 -3
  73. package/dist/lib/node-esm/{intent-resolver-K2UDBF2R.mjs → intent-resolver-72KTB4S2.mjs} +27 -29
  74. package/dist/lib/node-esm/intent-resolver-72KTB4S2.mjs.map +7 -0
  75. package/dist/lib/node-esm/meta.json +1 -1
  76. package/dist/lib/node-esm/{react-root-6F7B3OVO.mjs → react-root-FU2I5U2M.mjs} +4 -4
  77. package/dist/lib/node-esm/{react-surface-NP3Y6BNZ.mjs → react-surface-L4SMKRYF.mjs} +12 -12
  78. package/dist/lib/node-esm/react-surface-L4SMKRYF.mjs.map +7 -0
  79. package/dist/lib/node-esm/{schema-tools-2Y4D42PD.mjs → schema-tools-SRLCRZ3B.mjs} +7 -6
  80. package/dist/lib/node-esm/schema-tools-SRLCRZ3B.mjs.map +7 -0
  81. package/dist/lib/node-esm/{settings-Q4XDFSYD.mjs → settings-C7GQAEDU.mjs} +4 -4
  82. package/dist/lib/node-esm/settings-C7GQAEDU.mjs.map +7 -0
  83. package/dist/lib/node-esm/{spaces-ready-JHKPD4PH.mjs → spaces-ready-WTISHKEH.mjs} +9 -10
  84. package/dist/lib/node-esm/spaces-ready-WTISHKEH.mjs.map +7 -0
  85. package/dist/lib/node-esm/types/index.mjs +1 -1
  86. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  87. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  88. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  89. package/dist/types/src/capabilities/schema-tools.d.ts.map +1 -1
  90. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  91. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  92. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +2 -2
  93. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  94. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  95. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  96. package/dist/types/src/components/MenuFooter.d.ts +2 -2
  97. package/dist/types/src/components/MenuFooter.d.ts.map +1 -1
  98. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts +2 -2
  99. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +1 -1
  100. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts +2 -2
  101. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +1 -1
  102. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts +2 -2
  103. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts.map +1 -1
  104. package/dist/types/src/components/SchemaContainer.d.ts +2 -2
  105. package/dist/types/src/components/SchemaContainer.d.ts.map +1 -1
  106. package/dist/types/src/components/SpacePresence.d.ts +2 -2
  107. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  108. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  109. package/dist/types/src/types/collection.d.ts +5 -5
  110. package/dist/types/src/types/collection.d.ts.map +1 -1
  111. package/dist/types/src/types/types.d.ts +5 -4
  112. package/dist/types/src/types/types.d.ts.map +1 -1
  113. package/dist/types/src/util.d.ts +10 -10
  114. package/dist/types/src/util.d.ts.map +1 -1
  115. package/package.json +45 -45
  116. package/src/SpacePlugin.tsx +4 -4
  117. package/src/capabilities/app-graph-builder.ts +8 -17
  118. package/src/capabilities/app-graph-serializer.ts +3 -3
  119. package/src/capabilities/identity-created.ts +2 -2
  120. package/src/capabilities/intent-resolver.ts +30 -25
  121. package/src/capabilities/react-surface.tsx +10 -22
  122. package/src/capabilities/schema-tools.ts +3 -2
  123. package/src/capabilities/settings.ts +6 -2
  124. package/src/capabilities/spaces-ready.ts +5 -6
  125. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +3 -2
  126. package/src/components/CreateDialog/CreateObjectDialog.tsx +9 -16
  127. package/src/components/CreateDialog/CreateObjectPanel.tsx +3 -2
  128. package/src/components/CreateDialog/CreateSpaceDialog.tsx +1 -1
  129. package/src/components/MenuFooter.tsx +3 -2
  130. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +4 -4
  131. package/src/components/ObjectSettings/BaseObjectSettings.tsx +5 -4
  132. package/src/components/ObjectSettings/ObjectSettingsContainer.tsx +3 -3
  133. package/src/components/SchemaContainer.tsx +3 -3
  134. package/src/components/SpacePresence.tsx +22 -15
  135. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +2 -1
  136. package/src/types/collection.ts +13 -4
  137. package/src/types/types.ts +5 -4
  138. package/src/util.tsx +26 -35
  139. package/dist/lib/browser/app-graph-builder-DCWUULKX.mjs.map +0 -7
  140. package/dist/lib/browser/app-graph-serializer-MLU7XI2P.mjs.map +0 -7
  141. package/dist/lib/browser/chunk-N5QMRLKI.mjs.map +0 -7
  142. package/dist/lib/browser/chunk-Q4BTFH2P.mjs.map +0 -7
  143. package/dist/lib/browser/chunk-W46VVHFM.mjs.map +0 -7
  144. package/dist/lib/browser/identity-created-O63SIYOF.mjs.map +0 -7
  145. package/dist/lib/browser/intent-resolver-KBF3YU6I.mjs.map +0 -7
  146. package/dist/lib/browser/react-surface-252P4NCK.mjs.map +0 -7
  147. package/dist/lib/browser/schema-tools-JIEMHUXV.mjs.map +0 -7
  148. package/dist/lib/browser/settings-2IN2WLUK.mjs.map +0 -7
  149. package/dist/lib/browser/spaces-ready-L4QAGTDE.mjs.map +0 -7
  150. package/dist/lib/node/app-graph-builder-WC445X77.cjs.map +0 -7
  151. package/dist/lib/node/app-graph-serializer-UPQOQVMJ.cjs.map +0 -7
  152. package/dist/lib/node/chunk-COQYISES.cjs.map +0 -7
  153. package/dist/lib/node/chunk-FXHI7JNY.cjs.map +0 -7
  154. package/dist/lib/node/chunk-Q3YZEYZT.cjs.map +0 -7
  155. package/dist/lib/node/identity-created-UXEAUGC7.cjs.map +0 -7
  156. package/dist/lib/node/intent-resolver-SVFJKUH7.cjs.map +0 -7
  157. package/dist/lib/node/react-surface-JUIU37BX.cjs.map +0 -7
  158. package/dist/lib/node/schema-tools-ZG6Z2QRC.cjs.map +0 -7
  159. package/dist/lib/node/settings-FOH7EB5C.cjs.map +0 -7
  160. package/dist/lib/node/spaces-ready-VXQYCBII.cjs.map +0 -7
  161. package/dist/lib/node-esm/app-graph-builder-E7CCGPQJ.mjs.map +0 -7
  162. package/dist/lib/node-esm/app-graph-serializer-UCMSLPIA.mjs.map +0 -7
  163. package/dist/lib/node-esm/chunk-FTELJGEG.mjs.map +0 -7
  164. package/dist/lib/node-esm/chunk-HL2Z2GNW.mjs.map +0 -7
  165. package/dist/lib/node-esm/chunk-XAZNQ3QN.mjs.map +0 -7
  166. package/dist/lib/node-esm/identity-created-ZECO4NH3.mjs.map +0 -7
  167. package/dist/lib/node-esm/intent-resolver-K2UDBF2R.mjs.map +0 -7
  168. package/dist/lib/node-esm/react-surface-NP3Y6BNZ.mjs.map +0 -7
  169. package/dist/lib/node-esm/schema-tools-2Y4D42PD.mjs.map +0 -7
  170. package/dist/lib/node-esm/settings-Q4XDFSYD.mjs.map +0 -7
  171. package/dist/lib/node-esm/spaces-ready-JHKPD4PH.mjs.map +0 -7
  172. /package/dist/lib/browser/{chunk-VEBKN45O.mjs.map → chunk-TQPBDRXV.mjs.map} +0 -0
  173. /package/dist/lib/browser/{react-root-PVKJE4EZ.mjs.map → react-root-ECO7G77L.mjs.map} +0 -0
  174. /package/dist/lib/node/{chunk-DXL5TDFP.cjs.map → chunk-SF3NU7EW.cjs.map} +0 -0
  175. /package/dist/lib/node/{react-root-DDPDUMCG.cjs.map → react-root-Z2YM6JYC.cjs.map} +0 -0
  176. /package/dist/lib/node-esm/{chunk-OSPEGYX3.mjs.map → chunk-55OOAFBS.mjs.map} +0 -0
  177. /package/dist/lib/node-esm/{react-root-6F7B3OVO.mjs.map → react-root-FU2I5U2M.mjs.map} +0 -0
@@ -16,8 +16,8 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var chunk_COQYISES_exports = {};
20
- __export(chunk_COQYISES_exports, {
19
+ var chunk_KDBPQ6L3_exports = {};
20
+ __export(chunk_KDBPQ6L3_exports, {
21
21
  COMPOSER_SPACE_LOCK: () => COMPOSER_SPACE_LOCK,
22
22
  SHARED: () => SHARED,
23
23
  SPACES: () => SPACES,
@@ -30,18 +30,17 @@ __export(chunk_COQYISES_exports, {
30
30
  getSpaceDisplayName: () => getSpaceDisplayName,
31
31
  rxFromQuery: () => rxFromQuery
32
32
  });
33
- module.exports = __toCommonJS(chunk_COQYISES_exports);
34
- var import_chunk_FXHI7JNY = require("./chunk-FXHI7JNY.cjs");
33
+ module.exports = __toCommonJS(chunk_KDBPQ6L3_exports);
34
+ var import_chunk_UUBPYP7E = require("./chunk-UUBPYP7E.cjs");
35
35
  var import_chunk_6P2DB4QQ = require("./chunk-6P2DB4QQ.cjs");
36
36
  var import_rx_react = require("@effect-rx/rx-react");
37
37
  var import_app_framework = require("@dxos/app-framework");
38
+ var import_echo = require("@dxos/echo");
38
39
  var import_echo_schema = require("@dxos/echo-schema");
39
- var import_echo_schema2 = require("@dxos/echo-schema");
40
40
  var import_invariant = require("@dxos/invariant");
41
- var import_live_object = require("@dxos/live-object");
42
41
  var import_migrations = require("@dxos/migrations");
43
42
  var import_plugin_graph = require("@dxos/plugin-graph");
44
- var import_echo = require("@dxos/react-client/echo");
43
+ var import_echo2 = require("@dxos/react-client/echo");
45
44
  var import_react_ui_attention = require("@dxos/react-ui-attention");
46
45
  var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/util.tsx";
47
46
  var SPACES = `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}-spaces`;
@@ -57,7 +56,7 @@ var rxFromQuery = (query) => {
57
56
  });
58
57
  };
59
58
  var getSpaceDisplayName = (space, { personal, namesCache = {} } = {}) => {
60
- return space.state.get() === import_echo.SpaceState.SPACE_READY && (space.properties.name?.length ?? 0) > 0 ? space.properties.name : namesCache[space.id] ? namesCache[space.id] : personal ? [
59
+ return space.state.get() === import_echo2.SpaceState.SPACE_READY && (space.properties.name?.length ?? 0) > 0 ? space.properties.name : namesCache[space.id] ? namesCache[space.id] : personal ? [
61
60
  "personal space label",
62
61
  {
63
62
  ns: import_chunk_6P2DB4QQ.SPACE_PLUGIN
@@ -79,14 +78,14 @@ var getCollectionGraphNodePartials = ({ navigable, collection, space, resolve })
79
78
  ]),
80
79
  role: "branch",
81
80
  onRearrangeChildren: (nextOrder) => {
82
- collection.objects = nextOrder.filter(import_echo.isEchoObject).map(import_live_object.makeRef);
81
+ collection.objects = nextOrder.filter(import_echo.Obj.isObject).map(import_echo.Ref.make);
83
82
  },
84
83
  onTransferStart: (child, index) => {
85
84
  if (!collection.objects.find((object) => object.target === child.data)) {
86
85
  if (typeof index !== "undefined") {
87
- collection.objects.splice(index, 0, (0, import_live_object.makeRef)(child.data));
86
+ collection.objects.splice(index, 0, import_echo.Ref.make(child.data));
88
87
  } else {
89
- collection.objects.push((0, import_live_object.makeRef)(child.data));
88
+ collection.objects.push(import_echo.Ref.make(child.data));
90
89
  }
91
90
  }
92
91
  },
@@ -100,20 +99,20 @@ var getCollectionGraphNodePartials = ({ navigable, collection, space, resolve })
100
99
  const newObject = await cloneObject(child.data, resolve, space);
101
100
  space.db.add(newObject);
102
101
  if (typeof index !== "undefined") {
103
- collection.objects.splice(index, 0, (0, import_live_object.makeRef)(newObject));
102
+ collection.objects.splice(index, 0, import_echo.Ref.make(newObject));
104
103
  } else {
105
- collection.objects.push((0, import_live_object.makeRef)(newObject));
104
+ collection.objects.push(import_echo.Ref.make(newObject));
106
105
  }
107
106
  }
108
107
  };
109
108
  };
110
109
  var checkPendingMigration = (space) => {
111
- return space.state.get() === import_echo.SpaceState.SPACE_REQUIRES_MIGRATION || space.state.get() === import_echo.SpaceState.SPACE_READY && !!import_migrations.Migrations.versionProperty && space.properties[import_migrations.Migrations.versionProperty] !== import_migrations.Migrations.targetVersion;
110
+ return space.state.get() === import_echo2.SpaceState.SPACE_REQUIRES_MIGRATION || space.state.get() === import_echo2.SpaceState.SPACE_READY && !!import_migrations.Migrations.versionProperty && space.properties[import_migrations.Migrations.versionProperty] !== import_migrations.Migrations.targetVersion;
112
111
  };
113
112
  var constructSpaceNode = ({ space, navigable = false, personal, namesCache, resolve }) => {
114
113
  const hasPendingMigration = checkPendingMigration(space);
115
- const collection = space.state.get() === import_echo.SpaceState.SPACE_READY && space.properties[import_chunk_FXHI7JNY.CollectionType.typename]?.target;
116
- const partials = space.state.get() === import_echo.SpaceState.SPACE_READY && collection instanceof import_chunk_FXHI7JNY.CollectionType ? getCollectionGraphNodePartials({
114
+ const collection = space.state.get() === import_echo2.SpaceState.SPACE_READY && space.properties[import_chunk_UUBPYP7E.CollectionType.typename]?.target;
115
+ const partials = space.state.get() === import_echo2.SpaceState.SPACE_READY && collection instanceof import_chunk_UUBPYP7E.CollectionType ? getCollectionGraphNodePartials({
117
116
  collection,
118
117
  space,
119
118
  resolve,
@@ -121,7 +120,7 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
121
120
  }) : {};
122
121
  return {
123
122
  id: space.id,
124
- type: import_chunk_FXHI7JNY.SPACE_TYPE,
123
+ type: import_chunk_UUBPYP7E.SPACE_TYPE,
125
124
  cacheable: [
126
125
  "label",
127
126
  "icon",
@@ -134,10 +133,10 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
134
133
  personal,
135
134
  namesCache
136
135
  }),
137
- description: space.state.get() === import_echo.SpaceState.SPACE_READY && space.properties.description,
138
- hue: space.state.get() === import_echo.SpaceState.SPACE_READY && space.properties.hue,
139
- icon: space.state.get() === import_echo.SpaceState.SPACE_READY && space.properties.icon ? `ph--${space.properties.icon}--regular` : void 0,
140
- disabled: !navigable || space.state.get() !== import_echo.SpaceState.SPACE_READY || hasPendingMigration,
136
+ description: space.state.get() === import_echo2.SpaceState.SPACE_READY && space.properties.description,
137
+ hue: space.state.get() === import_echo2.SpaceState.SPACE_READY && space.properties.hue,
138
+ icon: space.state.get() === import_echo2.SpaceState.SPACE_READY && space.properties.icon ? `ph--${space.properties.icon}--regular` : void 0,
139
+ disabled: !navigable || space.state.get() !== import_echo2.SpaceState.SPACE_READY || hasPendingMigration,
141
140
  testId: "spacePlugin.space"
142
141
  },
143
142
  nodes: [
@@ -212,10 +211,10 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
212
211
  const actions = [];
213
212
  if (hasPendingMigration) {
214
213
  actions.push({
215
- id: getId(import_chunk_FXHI7JNY.SpaceAction.Migrate._tag),
214
+ id: getId(import_chunk_UUBPYP7E.SpaceAction.Migrate._tag),
216
215
  type: import_plugin_graph.ACTION_GROUP_TYPE,
217
216
  data: async () => {
218
- await dispatch((0, import_app_framework.createIntent)(import_chunk_FXHI7JNY.SpaceAction.Migrate, {
217
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_UUBPYP7E.SpaceAction.Migrate, {
219
218
  space
220
219
  }));
221
220
  },
@@ -232,12 +231,12 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
232
231
  }
233
232
  });
234
233
  }
235
- if (state === import_echo.SpaceState.SPACE_READY && !hasPendingMigration) {
234
+ if (state === import_echo2.SpaceState.SPACE_READY && !hasPendingMigration) {
236
235
  actions.push({
237
- id: getId(import_chunk_FXHI7JNY.SpaceAction.OpenCreateObject._tag),
236
+ id: getId(import_chunk_UUBPYP7E.SpaceAction.OpenCreateObject._tag),
238
237
  type: import_plugin_graph.ACTION_TYPE,
239
238
  data: async () => {
240
- await dispatch((0, import_app_framework.createIntent)(import_chunk_FXHI7JNY.SpaceAction.OpenCreateObject, {
239
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_UUBPYP7E.SpaceAction.OpenCreateObject, {
241
240
  target: space
242
241
  }));
243
242
  },
@@ -253,10 +252,10 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
253
252
  testId: "spacePlugin.createObject"
254
253
  }
255
254
  }, {
256
- id: getId(import_chunk_FXHI7JNY.SpaceAction.Rename._tag),
255
+ id: getId(import_chunk_UUBPYP7E.SpaceAction.Rename._tag),
257
256
  type: import_plugin_graph.ACTION_TYPE,
258
257
  data: async (params) => {
259
- await dispatch((0, import_app_framework.createIntent)(import_chunk_FXHI7JNY.SpaceAction.Rename, {
258
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_UUBPYP7E.SpaceAction.Rename, {
260
259
  space,
261
260
  caller: params?.caller
262
261
  }));
@@ -278,8 +277,8 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
278
277
  }
279
278
  return actions;
280
279
  };
281
- var createObjectNode = ({ object, space, navigable = false, resolve }) => {
282
- const type = (0, import_echo_schema.getTypename)(object);
280
+ var createObjectNode = ({ space, object, navigable = false, resolve }) => {
281
+ const type = import_echo.Obj.getTypename(object);
283
282
  if (!type) {
284
283
  return void 0;
285
284
  }
@@ -287,14 +286,14 @@ var createObjectNode = ({ object, space, navigable = false, resolve }) => {
287
286
  if (Object.keys(metadata).length === 0) {
288
287
  return void 0;
289
288
  }
290
- const partials = object instanceof import_chunk_FXHI7JNY.CollectionType ? getCollectionGraphNodePartials({
289
+ const partials = object instanceof import_chunk_UUBPYP7E.CollectionType ? getCollectionGraphNodePartials({
291
290
  collection: object,
292
291
  space,
293
292
  resolve,
294
293
  navigable
295
294
  }) : metadata.graphProps;
296
295
  return {
297
- id: (0, import_echo.fullyQualifiedId)(object),
296
+ id: (0, import_echo2.fullyQualifiedId)(object),
298
297
  type,
299
298
  cacheable: [
300
299
  "label",
@@ -304,6 +303,7 @@ var createObjectNode = ({ object, space, navigable = false, resolve }) => {
304
303
  data: object,
305
304
  properties: {
306
305
  ...partials,
306
+ // TODO(burdon): Use annotation to get the name field.
307
307
  label: metadata.label?.(object) || object.name || [
308
308
  "object name placeholder",
309
309
  {
@@ -319,24 +319,24 @@ var createObjectNode = ({ object, space, navigable = false, resolve }) => {
319
319
  };
320
320
  };
321
321
  var constructObjectActions = ({ object, graph, dispatch, navigable = false }) => {
322
- const space = (0, import_echo.getSpace)(object);
322
+ const space = (0, import_echo2.getSpace)(object);
323
323
  (0, import_invariant.invariant)(space, "Space not found", {
324
324
  F: __dxlog_file,
325
- L: 362,
325
+ L: 353,
326
326
  S: void 0,
327
327
  A: [
328
328
  "space",
329
329
  "'Space not found'"
330
330
  ]
331
331
  });
332
- const getId = (id) => `${id}/${(0, import_echo.fullyQualifiedId)(object)}`;
332
+ const getId = (id) => `${id}/${(0, import_echo2.fullyQualifiedId)(object)}`;
333
333
  const actions = [
334
- ...object instanceof import_chunk_FXHI7JNY.CollectionType ? [
334
+ ...object instanceof import_chunk_UUBPYP7E.CollectionType ? [
335
335
  {
336
- id: getId(import_chunk_FXHI7JNY.SpaceAction.OpenCreateObject._tag),
336
+ id: getId(import_chunk_UUBPYP7E.SpaceAction.OpenCreateObject._tag),
337
337
  type: import_plugin_graph.ACTION_TYPE,
338
338
  data: async () => {
339
- await dispatch((0, import_app_framework.createIntent)(import_chunk_FXHI7JNY.SpaceAction.OpenCreateObject, {
339
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_UUBPYP7E.SpaceAction.OpenCreateObject, {
340
340
  target: object
341
341
  }));
342
342
  },
@@ -354,17 +354,17 @@ var constructObjectActions = ({ object, graph, dispatch, navigable = false }) =>
354
354
  }
355
355
  ] : [],
356
356
  {
357
- id: getId(import_chunk_FXHI7JNY.SpaceAction.RenameObject._tag),
357
+ id: getId(import_chunk_UUBPYP7E.SpaceAction.RenameObject._tag),
358
358
  type: import_plugin_graph.ACTION_TYPE,
359
359
  data: async (params) => {
360
- await dispatch((0, import_app_framework.createIntent)(import_chunk_FXHI7JNY.SpaceAction.RenameObject, {
360
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_UUBPYP7E.SpaceAction.RenameObject, {
361
361
  object,
362
362
  caller: params?.caller
363
363
  }));
364
364
  },
365
365
  properties: {
366
366
  label: [
367
- object instanceof import_chunk_FXHI7JNY.CollectionType ? "rename collection label" : "rename object label",
367
+ object instanceof import_chunk_UUBPYP7E.CollectionType ? "rename collection label" : "rename object label",
368
368
  {
369
369
  ns: import_chunk_6P2DB4QQ.SPACE_PLUGIN
370
370
  }
@@ -378,11 +378,11 @@ var constructObjectActions = ({ object, graph, dispatch, navigable = false }) =>
378
378
  }
379
379
  },
380
380
  {
381
- id: getId(import_chunk_FXHI7JNY.SpaceAction.RemoveObjects._tag),
381
+ id: getId(import_chunk_UUBPYP7E.SpaceAction.RemoveObjects._tag),
382
382
  type: import_plugin_graph.ACTION_TYPE,
383
383
  data: async () => {
384
- const collection = graph.getConnections((0, import_echo.fullyQualifiedId)(object), "inbound").find(({ data }) => data instanceof import_chunk_FXHI7JNY.CollectionType)?.data;
385
- await dispatch((0, import_app_framework.createIntent)(import_chunk_FXHI7JNY.SpaceAction.RemoveObjects, {
384
+ const collection = graph.getConnections((0, import_echo2.fullyQualifiedId)(object), "inbound").find(({ data }) => data instanceof import_chunk_UUBPYP7E.CollectionType)?.data;
385
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_UUBPYP7E.SpaceAction.RemoveObjects, {
386
386
  objects: [
387
387
  object
388
388
  ],
@@ -391,22 +391,22 @@ var constructObjectActions = ({ object, graph, dispatch, navigable = false }) =>
391
391
  },
392
392
  properties: {
393
393
  label: [
394
- object instanceof import_chunk_FXHI7JNY.CollectionType ? "delete collection label" : "delete object label",
394
+ object instanceof import_chunk_UUBPYP7E.CollectionType ? "delete collection label" : "delete object label",
395
395
  {
396
396
  ns: import_chunk_6P2DB4QQ.SPACE_PLUGIN
397
397
  }
398
398
  ],
399
399
  icon: "ph--trash--regular",
400
- keyBinding: object instanceof import_chunk_FXHI7JNY.CollectionType ? void 0 : "shift+meta+Backspace",
400
+ keyBinding: object instanceof import_chunk_UUBPYP7E.CollectionType ? void 0 : "shift+meta+Backspace",
401
401
  testId: "spacePlugin.deleteObject"
402
402
  }
403
403
  },
404
- ...navigable || !(object instanceof import_chunk_FXHI7JNY.CollectionType) ? [
404
+ ...navigable || !(object instanceof import_chunk_UUBPYP7E.CollectionType) ? [
405
405
  {
406
406
  id: getId("copy-link"),
407
407
  type: import_plugin_graph.ACTION_TYPE,
408
408
  data: async () => {
409
- const url = `${window.location.origin}/${space.id}/${(0, import_echo.fullyQualifiedId)(object)}`;
409
+ const url = `${window.location.origin}/${space.id}/${(0, import_echo2.fullyQualifiedId)(object)}`;
410
410
  await navigator.clipboard.writeText(url);
411
411
  },
412
412
  properties: {
@@ -428,7 +428,7 @@ var constructObjectActions = ({ object, graph, dispatch, navigable = false }) =>
428
428
  data: async () => {
429
429
  await dispatch((0, import_app_framework.createIntent)(import_app_framework.LayoutAction.Expose, {
430
430
  part: "navigation",
431
- subject: (0, import_echo.fullyQualifiedId)(object)
431
+ subject: (0, import_echo2.fullyQualifiedId)(object)
432
432
  }));
433
433
  },
434
434
  properties: {
@@ -446,7 +446,7 @@ var constructObjectActions = ({ object, graph, dispatch, navigable = false }) =>
446
446
  return actions;
447
447
  };
448
448
  var getNestedObjects = async (object, resolve) => {
449
- const type = (0, import_echo_schema.getTypename)(object);
449
+ const type = import_echo.Obj.getTypename(object);
450
450
  if (!type) {
451
451
  return [];
452
452
  }
@@ -463,13 +463,13 @@ var getNestedObjects = async (object, resolve) => {
463
463
  ];
464
464
  };
465
465
  var cloneObject = async (object, resolve, newSpace) => {
466
- const schema = (0, import_echo_schema2.getSchema)(object);
467
- const typename = schema ? (0, import_echo_schema.getTypeAnnotation)(schema)?.typename ?? import_echo_schema.EXPANDO_TYPENAME : import_echo_schema.EXPANDO_TYPENAME;
466
+ const schema = import_echo.Obj.getSchema(object);
467
+ const typename = schema ? import_echo.Type.getTypename(schema) ?? import_echo_schema.EXPANDO_TYPENAME : import_echo_schema.EXPANDO_TYPENAME;
468
468
  const metadata = resolve(typename);
469
469
  const serializer = metadata.serializer;
470
470
  (0, import_invariant.invariant)(serializer, `No serializer for type: ${typename}`, {
471
471
  F: __dxlog_file,
472
- L: 491,
472
+ L: 482,
473
473
  S: void 0,
474
474
  A: [
475
475
  "serializer",
@@ -499,4 +499,4 @@ var cloneObject = async (object, resolve, newSpace) => {
499
499
  getSpaceDisplayName,
500
500
  rxFromQuery
501
501
  });
502
- //# sourceMappingURL=chunk-COQYISES.cjs.map
502
+ //# sourceMappingURL=chunk-KDBPQ6L3.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/util.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Rx } from '@effect-rx/rx-react';\n\nimport { createIntent, LayoutAction, type PromiseIntentDispatcher } from '@dxos/app-framework';\nimport { Obj, Ref, Type } from '@dxos/echo';\nimport { EXPANDO_TYPENAME } from '@dxos/echo-schema';\nimport { invariant } from '@dxos/invariant';\nimport { Migrations } from '@dxos/migrations';\nimport {\n ACTION_GROUP_TYPE,\n ACTION_TYPE,\n type ReadableGraph,\n type ActionData,\n type InvokeParams,\n type Node,\n type NodeArg,\n} from '@dxos/plugin-graph';\nimport { fullyQualifiedId, getSpace, type QueryResult, SpaceState, type Space } from '@dxos/react-client/echo';\nimport { ATTENDABLE_PATH_SEPARATOR } from '@dxos/react-ui-attention';\n\nimport { SPACE_PLUGIN } from './meta';\nimport { CollectionType, SpaceAction, SPACE_TYPE } from './types';\n\nexport const SPACES = `${SPACE_PLUGIN}-spaces`;\nexport const COMPOSER_SPACE_LOCK = 'dxos.org/plugin/space/lock';\n// TODO(wittjosiah): Remove.\nexport const SHARED = 'shared-spaces';\n\n/**\n * Convert a query result to an Rx value of the objects.\n */\nexport const rxFromQuery = <T extends Obj.Any>(query: QueryResult<T>): Rx.Rx<T[]> => {\n return Rx.make((get) => {\n const unsubscribe = query.subscribe((result) => {\n get.setSelf(result.objects);\n });\n\n get.addFinalizer(() => unsubscribe());\n return query.objects;\n });\n};\n\n// TODO(wittjosiah): Factor out? Expose via capability?\nexport const getSpaceDisplayName = (\n space: Space,\n { personal, namesCache = {} }: { personal?: boolean; namesCache?: Record<string, string> } = {},\n): string | [string, { ns: string }] => {\n return space.state.get() === SpaceState.SPACE_READY && (space.properties.name?.length ?? 0) > 0\n ? space.properties.name\n : namesCache[space.id]\n ? namesCache[space.id]\n : personal\n ? ['personal space label', { ns: SPACE_PLUGIN }]\n : ['unnamed space label', { ns: SPACE_PLUGIN }];\n};\n\nconst getCollectionGraphNodePartials = ({\n navigable,\n collection,\n space,\n resolve,\n}: {\n navigable: boolean;\n collection: CollectionType;\n space: Space;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n return {\n acceptPersistenceClass: new Set(['echo']),\n acceptPersistenceKey: new Set([space.id]),\n role: 'branch',\n onRearrangeChildren: (nextOrder: unknown[]) => {\n // Change on disk.\n collection.objects = nextOrder.filter(Obj.isObject).map(Ref.make);\n },\n onTransferStart: (child: Node<Obj.Any>, index?: number) => {\n // TODO(wittjosiah): Support transfer between spaces.\n // const childSpace = getSpace(child.data);\n // if (space && childSpace && !childSpace.key.equals(space.key)) {\n // // Create clone of child and add to destination space.\n // const newObject = clone(child.data, {\n // // TODO(wittjosiah): This needs to be generalized and not hardcoded here.\n // additional: [\n // child.data.content,\n // ...(child.data.objects ?? []),\n // ...(child.data.objects ?? []).map((object: TypedObject) => object.content),\n // ],\n // });\n // space.db.add(newObject);\n // collection.objects.push(newObject);\n // } else {\n\n // Add child to destination collection.\n // TODO(dmaretskyi): Compare by id.\n if (!collection.objects.find((object) => object.target === child.data)) {\n if (typeof index !== 'undefined') {\n collection.objects.splice(index, 0, Ref.make(child.data));\n } else {\n collection.objects.push(Ref.make(child.data));\n }\n }\n\n // }\n },\n onTransferEnd: (child: Node<Obj.Any>, destination: Node) => {\n // Remove child from origin collection.\n const index = collection.objects.findIndex((object) => object.target === child.data);\n if (index > -1) {\n collection.objects.splice(index, 1);\n }\n\n // TODO(wittjosiah): Support transfer between spaces.\n // const childSpace = getSpace(child.data);\n // const destinationSpace =\n // destination.data instanceof SpaceProxy ? destination.data : getSpace(destination.data);\n // if (destinationSpace && childSpace && !childSpace.key.equals(destinationSpace.key)) {\n // // Mark child as deleted in origin space.\n // childSpace.db.remove(child.data);\n // }\n },\n onCopy: async (child: Node<Obj.Any>, index?: number) => {\n // Create clone of child and add to destination space.\n const newObject = await cloneObject(child.data, resolve, space);\n space.db.add(newObject);\n if (typeof index !== 'undefined') {\n collection.objects.splice(index, 0, Ref.make(newObject));\n } else {\n collection.objects.push(Ref.make(newObject));\n }\n },\n };\n};\n\nconst checkPendingMigration = (space: Space) => {\n return (\n space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION ||\n (space.state.get() === SpaceState.SPACE_READY &&\n !!Migrations.versionProperty &&\n space.properties[Migrations.versionProperty] !== Migrations.targetVersion)\n );\n};\n\nexport const constructSpaceNode = ({\n space,\n navigable = false,\n personal,\n namesCache,\n resolve,\n}: {\n space: Space;\n navigable?: boolean;\n personal?: boolean;\n namesCache?: Record<string, string>;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const hasPendingMigration = checkPendingMigration(space);\n const collection = space.state.get() === SpaceState.SPACE_READY && space.properties[CollectionType.typename]?.target;\n const partials =\n space.state.get() === SpaceState.SPACE_READY && collection instanceof CollectionType\n ? getCollectionGraphNodePartials({ collection, space, resolve, navigable })\n : {};\n\n return {\n id: space.id,\n type: SPACE_TYPE,\n cacheable: ['label', 'icon', 'role'],\n data: space,\n properties: {\n ...partials,\n label: getSpaceDisplayName(space, { personal, namesCache }),\n description: space.state.get() === SpaceState.SPACE_READY && space.properties.description,\n hue: space.state.get() === SpaceState.SPACE_READY && space.properties.hue,\n icon:\n space.state.get() === SpaceState.SPACE_READY && space.properties.icon\n ? `ph--${space.properties.icon}--regular`\n : undefined,\n disabled: !navigable || space.state.get() !== SpaceState.SPACE_READY || hasPendingMigration,\n testId: 'spacePlugin.space',\n },\n nodes: [\n {\n id: `settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${SPACE_PLUGIN}/settings`,\n data: null,\n properties: {\n label: ['settings panel label', { ns: SPACE_PLUGIN }],\n icon: 'ph--faders--regular',\n disposition: 'alternate-tree',\n },\n nodes: [\n {\n id: `properties-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${SPACE_PLUGIN}/properties`,\n data: `${SPACE_PLUGIN}/properties`,\n properties: {\n label: ['space settings properties label', { ns: SPACE_PLUGIN }],\n icon: 'ph--sliders--regular',\n position: 'hoist',\n },\n },\n {\n id: `members-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${SPACE_PLUGIN}/members`,\n data: `${SPACE_PLUGIN}/members`,\n properties: {\n label: ['members panel label', { ns: SPACE_PLUGIN }],\n icon: 'ph--users--regular',\n position: 'hoist',\n },\n },\n {\n id: `schema-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${SPACE_PLUGIN}/schema`,\n data: `${SPACE_PLUGIN}/schema`,\n properties: {\n label: ['space settings schema label', { ns: SPACE_PLUGIN }],\n icon: 'ph--shapes--regular',\n },\n },\n ],\n },\n ],\n };\n};\n\nexport const constructSpaceActions = ({\n space,\n dispatch,\n personal,\n migrating,\n}: {\n space: Space;\n dispatch: PromiseIntentDispatcher;\n personal?: boolean;\n migrating?: boolean;\n}) => {\n const state = space.state.get();\n const hasPendingMigration = checkPendingMigration(space);\n const getId = (id: string) => `${id}/${space.id}`;\n const actions: NodeArg<ActionData>[] = [];\n\n if (hasPendingMigration) {\n actions.push({\n id: getId(SpaceAction.Migrate._tag),\n type: ACTION_GROUP_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.Migrate, { space }));\n },\n properties: {\n label: ['migrate space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--database--regular',\n disposition: 'list-item-primary',\n disabled: migrating || Migrations.running(space),\n },\n });\n }\n\n if (state === SpaceState.SPACE_READY && !hasPendingMigration) {\n actions.push(\n {\n id: getId(SpaceAction.OpenCreateObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.OpenCreateObject, { target: space }));\n },\n properties: {\n label: ['create object in space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--plus--regular',\n disposition: 'item',\n testId: 'spacePlugin.createObject',\n },\n },\n {\n id: getId(SpaceAction.Rename._tag),\n type: ACTION_TYPE,\n data: async (params?: InvokeParams) => {\n await dispatch(createIntent(SpaceAction.Rename, { space, caller: params?.caller }));\n },\n properties: {\n label: ['rename space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--pencil-simple-line--regular',\n keyBinding: {\n macos: 'shift+F6',\n windows: 'shift+F6',\n },\n },\n },\n );\n }\n\n return actions;\n};\n\nexport const createObjectNode = ({\n space,\n object,\n navigable = false,\n resolve,\n}: {\n space: Space;\n object: Obj.Any;\n navigable?: boolean;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const type = Obj.getTypename(object);\n if (!type) {\n return undefined;\n }\n\n const metadata = resolve(type);\n if (Object.keys(metadata).length === 0) {\n return undefined;\n }\n\n const partials =\n object instanceof CollectionType\n ? getCollectionGraphNodePartials({ collection: object, space, resolve, navigable })\n : metadata.graphProps;\n\n return {\n id: fullyQualifiedId(object),\n type,\n cacheable: ['label', 'icon', 'role'],\n data: object,\n properties: {\n ...partials,\n // TODO(burdon): Use annotation to get the name field.\n label: metadata.label?.(object) ||\n (object as any).name || ['object name placeholder', { ns: type, default: 'New object' }],\n icon: metadata.icon ?? 'ph--placeholder--regular',\n testId: 'spacePlugin.object',\n persistenceClass: 'echo',\n persistenceKey: space?.id,\n },\n };\n};\n\nexport const constructObjectActions = ({\n object,\n graph,\n dispatch,\n navigable = false,\n}: {\n object: Obj.Any;\n graph: ReadableGraph;\n dispatch: PromiseIntentDispatcher;\n navigable?: boolean;\n}) => {\n const space = getSpace(object);\n invariant(space, 'Space not found');\n const getId = (id: string) => `${id}/${fullyQualifiedId(object)}`;\n const actions: NodeArg<ActionData>[] = [\n ...(object instanceof CollectionType\n ? [\n {\n id: getId(SpaceAction.OpenCreateObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.OpenCreateObject, { target: object }));\n },\n properties: {\n label: ['create object in collection label', { ns: SPACE_PLUGIN }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.createObject',\n },\n },\n ]\n : []),\n {\n id: getId(SpaceAction.RenameObject._tag),\n type: ACTION_TYPE,\n data: async (params?: InvokeParams) => {\n await dispatch(createIntent(SpaceAction.RenameObject, { object, caller: params?.caller }));\n },\n properties: {\n label: [\n object instanceof CollectionType ? 'rename collection label' : 'rename object label',\n { ns: SPACE_PLUGIN },\n ],\n icon: 'ph--pencil-simple-line--regular',\n // TODO(wittjosiah): Need's focus.\n keyBinding: {\n macos: 'shift+F6',\n },\n testId: 'spacePlugin.renameObject',\n },\n },\n {\n id: getId(SpaceAction.RemoveObjects._tag),\n type: ACTION_TYPE,\n data: async () => {\n const collection = graph\n .getConnections(fullyQualifiedId(object), 'inbound')\n .find(({ data }) => data instanceof CollectionType)?.data;\n await dispatch(createIntent(SpaceAction.RemoveObjects, { objects: [object], target: collection }));\n },\n properties: {\n label: [\n object instanceof CollectionType ? 'delete collection label' : 'delete object label',\n { ns: SPACE_PLUGIN },\n ],\n icon: 'ph--trash--regular',\n keyBinding: object instanceof CollectionType ? undefined : 'shift+meta+Backspace',\n testId: 'spacePlugin.deleteObject',\n },\n },\n ...(navigable || !(object instanceof CollectionType)\n ? [\n {\n id: getId('copy-link'),\n type: ACTION_TYPE,\n data: async () => {\n const url = `${window.location.origin}/${space.id}/${fullyQualifiedId(object)}`;\n await navigator.clipboard.writeText(url);\n },\n properties: {\n label: ['copy link label', { ns: SPACE_PLUGIN }],\n icon: 'ph--link--regular',\n testId: 'spacePlugin.copyLink',\n },\n },\n ]\n : []),\n // TODO(wittjosiah): Factor out and apply to all nodes.\n {\n id: getId(LayoutAction.Expose._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(LayoutAction.Expose, { part: 'navigation', subject: fullyQualifiedId(object) }));\n },\n properties: {\n label: ['expose object label', { ns: SPACE_PLUGIN }],\n icon: 'ph--eye--regular',\n testId: 'spacePlugin.exposeObject',\n },\n },\n ];\n\n return actions;\n};\n\n/**\n * @deprecated This is a temporary solution.\n */\nexport const getNestedObjects = async (\n object: Obj.Any,\n resolve: (typename: string) => Record<string, any>,\n): Promise<Obj.Any[]> => {\n const type = Obj.getTypename(object);\n if (!type) {\n return [];\n }\n\n const metadata = resolve(type);\n const loadReferences = metadata?.loadReferences;\n if (typeof loadReferences !== 'function') {\n return [];\n }\n\n const objects: Obj.Any[] = await loadReferences(object);\n const nested = await Promise.all(objects.map((object) => getNestedObjects(object, resolve)));\n return [...objects, ...nested.flat()];\n};\n\n/**\n * @deprecated Workaround for ECHO not supporting clone.\n */\n// TODO(burdon): Remove.\nexport const cloneObject = async (\n object: Type.Expando,\n resolve: (typename: string) => Record<string, any>,\n newSpace: Space,\n): Promise<Type.Expando> => {\n const schema = Obj.getSchema(object);\n const typename = schema ? Type.getTypename(schema) ?? EXPANDO_TYPENAME : EXPANDO_TYPENAME;\n const metadata = resolve(typename);\n const serializer = metadata.serializer;\n invariant(serializer, `No serializer for type: ${typename}`);\n const content = await serializer.serialize({ object });\n return serializer.deserialize({ content, space: newSpace, newId: true });\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["import_echo", "SPACES", "SPACE_PLUGIN", "COMPOSER_SPACE_LOCK", "SHARED", "rxFromQuery", "query", "Rx", "make", "get", "unsubscribe", "subscribe", "result", "setSelf", "objects", "addFinalizer", "getSpaceDisplayName", "space", "personal", "namesCache", "state", "SpaceState", "SPACE_READY", "properties", "name", "length", "id", "ns", "getCollectionGraphNodePartials", "navigable", "collection", "resolve", "acceptPersistenceClass", "Set", "acceptPersistenceKey", "role", "onRearrangeChildren", "nextOrder", "filter", "Obj", "isObject", "map", "Ref", "onTransferStart", "child", "index", "find", "object", "target", "data", "splice", "push", "onTransferEnd", "destination", "findIndex", "onCopy", "newObject", "cloneObject", "db", "add", "checkPendingMigration", "SPACE_REQUIRES_MIGRATION", "Migrations", "versionProperty", "targetVersion", "constructSpaceNode", "hasPendingMigration", "CollectionType", "typename", "partials", "type", "SPACE_TYPE", "cacheable", "label", "description", "hue", "icon", "undefined", "disabled", "testId", "nodes", "ATTENDABLE_PATH_SEPARATOR", "disposition", "position", "constructSpaceActions", "dispatch", "migrating", "getId", "actions", "SpaceAction", "Migrate", "_tag", "ACTION_GROUP_TYPE", "createIntent", "running", "OpenCreateObject", "ACTION_TYPE", "Rename", "params", "caller", "keyBinding", "macos", "windows", "createObjectNode", "getTypename", "metadata", "Object", "keys", "graphProps", "fullyQualifiedId", "default", "persistenceClass", "persistenceKey", "constructObjectActions", "graph", "getSpace", "invariant", "RenameObject", "RemoveObjects", "getConnections", "url", "window", "location", "origin", "navigator", "clipboard", "writeText", "LayoutAction", "Expose", "part", "subject", "getNestedObjects", "loadReferences", "nested", "Promise", "all", "flat", "newSpace", "schema", "getSchema", "Type", "EXPANDO_TYPENAME", "serializer", "content", "serialize", "deserialize", "newId"]
7
+ }