@dxos/plugin-space 0.8.2-main.12df754 → 0.8.2-main.30e4dbb
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-J4PN5HOM.mjs → app-graph-builder-6KVRD7OJ.mjs} +30 -13
- package/dist/lib/browser/app-graph-builder-6KVRD7OJ.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-serializer-6WIAFHYK.mjs → app-graph-serializer-N7KZGCST.mjs} +4 -4
- package/dist/lib/browser/chunk-CY35NLWL.mjs +296 -0
- package/dist/lib/browser/chunk-CY35NLWL.mjs.map +7 -0
- package/dist/lib/browser/{chunk-FSHDAPFY.mjs → chunk-F57CTUM6.mjs} +4 -4
- package/dist/lib/browser/chunk-F57CTUM6.mjs.map +7 -0
- package/dist/lib/browser/{chunk-MHTZAZT2.mjs → chunk-V4VNP2WY.mjs} +161 -213
- package/dist/lib/browser/chunk-V4VNP2WY.mjs.map +7 -0
- package/dist/lib/browser/{chunk-MIJHUABE.mjs → chunk-XC4BXZVV.mjs} +2 -3
- package/dist/lib/browser/chunk-XC4BXZVV.mjs.map +7 -0
- package/dist/lib/browser/{identity-created-DVHNLGYU.mjs → identity-created-74EHBH7M.mjs} +2 -2
- package/dist/lib/browser/index.mjs +13 -20
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-72IWBVYE.mjs → intent-resolver-FZ64VJKZ.mjs} +83 -88
- package/dist/lib/browser/intent-resolver-FZ64VJKZ.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-root-DRVM5ACV.mjs → react-root-2EFJCOX7.mjs} +4 -4
- package/dist/lib/browser/{react-surface-KODNQYDN.mjs → react-surface-N5OGF7TQ.mjs} +5 -30
- package/dist/lib/browser/react-surface-N5OGF7TQ.mjs.map +7 -0
- package/dist/lib/browser/{schema-FHTA26SW.mjs → schema-defs-FLFEUSLB.mjs} +4 -4
- package/dist/lib/browser/{schema-FHTA26SW.mjs.map → schema-defs-FLFEUSLB.mjs.map} +2 -2
- package/dist/lib/browser/{schema-tools-YAXPRIXP.mjs → schema-tools-MYC4LTQD.mjs} +22 -22
- package/dist/lib/browser/schema-tools-MYC4LTQD.mjs.map +7 -0
- package/dist/lib/browser/{settings-2UIV5WX5.mjs → settings-G24447B7.mjs} +2 -2
- package/dist/lib/browser/{spaces-ready-3URIMLCR.mjs → spaces-ready-ZSUEPHJF.mjs} +3 -3
- package/dist/lib/browser/types/index.mjs +1 -1
- package/dist/lib/node/{app-graph-builder-3BNPC5GB.cjs → app-graph-builder-6VR2TBBF.cjs} +56 -39
- package/dist/lib/node/app-graph-builder-6VR2TBBF.cjs.map +7 -0
- package/dist/lib/node/{app-graph-serializer-GOLCQHFQ.cjs → app-graph-serializer-IKQLWTCX.cjs} +20 -20
- package/dist/lib/node/{chunk-U63V2254.cjs → chunk-FILCZU6V.cjs} +29 -29
- package/dist/lib/node/chunk-FILCZU6V.cjs.map +7 -0
- package/dist/lib/node/chunk-K6ZO4WDJ.cjs +324 -0
- package/dist/lib/node/chunk-K6ZO4WDJ.cjs.map +7 -0
- package/dist/lib/node/{chunk-GPZPEQXP.cjs → chunk-P2ZIVXGY.cjs} +215 -267
- package/dist/lib/node/chunk-P2ZIVXGY.cjs.map +7 -0
- package/dist/lib/node/{chunk-EI3ZPOLJ.cjs → chunk-YAE6CCDB.cjs} +6 -7
- package/dist/lib/node/chunk-YAE6CCDB.cjs.map +7 -0
- package/dist/lib/node/{identity-created-YYTW4K3Z.cjs → identity-created-PCQPDULV.cjs} +6 -6
- package/dist/lib/node/index.cjs +66 -73
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/{intent-resolver-KA56XGUX.cjs → intent-resolver-BK6JDXY4.cjs} +126 -130
- package/dist/lib/node/intent-resolver-BK6JDXY4.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-root-6WGN5WRQ.cjs → react-root-DEQFKQVD.cjs} +8 -8
- package/dist/lib/node/{react-surface-37AVZFPL.cjs → react-surface-UQD7LR67.cjs} +41 -64
- package/dist/lib/node/react-surface-UQD7LR67.cjs.map +7 -0
- package/dist/lib/node/{schema-PPJ5BZ3A.cjs → schema-defs-PKZVL52M.cjs} +6 -6
- package/dist/lib/node/{schema-PPJ5BZ3A.cjs.map → schema-defs-PKZVL52M.cjs.map} +2 -2
- package/dist/lib/node/{schema-tools-BLIMOZYY.cjs → schema-tools-OE3MFYYH.cjs} +24 -24
- package/dist/lib/node/schema-tools-OE3MFYYH.cjs.map +7 -0
- package/dist/lib/node/{settings-HJROTHC4.cjs → settings-AFWO4AWK.cjs} +6 -6
- package/dist/lib/node/{spaces-ready-IWDDIAAD.cjs → spaces-ready-MHLUFLXN.cjs} +11 -11
- package/dist/lib/node/types/index.cjs +15 -15
- package/dist/lib/node/types/index.cjs.map +1 -1
- package/dist/lib/node-esm/{app-graph-builder-OVMSUAX3.mjs → app-graph-builder-O7M6MVS5.mjs} +30 -13
- package/dist/lib/node-esm/app-graph-builder-O7M6MVS5.mjs.map +7 -0
- package/dist/lib/node-esm/{app-graph-serializer-AZXSO7HK.mjs → app-graph-serializer-I6XBQJLA.mjs} +4 -4
- package/dist/lib/node-esm/chunk-CLRCW6PU.mjs +297 -0
- package/dist/lib/node-esm/chunk-CLRCW6PU.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-TVN6VHTT.mjs → chunk-COHDPHM7.mjs} +4 -4
- package/dist/lib/node-esm/chunk-COHDPHM7.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-DUA32XUX.mjs → chunk-HEXOMJIR.mjs} +2 -3
- package/dist/lib/node-esm/chunk-HEXOMJIR.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-ABKX22IP.mjs → chunk-TB557OBD.mjs} +161 -213
- package/dist/lib/node-esm/chunk-TB557OBD.mjs.map +7 -0
- package/dist/lib/node-esm/{identity-created-MP4GLXHO.mjs → identity-created-GXS46A3C.mjs} +2 -2
- package/dist/lib/node-esm/index.mjs +13 -20
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-SG2ECM5R.mjs → intent-resolver-6VPP3ZDO.mjs} +83 -88
- package/dist/lib/node-esm/intent-resolver-6VPP3ZDO.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-root-MSUT6S2S.mjs → react-root-2RJ2S5E6.mjs} +4 -4
- package/dist/lib/node-esm/{react-surface-G73SO23W.mjs → react-surface-2RSRATVY.mjs} +5 -30
- package/dist/lib/node-esm/react-surface-2RSRATVY.mjs.map +7 -0
- package/dist/lib/node-esm/{schema-OUZKVYM5.mjs → schema-defs-IIEQR7B3.mjs} +4 -4
- package/dist/lib/node-esm/{schema-OUZKVYM5.mjs.map → schema-defs-IIEQR7B3.mjs.map} +2 -2
- package/dist/lib/node-esm/{schema-tools-IU7EX5A5.mjs → schema-tools-YTJLA3NQ.mjs} +22 -22
- package/dist/lib/node-esm/schema-tools-YTJLA3NQ.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-KCLKPJVY.mjs → settings-MJVSCOI4.mjs} +2 -2
- package/dist/lib/node-esm/{spaces-ready-Z3SXKWX2.mjs → spaces-ready-35U5BBTH.mjs} +3 -3
- package/dist/lib/node-esm/types/index.mjs +1 -1
- package/dist/types/src/SpacePlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -1
- package/dist/types/src/capabilities/identity-created.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +3 -2
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts +2 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/capabilities/{schema.d.ts → schema-defs.d.ts} +1 -1
- package/dist/types/src/capabilities/schema-defs.d.ts.map +1 -0
- package/dist/types/src/capabilities/schema-tools.d.ts +2 -2
- package/dist/types/src/capabilities/schema-tools.d.ts.map +1 -1
- package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -1
- package/dist/types/src/capabilities/state.d.ts.map +1 -1
- package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
- package/dist/types/src/components/CollectionMain.d.ts.map +1 -1
- package/dist/types/src/components/CollectionSection.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
- 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/MembersContainer.d.ts.map +1 -1
- package/dist/types/src/components/MembersContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/MenuFooter.d.ts +2 -2
- package/dist/types/src/components/MenuFooter.d.ts.map +1 -1
- package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts +2 -2
- package/dist/types/src/components/ObjectSettings/AdvancedObjectSettings.d.ts.map +1 -1
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts +2 -2
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +1 -1
- package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts.map +1 -1
- package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts +2 -2
- package/dist/types/src/components/ObjectSettings/ObjectSettingsContainer.d.ts.map +1 -1
- package/dist/types/src/components/PersistenceStatus.d.ts.map +1 -1
- package/dist/types/src/components/PopoverRenameObject.d.ts.map +1 -1
- package/dist/types/src/components/PopoverRenameSpace.d.ts.map +1 -1
- package/dist/types/src/components/SchemaContainer.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/SpacePresence.stories.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/InlineSyncStatus.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/save-tracker.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/status.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +0 -2
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useInputSurfaceLookup.d.ts +2 -2
- package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
- package/dist/types/src/hooks/usePath.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +2 -263
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/collection.d.ts +9 -8
- package/dist/types/src/types/collection.d.ts.map +1 -1
- package/dist/types/src/types/thread.d.ts +329 -110
- package/dist/types/src/types/thread.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +154 -142
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +4 -4
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +46 -45
- package/src/SpacePlugin.tsx +9 -8
- package/src/capabilities/app-graph-builder.ts +26 -14
- package/src/capabilities/index.ts +2 -2
- package/src/capabilities/intent-resolver.ts +77 -87
- package/src/capabilities/react-surface.tsx +13 -34
- package/src/capabilities/schema-tool.test.ts +2 -3
- package/src/capabilities/schema-tools.ts +25 -25
- package/src/components/CollectionMain.tsx +2 -5
- package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +1 -1
- package/src/components/CreateDialog/CreateSpaceDialog.tsx +2 -3
- package/src/components/MembersContainer.stories.tsx +1 -5
- package/src/components/MembersContainer.tsx +23 -15
- package/src/components/MenuFooter.tsx +2 -2
- package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +2 -2
- package/src/components/ObjectSettings/BaseObjectSettings.tsx +2 -2
- package/src/components/ObjectSettings/ObjectSettingsContainer.tsx +2 -2
- package/src/components/PersistenceStatus.tsx +11 -14
- package/src/components/PopoverRenameObject.tsx +12 -6
- package/src/components/PopoverRenameSpace.tsx +8 -0
- package/src/components/SpacePresence.stories.tsx +1 -1
- package/src/components/SpacePresence.tsx +32 -42
- package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +5 -3
- package/src/components/SyncStatus/InlineSyncStatus.tsx +8 -16
- package/src/components/index.ts +0 -2
- package/src/hooks/useInputSurfaceLookup.tsx +2 -2
- package/src/translations.ts +0 -1
- package/src/types/collection.ts +6 -4
- package/src/types/thread.ts +14 -8
- package/src/types/types.ts +109 -96
- package/src/util.tsx +13 -13
- package/dist/lib/browser/app-graph-builder-J4PN5HOM.mjs.map +0 -7
- package/dist/lib/browser/chunk-FSHDAPFY.mjs.map +0 -7
- package/dist/lib/browser/chunk-KDNV4YRD.mjs +0 -283
- package/dist/lib/browser/chunk-KDNV4YRD.mjs.map +0 -7
- package/dist/lib/browser/chunk-MHTZAZT2.mjs.map +0 -7
- package/dist/lib/browser/chunk-MIJHUABE.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-72IWBVYE.mjs.map +0 -7
- package/dist/lib/browser/react-surface-KODNQYDN.mjs.map +0 -7
- package/dist/lib/browser/schema-tools-YAXPRIXP.mjs.map +0 -7
- package/dist/lib/node/app-graph-builder-3BNPC5GB.cjs.map +0 -7
- package/dist/lib/node/chunk-3UKLWXNJ.cjs +0 -311
- package/dist/lib/node/chunk-3UKLWXNJ.cjs.map +0 -7
- package/dist/lib/node/chunk-EI3ZPOLJ.cjs.map +0 -7
- package/dist/lib/node/chunk-GPZPEQXP.cjs.map +0 -7
- package/dist/lib/node/chunk-U63V2254.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-KA56XGUX.cjs.map +0 -7
- package/dist/lib/node/react-surface-37AVZFPL.cjs.map +0 -7
- package/dist/lib/node/schema-tools-BLIMOZYY.cjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-OVMSUAX3.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-35OHQARN.mjs +0 -284
- package/dist/lib/node-esm/chunk-35OHQARN.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-ABKX22IP.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-DUA32XUX.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-TVN6VHTT.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-SG2ECM5R.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-G73SO23W.mjs.map +0 -7
- package/dist/lib/node-esm/schema-tools-IU7EX5A5.mjs.map +0 -7
- package/dist/types/src/capabilities/schema.d.ts.map +0 -1
- package/dist/types/src/components/PopoverAddSpace.d.ts +0 -4
- package/dist/types/src/components/PopoverAddSpace.d.ts.map +0 -1
- package/dist/types/src/components/ShareSpaceButton.d.ts +0 -9
- package/dist/types/src/components/ShareSpaceButton.d.ts.map +0 -1
- package/dist/types/src/components/ShareSpaceButton.stories.d.ts +0 -10
- package/dist/types/src/components/ShareSpaceButton.stories.d.ts.map +0 -1
- package/src/components/PopoverAddSpace.tsx +0 -52
- package/src/components/ShareSpaceButton.stories.tsx +0 -27
- package/src/components/ShareSpaceButton.tsx +0 -32
- /package/dist/lib/browser/{app-graph-serializer-6WIAFHYK.mjs.map → app-graph-serializer-N7KZGCST.mjs.map} +0 -0
- /package/dist/lib/browser/{identity-created-DVHNLGYU.mjs.map → identity-created-74EHBH7M.mjs.map} +0 -0
- /package/dist/lib/browser/{react-root-DRVM5ACV.mjs.map → react-root-2EFJCOX7.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-2UIV5WX5.mjs.map → settings-G24447B7.mjs.map} +0 -0
- /package/dist/lib/browser/{spaces-ready-3URIMLCR.mjs.map → spaces-ready-ZSUEPHJF.mjs.map} +0 -0
- /package/dist/lib/node/{app-graph-serializer-GOLCQHFQ.cjs.map → app-graph-serializer-IKQLWTCX.cjs.map} +0 -0
- /package/dist/lib/node/{identity-created-YYTW4K3Z.cjs.map → identity-created-PCQPDULV.cjs.map} +0 -0
- /package/dist/lib/node/{react-root-6WGN5WRQ.cjs.map → react-root-DEQFKQVD.cjs.map} +0 -0
- /package/dist/lib/node/{settings-HJROTHC4.cjs.map → settings-AFWO4AWK.cjs.map} +0 -0
- /package/dist/lib/node/{spaces-ready-IWDDIAAD.cjs.map → spaces-ready-MHLUFLXN.cjs.map} +0 -0
- /package/dist/lib/node-esm/{app-graph-serializer-AZXSO7HK.mjs.map → app-graph-serializer-I6XBQJLA.mjs.map} +0 -0
- /package/dist/lib/node-esm/{identity-created-MP4GLXHO.mjs.map → identity-created-GXS46A3C.mjs.map} +0 -0
- /package/dist/lib/node-esm/{react-root-MSUT6S2S.mjs.map → react-root-2RJ2S5E6.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-KCLKPJVY.mjs.map → settings-MJVSCOI4.mjs.map} +0 -0
- /package/dist/lib/node-esm/{spaces-ready-Z3SXKWX2.mjs.map → spaces-ready-35U5BBTH.mjs.map} +0 -0
- /package/src/capabilities/{schema.ts → schema-defs.ts} +0 -0
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AwaitingObject
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-V4VNP2WY.mjs";
|
|
4
4
|
import {
|
|
5
5
|
SpaceCapabilities
|
|
6
6
|
} from "./chunk-KVRYWFZU.mjs";
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-F57CTUM6.mjs";
|
|
8
|
+
import "./chunk-CY35NLWL.mjs";
|
|
9
9
|
import {
|
|
10
10
|
SPACE_PLUGIN
|
|
11
11
|
} from "./chunk-PTKYMZWO.mjs";
|
|
@@ -25,4 +25,4 @@ var react_root_default = () => contributes(Capabilities.ReactRoot, {
|
|
|
25
25
|
export {
|
|
26
26
|
react_root_default as default
|
|
27
27
|
};
|
|
28
|
-
//# sourceMappingURL=react-root-
|
|
28
|
+
//# sourceMappingURL=react-root-2EFJCOX7.mjs.map
|
|
@@ -11,10 +11,8 @@ import {
|
|
|
11
11
|
MembersContainer,
|
|
12
12
|
MenuFooter,
|
|
13
13
|
ObjectSettingsContainer,
|
|
14
|
-
POPOVER_ADD_SPACE,
|
|
15
14
|
POPOVER_RENAME_OBJECT,
|
|
16
15
|
POPOVER_RENAME_SPACE,
|
|
17
|
-
PopoverAddSpace,
|
|
18
16
|
PopoverRenameObject,
|
|
19
17
|
PopoverRenameSpace,
|
|
20
18
|
SchemaContainer,
|
|
@@ -23,16 +21,16 @@ import {
|
|
|
23
21
|
SpacePresence,
|
|
24
22
|
SpaceSettingsContainer,
|
|
25
23
|
SyncStatus
|
|
26
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-V4VNP2WY.mjs";
|
|
27
25
|
import {
|
|
28
26
|
SpaceCapabilities
|
|
29
27
|
} from "./chunk-KVRYWFZU.mjs";
|
|
30
|
-
import "./chunk-
|
|
28
|
+
import "./chunk-F57CTUM6.mjs";
|
|
31
29
|
import {
|
|
32
30
|
CollectionType,
|
|
33
31
|
HueAnnotationId,
|
|
34
32
|
IconAnnotationId
|
|
35
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-CY35NLWL.mjs";
|
|
36
34
|
import {
|
|
37
35
|
SPACE_PLUGIN
|
|
38
36
|
} from "./chunk-PTKYMZWO.mjs";
|
|
@@ -40,12 +38,11 @@ import {
|
|
|
40
38
|
// packages/plugins/plugin-space/src/capabilities/react-surface.tsx
|
|
41
39
|
import React, { useCallback } from "react";
|
|
42
40
|
import { Capabilities, contributes, createSurface, Surface, useCapability, useLayout } from "@dxos/app-framework";
|
|
43
|
-
import {
|
|
41
|
+
import { isInstanceOf } from "@dxos/echo-schema";
|
|
44
42
|
import { findAnnotation } from "@dxos/effect";
|
|
45
43
|
import { SettingsStore } from "@dxos/local-storage";
|
|
46
44
|
import { getSpace, isEchoObject, isLiveObject, isSpace, parseId, SpaceState, useSpace } from "@dxos/react-client/echo";
|
|
47
45
|
import { Input } from "@dxos/react-ui";
|
|
48
|
-
import { Form } from "@dxos/react-ui-form";
|
|
49
46
|
import { HuePicker, IconPicker } from "@dxos/react-ui-pickers";
|
|
50
47
|
var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilities.ReactSurface, [
|
|
51
48
|
createSurface({
|
|
@@ -204,22 +201,6 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
|
|
|
204
201
|
}));
|
|
205
202
|
}
|
|
206
203
|
}),
|
|
207
|
-
createSurface({
|
|
208
|
-
id: `${SPACE_PLUGIN}/preview-popover`,
|
|
209
|
-
role: "popover",
|
|
210
|
-
filter: (data) => isEchoObject(data.subject),
|
|
211
|
-
component: ({ data }) => {
|
|
212
|
-
const schema = getSchema(data.subject);
|
|
213
|
-
if (!schema) {
|
|
214
|
-
return null;
|
|
215
|
-
}
|
|
216
|
-
return /* @__PURE__ */ React.createElement(Form, {
|
|
217
|
-
schema,
|
|
218
|
-
values: data.subject,
|
|
219
|
-
readonly: true
|
|
220
|
-
});
|
|
221
|
-
}
|
|
222
|
-
}),
|
|
223
204
|
createSurface({
|
|
224
205
|
id: POPOVER_RENAME_SPACE,
|
|
225
206
|
role: "popover",
|
|
@@ -236,12 +217,6 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
|
|
|
236
217
|
object: data.props
|
|
237
218
|
})
|
|
238
219
|
}),
|
|
239
|
-
createSurface({
|
|
240
|
-
id: POPOVER_ADD_SPACE,
|
|
241
|
-
role: "popover",
|
|
242
|
-
filter: (data) => data.component === POPOVER_ADD_SPACE,
|
|
243
|
-
component: () => /* @__PURE__ */ React.createElement(PopoverAddSpace, null)
|
|
244
|
-
}),
|
|
245
220
|
createSurface({
|
|
246
221
|
id: `${SPACE_PLUGIN}/menu-footer`,
|
|
247
222
|
role: "menu-footer",
|
|
@@ -314,4 +289,4 @@ var react_surface_default = ({ createInvitationUrl }) => contributes(Capabilitie
|
|
|
314
289
|
export {
|
|
315
290
|
react_surface_default as default
|
|
316
291
|
};
|
|
317
|
-
//# sourceMappingURL=react-surface-
|
|
292
|
+
//# sourceMappingURL=react-surface-N5OGF7TQ.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/react-surface.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type Schema } from 'effect';\nimport React, { useCallback } from 'react';\n\nimport { Capabilities, contributes, createSurface, Surface, useCapability, useLayout } from '@dxos/app-framework';\nimport { isInstanceOf } from '@dxos/echo-schema';\nimport { findAnnotation } from '@dxos/effect';\nimport { SettingsStore } from '@dxos/local-storage';\nimport {\n getSpace,\n isEchoObject,\n isLiveObject,\n isSpace,\n parseId,\n SpaceState,\n useSpace,\n type AnyLiveObject,\n type Space,\n} from '@dxos/react-client/echo';\nimport { Input } from '@dxos/react-ui';\nimport { type InputProps } from '@dxos/react-ui-form';\nimport { HuePicker, IconPicker } from '@dxos/react-ui-pickers';\nimport { type JoinPanelProps } from '@dxos/shell/react';\n\nimport { SpaceCapabilities } from './capabilities';\nimport {\n CollectionMain,\n CollectionSection,\n CREATE_OBJECT_DIALOG,\n CREATE_SPACE_DIALOG,\n CreateObjectDialog,\n CreateSpaceDialog,\n InlineSyncStatus,\n JOIN_DIALOG,\n JoinDialog,\n MenuFooter,\n POPOVER_RENAME_OBJECT,\n POPOVER_RENAME_SPACE,\n PopoverRenameObject,\n PopoverRenameSpace,\n SmallPresenceLive,\n SpacePluginSettings,\n SpacePresence,\n SyncStatus,\n type CreateObjectDialogProps,\n MembersContainer,\n ObjectSettingsContainer,\n SpaceSettingsContainer,\n SchemaContainer,\n} from '../components';\nimport { SPACE_PLUGIN } from '../meta';\nimport { CollectionType, HueAnnotationId, IconAnnotationId, type SpaceSettingsProps } from '../types';\n\ntype ReactSurfaceOptions = {\n createInvitationUrl: (invitationCode: string) => string;\n};\n\nexport default ({ createInvitationUrl }: ReactSurfaceOptions) =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${SPACE_PLUGIN}/article`,\n role: 'article',\n filter: (data): data is { subject: Space } =>\n // TODO(wittjosiah): Need to avoid shotgun parsing space state everywhere.\n isSpace(data.subject) && data.subject.state.get() === SpaceState.SPACE_READY,\n component: ({ data, role, ...rest }) => (\n <Surface\n data={{ id: data.subject.id, subject: data.subject.properties[CollectionType.typename]?.target }}\n role={role}\n {...rest}\n />\n ),\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/collection-fallback`,\n role: 'article',\n position: 'fallback',\n filter: (data): data is { subject: CollectionType } => isInstanceOf(CollectionType, data.subject),\n component: ({ data }) => <CollectionMain collection={data.subject} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/plugin-settings`,\n role: 'article',\n filter: (data): data is { subject: SettingsStore<SpaceSettingsProps> } =>\n data.subject instanceof SettingsStore && data.subject.prefix === SPACE_PLUGIN,\n component: ({ data: { subject } }) => <SpacePluginSettings settings={subject.value} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/companion/object-settings`,\n role: 'article',\n filter: (data): data is { companionTo: AnyLiveObject<any> } =>\n isEchoObject(data.companionTo) && data.subject === 'settings',\n component: ({ data, role }) => <ObjectSettingsContainer object={data.companionTo} role={role} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/space-settings-properties`,\n role: 'article',\n filter: (data): data is { subject: string } => data.subject === `${SPACE_PLUGIN}/properties`,\n component: () => {\n const layout = useLayout();\n const { spaceId } = parseId(layout.workspace);\n const space = useSpace(spaceId);\n if (!space || !spaceId) {\n return null;\n }\n\n return <SpaceSettingsContainer space={space} />;\n },\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/space-settings-members`,\n role: 'article',\n position: 'hoist',\n filter: (data): data is { subject: string } => data.subject === `${SPACE_PLUGIN}/members`,\n component: () => {\n const layout = useLayout();\n const { spaceId } = parseId(layout.workspace);\n const space = useSpace(spaceId);\n if (!space || !spaceId) {\n return null;\n }\n\n return <MembersContainer space={space} createInvitationUrl={createInvitationUrl} />;\n },\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/space-settings-schema`,\n role: 'article',\n filter: (data): data is { subject: string } => data.subject === `${SPACE_PLUGIN}/schema`,\n component: () => {\n const layout = useLayout();\n const { spaceId } = parseId(layout.workspace);\n const space = useSpace(spaceId);\n if (!space || !spaceId) {\n return null;\n }\n\n return <SchemaContainer space={space} />;\n },\n }),\n createSurface({\n id: JOIN_DIALOG,\n role: 'dialog',\n filter: (data): data is { props: JoinPanelProps } => data.component === JOIN_DIALOG,\n component: ({ data }) => <JoinDialog {...data.props} />,\n }),\n createSurface({\n id: CREATE_SPACE_DIALOG,\n role: 'dialog',\n filter: (data): data is any => data.component === CREATE_SPACE_DIALOG,\n component: () => <CreateSpaceDialog />,\n }),\n createSurface({\n id: CREATE_OBJECT_DIALOG,\n role: 'dialog',\n filter: (data): data is { props: CreateObjectDialogProps } => data.component === CREATE_OBJECT_DIALOG,\n component: ({ data }) => <CreateObjectDialog {...data.props} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/create-initial-space-form-[hue]`,\n role: 'form-input',\n filter: (data): data is { prop: string; schema: Schema.Schema<any> } => {\n const annotation = findAnnotation<boolean>((data.schema as Schema.Schema.All).ast, HueAnnotationId);\n return !!annotation;\n },\n component: ({ data: _, ...inputProps }) => {\n const { label, disabled, type, getValue, onValueChange } = inputProps as any as InputProps;\n const handleChange = useCallback((nextHue: string) => onValueChange(type, nextHue), [onValueChange]);\n const handleReset = useCallback(() => onValueChange(type, undefined), [onValueChange]);\n return (\n <Input.Root>\n <Input.Label>{label}</Input.Label>\n <HuePicker disabled={disabled} value={getValue() ?? ''} onChange={handleChange} onReset={handleReset} />\n </Input.Root>\n );\n },\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/create-initial-space-form-[icon]`,\n role: 'form-input',\n filter: (data): data is { prop: string; schema: Schema.Schema<any> } => {\n const annotation = findAnnotation<boolean>((data.schema as Schema.Schema.All).ast, IconAnnotationId);\n return !!annotation;\n },\n component: ({ data: _, ...inputProps }) => {\n const { label, disabled, type, getValue, onValueChange } = inputProps as any as InputProps;\n const handleChange = useCallback((nextIcon: string) => onValueChange(type, nextIcon), [onValueChange]);\n const handleReset = useCallback(() => onValueChange(type, undefined), [onValueChange]);\n return (\n <Input.Root>\n <Input.Label>{label}</Input.Label>\n <IconPicker disabled={disabled} value={getValue() ?? ''} onChange={handleChange} onReset={handleReset} />\n </Input.Root>\n );\n },\n }),\n createSurface({\n id: POPOVER_RENAME_SPACE,\n role: 'popover',\n filter: (data): data is { props: Space } => data.component === POPOVER_RENAME_SPACE && isSpace(data.props),\n component: ({ data }) => <PopoverRenameSpace space={data.props} />,\n }),\n createSurface({\n id: POPOVER_RENAME_OBJECT,\n role: 'popover',\n filter: (data): data is { props: AnyLiveObject<any> } =>\n data.component === POPOVER_RENAME_OBJECT && isLiveObject(data.props),\n component: ({ data }) => <PopoverRenameObject object={data.props} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/menu-footer`,\n role: 'menu-footer',\n filter: (data): data is { subject: AnyLiveObject<any> } => isEchoObject(data.subject),\n component: ({ data }) => <MenuFooter object={data.subject} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/navtree-presence`,\n role: 'navtree-item-end',\n filter: (data): data is { id: string; subject: AnyLiveObject<any>; open?: boolean } =>\n typeof data.id === 'string' && isEchoObject(data.subject),\n component: ({ data }) => {\n // TODO(wittjosiah): Doesn't need to be mutable but readonly type messes with ComplexMap.\n const state = useCapability(SpaceCapabilities.MutableState);\n return <SmallPresenceLive id={data.id} open={data.open} viewers={state.viewersByObject[data.id]} />;\n },\n }),\n // TODO(wittjosiah): Attention glyph for non-echo items should be handled elsewhere.\n createSurface({\n id: `${SPACE_PLUGIN}/navtree-presence-fallback`,\n role: 'navtree-item-end',\n position: 'fallback',\n filter: (data): data is { id: string; open?: boolean } => typeof data.id === 'string',\n component: ({ data }) => <SmallPresenceLive id={data.id} open={data.open} />,\n }),\n // TODO(wittjosiah): Broken?\n createSurface({\n id: `${SPACE_PLUGIN}/navtree-sync-status`,\n role: 'navtree-item-end',\n filter: (data): data is { subject: Space; open?: boolean } => isSpace(data.subject),\n component: ({ data }) => <InlineSyncStatus space={data.subject} open={data.open} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/navbar-presence`,\n role: 'navbar-end',\n position: 'hoist',\n filter: (data): data is { subject: Space | AnyLiveObject<any> } =>\n isSpace(data.subject) || isEchoObject(data.subject),\n component: ({ data }) => {\n const space = isSpace(data.subject) ? data.subject : getSpace(data.subject);\n const object = isSpace(data.subject)\n ? data.subject.state.get() === SpaceState.SPACE_READY\n ? (space?.properties[CollectionType.typename]?.target as CollectionType)\n : undefined\n : data.subject;\n\n return object ? <SpacePresence object={object} /> : null;\n },\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/collection-section`,\n role: 'section',\n filter: (data): data is { subject: CollectionType } => isInstanceOf(CollectionType, data.subject),\n component: ({ data }) => <CollectionSection collection={data.subject} />,\n }),\n createSurface({\n id: `${SPACE_PLUGIN}/status`,\n role: 'status',\n component: () => <SyncStatus />,\n }),\n ]);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "useCallback", "Capabilities", "contributes", "createSurface", "Surface", "useCapability", "useLayout", "isInstanceOf", "findAnnotation", "SettingsStore", "getSpace", "isEchoObject", "isLiveObject", "isSpace", "parseId", "SpaceState", "useSpace", "Input", "HuePicker", "IconPicker", "createInvitationUrl", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "SPACE_PLUGIN", "role", "filter", "data", "isSpace", "subject", "state", "get", "SpaceState", "SPACE_READY", "component", "rest", "Surface", "properties", "CollectionType", "typename", "target", "position", "isInstanceOf", "CollectionMain", "collection", "SettingsStore", "prefix", "SpacePluginSettings", "settings", "value", "isEchoObject", "companionTo", "ObjectSettingsContainer", "object", "layout", "useLayout", "spaceId", "parseId", "workspace", "space", "useSpace", "SpaceSettingsContainer", "MembersContainer", "SchemaContainer", "JOIN_DIALOG", "JoinDialog", "props", "CREATE_SPACE_DIALOG", "CreateSpaceDialog", "CREATE_OBJECT_DIALOG", "CreateObjectDialog", "annotation", "findAnnotation", "schema", "ast", "HueAnnotationId", "_", "inputProps", "label", "disabled", "type", "getValue", "onValueChange", "handleChange", "useCallback", "nextHue", "handleReset", "undefined", "Input", "Root", "Label", "HuePicker", "onChange", "onReset", "IconAnnotationId", "nextIcon", "IconPicker", "POPOVER_RENAME_SPACE", "PopoverRenameSpace", "POPOVER_RENAME_OBJECT", "isLiveObject", "PopoverRenameObject", "MenuFooter", "useCapability", "SpaceCapabilities", "MutableState", "SmallPresenceLive", "open", "viewers", "viewersByObject", "InlineSyncStatus", "getSpace", "SpacePresence", "CollectionSection", "SyncStatus"]
|
|
7
|
+
}
|
|
@@ -3,11 +3,11 @@ import {
|
|
|
3
3
|
} from "./chunk-KVRYWFZU.mjs";
|
|
4
4
|
import "./chunk-PTKYMZWO.mjs";
|
|
5
5
|
|
|
6
|
-
// packages/plugins/plugin-space/src/capabilities/schema.ts
|
|
6
|
+
// packages/plugins/plugin-space/src/capabilities/schema-defs.ts
|
|
7
7
|
import { effect } from "@preact/signals-core";
|
|
8
8
|
import { Capabilities, contributes } from "@dxos/app-framework";
|
|
9
9
|
import { ClientCapabilities } from "@dxos/plugin-client";
|
|
10
|
-
var
|
|
10
|
+
var schema_defs_default = (context) => {
|
|
11
11
|
const client = context.requestCapability(ClientCapabilities.Client);
|
|
12
12
|
let previous = [];
|
|
13
13
|
const unsubscribe = effect(() => {
|
|
@@ -19,6 +19,6 @@ var schema_default = (context) => {
|
|
|
19
19
|
return contributes(Capabilities.Null, null, () => unsubscribe());
|
|
20
20
|
};
|
|
21
21
|
export {
|
|
22
|
-
|
|
22
|
+
schema_defs_default as default
|
|
23
23
|
};
|
|
24
|
-
//# sourceMappingURL=schema-
|
|
24
|
+
//# sourceMappingURL=schema-defs-FLFEUSLB.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/schema.ts"],
|
|
3
|
+
"sources": ["../../../src/capabilities/schema-defs.ts"],
|
|
4
4
|
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { effect } from '@preact/signals-core';\n\nimport { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';\nimport { ClientCapabilities } from '@dxos/plugin-client';\n\nimport { SpaceCapabilities } from './capabilities';\nimport { type ObjectForm } from '../types';\n\nexport default (context: PluginsContext) => {\n const client = context.requestCapability(ClientCapabilities.Client);\n\n // TODO(wittjosiah): Unregister schemas when they are disabled.\n let previous: ObjectForm[] = [];\n const unsubscribe = effect(() => {\n const forms = Array.from(new Set(context.requestCapabilities(SpaceCapabilities.ObjectForm)));\n // TODO(wittjosiah): Filter out schemas which the client has already registered.\n const newSchemas = forms.filter((form) => !previous.includes(form)).map((form) => form.objectSchema);\n previous = forms;\n client.addTypes(newSchemas);\n });\n\n return contributes(Capabilities.Null, null, () => unsubscribe());\n};\n"],
|
|
5
|
-
"mappings": ";;;;;;AAIA,SAASA,cAAc;AAEvB,SAASC,cAAcC,mBAAwC;AAC/D,SAASC,0BAA0B;AAKnC,IAAA,
|
|
5
|
+
"mappings": ";;;;;;AAIA,SAASA,cAAc;AAEvB,SAASC,cAAcC,mBAAwC;AAC/D,SAASC,0BAA0B;AAKnC,IAAA,sBAAe,CAACC,YAAAA;AACd,QAAMC,SAASD,QAAQE,kBAAkBC,mBAAmBC,MAAM;AAGlE,MAAIC,WAAyB,CAAA;AAC7B,QAAMC,cAAcC,OAAO,MAAA;AACzB,UAAMC,QAAQC,MAAMC,KAAK,IAAIC,IAAIX,QAAQY,oBAAoBC,kBAAkBC,UAAU,CAAA,CAAA;AAEzF,UAAMC,aAAaP,MAAMQ,OAAO,CAACC,SAAS,CAACZ,SAASa,SAASD,IAAAA,CAAAA,EAAOE,IAAI,CAACF,SAASA,KAAKG,YAAY;AACnGf,eAAWG;AACXP,WAAOoB,SAASN,UAAAA;EAClB,CAAA;AAEA,SAAOO,YAAYC,aAAaC,MAAM,MAAM,MAAMlB,YAAAA,CAAAA;AACpD;",
|
|
6
6
|
"names": ["effect", "Capabilities", "contributes", "ClientCapabilities", "context", "client", "requestCapability", "ClientCapabilities", "Client", "previous", "unsubscribe", "effect", "forms", "Array", "from", "Set", "requestCapabilities", "SpaceCapabilities", "ObjectForm", "newSchemas", "filter", "form", "includes", "map", "objectSchema", "addTypes", "contributes", "Capabilities", "Null"]
|
|
7
7
|
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
// packages/plugins/plugin-space/src/capabilities/schema-tools.ts
|
|
2
|
-
import {
|
|
2
|
+
import { Schema, SchemaAST } from "effect";
|
|
3
3
|
import { Capabilities, contributes } from "@dxos/app-framework";
|
|
4
4
|
import { defineTool, ToolResult } from "@dxos/artifact";
|
|
5
|
-
import { FormatEnum, FormatEnums,
|
|
5
|
+
import { FormatEnum, FormatEnums, SelectOptionSchema, GeoPoint, toJsonSchema } from "@dxos/echo-schema";
|
|
6
6
|
import { invariant } from "@dxos/invariant";
|
|
7
7
|
import { hues } from "@dxos/react-ui-theme";
|
|
8
8
|
import { getSchemaFromPropertyDefinitions } from "@dxos/schema";
|
|
9
9
|
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/capabilities/schema-tools.ts";
|
|
10
|
-
var TypeNameSchema =
|
|
11
|
-
[TitleAnnotationId]: "TypeName",
|
|
12
|
-
[DescriptionAnnotationId]: "Domain-style type name path. Dashes are not allowed. Use camel case for the final component of the type name.",
|
|
13
|
-
[ExamplesAnnotationId]: [
|
|
10
|
+
var TypeNameSchema = Schema.String.pipe(Schema.pattern(/^\w+\.\w{2,}\/[\w/]+$/i), Schema.annotations({
|
|
11
|
+
[SchemaAST.TitleAnnotationId]: "TypeName",
|
|
12
|
+
[SchemaAST.DescriptionAnnotationId]: "Domain-style type name path. Dashes are not allowed. Use camel case for the final component of the type name.",
|
|
13
|
+
[SchemaAST.ExamplesAnnotationId]: [
|
|
14
14
|
"example.com/type/Document",
|
|
15
15
|
"example.com/type/FlightList"
|
|
16
16
|
]
|
|
@@ -18,26 +18,26 @@ var TypeNameSchema = S.String.pipe(S.pattern(/^\w+\.\w{2,}\/[\w/]+$/i), S.annota
|
|
|
18
18
|
var formatDescription = `The format of the property. Additional information:
|
|
19
19
|
${FormatEnum.GeoPoint}: ${JSON.stringify(toJsonSchema(GeoPoint))}
|
|
20
20
|
This tuple is GeoJSON. You must specify \`${FormatEnum.GeoPoint}\` as [Longitude, Latitude]`;
|
|
21
|
-
var PropertyDefinitionSchema =
|
|
22
|
-
name:
|
|
23
|
-
[DescriptionAnnotationId]: "The name of the property."
|
|
21
|
+
var PropertyDefinitionSchema = Schema.Struct({
|
|
22
|
+
name: Schema.String.annotations({
|
|
23
|
+
[SchemaAST.DescriptionAnnotationId]: "The name of the property."
|
|
24
24
|
}),
|
|
25
|
-
format:
|
|
26
|
-
[DescriptionAnnotationId]: formatDescription
|
|
25
|
+
format: Schema.Union(...FormatEnums.map((format) => Schema.Literal(format))).annotations({
|
|
26
|
+
[SchemaAST.DescriptionAnnotationId]: formatDescription
|
|
27
27
|
}),
|
|
28
|
-
config:
|
|
29
|
-
options:
|
|
28
|
+
config: Schema.optional(Schema.Struct({
|
|
29
|
+
options: Schema.optional(Schema.Array(SelectOptionSchema).annotations({
|
|
30
30
|
description: `Options for SingleSelect/MultiSelect formats. Available colors: ${hues.join(", ")}`
|
|
31
|
-
}).pipe(
|
|
31
|
+
}).pipe(Schema.mutable))
|
|
32
32
|
}))
|
|
33
|
-
}).pipe(
|
|
33
|
+
}).pipe(Schema.mutable);
|
|
34
34
|
var SYSTEM_NAMESPACE = "dxos.org/echo/schema";
|
|
35
35
|
var schema_tools_default = () => contributes(Capabilities.Tools, [
|
|
36
36
|
defineTool(SYSTEM_NAMESPACE, {
|
|
37
37
|
name: "list",
|
|
38
38
|
description: "List registered schemas in the space.",
|
|
39
39
|
caption: "Listing registered schemas...",
|
|
40
|
-
schema:
|
|
40
|
+
schema: Schema.Struct({}),
|
|
41
41
|
execute: async (_input, { extensions }) => {
|
|
42
42
|
invariant(extensions?.space, "No space.", {
|
|
43
43
|
F: __dxlog_file,
|
|
@@ -60,8 +60,8 @@ var schema_tools_default = () => contributes(Capabilities.Tools, [
|
|
|
60
60
|
name: "get",
|
|
61
61
|
description: "Get a specific schema by its typename.",
|
|
62
62
|
caption: "Getting schema...",
|
|
63
|
-
schema:
|
|
64
|
-
typename:
|
|
63
|
+
schema: Schema.Struct({
|
|
64
|
+
typename: Schema.String.annotations({
|
|
65
65
|
description: "The fully qualified typename of the schema."
|
|
66
66
|
})
|
|
67
67
|
}),
|
|
@@ -89,13 +89,13 @@ var schema_tools_default = () => contributes(Capabilities.Tools, [
|
|
|
89
89
|
name: "create",
|
|
90
90
|
description: "Create a new schema with the provided definition.",
|
|
91
91
|
caption: "Creating schema...",
|
|
92
|
-
schema:
|
|
92
|
+
schema: Schema.Struct({
|
|
93
93
|
typename: TypeNameSchema.annotations({
|
|
94
94
|
description: 'The fully qualified schema typename. Must start with a domain, and then one or more path components (e.g., "example.com/type/TypeName").'
|
|
95
95
|
}),
|
|
96
|
-
properties:
|
|
96
|
+
properties: Schema.Array(PropertyDefinitionSchema).pipe(Schema.annotations({
|
|
97
97
|
description: "Array of property definitions for the schema."
|
|
98
|
-
}),
|
|
98
|
+
}), Schema.mutable)
|
|
99
99
|
}),
|
|
100
100
|
execute: async ({ typename, properties }, { extensions }) => {
|
|
101
101
|
invariant(extensions?.space, "No space.", {
|
|
@@ -120,4 +120,4 @@ export {
|
|
|
120
120
|
TypeNameSchema,
|
|
121
121
|
schema_tools_default as default
|
|
122
122
|
};
|
|
123
|
-
//# sourceMappingURL=schema-tools-
|
|
123
|
+
//# sourceMappingURL=schema-tools-MYC4LTQD.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/schema-tools.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema, SchemaAST } from 'effect';\n\nimport { Capabilities, contributes, type PromiseIntentDispatcher } from '@dxos/app-framework';\nimport { defineTool, ToolResult } from '@dxos/artifact';\nimport { type Space } from '@dxos/client/echo';\nimport { FormatEnum, FormatEnums, SelectOptionSchema, GeoPoint, toJsonSchema } from '@dxos/echo-schema';\nimport { invariant } from '@dxos/invariant';\nimport { hues } from '@dxos/react-ui-theme';\nimport { getSchemaFromPropertyDefinitions } from '@dxos/schema';\n\n// TODO(burdon): Factor out.\ndeclare global {\n interface ToolContextExtensions {\n space?: Space;\n dispatch?: PromiseIntentDispatcher;\n }\n}\n\n// TODO(ZaymonFC): Move this somewhere common.\nexport const TypeNameSchema = Schema.String.pipe(\n Schema.pattern(/^\\w+\\.\\w{2,}\\/[\\w/]+$/i),\n Schema.annotations({\n [SchemaAST.TitleAnnotationId]: 'TypeName',\n [SchemaAST.DescriptionAnnotationId]:\n 'Domain-style type name path. Dashes are not allowed. Use camel case for the final component of the type name.',\n [SchemaAST.ExamplesAnnotationId]: ['example.com/type/Document', 'example.com/type/FlightList'],\n }),\n);\n\nconst formatDescription = `The format of the property. Additional information:\n ${FormatEnum.GeoPoint}: ${JSON.stringify(toJsonSchema(GeoPoint))}\n This tuple is GeoJSON. You must specify \\`${FormatEnum.GeoPoint}\\` as [Longitude, Latitude]`;\n\n// TODO(ZaymonFC): All properties are default optional, but maybe we should allow for required properties.\nconst PropertyDefinitionSchema = Schema.Struct({\n name: Schema.String.annotations({ [SchemaAST.DescriptionAnnotationId]: 'The name of the property.' }),\n format: Schema.Union(...FormatEnums.map((format) => Schema.Literal(format))).annotations({\n [SchemaAST.DescriptionAnnotationId]: formatDescription,\n }),\n config: Schema.optional(\n Schema.Struct({\n options: Schema.optional(\n Schema.Array(SelectOptionSchema)\n .annotations({\n description: `Options for SingleSelect/MultiSelect formats. Available colors: ${hues.join(', ')}`,\n })\n .pipe(Schema.mutable),\n ),\n }),\n ),\n}).pipe(Schema.mutable);\n\nconst SYSTEM_NAMESPACE = 'dxos.org/echo/schema';\n\nexport default () =>\n contributes(Capabilities.Tools, [\n defineTool(SYSTEM_NAMESPACE, {\n name: 'list',\n description: 'List registered schemas in the space.',\n caption: 'Listing registered schemas...',\n schema: Schema.Struct({}),\n execute: async (_input, { extensions }) => {\n invariant(extensions?.space, 'No space.');\n const space = extensions.space;\n\n const schemas = await space.db.schemaRegistry.query({}).run();\n return ToolResult.Success(\n schemas.map((schema) => ({\n typename: schema.typename,\n version: schema.version,\n })),\n );\n },\n }),\n defineTool(SYSTEM_NAMESPACE, {\n name: 'get',\n description: 'Get a specific schema by its typename.',\n caption: 'Getting schema...',\n schema: Schema.Struct({\n typename: Schema.String.annotations({\n description: 'The fully qualified typename of the schema.',\n }),\n }),\n execute: async ({ typename }, { extensions }) => {\n invariant(extensions?.space, 'No space.');\n const space = extensions.space;\n\n const schema = await space.db.schemaRegistry.query({ typename }).firstOrUndefined();\n if (!schema) {\n return ToolResult.Error(`Schema not found: ${typename}`);\n }\n\n return ToolResult.Success(schema);\n },\n }),\n defineTool(SYSTEM_NAMESPACE, {\n name: 'create',\n description: 'Create a new schema with the provided definition.',\n caption: 'Creating schema...',\n schema: Schema.Struct({\n typename: TypeNameSchema.annotations({\n description:\n 'The fully qualified schema typename. Must start with a domain, and then one or more path components (e.g., \"example.com/type/TypeName\").',\n }),\n properties: Schema.Array(PropertyDefinitionSchema).pipe(\n Schema.annotations({ description: 'Array of property definitions for the schema.' }),\n Schema.mutable,\n ),\n }),\n execute: async ({ typename, properties }, { extensions }) => {\n invariant(extensions?.space, 'No space.');\n const space = extensions.space;\n\n const schema = getSchemaFromPropertyDefinitions(typename, properties);\n const [registeredSchema] = await space.db.schemaRegistry.register([schema]);\n\n return ToolResult.Success(registeredSchema);\n },\n }),\n ]);\n"],
|
|
5
|
+
"mappings": ";AAIA,SAASA,QAAQC,iBAAiB;AAElC,SAASC,cAAcC,mBAAiD;AACxE,SAASC,YAAYC,kBAAkB;AAEvC,SAASC,YAAYC,aAAaC,oBAAoBC,UAAUC,oBAAoB;AACpF,SAASC,iBAAiB;AAC1B,SAASC,YAAY;AACrB,SAASC,wCAAwC;;AAW1C,IAAMC,iBAAiBd,OAAOe,OAAOC,KAC1ChB,OAAOiB,QAAQ,wBAAA,GACfjB,OAAOkB,YAAY;EACjB,CAACjB,UAAUkB,iBAAiB,GAAG;EAC/B,CAAClB,UAAUmB,uBAAuB,GAChC;EACF,CAACnB,UAAUoB,oBAAoB,GAAG;IAAC;IAA6B;;AAClE,CAAA,CAAA;AAGF,IAAMC,oBAAoB;IACtBhB,WAAWG,QAAQ,KAAKc,KAAKC,UAAUd,aAAaD,QAAAA,CAAAA,CAAAA;8CACVH,WAAWG,QAAQ;AAGjE,IAAMgB,2BAA2BzB,OAAO0B,OAAO;EAC7CC,MAAM3B,OAAOe,OAAOG,YAAY;IAAE,CAACjB,UAAUmB,uBAAuB,GAAG;EAA4B,CAAA;EACnGQ,QAAQ5B,OAAO6B,MAAK,GAAItB,YAAYuB,IAAI,CAACF,WAAW5B,OAAO+B,QAAQH,MAAAA,CAAAA,CAAAA,EAAUV,YAAY;IACvF,CAACjB,UAAUmB,uBAAuB,GAAGE;EACvC,CAAA;EACAU,QAAQhC,OAAOiC,SACbjC,OAAO0B,OAAO;IACZQ,SAASlC,OAAOiC,SACdjC,OAAOmC,MAAM3B,kBAAAA,EACVU,YAAY;MACXkB,aAAa,mEAAmExB,KAAKyB,KAAK,IAAA,CAAA;IAC5F,CAAA,EACCrB,KAAKhB,OAAOsC,OAAO,CAAA;EAE1B,CAAA,CAAA;AAEJ,CAAA,EAAGtB,KAAKhB,OAAOsC,OAAO;AAEtB,IAAMC,mBAAmB;AAEzB,IAAA,uBAAe,MACbpC,YAAYD,aAAasC,OAAO;EAC9BpC,WAAWmC,kBAAkB;IAC3BZ,MAAM;IACNS,aAAa;IACbK,SAAS;IACTC,QAAQ1C,OAAO0B,OAAO,CAAC,CAAA;IACvBiB,SAAS,OAAOC,QAAQ,EAAEC,WAAU,MAAE;AACpClC,gBAAUkC,YAAYC,OAAO,aAAA;;;;;;;;;AAC7B,YAAMA,QAAQD,WAAWC;AAEzB,YAAMC,UAAU,MAAMD,MAAME,GAAGC,eAAeC,MAAM,CAAC,CAAA,EAAGC,IAAG;AAC3D,aAAO9C,WAAW+C,QAChBL,QAAQjB,IAAI,CAACY,YAAY;QACvBW,UAAUX,OAAOW;QACjBC,SAASZ,OAAOY;MAClB,EAAA,CAAA;IAEJ;EACF,CAAA;EACAlD,WAAWmC,kBAAkB;IAC3BZ,MAAM;IACNS,aAAa;IACbK,SAAS;IACTC,QAAQ1C,OAAO0B,OAAO;MACpB2B,UAAUrD,OAAOe,OAAOG,YAAY;QAClCkB,aAAa;MACf,CAAA;IACF,CAAA;IACAO,SAAS,OAAO,EAAEU,SAAQ,GAAI,EAAER,WAAU,MAAE;AAC1ClC,gBAAUkC,YAAYC,OAAO,aAAA;;;;;;;;;AAC7B,YAAMA,QAAQD,WAAWC;AAEzB,YAAMJ,SAAS,MAAMI,MAAME,GAAGC,eAAeC,MAAM;QAAEG;MAAS,CAAA,EAAGE,iBAAgB;AACjF,UAAI,CAACb,QAAQ;AACX,eAAOrC,WAAWmD,MAAM,qBAAqBH,QAAAA,EAAU;MACzD;AAEA,aAAOhD,WAAW+C,QAAQV,MAAAA;IAC5B;EACF,CAAA;EACAtC,WAAWmC,kBAAkB;IAC3BZ,MAAM;IACNS,aAAa;IACbK,SAAS;IACTC,QAAQ1C,OAAO0B,OAAO;MACpB2B,UAAUvC,eAAeI,YAAY;QACnCkB,aACE;MACJ,CAAA;MACAqB,YAAYzD,OAAOmC,MAAMV,wBAAAA,EAA0BT,KACjDhB,OAAOkB,YAAY;QAAEkB,aAAa;MAAgD,CAAA,GAClFpC,OAAOsC,OAAO;IAElB,CAAA;IACAK,SAAS,OAAO,EAAEU,UAAUI,WAAU,GAAI,EAAEZ,WAAU,MAAE;AACtDlC,gBAAUkC,YAAYC,OAAO,aAAA;;;;;;;;;AAC7B,YAAMA,QAAQD,WAAWC;AAEzB,YAAMJ,SAAS7B,iCAAiCwC,UAAUI,UAAAA;AAC1D,YAAM,CAACC,gBAAAA,IAAoB,MAAMZ,MAAME,GAAGC,eAAeU,SAAS;QAACjB;OAAO;AAE1E,aAAOrC,WAAW+C,QAAQM,gBAAAA;IAC5B;EACF,CAAA;CACD;",
|
|
6
|
+
"names": ["Schema", "SchemaAST", "Capabilities", "contributes", "defineTool", "ToolResult", "FormatEnum", "FormatEnums", "SelectOptionSchema", "GeoPoint", "toJsonSchema", "invariant", "hues", "getSchemaFromPropertyDefinitions", "TypeNameSchema", "String", "pipe", "pattern", "annotations", "TitleAnnotationId", "DescriptionAnnotationId", "ExamplesAnnotationId", "formatDescription", "JSON", "stringify", "PropertyDefinitionSchema", "Struct", "name", "format", "Union", "map", "Literal", "config", "optional", "options", "Array", "description", "join", "mutable", "SYSTEM_NAMESPACE", "Tools", "caption", "schema", "execute", "_input", "extensions", "space", "schemas", "db", "schemaRegistry", "query", "run", "Success", "typename", "version", "firstOrUndefined", "Error", "properties", "registeredSchema", "register"]
|
|
7
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SpaceSettingsSchema
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-CY35NLWL.mjs";
|
|
4
4
|
import {
|
|
5
5
|
SPACE_PLUGIN
|
|
6
6
|
} from "./chunk-PTKYMZWO.mjs";
|
|
@@ -21,4 +21,4 @@ var settings_default = () => {
|
|
|
21
21
|
export {
|
|
22
22
|
settings_default as default
|
|
23
23
|
};
|
|
24
|
-
//# sourceMappingURL=settings-
|
|
24
|
+
//# sourceMappingURL=settings-G24447B7.mjs.map
|
|
@@ -4,10 +4,10 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
COMPOSER_SPACE_LOCK,
|
|
6
6
|
SHARED
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-F57CTUM6.mjs";
|
|
8
8
|
import {
|
|
9
9
|
SpaceAction
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-CY35NLWL.mjs";
|
|
11
11
|
import "./chunk-PTKYMZWO.mjs";
|
|
12
12
|
|
|
13
13
|
// packages/plugins/plugin-space/src/capabilities/spaces-ready.ts
|
|
@@ -196,4 +196,4 @@ var spaces_ready_default = async (context) => {
|
|
|
196
196
|
export {
|
|
197
197
|
spaces_ready_default as default
|
|
198
198
|
};
|
|
199
|
-
//# sourceMappingURL=spaces-ready-
|
|
199
|
+
//# sourceMappingURL=spaces-ready-ZSUEPHJF.mjs.map
|
|
@@ -16,14 +16,14 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var app_graph_builder_6VR2TBBF_exports = {};
|
|
20
|
+
__export(app_graph_builder_6VR2TBBF_exports, {
|
|
21
21
|
default: () => app_graph_builder_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
23
|
+
module.exports = __toCommonJS(app_graph_builder_6VR2TBBF_exports);
|
|
24
24
|
var import_chunk_IKIDS6XF = require("./chunk-IKIDS6XF.cjs");
|
|
25
|
-
var
|
|
26
|
-
var
|
|
25
|
+
var import_chunk_FILCZU6V = require("./chunk-FILCZU6V.cjs");
|
|
26
|
+
var import_chunk_K6ZO4WDJ = require("./chunk-K6ZO4WDJ.cjs");
|
|
27
27
|
var import_chunk_6P2DB4QQ = require("./chunk-6P2DB4QQ.cjs");
|
|
28
28
|
var import_app_framework = require("@dxos/app-framework");
|
|
29
29
|
var import_echo = require("@dxos/client/echo");
|
|
@@ -37,8 +37,8 @@ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/sr
|
|
|
37
37
|
var app_graph_builder_default = (context) => {
|
|
38
38
|
const resolve = (typename) => context.requestCapabilities(import_app_framework.Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};
|
|
39
39
|
const spacesNode = {
|
|
40
|
-
id:
|
|
41
|
-
type:
|
|
40
|
+
id: import_chunk_FILCZU6V.SPACES,
|
|
41
|
+
type: import_chunk_FILCZU6V.SPACES,
|
|
42
42
|
cacheable: [
|
|
43
43
|
"label",
|
|
44
44
|
"role"
|
|
@@ -59,9 +59,9 @@ var app_graph_builder_default = (context) => {
|
|
|
59
59
|
onRearrangeChildren: async (nextOrder) => {
|
|
60
60
|
const { graph } = context.requestCapability(import_app_framework.Capabilities.AppGraph);
|
|
61
61
|
const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
|
|
62
|
-
graph._sortEdges(
|
|
62
|
+
graph._sortEdges(import_chunk_FILCZU6V.SPACES, "outbound", nextOrder.map(({ id }) => id));
|
|
63
63
|
const { objects: [spacesOrder] } = await client.spaces.default.db.query(import_echo.Filter.schema(import_echo.Expando, {
|
|
64
|
-
key:
|
|
64
|
+
key: import_chunk_FILCZU6V.SHARED
|
|
65
65
|
})).run();
|
|
66
66
|
if (spacesOrder) {
|
|
67
67
|
spacesOrder.order = nextOrder.map(({ id }) => id);
|
|
@@ -84,33 +84,50 @@ var app_graph_builder_default = (context) => {
|
|
|
84
84
|
filter: (node) => node.id === "root",
|
|
85
85
|
actions: () => [
|
|
86
86
|
{
|
|
87
|
-
id:
|
|
88
|
-
data: async (
|
|
87
|
+
id: import_chunk_K6ZO4WDJ.SpaceAction.OpenCreateSpace._tag,
|
|
88
|
+
data: async () => {
|
|
89
89
|
const { dispatchPromise: dispatch } = context.requestCapability(import_app_framework.Capabilities.IntentDispatcher);
|
|
90
|
-
await dispatch((0, import_app_framework.createIntent)(
|
|
90
|
+
await dispatch((0, import_app_framework.createIntent)(import_chunk_K6ZO4WDJ.SpaceAction.OpenCreateSpace));
|
|
91
91
|
},
|
|
92
92
|
properties: {
|
|
93
93
|
label: [
|
|
94
|
-
"
|
|
94
|
+
"create space label",
|
|
95
95
|
{
|
|
96
96
|
ns: import_chunk_6P2DB4QQ.SPACE_PLUGIN
|
|
97
97
|
}
|
|
98
98
|
],
|
|
99
99
|
icon: "ph--plus--regular",
|
|
100
|
-
testId: "spacePlugin.
|
|
101
|
-
disposition: "
|
|
102
|
-
position: "fallback"
|
|
100
|
+
testId: "spacePlugin.createSpace",
|
|
101
|
+
disposition: "menu"
|
|
103
102
|
}
|
|
104
103
|
},
|
|
105
104
|
{
|
|
106
|
-
id:
|
|
105
|
+
id: import_chunk_K6ZO4WDJ.SpaceAction.Join._tag,
|
|
106
|
+
data: async () => {
|
|
107
|
+
const { dispatchPromise: dispatch } = context.requestCapability(import_app_framework.Capabilities.IntentDispatcher);
|
|
108
|
+
await dispatch((0, import_app_framework.createIntent)(import_chunk_K6ZO4WDJ.SpaceAction.Join));
|
|
109
|
+
},
|
|
110
|
+
properties: {
|
|
111
|
+
label: [
|
|
112
|
+
"join space label",
|
|
113
|
+
{
|
|
114
|
+
ns: import_chunk_6P2DB4QQ.SPACE_PLUGIN
|
|
115
|
+
}
|
|
116
|
+
],
|
|
117
|
+
icon: "ph--sign-in--regular",
|
|
118
|
+
testId: "spacePlugin.joinSpace",
|
|
119
|
+
disposition: "menu"
|
|
120
|
+
}
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
id: import_chunk_K6ZO4WDJ.SpaceAction.OpenMembers._tag,
|
|
107
124
|
data: async () => {
|
|
108
125
|
const { dispatchPromise: dispatch } = context.requestCapability(import_app_framework.Capabilities.IntentDispatcher);
|
|
109
126
|
const layout = context.requestCapability(import_app_framework.Capabilities.Layout);
|
|
110
127
|
const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
|
|
111
128
|
const { spaceId } = (0, import_echo.parseId)(layout.workspace);
|
|
112
129
|
const space = (spaceId && client.spaces.get(spaceId)) ?? client.spaces.default;
|
|
113
|
-
await dispatch((0, import_app_framework.createIntent)(
|
|
130
|
+
await dispatch((0, import_app_framework.createIntent)(import_chunk_K6ZO4WDJ.SpaceAction.OpenMembers, {
|
|
114
131
|
space
|
|
115
132
|
}));
|
|
116
133
|
},
|
|
@@ -130,14 +147,14 @@ var app_graph_builder_default = (context) => {
|
|
|
130
147
|
}
|
|
131
148
|
},
|
|
132
149
|
{
|
|
133
|
-
id:
|
|
150
|
+
id: import_chunk_K6ZO4WDJ.SpaceAction.OpenSettings._tag,
|
|
134
151
|
data: async () => {
|
|
135
152
|
const { dispatchPromise: dispatch } = context.requestCapability(import_app_framework.Capabilities.IntentDispatcher);
|
|
136
153
|
const layout = context.requestCapability(import_app_framework.Capabilities.Layout);
|
|
137
154
|
const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
|
|
138
155
|
const { spaceId } = (0, import_echo.parseId)(layout.workspace);
|
|
139
156
|
const space = (spaceId && client.spaces.get(spaceId)) ?? client.spaces.default;
|
|
140
|
-
await dispatch((0, import_app_framework.createIntent)(
|
|
157
|
+
await dispatch((0, import_app_framework.createIntent)(import_chunk_K6ZO4WDJ.SpaceAction.OpenSettings, {
|
|
141
158
|
space
|
|
142
159
|
}));
|
|
143
160
|
},
|
|
@@ -165,12 +182,12 @@ var app_graph_builder_default = (context) => {
|
|
|
165
182
|
connector: () => [
|
|
166
183
|
spacesNode
|
|
167
184
|
],
|
|
168
|
-
resolver: ({ id }) => id ===
|
|
185
|
+
resolver: ({ id }) => id === import_chunk_FILCZU6V.SPACES ? spacesNode : void 0
|
|
169
186
|
}),
|
|
170
187
|
// Create space nodes.
|
|
171
188
|
(0, import_plugin_graph.createExtension)({
|
|
172
|
-
id:
|
|
173
|
-
filter: (node) => node.id ===
|
|
189
|
+
id: import_chunk_FILCZU6V.SPACES,
|
|
190
|
+
filter: (node) => node.id === import_chunk_FILCZU6V.SPACES,
|
|
174
191
|
connector: () => {
|
|
175
192
|
const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
|
|
176
193
|
const spaces = (0, import_plugin_graph.toSignal)((onChange) => client.spaces.subscribe(() => onChange()).unsubscribe, () => client.spaces.get());
|
|
@@ -181,8 +198,8 @@ var app_graph_builder_default = (context) => {
|
|
|
181
198
|
const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
|
|
182
199
|
const settings = context.requestCapabilities(import_app_framework.Capabilities.SettingsStore)[0]?.getStore(import_chunk_6P2DB4QQ.SPACE_PLUGIN)?.value;
|
|
183
200
|
try {
|
|
184
|
-
const [spacesOrder] = (0,
|
|
185
|
-
key:
|
|
201
|
+
const [spacesOrder] = (0, import_chunk_FILCZU6V.memoizeQuery)(client.spaces.default, import_echo.Filter.schema(import_echo.Expando, {
|
|
202
|
+
key: import_chunk_FILCZU6V.SHARED
|
|
186
203
|
}));
|
|
187
204
|
const order = spacesOrder?.order ?? [];
|
|
188
205
|
const orderMap = new Map(order.map((id, index) => [
|
|
@@ -192,7 +209,7 @@ var app_graph_builder_default = (context) => {
|
|
|
192
209
|
return [
|
|
193
210
|
...spaces.filter((space) => orderMap.has(space.id)).sort((a, b) => orderMap.get(a.id) - orderMap.get(b.id)),
|
|
194
211
|
...spaces.filter((space) => !orderMap.has(space.id))
|
|
195
|
-
].filter((space) => settings?.showHidden ? true : space.state.get() !== import_echo.SpaceState.SPACE_INACTIVE).map((space) => (0,
|
|
212
|
+
].filter((space) => settings?.showHidden ? true : space.state.get() !== import_echo.SpaceState.SPACE_INACTIVE).map((space) => (0, import_chunk_FILCZU6V.constructSpaceNode)({
|
|
196
213
|
space,
|
|
197
214
|
navigable: state.navigableCollections,
|
|
198
215
|
personal: space === client.spaces.default,
|
|
@@ -222,7 +239,7 @@ var app_graph_builder_default = (context) => {
|
|
|
222
239
|
return void 0;
|
|
223
240
|
} else {
|
|
224
241
|
const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
|
|
225
|
-
return (0,
|
|
242
|
+
return (0, import_chunk_FILCZU6V.constructSpaceNode)({
|
|
226
243
|
space,
|
|
227
244
|
navigable: state.navigableCollections,
|
|
228
245
|
personal: space === client.spaces.default,
|
|
@@ -235,13 +252,13 @@ var app_graph_builder_default = (context) => {
|
|
|
235
252
|
// Create space actions.
|
|
236
253
|
(0, import_plugin_graph.createExtension)({
|
|
237
254
|
id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/actions`,
|
|
238
|
-
filter: (node) => node.type ===
|
|
255
|
+
filter: (node) => node.type === import_chunk_K6ZO4WDJ.SPACE_TYPE,
|
|
239
256
|
actions: ({ node }) => {
|
|
240
257
|
const space = node.data;
|
|
241
258
|
const { dispatchPromise: dispatch } = context.requestCapability(import_app_framework.Capabilities.IntentDispatcher);
|
|
242
259
|
const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
|
|
243
260
|
const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
|
|
244
|
-
return (0,
|
|
261
|
+
return (0, import_chunk_FILCZU6V.constructSpaceActions)({
|
|
245
262
|
space,
|
|
246
263
|
dispatch,
|
|
247
264
|
personal: space === client.spaces.default,
|
|
@@ -252,19 +269,19 @@ var app_graph_builder_default = (context) => {
|
|
|
252
269
|
// Create nodes for objects in the root collection of a space.
|
|
253
270
|
(0, import_plugin_graph.createExtension)({
|
|
254
271
|
id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/root-collection`,
|
|
255
|
-
filter: (node) => node.type ===
|
|
272
|
+
filter: (node) => node.type === import_chunk_K6ZO4WDJ.SPACE_TYPE,
|
|
256
273
|
connector: ({ node }) => {
|
|
257
274
|
const space = node.data;
|
|
258
275
|
const spaceState = (0, import_plugin_graph.toSignal)((onChange) => space.state.subscribe(() => onChange()).unsubscribe, () => space.state.get(), space.id);
|
|
259
276
|
if (spaceState !== import_echo.SpaceState.SPACE_READY) {
|
|
260
277
|
return;
|
|
261
278
|
}
|
|
262
|
-
const collection = space.properties[
|
|
279
|
+
const collection = space.properties[import_chunk_K6ZO4WDJ.CollectionType.typename]?.target;
|
|
263
280
|
if (!collection) {
|
|
264
281
|
return;
|
|
265
282
|
}
|
|
266
283
|
const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
|
|
267
|
-
return collection.objects.map((object) => object.target).filter(import_util.isNonNullable).map((object) => (0,
|
|
284
|
+
return collection.objects.map((object) => object.target).filter(import_util.isNonNullable).map((object) => (0, import_chunk_FILCZU6V.createObjectNode)({
|
|
268
285
|
object,
|
|
269
286
|
space,
|
|
270
287
|
resolve,
|
|
@@ -275,7 +292,7 @@ var app_graph_builder_default = (context) => {
|
|
|
275
292
|
// Create nodes for objects in a collection or by its fully qualified id.
|
|
276
293
|
(0, import_plugin_graph.createExtension)({
|
|
277
294
|
id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/objects`,
|
|
278
|
-
filter: (node) => node.data instanceof
|
|
295
|
+
filter: (node) => node.data instanceof import_chunk_K6ZO4WDJ.CollectionType,
|
|
279
296
|
connector: ({ node }) => {
|
|
280
297
|
const collection = node.data;
|
|
281
298
|
const space = (0, import_echo.getSpace)(collection);
|
|
@@ -283,7 +300,7 @@ var app_graph_builder_default = (context) => {
|
|
|
283
300
|
return;
|
|
284
301
|
}
|
|
285
302
|
const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
|
|
286
|
-
return collection.objects.map((object) => object.target).filter(import_util.isNonNullable).map((object) => (0,
|
|
303
|
+
return collection.objects.map((object) => object.target).filter(import_util.isNonNullable).map((object) => (0, import_chunk_FILCZU6V.createObjectNode)({
|
|
287
304
|
object,
|
|
288
305
|
space,
|
|
289
306
|
resolve,
|
|
@@ -307,7 +324,7 @@ var app_graph_builder_default = (context) => {
|
|
|
307
324
|
if (spaceState !== import_echo.SpaceState.SPACE_READY) {
|
|
308
325
|
return;
|
|
309
326
|
}
|
|
310
|
-
const [object] = (0,
|
|
327
|
+
const [object] = (0, import_chunk_FILCZU6V.memoizeQuery)(space, {
|
|
311
328
|
id: objectId
|
|
312
329
|
});
|
|
313
330
|
if (!object) {
|
|
@@ -317,7 +334,7 @@ var app_graph_builder_default = (context) => {
|
|
|
317
334
|
return false;
|
|
318
335
|
} else {
|
|
319
336
|
const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
|
|
320
|
-
return (0,
|
|
337
|
+
return (0, import_chunk_FILCZU6V.createObjectNode)({
|
|
321
338
|
object,
|
|
322
339
|
space,
|
|
323
340
|
resolve,
|
|
@@ -333,7 +350,7 @@ var app_graph_builder_default = (context) => {
|
|
|
333
350
|
actions: ({ node }) => {
|
|
334
351
|
const { dispatchPromise: dispatch } = context.requestCapability(import_app_framework.Capabilities.IntentDispatcher);
|
|
335
352
|
const state = context.requestCapability(import_chunk_IKIDS6XF.SpaceCapabilities.State);
|
|
336
|
-
return (0,
|
|
353
|
+
return (0, import_chunk_FILCZU6V.constructObjectActions)({
|
|
337
354
|
node,
|
|
338
355
|
dispatch,
|
|
339
356
|
navigable: state.navigableCollections
|
|
@@ -361,11 +378,11 @@ var app_graph_builder_default = (context) => {
|
|
|
361
378
|
],
|
|
362
379
|
icon: "ph--sliders--regular",
|
|
363
380
|
disposition: "hidden",
|
|
364
|
-
position: "
|
|
381
|
+
position: "fallback"
|
|
365
382
|
}
|
|
366
383
|
}
|
|
367
384
|
]
|
|
368
385
|
})
|
|
369
386
|
]);
|
|
370
387
|
};
|
|
371
|
-
//# sourceMappingURL=app-graph-builder-
|
|
388
|
+
//# sourceMappingURL=app-graph-builder-6VR2TBBF.cjs.map
|