@dxos/plugin-space 0.8.1-main.ba2dec9 → 0.8.1-staging.31c3ee1

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 (256) hide show
  1. package/dist/lib/browser/{app-graph-builder-MGK5HWPZ.mjs → app-graph-builder-GMFCSOLG.mjs} +33 -6
  2. package/dist/lib/browser/app-graph-builder-GMFCSOLG.mjs.map +7 -0
  3. package/dist/lib/browser/{app-graph-serializer-FOWFLYGU.mjs → app-graph-serializer-DSF2U3A5.mjs} +7 -7
  4. package/dist/lib/browser/{app-graph-serializer-FOWFLYGU.mjs.map → app-graph-serializer-DSF2U3A5.mjs.map} +2 -2
  5. package/dist/lib/browser/{chunk-UDWHTKB5.mjs → chunk-5BDV575R.mjs} +22 -16
  6. package/dist/lib/browser/chunk-5BDV575R.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-ULA2UQJ4.mjs → chunk-AYW4IDRT.mjs} +15 -65
  8. package/dist/lib/browser/chunk-AYW4IDRT.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-PCEP3KQY.mjs → chunk-DVZEJGCK.mjs} +854 -587
  10. package/dist/lib/browser/chunk-DVZEJGCK.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-NU7WDVGN.mjs → chunk-KVRYWFZU.mjs} +3 -3
  12. package/dist/lib/browser/chunk-KVRYWFZU.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-23RVI5FZ.mjs → chunk-LO5UL6RU.mjs} +49 -16
  14. package/dist/lib/browser/chunk-LO5UL6RU.mjs.map +7 -0
  15. package/dist/lib/browser/{chunk-PQXZCNAU.mjs → chunk-PTKYMZWO.mjs} +1 -1
  16. package/dist/lib/browser/chunk-PTKYMZWO.mjs.map +7 -0
  17. package/dist/lib/browser/{identity-created-FYGS6TBH.mjs → identity-created-JR7BNXFH.mjs} +3 -3
  18. package/dist/lib/browser/index.mjs +40 -45
  19. package/dist/lib/browser/index.mjs.map +3 -3
  20. package/dist/lib/browser/{intent-resolver-GPNAQ2SG.mjs → intent-resolver-OG62I5IL.mjs} +69 -44
  21. package/dist/lib/browser/intent-resolver-OG62I5IL.mjs.map +7 -0
  22. package/dist/lib/browser/meta.json +1 -1
  23. package/dist/lib/browser/{react-root-4CCSD7TZ.mjs → react-root-VPSIJ6EU.mjs} +6 -6
  24. package/dist/lib/browser/{react-surface-FKMRI3WV.mjs → react-surface-KOSYP574.mjs} +39 -38
  25. package/dist/lib/browser/react-surface-KOSYP574.mjs.map +7 -0
  26. package/dist/lib/browser/{schema-5W3DSY2E.mjs → schema-FHTA26SW.mjs} +3 -3
  27. package/dist/lib/browser/schema-tools-YAXPRIXP.mjs +123 -0
  28. package/dist/lib/browser/schema-tools-YAXPRIXP.mjs.map +7 -0
  29. package/dist/lib/browser/{settings-PHPCXX33.mjs → settings-PJPTJUPE.mjs} +3 -3
  30. package/dist/lib/browser/{spaces-ready-K47RR7N2.mjs → spaces-ready-BSSP7HHG.mjs} +8 -8
  31. package/dist/lib/browser/spaces-ready-BSSP7HHG.mjs.map +7 -0
  32. package/dist/lib/browser/{state-INJ63O57.mjs → state-X7VLCC6E.mjs} +5 -3
  33. package/dist/lib/browser/state-X7VLCC6E.mjs.map +7 -0
  34. package/dist/lib/browser/types/index.mjs +2 -10
  35. package/dist/lib/node/{app-graph-builder-ZIUBXRPA.cjs → app-graph-builder-DPY7AUZE.cjs} +73 -46
  36. package/dist/lib/node/app-graph-builder-DPY7AUZE.cjs.map +7 -0
  37. package/dist/lib/node/{app-graph-serializer-VQOGHKXL.cjs → app-graph-serializer-JELGJUAY.cjs} +21 -21
  38. package/dist/lib/node/{app-graph-serializer-VQOGHKXL.cjs.map → app-graph-serializer-JELGJUAY.cjs.map} +2 -2
  39. package/dist/lib/node/{chunk-WZR6OAN3.cjs → chunk-6P2DB4QQ.cjs} +4 -4
  40. package/dist/lib/node/{chunk-WZR6OAN3.cjs.map → chunk-6P2DB4QQ.cjs.map} +2 -2
  41. package/dist/lib/node/{chunk-QE4GVR6C.cjs → chunk-APYLLIMY.cjs} +919 -657
  42. package/dist/lib/node/chunk-APYLLIMY.cjs.map +7 -0
  43. package/dist/lib/node/{chunk-YZKNRFHU.cjs → chunk-IKIDS6XF.cjs} +10 -10
  44. package/dist/lib/node/chunk-IKIDS6XF.cjs.map +7 -0
  45. package/dist/lib/node/{chunk-U6DYXAR3.cjs → chunk-PU2EYH4E.cjs} +27 -21
  46. package/dist/lib/node/chunk-PU2EYH4E.cjs.map +7 -0
  47. package/dist/lib/node/{chunk-OVGKWJOC.cjs → chunk-TUZWEPGX.cjs} +99 -66
  48. package/dist/lib/node/chunk-TUZWEPGX.cjs.map +7 -0
  49. package/dist/lib/node/{chunk-WAJKBO3J.cjs → chunk-WDEIFDTX.cjs} +19 -73
  50. package/dist/lib/node/chunk-WDEIFDTX.cjs.map +7 -0
  51. package/dist/lib/node/{identity-created-AXI64BLE.cjs → identity-created-XU4HFV2T.cjs} +7 -7
  52. package/dist/lib/node/index.cjs +105 -111
  53. package/dist/lib/node/index.cjs.map +3 -3
  54. package/dist/lib/node/{intent-resolver-ICHHI6I6.cjs → intent-resolver-UMF6MLOH.cjs} +133 -107
  55. package/dist/lib/node/intent-resolver-UMF6MLOH.cjs.map +7 -0
  56. package/dist/lib/node/meta.json +1 -1
  57. package/dist/lib/node/{react-root-TCBTUOOJ.cjs → react-root-ZRFHMM7R.cjs} +12 -12
  58. package/dist/lib/node/{react-surface-JSCCIZS5.cjs → react-surface-72U57CIU.cjs} +78 -76
  59. package/dist/lib/node/react-surface-72U57CIU.cjs.map +7 -0
  60. package/dist/lib/node/{schema-YN7WVFRX.cjs → schema-PPJ5BZ3A.cjs} +7 -7
  61. package/dist/lib/node/schema-tools-BLIMOZYY.cjs +146 -0
  62. package/dist/lib/node/schema-tools-BLIMOZYY.cjs.map +7 -0
  63. package/dist/lib/node/{settings-5QYFWNH7.cjs → settings-WVFP2UEP.cjs} +8 -8
  64. package/dist/lib/node/{spaces-ready-FQNAKR7G.cjs → spaces-ready-7DNZSUOG.cjs} +16 -16
  65. package/dist/lib/node/spaces-ready-7DNZSUOG.cjs.map +7 -0
  66. package/dist/lib/node/{state-57UE3DYE.cjs → state-5KX6WBJH.cjs} +10 -8
  67. package/dist/lib/node/state-5KX6WBJH.cjs.map +7 -0
  68. package/dist/lib/node/types/index.cjs +13 -21
  69. package/dist/lib/node/types/index.cjs.map +2 -2
  70. package/dist/lib/node-esm/{app-graph-builder-TERVM2SL.mjs → app-graph-builder-42IGWRPL.mjs} +33 -6
  71. package/dist/lib/node-esm/app-graph-builder-42IGWRPL.mjs.map +7 -0
  72. package/dist/lib/node-esm/{app-graph-serializer-GZRSWHEN.mjs → app-graph-serializer-FXONFKOE.mjs} +7 -7
  73. package/dist/lib/node-esm/{app-graph-serializer-GZRSWHEN.mjs.map → app-graph-serializer-FXONFKOE.mjs.map} +2 -2
  74. package/dist/lib/node-esm/{chunk-2TQ2AJEZ.mjs → chunk-3ZOUV4DF.mjs} +22 -16
  75. package/dist/lib/node-esm/chunk-3ZOUV4DF.mjs.map +7 -0
  76. package/dist/lib/node-esm/{chunk-TRNZQEEN.mjs → chunk-FC4UHDPL.mjs} +15 -65
  77. package/dist/lib/node-esm/chunk-FC4UHDPL.mjs.map +7 -0
  78. package/dist/lib/node-esm/{chunk-HJCEJNW3.mjs → chunk-HMCIZ7G7.mjs} +854 -587
  79. package/dist/lib/node-esm/chunk-HMCIZ7G7.mjs.map +7 -0
  80. package/dist/lib/node-esm/{chunk-ICCM4YRJ.mjs → chunk-MSWEFAPD.mjs} +1 -1
  81. package/dist/lib/node-esm/chunk-MSWEFAPD.mjs.map +7 -0
  82. package/dist/lib/node-esm/{chunk-6RSVVEPS.mjs → chunk-PIYAWT5N.mjs} +3 -3
  83. package/dist/lib/node-esm/chunk-PIYAWT5N.mjs.map +7 -0
  84. package/dist/lib/node-esm/{chunk-PGH5L7MV.mjs → chunk-ZGLK25WQ.mjs} +49 -16
  85. package/dist/lib/node-esm/chunk-ZGLK25WQ.mjs.map +7 -0
  86. package/dist/lib/node-esm/{identity-created-3CGEXNPO.mjs → identity-created-WJKAS2PV.mjs} +3 -3
  87. package/dist/lib/node-esm/index.mjs +40 -45
  88. package/dist/lib/node-esm/index.mjs.map +3 -3
  89. package/dist/lib/node-esm/{intent-resolver-VR42K5GE.mjs → intent-resolver-67C5MOIE.mjs} +69 -44
  90. package/dist/lib/node-esm/intent-resolver-67C5MOIE.mjs.map +7 -0
  91. package/dist/lib/node-esm/meta.json +1 -1
  92. package/dist/lib/node-esm/{react-root-THJBSTQS.mjs → react-root-XPRWMZGT.mjs} +6 -6
  93. package/dist/lib/node-esm/{react-surface-Z3BBQ5HX.mjs → react-surface-MUE6M34Y.mjs} +39 -38
  94. package/dist/lib/node-esm/react-surface-MUE6M34Y.mjs.map +7 -0
  95. package/dist/lib/node-esm/{schema-LOR2EVGY.mjs → schema-OUZKVYM5.mjs} +3 -3
  96. package/dist/lib/node-esm/schema-tools-IU7EX5A5.mjs +125 -0
  97. package/dist/lib/node-esm/schema-tools-IU7EX5A5.mjs.map +7 -0
  98. package/dist/lib/node-esm/{settings-H6MXTEQM.mjs → settings-FJZPC2TV.mjs} +3 -3
  99. package/dist/lib/node-esm/{spaces-ready-HKAQG5SA.mjs → spaces-ready-7X5PGB2V.mjs} +8 -8
  100. package/dist/lib/node-esm/spaces-ready-7X5PGB2V.mjs.map +7 -0
  101. package/dist/lib/node-esm/{state-VYA6OFHD.mjs → state-Z6E2YTNC.mjs} +5 -3
  102. package/dist/lib/node-esm/state-Z6E2YTNC.mjs.map +7 -0
  103. package/dist/lib/node-esm/types/index.mjs +2 -10
  104. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  105. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  106. package/dist/types/src/capabilities/capabilities.d.ts +4 -3
  107. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  108. package/dist/types/src/capabilities/index.d.ts +1 -1
  109. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  110. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -2
  111. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  112. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  113. package/dist/types/src/capabilities/schema-tool.test.d.ts +2 -0
  114. package/dist/types/src/capabilities/schema-tool.test.d.ts.map +1 -0
  115. package/dist/types/src/capabilities/schema-tools.d.ts +13 -0
  116. package/dist/types/src/capabilities/schema-tools.d.ts.map +1 -0
  117. package/dist/types/src/capabilities/state.d.ts.map +1 -1
  118. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  119. package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
  120. package/dist/types/src/components/MembersContainer.d.ts +7 -0
  121. package/dist/types/src/components/MembersContainer.d.ts.map +1 -0
  122. package/dist/types/src/components/MembersContainer.stories.d.ts +8 -0
  123. package/dist/types/src/components/MembersContainer.stories.d.ts.map +1 -0
  124. package/dist/types/src/components/ObjectSettingsContainer/AdvancedObjectSettings.d.ts.map +1 -0
  125. package/dist/types/src/components/ObjectSettingsContainer/BaseObjectSettings.d.ts +8 -0
  126. package/dist/types/src/components/ObjectSettingsContainer/BaseObjectSettings.d.ts.map +1 -0
  127. package/dist/types/src/components/ObjectSettingsContainer/ForeignKeys.d.ts.map +1 -0
  128. package/dist/types/src/components/ObjectSettingsContainer/ObjectSettingsContainer.d.ts +8 -0
  129. package/dist/types/src/components/ObjectSettingsContainer/ObjectSettingsContainer.d.ts.map +1 -0
  130. package/dist/types/src/components/ObjectSettingsContainer/index.d.ts +2 -0
  131. package/dist/types/src/components/ObjectSettingsContainer/index.d.ts.map +1 -0
  132. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  133. package/dist/types/src/components/SpaceSettings/SpacePropertiesForm.d.ts +7 -0
  134. package/dist/types/src/components/SpaceSettings/SpacePropertiesForm.d.ts.map +1 -0
  135. package/dist/types/src/components/SpaceSettings/SpacePropertiesForm.stories.d.ts +7 -0
  136. package/dist/types/src/components/SpaceSettings/SpacePropertiesForm.stories.d.ts.map +1 -0
  137. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts +9 -0
  138. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -0
  139. package/dist/types/src/components/SpaceSettings/index.d.ts +2 -2
  140. package/dist/types/src/components/SpaceSettings/index.d.ts.map +1 -1
  141. package/dist/types/src/components/index.d.ts +2 -2
  142. package/dist/types/src/components/index.d.ts.map +1 -1
  143. package/dist/types/src/events.d.ts +1 -1
  144. package/dist/types/src/events.d.ts.map +1 -1
  145. package/dist/types/src/meta.d.ts +2 -5
  146. package/dist/types/src/meta.d.ts.map +1 -1
  147. package/dist/types/src/translations.d.ts +53 -36
  148. package/dist/types/src/translations.d.ts.map +1 -1
  149. package/dist/types/src/types/thread.d.ts +92 -197
  150. package/dist/types/src/types/thread.d.ts.map +1 -1
  151. package/dist/types/src/types/types.d.ts +10 -0
  152. package/dist/types/src/types/types.d.ts.map +1 -1
  153. package/dist/types/src/util.d.ts +12 -0
  154. package/dist/types/src/util.d.ts.map +1 -1
  155. package/package.json +44 -39
  156. package/src/SpacePlugin.tsx +12 -11
  157. package/src/capabilities/app-graph-builder.ts +20 -0
  158. package/src/capabilities/app-graph-serializer.ts +2 -2
  159. package/src/capabilities/capabilities.ts +3 -3
  160. package/src/capabilities/index.ts +1 -0
  161. package/src/capabilities/intent-resolver.ts +66 -38
  162. package/src/capabilities/react-surface.tsx +30 -28
  163. package/src/capabilities/schema-tool.test.ts +45 -0
  164. package/src/capabilities/schema-tools.ts +124 -0
  165. package/src/capabilities/spaces-ready.ts +3 -3
  166. package/src/capabilities/state.ts +2 -0
  167. package/src/components/CreateDialog/CreateObjectDialog.tsx +3 -6
  168. package/src/components/CreateDialog/CreateObjectPanel.tsx +6 -6
  169. package/src/components/JoinDialog.tsx +43 -27
  170. package/src/components/MembersContainer.stories.tsx +34 -0
  171. package/src/components/MembersContainer.tsx +255 -0
  172. package/src/components/{AdvancedObjectSettings → ObjectSettingsContainer}/AdvancedObjectSettings.tsx +2 -2
  173. package/src/components/ObjectSettingsContainer/BaseObjectSettings.tsx +47 -0
  174. package/src/components/ObjectSettingsContainer/ObjectSettingsContainer.tsx +36 -0
  175. package/src/components/ObjectSettingsContainer/index.ts +5 -0
  176. package/src/components/PopoverRenameObject.tsx +1 -1
  177. package/src/components/SpacePresence.tsx +25 -23
  178. package/src/components/SpaceSettings/{SpaceSettingsPanel.stories.tsx → SpacePropertiesForm.stories.tsx} +6 -6
  179. package/src/components/SpaceSettings/SpacePropertiesForm.tsx +136 -0
  180. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +63 -0
  181. package/src/components/SpaceSettings/index.ts +2 -2
  182. package/src/components/SyncStatus/SyncStatus.tsx +1 -1
  183. package/src/components/SyncStatus/save-tracker.ts +5 -5
  184. package/src/components/index.ts +2 -2
  185. package/src/events.ts +2 -2
  186. package/src/meta.ts +2 -2
  187. package/src/translations.ts +21 -12
  188. package/src/types/thread.ts +2 -56
  189. package/src/types/types.ts +15 -6
  190. package/src/util.tsx +30 -9
  191. package/dist/lib/browser/app-graph-builder-MGK5HWPZ.mjs.map +0 -7
  192. package/dist/lib/browser/chunk-23RVI5FZ.mjs.map +0 -7
  193. package/dist/lib/browser/chunk-NU7WDVGN.mjs.map +0 -7
  194. package/dist/lib/browser/chunk-PCEP3KQY.mjs.map +0 -7
  195. package/dist/lib/browser/chunk-PQXZCNAU.mjs.map +0 -7
  196. package/dist/lib/browser/chunk-UDWHTKB5.mjs.map +0 -7
  197. package/dist/lib/browser/chunk-ULA2UQJ4.mjs.map +0 -7
  198. package/dist/lib/browser/intent-resolver-GPNAQ2SG.mjs.map +0 -7
  199. package/dist/lib/browser/react-surface-FKMRI3WV.mjs.map +0 -7
  200. package/dist/lib/browser/spaces-ready-K47RR7N2.mjs.map +0 -7
  201. package/dist/lib/browser/state-INJ63O57.mjs.map +0 -7
  202. package/dist/lib/node/app-graph-builder-ZIUBXRPA.cjs.map +0 -7
  203. package/dist/lib/node/chunk-OVGKWJOC.cjs.map +0 -7
  204. package/dist/lib/node/chunk-QE4GVR6C.cjs.map +0 -7
  205. package/dist/lib/node/chunk-U6DYXAR3.cjs.map +0 -7
  206. package/dist/lib/node/chunk-WAJKBO3J.cjs.map +0 -7
  207. package/dist/lib/node/chunk-YZKNRFHU.cjs.map +0 -7
  208. package/dist/lib/node/intent-resolver-ICHHI6I6.cjs.map +0 -7
  209. package/dist/lib/node/react-surface-JSCCIZS5.cjs.map +0 -7
  210. package/dist/lib/node/spaces-ready-FQNAKR7G.cjs.map +0 -7
  211. package/dist/lib/node/state-57UE3DYE.cjs.map +0 -7
  212. package/dist/lib/node-esm/app-graph-builder-TERVM2SL.mjs.map +0 -7
  213. package/dist/lib/node-esm/chunk-2TQ2AJEZ.mjs.map +0 -7
  214. package/dist/lib/node-esm/chunk-6RSVVEPS.mjs.map +0 -7
  215. package/dist/lib/node-esm/chunk-HJCEJNW3.mjs.map +0 -7
  216. package/dist/lib/node-esm/chunk-ICCM4YRJ.mjs.map +0 -7
  217. package/dist/lib/node-esm/chunk-PGH5L7MV.mjs.map +0 -7
  218. package/dist/lib/node-esm/chunk-TRNZQEEN.mjs.map +0 -7
  219. package/dist/lib/node-esm/intent-resolver-VR42K5GE.mjs.map +0 -7
  220. package/dist/lib/node-esm/react-surface-Z3BBQ5HX.mjs.map +0 -7
  221. package/dist/lib/node-esm/spaces-ready-HKAQG5SA.mjs.map +0 -7
  222. package/dist/lib/node-esm/state-VYA6OFHD.mjs.map +0 -7
  223. package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts.map +0 -1
  224. package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts.map +0 -1
  225. package/dist/types/src/components/AdvancedObjectSettings/index.d.ts +0 -2
  226. package/dist/types/src/components/AdvancedObjectSettings/index.d.ts.map +0 -1
  227. package/dist/types/src/components/BaseObjectSettings.d.ts +0 -7
  228. package/dist/types/src/components/BaseObjectSettings.d.ts.map +0 -1
  229. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts +0 -11
  230. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts.map +0 -1
  231. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.stories.d.ts +0 -7
  232. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.stories.d.ts.map +0 -1
  233. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts +0 -7
  234. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts.map +0 -1
  235. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.stories.d.ts +0 -7
  236. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.stories.d.ts.map +0 -1
  237. package/src/components/AdvancedObjectSettings/index.ts +0 -5
  238. package/src/components/BaseObjectSettings.tsx +0 -40
  239. package/src/components/SpaceSettings/SpaceSettingsDialog.stories.tsx +0 -43
  240. package/src/components/SpaceSettings/SpaceSettingsDialog.tsx +0 -120
  241. package/src/components/SpaceSettings/SpaceSettingsPanel.tsx +0 -83
  242. /package/dist/lib/browser/{identity-created-FYGS6TBH.mjs.map → identity-created-JR7BNXFH.mjs.map} +0 -0
  243. /package/dist/lib/browser/{react-root-4CCSD7TZ.mjs.map → react-root-VPSIJ6EU.mjs.map} +0 -0
  244. /package/dist/lib/browser/{schema-5W3DSY2E.mjs.map → schema-FHTA26SW.mjs.map} +0 -0
  245. /package/dist/lib/browser/{settings-PHPCXX33.mjs.map → settings-PJPTJUPE.mjs.map} +0 -0
  246. /package/dist/lib/node/{identity-created-AXI64BLE.cjs.map → identity-created-XU4HFV2T.cjs.map} +0 -0
  247. /package/dist/lib/node/{react-root-TCBTUOOJ.cjs.map → react-root-ZRFHMM7R.cjs.map} +0 -0
  248. /package/dist/lib/node/{schema-YN7WVFRX.cjs.map → schema-PPJ5BZ3A.cjs.map} +0 -0
  249. /package/dist/lib/node/{settings-5QYFWNH7.cjs.map → settings-WVFP2UEP.cjs.map} +0 -0
  250. /package/dist/lib/node-esm/{identity-created-3CGEXNPO.mjs.map → identity-created-WJKAS2PV.mjs.map} +0 -0
  251. /package/dist/lib/node-esm/{react-root-THJBSTQS.mjs.map → react-root-XPRWMZGT.mjs.map} +0 -0
  252. /package/dist/lib/node-esm/{schema-LOR2EVGY.mjs.map → schema-OUZKVYM5.mjs.map} +0 -0
  253. /package/dist/lib/node-esm/{settings-H6MXTEQM.mjs.map → settings-FJZPC2TV.mjs.map} +0 -0
  254. /package/dist/types/src/components/{AdvancedObjectSettings → ObjectSettingsContainer}/AdvancedObjectSettings.d.ts +0 -0
  255. /package/dist/types/src/components/{AdvancedObjectSettings → ObjectSettingsContainer}/ForeignKeys.d.ts +0 -0
  256. /package/src/components/{AdvancedObjectSettings → ObjectSettingsContainer}/ForeignKeys.tsx +0 -0
@@ -26,25 +26,25 @@ 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_TCBTUOOJ_exports = {};
30
- __export(react_root_TCBTUOOJ_exports, {
29
+ var react_root_ZRFHMM7R_exports = {};
30
+ __export(react_root_ZRFHMM7R_exports, {
31
31
  default: () => react_root_default
32
32
  });
33
- module.exports = __toCommonJS(react_root_TCBTUOOJ_exports);
34
- var import_chunk_QE4GVR6C = require("./chunk-QE4GVR6C.cjs");
35
- var import_chunk_YZKNRFHU = require("./chunk-YZKNRFHU.cjs");
36
- var import_chunk_OVGKWJOC = require("./chunk-OVGKWJOC.cjs");
37
- var import_chunk_WAJKBO3J = require("./chunk-WAJKBO3J.cjs");
38
- var import_chunk_WZR6OAN3 = require("./chunk-WZR6OAN3.cjs");
33
+ module.exports = __toCommonJS(react_root_ZRFHMM7R_exports);
34
+ var import_chunk_APYLLIMY = require("./chunk-APYLLIMY.cjs");
35
+ var import_chunk_IKIDS6XF = require("./chunk-IKIDS6XF.cjs");
36
+ var import_chunk_TUZWEPGX = require("./chunk-TUZWEPGX.cjs");
37
+ var import_chunk_WDEIFDTX = require("./chunk-WDEIFDTX.cjs");
38
+ var import_chunk_6P2DB4QQ = require("./chunk-6P2DB4QQ.cjs");
39
39
  var import_react = __toESM(require("react"));
40
40
  var import_app_framework = require("@dxos/app-framework");
41
41
  var react_root_default = () => (0, import_app_framework.contributes)(import_app_framework.Capabilities.ReactRoot, {
42
- id: import_chunk_WZR6OAN3.SPACE_PLUGIN,
42
+ id: import_chunk_6P2DB4QQ.SPACE_PLUGIN,
43
43
  root: () => {
44
- const state = (0, import_app_framework.useCapability)(import_chunk_YZKNRFHU.SpaceCapabilities.State);
45
- return state.awaiting ? /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.AwaitingObject, {
44
+ const state = (0, import_app_framework.useCapability)(import_chunk_IKIDS6XF.SpaceCapabilities.State);
45
+ return state.awaiting ? /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.AwaitingObject, {
46
46
  id: state.awaiting
47
47
  }) : null;
48
48
  }
49
49
  });
50
- //# sourceMappingURL=react-root-TCBTUOOJ.cjs.map
50
+ //# sourceMappingURL=react-root-ZRFHMM7R.cjs.map
@@ -26,23 +26,24 @@ 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_JSCCIZS5_exports = {};
30
- __export(react_surface_JSCCIZS5_exports, {
29
+ var react_surface_72U57CIU_exports = {};
30
+ __export(react_surface_72U57CIU_exports, {
31
31
  default: () => react_surface_default
32
32
  });
33
- module.exports = __toCommonJS(react_surface_JSCCIZS5_exports);
34
- var import_chunk_QE4GVR6C = require("./chunk-QE4GVR6C.cjs");
35
- var import_chunk_YZKNRFHU = require("./chunk-YZKNRFHU.cjs");
36
- var import_chunk_OVGKWJOC = require("./chunk-OVGKWJOC.cjs");
37
- var import_chunk_WAJKBO3J = require("./chunk-WAJKBO3J.cjs");
38
- var import_chunk_WZR6OAN3 = require("./chunk-WZR6OAN3.cjs");
33
+ module.exports = __toCommonJS(react_surface_72U57CIU_exports);
34
+ var import_chunk_APYLLIMY = require("./chunk-APYLLIMY.cjs");
35
+ var import_chunk_IKIDS6XF = require("./chunk-IKIDS6XF.cjs");
36
+ var import_chunk_TUZWEPGX = require("./chunk-TUZWEPGX.cjs");
37
+ var import_chunk_WDEIFDTX = require("./chunk-WDEIFDTX.cjs");
38
+ var import_chunk_6P2DB4QQ = require("./chunk-6P2DB4QQ.cjs");
39
39
  var import_react = __toESM(require("react"));
40
40
  var import_app_framework = require("@dxos/app-framework");
41
+ var import_echo_schema = require("@dxos/echo-schema");
41
42
  var import_local_storage = require("@dxos/local-storage");
42
43
  var import_echo = require("@dxos/react-client/echo");
43
44
  var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framework.contributes)(import_app_framework.Capabilities.ReactSurface, [
44
45
  (0, import_app_framework.createSurface)({
45
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/article`,
46
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/article`,
46
47
  role: "article",
47
48
  filter: (data) => (
48
49
  // TODO(wittjosiah): Need to avoid shotgun parsing space state everywhere.
@@ -51,171 +52,172 @@ var react_surface_default = ({ createInvitationUrl }) => (0, import_app_framewor
51
52
  component: ({ data, role, ...rest }) => /* @__PURE__ */ import_react.default.createElement(import_app_framework.Surface, {
52
53
  data: {
53
54
  id: data.subject.id,
54
- subject: data.subject.properties[import_chunk_WAJKBO3J.CollectionType.typename]?.target
55
+ subject: data.subject.properties[import_chunk_WDEIFDTX.CollectionType.typename]?.target
55
56
  },
56
57
  role,
57
58
  ...rest
58
59
  })
59
60
  }),
60
61
  (0, import_app_framework.createSurface)({
61
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/collection-fallback`,
62
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/collection-fallback`,
62
63
  role: "article",
63
64
  position: "fallback",
64
- filter: (data) => data.subject instanceof import_chunk_WAJKBO3J.CollectionType,
65
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.CollectionMain, {
65
+ filter: (data) => (0, import_echo_schema.isInstanceOf)(import_chunk_WDEIFDTX.CollectionType, data.subject),
66
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.CollectionMain, {
66
67
  collection: data.subject
67
68
  })
68
69
  }),
69
70
  (0, import_app_framework.createSurface)({
70
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/settings-panel`,
71
- // TODO(burdon): Add role name syntax to minimal plugin docs.
72
- role: "complementary--settings",
73
- filter: (data) => (0, import_echo.isSpace)(data.subject),
74
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.SpaceSettingsPanel, {
75
- space: data.subject
71
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/members`,
72
+ role: "article",
73
+ position: "hoist",
74
+ filter: (data) => (0, import_echo.isSpace)(data.subject) && data.variant === "members",
75
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.MembersContainer, {
76
+ space: data.subject,
77
+ createInvitationUrl
76
78
  })
77
79
  }),
78
80
  (0, import_app_framework.createSurface)({
79
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/object-settings-base-panel`,
80
- role: "complementary--settings",
81
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/settings`,
82
+ role: "article",
81
83
  position: "hoist",
82
- filter: (data) => (0, import_echo.isEchoObject)(data.subject),
83
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.BaseObjectSettings, {
84
- object: data.subject
84
+ filter: (data) => (0, import_echo.isSpace)(data.subject) && data.variant === "settings",
85
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.SpaceSettingsContainer, {
86
+ space: data.subject
85
87
  })
86
88
  }),
87
89
  (0, import_app_framework.createSurface)({
88
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/object-settings-advanced-panel`,
89
- role: "complementary--settings",
90
- position: "fallback",
91
- filter: (data) => (0, import_echo.isEchoObject)(data.subject),
92
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.AdvancedObjectSettings, {
93
- object: data.subject
90
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/companion/object-settings`,
91
+ role: "article",
92
+ filter: (data) => (0, import_echo.isEchoObject)(data.companionTo) && data.subject === "settings",
93
+ component: ({ data, role }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.ObjectSettingsContainer, {
94
+ object: data.companionTo,
95
+ role
94
96
  })
95
97
  }),
96
98
  (0, import_app_framework.createSurface)({
97
- id: import_chunk_QE4GVR6C.SPACE_SETTINGS_DIALOG,
98
- role: "dialog",
99
- filter: (data) => data.component === import_chunk_QE4GVR6C.SPACE_SETTINGS_DIALOG,
100
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.SpaceSettingsDialog, {
101
- ...data.props,
102
- createInvitationUrl
99
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/space-settings--properties`,
100
+ role: "space-settings--properties",
101
+ filter: (data) => (0, import_echo.isSpace)(data.subject),
102
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.SpacePropertiesForm, {
103
+ space: data.subject
103
104
  })
104
105
  }),
105
106
  (0, import_app_framework.createSurface)({
106
- id: import_chunk_QE4GVR6C.JOIN_DIALOG,
107
+ id: import_chunk_APYLLIMY.JOIN_DIALOG,
107
108
  role: "dialog",
108
- filter: (data) => data.component === import_chunk_QE4GVR6C.JOIN_DIALOG,
109
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.JoinDialog, data.props)
109
+ filter: (data) => data.component === import_chunk_APYLLIMY.JOIN_DIALOG,
110
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.JoinDialog, data.props)
110
111
  }),
111
112
  (0, import_app_framework.createSurface)({
112
- id: import_chunk_QE4GVR6C.CREATE_SPACE_DIALOG,
113
+ id: import_chunk_APYLLIMY.CREATE_SPACE_DIALOG,
113
114
  role: "dialog",
114
- filter: (data) => data.component === import_chunk_QE4GVR6C.CREATE_SPACE_DIALOG,
115
- component: () => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.CreateSpaceDialog, null)
115
+ filter: (data) => data.component === import_chunk_APYLLIMY.CREATE_SPACE_DIALOG,
116
+ component: () => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.CreateSpaceDialog, null)
116
117
  }),
117
118
  (0, import_app_framework.createSurface)({
118
- id: import_chunk_QE4GVR6C.CREATE_OBJECT_DIALOG,
119
+ id: import_chunk_APYLLIMY.CREATE_OBJECT_DIALOG,
119
120
  role: "dialog",
120
- filter: (data) => data.component === import_chunk_QE4GVR6C.CREATE_OBJECT_DIALOG,
121
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.CreateObjectDialog, data.props)
121
+ filter: (data) => data.component === import_chunk_APYLLIMY.CREATE_OBJECT_DIALOG,
122
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.CreateObjectDialog, data.props)
122
123
  }),
123
124
  (0, import_app_framework.createSurface)({
124
- id: import_chunk_QE4GVR6C.POPOVER_RENAME_SPACE,
125
+ id: import_chunk_APYLLIMY.POPOVER_RENAME_SPACE,
125
126
  role: "popover",
126
- filter: (data) => data.component === import_chunk_QE4GVR6C.POPOVER_RENAME_SPACE && (0, import_echo.isSpace)(data.props),
127
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.PopoverRenameSpace, {
127
+ filter: (data) => data.component === import_chunk_APYLLIMY.POPOVER_RENAME_SPACE && (0, import_echo.isSpace)(data.props),
128
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.PopoverRenameSpace, {
128
129
  space: data.props
129
130
  })
130
131
  }),
131
132
  (0, import_app_framework.createSurface)({
132
- id: import_chunk_QE4GVR6C.POPOVER_RENAME_OBJECT,
133
+ id: import_chunk_APYLLIMY.POPOVER_RENAME_OBJECT,
133
134
  role: "popover",
134
- filter: (data) => data.component === import_chunk_QE4GVR6C.POPOVER_RENAME_OBJECT && (0, import_echo.isReactiveObject)(data.props),
135
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.PopoverRenameObject, {
135
+ filter: (data) => data.component === import_chunk_APYLLIMY.POPOVER_RENAME_OBJECT && (0, import_echo.isReactiveObject)(data.props),
136
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.PopoverRenameObject, {
136
137
  object: data.props
137
138
  })
138
139
  }),
139
140
  (0, import_app_framework.createSurface)({
140
- id: import_chunk_QE4GVR6C.POPOVER_ADD_SPACE,
141
+ id: import_chunk_APYLLIMY.POPOVER_ADD_SPACE,
141
142
  role: "popover",
142
- filter: (data) => data.component === import_chunk_QE4GVR6C.POPOVER_ADD_SPACE,
143
- component: () => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.PopoverAddSpace, null)
143
+ filter: (data) => data.component === import_chunk_APYLLIMY.POPOVER_ADD_SPACE,
144
+ component: () => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.PopoverAddSpace, null)
144
145
  }),
145
146
  (0, import_app_framework.createSurface)({
146
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/navtree-presence`,
147
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/navtree-presence`,
147
148
  role: "navtree-item-end",
148
149
  filter: (data) => typeof data.id === "string" && (0, import_echo.isEchoObject)(data.subject),
149
150
  component: ({ data }) => {
150
- const state = (0, import_app_framework.useCapability)(import_chunk_YZKNRFHU.SpaceCapabilities.MutableState);
151
- return /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.SmallPresenceLive, {
151
+ const state = (0, import_app_framework.useCapability)(import_chunk_IKIDS6XF.SpaceCapabilities.MutableState);
152
+ return /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.SmallPresenceLive, {
152
153
  id: data.id,
153
154
  open: data.open,
154
155
  viewers: state.viewersByObject[data.id]
155
156
  });
156
157
  }
157
158
  }),
159
+ // TODO(wittjosiah): Attention glyph for non-echo items should be handled elsewhere.
158
160
  (0, import_app_framework.createSurface)({
159
- // TODO(wittjosiah): Attention glyph for non-echo items should be handled elsewhere.
160
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/navtree-presence-fallback`,
161
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/navtree-presence-fallback`,
161
162
  role: "navtree-item-end",
162
163
  position: "fallback",
163
164
  filter: (data) => typeof data.id === "string",
164
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.SmallPresenceLive, {
165
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.SmallPresenceLive, {
165
166
  id: data.id,
166
167
  open: data.open
167
168
  })
168
169
  }),
170
+ // TODO(wittjosiah): Broken?
169
171
  (0, import_app_framework.createSurface)({
170
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/navtree-sync-status`,
172
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/navtree-sync-status`,
171
173
  role: "navtree-item-end",
172
174
  filter: (data) => (0, import_echo.isSpace)(data.subject),
173
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.InlineSyncStatus, {
175
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.InlineSyncStatus, {
174
176
  space: data.subject,
175
177
  open: data.open
176
178
  })
177
179
  }),
178
180
  (0, import_app_framework.createSurface)({
179
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/navbar-presence`,
181
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/navbar-presence`,
180
182
  role: "navbar-end",
181
183
  position: "hoist",
182
184
  filter: (data) => (0, import_echo.isSpace)(data.subject) || (0, import_echo.isEchoObject)(data.subject),
183
185
  component: ({ data }) => {
184
186
  const space = (0, import_echo.isSpace)(data.subject) ? data.subject : (0, import_echo.getSpace)(data.subject);
185
- const object = (0, import_echo.isSpace)(data.subject) ? data.subject.state.get() === import_echo.SpaceState.SPACE_READY ? space?.properties[import_chunk_WAJKBO3J.CollectionType.typename]?.target : void 0 : data.subject;
186
- return object ? /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.SpacePresence, {
187
+ const object = (0, import_echo.isSpace)(data.subject) ? data.subject.state.get() === import_echo.SpaceState.SPACE_READY ? space?.properties[import_chunk_WDEIFDTX.CollectionType.typename]?.target : void 0 : data.subject;
188
+ return object ? /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.SpacePresence, {
187
189
  object
188
190
  }) : null;
189
191
  }
190
192
  }),
191
193
  (0, import_app_framework.createSurface)({
192
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/collection-section`,
194
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/collection-section`,
193
195
  role: "section",
194
- filter: (data) => data.subject instanceof import_chunk_WAJKBO3J.CollectionType,
195
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.CollectionSection, {
196
+ filter: (data) => (0, import_echo_schema.isInstanceOf)(import_chunk_WDEIFDTX.CollectionType, data.subject),
197
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.CollectionSection, {
196
198
  collection: data.subject
197
199
  })
198
200
  }),
199
201
  (0, import_app_framework.createSurface)({
200
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/settings`,
202
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/plugin-settings`,
201
203
  role: "article",
202
- filter: (data) => data.subject instanceof import_local_storage.SettingsStore && data.subject.prefix === import_chunk_WZR6OAN3.SPACE_PLUGIN,
203
- component: ({ data: { subject } }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.SpacePluginSettings, {
204
+ filter: (data) => data.subject instanceof import_local_storage.SettingsStore && data.subject.prefix === import_chunk_6P2DB4QQ.SPACE_PLUGIN,
205
+ component: ({ data: { subject } }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.SpacePluginSettings, {
204
206
  settings: subject.value
205
207
  })
206
208
  }),
207
209
  (0, import_app_framework.createSurface)({
208
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/menu-footer`,
210
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/menu-footer`,
209
211
  role: "menu-footer",
210
212
  filter: (data) => (0, import_echo.isEchoObject)(data.subject),
211
- component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.MenuFooter, {
213
+ component: ({ data }) => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.MenuFooter, {
212
214
  object: data.subject
213
215
  })
214
216
  }),
215
217
  (0, import_app_framework.createSurface)({
216
- id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/status`,
218
+ id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/status`,
217
219
  role: "status",
218
- component: () => /* @__PURE__ */ import_react.default.createElement(import_chunk_QE4GVR6C.SyncStatus, null)
220
+ component: () => /* @__PURE__ */ import_react.default.createElement(import_chunk_APYLLIMY.SyncStatus, null)
219
221
  })
220
222
  ]);
221
- //# sourceMappingURL=react-surface-JSCCIZS5.cjs.map
223
+ //# sourceMappingURL=react-surface-72U57CIU.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 React from 'react';\n\nimport { Capabilities, contributes, createSurface, Surface, useCapability } from '@dxos/app-framework';\nimport { isInstanceOf } from '@dxos/echo-schema';\nimport { SettingsStore } from '@dxos/local-storage';\nimport {\n getSpace,\n isEchoObject,\n isReactiveObject,\n isSpace,\n SpaceState,\n type ReactiveEchoObject,\n type Space,\n} from '@dxos/react-client/echo';\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 MenuFooter,\n POPOVER_RENAME_OBJECT,\n POPOVER_RENAME_SPACE,\n PopoverRenameObject,\n PopoverRenameSpace,\n SmallPresenceLive,\n SpacePluginSettings,\n SpacePresence,\n SyncStatus,\n type CreateObjectDialogProps,\n POPOVER_ADD_SPACE,\n PopoverAddSpace,\n SpaceSettingsContainer,\n SpacePropertiesForm,\n MembersContainer,\n ObjectSettingsContainer,\n} from '../components';\nimport { SPACE_PLUGIN } from '../meta';\nimport { CollectionType, type SpaceSettingsProps } from '../types';\n\ntype ReactSurfaceOptions = {\n createInvitationUrl: (invitationCode: string) => string;\n};\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={{ id: data.subject.id, subject: data.subject.properties[CollectionType.typename]?.target }}\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: CollectionType } => isInstanceOf(CollectionType, data.subject),\n component: ({ data }) => <CollectionMain collection={data.subject} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/members`,\n role: 'article',\n position: 'hoist',\n filter: (data): data is { subject: Space; variant: 'members' } =>\n isSpace(data.subject) && data.variant === 'members',\n component: ({ data }) => <MembersContainer space={data.subject} createInvitationUrl={createInvitationUrl} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/settings`,\n role: 'article',\n position: 'hoist',\n filter: (data): data is { subject: Space; variant: 'settings' } =>\n isSpace(data.subject) && data.variant === 'settings',\n component: ({ data }) => <SpaceSettingsContainer space={data.subject} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/companion/object-settings`,\n role: 'article',\n filter: (data): data is { companionTo: ReactiveEchoObject<any> } =>\n isEchoObject(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: 'space-settings--properties',\n filter: (data): data is { subject: Space } => isSpace(data.subject),\n component: ({ data }) => <SpacePropertiesForm space={data.subject} />,\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: 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: ReactiveEchoObject<any> } =>\n data.component === POPOVER_RENAME_OBJECT && isReactiveObject(data.props),\n component: ({ data }) => <PopoverRenameObject object={data.props} />,\n }),\n createSurface({\n id: POPOVER_ADD_SPACE,\n role: 'popover',\n filter: (data): data is any => data.component === POPOVER_ADD_SPACE,\n component: () => <PopoverAddSpace />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/navtree-presence`,\n role: 'navtree-item-end',\n filter: (data): data is { id: string; subject: ReactiveEchoObject<any>; open?: boolean } =>\n typeof data.id === 'string' && isEchoObject(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 | ReactiveEchoObject<any> } =>\n isSpace(data.subject) || isEchoObject(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[CollectionType.typename]?.target as CollectionType)\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: CollectionType } => isInstanceOf(CollectionType, data.subject),\n component: ({ data }) => <CollectionSection 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}/menu-footer`,\n role: 'menu-footer',\n filter: (data): data is { subject: ReactiveEchoObject<any> } => isEchoObject(data.subject),\n component: ({ data }) => <MenuFooter object={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": ["createInvitationUrl", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "SPACE_PLUGIN", "role", "filter", "data", "isSpace", "subject", "state", "get", "SpaceState", "SPACE_READY", "component", "rest", "React", "Surface", "properties", "CollectionType", "typename", "target", "position", "isInstanceOf", "CollectionMain", "collection", "variant", "MembersContainer", "space", "SpaceSettingsContainer", "isEchoObject", "companionTo", "ObjectSettingsContainer", "object", "SpacePropertiesForm", "JOIN_DIALOG", "JoinDialog", "props", "CREATE_SPACE_DIALOG", "CreateSpaceDialog", "CREATE_OBJECT_DIALOG", "CreateObjectDialog", "POPOVER_RENAME_SPACE", "PopoverRenameSpace", "POPOVER_RENAME_OBJECT", "isReactiveObject", "PopoverRenameObject", "POPOVER_ADD_SPACE", "PopoverAddSpace", "useCapability", "SpaceCapabilities", "MutableState", "SmallPresenceLive", "open", "viewers", "viewersByObject", "InlineSyncStatus", "getSpace", "undefined", "SpacePresence", "CollectionSection", "SettingsStore", "prefix", "SpacePluginSettings", "settings", "value", "MenuFooter", "SyncStatus"]
7
+ }
@@ -16,13 +16,13 @@ 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_YN7WVFRX_exports = {};
20
- __export(schema_YN7WVFRX_exports, {
19
+ var schema_PPJ5BZ3A_exports = {};
20
+ __export(schema_PPJ5BZ3A_exports, {
21
21
  default: () => schema_default
22
22
  });
23
- module.exports = __toCommonJS(schema_YN7WVFRX_exports);
24
- var import_chunk_YZKNRFHU = require("./chunk-YZKNRFHU.cjs");
25
- var import_chunk_WZR6OAN3 = require("./chunk-WZR6OAN3.cjs");
23
+ module.exports = __toCommonJS(schema_PPJ5BZ3A_exports);
24
+ var import_chunk_IKIDS6XF = require("./chunk-IKIDS6XF.cjs");
25
+ var import_chunk_6P2DB4QQ = require("./chunk-6P2DB4QQ.cjs");
26
26
  var import_signals_core = require("@preact/signals-core");
27
27
  var import_app_framework = require("@dxos/app-framework");
28
28
  var import_plugin_client = require("@dxos/plugin-client");
@@ -30,11 +30,11 @@ var schema_default = (context) => {
30
30
  const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
31
31
  let previous = [];
32
32
  const unsubscribe = (0, import_signals_core.effect)(() => {
33
- const forms = Array.from(new Set(context.requestCapabilities(import_chunk_YZKNRFHU.SpaceCapabilities.ObjectForm)));
33
+ const forms = Array.from(new Set(context.requestCapabilities(import_chunk_IKIDS6XF.SpaceCapabilities.ObjectForm)));
34
34
  const newSchemas = forms.filter((form) => !previous.includes(form)).map((form) => form.objectSchema);
35
35
  previous = forms;
36
36
  client.addTypes(newSchemas);
37
37
  });
38
38
  return (0, import_app_framework.contributes)(import_app_framework.Capabilities.Null, null, () => unsubscribe());
39
39
  };
40
- //# sourceMappingURL=schema-YN7WVFRX.cjs.map
40
+ //# sourceMappingURL=schema-PPJ5BZ3A.cjs.map
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var schema_tools_BLIMOZYY_exports = {};
20
+ __export(schema_tools_BLIMOZYY_exports, {
21
+ TypeNameSchema: () => TypeNameSchema,
22
+ default: () => schema_tools_default
23
+ });
24
+ module.exports = __toCommonJS(schema_tools_BLIMOZYY_exports);
25
+ var import_SchemaAST = require("effect/SchemaAST");
26
+ var import_app_framework = require("@dxos/app-framework");
27
+ var import_artifact = require("@dxos/artifact");
28
+ var import_echo_schema = require("@dxos/echo-schema");
29
+ var import_invariant = require("@dxos/invariant");
30
+ var import_react_ui_theme = require("@dxos/react-ui-theme");
31
+ var import_schema = require("@dxos/schema");
32
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/capabilities/schema-tools.ts";
33
+ var TypeNameSchema = import_echo_schema.S.String.pipe(import_echo_schema.S.pattern(/^\w+\.\w{2,}\/[\w/]+$/i), import_echo_schema.S.annotations({
34
+ [import_SchemaAST.TitleAnnotationId]: "TypeName",
35
+ [import_SchemaAST.DescriptionAnnotationId]: "Domain-style type name path. Dashes are not allowed. Use camel case for the final component of the type name.",
36
+ [import_SchemaAST.ExamplesAnnotationId]: [
37
+ "example.com/type/Document",
38
+ "example.com/type/FlightList"
39
+ ]
40
+ }));
41
+ 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
+ This tuple is GeoJSON. You must specify \`${import_echo_schema.FormatEnum.GeoPoint}\` as [Longitude, Latitude]`;
44
+ var PropertyDefinitionSchema = import_echo_schema.S.Struct({
45
+ name: import_echo_schema.S.String.annotations({
46
+ [import_SchemaAST.DescriptionAnnotationId]: "The name of the property."
47
+ }),
48
+ format: import_echo_schema.S.Union(...import_echo_schema.FormatEnums.map((format) => import_echo_schema.S.Literal(format))).annotations({
49
+ [import_SchemaAST.DescriptionAnnotationId]: formatDescription
50
+ }),
51
+ config: import_echo_schema.S.optional(import_echo_schema.S.Struct({
52
+ options: import_echo_schema.S.optional(import_echo_schema.S.Array(import_echo_schema.SelectOptionSchema).annotations({
53
+ description: `Options for SingleSelect/MultiSelect formats. Available colors: ${import_react_ui_theme.hues.join(", ")}`
54
+ }).pipe(import_echo_schema.S.mutable))
55
+ }))
56
+ }).pipe(import_echo_schema.S.mutable);
57
+ var SYSTEM_NAMESPACE = "dxos.org/echo/schema";
58
+ var schema_tools_default = () => (0, import_app_framework.contributes)(import_app_framework.Capabilities.Tools, [
59
+ (0, import_artifact.defineTool)(SYSTEM_NAMESPACE, {
60
+ name: "list",
61
+ description: "List registered schemas in the space.",
62
+ caption: "Listing registered schemas...",
63
+ schema: import_echo_schema.S.Struct({}),
64
+ execute: async (_input, { extensions }) => {
65
+ (0, import_invariant.invariant)(extensions?.space, "No space.", {
66
+ F: __dxlog_file,
67
+ L: 67,
68
+ S: void 0,
69
+ A: [
70
+ "extensions?.space",
71
+ "'No space.'"
72
+ ]
73
+ });
74
+ const space = extensions.space;
75
+ const schemas = await space.db.schemaRegistry.query({}).run();
76
+ return import_artifact.ToolResult.Success(schemas.map((schema) => ({
77
+ typename: schema.typename,
78
+ version: schema.version
79
+ })));
80
+ }
81
+ }),
82
+ (0, import_artifact.defineTool)(SYSTEM_NAMESPACE, {
83
+ name: "get",
84
+ description: "Get a specific schema by its typename.",
85
+ caption: "Getting schema...",
86
+ schema: import_echo_schema.S.Struct({
87
+ typename: import_echo_schema.S.String.annotations({
88
+ description: "The fully qualified typename of the schema."
89
+ })
90
+ }),
91
+ execute: async ({ typename }, { extensions }) => {
92
+ (0, import_invariant.invariant)(extensions?.space, "No space.", {
93
+ F: __dxlog_file,
94
+ L: 89,
95
+ S: void 0,
96
+ A: [
97
+ "extensions?.space",
98
+ "'No space.'"
99
+ ]
100
+ });
101
+ const space = extensions.space;
102
+ const schema = await space.db.schemaRegistry.query({
103
+ typename
104
+ }).firstOrUndefined();
105
+ if (!schema) {
106
+ return import_artifact.ToolResult.Error(`Schema not found: ${typename}`);
107
+ }
108
+ return import_artifact.ToolResult.Success(schema);
109
+ }
110
+ }),
111
+ (0, import_artifact.defineTool)(SYSTEM_NAMESPACE, {
112
+ name: "create",
113
+ description: "Create a new schema with the provided definition.",
114
+ caption: "Creating schema...",
115
+ schema: import_echo_schema.S.Struct({
116
+ typename: TypeNameSchema.annotations({
117
+ description: 'The fully qualified schema typename. Must start with a domain, and then one or more path components (e.g., "example.com/type/TypeName").'
118
+ }),
119
+ properties: import_echo_schema.S.Array(PropertyDefinitionSchema).pipe(import_echo_schema.S.annotations({
120
+ description: "Array of property definitions for the schema."
121
+ }), import_echo_schema.S.mutable)
122
+ }),
123
+ execute: async ({ typename, properties }, { extensions }) => {
124
+ (0, import_invariant.invariant)(extensions?.space, "No space.", {
125
+ F: __dxlog_file,
126
+ L: 115,
127
+ S: void 0,
128
+ A: [
129
+ "extensions?.space",
130
+ "'No space.'"
131
+ ]
132
+ });
133
+ const space = extensions.space;
134
+ const schema = (0, import_schema.getSchemaFromPropertyDefinitions)(typename, properties);
135
+ const [registeredSchema] = await space.db.schemaRegistry.register([
136
+ schema
137
+ ]);
138
+ return import_artifact.ToolResult.Success(registeredSchema);
139
+ }
140
+ })
141
+ ]);
142
+ // Annotate the CommonJS export names for ESM import in node:
143
+ 0 && (module.exports = {
144
+ TypeNameSchema
145
+ });
146
+ //# sourceMappingURL=schema-tools-BLIMOZYY.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 { DescriptionAnnotationId, ExamplesAnnotationId, TitleAnnotationId } from 'effect/SchemaAST';\n\nimport { Capabilities, contributes, type PromiseIntentDispatcher } from '@dxos/app-framework';\nimport { defineTool, ToolResult } from '@dxos/artifact';\nimport { type Space } from '@dxos/client/echo';\nimport { FormatEnum, FormatEnums, S, SelectOptionSchema, GeoPoint, toJsonSchema } 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 = S.String.pipe(\n S.pattern(/^\\w+\\.\\w{2,}\\/[\\w/]+$/i),\n S.annotations({\n [TitleAnnotationId]: 'TypeName',\n [DescriptionAnnotationId]:\n 'Domain-style type name path. Dashes are not allowed. Use camel case for the final component of the type name.',\n [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(toJsonSchema(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 = S.Struct({\n name: S.String.annotations({ [DescriptionAnnotationId]: 'The name of the property.' }),\n format: S.Union(...FormatEnums.map((format) => S.Literal(format))).annotations({\n [DescriptionAnnotationId]: formatDescription,\n }),\n config: S.optional(\n S.Struct({\n options: S.optional(\n S.Array(SelectOptionSchema)\n .annotations({\n description: `Options for SingleSelect/MultiSelect formats. Available colors: ${hues.join(', ')}`,\n })\n .pipe(S.mutable),\n ),\n }),\n ),\n}).pipe(S.mutable);\n\nconst SYSTEM_NAMESPACE = 'dxos.org/echo/schema';\n\nexport default () =>\n contributes(Capabilities.Tools, [\n defineTool(SYSTEM_NAMESPACE, {\n name: 'list',\n description: 'List registered schemas in the space.',\n caption: 'Listing registered schemas...',\n schema: S.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 defineTool(SYSTEM_NAMESPACE, {\n name: 'get',\n description: 'Get a specific schema by its typename.',\n caption: 'Getting schema...',\n schema: S.Struct({\n typename: S.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 defineTool(SYSTEM_NAMESPACE, {\n name: 'create',\n description: 'Create a new schema with the provided definition.',\n caption: 'Creating schema...',\n schema: S.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: S.Array(PropertyDefinitionSchema).pipe(\n S.annotations({ description: 'Array of property definitions for the schema.' }),\n S.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": ";;;;;;;;;;;;;;;;;;;;;;;;AAIA,uBAAiF;AAEjF,2BAAwE;AACxE,sBAAuC;AAEvC,yBAAuF;AACvF,uBAA0B;AAC1B,4BAAqB;AACrB,oBAAiD;;AAW1C,IAAMA,iBAAiBC,qBAAEC,OAAOC,KACrCF,qBAAEG,QAAQ,wBAAA,GACVH,qBAAEI,YAAY;EACZ,CAACC,kCAAAA,GAAoB;EACrB,CAACC,wCAAAA,GACC;EACF,CAACC,qCAAAA,GAAuB;IAAC;IAA6B;;AACxD,CAAA,CAAA;AAGF,IAAMC,oBAAoB;IACtBC,8BAAWC,QAAQ,KAAKC,KAAKC,cAAUC,iCAAaH,2BAAAA,CAAAA,CAAAA;8CACVD,8BAAWC,QAAQ;AAGjE,IAAMI,2BAA2Bd,qBAAEe,OAAO;EACxCC,MAAMhB,qBAAEC,OAAOG,YAAY;IAAE,CAACE,wCAAAA,GAA0B;EAA4B,CAAA;EACpFW,QAAQjB,qBAAEkB,MAAK,GAAIC,+BAAYC,IAAI,CAACH,WAAWjB,qBAAEqB,QAAQJ,MAAAA,CAAAA,CAAAA,EAAUb,YAAY;IAC7E,CAACE,wCAAAA,GAA0BE;EAC7B,CAAA;EACAc,QAAQtB,qBAAEuB,SACRvB,qBAAEe,OAAO;IACPS,SAASxB,qBAAEuB,SACTvB,qBAAEyB,MAAMC,qCAAAA,EACLtB,YAAY;MACXuB,aAAa,mEAAmEC,2BAAKC,KAAK,IAAA,CAAA;IAC5F,CAAA,EACC3B,KAAKF,qBAAE8B,OAAO,CAAA;EAErB,CAAA,CAAA;AAEJ,CAAA,EAAG5B,KAAKF,qBAAE8B,OAAO;AAEjB,IAAMC,mBAAmB;AAEzB,IAAA,uBAAe,UACbC,kCAAYC,kCAAaC,OAAO;MAC9BC,4BAAWJ,kBAAkB;IAC3Bf,MAAM;IACNW,aAAa;IACbS,SAAS;IACTC,QAAQrC,qBAAEe,OAAO,CAAC,CAAA;IAClBuB,SAAS,OAAOC,QAAQ,EAAEC,WAAU,MAAE;AACpCC,sCAAUD,YAAYE,OAAO,aAAA;;;;;;;;;AAC7B,YAAMA,QAAQF,WAAWE;AAEzB,YAAMC,UAAU,MAAMD,MAAME,GAAGC,eAAeC,MAAM,CAAC,CAAA,EAAGC,IAAG;AAC3D,aAAOC,2BAAWC,QAChBN,QAAQvB,IAAI,CAACiB,YAAY;QACvBa,UAAUb,OAAOa;QACjBC,SAASd,OAAOc;MAClB,EAAA,CAAA;IAEJ;EACF,CAAA;MACAhB,4BAAWJ,kBAAkB;IAC3Bf,MAAM;IACNW,aAAa;IACbS,SAAS;IACTC,QAAQrC,qBAAEe,OAAO;MACfmC,UAAUlD,qBAAEC,OAAOG,YAAY;QAC7BuB,aAAa;MACf,CAAA;IACF,CAAA;IACAW,SAAS,OAAO,EAAEY,SAAQ,GAAI,EAAEV,WAAU,MAAE;AAC1CC,sCAAUD,YAAYE,OAAO,aAAA;;;;;;;;;AAC7B,YAAMA,QAAQF,WAAWE;AAEzB,YAAML,SAAS,MAAMK,MAAME,GAAGC,eAAeC,MAAM;QAAEI;MAAS,CAAA,EAAGE,iBAAgB;AACjF,UAAI,CAACf,QAAQ;AACX,eAAOW,2BAAWK,MAAM,qBAAqBH,QAAAA,EAAU;MACzD;AAEA,aAAOF,2BAAWC,QAAQZ,MAAAA;IAC5B;EACF,CAAA;MACAF,4BAAWJ,kBAAkB;IAC3Bf,MAAM;IACNW,aAAa;IACbS,SAAS;IACTC,QAAQrC,qBAAEe,OAAO;MACfmC,UAAUnD,eAAeK,YAAY;QACnCuB,aACE;MACJ,CAAA;MACA2B,YAAYtD,qBAAEyB,MAAMX,wBAAAA,EAA0BZ,KAC5CF,qBAAEI,YAAY;QAAEuB,aAAa;MAAgD,CAAA,GAC7E3B,qBAAE8B,OAAO;IAEb,CAAA;IACAQ,SAAS,OAAO,EAAEY,UAAUI,WAAU,GAAI,EAAEd,WAAU,MAAE;AACtDC,sCAAUD,YAAYE,OAAO,aAAA;;;;;;;;;AAC7B,YAAMA,QAAQF,WAAWE;AAEzB,YAAML,aAASkB,gDAAiCL,UAAUI,UAAAA;AAC1D,YAAM,CAACE,gBAAAA,IAAoB,MAAMd,MAAME,GAAGC,eAAeY,SAAS;QAACpB;OAAO;AAE1E,aAAOW,2BAAWC,QAAQO,gBAAAA;IAC5B;EACF,CAAA;CACD;",
6
+ "names": ["TypeNameSchema", "S", "String", "pipe", "pattern", "annotations", "TitleAnnotationId", "DescriptionAnnotationId", "ExamplesAnnotationId", "formatDescription", "FormatEnum", "GeoPoint", "JSON", "stringify", "toJsonSchema", "PropertyDefinitionSchema", "Struct", "name", "format", "Union", "FormatEnums", "map", "Literal", "config", "optional", "options", "Array", "SelectOptionSchema", "description", "hues", "join", "mutable", "SYSTEM_NAMESPACE", "contributes", "Capabilities", "Tools", "defineTool", "caption", "schema", "execute", "_input", "extensions", "invariant", "space", "schemas", "db", "schemaRegistry", "query", "run", "ToolResult", "Success", "typename", "version", "firstOrUndefined", "Error", "properties", "getSchemaFromPropertyDefinitions", "registeredSchema", "register"]
7
+ }
@@ -16,13 +16,13 @@ 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_5QYFWNH7_exports = {};
20
- __export(settings_5QYFWNH7_exports, {
19
+ var settings_WVFP2UEP_exports = {};
20
+ __export(settings_WVFP2UEP_exports, {
21
21
  default: () => settings_default
22
22
  });
23
- module.exports = __toCommonJS(settings_5QYFWNH7_exports);
24
- var import_chunk_WAJKBO3J = require("./chunk-WAJKBO3J.cjs");
25
- var import_chunk_WZR6OAN3 = require("./chunk-WZR6OAN3.cjs");
23
+ module.exports = __toCommonJS(settings_WVFP2UEP_exports);
24
+ var import_chunk_WDEIFDTX = require("./chunk-WDEIFDTX.cjs");
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");
28
28
  var settings_default = () => {
@@ -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_WAJKBO3J.SpaceSettingsSchema,
34
- prefix: import_chunk_WZR6OAN3.SPACE_PLUGIN,
33
+ schema: import_chunk_WDEIFDTX.SpaceSettingsSchema,
34
+ prefix: import_chunk_6P2DB4QQ.SPACE_PLUGIN,
35
35
  value: settings
36
36
  });
37
37
  };
38
- //# sourceMappingURL=settings-5QYFWNH7.cjs.map
38
+ //# sourceMappingURL=settings-WVFP2UEP.cjs.map