@dxos/plugin-space 0.9.0 → 0.9.1-staging.ee54ba693a

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 (466) hide show
  1. package/dist/lib/neutral/{CollectionArticle-S3OF5KJ7.mjs → CollectionArticle-BMH7SZ7Q.mjs} +9 -12
  2. package/dist/lib/neutral/CollectionArticle-BMH7SZ7Q.mjs.map +7 -0
  3. package/dist/lib/neutral/{CollectionSection-A5WRHE5Z.mjs → CollectionSection-BLYTGOKH.mjs} +2 -2
  4. package/dist/lib/neutral/{CollectionSection-A5WRHE5Z.mjs.map → CollectionSection-BLYTGOKH.mjs.map} +3 -3
  5. package/dist/lib/neutral/{CreateObjectDialog-66R3K6I3.mjs → CreateObjectDialog-5454N3FJ.mjs} +29 -14
  6. package/dist/lib/neutral/CreateObjectDialog-5454N3FJ.mjs.map +7 -0
  7. package/dist/lib/neutral/{CreateSpaceDialog-CDGSEIJB.mjs → CreateSpaceDialog-WWNUTLVK.mjs} +6 -6
  8. package/dist/lib/neutral/CreateSpaceDialog-WWNUTLVK.mjs.map +7 -0
  9. package/dist/lib/neutral/DefaultProperties-5SAWQC6I.mjs +58 -0
  10. package/dist/lib/neutral/DefaultProperties-5SAWQC6I.mjs.map +7 -0
  11. package/dist/lib/neutral/{ImportSpaceDialog-7GKV4OTF.mjs → ImportSpaceDialog-CSSRTFAO.mjs} +4 -4
  12. package/dist/lib/neutral/ImportSpaceDialog-CSSRTFAO.mjs.map +7 -0
  13. package/dist/lib/neutral/{InlineSyncStatus-TBJKZCH7.mjs → InlineSyncStatus-UOUTAPCU.mjs} +4 -4
  14. package/dist/lib/neutral/InlineSyncStatus-UOUTAPCU.mjs.map +7 -0
  15. package/dist/lib/neutral/{JoinDialog-SSFKRFTJ.mjs → JoinDialog-ATNUCNL2.mjs} +13 -30
  16. package/dist/lib/neutral/JoinDialog-ATNUCNL2.mjs.map +7 -0
  17. package/dist/lib/neutral/{MembersContainer-KMCQDWCS.mjs → MembersContainer-C4ZTP6ZW.mjs} +13 -9
  18. package/dist/lib/neutral/MembersContainer-C4ZTP6ZW.mjs.map +7 -0
  19. package/dist/lib/neutral/{MenuFooter-5JT7V5FZ.mjs → MenuFooter-FWE5LFM4.mjs} +6 -6
  20. package/dist/lib/neutral/MenuFooter-FWE5LFM4.mjs.map +7 -0
  21. package/dist/lib/neutral/{ObjectCardStack-IXNU3HEN.mjs → ObjectCardStack-DHVDRNRK.mjs} +4 -4
  22. package/dist/lib/neutral/ObjectCardStack-DHVDRNRK.mjs.map +7 -0
  23. package/dist/lib/neutral/RecordArticle-JSORXRAA.mjs +102 -0
  24. package/dist/lib/neutral/RecordArticle-JSORXRAA.mjs.map +7 -0
  25. package/dist/lib/neutral/{RelatedArticle-YDNGUDAJ.mjs → RelatedArticle-Z777WVDW.mjs} +11 -10
  26. package/dist/lib/neutral/RelatedArticle-Z777WVDW.mjs.map +7 -0
  27. package/dist/lib/neutral/RenamePopover-AZT2KPOF.mjs +104 -0
  28. package/dist/lib/neutral/RenamePopover-AZT2KPOF.mjs.map +7 -0
  29. package/dist/lib/neutral/{SchemaContainer-Q4BP6X2M.mjs → SchemaContainer-4GJKQBXM.mjs} +9 -5
  30. package/dist/lib/neutral/SchemaContainer-4GJKQBXM.mjs.map +7 -0
  31. package/dist/lib/neutral/{SmallPresenceLive-GUF4WLUC.mjs → SmallPresenceLive-FW3AMEY5.mjs} +2 -2
  32. package/dist/lib/neutral/SpaceHomeArticle-Y47TLZ72.mjs +78 -0
  33. package/dist/lib/neutral/SpaceHomeArticle-Y47TLZ72.mjs.map +7 -0
  34. package/dist/lib/neutral/SpaceHomeRecent-S57AO3EV.mjs +89 -0
  35. package/dist/lib/neutral/SpaceHomeRecent-S57AO3EV.mjs.map +7 -0
  36. package/dist/lib/neutral/SpacePlugin.mjs +1 -1
  37. package/dist/lib/neutral/SpacePlugin.node.mjs +4 -4
  38. package/dist/lib/neutral/SpacePlugin.node.mjs.map +3 -3
  39. package/dist/lib/neutral/{SpacePresence-ACEXUS3N.mjs → SpacePresence-T37WH43Y.mjs} +2 -2
  40. package/dist/lib/neutral/SpaceSettings-6CZF7GEO.mjs +60 -0
  41. package/dist/lib/neutral/SpaceSettings-6CZF7GEO.mjs.map +7 -0
  42. package/dist/lib/neutral/{SpaceSettingsContainer-IB34TEOB.mjs → SpaceSettingsContainer-72CJWELM.mjs} +44 -41
  43. package/dist/lib/neutral/SpaceSettingsContainer-72CJWELM.mjs.map +7 -0
  44. package/dist/lib/neutral/{SyncStatus-CWOXWDDZ.mjs → SyncStatus-J7CHLO5O.mjs} +3 -3
  45. package/dist/lib/neutral/SyncStatus-J7CHLO5O.mjs.map +7 -0
  46. package/dist/lib/neutral/TypeCollectionArticle-W76ADS2G.mjs +143 -0
  47. package/dist/lib/neutral/TypeCollectionArticle-W76ADS2G.mjs.map +7 -0
  48. package/dist/lib/neutral/{add-object-QYOMCBJA.mjs → add-object-H2N4AOQJ.mjs} +16 -16
  49. package/dist/lib/neutral/add-object-H2N4AOQJ.mjs.map +7 -0
  50. package/dist/lib/neutral/{add-relation-HV3VCMJG.mjs → add-relation-BGTLART5.mjs} +3 -3
  51. package/dist/lib/neutral/{add-type-CZVKSEIW.mjs → add-type-JIDLRANR.mjs} +3 -3
  52. package/dist/lib/neutral/{add-type-CZVKSEIW.mjs.map → add-type-JIDLRANR.mjs.map} +1 -1
  53. package/dist/lib/neutral/{app-graph-builder-SQGCUCDO.mjs → app-graph-builder-7H2KOD4B.mjs} +284 -203
  54. package/dist/lib/neutral/app-graph-builder-7H2KOD4B.mjs.map +7 -0
  55. package/dist/lib/neutral/capabilities/index.mjs +14 -16
  56. package/dist/lib/neutral/capabilities/index.mjs.map +3 -3
  57. package/dist/lib/neutral/capabilities/node.mjs +3 -3
  58. package/dist/lib/neutral/{chunk-7WUJENBF.mjs → chunk-52ASDNRA.mjs} +5 -6
  59. package/dist/lib/neutral/chunk-52ASDNRA.mjs.map +7 -0
  60. package/dist/lib/neutral/chunk-5ZZS3KMK.mjs +46 -0
  61. package/dist/lib/neutral/chunk-5ZZS3KMK.mjs.map +7 -0
  62. package/dist/lib/neutral/chunk-C2ULK22J.mjs +17 -0
  63. package/dist/lib/neutral/chunk-C2ULK22J.mjs.map +7 -0
  64. package/dist/lib/neutral/{chunk-K34BPPQE.mjs → chunk-F5KLUP2P.mjs} +35 -18
  65. package/dist/lib/neutral/chunk-F5KLUP2P.mjs.map +7 -0
  66. package/dist/lib/neutral/{chunk-JHZGRYGS.mjs → chunk-G2KHP7FX.mjs} +2 -2
  67. package/dist/lib/neutral/{chunk-JHZGRYGS.mjs.map → chunk-G2KHP7FX.mjs.map} +2 -2
  68. package/dist/lib/neutral/{chunk-YY62663T.mjs → chunk-LMUG6PEJ.mjs} +4 -5
  69. package/dist/lib/neutral/chunk-LMUG6PEJ.mjs.map +7 -0
  70. package/dist/lib/neutral/{chunk-EEXRKYOD.mjs → chunk-RAAHDTVF.mjs} +9 -5
  71. package/dist/lib/neutral/chunk-RAAHDTVF.mjs.map +7 -0
  72. package/dist/lib/neutral/{chunk-BBQR23DW.mjs → chunk-SPWAMXNR.mjs} +105 -128
  73. package/dist/lib/neutral/chunk-SPWAMXNR.mjs.map +7 -0
  74. package/dist/lib/neutral/chunk-U5WTDOMV.mjs +8 -0
  75. package/dist/lib/neutral/chunk-V7JALUM3.mjs +9 -0
  76. package/dist/lib/neutral/chunk-V7JALUM3.mjs.map +7 -0
  77. package/dist/lib/neutral/{close-FGQN37PK.mjs → close-5WEQZRNK.mjs} +3 -3
  78. package/dist/lib/neutral/components/index.mjs +22 -23
  79. package/dist/lib/neutral/components/index.mjs.map +4 -4
  80. package/dist/lib/neutral/constants.mjs +16 -0
  81. package/dist/lib/neutral/constants.mjs.map +7 -0
  82. package/dist/lib/neutral/containers/index.mjs +29 -23
  83. package/dist/lib/neutral/containers/index.mjs.map +3 -3
  84. package/dist/lib/neutral/{create-EPIFSRJA.mjs → create-QZ47FHQU.mjs} +7 -7
  85. package/dist/lib/neutral/create-QZ47FHQU.mjs.map +7 -0
  86. package/dist/lib/neutral/{create-object-22WUOWZQ.mjs → create-object-ZU6FZW5X.mjs} +1 -6
  87. package/dist/lib/neutral/create-object-ZU6FZW5X.mjs.map +7 -0
  88. package/dist/lib/neutral/{delete-LIA5M3WI.mjs → delete-SPCU2VFM.mjs} +3 -3
  89. package/dist/lib/neutral/{delete-field-ZIGFXFHY.mjs → delete-field-TAKJVEAD.mjs} +3 -3
  90. package/dist/lib/neutral/{duplicate-object-X37FM6PW.mjs → duplicate-object-BUPZOO6S.mjs} +3 -3
  91. package/dist/lib/neutral/{export-space-VWJHVXWF.mjs → export-space-S5SCAL4M.mjs} +3 -3
  92. package/dist/lib/neutral/{get-share-link-3LEA5FSK.mjs → get-share-link-CLM5IQRL.mjs} +4 -4
  93. package/dist/lib/neutral/hooks/index.mjs +16 -4
  94. package/dist/lib/neutral/hooks/index.mjs.map +3 -3
  95. package/dist/lib/neutral/{identity-created-57RML5XT.mjs → identity-created-BEYMLBK4.mjs} +5 -5
  96. package/dist/lib/neutral/identity-created-BEYMLBK4.mjs.map +7 -0
  97. package/dist/lib/neutral/{import-space-Y5L3QE3C.mjs → import-space-LJQK3KT7.mjs} +3 -3
  98. package/dist/lib/neutral/index.mjs +16 -6
  99. package/dist/lib/neutral/join-FSODYIOC.mjs +54 -0
  100. package/dist/lib/neutral/join-FSODYIOC.mjs.map +7 -0
  101. package/dist/lib/neutral/meta.json +1 -1
  102. package/dist/lib/neutral/meta.mjs +1 -1
  103. package/dist/lib/neutral/{migrate-G7I52UKD.mjs → migrate-WHM6LU7L.mjs} +4 -4
  104. package/dist/lib/neutral/{migrate-G7I52UKD.mjs.map → migrate-WHM6LU7L.mjs.map} +3 -3
  105. package/dist/lib/neutral/{navigation-handler-QQJYEMAS.mjs → navigation-handler-ZF7MV2HL.mjs} +16 -10
  106. package/dist/lib/neutral/navigation-handler-ZF7MV2HL.mjs.map +7 -0
  107. package/dist/lib/neutral/{navigation-resolver-IFVQRCGU.mjs → navigation-resolver-KBESOSWU.mjs} +11 -11
  108. package/dist/lib/neutral/navigation-resolver-KBESOSWU.mjs.map +7 -0
  109. package/dist/lib/neutral/{open-CPWVZSI4.mjs → open-JCXTL3SK.mjs} +3 -3
  110. package/dist/lib/neutral/{open-create-object-4LN4PR6N.mjs → open-create-object-WAIAU7TA.mjs} +6 -6
  111. package/dist/lib/neutral/{open-create-space-VPAW3F2T.mjs → open-create-space-VU47FWPZ.mjs} +6 -6
  112. package/dist/lib/neutral/{open-import-space-VLQ5V55H.mjs → open-import-space-GUHIEWYB.mjs} +6 -6
  113. package/dist/lib/neutral/{open-members-BEXOSSBS.mjs → open-members-MLLBHKUU.mjs} +6 -6
  114. package/dist/lib/neutral/open-members-MLLBHKUU.mjs.map +7 -0
  115. package/dist/lib/neutral/{open-settings-RHDBW2K5.mjs → open-settings-DTPZF4U4.mjs} +6 -6
  116. package/dist/lib/neutral/open-settings-DTPZF4U4.mjs.map +7 -0
  117. package/dist/lib/neutral/operations/index.mjs +3 -3
  118. package/dist/lib/neutral/plugin.mjs +4 -4
  119. package/dist/lib/neutral/{react-root-2DJPZQT4.mjs → react-root-YLYRCSAZ.mjs} +2 -2
  120. package/dist/lib/neutral/{react-root-2DJPZQT4.mjs.map → react-root-YLYRCSAZ.mjs.map} +3 -3
  121. package/dist/lib/neutral/{react-surface-LYCTOQLY.mjs → react-surface-LRA7GIFN.mjs} +77 -80
  122. package/dist/lib/neutral/react-surface-LRA7GIFN.mjs.map +7 -0
  123. package/dist/lib/neutral/{remove-objects-OWDMA4IF.mjs → remove-objects-WEO66EDS.mjs} +5 -5
  124. package/dist/lib/neutral/remove-objects-WEO66EDS.mjs.map +7 -0
  125. package/dist/lib/neutral/{rename-SR6BBSPU.mjs → rename-Q6UNCBIM.mjs} +9 -8
  126. package/dist/lib/neutral/rename-Q6UNCBIM.mjs.map +7 -0
  127. package/dist/lib/neutral/{rename-object-5H6E5AOX.mjs → rename-object-2UCEGU7U.mjs} +9 -8
  128. package/dist/lib/neutral/rename-object-2UCEGU7U.mjs.map +7 -0
  129. package/dist/lib/neutral/{repair-PSYRVSJ6.mjs → repair-HMH476U3.mjs} +3 -3
  130. package/dist/lib/neutral/repair-HMH476U3.mjs.map +7 -0
  131. package/dist/lib/neutral/{restore-field-UHDG2ZQM.mjs → restore-field-6CQAFOXY.mjs} +3 -3
  132. package/dist/lib/neutral/{restore-objects-2UD5P6OC.mjs → restore-objects-3VINLP7C.mjs} +3 -3
  133. package/dist/lib/neutral/{settings-Q32EQCHX.mjs → settings-5IBSYBVU.mjs} +3 -3
  134. package/dist/lib/neutral/{settings-Q32EQCHX.mjs.map → settings-5IBSYBVU.mjs.map} +3 -3
  135. package/dist/lib/neutral/{share-5Y4NZA75.mjs → share-A4WPILNF.mjs} +3 -3
  136. package/dist/lib/neutral/{snapshot-H3HKOFVP.mjs → snapshot-HBYMAPA7.mjs} +3 -3
  137. package/dist/lib/neutral/{spaces-ready-GBF72QJH.mjs → spaces-ready-GWMSU72V.mjs} +12 -12
  138. package/dist/lib/neutral/spaces-ready-GWMSU72V.mjs.map +7 -0
  139. package/dist/lib/neutral/{state-DPBOZRAW.mjs → state-KMH2NUAL.mjs} +2 -2
  140. package/dist/lib/neutral/state-KMH2NUAL.mjs.map +7 -0
  141. package/dist/lib/neutral/testing.mjs +1 -1
  142. package/dist/lib/neutral/translations.mjs +18 -8
  143. package/dist/lib/neutral/translations.mjs.map +3 -3
  144. package/dist/lib/neutral/types/index.mjs +9 -3
  145. package/dist/lib/neutral/{undo-mappings-OBRQOYN4.mjs → undo-mappings-P43EAUGI.mjs} +5 -5
  146. package/dist/lib/neutral/{undo-mappings-OBRQOYN4.mjs.map → undo-mappings-P43EAUGI.mjs.map} +3 -3
  147. package/dist/lib/neutral/{wait-for-object-3TAWUWTP.mjs → wait-for-object-U6P2NNWY.mjs} +3 -3
  148. package/dist/types/dx.config.d.ts +28 -0
  149. package/dist/types/dx.config.d.ts.map +1 -0
  150. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  151. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +1 -1
  152. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts +19 -25
  153. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts.map +1 -1
  154. package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts.map +1 -1
  155. package/dist/types/src/capabilities/app-graph-builder/extensions/database.d.ts +15 -33
  156. package/dist/types/src/capabilities/app-graph-builder/extensions/database.d.ts.map +1 -1
  157. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts +3 -2
  158. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts.map +1 -1
  159. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts +1 -5
  160. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts.map +1 -1
  161. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts +29 -4
  162. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts.map +1 -1
  163. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +1 -1
  164. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -1
  165. package/dist/types/src/capabilities/create-object.d.ts +1 -33
  166. package/dist/types/src/capabilities/create-object.d.ts.map +1 -1
  167. package/dist/types/src/capabilities/index.d.ts +10 -54
  168. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  169. package/dist/types/src/capabilities/navigation-handler/index.d.ts +1 -1
  170. package/dist/types/src/capabilities/navigation-handler/index.d.ts.map +1 -1
  171. package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts +1 -2
  172. package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts.map +1 -1
  173. package/dist/types/src/capabilities/navigation-resolver.d.ts +1 -2
  174. package/dist/types/src/capabilities/navigation-resolver.d.ts.map +1 -1
  175. package/dist/types/src/capabilities/node.d.ts +3 -33
  176. package/dist/types/src/capabilities/node.d.ts.map +1 -1
  177. package/dist/types/src/capabilities/react-root.d.ts +1 -5
  178. package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
  179. package/dist/types/src/capabilities/react-surface.d.ts +2 -2
  180. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  181. package/dist/types/src/capabilities/repair.d.ts +1 -2
  182. package/dist/types/src/capabilities/repair.d.ts.map +1 -1
  183. package/dist/types/src/capabilities/settings.d.ts +1 -3
  184. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  185. package/dist/types/src/capabilities/spaces-ready.d.ts +1 -1
  186. package/dist/types/src/capabilities/state.d.ts +1 -13
  187. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  188. package/dist/types/src/capabilities/undo-mappings.d.ts +2 -3
  189. package/dist/types/src/capabilities/undo-mappings.d.ts.map +1 -1
  190. package/dist/types/src/commands/database/add.d.ts.map +1 -1
  191. package/dist/types/src/commands/queue/query.d.ts.map +1 -1
  192. package/dist/types/src/components/ForeignKeys/ForeignKeys.d.ts.map +1 -1
  193. package/dist/types/src/components/index.d.ts +2 -2
  194. package/dist/types/src/components/index.d.ts.map +1 -1
  195. package/dist/types/src/constants.d.ts +1 -2
  196. package/dist/types/src/constants.d.ts.map +1 -1
  197. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts.map +1 -1
  198. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts +142 -52
  199. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  200. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.d.ts.map +1 -1
  201. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts +142 -52
  202. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts.map +1 -1
  203. package/dist/types/src/containers/DefaultProperties/DefaultProperties.d.ts +15 -0
  204. package/dist/types/src/containers/DefaultProperties/DefaultProperties.d.ts.map +1 -0
  205. package/dist/types/src/containers/DefaultProperties/index.d.ts +2 -0
  206. package/dist/types/src/containers/DefaultProperties/index.d.ts.map +1 -0
  207. package/dist/types/src/containers/JoinDialog/JoinDialog.d.ts.map +1 -1
  208. package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts +142 -52
  209. package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts.map +1 -1
  210. package/dist/types/src/containers/MembersContainer/MembersContainer.d.ts.map +1 -1
  211. package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts.map +1 -1
  212. package/dist/types/src/containers/RelatedArticle/RelatedArticle.d.ts.map +1 -1
  213. package/dist/types/src/containers/RenamePopover/RenamePopover.d.ts +16 -0
  214. package/dist/types/src/containers/RenamePopover/RenamePopover.d.ts.map +1 -0
  215. package/dist/types/src/containers/RenamePopover/index.d.ts +3 -0
  216. package/dist/types/src/containers/RenamePopover/index.d.ts.map +1 -0
  217. package/dist/types/src/containers/SchemaContainer/SchemaContainer.d.ts.map +1 -1
  218. package/dist/types/src/containers/SpaceHomeArticle/SpaceHomeArticle.d.ts +15 -0
  219. package/dist/types/src/containers/SpaceHomeArticle/SpaceHomeArticle.d.ts.map +1 -0
  220. package/dist/types/src/containers/SpaceHomeArticle/index.d.ts +2 -0
  221. package/dist/types/src/containers/{ObjectProperties → SpaceHomeArticle}/index.d.ts.map +1 -1
  222. package/dist/types/src/containers/SpaceHomeRecent/SpaceHomeRecent.d.ts +22 -0
  223. package/dist/types/src/containers/SpaceHomeRecent/SpaceHomeRecent.d.ts.map +1 -0
  224. package/dist/types/src/containers/SpaceHomeRecent/index.d.ts +2 -0
  225. package/dist/types/src/containers/SpaceHomeRecent/index.d.ts.map +1 -0
  226. package/dist/types/src/containers/SpacePresence/SpacePresence.d.ts.map +1 -1
  227. package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts +142 -52
  228. package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts.map +1 -1
  229. package/dist/types/src/containers/SpacePresence/index.d.ts +1 -1
  230. package/dist/types/src/containers/SpacePresence/index.d.ts.map +1 -1
  231. package/dist/types/src/containers/SpaceSettings/SpaceSettings.d.ts +11 -0
  232. package/dist/types/src/containers/SpaceSettings/SpaceSettings.d.ts.map +1 -0
  233. package/dist/types/src/{components → containers}/SpaceSettings/SpaceSettings.stories.d.ts +143 -53
  234. package/dist/types/src/{components → containers}/SpaceSettings/SpaceSettings.stories.d.ts.map +1 -1
  235. package/dist/types/src/{components → containers}/SpaceSettings/index.d.ts.map +1 -1
  236. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts +142 -52
  237. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts.map +1 -1
  238. package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts +142 -52
  239. package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  240. package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.d.ts +16 -0
  241. package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.d.ts.map +1 -0
  242. package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.stories.d.ts +21 -0
  243. package/dist/types/src/containers/TypeCollectionArticle/TypeCollectionArticle.stories.d.ts.map +1 -0
  244. package/dist/types/src/containers/TypeCollectionArticle/index.d.ts +2 -0
  245. package/dist/types/src/containers/TypeCollectionArticle/index.d.ts.map +1 -0
  246. package/dist/types/src/containers/index.d.ts +7 -3
  247. package/dist/types/src/containers/index.d.ts.map +1 -1
  248. package/dist/types/src/errors.d.ts +33 -0
  249. package/dist/types/src/errors.d.ts.map +1 -0
  250. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
  251. package/dist/types/src/hooks/useRelatedObjects.d.ts.map +1 -1
  252. package/dist/types/src/index.d.ts +1 -0
  253. package/dist/types/src/index.d.ts.map +1 -1
  254. package/dist/types/src/meta.d.ts +32 -2
  255. package/dist/types/src/meta.d.ts.map +1 -1
  256. package/dist/types/src/operations/add-object.d.ts.map +1 -1
  257. package/dist/types/src/operations/definitions.d.ts +9 -37
  258. package/dist/types/src/operations/definitions.d.ts.map +1 -1
  259. package/dist/types/src/operations/helpers.d.ts.map +1 -1
  260. package/dist/types/src/operations/join.d.ts.map +1 -1
  261. package/dist/types/src/operations/remove-objects.d.ts.map +1 -1
  262. package/dist/types/src/operations/rename-object.d.ts.map +1 -1
  263. package/dist/types/src/operations/rename.d.ts.map +1 -1
  264. package/dist/types/src/translations.d.ts +142 -52
  265. package/dist/types/src/translations.d.ts.map +1 -1
  266. package/dist/types/src/types/Settings.d.ts +3 -1
  267. package/dist/types/src/types/Settings.d.ts.map +1 -1
  268. package/dist/types/src/types/capabilities.d.ts +1 -1
  269. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  270. package/dist/types/src/types/events.d.ts.map +1 -1
  271. package/dist/types/src/types/form.d.ts +7 -1
  272. package/dist/types/src/types/form.d.ts.map +1 -1
  273. package/dist/types/src/types/index.d.ts +1 -0
  274. package/dist/types/src/types/index.d.ts.map +1 -1
  275. package/dist/types/src/types/surface.d.ts +26 -0
  276. package/dist/types/src/types/surface.d.ts.map +1 -0
  277. package/dist/types/src/types/types.d.ts +7 -0
  278. package/dist/types/src/types/types.d.ts.map +1 -1
  279. package/dist/types/src/util.d.ts.map +1 -1
  280. package/dist/types/tsconfig.tsbuildinfo +1 -1
  281. package/dx.config.ts +35 -0
  282. package/package.json +71 -59
  283. package/src/SpacePlugin.test.ts +1 -1
  284. package/src/SpacePlugin.ts +4 -10
  285. package/src/capabilities/app-graph-builder/extensions/collections.ts +82 -69
  286. package/src/capabilities/app-graph-builder/extensions/companions.ts +6 -5
  287. package/src/capabilities/app-graph-builder/extensions/database.ts +118 -91
  288. package/src/capabilities/app-graph-builder/extensions/settings.ts +17 -14
  289. package/src/capabilities/app-graph-builder/extensions/shared.test.ts +13 -9
  290. package/src/capabilities/app-graph-builder/extensions/shared.ts +5 -23
  291. package/src/capabilities/app-graph-builder/extensions/spaces.ts +78 -29
  292. package/src/capabilities/create-object.ts +0 -5
  293. package/src/capabilities/identity-created.ts +4 -4
  294. package/src/capabilities/index.ts +0 -1
  295. package/src/capabilities/navigation-handler/navigation-handler.ts +14 -4
  296. package/src/capabilities/navigation-resolver.ts +13 -20
  297. package/src/capabilities/react-root.tsx +1 -1
  298. package/src/capabilities/react-surface.tsx +95 -99
  299. package/src/capabilities/repair.ts +4 -2
  300. package/src/capabilities/settings.ts +2 -2
  301. package/src/capabilities/spaces-ready.ts +9 -16
  302. package/src/capabilities/state.ts +1 -1
  303. package/src/capabilities/undo-mappings.ts +3 -3
  304. package/src/commands/database/add.ts +4 -2
  305. package/src/commands/queue/query.ts +4 -3
  306. package/src/components/AwaitingObject/AwaitingObject.tsx +1 -1
  307. package/src/components/CreateObjectPanel/CreateObjectPanel.tsx +2 -2
  308. package/src/components/ForeignKeys/ForeignKeys.tsx +21 -20
  309. package/src/components/index.ts +3 -3
  310. package/src/constants.ts +5 -6
  311. package/src/containers/CollectionArticle/CollectionArticle.tsx +10 -6
  312. package/src/containers/CollectionSection/CollectionSection.tsx +1 -1
  313. package/src/containers/CreateObjectDialog/CreateObjectDialog.stories.tsx +1 -1
  314. package/src/containers/CreateObjectDialog/CreateObjectDialog.tsx +48 -10
  315. package/src/containers/CreateSpaceDialog/CreateSpaceDialog.tsx +5 -5
  316. package/src/containers/DefaultProperties/DefaultProperties.tsx +69 -0
  317. package/src/containers/DefaultProperties/index.ts +5 -0
  318. package/src/containers/ImportSpaceDialog/ImportSpaceDialog.tsx +3 -3
  319. package/src/containers/InlineSyncStatus/InlineSyncStatus.tsx +3 -3
  320. package/src/containers/JoinDialog/JoinDialog.tsx +14 -25
  321. package/src/containers/MembersContainer/MembersContainer.tsx +42 -38
  322. package/src/containers/MenuFooter/MenuFooter.tsx +3 -3
  323. package/src/containers/ObjectCardStack/ObjectCardStack.tsx +3 -3
  324. package/src/containers/RecordArticle/RecordArticle.tsx +67 -8
  325. package/src/containers/RelatedArticle/RelatedArticle.tsx +18 -15
  326. package/src/containers/RenamePopover/RenamePopover.tsx +125 -0
  327. package/src/containers/RenamePopover/index.ts +6 -0
  328. package/src/containers/SchemaContainer/SchemaContainer.tsx +22 -18
  329. package/src/containers/SpaceHomeArticle/SpaceHomeArticle.tsx +100 -0
  330. package/src/containers/SpaceHomeArticle/index.ts +5 -0
  331. package/src/containers/SpaceHomeRecent/SpaceHomeRecent.tsx +103 -0
  332. package/src/containers/SpaceHomeRecent/index.ts +5 -0
  333. package/src/containers/SpacePresence/SpacePresence.tsx +23 -21
  334. package/src/containers/SpacePresence/index.ts +1 -1
  335. package/src/{components → containers}/SpaceSettings/SpaceSettings.stories.tsx +1 -1
  336. package/src/containers/SpaceSettings/SpaceSettings.tsx +75 -0
  337. package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.tsx +120 -111
  338. package/src/containers/SyncStatus/SyncStatus.tsx +2 -2
  339. package/src/containers/TypeCollectionArticle/TypeCollectionArticle.stories.tsx +116 -0
  340. package/src/containers/TypeCollectionArticle/TypeCollectionArticle.tsx +162 -0
  341. package/src/containers/TypeCollectionArticle/index.ts +5 -0
  342. package/src/containers/index.ts +7 -3
  343. package/src/errors.ts +11 -0
  344. package/src/hooks/useInputSurfaceLookup.tsx +3 -2
  345. package/src/hooks/useRelatedObjects.ts +13 -1
  346. package/src/index.ts +1 -0
  347. package/src/meta.ts +2 -27
  348. package/src/operations/add-object.ts +12 -18
  349. package/src/operations/add-type.ts +1 -1
  350. package/src/operations/create.ts +4 -4
  351. package/src/operations/definitions.ts +2 -3
  352. package/src/operations/helpers.ts +1 -1
  353. package/src/operations/join.ts +19 -0
  354. package/src/operations/migrate.ts +1 -1
  355. package/src/operations/open-members.ts +3 -3
  356. package/src/operations/open-settings.ts +3 -3
  357. package/src/operations/remove-objects.ts +3 -2
  358. package/src/operations/rename-object.ts +3 -2
  359. package/src/operations/rename.ts +3 -2
  360. package/src/translations.ts +18 -7
  361. package/src/types/Settings.ts +10 -1
  362. package/src/types/capabilities.ts +9 -9
  363. package/src/types/events.ts +5 -5
  364. package/src/types/form.ts +5 -1
  365. package/src/types/index.ts +1 -0
  366. package/src/types/surface.ts +31 -0
  367. package/src/types/types.ts +9 -1
  368. package/src/util.ts +3 -4
  369. package/dist/lib/neutral/CollectionArticle-S3OF5KJ7.mjs.map +0 -7
  370. package/dist/lib/neutral/CreateObjectDialog-66R3K6I3.mjs.map +0 -7
  371. package/dist/lib/neutral/CreateSpaceDialog-CDGSEIJB.mjs.map +0 -7
  372. package/dist/lib/neutral/EntityRenamePopover-MYSW262F.mjs +0 -59
  373. package/dist/lib/neutral/EntityRenamePopover-MYSW262F.mjs.map +0 -7
  374. package/dist/lib/neutral/ImportSpaceDialog-7GKV4OTF.mjs.map +0 -7
  375. package/dist/lib/neutral/InlineSyncStatus-TBJKZCH7.mjs.map +0 -7
  376. package/dist/lib/neutral/JoinDialog-SSFKRFTJ.mjs.map +0 -7
  377. package/dist/lib/neutral/MembersContainer-KMCQDWCS.mjs.map +0 -7
  378. package/dist/lib/neutral/MenuFooter-5JT7V5FZ.mjs.map +0 -7
  379. package/dist/lib/neutral/ObjectCardStack-IXNU3HEN.mjs.map +0 -7
  380. package/dist/lib/neutral/ObjectProperties-BF6KGFFC.mjs +0 -33
  381. package/dist/lib/neutral/ObjectProperties-BF6KGFFC.mjs.map +0 -7
  382. package/dist/lib/neutral/RecordArticle-QWGH25NT.mjs +0 -51
  383. package/dist/lib/neutral/RecordArticle-QWGH25NT.mjs.map +0 -7
  384. package/dist/lib/neutral/RelatedArticle-YDNGUDAJ.mjs.map +0 -7
  385. package/dist/lib/neutral/SchemaContainer-Q4BP6X2M.mjs.map +0 -7
  386. package/dist/lib/neutral/SpaceRenamePopover-KFWL4CTJ.mjs +0 -56
  387. package/dist/lib/neutral/SpaceRenamePopover-KFWL4CTJ.mjs.map +0 -7
  388. package/dist/lib/neutral/SpaceSettings-YAHBOY5T.mjs +0 -37
  389. package/dist/lib/neutral/SpaceSettings-YAHBOY5T.mjs.map +0 -7
  390. package/dist/lib/neutral/SpaceSettingsContainer-IB34TEOB.mjs.map +0 -7
  391. package/dist/lib/neutral/SyncStatus-CWOXWDDZ.mjs.map +0 -7
  392. package/dist/lib/neutral/add-object-QYOMCBJA.mjs.map +0 -7
  393. package/dist/lib/neutral/app-graph-builder-SQGCUCDO.mjs.map +0 -7
  394. package/dist/lib/neutral/app-graph-serializer-IBPPU5VR.mjs +0 -81
  395. package/dist/lib/neutral/app-graph-serializer-IBPPU5VR.mjs.map +0 -7
  396. package/dist/lib/neutral/chunk-4RTSNTDC.mjs +0 -37
  397. package/dist/lib/neutral/chunk-4RTSNTDC.mjs.map +0 -7
  398. package/dist/lib/neutral/chunk-7WUJENBF.mjs.map +0 -7
  399. package/dist/lib/neutral/chunk-B7DBIARR.mjs +0 -8
  400. package/dist/lib/neutral/chunk-BBQR23DW.mjs.map +0 -7
  401. package/dist/lib/neutral/chunk-EEXRKYOD.mjs.map +0 -7
  402. package/dist/lib/neutral/chunk-F5MESIRH.mjs +0 -19
  403. package/dist/lib/neutral/chunk-F5MESIRH.mjs.map +0 -7
  404. package/dist/lib/neutral/chunk-K34BPPQE.mjs.map +0 -7
  405. package/dist/lib/neutral/chunk-YY62663T.mjs.map +0 -7
  406. package/dist/lib/neutral/create-EPIFSRJA.mjs.map +0 -7
  407. package/dist/lib/neutral/create-object-22WUOWZQ.mjs.map +0 -7
  408. package/dist/lib/neutral/identity-created-57RML5XT.mjs.map +0 -7
  409. package/dist/lib/neutral/join-Z5K4OAIG.mjs +0 -28
  410. package/dist/lib/neutral/join-Z5K4OAIG.mjs.map +0 -7
  411. package/dist/lib/neutral/navigation-handler-QQJYEMAS.mjs.map +0 -7
  412. package/dist/lib/neutral/navigation-resolver-IFVQRCGU.mjs.map +0 -7
  413. package/dist/lib/neutral/open-members-BEXOSSBS.mjs.map +0 -7
  414. package/dist/lib/neutral/open-settings-RHDBW2K5.mjs.map +0 -7
  415. package/dist/lib/neutral/react-surface-LYCTOQLY.mjs.map +0 -7
  416. package/dist/lib/neutral/remove-objects-OWDMA4IF.mjs.map +0 -7
  417. package/dist/lib/neutral/rename-SR6BBSPU.mjs.map +0 -7
  418. package/dist/lib/neutral/rename-object-5H6E5AOX.mjs.map +0 -7
  419. package/dist/lib/neutral/repair-PSYRVSJ6.mjs.map +0 -7
  420. package/dist/lib/neutral/spaces-ready-GBF72QJH.mjs.map +0 -7
  421. package/dist/lib/neutral/state-DPBOZRAW.mjs.map +0 -7
  422. package/dist/types/src/capabilities/app-graph-serializer.d.ts +0 -5
  423. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +0 -1
  424. package/dist/types/src/components/SpaceSettings/SpaceSettings.d.ts +0 -8
  425. package/dist/types/src/components/SpaceSettings/SpaceSettings.d.ts.map +0 -1
  426. package/dist/types/src/containers/EntityRenamePopover/EntityRenamePopover.d.ts +0 -7
  427. package/dist/types/src/containers/EntityRenamePopover/EntityRenamePopover.d.ts.map +0 -1
  428. package/dist/types/src/containers/EntityRenamePopover/index.d.ts +0 -2
  429. package/dist/types/src/containers/EntityRenamePopover/index.d.ts.map +0 -1
  430. package/dist/types/src/containers/ObjectProperties/ObjectProperties.d.ts +0 -10
  431. package/dist/types/src/containers/ObjectProperties/ObjectProperties.d.ts.map +0 -1
  432. package/dist/types/src/containers/ObjectProperties/index.d.ts +0 -2
  433. package/dist/types/src/containers/SpaceRenamePopover/SpaceRenamePopover.d.ts +0 -7
  434. package/dist/types/src/containers/SpaceRenamePopover/SpaceRenamePopover.d.ts.map +0 -1
  435. package/dist/types/src/containers/SpaceRenamePopover/index.d.ts +0 -2
  436. package/dist/types/src/containers/SpaceRenamePopover/index.d.ts.map +0 -1
  437. package/src/capabilities/app-graph-serializer.ts +0 -85
  438. package/src/components/SpaceSettings/SpaceSettings.tsx +0 -56
  439. package/src/containers/EntityRenamePopover/EntityRenamePopover.tsx +0 -52
  440. package/src/containers/EntityRenamePopover/index.ts +0 -5
  441. package/src/containers/ObjectProperties/ObjectProperties.tsx +0 -32
  442. package/src/containers/ObjectProperties/index.ts +0 -5
  443. package/src/containers/SpaceRenamePopover/SpaceRenamePopover.tsx +0 -54
  444. package/src/containers/SpaceRenamePopover/index.ts +0 -5
  445. /package/dist/lib/neutral/{SmallPresenceLive-GUF4WLUC.mjs.map → SmallPresenceLive-FW3AMEY5.mjs.map} +0 -0
  446. /package/dist/lib/neutral/{SpacePresence-ACEXUS3N.mjs.map → SpacePresence-T37WH43Y.mjs.map} +0 -0
  447. /package/dist/lib/neutral/{add-relation-HV3VCMJG.mjs.map → add-relation-BGTLART5.mjs.map} +0 -0
  448. /package/dist/lib/neutral/{chunk-B7DBIARR.mjs.map → chunk-U5WTDOMV.mjs.map} +0 -0
  449. /package/dist/lib/neutral/{close-FGQN37PK.mjs.map → close-5WEQZRNK.mjs.map} +0 -0
  450. /package/dist/lib/neutral/{delete-LIA5M3WI.mjs.map → delete-SPCU2VFM.mjs.map} +0 -0
  451. /package/dist/lib/neutral/{delete-field-ZIGFXFHY.mjs.map → delete-field-TAKJVEAD.mjs.map} +0 -0
  452. /package/dist/lib/neutral/{duplicate-object-X37FM6PW.mjs.map → duplicate-object-BUPZOO6S.mjs.map} +0 -0
  453. /package/dist/lib/neutral/{export-space-VWJHVXWF.mjs.map → export-space-S5SCAL4M.mjs.map} +0 -0
  454. /package/dist/lib/neutral/{get-share-link-3LEA5FSK.mjs.map → get-share-link-CLM5IQRL.mjs.map} +0 -0
  455. /package/dist/lib/neutral/{import-space-Y5L3QE3C.mjs.map → import-space-LJQK3KT7.mjs.map} +0 -0
  456. /package/dist/lib/neutral/{open-CPWVZSI4.mjs.map → open-JCXTL3SK.mjs.map} +0 -0
  457. /package/dist/lib/neutral/{open-create-object-4LN4PR6N.mjs.map → open-create-object-WAIAU7TA.mjs.map} +0 -0
  458. /package/dist/lib/neutral/{open-create-space-VPAW3F2T.mjs.map → open-create-space-VU47FWPZ.mjs.map} +0 -0
  459. /package/dist/lib/neutral/{open-import-space-VLQ5V55H.mjs.map → open-import-space-GUHIEWYB.mjs.map} +0 -0
  460. /package/dist/lib/neutral/{restore-field-UHDG2ZQM.mjs.map → restore-field-6CQAFOXY.mjs.map} +0 -0
  461. /package/dist/lib/neutral/{restore-objects-2UD5P6OC.mjs.map → restore-objects-3VINLP7C.mjs.map} +0 -0
  462. /package/dist/lib/neutral/{share-5Y4NZA75.mjs.map → share-A4WPILNF.mjs.map} +0 -0
  463. /package/dist/lib/neutral/{snapshot-H3HKOFVP.mjs.map → snapshot-HBYMAPA7.mjs.map} +0 -0
  464. /package/dist/lib/neutral/{wait-for-object-3TAWUWTP.mjs.map → wait-for-object-U6P2NNWY.mjs.map} +0 -0
  465. /package/dist/types/src/{components → containers}/SpaceSettings/index.d.ts +0 -0
  466. /package/src/{components → containers}/SpaceSettings/index.ts +0 -0
package/dx.config.ts ADDED
@@ -0,0 +1,35 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { Config2 } from '@dxos/app-framework/config';
6
+ import { trim } from '@dxos/util';
7
+
8
+ export default Config2.make({
9
+ plugin: {
10
+ key: 'org.dxos.plugin.space',
11
+ name: 'Spaces',
12
+ author: 'DXOS',
13
+ description: trim`
14
+ SpacePlugin is the core workspace container for DXOS Composer. It owns the full lifecycle of
15
+ collaborative spaces — creating, joining, opening, closing, and resetting them — and manages
16
+ the membership and invitation system that controls who can access each space.
17
+
18
+ The plugin maintains an ordered app-graph of every space and its collections, wires navigation
19
+ so that opening a space or object updates the layout, and tracks real-time peer presence so
20
+ that the UI can show which collaborators are viewing each object.
21
+
22
+ Object and schema management sit at the heart of SpacePlugin: it registers the canonical DXOS
23
+ schema types (Person, Task, Project, Event, …), provides the create-object dialog that all
24
+ other plugins populate with their own types, and exposes operations for adding, removing,
25
+ restoring, duplicating, and serialising objects. Import/export of space archives and schema
26
+ migrations are also handled here.
27
+
28
+ A full set of undo-aware operations (RemoveObjects/RestoreObjects, DeleteField/RestoreField)
29
+ integrates with the process manager so that destructive edits can be reversed in one step.
30
+ `,
31
+ icon: { key: 'ph--planet--regular' },
32
+ spec: 'PLUGIN.mdl',
33
+ tags: ['system'],
34
+ },
35
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/plugin-space",
3
- "version": "0.9.0",
3
+ "version": "0.9.1-staging.ee54ba693a",
4
4
  "description": "DXOS Surface plugin for DXOS ECHO Spaces",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -86,6 +86,16 @@
86
86
  "types": "./dist/types/src/plugin.d.ts",
87
87
  "default": "./dist/lib/neutral/plugin.mjs"
88
88
  },
89
+ "./components": {
90
+ "source": "./src/components/index.ts",
91
+ "types": "./dist/types/src/components/index.d.ts",
92
+ "default": "./dist/lib/neutral/components/index.mjs"
93
+ },
94
+ "./constants": {
95
+ "source": "./src/constants.ts",
96
+ "types": "./dist/types/src/constants.d.ts",
97
+ "default": "./dist/lib/neutral/constants.mjs"
98
+ },
89
99
  "./testing": {
90
100
  "source": "./src/testing.ts",
91
101
  "types": "./dist/types/src/testing.d.ts",
@@ -105,6 +115,7 @@
105
115
  "types": "dist/types/src/index.d.ts",
106
116
  "files": [
107
117
  "dist",
118
+ "dx.config.ts",
108
119
  "src",
109
120
  "PLUGIN.mdl"
110
121
  ],
@@ -114,74 +125,75 @@
114
125
  "@effect/cli": "0.75.2",
115
126
  "react-drag-drop-files": "^2.3.8",
116
127
  "react-qr-rounded": "^1.0.0",
117
- "@dxos/app-framework": "0.9.0",
118
- "@dxos/app-toolkit": "0.9.0",
119
- "@dxos/async": "0.9.0",
120
- "@dxos/cli-util": "0.9.0",
121
- "@dxos/client": "0.9.0",
122
- "@dxos/client-protocol": "0.9.0",
123
- "@dxos/compute": "0.9.0",
124
- "@dxos/context": "0.9.0",
125
- "@dxos/echo": "0.9.0",
126
- "@dxos/display-name": "0.9.0",
127
- "@dxos/echo-client": "0.9.0",
128
- "@dxos/effect": "0.9.0",
129
- "@dxos/keys": "0.9.0",
130
- "@dxos/log": "0.9.0",
131
- "@dxos/invariant": "0.9.0",
132
- "@dxos/plugin-client": "0.9.0",
133
- "@dxos/migrations": "0.9.0",
134
- "@dxos/plugin-attention": "0.9.0",
135
- "@dxos/plugin-settings": "0.9.0",
136
- "@dxos/plugin-graph": "0.9.0",
137
- "@dxos/plugin-status-bar": "0.9.0",
138
- "@dxos/plugin-observability": "0.9.0",
139
- "@dxos/protocols": "0.9.0",
140
- "@dxos/react-client": "0.9.0",
141
- "@dxos/react-ui-attention": "0.9.0",
142
- "@dxos/react-ui-components": "0.9.0",
143
- "@dxos/react-ui-list": "0.9.0",
144
- "@dxos/react-ui-form": "0.9.0",
145
- "@dxos/react-ui": "0.9.0",
146
- "@dxos/react-ui-masonry": "0.9.0",
147
- "@dxos/react-ui-menu": "0.9.0",
148
- "@dxos/react-ui-mosaic": "0.9.0",
149
- "@dxos/schema": "0.9.0",
150
- "@dxos/react-ui-pickers": "0.9.0",
151
- "@dxos/shell": "0.9.0",
152
- "@dxos/types": "0.9.0",
153
- "@dxos/react-ui-search": "0.9.0",
154
- "@dxos/ui-types": "0.9.0",
155
- "@dxos/util": "0.9.0",
156
- "@dxos/ui-theme": "0.9.0"
128
+ "@dxos/client-protocol": "0.9.1-staging.ee54ba693a",
129
+ "@dxos/async": "0.9.1-staging.ee54ba693a",
130
+ "@dxos/cli-util": "0.9.1-staging.ee54ba693a",
131
+ "@dxos/app-framework": "0.9.1-staging.ee54ba693a",
132
+ "@dxos/client": "0.9.1-staging.ee54ba693a",
133
+ "@dxos/compute": "0.9.1-staging.ee54ba693a",
134
+ "@dxos/context": "0.9.1-staging.ee54ba693a",
135
+ "@dxos/app-toolkit": "0.9.1-staging.ee54ba693a",
136
+ "@dxos/display-name": "0.9.1-staging.ee54ba693a",
137
+ "@dxos/echo": "0.9.1-staging.ee54ba693a",
138
+ "@dxos/echo-client": "0.9.1-staging.ee54ba693a",
139
+ "@dxos/effect": "0.9.1-staging.ee54ba693a",
140
+ "@dxos/errors": "0.9.1-staging.ee54ba693a",
141
+ "@dxos/keys": "0.9.1-staging.ee54ba693a",
142
+ "@dxos/migrations": "0.9.1-staging.ee54ba693a",
143
+ "@dxos/log": "0.9.1-staging.ee54ba693a",
144
+ "@dxos/plugin-attention": "0.9.1-staging.ee54ba693a",
145
+ "@dxos/plugin-graph": "0.9.1-staging.ee54ba693a",
146
+ "@dxos/invariant": "0.9.1-staging.ee54ba693a",
147
+ "@dxos/plugin-settings": "0.9.1-staging.ee54ba693a",
148
+ "@dxos/plugin-client": "0.9.1-staging.ee54ba693a",
149
+ "@dxos/plugin-observability": "0.9.1-staging.ee54ba693a",
150
+ "@dxos/protocols": "0.9.1-staging.ee54ba693a",
151
+ "@dxos/react-ui": "0.9.1-staging.ee54ba693a",
152
+ "@dxos/react-client": "0.9.1-staging.ee54ba693a",
153
+ "@dxos/react-ui-attention": "0.9.1-staging.ee54ba693a",
154
+ "@dxos/react-ui-form": "0.9.1-staging.ee54ba693a",
155
+ "@dxos/react-ui-components": "0.9.1-staging.ee54ba693a",
156
+ "@dxos/react-ui-list": "0.9.1-staging.ee54ba693a",
157
+ "@dxos/react-ui-masonry": "0.9.1-staging.ee54ba693a",
158
+ "@dxos/react-ui-menu": "0.9.1-staging.ee54ba693a",
159
+ "@dxos/react-ui-mosaic": "0.9.1-staging.ee54ba693a",
160
+ "@dxos/react-ui-pickers": "0.9.1-staging.ee54ba693a",
161
+ "@dxos/plugin-status-bar": "0.9.1-staging.ee54ba693a",
162
+ "@dxos/react-ui-search": "0.9.1-staging.ee54ba693a",
163
+ "@dxos/shell": "0.9.1-staging.ee54ba693a",
164
+ "@dxos/ui-types": "0.9.1-staging.ee54ba693a",
165
+ "@dxos/schema": "0.9.1-staging.ee54ba693a",
166
+ "@dxos/ui-theme": "0.9.1-staging.ee54ba693a",
167
+ "@dxos/util": "0.9.1-staging.ee54ba693a",
168
+ "@dxos/types": "0.9.1-staging.ee54ba693a"
157
169
  },
158
170
  "devDependencies": {
159
171
  "@atlaskit/pragmatic-drag-and-drop-hitbox": "1.1.0",
160
172
  "@babel/core": "^7.18.13",
161
173
  "@effect-atom/atom-react": "^0.5.0",
162
- "@effect/platform": "0.96.1",
163
- "@types/react": "~19.2.7",
174
+ "@effect/platform": "0.96.2",
175
+ "@types/react": "~19.2.17",
164
176
  "@types/react-dom": "~19.2.3",
165
- "effect": "3.21.3",
166
- "react": "~19.2.3",
167
- "react-dom": "~19.2.3",
177
+ "effect": "3.21.4",
178
+ "react": "~19.2.7",
179
+ "react-dom": "~19.2.7",
168
180
  "vite": "^8.0.16",
169
- "@dxos/plugin-preview": "0.9.0",
170
- "@dxos/lit-ui": "0.9.0",
171
- "@dxos/plugin-testing": "0.9.0",
172
- "@dxos/storybook-utils": "0.9.0",
173
- "@dxos/ui-theme": "0.9.0",
174
- "@dxos/react-ui": "0.9.0",
175
- "@dxos/random": "0.9.0"
181
+ "@dxos/plugin-preview": "0.9.1-staging.ee54ba693a",
182
+ "@dxos/plugin-testing": "0.9.1-staging.ee54ba693a",
183
+ "@dxos/lit-ui": "0.9.1-staging.ee54ba693a",
184
+ "@dxos/random": "0.9.1-staging.ee54ba693a",
185
+ "@dxos/storybook-utils": "0.9.1-staging.ee54ba693a",
186
+ "@dxos/react-ui": "0.9.1-staging.ee54ba693a",
187
+ "@dxos/ui-theme": "0.9.1-staging.ee54ba693a"
176
188
  },
177
189
  "peerDependencies": {
178
190
  "@effect-atom/atom-react": "^0.5.0",
179
- "@effect/platform": "0.96.1",
180
- "effect": "3.21.3",
181
- "react": "~19.2.3",
182
- "react-dom": "~19.2.3",
183
- "@dxos/react-ui": "0.9.0",
184
- "@dxos/ui-theme": "0.9.0"
191
+ "@effect/platform": "0.96.2",
192
+ "effect": "3.21.4",
193
+ "react": "~19.2.7",
194
+ "react-dom": "~19.2.7",
195
+ "@dxos/react-ui": "0.9.1-staging.ee54ba693a",
196
+ "@dxos/ui-theme": "0.9.1-staging.ee54ba693a"
185
197
  },
186
198
  "publishConfig": {
187
199
  "access": "public"
@@ -11,7 +11,7 @@ import { SpacePlugin } from '#plugin';
11
11
 
12
12
  import { meta } from './meta';
13
13
 
14
- const moduleId = (name: string) => `${meta.id}.module.${name}`;
14
+ const moduleId = (name: string) => `${meta.profile.key}.module.${name}`;
15
15
 
16
16
  describe('SpacePlugin', () => {
17
17
  test('modules activate on the expected events', async ({ expect }) => {
@@ -26,20 +26,19 @@ import {
26
26
  } from '@dxos/types';
27
27
 
28
28
  import {
29
- AppGraphSerializer,
29
+ AppGraphBuilder,
30
30
  CreateObject,
31
31
  IdentityCreated,
32
32
  NavigationHandler,
33
33
  NavigationResolver,
34
34
  OperationHandler,
35
- UndoMappings,
36
35
  ReactRoot,
37
36
  ReactSurface,
38
37
  Repair,
39
38
  SpaceSettings,
40
- SpaceState,
41
39
  SpacesReady,
42
- AppGraphBuilder,
40
+ SpaceState,
41
+ UndoMappings,
43
42
  } from '#capabilities';
44
43
  import { meta } from '#meta';
45
44
  import { translations } from '#translations';
@@ -134,11 +133,6 @@ export const SpacePlugin = Plugin.define<SpacePluginOptions>(meta).pipe(
134
133
  };
135
134
  },
136
135
  ),
137
- // TODO(wittjosiah): This could probably be deferred.
138
- Plugin.addModule({
139
- activatesOn: AppActivationEvents.AppGraphReady,
140
- activate: AppGraphSerializer,
141
- }),
142
136
  Plugin.addModule({
143
137
  activatesOn: ClientEvents.IdentityCreated,
144
138
  firesAfterActivation: [SpaceEvents.PersonalSpaceReady],
@@ -160,7 +154,7 @@ export const SpacePlugin = Plugin.define<SpacePluginOptions>(meta).pipe(
160
154
  activate: Repair,
161
155
  }),
162
156
  AppPlugin.addPluginAssetModule({
163
- asset: { pluginId: meta.id, path: 'PLUGIN.mdl', content: pluginSpec, mimeType: 'application/x-mdl' },
157
+ asset: { pluginId: meta.profile.key, path: 'PLUGIN.mdl', content: pluginSpec, mimeType: 'application/x-mdl' },
164
158
  }),
165
159
  Plugin.make,
166
160
  );
@@ -5,21 +5,13 @@
5
5
  import * as Effect from 'effect/Effect';
6
6
  import * as Option from 'effect/Option';
7
7
 
8
- import { Capabilities, Capability } from '@dxos/app-framework';
9
- import {
10
- AppCapabilities,
11
- AppNodeMatcher,
12
- LayoutOperation,
13
- RootCollectionAnnotation,
14
- Segments,
15
- getObjectPathFromObject,
16
- toUrlPath,
17
- } from '@dxos/app-toolkit';
18
- import { SpaceState, isSpace } from '@dxos/client/echo';
8
+ import { Capability } from '@dxos/app-framework';
9
+ import { AppAnnotation, AppCapabilities, AppNode, AppNodeMatcher, LayoutOperation, Paths } from '@dxos/app-toolkit';
10
+ import { isSpace } from '@dxos/client/echo';
19
11
  import { Operation } from '@dxos/compute';
20
12
  import { Annotation, Collection, Obj, Type } from '@dxos/echo';
21
13
  import { invariant } from '@dxos/invariant';
22
- import { CreateAtom, Graph, GraphBuilder, Node } from '@dxos/plugin-graph';
14
+ import { Graph, GraphBuilder, Node } from '@dxos/plugin-graph';
23
15
  import { isNonNullable } from '@dxos/util';
24
16
 
25
17
  import { meta } from '#meta';
@@ -31,10 +23,6 @@ import {
31
23
  COPY_LINK_LABEL,
32
24
  CREATE_OBJECT_IN_COLLECTION_LABEL,
33
25
  EXPOSE_OBJECT_LABEL,
34
- REMOVE_FROM_COLLECTION_LABEL,
35
- createObjectNode,
36
- getCollectionGraphNodePartials,
37
- getDynamicLabel,
38
26
  } from './shared';
39
27
 
40
28
  //
@@ -50,37 +38,50 @@ export const createCollectionExtensions = Effect.fnUntraced(function* ({
50
38
  const capabilities = yield* Capability.Service;
51
39
 
52
40
  return yield* Effect.all([
53
- // Collections section virtual node under each space.
41
+ // Content section group created alongside collections so the group always
42
+ // appears when the space plugin is active and hides when there are no children.
54
43
  GraphBuilder.createExtension({
55
- id: 'collectionsSection',
44
+ id: Paths.GroupSegments.content,
56
45
  match: AppNodeMatcher.whenSpace,
57
- connector: (space, get) => {
58
- const spaceState = get(CreateAtom.fromObservable(space.state));
59
- if (spaceState !== SpaceState.SPACE_READY) {
60
- return Effect.succeed([]);
61
- }
46
+ connector: (space) =>
47
+ Effect.succeed([
48
+ AppNode.makeGroup({
49
+ id: Paths.GroupSegments.content,
50
+ type: Paths.GroupTypes.content,
51
+ label: ['nav-tree-group-content.label', { ns: meta.profile.key }],
52
+ space,
53
+ position: 200,
54
+ }),
55
+ ]),
56
+ }),
62
57
 
58
+ // Collections section virtual node under the content group.
59
+ GraphBuilder.createExtension({
60
+ id: 'collectionsSection',
61
+ match: AppNodeMatcher.whenNavTreeGroup(Paths.GroupTypes.content),
62
+ connector: (space, get) => {
63
63
  get(Obj.atom(space.properties));
64
- const collectionRef = Annotation.get(space.properties, RootCollectionAnnotation).pipe(Option.getOrUndefined);
64
+ const collectionRef = Annotation.get(space.properties, AppAnnotation.RootCollectionAnnotation).pipe(
65
+ Option.getOrUndefined,
66
+ );
65
67
  if (collectionRef) {
66
68
  get(Obj.atom(collectionRef));
67
69
  }
68
70
  const rootCollection = collectionRef?.target;
69
71
  const collectionPartials = rootCollection
70
- ? getCollectionGraphNodePartials({ db: space.db, collection: rootCollection })
72
+ ? AppNode.getCollectionGraphNodePartials({ db: space.db, collection: rootCollection })
71
73
  : undefined;
72
74
 
73
75
  return Effect.succeed([
74
76
  Node.make({
75
- id: Segments.collections,
77
+ id: Paths.Segments.collections,
76
78
  type: COLLECTIONS_SECTION_TYPE,
77
79
  data: null,
78
80
  properties: {
79
- label: ['collections-section.label', { ns: meta.id }],
81
+ label: ['collections-section.label', { ns: meta.profile.key }],
80
82
  icon: 'ph--folder--regular',
81
- iconHue: 'amber',
83
+ iconHue: 'indigo',
82
84
  role: 'branch',
83
- position: 'first',
84
85
  testId: 'spacePlugin.collectionsSection',
85
86
  draggable: false,
86
87
  droppable: false,
@@ -104,7 +105,9 @@ export const createCollectionExtensions = Effect.fnUntraced(function* ({
104
105
  const ephemeralState = get(ephemeralAtom);
105
106
 
106
107
  get(Obj.atom(space.properties));
107
- const collectionRef = Annotation.get(space.properties, RootCollectionAnnotation).pipe(Option.getOrUndefined);
108
+ const collectionRef = Annotation.get(space.properties, AppAnnotation.RootCollectionAnnotation).pipe(
109
+ Option.getOrUndefined,
110
+ );
108
111
  const collection = collectionRef ? get(Obj.atom(collectionRef)) : undefined;
109
112
  if (!collection) {
110
113
  return Effect.succeed([]);
@@ -122,11 +125,15 @@ export const createCollectionExtensions = Effect.fnUntraced(function* ({
122
125
  return Effect.succeed(
123
126
  objects
124
127
  .map((object: Obj.Unknown) =>
125
- createObjectNode({
128
+ AppNode.makeObject({
129
+ get,
126
130
  db: space.db,
127
131
  object,
128
132
  navigable: ephemeralState.navigableCollections,
129
- parentCollection: collectionRef?.target,
133
+ canDrop: AppNode.CAN_DROP_COLLECTION_ITEM,
134
+ onRearrange: collectionRef?.target
135
+ ? AppNode.makeCollectionRearrangeCallback(collectionRef.target)
136
+ : undefined,
130
137
  }),
131
138
  )
132
139
  .filter(isNonNullable),
@@ -158,11 +165,13 @@ export const createCollectionExtensions = Effect.fnUntraced(function* ({
158
165
  .map(
159
166
  (object: Obj.Unknown) =>
160
167
  db &&
161
- createObjectNode({
168
+ AppNode.makeObject({
169
+ get,
162
170
  object,
163
171
  db,
164
172
  navigable: ephemeralState.navigableCollections,
165
- parentCollection: collection,
173
+ canDrop: AppNode.CAN_DROP_COLLECTION_ITEM,
174
+ onRearrange: AppNode.makeCollectionRearrangeCallback(collection),
166
175
  }),
167
176
  )
168
177
  .filter(isNonNullable),
@@ -211,6 +220,41 @@ export const createCollectionExtensions = Effect.fnUntraced(function* ({
211
220
  );
212
221
  },
213
222
  }),
223
+
224
+ // Action on the collections section header to add an object to the space's root collection.
225
+ GraphBuilder.createExtension({
226
+ id: 'collectionsSectionActions',
227
+ match: (node) => {
228
+ const space = isSpace(node.properties.space) ? node.properties.space : undefined;
229
+ return node.type === COLLECTIONS_SECTION_TYPE && space ? Option.some(space) : Option.none();
230
+ },
231
+ actions: (space) =>
232
+ Effect.succeed([
233
+ Node.makeAction({
234
+ id: SpaceOperation.OpenCreateObject.meta.key,
235
+ data: () =>
236
+ Effect.gen(function* () {
237
+ // Target the root collection so the create dialog offers collection-eligible types, like
238
+ // any other collection; fall back to the space db if it hasn't been created yet.
239
+ const rootCollection = Annotation.get(space.properties, AppAnnotation.RootCollectionAnnotation).pipe(
240
+ Option.getOrUndefined,
241
+ )?.target;
242
+ yield* Operation.invoke(SpaceOperation.OpenCreateObject, {
243
+ // Qualified id of the collections section node (root/<spaceId>/collections), so the new
244
+ // object's navigation path resolves under the section — the bare segment would not.
245
+ target: rootCollection ?? space.db,
246
+ targetNodeId: Paths.getCollectionsPath(space.id),
247
+ });
248
+ }),
249
+ properties: {
250
+ label: CREATE_OBJECT_IN_COLLECTION_LABEL,
251
+ icon: 'ph--plus--regular',
252
+ disposition: 'list-item-primary',
253
+ testId: 'spacePlugin.createObject',
254
+ },
255
+ }),
256
+ ]),
257
+ }),
214
258
  ]);
215
259
  });
216
260
 
@@ -259,43 +303,12 @@ const constructObjectActions = ({
259
303
  data: (params?: Node.InvokeProps) =>
260
304
  Operation.invoke(SpaceOperation.RenameObject, { object, caller: `${params?.caller}:${params?.parent?.id}` }),
261
305
  properties: {
262
- label: getDynamicLabel('rename-object.label', typename, { defaultValue: 'Rename' }),
306
+ label: AppNode.getDynamicLabel('rename-object.label', typename, { defaultValue: 'Rename' }),
263
307
  icon: 'ph--pencil-simple-line--regular',
264
308
  disposition: 'list-item',
265
309
  testId: 'spacePlugin.renameObject',
266
310
  },
267
311
  }),
268
- ...(parentCollection && !Obj.instanceOf(Collection.Collection, object)
269
- ? [
270
- Node.makeAction({
271
- id: 'removeFromCollection',
272
- data: () =>
273
- Effect.gen(function* () {
274
- const index = parentCollection.objects.findIndex((ref: any) => ref.target === object);
275
- if (index !== -1) {
276
- const layout = yield* Capabilities.getAtomValue(AppCapabilities.Layout);
277
- const isActive = layout.active.includes(nodeId);
278
-
279
- Obj.update(parentCollection, (parentCollection) => {
280
- parentCollection.objects.splice(index, 1);
281
- });
282
-
283
- if (isActive) {
284
- yield* Operation.invoke(LayoutOperation.Open, {
285
- subject: [getObjectPathFromObject(object)],
286
- });
287
- }
288
- }
289
- }),
290
- properties: {
291
- label: REMOVE_FROM_COLLECTION_LABEL,
292
- icon: 'ph--minus-circle--regular',
293
- disposition: 'list-item',
294
- testId: 'spacePlugin.removeFromCollection',
295
- },
296
- }),
297
- ]
298
- : []),
299
312
  Node.makeAction({
300
313
  id: SpaceOperation.RemoveObjects.meta.key,
301
314
  data: () =>
@@ -304,7 +317,7 @@ const constructObjectActions = ({
304
317
  target: parentCollection,
305
318
  }),
306
319
  properties: {
307
- label: getDynamicLabel('delete-object.label', typename, { defaultValue: 'Delete' }),
320
+ label: AppNode.getDynamicLabel('delete-object.label', typename, { defaultValue: 'Delete' }),
308
321
  icon: 'ph--trash--regular',
309
322
  disposition: 'list-item',
310
323
  disabled: !deletable,
@@ -317,7 +330,7 @@ const constructObjectActions = ({
317
330
  id: 'copyLink',
318
331
  data: () =>
319
332
  Effect.promise(async () => {
320
- const url = new URL(toUrlPath(nodeId), shareableLinkOrigin);
333
+ const url = new URL(Paths.toUrlPath(nodeId), shareableLinkOrigin);
321
334
  await navigator.clipboard.writeText(url.toString());
322
335
  }),
323
336
  properties: {
@@ -331,7 +344,7 @@ const constructObjectActions = ({
331
344
  : []),
332
345
  Node.makeAction({
333
346
  id: LayoutOperation.Expose.meta.key,
334
- data: () => Operation.invoke(LayoutOperation.Expose, { subject: getObjectPathFromObject(object) }),
347
+ data: () => Operation.invoke(LayoutOperation.Expose, { subject: Paths.getObjectPathFromObject(object) }),
335
348
  properties: {
336
349
  label: EXPOSE_OBJECT_LABEL,
337
350
  icon: 'ph--eye--regular',
@@ -11,6 +11,7 @@ import { GraphBuilder, NodeMatcher } from '@dxos/plugin-graph';
11
11
  import { linkedSegment } from '@dxos/react-ui-attention';
12
12
  import type { EchoViewRefPath } from '@dxos/schema';
13
13
  import { ViewAnnotation } from '@dxos/schema';
14
+ import { Position } from '@dxos/util';
14
15
 
15
16
  import { meta } from '#meta';
16
17
 
@@ -31,10 +32,10 @@ export const createCompanionExtensions: () => Effect.Effect<GraphBuilder.Builder
31
32
  Effect.succeed([
32
33
  AppNode.makeCompanion({
33
34
  id: linkedSegment('settings'),
34
- label: ['object-properties.label', { ns: meta.id }],
35
+ label: ['object-properties.label', { ns: meta.profile.key }],
35
36
  icon: 'ph--sliders--regular',
36
37
  data: 'settings', // TODO(burdon): Change to 'object-properties'.
37
- position: 'last',
38
+ position: Position.last,
38
39
  }),
39
40
  ]),
40
41
  }),
@@ -47,10 +48,10 @@ export const createCompanionExtensions: () => Effect.Effect<GraphBuilder.Builder
47
48
  Effect.succeed([
48
49
  AppNode.makeCompanion({
49
50
  id: linkedSegment('related'),
50
- label: ['companion-related.label', { ns: meta.id }],
51
+ label: ['companion-related.label', { ns: meta.profile.key }],
51
52
  icon: 'ph--graph--regular',
52
53
  data: 'related',
53
- position: 'last',
54
+ position: Position.last,
54
55
  }),
55
56
  ]),
56
57
  }),
@@ -79,7 +80,7 @@ export const createCompanionExtensions: () => Effect.Effect<GraphBuilder.Builder
79
80
  Effect.succeed([
80
81
  AppNode.makeCompanion({
81
82
  id: linkedSegment('selected-objects'),
82
- label: ['companion-selected-objects.label', { ns: meta.id }],
83
+ label: ['companion-selected-objects.label', { ns: meta.profile.key }],
83
84
  icon: 'ph--tree-view--regular',
84
85
  data: 'selected-objects',
85
86
  }),