@dxos/plugin-space 0.8.2-main.12df754 → 0.8.2-main.2f9c567

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 (191) hide show
  1. package/dist/lib/browser/{app-graph-builder-J4PN5HOM.mjs → app-graph-builder-I2BU35J5.mjs} +6 -6
  2. package/dist/lib/browser/app-graph-builder-I2BU35J5.mjs.map +7 -0
  3. package/dist/lib/browser/{app-graph-serializer-6WIAFHYK.mjs → app-graph-serializer-HPYDOKA5.mjs} +4 -4
  4. package/dist/lib/browser/{chunk-MIJHUABE.mjs → chunk-OS5QKO4Z.mjs} +2 -2
  5. package/dist/lib/browser/{chunk-FSHDAPFY.mjs → chunk-RERTVPBV.mjs} +2 -2
  6. package/dist/lib/browser/chunk-RERTVPBV.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-MHTZAZT2.mjs → chunk-TSX67XGX.mjs} +136 -138
  8. package/dist/lib/browser/chunk-TSX67XGX.mjs.map +7 -0
  9. package/dist/lib/browser/chunk-YQNBTJI4.mjs +308 -0
  10. package/dist/lib/browser/chunk-YQNBTJI4.mjs.map +7 -0
  11. package/dist/lib/browser/{identity-created-DVHNLGYU.mjs → identity-created-DWFKBGOA.mjs} +2 -2
  12. package/dist/lib/browser/index.mjs +13 -16
  13. package/dist/lib/browser/index.mjs.map +3 -3
  14. package/dist/lib/browser/{intent-resolver-72IWBVYE.mjs → intent-resolver-GKDCJ4H2.mjs} +83 -69
  15. package/dist/lib/browser/intent-resolver-GKDCJ4H2.mjs.map +7 -0
  16. package/dist/lib/browser/meta.json +1 -1
  17. package/dist/lib/browser/{react-root-DRVM5ACV.mjs → react-root-667IZ2Q4.mjs} +4 -4
  18. package/dist/lib/browser/{react-surface-KODNQYDN.mjs → react-surface-I4RNTGGN.mjs} +5 -22
  19. package/dist/lib/browser/react-surface-I4RNTGGN.mjs.map +7 -0
  20. package/dist/lib/browser/{schema-FHTA26SW.mjs → schema-defs-FLFEUSLB.mjs} +4 -4
  21. package/dist/lib/browser/{schema-FHTA26SW.mjs.map → schema-defs-FLFEUSLB.mjs.map} +2 -2
  22. package/dist/lib/browser/{schema-tools-YAXPRIXP.mjs → schema-tools-MYC4LTQD.mjs} +22 -22
  23. package/dist/lib/browser/schema-tools-MYC4LTQD.mjs.map +7 -0
  24. package/dist/lib/browser/{settings-2UIV5WX5.mjs → settings-ILGGNYJ7.mjs} +2 -2
  25. package/dist/lib/browser/{spaces-ready-3URIMLCR.mjs → spaces-ready-IXZF3RWW.mjs} +3 -3
  26. package/dist/lib/browser/types/index.mjs +1 -1
  27. package/dist/lib/node/{app-graph-builder-3BNPC5GB.cjs → app-graph-builder-H7MDHM3X.cjs} +34 -34
  28. package/dist/lib/node/app-graph-builder-H7MDHM3X.cjs.map +7 -0
  29. package/dist/lib/node/{app-graph-serializer-GOLCQHFQ.cjs → app-graph-serializer-G7UYFWG6.cjs} +20 -20
  30. package/dist/lib/node/chunk-AR3JHVCY.cjs +336 -0
  31. package/dist/lib/node/chunk-AR3JHVCY.cjs.map +7 -0
  32. package/dist/lib/node/{chunk-U63V2254.cjs → chunk-EG3WAZLA.cjs} +27 -27
  33. package/dist/lib/node/chunk-EG3WAZLA.cjs.map +7 -0
  34. package/dist/lib/node/{chunk-GPZPEQXP.cjs → chunk-HD4C6KKO.cjs} +183 -185
  35. package/dist/lib/node/chunk-HD4C6KKO.cjs.map +7 -0
  36. package/dist/lib/node/{chunk-EI3ZPOLJ.cjs → chunk-NCSFM6RA.cjs} +6 -6
  37. package/dist/lib/node/{identity-created-YYTW4K3Z.cjs → identity-created-YLGVEWAJ.cjs} +6 -6
  38. package/dist/lib/node/index.cjs +68 -71
  39. package/dist/lib/node/index.cjs.map +3 -3
  40. package/dist/lib/node/{intent-resolver-KA56XGUX.cjs → intent-resolver-V7UJKLE7.cjs} +129 -115
  41. package/dist/lib/node/intent-resolver-V7UJKLE7.cjs.map +7 -0
  42. package/dist/lib/node/meta.json +1 -1
  43. package/dist/lib/node/{react-root-6WGN5WRQ.cjs → react-root-I3SSFA5O.cjs} +8 -8
  44. package/dist/lib/node/{react-surface-37AVZFPL.cjs → react-surface-OLMQCCYD.cjs} +44 -61
  45. package/dist/lib/node/react-surface-OLMQCCYD.cjs.map +7 -0
  46. package/dist/lib/node/{schema-PPJ5BZ3A.cjs → schema-defs-PKZVL52M.cjs} +6 -6
  47. package/dist/lib/node/{schema-PPJ5BZ3A.cjs.map → schema-defs-PKZVL52M.cjs.map} +2 -2
  48. package/dist/lib/node/{schema-tools-BLIMOZYY.cjs → schema-tools-OE3MFYYH.cjs} +24 -24
  49. package/dist/lib/node/schema-tools-OE3MFYYH.cjs.map +7 -0
  50. package/dist/lib/node/{settings-HJROTHC4.cjs → settings-7TC55JP4.cjs} +6 -6
  51. package/dist/lib/node/{spaces-ready-IWDDIAAD.cjs → spaces-ready-4H3Q46GV.cjs} +11 -11
  52. package/dist/lib/node/types/index.cjs +15 -15
  53. package/dist/lib/node/types/index.cjs.map +1 -1
  54. package/dist/lib/node-esm/{app-graph-builder-OVMSUAX3.mjs → app-graph-builder-NI7X6W3Q.mjs} +6 -6
  55. package/dist/lib/node-esm/app-graph-builder-NI7X6W3Q.mjs.map +7 -0
  56. package/dist/lib/node-esm/{app-graph-serializer-AZXSO7HK.mjs → app-graph-serializer-CVPYWWW3.mjs} +4 -4
  57. package/dist/lib/node-esm/{chunk-TVN6VHTT.mjs → chunk-B2P24Q5R.mjs} +2 -2
  58. package/dist/lib/node-esm/chunk-B2P24Q5R.mjs.map +7 -0
  59. package/dist/lib/node-esm/{chunk-ABKX22IP.mjs → chunk-BU6F7ZU4.mjs} +136 -138
  60. package/dist/lib/node-esm/chunk-BU6F7ZU4.mjs.map +7 -0
  61. package/dist/lib/node-esm/{chunk-DUA32XUX.mjs → chunk-FUH5OODY.mjs} +2 -2
  62. package/dist/lib/node-esm/chunk-RUWTHAV7.mjs +309 -0
  63. package/dist/lib/node-esm/chunk-RUWTHAV7.mjs.map +7 -0
  64. package/dist/lib/node-esm/{identity-created-MP4GLXHO.mjs → identity-created-7NHGER3Q.mjs} +2 -2
  65. package/dist/lib/node-esm/index.mjs +13 -16
  66. package/dist/lib/node-esm/index.mjs.map +3 -3
  67. package/dist/lib/node-esm/{intent-resolver-SG2ECM5R.mjs → intent-resolver-IL63YTIT.mjs} +83 -69
  68. package/dist/lib/node-esm/intent-resolver-IL63YTIT.mjs.map +7 -0
  69. package/dist/lib/node-esm/meta.json +1 -1
  70. package/dist/lib/node-esm/{react-root-MSUT6S2S.mjs → react-root-JEGVIVVK.mjs} +4 -4
  71. package/dist/lib/node-esm/{react-surface-G73SO23W.mjs → react-surface-DRRXIJBE.mjs} +5 -22
  72. package/dist/lib/node-esm/react-surface-DRRXIJBE.mjs.map +7 -0
  73. package/dist/lib/node-esm/{schema-OUZKVYM5.mjs → schema-defs-IIEQR7B3.mjs} +4 -4
  74. package/dist/lib/node-esm/{schema-OUZKVYM5.mjs.map → schema-defs-IIEQR7B3.mjs.map} +2 -2
  75. package/dist/lib/node-esm/{schema-tools-IU7EX5A5.mjs → schema-tools-YTJLA3NQ.mjs} +22 -22
  76. package/dist/lib/node-esm/schema-tools-YTJLA3NQ.mjs.map +7 -0
  77. package/dist/lib/node-esm/{settings-KCLKPJVY.mjs → settings-CXMV2AFR.mjs} +2 -2
  78. package/dist/lib/node-esm/{spaces-ready-Z3SXKWX2.mjs → spaces-ready-QMXLQ4QV.mjs} +3 -3
  79. package/dist/lib/node-esm/types/index.mjs +1 -1
  80. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  81. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  82. package/dist/types/src/capabilities/index.d.ts +3 -2
  83. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  84. package/dist/types/src/capabilities/intent-resolver.d.ts +2 -1
  85. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  86. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  87. package/dist/types/src/capabilities/{schema.d.ts → schema-defs.d.ts} +1 -1
  88. package/dist/types/src/capabilities/schema-defs.d.ts.map +1 -0
  89. package/dist/types/src/capabilities/schema-tools.d.ts +2 -2
  90. package/dist/types/src/capabilities/schema-tools.d.ts.map +1 -1
  91. package/dist/types/src/components/CollectionMain.d.ts.map +1 -1
  92. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
  93. package/dist/types/src/components/MembersContainer.d.ts.map +1 -1
  94. package/dist/types/src/components/MenuFooter.d.ts +2 -2
  95. package/dist/types/src/components/MenuFooter.d.ts.map +1 -1
  96. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts +2 -2
  97. package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +1 -1
  98. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts +2 -2
  99. package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +1 -1
  100. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts +2 -2
  101. package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts.map +1 -1
  102. package/dist/types/src/components/PopoverRenameObject.d.ts.map +1 -1
  103. package/dist/types/src/components/PopoverRenameSpace.d.ts.map +1 -1
  104. package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
  105. package/dist/types/src/components/index.d.ts +0 -1
  106. package/dist/types/src/components/index.d.ts.map +1 -1
  107. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts +2 -2
  108. package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
  109. package/dist/types/src/types/collection.d.ts +9 -8
  110. package/dist/types/src/types/collection.d.ts.map +1 -1
  111. package/dist/types/src/types/thread.d.ts +329 -110
  112. package/dist/types/src/types/thread.d.ts.map +1 -1
  113. package/dist/types/src/types/types.d.ts +164 -136
  114. package/dist/types/src/types/types.d.ts.map +1 -1
  115. package/dist/types/src/util.d.ts +4 -4
  116. package/dist/types/src/util.d.ts.map +1 -1
  117. package/package.json +46 -45
  118. package/src/SpacePlugin.tsx +9 -8
  119. package/src/capabilities/app-graph-builder.ts +6 -6
  120. package/src/capabilities/index.ts +2 -2
  121. package/src/capabilities/intent-resolver.ts +77 -68
  122. package/src/capabilities/react-surface.tsx +13 -26
  123. package/src/capabilities/schema-tool.test.ts +2 -3
  124. package/src/capabilities/schema-tools.ts +25 -25
  125. package/src/components/CollectionMain.tsx +2 -5
  126. package/src/components/CreateDialog/CreateSpaceDialog.tsx +2 -3
  127. package/src/components/MembersContainer.tsx +23 -15
  128. package/src/components/MenuFooter.tsx +2 -2
  129. package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +2 -2
  130. package/src/components/ObjectSettings/BaseObjectSettings.tsx +2 -2
  131. package/src/components/ObjectSettings/ObjectSettingsContainer.tsx +2 -2
  132. package/src/components/PopoverAddSpace.tsx +1 -1
  133. package/src/components/PopoverRenameObject.tsx +12 -6
  134. package/src/components/PopoverRenameSpace.tsx +8 -0
  135. package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +5 -3
  136. package/src/components/index.ts +0 -1
  137. package/src/hooks/useInputSurfaceLookup.tsx +2 -2
  138. package/src/types/collection.ts +6 -4
  139. package/src/types/thread.ts +14 -8
  140. package/src/types/types.ts +122 -96
  141. package/src/util.tsx +9 -9
  142. package/dist/lib/browser/app-graph-builder-J4PN5HOM.mjs.map +0 -7
  143. package/dist/lib/browser/chunk-FSHDAPFY.mjs.map +0 -7
  144. package/dist/lib/browser/chunk-KDNV4YRD.mjs +0 -283
  145. package/dist/lib/browser/chunk-KDNV4YRD.mjs.map +0 -7
  146. package/dist/lib/browser/chunk-MHTZAZT2.mjs.map +0 -7
  147. package/dist/lib/browser/intent-resolver-72IWBVYE.mjs.map +0 -7
  148. package/dist/lib/browser/react-surface-KODNQYDN.mjs.map +0 -7
  149. package/dist/lib/browser/schema-tools-YAXPRIXP.mjs.map +0 -7
  150. package/dist/lib/node/app-graph-builder-3BNPC5GB.cjs.map +0 -7
  151. package/dist/lib/node/chunk-3UKLWXNJ.cjs +0 -311
  152. package/dist/lib/node/chunk-3UKLWXNJ.cjs.map +0 -7
  153. package/dist/lib/node/chunk-GPZPEQXP.cjs.map +0 -7
  154. package/dist/lib/node/chunk-U63V2254.cjs.map +0 -7
  155. package/dist/lib/node/intent-resolver-KA56XGUX.cjs.map +0 -7
  156. package/dist/lib/node/react-surface-37AVZFPL.cjs.map +0 -7
  157. package/dist/lib/node/schema-tools-BLIMOZYY.cjs.map +0 -7
  158. package/dist/lib/node-esm/app-graph-builder-OVMSUAX3.mjs.map +0 -7
  159. package/dist/lib/node-esm/chunk-35OHQARN.mjs +0 -284
  160. package/dist/lib/node-esm/chunk-35OHQARN.mjs.map +0 -7
  161. package/dist/lib/node-esm/chunk-ABKX22IP.mjs.map +0 -7
  162. package/dist/lib/node-esm/chunk-TVN6VHTT.mjs.map +0 -7
  163. package/dist/lib/node-esm/intent-resolver-SG2ECM5R.mjs.map +0 -7
  164. package/dist/lib/node-esm/react-surface-G73SO23W.mjs.map +0 -7
  165. package/dist/lib/node-esm/schema-tools-IU7EX5A5.mjs.map +0 -7
  166. package/dist/types/src/capabilities/schema.d.ts.map +0 -1
  167. package/dist/types/src/components/ShareSpaceButton.d.ts +0 -9
  168. package/dist/types/src/components/ShareSpaceButton.d.ts.map +0 -1
  169. package/dist/types/src/components/ShareSpaceButton.stories.d.ts +0 -10
  170. package/dist/types/src/components/ShareSpaceButton.stories.d.ts.map +0 -1
  171. package/src/components/ShareSpaceButton.stories.tsx +0 -27
  172. package/src/components/ShareSpaceButton.tsx +0 -32
  173. /package/dist/lib/browser/{app-graph-serializer-6WIAFHYK.mjs.map → app-graph-serializer-HPYDOKA5.mjs.map} +0 -0
  174. /package/dist/lib/browser/{chunk-MIJHUABE.mjs.map → chunk-OS5QKO4Z.mjs.map} +0 -0
  175. /package/dist/lib/browser/{identity-created-DVHNLGYU.mjs.map → identity-created-DWFKBGOA.mjs.map} +0 -0
  176. /package/dist/lib/browser/{react-root-DRVM5ACV.mjs.map → react-root-667IZ2Q4.mjs.map} +0 -0
  177. /package/dist/lib/browser/{settings-2UIV5WX5.mjs.map → settings-ILGGNYJ7.mjs.map} +0 -0
  178. /package/dist/lib/browser/{spaces-ready-3URIMLCR.mjs.map → spaces-ready-IXZF3RWW.mjs.map} +0 -0
  179. /package/dist/lib/node/{app-graph-serializer-GOLCQHFQ.cjs.map → app-graph-serializer-G7UYFWG6.cjs.map} +0 -0
  180. /package/dist/lib/node/{chunk-EI3ZPOLJ.cjs.map → chunk-NCSFM6RA.cjs.map} +0 -0
  181. /package/dist/lib/node/{identity-created-YYTW4K3Z.cjs.map → identity-created-YLGVEWAJ.cjs.map} +0 -0
  182. /package/dist/lib/node/{react-root-6WGN5WRQ.cjs.map → react-root-I3SSFA5O.cjs.map} +0 -0
  183. /package/dist/lib/node/{settings-HJROTHC4.cjs.map → settings-7TC55JP4.cjs.map} +0 -0
  184. /package/dist/lib/node/{spaces-ready-IWDDIAAD.cjs.map → spaces-ready-4H3Q46GV.cjs.map} +0 -0
  185. /package/dist/lib/node-esm/{app-graph-serializer-AZXSO7HK.mjs.map → app-graph-serializer-CVPYWWW3.mjs.map} +0 -0
  186. /package/dist/lib/node-esm/{chunk-DUA32XUX.mjs.map → chunk-FUH5OODY.mjs.map} +0 -0
  187. /package/dist/lib/node-esm/{identity-created-MP4GLXHO.mjs.map → identity-created-7NHGER3Q.mjs.map} +0 -0
  188. /package/dist/lib/node-esm/{react-root-MSUT6S2S.mjs.map → react-root-JEGVIVVK.mjs.map} +0 -0
  189. /package/dist/lib/node-esm/{settings-KCLKPJVY.mjs.map → settings-CXMV2AFR.mjs.map} +0 -0
  190. /package/dist/lib/node-esm/{spaces-ready-Z3SXKWX2.mjs.map → spaces-ready-QMXLQ4QV.mjs.map} +0 -0
  191. /package/src/capabilities/{schema.ts → schema-defs.ts} +0 -0
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  AwaitingObject
3
- } from "./chunk-MHTZAZT2.mjs";
3
+ } from "./chunk-TSX67XGX.mjs";
4
4
  import {
5
5
  SpaceCapabilities
6
6
  } from "./chunk-KVRYWFZU.mjs";
7
- import "./chunk-FSHDAPFY.mjs";
8
- import "./chunk-KDNV4YRD.mjs";
7
+ import "./chunk-RERTVPBV.mjs";
8
+ import "./chunk-YQNBTJI4.mjs";
9
9
  import {
10
10
  SPACE_PLUGIN
11
11
  } from "./chunk-PTKYMZWO.mjs";
@@ -25,4 +25,4 @@ var react_root_default = () => contributes(Capabilities.ReactRoot, {
25
25
  export {
26
26
  react_root_default as default
27
27
  };
28
- //# sourceMappingURL=react-root-DRVM5ACV.mjs.map
28
+ //# sourceMappingURL=react-root-667IZ2Q4.mjs.map
@@ -23,16 +23,16 @@ import {
23
23
  SpacePresence,
24
24
  SpaceSettingsContainer,
25
25
  SyncStatus
26
- } from "./chunk-MHTZAZT2.mjs";
26
+ } from "./chunk-TSX67XGX.mjs";
27
27
  import {
28
28
  SpaceCapabilities
29
29
  } from "./chunk-KVRYWFZU.mjs";
30
- import "./chunk-FSHDAPFY.mjs";
30
+ import "./chunk-RERTVPBV.mjs";
31
31
  import {
32
32
  CollectionType,
33
33
  HueAnnotationId,
34
34
  IconAnnotationId
35
- } from "./chunk-KDNV4YRD.mjs";
35
+ } from "./chunk-YQNBTJI4.mjs";
36
36
  import {
37
37
  SPACE_PLUGIN
38
38
  } from "./chunk-PTKYMZWO.mjs";
@@ -40,12 +40,11 @@ import {
40
40
  // packages/plugins/plugin-space/src/capabilities/react-surface.tsx
41
41
  import React, { useCallback } from "react";
42
42
  import { Capabilities, contributes, createSurface, Surface, useCapability, useLayout } from "@dxos/app-framework";
43
- import { getSchema, isInstanceOf } from "@dxos/echo-schema";
43
+ import { isInstanceOf } from "@dxos/echo-schema";
44
44
  import { findAnnotation } from "@dxos/effect";
45
45
  import { SettingsStore } from "@dxos/local-storage";
46
46
  import { getSpace, isEchoObject, isLiveObject, isSpace, parseId, SpaceState, useSpace } from "@dxos/react-client/echo";
47
47
  import { Input } from "@dxos/react-ui";
48
- import { Form } from "@dxos/react-ui-form";
49
48
  import { HuePicker, IconPicker } from "@dxos/react-ui-pickers";
50
49
  var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilities.ReactSurface, [
51
50
  createSurface({
@@ -204,22 +203,6 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
204
203
  }));
205
204
  }
206
205
  }),
207
- createSurface({
208
- id: `${SPACE_PLUGIN}/preview-popover`,
209
- role: "popover",
210
- filter: (data) => isEchoObject(data.subject),
211
- component: ({ data }) => {
212
- const schema = getSchema(data.subject);
213
- if (!schema) {
214
- return null;
215
- }
216
- return /* @__PURE__ */ React.createElement(Form, {
217
- schema,
218
- values: data.subject,
219
- readonly: true
220
- });
221
- }
222
- }),
223
206
  createSurface({
224
207
  id: POPOVER_RENAME_SPACE,
225
208
  role: "popover",
@@ -314,4 +297,4 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
314
297
  export {
315
298
  react_surface_default as default
316
299
  };
317
- //# sourceMappingURL=react-surface-KODNQYDN.mjs.map
300
+ //# sourceMappingURL=react-surface-I4RNTGGN.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/react-surface.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Schema } from 'effect';\nimport React, { useCallback } from 'react';\n\nimport { Capabilities, contributes, createSurface, Surface, useCapability, useLayout } from '@dxos/app-framework';\nimport { isInstanceOf } from '@dxos/echo-schema';\nimport { findAnnotation } from '@dxos/effect';\nimport { SettingsStore } from '@dxos/local-storage';\nimport {\n getSpace,\n isEchoObject,\n isLiveObject,\n isSpace,\n parseId,\n SpaceState,\n useSpace,\n type AnyLiveObject,\n type Space,\n} from '@dxos/react-client/echo';\nimport { Input } from '@dxos/react-ui';\nimport { type InputProps } from '@dxos/react-ui-form';\nimport { HuePicker, IconPicker } from '@dxos/react-ui-pickers';\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 MembersContainer,\n ObjectSettingsContainer,\n SpaceSettingsContainer,\n SchemaContainer,\n} from '../components';\nimport { SPACE_PLUGIN } from '../meta';\nimport { CollectionType, HueAnnotationId, IconAnnotationId, 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}/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: AnyLiveObject<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: '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: 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: AnyLiveObject<any> } =>\n data.component === POPOVER_RENAME_OBJECT && isLiveObject(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}/menu-footer`,\n role: 'menu-footer',\n filter: (data): data is { subject: AnyLiveObject<any> } => isEchoObject(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: AnyLiveObject<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 | AnyLiveObject<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}/status`,\n role: 'status',\n component: () => <SyncStatus />,\n }),\n ]);\n"],
5
+ "mappings": "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",
6
+ "names": ["React", "useCallback", "Capabilities", "contributes", "createSurface", "Surface", "useCapability", "useLayout", "isInstanceOf", "findAnnotation", "SettingsStore", "getSpace", "isEchoObject", "isLiveObject", "isSpace", "parseId", "SpaceState", "useSpace", "Input", "HuePicker", "IconPicker", "createInvitationUrl", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "SPACE_PLUGIN", "role", "filter", "data", "isSpace", "subject", "state", "get", "SpaceState", "SPACE_READY", "component", "rest", "Surface", "properties", "CollectionType", "typename", "target", "position", "isInstanceOf", "CollectionMain", "collection", "SettingsStore", "prefix", "SpacePluginSettings", "settings", "value", "isEchoObject", "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", "POPOVER_RENAME_SPACE", "PopoverRenameSpace", "POPOVER_RENAME_OBJECT", "isLiveObject", "PopoverRenameObject", "POPOVER_ADD_SPACE", "PopoverAddSpace", "MenuFooter", "useCapability", "SpaceCapabilities", "MutableState", "SmallPresenceLive", "open", "viewers", "viewersByObject", "InlineSyncStatus", "getSpace", "SpacePresence", "CollectionSection", "SyncStatus"]
7
+ }
@@ -3,11 +3,11 @@ import {
3
3
  } from "./chunk-KVRYWFZU.mjs";
4
4
  import "./chunk-PTKYMZWO.mjs";
5
5
 
6
- // packages/plugins/plugin-space/src/capabilities/schema.ts
6
+ // packages/plugins/plugin-space/src/capabilities/schema-defs.ts
7
7
  import { effect } from "@preact/signals-core";
8
8
  import { Capabilities, contributes } from "@dxos/app-framework";
9
9
  import { ClientCapabilities } from "@dxos/plugin-client";
10
- var schema_default = (context) => {
10
+ var schema_defs_default = (context) => {
11
11
  const client = context.requestCapability(ClientCapabilities.Client);
12
12
  let previous = [];
13
13
  const unsubscribe = effect(() => {
@@ -19,6 +19,6 @@ var schema_default = (context) => {
19
19
  return contributes(Capabilities.Null, null, () => unsubscribe());
20
20
  };
21
21
  export {
22
- schema_default as default
22
+ schema_defs_default as default
23
23
  };
24
- //# sourceMappingURL=schema-FHTA26SW.mjs.map
24
+ //# sourceMappingURL=schema-defs-FLFEUSLB.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/capabilities/schema.ts"],
3
+ "sources": ["../../../src/capabilities/schema-defs.ts"],
4
4
  "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { effect } from '@preact/signals-core';\n\nimport { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';\nimport { ClientCapabilities } from '@dxos/plugin-client';\n\nimport { SpaceCapabilities } from './capabilities';\nimport { type ObjectForm } from '../types';\n\nexport default (context: PluginsContext) => {\n const client = context.requestCapability(ClientCapabilities.Client);\n\n // TODO(wittjosiah): Unregister schemas when they are disabled.\n let previous: ObjectForm[] = [];\n const unsubscribe = effect(() => {\n const forms = Array.from(new Set(context.requestCapabilities(SpaceCapabilities.ObjectForm)));\n // TODO(wittjosiah): Filter out schemas which the client has already registered.\n const newSchemas = forms.filter((form) => !previous.includes(form)).map((form) => form.objectSchema);\n previous = forms;\n client.addTypes(newSchemas);\n });\n\n return contributes(Capabilities.Null, null, () => unsubscribe());\n};\n"],
5
- "mappings": ";;;;;;AAIA,SAASA,cAAc;AAEvB,SAASC,cAAcC,mBAAwC;AAC/D,SAASC,0BAA0B;AAKnC,IAAA,iBAAe,CAACC,YAAAA;AACd,QAAMC,SAASD,QAAQE,kBAAkBC,mBAAmBC,MAAM;AAGlE,MAAIC,WAAyB,CAAA;AAC7B,QAAMC,cAAcC,OAAO,MAAA;AACzB,UAAMC,QAAQC,MAAMC,KAAK,IAAIC,IAAIX,QAAQY,oBAAoBC,kBAAkBC,UAAU,CAAA,CAAA;AAEzF,UAAMC,aAAaP,MAAMQ,OAAO,CAACC,SAAS,CAACZ,SAASa,SAASD,IAAAA,CAAAA,EAAOE,IAAI,CAACF,SAASA,KAAKG,YAAY;AACnGf,eAAWG;AACXP,WAAOoB,SAASN,UAAAA;EAClB,CAAA;AAEA,SAAOO,YAAYC,aAAaC,MAAM,MAAM,MAAMlB,YAAAA,CAAAA;AACpD;",
5
+ "mappings": ";;;;;;AAIA,SAASA,cAAc;AAEvB,SAASC,cAAcC,mBAAwC;AAC/D,SAASC,0BAA0B;AAKnC,IAAA,sBAAe,CAACC,YAAAA;AACd,QAAMC,SAASD,QAAQE,kBAAkBC,mBAAmBC,MAAM;AAGlE,MAAIC,WAAyB,CAAA;AAC7B,QAAMC,cAAcC,OAAO,MAAA;AACzB,UAAMC,QAAQC,MAAMC,KAAK,IAAIC,IAAIX,QAAQY,oBAAoBC,kBAAkBC,UAAU,CAAA,CAAA;AAEzF,UAAMC,aAAaP,MAAMQ,OAAO,CAACC,SAAS,CAACZ,SAASa,SAASD,IAAAA,CAAAA,EAAOE,IAAI,CAACF,SAASA,KAAKG,YAAY;AACnGf,eAAWG;AACXP,WAAOoB,SAASN,UAAAA;EAClB,CAAA;AAEA,SAAOO,YAAYC,aAAaC,MAAM,MAAM,MAAMlB,YAAAA,CAAAA;AACpD;",
6
6
  "names": ["effect", "Capabilities", "contributes", "ClientCapabilities", "context", "client", "requestCapability", "ClientCapabilities", "Client", "previous", "unsubscribe", "effect", "forms", "Array", "from", "Set", "requestCapabilities", "SpaceCapabilities", "ObjectForm", "newSchemas", "filter", "form", "includes", "map", "objectSchema", "addTypes", "contributes", "Capabilities", "Null"]
7
7
  }
@@ -1,16 +1,16 @@
1
1
  // packages/plugins/plugin-space/src/capabilities/schema-tools.ts
2
- import { DescriptionAnnotationId, ExamplesAnnotationId, TitleAnnotationId } from "effect/SchemaAST";
2
+ import { Schema, SchemaAST } from "effect";
3
3
  import { Capabilities, contributes } from "@dxos/app-framework";
4
4
  import { defineTool, ToolResult } from "@dxos/artifact";
5
- import { FormatEnum, FormatEnums, S, SelectOptionSchema, GeoPoint, toJsonSchema } from "@dxos/echo-schema";
5
+ import { FormatEnum, FormatEnums, SelectOptionSchema, GeoPoint, toJsonSchema } from "@dxos/echo-schema";
6
6
  import { invariant } from "@dxos/invariant";
7
7
  import { hues } from "@dxos/react-ui-theme";
8
8
  import { getSchemaFromPropertyDefinitions } from "@dxos/schema";
9
9
  var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/capabilities/schema-tools.ts";
10
- var TypeNameSchema = S.String.pipe(S.pattern(/^\w+\.\w{2,}\/[\w/]+$/i), S.annotations({
11
- [TitleAnnotationId]: "TypeName",
12
- [DescriptionAnnotationId]: "Domain-style type name path. Dashes are not allowed. Use camel case for the final component of the type name.",
13
- [ExamplesAnnotationId]: [
10
+ var TypeNameSchema = Schema.String.pipe(Schema.pattern(/^\w+\.\w{2,}\/[\w/]+$/i), Schema.annotations({
11
+ [SchemaAST.TitleAnnotationId]: "TypeName",
12
+ [SchemaAST.DescriptionAnnotationId]: "Domain-style type name path. Dashes are not allowed. Use camel case for the final component of the type name.",
13
+ [SchemaAST.ExamplesAnnotationId]: [
14
14
  "example.com/type/Document",
15
15
  "example.com/type/FlightList"
16
16
  ]
@@ -18,26 +18,26 @@ var TypeNameSchema = S.String.pipe(S.pattern(/^\w+\.\w{2,}\/[\w/]+$/i), S.annota
18
18
  var formatDescription = `The format of the property. Additional information:
19
19
  ${FormatEnum.GeoPoint}: ${JSON.stringify(toJsonSchema(GeoPoint))}
20
20
  This tuple is GeoJSON. You must specify \`${FormatEnum.GeoPoint}\` as [Longitude, Latitude]`;
21
- var PropertyDefinitionSchema = S.Struct({
22
- name: S.String.annotations({
23
- [DescriptionAnnotationId]: "The name of the property."
21
+ var PropertyDefinitionSchema = Schema.Struct({
22
+ name: Schema.String.annotations({
23
+ [SchemaAST.DescriptionAnnotationId]: "The name of the property."
24
24
  }),
25
- format: S.Union(...FormatEnums.map((format) => S.Literal(format))).annotations({
26
- [DescriptionAnnotationId]: formatDescription
25
+ format: Schema.Union(...FormatEnums.map((format) => Schema.Literal(format))).annotations({
26
+ [SchemaAST.DescriptionAnnotationId]: formatDescription
27
27
  }),
28
- config: S.optional(S.Struct({
29
- options: S.optional(S.Array(SelectOptionSchema).annotations({
28
+ config: Schema.optional(Schema.Struct({
29
+ options: Schema.optional(Schema.Array(SelectOptionSchema).annotations({
30
30
  description: `Options for SingleSelect/MultiSelect formats. Available colors: ${hues.join(", ")}`
31
- }).pipe(S.mutable))
31
+ }).pipe(Schema.mutable))
32
32
  }))
33
- }).pipe(S.mutable);
33
+ }).pipe(Schema.mutable);
34
34
  var SYSTEM_NAMESPACE = "dxos.org/echo/schema";
35
35
  var schema_tools_default = () => contributes(Capabilities.Tools, [
36
36
  defineTool(SYSTEM_NAMESPACE, {
37
37
  name: "list",
38
38
  description: "List registered schemas in the space.",
39
39
  caption: "Listing registered schemas...",
40
- schema: S.Struct({}),
40
+ schema: Schema.Struct({}),
41
41
  execute: async (_input, { extensions }) => {
42
42
  invariant(extensions?.space, "No space.", {
43
43
  F: __dxlog_file,
@@ -60,8 +60,8 @@ var schema_tools_default = () => contributes(Capabilities.Tools, [
60
60
  name: "get",
61
61
  description: "Get a specific schema by its typename.",
62
62
  caption: "Getting schema...",
63
- schema: S.Struct({
64
- typename: S.String.annotations({
63
+ schema: Schema.Struct({
64
+ typename: Schema.String.annotations({
65
65
  description: "The fully qualified typename of the schema."
66
66
  })
67
67
  }),
@@ -89,13 +89,13 @@ var schema_tools_default = () => contributes(Capabilities.Tools, [
89
89
  name: "create",
90
90
  description: "Create a new schema with the provided definition.",
91
91
  caption: "Creating schema...",
92
- schema: S.Struct({
92
+ schema: Schema.Struct({
93
93
  typename: TypeNameSchema.annotations({
94
94
  description: 'The fully qualified schema typename. Must start with a domain, and then one or more path components (e.g., "example.com/type/TypeName").'
95
95
  }),
96
- properties: S.Array(PropertyDefinitionSchema).pipe(S.annotations({
96
+ properties: Schema.Array(PropertyDefinitionSchema).pipe(Schema.annotations({
97
97
  description: "Array of property definitions for the schema."
98
- }), S.mutable)
98
+ }), Schema.mutable)
99
99
  }),
100
100
  execute: async ({ typename, properties }, { extensions }) => {
101
101
  invariant(extensions?.space, "No space.", {
@@ -120,4 +120,4 @@ export {
120
120
  TypeNameSchema,
121
121
  schema_tools_default as default
122
122
  };
123
- //# sourceMappingURL=schema-tools-YAXPRIXP.mjs.map
123
+ //# sourceMappingURL=schema-tools-MYC4LTQD.mjs.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 { Capabilities, contributes, type PromiseIntentDispatcher } from '@dxos/app-framework';\nimport { defineTool, ToolResult } from '@dxos/artifact';\nimport { type Space } from '@dxos/client/echo';\nimport { FormatEnum, FormatEnums, 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 = Schema.String.pipe(\n Schema.pattern(/^\\w+\\.\\w{2,}\\/[\\w/]+$/i),\n Schema.annotations({\n [SchemaAST.TitleAnnotationId]: 'TypeName',\n [SchemaAST.DescriptionAnnotationId]:\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(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 = Schema.Struct({\n name: Schema.String.annotations({ [SchemaAST.DescriptionAnnotationId]: 'The name of the property.' }),\n format: Schema.Union(...FormatEnums.map((format) => Schema.Literal(format))).annotations({\n [SchemaAST.DescriptionAnnotationId]: 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 defineTool(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 defineTool(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 defineTool(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": ["Schema", "SchemaAST", "Capabilities", "contributes", "defineTool", "ToolResult", "FormatEnum", "FormatEnums", "SelectOptionSchema", "GeoPoint", "toJsonSchema", "invariant", "hues", "getSchemaFromPropertyDefinitions", "TypeNameSchema", "String", "pipe", "pattern", "annotations", "TitleAnnotationId", "DescriptionAnnotationId", "ExamplesAnnotationId", "formatDescription", "JSON", "stringify", "PropertyDefinitionSchema", "Struct", "name", "format", "Union", "map", "Literal", "config", "optional", "options", "Array", "description", "join", "mutable", "SYSTEM_NAMESPACE", "Tools", "caption", "schema", "execute", "_input", "extensions", "space", "schemas", "db", "schemaRegistry", "query", "run", "Success", "typename", "version", "firstOrUndefined", "Error", "properties", "registeredSchema", "register"]
7
+ }
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SpaceSettingsSchema
3
- } from "./chunk-KDNV4YRD.mjs";
3
+ } from "./chunk-YQNBTJI4.mjs";
4
4
  import {
5
5
  SPACE_PLUGIN
6
6
  } from "./chunk-PTKYMZWO.mjs";
@@ -21,4 +21,4 @@ var settings_default = () => {
21
21
  export {
22
22
  settings_default as default
23
23
  };
24
- //# sourceMappingURL=settings-2UIV5WX5.mjs.map
24
+ //# sourceMappingURL=settings-ILGGNYJ7.mjs.map
@@ -4,10 +4,10 @@ import {
4
4
  import {
5
5
  COMPOSER_SPACE_LOCK,
6
6
  SHARED
7
- } from "./chunk-FSHDAPFY.mjs";
7
+ } from "./chunk-RERTVPBV.mjs";
8
8
  import {
9
9
  SpaceAction
10
- } from "./chunk-KDNV4YRD.mjs";
10
+ } from "./chunk-YQNBTJI4.mjs";
11
11
  import "./chunk-PTKYMZWO.mjs";
12
12
 
13
13
  // packages/plugins/plugin-space/src/capabilities/spaces-ready.ts
@@ -196,4 +196,4 @@ var spaces_ready_default = async (context) => {
196
196
  export {
197
197
  spaces_ready_default as default
198
198
  };
199
- //# sourceMappingURL=spaces-ready-3URIMLCR.mjs.map
199
+ //# sourceMappingURL=spaces-ready-IXZF3RWW.mjs.map
@@ -13,7 +13,7 @@ import {
13
13
  ThreadStatus,
14
14
  ThreadType,
15
15
  defineObjectForm
16
- } from "../chunk-KDNV4YRD.mjs";
16
+ } from "../chunk-YQNBTJI4.mjs";
17
17
  import "../chunk-PTKYMZWO.mjs";
18
18
  export {
19
19
  ChannelType,
@@ -16,14 +16,14 @@ 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 app_graph_builder_3BNPC5GB_exports = {};
20
- __export(app_graph_builder_3BNPC5GB_exports, {
19
+ var app_graph_builder_H7MDHM3X_exports = {};
20
+ __export(app_graph_builder_H7MDHM3X_exports, {
21
21
  default: () => app_graph_builder_default
22
22
  });
23
- module.exports = __toCommonJS(app_graph_builder_3BNPC5GB_exports);
23
+ module.exports = __toCommonJS(app_graph_builder_H7MDHM3X_exports);
24
24
  var import_chunk_IKIDS6XF = require("./chunk-IKIDS6XF.cjs");
25
- var import_chunk_U63V2254 = require("./chunk-U63V2254.cjs");
26
- var import_chunk_3UKLWXNJ = require("./chunk-3UKLWXNJ.cjs");
25
+ var import_chunk_EG3WAZLA = require("./chunk-EG3WAZLA.cjs");
26
+ var import_chunk_AR3JHVCY = require("./chunk-AR3JHVCY.cjs");
27
27
  var import_chunk_6P2DB4QQ = require("./chunk-6P2DB4QQ.cjs");
28
28
  var import_app_framework = require("@dxos/app-framework");
29
29
  var import_echo = require("@dxos/client/echo");
@@ -37,8 +37,8 @@ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/sr
37
37
  var app_graph_builder_default = (context) => {
38
38
  const resolve = (typename) => context.requestCapabilities(import_app_framework.Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};
39
39
  const spacesNode = {
40
- id: import_chunk_U63V2254.SPACES,
41
- type: import_chunk_U63V2254.SPACES,
40
+ id: import_chunk_EG3WAZLA.SPACES,
41
+ type: import_chunk_EG3WAZLA.SPACES,
42
42
  cacheable: [
43
43
  "label",
44
44
  "role"
@@ -59,9 +59,9 @@ var app_graph_builder_default = (context) => {
59
59
  onRearrangeChildren: async (nextOrder) => {
60
60
  const { graph } = context.requestCapability(import_app_framework.Capabilities.AppGraph);
61
61
  const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
62
- graph._sortEdges(import_chunk_U63V2254.SPACES, "outbound", nextOrder.map(({ id }) => id));
62
+ graph._sortEdges(import_chunk_EG3WAZLA.SPACES, "outbound", nextOrder.map(({ id }) => id));
63
63
  const { objects: [spacesOrder] } = await client.spaces.default.db.query(import_echo.Filter.schema(import_echo.Expando, {
64
- key: import_chunk_U63V2254.SHARED
64
+ key: import_chunk_EG3WAZLA.SHARED
65
65
  })).run();
66
66
  if (spacesOrder) {
67
67
  spacesOrder.order = nextOrder.map(({ id }) => id);
@@ -84,10 +84,10 @@ var app_graph_builder_default = (context) => {
84
84
  filter: (node) => node.id === "root",
85
85
  actions: () => [
86
86
  {
87
- id: import_chunk_3UKLWXNJ.SpaceAction.AddSpace._tag,
87
+ id: import_chunk_AR3JHVCY.SpaceAction.AddSpace._tag,
88
88
  data: async (params) => {
89
89
  const { dispatchPromise: dispatch } = context.requestCapability(import_app_framework.Capabilities.IntentDispatcher);
90
- await dispatch((0, import_app_framework.createIntent)(import_chunk_3UKLWXNJ.SpaceAction.AddSpace));
90
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_AR3JHVCY.SpaceAction.AddSpace));
91
91
  },
92
92
  properties: {
93
93
  label: [
@@ -103,14 +103,14 @@ var app_graph_builder_default = (context) => {
103
103
  }
104
104
  },
105
105
  {
106
- id: import_chunk_3UKLWXNJ.SpaceAction.Share._tag,
106
+ id: import_chunk_AR3JHVCY.SpaceAction.OpenMembers._tag,
107
107
  data: async () => {
108
108
  const { dispatchPromise: dispatch } = context.requestCapability(import_app_framework.Capabilities.IntentDispatcher);
109
109
  const layout = context.requestCapability(import_app_framework.Capabilities.Layout);
110
110
  const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
111
111
  const { spaceId } = (0, import_echo.parseId)(layout.workspace);
112
112
  const space = (spaceId && client.spaces.get(spaceId)) ?? client.spaces.default;
113
- await dispatch((0, import_app_framework.createIntent)(import_chunk_3UKLWXNJ.SpaceAction.Share, {
113
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_AR3JHVCY.SpaceAction.OpenMembers, {
114
114
  space
115
115
  }));
116
116
  },
@@ -130,14 +130,14 @@ var app_graph_builder_default = (context) => {
130
130
  }
131
131
  },
132
132
  {
133
- id: import_chunk_3UKLWXNJ.SpaceAction.OpenSettings._tag,
133
+ id: import_chunk_AR3JHVCY.SpaceAction.OpenSettings._tag,
134
134
  data: async () => {
135
135
  const { dispatchPromise: dispatch } = context.requestCapability(import_app_framework.Capabilities.IntentDispatcher);
136
136
  const layout = context.requestCapability(import_app_framework.Capabilities.Layout);
137
137
  const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
138
138
  const { spaceId } = (0, import_echo.parseId)(layout.workspace);
139
139
  const space = (spaceId && client.spaces.get(spaceId)) ?? client.spaces.default;
140
- await dispatch((0, import_app_framework.createIntent)(import_chunk_3UKLWXNJ.SpaceAction.OpenSettings, {
140
+ await dispatch((0, import_app_framework.createIntent)(import_chunk_AR3JHVCY.SpaceAction.OpenSettings, {
141
141
  space
142
142
  }));
143
143
  },
@@ -165,12 +165,12 @@ var app_graph_builder_default = (context) => {
165
165
  connector: () => [
166
166
  spacesNode
167
167
  ],
168
- resolver: ({ id }) => id === import_chunk_U63V2254.SPACES ? spacesNode : void 0
168
+ resolver: ({ id }) => id === import_chunk_EG3WAZLA.SPACES ? spacesNode : void 0
169
169
  }),
170
170
  // Create space nodes.
171
171
  (0, import_plugin_graph.createExtension)({
172
- id: import_chunk_U63V2254.SPACES,
173
- filter: (node) => node.id === import_chunk_U63V2254.SPACES,
172
+ id: import_chunk_EG3WAZLA.SPACES,
173
+ filter: (node) => node.id === import_chunk_EG3WAZLA.SPACES,
174
174
  connector: () => {
175
175
  const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
176
176
  const spaces = (0, import_plugin_graph.toSignal)((onChange) => client.spaces.subscribe(() => onChange()).unsubscribe, () => client.spaces.get());
@@ -181,8 +181,8 @@ var app_graph_builder_default = (context) => {
181
181
  const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
182
182
  const settings = context.requestCapabilities(import_app_framework.Capabilities.SettingsStore)[0]?.getStore(import_chunk_6P2DB4QQ.SPACE_PLUGIN)?.value;
183
183
  try {
184
- const [spacesOrder] = (0, import_chunk_U63V2254.memoizeQuery)(client.spaces.default, import_echo.Filter.schema(import_echo.Expando, {
185
- key: import_chunk_U63V2254.SHARED
184
+ const [spacesOrder] = (0, import_chunk_EG3WAZLA.memoizeQuery)(client.spaces.default, import_echo.Filter.schema(import_echo.Expando, {
185
+ key: import_chunk_EG3WAZLA.SHARED
186
186
  }));
187
187
  const order = spacesOrder?.order ?? [];
188
188
  const orderMap = new Map(order.map((id, index) => [
@@ -192,7 +192,7 @@ var app_graph_builder_default = (context) => {
192
192
  return [
193
193
  ...spaces.filter((space) => orderMap.has(space.id)).sort((a, b) => orderMap.get(a.id) - orderMap.get(b.id)),
194
194
  ...spaces.filter((space) => !orderMap.has(space.id))
195
- ].filter((space) => settings?.showHidden ? true : space.state.get() !== import_echo.SpaceState.SPACE_INACTIVE).map((space) => (0, import_chunk_U63V2254.constructSpaceNode)({
195
+ ].filter((space) => settings?.showHidden ? true : space.state.get() !== import_echo.SpaceState.SPACE_INACTIVE).map((space) => (0, import_chunk_EG3WAZLA.constructSpaceNode)({
196
196
  space,
197
197
  navigable: state.navigableCollections,
198
198
  personal: space === client.spaces.default,
@@ -222,7 +222,7 @@ var app_graph_builder_default = (context) => {
222
222
  return void 0;
223
223
  } else {
224
224
  const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
225
- return (0, import_chunk_U63V2254.constructSpaceNode)({
225
+ return (0, import_chunk_EG3WAZLA.constructSpaceNode)({
226
226
  space,
227
227
  navigable: state.navigableCollections,
228
228
  personal: space === client.spaces.default,
@@ -235,13 +235,13 @@ var app_graph_builder_default = (context) => {
235
235
  // Create space actions.
236
236
  (0, import_plugin_graph.createExtension)({
237
237
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/actions`,
238
- filter: (node) => node.type === import_chunk_3UKLWXNJ.SPACE_TYPE,
238
+ filter: (node) => node.type === import_chunk_AR3JHVCY.SPACE_TYPE,
239
239
  actions: ({ node }) => {
240
240
  const space = node.data;
241
241
  const { dispatchPromise: dispatch } = context.requestCapability(import_app_framework.Capabilities.IntentDispatcher);
242
242
  const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
243
243
  const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
244
- return (0, import_chunk_U63V2254.constructSpaceActions)({
244
+ return (0, import_chunk_EG3WAZLA.constructSpaceActions)({
245
245
  space,
246
246
  dispatch,
247
247
  personal: space === client.spaces.default,
@@ -252,19 +252,19 @@ var app_graph_builder_default = (context) => {
252
252
  // Create nodes for objects in the root collection of a space.
253
253
  (0, import_plugin_graph.createExtension)({
254
254
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/root-collection`,
255
- filter: (node) => node.type === import_chunk_3UKLWXNJ.SPACE_TYPE,
255
+ filter: (node) => node.type === import_chunk_AR3JHVCY.SPACE_TYPE,
256
256
  connector: ({ node }) => {
257
257
  const space = node.data;
258
258
  const spaceState = (0, import_plugin_graph.toSignal)((onChange) => space.state.subscribe(() => onChange()).unsubscribe, () => space.state.get(), space.id);
259
259
  if (spaceState !== import_echo.SpaceState.SPACE_READY) {
260
260
  return;
261
261
  }
262
- const collection = space.properties[import_chunk_3UKLWXNJ.CollectionType.typename]?.target;
262
+ const collection = space.properties[import_chunk_AR3JHVCY.CollectionType.typename]?.target;
263
263
  if (!collection) {
264
264
  return;
265
265
  }
266
266
  const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
267
- return collection.objects.map((object) => object.target).filter(import_util.isNonNullable).map((object) => (0, import_chunk_U63V2254.createObjectNode)({
267
+ return collection.objects.map((object) => object.target).filter(import_util.isNonNullable).map((object) => (0, import_chunk_EG3WAZLA.createObjectNode)({
268
268
  object,
269
269
  space,
270
270
  resolve,
@@ -275,7 +275,7 @@ var app_graph_builder_default = (context) => {
275
275
  // Create nodes for objects in a collection or by its fully qualified id.
276
276
  (0, import_plugin_graph.createExtension)({
277
277
  id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/objects`,
278
- filter: (node) => node.data instanceof import_chunk_3UKLWXNJ.CollectionType,
278
+ filter: (node) => node.data instanceof import_chunk_AR3JHVCY.CollectionType,
279
279
  connector: ({ node }) => {
280
280
  const collection = node.data;
281
281
  const space = (0, import_echo.getSpace)(collection);
@@ -283,7 +283,7 @@ var app_graph_builder_default = (context) => {
283
283
  return;
284
284
  }
285
285
  const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
286
- return collection.objects.map((object) => object.target).filter(import_util.isNonNullable).map((object) => (0, import_chunk_U63V2254.createObjectNode)({
286
+ return collection.objects.map((object) => object.target).filter(import_util.isNonNullable).map((object) => (0, import_chunk_EG3WAZLA.createObjectNode)({
287
287
  object,
288
288
  space,
289
289
  resolve,
@@ -307,7 +307,7 @@ var app_graph_builder_default = (context) => {
307
307
  if (spaceState !== import_echo.SpaceState.SPACE_READY) {
308
308
  return;
309
309
  }
310
- const [object] = (0, import_chunk_U63V2254.memoizeQuery)(space, {
310
+ const [object] = (0, import_chunk_EG3WAZLA.memoizeQuery)(space, {
311
311
  id: objectId
312
312
  });
313
313
  if (!object) {
@@ -317,7 +317,7 @@ var app_graph_builder_default = (context) => {
317
317
  return false;
318
318
  } else {
319
319
  const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
320
- return (0, import_chunk_U63V2254.createObjectNode)({
320
+ return (0, import_chunk_EG3WAZLA.createObjectNode)({
321
321
  object,
322
322
  space,
323
323
  resolve,
@@ -333,7 +333,7 @@ var app_graph_builder_default = (context) => {
333
333
  actions: ({ node }) => {
334
334
  const { dispatchPromise: dispatch } = context.requestCapability(import_app_framework.Capabilities.IntentDispatcher);
335
335
  const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
336
- return (0, import_chunk_U63V2254.constructObjectActions)({
336
+ return (0, import_chunk_EG3WAZLA.constructObjectActions)({
337
337
  node,
338
338
  dispatch,
339
339
  navigable: state.navigableCollections
@@ -361,11 +361,11 @@ var app_graph_builder_default = (context) => {
361
361
  ],
362
362
  icon: "ph--sliders--regular",
363
363
  disposition: "hidden",
364
- position: "hoist"
364
+ position: "fallback"
365
365
  }
366
366
  }
367
367
  ]
368
368
  })
369
369
  ]);
370
370
  };
371
- //# sourceMappingURL=app-graph-builder-3BNPC5GB.cjs.map
371
+ //# sourceMappingURL=app-graph-builder-H7MDHM3X.cjs.map