@dxos/plugin-space 0.8.1-main.ba2dec9 → 0.8.1-staging.5be625a
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-MGK5HWPZ.mjs → app-graph-builder-VHO33TWC.mjs} +5 -5
- package/dist/lib/browser/{app-graph-serializer-FOWFLYGU.mjs → app-graph-serializer-F3ASSBHI.mjs} +7 -7
- package/dist/lib/browser/{app-graph-serializer-FOWFLYGU.mjs.map → app-graph-serializer-F3ASSBHI.mjs.map} +2 -2
- package/dist/lib/browser/{chunk-23RVI5FZ.mjs → chunk-3UOTYBKX.mjs} +9 -8
- package/dist/lib/browser/{chunk-23RVI5FZ.mjs.map → chunk-3UOTYBKX.mjs.map} +3 -3
- package/dist/lib/browser/{chunk-PCEP3KQY.mjs → chunk-4CTAR2NQ.mjs} +22 -21
- package/dist/lib/browser/chunk-4CTAR2NQ.mjs.map +7 -0
- package/dist/lib/browser/{chunk-ULA2UQJ4.mjs → chunk-HSC56GUH.mjs} +6 -62
- package/dist/lib/browser/chunk-HSC56GUH.mjs.map +7 -0
- package/dist/lib/browser/{chunk-NU7WDVGN.mjs → chunk-O7LODPTY.mjs} +2 -2
- package/dist/lib/browser/{chunk-PQXZCNAU.mjs → chunk-PTKYMZWO.mjs} +1 -1
- package/dist/lib/browser/chunk-PTKYMZWO.mjs.map +7 -0
- package/dist/lib/browser/{chunk-UDWHTKB5.mjs → chunk-RZ7IWZW3.mjs} +6 -8
- package/dist/lib/browser/chunk-RZ7IWZW3.mjs.map +7 -0
- package/dist/lib/browser/{identity-created-FYGS6TBH.mjs → identity-created-YSJQAFUZ.mjs} +3 -3
- package/dist/lib/browser/index.mjs +13 -13
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-GPNAQ2SG.mjs → intent-resolver-OQ243G6B.mjs} +11 -9
- package/dist/lib/browser/{intent-resolver-GPNAQ2SG.mjs.map → intent-resolver-OQ243G6B.mjs.map} +3 -3
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-root-4CCSD7TZ.mjs → react-root-5CIQKAFC.mjs} +6 -6
- package/dist/lib/browser/{react-surface-FKMRI3WV.mjs → react-surface-SEBYKQD5.mjs} +9 -8
- package/dist/lib/browser/react-surface-SEBYKQD5.mjs.map +7 -0
- package/dist/lib/browser/{schema-5W3DSY2E.mjs → schema-UOCBWGA4.mjs} +3 -3
- package/dist/lib/browser/schema-tools-6J5ZEDBC.mjs +123 -0
- package/dist/lib/browser/schema-tools-6J5ZEDBC.mjs.map +7 -0
- package/dist/lib/browser/{settings-PHPCXX33.mjs → settings-C4ZEZTJF.mjs} +3 -3
- package/dist/lib/browser/{spaces-ready-K47RR7N2.mjs → spaces-ready-EWHXCOBW.mjs} +5 -5
- package/dist/lib/browser/{state-INJ63O57.mjs → state-BUM7SQUV.mjs} +3 -3
- package/dist/lib/browser/types/index.mjs +2 -10
- package/dist/lib/node/{app-graph-builder-ZIUBXRPA.cjs → app-graph-builder-DFCMCAMT.cjs} +45 -45
- package/dist/lib/node/{app-graph-serializer-VQOGHKXL.cjs → app-graph-serializer-7O35O6SV.cjs} +21 -21
- package/dist/lib/node/{app-graph-serializer-VQOGHKXL.cjs.map → app-graph-serializer-7O35O6SV.cjs.map} +2 -2
- package/dist/lib/node/{chunk-WZR6OAN3.cjs → chunk-6P2DB4QQ.cjs} +4 -4
- package/dist/lib/node/{chunk-WZR6OAN3.cjs.map → chunk-6P2DB4QQ.cjs.map} +2 -2
- package/dist/lib/node/{chunk-U6DYXAR3.cjs → chunk-FOYDT2Z3.cjs} +11 -13
- package/dist/lib/node/chunk-FOYDT2Z3.cjs.map +7 -0
- package/dist/lib/node/{chunk-YZKNRFHU.cjs → chunk-GRM6AGWI.cjs} +10 -10
- package/dist/lib/node/{chunk-OVGKWJOC.cjs → chunk-K3HRT4CT.cjs} +60 -59
- package/dist/lib/node/{chunk-OVGKWJOC.cjs.map → chunk-K3HRT4CT.cjs.map} +3 -3
- package/dist/lib/node/{chunk-QE4GVR6C.cjs → chunk-LRW6ZBDX.cjs} +83 -80
- package/dist/lib/node/chunk-LRW6ZBDX.cjs.map +7 -0
- package/dist/lib/node/{chunk-WAJKBO3J.cjs → chunk-MFVXBJQJ.cjs} +11 -71
- package/dist/lib/node/chunk-MFVXBJQJ.cjs.map +7 -0
- package/dist/lib/node/{identity-created-AXI64BLE.cjs → identity-created-YNPY3SHI.cjs} +7 -7
- package/dist/lib/node/index.cjs +96 -97
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/{intent-resolver-ICHHI6I6.cjs → intent-resolver-G5CNUJCN.cjs} +71 -69
- package/dist/lib/node/{intent-resolver-ICHHI6I6.cjs.map → intent-resolver-G5CNUJCN.cjs.map} +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-root-TCBTUOOJ.cjs → react-root-GUOHMGWR.cjs} +12 -12
- package/dist/lib/node/{react-surface-JSCCIZS5.cjs → react-surface-NDV3KMWF.cjs} +62 -61
- package/dist/lib/node/react-surface-NDV3KMWF.cjs.map +7 -0
- package/dist/lib/node/{schema-YN7WVFRX.cjs → schema-EERAOETL.cjs} +7 -7
- package/dist/lib/node/schema-tools-OZS4OC6X.cjs +146 -0
- package/dist/lib/node/schema-tools-OZS4OC6X.cjs.map +7 -0
- package/dist/lib/node/{settings-5QYFWNH7.cjs → settings-JS6D6VHU.cjs} +8 -8
- package/dist/lib/node/{spaces-ready-FQNAKR7G.cjs → spaces-ready-WNOF2MAQ.cjs} +14 -14
- package/dist/lib/node/{state-57UE3DYE.cjs → state-AIETH3DE.cjs} +8 -8
- package/dist/lib/node/types/index.cjs +13 -21
- package/dist/lib/node/types/index.cjs.map +2 -2
- package/dist/lib/node-esm/{app-graph-builder-TERVM2SL.mjs → app-graph-builder-3VUKZI7U.mjs} +5 -5
- package/dist/lib/node-esm/{app-graph-serializer-GZRSWHEN.mjs → app-graph-serializer-PM4PTZK6.mjs} +7 -7
- package/dist/lib/node-esm/{app-graph-serializer-GZRSWHEN.mjs.map → app-graph-serializer-PM4PTZK6.mjs.map} +2 -2
- package/dist/lib/node-esm/{chunk-HJCEJNW3.mjs → chunk-5YP3LY6A.mjs} +22 -21
- package/dist/lib/node-esm/chunk-5YP3LY6A.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-PGH5L7MV.mjs → chunk-A4XT5SLD.mjs} +9 -8
- package/dist/lib/node-esm/{chunk-PGH5L7MV.mjs.map → chunk-A4XT5SLD.mjs.map} +3 -3
- package/dist/lib/node-esm/{chunk-6RSVVEPS.mjs → chunk-AJ4IZAKT.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-TRNZQEEN.mjs → chunk-B6QDEMFR.mjs} +6 -62
- package/dist/lib/node-esm/chunk-B6QDEMFR.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-ICCM4YRJ.mjs → chunk-MSWEFAPD.mjs} +1 -1
- package/dist/lib/node-esm/chunk-MSWEFAPD.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-2TQ2AJEZ.mjs → chunk-YA6FCGDI.mjs} +6 -8
- package/dist/lib/node-esm/chunk-YA6FCGDI.mjs.map +7 -0
- package/dist/lib/node-esm/{identity-created-3CGEXNPO.mjs → identity-created-SEMQDDNJ.mjs} +3 -3
- package/dist/lib/node-esm/index.mjs +13 -13
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-VR42K5GE.mjs → intent-resolver-YMFEX5XN.mjs} +11 -9
- package/dist/lib/node-esm/{intent-resolver-VR42K5GE.mjs.map → intent-resolver-YMFEX5XN.mjs.map} +3 -3
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-root-THJBSTQS.mjs → react-root-ROENLKSY.mjs} +6 -6
- package/dist/lib/node-esm/{react-surface-Z3BBQ5HX.mjs → react-surface-OLDKADHX.mjs} +9 -8
- package/dist/lib/node-esm/react-surface-OLDKADHX.mjs.map +7 -0
- package/dist/lib/node-esm/{schema-LOR2EVGY.mjs → schema-LOOOBN6J.mjs} +3 -3
- package/dist/lib/node-esm/schema-tools-KJVXGDBO.mjs +125 -0
- package/dist/lib/node-esm/schema-tools-KJVXGDBO.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-H6MXTEQM.mjs → settings-B2AS4EGA.mjs} +3 -3
- package/dist/lib/node-esm/{spaces-ready-HKAQG5SA.mjs → spaces-ready-2SKD2XCY.mjs} +5 -5
- package/dist/lib/node-esm/{state-VYA6OFHD.mjs → state-DWUAP6MH.mjs} +3 -3
- package/dist/lib/node-esm/types/index.mjs +2 -10
- package/dist/types/src/SpacePlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +1 -0
- package/dist/types/src/capabilities/index.d.ts.map +1 -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-tool.test.d.ts +2 -0
- package/dist/types/src/capabilities/schema-tool.test.d.ts.map +1 -0
- package/dist/types/src/capabilities/schema-tools.d.ts +13 -0
- package/dist/types/src/capabilities/schema-tools.d.ts.map +1 -0
- package/dist/types/src/components/BaseObjectSettings.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +2 -5
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +5 -12
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/thread.d.ts +90 -197
- package/dist/types/src/types/thread.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +2 -0
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts.map +1 -1
- package/package.json +42 -39
- package/src/SpacePlugin.tsx +6 -1
- package/src/capabilities/app-graph-serializer.ts +2 -2
- package/src/capabilities/index.ts +1 -0
- package/src/capabilities/intent-resolver.ts +3 -1
- package/src/capabilities/react-surface.tsx +3 -2
- package/src/capabilities/schema-tool.test.ts +45 -0
- package/src/capabilities/schema-tools.ts +124 -0
- package/src/components/BaseObjectSettings.tsx +3 -1
- package/src/components/CreateDialog/CreateObjectDialog.tsx +3 -6
- package/src/components/PopoverRenameObject.tsx +1 -1
- package/src/meta.ts +2 -2
- package/src/translations.ts +2 -4
- package/src/types/thread.ts +2 -56
- package/src/types/types.ts +3 -0
- package/src/util.tsx +1 -2
- package/dist/lib/browser/chunk-PCEP3KQY.mjs.map +0 -7
- package/dist/lib/browser/chunk-PQXZCNAU.mjs.map +0 -7
- package/dist/lib/browser/chunk-UDWHTKB5.mjs.map +0 -7
- package/dist/lib/browser/chunk-ULA2UQJ4.mjs.map +0 -7
- package/dist/lib/browser/react-surface-FKMRI3WV.mjs.map +0 -7
- package/dist/lib/node/chunk-QE4GVR6C.cjs.map +0 -7
- package/dist/lib/node/chunk-U6DYXAR3.cjs.map +0 -7
- package/dist/lib/node/chunk-WAJKBO3J.cjs.map +0 -7
- package/dist/lib/node/react-surface-JSCCIZS5.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-2TQ2AJEZ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-HJCEJNW3.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-ICCM4YRJ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-TRNZQEEN.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-Z3BBQ5HX.mjs.map +0 -7
- /package/dist/lib/browser/{app-graph-builder-MGK5HWPZ.mjs.map → app-graph-builder-VHO33TWC.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-NU7WDVGN.mjs.map → chunk-O7LODPTY.mjs.map} +0 -0
- /package/dist/lib/browser/{identity-created-FYGS6TBH.mjs.map → identity-created-YSJQAFUZ.mjs.map} +0 -0
- /package/dist/lib/browser/{react-root-4CCSD7TZ.mjs.map → react-root-5CIQKAFC.mjs.map} +0 -0
- /package/dist/lib/browser/{schema-5W3DSY2E.mjs.map → schema-UOCBWGA4.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-PHPCXX33.mjs.map → settings-C4ZEZTJF.mjs.map} +0 -0
- /package/dist/lib/browser/{spaces-ready-K47RR7N2.mjs.map → spaces-ready-EWHXCOBW.mjs.map} +0 -0
- /package/dist/lib/browser/{state-INJ63O57.mjs.map → state-BUM7SQUV.mjs.map} +0 -0
- /package/dist/lib/node/{app-graph-builder-ZIUBXRPA.cjs.map → app-graph-builder-DFCMCAMT.cjs.map} +0 -0
- /package/dist/lib/node/{chunk-YZKNRFHU.cjs.map → chunk-GRM6AGWI.cjs.map} +0 -0
- /package/dist/lib/node/{identity-created-AXI64BLE.cjs.map → identity-created-YNPY3SHI.cjs.map} +0 -0
- /package/dist/lib/node/{react-root-TCBTUOOJ.cjs.map → react-root-GUOHMGWR.cjs.map} +0 -0
- /package/dist/lib/node/{schema-YN7WVFRX.cjs.map → schema-EERAOETL.cjs.map} +0 -0
- /package/dist/lib/node/{settings-5QYFWNH7.cjs.map → settings-JS6D6VHU.cjs.map} +0 -0
- /package/dist/lib/node/{spaces-ready-FQNAKR7G.cjs.map → spaces-ready-WNOF2MAQ.cjs.map} +0 -0
- /package/dist/lib/node/{state-57UE3DYE.cjs.map → state-AIETH3DE.cjs.map} +0 -0
- /package/dist/lib/node-esm/{app-graph-builder-TERVM2SL.mjs.map → app-graph-builder-3VUKZI7U.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-6RSVVEPS.mjs.map → chunk-AJ4IZAKT.mjs.map} +0 -0
- /package/dist/lib/node-esm/{identity-created-3CGEXNPO.mjs.map → identity-created-SEMQDDNJ.mjs.map} +0 -0
- /package/dist/lib/node-esm/{react-root-THJBSTQS.mjs.map → react-root-ROENLKSY.mjs.map} +0 -0
- /package/dist/lib/node-esm/{schema-LOR2EVGY.mjs.map → schema-LOOOBN6J.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-H6MXTEQM.mjs.map → settings-B2AS4EGA.mjs.map} +0 -0
- /package/dist/lib/node-esm/{spaces-ready-HKAQG5SA.mjs.map → spaces-ready-2SKD2XCY.mjs.map} +0 -0
- /package/dist/lib/node-esm/{state-VYA6OFHD.mjs.map → state-DWUAP6MH.mjs.map} +0 -0
|
@@ -16,16 +16,16 @@ 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 intent_resolver_G5CNUJCN_exports = {};
|
|
20
|
+
__export(intent_resolver_G5CNUJCN_exports, {
|
|
21
21
|
default: () => intent_resolver_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
-
var
|
|
25
|
-
var
|
|
26
|
-
var
|
|
27
|
-
var
|
|
28
|
-
var
|
|
23
|
+
module.exports = __toCommonJS(intent_resolver_G5CNUJCN_exports);
|
|
24
|
+
var import_chunk_LRW6ZBDX = require("./chunk-LRW6ZBDX.cjs");
|
|
25
|
+
var import_chunk_GRM6AGWI = require("./chunk-GRM6AGWI.cjs");
|
|
26
|
+
var import_chunk_K3HRT4CT = require("./chunk-K3HRT4CT.cjs");
|
|
27
|
+
var import_chunk_MFVXBJQJ = require("./chunk-MFVXBJQJ.cjs");
|
|
28
|
+
var import_chunk_6P2DB4QQ = require("./chunk-6P2DB4QQ.cjs");
|
|
29
29
|
var import_app_framework = require("@dxos/app-framework");
|
|
30
30
|
var import_echo_schema = require("@dxos/echo-schema");
|
|
31
31
|
var import_invariant = require("@dxos/invariant");
|
|
@@ -42,12 +42,12 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
42
42
|
const resolve = (typename) => context.requestCapabilities(import_app_framework.Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};
|
|
43
43
|
return (0, import_app_framework.contributes)(import_app_framework.Capabilities.IntentResolver, [
|
|
44
44
|
(0, import_app_framework.createResolver)({
|
|
45
|
-
intent:
|
|
45
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.OpenCreateSpace,
|
|
46
46
|
resolve: () => ({
|
|
47
47
|
intents: [
|
|
48
48
|
(0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdateDialog, {
|
|
49
49
|
part: "dialog",
|
|
50
|
-
subject:
|
|
50
|
+
subject: import_chunk_LRW6ZBDX.CREATE_SPACE_DIALOG,
|
|
51
51
|
options: {
|
|
52
52
|
blockAlign: "start"
|
|
53
53
|
}
|
|
@@ -56,7 +56,7 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
56
56
|
})
|
|
57
57
|
}),
|
|
58
58
|
(0, import_app_framework.createResolver)({
|
|
59
|
-
intent:
|
|
59
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.Create,
|
|
60
60
|
resolve: async ({ name, edgeReplication }) => {
|
|
61
61
|
const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
|
|
62
62
|
const space = await client.spaces.create({
|
|
@@ -66,11 +66,11 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
66
66
|
await space.internal.setEdgeReplicationPreference(import_metadata.EdgeReplicationSetting.ENABLED);
|
|
67
67
|
}
|
|
68
68
|
await space.waitUntilReady();
|
|
69
|
-
const collection = (0, import_live_object.create)(
|
|
69
|
+
const collection = (0, import_live_object.create)(import_chunk_MFVXBJQJ.CollectionType, {
|
|
70
70
|
objects: [],
|
|
71
71
|
views: {}
|
|
72
72
|
});
|
|
73
|
-
space.properties[
|
|
73
|
+
space.properties[import_chunk_MFVXBJQJ.CollectionType.typename] = (0, import_live_object.makeRef)(collection);
|
|
74
74
|
if (import_migrations.Migrations.versionProperty) {
|
|
75
75
|
space.properties[import_migrations.Migrations.versionProperty] = import_migrations.Migrations.targetVersion;
|
|
76
76
|
}
|
|
@@ -96,12 +96,12 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
96
96
|
}
|
|
97
97
|
}),
|
|
98
98
|
(0, import_app_framework.createResolver)({
|
|
99
|
-
intent:
|
|
99
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.Join,
|
|
100
100
|
resolve: ({ invitationCode }) => ({
|
|
101
101
|
intents: [
|
|
102
102
|
(0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdateDialog, {
|
|
103
103
|
part: "dialog",
|
|
104
|
-
subject:
|
|
104
|
+
subject: import_chunk_LRW6ZBDX.JOIN_DIALOG,
|
|
105
105
|
options: {
|
|
106
106
|
blockAlign: "start",
|
|
107
107
|
props: {
|
|
@@ -113,8 +113,8 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
113
113
|
})
|
|
114
114
|
}),
|
|
115
115
|
(0, import_app_framework.createResolver)({
|
|
116
|
-
intent:
|
|
117
|
-
filter: (data) => !data.space.properties[
|
|
116
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.Share,
|
|
117
|
+
filter: (data) => !data.space.properties[import_chunk_K3HRT4CT.COMPOSER_SPACE_LOCK],
|
|
118
118
|
resolve: ({ space }) => {
|
|
119
119
|
const attention = context.requestCapability(import_plugin_attention.AttentionCapabilities.Attention);
|
|
120
120
|
const current = attention.current.at(-1);
|
|
@@ -123,7 +123,7 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
123
123
|
intents: [
|
|
124
124
|
(0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdateDialog, {
|
|
125
125
|
part: "dialog",
|
|
126
|
-
subject:
|
|
126
|
+
subject: import_chunk_LRW6ZBDX.SPACE_SETTINGS_DIALOG,
|
|
127
127
|
options: {
|
|
128
128
|
blockAlign: "start",
|
|
129
129
|
props: {
|
|
@@ -147,9 +147,9 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
147
147
|
}
|
|
148
148
|
}),
|
|
149
149
|
(0, import_app_framework.createResolver)({
|
|
150
|
-
intent:
|
|
150
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.Lock,
|
|
151
151
|
resolve: ({ space }) => {
|
|
152
|
-
space.properties[
|
|
152
|
+
space.properties[import_chunk_K3HRT4CT.COMPOSER_SPACE_LOCK] = true;
|
|
153
153
|
return {
|
|
154
154
|
intents: [
|
|
155
155
|
...observability ? [
|
|
@@ -165,9 +165,9 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
165
165
|
}
|
|
166
166
|
}),
|
|
167
167
|
(0, import_app_framework.createResolver)({
|
|
168
|
-
intent:
|
|
168
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.Unlock,
|
|
169
169
|
resolve: ({ space }) => {
|
|
170
|
-
space.properties[
|
|
170
|
+
space.properties[import_chunk_K3HRT4CT.COMPOSER_SPACE_LOCK] = false;
|
|
171
171
|
return {
|
|
172
172
|
intents: [
|
|
173
173
|
...observability ? [
|
|
@@ -183,13 +183,13 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
183
183
|
}
|
|
184
184
|
}),
|
|
185
185
|
(0, import_app_framework.createResolver)({
|
|
186
|
-
intent:
|
|
186
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.Rename,
|
|
187
187
|
resolve: ({ caller, space }) => {
|
|
188
188
|
return {
|
|
189
189
|
intents: [
|
|
190
190
|
(0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdatePopover, {
|
|
191
191
|
part: "popover",
|
|
192
|
-
subject:
|
|
192
|
+
subject: import_chunk_LRW6ZBDX.POPOVER_RENAME_SPACE,
|
|
193
193
|
options: {
|
|
194
194
|
anchorId: `dxos.org/ui/${caller}/${space.id}`,
|
|
195
195
|
props: space
|
|
@@ -200,15 +200,15 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
200
200
|
}
|
|
201
201
|
}),
|
|
202
202
|
(0, import_app_framework.createResolver)({
|
|
203
|
-
intent:
|
|
203
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.AddSpace,
|
|
204
204
|
resolve: () => {
|
|
205
205
|
return {
|
|
206
206
|
intents: [
|
|
207
207
|
(0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdatePopover, {
|
|
208
208
|
part: "popover",
|
|
209
|
-
subject:
|
|
209
|
+
subject: import_chunk_LRW6ZBDX.POPOVER_ADD_SPACE,
|
|
210
210
|
options: {
|
|
211
|
-
anchorId:
|
|
211
|
+
anchorId: import_chunk_MFVXBJQJ.SpaceAction.AddSpace._tag,
|
|
212
212
|
side: "right"
|
|
213
213
|
}
|
|
214
214
|
})
|
|
@@ -217,13 +217,13 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
217
217
|
}
|
|
218
218
|
}),
|
|
219
219
|
(0, import_app_framework.createResolver)({
|
|
220
|
-
intent:
|
|
220
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.OpenSettings,
|
|
221
221
|
resolve: ({ space }) => {
|
|
222
222
|
return {
|
|
223
223
|
intents: [
|
|
224
224
|
(0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdateDialog, {
|
|
225
225
|
part: "dialog",
|
|
226
|
-
subject:
|
|
226
|
+
subject: import_chunk_LRW6ZBDX.SPACE_SETTINGS_DIALOG,
|
|
227
227
|
options: {
|
|
228
228
|
blockAlign: "start",
|
|
229
229
|
props: {
|
|
@@ -238,21 +238,21 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
238
238
|
}
|
|
239
239
|
}),
|
|
240
240
|
(0, import_app_framework.createResolver)({
|
|
241
|
-
intent:
|
|
241
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.Open,
|
|
242
242
|
resolve: async ({ space }) => {
|
|
243
243
|
await space.open();
|
|
244
244
|
}
|
|
245
245
|
}),
|
|
246
246
|
(0, import_app_framework.createResolver)({
|
|
247
|
-
intent:
|
|
247
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.Close,
|
|
248
248
|
resolve: async ({ space }) => {
|
|
249
249
|
await space.close();
|
|
250
250
|
}
|
|
251
251
|
}),
|
|
252
252
|
(0, import_app_framework.createResolver)({
|
|
253
|
-
intent:
|
|
253
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.Migrate,
|
|
254
254
|
resolve: async ({ space, version }) => {
|
|
255
|
-
const state = context.requestCapability(
|
|
255
|
+
const state = context.requestCapability(import_chunk_GRM6AGWI.SpaceCapabilities.MutableState);
|
|
256
256
|
if (space.state.get() === import_echo.SpaceState.SPACE_REQUIRES_MIGRATION) {
|
|
257
257
|
state.sdkMigrationRunning[space.id] = true;
|
|
258
258
|
await space.internal.migrate();
|
|
@@ -276,19 +276,19 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
276
276
|
}
|
|
277
277
|
}),
|
|
278
278
|
(0, import_app_framework.createResolver)({
|
|
279
|
-
intent:
|
|
279
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.OpenCreateObject,
|
|
280
280
|
resolve: ({ target, navigable = true }) => {
|
|
281
|
-
const state = context.requestCapability(
|
|
281
|
+
const state = context.requestCapability(import_chunk_GRM6AGWI.SpaceCapabilities.State);
|
|
282
282
|
return {
|
|
283
283
|
intents: [
|
|
284
284
|
(0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdateDialog, {
|
|
285
285
|
part: "dialog",
|
|
286
|
-
subject:
|
|
286
|
+
subject: import_chunk_LRW6ZBDX.CREATE_OBJECT_DIALOG,
|
|
287
287
|
options: {
|
|
288
288
|
blockAlign: "start",
|
|
289
289
|
props: {
|
|
290
290
|
target,
|
|
291
|
-
shouldNavigate: navigable ? (object) => !(object instanceof
|
|
291
|
+
shouldNavigate: navigable ? (object) => !(object instanceof import_chunk_MFVXBJQJ.CollectionType) || state.navigableCollections : () => false
|
|
292
292
|
}
|
|
293
293
|
}
|
|
294
294
|
})
|
|
@@ -297,8 +297,8 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
297
297
|
}
|
|
298
298
|
}),
|
|
299
299
|
(0, import_app_framework.createResolver)({
|
|
300
|
-
intent:
|
|
301
|
-
resolve: async ({ target, object }) => {
|
|
300
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.AddObject,
|
|
301
|
+
resolve: async ({ target, object, hidden }) => {
|
|
302
302
|
const space = (0, import_echo.isSpace)(target) ? target : (0, import_echo.getSpace)(target);
|
|
303
303
|
(0, import_invariant.invariant)(space, "Space not found.", {
|
|
304
304
|
F: __dxlog_file,
|
|
@@ -316,17 +316,17 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
316
316
|
(0, import_app_framework.createIntent)(import_app_framework.LayoutAction.AddToast, {
|
|
317
317
|
part: "toast",
|
|
318
318
|
subject: {
|
|
319
|
-
id: `${
|
|
319
|
+
id: `${import_chunk_6P2DB4QQ.SPACE_PLUGIN}/space-limit`,
|
|
320
320
|
title: [
|
|
321
321
|
"space limit label",
|
|
322
322
|
{
|
|
323
|
-
ns:
|
|
323
|
+
ns: import_chunk_6P2DB4QQ.SPACE_PLUGIN
|
|
324
324
|
}
|
|
325
325
|
],
|
|
326
326
|
description: [
|
|
327
327
|
"space limit description",
|
|
328
328
|
{
|
|
329
|
-
ns:
|
|
329
|
+
ns: import_chunk_6P2DB4QQ.SPACE_PLUGIN
|
|
330
330
|
}
|
|
331
331
|
],
|
|
332
332
|
duration: 5e3,
|
|
@@ -334,13 +334,13 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
334
334
|
actionLabel: [
|
|
335
335
|
"remove deleted objects label",
|
|
336
336
|
{
|
|
337
|
-
ns:
|
|
337
|
+
ns: import_chunk_6P2DB4QQ.SPACE_PLUGIN
|
|
338
338
|
}
|
|
339
339
|
],
|
|
340
340
|
actionAlt: [
|
|
341
341
|
"remove deleted objects alt",
|
|
342
342
|
{
|
|
343
|
-
ns:
|
|
343
|
+
ns: import_chunk_6P2DB4QQ.SPACE_PLUGIN
|
|
344
344
|
}
|
|
345
345
|
],
|
|
346
346
|
closeLabel: [
|
|
@@ -363,20 +363,22 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
363
363
|
]
|
|
364
364
|
};
|
|
365
365
|
}
|
|
366
|
-
if (target instanceof
|
|
366
|
+
if (target instanceof import_chunk_MFVXBJQJ.CollectionType) {
|
|
367
367
|
target.objects.push((0, import_live_object.makeRef)(object));
|
|
368
|
+
} else if ((0, import_echo.isSpace)(target) && hidden) {
|
|
369
|
+
space.db.add(object);
|
|
368
370
|
} else if ((0, import_echo.isSpace)(target)) {
|
|
369
|
-
const collection = space.properties[
|
|
370
|
-
if (collection instanceof
|
|
371
|
+
const collection = space.properties[import_chunk_MFVXBJQJ.CollectionType.typename]?.target;
|
|
372
|
+
if (collection instanceof import_chunk_MFVXBJQJ.CollectionType) {
|
|
371
373
|
collection.objects.push((0, import_live_object.makeRef)(object));
|
|
372
374
|
} else {
|
|
373
|
-
const collection2 = (0, import_live_object.create)(
|
|
375
|
+
const collection2 = (0, import_live_object.create)(import_chunk_MFVXBJQJ.CollectionType, {
|
|
374
376
|
objects: [
|
|
375
377
|
(0, import_live_object.makeRef)(object)
|
|
376
378
|
],
|
|
377
379
|
views: {}
|
|
378
380
|
});
|
|
379
|
-
space.properties[
|
|
381
|
+
space.properties[import_chunk_MFVXBJQJ.CollectionType.typename] = (0, import_live_object.makeRef)(collection2);
|
|
380
382
|
}
|
|
381
383
|
}
|
|
382
384
|
return {
|
|
@@ -403,13 +405,13 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
403
405
|
}
|
|
404
406
|
}),
|
|
405
407
|
(0, import_app_framework.createResolver)({
|
|
406
|
-
intent:
|
|
408
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.RemoveObjects,
|
|
407
409
|
resolve: async ({ objects, target, deletionData }, undo) => {
|
|
408
410
|
const layout = context.requestCapability(import_app_framework.Capabilities.Layout);
|
|
409
411
|
const space = (0, import_echo.getSpace)(objects[0]);
|
|
410
412
|
(0, import_invariant.invariant)(space && objects.every((obj) => (0, import_echo.isEchoObject)(obj) && (0, import_echo.getSpace)(obj) === space), void 0, {
|
|
411
413
|
F: __dxlog_file,
|
|
412
|
-
L:
|
|
414
|
+
L: 402,
|
|
413
415
|
S: void 0,
|
|
414
416
|
A: [
|
|
415
417
|
"space && objects.every((obj) => isEchoObject(obj) && getSpace(obj) === space)",
|
|
@@ -418,19 +420,19 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
418
420
|
});
|
|
419
421
|
const openObjectIds = new Set(layout.active);
|
|
420
422
|
if (!undo) {
|
|
421
|
-
const parentCollection = target ?? space.properties[
|
|
422
|
-
const nestedObjectsList = await Promise.all(objects.map((obj) => (0,
|
|
423
|
+
const parentCollection = target ?? space.properties[import_chunk_MFVXBJQJ.CollectionType.typename]?.target;
|
|
424
|
+
const nestedObjectsList = await Promise.all(objects.map((obj) => (0, import_chunk_K3HRT4CT.getNestedObjects)(obj, resolve)));
|
|
423
425
|
const deletionData2 = {
|
|
424
426
|
objects,
|
|
425
427
|
parentCollection,
|
|
426
|
-
indices: objects.map((obj) => parentCollection instanceof
|
|
428
|
+
indices: objects.map((obj) => parentCollection instanceof import_chunk_MFVXBJQJ.CollectionType ? parentCollection.objects.findIndex((object) => object.target === obj) : -1),
|
|
427
429
|
nestedObjectsList,
|
|
428
430
|
wasActive: objects.flatMap((obj, i) => [
|
|
429
431
|
obj,
|
|
430
432
|
...nestedObjectsList[i]
|
|
431
433
|
]).map((obj) => (0, import_echo.fullyQualifiedId)(obj)).filter((id) => openObjectIds.has(id))
|
|
432
434
|
};
|
|
433
|
-
if (deletionData2.parentCollection instanceof
|
|
435
|
+
if (deletionData2.parentCollection instanceof import_chunk_MFVXBJQJ.CollectionType) {
|
|
434
436
|
[
|
|
435
437
|
...deletionData2.indices
|
|
436
438
|
].sort((a, b) => b - a).forEach((index) => {
|
|
@@ -443,14 +445,14 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
443
445
|
space.db.remove(obj);
|
|
444
446
|
});
|
|
445
447
|
objects.forEach((obj) => space.db.remove(obj));
|
|
446
|
-
const undoMessageKey = objects.some((obj) => obj instanceof
|
|
448
|
+
const undoMessageKey = objects.some((obj) => obj instanceof import_chunk_MFVXBJQJ.CollectionType) ? "collection deleted label" : objects.length > 1 ? "objects deleted label" : "object deleted label";
|
|
447
449
|
return {
|
|
448
450
|
undoable: {
|
|
449
451
|
// TODO(ZaymonFC): Pluralize if more than one object.
|
|
450
452
|
message: [
|
|
451
453
|
undoMessageKey,
|
|
452
454
|
{
|
|
453
|
-
ns:
|
|
455
|
+
ns: import_chunk_6P2DB4QQ.SPACE_PLUGIN
|
|
454
456
|
}
|
|
455
457
|
],
|
|
456
458
|
data: {
|
|
@@ -468,7 +470,7 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
468
470
|
] : void 0
|
|
469
471
|
};
|
|
470
472
|
} else {
|
|
471
|
-
if (deletionData?.objects?.length && deletionData.objects.every(import_echo.isEchoObject) && deletionData.parentCollection instanceof
|
|
473
|
+
if (deletionData?.objects?.length && deletionData.objects.every(import_echo.isEchoObject) && deletionData.parentCollection instanceof import_chunk_MFVXBJQJ.CollectionType) {
|
|
472
474
|
const restoredObjects = deletionData.objects.map((obj) => space.db.add(obj));
|
|
473
475
|
deletionData.nestedObjectsList.flat().forEach((obj) => {
|
|
474
476
|
space.db.add(obj);
|
|
@@ -491,12 +493,12 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
491
493
|
}
|
|
492
494
|
}),
|
|
493
495
|
(0, import_app_framework.createResolver)({
|
|
494
|
-
intent:
|
|
496
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.RenameObject,
|
|
495
497
|
resolve: async ({ object, caller }) => ({
|
|
496
498
|
intents: [
|
|
497
499
|
(0, import_app_framework.createIntent)(import_app_framework.LayoutAction.UpdatePopover, {
|
|
498
500
|
part: "popover",
|
|
499
|
-
subject:
|
|
501
|
+
subject: import_chunk_LRW6ZBDX.POPOVER_RENAME_OBJECT,
|
|
500
502
|
options: {
|
|
501
503
|
anchorId: `dxos.org/ui/${caller}/${(0, import_echo.fullyQualifiedId)(object)}`,
|
|
502
504
|
props: object
|
|
@@ -506,22 +508,22 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
506
508
|
})
|
|
507
509
|
}),
|
|
508
510
|
(0, import_app_framework.createResolver)({
|
|
509
|
-
intent:
|
|
511
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.DuplicateObject,
|
|
510
512
|
resolve: async ({ object, target }) => {
|
|
511
513
|
const space = (0, import_echo.isSpace)(target) ? target : (0, import_echo.getSpace)(target);
|
|
512
514
|
(0, import_invariant.invariant)(space, "Space not found.", {
|
|
513
515
|
F: __dxlog_file,
|
|
514
|
-
L:
|
|
516
|
+
L: 516,
|
|
515
517
|
S: void 0,
|
|
516
518
|
A: [
|
|
517
519
|
"space",
|
|
518
520
|
"'Space not found.'"
|
|
519
521
|
]
|
|
520
522
|
});
|
|
521
|
-
const newObject = await (0,
|
|
523
|
+
const newObject = await (0, import_chunk_K3HRT4CT.cloneObject)(object, resolve, space);
|
|
522
524
|
return {
|
|
523
525
|
intents: [
|
|
524
|
-
(0, import_app_framework.createIntent)(
|
|
526
|
+
(0, import_app_framework.createIntent)(import_chunk_MFVXBJQJ.SpaceAction.AddObject, {
|
|
525
527
|
object: newObject,
|
|
526
528
|
target
|
|
527
529
|
})
|
|
@@ -530,17 +532,17 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
530
532
|
}
|
|
531
533
|
}),
|
|
532
534
|
(0, import_app_framework.createResolver)({
|
|
533
|
-
intent:
|
|
535
|
+
intent: import_chunk_MFVXBJQJ.SpaceAction.WaitForObject,
|
|
534
536
|
resolve: async ({ id }) => {
|
|
535
|
-
const state = context.requestCapability(
|
|
537
|
+
const state = context.requestCapability(import_chunk_GRM6AGWI.SpaceCapabilities.MutableState);
|
|
536
538
|
state.awaiting = id;
|
|
537
539
|
}
|
|
538
540
|
}),
|
|
539
541
|
(0, import_app_framework.createResolver)({
|
|
540
|
-
intent:
|
|
542
|
+
intent: import_chunk_MFVXBJQJ.CollectionAction.Create,
|
|
541
543
|
resolve: async ({ name }) => ({
|
|
542
544
|
data: {
|
|
543
|
-
object: (0, import_live_object.create)(
|
|
545
|
+
object: (0, import_live_object.create)(import_chunk_MFVXBJQJ.CollectionType, {
|
|
544
546
|
name,
|
|
545
547
|
objects: [],
|
|
546
548
|
views: {}
|
|
@@ -550,4 +552,4 @@ var intent_resolver_default = ({ createInvitationUrl, context, observability })
|
|
|
550
552
|
})
|
|
551
553
|
]);
|
|
552
554
|
};
|
|
553
|
-
//# sourceMappingURL=intent-resolver-
|
|
555
|
+
//# sourceMappingURL=intent-resolver-G5CNUJCN.cjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/capabilities/intent-resolver.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n Capabilities,\n contributes,\n createIntent,\n createResolver,\n LayoutAction,\n type PluginsContext,\n} from '@dxos/app-framework';\nimport { type Expando, getTypename, type HasId } from '@dxos/echo-schema';\nimport { invariant } from '@dxos/invariant';\nimport { create, makeRef, type ReactiveObject } from '@dxos/live-object';\nimport { Migrations } from '@dxos/migrations';\nimport { AttentionCapabilities } from '@dxos/plugin-attention';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { ObservabilityAction } from '@dxos/plugin-observability/types';\nimport { EdgeReplicationSetting } from '@dxos/protocols/proto/dxos/echo/metadata';\nimport { isSpace, getSpace, SpaceState, type Space, fullyQualifiedId, isEchoObject } from '@dxos/react-client/echo';\n\nimport { SpaceCapabilities } from './capabilities';\nimport {\n CREATE_SPACE_DIALOG,\n JOIN_DIALOG,\n SPACE_SETTINGS_DIALOG,\n type SpaceSettingsDialogProps,\n type JoinDialogProps,\n POPOVER_RENAME_SPACE,\n CREATE_OBJECT_DIALOG,\n type CreateObjectDialogProps,\n POPOVER_RENAME_OBJECT,\n POPOVER_ADD_SPACE,\n} from '../components';\nimport { SPACE_PLUGIN } from '../meta';\nimport { CollectionAction, CollectionType, SpaceAction } from '../types';\nimport { cloneObject, COMPOSER_SPACE_LOCK, getNestedObjects } from '../util';\n\n// TODO(wittjosiah): Remove.\nconst SPACE_MAX_OBJECTS = 500;\n\ntype IntentResolverOptions = {\n createInvitationUrl: (invitationCode: string) => string;\n context: PluginsContext;\n observability?: boolean;\n};\n\nexport default ({ createInvitationUrl, context, observability }: IntentResolverOptions) => {\n const resolve = (typename: string) =>\n context.requestCapabilities(Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};\n\n return contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: SpaceAction.OpenCreateSpace,\n resolve: () => ({\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: CREATE_SPACE_DIALOG,\n options: {\n blockAlign: 'start',\n },\n }),\n ],\n }),\n }),\n createResolver({\n intent: SpaceAction.Create,\n resolve: async ({ name, edgeReplication }) => {\n const client = context.requestCapability(ClientCapabilities.Client);\n const space = await client.spaces.create({ name });\n if (edgeReplication) {\n await space.internal.setEdgeReplicationPreference(EdgeReplicationSetting.ENABLED);\n }\n await space.waitUntilReady();\n const collection = create(CollectionType, { objects: [], views: {} });\n space.properties[CollectionType.typename] = makeRef(collection);\n\n if (Migrations.versionProperty) {\n space.properties[Migrations.versionProperty] = Migrations.targetVersion;\n }\n\n return {\n data: {\n id: space.id,\n subject: [space.id],\n space,\n },\n intents: [\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.create',\n properties: {\n spaceId: space.id,\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.Join,\n resolve: ({ invitationCode }) => ({\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: JOIN_DIALOG,\n options: {\n blockAlign: 'start',\n props: {\n initialInvitationCode: invitationCode,\n } satisfies Partial<JoinDialogProps>,\n },\n }),\n ],\n }),\n }),\n createResolver({\n intent: SpaceAction.Share,\n filter: (data): data is { space: Space } => !data.space.properties[COMPOSER_SPACE_LOCK],\n resolve: ({ space }) => {\n const attention = context.requestCapability(AttentionCapabilities.Attention);\n const current = attention.current.at(-1);\n const target = current?.startsWith(space.id) ? current : undefined;\n\n return {\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: SPACE_SETTINGS_DIALOG,\n options: {\n blockAlign: 'start',\n props: {\n space,\n target,\n initialTab: 'members',\n createInvitationUrl,\n } satisfies Partial<SpaceSettingsDialogProps>,\n },\n }),\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.share',\n properties: {\n space: space.id,\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.Lock,\n resolve: ({ space }) => {\n space.properties[COMPOSER_SPACE_LOCK] = true;\n return {\n intents: [\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.lock',\n properties: {\n spaceId: space.id,\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.Unlock,\n resolve: ({ space }) => {\n space.properties[COMPOSER_SPACE_LOCK] = false;\n return {\n intents: [\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.unlock',\n properties: {\n spaceId: space.id,\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.Rename,\n resolve: ({ caller, space }) => {\n return {\n intents: [\n createIntent(LayoutAction.UpdatePopover, {\n part: 'popover',\n subject: POPOVER_RENAME_SPACE,\n options: {\n anchorId: `dxos.org/ui/${caller}/${space.id}`,\n props: space,\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.AddSpace,\n resolve: () => {\n return {\n intents: [\n createIntent(LayoutAction.UpdatePopover, {\n part: 'popover',\n subject: POPOVER_ADD_SPACE,\n options: {\n anchorId: SpaceAction.AddSpace._tag,\n side: 'right',\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.OpenSettings,\n resolve: ({ space }) => {\n return {\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: SPACE_SETTINGS_DIALOG,\n options: {\n blockAlign: 'start',\n props: {\n space,\n initialTab: 'settings',\n createInvitationUrl,\n } satisfies Partial<SpaceSettingsDialogProps>,\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.Open,\n resolve: async ({ space }) => {\n await space.open();\n },\n }),\n createResolver({\n intent: SpaceAction.Close,\n resolve: async ({ space }) => {\n await space.close();\n },\n }),\n createResolver({\n intent: SpaceAction.Migrate,\n resolve: async ({ space, version }) => {\n const state = context.requestCapability(SpaceCapabilities.MutableState);\n\n if (space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION) {\n state.sdkMigrationRunning[space.id] = true;\n await space.internal.migrate();\n state.sdkMigrationRunning[space.id] = false;\n }\n const result = await Migrations.migrate(space, version);\n return {\n data: result,\n intents: [\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.migrate',\n properties: {\n spaceId: space.id,\n version,\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.OpenCreateObject,\n resolve: ({ target, navigable = true }) => {\n const state = context.requestCapability(SpaceCapabilities.State);\n\n return {\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: CREATE_OBJECT_DIALOG,\n options: {\n blockAlign: 'start',\n props: {\n target,\n shouldNavigate: navigable\n ? (object: ReactiveObject<any>) => !(object instanceof CollectionType) || state.navigableCollections\n : () => false,\n } satisfies Partial<CreateObjectDialogProps>,\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.AddObject,\n resolve: async ({ target, object }) => {\n const space = isSpace(target) ? target : getSpace(target);\n invariant(space, 'Space not found.');\n\n if (space.db.coreDatabase.getAllObjectIds().length >= SPACE_MAX_OBJECTS) {\n return {\n error: new Error('Space limit reached.'),\n intents: [\n createIntent(LayoutAction.AddToast, {\n part: 'toast',\n subject: {\n id: `${SPACE_PLUGIN}/space-limit`,\n title: ['space limit label', { ns: SPACE_PLUGIN }],\n description: ['space limit description', { ns: SPACE_PLUGIN }],\n duration: 5_000,\n icon: 'ph--warning--regular',\n actionLabel: ['remove deleted objects label', { ns: SPACE_PLUGIN }],\n actionAlt: ['remove deleted objects alt', { ns: SPACE_PLUGIN }],\n closeLabel: ['close label', { ns: 'os' }],\n onAction: () => space.db.coreDatabase.unlinkDeletedObjects(),\n },\n }),\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.limit',\n properties: {\n spaceId: space.id,\n },\n }),\n ]\n : []),\n ],\n };\n }\n\n if (target instanceof CollectionType) {\n target.objects.push(makeRef(object as HasId));\n } else if (isSpace(target)) {\n const collection = space.properties[CollectionType.typename]?.target;\n if (collection instanceof CollectionType) {\n collection.objects.push(makeRef(object as HasId));\n } else {\n // TODO(wittjosiah): Can't add non-echo objects by including in a collection because of types.\n const collection = create(CollectionType, { objects: [makeRef(object as HasId)], views: {} });\n space.properties[CollectionType.typename] = makeRef(collection);\n }\n }\n\n return {\n data: {\n id: fullyQualifiedId(object),\n subject: [fullyQualifiedId(object)],\n object: object as HasId,\n },\n intents: [\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.object.add',\n properties: {\n spaceId: space.id,\n objectId: object.id,\n typename: getTypename(object),\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.RemoveObjects,\n resolve: async ({ objects, target, deletionData }, undo) => {\n const layout = context.requestCapability(Capabilities.Layout);\n\n // All objects must be a member of the same space.\n const space = getSpace(objects[0]);\n invariant(space && objects.every((obj) => isEchoObject(obj) && getSpace(obj) === space));\n const openObjectIds = new Set<string>(layout.active);\n\n if (!undo) {\n const parentCollection: CollectionType = target ?? space.properties[CollectionType.typename]?.target;\n const nestedObjectsList = await Promise.all(objects.map((obj) => getNestedObjects(obj, resolve)));\n\n const deletionData = {\n objects,\n parentCollection,\n indices: objects.map((obj) =>\n parentCollection instanceof CollectionType\n ? parentCollection.objects.findIndex((object) => object.target === obj)\n : -1,\n ),\n nestedObjectsList,\n wasActive: objects\n .flatMap((obj, i) => [obj, ...nestedObjectsList[i]])\n .map((obj) => fullyQualifiedId(obj))\n .filter((id) => openObjectIds.has(id)),\n } satisfies SpaceAction.DeletionData;\n\n if (deletionData.parentCollection instanceof CollectionType) {\n [...deletionData.indices]\n .sort((a, b) => b - a)\n .forEach((index: number) => {\n if (index !== -1) {\n deletionData.parentCollection.objects.splice(index, 1);\n }\n });\n }\n\n deletionData.nestedObjectsList.flat().forEach((obj) => {\n space.db.remove(obj);\n });\n objects.forEach((obj) => space.db.remove(obj));\n\n const undoMessageKey = objects.some((obj) => obj instanceof CollectionType)\n ? 'collection deleted label'\n : objects.length > 1\n ? 'objects deleted label'\n : 'object deleted label';\n\n return {\n undoable: {\n // TODO(ZaymonFC): Pluralize if more than one object.\n message: [undoMessageKey, { ns: SPACE_PLUGIN }],\n data: { deletionData },\n },\n intents:\n deletionData.wasActive.length > 0\n ? [\n createIntent(LayoutAction.Close, {\n part: 'main',\n subject: deletionData.wasActive,\n options: { state: false },\n }),\n ]\n : undefined,\n };\n } else {\n if (\n deletionData?.objects?.length &&\n deletionData.objects.every(isEchoObject) &&\n deletionData.parentCollection instanceof CollectionType\n ) {\n // Restore the object to the space.\n const restoredObjects = deletionData.objects.map((obj: Expando) => space.db.add(obj));\n\n // Restore nested objects to the space.\n deletionData.nestedObjectsList.flat().forEach((obj: Expando) => {\n space.db.add(obj);\n });\n\n deletionData.indices.forEach((index: number, i: number) => {\n if (index !== -1) {\n deletionData.parentCollection.objects.splice(index, 0, makeRef(restoredObjects[i] as Expando));\n }\n });\n\n return {\n intents:\n deletionData.wasActive.length > 0\n ? [\n createIntent(LayoutAction.Open, {\n part: 'main',\n subject: deletionData.wasActive,\n }),\n ]\n : undefined,\n };\n }\n }\n },\n }),\n createResolver({\n intent: SpaceAction.RenameObject,\n resolve: async ({ object, caller }) => ({\n intents: [\n createIntent(LayoutAction.UpdatePopover, {\n part: 'popover',\n subject: POPOVER_RENAME_OBJECT,\n options: {\n anchorId: `dxos.org/ui/${caller}/${fullyQualifiedId(object)}`,\n props: object,\n },\n }),\n ],\n }),\n }),\n createResolver({\n intent: SpaceAction.DuplicateObject,\n resolve: async ({ object, target }) => {\n const space = isSpace(target) ? target : getSpace(target);\n invariant(space, 'Space not found.');\n\n const newObject = await cloneObject(object, resolve, space);\n return {\n intents: [createIntent(SpaceAction.AddObject, { object: newObject, target })],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.WaitForObject,\n resolve: async ({ id }) => {\n const state = context.requestCapability(SpaceCapabilities.MutableState);\n state.awaiting = id;\n },\n }),\n createResolver({\n intent: CollectionAction.Create,\n resolve: async ({ name }) => ({\n data: { object: create(CollectionType, { name, objects: [], views: {} }) },\n }),\n }),\n ]);\n};\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAOO;AACP,yBAAsD;AACtD,uBAA0B;AAC1B,yBAAqD;AACrD,wBAA2B;AAC3B,8BAAsC;AACtC,2BAAmC;AACnC,mBAAoC;AACpC,sBAAuC;AACvC,kBAA0F;;AAoB1F,IAAMA,oBAAoB;AAQ1B,IAAA,0BAAe,CAAC,EAAEC,qBAAqBC,SAASC,cAAa,MAAyB;AACpF,QAAMC,UAAU,CAACC,aACfH,QAAQI,oBAAoBC,kCAAaC,QAAQ,EAAEC,KAAK,CAAC,EAAEC,GAAE,MAAOA,OAAOL,QAAAA,GAAWM,YAAY,CAAC;AAErG,aAAOC,kCAAYL,kCAAaM,gBAAgB;QAC9CC,qCAAe;MACbC,QAAQC,kCAAYC;MACpBb,SAAS,OAAO;QACdc,SAAS;cACPC,mCAAaC,kCAAaC,cAAc;YACtCC,MAAM;YACNC,SAASC;YACTC,SAAS;cACPC,YAAY;YACd;UACF,CAAA;;MAEJ;IACF,CAAA;QACAZ,qCAAe;MACbC,QAAQC,kCAAYW;MACpBvB,SAAS,OAAO,EAAEwB,MAAMC,gBAAe,MAAE;AACvC,cAAMC,SAAS5B,QAAQ6B,kBAAkBC,wCAAmBC,MAAM;AAClE,cAAMC,QAAQ,MAAMJ,OAAOK,OAAOC,OAAO;UAAER;QAAK,CAAA;AAChD,YAAIC,iBAAiB;AACnB,gBAAMK,MAAMG,SAASC,6BAA6BC,uCAAuBC,OAAO;QAClF;AACA,cAAMN,MAAMO,eAAc;AAC1B,cAAMC,iBAAaN,2BAAOO,sCAAgB;UAAEC,SAAS,CAAA;UAAIC,OAAO,CAAC;QAAE,CAAA;AACnEX,cAAMY,WAAWH,qCAAetC,QAAQ,QAAI0C,4BAAQL,UAAAA;AAEpD,YAAIM,6BAAWC,iBAAiB;AAC9Bf,gBAAMY,WAAWE,6BAAWC,eAAe,IAAID,6BAAWE;QAC5D;AAEA,eAAO;UACLC,MAAM;YACJzC,IAAIwB,MAAMxB;YACVa,SAAS;cAACW,MAAMxB;;YAChBwB;UACF;UACAhB,SAAS;eACHf,gBACA;kBACEgB,mCAAaiC,iCAAoBC,WAAW;gBAC1CzB,MAAM;gBACNkB,YAAY;kBACVQ,SAASpB,MAAMxB;gBACjB;cACF,CAAA;gBAEF,CAAA;;QAER;MACF;IACF,CAAA;QACAI,qCAAe;MACbC,QAAQC,kCAAYuC;MACpBnD,SAAS,CAAC,EAAEoD,eAAc,OAAQ;QAChCtC,SAAS;cACPC,mCAAaC,kCAAaC,cAAc;YACtCC,MAAM;YACNC,SAASkC;YACThC,SAAS;cACPC,YAAY;cACZgC,OAAO;gBACLC,uBAAuBH;cACzB;YACF;UACF,CAAA;;MAEJ;IACF,CAAA;QACA1C,qCAAe;MACbC,QAAQC,kCAAY4C;MACpBC,QAAQ,CAACV,SAAmC,CAACA,KAAKjB,MAAMY,WAAWgB,yCAAAA;MACnE1D,SAAS,CAAC,EAAE8B,MAAK,MAAE;AACjB,cAAM6B,YAAY7D,QAAQ6B,kBAAkBiC,8CAAsBC,SAAS;AAC3E,cAAMC,UAAUH,UAAUG,QAAQC,GAAG,EAAC;AACtC,cAAMC,SAASF,SAASG,WAAWnC,MAAMxB,EAAE,IAAIwD,UAAUI;AAEzD,eAAO;UACLpD,SAAS;gBACPC,mCAAaC,kCAAaC,cAAc;cACtCC,MAAM;cACNC,SAASgD;cACT9C,SAAS;gBACPC,YAAY;gBACZgC,OAAO;kBACLxB;kBACAkC;kBACAI,YAAY;kBACZvE;gBACF;cACF;YACF,CAAA;eACIE,gBACA;kBACEgB,mCAAaiC,iCAAoBC,WAAW;gBAC1CzB,MAAM;gBACNkB,YAAY;kBACVZ,OAAOA,MAAMxB;gBACf;cACF,CAAA;gBAEF,CAAA;;QAER;MACF;IACF,CAAA;QACAI,qCAAe;MACbC,QAAQC,kCAAYyD;MACpBrE,SAAS,CAAC,EAAE8B,MAAK,MAAE;AACjBA,cAAMY,WAAWgB,yCAAAA,IAAuB;AACxC,eAAO;UACL5C,SAAS;eACHf,gBACA;kBACEgB,mCAAaiC,iCAAoBC,WAAW;gBAC1CzB,MAAM;gBACNkB,YAAY;kBACVQ,SAASpB,MAAMxB;gBACjB;cACF,CAAA;gBAEF,CAAA;;QAER;MACF;IACF,CAAA;QACAI,qCAAe;MACbC,QAAQC,kCAAY0D;MACpBtE,SAAS,CAAC,EAAE8B,MAAK,MAAE;AACjBA,cAAMY,WAAWgB,yCAAAA,IAAuB;AACxC,eAAO;UACL5C,SAAS;eACHf,gBACA;kBACEgB,mCAAaiC,iCAAoBC,WAAW;gBAC1CzB,MAAM;gBACNkB,YAAY;kBACVQ,SAASpB,MAAMxB;gBACjB;cACF,CAAA;gBAEF,CAAA;;QAER;MACF;IACF,CAAA;QACAI,qCAAe;MACbC,QAAQC,kCAAY2D;MACpBvE,SAAS,CAAC,EAAEwE,QAAQ1C,MAAK,MAAE;AACzB,eAAO;UACLhB,SAAS;gBACPC,mCAAaC,kCAAayD,eAAe;cACvCvD,MAAM;cACNC,SAASuD;cACTrD,SAAS;gBACPsD,UAAU,eAAeH,MAAAA,IAAU1C,MAAMxB,EAAE;gBAC3CgD,OAAOxB;cACT;YACF,CAAA;;QAEJ;MACF;IACF,CAAA;QACApB,qCAAe;MACbC,QAAQC,kCAAYgE;MACpB5E,SAAS,MAAA;AACP,eAAO;UACLc,SAAS;gBACPC,mCAAaC,kCAAayD,eAAe;cACvCvD,MAAM;cACNC,SAAS0D;cACTxD,SAAS;gBACPsD,UAAU/D,kCAAYgE,SAASE;gBAC/BC,MAAM;cACR;YACF,CAAA;;QAEJ;MACF;IACF,CAAA;QACArE,qCAAe;MACbC,QAAQC,kCAAYoE;MACpBhF,SAAS,CAAC,EAAE8B,MAAK,MAAE;AACjB,eAAO;UACLhB,SAAS;gBACPC,mCAAaC,kCAAaC,cAAc;cACtCC,MAAM;cACNC,SAASgD;cACT9C,SAAS;gBACPC,YAAY;gBACZgC,OAAO;kBACLxB;kBACAsC,YAAY;kBACZvE;gBACF;cACF;YACF,CAAA;;QAEJ;MACF;IACF,CAAA;QACAa,qCAAe;MACbC,QAAQC,kCAAYqE;MACpBjF,SAAS,OAAO,EAAE8B,MAAK,MAAE;AACvB,cAAMA,MAAMoD,KAAI;MAClB;IACF,CAAA;QACAxE,qCAAe;MACbC,QAAQC,kCAAYuE;MACpBnF,SAAS,OAAO,EAAE8B,MAAK,MAAE;AACvB,cAAMA,MAAMsD,MAAK;MACnB;IACF,CAAA;QACA1E,qCAAe;MACbC,QAAQC,kCAAYyE;MACpBrF,SAAS,OAAO,EAAE8B,OAAOwD,QAAO,MAAE;AAChC,cAAMC,QAAQzF,QAAQ6B,kBAAkB6D,wCAAkBC,YAAY;AAEtE,YAAI3D,MAAMyD,MAAMG,IAAG,MAAOC,uBAAWC,0BAA0B;AAC7DL,gBAAMM,oBAAoB/D,MAAMxB,EAAE,IAAI;AACtC,gBAAMwB,MAAMG,SAAS6D,QAAO;AAC5BP,gBAAMM,oBAAoB/D,MAAMxB,EAAE,IAAI;QACxC;AACA,cAAMyF,SAAS,MAAMnD,6BAAWkD,QAAQhE,OAAOwD,OAAAA;AAC/C,eAAO;UACLvC,MAAMgD;UACNjF,SAAS;eACHf,gBACA;kBACEgB,mCAAaiC,iCAAoBC,WAAW;gBAC1CzB,MAAM;gBACNkB,YAAY;kBACVQ,SAASpB,MAAMxB;kBACfgF;gBACF;cACF,CAAA;gBAEF,CAAA;;QAER;MACF;IACF,CAAA;QACA5E,qCAAe;MACbC,QAAQC,kCAAYoF;MACpBhG,SAAS,CAAC,EAAEgE,QAAQiC,YAAY,KAAI,MAAE;AACpC,cAAMV,QAAQzF,QAAQ6B,kBAAkB6D,wCAAkBU,KAAK;AAE/D,eAAO;UACLpF,SAAS;gBACPC,mCAAaC,kCAAaC,cAAc;cACtCC,MAAM;cACNC,SAASgF;cACT9E,SAAS;gBACPC,YAAY;gBACZgC,OAAO;kBACLU;kBACAoC,gBAAgBH,YACZ,CAACI,WAAgC,EAAEA,kBAAkB9D,yCAAmBgD,MAAMe,uBAC9E,MAAM;gBACZ;cACF;YACF,CAAA;;QAEJ;MACF;IACF,CAAA;QACA5F,qCAAe;MACbC,QAAQC,kCAAY2F;MACpBvG,SAAS,OAAO,EAAEgE,QAAQqC,OAAM,MAAE;
|
|
6
|
-
"names": ["SPACE_MAX_OBJECTS", "createInvitationUrl", "context", "observability", "resolve", "typename", "requestCapabilities", "Capabilities", "Metadata", "find", "id", "metadata", "contributes", "IntentResolver", "createResolver", "intent", "SpaceAction", "OpenCreateSpace", "intents", "createIntent", "LayoutAction", "UpdateDialog", "part", "subject", "CREATE_SPACE_DIALOG", "options", "blockAlign", "Create", "name", "edgeReplication", "client", "requestCapability", "ClientCapabilities", "Client", "space", "spaces", "create", "internal", "setEdgeReplicationPreference", "EdgeReplicationSetting", "ENABLED", "waitUntilReady", "collection", "CollectionType", "objects", "views", "properties", "makeRef", "Migrations", "versionProperty", "targetVersion", "data", "ObservabilityAction", "SendEvent", "spaceId", "Join", "invitationCode", "JOIN_DIALOG", "props", "initialInvitationCode", "Share", "filter", "COMPOSER_SPACE_LOCK", "attention", "AttentionCapabilities", "Attention", "current", "at", "target", "startsWith", "undefined", "SPACE_SETTINGS_DIALOG", "initialTab", "Lock", "Unlock", "Rename", "caller", "UpdatePopover", "POPOVER_RENAME_SPACE", "anchorId", "AddSpace", "POPOVER_ADD_SPACE", "_tag", "side", "OpenSettings", "Open", "open", "Close", "close", "Migrate", "version", "state", "SpaceCapabilities", "MutableState", "get", "SpaceState", "SPACE_REQUIRES_MIGRATION", "sdkMigrationRunning", "migrate", "result", "OpenCreateObject", "navigable", "State", "CREATE_OBJECT_DIALOG", "shouldNavigate", "object", "navigableCollections", "AddObject", "isSpace", "getSpace", "invariant", "db", "coreDatabase", "getAllObjectIds", "length", "error", "Error", "AddToast", "SPACE_PLUGIN", "title", "ns", "description", "duration", "icon", "actionLabel", "actionAlt", "closeLabel", "onAction", "unlinkDeletedObjects", "push", "fullyQualifiedId", "objectId", "getTypename", "RemoveObjects", "deletionData", "undo", "layout", "Layout", "every", "obj", "isEchoObject", "openObjectIds", "Set", "active", "parentCollection", "nestedObjectsList", "Promise", "all", "map", "getNestedObjects", "indices", "findIndex", "wasActive", "flatMap", "i", "has", "sort", "a", "b", "forEach", "index", "splice", "flat", "remove", "undoMessageKey", "some", "undoable", "message", "restoredObjects", "
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport {\n Capabilities,\n contributes,\n createIntent,\n createResolver,\n LayoutAction,\n type PluginsContext,\n} from '@dxos/app-framework';\nimport { type Expando, getTypename, type HasId } from '@dxos/echo-schema';\nimport { invariant } from '@dxos/invariant';\nimport { create, makeRef, type ReactiveObject } from '@dxos/live-object';\nimport { Migrations } from '@dxos/migrations';\nimport { AttentionCapabilities } from '@dxos/plugin-attention';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { ObservabilityAction } from '@dxos/plugin-observability/types';\nimport { EdgeReplicationSetting } from '@dxos/protocols/proto/dxos/echo/metadata';\nimport { isSpace, getSpace, SpaceState, type Space, fullyQualifiedId, isEchoObject } from '@dxos/react-client/echo';\n\nimport { SpaceCapabilities } from './capabilities';\nimport {\n CREATE_SPACE_DIALOG,\n JOIN_DIALOG,\n SPACE_SETTINGS_DIALOG,\n type SpaceSettingsDialogProps,\n type JoinDialogProps,\n POPOVER_RENAME_SPACE,\n CREATE_OBJECT_DIALOG,\n type CreateObjectDialogProps,\n POPOVER_RENAME_OBJECT,\n POPOVER_ADD_SPACE,\n} from '../components';\nimport { SPACE_PLUGIN } from '../meta';\nimport { CollectionAction, CollectionType, SpaceAction } from '../types';\nimport { cloneObject, COMPOSER_SPACE_LOCK, getNestedObjects } from '../util';\n\n// TODO(wittjosiah): Remove.\nconst SPACE_MAX_OBJECTS = 500;\n\ntype IntentResolverOptions = {\n createInvitationUrl: (invitationCode: string) => string;\n context: PluginsContext;\n observability?: boolean;\n};\n\nexport default ({ createInvitationUrl, context, observability }: IntentResolverOptions) => {\n const resolve = (typename: string) =>\n context.requestCapabilities(Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};\n\n return contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: SpaceAction.OpenCreateSpace,\n resolve: () => ({\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: CREATE_SPACE_DIALOG,\n options: {\n blockAlign: 'start',\n },\n }),\n ],\n }),\n }),\n createResolver({\n intent: SpaceAction.Create,\n resolve: async ({ name, edgeReplication }) => {\n const client = context.requestCapability(ClientCapabilities.Client);\n const space = await client.spaces.create({ name });\n if (edgeReplication) {\n await space.internal.setEdgeReplicationPreference(EdgeReplicationSetting.ENABLED);\n }\n await space.waitUntilReady();\n const collection = create(CollectionType, { objects: [], views: {} });\n space.properties[CollectionType.typename] = makeRef(collection);\n\n if (Migrations.versionProperty) {\n space.properties[Migrations.versionProperty] = Migrations.targetVersion;\n }\n\n return {\n data: {\n id: space.id,\n subject: [space.id],\n space,\n },\n intents: [\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.create',\n properties: {\n spaceId: space.id,\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.Join,\n resolve: ({ invitationCode }) => ({\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: JOIN_DIALOG,\n options: {\n blockAlign: 'start',\n props: {\n initialInvitationCode: invitationCode,\n } satisfies Partial<JoinDialogProps>,\n },\n }),\n ],\n }),\n }),\n createResolver({\n intent: SpaceAction.Share,\n filter: (data): data is { space: Space } => !data.space.properties[COMPOSER_SPACE_LOCK],\n resolve: ({ space }) => {\n const attention = context.requestCapability(AttentionCapabilities.Attention);\n const current = attention.current.at(-1);\n const target = current?.startsWith(space.id) ? current : undefined;\n\n return {\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: SPACE_SETTINGS_DIALOG,\n options: {\n blockAlign: 'start',\n props: {\n space,\n target,\n initialTab: 'members',\n createInvitationUrl,\n } satisfies Partial<SpaceSettingsDialogProps>,\n },\n }),\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.share',\n properties: {\n space: space.id,\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.Lock,\n resolve: ({ space }) => {\n space.properties[COMPOSER_SPACE_LOCK] = true;\n return {\n intents: [\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.lock',\n properties: {\n spaceId: space.id,\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.Unlock,\n resolve: ({ space }) => {\n space.properties[COMPOSER_SPACE_LOCK] = false;\n return {\n intents: [\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.unlock',\n properties: {\n spaceId: space.id,\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.Rename,\n resolve: ({ caller, space }) => {\n return {\n intents: [\n createIntent(LayoutAction.UpdatePopover, {\n part: 'popover',\n subject: POPOVER_RENAME_SPACE,\n options: {\n anchorId: `dxos.org/ui/${caller}/${space.id}`,\n props: space,\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.AddSpace,\n resolve: () => {\n return {\n intents: [\n createIntent(LayoutAction.UpdatePopover, {\n part: 'popover',\n subject: POPOVER_ADD_SPACE,\n options: {\n anchorId: SpaceAction.AddSpace._tag,\n side: 'right',\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.OpenSettings,\n resolve: ({ space }) => {\n return {\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: SPACE_SETTINGS_DIALOG,\n options: {\n blockAlign: 'start',\n props: {\n space,\n initialTab: 'settings',\n createInvitationUrl,\n } satisfies Partial<SpaceSettingsDialogProps>,\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.Open,\n resolve: async ({ space }) => {\n await space.open();\n },\n }),\n createResolver({\n intent: SpaceAction.Close,\n resolve: async ({ space }) => {\n await space.close();\n },\n }),\n createResolver({\n intent: SpaceAction.Migrate,\n resolve: async ({ space, version }) => {\n const state = context.requestCapability(SpaceCapabilities.MutableState);\n\n if (space.state.get() === SpaceState.SPACE_REQUIRES_MIGRATION) {\n state.sdkMigrationRunning[space.id] = true;\n await space.internal.migrate();\n state.sdkMigrationRunning[space.id] = false;\n }\n const result = await Migrations.migrate(space, version);\n return {\n data: result,\n intents: [\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.migrate',\n properties: {\n spaceId: space.id,\n version,\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.OpenCreateObject,\n resolve: ({ target, navigable = true }) => {\n const state = context.requestCapability(SpaceCapabilities.State);\n\n return {\n intents: [\n createIntent(LayoutAction.UpdateDialog, {\n part: 'dialog',\n subject: CREATE_OBJECT_DIALOG,\n options: {\n blockAlign: 'start',\n props: {\n target,\n shouldNavigate: navigable\n ? (object: ReactiveObject<any>) => !(object instanceof CollectionType) || state.navigableCollections\n : () => false,\n } satisfies Partial<CreateObjectDialogProps>,\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.AddObject,\n resolve: async ({ target, object, hidden }) => {\n const space = isSpace(target) ? target : getSpace(target);\n invariant(space, 'Space not found.');\n\n if (space.db.coreDatabase.getAllObjectIds().length >= SPACE_MAX_OBJECTS) {\n return {\n error: new Error('Space limit reached.'),\n intents: [\n createIntent(LayoutAction.AddToast, {\n part: 'toast',\n subject: {\n id: `${SPACE_PLUGIN}/space-limit`,\n title: ['space limit label', { ns: SPACE_PLUGIN }],\n description: ['space limit description', { ns: SPACE_PLUGIN }],\n duration: 5_000,\n icon: 'ph--warning--regular',\n actionLabel: ['remove deleted objects label', { ns: SPACE_PLUGIN }],\n actionAlt: ['remove deleted objects alt', { ns: SPACE_PLUGIN }],\n closeLabel: ['close label', { ns: 'os' }],\n onAction: () => space.db.coreDatabase.unlinkDeletedObjects(),\n },\n }),\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.limit',\n properties: {\n spaceId: space.id,\n },\n }),\n ]\n : []),\n ],\n };\n }\n\n if (target instanceof CollectionType) {\n target.objects.push(makeRef(object as HasId));\n } else if (isSpace(target) && hidden) {\n space.db.add(object);\n } else if (isSpace(target)) {\n const collection = space.properties[CollectionType.typename]?.target;\n if (collection instanceof CollectionType) {\n collection.objects.push(makeRef(object as HasId));\n } else {\n // TODO(wittjosiah): Can't add non-echo objects by including in a collection because of types.\n const collection = create(CollectionType, { objects: [makeRef(object as HasId)], views: {} });\n space.properties[CollectionType.typename] = makeRef(collection);\n }\n }\n\n return {\n data: {\n id: fullyQualifiedId(object),\n subject: [fullyQualifiedId(object)],\n object: object as HasId,\n },\n intents: [\n ...(observability\n ? [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'space.object.add',\n properties: {\n spaceId: space.id,\n objectId: object.id,\n typename: getTypename(object),\n },\n }),\n ]\n : []),\n ],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.RemoveObjects,\n resolve: async ({ objects, target, deletionData }, undo) => {\n const layout = context.requestCapability(Capabilities.Layout);\n\n // All objects must be a member of the same space.\n const space = getSpace(objects[0]);\n invariant(space && objects.every((obj) => isEchoObject(obj) && getSpace(obj) === space));\n const openObjectIds = new Set<string>(layout.active);\n\n if (!undo) {\n const parentCollection: CollectionType = target ?? space.properties[CollectionType.typename]?.target;\n const nestedObjectsList = await Promise.all(objects.map((obj) => getNestedObjects(obj, resolve)));\n\n const deletionData = {\n objects,\n parentCollection,\n indices: objects.map((obj) =>\n parentCollection instanceof CollectionType\n ? parentCollection.objects.findIndex((object) => object.target === obj)\n : -1,\n ),\n nestedObjectsList,\n wasActive: objects\n .flatMap((obj, i) => [obj, ...nestedObjectsList[i]])\n .map((obj) => fullyQualifiedId(obj))\n .filter((id) => openObjectIds.has(id)),\n } satisfies SpaceAction.DeletionData;\n\n if (deletionData.parentCollection instanceof CollectionType) {\n [...deletionData.indices]\n .sort((a, b) => b - a)\n .forEach((index: number) => {\n if (index !== -1) {\n deletionData.parentCollection.objects.splice(index, 1);\n }\n });\n }\n\n deletionData.nestedObjectsList.flat().forEach((obj) => {\n space.db.remove(obj);\n });\n objects.forEach((obj) => space.db.remove(obj));\n\n const undoMessageKey = objects.some((obj) => obj instanceof CollectionType)\n ? 'collection deleted label'\n : objects.length > 1\n ? 'objects deleted label'\n : 'object deleted label';\n\n return {\n undoable: {\n // TODO(ZaymonFC): Pluralize if more than one object.\n message: [undoMessageKey, { ns: SPACE_PLUGIN }],\n data: { deletionData },\n },\n intents:\n deletionData.wasActive.length > 0\n ? [\n createIntent(LayoutAction.Close, {\n part: 'main',\n subject: deletionData.wasActive,\n options: { state: false },\n }),\n ]\n : undefined,\n };\n } else {\n if (\n deletionData?.objects?.length &&\n deletionData.objects.every(isEchoObject) &&\n deletionData.parentCollection instanceof CollectionType\n ) {\n // Restore the object to the space.\n const restoredObjects = deletionData.objects.map((obj: Expando) => space.db.add(obj));\n\n // Restore nested objects to the space.\n deletionData.nestedObjectsList.flat().forEach((obj: Expando) => {\n space.db.add(obj);\n });\n\n deletionData.indices.forEach((index: number, i: number) => {\n if (index !== -1) {\n deletionData.parentCollection.objects.splice(index, 0, makeRef(restoredObjects[i] as Expando));\n }\n });\n\n return {\n intents:\n deletionData.wasActive.length > 0\n ? [\n createIntent(LayoutAction.Open, {\n part: 'main',\n subject: deletionData.wasActive,\n }),\n ]\n : undefined,\n };\n }\n }\n },\n }),\n createResolver({\n intent: SpaceAction.RenameObject,\n resolve: async ({ object, caller }) => ({\n intents: [\n createIntent(LayoutAction.UpdatePopover, {\n part: 'popover',\n subject: POPOVER_RENAME_OBJECT,\n options: {\n anchorId: `dxos.org/ui/${caller}/${fullyQualifiedId(object)}`,\n props: object,\n },\n }),\n ],\n }),\n }),\n createResolver({\n intent: SpaceAction.DuplicateObject,\n resolve: async ({ object, target }) => {\n const space = isSpace(target) ? target : getSpace(target);\n invariant(space, 'Space not found.');\n\n const newObject = await cloneObject(object, resolve, space);\n return {\n intents: [createIntent(SpaceAction.AddObject, { object: newObject, target })],\n };\n },\n }),\n createResolver({\n intent: SpaceAction.WaitForObject,\n resolve: async ({ id }) => {\n const state = context.requestCapability(SpaceCapabilities.MutableState);\n state.awaiting = id;\n },\n }),\n createResolver({\n intent: CollectionAction.Create,\n resolve: async ({ name }) => ({\n data: { object: create(CollectionType, { name, objects: [], views: {} }) },\n }),\n }),\n ]);\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["SPACE_MAX_OBJECTS", "createInvitationUrl", "context", "observability", "resolve", "typename", "requestCapabilities", "Capabilities", "Metadata", "find", "id", "metadata", "contributes", "IntentResolver", "createResolver", "intent", "SpaceAction", "OpenCreateSpace", "intents", "createIntent", "LayoutAction", "UpdateDialog", "part", "subject", "CREATE_SPACE_DIALOG", "options", "blockAlign", "Create", "name", "edgeReplication", "client", "requestCapability", "ClientCapabilities", "Client", "space", "spaces", "create", "internal", "setEdgeReplicationPreference", "EdgeReplicationSetting", "ENABLED", "waitUntilReady", "collection", "CollectionType", "objects", "views", "properties", "makeRef", "Migrations", "versionProperty", "targetVersion", "data", "ObservabilityAction", "SendEvent", "spaceId", "Join", "invitationCode", "JOIN_DIALOG", "props", "initialInvitationCode", "Share", "filter", "COMPOSER_SPACE_LOCK", "attention", "AttentionCapabilities", "Attention", "current", "at", "target", "startsWith", "undefined", "SPACE_SETTINGS_DIALOG", "initialTab", "Lock", "Unlock", "Rename", "caller", "UpdatePopover", "POPOVER_RENAME_SPACE", "anchorId", "AddSpace", "POPOVER_ADD_SPACE", "_tag", "side", "OpenSettings", "Open", "open", "Close", "close", "Migrate", "version", "state", "SpaceCapabilities", "MutableState", "get", "SpaceState", "SPACE_REQUIRES_MIGRATION", "sdkMigrationRunning", "migrate", "result", "OpenCreateObject", "navigable", "State", "CREATE_OBJECT_DIALOG", "shouldNavigate", "object", "navigableCollections", "AddObject", "hidden", "isSpace", "getSpace", "invariant", "db", "coreDatabase", "getAllObjectIds", "length", "error", "Error", "AddToast", "SPACE_PLUGIN", "title", "ns", "description", "duration", "icon", "actionLabel", "actionAlt", "closeLabel", "onAction", "unlinkDeletedObjects", "push", "add", "fullyQualifiedId", "objectId", "getTypename", "RemoveObjects", "deletionData", "undo", "layout", "Layout", "every", "obj", "isEchoObject", "openObjectIds", "Set", "active", "parentCollection", "nestedObjectsList", "Promise", "all", "map", "getNestedObjects", "indices", "findIndex", "wasActive", "flatMap", "i", "has", "sort", "a", "b", "forEach", "index", "splice", "flat", "remove", "undoMessageKey", "some", "undoable", "message", "restoredObjects", "RenameObject", "POPOVER_RENAME_OBJECT", "DuplicateObject", "newObject", "cloneObject", "WaitForObject", "awaiting", "CollectionAction"]
|
|
7
7
|
}
|