@dxos/plugin-space 0.8.4-main.b97322e → 0.8.4-main.c4373fc

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 (272) 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-YPTDQKMG.mjs → ObjectDetailsPanel-SJ4XUXXX.mjs} +11 -9
  4. package/dist/lib/browser/ObjectDetailsPanel-SJ4XUXXX.mjs.map +7 -0
  5. package/dist/lib/browser/RecordMain-FHPCS6GM.mjs +68 -0
  6. package/dist/lib/browser/RecordMain-FHPCS6GM.mjs.map +7 -0
  7. package/dist/lib/browser/{app-graph-builder-7CZZJS3S.mjs → app-graph-builder-Y2LBZX2G.mjs} +102 -61
  8. package/dist/lib/browser/app-graph-builder-Y2LBZX2G.mjs.map +7 -0
  9. package/dist/lib/browser/{app-graph-serializer-H6AW7KGS.mjs → app-graph-serializer-425OVRTW.mjs} +14 -14
  10. package/dist/lib/browser/app-graph-serializer-425OVRTW.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-V7MJSSBQ.mjs → chunk-6KVKMOGQ.mjs} +148 -157
  12. package/dist/lib/browser/chunk-6KVKMOGQ.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-VLBRSGJ2.mjs → chunk-CVZAZRW4.mjs} +4 -4
  14. package/dist/lib/browser/chunk-CVZAZRW4.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-EIXZABXD.mjs +19 -0
  16. package/dist/lib/browser/chunk-EIXZABXD.mjs.map +7 -0
  17. package/dist/lib/browser/chunk-IRKDREHY.mjs +11 -0
  18. package/dist/lib/browser/chunk-IRKDREHY.mjs.map +7 -0
  19. package/dist/lib/browser/{chunk-SGTQ52SU.mjs → chunk-OYHC63NL.mjs} +16 -10
  20. package/dist/lib/browser/chunk-OYHC63NL.mjs.map +7 -0
  21. package/dist/lib/browser/chunk-PUF3B7XO.mjs +20 -0
  22. package/dist/lib/browser/chunk-PUF3B7XO.mjs.map +7 -0
  23. package/dist/lib/browser/{chunk-XUYKJUU7.mjs → chunk-X6COEDOD.mjs} +99 -44
  24. package/dist/lib/browser/chunk-X6COEDOD.mjs.map +7 -0
  25. package/dist/lib/browser/{chunk-QACNNDOT.mjs → chunk-YZJWWMNB.mjs} +11 -10
  26. package/dist/lib/browser/chunk-YZJWWMNB.mjs.map +7 -0
  27. package/dist/lib/browser/{identity-created-23XJJV2N.mjs → identity-created-PW2BA46S.mjs} +4 -4
  28. package/dist/lib/browser/{identity-created-23XJJV2N.mjs.map → identity-created-PW2BA46S.mjs.map} +3 -3
  29. package/dist/lib/browser/index.mjs +20 -40
  30. package/dist/lib/browser/index.mjs.map +3 -3
  31. package/dist/lib/browser/{intent-resolver-TIXVDYN7.mjs → intent-resolver-2TBYHOBA.mjs} +47 -42
  32. package/dist/lib/browser/intent-resolver-2TBYHOBA.mjs.map +7 -0
  33. package/dist/lib/browser/meta.json +1 -1
  34. package/dist/lib/browser/{react-root-N2J7TDRX.mjs → react-root-KMJXJ5VX.mjs} +11 -11
  35. package/dist/lib/browser/react-root-KMJXJ5VX.mjs.map +7 -0
  36. package/dist/lib/browser/{react-surface-TPNLWJJH.mjs → react-surface-YAJUAMER.mjs} +53 -42
  37. package/dist/lib/browser/react-surface-YAJUAMER.mjs.map +7 -0
  38. package/dist/lib/browser/{schema-defs-Z6FC4AHC.mjs → schema-defs-2OCPV7JF.mjs} +5 -5
  39. package/dist/lib/browser/schema-defs-2OCPV7JF.mjs.map +7 -0
  40. package/dist/lib/browser/{settings-4IMP5RYT.mjs → settings-UYYJ225A.mjs} +5 -5
  41. package/dist/lib/browser/{settings-4IMP5RYT.mjs.map → settings-UYYJ225A.mjs.map} +1 -1
  42. package/dist/lib/browser/{spaces-ready-TOPG6IV4.mjs → spaces-ready-YNZPWXA3.mjs} +18 -16
  43. package/dist/lib/browser/spaces-ready-YNZPWXA3.mjs.map +7 -0
  44. package/dist/lib/browser/{state-QYZAB45H.mjs → state-BPU73TYO.mjs} +7 -7
  45. package/dist/lib/browser/state-BPU73TYO.mjs.map +7 -0
  46. package/dist/lib/browser/types/index.mjs +2 -2
  47. package/dist/lib/node-esm/{CollectionMain-ZJIFCWKZ.mjs → CollectionMain-EU57SRYK.mjs} +4 -4
  48. package/dist/lib/node-esm/CollectionMain-EU57SRYK.mjs.map +7 -0
  49. package/dist/lib/node-esm/{ObjectDetailsPanel-QKZEDSZK.mjs → ObjectDetailsPanel-P7D727OV.mjs} +11 -9
  50. package/dist/lib/node-esm/ObjectDetailsPanel-P7D727OV.mjs.map +7 -0
  51. package/dist/lib/node-esm/RecordMain-V73AEB6N.mjs +70 -0
  52. package/dist/lib/node-esm/RecordMain-V73AEB6N.mjs.map +7 -0
  53. package/dist/lib/node-esm/{app-graph-builder-KGIGWC72.mjs → app-graph-builder-DMNLDT7E.mjs} +102 -61
  54. package/dist/lib/node-esm/app-graph-builder-DMNLDT7E.mjs.map +7 -0
  55. package/dist/lib/node-esm/{app-graph-serializer-2ICUGQQT.mjs → app-graph-serializer-ZEDSY77N.mjs} +14 -14
  56. package/dist/lib/node-esm/app-graph-serializer-ZEDSY77N.mjs.map +7 -0
  57. package/dist/lib/node-esm/chunk-36TAYXV7.mjs +21 -0
  58. package/dist/lib/node-esm/chunk-36TAYXV7.mjs.map +7 -0
  59. package/dist/lib/node-esm/{chunk-P442DOQ3.mjs → chunk-7UIEPBQJ.mjs} +11 -10
  60. package/dist/lib/node-esm/chunk-7UIEPBQJ.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-JH6F4C3I.mjs → chunk-ADEZJQE3.mjs} +16 -10
  62. package/dist/lib/node-esm/chunk-ADEZJQE3.mjs.map +7 -0
  63. package/dist/lib/node-esm/{chunk-SSLBYZEY.mjs → chunk-FLRC6XWU.mjs} +4 -4
  64. package/dist/lib/node-esm/chunk-FLRC6XWU.mjs.map +7 -0
  65. package/dist/lib/node-esm/{chunk-6X5DLJM5.mjs → chunk-L26ZIGHA.mjs} +148 -157
  66. package/dist/lib/node-esm/chunk-L26ZIGHA.mjs.map +7 -0
  67. package/dist/lib/node-esm/{chunk-HWNG4MEU.mjs → chunk-MWNATOXL.mjs} +2 -4
  68. package/dist/lib/node-esm/chunk-MWNATOXL.mjs.map +7 -0
  69. package/dist/lib/node-esm/chunk-SVFKU7EW.mjs +20 -0
  70. package/dist/lib/node-esm/chunk-SVFKU7EW.mjs.map +7 -0
  71. package/dist/lib/node-esm/{chunk-4AOMYKDE.mjs → chunk-ZFCCFELA.mjs} +99 -44
  72. package/dist/lib/node-esm/chunk-ZFCCFELA.mjs.map +7 -0
  73. package/dist/lib/node-esm/{identity-created-IJQO6GCR.mjs → identity-created-MWTLGQRU.mjs} +4 -4
  74. package/dist/lib/node-esm/{identity-created-IJQO6GCR.mjs.map → identity-created-MWTLGQRU.mjs.map} +3 -3
  75. package/dist/lib/node-esm/index.mjs +20 -40
  76. package/dist/lib/node-esm/index.mjs.map +3 -3
  77. package/dist/lib/node-esm/{intent-resolver-MHGHRGDT.mjs → intent-resolver-YOG27WOG.mjs} +47 -42
  78. package/dist/lib/node-esm/intent-resolver-YOG27WOG.mjs.map +7 -0
  79. package/dist/lib/node-esm/meta.json +1 -1
  80. package/dist/lib/node-esm/{react-root-KW3TGJGY.mjs → react-root-27QMJZD2.mjs} +11 -11
  81. package/dist/lib/node-esm/react-root-27QMJZD2.mjs.map +7 -0
  82. package/dist/lib/node-esm/{react-surface-UUIUUD6P.mjs → react-surface-RC73GAN5.mjs} +53 -42
  83. package/dist/lib/node-esm/react-surface-RC73GAN5.mjs.map +7 -0
  84. package/dist/lib/node-esm/{schema-defs-WHJM7UZE.mjs → schema-defs-X2Z7F2EV.mjs} +5 -5
  85. package/dist/lib/node-esm/schema-defs-X2Z7F2EV.mjs.map +7 -0
  86. package/dist/lib/node-esm/{settings-SAOBPND3.mjs → settings-Q736OQRP.mjs} +5 -5
  87. package/dist/lib/node-esm/{settings-SAOBPND3.mjs.map → settings-Q736OQRP.mjs.map} +1 -1
  88. package/dist/lib/node-esm/{spaces-ready-HIUKNDZK.mjs → spaces-ready-XZQD7Q65.mjs} +18 -16
  89. package/dist/lib/node-esm/spaces-ready-XZQD7Q65.mjs.map +7 -0
  90. package/dist/lib/node-esm/{state-ZVEHQ4BJ.mjs → state-BY75TM32.mjs} +7 -7
  91. package/dist/lib/node-esm/state-BY75TM32.mjs.map +7 -0
  92. package/dist/lib/node-esm/types/index.mjs +2 -2
  93. package/dist/types/src/SpacePlugin.d.ts +1 -1
  94. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  95. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
  96. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  97. package/dist/types/src/capabilities/app-graph-serializer.d.ts +1 -1
  98. package/dist/types/src/capabilities/capabilities.d.ts +4 -4
  99. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  100. package/dist/types/src/capabilities/identity-created.d.ts +1 -1
  101. package/dist/types/src/capabilities/identity-created.d.ts.map +1 -1
  102. package/dist/types/src/capabilities/index.d.ts +11 -12
  103. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  104. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  105. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  106. package/dist/types/src/capabilities/react-root.d.ts +2 -2
  107. package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
  108. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  109. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/schema-defs.d.ts +1 -1
  111. package/dist/types/src/capabilities/schema-defs.d.ts.map +1 -1
  112. package/dist/types/src/capabilities/settings.d.ts +1 -1
  113. package/dist/types/src/capabilities/spaces-ready.d.ts +1 -1
  114. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  115. package/dist/types/src/capabilities/state.d.ts +1 -1
  116. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  117. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +3 -3
  118. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  119. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +1584 -4
  120. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  121. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +5 -3
  122. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  123. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts +1 -1
  124. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
  125. package/dist/types/src/components/JoinDialog.d.ts +1 -1
  126. package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
  127. package/dist/types/src/components/MembersContainer.d.ts +3 -2
  128. package/dist/types/src/components/MembersContainer.d.ts.map +1 -1
  129. package/dist/types/src/components/MembersContainer.stories.d.ts +1584 -5
  130. package/dist/types/src/components/MembersContainer.stories.d.ts.map +1 -1
  131. package/dist/types/src/components/ObjectDetailsPanel.d.ts.map +1 -1
  132. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +1 -1
  133. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts +1 -1
  134. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts.map +1 -1
  135. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts.map +1 -1
  136. package/dist/types/src/components/PopoverRenameObject.d.ts +2 -2
  137. package/dist/types/src/components/PopoverRenameObject.d.ts.map +1 -1
  138. package/dist/types/src/components/PopoverRenameSpace.d.ts +1 -1
  139. package/dist/types/src/components/PopoverRenameSpace.d.ts.map +1 -1
  140. package/dist/types/src/components/RecordMain.d.ts +7 -0
  141. package/dist/types/src/components/RecordMain.d.ts.map +1 -0
  142. package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
  143. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  144. package/dist/types/src/components/SpacePresence.stories.d.ts +1412 -4
  145. package/dist/types/src/components/SpacePresence.stories.d.ts.map +1 -1
  146. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  147. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +1417 -4
  148. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
  149. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
  150. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +1418 -5
  151. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  152. package/dist/types/src/components/ViewEditor.d.ts +1 -1
  153. package/dist/types/src/components/ViewEditor.d.ts.map +1 -1
  154. package/dist/types/src/components/index.d.ts +8 -2
  155. package/dist/types/src/components/index.d.ts.map +1 -1
  156. package/dist/types/src/events.d.ts.map +1 -1
  157. package/dist/types/src/hooks/useActiveSpace.d.ts.map +1 -1
  158. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts +1 -1
  159. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
  160. package/dist/types/src/hooks/usePath.d.ts +1 -1
  161. package/dist/types/src/hooks/usePath.d.ts.map +1 -1
  162. package/dist/types/src/meta.d.ts +0 -1
  163. package/dist/types/src/meta.d.ts.map +1 -1
  164. package/dist/types/src/translations.d.ts +1216 -26
  165. package/dist/types/src/translations.d.ts.map +1 -1
  166. package/dist/types/src/types/types.d.ts +76 -96
  167. package/dist/types/src/types/types.d.ts.map +1 -1
  168. package/dist/types/src/util.d.ts +10 -7
  169. package/dist/types/src/util.d.ts.map +1 -1
  170. package/dist/types/tsconfig.tsbuildinfo +1 -1
  171. package/package.json +60 -58
  172. package/src/SpacePlugin.ts +204 -219
  173. package/src/capabilities/app-graph-builder.ts +127 -69
  174. package/src/capabilities/app-graph-serializer.ts +7 -7
  175. package/src/capabilities/capabilities.ts +12 -11
  176. package/src/capabilities/identity-created.ts +1 -1
  177. package/src/capabilities/index.ts +0 -1
  178. package/src/capabilities/intent-resolver.ts +37 -25
  179. package/src/capabilities/react-root.tsx +4 -3
  180. package/src/capabilities/react-surface.tsx +52 -38
  181. package/src/capabilities/schema-defs.ts +3 -2
  182. package/src/capabilities/spaces-ready.ts +11 -8
  183. package/src/capabilities/state.ts +5 -4
  184. package/src/components/AwaitingObject.tsx +3 -3
  185. package/src/components/CollectionMain.tsx +2 -2
  186. package/src/components/CollectionSection.tsx +2 -2
  187. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +11 -10
  188. package/src/components/CreateDialog/CreateObjectDialog.tsx +24 -13
  189. package/src/components/CreateDialog/CreateObjectPanel.tsx +22 -11
  190. package/src/components/CreateDialog/CreateSpaceDialog.tsx +6 -5
  191. package/src/components/JoinDialog.tsx +7 -7
  192. package/src/components/MembersContainer.stories.tsx +36 -10
  193. package/src/components/MembersContainer.tsx +13 -14
  194. package/src/components/MenuFooter.tsx +2 -2
  195. package/src/components/ObjectDetailsPanel.tsx +7 -5
  196. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +4 -3
  197. package/src/components/ObjectSettings/ForeignKeys.tsx +3 -3
  198. package/src/components/ObjectSettings/ObjectSettingsContainer.tsx +3 -2
  199. package/src/components/PersistenceStatus.tsx +2 -2
  200. package/src/components/PopoverRenameObject.tsx +9 -15
  201. package/src/components/PopoverRenameSpace.tsx +4 -4
  202. package/src/components/RecordMain.tsx +43 -0
  203. package/src/components/SchemaContainer.tsx +5 -5
  204. package/src/components/SpacePluginSettings.tsx +8 -9
  205. package/src/components/SpacePresence.stories.tsx +23 -22
  206. package/src/components/SpacePresence.tsx +10 -10
  207. package/src/components/SpaceSettings/SpaceSettingsContainer.stories.tsx +17 -9
  208. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +19 -18
  209. package/src/components/SyncStatus/InlineSyncStatus.tsx +3 -3
  210. package/src/components/SyncStatus/SyncStatus.stories.tsx +6 -7
  211. package/src/components/SyncStatus/SyncStatus.tsx +4 -3
  212. package/src/components/ViewEditor.tsx +13 -18
  213. package/src/components/index.ts +1 -0
  214. package/src/events.ts +7 -7
  215. package/src/hooks/useActiveSpace.ts +2 -2
  216. package/src/hooks/useInputSurfaceLookup.tsx +2 -2
  217. package/src/hooks/usePath.ts +1 -1
  218. package/src/meta.ts +1 -3
  219. package/src/translations.ts +9 -8
  220. package/src/types/types.ts +17 -13
  221. package/src/util.tsx +97 -40
  222. package/dist/lib/browser/CollectionMain-D2B75XBS.mjs.map +0 -7
  223. package/dist/lib/browser/ObjectDetailsPanel-YPTDQKMG.mjs.map +0 -7
  224. package/dist/lib/browser/app-graph-builder-7CZZJS3S.mjs.map +0 -7
  225. package/dist/lib/browser/app-graph-serializer-H6AW7KGS.mjs.map +0 -7
  226. package/dist/lib/browser/chunk-CEFHNVU7.mjs +0 -20
  227. package/dist/lib/browser/chunk-CEFHNVU7.mjs.map +0 -7
  228. package/dist/lib/browser/chunk-FBCGT5YY.mjs +0 -13
  229. package/dist/lib/browser/chunk-FBCGT5YY.mjs.map +0 -7
  230. package/dist/lib/browser/chunk-JS3MMC42.mjs +0 -19
  231. package/dist/lib/browser/chunk-JS3MMC42.mjs.map +0 -7
  232. package/dist/lib/browser/chunk-QACNNDOT.mjs.map +0 -7
  233. package/dist/lib/browser/chunk-SGTQ52SU.mjs.map +0 -7
  234. package/dist/lib/browser/chunk-V7MJSSBQ.mjs.map +0 -7
  235. package/dist/lib/browser/chunk-VLBRSGJ2.mjs.map +0 -7
  236. package/dist/lib/browser/chunk-XUYKJUU7.mjs.map +0 -7
  237. package/dist/lib/browser/intent-resolver-TIXVDYN7.mjs.map +0 -7
  238. package/dist/lib/browser/react-root-N2J7TDRX.mjs.map +0 -7
  239. package/dist/lib/browser/react-surface-TPNLWJJH.mjs.map +0 -7
  240. package/dist/lib/browser/schema-defs-Z6FC4AHC.mjs.map +0 -7
  241. package/dist/lib/browser/schema-tools-BNP4JTD7.mjs +0 -124
  242. package/dist/lib/browser/schema-tools-BNP4JTD7.mjs.map +0 -7
  243. package/dist/lib/browser/spaces-ready-TOPG6IV4.mjs.map +0 -7
  244. package/dist/lib/browser/state-QYZAB45H.mjs.map +0 -7
  245. package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs.map +0 -7
  246. package/dist/lib/node-esm/ObjectDetailsPanel-QKZEDSZK.mjs.map +0 -7
  247. package/dist/lib/node-esm/app-graph-builder-KGIGWC72.mjs.map +0 -7
  248. package/dist/lib/node-esm/app-graph-serializer-2ICUGQQT.mjs.map +0 -7
  249. package/dist/lib/node-esm/chunk-4AOMYKDE.mjs.map +0 -7
  250. package/dist/lib/node-esm/chunk-5HHYE264.mjs +0 -20
  251. package/dist/lib/node-esm/chunk-5HHYE264.mjs.map +0 -7
  252. package/dist/lib/node-esm/chunk-5T3ZH23B.mjs +0 -21
  253. package/dist/lib/node-esm/chunk-5T3ZH23B.mjs.map +0 -7
  254. package/dist/lib/node-esm/chunk-6X5DLJM5.mjs.map +0 -7
  255. package/dist/lib/node-esm/chunk-HWNG4MEU.mjs.map +0 -7
  256. package/dist/lib/node-esm/chunk-JH6F4C3I.mjs.map +0 -7
  257. package/dist/lib/node-esm/chunk-P442DOQ3.mjs.map +0 -7
  258. package/dist/lib/node-esm/chunk-SSLBYZEY.mjs.map +0 -7
  259. package/dist/lib/node-esm/intent-resolver-MHGHRGDT.mjs.map +0 -7
  260. package/dist/lib/node-esm/react-root-KW3TGJGY.mjs.map +0 -7
  261. package/dist/lib/node-esm/react-surface-UUIUUD6P.mjs.map +0 -7
  262. package/dist/lib/node-esm/schema-defs-WHJM7UZE.mjs.map +0 -7
  263. package/dist/lib/node-esm/schema-tools-KWW5PTML.mjs +0 -126
  264. package/dist/lib/node-esm/schema-tools-KWW5PTML.mjs.map +0 -7
  265. package/dist/lib/node-esm/spaces-ready-HIUKNDZK.mjs.map +0 -7
  266. package/dist/lib/node-esm/state-ZVEHQ4BJ.mjs.map +0 -7
  267. package/dist/types/src/capabilities/schema-tool.test.d.ts +0 -2
  268. package/dist/types/src/capabilities/schema-tool.test.d.ts.map +0 -1
  269. package/dist/types/src/capabilities/schema-tools.d.ts +0 -13
  270. package/dist/types/src/capabilities/schema-tools.d.ts.map +0 -1
  271. package/src/capabilities/schema-tool.test.ts +0 -44
  272. package/src/capabilities/schema-tools.ts +0 -125
@@ -1,27 +1,26 @@
1
1
  import {
2
2
  useInputSurfaceLookup,
3
3
  usePath
4
- } from "./chunk-VLBRSGJ2.mjs";
4
+ } from "./chunk-CVZAZRW4.mjs";
5
5
  import {
6
6
  SpaceCapabilities
7
- } from "./chunk-CEFHNVU7.mjs";
7
+ } from "./chunk-PUF3B7XO.mjs";
8
8
  import {
9
9
  COMPOSER_SPACE_LOCK,
10
10
  getSpaceDisplayName
11
- } from "./chunk-XUYKJUU7.mjs";
11
+ } from "./chunk-X6COEDOD.mjs";
12
12
  import {
13
13
  SpaceAction,
14
14
  SpaceForm
15
- } from "./chunk-SGTQ52SU.mjs";
15
+ } from "./chunk-OYHC63NL.mjs";
16
16
  import {
17
- SPACE_PLUGIN,
18
17
  meta
19
- } from "./chunk-FBCGT5YY.mjs";
18
+ } from "./chunk-IRKDREHY.mjs";
20
19
 
21
20
  // src/components/AwaitingObject.tsx
22
21
  import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
23
22
  import React, { useCallback, useEffect, useState } from "react";
24
- import { createIntent, LayoutAction, useIntentDispatcher, useLayout } from "@dxos/app-framework";
23
+ import { LayoutAction, createIntent, useIntentDispatcher, useLayout } from "@dxos/app-framework";
25
24
  import { useClient } from "@dxos/react-client";
26
25
  import { Filter, fullyQualifiedId, useQuery } from "@dxos/react-client/echo";
27
26
  import { Button, Icon, Toast, useTranslation } from "@dxos/react-ui";
@@ -33,7 +32,7 @@ var AwaitingObject = ({ id }) => {
33
32
  const [open, setOpen] = useState(true);
34
33
  const [waiting, setWaiting] = useState(true);
35
34
  const [found, setFound] = useState(false);
36
- const { t } = useTranslation(SPACE_PLUGIN);
35
+ const { t } = useTranslation(meta.id);
37
36
  const { dispatchPromise: dispatch } = useIntentDispatcher();
38
37
  const layout = useLayout();
39
38
  const client = useClient();
@@ -121,7 +120,8 @@ var AwaitingObject = ({ id }) => {
121
120
 
122
121
  // src/components/CreateDialog/CreateObjectDialog.tsx
123
122
  import { useSignals as _useSignals3 } from "@preact-signals/safe-react/tracking";
124
- import { Effect, pipe } from "effect";
123
+ import * as Effect from "effect/Effect";
124
+ import * as Function from "effect/Function";
125
125
  import React3, { useCallback as useCallback3, useRef, useState as useState2 } from "react";
126
126
  import { Capabilities, LayoutAction as LayoutAction2, chain, createIntent as createIntent2, useCapabilities, useIntentDispatcher as useIntentDispatcher2, usePluginManager } from "@dxos/app-framework";
127
127
  import { Obj, Query, Type as Type2 } from "@dxos/echo";
@@ -130,25 +130,46 @@ import { useClient as useClient2 } from "@dxos/react-client";
130
130
  import { getSpace, isLiveObject, isSpace, useQuery as useQuery2, useSpaces } from "@dxos/react-client/echo";
131
131
  import { Button as Button2, Dialog, Icon as Icon3, useTranslation as useTranslation3 } from "@dxos/react-ui";
132
132
  import { cardDialogContent, cardDialogHeader } from "@dxos/react-ui-stack";
133
- import { DataType } from "@dxos/schema";
133
+ import { DataType, getTypenameFromQuery } from "@dxos/schema";
134
134
  import { isNonNullable as isNonNullable2 } from "@dxos/util";
135
135
 
136
+ // src/capabilities/index.ts
137
+ import { lazy } from "@dxos/app-framework";
138
+ var AppGraphBuilder = lazy(() => import("./app-graph-builder-Y2LBZX2G.mjs"));
139
+ var AppGraphSerializer = lazy(() => import("./app-graph-serializer-425OVRTW.mjs"));
140
+ var IdentityCreated = lazy(() => import("./identity-created-PW2BA46S.mjs"));
141
+ var IntentResolver = lazy(() => import("./intent-resolver-2TBYHOBA.mjs"));
142
+ var ReactRoot = lazy(() => import("./react-root-KMJXJ5VX.mjs"));
143
+ var ReactSurface = lazy(() => import("./react-surface-YAJUAMER.mjs"));
144
+ var SchemaDefs = lazy(() => import("./schema-defs-2OCPV7JF.mjs"));
145
+ var SpaceSettings = lazy(() => import("./settings-UYYJ225A.mjs"));
146
+ var SpaceState = lazy(() => import("./state-BPU73TYO.mjs"));
147
+ var SpacesReady = lazy(() => import("./spaces-ready-YNZPWXA3.mjs"));
148
+
136
149
  // src/components/CreateDialog/CreateObjectPanel.tsx
137
150
  import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
151
+ import * as Option from "effect/Option";
138
152
  import React2, { useCallback as useCallback2 } from "react";
139
153
  import { Type } from "@dxos/echo";
140
- import { getTypeAnnotation } from "@dxos/echo-schema";
141
- import { Icon as Icon2, toLocalizedString, useTranslation as useTranslation2 } from "@dxos/react-ui";
154
+ import { ViewAnnotation, getTypeAnnotation } from "@dxos/echo/internal";
155
+ import { Icon as Icon2, toLocalizedString, useDefaultValue, useTranslation as useTranslation2 } from "@dxos/react-ui";
142
156
  import { Form } from "@dxos/react-ui-form";
143
157
  import { SearchList } from "@dxos/react-ui-searchlist";
144
158
  import { cardDialogOverflow, cardDialogPaddedOverflow, cardDialogSearchListRoot } from "@dxos/react-ui-stack";
145
159
  import { isNonNullable } from "@dxos/util";
146
- var CreateObjectPanel = ({ forms, spaces, typename, target, name: initialName, defaultSpaceId, resolve, onTargetChange, onTypenameChange, onCreateObject }) => {
160
+ var CreateObjectPanel = ({ forms, spaces, typename, target, views, initialFormValues: _initialFormValues, defaultSpaceId, resolve, onTargetChange, onTypenameChange, onCreateObject }) => {
147
161
  var _effect = _useSignals2();
148
162
  try {
149
- const { t } = useTranslation2(SPACE_PLUGIN);
163
+ const { t } = useTranslation2(meta.id);
164
+ const initialFormValues = useDefaultValue(_initialFormValues, () => ({}));
150
165
  const form = forms.find((form2) => Type.getTypename(form2.objectSchema) === typename);
151
- const options = forms.map((form2) => getTypeAnnotation(form2.objectSchema)).filter(isNonNullable).sort((a, b) => {
166
+ const options = forms.filter((form2) => {
167
+ if (views == null) {
168
+ return true;
169
+ } else {
170
+ return views === ViewAnnotation.get(form2.objectSchema).pipe(Option.getOrElse(() => false));
171
+ }
172
+ }).map((form2) => getTypeAnnotation(form2.objectSchema)).filter(isNonNullable).sort((a, b) => {
152
173
  const nameA = t("typename label", {
153
174
  ns: a.typename,
154
175
  defaultValue: a.typename
@@ -200,9 +221,7 @@ var CreateObjectPanel = ({ forms, spaces, typename, target, name: initialName, d
200
221
  className: cardDialogOverflow
201
222
  }, /* @__PURE__ */ React2.createElement(Form, {
202
223
  autoFocus: true,
203
- values: {
204
- name: initialName
205
- },
224
+ values: initialFormValues,
206
225
  schema: form.formSchema,
207
226
  testId: "create-object-form",
208
227
  onSave: handleCreateObject,
@@ -216,7 +235,7 @@ var CreateObjectPanel = ({ forms, spaces, typename, target, name: initialName, d
216
235
  var SelectSpace = ({ spaces, defaultSpaceId, onChange }) => {
217
236
  var _effect = _useSignals2();
218
237
  try {
219
- const { t } = useTranslation2(SPACE_PLUGIN);
238
+ const { t } = useTranslation2(meta.id);
220
239
  return /* @__PURE__ */ React2.createElement(SearchList.Root, {
221
240
  label: t("space input label"),
222
241
  classNames: cardDialogSearchListRoot
@@ -256,7 +275,7 @@ var SelectSpace = ({ spaces, defaultSpaceId, onChange }) => {
256
275
  var SelectSchema = ({ options, resolve, onChange }) => {
257
276
  var _effect = _useSignals2();
258
277
  try {
259
- const { t } = useTranslation2(SPACE_PLUGIN);
278
+ const { t } = useTranslation2(meta.id);
260
279
  return /* @__PURE__ */ React2.createElement(SearchList.Root, {
261
280
  label: t("schema input label"),
262
281
  classNames: cardDialogSearchListRoot
@@ -288,29 +307,15 @@ var SelectSchema = ({ options, resolve, onChange }) => {
288
307
  }
289
308
  };
290
309
 
291
- // src/capabilities/index.ts
292
- import { lazy } from "@dxos/app-framework";
293
- var AppGraphBuilder = lazy(() => import("./app-graph-builder-7CZZJS3S.mjs"));
294
- var AppGraphSerializer = lazy(() => import("./app-graph-serializer-H6AW7KGS.mjs"));
295
- var IdentityCreated = lazy(() => import("./identity-created-23XJJV2N.mjs"));
296
- var IntentResolver = lazy(() => import("./intent-resolver-TIXVDYN7.mjs"));
297
- var ReactRoot = lazy(() => import("./react-root-N2J7TDRX.mjs"));
298
- var ReactSurface = lazy(() => import("./react-surface-TPNLWJJH.mjs"));
299
- var SchemaDefs = lazy(() => import("./schema-defs-Z6FC4AHC.mjs"));
300
- var SchemaTools = lazy(() => import("./schema-tools-BNP4JTD7.mjs"));
301
- var SpaceSettings = lazy(() => import("./settings-4IMP5RYT.mjs"));
302
- var SpaceState = lazy(() => import("./state-QYZAB45H.mjs"));
303
- var SpacesReady = lazy(() => import("./spaces-ready-TOPG6IV4.mjs"));
304
-
305
310
  // src/components/CreateDialog/CreateObjectDialog.tsx
306
311
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/CreateDialog/CreateObjectDialog.tsx";
307
- var CREATE_OBJECT_DIALOG = `${SPACE_PLUGIN}/CreateObjectDialog`;
308
- var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, name, onCreateObject, shouldNavigate: _shouldNavigate }) => {
312
+ var CREATE_OBJECT_DIALOG = `${meta.id}/CreateObjectDialog`;
313
+ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, views, initialFormValues, onCreateObject, shouldNavigate: _shouldNavigate }) => {
309
314
  var _effect = _useSignals3();
310
315
  try {
311
316
  const closeRef = useRef(null);
312
317
  const manager = usePluginManager();
313
- const { t } = useTranslation3(SPACE_PLUGIN);
318
+ const { t } = useTranslation3(meta.id);
314
319
  const client = useClient2();
315
320
  const spaces = useSpaces();
316
321
  const { dispatch } = useIntentDispatcher2();
@@ -319,7 +324,7 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, na
319
324
  const [typename, setTypename] = useState2(initialTypename);
320
325
  const space = isSpace(target) ? target : getSpace(target);
321
326
  const queryCollections = useQuery2(space, Query.type(DataType.QueryCollection));
322
- const hiddenTypenames = queryCollections.map((collection) => collection.query.typename).filter(isNonNullable2);
327
+ const hiddenTypenames = queryCollections.map((collection) => getTypenameFromQuery(collection.query)).filter(isNonNullable2);
323
328
  const resolve = useCallback3((typename2) => manager.context.getCapabilities(Capabilities.Metadata).find(({ id }) => id === typename2)?.metadata ?? {}, [
324
329
  manager
325
330
  ]);
@@ -331,7 +336,7 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, na
331
336
  const space2 = isSpace(target) ? target : getSpace(target);
332
337
  invariant(space2, "Missing space", {
333
338
  F: __dxlog_file,
334
- L: 76,
339
+ L: 84,
335
340
  S: this,
336
341
  A: [
337
342
  "space",
@@ -350,7 +355,7 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, na
350
355
  });
351
356
  const shouldNavigate = _shouldNavigate ?? (() => true);
352
357
  if (shouldNavigate(object)) {
353
- yield* dispatch(pipe(addObjectIntent, chain(LayoutAction2.Open, {
358
+ yield* dispatch(Function.pipe(addObjectIntent, chain(LayoutAction2.Open, {
354
359
  part: "main"
355
360
  })));
356
361
  } else {
@@ -376,7 +381,7 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, na
376
381
  }, /* @__PURE__ */ React3.createElement(Dialog.Title, null, t("create object dialog title", {
377
382
  object: t("typename label", {
378
383
  ns: typename,
379
- defaultValue: "Item"
384
+ defaultValue: views ? "View" : "Item"
380
385
  })
381
386
  })), /* @__PURE__ */ React3.createElement(Dialog.Close, {
382
387
  asChild: true
@@ -392,8 +397,9 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, na
392
397
  forms,
393
398
  spaces,
394
399
  target,
400
+ views,
395
401
  typename,
396
- name,
402
+ initialFormValues,
397
403
  defaultSpaceId: client.spaces.default.id,
398
404
  resolve,
399
405
  onTargetChange: setTarget,
@@ -408,13 +414,13 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, na
408
414
 
409
415
  // src/components/CreateDialog/CreateSpaceDialog.tsx
410
416
  import { useSignals as _useSignals4 } from "@preact-signals/safe-react/tracking";
411
- import { Effect as Effect2 } from "effect";
417
+ import * as Effect2 from "effect/Effect";
412
418
  import React4, { useCallback as useCallback4, useRef as useRef2 } from "react";
413
- import { createIntent as createIntent3, LayoutAction as LayoutAction3, useIntentDispatcher as useIntentDispatcher3 } from "@dxos/app-framework";
419
+ import { LayoutAction as LayoutAction3, createIntent as createIntent3, useIntentDispatcher as useIntentDispatcher3 } from "@dxos/app-framework";
414
420
  import { Button as Button3, Dialog as Dialog2, Icon as Icon4, useTranslation as useTranslation4 } from "@dxos/react-ui";
415
421
  import { Form as Form2 } from "@dxos/react-ui-form";
416
422
  import { cardDialogContent as cardDialogContent2, cardDialogHeader as cardDialogHeader2 } from "@dxos/react-ui-stack";
417
- var CREATE_SPACE_DIALOG = `${SPACE_PLUGIN}/CreateSpaceDialog`;
423
+ var CREATE_SPACE_DIALOG = `${meta.id}/CreateSpaceDialog`;
418
424
  var initialValues = {
419
425
  edgeReplication: true
420
426
  };
@@ -422,7 +428,7 @@ var CreateSpaceDialog = () => {
422
428
  var _effect = _useSignals4();
423
429
  try {
424
430
  const closeRef = useRef2(null);
425
- const { t } = useTranslation4(SPACE_PLUGIN);
431
+ const { t } = useTranslation4(meta.id);
426
432
  const { dispatch } = useIntentDispatcher3();
427
433
  const inputSurfaceLookup = useInputSurfaceLookup();
428
434
  const handleCreateSpace = useCallback4(async (data) => {
@@ -486,7 +492,7 @@ import { useTranslation as useTranslation5 } from "@dxos/react-ui";
486
492
  var CollectionSection = ({ collection }) => {
487
493
  var _effect = _useSignals5();
488
494
  try {
489
- const { t } = useTranslation5(SPACE_PLUGIN);
495
+ const { t } = useTranslation5(meta.id);
490
496
  return /* @__PURE__ */ React5.createElement("div", {
491
497
  className: "min-bs-[3.5rem] grid grid-rows-subgrid grid-cols-subgrid items-center"
492
498
  }, /* @__PURE__ */ React5.createElement("span", {
@@ -500,20 +506,20 @@ var CollectionSection = ({ collection }) => {
500
506
  // src/components/JoinDialog.tsx
501
507
  import { useSignals as _useSignals6 } from "@preact-signals/safe-react/tracking";
502
508
  import React6, { useCallback as useCallback5 } from "react";
503
- import { createIntent as createIntent4, LayoutAction as LayoutAction4, useAppGraph, useIntentDispatcher as useIntentDispatcher4 } from "@dxos/app-framework";
509
+ import { LayoutAction as LayoutAction4, createIntent as createIntent4, useAppGraph, useIntentDispatcher as useIntentDispatcher4 } from "@dxos/app-framework";
504
510
  import { Trigger } from "@dxos/async";
505
511
  import { ObservabilityAction } from "@dxos/plugin-observability/types";
506
512
  import { useClient as useClient3 } from "@dxos/react-client";
507
513
  import { Dialog as Dialog3, useTranslation as useTranslation6 } from "@dxos/react-ui";
508
514
  import { JoinPanel } from "@dxos/shell/react";
509
- var JOIN_DIALOG = `${SPACE_PLUGIN}/JoinDialog`;
515
+ var JOIN_DIALOG = `${meta.id}/JoinDialog`;
510
516
  var JoinDialog = ({ navigableCollections, onDone, ...props }) => {
511
517
  var _effect = _useSignals6();
512
518
  try {
513
519
  const { dispatchPromise: dispatch } = useIntentDispatcher4();
514
520
  const client = useClient3();
515
521
  const { graph } = useAppGraph();
516
- const { t } = useTranslation6(SPACE_PLUGIN);
522
+ const { t } = useTranslation6(meta.id);
517
523
  const handleDone = useCallback5(async (result) => {
518
524
  const spaceKey = result?.spaceKey;
519
525
  if (!spaceKey) {
@@ -523,18 +529,18 @@ var JoinDialog = ({ navigableCollections, onDone, ...props }) => {
523
529
  dispatch(createIntent4(LayoutAction4.AddToast, {
524
530
  part: "toast",
525
531
  subject: {
526
- id: `${SPACE_PLUGIN}/join-success`,
532
+ id: `${meta.id}/join-success`,
527
533
  duration: 5e3,
528
534
  title: [
529
535
  "join success label",
530
536
  {
531
- ns: SPACE_PLUGIN
537
+ ns: meta.id
532
538
  }
533
539
  ],
534
540
  closeLabel: [
535
541
  "dismiss label",
536
542
  {
537
- ns: SPACE_PLUGIN
543
+ ns: meta.id
538
544
  }
539
545
  ]
540
546
  }
@@ -623,7 +629,7 @@ import { useConfig } from "@dxos/react-client";
623
629
  import { fullyQualifiedId as fullyQualifiedId2, useSpaceInvitations } from "@dxos/react-client/echo";
624
630
  import { Invitation, InvitationEncoder } from "@dxos/react-client/invitations";
625
631
  import { Button as Button4, Clipboard, Icon as Icon5, Input, useId, useTranslation as useTranslation7 } from "@dxos/react-ui";
626
- import { ControlPage, ControlSection, ControlFrame, ControlFrameItem, ControlItemInput } from "@dxos/react-ui-form";
632
+ import { ControlFrame, ControlFrameItem, ControlItemInput, ControlPage, ControlSection } from "@dxos/react-ui-form";
627
633
  import { StackItem } from "@dxos/react-ui-stack";
628
634
  import { DataType as DataType2 } from "@dxos/schema";
629
635
  import { AuthCode, BifurcatedAction, Centered, Emoji, InvitationList, SpaceMemberList, Viewport } from "@dxos/shell/react";
@@ -648,7 +654,7 @@ var handleInvitationEvent = (invitation, subscription) => {
648
654
  var MembersContainer = ({ space, createInvitationUrl }) => {
649
655
  var _effect = _useSignals7();
650
656
  try {
651
- const { t } = useTranslation7(SPACE_PLUGIN);
657
+ const { t } = useTranslation7(meta.id);
652
658
  const config = useConfig();
653
659
  const { dispatchPromise: dispatch } = useIntentDispatcher5();
654
660
  const invitations = useSpaceInvitations(space.key);
@@ -676,10 +682,7 @@ var MembersContainer = ({ space, createInvitationUrl }) => {
676
682
  description: t("invite one description", {
677
683
  ns: "os"
678
684
  }),
679
- icon: () => /* @__PURE__ */ React7.createElement(Icon5, {
680
- icon: "ph--user-plus--regular",
681
- size: 5
682
- }),
685
+ icon: "ph--user-plus--regular",
683
686
  testId: "membersContainer.inviteOne",
684
687
  onClick: async () => {
685
688
  const { data: invitation } = await dispatch(createIntent5(SpaceAction.Share, {
@@ -701,10 +704,7 @@ var MembersContainer = ({ space, createInvitationUrl }) => {
701
704
  description: t("invite many description", {
702
705
  ns: "os"
703
706
  }),
704
- icon: () => /* @__PURE__ */ React7.createElement(Icon5, {
705
- icon: "ph--users-three--regular",
706
- size: 5
707
- }),
707
+ icon: "ph--users-three--regular",
708
708
  testId: "membersContainer.inviteMany",
709
709
  onClick: async () => {
710
710
  const { data: invitation } = await dispatch(createIntent5(SpaceAction.Share, {
@@ -732,7 +732,7 @@ var MembersContainer = ({ space, createInvitationUrl }) => {
732
732
  setSelectedInvitation(null);
733
733
  };
734
734
  return /* @__PURE__ */ React7.createElement(Clipboard.Provider, null, /* @__PURE__ */ React7.createElement(StackItem.Content, {
735
- classNames: "block overflow-y-auto"
735
+ scrollable: true
736
736
  }, /* @__PURE__ */ React7.createElement(ControlPage, null, /* @__PURE__ */ React7.createElement(ControlSection, {
737
737
  title: t("members verbose label"),
738
738
  description: t("members description")
@@ -764,7 +764,7 @@ var MembersContainer = ({ space, createInvitationUrl }) => {
764
764
  onChangeActiveAction: setActiveAction,
765
765
  "data-testid": "membersContainer.createInvitation"
766
766
  })))), /* @__PURE__ */ React7.createElement("div", {
767
- className: "justify-center gap-4 p-0 mbs-4 container-max-width grid grid-cols-1 md:grid-cols-[1fr_min-content]"
767
+ className: "justify-center p-0 mbs-4 container-max-width grid grid-cols-1 md:grid-cols-[1fr_min-content]"
768
768
  }, /* @__PURE__ */ React7.createElement(ControlItemInput, {
769
769
  title: t("space locked label"),
770
770
  description: t("space locked description")
@@ -815,7 +815,7 @@ var InvitationQR = ({ id, url, onCancel }) => {
815
815
  return /* @__PURE__ */ React7.createElement(React7.Fragment, null, /* @__PURE__ */ React7.createElement("p", {
816
816
  className: "text-description"
817
817
  }, t("qr code description", {
818
- ns: SPACE_PLUGIN
818
+ ns: meta.id
819
819
  })), /* @__PURE__ */ React7.createElement("div", {
820
820
  role: "group",
821
821
  className: "grid grid-cols-[1fr_min-content] mlb-2 gap-2"
@@ -894,7 +894,7 @@ import { DropdownMenu, Icon as Icon6, toLocalizedString as toLocalizedString2, u
894
894
  var MenuFooter = ({ object }) => {
895
895
  var _effect = _useSignals8();
896
896
  try {
897
- const { t } = useTranslation8(SPACE_PLUGIN);
897
+ const { t } = useTranslation8(meta.id);
898
898
  const client = useClient4();
899
899
  const space = getSpace2(object);
900
900
  const spaceName = space ? getSpaceDisplayName(space, {
@@ -919,7 +919,7 @@ var MenuFooter = ({ object }) => {
919
919
  import { useSignals as _useSignals10 } from "@preact-signals/safe-react/tracking";
920
920
  import React10, { useMemo as useMemo2 } from "react";
921
921
  import { Surface } from "@dxos/app-framework";
922
- import { Clipboard as Clipboard2 } from "@dxos/react-ui";
922
+ import { Clipboard as Clipboard2, Toolbar } from "@dxos/react-ui";
923
923
  import { StackItem as StackItem2 } from "@dxos/react-ui-stack";
924
924
 
925
925
  // src/components/ObjectSettings/BaseObjectSettings.tsx
@@ -960,8 +960,8 @@ var ObjectSettingsContainer = ({ object, role }) => {
960
960
  object
961
961
  ]);
962
962
  return /* @__PURE__ */ React10.createElement(Clipboard2.Provider, null, /* @__PURE__ */ React10.createElement(StackItem2.Content, {
963
- toolbar: false
964
- }, /* @__PURE__ */ React10.createElement("div", {
963
+ toolbar: true
964
+ }, /* @__PURE__ */ React10.createElement(Toolbar.Root, null), /* @__PURE__ */ React10.createElement("div", {
965
965
  role: "none",
966
966
  className: "overflow-y-auto pli-cardSpacingInline plb-cardSpacingBlock"
967
967
  }, /* @__PURE__ */ React10.createElement(BaseObjectSettings, {
@@ -987,7 +987,7 @@ import { mx, staticPlaceholderText, warningText } from "@dxos/react-ui-theme";
987
987
  var PersistenceStatus = ({ db }) => {
988
988
  var _effect = _useSignals11();
989
989
  try {
990
- const { t } = useTranslation10(SPACE_PLUGIN);
990
+ const { t } = useTranslation10(meta.id);
991
991
  const [displayMessage, setDisplayMessage] = useState4(false);
992
992
  const [status, naturalSetStatus] = useState4(0);
993
993
  const [prevStatus, setPrevStatus] = useState4(0);
@@ -1046,35 +1046,31 @@ var PersistenceStatus = ({ db }) => {
1046
1046
  // src/components/PopoverRenameObject.tsx
1047
1047
  import { useSignals as _useSignals12 } from "@preact-signals/safe-react/tracking";
1048
1048
  import React12, { useCallback as useCallback7, useRef as useRef4, useState as useState5 } from "react";
1049
- import { createIntent as createIntent6, LayoutAction as LayoutAction5, useIntentDispatcher as useIntentDispatcher6 } from "@dxos/app-framework";
1049
+ import { LayoutAction as LayoutAction5, createIntent as createIntent6, useIntentDispatcher as useIntentDispatcher6 } from "@dxos/app-framework";
1050
+ import { Obj as Obj2 } from "@dxos/echo";
1050
1051
  import { log as log2 } from "@dxos/log";
1051
1052
  import { Button as Button5, Input as Input3, useTranslation as useTranslation11 } from "@dxos/react-ui";
1052
1053
  var __dxlog_file3 = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/PopoverRenameObject.tsx";
1053
- var POPOVER_RENAME_OBJECT = `${SPACE_PLUGIN}/PopoverRenameObject`;
1054
- var PopoverRenameObject = ({ object: obj }) => {
1054
+ var POPOVER_RENAME_OBJECT = `${meta.id}/PopoverRenameObject`;
1055
+ var PopoverRenameObject = ({ object }) => {
1055
1056
  var _effect = _useSignals12();
1056
1057
  try {
1057
- const { t } = useTranslation11(SPACE_PLUGIN);
1058
+ const { t } = useTranslation11(meta.id);
1058
1059
  const doneButton = useRef4(null);
1059
- const object = obj;
1060
- const [name, setName] = useState5(object.name || object.title || "");
1060
+ const [name, setName] = useState5(Obj2.getLabel(object));
1061
1061
  const { dispatchPromise: dispatch } = useIntentDispatcher6();
1062
1062
  const handleDone = useCallback7(() => {
1063
1063
  try {
1064
- object.name = name;
1064
+ name && Obj2.setLabel(object, name);
1065
1065
  } catch (err) {
1066
- try {
1067
- object.title = name;
1068
- } catch {
1069
- log2.error("Failed to rename object", {
1070
- err
1071
- }, {
1072
- F: __dxlog_file3,
1073
- L: 32,
1074
- S: void 0,
1075
- C: (f, a) => f(...a)
1076
- });
1077
- }
1066
+ log2.error("Failed to rename object", {
1067
+ err
1068
+ }, {
1069
+ F: __dxlog_file3,
1070
+ L: 27,
1071
+ S: void 0,
1072
+ C: (f, a) => f(...a)
1073
+ });
1078
1074
  }
1079
1075
  void dispatch(createIntent6(LayoutAction5.UpdatePopover, {
1080
1076
  part: "popover",
@@ -1117,13 +1113,13 @@ var PopoverRenameObject = ({ object: obj }) => {
1117
1113
  // src/components/PopoverRenameSpace.tsx
1118
1114
  import { useSignals as _useSignals13 } from "@preact-signals/safe-react/tracking";
1119
1115
  import React13, { useCallback as useCallback8, useRef as useRef5, useState as useState6 } from "react";
1120
- import { createIntent as createIntent7, LayoutAction as LayoutAction6, useIntentDispatcher as useIntentDispatcher7 } from "@dxos/app-framework";
1116
+ import { LayoutAction as LayoutAction6, createIntent as createIntent7, useIntentDispatcher as useIntentDispatcher7 } from "@dxos/app-framework";
1121
1117
  import { Button as Button6, Input as Input4, Popover, useTranslation as useTranslation12 } from "@dxos/react-ui";
1122
- var POPOVER_RENAME_SPACE = `${SPACE_PLUGIN}/PopoverRenameSpace`;
1118
+ var POPOVER_RENAME_SPACE = `${meta.id}/PopoverRenameSpace`;
1123
1119
  var PopoverRenameSpace = ({ space }) => {
1124
1120
  var _effect = _useSignals13();
1125
1121
  try {
1126
- const { t } = useTranslation12(SPACE_PLUGIN);
1122
+ const { t } = useTranslation12(meta.id);
1127
1123
  const doneButton = useRef5(null);
1128
1124
  const [name, setName] = useState6(space.properties.name ?? "");
1129
1125
  const { dispatchPromise: dispatch } = useIntentDispatcher7();
@@ -1172,9 +1168,9 @@ var PopoverRenameSpace = ({ space }) => {
1172
1168
 
1173
1169
  // src/components/SchemaContainer.tsx
1174
1170
  import { useSignals as _useSignals14 } from "@preact-signals/safe-react/tracking";
1175
- import React14, { useState as useState7, useEffect as useEffect3 } from "react";
1171
+ import React14, { useEffect as useEffect3, useState as useState7 } from "react";
1176
1172
  import { useTranslation as useTranslation13 } from "@dxos/react-ui";
1177
- import { controlItemClasses, ControlPage as ControlPage2, ControlSection as ControlSection2 } from "@dxos/react-ui-form";
1173
+ import { ControlPage as ControlPage2, ControlSection as ControlSection2, controlItemClasses } from "@dxos/react-ui-form";
1178
1174
  import { StackItem as StackItem3 } from "@dxos/react-ui-stack";
1179
1175
  var useQuerySpaceSchemas = (space) => {
1180
1176
  const [schemas, setSchemas] = useState7([]);
@@ -1192,10 +1188,10 @@ var useQuerySpaceSchemas = (space) => {
1192
1188
  var SchemaContainer = ({ space }) => {
1193
1189
  var _effect = _useSignals14();
1194
1190
  try {
1195
- const { t } = useTranslation13(SPACE_PLUGIN);
1191
+ const { t } = useTranslation13(meta.id);
1196
1192
  const schemas = useQuerySpaceSchemas(space);
1197
1193
  return /* @__PURE__ */ React14.createElement(StackItem3.Content, {
1198
- classNames: "block overflow-y-auto"
1194
+ scrollable: true
1199
1195
  }, /* @__PURE__ */ React14.createElement(ControlPage2, null, /* @__PURE__ */ React14.createElement(ControlSection2, {
1200
1196
  title: t("schema verbose label"),
1201
1197
  description: t("schema description")
@@ -1214,14 +1210,14 @@ var SchemaContainer = ({ space }) => {
1214
1210
 
1215
1211
  // src/components/SpacePresence.tsx
1216
1212
  import { useSignals as _useSignals15 } from "@preact-signals/safe-react/tracking";
1217
- import { Option } from "effect";
1213
+ import * as Option2 from "effect/Option";
1218
1214
  import React15, { forwardRef, useCallback as useCallback9, useEffect as useEffect4, useState as useState8 } from "react";
1219
1215
  import { useAppGraph as useAppGraph2, useCapability } from "@dxos/app-framework";
1220
1216
  import { generateName } from "@dxos/display-name";
1221
1217
  import { PublicKey, useClient as useClient5 } from "@dxos/react-client";
1222
- import { getSpace as getSpace3, useMembers, fullyQualifiedId as fullyQualifiedId3 } from "@dxos/react-client/echo";
1218
+ import { fullyQualifiedId as fullyQualifiedId3, getSpace as getSpace3, useMembers } from "@dxos/react-client/echo";
1223
1219
  import { useIdentity } from "@dxos/react-client/halo";
1224
- import { Avatar, Tooltip as Tooltip2, Popover as Popover2, useTranslation as useTranslation14, List, ListItem, useDefaultValue } from "@dxos/react-ui";
1220
+ import { Avatar, List, ListItem, Popover as Popover2, Tooltip as Tooltip2, useDefaultValue as useDefaultValue2, useTranslation as useTranslation14 } from "@dxos/react-ui";
1225
1221
  import { AttentionGlyph, useAttended, useAttention } from "@dxos/react-ui-attention";
1226
1222
  import { ComplexMap, keyToFallback } from "@dxos/util";
1227
1223
  var REFRESH_INTERVAL = 5e3;
@@ -1270,7 +1266,7 @@ var FullPresence = (props) => {
1270
1266
  var _effect = _useSignals15();
1271
1267
  try {
1272
1268
  const { size = 9, onMemberClick } = props;
1273
- const members = useDefaultValue(props.members, () => []);
1269
+ const members = useDefaultValue2(props.members, () => []);
1274
1270
  if (members.length === 0) {
1275
1271
  return null;
1276
1272
  }
@@ -1351,7 +1347,7 @@ var SmallPresenceLive = ({ id, open, viewers }) => {
1351
1347
  const attended = useAttended();
1352
1348
  const startOfAttention = attended.at(-1);
1353
1349
  const path = usePath(graph, startOfAttention);
1354
- const containsAttended = !open && !isAttended && id && Option.isSome(path) ? path.value.includes(id) : false;
1350
+ const containsAttended = !open && !isAttended && id && Option2.isSome(path) ? path.value.includes(id) : false;
1355
1351
  const getActiveViewers = (viewers2) => {
1356
1352
  const moment = Date.now();
1357
1353
  return Array.from(viewers2.values()).filter((viewer) => moment - viewer.lastSeen < ACTIVITY_DURATION);
@@ -1380,7 +1376,7 @@ var SmallPresenceLive = ({ id, open, viewers }) => {
1380
1376
  var SmallPresence = ({ count = 0, attended, containsAttended }) => {
1381
1377
  var _effect = _useSignals15();
1382
1378
  try {
1383
- const { t } = useTranslation14(SPACE_PLUGIN);
1379
+ const { t } = useTranslation14(meta.id);
1384
1380
  return /* @__PURE__ */ React15.createElement(Tooltip2.Trigger, {
1385
1381
  asChild: true,
1386
1382
  content: t("presence label", {
@@ -1404,12 +1400,12 @@ import React16 from "react";
1404
1400
  import { createIntent as createIntent8, useIntentDispatcher as useIntentDispatcher8 } from "@dxos/app-framework";
1405
1401
  import { useClient as useClient6 } from "@dxos/react-client";
1406
1402
  import { useSpaces as useSpaces2 } from "@dxos/react-client/echo";
1407
- import { Input as Input5, toLocalizedString as toLocalizedString3, useTranslation as useTranslation15, List as List2, ListItem as ListItem2, IconButton } from "@dxos/react-ui";
1408
- import { controlItemClasses as controlItemClasses2, ControlPage as ControlPage3, ControlSection as ControlSection3, DeprecatedFormInput } from "@dxos/react-ui-form";
1403
+ import { IconButton, Input as Input5, List as List2, ListItem as ListItem2, toLocalizedString as toLocalizedString3, useTranslation as useTranslation15 } from "@dxos/react-ui";
1404
+ import { ControlGroup, ControlItemInput as ControlItemInput2, ControlPage as ControlPage3, ControlSection as ControlSection3, controlItemClasses as controlItemClasses2 } from "@dxos/react-ui-form";
1409
1405
  var SpacePluginSettings = ({ settings }) => {
1410
1406
  var _effect = _useSignals16();
1411
1407
  try {
1412
- const { t } = useTranslation15(SPACE_PLUGIN);
1408
+ const { t } = useTranslation15(meta.id);
1413
1409
  const client = useClient6();
1414
1410
  const spaces = useSpaces2({
1415
1411
  all: settings.showHidden
@@ -1418,10 +1414,8 @@ var SpacePluginSettings = ({ settings }) => {
1418
1414
  return /* @__PURE__ */ React16.createElement(ControlPage3, null, /* @__PURE__ */ React16.createElement(ControlSection3, {
1419
1415
  title: t("space settings label"),
1420
1416
  description: t("space settings description")
1421
- }, /* @__PURE__ */ React16.createElement("div", {
1422
- className: "pli-trimMd container-max-width"
1423
- }, /* @__PURE__ */ React16.createElement(DeprecatedFormInput, {
1424
- label: t("show hidden spaces label")
1417
+ }, /* @__PURE__ */ React16.createElement(ControlGroup, null, /* @__PURE__ */ React16.createElement(ControlItemInput2, {
1418
+ title: t("show hidden spaces label")
1425
1419
  }, /* @__PURE__ */ React16.createElement(Input5.Switch, {
1426
1420
  checked: settings.showHidden,
1427
1421
  onCheckedChange: (checked) => settings.showHidden = !!checked
@@ -1451,15 +1445,16 @@ var SpacePluginSettings = ({ settings }) => {
1451
1445
 
1452
1446
  // src/components/SpaceSettings/SpaceSettingsContainer.tsx
1453
1447
  import { useSignals as _useSignals17 } from "@preact-signals/safe-react/tracking";
1454
- import { pipe as pipe2, Schema } from "effect";
1448
+ import * as Function2 from "effect/Function";
1449
+ import * as Schema from "effect/Schema";
1455
1450
  import React17, { useCallback as useCallback10, useMemo as useMemo3, useState as useState9 } from "react";
1456
- import { chain as chain2, createIntent as createIntent9, LayoutAction as LayoutAction7, useIntentDispatcher as useIntentDispatcher9 } from "@dxos/app-framework";
1451
+ import { LayoutAction as LayoutAction7, chain as chain2, createIntent as createIntent9, useIntentDispatcher as useIntentDispatcher9 } from "@dxos/app-framework";
1457
1452
  import { log as log3 } from "@dxos/log";
1458
1453
  import { EdgeReplicationSetting } from "@dxos/protocols/proto/dxos/echo/metadata";
1459
1454
  import { useClient as useClient7 } from "@dxos/react-client";
1460
1455
  import { SpaceState as SpaceState2 } from "@dxos/react-client/echo";
1461
1456
  import { Button as Button7, Input as Input6, useMulticastObservable, useTranslation as useTranslation16 } from "@dxos/react-ui";
1462
- import { Form as Form3, ControlItem, ControlItemInput as ControlItemInput2, ControlSection as ControlSection4, ControlPage as ControlPage4 } from "@dxos/react-ui-form";
1457
+ import { ControlItem, ControlItemInput as ControlItemInput3, ControlPage as ControlPage4, ControlSection as ControlSection4, Form as Form3 } from "@dxos/react-ui-form";
1463
1458
  import { HuePicker, IconPicker } from "@dxos/react-ui-pickers";
1464
1459
  import { StackItem as StackItem4 } from "@dxos/react-ui-stack";
1465
1460
  var __dxlog_file4 = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/SpaceSettings/SpaceSettingsContainer.tsx";
@@ -1471,7 +1466,7 @@ var FormSchema = SpaceForm.pipe(Schema.extend(Schema.Struct({
1471
1466
  var SpaceSettingsContainer = ({ space }) => {
1472
1467
  var _effect = _useSignals17();
1473
1468
  try {
1474
- const { t } = useTranslation16(SPACE_PLUGIN);
1469
+ const { t } = useTranslation16(meta.id);
1475
1470
  const { dispatchPromise: dispatch } = useIntentDispatcher9();
1476
1471
  const client = useClient7();
1477
1472
  const archived = useMulticastObservable(space.state) === SpaceState2.SPACE_INACTIVE;
@@ -1481,7 +1476,7 @@ var SpaceSettingsContainer = ({ space }) => {
1481
1476
  await space?.internal.setEdgeReplicationPreference(next ? EdgeReplicationSetting.ENABLED : EdgeReplicationSetting.DISABLED).catch((err) => {
1482
1477
  log3.catch(err, void 0, {
1483
1478
  F: __dxlog_file4,
1484
- L: 51,
1479
+ L: 52,
1485
1480
  S: void 0,
1486
1481
  C: (f, a) => f(...a)
1487
1482
  });
@@ -1502,7 +1497,7 @@ var SpaceSettingsContainer = ({ space }) => {
1502
1497
  space.properties.hue = properties.hue;
1503
1498
  }
1504
1499
  if (properties.archived && !archived) {
1505
- void dispatch(pipe2(createIntent9(SpaceAction.Close, {
1500
+ void dispatch(Function2.pipe(createIntent9(SpaceAction.Close, {
1506
1501
  space
1507
1502
  }), chain2(LayoutAction7.SwitchWorkspace, {
1508
1503
  part: "workspace",
@@ -1537,7 +1532,7 @@ var SpaceSettingsContainer = ({ space }) => {
1537
1532
  onValueChange,
1538
1533
  type
1539
1534
  ]);
1540
- return /* @__PURE__ */ React17.createElement(ControlItemInput2, {
1535
+ return /* @__PURE__ */ React17.createElement(ControlItemInput3, {
1541
1536
  title: label,
1542
1537
  description: t("display name description")
1543
1538
  }, /* @__PURE__ */ React17.createElement(Input6.TextInput, {
@@ -1548,11 +1543,11 @@ var SpaceSettingsContainer = ({ space }) => {
1548
1543
  }));
1549
1544
  },
1550
1545
  icon: ({ type, label, getValue, onValueChange }) => {
1551
- const handleChange = useCallback10((nextEmoji) => onValueChange(type, nextEmoji), [
1546
+ const handleChange = useCallback10((icon) => onValueChange(type, icon), [
1552
1547
  onValueChange,
1553
1548
  type
1554
1549
  ]);
1555
- const handleEmojiReset = useCallback10(() => onValueChange(type, void 0), [
1550
+ const handleReset = useCallback10(() => onValueChange(type, void 0), [
1556
1551
  onValueChange,
1557
1552
  type
1558
1553
  ]);
@@ -1562,7 +1557,7 @@ var SpaceSettingsContainer = ({ space }) => {
1562
1557
  }, /* @__PURE__ */ React17.createElement(IconPicker, {
1563
1558
  value: getValue(),
1564
1559
  onChange: handleChange,
1565
- onReset: handleEmojiReset,
1560
+ onReset: handleReset,
1566
1561
  classNames: "justify-self-end",
1567
1562
  iconSize: 5
1568
1563
  }));
@@ -1572,7 +1567,7 @@ var SpaceSettingsContainer = ({ space }) => {
1572
1567
  onValueChange,
1573
1568
  type
1574
1569
  ]);
1575
- const handleHueReset = useCallback10(() => onValueChange(type, void 0), [
1570
+ const handleReset = useCallback10(() => onValueChange(type, void 0), [
1576
1571
  onValueChange,
1577
1572
  type
1578
1573
  ]);
@@ -1582,7 +1577,7 @@ var SpaceSettingsContainer = ({ space }) => {
1582
1577
  }, /* @__PURE__ */ React17.createElement(HuePicker, {
1583
1578
  value: getValue(),
1584
1579
  onChange: handleChange,
1585
- onReset: handleHueReset,
1580
+ onReset: handleReset,
1586
1581
  classNames: "[--hue-preview-size:1.25rem] justify-self-end"
1587
1582
  }));
1588
1583
  },
@@ -1591,7 +1586,7 @@ var SpaceSettingsContainer = ({ space }) => {
1591
1586
  onValueChange,
1592
1587
  type
1593
1588
  ]);
1594
- return /* @__PURE__ */ React17.createElement(ControlItemInput2, {
1589
+ return /* @__PURE__ */ React17.createElement(ControlItemInput3, {
1595
1590
  title: label,
1596
1591
  description: t("edge replication description")
1597
1592
  }, /* @__PURE__ */ React17.createElement(Input6.Switch, {
@@ -1606,7 +1601,7 @@ var SpaceSettingsContainer = ({ space }) => {
1606
1601
  type,
1607
1602
  getValue
1608
1603
  ]);
1609
- return /* @__PURE__ */ React17.createElement(ControlItemInput2, {
1604
+ return /* @__PURE__ */ React17.createElement(ControlItemInput3, {
1610
1605
  title: label,
1611
1606
  description: t("archive space description")
1612
1607
  }, /* @__PURE__ */ React17.createElement(Button7, {
@@ -1619,13 +1614,13 @@ var SpaceSettingsContainer = ({ space }) => {
1619
1614
  space
1620
1615
  ]);
1621
1616
  return /* @__PURE__ */ React17.createElement(StackItem4.Content, {
1622
- classNames: "block overflow-y-auto pli-2"
1617
+ scrollable: true
1623
1618
  }, /* @__PURE__ */ React17.createElement(ControlPage4, null, /* @__PURE__ */ React17.createElement(ControlSection4, {
1624
1619
  title: t("space properties settings verbose label", {
1625
- ns: SPACE_PLUGIN
1620
+ ns: meta.id
1626
1621
  }),
1627
1622
  description: t("space properties settings description", {
1628
- ns: SPACE_PLUGIN
1623
+ ns: meta.id
1629
1624
  })
1630
1625
  }, /* @__PURE__ */ React17.createElement(Form3, {
1631
1626
  schema: FormSchema,
@@ -1634,7 +1629,7 @@ var SpaceSettingsContainer = ({ space }) => {
1634
1629
  onSave: handleSave,
1635
1630
  Custom: customElements,
1636
1631
  outerSpacing: false,
1637
- classNames: "container-max-width grid grid-cols-1 md:grid-cols-[1fr_min-content] gap-4"
1632
+ classNames: "container-max-width grid grid-cols-1 md:grid-cols-[1fr_min-content]"
1638
1633
  }))));
1639
1634
  } finally {
1640
1635
  _effect.f();
@@ -1643,7 +1638,7 @@ var SpaceSettingsContainer = ({ space }) => {
1643
1638
 
1644
1639
  // src/components/SyncStatus/InlineSyncStatus.tsx
1645
1640
  import { useSignals as _useSignals18 } from "@preact-signals/safe-react/tracking";
1646
- import { Option as Option2 } from "effect";
1641
+ import * as Option3 from "effect/Option";
1647
1642
  import React18, { useEffect as useEffect5, useState as useState10 } from "react";
1648
1643
  import { useAppGraph as useAppGraph3 } from "@dxos/app-framework";
1649
1644
  import { EdgeStatus } from "@dxos/protocols/proto/dxos/client/services";
@@ -1667,7 +1662,7 @@ var useEdgeStatus = () => {
1667
1662
  var InlineSyncStatus = ({ space, open }) => {
1668
1663
  var _effect = _useSignals18();
1669
1664
  try {
1670
- const { t } = useTranslation17(SPACE_PLUGIN);
1665
+ const { t } = useTranslation17(meta.id);
1671
1666
  const id = space.id;
1672
1667
  const { hasAttention, isAncestor, isRelated } = useAttention2(id);
1673
1668
  const isAttended = hasAttention || isAncestor || isRelated;
@@ -1675,7 +1670,7 @@ var InlineSyncStatus = ({ space, open }) => {
1675
1670
  const attended = useAttended2();
1676
1671
  const startOfAttention = attended.at(-1);
1677
1672
  const path = usePath(graph, startOfAttention);
1678
- const containsAttended = !open && !isAttended && id && Option2.isSome(path) ? path.value.includes(id) : false;
1673
+ const containsAttended = !open && !isAttended && id && Option3.isSome(path) ? path.value.includes(id) : false;
1679
1674
  const connectedToEdge = useEdgeStatus() === EdgeStatus.CONNECTED;
1680
1675
  const edgeSyncEnabled = space.internal.data.edgeReplication === EdgeReplicationSetting2.ENABLED;
1681
1676
  const syncState = useSpaceSyncState(space);
@@ -1818,7 +1813,7 @@ var SyncStatus = () => {
1818
1813
  var SyncStatusIndicator = ({ state, saved }) => {
1819
1814
  var _effect = _useSignals19();
1820
1815
  try {
1821
- const { t } = useTranslation18(SPACE_PLUGIN);
1816
+ const { t } = useTranslation18(meta.id);
1822
1817
  const summary = getSyncSummary(state);
1823
1818
  const offline = Object.values(state).length === 0;
1824
1819
  const needsToUpload = summary.differentDocuments > 0 || summary.missingOnRemote > 0;
@@ -1860,14 +1855,14 @@ var SyncStatusIndicator = ({ state, saved }) => {
1860
1855
 
1861
1856
  // src/components/ViewEditor.tsx
1862
1857
  import { useSignals as _useSignals20 } from "@preact-signals/safe-react/tracking";
1863
- import React20, { useCallback as useCallback11, useMemo as useMemo4 } from "react";
1858
+ import React20, { useCallback as useCallback11 } from "react";
1864
1859
  import { createIntent as createIntent10, useIntentDispatcher as useIntentDispatcher10 } from "@dxos/app-framework";
1865
- import { Type as Type3 } from "@dxos/echo";
1860
+ import { Filter as Filter2, Query as Query2, Type as Type3 } from "@dxos/echo";
1866
1861
  import { invariant as invariant2 } from "@dxos/invariant";
1867
1862
  import { useClient as useClient10 } from "@dxos/react-client";
1868
- import { Filter as Filter2, getSpace as getSpace4, useQuery as useQuery3, useSchema } from "@dxos/react-client/echo";
1869
- import { ViewEditor as NativeViewEditor } from "@dxos/react-ui-form";
1870
- import { DataType as DataType3 } from "@dxos/schema";
1863
+ import { getSpace as getSpace4, useSchema } from "@dxos/react-client/echo";
1864
+ import { ViewEditor as NaturalViewEditor } from "@dxos/react-ui-form";
1865
+ import { getTypenameFromQuery as getTypenameFromQuery2 } from "@dxos/schema";
1871
1866
  var __dxlog_file6 = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/ViewEditor.tsx";
1872
1867
  var ViewEditor = ({ view }) => {
1873
1868
  var _effect = _useSignals20();
@@ -1875,15 +1870,12 @@ var ViewEditor = ({ view }) => {
1875
1870
  const { dispatchPromise: dispatch } = useIntentDispatcher10();
1876
1871
  const client = useClient10();
1877
1872
  const space = getSpace4(view);
1878
- const schema = useSchema(client, space, view.query.typename);
1879
- const views = useQuery3(space, Filter2.type(DataType3.View));
1880
- const currentTypename = useMemo4(() => view.query?.typename, [
1881
- view.query?.typename
1882
- ]);
1883
- const handleUpdateTypename = useCallback11((typename) => {
1873
+ const typename = view.query ? getTypenameFromQuery2(view.query.ast) : void 0;
1874
+ const schema = useSchema(client, space, typename);
1875
+ const handleUpdateQuery = useCallback11((typename2) => {
1884
1876
  invariant2(schema, void 0, {
1885
1877
  F: __dxlog_file6,
1886
- L: 30,
1878
+ L: 28,
1887
1879
  S: void 0,
1888
1880
  A: [
1889
1881
  "schema",
@@ -1892,20 +1884,18 @@ var ViewEditor = ({ view }) => {
1892
1884
  });
1893
1885
  invariant2(Type3.isMutable(schema), void 0, {
1894
1886
  F: __dxlog_file6,
1895
- L: 31,
1887
+ L: 29,
1896
1888
  S: void 0,
1897
1889
  A: [
1898
1890
  "Type.isMutable(schema)",
1899
1891
  ""
1900
1892
  ]
1901
1893
  });
1902
- const matchingViews = views.filter((view2) => view2.query.typename === currentTypename);
1903
- for (const view2 of matchingViews) {
1904
- view2.query.typename = typename;
1905
- }
1906
- schema.updateTypename(typename);
1894
+ const newQuery = Query2.select(Filter2.typename(typename2));
1895
+ view.query.ast = newQuery.ast;
1896
+ schema.updateTypename(typename2);
1907
1897
  }, [
1908
- views,
1898
+ view,
1909
1899
  schema
1910
1900
  ]);
1911
1901
  const handleDelete = useCallback11((fieldId) => {
@@ -1920,11 +1910,11 @@ var ViewEditor = ({ view }) => {
1920
1910
  if (!space || !schema) {
1921
1911
  return null;
1922
1912
  }
1923
- return /* @__PURE__ */ React20.createElement(NativeViewEditor, {
1913
+ return /* @__PURE__ */ React20.createElement(NaturalViewEditor, {
1924
1914
  registry: space.db.schemaRegistry,
1925
1915
  schema,
1926
1916
  view,
1927
- onTypenameChanged: Type3.isMutable(schema) ? handleUpdateTypename : void 0,
1917
+ onQueryChanged: Type3.isMutable(schema) ? handleUpdateQuery : void 0,
1928
1918
  onDelete: Type3.isMutable(schema) ? handleDelete : void 0,
1929
1919
  outerSpacing: false
1930
1920
  });
@@ -1935,8 +1925,9 @@ var ViewEditor = ({ view }) => {
1935
1925
 
1936
1926
  // src/components/index.ts
1937
1927
  import { lazy as lazy2 } from "react";
1938
- var CollectionMain = lazy2(() => import("./CollectionMain-D2B75XBS.mjs"));
1939
- var ObjectDetailsPanel = lazy2(() => import("./ObjectDetailsPanel-YPTDQKMG.mjs"));
1928
+ var CollectionMain = lazy2(() => import("./CollectionMain-AX7KKXWP.mjs"));
1929
+ var ObjectDetailsPanel = lazy2(() => import("./ObjectDetailsPanel-SJ4XUXXX.mjs"));
1930
+ var RecordMain = lazy2(() => import("./RecordMain-FHPCS6GM.mjs"));
1940
1931
 
1941
1932
  export {
1942
1933
  AwaitingObject,
@@ -1969,6 +1960,7 @@ export {
1969
1960
  ViewEditor,
1970
1961
  CollectionMain,
1971
1962
  ObjectDetailsPanel,
1963
+ RecordMain,
1972
1964
  AppGraphBuilder,
1973
1965
  AppGraphSerializer,
1974
1966
  IdentityCreated,
@@ -1976,9 +1968,8 @@ export {
1976
1968
  ReactRoot,
1977
1969
  ReactSurface,
1978
1970
  SchemaDefs,
1979
- SchemaTools,
1980
1971
  SpaceSettings,
1981
1972
  SpaceState,
1982
1973
  SpacesReady
1983
1974
  };
1984
- //# sourceMappingURL=chunk-V7MJSSBQ.mjs.map
1975
+ //# sourceMappingURL=chunk-6KVKMOGQ.mjs.map