@dxos/plugin-space 0.7.5-main.9d26e3a → 0.7.5-main.e9bb01b
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.
- package/dist/lib/browser/app-graph-builder-J4NX44Y4.mjs +367 -0
- package/dist/lib/browser/app-graph-builder-J4NX44Y4.mjs.map +7 -0
- package/dist/lib/browser/app-graph-serializer-QF7VVRCV.mjs +80 -0
- package/dist/lib/browser/app-graph-serializer-QF7VVRCV.mjs.map +7 -0
- package/dist/lib/browser/chunk-6UIFMVVI.mjs +528 -0
- package/dist/lib/browser/chunk-6UIFMVVI.mjs.map +7 -0
- package/dist/lib/browser/chunk-PQXZCNAU.mjs +13 -0
- package/dist/lib/browser/chunk-PQXZCNAU.mjs.map +7 -0
- package/dist/lib/browser/chunk-RLZQJD47.mjs +22 -0
- package/dist/lib/browser/chunk-RLZQJD47.mjs.map +7 -0
- package/dist/lib/browser/chunk-SDK7RZI3.mjs +133 -0
- package/dist/lib/browser/chunk-SDK7RZI3.mjs.map +7 -0
- package/dist/lib/browser/{chunk-54VE4GTA.mjs → chunk-XPZ6IIXF.mjs} +11 -15
- package/dist/lib/browser/chunk-XPZ6IIXF.mjs.map +7 -0
- package/dist/lib/browser/chunk-XZ2NH3CP.mjs +1713 -0
- package/dist/lib/browser/chunk-XZ2NH3CP.mjs.map +7 -0
- package/dist/lib/browser/identity-created-25TK5XNO.mjs +28 -0
- package/dist/lib/browser/identity-created-25TK5XNO.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +186 -3481
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/intent-resolver-IEDVV74T.mjs +523 -0
- package/dist/lib/browser/intent-resolver-IEDVV74T.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/react-root-6VRPRLQR.mjs +28 -0
- package/dist/lib/browser/react-root-6VRPRLQR.mjs.map +7 -0
- package/dist/lib/browser/react-surface-DMNDXLZ7.mjs +231 -0
- package/dist/lib/browser/react-surface-DMNDXLZ7.mjs.map +7 -0
- package/dist/lib/browser/settings-K4JPYYEM.mjs +24 -0
- package/dist/lib/browser/settings-K4JPYYEM.mjs.map +7 -0
- package/dist/lib/browser/spaces-ready-2MUWWVVO.mjs +199 -0
- package/dist/lib/browser/spaces-ready-2MUWWVVO.mjs.map +7 -0
- package/dist/lib/browser/state-6DCY5YJP.mjs +47 -0
- package/dist/lib/browser/state-6DCY5YJP.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +6 -6
- package/dist/lib/node/app-graph-builder-ZOPG4MOS.cjs +370 -0
- package/dist/lib/node/app-graph-builder-ZOPG4MOS.cjs.map +7 -0
- package/dist/lib/node/app-graph-serializer-QE2G4MWB.cjs +88 -0
- package/dist/lib/node/app-graph-serializer-QE2G4MWB.cjs.map +7 -0
- package/dist/lib/node/chunk-3QWZCN6L.cjs +556 -0
- package/dist/lib/node/chunk-3QWZCN6L.cjs.map +7 -0
- package/dist/lib/node/{chunk-YF2AQ7KP.cjs → chunk-6MEOP3DH.cjs} +18 -22
- package/dist/lib/node/chunk-6MEOP3DH.cjs.map +7 -0
- package/dist/lib/node/chunk-D6BFKOXY.cjs +150 -0
- package/dist/lib/node/chunk-D6BFKOXY.cjs.map +7 -0
- package/dist/lib/node/chunk-SZEIQGQU.cjs +1710 -0
- package/dist/lib/node/chunk-SZEIQGQU.cjs.map +7 -0
- package/dist/lib/node/chunk-UX3U4RU2.cjs +42 -0
- package/dist/lib/node/chunk-UX3U4RU2.cjs.map +7 -0
- package/dist/lib/node/{chunk-46S3JOES.cjs → chunk-WZR6OAN3.cjs} +9 -12
- package/dist/lib/node/chunk-WZR6OAN3.cjs.map +7 -0
- package/dist/lib/node/identity-created-7G5U7R36.cjs +44 -0
- package/dist/lib/node/identity-created-7G5U7R36.cjs.map +7 -0
- package/dist/lib/node/index.cjs +171 -3469
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/intent-resolver-N2W2L6OL.cjs +522 -0
- package/dist/lib/node/intent-resolver-N2W2L6OL.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/react-root-YD35W3VU.cjs +50 -0
- package/dist/lib/node/react-root-YD35W3VU.cjs.map +7 -0
- package/dist/lib/node/react-surface-QPLXK7DT.cjs +229 -0
- package/dist/lib/node/react-surface-QPLXK7DT.cjs.map +7 -0
- package/dist/lib/node/{meta.cjs → settings-TEELGWS4.cjs} +19 -13
- package/dist/lib/node/settings-TEELGWS4.cjs.map +7 -0
- package/dist/lib/node/spaces-ready-PZZQWS6T.cjs +210 -0
- package/dist/lib/node/spaces-ready-PZZQWS6T.cjs.map +7 -0
- package/dist/lib/node/state-WPZC4JXB.cjs +61 -0
- package/dist/lib/node/state-WPZC4JXB.cjs.map +7 -0
- package/dist/lib/node/types/index.cjs +18 -18
- package/dist/lib/node/types/index.cjs.map +1 -1
- package/dist/lib/node-esm/app-graph-builder-TKGLOK22.mjs +368 -0
- package/dist/lib/node-esm/app-graph-builder-TKGLOK22.mjs.map +7 -0
- package/dist/lib/node-esm/app-graph-serializer-HLX2JRNF.mjs +81 -0
- package/dist/lib/node-esm/app-graph-serializer-HLX2JRNF.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-4UX5WGKJ.mjs +134 -0
- package/dist/lib/node-esm/chunk-4UX5WGKJ.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-CDZETPO7.mjs → chunk-AAQRELDK.mjs} +11 -15
- package/dist/lib/node-esm/chunk-AAQRELDK.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-2MNFEB23.mjs → chunk-ICCM4YRJ.mjs} +5 -7
- package/dist/lib/node-esm/chunk-ICCM4YRJ.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-LA45TPAN.mjs +529 -0
- package/dist/lib/node-esm/chunk-LA45TPAN.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-LGL4A5B5.mjs +23 -0
- package/dist/lib/node-esm/chunk-LGL4A5B5.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-N6EAOMIS.mjs +1714 -0
- package/dist/lib/node-esm/chunk-N6EAOMIS.mjs.map +7 -0
- package/dist/lib/node-esm/identity-created-7THGZ7EW.mjs +29 -0
- package/dist/lib/node-esm/identity-created-7THGZ7EW.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +186 -3481
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/intent-resolver-L2TKJU4I.mjs +524 -0
- package/dist/lib/node-esm/intent-resolver-L2TKJU4I.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/react-root-Q5MFDXZE.mjs +29 -0
- package/dist/lib/node-esm/react-root-Q5MFDXZE.mjs.map +7 -0
- package/dist/lib/node-esm/react-surface-RQQZ5BOG.mjs +232 -0
- package/dist/lib/node-esm/react-surface-RQQZ5BOG.mjs.map +7 -0
- package/dist/lib/node-esm/settings-KXYUZBLN.mjs +25 -0
- package/dist/lib/node-esm/settings-KXYUZBLN.mjs.map +7 -0
- package/dist/lib/node-esm/spaces-ready-MWNP3WBX.mjs +200 -0
- package/dist/lib/node-esm/spaces-ready-MWNP3WBX.mjs.map +7 -0
- package/dist/lib/node-esm/state-5GH2D5U4.mjs +48 -0
- package/dist/lib/node-esm/state-5GH2D5U4.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +6 -6
- package/dist/types/src/SpacePlugin.d.ts +1 -24
- package/dist/types/src/SpacePlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts +181 -0
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-serializer.d.ts +4 -0
- package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -0
- package/dist/types/src/capabilities/capabilities.d.ts +21 -0
- package/dist/types/src/capabilities/capabilities.d.ts.map +1 -0
- package/dist/types/src/capabilities/identity-created.d.ts +4 -0
- package/dist/types/src/capabilities/identity-created.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +195 -0
- package/dist/types/src/capabilities/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/intent-resolver.d.ts +8 -0
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-root.d.ts +7 -0
- package/dist/types/src/capabilities/react-root.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface.d.ts +7 -0
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/settings.d.ts +4 -0
- package/dist/types/src/capabilities/settings.d.ts.map +1 -0
- package/dist/types/src/capabilities/spaces-ready.d.ts +4 -0
- package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -0
- package/dist/types/src/capabilities/state.d.ts +5 -0
- package/dist/types/src/capabilities/state.d.ts.map +1 -0
- package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts +7 -0
- package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts.map +1 -0
- package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts +8 -0
- package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts.map +1 -0
- package/dist/types/src/components/AdvancedObjectSettings/index.d.ts +2 -0
- package/dist/types/src/components/AdvancedObjectSettings/index.d.ts.map +1 -0
- package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
- package/dist/types/src/components/BaseObjectSettings.d.ts +7 -0
- package/dist/types/src/components/BaseObjectSettings.d.ts.map +1 -0
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +1 -2
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +6 -6
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
- package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
- package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
- package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +2 -1
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/events.d.ts +5 -0
- package/dist/types/src/events.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +3 -5
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +2 -4
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +12 -0
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +7 -28
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +7 -6
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +38 -46
- package/src/SpacePlugin.tsx +114 -1412
- package/src/capabilities/app-graph-builder.ts +394 -0
- package/src/capabilities/app-graph-serializer.ts +73 -0
- package/src/capabilities/capabilities.ts +26 -0
- package/src/capabilities/identity-created.ts +26 -0
- package/src/capabilities/index.ts +17 -0
- package/src/capabilities/intent-resolver.ts +489 -0
- package/src/capabilities/react-root.tsx +20 -0
- package/src/capabilities/react-surface.tsx +226 -0
- package/src/capabilities/settings.ts +17 -0
- package/src/capabilities/spaces-ready.ts +230 -0
- package/src/capabilities/state.ts +45 -0
- package/src/components/AdvancedObjectSettings/AdvancedObjectSettings.tsx +72 -0
- package/src/components/AdvancedObjectSettings/ForeignKeys.tsx +51 -0
- package/src/components/AdvancedObjectSettings/index.ts +5 -0
- package/src/components/AwaitingObject.tsx +5 -11
- package/src/components/{DefaultObjectSettings.tsx → BaseObjectSettings.tsx} +2 -2
- package/src/components/CreateDialog/CreateObjectDialog.tsx +19 -19
- package/src/components/CreateDialog/CreateObjectPanel.tsx +136 -99
- package/src/components/CreateDialog/CreateSpaceDialog.tsx +10 -8
- package/src/components/JoinDialog.tsx +27 -19
- package/src/components/SpacePluginSettings.tsx +5 -10
- package/src/components/SpacePresence.tsx +7 -7
- package/src/components/SpaceSettings/SpaceSettingsDialog.tsx +16 -1
- package/src/components/SpaceSettings/SpaceSettingsPanel.tsx +3 -4
- package/src/components/SyncStatus/InlineSyncStatus.tsx +2 -2
- package/src/components/SyncStatus/SyncStatus.tsx +2 -1
- package/src/components/index.ts +2 -1
- package/src/events.ts +12 -0
- package/src/index.ts +3 -7
- package/src/meta.ts +2 -3
- package/src/translations.ts +4 -0
- package/src/types/types.ts +12 -51
- package/src/util.tsx +38 -28
- package/dist/lib/browser/chunk-54VE4GTA.mjs.map +0 -7
- package/dist/lib/browser/chunk-73BCBSLP.mjs +0 -15
- package/dist/lib/browser/chunk-73BCBSLP.mjs.map +0 -7
- package/dist/lib/browser/meta.mjs +0 -11
- package/dist/lib/browser/meta.mjs.map +0 -7
- package/dist/lib/node/chunk-46S3JOES.cjs.map +0 -7
- package/dist/lib/node/chunk-YF2AQ7KP.cjs.map +0 -7
- package/dist/lib/node/meta.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-2MNFEB23.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-CDZETPO7.mjs.map +0 -7
- package/dist/lib/node-esm/meta.mjs +0 -12
- package/dist/lib/node-esm/meta.mjs.map +0 -7
- package/dist/types/src/components/DefaultObjectSettings.d.ts +0 -7
- package/dist/types/src/components/DefaultObjectSettings.d.ts.map +0 -1
|
@@ -4,10 +4,9 @@
|
|
|
4
4
|
|
|
5
5
|
import React, { useCallback, useEffect, useState } from 'react';
|
|
6
6
|
|
|
7
|
-
import {
|
|
7
|
+
import { useAppGraph, useCapability } from '@dxos/app-framework';
|
|
8
8
|
import { generateName } from '@dxos/display-name';
|
|
9
9
|
import { type Expando } from '@dxos/echo-schema';
|
|
10
|
-
import { useGraph } from '@dxos/plugin-graph';
|
|
11
10
|
import { PublicKey, useClient } from '@dxos/react-client';
|
|
12
11
|
import { getSpace, useMembers, type SpaceMember, fullyQualifiedId } from '@dxos/react-client/echo';
|
|
13
12
|
import { type Identity, useIdentity } from '@dxos/react-client/halo';
|
|
@@ -26,9 +25,10 @@ import {
|
|
|
26
25
|
import { AttentionGlyph, useAttended, useAttention, type AttentionGlyphProps } from '@dxos/react-ui-attention';
|
|
27
26
|
import { ComplexMap, keyToFallback } from '@dxos/util';
|
|
28
27
|
|
|
28
|
+
import { SpaceCapabilities } from '../capabilities';
|
|
29
29
|
import { usePath } from '../hooks';
|
|
30
30
|
import { SPACE_PLUGIN } from '../meta';
|
|
31
|
-
import type { ObjectViewerProps
|
|
31
|
+
import type { ObjectViewerProps } from '../types';
|
|
32
32
|
|
|
33
33
|
// TODO(thure): Get/derive these values from protocol
|
|
34
34
|
const REFRESH_INTERVAL = 5000;
|
|
@@ -41,7 +41,8 @@ const noViewers = new ComplexMap<PublicKey, ObjectViewerProps>(PublicKey.hash);
|
|
|
41
41
|
const getName = (identity: Identity) => identity.profile?.displayName ?? generateName(identity.identityKey.toHex());
|
|
42
42
|
|
|
43
43
|
export const SpacePresence = ({ object, spaceKey }: { object: Expando; spaceKey?: PublicKey }) => {
|
|
44
|
-
|
|
44
|
+
// TODO(wittjosiah): Doesn't need to be mutable but readonly type messes with ComplexMap.
|
|
45
|
+
const spaceState = useCapability(SpaceCapabilities.MutableState);
|
|
45
46
|
const client = useClient();
|
|
46
47
|
const identity = useIdentity();
|
|
47
48
|
const space = spaceKey ? client.spaces.get(spaceKey) : getSpace(object);
|
|
@@ -63,11 +64,10 @@ export const SpacePresence = ({ object, spaceKey }: { object: Expando; spaceKey?
|
|
|
63
64
|
|
|
64
65
|
// TODO(thure): Could it be a smell to return early when there are interactions with `deepSignal` later, since it
|
|
65
66
|
// prevents reactivity?
|
|
66
|
-
if (!identity || !
|
|
67
|
+
if (!identity || !spaceState || !space) {
|
|
67
68
|
return null;
|
|
68
69
|
}
|
|
69
70
|
|
|
70
|
-
const spaceState = spacePlugin.provides.space;
|
|
71
71
|
const currentObjectViewers = spaceState.viewersByObject[fullyQualifiedId(object)] ?? noViewers;
|
|
72
72
|
|
|
73
73
|
const membersForObject = spaceMembers
|
|
@@ -209,7 +209,7 @@ export const SmallPresenceLive = ({ id, open, viewers }: SmallPresenceLiveProps)
|
|
|
209
209
|
// TODO(wittjosiah): If the attended node is deep in the graph and the graph is not fully loaded
|
|
210
210
|
// this will result in an empty path until the graph is connected.
|
|
211
211
|
// TODO(wittjosiah): Consider using this indicator for all open nodes instead of just attended.
|
|
212
|
-
const { graph } =
|
|
212
|
+
const { graph } = useAppGraph();
|
|
213
213
|
const attended = useAttended();
|
|
214
214
|
const startOfAttention = attended.at(-1);
|
|
215
215
|
const path = usePath(graph, startOfAttention);
|
|
@@ -2,14 +2,16 @@
|
|
|
2
2
|
// Copyright 2024 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import React, { useState } from 'react';
|
|
5
|
+
import React, { useMemo, useState } from 'react';
|
|
6
6
|
|
|
7
|
+
import { Surface, useCapabilities } from '@dxos/app-framework';
|
|
7
8
|
import { useClient } from '@dxos/react-client';
|
|
8
9
|
import { Button, Clipboard, Dialog, Icon, toLocalizedString, useTranslation } from '@dxos/react-ui';
|
|
9
10
|
import { Tabs, type TabsRootProps, type TabsActivePart } from '@dxos/react-ui-tabs';
|
|
10
11
|
import { SpacePanel, type SpacePanelProps } from '@dxos/shell/react';
|
|
11
12
|
|
|
12
13
|
import { SpaceSettingsPanel, type SpaceSettingsPanelProps } from './SpaceSettingsPanel';
|
|
14
|
+
import { SpaceCapabilities } from '../../capabilities';
|
|
13
15
|
import { SPACE_PLUGIN } from '../../meta';
|
|
14
16
|
import { COMPOSER_SPACE_LOCK, getSpaceDisplayName } from '../../util';
|
|
15
17
|
|
|
@@ -36,6 +38,8 @@ export const SpaceSettingsDialog = ({
|
|
|
36
38
|
const [selected, setSelected] = useState<SpaceSettingsTab>(initialTab);
|
|
37
39
|
const locked = space.properties[COMPOSER_SPACE_LOCK];
|
|
38
40
|
const name = getSpaceDisplayName(space, { personal: client.spaces.default === space, namesCache });
|
|
41
|
+
const panels = useCapabilities(SpaceCapabilities.SettingsPanel);
|
|
42
|
+
const data = useMemo(() => ({ subject: space }), [space]);
|
|
39
43
|
|
|
40
44
|
return (
|
|
41
45
|
// TODO(wittjosiah): The tablist dialog pattern is copied from @dxos/plugin-manager.
|
|
@@ -84,6 +88,11 @@ export const SpaceSettingsDialog = ({
|
|
|
84
88
|
<Tabs.Tab value='members' disabled={locked}>
|
|
85
89
|
{t('members tab label')}
|
|
86
90
|
</Tabs.Tab>
|
|
91
|
+
{panels.map((panel) => (
|
|
92
|
+
<Tabs.Tab key={panel.id} value={panel.id}>
|
|
93
|
+
{toLocalizedString(panel.label, t)}
|
|
94
|
+
</Tabs.Tab>
|
|
95
|
+
))}
|
|
87
96
|
</div>
|
|
88
97
|
</Tabs.Tablist>
|
|
89
98
|
</div>
|
|
@@ -98,6 +107,12 @@ export const SpaceSettingsDialog = ({
|
|
|
98
107
|
<SpacePanel space={space} hideHeading target={target} createInvitationUrl={createInvitationUrl} />
|
|
99
108
|
</Clipboard.Provider>
|
|
100
109
|
</Tabs.Tabpanel>
|
|
110
|
+
|
|
111
|
+
{panels.map((panel) => (
|
|
112
|
+
<Tabs.Tabpanel key={panel.id} value={panel.id} classNames='pli-3 @md:pli-5 max-bs-dvh overflow-y-auto'>
|
|
113
|
+
<Surface role={`space-settings--${panel.id}`} data={data} />
|
|
114
|
+
</Tabs.Tabpanel>
|
|
115
|
+
))}
|
|
101
116
|
</Tabs.Viewport>
|
|
102
117
|
</Tabs.Root>
|
|
103
118
|
</Dialog.Content>
|
|
@@ -9,8 +9,7 @@ import { EdgeReplicationSetting } from '@dxos/protocols/proto/dxos/echo/metadata
|
|
|
9
9
|
import { useClient } from '@dxos/react-client';
|
|
10
10
|
import { type Space } from '@dxos/react-client/echo';
|
|
11
11
|
import { type ThemedClassName, Input, useTranslation } from '@dxos/react-ui';
|
|
12
|
-
import { DeprecatedFormInput } from '@dxos/react-ui-form';
|
|
13
|
-
import { mx } from '@dxos/react-ui-theme';
|
|
12
|
+
import { DeprecatedFormContainer, DeprecatedFormInput } from '@dxos/react-ui-form';
|
|
14
13
|
|
|
15
14
|
import { SPACE_PLUGIN } from '../../meta';
|
|
16
15
|
|
|
@@ -41,7 +40,7 @@ export const SpaceSettingsPanel = ({ classNames, space }: SpaceSettingsPanelProp
|
|
|
41
40
|
);
|
|
42
41
|
|
|
43
42
|
return (
|
|
44
|
-
<
|
|
43
|
+
<DeprecatedFormContainer>
|
|
45
44
|
<DeprecatedFormInput label={t('name label')}>
|
|
46
45
|
<Input.TextInput
|
|
47
46
|
placeholder={t('unnamed space label')}
|
|
@@ -56,6 +55,6 @@ export const SpaceSettingsPanel = ({ classNames, space }: SpaceSettingsPanelProp
|
|
|
56
55
|
<Input.Switch checked={edgeReplication} onCheckedChange={toggleEdgeReplication} />
|
|
57
56
|
</DeprecatedFormInput>
|
|
58
57
|
)}
|
|
59
|
-
</
|
|
58
|
+
</DeprecatedFormContainer>
|
|
60
59
|
);
|
|
61
60
|
};
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
import React, { useEffect, useState } from 'react';
|
|
6
6
|
|
|
7
|
-
import {
|
|
7
|
+
import { useAppGraph } from '@dxos/app-framework';
|
|
8
8
|
import { QueryEdgeStatusResponse } from '@dxos/protocols/proto/dxos/client/services';
|
|
9
9
|
import { EdgeReplicationSetting } from '@dxos/protocols/proto/dxos/echo/metadata';
|
|
10
10
|
import { useClient } from '@dxos/react-client';
|
|
@@ -38,7 +38,7 @@ export const InlineSyncStatus = ({ space, open }: { space: Space; open?: boolean
|
|
|
38
38
|
// TODO(wittjosiah): If the attended node is deep in the graph and the graph is not fully loaded
|
|
39
39
|
// this will result in an empty path until the graph is connected.
|
|
40
40
|
// TODO(wittjosiah): Consider using this indicator for all open nodes instead of just attended.
|
|
41
|
-
const { graph } =
|
|
41
|
+
const { graph } = useAppGraph();
|
|
42
42
|
const attended = useAttended();
|
|
43
43
|
const startOfAttention = attended.at(-1);
|
|
44
44
|
const path = usePath(graph, startOfAttention);
|
|
@@ -66,8 +66,9 @@ export const SyncStatusIndicator = ({ state, saved }: { state: SpaceSyncStateMap
|
|
|
66
66
|
<StatusBar.Button title={title}>{icon}</StatusBar.Button>
|
|
67
67
|
</Popover.Trigger>
|
|
68
68
|
<Popover.Portal>
|
|
69
|
-
<Popover.Content
|
|
69
|
+
<Popover.Content>
|
|
70
70
|
<SyncStatusDetail state={state} summary={summary} debug={false} />
|
|
71
|
+
<Popover.Arrow />
|
|
71
72
|
</Popover.Content>
|
|
72
73
|
</Popover.Portal>
|
|
73
74
|
</Popover.Root>
|
package/src/components/index.ts
CHANGED
|
@@ -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
|
-
|
|
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,9 @@
|
|
|
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
|
|
9
|
+
export const meta = {
|
|
11
10
|
id: SPACE_PLUGIN,
|
|
12
|
-
shortId: SPACE_PLUGIN_SHORT_ID,
|
|
13
11
|
name: 'Spaces',
|
|
12
|
+
icon: 'ph--planet--regular',
|
|
14
13
|
} satisfies PluginMeta;
|
package/src/translations.ts
CHANGED
|
@@ -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
|
},
|
package/src/types/types.ts
CHANGED
|
@@ -2,19 +2,7 @@
|
|
|
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 { AST, S, type Expando } from '@dxos/echo-schema';
|
|
18
6
|
import { type PublicKey } from '@dxos/react-client';
|
|
19
7
|
import { EchoObjectSchema, ReactiveObjectSchema, type Space, SpaceSchema } from '@dxos/react-client/echo';
|
|
20
8
|
import { type ComplexMap } from '@dxos/util';
|
|
@@ -71,36 +59,16 @@ export type PluginState = {
|
|
|
71
59
|
enabledEdgeReplication: boolean;
|
|
72
60
|
};
|
|
73
61
|
|
|
74
|
-
export
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
echo: {
|
|
83
|
-
schema?: TypedObject[];
|
|
84
|
-
system?: TypedObject[];
|
|
85
|
-
};
|
|
86
|
-
};
|
|
62
|
+
export const SpaceSettingsSchema = S.mutable(
|
|
63
|
+
S.Struct({
|
|
64
|
+
/**
|
|
65
|
+
* Show closed spaces.
|
|
66
|
+
*/
|
|
67
|
+
showHidden: S.Boolean,
|
|
68
|
+
}),
|
|
69
|
+
);
|
|
87
70
|
|
|
88
|
-
export
|
|
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
|
-
};
|
|
71
|
+
export type SpaceSettingsProps = S.Schema.Type<typeof SpaceSettingsSchema>;
|
|
104
72
|
|
|
105
73
|
// TODO(wittjosiah): Reconcile with graph export serializers.
|
|
106
74
|
|
|
@@ -135,7 +103,7 @@ export namespace SpaceAction {
|
|
|
135
103
|
input: SpaceForm,
|
|
136
104
|
output: S.Struct({
|
|
137
105
|
id: S.String,
|
|
138
|
-
|
|
106
|
+
subject: S.Array(S.String),
|
|
139
107
|
space: SpaceSchema,
|
|
140
108
|
}),
|
|
141
109
|
}) {}
|
|
@@ -221,7 +189,7 @@ export namespace SpaceAction {
|
|
|
221
189
|
}),
|
|
222
190
|
output: S.Struct({
|
|
223
191
|
id: S.String,
|
|
224
|
-
|
|
192
|
+
subject: S.Array(S.String),
|
|
225
193
|
object: EchoObjectSchema,
|
|
226
194
|
}),
|
|
227
195
|
}) {}
|
|
@@ -267,13 +235,6 @@ export namespace SpaceAction {
|
|
|
267
235
|
}),
|
|
268
236
|
output: S.Void,
|
|
269
237
|
}) {}
|
|
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
238
|
}
|
|
278
239
|
|
|
279
240
|
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, LayoutAction } 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:
|
|
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:
|
|
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;
|
|
@@ -260,7 +256,7 @@ export const constructSpaceActions = ({
|
|
|
260
256
|
properties: {
|
|
261
257
|
label: ['create object in space label', { ns: SPACE_PLUGIN }],
|
|
262
258
|
icon: 'ph--plus--regular',
|
|
263
|
-
disposition: '
|
|
259
|
+
disposition: 'item',
|
|
264
260
|
testId: 'spacePlugin.createObject',
|
|
265
261
|
},
|
|
266
262
|
},
|
|
@@ -277,6 +273,10 @@ export const constructSpaceActions = ({
|
|
|
277
273
|
label: ['share space label', { ns: SPACE_PLUGIN }],
|
|
278
274
|
icon: 'ph--users--regular',
|
|
279
275
|
disabled: locked,
|
|
276
|
+
disposition: 'toolbar',
|
|
277
|
+
iconOnly: false,
|
|
278
|
+
variant: 'default',
|
|
279
|
+
testId: 'spacePlugin.shareSpace',
|
|
280
280
|
keyBinding: {
|
|
281
281
|
macos: 'meta+.',
|
|
282
282
|
windows: 'alt+.',
|
|
@@ -370,7 +370,7 @@ export const createObjectNode = ({
|
|
|
370
370
|
object: ReactiveEchoObject<any>;
|
|
371
371
|
space: Space;
|
|
372
372
|
navigable?: boolean;
|
|
373
|
-
resolve:
|
|
373
|
+
resolve: (typename: string) => Record<string, any>;
|
|
374
374
|
}) => {
|
|
375
375
|
const type = getTypename(object);
|
|
376
376
|
if (!type) {
|
|
@@ -408,9 +408,11 @@ export const createObjectNode = ({
|
|
|
408
408
|
export const constructObjectActions = ({
|
|
409
409
|
node,
|
|
410
410
|
dispatch,
|
|
411
|
+
navigable = false,
|
|
411
412
|
}: {
|
|
412
413
|
node: Node<ReactiveEchoObject<any>>;
|
|
413
414
|
dispatch: PromiseIntentDispatcher;
|
|
415
|
+
navigable?: boolean;
|
|
414
416
|
}) => {
|
|
415
417
|
const object = node.data;
|
|
416
418
|
const getId = (id: string) => `${id}/${fullyQualifiedId(object)}`;
|
|
@@ -469,25 +471,29 @@ export const constructObjectActions = ({
|
|
|
469
471
|
testId: 'spacePlugin.deleteObject',
|
|
470
472
|
},
|
|
471
473
|
},
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
474
|
+
...(navigable || !(object instanceof CollectionType)
|
|
475
|
+
? [
|
|
476
|
+
{
|
|
477
|
+
id: getId('copy-link'),
|
|
478
|
+
type: ACTION_TYPE,
|
|
479
|
+
data: async () => {
|
|
480
|
+
const url = `${window.location.origin}/${fullyQualifiedId(object)}`;
|
|
481
|
+
await navigator.clipboard.writeText(url);
|
|
482
|
+
},
|
|
483
|
+
properties: {
|
|
484
|
+
label: ['copy link label', { ns: SPACE_PLUGIN }],
|
|
485
|
+
icon: 'ph--link--regular',
|
|
486
|
+
testId: 'spacePlugin.copyLink',
|
|
487
|
+
},
|
|
488
|
+
},
|
|
489
|
+
]
|
|
490
|
+
: []),
|
|
485
491
|
// TODO(wittjosiah): Factor out and apply to all nodes.
|
|
486
492
|
{
|
|
487
|
-
id:
|
|
493
|
+
id: getId(LayoutAction.Expose._tag),
|
|
488
494
|
type: ACTION_TYPE,
|
|
489
495
|
data: async () => {
|
|
490
|
-
await dispatch(createIntent(
|
|
496
|
+
await dispatch(createIntent(LayoutAction.Expose, { part: 'navigation', subject: fullyQualifiedId(object) }));
|
|
491
497
|
},
|
|
492
498
|
properties: {
|
|
493
499
|
label: ['expose object label', { ns: SPACE_PLUGIN }],
|
|
@@ -521,7 +527,7 @@ export const getActiveSpace = (graph: Graph, active?: string) => {
|
|
|
521
527
|
*/
|
|
522
528
|
export const getNestedObjects = async (
|
|
523
529
|
object: ReactiveEchoObject<any>,
|
|
524
|
-
resolve:
|
|
530
|
+
resolve: (typename: string) => Record<string, any>,
|
|
525
531
|
): Promise<ReactiveEchoObject<any>[]> => {
|
|
526
532
|
const type = getTypename(object);
|
|
527
533
|
if (!type) {
|
|
@@ -529,7 +535,7 @@ export const getNestedObjects = async (
|
|
|
529
535
|
}
|
|
530
536
|
|
|
531
537
|
const metadata = resolve(type);
|
|
532
|
-
const loadReferences = metadata
|
|
538
|
+
const loadReferences = metadata?.loadReferences;
|
|
533
539
|
if (typeof loadReferences !== 'function') {
|
|
534
540
|
return [];
|
|
535
541
|
}
|
|
@@ -543,7 +549,11 @@ export const getNestedObjects = async (
|
|
|
543
549
|
* @deprecated Workaround for ECHO not supporting clone.
|
|
544
550
|
*/
|
|
545
551
|
// TODO(burdon): Remove.
|
|
546
|
-
export const cloneObject = async (
|
|
552
|
+
export const cloneObject = async (
|
|
553
|
+
object: Expando,
|
|
554
|
+
resolve: (typename: string) => Record<string, any>,
|
|
555
|
+
newSpace: Space,
|
|
556
|
+
): Promise<Expando> => {
|
|
547
557
|
const schema = getSchema(object);
|
|
548
558
|
const typename = schema ? getObjectAnnotation(schema)?.typename ?? EXPANDO_TYPENAME : EXPANDO_TYPENAME;
|
|
549
559
|
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,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
|
-
}
|