@dxos/plugin-space 0.8.4-main.67995b8 → 0.8.4-main.72ec0f3

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 (363) hide show
  1. package/dist/lib/browser/{CollectionMain-D2B75XBS.mjs → CollectionArticle-WTHWY4YS.mjs} +10 -10
  2. package/dist/lib/browser/CollectionArticle-WTHWY4YS.mjs.map +7 -0
  3. package/dist/lib/browser/ObjectDetailsPanel-2BRUBHP6.mjs +141 -0
  4. package/dist/lib/browser/ObjectDetailsPanel-2BRUBHP6.mjs.map +7 -0
  5. package/dist/lib/browser/ObjectSettings-5LLWCVEK.mjs +144 -0
  6. package/dist/lib/browser/ObjectSettings-5LLWCVEK.mjs.map +7 -0
  7. package/dist/lib/browser/RecordArticle-SXDRWTTU.mjs +116 -0
  8. package/dist/lib/browser/RecordArticle-SXDRWTTU.mjs.map +7 -0
  9. package/dist/lib/browser/{app-graph-builder-V3MP3CDK.mjs → app-graph-builder-VQAB3GCQ.mjs} +138 -90
  10. package/dist/lib/browser/app-graph-builder-VQAB3GCQ.mjs.map +7 -0
  11. package/dist/lib/browser/{app-graph-serializer-H6AW7KGS.mjs → app-graph-serializer-KSLKMEPP.mjs} +19 -19
  12. package/dist/lib/browser/app-graph-serializer-KSLKMEPP.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-XUYKJUU7.mjs → chunk-ERQMHU7L.mjs} +124 -63
  14. package/dist/lib/browser/chunk-ERQMHU7L.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-FBJEXW54.mjs → chunk-J2BUK5E6.mjs} +587 -513
  16. package/dist/lib/browser/chunk-J2BUK5E6.mjs.map +7 -0
  17. package/dist/lib/browser/chunk-K5J7ZB5P.mjs +20 -0
  18. package/dist/lib/browser/chunk-K5J7ZB5P.mjs.map +7 -0
  19. package/dist/lib/browser/{chunk-SGTQ52SU.mjs → chunk-M2Z6D4ZI.mjs} +32 -21
  20. package/dist/lib/browser/chunk-M2Z6D4ZI.mjs.map +7 -0
  21. package/dist/lib/browser/{chunk-QACNNDOT.mjs → chunk-OLBBSOVI.mjs} +30 -17
  22. package/dist/lib/browser/chunk-OLBBSOVI.mjs.map +7 -0
  23. package/dist/lib/browser/chunk-PU5IOFMG.mjs +167 -0
  24. package/dist/lib/browser/chunk-PU5IOFMG.mjs.map +7 -0
  25. package/dist/lib/browser/chunk-VZBIIYFM.mjs +16 -0
  26. package/dist/lib/browser/chunk-VZBIIYFM.mjs.map +7 -0
  27. package/dist/lib/browser/chunk-WJXU4GKV.mjs +19 -0
  28. package/dist/lib/browser/chunk-WJXU4GKV.mjs.map +7 -0
  29. package/dist/lib/browser/{identity-created-23XJJV2N.mjs → identity-created-NAXTPQXE.mjs} +6 -6
  30. package/dist/lib/browser/identity-created-NAXTPQXE.mjs.map +7 -0
  31. package/dist/lib/browser/index.mjs +91 -91
  32. package/dist/lib/browser/index.mjs.map +3 -3
  33. package/dist/lib/browser/{intent-resolver-XHGD73WZ.mjs → intent-resolver-Q2XWHAVA.mjs} +87 -85
  34. package/dist/lib/browser/intent-resolver-Q2XWHAVA.mjs.map +7 -0
  35. package/dist/lib/browser/meta.json +1 -1
  36. package/dist/lib/browser/react-root-MM4HADPE.mjs +30 -0
  37. package/dist/lib/browser/react-root-MM4HADPE.mjs.map +7 -0
  38. package/dist/lib/browser/{react-surface-YWZZQF7H.mjs → react-surface-SGZC3Y4U.mjs} +81 -105
  39. package/dist/lib/browser/react-surface-SGZC3Y4U.mjs.map +7 -0
  40. package/dist/lib/browser/{schema-defs-Z6FC4AHC.mjs → schema-defs-QPI2JU3X.mjs} +6 -6
  41. package/dist/lib/browser/schema-defs-QPI2JU3X.mjs.map +7 -0
  42. package/dist/lib/browser/{settings-4IMP5RYT.mjs → settings-WKLGKUHQ.mjs} +5 -5
  43. package/dist/lib/browser/{settings-4IMP5RYT.mjs.map → settings-WKLGKUHQ.mjs.map} +1 -1
  44. package/dist/lib/browser/{spaces-ready-TOPG6IV4.mjs → spaces-ready-C5QC2UFL.mjs} +21 -18
  45. package/dist/lib/browser/spaces-ready-C5QC2UFL.mjs.map +7 -0
  46. package/dist/lib/browser/{state-QYZAB45H.mjs → state-Q7YRE5KG.mjs} +7 -7
  47. package/dist/lib/browser/state-Q7YRE5KG.mjs.map +7 -0
  48. package/dist/lib/browser/types/index.mjs +2 -2
  49. package/dist/lib/node-esm/{CollectionMain-ZJIFCWKZ.mjs → CollectionArticle-KHXYT3SH.mjs} +10 -10
  50. package/dist/lib/node-esm/CollectionArticle-KHXYT3SH.mjs.map +7 -0
  51. package/dist/lib/node-esm/ObjectDetailsPanel-6PZQIQG3.mjs +142 -0
  52. package/dist/lib/node-esm/ObjectDetailsPanel-6PZQIQG3.mjs.map +7 -0
  53. package/dist/lib/node-esm/ObjectSettings-OQSBOH7K.mjs +145 -0
  54. package/dist/lib/node-esm/ObjectSettings-OQSBOH7K.mjs.map +7 -0
  55. package/dist/lib/node-esm/RecordArticle-NACBH42P.mjs +117 -0
  56. package/dist/lib/node-esm/RecordArticle-NACBH42P.mjs.map +7 -0
  57. package/dist/lib/node-esm/{app-graph-builder-SG4VECBB.mjs → app-graph-builder-24JCLJPX.mjs} +138 -90
  58. package/dist/lib/node-esm/app-graph-builder-24JCLJPX.mjs.map +7 -0
  59. package/dist/lib/node-esm/{app-graph-serializer-2ICUGQQT.mjs → app-graph-serializer-R723K764.mjs} +19 -19
  60. package/dist/lib/node-esm/app-graph-serializer-R723K764.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-JH6F4C3I.mjs → chunk-2PN7QNGV.mjs} +32 -21
  62. package/dist/lib/node-esm/chunk-2PN7QNGV.mjs.map +7 -0
  63. package/dist/lib/node-esm/chunk-BDEFTL6K.mjs +18 -0
  64. package/dist/lib/node-esm/chunk-BDEFTL6K.mjs.map +7 -0
  65. package/dist/lib/node-esm/chunk-H4JILUJK.mjs +20 -0
  66. package/dist/lib/node-esm/chunk-H4JILUJK.mjs.map +7 -0
  67. package/dist/lib/node-esm/{chunk-2A3VBXBP.mjs → chunk-ITQFSFQ3.mjs} +587 -513
  68. package/dist/lib/node-esm/chunk-ITQFSFQ3.mjs.map +7 -0
  69. package/dist/lib/node-esm/chunk-TJPQDQNI.mjs +168 -0
  70. package/dist/lib/node-esm/chunk-TJPQDQNI.mjs.map +7 -0
  71. package/dist/lib/node-esm/{chunk-4AOMYKDE.mjs → chunk-VH2EBZEV.mjs} +124 -63
  72. package/dist/lib/node-esm/chunk-VH2EBZEV.mjs.map +7 -0
  73. package/dist/lib/node-esm/{chunk-P442DOQ3.mjs → chunk-WC4VBFMA.mjs} +30 -17
  74. package/dist/lib/node-esm/chunk-WC4VBFMA.mjs.map +7 -0
  75. package/dist/lib/node-esm/chunk-Z7BB6HC2.mjs +21 -0
  76. package/dist/lib/node-esm/chunk-Z7BB6HC2.mjs.map +7 -0
  77. package/dist/lib/node-esm/{identity-created-IJQO6GCR.mjs → identity-created-OXLKCJE3.mjs} +6 -6
  78. package/dist/lib/node-esm/identity-created-OXLKCJE3.mjs.map +7 -0
  79. package/dist/lib/node-esm/index.mjs +91 -91
  80. package/dist/lib/node-esm/index.mjs.map +3 -3
  81. package/dist/lib/node-esm/{intent-resolver-LEANKSKZ.mjs → intent-resolver-YK4ESSET.mjs} +87 -85
  82. package/dist/lib/node-esm/intent-resolver-YK4ESSET.mjs.map +7 -0
  83. package/dist/lib/node-esm/meta.json +1 -1
  84. package/dist/lib/node-esm/{react-root-5Y7LJRX6.mjs → react-root-5ANDLQMX.mjs} +13 -12
  85. package/dist/lib/node-esm/react-root-5ANDLQMX.mjs.map +7 -0
  86. package/dist/lib/node-esm/{react-surface-YQFNIKYT.mjs → react-surface-V7J2QB44.mjs} +81 -105
  87. package/dist/lib/node-esm/react-surface-V7J2QB44.mjs.map +7 -0
  88. package/dist/lib/node-esm/{schema-defs-WHJM7UZE.mjs → schema-defs-ZS2D47XW.mjs} +6 -6
  89. package/dist/lib/node-esm/schema-defs-ZS2D47XW.mjs.map +7 -0
  90. package/dist/lib/node-esm/{settings-SAOBPND3.mjs → settings-RBB5633M.mjs} +5 -5
  91. package/dist/lib/node-esm/{settings-SAOBPND3.mjs.map → settings-RBB5633M.mjs.map} +1 -1
  92. package/dist/lib/node-esm/{spaces-ready-HIUKNDZK.mjs → spaces-ready-SJCXV6YH.mjs} +21 -18
  93. package/dist/lib/node-esm/spaces-ready-SJCXV6YH.mjs.map +7 -0
  94. package/dist/lib/node-esm/{state-ZVEHQ4BJ.mjs → state-362I5BMK.mjs} +7 -7
  95. package/dist/lib/node-esm/state-362I5BMK.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 +1 -1
  100. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  101. package/dist/types/src/capabilities/app-graph-serializer.d.ts +1 -1
  102. package/dist/types/src/capabilities/capabilities.d.ts +7 -6
  103. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  104. package/dist/types/src/capabilities/identity-created.d.ts +1 -1
  105. package/dist/types/src/capabilities/identity-created.d.ts.map +1 -1
  106. package/dist/types/src/capabilities/index.d.ts +11 -12
  107. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  108. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -1
  109. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/react-root.d.ts +2 -2
  111. package/dist/types/src/capabilities/react-root.d.ts.map +1 -1
  112. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  113. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  114. package/dist/types/src/capabilities/schema-defs.d.ts +1 -1
  115. package/dist/types/src/capabilities/schema-defs.d.ts.map +1 -1
  116. package/dist/types/src/capabilities/settings.d.ts +1 -1
  117. package/dist/types/src/capabilities/spaces-ready.d.ts +1 -1
  118. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  119. package/dist/types/src/capabilities/state.d.ts +1 -1
  120. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  121. package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
  122. package/dist/types/src/components/CollectionArticle.d.ts +6 -0
  123. package/dist/types/src/components/CollectionArticle.d.ts.map +1 -0
  124. package/dist/types/src/components/CollectionSection.d.ts +3 -4
  125. package/dist/types/src/components/CollectionSection.d.ts.map +1 -1
  126. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +3 -3
  127. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  128. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +1694 -4
  129. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  130. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +7 -5
  131. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  132. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts +1 -1
  133. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
  134. package/dist/types/src/components/{JoinDialog.d.ts → JoinDialog/JoinDialog.d.ts} +1 -1
  135. package/dist/types/src/components/JoinDialog/JoinDialog.d.ts.map +1 -0
  136. package/dist/types/src/components/JoinDialog/index.d.ts +2 -0
  137. package/dist/types/src/components/JoinDialog/index.d.ts.map +1 -0
  138. package/dist/types/src/components/{MembersContainer.d.ts → MembersContainer/MembersContainer.d.ts} +3 -2
  139. package/dist/types/src/components/MembersContainer/MembersContainer.d.ts.map +1 -0
  140. package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts +1697 -0
  141. package/dist/types/src/components/MembersContainer/MembersContainer.stories.d.ts.map +1 -0
  142. package/dist/types/src/components/MembersContainer/index.d.ts +2 -0
  143. package/dist/types/src/components/MembersContainer/index.d.ts.map +1 -0
  144. package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts +9 -0
  145. package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts.map +1 -0
  146. package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts +10 -0
  147. package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts.map +1 -0
  148. package/dist/types/src/components/ObjectDetailsPanel/index.d.ts +3 -0
  149. package/dist/types/src/components/ObjectDetailsPanel/index.d.ts.map +1 -0
  150. package/dist/types/src/components/ObjectRenamePopover/ObjectRenamePopover.d.ts +7 -0
  151. package/dist/types/src/components/ObjectRenamePopover/ObjectRenamePopover.d.ts.map +1 -0
  152. package/dist/types/src/components/ObjectRenamePopover/index.d.ts +2 -0
  153. package/dist/types/src/components/ObjectRenamePopover/index.d.ts.map +1 -0
  154. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +1 -1
  155. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts +2 -2
  156. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +1 -1
  157. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts +1530 -0
  158. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts.map +1 -0
  159. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts +1 -1
  160. package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts.map +1 -1
  161. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts.map +1 -1
  162. package/dist/types/src/components/ObjectSettings/index.d.ts +2 -1
  163. package/dist/types/src/components/ObjectSettings/index.d.ts.map +1 -1
  164. package/dist/types/src/components/RecordArticle.d.ts +5 -0
  165. package/dist/types/src/components/RecordArticle.d.ts.map +1 -0
  166. package/dist/types/src/components/RecordArticle.stories.d.ts +1697 -0
  167. package/dist/types/src/components/RecordArticle.stories.d.ts.map +1 -0
  168. package/dist/types/src/components/SchemaContainer.d.ts +1 -1
  169. package/dist/types/src/components/SchemaContainer.d.ts.map +1 -1
  170. package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
  171. package/dist/types/src/components/{SpacePresence.d.ts → SpacePresence/SpacePresence.d.ts} +4 -3
  172. package/dist/types/src/components/SpacePresence/SpacePresence.d.ts.map +1 -0
  173. package/dist/types/src/components/SpacePresence/SpacePresence.stories.d.ts +1527 -0
  174. package/dist/types/src/components/SpacePresence/SpacePresence.stories.d.ts.map +1 -0
  175. package/dist/types/src/components/SpacePresence/index.d.ts +2 -0
  176. package/dist/types/src/components/SpacePresence/index.d.ts.map +1 -0
  177. package/dist/types/src/components/SpaceRenamePopover/SpaceRenamePopover.d.ts +7 -0
  178. package/dist/types/src/components/SpaceRenamePopover/SpaceRenamePopover.d.ts.map +1 -0
  179. package/dist/types/src/components/SpaceRenamePopover/index.d.ts +2 -0
  180. package/dist/types/src/components/SpaceRenamePopover/index.d.ts.map +1 -0
  181. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  182. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +1527 -4
  183. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
  184. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
  185. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +1528 -5
  186. package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
  187. package/dist/types/src/components/ViewEditor.d.ts +3 -4
  188. package/dist/types/src/components/ViewEditor.d.ts.map +1 -1
  189. package/dist/types/src/components/index.d.ts +10 -11
  190. package/dist/types/src/components/index.d.ts.map +1 -1
  191. package/dist/types/src/events.d.ts.map +1 -1
  192. package/dist/types/src/helpers/index.d.ts +2 -0
  193. package/dist/types/src/helpers/index.d.ts.map +1 -0
  194. package/dist/types/src/helpers/query.d.ts +8 -0
  195. package/dist/types/src/helpers/query.d.ts.map +1 -0
  196. package/dist/types/src/helpers/query.test.d.ts +2 -0
  197. package/dist/types/src/helpers/query.test.d.ts.map +1 -0
  198. package/dist/types/src/hooks/index.d.ts +1 -0
  199. package/dist/types/src/hooks/index.d.ts.map +1 -1
  200. package/dist/types/src/hooks/useActiveSpace.d.ts.map +1 -1
  201. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts +1 -1
  202. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
  203. package/dist/types/src/hooks/usePath.d.ts +1 -1
  204. package/dist/types/src/hooks/usePath.d.ts.map +1 -1
  205. package/dist/types/src/hooks/useTypeOptions.d.ts +10 -0
  206. package/dist/types/src/hooks/useTypeOptions.d.ts.map +1 -0
  207. package/dist/types/src/index.d.ts +1 -0
  208. package/dist/types/src/index.d.ts.map +1 -1
  209. package/dist/types/src/meta.d.ts +0 -1
  210. package/dist/types/src/meta.d.ts.map +1 -1
  211. package/dist/types/src/translations.d.ts +1326 -26
  212. package/dist/types/src/translations.d.ts.map +1 -1
  213. package/dist/types/src/types/types.d.ts +78 -96
  214. package/dist/types/src/types/types.d.ts.map +1 -1
  215. package/dist/types/src/util.d.ts +16 -11
  216. package/dist/types/src/util.d.ts.map +1 -1
  217. package/dist/types/tsconfig.tsbuildinfo +1 -1
  218. package/package.json +68 -63
  219. package/src/SpacePlugin.ts +230 -220
  220. package/src/capabilities/app-graph-builder.ts +214 -133
  221. package/src/capabilities/app-graph-serializer.ts +12 -12
  222. package/src/capabilities/capabilities.ts +19 -13
  223. package/src/capabilities/identity-created.ts +3 -3
  224. package/src/capabilities/index.ts +0 -1
  225. package/src/capabilities/intent-resolver.ts +81 -65
  226. package/src/capabilities/react-root.tsx +6 -4
  227. package/src/capabilities/react-surface.tsx +78 -145
  228. package/src/capabilities/schema-defs.ts +4 -3
  229. package/src/capabilities/spaces-ready.ts +16 -10
  230. package/src/capabilities/state.ts +5 -4
  231. package/src/components/AwaitingObject.tsx +12 -14
  232. package/src/components/{CollectionMain.tsx → CollectionArticle.tsx} +7 -6
  233. package/src/components/CollectionSection.tsx +8 -6
  234. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +17 -16
  235. package/src/components/CreateDialog/CreateObjectDialog.tsx +51 -33
  236. package/src/components/CreateDialog/CreateObjectPanel.tsx +24 -13
  237. package/src/components/CreateDialog/CreateSpaceDialog.tsx +30 -11
  238. package/src/components/{JoinDialog.tsx → JoinDialog/JoinDialog.tsx} +26 -10
  239. package/src/components/JoinDialog/index.ts +5 -0
  240. package/src/components/MembersContainer/MembersContainer.stories.tsx +56 -0
  241. package/src/components/{MembersContainer.tsx → MembersContainer/MembersContainer.tsx} +22 -21
  242. package/src/components/MembersContainer/index.ts +5 -0
  243. package/src/components/MenuFooter.tsx +2 -2
  244. package/src/components/ObjectDetailsPanel/ObjectDetailsPanel.tsx +51 -0
  245. package/src/components/ObjectDetailsPanel/ObjectForm.tsx +72 -0
  246. package/src/components/ObjectDetailsPanel/index.ts +7 -0
  247. package/src/components/{PopoverRenameObject.tsx → ObjectRenamePopover/ObjectRenamePopover.tsx} +10 -16
  248. package/src/components/ObjectRenamePopover/index.ts +5 -0
  249. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +4 -3
  250. package/src/components/ObjectSettings/BaseObjectSettings.stories.tsx +63 -0
  251. package/src/components/ObjectSettings/BaseObjectSettings.tsx +90 -26
  252. package/src/components/ObjectSettings/ForeignKeys.tsx +4 -4
  253. package/src/components/ObjectSettings/ObjectSettingsContainer.tsx +4 -3
  254. package/src/components/ObjectSettings/index.ts +3 -1
  255. package/src/components/RecordArticle.stories.tsx +115 -0
  256. package/src/components/RecordArticle.tsx +114 -0
  257. package/src/components/SchemaContainer.tsx +25 -28
  258. package/src/components/SpacePluginSettings.tsx +16 -11
  259. package/src/components/{SpacePresence.stories.tsx → SpacePresence/SpacePresence.stories.tsx} +24 -23
  260. package/src/components/{SpacePresence.tsx → SpacePresence/SpacePresence.tsx} +22 -17
  261. package/src/components/SpacePresence/index.ts +5 -0
  262. package/src/components/{PopoverRenameSpace.tsx → SpaceRenamePopover/SpaceRenamePopover.tsx} +7 -6
  263. package/src/components/SpaceRenamePopover/index.ts +5 -0
  264. package/src/components/SpaceSettings/SpaceSettingsContainer.stories.tsx +17 -9
  265. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +49 -28
  266. package/src/components/SyncStatus/InlineSyncStatus.tsx +8 -8
  267. package/src/components/SyncStatus/SyncStatus.stories.tsx +9 -9
  268. package/src/components/SyncStatus/SyncStatus.tsx +109 -12
  269. package/src/components/ViewEditor.tsx +51 -23
  270. package/src/components/index.ts +7 -7
  271. package/src/events.ts +7 -7
  272. package/src/helpers/index.ts +5 -0
  273. package/src/helpers/query.test.ts +24 -0
  274. package/src/helpers/query.ts +158 -0
  275. package/src/hooks/index.ts +1 -0
  276. package/src/hooks/useActiveSpace.ts +3 -2
  277. package/src/hooks/useInputSurfaceLookup.tsx +8 -3
  278. package/src/hooks/usePath.ts +1 -1
  279. package/src/hooks/useTypeOptions.ts +59 -0
  280. package/src/index.ts +1 -0
  281. package/src/meta.ts +6 -3
  282. package/src/translations.ts +29 -14
  283. package/src/types/types.ts +31 -22
  284. package/src/util.tsx +131 -66
  285. package/dist/lib/browser/CollectionMain-D2B75XBS.mjs.map +0 -7
  286. package/dist/lib/browser/ObjectDetailsPanel-YPTDQKMG.mjs +0 -88
  287. package/dist/lib/browser/ObjectDetailsPanel-YPTDQKMG.mjs.map +0 -7
  288. package/dist/lib/browser/app-graph-builder-V3MP3CDK.mjs.map +0 -7
  289. package/dist/lib/browser/app-graph-serializer-H6AW7KGS.mjs.map +0 -7
  290. package/dist/lib/browser/chunk-CEFHNVU7.mjs +0 -20
  291. package/dist/lib/browser/chunk-CEFHNVU7.mjs.map +0 -7
  292. package/dist/lib/browser/chunk-FBCGT5YY.mjs +0 -13
  293. package/dist/lib/browser/chunk-FBCGT5YY.mjs.map +0 -7
  294. package/dist/lib/browser/chunk-FBJEXW54.mjs.map +0 -7
  295. package/dist/lib/browser/chunk-JS3MMC42.mjs +0 -19
  296. package/dist/lib/browser/chunk-JS3MMC42.mjs.map +0 -7
  297. package/dist/lib/browser/chunk-QACNNDOT.mjs.map +0 -7
  298. package/dist/lib/browser/chunk-SGTQ52SU.mjs.map +0 -7
  299. package/dist/lib/browser/chunk-VLBRSGJ2.mjs +0 -94
  300. package/dist/lib/browser/chunk-VLBRSGJ2.mjs.map +0 -7
  301. package/dist/lib/browser/chunk-XUYKJUU7.mjs.map +0 -7
  302. package/dist/lib/browser/identity-created-23XJJV2N.mjs.map +0 -7
  303. package/dist/lib/browser/intent-resolver-XHGD73WZ.mjs.map +0 -7
  304. package/dist/lib/browser/react-root-CMWOGJG5.mjs +0 -29
  305. package/dist/lib/browser/react-root-CMWOGJG5.mjs.map +0 -7
  306. package/dist/lib/browser/react-surface-YWZZQF7H.mjs.map +0 -7
  307. package/dist/lib/browser/schema-defs-Z6FC4AHC.mjs.map +0 -7
  308. package/dist/lib/browser/schema-tools-BNP4JTD7.mjs +0 -124
  309. package/dist/lib/browser/schema-tools-BNP4JTD7.mjs.map +0 -7
  310. package/dist/lib/browser/spaces-ready-TOPG6IV4.mjs.map +0 -7
  311. package/dist/lib/browser/state-QYZAB45H.mjs.map +0 -7
  312. package/dist/lib/node-esm/CollectionMain-ZJIFCWKZ.mjs.map +0 -7
  313. package/dist/lib/node-esm/ObjectDetailsPanel-QKZEDSZK.mjs +0 -89
  314. package/dist/lib/node-esm/ObjectDetailsPanel-QKZEDSZK.mjs.map +0 -7
  315. package/dist/lib/node-esm/app-graph-builder-SG4VECBB.mjs.map +0 -7
  316. package/dist/lib/node-esm/app-graph-serializer-2ICUGQQT.mjs.map +0 -7
  317. package/dist/lib/node-esm/chunk-2A3VBXBP.mjs.map +0 -7
  318. package/dist/lib/node-esm/chunk-4AOMYKDE.mjs.map +0 -7
  319. package/dist/lib/node-esm/chunk-5HHYE264.mjs +0 -20
  320. package/dist/lib/node-esm/chunk-5HHYE264.mjs.map +0 -7
  321. package/dist/lib/node-esm/chunk-5T3ZH23B.mjs +0 -21
  322. package/dist/lib/node-esm/chunk-5T3ZH23B.mjs.map +0 -7
  323. package/dist/lib/node-esm/chunk-HWNG4MEU.mjs +0 -15
  324. package/dist/lib/node-esm/chunk-HWNG4MEU.mjs.map +0 -7
  325. package/dist/lib/node-esm/chunk-JH6F4C3I.mjs.map +0 -7
  326. package/dist/lib/node-esm/chunk-P442DOQ3.mjs.map +0 -7
  327. package/dist/lib/node-esm/chunk-SSLBYZEY.mjs +0 -96
  328. package/dist/lib/node-esm/chunk-SSLBYZEY.mjs.map +0 -7
  329. package/dist/lib/node-esm/identity-created-IJQO6GCR.mjs.map +0 -7
  330. package/dist/lib/node-esm/intent-resolver-LEANKSKZ.mjs.map +0 -7
  331. package/dist/lib/node-esm/react-root-5Y7LJRX6.mjs.map +0 -7
  332. package/dist/lib/node-esm/react-surface-YQFNIKYT.mjs.map +0 -7
  333. package/dist/lib/node-esm/schema-defs-WHJM7UZE.mjs.map +0 -7
  334. package/dist/lib/node-esm/schema-tools-KWW5PTML.mjs +0 -126
  335. package/dist/lib/node-esm/schema-tools-KWW5PTML.mjs.map +0 -7
  336. package/dist/lib/node-esm/spaces-ready-HIUKNDZK.mjs.map +0 -7
  337. package/dist/lib/node-esm/state-ZVEHQ4BJ.mjs.map +0 -7
  338. package/dist/types/src/capabilities/schema-tool.test.d.ts +0 -2
  339. package/dist/types/src/capabilities/schema-tool.test.d.ts.map +0 -1
  340. package/dist/types/src/capabilities/schema-tools.d.ts +0 -13
  341. package/dist/types/src/capabilities/schema-tools.d.ts.map +0 -1
  342. package/dist/types/src/components/CollectionMain.d.ts +0 -7
  343. package/dist/types/src/components/CollectionMain.d.ts.map +0 -1
  344. package/dist/types/src/components/JoinDialog.d.ts.map +0 -1
  345. package/dist/types/src/components/MembersContainer.d.ts.map +0 -1
  346. package/dist/types/src/components/MembersContainer.stories.d.ts +0 -8
  347. package/dist/types/src/components/MembersContainer.stories.d.ts.map +0 -1
  348. package/dist/types/src/components/ObjectDetailsPanel.d.ts +0 -9
  349. package/dist/types/src/components/ObjectDetailsPanel.d.ts.map +0 -1
  350. package/dist/types/src/components/PersistenceStatus.d.ts +0 -6
  351. package/dist/types/src/components/PersistenceStatus.d.ts.map +0 -1
  352. package/dist/types/src/components/PopoverRenameObject.d.ts +0 -7
  353. package/dist/types/src/components/PopoverRenameObject.d.ts.map +0 -1
  354. package/dist/types/src/components/PopoverRenameSpace.d.ts +0 -7
  355. package/dist/types/src/components/PopoverRenameSpace.d.ts.map +0 -1
  356. package/dist/types/src/components/SpacePresence.d.ts.map +0 -1
  357. package/dist/types/src/components/SpacePresence.stories.d.ts +0 -9
  358. package/dist/types/src/components/SpacePresence.stories.d.ts.map +0 -1
  359. package/src/capabilities/schema-tool.test.ts +0 -44
  360. package/src/capabilities/schema-tools.ts +0 -125
  361. package/src/components/MembersContainer.stories.tsx +0 -30
  362. package/src/components/ObjectDetailsPanel.tsx +0 -77
  363. package/src/components/PersistenceStatus.tsx +0 -83
@@ -1,30 +1,31 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  AwaitingObject
4
- } from "./chunk-2A3VBXBP.mjs";
5
- import "./chunk-SSLBYZEY.mjs";
4
+ } from "./chunk-ITQFSFQ3.mjs";
5
+ import "./chunk-TJPQDQNI.mjs";
6
6
  import {
7
7
  SpaceCapabilities
8
- } from "./chunk-5T3ZH23B.mjs";
9
- import "./chunk-4AOMYKDE.mjs";
10
- import "./chunk-JH6F4C3I.mjs";
8
+ } from "./chunk-Z7BB6HC2.mjs";
9
+ import "./chunk-VH2EBZEV.mjs";
10
+ import "./chunk-2PN7QNGV.mjs";
11
11
  import {
12
- SPACE_PLUGIN
13
- } from "./chunk-HWNG4MEU.mjs";
12
+ meta
13
+ } from "./chunk-BDEFTL6K.mjs";
14
14
 
15
15
  // src/capabilities/react-root.tsx
16
16
  import React from "react";
17
- import { Capabilities, contributes, useCapability } from "@dxos/app-framework";
18
- var react_root_default = () => contributes(Capabilities.ReactRoot, {
19
- id: SPACE_PLUGIN,
17
+ import { Capabilities, contributes } from "@dxos/app-framework";
18
+ import { useCapability } from "@dxos/app-framework/react";
19
+ var react_root_default = (() => contributes(Capabilities.ReactRoot, {
20
+ id: meta.id,
20
21
  root: () => {
21
22
  const state = useCapability(SpaceCapabilities.State);
22
23
  return state.awaiting ? /* @__PURE__ */ React.createElement(AwaitingObject, {
23
24
  id: state.awaiting
24
25
  }) : null;
25
26
  }
26
- });
27
+ }));
27
28
  export {
28
29
  react_root_default as default
29
30
  };
30
- //# sourceMappingURL=react-root-5Y7LJRX6.mjs.map
31
+ //# sourceMappingURL=react-root-5ANDLQMX.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/react-root.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, contributes } from '@dxos/app-framework';\nimport { useCapability } from '@dxos/app-framework/react';\n\nimport { AwaitingObject } from '../components';\nimport { meta } from '../meta';\n\nimport { SpaceCapabilities } from './capabilities';\n\nexport default () =>\n contributes(Capabilities.ReactRoot, {\n id: meta.id,\n root: () => {\n const state = useCapability(SpaceCapabilities.State);\n return state.awaiting ? <AwaitingObject id={state.awaiting} /> : null;\n },\n });\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,cAAcC,mBAAmB;AAC1C,SAASC,qBAAqB;AAO9B,IAAA,sBAAe,MACbC,YAAYC,aAAaC,WAAW;EAClCC,IAAIC,KAAKD;EACTE,MAAM,MAAA;AACJ,UAAMC,QAAQC,cAAcC,kBAAkBC,KAAK;AACnD,WAAOH,MAAMI,WAAW,sBAAA,cAACC,gBAAAA;MAAeR,IAAIG,MAAMI;SAAe;EACnE;AACF,CAAA;",
6
+ "names": ["React", "Capabilities", "contributes", "useCapability", "contributes", "Capabilities", "ReactRoot", "id", "meta", "root", "state", "useCapability", "SpaceCapabilities", "State", "awaiting", "AwaitingObject"]
7
+ }
@@ -2,7 +2,7 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  CREATE_OBJECT_DIALOG,
4
4
  CREATE_SPACE_DIALOG,
5
- CollectionMain,
5
+ CollectionArticle,
6
6
  CollectionSection,
7
7
  CreateObjectDialog,
8
8
  CreateSpaceDialog,
@@ -11,53 +11,51 @@ import {
11
11
  JoinDialog,
12
12
  MembersContainer,
13
13
  MenuFooter,
14
+ OBJECT_RENAME_POPOVER,
14
15
  ObjectDetailsPanel,
16
+ ObjectRenamePopover,
15
17
  ObjectSettingsContainer,
16
- POPOVER_RENAME_OBJECT,
17
- POPOVER_RENAME_SPACE,
18
- PopoverRenameObject,
19
- PopoverRenameSpace,
18
+ RecordArticle,
19
+ SPACE_RENAME_POPOVER,
20
20
  SchemaContainer,
21
21
  SmallPresenceLive,
22
22
  SpacePluginSettings,
23
23
  SpacePresence,
24
+ SpaceRenamePopover,
24
25
  SpaceSettingsContainer,
25
26
  SyncStatus,
26
27
  ViewEditor
27
- } from "./chunk-2A3VBXBP.mjs";
28
- import "./chunk-SSLBYZEY.mjs";
28
+ } from "./chunk-ITQFSFQ3.mjs";
29
+ import {
30
+ useTypeOptions
31
+ } from "./chunk-TJPQDQNI.mjs";
29
32
  import {
30
33
  SpaceCapabilities
31
- } from "./chunk-5T3ZH23B.mjs";
32
- import "./chunk-4AOMYKDE.mjs";
34
+ } from "./chunk-Z7BB6HC2.mjs";
35
+ import "./chunk-VH2EBZEV.mjs";
33
36
  import {
34
37
  HueAnnotationId,
35
38
  IconAnnotationId
36
- } from "./chunk-JH6F4C3I.mjs";
39
+ } from "./chunk-2PN7QNGV.mjs";
37
40
  import {
38
- SPACE_PLUGIN
39
- } from "./chunk-HWNG4MEU.mjs";
41
+ meta
42
+ } from "./chunk-BDEFTL6K.mjs";
40
43
 
41
44
  // src/capabilities/react-surface.tsx
42
- import React, { useCallback, useMemo } from "react";
43
- import { Capabilities, contributes, createSurface, Surface, useCapabilities, useCapability, useLayout } from "@dxos/app-framework";
44
- import { Obj, Type } from "@dxos/echo";
45
+ import React, { useCallback } from "react";
46
+ import { Capabilities, contributes, createSurface } from "@dxos/app-framework";
47
+ import { Surface, useCapability, useLayout } from "@dxos/app-framework/react";
48
+ import { Obj } from "@dxos/echo";
45
49
  import { findAnnotation } from "@dxos/effect";
46
50
  import { SettingsStore } from "@dxos/local-storage";
47
- import { ClientCapabilities } from "@dxos/plugin-client";
48
- import { useClient } from "@dxos/react-client";
49
- import { fullyQualifiedId, getSpace, isLiveObject, isSpace, parseId, SpaceState, useSpace } from "@dxos/react-client/echo";
50
- import { Input, useTranslation } from "@dxos/react-ui";
51
+ import { SpaceState, getSpace, isLiveObject, isSpace, parseId, useSpace } from "@dxos/react-client/echo";
52
+ import { Input } from "@dxos/react-ui";
51
53
  import { SelectInput } from "@dxos/react-ui-form";
52
54
  import { HuePicker, IconPicker } from "@dxos/react-ui-pickers";
53
- import { DataType, TypenameAnnotationId } from "@dxos/schema";
54
- var OMIT = [
55
- DataType.Collection.typename,
56
- DataType.QueryCollection.typename
57
- ];
58
- var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilities.ReactSurface, [
55
+ import { Collection, TypenameAnnotationId, View } from "@dxos/schema";
56
+ var react_surface_default = (({ createInvitationUrl }) => contributes(Capabilities.ReactSurface, [
59
57
  createSurface({
60
- id: `${SPACE_PLUGIN}/article`,
58
+ id: `${meta.id}/article`,
61
59
  role: "article",
62
60
  filter: (data) => (
63
61
  // TODO(wittjosiah): Need to avoid shotgun parsing space state everywhere.
@@ -66,31 +64,40 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
66
64
  component: ({ data, role, ...rest }) => /* @__PURE__ */ React.createElement(Surface, {
67
65
  data: {
68
66
  id: data.subject.id,
69
- subject: data.subject.properties[DataType.Collection.typename]?.target
67
+ subject: data.subject.properties[Collection.Collection.typename]?.target
70
68
  },
71
69
  role,
72
70
  ...rest
73
71
  })
74
72
  }),
75
73
  createSurface({
76
- id: `${SPACE_PLUGIN}/collection-fallback`,
74
+ id: `${meta.id}/record-article`,
75
+ role: "article",
76
+ position: "fallback",
77
+ filter: (data) => Obj.isObject(data.subject),
78
+ component: ({ data }) => /* @__PURE__ */ React.createElement(RecordArticle, {
79
+ subject: data.subject
80
+ })
81
+ }),
82
+ createSurface({
83
+ id: `${meta.id}/collection-fallback`,
77
84
  role: "article",
78
85
  position: "fallback",
79
- filter: (data) => Obj.instanceOf(DataType.Collection, data.subject),
80
- component: ({ data }) => /* @__PURE__ */ React.createElement(CollectionMain, {
81
- collection: data.subject
86
+ filter: (data) => Obj.instanceOf(Collection.Collection, data.subject),
87
+ component: ({ data }) => /* @__PURE__ */ React.createElement(CollectionArticle, {
88
+ subject: data.subject
82
89
  })
83
90
  }),
84
91
  createSurface({
85
- id: `${SPACE_PLUGIN}/plugin-settings`,
92
+ id: `${meta.id}/plugin-settings`,
86
93
  role: "article",
87
- filter: (data) => data.subject instanceof SettingsStore && data.subject.prefix === SPACE_PLUGIN,
94
+ filter: (data) => data.subject instanceof SettingsStore && data.subject.prefix === meta.id,
88
95
  component: ({ data: { subject } }) => /* @__PURE__ */ React.createElement(SpacePluginSettings, {
89
96
  settings: subject.value
90
97
  })
91
98
  }),
92
99
  createSurface({
93
- id: `${SPACE_PLUGIN}/companion/object-settings`,
100
+ id: `${meta.id}/companion/object-settings`,
94
101
  role: "article",
95
102
  filter: (data) => Obj.isObject(data.companionTo) && data.subject === "settings",
96
103
  component: ({ data, role }) => /* @__PURE__ */ React.createElement(ObjectSettingsContainer, {
@@ -99,9 +106,9 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
99
106
  })
100
107
  }),
101
108
  createSurface({
102
- id: `${SPACE_PLUGIN}/space-settings-properties`,
109
+ id: `${meta.id}/space-settings-properties`,
103
110
  role: "article",
104
- filter: (data) => data.subject === `${SPACE_PLUGIN}/properties`,
111
+ filter: (data) => data.subject === `${meta.id}/properties`,
105
112
  component: () => {
106
113
  const layout = useLayout();
107
114
  const { spaceId } = parseId(layout.workspace);
@@ -115,10 +122,10 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
115
122
  }
116
123
  }),
117
124
  createSurface({
118
- id: `${SPACE_PLUGIN}/space-settings-members`,
125
+ id: `${meta.id}/space-settings-members`,
119
126
  role: "article",
120
127
  position: "hoist",
121
- filter: (data) => data.subject === `${SPACE_PLUGIN}/members`,
128
+ filter: (data) => data.subject === `${meta.id}/members`,
122
129
  component: () => {
123
130
  const layout = useLayout();
124
131
  const { spaceId } = parseId(layout.workspace);
@@ -133,9 +140,9 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
133
140
  }
134
141
  }),
135
142
  createSurface({
136
- id: `${SPACE_PLUGIN}/space-settings-schema`,
143
+ id: `${meta.id}/space-settings-schema`,
137
144
  role: "article",
138
- filter: (data) => data.subject === `${SPACE_PLUGIN}/schema`,
145
+ filter: (data) => data.subject === `${meta.id}/schema`,
139
146
  component: () => {
140
147
  const layout = useLayout();
141
148
  const { spaceId } = parseId(layout.workspace);
@@ -149,12 +156,12 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
149
156
  }
150
157
  }),
151
158
  createSurface({
152
- id: `${SPACE_PLUGIN}/selected-objects`,
159
+ id: `${meta.id}/selected-objects`,
153
160
  role: "article",
154
- filter: (data) => Obj.instanceOf(DataType.View, data.companionTo) && data.subject === "selected-objects",
161
+ filter: (data) => Obj.instanceOf(View.View, data.companionTo) && data.subject === "selected-objects",
155
162
  component: ({ data }) => /* @__PURE__ */ React.createElement(ObjectDetailsPanel, {
156
- key: fullyQualifiedId(data.companionTo),
157
- objectId: fullyQualifiedId(data.companionTo),
163
+ key: Obj.getDXN(data.companionTo).toString(),
164
+ objectId: Obj.getDXN(data.companionTo).toString(),
158
165
  view: data.companionTo
159
166
  })
160
167
  }),
@@ -177,14 +184,14 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
177
184
  component: ({ data }) => /* @__PURE__ */ React.createElement(CreateObjectDialog, data.props)
178
185
  }),
179
186
  createSurface({
180
- id: `${SPACE_PLUGIN}/create-initial-space-form-[hue]`,
187
+ id: `${meta.id}/create-initial-space-form-[hue]`,
181
188
  role: "form-input",
182
189
  filter: (data) => {
183
190
  const annotation = findAnnotation(data.schema.ast, HueAnnotationId);
184
191
  return !!annotation;
185
192
  },
186
193
  component: ({ data: _, ...inputProps }) => {
187
- const { label, disabled, type, getValue, onValueChange } = inputProps;
194
+ const { label, readonly, type, getValue, onValueChange } = inputProps;
188
195
  const handleChange = useCallback((nextHue) => onValueChange(type, nextHue), [
189
196
  onValueChange
190
197
  ]);
@@ -192,7 +199,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
192
199
  onValueChange
193
200
  ]);
194
201
  return /* @__PURE__ */ React.createElement(Input.Root, null, /* @__PURE__ */ React.createElement(Input.Label, null, label), /* @__PURE__ */ React.createElement(HuePicker, {
195
- disabled,
202
+ disabled: !!readonly,
196
203
  value: getValue() ?? "",
197
204
  onChange: handleChange,
198
205
  onReset: handleReset
@@ -200,14 +207,14 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
200
207
  }
201
208
  }),
202
209
  createSurface({
203
- id: `${SPACE_PLUGIN}/create-initial-space-form-[icon]`,
210
+ id: `${meta.id}/create-initial-space-form-[icon]`,
204
211
  role: "form-input",
205
212
  filter: (data) => {
206
213
  const annotation = findAnnotation(data.schema.ast, IconAnnotationId);
207
214
  return !!annotation;
208
215
  },
209
216
  component: ({ data: _, ...inputProps }) => {
210
- const { label, disabled, type, getValue, onValueChange } = inputProps;
217
+ const { label, readonly, type, getValue, onValueChange } = inputProps;
211
218
  const handleChange = useCallback((nextIcon) => onValueChange(type, nextIcon), [
212
219
  onValueChange
213
220
  ]);
@@ -215,7 +222,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
215
222
  onValueChange
216
223
  ]);
217
224
  return /* @__PURE__ */ React.createElement(Input.Root, null, /* @__PURE__ */ React.createElement(Input.Label, null, label), /* @__PURE__ */ React.createElement(IconPicker, {
218
- disabled,
225
+ disabled: !!readonly,
219
226
  value: getValue() ?? "",
220
227
  onChange: handleChange,
221
228
  onReset: handleReset
@@ -223,7 +230,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
223
230
  }
224
231
  }),
225
232
  createSurface({
226
- id: `${SPACE_PLUGIN}/typename-form-input`,
233
+ id: `${meta.id}/typename-form-input`,
227
234
  role: "form-input",
228
235
  filter: (data) => {
229
236
  if (data.prop !== "typename") {
@@ -233,44 +240,13 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
233
240
  return !!annotation;
234
241
  },
235
242
  component: ({ data: { schema, target }, ...inputProps }) => {
236
- const { t } = useTranslation();
237
- const client = useClient();
238
243
  const props = inputProps;
239
244
  const space = isSpace(target) ? target : getSpace(target);
240
- if (!space) {
241
- return null;
242
- }
243
245
  const annotation = findAnnotation(schema.ast, TypenameAnnotationId);
244
- const schemaWhitelists = useCapabilities(ClientCapabilities.SchemaWhiteList);
245
- const whitelistedTypenames = useMemo(() => new Set(schemaWhitelists.flatMap((typeArray) => typeArray.map((type) => Type.getTypename(type)))), [
246
- schemaWhitelists
247
- ]);
248
- const objectForms = useCapabilities(SpaceCapabilities.ObjectForm);
249
- const objectFormTypenames = useMemo(() => new Set(objectForms.map((form) => Type.getTypename(form.objectSchema)).filter((typename) => !OMIT.includes(typename) && !typename.endsWith("View"))), [
250
- objectForms
251
- ]);
252
- const fixed = client.graph.schemaRegistry.schemas.filter((schema2) => {
253
- const limitedStatic = annotation.includes("limited-static") && whitelistedTypenames.has(Type.getTypename(schema2));
254
- const unusedStatic = annotation.includes("unused-static") && whitelistedTypenames.has(Type.getTypename(schema2)) && !space.properties.staticRecords?.includes(Type.getTypename(schema2));
255
- const usedStatic = annotation.includes("used-static") && whitelistedTypenames.has(Type.getTypename(schema2)) && space.properties.staticRecords?.includes(Type.getTypename(schema2));
256
- const objectForm = annotation.includes("object-form") && objectFormTypenames.has(Type.getTypename(schema2));
257
- return annotation.includes("static") || limitedStatic || unusedStatic || usedStatic || objectForm;
246
+ const options = useTypeOptions({
247
+ space,
248
+ annotation
258
249
  });
259
- const dynamic = space?.db.schemaRegistry.query().runSync();
260
- const typenames = Array.from(/* @__PURE__ */ new Set([
261
- ...annotation.includes("limited-static") || annotation.includes("unused-static") || annotation.includes("used-static") || annotation.includes("static") || annotation.includes("object-form") ? fixed.map((schema2) => Type.getTypename(schema2)) : [],
262
- ...annotation.includes("dynamic") ? dynamic.map((schema2) => schema2.typename) : []
263
- ])).sort();
264
- const options = useMemo(() => typenames.map((typename) => ({
265
- value: typename,
266
- label: t("typename label", {
267
- ns: typename,
268
- defaultValue: typename
269
- })
270
- })).toSorted((a, b) => a.label.localeCompare(b.label)), [
271
- t,
272
- typenames
273
- ]);
274
250
  return /* @__PURE__ */ React.createElement(SelectInput, {
275
251
  ...props,
276
252
  options
@@ -278,31 +254,31 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
278
254
  }
279
255
  }),
280
256
  createSurface({
281
- id: `${SPACE_PLUGIN}/object-settings`,
257
+ id: `${meta.id}/object-settings`,
282
258
  role: "object-settings",
283
- filter: (data) => Obj.instanceOf(DataType.View, data.subject),
259
+ filter: (data) => Obj.instanceOf(View.View, data.subject),
284
260
  component: ({ data }) => /* @__PURE__ */ React.createElement(ViewEditor, {
285
261
  view: data.subject
286
262
  })
287
263
  }),
288
264
  createSurface({
289
- id: POPOVER_RENAME_SPACE,
265
+ id: SPACE_RENAME_POPOVER,
290
266
  role: "card--popover",
291
- filter: (data) => data.component === POPOVER_RENAME_SPACE && isSpace(data.props),
292
- component: ({ data }) => /* @__PURE__ */ React.createElement(PopoverRenameSpace, {
267
+ filter: (data) => data.component === SPACE_RENAME_POPOVER && isSpace(data.props),
268
+ component: ({ data }) => /* @__PURE__ */ React.createElement(SpaceRenamePopover, {
293
269
  space: data.props
294
270
  })
295
271
  }),
296
272
  createSurface({
297
- id: POPOVER_RENAME_OBJECT,
273
+ id: OBJECT_RENAME_POPOVER,
298
274
  role: "card--popover",
299
- filter: (data) => data.component === POPOVER_RENAME_OBJECT && isLiveObject(data.props),
300
- component: ({ data }) => /* @__PURE__ */ React.createElement(PopoverRenameObject, {
275
+ filter: (data) => data.component === OBJECT_RENAME_POPOVER && isLiveObject(data.props),
276
+ component: ({ data }) => /* @__PURE__ */ React.createElement(ObjectRenamePopover, {
301
277
  object: data.props
302
278
  })
303
279
  }),
304
280
  createSurface({
305
- id: `${SPACE_PLUGIN}/menu-footer`,
281
+ id: `${meta.id}/menu-footer`,
306
282
  role: "menu-footer",
307
283
  filter: (data) => Obj.isObject(data.subject),
308
284
  component: ({ data }) => /* @__PURE__ */ React.createElement(MenuFooter, {
@@ -310,7 +286,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
310
286
  })
311
287
  }),
312
288
  createSurface({
313
- id: `${SPACE_PLUGIN}/navtree-presence`,
289
+ id: `${meta.id}/navtree-presence`,
314
290
  role: "navtree-item-end",
315
291
  filter: (data) => typeof data.id === "string" && Obj.isObject(data.subject),
316
292
  component: ({ data }) => {
@@ -324,7 +300,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
324
300
  }),
325
301
  // TODO(wittjosiah): Attention glyph for non-echo items should be handled elsewhere.
326
302
  createSurface({
327
- id: `${SPACE_PLUGIN}/navtree-presence-fallback`,
303
+ id: `${meta.id}/navtree-presence-fallback`,
328
304
  role: "navtree-item-end",
329
305
  position: "fallback",
330
306
  filter: (data) => typeof data.id === "string",
@@ -335,7 +311,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
335
311
  }),
336
312
  // TODO(wittjosiah): Broken?
337
313
  createSurface({
338
- id: `${SPACE_PLUGIN}/navtree-sync-status`,
314
+ id: `${meta.id}/navtree-sync-status`,
339
315
  role: "navtree-item-end",
340
316
  filter: (data) => isSpace(data.subject),
341
317
  component: ({ data }) => /* @__PURE__ */ React.createElement(InlineSyncStatus, {
@@ -344,33 +320,33 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
344
320
  })
345
321
  }),
346
322
  createSurface({
347
- id: `${SPACE_PLUGIN}/navbar-presence`,
323
+ id: `${meta.id}/navbar-presence`,
348
324
  role: "navbar-end",
349
325
  position: "hoist",
350
326
  filter: (data) => isSpace(data.subject) || Obj.isObject(data.subject),
351
327
  component: ({ data }) => {
352
328
  const space = isSpace(data.subject) ? data.subject : getSpace(data.subject);
353
- const object = isSpace(data.subject) ? data.subject.state.get() === SpaceState.SPACE_READY ? space?.properties[DataType.Collection.typename]?.target : void 0 : data.subject;
329
+ const object = isSpace(data.subject) ? data.subject.state.get() === SpaceState.SPACE_READY ? space?.properties[Collection.Collection.typename]?.target : void 0 : data.subject;
354
330
  return object ? /* @__PURE__ */ React.createElement(SpacePresence, {
355
331
  object
356
332
  }) : null;
357
333
  }
358
334
  }),
359
335
  createSurface({
360
- id: `${SPACE_PLUGIN}/collection-section`,
336
+ id: `${meta.id}/collection-section`,
361
337
  role: "section",
362
- filter: (data) => Obj.instanceOf(DataType.Collection, data.subject),
338
+ filter: (data) => Obj.instanceOf(Collection.Collection, data.subject),
363
339
  component: ({ data }) => /* @__PURE__ */ React.createElement(CollectionSection, {
364
- collection: data.subject
340
+ subject: data.subject
365
341
  })
366
342
  }),
367
343
  createSurface({
368
- id: `${SPACE_PLUGIN}/status`,
344
+ id: `${meta.id}/status`,
369
345
  role: "status",
370
346
  component: () => /* @__PURE__ */ React.createElement(SyncStatus, null)
371
347
  })
372
- ]);
348
+ ]));
373
349
  export {
374
350
  react_surface_default as default
375
351
  };
376
- //# sourceMappingURL=react-surface-YQFNIKYT.mjs.map
352
+ //# sourceMappingURL=react-surface-V7J2QB44.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/react-surface.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport type * as Schema from 'effect/Schema';\nimport React, { useCallback } from 'react';\n\nimport { Capabilities, contributes, createSurface } from '@dxos/app-framework';\nimport { Surface, useCapability, useLayout } from '@dxos/app-framework/react';\nimport { Obj } from '@dxos/echo';\nimport { findAnnotation } from '@dxos/effect';\nimport { SettingsStore } from '@dxos/local-storage';\nimport { type Space, SpaceState, getSpace, isLiveObject, isSpace, parseId, useSpace } from '@dxos/react-client/echo';\nimport { Input } from '@dxos/react-ui';\nimport { type InputProps, SelectInput } from '@dxos/react-ui-form';\nimport { HuePicker, IconPicker } from '@dxos/react-ui-pickers';\nimport { Collection, type TypenameAnnotation, TypenameAnnotationId, View } from '@dxos/schema';\nimport { type JoinPanelProps } from '@dxos/shell/react';\n\n// TODO(burdon): Component name standard: NounVerbComponent.\nimport {\n CREATE_OBJECT_DIALOG,\n CREATE_SPACE_DIALOG,\n CollectionArticle,\n CollectionSection,\n CreateObjectDialog,\n type CreateObjectDialogProps,\n CreateSpaceDialog,\n InlineSyncStatus,\n JOIN_DIALOG,\n JoinDialog,\n MembersContainer,\n MenuFooter,\n OBJECT_RENAME_POPOVER,\n ObjectDetailsPanel,\n ObjectRenamePopover,\n ObjectSettingsContainer,\n RecordArticle,\n SPACE_RENAME_POPOVER,\n SchemaContainer,\n SmallPresenceLive,\n SpacePluginSettings,\n SpacePresence,\n SpaceRenamePopover,\n SpaceSettingsContainer,\n SyncStatus,\n ViewEditor,\n} from '../components';\nimport { useTypeOptions } from '../hooks';\nimport { meta } from '../meta';\nimport { HueAnnotationId, IconAnnotationId, type SpaceSettingsProps } from '../types';\n\nimport { SpaceCapabilities } from './capabilities';\n\ntype ReactSurfaceOptions = {\n createInvitationUrl: (invitationCode: string) => string;\n};\n\nexport default ({ createInvitationUrl }: ReactSurfaceOptions) =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${meta.id}/article`,\n role: 'article',\n filter: (data): data is { subject: Space } =>\n // TODO(wittjosiah): Need to avoid shotgun parsing space state everywhere.\n isSpace(data.subject) && data.subject.state.get() === SpaceState.SPACE_READY,\n component: ({ data, role, ...rest }) => (\n <Surface\n data={{\n id: data.subject.id,\n subject: data.subject.properties[Collection.Collection.typename]?.target,\n }}\n role={role}\n {...rest}\n />\n ),\n }),\n createSurface({\n id: `${meta.id}/record-article`,\n role: 'article',\n position: 'fallback',\n filter: (data): data is { subject: Obj.Any } => Obj.isObject(data.subject),\n component: ({ data }) => <RecordArticle subject={data.subject} />,\n }),\n createSurface({\n id: `${meta.id}/collection-fallback`,\n role: 'article',\n position: 'fallback',\n filter: (data): data is { subject: Collection.Collection } => Obj.instanceOf(Collection.Collection, data.subject),\n component: ({ data }) => <CollectionArticle subject={data.subject} />,\n }),\n createSurface({\n id: `${meta.id}/plugin-settings`,\n role: 'article',\n filter: (data): data is { subject: SettingsStore<SpaceSettingsProps> } =>\n data.subject instanceof SettingsStore && data.subject.prefix === meta.id,\n component: ({ data: { subject } }) => <SpacePluginSettings settings={subject.value} />,\n }),\n createSurface({\n id: `${meta.id}/companion/object-settings`,\n role: 'article',\n filter: (data): data is { companionTo: Obj.Any } => Obj.isObject(data.companionTo) && data.subject === 'settings',\n component: ({ data, role }) => <ObjectSettingsContainer object={data.companionTo} role={role} />,\n }),\n createSurface({\n id: `${meta.id}/space-settings-properties`,\n role: 'article',\n filter: (data): data is { subject: string } => data.subject === `${meta.id}/properties`,\n component: () => {\n const layout = useLayout();\n const { spaceId } = parseId(layout.workspace);\n const space = useSpace(spaceId);\n if (!space || !spaceId) {\n return null;\n }\n\n return <SpaceSettingsContainer space={space} />;\n },\n }),\n createSurface({\n id: `${meta.id}/space-settings-members`,\n role: 'article',\n position: 'hoist',\n filter: (data): data is { subject: string } => data.subject === `${meta.id}/members`,\n component: () => {\n const layout = useLayout();\n const { spaceId } = parseId(layout.workspace);\n const space = useSpace(spaceId);\n if (!space || !spaceId) {\n return null;\n }\n\n return <MembersContainer space={space} createInvitationUrl={createInvitationUrl} />;\n },\n }),\n createSurface({\n id: `${meta.id}/space-settings-schema`,\n role: 'article',\n filter: (data): data is { subject: string } => data.subject === `${meta.id}/schema`,\n component: () => {\n const layout = useLayout();\n const { spaceId } = parseId(layout.workspace);\n const space = useSpace(spaceId);\n if (!space || !spaceId) {\n return null;\n }\n\n return <SchemaContainer space={space} />;\n },\n }),\n createSurface({\n id: `${meta.id}/selected-objects`,\n role: 'article',\n filter: (data): data is { companionTo: View.View; subject: 'selected-objects' } =>\n Obj.instanceOf(View.View, data.companionTo) && data.subject === 'selected-objects',\n component: ({ data }) => (\n <ObjectDetailsPanel\n key={Obj.getDXN(data.companionTo).toString()}\n objectId={Obj.getDXN(data.companionTo).toString()}\n view={data.companionTo}\n />\n ),\n }),\n createSurface({\n id: JOIN_DIALOG,\n role: 'dialog',\n filter: (data): data is { props: JoinPanelProps } => data.component === JOIN_DIALOG,\n component: ({ data }) => <JoinDialog {...data.props} />,\n }),\n createSurface({\n id: CREATE_SPACE_DIALOG,\n role: 'dialog',\n filter: (data): data is any => data.component === CREATE_SPACE_DIALOG,\n component: () => <CreateSpaceDialog />,\n }),\n createSurface({\n id: CREATE_OBJECT_DIALOG,\n role: 'dialog',\n filter: (data): data is { props: CreateObjectDialogProps } => data.component === CREATE_OBJECT_DIALOG,\n component: ({ data }) => <CreateObjectDialog {...data.props} />,\n }),\n createSurface({\n id: `${meta.id}/create-initial-space-form-[hue]`,\n role: 'form-input',\n filter: (data): data is { prop: string; schema: Schema.Schema<any> } => {\n const annotation = findAnnotation<boolean>((data.schema as Schema.Schema.All).ast, HueAnnotationId);\n return !!annotation;\n },\n component: ({ data: _, ...inputProps }) => {\n const { label, readonly, type, getValue, onValueChange } = inputProps as any as InputProps;\n const handleChange = useCallback((nextHue: string) => onValueChange(type, nextHue), [onValueChange]);\n const handleReset = useCallback(() => onValueChange(type, undefined), [onValueChange]);\n return (\n <Input.Root>\n <Input.Label>{label}</Input.Label>\n <HuePicker disabled={!!readonly} value={getValue() ?? ''} onChange={handleChange} onReset={handleReset} />\n </Input.Root>\n );\n },\n }),\n createSurface({\n id: `${meta.id}/create-initial-space-form-[icon]`,\n role: 'form-input',\n filter: (data): data is { prop: string; schema: Schema.Schema<any> } => {\n const annotation = findAnnotation<boolean>((data.schema as Schema.Schema.All).ast, IconAnnotationId);\n return !!annotation;\n },\n component: ({ data: _, ...inputProps }) => {\n const { label, readonly, type, getValue, onValueChange } = inputProps as any as InputProps;\n const handleChange = useCallback((nextIcon: string) => onValueChange(type, nextIcon), [onValueChange]);\n const handleReset = useCallback(() => onValueChange(type, undefined), [onValueChange]);\n return (\n <Input.Root>\n <Input.Label>{label}</Input.Label>\n <IconPicker disabled={!!readonly} value={getValue() ?? ''} onChange={handleChange} onReset={handleReset} />\n </Input.Root>\n );\n },\n }),\n createSurface({\n id: `${meta.id}/typename-form-input`,\n role: 'form-input',\n filter: (\n data,\n ): data is {\n prop: string;\n schema: Schema.Schema<any>;\n target: Space | Collection.Collection | undefined;\n } => {\n if (data.prop !== 'typename') {\n return false;\n }\n\n const annotation = findAnnotation((data.schema as Schema.Schema.All).ast, TypenameAnnotationId);\n return !!annotation;\n },\n component: ({ data: { schema, target }, ...inputProps }) => {\n const props = inputProps as any as InputProps;\n const space = isSpace(target) ? target : getSpace(target);\n const annotation = findAnnotation<TypenameAnnotation[]>(schema.ast, TypenameAnnotationId)!;\n const options = useTypeOptions({ space, annotation });\n\n return <SelectInput {...props} options={options} />;\n },\n }),\n createSurface({\n id: `${meta.id}/object-settings`,\n role: 'object-settings',\n filter: (data): data is { subject: View.View } => Obj.instanceOf(View.View, data.subject),\n component: ({ data }) => <ViewEditor view={data.subject} />,\n }),\n createSurface({\n id: SPACE_RENAME_POPOVER,\n role: 'card--popover',\n filter: (data): data is { props: Space } => data.component === SPACE_RENAME_POPOVER && isSpace(data.props),\n component: ({ data }) => <SpaceRenamePopover space={data.props} />,\n }),\n createSurface({\n id: OBJECT_RENAME_POPOVER,\n role: 'card--popover',\n filter: (data): data is { props: Obj.Any } =>\n data.component === OBJECT_RENAME_POPOVER && isLiveObject(data.props),\n component: ({ data }) => <ObjectRenamePopover object={data.props} />,\n }),\n createSurface({\n id: `${meta.id}/menu-footer`,\n role: 'menu-footer',\n filter: (data): data is { subject: Obj.Any } => Obj.isObject(data.subject),\n component: ({ data }) => <MenuFooter object={data.subject} />,\n }),\n createSurface({\n id: `${meta.id}/navtree-presence`,\n role: 'navtree-item-end',\n filter: (data): data is { id: string; subject: Obj.Any; open?: boolean } =>\n typeof data.id === 'string' && Obj.isObject(data.subject),\n component: ({ data }) => {\n // TODO(wittjosiah): Doesn't need to be mutable but readonly type messes with ComplexMap.\n const state = useCapability(SpaceCapabilities.MutableState);\n return <SmallPresenceLive id={data.id} open={data.open} viewers={state.viewersByObject[data.id]} />;\n },\n }),\n // TODO(wittjosiah): Attention glyph for non-echo items should be handled elsewhere.\n createSurface({\n id: `${meta.id}/navtree-presence-fallback`,\n role: 'navtree-item-end',\n position: 'fallback',\n filter: (data): data is { id: string; open?: boolean } => typeof data.id === 'string',\n component: ({ data }) => <SmallPresenceLive id={data.id} open={data.open} />,\n }),\n // TODO(wittjosiah): Broken?\n createSurface({\n id: `${meta.id}/navtree-sync-status`,\n role: 'navtree-item-end',\n filter: (data): data is { subject: Space; open?: boolean } => isSpace(data.subject),\n component: ({ data }) => <InlineSyncStatus space={data.subject} open={data.open} />,\n }),\n createSurface({\n id: `${meta.id}/navbar-presence`,\n role: 'navbar-end',\n position: 'hoist',\n filter: (data): data is { subject: Space | Obj.Any } => isSpace(data.subject) || Obj.isObject(data.subject),\n component: ({ data }) => {\n const space = isSpace(data.subject) ? data.subject : getSpace(data.subject);\n const object = isSpace(data.subject)\n ? data.subject.state.get() === SpaceState.SPACE_READY\n ? (space?.properties[Collection.Collection.typename]?.target as Collection.Collection)\n : undefined\n : data.subject;\n\n return object ? <SpacePresence object={object} /> : null;\n },\n }),\n createSurface({\n id: `${meta.id}/collection-section`,\n role: 'section',\n filter: (data): data is { subject: Collection.Collection } => Obj.instanceOf(Collection.Collection, data.subject),\n component: ({ data }) => <CollectionSection subject={data.subject} />,\n }),\n createSurface({\n id: `${meta.id}/status`,\n role: 'status',\n component: () => <SyncStatus />,\n }),\n ]);\n"],
5
+ "mappings": "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",
6
+ "names": ["React", "useCallback", "Capabilities", "contributes", "createSurface", "Surface", "useCapability", "useLayout", "Obj", "findAnnotation", "SettingsStore", "SpaceState", "getSpace", "isLiveObject", "isSpace", "parseId", "useSpace", "Input", "SelectInput", "HuePicker", "IconPicker", "Collection", "TypenameAnnotationId", "View", "createInvitationUrl", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "meta", "role", "filter", "data", "isSpace", "subject", "state", "get", "SpaceState", "SPACE_READY", "component", "rest", "Surface", "properties", "Collection", "typename", "target", "position", "Obj", "isObject", "RecordArticle", "instanceOf", "CollectionArticle", "SettingsStore", "prefix", "SpacePluginSettings", "settings", "value", "companionTo", "ObjectSettingsContainer", "object", "layout", "useLayout", "spaceId", "parseId", "workspace", "space", "useSpace", "SpaceSettingsContainer", "MembersContainer", "SchemaContainer", "View", "ObjectDetailsPanel", "key", "getDXN", "toString", "objectId", "view", "JOIN_DIALOG", "JoinDialog", "props", "CREATE_SPACE_DIALOG", "CreateSpaceDialog", "CREATE_OBJECT_DIALOG", "CreateObjectDialog", "annotation", "findAnnotation", "schema", "ast", "HueAnnotationId", "_", "inputProps", "label", "readonly", "type", "getValue", "onValueChange", "handleChange", "useCallback", "nextHue", "handleReset", "undefined", "Input", "Root", "Label", "HuePicker", "disabled", "onChange", "onReset", "IconAnnotationId", "nextIcon", "IconPicker", "prop", "TypenameAnnotationId", "getSpace", "options", "useTypeOptions", "SelectInput", "ViewEditor", "SPACE_RENAME_POPOVER", "SpaceRenamePopover", "OBJECT_RENAME_POPOVER", "isLiveObject", "ObjectRenamePopover", "MenuFooter", "useCapability", "SpaceCapabilities", "MutableState", "SmallPresenceLive", "open", "viewers", "viewersByObject", "InlineSyncStatus", "SpacePresence", "CollectionSection", "SyncStatus"]
7
+ }
@@ -1,14 +1,14 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  SpaceCapabilities
4
- } from "./chunk-5T3ZH23B.mjs";
5
- import "./chunk-HWNG4MEU.mjs";
4
+ } from "./chunk-Z7BB6HC2.mjs";
5
+ import "./chunk-BDEFTL6K.mjs";
6
6
 
7
7
  // src/capabilities/schema-defs.ts
8
8
  import { Capabilities, contributes } from "@dxos/app-framework";
9
9
  import { ClientCapabilities } from "@dxos/plugin-client";
10
- var schema_defs_default = (context) => {
11
- const registry = context.getCapability(Capabilities.RxRegistry);
10
+ var schema_defs_default = ((context) => {
11
+ const registry = context.getCapability(Capabilities.AtomRegistry);
12
12
  const client = context.getCapability(ClientCapabilities.Client);
13
13
  let previous = [];
14
14
  const cancel = registry.subscribe(context.capabilities(SpaceCapabilities.ObjectForm), (_forms) => {
@@ -20,8 +20,8 @@ var schema_defs_default = (context) => {
20
20
  immediate: true
21
21
  });
22
22
  return contributes(Capabilities.Null, null, () => cancel());
23
- };
23
+ });
24
24
  export {
25
25
  schema_defs_default as default
26
26
  };
27
- //# sourceMappingURL=schema-defs-WHJM7UZE.mjs.map
27
+ //# sourceMappingURL=schema-defs-ZS2D47XW.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/schema-defs.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, type PluginContext, contributes } from '@dxos/app-framework';\nimport { ClientCapabilities } from '@dxos/plugin-client';\n\nimport { type ObjectForm } from '../types';\n\nimport { SpaceCapabilities } from './capabilities';\n\nexport default (context: PluginContext) => {\n const registry = context.getCapability(Capabilities.AtomRegistry);\n const client = context.getCapability(ClientCapabilities.Client);\n\n // TODO(wittjosiah): Unregister schemas when they are disabled.\n let previous: ObjectForm[] = [];\n const cancel = registry.subscribe(\n context.capabilities(SpaceCapabilities.ObjectForm),\n (_forms) => {\n const forms = Array.from(new Set(_forms));\n // TODO(wittjosiah): Filter out schemas which the client has already registered.\n const newSchemas = forms.filter((form) => !previous.includes(form)).map((form) => form.objectSchema);\n previous = forms;\n client.addTypes(newSchemas);\n },\n { immediate: true },\n );\n\n return contributes(Capabilities.Null, null, () => cancel());\n};\n"],
5
+ "mappings": ";;;;;;;AAIA,SAASA,cAAkCC,mBAAmB;AAC9D,SAASC,0BAA0B;AAMnC,IAAA,uBAAe,CAACC,YAAAA;AACd,QAAMC,WAAWD,QAAQE,cAAcC,aAAaC,YAAY;AAChE,QAAMC,SAASL,QAAQE,cAAcI,mBAAmBC,MAAM;AAG9D,MAAIC,WAAyB,CAAA;AAC7B,QAAMC,SAASR,SAASS,UACtBV,QAAQW,aAAaC,kBAAkBC,UAAU,GACjD,CAACC,WAAAA;AACC,UAAMC,QAAQC,MAAMC,KAAK,IAAIC,IAAIJ,MAAAA,CAAAA;AAEjC,UAAMK,aAAaJ,MAAMK,OAAO,CAACC,SAAS,CAACb,SAASc,SAASD,IAAAA,CAAAA,EAAOE,IAAI,CAACF,SAASA,KAAKG,YAAY;AACnGhB,eAAWO;AACXV,WAAOoB,SAASN,UAAAA;EAClB,GACA;IAAEO,WAAW;EAAK,CAAA;AAGpB,SAAOC,YAAYxB,aAAayB,MAAM,MAAM,MAAMnB,OAAAA,CAAAA;AACpD;",
6
+ "names": ["Capabilities", "contributes", "ClientCapabilities", "context", "registry", "getCapability", "Capabilities", "AtomRegistry", "client", "ClientCapabilities", "Client", "previous", "cancel", "subscribe", "capabilities", "SpaceCapabilities", "ObjectForm", "_forms", "forms", "Array", "from", "Set", "newSchemas", "filter", "form", "includes", "map", "objectSchema", "addTypes", "immediate", "contributes", "Null"]
7
+ }
@@ -1,15 +1,15 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  SpaceSettingsSchema
4
- } from "./chunk-JH6F4C3I.mjs";
4
+ } from "./chunk-2PN7QNGV.mjs";
5
5
  import {
6
6
  meta
7
- } from "./chunk-HWNG4MEU.mjs";
7
+ } from "./chunk-BDEFTL6K.mjs";
8
8
 
9
9
  // src/capabilities/settings.ts
10
10
  import { Capabilities, contributes } from "@dxos/app-framework";
11
11
  import { live } from "@dxos/live-object";
12
- var settings_default = () => {
12
+ var settings_default = (() => {
13
13
  const settings = live({
14
14
  showHidden: false
15
15
  });
@@ -18,8 +18,8 @@ var settings_default = () => {
18
18
  schema: SpaceSettingsSchema,
19
19
  value: settings
20
20
  });
21
- };
21
+ });
22
22
  export {
23
23
  settings_default as default
24
24
  };
25
- //# sourceMappingURL=settings-SAOBPND3.mjs.map
25
+ //# sourceMappingURL=settings-RBB5633M.mjs.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/capabilities/settings.ts"],
4
4
  "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes } from '@dxos/app-framework';\nimport { live } from '@dxos/live-object';\n\nimport { meta } from '../meta';\nimport { type SpaceSettingsProps, SpaceSettingsSchema } from '../types';\n\nexport default () => {\n const settings = live<SpaceSettingsProps>({\n showHidden: false,\n });\n\n return contributes(Capabilities.Settings, {\n prefix: meta.id,\n schema: SpaceSettingsSchema,\n value: settings,\n });\n};\n"],
5
- "mappings": ";;;;;;;;;AAIA,SAASA,cAAcC,mBAAmB;AAC1C,SAASC,YAAY;AAKrB,IAAA,mBAAe,MAAA;AACb,QAAMC,WAAWC,KAAyB;IACxCC,YAAY;EACd,CAAA;AAEA,SAAOC,YAAYC,aAAaC,UAAU;IACxCC,QAAQC,KAAKC;IACbC,QAAQC;IACRC,OAAOX;EACT,CAAA;AACF;",
5
+ "mappings": ";;;;;;;;;AAIA,SAASA,cAAcC,mBAAmB;AAC1C,SAASC,YAAY;AAKrB,IAAA,oBAAe,MAAA;AACb,QAAMC,WAAWC,KAAyB;IACxCC,YAAY;EACd,CAAA;AAEA,SAAOC,YAAYC,aAAaC,UAAU;IACxCC,QAAQC,KAAKC;IACbC,QAAQC;IACRC,OAAOX;EACT,CAAA;AACF;",
6
6
  "names": ["Capabilities", "contributes", "live", "settings", "live", "showHidden", "contributes", "Capabilities", "Settings", "prefix", "meta", "id", "schema", "SpaceSettingsSchema", "value"]
7
7
  }