@dxos/plugin-space 0.8.1-main.ba2dec9 → 0.8.1-staging.31c3ee1

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 (256) hide show
  1. package/dist/lib/browser/{app-graph-builder-MGK5HWPZ.mjs → app-graph-builder-GMFCSOLG.mjs} +33 -6
  2. package/dist/lib/browser/app-graph-builder-GMFCSOLG.mjs.map +7 -0
  3. package/dist/lib/browser/{app-graph-serializer-FOWFLYGU.mjs → app-graph-serializer-DSF2U3A5.mjs} +7 -7
  4. package/dist/lib/browser/{app-graph-serializer-FOWFLYGU.mjs.map → app-graph-serializer-DSF2U3A5.mjs.map} +2 -2
  5. package/dist/lib/browser/{chunk-UDWHTKB5.mjs → chunk-5BDV575R.mjs} +22 -16
  6. package/dist/lib/browser/chunk-5BDV575R.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-ULA2UQJ4.mjs → chunk-AYW4IDRT.mjs} +15 -65
  8. package/dist/lib/browser/chunk-AYW4IDRT.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-PCEP3KQY.mjs → chunk-DVZEJGCK.mjs} +854 -587
  10. package/dist/lib/browser/chunk-DVZEJGCK.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-NU7WDVGN.mjs → chunk-KVRYWFZU.mjs} +3 -3
  12. package/dist/lib/browser/chunk-KVRYWFZU.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-23RVI5FZ.mjs → chunk-LO5UL6RU.mjs} +49 -16
  14. package/dist/lib/browser/chunk-LO5UL6RU.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-PQXZCNAU.mjs → chunk-PTKYMZWO.mjs} +1 -1
  16. package/dist/lib/browser/chunk-PTKYMZWO.mjs.map +7 -0
  17. package/dist/lib/browser/{identity-created-FYGS6TBH.mjs → identity-created-JR7BNXFH.mjs} +3 -3
  18. package/dist/lib/browser/index.mjs +40 -45
  19. package/dist/lib/browser/index.mjs.map +3 -3
  20. package/dist/lib/browser/{intent-resolver-GPNAQ2SG.mjs → intent-resolver-OG62I5IL.mjs} +69 -44
  21. package/dist/lib/browser/intent-resolver-OG62I5IL.mjs.map +7 -0
  22. package/dist/lib/browser/meta.json +1 -1
  23. package/dist/lib/browser/{react-root-4CCSD7TZ.mjs → react-root-VPSIJ6EU.mjs} +6 -6
  24. package/dist/lib/browser/{react-surface-FKMRI3WV.mjs → react-surface-KOSYP574.mjs} +39 -38
  25. package/dist/lib/browser/react-surface-KOSYP574.mjs.map +7 -0
  26. package/dist/lib/browser/{schema-5W3DSY2E.mjs → schema-FHTA26SW.mjs} +3 -3
  27. package/dist/lib/browser/schema-tools-YAXPRIXP.mjs +123 -0
  28. package/dist/lib/browser/schema-tools-YAXPRIXP.mjs.map +7 -0
  29. package/dist/lib/browser/{settings-PHPCXX33.mjs → settings-PJPTJUPE.mjs} +3 -3
  30. package/dist/lib/browser/{spaces-ready-K47RR7N2.mjs → spaces-ready-BSSP7HHG.mjs} +8 -8
  31. package/dist/lib/browser/spaces-ready-BSSP7HHG.mjs.map +7 -0
  32. package/dist/lib/browser/{state-INJ63O57.mjs → state-X7VLCC6E.mjs} +5 -3
  33. package/dist/lib/browser/state-X7VLCC6E.mjs.map +7 -0
  34. package/dist/lib/browser/types/index.mjs +2 -10
  35. package/dist/lib/node/{app-graph-builder-ZIUBXRPA.cjs → app-graph-builder-DPY7AUZE.cjs} +73 -46
  36. package/dist/lib/node/app-graph-builder-DPY7AUZE.cjs.map +7 -0
  37. package/dist/lib/node/{app-graph-serializer-VQOGHKXL.cjs → app-graph-serializer-JELGJUAY.cjs} +21 -21
  38. package/dist/lib/node/{app-graph-serializer-VQOGHKXL.cjs.map → app-graph-serializer-JELGJUAY.cjs.map} +2 -2
  39. package/dist/lib/node/{chunk-WZR6OAN3.cjs → chunk-6P2DB4QQ.cjs} +4 -4
  40. package/dist/lib/node/{chunk-WZR6OAN3.cjs.map → chunk-6P2DB4QQ.cjs.map} +2 -2
  41. package/dist/lib/node/{chunk-QE4GVR6C.cjs → chunk-APYLLIMY.cjs} +919 -657
  42. package/dist/lib/node/chunk-APYLLIMY.cjs.map +7 -0
  43. package/dist/lib/node/{chunk-YZKNRFHU.cjs → chunk-IKIDS6XF.cjs} +10 -10
  44. package/dist/lib/node/chunk-IKIDS6XF.cjs.map +7 -0
  45. package/dist/lib/node/{chunk-U6DYXAR3.cjs → chunk-PU2EYH4E.cjs} +27 -21
  46. package/dist/lib/node/chunk-PU2EYH4E.cjs.map +7 -0
  47. package/dist/lib/node/{chunk-OVGKWJOC.cjs → chunk-TUZWEPGX.cjs} +99 -66
  48. package/dist/lib/node/chunk-TUZWEPGX.cjs.map +7 -0
  49. package/dist/lib/node/{chunk-WAJKBO3J.cjs → chunk-WDEIFDTX.cjs} +19 -73
  50. package/dist/lib/node/chunk-WDEIFDTX.cjs.map +7 -0
  51. package/dist/lib/node/{identity-created-AXI64BLE.cjs → identity-created-XU4HFV2T.cjs} +7 -7
  52. package/dist/lib/node/index.cjs +105 -111
  53. package/dist/lib/node/index.cjs.map +3 -3
  54. package/dist/lib/node/{intent-resolver-ICHHI6I6.cjs → intent-resolver-UMF6MLOH.cjs} +133 -107
  55. package/dist/lib/node/intent-resolver-UMF6MLOH.cjs.map +7 -0
  56. package/dist/lib/node/meta.json +1 -1
  57. package/dist/lib/node/{react-root-TCBTUOOJ.cjs → react-root-ZRFHMM7R.cjs} +12 -12
  58. package/dist/lib/node/{react-surface-JSCCIZS5.cjs → react-surface-72U57CIU.cjs} +78 -76
  59. package/dist/lib/node/react-surface-72U57CIU.cjs.map +7 -0
  60. package/dist/lib/node/{schema-YN7WVFRX.cjs → schema-PPJ5BZ3A.cjs} +7 -7
  61. package/dist/lib/node/schema-tools-BLIMOZYY.cjs +146 -0
  62. package/dist/lib/node/schema-tools-BLIMOZYY.cjs.map +7 -0
  63. package/dist/lib/node/{settings-5QYFWNH7.cjs → settings-WVFP2UEP.cjs} +8 -8
  64. package/dist/lib/node/{spaces-ready-FQNAKR7G.cjs → spaces-ready-7DNZSUOG.cjs} +16 -16
  65. package/dist/lib/node/spaces-ready-7DNZSUOG.cjs.map +7 -0
  66. package/dist/lib/node/{state-57UE3DYE.cjs → state-5KX6WBJH.cjs} +10 -8
  67. package/dist/lib/node/state-5KX6WBJH.cjs.map +7 -0
  68. package/dist/lib/node/types/index.cjs +13 -21
  69. package/dist/lib/node/types/index.cjs.map +2 -2
  70. package/dist/lib/node-esm/{app-graph-builder-TERVM2SL.mjs → app-graph-builder-42IGWRPL.mjs} +33 -6
  71. package/dist/lib/node-esm/app-graph-builder-42IGWRPL.mjs.map +7 -0
  72. package/dist/lib/node-esm/{app-graph-serializer-GZRSWHEN.mjs → app-graph-serializer-FXONFKOE.mjs} +7 -7
  73. package/dist/lib/node-esm/{app-graph-serializer-GZRSWHEN.mjs.map → app-graph-serializer-FXONFKOE.mjs.map} +2 -2
  74. package/dist/lib/node-esm/{chunk-2TQ2AJEZ.mjs → chunk-3ZOUV4DF.mjs} +22 -16
  75. package/dist/lib/node-esm/chunk-3ZOUV4DF.mjs.map +7 -0
  76. package/dist/lib/node-esm/{chunk-TRNZQEEN.mjs → chunk-FC4UHDPL.mjs} +15 -65
  77. package/dist/lib/node-esm/chunk-FC4UHDPL.mjs.map +7 -0
  78. package/dist/lib/node-esm/{chunk-HJCEJNW3.mjs → chunk-HMCIZ7G7.mjs} +854 -587
  79. package/dist/lib/node-esm/chunk-HMCIZ7G7.mjs.map +7 -0
  80. package/dist/lib/node-esm/{chunk-ICCM4YRJ.mjs → chunk-MSWEFAPD.mjs} +1 -1
  81. package/dist/lib/node-esm/chunk-MSWEFAPD.mjs.map +7 -0
  82. package/dist/lib/node-esm/{chunk-6RSVVEPS.mjs → chunk-PIYAWT5N.mjs} +3 -3
  83. package/dist/lib/node-esm/chunk-PIYAWT5N.mjs.map +7 -0
  84. package/dist/lib/node-esm/{chunk-PGH5L7MV.mjs → chunk-ZGLK25WQ.mjs} +49 -16
  85. package/dist/lib/node-esm/chunk-ZGLK25WQ.mjs.map +7 -0
  86. package/dist/lib/node-esm/{identity-created-3CGEXNPO.mjs → identity-created-WJKAS2PV.mjs} +3 -3
  87. package/dist/lib/node-esm/index.mjs +40 -45
  88. package/dist/lib/node-esm/index.mjs.map +3 -3
  89. package/dist/lib/node-esm/{intent-resolver-VR42K5GE.mjs → intent-resolver-67C5MOIE.mjs} +69 -44
  90. package/dist/lib/node-esm/intent-resolver-67C5MOIE.mjs.map +7 -0
  91. package/dist/lib/node-esm/meta.json +1 -1
  92. package/dist/lib/node-esm/{react-root-THJBSTQS.mjs → react-root-XPRWMZGT.mjs} +6 -6
  93. package/dist/lib/node-esm/{react-surface-Z3BBQ5HX.mjs → react-surface-MUE6M34Y.mjs} +39 -38
  94. package/dist/lib/node-esm/react-surface-MUE6M34Y.mjs.map +7 -0
  95. package/dist/lib/node-esm/{schema-LOR2EVGY.mjs → schema-OUZKVYM5.mjs} +3 -3
  96. package/dist/lib/node-esm/schema-tools-IU7EX5A5.mjs +125 -0
  97. package/dist/lib/node-esm/schema-tools-IU7EX5A5.mjs.map +7 -0
  98. package/dist/lib/node-esm/{settings-H6MXTEQM.mjs → settings-FJZPC2TV.mjs} +3 -3
  99. package/dist/lib/node-esm/{spaces-ready-HKAQG5SA.mjs → spaces-ready-7X5PGB2V.mjs} +8 -8
  100. package/dist/lib/node-esm/spaces-ready-7X5PGB2V.mjs.map +7 -0
  101. package/dist/lib/node-esm/{state-VYA6OFHD.mjs → state-Z6E2YTNC.mjs} +5 -3
  102. package/dist/lib/node-esm/state-Z6E2YTNC.mjs.map +7 -0
  103. package/dist/lib/node-esm/types/index.mjs +2 -10
  104. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  105. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  106. package/dist/types/src/capabilities/capabilities.d.ts +4 -3
  107. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  108. package/dist/types/src/capabilities/index.d.ts +1 -1
  109. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -2
  111. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  112. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  113. package/dist/types/src/capabilities/schema-tool.test.d.ts +2 -0
  114. package/dist/types/src/capabilities/schema-tool.test.d.ts.map +1 -0
  115. package/dist/types/src/capabilities/schema-tools.d.ts +13 -0
  116. package/dist/types/src/capabilities/schema-tools.d.ts.map +1 -0
  117. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  118. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  119. package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
  120. package/dist/types/src/components/MembersContainer.d.ts +7 -0
  121. package/dist/types/src/components/MembersContainer.d.ts.map +1 -0
  122. package/dist/types/src/components/MembersContainer.stories.d.ts +8 -0
  123. package/dist/types/src/components/MembersContainer.stories.d.ts.map +1 -0
  124. package/dist/types/src/components/ObjectSettingsContainer/AdvancedObjectSettings.d.ts.map +1 -0
  125. package/dist/types/src/components/ObjectSettingsContainer/BaseObjectSettings.d.ts +8 -0
  126. package/dist/types/src/components/ObjectSettingsContainer/BaseObjectSettings.d.ts.map +1 -0
  127. package/dist/types/src/components/ObjectSettingsContainer/ForeignKeys.d.ts.map +1 -0
  128. package/dist/types/src/components/ObjectSettingsContainer/ObjectSettingsContainer.d.ts +8 -0
  129. package/dist/types/src/components/ObjectSettingsContainer/ObjectSettingsContainer.d.ts.map +1 -0
  130. package/dist/types/src/components/ObjectSettingsContainer/index.d.ts +2 -0
  131. package/dist/types/src/components/ObjectSettingsContainer/index.d.ts.map +1 -0
  132. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  133. package/dist/types/src/components/SpaceSettings/SpacePropertiesForm.d.ts +7 -0
  134. package/dist/types/src/components/SpaceSettings/SpacePropertiesForm.d.ts.map +1 -0
  135. package/dist/types/src/components/SpaceSettings/SpacePropertiesForm.stories.d.ts +7 -0
  136. package/dist/types/src/components/SpaceSettings/SpacePropertiesForm.stories.d.ts.map +1 -0
  137. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts +9 -0
  138. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -0
  139. package/dist/types/src/components/SpaceSettings/index.d.ts +2 -2
  140. package/dist/types/src/components/SpaceSettings/index.d.ts.map +1 -1
  141. package/dist/types/src/components/index.d.ts +2 -2
  142. package/dist/types/src/components/index.d.ts.map +1 -1
  143. package/dist/types/src/events.d.ts +1 -1
  144. package/dist/types/src/events.d.ts.map +1 -1
  145. package/dist/types/src/meta.d.ts +2 -5
  146. package/dist/types/src/meta.d.ts.map +1 -1
  147. package/dist/types/src/translations.d.ts +53 -36
  148. package/dist/types/src/translations.d.ts.map +1 -1
  149. package/dist/types/src/types/thread.d.ts +92 -197
  150. package/dist/types/src/types/thread.d.ts.map +1 -1
  151. package/dist/types/src/types/types.d.ts +10 -0
  152. package/dist/types/src/types/types.d.ts.map +1 -1
  153. package/dist/types/src/util.d.ts +12 -0
  154. package/dist/types/src/util.d.ts.map +1 -1
  155. package/package.json +44 -39
  156. package/src/SpacePlugin.tsx +12 -11
  157. package/src/capabilities/app-graph-builder.ts +20 -0
  158. package/src/capabilities/app-graph-serializer.ts +2 -2
  159. package/src/capabilities/capabilities.ts +3 -3
  160. package/src/capabilities/index.ts +1 -0
  161. package/src/capabilities/intent-resolver.ts +66 -38
  162. package/src/capabilities/react-surface.tsx +30 -28
  163. package/src/capabilities/schema-tool.test.ts +45 -0
  164. package/src/capabilities/schema-tools.ts +124 -0
  165. package/src/capabilities/spaces-ready.ts +3 -3
  166. package/src/capabilities/state.ts +2 -0
  167. package/src/components/CreateDialog/CreateObjectDialog.tsx +3 -6
  168. package/src/components/CreateDialog/CreateObjectPanel.tsx +6 -6
  169. package/src/components/JoinDialog.tsx +43 -27
  170. package/src/components/MembersContainer.stories.tsx +34 -0
  171. package/src/components/MembersContainer.tsx +255 -0
  172. package/src/components/{AdvancedObjectSettings → ObjectSettingsContainer}/AdvancedObjectSettings.tsx +2 -2
  173. package/src/components/ObjectSettingsContainer/BaseObjectSettings.tsx +47 -0
  174. package/src/components/ObjectSettingsContainer/ObjectSettingsContainer.tsx +36 -0
  175. package/src/components/ObjectSettingsContainer/index.ts +5 -0
  176. package/src/components/PopoverRenameObject.tsx +1 -1
  177. package/src/components/SpacePresence.tsx +25 -23
  178. package/src/components/SpaceSettings/{SpaceSettingsPanel.stories.tsx → SpacePropertiesForm.stories.tsx} +6 -6
  179. package/src/components/SpaceSettings/SpacePropertiesForm.tsx +136 -0
  180. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +63 -0
  181. package/src/components/SpaceSettings/index.ts +2 -2
  182. package/src/components/SyncStatus/SyncStatus.tsx +1 -1
  183. package/src/components/SyncStatus/save-tracker.ts +5 -5
  184. package/src/components/index.ts +2 -2
  185. package/src/events.ts +2 -2
  186. package/src/meta.ts +2 -2
  187. package/src/translations.ts +21 -12
  188. package/src/types/thread.ts +2 -56
  189. package/src/types/types.ts +15 -6
  190. package/src/util.tsx +30 -9
  191. package/dist/lib/browser/app-graph-builder-MGK5HWPZ.mjs.map +0 -7
  192. package/dist/lib/browser/chunk-23RVI5FZ.mjs.map +0 -7
  193. package/dist/lib/browser/chunk-NU7WDVGN.mjs.map +0 -7
  194. package/dist/lib/browser/chunk-PCEP3KQY.mjs.map +0 -7
  195. package/dist/lib/browser/chunk-PQXZCNAU.mjs.map +0 -7
  196. package/dist/lib/browser/chunk-UDWHTKB5.mjs.map +0 -7
  197. package/dist/lib/browser/chunk-ULA2UQJ4.mjs.map +0 -7
  198. package/dist/lib/browser/intent-resolver-GPNAQ2SG.mjs.map +0 -7
  199. package/dist/lib/browser/react-surface-FKMRI3WV.mjs.map +0 -7
  200. package/dist/lib/browser/spaces-ready-K47RR7N2.mjs.map +0 -7
  201. package/dist/lib/browser/state-INJ63O57.mjs.map +0 -7
  202. package/dist/lib/node/app-graph-builder-ZIUBXRPA.cjs.map +0 -7
  203. package/dist/lib/node/chunk-OVGKWJOC.cjs.map +0 -7
  204. package/dist/lib/node/chunk-QE4GVR6C.cjs.map +0 -7
  205. package/dist/lib/node/chunk-U6DYXAR3.cjs.map +0 -7
  206. package/dist/lib/node/chunk-WAJKBO3J.cjs.map +0 -7
  207. package/dist/lib/node/chunk-YZKNRFHU.cjs.map +0 -7
  208. package/dist/lib/node/intent-resolver-ICHHI6I6.cjs.map +0 -7
  209. package/dist/lib/node/react-surface-JSCCIZS5.cjs.map +0 -7
  210. package/dist/lib/node/spaces-ready-FQNAKR7G.cjs.map +0 -7
  211. package/dist/lib/node/state-57UE3DYE.cjs.map +0 -7
  212. package/dist/lib/node-esm/app-graph-builder-TERVM2SL.mjs.map +0 -7
  213. package/dist/lib/node-esm/chunk-2TQ2AJEZ.mjs.map +0 -7
  214. package/dist/lib/node-esm/chunk-6RSVVEPS.mjs.map +0 -7
  215. package/dist/lib/node-esm/chunk-HJCEJNW3.mjs.map +0 -7
  216. package/dist/lib/node-esm/chunk-ICCM4YRJ.mjs.map +0 -7
  217. package/dist/lib/node-esm/chunk-PGH5L7MV.mjs.map +0 -7
  218. package/dist/lib/node-esm/chunk-TRNZQEEN.mjs.map +0 -7
  219. package/dist/lib/node-esm/intent-resolver-VR42K5GE.mjs.map +0 -7
  220. package/dist/lib/node-esm/react-surface-Z3BBQ5HX.mjs.map +0 -7
  221. package/dist/lib/node-esm/spaces-ready-HKAQG5SA.mjs.map +0 -7
  222. package/dist/lib/node-esm/state-VYA6OFHD.mjs.map +0 -7
  223. package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts.map +0 -1
  224. package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts.map +0 -1
  225. package/dist/types/src/components/AdvancedObjectSettings/index.d.ts +0 -2
  226. package/dist/types/src/components/AdvancedObjectSettings/index.d.ts.map +0 -1
  227. package/dist/types/src/components/BaseObjectSettings.d.ts +0 -7
  228. package/dist/types/src/components/BaseObjectSettings.d.ts.map +0 -1
  229. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts +0 -11
  230. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts.map +0 -1
  231. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.stories.d.ts +0 -7
  232. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.stories.d.ts.map +0 -1
  233. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts +0 -7
  234. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts.map +0 -1
  235. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.stories.d.ts +0 -7
  236. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.stories.d.ts.map +0 -1
  237. package/src/components/AdvancedObjectSettings/index.ts +0 -5
  238. package/src/components/BaseObjectSettings.tsx +0 -40
  239. package/src/components/SpaceSettings/SpaceSettingsDialog.stories.tsx +0 -43
  240. package/src/components/SpaceSettings/SpaceSettingsDialog.tsx +0 -120
  241. package/src/components/SpaceSettings/SpaceSettingsPanel.tsx +0 -83
  242. /package/dist/lib/browser/{identity-created-FYGS6TBH.mjs.map → identity-created-JR7BNXFH.mjs.map} +0 -0
  243. /package/dist/lib/browser/{react-root-4CCSD7TZ.mjs.map → react-root-VPSIJ6EU.mjs.map} +0 -0
  244. /package/dist/lib/browser/{schema-5W3DSY2E.mjs.map → schema-FHTA26SW.mjs.map} +0 -0
  245. /package/dist/lib/browser/{settings-PHPCXX33.mjs.map → settings-PJPTJUPE.mjs.map} +0 -0
  246. /package/dist/lib/node/{identity-created-AXI64BLE.cjs.map → identity-created-XU4HFV2T.cjs.map} +0 -0
  247. /package/dist/lib/node/{react-root-TCBTUOOJ.cjs.map → react-root-ZRFHMM7R.cjs.map} +0 -0
  248. /package/dist/lib/node/{schema-YN7WVFRX.cjs.map → schema-PPJ5BZ3A.cjs.map} +0 -0
  249. /package/dist/lib/node/{settings-5QYFWNH7.cjs.map → settings-WVFP2UEP.cjs.map} +0 -0
  250. /package/dist/lib/node-esm/{identity-created-3CGEXNPO.mjs.map → identity-created-WJKAS2PV.mjs.map} +0 -0
  251. /package/dist/lib/node-esm/{react-root-THJBSTQS.mjs.map → react-root-XPRWMZGT.mjs.map} +0 -0
  252. /package/dist/lib/node-esm/{schema-LOR2EVGY.mjs.map → schema-OUZKVYM5.mjs.map} +0 -0
  253. /package/dist/lib/node-esm/{settings-H6MXTEQM.mjs.map → settings-FJZPC2TV.mjs.map} +0 -0
  254. /package/dist/types/src/components/{AdvancedObjectSettings → ObjectSettingsContainer}/AdvancedObjectSettings.d.ts +0 -0
  255. /package/dist/types/src/components/{AdvancedObjectSettings → ObjectSettingsContainer}/ForeignKeys.d.ts +0 -0
  256. /package/src/components/{AdvancedObjectSettings → ObjectSettingsContainer}/ForeignKeys.tsx +0 -0
@@ -2,17 +2,18 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  CollectionType,
4
4
  SpaceAction
5
- } from "./chunk-TRNZQEEN.mjs";
5
+ } from "./chunk-FC4UHDPL.mjs";
6
6
  import {
7
7
  SPACE_PLUGIN
8
- } from "./chunk-ICCM4YRJ.mjs";
8
+ } from "./chunk-MSWEFAPD.mjs";
9
9
 
10
10
  // packages/plugins/plugin-space/src/util.tsx
11
11
  import { createIntent, LayoutAction } from "@dxos/app-framework";
12
- import { EXPANDO_TYPENAME, getObjectAnnotation, getTypename } from "@dxos/echo-schema";
12
+ import { EXPANDO_TYPENAME, getTypeAnnotation, getTypename } from "@dxos/echo-schema";
13
13
  import { invariant } from "@dxos/invariant";
14
14
  import { getSchema, isReactiveObject, makeRef } from "@dxos/live-object";
15
15
  import { Migrations } from "@dxos/migrations";
16
+ import { ATTENDABLE_PATH_SEPARATOR } from "@dxos/plugin-deck/types";
16
17
  import { ACTION_GROUP_TYPE, ACTION_TYPE, cleanup, getGraph, memoize } from "@dxos/plugin-graph";
17
18
  import { Filter, fullyQualifiedId, getSpace, isEchoObject, isSpace, SpaceState } from "@dxos/react-client/echo";
18
19
  var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/util.tsx";
@@ -46,7 +47,6 @@ var getSpaceDisplayName = (space, { personal, namesCache = {} } = {}) => {
46
47
  };
47
48
  var getCollectionGraphNodePartials = ({ navigable, collection, space, resolve }) => {
48
49
  return {
49
- disabled: !navigable,
50
50
  acceptPersistenceClass: /* @__PURE__ */ new Set([
51
51
  "echo"
52
52
  ]),
@@ -115,7 +115,39 @@ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, reso
115
115
  icon: space.state.get() === SpaceState.SPACE_READY && space.properties.icon ? `ph--${space.properties.icon}--regular` : void 0,
116
116
  disabled: !navigable || space.state.get() !== SpaceState.SPACE_READY || hasPendingMigration,
117
117
  testId: "spacePlugin.space"
118
- }
118
+ },
119
+ nodes: [
120
+ {
121
+ id: `${space.id}${ATTENDABLE_PATH_SEPARATOR}members`,
122
+ type: `${SPACE_PLUGIN}/members`,
123
+ data: space,
124
+ properties: {
125
+ label: [
126
+ "members panel label",
127
+ {
128
+ ns: SPACE_PLUGIN
129
+ }
130
+ ],
131
+ icon: "ph--users--regular",
132
+ disposition: "hidden"
133
+ }
134
+ },
135
+ {
136
+ id: `${space.id}${ATTENDABLE_PATH_SEPARATOR}settings`,
137
+ type: `${SPACE_PLUGIN}/settings`,
138
+ data: space,
139
+ properties: {
140
+ label: [
141
+ "settings panel label",
142
+ {
143
+ ns: SPACE_PLUGIN
144
+ }
145
+ ],
146
+ icon: "ph--gear--regular",
147
+ disposition: "hidden"
148
+ }
149
+ }
150
+ ]
119
151
  };
120
152
  };
121
153
  var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
@@ -140,7 +172,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
140
172
  }
141
173
  ],
142
174
  icon: "ph--database--regular",
143
- disposition: "toolbar",
175
+ disposition: "list-item-primary",
144
176
  disabled: migrating || Migrations.running(space)
145
177
  }
146
178
  });
@@ -186,7 +218,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
186
218
  ],
187
219
  icon: "ph--users--regular",
188
220
  disabled: locked,
189
- disposition: "toolbar",
221
+ disposition: "list-item-primary",
190
222
  iconOnly: false,
191
223
  variant: "default",
192
224
  testId: "spacePlugin.shareSpace",
@@ -297,7 +329,7 @@ var constructSpaceActions = ({ space, dispatch, personal, migrating }) => {
297
329
  }
298
330
  ],
299
331
  icon: "ph--clock-counter-clockwise--regular",
300
- disposition: "toolbar"
332
+ disposition: "list-item-primary"
301
333
  }
302
334
  });
303
335
  }
@@ -329,10 +361,11 @@ var createObjectNode = ({ object, space, navigable = false, resolve }) => {
329
361
  data: object,
330
362
  properties: {
331
363
  ...partials,
332
- label: metadata.label?.(object) || object.name || metadata.placeholder || [
333
- "unnamed object label",
364
+ label: metadata.label?.(object) || object.name || [
365
+ "object name placeholder",
334
366
  {
335
- ns: SPACE_PLUGIN
367
+ ns: type,
368
+ default: "New object"
336
369
  }
337
370
  ],
338
371
  icon: metadata.icon ?? "ph--placeholder--regular",
@@ -347,7 +380,7 @@ var constructObjectActions = ({ node, dispatch, navigable = false }) => {
347
380
  const space = getSpace(object);
348
381
  invariant(space, "Space not found", {
349
382
  F: __dxlog_file,
350
- L: 423,
383
+ L: 444,
351
384
  S: void 0,
352
385
  A: [
353
386
  "space",
@@ -373,7 +406,7 @@ var constructObjectActions = ({ node, dispatch, navigable = false }) => {
373
406
  }
374
407
  ],
375
408
  icon: "ph--plus--regular",
376
- disposition: "toolbar",
409
+ disposition: "list-item-primary",
377
410
  testId: "spacePlugin.createObject"
378
411
  }
379
412
  }
@@ -500,12 +533,12 @@ var getNestedObjects = async (object, resolve) => {
500
533
  };
501
534
  var cloneObject = async (object, resolve, newSpace) => {
502
535
  const schema = getSchema(object);
503
- const typename = schema ? getObjectAnnotation(schema)?.typename ?? EXPANDO_TYPENAME : EXPANDO_TYPENAME;
536
+ const typename = schema ? getTypeAnnotation(schema)?.typename ?? EXPANDO_TYPENAME : EXPANDO_TYPENAME;
504
537
  const metadata = resolve(typename);
505
538
  const serializer = metadata.serializer;
506
539
  invariant(serializer, `No serializer for type: ${typename}`, {
507
540
  F: __dxlog_file,
508
- L: 567,
541
+ L: 588,
509
542
  S: void 0,
510
543
  A: [
511
544
  "serializer",
@@ -537,4 +570,4 @@ export {
537
570
  getNestedObjects,
538
571
  cloneObject
539
572
  };
540
- //# sourceMappingURL=chunk-PGH5L7MV.mjs.map
573
+ //# sourceMappingURL=chunk-ZGLK25WQ.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 { createIntent, type PromiseIntentDispatcher, LayoutAction } from '@dxos/app-framework';\nimport { EXPANDO_TYPENAME, getTypeAnnotation, getTypename, type Expando } from '@dxos/echo-schema';\nimport { invariant } from '@dxos/invariant';\nimport { getSchema, isReactiveObject, makeRef } from '@dxos/live-object';\nimport { Migrations } from '@dxos/migrations';\nimport { ATTENDABLE_PATH_SEPARATOR } from '@dxos/plugin-deck/types';\nimport {\n ACTION_GROUP_TYPE,\n ACTION_TYPE,\n cleanup,\n getGraph,\n memoize,\n type ActionData,\n type Graph,\n type InvokeParams,\n type Node,\n type NodeArg,\n} from '@dxos/plugin-graph';\nimport {\n Filter,\n fullyQualifiedId,\n getSpace,\n isEchoObject,\n isSpace,\n SpaceState,\n type Echo,\n type FilterSource,\n type Query,\n type QueryOptions,\n type ReactiveEchoObject,\n type Space,\n} from '@dxos/react-client/echo';\n\nimport { SPACE_PLUGIN } from './meta';\nimport { CollectionType, SpaceAction } from './types';\n\nexport const SPACES = `${SPACE_PLUGIN}-spaces`;\nexport const SPACE_TYPE = 'dxos.org/type/Space';\nexport const COMPOSER_SPACE_LOCK = 'dxos.org/plugin/space/lock';\n// TODO(wittjosiah): Remove.\nexport const SHARED = 'shared-spaces';\n\nconst EMPTY_ARRAY: never[] = [];\n\n/**\n *\n * @param spaceOrEcho\n * @param filter\n * @param options\n * @returns\n */\nexport const memoizeQuery = <T extends ReactiveEchoObject<any>>(\n spaceOrEcho?: Space | Echo,\n filter?: FilterSource<T>,\n options?: QueryOptions,\n): T[] => {\n const key = JSON.stringify({\n space: isSpace(spaceOrEcho) ? spaceOrEcho.id : undefined,\n filter: Filter.from(filter).toProto(),\n });\n\n const query = memoize(\n () =>\n isSpace(spaceOrEcho)\n ? spaceOrEcho.db.query(filter, options)\n : (spaceOrEcho?.query(filter, options) as Query<T> | undefined),\n key,\n );\n const unsubscribe = memoize(() => query?.subscribe(), key);\n cleanup(() => unsubscribe?.());\n\n return query?.objects ?? EMPTY_ARRAY;\n};\n\n// TODO(wittjosiah): Factor out? Expose via capability?\nexport const getSpaceDisplayName = (\n space: Space,\n { personal, namesCache = {} }: { personal?: boolean; namesCache?: Record<string, string> } = {},\n): string | [string, { ns: string }] => {\n return space.state.get() === SpaceState.SPACE_READY && (space.properties.name?.length ?? 0) > 0\n ? space.properties.name\n : namesCache[space.id]\n ? namesCache[space.id]\n : personal\n ? ['personal space label', { ns: SPACE_PLUGIN }]\n : ['unnamed space label', { ns: SPACE_PLUGIN }];\n};\n\nconst getCollectionGraphNodePartials = ({\n navigable,\n collection,\n space,\n resolve,\n}: {\n navigable: boolean;\n collection: CollectionType;\n space: Space;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n return {\n acceptPersistenceClass: new Set(['echo']),\n acceptPersistenceKey: new Set([space.id]),\n role: 'branch',\n onRearrangeChildren: (nextOrder: unknown[]) => {\n // Change on disk.\n collection.objects = nextOrder.filter(isEchoObject).map(makeRef);\n },\n onTransferStart: (child: Node<ReactiveEchoObject<any>>, index?: number) => {\n // TODO(wittjosiah): Support transfer between spaces.\n // const childSpace = getSpace(child.data);\n // if (space && childSpace && !childSpace.key.equals(space.key)) {\n // // Create clone of child and add to destination space.\n // const newObject = clone(child.data, {\n // // TODO(wittjosiah): This needs to be generalized and not hardcoded here.\n // additional: [\n // child.data.content,\n // ...(child.data.objects ?? []),\n // ...(child.data.objects ?? []).map((object: TypedObject) => object.content),\n // ],\n // });\n // space.db.add(newObject);\n // collection.objects.push(newObject);\n // } else {\n\n // Add child to destination collection.\n // TODO(dmaretskyi): Compare by id.\n if (!collection.objects.find((object) => object.target === child.data)) {\n if (typeof index !== 'undefined') {\n collection.objects.splice(index, 0, makeRef(child.data));\n } else {\n collection.objects.push(makeRef(child.data));\n }\n }\n\n // }\n },\n onTransferEnd: (child: Node<ReactiveEchoObject<any>>, destination: Node) => {\n // Remove child from origin collection.\n const index = collection.objects.findIndex((object) => object.target === child.data);\n if (index > -1) {\n collection.objects.splice(index, 1);\n }\n\n // TODO(wittjosiah): Support transfer between spaces.\n // const childSpace = getSpace(child.data);\n // const destinationSpace =\n // destination.data instanceof SpaceProxy ? destination.data : getSpace(destination.data);\n // if (destinationSpace && childSpace && !childSpace.key.equals(destinationSpace.key)) {\n // // Mark child as deleted in origin space.\n // childSpace.db.remove(child.data);\n // }\n },\n onCopy: async (child: Node<ReactiveEchoObject<any>>, index?: number) => {\n // Create clone of child and add to destination space.\n const newObject = await cloneObject(child.data, resolve, space);\n space.db.add(newObject);\n if (typeof index !== 'undefined') {\n collection.objects.splice(index, 0, makeRef(newObject));\n } else {\n collection.objects.push(makeRef(newObject));\n }\n },\n };\n};\n\nconst checkPendingMigration = (space: Space) => {\n return (\n space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION ||\n (space.state.get() === SpaceState.SPACE_READY &&\n !!Migrations.versionProperty &&\n space.properties[Migrations.versionProperty] !== Migrations.targetVersion)\n );\n};\n\nexport const constructSpaceNode = ({\n space,\n navigable = false,\n personal,\n namesCache,\n resolve,\n}: {\n space: Space;\n navigable?: boolean;\n personal?: boolean;\n namesCache?: Record<string, string>;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const hasPendingMigration = checkPendingMigration(space);\n const collection = space.state.get() === SpaceState.SPACE_READY && space.properties[CollectionType.typename]?.target;\n const partials =\n space.state.get() === SpaceState.SPACE_READY && collection instanceof CollectionType\n ? getCollectionGraphNodePartials({ collection, space, resolve, navigable })\n : {};\n\n return {\n id: space.id,\n type: SPACE_TYPE,\n cacheable: ['label', 'icon', 'role'],\n data: space,\n properties: {\n ...partials,\n label: getSpaceDisplayName(space, { personal, namesCache }),\n description: space.state.get() === SpaceState.SPACE_READY && space.properties.description,\n hue: space.state.get() === SpaceState.SPACE_READY && space.properties.hue,\n icon:\n space.state.get() === SpaceState.SPACE_READY && space.properties.icon\n ? `ph--${space.properties.icon}--regular`\n : undefined,\n disabled: !navigable || space.state.get() !== SpaceState.SPACE_READY || hasPendingMigration,\n testId: 'spacePlugin.space',\n },\n nodes: [\n {\n id: `${space.id}${ATTENDABLE_PATH_SEPARATOR}members`,\n type: `${SPACE_PLUGIN}/members`,\n data: space,\n properties: {\n label: ['members panel label', { ns: SPACE_PLUGIN }],\n icon: 'ph--users--regular',\n disposition: 'hidden',\n },\n },\n {\n id: `${space.id}${ATTENDABLE_PATH_SEPARATOR}settings`,\n type: `${SPACE_PLUGIN}/settings`,\n data: space,\n properties: {\n label: ['settings panel label', { ns: SPACE_PLUGIN }],\n icon: 'ph--gear--regular',\n disposition: 'hidden',\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 const locked = space.properties[COMPOSER_SPACE_LOCK];\n actions.push(\n {\n id: getId(SpaceAction.OpenCreateObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.OpenCreateObject, { target: space }));\n },\n properties: {\n label: ['create object in space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--plus--regular',\n disposition: 'item',\n testId: 'spacePlugin.createObject',\n },\n },\n {\n id: getId(SpaceAction.Share._tag),\n type: ACTION_TYPE,\n data: async () => {\n if (locked) {\n return;\n }\n await dispatch(createIntent(SpaceAction.Share, { space }));\n },\n properties: {\n label: ['share space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--users--regular',\n disabled: locked,\n disposition: 'list-item-primary',\n iconOnly: false,\n variant: 'default',\n testId: 'spacePlugin.shareSpace',\n keyBinding: {\n macos: 'meta+.',\n windows: 'alt+.',\n },\n },\n },\n {\n id: locked ? getId(SpaceAction.Unlock._tag) : getId(SpaceAction.Lock._tag),\n type: ACTION_TYPE,\n data: async () => {\n if (locked) {\n await dispatch(createIntent(SpaceAction.Unlock, { space }));\n } else {\n await dispatch(createIntent(SpaceAction.Lock, { space }));\n }\n },\n properties: {\n label: [locked ? 'unlock space label' : 'lock space label', { ns: SPACE_PLUGIN }],\n icon: locked ? 'ph--lock-simple-open--regular' : 'ph--lock-simple--regular',\n },\n },\n {\n id: getId(SpaceAction.Rename._tag),\n type: ACTION_TYPE,\n data: async (params: InvokeParams) => {\n await dispatch(createIntent(SpaceAction.Rename, { space, caller: params.caller }));\n },\n properties: {\n label: ['rename space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--pencil-simple-line--regular',\n keyBinding: {\n macos: 'shift+F6',\n windows: 'shift+F6',\n },\n },\n },\n {\n id: getId(SpaceAction.OpenSettings._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.OpenSettings, { space }));\n },\n properties: {\n label: ['open space settings label', { ns: SPACE_PLUGIN }],\n icon: 'ph--gear--regular',\n },\n },\n );\n }\n\n // TODO(wittjosiah): Consider moving close space into the space settings dialog.\n if (state !== SpaceState.SPACE_INACTIVE && !hasPendingMigration) {\n actions.push({\n id: getId(SpaceAction.Close._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.Close, { space }));\n },\n properties: {\n label: ['close space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--x--regular',\n disabled: personal,\n },\n });\n }\n\n if (state === SpaceState.SPACE_INACTIVE) {\n actions.push({\n id: getId(SpaceAction.Open._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.Open, { space }));\n },\n properties: {\n label: ['open space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--clock-counter-clockwise--regular',\n disposition: 'list-item-primary',\n },\n });\n }\n\n return actions;\n};\n\nexport const createObjectNode = ({\n object,\n space,\n navigable = false,\n resolve,\n}: {\n object: ReactiveEchoObject<any>;\n space: Space;\n navigable?: boolean;\n resolve: (typename: string) => Record<string, any>;\n}) => {\n const type = getTypename(object);\n if (!type) {\n return undefined;\n }\n\n const metadata = resolve(type);\n if (Object.keys(metadata).length === 0) {\n return undefined;\n }\n\n const partials =\n object instanceof CollectionType\n ? getCollectionGraphNodePartials({ collection: object, space, resolve, navigable })\n : metadata.graphProps;\n\n return {\n id: fullyQualifiedId(object),\n type,\n cacheable: ['label', 'icon', 'role'],\n data: object,\n properties: {\n ...partials,\n label: metadata.label?.(object) ||\n object.name || ['object name placeholder', { ns: type, default: 'New object' }],\n icon: metadata.icon ?? 'ph--placeholder--regular',\n testId: 'spacePlugin.object',\n persistenceClass: 'echo',\n persistenceKey: space?.id,\n },\n };\n};\n\nexport const constructObjectActions = ({\n node,\n dispatch,\n navigable = false,\n}: {\n node: Node<ReactiveEchoObject<any>>;\n dispatch: PromiseIntentDispatcher;\n navigable?: boolean;\n}) => {\n const object = node.data;\n const space = getSpace(object);\n invariant(space, 'Space not found');\n const getId = (id: string) => `${id}/${fullyQualifiedId(object)}`;\n const actions: NodeArg<ActionData>[] = [\n ...(object instanceof CollectionType\n ? [\n {\n id: getId(SpaceAction.OpenCreateObject._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(SpaceAction.OpenCreateObject, { target: object }));\n },\n properties: {\n label: ['create object in collection label', { ns: SPACE_PLUGIN }],\n icon: 'ph--plus--regular',\n disposition: 'list-item-primary',\n testId: 'spacePlugin.createObject',\n },\n },\n ]\n : []),\n {\n id: getId(SpaceAction.RenameObject._tag),\n type: ACTION_TYPE,\n data: async (params: InvokeParams) => {\n await dispatch(createIntent(SpaceAction.RenameObject, { object, caller: params.caller }));\n },\n properties: {\n label: [\n object instanceof CollectionType ? 'rename collection label' : 'rename object label',\n { ns: SPACE_PLUGIN },\n ],\n icon: 'ph--pencil-simple-line--regular',\n // TODO(wittjosiah): Doesn't work.\n // keyBinding: 'shift+F6',\n testId: 'spacePlugin.renameObject',\n },\n },\n {\n id: getId(SpaceAction.RemoveObjects._tag),\n type: ACTION_TYPE,\n data: async () => {\n const graph = getGraph(node);\n const collection = graph\n .nodes(node, { relation: 'inbound' })\n .find(({ data }) => data instanceof CollectionType)?.data;\n await dispatch(createIntent(SpaceAction.RemoveObjects, { objects: [object], target: collection }));\n },\n properties: {\n label: [\n object instanceof CollectionType ? 'delete collection label' : 'delete object label',\n { ns: SPACE_PLUGIN },\n ],\n icon: 'ph--trash--regular',\n keyBinding: object instanceof CollectionType ? undefined : 'shift+meta+Backspace',\n testId: 'spacePlugin.deleteObject',\n },\n },\n ...(navigable || !(object instanceof CollectionType)\n ? [\n {\n id: getId('copy-link'),\n type: ACTION_TYPE,\n data: async () => {\n const url = `${window.location.origin}/${space.id}/${fullyQualifiedId(object)}`;\n await navigator.clipboard.writeText(url);\n },\n properties: {\n label: ['copy link label', { ns: SPACE_PLUGIN }],\n icon: 'ph--link--regular',\n testId: 'spacePlugin.copyLink',\n },\n },\n ]\n : []),\n // TODO(wittjosiah): Factor out and apply to all nodes.\n {\n id: getId(LayoutAction.Expose._tag),\n type: ACTION_TYPE,\n data: async () => {\n await dispatch(createIntent(LayoutAction.Expose, { part: 'navigation', subject: fullyQualifiedId(object) }));\n },\n properties: {\n label: ['expose object label', { ns: SPACE_PLUGIN }],\n icon: 'ph--eye--regular',\n testId: 'spacePlugin.exposeObject',\n },\n },\n ];\n\n return actions;\n};\n\n/**\n * @deprecated\n */\nexport const getActiveSpace = (graph: Graph, active?: string) => {\n if (!active) {\n return;\n }\n\n const node = graph.findNode(active);\n if (!node || !isReactiveObject(node.data)) {\n return;\n }\n\n return getSpace(node.data);\n};\n\n/**\n * @deprecated This is a temporary solution.\n */\nexport const getNestedObjects = async (\n object: ReactiveEchoObject<any>,\n resolve: (typename: string) => Record<string, any>,\n): Promise<ReactiveEchoObject<any>[]> => {\n const type = getTypename(object);\n if (!type) {\n return [];\n }\n\n const metadata = resolve(type);\n const loadReferences = metadata?.loadReferences;\n if (typeof loadReferences !== 'function') {\n return [];\n }\n\n const objects: ReactiveEchoObject<any>[] = await loadReferences(object);\n const nested = await Promise.all(objects.map((object) => getNestedObjects(object, resolve)));\n return [...objects, ...nested.flat()];\n};\n\n/**\n * @deprecated Workaround for ECHO not supporting clone.\n */\n// TODO(burdon): Remove.\nexport const cloneObject = async (\n object: Expando,\n resolve: (typename: string) => Record<string, any>,\n newSpace: Space,\n): Promise<Expando> => {\n const schema = getSchema(object);\n const typename = schema ? getTypeAnnotation(schema)?.typename ?? EXPANDO_TYPENAME : EXPANDO_TYPENAME;\n const metadata = resolve(typename);\n const serializer = metadata.serializer;\n invariant(serializer, `No serializer for type: ${typename}`);\n const content = await serializer.serialize({ object });\n return serializer.deserialize({ content, space: newSpace, newId: true });\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["createIntent", "LayoutAction", "EXPANDO_TYPENAME", "getTypeAnnotation", "getTypename", "invariant", "getSchema", "isReactiveObject", "makeRef", "Migrations", "ATTENDABLE_PATH_SEPARATOR", "ACTION_GROUP_TYPE", "ACTION_TYPE", "cleanup", "getGraph", "memoize", "Filter", "fullyQualifiedId", "getSpace", "isEchoObject", "isSpace", "SpaceState", "SPACES", "SPACE_PLUGIN", "SPACE_TYPE", "COMPOSER_SPACE_LOCK", "SHARED", "EMPTY_ARRAY", "memoizeQuery", "spaceOrEcho", "filter", "options", "key", "JSON", "stringify", "space", "isSpace", "id", "undefined", "Filter", "from", "toProto", "query", "memoize", "db", "unsubscribe", "subscribe", "cleanup", "objects", "getSpaceDisplayName", "personal", "namesCache", "state", "get", "SpaceState", "SPACE_READY", "properties", "name", "length", "ns", "getCollectionGraphNodePartials", "navigable", "collection", "resolve", "acceptPersistenceClass", "Set", "acceptPersistenceKey", "role", "onRearrangeChildren", "nextOrder", "isEchoObject", "map", "makeRef", "onTransferStart", "child", "index", "find", "object", "target", "data", "splice", "push", "onTransferEnd", "destination", "findIndex", "onCopy", "newObject", "cloneObject", "add", "checkPendingMigration", "SPACE_REQUIRES_MIGRATION", "Migrations", "versionProperty", "targetVersion", "constructSpaceNode", "hasPendingMigration", "CollectionType", "typename", "partials", "type", "cacheable", "label", "description", "hue", "icon", "disabled", "testId", "nodes", "ATTENDABLE_PATH_SEPARATOR", "disposition", "constructSpaceActions", "dispatch", "migrating", "getId", "actions", "SpaceAction", "Migrate", "_tag", "ACTION_GROUP_TYPE", "createIntent", "running", "locked", "OpenCreateObject", "ACTION_TYPE", "Share", "iconOnly", "variant", "keyBinding", "macos", "windows", "Unlock", "Lock", "Rename", "params", "caller", "OpenSettings", "SPACE_INACTIVE", "Close", "Open", "createObjectNode", "getTypename", "metadata", "Object", "keys", "graphProps", "fullyQualifiedId", "default", "persistenceClass", "persistenceKey", "constructObjectActions", "node", "getSpace", "invariant", "RenameObject", "RemoveObjects", "graph", "getGraph", "relation", "url", "window", "location", "origin", "navigator", "clipboard", "writeText", "LayoutAction", "Expose", "part", "subject", "getActiveSpace", "active", "findNode", "isReactiveObject", "getNestedObjects", "loadReferences", "nested", "Promise", "all", "flat", "newSpace", "schema", "getSchema", "getTypeAnnotation", "EXPANDO_TYPENAME", "serializer", "content", "serialize", "deserialize", "newId"]
7
+ }
@@ -1,8 +1,8 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  CollectionType
4
- } from "./chunk-TRNZQEEN.mjs";
5
- import "./chunk-ICCM4YRJ.mjs";
4
+ } from "./chunk-FC4UHDPL.mjs";
5
+ import "./chunk-MSWEFAPD.mjs";
6
6
 
7
7
  // packages/plugins/plugin-space/src/capabilities/identity-created.ts
8
8
  import { contributes, Capabilities } from "@dxos/app-framework";
@@ -26,4 +26,4 @@ var identity_created_default = async (context) => {
26
26
  export {
27
27
  identity_created_default as default
28
28
  };
29
- //# sourceMappingURL=identity-created-3CGEXNPO.mjs.map
29
+ //# sourceMappingURL=identity-created-WJKAS2PV.mjs.map
@@ -1,13 +1,11 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  translations_default
4
- } from "./chunk-2TQ2AJEZ.mjs";
4
+ } from "./chunk-3ZOUV4DF.mjs";
5
5
  import {
6
- AdvancedObjectSettings,
7
6
  AppGraphBuilder,
8
7
  AppGraphSerializer,
9
8
  AwaitingObject,
10
- BaseObjectSettings,
11
9
  CREATE_OBJECT_DIALOG,
12
10
  CREATE_SPACE_DIALOG,
13
11
  CollectionMain,
@@ -20,7 +18,9 @@ import {
20
18
  IntentResolver,
21
19
  JOIN_DIALOG,
22
20
  JoinDialog,
21
+ MembersContainer,
23
22
  MenuFooter,
23
+ ObjectSettingsContainer,
24
24
  POPOVER_ADD_SPACE,
25
25
  POPOVER_RENAME_OBJECT,
26
26
  POPOVER_RENAME_SPACE,
@@ -38,19 +38,20 @@ import {
38
38
  SmallPresenceLive,
39
39
  SpacePluginSettings,
40
40
  SpacePresence,
41
+ SpacePropertiesForm,
41
42
  SpaceSettings,
42
- SpaceSettingsDialog,
43
- SpaceSettingsPanel,
43
+ SpaceSettingsContainer,
44
44
  SpaceState,
45
45
  SpacesReady,
46
46
  SyncStatus,
47
47
  SyncStatusDetail,
48
- SyncStatusIndicator
49
- } from "./chunk-HJCEJNW3.mjs";
48
+ SyncStatusIndicator,
49
+ Tools
50
+ } from "./chunk-HMCIZ7G7.mjs";
50
51
  import {
51
52
  SpaceCapabilities,
52
53
  ThreadCapabilities
53
- } from "./chunk-6RSVVEPS.mjs";
54
+ } from "./chunk-PIYAWT5N.mjs";
54
55
  import {
55
56
  COMPOSER_SPACE_LOCK,
56
57
  SHARED,
@@ -65,23 +66,23 @@ import {
65
66
  getNestedObjects,
66
67
  getSpaceDisplayName,
67
68
  memoizeQuery
68
- } from "./chunk-PGH5L7MV.mjs";
69
+ } from "./chunk-ZGLK25WQ.mjs";
69
70
  import {
70
71
  CollectionAction,
71
72
  CollectionType,
72
73
  defineObjectForm
73
- } from "./chunk-TRNZQEEN.mjs";
74
+ } from "./chunk-FC4UHDPL.mjs";
74
75
  import {
75
76
  SPACE_PLUGIN,
76
77
  meta
77
- } from "./chunk-ICCM4YRJ.mjs";
78
+ } from "./chunk-MSWEFAPD.mjs";
78
79
 
79
80
  // packages/plugins/plugin-space/src/events.ts
80
- import { defineEvent } from "@dxos/app-framework";
81
+ import { defineEvent, Events } from "@dxos/app-framework";
81
82
  var SpaceEvents;
82
83
  (function(SpaceEvents2) {
84
+ SpaceEvents2.StateReady = Events.createStateEvent(`${SPACE_PLUGIN}/event/state-ready`);
83
85
  SpaceEvents2.SetupSettingsPanel = defineEvent(`${SPACE_PLUGIN}/event/setup-settings-panel`);
84
- SpaceEvents2.StateReady = defineEvent(`${SPACE_PLUGIN}/event/state-ready`);
85
86
  SpaceEvents2.DefaultSpaceReady = defineEvent(`${SPACE_PLUGIN}/event/default-space-ready`);
86
87
  })(SpaceEvents || (SpaceEvents = {}));
87
88
  var ThreadEvents;
@@ -90,13 +91,11 @@ var ThreadEvents;
90
91
  })(ThreadEvents || (ThreadEvents = {}));
91
92
 
92
93
  // packages/plugins/plugin-space/src/SpacePlugin.tsx
93
- import { allOf, Capabilities, contributes, createIntent, defineModule, definePlugin, Events, oneOf } from "@dxos/app-framework";
94
+ import { allOf, Capabilities, contributes, createIntent, defineModule, definePlugin, Events as Events2, oneOf } from "@dxos/app-framework";
94
95
  import { S } from "@dxos/echo-schema";
95
96
  import { RefArray } from "@dxos/live-object";
96
97
  import { AttentionEvents } from "@dxos/plugin-attention";
97
98
  import { ClientEvents } from "@dxos/plugin-client";
98
- import { DeckCapabilities, DeckEvents } from "@dxos/plugin-deck";
99
- import { isEchoObject, getSpace } from "@dxos/react-client/echo";
100
99
  import { osTranslations } from "@dxos/shell/react";
101
100
  var SpacePlugin = ({ invitationUrl = window.location.origin, invitationParam = "spaceInvitationCode", observability = true } = {}) => {
102
101
  const createInvitationUrl = (invitationCode) => {
@@ -110,7 +109,7 @@ var SpacePlugin = ({ invitationUrl = window.location.origin, invitationParam = "
110
109
  // TODO(wittjosiah): Does not integrate with settings store.
111
110
  // Should this be a different event?
112
111
  // Should settings store be renamed to be more generic?
113
- activatesOn: oneOf(Events.SetupSettings, Events.SetupAppGraph),
112
+ activatesOn: oneOf(Events2.SetupSettings, Events2.SetupAppGraph),
114
113
  activatesAfter: [
115
114
  SpaceEvents.StateReady
116
115
  ],
@@ -118,12 +117,12 @@ var SpacePlugin = ({ invitationUrl = window.location.origin, invitationParam = "
118
117
  }),
119
118
  defineModule({
120
119
  id: `${meta.id}/module/settings`,
121
- activatesOn: Events.SetupSettings,
120
+ activatesOn: Events2.SetupSettings,
122
121
  activate: SpaceSettings
123
122
  }),
124
123
  defineModule({
125
124
  id: `${meta.id}/module/translations`,
126
- activatesOn: Events.SetupTranslations,
125
+ activatesOn: Events2.SetupTranslations,
127
126
  activate: () => contributes(Capabilities.Translations, [
128
127
  ...translations_default,
129
128
  osTranslations
@@ -131,16 +130,10 @@ var SpacePlugin = ({ invitationUrl = window.location.origin, invitationParam = "
131
130
  }),
132
131
  defineModule({
133
132
  id: `${meta.id}/module/metadata`,
134
- activatesOn: Events.SetupMetadata,
133
+ activatesOn: Events2.SetupMetadata,
135
134
  activate: () => contributes(Capabilities.Metadata, {
136
135
  id: CollectionType.typename,
137
136
  metadata: {
138
- placeholder: [
139
- "unnamed collection label",
140
- {
141
- ns: SPACE_PLUGIN
142
- }
143
- ],
144
137
  icon: "ph--cards-three--regular",
145
138
  // TODO(wittjosiah): Move out of metadata.
146
139
  loadReferences: async (collection) => await RefArray.loadAll([
@@ -162,19 +155,17 @@ var SpacePlugin = ({ invitationUrl = window.location.origin, invitationParam = "
162
155
  }))
163
156
  }),
164
157
  defineModule({
165
- id: `${meta.id}/module/complementary-panel`,
166
- activatesOn: DeckEvents.SetupComplementaryPanels,
167
- activate: () => contributes(DeckCapabilities.ComplementaryPanel, {
168
- id: "settings",
158
+ id: `${meta.id}/module/space-settings`,
159
+ activatesOn: SpaceEvents.SetupSettingsPanel,
160
+ activate: () => contributes(SpaceCapabilities.SettingsSection, {
161
+ id: "properties",
169
162
  label: [
170
- "settings panel label",
163
+ "space settings properties label",
171
164
  {
172
165
  ns: SPACE_PLUGIN
173
166
  }
174
167
  ],
175
- icon: "ph--sliders--regular",
176
- position: "hoist",
177
- filter: (node) => isEchoObject(node.data) && !!getSpace(node.data)
168
+ position: "hoist"
178
169
  })
179
170
  }),
180
171
  defineModule({
@@ -187,12 +178,12 @@ var SpacePlugin = ({ invitationUrl = window.location.origin, invitationParam = "
187
178
  }),
188
179
  defineModule({
189
180
  id: `${meta.id}/module/react-root`,
190
- activatesOn: Events.Startup,
181
+ activatesOn: Events2.Startup,
191
182
  activate: ReactRoot
192
183
  }),
193
184
  defineModule({
194
185
  id: `${meta.id}/module/react-surface`,
195
- activatesOn: Events.SetupReactSurface,
186
+ activatesOn: Events2.SetupReactSurface,
196
187
  // TODO(wittjosiah): Should occur before the settings dialog is loaded when surfaces activation is more granular.
197
188
  activatesBefore: [
198
189
  SpaceEvents.SetupSettingsPanel
@@ -203,22 +194,21 @@ var SpacePlugin = ({ invitationUrl = window.location.origin, invitationParam = "
203
194
  }),
204
195
  defineModule({
205
196
  id: `${meta.id}/module/intent-resolver`,
206
- activatesOn: Events.SetupIntentResolver,
197
+ activatesOn: Events2.SetupIntentResolver,
207
198
  activate: (context) => IntentResolver({
208
- createInvitationUrl,
209
199
  context,
210
200
  observability
211
201
  })
212
202
  }),
213
203
  defineModule({
214
204
  id: `${meta.id}/module/app-graph-builder`,
215
- activatesOn: Events.SetupAppGraph,
205
+ activatesOn: Events2.SetupAppGraph,
216
206
  activate: AppGraphBuilder
217
207
  }),
218
208
  // TODO(wittjosiah): This could probably be deferred.
219
209
  defineModule({
220
210
  id: `${meta.id}/module/app-graph-serializer`,
221
- activatesOn: Events.AppGraphReady,
211
+ activatesOn: Events2.AppGraphReady,
222
212
  activate: AppGraphSerializer
223
213
  }),
224
214
  defineModule({
@@ -231,15 +221,18 @@ var SpacePlugin = ({ invitationUrl = window.location.origin, invitationParam = "
231
221
  }),
232
222
  defineModule({
233
223
  id: `${meta.id}/module/spaces-ready`,
234
- activatesOn: allOf(Events.DispatcherReady, Events.LayoutReady, Events.AppGraphReady, AttentionEvents.AttentionReady, SpaceEvents.StateReady, ClientEvents.SpacesReady),
224
+ activatesOn: allOf(Events2.DispatcherReady, Events2.LayoutReady, Events2.AppGraphReady, AttentionEvents.AttentionReady, SpaceEvents.StateReady, ClientEvents.SpacesReady),
235
225
  activate: SpacesReady
226
+ }),
227
+ defineModule({
228
+ id: `${meta.id}/module/tools`,
229
+ activatesOn: Events2.SetupArtifactDefinition,
230
+ activate: Tools
236
231
  })
237
232
  ]);
238
233
  };
239
234
  export {
240
- AdvancedObjectSettings,
241
235
  AwaitingObject,
242
- BaseObjectSettings,
243
236
  COMPOSER_SPACE_LOCK,
244
237
  CREATE_OBJECT_DIALOG,
245
238
  CREATE_SPACE_DIALOG,
@@ -251,7 +244,9 @@ export {
251
244
  InlineSyncStatus,
252
245
  JOIN_DIALOG,
253
246
  JoinDialog,
247
+ MembersContainer,
254
248
  MenuFooter,
249
+ ObjectSettingsContainer,
255
250
  POPOVER_ADD_SPACE,
256
251
  POPOVER_RENAME_OBJECT,
257
252
  POPOVER_RENAME_SPACE,
@@ -273,8 +268,8 @@ export {
273
268
  SpacePlugin,
274
269
  SpacePluginSettings,
275
270
  SpacePresence,
276
- SpaceSettingsDialog,
277
- SpaceSettingsPanel,
271
+ SpacePropertiesForm,
272
+ SpaceSettingsContainer,
278
273
  SyncStatus,
279
274
  SyncStatusDetail,
280
275
  SyncStatusIndicator,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/events.ts", "../../../src/SpacePlugin.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { defineEvent } from '@dxos/app-framework';\n\nimport { SPACE_PLUGIN } from './meta';\n\nexport namespace SpaceEvents {\n export const SetupSettingsPanel = defineEvent(`${SPACE_PLUGIN}/event/setup-settings-panel`);\n export const StateReady = defineEvent(`${SPACE_PLUGIN}/event/state-ready`);\n export const DefaultSpaceReady = defineEvent(`${SPACE_PLUGIN}/event/default-space-ready`);\n}\n\n// TODO(wittjosiah): Factor out.\nexport namespace ThreadEvents {\n export const SetupThread = defineEvent(`${SPACE_PLUGIN}/event/setup-thread`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n allOf,\n Capabilities,\n contributes,\n createIntent,\n defineModule,\n definePlugin,\n Events,\n oneOf,\n} from '@dxos/app-framework';\nimport { S } from '@dxos/echo-schema';\nimport { RefArray } from '@dxos/live-object';\nimport { AttentionEvents } from '@dxos/plugin-attention';\nimport { ClientEvents } from '@dxos/plugin-client';\nimport { DeckCapabilities, DeckEvents } from '@dxos/plugin-deck';\nimport { isEchoObject, getSpace } from '@dxos/react-client/echo';\nimport { osTranslations } from '@dxos/shell/react';\n\nimport {\n AppGraphBuilder,\n AppGraphSerializer,\n IdentityCreated,\n IntentResolver,\n ReactRoot,\n ReactSurface,\n Schema,\n SpaceCapabilities,\n SpaceSettings,\n SpacesReady,\n SpaceState,\n} from './capabilities';\nimport { SpaceEvents } from './events';\nimport { meta, SPACE_PLUGIN } from './meta';\nimport translations from './translations';\nimport { CollectionAction, CollectionType, defineObjectForm } from './types';\n\nexport type SpacePluginOptions = {\n /**\n * Base URL for the invitation link.\n */\n invitationUrl?: string;\n\n /**\n * Query parameter for the invitation code.\n */\n invitationParam?: string;\n\n /**\n * Whether to send observability events.\n */\n observability?: boolean;\n};\n\nexport const SpacePlugin = ({\n invitationUrl = window.location.origin,\n invitationParam = 'spaceInvitationCode',\n observability = true,\n}: SpacePluginOptions = {}) => {\n const createInvitationUrl = (invitationCode: string) => {\n const baseUrl = new URL(invitationUrl);\n baseUrl.searchParams.set(invitationParam, invitationCode);\n return baseUrl.toString();\n };\n\n return definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/state`,\n // TODO(wittjosiah): Does not integrate with settings store.\n // Should this be a different event?\n // Should settings store be renamed to be more generic?\n activatesOn: oneOf(Events.SetupSettings, Events.SetupAppGraph),\n activatesAfter: [SpaceEvents.StateReady],\n activate: SpaceState,\n }),\n defineModule({\n id: `${meta.id}/module/settings`,\n activatesOn: Events.SetupSettings,\n activate: SpaceSettings,\n }),\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, [...translations, osTranslations]),\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: CollectionType.typename,\n metadata: {\n placeholder: ['unnamed collection label', { ns: SPACE_PLUGIN }],\n icon: 'ph--cards-three--regular',\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: async (collection: CollectionType) =>\n await RefArray.loadAll([...collection.objects, ...Object.values(collection.views)]),\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/object-form`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () =>\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: CollectionType,\n formSchema: S.Struct({ name: S.optional(S.String) }),\n getIntent: (props) => createIntent(CollectionAction.Create, props),\n }),\n ),\n }),\n defineModule({\n id: `${meta.id}/module/complementary-panel`,\n activatesOn: DeckEvents.SetupComplementaryPanels,\n activate: () =>\n contributes(DeckCapabilities.ComplementaryPanel, {\n id: 'settings',\n label: ['settings panel label', { ns: SPACE_PLUGIN }],\n icon: 'ph--sliders--regular',\n position: 'hoist',\n filter: (node) => isEchoObject(node.data) && !!getSpace(node.data),\n }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.ClientReady,\n activatesBefore: [ClientEvents.SetupSchema],\n activate: Schema,\n }),\n defineModule({\n id: `${meta.id}/module/react-root`,\n activatesOn: Events.Startup,\n activate: ReactRoot,\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n // TODO(wittjosiah): Should occur before the settings dialog is loaded when surfaces activation is more granular.\n activatesBefore: [SpaceEvents.SetupSettingsPanel],\n activate: () => ReactSurface({ createInvitationUrl }),\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: (context) => IntentResolver({ createInvitationUrl, context, observability }),\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-builder`,\n activatesOn: Events.SetupAppGraph,\n activate: AppGraphBuilder,\n }),\n // TODO(wittjosiah): This could probably be deferred.\n defineModule({\n id: `${meta.id}/module/app-graph-serializer`,\n activatesOn: Events.AppGraphReady,\n activate: AppGraphSerializer,\n }),\n defineModule({\n id: `${meta.id}/module/identity-created`,\n activatesOn: ClientEvents.IdentityCreated,\n activatesAfter: [SpaceEvents.DefaultSpaceReady],\n activate: IdentityCreated,\n }),\n defineModule({\n id: `${meta.id}/module/spaces-ready`,\n activatesOn: allOf(\n Events.DispatcherReady,\n Events.LayoutReady,\n Events.AppGraphReady,\n AttentionEvents.AttentionReady,\n SpaceEvents.StateReady,\n ClientEvents.SpacesReady,\n ),\n activate: SpacesReady,\n }),\n ]);\n};\n"],
5
- "mappings": "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",
6
- "names": ["defineEvent", "SpaceEvents", "SetupSettingsPanel", "defineEvent", "SPACE_PLUGIN", "StateReady", "DefaultSpaceReady", "ThreadEvents", "SetupThread", "allOf", "Capabilities", "contributes", "createIntent", "defineModule", "definePlugin", "Events", "oneOf", "S", "RefArray", "AttentionEvents", "ClientEvents", "DeckCapabilities", "DeckEvents", "isEchoObject", "getSpace", "osTranslations", "SpacePlugin", "invitationUrl", "window", "location", "origin", "invitationParam", "observability", "createInvitationUrl", "invitationCode", "baseUrl", "URL", "searchParams", "set", "toString", "definePlugin", "meta", "defineModule", "id", "activatesOn", "oneOf", "Events", "SetupSettings", "SetupAppGraph", "activatesAfter", "SpaceEvents", "StateReady", "activate", "SpaceState", "SpaceSettings", "SetupTranslations", "contributes", "Capabilities", "Translations", "translations", "osTranslations", "SetupMetadata", "Metadata", "CollectionType", "typename", "metadata", "placeholder", "ns", "SPACE_PLUGIN", "icon", "loadReferences", "collection", "RefArray", "loadAll", "objects", "Object", "values", "views", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "formSchema", "S", "Struct", "name", "optional", "String", "getIntent", "props", "createIntent", "CollectionAction", "Create", "DeckEvents", "SetupComplementaryPanels", "DeckCapabilities", "ComplementaryPanel", "label", "position", "filter", "node", "isEchoObject", "data", "getSpace", "ClientReady", "activatesBefore", "Schema", "Startup", "ReactRoot", "SetupReactSurface", "SetupSettingsPanel", "ReactSurface", "SetupIntentResolver", "context", "IntentResolver", "AppGraphBuilder", "AppGraphReady", "AppGraphSerializer", "IdentityCreated", "DefaultSpaceReady", "allOf", "DispatcherReady", "LayoutReady", "AttentionEvents", "AttentionReady", "SpacesReady"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { defineEvent, Events } 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}\n\n// TODO(wittjosiah): Factor out.\nexport namespace ThreadEvents {\n export const SetupThread = defineEvent(`${SPACE_PLUGIN}/event/setup-thread`);\n}\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n allOf,\n Capabilities,\n contributes,\n createIntent,\n defineModule,\n definePlugin,\n Events,\n oneOf,\n} from '@dxos/app-framework';\nimport { S } from '@dxos/echo-schema';\nimport { RefArray } from '@dxos/live-object';\nimport { AttentionEvents } from '@dxos/plugin-attention';\nimport { ClientEvents } from '@dxos/plugin-client';\nimport { osTranslations } from '@dxos/shell/react';\n\nimport {\n AppGraphBuilder,\n AppGraphSerializer,\n IdentityCreated,\n IntentResolver,\n ReactRoot,\n ReactSurface,\n Schema,\n Tools,\n SpaceCapabilities,\n SpaceSettings,\n SpacesReady,\n SpaceState,\n} from './capabilities';\nimport { SpaceEvents } from './events';\nimport { meta, SPACE_PLUGIN } from './meta';\nimport translations from './translations';\nimport { CollectionAction, CollectionType, defineObjectForm } from './types';\n\nexport type SpacePluginOptions = {\n /**\n * Base URL for the invitation link.\n */\n invitationUrl?: string;\n\n /**\n * Query parameter for the invitation code.\n */\n invitationParam?: string;\n\n /**\n * Whether to send observability events.\n */\n observability?: boolean;\n};\n\nexport const SpacePlugin = ({\n invitationUrl = window.location.origin,\n invitationParam = 'spaceInvitationCode',\n observability = true,\n}: SpacePluginOptions = {}) => {\n const createInvitationUrl = (invitationCode: string) => {\n const baseUrl = new URL(invitationUrl);\n baseUrl.searchParams.set(invitationParam, invitationCode);\n return baseUrl.toString();\n };\n\n return definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/state`,\n // TODO(wittjosiah): Does not integrate with settings store.\n // Should this be a different event?\n // Should settings store be renamed to be more generic?\n activatesOn: oneOf(Events.SetupSettings, Events.SetupAppGraph),\n activatesAfter: [SpaceEvents.StateReady],\n activate: SpaceState,\n }),\n defineModule({\n id: `${meta.id}/module/settings`,\n activatesOn: Events.SetupSettings,\n activate: SpaceSettings,\n }),\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, [...translations, osTranslations]),\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: CollectionType.typename,\n metadata: {\n icon: 'ph--cards-three--regular',\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: async (collection: CollectionType) =>\n await RefArray.loadAll([...collection.objects, ...Object.values(collection.views)]),\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/object-form`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () =>\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: CollectionType,\n formSchema: S.Struct({ name: S.optional(S.String) }),\n getIntent: (props) => createIntent(CollectionAction.Create, props),\n }),\n ),\n }),\n defineModule({\n id: `${meta.id}/module/space-settings`,\n activatesOn: SpaceEvents.SetupSettingsPanel,\n activate: () =>\n contributes(SpaceCapabilities.SettingsSection, {\n id: 'properties',\n label: ['space settings properties label', { ns: SPACE_PLUGIN }],\n position: 'hoist',\n }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.ClientReady,\n activatesBefore: [ClientEvents.SetupSchema],\n activate: Schema,\n }),\n defineModule({\n id: `${meta.id}/module/react-root`,\n activatesOn: Events.Startup,\n activate: ReactRoot,\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n // TODO(wittjosiah): Should occur before the settings dialog is loaded when surfaces activation is more granular.\n activatesBefore: [SpaceEvents.SetupSettingsPanel],\n activate: () => ReactSurface({ createInvitationUrl }),\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: (context) => IntentResolver({ context, observability }),\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-builder`,\n activatesOn: Events.SetupAppGraph,\n activate: AppGraphBuilder,\n }),\n // TODO(wittjosiah): This could probably be deferred.\n defineModule({\n id: `${meta.id}/module/app-graph-serializer`,\n activatesOn: Events.AppGraphReady,\n activate: AppGraphSerializer,\n }),\n defineModule({\n id: `${meta.id}/module/identity-created`,\n activatesOn: ClientEvents.IdentityCreated,\n activatesAfter: [SpaceEvents.DefaultSpaceReady],\n activate: IdentityCreated,\n }),\n defineModule({\n id: `${meta.id}/module/spaces-ready`,\n activatesOn: allOf(\n Events.DispatcherReady,\n Events.LayoutReady,\n Events.AppGraphReady,\n AttentionEvents.AttentionReady,\n SpaceEvents.StateReady,\n ClientEvents.SpacesReady,\n ),\n activate: SpacesReady,\n }),\n defineModule({\n id: `${meta.id}/module/tools`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: Tools,\n }),\n ]);\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["defineEvent", "Events", "SpaceEvents", "StateReady", "Events", "createStateEvent", "SPACE_PLUGIN", "SetupSettingsPanel", "defineEvent", "DefaultSpaceReady", "ThreadEvents", "SetupThread", "allOf", "Capabilities", "contributes", "createIntent", "defineModule", "definePlugin", "Events", "oneOf", "S", "RefArray", "AttentionEvents", "ClientEvents", "osTranslations", "SpacePlugin", "invitationUrl", "window", "location", "origin", "invitationParam", "observability", "createInvitationUrl", "invitationCode", "baseUrl", "URL", "searchParams", "set", "toString", "definePlugin", "meta", "defineModule", "id", "activatesOn", "oneOf", "Events", "SetupSettings", "SetupAppGraph", "activatesAfter", "SpaceEvents", "StateReady", "activate", "SpaceState", "SpaceSettings", "SetupTranslations", "contributes", "Capabilities", "Translations", "translations", "osTranslations", "SetupMetadata", "Metadata", "CollectionType", "typename", "metadata", "icon", "loadReferences", "collection", "RefArray", "loadAll", "objects", "Object", "values", "views", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "formSchema", "S", "Struct", "name", "optional", "String", "getIntent", "props", "createIntent", "CollectionAction", "Create", "SetupSettingsPanel", "SettingsSection", "label", "ns", "SPACE_PLUGIN", "position", "ClientReady", "activatesBefore", "Schema", "Startup", "ReactRoot", "SetupReactSurface", "ReactSurface", "SetupIntentResolver", "context", "IntentResolver", "AppGraphBuilder", "AppGraphReady", "AppGraphSerializer", "IdentityCreated", "DefaultSpaceReady", "allOf", "DispatcherReady", "LayoutReady", "AttentionEvents", "AttentionReady", "SpacesReady", "SetupArtifactDefinition", "Tools"]
7
7
  }