@dxos/plugin-space 0.8.3-main.672df60 → 0.8.3-staging.0fa589b

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 (237) hide show
  1. package/dist/lib/browser/{app-graph-builder-DCWUULKX.mjs → app-graph-builder-M2RH72VL.mjs} +49 -14
  2. package/dist/lib/browser/app-graph-builder-M2RH72VL.mjs.map +7 -0
  3. package/dist/lib/browser/{app-graph-serializer-MLU7XI2P.mjs → app-graph-serializer-F7ISRRBV.mjs} +13 -13
  4. package/dist/lib/browser/app-graph-serializer-F7ISRRBV.mjs.map +7 -0
  5. package/dist/lib/browser/{chunk-VEBKN45O.mjs → chunk-4ZKSFDXM.mjs} +29 -17
  6. package/dist/lib/browser/chunk-4ZKSFDXM.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-3LN4LJN6.mjs → chunk-BXNL6SDI.mjs} +2 -1
  8. package/dist/lib/browser/chunk-BXNL6SDI.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-ZQEIXWBK.mjs → chunk-NFUKCRGE.mjs} +157 -141
  10. package/dist/lib/browser/chunk-NFUKCRGE.mjs.map +7 -0
  11. package/dist/lib/browser/chunk-TW7O2EPP.mjs +284 -0
  12. package/dist/lib/browser/chunk-TW7O2EPP.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-N5QMRLKI.mjs → chunk-V24VASAJ.mjs} +112 -43
  14. package/dist/lib/browser/chunk-V24VASAJ.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-YMCZR6EZ.mjs +18 -0
  16. package/dist/lib/browser/chunk-YMCZR6EZ.mjs.map +7 -0
  17. package/dist/lib/browser/{identity-created-O63SIYOF.mjs → identity-created-PI7TKANR.mjs} +5 -10
  18. package/dist/lib/browser/identity-created-PI7TKANR.mjs.map +7 -0
  19. package/dist/lib/browser/index.mjs +61 -51
  20. package/dist/lib/browser/index.mjs.map +4 -4
  21. package/dist/lib/browser/{intent-resolver-PG473BRV.mjs → intent-resolver-RWU6ZE4H.mjs} +66 -45
  22. package/dist/lib/browser/intent-resolver-RWU6ZE4H.mjs.map +7 -0
  23. package/dist/lib/browser/meta.json +1 -1
  24. package/dist/lib/browser/{react-root-FRDC4UXB.mjs → react-root-QIKHSNT2.mjs} +5 -5
  25. package/dist/lib/browser/{react-surface-QOP7T66K.mjs → react-surface-W56UD53I.mjs} +79 -19
  26. package/dist/lib/browser/react-surface-W56UD53I.mjs.map +7 -0
  27. package/dist/lib/browser/{schema-defs-JMN74RNK.mjs → schema-defs-WREJNMIC.mjs} +2 -2
  28. package/dist/lib/browser/{schema-tools-JIEMHUXV.mjs → schema-tools-ILTVSSS3.mjs} +7 -6
  29. package/dist/lib/browser/schema-tools-ILTVSSS3.mjs.map +7 -0
  30. package/dist/lib/browser/{settings-2IN2WLUK.mjs → settings-K54STC5A.mjs} +4 -4
  31. package/dist/lib/browser/settings-K54STC5A.mjs.map +7 -0
  32. package/dist/lib/browser/{spaces-ready-L4QAGTDE.mjs → spaces-ready-3PDRDHPC.mjs} +12 -13
  33. package/dist/lib/browser/spaces-ready-3PDRDHPC.mjs.map +7 -0
  34. package/dist/lib/browser/{state-6HOSHLIN.mjs → state-HRZ4VRXU.mjs} +2 -2
  35. package/dist/lib/browser/types/index.mjs +1 -3
  36. package/dist/lib/node/{app-graph-builder-WC445X77.cjs → app-graph-builder-6LK5HLLE.cjs} +79 -43
  37. package/dist/lib/node/app-graph-builder-6LK5HLLE.cjs.map +7 -0
  38. package/dist/lib/node/{app-graph-serializer-UPQOQVMJ.cjs → app-graph-serializer-HKHBNHA3.cjs} +24 -23
  39. package/dist/lib/node/app-graph-serializer-HKHBNHA3.cjs.map +7 -0
  40. package/dist/lib/node/chunk-3X4EA4XL.cjs +37 -0
  41. package/dist/lib/node/chunk-3X4EA4XL.cjs.map +7 -0
  42. package/dist/lib/node/{chunk-DXL5TDFP.cjs → chunk-DOC5XEZ4.cjs} +32 -18
  43. package/dist/lib/node/chunk-DOC5XEZ4.cjs.map +7 -0
  44. package/dist/lib/node/{chunk-USFHJG7C.cjs → chunk-NCHF433F.cjs} +207 -190
  45. package/dist/lib/node/chunk-NCHF433F.cjs.map +7 -0
  46. package/dist/lib/node/{chunk-7GQGM4ZF.cjs → chunk-NL5Y4EDX.cjs} +5 -4
  47. package/dist/lib/node/chunk-NL5Y4EDX.cjs.map +7 -0
  48. package/dist/lib/node/chunk-ULJZPATP.cjs +312 -0
  49. package/dist/lib/node/chunk-ULJZPATP.cjs.map +7 -0
  50. package/dist/lib/node/{chunk-COQYISES.cjs → chunk-XHWVT7LW.cjs} +137 -67
  51. package/dist/lib/node/chunk-XHWVT7LW.cjs.map +7 -0
  52. package/dist/lib/node/{identity-created-UXEAUGC7.cjs → identity-created-FF4WZ2WY.cjs} +8 -10
  53. package/dist/lib/node/identity-created-FF4WZ2WY.cjs.map +7 -0
  54. package/dist/lib/node/index.cjs +130 -119
  55. package/dist/lib/node/index.cjs.map +4 -4
  56. package/dist/lib/node/{intent-resolver-VPVZSSIL.cjs → intent-resolver-AV4CMM3Z.cjs} +99 -79
  57. package/dist/lib/node/intent-resolver-AV4CMM3Z.cjs.map +7 -0
  58. package/dist/lib/node/meta.json +1 -1
  59. package/dist/lib/node/{react-root-JXLRINF3.cjs → react-root-RQUU3A45.cjs} +10 -10
  60. package/dist/lib/node/{react-surface-ZIYDBL3C.cjs → react-surface-AZFJLE72.cjs} +119 -58
  61. package/dist/lib/node/react-surface-AZFJLE72.cjs.map +7 -0
  62. package/dist/lib/node/{schema-defs-XLFBG3XK.cjs → schema-defs-OB2X2HBH.cjs} +6 -6
  63. package/dist/lib/node/{schema-tools-ZG6Z2QRC.cjs → schema-tools-IYREN4IH.cjs} +9 -8
  64. package/dist/lib/node/schema-tools-IYREN4IH.cjs.map +7 -0
  65. package/dist/lib/node/{settings-FOH7EB5C.cjs → settings-P2EQ7VKQ.cjs} +7 -7
  66. package/dist/lib/node/settings-P2EQ7VKQ.cjs.map +7 -0
  67. package/dist/lib/node/{spaces-ready-VXQYCBII.cjs → spaces-ready-DXPOHYV7.cjs} +26 -27
  68. package/dist/lib/node/spaces-ready-DXPOHYV7.cjs.map +7 -0
  69. package/dist/lib/node/{state-ZT3MTZXB.cjs → state-M35DK75Z.cjs} +6 -6
  70. package/dist/lib/node/types/index.cjs +11 -13
  71. package/dist/lib/node/types/index.cjs.map +2 -2
  72. package/dist/lib/node-esm/{app-graph-builder-E7CCGPQJ.mjs → app-graph-builder-BCHVZ4OM.mjs} +49 -14
  73. package/dist/lib/node-esm/app-graph-builder-BCHVZ4OM.mjs.map +7 -0
  74. package/dist/lib/node-esm/{app-graph-serializer-UCMSLPIA.mjs → app-graph-serializer-TXRGGNP2.mjs} +13 -13
  75. package/dist/lib/node-esm/app-graph-serializer-TXRGGNP2.mjs.map +7 -0
  76. package/dist/lib/node-esm/chunk-3CP67AYY.mjs +19 -0
  77. package/dist/lib/node-esm/chunk-3CP67AYY.mjs.map +7 -0
  78. package/dist/lib/node-esm/{chunk-4X4Y63ND.mjs → chunk-BSLREHIX.mjs} +2 -1
  79. package/dist/lib/node-esm/chunk-BSLREHIX.mjs.map +7 -0
  80. package/dist/lib/node-esm/chunk-D4QMPPS7.mjs +285 -0
  81. package/dist/lib/node-esm/chunk-D4QMPPS7.mjs.map +7 -0
  82. package/dist/lib/node-esm/{chunk-XAZNQ3QN.mjs → chunk-HO7AIKQS.mjs} +112 -43
  83. package/dist/lib/node-esm/chunk-HO7AIKQS.mjs.map +7 -0
  84. package/dist/lib/node-esm/{chunk-OSPEGYX3.mjs → chunk-JBQKU4K5.mjs} +29 -17
  85. package/dist/lib/node-esm/chunk-JBQKU4K5.mjs.map +7 -0
  86. package/dist/lib/node-esm/{chunk-BE2BLE7K.mjs → chunk-LA6AVVH6.mjs} +157 -141
  87. package/dist/lib/node-esm/chunk-LA6AVVH6.mjs.map +7 -0
  88. package/dist/lib/node-esm/{identity-created-ZECO4NH3.mjs → identity-created-35CTAQWI.mjs} +5 -9
  89. package/dist/lib/node-esm/identity-created-35CTAQWI.mjs.map +7 -0
  90. package/dist/lib/node-esm/index.mjs +61 -51
  91. package/dist/lib/node-esm/index.mjs.map +4 -4
  92. package/dist/lib/node-esm/{intent-resolver-SK5LP5ZK.mjs → intent-resolver-JO6L2VXC.mjs} +66 -45
  93. package/dist/lib/node-esm/intent-resolver-JO6L2VXC.mjs.map +7 -0
  94. package/dist/lib/node-esm/meta.json +1 -1
  95. package/dist/lib/node-esm/{react-root-K2KRGIT7.mjs → react-root-YFGL3B4J.mjs} +5 -5
  96. package/dist/lib/node-esm/{react-surface-XNUWZCSH.mjs → react-surface-CVAPDLEZ.mjs} +79 -19
  97. package/dist/lib/node-esm/react-surface-CVAPDLEZ.mjs.map +7 -0
  98. package/dist/lib/node-esm/{schema-defs-QZJS6UXN.mjs → schema-defs-4MEJETVX.mjs} +2 -2
  99. package/dist/lib/node-esm/{schema-tools-2Y4D42PD.mjs → schema-tools-SRLCRZ3B.mjs} +7 -6
  100. package/dist/lib/node-esm/schema-tools-SRLCRZ3B.mjs.map +7 -0
  101. package/dist/lib/node-esm/{settings-Q4XDFSYD.mjs → settings-TD76LTQS.mjs} +4 -4
  102. package/dist/lib/node-esm/settings-TD76LTQS.mjs.map +7 -0
  103. package/dist/lib/node-esm/{spaces-ready-JHKPD4PH.mjs → spaces-ready-FJMGPAVV.mjs} +12 -13
  104. package/dist/lib/node-esm/spaces-ready-FJMGPAVV.mjs.map +7 -0
  105. package/dist/lib/node-esm/{state-4ATRHSKA.mjs → state-XQNDCN37.mjs} +2 -2
  106. package/dist/lib/node-esm/types/index.mjs +1 -3
  107. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  108. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  109. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/capabilities.d.ts +8 -1
  111. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  112. package/dist/types/src/capabilities/identity-created.d.ts.map +1 -1
  113. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  114. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  115. package/dist/types/src/capabilities/schema-tools.d.ts.map +1 -1
  116. package/dist/types/src/capabilities/settings.d.ts.map +1 -1
  117. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  118. package/dist/types/src/components/CollectionMain.d.ts +2 -2
  119. package/dist/types/src/components/CollectionMain.d.ts.map +1 -1
  120. package/dist/types/src/components/CollectionSection.d.ts +2 -2
  121. package/dist/types/src/components/CollectionSection.d.ts.map +1 -1
  122. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +3 -3
  123. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  124. package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
  125. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +8 -7
  126. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  127. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
  128. package/dist/types/src/components/MembersContainer.d.ts.map +1 -1
  129. package/dist/types/src/components/MenuFooter.d.ts +2 -2
  130. package/dist/types/src/components/MenuFooter.d.ts.map +1 -1
  131. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts +2 -2
  132. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +1 -1
  133. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts +2 -2
  134. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +1 -1
  135. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts +2 -2
  136. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts.map +1 -1
  137. package/dist/types/src/components/SchemaContainer.d.ts +2 -2
  138. package/dist/types/src/components/SchemaContainer.d.ts.map +1 -1
  139. package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
  140. package/dist/types/src/components/SpacePresence.d.ts +2 -2
  141. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  142. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  143. package/dist/types/src/events.d.ts +1 -3
  144. package/dist/types/src/events.d.ts.map +1 -1
  145. package/dist/types/src/translations.d.ts +275 -2
  146. package/dist/types/src/translations.d.ts.map +1 -1
  147. package/dist/types/src/types/index.d.ts +0 -1
  148. package/dist/types/src/types/index.d.ts.map +1 -1
  149. package/dist/types/src/types/types.d.ts +81 -12
  150. package/dist/types/src/types/types.d.ts.map +1 -1
  151. package/dist/types/src/util.d.ts +16 -11
  152. package/dist/types/src/util.d.ts.map +1 -1
  153. package/package.json +45 -45
  154. package/src/{SpacePlugin.tsx → SpacePlugin.ts} +30 -10
  155. package/src/capabilities/app-graph-builder.ts +74 -20
  156. package/src/capabilities/app-graph-serializer.ts +11 -8
  157. package/src/capabilities/capabilities.ts +6 -1
  158. package/src/capabilities/identity-created.ts +5 -4
  159. package/src/capabilities/intent-resolver.ts +60 -36
  160. package/src/capabilities/react-surface.tsx +105 -29
  161. package/src/capabilities/schema-tools.ts +3 -2
  162. package/src/capabilities/settings.ts +6 -2
  163. package/src/capabilities/spaces-ready.ts +7 -8
  164. package/src/components/CollectionMain.tsx +3 -3
  165. package/src/components/CollectionSection.tsx +2 -2
  166. package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +7 -6
  167. package/src/components/CreateDialog/CreateObjectDialog.tsx +31 -25
  168. package/src/components/CreateDialog/CreateObjectPanel.tsx +45 -52
  169. package/src/components/CreateDialog/CreateSpaceDialog.tsx +6 -5
  170. package/src/components/MembersContainer.tsx +4 -2
  171. package/src/components/MenuFooter.tsx +3 -2
  172. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +12 -4
  173. package/src/components/ObjectSettings/BaseObjectSettings.tsx +7 -7
  174. package/src/components/ObjectSettings/ObjectSettingsContainer.tsx +4 -4
  175. package/src/components/SchemaContainer.tsx +3 -3
  176. package/src/components/SpacePluginSettings.tsx +24 -19
  177. package/src/components/SpacePresence.tsx +22 -15
  178. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +2 -1
  179. package/src/events.ts +1 -5
  180. package/src/translations.ts +30 -14
  181. package/src/types/index.ts +0 -1
  182. package/src/types/types.ts +32 -11
  183. package/src/util.tsx +136 -57
  184. package/dist/lib/browser/app-graph-builder-DCWUULKX.mjs.map +0 -7
  185. package/dist/lib/browser/app-graph-serializer-MLU7XI2P.mjs.map +0 -7
  186. package/dist/lib/browser/chunk-3LN4LJN6.mjs.map +0 -7
  187. package/dist/lib/browser/chunk-N5QMRLKI.mjs.map +0 -7
  188. package/dist/lib/browser/chunk-VEBKN45O.mjs.map +0 -7
  189. package/dist/lib/browser/chunk-W46VVHFM.mjs +0 -288
  190. package/dist/lib/browser/chunk-W46VVHFM.mjs.map +0 -7
  191. package/dist/lib/browser/chunk-ZQEIXWBK.mjs.map +0 -7
  192. package/dist/lib/browser/identity-created-O63SIYOF.mjs.map +0 -7
  193. package/dist/lib/browser/intent-resolver-PG473BRV.mjs.map +0 -7
  194. package/dist/lib/browser/react-surface-QOP7T66K.mjs.map +0 -7
  195. package/dist/lib/browser/schema-tools-JIEMHUXV.mjs.map +0 -7
  196. package/dist/lib/browser/settings-2IN2WLUK.mjs.map +0 -7
  197. package/dist/lib/browser/spaces-ready-L4QAGTDE.mjs.map +0 -7
  198. package/dist/lib/node/app-graph-builder-WC445X77.cjs.map +0 -7
  199. package/dist/lib/node/app-graph-serializer-UPQOQVMJ.cjs.map +0 -7
  200. package/dist/lib/node/chunk-7GQGM4ZF.cjs.map +0 -7
  201. package/dist/lib/node/chunk-COQYISES.cjs.map +0 -7
  202. package/dist/lib/node/chunk-DXL5TDFP.cjs.map +0 -7
  203. package/dist/lib/node/chunk-FXHI7JNY.cjs +0 -315
  204. package/dist/lib/node/chunk-FXHI7JNY.cjs.map +0 -7
  205. package/dist/lib/node/chunk-USFHJG7C.cjs.map +0 -7
  206. package/dist/lib/node/identity-created-UXEAUGC7.cjs.map +0 -7
  207. package/dist/lib/node/intent-resolver-VPVZSSIL.cjs.map +0 -7
  208. package/dist/lib/node/react-surface-ZIYDBL3C.cjs.map +0 -7
  209. package/dist/lib/node/schema-tools-ZG6Z2QRC.cjs.map +0 -7
  210. package/dist/lib/node/settings-FOH7EB5C.cjs.map +0 -7
  211. package/dist/lib/node/spaces-ready-VXQYCBII.cjs.map +0 -7
  212. package/dist/lib/node-esm/app-graph-builder-E7CCGPQJ.mjs.map +0 -7
  213. package/dist/lib/node-esm/app-graph-serializer-UCMSLPIA.mjs.map +0 -7
  214. package/dist/lib/node-esm/chunk-4X4Y63ND.mjs.map +0 -7
  215. package/dist/lib/node-esm/chunk-BE2BLE7K.mjs.map +0 -7
  216. package/dist/lib/node-esm/chunk-FTELJGEG.mjs +0 -289
  217. package/dist/lib/node-esm/chunk-FTELJGEG.mjs.map +0 -7
  218. package/dist/lib/node-esm/chunk-OSPEGYX3.mjs.map +0 -7
  219. package/dist/lib/node-esm/chunk-XAZNQ3QN.mjs.map +0 -7
  220. package/dist/lib/node-esm/identity-created-ZECO4NH3.mjs.map +0 -7
  221. package/dist/lib/node-esm/intent-resolver-SK5LP5ZK.mjs.map +0 -7
  222. package/dist/lib/node-esm/react-surface-XNUWZCSH.mjs.map +0 -7
  223. package/dist/lib/node-esm/schema-tools-2Y4D42PD.mjs.map +0 -7
  224. package/dist/lib/node-esm/settings-Q4XDFSYD.mjs.map +0 -7
  225. package/dist/lib/node-esm/spaces-ready-JHKPD4PH.mjs.map +0 -7
  226. package/dist/types/src/types/collection.d.ts +0 -15
  227. package/dist/types/src/types/collection.d.ts.map +0 -1
  228. package/src/types/collection.ts +0 -18
  229. /package/dist/lib/browser/{react-root-FRDC4UXB.mjs.map → react-root-QIKHSNT2.mjs.map} +0 -0
  230. /package/dist/lib/browser/{schema-defs-JMN74RNK.mjs.map → schema-defs-WREJNMIC.mjs.map} +0 -0
  231. /package/dist/lib/browser/{state-6HOSHLIN.mjs.map → state-HRZ4VRXU.mjs.map} +0 -0
  232. /package/dist/lib/node/{react-root-JXLRINF3.cjs.map → react-root-RQUU3A45.cjs.map} +0 -0
  233. /package/dist/lib/node/{schema-defs-XLFBG3XK.cjs.map → schema-defs-OB2X2HBH.cjs.map} +0 -0
  234. /package/dist/lib/node/{state-ZT3MTZXB.cjs.map → state-M35DK75Z.cjs.map} +0 -0
  235. /package/dist/lib/node-esm/{react-root-K2KRGIT7.mjs.map → react-root-YFGL3B4J.mjs.map} +0 -0
  236. /package/dist/lib/node-esm/{schema-defs-QZJS6UXN.mjs.map → schema-defs-4MEJETVX.mjs.map} +0 -0
  237. /package/dist/lib/node-esm/{state-4ATRHSKA.mjs.map → state-XQNDCN37.mjs.map} +0 -0
@@ -26,26 +26,26 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var react_root_JXLRINF3_exports = {};
30
- __export(react_root_JXLRINF3_exports, {
29
+ var react_root_RQUU3A45_exports = {};
30
+ __export(react_root_RQUU3A45_exports, {
31
31
  default: () => react_root_default
32
32
  });
33
- module.exports = __toCommonJS(react_root_JXLRINF3_exports);
34
- var import_chunk_USFHJG7C = require("./chunk-USFHJG7C.cjs");
33
+ module.exports = __toCommonJS(react_root_RQUU3A45_exports);
34
+ var import_chunk_NCHF433F = require("./chunk-NCHF433F.cjs");
35
35
  var import_chunk_5WLAXYE3 = require("./chunk-5WLAXYE3.cjs");
36
- var import_chunk_7GQGM4ZF = require("./chunk-7GQGM4ZF.cjs");
37
- var import_chunk_COQYISES = require("./chunk-COQYISES.cjs");
38
- var import_chunk_FXHI7JNY = require("./chunk-FXHI7JNY.cjs");
36
+ var import_chunk_NL5Y4EDX = require("./chunk-NL5Y4EDX.cjs");
37
+ var import_chunk_XHWVT7LW = require("./chunk-XHWVT7LW.cjs");
38
+ var import_chunk_ULJZPATP = require("./chunk-ULJZPATP.cjs");
39
39
  var import_chunk_6P2DB4QQ = require("./chunk-6P2DB4QQ.cjs");
40
40
  var import_react = __toESM(require("react"));
41
41
  var import_app_framework = require("@dxos/app-framework");
42
42
  var react_root_default = () => (0, import_app_framework.contributes)(import_app_framework.Capabilities.ReactRoot, {
43
43
  id: import_chunk_6P2DB4QQ.SPACE_PLUGIN,
44
44
  root: () => {
45
- const state = (0, import_app_framework.useCapability)(import_chunk_7GQGM4ZF.SpaceCapabilities.State);
46
- return state.awaiting ? /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.AwaitingObject, {
45
+ const state = (0, import_app_framework.useCapability)(import_chunk_NL5Y4EDX.SpaceCapabilities.State);
46
+ return state.awaiting ? /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.AwaitingObject, {
47
47
  id: state.awaiting
48
48
  }) : null;
49
49
  }
50
50
  });
51
- //# sourceMappingURL=react-root-JXLRINF3.cjs.map
51
+ //# sourceMappingURL=react-root-RQUU3A45.cjs.map
@@ -26,37 +26,45 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  mod
27
27
  ));
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var react_surface_ZIYDBL3C_exports = {};
30
- __export(react_surface_ZIYDBL3C_exports, {
29
+ var react_surface_AZFJLE72_exports = {};
30
+ __export(react_surface_AZFJLE72_exports, {
31
31
  default: () => react_surface_default
32
32
  });
33
- module.exports = __toCommonJS(react_surface_ZIYDBL3C_exports);
34
- var import_chunk_USFHJG7C = require("./chunk-USFHJG7C.cjs");
33
+ module.exports = __toCommonJS(react_surface_AZFJLE72_exports);
34
+ var import_chunk_NCHF433F = require("./chunk-NCHF433F.cjs");
35
35
  var import_chunk_5WLAXYE3 = require("./chunk-5WLAXYE3.cjs");
36
- var import_chunk_7GQGM4ZF = require("./chunk-7GQGM4ZF.cjs");
37
- var import_chunk_COQYISES = require("./chunk-COQYISES.cjs");
38
- var import_chunk_FXHI7JNY = require("./chunk-FXHI7JNY.cjs");
36
+ var import_chunk_NL5Y4EDX = require("./chunk-NL5Y4EDX.cjs");
37
+ var import_chunk_XHWVT7LW = require("./chunk-XHWVT7LW.cjs");
38
+ var import_chunk_ULJZPATP = require("./chunk-ULJZPATP.cjs");
39
39
  var import_chunk_6P2DB4QQ = require("./chunk-6P2DB4QQ.cjs");
40
40
  var import_react = __toESM(require("react"));
41
41
  var import_app_framework = require("@dxos/app-framework");
42
- var import_echo_schema = require("@dxos/echo-schema");
42
+ var import_echo = require("@dxos/echo");
43
43
  var import_effect = require("@dxos/effect");
44
44
  var import_local_storage = require("@dxos/local-storage");
45
- var import_echo = require("@dxos/react-client/echo");
45
+ var import_plugin_client = require("@dxos/plugin-client");
46
+ var import_react_client = require("@dxos/react-client");
47
+ var import_echo2 = require("@dxos/react-client/echo");
46
48
  var import_react_ui = require("@dxos/react-ui");
49
+ var import_react_ui_form = require("@dxos/react-ui-form");
47
50
  var import_react_ui_pickers = require("@dxos/react-ui-pickers");
51
+ var import_schema = require("@dxos/schema");
52
+ var OMIT = [
53
+ import_echo.Type.getTypename(import_schema.DataType.Collection),
54
+ import_echo.Type.getTypename(import_schema.DataType.QueryCollection)
55
+ ];
48
56
  var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framework.contributes)(import_app_framework.Capabilities.ReactSurface, [
49
57
  (0, import_app_framework.createSurface)({
50
58
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/article`,
51
59
  role: "article",
52
60
  filter: (data) => (
53
61
  // TODO(wittjosiah): Need to avoid shotgun parsing space state everywhere.
54
- (0, import_echo.isSpace)(data.subject) && data.subject.state.get() === import_echo.SpaceState.SPACE_READY
62
+ (0, import_echo2.isSpace)(data.subject) && data.subject.state.get() === import_echo2.SpaceState.SPACE_READY
55
63
  ),
56
64
  component: ({ data, role, ...rest }) => /* @__PURE__ */ import_react.default.createElement(import_app_framework.Surface, {
57
65
  data: {
58
66
  id: data.subject.id,
59
- subject: data.subject.properties[import_chunk_FXHI7JNY.CollectionType.typename]?.target
67
+ subject: data.subject.properties[import_echo.Type.getTypename(import_schema.DataType.Collection)]?.target
60
68
  },
61
69
  role,
62
70
  ...rest
@@ -66,8 +74,8 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
66
74
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/collection-fallback`,
67
75
  role: "article",
68
76
  position: "fallback",
69
- filter: (data) => (0, import_echo_schema.isInstanceOf)(import_chunk_FXHI7JNY.CollectionType, data.subject),
70
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.CollectionMain, {
77
+ filter: (data) => import_echo.Obj.instanceOf(import_schema.DataType.Collection, data.subject),
78
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.CollectionMain, {
71
79
  collection: data.subject
72
80
  })
73
81
  }),
@@ -75,15 +83,15 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
75
83
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/plugin-settings`,
76
84
  role: "article",
77
85
  filter: (data) => data.subject instanceof import_local_storage.SettingsStore && data.subject.prefix === import_chunk_6P2DB4QQ.SPACE_PLUGIN,
78
- component: ({ data: { subject } }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.SpacePluginSettings, {
86
+ component: ({ data: { subject } }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.SpacePluginSettings, {
79
87
  settings: subject.value
80
88
  })
81
89
  }),
82
90
  (0, import_app_framework.createSurface)({
83
91
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/companion/object-settings`,
84
92
  role: "article",
85
- filter: (data) => (0, import_echo.isEchoObject)(data.companionTo) && data.subject === "settings",
86
- component: ({ data, role }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.ObjectSettingsContainer, {
93
+ filter: (data) => import_echo.Obj.isObject(data.companionTo) && data.subject === "settings",
94
+ component: ({ data, role }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.ObjectSettingsContainer, {
87
95
  object: data.companionTo,
88
96
  role
89
97
  })
@@ -94,12 +102,12 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
94
102
  filter: (data) => data.subject === `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/properties`,
95
103
  component: () => {
96
104
  const layout = (0, import_app_framework.useLayout)();
97
- const { spaceId } = (0, import_echo.parseId)(layout.workspace);
98
- const space = (0, import_echo.useSpace)(spaceId);
105
+ const { spaceId } = (0, import_echo2.parseId)(layout.workspace);
106
+ const space = (0, import_echo2.useSpace)(spaceId);
99
107
  if (!space || !spaceId) {
100
108
  return null;
101
109
  }
102
- return /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.SpaceSettingsContainer, {
110
+ return /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.SpaceSettingsContainer, {
103
111
  space
104
112
  });
105
113
  }
@@ -111,12 +119,12 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
111
119
  filter: (data) => data.subject === `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/members`,
112
120
  component: () => {
113
121
  const layout = (0, import_app_framework.useLayout)();
114
- const { spaceId } = (0, import_echo.parseId)(layout.workspace);
115
- const space = (0, import_echo.useSpace)(spaceId);
122
+ const { spaceId } = (0, import_echo2.parseId)(layout.workspace);
123
+ const space = (0, import_echo2.useSpace)(spaceId);
116
124
  if (!space || !spaceId) {
117
125
  return null;
118
126
  }
119
- return /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.MembersContainer, {
127
+ return /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.MembersContainer, {
120
128
  space,
121
129
  createInvitationUrl
122
130
  });
@@ -128,39 +136,39 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
128
136
  filter: (data) => data.subject === `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/schema`,
129
137
  component: () => {
130
138
  const layout = (0, import_app_framework.useLayout)();
131
- const { spaceId } = (0, import_echo.parseId)(layout.workspace);
132
- const space = (0, import_echo.useSpace)(spaceId);
139
+ const { spaceId } = (0, import_echo2.parseId)(layout.workspace);
140
+ const space = (0, import_echo2.useSpace)(spaceId);
133
141
  if (!space || !spaceId) {
134
142
  return null;
135
143
  }
136
- return /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.SchemaContainer, {
144
+ return /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.SchemaContainer, {
137
145
  space
138
146
  });
139
147
  }
140
148
  }),
141
149
  (0, import_app_framework.createSurface)({
142
- id: import_chunk_USFHJG7C.JOIN_DIALOG,
150
+ id: import_chunk_NCHF433F.JOIN_DIALOG,
143
151
  role: "dialog",
144
- filter: (data) => data.component === import_chunk_USFHJG7C.JOIN_DIALOG,
145
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.JoinDialog, data.props)
152
+ filter: (data) => data.component === import_chunk_NCHF433F.JOIN_DIALOG,
153
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.JoinDialog, data.props)
146
154
  }),
147
155
  (0, import_app_framework.createSurface)({
148
- id: import_chunk_USFHJG7C.CREATE_SPACE_DIALOG,
156
+ id: import_chunk_NCHF433F.CREATE_SPACE_DIALOG,
149
157
  role: "dialog",
150
- filter: (data) => data.component === import_chunk_USFHJG7C.CREATE_SPACE_DIALOG,
151
- component: () => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.CreateSpaceDialog, null)
158
+ filter: (data) => data.component === import_chunk_NCHF433F.CREATE_SPACE_DIALOG,
159
+ component: () => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.CreateSpaceDialog, null)
152
160
  }),
153
161
  (0, import_app_framework.createSurface)({
154
- id: import_chunk_USFHJG7C.CREATE_OBJECT_DIALOG,
162
+ id: import_chunk_NCHF433F.CREATE_OBJECT_DIALOG,
155
163
  role: "dialog",
156
- filter: (data) => data.component === import_chunk_USFHJG7C.CREATE_OBJECT_DIALOG,
157
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.CreateObjectDialog, data.props)
164
+ filter: (data) => data.component === import_chunk_NCHF433F.CREATE_OBJECT_DIALOG,
165
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.CreateObjectDialog, data.props)
158
166
  }),
159
167
  (0, import_app_framework.createSurface)({
160
168
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/create-initial-space-form-[hue]`,
161
169
  role: "form-input",
162
170
  filter: (data) => {
163
- const annotation = (0, import_effect.findAnnotation)(data.schema.ast, import_chunk_FXHI7JNY.HueAnnotationId);
171
+ const annotation = (0, import_effect.findAnnotation)(data.schema.ast, import_chunk_ULJZPATP.HueAnnotationId);
164
172
  return !!annotation;
165
173
  },
166
174
  component: ({ data: _, ...inputProps }) => {
@@ -183,7 +191,7 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
183
191
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/create-initial-space-form-[icon]`,
184
192
  role: "form-input",
185
193
  filter: (data) => {
186
- const annotation = (0, import_effect.findAnnotation)(data.schema.ast, import_chunk_FXHI7JNY.IconAnnotationId);
194
+ const annotation = (0, import_effect.findAnnotation)(data.schema.ast, import_chunk_ULJZPATP.IconAnnotationId);
187
195
  return !!annotation;
188
196
  },
189
197
  component: ({ data: _, ...inputProps }) => {
@@ -203,36 +211,89 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
203
211
  }
204
212
  }),
205
213
  (0, import_app_framework.createSurface)({
206
- id: import_chunk_USFHJG7C.POPOVER_RENAME_SPACE,
214
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/typename-form-input`,
215
+ role: "form-input",
216
+ filter: (data) => {
217
+ if (data.prop !== "typename") {
218
+ return false;
219
+ }
220
+ const annotation = (0, import_effect.findAnnotation)(data.schema.ast, import_schema.TypenameAnnotationId);
221
+ return !!annotation;
222
+ },
223
+ component: ({ data: { schema, target }, ...inputProps }) => {
224
+ const { t } = (0, import_react_ui.useTranslation)();
225
+ const client = (0, import_react_client.useClient)();
226
+ const props = inputProps;
227
+ const space = (0, import_echo2.isSpace)(target) ? target : (0, import_echo2.getSpace)(target);
228
+ if (!space) {
229
+ return null;
230
+ }
231
+ const annotation = (0, import_effect.findAnnotation)(schema.ast, import_schema.TypenameAnnotationId);
232
+ const schemaWhitelists = (0, import_app_framework.useCapabilities)(import_plugin_client.ClientCapabilities.SchemaWhiteList);
233
+ const whitelistedTypenames = (0, import_react.useMemo)(() => new Set(schemaWhitelists.flatMap((typeArray) => typeArray.map((type) => type.typename))), [
234
+ schemaWhitelists
235
+ ]);
236
+ const objectForms = (0, import_app_framework.useCapabilities)(import_chunk_NL5Y4EDX.SpaceCapabilities.ObjectForm);
237
+ const objectFormTypenames = (0, import_react.useMemo)(() => new Set(objectForms.map((form) => import_echo.Type.getTypename(form.objectSchema)).filter((typename) => !OMIT.includes(typename))), [
238
+ objectForms
239
+ ]);
240
+ const fixed = client.graph.schemaRegistry.schemas.filter((schema2) => {
241
+ const limitedStatic = annotation.includes("limited-static") && whitelistedTypenames.has(import_echo.Type.getTypename(schema2));
242
+ const objectForm = annotation.includes("object-form") && objectFormTypenames.has(import_echo.Type.getTypename(schema2));
243
+ return annotation.includes("static") || limitedStatic || objectForm;
244
+ });
245
+ const dynamic = space?.db.schemaRegistry.query().runSync();
246
+ const typenames = Array.from(/* @__PURE__ */ new Set([
247
+ ...annotation.includes("limited-static") || annotation.includes("static") || annotation.includes("object-form") ? fixed.map((schema2) => import_echo.Type.getTypename(schema2)) : [],
248
+ ...annotation.includes("dynamic") ? dynamic.map((schema2) => schema2.typename) : []
249
+ ])).sort();
250
+ const options = (0, import_react.useMemo)(() => typenames.map((typename) => ({
251
+ value: typename,
252
+ label: t("typename label", {
253
+ ns: typename,
254
+ defaultValue: typename
255
+ })
256
+ })), [
257
+ t,
258
+ typenames
259
+ ]);
260
+ return /* @__PURE__ */ import_react.default.createElement(import_react_ui_form.SelectInput, {
261
+ ...props,
262
+ options
263
+ });
264
+ }
265
+ }),
266
+ (0, import_app_framework.createSurface)({
267
+ id: import_chunk_NCHF433F.POPOVER_RENAME_SPACE,
207
268
  role: "popover",
208
- filter: (data) => data.component === import_chunk_USFHJG7C.POPOVER_RENAME_SPACE && (0, import_echo.isSpace)(data.props),
209
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.PopoverRenameSpace, {
269
+ filter: (data) => data.component === import_chunk_NCHF433F.POPOVER_RENAME_SPACE && (0, import_echo2.isSpace)(data.props),
270
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.PopoverRenameSpace, {
210
271
  space: data.props
211
272
  })
212
273
  }),
213
274
  (0, import_app_framework.createSurface)({
214
- id: import_chunk_USFHJG7C.POPOVER_RENAME_OBJECT,
275
+ id: import_chunk_NCHF433F.POPOVER_RENAME_OBJECT,
215
276
  role: "popover",
216
- filter: (data) => data.component === import_chunk_USFHJG7C.POPOVER_RENAME_OBJECT && (0, import_echo.isLiveObject)(data.props),
217
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.PopoverRenameObject, {
277
+ filter: (data) => data.component === import_chunk_NCHF433F.POPOVER_RENAME_OBJECT && (0, import_echo2.isLiveObject)(data.props),
278
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.PopoverRenameObject, {
218
279
  object: data.props
219
280
  })
220
281
  }),
221
282
  (0, import_app_framework.createSurface)({
222
283
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/menu-footer`,
223
284
  role: "menu-footer",
224
- filter: (data) => (0, import_echo.isEchoObject)(data.subject),
225
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.MenuFooter, {
285
+ filter: (data) => import_echo.Obj.isObject(data.subject),
286
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.MenuFooter, {
226
287
  object: data.subject
227
288
  })
228
289
  }),
229
290
  (0, import_app_framework.createSurface)({
230
291
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/navtree-presence`,
231
292
  role: "navtree-item-end",
232
- filter: (data) => typeof data.id === "string" && (0, import_echo.isEchoObject)(data.subject),
293
+ filter: (data) => typeof data.id === "string" && import_echo.Obj.isObject(data.subject),
233
294
  component: ({ data }) => {
234
- const state = (0, import_app_framework.useCapability)(import_chunk_7GQGM4ZF.SpaceCapabilities.MutableState);
235
- return /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.SmallPresenceLive, {
295
+ const state = (0, import_app_framework.useCapability)(import_chunk_NL5Y4EDX.SpaceCapabilities.MutableState);
296
+ return /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.SmallPresenceLive, {
236
297
  id: data.id,
237
298
  open: data.open,
238
299
  viewers: state.viewersByObject[data.id]
@@ -245,7 +306,7 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
245
306
  role: "navtree-item-end",
246
307
  position: "fallback",
247
308
  filter: (data) => typeof data.id === "string",
248
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.SmallPresenceLive, {
309
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.SmallPresenceLive, {
249
310
  id: data.id,
250
311
  open: data.open
251
312
  })
@@ -254,8 +315,8 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
254
315
  (0, import_app_framework.createSurface)({
255
316
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/navtree-sync-status`,
256
317
  role: "navtree-item-end",
257
- filter: (data) => (0, import_echo.isSpace)(data.subject),
258
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.InlineSyncStatus, {
318
+ filter: (data) => (0, import_echo2.isSpace)(data.subject),
319
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.InlineSyncStatus, {
259
320
  space: data.subject,
260
321
  open: data.open
261
322
  })
@@ -264,11 +325,11 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
264
325
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/navbar-presence`,
265
326
  role: "navbar-end",
266
327
  position: "hoist",
267
- filter: (data) => (0, import_echo.isSpace)(data.subject) || (0, import_echo.isEchoObject)(data.subject),
328
+ filter: (data) => (0, import_echo2.isSpace)(data.subject) || import_echo.Obj.isObject(data.subject),
268
329
  component: ({ data }) => {
269
- const space = (0, import_echo.isSpace)(data.subject) ? data.subject : (0, import_echo.getSpace)(data.subject);
270
- const object = (0, import_echo.isSpace)(data.subject) ? data.subject.state.get() === import_echo.SpaceState.SPACE_READY ? space?.properties[import_chunk_FXHI7JNY.CollectionType.typename]?.target : void 0 : data.subject;
271
- return object ? /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.SpacePresence, {
330
+ const space = (0, import_echo2.isSpace)(data.subject) ? data.subject : (0, import_echo2.getSpace)(data.subject);
331
+ const object = (0, import_echo2.isSpace)(data.subject) ? data.subject.state.get() === import_echo2.SpaceState.SPACE_READY ? space?.properties[import_echo.Type.getTypename(import_schema.DataType.Collection)]?.target : void 0 : data.subject;
332
+ return object ? /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.SpacePresence, {
272
333
  object
273
334
  }) : null;
274
335
  }
@@ -276,15 +337,15 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
276
337
  (0, import_app_framework.createSurface)({
277
338
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/collection-section`,
278
339
  role: "section",
279
- filter: (data) => (0, import_echo_schema.isInstanceOf)(import_chunk_FXHI7JNY.CollectionType, data.subject),
280
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.CollectionSection, {
340
+ filter: (data) => import_echo.Obj.instanceOf(import_schema.DataType.Collection, data.subject),
341
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.CollectionSection, {
281
342
  collection: data.subject
282
343
  })
283
344
  }),
284
345
  (0, import_app_framework.createSurface)({
285
346
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/status`,
286
347
  role: "status",
287
- component: () => /* @__PURE__ */ import_react.default.createElement(import_chunk_USFHJG7C.SyncStatus, null)
348
+ component: () => /* @__PURE__ */ import_react.default.createElement(import_chunk_NCHF433F.SyncStatus, null)
288
349
  })
289
350
  ]);
290
- //# sourceMappingURL=react-surface-ZIYDBL3C.cjs.map
351
+ //# sourceMappingURL=react-surface-AZFJLE72.cjs.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 Schema } from 'effect';\nimport React, { useCallback, useMemo } from 'react';\n\nimport {\n Capabilities,\n contributes,\n createSurface,\n Surface,\n useCapabilities,\n useCapability,\n useLayout,\n} from '@dxos/app-framework';\nimport { Obj, Type } from '@dxos/echo';\nimport { findAnnotation } from '@dxos/effect';\nimport { SettingsStore } from '@dxos/local-storage';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { useClient } from '@dxos/react-client';\nimport { getSpace, isLiveObject, isSpace, parseId, SpaceState, useSpace, type Space } from '@dxos/react-client/echo';\nimport { Input, useTranslation } from '@dxos/react-ui';\nimport { type InputProps, SelectInput } from '@dxos/react-ui-form';\nimport { HuePicker, IconPicker } from '@dxos/react-ui-pickers';\nimport { DataType, type TypenameAnnotation, TypenameAnnotationId } from '@dxos/schema';\nimport { type JoinPanelProps } from '@dxos/shell/react';\n\nimport { SpaceCapabilities } from './capabilities';\nimport {\n CollectionMain,\n CollectionSection,\n CREATE_OBJECT_DIALOG,\n CREATE_SPACE_DIALOG,\n CreateObjectDialog,\n CreateSpaceDialog,\n InlineSyncStatus,\n JOIN_DIALOG,\n JoinDialog,\n MembersContainer,\n MenuFooter,\n ObjectSettingsContainer,\n POPOVER_RENAME_OBJECT,\n POPOVER_RENAME_SPACE,\n PopoverRenameObject,\n PopoverRenameSpace,\n SchemaContainer,\n SmallPresenceLive,\n SpacePluginSettings,\n SpacePresence,\n SpaceSettingsContainer,\n SyncStatus,\n type CreateObjectDialogProps,\n} from '../components';\nimport { SPACE_PLUGIN } from '../meta';\nimport { HueAnnotationId, IconAnnotationId, type SpaceSettingsProps } from '../types';\n\ntype ReactSurfaceOptions = {\n createInvitationUrl: (invitationCode: string) => string;\n};\n\nconst OMIT = [Type.getTypename(DataType.Collection), Type.getTypename(DataType.QueryCollection)];\n\nexport default ({ createInvitationUrl }: ReactSurfaceOptions) =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${SPACE_PLUGIN}/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[Type.getTypename(DataType.Collection)]?.target,\n }}\n role={role}\n {...rest}\n />\n ),\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/collection-fallback`,\n role: 'article',\n position: 'fallback',\n filter: (data): data is { subject: DataType.Collection } => Obj.instanceOf(DataType.Collection, data.subject),\n component: ({ data }) => <CollectionMain collection={data.subject} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/plugin-settings`,\n role: 'article',\n filter: (data): data is { subject: SettingsStore<SpaceSettingsProps> } =>\n data.subject instanceof SettingsStore && data.subject.prefix === SPACE_PLUGIN,\n component: ({ data: { subject } }) => <SpacePluginSettings settings={subject.value} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/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: `${SPACE_PLUGIN}/space-settings-properties`,\n role: 'article',\n filter: (data): data is { subject: string } => data.subject === `${SPACE_PLUGIN}/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: `${SPACE_PLUGIN}/space-settings-members`,\n role: 'article',\n position: 'hoist',\n filter: (data): data is { subject: string } => data.subject === `${SPACE_PLUGIN}/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: `${SPACE_PLUGIN}/space-settings-schema`,\n role: 'article',\n filter: (data): data is { subject: string } => data.subject === `${SPACE_PLUGIN}/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: 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: `${SPACE_PLUGIN}/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, disabled, 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={disabled} value={getValue() ?? ''} onChange={handleChange} onReset={handleReset} />\n </Input.Root>\n );\n },\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/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, disabled, 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={disabled} value={getValue() ?? ''} onChange={handleChange} onReset={handleReset} />\n </Input.Root>\n );\n },\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/typename-form-input`,\n role: 'form-input',\n filter: (\n data,\n ): data is { prop: string; schema: Schema.Schema<any>; target: Space | DataType.Collection | undefined } => {\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 { t } = useTranslation();\n const client = useClient();\n const props = inputProps as any as InputProps;\n const space = isSpace(target) ? target : getSpace(target);\n if (!space) {\n return null;\n }\n\n const annotation = findAnnotation<TypenameAnnotation[]>(schema.ast, TypenameAnnotationId)!;\n\n const schemaWhitelists = useCapabilities(ClientCapabilities.SchemaWhiteList);\n const whitelistedTypenames = useMemo(\n () => new Set(schemaWhitelists.flatMap((typeArray) => typeArray.map((type) => type.typename))),\n [schemaWhitelists],\n );\n\n const objectForms = useCapabilities(SpaceCapabilities.ObjectForm);\n const objectFormTypenames = useMemo(\n () =>\n new Set(\n objectForms\n .map((form) => Type.getTypename(form.objectSchema))\n // TODO(wittjosiah): Remove.\n .filter((typename) => !OMIT.includes(typename)),\n ),\n [objectForms],\n );\n\n const fixed = client.graph.schemaRegistry.schemas.filter((schema) => {\n const limitedStatic =\n annotation.includes('limited-static') && whitelistedTypenames.has(Type.getTypename(schema));\n const objectForm = annotation.includes('object-form') && objectFormTypenames.has(Type.getTypename(schema));\n return annotation.includes('static') || limitedStatic || objectForm;\n });\n const dynamic = space?.db.schemaRegistry.query().runSync();\n const typenames = Array.from(\n new Set<string>([\n ...(annotation.includes('limited-static') ||\n annotation.includes('static') ||\n annotation.includes('object-form')\n ? fixed.map((schema) => Type.getTypename(schema))\n : []),\n ...(annotation.includes('dynamic') ? dynamic.map((schema) => schema.typename) : []),\n ]),\n ).sort();\n\n const options = useMemo(\n () =>\n typenames.map((typename) => ({\n value: typename,\n label: t('typename label', { ns: typename, defaultValue: typename }),\n })),\n [t, typenames],\n );\n\n return <SelectInput {...props} options={options} />;\n },\n }),\n createSurface({\n id: POPOVER_RENAME_SPACE,\n role: 'popover',\n filter: (data): data is { props: Space } => data.component === POPOVER_RENAME_SPACE && isSpace(data.props),\n component: ({ data }) => <PopoverRenameSpace space={data.props} />,\n }),\n createSurface({\n id: POPOVER_RENAME_OBJECT,\n role: 'popover',\n filter: (data): data is { props: Obj.Any } =>\n data.component === POPOVER_RENAME_OBJECT && isLiveObject(data.props),\n component: ({ data }) => <PopoverRenameObject object={data.props} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/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: `${SPACE_PLUGIN}/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: `${SPACE_PLUGIN}/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: `${SPACE_PLUGIN}/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: `${SPACE_PLUGIN}/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[Type.getTypename(DataType.Collection)]?.target as DataType.Collection)\n : undefined\n : data.subject;\n\n return object ? <SpacePresence object={object} /> : null;\n },\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/collection-section`,\n role: 'section',\n filter: (data): data is { subject: DataType.Collection } => Obj.instanceOf(DataType.Collection, data.subject),\n component: ({ data }) => <CollectionSection collection={data.subject} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/status`,\n role: 'status',\n component: () => <SyncStatus />,\n }),\n ]);\n"],
5
+ "mappings": "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",
6
+ "names": ["import_echo", "OMIT", "Type", "getTypename", "DataType", "Collection", "QueryCollection", "createInvitationUrl", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "SPACE_PLUGIN", "role", "filter", "data", "isSpace", "subject", "state", "get", "SpaceState", "SPACE_READY", "component", "rest", "React", "Surface", "properties", "target", "position", "Obj", "instanceOf", "CollectionMain", "collection", "SettingsStore", "prefix", "SpacePluginSettings", "settings", "value", "isObject", "companionTo", "ObjectSettingsContainer", "object", "layout", "useLayout", "spaceId", "parseId", "workspace", "space", "useSpace", "SpaceSettingsContainer", "MembersContainer", "SchemaContainer", "JOIN_DIALOG", "JoinDialog", "props", "CREATE_SPACE_DIALOG", "CreateSpaceDialog", "CREATE_OBJECT_DIALOG", "CreateObjectDialog", "annotation", "findAnnotation", "schema", "ast", "HueAnnotationId", "_", "inputProps", "label", "disabled", "type", "getValue", "onValueChange", "handleChange", "useCallback", "nextHue", "handleReset", "undefined", "Input", "Root", "Label", "HuePicker", "onChange", "onReset", "IconAnnotationId", "nextIcon", "IconPicker", "prop", "TypenameAnnotationId", "t", "useTranslation", "client", "useClient", "getSpace", "schemaWhitelists", "useCapabilities", "ClientCapabilities", "SchemaWhiteList", "whitelistedTypenames", "useMemo", "Set", "flatMap", "typeArray", "map", "typename", "objectForms", "SpaceCapabilities", "ObjectForm", "objectFormTypenames", "form", "objectSchema", "includes", "fixed", "graph", "schemaRegistry", "schemas", "limitedStatic", "has", "objectForm", "dynamic", "db", "query", "runSync", "typenames", "Array", "from", "sort", "options", "ns", "defaultValue", "SelectInput", "POPOVER_RENAME_SPACE", "PopoverRenameSpace", "POPOVER_RENAME_OBJECT", "isLiveObject", "PopoverRenameObject", "MenuFooter", "useCapability", "MutableState", "SmallPresenceLive", "open", "viewers", "viewersByObject", "InlineSyncStatus", "SpacePresence", "CollectionSection", "SyncStatus"]
7
+ }
@@ -16,12 +16,12 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var schema_defs_XLFBG3XK_exports = {};
20
- __export(schema_defs_XLFBG3XK_exports, {
19
+ var schema_defs_OB2X2HBH_exports = {};
20
+ __export(schema_defs_OB2X2HBH_exports, {
21
21
  default: () => schema_defs_default
22
22
  });
23
- module.exports = __toCommonJS(schema_defs_XLFBG3XK_exports);
24
- var import_chunk_7GQGM4ZF = require("./chunk-7GQGM4ZF.cjs");
23
+ module.exports = __toCommonJS(schema_defs_OB2X2HBH_exports);
24
+ var import_chunk_NL5Y4EDX = require("./chunk-NL5Y4EDX.cjs");
25
25
  var import_chunk_6P2DB4QQ = require("./chunk-6P2DB4QQ.cjs");
26
26
  var import_app_framework = require("@dxos/app-framework");
27
27
  var import_plugin_client = require("@dxos/plugin-client");
@@ -29,7 +29,7 @@ var schema_defs_default = (context) => {
29
29
  const registry = context.getCapability(import_app_framework.Capabilities.RxRegistry);
30
30
  const client = context.getCapability(import_plugin_client.ClientCapabilities.Client);
31
31
  let previous = [];
32
- const cancel = registry.subscribe(context.capabilities(import_chunk_7GQGM4ZF.SpaceCapabilities.ObjectForm), (_forms) => {
32
+ const cancel = registry.subscribe(context.capabilities(import_chunk_NL5Y4EDX.SpaceCapabilities.ObjectForm), (_forms) => {
33
33
  const forms = Array.from(new Set(_forms));
34
34
  const newSchemas = forms.filter((form) => !previous.includes(form)).map((form) => form.objectSchema);
35
35
  previous = forms;
@@ -39,4 +39,4 @@ var schema_defs_default = (context) => {
39
39
  });
40
40
  return (0, import_app_framework.contributes)(import_app_framework.Capabilities.Null, null, () => cancel());
41
41
  };
42
- //# sourceMappingURL=schema-defs-XLFBG3XK.cjs.map
42
+ //# sourceMappingURL=schema-defs-OB2X2HBH.cjs.map
@@ -16,15 +16,16 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var schema_tools_ZG6Z2QRC_exports = {};
20
- __export(schema_tools_ZG6Z2QRC_exports, {
19
+ var schema_tools_IYREN4IH_exports = {};
20
+ __export(schema_tools_IYREN4IH_exports, {
21
21
  TypeNameSchema: () => TypeNameSchema,
22
22
  default: () => schema_tools_default
23
23
  });
24
- module.exports = __toCommonJS(schema_tools_ZG6Z2QRC_exports);
24
+ module.exports = __toCommonJS(schema_tools_IYREN4IH_exports);
25
25
  var import_effect = require("effect");
26
26
  var import_ai = require("@dxos/ai");
27
27
  var import_app_framework = require("@dxos/app-framework");
28
+ var import_echo = require("@dxos/echo");
28
29
  var import_echo_schema = require("@dxos/echo-schema");
29
30
  var import_invariant = require("@dxos/invariant");
30
31
  var import_react_ui_theme = require("@dxos/react-ui-theme");
@@ -39,7 +40,7 @@ var TypeNameSchema = import_effect.Schema.String.pipe(import_effect.Schema.patte
39
40
  ]
40
41
  }));
41
42
  var formatDescription = `The format of the property. Additional information:
42
- ${import_echo_schema.FormatEnum.GeoPoint}: ${JSON.stringify((0, import_echo_schema.toJsonSchema)(import_echo_schema.GeoPoint))}
43
+ ${import_echo_schema.FormatEnum.GeoPoint}: ${JSON.stringify(import_echo.Type.toJsonSchema(import_echo.Type.Format.GeoPoint))}
43
44
  This tuple is GeoJSON. You must specify \`${import_echo_schema.FormatEnum.GeoPoint}\` as [Longitude, Latitude]`;
44
45
  var PropertyDefinitionSchema = import_effect.Schema.Struct({
45
46
  name: import_effect.Schema.String.annotations({
@@ -64,7 +65,7 @@ var schema_tools_default = () => (0, import_app_framework.contributes)(import_ap
64
65
  execute: async (_input, { extensions }) => {
65
66
  (0, import_invariant.invariant)(extensions?.space, "No space.", {
66
67
  F: __dxlog_file,
67
- L: 67,
68
+ L: 68,
68
69
  S: void 0,
69
70
  A: [
70
71
  "extensions?.space",
@@ -91,7 +92,7 @@ var schema_tools_default = () => (0, import_app_framework.contributes)(import_ap
91
92
  execute: async ({ typename }, { extensions }) => {
92
93
  (0, import_invariant.invariant)(extensions?.space, "No space.", {
93
94
  F: __dxlog_file,
94
- L: 89,
95
+ L: 90,
95
96
  S: void 0,
96
97
  A: [
97
98
  "extensions?.space",
@@ -123,7 +124,7 @@ var schema_tools_default = () => (0, import_app_framework.contributes)(import_ap
123
124
  execute: async ({ typename, properties }, { extensions }) => {
124
125
  (0, import_invariant.invariant)(extensions?.space, "No space.", {
125
126
  F: __dxlog_file,
126
- L: 115,
127
+ L: 116,
127
128
  S: void 0,
128
129
  A: [
129
130
  "extensions?.space",
@@ -143,4 +144,4 @@ var schema_tools_default = () => (0, import_app_framework.contributes)(import_ap
143
144
  0 && (module.exports = {
144
145
  TypeNameSchema
145
146
  });
146
- //# sourceMappingURL=schema-tools-ZG6Z2QRC.cjs.map
147
+ //# sourceMappingURL=schema-tools-IYREN4IH.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/schema-tools.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema, SchemaAST } from 'effect';\n\nimport { createTool, ToolResult } from '@dxos/ai';\nimport { Capabilities, contributes, type PromiseIntentDispatcher } from '@dxos/app-framework';\nimport { type Space } from '@dxos/client/echo';\nimport { Type } from '@dxos/echo';\nimport { FormatEnum, FormatEnums, SelectOptionSchema } from '@dxos/echo-schema';\nimport { invariant } from '@dxos/invariant';\nimport { hues } from '@dxos/react-ui-theme';\nimport { getSchemaFromPropertyDefinitions } from '@dxos/schema';\n\n// TODO(burdon): Factor out.\ndeclare global {\n interface ToolContextExtensions {\n space?: Space;\n dispatch?: PromiseIntentDispatcher;\n }\n}\n\n// TODO(ZaymonFC): Move this somewhere common.\nexport const TypeNameSchema = Schema.String.pipe(\n Schema.pattern(/^\\w+\\.\\w{2,}\\/[\\w/]+$/i),\n Schema.annotations({\n title: 'TypeName',\n description:\n 'Domain-style type name path. Dashes are not allowed. Use camel case for the final component of the type name.',\n [SchemaAST.ExamplesAnnotationId]: ['example.com/type/Document', 'example.com/type/FlightList'],\n }),\n);\n\nconst formatDescription = `The format of the property. Additional information:\n ${FormatEnum.GeoPoint}: ${JSON.stringify(Type.toJsonSchema(Type.Format.GeoPoint))}\n This tuple is GeoJSON. You must specify \\`${FormatEnum.GeoPoint}\\` as [Longitude, Latitude]`;\n\n// TODO(ZaymonFC): All properties are default optional, but maybe we should allow for required properties.\nconst PropertyDefinitionSchema = Schema.Struct({\n name: Schema.String.annotations({ description: 'The name of the property.' }),\n format: Schema.Union(...FormatEnums.map((format) => Schema.Literal(format))).annotations({\n description: formatDescription,\n }),\n config: Schema.optional(\n Schema.Struct({\n options: Schema.optional(\n Schema.Array(SelectOptionSchema)\n .annotations({\n description: `Options for SingleSelect/MultiSelect formats. Available colors: ${hues.join(', ')}`,\n })\n .pipe(Schema.mutable),\n ),\n }),\n ),\n}).pipe(Schema.mutable);\n\nconst SYSTEM_NAMESPACE = 'dxos.org/echo/schema';\n\nexport default () =>\n contributes(Capabilities.Tools, [\n createTool(SYSTEM_NAMESPACE, {\n name: 'list',\n description: 'List registered schemas in the space.',\n caption: 'Listing registered schemas...',\n schema: Schema.Struct({}),\n execute: async (_input, { extensions }) => {\n invariant(extensions?.space, 'No space.');\n const space = extensions.space;\n\n const schemas = await space.db.schemaRegistry.query({}).run();\n return ToolResult.Success(\n schemas.map((schema) => ({\n typename: schema.typename,\n version: schema.version,\n })),\n );\n },\n }),\n createTool(SYSTEM_NAMESPACE, {\n name: 'get',\n description: 'Get a specific schema by its typename.',\n caption: 'Getting schema...',\n schema: Schema.Struct({\n typename: Schema.String.annotations({\n description: 'The fully qualified typename of the schema.',\n }),\n }),\n execute: async ({ typename }, { extensions }) => {\n invariant(extensions?.space, 'No space.');\n const space = extensions.space;\n\n const schema = await space.db.schemaRegistry.query({ typename }).firstOrUndefined();\n if (!schema) {\n return ToolResult.Error(`Schema not found: ${typename}`);\n }\n\n return ToolResult.Success(schema);\n },\n }),\n createTool(SYSTEM_NAMESPACE, {\n name: 'create',\n description: 'Create a new schema with the provided definition.',\n caption: 'Creating schema...',\n schema: Schema.Struct({\n typename: TypeNameSchema.annotations({\n description:\n 'The fully qualified schema typename. Must start with a domain, and then one or more path components (e.g., \"example.com/type/TypeName\").',\n }),\n properties: Schema.Array(PropertyDefinitionSchema).pipe(\n Schema.annotations({ description: 'Array of property definitions for the schema.' }),\n Schema.mutable,\n ),\n }),\n execute: async ({ typename, properties }, { extensions }) => {\n invariant(extensions?.space, 'No space.');\n const space = extensions.space;\n\n const schema = getSchemaFromPropertyDefinitions(typename, properties);\n const [registeredSchema] = await space.db.schemaRegistry.register([schema]);\n\n return ToolResult.Success(registeredSchema);\n },\n }),\n ]);\n"],
5
+ "mappings": "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",
6
+ "names": ["TypeNameSchema", "Schema", "String", "pipe", "pattern", "annotations", "title", "description", "SchemaAST", "ExamplesAnnotationId", "formatDescription", "FormatEnum", "GeoPoint", "JSON", "stringify", "Type", "toJsonSchema", "Format", "PropertyDefinitionSchema", "Struct", "name", "format", "Union", "FormatEnums", "map", "Literal", "config", "optional", "options", "Array", "SelectOptionSchema", "hues", "join", "mutable", "SYSTEM_NAMESPACE", "contributes", "Capabilities", "Tools", "createTool", "caption", "schema", "execute", "_input", "extensions", "invariant", "space", "schemas", "db", "schemaRegistry", "query", "run", "ToolResult", "Success", "typename", "version", "firstOrUndefined", "Error", "properties", "getSchemaFromPropertyDefinitions", "registeredSchema", "register"]
7
+ }
@@ -16,12 +16,12 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var settings_FOH7EB5C_exports = {};
20
- __export(settings_FOH7EB5C_exports, {
19
+ var settings_P2EQ7VKQ_exports = {};
20
+ __export(settings_P2EQ7VKQ_exports, {
21
21
  default: () => settings_default
22
22
  });
23
- module.exports = __toCommonJS(settings_FOH7EB5C_exports);
24
- var import_chunk_FXHI7JNY = require("./chunk-FXHI7JNY.cjs");
23
+ module.exports = __toCommonJS(settings_P2EQ7VKQ_exports);
24
+ var import_chunk_ULJZPATP = require("./chunk-ULJZPATP.cjs");
25
25
  var import_chunk_6P2DB4QQ = require("./chunk-6P2DB4QQ.cjs");
26
26
  var import_app_framework = require("@dxos/app-framework");
27
27
  var import_live_object = require("@dxos/live-object");
@@ -30,9 +30,9 @@ var settings_default = () => {
30
30
  showHidden: false
31
31
  });
32
32
  return (0, import_app_framework.contributes)(import_app_framework.Capabilities.Settings, {
33
- schema: import_chunk_FXHI7JNY.SpaceSettingsSchema,
34
- prefix: import_chunk_6P2DB4QQ.SPACE_PLUGIN,
33
+ prefix: import_chunk_6P2DB4QQ.meta.id,
34
+ schema: import_chunk_ULJZPATP.SpaceSettingsSchema,
35
35
  value: settings
36
36
  });
37
37
  };
38
- //# sourceMappingURL=settings-FOH7EB5C.cjs.map
38
+ //# sourceMappingURL=settings-P2EQ7VKQ.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/settings.ts"],
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,2BAA0C;AAC1C,yBAAqB;AAKrB,IAAA,mBAAe,MAAA;AACb,QAAMA,eAAWC,yBAAyB;IACxCC,YAAY;EACd,CAAA;AAEA,aAAOC,kCAAYC,kCAAaC,UAAU;IACxCC,QAAQC,2BAAKC;IACbC,QAAQC;IACRC,OAAOX;EACT,CAAA;AACF;",
6
+ "names": ["settings", "live", "showHidden", "contributes", "Capabilities", "Settings", "prefix", "meta", "id", "schema", "SpaceSettingsSchema", "value"]
7
+ }