@dxos/plugin-space 0.8.4-main.21d9917 → 0.8.4-main.2244d791bb

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 (231) hide show
  1. package/dist/lib/browser/CollectionArticle-LKTAABXP.mjs +128 -0
  2. package/dist/lib/browser/CollectionArticle-LKTAABXP.mjs.map +7 -0
  3. package/dist/lib/browser/{ObjectCardStack-TWHN6C2Y.mjs → ObjectCardStack-CXNBCSMR.mjs} +2 -2
  4. package/dist/lib/browser/ObjectCardStack-CXNBCSMR.mjs.map +7 -0
  5. package/dist/lib/browser/{ObjectDetails-GEDIISKK.mjs → ObjectDetails-HXV4IQEM.mjs} +6 -5
  6. package/dist/lib/browser/ObjectDetails-HXV4IQEM.mjs.map +7 -0
  7. package/dist/lib/browser/{RecordArticle-W57QE7QV.mjs → RecordArticle-36LDKFWF.mjs} +11 -10
  8. package/dist/lib/browser/RecordArticle-36LDKFWF.mjs.map +7 -0
  9. package/dist/lib/browser/{app-graph-builder-SJHTZXZF.mjs → app-graph-builder-GLV46QSI.mjs} +26 -19
  10. package/dist/lib/browser/app-graph-builder-GLV46QSI.mjs.map +7 -0
  11. package/dist/lib/browser/{app-graph-serializer-7AT7QMSK.mjs → app-graph-serializer-VOLRDNVE.mjs} +9 -8
  12. package/dist/lib/browser/app-graph-serializer-VOLRDNVE.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-ZT2VPYRM.mjs → chunk-7D63MVRS.mjs} +3 -3
  14. package/dist/lib/browser/chunk-7D63MVRS.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-4WZUGLQQ.mjs → chunk-A7ZCVQGZ.mjs} +10 -9
  16. package/dist/lib/browser/chunk-A7ZCVQGZ.mjs.map +7 -0
  17. package/dist/lib/browser/{chunk-CCRSHECL.mjs → chunk-KGLWYGIF.mjs} +4 -3
  18. package/dist/lib/browser/chunk-KGLWYGIF.mjs.map +7 -0
  19. package/dist/lib/browser/{chunk-AWVAX26X.mjs → chunk-NF3ZFAB4.mjs} +2 -2
  20. package/dist/lib/browser/{chunk-SUI34XSA.mjs → chunk-WAOJLA2S.mjs} +12 -12
  21. package/dist/lib/browser/chunk-WAOJLA2S.mjs.map +7 -0
  22. package/dist/lib/browser/{chunk-3X2EA2OA.mjs → chunk-XRTOZE23.mjs} +128 -137
  23. package/dist/lib/browser/chunk-XRTOZE23.mjs.map +7 -0
  24. package/dist/lib/browser/cli/index.mjs +31 -29
  25. package/dist/lib/browser/cli/index.mjs.map +3 -3
  26. package/dist/lib/browser/index.mjs +58 -53
  27. package/dist/lib/browser/index.mjs.map +3 -3
  28. package/dist/lib/browser/meta.json +1 -1
  29. package/dist/lib/browser/{operation-resolver-SIRQT36Z.mjs → operation-resolver-PJJ3PCM7.mjs} +45 -42
  30. package/dist/lib/browser/operation-resolver-PJJ3PCM7.mjs.map +7 -0
  31. package/dist/lib/browser/{react-root-PI7VTZUZ.mjs → react-root-MRIDHLHH.mjs} +8 -8
  32. package/dist/lib/browser/react-root-MRIDHLHH.mjs.map +7 -0
  33. package/dist/lib/browser/{react-surface-BPE7VWI7.mjs → react-surface-ARZZ343H.mjs} +38 -37
  34. package/dist/lib/browser/react-surface-ARZZ343H.mjs.map +7 -0
  35. package/dist/lib/browser/{repair-CJG26D52.mjs → repair-DKU4TUD2.mjs} +2 -2
  36. package/dist/lib/browser/{settings-ZS2AQ73E.mjs → settings-M2DMD2ZA.mjs} +5 -4
  37. package/dist/lib/browser/settings-M2DMD2ZA.mjs.map +7 -0
  38. package/dist/lib/browser/{spaces-ready-OQDGWUOS.mjs → spaces-ready-XWJUJ43N.mjs} +13 -12
  39. package/dist/lib/browser/spaces-ready-XWJUJ43N.mjs.map +7 -0
  40. package/dist/lib/browser/{state-7YZQB2KY.mjs → state-V637BLIM.mjs} +5 -5
  41. package/dist/lib/browser/state-V637BLIM.mjs.map +7 -0
  42. package/dist/lib/browser/types/index.mjs +1 -1
  43. package/dist/lib/node-esm/CollectionArticle-ONQMZ7BQ.mjs +129 -0
  44. package/dist/lib/node-esm/CollectionArticle-ONQMZ7BQ.mjs.map +7 -0
  45. package/dist/lib/node-esm/{ObjectCardStack-C5ZXRKP7.mjs → ObjectCardStack-EHXPNRQW.mjs} +2 -2
  46. package/dist/lib/node-esm/ObjectCardStack-EHXPNRQW.mjs.map +7 -0
  47. package/dist/lib/node-esm/{ObjectDetails-6ZLDRKCO.mjs → ObjectDetails-N73UI4ZL.mjs} +6 -5
  48. package/dist/lib/node-esm/ObjectDetails-N73UI4ZL.mjs.map +7 -0
  49. package/dist/lib/node-esm/{RecordArticle-SSV74Z46.mjs → RecordArticle-CMEXNNOZ.mjs} +11 -10
  50. package/dist/lib/node-esm/RecordArticle-CMEXNNOZ.mjs.map +7 -0
  51. package/dist/lib/node-esm/{app-graph-builder-HZ3XXDFZ.mjs → app-graph-builder-KCEHEKVS.mjs} +26 -19
  52. package/dist/lib/node-esm/app-graph-builder-KCEHEKVS.mjs.map +7 -0
  53. package/dist/lib/node-esm/{app-graph-serializer-WJ2TIQG6.mjs → app-graph-serializer-7C4MV5NB.mjs} +9 -8
  54. package/dist/lib/node-esm/app-graph-serializer-7C4MV5NB.mjs.map +7 -0
  55. package/dist/lib/node-esm/{chunk-2SW6S2BB.mjs → chunk-5N3YIAXD.mjs} +3 -3
  56. package/dist/lib/node-esm/chunk-5N3YIAXD.mjs.map +7 -0
  57. package/dist/lib/node-esm/{chunk-JOBIWCBC.mjs → chunk-A5A7M37T.mjs} +10 -9
  58. package/dist/lib/node-esm/chunk-A5A7M37T.mjs.map +7 -0
  59. package/dist/lib/node-esm/{chunk-7KMYUWSR.mjs → chunk-FB5YNROS.mjs} +12 -12
  60. package/dist/lib/node-esm/chunk-FB5YNROS.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-MPL6NHQX.mjs → chunk-NYSDQPNM.mjs} +4 -3
  62. package/dist/lib/node-esm/chunk-NYSDQPNM.mjs.map +7 -0
  63. package/dist/lib/node-esm/{chunk-HREWB23G.mjs → chunk-PG7DNOEX.mjs} +2 -2
  64. package/dist/lib/node-esm/{chunk-EYS3L2NO.mjs → chunk-QDIOQTXY.mjs} +128 -137
  65. package/dist/lib/node-esm/chunk-QDIOQTXY.mjs.map +7 -0
  66. package/dist/lib/node-esm/cli/index.mjs +31 -29
  67. package/dist/lib/node-esm/cli/index.mjs.map +3 -3
  68. package/dist/lib/node-esm/index.mjs +58 -53
  69. package/dist/lib/node-esm/index.mjs.map +3 -3
  70. package/dist/lib/node-esm/meta.json +1 -1
  71. package/dist/lib/node-esm/{operation-resolver-ZE3XJL5J.mjs → operation-resolver-2K7N4KYC.mjs} +45 -42
  72. package/dist/lib/node-esm/operation-resolver-2K7N4KYC.mjs.map +7 -0
  73. package/dist/lib/node-esm/{react-root-KUXM33JI.mjs → react-root-LKSSWFGF.mjs} +8 -8
  74. package/dist/lib/node-esm/react-root-LKSSWFGF.mjs.map +7 -0
  75. package/dist/lib/node-esm/{react-surface-STCQKUZ4.mjs → react-surface-QG5RNBPD.mjs} +38 -37
  76. package/dist/lib/node-esm/react-surface-QG5RNBPD.mjs.map +7 -0
  77. package/dist/lib/node-esm/{repair-G3ZW3VG3.mjs → repair-C2H6JQCL.mjs} +2 -2
  78. package/dist/lib/node-esm/{settings-PVI2VG56.mjs → settings-VCPCNBOY.mjs} +5 -4
  79. package/dist/lib/node-esm/settings-VCPCNBOY.mjs.map +7 -0
  80. package/dist/lib/node-esm/{spaces-ready-R744OHQG.mjs → spaces-ready-5JOGEWON.mjs} +13 -12
  81. package/dist/lib/node-esm/spaces-ready-5JOGEWON.mjs.map +7 -0
  82. package/dist/lib/node-esm/{state-XE5YGPHM.mjs → state-5MCEPWN3.mjs} +5 -5
  83. package/dist/lib/node-esm/state-5MCEPWN3.mjs.map +7 -0
  84. package/dist/lib/node-esm/types/index.mjs +1 -1
  85. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  86. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +2 -1
  87. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -1
  88. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +1 -1
  89. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -1
  90. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts +2 -2
  91. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts.map +1 -1
  92. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts +1 -1
  93. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts.map +1 -1
  94. package/dist/types/src/capabilities/operation-resolver/index.d.ts +1 -1
  95. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -1
  96. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +2 -2
  97. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -1
  98. package/dist/types/src/capabilities/react-root/react-root.d.ts.map +1 -1
  99. package/dist/types/src/capabilities/react-surface/index.d.ts +1 -1
  100. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -1
  101. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +2 -2
  102. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -1
  103. package/dist/types/src/capabilities/settings/index.d.ts +1 -1
  104. package/dist/types/src/capabilities/settings/index.d.ts.map +1 -1
  105. package/dist/types/src/capabilities/settings/settings.d.ts +3 -2
  106. package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -1
  107. package/dist/types/src/capabilities/spaces-ready/spaces-ready.d.ts.map +1 -1
  108. package/dist/types/src/capabilities/state/state.d.ts.map +1 -1
  109. package/dist/types/src/cli/commands/database/add.d.ts.map +1 -1
  110. package/dist/types/src/cli/plugin.d.ts.map +1 -1
  111. package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
  112. package/dist/types/src/components/CollectionArticle.d.ts +2 -2
  113. package/dist/types/src/components/CollectionArticle.d.ts.map +1 -1
  114. package/dist/types/src/components/CollectionSection.d.ts +1 -1
  115. package/dist/types/src/components/CollectionSection.d.ts.map +1 -1
  116. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  117. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +1 -1
  118. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +4 -1
  119. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  120. package/dist/types/src/components/JoinDialog/JoinDialog.d.ts.map +1 -1
  121. package/dist/types/src/components/MembersContainer/MembersContainer.d.ts.map +1 -1
  122. package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts +1 -1
  123. package/dist/types/src/components/ObjectDetails/ObjectDetails.d.ts +1 -1
  124. package/dist/types/src/components/ObjectDetails/ObjectDetails.d.ts.map +1 -1
  125. package/dist/types/src/components/RecordArticle.d.ts +1 -1
  126. package/dist/types/src/components/RecordArticle.d.ts.map +1 -1
  127. package/dist/types/src/components/RecordArticle.stories.d.ts +1 -1
  128. package/dist/types/src/components/RecordArticle.stories.d.ts.map +1 -1
  129. package/dist/types/src/components/SchemaContainer.d.ts.map +1 -1
  130. package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
  131. package/dist/types/src/components/SpacePresence/SpacePresence.d.ts.map +1 -1
  132. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts +4 -1
  133. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  134. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +4 -1
  135. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
  136. package/dist/types/src/components/index.d.ts +3 -3
  137. package/dist/types/src/components/index.d.ts.map +1 -1
  138. package/dist/types/src/hooks/useActiveSpace.d.ts.map +1 -1
  139. package/dist/types/src/types/events.d.ts.map +1 -1
  140. package/dist/types/src/types/types.d.ts +18 -12
  141. package/dist/types/src/types/types.d.ts.map +1 -1
  142. package/dist/types/src/util.d.ts +2 -1
  143. package/dist/types/src/util.d.ts.map +1 -1
  144. package/dist/types/tsconfig.tsbuildinfo +1 -1
  145. package/package.json +66 -65
  146. package/src/SpacePlugin.ts +59 -40
  147. package/src/capabilities/app-graph-builder/app-graph-builder.ts +17 -13
  148. package/src/capabilities/app-graph-serializer/app-graph-serializer.ts +5 -4
  149. package/src/capabilities/operation-resolver/operation-resolver.ts +31 -29
  150. package/src/capabilities/react-root/react-root.tsx +3 -3
  151. package/src/capabilities/react-surface/react-surface.tsx +34 -32
  152. package/src/capabilities/settings/settings.ts +3 -2
  153. package/src/capabilities/spaces-ready/spaces-ready.ts +8 -7
  154. package/src/capabilities/state/state.ts +3 -3
  155. package/src/cli/commands/database/add.ts +7 -8
  156. package/src/cli/commands/database/query/query.ts +1 -1
  157. package/src/cli/commands/database/remove.ts +2 -2
  158. package/src/cli/commands/database/stats.ts +1 -1
  159. package/src/cli/plugin.ts +33 -26
  160. package/src/components/AwaitingObject.tsx +4 -3
  161. package/src/components/CollectionArticle.tsx +71 -72
  162. package/src/components/CollectionSection.tsx +1 -1
  163. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +1 -1
  164. package/src/components/CreateDialog/CreateObjectDialog.tsx +20 -17
  165. package/src/components/CreateDialog/CreateObjectPanel.tsx +38 -39
  166. package/src/components/CreateDialog/CreateSpaceDialog.tsx +21 -21
  167. package/src/components/JoinDialog/JoinDialog.tsx +8 -7
  168. package/src/components/MembersContainer/MembersContainer.stories.tsx +1 -1
  169. package/src/components/MembersContainer/MembersContainer.tsx +45 -48
  170. package/src/components/ObjectCardStack/ObjectCardStack.tsx +1 -1
  171. package/src/components/ObjectDetails/BaseObjectSettings.stories.tsx +4 -4
  172. package/src/components/ObjectDetails/ObjectDetails.tsx +6 -5
  173. package/src/components/ObjectRenamePopover/ObjectRenamePopover.tsx +3 -3
  174. package/src/components/RecordArticle.stories.tsx +6 -5
  175. package/src/components/RecordArticle.tsx +23 -21
  176. package/src/components/SchemaContainer.tsx +20 -17
  177. package/src/components/SpacePluginSettings.tsx +34 -31
  178. package/src/components/SpacePresence/SpacePresence.stories.tsx +1 -1
  179. package/src/components/SpacePresence/SpacePresence.tsx +2 -1
  180. package/src/components/SpaceRenamePopover/SpaceRenamePopover.tsx +3 -3
  181. package/src/components/SpaceSettings/SpaceSettingsContainer.stories.tsx +1 -1
  182. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +161 -179
  183. package/src/components/SyncStatus/InlineSyncStatus.tsx +1 -1
  184. package/src/components/SyncStatus/SyncStatus.stories.tsx +1 -1
  185. package/src/components/ViewEditor.tsx +1 -1
  186. package/src/hooks/useActiveSpace.ts +5 -4
  187. package/src/hooks/useInputSurfaceLookup.tsx +3 -3
  188. package/src/translations.ts +2 -2
  189. package/src/types/events.ts +3 -2
  190. package/src/types/types.ts +10 -3
  191. package/src/util.tsx +9 -6
  192. package/dist/lib/browser/CollectionArticle-XPNA6EHZ.mjs +0 -129
  193. package/dist/lib/browser/CollectionArticle-XPNA6EHZ.mjs.map +0 -7
  194. package/dist/lib/browser/ObjectCardStack-TWHN6C2Y.mjs.map +0 -7
  195. package/dist/lib/browser/ObjectDetails-GEDIISKK.mjs.map +0 -7
  196. package/dist/lib/browser/RecordArticle-W57QE7QV.mjs.map +0 -7
  197. package/dist/lib/browser/app-graph-builder-SJHTZXZF.mjs.map +0 -7
  198. package/dist/lib/browser/app-graph-serializer-7AT7QMSK.mjs.map +0 -7
  199. package/dist/lib/browser/chunk-3X2EA2OA.mjs.map +0 -7
  200. package/dist/lib/browser/chunk-4WZUGLQQ.mjs.map +0 -7
  201. package/dist/lib/browser/chunk-CCRSHECL.mjs.map +0 -7
  202. package/dist/lib/browser/chunk-SUI34XSA.mjs.map +0 -7
  203. package/dist/lib/browser/chunk-ZT2VPYRM.mjs.map +0 -7
  204. package/dist/lib/browser/operation-resolver-SIRQT36Z.mjs.map +0 -7
  205. package/dist/lib/browser/react-root-PI7VTZUZ.mjs.map +0 -7
  206. package/dist/lib/browser/react-surface-BPE7VWI7.mjs.map +0 -7
  207. package/dist/lib/browser/settings-ZS2AQ73E.mjs.map +0 -7
  208. package/dist/lib/browser/spaces-ready-OQDGWUOS.mjs.map +0 -7
  209. package/dist/lib/browser/state-7YZQB2KY.mjs.map +0 -7
  210. package/dist/lib/node-esm/CollectionArticle-WGHNZNO2.mjs +0 -130
  211. package/dist/lib/node-esm/CollectionArticle-WGHNZNO2.mjs.map +0 -7
  212. package/dist/lib/node-esm/ObjectCardStack-C5ZXRKP7.mjs.map +0 -7
  213. package/dist/lib/node-esm/ObjectDetails-6ZLDRKCO.mjs.map +0 -7
  214. package/dist/lib/node-esm/RecordArticle-SSV74Z46.mjs.map +0 -7
  215. package/dist/lib/node-esm/app-graph-builder-HZ3XXDFZ.mjs.map +0 -7
  216. package/dist/lib/node-esm/app-graph-serializer-WJ2TIQG6.mjs.map +0 -7
  217. package/dist/lib/node-esm/chunk-2SW6S2BB.mjs.map +0 -7
  218. package/dist/lib/node-esm/chunk-7KMYUWSR.mjs.map +0 -7
  219. package/dist/lib/node-esm/chunk-EYS3L2NO.mjs.map +0 -7
  220. package/dist/lib/node-esm/chunk-JOBIWCBC.mjs.map +0 -7
  221. package/dist/lib/node-esm/chunk-MPL6NHQX.mjs.map +0 -7
  222. package/dist/lib/node-esm/operation-resolver-ZE3XJL5J.mjs.map +0 -7
  223. package/dist/lib/node-esm/react-root-KUXM33JI.mjs.map +0 -7
  224. package/dist/lib/node-esm/react-surface-STCQKUZ4.mjs.map +0 -7
  225. package/dist/lib/node-esm/settings-PVI2VG56.mjs.map +0 -7
  226. package/dist/lib/node-esm/spaces-ready-R744OHQG.mjs.map +0 -7
  227. package/dist/lib/node-esm/state-XE5YGPHM.mjs.map +0 -7
  228. /package/dist/lib/browser/{chunk-AWVAX26X.mjs.map → chunk-NF3ZFAB4.mjs.map} +0 -0
  229. /package/dist/lib/browser/{repair-CJG26D52.mjs.map → repair-DKU4TUD2.mjs.map} +0 -0
  230. /package/dist/lib/node-esm/{chunk-HREWB23G.mjs.map → chunk-PG7DNOEX.mjs.map} +0 -0
  231. /package/dist/lib/node-esm/{repair-G3ZW3VG3.mjs.map → repair-C2H6JQCL.mjs.map} +0 -0
@@ -1,20 +1,21 @@
1
1
  import {
2
2
  translations
3
- } from "./chunk-ZT2VPYRM.mjs";
3
+ } from "./chunk-7D63MVRS.mjs";
4
4
  import {
5
5
  SPACES
6
- } from "./chunk-SUI34XSA.mjs";
6
+ } from "./chunk-WAOJLA2S.mjs";
7
7
  import {
8
8
  SPACE_TYPE,
9
9
  SpaceOperation
10
- } from "./chunk-CCRSHECL.mjs";
10
+ } from "./chunk-KGLWYGIF.mjs";
11
11
  import {
12
12
  meta
13
13
  } from "./chunk-HSMQFM57.mjs";
14
14
 
15
15
  // src/capabilities/app-graph-serializer/app-graph-serializer.ts
16
16
  import * as Effect from "effect/Effect";
17
- import { Capability, Common } from "@dxos/app-framework";
17
+ import { Capabilities, Capability } from "@dxos/app-framework";
18
+ import { AppCapabilities } from "@dxos/app-toolkit";
18
19
  import { isSpace } from "@dxos/client/echo";
19
20
  import { Obj } from "@dxos/echo";
20
21
  import { Collection } from "@dxos/schema";
@@ -22,7 +23,7 @@ var COLLECTION_TYPE = Collection.Collection.typename;
22
23
  var DIRECTORY_TYPE = "text/directory";
23
24
  var app_graph_serializer_default = Capability.makeModule(Effect.fnUntraced(function* () {
24
25
  const capabilities = yield* Capability.Service;
25
- return Capability.contributes(Common.Capability.AppGraphSerializer, [
26
+ return Capability.contributes(AppCapabilities.AppGraphSerializer, [
26
27
  {
27
28
  inputType: SPACES,
28
29
  outputType: DIRECTORY_TYPE,
@@ -43,7 +44,7 @@ var app_graph_serializer_default = Capability.makeModule(Effect.fnUntraced(funct
43
44
  type: DIRECTORY_TYPE
44
45
  }),
45
46
  deserialize: async (data) => {
46
- const { invokePromise } = capabilities.get(Common.Capability.OperationInvoker);
47
+ const { invokePromise } = capabilities.get(Capabilities.OperationInvoker);
47
48
  const result = await invokePromise(SpaceOperation.Create, {
48
49
  name: data.name,
49
50
  edgeReplication: true
@@ -65,7 +66,7 @@ var app_graph_serializer_default = Capability.makeModule(Effect.fnUntraced(funct
65
66
  if (!space || !collection) {
66
67
  return;
67
68
  }
68
- const { invokePromise } = capabilities.get(Common.Capability.OperationInvoker);
69
+ const { invokePromise } = capabilities.get(Capabilities.OperationInvoker);
69
70
  const result = await invokePromise(SpaceOperation.AddObject, {
70
71
  target: collection,
71
72
  object: Obj.make(Collection.Collection, {
@@ -81,4 +82,4 @@ var app_graph_serializer_default = Capability.makeModule(Effect.fnUntraced(funct
81
82
  export {
82
83
  app_graph_serializer_default as default
83
84
  };
84
- //# sourceMappingURL=app-graph-serializer-7AT7QMSK.mjs.map
85
+ //# sourceMappingURL=app-graph-serializer-VOLRDNVE.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/app-graph-serializer/app-graph-serializer.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { isSpace } from '@dxos/client/echo';\nimport { Obj } from '@dxos/echo';\nimport { Collection } from '@dxos/schema';\n\nimport { meta } from '../../meta';\nimport { translations } from '../../translations';\nimport { SPACE_TYPE, SpaceOperation } from '../../types';\nimport { SPACES } from '../../util';\n\nconst COLLECTION_TYPE = Collection.Collection.typename;\n\n// https://stackoverflow.com/a/19016910\nconst DIRECTORY_TYPE = 'text/directory';\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n // Get context for lazy capability access in callbacks.\n const capabilities = yield* Capability.Service;\n\n return Capability.contributes(AppCapabilities.AppGraphSerializer, [\n {\n inputType: SPACES,\n outputType: DIRECTORY_TYPE,\n serialize: (node) => ({\n name: translations[0]['en-US'][meta.id]['spaces label'] ?? 'Spaces',\n data: translations[0]['en-US'][meta.id]['spaces label'] ?? 'Spaces',\n type: DIRECTORY_TYPE,\n }),\n deserialize: () => {\n // No-op.\n },\n },\n {\n inputType: SPACE_TYPE,\n outputType: DIRECTORY_TYPE,\n serialize: (node) => ({\n name: node.data.properties.name ?? translations[0]['en-US'][meta.id]['unnamed space label'],\n data: node.data.properties.name ?? translations[0]['en-US'][meta.id]['unnamed space label'],\n type: DIRECTORY_TYPE,\n }),\n deserialize: async (data) => {\n const { invokePromise } = capabilities.get(Capabilities.OperationInvoker);\n const result = await invokePromise(SpaceOperation.Create, { name: data.name, edgeReplication: true });\n return result.data?.space;\n },\n },\n {\n inputType: COLLECTION_TYPE,\n outputType: DIRECTORY_TYPE,\n serialize: (node) => ({\n name: node.data.name ?? translations[0]['en-US'][meta.id]['object name placeholder'],\n data: node.data.name ?? translations[0]['en-US'][meta.id]['object name placeholder'],\n type: DIRECTORY_TYPE,\n }),\n deserialize: async (data, ancestors) => {\n const space = ancestors.find(isSpace);\n const collection =\n ancestors.findLast((ancestor) => Obj.instanceOf(Collection.Collection, ancestor)) ??\n space?.properties[COLLECTION_TYPE]?.target;\n if (!space || !collection) {\n return;\n }\n\n const { invokePromise } = capabilities.get(Capabilities.OperationInvoker);\n const result = await invokePromise(SpaceOperation.AddObject, {\n target: collection,\n object: Obj.make(Collection.Collection, { name: data.name, objects: [] }),\n });\n\n return result.data?.object;\n },\n },\n ]);\n }),\n);\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,uBAAuB;AAChC,SAASC,eAAe;AACxB,SAASC,WAAW;AACpB,SAASC,kBAAkB;AAO3B,IAAMC,kBAAkBC,WAAWA,WAAWC;AAG9C,IAAMC,iBAAiB;AAEvB,IAAA,+BAAeC,WAAWC,WACjBC,kBAAW,aAAA;AAEhB,QAAMC,eAAe,OAAOH,WAAWI;AAEvC,SAAOJ,WAAWK,YAAYC,gBAAgBC,oBAAoB;IAChE;MACEC,WAAWC;MACXC,YAAYX;MACZY,WAAW,CAACC,UAAU;QACpBC,MAAMC,aAAa,CAAA,EAAG,OAAA,EAASC,KAAKC,EAAE,EAAE,cAAA,KAAmB;QAC3DC,MAAMH,aAAa,CAAA,EAAG,OAAA,EAASC,KAAKC,EAAE,EAAE,cAAA,KAAmB;QAC3DE,MAAMnB;MACR;MACAoB,aAAa,MAAA;MAEb;IACF;IACA;MACEX,WAAWY;MACXV,YAAYX;MACZY,WAAW,CAACC,UAAU;QACpBC,MAAMD,KAAKK,KAAKI,WAAWR,QAAQC,aAAa,CAAA,EAAG,OAAA,EAASC,KAAKC,EAAE,EAAE,qBAAA;QACrEC,MAAML,KAAKK,KAAKI,WAAWR,QAAQC,aAAa,CAAA,EAAG,OAAA,EAASC,KAAKC,EAAE,EAAE,qBAAA;QACrEE,MAAMnB;MACR;MACAoB,aAAa,OAAOF,SAAAA;AAClB,cAAM,EAAEK,cAAa,IAAKnB,aAAaoB,IAAIC,aAAaC,gBAAgB;AACxE,cAAMC,SAAS,MAAMJ,cAAcK,eAAeC,QAAQ;UAAEf,MAAMI,KAAKJ;UAAMgB,iBAAiB;QAAK,CAAA;AACnG,eAAOH,OAAOT,MAAMa;MACtB;IACF;IACA;MACEtB,WAAWZ;MACXc,YAAYX;MACZY,WAAW,CAACC,UAAU;QACpBC,MAAMD,KAAKK,KAAKJ,QAAQC,aAAa,CAAA,EAAG,OAAA,EAASC,KAAKC,EAAE,EAAE,yBAAA;QAC1DC,MAAML,KAAKK,KAAKJ,QAAQC,aAAa,CAAA,EAAG,OAAA,EAASC,KAAKC,EAAE,EAAE,yBAAA;QAC1DE,MAAMnB;MACR;MACAoB,aAAa,OAAOF,MAAMc,cAAAA;AACxB,cAAMD,QAAQC,UAAUC,KAAKC,OAAAA;AAC7B,cAAMC,aACJH,UAAUI,SAAS,CAACC,aAAaC,IAAIC,WAAWzC,WAAWA,YAAYuC,QAAAA,CAAAA,KACvEN,OAAOT,WAAWzB,eAAAA,GAAkB2C;AACtC,YAAI,CAACT,SAAS,CAACI,YAAY;AACzB;QACF;AAEA,cAAM,EAAEZ,cAAa,IAAKnB,aAAaoB,IAAIC,aAAaC,gBAAgB;AACxE,cAAMC,SAAS,MAAMJ,cAAcK,eAAea,WAAW;UAC3DD,QAAQL;UACRO,QAAQJ,IAAIK,KAAK7C,WAAWA,YAAY;YAAEgB,MAAMI,KAAKJ;YAAM8B,SAAS,CAAA;UAAG,CAAA;QACzE,CAAA;AAEA,eAAOjB,OAAOT,MAAMwB;MACtB;IACF;GACD;AACH,CAAA,CAAA;",
6
+ "names": ["Effect", "Capabilities", "Capability", "AppCapabilities", "isSpace", "Obj", "Collection", "COLLECTION_TYPE", "Collection", "typename", "DIRECTORY_TYPE", "Capability", "makeModule", "fnUntraced", "capabilities", "Service", "contributes", "AppCapabilities", "AppGraphSerializer", "inputType", "SPACES", "outputType", "serialize", "node", "name", "translations", "meta", "id", "data", "type", "deserialize", "SPACE_TYPE", "properties", "invokePromise", "get", "Capabilities", "OperationInvoker", "result", "SpaceOperation", "Create", "edgeReplication", "space", "ancestors", "find", "isSpace", "collection", "findLast", "ancestor", "Obj", "instanceOf", "target", "AddObject", "object", "make", "objects"]
7
+ }
@@ -5,7 +5,7 @@ import {
5
5
  // src/translations.ts
6
6
  import { Type } from "@dxos/echo";
7
7
  import { Collection } from "@dxos/schema";
8
- import { Event, Message, Organization, Person, Project, Task } from "@dxos/types";
8
+ import { Event, Message, Organization, Person, Pipeline, Task } from "@dxos/types";
9
9
  var translations = [
10
10
  {
11
11
  "en-US": {
@@ -57,7 +57,7 @@ var translations = [
57
57
  "typename label_other": "People",
58
58
  "object name placeholder": "New person"
59
59
  },
60
- [Project.Project.typename]: {
60
+ [Pipeline.Pipeline.typename]: {
61
61
  "typename label": "Project",
62
62
  "typename label_zero": "Projects",
63
63
  "typename label_one": "Project",
@@ -231,4 +231,4 @@ var translations = [
231
231
  export {
232
232
  translations
233
233
  };
234
- //# sourceMappingURL=chunk-ZT2VPYRM.mjs.map
234
+ //# sourceMappingURL=chunk-7D63MVRS.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/translations.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Type } from '@dxos/echo';\nimport { type Resource } from '@dxos/react-ui';\nimport { Collection } from '@dxos/schema';\nimport { Event, Message, Organization, Person, Pipeline, Task } from '@dxos/types';\n\nimport { meta } from './meta';\n\n// TODO(burdon): Change to single Resource?\nexport const translations = [\n {\n 'en-US': {\n [Collection.Collection.typename]: {\n 'typename label': 'Collection',\n 'typename label_zero': 'Collections',\n 'typename label_one': 'Collection',\n 'typename label_other': 'Collections',\n 'object name placeholder': 'New collection',\n 'rename object label': 'Rename collection',\n 'delete object label': 'Delete collection',\n 'object deleted label': 'Collection deleted',\n },\n [Type.getTypename(Type.PersistentType)]: {\n 'typename label': 'Type',\n 'typename label_zero': 'Types',\n 'typename label_one': 'Type',\n 'typename label_other': 'Types',\n 'object name placeholder': 'New type',\n 'rename object label': 'Rename type',\n 'delete object label': 'Delete type',\n 'object deleted label': 'Type deleted',\n },\n [Event.Event.typename]: {\n 'typename label': 'Event',\n 'typename label_zero': 'Events',\n 'typename label_one': 'Event',\n 'typename label_other': 'Events',\n 'object name placeholder': 'New event',\n },\n [Message.Message.typename]: {\n 'typename label': 'Message',\n 'typename label_zero': 'Messages',\n 'typename label_one': 'Message',\n 'typename label_other': 'Messages',\n 'object name placeholder': 'New message',\n },\n [Organization.Organization.typename]: {\n 'typename label': 'Organization',\n 'typename label_zero': 'Organizations',\n 'typename label_one': 'Organization',\n 'typename label_other': 'Organizations',\n 'object name placeholder': 'New organization',\n },\n [Person.Person.typename]: {\n 'typename label': 'Person',\n 'typename label_zero': 'People',\n 'typename label_one': 'Person',\n 'typename label_other': 'People',\n 'object name placeholder': 'New person',\n },\n [Pipeline.Pipeline.typename]: {\n 'typename label': 'Project',\n 'typename label_zero': 'Projects',\n 'typename label_one': 'Project',\n 'typename label_other': 'Projects',\n 'object name placeholder': 'New project',\n },\n [Task.Task.typename]: {\n 'typename label': 'Task',\n 'typename label_zero': 'Tasks',\n 'typename label_one': 'Task',\n 'typename label_other': 'Tasks',\n 'object name placeholder': 'New task',\n },\n [meta.id]: {\n 'plugin name': 'Spaces',\n 'first run message': 'Nothing selected.',\n 'create space label': 'Create space',\n 'join space label': 'Join space',\n 'empty space message': 'No documents',\n 'empty tree message': 'No spaces',\n 'unnamed space label': 'New space',\n 'closed space label': 'Closed',\n 'loading space label': 'Loading space…',\n 'lock space label': 'Lock space',\n 'unlock space label': 'Unlock space',\n 'rename space label': 'Rename space',\n 'active space label': 'Active space:',\n 'space name label': 'Space name',\n 'object name label': 'Object name',\n 'close space label': 'Close space',\n 'open space label': 'Open space',\n 'export data label': 'Export data',\n 'import data label': 'Import data',\n 'migrate space label': 'Migrate space',\n 'share space label': 'Share current space',\n 'save space to disk label': 'Save to disk',\n 'load space from disk label': 'Load from disk',\n 'confirm restore title': 'Overwrite files in this space?',\n 'confirm restore body': 'Restoring from a backup will overwrite the contents of any documents that match.',\n 'upload file message': 'Drag file here or click to browse',\n 'object name placeholder': 'Object',\n 'object placeholder': 'Type a title here…',\n 'personal space label': 'Personal Space',\n 'spaces label': 'Spaces',\n 'space settings label': 'Spaces',\n 'space settings description':\n 'Each space has its own settings you can configure, where you can adjust its properties, membership, integrations, and other objects specific to that space.',\n 'show hidden spaces label': 'Show archived spaces',\n 'save files to directory label': 'Save files to disk',\n 'select path label': 'Select path',\n 'snapshot by schema label': 'Snapshot of objects',\n 'rename collection label': 'Rename collection',\n 'rename object label': 'Rename object',\n 'duplicate object label': 'Duplicate object',\n 'object deleted label': 'Object deleted',\n 'objects deleted label': 'Objects deleted',\n 'go to object label': 'Open object',\n 'found object label': 'Ready.',\n 'found object description': 'The requested object is now available.',\n 'waiting for object label': 'Loading…',\n 'waiting for object description': 'The requested object is still being synchronized.',\n 'object not found label': 'Nothing found.',\n 'object not found description':\n 'The requested object has not been found yet. Ensure there are enough peers online in the space with an updated copy.',\n 'missing object message': 'Object not available.',\n 'missing object description':\n 'The requested object has not been found yet. Ensure there are enough peers online in the space with an updated copy.',\n 'create object in space label': 'Add to space',\n 'create object in collection label': 'Add to collection',\n 'create object in system collection label': 'Add to system collection',\n 'add view to schema label': 'Add view to type',\n 'space members label': 'Space members',\n 'active space members heading': 'Online ({{count}})',\n 'inactive space members heading': 'Offline ({{count}})',\n 'presence label_zero': 'No other viewers',\n 'presence label_one': '1 other viewer',\n 'presence label_other': '{{count}} other viewers',\n 'persisted locally label': 'Changes saved locally.',\n 'persisted locally message': 'All changes have been saved to disk on this device.',\n 'persistence pending label': 'Saving…',\n 'persistence error label': 'Error saving changes.',\n 'more actions label': 'More actions',\n 'invitations heading': 'Invitations',\n 'keyshortcuts label': 'Keyboard shortcuts',\n 'menu footer label': 'Details',\n 'location label': 'Located in',\n 'space limit label': 'Space Limit Reached',\n 'space limit description':\n 'This space has reached the maximum number of objects for the beta. This limit includes deleted objects currently, but those can be permanently removed with the cleanup action.',\n 'space limit close label': 'Close',\n 'remove deleted objects label': 'Cleanup',\n 'remove deleted objects alt': 'Permanently remove deleted objects to free up space.',\n 'copy link label': 'Copy link',\n 'default on space create label': 'On space create',\n 'sync status title': 'Sync status',\n 'dismiss label': 'Dismiss',\n 'join success label': 'Successfully joined space',\n 'name label': 'Name',\n 'name placeholder': 'Name',\n 'object settings label': 'Details',\n 'edge replication label': 'Enable EDGE Replication',\n 'saving locally label': 'Writing to disk',\n 'downloading label': 'Replicating from peers',\n 'uploading label': 'Replicating to peers',\n 'offline persisted label': 'Saved to disk (offline)',\n 'remote synced label': 'Synced with peers',\n 'syncing label': 'Space syncing',\n 'show all label': 'Show all',\n 'no sync status label': 'No space with missing objects.',\n 'create space dialog title': 'Create Space',\n 'create object dialog title': 'Create {{object}}',\n 'space input placeholder': 'Select space',\n 'schema input placeholder': 'Select type',\n 'creating object type label': 'Type',\n 'creating in space label': 'Location',\n 'creating in collection label': 'In Collection',\n 'clear input label': 'Clear',\n 'expose object label': 'Expose in navtree',\n 'add tag label': 'Add tag',\n 'advanced settings label': 'Advanced',\n 'foreign keys': 'Foreign Keys',\n 'add key': 'Add Key',\n 'open space settings label': 'Open settings',\n 'related objects label': 'Related Objects',\n\n 'row details no selection label': 'No objects selected',\n 'companion selected objects label': 'Selected',\n 'field deleted label': 'Field deleted',\n\n 'members panel label': 'Members',\n 'members verbose label': 'Manage space members',\n 'members description': 'You can view the current status of space members here as well as invite new members.',\n 'members label': 'Members',\n 'invitations label': 'Invitations',\n 'space invitation description': 'Manage invitations to the space.',\n 'qr code description': 'Share this QR code, or copy the URL and share it with the person you want to invite.',\n 'locked space description': 'This space is locked, unlock it to invite new members.',\n 'space locked label': 'Lock space',\n 'space locked description': 'Locking a space prevents new members from being invited to the space.',\n\n 'settings panel label': 'Space Settings',\n 'open current space settings label': 'Open current space settings',\n 'space settings properties label': 'General settings',\n 'space properties settings verbose label': 'Manage space properties',\n 'space properties settings description': 'You can configure how this space is displayed in the app here.',\n 'space settings schema label': 'Types',\n 'schema verbose label': 'Manage types',\n 'schema description': 'You can manage all of the types stored within this space here.',\n 'no schemas found message': 'No types found',\n 'display name input placeholder': 'Space name',\n 'display name description': 'Name of the space as it appears in the app.',\n 'icon description': 'Icon used to represent the space in the app.',\n 'hue description': 'Color used to represent the space in the app.',\n 'edge replication description':\n \"Only change this if you know what you're doing. Disabling this will prevent the space from replicating through Composer's EDGE services, and relies solely on peer-to-peer sync.\",\n 'archive space description':\n 'Archiving a space will remove it from the sidebar and stop replicating updates, but will not delete the data. You can unarchive it by enabling archived spaces in the app settings.',\n 'archive space label': 'Archive',\n 'unarchive space label': 'Unarchive',\n\n 'space controls title': 'Space Controls',\n 'space controls description': 'Advanced controls for this space.',\n 'backup space title': 'Backup Space',\n 'backup space description':\n 'Download a backup of the space. Contains all data in the space in an unencrypted format.',\n 'download backup label': 'Download backup',\n 'repair space title': 'Repair Space',\n 'repair space description': 'Run repair operations on the space.',\n 'repair space label': 'Run repairs',\n\n 'sync edge connected label': 'Edge connected',\n 'sync edge disconnected label': 'Edge disconnected',\n 'sync no connection label': 'No connection to edge service',\n 'sync latency label': 'Latency',\n 'sync upload label': 'Upload',\n 'sync download label': 'Download',\n\n 'search placeholder': 'Search…',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
+ "mappings": "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",
6
+ "names": ["Type", "Collection", "Event", "Message", "Organization", "Person", "Pipeline", "Task", "translations", "Collection", "typename", "Type", "getTypename", "PersistentType", "Event", "Message", "Organization", "Person", "Pipeline", "Task", "meta", "id"]
7
+ }
@@ -1,16 +1,17 @@
1
1
  import {
2
2
  getTypenames
3
- } from "./chunk-CCRSHECL.mjs";
3
+ } from "./chunk-KGLWYGIF.mjs";
4
4
 
5
5
  // src/hooks/useActiveSpace.ts
6
- import { Common } from "@dxos/app-framework";
7
- import { useLayout } from "@dxos/app-framework/react";
6
+ import { Capabilities } from "@dxos/app-framework";
7
+ import { AppCapabilities } from "@dxos/app-toolkit";
8
+ import { useLayout } from "@dxos/app-toolkit/ui";
8
9
  import { ClientCapabilities } from "@dxos/plugin-client";
9
10
  import { parseId, useSpace } from "@dxos/react-client/echo";
10
11
  var getActiveSpace = (capabilities) => {
11
12
  const client = capabilities.get(ClientCapabilities.Client);
12
- const registry = capabilities.get(Common.Capability.AtomRegistry);
13
- const layoutAtom = capabilities.get(Common.Capability.Layout);
13
+ const registry = capabilities.get(Capabilities.AtomRegistry);
14
+ const layoutAtom = capabilities.get(AppCapabilities.Layout);
14
15
  const layout = registry.get(layoutAtom);
15
16
  const { spaceId } = parseId(layout.workspace);
16
17
  return spaceId ? client.spaces.get(spaceId) : void 0;
@@ -23,7 +24,7 @@ var useActiveSpace = () => {
23
24
 
24
25
  // src/hooks/useInputSurfaceLookup.tsx
25
26
  import React, { useCallback } from "react";
26
- import { Surface, isSurfaceAvailable, usePluginManager } from "@dxos/app-framework/react";
27
+ import { Surface, usePluginManager } from "@dxos/app-framework/ui";
27
28
  var useInputSurfaceLookup = (baseData) => {
28
29
  const pluginManager = usePluginManager();
29
30
  return useCallback(({ schema, prop, fieldProps }) => {
@@ -32,11 +33,11 @@ var useInputSurfaceLookup = (baseData) => {
32
33
  schema,
33
34
  ...baseData
34
35
  };
35
- if (isSurfaceAvailable(pluginManager.capabilities, {
36
+ if (Surface.isAvailable(pluginManager.capabilities, {
36
37
  role: "form-input",
37
38
  data
38
39
  })) {
39
- return /* @__PURE__ */ React.createElement(Surface, {
40
+ return /* @__PURE__ */ React.createElement(Surface.Surface, {
40
41
  role: "form-input",
41
42
  data,
42
43
  ...fieldProps
@@ -114,4 +115,4 @@ export {
114
115
  usePath,
115
116
  useTypeOptions
116
117
  };
117
- //# sourceMappingURL=chunk-4WZUGLQQ.mjs.map
118
+ //# sourceMappingURL=chunk-A7ZCVQGZ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/hooks/useActiveSpace.ts", "../../../src/hooks/useInputSurfaceLookup.tsx", "../../../src/hooks/usePath.ts", "../../../src/hooks/useTypeOptions.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, type CapabilityManager } from '@dxos/app-framework';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { useLayout } from '@dxos/app-toolkit/ui';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { parseId, useSpace } from '@dxos/react-client/echo';\n\nexport const getActiveSpace = (capabilities: CapabilityManager.CapabilityManager) => {\n const client = capabilities.get(ClientCapabilities.Client);\n const registry = capabilities.get(Capabilities.AtomRegistry);\n const layoutAtom = capabilities.get(AppCapabilities.Layout);\n const layout = registry.get(layoutAtom);\n const { spaceId } = parseId(layout.workspace);\n return spaceId ? client.spaces.get(spaceId) : undefined;\n};\n\nexport const useActiveSpace = () => {\n const layout = useLayout();\n const { spaceId } = parseId(layout.workspace);\n return useSpace(spaceId);\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport React, { useCallback } from 'react';\n\nimport { Surface, usePluginManager } from '@dxos/app-framework/ui';\nimport { type FormFieldProvider } from '@dxos/react-ui-form';\n\n/**\n * Creates a surface input component based on plugin context.\n * @param baseData Additional data that will be merged with form data and passed to the surface.\n * This allows providing more context to the surface than what's available from the form itself.\n */\n// TODO(burdon): Factor out?\nexport const useInputSurfaceLookup = (baseData?: Record<string, any>): FormFieldProvider => {\n const pluginManager = usePluginManager();\n return useCallback<FormFieldProvider>(\n ({ schema, prop, fieldProps }) => {\n const data = { prop, schema, ...baseData };\n if (Surface.isAvailable(pluginManager.capabilities, { role: 'form-input', data })) {\n return <Surface.Surface role='form-input' data={data} {...fieldProps} />;\n }\n },\n [pluginManager, baseData],\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport * as Option from 'effect/Option';\nimport { useEffect, useState } from 'react';\n\nimport { Graph } from '@dxos/plugin-graph';\n\n/**\n * React hook to get a path from the graph.\n *\n * @param graph Graph to find the node in.\n * @param id Id of the node to find a path to.\n * @param timeout Optional timeout in milliseconds to wait for the node to be found.\n * @returns Path if found, undefined otherwise.\n */\n// TODO(wittjosiah): Factor out.\nexport const usePath = (graph: Graph.ReadableGraph, id?: string, timeout?: number): Option.Option<string[]> => {\n const [pathState, setPathState] = useState<Option.Option<string[]>>(\n id ? Graph.getPath(graph, { target: id }) : Option.none(),\n );\n\n useEffect(() => {\n if (!id && pathState) {\n setPathState(Option.none());\n }\n\n if ((Option.isSome(pathState) && pathState.value.at(-1) === id) || !id) {\n return;\n }\n\n // Set timeout did not seem to effectively not block the UI thread.\n const frame = requestAnimationFrame(async () => {\n try {\n const path = await Graph.waitForPath(graph, { target: id }, { timeout });\n if (path) {\n setPathState(Option.some(path));\n }\n } catch {}\n });\n\n return () => cancelAnimationFrame(frame);\n }, [graph, id, timeout, pathState]);\n\n return pathState;\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useMemo } from 'react';\n\nimport { type Space } from '@dxos/react-client/echo';\nimport { useTranslation } from '@dxos/react-ui';\n\nimport { type TypeInputOptions, getTypenames } from '../types';\n\nexport const useTypeOptions = ({ space, annotation }: { space?: Space; annotation: TypeInputOptions }) => {\n const { t } = useTranslation();\n const typenames = getTypenames({ annotation, space });\n return useMemo(\n () =>\n typenames\n .map((typename) => ({\n value: typename,\n label: t('typename label', { ns: typename, defaultValue: typename }),\n }))\n .toSorted((a, b) => a.label.localeCompare(b.label)),\n [t, typenames],\n );\n};\n"],
5
+ "mappings": ";;;;;AAIA,SAASA,oBAA4C;AACrD,SAASC,uBAAuB;AAChC,SAASC,iBAAiB;AAC1B,SAASC,0BAA0B;AACnC,SAASC,SAASC,gBAAgB;AAE3B,IAAMC,iBAAiB,CAACC,iBAAAA;AAC7B,QAAMC,SAASD,aAAaE,IAAIC,mBAAmBC,MAAM;AACzD,QAAMC,WAAWL,aAAaE,IAAII,aAAaC,YAAY;AAC3D,QAAMC,aAAaR,aAAaE,IAAIO,gBAAgBC,MAAM;AAC1D,QAAMC,SAASN,SAASH,IAAIM,UAAAA;AAC5B,QAAM,EAAEI,QAAO,IAAKC,QAAQF,OAAOG,SAAS;AAC5C,SAAOF,UAAUX,OAAOc,OAAOb,IAAIU,OAAAA,IAAWI;AAChD;AAEO,IAAMC,iBAAiB,MAAA;AAC5B,QAAMN,SAASO,UAAAA;AACf,QAAM,EAAEN,QAAO,IAAKC,QAAQF,OAAOG,SAAS;AAC5C,SAAOK,SAASP,OAAAA;AAClB;;;ACnBA,OAAOQ,SAASC,mBAAmB;AAEnC,SAASC,SAASC,wBAAwB;AASnC,IAAMC,wBAAwB,CAACC,aAAAA;AACpC,QAAMC,gBAAgBC,iBAAAA;AACtB,SAAOC,YACL,CAAC,EAAEC,QAAQC,MAAMC,WAAU,MAAE;AAC3B,UAAMC,OAAO;MAAEF;MAAMD;MAAQ,GAAGJ;IAAS;AACzC,QAAIQ,QAAQC,YAAYR,cAAcS,cAAc;MAAEC,MAAM;MAAcJ;IAAK,CAAA,GAAI;AACjF,aAAO,sBAAA,cAACC,QAAQA,SAAO;QAACG,MAAK;QAAaJ;QAAa,GAAGD;;IAC5D;EACF,GACA;IAACL;IAAeD;GAAS;AAE7B;;;ACtBA,YAAYY,YAAY;AACxB,SAASC,WAAWC,gBAAgB;AAEpC,SAASC,aAAa;AAWf,IAAMC,UAAU,CAACC,OAA4BC,IAAaC,YAAAA;AAC/D,QAAM,CAACC,WAAWC,YAAAA,IAAgBC,SAChCJ,KAAKK,MAAMC,QAAQP,OAAO;IAAEQ,QAAQP;EAAG,CAAA,IAAYQ,YAAI,CAAA;AAGzDC,YAAU,MAAA;AACR,QAAI,CAACT,MAAME,WAAW;AACpBC,mBAAoBK,YAAI,CAAA;IAC1B;AAEA,QAAYE,cAAOR,SAAAA,KAAcA,UAAUS,MAAMC,GAAG,EAAC,MAAOZ,MAAO,CAACA,IAAI;AACtE;IACF;AAGA,UAAMa,QAAQC,sBAAsB,YAAA;AAClC,UAAI;AACF,cAAMC,OAAO,MAAMV,MAAMW,YAAYjB,OAAO;UAAEQ,QAAQP;QAAG,GAAG;UAAEC;QAAQ,CAAA;AACtE,YAAIc,MAAM;AACRZ,uBAAoBc,YAAKF,IAAAA,CAAAA;QAC3B;MACF,QAAQ;MAAC;IACX,CAAA;AAEA,WAAO,MAAMG,qBAAqBL,KAAAA;EACpC,GAAG;IAACd;IAAOC;IAAIC;IAASC;GAAU;AAElC,SAAOA;AACT;;;AC1CA,SAASiB,eAAe;AAGxB,SAASC,sBAAsB;AAIxB,IAAMC,iBAAiB,CAAC,EAAEC,OAAOC,WAAU,MAAmD;AACnG,QAAM,EAAEC,EAAC,IAAKC,eAAAA;AACd,QAAMC,YAAYC,aAAa;IAAEJ;IAAYD;EAAM,CAAA;AACnD,SAAOM,QACL,MACEF,UACGG,IAAI,CAACC,cAAc;IAClBC,OAAOD;IACPE,OAAOR,EAAE,kBAAkB;MAAES,IAAIH;MAAUI,cAAcJ;IAAS,CAAA;EACpE,EAAA,EACCK,SAAS,CAACC,GAAGC,MAAMD,EAAEJ,MAAMM,cAAcD,EAAEL,KAAK,CAAA,GACrD;IAACR;IAAGE;GAAU;AAElB;",
6
+ "names": ["Capabilities", "AppCapabilities", "useLayout", "ClientCapabilities", "parseId", "useSpace", "getActiveSpace", "capabilities", "client", "get", "ClientCapabilities", "Client", "registry", "Capabilities", "AtomRegistry", "layoutAtom", "AppCapabilities", "Layout", "layout", "spaceId", "parseId", "workspace", "spaces", "undefined", "useActiveSpace", "useLayout", "useSpace", "React", "useCallback", "Surface", "usePluginManager", "useInputSurfaceLookup", "baseData", "pluginManager", "usePluginManager", "useCallback", "schema", "prop", "fieldProps", "data", "Surface", "isAvailable", "capabilities", "role", "Option", "useEffect", "useState", "Graph", "usePath", "graph", "id", "timeout", "pathState", "setPathState", "useState", "Graph", "getPath", "target", "none", "useEffect", "isSome", "value", "at", "frame", "requestAnimationFrame", "path", "waitForPath", "some", "cancelAnimationFrame", "useMemo", "useTranslation", "useTypeOptions", "space", "annotation", "t", "useTranslation", "typenames", "getTypenames", "useMemo", "map", "typename", "value", "label", "ns", "defaultValue", "toSorted", "a", "b", "localeCompare"]
7
+ }
@@ -24,9 +24,10 @@ import { Capability } from "@dxos/app-framework";
24
24
  var SpaceCapabilities;
25
25
 
26
26
  // src/types/events.ts
27
- import { ActivationEvent, Common } from "@dxos/app-framework";
27
+ import { ActivationEvent } from "@dxos/app-framework";
28
+ import { AppActivationEvents } from "@dxos/app-toolkit";
28
29
  (function(SpaceEvents2) {
29
- SpaceEvents2.StateReady = Common.ActivationEvent.createStateEvent(`${meta.id}/event/state-ready`);
30
+ SpaceEvents2.StateReady = AppActivationEvents.createStateEvent(`${meta.id}/event/state-ready`);
30
31
  SpaceEvents2.SetupSettingsPanel = ActivationEvent.make(`${meta.id}/event/setup-settings-panel`);
31
32
  SpaceEvents2.DefaultSpaceReady = ActivationEvent.make(`${meta.id}/event/default-space-ready`);
32
33
  SpaceEvents2.SpaceCreated = ActivationEvent.make(`${meta.id}/event/space-created`);
@@ -711,4 +712,4 @@ export {
711
712
  CollectionOperation,
712
713
  SpaceOperation
713
714
  };
714
- //# sourceMappingURL=chunk-CCRSHECL.mjs.map
715
+ //# sourceMappingURL=chunk-KGLWYGIF.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/capabilities.ts", "../../../src/types/events.ts", "../../../src/types/form.ts", "../../../src/types/types.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Atom } from '@effect-atom/atom-react';\nimport type * as Effect from 'effect/Effect';\nimport * as Schema from 'effect/Schema';\n\nimport { Capability } from '@dxos/app-framework';\nimport { type Space } from '@dxos/client/echo';\nimport { type Database } from '@dxos/echo';\nimport { type PublicKey } from '@dxos/keys';\nimport { type Operation } from '@dxos/operation';\nimport { type Collection } from '@dxos/schema';\nimport { type Label } from '@dxos/ui-types';\nimport { type ComplexMap, type Position } from '@dxos/util';\n\nimport { meta } from '../meta';\n\nimport { type ObjectViewerProps, type SpaceSettingsProps } from './types';\n\nexport namespace SpaceCapabilities {\n export const Settings = Capability.make<Atom.Writable<SpaceSettingsProps>>(`${meta.id}/capability/settings`);\n\n /** Schema for persisted space plugin state. */\n export const StateSchema = Schema.mutable(\n Schema.Struct({\n spaceNames: Schema.Record({ key: Schema.String, value: Schema.String }),\n enabledEdgeReplication: Schema.Boolean,\n }),\n );\n\n export type SpaceState = Schema.Schema.Type<typeof StateSchema>;\n\n /** Persisted state (stored in KVS/localStorage). */\n export const State = Capability.make<Atom.Writable<SpaceState>>(`${meta.id}/capability/state`);\n\n /** Ephemeral space plugin state (not persisted). */\n export type SpaceEphemeralState = {\n awaiting: string | undefined;\n sdkMigrationRunning: Record<string, boolean>;\n navigableCollections: boolean;\n viewersByObject: Record<string, ComplexMap<PublicKey, ObjectViewerProps>>;\n viewersByIdentity: ComplexMap<PublicKey, Set<string>>;\n };\n\n /** Transient/ephemeral state (not persisted). */\n export const EphemeralState = Capability.make<Atom.Writable<SpaceEphemeralState>>(\n `${meta.id}/capability/ephemeral-state`,\n );\n\n export type SettingsSection = { id: string; label: Label; position?: Position };\n export const SettingsSection = Capability.make<SettingsSection>(`${meta.id}/capability/settings-section`);\n\n export type OnCreateSpace = (params: {\n space: Space;\n isDefault: boolean;\n rootCollection: Collection.Collection;\n }) => Effect.Effect<void, Error, Operation.Service>;\n export const OnCreateSpace = Capability.make<OnCreateSpace>(`${meta.id}/capability/on-space-created`);\n\n export type OnSchemaAdded = (params: {\n db: Database.Database;\n schema: Schema.Schema.AnyNoContext;\n // TODO(wittjosiah): This is leaky.\n show?: boolean;\n }) => Effect.Effect<void, Error, Operation.Service>;\n export const OnSchemaAdded = Capability.make<OnSchemaAdded>(`${meta.id}/capability/on-schema-added`);\n\n // TODO(wittjosiah): Replace with migrations, this is not a sustainable solution.\n export type HandleRepair = (params: { space: Space; isDefault: boolean }) => Promise<void>;\n export const Repair = Capability.make<HandleRepair>(`${meta.id}/capability/repair`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { ActivationEvent } from '@dxos/app-framework';\nimport { AppActivationEvents } from '@dxos/app-toolkit';\n\nimport { meta } from '../meta';\n\nexport namespace SpaceEvents {\n export const StateReady = AppActivationEvents.createStateEvent(`${meta.id}/event/state-ready`);\n export const SetupSettingsPanel = ActivationEvent.make(`${meta.id}/event/setup-settings-panel`);\n export const DefaultSpaceReady = ActivationEvent.make(`${meta.id}/event/default-space-ready`);\n export const SpaceCreated = ActivationEvent.make(`${meta.id}/event/space-created`);\n export const SchemaAdded = ActivationEvent.make(`${meta.id}/event/schema-added`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Option from 'effect/Option';\nimport * as Schema from 'effect/Schema';\n\nimport { type Space } from '@dxos/client/echo';\nimport { Type } from '@dxos/echo';\nimport { EntityKind, SystemTypeAnnotation, createAnnotationHelper, getTypeAnnotation } from '@dxos/echo/internal';\n\nexport const TypeInputOptions = Schema.Struct({\n location: Schema.Array(Schema.Literal('database', 'runtime')),\n kind: Schema.Array(Schema.Literal('system', 'user')),\n registered: Schema.Array(Schema.Literal('registered', 'unregistered')),\n});\n\nexport type TypeInputOptions = Schema.Schema.Type<typeof TypeInputOptions>;\n\n/**\n * Used in forms to identify the field representing an object's type and determine which types are shown as options.\n */\nexport const TypeInputOptionsAnnotationId = Symbol.for('@dxos/schema/annotation/TypeInputOptions');\nexport const TypeInputOptionsAnnotation = createAnnotationHelper<TypeInputOptions>(TypeInputOptionsAnnotationId);\n\n// TODO(wittjosiah): This is too complicated and needs to be simplified.\nexport const getTypenames = ({ annotation, space }: { annotation: TypeInputOptions; space?: Space }) => {\n const includeRuntime = annotation.location.includes('runtime');\n const includeDatabase = annotation.location.includes('database');\n const includeSystemType = annotation.kind.includes('system');\n const includeUserType = annotation.kind.includes('user');\n const includeRegistered = annotation.registered.includes('registered');\n const includeUnregistered = annotation.registered.includes('unregistered');\n\n const runtimeTypenames =\n includeRuntime && space\n ? space.db.schemaRegistry\n .query({ location: ['runtime'] })\n .runSync()\n .filter((schema) => {\n const relation = getTypeAnnotation(schema)?.kind === EntityKind.Relation;\n if (relation) {\n return includeSystemType;\n }\n\n const system = SystemTypeAnnotation.get(schema).pipe(Option.getOrElse(() => false));\n if (system) {\n return includeSystemType;\n }\n\n return includeUserType;\n })\n .filter((schema) => {\n const registered = space?.properties.staticRecords?.includes(Type.getTypename(schema));\n return registered ? includeRegistered : includeUnregistered;\n })\n .map((schema) => Type.getTypename(schema))\n : [];\n\n const databaseTypenames =\n includeDatabase && includeRegistered && space\n ? space.db.schemaRegistry\n .query({ location: ['database'] })\n .runSync()\n .map((schema) => Type.getTypename(schema))\n : [];\n\n return Array.from(new Set<string>([...runtimeTypenames, ...databaseTypenames])).sort();\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport type * as Effect from 'effect/Effect';\nimport * as Schema from 'effect/Schema';\n\nimport { Capability, Plugin } from '@dxos/app-framework';\nimport { type PublicKey } from '@dxos/client';\n// TODO(wittjosiah): This pulls in full client.\nimport { SpaceSchema } from '@dxos/client/echo';\nimport { CancellableInvitationObservable, Invitation } from '@dxos/client/invitations';\nimport { Database, type Obj, QueryAST, Type } from '@dxos/echo';\nimport { Operation } from '@dxos/operation';\nimport { Collection, FieldSchema, View } from '@dxos/schema';\nimport { type ComplexMap } from '@dxos/util';\n\nimport { meta } from '../meta';\n\nimport { TypeInputOptionsAnnotation } from './form';\n\nexport const SPACE_DIRECTORY_HANDLE = `${meta.id}/directory`;\n\nexport const SPACE_TYPE = 'dxos.org/type/Space';\n\nexport type SpacePluginOptions = {\n /**\n * Origin used for shareable links (object copy-link and invitation base).\n * Defaults to window.location.origin.\n */\n shareableLinkOrigin?: string;\n\n /**\n * Path appended to shareableLinkOrigin to form the invitation base URL.\n * Defaults to '/'.\n */\n invitationPath?: string;\n\n /**\n * Query parameter name for the invitation code.\n */\n invitationProp?: string;\n\n /**\n * Whether to send observability events.\n */\n observability?: boolean;\n};\n\nexport type ObjectViewerProps = {\n lastSeen: number;\n currentlyAttended: boolean;\n};\n\nexport type ObjectId = string;\n\nexport type PluginState = {\n /**\n * Which objects are currently being viewed by which peers.\n */\n viewersByObject: Record<ObjectId, ComplexMap<PublicKey, ObjectViewerProps>>;\n\n /**\n * Which peers are currently viewing which objects.\n */\n viewersByIdentity: ComplexMap<PublicKey, Set<ObjectId>>;\n\n /**\n * Object that was linked to directly but not found and is being awaited.\n */\n awaiting: string | undefined;\n\n /**\n * Cached space names, used when spaces are closed or loading.\n */\n spaceNames: Record<string, string>;\n\n /**\n * Which spaces have an SDK migration running currently.\n */\n // TODO(wittjosiah): Factor out to sdk. Migration running should probably be a space state.\n sdkMigrationRunning: Record<string, boolean>;\n\n /**\n * Whether or not the user can navigate to collections in the graph.\n * Determined by whether or not there is an available plugin that can render a collection.\n */\n navigableCollections: boolean;\n\n /**\n * Tracks whether setting edge replication as default has been run on spaces.\n */\n // TODO(wittjosiah): Systematic way to handle migrations of state outside of spaces.\n enabledEdgeReplication: boolean;\n};\n\nexport const SpaceSettingsSchema = Schema.mutable(\n Schema.Struct({\n /**\n * Show closed spaces.\n */\n showHidden: Schema.Boolean,\n }),\n);\n\nexport type SpaceSettingsProps = Schema.Schema.Type<typeof SpaceSettingsSchema>;\n\n// TODO(wittjosiah): Reconcile with graph export serializers.\n\nexport type SerializerMap = Record<string, TypedObjectSerializer>;\n\nexport interface TypedObjectSerializer<T extends Obj.Unknown = Obj.Unknown> {\n serialize(params: { object: T }): Promise<string>;\n\n /**\n * @param params.content\n * @param params.space Space to use for deserializing schema references.\n * @param params.newId Generate new ID for deserialized object.\n */\n deserialize(params: { content: string; db: Database.Database; newId?: boolean }): Promise<T>;\n}\n\n/**\n * Factory function that creates an object directly using Type.make().\n * Returns an Effect that resolves to the created object.\n *\n * Options include:\n * - `db`: The database to use for object creation.\n */\nexport type CreateObject = (\n props: any,\n options: { db: Database.Database },\n) => Effect.Effect<Obj.Unknown, Error, Capability.Service | Operation.Service>;\n\n// TODO(burdon): Move to FormatEnum or SDK.\nexport const IconAnnotationId = Symbol.for('@dxos/plugin-space/annotation/Icon');\nexport const HueAnnotationId = Symbol.for('@dxos/plugin-space/annotation/Hue');\n\n// TOOD(burdon): Use SpacePropertiesSchema.\nexport const SpaceForm = Schema.Struct({\n name: Schema.optional(Schema.String.annotations({ title: 'Name' })),\n icon: Schema.optional(Schema.String.annotations({ title: 'Icon', [IconAnnotationId]: true })),\n hue: Schema.optional(Schema.String.annotations({ title: 'Color', [HueAnnotationId]: true })),\n edgeReplication: Schema.optional(Schema.Boolean.annotations({ title: 'Enable EDGE Replication' })),\n});\n\nconst COLLECTION_OPERATION = 'dxos.org/plugin/collection/operation';\n\nexport namespace CollectionOperation {\n export const Create = Operation.make({\n meta: { key: `${COLLECTION_OPERATION}/create`, name: 'Create Collection' },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: Collection.Collection,\n }),\n },\n });\n}\n\nconst SPACE_OPERATION = `${meta.id}/operation`;\n\n/**\n * Operations for the Space plugin.\n */\nexport namespace SpaceOperation {\n export const Create = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/create`,\n name: 'Create Space',\n description: 'Create a new space.',\n },\n services: [Capability.Service, Plugin.Service],\n schema: {\n input: SpaceForm,\n output: Schema.Struct({\n id: Schema.String,\n subject: Schema.Array(Schema.String),\n space: SpaceSchema,\n }),\n },\n });\n\n export const Join = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/join`,\n name: 'Join Space',\n description: 'Join a space via invitation.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n invitationCode: Schema.optional(Schema.String),\n onDone: Schema.optional(Schema.Any),\n }),\n output: Schema.Void,\n },\n });\n\n export const Open = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/open`,\n name: 'Open Space',\n description: 'Open a space.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n },\n });\n\n export const Close = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/close`,\n name: 'Close Space',\n description: 'Close a space.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n },\n });\n\n export const Share = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/share`,\n name: 'Share Space',\n description: 'Share a space.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n space: SpaceSchema,\n type: Schema.Enums(Invitation.Type),\n authMethod: Schema.Enums(Invitation.AuthMethod),\n multiUse: Schema.Boolean,\n target: Schema.optional(Schema.String),\n }),\n output: Schema.instanceOf(CancellableInvitationObservable),\n },\n });\n\n // TODO(wittjosiah): This appears to be unused.\n export const Lock = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/lock`,\n name: 'Lock Space',\n description: 'Lock a space to prevent modifications.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n },\n });\n\n // TODO(wittjosiah): This appears to be unused.\n export const Unlock = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/unlock`,\n name: 'Unlock Space',\n description: 'Unlock a space to allow modifications.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n },\n });\n\n export const OpenSettings = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/open-settings`,\n name: 'Open Space Settings',\n description: 'Open space settings.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n },\n });\n\n export const WaitForObject = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/wait-for-object`,\n name: 'Wait For Object',\n description: 'Wait for an object to be available.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n id: Schema.optional(Schema.String),\n }),\n output: Schema.Void,\n },\n });\n\n export const AddObject = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/add-object`,\n name: 'Add Object',\n description: 'Add an object to a space.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n object: Type.Obj.annotations({ description: 'The object to add.' }),\n target: Schema.Union(Database.Database, Collection.Collection).annotations({\n description: 'The database or collection to add to.',\n }),\n hidden: Schema.optional(Schema.Boolean),\n }),\n output: Schema.Struct({\n id: Schema.String,\n subject: Schema.Array(Schema.String),\n object: Type.Obj,\n }),\n },\n });\n\n export const RemoveObjectsOutput = Schema.Struct({\n objects: Schema.Array(Type.Obj).annotations({ description: 'The removed objects.' }),\n parentCollection: Collection.Collection.annotations({ description: 'The collection removed from.' }),\n indices: Schema.Array(Schema.Number).annotations({ description: 'The indices the objects were at.' }),\n nestedObjectsList: Schema.Array(Schema.Array(Type.Obj)).annotations({\n description: 'Nested objects that were removed.',\n }),\n wasActive: Schema.Array(Schema.String).annotations({\n description: 'IDs of objects that were active before removal.',\n }),\n });\n\n export type RemoveObjectsOutput = Schema.Schema.Type<typeof RemoveObjectsOutput>;\n\n export const RemoveObjects = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/remove-objects`,\n name: 'Remove Objects',\n description: 'Remove objects from a space.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n objects: Schema.Array(Type.Obj).annotations({ description: 'The objects to remove.' }),\n target: Schema.optional(Collection.Collection).annotations({ description: 'The collection to remove from.' }),\n }),\n output: RemoveObjectsOutput,\n },\n });\n\n export const DeleteFieldOutput = Schema.Struct({\n field: FieldSchema.annotations({ description: 'The deleted field schema.' }),\n // TODO(wittjosiah): This creates a type error with PropertySchema.\n props: Schema.Any.annotations({ description: 'The deleted field properties.' }),\n index: Schema.Number.annotations({ description: 'The index the field was at.' }),\n });\n\n export type DeleteFieldOutput = Schema.Schema.Type<typeof DeleteFieldOutput>;\n\n export const DeleteField = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/delete-field`,\n name: 'Delete Field',\n description: 'Delete a field from a view.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n view: View.View.annotations({ description: 'The view to delete the field from.' }),\n fieldId: Schema.String,\n }),\n output: DeleteFieldOutput,\n },\n });\n\n export const OpenCreateObject = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/open-create-object`,\n name: 'Open Create Object Dialog',\n description: 'Open the create object dialog.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n target: Schema.Union(Database.Database, Collection.Collection).annotations({\n description: 'The database or collection to create in.',\n }),\n views: Schema.optional(Schema.Boolean),\n typename: Schema.optional(Schema.String),\n initialFormValues: Schema.optional(Schema.Any),\n navigable: Schema.optional(Schema.Boolean),\n // TODO(wittjosiah): This is a function, is there a better way to handle this?\n onCreateObject: Schema.optional(Schema.Any),\n }),\n output: Schema.Void,\n },\n });\n\n export const OpenCreateSpace = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/open-create-space`,\n name: 'Open Create Space Dialog',\n description: 'Open the create space dialog.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Void,\n output: Schema.Void,\n },\n });\n\n export const Migrate = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/migrate`,\n name: 'Migrate Space',\n description: 'Migrate a space to a new version.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n space: SpaceSchema,\n version: Schema.optional(Schema.String),\n }),\n output: Schema.Boolean,\n },\n });\n\n export const Snapshot = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/snapshot`,\n name: 'Create Snapshot',\n description: 'Create a snapshot of the space.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n db: Database.Database,\n query: QueryAST.Query.pipe(Schema.optional),\n }),\n output: Schema.Struct({\n snapshot: Schema.instanceOf(Blob),\n }),\n },\n });\n\n export const Rename = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/rename`,\n name: 'Rename Space',\n description: 'Rename a space.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n space: SpaceSchema,\n caller: Schema.optional(Schema.String),\n }),\n output: Schema.Void,\n },\n });\n\n export const RenameObject = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/rename-object`,\n name: 'Rename Object',\n description: 'Rename an object.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n object: Type.Obj,\n caller: Schema.optional(Schema.String),\n }),\n output: Schema.Void,\n },\n });\n\n export const OpenMembers = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/open-members`,\n name: 'Open Members',\n description: 'Open the members panel for a space.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n space: SpaceSchema,\n }),\n output: Schema.Void,\n },\n });\n\n export const GetShareLink = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/get-share-link`,\n name: 'Get Share Link',\n description: 'Get a shareable link for a space.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n space: SpaceSchema,\n target: Schema.optional(Schema.String),\n copyToClipboard: Schema.optional(Schema.Boolean),\n }),\n output: Schema.String,\n },\n });\n\n export const StoredSchemaForm = Schema.Struct({\n name: Schema.optional(Schema.String),\n typename: Schema.String.pipe(\n Schema.annotations({ title: 'Select type (leave blank to create a new type)' }),\n TypeInputOptionsAnnotation.set({\n location: ['runtime'],\n kind: ['user'],\n registered: ['unregistered'],\n }),\n Schema.optional,\n ),\n });\n\n export const UseStaticSchema = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/use-static-schema`,\n name: 'Use Static Schema',\n description: 'Use a static schema in the space.',\n },\n services: [Capability.Service, Plugin.Service],\n schema: {\n input: Schema.Struct({\n db: Database.Database,\n typename: Schema.String,\n show: Schema.optional(Schema.Boolean),\n }),\n output: Schema.Struct({}),\n },\n });\n\n export const AddSchema = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/add-schema`,\n name: 'Add Schema',\n description: 'Add a schema to the space.',\n },\n services: [Capability.Service, Plugin.Service],\n schema: {\n input: Schema.Struct({\n db: Database.Database,\n name: Schema.optional(Schema.String),\n typename: Schema.optional(Schema.String),\n version: Schema.optional(Schema.String),\n // TODO(wittjosiah): Schema for schema?\n schema: Schema.Any,\n show: Schema.optional(Schema.Boolean),\n }),\n output: Schema.Struct({\n id: Schema.String,\n object: Type.PersistentType,\n schema: Schema.instanceOf(Type.RuntimeType),\n }),\n },\n });\n\n export const AddRelation = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/add-relation`,\n name: 'Add Relation',\n description: 'Add a relation between objects.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n db: Database.Database,\n // TODO(wittjosiah): Relation schema.\n schema: Schema.Any,\n source: Type.Obj,\n target: Type.Obj,\n // TODO(wittjosiah): Type based on relation schema.\n fields: Schema.optional(Schema.Record({ key: Schema.String, value: Schema.Any })),\n }),\n output: Schema.Struct({\n relation: Schema.Any,\n }),\n },\n });\n\n // TODO(wittjosiah): This appears to be unused.\n export const DuplicateObject = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/duplicate-object`,\n name: 'Duplicate Object',\n description: 'Duplicate an object.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n object: Type.Obj,\n target: Schema.Union(Database.Database, Collection.Collection),\n }),\n output: Schema.Void,\n },\n });\n\n /**\n * Restore a deleted field to a view (inverse of DeleteField).\n */\n export const RestoreField = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/restore-field`,\n name: 'Restore Field',\n description: 'Restore a deleted field to a view.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n view: View.View.annotations({ description: 'The view to restore the field to.' }),\n field: FieldSchema.annotations({ description: 'The field schema to restore.' }),\n // TODO(wittjosiah): This creates a type error with PropertySchema.\n props: Schema.Any.annotations({ description: 'The field properties to restore.' }),\n index: Schema.Number.annotations({ description: 'The index to restore the field at.' }),\n }),\n output: Schema.Void,\n },\n });\n\n /**\n * Restore deleted objects to a space (inverse of RemoveObjects).\n */\n export const RestoreObjects = Operation.make({\n meta: {\n key: `${SPACE_OPERATION}/restore-objects`,\n name: 'Restore Objects',\n description: 'Restore deleted objects to a space.',\n },\n services: [Capability.Service],\n schema: {\n input: Schema.Struct({\n objects: Schema.Array(Type.Obj).annotations({ description: 'The objects to restore.' }),\n parentCollection: Collection.Collection.annotations({ description: 'The collection to restore to.' }),\n indices: Schema.Array(Schema.Number).annotations({ description: 'The indices to restore at.' }),\n nestedObjectsList: Schema.Array(Schema.Array(Type.Obj)).annotations({\n description: 'Nested objects to restore.',\n }),\n wasActive: Schema.Array(Schema.String).annotations({\n description: 'IDs of objects that were active before deletion.',\n }),\n }),\n output: Schema.Void,\n },\n });\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["Schema", "Capability", "SpaceCapabilities", "Settings", "Capability", "make", "meta", "id", "StateSchema", "mutable", "Struct", "spaceNames", "Record", "key", "String", "value", "enabledEdgeReplication", "Boolean", "State", "EphemeralState", "SettingsSection", "OnCreateSpace", "OnSchemaAdded", "Repair", "ActivationEvent", "AppActivationEvents", "SpaceEvents", "StateReady", "AppActivationEvents", "createStateEvent", "meta", "id", "SetupSettingsPanel", "ActivationEvent", "make", "DefaultSpaceReady", "SpaceCreated", "SchemaAdded", "Option", "Schema", "Type", "EntityKind", "SystemTypeAnnotation", "createAnnotationHelper", "getTypeAnnotation", "TypeInputOptions", "Struct", "location", "Array", "Literal", "kind", "registered", "TypeInputOptionsAnnotationId", "Symbol", "for", "TypeInputOptionsAnnotation", "createAnnotationHelper", "getTypenames", "annotation", "space", "includeRuntime", "includes", "includeDatabase", "includeSystemType", "includeUserType", "includeRegistered", "includeUnregistered", "runtimeTypenames", "db", "schemaRegistry", "query", "runSync", "filter", "schema", "relation", "getTypeAnnotation", "EntityKind", "Relation", "system", "SystemTypeAnnotation", "get", "pipe", "getOrElse", "properties", "staticRecords", "Type", "getTypename", "map", "databaseTypenames", "from", "Set", "sort", "Schema", "Capability", "Plugin", "SpaceSchema", "CancellableInvitationObservable", "Invitation", "Database", "QueryAST", "Type", "Operation", "Collection", "FieldSchema", "View", "SPACE_DIRECTORY_HANDLE", "meta", "id", "SPACE_TYPE", "SpaceSettingsSchema", "mutable", "Struct", "showHidden", "Boolean", "IconAnnotationId", "Symbol", "for", "HueAnnotationId", "SpaceForm", "name", "optional", "String", "annotations", "title", "icon", "hue", "edgeReplication", "COLLECTION_OPERATION", "CollectionOperation", "Create", "Operation", "make", "key", "services", "Capability", "Service", "schema", "input", "output", "object", "Collection", "SPACE_OPERATION", "SpaceOperation", "description", "Plugin", "subject", "Array", "space", "SpaceSchema", "Join", "invitationCode", "onDone", "Any", "Void", "Open", "Close", "Share", "type", "Enums", "Invitation", "Type", "authMethod", "AuthMethod", "multiUse", "target", "instanceOf", "CancellableInvitationObservable", "Lock", "Unlock", "OpenSettings", "WaitForObject", "AddObject", "Obj", "Union", "Database", "hidden", "RemoveObjectsOutput", "objects", "parentCollection", "indices", "Number", "nestedObjectsList", "wasActive", "RemoveObjects", "DeleteFieldOutput", "field", "FieldSchema", "props", "index", "DeleteField", "view", "View", "fieldId", "OpenCreateObject", "views", "typename", "initialFormValues", "navigable", "onCreateObject", "OpenCreateSpace", "Migrate", "version", "Snapshot", "db", "query", "QueryAST", "Query", "pipe", "snapshot", "Blob", "Rename", "caller", "RenameObject", "OpenMembers", "GetShareLink", "copyToClipboard", "StoredSchemaForm", "TypeInputOptionsAnnotation", "set", "location", "kind", "registered", "UseStaticSchema", "show", "AddSchema", "PersistentType", "RuntimeType", "AddRelation", "source", "fields", "Record", "value", "relation", "DuplicateObject", "RestoreField", "RestoreObjects"]
7
+ }
@@ -4,10 +4,10 @@ var IdentityCreated = Capability.lazy("IdentityCreated", () => import("./identit
4
4
 
5
5
  // src/capabilities/operation-resolver/index.ts
6
6
  import { Capability as Capability2 } from "@dxos/app-framework";
7
- var OperationResolver = Capability2.lazy("OperationResolver", () => import("./operation-resolver-SIRQT36Z.mjs"));
7
+ var OperationResolver = Capability2.lazy("OperationResolver", () => import("./operation-resolver-PJJ3PCM7.mjs"));
8
8
 
9
9
  export {
10
10
  IdentityCreated,
11
11
  OperationResolver
12
12
  };
13
- //# sourceMappingURL=chunk-AWVAX26X.mjs.map
13
+ //# sourceMappingURL=chunk-NF3ZFAB4.mjs.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  SPACE_TYPE,
3
3
  SpaceOperation
4
- } from "./chunk-CCRSHECL.mjs";
4
+ } from "./chunk-KGLWYGIF.mjs";
5
5
  import {
6
6
  meta
7
7
  } from "./chunk-HSMQFM57.mjs";
8
8
 
9
9
  // src/util.tsx
10
10
  import * as Effect from "effect/Effect";
11
- import { Common } from "@dxos/app-framework";
11
+ import { LayoutOperation } from "@dxos/app-toolkit";
12
12
  import { SpaceState, isSpace } from "@dxos/client/echo";
13
13
  import { Filter, Obj, Query, Ref, Type } from "@dxos/echo";
14
14
  import { invariant } from "@dxos/invariant";
@@ -255,7 +255,7 @@ var constructSpaceActions = ({ space, personal, migrating }) => {
255
255
  }
256
256
  ],
257
257
  icon: "ph--plus--regular",
258
- disposition: "item",
258
+ disposition: "list-item-primary",
259
259
  testId: "spacePlugin.createObject"
260
260
  }
261
261
  }, {
@@ -467,11 +467,11 @@ var createObjectNode = ({ db, object, disposition, droppable = true, navigable =
467
467
  }
468
468
  };
469
469
  };
470
- var constructObjectActions = ({ object, graph, resolve, capabilities, deletable = true, navigable = false }) => {
470
+ var constructObjectActions = ({ object, graph, resolve, capabilities, deletable = true, navigable = false, shareableLinkOrigin }) => {
471
471
  const db = Obj.getDatabase(object);
472
472
  invariant(db, "Database not found", {
473
473
  F: __dxlog_file,
474
- L: 544,
474
+ L: 547,
475
475
  S: void 0,
476
476
  A: [
477
477
  "db",
@@ -481,7 +481,7 @@ var constructObjectActions = ({ object, graph, resolve, capabilities, deletable
481
481
  const typename = Obj.getTypename(object);
482
482
  invariant(typename, "Object has no typename", {
483
483
  F: __dxlog_file,
484
- L: 546,
484
+ L: 549,
485
485
  S: void 0,
486
486
  A: [
487
487
  "typename",
@@ -588,7 +588,7 @@ var constructObjectActions = ({ object, graph, resolve, capabilities, deletable
588
588
  object: createdObject
589
589
  });
590
590
  if (addResult.id) {
591
- yield* Operation.invoke(Common.LayoutOperation.Open, {
591
+ yield* Operation.invoke(LayoutOperation.Open, {
592
592
  subject: [
593
593
  addResult.id
594
594
  ]
@@ -666,7 +666,7 @@ var constructObjectActions = ({ object, graph, resolve, capabilities, deletable
666
666
  id: getId("copy-link"),
667
667
  type: Node.ActionType,
668
668
  data: () => Effect.promise(async () => {
669
- const url = `${window.location.origin}/${db.spaceId}/${Obj.getDXN(object).toString()}`;
669
+ const url = `${shareableLinkOrigin}/${db.spaceId}/${Obj.getDXN(object).toString()}`;
670
670
  await navigator.clipboard.writeText(url);
671
671
  }),
672
672
  properties: {
@@ -684,9 +684,9 @@ var constructObjectActions = ({ object, graph, resolve, capabilities, deletable
684
684
  ] : [],
685
685
  // TODO(wittjosiah): Factor out and apply to all nodes.
686
686
  {
687
- id: getId(Common.LayoutOperation.Expose.meta.key),
687
+ id: getId(LayoutOperation.Expose.meta.key),
688
688
  type: Node.ActionType,
689
- data: () => Operation.invoke(Common.LayoutOperation.Expose, {
689
+ data: () => Operation.invoke(LayoutOperation.Expose, {
690
690
  subject: Obj.getDXN(object).toString()
691
691
  }),
692
692
  properties: {
@@ -738,7 +738,7 @@ var cloneObject = async (object, resolve, newDb) => {
738
738
  const serializer = metadata.serializer;
739
739
  invariant(serializer, `No serializer for type: ${typename}`, {
740
740
  F: __dxlog_file,
741
- L: 776,
741
+ L: 779,
742
742
  S: void 0,
743
743
  A: [
744
744
  "serializer",
@@ -769,4 +769,4 @@ export {
769
769
  getNestedObjects,
770
770
  cloneObject
771
771
  };
772
- //# sourceMappingURL=chunk-SUI34XSA.mjs.map
772
+ //# sourceMappingURL=chunk-WAOJLA2S.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/util.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Instruction } from '@atlaskit/pragmatic-drag-and-drop-hitbox/tree-item';\nimport * as Effect from 'effect/Effect';\n\nimport { type CapabilityManager } from '@dxos/app-framework';\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { type Space, SpaceState, isSpace } from '@dxos/client/echo';\nimport { type Database, Filter, Obj, Query, Ref, Type } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\nimport { Migrations } from '@dxos/migrations';\nimport { Operation } from '@dxos/operation';\nimport { Graph, Node } from '@dxos/plugin-graph';\nimport { ATTENDABLE_PATH_SEPARATOR } from '@dxos/react-ui-attention/types';\nimport { type TreeData } from '@dxos/react-ui-list';\nimport { Collection, Expando } from '@dxos/schema';\nimport { createFilename } from '@dxos/util';\n\nimport { meta } from './meta';\nimport { SPACE_TYPE, SpaceOperation } from './types';\n\nexport const SPACES = `${meta.id}-spaces`;\nexport const COMPOSER_SPACE_LOCK = `${meta.id}/lock`;\n// TODO(wittjosiah): Remove.\nexport const SHARED = 'shared-spaces';\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: meta.id }]\n : ['unnamed space label', { ns: meta.id }];\n};\n\nconst getCollectionGraphNodePartials = ({\n collection,\n db,\n resolve,\n}: {\n collection: Collection.Collection;\n db: Database.Database;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n return {\n acceptPersistenceClass: new Set(['echo']),\n acceptPersistenceKey: new Set([db.spaceId]),\n role: 'branch',\n onTransferStart: (child: Node.Node<Obj.Unknown>, 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 Obj.change(collection, (c) => {\n if (!c.objects.find((object) => object.target === child.data)) {\n if (typeof index !== 'undefined') {\n c.objects.splice(index, 0, Ref.make(child.data));\n } else {\n c.objects.push(Ref.make(child.data));\n }\n }\n });\n\n // }\n },\n onTransferEnd: (child: Node.Node<Obj.Unknown>, destination: Node.Node) => {\n // Remove child from origin collection.\n Obj.change(collection, (c) => {\n const index = c.objects.findIndex((object) => object.target === child.data);\n if (index > -1) {\n c.objects.splice(index, 1);\n }\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.Node<Obj.Unknown>, index?: number) => {\n // Create clone of child and add to destination space.\n const newObject = await cloneObject(child.data, resolve, db);\n db.add(newObject);\n Obj.change(collection, (c) => {\n if (typeof index !== 'undefined') {\n c.objects.splice(index, 0, Ref.make(newObject));\n } else {\n c.objects.push(Ref.make(newObject));\n }\n });\n },\n };\n};\n\nconst getSystemCollectionNodePartials = ({\n collection,\n db,\n resolve,\n}: {\n collection: Collection.Managed;\n db: Database.Database;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const metadata = resolve(collection.key);\n return {\n label: ['typename label', { ns: collection.key, count: 2 }],\n icon: metadata.icon,\n iconHue: metadata.iconHue,\n acceptPersistenceClass: new Set(['echo']),\n acceptPersistenceKey: new Set([db.spaceId]),\n role: 'branch',\n };\n};\n\nconst getSchemaGraphNodePartials = () => {\n return {\n role: 'branch',\n canDrop: () => false,\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 graph,\n spacesOrder,\n}: {\n space: Space;\n navigable?: boolean;\n personal?: boolean;\n namesCache?: Record<string, string>;\n resolve: (typename: string) => Record<string, any>;\n /** Graph for sorting edges on rearrange. */\n graph?: Graph.ExpandableGraph;\n // TODO(wittjosiah): Should be Type.Expando but it doesn't work with the AtomQuery result type.\n /** Spaces order object for persisting workspace order. */\n spacesOrder?: Obj.Any;\n}) => {\n const hasPendingMigration = checkPendingMigration(space);\n const collection =\n space.state.get() === SpaceState.SPACE_READY && space.properties[Collection.Collection.typename]?.target;\n const partials =\n space.state.get() === SpaceState.SPACE_READY && Obj.instanceOf(Collection.Collection, collection)\n ? getCollectionGraphNodePartials({ collection, db: space.db, resolve })\n : {};\n\n const onRearrange =\n graph && spacesOrder\n ? (nextOrder: Space[]) => {\n // NOTE: This is needed to ensure order is updated by next animation frame.\n Graph.sortEdges(\n graph,\n Node.RootId,\n 'outbound',\n nextOrder.map(({ id }) => id),\n );\n\n // Persist order to database.\n Obj.change(spacesOrder, (mutableOrder: any) => {\n mutableOrder.order = nextOrder.map(({ id }) => id);\n });\n }\n : undefined;\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 iconHue: space.state.get() === SpaceState.SPACE_READY && space.properties.iconHue,\n disabled: !navigable || space.state.get() !== SpaceState.SPACE_READY || hasPendingMigration,\n disposition: 'workspace',\n testId: 'spacePlugin.space',\n onRearrange,\n canDrop: (source: TreeData) => {\n // TODO(wittjosiah): Find a way to only allow space as source for rearranging.\n return Obj.isObject(source.item.data) || isSpace(source.item.data);\n },\n },\n nodes: [\n {\n id: `settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${meta.id}/settings`,\n data: null,\n properties: {\n label: ['settings panel label', { ns: meta.id }],\n icon: 'ph--faders--regular',\n disposition: 'alternate-tree',\n },\n nodes: [\n {\n id: `properties-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${meta.id}/properties`,\n data: `${meta.id}/properties`,\n properties: {\n label: ['space settings properties label', { ns: meta.id }],\n icon: 'ph--sliders--regular',\n position: 'hoist',\n testId: 'spacePlugin.general',\n },\n },\n {\n id: `members-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${meta.id}/members`,\n data: `${meta.id}/members`,\n properties: {\n label: ['members panel label', { ns: meta.id }],\n icon: 'ph--users--regular',\n position: 'hoist',\n testId: 'spacePlugin.members',\n },\n },\n {\n id: `schema-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${meta.id}/schema`,\n data: `${meta.id}/schema`,\n properties: {\n label: ['space settings schema label', { ns: meta.id }],\n icon: 'ph--shapes--regular',\n testId: 'spacePlugin.schema',\n },\n },\n ],\n },\n ],\n };\n};\n\nexport const constructSpaceActions = ({\n space,\n personal,\n migrating,\n}: {\n space: Space;\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: Node.NodeArg<Node.ActionData<Operation.Service>>[] = [];\n\n if (hasPendingMigration) {\n actions.push({\n id: getId(SpaceOperation.Migrate.meta.key),\n type: Node.ActionGroupType,\n data: () => Operation.invoke(SpaceOperation.Migrate, { space }),\n properties: {\n label: ['migrate space label', { ns: meta.id }],\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(SpaceOperation.OpenCreateObject.meta.key),\n type: Node.ActionType,\n data: () => Operation.invoke(SpaceOperation.OpenCreateObject, { target: space.db }),\n properties: {\n label: ['create object in space label', { ns: meta.id }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.createObject',\n },\n },\n {\n id: getId(SpaceOperation.Rename.meta.key),\n type: Node.ActionType,\n data: (params?: Node.InvokeProps) => Operation.invoke(SpaceOperation.Rename, { space, caller: params?.caller }),\n properties: {\n label: ['rename space label', { ns: meta.id }],\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 createStaticSchemaNode = ({ schema, space }: { schema: Type.Entity.Any; space: Space }): Node.Node => {\n return {\n id: `${space.id}/${Type.getTypename(schema)}`,\n type: `${meta.id}/static-schema`,\n data: schema,\n properties: {\n label: ['typename label', { ns: Type.getTypename(schema), count: 2, default: Type.getTypename(schema) }],\n icon: 'ph--database--regular',\n iconHue: 'green',\n role: 'branch',\n selectable: false,\n canDrop: () => false,\n space,\n },\n };\n};\n\nexport const createStaticSchemaActions = ({\n schema,\n space,\n deletable,\n}: {\n schema: Type.Obj.Any;\n space: Space;\n deletable: boolean;\n}) => {\n const getId = (id: string) => `${space.id}/${Type.getTypename(schema)}/${id}`;\n\n const actions: Node.NodeArg<Node.ActionData<Operation.Service>>[] = [\n {\n id: getId(SpaceOperation.AddObject.meta.key),\n type: Node.ActionType,\n data: () =>\n Operation.invoke(SpaceOperation.OpenCreateObject, {\n target: space.db,\n views: true,\n initialFormValues: { typename: Type.getTypename(schema) },\n }),\n properties: {\n label: ['add view to schema label', { ns: meta.id }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.addViewToSchema',\n },\n },\n {\n id: getId(SpaceOperation.RenameObject.meta.key),\n type: Node.ActionType,\n data: () => Effect.fail(new Error('Not implemented')),\n properties: {\n label: ['rename object label', { ns: Type.getTypename(Type.PersistentType) }],\n icon: 'ph--pencil-simple-line--regular',\n disabled: true,\n disposition: 'list-item',\n testId: 'spacePlugin.renameObject',\n },\n },\n {\n id: getId(SpaceOperation.RemoveObjects.meta.key),\n type: Node.ActionType,\n data: () =>\n Effect.sync(() => {\n const index = space.properties.staticRecords.findIndex(\n (typename: string) => typename === Type.getTypename(schema),\n );\n if (index > -1) {\n Obj.change(space.properties, (p) => {\n p.staticRecords.splice(index, 1);\n });\n }\n }),\n properties: {\n label: ['delete object label', { ns: Type.getTypename(Type.PersistentType) }],\n icon: 'ph--trash--regular',\n disposition: 'list-item',\n disabled: !deletable,\n testId: 'spacePlugin.deleteObject',\n },\n },\n {\n id: getId(SpaceOperation.Snapshot.meta.key),\n type: Node.ActionType,\n data: Effect.fnUntraced(function* () {\n const result = yield* Operation.invoke(SpaceOperation.Snapshot, {\n db: space.db,\n query: Query.select(Filter.type(schema)).ast,\n });\n if (result.snapshot) {\n yield* Effect.tryPromise(() =>\n downloadBlob(result.snapshot, createFilename({ parts: [space.id, Type.getTypename(schema)], ext: 'json' })),\n );\n }\n }),\n properties: {\n label: ['snapshot by schema label', { ns: meta.id }],\n icon: 'ph--camera--regular',\n disposition: 'list-item',\n },\n },\n ];\n\n return actions;\n};\n\nexport const createObjectNode = ({\n db,\n object,\n disposition,\n droppable = true,\n navigable = false,\n managedCollectionChild = false,\n resolve,\n parentCollection,\n}: {\n db: Database.Database;\n object: Obj.Unknown;\n disposition?: string;\n droppable?: boolean;\n navigable?: boolean;\n managedCollectionChild?: boolean;\n resolve: (typename: string) => Record<string, any>;\n /** Parent collection for rearranging objects. */\n parentCollection?: Collection.Collection;\n}) => {\n const type = Obj.getTypename(object);\n if (!type) {\n return null;\n }\n\n const metadata = resolve(type);\n const partials = Obj.instanceOf(Collection.Collection, object)\n ? getCollectionGraphNodePartials({ collection: object, db, resolve })\n : Obj.instanceOf(Collection.Managed, object)\n ? getSystemCollectionNodePartials({ collection: object, db, resolve })\n : Obj.instanceOf(Type.PersistentType, object)\n ? getSchemaGraphNodePartials()\n : metadata.graphProps;\n\n // TODO(wittjosiah): Obj.getLabel isn't triggering reactivity in some cases.\n // e.g., create new collection with no name and rename it.\n const label = (object as any).name ||\n Obj.getLabel(object) ||\n // TODO(wittjosiah): Remove metadata labels.\n metadata.label?.(object) || ['object name placeholder', { ns: type, default: 'New item' }];\n\n const selectable =\n (!Obj.instanceOf(Type.PersistentType, object) &&\n !Obj.instanceOf(Collection.Managed, object) &&\n !Obj.instanceOf(Collection.Collection, object)) ||\n (navigable && Obj.instanceOf(Collection.Collection, object));\n\n return {\n id: Obj.getDXN(object).toString(),\n type,\n cacheable: ['label', 'icon', 'role'],\n data: object,\n properties: {\n label,\n icon: metadata.icon ?? 'ph--placeholder--regular',\n iconHue: metadata.iconHue,\n disposition,\n testId: 'spacePlugin.object',\n persistenceClass: 'echo',\n persistenceKey: db.spaceId,\n selectable,\n managedCollectionChild,\n onRearrange: parentCollection\n ? (nextOrder: unknown[]) => {\n Obj.change(parentCollection, (c) => {\n c.objects = nextOrder.filter(Obj.isObject).map(Ref.make);\n });\n }\n : undefined,\n blockInstruction: (source: TreeData, instruction: Instruction) => {\n if (source.item.properties.managedCollectionChild) {\n // TODO(wittjosiah): Support reordering system collections.\n // return !(managedCollectionChild && source.item.type === type && instruction.type.startsWith('reorder'));\n return true;\n }\n\n if (Obj.instanceOf(Collection.Managed, object)) {\n return !instruction.type.startsWith('reorder');\n }\n\n return managedCollectionChild;\n },\n canDrop: (source: TreeData) => {\n return droppable && Node.isGraphNode(source.item) && Obj.isObject(source.item.data);\n },\n ...partials,\n },\n };\n};\n\nexport const constructObjectActions = ({\n object,\n graph,\n resolve,\n capabilities,\n deletable = true,\n navigable = false,\n shareableLinkOrigin,\n}: {\n object: Obj.Unknown;\n graph: Graph.ReadableGraph;\n resolve: (typename: string) => Record<string, any>;\n capabilities: CapabilityManager.CapabilityManager;\n shareableLinkOrigin: string;\n deletable?: boolean;\n navigable?: boolean;\n}) => {\n const db = Obj.getDatabase(object);\n invariant(db, 'Database not found');\n const typename = Obj.getTypename(object);\n invariant(typename, 'Object has no typename');\n\n const getId = (id: string) => `${id}/${Obj.getDXN(object).toString()}`;\n\n const managedCollection = Obj.instanceOf(Collection.Managed, object) ? object : undefined;\n const metadata = managedCollection ? resolve(managedCollection.key) : {};\n const createObject = metadata.createObject;\n const inputSchema = metadata.inputSchema;\n\n const actions: Node.NodeArg<Node.ActionData<Operation.Service>>[] = [\n ...(Obj.instanceOf(Collection.Collection, object)\n ? [\n {\n id: getId(SpaceOperation.OpenCreateObject.meta.key),\n type: Node.ActionType,\n data: () => Operation.invoke(SpaceOperation.OpenCreateObject, { target: object }),\n properties: {\n label: ['create object in collection label', { ns: meta.id }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.createObject',\n },\n },\n ]\n : []),\n ...(Obj.instanceOf(Type.PersistentType, object)\n ? [\n {\n id: getId(SpaceOperation.AddObject.meta.key),\n type: Node.ActionType,\n data: () =>\n Operation.invoke(SpaceOperation.OpenCreateObject, {\n target: db,\n views: true,\n initialFormValues: { typename: object.typename },\n }),\n properties: {\n label: ['add view to schema label', { ns: meta.id }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.addViewToSchema',\n },\n },\n {\n id: getId(SpaceOperation.Snapshot.meta.key),\n type: Node.ActionType,\n data: Effect.fnUntraced(function* () {\n const result = yield* Operation.invoke(SpaceOperation.Snapshot, {\n db,\n query: Query.select(Filter.type(Type.toEffectSchema(object.jsonSchema))).ast,\n });\n if (result.snapshot) {\n yield* Effect.promise(() =>\n downloadBlob(result.snapshot, createFilename({ parts: [db.spaceId, object.typename], ext: 'json' })),\n );\n }\n }),\n properties: {\n label: ['snapshot by schema label', { ns: meta.id }],\n icon: 'ph--camera--regular',\n disposition: 'list-item',\n },\n },\n ]\n : []),\n ...(createObject\n ? [\n {\n id: getId(SpaceOperation.OpenCreateObject.meta.key),\n type: Node.ActionType,\n data: Effect.fnUntraced(function* () {\n if (inputSchema) {\n yield* Operation.invoke(SpaceOperation.OpenCreateObject, {\n target: db,\n typename: managedCollection ? managedCollection.key : undefined,\n });\n } else {\n const createdObject = yield* createObject({}, { db, capabilities }) as Effect.Effect<\n Obj.Unknown,\n Error,\n never\n >;\n const addResult = yield* Operation.invoke(SpaceOperation.AddObject, {\n target: db,\n hidden: true,\n object: createdObject,\n });\n if (addResult.id) {\n yield* Operation.invoke(LayoutOperation.Open, { subject: [addResult.id] });\n }\n }\n }),\n properties: {\n label: ['create object in system collection label', { ns: meta.id }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.createObject',\n },\n },\n ]\n : []),\n ...(managedCollection\n ? []\n : [\n {\n id: getId(SpaceOperation.RenameObject.meta.key),\n type: Node.ActionType,\n data: (params?: Node.InvokeProps) =>\n Operation.invoke(SpaceOperation.RenameObject, { object, caller: params?.caller }),\n properties: {\n label: ['rename object label', { ns: typename }],\n icon: 'ph--pencil-simple-line--regular',\n disposition: 'list-item',\n // TODO(wittjosiah): Not working.\n // keyBinding: {\n // macos: 'shift+F6',\n // },\n testId: 'spacePlugin.renameObject',\n },\n },\n {\n id: getId(SpaceOperation.RemoveObjects.meta.key),\n type: Node.ActionType,\n data: Effect.fnUntraced(function* () {\n const collection = Graph.getConnections(graph, Obj.getDXN(object).toString(), 'inbound').find(\n (node: Node.Node): node is Node.Node<Collection.Collection> =>\n Obj.instanceOf(Collection.Collection, node.data),\n )?.data;\n yield* Operation.invoke(SpaceOperation.RemoveObjects, { objects: [object], target: collection });\n }),\n properties: {\n label: ['delete object label', { ns: typename }],\n icon: 'ph--trash--regular',\n disposition: 'list-item',\n disabled: !deletable,\n // TODO(wittjosiah): This is a browser shortcut.\n // keyBinding: object instanceof CollectionType ? undefined : 'shift+meta+Backspace',\n testId: 'spacePlugin.deleteObject',\n },\n },\n ]),\n ...(navigable ||\n (!Obj.instanceOf(Collection.Collection, object) &&\n !Obj.instanceOf(Collection.Managed, object) &&\n !Obj.instanceOf(Type.PersistentType, object))\n ? [\n {\n id: getId('copy-link'),\n type: Node.ActionType,\n data: () =>\n Effect.promise(async () => {\n const url = `${shareableLinkOrigin}/${db.spaceId}/${Obj.getDXN(object).toString()}`;\n await navigator.clipboard.writeText(url);\n }),\n properties: {\n label: ['copy link label', { ns: meta.id }],\n icon: 'ph--link--regular',\n disposition: 'list-item',\n testId: 'spacePlugin.copyLink',\n },\n },\n ]\n : []),\n // TODO(wittjosiah): Factor out and apply to all nodes.\n {\n id: getId(LayoutOperation.Expose.meta.key),\n type: Node.ActionType,\n data: () => Operation.invoke(LayoutOperation.Expose, { subject: Obj.getDXN(object).toString() }),\n properties: {\n label: ['expose object label', { ns: meta.id }],\n icon: 'ph--eye--regular',\n disposition: 'heading-list-item',\n testId: 'spacePlugin.exposeObject',\n },\n },\n ];\n\n return actions;\n};\n\n// TODO(wittjosiah): Factor out.\nconst downloadBlob = async (blob: Blob, filename: string) => {\n const url = URL.createObjectURL(blob);\n const a = document.createElement('a');\n a.href = url;\n a.download = filename;\n\n document.body.appendChild(a);\n a.click();\n\n document.body.removeChild(a);\n URL.revokeObjectURL(url);\n};\n\n/**\n * @deprecated This is a temporary solution.\n */\nexport const getNestedObjects = async (\n object: Obj.Unknown,\n resolve: (typename: string) => Record<string, any>,\n): Promise<Obj.Unknown[]> => {\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.Unknown[] = 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: Obj.Unknown,\n resolve: (typename: string) => Record<string, any>,\n newDb: Database.Database,\n): Promise<Obj.Unknown> => {\n const schema = Obj.getSchema(object);\n const typename = schema ? (Type.getTypename(schema) ?? Expando.Expando.typename) : Expando.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, db: newDb, newId: true });\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["Effect", "LayoutOperation", "SpaceState", "isSpace", "Filter", "Obj", "Query", "Ref", "Type", "invariant", "Migrations", "Operation", "Graph", "Node", "ATTENDABLE_PATH_SEPARATOR", "Collection", "Expando", "createFilename", "SPACES", "meta", "id", "COMPOSER_SPACE_LOCK", "SHARED", "getSpaceDisplayName", "space", "personal", "namesCache", "state", "get", "SpaceState", "SPACE_READY", "properties", "name", "length", "ns", "getCollectionGraphNodePartials", "collection", "db", "resolve", "acceptPersistenceClass", "Set", "acceptPersistenceKey", "spaceId", "role", "onTransferStart", "child", "index", "Obj", "change", "c", "objects", "find", "object", "target", "data", "splice", "Ref", "make", "push", "onTransferEnd", "destination", "findIndex", "onCopy", "newObject", "cloneObject", "add", "getSystemCollectionNodePartials", "metadata", "key", "label", "count", "icon", "iconHue", "getSchemaGraphNodePartials", "canDrop", "checkPendingMigration", "SPACE_REQUIRES_MIGRATION", "Migrations", "versionProperty", "targetVersion", "constructSpaceNode", "navigable", "graph", "spacesOrder", "hasPendingMigration", "Collection", "typename", "partials", "instanceOf", "onRearrange", "nextOrder", "Graph", "sortEdges", "Node", "RootId", "map", "mutableOrder", "order", "undefined", "type", "SPACE_TYPE", "cacheable", "description", "hue", "disabled", "disposition", "testId", "source", "isObject", "item", "isSpace", "nodes", "ATTENDABLE_PATH_SEPARATOR", "position", "constructSpaceActions", "migrating", "getId", "actions", "SpaceOperation", "Migrate", "ActionGroupType", "Operation", "invoke", "running", "OpenCreateObject", "ActionType", "Rename", "params", "caller", "keyBinding", "macos", "windows", "createStaticSchemaNode", "schema", "Type", "getTypename", "default", "selectable", "createStaticSchemaActions", "deletable", "AddObject", "views", "initialFormValues", "RenameObject", "fail", "Error", "PersistentType", "RemoveObjects", "sync", "staticRecords", "p", "Snapshot", "fnUntraced", "result", "query", "Query", "select", "Filter", "ast", "snapshot", "tryPromise", "downloadBlob", "createFilename", "parts", "ext", "createObjectNode", "droppable", "managedCollectionChild", "parentCollection", "Managed", "graphProps", "getLabel", "getDXN", "toString", "persistenceClass", "persistenceKey", "filter", "blockInstruction", "instruction", "startsWith", "isGraphNode", "constructObjectActions", "capabilities", "shareableLinkOrigin", "getDatabase", "invariant", "managedCollection", "createObject", "inputSchema", "toEffectSchema", "jsonSchema", "promise", "createdObject", "addResult", "hidden", "LayoutOperation", "Open", "subject", "getConnections", "node", "url", "navigator", "clipboard", "writeText", "Expose", "blob", "filename", "URL", "createObjectURL", "a", "document", "createElement", "href", "download", "body", "appendChild", "click", "removeChild", "revokeObjectURL", "getNestedObjects", "loadReferences", "nested", "Promise", "all", "flat", "newDb", "getSchema", "Expando", "serializer", "content", "serialize", "deserialize", "newId"]
7
+ }