@dxos/plugin-space 0.7.5-main.9cb18ac → 0.7.5-main.9d2a38b

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 (200) hide show
  1. package/dist/lib/browser/app-graph-builder-F6XSETHX.mjs +365 -0
  2. package/dist/lib/browser/app-graph-builder-F6XSETHX.mjs.map +7 -0
  3. package/dist/lib/browser/app-graph-serializer-FYJE23GN.mjs +80 -0
  4. package/dist/lib/browser/app-graph-serializer-FYJE23GN.mjs.map +7 -0
  5. package/dist/lib/browser/chunk-IZ7QKQ2E.mjs +523 -0
  6. package/dist/lib/browser/chunk-IZ7QKQ2E.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-SOXNANA6.mjs +12 -0
  8. package/dist/lib/browser/chunk-SOXNANA6.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-54VE4GTA.mjs → chunk-SSJ772GK.mjs} +9 -12
  10. package/dist/lib/browser/chunk-SSJ772GK.mjs.map +7 -0
  11. package/dist/lib/browser/chunk-T36CIHPG.mjs +133 -0
  12. package/dist/lib/browser/chunk-T36CIHPG.mjs.map +7 -0
  13. package/dist/lib/browser/chunk-UH5P4UL3.mjs +21 -0
  14. package/dist/lib/browser/chunk-UH5P4UL3.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-XXD33C4E.mjs +1672 -0
  16. package/dist/lib/browser/chunk-XXD33C4E.mjs.map +7 -0
  17. package/dist/lib/browser/identity-created-4Q4PFIC5.mjs +28 -0
  18. package/dist/lib/browser/identity-created-4Q4PFIC5.mjs.map +7 -0
  19. package/dist/lib/browser/index.mjs +186 -3481
  20. package/dist/lib/browser/index.mjs.map +4 -4
  21. package/dist/lib/browser/intent-resolver-XRZYCXXX.mjs +459 -0
  22. package/dist/lib/browser/intent-resolver-XRZYCXXX.mjs.map +7 -0
  23. package/dist/lib/browser/meta.json +1 -1
  24. package/dist/lib/browser/react-root-BDOPFJGJ.mjs +28 -0
  25. package/dist/lib/browser/react-root-BDOPFJGJ.mjs.map +7 -0
  26. package/dist/lib/browser/react-surface-EGOL2JBL.mjs +238 -0
  27. package/dist/lib/browser/react-surface-EGOL2JBL.mjs.map +7 -0
  28. package/dist/lib/browser/settings-WF67QZSD.mjs +24 -0
  29. package/dist/lib/browser/settings-WF67QZSD.mjs.map +7 -0
  30. package/dist/lib/browser/spaces-ready-WVU7US3C.mjs +200 -0
  31. package/dist/lib/browser/spaces-ready-WVU7US3C.mjs.map +7 -0
  32. package/dist/lib/browser/state-MS4KYJWI.mjs +47 -0
  33. package/dist/lib/browser/state-MS4KYJWI.mjs.map +7 -0
  34. package/dist/lib/browser/types/index.mjs +6 -6
  35. package/dist/lib/node/app-graph-builder-GKLVZ4PM.cjs +368 -0
  36. package/dist/lib/node/app-graph-builder-GKLVZ4PM.cjs.map +7 -0
  37. package/dist/lib/node/app-graph-serializer-RMTU5YSC.cjs +88 -0
  38. package/dist/lib/node/app-graph-serializer-RMTU5YSC.cjs.map +7 -0
  39. package/dist/lib/node/chunk-56NGXG2A.cjs +41 -0
  40. package/dist/lib/node/chunk-56NGXG2A.cjs.map +7 -0
  41. package/dist/lib/node/chunk-5D4RWKTV.cjs +551 -0
  42. package/dist/lib/node/chunk-5D4RWKTV.cjs.map +7 -0
  43. package/dist/lib/node/chunk-AJRP7AD6.cjs +1669 -0
  44. package/dist/lib/node/chunk-AJRP7AD6.cjs.map +7 -0
  45. package/dist/lib/node/{chunk-46S3JOES.cjs → chunk-AO4EW2RX.cjs} +7 -11
  46. package/dist/lib/node/chunk-AO4EW2RX.cjs.map +7 -0
  47. package/dist/lib/node/chunk-UENH2YBM.cjs +150 -0
  48. package/dist/lib/node/chunk-UENH2YBM.cjs.map +7 -0
  49. package/dist/lib/node/{chunk-YF2AQ7KP.cjs → chunk-YCBBGTFD.cjs} +16 -19
  50. package/dist/lib/node/chunk-YCBBGTFD.cjs.map +7 -0
  51. package/dist/lib/node/identity-created-QQWX7WX3.cjs +44 -0
  52. package/dist/lib/node/identity-created-QQWX7WX3.cjs.map +7 -0
  53. package/dist/lib/node/index.cjs +171 -3469
  54. package/dist/lib/node/index.cjs.map +4 -4
  55. package/dist/lib/node/intent-resolver-3NI6AUAI.cjs +458 -0
  56. package/dist/lib/node/intent-resolver-3NI6AUAI.cjs.map +7 -0
  57. package/dist/lib/node/meta.json +1 -1
  58. package/dist/lib/node/react-root-ZTR2J2I3.cjs +50 -0
  59. package/dist/lib/node/react-root-ZTR2J2I3.cjs.map +7 -0
  60. package/dist/lib/node/react-surface-75KRPQYT.cjs +233 -0
  61. package/dist/lib/node/react-surface-75KRPQYT.cjs.map +7 -0
  62. package/dist/lib/node/{meta.cjs → settings-KOVSPA3S.cjs} +19 -13
  63. package/dist/lib/node/settings-KOVSPA3S.cjs.map +7 -0
  64. package/dist/lib/node/spaces-ready-ILVGUHJH.cjs +211 -0
  65. package/dist/lib/node/spaces-ready-ILVGUHJH.cjs.map +7 -0
  66. package/dist/lib/node/state-4UIOUKLJ.cjs +61 -0
  67. package/dist/lib/node/state-4UIOUKLJ.cjs.map +7 -0
  68. package/dist/lib/node/types/index.cjs +18 -18
  69. package/dist/lib/node/types/index.cjs.map +1 -1
  70. package/dist/lib/node-esm/app-graph-builder-NEHQ5Z63.mjs +366 -0
  71. package/dist/lib/node-esm/app-graph-builder-NEHQ5Z63.mjs.map +7 -0
  72. package/dist/lib/node-esm/app-graph-serializer-UWWS5OVC.mjs +81 -0
  73. package/dist/lib/node-esm/app-graph-serializer-UWWS5OVC.mjs.map +7 -0
  74. package/dist/lib/node-esm/chunk-375RB3CZ.mjs +22 -0
  75. package/dist/lib/node-esm/chunk-375RB3CZ.mjs.map +7 -0
  76. package/dist/lib/node-esm/chunk-5QMAPAZD.mjs +524 -0
  77. package/dist/lib/node-esm/chunk-5QMAPAZD.mjs.map +7 -0
  78. package/dist/lib/node-esm/{chunk-2MNFEB23.mjs → chunk-7FUVU45N.mjs} +3 -6
  79. package/dist/lib/node-esm/chunk-7FUVU45N.mjs.map +7 -0
  80. package/dist/lib/node-esm/chunk-E5DWIQ3N.mjs +134 -0
  81. package/dist/lib/node-esm/chunk-E5DWIQ3N.mjs.map +7 -0
  82. package/dist/lib/node-esm/chunk-GVOPDPS2.mjs +1673 -0
  83. package/dist/lib/node-esm/chunk-GVOPDPS2.mjs.map +7 -0
  84. package/dist/lib/node-esm/{chunk-CDZETPO7.mjs → chunk-HTBGWQEU.mjs} +9 -12
  85. package/dist/lib/node-esm/chunk-HTBGWQEU.mjs.map +7 -0
  86. package/dist/lib/node-esm/identity-created-HMNY2MPB.mjs +29 -0
  87. package/dist/lib/node-esm/identity-created-HMNY2MPB.mjs.map +7 -0
  88. package/dist/lib/node-esm/index.mjs +186 -3481
  89. package/dist/lib/node-esm/index.mjs.map +4 -4
  90. package/dist/lib/node-esm/intent-resolver-P5EVBOGP.mjs +460 -0
  91. package/dist/lib/node-esm/intent-resolver-P5EVBOGP.mjs.map +7 -0
  92. package/dist/lib/node-esm/meta.json +1 -1
  93. package/dist/lib/node-esm/react-root-OUPJA4RY.mjs +29 -0
  94. package/dist/lib/node-esm/react-root-OUPJA4RY.mjs.map +7 -0
  95. package/dist/lib/node-esm/react-surface-7EVWCKIP.mjs +239 -0
  96. package/dist/lib/node-esm/react-surface-7EVWCKIP.mjs.map +7 -0
  97. package/dist/lib/node-esm/settings-EDK6WI3V.mjs +25 -0
  98. package/dist/lib/node-esm/settings-EDK6WI3V.mjs.map +7 -0
  99. package/dist/lib/node-esm/spaces-ready-CH3W7OGN.mjs +201 -0
  100. package/dist/lib/node-esm/spaces-ready-CH3W7OGN.mjs.map +7 -0
  101. package/dist/lib/node-esm/state-BMISGQ2O.mjs +48 -0
  102. package/dist/lib/node-esm/state-BMISGQ2O.mjs.map +7 -0
  103. package/dist/lib/node-esm/types/index.mjs +6 -6
  104. package/dist/types/src/SpacePlugin.d.ts +1 -24
  105. package/dist/types/src/SpacePlugin.d.ts.map +1 -1
  106. package/dist/types/src/capabilities/app-graph-builder.d.ts +181 -0
  107. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  108. package/dist/types/src/capabilities/app-graph-serializer.d.ts +4 -0
  109. package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -0
  110. package/dist/types/src/capabilities/capabilities.d.ts +15 -0
  111. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -0
  112. package/dist/types/src/capabilities/identity-created.d.ts +4 -0
  113. package/dist/types/src/capabilities/identity-created.d.ts.map +1 -0
  114. package/dist/types/src/capabilities/index.d.ts +195 -0
  115. package/dist/types/src/capabilities/index.d.ts.map +1 -0
  116. package/dist/types/src/capabilities/intent-resolver.d.ts +8 -0
  117. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -0
  118. package/dist/types/src/capabilities/react-root.d.ts +7 -0
  119. package/dist/types/src/capabilities/react-root.d.ts.map +1 -0
  120. package/dist/types/src/capabilities/react-surface.d.ts +7 -0
  121. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  122. package/dist/types/src/capabilities/settings.d.ts +4 -0
  123. package/dist/types/src/capabilities/settings.d.ts.map +1 -0
  124. package/dist/types/src/capabilities/spaces-ready.d.ts +4 -0
  125. package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -0
  126. package/dist/types/src/capabilities/state.d.ts +5 -0
  127. package/dist/types/src/capabilities/state.d.ts.map +1 -0
  128. package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts +7 -0
  129. package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts.map +1 -0
  130. package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts +8 -0
  131. package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts.map +1 -0
  132. package/dist/types/src/components/AdvancedObjectSettings/index.d.ts +2 -0
  133. package/dist/types/src/components/AdvancedObjectSettings/index.d.ts.map +1 -0
  134. package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
  135. package/dist/types/src/components/BaseObjectSettings.d.ts +7 -0
  136. package/dist/types/src/components/BaseObjectSettings.d.ts.map +1 -0
  137. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +1 -2
  138. package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
  139. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +2 -3
  140. package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
  141. package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
  142. package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
  143. package/dist/types/src/components/index.d.ts +2 -1
  144. package/dist/types/src/components/index.d.ts.map +1 -1
  145. package/dist/types/src/events.d.ts +5 -0
  146. package/dist/types/src/events.d.ts.map +1 -0
  147. package/dist/types/src/index.d.ts +3 -5
  148. package/dist/types/src/index.d.ts.map +1 -1
  149. package/dist/types/src/meta.d.ts +1 -4
  150. package/dist/types/src/meta.d.ts.map +1 -1
  151. package/dist/types/src/translations.d.ts +12 -0
  152. package/dist/types/src/translations.d.ts.map +1 -1
  153. package/dist/types/src/types/types.d.ts +5 -26
  154. package/dist/types/src/types/types.d.ts.map +1 -1
  155. package/dist/types/src/util.d.ts +7 -6
  156. package/dist/types/src/util.d.ts.map +1 -1
  157. package/dist/types/tsconfig.tsbuildinfo +1 -1
  158. package/package.json +37 -46
  159. package/src/SpacePlugin.tsx +115 -1412
  160. package/src/capabilities/app-graph-builder.ts +392 -0
  161. package/src/capabilities/app-graph-serializer.ts +73 -0
  162. package/src/capabilities/capabilities.ts +23 -0
  163. package/src/capabilities/identity-created.ts +26 -0
  164. package/src/capabilities/index.ts +17 -0
  165. package/src/capabilities/intent-resolver.ts +420 -0
  166. package/src/capabilities/react-root.tsx +20 -0
  167. package/src/capabilities/react-surface.tsx +234 -0
  168. package/src/capabilities/settings.ts +17 -0
  169. package/src/capabilities/spaces-ready.ts +231 -0
  170. package/src/capabilities/state.ts +45 -0
  171. package/src/components/AdvancedObjectSettings/AdvancedObjectSettings.tsx +72 -0
  172. package/src/components/AdvancedObjectSettings/ForeignKeys.tsx +51 -0
  173. package/src/components/AdvancedObjectSettings/index.ts +5 -0
  174. package/src/components/AwaitingObject.tsx +4 -10
  175. package/src/components/{DefaultObjectSettings.tsx → BaseObjectSettings.tsx} +2 -2
  176. package/src/components/CreateDialog/CreateObjectDialog.tsx +5 -5
  177. package/src/components/CreateDialog/CreateObjectPanel.tsx +54 -17
  178. package/src/components/SpacePluginSettings.tsx +2 -7
  179. package/src/components/SpacePresence.tsx +6 -5
  180. package/src/components/index.ts +2 -1
  181. package/src/events.ts +12 -0
  182. package/src/index.ts +3 -7
  183. package/src/meta.ts +1 -3
  184. package/src/translations.ts +4 -0
  185. package/src/types/types.ts +11 -49
  186. package/src/util.tsx +31 -25
  187. package/dist/lib/browser/chunk-54VE4GTA.mjs.map +0 -7
  188. package/dist/lib/browser/chunk-73BCBSLP.mjs +0 -15
  189. package/dist/lib/browser/chunk-73BCBSLP.mjs.map +0 -7
  190. package/dist/lib/browser/meta.mjs +0 -11
  191. package/dist/lib/browser/meta.mjs.map +0 -7
  192. package/dist/lib/node/chunk-46S3JOES.cjs.map +0 -7
  193. package/dist/lib/node/chunk-YF2AQ7KP.cjs.map +0 -7
  194. package/dist/lib/node/meta.cjs.map +0 -7
  195. package/dist/lib/node-esm/chunk-2MNFEB23.mjs.map +0 -7
  196. package/dist/lib/node-esm/chunk-CDZETPO7.mjs.map +0 -7
  197. package/dist/lib/node-esm/meta.mjs +0 -12
  198. package/dist/lib/node-esm/meta.mjs.map +0 -7
  199. package/dist/types/src/components/DefaultObjectSettings.d.ts +0 -7
  200. package/dist/types/src/components/DefaultObjectSettings.d.ts.map +0 -1
@@ -4,7 +4,7 @@
4
4
 
5
5
  import React, { useCallback, useEffect, useState } from 'react';
6
6
 
7
- import { usePlugin } from '@dxos/app-framework';
7
+ import { useCapability } from '@dxos/app-framework';
8
8
  import { generateName } from '@dxos/display-name';
9
9
  import { type Expando } from '@dxos/echo-schema';
10
10
  import { useGraph } from '@dxos/plugin-graph';
@@ -26,9 +26,10 @@ import {
26
26
  import { AttentionGlyph, useAttended, useAttention, type AttentionGlyphProps } from '@dxos/react-ui-attention';
27
27
  import { ComplexMap, keyToFallback } from '@dxos/util';
28
28
 
29
+ import { SpaceCapabilities } from '../capabilities';
29
30
  import { usePath } from '../hooks';
30
31
  import { SPACE_PLUGIN } from '../meta';
31
- import type { ObjectViewerProps, SpacePluginProvides } from '../types';
32
+ import type { ObjectViewerProps } from '../types';
32
33
 
33
34
  // TODO(thure): Get/derive these values from protocol
34
35
  const REFRESH_INTERVAL = 5000;
@@ -41,7 +42,8 @@ const noViewers = new ComplexMap<PublicKey, ObjectViewerProps>(PublicKey.hash);
41
42
  const getName = (identity: Identity) => identity.profile?.displayName ?? generateName(identity.identityKey.toHex());
42
43
 
43
44
  export const SpacePresence = ({ object, spaceKey }: { object: Expando; spaceKey?: PublicKey }) => {
44
- const spacePlugin = usePlugin<SpacePluginProvides>(SPACE_PLUGIN);
45
+ // TODO(wittjosiah): Doesn't need to be mutable but readonly type messes with ComplexMap.
46
+ const spaceState = useCapability(SpaceCapabilities.MutableState);
45
47
  const client = useClient();
46
48
  const identity = useIdentity();
47
49
  const space = spaceKey ? client.spaces.get(spaceKey) : getSpace(object);
@@ -63,11 +65,10 @@ export const SpacePresence = ({ object, spaceKey }: { object: Expando; spaceKey?
63
65
 
64
66
  // TODO(thure): Could it be a smell to return early when there are interactions with `deepSignal` later, since it
65
67
  // prevents reactivity?
66
- if (!identity || !spacePlugin || !space) {
68
+ if (!identity || !spaceState || !space) {
67
69
  return null;
68
70
  }
69
71
 
70
- const spaceState = spacePlugin.provides.space;
71
72
  const currentObjectViewers = spaceState.viewersByObject[fullyQualifiedId(object)] ?? noViewers;
72
73
 
73
74
  const membersForObject = spaceMembers
@@ -2,11 +2,12 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
+ export * from './AdvancedObjectSettings';
5
6
  export * from './AwaitingObject';
7
+ export * from './BaseObjectSettings';
6
8
  export * from './CreateDialog';
7
9
  export * from './CollectionMain';
8
10
  export * from './CollectionSection';
9
- export * from './DefaultObjectSettings';
10
11
  export * from './JoinDialog';
11
12
  export * from './MenuFooter';
12
13
  export * from './PersistenceStatus';
package/src/events.ts ADDED
@@ -0,0 +1,12 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { defineEvent } from '@dxos/app-framework';
6
+
7
+ import { SPACE_PLUGIN } from './meta';
8
+
9
+ export namespace SpaceEvents {
10
+ export const StateReady = defineEvent(`${SPACE_PLUGIN}/event/state-ready`);
11
+ export const DefaultSpaceReady = defineEvent(`${SPACE_PLUGIN}/event/default-space-ready`);
12
+ }
package/src/index.ts CHANGED
@@ -2,14 +2,10 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { SpacePlugin } from './SpacePlugin';
6
-
7
- export default SpacePlugin;
5
+ export { SpaceCapabilities, ThreadCapabilities } from './capabilities';
6
+ export { SpaceEvents } from './events';
8
7
 
9
8
  export * from './components';
10
9
  export * from './meta';
11
- export * from './types';
12
- export * from './util';
13
- export { default as translations } from './translations';
14
-
15
10
  export * from './SpacePlugin';
11
+ export * from './util';
package/src/meta.ts CHANGED
@@ -5,10 +5,8 @@
5
5
  import { type PluginMeta } from '@dxos/app-framework';
6
6
 
7
7
  export const SPACE_PLUGIN = 'dxos.org/plugin/space';
8
- export const SPACE_PLUGIN_SHORT_ID = 'space';
9
8
 
10
- export default {
9
+ export const meta = {
11
10
  id: SPACE_PLUGIN,
12
- shortId: SPACE_PLUGIN_SHORT_ID,
13
11
  name: 'Spaces',
14
12
  } satisfies PluginMeta;
@@ -105,6 +105,7 @@ export default [
105
105
  'offline persisted label': 'Saved to disk (offline)',
106
106
  'remote synced label': 'Synced with peers',
107
107
  'open settings panel label': 'Show Settings',
108
+ 'settings panel label': 'Settings',
108
109
  'open space settings label': 'Space Settings',
109
110
  'members tab label': 'Members',
110
111
  'settings tab label': 'Settings',
@@ -120,6 +121,9 @@ export default [
120
121
  'creating in collection label': 'In Collection',
121
122
  'clear input label': 'Clear',
122
123
  'expose object label': 'Expose in navtree',
124
+ 'advanced settings label': 'Advanced',
125
+ 'foreign keys': 'Foreign Keys',
126
+ 'add key': 'Add Key',
123
127
  },
124
128
  },
125
129
  },
@@ -2,19 +2,8 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import {
6
- type GraphBuilderProvides,
7
- type GraphSerializerProvides,
8
- type IntentResolverProvides,
9
- type MetadataRecordsProvides,
10
- type SettingsProvides,
11
- type SurfaceProvides,
12
- type TranslationsProvides,
13
- type Plugin,
14
- ActiveParts,
15
- } from '@dxos/app-framework';
16
- import { AST, S, type TypedObject, type Expando } from '@dxos/echo-schema';
17
- import { type PanelProvides } from '@dxos/plugin-deck/types';
5
+ import { ActiveParts } from '@dxos/app-framework';
6
+ import { AST, S, type Expando } from '@dxos/echo-schema';
18
7
  import { type PublicKey } from '@dxos/react-client';
19
8
  import { EchoObjectSchema, ReactiveObjectSchema, type Space, SpaceSchema } from '@dxos/react-client/echo';
20
9
  import { type ComplexMap } from '@dxos/util';
@@ -71,36 +60,16 @@ export type PluginState = {
71
60
  enabledEdgeReplication: boolean;
72
61
  };
73
62
 
74
- export type SpaceSettingsProps = {
75
- /**
76
- * Show closed spaces.
77
- */
78
- showHidden?: boolean;
79
- };
80
-
81
- export type SchemaProvides = {
82
- echo: {
83
- schema?: TypedObject[];
84
- system?: TypedObject[];
85
- };
86
- };
63
+ export const SpaceSettingsSchema = S.mutable(
64
+ S.Struct({
65
+ /**
66
+ * Show closed spaces.
67
+ */
68
+ showHidden: S.Boolean,
69
+ }),
70
+ );
87
71
 
88
- export const parseSchemaPlugin = (plugin?: Plugin) =>
89
- Array.isArray((plugin?.provides as any).echo?.schema) || Array.isArray((plugin?.provides as any).echo?.system)
90
- ? (plugin as Plugin<SchemaProvides>)
91
- : undefined;
92
-
93
- export type SpacePluginProvides = SurfaceProvides &
94
- IntentResolverProvides &
95
- GraphBuilderProvides &
96
- GraphSerializerProvides &
97
- MetadataRecordsProvides &
98
- SettingsProvides<SpaceSettingsProps> &
99
- TranslationsProvides &
100
- SchemaProvides &
101
- PanelProvides & {
102
- space: Readonly<PluginState>;
103
- };
72
+ export type SpaceSettingsProps = S.Schema.Type<typeof SpaceSettingsSchema>;
104
73
 
105
74
  // TODO(wittjosiah): Reconcile with graph export serializers.
106
75
 
@@ -267,13 +236,6 @@ export namespace SpaceAction {
267
236
  }),
268
237
  output: S.Void,
269
238
  }) {}
270
-
271
- export class ToggleHidden extends S.TaggedClass<ToggleHidden>()(`${SPACE_ACTION}/toggle-hidden`, {
272
- input: S.Struct({
273
- state: S.optional(S.Boolean),
274
- }),
275
- output: S.Void,
276
- }) {}
277
239
  }
278
240
 
279
241
  export namespace CollectionAction {
package/src/util.tsx CHANGED
@@ -2,12 +2,7 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import {
6
- createIntent,
7
- type PromiseIntentDispatcher,
8
- type MetadataResolver,
9
- NavigationAction,
10
- } from '@dxos/app-framework';
5
+ import { createIntent, type PromiseIntentDispatcher, NavigationAction } from '@dxos/app-framework';
11
6
  import { EXPANDO_TYPENAME, getObjectAnnotation, getTypename, type Expando } from '@dxos/echo-schema';
12
7
  import { invariant } from '@dxos/invariant';
13
8
  import { getSchema, isReactiveObject, makeRef } from '@dxos/live-object';
@@ -80,6 +75,7 @@ export const memoizeQuery = <T extends ReactiveEchoObject<any>>(
80
75
  return query?.objects ?? EMPTY_ARRAY;
81
76
  };
82
77
 
78
+ // TODO(wittjosiah): Factor out? Expose via capability?
83
79
  export const getSpaceDisplayName = (
84
80
  space: Space,
85
81
  { personal, namesCache = {} }: { personal?: boolean; namesCache?: Record<string, string> } = {},
@@ -102,7 +98,7 @@ const getCollectionGraphNodePartials = ({
102
98
  navigable: boolean;
103
99
  collection: CollectionType;
104
100
  space: Space;
105
- resolve: MetadataResolver;
101
+ resolve: (typename: string) => Record<string, any>;
106
102
  }) => {
107
103
  return {
108
104
  disabled: !navigable,
@@ -191,7 +187,7 @@ export const constructSpaceNode = ({
191
187
  navigable?: boolean;
192
188
  personal?: boolean;
193
189
  namesCache?: Record<string, string>;
194
- resolve: MetadataResolver;
190
+ resolve: (typename: string) => Record<string, any>;
195
191
  }) => {
196
192
  const hasPendingMigration = checkPendingMigration(space);
197
193
  const collection = space.state.get() === SpaceState.SPACE_READY && space.properties[CollectionType.typename]?.target;
@@ -370,7 +366,7 @@ export const createObjectNode = ({
370
366
  object: ReactiveEchoObject<any>;
371
367
  space: Space;
372
368
  navigable?: boolean;
373
- resolve: MetadataResolver;
369
+ resolve: (typename: string) => Record<string, any>;
374
370
  }) => {
375
371
  const type = getTypename(object);
376
372
  if (!type) {
@@ -408,9 +404,11 @@ export const createObjectNode = ({
408
404
  export const constructObjectActions = ({
409
405
  node,
410
406
  dispatch,
407
+ navigable = false,
411
408
  }: {
412
409
  node: Node<ReactiveEchoObject<any>>;
413
410
  dispatch: PromiseIntentDispatcher;
411
+ navigable?: boolean;
414
412
  }) => {
415
413
  const object = node.data;
416
414
  const getId = (id: string) => `${id}/${fullyQualifiedId(object)}`;
@@ -469,19 +467,23 @@ export const constructObjectActions = ({
469
467
  testId: 'spacePlugin.deleteObject',
470
468
  },
471
469
  },
472
- {
473
- id: getId('copy-link'),
474
- type: ACTION_TYPE,
475
- data: async () => {
476
- const url = `${window.location.origin}/${fullyQualifiedId(object)}`;
477
- await navigator.clipboard.writeText(url);
478
- },
479
- properties: {
480
- label: ['copy link label', { ns: SPACE_PLUGIN }],
481
- icon: 'ph--link--regular',
482
- testId: 'spacePlugin.copyLink',
483
- },
484
- },
470
+ ...(navigable || !(object instanceof CollectionType)
471
+ ? [
472
+ {
473
+ id: getId('copy-link'),
474
+ type: ACTION_TYPE,
475
+ data: async () => {
476
+ const url = `${window.location.origin}/${fullyQualifiedId(object)}`;
477
+ await navigator.clipboard.writeText(url);
478
+ },
479
+ properties: {
480
+ label: ['copy link label', { ns: SPACE_PLUGIN }],
481
+ icon: 'ph--link--regular',
482
+ testId: 'spacePlugin.copyLink',
483
+ },
484
+ },
485
+ ]
486
+ : []),
485
487
  // TODO(wittjosiah): Factor out and apply to all nodes.
486
488
  {
487
489
  id: NavigationAction.Expose._tag,
@@ -521,7 +523,7 @@ export const getActiveSpace = (graph: Graph, active?: string) => {
521
523
  */
522
524
  export const getNestedObjects = async (
523
525
  object: ReactiveEchoObject<any>,
524
- resolve: MetadataResolver,
526
+ resolve: (typename: string) => Record<string, any>,
525
527
  ): Promise<ReactiveEchoObject<any>[]> => {
526
528
  const type = getTypename(object);
527
529
  if (!type) {
@@ -529,7 +531,7 @@ export const getNestedObjects = async (
529
531
  }
530
532
 
531
533
  const metadata = resolve(type);
532
- const loadReferences = metadata.loadReferences;
534
+ const loadReferences = metadata?.loadReferences;
533
535
  if (typeof loadReferences !== 'function') {
534
536
  return [];
535
537
  }
@@ -543,7 +545,11 @@ export const getNestedObjects = async (
543
545
  * @deprecated Workaround for ECHO not supporting clone.
544
546
  */
545
547
  // TODO(burdon): Remove.
546
- export const cloneObject = async (object: Expando, resolve: MetadataResolver, newSpace: Space): Promise<Expando> => {
548
+ export const cloneObject = async (
549
+ object: Expando,
550
+ resolve: (typename: string) => Record<string, any>,
551
+ newSpace: Space,
552
+ ): Promise<Expando> => {
547
553
  const schema = getSchema(object);
548
554
  const typename = schema ? getObjectAnnotation(schema)?.typename ?? EXPANDO_TYPENAME : EXPANDO_TYPENAME;
549
555
  const metadata = resolve(typename);
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/types/collection.ts", "../../../src/types/thread.ts", "../../../src/types/types.ts"],
4
- "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Expando, Ref, S, TypedObject } from '@dxos/echo-schema';\n\nexport class CollectionType extends TypedObject({ typename: 'dxos.org/type/Collection', version: '0.1.0' })({\n name: S.optional(S.String),\n objects: S.mutable(S.Array(Ref(Expando))),\n // Key is schema typename and value is reference to a view object of the associated schema.\n // Having collection reference the views rather than vice versa ensures that the state converges to a single view per key (i.e. type).\n // This also leaves open a future where this key could be changed to allow for multiple stack views per section.\n // TODO(wittjosiah): Any way to make this more type safe?\n // TODO(wittjosiah): Should the views be separate objects or just be schemas for view data in this record?\n views: S.mutable(S.Record({ key: S.String, value: Ref(Expando) })),\n}) {}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Expando, Ref, S, TypedObject } from '@dxos/echo-schema';\n\n// TODO(wittjosiah): These types were placed here rather than in @dxos/plugin-thread\n// in order to avoid a circular dependency between threads and other objects that use threads.\n\n// TODO(wittjosiah): Factor out to halo?\nexport class ContactType extends TypedObject({ typename: 'dxos.org/type/Contact', version: '0.1.0' })({\n name: S.optional(S.String),\n identifiers: S.mutable(\n S.Array(\n S.Struct({\n type: S.String,\n value: S.String,\n }),\n ),\n ),\n}) {}\n\nexport const ActorSchema = S.mutable(\n S.Struct({\n contact: S.optional(Ref(ContactType)),\n // TODO(wittjosiah): Should the below fields just be the contact schema?\n // i.e. it should either be a reference to an existing contact or an inline contact schema.\n identityKey: S.optional(S.String),\n // TODO(burdon): Generalize to handle/identifier?\n email: S.optional(S.String),\n name: S.optional(S.String),\n }),\n);\n\nexport type ActorType = S.Schema.Type<typeof ActorSchema>;\n\nexport enum MessageState {\n NONE = 0,\n ARCHIVED = 1,\n DELETED = 2,\n SPAM = 3,\n}\n\nexport class MessageType extends TypedObject({ typename: 'dxos.org/type/Message', version: '0.1.0' })({\n /** ISO date string when the message was sent. */\n timestamp: S.String,\n /** Message state. */\n state: S.optional(S.Enums(MessageState)),\n /** Identity of the message sender. */\n sender: ActorSchema,\n /** Text content of the message. */\n text: S.String,\n /** Non-text content sent with a message (e.g., files, polls, etc.) */\n parts: S.optional(S.mutable(S.Array(Ref(Expando)))),\n /** Custom properties for specific message types (e.g. email subject or cc fields). */\n properties: S.optional(S.mutable(S.Record({ key: S.String, value: S.Any }))),\n // TODO(wittjosiah): Add read status:\n // - Read receipts need to be per space member.\n // - Read receipts don't need to be added to schema until they being implemented.\n /** Context of the application when message was created. */\n // TODO(burdon): Evolve \"attention object\" to be current UX state? E.g., of Deck?\n context: S.optional(Ref(Expando)),\n}) {}\n\nexport const ThreadStatus = S.Union(S.Literal('staged'), S.Literal('active'), S.Literal('resolved'));\n\nexport class ThreadType extends TypedObject({ typename: 'dxos.org/type/Thread', version: '0.1.0' })({\n name: S.optional(S.String),\n /** AM cursor-range: 'from:to'. */\n anchor: S.optional(S.String),\n status: S.optional(ThreadStatus),\n messages: S.mutable(S.Array(Ref(MessageType))),\n}) {}\n\nexport class ChannelType extends TypedObject({ typename: 'dxos.org/type/Channel', version: '0.1.0' })({\n name: S.optional(S.String),\n threads: S.mutable(S.Array(Ref(ThreadType))),\n}) {}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport {\n type GraphBuilderProvides,\n type GraphSerializerProvides,\n type IntentResolverProvides,\n type MetadataRecordsProvides,\n type SettingsProvides,\n type SurfaceProvides,\n type TranslationsProvides,\n type Plugin,\n ActiveParts,\n} from '@dxos/app-framework';\nimport { AST, S, type TypedObject, type Expando } from '@dxos/echo-schema';\nimport { type PanelProvides } from '@dxos/plugin-deck/types';\nimport { type PublicKey } from '@dxos/react-client';\nimport { EchoObjectSchema, ReactiveObjectSchema, type Space, SpaceSchema } from '@dxos/react-client/echo';\nimport { type ComplexMap } from '@dxos/util';\n\nimport { CollectionType } from './collection';\nimport { SPACE_PLUGIN } from '../meta';\n\nexport const SPACE_DIRECTORY_HANDLE = 'dxos.org/plugin/space/directory';\n\nexport type ObjectViewerProps = {\n lastSeen: number;\n currentlyAttended: boolean;\n};\n\nexport type ObjectId = string;\n\nexport type PluginState = {\n /**\n * Which objects are currently being viewed by which peers.\n */\n viewersByObject: Record<ObjectId, ComplexMap<PublicKey, ObjectViewerProps>>;\n\n /**\n * Which peers are currently viewing which objects.\n */\n viewersByIdentity: ComplexMap<PublicKey, Set<ObjectId>>;\n\n /**\n * Object that was linked to directly but not found and is being awaited.\n */\n awaiting: string | undefined;\n\n /**\n * Cached space names, used when spaces are closed or loading.\n */\n spaceNames: Record<string, string>;\n\n /**\n * Which spaces have an SDK migration running currently.\n */\n // TODO(wittjosiah): Factor out to sdk. Migration running should probably be a space state.\n sdkMigrationRunning: Record<string, boolean>;\n\n /**\n * Whether or not the user can navigate to collections in the graph.\n * Determined by whether or not there is an available plugin that can render a collection.\n */\n navigableCollections: boolean;\n\n /**\n * Tracks whether setting edge replication as default has been run on spaces.\n */\n // TODO(wittjosiah): Systematic way to handle migrations of state outside of spaces.\n enabledEdgeReplication: boolean;\n};\n\nexport type SpaceSettingsProps = {\n /**\n * Show closed spaces.\n */\n showHidden?: boolean;\n};\n\nexport type SchemaProvides = {\n echo: {\n schema?: TypedObject[];\n system?: TypedObject[];\n };\n};\n\nexport const parseSchemaPlugin = (plugin?: Plugin) =>\n Array.isArray((plugin?.provides as any).echo?.schema) || Array.isArray((plugin?.provides as any).echo?.system)\n ? (plugin as Plugin<SchemaProvides>)\n : undefined;\n\nexport type SpacePluginProvides = SurfaceProvides &\n IntentResolverProvides &\n GraphBuilderProvides &\n GraphSerializerProvides &\n MetadataRecordsProvides &\n SettingsProvides<SpaceSettingsProps> &\n TranslationsProvides &\n SchemaProvides &\n PanelProvides & {\n space: Readonly<PluginState>;\n };\n\n// TODO(wittjosiah): Reconcile with graph export serializers.\n\nexport type SerializerMap = Record<string, TypedObjectSerializer>;\n\nexport interface TypedObjectSerializer<T extends Expando = Expando> {\n serialize(params: { object: T }): Promise<string>;\n\n /**\n * @param params.content\n * @param params.space Space to use for deserializing schema references.\n * @param params.newId Generate new ID for deserialized object.\n */\n deserialize(params: { content: string; space: Space; newId?: boolean }): Promise<T>;\n}\n\nexport const SpaceForm = S.Struct({\n name: S.optional(S.String.annotations({ [AST.TitleAnnotationId]: 'Name' })),\n // TODO(wittjosiah): Make optional with default value.\n edgeReplication: S.Boolean.annotations({ [AST.TitleAnnotationId]: 'Enable EDGE Replication' }),\n});\n\nexport const SPACE_ACTION = `${SPACE_PLUGIN}/action`;\n\nexport namespace SpaceAction {\n export class OpenCreateSpace extends S.TaggedClass<OpenCreateSpace>()(`${SPACE_ACTION}/open-create-space`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class Create extends S.TaggedClass<Create>()(`${SPACE_ACTION}/create`, {\n input: SpaceForm,\n output: S.Struct({\n id: S.String,\n activeParts: ActiveParts,\n space: SpaceSchema,\n }),\n }) {}\n\n export class Join extends S.TaggedClass<Join>()(`${SPACE_ACTION}/join`, {\n input: S.Struct({\n invitationCode: S.optional(S.String),\n onDone: S.optional(S.Any),\n }),\n output: S.Void,\n }) {}\n\n export class Share extends S.TaggedClass<Share>()(`${SPACE_ACTION}/share`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Lock extends S.TaggedClass<Lock>()(`${SPACE_ACTION}/lock`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Unlock extends S.TaggedClass<Unlock>()(`${SPACE_ACTION}/unlock`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Rename extends S.TaggedClass<Rename>()(`${SPACE_ACTION}/rename`, {\n input: S.Struct({\n space: SpaceSchema,\n caller: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class OpenSettings extends S.TaggedClass<OpenSettings>()(`${SPACE_ACTION}/open-settings`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Open extends S.TaggedClass<Open>()(`${SPACE_ACTION}/open`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Close extends S.TaggedClass<Close>()(`${SPACE_ACTION}/close`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Migrate extends S.TaggedClass<Migrate>()(`${SPACE_ACTION}/migrate`, {\n input: S.Struct({\n space: SpaceSchema,\n version: S.optional(S.String),\n }),\n output: S.Boolean,\n }) {}\n\n export class OpenCreateObject extends S.TaggedClass<OpenCreateObject>()(`${SPACE_ACTION}/open-create-object`, {\n input: S.Struct({\n target: S.Union(SpaceSchema, CollectionType),\n navigable: S.optional(S.Boolean),\n }),\n output: S.Void,\n }) {}\n\n export class AddObject extends S.TaggedClass<AddObject>()(`${SPACE_ACTION}/add-object`, {\n input: S.Struct({\n object: ReactiveObjectSchema,\n target: S.Union(SpaceSchema, CollectionType),\n }),\n output: S.Struct({\n id: S.String,\n activeParts: ActiveParts,\n object: EchoObjectSchema,\n }),\n }) {}\n\n export const DeletionData = S.Struct({\n objects: S.Array(EchoObjectSchema),\n parentCollection: CollectionType,\n indices: S.Array(S.Number),\n nestedObjectsList: S.Array(S.Array(EchoObjectSchema)),\n wasActive: S.Array(S.String),\n });\n\n export type DeletionData = S.Schema.Type<typeof DeletionData>;\n\n export class RemoveObjects extends S.TaggedClass<RemoveObjects>()(`${SPACE_ACTION}/remove-objects`, {\n input: S.Struct({\n objects: S.Array(EchoObjectSchema),\n target: S.optional(CollectionType),\n deletionData: S.optional(DeletionData),\n }),\n output: S.Void,\n }) {}\n\n export class RenameObject extends S.TaggedClass<RenameObject>()(`${SPACE_ACTION}/rename-object`, {\n input: S.Struct({\n object: EchoObjectSchema,\n caller: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class DuplicateObject extends S.TaggedClass<DuplicateObject>()(`${SPACE_ACTION}/duplicate-object`, {\n input: S.Struct({\n object: EchoObjectSchema,\n target: S.Union(SpaceSchema, CollectionType),\n }),\n output: S.Void,\n }) {}\n\n export class WaitForObject extends S.TaggedClass<WaitForObject>()(`${SPACE_ACTION}/wait-for-object`, {\n input: S.Struct({\n id: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class ToggleHidden extends S.TaggedClass<ToggleHidden>()(`${SPACE_ACTION}/toggle-hidden`, {\n input: S.Struct({\n state: S.optional(S.Boolean),\n }),\n output: S.Void,\n }) {}\n}\n\nexport namespace CollectionAction {\n export class Create extends S.TaggedClass<Create>()('dxos.org/plugin/collection/action/create', {\n input: S.Struct({\n name: S.optional(S.String),\n }),\n output: S.Struct({\n object: CollectionType,\n }),\n }) {}\n}\n"],
5
- "mappings": "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",
6
- "names": ["Expando", "Ref", "S", "TypedObject", "CollectionType", "TypedObject", "typename", "version", "name", "S", "optional", "String", "objects", "mutable", "Array", "Ref", "Expando", "views", "Record", "key", "value", "Expando", "Ref", "S", "TypedObject", "ContactType", "TypedObject", "typename", "version", "name", "S", "optional", "String", "identifiers", "mutable", "Array", "Struct", "type", "value", "ActorSchema", "contact", "Ref", "identityKey", "email", "MessageState", "MessageType", "timestamp", "state", "Enums", "sender", "text", "parts", "Expando", "properties", "Record", "key", "Any", "context", "ThreadStatus", "Union", "Literal", "ThreadType", "anchor", "status", "messages", "ChannelType", "threads", "ActiveParts", "AST", "S", "EchoObjectSchema", "ReactiveObjectSchema", "SpaceSchema", "SPACE_DIRECTORY_HANDLE", "parseSchemaPlugin", "plugin", "Array", "isArray", "provides", "echo", "schema", "system", "undefined", "SpaceForm", "S", "Struct", "name", "optional", "String", "annotations", "AST", "TitleAnnotationId", "edgeReplication", "Boolean", "SPACE_ACTION", "SPACE_PLUGIN", "SpaceAction", "OpenCreateSpace", "TaggedClass", "input", "Void", "output", "Create", "id", "activeParts", "ActiveParts", "space", "SpaceSchema", "Join", "invitationCode", "onDone", "Any", "Share", "Lock", "Unlock", "Rename", "caller", "OpenSettings", "Open", "Close", "Migrate", "version", "OpenCreateObject", "target", "Union", "CollectionType", "navigable", "AddObject", "object", "ReactiveObjectSchema", "EchoObjectSchema", "DeletionData", "objects", "parentCollection", "indices", "Number", "nestedObjectsList", "wasActive", "RemoveObjects", "deletionData", "RenameObject", "DuplicateObject", "WaitForObject", "ToggleHidden", "state", "CollectionAction"]
7
- }
@@ -1,15 +0,0 @@
1
- // packages/plugins/plugin-space/src/meta.ts
2
- var SPACE_PLUGIN = "dxos.org/plugin/space";
3
- var SPACE_PLUGIN_SHORT_ID = "space";
4
- var meta_default = {
5
- id: SPACE_PLUGIN,
6
- shortId: SPACE_PLUGIN_SHORT_ID,
7
- name: "Spaces"
8
- };
9
-
10
- export {
11
- SPACE_PLUGIN,
12
- SPACE_PLUGIN_SHORT_ID,
13
- meta_default
14
- };
15
- //# sourceMappingURL=chunk-73BCBSLP.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/meta.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const SPACE_PLUGIN = 'dxos.org/plugin/space';\nexport const SPACE_PLUGIN_SHORT_ID = 'space';\n\nexport default {\n id: SPACE_PLUGIN,\n shortId: SPACE_PLUGIN_SHORT_ID,\n name: 'Spaces',\n} satisfies PluginMeta;\n"],
5
- "mappings": ";AAMO,IAAMA,eAAe;AACrB,IAAMC,wBAAwB;AAErC,IAAA,eAAe;EACbC,IAAIF;EACJG,SAASF;EACTG,MAAM;AACR;",
6
- "names": ["SPACE_PLUGIN", "SPACE_PLUGIN_SHORT_ID", "id", "shortId", "name"]
7
- }
@@ -1,11 +0,0 @@
1
- import {
2
- SPACE_PLUGIN,
3
- SPACE_PLUGIN_SHORT_ID,
4
- meta_default
5
- } from "./chunk-73BCBSLP.mjs";
6
- export {
7
- SPACE_PLUGIN,
8
- SPACE_PLUGIN_SHORT_ID,
9
- meta_default as default
10
- };
11
- //# sourceMappingURL=meta.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": [],
4
- "sourcesContent": [],
5
- "mappings": "",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/meta.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const SPACE_PLUGIN = 'dxos.org/plugin/space';\nexport const SPACE_PLUGIN_SHORT_ID = 'space';\n\nexport default {\n id: SPACE_PLUGIN,\n shortId: SPACE_PLUGIN_SHORT_ID,\n name: 'Spaces',\n} satisfies PluginMeta;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAMA,eAAe;AACrB,IAAMC,wBAAwB;AAErC,IAAA,eAAe;EACbC,IAAIF;EACJG,SAASF;EACTG,MAAM;AACR;",
6
- "names": ["SPACE_PLUGIN", "SPACE_PLUGIN_SHORT_ID", "id", "shortId", "name"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/types/collection.ts", "../../../src/types/thread.ts", "../../../src/types/types.ts"],
4
- "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Expando, Ref, S, TypedObject } from '@dxos/echo-schema';\n\nexport class CollectionType extends TypedObject({ typename: 'dxos.org/type/Collection', version: '0.1.0' })({\n name: S.optional(S.String),\n objects: S.mutable(S.Array(Ref(Expando))),\n // Key is schema typename and value is reference to a view object of the associated schema.\n // Having collection reference the views rather than vice versa ensures that the state converges to a single view per key (i.e. type).\n // This also leaves open a future where this key could be changed to allow for multiple stack views per section.\n // TODO(wittjosiah): Any way to make this more type safe?\n // TODO(wittjosiah): Should the views be separate objects or just be schemas for view data in this record?\n views: S.mutable(S.Record({ key: S.String, value: Ref(Expando) })),\n}) {}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Expando, Ref, S, TypedObject } from '@dxos/echo-schema';\n\n// TODO(wittjosiah): These types were placed here rather than in @dxos/plugin-thread\n// in order to avoid a circular dependency between threads and other objects that use threads.\n\n// TODO(wittjosiah): Factor out to halo?\nexport class ContactType extends TypedObject({ typename: 'dxos.org/type/Contact', version: '0.1.0' })({\n name: S.optional(S.String),\n identifiers: S.mutable(\n S.Array(\n S.Struct({\n type: S.String,\n value: S.String,\n }),\n ),\n ),\n}) {}\n\nexport const ActorSchema = S.mutable(\n S.Struct({\n contact: S.optional(Ref(ContactType)),\n // TODO(wittjosiah): Should the below fields just be the contact schema?\n // i.e. it should either be a reference to an existing contact or an inline contact schema.\n identityKey: S.optional(S.String),\n // TODO(burdon): Generalize to handle/identifier?\n email: S.optional(S.String),\n name: S.optional(S.String),\n }),\n);\n\nexport type ActorType = S.Schema.Type<typeof ActorSchema>;\n\nexport enum MessageState {\n NONE = 0,\n ARCHIVED = 1,\n DELETED = 2,\n SPAM = 3,\n}\n\nexport class MessageType extends TypedObject({ typename: 'dxos.org/type/Message', version: '0.1.0' })({\n /** ISO date string when the message was sent. */\n timestamp: S.String,\n /** Message state. */\n state: S.optional(S.Enums(MessageState)),\n /** Identity of the message sender. */\n sender: ActorSchema,\n /** Text content of the message. */\n text: S.String,\n /** Non-text content sent with a message (e.g., files, polls, etc.) */\n parts: S.optional(S.mutable(S.Array(Ref(Expando)))),\n /** Custom properties for specific message types (e.g. email subject or cc fields). */\n properties: S.optional(S.mutable(S.Record({ key: S.String, value: S.Any }))),\n // TODO(wittjosiah): Add read status:\n // - Read receipts need to be per space member.\n // - Read receipts don't need to be added to schema until they being implemented.\n /** Context of the application when message was created. */\n // TODO(burdon): Evolve \"attention object\" to be current UX state? E.g., of Deck?\n context: S.optional(Ref(Expando)),\n}) {}\n\nexport const ThreadStatus = S.Union(S.Literal('staged'), S.Literal('active'), S.Literal('resolved'));\n\nexport class ThreadType extends TypedObject({ typename: 'dxos.org/type/Thread', version: '0.1.0' })({\n name: S.optional(S.String),\n /** AM cursor-range: 'from:to'. */\n anchor: S.optional(S.String),\n status: S.optional(ThreadStatus),\n messages: S.mutable(S.Array(Ref(MessageType))),\n}) {}\n\nexport class ChannelType extends TypedObject({ typename: 'dxos.org/type/Channel', version: '0.1.0' })({\n name: S.optional(S.String),\n threads: S.mutable(S.Array(Ref(ThreadType))),\n}) {}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport {\n type GraphBuilderProvides,\n type GraphSerializerProvides,\n type IntentResolverProvides,\n type MetadataRecordsProvides,\n type SettingsProvides,\n type SurfaceProvides,\n type TranslationsProvides,\n type Plugin,\n ActiveParts,\n} from '@dxos/app-framework';\nimport { AST, S, type TypedObject, type Expando } from '@dxos/echo-schema';\nimport { type PanelProvides } from '@dxos/plugin-deck/types';\nimport { type PublicKey } from '@dxos/react-client';\nimport { EchoObjectSchema, ReactiveObjectSchema, type Space, SpaceSchema } from '@dxos/react-client/echo';\nimport { type ComplexMap } from '@dxos/util';\n\nimport { CollectionType } from './collection';\nimport { SPACE_PLUGIN } from '../meta';\n\nexport const SPACE_DIRECTORY_HANDLE = 'dxos.org/plugin/space/directory';\n\nexport type ObjectViewerProps = {\n lastSeen: number;\n currentlyAttended: boolean;\n};\n\nexport type ObjectId = string;\n\nexport type PluginState = {\n /**\n * Which objects are currently being viewed by which peers.\n */\n viewersByObject: Record<ObjectId, ComplexMap<PublicKey, ObjectViewerProps>>;\n\n /**\n * Which peers are currently viewing which objects.\n */\n viewersByIdentity: ComplexMap<PublicKey, Set<ObjectId>>;\n\n /**\n * Object that was linked to directly but not found and is being awaited.\n */\n awaiting: string | undefined;\n\n /**\n * Cached space names, used when spaces are closed or loading.\n */\n spaceNames: Record<string, string>;\n\n /**\n * Which spaces have an SDK migration running currently.\n */\n // TODO(wittjosiah): Factor out to sdk. Migration running should probably be a space state.\n sdkMigrationRunning: Record<string, boolean>;\n\n /**\n * Whether or not the user can navigate to collections in the graph.\n * Determined by whether or not there is an available plugin that can render a collection.\n */\n navigableCollections: boolean;\n\n /**\n * Tracks whether setting edge replication as default has been run on spaces.\n */\n // TODO(wittjosiah): Systematic way to handle migrations of state outside of spaces.\n enabledEdgeReplication: boolean;\n};\n\nexport type SpaceSettingsProps = {\n /**\n * Show closed spaces.\n */\n showHidden?: boolean;\n};\n\nexport type SchemaProvides = {\n echo: {\n schema?: TypedObject[];\n system?: TypedObject[];\n };\n};\n\nexport const parseSchemaPlugin = (plugin?: Plugin) =>\n Array.isArray((plugin?.provides as any).echo?.schema) || Array.isArray((plugin?.provides as any).echo?.system)\n ? (plugin as Plugin<SchemaProvides>)\n : undefined;\n\nexport type SpacePluginProvides = SurfaceProvides &\n IntentResolverProvides &\n GraphBuilderProvides &\n GraphSerializerProvides &\n MetadataRecordsProvides &\n SettingsProvides<SpaceSettingsProps> &\n TranslationsProvides &\n SchemaProvides &\n PanelProvides & {\n space: Readonly<PluginState>;\n };\n\n// TODO(wittjosiah): Reconcile with graph export serializers.\n\nexport type SerializerMap = Record<string, TypedObjectSerializer>;\n\nexport interface TypedObjectSerializer<T extends Expando = Expando> {\n serialize(params: { object: T }): Promise<string>;\n\n /**\n * @param params.content\n * @param params.space Space to use for deserializing schema references.\n * @param params.newId Generate new ID for deserialized object.\n */\n deserialize(params: { content: string; space: Space; newId?: boolean }): Promise<T>;\n}\n\nexport const SpaceForm = S.Struct({\n name: S.optional(S.String.annotations({ [AST.TitleAnnotationId]: 'Name' })),\n // TODO(wittjosiah): Make optional with default value.\n edgeReplication: S.Boolean.annotations({ [AST.TitleAnnotationId]: 'Enable EDGE Replication' }),\n});\n\nexport const SPACE_ACTION = `${SPACE_PLUGIN}/action`;\n\nexport namespace SpaceAction {\n export class OpenCreateSpace extends S.TaggedClass<OpenCreateSpace>()(`${SPACE_ACTION}/open-create-space`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class Create extends S.TaggedClass<Create>()(`${SPACE_ACTION}/create`, {\n input: SpaceForm,\n output: S.Struct({\n id: S.String,\n activeParts: ActiveParts,\n space: SpaceSchema,\n }),\n }) {}\n\n export class Join extends S.TaggedClass<Join>()(`${SPACE_ACTION}/join`, {\n input: S.Struct({\n invitationCode: S.optional(S.String),\n onDone: S.optional(S.Any),\n }),\n output: S.Void,\n }) {}\n\n export class Share extends S.TaggedClass<Share>()(`${SPACE_ACTION}/share`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Lock extends S.TaggedClass<Lock>()(`${SPACE_ACTION}/lock`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Unlock extends S.TaggedClass<Unlock>()(`${SPACE_ACTION}/unlock`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Rename extends S.TaggedClass<Rename>()(`${SPACE_ACTION}/rename`, {\n input: S.Struct({\n space: SpaceSchema,\n caller: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class OpenSettings extends S.TaggedClass<OpenSettings>()(`${SPACE_ACTION}/open-settings`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Open extends S.TaggedClass<Open>()(`${SPACE_ACTION}/open`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Close extends S.TaggedClass<Close>()(`${SPACE_ACTION}/close`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Migrate extends S.TaggedClass<Migrate>()(`${SPACE_ACTION}/migrate`, {\n input: S.Struct({\n space: SpaceSchema,\n version: S.optional(S.String),\n }),\n output: S.Boolean,\n }) {}\n\n export class OpenCreateObject extends S.TaggedClass<OpenCreateObject>()(`${SPACE_ACTION}/open-create-object`, {\n input: S.Struct({\n target: S.Union(SpaceSchema, CollectionType),\n navigable: S.optional(S.Boolean),\n }),\n output: S.Void,\n }) {}\n\n export class AddObject extends S.TaggedClass<AddObject>()(`${SPACE_ACTION}/add-object`, {\n input: S.Struct({\n object: ReactiveObjectSchema,\n target: S.Union(SpaceSchema, CollectionType),\n }),\n output: S.Struct({\n id: S.String,\n activeParts: ActiveParts,\n object: EchoObjectSchema,\n }),\n }) {}\n\n export const DeletionData = S.Struct({\n objects: S.Array(EchoObjectSchema),\n parentCollection: CollectionType,\n indices: S.Array(S.Number),\n nestedObjectsList: S.Array(S.Array(EchoObjectSchema)),\n wasActive: S.Array(S.String),\n });\n\n export type DeletionData = S.Schema.Type<typeof DeletionData>;\n\n export class RemoveObjects extends S.TaggedClass<RemoveObjects>()(`${SPACE_ACTION}/remove-objects`, {\n input: S.Struct({\n objects: S.Array(EchoObjectSchema),\n target: S.optional(CollectionType),\n deletionData: S.optional(DeletionData),\n }),\n output: S.Void,\n }) {}\n\n export class RenameObject extends S.TaggedClass<RenameObject>()(`${SPACE_ACTION}/rename-object`, {\n input: S.Struct({\n object: EchoObjectSchema,\n caller: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class DuplicateObject extends S.TaggedClass<DuplicateObject>()(`${SPACE_ACTION}/duplicate-object`, {\n input: S.Struct({\n object: EchoObjectSchema,\n target: S.Union(SpaceSchema, CollectionType),\n }),\n output: S.Void,\n }) {}\n\n export class WaitForObject extends S.TaggedClass<WaitForObject>()(`${SPACE_ACTION}/wait-for-object`, {\n input: S.Struct({\n id: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class ToggleHidden extends S.TaggedClass<ToggleHidden>()(`${SPACE_ACTION}/toggle-hidden`, {\n input: S.Struct({\n state: S.optional(S.Boolean),\n }),\n output: S.Void,\n }) {}\n}\n\nexport namespace CollectionAction {\n export class Create extends S.TaggedClass<Create>()('dxos.org/plugin/collection/action/create', {\n input: S.Struct({\n name: S.optional(S.String),\n }),\n output: S.Struct({\n object: CollectionType,\n }),\n }) {}\n}\n"],
5
- "mappings": "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",
6
- "names": ["import_echo_schema", "CollectionType", "TypedObject", "typename", "version", "name", "S", "optional", "String", "objects", "mutable", "Array", "Ref", "Expando", "views", "Record", "key", "value", "ContactType", "identifiers", "Struct", "type", "ActorSchema", "contact", "identityKey", "email", "MessageState", "MessageType", "timestamp", "state", "Enums", "sender", "text", "parts", "properties", "Any", "context", "ThreadStatus", "Union", "Literal", "ThreadType", "anchor", "status", "messages", "ChannelType", "threads", "SPACE_DIRECTORY_HANDLE", "parseSchemaPlugin", "plugin", "isArray", "provides", "echo", "schema", "system", "undefined", "SpaceForm", "annotations", "AST", "TitleAnnotationId", "edgeReplication", "Boolean", "SPACE_ACTION", "SPACE_PLUGIN", "SpaceAction", "OpenCreateSpace", "TaggedClass", "input", "Void", "output", "Create", "id", "activeParts", "ActiveParts", "space", "SpaceSchema", "Join", "invitationCode", "onDone", "Share", "Lock", "Unlock", "Rename", "caller", "OpenSettings", "Open", "Close", "Migrate", "OpenCreateObject", "target", "navigable", "AddObject", "object", "ReactiveObjectSchema", "EchoObjectSchema", "DeletionData", "parentCollection", "indices", "Number", "nestedObjectsList", "wasActive", "RemoveObjects", "deletionData", "RenameObject", "DuplicateObject", "WaitForObject", "ToggleHidden", "CollectionAction"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["meta.cjs"],
4
- "sourcesContent": ["import {\n SPACE_PLUGIN,\n SPACE_PLUGIN_SHORT_ID,\n meta_default\n} from \"./chunk-46S3JOES.cjs\";\nexport {\n SPACE_PLUGIN,\n SPACE_PLUGIN_SHORT_ID,\n meta_default as default\n};\n//# sourceMappingURL=meta.cjs.map\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAIO;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/meta.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const SPACE_PLUGIN = 'dxos.org/plugin/space';\nexport const SPACE_PLUGIN_SHORT_ID = 'space';\n\nexport default {\n id: SPACE_PLUGIN,\n shortId: SPACE_PLUGIN_SHORT_ID,\n name: 'Spaces',\n} satisfies PluginMeta;\n"],
5
- "mappings": ";;;AAMO,IAAMA,eAAe;AACrB,IAAMC,wBAAwB;AAErC,IAAA,eAAe;EACbC,IAAIF;EACJG,SAASF;EACTG,MAAM;AACR;",
6
- "names": ["SPACE_PLUGIN", "SPACE_PLUGIN_SHORT_ID", "id", "shortId", "name"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/types/collection.ts", "../../../src/types/thread.ts", "../../../src/types/types.ts"],
4
- "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Expando, Ref, S, TypedObject } from '@dxos/echo-schema';\n\nexport class CollectionType extends TypedObject({ typename: 'dxos.org/type/Collection', version: '0.1.0' })({\n name: S.optional(S.String),\n objects: S.mutable(S.Array(Ref(Expando))),\n // Key is schema typename and value is reference to a view object of the associated schema.\n // Having collection reference the views rather than vice versa ensures that the state converges to a single view per key (i.e. type).\n // This also leaves open a future where this key could be changed to allow for multiple stack views per section.\n // TODO(wittjosiah): Any way to make this more type safe?\n // TODO(wittjosiah): Should the views be separate objects or just be schemas for view data in this record?\n views: S.mutable(S.Record({ key: S.String, value: Ref(Expando) })),\n}) {}\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { Expando, Ref, S, TypedObject } from '@dxos/echo-schema';\n\n// TODO(wittjosiah): These types were placed here rather than in @dxos/plugin-thread\n// in order to avoid a circular dependency between threads and other objects that use threads.\n\n// TODO(wittjosiah): Factor out to halo?\nexport class ContactType extends TypedObject({ typename: 'dxos.org/type/Contact', version: '0.1.0' })({\n name: S.optional(S.String),\n identifiers: S.mutable(\n S.Array(\n S.Struct({\n type: S.String,\n value: S.String,\n }),\n ),\n ),\n}) {}\n\nexport const ActorSchema = S.mutable(\n S.Struct({\n contact: S.optional(Ref(ContactType)),\n // TODO(wittjosiah): Should the below fields just be the contact schema?\n // i.e. it should either be a reference to an existing contact or an inline contact schema.\n identityKey: S.optional(S.String),\n // TODO(burdon): Generalize to handle/identifier?\n email: S.optional(S.String),\n name: S.optional(S.String),\n }),\n);\n\nexport type ActorType = S.Schema.Type<typeof ActorSchema>;\n\nexport enum MessageState {\n NONE = 0,\n ARCHIVED = 1,\n DELETED = 2,\n SPAM = 3,\n}\n\nexport class MessageType extends TypedObject({ typename: 'dxos.org/type/Message', version: '0.1.0' })({\n /** ISO date string when the message was sent. */\n timestamp: S.String,\n /** Message state. */\n state: S.optional(S.Enums(MessageState)),\n /** Identity of the message sender. */\n sender: ActorSchema,\n /** Text content of the message. */\n text: S.String,\n /** Non-text content sent with a message (e.g., files, polls, etc.) */\n parts: S.optional(S.mutable(S.Array(Ref(Expando)))),\n /** Custom properties for specific message types (e.g. email subject or cc fields). */\n properties: S.optional(S.mutable(S.Record({ key: S.String, value: S.Any }))),\n // TODO(wittjosiah): Add read status:\n // - Read receipts need to be per space member.\n // - Read receipts don't need to be added to schema until they being implemented.\n /** Context of the application when message was created. */\n // TODO(burdon): Evolve \"attention object\" to be current UX state? E.g., of Deck?\n context: S.optional(Ref(Expando)),\n}) {}\n\nexport const ThreadStatus = S.Union(S.Literal('staged'), S.Literal('active'), S.Literal('resolved'));\n\nexport class ThreadType extends TypedObject({ typename: 'dxos.org/type/Thread', version: '0.1.0' })({\n name: S.optional(S.String),\n /** AM cursor-range: 'from:to'. */\n anchor: S.optional(S.String),\n status: S.optional(ThreadStatus),\n messages: S.mutable(S.Array(Ref(MessageType))),\n}) {}\n\nexport class ChannelType extends TypedObject({ typename: 'dxos.org/type/Channel', version: '0.1.0' })({\n name: S.optional(S.String),\n threads: S.mutable(S.Array(Ref(ThreadType))),\n}) {}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport {\n type GraphBuilderProvides,\n type GraphSerializerProvides,\n type IntentResolverProvides,\n type MetadataRecordsProvides,\n type SettingsProvides,\n type SurfaceProvides,\n type TranslationsProvides,\n type Plugin,\n ActiveParts,\n} from '@dxos/app-framework';\nimport { AST, S, type TypedObject, type Expando } from '@dxos/echo-schema';\nimport { type PanelProvides } from '@dxos/plugin-deck/types';\nimport { type PublicKey } from '@dxos/react-client';\nimport { EchoObjectSchema, ReactiveObjectSchema, type Space, SpaceSchema } from '@dxos/react-client/echo';\nimport { type ComplexMap } from '@dxos/util';\n\nimport { CollectionType } from './collection';\nimport { SPACE_PLUGIN } from '../meta';\n\nexport const SPACE_DIRECTORY_HANDLE = 'dxos.org/plugin/space/directory';\n\nexport type ObjectViewerProps = {\n lastSeen: number;\n currentlyAttended: boolean;\n};\n\nexport type ObjectId = string;\n\nexport type PluginState = {\n /**\n * Which objects are currently being viewed by which peers.\n */\n viewersByObject: Record<ObjectId, ComplexMap<PublicKey, ObjectViewerProps>>;\n\n /**\n * Which peers are currently viewing which objects.\n */\n viewersByIdentity: ComplexMap<PublicKey, Set<ObjectId>>;\n\n /**\n * Object that was linked to directly but not found and is being awaited.\n */\n awaiting: string | undefined;\n\n /**\n * Cached space names, used when spaces are closed or loading.\n */\n spaceNames: Record<string, string>;\n\n /**\n * Which spaces have an SDK migration running currently.\n */\n // TODO(wittjosiah): Factor out to sdk. Migration running should probably be a space state.\n sdkMigrationRunning: Record<string, boolean>;\n\n /**\n * Whether or not the user can navigate to collections in the graph.\n * Determined by whether or not there is an available plugin that can render a collection.\n */\n navigableCollections: boolean;\n\n /**\n * Tracks whether setting edge replication as default has been run on spaces.\n */\n // TODO(wittjosiah): Systematic way to handle migrations of state outside of spaces.\n enabledEdgeReplication: boolean;\n};\n\nexport type SpaceSettingsProps = {\n /**\n * Show closed spaces.\n */\n showHidden?: boolean;\n};\n\nexport type SchemaProvides = {\n echo: {\n schema?: TypedObject[];\n system?: TypedObject[];\n };\n};\n\nexport const parseSchemaPlugin = (plugin?: Plugin) =>\n Array.isArray((plugin?.provides as any).echo?.schema) || Array.isArray((plugin?.provides as any).echo?.system)\n ? (plugin as Plugin<SchemaProvides>)\n : undefined;\n\nexport type SpacePluginProvides = SurfaceProvides &\n IntentResolverProvides &\n GraphBuilderProvides &\n GraphSerializerProvides &\n MetadataRecordsProvides &\n SettingsProvides<SpaceSettingsProps> &\n TranslationsProvides &\n SchemaProvides &\n PanelProvides & {\n space: Readonly<PluginState>;\n };\n\n// TODO(wittjosiah): Reconcile with graph export serializers.\n\nexport type SerializerMap = Record<string, TypedObjectSerializer>;\n\nexport interface TypedObjectSerializer<T extends Expando = Expando> {\n serialize(params: { object: T }): Promise<string>;\n\n /**\n * @param params.content\n * @param params.space Space to use for deserializing schema references.\n * @param params.newId Generate new ID for deserialized object.\n */\n deserialize(params: { content: string; space: Space; newId?: boolean }): Promise<T>;\n}\n\nexport const SpaceForm = S.Struct({\n name: S.optional(S.String.annotations({ [AST.TitleAnnotationId]: 'Name' })),\n // TODO(wittjosiah): Make optional with default value.\n edgeReplication: S.Boolean.annotations({ [AST.TitleAnnotationId]: 'Enable EDGE Replication' }),\n});\n\nexport const SPACE_ACTION = `${SPACE_PLUGIN}/action`;\n\nexport namespace SpaceAction {\n export class OpenCreateSpace extends S.TaggedClass<OpenCreateSpace>()(`${SPACE_ACTION}/open-create-space`, {\n input: S.Void,\n output: S.Void,\n }) {}\n\n export class Create extends S.TaggedClass<Create>()(`${SPACE_ACTION}/create`, {\n input: SpaceForm,\n output: S.Struct({\n id: S.String,\n activeParts: ActiveParts,\n space: SpaceSchema,\n }),\n }) {}\n\n export class Join extends S.TaggedClass<Join>()(`${SPACE_ACTION}/join`, {\n input: S.Struct({\n invitationCode: S.optional(S.String),\n onDone: S.optional(S.Any),\n }),\n output: S.Void,\n }) {}\n\n export class Share extends S.TaggedClass<Share>()(`${SPACE_ACTION}/share`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Lock extends S.TaggedClass<Lock>()(`${SPACE_ACTION}/lock`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Unlock extends S.TaggedClass<Unlock>()(`${SPACE_ACTION}/unlock`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Rename extends S.TaggedClass<Rename>()(`${SPACE_ACTION}/rename`, {\n input: S.Struct({\n space: SpaceSchema,\n caller: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class OpenSettings extends S.TaggedClass<OpenSettings>()(`${SPACE_ACTION}/open-settings`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Open extends S.TaggedClass<Open>()(`${SPACE_ACTION}/open`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Close extends S.TaggedClass<Close>()(`${SPACE_ACTION}/close`, {\n input: S.Struct({\n space: SpaceSchema,\n }),\n output: S.Void,\n }) {}\n\n export class Migrate extends S.TaggedClass<Migrate>()(`${SPACE_ACTION}/migrate`, {\n input: S.Struct({\n space: SpaceSchema,\n version: S.optional(S.String),\n }),\n output: S.Boolean,\n }) {}\n\n export class OpenCreateObject extends S.TaggedClass<OpenCreateObject>()(`${SPACE_ACTION}/open-create-object`, {\n input: S.Struct({\n target: S.Union(SpaceSchema, CollectionType),\n navigable: S.optional(S.Boolean),\n }),\n output: S.Void,\n }) {}\n\n export class AddObject extends S.TaggedClass<AddObject>()(`${SPACE_ACTION}/add-object`, {\n input: S.Struct({\n object: ReactiveObjectSchema,\n target: S.Union(SpaceSchema, CollectionType),\n }),\n output: S.Struct({\n id: S.String,\n activeParts: ActiveParts,\n object: EchoObjectSchema,\n }),\n }) {}\n\n export const DeletionData = S.Struct({\n objects: S.Array(EchoObjectSchema),\n parentCollection: CollectionType,\n indices: S.Array(S.Number),\n nestedObjectsList: S.Array(S.Array(EchoObjectSchema)),\n wasActive: S.Array(S.String),\n });\n\n export type DeletionData = S.Schema.Type<typeof DeletionData>;\n\n export class RemoveObjects extends S.TaggedClass<RemoveObjects>()(`${SPACE_ACTION}/remove-objects`, {\n input: S.Struct({\n objects: S.Array(EchoObjectSchema),\n target: S.optional(CollectionType),\n deletionData: S.optional(DeletionData),\n }),\n output: S.Void,\n }) {}\n\n export class RenameObject extends S.TaggedClass<RenameObject>()(`${SPACE_ACTION}/rename-object`, {\n input: S.Struct({\n object: EchoObjectSchema,\n caller: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class DuplicateObject extends S.TaggedClass<DuplicateObject>()(`${SPACE_ACTION}/duplicate-object`, {\n input: S.Struct({\n object: EchoObjectSchema,\n target: S.Union(SpaceSchema, CollectionType),\n }),\n output: S.Void,\n }) {}\n\n export class WaitForObject extends S.TaggedClass<WaitForObject>()(`${SPACE_ACTION}/wait-for-object`, {\n input: S.Struct({\n id: S.optional(S.String),\n }),\n output: S.Void,\n }) {}\n\n export class ToggleHidden extends S.TaggedClass<ToggleHidden>()(`${SPACE_ACTION}/toggle-hidden`, {\n input: S.Struct({\n state: S.optional(S.Boolean),\n }),\n output: S.Void,\n }) {}\n}\n\nexport namespace CollectionAction {\n export class Create extends S.TaggedClass<Create>()('dxos.org/plugin/collection/action/create', {\n input: S.Struct({\n name: S.optional(S.String),\n }),\n output: S.Struct({\n object: CollectionType,\n }),\n }) {}\n}\n"],
5
- "mappings": "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",
6
- "names": ["Expando", "Ref", "S", "TypedObject", "CollectionType", "TypedObject", "typename", "version", "name", "S", "optional", "String", "objects", "mutable", "Array", "Ref", "Expando", "views", "Record", "key", "value", "Expando", "Ref", "S", "TypedObject", "ContactType", "TypedObject", "typename", "version", "name", "S", "optional", "String", "identifiers", "mutable", "Array", "Struct", "type", "value", "ActorSchema", "contact", "Ref", "identityKey", "email", "MessageState", "MessageType", "timestamp", "state", "Enums", "sender", "text", "parts", "Expando", "properties", "Record", "key", "Any", "context", "ThreadStatus", "Union", "Literal", "ThreadType", "anchor", "status", "messages", "ChannelType", "threads", "ActiveParts", "AST", "S", "EchoObjectSchema", "ReactiveObjectSchema", "SpaceSchema", "SPACE_DIRECTORY_HANDLE", "parseSchemaPlugin", "plugin", "Array", "isArray", "provides", "echo", "schema", "system", "undefined", "SpaceForm", "S", "Struct", "name", "optional", "String", "annotations", "AST", "TitleAnnotationId", "edgeReplication", "Boolean", "SPACE_ACTION", "SPACE_PLUGIN", "SpaceAction", "OpenCreateSpace", "TaggedClass", "input", "Void", "output", "Create", "id", "activeParts", "ActiveParts", "space", "SpaceSchema", "Join", "invitationCode", "onDone", "Any", "Share", "Lock", "Unlock", "Rename", "caller", "OpenSettings", "Open", "Close", "Migrate", "version", "OpenCreateObject", "target", "Union", "CollectionType", "navigable", "AddObject", "object", "ReactiveObjectSchema", "EchoObjectSchema", "DeletionData", "objects", "parentCollection", "indices", "Number", "nestedObjectsList", "wasActive", "RemoveObjects", "deletionData", "RenameObject", "DuplicateObject", "WaitForObject", "ToggleHidden", "state", "CollectionAction"]
7
- }
@@ -1,12 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- SPACE_PLUGIN,
4
- SPACE_PLUGIN_SHORT_ID,
5
- meta_default
6
- } from "./chunk-2MNFEB23.mjs";
7
- export {
8
- SPACE_PLUGIN,
9
- SPACE_PLUGIN_SHORT_ID,
10
- meta_default as default
11
- };
12
- //# sourceMappingURL=meta.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": [],
4
- "sourcesContent": [],
5
- "mappings": "",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- import { type ReactiveEchoObject } from '@dxos/react-client/echo';
3
- export type DefaultObjectSettingsProps = {
4
- object: ReactiveEchoObject<any>;
5
- };
6
- export declare const DefaultObjectSettings: ({ object }: DefaultObjectSettingsProps) => React.JSX.Element;
7
- //# sourceMappingURL=DefaultObjectSettings.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DefaultObjectSettings.d.ts","sourceRoot":"","sources":["../../../../src/components/DefaultObjectSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAKlE,MAAM,MAAM,0BAA0B,GAAG;IACvC,MAAM,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,qBAAqB,eAAgB,0BAA0B,sBAiB3E,CAAC"}