@dxos/plugin-space 0.8.4-main.bc674ce → 0.8.4-main.c351d160a8

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 (544) hide show
  1. package/dist/lib/browser/CollectionArticle-XGSQDBMS.mjs +115 -0
  2. package/dist/lib/browser/CollectionArticle-XGSQDBMS.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-YUBUWSEL.mjs +142 -0
  6. package/dist/lib/browser/CreateObjectDialog-YUBUWSEL.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-UOEHSBL5.mjs +64 -0
  18. package/dist/lib/browser/ObjectCardStack-UOEHSBL5.mjs.map +7 -0
  19. package/dist/lib/browser/ObjectDetails-ADGND237.mjs +43 -0
  20. package/dist/lib/browser/ObjectDetails-ADGND237.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-YXAJ23HH.mjs} +49 -34
  24. package/dist/lib/browser/RecordArticle-YXAJ23HH.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-6N7JJ7XF.mjs +141 -0
  38. package/dist/lib/browser/SyncStatus-6N7JJ7XF.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-UEOUAYZG.mjs +1201 -0
  42. package/dist/lib/browser/app-graph-builder-UEOUAYZG.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-2WHUSAHE.mjs +579 -0
  46. package/dist/lib/browser/chunk-2WHUSAHE.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 +38 -44
  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 +104 -159
  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-3SPMM45V.mjs → react-root-OD2HP63B.mjs} +9 -9
  74. package/dist/lib/browser/react-root-OD2HP63B.mjs.map +7 -0
  75. package/dist/lib/browser/{react-surface-UUS7NDHS.mjs → react-surface-ANV4KTRV.mjs} +98 -115
  76. package/dist/lib/browser/react-surface-ANV4KTRV.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-V5OOJVJJ.mjs → CollectionArticle-MNLCROOX.mjs} +49 -59
  87. package/dist/lib/node-esm/CollectionArticle-MNLCROOX.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-B6OLP5VQ.mjs +143 -0
  91. package/dist/lib/node-esm/CreateObjectDialog-B6OLP5VQ.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-THP5FKDV.mjs +65 -0
  103. package/dist/lib/node-esm/ObjectCardStack-THP5FKDV.mjs.map +7 -0
  104. package/dist/lib/node-esm/ObjectDetails-2SBF3KBM.mjs +44 -0
  105. package/dist/lib/node-esm/ObjectDetails-2SBF3KBM.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-344UK7QP.mjs} +49 -34
  109. package/dist/lib/node-esm/RecordArticle-344UK7QP.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-YEBGTNSD.mjs +142 -0
  123. package/dist/lib/node-esm/SyncStatus-YEBGTNSD.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-W2QNDIZF.mjs +1202 -0
  127. package/dist/lib/node-esm/app-graph-builder-W2QNDIZF.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-JOBIWCBC.mjs → chunk-2OLR2ZKH.mjs} +13 -12
  131. package/dist/lib/node-esm/chunk-2OLR2ZKH.mjs.map +7 -0
  132. package/dist/lib/node-esm/chunk-5KTTTTEX.mjs +20 -0
  133. package/dist/lib/node-esm/{chunk-CVXULIYC.mjs.map → chunk-5KTTTTEX.mjs.map} +1 -1
  134. package/dist/lib/node-esm/{chunk-SL4BJSUG.mjs → chunk-63N5JJXI.mjs} +2 -2
  135. package/dist/lib/node-esm/{chunk-SL4BJSUG.mjs.map → chunk-63N5JJXI.mjs.map} +1 -1
  136. package/dist/lib/node-esm/chunk-EDC2RUJU.mjs +169 -0
  137. package/dist/lib/node-esm/chunk-EDC2RUJU.mjs.map +7 -0
  138. package/dist/lib/node-esm/{chunk-MPL6NHQX.mjs → chunk-EVNSLSQS.mjs} +74 -105
  139. package/dist/lib/node-esm/chunk-EVNSLSQS.mjs.map +7 -0
  140. package/dist/lib/node-esm/chunk-GEGWQVZX.mjs +78 -0
  141. package/dist/lib/node-esm/chunk-GEGWQVZX.mjs.map +7 -0
  142. package/dist/lib/node-esm/chunk-IV7VKVGC.mjs +117 -0
  143. package/dist/lib/node-esm/chunk-IV7VKVGC.mjs.map +7 -0
  144. package/dist/lib/node-esm/{chunk-2SW6S2BB.mjs → chunk-RYQQXNI7.mjs} +37 -12
  145. package/dist/lib/node-esm/chunk-RYQQXNI7.mjs.map +7 -0
  146. package/dist/lib/node-esm/chunk-S5BQUCL4.mjs +580 -0
  147. package/dist/lib/node-esm/chunk-S5BQUCL4.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 +38 -44
  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 +104 -159
  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-Y6JTGDTW.mjs → react-root-RILC5MBD.mjs} +9 -9
  159. package/dist/lib/node-esm/react-root-RILC5MBD.mjs.map +7 -0
  160. package/dist/lib/node-esm/{react-surface-SQ4SK3OK.mjs → react-surface-TA5KEWVW.mjs} +98 -115
  161. package/dist/lib/node-esm/react-surface-TA5KEWVW.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 +68 -66
  331. package/src/SpacePlugin.ts +83 -70
  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 +432 -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 +79 -99
  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/commands/space/close/close.ts +1 -1
  355. package/src/cli/commands/space/create/create.ts +1 -1
  356. package/src/cli/commands/space/join/join.ts +1 -1
  357. package/src/cli/commands/space/open/open.ts +1 -1
  358. package/src/cli/plugin.ts +34 -27
  359. package/src/components/{AwaitingObject.tsx → AwaitingObject/AwaitingObject.tsx} +6 -5
  360. package/src/components/AwaitingObject/index.ts +5 -0
  361. package/src/components/CreateDialog/CreateObjectPanel.tsx +90 -111
  362. package/src/components/CreateDialog/index.ts +1 -2
  363. package/src/components/ObjectDetails/BaseObjectSettings.stories.tsx +10 -10
  364. package/src/components/ObjectDetails/BaseObjectSettings.tsx +8 -8
  365. package/src/components/ObjectDetails/ForeignKeys.tsx +1 -1
  366. package/src/components/ObjectDetails/index.ts +2 -3
  367. package/src/components/{ObjectCardStack → ObjectForm}/ObjectForm.tsx +9 -7
  368. package/src/components/{JoinDialog → ObjectForm}/index.ts +1 -1
  369. package/src/components/SyncStatus/index.ts +2 -2
  370. package/src/components/index.ts +2 -18
  371. package/src/constants.ts +5 -5
  372. package/src/containers/CollectionArticle/CollectionArticle.tsx +139 -0
  373. package/src/containers/CollectionArticle/index.ts +7 -0
  374. package/src/{components → containers/CollectionSection}/CollectionSection.tsx +4 -4
  375. package/src/containers/CollectionSection/index.ts +7 -0
  376. package/src/{components/CreateDialog → containers/CreateObjectDialog}/CreateObjectDialog.tsx +62 -42
  377. package/src/containers/CreateObjectDialog/index.ts +6 -0
  378. package/src/{components/CreateDialog → containers/CreateSpaceDialog}/CreateSpaceDialog.tsx +6 -6
  379. package/src/containers/CreateSpaceDialog/index.ts +7 -0
  380. package/src/{components/SyncStatus → containers/InlineSyncStatus}/InlineSyncStatus.tsx +8 -19
  381. package/src/containers/InlineSyncStatus/index.ts +7 -0
  382. package/src/{components → containers}/JoinDialog/JoinDialog.tsx +10 -9
  383. package/src/containers/JoinDialog/index.ts +6 -0
  384. package/src/{components → containers}/MembersContainer/MembersContainer.tsx +50 -53
  385. package/src/containers/MembersContainer/index.ts +7 -0
  386. package/src/{components → containers/MenuFooter}/MenuFooter.tsx +5 -5
  387. package/src/containers/MenuFooter/index.ts +7 -0
  388. package/src/containers/ObjectCardStack/ObjectCardStack.tsx +82 -0
  389. package/src/containers/ObjectDetails/ObjectDetails.tsx +36 -0
  390. package/src/containers/ObjectDetails/index.ts +7 -0
  391. package/src/{components → containers}/ObjectRenamePopover/ObjectRenamePopover.tsx +4 -4
  392. package/src/containers/ObjectRenamePopover/index.ts +7 -0
  393. package/src/{components → containers/RecordArticle}/RecordArticle.tsx +55 -37
  394. package/src/containers/RecordArticle/index.ts +7 -0
  395. package/src/{components → containers/SchemaContainer}/SchemaContainer.tsx +22 -18
  396. package/src/containers/SchemaContainer/index.ts +7 -0
  397. package/src/containers/SmallPresenceLive/index.ts +5 -0
  398. package/src/containers/SpacePluginSettings/SpacePluginSettings.tsx +65 -0
  399. package/src/containers/SpacePluginSettings/index.ts +7 -0
  400. package/src/{components → containers}/SpacePresence/SpacePresence.stories.tsx +2 -2
  401. package/src/{components → containers}/SpacePresence/SpacePresence.tsx +11 -22
  402. package/src/containers/SpacePresence/index.ts +6 -0
  403. package/src/{components → containers}/SpaceRenamePopover/SpaceRenamePopover.tsx +4 -4
  404. package/src/containers/SpaceRenamePopover/index.ts +7 -0
  405. package/src/{components/SpaceSettings → containers/SpaceSettingsContainer}/SpaceSettingsContainer.stories.tsx +3 -3
  406. package/src/containers/SpaceSettingsContainer/SpaceSettingsContainer.tsx +202 -0
  407. package/src/containers/SpaceSettingsContainer/index.ts +7 -0
  408. package/src/{components → containers}/SyncStatus/SyncStatus.stories.tsx +2 -2
  409. package/src/{components → containers}/SyncStatus/SyncStatus.tsx +5 -7
  410. package/src/containers/SyncStatus/index.ts +7 -0
  411. package/src/{components → containers/ViewEditor}/ViewEditor.tsx +11 -10
  412. package/src/containers/ViewEditor/index.ts +7 -0
  413. package/src/containers/index.ts +28 -0
  414. package/src/helpers/query.test.ts +1 -1
  415. package/src/helpers/query.ts +20 -7
  416. package/src/hooks/useActiveSpace.ts +8 -7
  417. package/src/hooks/useInputSurfaceLookup.tsx +3 -3
  418. package/src/index.ts +2 -1
  419. package/src/meta.ts +1 -1
  420. package/src/translations.ts +30 -4
  421. package/src/types/capabilities.ts +8 -8
  422. package/src/types/events.ts +7 -6
  423. package/src/types/form.ts +1 -8
  424. package/src/types/types.ts +61 -76
  425. package/src/util.ts +82 -0
  426. package/dist/lib/browser/CollectionArticle-OQMUVFVV.mjs +0 -125
  427. package/dist/lib/browser/CollectionArticle-OQMUVFVV.mjs.map +0 -7
  428. package/dist/lib/browser/ObjectCardStack-TWHN6C2Y.mjs +0 -148
  429. package/dist/lib/browser/ObjectCardStack-TWHN6C2Y.mjs.map +0 -7
  430. package/dist/lib/browser/ObjectDetails-GEDIISKK.mjs +0 -142
  431. package/dist/lib/browser/ObjectDetails-GEDIISKK.mjs.map +0 -7
  432. package/dist/lib/browser/RecordArticle-W57QE7QV.mjs.map +0 -7
  433. package/dist/lib/browser/app-graph-builder-SJHTZXZF.mjs +0 -523
  434. package/dist/lib/browser/app-graph-builder-SJHTZXZF.mjs.map +0 -7
  435. package/dist/lib/browser/app-graph-serializer-7AT7QMSK.mjs.map +0 -7
  436. package/dist/lib/browser/chunk-4WZUGLQQ.mjs.map +0 -7
  437. package/dist/lib/browser/chunk-ASV6DYFH.mjs +0 -19
  438. package/dist/lib/browser/chunk-CCRSHECL.mjs.map +0 -7
  439. package/dist/lib/browser/chunk-SUI34XSA.mjs +0 -772
  440. package/dist/lib/browser/chunk-SUI34XSA.mjs.map +0 -7
  441. package/dist/lib/browser/chunk-TWUMNPG4.mjs +0 -1898
  442. package/dist/lib/browser/chunk-TWUMNPG4.mjs.map +0 -7
  443. package/dist/lib/browser/chunk-ZT2VPYRM.mjs.map +0 -7
  444. package/dist/lib/browser/identity-created-VCFYLSBB.mjs.map +0 -7
  445. package/dist/lib/browser/operation-resolver-SIRQT36Z.mjs.map +0 -7
  446. package/dist/lib/browser/react-root-3SPMM45V.mjs.map +0 -7
  447. package/dist/lib/browser/react-surface-UUS7NDHS.mjs.map +0 -7
  448. package/dist/lib/browser/repair-CJG26D52.mjs +0 -50
  449. package/dist/lib/browser/repair-CJG26D52.mjs.map +0 -7
  450. package/dist/lib/browser/settings-ZS2AQ73E.mjs.map +0 -7
  451. package/dist/lib/browser/spaces-ready-OQDGWUOS.mjs.map +0 -7
  452. package/dist/lib/browser/state-7YZQB2KY.mjs.map +0 -7
  453. package/dist/lib/node-esm/CollectionArticle-V5OOJVJJ.mjs.map +0 -7
  454. package/dist/lib/node-esm/ObjectCardStack-C5ZXRKP7.mjs +0 -149
  455. package/dist/lib/node-esm/ObjectCardStack-C5ZXRKP7.mjs.map +0 -7
  456. package/dist/lib/node-esm/ObjectDetails-6ZLDRKCO.mjs +0 -143
  457. package/dist/lib/node-esm/ObjectDetails-6ZLDRKCO.mjs.map +0 -7
  458. package/dist/lib/node-esm/RecordArticle-SSV74Z46.mjs.map +0 -7
  459. package/dist/lib/node-esm/app-graph-builder-HZ3XXDFZ.mjs +0 -524
  460. package/dist/lib/node-esm/app-graph-builder-HZ3XXDFZ.mjs.map +0 -7
  461. package/dist/lib/node-esm/app-graph-serializer-WJ2TIQG6.mjs.map +0 -7
  462. package/dist/lib/node-esm/chunk-2SW6S2BB.mjs.map +0 -7
  463. package/dist/lib/node-esm/chunk-7KMYUWSR.mjs +0 -773
  464. package/dist/lib/node-esm/chunk-7KMYUWSR.mjs.map +0 -7
  465. package/dist/lib/node-esm/chunk-CVXULIYC.mjs +0 -20
  466. package/dist/lib/node-esm/chunk-FYSBFBSD.mjs +0 -1899
  467. package/dist/lib/node-esm/chunk-FYSBFBSD.mjs.map +0 -7
  468. package/dist/lib/node-esm/chunk-JOBIWCBC.mjs.map +0 -7
  469. package/dist/lib/node-esm/chunk-MPL6NHQX.mjs.map +0 -7
  470. package/dist/lib/node-esm/identity-created-2SJABVJD.mjs.map +0 -7
  471. package/dist/lib/node-esm/operation-resolver-ZE3XJL5J.mjs.map +0 -7
  472. package/dist/lib/node-esm/react-root-Y6JTGDTW.mjs.map +0 -7
  473. package/dist/lib/node-esm/react-surface-SQ4SK3OK.mjs.map +0 -7
  474. package/dist/lib/node-esm/repair-G3ZW3VG3.mjs.map +0 -7
  475. package/dist/lib/node-esm/settings-PVI2VG56.mjs.map +0 -7
  476. package/dist/lib/node-esm/spaces-ready-R744OHQG.mjs.map +0 -7
  477. package/dist/lib/node-esm/state-XE5YGPHM.mjs.map +0 -7
  478. package/dist/types/src/components/AwaitingObject.d.ts.map +0 -1
  479. package/dist/types/src/components/CollectionArticle.d.ts +0 -9
  480. package/dist/types/src/components/CollectionArticle.d.ts.map +0 -1
  481. package/dist/types/src/components/CollectionSection.d.ts +0 -5
  482. package/dist/types/src/components/CollectionSection.d.ts.map +0 -1
  483. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +0 -1
  484. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +0 -1604
  485. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +0 -1
  486. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +0 -1
  487. package/dist/types/src/components/JoinDialog/index.d.ts +0 -2
  488. package/dist/types/src/components/JoinDialog/index.d.ts.map +0 -1
  489. package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts +0 -1600
  490. package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts.map +0 -1
  491. package/dist/types/src/components/MembersContainer/index.d.ts +0 -2
  492. package/dist/types/src/components/MembersContainer/index.d.ts.map +0 -1
  493. package/dist/types/src/components/MenuFooter.d.ts.map +0 -1
  494. package/dist/types/src/components/ObjectCardStack/ObjectCardStack.d.ts.map +0 -1
  495. package/dist/types/src/components/ObjectCardStack/ObjectForm.d.ts.map +0 -1
  496. package/dist/types/src/components/ObjectDetails/ObjectDetails.d.ts.map +0 -1
  497. package/dist/types/src/components/ObjectRenamePopover/index.d.ts +0 -2
  498. package/dist/types/src/components/ObjectRenamePopover/index.d.ts.map +0 -1
  499. package/dist/types/src/components/RecordArticle.d.ts +0 -5
  500. package/dist/types/src/components/RecordArticle.d.ts.map +0 -1
  501. package/dist/types/src/components/RecordArticle.stories.d.ts +0 -1600
  502. package/dist/types/src/components/RecordArticle.stories.d.ts.map +0 -1
  503. package/dist/types/src/components/SchemaContainer.d.ts.map +0 -1
  504. package/dist/types/src/components/SpacePluginSettings.d.ts.map +0 -1
  505. package/dist/types/src/components/SpacePresence/index.d.ts +0 -2
  506. package/dist/types/src/components/SpacePresence/index.d.ts.map +0 -1
  507. package/dist/types/src/components/SpaceRenamePopover/index.d.ts +0 -2
  508. package/dist/types/src/components/SpaceRenamePopover/index.d.ts.map +0 -1
  509. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts +0 -7
  510. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +0 -1
  511. package/dist/types/src/components/SpaceSettings/index.d.ts +0 -2
  512. package/dist/types/src/components/SpaceSettings/index.d.ts.map +0 -1
  513. package/dist/types/src/components/SyncStatus/InlineSyncStatus.d.ts.map +0 -1
  514. package/dist/types/src/components/ViewEditor.d.ts.map +0 -1
  515. package/src/components/CollectionArticle.tsx +0 -153
  516. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +0 -91
  517. package/src/components/MembersContainer/MembersContainer.stories.tsx +0 -56
  518. package/src/components/MembersContainer/index.ts +0 -5
  519. package/src/components/ObjectCardStack/ObjectCardStack.tsx +0 -67
  520. package/src/components/ObjectDetails/ObjectDetails.tsx +0 -32
  521. package/src/components/ObjectRenamePopover/index.ts +0 -5
  522. package/src/components/RecordArticle.stories.tsx +0 -115
  523. package/src/components/SpacePluginSettings.tsx +0 -62
  524. package/src/components/SpacePresence/index.ts +0 -5
  525. package/src/components/SpaceRenamePopover/index.ts +0 -5
  526. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +0 -220
  527. package/src/components/SpaceSettings/index.ts +0 -5
  528. package/src/util.tsx +0 -779
  529. /package/dist/lib/browser/{chunk-AWVAX26X.mjs.map → chunk-SSTUPFZ2.mjs.map} +0 -0
  530. /package/dist/lib/node-esm/{chunk-HREWB23G.mjs.map → chunk-XYLDAH5C.mjs.map} +0 -0
  531. /package/dist/types/src/components/{AwaitingObject.d.ts → AwaitingObject/AwaitingObject.d.ts} +0 -0
  532. /package/dist/types/src/components/{ObjectCardStack → ObjectForm}/ObjectForm.d.ts +0 -0
  533. /package/dist/types/src/{components/CreateDialog → containers/CreateSpaceDialog}/CreateSpaceDialog.d.ts +0 -0
  534. /package/dist/types/src/{components/SyncStatus → containers/InlineSyncStatus}/InlineSyncStatus.d.ts +0 -0
  535. /package/dist/types/src/{components → containers}/JoinDialog/JoinDialog.d.ts +0 -0
  536. /package/dist/types/src/{components → containers}/MembersContainer/MembersContainer.d.ts +0 -0
  537. /package/dist/types/src/{components → containers/MenuFooter}/MenuFooter.d.ts +0 -0
  538. /package/dist/types/src/{components → containers}/ObjectCardStack/index.d.ts +0 -0
  539. /package/dist/types/src/{components → containers}/ObjectRenamePopover/ObjectRenamePopover.d.ts +0 -0
  540. /package/dist/types/src/{components → containers/SchemaContainer}/SchemaContainer.d.ts +0 -0
  541. /package/dist/types/src/{components → containers}/SpacePresence/SpacePresence.d.ts +0 -0
  542. /package/dist/types/src/{components → containers}/SpaceRenamePopover/SpaceRenamePopover.d.ts +0 -0
  543. /package/dist/types/src/{components → containers}/SyncStatus/SyncStatus.d.ts +0 -0
  544. /package/src/{components → containers}/ObjectCardStack/index.ts +0 -0
@@ -0,0 +1,580 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ useInputSurfaceLookup
4
+ } from "./chunk-2OLR2ZKH.mjs";
5
+ import {
6
+ getSpaceDisplayName
7
+ } from "./chunk-GEGWQVZX.mjs";
8
+ import {
9
+ SpaceOperation
10
+ } from "./chunk-EVNSLSQS.mjs";
11
+ import {
12
+ meta
13
+ } from "./chunk-63N5JJXI.mjs";
14
+
15
+ // src/components/AwaitingObject/AwaitingObject.tsx
16
+ import React, { useCallback, useEffect, useState } from "react";
17
+ import { useOperationInvoker } from "@dxos/app-framework/ui";
18
+ import { LayoutOperation } from "@dxos/app-toolkit";
19
+ import { useLayout } from "@dxos/app-toolkit/ui";
20
+ import { Obj } from "@dxos/echo";
21
+ import { useClient } from "@dxos/react-client";
22
+ import { Filter, useQuery } from "@dxos/react-client/echo";
23
+ import { Button, Icon, Toast, useTranslation } from "@dxos/react-ui";
24
+ import { osTranslations } from "@dxos/ui-theme";
25
+ var WAIT_FOR_OBJECT_TIMEOUT = 3 * 60 * 1e3;
26
+ var TOAST_TIMEOUT = 4 * 60 * 1e3;
27
+ var AwaitingObject = ({ id }) => {
28
+ const { t } = useTranslation(meta.id);
29
+ const { invokePromise } = useOperationInvoker();
30
+ const [open, setOpen] = useState(true);
31
+ const [waiting, setWaiting] = useState(true);
32
+ const [found, setFound] = useState(false);
33
+ const layout = useLayout();
34
+ const client = useClient();
35
+ const objects = useQuery(client.spaces, Filter.everything());
36
+ useEffect(() => {
37
+ if (!id) {
38
+ return;
39
+ }
40
+ const timeout = setTimeout(() => setWaiting(false), WAIT_FOR_OBJECT_TIMEOUT);
41
+ return () => clearTimeout(timeout);
42
+ }, [
43
+ id
44
+ ]);
45
+ useEffect(() => {
46
+ if (objects.findIndex((object) => Obj.getDXN(object).toString() === id) > -1) {
47
+ setFound(true);
48
+ if (layout.active.includes(id)) {
49
+ setOpen(false);
50
+ }
51
+ }
52
+ }, [
53
+ id,
54
+ objects,
55
+ layout
56
+ ]);
57
+ const handleClose = useCallback(async () => invokePromise(SpaceOperation.WaitForObject, {
58
+ id: void 0
59
+ }), [
60
+ invokePromise
61
+ ]);
62
+ const handleNavigate = useCallback(() => {
63
+ void invokePromise(LayoutOperation.Open, {
64
+ subject: [
65
+ id
66
+ ]
67
+ });
68
+ void handleClose();
69
+ }, [
70
+ id,
71
+ handleClose,
72
+ invokePromise
73
+ ]);
74
+ return /* @__PURE__ */ React.createElement(Toast.Root, {
75
+ open,
76
+ duration: TOAST_TIMEOUT,
77
+ onOpenChange: setOpen
78
+ }, /* @__PURE__ */ React.createElement(Toast.Body, null, /* @__PURE__ */ React.createElement(Toast.Title, {
79
+ classNames: "flex items-center gap-2"
80
+ }, found ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Icon, {
81
+ icon: "ph--check-circle--regular",
82
+ size: 5
83
+ }), /* @__PURE__ */ React.createElement("span", null, t("found object label"))) : waiting ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Icon, {
84
+ icon: "ph--circle-notch--regular",
85
+ size: 5,
86
+ classNames: "animate-spin"
87
+ }), /* @__PURE__ */ React.createElement("span", null, t("waiting for object label"))) : /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Icon, {
88
+ icon: "ph--circle-dashed--regular",
89
+ size: 5
90
+ }), /* @__PURE__ */ React.createElement("span", null, t("object not found label")))), /* @__PURE__ */ React.createElement(Toast.Description, null, t(found ? "found object description" : waiting ? "waiting for object description" : "object not found description"))), /* @__PURE__ */ React.createElement(Toast.Actions, null, found ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Toast.Action, {
91
+ altText: t("go to object alt"),
92
+ asChild: true
93
+ }, /* @__PURE__ */ React.createElement(Button, {
94
+ variant: "primary",
95
+ onClick: handleNavigate
96
+ }, t("go to object label"))), /* @__PURE__ */ React.createElement(Toast.Close, {
97
+ asChild: true
98
+ }, /* @__PURE__ */ React.createElement(Button, {
99
+ onClick: handleClose
100
+ }, t("close label", {
101
+ ns: osTranslations
102
+ })))) : /* @__PURE__ */ React.createElement(Toast.Close, {
103
+ asChild: true
104
+ }, /* @__PURE__ */ React.createElement(Button, {
105
+ onClick: handleClose
106
+ }, t(waiting ? "close label" : "confirm label", {
107
+ ns: osTranslations
108
+ })))));
109
+ };
110
+
111
+ // src/components/CreateDialog/CreateObjectPanel.tsx
112
+ import React2, { useCallback as useCallback2, useMemo } from "react";
113
+ import { Obj as Obj2 } from "@dxos/echo";
114
+ import { toLocalizedString, useDefaultValue, useTranslation as useTranslation2 } from "@dxos/react-ui";
115
+ import { Form, omitId } from "@dxos/react-ui-form";
116
+ import { SearchList, useSearchListResults } from "@dxos/react-ui-searchlist";
117
+ var CreateObjectPanel = ({ options, spaces, typename, target, initialFormValues: initialFormValuesProp, defaultSpaceId, resolve, onTargetChange, onTypenameChange, onCreateObject }) => {
118
+ const initialFormValues = useDefaultValue(initialFormValuesProp, () => ({}));
119
+ const metadata = typename && resolve?.(typename);
120
+ const sortedOptions = useMemo(() => [
121
+ ...options
122
+ ].sort((a, b) => a.label.localeCompare(b.label)), [
123
+ options
124
+ ]);
125
+ const handleCreateObject = useCallback2(async (props) => {
126
+ if (!metadata) {
127
+ return;
128
+ }
129
+ await onCreateObject?.({
130
+ metadata,
131
+ data: props
132
+ });
133
+ }, [
134
+ onCreateObject,
135
+ metadata
136
+ ]);
137
+ const handleSelectOption = useCallback2(async (id) => {
138
+ const metadata2 = resolve?.(id);
139
+ if (metadata2 && !metadata2.inputSchema) {
140
+ await onCreateObject?.({
141
+ metadata: metadata2
142
+ });
143
+ } else {
144
+ onTypenameChange?.(id);
145
+ }
146
+ }, [
147
+ resolve,
148
+ onCreateObject
149
+ ]);
150
+ const inputSchema = useMemo(() => metadata && typeof metadata === "object" && metadata.inputSchema ? omitId(metadata.inputSchema) : void 0, [
151
+ metadata
152
+ ]);
153
+ const inputSurfaceLookup = useInputSurfaceLookup({
154
+ target
155
+ });
156
+ if (!metadata) {
157
+ return /* @__PURE__ */ React2.createElement(SelectType, {
158
+ options: sortedOptions,
159
+ onChange: handleSelectOption
160
+ });
161
+ }
162
+ if (!target) {
163
+ return /* @__PURE__ */ React2.createElement(SelectSpace, {
164
+ spaces,
165
+ defaultSpaceId,
166
+ onChange: onTargetChange
167
+ });
168
+ }
169
+ if (metadata.inputSchema) {
170
+ return /* @__PURE__ */ React2.createElement(Form.Root, {
171
+ testId: "create-object-form",
172
+ autoFocus: true,
173
+ schema: inputSchema,
174
+ defaultValues: initialFormValues,
175
+ db: Obj2.isObject(target) ? Obj2.getDatabase(target) : target,
176
+ fieldProvider: inputSurfaceLookup,
177
+ onSave: handleCreateObject
178
+ }, /* @__PURE__ */ React2.createElement(Form.Viewport, null, /* @__PURE__ */ React2.createElement(Form.Content, null, /* @__PURE__ */ React2.createElement(Form.FieldSet, null), /* @__PURE__ */ React2.createElement(Form.Submit, null))));
179
+ }
180
+ return null;
181
+ };
182
+ CreateObjectPanel.displayName = "CreateObjectPanel";
183
+ var SelectSpace = ({ spaces, defaultSpaceId, onChange }) => {
184
+ const { t } = useTranslation2(meta.id);
185
+ const sortedSpaces = useMemo(() => [
186
+ ...spaces
187
+ ].sort((a, b) => {
188
+ const labelA = toLocalizedString(getSpaceDisplayName(a, {
189
+ personal: a.id === defaultSpaceId
190
+ }), t);
191
+ const labelB = toLocalizedString(getSpaceDisplayName(b, {
192
+ personal: b.id === defaultSpaceId
193
+ }), t);
194
+ return labelA.localeCompare(labelB);
195
+ }), [
196
+ spaces,
197
+ defaultSpaceId,
198
+ t
199
+ ]);
200
+ const { results, handleSearch } = useSearchListResults({
201
+ items: sortedSpaces,
202
+ extract: (space) => toLocalizedString(getSpaceDisplayName(space, {
203
+ personal: space.id === defaultSpaceId
204
+ }), t)
205
+ });
206
+ return /* @__PURE__ */ React2.createElement(SearchList.Root, {
207
+ onSearch: handleSearch
208
+ }, /* @__PURE__ */ React2.createElement(SearchList.Content, null, /* @__PURE__ */ React2.createElement(SearchList.Input, {
209
+ autoFocus: true,
210
+ "data-testid": "create-object-form.space-input",
211
+ placeholder: t("space input placeholder")
212
+ }), /* @__PURE__ */ React2.createElement(SearchList.Viewport, null, results.map((space) => /* @__PURE__ */ React2.createElement(SearchList.Item, {
213
+ key: space.id,
214
+ value: space.id,
215
+ label: toLocalizedString(getSpaceDisplayName(space, {
216
+ personal: space.id === defaultSpaceId
217
+ }), t),
218
+ onSelect: () => onChange?.(space.db),
219
+ classNames: "flex items-center gap-2"
220
+ })))));
221
+ };
222
+ var SelectType = ({ options, onChange }) => {
223
+ const { t } = useTranslation2(meta.id);
224
+ const { results, handleSearch } = useSearchListResults({
225
+ items: options,
226
+ extract: (option) => option.label
227
+ });
228
+ return /* @__PURE__ */ React2.createElement(SearchList.Root, {
229
+ onSearch: handleSearch
230
+ }, /* @__PURE__ */ React2.createElement(SearchList.Content, null, /* @__PURE__ */ React2.createElement(SearchList.Input, {
231
+ autoFocus: true,
232
+ "data-testid": "create-object-form.schema-input",
233
+ placeholder: t("schema input placeholder")
234
+ }), /* @__PURE__ */ React2.createElement(SearchList.Viewport, null, results.map((option) => /* @__PURE__ */ React2.createElement(SearchList.Item, {
235
+ key: option.id,
236
+ value: option.id,
237
+ label: option.label,
238
+ icon: option.icon ?? "ph--placeholder--regular",
239
+ classNames: "flex items-center gap-2",
240
+ onSelect: () => onChange(option.id)
241
+ })))));
242
+ };
243
+
244
+ // src/components/ObjectDetails/BaseObjectSettings.tsx
245
+ import * as Function from "effect/Function";
246
+ import * as Option from "effect/Option";
247
+ import * as Schema from "effect/Schema";
248
+ import React3, { useCallback as useCallback3, useMemo as useMemo2 } from "react";
249
+ import { DXN, Obj as Obj3, Ref, Tag, Type } from "@dxos/echo";
250
+ import { splitJsonPath } from "@dxos/echo/internal";
251
+ import { invariant } from "@dxos/invariant";
252
+ import { Form as Form2, omitId as omitId2 } from "@dxos/react-ui-form";
253
+ import { isNonNullable } from "@dxos/util";
254
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/ObjectDetails/BaseObjectSettings.tsx";
255
+ var BaseSchema = Schema.Struct({
256
+ tags: Schema.Array(Ref.Ref(Tag.Tag)).pipe(Schema.optional)
257
+ });
258
+ var BaseObjectSettings = ({ classNames, children, object }) => {
259
+ const db = Obj3.getDatabase(object);
260
+ const formSchema = useMemo2(() => {
261
+ return Function.pipe(Obj3.getSchema(object), Option.fromNullable, Option.map((schema) => omitId2(BaseSchema.pipe(Schema.extend(schema)))), Option.getOrUndefined);
262
+ }, [
263
+ object
264
+ ]);
265
+ const meta2 = Obj3.getMeta(object);
266
+ const tags = (meta2.tags ?? []).map((tag) => db?.makeRef(DXN.parse(tag))).filter(isNonNullable);
267
+ const values = useMemo2(() => ({
268
+ tags,
269
+ ...object
270
+ }), [
271
+ object,
272
+ tags
273
+ ]);
274
+ const handleCreate = useCallback3((schema, values2) => {
275
+ invariant(db, void 0, {
276
+ F: __dxlog_file,
277
+ L: 54,
278
+ S: void 0,
279
+ A: [
280
+ "db",
281
+ ""
282
+ ]
283
+ });
284
+ invariant(Type.isObjectSchema(schema), void 0, {
285
+ F: __dxlog_file,
286
+ L: 55,
287
+ S: void 0,
288
+ A: [
289
+ "Type.isObjectSchema(schema)",
290
+ ""
291
+ ]
292
+ });
293
+ const newObject = db.add(Obj3.make(schema, values2));
294
+ if (Obj3.instanceOf(Tag.Tag, newObject)) {
295
+ Obj3.change(object, (obj) => {
296
+ Obj3.getMeta(obj).tags = [
297
+ ...Obj3.getMeta(obj).tags ?? [],
298
+ Obj3.getDXN(newObject).toString()
299
+ ];
300
+ });
301
+ }
302
+ }, []);
303
+ const handleChange = useCallback3(({ tags: tags2, ...values2 }, { isValid, changed }) => {
304
+ if (!isValid) {
305
+ return;
306
+ }
307
+ const changedPaths = Object.keys(changed).filter((path) => changed[path]);
308
+ const hasTagsChange = changedPaths.some((path) => splitJsonPath(path)[0] === "tags");
309
+ if (hasTagsChange) {
310
+ Obj3.change(object, (obj) => {
311
+ Obj3.getMeta(obj).tags = tags2?.map((tag) => tag.dxn.toString()) ?? [];
312
+ });
313
+ }
314
+ const nonTagPaths = changedPaths.filter((path) => splitJsonPath(path)[0] !== "tags");
315
+ if (nonTagPaths.length > 0) {
316
+ Obj3.change(object, () => {
317
+ for (const path of nonTagPaths) {
318
+ const parts = splitJsonPath(path);
319
+ const value = Obj3.getValue(values2, parts);
320
+ Obj3.setValue(object, parts, value);
321
+ }
322
+ });
323
+ }
324
+ }, [
325
+ object
326
+ ]);
327
+ if (!formSchema) {
328
+ return null;
329
+ }
330
+ return /* @__PURE__ */ React3.createElement(Form2.Root, {
331
+ schema: formSchema,
332
+ defaultValues: values,
333
+ createOptionIcon: "ph--plus--regular",
334
+ createOptionLabel: [
335
+ "add tag label",
336
+ {
337
+ ns: meta.id
338
+ }
339
+ ],
340
+ createInitialValuePath: "label",
341
+ db,
342
+ onValuesChanged: handleChange,
343
+ onCreate: handleCreate
344
+ }, /* @__PURE__ */ React3.createElement(Form2.Viewport, null, /* @__PURE__ */ React3.createElement(Form2.Content, {
345
+ classNames
346
+ }, /* @__PURE__ */ React3.createElement(Form2.FieldSet, null), children)));
347
+ };
348
+
349
+ // src/components/ObjectDetails/ForeignKeys.tsx
350
+ import React4, { useCallback as useCallback4 } from "react";
351
+ import { IconButton, List, ListItem, useTranslation as useTranslation3 } from "@dxos/react-ui";
352
+ var ForeignKeys = ({ keys, onDelete }) => {
353
+ return /* @__PURE__ */ React4.createElement(List, {
354
+ classNames: "flex flex-col gap-2"
355
+ }, keys.map((key) => /* @__PURE__ */ React4.createElement(KeyItem, {
356
+ key: key.id,
357
+ forignKey: key,
358
+ onDelete
359
+ })));
360
+ };
361
+ var KeyItem = ({ forignKey, onDelete }) => {
362
+ const { t } = useTranslation3(meta.id);
363
+ const handleDelete = useCallback4(() => {
364
+ onDelete?.(forignKey);
365
+ }, [
366
+ forignKey,
367
+ onDelete
368
+ ]);
369
+ return /* @__PURE__ */ React4.createElement(ListItem.Root, {
370
+ classNames: "px-2"
371
+ }, /* @__PURE__ */ React4.createElement(ListItem.Heading, {
372
+ classNames: "flex flex-col grow truncate"
373
+ }, /* @__PURE__ */ React4.createElement("div", null, forignKey.source), /* @__PURE__ */ React4.createElement("div", {
374
+ className: "text-description text-sm truncate"
375
+ }, forignKey.id)), /* @__PURE__ */ React4.createElement(ListItem.Endcap, null, /* @__PURE__ */ React4.createElement(IconButton, {
376
+ iconOnly: true,
377
+ icon: "ph--x--regular",
378
+ variant: "ghost",
379
+ label: t("delete key"),
380
+ onClick: handleDelete
381
+ })));
382
+ };
383
+
384
+ // src/components/ObjectForm/ObjectForm.tsx
385
+ import * as Schema2 from "effect/Schema";
386
+ import React5, { useCallback as useCallback5, useMemo as useMemo3 } from "react";
387
+ import { DXN as DXN2, Obj as Obj4, Ref as Ref2, Tag as Tag2, Type as Type2 } from "@dxos/echo";
388
+ import { splitJsonPath as splitJsonPath2 } from "@dxos/echo/internal";
389
+ import { invariant as invariant2 } from "@dxos/invariant";
390
+ import { Form as Form3, omitId as omitId3 } from "@dxos/react-ui-form";
391
+ import { isNonNullable as isNonNullable2 } from "@dxos/util";
392
+ var __dxlog_file2 = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/ObjectForm/ObjectForm.tsx";
393
+ var ObjectForm = ({ object, schema }) => {
394
+ const db = Obj4.getDatabase(object);
395
+ const formSchema = useMemo3(() => omitId3(Schema2.Struct({
396
+ tags: Schema2.Array(Ref2.Ref(Tag2.Tag)).pipe(Schema2.optional)
397
+ }).pipe(Schema2.extend(schema))), [
398
+ schema
399
+ ]);
400
+ const meta2 = Obj4.getMeta(object);
401
+ const tags = (meta2.tags ?? []).map((tag) => db?.makeRef(DXN2.parse(tag))).filter(isNonNullable2);
402
+ const values = useMemo3(() => ({
403
+ tags,
404
+ ...object
405
+ }), [
406
+ object,
407
+ tags
408
+ ]);
409
+ const handleCreate = useCallback5((schema2, values2) => {
410
+ invariant2(db, void 0, {
411
+ F: __dxlog_file2,
412
+ L: 39,
413
+ S: void 0,
414
+ A: [
415
+ "db",
416
+ ""
417
+ ]
418
+ });
419
+ invariant2(Type2.isObjectSchema(schema2), void 0, {
420
+ F: __dxlog_file2,
421
+ L: 40,
422
+ S: void 0,
423
+ A: [
424
+ "Type.isObjectSchema(schema)",
425
+ ""
426
+ ]
427
+ });
428
+ const newObject = db.add(Obj4.make(schema2, values2));
429
+ if (Obj4.instanceOf(Tag2.Tag, newObject)) {
430
+ Obj4.change(object, (obj) => {
431
+ Obj4.getMeta(obj).tags = [
432
+ ...Obj4.getMeta(obj).tags ?? [],
433
+ Obj4.getDXN(newObject).toString()
434
+ ];
435
+ });
436
+ }
437
+ }, []);
438
+ const handleChange = useCallback5(({ tags: tags2, ...values2 }, { isValid, changed }) => {
439
+ if (!isValid) {
440
+ return;
441
+ }
442
+ const changedPaths = Object.keys(changed).filter((path) => changed[path]);
443
+ const hasTagsChange = changedPaths.some((path) => splitJsonPath2(path)[0] === "tags");
444
+ if (hasTagsChange) {
445
+ Obj4.change(object, (obj) => {
446
+ Obj4.getMeta(obj).tags = tags2?.map((tag) => tag.dxn.toString()) ?? [];
447
+ });
448
+ }
449
+ const nonTagPaths = changedPaths.filter((path) => splitJsonPath2(path)[0] !== "tags");
450
+ if (nonTagPaths.length > 0) {
451
+ Obj4.change(object, () => {
452
+ for (const path of nonTagPaths) {
453
+ const parts = splitJsonPath2(path);
454
+ const value = Obj4.getValue(values2, parts);
455
+ Obj4.setValue(object, parts, value);
456
+ }
457
+ });
458
+ }
459
+ }, [
460
+ object
461
+ ]);
462
+ return /* @__PURE__ */ React5.createElement(Form3.Root, {
463
+ schema: formSchema,
464
+ defaultValues: values,
465
+ createOptionIcon: "ph--plus--regular",
466
+ createOptionLabel: [
467
+ "add tag label",
468
+ {
469
+ ns: meta.id
470
+ }
471
+ ],
472
+ createInitialValuePath: "label",
473
+ db,
474
+ onValuesChanged: handleChange,
475
+ onCreate: handleCreate
476
+ }, /* @__PURE__ */ React5.createElement(Form3.Viewport, null, /* @__PURE__ */ React5.createElement(Form3.Content, null, /* @__PURE__ */ React5.createElement(Form3.FieldSet, null))));
477
+ };
478
+
479
+ // src/components/SyncStatus/save-tracker.ts
480
+ import { Context } from "@dxos/context";
481
+ var __dxlog_file3 = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/SyncStatus/save-tracker.ts";
482
+ var createClientSaveTracker = (client, cb) => {
483
+ const CleanupFns = {};
484
+ const state = {};
485
+ const install = (spaces) => {
486
+ for (const space of spaces) {
487
+ if (state[space.id]) {
488
+ continue;
489
+ }
490
+ state[space.id] = "saved";
491
+ CleanupFns[space.id] = createSpaceSaveTracker(space, (s) => {
492
+ state[space.id] = s;
493
+ cb(Object.values(state).some((s2) => s2 === "saving") ? "saving" : "saved");
494
+ });
495
+ }
496
+ };
497
+ client.spaces.subscribe((spaces) => {
498
+ install(spaces);
499
+ });
500
+ install(client.spaces.get());
501
+ return () => {
502
+ for (const unsubscribe of Object.values(CleanupFns)) {
503
+ unsubscribe();
504
+ }
505
+ };
506
+ };
507
+ var createSpaceSaveTracker = (space, cb) => {
508
+ const ctx = new Context(void 0, {
509
+ F: __dxlog_file3,
510
+ L: 40
511
+ });
512
+ void space.waitUntilReady().then(() => {
513
+ if (ctx.disposed) {
514
+ return;
515
+ }
516
+ let hasUnsavedChanges = false;
517
+ let lastFlushPromise;
518
+ space.internal.db.saveStateChanged.on(ctx, ({ unsavedDocuments }) => {
519
+ hasUnsavedChanges = unsavedDocuments.length > 0;
520
+ });
521
+ space.internal.db.saveStateChanged.debounce(500).on(ctx, () => {
522
+ if (hasUnsavedChanges) {
523
+ lastFlushPromise = void 0;
524
+ cb("saving");
525
+ } else {
526
+ const flushPromise = space.db.flush();
527
+ lastFlushPromise = flushPromise;
528
+ void flushPromise.then(() => {
529
+ if (lastFlushPromise === flushPromise) {
530
+ cb("saved");
531
+ }
532
+ });
533
+ }
534
+ });
535
+ });
536
+ return () => {
537
+ void ctx.dispose();
538
+ };
539
+ };
540
+
541
+ // src/components/SyncStatus/status.ts
542
+ var getStatus = ({ offline, saved, needsToUpload, needsToDownload }) => {
543
+ if (!saved) {
544
+ return "saving locally";
545
+ } else if (!offline && needsToDownload) {
546
+ return "downloading";
547
+ } else if (!offline && needsToUpload) {
548
+ return "uploading";
549
+ } else if (offline && !needsToUpload && !needsToDownload) {
550
+ return "offline persisted";
551
+ } else {
552
+ return "remote synced";
553
+ }
554
+ };
555
+ var getIcon = (status) => {
556
+ switch (status) {
557
+ case "saving locally":
558
+ return "ph--download--regular";
559
+ case "downloading":
560
+ return "ph--cloud-arrow-down--regular";
561
+ case "uploading":
562
+ return "ph--cloud-arrow-up--regular";
563
+ case "offline persisted":
564
+ return "ph--check-circle--regular";
565
+ case "remote synced":
566
+ return "ph--cloud-check--regular";
567
+ }
568
+ };
569
+
570
+ export {
571
+ AwaitingObject,
572
+ CreateObjectPanel,
573
+ BaseObjectSettings,
574
+ ForeignKeys,
575
+ ObjectForm,
576
+ createClientSaveTracker,
577
+ getStatus,
578
+ getIcon
579
+ };
580
+ //# sourceMappingURL=chunk-S5BQUCL4.mjs.map