@dxos/plugin-space 0.8.3 → 0.8.4-main.28f8d3d

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 (275) hide show
  1. package/dist/lib/browser/CollectionMain-D2B75XBS.mjs +31 -0
  2. package/dist/lib/browser/CollectionMain-D2B75XBS.mjs.map +7 -0
  3. package/dist/lib/browser/ObjectDetailsPanel-SY6FYTYC.mjs +88 -0
  4. package/dist/lib/browser/ObjectDetailsPanel-SY6FYTYC.mjs.map +7 -0
  5. package/dist/lib/browser/RecordMain-TEBGAVSL.mjs +68 -0
  6. package/dist/lib/browser/RecordMain-TEBGAVSL.mjs.map +7 -0
  7. package/dist/lib/browser/{app-graph-builder-M2RH72VL.mjs → app-graph-builder-VZW75QPJ.mjs} +178 -30
  8. package/dist/lib/browser/app-graph-builder-VZW75QPJ.mjs.map +7 -0
  9. package/dist/lib/browser/{app-graph-serializer-F7ISRRBV.mjs → app-graph-serializer-YPHYVZAP.mjs} +13 -13
  10. package/dist/lib/browser/app-graph-serializer-YPHYVZAP.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-TW7O2EPP.mjs → chunk-3UFG6LQQ.mjs} +59 -5
  12. package/dist/lib/browser/chunk-3UFG6LQQ.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-YMCZR6EZ.mjs → chunk-CBYL62HG.mjs} +5 -4
  14. package/dist/lib/browser/chunk-CBYL62HG.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-7Y4M7GXO.mjs → chunk-DYKFFVN6.mjs} +5 -5
  16. package/dist/lib/browser/{chunk-7Y4M7GXO.mjs.map → chunk-DYKFFVN6.mjs.map} +3 -3
  17. package/dist/lib/browser/{chunk-PTKYMZWO.mjs → chunk-FBCGT5YY.mjs} +2 -2
  18. package/dist/lib/browser/{chunk-NFUKCRGE.mjs → chunk-PSIBVBTA.mjs} +419 -353
  19. package/dist/lib/browser/chunk-PSIBVBTA.mjs.map +7 -0
  20. package/dist/lib/browser/{chunk-BXNL6SDI.mjs → chunk-Q5EEPP3S.mjs} +4 -3
  21. package/dist/lib/browser/chunk-Q5EEPP3S.mjs.map +7 -0
  22. package/dist/lib/browser/{chunk-V24VASAJ.mjs → chunk-SMB4DGYO.mjs} +133 -29
  23. package/dist/lib/browser/chunk-SMB4DGYO.mjs.map +7 -0
  24. package/dist/lib/browser/{chunk-4ZKSFDXM.mjs → chunk-WAXS2ZVX.mjs} +77 -16
  25. package/dist/lib/browser/chunk-WAXS2ZVX.mjs.map +7 -0
  26. package/dist/lib/browser/{identity-created-PI7TKANR.mjs → identity-created-T6ZNVE7S.mjs} +5 -5
  27. package/dist/lib/browser/identity-created-T6ZNVE7S.mjs.map +7 -0
  28. package/dist/lib/browser/index.mjs +108 -17
  29. package/dist/lib/browser/index.mjs.map +3 -3
  30. package/dist/lib/browser/{intent-resolver-RWU6ZE4H.mjs → intent-resolver-TS6CCKST.mjs} +172 -22
  31. package/dist/lib/browser/intent-resolver-TS6CCKST.mjs.map +7 -0
  32. package/dist/lib/browser/meta.json +1 -1
  33. package/dist/lib/browser/{react-root-QIKHSNT2.mjs → react-root-RQGTZ2ZO.mjs} +8 -8
  34. package/dist/lib/browser/{react-root-QIKHSNT2.mjs.map → react-root-RQGTZ2ZO.mjs.map} +2 -2
  35. package/dist/lib/browser/{react-surface-W56UD53I.mjs → react-surface-V3ARS2BP.mjs} +54 -22
  36. package/dist/lib/browser/react-surface-V3ARS2BP.mjs.map +7 -0
  37. package/dist/lib/browser/{schema-defs-WREJNMIC.mjs → schema-defs-5LBA43X5.mjs} +4 -4
  38. package/dist/lib/browser/schema-defs-5LBA43X5.mjs.map +7 -0
  39. package/dist/lib/browser/{schema-tools-ILTVSSS3.mjs → schema-tools-LPL35WOJ.mjs} +13 -13
  40. package/dist/lib/browser/schema-tools-LPL35WOJ.mjs.map +7 -0
  41. package/dist/lib/browser/{settings-K54STC5A.mjs → settings-FLLBP5KI.mjs} +4 -4
  42. package/dist/lib/browser/{spaces-ready-3PDRDHPC.mjs → spaces-ready-FXEP6XEW.mjs} +17 -15
  43. package/dist/lib/browser/spaces-ready-FXEP6XEW.mjs.map +7 -0
  44. package/dist/lib/browser/{state-HRZ4VRXU.mjs → state-K3UBPKYP.mjs} +4 -4
  45. package/dist/lib/{node-esm/state-XQNDCN37.mjs.map → browser/state-K3UBPKYP.mjs.map} +2 -2
  46. package/dist/lib/browser/types/index.mjs +2 -2
  47. package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs +32 -0
  48. package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs.map +7 -0
  49. package/dist/lib/node-esm/ObjectDetailsPanel-3MYLTMXN.mjs +89 -0
  50. package/dist/lib/node-esm/ObjectDetailsPanel-3MYLTMXN.mjs.map +7 -0
  51. package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs +70 -0
  52. package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs.map +7 -0
  53. package/dist/lib/node-esm/{app-graph-builder-BCHVZ4OM.mjs → app-graph-builder-XNVQOJLE.mjs} +178 -30
  54. package/dist/lib/node-esm/app-graph-builder-XNVQOJLE.mjs.map +7 -0
  55. package/dist/lib/node-esm/{app-graph-serializer-TXRGGNP2.mjs → app-graph-serializer-PKVLWV6V.mjs} +13 -13
  56. package/dist/lib/node-esm/app-graph-serializer-PKVLWV6V.mjs.map +7 -0
  57. package/dist/lib/node-esm/{chunk-BSLREHIX.mjs → chunk-7MZ3J3LI.mjs} +4 -3
  58. package/dist/lib/node-esm/chunk-7MZ3J3LI.mjs.map +7 -0
  59. package/dist/lib/node-esm/{chunk-HO7AIKQS.mjs → chunk-CTQMR7E3.mjs} +133 -29
  60. package/dist/lib/node-esm/chunk-CTQMR7E3.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-3CP67AYY.mjs → chunk-FJZNSJC4.mjs} +5 -4
  62. package/dist/lib/node-esm/chunk-FJZNSJC4.mjs.map +7 -0
  63. package/dist/lib/node-esm/{chunk-MSWEFAPD.mjs → chunk-HWNG4MEU.mjs} +2 -2
  64. package/dist/lib/node-esm/{chunk-JBQKU4K5.mjs → chunk-HYIZVPOA.mjs} +77 -16
  65. package/dist/lib/node-esm/chunk-HYIZVPOA.mjs.map +7 -0
  66. package/dist/lib/node-esm/{chunk-GH2FGJXH.mjs → chunk-KLG4Y4GY.mjs} +5 -5
  67. package/dist/lib/node-esm/{chunk-GH2FGJXH.mjs.map → chunk-KLG4Y4GY.mjs.map} +3 -3
  68. package/dist/lib/node-esm/{chunk-LA6AVVH6.mjs → chunk-KYUHPPRN.mjs} +419 -353
  69. package/dist/lib/node-esm/chunk-KYUHPPRN.mjs.map +7 -0
  70. package/dist/lib/node-esm/{chunk-D4QMPPS7.mjs → chunk-S7MKRQHY.mjs} +59 -5
  71. package/dist/lib/node-esm/chunk-S7MKRQHY.mjs.map +7 -0
  72. package/dist/lib/node-esm/{identity-created-35CTAQWI.mjs → identity-created-AL7NNCKH.mjs} +5 -5
  73. package/dist/lib/node-esm/identity-created-AL7NNCKH.mjs.map +7 -0
  74. package/dist/lib/node-esm/index.mjs +108 -17
  75. package/dist/lib/node-esm/index.mjs.map +3 -3
  76. package/dist/lib/node-esm/{intent-resolver-JO6L2VXC.mjs → intent-resolver-W6P27SCF.mjs} +172 -22
  77. package/dist/lib/node-esm/intent-resolver-W6P27SCF.mjs.map +7 -0
  78. package/dist/lib/node-esm/meta.json +1 -1
  79. package/dist/lib/node-esm/{react-root-YFGL3B4J.mjs → react-root-N27KETKT.mjs} +8 -8
  80. package/dist/lib/node-esm/{react-root-YFGL3B4J.mjs.map → react-root-N27KETKT.mjs.map} +2 -2
  81. package/dist/lib/node-esm/{react-surface-CVAPDLEZ.mjs → react-surface-TNPAUQCM.mjs} +54 -22
  82. package/dist/lib/node-esm/react-surface-TNPAUQCM.mjs.map +7 -0
  83. package/dist/lib/node-esm/{schema-defs-4MEJETVX.mjs → schema-defs-TPWZPDCR.mjs} +4 -4
  84. package/dist/lib/node-esm/schema-defs-TPWZPDCR.mjs.map +7 -0
  85. package/dist/lib/node-esm/{schema-tools-SRLCRZ3B.mjs → schema-tools-PJE2FKWH.mjs} +13 -13
  86. package/dist/lib/node-esm/schema-tools-PJE2FKWH.mjs.map +7 -0
  87. package/dist/lib/node-esm/{settings-TD76LTQS.mjs → settings-WKUWY3P6.mjs} +4 -4
  88. package/dist/lib/node-esm/{spaces-ready-FJMGPAVV.mjs → spaces-ready-PQLLIO5W.mjs} +17 -15
  89. package/dist/lib/node-esm/spaces-ready-PQLLIO5W.mjs.map +7 -0
  90. package/dist/lib/node-esm/{state-XQNDCN37.mjs → state-4M5A6OSB.mjs} +4 -4
  91. package/dist/lib/node-esm/state-4M5A6OSB.mjs.map +7 -0
  92. package/dist/lib/node-esm/types/index.mjs +2 -2
  93. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  94. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  95. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
  96. package/dist/types/src/capabilities/capabilities.d.ts +9 -3
  97. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  98. package/dist/types/src/capabilities/identity-created.d.ts.map +1 -1
  99. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  100. package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
  101. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  102. package/dist/types/src/capabilities/schema-defs.d.ts.map +1 -1
  103. package/dist/types/src/capabilities/schema-tools.d.ts.map +1 -1
  104. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  105. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  106. package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
  107. package/dist/types/src/components/CollectionMain.d.ts +1 -0
  108. package/dist/types/src/components/CollectionMain.d.ts.map +1 -1
  109. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +3 -2
  110. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  111. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +1 -1
  112. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  113. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +1 -1
  114. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  115. package/dist/types/src/components/MembersContainer.d.ts.map +1 -1
  116. package/dist/types/src/components/MembersContainer.stories.d.ts +1 -1
  117. package/dist/types/src/components/MembersContainer.stories.d.ts.map +1 -1
  118. package/dist/types/src/components/MenuFooter.d.ts.map +1 -1
  119. package/dist/types/src/components/ObjectDetailsPanel.d.ts +9 -0
  120. package/dist/types/src/components/ObjectDetailsPanel.d.ts.map +1 -0
  121. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +1 -1
  122. package/dist/types/src/components/PersistenceStatus.d.ts.map +1 -1
  123. package/dist/types/src/components/PopoverRenameObject.d.ts +1 -1
  124. package/dist/types/src/components/PopoverRenameObject.d.ts.map +1 -1
  125. package/dist/types/src/components/RecordMain.d.ts +7 -0
  126. package/dist/types/src/components/RecordMain.d.ts.map +1 -0
  127. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  128. package/dist/types/src/components/SpacePresence.stories.d.ts +1 -1
  129. package/dist/types/src/components/SpacePresence.stories.d.ts.map +1 -1
  130. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  131. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +1 -1
  132. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
  133. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts +1 -1
  134. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
  135. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +1 -1
  136. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  137. package/dist/types/src/components/SyncStatus/status.d.ts +5 -5
  138. package/dist/types/src/components/ViewEditor.d.ts +8 -0
  139. package/dist/types/src/components/ViewEditor.d.ts.map +1 -0
  140. package/dist/types/src/components/index.d.ts +11 -1
  141. package/dist/types/src/components/index.d.ts.map +1 -1
  142. package/dist/types/src/events.d.ts +1 -0
  143. package/dist/types/src/events.d.ts.map +1 -1
  144. package/dist/types/src/hooks/useActiveSpace.d.ts.map +1 -1
  145. package/dist/types/src/translations.d.ts +212 -410
  146. package/dist/types/src/translations.d.ts.map +1 -1
  147. package/dist/types/src/types/types.d.ts +82 -2
  148. package/dist/types/src/types/types.d.ts.map +1 -1
  149. package/dist/types/src/util.d.ts +31 -5
  150. package/dist/types/src/util.d.ts.map +1 -1
  151. package/dist/types/tsconfig.tsbuildinfo +1 -1
  152. package/package.json +52 -52
  153. package/src/SpacePlugin.ts +91 -8
  154. package/src/capabilities/app-graph-builder.ts +211 -14
  155. package/src/capabilities/app-graph-serializer.ts +6 -6
  156. package/src/capabilities/capabilities.ts +8 -3
  157. package/src/capabilities/identity-created.ts +3 -5
  158. package/src/capabilities/intent-resolver.ts +123 -13
  159. package/src/capabilities/react-root.tsx +2 -1
  160. package/src/capabilities/react-surface.tsx +69 -18
  161. package/src/capabilities/schema-defs.ts +3 -2
  162. package/src/capabilities/schema-tool.test.ts +1 -1
  163. package/src/capabilities/schema-tools.ts +11 -11
  164. package/src/capabilities/spaces-ready.ts +10 -7
  165. package/src/capabilities/state.ts +3 -2
  166. package/src/components/AwaitingObject.tsx +5 -7
  167. package/src/components/CollectionMain.tsx +2 -0
  168. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +5 -4
  169. package/src/components/CreateDialog/CreateObjectDialog.tsx +32 -27
  170. package/src/components/CreateDialog/CreateObjectPanel.tsx +3 -3
  171. package/src/components/CreateDialog/CreateSpaceDialog.tsx +1 -1
  172. package/src/components/JoinDialog.tsx +1 -1
  173. package/src/components/MembersContainer.stories.tsx +6 -5
  174. package/src/components/MembersContainer.tsx +8 -7
  175. package/src/components/MenuFooter.tsx +2 -3
  176. package/src/components/ObjectDetailsPanel.tsx +77 -0
  177. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +2 -1
  178. package/src/components/PersistenceStatus.tsx +5 -6
  179. package/src/components/PopoverRenameObject.tsx +7 -13
  180. package/src/components/PopoverRenameSpace.tsx +1 -1
  181. package/src/components/RecordMain.tsx +43 -0
  182. package/src/components/SchemaContainer.tsx +2 -2
  183. package/src/components/SpacePluginSettings.tsx +2 -2
  184. package/src/components/SpacePresence.stories.tsx +4 -3
  185. package/src/components/SpacePresence.tsx +7 -7
  186. package/src/components/SpaceSettings/SpaceSettingsContainer.stories.tsx +3 -2
  187. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +6 -6
  188. package/src/components/SyncStatus/SyncStatus.stories.tsx +9 -15
  189. package/src/components/SyncStatus/SyncStatus.tsx +4 -3
  190. package/src/components/SyncStatus/save-tracker.ts +3 -3
  191. package/src/components/SyncStatus/status.ts +4 -4
  192. package/src/components/ViewEditor.tsx +64 -0
  193. package/src/components/index.ts +7 -1
  194. package/src/events.ts +2 -1
  195. package/src/hooks/useActiveSpace.ts +1 -1
  196. package/src/hooks/useInputSurfaceLookup.tsx +1 -1
  197. package/src/translations.ts +75 -11
  198. package/src/types/types.ts +56 -3
  199. package/src/util.tsx +127 -26
  200. package/dist/lib/browser/app-graph-builder-M2RH72VL.mjs.map +0 -7
  201. package/dist/lib/browser/app-graph-serializer-F7ISRRBV.mjs.map +0 -7
  202. package/dist/lib/browser/chunk-4ZKSFDXM.mjs.map +0 -7
  203. package/dist/lib/browser/chunk-BXNL6SDI.mjs.map +0 -7
  204. package/dist/lib/browser/chunk-NFUKCRGE.mjs.map +0 -7
  205. package/dist/lib/browser/chunk-TW7O2EPP.mjs.map +0 -7
  206. package/dist/lib/browser/chunk-V24VASAJ.mjs.map +0 -7
  207. package/dist/lib/browser/chunk-YMCZR6EZ.mjs.map +0 -7
  208. package/dist/lib/browser/identity-created-PI7TKANR.mjs.map +0 -7
  209. package/dist/lib/browser/intent-resolver-RWU6ZE4H.mjs.map +0 -7
  210. package/dist/lib/browser/react-surface-W56UD53I.mjs.map +0 -7
  211. package/dist/lib/browser/schema-defs-WREJNMIC.mjs.map +0 -7
  212. package/dist/lib/browser/schema-tools-ILTVSSS3.mjs.map +0 -7
  213. package/dist/lib/browser/spaces-ready-3PDRDHPC.mjs.map +0 -7
  214. package/dist/lib/browser/state-HRZ4VRXU.mjs.map +0 -7
  215. package/dist/lib/node/app-graph-builder-6LK5HLLE.cjs +0 -364
  216. package/dist/lib/node/app-graph-builder-6LK5HLLE.cjs.map +0 -7
  217. package/dist/lib/node/app-graph-serializer-HKHBNHA3.cjs +0 -89
  218. package/dist/lib/node/app-graph-serializer-HKHBNHA3.cjs.map +0 -7
  219. package/dist/lib/node/chunk-3X4EA4XL.cjs +0 -37
  220. package/dist/lib/node/chunk-3X4EA4XL.cjs.map +0 -7
  221. package/dist/lib/node/chunk-5WLAXYE3.cjs +0 -125
  222. package/dist/lib/node/chunk-5WLAXYE3.cjs.map +0 -7
  223. package/dist/lib/node/chunk-6P2DB4QQ.cjs +0 -36
  224. package/dist/lib/node/chunk-6P2DB4QQ.cjs.map +0 -7
  225. package/dist/lib/node/chunk-DOC5XEZ4.cjs +0 -184
  226. package/dist/lib/node/chunk-DOC5XEZ4.cjs.map +0 -7
  227. package/dist/lib/node/chunk-NCHF433F.cjs +0 -1921
  228. package/dist/lib/node/chunk-NCHF433F.cjs.map +0 -7
  229. package/dist/lib/node/chunk-NL5Y4EDX.cjs +0 -38
  230. package/dist/lib/node/chunk-NL5Y4EDX.cjs.map +0 -7
  231. package/dist/lib/node/chunk-ULJZPATP.cjs +0 -312
  232. package/dist/lib/node/chunk-ULJZPATP.cjs.map +0 -7
  233. package/dist/lib/node/chunk-XHWVT7LW.cjs +0 -572
  234. package/dist/lib/node/chunk-XHWVT7LW.cjs.map +0 -7
  235. package/dist/lib/node/identity-created-FF4WZ2WY.cjs +0 -42
  236. package/dist/lib/node/identity-created-FF4WZ2WY.cjs.map +0 -7
  237. package/dist/lib/node/index.cjs +0 -278
  238. package/dist/lib/node/index.cjs.map +0 -7
  239. package/dist/lib/node/intent-resolver-AV4CMM3Z.cjs +0 -609
  240. package/dist/lib/node/intent-resolver-AV4CMM3Z.cjs.map +0 -7
  241. package/dist/lib/node/meta.json +0 -1
  242. package/dist/lib/node/react-root-RQUU3A45.cjs +0 -51
  243. package/dist/lib/node/react-root-RQUU3A45.cjs.map +0 -7
  244. package/dist/lib/node/react-surface-AZFJLE72.cjs +0 -351
  245. package/dist/lib/node/react-surface-AZFJLE72.cjs.map +0 -7
  246. package/dist/lib/node/schema-defs-OB2X2HBH.cjs +0 -42
  247. package/dist/lib/node/schema-defs-OB2X2HBH.cjs.map +0 -7
  248. package/dist/lib/node/schema-tools-IYREN4IH.cjs +0 -147
  249. package/dist/lib/node/schema-tools-IYREN4IH.cjs.map +0 -7
  250. package/dist/lib/node/settings-P2EQ7VKQ.cjs +0 -38
  251. package/dist/lib/node/settings-P2EQ7VKQ.cjs.map +0 -7
  252. package/dist/lib/node/spaces-ready-DXPOHYV7.cjs +0 -210
  253. package/dist/lib/node/spaces-ready-DXPOHYV7.cjs.map +0 -7
  254. package/dist/lib/node/state-M35DK75Z.cjs +0 -61
  255. package/dist/lib/node/state-M35DK75Z.cjs.map +0 -7
  256. package/dist/lib/node/types/index.cjs +0 -48
  257. package/dist/lib/node/types/index.cjs.map +0 -7
  258. package/dist/lib/node-esm/app-graph-builder-BCHVZ4OM.mjs.map +0 -7
  259. package/dist/lib/node-esm/app-graph-serializer-TXRGGNP2.mjs.map +0 -7
  260. package/dist/lib/node-esm/chunk-3CP67AYY.mjs.map +0 -7
  261. package/dist/lib/node-esm/chunk-BSLREHIX.mjs.map +0 -7
  262. package/dist/lib/node-esm/chunk-D4QMPPS7.mjs.map +0 -7
  263. package/dist/lib/node-esm/chunk-HO7AIKQS.mjs.map +0 -7
  264. package/dist/lib/node-esm/chunk-JBQKU4K5.mjs.map +0 -7
  265. package/dist/lib/node-esm/chunk-LA6AVVH6.mjs.map +0 -7
  266. package/dist/lib/node-esm/identity-created-35CTAQWI.mjs.map +0 -7
  267. package/dist/lib/node-esm/intent-resolver-JO6L2VXC.mjs.map +0 -7
  268. package/dist/lib/node-esm/react-surface-CVAPDLEZ.mjs.map +0 -7
  269. package/dist/lib/node-esm/schema-defs-4MEJETVX.mjs.map +0 -7
  270. package/dist/lib/node-esm/schema-tools-SRLCRZ3B.mjs.map +0 -7
  271. package/dist/lib/node-esm/spaces-ready-FJMGPAVV.mjs.map +0 -7
  272. /package/dist/lib/browser/{chunk-PTKYMZWO.mjs.map → chunk-FBCGT5YY.mjs.map} +0 -0
  273. /package/dist/lib/browser/{settings-K54STC5A.mjs.map → settings-FLLBP5KI.mjs.map} +0 -0
  274. /package/dist/lib/node-esm/{chunk-MSWEFAPD.mjs.map → chunk-HWNG4MEU.mjs.map} +0 -0
  275. /package/dist/lib/node-esm/{settings-TD76LTQS.mjs.map → settings-WKUWY3P6.mjs.map} +0 -0
@@ -1,19 +1,19 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
- translations_default
4
- } from "./chunk-JBQKU4K5.mjs";
3
+ translations
4
+ } from "./chunk-HYIZVPOA.mjs";
5
5
  import {
6
6
  SPACES
7
- } from "./chunk-HO7AIKQS.mjs";
7
+ } from "./chunk-CTQMR7E3.mjs";
8
8
  import {
9
9
  SPACE_TYPE,
10
10
  SpaceAction
11
- } from "./chunk-D4QMPPS7.mjs";
11
+ } from "./chunk-S7MKRQHY.mjs";
12
12
  import {
13
13
  SPACE_PLUGIN
14
- } from "./chunk-MSWEFAPD.mjs";
14
+ } from "./chunk-HWNG4MEU.mjs";
15
15
 
16
- // packages/plugins/plugin-space/src/capabilities/app-graph-serializer.ts
16
+ // src/capabilities/app-graph-serializer.ts
17
17
  import { Capabilities, contributes, createIntent } from "@dxos/app-framework";
18
18
  import { isSpace } from "@dxos/client/echo";
19
19
  import { Obj, Type } from "@dxos/echo";
@@ -25,8 +25,8 @@ var app_graph_serializer_default = (context) => contributes(Capabilities.AppGrap
25
25
  inputType: SPACES,
26
26
  outputType: DIRECTORY_TYPE,
27
27
  serialize: (node) => ({
28
- name: translations_default[0]["en-US"][SPACE_PLUGIN]["spaces label"],
29
- data: translations_default[0]["en-US"][SPACE_PLUGIN]["spaces label"],
28
+ name: translations[0]["en-US"][SPACE_PLUGIN]["spaces label"] ?? "Spaces",
29
+ data: translations[0]["en-US"][SPACE_PLUGIN]["spaces label"] ?? "Spaces",
30
30
  type: DIRECTORY_TYPE
31
31
  }),
32
32
  deserialize: () => {
@@ -36,8 +36,8 @@ var app_graph_serializer_default = (context) => contributes(Capabilities.AppGrap
36
36
  inputType: SPACE_TYPE,
37
37
  outputType: DIRECTORY_TYPE,
38
38
  serialize: (node) => ({
39
- name: node.data.properties.name ?? translations_default[0]["en-US"][SPACE_PLUGIN]["unnamed space label"],
40
- data: node.data.properties.name ?? translations_default[0]["en-US"][SPACE_PLUGIN]["unnamed space label"],
39
+ name: node.data.properties.name ?? translations[0]["en-US"][SPACE_PLUGIN]["unnamed space label"],
40
+ data: node.data.properties.name ?? translations[0]["en-US"][SPACE_PLUGIN]["unnamed space label"],
41
41
  type: DIRECTORY_TYPE
42
42
  }),
43
43
  deserialize: async (data) => {
@@ -53,8 +53,8 @@ var app_graph_serializer_default = (context) => contributes(Capabilities.AppGrap
53
53
  inputType: COLLECTION_TYPE,
54
54
  outputType: DIRECTORY_TYPE,
55
55
  serialize: (node) => ({
56
- name: node.data.name ?? translations_default[0]["en-US"][COLLECTION_TYPE]["object name placeholder"],
57
- data: node.data.name ?? translations_default[0]["en-US"][COLLECTION_TYPE]["object name placeholder"],
56
+ name: node.data.name ?? translations[0]["en-US"][SPACE_PLUGIN]["object name placeholder"],
57
+ data: node.data.name ?? translations[0]["en-US"][SPACE_PLUGIN]["object name placeholder"],
58
58
  type: DIRECTORY_TYPE
59
59
  }),
60
60
  deserialize: async (data, ancestors) => {
@@ -78,4 +78,4 @@ var app_graph_serializer_default = (context) => contributes(Capabilities.AppGrap
78
78
  export {
79
79
  app_graph_serializer_default as default
80
80
  };
81
- //# sourceMappingURL=app-graph-serializer-TXRGGNP2.mjs.map
81
+ //# sourceMappingURL=app-graph-serializer-PKVLWV6V.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/app-graph-serializer.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, type PluginContext, contributes, createIntent } from '@dxos/app-framework';\nimport { isSpace } from '@dxos/client/echo';\nimport { Obj, Type } from '@dxos/echo';\nimport { DataType } from '@dxos/schema';\n\nimport { SPACE_PLUGIN } from '../meta';\nimport { translations } from '../translations';\nimport { SPACE_TYPE, SpaceAction } from '../types';\nimport { SPACES } from '../util';\n\nconst COLLECTION_TYPE = Type.getTypename(DataType.Collection);\n\n// https://stackoverflow.com/a/19016910\nconst DIRECTORY_TYPE = 'text/directory';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.AppGraphSerializer, [\n {\n inputType: SPACES,\n outputType: DIRECTORY_TYPE,\n serialize: (node) => ({\n name: translations[0]['en-US'][SPACE_PLUGIN]['spaces label'] ?? 'Spaces',\n data: translations[0]['en-US'][SPACE_PLUGIN]['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'][SPACE_PLUGIN]['unnamed space label'],\n data: node.data.properties.name ?? translations[0]['en-US'][SPACE_PLUGIN]['unnamed space label'],\n type: DIRECTORY_TYPE,\n }),\n deserialize: async (data) => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const result = await dispatch(createIntent(SpaceAction.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'][SPACE_PLUGIN]['object name placeholder'],\n data: node.data.name ?? translations[0]['en-US'][SPACE_PLUGIN]['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(DataType.Collection, ancestor)) ??\n space?.properties[COLLECTION_TYPE]?.target;\n if (!space || !collection) {\n return;\n }\n\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const result = await dispatch(\n createIntent(SpaceAction.AddObject, {\n target: collection,\n object: Obj.make(DataType.Collection, { name: data.name, objects: [] }),\n }),\n );\n\n return result.data?.object;\n },\n },\n ]);\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;AAIA,SAASA,cAAkCC,aAAaC,oBAAoB;AAC5E,SAASC,eAAe;AACxB,SAASC,KAAKC,YAAY;AAC1B,SAASC,gBAAgB;AAOzB,IAAMC,kBAAkBC,KAAKC,YAAYC,SAASC,UAAU;AAG5D,IAAMC,iBAAiB;AAEvB,IAAA,+BAAe,CAACC,YACdC,YAAYC,aAAaC,oBAAoB;EAC3C;IACEC,WAAWC;IACXC,YAAYP;IACZQ,WAAW,CAACC,UAAU;MACpBC,MAAMC,aAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,cAAA,KAAmB;MAChEC,MAAMF,aAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,cAAA,KAAmB;MAChEE,MAAMd;IACR;IACAe,aAAa,MAAA;IAEb;EACF;EACA;IACEV,WAAWW;IACXT,YAAYP;IACZQ,WAAW,CAACC,UAAU;MACpBC,MAAMD,KAAKI,KAAKI,WAAWP,QAAQC,aAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,qBAAA;MAC1EC,MAAMJ,KAAKI,KAAKI,WAAWP,QAAQC,aAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,qBAAA;MAC1EE,MAAMd;IACR;IACAe,aAAa,OAAOF,SAAAA;AAClB,YAAM,EAAEK,iBAAiBC,SAAQ,IAAKlB,QAAQmB,cAAcjB,aAAakB,gBAAgB;AACzF,YAAMC,SAAS,MAAMH,SAASI,aAAaC,YAAYC,QAAQ;QAAEf,MAAMG,KAAKH;QAAMgB,iBAAiB;MAAK,CAAA,CAAA;AACxG,aAAOJ,OAAOT,MAAMc;IACtB;EACF;EACA;IACEtB,WAAWV;IACXY,YAAYP;IACZQ,WAAW,CAACC,UAAU;MACpBC,MAAMD,KAAKI,KAAKH,QAAQC,aAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,yBAAA;MAC/DC,MAAMJ,KAAKI,KAAKH,QAAQC,aAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,yBAAA;MAC/DE,MAAMd;IACR;IACAe,aAAa,OAAOF,MAAMe,cAAAA;AACxB,YAAMD,QAAQC,UAAUC,KAAKC,OAAAA;AAC7B,YAAMC,aACJH,UAAUI,SAAS,CAACC,aAAaC,IAAIC,WAAWrC,SAASC,YAAYkC,QAAAA,CAAAA,KACrEN,OAAOV,WAAWtB,eAAAA,GAAkByC;AACtC,UAAI,CAACT,SAAS,CAACI,YAAY;AACzB;MACF;AAEA,YAAM,EAAEb,iBAAiBC,SAAQ,IAAKlB,QAAQmB,cAAcjB,aAAakB,gBAAgB;AACzF,YAAMC,SAAS,MAAMH,SACnBI,aAAaC,YAAYa,WAAW;QAClCD,QAAQL;QACRO,QAAQJ,IAAIK,KAAKzC,SAASC,YAAY;UAAEW,MAAMG,KAAKH;UAAM8B,SAAS,CAAA;QAAG,CAAA;MACvE,CAAA,CAAA;AAGF,aAAOlB,OAAOT,MAAMyB;IACtB;EACF;CACD;",
6
+ "names": ["Capabilities", "contributes", "createIntent", "isSpace", "Obj", "Type", "DataType", "COLLECTION_TYPE", "Type", "getTypename", "DataType", "Collection", "DIRECTORY_TYPE", "context", "contributes", "Capabilities", "AppGraphSerializer", "inputType", "SPACES", "outputType", "serialize", "node", "name", "translations", "SPACE_PLUGIN", "data", "type", "deserialize", "SPACE_TYPE", "properties", "dispatchPromise", "dispatch", "getCapability", "IntentDispatcher", "result", "createIntent", "SpaceAction", "Create", "edgeReplication", "space", "ancestors", "find", "isSpace", "collection", "findLast", "ancestor", "Obj", "instanceOf", "target", "AddObject", "object", "make", "objects"]
7
+ }
@@ -1,15 +1,16 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  SPACE_PLUGIN
4
- } from "./chunk-MSWEFAPD.mjs";
4
+ } from "./chunk-HWNG4MEU.mjs";
5
5
 
6
- // packages/plugins/plugin-space/src/capabilities/capabilities.ts
6
+ // src/capabilities/capabilities.ts
7
7
  import { defineCapability } from "@dxos/app-framework";
8
8
  (function(SpaceCapabilities2) {
9
9
  SpaceCapabilities2.State = defineCapability(`${SPACE_PLUGIN}/capability/state`);
10
10
  SpaceCapabilities2.MutableState = defineCapability(`${SPACE_PLUGIN}/capability/state`);
11
11
  SpaceCapabilities2.SettingsSection = defineCapability(`${SPACE_PLUGIN}/capability/settings-section`);
12
12
  SpaceCapabilities2.OnSpaceCreated = defineCapability(`${SPACE_PLUGIN}/capability/on-space-created`);
13
+ SpaceCapabilities2.OnSchemaAdded = defineCapability(`${SPACE_PLUGIN}/capability/on-schema-added`);
13
14
  SpaceCapabilities2.ObjectForm = defineCapability(`${SPACE_PLUGIN}/capability/object-form`);
14
15
  })(SpaceCapabilities || (SpaceCapabilities = {}));
15
16
  var SpaceCapabilities;
@@ -17,4 +18,4 @@ var SpaceCapabilities;
17
18
  export {
18
19
  SpaceCapabilities
19
20
  };
20
- //# sourceMappingURL=chunk-BSLREHIX.mjs.map
21
+ //# sourceMappingURL=chunk-7MZ3J3LI.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/capabilities.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Schema } from 'effect';\n\nimport { type AnyIntentChain, type Label, defineCapability } from '@dxos/app-framework';\nimport { type Space } from '@dxos/react-client/echo';\nimport { type DataType } from '@dxos/schema';\nimport { type DeepReadonly, type Position } from '@dxos/util';\n\nimport { SPACE_PLUGIN } from '../meta';\nimport { type ObjectForm, type PluginState } from '../types';\n\nexport namespace SpaceCapabilities {\n export const State = defineCapability<DeepReadonly<PluginState>>(`${SPACE_PLUGIN}/capability/state`);\n export const MutableState = defineCapability<PluginState>(`${SPACE_PLUGIN}/capability/state`);\n\n export type SettingsSection = { id: string; label: Label; position?: Position };\n export const SettingsSection = defineCapability<SettingsSection>(`${SPACE_PLUGIN}/capability/settings-section`);\n\n export type OnSpaceCreated = (params: { space: Space; rootCollection: DataType.Collection }) => AnyIntentChain;\n export const OnSpaceCreated = defineCapability<OnSpaceCreated>(`${SPACE_PLUGIN}/capability/on-space-created`);\n\n export type OnSchemaAdded = (params: { space: Space; schema: Schema.Schema.AnyNoContext }) => AnyIntentChain;\n export const OnSchemaAdded = defineCapability<OnSchemaAdded>(`${SPACE_PLUGIN}/capability/on-schema-added`);\n\n export const ObjectForm = defineCapability<ObjectForm<any>>(`${SPACE_PLUGIN}/capability/object-form`);\n}\n"],
5
+ "mappings": ";;;;;;AAMA,SAA0CA,wBAAwB;UAQjDC,oBAAAA;qBACFC,QAAQC,iBAA4C,GAAGC,YAAAA,mBAA+B;qBACtFC,eAAeF,iBAA8B,GAAGC,YAAAA,mBAA+B;qBAG/EE,kBAAkBH,iBAAkC,GAAGC,YAAAA,8BAA0C;qBAGjGG,iBAAiBJ,iBAAiC,GAAGC,YAAAA,8BAA0C;qBAG/FI,gBAAgBL,iBAAgC,GAAGC,YAAAA,6BAAyC;qBAE5FK,aAAaN,iBAAkC,GAAGC,YAAAA,yBAAqC;AACtG,GAdiBH,sBAAAA,oBAAAA,CAAAA,EAAAA;;",
6
+ "names": ["defineCapability", "SpaceCapabilities", "State", "defineCapability", "SPACE_PLUGIN", "MutableState", "SettingsSection", "OnSpaceCreated", "OnSchemaAdded", "ObjectForm"]
7
+ }
@@ -2,24 +2,24 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  SPACE_TYPE,
4
4
  SpaceAction
5
- } from "./chunk-D4QMPPS7.mjs";
5
+ } from "./chunk-S7MKRQHY.mjs";
6
6
  import {
7
7
  SPACE_PLUGIN
8
- } from "./chunk-MSWEFAPD.mjs";
8
+ } from "./chunk-HWNG4MEU.mjs";
9
9
 
10
- // packages/plugins/plugin-space/src/util.tsx
10
+ // src/util.tsx
11
11
  import { Rx } from "@effect-rx/rx-react";
12
12
  import { pipe } from "effect";
13
- import { chain, createIntent, LayoutAction } from "@dxos/app-framework";
13
+ import { LayoutAction, chain, createIntent } from "@dxos/app-framework";
14
14
  import { Obj, Ref, Type } from "@dxos/echo";
15
15
  import { EXPANDO_TYPENAME } from "@dxos/echo-schema";
16
16
  import { invariant } from "@dxos/invariant";
17
17
  import { Migrations } from "@dxos/migrations";
18
18
  import { ACTION_GROUP_TYPE, ACTION_TYPE, isGraphNode } from "@dxos/plugin-graph";
19
- import { fullyQualifiedId, getSpace, SpaceState, isSpace } from "@dxos/react-client/echo";
19
+ import { SpaceState, fullyQualifiedId, getSpace, isSpace } from "@dxos/react-client/echo";
20
20
  import { ATTENDABLE_PATH_SEPARATOR } from "@dxos/react-ui-attention";
21
21
  import { DataType } from "@dxos/schema";
22
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/util.tsx";
22
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/util.tsx";
23
23
  var SPACES = `${SPACE_PLUGIN}-spaces`;
24
24
  var COMPOSER_SPACE_LOCK = "dxos.org/plugin/space/lock";
25
25
  var SHARED = "shared-spaces";
@@ -102,12 +102,34 @@ var getQueryCollectionNodePartials = ({ collection, space, resolve }) => {
102
102
  }
103
103
  };
104
104
  };
105
+ var getSchemaGraphNodePartials = () => {
106
+ return {
107
+ role: "branch",
108
+ canDrop: () => false
109
+ };
110
+ };
111
+ var getViewGraphNodePartials = ({ view, resolve }) => {
112
+ const presentation = view.presentation.target;
113
+ const typename = presentation ? Obj.getTypename(presentation) : void 0;
114
+ const metadata = typename ? resolve(typename) : {};
115
+ return {
116
+ label: view.name || [
117
+ "object name placeholder",
118
+ {
119
+ ns: typename,
120
+ default: "New view"
121
+ }
122
+ ],
123
+ icon: metadata.icon,
124
+ canDrop: () => false
125
+ };
126
+ };
105
127
  var checkPendingMigration = (space) => {
106
128
  return space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION || space.state.get() === SpaceState.SPACE_READY && !!Migrations.versionProperty && space.properties[Migrations.versionProperty] !== Migrations.targetVersion;
107
129
  };
108
130
  var constructSpaceNode = ({ space, navigable = false, personal, namesCache, resolve }) => {
109
131
  const hasPendingMigration = checkPendingMigration(space);
110
- const collection = space.state.get() === SpaceState.SPACE_READY && space.properties[Type.getTypename(DataType.Collection)]?.target;
132
+ const collection = space.state.get() === SpaceState.SPACE_READY && space.properties[DataType.Collection.typename]?.target;
111
133
  const partials = space.state.get() === SpaceState.SPACE_READY && Obj.instanceOf(DataType.Collection, collection) ? getCollectionGraphNodePartials({
112
134
  collection,
113
135
  space,
@@ -275,15 +297,79 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
275
297
  }
276
298
  return actions;
277
299
  };
278
- var createObjectNode = ({ space, object, droppable = true, navigable = false, resolve }) => {
300
+ var createStaticSchemaNode = ({ schema, space }) => {
301
+ return {
302
+ id: `${space.id}/${Type.getTypename(schema)}`,
303
+ type: `${SPACE_PLUGIN}/static-schema`,
304
+ data: schema,
305
+ properties: {
306
+ label: [
307
+ "typename label",
308
+ {
309
+ ns: Type.getTypename(schema),
310
+ default: Type.getTypename(schema)
311
+ }
312
+ ],
313
+ icon: "ph--database--regular",
314
+ role: "branch",
315
+ canDrop: () => false,
316
+ space
317
+ }
318
+ };
319
+ };
320
+ var createStaticSchemaActions = ({ schema, space, deletable }) => {
321
+ const getId = (id) => `${space.id}/${Type.getTypename(schema)}/${id}`;
322
+ const actions = [
323
+ {
324
+ id: getId(SpaceAction.RenameObject._tag),
325
+ type: ACTION_TYPE,
326
+ data: async (params) => {
327
+ throw new Error("Not implemented");
328
+ },
329
+ properties: {
330
+ label: [
331
+ "rename object label",
332
+ {
333
+ ns: Type.getTypename(DataType.StoredSchema)
334
+ }
335
+ ],
336
+ icon: "ph--pencil-simple-line--regular",
337
+ disabled: true,
338
+ disposition: "list-item",
339
+ testId: "spacePlugin.renameObject"
340
+ }
341
+ },
342
+ {
343
+ id: getId(SpaceAction.RemoveObjects._tag),
344
+ type: ACTION_TYPE,
345
+ data: async () => {
346
+ const index = space.properties.staticRecords.findIndex((typename) => typename === Type.getTypename(schema));
347
+ if (index > -1) {
348
+ space.properties.staticRecords.splice(index, 1);
349
+ }
350
+ },
351
+ properties: {
352
+ label: [
353
+ "delete object label",
354
+ {
355
+ ns: Type.getTypename(DataType.StoredSchema)
356
+ }
357
+ ],
358
+ icon: "ph--trash--regular",
359
+ disposition: "list-item",
360
+ disabled: !deletable,
361
+ testId: "spacePlugin.deleteObject"
362
+ }
363
+ }
364
+ ];
365
+ return actions;
366
+ };
367
+ var createObjectNode = ({ space, object, disposition, droppable = true, navigable = false, resolve }) => {
279
368
  const type = Obj.getTypename(object);
280
369
  if (!type) {
281
- return void 0;
370
+ return null;
282
371
  }
283
372
  const metadata = resolve(type);
284
- if (Object.keys(metadata).length === 0) {
285
- return void 0;
286
- }
287
373
  const partials = Obj.instanceOf(DataType.Collection, object) ? getCollectionGraphNodePartials({
288
374
  collection: object,
289
375
  space,
@@ -292,7 +378,18 @@ var createObjectNode = ({ space, object, droppable = true, navigable = false, re
292
378
  collection: object,
293
379
  space,
294
380
  resolve
381
+ }) : Obj.instanceOf(DataType.StoredSchema, object) ? getSchemaGraphNodePartials() : Obj.instanceOf(DataType.View, object) ? getViewGraphNodePartials({
382
+ view: object,
383
+ resolve
295
384
  }) : metadata.graphProps;
385
+ const label = object.name || Obj.getLabel(object) || // TODO(wittjosiah): Remove metadata labels.
386
+ metadata.label?.(object) || [
387
+ "object name placeholder",
388
+ {
389
+ ns: type,
390
+ default: "New item"
391
+ }
392
+ ];
296
393
  return {
297
394
  id: fullyQualifiedId(object),
298
395
  type,
@@ -303,15 +400,9 @@ var createObjectNode = ({ space, object, droppable = true, navigable = false, re
303
400
  ],
304
401
  data: object,
305
402
  properties: {
306
- // TODO(burdon): Use annotation to get the name field.
307
- label: metadata.label?.(object) || object.name || [
308
- "object name placeholder",
309
- {
310
- ns: type,
311
- default: "New object"
312
- }
313
- ],
403
+ label,
314
404
  icon: metadata.icon ?? "ph--placeholder--regular",
405
+ disposition,
315
406
  testId: "spacePlugin.object",
316
407
  persistenceClass: "echo",
317
408
  persistenceKey: space?.id,
@@ -322,17 +413,27 @@ var createObjectNode = ({ space, object, droppable = true, navigable = false, re
322
413
  }
323
414
  };
324
415
  };
325
- var constructObjectActions = ({ object, graph, dispatch, objectForms, navigable = false }) => {
416
+ var constructObjectActions = ({ object, graph, dispatch, objectForms, deletable = true, navigable = false }) => {
326
417
  const space = getSpace(object);
327
418
  invariant(space, "Space not found", {
328
419
  F: __dxlog_file,
329
- L: 398,
420
+ L: 498,
330
421
  S: void 0,
331
422
  A: [
332
423
  "space",
333
424
  "'Space not found'"
334
425
  ]
335
426
  });
427
+ const typename = Obj.getTypename(object);
428
+ invariant(typename, "Object has no typename", {
429
+ F: __dxlog_file,
430
+ L: 500,
431
+ S: void 0,
432
+ A: [
433
+ "typename",
434
+ "'Object has no typename'"
435
+ ]
436
+ });
336
437
  const getId = (id) => `${id}/${fullyQualifiedId(object)}`;
337
438
  const queryCollection = Obj.instanceOf(DataType.QueryCollection, object) ? object : void 0;
338
439
  const matchingObjectForm = queryCollection ? objectForms.find((form) => Type.getTypename(form.objectSchema) === queryCollection.query.typename) : void 0;
@@ -404,9 +505,9 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, navigable
404
505
  },
405
506
  properties: {
406
507
  label: [
407
- Obj.instanceOf(DataType.Collection, object) ? "rename collection label" : "rename object label",
508
+ "rename object label",
408
509
  {
409
- ns: SPACE_PLUGIN
510
+ ns: typename
410
511
  }
411
512
  ],
412
513
  icon: "ph--pencil-simple-line--regular",
@@ -432,19 +533,20 @@ var constructObjectActions = ({ object, graph, dispatch, objectForms, navigable
432
533
  },
433
534
  properties: {
434
535
  label: [
435
- Obj.instanceOf(DataType.Collection, object) ? "delete collection label" : "delete object label",
536
+ "delete object label",
436
537
  {
437
- ns: SPACE_PLUGIN
538
+ ns: typename
438
539
  }
439
540
  ],
440
541
  icon: "ph--trash--regular",
441
542
  disposition: "list-item",
543
+ disabled: !deletable,
442
544
  // TODO(wittjosiah): This is a browser shortcut.
443
545
  // keyBinding: object instanceof CollectionType ? undefined : 'shift+meta+Backspace',
444
546
  testId: "spacePlugin.deleteObject"
445
547
  }
446
548
  },
447
- ...navigable || !Obj.instanceOf(DataType.Collection, object) && !Obj.instanceOf(DataType.QueryCollection, object) ? [
549
+ ...navigable || !Obj.instanceOf(DataType.Collection, object) && !Obj.instanceOf(DataType.QueryCollection, object) && !Obj.instanceOf(DataType.StoredSchema, object) ? [
448
550
  {
449
551
  id: getId("copy-link"),
450
552
  type: ACTION_TYPE,
@@ -514,7 +616,7 @@ var cloneObject = async (object, resolve, newSpace) => {
514
616
  const serializer = metadata.serializer;
515
617
  invariant(serializer, `No serializer for type: ${typename}`, {
516
618
  F: __dxlog_file,
517
- L: 570,
619
+ L: 671,
518
620
  S: void 0,
519
621
  A: [
520
622
  "serializer",
@@ -539,9 +641,11 @@ export {
539
641
  getSpaceDisplayName,
540
642
  constructSpaceNode,
541
643
  constructSpaceActions,
644
+ createStaticSchemaNode,
645
+ createStaticSchemaActions,
542
646
  createObjectNode,
543
647
  constructObjectActions,
544
648
  getNestedObjects,
545
649
  cloneObject
546
650
  };
547
- //# sourceMappingURL=chunk-HO7AIKQS.mjs.map
651
+ //# sourceMappingURL=chunk-CTQMR7E3.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 { Rx } from '@effect-rx/rx-react';\nimport { pipe } from 'effect';\n\nimport { LayoutAction, type PromiseIntentDispatcher, chain, createIntent } from '@dxos/app-framework';\nimport { Obj, Ref, Type } from '@dxos/echo';\nimport { type AnyEchoObject, EXPANDO_TYPENAME } from '@dxos/echo-schema';\nimport { invariant } from '@dxos/invariant';\nimport { Migrations } from '@dxos/migrations';\nimport {\n ACTION_GROUP_TYPE,\n ACTION_TYPE,\n type ActionData,\n type InvokeParams,\n type Node,\n type NodeArg,\n type ReadableGraph,\n isGraphNode,\n} from '@dxos/plugin-graph';\nimport { type QueryResult, type Space, SpaceState, fullyQualifiedId, getSpace, isSpace } from '@dxos/react-client/echo';\nimport { ATTENDABLE_PATH_SEPARATOR } from '@dxos/react-ui-attention';\nimport { type TreeData } from '@dxos/react-ui-list';\nimport { DataType } from '@dxos/schema';\n\nimport { SPACE_PLUGIN } from './meta';\nimport { type ObjectForm, SPACE_TYPE, SpaceAction } from './types';\n\nexport const SPACES = `${SPACE_PLUGIN}-spaces`;\nexport const COMPOSER_SPACE_LOCK = 'dxos.org/plugin/space/lock';\n// TODO(wittjosiah): Remove.\nexport const SHARED = 'shared-spaces';\n\n/**\n * Convert a query result to an Rx value of the objects.\n */\nexport const rxFromQuery = <T extends AnyEchoObject>(query: QueryResult<T>): Rx.Rx<T[]> => {\n return Rx.make((get) => {\n const unsubscribe = query.subscribe((result) => {\n get.setSelf(result.objects);\n });\n\n get.addFinalizer(() => unsubscribe());\n return query.objects;\n });\n};\n\n// TODO(wittjosiah): Factor out? Expose via capability?\nexport const getSpaceDisplayName = (\n space: Space,\n { personal, namesCache = {} }: { personal?: boolean; namesCache?: Record<string, string> } = {},\n): string | [string, { ns: string }] => {\n return space.state.get() === SpaceState.SPACE_READY && (space.properties.name?.length ?? 0) > 0\n ? space.properties.name\n : namesCache[space.id]\n ? namesCache[space.id]\n : personal\n ? ['personal space label', { ns: SPACE_PLUGIN }]\n : ['unnamed space label', { ns: SPACE_PLUGIN }];\n};\n\nconst getCollectionGraphNodePartials = ({\n collection,\n space,\n resolve,\n}: {\n collection: DataType.Collection;\n space: Space;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n return {\n acceptPersistenceClass: new Set(['echo']),\n acceptPersistenceKey: new Set([space.id]),\n role: 'branch',\n onRearrangeChildren: (nextOrder: unknown[]) => {\n // Change on disk.\n collection.objects = nextOrder.filter(Obj.isObject).map(Ref.make);\n },\n onTransferStart: (child: Node<Obj.Any>, index?: number) => {\n // TODO(wittjosiah): Support transfer between spaces.\n // const childSpace = getSpace(child.data);\n // if (space && childSpace && !childSpace.key.equals(space.key)) {\n // // Create clone of child and add to destination space.\n // const newObject = clone(child.data, {\n // // TODO(wittjosiah): This needs to be generalized and not hardcoded here.\n // additional: [\n // child.data.content,\n // ...(child.data.objects ?? []),\n // ...(child.data.objects ?? []).map((object: TypedObject) => object.content),\n // ],\n // });\n // space.db.add(newObject);\n // collection.objects.push(newObject);\n // } else {\n\n // Add child to destination collection.\n // TODO(dmaretskyi): Compare by id.\n if (!collection.objects.find((object) => object.target === child.data)) {\n if (typeof index !== 'undefined') {\n collection.objects.splice(index, 0, Ref.make(child.data));\n } else {\n collection.objects.push(Ref.make(child.data));\n }\n }\n\n // }\n },\n onTransferEnd: (child: Node<Obj.Any>, destination: Node) => {\n // Remove child from origin collection.\n const index = collection.objects.findIndex((object) => object.target === child.data);\n if (index > -1) {\n collection.objects.splice(index, 1);\n }\n\n // TODO(wittjosiah): Support transfer between spaces.\n // const childSpace = getSpace(child.data);\n // const destinationSpace =\n // destination.data instanceof SpaceProxy ? destination.data : getSpace(destination.data);\n // if (destinationSpace && childSpace && !childSpace.key.equals(destinationSpace.key)) {\n // // Mark child as deleted in origin space.\n // childSpace.db.remove(child.data);\n // }\n },\n onCopy: async (child: Node<Obj.Any>, index?: number) => {\n // Create clone of child and add to destination space.\n const newObject = await cloneObject(child.data, resolve, space);\n space.db.add(newObject);\n if (typeof index !== 'undefined') {\n collection.objects.splice(index, 0, Ref.make(newObject));\n } else {\n collection.objects.push(Ref.make(newObject));\n }\n },\n };\n};\n\nconst getQueryCollectionNodePartials = ({\n collection,\n space,\n resolve,\n}: {\n collection: DataType.QueryCollection;\n space: Space;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n return {\n icon: collection.query.typename && resolve(collection.query.typename)?.icon,\n acceptPersistenceClass: new Set(['echo']),\n acceptPersistenceKey: new Set([space.id]),\n role: 'branch',\n canDrop: (source: TreeData) => {\n return (\n isGraphNode(source.item) &&\n Obj.isObject(source.item.data) &&\n Obj.getTypename(source.item.data) === collection.query.typename\n );\n },\n onTransferStart: (child: Node<Obj.Any>, index?: number) => {\n // No-op. Objects are moved into query collections by being removed from their original collection.\n },\n onTransferEnd: (child: Node<Obj.Any>, destination: Node) => {\n // No-op. Objects are moved out of query collections by being added to another collection.\n },\n };\n};\n\nconst getSchemaGraphNodePartials = () => {\n return {\n role: 'branch',\n canDrop: () => false,\n };\n};\n\nconst getViewGraphNodePartials = ({\n view,\n resolve,\n}: {\n view: DataType.View;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const presentation = view.presentation.target;\n const typename = presentation ? Obj.getTypename(presentation) : undefined;\n const metadata = typename ? resolve(typename) : {};\n\n return {\n label: view.name || ['object name placeholder', { ns: typename, default: 'New view' }],\n icon: metadata.icon,\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}: {\n space: Space;\n navigable?: boolean;\n personal?: boolean;\n namesCache?: Record<string, string>;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const hasPendingMigration = checkPendingMigration(space);\n const collection =\n space.state.get() === SpaceState.SPACE_READY && space.properties[DataType.Collection.typename]?.target;\n const partials =\n space.state.get() === SpaceState.SPACE_READY && Obj.instanceOf(DataType.Collection, collection)\n ? getCollectionGraphNodePartials({ collection, space, resolve })\n : {};\n\n return {\n id: space.id,\n type: SPACE_TYPE,\n cacheable: ['label', 'icon', 'role'],\n data: space,\n properties: {\n ...partials,\n label: getSpaceDisplayName(space, { personal, namesCache }),\n description: space.state.get() === SpaceState.SPACE_READY && space.properties.description,\n hue: space.state.get() === SpaceState.SPACE_READY && space.properties.hue,\n icon:\n space.state.get() === SpaceState.SPACE_READY && space.properties.icon\n ? `ph--${space.properties.icon}--regular`\n : undefined,\n disabled: !navigable || space.state.get() !== SpaceState.SPACE_READY || hasPendingMigration,\n testId: 'spacePlugin.space',\n 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: `${SPACE_PLUGIN}/settings`,\n data: null,\n properties: {\n label: ['settings panel label', { ns: SPACE_PLUGIN }],\n icon: 'ph--faders--regular',\n disposition: 'alternate-tree',\n },\n nodes: [\n {\n id: `properties-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${SPACE_PLUGIN}/properties`,\n data: `${SPACE_PLUGIN}/properties`,\n properties: {\n label: ['space settings properties label', { ns: SPACE_PLUGIN }],\n icon: 'ph--sliders--regular',\n position: 'hoist',\n },\n },\n {\n id: `members-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${SPACE_PLUGIN}/members`,\n data: `${SPACE_PLUGIN}/members`,\n properties: {\n label: ['members panel label', { ns: SPACE_PLUGIN }],\n icon: 'ph--users--regular',\n position: 'hoist',\n },\n },\n {\n id: `schema-settings${ATTENDABLE_PATH_SEPARATOR}${space.id}`,\n type: `${SPACE_PLUGIN}/schema`,\n data: `${SPACE_PLUGIN}/schema`,\n properties: {\n label: ['space settings schema label', { ns: SPACE_PLUGIN }],\n icon: 'ph--shapes--regular',\n },\n },\n ],\n },\n ],\n };\n};\n\nexport const constructSpaceActions = ({\n space,\n dispatch,\n personal,\n migrating,\n}: {\n space: Space;\n dispatch: PromiseIntentDispatcher;\n personal?: boolean;\n migrating?: boolean;\n}) => {\n const state = space.state.get();\n const hasPendingMigration = checkPendingMigration(space);\n const getId = (id: string) => `${id}/${space.id}`;\n const actions: NodeArg<ActionData>[] = [];\n\n if (hasPendingMigration) {\n actions.push({\n id: getId(SpaceAction.Migrate._tag),\n type: ACTION_GROUP_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.Migrate, { space }));\n },\n properties: {\n label: ['migrate space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--database--regular',\n disposition: 'list-item-primary',\n disabled: migrating || Migrations.running(space),\n },\n });\n }\n\n if (state === SpaceState.SPACE_READY && !hasPendingMigration) {\n actions.push(\n {\n id: getId(SpaceAction.OpenCreateObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.OpenCreateObject, { target: space }));\n },\n properties: {\n label: ['create object in space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--plus--regular',\n disposition: 'item',\n testId: 'spacePlugin.createObject',\n },\n },\n {\n id: getId(SpaceAction.Rename._tag),\n type: ACTION_TYPE,\n data: async (params?: InvokeParams) => {\n await dispatch(createIntent(SpaceAction.Rename, { space, caller: params?.caller }));\n },\n properties: {\n label: ['rename space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--pencil-simple-line--regular',\n keyBinding: {\n macos: 'shift+F6',\n windows: 'shift+F6',\n },\n },\n },\n );\n }\n\n return actions;\n};\n\nexport const createStaticSchemaNode = ({ schema, space }: { schema: Type.Obj.Any; space: Space }) => {\n return {\n id: `${space.id}/${Type.getTypename(schema)}`,\n type: `${SPACE_PLUGIN}/static-schema`,\n data: schema,\n properties: {\n label: ['typename label', { ns: Type.getTypename(schema), default: Type.getTypename(schema) }],\n icon: 'ph--database--regular',\n role: 'branch',\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: NodeArg<ActionData>[] = [\n {\n id: getId(SpaceAction.RenameObject._tag),\n type: ACTION_TYPE,\n data: async (params?: InvokeParams) => {\n throw new Error('Not implemented');\n },\n properties: {\n label: ['rename object label', { ns: Type.getTypename(DataType.StoredSchema) }],\n icon: 'ph--pencil-simple-line--regular',\n disabled: true,\n disposition: 'list-item',\n testId: 'spacePlugin.renameObject',\n },\n },\n {\n id: getId(SpaceAction.RemoveObjects._tag),\n type: ACTION_TYPE,\n data: async () => {\n const index = space.properties.staticRecords.findIndex(\n (typename: string) => typename === Type.getTypename(schema),\n );\n if (index > -1) {\n space.properties.staticRecords.splice(index, 1);\n }\n },\n properties: {\n label: ['delete object label', { ns: Type.getTypename(DataType.StoredSchema) }],\n icon: 'ph--trash--regular',\n disposition: 'list-item',\n disabled: !deletable,\n testId: 'spacePlugin.deleteObject',\n },\n },\n ];\n\n return actions;\n};\n\nexport const createObjectNode = ({\n space,\n object,\n disposition,\n droppable = true,\n navigable = false,\n resolve,\n}: {\n space: Space;\n object: Obj.Any;\n disposition?: string;\n droppable?: boolean;\n navigable?: boolean;\n resolve: (typename: string) => Record<string, any>;\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(DataType.Collection, object)\n ? getCollectionGraphNodePartials({ collection: object, space, resolve })\n : Obj.instanceOf(DataType.QueryCollection, object)\n ? getQueryCollectionNodePartials({ collection: object, space, resolve })\n : Obj.instanceOf(DataType.StoredSchema, object)\n ? getSchemaGraphNodePartials()\n : Obj.instanceOf(DataType.View, object)\n ? getViewGraphNodePartials({ view: object, resolve })\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 return {\n id: fullyQualifiedId(object),\n type,\n cacheable: ['label', 'icon', 'role'],\n data: object,\n properties: {\n label,\n icon: metadata.icon ?? 'ph--placeholder--regular',\n disposition,\n testId: 'spacePlugin.object',\n persistenceClass: 'echo',\n persistenceKey: space?.id,\n canDrop: (source: TreeData) => {\n return droppable && isGraphNode(source.item) && Obj.isObject(source.item.data);\n },\n ...partials,\n },\n };\n};\n\nexport const constructObjectActions = ({\n object,\n graph,\n dispatch,\n objectForms,\n deletable = true,\n navigable = false,\n}: {\n object: Obj.Any;\n graph: ReadableGraph;\n dispatch: PromiseIntentDispatcher;\n objectForms: ObjectForm<any>[];\n deletable?: boolean;\n navigable?: boolean;\n}) => {\n const space = getSpace(object);\n invariant(space, 'Space not found');\n const typename = Obj.getTypename(object);\n invariant(typename, 'Object has no typename');\n\n const getId = (id: string) => `${id}/${fullyQualifiedId(object)}`;\n\n const queryCollection = Obj.instanceOf(DataType.QueryCollection, object) ? object : undefined;\n const matchingObjectForm = queryCollection\n ? objectForms.find((form) => Type.getTypename(form.objectSchema) === queryCollection.query.typename)\n : undefined;\n\n const actions: NodeArg<ActionData>[] = [\n ...(Obj.instanceOf(DataType.Collection, object)\n ? [\n {\n id: getId(SpaceAction.OpenCreateObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.OpenCreateObject, { target: object }));\n },\n properties: {\n label: ['create object in collection label', { ns: SPACE_PLUGIN }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.createObject',\n },\n },\n ]\n : []),\n ...(matchingObjectForm\n ? [\n {\n id: getId(SpaceAction.OpenCreateObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n if (matchingObjectForm.formSchema) {\n await dispatch(\n createIntent(SpaceAction.OpenCreateObject, {\n target: space,\n typename: queryCollection?.query.typename,\n }),\n );\n } else {\n await dispatch(\n pipe(\n matchingObjectForm.getIntent({}, { space }),\n chain(SpaceAction.AddObject, { target: space, hidden: true }),\n chain(LayoutAction.Open, { part: 'main' }),\n ),\n );\n }\n },\n properties: {\n label: ['create object in smart collection label', { ns: SPACE_PLUGIN }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.createObject',\n },\n },\n ]\n : []),\n {\n id: getId(SpaceAction.RenameObject._tag),\n type: ACTION_TYPE,\n data: async (params?: InvokeParams) => {\n await dispatch(createIntent(SpaceAction.RenameObject, { object, caller: params?.caller }));\n },\n properties: {\n label: ['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(SpaceAction.RemoveObjects._tag),\n type: ACTION_TYPE,\n data: async () => {\n const collection = graph\n .getConnections(fullyQualifiedId(object), 'inbound')\n .find(({ data }) => Obj.instanceOf(DataType.Collection, data))?.data;\n await dispatch(createIntent(SpaceAction.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 ...(navigable ||\n (!Obj.instanceOf(DataType.Collection, object) &&\n !Obj.instanceOf(DataType.QueryCollection, object) &&\n !Obj.instanceOf(DataType.StoredSchema, object))\n ? [\n {\n id: getId('copy-link'),\n type: ACTION_TYPE,\n data: async () => {\n const url = `${window.location.origin}/${space.id}/${fullyQualifiedId(object)}`;\n await navigator.clipboard.writeText(url);\n },\n properties: {\n label: ['copy link label', { ns: SPACE_PLUGIN }],\n icon: 'ph--link--regular',\n 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(LayoutAction.Expose._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(LayoutAction.Expose, { part: 'navigation', subject: fullyQualifiedId(object) }));\n },\n properties: {\n label: ['expose object label', { ns: SPACE_PLUGIN }],\n icon: 'ph--eye--regular',\n disposition: 'heading-list-item',\n testId: 'spacePlugin.exposeObject',\n },\n },\n ];\n\n return actions;\n};\n\n/**\n * @deprecated This is a temporary solution.\n */\nexport const getNestedObjects = async (\n object: Obj.Any,\n resolve: (typename: string) => Record<string, any>,\n): Promise<Obj.Any[]> => {\n const type = Obj.getTypename(object);\n if (!type) {\n return [];\n }\n\n const metadata = resolve(type);\n const loadReferences = metadata?.loadReferences;\n if (typeof loadReferences !== 'function') {\n return [];\n }\n\n const objects: Obj.Any[] = await loadReferences(object);\n const nested = await Promise.all(objects.map((object) => getNestedObjects(object, resolve)));\n return [...objects, ...nested.flat()];\n};\n\n/**\n * @deprecated Workaround for ECHO not supporting clone.\n */\n// TODO(burdon): Remove.\nexport const cloneObject = async (\n object: Type.Expando,\n resolve: (typename: string) => Record<string, any>,\n newSpace: Space,\n): Promise<Type.Expando> => {\n const schema = Obj.getSchema(object);\n const typename = schema ? (Type.getTypename(schema) ?? EXPANDO_TYPENAME) : EXPANDO_TYPENAME;\n const metadata = resolve(typename);\n const serializer = metadata.serializer;\n invariant(serializer, `No serializer for type: ${typename}`);\n const content = await serializer.serialize({ object });\n return serializer.deserialize({ content, space: newSpace, newId: true });\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["Rx", "pipe", "LayoutAction", "chain", "createIntent", "Obj", "Ref", "Type", "EXPANDO_TYPENAME", "invariant", "Migrations", "ACTION_GROUP_TYPE", "ACTION_TYPE", "isGraphNode", "SpaceState", "fullyQualifiedId", "getSpace", "isSpace", "ATTENDABLE_PATH_SEPARATOR", "DataType", "SPACES", "SPACE_PLUGIN", "COMPOSER_SPACE_LOCK", "SHARED", "rxFromQuery", "query", "Rx", "make", "get", "unsubscribe", "subscribe", "result", "setSelf", "objects", "addFinalizer", "getSpaceDisplayName", "space", "personal", "namesCache", "state", "SpaceState", "SPACE_READY", "properties", "name", "length", "id", "ns", "getCollectionGraphNodePartials", "collection", "resolve", "acceptPersistenceClass", "Set", "acceptPersistenceKey", "role", "onRearrangeChildren", "nextOrder", "filter", "Obj", "isObject", "map", "Ref", "onTransferStart", "child", "index", "find", "object", "target", "data", "splice", "push", "onTransferEnd", "destination", "findIndex", "onCopy", "newObject", "cloneObject", "db", "add", "getQueryCollectionNodePartials", "icon", "typename", "canDrop", "source", "isGraphNode", "item", "getTypename", "getSchemaGraphNodePartials", "getViewGraphNodePartials", "view", "presentation", "undefined", "metadata", "label", "default", "checkPendingMigration", "SPACE_REQUIRES_MIGRATION", "Migrations", "versionProperty", "targetVersion", "constructSpaceNode", "navigable", "hasPendingMigration", "DataType", "Collection", "partials", "instanceOf", "type", "SPACE_TYPE", "cacheable", "description", "hue", "disabled", "testId", "isSpace", "nodes", "ATTENDABLE_PATH_SEPARATOR", "disposition", "position", "constructSpaceActions", "dispatch", "migrating", "getId", "actions", "SpaceAction", "Migrate", "_tag", "ACTION_GROUP_TYPE", "createIntent", "running", "OpenCreateObject", "ACTION_TYPE", "Rename", "params", "caller", "keyBinding", "macos", "windows", "createStaticSchemaNode", "schema", "Type", "createStaticSchemaActions", "deletable", "RenameObject", "Error", "StoredSchema", "RemoveObjects", "staticRecords", "createObjectNode", "droppable", "QueryCollection", "View", "graphProps", "getLabel", "fullyQualifiedId", "persistenceClass", "persistenceKey", "constructObjectActions", "graph", "objectForms", "getSpace", "invariant", "queryCollection", "matchingObjectForm", "form", "objectSchema", "formSchema", "pipe", "getIntent", "chain", "AddObject", "hidden", "LayoutAction", "Open", "part", "getConnections", "url", "window", "location", "origin", "navigator", "clipboard", "writeText", "Expose", "subject", "getNestedObjects", "loadReferences", "nested", "Promise", "all", "flat", "newSpace", "getSchema", "EXPANDO_TYPENAME", "serializer", "content", "serialize", "deserialize", "newId"]
7
+ }
@@ -1,19 +1,20 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  SPACE_PLUGIN
4
- } from "./chunk-MSWEFAPD.mjs";
4
+ } from "./chunk-HWNG4MEU.mjs";
5
5
 
6
- // packages/plugins/plugin-space/src/events.ts
7
- import { defineEvent, Events } from "@dxos/app-framework";
6
+ // src/events.ts
7
+ import { Events, defineEvent } from "@dxos/app-framework";
8
8
  (function(SpaceEvents2) {
9
9
  SpaceEvents2.StateReady = Events.createStateEvent(`${SPACE_PLUGIN}/event/state-ready`);
10
10
  SpaceEvents2.SetupSettingsPanel = defineEvent(`${SPACE_PLUGIN}/event/setup-settings-panel`);
11
11
  SpaceEvents2.DefaultSpaceReady = defineEvent(`${SPACE_PLUGIN}/event/default-space-ready`);
12
12
  SpaceEvents2.SpaceCreated = defineEvent(`${SPACE_PLUGIN}/event/space-created`);
13
+ SpaceEvents2.SchemaAdded = defineEvent(`${SPACE_PLUGIN}/event/schema-added`);
13
14
  })(SpaceEvents || (SpaceEvents = {}));
14
15
  var SpaceEvents;
15
16
 
16
17
  export {
17
18
  SpaceEvents
18
19
  };
19
- //# sourceMappingURL=chunk-3CP67AYY.mjs.map
20
+ //# sourceMappingURL=chunk-FJZNSJC4.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/events.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Events, defineEvent } from '@dxos/app-framework';\n\nimport { SPACE_PLUGIN } from './meta';\n\nexport namespace SpaceEvents {\n export const StateReady = Events.createStateEvent(`${SPACE_PLUGIN}/event/state-ready`);\n export const SetupSettingsPanel = defineEvent(`${SPACE_PLUGIN}/event/setup-settings-panel`);\n export const DefaultSpaceReady = defineEvent(`${SPACE_PLUGIN}/event/default-space-ready`);\n export const SpaceCreated = defineEvent(`${SPACE_PLUGIN}/event/space-created`);\n export const SchemaAdded = defineEvent(`${SPACE_PLUGIN}/event/schema-added`);\n}\n"],
5
+ "mappings": ";;;;;;AAIA,SAASA,QAAQC,mBAAmB;UAInBC,cAAAA;eACFC,aAAaC,OAAOC,iBAAiB,GAAGC,YAAAA,oBAAgC;eACxEC,qBAAqBC,YAAY,GAAGF,YAAAA,6BAAyC;eAC7EG,oBAAoBD,YAAY,GAAGF,YAAAA,4BAAwC;eAC3EI,eAAeF,YAAY,GAAGF,YAAAA,sBAAkC;eAChEK,cAAcH,YAAY,GAAGF,YAAAA,qBAAiC;AAC7E,GANiBJ,gBAAAA,cAAAA,CAAAA,EAAAA;;",
6
+ "names": ["Events", "defineEvent", "SpaceEvents", "StateReady", "Events", "createStateEvent", "SPACE_PLUGIN", "SetupSettingsPanel", "defineEvent", "DefaultSpaceReady", "SpaceCreated", "SchemaAdded"]
7
+ }
@@ -1,6 +1,6 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
 
3
- // packages/plugins/plugin-space/src/meta.ts
3
+ // src/meta.ts
4
4
  var SPACE_PLUGIN = "dxos.org/plugin/space";
5
5
  var meta = {
6
6
  id: SPACE_PLUGIN,
@@ -12,4 +12,4 @@ export {
12
12
  SPACE_PLUGIN,
13
13
  meta
14
14
  };
15
- //# sourceMappingURL=chunk-MSWEFAPD.mjs.map
15
+ //# sourceMappingURL=chunk-HWNG4MEU.mjs.map