@dxos/plugin-space 0.8.4-main.69d29f4 → 0.8.4-main.6fa680abb7

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 (541) hide show
  1. package/dist/lib/browser/CollectionArticle-WPLUW5HF.mjs +111 -0
  2. package/dist/lib/browser/CollectionArticle-WPLUW5HF.mjs.map +7 -0
  3. package/dist/lib/browser/CollectionSection-H2MBNI63.mjs +23 -0
  4. package/dist/lib/browser/CollectionSection-H2MBNI63.mjs.map +7 -0
  5. package/dist/lib/browser/CreateObjectDialog-M3NRXGWW.mjs +142 -0
  6. package/dist/lib/browser/CreateObjectDialog-M3NRXGWW.mjs.map +7 -0
  7. package/dist/lib/browser/CreateSpaceDialog-3M2LAWV6.mjs +64 -0
  8. package/dist/lib/browser/CreateSpaceDialog-3M2LAWV6.mjs.map +7 -0
  9. package/dist/lib/browser/InlineSyncStatus-K5MZ3YMZ.mjs +53 -0
  10. package/dist/lib/browser/InlineSyncStatus-K5MZ3YMZ.mjs.map +7 -0
  11. package/dist/lib/browser/JoinDialog-PBK2RE5F.mjs +115 -0
  12. package/dist/lib/browser/JoinDialog-PBK2RE5F.mjs.map +7 -0
  13. package/dist/lib/browser/MembersContainer-OGYV2L4M.mjs +257 -0
  14. package/dist/lib/browser/MembersContainer-OGYV2L4M.mjs.map +7 -0
  15. package/dist/lib/browser/MenuFooter-XCBDK7WP.mjs +37 -0
  16. package/dist/lib/browser/MenuFooter-XCBDK7WP.mjs.map +7 -0
  17. package/dist/lib/browser/ObjectCardStack-UYS2TMK6.mjs +64 -0
  18. package/dist/lib/browser/ObjectCardStack-UYS2TMK6.mjs.map +7 -0
  19. package/dist/lib/browser/ObjectDetails-B2BJLOK5.mjs +43 -0
  20. package/dist/lib/browser/ObjectDetails-B2BJLOK5.mjs.map +7 -0
  21. package/dist/lib/browser/ObjectRenamePopover-JNPJIFIR.mjs +70 -0
  22. package/dist/lib/browser/ObjectRenamePopover-JNPJIFIR.mjs.map +7 -0
  23. package/dist/lib/browser/{RecordArticle-W57QE7QV.mjs → RecordArticle-BO2XHBFN.mjs} +23 -18
  24. package/dist/lib/browser/RecordArticle-BO2XHBFN.mjs.map +7 -0
  25. package/dist/lib/browser/SchemaContainer-QWCSIZBS.mjs +49 -0
  26. package/dist/lib/browser/SchemaContainer-QWCSIZBS.mjs.map +7 -0
  27. package/dist/lib/browser/SmallPresenceLive-AHHLBAUP.mjs +9 -0
  28. package/dist/lib/browser/SmallPresenceLive-AHHLBAUP.mjs.map +7 -0
  29. package/dist/lib/browser/SpacePluginSettings-QGZKNQLK.mjs +59 -0
  30. package/dist/lib/browser/SpacePluginSettings-QGZKNQLK.mjs.map +7 -0
  31. package/dist/lib/browser/SpacePresence-JIWLBUWO.mjs +12 -0
  32. package/dist/lib/browser/SpacePresence-JIWLBUWO.mjs.map +7 -0
  33. package/dist/lib/browser/SpaceRenamePopover-ZL6RRZ2B.mjs +62 -0
  34. package/dist/lib/browser/SpaceRenamePopover-ZL6RRZ2B.mjs.map +7 -0
  35. package/dist/lib/browser/SpaceSettingsContainer-MIOOT63N.mjs +242 -0
  36. package/dist/lib/browser/SpaceSettingsContainer-MIOOT63N.mjs.map +7 -0
  37. package/dist/lib/browser/SyncStatus-JSCSODPL.mjs +141 -0
  38. package/dist/lib/browser/SyncStatus-JSCSODPL.mjs.map +7 -0
  39. package/dist/lib/browser/ViewEditor-3FX5HDRT.mjs +113 -0
  40. package/dist/lib/browser/ViewEditor-3FX5HDRT.mjs.map +7 -0
  41. package/dist/lib/browser/app-graph-builder-JORZZE3P.mjs +1203 -0
  42. package/dist/lib/browser/app-graph-builder-JORZZE3P.mjs.map +7 -0
  43. package/dist/lib/browser/{app-graph-serializer-7AT7QMSK.mjs → app-graph-serializer-UZWWGLGY.mjs} +11 -10
  44. package/dist/lib/browser/app-graph-serializer-UZWWGLGY.mjs.map +7 -0
  45. package/dist/lib/browser/chunk-3A3FUI2R.mjs +576 -0
  46. package/dist/lib/browser/chunk-3A3FUI2R.mjs.map +7 -0
  47. package/dist/lib/browser/{chunk-CCRSHECL.mjs → chunk-6IT5IBB5.mjs} +74 -105
  48. package/dist/lib/browser/chunk-6IT5IBB5.mjs.map +7 -0
  49. package/dist/lib/browser/chunk-6OA75CWN.mjs +77 -0
  50. package/dist/lib/browser/chunk-6OA75CWN.mjs.map +7 -0
  51. package/dist/lib/browser/{chunk-ZT2VPYRM.mjs → chunk-AUX3RRLY.mjs} +37 -12
  52. package/dist/lib/browser/chunk-AUX3RRLY.mjs.map +7 -0
  53. package/dist/lib/browser/{chunk-HSMQFM57.mjs → chunk-CBWGVOJE.mjs} +2 -2
  54. package/dist/lib/browser/{chunk-HSMQFM57.mjs.map → chunk-CBWGVOJE.mjs.map} +1 -1
  55. package/dist/lib/browser/{chunk-4WZUGLQQ.mjs → chunk-ICXESMDI.mjs} +13 -12
  56. package/dist/lib/browser/chunk-ICXESMDI.mjs.map +7 -0
  57. package/dist/lib/browser/chunk-RJUOHI3B.mjs +19 -0
  58. package/dist/lib/browser/{chunk-ASV6DYFH.mjs.map → chunk-RJUOHI3B.mjs.map} +1 -1
  59. package/dist/lib/browser/chunk-SJCNERZI.mjs +115 -0
  60. package/dist/lib/browser/chunk-SJCNERZI.mjs.map +7 -0
  61. package/dist/lib/browser/{chunk-AWVAX26X.mjs → chunk-SSTUPFZ2.mjs} +3 -3
  62. package/dist/lib/browser/chunk-UYOJYBGW.mjs +168 -0
  63. package/dist/lib/browser/chunk-UYOJYBGW.mjs.map +7 -0
  64. package/dist/lib/browser/cli/index.mjs +34 -32
  65. package/dist/lib/browser/cli/index.mjs.map +3 -3
  66. package/dist/lib/browser/{identity-created-VCFYLSBB.mjs → identity-created-ETXNQYR6.mjs} +5 -5
  67. package/dist/lib/browser/identity-created-ETXNQYR6.mjs.map +7 -0
  68. package/dist/lib/browser/index.mjs +99 -155
  69. package/dist/lib/browser/index.mjs.map +3 -3
  70. package/dist/lib/browser/meta.json +1 -1
  71. package/dist/lib/browser/{operation-resolver-SIRQT36Z.mjs → operation-resolver-D4LHB4D4.mjs} +95 -115
  72. package/dist/lib/browser/operation-resolver-D4LHB4D4.mjs.map +7 -0
  73. package/dist/lib/browser/{react-root-PI7VTZUZ.mjs → react-root-ARQTOU44.mjs} +9 -9
  74. package/dist/lib/browser/react-root-ARQTOU44.mjs.map +7 -0
  75. package/dist/lib/browser/{react-surface-BPE7VWI7.mjs → react-surface-TO4KE77V.mjs} +97 -115
  76. package/dist/lib/browser/react-surface-TO4KE77V.mjs.map +7 -0
  77. package/dist/lib/browser/repair-NUVEV4AK.mjs +31 -0
  78. package/dist/lib/browser/repair-NUVEV4AK.mjs.map +7 -0
  79. package/dist/lib/browser/{settings-ZS2AQ73E.mjs → settings-RUDP2Q56.mjs} +6 -5
  80. package/dist/lib/browser/settings-RUDP2Q56.mjs.map +7 -0
  81. package/dist/lib/browser/{spaces-ready-OQDGWUOS.mjs → spaces-ready-B2GYL5IN.mjs} +15 -14
  82. package/dist/lib/browser/spaces-ready-B2GYL5IN.mjs.map +7 -0
  83. package/dist/lib/browser/{state-7YZQB2KY.mjs → state-I6JDZCDE.mjs} +8 -8
  84. package/dist/lib/browser/state-I6JDZCDE.mjs.map +7 -0
  85. package/dist/lib/browser/types/index.mjs +2 -2
  86. package/dist/lib/node-esm/CollectionArticle-JGVNBX66.mjs +112 -0
  87. package/dist/lib/node-esm/CollectionArticle-JGVNBX66.mjs.map +7 -0
  88. package/dist/lib/node-esm/CollectionSection-BI66Y34F.mjs +24 -0
  89. package/dist/lib/node-esm/CollectionSection-BI66Y34F.mjs.map +7 -0
  90. package/dist/lib/node-esm/CreateObjectDialog-GCAWIXTK.mjs +143 -0
  91. package/dist/lib/node-esm/CreateObjectDialog-GCAWIXTK.mjs.map +7 -0
  92. package/dist/lib/node-esm/CreateSpaceDialog-J47M5FPQ.mjs +65 -0
  93. package/dist/lib/node-esm/CreateSpaceDialog-J47M5FPQ.mjs.map +7 -0
  94. package/dist/lib/node-esm/InlineSyncStatus-BLD57LB5.mjs +54 -0
  95. package/dist/lib/node-esm/InlineSyncStatus-BLD57LB5.mjs.map +7 -0
  96. package/dist/lib/node-esm/JoinDialog-XCOYKSHA.mjs +116 -0
  97. package/dist/lib/node-esm/JoinDialog-XCOYKSHA.mjs.map +7 -0
  98. package/dist/lib/node-esm/MembersContainer-4PV3Z4BA.mjs +258 -0
  99. package/dist/lib/node-esm/MembersContainer-4PV3Z4BA.mjs.map +7 -0
  100. package/dist/lib/node-esm/MenuFooter-PXG2GV6A.mjs +38 -0
  101. package/dist/lib/node-esm/MenuFooter-PXG2GV6A.mjs.map +7 -0
  102. package/dist/lib/node-esm/ObjectCardStack-DXBIXQI3.mjs +65 -0
  103. package/dist/lib/node-esm/ObjectCardStack-DXBIXQI3.mjs.map +7 -0
  104. package/dist/lib/node-esm/ObjectDetails-F3JBIK5E.mjs +44 -0
  105. package/dist/lib/node-esm/ObjectDetails-F3JBIK5E.mjs.map +7 -0
  106. package/dist/lib/node-esm/ObjectRenamePopover-BRPKVNVF.mjs +71 -0
  107. package/dist/lib/node-esm/ObjectRenamePopover-BRPKVNVF.mjs.map +7 -0
  108. package/dist/lib/node-esm/{RecordArticle-SSV74Z46.mjs → RecordArticle-XUIT25PP.mjs} +23 -18
  109. package/dist/lib/node-esm/RecordArticle-XUIT25PP.mjs.map +7 -0
  110. package/dist/lib/node-esm/SchemaContainer-5G4R3Z6O.mjs +50 -0
  111. package/dist/lib/node-esm/SchemaContainer-5G4R3Z6O.mjs.map +7 -0
  112. package/dist/lib/node-esm/SmallPresenceLive-4K7RJS74.mjs +10 -0
  113. package/dist/lib/node-esm/SmallPresenceLive-4K7RJS74.mjs.map +7 -0
  114. package/dist/lib/node-esm/SpacePluginSettings-PENV4GHL.mjs +60 -0
  115. package/dist/lib/node-esm/SpacePluginSettings-PENV4GHL.mjs.map +7 -0
  116. package/dist/lib/node-esm/SpacePresence-H3VZWFJV.mjs +13 -0
  117. package/dist/lib/node-esm/SpacePresence-H3VZWFJV.mjs.map +7 -0
  118. package/dist/lib/node-esm/SpaceRenamePopover-XEMTI4PU.mjs +63 -0
  119. package/dist/lib/node-esm/SpaceRenamePopover-XEMTI4PU.mjs.map +7 -0
  120. package/dist/lib/node-esm/SpaceSettingsContainer-WI4D7RWA.mjs +243 -0
  121. package/dist/lib/node-esm/SpaceSettingsContainer-WI4D7RWA.mjs.map +7 -0
  122. package/dist/lib/node-esm/SyncStatus-TPCFGM4S.mjs +142 -0
  123. package/dist/lib/node-esm/SyncStatus-TPCFGM4S.mjs.map +7 -0
  124. package/dist/lib/node-esm/ViewEditor-CUQVNM2H.mjs +114 -0
  125. package/dist/lib/node-esm/ViewEditor-CUQVNM2H.mjs.map +7 -0
  126. package/dist/lib/node-esm/app-graph-builder-WTM6SSX7.mjs +1204 -0
  127. package/dist/lib/node-esm/app-graph-builder-WTM6SSX7.mjs.map +7 -0
  128. package/dist/lib/node-esm/{app-graph-serializer-WJ2TIQG6.mjs → app-graph-serializer-RT2RQTV2.mjs} +11 -10
  129. package/dist/lib/node-esm/app-graph-serializer-RT2RQTV2.mjs.map +7 -0
  130. package/dist/lib/node-esm/chunk-2KM3ZHSP.mjs +577 -0
  131. package/dist/lib/node-esm/chunk-2KM3ZHSP.mjs.map +7 -0
  132. package/dist/lib/node-esm/{chunk-JOBIWCBC.mjs → chunk-2OLR2ZKH.mjs} +13 -12
  133. package/dist/lib/node-esm/chunk-2OLR2ZKH.mjs.map +7 -0
  134. package/dist/lib/node-esm/chunk-5KTTTTEX.mjs +20 -0
  135. package/dist/lib/node-esm/{chunk-CVXULIYC.mjs.map → chunk-5KTTTTEX.mjs.map} +1 -1
  136. package/dist/lib/node-esm/{chunk-SL4BJSUG.mjs → chunk-63N5JJXI.mjs} +2 -2
  137. package/dist/lib/node-esm/{chunk-SL4BJSUG.mjs.map → chunk-63N5JJXI.mjs.map} +1 -1
  138. package/dist/lib/node-esm/chunk-EDC2RUJU.mjs +169 -0
  139. package/dist/lib/node-esm/chunk-EDC2RUJU.mjs.map +7 -0
  140. package/dist/lib/node-esm/{chunk-MPL6NHQX.mjs → chunk-EVNSLSQS.mjs} +74 -105
  141. package/dist/lib/node-esm/chunk-EVNSLSQS.mjs.map +7 -0
  142. package/dist/lib/node-esm/chunk-GEGWQVZX.mjs +78 -0
  143. package/dist/lib/node-esm/chunk-GEGWQVZX.mjs.map +7 -0
  144. package/dist/lib/node-esm/chunk-IV7VKVGC.mjs +117 -0
  145. package/dist/lib/node-esm/chunk-IV7VKVGC.mjs.map +7 -0
  146. package/dist/lib/node-esm/{chunk-2SW6S2BB.mjs → chunk-RYQQXNI7.mjs} +37 -12
  147. package/dist/lib/node-esm/chunk-RYQQXNI7.mjs.map +7 -0
  148. package/dist/lib/node-esm/{chunk-HREWB23G.mjs → chunk-XYLDAH5C.mjs} +3 -3
  149. package/dist/lib/node-esm/cli/index.mjs +34 -32
  150. package/dist/lib/node-esm/cli/index.mjs.map +3 -3
  151. package/dist/lib/node-esm/{identity-created-2SJABVJD.mjs → identity-created-U5LGULVL.mjs} +5 -5
  152. package/dist/lib/node-esm/identity-created-U5LGULVL.mjs.map +7 -0
  153. package/dist/lib/node-esm/index.mjs +99 -155
  154. package/dist/lib/node-esm/index.mjs.map +3 -3
  155. package/dist/lib/node-esm/meta.json +1 -1
  156. package/dist/lib/node-esm/{operation-resolver-ZE3XJL5J.mjs → operation-resolver-IL2AHNPN.mjs} +95 -115
  157. package/dist/lib/node-esm/operation-resolver-IL2AHNPN.mjs.map +7 -0
  158. package/dist/lib/node-esm/{react-root-KUXM33JI.mjs → react-root-ZGMTYSXL.mjs} +9 -9
  159. package/dist/lib/node-esm/react-root-ZGMTYSXL.mjs.map +7 -0
  160. package/dist/lib/node-esm/{react-surface-STCQKUZ4.mjs → react-surface-LK26ZXWC.mjs} +97 -115
  161. package/dist/lib/node-esm/react-surface-LK26ZXWC.mjs.map +7 -0
  162. package/dist/lib/node-esm/{repair-G3ZW3VG3.mjs → repair-LRZHFPSJ.mjs} +6 -25
  163. package/dist/lib/node-esm/repair-LRZHFPSJ.mjs.map +7 -0
  164. package/dist/lib/node-esm/{settings-PVI2VG56.mjs → settings-3EKSEAAG.mjs} +6 -5
  165. package/dist/lib/node-esm/settings-3EKSEAAG.mjs.map +7 -0
  166. package/dist/lib/node-esm/{spaces-ready-R744OHQG.mjs → spaces-ready-QK3EHBOS.mjs} +15 -14
  167. package/dist/lib/node-esm/spaces-ready-QK3EHBOS.mjs.map +7 -0
  168. package/dist/lib/node-esm/{state-XE5YGPHM.mjs → state-W36RRYUO.mjs} +8 -8
  169. package/dist/lib/node-esm/state-W36RRYUO.mjs.map +7 -0
  170. package/dist/lib/node-esm/types/index.mjs +2 -2
  171. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  172. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +2 -2
  173. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -1
  174. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts +33 -0
  175. package/dist/types/src/capabilities/app-graph-builder/extensions/collections.d.ts.map +1 -0
  176. package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts +19 -0
  177. package/dist/types/src/capabilities/app-graph-builder/extensions/companions.d.ts.map +1 -0
  178. package/dist/types/src/capabilities/app-graph-builder/extensions/index.d.ts +6 -0
  179. package/dist/types/src/capabilities/app-graph-builder/extensions/index.d.ts.map +1 -0
  180. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts +12 -0
  181. package/dist/types/src/capabilities/app-graph-builder/extensions/settings.d.ts.map +1 -0
  182. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts +57 -0
  183. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.d.ts.map +1 -0
  184. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.test.d.ts +2 -0
  185. package/dist/types/src/capabilities/app-graph-builder/extensions/shared.test.d.ts.map +1 -0
  186. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts +24 -0
  187. package/dist/types/src/capabilities/app-graph-builder/extensions/spaces.d.ts.map +1 -0
  188. package/dist/types/src/capabilities/app-graph-builder/extensions/types.d.ts +38 -0
  189. package/dist/types/src/capabilities/app-graph-builder/extensions/types.d.ts.map +1 -0
  190. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +1 -1
  191. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -1
  192. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts +2 -2
  193. package/dist/types/src/capabilities/app-graph-serializer/app-graph-serializer.d.ts.map +1 -1
  194. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts +1 -1
  195. package/dist/types/src/capabilities/app-graph-serializer/index.d.ts.map +1 -1
  196. package/dist/types/src/capabilities/identity-created/identity-created.d.ts +1 -1
  197. package/dist/types/src/capabilities/operation-resolver/index.d.ts +1 -1
  198. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -1
  199. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +2 -2
  200. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -1
  201. package/dist/types/src/capabilities/react-root/react-root.d.ts +1 -1
  202. package/dist/types/src/capabilities/react-root/react-root.d.ts.map +1 -1
  203. package/dist/types/src/capabilities/react-surface/index.d.ts +1 -1
  204. package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -1
  205. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +2 -2
  206. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -1
  207. package/dist/types/src/capabilities/repair/repair.d.ts +1 -1
  208. package/dist/types/src/capabilities/repair/repair.d.ts.map +1 -1
  209. package/dist/types/src/capabilities/settings/index.d.ts +1 -1
  210. package/dist/types/src/capabilities/settings/index.d.ts.map +1 -1
  211. package/dist/types/src/capabilities/settings/settings.d.ts +4 -3
  212. package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -1
  213. package/dist/types/src/capabilities/spaces-ready/spaces-ready.d.ts +1 -1
  214. package/dist/types/src/capabilities/spaces-ready/spaces-ready.d.ts.map +1 -1
  215. package/dist/types/src/capabilities/state/state.d.ts +1 -1
  216. package/dist/types/src/capabilities/state/state.d.ts.map +1 -1
  217. package/dist/types/src/cli/commands/database/add.d.ts +0 -1
  218. package/dist/types/src/cli/commands/database/add.d.ts.map +1 -1
  219. package/dist/types/src/cli/plugin.d.ts.map +1 -1
  220. package/dist/types/src/components/AwaitingObject/AwaitingObject.d.ts.map +1 -0
  221. package/dist/types/src/components/AwaitingObject/index.d.ts +2 -0
  222. package/dist/types/src/components/AwaitingObject/index.d.ts.map +1 -0
  223. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +12 -5
  224. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  225. package/dist/types/src/components/CreateDialog/index.d.ts +1 -2
  226. package/dist/types/src/components/CreateDialog/index.d.ts.map +1 -1
  227. package/dist/types/src/components/ObjectDetails/BaseObjectSettings.d.ts.map +1 -1
  228. package/dist/types/src/components/ObjectDetails/BaseObjectSettings.stories.d.ts +68 -14
  229. package/dist/types/src/components/ObjectDetails/BaseObjectSettings.stories.d.ts.map +1 -1
  230. package/dist/types/src/components/ObjectDetails/index.d.ts +2 -2
  231. package/dist/types/src/components/ObjectDetails/index.d.ts.map +1 -1
  232. package/dist/types/src/components/ObjectForm/ObjectForm.d.ts.map +1 -0
  233. package/dist/types/src/components/ObjectForm/index.d.ts +2 -0
  234. package/dist/types/src/components/ObjectForm/index.d.ts.map +1 -0
  235. package/dist/types/src/components/SyncStatus/index.d.ts +2 -2
  236. package/dist/types/src/components/SyncStatus/index.d.ts.map +1 -1
  237. package/dist/types/src/components/index.d.ts +2 -23
  238. package/dist/types/src/components/index.d.ts.map +1 -1
  239. package/dist/types/src/containers/CollectionArticle/CollectionArticle.d.ts +8 -0
  240. package/dist/types/src/containers/CollectionArticle/CollectionArticle.d.ts.map +1 -0
  241. package/dist/types/src/containers/CollectionArticle/index.d.ts +3 -0
  242. package/dist/types/src/containers/CollectionArticle/index.d.ts.map +1 -0
  243. package/dist/types/src/containers/CollectionSection/CollectionSection.d.ts +5 -0
  244. package/dist/types/src/containers/CollectionSection/CollectionSection.d.ts.map +1 -0
  245. package/dist/types/src/containers/CollectionSection/index.d.ts +3 -0
  246. package/dist/types/src/containers/CollectionSection/index.d.ts.map +1 -0
  247. package/dist/types/src/{components/CreateDialog → containers/CreateObjectDialog}/CreateObjectDialog.d.ts +5 -3
  248. package/dist/types/src/containers/CreateObjectDialog/CreateObjectDialog.d.ts.map +1 -0
  249. package/dist/types/src/containers/CreateObjectDialog/index.d.ts +3 -0
  250. package/dist/types/src/containers/CreateObjectDialog/index.d.ts.map +1 -0
  251. package/dist/types/src/containers/CreateSpaceDialog/CreateSpaceDialog.d.ts.map +1 -0
  252. package/dist/types/src/containers/CreateSpaceDialog/index.d.ts +3 -0
  253. package/dist/types/src/containers/CreateSpaceDialog/index.d.ts.map +1 -0
  254. package/dist/types/src/containers/InlineSyncStatus/InlineSyncStatus.d.ts.map +1 -0
  255. package/dist/types/src/containers/InlineSyncStatus/index.d.ts +3 -0
  256. package/dist/types/src/containers/InlineSyncStatus/index.d.ts.map +1 -0
  257. package/dist/types/src/{components → containers}/JoinDialog/JoinDialog.d.ts.map +1 -1
  258. package/dist/types/src/containers/JoinDialog/index.d.ts +3 -0
  259. package/dist/types/src/containers/JoinDialog/index.d.ts.map +1 -0
  260. package/dist/types/src/{components → containers}/MembersContainer/MembersContainer.d.ts.map +1 -1
  261. package/dist/types/src/containers/MembersContainer/index.d.ts +3 -0
  262. package/dist/types/src/containers/MembersContainer/index.d.ts.map +1 -0
  263. package/dist/types/src/containers/MenuFooter/MenuFooter.d.ts.map +1 -0
  264. package/dist/types/src/containers/MenuFooter/index.d.ts +3 -0
  265. package/dist/types/src/containers/MenuFooter/index.d.ts.map +1 -0
  266. package/dist/types/src/{components → containers}/ObjectCardStack/ObjectCardStack.d.ts +4 -1
  267. package/dist/types/src/containers/ObjectCardStack/ObjectCardStack.d.ts.map +1 -0
  268. package/dist/types/src/{components → containers}/ObjectCardStack/index.d.ts.map +1 -1
  269. package/dist/types/src/{components → containers}/ObjectDetails/ObjectDetails.d.ts +2 -1
  270. package/dist/types/src/containers/ObjectDetails/ObjectDetails.d.ts.map +1 -0
  271. package/dist/types/src/containers/ObjectDetails/index.d.ts +3 -0
  272. package/dist/types/src/containers/ObjectDetails/index.d.ts.map +1 -0
  273. package/dist/types/src/{components → containers}/ObjectRenamePopover/ObjectRenamePopover.d.ts.map +1 -1
  274. package/dist/types/src/containers/ObjectRenamePopover/index.d.ts +3 -0
  275. package/dist/types/src/containers/ObjectRenamePopover/index.d.ts.map +1 -0
  276. package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts +4 -0
  277. package/dist/types/src/containers/RecordArticle/RecordArticle.d.ts.map +1 -0
  278. package/dist/types/src/containers/RecordArticle/index.d.ts +3 -0
  279. package/dist/types/src/containers/RecordArticle/index.d.ts.map +1 -0
  280. package/dist/types/src/containers/SchemaContainer/SchemaContainer.d.ts.map +1 -0
  281. package/dist/types/src/containers/SchemaContainer/index.d.ts +3 -0
  282. package/dist/types/src/containers/SchemaContainer/index.d.ts.map +1 -0
  283. package/dist/types/src/containers/SmallPresenceLive/index.d.ts +2 -0
  284. package/dist/types/src/containers/SmallPresenceLive/index.d.ts.map +1 -0
  285. package/dist/types/src/{components → containers/SpacePluginSettings}/SpacePluginSettings.d.ts +1 -1
  286. package/dist/types/src/containers/SpacePluginSettings/SpacePluginSettings.d.ts.map +1 -0
  287. package/dist/types/src/containers/SpacePluginSettings/index.d.ts +3 -0
  288. package/dist/types/src/containers/SpacePluginSettings/index.d.ts.map +1 -0
  289. package/dist/types/src/{components → containers}/SpacePresence/SpacePresence.d.ts.map +1 -1
  290. package/dist/types/src/{components → containers}/SpacePresence/SpacePresence.stories.d.ts +67 -13
  291. package/dist/types/src/{components → containers}/SpacePresence/SpacePresence.stories.d.ts.map +1 -1
  292. package/dist/types/src/containers/SpacePresence/index.d.ts +3 -0
  293. package/dist/types/src/containers/SpacePresence/index.d.ts.map +1 -0
  294. package/dist/types/src/{components → containers}/SpaceRenamePopover/SpaceRenamePopover.d.ts.map +1 -1
  295. package/dist/types/src/containers/SpaceRenamePopover/index.d.ts +3 -0
  296. package/dist/types/src/containers/SpaceRenamePopover/index.d.ts.map +1 -0
  297. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.d.ts +10 -0
  298. package/dist/types/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.d.ts.map +1 -0
  299. package/dist/types/src/{components/SpaceSettings → containers/SpaceSettingsContainer}/SpaceSettingsContainer.stories.d.ts +71 -14
  300. package/dist/types/src/{components/SpaceSettings → containers/SpaceSettingsContainer}/SpaceSettingsContainer.stories.d.ts.map +1 -1
  301. package/dist/types/src/containers/SpaceSettingsContainer/index.d.ts +3 -0
  302. package/dist/types/src/containers/SpaceSettingsContainer/index.d.ts.map +1 -0
  303. package/dist/types/src/{components → containers}/SyncStatus/SyncStatus.d.ts.map +1 -1
  304. package/dist/types/src/{components → containers}/SyncStatus/SyncStatus.stories.d.ts +67 -13
  305. package/dist/types/src/{components → containers}/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  306. package/dist/types/src/containers/SyncStatus/index.d.ts +3 -0
  307. package/dist/types/src/containers/SyncStatus/index.d.ts.map +1 -0
  308. package/dist/types/src/{components → containers/ViewEditor}/ViewEditor.d.ts +1 -1
  309. package/dist/types/src/containers/ViewEditor/ViewEditor.d.ts.map +1 -0
  310. package/dist/types/src/containers/ViewEditor/index.d.ts +3 -0
  311. package/dist/types/src/containers/ViewEditor/index.d.ts.map +1 -0
  312. package/dist/types/src/containers/index.d.ts +23 -0
  313. package/dist/types/src/containers/index.d.ts.map +1 -0
  314. package/dist/types/src/helpers/query.d.ts.map +1 -1
  315. package/dist/types/src/hooks/useActiveSpace.d.ts.map +1 -1
  316. package/dist/types/src/index.d.ts +1 -1
  317. package/dist/types/src/index.d.ts.map +1 -1
  318. package/dist/types/src/translations.d.ts +67 -13
  319. package/dist/types/src/translations.d.ts.map +1 -1
  320. package/dist/types/src/types/capabilities.d.ts +1 -1
  321. package/dist/types/src/types/capabilities.d.ts.map +1 -1
  322. package/dist/types/src/types/events.d.ts.map +1 -1
  323. package/dist/types/src/types/form.d.ts +0 -2
  324. package/dist/types/src/types/form.d.ts.map +1 -1
  325. package/dist/types/src/types/types.d.ts +63 -124
  326. package/dist/types/src/types/types.d.ts.map +1 -1
  327. package/dist/types/src/util.d.ts +6 -121
  328. package/dist/types/src/util.d.ts.map +1 -1
  329. package/dist/types/tsconfig.tsbuildinfo +1 -1
  330. package/package.json +67 -66
  331. package/src/SpacePlugin.ts +75 -63
  332. package/src/capabilities/app-graph-builder/app-graph-builder.ts +17 -602
  333. package/src/capabilities/app-graph-builder/extensions/collections.ts +351 -0
  334. package/src/capabilities/app-graph-builder/extensions/companions.ts +80 -0
  335. package/src/capabilities/app-graph-builder/extensions/index.ts +9 -0
  336. package/src/capabilities/app-graph-builder/extensions/settings.ts +60 -0
  337. package/src/capabilities/app-graph-builder/extensions/shared.test.ts +112 -0
  338. package/src/capabilities/app-graph-builder/extensions/shared.ts +171 -0
  339. package/src/capabilities/app-graph-builder/extensions/spaces.ts +338 -0
  340. package/src/capabilities/app-graph-builder/extensions/types.ts +421 -0
  341. package/src/capabilities/app-graph-serializer/app-graph-serializer.ts +6 -5
  342. package/src/capabilities/identity-created/identity-created.ts +4 -4
  343. package/src/capabilities/operation-resolver/operation-resolver.ts +97 -94
  344. package/src/capabilities/react-root/react-root.tsx +3 -3
  345. package/src/capabilities/react-surface/react-surface.tsx +78 -98
  346. package/src/capabilities/repair/repair.ts +3 -28
  347. package/src/capabilities/settings/settings.ts +3 -2
  348. package/src/capabilities/spaces-ready/spaces-ready.ts +8 -7
  349. package/src/capabilities/state/state.ts +7 -5
  350. package/src/cli/commands/database/add.ts +8 -10
  351. package/src/cli/commands/database/query/query.ts +1 -1
  352. package/src/cli/commands/database/remove.ts +2 -2
  353. package/src/cli/commands/database/stats.ts +1 -1
  354. package/src/cli/plugin.ts +34 -27
  355. package/src/components/{AwaitingObject.tsx → AwaitingObject/AwaitingObject.tsx} +6 -5
  356. package/src/components/AwaitingObject/index.ts +5 -0
  357. package/src/components/CreateDialog/CreateObjectPanel.tsx +86 -111
  358. package/src/components/CreateDialog/index.ts +1 -2
  359. package/src/components/ObjectDetails/BaseObjectSettings.stories.tsx +10 -10
  360. package/src/components/ObjectDetails/BaseObjectSettings.tsx +5 -5
  361. package/src/components/ObjectDetails/ForeignKeys.tsx +1 -1
  362. package/src/components/ObjectDetails/index.ts +2 -3
  363. package/src/components/{ObjectCardStack → ObjectForm}/ObjectForm.tsx +4 -4
  364. package/src/components/{JoinDialog → ObjectForm}/index.ts +1 -1
  365. package/src/components/SyncStatus/index.ts +2 -2
  366. package/src/components/index.ts +2 -18
  367. package/src/constants.ts +5 -5
  368. package/src/containers/CollectionArticle/CollectionArticle.tsx +133 -0
  369. package/src/containers/CollectionArticle/index.ts +7 -0
  370. package/src/{components → containers/CollectionSection}/CollectionSection.tsx +4 -4
  371. package/src/containers/CollectionSection/index.ts +7 -0
  372. package/src/{components/CreateDialog → containers/CreateObjectDialog}/CreateObjectDialog.tsx +62 -42
  373. package/src/containers/CreateObjectDialog/index.ts +6 -0
  374. package/src/{components/CreateDialog → containers/CreateSpaceDialog}/CreateSpaceDialog.tsx +6 -6
  375. package/src/containers/CreateSpaceDialog/index.ts +7 -0
  376. package/src/{components/SyncStatus → containers/InlineSyncStatus}/InlineSyncStatus.tsx +8 -19
  377. package/src/containers/InlineSyncStatus/index.ts +7 -0
  378. package/src/{components → containers}/JoinDialog/JoinDialog.tsx +10 -9
  379. package/src/containers/JoinDialog/index.ts +6 -0
  380. package/src/{components → containers}/MembersContainer/MembersContainer.tsx +50 -53
  381. package/src/containers/MembersContainer/index.ts +7 -0
  382. package/src/{components → containers/MenuFooter}/MenuFooter.tsx +5 -5
  383. package/src/containers/MenuFooter/index.ts +7 -0
  384. package/src/containers/ObjectCardStack/ObjectCardStack.tsx +82 -0
  385. package/src/containers/ObjectDetails/ObjectDetails.tsx +36 -0
  386. package/src/containers/ObjectDetails/index.ts +7 -0
  387. package/src/{components → containers}/ObjectRenamePopover/ObjectRenamePopover.tsx +4 -4
  388. package/src/containers/ObjectRenamePopover/index.ts +7 -0
  389. package/src/{components → containers/RecordArticle}/RecordArticle.tsx +29 -27
  390. package/src/containers/RecordArticle/index.ts +7 -0
  391. package/src/{components → containers/SchemaContainer}/SchemaContainer.tsx +22 -18
  392. package/src/containers/SchemaContainer/index.ts +7 -0
  393. package/src/containers/SmallPresenceLive/index.ts +5 -0
  394. package/src/containers/SpacePluginSettings/SpacePluginSettings.tsx +65 -0
  395. package/src/containers/SpacePluginSettings/index.ts +7 -0
  396. package/src/{components → containers}/SpacePresence/SpacePresence.stories.tsx +2 -2
  397. package/src/{components → containers}/SpacePresence/SpacePresence.tsx +11 -22
  398. package/src/containers/SpacePresence/index.ts +6 -0
  399. package/src/{components → containers}/SpaceRenamePopover/SpaceRenamePopover.tsx +4 -4
  400. package/src/containers/SpaceRenamePopover/index.ts +7 -0
  401. package/src/{components/SpaceSettings → containers/SpaceSettingsContainer}/SpaceSettingsContainer.stories.tsx +3 -3
  402. package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.tsx +202 -0
  403. package/src/containers/SpaceSettingsContainer/index.ts +7 -0
  404. package/src/{components → containers}/SyncStatus/SyncStatus.stories.tsx +2 -2
  405. package/src/{components → containers}/SyncStatus/SyncStatus.tsx +5 -7
  406. package/src/containers/SyncStatus/index.ts +7 -0
  407. package/src/{components → containers/ViewEditor}/ViewEditor.tsx +11 -10
  408. package/src/containers/ViewEditor/index.ts +7 -0
  409. package/src/containers/index.ts +28 -0
  410. package/src/helpers/query.test.ts +1 -1
  411. package/src/helpers/query.ts +20 -7
  412. package/src/hooks/useActiveSpace.ts +8 -7
  413. package/src/hooks/useInputSurfaceLookup.tsx +3 -3
  414. package/src/index.ts +2 -1
  415. package/src/meta.ts +1 -1
  416. package/src/translations.ts +30 -4
  417. package/src/types/capabilities.ts +8 -8
  418. package/src/types/events.ts +7 -6
  419. package/src/types/form.ts +1 -8
  420. package/src/types/types.ts +61 -76
  421. package/src/util.ts +82 -0
  422. package/dist/lib/browser/CollectionArticle-XPNA6EHZ.mjs +0 -129
  423. package/dist/lib/browser/CollectionArticle-XPNA6EHZ.mjs.map +0 -7
  424. package/dist/lib/browser/ObjectCardStack-TWHN6C2Y.mjs +0 -148
  425. package/dist/lib/browser/ObjectCardStack-TWHN6C2Y.mjs.map +0 -7
  426. package/dist/lib/browser/ObjectDetails-GEDIISKK.mjs +0 -142
  427. package/dist/lib/browser/ObjectDetails-GEDIISKK.mjs.map +0 -7
  428. package/dist/lib/browser/RecordArticle-W57QE7QV.mjs.map +0 -7
  429. package/dist/lib/browser/app-graph-builder-SJHTZXZF.mjs +0 -523
  430. package/dist/lib/browser/app-graph-builder-SJHTZXZF.mjs.map +0 -7
  431. package/dist/lib/browser/app-graph-serializer-7AT7QMSK.mjs.map +0 -7
  432. package/dist/lib/browser/chunk-3X2EA2OA.mjs +0 -1898
  433. package/dist/lib/browser/chunk-3X2EA2OA.mjs.map +0 -7
  434. package/dist/lib/browser/chunk-4WZUGLQQ.mjs.map +0 -7
  435. package/dist/lib/browser/chunk-ASV6DYFH.mjs +0 -19
  436. package/dist/lib/browser/chunk-CCRSHECL.mjs.map +0 -7
  437. package/dist/lib/browser/chunk-SUI34XSA.mjs +0 -772
  438. package/dist/lib/browser/chunk-SUI34XSA.mjs.map +0 -7
  439. package/dist/lib/browser/chunk-ZT2VPYRM.mjs.map +0 -7
  440. package/dist/lib/browser/identity-created-VCFYLSBB.mjs.map +0 -7
  441. package/dist/lib/browser/operation-resolver-SIRQT36Z.mjs.map +0 -7
  442. package/dist/lib/browser/react-root-PI7VTZUZ.mjs.map +0 -7
  443. package/dist/lib/browser/react-surface-BPE7VWI7.mjs.map +0 -7
  444. package/dist/lib/browser/repair-CJG26D52.mjs +0 -50
  445. package/dist/lib/browser/repair-CJG26D52.mjs.map +0 -7
  446. package/dist/lib/browser/settings-ZS2AQ73E.mjs.map +0 -7
  447. package/dist/lib/browser/spaces-ready-OQDGWUOS.mjs.map +0 -7
  448. package/dist/lib/browser/state-7YZQB2KY.mjs.map +0 -7
  449. package/dist/lib/node-esm/CollectionArticle-WGHNZNO2.mjs +0 -130
  450. package/dist/lib/node-esm/CollectionArticle-WGHNZNO2.mjs.map +0 -7
  451. package/dist/lib/node-esm/ObjectCardStack-C5ZXRKP7.mjs +0 -149
  452. package/dist/lib/node-esm/ObjectCardStack-C5ZXRKP7.mjs.map +0 -7
  453. package/dist/lib/node-esm/ObjectDetails-6ZLDRKCO.mjs +0 -143
  454. package/dist/lib/node-esm/ObjectDetails-6ZLDRKCO.mjs.map +0 -7
  455. package/dist/lib/node-esm/RecordArticle-SSV74Z46.mjs.map +0 -7
  456. package/dist/lib/node-esm/app-graph-builder-HZ3XXDFZ.mjs +0 -524
  457. package/dist/lib/node-esm/app-graph-builder-HZ3XXDFZ.mjs.map +0 -7
  458. package/dist/lib/node-esm/app-graph-serializer-WJ2TIQG6.mjs.map +0 -7
  459. package/dist/lib/node-esm/chunk-2SW6S2BB.mjs.map +0 -7
  460. package/dist/lib/node-esm/chunk-7KMYUWSR.mjs +0 -773
  461. package/dist/lib/node-esm/chunk-7KMYUWSR.mjs.map +0 -7
  462. package/dist/lib/node-esm/chunk-CVXULIYC.mjs +0 -20
  463. package/dist/lib/node-esm/chunk-EYS3L2NO.mjs +0 -1899
  464. package/dist/lib/node-esm/chunk-EYS3L2NO.mjs.map +0 -7
  465. package/dist/lib/node-esm/chunk-JOBIWCBC.mjs.map +0 -7
  466. package/dist/lib/node-esm/chunk-MPL6NHQX.mjs.map +0 -7
  467. package/dist/lib/node-esm/identity-created-2SJABVJD.mjs.map +0 -7
  468. package/dist/lib/node-esm/operation-resolver-ZE3XJL5J.mjs.map +0 -7
  469. package/dist/lib/node-esm/react-root-KUXM33JI.mjs.map +0 -7
  470. package/dist/lib/node-esm/react-surface-STCQKUZ4.mjs.map +0 -7
  471. package/dist/lib/node-esm/repair-G3ZW3VG3.mjs.map +0 -7
  472. package/dist/lib/node-esm/settings-PVI2VG56.mjs.map +0 -7
  473. package/dist/lib/node-esm/spaces-ready-R744OHQG.mjs.map +0 -7
  474. package/dist/lib/node-esm/state-XE5YGPHM.mjs.map +0 -7
  475. package/dist/types/src/components/AwaitingObject.d.ts.map +0 -1
  476. package/dist/types/src/components/CollectionArticle.d.ts +0 -9
  477. package/dist/types/src/components/CollectionArticle.d.ts.map +0 -1
  478. package/dist/types/src/components/CollectionSection.d.ts +0 -5
  479. package/dist/types/src/components/CollectionSection.d.ts.map +0 -1
  480. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +0 -1
  481. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +0 -1604
  482. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +0 -1
  483. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +0 -1
  484. package/dist/types/src/components/JoinDialog/index.d.ts +0 -2
  485. package/dist/types/src/components/JoinDialog/index.d.ts.map +0 -1
  486. package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts +0 -1600
  487. package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts.map +0 -1
  488. package/dist/types/src/components/MembersContainer/index.d.ts +0 -2
  489. package/dist/types/src/components/MembersContainer/index.d.ts.map +0 -1
  490. package/dist/types/src/components/MenuFooter.d.ts.map +0 -1
  491. package/dist/types/src/components/ObjectCardStack/ObjectCardStack.d.ts.map +0 -1
  492. package/dist/types/src/components/ObjectCardStack/ObjectForm.d.ts.map +0 -1
  493. package/dist/types/src/components/ObjectDetails/ObjectDetails.d.ts.map +0 -1
  494. package/dist/types/src/components/ObjectRenamePopover/index.d.ts +0 -2
  495. package/dist/types/src/components/ObjectRenamePopover/index.d.ts.map +0 -1
  496. package/dist/types/src/components/RecordArticle.d.ts +0 -5
  497. package/dist/types/src/components/RecordArticle.d.ts.map +0 -1
  498. package/dist/types/src/components/RecordArticle.stories.d.ts +0 -1600
  499. package/dist/types/src/components/RecordArticle.stories.d.ts.map +0 -1
  500. package/dist/types/src/components/SchemaContainer.d.ts.map +0 -1
  501. package/dist/types/src/components/SpacePluginSettings.d.ts.map +0 -1
  502. package/dist/types/src/components/SpacePresence/index.d.ts +0 -2
  503. package/dist/types/src/components/SpacePresence/index.d.ts.map +0 -1
  504. package/dist/types/src/components/SpaceRenamePopover/index.d.ts +0 -2
  505. package/dist/types/src/components/SpaceRenamePopover/index.d.ts.map +0 -1
  506. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts +0 -7
  507. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +0 -1
  508. package/dist/types/src/components/SpaceSettings/index.d.ts +0 -2
  509. package/dist/types/src/components/SpaceSettings/index.d.ts.map +0 -1
  510. package/dist/types/src/components/SyncStatus/InlineSyncStatus.d.ts.map +0 -1
  511. package/dist/types/src/components/ViewEditor.d.ts.map +0 -1
  512. package/src/components/CollectionArticle.tsx +0 -158
  513. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +0 -91
  514. package/src/components/MembersContainer/MembersContainer.stories.tsx +0 -56
  515. package/src/components/MembersContainer/index.ts +0 -5
  516. package/src/components/ObjectCardStack/ObjectCardStack.tsx +0 -67
  517. package/src/components/ObjectDetails/ObjectDetails.tsx +0 -32
  518. package/src/components/ObjectRenamePopover/index.ts +0 -5
  519. package/src/components/RecordArticle.stories.tsx +0 -115
  520. package/src/components/SpacePluginSettings.tsx +0 -62
  521. package/src/components/SpacePresence/index.ts +0 -5
  522. package/src/components/SpaceRenamePopover/index.ts +0 -5
  523. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +0 -220
  524. package/src/components/SpaceSettings/index.ts +0 -5
  525. package/src/util.tsx +0 -779
  526. /package/dist/lib/browser/{chunk-AWVAX26X.mjs.map → chunk-SSTUPFZ2.mjs.map} +0 -0
  527. /package/dist/lib/node-esm/{chunk-HREWB23G.mjs.map → chunk-XYLDAH5C.mjs.map} +0 -0
  528. /package/dist/types/src/components/{AwaitingObject.d.ts → AwaitingObject/AwaitingObject.d.ts} +0 -0
  529. /package/dist/types/src/components/{ObjectCardStack → ObjectForm}/ObjectForm.d.ts +0 -0
  530. /package/dist/types/src/{components/CreateDialog → containers/CreateSpaceDialog}/CreateSpaceDialog.d.ts +0 -0
  531. /package/dist/types/src/{components/SyncStatus → containers/InlineSyncStatus}/InlineSyncStatus.d.ts +0 -0
  532. /package/dist/types/src/{components → containers}/JoinDialog/JoinDialog.d.ts +0 -0
  533. /package/dist/types/src/{components → containers}/MembersContainer/MembersContainer.d.ts +0 -0
  534. /package/dist/types/src/{components → containers/MenuFooter}/MenuFooter.d.ts +0 -0
  535. /package/dist/types/src/{components → containers}/ObjectCardStack/index.d.ts +0 -0
  536. /package/dist/types/src/{components → containers}/ObjectRenamePopover/ObjectRenamePopover.d.ts +0 -0
  537. /package/dist/types/src/{components → containers/SchemaContainer}/SchemaContainer.d.ts +0 -0
  538. /package/dist/types/src/{components → containers}/SpacePresence/SpacePresence.d.ts +0 -0
  539. /package/dist/types/src/{components → containers}/SpaceRenamePopover/SpaceRenamePopover.d.ts +0 -0
  540. /package/dist/types/src/{components → containers}/SyncStatus/SyncStatus.d.ts +0 -0
  541. /package/src/{components → containers}/ObjectCardStack/index.ts +0 -0
@@ -0,0 +1,1204 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ getActiveSpace
4
+ } from "./chunk-2OLR2ZKH.mjs";
5
+ import {
6
+ SHARED,
7
+ getSpaceDisplayName
8
+ } from "./chunk-GEGWQVZX.mjs";
9
+ import {
10
+ SPACE_TYPE,
11
+ SpaceCapabilities,
12
+ SpaceOperation
13
+ } from "./chunk-EVNSLSQS.mjs";
14
+ import {
15
+ meta
16
+ } from "./chunk-63N5JJXI.mjs";
17
+
18
+ // src/capabilities/app-graph-builder/app-graph-builder.ts
19
+ import * as Effect6 from "effect/Effect";
20
+ import { Capability as Capability4 } from "@dxos/app-framework";
21
+ import { AppCapabilities as AppCapabilities4 } from "@dxos/app-toolkit";
22
+
23
+ // src/capabilities/app-graph-builder/extensions/spaces.ts
24
+ import * as Effect from "effect/Effect";
25
+ import { Capability } from "@dxos/app-framework";
26
+ import { AppCapabilities } from "@dxos/app-toolkit";
27
+ import { SpaceState as SpaceState2 } from "@dxos/client/echo";
28
+ import { Filter as Filter2, Obj as Obj2 } from "@dxos/echo";
29
+ import { AtomObj as AtomObj2, AtomQuery as AtomQuery2 } from "@dxos/echo-atom";
30
+ import { Migrations as Migrations2 } from "@dxos/migrations";
31
+ import { Operation } from "@dxos/operation";
32
+ import { ClientCapabilities } from "@dxos/plugin-client";
33
+ import { CreateAtom, Graph, GraphBuilder, Node, NodeMatcher } from "@dxos/plugin-graph";
34
+ import { Expando } from "@dxos/schema";
35
+
36
+ // src/capabilities/app-graph-builder/extensions/shared.ts
37
+ import * as Option from "effect/Option";
38
+ import { SpaceState, isSpace } from "@dxos/client/echo";
39
+ import { Filter, Obj } from "@dxos/echo";
40
+ import { AtomObj, AtomQuery } from "@dxos/echo-atom";
41
+ import { Migrations } from "@dxos/migrations";
42
+ import { ViewAnnotation, getTypenameFromQuery } from "@dxos/schema";
43
+ import { ACCEPT_ECHO_CLASS, CACHEABLE_PROPS, CAN_DROP_OBJECT, blockInstructionCache, buildCollectionPartials, collectionPartialsCache, createFactory, createObjectNode, getAcceptPersistenceKey, getCollectionGraphNodePartials, getDynamicLabel, rearrangeCache } from "@dxos/app-toolkit";
44
+ var TYPES_SECTION_TYPE = `${meta.id}.types`;
45
+ var COLLECTIONS_SECTION_TYPE = `${meta.id}.collections`;
46
+ var TYPE_COLLECTION_TYPE = `${meta.id}.type-collection`;
47
+ var STATIC_SCHEMA_TYPE = `${meta.id}.static-schema`;
48
+ var META_NS = {
49
+ ns: meta.id
50
+ };
51
+ var BLOCK_REORDER_ABOVE = (_source, instruction) => instruction.type === "reorder-above";
52
+ var CAN_DROP_SPACE = (source) => Obj.isObject(source.item.data) || isSpace(source.item.data);
53
+ var whenSpace = (node) => node.type === SPACE_TYPE && isSpace(node.data) ? Option.some(node.data) : Option.none();
54
+ var spaceActionsCache = /* @__PURE__ */ new Map();
55
+ var spaceRearrangeCache = /* @__PURE__ */ new Map();
56
+ var ADD_VIEW_TO_SCHEMA_LABEL = [
57
+ "add view to schema label",
58
+ META_NS
59
+ ];
60
+ var COPY_LINK_LABEL = [
61
+ "copy link label",
62
+ META_NS
63
+ ];
64
+ var CREATE_OBJECT_IN_COLLECTION_LABEL = [
65
+ "create object in collection label",
66
+ META_NS
67
+ ];
68
+ var CREATE_OBJECT_IN_SPACE_LABEL = [
69
+ "create object in space label",
70
+ META_NS
71
+ ];
72
+ var EXPOSE_OBJECT_LABEL = [
73
+ "expose object label",
74
+ META_NS
75
+ ];
76
+ var MIGRATE_SPACE_LABEL = [
77
+ "migrate space label",
78
+ META_NS
79
+ ];
80
+ var REMOVE_FROM_COLLECTION_LABEL = [
81
+ "remove from collection label",
82
+ META_NS
83
+ ];
84
+ var RENAME_SPACE_LABEL = [
85
+ "rename space label",
86
+ META_NS
87
+ ];
88
+ var SETTINGS_PANEL_LABEL = [
89
+ "settings panel label",
90
+ META_NS
91
+ ];
92
+ var SNAPSHOT_BY_SCHEMA_LABEL = [
93
+ "snapshot by schema label",
94
+ META_NS
95
+ ];
96
+ var checkPendingMigration = (space) => {
97
+ return space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION || space.state.get() === SpaceState.SPACE_READY && !!Migrations.versionProperty && space.properties[Migrations.versionProperty] !== Migrations.targetVersion;
98
+ };
99
+ var downloadBlob = async (blob, filename) => {
100
+ const url = URL.createObjectURL(blob);
101
+ const anchor = document.createElement("a");
102
+ anchor.href = url;
103
+ anchor.download = filename;
104
+ document.body.appendChild(anchor);
105
+ anchor.click();
106
+ document.body.removeChild(anchor);
107
+ URL.revokeObjectURL(url);
108
+ };
109
+ var buildViewIndex = (get, space, schemas) => {
110
+ const viewSchemas = schemas.filter((schema) => ViewAnnotation.get(schema).pipe(Option.getOrElse(() => false)));
111
+ const viewsByTypename = /* @__PURE__ */ new Map();
112
+ if (viewSchemas.length > 0) {
113
+ const filter = Filter.or(...viewSchemas.map((schema) => Filter.type(schema)));
114
+ const viewObjects = get(AtomQuery.make(space.db, filter));
115
+ for (const viewObject of viewObjects) {
116
+ const viewSnapshot = get(AtomObj.make(viewObject));
117
+ const viewRef = viewSnapshot.view;
118
+ const viewTarget = viewRef ? get(AtomObj.make(viewRef)) : void 0;
119
+ const typename = getTypenameFromQuery(viewTarget?.query?.ast);
120
+ if (typename) {
121
+ const existing = viewsByTypename.get(typename) ?? [];
122
+ existing.push(viewObject);
123
+ viewsByTypename.set(typename, existing);
124
+ }
125
+ }
126
+ }
127
+ return {
128
+ typenamesWithViews: new Set(viewsByTypename.keys()),
129
+ getViewsForTypename: (typename) => viewsByTypename.get(typename) ?? []
130
+ };
131
+ };
132
+
133
+ // src/capabilities/app-graph-builder/extensions/spaces.ts
134
+ var createSpaceExtensions = Effect.fnUntraced(function* () {
135
+ const capabilities = yield* Capability.Service;
136
+ return yield* Effect.all([
137
+ GraphBuilder.createExtension({
138
+ id: `${meta.id}.primary-actions`,
139
+ position: "hoist",
140
+ match: NodeMatcher.whenRoot,
141
+ actions: () => Effect.succeed([
142
+ {
143
+ id: SpaceOperation.OpenCreateSpace.meta.key,
144
+ data: () => Operation.invoke(SpaceOperation.OpenCreateSpace),
145
+ properties: {
146
+ label: [
147
+ "create space label",
148
+ {
149
+ ns: meta.id
150
+ }
151
+ ],
152
+ icon: "ph--plus--regular",
153
+ testId: "spacePlugin.createSpace",
154
+ disposition: "menu"
155
+ }
156
+ },
157
+ {
158
+ id: SpaceOperation.Join.meta.key,
159
+ data: () => Operation.invoke(SpaceOperation.Join, {}),
160
+ properties: {
161
+ label: [
162
+ "join space label",
163
+ {
164
+ ns: meta.id
165
+ }
166
+ ],
167
+ icon: "ph--sign-in--regular",
168
+ testId: "spacePlugin.joinSpace",
169
+ disposition: "menu"
170
+ }
171
+ },
172
+ {
173
+ id: SpaceOperation.OpenMembers.meta.key,
174
+ data: Effect.fnUntraced(function* () {
175
+ const client = yield* Capability.get(ClientCapabilities.Client);
176
+ const space = getActiveSpace(capabilities) ?? client.spaces.default;
177
+ yield* Operation.invoke(SpaceOperation.OpenMembers, {
178
+ space
179
+ });
180
+ }),
181
+ properties: {
182
+ label: [
183
+ "share space label",
184
+ {
185
+ ns: meta.id
186
+ }
187
+ ],
188
+ icon: "ph--users--regular",
189
+ testId: "spacePlugin.shareSpace",
190
+ keyBinding: {
191
+ macos: "meta+.",
192
+ windows: "alt+."
193
+ }
194
+ }
195
+ },
196
+ {
197
+ id: SpaceOperation.OpenSettings.meta.key,
198
+ data: Effect.fnUntraced(function* () {
199
+ const client = yield* Capability.get(ClientCapabilities.Client);
200
+ const space = getActiveSpace(capabilities) ?? client.spaces.default;
201
+ yield* Operation.invoke(SpaceOperation.OpenSettings, {
202
+ space
203
+ });
204
+ }),
205
+ properties: {
206
+ label: [
207
+ "open current space settings label",
208
+ {
209
+ ns: meta.id
210
+ }
211
+ ],
212
+ icon: "ph--faders--regular",
213
+ keyBinding: {
214
+ macos: "meta+shift+,",
215
+ windows: "ctrl+shift+,"
216
+ }
217
+ }
218
+ }
219
+ ])
220
+ }),
221
+ GraphBuilder.createExtension({
222
+ id: `${meta.id}.spaces`,
223
+ match: NodeMatcher.whenRoot,
224
+ connector: (_node, get) => {
225
+ const client = capabilities.get(ClientCapabilities.Client);
226
+ const stateAtom = capabilities.get(SpaceCapabilities.State);
227
+ const ephemeralAtom = capabilities.get(SpaceCapabilities.EphemeralState);
228
+ const spacesAtom = CreateAtom.fromObservable(client.spaces);
229
+ const isReadyAtom = CreateAtom.fromObservable(client.spaces.isReady);
230
+ const spaces = get(spacesAtom);
231
+ const isReady = get(isReadyAtom);
232
+ if (!spaces || !isReady) {
233
+ return Effect.succeed([]);
234
+ }
235
+ const settingsAtom = capabilities.get(SpaceCapabilities.Settings);
236
+ const settings = get(settingsAtom);
237
+ const state = get(stateAtom);
238
+ const ephemeralState = get(ephemeralAtom);
239
+ try {
240
+ const [spacesOrder] = get(AtomQuery2.make(client.spaces.default.db, Filter2.type(Expando.Expando, {
241
+ key: SHARED
242
+ })));
243
+ const { graph } = capabilities.get(AppCapabilities.AppGraph);
244
+ const spacesOrderSnapshot = spacesOrder ? get(AtomObj2.make(spacesOrder)) : void 0;
245
+ const order = spacesOrderSnapshot?.order ?? [];
246
+ const orderMap = new Map(order.map((id, index) => [
247
+ id,
248
+ index
249
+ ]));
250
+ const spaceStates = spaces.map((space) => get(CreateAtom.fromObservable(space.state)));
251
+ spaces.forEach((space) => {
252
+ if (space.state.get() === SpaceState2.SPACE_READY) {
253
+ get(AtomObj2.make(space.properties));
254
+ }
255
+ });
256
+ return Effect.succeed([
257
+ ...spaces.filter((space) => orderMap.has(space.id)).sort((sortA, sortB) => orderMap.get(sortA.id) - orderMap.get(sortB.id)),
258
+ ...spaces.filter((space) => !orderMap.has(space.id))
259
+ ].filter((space, idx) => settings?.showHidden ? true : spaceStates[idx] !== SpaceState2.SPACE_INACTIVE).map((space) => constructSpaceNode({
260
+ space,
261
+ navigable: ephemeralState.navigableCollections,
262
+ personal: space === client.spaces.default,
263
+ namesCache: state.spaceNames,
264
+ graph,
265
+ spacesOrder
266
+ })));
267
+ } catch {
268
+ return Effect.succeed([]);
269
+ }
270
+ }
271
+ }),
272
+ GraphBuilder.createExtension({
273
+ id: `${meta.id}.actions`,
274
+ match: whenSpace,
275
+ actions: (space, get) => {
276
+ const [client] = get(capabilities.atom(ClientCapabilities.Client));
277
+ const ephemeralAtom = capabilities.get(SpaceCapabilities.EphemeralState);
278
+ const ephemeralState = get(ephemeralAtom);
279
+ if (!client) {
280
+ return Effect.succeed([]);
281
+ }
282
+ return Effect.succeed(constructSpaceActions({
283
+ space,
284
+ migrating: ephemeralState.sdkMigrationRunning[space.id]
285
+ }));
286
+ }
287
+ })
288
+ ]);
289
+ });
290
+ var constructSpaceNode = ({ space, navigable = false, personal, namesCache, graph, spacesOrder }) => {
291
+ const hasPendingMigration = checkPendingMigration(space);
292
+ let onRearrange;
293
+ if (graph && spacesOrder) {
294
+ onRearrange = spaceRearrangeCache.get(space.id);
295
+ if (!onRearrange) {
296
+ onRearrange = (nextOrder) => {
297
+ Graph.sortEdges(graph, Node.RootId, "outbound", nextOrder.map(({ id }) => id));
298
+ Obj2.change(spacesOrder, (mutableOrder) => {
299
+ mutableOrder.order = nextOrder.map(({ id }) => id);
300
+ });
301
+ };
302
+ spaceRearrangeCache.set(space.id, onRearrange);
303
+ }
304
+ }
305
+ return {
306
+ id: space.id,
307
+ type: SPACE_TYPE,
308
+ cacheable: CACHEABLE_PROPS,
309
+ data: space,
310
+ properties: {
311
+ label: getSpaceDisplayName(space, {
312
+ personal,
313
+ namesCache
314
+ }),
315
+ description: space.state.get() === SpaceState2.SPACE_READY && space.properties.description,
316
+ hue: space.state.get() === SpaceState2.SPACE_READY && space.properties.hue,
317
+ icon: space.state.get() === SpaceState2.SPACE_READY && space.properties.icon ? `ph--${space.properties.icon}--regular` : void 0,
318
+ iconHue: space.state.get() === SpaceState2.SPACE_READY && space.properties.iconHue,
319
+ disabled: !navigable || space.state.get() !== SpaceState2.SPACE_READY || hasPendingMigration,
320
+ disposition: "workspace",
321
+ testId: "spacePlugin.space",
322
+ onRearrange,
323
+ canDrop: CAN_DROP_SPACE
324
+ },
325
+ nodes: [
326
+ {
327
+ id: "settings",
328
+ type: `${meta.id}.settings`,
329
+ data: null,
330
+ properties: {
331
+ label: SETTINGS_PANEL_LABEL,
332
+ icon: "ph--faders--regular",
333
+ disposition: "alternate-tree"
334
+ }
335
+ }
336
+ ]
337
+ };
338
+ };
339
+ var constructSpaceActions = ({ space, migrating }) => {
340
+ const state = space.state.get();
341
+ const hasPendingMigration = checkPendingMigration(space);
342
+ const isMigrating = migrating || Migrations2.running(space);
343
+ const cached = spaceActionsCache.get(space.id);
344
+ if (cached && cached.state === state && cached.hasPendingMigration === hasPendingMigration && cached.migrating === isMigrating) {
345
+ return cached.actions;
346
+ }
347
+ const actions = [];
348
+ if (hasPendingMigration) {
349
+ actions.push({
350
+ id: SpaceOperation.Migrate.meta.key,
351
+ type: Node.ActionGroupType,
352
+ data: () => Operation.invoke(SpaceOperation.Migrate, {
353
+ space
354
+ }),
355
+ properties: {
356
+ label: MIGRATE_SPACE_LABEL,
357
+ icon: "ph--database--regular",
358
+ disposition: "list-item-primary",
359
+ disabled: isMigrating
360
+ }
361
+ });
362
+ }
363
+ if (state === SpaceState2.SPACE_READY && !hasPendingMigration) {
364
+ actions.push({
365
+ id: SpaceOperation.OpenCreateObject.meta.key,
366
+ type: Node.ActionType,
367
+ data: () => Operation.invoke(SpaceOperation.OpenCreateObject, {
368
+ target: space.db
369
+ }),
370
+ properties: {
371
+ label: CREATE_OBJECT_IN_SPACE_LABEL,
372
+ icon: "ph--plus--regular",
373
+ disposition: "list-item-primary",
374
+ testId: "spacePlugin.createObject"
375
+ }
376
+ }, {
377
+ id: SpaceOperation.Rename.meta.key,
378
+ type: Node.ActionType,
379
+ data: (params) => Operation.invoke(SpaceOperation.Rename, {
380
+ space,
381
+ caller: `${params?.caller}:${params?.parent?.id}`
382
+ }),
383
+ properties: {
384
+ label: RENAME_SPACE_LABEL,
385
+ icon: "ph--pencil-simple-line--regular",
386
+ keyBinding: {
387
+ macos: "shift+F6",
388
+ windows: "shift+F6"
389
+ }
390
+ }
391
+ });
392
+ }
393
+ spaceActionsCache.set(space.id, {
394
+ state,
395
+ hasPendingMigration,
396
+ migrating: isMigrating,
397
+ actions
398
+ });
399
+ return actions;
400
+ };
401
+
402
+ // src/capabilities/app-graph-builder/extensions/types.ts
403
+ import * as Effect2 from "effect/Effect";
404
+ import * as Match from "effect/Match";
405
+ import * as Option2 from "effect/Option";
406
+ import * as Schema from "effect/Schema";
407
+ import { Capability as Capability2 } from "@dxos/app-framework";
408
+ import { AppCapabilities as AppCapabilities2, LayoutOperation, Segments } from "@dxos/app-toolkit";
409
+ import { SpaceState as SpaceState3, isSpace as isSpace2 } from "@dxos/client/echo";
410
+ import { Collection, Filter as Filter3, Obj as Obj3, Query, Type } from "@dxos/echo";
411
+ import { EntityKind, SystemTypeAnnotation, getTypeAnnotation } from "@dxos/echo/internal";
412
+ import { AtomObj as AtomObj3, AtomQuery as AtomQuery3 } from "@dxos/echo-atom";
413
+ import { Operation as Operation2 } from "@dxos/operation";
414
+ import { ClientCapabilities as ClientCapabilities2 } from "@dxos/plugin-client";
415
+ import { CreateAtom as CreateAtom2, GraphBuilder as GraphBuilder2, Node as Node2 } from "@dxos/plugin-graph";
416
+ import { ViewAnnotation as ViewAnnotation2 } from "@dxos/schema";
417
+ import { createFilename, isNonNullable } from "@dxos/util";
418
+ var createTypeExtensions = Effect2.fnUntraced(function* () {
419
+ const capabilities = yield* Capability2.Service;
420
+ const resolve = (_get) => (typename) => capabilities.getAll(AppCapabilities2.Metadata).find(({ id }) => id === typename)?.metadata ?? {};
421
+ return yield* Effect2.all([
422
+ // Types section virtual node under each space.
423
+ GraphBuilder2.createExtension({
424
+ id: `${meta.id}.types-section`,
425
+ match: whenSpace,
426
+ connector: (space, get) => {
427
+ const spaceState = get(CreateAtom2.fromObservable(space.state));
428
+ if (spaceState !== SpaceState3.SPACE_READY) {
429
+ return Effect2.succeed([]);
430
+ }
431
+ return Effect2.succeed([
432
+ {
433
+ id: Segments.types,
434
+ type: TYPES_SECTION_TYPE,
435
+ data: null,
436
+ properties: {
437
+ label: [
438
+ "types section label",
439
+ {
440
+ ns: meta.id
441
+ }
442
+ ],
443
+ icon: "ph--shapes--regular",
444
+ iconHue: "neutral",
445
+ role: "branch",
446
+ testId: "spacePlugin.typesSection",
447
+ draggable: false,
448
+ droppable: false,
449
+ space
450
+ }
451
+ }
452
+ ]);
453
+ }
454
+ }),
455
+ // Schema nodes under the Types virtual node.
456
+ GraphBuilder2.createExtension({
457
+ id: `${meta.id}.types`,
458
+ match: (node) => {
459
+ const space = isSpace2(node.properties.space) ? node.properties.space : void 0;
460
+ return node.type === TYPES_SECTION_TYPE && space ? Option2.some(space) : Option2.none();
461
+ },
462
+ connector: (space, get) => {
463
+ get(AtomQuery3.make(space.db, Filter3.type(Type.PersistentType)));
464
+ get(capabilities.atom(AppCapabilities2.Schema));
465
+ const allSchemas = space.db.schemaRegistry.query({
466
+ location: [
467
+ "runtime",
468
+ "database"
469
+ ]
470
+ }).runSync();
471
+ const userSchemas = allSchemas.filter((schema) => {
472
+ if (getTypeAnnotation(schema)?.kind === EntityKind.Relation) {
473
+ return false;
474
+ }
475
+ if (SystemTypeAnnotation.get(schema).pipe(Option2.getOrElse(() => false))) {
476
+ return false;
477
+ }
478
+ if (ViewAnnotation2.get(schema).pipe(Option2.getOrElse(() => false))) {
479
+ return false;
480
+ }
481
+ if (Type.getTypename(schema) === Collection.Collection.typename) {
482
+ return false;
483
+ }
484
+ return true;
485
+ });
486
+ const viewIndex = buildViewIndex(get, space, allSchemas);
487
+ const visibleSchemas = userSchemas.filter((schema) => {
488
+ if (Type.isMutable(schema)) {
489
+ return true;
490
+ }
491
+ const typename = Type.getTypename(schema);
492
+ const objects = get(AtomQuery3.make(space.db, Filter3.typename(typename)));
493
+ return objects.length > 0 || viewIndex.typenamesWithViews.has(typename);
494
+ });
495
+ return Effect2.succeed(visibleSchemas.map((schema) => createSchemaNode({
496
+ schema,
497
+ space,
498
+ resolve: resolve(get),
499
+ get
500
+ })));
501
+ }
502
+ }),
503
+ // {All} virtual node + view objects under each schema node.
504
+ GraphBuilder2.createExtension({
505
+ id: `${meta.id}.schema-children`,
506
+ match: (node) => {
507
+ const space = isSpace2(node.properties.space) ? node.properties.space : void 0;
508
+ return space && (Obj3.instanceOf(Type.PersistentType, node.data) || Schema.isSchema(node.data)) ? Option2.some({
509
+ space,
510
+ schema: node.data
511
+ }) : Option2.none();
512
+ },
513
+ connector: ({ space, schema }, get) => {
514
+ const client = get(capabilities.atom(ClientCapabilities2.Client)).at(0);
515
+ const schemas = client?.graph.schemaRegistry.query({
516
+ location: [
517
+ "runtime"
518
+ ]
519
+ }).runSync() ?? [];
520
+ const typename = Schema.isSchema(schema) ? Type.getTypename(schema) : schema.typename;
521
+ const allNode = {
522
+ id: "all",
523
+ type: TYPE_COLLECTION_TYPE,
524
+ data: {
525
+ space,
526
+ typename
527
+ },
528
+ properties: {
529
+ label: [
530
+ "type collection all label",
531
+ {
532
+ ns: meta.id
533
+ }
534
+ ],
535
+ icon: "ph--list--regular",
536
+ iconHue: "neutral",
537
+ role: "branch",
538
+ testId: `spacePlugin.typeCollectionAll.${typename}`,
539
+ selectable: false,
540
+ draggable: false,
541
+ droppable: false,
542
+ childrenDroppable: false,
543
+ blockInstruction: BLOCK_REORDER_ABOVE
544
+ }
545
+ };
546
+ const viewIndex = buildViewIndex(get, space, schemas);
547
+ const viewNodes = viewIndex.getViewsForTypename(typename).map((object) => createObjectNode({
548
+ db: space.db,
549
+ object,
550
+ resolve: resolve(get),
551
+ droppable: false
552
+ })).filter(isNonNullable);
553
+ return Effect2.succeed([
554
+ allNode,
555
+ ...viewNodes
556
+ ]);
557
+ }
558
+ }),
559
+ // Objects of the schema type under the {All} node.
560
+ GraphBuilder2.createExtension({
561
+ id: `${meta.id}.type-collection-objects`,
562
+ match: (node) => {
563
+ if (node.type !== TYPE_COLLECTION_TYPE || !node.data?.space || !node.data?.typename) {
564
+ return Option2.none();
565
+ }
566
+ return Option2.some({
567
+ space: node.data.space,
568
+ typename: node.data.typename
569
+ });
570
+ },
571
+ connector: ({ space, typename }, get) => {
572
+ const objects = get(AtomQuery3.make(space.db, Filter3.typename(typename)));
573
+ return Effect2.succeed(objects.map((object) => {
574
+ get(AtomObj3.make(object));
575
+ return createObjectNode({
576
+ db: space.db,
577
+ object,
578
+ resolve: resolve(get),
579
+ droppable: false
580
+ });
581
+ }).filter(isNonNullable));
582
+ }
583
+ }),
584
+ // Actions for schema nodes.
585
+ GraphBuilder2.createExtension({
586
+ id: `${meta.id}.schema-actions`,
587
+ match: (node) => {
588
+ const space = isSpace2(node.properties.space) ? node.properties.space : void 0;
589
+ return space && Schema.isSchema(node.data) ? Option2.some({
590
+ space,
591
+ schema: node.data
592
+ }) : Option2.none();
593
+ },
594
+ actions: ({ space, schema }, get) => {
595
+ const client = get(capabilities.atom(ClientCapabilities2.Client)).at(0);
596
+ const schemas = client?.graph.schemaRegistry.query({
597
+ location: [
598
+ "runtime"
599
+ ]
600
+ }).runSync() ?? [];
601
+ const targetTypename = Type.getTypename(schema);
602
+ const viewIndex = buildViewIndex(get, space, schemas);
603
+ const deletable = Type.isMutable(schema) && viewIndex.getViewsForTypename(targetTypename).length === 0;
604
+ return Effect2.succeed(createSchemaActions({
605
+ schema,
606
+ space,
607
+ deletable,
608
+ resolve: resolve(get)
609
+ }));
610
+ }
611
+ })
612
+ ]);
613
+ });
614
+ var createSchemaNode = ({ schema, space, resolve, get }) => {
615
+ const typename = Type.getTypename(schema);
616
+ const metadata = resolve(typename);
617
+ const { label, nodeId } = Match.value(schema).pipe(Match.when(Type.isMutable, (mutableSchema) => {
618
+ const persistentSchema = mutableSchema.persistentSchema;
619
+ const snapshot = get(AtomObj3.make(persistentSchema));
620
+ return {
621
+ label: snapshot.name || [
622
+ "object name placeholder",
623
+ {
624
+ ns: Type.PersistentType.typename
625
+ }
626
+ ],
627
+ nodeId: typename
628
+ };
629
+ }), Match.orElse(() => ({
630
+ label: getDynamicLabel("typename label", typename, {
631
+ count: 2,
632
+ default: typename
633
+ }),
634
+ nodeId: typename
635
+ })));
636
+ const icon = Type.isMutable(schema) ? "ph--cube--regular" : metadata.icon ?? "ph--placeholder--regular";
637
+ const iconHue = Type.isMutable(schema) ? "neutral" : metadata.iconHue;
638
+ return {
639
+ id: nodeId,
640
+ type: STATIC_SCHEMA_TYPE,
641
+ data: schema,
642
+ properties: {
643
+ label,
644
+ icon,
645
+ iconHue,
646
+ role: "branch",
647
+ testId: `spacePlugin.schemaNode.${typename}`,
648
+ selectable: false,
649
+ draggable: false,
650
+ droppable: false,
651
+ childrenDroppable: false,
652
+ space
653
+ }
654
+ };
655
+ };
656
+ var createSchemaActions = ({ schema, space, deletable, resolve }) => {
657
+ const typename = Type.getTypename(schema);
658
+ const metadata = resolve(typename);
659
+ const createObjectFn = metadata.createObject;
660
+ const inputSchema = metadata.inputSchema;
661
+ const actions = [
662
+ ...createObjectFn ? [
663
+ {
664
+ id: SpaceOperation.OpenCreateObject.meta.key,
665
+ type: Node2.ActionType,
666
+ data: Effect2.fnUntraced(function* () {
667
+ if (inputSchema) {
668
+ yield* Operation2.invoke(SpaceOperation.OpenCreateObject, {
669
+ target: space.db,
670
+ typename
671
+ });
672
+ } else {
673
+ const createdObject = yield* createObjectFn({}, {
674
+ db: space.db
675
+ });
676
+ const addResult = yield* Operation2.invoke(SpaceOperation.AddObject, {
677
+ target: space.db,
678
+ hidden: true,
679
+ object: createdObject
680
+ });
681
+ if (addResult.subject) {
682
+ yield* Operation2.invoke(LayoutOperation.Open, {
683
+ subject: addResult.subject
684
+ });
685
+ }
686
+ }
687
+ }),
688
+ properties: {
689
+ label: getDynamicLabel("add object label", typename),
690
+ icon: "ph--plus--regular",
691
+ disposition: "list-item-primary",
692
+ testId: "spacePlugin.createObject"
693
+ }
694
+ }
695
+ ] : [],
696
+ {
697
+ id: `${SpaceOperation.AddObject.meta.key}-view`,
698
+ type: Node2.ActionType,
699
+ data: () => Operation2.invoke(SpaceOperation.OpenCreateObject, {
700
+ target: space.db,
701
+ views: true,
702
+ initialFormValues: {
703
+ typename: Type.getTypename(schema)
704
+ }
705
+ }),
706
+ properties: {
707
+ label: ADD_VIEW_TO_SCHEMA_LABEL,
708
+ icon: "ph--circles-three-plus--regular",
709
+ disposition: "list-item",
710
+ testId: "spacePlugin.addViewToSchema"
711
+ }
712
+ },
713
+ {
714
+ id: SpaceOperation.RenameObject.meta.key,
715
+ type: Node2.ActionType,
716
+ data: (params) => Type.isMutable(schema) ? Operation2.invoke(SpaceOperation.RenameObject, {
717
+ object: schema.persistentSchema,
718
+ caller: `${params?.caller}:${params?.parent?.id}`
719
+ }) : Effect2.fail(new Error("Cannot rename immutable schema")),
720
+ properties: {
721
+ label: getDynamicLabel("rename object label", Type.getTypename(Type.PersistentType)),
722
+ icon: "ph--pencil-simple-line--regular",
723
+ disabled: !Type.isMutable(schema),
724
+ disposition: "list-item",
725
+ testId: "spacePlugin.renameObject"
726
+ }
727
+ },
728
+ {
729
+ id: SpaceOperation.RemoveObjects.meta.key,
730
+ type: Node2.ActionType,
731
+ data: () => Type.isMutable(schema) ? Operation2.invoke(SpaceOperation.RemoveObjects, {
732
+ objects: [
733
+ schema.persistentSchema
734
+ ]
735
+ }) : Effect2.succeed(void 0),
736
+ properties: {
737
+ label: getDynamicLabel("delete object label", Type.getTypename(Type.PersistentType)),
738
+ icon: "ph--trash--regular",
739
+ disposition: "list-item",
740
+ disabled: !deletable,
741
+ testId: "spacePlugin.deleteObject"
742
+ }
743
+ },
744
+ {
745
+ id: SpaceOperation.Snapshot.meta.key,
746
+ type: Node2.ActionType,
747
+ data: Effect2.fnUntraced(function* () {
748
+ const result = yield* Operation2.invoke(SpaceOperation.Snapshot, {
749
+ db: space.db,
750
+ query: Query.select(Filter3.type(schema)).ast
751
+ });
752
+ if (result.snapshot) {
753
+ yield* Effect2.tryPromise(() => downloadBlob(result.snapshot, createFilename({
754
+ parts: [
755
+ space.id,
756
+ Type.getTypename(schema)
757
+ ],
758
+ ext: "json"
759
+ })));
760
+ }
761
+ }),
762
+ properties: {
763
+ label: SNAPSHOT_BY_SCHEMA_LABEL,
764
+ icon: "ph--camera--regular",
765
+ disposition: "list-item"
766
+ }
767
+ }
768
+ ];
769
+ return actions;
770
+ };
771
+
772
+ // src/capabilities/app-graph-builder/extensions/collections.ts
773
+ import * as Effect3 from "effect/Effect";
774
+ import * as Option3 from "effect/Option";
775
+ import { Capabilities, Capability as Capability3 } from "@dxos/app-framework";
776
+ import { AppCapabilities as AppCapabilities3, LayoutOperation as LayoutOperation2, Segments as Segments2, getObjectPathFromObject } from "@dxos/app-toolkit";
777
+ import { SpaceState as SpaceState4, getSpace, isSpace as isSpace3 } from "@dxos/client/echo";
778
+ import { Collection as Collection2, Obj as Obj4, Type as Type2 } from "@dxos/echo";
779
+ import { AtomObj as AtomObj4 } from "@dxos/echo-atom";
780
+ import { invariant } from "@dxos/invariant";
781
+ import { Operation as Operation3 } from "@dxos/operation";
782
+ import { CreateAtom as CreateAtom3, Graph as Graph2, GraphBuilder as GraphBuilder3, Node as Node3 } from "@dxos/plugin-graph";
783
+ import { isNonNullable as isNonNullable2 } from "@dxos/util";
784
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/capabilities/app-graph-builder/extensions/collections.ts";
785
+ var createCollectionExtensions = Effect3.fnUntraced(function* ({ shareableLinkOrigin }) {
786
+ const capabilities = yield* Capability3.Service;
787
+ const resolve = (get) => (typename) => capabilities.getAll(AppCapabilities3.Metadata).find(({ id }) => id === typename)?.metadata ?? {};
788
+ return yield* Effect3.all([
789
+ // Collections section virtual node under each space.
790
+ GraphBuilder3.createExtension({
791
+ id: `${meta.id}.collections-section`,
792
+ match: whenSpace,
793
+ connector: (space, get) => {
794
+ const spaceState = get(CreateAtom3.fromObservable(space.state));
795
+ if (spaceState !== SpaceState4.SPACE_READY) {
796
+ return Effect3.succeed([]);
797
+ }
798
+ const propertiesSnapshot = get(AtomObj4.make(space.properties));
799
+ const collectionRef = propertiesSnapshot[Collection2.Collection.typename];
800
+ if (collectionRef) {
801
+ get(AtomObj4.make(collectionRef));
802
+ }
803
+ const rootCollection = collectionRef?.target;
804
+ const collectionPartials = rootCollection ? getCollectionGraphNodePartials({
805
+ collection: rootCollection,
806
+ db: space.db,
807
+ resolve: resolve(get)
808
+ }) : void 0;
809
+ return Effect3.succeed([
810
+ {
811
+ id: Segments2.collections,
812
+ type: COLLECTIONS_SECTION_TYPE,
813
+ data: null,
814
+ properties: {
815
+ label: [
816
+ "collections section label",
817
+ {
818
+ ns: meta.id
819
+ }
820
+ ],
821
+ icon: "ph--folder--regular",
822
+ iconHue: "neutral",
823
+ role: "branch",
824
+ position: "hoist",
825
+ testId: "spacePlugin.collectionsSection",
826
+ draggable: false,
827
+ droppable: false,
828
+ space,
829
+ ...collectionPartials
830
+ }
831
+ }
832
+ ]);
833
+ }
834
+ }),
835
+ // Root collection objects under the Collections virtual node.
836
+ GraphBuilder3.createExtension({
837
+ id: `${meta.id}.collections`,
838
+ match: (node) => {
839
+ const space = isSpace3(node.properties.space) ? node.properties.space : void 0;
840
+ return node.type === COLLECTIONS_SECTION_TYPE && space ? Option3.some(space) : Option3.none();
841
+ },
842
+ connector: (space, get) => {
843
+ const ephemeralAtom = capabilities.get(SpaceCapabilities.EphemeralState);
844
+ const ephemeralState = get(ephemeralAtom);
845
+ const propertiesSnapshot = get(AtomObj4.make(space.properties));
846
+ const collectionRef = propertiesSnapshot[Collection2.Collection.typename];
847
+ const collection = collectionRef ? get(AtomObj4.make(collectionRef)) : void 0;
848
+ if (!collection) {
849
+ return Effect3.succeed([]);
850
+ }
851
+ const rawRefs = collection.objects ?? [];
852
+ const objects = rawRefs.map((ref) => {
853
+ get(AtomObj4.make(ref));
854
+ return ref.target;
855
+ }).filter(isNonNullable2);
856
+ return Effect3.succeed(objects.map((object) => createObjectNode({
857
+ db: space.db,
858
+ object,
859
+ resolve: resolve(get),
860
+ navigable: ephemeralState.navigableCollections,
861
+ parentCollection: collectionRef?.target
862
+ })).filter(isNonNullable2));
863
+ }
864
+ }),
865
+ // Children of Collection.Collection nodes.
866
+ GraphBuilder3.createExtension({
867
+ id: `${meta.id}.objects`,
868
+ match: (node) => Obj4.instanceOf(Collection2.Collection, node.data) ? Option3.some(node.data) : Option3.none(),
869
+ connector: (collection, get) => {
870
+ const ephemeralAtom = capabilities.get(SpaceCapabilities.EphemeralState);
871
+ const ephemeralState = get(ephemeralAtom);
872
+ const space = getSpace(collection);
873
+ const collectionSnapshot = get(AtomObj4.make(collection));
874
+ const refs = collectionSnapshot.objects ?? [];
875
+ const objects = refs.map((ref) => {
876
+ get(AtomObj4.make(ref));
877
+ return ref.target;
878
+ }).filter(isNonNullable2);
879
+ return Effect3.succeed(objects.map((object) => space && createObjectNode({
880
+ object,
881
+ db: space.db,
882
+ resolve: resolve(get),
883
+ navigable: ephemeralState.navigableCollections,
884
+ parentCollection: collection
885
+ })).filter(isNonNullable2));
886
+ }
887
+ }),
888
+ // Object actions.
889
+ GraphBuilder3.createExtension({
890
+ id: `${meta.id}.object-actions`,
891
+ match: (node) => {
892
+ const space = getSpace(node.data);
893
+ return space && Obj4.isObject(node.data) && Obj4.getTypename(node.data) === node.type ? Option3.some({
894
+ space,
895
+ object: node.data,
896
+ nodeId: node.id
897
+ }) : Option3.none();
898
+ },
899
+ actions: ({ space, object, nodeId }, get) => {
900
+ const deletable = !Obj4.instanceOf(Type2.PersistentType, object);
901
+ const [appGraph] = get(capabilities.atom(AppCapabilities3.AppGraph));
902
+ const ephemeralAtom = capabilities.get(SpaceCapabilities.EphemeralState);
903
+ const ephemeralState = get(ephemeralAtom);
904
+ if (!appGraph) {
905
+ return Effect3.succeed([]);
906
+ }
907
+ const parentId = nodeId.substring(0, nodeId.lastIndexOf("/"));
908
+ const parentNode = Option3.getOrUndefined(Graph2.getNode(appGraph.graph, parentId));
909
+ const parentCollection = parentNode && Obj4.instanceOf(Collection2.Collection, parentNode.data) ? parentNode.data : void 0;
910
+ return Effect3.succeed(constructObjectActions({
911
+ object,
912
+ nodeId,
913
+ resolve: resolve(get),
914
+ deletable,
915
+ navigable: ephemeralState.navigableCollections,
916
+ shareableLinkOrigin,
917
+ parentCollection
918
+ }));
919
+ }
920
+ })
921
+ ]);
922
+ });
923
+ var constructObjectActions = ({ object, nodeId, resolve, deletable = true, navigable = false, shareableLinkOrigin, parentCollection }) => {
924
+ const db = Obj4.getDatabase(object);
925
+ invariant(db, "Database not found", {
926
+ F: __dxlog_file,
927
+ L: 238,
928
+ S: void 0,
929
+ A: [
930
+ "db",
931
+ "'Database not found'"
932
+ ]
933
+ });
934
+ const typename = Obj4.getTypename(object);
935
+ invariant(typename, "Object has no typename", {
936
+ F: __dxlog_file,
937
+ L: 240,
938
+ S: void 0,
939
+ A: [
940
+ "typename",
941
+ "'Object has no typename'"
942
+ ]
943
+ });
944
+ const actions = [
945
+ ...Obj4.instanceOf(Collection2.Collection, object) ? [
946
+ {
947
+ id: SpaceOperation.OpenCreateObject.meta.key,
948
+ type: Node3.ActionType,
949
+ data: () => Operation3.invoke(SpaceOperation.OpenCreateObject, {
950
+ target: object,
951
+ targetNodeId: nodeId
952
+ }),
953
+ properties: {
954
+ label: CREATE_OBJECT_IN_COLLECTION_LABEL,
955
+ icon: "ph--plus--regular",
956
+ disposition: "list-item-primary",
957
+ testId: "spacePlugin.createObject"
958
+ }
959
+ }
960
+ ] : [],
961
+ {
962
+ id: SpaceOperation.RenameObject.meta.key,
963
+ type: Node3.ActionType,
964
+ data: (params) => Operation3.invoke(SpaceOperation.RenameObject, {
965
+ object,
966
+ caller: `${params?.caller}:${params?.parent?.id}`
967
+ }),
968
+ properties: {
969
+ label: getDynamicLabel("rename object label", typename, {
970
+ defaultValue: "Rename"
971
+ }),
972
+ icon: "ph--pencil-simple-line--regular",
973
+ disposition: "list-item",
974
+ testId: "spacePlugin.renameObject"
975
+ }
976
+ },
977
+ ...parentCollection && !Obj4.instanceOf(Collection2.Collection, object) ? [
978
+ {
979
+ id: "remove-from-collection",
980
+ type: Node3.ActionType,
981
+ data: () => Effect3.gen(function* () {
982
+ const index = parentCollection.objects.findIndex((ref) => ref.target === object);
983
+ if (index !== -1) {
984
+ const layout = yield* Capabilities.getAtomValue(AppCapabilities3.Layout);
985
+ const isActive = layout.active.includes(nodeId);
986
+ Obj4.change(parentCollection, (mutable) => {
987
+ mutable.objects.splice(index, 1);
988
+ });
989
+ if (isActive) {
990
+ yield* Operation3.invoke(LayoutOperation2.Open, {
991
+ subject: [
992
+ getObjectPathFromObject(object)
993
+ ]
994
+ });
995
+ }
996
+ }
997
+ }),
998
+ properties: {
999
+ label: REMOVE_FROM_COLLECTION_LABEL,
1000
+ icon: "ph--minus-circle--regular",
1001
+ disposition: "list-item",
1002
+ testId: "spacePlugin.removeFromCollection"
1003
+ }
1004
+ }
1005
+ ] : [],
1006
+ {
1007
+ id: SpaceOperation.RemoveObjects.meta.key,
1008
+ type: Node3.ActionType,
1009
+ data: () => Operation3.invoke(SpaceOperation.RemoveObjects, {
1010
+ objects: [
1011
+ object
1012
+ ],
1013
+ target: parentCollection
1014
+ }),
1015
+ properties: {
1016
+ label: getDynamicLabel("delete object label", typename, {
1017
+ defaultValue: "Delete"
1018
+ }),
1019
+ icon: "ph--trash--regular",
1020
+ disposition: "list-item",
1021
+ disabled: !deletable,
1022
+ testId: "spacePlugin.deleteObject"
1023
+ }
1024
+ },
1025
+ ...navigable || !Obj4.instanceOf(Collection2.Collection, object) ? [
1026
+ {
1027
+ id: "copy-link",
1028
+ type: Node3.ActionType,
1029
+ data: () => Effect3.promise(async () => {
1030
+ const url = `${shareableLinkOrigin}/${db.spaceId}/${Obj4.getDXN(object).toString()}`;
1031
+ await navigator.clipboard.writeText(url);
1032
+ }),
1033
+ properties: {
1034
+ label: COPY_LINK_LABEL,
1035
+ icon: "ph--link--regular",
1036
+ disposition: "list-item",
1037
+ testId: "spacePlugin.copyLink"
1038
+ }
1039
+ }
1040
+ ] : [],
1041
+ {
1042
+ id: LayoutOperation2.Expose.meta.key,
1043
+ type: Node3.ActionType,
1044
+ data: () => Operation3.invoke(LayoutOperation2.Expose, {
1045
+ subject: getObjectPathFromObject(object)
1046
+ }),
1047
+ properties: {
1048
+ label: EXPOSE_OBJECT_LABEL,
1049
+ icon: "ph--eye--regular",
1050
+ disposition: "heading-list-item",
1051
+ testId: "spacePlugin.exposeObject"
1052
+ }
1053
+ }
1054
+ ];
1055
+ return actions;
1056
+ };
1057
+
1058
+ // src/capabilities/app-graph-builder/extensions/companions.ts
1059
+ import * as Effect4 from "effect/Effect";
1060
+ import * as Option4 from "effect/Option";
1061
+ import { COMPANION_PREFIX } from "@dxos/app-toolkit";
1062
+ import { Obj as Obj5 } from "@dxos/echo";
1063
+ import { PLANK_COMPANION_TYPE } from "@dxos/plugin-deck/types";
1064
+ import { GraphBuilder as GraphBuilder4, NodeMatcher as NodeMatcher2 } from "@dxos/plugin-graph";
1065
+ import { ViewAnnotation as ViewAnnotation3 } from "@dxos/schema";
1066
+ var createCompanionExtensions = Effect4.fnUntraced(function* () {
1067
+ return yield* Effect4.all([
1068
+ // Object settings plank companion.
1069
+ GraphBuilder4.createExtension({
1070
+ id: `${meta.id}.settings`,
1071
+ match: NodeMatcher2.whenEchoObjectMatches,
1072
+ connector: (node) => Effect4.succeed([
1073
+ {
1074
+ id: `${COMPANION_PREFIX}settings`,
1075
+ type: PLANK_COMPANION_TYPE,
1076
+ data: "settings",
1077
+ properties: {
1078
+ label: [
1079
+ "object settings label",
1080
+ {
1081
+ ns: meta.id
1082
+ }
1083
+ ],
1084
+ icon: "ph--sliders--regular",
1085
+ disposition: "hidden",
1086
+ position: "fallback"
1087
+ }
1088
+ }
1089
+ ])
1090
+ }),
1091
+ // View selected objects companion.
1092
+ GraphBuilder4.createExtension({
1093
+ id: `${meta.id}.selected-objects`,
1094
+ match: (node) => {
1095
+ if (!Obj5.isObject(node.data)) {
1096
+ return Option4.none();
1097
+ }
1098
+ const schema = Obj5.getSchema(node.data);
1099
+ const isView = Option4.fromNullable(schema).pipe(Option4.flatMap((candidate) => ViewAnnotation3.get(candidate)), Option4.getOrElse(() => false));
1100
+ if (!isView) {
1101
+ return Option4.none();
1102
+ }
1103
+ return Option4.some(node);
1104
+ },
1105
+ connector: (node) => Effect4.succeed([
1106
+ {
1107
+ id: `${COMPANION_PREFIX}selected-objects`,
1108
+ type: PLANK_COMPANION_TYPE,
1109
+ data: "selected-objects",
1110
+ properties: {
1111
+ label: [
1112
+ "companion selected objects label",
1113
+ {
1114
+ ns: meta.id
1115
+ }
1116
+ ],
1117
+ icon: "ph--tree-view--regular",
1118
+ disposition: "hidden"
1119
+ }
1120
+ }
1121
+ ])
1122
+ })
1123
+ ]);
1124
+ });
1125
+
1126
+ // src/capabilities/app-graph-builder/extensions/settings.ts
1127
+ import * as Effect5 from "effect/Effect";
1128
+ import { GraphBuilder as GraphBuilder5, NodeMatcher as NodeMatcher3 } from "@dxos/plugin-graph";
1129
+ var createSettingsExtensions = Effect5.fnUntraced(function* () {
1130
+ const extension = yield* GraphBuilder5.createExtension({
1131
+ id: `${meta.id}.settings-sections`,
1132
+ match: NodeMatcher3.whenNodeType(`${meta.id}.settings`),
1133
+ connector: (node) => Effect5.succeed([
1134
+ {
1135
+ id: `${meta.id}.general`,
1136
+ type: `${meta.id}.general`,
1137
+ data: `${meta.id}.general`,
1138
+ properties: {
1139
+ label: [
1140
+ "space settings properties label",
1141
+ {
1142
+ ns: meta.id
1143
+ }
1144
+ ],
1145
+ icon: "ph--sliders--regular",
1146
+ position: "hoist",
1147
+ testId: "spacePlugin.general"
1148
+ }
1149
+ },
1150
+ {
1151
+ id: `${meta.id}.members`,
1152
+ type: `${meta.id}.members`,
1153
+ data: `${meta.id}.members`,
1154
+ properties: {
1155
+ label: [
1156
+ "members panel label",
1157
+ {
1158
+ ns: meta.id
1159
+ }
1160
+ ],
1161
+ icon: "ph--users--regular",
1162
+ position: "hoist",
1163
+ testId: "spacePlugin.members"
1164
+ }
1165
+ },
1166
+ {
1167
+ id: `${meta.id}.schema`,
1168
+ type: `${meta.id}.schema`,
1169
+ data: `${meta.id}.schema`,
1170
+ properties: {
1171
+ label: [
1172
+ "space settings schema label",
1173
+ {
1174
+ ns: meta.id
1175
+ }
1176
+ ],
1177
+ icon: "ph--shapes--regular",
1178
+ testId: "spacePlugin.schema"
1179
+ }
1180
+ }
1181
+ ])
1182
+ });
1183
+ return [
1184
+ extension
1185
+ ];
1186
+ });
1187
+
1188
+ // src/capabilities/app-graph-builder/app-graph-builder.ts
1189
+ var app_graph_builder_default = Capability4.makeModule(Effect6.fnUntraced(function* ({ shareableLinkOrigin = window.location.origin } = {}) {
1190
+ const extensions = yield* Effect6.all([
1191
+ createSpaceExtensions(),
1192
+ createTypeExtensions(),
1193
+ createCollectionExtensions({
1194
+ shareableLinkOrigin
1195
+ }),
1196
+ createCompanionExtensions(),
1197
+ createSettingsExtensions()
1198
+ ]);
1199
+ return Capability4.contributes(AppCapabilities4.AppGraphBuilder, extensions.flat());
1200
+ }));
1201
+ export {
1202
+ app_graph_builder_default as default
1203
+ };
1204
+ //# sourceMappingURL=app-graph-builder-WTM6SSX7.mjs.map