@dxos/plugin-space 0.7.5-labs.e27f9b9 → 0.7.5-main.2567c87

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 (177) hide show
  1. package/dist/lib/browser/{app-graph-builder-TTM2YZVS.mjs → app-graph-builder-F6XSETHX.mjs} +8 -10
  2. package/dist/lib/browser/app-graph-builder-F6XSETHX.mjs.map +7 -0
  3. package/dist/lib/browser/{app-graph-serializer-ZGM5NDXE.mjs → app-graph-serializer-FYJE23GN.mjs} +5 -5
  4. package/dist/lib/browser/{chunk-S5IGZNXJ.mjs → chunk-IZ7QKQ2E.mjs} +9 -14
  5. package/dist/lib/browser/chunk-IZ7QKQ2E.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-PQXZCNAU.mjs → chunk-SOXNANA6.mjs} +2 -3
  7. package/dist/lib/browser/{chunk-PQXZCNAU.mjs.map → chunk-SOXNANA6.mjs.map} +3 -3
  8. package/dist/lib/browser/{chunk-H2AR4OLP.mjs → chunk-SSJ772GK.mjs} +5 -9
  9. package/dist/lib/browser/chunk-SSJ772GK.mjs.map +7 -0
  10. package/dist/lib/browser/{chunk-ENRYFGYE.mjs → chunk-T36CIHPG.mjs} +3 -3
  11. package/dist/lib/browser/{chunk-RLZQJD47.mjs → chunk-UH5P4UL3.mjs} +2 -3
  12. package/dist/lib/browser/chunk-UH5P4UL3.mjs.map +7 -0
  13. package/dist/lib/browser/{chunk-YB3JWCPY.mjs → chunk-XXD33C4E.mjs} +250 -291
  14. package/dist/lib/browser/chunk-XXD33C4E.mjs.map +7 -0
  15. package/dist/lib/browser/{identity-created-VICTPQX7.mjs → identity-created-4Q4PFIC5.mjs} +3 -3
  16. package/dist/lib/browser/index.mjs +13 -14
  17. package/dist/lib/browser/index.mjs.map +3 -3
  18. package/dist/lib/browser/intent-resolver-XRZYCXXX.mjs +459 -0
  19. package/dist/lib/browser/intent-resolver-XRZYCXXX.mjs.map +7 -0
  20. package/dist/lib/browser/meta.json +1 -1
  21. package/dist/lib/browser/{react-root-YUF4IL5W.mjs → react-root-BDOPFJGJ.mjs} +6 -6
  22. package/dist/lib/browser/{react-surface-YIPKS26R.mjs → react-surface-EGOL2JBL.mjs} +33 -26
  23. package/dist/lib/browser/react-surface-EGOL2JBL.mjs.map +7 -0
  24. package/dist/lib/browser/{settings-HN5UIYQO.mjs → settings-WF67QZSD.mjs} +3 -3
  25. package/dist/lib/browser/{spaces-ready-F57ITJDR.mjs → spaces-ready-WVU7US3C.mjs} +32 -31
  26. package/dist/lib/browser/spaces-ready-WVU7US3C.mjs.map +7 -0
  27. package/dist/lib/browser/{state-6DCY5YJP.mjs → state-MS4KYJWI.mjs} +3 -3
  28. package/dist/lib/browser/types/index.mjs +2 -4
  29. package/dist/lib/node/{app-graph-builder-6N4TEVHH.cjs → app-graph-builder-GKLVZ4PM.cjs} +56 -58
  30. package/dist/lib/node/app-graph-builder-GKLVZ4PM.cjs.map +7 -0
  31. package/dist/lib/node/{app-graph-serializer-AWKVTYAB.cjs → app-graph-serializer-RMTU5YSC.cjs} +21 -21
  32. package/dist/lib/node/{chunk-UX3U4RU2.cjs → chunk-56NGXG2A.cjs} +8 -9
  33. package/dist/lib/node/chunk-56NGXG2A.cjs.map +7 -0
  34. package/dist/lib/node/{chunk-MMXP2NHE.cjs → chunk-5D4RWKTV.cjs} +60 -65
  35. package/dist/lib/node/chunk-5D4RWKTV.cjs.map +7 -0
  36. package/dist/lib/node/{chunk-HFBC3X66.cjs → chunk-AJRP7AD6.cjs} +251 -292
  37. package/dist/lib/node/chunk-AJRP7AD6.cjs.map +7 -0
  38. package/dist/lib/node/{chunk-WZR6OAN3.cjs → chunk-AO4EW2RX.cjs} +5 -6
  39. package/dist/lib/node/{chunk-WZR6OAN3.cjs.map → chunk-AO4EW2RX.cjs.map} +3 -3
  40. package/dist/lib/node/{chunk-I2LRRRMV.cjs → chunk-UENH2YBM.cjs} +8 -8
  41. package/dist/lib/node/{chunk-SPCSJ2CY.cjs → chunk-YCBBGTFD.cjs} +9 -14
  42. package/dist/lib/node/chunk-YCBBGTFD.cjs.map +7 -0
  43. package/dist/lib/node/{identity-created-JNDKMFKI.cjs → identity-created-QQWX7WX3.cjs} +7 -7
  44. package/dist/lib/node/index.cjs +92 -93
  45. package/dist/lib/node/index.cjs.map +3 -3
  46. package/dist/lib/node/intent-resolver-3NI6AUAI.cjs +458 -0
  47. package/dist/lib/node/intent-resolver-3NI6AUAI.cjs.map +7 -0
  48. package/dist/lib/node/meta.json +1 -1
  49. package/dist/lib/node/{react-root-2WARZU2P.cjs → react-root-ZTR2J2I3.cjs} +12 -12
  50. package/dist/lib/node/{react-surface-QUY7D43M.cjs → react-surface-75KRPQYT.cjs} +76 -72
  51. package/dist/lib/node/react-surface-75KRPQYT.cjs.map +7 -0
  52. package/dist/lib/node/{settings-RBBL22DJ.cjs → settings-KOVSPA3S.cjs} +8 -8
  53. package/dist/lib/node/{spaces-ready-WHU4J6E5.cjs → spaces-ready-ILVGUHJH.cjs} +40 -39
  54. package/dist/lib/node/spaces-ready-ILVGUHJH.cjs.map +7 -0
  55. package/dist/lib/node/{state-WPZC4JXB.cjs → state-4UIOUKLJ.cjs} +8 -8
  56. package/dist/lib/node/types/index.cjs +16 -18
  57. package/dist/lib/node/types/index.cjs.map +2 -2
  58. package/dist/lib/node-esm/{app-graph-builder-MS6BI5EW.mjs → app-graph-builder-NEHQ5Z63.mjs} +8 -10
  59. package/dist/lib/node-esm/app-graph-builder-NEHQ5Z63.mjs.map +7 -0
  60. package/dist/lib/node-esm/{app-graph-serializer-AWAWDSCM.mjs → app-graph-serializer-UWWS5OVC.mjs} +5 -5
  61. package/dist/lib/node-esm/{chunk-LGL4A5B5.mjs → chunk-375RB3CZ.mjs} +2 -3
  62. package/dist/lib/node-esm/chunk-375RB3CZ.mjs.map +7 -0
  63. package/dist/lib/node-esm/{chunk-77RE7Y5J.mjs → chunk-5QMAPAZD.mjs} +9 -14
  64. package/dist/lib/node-esm/chunk-5QMAPAZD.mjs.map +7 -0
  65. package/dist/lib/node-esm/{chunk-ICCM4YRJ.mjs → chunk-7FUVU45N.mjs} +2 -3
  66. package/dist/lib/node-esm/{chunk-ICCM4YRJ.mjs.map → chunk-7FUVU45N.mjs.map} +3 -3
  67. package/dist/lib/node-esm/{chunk-ESWV7ICX.mjs → chunk-E5DWIQ3N.mjs} +3 -3
  68. package/dist/lib/node-esm/{chunk-TIFAXTJ5.mjs → chunk-GVOPDPS2.mjs} +250 -291
  69. package/dist/lib/node-esm/chunk-GVOPDPS2.mjs.map +7 -0
  70. package/dist/lib/node-esm/{chunk-S6VAU6VJ.mjs → chunk-HTBGWQEU.mjs} +5 -9
  71. package/dist/lib/node-esm/chunk-HTBGWQEU.mjs.map +7 -0
  72. package/dist/lib/node-esm/{identity-created-3AUSSVEK.mjs → identity-created-HMNY2MPB.mjs} +3 -3
  73. package/dist/lib/node-esm/index.mjs +13 -14
  74. package/dist/lib/node-esm/index.mjs.map +3 -3
  75. package/dist/lib/node-esm/intent-resolver-P5EVBOGP.mjs +460 -0
  76. package/dist/lib/node-esm/intent-resolver-P5EVBOGP.mjs.map +7 -0
  77. package/dist/lib/node-esm/meta.json +1 -1
  78. package/dist/lib/node-esm/{react-root-R3FZKA2B.mjs → react-root-OUPJA4RY.mjs} +6 -6
  79. package/dist/lib/node-esm/{react-surface-RH57RBYI.mjs → react-surface-7EVWCKIP.mjs} +33 -26
  80. package/dist/lib/node-esm/react-surface-7EVWCKIP.mjs.map +7 -0
  81. package/dist/lib/node-esm/{settings-VBAUB37B.mjs → settings-EDK6WI3V.mjs} +3 -3
  82. package/dist/lib/node-esm/{spaces-ready-ABADUX2P.mjs → spaces-ready-CH3W7OGN.mjs} +32 -31
  83. package/dist/lib/node-esm/spaces-ready-CH3W7OGN.mjs.map +7 -0
  84. package/dist/lib/node-esm/{state-5GH2D5U4.mjs → state-BMISGQ2O.mjs} +3 -3
  85. package/dist/lib/node-esm/types/index.mjs +2 -4
  86. package/dist/types/src/SpacePlugin.d.ts +1 -5
  87. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  88. package/dist/types/src/capabilities/app-graph-builder.d.ts +22 -22
  89. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  90. package/dist/types/src/capabilities/capabilities.d.ts +0 -6
  91. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  92. package/dist/types/src/capabilities/index.d.ts +33 -34
  93. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  94. package/dist/types/src/capabilities/intent-resolver.d.ts +1 -2
  95. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  96. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  97. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
  98. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +3 -4
  99. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  100. package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
  101. package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
  102. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  103. package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts.map +1 -1
  104. package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts.map +1 -1
  105. package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
  106. package/dist/types/src/meta.d.ts +0 -1
  107. package/dist/types/src/meta.d.ts.map +1 -1
  108. package/dist/types/src/types/types.d.ts +2 -5
  109. package/dist/types/src/types/types.d.ts.map +1 -1
  110. package/dist/types/src/util.d.ts.map +1 -1
  111. package/package.json +38 -39
  112. package/src/SpacePlugin.tsx +6 -11
  113. package/src/capabilities/app-graph-builder.ts +3 -4
  114. package/src/capabilities/capabilities.ts +1 -4
  115. package/src/capabilities/intent-resolver.ts +312 -410
  116. package/src/capabilities/react-surface.tsx +30 -22
  117. package/src/capabilities/spaces-ready.ts +21 -20
  118. package/src/components/AwaitingObject.tsx +5 -5
  119. package/src/components/CreateDialog/CreateObjectDialog.tsx +15 -15
  120. package/src/components/CreateDialog/CreateObjectPanel.tsx +114 -114
  121. package/src/components/CreateDialog/CreateSpaceDialog.tsx +8 -10
  122. package/src/components/JoinDialog.tsx +19 -27
  123. package/src/components/SpacePluginSettings.tsx +3 -3
  124. package/src/components/SpacePresence.stories.tsx +2 -2
  125. package/src/components/SpacePresence.tsx +3 -2
  126. package/src/components/SpaceSettings/SpaceSettingsDialog.tsx +1 -16
  127. package/src/components/SpaceSettings/SpaceSettingsPanel.tsx +4 -3
  128. package/src/components/SyncStatus/InlineSyncStatus.tsx +2 -2
  129. package/src/components/SyncStatus/SyncStatus.tsx +1 -2
  130. package/src/meta.ts +0 -1
  131. package/src/types/types.ts +3 -7
  132. package/src/util.tsx +4 -8
  133. package/dist/lib/browser/app-graph-builder-TTM2YZVS.mjs.map +0 -7
  134. package/dist/lib/browser/chunk-H2AR4OLP.mjs.map +0 -7
  135. package/dist/lib/browser/chunk-RLZQJD47.mjs.map +0 -7
  136. package/dist/lib/browser/chunk-S5IGZNXJ.mjs.map +0 -7
  137. package/dist/lib/browser/chunk-YB3JWCPY.mjs.map +0 -7
  138. package/dist/lib/browser/intent-resolver-SYYO26PR.mjs +0 -537
  139. package/dist/lib/browser/intent-resolver-SYYO26PR.mjs.map +0 -7
  140. package/dist/lib/browser/react-surface-YIPKS26R.mjs.map +0 -7
  141. package/dist/lib/browser/spaces-ready-F57ITJDR.mjs.map +0 -7
  142. package/dist/lib/node/app-graph-builder-6N4TEVHH.cjs.map +0 -7
  143. package/dist/lib/node/chunk-HFBC3X66.cjs.map +0 -7
  144. package/dist/lib/node/chunk-MMXP2NHE.cjs.map +0 -7
  145. package/dist/lib/node/chunk-SPCSJ2CY.cjs.map +0 -7
  146. package/dist/lib/node/chunk-UX3U4RU2.cjs.map +0 -7
  147. package/dist/lib/node/intent-resolver-2MFJV5A7.cjs +0 -536
  148. package/dist/lib/node/intent-resolver-2MFJV5A7.cjs.map +0 -7
  149. package/dist/lib/node/react-surface-QUY7D43M.cjs.map +0 -7
  150. package/dist/lib/node/spaces-ready-WHU4J6E5.cjs.map +0 -7
  151. package/dist/lib/node-esm/app-graph-builder-MS6BI5EW.mjs.map +0 -7
  152. package/dist/lib/node-esm/chunk-77RE7Y5J.mjs.map +0 -7
  153. package/dist/lib/node-esm/chunk-LGL4A5B5.mjs.map +0 -7
  154. package/dist/lib/node-esm/chunk-S6VAU6VJ.mjs.map +0 -7
  155. package/dist/lib/node-esm/chunk-TIFAXTJ5.mjs.map +0 -7
  156. package/dist/lib/node-esm/intent-resolver-UKXKZN2V.mjs +0 -538
  157. package/dist/lib/node-esm/intent-resolver-UKXKZN2V.mjs.map +0 -7
  158. package/dist/lib/node-esm/react-surface-RH57RBYI.mjs.map +0 -7
  159. package/dist/lib/node-esm/spaces-ready-ABADUX2P.mjs.map +0 -7
  160. /package/dist/lib/browser/{app-graph-serializer-ZGM5NDXE.mjs.map → app-graph-serializer-FYJE23GN.mjs.map} +0 -0
  161. /package/dist/lib/browser/{chunk-ENRYFGYE.mjs.map → chunk-T36CIHPG.mjs.map} +0 -0
  162. /package/dist/lib/browser/{identity-created-VICTPQX7.mjs.map → identity-created-4Q4PFIC5.mjs.map} +0 -0
  163. /package/dist/lib/browser/{react-root-YUF4IL5W.mjs.map → react-root-BDOPFJGJ.mjs.map} +0 -0
  164. /package/dist/lib/browser/{settings-HN5UIYQO.mjs.map → settings-WF67QZSD.mjs.map} +0 -0
  165. /package/dist/lib/browser/{state-6DCY5YJP.mjs.map → state-MS4KYJWI.mjs.map} +0 -0
  166. /package/dist/lib/node/{app-graph-serializer-AWKVTYAB.cjs.map → app-graph-serializer-RMTU5YSC.cjs.map} +0 -0
  167. /package/dist/lib/node/{chunk-I2LRRRMV.cjs.map → chunk-UENH2YBM.cjs.map} +0 -0
  168. /package/dist/lib/node/{identity-created-JNDKMFKI.cjs.map → identity-created-QQWX7WX3.cjs.map} +0 -0
  169. /package/dist/lib/node/{react-root-2WARZU2P.cjs.map → react-root-ZTR2J2I3.cjs.map} +0 -0
  170. /package/dist/lib/node/{settings-RBBL22DJ.cjs.map → settings-KOVSPA3S.cjs.map} +0 -0
  171. /package/dist/lib/node/{state-WPZC4JXB.cjs.map → state-4UIOUKLJ.cjs.map} +0 -0
  172. /package/dist/lib/node-esm/{app-graph-serializer-AWAWDSCM.mjs.map → app-graph-serializer-UWWS5OVC.mjs.map} +0 -0
  173. /package/dist/lib/node-esm/{chunk-ESWV7ICX.mjs.map → chunk-E5DWIQ3N.mjs.map} +0 -0
  174. /package/dist/lib/node-esm/{identity-created-3AUSSVEK.mjs.map → identity-created-HMNY2MPB.mjs.map} +0 -0
  175. /package/dist/lib/node-esm/{react-root-R3FZKA2B.mjs.map → react-root-OUPJA4RY.mjs.map} +0 -0
  176. /package/dist/lib/node-esm/{settings-VBAUB37B.mjs.map → settings-EDK6WI3V.mjs.map} +0 -0
  177. /package/dist/lib/node-esm/{state-5GH2D5U4.mjs.map → state-BMISGQ2O.mjs.map} +0 -0
@@ -17,28 +17,30 @@ import {
17
17
  PopoverRenameObject,
18
18
  PopoverRenameSpace,
19
19
  SPACE_SETTINGS_DIALOG,
20
+ ShareSpaceButton,
20
21
  SmallPresenceLive,
21
22
  SpacePluginSettings,
22
23
  SpacePresence,
23
24
  SpaceSettingsDialog,
24
25
  SpaceSettingsPanel,
25
26
  SyncStatus
26
- } from "./chunk-TIFAXTJ5.mjs";
27
+ } from "./chunk-GVOPDPS2.mjs";
27
28
  import {
28
29
  SpaceCapabilities
29
- } from "./chunk-LGL4A5B5.mjs";
30
- import "./chunk-77RE7Y5J.mjs";
30
+ } from "./chunk-375RB3CZ.mjs";
31
+ import {
32
+ COMPOSER_SPACE_LOCK
33
+ } from "./chunk-5QMAPAZD.mjs";
31
34
  import {
32
35
  CollectionType
33
- } from "./chunk-S6VAU6VJ.mjs";
36
+ } from "./chunk-HTBGWQEU.mjs";
34
37
  import {
35
38
  SPACE_PLUGIN
36
- } from "./chunk-ICCM4YRJ.mjs";
39
+ } from "./chunk-7FUVU45N.mjs";
37
40
 
38
41
  // packages/plugins/plugin-space/src/capabilities/react-surface.tsx
39
42
  import React, { useCallback } from "react";
40
43
  import { Capabilities, contributes, createSurface, Surface, useCapability, useCapabilities, usePluginManager } from "@dxos/app-framework";
41
- import { SettingsStore } from "@dxos/local-storage";
42
44
  import { ClientCapabilities } from "@dxos/plugin-client";
43
45
  import { getSpace, isEchoObject, isReactiveObject, isSpace, SpaceState } from "@dxos/react-client/echo";
44
46
  var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilities.ReactSurface, [
@@ -61,7 +63,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
61
63
  createSurface({
62
64
  id: `${SPACE_PLUGIN}/collection-fallback`,
63
65
  role: "article",
64
- position: "fallback",
66
+ disposition: "fallback",
65
67
  filter: (data) => data.subject instanceof CollectionType,
66
68
  component: ({ data }) => /* @__PURE__ */ React.createElement(CollectionMain, {
67
69
  collection: data.subject
@@ -79,7 +81,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
79
81
  createSurface({
80
82
  id: `${SPACE_PLUGIN}/object-settings-base-panel`,
81
83
  role: "complementary--settings",
82
- position: "hoist",
84
+ disposition: "hoist",
83
85
  filter: (data) => isEchoObject(data.subject),
84
86
  component: ({ data }) => /* @__PURE__ */ React.createElement(BaseObjectSettings, {
85
87
  object: data.subject
@@ -88,7 +90,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
88
90
  createSurface({
89
91
  id: `${SPACE_PLUGIN}/object-settings-advanced-panel`,
90
92
  role: "complementary--settings",
91
- position: "fallback",
93
+ disposition: "fallback",
92
94
  filter: (data) => isEchoObject(data.subject),
93
95
  component: ({ data }) => /* @__PURE__ */ React.createElement(AdvancedObjectSettings, {
94
96
  object: data.subject
@@ -99,7 +101,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
99
101
  role: "dialog",
100
102
  filter: (data) => data.component === SPACE_SETTINGS_DIALOG,
101
103
  component: ({ data }) => /* @__PURE__ */ React.createElement(SpaceSettingsDialog, {
102
- ...data.props,
104
+ ...data.subject,
103
105
  createInvitationUrl
104
106
  })
105
107
  }),
@@ -107,7 +109,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
107
109
  id: JOIN_DIALOG,
108
110
  role: "dialog",
109
111
  filter: (data) => data.component === JOIN_DIALOG,
110
- component: ({ data }) => /* @__PURE__ */ React.createElement(JoinDialog, data.props)
112
+ component: ({ data }) => /* @__PURE__ */ React.createElement(JoinDialog, data.subject)
111
113
  }),
112
114
  createSurface({
113
115
  id: CREATE_SPACE_DIALOG,
@@ -130,24 +132,24 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
130
132
  return /* @__PURE__ */ React.createElement(CreateObjectDialog, {
131
133
  schemas,
132
134
  resolve,
133
- ...data.props
135
+ ...data.subject
134
136
  });
135
137
  }
136
138
  }),
137
139
  createSurface({
138
140
  id: POPOVER_RENAME_SPACE,
139
141
  role: "popover",
140
- filter: (data) => data.component === POPOVER_RENAME_SPACE && isSpace(data.props),
142
+ filter: (data) => data.component === POPOVER_RENAME_SPACE && isSpace(data.subject),
141
143
  component: ({ data }) => /* @__PURE__ */ React.createElement(PopoverRenameSpace, {
142
- space: data.props
144
+ space: data.subject
143
145
  })
144
146
  }),
145
147
  createSurface({
146
148
  id: POPOVER_RENAME_OBJECT,
147
149
  role: "popover",
148
- filter: (data) => data.component === POPOVER_RENAME_OBJECT && isReactiveObject(data.props),
150
+ filter: (data) => data.component === POPOVER_RENAME_OBJECT && isReactiveObject(data.subject),
149
151
  component: ({ data }) => /* @__PURE__ */ React.createElement(PopoverRenameObject, {
150
- object: data.props
152
+ object: data.subject
151
153
  })
152
154
  }),
153
155
  createSurface({
@@ -167,7 +169,7 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
167
169
  // TODO(wittjosiah): Attention glyph for non-echo items should be handled elsewhere.
168
170
  id: `${SPACE_PLUGIN}/navtree-presence-fallback`,
169
171
  role: "navtree-item-end",
170
- position: "fallback",
172
+ disposition: "fallback",
171
173
  filter: (data) => typeof data.id === "string",
172
174
  component: ({ data }) => /* @__PURE__ */ React.createElement(SmallPresenceLive, {
173
175
  id: data.id,
@@ -186,14 +188,16 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
186
188
  createSurface({
187
189
  id: `${SPACE_PLUGIN}/navbar-presence`,
188
190
  role: "navbar-end",
189
- position: "hoist",
191
+ disposition: "hoist",
190
192
  filter: (data) => isSpace(data.subject) || isEchoObject(data.subject),
191
193
  component: ({ data }) => {
192
194
  const space = isSpace(data.subject) ? data.subject : getSpace(data.subject);
193
195
  const object = isSpace(data.subject) ? data.subject.state.get() === SpaceState.SPACE_READY ? space?.properties[CollectionType.typename]?.target : void 0 : data.subject;
194
- return object ? /* @__PURE__ */ React.createElement(SpacePresence, {
196
+ return space && object ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(SpacePresence, {
195
197
  object
196
- }) : null;
198
+ }), space.properties[COMPOSER_SPACE_LOCK] ? null : /* @__PURE__ */ React.createElement(ShareSpaceButton, {
199
+ space
200
+ })) : null;
197
201
  }
198
202
  }),
199
203
  createSurface({
@@ -206,11 +210,14 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
206
210
  }),
207
211
  createSurface({
208
212
  id: `${SPACE_PLUGIN}/settings`,
209
- role: "article",
210
- filter: (data) => data.subject instanceof SettingsStore && data.subject.prefix === SPACE_PLUGIN,
211
- component: ({ data: { subject } }) => /* @__PURE__ */ React.createElement(SpacePluginSettings, {
212
- settings: subject.value
213
- })
213
+ role: "settings",
214
+ filter: (data) => data.subject === SPACE_PLUGIN,
215
+ component: () => {
216
+ const settings = useCapability(Capabilities.SettingsStore).getStore(SPACE_PLUGIN).value;
217
+ return /* @__PURE__ */ React.createElement(SpacePluginSettings, {
218
+ settings
219
+ });
220
+ }
214
221
  }),
215
222
  createSurface({
216
223
  id: `${SPACE_PLUGIN}/menu-footer`,
@@ -229,4 +236,4 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
229
236
  export {
230
237
  react_surface_default as default
231
238
  };
232
- //# sourceMappingURL=react-surface-RH57RBYI.mjs.map
239
+ //# sourceMappingURL=react-surface-7EVWCKIP.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 React, { useCallback } from 'react';\n\nimport {\n Capabilities,\n contributes,\n createSurface,\n Surface,\n useCapability,\n useCapabilities,\n usePluginManager,\n} from '@dxos/app-framework';\nimport { ClientCapabilities } from '@dxos/plugin-client';\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 AdvancedObjectSettings,\n BaseObjectSettings,\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 ShareSpaceButton,\n SmallPresenceLive,\n SPACE_SETTINGS_DIALOG,\n SpacePluginSettings,\n SpacePresence,\n SpaceSettingsDialog,\n SpaceSettingsPanel,\n SyncStatus,\n type CreateObjectDialogProps,\n type SpaceSettingsDialogProps,\n} from '../components';\nimport { SPACE_PLUGIN } from '../meta';\nimport { CollectionType, type SpaceSettingsProps } from '../types';\nimport { COMPOSER_SPACE_LOCK } from '../util';\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 disposition: 'fallback',\n filter: (data): data is { subject: CollectionType } => data.subject instanceof CollectionType,\n component: ({ data }) => <CollectionMain collection={data.subject} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/settings-panel`,\n // TODO(burdon): Add role name syntax to minimal plugin docs.\n role: 'complementary--settings',\n filter: (data): data is { subject: Space } => isSpace(data.subject),\n component: ({ data }) => <SpaceSettingsPanel space={data.subject} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/object-settings-base-panel`,\n role: 'complementary--settings',\n disposition: 'hoist',\n filter: (data): data is { subject: ReactiveEchoObject<any> } => isEchoObject(data.subject),\n component: ({ data }) => <BaseObjectSettings object={data.subject} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/object-settings-advanced-panel`,\n role: 'complementary--settings',\n disposition: 'fallback',\n filter: (data): data is { subject: ReactiveEchoObject<any> } => isEchoObject(data.subject),\n component: ({ data }) => <AdvancedObjectSettings object={data.subject} />,\n }),\n createSurface({\n id: SPACE_SETTINGS_DIALOG,\n role: 'dialog',\n filter: (data): data is { subject: SpaceSettingsDialogProps } => data.component === SPACE_SETTINGS_DIALOG,\n component: ({ data }) => <SpaceSettingsDialog {...data.subject} createInvitationUrl={createInvitationUrl} />,\n }),\n createSurface({\n id: JOIN_DIALOG,\n role: 'dialog',\n filter: (data): data is { subject: JoinPanelProps } => data.component === JOIN_DIALOG,\n component: ({ data }) => <JoinDialog {...data.subject} />,\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 { subject: Partial<CreateObjectDialogProps> } => data.component === CREATE_OBJECT_DIALOG,\n component: ({ data }) => {\n const schemas = useCapabilities(ClientCapabilities.Schema).flat();\n const manager = usePluginManager();\n\n const resolve = useCallback(\n (typename: string) => {\n return (\n manager.context.requestCapabilities(Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ??\n {}\n );\n },\n [manager],\n );\n\n return <CreateObjectDialog schemas={schemas} resolve={resolve} {...data.subject} />;\n },\n }),\n createSurface({\n id: POPOVER_RENAME_SPACE,\n role: 'popover',\n filter: (data): data is { subject: Space } => data.component === POPOVER_RENAME_SPACE && isSpace(data.subject),\n component: ({ data }) => <PopoverRenameSpace space={data.subject} />,\n }),\n createSurface({\n id: POPOVER_RENAME_OBJECT,\n role: 'popover',\n filter: (data): data is { subject: ReactiveEchoObject<any> } =>\n data.component === POPOVER_RENAME_OBJECT && isReactiveObject(data.subject),\n component: ({ data }) => <PopoverRenameObject 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: 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 createSurface({\n // TODO(wittjosiah): Attention glyph for non-echo items should be handled elsewhere.\n id: `${SPACE_PLUGIN}/navtree-presence-fallback`,\n role: 'navtree-item-end',\n disposition: '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 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 disposition: '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 space && object ? (\n <>\n <SpacePresence object={object} />\n {space.properties[COMPOSER_SPACE_LOCK] ? null : <ShareSpaceButton space={space} />}\n </>\n ) : null;\n },\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/collection-section`,\n role: 'section',\n filter: (data): data is { subject: CollectionType } => data.subject instanceof CollectionType,\n component: ({ data }) => <CollectionSection collection={data.subject} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/settings`,\n role: 'settings',\n filter: (data): data is any => data.subject === SPACE_PLUGIN,\n component: () => {\n const settings = useCapability(Capabilities.SettingsStore).getStore<SpaceSettingsProps>(SPACE_PLUGIN)!.value;\n return <SpacePluginSettings settings={settings} />;\n },\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": ["React", "useCallback", "Capabilities", "contributes", "createSurface", "Surface", "useCapability", "useCapabilities", "usePluginManager", "ClientCapabilities", "getSpace", "isEchoObject", "isReactiveObject", "isSpace", "SpaceState", "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", "disposition", "CollectionMain", "collection", "SpaceSettingsPanel", "space", "isEchoObject", "BaseObjectSettings", "object", "AdvancedObjectSettings", "SPACE_SETTINGS_DIALOG", "SpaceSettingsDialog", "JOIN_DIALOG", "JoinDialog", "CREATE_SPACE_DIALOG", "CreateSpaceDialog", "CREATE_OBJECT_DIALOG", "schemas", "useCapabilities", "ClientCapabilities", "Schema", "flat", "manager", "usePluginManager", "resolve", "useCallback", "context", "requestCapabilities", "Metadata", "find", "metadata", "CreateObjectDialog", "POPOVER_RENAME_SPACE", "PopoverRenameSpace", "POPOVER_RENAME_OBJECT", "isReactiveObject", "PopoverRenameObject", "useCapability", "SpaceCapabilities", "MutableState", "SmallPresenceLive", "open", "viewers", "viewersByObject", "InlineSyncStatus", "getSpace", "undefined", "SpacePresence", "COMPOSER_SPACE_LOCK", "ShareSpaceButton", "CollectionSection", "settings", "SettingsStore", "getStore", "value", "SpacePluginSettings", "MenuFooter", "SyncStatus"]
7
+ }
@@ -1,10 +1,10 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  SpaceSettingsSchema
4
- } from "./chunk-S6VAU6VJ.mjs";
4
+ } from "./chunk-HTBGWQEU.mjs";
5
5
  import {
6
6
  SPACE_PLUGIN
7
- } from "./chunk-ICCM4YRJ.mjs";
7
+ } from "./chunk-7FUVU45N.mjs";
8
8
 
9
9
  // packages/plugins/plugin-space/src/capabilities/settings.ts
10
10
  import { Capabilities, contributes } from "@dxos/app-framework";
@@ -22,4 +22,4 @@ var settings_default = () => {
22
22
  export {
23
23
  settings_default as default
24
24
  };
25
- //# sourceMappingURL=settings-VBAUB37B.mjs.map
25
+ //# sourceMappingURL=settings-EDK6WI3V.mjs.map
@@ -1,18 +1,18 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  SpaceCapabilities
4
- } from "./chunk-LGL4A5B5.mjs";
4
+ } from "./chunk-375RB3CZ.mjs";
5
5
  import {
6
6
  COMPOSER_SPACE_LOCK,
7
7
  SHARED
8
- } from "./chunk-77RE7Y5J.mjs";
8
+ } from "./chunk-5QMAPAZD.mjs";
9
9
  import {
10
10
  SpaceAction
11
- } from "./chunk-S6VAU6VJ.mjs";
12
- import "./chunk-ICCM4YRJ.mjs";
11
+ } from "./chunk-HTBGWQEU.mjs";
12
+ import "./chunk-7FUVU45N.mjs";
13
13
 
14
14
  // packages/plugins/plugin-space/src/capabilities/spaces-ready.ts
15
- import { contributes, createIntent, Capabilities, LayoutAction } from "@dxos/app-framework";
15
+ import { contributes, createIntent, openIds, Capabilities } from "@dxos/app-framework";
16
16
  import { EventSubscriptions } from "@dxos/async";
17
17
  import { Expando } from "@dxos/echo-schema";
18
18
  import { scheduledEffect } from "@dxos/echo-signals/core";
@@ -20,7 +20,6 @@ import { create } from "@dxos/live-object";
20
20
  import { log } from "@dxos/log";
21
21
  import { AttentionCapabilities } from "@dxos/plugin-attention";
22
22
  import { ClientCapabilities } from "@dxos/plugin-client";
23
- import { DeckCapabilities } from "@dxos/plugin-deck";
24
23
  import { EdgeReplicationSetting } from "@dxos/protocols/proto/dxos/echo/metadata";
25
24
  import { PublicKey } from "@dxos/react-client";
26
25
  import { Filter, FQ_ID_LENGTH, parseFullyQualifiedId, SpaceState } from "@dxos/react-client/echo";
@@ -34,18 +33,12 @@ var spaces_ready_default = async (context) => {
34
33
  const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
35
34
  const { graph } = context.requestCapability(Capabilities.AppGraph);
36
35
  const layout = context.requestCapability(Capabilities.Layout);
37
- const deck = context.requestCapability(DeckCapabilities.DeckState);
36
+ const location = context.requestCapability(Capabilities.Location);
38
37
  const attention = context.requestCapability(AttentionCapabilities.Attention);
39
38
  const state = context.requestCapability(SpaceCapabilities.MutableState);
40
39
  const client = context.requestCapability(ClientCapabilities.Client);
41
40
  const defaultSpace = client.spaces.default;
42
41
  await defaultSpace.waitUntilReady();
43
- if (deck.activeDeck === "default") {
44
- await dispatch(createIntent(LayoutAction.SwitchWorkspace, {
45
- part: "workspace",
46
- subject: defaultSpace.id
47
- }));
48
- }
49
42
  if (typeof defaultSpace.properties[COMPOSER_SPACE_LOCK] !== "boolean") {
50
43
  defaultSpace.properties[COMPOSER_SPACE_LOCK] = true;
51
44
  }
@@ -59,18 +52,19 @@ var spaces_ready_default = async (context) => {
59
52
  }));
60
53
  }
61
54
  subscriptions.add(scheduledEffect(() => ({
62
- active: layout.active
63
- }), ({ active }) => {
64
- if (active.length !== 1) {
55
+ layoutMode: layout.layoutMode,
56
+ soloPart: location.active.solo?.[0]
57
+ }), ({ layoutMode, soloPart }) => {
58
+ if (layoutMode !== "solo" || !soloPart) {
65
59
  return;
66
60
  }
67
- const node = graph.findNode(active[0]);
68
- if (!node && active[0].length === FQ_ID_LENGTH) {
61
+ const node = graph.findNode(soloPart.id);
62
+ if (!node && soloPart.id.length === FQ_ID_LENGTH) {
69
63
  const timeout = setTimeout(async () => {
70
- const node2 = graph.findNode(active[0]);
64
+ const node2 = graph.findNode(soloPart.id);
71
65
  if (!node2) {
72
66
  await dispatch(createIntent(SpaceAction.WaitForObject, {
73
- id: active[0]
67
+ id: soloPart.id
74
68
  }));
75
69
  }
76
70
  }, WAIT_FOR_OBJECT_TIMEOUT);
@@ -88,15 +82,20 @@ var spaces_ready_default = async (context) => {
88
82
  });
89
83
  }).unsubscribe);
90
84
  subscriptions.add(scheduledEffect(() => ({
91
- current: attention.current,
92
- active: layout.active,
93
- inactive: layout.inactive
94
- }), ({ current, active, inactive }) => {
85
+ open: openIds(location.active, layout.layoutMode === "solo" ? [
86
+ "solo"
87
+ ] : [
88
+ "main"
89
+ ]),
90
+ closed: [
91
+ ...location.closed
92
+ ]
93
+ }), ({ open, closed }) => {
95
94
  const send = () => {
96
95
  const spaces = client.spaces.get();
97
96
  const identity = client.halo.identity.get();
98
- if (identity) {
99
- const idsBySpace = reduceGroupBy(active, (id) => {
97
+ if (identity && location.active) {
98
+ const idsBySpace = reduceGroupBy(open, (id) => {
100
99
  try {
101
100
  const [spaceId] = parseFullyQualifiedId(id);
102
101
  return spaceId;
@@ -104,7 +103,7 @@ var spaces_ready_default = async (context) => {
104
103
  return null;
105
104
  }
106
105
  });
107
- const removedBySpace = reduceGroupBy(inactive, (id) => {
106
+ const removedBySpace = reduceGroupBy(closed, (id) => {
108
107
  try {
109
108
  const [spaceId] = parseFullyQualifiedId(id);
110
109
  return spaceId;
@@ -125,7 +124,9 @@ var spaces_ready_default = async (context) => {
125
124
  }
126
125
  void space.postMessage("viewing", {
127
126
  identityKey: identity.identityKey.toHex(),
128
- attended: current,
127
+ attended: attention.current ? [
128
+ ...attention.current
129
+ ] : [],
129
130
  added,
130
131
  removed
131
132
  }).catch((err) => {
@@ -133,7 +134,7 @@ var spaces_ready_default = async (context) => {
133
134
  err: err.message
134
135
  }, {
135
136
  F: __dxlog_file,
136
- L: 155,
137
+ L: 156,
137
138
  S: void 0,
138
139
  C: (f, a) => f(...a)
139
140
  });
@@ -184,7 +185,7 @@ var spaces_ready_default = async (context) => {
184
185
  } catch (err) {
185
186
  log.catch(err, void 0, {
186
187
  F: __dxlog_file,
187
- L: 223,
188
+ L: 224,
188
189
  S: void 0,
189
190
  C: (f, a) => f(...a)
190
191
  });
@@ -197,4 +198,4 @@ var spaces_ready_default = async (context) => {
197
198
  export {
198
199
  spaces_ready_default as default
199
200
  };
200
- //# sourceMappingURL=spaces-ready-ABADUX2P.mjs.map
201
+ //# sourceMappingURL=spaces-ready-CH3W7OGN.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/spaces-ready.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { contributes, createIntent, openIds, type PluginsContext, Capabilities } from '@dxos/app-framework';\nimport { EventSubscriptions } from '@dxos/async';\nimport { Expando } from '@dxos/echo-schema';\nimport { scheduledEffect } from '@dxos/echo-signals/core';\nimport { create } from '@dxos/live-object';\nimport { log } from '@dxos/log';\nimport { AttentionCapabilities } from '@dxos/plugin-attention';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { EdgeReplicationSetting } from '@dxos/protocols/proto/dxos/echo/metadata';\nimport { PublicKey } from '@dxos/react-client';\nimport { Filter, FQ_ID_LENGTH, parseFullyQualifiedId, SpaceState } from '@dxos/react-client/echo';\nimport { ComplexMap, reduceGroupBy } from '@dxos/util';\n\nimport { SpaceCapabilities } from './capabilities';\nimport { SpaceAction } from '../types';\nimport { COMPOSER_SPACE_LOCK, SHARED } from '../util';\n\nconst ACTIVE_NODE_BROADCAST_INTERVAL = 30_000;\nconst WAIT_FOR_OBJECT_TIMEOUT = 1000;\n\nexport default async (context: PluginsContext) => {\n const subscriptions = new EventSubscriptions();\n const spaceSubscriptions = new EventSubscriptions();\n\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const { graph } = context.requestCapability(Capabilities.AppGraph);\n const layout = context.requestCapability(Capabilities.Layout);\n const location = context.requestCapability(Capabilities.Location);\n const attention = context.requestCapability(AttentionCapabilities.Attention);\n const state = context.requestCapability(SpaceCapabilities.MutableState);\n const client = context.requestCapability(ClientCapabilities.Client);\n\n const defaultSpace = client.spaces.default;\n await defaultSpace.waitUntilReady();\n\n // Initialize space sharing lock in default space.\n if (typeof defaultSpace.properties[COMPOSER_SPACE_LOCK] !== 'boolean') {\n defaultSpace.properties[COMPOSER_SPACE_LOCK] = true;\n }\n\n const {\n objects: [spacesOrder],\n } = await defaultSpace.db.query(Filter.schema(Expando, { key: SHARED })).run();\n if (!spacesOrder) {\n // TODO(wittjosiah): Cannot be a Folder because Spaces are not TypedObjects so can't be saved in the database.\n // Instead, we store order as an array of space ids.\n defaultSpace.db.add(create({ key: SHARED, order: [] }));\n }\n\n // Await missing objects.\n subscriptions.add(\n scheduledEffect(\n () => ({\n layoutMode: layout.layoutMode,\n soloPart: location.active.solo?.[0],\n }),\n ({ layoutMode, soloPart }) => {\n if (layoutMode !== 'solo' || !soloPart) {\n return;\n }\n\n const node = graph.findNode(soloPart.id);\n if (!node && soloPart.id.length === FQ_ID_LENGTH) {\n const timeout = setTimeout(async () => {\n const node = graph.findNode(soloPart.id);\n if (!node) {\n await dispatch(createIntent(SpaceAction.WaitForObject, { id: soloPart.id }));\n }\n }, WAIT_FOR_OBJECT_TIMEOUT);\n\n return () => clearTimeout(timeout);\n }\n },\n ),\n );\n\n // Cache space names.\n subscriptions.add(\n client.spaces.subscribe(async (spaces) => {\n // TODO(wittjosiah): Remove. This is a hack to be able to migrate the default space properties.\n if (defaultSpace.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION) {\n await defaultSpace.internal.migrate();\n }\n\n spaces\n .filter((space) => space.state.get() === SpaceState.SPACE_READY)\n .forEach((space) => {\n subscriptions.add(\n scheduledEffect(\n () => ({ name: space.properties.name }),\n ({ name }) => (state.spaceNames[space.id] = name),\n ),\n );\n });\n }).unsubscribe,\n );\n\n // Broadcast active node to other peers in the space.\n subscriptions.add(\n scheduledEffect(\n () => ({\n open: openIds(location.active, layout.layoutMode === 'solo' ? ['solo'] : ['main']),\n closed: [...location.closed],\n }),\n ({ open, closed }) => {\n const send = () => {\n const spaces = client.spaces.get();\n const identity = client.halo.identity.get();\n if (identity && location.active) {\n // Group parts by space for efficient messaging.\n const idsBySpace = reduceGroupBy(open, (id) => {\n try {\n const [spaceId] = parseFullyQualifiedId(id);\n return spaceId;\n } catch {\n return null;\n }\n });\n\n const removedBySpace = reduceGroupBy(closed, (id) => {\n try {\n const [spaceId] = parseFullyQualifiedId(id);\n return spaceId;\n } catch {\n return null;\n }\n });\n\n // NOTE: Ensure all spaces are included so that we send the correct `removed` object arrays.\n for (const space of spaces) {\n if (!idsBySpace.has(space.id)) {\n idsBySpace.set(space.id, []);\n }\n }\n\n for (const [spaceId, added] of idsBySpace) {\n const removed = removedBySpace.get(spaceId) ?? [];\n const space = spaces.find((space) => space.id === spaceId);\n if (!space) {\n continue;\n }\n\n void space\n .postMessage('viewing', {\n identityKey: identity.identityKey.toHex(),\n attended: attention.current ? [...attention.current] : [],\n added,\n removed,\n })\n // TODO(burdon): This seems defensive; why would this fail? Backoff interval.\n .catch((err) => {\n log.warn('Failed to broadcast active node for presence.', { err: err.message });\n });\n }\n }\n };\n\n send();\n // Send at interval to allow peers to expire entries if they become disconnected.\n const interval = setInterval(() => send(), ACTIVE_NODE_BROADCAST_INTERVAL);\n return () => clearInterval(interval);\n },\n ),\n );\n\n // Listen for active nodes from other peers in the space.\n subscriptions.add(\n client.spaces.subscribe((spaces) => {\n spaceSubscriptions.clear();\n spaces.forEach((space) => {\n spaceSubscriptions.add(\n space.listen('viewing', (message) => {\n const { added, removed, attended } = message.payload;\n\n const identityKey = PublicKey.safeFrom(message.payload.identityKey);\n const currentIdentity = client.halo.identity.get();\n if (\n identityKey &&\n !currentIdentity?.identityKey.equals(identityKey) &&\n Array.isArray(added) &&\n Array.isArray(removed)\n ) {\n added.forEach((id) => {\n if (typeof id === 'string') {\n if (!(id in state.viewersByObject)) {\n state.viewersByObject[id] = new ComplexMap(PublicKey.hash);\n }\n state.viewersByObject[id]!.set(identityKey, {\n lastSeen: Date.now(),\n currentlyAttended: new Set(attended).has(id),\n });\n if (!state.viewersByIdentity.has(identityKey)) {\n state.viewersByIdentity.set(identityKey, new Set());\n }\n state.viewersByIdentity.get(identityKey)!.add(id);\n }\n });\n\n removed.forEach((id) => {\n if (typeof id === 'string') {\n state.viewersByObject[id]?.delete(identityKey);\n state.viewersByIdentity.get(identityKey)?.delete(id);\n // It’s okay for these to be empty sets/maps, reduces churn.\n }\n });\n }\n }),\n );\n });\n }).unsubscribe,\n );\n\n // Enable edge replication for all spaces.\n try {\n await Promise.all(\n client.spaces.get().map((space) => space.internal.setEdgeReplicationPreference(EdgeReplicationSetting.ENABLED)),\n );\n state.enabledEdgeReplication = true;\n } catch (err) {\n log.catch(err);\n }\n\n return contributes(Capabilities.Null, null, () => {\n spaceSubscriptions.clear();\n subscriptions.clear();\n });\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["contributes", "createIntent", "openIds", "Capabilities", "EventSubscriptions", "Expando", "scheduledEffect", "create", "log", "AttentionCapabilities", "ClientCapabilities", "EdgeReplicationSetting", "PublicKey", "Filter", "FQ_ID_LENGTH", "parseFullyQualifiedId", "SpaceState", "ComplexMap", "reduceGroupBy", "ACTIVE_NODE_BROADCAST_INTERVAL", "WAIT_FOR_OBJECT_TIMEOUT", "context", "subscriptions", "EventSubscriptions", "spaceSubscriptions", "dispatchPromise", "dispatch", "requestCapability", "Capabilities", "IntentDispatcher", "graph", "AppGraph", "layout", "Layout", "location", "Location", "attention", "AttentionCapabilities", "Attention", "state", "SpaceCapabilities", "MutableState", "client", "ClientCapabilities", "Client", "defaultSpace", "spaces", "default", "waitUntilReady", "properties", "COMPOSER_SPACE_LOCK", "objects", "spacesOrder", "db", "query", "Filter", "schema", "Expando", "key", "SHARED", "run", "add", "create", "order", "scheduledEffect", "layoutMode", "soloPart", "active", "solo", "node", "findNode", "id", "length", "FQ_ID_LENGTH", "timeout", "setTimeout", "createIntent", "SpaceAction", "WaitForObject", "clearTimeout", "subscribe", "get", "SpaceState", "SPACE_REQUIRES_MIGRATION", "internal", "migrate", "filter", "space", "SPACE_READY", "forEach", "name", "spaceNames", "unsubscribe", "open", "openIds", "closed", "send", "identity", "halo", "idsBySpace", "reduceGroupBy", "spaceId", "parseFullyQualifiedId", "removedBySpace", "has", "set", "added", "removed", "find", "postMessage", "identityKey", "toHex", "attended", "current", "catch", "err", "log", "warn", "message", "interval", "setInterval", "clearInterval", "clear", "listen", "payload", "PublicKey", "safeFrom", "currentIdentity", "equals", "Array", "isArray", "viewersByObject", "ComplexMap", "hash", "lastSeen", "Date", "now", "currentlyAttended", "Set", "viewersByIdentity", "delete", "Promise", "all", "map", "setEdgeReplicationPreference", "EdgeReplicationSetting", "ENABLED", "enabledEdgeReplication", "contributes", "Null"]
7
+ }
@@ -1,10 +1,10 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  SpaceCapabilities
4
- } from "./chunk-LGL4A5B5.mjs";
4
+ } from "./chunk-375RB3CZ.mjs";
5
5
  import {
6
6
  SPACE_PLUGIN
7
- } from "./chunk-ICCM4YRJ.mjs";
7
+ } from "./chunk-7FUVU45N.mjs";
8
8
 
9
9
  // packages/plugins/plugin-space/src/capabilities/state.ts
10
10
  import { effect } from "@preact/signals-core";
@@ -45,4 +45,4 @@ var state_default = (context) => {
45
45
  export {
46
46
  state_default as default
47
47
  };
48
- //# sourceMappingURL=state-5GH2D5U4.mjs.map
48
+ //# sourceMappingURL=state-BMISGQ2O.mjs.map
@@ -1,6 +1,5 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
- ActiveParts,
4
3
  ActorSchema,
5
4
  ChannelType,
6
5
  CollectionAction,
@@ -15,10 +14,9 @@ import {
15
14
  SpaceSettingsSchema,
16
15
  ThreadStatus,
17
16
  ThreadType
18
- } from "../chunk-S6VAU6VJ.mjs";
19
- import "../chunk-ICCM4YRJ.mjs";
17
+ } from "../chunk-HTBGWQEU.mjs";
18
+ import "../chunk-7FUVU45N.mjs";
20
19
  export {
21
- ActiveParts,
22
20
  ActorSchema,
23
21
  ChannelType,
24
22
  CollectionAction,
@@ -7,10 +7,6 @@ export type SpacePluginOptions = {
7
7
  * Query parameter for the invitation code.
8
8
  */
9
9
  invitationParam?: string;
10
- /**
11
- * Whether to send observability events.
12
- */
13
- observability?: boolean;
14
10
  };
15
- export declare const SpacePlugin: ({ invitationUrl, invitationParam, observability, }?: SpacePluginOptions) => import("@dxos/app-framework").Plugin;
11
+ export declare const SpacePlugin: ({ invitationUrl, invitationParam, }?: SpacePluginOptions) => import("@dxos/app-framework").Plugin;
16
12
  //# sourceMappingURL=SpacePlugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SpacePlugin.d.ts","sourceRoot":"","sources":["../../../src/SpacePlugin.tsx"],"names":[],"mappings":"AAoCA,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,WAAW,wDAIrB,kBAAkB,yCAoGpB,CAAC"}
1
+ {"version":3,"file":"SpacePlugin.d.ts","sourceRoot":"","sources":["../../../src/SpacePlugin.tsx"],"names":[],"mappings":"AAoCA,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,WAAW,yCAGrB,kBAAkB,yCAqGpB,CAAC"}