@dxos/plugin-space 0.8.4-main.422d1c7879 → 0.8.4-main.4f23b4e393

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 (707) hide show
  1. package/dist/lib/neutral/CollectionArticle-QGPAEA7D.mjs +98 -0
  2. package/dist/lib/neutral/CollectionArticle-QGPAEA7D.mjs.map +7 -0
  3. package/dist/lib/neutral/CollectionSection-A5WRHE5Z.mjs +19 -0
  4. package/dist/lib/neutral/CollectionSection-A5WRHE5Z.mjs.map +7 -0
  5. package/dist/lib/neutral/CreateObjectDialog-2JEYK4PI.mjs +141 -0
  6. package/dist/lib/neutral/CreateObjectDialog-2JEYK4PI.mjs.map +7 -0
  7. package/dist/lib/neutral/CreateSpaceDialog-B3OELSC7.mjs +56 -0
  8. package/dist/lib/neutral/CreateSpaceDialog-B3OELSC7.mjs.map +7 -0
  9. package/dist/lib/neutral/ImportSpaceDialog-LWLVC5RZ.mjs +62 -0
  10. package/dist/lib/neutral/ImportSpaceDialog-LWLVC5RZ.mjs.map +7 -0
  11. package/dist/lib/neutral/InlineSyncStatus-TBJKZCH7.mjs +49 -0
  12. package/dist/lib/neutral/InlineSyncStatus-TBJKZCH7.mjs.map +7 -0
  13. package/dist/lib/neutral/JoinDialog-SSFKRFTJ.mjs +114 -0
  14. package/dist/lib/neutral/JoinDialog-SSFKRFTJ.mjs.map +7 -0
  15. package/dist/lib/neutral/MembersContainer-MRPLHZ6L.mjs +225 -0
  16. package/dist/lib/neutral/MembersContainer-MRPLHZ6L.mjs.map +7 -0
  17. package/dist/lib/neutral/MenuFooter-O4XS4T4D.mjs +33 -0
  18. package/dist/lib/neutral/MenuFooter-O4XS4T4D.mjs.map +7 -0
  19. package/dist/lib/neutral/ObjectCardStack-ODQZOBWB.mjs +55 -0
  20. package/dist/lib/neutral/ObjectCardStack-ODQZOBWB.mjs.map +7 -0
  21. package/dist/lib/neutral/ObjectProperties-BF6KGFFC.mjs +33 -0
  22. package/dist/lib/neutral/ObjectProperties-BF6KGFFC.mjs.map +7 -0
  23. package/dist/lib/neutral/ObjectRenamePopover-V656TFC5.mjs +59 -0
  24. package/dist/lib/neutral/ObjectRenamePopover-V656TFC5.mjs.map +7 -0
  25. package/dist/lib/neutral/RecordArticle-VRWKXVAO.mjs +48 -0
  26. package/dist/lib/neutral/RecordArticle-VRWKXVAO.mjs.map +7 -0
  27. package/dist/lib/neutral/RelatedArticle-GHGL2GL5.mjs +68 -0
  28. package/dist/lib/neutral/RelatedArticle-GHGL2GL5.mjs.map +7 -0
  29. package/dist/lib/neutral/SchemaContainer-KMOZ23RA.mjs +43 -0
  30. package/dist/lib/neutral/SchemaContainer-KMOZ23RA.mjs.map +7 -0
  31. package/dist/lib/neutral/SmallPresenceLive-2W5ZUDCF.mjs +8 -0
  32. package/dist/lib/neutral/SpacePlugin.mjs +10 -0
  33. package/dist/lib/{browser/cli/index.mjs → neutral/SpacePlugin.node.mjs} +66 -81
  34. package/dist/lib/neutral/SpacePlugin.node.mjs.map +7 -0
  35. package/dist/lib/neutral/SpacePresence-PTTGZYZ6.mjs +11 -0
  36. package/dist/lib/neutral/SpaceRenamePopover-KFWL4CTJ.mjs +56 -0
  37. package/dist/lib/neutral/SpaceRenamePopover-KFWL4CTJ.mjs.map +7 -0
  38. package/dist/lib/{browser/SpaceSettings-TR2IMHOL.mjs → neutral/SpaceSettings-JBE266M2.mjs} +3 -3
  39. package/dist/lib/neutral/SpaceSettingsContainer-VAXQNCWG.mjs +266 -0
  40. package/dist/lib/neutral/SpaceSettingsContainer-VAXQNCWG.mjs.map +7 -0
  41. package/dist/lib/neutral/SyncStatus-FFKEPNZF.mjs +146 -0
  42. package/dist/lib/neutral/SyncStatus-FFKEPNZF.mjs.map +7 -0
  43. package/dist/lib/neutral/ViewEditor-MQRYNTSI.mjs +104 -0
  44. package/dist/lib/neutral/ViewEditor-MQRYNTSI.mjs.map +7 -0
  45. package/dist/lib/{browser/add-object-XUA4QRWE.mjs → neutral/add-object-CHYQHOXB.mjs} +10 -19
  46. package/dist/lib/neutral/add-object-CHYQHOXB.mjs.map +7 -0
  47. package/dist/lib/{browser/add-relation-YNTOBNYM.mjs → neutral/add-relation-RLDHAPF5.mjs} +4 -4
  48. package/dist/lib/neutral/add-relation-RLDHAPF5.mjs.map +7 -0
  49. package/dist/lib/{browser/add-schema-Q5X2SAX4.mjs → neutral/add-schema-VHVHDVY6.mjs} +6 -6
  50. package/dist/lib/neutral/add-schema-VHVHDVY6.mjs.map +7 -0
  51. package/dist/lib/neutral/app-graph-builder-O3XVL5Y2.mjs +1262 -0
  52. package/dist/lib/neutral/app-graph-builder-O3XVL5Y2.mjs.map +7 -0
  53. package/dist/lib/neutral/app-graph-serializer-3IHQEYQ4.mjs +80 -0
  54. package/dist/lib/neutral/app-graph-serializer-3IHQEYQ4.mjs.map +7 -0
  55. package/dist/lib/neutral/capabilities/index.mjs +45 -0
  56. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  57. package/dist/lib/neutral/capabilities/node.mjs +15 -0
  58. package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
  59. package/dist/lib/neutral/chunk-2DHCIE27.mjs +25 -0
  60. package/dist/lib/neutral/chunk-2DHCIE27.mjs.map +7 -0
  61. package/dist/lib/neutral/chunk-62A5U3UX.mjs +8 -0
  62. package/dist/lib/neutral/chunk-62A5U3UX.mjs.map +7 -0
  63. package/dist/lib/{browser/chunk-VV4C4APQ.mjs → neutral/chunk-BWDWDXYZ.mjs} +3 -1
  64. package/dist/lib/neutral/chunk-BWDWDXYZ.mjs.map +7 -0
  65. package/dist/lib/neutral/chunk-CTBIVBHJ.mjs +163 -0
  66. package/dist/lib/neutral/chunk-CTBIVBHJ.mjs.map +7 -0
  67. package/dist/lib/{browser/chunk-5CKPBXLB.mjs → neutral/chunk-EDP4XO2G.mjs} +5 -2
  68. package/dist/lib/{browser/chunk-5CKPBXLB.mjs.map → neutral/chunk-EDP4XO2G.mjs.map} +3 -3
  69. package/dist/lib/{browser/chunk-JH2UWMN2.mjs → neutral/chunk-JHZGRYGS.mjs} +1 -1
  70. package/dist/lib/{browser/chunk-JH2UWMN2.mjs.map → neutral/chunk-JHZGRYGS.mjs.map} +2 -2
  71. package/dist/lib/{browser/chunk-FBRDXXNK.mjs → neutral/chunk-K2XBM3E3.mjs} +4 -1
  72. package/dist/lib/neutral/chunk-K2XBM3E3.mjs.map +7 -0
  73. package/dist/lib/{browser/chunk-BJAZV3HI.mjs → neutral/chunk-MCL6D42P.mjs} +51 -9
  74. package/dist/lib/neutral/chunk-MCL6D42P.mjs.map +7 -0
  75. package/dist/lib/neutral/chunk-YE46AQFY.mjs +145 -0
  76. package/dist/lib/neutral/chunk-YE46AQFY.mjs.map +7 -0
  77. package/dist/lib/{browser/close-MPL6CV3Z.mjs → neutral/close-25YK3PIO.mjs} +4 -4
  78. package/dist/lib/{browser/close-MPL6CV3Z.mjs.map → neutral/close-25YK3PIO.mjs.map} +1 -1
  79. package/dist/lib/neutral/components/index.mjs +385 -0
  80. package/dist/lib/neutral/components/index.mjs.map +7 -0
  81. package/dist/lib/neutral/containers/index.mjs +49 -0
  82. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  83. package/dist/lib/{browser/create-AE3FYWXG.mjs → neutral/create-UURJPVVA.mjs} +8 -8
  84. package/dist/lib/neutral/create-UURJPVVA.mjs.map +7 -0
  85. package/dist/lib/neutral/create-object-SUGDFO7H.mjs +101 -0
  86. package/dist/lib/neutral/create-object-SUGDFO7H.mjs.map +7 -0
  87. package/dist/lib/{browser/delete-field-G77IGW6B.mjs → neutral/delete-field-MHS7EOUL.mjs} +7 -31
  88. package/dist/lib/neutral/delete-field-MHS7EOUL.mjs.map +7 -0
  89. package/dist/lib/neutral/duplicate-object-VLQZZJVO.mjs +17 -0
  90. package/dist/lib/neutral/duplicate-object-VLQZZJVO.mjs.map +7 -0
  91. package/dist/lib/neutral/export-space-KN5JXOZP.mjs +34 -0
  92. package/dist/lib/neutral/export-space-KN5JXOZP.mjs.map +7 -0
  93. package/dist/lib/{browser/get-share-link-R745OMNC.mjs → neutral/get-share-link-CRDCEFRI.mjs} +5 -5
  94. package/dist/lib/{browser/get-share-link-R745OMNC.mjs.map → neutral/get-share-link-CRDCEFRI.mjs.map} +1 -1
  95. package/dist/lib/neutral/hooks/index.mjs +121 -0
  96. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  97. package/dist/lib/neutral/identity-created-QQQIWOQQ.mjs +32 -0
  98. package/dist/lib/neutral/identity-created-QQQIWOQQ.mjs.map +7 -0
  99. package/dist/lib/neutral/import-space-7XT5KTLD.mjs +24 -0
  100. package/dist/lib/neutral/import-space-7XT5KTLD.mjs.map +7 -0
  101. package/dist/lib/{node-esm/types → neutral}/index.mjs +21 -4
  102. package/dist/lib/{browser/join-EDCBOGMO.mjs → neutral/join-3Y5MFGBM.mjs} +5 -5
  103. package/dist/lib/{browser/join-EDCBOGMO.mjs.map → neutral/join-3Y5MFGBM.mjs.map} +1 -1
  104. package/dist/lib/neutral/meta.json +1 -0
  105. package/dist/lib/{browser → neutral}/meta.mjs +1 -1
  106. package/dist/lib/{browser/migrate-J7OVAUIM.mjs → neutral/migrate-MSZS4U27.mjs} +5 -5
  107. package/dist/lib/neutral/migrate-MSZS4U27.mjs.map +7 -0
  108. package/dist/lib/neutral/migrations-Z5O3BTVV.mjs +59 -0
  109. package/dist/lib/neutral/migrations-Z5O3BTVV.mjs.map +7 -0
  110. package/dist/lib/neutral/navigation-handler-2M57B2AX.mjs +38 -0
  111. package/dist/lib/neutral/navigation-handler-2M57B2AX.mjs.map +7 -0
  112. package/dist/lib/neutral/navigation-resolver-HM5ALHFV.mjs +70 -0
  113. package/dist/lib/neutral/navigation-resolver-HM5ALHFV.mjs.map +7 -0
  114. package/dist/lib/{browser/open-LGLVOLR3.mjs → neutral/open-WY4HLCDB.mjs} +4 -4
  115. package/dist/lib/{browser/open-LGLVOLR3.mjs.map → neutral/open-WY4HLCDB.mjs.map} +1 -1
  116. package/dist/lib/{browser/open-create-object-QQFDBDDC.mjs → neutral/open-create-object-V6G7EQON.mjs} +5 -5
  117. package/dist/lib/neutral/open-create-object-V6G7EQON.mjs.map +7 -0
  118. package/dist/lib/{browser/open-create-space-7IVA2QOK.mjs → neutral/open-create-space-QEEZSDEK.mjs} +5 -5
  119. package/dist/lib/{browser/open-create-space-7IVA2QOK.mjs.map → neutral/open-create-space-QEEZSDEK.mjs.map} +1 -1
  120. package/dist/lib/neutral/open-import-space-RLPTBZ4W.mjs +24 -0
  121. package/dist/lib/neutral/open-import-space-RLPTBZ4W.mjs.map +7 -0
  122. package/dist/lib/{browser/open-members-RF5E7PAE.mjs → neutral/open-members-2OSOYYC5.mjs} +4 -4
  123. package/dist/lib/{browser/open-members-RF5E7PAE.mjs.map → neutral/open-members-2OSOYYC5.mjs.map} +1 -1
  124. package/dist/lib/{browser/open-settings-A56XL7NJ.mjs → neutral/open-settings-KGMR7ACJ.mjs} +5 -5
  125. package/dist/lib/{browser/open-settings-A56XL7NJ.mjs.map → neutral/open-settings-KGMR7ACJ.mjs.map} +1 -1
  126. package/dist/lib/neutral/operation-handler-YPIRQOH2.mjs +13 -0
  127. package/dist/lib/neutral/operation-handler-YPIRQOH2.mjs.map +7 -0
  128. package/dist/lib/neutral/operations/index.mjs +13 -0
  129. package/dist/lib/neutral/operations/index.mjs.map +7 -0
  130. package/dist/lib/neutral/plugin.mjs +18 -0
  131. package/dist/lib/neutral/plugin.mjs.map +7 -0
  132. package/dist/lib/neutral/react-root-2DJPZQT4.mjs +23 -0
  133. package/dist/lib/neutral/react-root-2DJPZQT4.mjs.map +7 -0
  134. package/dist/lib/neutral/react-surface-224L5H2S.mjs +374 -0
  135. package/dist/lib/neutral/react-surface-224L5H2S.mjs.map +7 -0
  136. package/dist/lib/neutral/remove-objects-EUTNONXG.mjs +51 -0
  137. package/dist/lib/neutral/remove-objects-EUTNONXG.mjs.map +7 -0
  138. package/dist/lib/{browser/rename-UOGQQJ3T.mjs → neutral/rename-IFFBCXLO.mjs} +5 -5
  139. package/dist/lib/{browser/rename-UOGQQJ3T.mjs.map → neutral/rename-IFFBCXLO.mjs.map} +1 -1
  140. package/dist/lib/{browser/rename-object-V2LDZGOE.mjs → neutral/rename-object-P7EZA2MX.mjs} +5 -5
  141. package/dist/lib/neutral/rename-object-P7EZA2MX.mjs.map +7 -0
  142. package/dist/lib/neutral/repair-RXOGKEAC.mjs +29 -0
  143. package/dist/lib/neutral/repair-RXOGKEAC.mjs.map +7 -0
  144. package/dist/lib/{browser/restore-field-TQJP2YJI.mjs → neutral/restore-field-TEQHRD3S.mjs} +7 -31
  145. package/dist/lib/neutral/restore-field-TEQHRD3S.mjs.map +7 -0
  146. package/dist/lib/{browser/restore-objects-23VJYK72.mjs → neutral/restore-objects-73C5MEB2.mjs} +9 -26
  147. package/dist/lib/neutral/restore-objects-73C5MEB2.mjs.map +7 -0
  148. package/dist/lib/neutral/settings-DUCCRYX7.mjs +30 -0
  149. package/dist/lib/neutral/settings-DUCCRYX7.mjs.map +7 -0
  150. package/dist/lib/{browser/share-2PZJXFJM.mjs → neutral/share-FSYFMNIQ.mjs} +5 -5
  151. package/dist/lib/{browser/share-2PZJXFJM.mjs.map → neutral/share-FSYFMNIQ.mjs.map} +1 -1
  152. package/dist/lib/{browser/snapshot-OOA2JZ67.mjs → neutral/snapshot-HCSBDOOE.mjs} +5 -13
  153. package/dist/lib/neutral/snapshot-HCSBDOOE.mjs.map +7 -0
  154. package/dist/lib/neutral/spaces-ready-QU2YUZTO.mjs +248 -0
  155. package/dist/lib/neutral/spaces-ready-QU2YUZTO.mjs.map +7 -0
  156. package/dist/lib/neutral/state-DPBOZRAW.mjs +55 -0
  157. package/dist/lib/neutral/state-DPBOZRAW.mjs.map +7 -0
  158. package/dist/lib/neutral/testing.mjs +8 -0
  159. package/dist/lib/neutral/testing.mjs.map +7 -0
  160. package/dist/lib/neutral/translations.mjs +300 -0
  161. package/dist/lib/neutral/translations.mjs.map +7 -0
  162. package/dist/lib/{browser → neutral}/types/index.mjs +3 -1
  163. package/dist/lib/neutral/types/index.mjs.map +7 -0
  164. package/dist/lib/neutral/undo-mappings-5QJNDMH4.mjs +65 -0
  165. package/dist/lib/neutral/undo-mappings-5QJNDMH4.mjs.map +7 -0
  166. package/dist/lib/{browser/wait-for-object-2XLXLCNS.mjs → neutral/wait-for-object-6CVEJRDV.mjs} +4 -4
  167. package/dist/lib/{browser/wait-for-object-2XLXLCNS.mjs.map → neutral/wait-for-object-6CVEJRDV.mjs.map} +1 -1
  168. package/dist/types/src/SpacePlugin.d.ts +1 -0
  169. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  170. package/dist/types/src/{cli/plugin.d.ts → SpacePlugin.node.d.ts} +2 -1
  171. package/dist/types/src/SpacePlugin.node.d.ts.map +1 -0
  172. package/dist/types/src/SpacePlugin.test.d.ts +2 -0
  173. package/dist/types/src/SpacePlugin.test.d.ts.map +1 -0
  174. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -1
  175. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts +28 -4
  176. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts.map +1 -1
  177. package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts.map +1 -1
  178. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts +10 -2
  179. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts.map +1 -1
  180. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts +5 -6
  181. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts.map +1 -1
  182. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts +21 -3
  183. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts.map +1 -1
  184. package/dist/types/src/capabilities/app-graph-builder/extensions/types.d.ts +35 -5
  185. package/dist/types/src/capabilities/app-graph-builder/extensions/types.d.ts.map +1 -1
  186. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +1 -1
  187. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -1
  188. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
  189. package/dist/types/src/capabilities/create-object.d.ts +37 -0
  190. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  191. package/dist/types/src/capabilities/identity-created.d.ts.map +1 -1
  192. package/dist/types/src/capabilities/index.d.ts +32 -1
  193. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  194. package/dist/types/src/capabilities/migrations.d.ts +2 -1
  195. package/dist/types/src/capabilities/migrations.d.ts.map +1 -1
  196. package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts.map +1 -1
  197. package/dist/types/src/capabilities/navigation-resolver.d.ts.map +1 -1
  198. package/dist/types/src/capabilities/node.d.ts +32 -1
  199. package/dist/types/src/capabilities/node.d.ts.map +1 -1
  200. package/dist/types/src/capabilities/operation-handler.d.ts +1 -1
  201. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -1
  202. package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
  203. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  204. package/dist/types/src/capabilities/repair.d.ts.map +1 -1
  205. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  206. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  207. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  208. package/dist/types/src/capabilities/undo-mappings.d.ts.map +1 -1
  209. package/dist/types/src/commands/database/add.d.ts +10 -0
  210. package/dist/types/src/commands/database/add.d.ts.map +1 -0
  211. package/dist/types/src/commands/database/index.d.ts.map +1 -0
  212. package/dist/types/src/commands/database/query/index.d.ts.map +1 -0
  213. package/dist/types/src/{cli/commands → commands}/database/query/query.d.ts +2 -2
  214. package/dist/types/src/commands/database/query/query.d.ts.map +1 -0
  215. package/dist/types/src/commands/database/query/query.test.d.ts.map +1 -0
  216. package/dist/types/src/{cli/commands → commands}/database/remove.d.ts +1 -1
  217. package/dist/types/src/commands/database/remove.d.ts.map +1 -0
  218. package/dist/types/src/{cli/commands → commands}/database/stats.d.ts +1 -1
  219. package/dist/types/src/commands/database/stats.d.ts.map +1 -0
  220. package/dist/types/src/commands/database/util.d.ts.map +1 -0
  221. package/dist/types/src/commands/index.d.ts.map +1 -0
  222. package/dist/types/src/{cli/commands → commands}/queue/index.d.ts +1 -1
  223. package/dist/types/src/commands/queue/index.d.ts.map +1 -0
  224. package/dist/types/src/{cli/commands → commands}/queue/query.d.ts +1 -1
  225. package/dist/types/src/commands/queue/query.d.ts.map +1 -0
  226. package/dist/types/src/commands/queue/util.d.ts.map +1 -0
  227. package/dist/types/src/commands/space/close/close.d.ts +12 -0
  228. package/dist/types/src/commands/space/close/close.d.ts.map +1 -0
  229. package/dist/types/src/commands/space/close/index.d.ts.map +1 -0
  230. package/dist/types/src/{cli/commands → commands}/space/create/create.d.ts +2 -2
  231. package/dist/types/src/commands/space/create/create.d.ts.map +1 -0
  232. package/dist/types/src/commands/space/create/create.test.d.ts.map +1 -0
  233. package/dist/types/src/commands/space/create/index.d.ts.map +1 -0
  234. package/dist/types/src/{cli/commands → commands}/space/index.d.ts +13 -13
  235. package/dist/types/src/commands/space/index.d.ts.map +1 -0
  236. package/dist/types/src/commands/space/info/index.d.ts.map +1 -0
  237. package/dist/types/src/{cli/commands → commands}/space/info/info.d.ts +2 -2
  238. package/dist/types/src/commands/space/info/info.d.ts.map +1 -0
  239. package/dist/types/src/commands/space/info/info.test.d.ts.map +1 -0
  240. package/dist/types/src/commands/space/join/index.d.ts.map +1 -0
  241. package/dist/types/src/{cli/commands → commands}/space/join/join.d.ts +2 -2
  242. package/dist/types/src/commands/space/join/join.d.ts.map +1 -0
  243. package/dist/types/src/commands/space/join/util.d.ts.map +1 -0
  244. package/dist/types/src/commands/space/list/index.d.ts.map +1 -0
  245. package/dist/types/src/{cli/commands → commands}/space/list/list.d.ts +2 -2
  246. package/dist/types/src/commands/space/list/list.d.ts.map +1 -0
  247. package/dist/types/src/commands/space/list/list.test.d.ts.map +1 -0
  248. package/dist/types/src/commands/space/members/index.d.ts.map +1 -0
  249. package/dist/types/src/{cli/commands → commands}/space/members/members.d.ts +2 -2
  250. package/dist/types/src/commands/space/members/members.d.ts.map +1 -0
  251. package/dist/types/src/commands/space/members/members.test.d.ts.map +1 -0
  252. package/dist/types/src/commands/space/members/util.d.ts.map +1 -0
  253. package/dist/types/src/commands/space/open/index.d.ts.map +1 -0
  254. package/dist/types/src/commands/space/open/open.d.ts +12 -0
  255. package/dist/types/src/commands/space/open/open.d.ts.map +1 -0
  256. package/dist/types/src/{cli/commands → commands}/space/schema/index.d.ts +1 -1
  257. package/dist/types/src/commands/space/schema/index.d.ts.map +1 -0
  258. package/dist/types/src/commands/space/schema/list/index.d.ts.map +1 -0
  259. package/dist/types/src/{cli/commands → commands}/space/schema/list/list.d.ts +2 -2
  260. package/dist/types/src/commands/space/schema/list/list.d.ts.map +1 -0
  261. package/dist/types/src/commands/space/schema/list/list.test.d.ts.map +1 -0
  262. package/dist/types/src/commands/space/schema/list/util.d.ts.map +1 -0
  263. package/dist/types/src/commands/space/share/index.d.ts.map +1 -0
  264. package/dist/types/src/{cli/commands → commands}/space/share/share.d.ts +2 -2
  265. package/dist/types/src/commands/space/share/share.d.ts.map +1 -0
  266. package/dist/types/src/commands/space/sync/index.d.ts.map +1 -0
  267. package/dist/types/src/commands/space/sync/sync.d.ts.map +1 -0
  268. package/dist/types/src/commands/space/sync/sync.test.d.ts.map +1 -0
  269. package/dist/types/src/components/AwaitingObject/AwaitingObject.d.ts.map +1 -1
  270. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +9 -14
  271. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  272. package/dist/types/src/components/ForeignKeys/ForeignKeys.d.ts.map +1 -1
  273. package/dist/types/src/components/SpaceSettings/SpaceSettings.d.ts.map +1 -1
  274. package/dist/types/src/components/SpaceSettings/SpaceSettings.stories.d.ts +500 -248
  275. package/dist/types/src/components/SpaceSettings/SpaceSettings.stories.d.ts.map +1 -1
  276. package/dist/types/src/components/SyncStatus/save-tracker.d.ts +1 -1
  277. package/dist/types/src/components/SyncStatus/save-tracker.d.ts.map +1 -1
  278. package/dist/types/src/components/SyncStatus/status.d.ts +1 -1
  279. package/dist/types/src/components/SyncStatus/status.d.ts.map +1 -1
  280. package/dist/types/src/constants.d.ts +1 -0
  281. package/dist/types/src/constants.d.ts.map +1 -1
  282. package/dist/types/src/containers/CollectionArticle/CollectionArticle.d.ts.map +1 -1
  283. package/dist/types/src/containers/CollectionSection/CollectionSection.d.ts.map +1 -1
  284. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts.map +1 -1
  285. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts +500 -248
  286. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  287. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts +500 -248
  288. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts.map +1 -1
  289. package/dist/types/src/containers/ImportSpaceDialog/ImportSpaceDialog.d.ts +3 -0
  290. package/dist/types/src/containers/ImportSpaceDialog/ImportSpaceDialog.d.ts.map +1 -0
  291. package/dist/types/src/containers/ImportSpaceDialog/index.d.ts +2 -0
  292. package/dist/types/src/containers/ImportSpaceDialog/index.d.ts.map +1 -0
  293. package/dist/types/src/containers/InlineSyncStatus/InlineSyncStatus.d.ts.map +1 -1
  294. package/dist/types/src/containers/JoinDialog/JoinDialog.d.ts.map +1 -1
  295. package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts +500 -248
  296. package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts.map +1 -1
  297. package/dist/types/src/containers/MembersContainer/MembersContainer.d.ts.map +1 -1
  298. package/dist/types/src/containers/MenuFooter/MenuFooter.d.ts.map +1 -1
  299. package/dist/types/src/containers/ObjectCardStack/ObjectCardStack.d.ts.map +1 -1
  300. package/dist/types/src/containers/ObjectProperties/ObjectProperties.d.ts +1 -1
  301. package/dist/types/src/containers/ObjectRenamePopover/ObjectRenamePopover.d.ts.map +1 -1
  302. package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts.map +1 -1
  303. package/dist/types/src/containers/RecordArticle/RecordArticle.stories.d.ts.map +1 -1
  304. package/dist/types/src/containers/RelatedArticle/RelatedArticle.d.ts.map +1 -1
  305. package/dist/types/src/containers/SchemaContainer/SchemaContainer.d.ts.map +1 -1
  306. package/dist/types/src/containers/SpacePresence/SpacePresence.d.ts.map +1 -1
  307. package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts +500 -248
  308. package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts.map +1 -1
  309. package/dist/types/src/containers/SpaceRenamePopover/SpaceRenamePopover.d.ts.map +1 -1
  310. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.d.ts +4 -4
  311. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.d.ts.map +1 -1
  312. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts +500 -248
  313. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts.map +1 -1
  314. package/dist/types/src/containers/SyncStatus/SyncStatus.d.ts.map +1 -1
  315. package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts +500 -248
  316. package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  317. package/dist/types/src/containers/ViewEditor/ViewEditor.d.ts.map +1 -1
  318. package/dist/types/src/containers/index.d.ts +1 -0
  319. package/dist/types/src/containers/index.d.ts.map +1 -1
  320. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
  321. package/dist/types/src/hooks/usePath.d.ts.map +1 -1
  322. package/dist/types/src/hooks/useRelatedObjects.d.ts.map +1 -1
  323. package/dist/types/src/index.d.ts +2 -3
  324. package/dist/types/src/index.d.ts.map +1 -1
  325. package/dist/types/src/meta.d.ts.map +1 -1
  326. package/dist/types/src/operations/add-object.d.ts +1 -1
  327. package/dist/types/src/operations/add-object.d.ts.map +1 -1
  328. package/dist/types/src/operations/add-relation.d.ts +1 -1
  329. package/dist/types/src/operations/add-relation.d.ts.map +1 -1
  330. package/dist/types/src/operations/add-schema.d.ts +1 -1
  331. package/dist/types/src/operations/add-schema.d.ts.map +1 -1
  332. package/dist/types/src/operations/close.d.ts +1 -1
  333. package/dist/types/src/operations/close.d.ts.map +1 -1
  334. package/dist/types/src/operations/create.d.ts +1 -1
  335. package/dist/types/src/operations/create.d.ts.map +1 -1
  336. package/dist/types/src/operations/definitions.d.ts +29 -18
  337. package/dist/types/src/operations/definitions.d.ts.map +1 -1
  338. package/dist/types/src/operations/delete-field.d.ts +1 -1
  339. package/dist/types/src/operations/delete-field.d.ts.map +1 -1
  340. package/dist/types/src/operations/duplicate-object.d.ts +1 -1
  341. package/dist/types/src/operations/duplicate-object.d.ts.map +1 -1
  342. package/dist/types/src/operations/export-space.d.ts +5 -0
  343. package/dist/types/src/operations/export-space.d.ts.map +1 -0
  344. package/dist/types/src/operations/get-share-link.d.ts +1 -1
  345. package/dist/types/src/operations/get-share-link.d.ts.map +1 -1
  346. package/dist/types/src/operations/import-space.d.ts +5 -0
  347. package/dist/types/src/operations/import-space.d.ts.map +1 -0
  348. package/dist/types/src/operations/index.d.ts +1 -1
  349. package/dist/types/src/operations/index.d.ts.map +1 -1
  350. package/dist/types/src/operations/join.d.ts +1 -1
  351. package/dist/types/src/operations/join.d.ts.map +1 -1
  352. package/dist/types/src/operations/migrate.d.ts +1 -1
  353. package/dist/types/src/operations/migrate.d.ts.map +1 -1
  354. package/dist/types/src/operations/open-create-object.d.ts +1 -1
  355. package/dist/types/src/operations/open-create-object.d.ts.map +1 -1
  356. package/dist/types/src/operations/open-create-space.d.ts +1 -1
  357. package/dist/types/src/operations/open-create-space.d.ts.map +1 -1
  358. package/dist/types/src/operations/open-import-space.d.ts +5 -0
  359. package/dist/types/src/operations/open-import-space.d.ts.map +1 -0
  360. package/dist/types/src/operations/open-members.d.ts +1 -1
  361. package/dist/types/src/operations/open-members.d.ts.map +1 -1
  362. package/dist/types/src/operations/open-settings.d.ts +1 -1
  363. package/dist/types/src/operations/open-settings.d.ts.map +1 -1
  364. package/dist/types/src/operations/open.d.ts +1 -1
  365. package/dist/types/src/operations/open.d.ts.map +1 -1
  366. package/dist/types/src/operations/remove-objects.d.ts +1 -1
  367. package/dist/types/src/operations/remove-objects.d.ts.map +1 -1
  368. package/dist/types/src/operations/rename-object.d.ts +1 -1
  369. package/dist/types/src/operations/rename-object.d.ts.map +1 -1
  370. package/dist/types/src/operations/rename.d.ts +1 -1
  371. package/dist/types/src/operations/rename.d.ts.map +1 -1
  372. package/dist/types/src/operations/restore-field.d.ts +1 -1
  373. package/dist/types/src/operations/restore-field.d.ts.map +1 -1
  374. package/dist/types/src/operations/restore-objects.d.ts +1 -1
  375. package/dist/types/src/operations/restore-objects.d.ts.map +1 -1
  376. package/dist/types/src/operations/share.d.ts +1 -1
  377. package/dist/types/src/operations/share.d.ts.map +1 -1
  378. package/dist/types/src/operations/snapshot.d.ts +1 -1
  379. package/dist/types/src/operations/snapshot.d.ts.map +1 -1
  380. package/dist/types/src/operations/wait-for-object.d.ts +1 -1
  381. package/dist/types/src/operations/wait-for-object.d.ts.map +1 -1
  382. package/dist/types/src/plugin.d.ts +4 -0
  383. package/dist/types/src/plugin.d.ts.map +1 -0
  384. package/dist/types/src/testing.d.ts +2 -0
  385. package/dist/types/src/testing.d.ts.map +1 -0
  386. package/dist/types/src/translations.d.ts +500 -248
  387. package/dist/types/src/translations.d.ts.map +1 -1
  388. package/dist/types/src/types/capabilities.d.ts +34 -5
  389. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  390. package/dist/types/src/types/events.d.ts.map +1 -1
  391. package/dist/types/src/types/types.d.ts +4 -3
  392. package/dist/types/src/types/types.d.ts.map +1 -1
  393. package/dist/types/src/util.d.ts +1 -6
  394. package/dist/types/src/util.d.ts.map +1 -1
  395. package/dist/types/tsconfig.tsbuildinfo +1 -1
  396. package/package.json +122 -94
  397. package/src/{cli/plugin.ts → SpacePlugin.node.ts} +6 -26
  398. package/src/SpacePlugin.test.ts +33 -0
  399. package/src/SpacePlugin.ts +18 -117
  400. package/src/capabilities/app-graph-builder/app-graph-builder.ts +1 -1
  401. package/src/capabilities/app-graph-builder/extensions/collections.ts +21 -25
  402. package/src/capabilities/app-graph-builder/extensions/companions.ts +5 -5
  403. package/src/capabilities/app-graph-builder/extensions/settings.ts +45 -21
  404. package/src/capabilities/app-graph-builder/extensions/shared.test.ts +2 -2
  405. package/src/capabilities/app-graph-builder/extensions/shared.ts +33 -15
  406. package/src/capabilities/app-graph-builder/extensions/spaces.ts +45 -20
  407. package/src/capabilities/app-graph-builder/extensions/types.ts +39 -39
  408. package/src/capabilities/app-graph-serializer.ts +2 -3
  409. package/src/capabilities/create-object.ts +107 -0
  410. package/src/capabilities/identity-created.ts +3 -4
  411. package/src/capabilities/index.ts +2 -1
  412. package/src/capabilities/migrations.ts +8 -8
  413. package/src/capabilities/navigation-handler/navigation-handler.ts +1 -1
  414. package/src/capabilities/navigation-resolver.ts +2 -2
  415. package/src/capabilities/node.ts +2 -1
  416. package/src/capabilities/operation-handler.ts +1 -1
  417. package/src/capabilities/react-surface.tsx +68 -39
  418. package/src/capabilities/repair.ts +1 -1
  419. package/src/capabilities/spaces-ready.ts +4 -3
  420. package/src/capabilities/state.ts +1 -1
  421. package/src/capabilities/undo-mappings.ts +0 -1
  422. package/src/{cli/commands → commands}/database/add.ts +13 -18
  423. package/src/{cli/commands → commands}/database/stats.ts +1 -2
  424. package/src/{cli/commands → commands}/queue/query.ts +14 -5
  425. package/src/{cli/commands → commands}/space/create/create.ts +1 -1
  426. package/src/{cli/commands → commands}/space/list/list.test.ts +1 -1
  427. package/src/components/AwaitingObject/AwaitingObject.tsx +2 -2
  428. package/src/components/CreateDialog/CreateObjectPanel.tsx +19 -13
  429. package/src/components/SpaceSettings/SpaceSettings.stories.tsx +2 -1
  430. package/src/components/SyncStatus/save-tracker.ts +2 -1
  431. package/src/constants.ts +1 -0
  432. package/src/containers/CollectionArticle/CollectionArticle.tsx +12 -27
  433. package/src/containers/CreateObjectDialog/CreateObjectDialog.stories.tsx +2 -3
  434. package/src/containers/CreateObjectDialog/CreateObjectDialog.tsx +22 -22
  435. package/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.tsx +3 -2
  436. package/src/containers/ImportSpaceDialog/ImportSpaceDialog.tsx +62 -0
  437. package/src/containers/ImportSpaceDialog/index.ts +5 -0
  438. package/src/containers/JoinDialog/JoinDialog.stories.tsx +3 -2
  439. package/src/containers/JoinDialog/JoinDialog.tsx +1 -1
  440. package/src/containers/MembersContainer/MembersContainer.tsx +1 -1
  441. package/src/containers/ObjectCardStack/ObjectCardStack.tsx +2 -3
  442. package/src/containers/ObjectRenamePopover/ObjectRenamePopover.tsx +3 -3
  443. package/src/containers/RecordArticle/RecordArticle.stories.tsx +6 -4
  444. package/src/containers/RecordArticle/RecordArticle.tsx +1 -1
  445. package/src/containers/SchemaContainer/SchemaContainer.tsx +1 -4
  446. package/src/containers/SpacePresence/SpacePresence.stories.tsx +2 -1
  447. package/src/containers/SpaceRenamePopover/SpaceRenamePopover.tsx +3 -3
  448. package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.tsx +2 -1
  449. package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.tsx +6 -18
  450. package/src/containers/SyncStatus/SyncStatus.stories.tsx +2 -1
  451. package/src/containers/SyncStatus/SyncStatus.tsx +1 -1
  452. package/src/containers/ViewEditor/ViewEditor.tsx +16 -17
  453. package/src/containers/index.ts +1 -0
  454. package/src/hooks/useInputSurfaceLookup.tsx +9 -2
  455. package/src/index.ts +2 -4
  456. package/src/meta.ts +1 -0
  457. package/src/operations/add-object.ts +7 -9
  458. package/src/operations/add-relation.ts +1 -1
  459. package/src/operations/add-schema.ts +3 -3
  460. package/src/operations/close.ts +1 -1
  461. package/src/operations/create.ts +4 -4
  462. package/src/operations/definitions.ts +45 -7
  463. package/src/operations/delete-field.ts +1 -1
  464. package/src/operations/duplicate-object.ts +4 -17
  465. package/src/operations/export-space.ts +30 -0
  466. package/src/operations/get-share-link.ts +1 -1
  467. package/src/operations/import-space.ts +21 -0
  468. package/src/operations/index.ts +4 -1
  469. package/src/operations/join.ts +1 -1
  470. package/src/operations/migrate.ts +2 -2
  471. package/src/operations/open-create-object.ts +1 -1
  472. package/src/operations/open-create-space.ts +1 -1
  473. package/src/operations/open-import-space.ts +21 -0
  474. package/src/operations/open-members.ts +1 -1
  475. package/src/operations/open-settings.ts +2 -2
  476. package/src/operations/open.ts +1 -1
  477. package/src/operations/remove-objects.ts +5 -29
  478. package/src/operations/rename-object.ts +1 -1
  479. package/src/operations/rename.ts +1 -1
  480. package/src/operations/restore-field.ts +1 -1
  481. package/src/operations/restore-objects.ts +6 -16
  482. package/src/operations/share.ts +2 -2
  483. package/src/operations/snapshot.ts +1 -1
  484. package/src/operations/wait-for-object.ts +1 -1
  485. package/src/plugin.ts +11 -0
  486. package/src/testing.ts +7 -0
  487. package/src/translations.ts +27 -10
  488. package/src/types/capabilities.ts +26 -5
  489. package/src/types/types.ts +5 -3
  490. package/src/util.ts +1 -44
  491. package/dist/lib/browser/add-object-XUA4QRWE.mjs.map +0 -7
  492. package/dist/lib/browser/add-relation-YNTOBNYM.mjs.map +0 -7
  493. package/dist/lib/browser/add-schema-Q5X2SAX4.mjs.map +0 -7
  494. package/dist/lib/browser/chunk-BJAZV3HI.mjs.map +0 -7
  495. package/dist/lib/browser/chunk-FBRDXXNK.mjs.map +0 -7
  496. package/dist/lib/browser/chunk-VV4C4APQ.mjs.map +0 -7
  497. package/dist/lib/browser/chunk-YSV6LKD6.mjs +0 -71
  498. package/dist/lib/browser/chunk-YSV6LKD6.mjs.map +0 -7
  499. package/dist/lib/browser/cli/index.mjs.map +0 -7
  500. package/dist/lib/browser/create-AE3FYWXG.mjs.map +0 -7
  501. package/dist/lib/browser/delete-field-G77IGW6B.mjs.map +0 -7
  502. package/dist/lib/browser/duplicate-object-B3Q64ELR.mjs +0 -42
  503. package/dist/lib/browser/duplicate-object-B3Q64ELR.mjs.map +0 -7
  504. package/dist/lib/browser/index.mjs +0 -913
  505. package/dist/lib/browser/index.mjs.map +0 -7
  506. package/dist/lib/browser/meta.json +0 -1
  507. package/dist/lib/browser/migrate-J7OVAUIM.mjs.map +0 -7
  508. package/dist/lib/browser/open-create-object-QQFDBDDC.mjs.map +0 -7
  509. package/dist/lib/browser/operations/index.mjs +0 -14
  510. package/dist/lib/browser/operations/index.mjs.map +0 -7
  511. package/dist/lib/browser/remove-objects-5JFRQRGL.mjs +0 -79
  512. package/dist/lib/browser/remove-objects-5JFRQRGL.mjs.map +0 -7
  513. package/dist/lib/browser/rename-object-V2LDZGOE.mjs.map +0 -7
  514. package/dist/lib/browser/restore-field-TQJP2YJI.mjs.map +0 -7
  515. package/dist/lib/browser/restore-objects-23VJYK72.mjs.map +0 -7
  516. package/dist/lib/browser/snapshot-OOA2JZ67.mjs.map +0 -7
  517. package/dist/lib/node-esm/SpaceSettings-YW75BDWT.mjs +0 -48
  518. package/dist/lib/node-esm/SpaceSettings-YW75BDWT.mjs.map +0 -7
  519. package/dist/lib/node-esm/add-object-OULSB2DR.mjs +0 -87
  520. package/dist/lib/node-esm/add-object-OULSB2DR.mjs.map +0 -7
  521. package/dist/lib/node-esm/add-relation-K6EZYWKL.mjs +0 -27
  522. package/dist/lib/node-esm/add-relation-K6EZYWKL.mjs.map +0 -7
  523. package/dist/lib/node-esm/add-schema-4GSWOILA.mjs +0 -61
  524. package/dist/lib/node-esm/add-schema-4GSWOILA.mjs.map +0 -7
  525. package/dist/lib/node-esm/chunk-64AL4GHY.mjs +0 -18
  526. package/dist/lib/node-esm/chunk-64AL4GHY.mjs.map +0 -7
  527. package/dist/lib/node-esm/chunk-7Z5ON2QQ.mjs +0 -99
  528. package/dist/lib/node-esm/chunk-7Z5ON2QQ.mjs.map +0 -7
  529. package/dist/lib/node-esm/chunk-GTF56ZOK.mjs +0 -10
  530. package/dist/lib/node-esm/chunk-GTF56ZOK.mjs.map +0 -7
  531. package/dist/lib/node-esm/chunk-HSLMI22Q.mjs +0 -11
  532. package/dist/lib/node-esm/chunk-IHOQPYNT.mjs +0 -73
  533. package/dist/lib/node-esm/chunk-IHOQPYNT.mjs.map +0 -7
  534. package/dist/lib/node-esm/chunk-IYW6CXLN.mjs +0 -18
  535. package/dist/lib/node-esm/chunk-IYW6CXLN.mjs.map +0 -7
  536. package/dist/lib/node-esm/chunk-TZTVDLGM.mjs +0 -490
  537. package/dist/lib/node-esm/chunk-TZTVDLGM.mjs.map +0 -7
  538. package/dist/lib/node-esm/cli/index.mjs +0 -861
  539. package/dist/lib/node-esm/cli/index.mjs.map +0 -7
  540. package/dist/lib/node-esm/close-JSUMHN7R.mjs +0 -18
  541. package/dist/lib/node-esm/close-JSUMHN7R.mjs.map +0 -7
  542. package/dist/lib/node-esm/create-BRA5OQHY.mjs +0 -75
  543. package/dist/lib/node-esm/create-BRA5OQHY.mjs.map +0 -7
  544. package/dist/lib/node-esm/delete-field-UNKELUX7.mjs +0 -68
  545. package/dist/lib/node-esm/delete-field-UNKELUX7.mjs.map +0 -7
  546. package/dist/lib/node-esm/duplicate-object-QDZHK24D.mjs +0 -43
  547. package/dist/lib/node-esm/duplicate-object-QDZHK24D.mjs.map +0 -7
  548. package/dist/lib/node-esm/get-share-link-XLBJHWDY.mjs +0 -42
  549. package/dist/lib/node-esm/get-share-link-XLBJHWDY.mjs.map +0 -7
  550. package/dist/lib/node-esm/index.mjs +0 -914
  551. package/dist/lib/node-esm/index.mjs.map +0 -7
  552. package/dist/lib/node-esm/join-RGM74NMA.mjs +0 -29
  553. package/dist/lib/node-esm/join-RGM74NMA.mjs.map +0 -7
  554. package/dist/lib/node-esm/meta.json +0 -1
  555. package/dist/lib/node-esm/meta.mjs +0 -9
  556. package/dist/lib/node-esm/migrate-NXBHBCFU.mjs +0 -51
  557. package/dist/lib/node-esm/migrate-NXBHBCFU.mjs.map +0 -7
  558. package/dist/lib/node-esm/open-ZUK63Z2F.mjs +0 -18
  559. package/dist/lib/node-esm/open-ZUK63Z2F.mjs.map +0 -7
  560. package/dist/lib/node-esm/open-create-object-CMNXPKSF.mjs +0 -43
  561. package/dist/lib/node-esm/open-create-object-CMNXPKSF.mjs.map +0 -7
  562. package/dist/lib/node-esm/open-create-space-W6DDCTCA.mjs +0 -25
  563. package/dist/lib/node-esm/open-create-space-W6DDCTCA.mjs.map +0 -7
  564. package/dist/lib/node-esm/open-members-BUANVOZL.mjs +0 -24
  565. package/dist/lib/node-esm/open-members-BUANVOZL.mjs.map +0 -7
  566. package/dist/lib/node-esm/open-settings-U2SJX5EW.mjs +0 -24
  567. package/dist/lib/node-esm/open-settings-U2SJX5EW.mjs.map +0 -7
  568. package/dist/lib/node-esm/operations/index.mjs +0 -15
  569. package/dist/lib/node-esm/operations/index.mjs.map +0 -7
  570. package/dist/lib/node-esm/remove-objects-KTAS3FB3.mjs +0 -80
  571. package/dist/lib/node-esm/remove-objects-KTAS3FB3.mjs.map +0 -7
  572. package/dist/lib/node-esm/rename-F5GAS22G.mjs +0 -26
  573. package/dist/lib/node-esm/rename-F5GAS22G.mjs.map +0 -7
  574. package/dist/lib/node-esm/rename-object-D2AVOXBO.mjs +0 -27
  575. package/dist/lib/node-esm/rename-object-D2AVOXBO.mjs.map +0 -7
  576. package/dist/lib/node-esm/restore-field-O7T4WCMB.mjs +0 -66
  577. package/dist/lib/node-esm/restore-field-O7T4WCMB.mjs.map +0 -7
  578. package/dist/lib/node-esm/restore-objects-IRKTUGP2.mjs +0 -57
  579. package/dist/lib/node-esm/restore-objects-IRKTUGP2.mjs.map +0 -7
  580. package/dist/lib/node-esm/share-5CZU3XKX.mjs +0 -32
  581. package/dist/lib/node-esm/share-5CZU3XKX.mjs.map +0 -7
  582. package/dist/lib/node-esm/snapshot-H3SRUIPR.mjs +0 -39
  583. package/dist/lib/node-esm/snapshot-H3SRUIPR.mjs.map +0 -7
  584. package/dist/lib/node-esm/wait-for-object-G2HJINN3.mjs +0 -24
  585. package/dist/lib/node-esm/wait-for-object-G2HJINN3.mjs.map +0 -7
  586. package/dist/types/src/cli/commands/database/add.d.ts +0 -16
  587. package/dist/types/src/cli/commands/database/add.d.ts.map +0 -1
  588. package/dist/types/src/cli/commands/database/index.d.ts.map +0 -1
  589. package/dist/types/src/cli/commands/database/query/index.d.ts.map +0 -1
  590. package/dist/types/src/cli/commands/database/query/query.d.ts.map +0 -1
  591. package/dist/types/src/cli/commands/database/query/query.test.d.ts.map +0 -1
  592. package/dist/types/src/cli/commands/database/remove.d.ts.map +0 -1
  593. package/dist/types/src/cli/commands/database/stats.d.ts.map +0 -1
  594. package/dist/types/src/cli/commands/database/util.d.ts.map +0 -1
  595. package/dist/types/src/cli/commands/index.d.ts.map +0 -1
  596. package/dist/types/src/cli/commands/queue/index.d.ts.map +0 -1
  597. package/dist/types/src/cli/commands/queue/query.d.ts.map +0 -1
  598. package/dist/types/src/cli/commands/queue/util.d.ts.map +0 -1
  599. package/dist/types/src/cli/commands/space/close/close.d.ts +0 -12
  600. package/dist/types/src/cli/commands/space/close/close.d.ts.map +0 -1
  601. package/dist/types/src/cli/commands/space/close/index.d.ts.map +0 -1
  602. package/dist/types/src/cli/commands/space/create/create.d.ts.map +0 -1
  603. package/dist/types/src/cli/commands/space/create/create.test.d.ts.map +0 -1
  604. package/dist/types/src/cli/commands/space/create/index.d.ts.map +0 -1
  605. package/dist/types/src/cli/commands/space/index.d.ts.map +0 -1
  606. package/dist/types/src/cli/commands/space/info/index.d.ts.map +0 -1
  607. package/dist/types/src/cli/commands/space/info/info.d.ts.map +0 -1
  608. package/dist/types/src/cli/commands/space/info/info.test.d.ts.map +0 -1
  609. package/dist/types/src/cli/commands/space/join/index.d.ts.map +0 -1
  610. package/dist/types/src/cli/commands/space/join/join.d.ts.map +0 -1
  611. package/dist/types/src/cli/commands/space/join/util.d.ts.map +0 -1
  612. package/dist/types/src/cli/commands/space/list/index.d.ts.map +0 -1
  613. package/dist/types/src/cli/commands/space/list/list.d.ts.map +0 -1
  614. package/dist/types/src/cli/commands/space/list/list.test.d.ts.map +0 -1
  615. package/dist/types/src/cli/commands/space/members/index.d.ts.map +0 -1
  616. package/dist/types/src/cli/commands/space/members/members.d.ts.map +0 -1
  617. package/dist/types/src/cli/commands/space/members/members.test.d.ts.map +0 -1
  618. package/dist/types/src/cli/commands/space/members/util.d.ts.map +0 -1
  619. package/dist/types/src/cli/commands/space/open/index.d.ts.map +0 -1
  620. package/dist/types/src/cli/commands/space/open/open.d.ts +0 -12
  621. package/dist/types/src/cli/commands/space/open/open.d.ts.map +0 -1
  622. package/dist/types/src/cli/commands/space/schema/index.d.ts.map +0 -1
  623. package/dist/types/src/cli/commands/space/schema/list/index.d.ts.map +0 -1
  624. package/dist/types/src/cli/commands/space/schema/list/list.d.ts.map +0 -1
  625. package/dist/types/src/cli/commands/space/schema/list/list.test.d.ts.map +0 -1
  626. package/dist/types/src/cli/commands/space/schema/list/util.d.ts.map +0 -1
  627. package/dist/types/src/cli/commands/space/share/index.d.ts.map +0 -1
  628. package/dist/types/src/cli/commands/space/share/share.d.ts.map +0 -1
  629. package/dist/types/src/cli/commands/space/sync/index.d.ts.map +0 -1
  630. package/dist/types/src/cli/commands/space/sync/sync.d.ts.map +0 -1
  631. package/dist/types/src/cli/commands/space/sync/sync.test.d.ts.map +0 -1
  632. package/dist/types/src/cli/index.d.ts +0 -2
  633. package/dist/types/src/cli/index.d.ts.map +0 -1
  634. package/dist/types/src/cli/plugin.d.ts.map +0 -1
  635. package/src/cli/index.ts +0 -5
  636. /package/dist/lib/{browser/chunk-J5LGTIGS.mjs.map → neutral/SmallPresenceLive-2W5ZUDCF.mjs.map} +0 -0
  637. /package/dist/lib/{browser/meta.mjs.map → neutral/SpacePlugin.mjs.map} +0 -0
  638. /package/dist/lib/{browser/types/index.mjs.map → neutral/SpacePresence-PTTGZYZ6.mjs.map} +0 -0
  639. /package/dist/lib/{browser/SpaceSettings-TR2IMHOL.mjs.map → neutral/SpaceSettings-JBE266M2.mjs.map} +0 -0
  640. /package/dist/lib/{browser → neutral}/chunk-J5LGTIGS.mjs +0 -0
  641. /package/dist/lib/{node-esm/chunk-HSLMI22Q.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  642. /package/dist/lib/{node-esm/types → neutral}/index.mjs.map +0 -0
  643. /package/dist/lib/{node-esm → neutral}/meta.mjs.map +0 -0
  644. /package/dist/types/src/{cli/commands → commands}/database/index.d.ts +0 -0
  645. /package/dist/types/src/{cli/commands → commands}/database/query/index.d.ts +0 -0
  646. /package/dist/types/src/{cli/commands → commands}/database/query/query.test.d.ts +0 -0
  647. /package/dist/types/src/{cli/commands → commands}/database/util.d.ts +0 -0
  648. /package/dist/types/src/{cli/commands → commands}/index.d.ts +0 -0
  649. /package/dist/types/src/{cli/commands → commands}/queue/util.d.ts +0 -0
  650. /package/dist/types/src/{cli/commands → commands}/space/close/index.d.ts +0 -0
  651. /package/dist/types/src/{cli/commands → commands}/space/create/create.test.d.ts +0 -0
  652. /package/dist/types/src/{cli/commands → commands}/space/create/index.d.ts +0 -0
  653. /package/dist/types/src/{cli/commands → commands}/space/info/index.d.ts +0 -0
  654. /package/dist/types/src/{cli/commands → commands}/space/info/info.test.d.ts +0 -0
  655. /package/dist/types/src/{cli/commands → commands}/space/join/index.d.ts +0 -0
  656. /package/dist/types/src/{cli/commands → commands}/space/join/util.d.ts +0 -0
  657. /package/dist/types/src/{cli/commands → commands}/space/list/index.d.ts +0 -0
  658. /package/dist/types/src/{cli/commands → commands}/space/list/list.test.d.ts +0 -0
  659. /package/dist/types/src/{cli/commands → commands}/space/members/index.d.ts +0 -0
  660. /package/dist/types/src/{cli/commands → commands}/space/members/members.test.d.ts +0 -0
  661. /package/dist/types/src/{cli/commands → commands}/space/members/util.d.ts +0 -0
  662. /package/dist/types/src/{cli/commands → commands}/space/open/index.d.ts +0 -0
  663. /package/dist/types/src/{cli/commands → commands}/space/schema/list/index.d.ts +0 -0
  664. /package/dist/types/src/{cli/commands → commands}/space/schema/list/list.test.d.ts +0 -0
  665. /package/dist/types/src/{cli/commands → commands}/space/schema/list/util.d.ts +0 -0
  666. /package/dist/types/src/{cli/commands → commands}/space/share/index.d.ts +0 -0
  667. /package/dist/types/src/{cli/commands → commands}/space/sync/index.d.ts +0 -0
  668. /package/dist/types/src/{cli/commands → commands}/space/sync/sync.d.ts +0 -0
  669. /package/dist/types/src/{cli/commands → commands}/space/sync/sync.test.d.ts +0 -0
  670. /package/src/{cli/commands → commands}/database/index.ts +0 -0
  671. /package/src/{cli/commands → commands}/database/query/index.ts +0 -0
  672. /package/src/{cli/commands → commands}/database/query/query.test.ts +0 -0
  673. /package/src/{cli/commands → commands}/database/query/query.ts +0 -0
  674. /package/src/{cli/commands → commands}/database/remove.ts +0 -0
  675. /package/src/{cli/commands → commands}/database/util.ts +0 -0
  676. /package/src/{cli/commands → commands}/index.ts +0 -0
  677. /package/src/{cli/commands → commands}/queue/index.ts +0 -0
  678. /package/src/{cli/commands → commands}/queue/util.ts +0 -0
  679. /package/src/{cli/commands → commands}/space/close/close.ts +0 -0
  680. /package/src/{cli/commands → commands}/space/close/index.ts +0 -0
  681. /package/src/{cli/commands → commands}/space/create/create.test.ts +0 -0
  682. /package/src/{cli/commands → commands}/space/create/index.ts +0 -0
  683. /package/src/{cli/commands → commands}/space/index.ts +0 -0
  684. /package/src/{cli/commands → commands}/space/info/index.ts +0 -0
  685. /package/src/{cli/commands → commands}/space/info/info.test.ts +0 -0
  686. /package/src/{cli/commands → commands}/space/info/info.ts +0 -0
  687. /package/src/{cli/commands → commands}/space/join/index.ts +0 -0
  688. /package/src/{cli/commands → commands}/space/join/join.ts +0 -0
  689. /package/src/{cli/commands → commands}/space/join/util.ts +0 -0
  690. /package/src/{cli/commands → commands}/space/list/index.ts +0 -0
  691. /package/src/{cli/commands → commands}/space/list/list.ts +0 -0
  692. /package/src/{cli/commands → commands}/space/members/index.ts +0 -0
  693. /package/src/{cli/commands → commands}/space/members/members.test.ts +0 -0
  694. /package/src/{cli/commands → commands}/space/members/members.ts +0 -0
  695. /package/src/{cli/commands → commands}/space/members/util.ts +0 -0
  696. /package/src/{cli/commands → commands}/space/open/index.ts +0 -0
  697. /package/src/{cli/commands → commands}/space/open/open.ts +0 -0
  698. /package/src/{cli/commands → commands}/space/schema/index.ts +0 -0
  699. /package/src/{cli/commands → commands}/space/schema/list/index.ts +0 -0
  700. /package/src/{cli/commands → commands}/space/schema/list/list.test.ts +0 -0
  701. /package/src/{cli/commands → commands}/space/schema/list/list.ts +0 -0
  702. /package/src/{cli/commands → commands}/space/schema/list/util.ts +0 -0
  703. /package/src/{cli/commands → commands}/space/share/index.ts +0 -0
  704. /package/src/{cli/commands → commands}/space/share/share.ts +0 -0
  705. /package/src/{cli/commands → commands}/space/sync/index.ts +0 -0
  706. /package/src/{cli/commands → commands}/space/sync/sync.test.ts +0 -0
  707. /package/src/{cli/commands → commands}/space/sync/sync.ts +0 -0
@@ -1,52 +1,28 @@
1
1
  import {
2
2
  SpaceOperation
3
- } from "./chunk-BJAZV3HI.mjs";
4
- import "./chunk-FBRDXXNK.mjs";
3
+ } from "./chunk-MCL6D42P.mjs";
4
+ import "./chunk-K2XBM3E3.mjs";
5
5
  import "./chunk-J5LGTIGS.mjs";
6
6
 
7
7
  // src/operations/restore-field.ts
8
8
  import * as Effect from "effect/Effect";
9
9
  import { Capabilities, Capability } from "@dxos/app-framework";
10
+ import { Operation } from "@dxos/compute";
10
11
  import { Obj } from "@dxos/echo";
11
12
  import { invariant } from "@dxos/invariant";
12
- import { Operation } from "@dxos/operation";
13
13
  import { ProjectionModel, createEchoChangeCallback, getTypenameFromQuery } from "@dxos/schema";
14
14
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/operations/restore-field.ts";
15
15
  var handler = SpaceOperation.RestoreField.pipe(Operation.withHandler(Effect.fnUntraced(function* (input) {
16
16
  const registry = yield* Capability.get(Capabilities.AtomRegistry);
17
17
  const view = input.view;
18
18
  const db = Obj.getDatabase(view);
19
- invariant(db, void 0, {
20
- F: __dxlog_file,
21
- L: 19,
22
- S: this,
23
- A: [
24
- "db",
25
- ""
26
- ]
27
- });
19
+ invariant(db, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 13, S: this, A: ["db", ""] });
28
20
  const typename = getTypenameFromQuery(view.query.ast);
29
- invariant(typename, void 0, {
30
- F: __dxlog_file,
31
- L: 21,
32
- S: this,
33
- A: [
34
- "typename",
35
- ""
36
- ]
37
- });
21
+ invariant(typename, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 15, S: this, A: ["typename", ""] });
38
22
  const schema = yield* Effect.promise(() => db.schemaRegistry.query({
39
23
  typename
40
24
  }).firstOrUndefined());
41
- invariant(schema, void 0, {
42
- F: __dxlog_file,
43
- L: 23,
44
- S: this,
45
- A: [
46
- "schema",
47
- ""
48
- ]
49
- });
25
+ invariant(schema, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 19, S: this, A: ["schema", ""] });
50
26
  const projection = new ProjectionModel({
51
27
  registry,
52
28
  view,
@@ -62,4 +38,4 @@ var restore_field_default = handler;
62
38
  export {
63
39
  restore_field_default as default
64
40
  };
65
- //# sourceMappingURL=restore-field-TQJP2YJI.mjs.map
41
+ //# sourceMappingURL=restore-field-TEQHRD3S.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/restore-field.ts"],
4
+ "sourcesContent": ["// Copyright 2025 DXOS.org\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Operation } from '@dxos/compute';\nimport { Obj } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\nimport { ProjectionModel, createEchoChangeCallback, getTypenameFromQuery } from '@dxos/schema';\n\nimport { SpaceOperation } from './definitions';\n\nconst handler: Operation.WithHandler<typeof SpaceOperation.RestoreField> = SpaceOperation.RestoreField.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* (input) {\n const registry = yield* Capability.get(Capabilities.AtomRegistry);\n const view = input.view as any;\n const db = Obj.getDatabase(view);\n invariant(db);\n const typename = getTypenameFromQuery(view.query.ast);\n invariant(typename);\n const schema = yield* Effect.promise(() => db.schemaRegistry.query({ typename }).firstOrUndefined());\n invariant(schema);\n\n const projection = new ProjectionModel({\n registry,\n view,\n baseSchema: schema.jsonSchema,\n change: createEchoChangeCallback(view, schema),\n });\n\n projection.setFieldProjection({ field: input.field, props: input.props }, input.index);\n }),\n ),\n);\nexport default handler;\n"],
5
+ "mappings": ";;;;;;;AAEA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,iBAAiB;AAC1B,SAASC,WAAW;AACpB,SAASC,iBAAiB;AAC1B,SAASC,iBAAiBC,0BAA0BC,4BAA4B;AAIhF,IAAA,eAA2EC;IAIrE,UAAMC,eAAiB,aAAA,KAAA,UAAA,YAAA,kBAAA,WAAA,OAAA;AACvB,QAAMC,WAASC,OAAAA,WAAYF,IAAAA,aAAAA,YAAAA;AAC3BG,QAAAA,OAAUF,MAAAA;AACV,QAAMG,KAAAA,IAAAA,YAAWC,IAAAA;AACjBF,YAAUC,IAAAA,QAAAA,EAAAA,YAAAA,YAAAA,GAAAA,cAAAA,GAAAA,IAAAA,GAAAA,MAAAA,GAAAA,CAAAA,MAAAA,EAAAA,EAAAA,CAAAA;AACV,QAAME,WAAS,qBAAsB,KAAML,MAAGM,GAAAA;YAAuBH,UAAAA,QAAAA,EAAAA,YAAAA,YAAAA,GAAAA,cAAAA,GAAAA,IAAAA,GAAAA,MAAAA,GAAAA,CAAAA,YAAAA,EAAAA,EAAAA,CAAAA;QAAS,SAAGI,OAAgB,eAAA,MAAA,GAAA,eAAA,MAAA;IACjGL;EAEA,CAAA,EAAMM,iBAAiBC,CAAAA;YACrBC,QAAAA,QAAAA,EAAAA,YAAAA,YAAAA,GAAAA,cAAAA,GAAAA,IAAAA,GAAAA,MAAAA,GAAAA,CAAAA,UAAAA,EAAAA,EAAAA,CAAAA;QACAX,aAAAA,IAAAA,gBAAAA;IACAY;IACAC;IACF,YAAA,OAAA;IAEAJ,QAAWK,yBAAmB,MAAA,MAAA;;aAA6BC,mBAAW;IAAIA,OAAMC,MAAK;IACvF,OAAA,MAAA;EAGJ,GAAA,MAAA,KAAeC;;;",
6
+ "names": ["Effect", "Capabilities", "Capability", "Operation", "Obj", "invariant", "ProjectionModel", "createEchoChangeCallback", "getTypenameFromQuery", "SpaceOperation", "view", "db", "getDatabase", "invariant", "typename", "getTypenameFromQuery", "schema", "schemaRegistry", "firstOrUndefined", "projection", "ProjectionModel", "registry", "baseSchema", "change", "setFieldProjection", "input", "index", "handler"]
7
+ }
@@ -1,42 +1,25 @@
1
1
  import {
2
2
  SpaceOperation
3
- } from "./chunk-BJAZV3HI.mjs";
4
- import "./chunk-FBRDXXNK.mjs";
3
+ } from "./chunk-MCL6D42P.mjs";
4
+ import "./chunk-K2XBM3E3.mjs";
5
5
  import "./chunk-J5LGTIGS.mjs";
6
6
 
7
7
  // src/operations/restore-objects.ts
8
8
  import * as Effect from "effect/Effect";
9
9
  import { LayoutOperation } from "@dxos/app-toolkit";
10
- import { getSpace } from "@dxos/client/echo";
11
- import { Obj, Ref, Relation } from "@dxos/echo";
10
+ import { Operation } from "@dxos/compute";
11
+ import { Obj, Ref } from "@dxos/echo";
12
12
  import { invariant } from "@dxos/invariant";
13
- import { Operation } from "@dxos/operation";
14
13
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/operations/restore-objects.ts";
15
14
  var handler = SpaceOperation.RestoreObjects.pipe(Operation.withHandler(Effect.fnUntraced(function* (input) {
16
15
  const objects = input.objects;
17
16
  const parentCollection = input.parentCollection;
18
17
  const indices = input.indices;
19
- const nestedObjectsList = input.nestedObjectsList;
20
18
  const wasActive = input.wasActive;
21
- const space = getSpace(objects[0]);
22
- invariant(space, void 0, {
23
- F: __dxlog_file,
24
- L: 23,
25
- S: this,
26
- A: [
27
- "space",
28
- ""
29
- ]
30
- });
31
- const restoredObjects = objects.map((obj) => space.db.add(obj));
32
- nestedObjectsList.flat().forEach((obj) => {
33
- if (Obj.isObject(obj)) {
34
- space.db.add(obj);
35
- } else if (Relation.isRelation(obj)) {
36
- space.db.add(obj);
37
- }
38
- });
39
- Obj.change(parentCollection, (parentCollection2) => {
19
+ const db = Obj.getDatabase(objects[0]);
20
+ invariant(db, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 14, S: this, A: ["db", ""] });
21
+ const restoredObjects = objects.map((obj) => db.add(obj));
22
+ Obj.update(parentCollection, (parentCollection2) => {
40
23
  indices.forEach((index, i) => {
41
24
  if (index !== -1) {
42
25
  parentCollection2.objects.splice(index, 0, Ref.make(restoredObjects[i]));
@@ -53,4 +36,4 @@ var restore_objects_default = handler;
53
36
  export {
54
37
  restore_objects_default as default
55
38
  };
56
- //# sourceMappingURL=restore-objects-23VJYK72.mjs.map
39
+ //# sourceMappingURL=restore-objects-73C5MEB2.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/restore-objects.ts"],
4
+ "sourcesContent": ["// Copyright 2025 DXOS.org\n\nimport * as Effect from 'effect/Effect';\n\nimport { LayoutOperation } from '@dxos/app-toolkit';\nimport { Operation } from '@dxos/compute';\nimport { Collection, Obj, Ref } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\n\nimport { SpaceOperation } from './definitions';\n\nconst handler: Operation.WithHandler<typeof SpaceOperation.RestoreObjects> = SpaceOperation.RestoreObjects.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* (input) {\n const objects = input.objects as Obj.Unknown[];\n const parentCollection = input.parentCollection as Collection.Collection;\n const indices = input.indices as number[];\n const wasActive = input.wasActive as string[];\n\n const db = Obj.getDatabase(objects[0]);\n invariant(db);\n\n const restoredObjects = objects.map((obj: Obj.Unknown) => db.add(obj));\n\n Obj.update(parentCollection, (parentCollection) => {\n indices.forEach((index: number, i: number) => {\n if (index !== -1) {\n parentCollection.objects.splice(index, 0, Ref.make(restoredObjects[i] as Obj.Unknown));\n }\n });\n });\n\n if (wasActive.length > 0) {\n yield* Operation.invoke(LayoutOperation.Open, { subject: wasActive });\n }\n }),\n ),\n);\nexport default handler;\n"],
5
+ "mappings": ";;;;;;;AAEA,YAAYA,YAAY;AAExB,SAASC,uBAAuB;AAChC,SAASC,iBAAiB;AAC1B,SAAqBC,KAAKC,WAAW;AACrC,SAASC,iBAAiB;AAI1B,IAAA,eAA6EC;IAIvE,UAAMC,eAAmBC,eAAMD,KAAgB,UAAA,YAAA,kBAAA,WAAA,OAAA;AAC/C,QAAME,UAAUD,MAAMC;AACtB,QAAMC,mBAAkBA,MAAAA;AAExB,QAAMC,UAASC,MAAAA;AACfC,QAAAA,YAAUF,MAAAA;AAEV,QAAMG,KAAAA,IAAAA,YAAkBC,QAAW,CAAC,CAACC;AAErCC,YAAU,IAACV,QAAAA,EAAAA,YAAmBA,YAAAA,GAAAA,cAAAA,GAAAA,IAAAA,GAAAA,MAAAA,GAAAA,CAAAA,MAAAA,EAAAA,EAAAA,CAAAA;QAC5BE,kBAAiBS,QAAeC,IAAAA,CAAAA,QAAAA,GAAAA,IAAAA,GAAAA,CAAAA;aAC9B,kBAAkB,CAAAZ,sBAAA;YAChBA,QAAAA,CAAAA,OAAAA,MAAiBQ;AACnB,UAAA,UAAA,IAAA;AACF,QAAAR,kBAAA,QAAA,OAAA,OAAA,GAAA,IAAA,KAAA,gBAAA,CAAA,CAAA,CAAA;MACF;IAEIG,CAAAA;;gBAC8CU,SAASV,GAAAA;AAAU,WAAA,UAAA,OAAA,gBAAA,MAAA;MACrE,SAAA;IACF,CAAA;EAGJ;;;",
6
+ "names": ["Effect", "LayoutOperation", "Operation", "Obj", "Ref", "invariant", "SpaceOperation", "parentCollection", "input", "indices", "wasActive", "db", "getDatabase", "invariant", "restoredObjects", "objects", "obj", "Obj", "index", "i", "subject"]
7
+ }
@@ -0,0 +1,30 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/settings.ts
4
+ import * as Effect from "effect/Effect";
5
+ import { Capability } from "@dxos/app-framework";
6
+ import { AppCapabilities } from "@dxos/app-toolkit";
7
+ import { createKvsStore } from "@dxos/effect";
8
+ import { meta } from "#meta";
9
+ import { Settings, SpaceCapabilities } from "#types";
10
+ var settings_default = Capability.makeModule(() => Effect.sync(() => {
11
+ const settingsAtom = createKvsStore({
12
+ key: meta.id,
13
+ schema: Settings.Settings,
14
+ defaultValue: () => ({
15
+ showHidden: false
16
+ })
17
+ });
18
+ return [
19
+ Capability.contributes(SpaceCapabilities.Settings, settingsAtom),
20
+ Capability.contributes(AppCapabilities.Settings, {
21
+ prefix: meta.id,
22
+ schema: Settings.Settings,
23
+ atom: settingsAtom
24
+ })
25
+ ];
26
+ }));
27
+ export {
28
+ settings_default as default
29
+ };
30
+ //# sourceMappingURL=settings-DUCCRYX7.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/settings.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability } from '@dxos/app-framework';\nimport { AppCapabilities } from '@dxos/app-toolkit';\nimport { createKvsStore } from '@dxos/effect';\n\nimport { meta } from '#meta';\nimport { Settings, SpaceCapabilities } from '#types';\n\nexport default Capability.makeModule(() =>\n Effect.sync(() => {\n const settingsAtom = createKvsStore({\n key: meta.id,\n schema: Settings.Settings,\n defaultValue: () => ({\n showHidden: false,\n }),\n });\n\n return [\n Capability.contributes(SpaceCapabilities.Settings, settingsAtom),\n Capability.contributes(AppCapabilities.Settings, {\n prefix: meta.id,\n schema: Settings.Settings,\n atom: settingsAtom,\n }),\n ];\n }),\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,uBAAuB;AAChC,SAASC,sBAAsB;AAE/B,SAASC,YAAY;AACrB,SAASC,UAAUC,yBAAyB;AAE5C,IAAA,mBAAeL,WAAWM,WAAW,MAC5BC,YAAK,MAAA;AACV,QAAMC,eAAeN,eAAe;IAClCO,KAAKN,KAAKO;IACVC,QAAQP,SAASA;IACjBQ,cAAc,OAAO;MACnBC,YAAY;IACd;EACF,CAAA;AAEA,SAAO;IACLb,WAAWc,YAAYT,kBAAkBD,UAAUI,YAAAA;IACnDR,WAAWc,YAAYb,gBAAgBG,UAAU;MAC/CW,QAAQZ,KAAKO;MACbC,QAAQP,SAASA;MACjBY,MAAMR;IACR,CAAA;;AAEJ,CAAA,CAAA;",
6
+ "names": ["Effect", "Capability", "AppCapabilities", "createKvsStore", "meta", "Settings", "SpaceCapabilities", "makeModule", "sync", "settingsAtom", "key", "id", "schema", "defaultValue", "showHidden", "contributes", "prefix", "atom"]
7
+ }
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  SpaceOperation
3
- } from "./chunk-BJAZV3HI.mjs";
4
- import "./chunk-FBRDXXNK.mjs";
3
+ } from "./chunk-MCL6D42P.mjs";
4
+ import "./chunk-K2XBM3E3.mjs";
5
5
  import "./chunk-J5LGTIGS.mjs";
6
6
 
7
7
  // src/operations/share.ts
8
8
  import * as Effect from "effect/Effect";
9
- import { Operation } from "@dxos/operation";
10
- import { ObservabilityOperation } from "@dxos/plugin-observability/operations";
9
+ import { Operation } from "@dxos/compute";
10
+ import { ObservabilityOperation } from "@dxos/plugin-observability";
11
11
  var handler = SpaceOperation.Share.pipe(Operation.withHandler(Effect.fnUntraced(function* (input) {
12
12
  const { space, type, authMethod, multiUse, target } = input;
13
13
  const invitation = space.share({
@@ -28,4 +28,4 @@ var share_default = handler;
28
28
  export {
29
29
  share_default as default
30
30
  };
31
- //# sourceMappingURL=share-2PZJXFJM.mjs.map
31
+ //# sourceMappingURL=share-FSYFMNIQ.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/operations/share.ts"],
4
- "sourcesContent": ["// Copyright 2025 DXOS.org\n\nimport * as Effect from 'effect/Effect';\n\nimport { Operation } from '@dxos/operation';\nimport { ObservabilityOperation } from '@dxos/plugin-observability/operations';\n\nimport { SpaceOperation } from './definitions';\n\nconst handler: Operation.WithHandler<typeof SpaceOperation.Share> = SpaceOperation.Share.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* (input) {\n const { space, type, authMethod, multiUse, target } = input;\n const invitation = space.share({ type, authMethod, multiUse, target });\n\n yield* Operation.schedule(ObservabilityOperation.SendEvent, {\n name: 'space.share',\n properties: {\n spaceId: space.id,\n },\n });\n\n return invitation;\n }),\n ),\n);\nexport default handler;\n"],
4
+ "sourcesContent": ["// Copyright 2025 DXOS.org\n\nimport * as Effect from 'effect/Effect';\n\nimport { Operation } from '@dxos/compute';\nimport { ObservabilityOperation } from '@dxos/plugin-observability';\n\nimport { SpaceOperation } from './definitions';\n\nconst handler: Operation.WithHandler<typeof SpaceOperation.Share> = SpaceOperation.Share.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* (input) {\n const { space, type, authMethod, multiUse, target } = input;\n const invitation = space.share({ type, authMethod, multiUse, target });\n\n yield* Operation.schedule(ObservabilityOperation.SendEvent, {\n name: 'space.share',\n properties: {\n spaceId: space.id,\n },\n });\n\n return invitation;\n }),\n ),\n);\nexport default handler;\n"],
5
5
  "mappings": ";;;;;;;AAEA,YAAYA,YAAY;AAExB,SAASC,iBAAiB;AAC1B,SAASC,8BAA8B;AAIvC,IAAMC,UAA8DC,eAAeC,MAAMC,KACvFC,UAAUC,YACDC,kBAAW,WAAWC,OAAK;AAChC,QAAM,EAAEC,OAAOC,MAAMC,YAAYC,UAAUC,OAAM,IAAKL;AACtD,QAAMM,aAAaL,MAAMM,MAAM;IAAEL;IAAMC;IAAYC;IAAUC;EAAO,CAAA;AAEpE,SAAOR,UAAUW,SAASC,uBAAuBC,WAAW;IAC1DC,MAAM;IACNC,YAAY;MACVC,SAASZ,MAAMa;IACjB;EACF,CAAA;AAEA,SAAOR;AACT,CAAA,CAAA,CAAA;AAGJ,IAAA,gBAAeb;",
6
6
  "names": ["Effect", "Operation", "ObservabilityOperation", "handler", "SpaceOperation", "Share", "pipe", "Operation", "withHandler", "fnUntraced", "input", "space", "type", "authMethod", "multiUse", "target", "invitation", "share", "schedule", "ObservabilityOperation", "SendEvent", "name", "properties", "spaceId", "id"]
7
7
  }
@@ -1,27 +1,19 @@
1
1
  import {
2
2
  SpaceOperation
3
- } from "./chunk-BJAZV3HI.mjs";
4
- import "./chunk-FBRDXXNK.mjs";
3
+ } from "./chunk-MCL6D42P.mjs";
4
+ import "./chunk-K2XBM3E3.mjs";
5
5
  import "./chunk-J5LGTIGS.mjs";
6
6
 
7
7
  // src/operations/snapshot.ts
8
8
  import * as Effect from "effect/Effect";
9
+ import { Operation } from "@dxos/compute";
9
10
  import { Query } from "@dxos/echo";
10
11
  import { EchoDatabaseImpl, Serializer } from "@dxos/echo-db";
11
12
  import { invariant } from "@dxos/invariant";
12
- import { Operation } from "@dxos/operation";
13
13
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/operations/snapshot.ts";
14
14
  var handler = SpaceOperation.Snapshot.pipe(Operation.withHandler((input) => Effect.promise(async () => {
15
15
  const db = input.db;
16
- invariant(db instanceof EchoDatabaseImpl, "Database must be an instance of EchoDatabaseImpl", {
17
- F: __dxlog_file,
18
- L: 16,
19
- S: void 0,
20
- A: [
21
- "db instanceof EchoDatabaseImpl",
22
- "'Database must be an instance of EchoDatabaseImpl'"
23
- ]
24
- });
16
+ invariant(db instanceof EchoDatabaseImpl, "Database must be an instance of EchoDatabaseImpl", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 10, S: void 0, A: ["db instanceof EchoDatabaseImpl", "'Database must be an instance of EchoDatabaseImpl'"] });
25
17
  const backup = await new Serializer().export(db, input.query && Query.fromAst(input.query));
26
18
  return {
27
19
  snapshot: new Blob([
@@ -35,4 +27,4 @@ var snapshot_default = handler;
35
27
  export {
36
28
  snapshot_default as default
37
29
  };
38
- //# sourceMappingURL=snapshot-OOA2JZ67.mjs.map
30
+ //# sourceMappingURL=snapshot-HCSBDOOE.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/snapshot.ts"],
4
+ "sourcesContent": ["// Copyright 2025 DXOS.org\n\nimport * as Effect from 'effect/Effect';\n\nimport { Operation } from '@dxos/compute';\nimport { Query } from '@dxos/echo';\nimport { EchoDatabaseImpl, Serializer } from '@dxos/echo-db';\nimport { invariant } from '@dxos/invariant';\n\nimport { SpaceOperation } from './definitions';\n\nconst handler: Operation.WithHandler<typeof SpaceOperation.Snapshot> = SpaceOperation.Snapshot.pipe(\n Operation.withHandler((input) =>\n Effect.promise(async () => {\n const db = input.db as any;\n invariant(db instanceof EchoDatabaseImpl, 'Database must be an instance of EchoDatabaseImpl');\n const backup = await new Serializer().export(db, input.query && Query.fromAst(input.query));\n return {\n snapshot: new Blob([JSON.stringify(backup, null, 2)], { type: 'application/json' }),\n };\n }),\n ),\n);\nexport default handler;\n"],
5
+ "mappings": ";;;;;;;AAEA,YAAYA,YAAY;AAExB,SAASC,iBAAiB;AAC1B,SAASC,aAAa;AACtB,SAASC,kBAAkBC,kBAAkB;AAC7C,SAASC,iBAAiB;AAI1B,IAAA,eAAuEC;cAIjEC,eAAUC,SAAcC,KAAAA,UAAkB,YAAA,CAAA,UAAA,eAAA,YAAA;AAC1C,QAAMC,KAAAA,MAAS;AACf,YAAO,cAAA,kBAAA,oDAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,QAAA,GAAA,CAAA,kCAAA,oDAAA,EAAA,CAAA;QACLC,SAAU,MAAIC,IAAK,WAAA,EAAA,OAAA,IAAA,MAAA,SAAA,MAAA,QAAA,MAAA,KAAA,CAAA;;cAAmC,IAAA,KAAA;MAAEC,KAAAA,UAAM,QAAA,MAAA,CAAA;IAAmB,GAAA;MACnF,MAAA;IACF,CAAA;EAGJ;;;",
6
+ "names": ["Effect", "Operation", "Query", "EchoDatabaseImpl", "Serializer", "invariant", "SpaceOperation", "invariant", "db", "EchoDatabaseImpl", "backup", "snapshot", "Blob", "type"]
7
+ }
@@ -0,0 +1,248 @@
1
+ import "./chunk-2DHCIE27.mjs";
2
+ import {
3
+ SHARED
4
+ } from "./chunk-K2XBM3E3.mjs";
5
+ import "./chunk-J5LGTIGS.mjs";
6
+
7
+ // src/capabilities/spaces-ready.ts
8
+ import * as Effect from "effect/Effect";
9
+ import * as Option from "effect/Option";
10
+ import { Capabilities, Capability } from "@dxos/app-framework";
11
+ import { AppCapabilities, LayoutOperation, getSpacePath, resolvePersonalSpace, setPersonalSpace } from "@dxos/app-toolkit";
12
+ import { SubscriptionList } from "@dxos/async";
13
+ import { Filter, Obj } from "@dxos/echo";
14
+ import { SPACE_ID_LENGTH, parseId } from "@dxos/keys";
15
+ import { log } from "@dxos/log";
16
+ import { AttentionCapabilities } from "@dxos/plugin-attention";
17
+ import { ClientCapabilities } from "@dxos/plugin-client";
18
+ import { Graph } from "@dxos/plugin-graph";
19
+ import { EdgeReplicationSetting } from "@dxos/protocols/proto/dxos/echo/metadata";
20
+ import { PublicKey } from "@dxos/react-client";
21
+ import { SpaceState } from "@dxos/react-client/echo";
22
+ import { Expando } from "@dxos/schema";
23
+ import { ComplexMap, reduceGroupBy } from "@dxos/util";
24
+ import { SpaceOperation } from "#operations";
25
+ import { SpaceCapabilities } from "#types";
26
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/capabilities/spaces-ready.ts";
27
+ var ACTIVE_NODE_BROADCAST_INTERVAL = 3e4;
28
+ var WAIT_FOR_OBJECT_TIMEOUT = 5e3;
29
+ var ECHO_DXN_LENGTH = 3 + 1 + 4 + 1 + 33 + 1 + 26;
30
+ var spaces_ready_default = Capability.makeModule(Effect.fnUntraced(function* () {
31
+ const subscriptions = new SubscriptionList();
32
+ const spaceSubscriptions = new SubscriptionList();
33
+ const { invoke, invokePromise } = yield* Capability.get(Capabilities.OperationInvoker);
34
+ const { graph } = yield* Capability.get(AppCapabilities.AppGraph);
35
+ const registry = yield* Capability.get(Capabilities.AtomRegistry);
36
+ const layoutAtom = yield* Capability.get(AppCapabilities.Layout);
37
+ const attention = yield* Capability.get(AttentionCapabilities.Attention);
38
+ const stateAtom = yield* Capability.get(SpaceCapabilities.State);
39
+ const ephemeralAtom = yield* Capability.get(SpaceCapabilities.EphemeralState);
40
+ const client = yield* Capability.get(ClientCapabilities.Client);
41
+ let personalSpaceInitialized = false;
42
+ const initializePersonalSpace = async (personalSpace, { fromCredential }) => {
43
+ if (personalSpaceInitialized) {
44
+ return;
45
+ }
46
+ personalSpaceInitialized = true;
47
+ await personalSpace.waitUntilReady();
48
+ if (fromCredential) {
49
+ setPersonalSpace(personalSpace);
50
+ }
51
+ const layout = registry.get(layoutAtom);
52
+ if (layout.workspace === "default") {
53
+ await invoke(LayoutOperation.SwitchWorkspace, {
54
+ subject: getSpacePath(personalSpace.id)
55
+ }).pipe(Effect.runPromise);
56
+ }
57
+ const queryResults = await personalSpace.db.query(Filter.type(Expando.Expando, {
58
+ key: SHARED
59
+ })).run();
60
+ const spacesOrder = queryResults[0];
61
+ if (!spacesOrder) {
62
+ personalSpace.db.add(Obj.make(Expando.Expando, {
63
+ key: SHARED,
64
+ order: []
65
+ }));
66
+ }
67
+ };
68
+ const resolved = resolvePersonalSpace(client);
69
+ if (resolved) {
70
+ void initializePersonalSpace(resolved.space, resolved);
71
+ } else {
72
+ subscriptions.add(client.spaces.subscribe(() => {
73
+ const resolved2 = resolvePersonalSpace(client);
74
+ if (resolved2) {
75
+ void initializePersonalSpace(resolved2.space, resolved2);
76
+ }
77
+ }).unsubscribe);
78
+ }
79
+ let lastActiveCleanup;
80
+ subscriptions.add(registry.subscribe(layoutAtom, (layout) => {
81
+ lastActiveCleanup?.();
82
+ lastActiveCleanup = void 0;
83
+ const id = layout.active.length === 1 ? layout.active[0] : layout.workspace;
84
+ if (!id) {
85
+ return;
86
+ }
87
+ const node = Graph.getNode(graph, id).pipe(Option.getOrNull);
88
+ if (!node && (id.length === ECHO_DXN_LENGTH || id.length === SPACE_ID_LENGTH)) {
89
+ void Graph.initialize(graph, id);
90
+ const timeout = setTimeout(async () => {
91
+ const node2 = Graph.getNode(graph, id).pipe(Option.getOrNull);
92
+ if (!node2) {
93
+ await invokePromise(SpaceOperation.WaitForObject, {
94
+ id
95
+ });
96
+ }
97
+ }, WAIT_FOR_OBJECT_TIMEOUT);
98
+ lastActiveCleanup = () => clearTimeout(timeout);
99
+ }
100
+ }, {
101
+ immediate: true
102
+ }));
103
+ subscriptions.add(() => lastActiveCleanup?.());
104
+ subscriptions.add(client.spaces.subscribe(async (spaces) => {
105
+ const personalSpaceForMigration = resolvePersonalSpace(client);
106
+ if (personalSpaceForMigration?.space && personalSpaceForMigration.space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION) {
107
+ await personalSpaceForMigration.space.internal.migrate();
108
+ }
109
+ spaces.filter((space) => space.state.get() === SpaceState.SPACE_READY).forEach((space) => {
110
+ const updateSpaceName = () => {
111
+ const name = space.properties.name;
112
+ if (!name) {
113
+ registry.update(stateAtom, (current) => {
114
+ const { [space.id]: _, ...rest } = current.spaceNames;
115
+ return {
116
+ ...current,
117
+ spaceNames: rest
118
+ };
119
+ });
120
+ } else {
121
+ registry.update(stateAtom, (current) => ({
122
+ ...current,
123
+ spaceNames: {
124
+ ...current.spaceNames,
125
+ [space.id]: name
126
+ }
127
+ }));
128
+ }
129
+ };
130
+ updateSpaceName();
131
+ subscriptions.add(Obj.subscribe(space.properties, updateSpaceName));
132
+ });
133
+ }).unsubscribe);
134
+ let broadcastCleanup;
135
+ const setupBroadcast = () => {
136
+ broadcastCleanup?.();
137
+ const layout = registry.get(layoutAtom);
138
+ const current = attention.getCurrent();
139
+ const active = layout.active;
140
+ const inactive = layout.inactive;
141
+ const send = () => {
142
+ const spaces = client.spaces.get();
143
+ const identity = client.halo.identity.get();
144
+ if (identity) {
145
+ const idsBySpace = reduceGroupBy(active, (id) => {
146
+ try {
147
+ const { spaceId } = parseId(id);
148
+ return spaceId;
149
+ } catch {
150
+ return null;
151
+ }
152
+ });
153
+ const removedBySpace = reduceGroupBy(inactive, (id) => {
154
+ try {
155
+ const { spaceId } = parseId(id);
156
+ return spaceId;
157
+ } catch {
158
+ return null;
159
+ }
160
+ });
161
+ for (const space of spaces) {
162
+ if (!idsBySpace.has(space.id)) {
163
+ idsBySpace.set(space.id, []);
164
+ }
165
+ }
166
+ for (const [spaceId, added] of idsBySpace) {
167
+ const removed = removedBySpace.get(spaceId) ?? [];
168
+ const space = spaces.find((space2) => space2.id === spaceId);
169
+ if (!space) {
170
+ continue;
171
+ }
172
+ void space.postMessage("viewing", {
173
+ identityKey: identity.identityKey.toHex(),
174
+ attended: current,
175
+ added,
176
+ removed
177
+ }).catch((err) => {
178
+ log.warn("Failed to broadcast active node for presence.", {
179
+ err: err.message
180
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 198, S: this });
181
+ });
182
+ }
183
+ }
184
+ };
185
+ send();
186
+ const interval = setInterval(() => send(), ACTIVE_NODE_BROADCAST_INTERVAL);
187
+ broadcastCleanup = () => clearInterval(interval);
188
+ };
189
+ subscriptions.add(registry.subscribe(layoutAtom, setupBroadcast));
190
+ subscriptions.add(attention.subscribeCurrent(() => setupBroadcast()));
191
+ setupBroadcast();
192
+ subscriptions.add(() => broadcastCleanup?.());
193
+ subscriptions.add(client.spaces.subscribe((spaces) => {
194
+ spaceSubscriptions.clear();
195
+ spaces.forEach((space) => {
196
+ spaceSubscriptions.add(space.listen("viewing", (message) => {
197
+ const { added, removed, attended } = message.payload;
198
+ const identityKey = PublicKey.safeFrom(message.payload.identityKey);
199
+ const currentIdentity = client.halo.identity.get();
200
+ if (identityKey && !currentIdentity?.identityKey.equals(identityKey) && Array.isArray(added) && Array.isArray(removed)) {
201
+ registry.update(ephemeralAtom, (ephemeral) => {
202
+ added.forEach((id) => {
203
+ if (typeof id === "string") {
204
+ if (!(id in ephemeral.viewersByObject)) {
205
+ ephemeral.viewersByObject[id] = new ComplexMap(PublicKey.hash);
206
+ }
207
+ ephemeral.viewersByObject[id].set(identityKey, {
208
+ lastSeen: Date.now(),
209
+ currentlyAttended: new Set(attended).has(id)
210
+ });
211
+ if (!ephemeral.viewersByIdentity.has(identityKey)) {
212
+ ephemeral.viewersByIdentity.set(identityKey, /* @__PURE__ */ new Set());
213
+ }
214
+ ephemeral.viewersByIdentity.get(identityKey).add(id);
215
+ }
216
+ });
217
+ removed.forEach((id) => {
218
+ if (typeof id === "string") {
219
+ ephemeral.viewersByObject[id]?.delete(identityKey);
220
+ ephemeral.viewersByIdentity.get(identityKey)?.delete(id);
221
+ }
222
+ });
223
+ return {
224
+ ...ephemeral
225
+ };
226
+ });
227
+ }
228
+ }));
229
+ });
230
+ }).unsubscribe);
231
+ try {
232
+ yield* Effect.tryPromise(() => Promise.all(client.spaces.get().map((space) => space.internal.setEdgeReplicationPreference(EdgeReplicationSetting.ENABLED))));
233
+ registry.update(stateAtom, (current) => ({
234
+ ...current,
235
+ enabledEdgeReplication: true
236
+ }));
237
+ } catch (err) {
238
+ log.catch(err, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 267, S: this });
239
+ }
240
+ return Capability.contributes(Capabilities.Null, null, () => Effect.sync(() => {
241
+ spaceSubscriptions.clear();
242
+ subscriptions.clear();
243
+ }));
244
+ }));
245
+ export {
246
+ spaces_ready_default as default
247
+ };
248
+ //# sourceMappingURL=spaces-ready-QU2YUZTO.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/spaces-ready.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Option from 'effect/Option';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport {\n AppCapabilities,\n LayoutOperation,\n getSpacePath,\n resolvePersonalSpace,\n setPersonalSpace,\n} from '@dxos/app-toolkit';\nimport { SubscriptionList } from '@dxos/async';\nimport { Filter, Obj } from '@dxos/echo';\nimport { SPACE_ID_LENGTH, parseId } from '@dxos/keys';\nimport { log } from '@dxos/log';\nimport { AttentionCapabilities } from '@dxos/plugin-attention';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { Graph } from '@dxos/plugin-graph';\nimport { EdgeReplicationSetting } from '@dxos/protocols/proto/dxos/echo/metadata';\nimport { PublicKey } from '@dxos/react-client';\nimport { type Space, SpaceState } from '@dxos/react-client/echo';\nimport { Expando } from '@dxos/schema';\nimport { ComplexMap, reduceGroupBy } from '@dxos/util';\n\nimport { SpaceOperation } from '#operations';\nimport { SpaceCapabilities } from '#types';\n\nimport { SHARED } from '../util';\n\nconst ACTIVE_NODE_BROADCAST_INTERVAL = 30_000;\nconst WAIT_FOR_OBJECT_TIMEOUT = 5_000;\n\n// E.g., dxn:echo:BA25QRC2FEWCSAMRP4RZL65LWJ7352CKE:01J00J9B45YHYSGZQTQMSKMGJ6\nconst ECHO_DXN_LENGTH = 3 + 1 + 4 + 1 + 33 + 1 + 26;\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const subscriptions = new SubscriptionList();\n const spaceSubscriptions = new SubscriptionList();\n\n const { invoke, invokePromise } = yield* Capability.get(Capabilities.OperationInvoker);\n const { graph } = yield* Capability.get(AppCapabilities.AppGraph);\n const registry = yield* Capability.get(Capabilities.AtomRegistry);\n const layoutAtom = yield* Capability.get(AppCapabilities.Layout);\n const attention = yield* Capability.get(AttentionCapabilities.Attention);\n const stateAtom = yield* Capability.get(SpaceCapabilities.State);\n const ephemeralAtom = yield* Capability.get(SpaceCapabilities.EphemeralState);\n const client = yield* Capability.get(ClientCapabilities.Client);\n\n //\n // Personal space initialization — deferred until found.\n //\n\n let personalSpaceInitialized = false;\n const initializePersonalSpace = async (personalSpace: Space, { fromCredential }: { fromCredential: boolean }) => {\n if (personalSpaceInitialized) {\n return;\n }\n // Set before any await so concurrent subscribe callbacks don't start a second initialization.\n personalSpaceInitialized = true;\n\n await personalSpace.waitUntilReady();\n\n if (fromCredential) {\n setPersonalSpace(personalSpace);\n }\n\n // Check if deck state indicates we should switch to default space.\n const layout = registry.get(layoutAtom);\n if (layout.workspace === 'default') {\n await invoke(LayoutOperation.SwitchWorkspace, { subject: getSpacePath(personalSpace.id) }).pipe(\n Effect.runPromise,\n );\n }\n\n const queryResults = await personalSpace.db.query(Filter.type(Expando.Expando, { key: SHARED })).run();\n const spacesOrder = queryResults[0];\n if (!spacesOrder) {\n // TODO(wittjosiah): Cannot be a Folder because Spaces are not TypedObjects so can't be saved in the database.\n // Instead, we store order as an array of space ids.\n personalSpace.db.add(Obj.make(Expando.Expando, { key: SHARED, order: [] }));\n }\n };\n\n // Try to find the personal space now, or subscribe to find it later.\n // Initialization is async (non-blocking) so subscriptions wire immediately.\n const resolved = resolvePersonalSpace(client);\n if (resolved) {\n void initializePersonalSpace(resolved.space, resolved);\n } else {\n subscriptions.add(\n client.spaces.subscribe(() => {\n const resolved = resolvePersonalSpace(client);\n if (resolved) {\n void initializePersonalSpace(resolved.space, resolved);\n }\n }).unsubscribe,\n );\n }\n\n //\n // Space subscriptions — set up immediately, do not depend on personal space.\n //\n\n // Await missing objects - subscribe to layout atom changes.\n // NOTE: Use immediate: true to check initial state (URL handler may have already set active).\n let lastActiveCleanup: (() => void) | undefined;\n subscriptions.add(\n registry.subscribe(\n layoutAtom,\n (layout) => {\n // Clean up previous effect.\n lastActiveCleanup?.();\n lastActiveCleanup = undefined;\n\n // Determine the ID to check - either from active item or workspace.\n const id = layout.active.length === 1 ? layout.active[0] : layout.workspace;\n if (!id) {\n return;\n }\n\n const node = Graph.getNode(graph, id).pipe(Option.getOrNull);\n if (!node && (id.length === ECHO_DXN_LENGTH || id.length === SPACE_ID_LENGTH)) {\n void Graph.initialize(graph, id);\n const timeout = setTimeout(async () => {\n const node = Graph.getNode(graph, id).pipe(Option.getOrNull);\n if (!node) {\n await invokePromise(SpaceOperation.WaitForObject, { id });\n }\n }, WAIT_FOR_OBJECT_TIMEOUT);\n\n lastActiveCleanup = () => clearTimeout(timeout);\n }\n },\n { immediate: true },\n ),\n );\n // Also add cleanup for the last effect.\n subscriptions.add(() => lastActiveCleanup?.());\n\n // Cache space names.\n subscriptions.add(\n client.spaces.subscribe(async (spaces) => {\n // TODO(wittjosiah): Remove. This is a hack to be able to migrate the personal space properties.\n const personalSpaceForMigration = resolvePersonalSpace(client);\n if (\n personalSpaceForMigration?.space &&\n personalSpaceForMigration.space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION\n ) {\n await personalSpaceForMigration.space.internal.migrate();\n }\n\n spaces\n .filter((space) => space.state.get() === SpaceState.SPACE_READY)\n .forEach((space) => {\n const updateSpaceName = () => {\n const name = space.properties.name;\n if (!name) {\n registry.update(stateAtom, (current) => {\n const { [space.id]: _, ...rest } = current.spaceNames;\n return { ...current, spaceNames: rest };\n });\n } else {\n registry.update(stateAtom, (current) => ({\n ...current,\n spaceNames: { ...current.spaceNames, [space.id]: name },\n }));\n }\n };\n updateSpaceName();\n subscriptions.add(Obj.subscribe(space.properties, updateSpaceName));\n });\n }).unsubscribe,\n );\n\n // Broadcast active node to other peers in the space - subscribe to both layout and attention.\n let broadcastCleanup: (() => void) | undefined;\n const setupBroadcast = () => {\n broadcastCleanup?.();\n\n const layout = registry.get(layoutAtom);\n const current = attention.getCurrent();\n const active = layout.active;\n const inactive = layout.inactive;\n\n const send = () => {\n const spaces = client.spaces.get();\n const identity = client.halo.identity.get();\n if (identity) {\n // Group parts by space for efficient messaging.\n const idsBySpace = reduceGroupBy(active, (id: string) => {\n try {\n const { spaceId } = parseId(id);\n return spaceId;\n } catch {\n return null;\n }\n });\n\n const removedBySpace = reduceGroupBy(inactive, (id: string) => {\n try {\n const { spaceId } = parseId(id);\n return spaceId;\n } catch {\n return null;\n }\n });\n\n // NOTE: Ensure all spaces are included so that we send the correct `removed` object arrays.\n for (const space of spaces) {\n if (!idsBySpace.has(space.id)) {\n idsBySpace.set(space.id, []);\n }\n }\n\n for (const [spaceId, added] of idsBySpace) {\n const removed = removedBySpace.get(spaceId) ?? [];\n const space = spaces.find((space) => space.id === spaceId);\n if (!space) {\n continue;\n }\n\n void space\n .postMessage('viewing', {\n identityKey: identity.identityKey.toHex(),\n attended: current,\n added,\n removed,\n })\n // TODO(burdon): This seems defensive; why would this fail? Backoff interval.\n .catch((err) => {\n log.warn('Failed to broadcast active node for presence.', {\n err: err.message,\n });\n });\n }\n }\n };\n\n send();\n // Send at interval to allow peers to expire entries if they become disconnected.\n const interval = setInterval(() => send(), ACTIVE_NODE_BROADCAST_INTERVAL);\n broadcastCleanup = () => clearInterval(interval);\n };\n\n // Subscribe to layout changes for broadcast.\n subscriptions.add(registry.subscribe(layoutAtom, setupBroadcast));\n // Subscribe to attention.current changes.\n subscriptions.add(attention.subscribeCurrent(() => setupBroadcast()));\n // Initial setup.\n setupBroadcast();\n // Cleanup.\n subscriptions.add(() => broadcastCleanup?.());\n\n // Listen for active nodes from other peers in the space.\n subscriptions.add(\n client.spaces.subscribe((spaces) => {\n spaceSubscriptions.clear();\n spaces.forEach((space) => {\n spaceSubscriptions.add(\n space.listen('viewing', (message) => {\n const { added, removed, attended } = message.payload;\n\n const identityKey = PublicKey.safeFrom(message.payload.identityKey);\n const currentIdentity = client.halo.identity.get();\n if (\n identityKey &&\n !currentIdentity?.identityKey.equals(identityKey) &&\n Array.isArray(added) &&\n Array.isArray(removed)\n ) {\n // TODO(wittjosiah): Stop using (Complex)Map inside reactive object.\n registry.update(ephemeralAtom, (ephemeral) => {\n added.forEach((id) => {\n if (typeof id === 'string') {\n if (!(id in ephemeral.viewersByObject)) {\n ephemeral.viewersByObject[id] = new ComplexMap(PublicKey.hash);\n }\n ephemeral.viewersByObject[id]!.set(identityKey, {\n lastSeen: Date.now(),\n currentlyAttended: new Set(attended).has(id),\n });\n if (!ephemeral.viewersByIdentity.has(identityKey)) {\n ephemeral.viewersByIdentity.set(identityKey, new Set());\n }\n ephemeral.viewersByIdentity.get(identityKey)!.add(id);\n }\n });\n\n removed.forEach((id) => {\n if (typeof id === 'string') {\n ephemeral.viewersByObject[id]?.delete(identityKey);\n ephemeral.viewersByIdentity.get(identityKey)?.delete(id);\n // It's okay for these to be empty sets/maps, reduces churn.\n }\n });\n\n return { ...ephemeral };\n });\n }\n }),\n );\n });\n }).unsubscribe,\n );\n\n // Enable edge replication for all spaces.\n try {\n yield* Effect.tryPromise(() =>\n Promise.all(\n client.spaces\n .get()\n .map((space) => space.internal.setEdgeReplicationPreference(EdgeReplicationSetting.ENABLED)),\n ),\n );\n registry.update(stateAtom, (current) => ({ ...current, enabledEdgeReplication: true }));\n } catch (err) {\n log.catch(err);\n }\n\n return Capability.contributes(Capabilities.Null, null, () =>\n Effect.sync(() => {\n spaceSubscriptions.clear();\n subscriptions.clear();\n }),\n );\n }),\n);\n"],
5
+ "mappings": "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",
6
+ "names": ["Effect", "Option", "Capabilities", "Capability", "AppCapabilities", "LayoutOperation", "getSpacePath", "resolvePersonalSpace", "setPersonalSpace", "SubscriptionList", "Filter", "Obj", "SPACE_ID_LENGTH", "parseId", "log", "AttentionCapabilities", "ClientCapabilities", "Graph", "EdgeReplicationSetting", "PublicKey", "SpaceState", "Expando", "ComplexMap", "reduceGroupBy", "SpaceOperation", "SpaceCapabilities", "ACTIVE_NODE_BROADCAST_INTERVAL", "ECHO_DXN_LENGTH", "subscriptions", "SubscriptionList", "spaceSubscriptions", "invokePromise", "Capability", "AppCapabilities", "registry", "Capabilities", "AtomRegistry", "layoutAtom", "attention", "AttentionCapabilities", "Attention", "stateAtom", "get", "SpaceCapabilities", "ephemeralAtom", "EphemeralState", "client", "ClientCapabilities", "Client", "personalSpaceInitialized", "setPersonalSpace", "personalSpace", "invoke", "LayoutOperation", "SwitchWorkspace", "subject", "getSpacePath", "pipe", "Effect", "queryResults", "run", "spacesOrder", "initializePersonalSpace", "resolved", "space", "spaces", "subscribe", "unsubscribe", "lastActiveCleanup", "active", "Graph", "initialize", "graph", "id", "timeout", "setTimeout", "node", "getNode", "SpaceOperation", "WaitForObject", "WAIT_FOR_OBJECT_TIMEOUT", "immediate", "add", "personalSpaceForMigration", "resolvePersonalSpace", "migrate", "filter", "SpaceState", "SPACE_READY", "name", "properties", "update", "current", "spaceNames", "updateSpaceName", "broadcastCleanup", "layout", "inactive", "send", "identity", "idsBySpace", "spaceId", "parseId", "set", "find", "attended", "added", "removed", "catch", "err", "subscribeCurrent", "setupBroadcast", "forEach", "identityKey", "PublicKey", "safeFrom", "message", "currentIdentity", "halo", "equals", "ephemeral", "viewersByObject", "currentlyAttended", "Set", "viewersByIdentity", "enabledEdgeReplication", "contributes", "sync"]
7
+ }
@@ -0,0 +1,55 @@
1
+ import "./chunk-J5LGTIGS.mjs";
2
+
3
+ // src/capabilities/state.ts
4
+ import { Atom } from "@effect-atom/atom-react";
5
+ import * as Effect from "effect/Effect";
6
+ import { Capabilities, Capability } from "@dxos/app-framework";
7
+ import { createKvsStore } from "@dxos/effect";
8
+ import { PublicKey } from "@dxos/keys";
9
+ import { ComplexMap } from "@dxos/util";
10
+ import { meta } from "#meta";
11
+ import { SpaceCapabilities } from "#types";
12
+ var defaultSpaceState = {
13
+ spaceNames: {},
14
+ enabledEdgeReplication: false
15
+ };
16
+ var state_default = Capability.makeModule(Effect.fnUntraced(function* () {
17
+ const registry = yield* Capability.get(Capabilities.AtomRegistry);
18
+ const stateAtom = createKvsStore({
19
+ key: `${meta.id}.state`,
20
+ schema: SpaceCapabilities.StateSchema,
21
+ defaultValue: () => ({
22
+ ...defaultSpaceState
23
+ })
24
+ });
25
+ const ephemeralAtom = Atom.make({
26
+ awaiting: void 0,
27
+ sdkMigrationRunning: {},
28
+ navigableCollections: false,
29
+ viewersByObject: {},
30
+ viewersByIdentity: new ComplexMap(PublicKey.hash)
31
+ }).pipe(Atom.keepAlive);
32
+ const manager = yield* Capability.get(Capabilities.PluginManager);
33
+ const updateNavigableCollections = () => {
34
+ const enabled = manager.getEnabled().includes("org.dxos.plugin.stack") || manager.getEnabled().includes("org.dxos.plugin.simpleLayout");
35
+ const current = registry.get(ephemeralAtom);
36
+ if (enabled !== current.navigableCollections) {
37
+ registry.update(ephemeralAtom, (c) => ({
38
+ ...c,
39
+ navigableCollections: enabled
40
+ }));
41
+ }
42
+ };
43
+ updateNavigableCollections();
44
+ const unsubscribe = registry.subscribe(manager.enabled, updateNavigableCollections);
45
+ return [
46
+ Capability.contributes(SpaceCapabilities.State, stateAtom),
47
+ Capability.contributes(SpaceCapabilities.EphemeralState, ephemeralAtom, () => Effect.sync(() => {
48
+ unsubscribe();
49
+ }))
50
+ ];
51
+ }));
52
+ export {
53
+ state_default as default
54
+ };
55
+ //# sourceMappingURL=state-DPBOZRAW.mjs.map