@dxos/plugin-space 0.8.4-main.c85a9c8dae → 0.8.4-main.d9fc60f731

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 (1070) hide show
  1. package/LICENSE +102 -5
  2. package/PLUGIN.mdl +626 -0
  3. package/README.md +1 -1
  4. package/dist/lib/neutral/CollectionArticle-S3OF5KJ7.mjs +96 -0
  5. package/dist/lib/neutral/CollectionArticle-S3OF5KJ7.mjs.map +7 -0
  6. package/dist/lib/neutral/CollectionSection-A5WRHE5Z.mjs +19 -0
  7. package/dist/lib/neutral/CollectionSection-A5WRHE5Z.mjs.map +7 -0
  8. package/dist/lib/neutral/CreateObjectDialog-APLFTWSB.mjs +167 -0
  9. package/dist/lib/neutral/CreateObjectDialog-APLFTWSB.mjs.map +7 -0
  10. package/dist/lib/neutral/CreateSpaceDialog-WPKMRZH3.mjs +57 -0
  11. package/dist/lib/neutral/CreateSpaceDialog-WPKMRZH3.mjs.map +7 -0
  12. package/dist/lib/neutral/EntityRenamePopover-MYSW262F.mjs +59 -0
  13. package/dist/lib/neutral/EntityRenamePopover-MYSW262F.mjs.map +7 -0
  14. package/dist/lib/neutral/ImportSpaceDialog-7GKV4OTF.mjs +64 -0
  15. package/dist/lib/neutral/ImportSpaceDialog-7GKV4OTF.mjs.map +7 -0
  16. package/dist/lib/neutral/InlineSyncStatus-TBJKZCH7.mjs +49 -0
  17. package/dist/lib/neutral/InlineSyncStatus-TBJKZCH7.mjs.map +7 -0
  18. package/dist/lib/neutral/JoinDialog-SSFKRFTJ.mjs +114 -0
  19. package/dist/lib/neutral/JoinDialog-SSFKRFTJ.mjs.map +7 -0
  20. package/dist/lib/neutral/MembersContainer-KMCQDWCS.mjs +227 -0
  21. package/dist/lib/neutral/MembersContainer-KMCQDWCS.mjs.map +7 -0
  22. package/dist/lib/neutral/MenuFooter-J3YE4JGI.mjs +33 -0
  23. package/dist/lib/neutral/MenuFooter-J3YE4JGI.mjs.map +7 -0
  24. package/dist/lib/neutral/ObjectCardStack-HWLILOA3.mjs +55 -0
  25. package/dist/lib/neutral/ObjectCardStack-HWLILOA3.mjs.map +7 -0
  26. package/dist/lib/neutral/ObjectProperties-BF6KGFFC.mjs +33 -0
  27. package/dist/lib/neutral/ObjectProperties-BF6KGFFC.mjs.map +7 -0
  28. package/dist/lib/neutral/RecordArticle-QWGH25NT.mjs +51 -0
  29. package/dist/lib/neutral/RecordArticle-QWGH25NT.mjs.map +7 -0
  30. package/dist/lib/neutral/RelatedArticle-YDNGUDAJ.mjs +68 -0
  31. package/dist/lib/neutral/RelatedArticle-YDNGUDAJ.mjs.map +7 -0
  32. package/dist/lib/neutral/SchemaContainer-Q4BP6X2M.mjs +49 -0
  33. package/dist/lib/neutral/SchemaContainer-Q4BP6X2M.mjs.map +7 -0
  34. package/dist/lib/neutral/SmallPresenceLive-GUF4WLUC.mjs +8 -0
  35. package/dist/lib/neutral/SpacePlugin.mjs +10 -0
  36. package/dist/lib/neutral/SpacePlugin.node.mjs +835 -0
  37. package/dist/lib/neutral/SpacePlugin.node.mjs.map +7 -0
  38. package/dist/lib/neutral/SpacePlugin.workerd.mjs +34 -0
  39. package/dist/lib/neutral/SpacePlugin.workerd.mjs.map +7 -0
  40. package/dist/lib/neutral/SpacePresence-ACEXUS3N.mjs +11 -0
  41. package/dist/lib/neutral/SpaceRenamePopover-KFWL4CTJ.mjs +56 -0
  42. package/dist/lib/neutral/SpaceRenamePopover-KFWL4CTJ.mjs.map +7 -0
  43. package/dist/lib/neutral/SpaceSettings-RJWNYZAL.mjs +47 -0
  44. package/dist/lib/neutral/SpaceSettings-RJWNYZAL.mjs.map +7 -0
  45. package/dist/lib/neutral/SpaceSettingsContainer-IB34TEOB.mjs +276 -0
  46. package/dist/lib/neutral/SpaceSettingsContainer-IB34TEOB.mjs.map +7 -0
  47. package/dist/lib/neutral/SyncStatus-CWOXWDDZ.mjs +147 -0
  48. package/dist/lib/neutral/SyncStatus-CWOXWDDZ.mjs.map +7 -0
  49. package/dist/lib/neutral/ViewEditor-BR26G555.mjs +101 -0
  50. package/dist/lib/neutral/ViewEditor-BR26G555.mjs.map +7 -0
  51. package/dist/lib/neutral/add-object-NXJGPV7U.mjs +73 -0
  52. package/dist/lib/neutral/add-object-NXJGPV7U.mjs.map +7 -0
  53. package/dist/lib/neutral/add-relation-4XGLANGJ.mjs +26 -0
  54. package/dist/lib/neutral/add-relation-4XGLANGJ.mjs.map +7 -0
  55. package/dist/lib/neutral/add-type-EOQMBI63.mjs +57 -0
  56. package/dist/lib/neutral/add-type-EOQMBI63.mjs.map +7 -0
  57. package/dist/lib/neutral/app-graph-builder-5QSN3MP7.mjs +1254 -0
  58. package/dist/lib/neutral/app-graph-builder-5QSN3MP7.mjs.map +7 -0
  59. package/dist/lib/neutral/app-graph-serializer-BKLAS7NE.mjs +81 -0
  60. package/dist/lib/neutral/app-graph-serializer-BKLAS7NE.mjs.map +7 -0
  61. package/dist/lib/neutral/capabilities/index.mjs +43 -0
  62. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  63. package/dist/lib/neutral/capabilities/node.mjs +15 -0
  64. package/dist/lib/neutral/capabilities/node.mjs.map +7 -0
  65. package/dist/lib/neutral/chunk-2DHCIE27.mjs +25 -0
  66. package/dist/lib/neutral/chunk-2DHCIE27.mjs.map +7 -0
  67. package/dist/lib/neutral/chunk-4RTSNTDC.mjs +37 -0
  68. package/dist/lib/neutral/chunk-4RTSNTDC.mjs.map +7 -0
  69. package/dist/lib/neutral/chunk-CRZHK3BW.mjs +154 -0
  70. package/dist/lib/neutral/chunk-CRZHK3BW.mjs.map +7 -0
  71. package/dist/lib/neutral/chunk-E55TPDLR.mjs +103 -0
  72. package/dist/lib/neutral/chunk-E55TPDLR.mjs.map +7 -0
  73. package/dist/lib/neutral/chunk-EEXRKYOD.mjs +163 -0
  74. package/dist/lib/neutral/chunk-EEXRKYOD.mjs.map +7 -0
  75. package/dist/lib/neutral/chunk-F5MESIRH.mjs +19 -0
  76. package/dist/lib/neutral/chunk-F5MESIRH.mjs.map +7 -0
  77. package/dist/lib/neutral/chunk-HCDLT7WU.mjs +573 -0
  78. package/dist/lib/neutral/chunk-HCDLT7WU.mjs.map +7 -0
  79. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  80. package/dist/lib/neutral/chunk-JHZGRYGS.mjs +8 -0
  81. package/dist/lib/neutral/chunk-JHZGRYGS.mjs.map +7 -0
  82. package/dist/lib/neutral/chunk-LE2BYN7U.mjs +8 -0
  83. package/dist/lib/neutral/chunk-LE2BYN7U.mjs.map +7 -0
  84. package/dist/lib/neutral/close-5LMOR4PD.mjs +17 -0
  85. package/dist/lib/neutral/close-5LMOR4PD.mjs.map +7 -0
  86. package/dist/lib/neutral/components/index.mjs +404 -0
  87. package/dist/lib/neutral/components/index.mjs.map +7 -0
  88. package/dist/lib/neutral/containers/index.mjs +49 -0
  89. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  90. package/dist/lib/neutral/create-KUJARM45.mjs +75 -0
  91. package/dist/lib/neutral/create-KUJARM45.mjs.map +7 -0
  92. package/dist/lib/neutral/create-object-22WUOWZQ.mjs +101 -0
  93. package/dist/lib/neutral/create-object-22WUOWZQ.mjs.map +7 -0
  94. package/dist/lib/neutral/delete-HONXXXUH.mjs +17 -0
  95. package/dist/lib/neutral/delete-HONXXXUH.mjs.map +7 -0
  96. package/dist/lib/neutral/delete-field-OVN35NPO.mjs +42 -0
  97. package/dist/lib/neutral/delete-field-OVN35NPO.mjs.map +7 -0
  98. package/dist/lib/neutral/duplicate-object-7HODEIGW.mjs +17 -0
  99. package/dist/lib/neutral/duplicate-object-7HODEIGW.mjs.map +7 -0
  100. package/dist/lib/neutral/export-space-HGI6N3IA.mjs +34 -0
  101. package/dist/lib/neutral/export-space-HGI6N3IA.mjs.map +7 -0
  102. package/dist/lib/neutral/get-share-link-76OF5TPM.mjs +41 -0
  103. package/dist/lib/neutral/get-share-link-76OF5TPM.mjs.map +7 -0
  104. package/dist/lib/neutral/hooks/index.mjs +121 -0
  105. package/dist/lib/neutral/hooks/index.mjs.map +7 -0
  106. package/dist/lib/neutral/identity-created-57RML5XT.mjs +32 -0
  107. package/dist/lib/neutral/identity-created-57RML5XT.mjs.map +7 -0
  108. package/dist/lib/neutral/import-space-P57N4PSP.mjs +28 -0
  109. package/dist/lib/neutral/import-space-P57N4PSP.mjs.map +7 -0
  110. package/dist/lib/neutral/index.mjs +52 -0
  111. package/dist/lib/neutral/index.mjs.map +7 -0
  112. package/dist/lib/neutral/join-WCAPNPUJ.mjs +28 -0
  113. package/dist/lib/neutral/join-WCAPNPUJ.mjs.map +7 -0
  114. package/dist/lib/neutral/meta.json +1 -0
  115. package/dist/lib/neutral/meta.mjs +8 -0
  116. package/dist/lib/neutral/meta.mjs.map +7 -0
  117. package/dist/lib/neutral/migrate-OSPAOAVW.mjs +52 -0
  118. package/dist/lib/neutral/migrate-OSPAOAVW.mjs.map +7 -0
  119. package/dist/lib/neutral/navigation-handler-CXZ655SE.mjs +38 -0
  120. package/dist/lib/neutral/navigation-handler-CXZ655SE.mjs.map +7 -0
  121. package/dist/lib/neutral/navigation-resolver-WQ5A4637.mjs +65 -0
  122. package/dist/lib/neutral/navigation-resolver-WQ5A4637.mjs.map +7 -0
  123. package/dist/lib/neutral/open-KU76PZVS.mjs +17 -0
  124. package/dist/lib/neutral/open-KU76PZVS.mjs.map +7 -0
  125. package/dist/lib/neutral/open-create-object-K5FI2KMV.mjs +42 -0
  126. package/dist/lib/neutral/open-create-object-K5FI2KMV.mjs.map +7 -0
  127. package/dist/lib/neutral/open-create-space-2ODSFMLD.mjs +24 -0
  128. package/dist/lib/neutral/open-create-space-2ODSFMLD.mjs.map +7 -0
  129. package/dist/lib/neutral/open-import-space-VMILOCQO.mjs +24 -0
  130. package/dist/lib/neutral/open-import-space-VMILOCQO.mjs.map +7 -0
  131. package/dist/lib/neutral/open-members-ZJUBRLFW.mjs +23 -0
  132. package/dist/lib/neutral/open-members-ZJUBRLFW.mjs.map +7 -0
  133. package/dist/lib/neutral/open-settings-T5GEFCGI.mjs +23 -0
  134. package/dist/lib/neutral/open-settings-T5GEFCGI.mjs.map +7 -0
  135. package/dist/lib/neutral/operation-handler-YPIRQOH2.mjs +13 -0
  136. package/dist/lib/neutral/operation-handler-YPIRQOH2.mjs.map +7 -0
  137. package/dist/lib/neutral/operations/index.mjs +13 -0
  138. package/dist/lib/neutral/operations/index.mjs.map +7 -0
  139. package/dist/lib/neutral/plugin.mjs +18 -0
  140. package/dist/lib/neutral/plugin.mjs.map +7 -0
  141. package/dist/lib/neutral/react-root-2DJPZQT4.mjs +23 -0
  142. package/dist/lib/neutral/react-root-2DJPZQT4.mjs.map +7 -0
  143. package/dist/lib/neutral/react-surface-UAHPI22Y.mjs +375 -0
  144. package/dist/lib/neutral/react-surface-UAHPI22Y.mjs.map +7 -0
  145. package/dist/lib/neutral/remove-objects-3LYKANEQ.mjs +55 -0
  146. package/dist/lib/neutral/remove-objects-3LYKANEQ.mjs.map +7 -0
  147. package/dist/lib/neutral/rename-P3KRT5SX.mjs +25 -0
  148. package/dist/lib/neutral/rename-P3KRT5SX.mjs.map +7 -0
  149. package/dist/lib/neutral/rename-object-Y5CZY66F.mjs +25 -0
  150. package/dist/lib/neutral/rename-object-Y5CZY66F.mjs.map +7 -0
  151. package/dist/lib/neutral/repair-PSYRVSJ6.mjs +32 -0
  152. package/dist/lib/neutral/repair-PSYRVSJ6.mjs.map +7 -0
  153. package/dist/lib/neutral/restore-field-RAHWH43Z.mjs +40 -0
  154. package/dist/lib/neutral/restore-field-RAHWH43Z.mjs.map +7 -0
  155. package/dist/lib/neutral/restore-objects-YOFCXTWE.mjs +39 -0
  156. package/dist/lib/neutral/restore-objects-YOFCXTWE.mjs.map +7 -0
  157. package/dist/lib/neutral/settings-DUCCRYX7.mjs +30 -0
  158. package/dist/lib/neutral/settings-DUCCRYX7.mjs.map +7 -0
  159. package/dist/lib/neutral/share-OOKWURCK.mjs +31 -0
  160. package/dist/lib/neutral/share-OOKWURCK.mjs.map +7 -0
  161. package/dist/lib/neutral/snapshot-3IIGQ7ZS.mjs +30 -0
  162. package/dist/lib/neutral/snapshot-3IIGQ7ZS.mjs.map +7 -0
  163. package/dist/lib/neutral/spaces-ready-LFRQW3VQ.mjs +268 -0
  164. package/dist/lib/neutral/spaces-ready-LFRQW3VQ.mjs.map +7 -0
  165. package/dist/lib/neutral/state-DPBOZRAW.mjs +55 -0
  166. package/dist/lib/neutral/state-DPBOZRAW.mjs.map +7 -0
  167. package/dist/lib/neutral/testing.mjs +8 -0
  168. package/dist/lib/neutral/testing.mjs.map +7 -0
  169. package/dist/lib/neutral/translations.mjs +309 -0
  170. package/dist/lib/neutral/translations.mjs.map +7 -0
  171. package/dist/lib/neutral/types/index.mjs +36 -0
  172. package/dist/lib/neutral/types/index.mjs.map +7 -0
  173. package/dist/lib/neutral/undo-mappings-OBRQOYN4.mjs +68 -0
  174. package/dist/lib/neutral/undo-mappings-OBRQOYN4.mjs.map +7 -0
  175. package/dist/lib/neutral/wait-for-object-YAE3NYNU.mjs +23 -0
  176. package/dist/lib/neutral/wait-for-object-YAE3NYNU.mjs.map +7 -0
  177. package/dist/types/src/SpacePlugin.d.ts +2 -1
  178. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  179. package/dist/types/src/SpacePlugin.node.d.ts +5 -0
  180. package/dist/types/src/SpacePlugin.node.d.ts.map +1 -0
  181. package/dist/types/src/SpacePlugin.test.d.ts +2 -0
  182. package/dist/types/src/SpacePlugin.test.d.ts.map +1 -0
  183. package/dist/types/src/SpacePlugin.workerd.d.ts +4 -0
  184. package/dist/types/src/SpacePlugin.workerd.d.ts.map +1 -0
  185. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +2 -3
  186. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -1
  187. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts +57 -0
  188. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts.map +1 -0
  189. package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts +25 -0
  190. package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts.map +1 -0
  191. package/dist/types/src/capabilities/app-graph-builder/extensions/database.d.ts +68 -0
  192. package/dist/types/src/capabilities/app-graph-builder/extensions/database.d.ts.map +1 -0
  193. package/dist/types/src/capabilities/app-graph-builder/extensions/index.d.ts +6 -0
  194. package/dist/types/src/capabilities/app-graph-builder/extensions/index.d.ts.map +1 -0
  195. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts +19 -0
  196. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts.map +1 -0
  197. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts +56 -0
  198. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts.map +1 -0
  199. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.test.d.ts +2 -0
  200. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.test.d.ts.map +1 -0
  201. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts +42 -0
  202. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts.map +1 -0
  203. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +1 -1
  204. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -1
  205. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -0
  206. package/dist/types/src/capabilities/create-object.d.ts +37 -0
  207. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  208. package/dist/types/src/capabilities/identity-created.d.ts.map +1 -0
  209. package/dist/types/src/capabilities/index.d.ts +64 -9
  210. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  211. package/dist/types/src/capabilities/navigation-handler/index.d.ts +4 -0
  212. package/dist/types/src/capabilities/navigation-handler/index.d.ts.map +1 -0
  213. package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts +13 -0
  214. package/dist/types/src/capabilities/navigation-handler/navigation-handler.d.ts.map +1 -0
  215. package/dist/types/src/capabilities/navigation-resolver.d.ts +6 -0
  216. package/dist/types/src/capabilities/navigation-resolver.d.ts.map +1 -0
  217. package/dist/types/src/capabilities/node.d.ts +40 -0
  218. package/dist/types/src/capabilities/node.d.ts.map +1 -0
  219. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  220. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  221. package/dist/types/src/capabilities/react-root.d.ts.map +1 -0
  222. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  223. package/dist/types/src/capabilities/repair.d.ts +6 -0
  224. package/dist/types/src/capabilities/repair.d.ts.map +1 -0
  225. package/dist/types/src/capabilities/settings.d.ts +7 -0
  226. package/dist/types/src/capabilities/settings.d.ts.map +1 -0
  227. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -0
  228. package/dist/types/src/capabilities/state.d.ts +17 -0
  229. package/dist/types/src/capabilities/state.d.ts.map +1 -0
  230. package/dist/types/src/capabilities/undo-mappings.d.ts +10 -0
  231. package/dist/types/src/capabilities/undo-mappings.d.ts.map +1 -0
  232. package/dist/types/src/commands/database/add.d.ts +10 -0
  233. package/dist/types/src/commands/database/add.d.ts.map +1 -0
  234. package/dist/types/src/commands/database/index.d.ts.map +1 -0
  235. package/dist/types/src/commands/database/query/index.d.ts.map +1 -0
  236. package/dist/types/src/commands/database/query/query.d.ts +13 -0
  237. package/dist/types/src/commands/database/query/query.d.ts.map +1 -0
  238. package/dist/types/src/commands/database/query/query.test.d.ts.map +1 -0
  239. package/dist/types/src/commands/database/remove.d.ts +9 -0
  240. package/dist/types/src/commands/database/remove.d.ts.map +1 -0
  241. package/dist/types/src/commands/database/stats.d.ts +6 -0
  242. package/dist/types/src/commands/database/stats.d.ts.map +1 -0
  243. package/dist/types/src/commands/database/util.d.ts.map +1 -0
  244. package/dist/types/src/commands/index.d.ts.map +1 -0
  245. package/dist/types/src/commands/queue/index.d.ts +7 -0
  246. package/dist/types/src/commands/queue/index.d.ts.map +1 -0
  247. package/dist/types/src/commands/queue/query.d.ts +7 -0
  248. package/dist/types/src/commands/queue/query.d.ts.map +1 -0
  249. package/dist/types/src/commands/queue/util.d.ts.map +1 -0
  250. package/dist/types/src/commands/space/close/close.d.ts +12 -0
  251. package/dist/types/src/commands/space/close/close.d.ts.map +1 -0
  252. package/dist/types/src/commands/space/close/index.d.ts.map +1 -0
  253. package/dist/types/src/commands/space/create/create.d.ts +12 -0
  254. package/dist/types/src/commands/space/create/create.d.ts.map +1 -0
  255. package/dist/types/src/commands/space/create/create.test.d.ts.map +1 -0
  256. package/dist/types/src/commands/space/create/index.d.ts.map +1 -0
  257. package/dist/types/src/commands/space/index.d.ts +34 -0
  258. package/dist/types/src/commands/space/index.d.ts.map +1 -0
  259. package/dist/types/src/commands/space/info/index.d.ts.map +1 -0
  260. package/dist/types/src/commands/space/info/info.d.ts +15 -0
  261. package/dist/types/src/commands/space/info/info.d.ts.map +1 -0
  262. package/dist/types/src/commands/space/info/info.test.d.ts.map +1 -0
  263. package/dist/types/src/commands/space/join/index.d.ts.map +1 -0
  264. package/dist/types/src/commands/space/join/join.d.ts +14 -0
  265. package/dist/types/src/commands/space/join/join.d.ts.map +1 -0
  266. package/dist/types/src/commands/space/join/util.d.ts.map +1 -0
  267. package/dist/types/src/commands/space/list/index.d.ts.map +1 -0
  268. package/dist/types/src/commands/space/list/list.d.ts +12 -0
  269. package/dist/types/src/commands/space/list/list.d.ts.map +1 -0
  270. package/dist/types/src/commands/space/list/list.test.d.ts.map +1 -0
  271. package/dist/types/src/commands/space/members/index.d.ts.map +1 -0
  272. package/dist/types/src/commands/space/members/members.d.ts +13 -0
  273. package/dist/types/src/commands/space/members/members.d.ts.map +1 -0
  274. package/dist/types/src/commands/space/members/members.test.d.ts.map +1 -0
  275. package/dist/types/src/commands/space/members/util.d.ts.map +1 -0
  276. package/dist/types/src/commands/space/open/index.d.ts.map +1 -0
  277. package/dist/types/src/commands/space/open/open.d.ts +12 -0
  278. package/dist/types/src/commands/space/open/open.d.ts.map +1 -0
  279. package/dist/types/src/commands/space/schema/index.d.ts +8 -0
  280. package/dist/types/src/commands/space/schema/index.d.ts.map +1 -0
  281. package/dist/types/src/commands/space/schema/list/index.d.ts.map +1 -0
  282. package/dist/types/src/commands/space/schema/list/list.d.ts +14 -0
  283. package/dist/types/src/commands/space/schema/list/list.d.ts.map +1 -0
  284. package/dist/types/src/commands/space/schema/list/list.test.d.ts.map +1 -0
  285. package/dist/types/src/commands/space/schema/list/util.d.ts.map +1 -0
  286. package/dist/types/src/commands/space/share/index.d.ts.map +1 -0
  287. package/dist/types/src/commands/space/share/share.d.ts +19 -0
  288. package/dist/types/src/commands/space/share/share.d.ts.map +1 -0
  289. package/dist/types/src/commands/space/sync/index.d.ts.map +1 -0
  290. package/dist/types/src/commands/space/sync/sync.d.ts.map +1 -0
  291. package/dist/types/src/commands/space/sync/sync.test.d.ts.map +1 -0
  292. package/dist/types/src/components/AwaitingObject/AwaitingObject.d.ts.map +1 -0
  293. package/dist/types/src/components/AwaitingObject/index.d.ts +2 -0
  294. package/dist/types/src/components/AwaitingObject/index.d.ts.map +1 -0
  295. package/dist/types/src/components/CreateObjectPanel/CreateObjectPanel.d.ts +36 -0
  296. package/dist/types/src/components/CreateObjectPanel/CreateObjectPanel.d.ts.map +1 -0
  297. package/dist/types/src/components/CreateObjectPanel/index.d.ts.map +1 -0
  298. package/dist/types/src/components/ForeignKeys/ForeignKeys.d.ts.map +1 -0
  299. package/dist/types/src/components/ForeignKeys/index.d.ts +2 -0
  300. package/dist/types/src/components/ForeignKeys/index.d.ts.map +1 -0
  301. package/dist/types/src/components/SpaceSettings/SpaceSettings.d.ts +10 -0
  302. package/dist/types/src/components/SpaceSettings/SpaceSettings.d.ts.map +1 -0
  303. package/dist/types/src/components/SpaceSettings/SpaceSettings.stories.d.ts +1999 -0
  304. package/dist/types/src/components/SpaceSettings/SpaceSettings.stories.d.ts.map +1 -0
  305. package/dist/types/src/components/SpaceSettings/index.d.ts +2 -0
  306. package/dist/types/src/components/SpaceSettings/index.d.ts.map +1 -0
  307. package/dist/types/src/components/SyncStatus/save-tracker.d.ts +1 -1
  308. package/dist/types/src/components/SyncStatus/save-tracker.d.ts.map +1 -1
  309. package/dist/types/src/components/SyncStatus/status.d.ts +2 -2
  310. package/dist/types/src/components/SyncStatus/status.d.ts.map +1 -1
  311. package/dist/types/src/components/index.d.ts +4 -3
  312. package/dist/types/src/components/index.d.ts.map +1 -1
  313. package/dist/types/src/constants.d.ts +7 -5
  314. package/dist/types/src/constants.d.ts.map +1 -1
  315. package/dist/types/src/containers/CollectionArticle/CollectionArticle.d.ts +2 -3
  316. package/dist/types/src/containers/CollectionArticle/CollectionArticle.d.ts.map +1 -1
  317. package/dist/types/src/containers/CollectionArticle/index.d.ts +1 -2
  318. package/dist/types/src/containers/CollectionArticle/index.d.ts.map +1 -1
  319. package/dist/types/src/containers/CollectionSection/CollectionSection.d.ts +3 -2
  320. package/dist/types/src/containers/CollectionSection/CollectionSection.d.ts.map +1 -1
  321. package/dist/types/src/containers/CollectionSection/index.d.ts +1 -2
  322. package/dist/types/src/containers/CollectionSection/index.d.ts.map +1 -1
  323. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts +3 -2
  324. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts.map +1 -1
  325. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts +1996 -0
  326. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.stories.d.ts.map +1 -0
  327. package/dist/types/src/containers/CreateObjectDialog/index.d.ts +2 -2
  328. package/dist/types/src/containers/CreateObjectDialog/index.d.ts.map +1 -1
  329. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.d.ts.map +1 -1
  330. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts +2000 -0
  331. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.d.ts.map +1 -0
  332. package/dist/types/src/containers/CreateSpaceDialog/index.d.ts +1 -2
  333. package/dist/types/src/containers/CreateSpaceDialog/index.d.ts.map +1 -1
  334. package/dist/types/src/containers/EntityRenamePopover/EntityRenamePopover.d.ts +7 -0
  335. package/dist/types/src/containers/EntityRenamePopover/EntityRenamePopover.d.ts.map +1 -0
  336. package/dist/types/src/containers/EntityRenamePopover/index.d.ts +2 -0
  337. package/dist/types/src/containers/EntityRenamePopover/index.d.ts.map +1 -0
  338. package/dist/types/src/containers/ImportSpaceDialog/ImportSpaceDialog.d.ts +3 -0
  339. package/dist/types/src/containers/ImportSpaceDialog/ImportSpaceDialog.d.ts.map +1 -0
  340. package/dist/types/src/containers/ImportSpaceDialog/index.d.ts +2 -0
  341. package/dist/types/src/containers/ImportSpaceDialog/index.d.ts.map +1 -0
  342. package/dist/types/src/containers/InlineSyncStatus/InlineSyncStatus.d.ts.map +1 -1
  343. package/dist/types/src/containers/InlineSyncStatus/index.d.ts +1 -2
  344. package/dist/types/src/containers/InlineSyncStatus/index.d.ts.map +1 -1
  345. package/dist/types/src/containers/JoinDialog/JoinDialog.d.ts.map +1 -1
  346. package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts +1999 -0
  347. package/dist/types/src/containers/JoinDialog/JoinDialog.stories.d.ts.map +1 -0
  348. package/dist/types/src/containers/JoinDialog/index.d.ts +2 -2
  349. package/dist/types/src/containers/JoinDialog/index.d.ts.map +1 -1
  350. package/dist/types/src/containers/MembersContainer/MembersContainer.d.ts +3 -4
  351. package/dist/types/src/containers/MembersContainer/MembersContainer.d.ts.map +1 -1
  352. package/dist/types/src/containers/MembersContainer/index.d.ts +1 -2
  353. package/dist/types/src/containers/MembersContainer/index.d.ts.map +1 -1
  354. package/dist/types/src/containers/MenuFooter/MenuFooter.d.ts.map +1 -1
  355. package/dist/types/src/containers/MenuFooter/index.d.ts +1 -2
  356. package/dist/types/src/containers/MenuFooter/index.d.ts.map +1 -1
  357. package/dist/types/src/containers/ObjectCardStack/ObjectCardStack.d.ts.map +1 -1
  358. package/dist/types/src/containers/ObjectCardStack/index.d.ts +1 -2
  359. package/dist/types/src/containers/ObjectCardStack/index.d.ts.map +1 -1
  360. package/dist/types/src/containers/ObjectProperties/ObjectProperties.d.ts +10 -0
  361. package/dist/types/src/containers/ObjectProperties/ObjectProperties.d.ts.map +1 -0
  362. package/dist/types/src/containers/ObjectProperties/index.d.ts +2 -0
  363. package/dist/types/src/containers/ObjectProperties/index.d.ts.map +1 -0
  364. package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts +2 -2
  365. package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts.map +1 -1
  366. package/dist/types/src/containers/RecordArticle/RecordArticle.stories.d.ts +14 -0
  367. package/dist/types/src/containers/RecordArticle/RecordArticle.stories.d.ts.map +1 -0
  368. package/dist/types/src/containers/RecordArticle/index.d.ts +1 -2
  369. package/dist/types/src/containers/RecordArticle/index.d.ts.map +1 -1
  370. package/dist/types/src/containers/RelatedArticle/RelatedArticle.d.ts +6 -0
  371. package/dist/types/src/containers/RelatedArticle/RelatedArticle.d.ts.map +1 -0
  372. package/dist/types/src/containers/RelatedArticle/index.d.ts +2 -0
  373. package/dist/types/src/containers/RelatedArticle/index.d.ts.map +1 -0
  374. package/dist/types/src/containers/SchemaContainer/SchemaContainer.d.ts +5 -8
  375. package/dist/types/src/containers/SchemaContainer/SchemaContainer.d.ts.map +1 -1
  376. package/dist/types/src/containers/SchemaContainer/index.d.ts +1 -2
  377. package/dist/types/src/containers/SchemaContainer/index.d.ts.map +1 -1
  378. package/dist/types/src/containers/SmallPresenceLive/index.d.ts +1 -1
  379. package/dist/types/src/containers/SmallPresenceLive/index.d.ts.map +1 -1
  380. package/dist/types/src/containers/SpacePresence/SpacePresence.d.ts +1 -1
  381. package/dist/types/src/containers/SpacePresence/SpacePresence.d.ts.map +1 -1
  382. package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts +1971 -1404
  383. package/dist/types/src/containers/SpacePresence/SpacePresence.stories.d.ts.map +1 -1
  384. package/dist/types/src/containers/SpacePresence/index.d.ts +2 -2
  385. package/dist/types/src/containers/SpacePresence/index.d.ts.map +1 -1
  386. package/dist/types/src/containers/SpaceRenamePopover/SpaceRenamePopover.d.ts.map +1 -1
  387. package/dist/types/src/containers/SpaceRenamePopover/index.d.ts +1 -2
  388. package/dist/types/src/containers/SpaceRenamePopover/index.d.ts.map +1 -1
  389. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.d.ts +5 -8
  390. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.d.ts.map +1 -1
  391. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts +1975 -1407
  392. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.d.ts.map +1 -1
  393. package/dist/types/src/containers/SpaceSettingsContainer/index.d.ts +1 -2
  394. package/dist/types/src/containers/SpaceSettingsContainer/index.d.ts.map +1 -1
  395. package/dist/types/src/containers/SyncStatus/SyncStatus.d.ts.map +1 -1
  396. package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts +1971 -1404
  397. package/dist/types/src/containers/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  398. package/dist/types/src/containers/SyncStatus/index.d.ts +1 -2
  399. package/dist/types/src/containers/SyncStatus/index.d.ts.map +1 -1
  400. package/dist/types/src/containers/ViewEditor/ViewEditor.d.ts.map +1 -1
  401. package/dist/types/src/containers/ViewEditor/index.d.ts +1 -2
  402. package/dist/types/src/containers/ViewEditor/index.d.ts.map +1 -1
  403. package/dist/types/src/containers/index.d.ts +5 -4
  404. package/dist/types/src/containers/index.d.ts.map +1 -1
  405. package/dist/types/src/hooks/index.d.ts +1 -2
  406. package/dist/types/src/hooks/index.d.ts.map +1 -1
  407. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
  408. package/dist/types/src/hooks/usePath.d.ts.map +1 -1
  409. package/dist/types/src/hooks/useRelatedObjects.d.ts +10 -0
  410. package/dist/types/src/hooks/useRelatedObjects.d.ts.map +1 -0
  411. package/dist/types/src/index.d.ts +2 -5
  412. package/dist/types/src/index.d.ts.map +1 -1
  413. package/dist/types/src/meta.d.ts +1 -1
  414. package/dist/types/src/meta.d.ts.map +1 -1
  415. package/dist/types/src/operations/add-object.d.ts +5 -0
  416. package/dist/types/src/operations/add-object.d.ts.map +1 -0
  417. package/dist/types/src/operations/add-relation.d.ts +5 -0
  418. package/dist/types/src/operations/add-relation.d.ts.map +1 -0
  419. package/dist/types/src/operations/add-type.d.ts +5 -0
  420. package/dist/types/src/operations/add-type.d.ts.map +1 -0
  421. package/dist/types/src/operations/close.d.ts +5 -0
  422. package/dist/types/src/operations/close.d.ts.map +1 -0
  423. package/dist/types/src/operations/create.d.ts +5 -0
  424. package/dist/types/src/operations/create.d.ts.map +1 -0
  425. package/dist/types/src/operations/definitions.d.ts +234 -0
  426. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  427. package/dist/types/src/operations/delete-field.d.ts +5 -0
  428. package/dist/types/src/operations/delete-field.d.ts.map +1 -0
  429. package/dist/types/src/operations/delete.d.ts +5 -0
  430. package/dist/types/src/operations/delete.d.ts.map +1 -0
  431. package/dist/types/src/operations/duplicate-object.d.ts +5 -0
  432. package/dist/types/src/operations/duplicate-object.d.ts.map +1 -0
  433. package/dist/types/src/operations/export-space.d.ts +5 -0
  434. package/dist/types/src/operations/export-space.d.ts.map +1 -0
  435. package/dist/types/src/operations/get-share-link.d.ts +5 -0
  436. package/dist/types/src/operations/get-share-link.d.ts.map +1 -0
  437. package/dist/types/src/operations/helpers.d.ts +7 -0
  438. package/dist/types/src/operations/helpers.d.ts.map +1 -0
  439. package/dist/types/src/operations/import-space.d.ts +5 -0
  440. package/dist/types/src/operations/import-space.d.ts.map +1 -0
  441. package/dist/types/src/operations/index.d.ts +4 -0
  442. package/dist/types/src/operations/index.d.ts.map +1 -0
  443. package/dist/types/src/operations/join.d.ts +5 -0
  444. package/dist/types/src/operations/join.d.ts.map +1 -0
  445. package/dist/types/src/operations/migrate.d.ts +5 -0
  446. package/dist/types/src/operations/migrate.d.ts.map +1 -0
  447. package/dist/types/src/operations/open-create-object.d.ts +5 -0
  448. package/dist/types/src/operations/open-create-object.d.ts.map +1 -0
  449. package/dist/types/src/operations/open-create-space.d.ts +5 -0
  450. package/dist/types/src/operations/open-create-space.d.ts.map +1 -0
  451. package/dist/types/src/operations/open-import-space.d.ts +5 -0
  452. package/dist/types/src/operations/open-import-space.d.ts.map +1 -0
  453. package/dist/types/src/operations/open-members.d.ts +5 -0
  454. package/dist/types/src/operations/open-members.d.ts.map +1 -0
  455. package/dist/types/src/operations/open-settings.d.ts +5 -0
  456. package/dist/types/src/operations/open-settings.d.ts.map +1 -0
  457. package/dist/types/src/operations/open.d.ts +5 -0
  458. package/dist/types/src/operations/open.d.ts.map +1 -0
  459. package/dist/types/src/operations/remove-objects.d.ts +5 -0
  460. package/dist/types/src/operations/remove-objects.d.ts.map +1 -0
  461. package/dist/types/src/operations/rename-object.d.ts +5 -0
  462. package/dist/types/src/operations/rename-object.d.ts.map +1 -0
  463. package/dist/types/src/operations/rename.d.ts +5 -0
  464. package/dist/types/src/operations/rename.d.ts.map +1 -0
  465. package/dist/types/src/operations/restore-field.d.ts +5 -0
  466. package/dist/types/src/operations/restore-field.d.ts.map +1 -0
  467. package/dist/types/src/operations/restore-objects.d.ts +5 -0
  468. package/dist/types/src/operations/restore-objects.d.ts.map +1 -0
  469. package/dist/types/src/operations/share.d.ts +5 -0
  470. package/dist/types/src/operations/share.d.ts.map +1 -0
  471. package/dist/types/src/operations/snapshot.d.ts +5 -0
  472. package/dist/types/src/operations/snapshot.d.ts.map +1 -0
  473. package/dist/types/src/operations/wait-for-object.d.ts +5 -0
  474. package/dist/types/src/operations/wait-for-object.d.ts.map +1 -0
  475. package/dist/types/src/plugin.d.ts +4 -0
  476. package/dist/types/src/plugin.d.ts.map +1 -0
  477. package/dist/types/src/testing.d.ts +2 -0
  478. package/dist/types/src/testing.d.ts.map +1 -0
  479. package/dist/types/src/translations.d.ts +1971 -1404
  480. package/dist/types/src/translations.d.ts.map +1 -1
  481. package/dist/types/src/types/Settings.d.ts +10 -0
  482. package/dist/types/src/types/Settings.d.ts.map +1 -0
  483. package/dist/types/src/types/capabilities.d.ts +47 -13
  484. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  485. package/dist/types/src/types/events.d.ts +2 -2
  486. package/dist/types/src/types/events.d.ts.map +1 -1
  487. package/dist/types/src/types/form.d.ts +1 -21
  488. package/dist/types/src/types/form.d.ts.map +1 -1
  489. package/dist/types/src/types/types.d.ts +25 -589
  490. package/dist/types/src/types/types.d.ts.map +1 -1
  491. package/dist/types/src/util.d.ts +3 -166
  492. package/dist/types/src/util.d.ts.map +1 -1
  493. package/dist/types/tsconfig.tsbuildinfo +1 -1
  494. package/package.json +140 -85
  495. package/src/SpacePlugin.node.ts +79 -0
  496. package/src/SpacePlugin.test.ts +33 -0
  497. package/src/SpacePlugin.ts +39 -89
  498. package/src/SpacePlugin.workerd.ts +46 -0
  499. package/src/capabilities/app-graph-builder/app-graph-builder.ts +14 -657
  500. package/src/capabilities/app-graph-builder/extensions/collections.ts +346 -0
  501. package/src/capabilities/app-graph-builder/extensions/companions.ts +90 -0
  502. package/src/capabilities/app-graph-builder/extensions/database.ts +420 -0
  503. package/src/capabilities/app-graph-builder/extensions/index.ts +9 -0
  504. package/src/capabilities/app-graph-builder/extensions/settings.ts +88 -0
  505. package/src/capabilities/app-graph-builder/extensions/shared.test.ts +170 -0
  506. package/src/capabilities/app-graph-builder/extensions/shared.ts +193 -0
  507. package/src/capabilities/app-graph-builder/extensions/spaces.ts +379 -0
  508. package/src/capabilities/app-graph-builder/index.ts +1 -1
  509. package/src/capabilities/app-graph-serializer.ts +85 -0
  510. package/src/capabilities/create-object.ts +107 -0
  511. package/src/capabilities/identity-created.ts +33 -0
  512. package/src/capabilities/index.ts +21 -9
  513. package/src/capabilities/navigation-handler/index.ts +9 -0
  514. package/src/capabilities/navigation-handler/navigation-handler.ts +50 -0
  515. package/src/capabilities/navigation-resolver.ts +82 -0
  516. package/src/capabilities/node.ts +14 -0
  517. package/src/capabilities/operation-handler.ts +14 -0
  518. package/src/capabilities/react-root.tsx +25 -0
  519. package/src/capabilities/react-surface.tsx +400 -0
  520. package/src/capabilities/repair.ts +45 -0
  521. package/src/capabilities/settings.ts +33 -0
  522. package/src/capabilities/spaces-ready.ts +348 -0
  523. package/src/capabilities/state.ts +66 -0
  524. package/src/capabilities/undo-mappings.ts +58 -0
  525. package/src/commands/database/add.ts +105 -0
  526. package/src/commands/database/query/query.test.ts +53 -0
  527. package/src/commands/database/stats.ts +43 -0
  528. package/src/commands/database/util.ts +32 -0
  529. package/src/commands/queue/query.ts +51 -0
  530. package/src/commands/space/close/close.ts +40 -0
  531. package/src/commands/space/create/create.ts +61 -0
  532. package/src/commands/space/info/info.test.ts +32 -0
  533. package/src/commands/space/info/info.ts +50 -0
  534. package/src/commands/space/join/join.ts +122 -0
  535. package/src/commands/space/list/list.test.ts +37 -0
  536. package/src/commands/space/list/list.ts +42 -0
  537. package/src/commands/space/members/members.test.ts +33 -0
  538. package/src/commands/space/open/open.ts +39 -0
  539. package/src/commands/space/schema/list/list.test.ts +29 -0
  540. package/src/commands/space/schema/list/list.ts +57 -0
  541. package/src/components/AwaitingObject/AwaitingObject.tsx +113 -0
  542. package/src/components/AwaitingObject/index.ts +5 -0
  543. package/src/components/CreateObjectPanel/CreateObjectPanel.tsx +255 -0
  544. package/src/components/ForeignKeys/ForeignKeys.tsx +57 -0
  545. package/src/components/ForeignKeys/index.ts +5 -0
  546. package/src/components/SpaceSettings/SpaceSettings.stories.tsx +34 -0
  547. package/src/components/SpaceSettings/SpaceSettings.tsx +69 -0
  548. package/src/components/SpaceSettings/index.ts +5 -0
  549. package/src/components/SyncStatus/save-tracker.ts +2 -1
  550. package/src/components/SyncStatus/status.ts +7 -7
  551. package/src/components/index.ts +6 -3
  552. package/src/constants.ts +9 -6
  553. package/src/containers/CollectionArticle/CollectionArticle.tsx +49 -118
  554. package/src/containers/CollectionArticle/index.ts +1 -3
  555. package/src/containers/CollectionSection/CollectionSection.tsx +6 -4
  556. package/src/containers/CollectionSection/index.ts +1 -3
  557. package/src/containers/CreateObjectDialog/CreateObjectDialog.stories.tsx +81 -0
  558. package/src/containers/CreateObjectDialog/CreateObjectDialog.tsx +90 -59
  559. package/src/containers/CreateObjectDialog/index.ts +2 -3
  560. package/src/containers/CreateSpaceDialog/CreateSpaceDialog.stories.tsx +46 -0
  561. package/src/containers/CreateSpaceDialog/CreateSpaceDialog.tsx +28 -23
  562. package/src/containers/CreateSpaceDialog/index.ts +1 -3
  563. package/src/containers/EntityRenamePopover/EntityRenamePopover.tsx +52 -0
  564. package/src/containers/EntityRenamePopover/index.ts +5 -0
  565. package/src/containers/ImportSpaceDialog/ImportSpaceDialog.tsx +62 -0
  566. package/src/containers/ImportSpaceDialog/index.ts +5 -0
  567. package/src/containers/InlineSyncStatus/InlineSyncStatus.tsx +9 -20
  568. package/src/containers/InlineSyncStatus/index.ts +1 -3
  569. package/src/containers/JoinDialog/JoinDialog.stories.tsx +43 -0
  570. package/src/containers/JoinDialog/JoinDialog.tsx +19 -16
  571. package/src/containers/JoinDialog/index.ts +2 -3
  572. package/src/containers/MembersContainer/MembersContainer.tsx +56 -73
  573. package/src/containers/MembersContainer/index.ts +1 -3
  574. package/src/containers/MenuFooter/MenuFooter.tsx +6 -6
  575. package/src/containers/MenuFooter/index.ts +1 -3
  576. package/src/containers/ObjectCardStack/ObjectCardStack.tsx +10 -11
  577. package/src/containers/ObjectCardStack/index.ts +1 -3
  578. package/src/containers/ObjectProperties/ObjectProperties.tsx +32 -0
  579. package/src/containers/ObjectProperties/index.ts +5 -0
  580. package/src/containers/RecordArticle/RecordArticle.stories.tsx +82 -0
  581. package/src/containers/RecordArticle/RecordArticle.tsx +42 -103
  582. package/src/containers/RecordArticle/index.ts +1 -3
  583. package/src/containers/RelatedArticle/RelatedArticle.tsx +74 -0
  584. package/src/containers/RelatedArticle/index.ts +5 -0
  585. package/src/containers/SchemaContainer/SchemaContainer.tsx +19 -25
  586. package/src/containers/SchemaContainer/index.ts +1 -3
  587. package/src/containers/SmallPresenceLive/index.ts +1 -1
  588. package/src/containers/SpacePresence/SpacePresence.stories.tsx +1 -1
  589. package/src/containers/SpacePresence/SpacePresence.tsx +8 -20
  590. package/src/containers/SpacePresence/index.ts +2 -3
  591. package/src/containers/SpaceRenamePopover/SpaceRenamePopover.tsx +9 -9
  592. package/src/containers/SpaceRenamePopover/index.ts +1 -3
  593. package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.stories.tsx +14 -12
  594. package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.tsx +170 -104
  595. package/src/containers/SpaceSettingsContainer/index.ts +1 -3
  596. package/src/containers/SyncStatus/SyncStatus.stories.tsx +1 -1
  597. package/src/containers/SyncStatus/SyncStatus.tsx +42 -40
  598. package/src/containers/SyncStatus/index.ts +1 -3
  599. package/src/containers/ViewEditor/ViewEditor.tsx +36 -35
  600. package/src/containers/ViewEditor/index.ts +1 -3
  601. package/src/containers/index.ts +5 -4
  602. package/src/hooks/index.ts +1 -2
  603. package/src/hooks/useInputSurfaceLookup.tsx +9 -2
  604. package/src/hooks/useRelatedObjects.ts +79 -0
  605. package/src/index.ts +2 -6
  606. package/src/meta.ts +24 -6
  607. package/src/operations/add-object.ts +85 -0
  608. package/src/operations/add-relation.ts +25 -0
  609. package/src/operations/add-type.ts +51 -0
  610. package/src/operations/close.ts +16 -0
  611. package/src/operations/create.ts +66 -0
  612. package/src/operations/definitions.ts +523 -0
  613. package/src/operations/delete-field.ts +43 -0
  614. package/src/operations/delete.ts +18 -0
  615. package/src/operations/duplicate-object.ts +17 -0
  616. package/src/operations/export-space.ts +30 -0
  617. package/src/operations/get-share-link.ts +43 -0
  618. package/src/operations/helpers.ts +10 -0
  619. package/src/operations/import-space.ts +23 -0
  620. package/src/operations/index.ts +35 -0
  621. package/src/operations/join.ts +26 -0
  622. package/src/operations/migrate.ts +47 -0
  623. package/src/operations/open-create-object.ts +40 -0
  624. package/src/operations/open-create-space.ts +21 -0
  625. package/src/operations/open-import-space.ts +21 -0
  626. package/src/operations/open-members.ts +20 -0
  627. package/src/operations/open-settings.ts +20 -0
  628. package/src/operations/open.ts +16 -0
  629. package/src/operations/remove-objects.ts +70 -0
  630. package/src/operations/rename-object.ts +22 -0
  631. package/src/operations/rename.ts +22 -0
  632. package/src/operations/restore-field.ts +37 -0
  633. package/src/operations/restore-objects.ts +39 -0
  634. package/src/operations/share.ts +27 -0
  635. package/src/operations/snapshot.ts +24 -0
  636. package/src/operations/wait-for-object.ts +21 -0
  637. package/src/plugin.ts +11 -0
  638. package/src/testing.ts +7 -0
  639. package/src/translations.ts +298 -213
  640. package/src/types/Settings.ts +18 -0
  641. package/src/types/capabilities.ts +41 -15
  642. package/src/types/events.ts +6 -6
  643. package/src/types/form.ts +6 -65
  644. package/src/types/types.ts +34 -553
  645. package/src/util.ts +36 -0
  646. package/src/vite-env.d.ts +10 -0
  647. package/dist/lib/browser/CollectionArticle-WASDM637.mjs +0 -142
  648. package/dist/lib/browser/CollectionArticle-WASDM637.mjs.map +0 -7
  649. package/dist/lib/browser/CollectionSection-LK4O6QDD.mjs +0 -23
  650. package/dist/lib/browser/CollectionSection-LK4O6QDD.mjs.map +0 -7
  651. package/dist/lib/browser/CreateObjectDialog-MA6DPYMD.mjs +0 -146
  652. package/dist/lib/browser/CreateObjectDialog-MA6DPYMD.mjs.map +0 -7
  653. package/dist/lib/browser/CreateSpaceDialog-WCEICWIE.mjs +0 -64
  654. package/dist/lib/browser/CreateSpaceDialog-WCEICWIE.mjs.map +0 -7
  655. package/dist/lib/browser/InlineSyncStatus-BT7BRBCO.mjs +0 -62
  656. package/dist/lib/browser/InlineSyncStatus-BT7BRBCO.mjs.map +0 -7
  657. package/dist/lib/browser/JoinDialog-PMCAIRCU.mjs +0 -117
  658. package/dist/lib/browser/JoinDialog-PMCAIRCU.mjs.map +0 -7
  659. package/dist/lib/browser/MembersContainer-MMFCXLVZ.mjs +0 -257
  660. package/dist/lib/browser/MembersContainer-MMFCXLVZ.mjs.map +0 -7
  661. package/dist/lib/browser/MenuFooter-HYBTNOBT.mjs +0 -38
  662. package/dist/lib/browser/MenuFooter-HYBTNOBT.mjs.map +0 -7
  663. package/dist/lib/browser/ObjectCardStack-CHWNLUYQ.mjs +0 -64
  664. package/dist/lib/browser/ObjectCardStack-CHWNLUYQ.mjs.map +0 -7
  665. package/dist/lib/browser/ObjectDetails-YUGVDNSA.mjs +0 -43
  666. package/dist/lib/browser/ObjectDetails-YUGVDNSA.mjs.map +0 -7
  667. package/dist/lib/browser/ObjectRenamePopover-RQUOVPFH.mjs +0 -70
  668. package/dist/lib/browser/ObjectRenamePopover-RQUOVPFH.mjs.map +0 -7
  669. package/dist/lib/browser/RecordArticle-ONWKYM3Z.mjs +0 -112
  670. package/dist/lib/browser/RecordArticle-ONWKYM3Z.mjs.map +0 -7
  671. package/dist/lib/browser/SchemaContainer-62AJXKAF.mjs +0 -49
  672. package/dist/lib/browser/SchemaContainer-62AJXKAF.mjs.map +0 -7
  673. package/dist/lib/browser/SmallPresenceLive-LZD2NGKK.mjs +0 -10
  674. package/dist/lib/browser/SpacePluginSettings-BRJTADV5.mjs +0 -59
  675. package/dist/lib/browser/SpacePluginSettings-BRJTADV5.mjs.map +0 -7
  676. package/dist/lib/browser/SpacePresence-MLU576L6.mjs +0 -13
  677. package/dist/lib/browser/SpacePresence-MLU576L6.mjs.map +0 -7
  678. package/dist/lib/browser/SpaceRenamePopover-SAKMPDLX.mjs +0 -62
  679. package/dist/lib/browser/SpaceRenamePopover-SAKMPDLX.mjs.map +0 -7
  680. package/dist/lib/browser/SpaceSettingsContainer-UBMVKUPR.mjs +0 -242
  681. package/dist/lib/browser/SpaceSettingsContainer-UBMVKUPR.mjs.map +0 -7
  682. package/dist/lib/browser/SyncStatus-5UQ7CIII.mjs +0 -141
  683. package/dist/lib/browser/SyncStatus-5UQ7CIII.mjs.map +0 -7
  684. package/dist/lib/browser/ViewEditor-F74RR542.mjs +0 -116
  685. package/dist/lib/browser/ViewEditor-F74RR542.mjs.map +0 -7
  686. package/dist/lib/browser/app-graph-builder-VFYFI7CD.mjs +0 -593
  687. package/dist/lib/browser/app-graph-builder-VFYFI7CD.mjs.map +0 -7
  688. package/dist/lib/browser/app-graph-serializer-KTQOBYUF.mjs +0 -85
  689. package/dist/lib/browser/app-graph-serializer-KTQOBYUF.mjs.map +0 -7
  690. package/dist/lib/browser/chunk-ABCDB5YC.mjs +0 -177
  691. package/dist/lib/browser/chunk-ABCDB5YC.mjs.map +0 -7
  692. package/dist/lib/browser/chunk-ASV6DYFH.mjs +0 -19
  693. package/dist/lib/browser/chunk-ASV6DYFH.mjs.map +0 -7
  694. package/dist/lib/browser/chunk-HSMQFM57.mjs +0 -16
  695. package/dist/lib/browser/chunk-HSMQFM57.mjs.map +0 -7
  696. package/dist/lib/browser/chunk-J5F4LUJD.mjs +0 -13
  697. package/dist/lib/browser/chunk-J5F4LUJD.mjs.map +0 -7
  698. package/dist/lib/browser/chunk-PXVKN4LU.mjs +0 -234
  699. package/dist/lib/browser/chunk-PXVKN4LU.mjs.map +0 -7
  700. package/dist/lib/browser/chunk-RWOK4F4G.mjs +0 -576
  701. package/dist/lib/browser/chunk-RWOK4F4G.mjs.map +0 -7
  702. package/dist/lib/browser/chunk-SJCNERZI.mjs +0 -115
  703. package/dist/lib/browser/chunk-SJCNERZI.mjs.map +0 -7
  704. package/dist/lib/browser/chunk-TPZUQ5DC.mjs +0 -749
  705. package/dist/lib/browser/chunk-TPZUQ5DC.mjs.map +0 -7
  706. package/dist/lib/browser/chunk-USN5QKRV.mjs +0 -715
  707. package/dist/lib/browser/chunk-USN5QKRV.mjs.map +0 -7
  708. package/dist/lib/browser/chunk-XIIYC7P5.mjs +0 -118
  709. package/dist/lib/browser/chunk-XIIYC7P5.mjs.map +0 -7
  710. package/dist/lib/browser/cli/index.mjs +0 -852
  711. package/dist/lib/browser/cli/index.mjs.map +0 -7
  712. package/dist/lib/browser/identity-created-VKLIZOXJ.mjs +0 -23
  713. package/dist/lib/browser/identity-created-VKLIZOXJ.mjs.map +0 -7
  714. package/dist/lib/browser/index.mjs +0 -305
  715. package/dist/lib/browser/index.mjs.map +0 -7
  716. package/dist/lib/browser/meta.json +0 -1
  717. package/dist/lib/browser/operation-resolver-Y3HYRXX7.mjs +0 -831
  718. package/dist/lib/browser/operation-resolver-Y3HYRXX7.mjs.map +0 -7
  719. package/dist/lib/browser/react-root-UYBW5RE7.mjs +0 -30
  720. package/dist/lib/browser/react-root-UYBW5RE7.mjs.map +0 -7
  721. package/dist/lib/browser/react-surface-NJ23NZFF.mjs +0 -386
  722. package/dist/lib/browser/react-surface-NJ23NZFF.mjs.map +0 -7
  723. package/dist/lib/browser/repair-N2I4DR2Z.mjs +0 -50
  724. package/dist/lib/browser/repair-N2I4DR2Z.mjs.map +0 -7
  725. package/dist/lib/browser/settings-2ELVUFDR.mjs +0 -34
  726. package/dist/lib/browser/settings-2ELVUFDR.mjs.map +0 -7
  727. package/dist/lib/browser/spaces-ready-Q6JASPT4.mjs +0 -243
  728. package/dist/lib/browser/spaces-ready-Q6JASPT4.mjs.map +0 -7
  729. package/dist/lib/browser/state-CTX4WQOM.mjs +0 -58
  730. package/dist/lib/browser/state-CTX4WQOM.mjs.map +0 -7
  731. package/dist/lib/browser/types/index.mjs +0 -34
  732. package/dist/lib/node-esm/CollectionArticle-A6GGG73Z.mjs +0 -143
  733. package/dist/lib/node-esm/CollectionArticle-A6GGG73Z.mjs.map +0 -7
  734. package/dist/lib/node-esm/CollectionSection-WWKDOAAT.mjs +0 -24
  735. package/dist/lib/node-esm/CollectionSection-WWKDOAAT.mjs.map +0 -7
  736. package/dist/lib/node-esm/CreateObjectDialog-4WEFNDDF.mjs +0 -147
  737. package/dist/lib/node-esm/CreateObjectDialog-4WEFNDDF.mjs.map +0 -7
  738. package/dist/lib/node-esm/CreateSpaceDialog-P7QCPB5J.mjs +0 -65
  739. package/dist/lib/node-esm/CreateSpaceDialog-P7QCPB5J.mjs.map +0 -7
  740. package/dist/lib/node-esm/InlineSyncStatus-3PCXU7NX.mjs +0 -63
  741. package/dist/lib/node-esm/InlineSyncStatus-3PCXU7NX.mjs.map +0 -7
  742. package/dist/lib/node-esm/JoinDialog-XEOLJZVN.mjs +0 -118
  743. package/dist/lib/node-esm/JoinDialog-XEOLJZVN.mjs.map +0 -7
  744. package/dist/lib/node-esm/MembersContainer-UQZLW3YA.mjs +0 -258
  745. package/dist/lib/node-esm/MembersContainer-UQZLW3YA.mjs.map +0 -7
  746. package/dist/lib/node-esm/MenuFooter-2QB3453Y.mjs +0 -39
  747. package/dist/lib/node-esm/MenuFooter-2QB3453Y.mjs.map +0 -7
  748. package/dist/lib/node-esm/ObjectCardStack-UXEWG6RV.mjs +0 -65
  749. package/dist/lib/node-esm/ObjectCardStack-UXEWG6RV.mjs.map +0 -7
  750. package/dist/lib/node-esm/ObjectDetails-26PVHUQL.mjs +0 -44
  751. package/dist/lib/node-esm/ObjectDetails-26PVHUQL.mjs.map +0 -7
  752. package/dist/lib/node-esm/ObjectRenamePopover-EHTP76G7.mjs +0 -71
  753. package/dist/lib/node-esm/ObjectRenamePopover-EHTP76G7.mjs.map +0 -7
  754. package/dist/lib/node-esm/RecordArticle-APY2WKUW.mjs +0 -113
  755. package/dist/lib/node-esm/RecordArticle-APY2WKUW.mjs.map +0 -7
  756. package/dist/lib/node-esm/SchemaContainer-XR2D6MYX.mjs +0 -50
  757. package/dist/lib/node-esm/SchemaContainer-XR2D6MYX.mjs.map +0 -7
  758. package/dist/lib/node-esm/SmallPresenceLive-K4243KXR.mjs +0 -11
  759. package/dist/lib/node-esm/SpacePluginSettings-VEB5IGG7.mjs +0 -60
  760. package/dist/lib/node-esm/SpacePluginSettings-VEB5IGG7.mjs.map +0 -7
  761. package/dist/lib/node-esm/SpacePresence-HC2XGQ54.mjs +0 -14
  762. package/dist/lib/node-esm/SpacePresence-HC2XGQ54.mjs.map +0 -7
  763. package/dist/lib/node-esm/SpaceRenamePopover-WHM632OT.mjs +0 -63
  764. package/dist/lib/node-esm/SpaceRenamePopover-WHM632OT.mjs.map +0 -7
  765. package/dist/lib/node-esm/SpaceSettingsContainer-Y62J2L65.mjs +0 -243
  766. package/dist/lib/node-esm/SpaceSettingsContainer-Y62J2L65.mjs.map +0 -7
  767. package/dist/lib/node-esm/SyncStatus-XTJAVHPN.mjs +0 -142
  768. package/dist/lib/node-esm/SyncStatus-XTJAVHPN.mjs.map +0 -7
  769. package/dist/lib/node-esm/ViewEditor-B2BLYF5U.mjs +0 -117
  770. package/dist/lib/node-esm/ViewEditor-B2BLYF5U.mjs.map +0 -7
  771. package/dist/lib/node-esm/app-graph-builder-N37ED6UI.mjs +0 -594
  772. package/dist/lib/node-esm/app-graph-builder-N37ED6UI.mjs.map +0 -7
  773. package/dist/lib/node-esm/app-graph-serializer-GXQYSQAZ.mjs +0 -86
  774. package/dist/lib/node-esm/app-graph-serializer-GXQYSQAZ.mjs.map +0 -7
  775. package/dist/lib/node-esm/chunk-3DWZCVVQ.mjs +0 -716
  776. package/dist/lib/node-esm/chunk-3DWZCVVQ.mjs.map +0 -7
  777. package/dist/lib/node-esm/chunk-CVXULIYC.mjs +0 -20
  778. package/dist/lib/node-esm/chunk-CVXULIYC.mjs.map +0 -7
  779. package/dist/lib/node-esm/chunk-GWUPFA7J.mjs +0 -577
  780. package/dist/lib/node-esm/chunk-GWUPFA7J.mjs.map +0 -7
  781. package/dist/lib/node-esm/chunk-IV7VKVGC.mjs +0 -117
  782. package/dist/lib/node-esm/chunk-IV7VKVGC.mjs.map +0 -7
  783. package/dist/lib/node-esm/chunk-OSFH2XKO.mjs +0 -119
  784. package/dist/lib/node-esm/chunk-OSFH2XKO.mjs.map +0 -7
  785. package/dist/lib/node-esm/chunk-P2AVANDG.mjs +0 -235
  786. package/dist/lib/node-esm/chunk-P2AVANDG.mjs.map +0 -7
  787. package/dist/lib/node-esm/chunk-S2IELCDF.mjs +0 -15
  788. package/dist/lib/node-esm/chunk-S2IELCDF.mjs.map +0 -7
  789. package/dist/lib/node-esm/chunk-SL4BJSUG.mjs +0 -18
  790. package/dist/lib/node-esm/chunk-SL4BJSUG.mjs.map +0 -7
  791. package/dist/lib/node-esm/chunk-UJQUBDQS.mjs +0 -178
  792. package/dist/lib/node-esm/chunk-UJQUBDQS.mjs.map +0 -7
  793. package/dist/lib/node-esm/chunk-WW6YYBRG.mjs +0 -750
  794. package/dist/lib/node-esm/chunk-WW6YYBRG.mjs.map +0 -7
  795. package/dist/lib/node-esm/cli/index.mjs +0 -853
  796. package/dist/lib/node-esm/cli/index.mjs.map +0 -7
  797. package/dist/lib/node-esm/identity-created-EGSTETJ5.mjs +0 -25
  798. package/dist/lib/node-esm/identity-created-EGSTETJ5.mjs.map +0 -7
  799. package/dist/lib/node-esm/index.mjs +0 -306
  800. package/dist/lib/node-esm/index.mjs.map +0 -7
  801. package/dist/lib/node-esm/meta.json +0 -1
  802. package/dist/lib/node-esm/operation-resolver-IRQ2NVUQ.mjs +0 -832
  803. package/dist/lib/node-esm/operation-resolver-IRQ2NVUQ.mjs.map +0 -7
  804. package/dist/lib/node-esm/react-root-UEN3LLJD.mjs +0 -31
  805. package/dist/lib/node-esm/react-root-UEN3LLJD.mjs.map +0 -7
  806. package/dist/lib/node-esm/react-surface-UDO3PGH6.mjs +0 -387
  807. package/dist/lib/node-esm/react-surface-UDO3PGH6.mjs.map +0 -7
  808. package/dist/lib/node-esm/repair-P6ND7ZRU.mjs +0 -51
  809. package/dist/lib/node-esm/repair-P6ND7ZRU.mjs.map +0 -7
  810. package/dist/lib/node-esm/settings-DCTVM2BV.mjs +0 -35
  811. package/dist/lib/node-esm/settings-DCTVM2BV.mjs.map +0 -7
  812. package/dist/lib/node-esm/spaces-ready-XLGRTJV2.mjs +0 -244
  813. package/dist/lib/node-esm/spaces-ready-XLGRTJV2.mjs.map +0 -7
  814. package/dist/lib/node-esm/state-G74V3WZG.mjs +0 -59
  815. package/dist/lib/node-esm/state-G74V3WZG.mjs.map +0 -7
  816. package/dist/lib/node-esm/types/index.mjs +0 -35
  817. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts.map +0 -1
  818. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts +0 -3
  819. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts.map +0 -1
  820. package/dist/types/src/capabilities/identity-created/identity-created.d.ts.map +0 -1
  821. package/dist/types/src/capabilities/identity-created/index.d.ts +0 -3
  822. package/dist/types/src/capabilities/identity-created/index.d.ts.map +0 -1
  823. package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -6
  824. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
  825. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -9
  826. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
  827. package/dist/types/src/capabilities/react-root/index.d.ts +0 -6
  828. package/dist/types/src/capabilities/react-root/index.d.ts.map +0 -1
  829. package/dist/types/src/capabilities/react-root/react-root.d.ts.map +0 -1
  830. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -5
  831. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  832. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  833. package/dist/types/src/capabilities/repair/index.d.ts +0 -3
  834. package/dist/types/src/capabilities/repair/index.d.ts.map +0 -1
  835. package/dist/types/src/capabilities/repair/repair.d.ts +0 -6
  836. package/dist/types/src/capabilities/repair/repair.d.ts.map +0 -1
  837. package/dist/types/src/capabilities/settings/index.d.ts +0 -7
  838. package/dist/types/src/capabilities/settings/index.d.ts.map +0 -1
  839. package/dist/types/src/capabilities/settings/settings.d.ts +0 -10
  840. package/dist/types/src/capabilities/settings/settings.d.ts.map +0 -1
  841. package/dist/types/src/capabilities/spaces-ready/index.d.ts +0 -3
  842. package/dist/types/src/capabilities/spaces-ready/index.d.ts.map +0 -1
  843. package/dist/types/src/capabilities/spaces-ready/spaces-ready.d.ts.map +0 -1
  844. package/dist/types/src/capabilities/state/index.d.ts +0 -13
  845. package/dist/types/src/capabilities/state/index.d.ts.map +0 -1
  846. package/dist/types/src/capabilities/state/state.d.ts +0 -17
  847. package/dist/types/src/capabilities/state/state.d.ts.map +0 -1
  848. package/dist/types/src/cli/commands/database/add.d.ts +0 -17
  849. package/dist/types/src/cli/commands/database/add.d.ts.map +0 -1
  850. package/dist/types/src/cli/commands/database/index.d.ts.map +0 -1
  851. package/dist/types/src/cli/commands/database/query/index.d.ts.map +0 -1
  852. package/dist/types/src/cli/commands/database/query/query.d.ts +0 -13
  853. package/dist/types/src/cli/commands/database/query/query.d.ts.map +0 -1
  854. package/dist/types/src/cli/commands/database/query/query.test.d.ts.map +0 -1
  855. package/dist/types/src/cli/commands/database/remove.d.ts +0 -9
  856. package/dist/types/src/cli/commands/database/remove.d.ts.map +0 -1
  857. package/dist/types/src/cli/commands/database/stats.d.ts +0 -6
  858. package/dist/types/src/cli/commands/database/stats.d.ts.map +0 -1
  859. package/dist/types/src/cli/commands/database/util.d.ts.map +0 -1
  860. package/dist/types/src/cli/commands/index.d.ts.map +0 -1
  861. package/dist/types/src/cli/commands/queue/index.d.ts +0 -7
  862. package/dist/types/src/cli/commands/queue/index.d.ts.map +0 -1
  863. package/dist/types/src/cli/commands/queue/query.d.ts +0 -8
  864. package/dist/types/src/cli/commands/queue/query.d.ts.map +0 -1
  865. package/dist/types/src/cli/commands/queue/util.d.ts.map +0 -1
  866. package/dist/types/src/cli/commands/space/close/close.d.ts +0 -12
  867. package/dist/types/src/cli/commands/space/close/close.d.ts.map +0 -1
  868. package/dist/types/src/cli/commands/space/close/index.d.ts.map +0 -1
  869. package/dist/types/src/cli/commands/space/create/create.d.ts +0 -12
  870. package/dist/types/src/cli/commands/space/create/create.d.ts.map +0 -1
  871. package/dist/types/src/cli/commands/space/create/create.test.d.ts.map +0 -1
  872. package/dist/types/src/cli/commands/space/create/index.d.ts.map +0 -1
  873. package/dist/types/src/cli/commands/space/index.d.ts +0 -31
  874. package/dist/types/src/cli/commands/space/index.d.ts.map +0 -1
  875. package/dist/types/src/cli/commands/space/info/index.d.ts.map +0 -1
  876. package/dist/types/src/cli/commands/space/info/info.d.ts +0 -13
  877. package/dist/types/src/cli/commands/space/info/info.d.ts.map +0 -1
  878. package/dist/types/src/cli/commands/space/info/info.test.d.ts.map +0 -1
  879. package/dist/types/src/cli/commands/space/join/index.d.ts.map +0 -1
  880. package/dist/types/src/cli/commands/space/join/join.d.ts +0 -14
  881. package/dist/types/src/cli/commands/space/join/join.d.ts.map +0 -1
  882. package/dist/types/src/cli/commands/space/join/util.d.ts.map +0 -1
  883. package/dist/types/src/cli/commands/space/list/index.d.ts.map +0 -1
  884. package/dist/types/src/cli/commands/space/list/list.d.ts +0 -7
  885. package/dist/types/src/cli/commands/space/list/list.d.ts.map +0 -1
  886. package/dist/types/src/cli/commands/space/list/list.test.d.ts.map +0 -1
  887. package/dist/types/src/cli/commands/space/members/index.d.ts.map +0 -1
  888. package/dist/types/src/cli/commands/space/members/members.d.ts +0 -13
  889. package/dist/types/src/cli/commands/space/members/members.d.ts.map +0 -1
  890. package/dist/types/src/cli/commands/space/members/members.test.d.ts.map +0 -1
  891. package/dist/types/src/cli/commands/space/members/util.d.ts.map +0 -1
  892. package/dist/types/src/cli/commands/space/open/index.d.ts.map +0 -1
  893. package/dist/types/src/cli/commands/space/open/open.d.ts +0 -12
  894. package/dist/types/src/cli/commands/space/open/open.d.ts.map +0 -1
  895. package/dist/types/src/cli/commands/space/schema/index.d.ts +0 -8
  896. package/dist/types/src/cli/commands/space/schema/index.d.ts.map +0 -1
  897. package/dist/types/src/cli/commands/space/schema/list/index.d.ts.map +0 -1
  898. package/dist/types/src/cli/commands/space/schema/list/list.d.ts +0 -15
  899. package/dist/types/src/cli/commands/space/schema/list/list.d.ts.map +0 -1
  900. package/dist/types/src/cli/commands/space/schema/list/list.test.d.ts.map +0 -1
  901. package/dist/types/src/cli/commands/space/schema/list/util.d.ts.map +0 -1
  902. package/dist/types/src/cli/commands/space/share/index.d.ts.map +0 -1
  903. package/dist/types/src/cli/commands/space/share/share.d.ts +0 -19
  904. package/dist/types/src/cli/commands/space/share/share.d.ts.map +0 -1
  905. package/dist/types/src/cli/commands/space/sync/index.d.ts.map +0 -1
  906. package/dist/types/src/cli/commands/space/sync/sync.d.ts.map +0 -1
  907. package/dist/types/src/cli/commands/space/sync/sync.test.d.ts.map +0 -1
  908. package/dist/types/src/cli/index.d.ts +0 -2
  909. package/dist/types/src/cli/index.d.ts.map +0 -1
  910. package/dist/types/src/cli/plugin.d.ts +0 -4
  911. package/dist/types/src/cli/plugin.d.ts.map +0 -1
  912. package/dist/types/src/components/AwaitingObject.d.ts.map +0 -1
  913. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +0 -40
  914. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +0 -1
  915. package/dist/types/src/components/CreateDialog/index.d.ts.map +0 -1
  916. package/dist/types/src/components/ObjectDetails/BaseObjectSettings.d.ts +0 -8
  917. package/dist/types/src/components/ObjectDetails/BaseObjectSettings.d.ts.map +0 -1
  918. package/dist/types/src/components/ObjectDetails/BaseObjectSettings.stories.d.ts +0 -1433
  919. package/dist/types/src/components/ObjectDetails/BaseObjectSettings.stories.d.ts.map +0 -1
  920. package/dist/types/src/components/ObjectDetails/ForeignKeys.d.ts.map +0 -1
  921. package/dist/types/src/components/ObjectDetails/index.d.ts +0 -3
  922. package/dist/types/src/components/ObjectDetails/index.d.ts.map +0 -1
  923. package/dist/types/src/components/ObjectForm/ObjectForm.d.ts +0 -9
  924. package/dist/types/src/components/ObjectForm/ObjectForm.d.ts.map +0 -1
  925. package/dist/types/src/components/ObjectForm/index.d.ts +0 -2
  926. package/dist/types/src/components/ObjectForm/index.d.ts.map +0 -1
  927. package/dist/types/src/containers/ObjectDetails/ObjectDetails.d.ts +0 -9
  928. package/dist/types/src/containers/ObjectDetails/ObjectDetails.d.ts.map +0 -1
  929. package/dist/types/src/containers/ObjectDetails/index.d.ts +0 -3
  930. package/dist/types/src/containers/ObjectDetails/index.d.ts.map +0 -1
  931. package/dist/types/src/containers/ObjectRenamePopover/ObjectRenamePopover.d.ts +0 -7
  932. package/dist/types/src/containers/ObjectRenamePopover/ObjectRenamePopover.d.ts.map +0 -1
  933. package/dist/types/src/containers/ObjectRenamePopover/index.d.ts +0 -3
  934. package/dist/types/src/containers/ObjectRenamePopover/index.d.ts.map +0 -1
  935. package/dist/types/src/containers/SpacePluginSettings/SpacePluginSettings.d.ts +0 -8
  936. package/dist/types/src/containers/SpacePluginSettings/SpacePluginSettings.d.ts.map +0 -1
  937. package/dist/types/src/containers/SpacePluginSettings/index.d.ts +0 -3
  938. package/dist/types/src/containers/SpacePluginSettings/index.d.ts.map +0 -1
  939. package/dist/types/src/helpers/index.d.ts +0 -2
  940. package/dist/types/src/helpers/index.d.ts.map +0 -1
  941. package/dist/types/src/helpers/query.d.ts +0 -7
  942. package/dist/types/src/helpers/query.d.ts.map +0 -1
  943. package/dist/types/src/helpers/query.test.d.ts +0 -2
  944. package/dist/types/src/helpers/query.test.d.ts.map +0 -1
  945. package/dist/types/src/hooks/useActiveSpace.d.ts +0 -4
  946. package/dist/types/src/hooks/useActiveSpace.d.ts.map +0 -1
  947. package/dist/types/src/hooks/useTypeOptions.d.ts +0 -10
  948. package/dist/types/src/hooks/useTypeOptions.d.ts.map +0 -1
  949. package/src/capabilities/app-graph-serializer/app-graph-serializer.ts +0 -83
  950. package/src/capabilities/app-graph-serializer/index.ts +0 -7
  951. package/src/capabilities/identity-created/identity-created.ts +0 -29
  952. package/src/capabilities/identity-created/index.ts +0 -7
  953. package/src/capabilities/operation-resolver/index.ts +0 -7
  954. package/src/capabilities/operation-resolver/operation-resolver.ts +0 -771
  955. package/src/capabilities/react-root/index.ts +0 -7
  956. package/src/capabilities/react-root/react-root.tsx +0 -25
  957. package/src/capabilities/react-surface/index.ts +0 -7
  958. package/src/capabilities/react-surface/react-surface.tsx +0 -380
  959. package/src/capabilities/repair/index.ts +0 -7
  960. package/src/capabilities/repair/repair.ts +0 -71
  961. package/src/capabilities/settings/index.ts +0 -7
  962. package/src/capabilities/settings/settings.ts +0 -33
  963. package/src/capabilities/spaces-ready/index.ts +0 -7
  964. package/src/capabilities/spaces-ready/spaces-ready.ts +0 -290
  965. package/src/capabilities/state/index.ts +0 -7
  966. package/src/capabilities/state/state.ts +0 -64
  967. package/src/cli/commands/database/add.ts +0 -115
  968. package/src/cli/commands/database/query/query.test.ts +0 -55
  969. package/src/cli/commands/database/stats.ts +0 -44
  970. package/src/cli/commands/database/util.ts +0 -32
  971. package/src/cli/commands/queue/query.ts +0 -45
  972. package/src/cli/commands/space/close/close.ts +0 -40
  973. package/src/cli/commands/space/create/create.ts +0 -61
  974. package/src/cli/commands/space/info/info.test.ts +0 -47
  975. package/src/cli/commands/space/info/info.ts +0 -37
  976. package/src/cli/commands/space/join/join.ts +0 -122
  977. package/src/cli/commands/space/list/list.test.ts +0 -36
  978. package/src/cli/commands/space/list/list.ts +0 -30
  979. package/src/cli/commands/space/members/members.test.ts +0 -46
  980. package/src/cli/commands/space/open/open.ts +0 -39
  981. package/src/cli/commands/space/schema/list/list.test.ts +0 -42
  982. package/src/cli/commands/space/schema/list/list.ts +0 -64
  983. package/src/cli/index.ts +0 -5
  984. package/src/cli/plugin.ts +0 -89
  985. package/src/components/AwaitingObject.tsx +0 -114
  986. package/src/components/CreateDialog/CreateObjectPanel.tsx +0 -223
  987. package/src/components/ObjectDetails/BaseObjectSettings.stories.tsx +0 -63
  988. package/src/components/ObjectDetails/BaseObjectSettings.tsx +0 -122
  989. package/src/components/ObjectDetails/ForeignKeys.tsx +0 -51
  990. package/src/components/ObjectDetails/index.ts +0 -6
  991. package/src/components/ObjectForm/ObjectForm.tsx +0 -97
  992. package/src/components/ObjectForm/index.ts +0 -5
  993. package/src/containers/ObjectDetails/ObjectDetails.tsx +0 -36
  994. package/src/containers/ObjectDetails/index.ts +0 -7
  995. package/src/containers/ObjectRenamePopover/ObjectRenamePopover.tsx +0 -52
  996. package/src/containers/ObjectRenamePopover/index.ts +0 -7
  997. package/src/containers/SpacePluginSettings/SpacePluginSettings.tsx +0 -65
  998. package/src/containers/SpacePluginSettings/index.ts +0 -7
  999. package/src/helpers/index.ts +0 -5
  1000. package/src/helpers/query.test.ts +0 -24
  1001. package/src/helpers/query.ts +0 -166
  1002. package/src/hooks/useActiveSpace.ts +0 -24
  1003. package/src/hooks/useTypeOptions.ts +0 -25
  1004. package/src/util.tsx +0 -956
  1005. /package/dist/lib/{browser/SmallPresenceLive-LZD2NGKK.mjs.map → neutral/SmallPresenceLive-GUF4WLUC.mjs.map} +0 -0
  1006. /package/dist/lib/{browser/types/index.mjs.map → neutral/SpacePlugin.mjs.map} +0 -0
  1007. /package/dist/lib/{node-esm/SmallPresenceLive-K4243KXR.mjs.map → neutral/SpacePresence-ACEXUS3N.mjs.map} +0 -0
  1008. /package/dist/lib/{node-esm/types/index.mjs.map → neutral/chunk-J5LGTIGS.mjs.map} +0 -0
  1009. /package/dist/types/src/capabilities/{app-graph-serializer/app-graph-serializer.d.ts → app-graph-serializer.d.ts} +0 -0
  1010. /package/dist/types/src/capabilities/{identity-created/identity-created.d.ts → identity-created.d.ts} +0 -0
  1011. /package/dist/types/src/capabilities/{react-root/react-root.d.ts → react-root.d.ts} +0 -0
  1012. /package/dist/types/src/capabilities/{react-surface/react-surface.d.ts → react-surface.d.ts} +0 -0
  1013. /package/dist/types/src/capabilities/{spaces-ready/spaces-ready.d.ts → spaces-ready.d.ts} +0 -0
  1014. /package/dist/types/src/{cli/commands → commands}/database/index.d.ts +0 -0
  1015. /package/dist/types/src/{cli/commands → commands}/database/query/index.d.ts +0 -0
  1016. /package/dist/types/src/{cli/commands → commands}/database/query/query.test.d.ts +0 -0
  1017. /package/dist/types/src/{cli/commands → commands}/database/util.d.ts +0 -0
  1018. /package/dist/types/src/{cli/commands → commands}/index.d.ts +0 -0
  1019. /package/dist/types/src/{cli/commands → commands}/queue/util.d.ts +0 -0
  1020. /package/dist/types/src/{cli/commands → commands}/space/close/index.d.ts +0 -0
  1021. /package/dist/types/src/{cli/commands → commands}/space/create/create.test.d.ts +0 -0
  1022. /package/dist/types/src/{cli/commands → commands}/space/create/index.d.ts +0 -0
  1023. /package/dist/types/src/{cli/commands → commands}/space/info/index.d.ts +0 -0
  1024. /package/dist/types/src/{cli/commands → commands}/space/info/info.test.d.ts +0 -0
  1025. /package/dist/types/src/{cli/commands → commands}/space/join/index.d.ts +0 -0
  1026. /package/dist/types/src/{cli/commands → commands}/space/join/util.d.ts +0 -0
  1027. /package/dist/types/src/{cli/commands → commands}/space/list/index.d.ts +0 -0
  1028. /package/dist/types/src/{cli/commands → commands}/space/list/list.test.d.ts +0 -0
  1029. /package/dist/types/src/{cli/commands → commands}/space/members/index.d.ts +0 -0
  1030. /package/dist/types/src/{cli/commands → commands}/space/members/members.test.d.ts +0 -0
  1031. /package/dist/types/src/{cli/commands → commands}/space/members/util.d.ts +0 -0
  1032. /package/dist/types/src/{cli/commands → commands}/space/open/index.d.ts +0 -0
  1033. /package/dist/types/src/{cli/commands → commands}/space/schema/list/index.d.ts +0 -0
  1034. /package/dist/types/src/{cli/commands → commands}/space/schema/list/list.test.d.ts +0 -0
  1035. /package/dist/types/src/{cli/commands → commands}/space/schema/list/util.d.ts +0 -0
  1036. /package/dist/types/src/{cli/commands → commands}/space/share/index.d.ts +0 -0
  1037. /package/dist/types/src/{cli/commands → commands}/space/sync/index.d.ts +0 -0
  1038. /package/dist/types/src/{cli/commands → commands}/space/sync/sync.d.ts +0 -0
  1039. /package/dist/types/src/{cli/commands → commands}/space/sync/sync.test.d.ts +0 -0
  1040. /package/dist/types/src/components/{AwaitingObject.d.ts → AwaitingObject/AwaitingObject.d.ts} +0 -0
  1041. /package/dist/types/src/components/{CreateDialog → CreateObjectPanel}/index.d.ts +0 -0
  1042. /package/dist/types/src/components/{ObjectDetails → ForeignKeys}/ForeignKeys.d.ts +0 -0
  1043. /package/src/{cli/commands → commands}/database/index.ts +0 -0
  1044. /package/src/{cli/commands → commands}/database/query/index.ts +0 -0
  1045. /package/src/{cli/commands → commands}/database/query/query.ts +0 -0
  1046. /package/src/{cli/commands → commands}/database/remove.ts +0 -0
  1047. /package/src/{cli/commands → commands}/index.ts +0 -0
  1048. /package/src/{cli/commands → commands}/queue/index.ts +0 -0
  1049. /package/src/{cli/commands → commands}/queue/util.ts +0 -0
  1050. /package/src/{cli/commands → commands}/space/close/index.ts +0 -0
  1051. /package/src/{cli/commands → commands}/space/create/create.test.ts +0 -0
  1052. /package/src/{cli/commands → commands}/space/create/index.ts +0 -0
  1053. /package/src/{cli/commands → commands}/space/index.ts +0 -0
  1054. /package/src/{cli/commands → commands}/space/info/index.ts +0 -0
  1055. /package/src/{cli/commands → commands}/space/join/index.ts +0 -0
  1056. /package/src/{cli/commands → commands}/space/join/util.ts +0 -0
  1057. /package/src/{cli/commands → commands}/space/list/index.ts +0 -0
  1058. /package/src/{cli/commands → commands}/space/members/index.ts +0 -0
  1059. /package/src/{cli/commands → commands}/space/members/members.ts +0 -0
  1060. /package/src/{cli/commands → commands}/space/members/util.ts +0 -0
  1061. /package/src/{cli/commands → commands}/space/open/index.ts +0 -0
  1062. /package/src/{cli/commands → commands}/space/schema/index.ts +0 -0
  1063. /package/src/{cli/commands → commands}/space/schema/list/index.ts +0 -0
  1064. /package/src/{cli/commands → commands}/space/schema/list/util.ts +0 -0
  1065. /package/src/{cli/commands → commands}/space/share/index.ts +0 -0
  1066. /package/src/{cli/commands → commands}/space/share/share.ts +0 -0
  1067. /package/src/{cli/commands → commands}/space/sync/index.ts +0 -0
  1068. /package/src/{cli/commands → commands}/space/sync/sync.test.ts +0 -0
  1069. /package/src/{cli/commands → commands}/space/sync/sync.ts +0 -0
  1070. /package/src/components/{CreateDialog → CreateObjectPanel}/index.ts +0 -0
@@ -0,0 +1,1254 @@
1
+ import {
2
+ getSpaceDisplayName
3
+ } from "./chunk-2DHCIE27.mjs";
4
+ import {
5
+ SHARED
6
+ } from "./chunk-E55TPDLR.mjs";
7
+ import "./chunk-J5LGTIGS.mjs";
8
+
9
+ // src/capabilities/app-graph-builder/app-graph-builder.ts
10
+ import * as Effect6 from "effect/Effect";
11
+ import { Capability as Capability4 } from "@dxos/app-framework";
12
+ import { AppCapabilities as AppCapabilities3 } from "@dxos/app-toolkit";
13
+
14
+ // src/capabilities/app-graph-builder/extensions/spaces.ts
15
+ import * as Effect from "effect/Effect";
16
+ import { Capability } from "@dxos/app-framework";
17
+ import { AppCapabilities, AppNodeMatcher, getActiveSpace, getPersonalSpace, isExemplarSpace, isPersonalSpace } from "@dxos/app-toolkit";
18
+ import { SpaceState as SpaceState2 } from "@dxos/client/echo";
19
+ import { Operation } from "@dxos/compute";
20
+ import { Filter as Filter2, Obj as Obj2 } from "@dxos/echo";
21
+ import { AtomObj as AtomObj2, AtomQuery as AtomQuery2 } from "@dxos/echo-atom";
22
+ import { Migrations as Migrations2 } from "@dxos/migrations";
23
+ import { ClientCapabilities } from "@dxos/plugin-client";
24
+ import { CreateAtom, Graph, GraphBuilder, Node, NodeMatcher } from "@dxos/plugin-graph";
25
+ import { SpaceArchive } from "@dxos/protocols/proto/dxos/client/services";
26
+ import { Expando } from "@dxos/schema";
27
+ import { meta as meta2 } from "#meta";
28
+ import { SpaceOperation } from "#operations";
29
+ import { SPACE_TYPE, SpaceCapabilities } from "#types";
30
+
31
+ // src/capabilities/app-graph-builder/extensions/shared.ts
32
+ import * as Option from "effect/Option";
33
+ import { SpaceState, isSpace } from "@dxos/client/echo";
34
+ import { Annotation, Filter, Obj, Type } from "@dxos/echo";
35
+ import { AtomObj, AtomQuery } from "@dxos/echo-atom";
36
+ import { MigrationVersionAnnotation, Migrations } from "@dxos/migrations";
37
+ import { ViewAnnotation, getTypenameFromQuery } from "@dxos/schema";
38
+ import { meta } from "#meta";
39
+ import { ACCEPT_ECHO_CLASS, CACHEABLE_PROPS, CAN_DROP_OBJECT, blockInstructionCache, buildCollectionPartials, collectionPartialsCache, createFactory, createObjectNode, getAcceptPersistenceKey, getCollectionGraphNodePartials, getDynamicLabel, rearrangeCache } from "@dxos/app-toolkit";
40
+ var TYPES_SECTION_TYPE = `${meta.id}.types`;
41
+ var COLLECTIONS_SECTION_TYPE = `${meta.id}.collections`;
42
+ var TYPE_COLLECTION_TYPE = `${meta.id}.type-collection`;
43
+ var STATIC_SCHEMA_TYPE = `${meta.id}.static-schema`;
44
+ var META_NS = {
45
+ ns: meta.id
46
+ };
47
+ var BLOCK_REORDER_ABOVE = (_source, instruction) => instruction.type === "reorder-above";
48
+ var CAN_DROP_SPACE = (source) => Obj.isObject(source.item.data) || isSpace(source.item.data);
49
+ var spaceActionsCache = /* @__PURE__ */ new Map();
50
+ var spaceRearrangeCache = /* @__PURE__ */ new Map();
51
+ var ADD_VIEW_TO_SCHEMA_LABEL = [
52
+ "add-view-to-schema.label",
53
+ META_NS
54
+ ];
55
+ var COPY_LINK_LABEL = [
56
+ "copy-link.label",
57
+ META_NS
58
+ ];
59
+ var CREATE_OBJECT_IN_COLLECTION_LABEL = [
60
+ "create-object-in-collection.label",
61
+ META_NS
62
+ ];
63
+ var CREATE_OBJECT_IN_SPACE_LABEL = [
64
+ "create-object-in-space.label",
65
+ META_NS
66
+ ];
67
+ var EXPOSE_OBJECT_LABEL = [
68
+ "expose-object.label",
69
+ META_NS
70
+ ];
71
+ var MIGRATE_SPACE_LABEL = [
72
+ "migrate-space.label",
73
+ META_NS
74
+ ];
75
+ var REMOVE_FROM_COLLECTION_LABEL = [
76
+ "remove-from-collection.label",
77
+ META_NS
78
+ ];
79
+ var RENAME_SPACE_LABEL = [
80
+ "rename-space.label",
81
+ META_NS
82
+ ];
83
+ var SNAPSHOT_BY_SCHEMA_LABEL = [
84
+ "snapshot-by-schema.label",
85
+ META_NS
86
+ ];
87
+ var checkPendingMigration = (space) => {
88
+ return space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION || space.state.get() === SpaceState.SPACE_READY && !!Migrations.targetVersion && Annotation.get(space.properties, MigrationVersionAnnotation).pipe(Option.getOrUndefined) !== Migrations.targetVersion;
89
+ };
90
+ var downloadBlob = async (blob, filename) => {
91
+ const url = URL.createObjectURL(blob);
92
+ const anchor = document.createElement("a");
93
+ anchor.href = url;
94
+ anchor.download = filename;
95
+ document.body.appendChild(anchor);
96
+ anchor.click();
97
+ document.body.removeChild(anchor);
98
+ URL.revokeObjectURL(url);
99
+ };
100
+ var buildViewIndex = (get, space, schemas) => {
101
+ const viewSchemas = schemas.filter((schema) => ViewAnnotation.has(schema));
102
+ const viewsByTypename = /* @__PURE__ */ new Map();
103
+ const viewObjectIds = /* @__PURE__ */ new Set();
104
+ if (viewSchemas.length > 0) {
105
+ const filter = Filter.or(...viewSchemas.map((schema) => Filter.type(schema)));
106
+ const viewObjects = get(AtomQuery.make(space.db, filter));
107
+ for (const viewObject of viewObjects) {
108
+ if (!Obj.isObject(viewObject)) {
109
+ continue;
110
+ }
111
+ const holderType = Obj.getType(viewObject);
112
+ const path = holderType ? ViewAnnotation.get(Type.getSchema(holderType)).pipe(Option.getOrElse(() => [])) : [];
113
+ if (path.length === 0) {
114
+ continue;
115
+ }
116
+ const viewSnapshot = get(AtomObj.make(viewObject));
117
+ let holder = viewSnapshot;
118
+ for (const segment of path) {
119
+ holder = holder == null || typeof holder !== "object" ? void 0 : holder[segment];
120
+ }
121
+ if (holder != null) {
122
+ viewObjectIds.add(viewObject.id);
123
+ }
124
+ const viewTarget = holder !== void 0 ? get(AtomObj.make(holder)) : void 0;
125
+ const typename = getTypenameFromQuery(viewTarget?.query?.ast);
126
+ if (typename) {
127
+ const existing = viewsByTypename.get(typename) ?? [];
128
+ existing.push(viewObject);
129
+ viewsByTypename.set(typename, existing);
130
+ }
131
+ }
132
+ }
133
+ return {
134
+ typenamesWithViews: new Set(viewsByTypename.keys()),
135
+ getViewsForTypename: (typename) => viewsByTypename.get(typename) ?? [],
136
+ isView: (object) => viewObjectIds.has(object.id)
137
+ };
138
+ };
139
+
140
+ // src/capabilities/app-graph-builder/extensions/spaces.ts
141
+ var createSpaceExtensions = Effect.fnUntraced(function* () {
142
+ const capabilities = yield* Capability.Service;
143
+ return yield* Effect.all([
144
+ GraphBuilder.createExtension({
145
+ id: "primaryActions",
146
+ position: "first",
147
+ match: NodeMatcher.whenRoot,
148
+ actions: () => Effect.succeed([
149
+ Node.makeAction({
150
+ id: SpaceOperation.OpenCreateSpace.meta.key,
151
+ data: () => Operation.invoke(SpaceOperation.OpenCreateSpace),
152
+ properties: {
153
+ label: [
154
+ "create-space.label",
155
+ {
156
+ ns: meta2.id
157
+ }
158
+ ],
159
+ icon: "ph--plus--regular",
160
+ testId: "spacePlugin.createSpace",
161
+ disposition: "menu"
162
+ }
163
+ }),
164
+ Node.makeAction({
165
+ id: SpaceOperation.Join.meta.key,
166
+ data: () => Operation.invoke(SpaceOperation.Join, {}),
167
+ properties: {
168
+ label: [
169
+ "join-space.label",
170
+ {
171
+ ns: meta2.id
172
+ }
173
+ ],
174
+ icon: "ph--sign-in--regular",
175
+ testId: "spacePlugin.joinSpace",
176
+ disposition: "menu"
177
+ }
178
+ }),
179
+ Node.makeAction({
180
+ id: SpaceOperation.OpenImportSpace.meta.key,
181
+ data: () => Operation.invoke(SpaceOperation.OpenImportSpace),
182
+ properties: {
183
+ label: [
184
+ "import-space.label",
185
+ {
186
+ ns: meta2.id
187
+ }
188
+ ],
189
+ icon: "ph--upload--regular",
190
+ testId: "spacePlugin.importSpace"
191
+ }
192
+ }),
193
+ Node.makeAction({
194
+ id: `${SpaceOperation.ExportSpace.meta.key}.binary`,
195
+ data: Effect.fnUntraced(function* () {
196
+ const client = yield* Capability.get(ClientCapabilities.Client);
197
+ const space = getActiveSpace(client, capabilities) ?? getPersonalSpace(client);
198
+ if (space) {
199
+ yield* Operation.invoke(SpaceOperation.ExportSpace, {
200
+ space,
201
+ format: SpaceArchive.Format.BINARY
202
+ });
203
+ }
204
+ }),
205
+ properties: {
206
+ label: [
207
+ "export-space-binary.label",
208
+ {
209
+ ns: meta2.id
210
+ }
211
+ ],
212
+ icon: "ph--download--regular",
213
+ testId: "spacePlugin.exportSpaceBinary"
214
+ }
215
+ }),
216
+ Node.makeAction({
217
+ id: `${SpaceOperation.ExportSpace.meta.key}.json`,
218
+ data: Effect.fnUntraced(function* () {
219
+ const client = yield* Capability.get(ClientCapabilities.Client);
220
+ const space = getActiveSpace(client, capabilities) ?? getPersonalSpace(client);
221
+ if (space) {
222
+ yield* Operation.invoke(SpaceOperation.ExportSpace, {
223
+ space,
224
+ format: SpaceArchive.Format.JSON
225
+ });
226
+ }
227
+ }),
228
+ properties: {
229
+ label: [
230
+ "export-space-json.label",
231
+ {
232
+ ns: meta2.id
233
+ }
234
+ ],
235
+ icon: "ph--download--regular",
236
+ testId: "spacePlugin.exportSpaceJson"
237
+ }
238
+ }),
239
+ Node.makeAction({
240
+ id: SpaceOperation.OpenMembers.meta.key,
241
+ data: Effect.fnUntraced(function* () {
242
+ const client = yield* Capability.get(ClientCapabilities.Client);
243
+ const space = getActiveSpace(client, capabilities) ?? getPersonalSpace(client);
244
+ if (space) {
245
+ yield* Operation.invoke(SpaceOperation.OpenMembers, {
246
+ space
247
+ });
248
+ }
249
+ }),
250
+ properties: {
251
+ label: [
252
+ "share-space.label",
253
+ {
254
+ ns: meta2.id
255
+ }
256
+ ],
257
+ icon: "ph--users--regular",
258
+ testId: "spacePlugin.shareSpace",
259
+ keyBinding: {
260
+ macos: "meta+.",
261
+ windows: "alt+."
262
+ }
263
+ }
264
+ }),
265
+ Node.makeAction({
266
+ id: SpaceOperation.OpenSettings.meta.key,
267
+ data: Effect.fnUntraced(function* () {
268
+ const client = yield* Capability.get(ClientCapabilities.Client);
269
+ const space = getActiveSpace(client, capabilities) ?? getPersonalSpace(client);
270
+ if (space) {
271
+ yield* Operation.invoke(SpaceOperation.OpenSettings, {
272
+ space
273
+ });
274
+ }
275
+ }),
276
+ properties: {
277
+ label: [
278
+ "open-current-space-settings.label",
279
+ {
280
+ ns: meta2.id
281
+ }
282
+ ],
283
+ icon: "ph--faders--regular",
284
+ keyBinding: {
285
+ macos: "meta+shift+,",
286
+ windows: "ctrl+shift+,"
287
+ }
288
+ }
289
+ })
290
+ ])
291
+ }),
292
+ GraphBuilder.createExtension({
293
+ id: "spaces",
294
+ match: NodeMatcher.whenRoot,
295
+ connector: (_node, get) => {
296
+ const client = capabilities.get(ClientCapabilities.Client);
297
+ const stateAtom = capabilities.get(SpaceCapabilities.State);
298
+ const ephemeralAtom = capabilities.get(SpaceCapabilities.EphemeralState);
299
+ const spacesAtom = CreateAtom.fromObservable(client.spaces);
300
+ const spaces = get(spacesAtom);
301
+ const personalSpace = getPersonalSpace(client);
302
+ if (!spaces || !personalSpace) {
303
+ return Effect.succeed([]);
304
+ }
305
+ const settingsAtom = capabilities.get(SpaceCapabilities.Settings);
306
+ const settings = get(settingsAtom);
307
+ const state = get(stateAtom);
308
+ const ephemeralState = get(ephemeralAtom);
309
+ try {
310
+ const [spacesOrder] = get(AtomQuery2.make(personalSpace.db, Filter2.type(Expando.Expando, {
311
+ key: SHARED
312
+ })));
313
+ const { graph } = capabilities.get(AppCapabilities.AppGraph);
314
+ const spacesOrderSnapshot = spacesOrder ? get(AtomObj2.make(spacesOrder)) : void 0;
315
+ const order = spacesOrderSnapshot?.order ?? [];
316
+ const orderMap = new Map(order.map((id, index) => [
317
+ id,
318
+ index
319
+ ]));
320
+ const spaceStates = spaces.map((space) => get(CreateAtom.fromObservable(space.state)));
321
+ spaces.forEach((space) => {
322
+ if (space.state.get() === SpaceState2.SPACE_READY) {
323
+ get(AtomObj2.make(space.properties));
324
+ }
325
+ });
326
+ return Effect.succeed([
327
+ ...spaces.filter((space) => orderMap.has(space.id)).sort((sortA, sortB) => orderMap.get(sortA.id) - orderMap.get(sortB.id)),
328
+ ...spaces.filter((space) => !orderMap.has(space.id))
329
+ ].filter((space, idx) => settings?.showHidden ? true : spaceStates[idx] !== SpaceState2.SPACE_INACTIVE).filter((space) => space.tags.length === 0 || isPersonalSpace(space) || isExemplarSpace(space)).map((space) => constructSpaceNode({
330
+ space,
331
+ navigable: ephemeralState.navigableCollections,
332
+ personal: isPersonalSpace(space),
333
+ namesCache: state.spaceNames,
334
+ graph,
335
+ spacesOrder
336
+ })));
337
+ } catch {
338
+ return Effect.succeed([]);
339
+ }
340
+ }
341
+ }),
342
+ GraphBuilder.createExtension({
343
+ id: "actions",
344
+ match: AppNodeMatcher.whenSpace,
345
+ actions: (space, get) => {
346
+ const [client] = get(capabilities.atom(ClientCapabilities.Client));
347
+ const ephemeralAtom = capabilities.get(SpaceCapabilities.EphemeralState);
348
+ const ephemeralState = get(ephemeralAtom);
349
+ if (!client) {
350
+ return Effect.succeed([]);
351
+ }
352
+ get(CreateAtom.fromObservable(space.state));
353
+ if (space.state.get() === SpaceState2.SPACE_READY) {
354
+ get(AtomObj2.make(space.properties));
355
+ }
356
+ return Effect.succeed(constructSpaceActions({
357
+ space,
358
+ migrating: ephemeralState.sdkMigrationRunning[space.id]
359
+ }));
360
+ }
361
+ })
362
+ ]);
363
+ });
364
+ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, graph, spacesOrder }) => {
365
+ const hasPendingMigration = checkPendingMigration(space);
366
+ let onRearrange;
367
+ if (graph && spacesOrder) {
368
+ onRearrange = spaceRearrangeCache.get(space.id);
369
+ if (!onRearrange) {
370
+ onRearrange = (nextOrder) => {
371
+ Graph.sortEdges(graph, Node.RootId, "outbound", nextOrder.map(({ id }) => id));
372
+ Obj2.update(spacesOrder, (spacesOrder2) => {
373
+ spacesOrder2.order = nextOrder.map(({ id }) => id);
374
+ });
375
+ };
376
+ spaceRearrangeCache.set(space.id, onRearrange);
377
+ }
378
+ }
379
+ return Node.make({
380
+ id: space.id,
381
+ type: SPACE_TYPE,
382
+ cacheable: CACHEABLE_PROPS,
383
+ data: space,
384
+ properties: {
385
+ label: getSpaceDisplayName(space, {
386
+ personal,
387
+ namesCache
388
+ }),
389
+ description: space.state.get() === SpaceState2.SPACE_READY && space.properties.description,
390
+ hue: space.state.get() === SpaceState2.SPACE_READY && space.properties.hue,
391
+ icon: space.state.get() === SpaceState2.SPACE_READY && space.properties.icon ? `ph--${space.properties.icon}--regular` : void 0,
392
+ iconHue: space.state.get() === SpaceState2.SPACE_READY && space.properties.iconHue,
393
+ disabled: !navigable || space.state.get() !== SpaceState2.SPACE_READY || hasPendingMigration,
394
+ disposition: "workspace",
395
+ testId: "spacePlugin.space",
396
+ onRearrange,
397
+ canDrop: CAN_DROP_SPACE
398
+ }
399
+ });
400
+ };
401
+ var constructSpaceActions = ({ space, migrating }) => {
402
+ const state = space.state.get();
403
+ const hasPendingMigration = checkPendingMigration(space);
404
+ const isMigrating = migrating || Migrations2.running(space);
405
+ const cached = spaceActionsCache.get(space.id);
406
+ if (cached && cached.state === state && cached.hasPendingMigration === hasPendingMigration && cached.migrating === isMigrating) {
407
+ return cached.actions;
408
+ }
409
+ const actions = [];
410
+ if (hasPendingMigration) {
411
+ actions.push(Node.make({
412
+ id: SpaceOperation.Migrate.meta.key,
413
+ type: Node.ActionGroupType,
414
+ data: () => Operation.invoke(SpaceOperation.Migrate, {
415
+ space
416
+ }),
417
+ properties: {
418
+ label: MIGRATE_SPACE_LABEL,
419
+ icon: "ph--database--regular",
420
+ disposition: "list-item-primary",
421
+ disabled: isMigrating
422
+ }
423
+ }));
424
+ }
425
+ if (state === SpaceState2.SPACE_READY && !hasPendingMigration) {
426
+ actions.push(Node.makeAction({
427
+ id: SpaceOperation.OpenCreateObject.meta.key,
428
+ data: () => Operation.invoke(SpaceOperation.OpenCreateObject, {
429
+ target: space.db
430
+ }),
431
+ properties: {
432
+ label: CREATE_OBJECT_IN_SPACE_LABEL,
433
+ icon: "ph--plus--regular",
434
+ disposition: "list-item-primary",
435
+ testId: "spacePlugin.createObject"
436
+ }
437
+ }), Node.makeAction({
438
+ id: SpaceOperation.Rename.meta.key,
439
+ data: (params) => Operation.invoke(SpaceOperation.Rename, {
440
+ space,
441
+ caller: `${params?.caller}:${params?.parent?.id}`
442
+ }),
443
+ properties: {
444
+ label: RENAME_SPACE_LABEL,
445
+ icon: "ph--pencil-simple-line--regular",
446
+ keyBinding: {
447
+ macos: "shift+F6",
448
+ windows: "shift+F6"
449
+ }
450
+ }
451
+ }));
452
+ }
453
+ spaceActionsCache.set(space.id, {
454
+ state,
455
+ hasPendingMigration,
456
+ migrating: isMigrating,
457
+ actions
458
+ });
459
+ return actions;
460
+ };
461
+
462
+ // src/capabilities/app-graph-builder/extensions/database.ts
463
+ import * as Effect2 from "effect/Effect";
464
+ import * as Match from "effect/Match";
465
+ import * as Option2 from "effect/Option";
466
+ import { Capability as Capability2 } from "@dxos/app-framework";
467
+ import { AppNode, AppNodeMatcher as AppNodeMatcher2, LayoutOperation, Segments } from "@dxos/app-toolkit";
468
+ import { SpaceState as SpaceState3, isSpace as isSpace2 } from "@dxos/client/echo";
469
+ import { Operation as Operation2 } from "@dxos/compute";
470
+ import { Annotation as Annotation2, Collection, Filter as Filter3, Obj as Obj3, Query, Scope, Type as Type2 } from "@dxos/echo";
471
+ import { AtomObj as AtomObj3, AtomQuery as AtomQuery3 } from "@dxos/echo-atom";
472
+ import { HiddenAnnotation } from "@dxos/echo/internal";
473
+ import { ClientCapabilities as ClientCapabilities2 } from "@dxos/plugin-client";
474
+ import { CreateAtom as CreateAtom2, GraphBuilder as GraphBuilder2, Node as Node2 } from "@dxos/plugin-graph";
475
+ import { ViewAnnotation as ViewAnnotation2 } from "@dxos/schema";
476
+ import { createFilename, isNonNullable } from "@dxos/util";
477
+ import { meta as meta3 } from "#meta";
478
+ import { SpaceOperation as SpaceOperation2 } from "#operations";
479
+ import { SpaceCapabilities as SpaceCapabilities2 } from "#types";
480
+ var createDatabaseExtensions = Effect2.fnUntraced(function* () {
481
+ const capabilities = yield* Capability2.Service;
482
+ return yield* Effect2.all([
483
+ // Types section virtual node under each space.
484
+ GraphBuilder2.createExtension({
485
+ id: "typesSection",
486
+ match: AppNodeMatcher2.whenSpace,
487
+ connector: (space, get) => {
488
+ const spaceState = get(CreateAtom2.fromObservable(space.state));
489
+ if (spaceState !== SpaceState3.SPACE_READY) {
490
+ return Effect2.succeed([]);
491
+ }
492
+ return Effect2.succeed([
493
+ AppNode.makeSection({
494
+ id: Segments.types,
495
+ type: TYPES_SECTION_TYPE,
496
+ label: [
497
+ "types-section.label",
498
+ {
499
+ ns: meta3.id
500
+ }
501
+ ],
502
+ icon: "ph--database--regular",
503
+ space,
504
+ position: "last",
505
+ testId: "spacePlugin.typesSection"
506
+ })
507
+ ]);
508
+ }
509
+ }),
510
+ // Schema nodes under the Types virtual node.
511
+ GraphBuilder2.createExtension({
512
+ id: "types",
513
+ match: (node) => {
514
+ const space = isSpace2(node.properties.space) ? node.properties.space : void 0;
515
+ return node.type === TYPES_SECTION_TYPE && space ? Option2.some(space) : Option2.none();
516
+ },
517
+ connector: (space, get) => {
518
+ const allSchemas = get(AtomQuery3.make(space.db, Query.select(Filter3.type(Type2.Type)).from(Scope.space(), Scope.registry())));
519
+ const userSchemas = allSchemas.filter((type) => {
520
+ if (Type2.isRelation(type)) {
521
+ return false;
522
+ }
523
+ if (Type2.isTypeKind(type)) {
524
+ return false;
525
+ }
526
+ const schema = Type2.getSchema(type);
527
+ if (HiddenAnnotation.get(schema).pipe(Option2.getOrElse(() => false))) {
528
+ return false;
529
+ }
530
+ if (Type2.getTypename(type) === Type2.getTypename(Collection.Collection)) {
531
+ return false;
532
+ }
533
+ return true;
534
+ });
535
+ const viewIndex = buildViewIndex(get, space, allSchemas);
536
+ const visibleSchemas = userSchemas.filter((schema) => {
537
+ if (Type2.getDatabase(schema) != null) {
538
+ return true;
539
+ }
540
+ const typename = Type2.getTypename(schema);
541
+ const objects = get(AtomQuery3.make(space.db, Filter3.typename(typename)));
542
+ if (ViewAnnotation2.has(schema)) {
543
+ return objects.some((obj) => !viewIndex.isView(obj));
544
+ }
545
+ return objects.length > 0 || viewIndex.typenamesWithViews.has(typename);
546
+ });
547
+ return Effect2.succeed(visibleSchemas.map((schema) => createSchemaNode({
548
+ schema,
549
+ space,
550
+ get
551
+ })));
552
+ }
553
+ }),
554
+ // {All} virtual node + view objects under each schema node.
555
+ GraphBuilder2.createExtension({
556
+ id: "schemaChildren",
557
+ match: (node) => {
558
+ const space = isSpace2(node.properties.space) ? node.properties.space : void 0;
559
+ return space && Type2.isType(node.data) ? Option2.some({
560
+ space,
561
+ schema: node.data
562
+ }) : Option2.none();
563
+ },
564
+ connector: ({ space, schema }, get) => {
565
+ const client = get(capabilities.atom(ClientCapabilities2.Client)).at(0);
566
+ const schemas = client ? get(AtomQuery3.make(client.graph.registry, Filter3.type(Type2.Type))) : [];
567
+ const typename = Type2.getTypename(schema);
568
+ const allNode = Node2.make({
569
+ id: "all",
570
+ type: TYPE_COLLECTION_TYPE,
571
+ data: {
572
+ space,
573
+ typename
574
+ },
575
+ properties: {
576
+ label: [
577
+ "type-collection-all.label",
578
+ {
579
+ ns: meta3.id
580
+ }
581
+ ],
582
+ icon: "ph--list--regular",
583
+ iconHue: "neutral",
584
+ role: "branch",
585
+ testId: `spacePlugin.typeCollectionAll.${typename}`,
586
+ selectable: false,
587
+ draggable: false,
588
+ droppable: false,
589
+ childrenDroppable: false,
590
+ blockInstruction: BLOCK_REORDER_ABOVE
591
+ }
592
+ });
593
+ const viewIndex = buildViewIndex(get, space, schemas);
594
+ const viewNodes = viewIndex.getViewsForTypename(typename).map((object) => createObjectNode({
595
+ db: space.db,
596
+ object,
597
+ droppable: false
598
+ })).filter(isNonNullable);
599
+ return Effect2.succeed([
600
+ allNode,
601
+ ...viewNodes
602
+ ]);
603
+ }
604
+ }),
605
+ // Objects of the schema type under the {All} node.
606
+ GraphBuilder2.createExtension({
607
+ id: "typeCollectionObjects",
608
+ match: (node) => {
609
+ if (node.type !== TYPE_COLLECTION_TYPE || !node.data?.space || !node.data?.typename) {
610
+ return Option2.none();
611
+ }
612
+ return Option2.some({
613
+ space: node.data.space,
614
+ typename: node.data.typename
615
+ });
616
+ },
617
+ connector: ({ space, typename }, get) => {
618
+ const client = get(capabilities.atom(ClientCapabilities2.Client)).at(0);
619
+ const schemas = client ? get(AtomQuery3.make(client.graph.registry, Filter3.type(Type2.Type))) : [];
620
+ const viewIndex = buildViewIndex(get, space, schemas);
621
+ const objects = get(AtomQuery3.make(space.db, Filter3.typename(typename))).filter((object) => !viewIndex.isView(object) && !Obj3.getParent(object));
622
+ return Effect2.succeed(objects.map((object) => {
623
+ get(AtomObj3.make(object));
624
+ return createObjectNode({
625
+ db: space.db,
626
+ object,
627
+ droppable: false
628
+ });
629
+ }).filter(isNonNullable).toSorted((nodeA, nodeB) => {
630
+ const labelA = typeof nodeA.properties.label === "string" ? nodeA.properties.label : "";
631
+ const labelB = typeof nodeB.properties.label === "string" ? nodeB.properties.label : "";
632
+ return labelA.localeCompare(labelB);
633
+ }));
634
+ }
635
+ }),
636
+ // Actions for schema nodes.
637
+ GraphBuilder2.createExtension({
638
+ id: "schemaActions",
639
+ match: (node) => {
640
+ const space = isSpace2(node.properties.space) ? node.properties.space : void 0;
641
+ return space && Type2.isType(node.data) ? Option2.some({
642
+ space,
643
+ schema: node.data
644
+ }) : Option2.none();
645
+ },
646
+ actions: ({ space, schema }, get) => {
647
+ const client = get(capabilities.atom(ClientCapabilities2.Client)).at(0);
648
+ const schemas = client ? get(AtomQuery3.make(client.graph.registry, Filter3.type(Type2.Type))) : [];
649
+ const targetTypename = Type2.getTypename(schema);
650
+ const viewIndex = buildViewIndex(get, space, schemas);
651
+ const deletable = Type2.getDatabase(schema) != null && viewIndex.getViewsForTypename(targetTypename).length === 0;
652
+ return Effect2.succeed(createSchemaActions({
653
+ type: schema,
654
+ space,
655
+ deletable,
656
+ capabilities
657
+ }));
658
+ }
659
+ })
660
+ ]);
661
+ });
662
+ var createSchemaNode = ({ schema, space, get }) => {
663
+ const typename = Type2.getTypename(schema);
664
+ const iconAnnotation = Type2.getDatabase(schema) == null ? Option2.getOrUndefined(Annotation2.IconAnnotation.get(Type2.getSchema(schema))) : void 0;
665
+ const { label, nodeId } = Match.value(schema).pipe(Match.when((value2) => Type2.getDatabase(value2) != null, (mutableSchema) => {
666
+ const snapshot = get(AtomObj3.make(mutableSchema));
667
+ return {
668
+ label: snapshot.name || [
669
+ "object-name.placeholder",
670
+ {
671
+ ns: Type2.getTypename(Type2.Type)
672
+ }
673
+ ],
674
+ nodeId: typename
675
+ };
676
+ }), Match.orElse(() => ({
677
+ label: getDynamicLabel("typename.label", typename, {
678
+ count: 2,
679
+ defaultValue: typename
680
+ }),
681
+ nodeId: typename
682
+ })));
683
+ const icon = Type2.getDatabase(schema) != null ? "ph--cube--regular" : iconAnnotation?.icon ?? "ph--circle-dashed--regular";
684
+ const iconHue = Type2.getDatabase(schema) != null ? "neutral" : iconAnnotation?.hue;
685
+ return Node2.make({
686
+ id: nodeId,
687
+ type: STATIC_SCHEMA_TYPE,
688
+ data: schema,
689
+ properties: {
690
+ label,
691
+ icon,
692
+ iconHue,
693
+ role: "branch",
694
+ testId: `spacePlugin.schemaNode.${typename}`,
695
+ selectable: false,
696
+ draggable: false,
697
+ droppable: false,
698
+ childrenDroppable: false,
699
+ space
700
+ }
701
+ });
702
+ };
703
+ var createSchemaActions = ({ type, space, deletable, capabilities }) => {
704
+ const typename = Type2.getTypename(type);
705
+ const createEntry = capabilities.getAll(SpaceCapabilities2.CreateObjectEntry).find((entry) => entry.id === typename);
706
+ const createObjectFn = createEntry?.createObject;
707
+ const inputSchema = createEntry?.inputSchema;
708
+ const actions = [
709
+ ...createObjectFn ? [
710
+ Node2.makeAction({
711
+ id: SpaceOperation2.OpenCreateObject.meta.key,
712
+ data: Effect2.fnUntraced(function* () {
713
+ if (inputSchema) {
714
+ yield* Operation2.invoke(SpaceOperation2.OpenCreateObject, {
715
+ target: space.db,
716
+ typename
717
+ });
718
+ } else {
719
+ const result = yield* createObjectFn({}, {
720
+ db: space.db,
721
+ target: space.db
722
+ }).pipe(Effect2.provideService(Capability2.Service, capabilities));
723
+ if (result.subject.length > 0) {
724
+ yield* Operation2.invoke(LayoutOperation.Open, {
725
+ subject: [
726
+ ...result.subject
727
+ ],
728
+ navigation: "immediate"
729
+ });
730
+ }
731
+ }
732
+ }),
733
+ properties: {
734
+ label: getDynamicLabel("add object label", typename),
735
+ icon: "ph--plus--regular",
736
+ disposition: "list-item-primary",
737
+ testId: "spacePlugin.createObject"
738
+ }
739
+ })
740
+ ] : [],
741
+ Node2.makeAction({
742
+ id: `${SpaceOperation2.AddObject.meta.key}-view`,
743
+ data: () => Operation2.invoke(SpaceOperation2.OpenCreateObject, {
744
+ target: space.db,
745
+ views: true,
746
+ initialFormValues: {
747
+ typename: Type2.getTypename(type)
748
+ }
749
+ }),
750
+ properties: {
751
+ label: ADD_VIEW_TO_SCHEMA_LABEL,
752
+ icon: "ph--circles-three-plus--regular",
753
+ disposition: "list-item",
754
+ testId: "spacePlugin.addViewToSchema"
755
+ }
756
+ }),
757
+ Node2.makeAction({
758
+ id: SpaceOperation2.RenameObject.meta.key,
759
+ data: (params) => Type2.getDatabase(type) != null ? Operation2.invoke(SpaceOperation2.RenameObject, {
760
+ object: type,
761
+ caller: `${params?.caller}:${params?.parent?.id}`
762
+ }) : Effect2.fail(new Error("Cannot rename immutable schema")),
763
+ properties: {
764
+ label: getDynamicLabel("rename-object.label", Type2.getTypename(Type2.Type)),
765
+ icon: "ph--pencil-simple-line--regular",
766
+ disabled: Type2.getDatabase(type) == null,
767
+ disposition: "list-item",
768
+ testId: "spacePlugin.renameObject"
769
+ }
770
+ }),
771
+ Node2.makeAction({
772
+ id: SpaceOperation2.RemoveObjects.meta.key,
773
+ data: () => Type2.getDatabase(type) != null ? Operation2.invoke(SpaceOperation2.RemoveObjects, {
774
+ objects: [
775
+ type
776
+ ]
777
+ }) : Effect2.succeed(void 0),
778
+ properties: {
779
+ label: getDynamicLabel("delete object label", Type2.getTypename(Type2.Type)),
780
+ icon: "ph--trash--regular",
781
+ disposition: "list-item",
782
+ disabled: !deletable,
783
+ testId: "spacePlugin.deleteObject"
784
+ }
785
+ }),
786
+ Node2.makeAction({
787
+ id: SpaceOperation2.Snapshot.meta.key,
788
+ data: Effect2.fnUntraced(function* () {
789
+ const result = yield* Operation2.invoke(SpaceOperation2.Snapshot, {
790
+ db: space.db,
791
+ query: Query.select(Filter3.type(type)).ast
792
+ });
793
+ if (result.snapshot) {
794
+ yield* Effect2.tryPromise(() => downloadBlob(result.snapshot, createFilename({
795
+ parts: [
796
+ space.id,
797
+ Type2.getTypename(type)
798
+ ],
799
+ ext: "json"
800
+ })));
801
+ }
802
+ }),
803
+ properties: {
804
+ label: SNAPSHOT_BY_SCHEMA_LABEL,
805
+ icon: "ph--camera--regular",
806
+ disposition: "list-item"
807
+ }
808
+ })
809
+ ];
810
+ return actions;
811
+ };
812
+
813
+ // src/capabilities/app-graph-builder/extensions/collections.ts
814
+ import * as Effect3 from "effect/Effect";
815
+ import * as Option3 from "effect/Option";
816
+ import { Capabilities, Capability as Capability3 } from "@dxos/app-framework";
817
+ import { AppCapabilities as AppCapabilities2, AppNodeMatcher as AppNodeMatcher3, LayoutOperation as LayoutOperation2, RootCollectionAnnotation, Segments as Segments2, getObjectPathFromObject, toUrlPath } from "@dxos/app-toolkit";
818
+ import { SpaceState as SpaceState4, isSpace as isSpace3 } from "@dxos/client/echo";
819
+ import { Operation as Operation3 } from "@dxos/compute";
820
+ import { Annotation as Annotation3, Collection as Collection2, Obj as Obj4, Type as Type3 } from "@dxos/echo";
821
+ import { AtomObj as AtomObj4 } from "@dxos/echo-atom";
822
+ import { invariant } from "@dxos/invariant";
823
+ import { CreateAtom as CreateAtom3, Graph as Graph2, GraphBuilder as GraphBuilder3, Node as Node3 } from "@dxos/plugin-graph";
824
+ import { isNonNullable as isNonNullable2 } from "@dxos/util";
825
+ import { meta as meta4 } from "#meta";
826
+ import { SpaceOperation as SpaceOperation3 } from "#operations";
827
+ import { SpaceCapabilities as SpaceCapabilities3 } from "#types";
828
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/capabilities/app-graph-builder/extensions/collections.ts";
829
+ var createCollectionExtensions = Effect3.fnUntraced(function* ({ shareableLinkOrigin }) {
830
+ const capabilities = yield* Capability3.Service;
831
+ return yield* Effect3.all([
832
+ // Collections section virtual node under each space.
833
+ GraphBuilder3.createExtension({
834
+ id: "collectionsSection",
835
+ match: AppNodeMatcher3.whenSpace,
836
+ connector: (space, get) => {
837
+ const spaceState = get(CreateAtom3.fromObservable(space.state));
838
+ if (spaceState !== SpaceState4.SPACE_READY) {
839
+ return Effect3.succeed([]);
840
+ }
841
+ get(AtomObj4.make(space.properties));
842
+ const collectionRef = Annotation3.get(space.properties, RootCollectionAnnotation).pipe(Option3.getOrUndefined);
843
+ if (collectionRef) {
844
+ get(AtomObj4.make(collectionRef));
845
+ }
846
+ const rootCollection = collectionRef?.target;
847
+ const collectionPartials = rootCollection ? getCollectionGraphNodePartials({
848
+ db: space.db,
849
+ collection: rootCollection
850
+ }) : void 0;
851
+ return Effect3.succeed([
852
+ Node3.make({
853
+ id: Segments2.collections,
854
+ type: COLLECTIONS_SECTION_TYPE,
855
+ data: null,
856
+ properties: {
857
+ label: [
858
+ "collections-section.label",
859
+ {
860
+ ns: meta4.id
861
+ }
862
+ ],
863
+ icon: "ph--folder--regular",
864
+ iconHue: "amber",
865
+ role: "branch",
866
+ position: "first",
867
+ testId: "spacePlugin.collectionsSection",
868
+ draggable: false,
869
+ droppable: false,
870
+ space,
871
+ ...collectionPartials
872
+ }
873
+ })
874
+ ]);
875
+ }
876
+ }),
877
+ // Root collection objects under the Collections virtual node.
878
+ GraphBuilder3.createExtension({
879
+ id: "collections",
880
+ match: (node) => {
881
+ const space = isSpace3(node.properties.space) ? node.properties.space : void 0;
882
+ return node.type === COLLECTIONS_SECTION_TYPE && space ? Option3.some(space) : Option3.none();
883
+ },
884
+ connector: (space, get) => {
885
+ const ephemeralAtom = capabilities.get(SpaceCapabilities3.EphemeralState);
886
+ const ephemeralState = get(ephemeralAtom);
887
+ get(AtomObj4.make(space.properties));
888
+ const collectionRef = Annotation3.get(space.properties, RootCollectionAnnotation).pipe(Option3.getOrUndefined);
889
+ const collection = collectionRef ? get(AtomObj4.make(collectionRef)) : void 0;
890
+ if (!collection) {
891
+ return Effect3.succeed([]);
892
+ }
893
+ const rawRefs = collection.objects ?? [];
894
+ const objects = rawRefs.map((ref) => {
895
+ get(AtomObj4.make(ref));
896
+ return ref.target;
897
+ }).filter(isNonNullable2);
898
+ return Effect3.succeed(objects.map((object) => createObjectNode({
899
+ db: space.db,
900
+ object,
901
+ navigable: ephemeralState.navigableCollections,
902
+ parentCollection: collectionRef?.target
903
+ })).filter(isNonNullable2));
904
+ }
905
+ }),
906
+ // Children of Collection.Collection nodes.
907
+ GraphBuilder3.createExtension({
908
+ id: "objects",
909
+ match: (node) => Obj4.instanceOf(Collection2.Collection, node.data) ? Option3.some(node.data) : Option3.none(),
910
+ connector: (collection, get) => {
911
+ const ephemeralAtom = capabilities.get(SpaceCapabilities3.EphemeralState);
912
+ const ephemeralState = get(ephemeralAtom);
913
+ const db = Obj4.getDatabase(collection);
914
+ const collectionSnapshot = get(AtomObj4.make(collection));
915
+ const refs = collectionSnapshot.objects ?? [];
916
+ const objects = refs.map((ref) => {
917
+ get(AtomObj4.make(ref));
918
+ return ref.target;
919
+ }).filter(isNonNullable2);
920
+ return Effect3.succeed(objects.map((object) => db && createObjectNode({
921
+ object,
922
+ db,
923
+ navigable: ephemeralState.navigableCollections,
924
+ parentCollection: collection
925
+ })).filter(isNonNullable2));
926
+ }
927
+ }),
928
+ // Object actions.
929
+ GraphBuilder3.createExtension({
930
+ id: "objectActions",
931
+ match: (node) => {
932
+ return node.data != null && Obj4.getDatabase(node.data) && Obj4.isObject(node.data) && Obj4.getTypename(node.data) === node.type ? Option3.some({
933
+ object: node.data,
934
+ nodeId: node.id
935
+ }) : Option3.none();
936
+ },
937
+ actions: ({ object, nodeId }, get) => {
938
+ const deletable = !Type3.isType(object);
939
+ const [appGraph] = get(capabilities.atom(AppCapabilities2.AppGraph));
940
+ const ephemeralAtom = capabilities.get(SpaceCapabilities3.EphemeralState);
941
+ const ephemeralState = get(ephemeralAtom);
942
+ if (!appGraph) {
943
+ return Effect3.succeed([]);
944
+ }
945
+ const parentId = nodeId.substring(0, nodeId.lastIndexOf("/"));
946
+ const parentNode = Option3.getOrUndefined(Graph2.getNode(appGraph.graph, parentId));
947
+ const parentCollection = parentNode && Obj4.instanceOf(Collection2.Collection, parentNode.data) ? parentNode.data : void 0;
948
+ return Effect3.succeed(constructObjectActions({
949
+ object,
950
+ nodeId,
951
+ deletable,
952
+ navigable: ephemeralState.navigableCollections,
953
+ shareableLinkOrigin,
954
+ parentCollection
955
+ }));
956
+ }
957
+ })
958
+ ]);
959
+ });
960
+ var constructObjectActions = ({ object, nodeId, deletable = true, navigable = false, shareableLinkOrigin, parentCollection }) => {
961
+ const db = Obj4.getDatabase(object);
962
+ invariant(db, "Database not found", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 158, S: void 0, A: ["db", "'Database not found'"] });
963
+ const typename = Obj4.getTypename(object);
964
+ invariant(typename, "Object has no typename", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 160, S: void 0, A: ["typename", "'Object has no typename'"] });
965
+ const actions = [
966
+ ...Obj4.instanceOf(Collection2.Collection, object) ? [
967
+ Node3.makeAction({
968
+ id: SpaceOperation3.OpenCreateObject.meta.key,
969
+ data: () => Operation3.invoke(SpaceOperation3.OpenCreateObject, {
970
+ target: object,
971
+ targetNodeId: nodeId
972
+ }),
973
+ properties: {
974
+ label: CREATE_OBJECT_IN_COLLECTION_LABEL,
975
+ icon: "ph--plus--regular",
976
+ disposition: "list-item-primary",
977
+ testId: "spacePlugin.createObject"
978
+ }
979
+ })
980
+ ] : [],
981
+ Node3.makeAction({
982
+ id: SpaceOperation3.RenameObject.meta.key,
983
+ data: (params) => Operation3.invoke(SpaceOperation3.RenameObject, {
984
+ object,
985
+ caller: `${params?.caller}:${params?.parent?.id}`
986
+ }),
987
+ properties: {
988
+ label: getDynamicLabel("rename-object.label", typename, {
989
+ defaultValue: "Rename"
990
+ }),
991
+ icon: "ph--pencil-simple-line--regular",
992
+ disposition: "list-item",
993
+ testId: "spacePlugin.renameObject"
994
+ }
995
+ }),
996
+ ...parentCollection && !Obj4.instanceOf(Collection2.Collection, object) ? [
997
+ Node3.makeAction({
998
+ id: "removeFromCollection",
999
+ data: () => Effect3.gen(function* () {
1000
+ const index = parentCollection.objects.findIndex((ref) => ref.target === object);
1001
+ if (index !== -1) {
1002
+ const layout = yield* Capabilities.getAtomValue(AppCapabilities2.Layout);
1003
+ const isActive = layout.active.includes(nodeId);
1004
+ Obj4.update(parentCollection, (parentCollection2) => {
1005
+ parentCollection2.objects.splice(index, 1);
1006
+ });
1007
+ if (isActive) {
1008
+ yield* Operation3.invoke(LayoutOperation2.Open, {
1009
+ subject: [
1010
+ getObjectPathFromObject(object)
1011
+ ]
1012
+ });
1013
+ }
1014
+ }
1015
+ }),
1016
+ properties: {
1017
+ label: REMOVE_FROM_COLLECTION_LABEL,
1018
+ icon: "ph--minus-circle--regular",
1019
+ disposition: "list-item",
1020
+ testId: "spacePlugin.removeFromCollection"
1021
+ }
1022
+ })
1023
+ ] : [],
1024
+ Node3.makeAction({
1025
+ id: SpaceOperation3.RemoveObjects.meta.key,
1026
+ data: () => Operation3.invoke(SpaceOperation3.RemoveObjects, {
1027
+ objects: [
1028
+ object
1029
+ ],
1030
+ target: parentCollection
1031
+ }),
1032
+ properties: {
1033
+ label: getDynamicLabel("delete object label", typename, {
1034
+ defaultValue: "Delete"
1035
+ }),
1036
+ icon: "ph--trash--regular",
1037
+ disposition: "list-item",
1038
+ disabled: !deletable,
1039
+ testId: "spacePlugin.deleteObject"
1040
+ }
1041
+ }),
1042
+ ...navigable || !Obj4.instanceOf(Collection2.Collection, object) ? [
1043
+ Node3.makeAction({
1044
+ id: "copyLink",
1045
+ data: () => Effect3.promise(async () => {
1046
+ const url = new URL(toUrlPath(nodeId), shareableLinkOrigin);
1047
+ await navigator.clipboard.writeText(url.toString());
1048
+ }),
1049
+ properties: {
1050
+ label: COPY_LINK_LABEL,
1051
+ icon: "ph--link--regular",
1052
+ disposition: "list-item",
1053
+ testId: "spacePlugin.copyLink"
1054
+ }
1055
+ })
1056
+ ] : [],
1057
+ Node3.makeAction({
1058
+ id: LayoutOperation2.Expose.meta.key,
1059
+ data: () => Operation3.invoke(LayoutOperation2.Expose, {
1060
+ subject: getObjectPathFromObject(object)
1061
+ }),
1062
+ properties: {
1063
+ label: EXPOSE_OBJECT_LABEL,
1064
+ icon: "ph--eye--regular",
1065
+ disposition: "heading-list-item",
1066
+ testId: "spacePlugin.exposeObject"
1067
+ }
1068
+ })
1069
+ ];
1070
+ return actions;
1071
+ };
1072
+
1073
+ // src/capabilities/app-graph-builder/extensions/companions.ts
1074
+ import * as Effect4 from "effect/Effect";
1075
+ import * as Option4 from "effect/Option";
1076
+ import { AppNode as AppNode2 } from "@dxos/app-toolkit";
1077
+ import { Obj as Obj5, Type as Type4 } from "@dxos/echo";
1078
+ import { GraphBuilder as GraphBuilder4, NodeMatcher as NodeMatcher2 } from "@dxos/plugin-graph";
1079
+ import { linkedSegment } from "@dxos/react-ui-attention";
1080
+ import { ViewAnnotation as ViewAnnotation3 } from "@dxos/schema";
1081
+ import { meta as meta5 } from "#meta";
1082
+ var createCompanionExtensions = Effect4.fnUntraced(function* () {
1083
+ return yield* Effect4.all([
1084
+ // Object settings plank companion.
1085
+ GraphBuilder4.createExtension({
1086
+ id: "settings",
1087
+ match: NodeMatcher2.whenEchoObjectMatches,
1088
+ connector: (node) => Effect4.succeed([
1089
+ AppNode2.makeCompanion({
1090
+ id: linkedSegment("settings"),
1091
+ label: [
1092
+ "object-properties.label",
1093
+ {
1094
+ ns: meta5.id
1095
+ }
1096
+ ],
1097
+ icon: "ph--sliders--regular",
1098
+ data: "settings",
1099
+ position: "last"
1100
+ })
1101
+ ])
1102
+ }),
1103
+ // Related objects plank companion.
1104
+ GraphBuilder4.createExtension({
1105
+ id: "related",
1106
+ match: NodeMatcher2.whenEchoObjectMatches,
1107
+ connector: (node) => Effect4.succeed([
1108
+ AppNode2.makeCompanion({
1109
+ id: linkedSegment("related"),
1110
+ label: [
1111
+ "companion-related.label",
1112
+ {
1113
+ ns: meta5.id
1114
+ }
1115
+ ],
1116
+ icon: "ph--graph--regular",
1117
+ data: "related",
1118
+ position: "last"
1119
+ })
1120
+ ])
1121
+ }),
1122
+ // View selected objects companion.
1123
+ GraphBuilder4.createExtension({
1124
+ id: "selectedObjects",
1125
+ match: (node) => {
1126
+ if (!Obj5.isObject(node.data)) {
1127
+ return Option4.none();
1128
+ }
1129
+ const type = Obj5.getType(node.data);
1130
+ const path = type ? ViewAnnotation3.get(Type4.getSchema(type)).pipe(Option4.getOrElse(() => [])) : [];
1131
+ const isEchoViewBacked = type && path.length > 0 ? ViewAnnotation3.hasRefAlongPath(node.data, path) : false;
1132
+ if (!isEchoViewBacked) {
1133
+ return Option4.none();
1134
+ }
1135
+ return Option4.some(node);
1136
+ },
1137
+ connector: (node) => Effect4.succeed([
1138
+ AppNode2.makeCompanion({
1139
+ id: linkedSegment("selected-objects"),
1140
+ label: [
1141
+ "companion-selected-objects.label",
1142
+ {
1143
+ ns: meta5.id
1144
+ }
1145
+ ],
1146
+ icon: "ph--tree-view--regular",
1147
+ data: "selected-objects"
1148
+ })
1149
+ ])
1150
+ })
1151
+ ]);
1152
+ });
1153
+
1154
+ // src/capabilities/app-graph-builder/extensions/settings.ts
1155
+ import * as Effect5 from "effect/Effect";
1156
+ import * as Option5 from "effect/Option";
1157
+ import { AppNode as AppNode3, AppNodeMatcher as AppNodeMatcher4, isPersonalSpace as isPersonalSpace2 } from "@dxos/app-toolkit";
1158
+ import { isSpace as isSpace4 } from "@dxos/client/echo";
1159
+ import { GraphBuilder as GraphBuilder5, Node as Node4 } from "@dxos/plugin-graph";
1160
+ import { meta as meta6 } from "#meta";
1161
+ import { SETTINGS_SECTION_ID, SETTINGS_SECTION_TYPE } from "#types";
1162
+ var createSettingsExtensions = Effect5.fnUntraced(function* () {
1163
+ const sectionExtension = yield* GraphBuilder5.createExtension({
1164
+ id: "settingsSection",
1165
+ match: AppNodeMatcher4.whenSpace,
1166
+ connector: (space) => Effect5.succeed([
1167
+ AppNode3.makeSection({
1168
+ id: SETTINGS_SECTION_ID,
1169
+ type: SETTINGS_SECTION_TYPE,
1170
+ label: [
1171
+ "settings-section.label",
1172
+ {
1173
+ ns: meta6.id
1174
+ }
1175
+ ],
1176
+ icon: "ph--sliders--regular",
1177
+ iconHue: "indigo",
1178
+ space,
1179
+ position: "first",
1180
+ testId: "spacePlugin.settings"
1181
+ })
1182
+ ])
1183
+ });
1184
+ const childrenExtension = yield* GraphBuilder5.createExtension({
1185
+ id: "settingsSections",
1186
+ match: (node) => {
1187
+ const space = isSpace4(node.properties.space) ? node.properties.space : void 0;
1188
+ return node.type === SETTINGS_SECTION_TYPE && space ? Option5.some(space) : Option5.none();
1189
+ },
1190
+ connector: (space) => {
1191
+ const personal = isPersonalSpace2(space);
1192
+ return Effect5.succeed([
1193
+ Node4.make({
1194
+ id: "general",
1195
+ type: `${meta6.id}.general`,
1196
+ data: `${meta6.id}.general`,
1197
+ properties: {
1198
+ label: [
1199
+ "space-settings-properties.label",
1200
+ {
1201
+ ns: meta6.id
1202
+ }
1203
+ ],
1204
+ icon: "ph--brackets-curly--regular",
1205
+ iconHue: "indigo",
1206
+ space,
1207
+ testId: "spacePlugin.general"
1208
+ }
1209
+ }),
1210
+ ...!personal ? [
1211
+ Node4.make({
1212
+ id: "members",
1213
+ type: `${meta6.id}.members`,
1214
+ data: `${meta6.id}.members`,
1215
+ properties: {
1216
+ label: [
1217
+ "members-panel.label",
1218
+ {
1219
+ ns: meta6.id
1220
+ }
1221
+ ],
1222
+ icon: "ph--users--regular",
1223
+ iconHue: "indigo",
1224
+ space,
1225
+ testId: "spacePlugin.members"
1226
+ }
1227
+ })
1228
+ ] : []
1229
+ ]);
1230
+ }
1231
+ });
1232
+ return [
1233
+ sectionExtension,
1234
+ childrenExtension
1235
+ ];
1236
+ });
1237
+
1238
+ // src/capabilities/app-graph-builder/app-graph-builder.ts
1239
+ var app_graph_builder_default = Capability4.makeModule(Effect6.fnUntraced(function* ({ shareableLinkOrigin = window.location.origin } = {}) {
1240
+ const extensions = yield* Effect6.all([
1241
+ createSpaceExtensions(),
1242
+ createSettingsExtensions(),
1243
+ createDatabaseExtensions(),
1244
+ createCollectionExtensions({
1245
+ shareableLinkOrigin
1246
+ }),
1247
+ createCompanionExtensions()
1248
+ ]);
1249
+ return Capability4.contributes(AppCapabilities3.AppGraphBuilder, extensions.flat());
1250
+ }));
1251
+ export {
1252
+ app_graph_builder_default as default
1253
+ };
1254
+ //# sourceMappingURL=app-graph-builder-5QSN3MP7.mjs.map