@dxos/plugin-space 0.7.5-feature-compute.4d9d99a → 0.7.5-labs.401163d

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 (184) hide show
  1. package/dist/lib/browser/{app-graph-builder-5D2QB43K.mjs → app-graph-builder-GSS3V7IN.mjs} +15 -13
  2. package/dist/lib/browser/app-graph-builder-GSS3V7IN.mjs.map +7 -0
  3. package/dist/lib/browser/{app-graph-serializer-VNWPLPDF.mjs → app-graph-serializer-QDXM5M6K.mjs} +5 -5
  4. package/dist/lib/browser/{chunk-6SWQRWOD.mjs → chunk-DIBLC24B.mjs} +308 -251
  5. package/dist/lib/browser/chunk-DIBLC24B.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-SOXNANA6.mjs → chunk-PQXZCNAU.mjs} +3 -2
  7. package/dist/lib/browser/{chunk-SOXNANA6.mjs.map → chunk-PQXZCNAU.mjs.map} +3 -3
  8. package/dist/lib/browser/{chunk-UH5P4UL3.mjs → chunk-RLZQJD47.mjs} +3 -2
  9. package/dist/lib/browser/chunk-RLZQJD47.mjs.map +7 -0
  10. package/dist/lib/browser/{chunk-5TBRONF6.mjs → chunk-SDK7RZI3.mjs} +3 -3
  11. package/dist/lib/browser/{chunk-HCXWKGTE.mjs → chunk-XPZ6IIXF.mjs} +4 -9
  12. package/dist/lib/browser/chunk-XPZ6IIXF.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-ZBKFJNHH.mjs → chunk-ZL5ZFGBK.mjs} +15 -9
  14. package/dist/lib/browser/chunk-ZL5ZFGBK.mjs.map +7 -0
  15. package/dist/lib/browser/{identity-created-EC5FOCX2.mjs → identity-created-25TK5XNO.mjs} +3 -3
  16. package/dist/lib/browser/index.mjs +14 -13
  17. package/dist/lib/browser/index.mjs.map +3 -3
  18. package/dist/lib/browser/intent-resolver-LNTCXZ57.mjs +537 -0
  19. package/dist/lib/browser/intent-resolver-LNTCXZ57.mjs.map +7 -0
  20. package/dist/lib/browser/meta.json +1 -1
  21. package/dist/lib/browser/{react-root-AZJFNTKK.mjs → react-root-Q7JJDCPB.mjs} +6 -6
  22. package/dist/lib/browser/{react-surface-E2VSYVNZ.mjs → react-surface-BDMYLARO.mjs} +26 -33
  23. package/dist/lib/browser/react-surface-BDMYLARO.mjs.map +7 -0
  24. package/dist/lib/browser/{settings-ASFF5BZL.mjs → settings-K4JPYYEM.mjs} +3 -3
  25. package/dist/lib/browser/{spaces-ready-4SFNS5JQ.mjs → spaces-ready-THYJEJYZ.mjs} +31 -32
  26. package/dist/lib/browser/spaces-ready-THYJEJYZ.mjs.map +7 -0
  27. package/dist/lib/browser/{state-MS4KYJWI.mjs → state-6DCY5YJP.mjs} +3 -3
  28. package/dist/lib/browser/types/index.mjs +2 -4
  29. package/dist/lib/node/{app-graph-builder-ZQ5S62YR.cjs → app-graph-builder-V3RCGDV7.cjs} +60 -58
  30. package/dist/lib/node/app-graph-builder-V3RCGDV7.cjs.map +7 -0
  31. package/dist/lib/node/{app-graph-serializer-72S7P33H.cjs → app-graph-serializer-H4UACG57.cjs} +21 -21
  32. package/dist/lib/node/{chunk-M64YG2FY.cjs → chunk-4AZ2DD4G.cjs} +308 -251
  33. package/dist/lib/node/chunk-4AZ2DD4G.cjs.map +7 -0
  34. package/dist/lib/node/{chunk-DDZYVNVP.cjs → chunk-6MEOP3DH.cjs} +8 -14
  35. package/dist/lib/node/chunk-6MEOP3DH.cjs.map +7 -0
  36. package/dist/lib/node/{chunk-BQRNTKSQ.cjs → chunk-D6BFKOXY.cjs} +8 -8
  37. package/dist/lib/node/{chunk-Z34MTEU7.cjs → chunk-SYVPVU3K.cjs} +66 -60
  38. package/dist/lib/node/chunk-SYVPVU3K.cjs.map +7 -0
  39. package/dist/lib/node/{chunk-56NGXG2A.cjs → chunk-UX3U4RU2.cjs} +9 -8
  40. package/dist/lib/node/chunk-UX3U4RU2.cjs.map +7 -0
  41. package/dist/lib/node/{chunk-AO4EW2RX.cjs → chunk-WZR6OAN3.cjs} +6 -5
  42. package/dist/lib/node/{chunk-AO4EW2RX.cjs.map → chunk-WZR6OAN3.cjs.map} +3 -3
  43. package/dist/lib/node/{identity-created-IMDS4A6A.cjs → identity-created-7G5U7R36.cjs} +7 -7
  44. package/dist/lib/node/index.cjs +93 -92
  45. package/dist/lib/node/index.cjs.map +3 -3
  46. package/dist/lib/node/intent-resolver-CDE4M3TW.cjs +536 -0
  47. package/dist/lib/node/intent-resolver-CDE4M3TW.cjs.map +7 -0
  48. package/dist/lib/node/meta.json +1 -1
  49. package/dist/lib/node/{react-root-RB3OM3QG.cjs → react-root-JN6AIHMS.cjs} +12 -12
  50. package/dist/lib/node/{react-surface-TLKQEHHT.cjs → react-surface-XSK2QEQV.cjs} +72 -76
  51. package/dist/lib/node/react-surface-XSK2QEQV.cjs.map +7 -0
  52. package/dist/lib/node/{settings-QLCKAUHK.cjs → settings-TEELGWS4.cjs} +8 -8
  53. package/dist/lib/node/{spaces-ready-RZTKEXOL.cjs → spaces-ready-L4MJTFQ6.cjs} +39 -40
  54. package/dist/lib/node/spaces-ready-L4MJTFQ6.cjs.map +7 -0
  55. package/dist/lib/node/{state-4UIOUKLJ.cjs → state-WPZC4JXB.cjs} +8 -8
  56. package/dist/lib/node/types/index.cjs +16 -18
  57. package/dist/lib/node/types/index.cjs.map +2 -2
  58. package/dist/lib/node-esm/{app-graph-builder-CD6IYPSS.mjs → app-graph-builder-VFHK7OQI.mjs} +15 -13
  59. package/dist/lib/node-esm/app-graph-builder-VFHK7OQI.mjs.map +7 -0
  60. package/dist/lib/node-esm/{app-graph-serializer-CFXS6ZE2.mjs → app-graph-serializer-PIPJVXYZ.mjs} +5 -5
  61. package/dist/lib/node-esm/{chunk-M4XTHK35.mjs → chunk-4UX5WGKJ.mjs} +3 -3
  62. package/dist/lib/node-esm/{chunk-CLGCKZ2D.mjs → chunk-AAQRELDK.mjs} +4 -9
  63. package/dist/lib/node-esm/chunk-AAQRELDK.mjs.map +7 -0
  64. package/dist/lib/node-esm/{chunk-CMKML5IN.mjs → chunk-FTVEA5LO.mjs} +308 -251
  65. package/dist/lib/node-esm/chunk-FTVEA5LO.mjs.map +7 -0
  66. package/dist/lib/node-esm/{chunk-7FUVU45N.mjs → chunk-ICCM4YRJ.mjs} +3 -2
  67. package/dist/lib/node-esm/{chunk-7FUVU45N.mjs.map → chunk-ICCM4YRJ.mjs.map} +3 -3
  68. package/dist/lib/node-esm/{chunk-375RB3CZ.mjs → chunk-LGL4A5B5.mjs} +3 -2
  69. package/dist/lib/node-esm/chunk-LGL4A5B5.mjs.map +7 -0
  70. package/dist/lib/node-esm/{chunk-FUMGYUD3.mjs → chunk-RCZRYXI3.mjs} +15 -9
  71. package/dist/lib/node-esm/chunk-RCZRYXI3.mjs.map +7 -0
  72. package/dist/lib/node-esm/{identity-created-SJYZZ7Q3.mjs → identity-created-7THGZ7EW.mjs} +3 -3
  73. package/dist/lib/node-esm/index.mjs +14 -13
  74. package/dist/lib/node-esm/index.mjs.map +3 -3
  75. package/dist/lib/node-esm/intent-resolver-7L3GJAZE.mjs +538 -0
  76. package/dist/lib/node-esm/intent-resolver-7L3GJAZE.mjs.map +7 -0
  77. package/dist/lib/node-esm/meta.json +1 -1
  78. package/dist/lib/node-esm/{react-root-WKJWCHXR.mjs → react-root-BNA6PBFZ.mjs} +6 -6
  79. package/dist/lib/node-esm/{react-surface-RVEHOSAD.mjs → react-surface-FTI2LQNL.mjs} +26 -33
  80. package/dist/lib/node-esm/react-surface-FTI2LQNL.mjs.map +7 -0
  81. package/dist/lib/node-esm/{settings-WLVEO4JM.mjs → settings-KXYUZBLN.mjs} +3 -3
  82. package/dist/lib/node-esm/{spaces-ready-ITGYYT5A.mjs → spaces-ready-ZC2R73H3.mjs} +31 -32
  83. package/dist/lib/node-esm/spaces-ready-ZC2R73H3.mjs.map +7 -0
  84. package/dist/lib/node-esm/{state-BMISGQ2O.mjs → state-5GH2D5U4.mjs} +3 -3
  85. package/dist/lib/node-esm/types/index.mjs +2 -4
  86. package/dist/types/src/SpacePlugin.d.ts +5 -1
  87. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  88. package/dist/types/src/capabilities/app-graph-builder.d.ts +22 -22
  89. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  90. package/dist/types/src/capabilities/capabilities.d.ts +6 -0
  91. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  92. package/dist/types/src/capabilities/index.d.ts +34 -33
  93. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  94. package/dist/types/src/capabilities/intent-resolver.d.ts +2 -1
  95. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  96. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  97. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  98. package/dist/types/src/components/BaseObjectSettings.d.ts.map +1 -1
  99. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +4 -3
  100. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  101. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
  102. package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
  103. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  104. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts.map +1 -1
  105. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts +3 -4
  106. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts.map +1 -1
  107. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.stories.d.ts.map +1 -1
  108. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
  109. package/dist/types/src/meta.d.ts +1 -0
  110. package/dist/types/src/meta.d.ts.map +1 -1
  111. package/dist/types/src/types/types.d.ts +2 -5
  112. package/dist/types/src/types/types.d.ts.map +1 -1
  113. package/dist/types/src/util.d.ts +1 -0
  114. package/dist/types/src/util.d.ts.map +1 -1
  115. package/dist/types/tsconfig.tsbuildinfo +1 -1
  116. package/package.json +39 -37
  117. package/src/SpacePlugin.tsx +11 -6
  118. package/src/capabilities/app-graph-builder.ts +9 -8
  119. package/src/capabilities/capabilities.ts +4 -1
  120. package/src/capabilities/intent-resolver.ts +410 -312
  121. package/src/capabilities/react-surface.tsx +22 -30
  122. package/src/capabilities/spaces-ready.ts +20 -21
  123. package/src/components/AwaitingObject.tsx +5 -5
  124. package/src/components/BaseObjectSettings.tsx +7 -0
  125. package/src/components/CreateDialog/CreateObjectDialog.tsx +15 -15
  126. package/src/components/CreateDialog/CreateObjectPanel.tsx +115 -116
  127. package/src/components/CreateDialog/CreateSpaceDialog.tsx +18 -9
  128. package/src/components/JoinDialog.tsx +27 -19
  129. package/src/components/SpacePluginSettings.tsx +3 -3
  130. package/src/components/SpacePresence.stories.tsx +2 -2
  131. package/src/components/SpacePresence.tsx +2 -3
  132. package/src/components/SpaceSettings/SpaceSettingsDialog.tsx +16 -1
  133. package/src/components/SpaceSettings/SpaceSettingsPanel.stories.tsx +5 -1
  134. package/src/components/SpaceSettings/SpaceSettingsPanel.tsx +15 -8
  135. package/src/components/SyncStatus/InlineSyncStatus.tsx +2 -2
  136. package/src/components/SyncStatus/SyncStatus.tsx +2 -1
  137. package/src/meta.ts +1 -0
  138. package/src/types/types.ts +2 -7
  139. package/src/util.tsx +9 -4
  140. package/dist/lib/browser/app-graph-builder-5D2QB43K.mjs.map +0 -7
  141. package/dist/lib/browser/chunk-6SWQRWOD.mjs.map +0 -7
  142. package/dist/lib/browser/chunk-HCXWKGTE.mjs.map +0 -7
  143. package/dist/lib/browser/chunk-UH5P4UL3.mjs.map +0 -7
  144. package/dist/lib/browser/chunk-ZBKFJNHH.mjs.map +0 -7
  145. package/dist/lib/browser/intent-resolver-VBL572N7.mjs +0 -459
  146. package/dist/lib/browser/intent-resolver-VBL572N7.mjs.map +0 -7
  147. package/dist/lib/browser/react-surface-E2VSYVNZ.mjs.map +0 -7
  148. package/dist/lib/browser/spaces-ready-4SFNS5JQ.mjs.map +0 -7
  149. package/dist/lib/node/app-graph-builder-ZQ5S62YR.cjs.map +0 -7
  150. package/dist/lib/node/chunk-56NGXG2A.cjs.map +0 -7
  151. package/dist/lib/node/chunk-DDZYVNVP.cjs.map +0 -7
  152. package/dist/lib/node/chunk-M64YG2FY.cjs.map +0 -7
  153. package/dist/lib/node/chunk-Z34MTEU7.cjs.map +0 -7
  154. package/dist/lib/node/intent-resolver-S4HZABYI.cjs +0 -458
  155. package/dist/lib/node/intent-resolver-S4HZABYI.cjs.map +0 -7
  156. package/dist/lib/node/react-surface-TLKQEHHT.cjs.map +0 -7
  157. package/dist/lib/node/spaces-ready-RZTKEXOL.cjs.map +0 -7
  158. package/dist/lib/node-esm/app-graph-builder-CD6IYPSS.mjs.map +0 -7
  159. package/dist/lib/node-esm/chunk-375RB3CZ.mjs.map +0 -7
  160. package/dist/lib/node-esm/chunk-CLGCKZ2D.mjs.map +0 -7
  161. package/dist/lib/node-esm/chunk-CMKML5IN.mjs.map +0 -7
  162. package/dist/lib/node-esm/chunk-FUMGYUD3.mjs.map +0 -7
  163. package/dist/lib/node-esm/intent-resolver-OIQH7HN7.mjs +0 -460
  164. package/dist/lib/node-esm/intent-resolver-OIQH7HN7.mjs.map +0 -7
  165. package/dist/lib/node-esm/react-surface-RVEHOSAD.mjs.map +0 -7
  166. package/dist/lib/node-esm/spaces-ready-ITGYYT5A.mjs.map +0 -7
  167. /package/dist/lib/browser/{app-graph-serializer-VNWPLPDF.mjs.map → app-graph-serializer-QDXM5M6K.mjs.map} +0 -0
  168. /package/dist/lib/browser/{chunk-5TBRONF6.mjs.map → chunk-SDK7RZI3.mjs.map} +0 -0
  169. /package/dist/lib/browser/{identity-created-EC5FOCX2.mjs.map → identity-created-25TK5XNO.mjs.map} +0 -0
  170. /package/dist/lib/browser/{react-root-AZJFNTKK.mjs.map → react-root-Q7JJDCPB.mjs.map} +0 -0
  171. /package/dist/lib/browser/{settings-ASFF5BZL.mjs.map → settings-K4JPYYEM.mjs.map} +0 -0
  172. /package/dist/lib/browser/{state-MS4KYJWI.mjs.map → state-6DCY5YJP.mjs.map} +0 -0
  173. /package/dist/lib/node/{app-graph-serializer-72S7P33H.cjs.map → app-graph-serializer-H4UACG57.cjs.map} +0 -0
  174. /package/dist/lib/node/{chunk-BQRNTKSQ.cjs.map → chunk-D6BFKOXY.cjs.map} +0 -0
  175. /package/dist/lib/node/{identity-created-IMDS4A6A.cjs.map → identity-created-7G5U7R36.cjs.map} +0 -0
  176. /package/dist/lib/node/{react-root-RB3OM3QG.cjs.map → react-root-JN6AIHMS.cjs.map} +0 -0
  177. /package/dist/lib/node/{settings-QLCKAUHK.cjs.map → settings-TEELGWS4.cjs.map} +0 -0
  178. /package/dist/lib/node/{state-4UIOUKLJ.cjs.map → state-WPZC4JXB.cjs.map} +0 -0
  179. /package/dist/lib/node-esm/{app-graph-serializer-CFXS6ZE2.mjs.map → app-graph-serializer-PIPJVXYZ.mjs.map} +0 -0
  180. /package/dist/lib/node-esm/{chunk-M4XTHK35.mjs.map → chunk-4UX5WGKJ.mjs.map} +0 -0
  181. /package/dist/lib/node-esm/{identity-created-SJYZZ7Q3.mjs.map → identity-created-7THGZ7EW.mjs.map} +0 -0
  182. /package/dist/lib/node-esm/{react-root-WKJWCHXR.mjs.map → react-root-BNA6PBFZ.mjs.map} +0 -0
  183. /package/dist/lib/node-esm/{settings-WLVEO4JM.mjs.map → settings-KXYUZBLN.mjs.map} +0 -0
  184. /package/dist/lib/node-esm/{state-BMISGQ2O.mjs.map → state-5GH2D5U4.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_Z34MTEU7_exports = {};
20
- __export(chunk_Z34MTEU7_exports, {
19
+ var chunk_SYVPVU3K_exports = {};
20
+ __export(chunk_SYVPVU3K_exports, {
21
21
  COMPOSER_SPACE_LOCK: () => COMPOSER_SPACE_LOCK,
22
22
  SHARED: () => SHARED,
23
23
  SPACES: () => SPACES,
@@ -32,9 +32,9 @@ __export(chunk_Z34MTEU7_exports, {
32
32
  getSpaceDisplayName: () => getSpaceDisplayName,
33
33
  memoizeQuery: () => memoizeQuery
34
34
  });
35
- module.exports = __toCommonJS(chunk_Z34MTEU7_exports);
36
- var import_chunk_DDZYVNVP = require("./chunk-DDZYVNVP.cjs");
37
- var import_chunk_AO4EW2RX = require("./chunk-AO4EW2RX.cjs");
35
+ module.exports = __toCommonJS(chunk_SYVPVU3K_exports);
36
+ var import_chunk_6MEOP3DH = require("./chunk-6MEOP3DH.cjs");
37
+ var import_chunk_WZR6OAN3 = require("./chunk-WZR6OAN3.cjs");
38
38
  var import_app_framework = require("@dxos/app-framework");
39
39
  var import_echo_schema = require("@dxos/echo-schema");
40
40
  var import_invariant = require("@dxos/invariant");
@@ -43,7 +43,7 @@ var import_migrations = require("@dxos/migrations");
43
43
  var import_plugin_graph = require("@dxos/plugin-graph");
44
44
  var import_echo = require("@dxos/react-client/echo");
45
45
  var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/util.tsx";
46
- var SPACES = `${import_chunk_AO4EW2RX.SPACE_PLUGIN}-spaces`;
46
+ var SPACES = `${import_chunk_WZR6OAN3.SPACE_PLUGIN}-spaces`;
47
47
  var SPACE_TYPE = "dxos.org/type/Space";
48
48
  var COMPOSER_SPACE_LOCK = "dxos.org/plugin/space/lock";
49
49
  var SHARED = "shared-spaces";
@@ -62,12 +62,12 @@ var getSpaceDisplayName = (space, { personal, namesCache = {} } = {}) => {
62
62
  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 ? [
63
63
  "personal space label",
64
64
  {
65
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
65
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
66
66
  }
67
67
  ] : [
68
68
  "unnamed space label",
69
69
  {
70
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
70
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
71
71
  }
72
72
  ];
73
73
  };
@@ -115,8 +115,8 @@ var checkPendingMigration = (space) => {
115
115
  };
116
116
  var constructSpaceNode = ({ space, navigable = false, personal, namesCache, resolve }) => {
117
117
  const hasPendingMigration = checkPendingMigration(space);
118
- const collection = space.state.get() === import_echo.SpaceState.SPACE_READY && space.properties[import_chunk_DDZYVNVP.CollectionType.typename]?.target;
119
- const partials = space.state.get() === import_echo.SpaceState.SPACE_READY && collection instanceof import_chunk_DDZYVNVP.CollectionType ? getCollectionGraphNodePartials({
118
+ const collection = space.state.get() === import_echo.SpaceState.SPACE_READY && space.properties[import_chunk_6MEOP3DH.CollectionType.typename]?.target;
119
+ const partials = space.state.get() === import_echo.SpaceState.SPACE_READY && collection instanceof import_chunk_6MEOP3DH.CollectionType ? getCollectionGraphNodePartials({
120
120
  collection,
121
121
  space,
122
122
  resolve,
@@ -138,6 +138,7 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
138
138
  namesCache
139
139
  }),
140
140
  description: space.state.get() === import_echo.SpaceState.SPACE_READY && space.properties.description,
141
+ hue: space.state.get() === import_echo.SpaceState.SPACE_READY && space.properties.hue,
141
142
  icon: "ph--planet--regular",
142
143
  disabled: !navigable || space.state.get() !== import_echo.SpaceState.SPACE_READY || hasPendingMigration,
143
144
  testId: "spacePlugin.space"
@@ -151,10 +152,10 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
151
152
  const actions = [];
152
153
  if (hasPendingMigration) {
153
154
  actions.push({
154
- id: getId(import_chunk_DDZYVNVP.SpaceAction.Migrate._tag),
155
+ id: getId(import_chunk_6MEOP3DH.SpaceAction.Migrate._tag),
155
156
  type: import_plugin_graph.ACTION_GROUP_TYPE,
156
157
  data: async () => {
157
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.Migrate, {
158
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.Migrate, {
158
159
  space
159
160
  }));
160
161
  },
@@ -162,7 +163,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
162
163
  label: [
163
164
  "migrate space label",
164
165
  {
165
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
166
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
166
167
  }
167
168
  ],
168
169
  icon: "ph--database--regular",
@@ -174,10 +175,10 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
174
175
  if (state === import_echo.SpaceState.SPACE_READY && !hasPendingMigration) {
175
176
  const locked = space.properties[COMPOSER_SPACE_LOCK];
176
177
  actions.push({
177
- id: getId(import_chunk_DDZYVNVP.SpaceAction.OpenCreateObject._tag),
178
+ id: getId(import_chunk_6MEOP3DH.SpaceAction.OpenCreateObject._tag),
178
179
  type: import_plugin_graph.ACTION_TYPE,
179
180
  data: async () => {
180
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.OpenCreateObject, {
181
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.OpenCreateObject, {
181
182
  target: space
182
183
  }));
183
184
  },
@@ -185,21 +186,21 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
185
186
  label: [
186
187
  "create object in space label",
187
188
  {
188
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
189
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
189
190
  }
190
191
  ],
191
192
  icon: "ph--plus--regular",
192
- disposition: "toolbar",
193
+ disposition: "item",
193
194
  testId: "spacePlugin.createObject"
194
195
  }
195
196
  }, {
196
- id: getId(import_chunk_DDZYVNVP.SpaceAction.Share._tag),
197
+ id: getId(import_chunk_6MEOP3DH.SpaceAction.Share._tag),
197
198
  type: import_plugin_graph.ACTION_TYPE,
198
199
  data: async () => {
199
200
  if (locked) {
200
201
  return;
201
202
  }
202
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.Share, {
203
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.Share, {
203
204
  space
204
205
  }));
205
206
  },
@@ -207,26 +208,30 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
207
208
  label: [
208
209
  "share space label",
209
210
  {
210
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
211
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
211
212
  }
212
213
  ],
213
214
  icon: "ph--users--regular",
214
215
  disabled: locked,
216
+ disposition: "toolbar",
217
+ iconOnly: false,
218
+ variant: "default",
219
+ testId: "spacePlugin.shareSpace",
215
220
  keyBinding: {
216
221
  macos: "meta+.",
217
222
  windows: "alt+."
218
223
  }
219
224
  }
220
225
  }, {
221
- id: locked ? getId(import_chunk_DDZYVNVP.SpaceAction.Unlock._tag) : getId(import_chunk_DDZYVNVP.SpaceAction.Lock._tag),
226
+ id: locked ? getId(import_chunk_6MEOP3DH.SpaceAction.Unlock._tag) : getId(import_chunk_6MEOP3DH.SpaceAction.Lock._tag),
222
227
  type: import_plugin_graph.ACTION_TYPE,
223
228
  data: async () => {
224
229
  if (locked) {
225
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.Unlock, {
230
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.Unlock, {
226
231
  space
227
232
  }));
228
233
  } else {
229
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.Lock, {
234
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.Lock, {
230
235
  space
231
236
  }));
232
237
  }
@@ -235,16 +240,16 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
235
240
  label: [
236
241
  locked ? "unlock space label" : "lock space label",
237
242
  {
238
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
243
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
239
244
  }
240
245
  ],
241
246
  icon: locked ? "ph--lock-simple-open--regular" : "ph--lock-simple--regular"
242
247
  }
243
248
  }, {
244
- id: getId(import_chunk_DDZYVNVP.SpaceAction.Rename._tag),
249
+ id: getId(import_chunk_6MEOP3DH.SpaceAction.Rename._tag),
245
250
  type: import_plugin_graph.ACTION_TYPE,
246
251
  data: async (params) => {
247
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.Rename, {
252
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.Rename, {
248
253
  space,
249
254
  caller: params.caller
250
255
  }));
@@ -253,7 +258,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
253
258
  label: [
254
259
  "rename space label",
255
260
  {
256
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
261
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
257
262
  }
258
263
  ],
259
264
  icon: "ph--pencil-simple-line--regular",
@@ -263,10 +268,10 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
263
268
  }
264
269
  }
265
270
  }, {
266
- id: getId(import_chunk_DDZYVNVP.SpaceAction.OpenSettings._tag),
271
+ id: getId(import_chunk_6MEOP3DH.SpaceAction.OpenSettings._tag),
267
272
  type: import_plugin_graph.ACTION_TYPE,
268
273
  data: async () => {
269
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.OpenSettings, {
274
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.OpenSettings, {
270
275
  space
271
276
  }));
272
277
  },
@@ -274,7 +279,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
274
279
  label: [
275
280
  "open space settings label",
276
281
  {
277
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
282
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
278
283
  }
279
284
  ],
280
285
  icon: "ph--gear--regular"
@@ -283,10 +288,10 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
283
288
  }
284
289
  if (state !== import_echo.SpaceState.SPACE_INACTIVE && !hasPendingMigration) {
285
290
  actions.push({
286
- id: getId(import_chunk_DDZYVNVP.SpaceAction.Close._tag),
291
+ id: getId(import_chunk_6MEOP3DH.SpaceAction.Close._tag),
287
292
  type: import_plugin_graph.ACTION_TYPE,
288
293
  data: async () => {
289
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.Close, {
294
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.Close, {
290
295
  space
291
296
  }));
292
297
  },
@@ -294,7 +299,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
294
299
  label: [
295
300
  "close space label",
296
301
  {
297
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
302
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
298
303
  }
299
304
  ],
300
305
  icon: "ph--x--regular",
@@ -304,10 +309,10 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
304
309
  }
305
310
  if (state === import_echo.SpaceState.SPACE_INACTIVE) {
306
311
  actions.push({
307
- id: getId(import_chunk_DDZYVNVP.SpaceAction.Open._tag),
312
+ id: getId(import_chunk_6MEOP3DH.SpaceAction.Open._tag),
308
313
  type: import_plugin_graph.ACTION_TYPE,
309
314
  data: async () => {
310
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.Open, {
315
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.Open, {
311
316
  space
312
317
  }));
313
318
  },
@@ -315,7 +320,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
315
320
  label: [
316
321
  "open space label",
317
322
  {
318
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
323
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
319
324
  }
320
325
  ],
321
326
  icon: "ph--clock-counter-clockwise--regular",
@@ -334,7 +339,7 @@ var createObjectNode = ({ object, space, navigable = false, resolve }) => {
334
339
  if (Object.keys(metadata).length === 0) {
335
340
  return void 0;
336
341
  }
337
- const partials = object instanceof import_chunk_DDZYVNVP.CollectionType ? getCollectionGraphNodePartials({
342
+ const partials = object instanceof import_chunk_6MEOP3DH.CollectionType ? getCollectionGraphNodePartials({
338
343
  collection: object,
339
344
  space,
340
345
  resolve,
@@ -354,7 +359,7 @@ var createObjectNode = ({ object, space, navigable = false, resolve }) => {
354
359
  label: metadata.label?.(object) || object.name || metadata.placeholder || [
355
360
  "unnamed object label",
356
361
  {
357
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
362
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
358
363
  }
359
364
  ],
360
365
  icon: metadata.icon ?? "ph--placeholder--regular",
@@ -368,12 +373,12 @@ var constructObjectActions = ({ node, dispatch, navigable = false }) => {
368
373
  const object = node.data;
369
374
  const getId = (id) => `${id}/${(0, import_echo.fullyQualifiedId)(object)}`;
370
375
  const actions = [
371
- ...object instanceof import_chunk_DDZYVNVP.CollectionType ? [
376
+ ...object instanceof import_chunk_6MEOP3DH.CollectionType ? [
372
377
  {
373
- id: getId(import_chunk_DDZYVNVP.SpaceAction.OpenCreateObject._tag),
378
+ id: getId(import_chunk_6MEOP3DH.SpaceAction.OpenCreateObject._tag),
374
379
  type: import_plugin_graph.ACTION_TYPE,
375
380
  data: async () => {
376
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.OpenCreateObject, {
381
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.OpenCreateObject, {
377
382
  target: object
378
383
  }));
379
384
  },
@@ -381,7 +386,7 @@ var constructObjectActions = ({ node, dispatch, navigable = false }) => {
381
386
  label: [
382
387
  "create object in collection label",
383
388
  {
384
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
389
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
385
390
  }
386
391
  ],
387
392
  icon: "ph--plus--regular",
@@ -391,19 +396,19 @@ var constructObjectActions = ({ node, dispatch, navigable = false }) => {
391
396
  }
392
397
  ] : [],
393
398
  {
394
- id: getId(import_chunk_DDZYVNVP.SpaceAction.RenameObject._tag),
399
+ id: getId(import_chunk_6MEOP3DH.SpaceAction.RenameObject._tag),
395
400
  type: import_plugin_graph.ACTION_TYPE,
396
401
  data: async (params) => {
397
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.RenameObject, {
402
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.RenameObject, {
398
403
  object,
399
404
  caller: params.caller
400
405
  }));
401
406
  },
402
407
  properties: {
403
408
  label: [
404
- object instanceof import_chunk_DDZYVNVP.CollectionType ? "rename collection label" : "rename object label",
409
+ object instanceof import_chunk_6MEOP3DH.CollectionType ? "rename collection label" : "rename object label",
405
410
  {
406
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
411
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
407
412
  }
408
413
  ],
409
414
  icon: "ph--pencil-simple-line--regular",
@@ -413,14 +418,14 @@ var constructObjectActions = ({ node, dispatch, navigable = false }) => {
413
418
  }
414
419
  },
415
420
  {
416
- id: getId(import_chunk_DDZYVNVP.SpaceAction.RemoveObjects._tag),
421
+ id: getId(import_chunk_6MEOP3DH.SpaceAction.RemoveObjects._tag),
417
422
  type: import_plugin_graph.ACTION_TYPE,
418
423
  data: async () => {
419
424
  const graph = (0, import_plugin_graph.getGraph)(node);
420
425
  const collection = graph.nodes(node, {
421
426
  relation: "inbound"
422
- }).find(({ data }) => data instanceof import_chunk_DDZYVNVP.CollectionType)?.data;
423
- await dispatch((0, import_app_framework.createIntent)(import_chunk_DDZYVNVP.SpaceAction.RemoveObjects, {
427
+ }).find(({ data }) => data instanceof import_chunk_6MEOP3DH.CollectionType)?.data;
428
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_6MEOP3DH.SpaceAction.RemoveObjects, {
424
429
  objects: [
425
430
  object
426
431
  ],
@@ -429,17 +434,17 @@ var constructObjectActions = ({ node, dispatch, navigable = false }) => {
429
434
  },
430
435
  properties: {
431
436
  label: [
432
- object instanceof import_chunk_DDZYVNVP.CollectionType ? "delete collection label" : "delete object label",
437
+ object instanceof import_chunk_6MEOP3DH.CollectionType ? "delete collection label" : "delete object label",
433
438
  {
434
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
439
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
435
440
  }
436
441
  ],
437
442
  icon: "ph--trash--regular",
438
- keyBinding: object instanceof import_chunk_DDZYVNVP.CollectionType ? void 0 : "shift+meta+Backspace",
443
+ keyBinding: object instanceof import_chunk_6MEOP3DH.CollectionType ? void 0 : "shift+meta+Backspace",
439
444
  testId: "spacePlugin.deleteObject"
440
445
  }
441
446
  },
442
- ...navigable || !(object instanceof import_chunk_DDZYVNVP.CollectionType) ? [
447
+ ...navigable || !(object instanceof import_chunk_6MEOP3DH.CollectionType) ? [
443
448
  {
444
449
  id: getId("copy-link"),
445
450
  type: import_plugin_graph.ACTION_TYPE,
@@ -451,7 +456,7 @@ var constructObjectActions = ({ node, dispatch, navigable = false }) => {
451
456
  label: [
452
457
  "copy link label",
453
458
  {
454
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
459
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
455
460
  }
456
461
  ],
457
462
  icon: "ph--link--regular",
@@ -461,18 +466,19 @@ var constructObjectActions = ({ node, dispatch, navigable = false }) => {
461
466
  ] : [],
462
467
  // TODO(wittjosiah): Factor out and apply to all nodes.
463
468
  {
464
- id: import_app_framework.NavigationAction.Expose._tag,
469
+ id: getId(import_app_framework.LayoutAction.Expose._tag),
465
470
  type: import_plugin_graph.ACTION_TYPE,
466
471
  data: async () => {
467
- await dispatch((0, import_app_framework.createIntent)(import_app_framework.NavigationAction.Expose, {
468
- id: (0, import_echo.fullyQualifiedId)(object)
472
+ await dispatch((0, import_app_framework.createIntent)(import_app_framework.LayoutAction.Expose, {
473
+ part: "navigation",
474
+ subject: (0, import_echo.fullyQualifiedId)(object)
469
475
  }));
470
476
  },
471
477
  properties: {
472
478
  label: [
473
479
  "expose object label",
474
480
  {
475
- ns: import_chunk_AO4EW2RX.SPACE_PLUGIN
481
+ ns: import_chunk_WZR6OAN3.SPACE_PLUGIN
476
482
  }
477
483
  ],
478
484
  icon: "ph--eye--regular",
@@ -516,7 +522,7 @@ var cloneObject = async (object, resolve, newSpace) => {
516
522
  const serializer = metadata.serializer;
517
523
  (0, import_invariant.invariant)(serializer, `No serializer for type: ${typename}`, {
518
524
  F: __dxlog_file,
519
- L: 557,
525
+ L: 562,
520
526
  S: void 0,
521
527
  A: [
522
528
  "serializer",
@@ -548,4 +554,4 @@ var cloneObject = async (object, resolve, newSpace) => {
548
554
  getSpaceDisplayName,
549
555
  memoizeQuery
550
556
  });
551
- //# sourceMappingURL=chunk-Z34MTEU7.cjs.map
557
+ //# sourceMappingURL=chunk-SYVPVU3K.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 { createIntent, type PromiseIntentDispatcher, LayoutAction } from '@dxos/app-framework';\nimport { EXPANDO_TYPENAME, getObjectAnnotation, getTypename, type Expando } from '@dxos/echo-schema';\nimport { invariant } from '@dxos/invariant';\nimport { getSchema, isReactiveObject, makeRef } from '@dxos/live-object';\nimport { Migrations } from '@dxos/migrations';\nimport {\n ACTION_GROUP_TYPE,\n ACTION_TYPE,\n cleanup,\n getGraph,\n memoize,\n type ActionData,\n type Graph,\n type InvokeParams,\n type Node,\n type NodeArg,\n} from '@dxos/plugin-graph';\nimport {\n Filter,\n fullyQualifiedId,\n getSpace,\n isEchoObject,\n isSpace,\n SpaceState,\n type Echo,\n type FilterSource,\n type Query,\n type QueryOptions,\n type ReactiveEchoObject,\n type Space,\n} from '@dxos/react-client/echo';\n\nimport { SPACE_PLUGIN } from './meta';\nimport { CollectionType, SpaceAction } from './types';\n\nexport const SPACES = `${SPACE_PLUGIN}-spaces`;\nexport const SPACE_TYPE = 'dxos.org/type/Space';\nexport const COMPOSER_SPACE_LOCK = 'dxos.org/plugin/space/lock';\n// TODO(wittjosiah): Remove.\nexport const SHARED = 'shared-spaces';\n\nconst EMPTY_ARRAY: never[] = [];\n\n/**\n *\n * @param spaceOrEcho\n * @param filter\n * @param options\n * @returns\n */\nexport const memoizeQuery = <T extends ReactiveEchoObject<any>>(\n spaceOrEcho?: Space | Echo,\n filter?: FilterSource<T>,\n options?: QueryOptions,\n): T[] => {\n const key = JSON.stringify({\n space: isSpace(spaceOrEcho) ? spaceOrEcho.id : undefined,\n filter: Filter.from(filter).toProto(),\n });\n\n const query = memoize(\n () =>\n isSpace(spaceOrEcho)\n ? spaceOrEcho.db.query(filter, options)\n : (spaceOrEcho?.query(filter, options) as Query<T> | undefined),\n key,\n );\n const unsubscribe = memoize(() => query?.subscribe(), key);\n cleanup(() => unsubscribe?.());\n\n return query?.objects ?? EMPTY_ARRAY;\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 disabled: !navigable,\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(isEchoObject).map(makeRef);\n },\n onTransferStart: (child: Node<ReactiveEchoObject<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, makeRef(child.data));\n } else {\n collection.objects.push(makeRef(child.data));\n }\n }\n\n // }\n },\n onTransferEnd: (child: Node<ReactiveEchoObject<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<ReactiveEchoObject<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, makeRef(newObject));\n } else {\n collection.objects.push(makeRef(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: 'ph--planet--regular',\n disabled: !navigable || space.state.get() !== SpaceState.SPACE_READY || hasPendingMigration,\n testId: 'spacePlugin.space',\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: 'toolbar',\n disabled: migrating || Migrations.running(space),\n },\n });\n }\n\n if (state === SpaceState.SPACE_READY && !hasPendingMigration) {\n const locked = space.properties[COMPOSER_SPACE_LOCK];\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.Share._tag),\n type: ACTION_TYPE,\n data: async () => {\n if (locked) {\n return;\n }\n await dispatch(createIntent(SpaceAction.Share, { space }));\n },\n properties: {\n label: ['share space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--users--regular',\n disabled: locked,\n disposition: 'toolbar',\n iconOnly: false,\n variant: 'default',\n testId: 'spacePlugin.shareSpace',\n keyBinding: {\n macos: 'meta+.',\n windows: 'alt+.',\n },\n },\n },\n {\n id: locked ? getId(SpaceAction.Unlock._tag) : getId(SpaceAction.Lock._tag),\n type: ACTION_TYPE,\n data: async () => {\n if (locked) {\n await dispatch(createIntent(SpaceAction.Unlock, { space }));\n } else {\n await dispatch(createIntent(SpaceAction.Lock, { space }));\n }\n },\n properties: {\n label: [locked ? 'unlock space label' : 'lock space label', { ns: SPACE_PLUGIN }],\n icon: locked ? 'ph--lock-simple-open--regular' : 'ph--lock-simple--regular',\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 id: getId(SpaceAction.OpenSettings._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.OpenSettings, { space }));\n },\n properties: {\n label: ['open space settings label', { ns: SPACE_PLUGIN }],\n icon: 'ph--gear--regular',\n },\n },\n );\n }\n\n // TODO(wittjosiah): Consider moving close space into the space settings dialog.\n if (state !== SpaceState.SPACE_INACTIVE && !hasPendingMigration) {\n actions.push({\n id: getId(SpaceAction.Close._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.Close, { space }));\n },\n properties: {\n label: ['close space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--x--regular',\n disabled: personal,\n },\n });\n }\n\n if (state === SpaceState.SPACE_INACTIVE) {\n actions.push({\n id: getId(SpaceAction.Open._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.Open, { space }));\n },\n properties: {\n label: ['open space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--clock-counter-clockwise--regular',\n disposition: 'toolbar',\n },\n });\n }\n\n return actions;\n};\n\nexport const createObjectNode = ({\n object,\n space,\n navigable = false,\n resolve,\n}: {\n object: ReactiveEchoObject<any>;\n space: Space;\n navigable?: boolean;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const type = 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 label: metadata.label?.(object) ||\n object.name ||\n metadata.placeholder || ['unnamed object label', { ns: SPACE_PLUGIN }],\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 node,\n dispatch,\n navigable = false,\n}: {\n node: Node<ReactiveEchoObject<any>>;\n dispatch: PromiseIntentDispatcher;\n navigable?: boolean;\n}) => {\n const object = node.data;\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: 'toolbar',\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): Doesn't work.\n // keyBinding: 'shift+F6',\n testId: 'spacePlugin.renameObject',\n },\n },\n {\n id: getId(SpaceAction.RemoveObjects._tag),\n type: ACTION_TYPE,\n data: async () => {\n const graph = getGraph(node);\n const collection = graph\n .nodes(node, { relation: '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}/${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\n */\nexport const getActiveSpace = (graph: Graph, active?: string) => {\n if (!active) {\n return;\n }\n\n const node = graph.findNode(active);\n if (!node || !isReactiveObject(node.data)) {\n return;\n }\n\n return getSpace(node.data);\n};\n\n/**\n * @deprecated This is a temporary solution.\n */\nexport const getNestedObjects = async (\n object: ReactiveEchoObject<any>,\n resolve: (typename: string) => Record<string, any>,\n): Promise<ReactiveEchoObject<any>[]> => {\n const type = 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: ReactiveEchoObject<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: Expando,\n resolve: (typename: string) => Record<string, any>,\n newSpace: Space,\n): Promise<Expando> => {\n const schema = getSchema(object);\n const typename = schema ? getObjectAnnotation(schema)?.typename ?? 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": ["SPACES", "SPACE_PLUGIN", "SPACE_TYPE", "COMPOSER_SPACE_LOCK", "SHARED", "EMPTY_ARRAY", "memoizeQuery", "spaceOrEcho", "filter", "options", "key", "JSON", "stringify", "space", "isSpace", "id", "undefined", "Filter", "from", "toProto", "query", "memoize", "db", "unsubscribe", "subscribe", "cleanup", "objects", "getSpaceDisplayName", "personal", "namesCache", "state", "get", "SpaceState", "SPACE_READY", "properties", "name", "length", "ns", "getCollectionGraphNodePartials", "navigable", "collection", "resolve", "disabled", "acceptPersistenceClass", "Set", "acceptPersistenceKey", "role", "onRearrangeChildren", "nextOrder", "isEchoObject", "map", "makeRef", "onTransferStart", "child", "index", "find", "object", "target", "data", "splice", "push", "onTransferEnd", "destination", "findIndex", "onCopy", "newObject", "cloneObject", "add", "checkPendingMigration", "SPACE_REQUIRES_MIGRATION", "Migrations", "versionProperty", "targetVersion", "constructSpaceNode", "hasPendingMigration", "CollectionType", "typename", "partials", "type", "cacheable", "label", "description", "hue", "icon", "testId", "constructSpaceActions", "dispatch", "migrating", "getId", "actions", "SpaceAction", "Migrate", "_tag", "ACTION_GROUP_TYPE", "createIntent", "disposition", "running", "locked", "OpenCreateObject", "ACTION_TYPE", "Share", "iconOnly", "variant", "keyBinding", "macos", "windows", "Unlock", "Lock", "Rename", "params", "caller", "OpenSettings", "SPACE_INACTIVE", "Close", "Open", "createObjectNode", "getTypename", "metadata", "Object", "keys", "graphProps", "fullyQualifiedId", "placeholder", "persistenceClass", "persistenceKey", "constructObjectActions", "node", "RenameObject", "RemoveObjects", "graph", "getGraph", "nodes", "relation", "url", "window", "location", "origin", "navigator", "clipboard", "writeText", "LayoutAction", "Expose", "part", "subject", "getActiveSpace", "active", "findNode", "isReactiveObject", "getSpace", "getNestedObjects", "loadReferences", "nested", "Promise", "all", "flat", "newSpace", "schema", "getSchema", "getObjectAnnotation", "EXPANDO_TYPENAME", "serializer", "invariant", "content", "serialize", "deserialize", "newId"]
7
+ }
@@ -16,26 +16,27 @@ 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_56NGXG2A_exports = {};
20
- __export(chunk_56NGXG2A_exports, {
19
+ var chunk_UX3U4RU2_exports = {};
20
+ __export(chunk_UX3U4RU2_exports, {
21
21
  SpaceCapabilities: () => SpaceCapabilities,
22
22
  ThreadCapabilities: () => ThreadCapabilities
23
23
  });
24
- module.exports = __toCommonJS(chunk_56NGXG2A_exports);
25
- var import_chunk_AO4EW2RX = require("./chunk-AO4EW2RX.cjs");
24
+ module.exports = __toCommonJS(chunk_UX3U4RU2_exports);
25
+ var import_chunk_WZR6OAN3 = require("./chunk-WZR6OAN3.cjs");
26
26
  var import_app_framework = require("@dxos/app-framework");
27
27
  var SpaceCapabilities;
28
28
  (function(SpaceCapabilities2) {
29
- SpaceCapabilities2.State = (0, import_app_framework.defineCapability)(`${import_chunk_AO4EW2RX.SPACE_PLUGIN}/capability/state`);
30
- SpaceCapabilities2.MutableState = (0, import_app_framework.defineCapability)(`${import_chunk_AO4EW2RX.SPACE_PLUGIN}/capability/state`);
29
+ SpaceCapabilities2.State = (0, import_app_framework.defineCapability)(`${import_chunk_WZR6OAN3.SPACE_PLUGIN}/capability/state`);
30
+ SpaceCapabilities2.MutableState = (0, import_app_framework.defineCapability)(`${import_chunk_WZR6OAN3.SPACE_PLUGIN}/capability/state`);
31
+ SpaceCapabilities2.SettingsPanel = (0, import_app_framework.defineCapability)(`${import_chunk_WZR6OAN3.SPACE_PLUGIN}/capability/settings-panel`);
31
32
  })(SpaceCapabilities || (SpaceCapabilities = {}));
32
33
  var ThreadCapabilities;
33
34
  (function(ThreadCapabilities2) {
34
- ThreadCapabilities2.Thread = (0, import_app_framework.defineCapability)(`${import_chunk_AO4EW2RX.SPACE_PLUGIN}/capability/thread`);
35
+ ThreadCapabilities2.Thread = (0, import_app_framework.defineCapability)(`${import_chunk_WZR6OAN3.SPACE_PLUGIN}/capability/thread`);
35
36
  })(ThreadCapabilities || (ThreadCapabilities = {}));
36
37
  // Annotate the CommonJS export names for ESM import in node:
37
38
  0 && (module.exports = {
38
39
  SpaceCapabilities,
39
40
  ThreadCapabilities
40
41
  });
41
- //# sourceMappingURL=chunk-56NGXG2A.cjs.map
42
+ //# sourceMappingURL=chunk-UX3U4RU2.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/capabilities.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { defineCapability, type Label } from '@dxos/app-framework';\nimport { type DeepReadonly } from '@dxos/util';\n\nimport { SPACE_PLUGIN } from '../meta';\nimport { type PluginState } from '../types';\n\nexport namespace SpaceCapabilities {\n export const State = defineCapability<DeepReadonly<PluginState>>(`${SPACE_PLUGIN}/capability/state`);\n export const MutableState = defineCapability<PluginState>(`${SPACE_PLUGIN}/capability/state`);\n\n export type SpaceSettingsPanel = { id: string; label: Label };\n export const SettingsPanel = defineCapability<SpaceSettingsPanel>(`${SPACE_PLUGIN}/capability/settings-panel`);\n}\n\n// TODO(wittjosiah): Factor out.\nexport namespace ThreadCapabilities {\n type ThreadCapability<T = any> = {\n predicate: (obj: any) => obj is T;\n createSort: (obj: T) => (anchorA: string | undefined, anchorB: string | undefined) => number;\n };\n export const Thread = defineCapability<ThreadCapability>(`${SPACE_PLUGIN}/capability/thread`);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAA6C;;UAM5BA,oBAAAA;qBACFC,YAAQC,uCAA4C,GAAGC,kCAAAA,mBAA+B;qBACtFC,mBAAeF,uCAA8B,GAAGC,kCAAAA,mBAA+B;qBAG/EE,oBAAgBH,uCAAqC,GAAGC,kCAAAA,4BAAwC;AAC/G,GANiBH,sBAAAA,oBAAAA,CAAAA,EAAAA;;UASAM,qBAAAA;sBAKFC,aAASL,uCAAmC,GAAGC,kCAAAA,oBAAgC;AAC9F,GANiBG,uBAAAA,qBAAAA,CAAAA,EAAAA;",
6
+ "names": ["SpaceCapabilities", "State", "defineCapability", "SPACE_PLUGIN", "MutableState", "SettingsPanel", "ThreadCapabilities", "Thread"]
7
+ }
@@ -16,20 +16,21 @@ 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_AO4EW2RX_exports = {};
20
- __export(chunk_AO4EW2RX_exports, {
19
+ var chunk_WZR6OAN3_exports = {};
20
+ __export(chunk_WZR6OAN3_exports, {
21
21
  SPACE_PLUGIN: () => SPACE_PLUGIN,
22
22
  meta: () => meta
23
23
  });
24
- module.exports = __toCommonJS(chunk_AO4EW2RX_exports);
24
+ module.exports = __toCommonJS(chunk_WZR6OAN3_exports);
25
25
  var SPACE_PLUGIN = "dxos.org/plugin/space";
26
26
  var meta = {
27
27
  id: SPACE_PLUGIN,
28
- name: "Spaces"
28
+ name: "Spaces",
29
+ icon: "ph--planet--regular"
29
30
  };
30
31
  // Annotate the CommonJS export names for ESM import in node:
31
32
  0 && (module.exports = {
32
33
  SPACE_PLUGIN,
33
34
  meta
34
35
  });
35
- //# sourceMappingURL=chunk-AO4EW2RX.cjs.map
36
+ //# sourceMappingURL=chunk-WZR6OAN3.cjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/meta.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const SPACE_PLUGIN = 'dxos.org/plugin/space';\n\nexport const meta = {\n id: SPACE_PLUGIN,\n name: 'Spaces',\n} satisfies PluginMeta;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAMA,eAAe;AAErB,IAAMC,OAAO;EAClBC,IAAIF;EACJG,MAAM;AACR;",
6
- "names": ["SPACE_PLUGIN", "meta", "id", "name"]
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const SPACE_PLUGIN = 'dxos.org/plugin/space';\n\nexport const meta = {\n id: SPACE_PLUGIN,\n name: 'Spaces',\n icon: 'ph--planet--regular',\n} satisfies PluginMeta;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAMA,eAAe;AAErB,IAAMC,OAAO;EAClBC,IAAIF;EACJG,MAAM;EACNC,MAAM;AACR;",
6
+ "names": ["SPACE_PLUGIN", "meta", "id", "name", "icon"]
7
7
  }
@@ -16,13 +16,13 @@ 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 identity_created_IMDS4A6A_exports = {};
20
- __export(identity_created_IMDS4A6A_exports, {
19
+ var identity_created_7G5U7R36_exports = {};
20
+ __export(identity_created_7G5U7R36_exports, {
21
21
  default: () => identity_created_default
22
22
  });
23
- module.exports = __toCommonJS(identity_created_IMDS4A6A_exports);
24
- var import_chunk_DDZYVNVP = require("./chunk-DDZYVNVP.cjs");
25
- var import_chunk_AO4EW2RX = require("./chunk-AO4EW2RX.cjs");
23
+ module.exports = __toCommonJS(identity_created_7G5U7R36_exports);
24
+ var import_chunk_6MEOP3DH = require("./chunk-6MEOP3DH.cjs");
25
+ var import_chunk_WZR6OAN3 = require("./chunk-WZR6OAN3.cjs");
26
26
  var import_app_framework = require("@dxos/app-framework");
27
27
  var import_live_object = require("@dxos/live-object");
28
28
  var import_migrations = require("@dxos/migrations");
@@ -32,7 +32,7 @@ var identity_created_default = async (context) => {
32
32
  await client.spaces.waitUntilReady();
33
33
  const defaultSpace = client.spaces.default;
34
34
  await defaultSpace.waitUntilReady();
35
- defaultSpace.properties[import_chunk_DDZYVNVP.CollectionType.typename] = (0, import_live_object.makeRef)((0, import_live_object.create)(import_chunk_DDZYVNVP.CollectionType, {
35
+ defaultSpace.properties[import_chunk_6MEOP3DH.CollectionType.typename] = (0, import_live_object.makeRef)((0, import_live_object.create)(import_chunk_6MEOP3DH.CollectionType, {
36
36
  objects: [],
37
37
  views: {}
38
38
  }));
@@ -41,4 +41,4 @@ var identity_created_default = async (context) => {
41
41
  }
42
42
  return (0, import_app_framework.contributes)(import_app_framework.Capabilities.Null, null);
43
43
  };
44
- //# sourceMappingURL=identity-created-IMDS4A6A.cjs.map
44
+ //# sourceMappingURL=identity-created-7G5U7R36.cjs.map