@dxos/plugin-space 0.8.4-main.e098934 → 0.8.4-main.ead640a

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 (265) hide show
  1. package/dist/lib/browser/{CollectionMain-D2B75XBS.mjs → CollectionMain-AX7KKXWP.mjs} +4 -4
  2. package/dist/lib/browser/CollectionMain-AX7KKXWP.mjs.map +7 -0
  3. package/dist/lib/browser/ObjectDetailsPanel-MQBHG666.mjs +145 -0
  4. package/dist/lib/browser/ObjectDetailsPanel-MQBHG666.mjs.map +7 -0
  5. package/dist/lib/browser/ObjectSettings-KNUZFCGS.mjs +151 -0
  6. package/dist/lib/browser/ObjectSettings-KNUZFCGS.mjs.map +7 -0
  7. package/dist/lib/browser/RecordMain-MV535I2C.mjs +119 -0
  8. package/dist/lib/browser/RecordMain-MV535I2C.mjs.map +7 -0
  9. package/dist/lib/browser/{app-graph-builder-AFC6PNAB.mjs → app-graph-builder-6SNKPPKD.mjs} +61 -58
  10. package/dist/lib/browser/app-graph-builder-6SNKPPKD.mjs.map +7 -0
  11. package/dist/lib/browser/{app-graph-serializer-Q7QG4EKW.mjs → app-graph-serializer-YGUHIKUW.mjs} +14 -14
  12. package/dist/lib/browser/app-graph-serializer-YGUHIKUW.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-WZYRDFW7.mjs → chunk-2IAM4LHT.mjs} +12 -4
  14. package/dist/lib/browser/chunk-2IAM4LHT.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-S33AYKSS.mjs → chunk-AB7EFWFA.mjs} +47 -38
  16. package/dist/lib/browser/chunk-AB7EFWFA.mjs.map +7 -0
  17. package/dist/lib/browser/chunk-EIXZABXD.mjs +19 -0
  18. package/dist/lib/browser/chunk-EIXZABXD.mjs.map +7 -0
  19. package/dist/lib/browser/chunk-IRKDREHY.mjs +11 -0
  20. package/dist/lib/browser/chunk-IRKDREHY.mjs.map +7 -0
  21. package/dist/lib/browser/{chunk-6GRF7NEF.mjs → chunk-KXSDZJ5T.mjs} +258 -289
  22. package/dist/lib/browser/chunk-KXSDZJ5T.mjs.map +7 -0
  23. package/dist/lib/browser/chunk-RLI2IAHK.mjs +20 -0
  24. package/dist/lib/browser/chunk-RLI2IAHK.mjs.map +7 -0
  25. package/dist/lib/browser/chunk-TIVKWB5L.mjs +166 -0
  26. package/dist/lib/browser/chunk-TIVKWB5L.mjs.map +7 -0
  27. package/dist/lib/browser/{chunk-URST7EEN.mjs → chunk-WS2PJDES.mjs} +13 -9
  28. package/dist/lib/browser/chunk-WS2PJDES.mjs.map +7 -0
  29. package/dist/lib/browser/{identity-created-T6ZNVE7S.mjs → identity-created-PW2BA46S.mjs} +3 -3
  30. package/dist/lib/browser/{identity-created-T6ZNVE7S.mjs.map → identity-created-PW2BA46S.mjs.map} +1 -1
  31. package/dist/lib/browser/index.mjs +34 -31
  32. package/dist/lib/browser/index.mjs.map +3 -3
  33. package/dist/lib/browser/{intent-resolver-CO262Q44.mjs → intent-resolver-XQSUBM5U.mjs} +30 -28
  34. package/dist/lib/browser/intent-resolver-XQSUBM5U.mjs.map +7 -0
  35. package/dist/lib/browser/meta.json +1 -1
  36. package/dist/lib/browser/{react-root-K4IVLFYZ.mjs → react-root-OIXDY6US.mjs} +11 -11
  37. package/dist/lib/browser/react-root-OIXDY6US.mjs.map +7 -0
  38. package/dist/lib/browser/{react-surface-TPUOK2LC.mjs → react-surface-I4BQVF7V.mjs} +42 -73
  39. package/dist/lib/browser/react-surface-I4BQVF7V.mjs.map +7 -0
  40. package/dist/lib/browser/{schema-defs-YDPFZELA.mjs → schema-defs-7R7RKCAE.mjs} +5 -5
  41. package/dist/lib/browser/{schema-defs-YDPFZELA.mjs.map → schema-defs-7R7RKCAE.mjs.map} +1 -1
  42. package/dist/lib/browser/{settings-ZYH2JWNI.mjs → settings-OBFJ67ZG.mjs} +5 -5
  43. package/dist/lib/browser/{settings-ZYH2JWNI.mjs.map → settings-OBFJ67ZG.mjs.map} +1 -1
  44. package/dist/lib/browser/{spaces-ready-3I5LISH4.mjs → spaces-ready-6YB55EJK.mjs} +8 -8
  45. package/dist/lib/browser/spaces-ready-6YB55EJK.mjs.map +7 -0
  46. package/dist/lib/browser/{state-2RGW7FQG.mjs → state-LSPRFIRO.mjs} +7 -7
  47. package/dist/lib/browser/state-LSPRFIRO.mjs.map +7 -0
  48. package/dist/lib/browser/types/index.mjs +2 -2
  49. package/dist/lib/node-esm/{CollectionMain-ZJIFCWKZ.mjs → CollectionMain-EU57SRYK.mjs} +4 -4
  50. package/dist/lib/node-esm/CollectionMain-EU57SRYK.mjs.map +7 -0
  51. package/dist/lib/node-esm/ObjectDetailsPanel-NABA2S56.mjs +146 -0
  52. package/dist/lib/node-esm/ObjectDetailsPanel-NABA2S56.mjs.map +7 -0
  53. package/dist/lib/node-esm/ObjectSettings-GXGTITF5.mjs +152 -0
  54. package/dist/lib/node-esm/ObjectSettings-GXGTITF5.mjs.map +7 -0
  55. package/dist/lib/node-esm/RecordMain-ME2BU65P.mjs +120 -0
  56. package/dist/lib/node-esm/RecordMain-ME2BU65P.mjs.map +7 -0
  57. package/dist/lib/node-esm/{app-graph-builder-OW2EBYRI.mjs → app-graph-builder-PYG5N3FB.mjs} +61 -58
  58. package/dist/lib/node-esm/app-graph-builder-PYG5N3FB.mjs.map +7 -0
  59. package/dist/lib/node-esm/{app-graph-serializer-6PGC5WR5.mjs → app-graph-serializer-FVQ2WB3U.mjs} +14 -14
  60. package/dist/lib/node-esm/app-graph-serializer-FVQ2WB3U.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-RXDT5LA5.mjs → chunk-4F25JKVT.mjs} +13 -9
  62. package/dist/lib/node-esm/chunk-4F25JKVT.mjs.map +7 -0
  63. package/dist/lib/node-esm/{chunk-LGNPMOXU.mjs → chunk-DNRBVD2G.mjs} +12 -4
  64. package/dist/lib/node-esm/chunk-DNRBVD2G.mjs.map +7 -0
  65. package/dist/lib/node-esm/chunk-GHL2523Z.mjs +167 -0
  66. package/dist/lib/node-esm/chunk-GHL2523Z.mjs.map +7 -0
  67. package/dist/lib/node-esm/chunk-H5UPFRRH.mjs +21 -0
  68. package/dist/lib/node-esm/chunk-H5UPFRRH.mjs.map +7 -0
  69. package/dist/lib/node-esm/{chunk-HWNG4MEU.mjs → chunk-MWNATOXL.mjs} +2 -4
  70. package/dist/lib/node-esm/chunk-MWNATOXL.mjs.map +7 -0
  71. package/dist/lib/node-esm/{chunk-TEUN2E4F.mjs → chunk-QHAVT7PC.mjs} +47 -38
  72. package/dist/lib/node-esm/chunk-QHAVT7PC.mjs.map +7 -0
  73. package/dist/lib/node-esm/chunk-SVFKU7EW.mjs +20 -0
  74. package/dist/lib/node-esm/chunk-SVFKU7EW.mjs.map +7 -0
  75. package/dist/lib/node-esm/{chunk-NMCD2PSG.mjs → chunk-X55EOSEF.mjs} +258 -289
  76. package/dist/lib/node-esm/chunk-X55EOSEF.mjs.map +7 -0
  77. package/dist/lib/node-esm/{identity-created-AL7NNCKH.mjs → identity-created-MWTLGQRU.mjs} +3 -3
  78. package/dist/lib/node-esm/{identity-created-AL7NNCKH.mjs.map → identity-created-MWTLGQRU.mjs.map} +1 -1
  79. package/dist/lib/node-esm/index.mjs +34 -31
  80. package/dist/lib/node-esm/index.mjs.map +3 -3
  81. package/dist/lib/node-esm/{intent-resolver-EXPK4B76.mjs → intent-resolver-27YPEIWX.mjs} +30 -28
  82. package/dist/lib/node-esm/intent-resolver-27YPEIWX.mjs.map +7 -0
  83. package/dist/lib/node-esm/meta.json +1 -1
  84. package/dist/lib/node-esm/{react-root-4OQ7MPGW.mjs → react-root-K7YPW753.mjs} +11 -11
  85. package/dist/lib/node-esm/react-root-K7YPW753.mjs.map +7 -0
  86. package/dist/lib/node-esm/{react-surface-WXEXIDB7.mjs → react-surface-F5LL3JUY.mjs} +42 -73
  87. package/dist/lib/node-esm/react-surface-F5LL3JUY.mjs.map +7 -0
  88. package/dist/lib/node-esm/{schema-defs-OYBCWKAS.mjs → schema-defs-RYG5DSUE.mjs} +5 -5
  89. package/dist/lib/node-esm/{schema-defs-OYBCWKAS.mjs.map → schema-defs-RYG5DSUE.mjs.map} +1 -1
  90. package/dist/lib/node-esm/{settings-2RYFMMTP.mjs → settings-QGWWNMMZ.mjs} +5 -5
  91. package/dist/lib/node-esm/{settings-2RYFMMTP.mjs.map → settings-QGWWNMMZ.mjs.map} +1 -1
  92. package/dist/lib/node-esm/{spaces-ready-JAP22P57.mjs → spaces-ready-EPHL7RGX.mjs} +8 -8
  93. package/dist/lib/node-esm/spaces-ready-EPHL7RGX.mjs.map +7 -0
  94. package/dist/lib/node-esm/{state-7VBVBGNS.mjs → state-TCGOPLRO.mjs} +7 -7
  95. package/dist/lib/node-esm/state-TCGOPLRO.mjs.map +7 -0
  96. package/dist/lib/node-esm/types/index.mjs +2 -2
  97. package/dist/types/src/SpacePlugin.d.ts +1 -1
  98. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  99. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  100. package/dist/types/src/capabilities/capabilities.d.ts +4 -3
  101. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  102. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  103. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +1 -1
  104. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  105. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +80 -1
  106. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  107. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +1 -1
  108. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  109. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts +1 -1
  110. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
  111. package/dist/types/src/components/JoinDialog.d.ts +1 -1
  112. package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
  113. package/dist/types/src/components/MembersContainer.stories.d.ts +80 -1
  114. package/dist/types/src/components/MembersContainer.stories.d.ts.map +1 -1
  115. package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts +9 -0
  116. package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts.map +1 -0
  117. package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts +10 -0
  118. package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts.map +1 -0
  119. package/dist/types/src/components/ObjectDetailsPanel/index.d.ts +3 -0
  120. package/dist/types/src/components/ObjectDetailsPanel/index.d.ts.map +1 -0
  121. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts +1 -1
  122. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +1 -1
  123. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts +1500 -0
  124. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts.map +1 -0
  125. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts +1 -1
  126. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts.map +1 -1
  127. package/dist/types/src/components/ObjectSettings/index.d.ts +2 -1
  128. package/dist/types/src/components/ObjectSettings/index.d.ts.map +1 -1
  129. package/dist/types/src/components/PopoverRenameObject.d.ts +1 -1
  130. package/dist/types/src/components/PopoverRenameObject.d.ts.map +1 -1
  131. package/dist/types/src/components/PopoverRenameSpace.d.ts +1 -1
  132. package/dist/types/src/components/PopoverRenameSpace.d.ts.map +1 -1
  133. package/dist/types/src/components/RecordMain.d.ts +1 -1
  134. package/dist/types/src/components/RecordMain.d.ts.map +1 -1
  135. package/dist/types/src/components/SpacePresence.stories.d.ts +82 -3
  136. package/dist/types/src/components/SpacePresence.stories.d.ts.map +1 -1
  137. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  138. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +80 -1
  139. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
  140. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
  141. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +81 -2
  142. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  143. package/dist/types/src/components/ViewEditor.d.ts.map +1 -1
  144. package/dist/types/src/components/index.d.ts +4 -4
  145. package/dist/types/src/components/index.d.ts.map +1 -1
  146. package/dist/types/src/events.d.ts.map +1 -1
  147. package/dist/types/src/hooks/index.d.ts +1 -0
  148. package/dist/types/src/hooks/index.d.ts.map +1 -1
  149. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts +1 -1
  150. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
  151. package/dist/types/src/hooks/usePath.d.ts +1 -1
  152. package/dist/types/src/hooks/usePath.d.ts.map +1 -1
  153. package/dist/types/src/hooks/useTypeOptions.d.ts +10 -0
  154. package/dist/types/src/hooks/useTypeOptions.d.ts.map +1 -0
  155. package/dist/types/src/meta.d.ts +0 -1
  156. package/dist/types/src/meta.d.ts.map +1 -1
  157. package/dist/types/src/translations.d.ts +80 -0
  158. package/dist/types/src/translations.d.ts.map +1 -1
  159. package/dist/types/src/types/types.d.ts +54 -52
  160. package/dist/types/src/types/types.d.ts.map +1 -1
  161. package/dist/types/src/util.d.ts +6 -3
  162. package/dist/types/src/util.d.ts.map +1 -1
  163. package/dist/types/tsconfig.tsbuildinfo +1 -1
  164. package/package.json +61 -59
  165. package/src/SpacePlugin.ts +206 -200
  166. package/src/capabilities/app-graph-builder.ts +53 -46
  167. package/src/capabilities/app-graph-serializer.ts +7 -7
  168. package/src/capabilities/capabilities.ts +15 -10
  169. package/src/capabilities/intent-resolver.ts +19 -19
  170. package/src/capabilities/react-root.tsx +2 -2
  171. package/src/capabilities/react-surface.tsx +31 -102
  172. package/src/capabilities/spaces-ready.ts +1 -1
  173. package/src/capabilities/state.ts +2 -2
  174. package/src/components/AwaitingObject.tsx +2 -2
  175. package/src/components/CollectionMain.tsx +2 -2
  176. package/src/components/CollectionSection.tsx +2 -2
  177. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +5 -5
  178. package/src/components/CreateDialog/CreateObjectDialog.tsx +8 -7
  179. package/src/components/CreateDialog/CreateObjectPanel.tsx +6 -6
  180. package/src/components/CreateDialog/CreateSpaceDialog.tsx +5 -4
  181. package/src/components/JoinDialog.tsx +6 -6
  182. package/src/components/MembersContainer.stories.tsx +6 -5
  183. package/src/components/MembersContainer.tsx +6 -6
  184. package/src/components/MenuFooter.tsx +2 -2
  185. package/src/components/{ObjectDetailsPanel.tsx → ObjectDetailsPanel/ObjectDetailsPanel.tsx} +9 -36
  186. package/src/components/ObjectDetailsPanel/ObjectForm.tsx +75 -0
  187. package/src/components/ObjectDetailsPanel/index.ts +7 -0
  188. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +3 -3
  189. package/src/components/ObjectSettings/BaseObjectSettings.stories.tsx +63 -0
  190. package/src/components/ObjectSettings/BaseObjectSettings.tsx +96 -26
  191. package/src/components/ObjectSettings/ForeignKeys.tsx +3 -3
  192. package/src/components/ObjectSettings/index.ts +3 -1
  193. package/src/components/PersistenceStatus.tsx +2 -2
  194. package/src/components/PopoverRenameObject.tsx +3 -3
  195. package/src/components/PopoverRenameSpace.tsx +3 -3
  196. package/src/components/RecordMain.tsx +61 -9
  197. package/src/components/SchemaContainer.tsx +3 -3
  198. package/src/components/SpacePluginSettings.tsx +2 -2
  199. package/src/components/SpacePresence.stories.tsx +22 -24
  200. package/src/components/SpacePresence.tsx +3 -3
  201. package/src/components/SpaceSettings/SpaceSettingsContainer.stories.tsx +9 -4
  202. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +13 -12
  203. package/src/components/SyncStatus/InlineSyncStatus.tsx +7 -7
  204. package/src/components/SyncStatus/SyncStatus.stories.tsx +4 -5
  205. package/src/components/SyncStatus/SyncStatus.tsx +92 -5
  206. package/src/components/ViewEditor.tsx +6 -7
  207. package/src/components/index.ts +1 -1
  208. package/src/events.ts +6 -6
  209. package/src/hooks/index.ts +1 -0
  210. package/src/hooks/useInputSurfaceLookup.tsx +1 -1
  211. package/src/hooks/usePath.ts +1 -1
  212. package/src/hooks/useTypeOptions.ts +59 -0
  213. package/src/meta.ts +1 -3
  214. package/src/translations.ts +10 -1
  215. package/src/types/types.ts +11 -7
  216. package/src/util.tsx +46 -32
  217. package/dist/lib/browser/CollectionMain-D2B75XBS.mjs.map +0 -7
  218. package/dist/lib/browser/ObjectDetailsPanel-J7KGPJJK.mjs +0 -90
  219. package/dist/lib/browser/ObjectDetailsPanel-J7KGPJJK.mjs.map +0 -7
  220. package/dist/lib/browser/RecordMain-TEBGAVSL.mjs +0 -68
  221. package/dist/lib/browser/RecordMain-TEBGAVSL.mjs.map +0 -7
  222. package/dist/lib/browser/app-graph-builder-AFC6PNAB.mjs.map +0 -7
  223. package/dist/lib/browser/app-graph-serializer-Q7QG4EKW.mjs.map +0 -7
  224. package/dist/lib/browser/chunk-6GRF7NEF.mjs.map +0 -7
  225. package/dist/lib/browser/chunk-CBYL62HG.mjs +0 -19
  226. package/dist/lib/browser/chunk-CBYL62HG.mjs.map +0 -7
  227. package/dist/lib/browser/chunk-ELJDGQTO.mjs +0 -94
  228. package/dist/lib/browser/chunk-ELJDGQTO.mjs.map +0 -7
  229. package/dist/lib/browser/chunk-FBCGT5YY.mjs +0 -13
  230. package/dist/lib/browser/chunk-FBCGT5YY.mjs.map +0 -7
  231. package/dist/lib/browser/chunk-S33AYKSS.mjs.map +0 -7
  232. package/dist/lib/browser/chunk-TUQZO5P4.mjs +0 -20
  233. package/dist/lib/browser/chunk-TUQZO5P4.mjs.map +0 -7
  234. package/dist/lib/browser/chunk-URST7EEN.mjs.map +0 -7
  235. package/dist/lib/browser/chunk-WZYRDFW7.mjs.map +0 -7
  236. package/dist/lib/browser/intent-resolver-CO262Q44.mjs.map +0 -7
  237. package/dist/lib/browser/react-root-K4IVLFYZ.mjs.map +0 -7
  238. package/dist/lib/browser/react-surface-TPUOK2LC.mjs.map +0 -7
  239. package/dist/lib/browser/spaces-ready-3I5LISH4.mjs.map +0 -7
  240. package/dist/lib/browser/state-2RGW7FQG.mjs.map +0 -7
  241. package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs.map +0 -7
  242. package/dist/lib/node-esm/ObjectDetailsPanel-7ADOXZ5W.mjs +0 -91
  243. package/dist/lib/node-esm/ObjectDetailsPanel-7ADOXZ5W.mjs.map +0 -7
  244. package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs +0 -70
  245. package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs.map +0 -7
  246. package/dist/lib/node-esm/app-graph-builder-OW2EBYRI.mjs.map +0 -7
  247. package/dist/lib/node-esm/app-graph-serializer-6PGC5WR5.mjs.map +0 -7
  248. package/dist/lib/node-esm/chunk-FJZNSJC4.mjs +0 -20
  249. package/dist/lib/node-esm/chunk-FJZNSJC4.mjs.map +0 -7
  250. package/dist/lib/node-esm/chunk-HC677WUJ.mjs +0 -21
  251. package/dist/lib/node-esm/chunk-HC677WUJ.mjs.map +0 -7
  252. package/dist/lib/node-esm/chunk-HWNG4MEU.mjs.map +0 -7
  253. package/dist/lib/node-esm/chunk-LGNPMOXU.mjs.map +0 -7
  254. package/dist/lib/node-esm/chunk-NMCD2PSG.mjs.map +0 -7
  255. package/dist/lib/node-esm/chunk-Q6AAQLQG.mjs +0 -96
  256. package/dist/lib/node-esm/chunk-Q6AAQLQG.mjs.map +0 -7
  257. package/dist/lib/node-esm/chunk-RXDT5LA5.mjs.map +0 -7
  258. package/dist/lib/node-esm/chunk-TEUN2E4F.mjs.map +0 -7
  259. package/dist/lib/node-esm/intent-resolver-EXPK4B76.mjs.map +0 -7
  260. package/dist/lib/node-esm/react-root-4OQ7MPGW.mjs.map +0 -7
  261. package/dist/lib/node-esm/react-surface-WXEXIDB7.mjs.map +0 -7
  262. package/dist/lib/node-esm/spaces-ready-JAP22P57.mjs.map +0 -7
  263. package/dist/lib/node-esm/state-7VBVBGNS.mjs.map +0 -7
  264. package/dist/types/src/components/ObjectDetailsPanel.d.ts +0 -9
  265. package/dist/types/src/components/ObjectDetailsPanel.d.ts.map +0 -1
@@ -2,22 +2,21 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  useInputSurfaceLookup,
4
4
  usePath
5
- } from "./chunk-Q6AAQLQG.mjs";
5
+ } from "./chunk-GHL2523Z.mjs";
6
6
  import {
7
7
  SpaceCapabilities
8
- } from "./chunk-HC677WUJ.mjs";
8
+ } from "./chunk-H5UPFRRH.mjs";
9
9
  import {
10
10
  COMPOSER_SPACE_LOCK,
11
11
  getSpaceDisplayName
12
- } from "./chunk-TEUN2E4F.mjs";
12
+ } from "./chunk-QHAVT7PC.mjs";
13
13
  import {
14
14
  SpaceAction,
15
15
  SpaceForm
16
- } from "./chunk-RXDT5LA5.mjs";
16
+ } from "./chunk-4F25JKVT.mjs";
17
17
  import {
18
- SPACE_PLUGIN,
19
18
  meta
20
- } from "./chunk-HWNG4MEU.mjs";
19
+ } from "./chunk-MWNATOXL.mjs";
21
20
 
22
21
  // src/components/AwaitingObject.tsx
23
22
  import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
@@ -34,7 +33,7 @@ var AwaitingObject = ({ id }) => {
34
33
  const [open, setOpen] = useState(true);
35
34
  const [waiting, setWaiting] = useState(true);
36
35
  const [found, setFound] = useState(false);
37
- const { t } = useTranslation(SPACE_PLUGIN);
36
+ const { t } = useTranslation(meta.id);
38
37
  const { dispatchPromise: dispatch } = useIntentDispatcher();
39
38
  const layout = useLayout();
40
39
  const client = useClient();
@@ -122,7 +121,8 @@ var AwaitingObject = ({ id }) => {
122
121
 
123
122
  // src/components/CreateDialog/CreateObjectDialog.tsx
124
123
  import { useSignals as _useSignals3 } from "@preact-signals/safe-react/tracking";
125
- import { Effect, pipe } from "effect";
124
+ import * as Effect from "effect/Effect";
125
+ import * as Function from "effect/Function";
126
126
  import React3, { useCallback as useCallback3, useRef, useState as useState2 } from "react";
127
127
  import { Capabilities, LayoutAction as LayoutAction2, chain, createIntent as createIntent2, useCapabilities, useIntentDispatcher as useIntentDispatcher2, usePluginManager } from "@dxos/app-framework";
128
128
  import { Obj, Query, Type as Type2 } from "@dxos/echo";
@@ -131,28 +131,15 @@ import { useClient as useClient2 } from "@dxos/react-client";
131
131
  import { getSpace, isLiveObject, isSpace, useQuery as useQuery2, useSpaces } from "@dxos/react-client/echo";
132
132
  import { Button as Button2, Dialog, Icon as Icon3, useTranslation as useTranslation3 } from "@dxos/react-ui";
133
133
  import { cardDialogContent, cardDialogHeader } from "@dxos/react-ui-stack";
134
- import { DataType, typenameFromQuery } from "@dxos/schema";
134
+ import { DataType, getTypenameFromQuery } from "@dxos/schema";
135
135
  import { isNonNullable as isNonNullable2 } from "@dxos/util";
136
136
 
137
- // src/capabilities/index.ts
138
- import { lazy } from "@dxos/app-framework";
139
- var AppGraphBuilder = lazy(() => import("./app-graph-builder-OW2EBYRI.mjs"));
140
- var AppGraphSerializer = lazy(() => import("./app-graph-serializer-6PGC5WR5.mjs"));
141
- var IdentityCreated = lazy(() => import("./identity-created-AL7NNCKH.mjs"));
142
- var IntentResolver = lazy(() => import("./intent-resolver-EXPK4B76.mjs"));
143
- var ReactRoot = lazy(() => import("./react-root-4OQ7MPGW.mjs"));
144
- var ReactSurface = lazy(() => import("./react-surface-WXEXIDB7.mjs"));
145
- var SchemaDefs = lazy(() => import("./schema-defs-OYBCWKAS.mjs"));
146
- var SpaceSettings = lazy(() => import("./settings-2RYFMMTP.mjs"));
147
- var SpaceState = lazy(() => import("./state-7VBVBGNS.mjs"));
148
- var SpacesReady = lazy(() => import("./spaces-ready-JAP22P57.mjs"));
149
-
150
137
  // src/components/CreateDialog/CreateObjectPanel.tsx
151
138
  import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
152
- import { Option } from "effect";
139
+ import * as Option from "effect/Option";
153
140
  import React2, { useCallback as useCallback2 } from "react";
154
141
  import { Type } from "@dxos/echo";
155
- import { ViewAnnotation, getTypeAnnotation } from "@dxos/echo-schema";
142
+ import { ViewAnnotation, getTypeAnnotation } from "@dxos/echo/internal";
156
143
  import { Icon as Icon2, toLocalizedString, useDefaultValue, useTranslation as useTranslation2 } from "@dxos/react-ui";
157
144
  import { Form } from "@dxos/react-ui-form";
158
145
  import { SearchList } from "@dxos/react-ui-searchlist";
@@ -161,7 +148,7 @@ import { isNonNullable } from "@dxos/util";
161
148
  var CreateObjectPanel = ({ forms, spaces, typename, target, views, initialFormValues: _initialFormValues, defaultSpaceId, resolve, onTargetChange, onTypenameChange, onCreateObject }) => {
162
149
  var _effect = _useSignals2();
163
150
  try {
164
- const { t } = useTranslation2(SPACE_PLUGIN);
151
+ const { t } = useTranslation2(meta.id);
165
152
  const initialFormValues = useDefaultValue(_initialFormValues, () => ({}));
166
153
  const form = forms.find((form2) => Type.getTypename(form2.objectSchema) === typename);
167
154
  const options = forms.filter((form2) => {
@@ -236,7 +223,7 @@ var CreateObjectPanel = ({ forms, spaces, typename, target, views, initialFormVa
236
223
  var SelectSpace = ({ spaces, defaultSpaceId, onChange }) => {
237
224
  var _effect = _useSignals2();
238
225
  try {
239
- const { t } = useTranslation2(SPACE_PLUGIN);
226
+ const { t } = useTranslation2(meta.id);
240
227
  return /* @__PURE__ */ React2.createElement(SearchList.Root, {
241
228
  label: t("space input label"),
242
229
  classNames: cardDialogSearchListRoot
@@ -276,7 +263,7 @@ var SelectSpace = ({ spaces, defaultSpaceId, onChange }) => {
276
263
  var SelectSchema = ({ options, resolve, onChange }) => {
277
264
  var _effect = _useSignals2();
278
265
  try {
279
- const { t } = useTranslation2(SPACE_PLUGIN);
266
+ const { t } = useTranslation2(meta.id);
280
267
  return /* @__PURE__ */ React2.createElement(SearchList.Root, {
281
268
  label: t("schema input label"),
282
269
  classNames: cardDialogSearchListRoot
@@ -310,13 +297,13 @@ var SelectSchema = ({ options, resolve, onChange }) => {
310
297
 
311
298
  // src/components/CreateDialog/CreateObjectDialog.tsx
312
299
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/CreateDialog/CreateObjectDialog.tsx";
313
- var CREATE_OBJECT_DIALOG = `${SPACE_PLUGIN}/CreateObjectDialog`;
300
+ var CREATE_OBJECT_DIALOG = `${meta.id}/CreateObjectDialog`;
314
301
  var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, views, initialFormValues, onCreateObject, shouldNavigate: _shouldNavigate }) => {
315
302
  var _effect = _useSignals3();
316
303
  try {
317
304
  const closeRef = useRef(null);
318
305
  const manager = usePluginManager();
319
- const { t } = useTranslation3(SPACE_PLUGIN);
306
+ const { t } = useTranslation3(meta.id);
320
307
  const client = useClient2();
321
308
  const spaces = useSpaces();
322
309
  const { dispatch } = useIntentDispatcher2();
@@ -325,7 +312,7 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, vi
325
312
  const [typename, setTypename] = useState2(initialTypename);
326
313
  const space = isSpace(target) ? target : getSpace(target);
327
314
  const queryCollections = useQuery2(space, Query.type(DataType.QueryCollection));
328
- const hiddenTypenames = queryCollections.map((collection) => typenameFromQuery(collection.query)).filter(isNonNullable2);
315
+ const hiddenTypenames = queryCollections.map((collection) => getTypenameFromQuery(collection.query)).filter(isNonNullable2);
329
316
  const resolve = useCallback3((typename2) => manager.context.getCapabilities(Capabilities.Metadata).find(({ id }) => id === typename2)?.metadata ?? {}, [
330
317
  manager
331
318
  ]);
@@ -337,7 +324,7 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, vi
337
324
  const space2 = isSpace(target) ? target : getSpace(target);
338
325
  invariant(space2, "Missing space", {
339
326
  F: __dxlog_file,
340
- L: 83,
327
+ L: 84,
341
328
  S: this,
342
329
  A: [
343
330
  "space",
@@ -356,7 +343,7 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, vi
356
343
  });
357
344
  const shouldNavigate = _shouldNavigate ?? (() => true);
358
345
  if (shouldNavigate(object)) {
359
- yield* dispatch(pipe(addObjectIntent, chain(LayoutAction2.Open, {
346
+ yield* dispatch(Function.pipe(addObjectIntent, chain(LayoutAction2.Open, {
360
347
  part: "main"
361
348
  })));
362
349
  } else {
@@ -415,13 +402,13 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, vi
415
402
 
416
403
  // src/components/CreateDialog/CreateSpaceDialog.tsx
417
404
  import { useSignals as _useSignals4 } from "@preact-signals/safe-react/tracking";
418
- import { Effect as Effect2 } from "effect";
405
+ import * as Effect2 from "effect/Effect";
419
406
  import React4, { useCallback as useCallback4, useRef as useRef2 } from "react";
420
407
  import { LayoutAction as LayoutAction3, createIntent as createIntent3, useIntentDispatcher as useIntentDispatcher3 } from "@dxos/app-framework";
421
408
  import { Button as Button3, Dialog as Dialog2, Icon as Icon4, useTranslation as useTranslation4 } from "@dxos/react-ui";
422
409
  import { Form as Form2 } from "@dxos/react-ui-form";
423
410
  import { cardDialogContent as cardDialogContent2, cardDialogHeader as cardDialogHeader2 } from "@dxos/react-ui-stack";
424
- var CREATE_SPACE_DIALOG = `${SPACE_PLUGIN}/CreateSpaceDialog`;
411
+ var CREATE_SPACE_DIALOG = `${meta.id}/CreateSpaceDialog`;
425
412
  var initialValues = {
426
413
  edgeReplication: true
427
414
  };
@@ -429,7 +416,7 @@ var CreateSpaceDialog = () => {
429
416
  var _effect = _useSignals4();
430
417
  try {
431
418
  const closeRef = useRef2(null);
432
- const { t } = useTranslation4(SPACE_PLUGIN);
419
+ const { t } = useTranslation4(meta.id);
433
420
  const { dispatch } = useIntentDispatcher3();
434
421
  const inputSurfaceLookup = useInputSurfaceLookup();
435
422
  const handleCreateSpace = useCallback4(async (data) => {
@@ -493,7 +480,7 @@ import { useTranslation as useTranslation5 } from "@dxos/react-ui";
493
480
  var CollectionSection = ({ collection }) => {
494
481
  var _effect = _useSignals5();
495
482
  try {
496
- const { t } = useTranslation5(SPACE_PLUGIN);
483
+ const { t } = useTranslation5(meta.id);
497
484
  return /* @__PURE__ */ React5.createElement("div", {
498
485
  className: "min-bs-[3.5rem] grid grid-rows-subgrid grid-cols-subgrid items-center"
499
486
  }, /* @__PURE__ */ React5.createElement("span", {
@@ -513,14 +500,14 @@ import { ObservabilityAction } from "@dxos/plugin-observability/types";
513
500
  import { useClient as useClient3 } from "@dxos/react-client";
514
501
  import { Dialog as Dialog3, useTranslation as useTranslation6 } from "@dxos/react-ui";
515
502
  import { JoinPanel } from "@dxos/shell/react";
516
- var JOIN_DIALOG = `${SPACE_PLUGIN}/JoinDialog`;
503
+ var JOIN_DIALOG = `${meta.id}/JoinDialog`;
517
504
  var JoinDialog = ({ navigableCollections, onDone, ...props }) => {
518
505
  var _effect = _useSignals6();
519
506
  try {
520
507
  const { dispatchPromise: dispatch } = useIntentDispatcher4();
521
508
  const client = useClient3();
522
509
  const { graph } = useAppGraph();
523
- const { t } = useTranslation6(SPACE_PLUGIN);
510
+ const { t } = useTranslation6(meta.id);
524
511
  const handleDone = useCallback5(async (result) => {
525
512
  const spaceKey = result?.spaceKey;
526
513
  if (!spaceKey) {
@@ -530,18 +517,18 @@ var JoinDialog = ({ navigableCollections, onDone, ...props }) => {
530
517
  dispatch(createIntent4(LayoutAction4.AddToast, {
531
518
  part: "toast",
532
519
  subject: {
533
- id: `${SPACE_PLUGIN}/join-success`,
520
+ id: `${meta.id}/join-success`,
534
521
  duration: 5e3,
535
522
  title: [
536
523
  "join success label",
537
524
  {
538
- ns: SPACE_PLUGIN
525
+ ns: meta.id
539
526
  }
540
527
  ],
541
528
  closeLabel: [
542
529
  "dismiss label",
543
530
  {
544
- ns: SPACE_PLUGIN
531
+ ns: meta.id
545
532
  }
546
533
  ]
547
534
  }
@@ -655,7 +642,7 @@ var handleInvitationEvent = (invitation, subscription) => {
655
642
  var MembersContainer = ({ space, createInvitationUrl }) => {
656
643
  var _effect = _useSignals7();
657
644
  try {
658
- const { t } = useTranslation7(SPACE_PLUGIN);
645
+ const { t } = useTranslation7(meta.id);
659
646
  const config = useConfig();
660
647
  const { dispatchPromise: dispatch } = useIntentDispatcher5();
661
648
  const invitations = useSpaceInvitations(space.key);
@@ -683,10 +670,7 @@ var MembersContainer = ({ space, createInvitationUrl }) => {
683
670
  description: t("invite one description", {
684
671
  ns: "os"
685
672
  }),
686
- icon: () => /* @__PURE__ */ React7.createElement(Icon5, {
687
- icon: "ph--user-plus--regular",
688
- size: 5
689
- }),
673
+ icon: "ph--user-plus--regular",
690
674
  testId: "membersContainer.inviteOne",
691
675
  onClick: async () => {
692
676
  const { data: invitation } = await dispatch(createIntent5(SpaceAction.Share, {
@@ -708,10 +692,7 @@ var MembersContainer = ({ space, createInvitationUrl }) => {
708
692
  description: t("invite many description", {
709
693
  ns: "os"
710
694
  }),
711
- icon: () => /* @__PURE__ */ React7.createElement(Icon5, {
712
- icon: "ph--users-three--regular",
713
- size: 5
714
- }),
695
+ icon: "ph--users-three--regular",
715
696
  testId: "membersContainer.inviteMany",
716
697
  onClick: async () => {
717
698
  const { data: invitation } = await dispatch(createIntent5(SpaceAction.Share, {
@@ -739,7 +720,7 @@ var MembersContainer = ({ space, createInvitationUrl }) => {
739
720
  setSelectedInvitation(null);
740
721
  };
741
722
  return /* @__PURE__ */ React7.createElement(Clipboard.Provider, null, /* @__PURE__ */ React7.createElement(StackItem.Content, {
742
- classNames: "block overflow-y-auto"
723
+ scrollable: true
743
724
  }, /* @__PURE__ */ React7.createElement(ControlPage, null, /* @__PURE__ */ React7.createElement(ControlSection, {
744
725
  title: t("members verbose label"),
745
726
  description: t("members description")
@@ -822,7 +803,7 @@ var InvitationQR = ({ id, url, onCancel }) => {
822
803
  return /* @__PURE__ */ React7.createElement(React7.Fragment, null, /* @__PURE__ */ React7.createElement("p", {
823
804
  className: "text-description"
824
805
  }, t("qr code description", {
825
- ns: SPACE_PLUGIN
806
+ ns: meta.id
826
807
  })), /* @__PURE__ */ React7.createElement("div", {
827
808
  role: "group",
828
809
  className: "grid grid-cols-[1fr_min-content] mlb-2 gap-2"
@@ -901,7 +882,7 @@ import { DropdownMenu, Icon as Icon6, toLocalizedString as toLocalizedString2, u
901
882
  var MenuFooter = ({ object }) => {
902
883
  var _effect = _useSignals8();
903
884
  try {
904
- const { t } = useTranslation8(SPACE_PLUGIN);
885
+ const { t } = useTranslation8(meta.id);
905
886
  const client = useClient4();
906
887
  const space = getSpace2(object);
907
888
  const spaceName = space ? getSpaceDisplayName(space, {
@@ -922,79 +903,16 @@ var MenuFooter = ({ object }) => {
922
903
  }
923
904
  };
924
905
 
925
- // src/components/ObjectSettings/ObjectSettingsContainer.tsx
926
- import { useSignals as _useSignals10 } from "@preact-signals/safe-react/tracking";
927
- import React10, { useMemo as useMemo2 } from "react";
928
- import { Surface } from "@dxos/app-framework";
929
- import { Clipboard as Clipboard2, Toolbar } from "@dxos/react-ui";
930
- import { StackItem as StackItem2 } from "@dxos/react-ui-stack";
931
-
932
- // src/components/ObjectSettings/BaseObjectSettings.tsx
933
- import { useSignals as _useSignals9 } from "@preact-signals/safe-react/tracking";
934
- import React9, { useRef as useRef3 } from "react";
935
- import { Input as Input2, useTranslation as useTranslation9 } from "@dxos/react-ui";
936
- var BaseObjectSettings = ({ classNames, children, object }) => {
937
- var _effect = _useSignals9();
938
- try {
939
- const { t } = useTranslation9(meta.id);
940
- const inputRef = useRef3(null);
941
- return /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement(Input2.Root, null, /* @__PURE__ */ React9.createElement(Input2.Label, null, t("name label")), /* @__PURE__ */ React9.createElement(Input2.TextInput, {
942
- ref: inputRef,
943
- placeholder: t("name placeholder"),
944
- // TODO(burdon): Use annotation to get the name field.
945
- value: object.name ?? "",
946
- onChange: (event) => {
947
- object.name = event.target.value;
948
- },
949
- onKeyDown: (event) => {
950
- if (event.key === "Enter") {
951
- inputRef.current?.blur();
952
- }
953
- }
954
- })), children);
955
- } finally {
956
- _effect.f();
957
- }
958
- };
959
-
960
- // src/components/ObjectSettings/ObjectSettingsContainer.tsx
961
- var ObjectSettingsContainer = ({ object, role }) => {
962
- var _effect = _useSignals10();
963
- try {
964
- const data = useMemo2(() => ({
965
- subject: object
966
- }), [
967
- object
968
- ]);
969
- return /* @__PURE__ */ React10.createElement(Clipboard2.Provider, null, /* @__PURE__ */ React10.createElement(StackItem2.Content, {
970
- toolbar: true
971
- }, /* @__PURE__ */ React10.createElement(Toolbar.Root, null), /* @__PURE__ */ React10.createElement("div", {
972
- role: "none",
973
- className: "overflow-y-auto pli-cardSpacingInline plb-cardSpacingBlock"
974
- }, /* @__PURE__ */ React10.createElement(BaseObjectSettings, {
975
- object
976
- }, /* @__PURE__ */ React10.createElement(Surface, {
977
- role: "base-object-settings",
978
- data
979
- })), /* @__PURE__ */ React10.createElement(Surface, {
980
- role: "object-settings",
981
- data
982
- }))));
983
- } finally {
984
- _effect.f();
985
- }
986
- };
987
-
988
906
  // src/components/PersistenceStatus.tsx
989
- import { useSignals as _useSignals11 } from "@preact-signals/safe-react/tracking";
990
- import React11, { useEffect as useEffect2, useState as useState4 } from "react";
907
+ import { useSignals as _useSignals9 } from "@preact-signals/safe-react/tracking";
908
+ import React9, { useEffect as useEffect2, useState as useState4 } from "react";
991
909
  import { debounce } from "@dxos/async";
992
- import { Icon as Icon7, Tooltip, useTranslation as useTranslation10 } from "@dxos/react-ui";
910
+ import { Icon as Icon7, Tooltip, useTranslation as useTranslation9 } from "@dxos/react-ui";
993
911
  import { mx, staticPlaceholderText, warningText } from "@dxos/react-ui-theme";
994
912
  var PersistenceStatus = ({ db }) => {
995
- var _effect = _useSignals11();
913
+ var _effect = _useSignals9();
996
914
  try {
997
- const { t } = useTranslation10(SPACE_PLUGIN);
915
+ const { t } = useTranslation9(meta.id);
998
916
  const [displayMessage, setDisplayMessage] = useState4(false);
999
917
  const [status, naturalSetStatus] = useState4(0);
1000
918
  const [prevStatus, setPrevStatus] = useState4(0);
@@ -1011,37 +929,37 @@ var PersistenceStatus = ({ db }) => {
1011
929
  ]);
1012
930
  switch (status) {
1013
931
  case 2:
1014
- return /* @__PURE__ */ React11.createElement("div", {
932
+ return /* @__PURE__ */ React9.createElement("div", {
1015
933
  className: "flex items-center"
1016
- }, /* @__PURE__ */ React11.createElement(Icon7, {
934
+ }, /* @__PURE__ */ React9.createElement(Icon7, {
1017
935
  icon: "ph--warning--regular",
1018
936
  size: 4,
1019
937
  classNames: "me-1"
1020
- }), /* @__PURE__ */ React11.createElement("span", {
938
+ }), /* @__PURE__ */ React9.createElement("span", {
1021
939
  className: mx("text-sm", warningText)
1022
940
  }, t("persistence error label")));
1023
941
  case 1:
1024
- return /* @__PURE__ */ React11.createElement("div", {
942
+ return /* @__PURE__ */ React9.createElement("div", {
1025
943
  className: "flex items-center"
1026
- }, /* @__PURE__ */ React11.createElement(Icon7, {
944
+ }, /* @__PURE__ */ React9.createElement(Icon7, {
1027
945
  icon: "ph--arrows-counter-clockwise--regular",
1028
946
  size: 4,
1029
947
  classNames: "me-1"
1030
- }), /* @__PURE__ */ React11.createElement("span", {
948
+ }), /* @__PURE__ */ React9.createElement("span", {
1031
949
  className: mx("text-sm", staticPlaceholderText)
1032
950
  }, t("persistence pending label")));
1033
951
  case 0:
1034
952
  default:
1035
- return /* @__PURE__ */ React11.createElement(Tooltip.Trigger, {
953
+ return /* @__PURE__ */ React9.createElement(Tooltip.Trigger, {
1036
954
  delayDuration: 400,
1037
955
  role: "status",
1038
956
  content: t("persisted locally message"),
1039
957
  className: "flex items-center"
1040
- }, /* @__PURE__ */ React11.createElement(Icon7, {
958
+ }, /* @__PURE__ */ React9.createElement(Icon7, {
1041
959
  icon: "ph--check-circle--regular",
1042
960
  size: 4,
1043
961
  classNames: "me-1"
1044
- }), displayMessage && /* @__PURE__ */ React11.createElement("span", {
962
+ }), displayMessage && /* @__PURE__ */ React9.createElement("span", {
1045
963
  className: mx("text-sm", staticPlaceholderText)
1046
964
  }, t("persisted locally label")));
1047
965
  }
@@ -1051,19 +969,19 @@ var PersistenceStatus = ({ db }) => {
1051
969
  };
1052
970
 
1053
971
  // src/components/PopoverRenameObject.tsx
1054
- import { useSignals as _useSignals12 } from "@preact-signals/safe-react/tracking";
1055
- import React12, { useCallback as useCallback7, useRef as useRef4, useState as useState5 } from "react";
972
+ import { useSignals as _useSignals10 } from "@preact-signals/safe-react/tracking";
973
+ import React10, { useCallback as useCallback7, useRef as useRef3, useState as useState5 } from "react";
1056
974
  import { LayoutAction as LayoutAction5, createIntent as createIntent6, useIntentDispatcher as useIntentDispatcher6 } from "@dxos/app-framework";
1057
975
  import { Obj as Obj2 } from "@dxos/echo";
1058
976
  import { log as log2 } from "@dxos/log";
1059
- import { Button as Button5, Input as Input3, useTranslation as useTranslation11 } from "@dxos/react-ui";
977
+ import { Button as Button5, Input as Input2, useTranslation as useTranslation10 } from "@dxos/react-ui";
1060
978
  var __dxlog_file3 = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/PopoverRenameObject.tsx";
1061
- var POPOVER_RENAME_OBJECT = `${SPACE_PLUGIN}/PopoverRenameObject`;
979
+ var POPOVER_RENAME_OBJECT = `${meta.id}/PopoverRenameObject`;
1062
980
  var PopoverRenameObject = ({ object }) => {
1063
- var _effect = _useSignals12();
981
+ var _effect = _useSignals10();
1064
982
  try {
1065
- const { t } = useTranslation11(SPACE_PLUGIN);
1066
- const doneButton = useRef4(null);
983
+ const { t } = useTranslation10(meta.id);
984
+ const doneButton = useRef3(null);
1067
985
  const [name, setName] = useState5(Obj2.getLabel(object));
1068
986
  const { dispatchPromise: dispatch } = useIntentDispatcher6();
1069
987
  const handleDone = useCallback7(() => {
@@ -1091,21 +1009,21 @@ var PopoverRenameObject = ({ object }) => {
1091
1009
  object,
1092
1010
  name
1093
1011
  ]);
1094
- return /* @__PURE__ */ React12.createElement("div", {
1012
+ return /* @__PURE__ */ React10.createElement("div", {
1095
1013
  role: "none",
1096
1014
  className: "p-2 flex gap-2"
1097
- }, /* @__PURE__ */ React12.createElement("div", {
1015
+ }, /* @__PURE__ */ React10.createElement("div", {
1098
1016
  role: "none",
1099
1017
  className: "flex-1"
1100
- }, /* @__PURE__ */ React12.createElement(Input3.Root, null, /* @__PURE__ */ React12.createElement(Input3.Label, {
1018
+ }, /* @__PURE__ */ React10.createElement(Input2.Root, null, /* @__PURE__ */ React10.createElement(Input2.Label, {
1101
1019
  srOnly: true
1102
- }, t("object name label")), /* @__PURE__ */ React12.createElement(Input3.TextInput, {
1020
+ }, t("object name label")), /* @__PURE__ */ React10.createElement(Input2.TextInput, {
1103
1021
  placeholder: t("object placeholder"),
1104
1022
  value: name,
1105
1023
  "data-testid": "spacePlugin.renameObject.input",
1106
1024
  onChange: ({ target: { value } }) => setName(value),
1107
1025
  onKeyDown: ({ key }) => key === "Enter" && doneButton.current?.click()
1108
- }))), /* @__PURE__ */ React12.createElement(Button5, {
1026
+ }))), /* @__PURE__ */ React10.createElement(Button5, {
1109
1027
  ref: doneButton,
1110
1028
  classNames: "self-stretch",
1111
1029
  onClick: handleDone
@@ -1118,16 +1036,16 @@ var PopoverRenameObject = ({ object }) => {
1118
1036
  };
1119
1037
 
1120
1038
  // src/components/PopoverRenameSpace.tsx
1121
- import { useSignals as _useSignals13 } from "@preact-signals/safe-react/tracking";
1122
- import React13, { useCallback as useCallback8, useRef as useRef5, useState as useState6 } from "react";
1039
+ import { useSignals as _useSignals11 } from "@preact-signals/safe-react/tracking";
1040
+ import React11, { useCallback as useCallback8, useRef as useRef4, useState as useState6 } from "react";
1123
1041
  import { LayoutAction as LayoutAction6, createIntent as createIntent7, useIntentDispatcher as useIntentDispatcher7 } from "@dxos/app-framework";
1124
- import { Button as Button6, Input as Input4, Popover, useTranslation as useTranslation12 } from "@dxos/react-ui";
1125
- var POPOVER_RENAME_SPACE = `${SPACE_PLUGIN}/PopoverRenameSpace`;
1042
+ import { Button as Button6, Input as Input3, Popover, useTranslation as useTranslation11 } from "@dxos/react-ui";
1043
+ var POPOVER_RENAME_SPACE = `${meta.id}/PopoverRenameSpace`;
1126
1044
  var PopoverRenameSpace = ({ space }) => {
1127
- var _effect = _useSignals13();
1045
+ var _effect = _useSignals11();
1128
1046
  try {
1129
- const { t } = useTranslation12(SPACE_PLUGIN);
1130
- const doneButton = useRef5(null);
1047
+ const { t } = useTranslation11(meta.id);
1048
+ const doneButton = useRef4(null);
1131
1049
  const [name, setName] = useState6(space.properties.name ?? "");
1132
1050
  const { dispatchPromise: dispatch } = useIntentDispatcher7();
1133
1051
  const handleDone = useCallback8(() => {
@@ -1144,24 +1062,24 @@ var PopoverRenameSpace = ({ space }) => {
1144
1062
  space,
1145
1063
  name
1146
1064
  ]);
1147
- return /* @__PURE__ */ React13.createElement("div", {
1065
+ return /* @__PURE__ */ React11.createElement("div", {
1148
1066
  role: "none",
1149
1067
  className: "p-2 flex gap-2"
1150
- }, /* @__PURE__ */ React13.createElement("div", {
1068
+ }, /* @__PURE__ */ React11.createElement("div", {
1151
1069
  role: "none",
1152
1070
  className: "flex-1"
1153
- }, /* @__PURE__ */ React13.createElement(Input4.Root, null, /* @__PURE__ */ React13.createElement(Input4.Label, {
1071
+ }, /* @__PURE__ */ React11.createElement(Input3.Root, null, /* @__PURE__ */ React11.createElement(Input3.Label, {
1154
1072
  srOnly: true
1155
- }, t("space name label")), /* @__PURE__ */ React13.createElement(Input4.TextInput, {
1073
+ }, t("space name label")), /* @__PURE__ */ React11.createElement(Input3.TextInput, {
1156
1074
  defaultValue: space.properties.name ?? "",
1157
1075
  placeholder: t("unnamed space label"),
1158
1076
  onChange: ({ target: { value } }) => setName(value),
1159
1077
  // TODO(wittjosiah): Ideally this should access the popover context to close the popover.
1160
1078
  // Currently this is not possible because Radix does not expose the popover context.
1161
1079
  onKeyDown: ({ key }) => key === "Enter" && doneButton.current?.click()
1162
- }))), /* @__PURE__ */ React13.createElement(Popover.Close, {
1080
+ }))), /* @__PURE__ */ React11.createElement(Popover.Close, {
1163
1081
  asChild: true
1164
- }, /* @__PURE__ */ React13.createElement(Button6, {
1082
+ }, /* @__PURE__ */ React11.createElement(Button6, {
1165
1083
  ref: doneButton,
1166
1084
  classNames: "self-stretch",
1167
1085
  onClick: handleDone
@@ -1174,11 +1092,11 @@ var PopoverRenameSpace = ({ space }) => {
1174
1092
  };
1175
1093
 
1176
1094
  // src/components/SchemaContainer.tsx
1177
- import { useSignals as _useSignals14 } from "@preact-signals/safe-react/tracking";
1178
- import React14, { useEffect as useEffect3, useState as useState7 } from "react";
1179
- import { useTranslation as useTranslation13 } from "@dxos/react-ui";
1095
+ import { useSignals as _useSignals12 } from "@preact-signals/safe-react/tracking";
1096
+ import React12, { useEffect as useEffect3, useState as useState7 } from "react";
1097
+ import { useTranslation as useTranslation12 } from "@dxos/react-ui";
1180
1098
  import { ControlPage as ControlPage2, ControlSection as ControlSection2, controlItemClasses } from "@dxos/react-ui-form";
1181
- import { StackItem as StackItem3 } from "@dxos/react-ui-stack";
1099
+ import { StackItem as StackItem2 } from "@dxos/react-ui-stack";
1182
1100
  var useQuerySpaceSchemas = (space) => {
1183
1101
  const [schemas, setSchemas] = useState7([]);
1184
1102
  useEffect3(() => {
@@ -1193,38 +1111,38 @@ var useQuerySpaceSchemas = (space) => {
1193
1111
  return schemas;
1194
1112
  };
1195
1113
  var SchemaContainer = ({ space }) => {
1196
- var _effect = _useSignals14();
1114
+ var _effect = _useSignals12();
1197
1115
  try {
1198
- const { t } = useTranslation13(SPACE_PLUGIN);
1116
+ const { t } = useTranslation12(meta.id);
1199
1117
  const schemas = useQuerySpaceSchemas(space);
1200
- return /* @__PURE__ */ React14.createElement(StackItem3.Content, {
1201
- classNames: "block overflow-y-auto"
1202
- }, /* @__PURE__ */ React14.createElement(ControlPage2, null, /* @__PURE__ */ React14.createElement(ControlSection2, {
1118
+ return /* @__PURE__ */ React12.createElement(StackItem2.Content, {
1119
+ scrollable: true
1120
+ }, /* @__PURE__ */ React12.createElement(ControlPage2, null, /* @__PURE__ */ React12.createElement(ControlSection2, {
1203
1121
  title: t("schema verbose label"),
1204
1122
  description: t("schema description")
1205
- }, /* @__PURE__ */ React14.createElement("div", {
1123
+ }, /* @__PURE__ */ React12.createElement("div", {
1206
1124
  role: "none",
1207
1125
  className: controlItemClasses
1208
- }, schemas.length === 0 && /* @__PURE__ */ React14.createElement("div", {
1126
+ }, schemas.length === 0 && /* @__PURE__ */ React12.createElement("div", {
1209
1127
  className: "text-center plb-4"
1210
- }, t("no schemas found message")), schemas.map((schema) => /* @__PURE__ */ React14.createElement("div", {
1128
+ }, t("no schemas found message")), schemas.map((schema) => /* @__PURE__ */ React12.createElement("div", {
1211
1129
  key: schema.id
1212
- }, /* @__PURE__ */ React14.createElement("div", null, schema.typename)))))));
1130
+ }, /* @__PURE__ */ React12.createElement("div", null, schema.typename)))))));
1213
1131
  } finally {
1214
1132
  _effect.f();
1215
1133
  }
1216
1134
  };
1217
1135
 
1218
1136
  // src/components/SpacePresence.tsx
1219
- import { useSignals as _useSignals15 } from "@preact-signals/safe-react/tracking";
1220
- import { Option as Option2 } from "effect";
1221
- import React15, { forwardRef, useCallback as useCallback9, useEffect as useEffect4, useState as useState8 } from "react";
1137
+ import { useSignals as _useSignals13 } from "@preact-signals/safe-react/tracking";
1138
+ import * as Option2 from "effect/Option";
1139
+ import React13, { forwardRef, useCallback as useCallback9, useEffect as useEffect4, useState as useState8 } from "react";
1222
1140
  import { useAppGraph as useAppGraph2, useCapability } from "@dxos/app-framework";
1223
1141
  import { generateName } from "@dxos/display-name";
1224
1142
  import { PublicKey, useClient as useClient5 } from "@dxos/react-client";
1225
1143
  import { fullyQualifiedId as fullyQualifiedId3, getSpace as getSpace3, useMembers } from "@dxos/react-client/echo";
1226
1144
  import { useIdentity } from "@dxos/react-client/halo";
1227
- import { Avatar, List, ListItem, Popover as Popover2, Tooltip as Tooltip2, useDefaultValue as useDefaultValue2, useTranslation as useTranslation14 } from "@dxos/react-ui";
1145
+ import { Avatar, List, ListItem, Popover as Popover2, Tooltip as Tooltip2, useDefaultValue as useDefaultValue2, useTranslation as useTranslation13 } from "@dxos/react-ui";
1228
1146
  import { AttentionGlyph, useAttended, useAttention } from "@dxos/react-ui-attention";
1229
1147
  import { ComplexMap, keyToFallback } from "@dxos/util";
1230
1148
  var REFRESH_INTERVAL = 5e3;
@@ -1232,7 +1150,7 @@ var ACTIVITY_DURATION = 3e4;
1232
1150
  var noViewers = new ComplexMap(PublicKey.hash);
1233
1151
  var getName = (identity) => identity.profile?.displayName ?? generateName(identity.identityKey.toHex());
1234
1152
  var SpacePresence = ({ object, spaceKey }) => {
1235
- var _effect = _useSignals15();
1153
+ var _effect = _useSignals13();
1236
1154
  try {
1237
1155
  const spaceState = useCapability(SpaceCapabilities.MutableState);
1238
1156
  const client = useClient5();
@@ -1262,7 +1180,7 @@ var SpacePresence = ({ object, spaceKey }) => {
1262
1180
  lastSeen
1263
1181
  };
1264
1182
  }).toSorted((a, b) => a.lastSeen - b.lastSeen);
1265
- return /* @__PURE__ */ React15.createElement(FullPresence, {
1183
+ return /* @__PURE__ */ React13.createElement(FullPresence, {
1266
1184
  members: membersForObject
1267
1185
  });
1268
1186
  } finally {
@@ -1270,46 +1188,46 @@ var SpacePresence = ({ object, spaceKey }) => {
1270
1188
  }
1271
1189
  };
1272
1190
  var FullPresence = (props) => {
1273
- var _effect = _useSignals15();
1191
+ var _effect = _useSignals13();
1274
1192
  try {
1275
1193
  const { size = 9, onMemberClick } = props;
1276
1194
  const members = useDefaultValue2(props.members, () => []);
1277
1195
  if (members.length === 0) {
1278
1196
  return null;
1279
1197
  }
1280
- return /* @__PURE__ */ React15.createElement("div", {
1198
+ return /* @__PURE__ */ React13.createElement("div", {
1281
1199
  className: "dx-avatar-group",
1282
1200
  "data-testid": "spacePlugin.presence"
1283
- }, members.slice(0, 3).map((member, i) => /* @__PURE__ */ React15.createElement(Tooltip2.Trigger, {
1201
+ }, members.slice(0, 3).map((member, i) => /* @__PURE__ */ React13.createElement(Tooltip2.Trigger, {
1284
1202
  key: member.identity.identityKey.toHex(),
1285
1203
  side: "bottom",
1286
1204
  content: getName(member.identity),
1287
1205
  className: "grid focus:outline-none"
1288
- }, /* @__PURE__ */ React15.createElement(PresenceAvatar, {
1206
+ }, /* @__PURE__ */ React13.createElement(PresenceAvatar, {
1289
1207
  identity: member.identity,
1290
1208
  match: member.currentlyAttended,
1291
1209
  index: members.length - i,
1292
1210
  onClick: () => onMemberClick?.(member),
1293
1211
  size
1294
- }))), members.length > 3 && /* @__PURE__ */ React15.createElement(Popover2.Root, null, /* @__PURE__ */ React15.createElement(Popover2.Trigger, {
1212
+ }))), members.length > 3 && /* @__PURE__ */ React13.createElement(Popover2.Root, null, /* @__PURE__ */ React13.createElement(Popover2.Trigger, {
1295
1213
  className: "grid focus:outline-none"
1296
- }, /* @__PURE__ */ React15.createElement(Avatar.Root, null, /* @__PURE__ */ React15.createElement(Avatar.Content, {
1214
+ }, /* @__PURE__ */ React13.createElement(Avatar.Root, null, /* @__PURE__ */ React13.createElement(Avatar.Content, {
1297
1215
  status: "inactive",
1298
1216
  style: {
1299
1217
  zIndex: members.length - 4
1300
1218
  },
1301
1219
  fallback: `+${members.length - 3}`,
1302
1220
  size
1303
- }))), /* @__PURE__ */ React15.createElement(Popover2.Portal, null, /* @__PURE__ */ React15.createElement(Popover2.Content, {
1221
+ }))), /* @__PURE__ */ React13.createElement(Popover2.Portal, null, /* @__PURE__ */ React13.createElement(Popover2.Content, {
1304
1222
  side: "bottom"
1305
- }, /* @__PURE__ */ React15.createElement(Popover2.Arrow, null), /* @__PURE__ */ React15.createElement(Popover2.Viewport, {
1223
+ }, /* @__PURE__ */ React13.createElement(Popover2.Arrow, null), /* @__PURE__ */ React13.createElement(Popover2.Viewport, {
1306
1224
  classNames: "max-bs-56"
1307
- }, /* @__PURE__ */ React15.createElement(List, null, members.map((member) => /* @__PURE__ */ React15.createElement(ListItem.Root, {
1225
+ }, /* @__PURE__ */ React13.createElement(List, null, members.map((member) => /* @__PURE__ */ React13.createElement(ListItem.Root, {
1308
1226
  key: member.identity.identityKey.toHex(),
1309
1227
  classNames: "flex gap-2 items-center cursor-pointer mbe-2",
1310
1228
  onClick: () => onMemberClick?.(member),
1311
1229
  "data-testid": "identity-list-item"
1312
- }, /* @__PURE__ */ React15.createElement(PresenceAvatar, {
1230
+ }, /* @__PURE__ */ React13.createElement(PresenceAvatar, {
1313
1231
  identity: member.identity,
1314
1232
  size,
1315
1233
  showName: true,
@@ -1320,11 +1238,11 @@ var FullPresence = (props) => {
1320
1238
  }
1321
1239
  };
1322
1240
  var PresenceAvatar = /* @__PURE__ */ forwardRef(({ identity, showName, match, index, onClick, size }, forwardedRef) => {
1323
- var _effect = _useSignals15();
1241
+ var _effect = _useSignals13();
1324
1242
  try {
1325
1243
  const status = match ? "current" : "active";
1326
1244
  const fallbackValue = keyToFallback(identity.identityKey);
1327
- return /* @__PURE__ */ React15.createElement(Avatar.Root, null, /* @__PURE__ */ React15.createElement(Avatar.Content, {
1245
+ return /* @__PURE__ */ React13.createElement(Avatar.Root, null, /* @__PURE__ */ React13.createElement(Avatar.Content, {
1328
1246
  status,
1329
1247
  hue: identity.profile?.data?.hue || fallbackValue.hue,
1330
1248
  "data-testid": "spacePlugin.presence.member",
@@ -1338,7 +1256,7 @@ var PresenceAvatar = /* @__PURE__ */ forwardRef(({ identity, showName, match, in
1338
1256
  onClick,
1339
1257
  fallback: identity.profile?.data?.emoji || fallbackValue.emoji,
1340
1258
  ref: forwardedRef
1341
- }), /* @__PURE__ */ React15.createElement(Avatar.Label, {
1259
+ }), /* @__PURE__ */ React13.createElement(Avatar.Label, {
1342
1260
  classNames: showName ? "text-sm truncate pli-2" : "sr-only"
1343
1261
  }, getName(identity)));
1344
1262
  } finally {
@@ -1346,7 +1264,7 @@ var PresenceAvatar = /* @__PURE__ */ forwardRef(({ identity, showName, match, in
1346
1264
  }
1347
1265
  });
1348
1266
  var SmallPresenceLive = ({ id, open, viewers }) => {
1349
- var _effect = _useSignals15();
1267
+ var _effect = _useSignals13();
1350
1268
  try {
1351
1269
  const { hasAttention, isAncestor, isRelated } = useAttention(id);
1352
1270
  const isAttended = hasAttention || isAncestor || isRelated;
@@ -1371,7 +1289,7 @@ var SmallPresenceLive = ({ id, open, viewers }) => {
1371
1289
  }, [
1372
1290
  viewers
1373
1291
  ]);
1374
- return /* @__PURE__ */ React15.createElement(SmallPresence, {
1292
+ return /* @__PURE__ */ React13.createElement(SmallPresence, {
1375
1293
  count: activeViewers.length,
1376
1294
  attended: isAttended,
1377
1295
  containsAttended
@@ -1381,16 +1299,16 @@ var SmallPresenceLive = ({ id, open, viewers }) => {
1381
1299
  }
1382
1300
  };
1383
1301
  var SmallPresence = ({ count = 0, attended, containsAttended }) => {
1384
- var _effect = _useSignals15();
1302
+ var _effect = _useSignals13();
1385
1303
  try {
1386
- const { t } = useTranslation14(SPACE_PLUGIN);
1387
- return /* @__PURE__ */ React15.createElement(Tooltip2.Trigger, {
1304
+ const { t } = useTranslation13(meta.id);
1305
+ return /* @__PURE__ */ React13.createElement(Tooltip2.Trigger, {
1388
1306
  asChild: true,
1389
1307
  content: t("presence label", {
1390
1308
  count
1391
1309
  }),
1392
1310
  side: "bottom"
1393
- }, /* @__PURE__ */ React15.createElement(AttentionGlyph, {
1311
+ }, /* @__PURE__ */ React13.createElement(AttentionGlyph, {
1394
1312
  attended,
1395
1313
  containsAttended,
1396
1314
  presence: count > 1 ? "many" : count === 1 ? "one" : "none",
@@ -1402,43 +1320,43 @@ var SmallPresence = ({ count = 0, attended, containsAttended }) => {
1402
1320
  };
1403
1321
 
1404
1322
  // src/components/SpacePluginSettings.tsx
1405
- import { useSignals as _useSignals16 } from "@preact-signals/safe-react/tracking";
1406
- import React16 from "react";
1323
+ import { useSignals as _useSignals14 } from "@preact-signals/safe-react/tracking";
1324
+ import React14 from "react";
1407
1325
  import { createIntent as createIntent8, useIntentDispatcher as useIntentDispatcher8 } from "@dxos/app-framework";
1408
1326
  import { useClient as useClient6 } from "@dxos/react-client";
1409
1327
  import { useSpaces as useSpaces2 } from "@dxos/react-client/echo";
1410
- import { IconButton, Input as Input5, List as List2, ListItem as ListItem2, toLocalizedString as toLocalizedString3, useTranslation as useTranslation15 } from "@dxos/react-ui";
1328
+ import { IconButton, Input as Input4, List as List2, ListItem as ListItem2, toLocalizedString as toLocalizedString3, useTranslation as useTranslation14 } from "@dxos/react-ui";
1411
1329
  import { ControlGroup, ControlItemInput as ControlItemInput2, ControlPage as ControlPage3, ControlSection as ControlSection3, controlItemClasses as controlItemClasses2 } from "@dxos/react-ui-form";
1412
1330
  var SpacePluginSettings = ({ settings }) => {
1413
- var _effect = _useSignals16();
1331
+ var _effect = _useSignals14();
1414
1332
  try {
1415
- const { t } = useTranslation15(SPACE_PLUGIN);
1333
+ const { t } = useTranslation14(meta.id);
1416
1334
  const client = useClient6();
1417
1335
  const spaces = useSpaces2({
1418
1336
  all: settings.showHidden
1419
1337
  });
1420
1338
  const { dispatchPromise: dispatch } = useIntentDispatcher8();
1421
- return /* @__PURE__ */ React16.createElement(ControlPage3, null, /* @__PURE__ */ React16.createElement(ControlSection3, {
1339
+ return /* @__PURE__ */ React14.createElement(ControlPage3, null, /* @__PURE__ */ React14.createElement(ControlSection3, {
1422
1340
  title: t("space settings label"),
1423
1341
  description: t("space settings description")
1424
- }, /* @__PURE__ */ React16.createElement(ControlGroup, null, /* @__PURE__ */ React16.createElement(ControlItemInput2, {
1342
+ }, /* @__PURE__ */ React14.createElement(ControlGroup, null, /* @__PURE__ */ React14.createElement(ControlItemInput2, {
1425
1343
  title: t("show hidden spaces label")
1426
- }, /* @__PURE__ */ React16.createElement(Input5.Switch, {
1344
+ }, /* @__PURE__ */ React14.createElement(Input4.Switch, {
1427
1345
  checked: settings.showHidden,
1428
1346
  onCheckedChange: (checked) => settings.showHidden = !!checked
1429
- }))), /* @__PURE__ */ React16.createElement(List2, {
1347
+ }))), /* @__PURE__ */ React14.createElement(List2, {
1430
1348
  classNames: [
1431
1349
  controlItemClasses2,
1432
1350
  "flex flex-col gap-trimSm"
1433
1351
  ]
1434
- }, spaces.map((space) => /* @__PURE__ */ React16.createElement(ListItem2.Root, {
1352
+ }, spaces.map((space) => /* @__PURE__ */ React14.createElement(ListItem2.Root, {
1435
1353
  key: space.id,
1436
1354
  classNames: "is-full items-center"
1437
- }, /* @__PURE__ */ React16.createElement(ListItem2.Heading, {
1355
+ }, /* @__PURE__ */ React14.createElement(ListItem2.Heading, {
1438
1356
  classNames: "grow truncate !min-bs-0"
1439
1357
  }, toLocalizedString3(getSpaceDisplayName(space, {
1440
1358
  personal: space === client.spaces.default
1441
- }), t)), /* @__PURE__ */ React16.createElement(IconButton, {
1359
+ }), t)), /* @__PURE__ */ React14.createElement(IconButton, {
1442
1360
  icon: "ph--faders--regular",
1443
1361
  onClick: () => dispatch(createIntent8(SpaceAction.OpenSettings, {
1444
1362
  space
@@ -1451,18 +1369,19 @@ var SpacePluginSettings = ({ settings }) => {
1451
1369
  };
1452
1370
 
1453
1371
  // src/components/SpaceSettings/SpaceSettingsContainer.tsx
1454
- import { useSignals as _useSignals17 } from "@preact-signals/safe-react/tracking";
1455
- import { Schema, pipe as pipe2 } from "effect";
1456
- import React17, { useCallback as useCallback10, useMemo as useMemo3, useState as useState9 } from "react";
1372
+ import { useSignals as _useSignals15 } from "@preact-signals/safe-react/tracking";
1373
+ import * as Function2 from "effect/Function";
1374
+ import * as Schema from "effect/Schema";
1375
+ import React15, { useCallback as useCallback10, useMemo as useMemo2, useState as useState9 } from "react";
1457
1376
  import { LayoutAction as LayoutAction7, chain as chain2, createIntent as createIntent9, useIntentDispatcher as useIntentDispatcher9 } from "@dxos/app-framework";
1458
1377
  import { log as log3 } from "@dxos/log";
1459
1378
  import { EdgeReplicationSetting } from "@dxos/protocols/proto/dxos/echo/metadata";
1460
1379
  import { useClient as useClient7 } from "@dxos/react-client";
1461
- import { SpaceState as SpaceState2 } from "@dxos/react-client/echo";
1462
- import { Button as Button7, Input as Input6, useMulticastObservable, useTranslation as useTranslation16 } from "@dxos/react-ui";
1380
+ import { SpaceState } from "@dxos/react-client/echo";
1381
+ import { Button as Button7, Input as Input5, useMulticastObservable, useTranslation as useTranslation15 } from "@dxos/react-ui";
1463
1382
  import { ControlItem, ControlItemInput as ControlItemInput3, ControlPage as ControlPage4, ControlSection as ControlSection4, Form as Form3 } from "@dxos/react-ui-form";
1464
1383
  import { HuePicker, IconPicker } from "@dxos/react-ui-pickers";
1465
- import { StackItem as StackItem4 } from "@dxos/react-ui-stack";
1384
+ import { StackItem as StackItem3 } from "@dxos/react-ui-stack";
1466
1385
  var __dxlog_file4 = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/SpaceSettings/SpaceSettingsContainer.tsx";
1467
1386
  var FormSchema = SpaceForm.pipe(Schema.extend(Schema.Struct({
1468
1387
  archived: Schema.Boolean.annotations({
@@ -1470,19 +1389,19 @@ var FormSchema = SpaceForm.pipe(Schema.extend(Schema.Struct({
1470
1389
  })
1471
1390
  })));
1472
1391
  var SpaceSettingsContainer = ({ space }) => {
1473
- var _effect = _useSignals17();
1392
+ var _effect = _useSignals15();
1474
1393
  try {
1475
- const { t } = useTranslation16(SPACE_PLUGIN);
1394
+ const { t } = useTranslation15(meta.id);
1476
1395
  const { dispatchPromise: dispatch } = useIntentDispatcher9();
1477
1396
  const client = useClient7();
1478
- const archived = useMulticastObservable(space.state) === SpaceState2.SPACE_INACTIVE;
1397
+ const archived = useMulticastObservable(space.state) === SpaceState.SPACE_INACTIVE;
1479
1398
  const [edgeReplication, setEdgeReplication] = useState9(space.internal.data.edgeReplication === EdgeReplicationSetting.ENABLED);
1480
1399
  const toggleEdgeReplication = useCallback10(async (next) => {
1481
1400
  setEdgeReplication(next);
1482
1401
  await space?.internal.setEdgeReplicationPreference(next ? EdgeReplicationSetting.ENABLED : EdgeReplicationSetting.DISABLED).catch((err) => {
1483
1402
  log3.catch(err, void 0, {
1484
1403
  F: __dxlog_file4,
1485
- L: 51,
1404
+ L: 52,
1486
1405
  S: void 0,
1487
1406
  C: (f, a) => f(...a)
1488
1407
  });
@@ -1503,7 +1422,7 @@ var SpaceSettingsContainer = ({ space }) => {
1503
1422
  space.properties.hue = properties.hue;
1504
1423
  }
1505
1424
  if (properties.archived && !archived) {
1506
- void dispatch(pipe2(createIntent9(SpaceAction.Close, {
1425
+ void dispatch(Function2.pipe(createIntent9(SpaceAction.Close, {
1507
1426
  space
1508
1427
  }), chain2(LayoutAction7.SwitchWorkspace, {
1509
1428
  part: "workspace",
@@ -1519,7 +1438,7 @@ var SpaceSettingsContainer = ({ space }) => {
1519
1438
  toggleEdgeReplication,
1520
1439
  archived
1521
1440
  ]);
1522
- const values = useMemo3(() => ({
1441
+ const values = useMemo2(() => ({
1523
1442
  name: space.properties.name,
1524
1443
  icon: space.properties.icon,
1525
1444
  hue: space.properties.hue,
@@ -1532,16 +1451,16 @@ var SpaceSettingsContainer = ({ space }) => {
1532
1451
  edgeReplication,
1533
1452
  archived
1534
1453
  ]);
1535
- const customElements = useMemo3(() => ({
1454
+ const customElements = useMemo2(() => ({
1536
1455
  name: ({ type, label, getValue, onValueChange }) => {
1537
1456
  const handleChange = useCallback10(({ target: { value } }) => onValueChange(type, value), [
1538
1457
  onValueChange,
1539
1458
  type
1540
1459
  ]);
1541
- return /* @__PURE__ */ React17.createElement(ControlItemInput3, {
1460
+ return /* @__PURE__ */ React15.createElement(ControlItemInput3, {
1542
1461
  title: label,
1543
1462
  description: t("display name description")
1544
- }, /* @__PURE__ */ React17.createElement(Input6.TextInput, {
1463
+ }, /* @__PURE__ */ React15.createElement(Input5.TextInput, {
1545
1464
  value: getValue(),
1546
1465
  onChange: handleChange,
1547
1466
  placeholder: t("display name input placeholder"),
@@ -1549,21 +1468,21 @@ var SpaceSettingsContainer = ({ space }) => {
1549
1468
  }));
1550
1469
  },
1551
1470
  icon: ({ type, label, getValue, onValueChange }) => {
1552
- const handleChange = useCallback10((nextEmoji) => onValueChange(type, nextEmoji), [
1471
+ const handleChange = useCallback10((icon) => onValueChange(type, icon), [
1553
1472
  onValueChange,
1554
1473
  type
1555
1474
  ]);
1556
- const handleEmojiReset = useCallback10(() => onValueChange(type, void 0), [
1475
+ const handleReset = useCallback10(() => onValueChange(type, void 0), [
1557
1476
  onValueChange,
1558
1477
  type
1559
1478
  ]);
1560
- return /* @__PURE__ */ React17.createElement(ControlItem, {
1479
+ return /* @__PURE__ */ React15.createElement(ControlItem, {
1561
1480
  title: label,
1562
1481
  description: t("icon description")
1563
- }, /* @__PURE__ */ React17.createElement(IconPicker, {
1482
+ }, /* @__PURE__ */ React15.createElement(IconPicker, {
1564
1483
  value: getValue(),
1565
1484
  onChange: handleChange,
1566
- onReset: handleEmojiReset,
1485
+ onReset: handleReset,
1567
1486
  classNames: "justify-self-end",
1568
1487
  iconSize: 5
1569
1488
  }));
@@ -1573,17 +1492,17 @@ var SpaceSettingsContainer = ({ space }) => {
1573
1492
  onValueChange,
1574
1493
  type
1575
1494
  ]);
1576
- const handleHueReset = useCallback10(() => onValueChange(type, void 0), [
1495
+ const handleReset = useCallback10(() => onValueChange(type, void 0), [
1577
1496
  onValueChange,
1578
1497
  type
1579
1498
  ]);
1580
- return /* @__PURE__ */ React17.createElement(ControlItem, {
1499
+ return /* @__PURE__ */ React15.createElement(ControlItem, {
1581
1500
  title: label,
1582
1501
  description: t("hue description")
1583
- }, /* @__PURE__ */ React17.createElement(HuePicker, {
1502
+ }, /* @__PURE__ */ React15.createElement(HuePicker, {
1584
1503
  value: getValue(),
1585
1504
  onChange: handleChange,
1586
- onReset: handleHueReset,
1505
+ onReset: handleReset,
1587
1506
  classNames: "[--hue-preview-size:1.25rem] justify-self-end"
1588
1507
  }));
1589
1508
  },
@@ -1592,10 +1511,10 @@ var SpaceSettingsContainer = ({ space }) => {
1592
1511
  onValueChange,
1593
1512
  type
1594
1513
  ]);
1595
- return /* @__PURE__ */ React17.createElement(ControlItemInput3, {
1514
+ return /* @__PURE__ */ React15.createElement(ControlItemInput3, {
1596
1515
  title: label,
1597
1516
  description: t("edge replication description")
1598
- }, /* @__PURE__ */ React17.createElement(Input6.Switch, {
1517
+ }, /* @__PURE__ */ React15.createElement(Input5.Switch, {
1599
1518
  checked: getValue(),
1600
1519
  onCheckedChange: handleChange,
1601
1520
  classNames: "justify-self-end"
@@ -1607,10 +1526,10 @@ var SpaceSettingsContainer = ({ space }) => {
1607
1526
  type,
1608
1527
  getValue
1609
1528
  ]);
1610
- return /* @__PURE__ */ React17.createElement(ControlItemInput3, {
1529
+ return /* @__PURE__ */ React15.createElement(ControlItemInput3, {
1611
1530
  title: label,
1612
1531
  description: t("archive space description")
1613
- }, /* @__PURE__ */ React17.createElement(Button7, {
1532
+ }, /* @__PURE__ */ React15.createElement(Button7, {
1614
1533
  disabled: space === client.spaces.default,
1615
1534
  onClick: handleChange
1616
1535
  }, getValue() ? t("unarchive space label") : t("archive space label")));
@@ -1619,16 +1538,16 @@ var SpaceSettingsContainer = ({ space }) => {
1619
1538
  t,
1620
1539
  space
1621
1540
  ]);
1622
- return /* @__PURE__ */ React17.createElement(StackItem4.Content, {
1623
- classNames: "block overflow-y-auto"
1624
- }, /* @__PURE__ */ React17.createElement(ControlPage4, null, /* @__PURE__ */ React17.createElement(ControlSection4, {
1541
+ return /* @__PURE__ */ React15.createElement(StackItem3.Content, {
1542
+ scrollable: true
1543
+ }, /* @__PURE__ */ React15.createElement(ControlPage4, null, /* @__PURE__ */ React15.createElement(ControlSection4, {
1625
1544
  title: t("space properties settings verbose label", {
1626
- ns: SPACE_PLUGIN
1545
+ ns: meta.id
1627
1546
  }),
1628
1547
  description: t("space properties settings description", {
1629
- ns: SPACE_PLUGIN
1548
+ ns: meta.id
1630
1549
  })
1631
- }, /* @__PURE__ */ React17.createElement(Form3, {
1550
+ }, /* @__PURE__ */ React15.createElement(Form3, {
1632
1551
  schema: FormSchema,
1633
1552
  values,
1634
1553
  autoSave: true,
@@ -1643,22 +1562,22 @@ var SpaceSettingsContainer = ({ space }) => {
1643
1562
  };
1644
1563
 
1645
1564
  // src/components/SyncStatus/InlineSyncStatus.tsx
1646
- import { useSignals as _useSignals18 } from "@preact-signals/safe-react/tracking";
1647
- import { Option as Option3 } from "effect";
1648
- import React18, { useEffect as useEffect5, useState as useState10 } from "react";
1565
+ import { useSignals as _useSignals16 } from "@preact-signals/safe-react/tracking";
1566
+ import * as Option3 from "effect/Option";
1567
+ import React16, { useEffect as useEffect5, useState as useState10 } from "react";
1649
1568
  import { useAppGraph as useAppGraph3 } from "@dxos/app-framework";
1650
1569
  import { EdgeStatus } from "@dxos/protocols/proto/dxos/client/services";
1651
1570
  import { EdgeReplicationSetting as EdgeReplicationSetting2 } from "@dxos/protocols/proto/dxos/echo/metadata";
1652
1571
  import { useClient as useClient8 } from "@dxos/react-client";
1653
1572
  import { useSpaceSyncState } from "@dxos/react-client/echo";
1654
- import { Tooltip as Tooltip3, useTranslation as useTranslation17 } from "@dxos/react-ui";
1573
+ import { Tooltip as Tooltip3, useTranslation as useTranslation16 } from "@dxos/react-ui";
1655
1574
  import { AttentionGlyph as AttentionGlyph2, useAttended as useAttended2, useAttention as useAttention2 } from "@dxos/react-ui-attention";
1656
1575
  var useEdgeStatus = () => {
1657
- const [status, setStatus] = useState10(EdgeStatus.NOT_CONNECTED);
1576
+ const [status, setStatus] = useState10(EdgeStatus.ConnectionState.NOT_CONNECTED);
1658
1577
  const client = useClient8();
1659
1578
  useEffect5(() => {
1660
1579
  client.services.services.EdgeAgentService?.queryEdgeStatus().subscribe(({ status: status2 }) => {
1661
- setStatus(status2);
1580
+ setStatus(status2.state);
1662
1581
  });
1663
1582
  }, [
1664
1583
  client
@@ -1666,9 +1585,9 @@ var useEdgeStatus = () => {
1666
1585
  return status;
1667
1586
  };
1668
1587
  var InlineSyncStatus = ({ space, open }) => {
1669
- var _effect = _useSignals18();
1588
+ var _effect = _useSignals16();
1670
1589
  try {
1671
- const { t } = useTranslation17(SPACE_PLUGIN);
1590
+ const { t } = useTranslation16(meta.id);
1672
1591
  const id = space.id;
1673
1592
  const { hasAttention, isAncestor, isRelated } = useAttention2(id);
1674
1593
  const isAttended = hasAttention || isAncestor || isRelated;
@@ -1677,15 +1596,15 @@ var InlineSyncStatus = ({ space, open }) => {
1677
1596
  const startOfAttention = attended.at(-1);
1678
1597
  const path = usePath(graph, startOfAttention);
1679
1598
  const containsAttended = !open && !isAttended && id && Option3.isSome(path) ? path.value.includes(id) : false;
1680
- const connectedToEdge = useEdgeStatus() === EdgeStatus.CONNECTED;
1599
+ const connectedToEdge = useEdgeStatus() === EdgeStatus.ConnectionState.CONNECTED;
1681
1600
  const edgeSyncEnabled = space.internal.data.edgeReplication === EdgeReplicationSetting2.ENABLED;
1682
1601
  const syncState = useSpaceSyncState(space);
1683
1602
  const syncing = connectedToEdge && edgeSyncEnabled && syncState && syncState.missingOnLocal > 0;
1684
- return /* @__PURE__ */ React18.createElement(Tooltip3.Trigger, {
1603
+ return /* @__PURE__ */ React16.createElement(Tooltip3.Trigger, {
1685
1604
  asChild: true,
1686
1605
  content: t("syncing label"),
1687
1606
  side: "bottom"
1688
- }, /* @__PURE__ */ React18.createElement(AttentionGlyph2, {
1607
+ }, /* @__PURE__ */ React16.createElement(AttentionGlyph2, {
1689
1608
  syncing,
1690
1609
  attended: isAttended,
1691
1610
  containsAttended,
@@ -1697,12 +1616,16 @@ var InlineSyncStatus = ({ space, open }) => {
1697
1616
  };
1698
1617
 
1699
1618
  // src/components/SyncStatus/SyncStatus.tsx
1700
- import { useSignals as _useSignals19 } from "@preact-signals/safe-react/tracking";
1701
- import React19, { useEffect as useEffect6, useState as useState11 } from "react";
1619
+ import { useSignals as _useSignals17 } from "@preact-signals/safe-react/tracking";
1620
+ import React17, { useEffect as useEffect6, useState as useState11 } from "react";
1702
1621
  import { StatusBar } from "@dxos/plugin-status-bar";
1622
+ import { EdgeStatus as EdgeStatus2 } from "@dxos/protocols/proto/dxos/client/services";
1703
1623
  import { useClient as useClient9 } from "@dxos/react-client";
1624
+ import { useStream } from "@dxos/react-client/devtools";
1704
1625
  import { getSyncSummary, useSyncState } from "@dxos/react-client/echo";
1705
- import { Icon as Icon8, useTranslation as useTranslation18 } from "@dxos/react-ui";
1626
+ import { Icon as Icon8, Popover as Popover3, useTranslation as useTranslation17 } from "@dxos/react-ui";
1627
+ import { mx as mx2 } from "@dxos/react-ui-theme";
1628
+ import { Unit } from "@dxos/util";
1706
1629
 
1707
1630
  // src/components/SyncStatus/save-tracker.ts
1708
1631
  import { Context } from "@dxos/context";
@@ -1798,7 +1721,7 @@ var getIcon = (status) => {
1798
1721
  // src/components/SyncStatus/SyncStatus.tsx
1799
1722
  var SYNC_STALLED_TIMEOUT = 5e3;
1800
1723
  var SyncStatus = () => {
1801
- var _effect = _useSignals19();
1724
+ var _effect = _useSignals17();
1802
1725
  try {
1803
1726
  const client = useClient9();
1804
1727
  const state = useSyncState();
@@ -1808,7 +1731,7 @@ var SyncStatus = () => {
1808
1731
  setSaved(state2 === "saved");
1809
1732
  });
1810
1733
  }, []);
1811
- return /* @__PURE__ */ React19.createElement(SyncStatusIndicator, {
1734
+ return /* @__PURE__ */ React17.createElement(SyncStatusIndicator, {
1812
1735
  state,
1813
1736
  saved
1814
1737
  });
@@ -1817,9 +1740,9 @@ var SyncStatus = () => {
1817
1740
  }
1818
1741
  };
1819
1742
  var SyncStatusIndicator = ({ state, saved }) => {
1820
- var _effect = _useSignals19();
1743
+ var _effect = _useSignals17();
1821
1744
  try {
1822
- const { t } = useTranslation18(SPACE_PLUGIN);
1745
+ const { t } = useTranslation17(meta.id);
1823
1746
  const summary = getSyncSummary(state);
1824
1747
  const offline = Object.values(state).length === 0;
1825
1748
  const needsToUpload = summary.differentDocuments > 0 || summary.missingOnRemote > 0;
@@ -1846,39 +1769,95 @@ var SyncStatusIndicator = ({ state, saved }) => {
1846
1769
  needsToDownload
1847
1770
  ]);
1848
1771
  const title = t(`${status} label`);
1849
- const icon = /* @__PURE__ */ React19.createElement(Icon8, {
1772
+ const icon = /* @__PURE__ */ React17.createElement(Icon8, {
1850
1773
  icon: getIcon(status),
1851
- size: 4,
1852
1774
  classNames
1853
1775
  });
1854
- return /* @__PURE__ */ React19.createElement(StatusBar.Item, {
1776
+ return /* @__PURE__ */ React17.createElement(Popover3.Root, null, /* @__PURE__ */ React17.createElement(Popover3.Trigger, {
1777
+ asChild: true
1778
+ }, /* @__PURE__ */ React17.createElement(StatusBar.Item, {
1855
1779
  title
1856
- }, icon);
1780
+ }, icon)), /* @__PURE__ */ React17.createElement(Popover3.Portal, null, /* @__PURE__ */ React17.createElement(Popover3.Content, null, /* @__PURE__ */ React17.createElement(EdgeConnectionPopover, null), /* @__PURE__ */ React17.createElement(Popover3.Arrow, null))));
1781
+ } finally {
1782
+ _effect.f();
1783
+ }
1784
+ };
1785
+ var useEdgeStatus2 = () => {
1786
+ const client = useClient9();
1787
+ const { status } = useStream(() => client.services.services.EdgeAgentService.queryEdgeStatus(), {});
1788
+ return status;
1789
+ };
1790
+ var EdgeConnectionPopover = () => {
1791
+ var _effect = _useSignals17();
1792
+ try {
1793
+ const status = useEdgeStatus2();
1794
+ const { t } = useTranslation17(meta.id);
1795
+ const isConnected = status?.state === EdgeStatus2.ConnectionState.CONNECTED;
1796
+ return /* @__PURE__ */ React17.createElement("div", {
1797
+ className: "min-is-[240px] p-2"
1798
+ }, /* @__PURE__ */ React17.createElement("div", {
1799
+ className: "flex items-center gap-2 mbe-2"
1800
+ }, /* @__PURE__ */ React17.createElement(Icon8, {
1801
+ icon: isConnected ? "ph--check-circle--regular" : "ph--warning-circle--regular",
1802
+ classNames: mx2(isConnected ? "text-successText" : "text-errorText animate-pulse")
1803
+ }), /* @__PURE__ */ React17.createElement("span", {
1804
+ className: "font-medium text-sm"
1805
+ }, isConnected ? t("sync edge connected label") : t("sync edge disconnected label"))), status?.state === EdgeStatus2.ConnectionState.NOT_CONNECTED && /* @__PURE__ */ React17.createElement("div", {
1806
+ className: "flex items-center gap-2 text-sm text-description"
1807
+ }, /* @__PURE__ */ React17.createElement(Icon8, {
1808
+ icon: "ph--cloud-x--regular"
1809
+ }), /* @__PURE__ */ React17.createElement("span", null, t("sync no connection label"))), status?.state === EdgeStatus2.ConnectionState.CONNECTED && /* @__PURE__ */ React17.createElement("div", {
1810
+ className: "space-y-2"
1811
+ }, /* @__PURE__ */ React17.createElement("div", {
1812
+ className: "flex items-center justify-between"
1813
+ }, /* @__PURE__ */ React17.createElement("div", {
1814
+ className: "flex items-center gap-2 text-sm text-description"
1815
+ }, /* @__PURE__ */ React17.createElement(Icon8, {
1816
+ icon: "ph--timer--regular"
1817
+ }), /* @__PURE__ */ React17.createElement("span", null, t("sync latency label"))), /* @__PURE__ */ React17.createElement("span", {
1818
+ className: "text-sm font-mono"
1819
+ }, status.rtt.toFixed(0), " ms")), /* @__PURE__ */ React17.createElement("div", {
1820
+ className: "flex items-center justify-between"
1821
+ }, /* @__PURE__ */ React17.createElement("div", {
1822
+ className: "flex items-center gap-2 text-sm text-description"
1823
+ }, /* @__PURE__ */ React17.createElement(Icon8, {
1824
+ icon: "ph--arrow-up--regular"
1825
+ }), /* @__PURE__ */ React17.createElement("span", null, t("sync upload label"))), /* @__PURE__ */ React17.createElement("span", {
1826
+ className: "text-sm font-mono"
1827
+ }, Unit.Kilobyte(status.rateBytesUp, 0), "/s")), /* @__PURE__ */ React17.createElement("div", {
1828
+ className: "flex items-center justify-between"
1829
+ }, /* @__PURE__ */ React17.createElement("div", {
1830
+ className: "flex items-center gap-2 text-sm text-description"
1831
+ }, /* @__PURE__ */ React17.createElement(Icon8, {
1832
+ icon: "ph--arrow-down--regular"
1833
+ }), /* @__PURE__ */ React17.createElement("span", null, t("sync download label"))), /* @__PURE__ */ React17.createElement("span", {
1834
+ className: "text-sm font-mono"
1835
+ }, Unit.Kilobyte(status.rateBytesDown, 0), "/s"))));
1857
1836
  } finally {
1858
1837
  _effect.f();
1859
1838
  }
1860
1839
  };
1861
1840
 
1862
1841
  // src/components/ViewEditor.tsx
1863
- import { useSignals as _useSignals20 } from "@preact-signals/safe-react/tracking";
1864
- import React20, { useCallback as useCallback11 } from "react";
1842
+ import { useSignals as _useSignals18 } from "@preact-signals/safe-react/tracking";
1843
+ import React18, { useCallback as useCallback11 } from "react";
1865
1844
  import { createIntent as createIntent10, useIntentDispatcher as useIntentDispatcher10 } from "@dxos/app-framework";
1866
- import { Filter as Filter2, Query as Query2, Type as Type3 } from "@dxos/echo";
1845
+ import { Type as Type3 } from "@dxos/echo";
1867
1846
  import { invariant as invariant2 } from "@dxos/invariant";
1868
1847
  import { useClient as useClient10 } from "@dxos/react-client";
1869
1848
  import { getSpace as getSpace4, useSchema } from "@dxos/react-client/echo";
1870
1849
  import { ViewEditor as NaturalViewEditor } from "@dxos/react-ui-form";
1871
- import { typenameFromQuery as typenameFromQuery2 } from "@dxos/schema";
1850
+ import { getTypenameFromQuery as getTypenameFromQuery2 } from "@dxos/schema";
1872
1851
  var __dxlog_file6 = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/ViewEditor.tsx";
1873
1852
  var ViewEditor = ({ view }) => {
1874
- var _effect = _useSignals20();
1853
+ var _effect = _useSignals18();
1875
1854
  try {
1876
1855
  const { dispatchPromise: dispatch } = useIntentDispatcher10();
1877
1856
  const client = useClient10();
1878
1857
  const space = getSpace4(view);
1879
- const typename = view.query ? typenameFromQuery2(view.query) : void 0;
1858
+ const typename = view.query ? getTypenameFromQuery2(view.query.ast) : void 0;
1880
1859
  const schema = useSchema(client, space, typename);
1881
- const handleUpdateQuery = useCallback11((typename2) => {
1860
+ const handleUpdateQuery = useCallback11((newQuery) => {
1882
1861
  invariant2(schema, void 0, {
1883
1862
  F: __dxlog_file6,
1884
1863
  L: 28,
@@ -1897,9 +1876,8 @@ var ViewEditor = ({ view }) => {
1897
1876
  ""
1898
1877
  ]
1899
1878
  });
1900
- const newQuery = Query2.select(Filter2.typename(typename2));
1901
- view.query = newQuery.ast;
1902
- schema.updateTypename(typename2);
1879
+ view.query.ast = newQuery;
1880
+ schema.updateTypename(getTypenameFromQuery2(newQuery));
1903
1881
  }, [
1904
1882
  view,
1905
1883
  schema
@@ -1916,7 +1894,7 @@ var ViewEditor = ({ view }) => {
1916
1894
  if (!space || !schema) {
1917
1895
  return null;
1918
1896
  }
1919
- return /* @__PURE__ */ React20.createElement(NaturalViewEditor, {
1897
+ return /* @__PURE__ */ React18.createElement(NaturalViewEditor, {
1920
1898
  registry: space.db.schemaRegistry,
1921
1899
  schema,
1922
1900
  view,
@@ -1930,10 +1908,11 @@ var ViewEditor = ({ view }) => {
1930
1908
  };
1931
1909
 
1932
1910
  // src/components/index.ts
1933
- import { lazy as lazy2 } from "react";
1934
- var CollectionMain = lazy2(() => import("./CollectionMain-ZJIFCWKZ.mjs"));
1935
- var ObjectDetailsPanel = lazy2(() => import("./ObjectDetailsPanel-7ADOXZ5W.mjs"));
1936
- var RecordMain = lazy2(() => import("./RecordMain-WLYJMYER.mjs"));
1911
+ import { lazy } from "react";
1912
+ var CollectionMain = lazy(() => import("./CollectionMain-EU57SRYK.mjs"));
1913
+ var ObjectDetailsPanel = lazy(() => import("./ObjectDetailsPanel-NABA2S56.mjs"));
1914
+ var ObjectSettingsContainer = lazy(() => import("./ObjectSettings-GXGTITF5.mjs"));
1915
+ var RecordMain = lazy(() => import("./RecordMain-ME2BU65P.mjs"));
1937
1916
 
1938
1917
  export {
1939
1918
  AwaitingObject,
@@ -1946,7 +1925,6 @@ export {
1946
1925
  JoinDialog,
1947
1926
  MembersContainer,
1948
1927
  MenuFooter,
1949
- ObjectSettingsContainer,
1950
1928
  PersistenceStatus,
1951
1929
  POPOVER_RENAME_OBJECT,
1952
1930
  PopoverRenameObject,
@@ -1966,16 +1944,7 @@ export {
1966
1944
  ViewEditor,
1967
1945
  CollectionMain,
1968
1946
  ObjectDetailsPanel,
1969
- RecordMain,
1970
- AppGraphBuilder,
1971
- AppGraphSerializer,
1972
- IdentityCreated,
1973
- IntentResolver,
1974
- ReactRoot,
1975
- ReactSurface,
1976
- SchemaDefs,
1977
- SpaceSettings,
1978
- SpaceState,
1979
- SpacesReady
1947
+ ObjectSettingsContainer,
1948
+ RecordMain
1980
1949
  };
1981
- //# sourceMappingURL=chunk-NMCD2PSG.mjs.map
1950
+ //# sourceMappingURL=chunk-X55EOSEF.mjs.map