@dxos/plugin-space 0.7.4 → 0.7.5-feature-compute.4d9d99a
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-5D2QB43K.mjs +365 -0
- package/dist/lib/browser/app-graph-builder-5D2QB43K.mjs.map +7 -0
- package/dist/lib/browser/app-graph-serializer-VNWPLPDF.mjs +80 -0
- package/dist/lib/browser/app-graph-serializer-VNWPLPDF.mjs.map +7 -0
- package/dist/lib/browser/chunk-5TBRONF6.mjs +133 -0
- package/dist/lib/browser/chunk-5TBRONF6.mjs.map +7 -0
- package/dist/lib/browser/chunk-6SWQRWOD.mjs +1672 -0
- package/dist/lib/browser/chunk-6SWQRWOD.mjs.map +7 -0
- package/dist/lib/browser/chunk-HCXWKGTE.mjs +316 -0
- package/dist/lib/browser/chunk-HCXWKGTE.mjs.map +7 -0
- package/dist/lib/browser/chunk-SOXNANA6.mjs +12 -0
- package/dist/lib/browser/chunk-SOXNANA6.mjs.map +7 -0
- package/dist/lib/browser/chunk-UH5P4UL3.mjs +21 -0
- package/dist/lib/browser/chunk-UH5P4UL3.mjs.map +7 -0
- package/dist/lib/browser/chunk-ZBKFJNHH.mjs +523 -0
- package/dist/lib/browser/chunk-ZBKFJNHH.mjs.map +7 -0
- package/dist/lib/browser/identity-created-EC5FOCX2.mjs +28 -0
- package/dist/lib/browser/identity-created-EC5FOCX2.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +192 -3521
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/intent-resolver-VBL572N7.mjs +459 -0
- package/dist/lib/browser/intent-resolver-VBL572N7.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/react-root-AZJFNTKK.mjs +28 -0
- package/dist/lib/browser/react-root-AZJFNTKK.mjs.map +7 -0
- package/dist/lib/browser/react-surface-E2VSYVNZ.mjs +238 -0
- package/dist/lib/browser/react-surface-E2VSYVNZ.mjs.map +7 -0
- package/dist/lib/browser/settings-ASFF5BZL.mjs +24 -0
- package/dist/lib/browser/settings-ASFF5BZL.mjs.map +7 -0
- package/dist/lib/browser/spaces-ready-4SFNS5JQ.mjs +200 -0
- package/dist/lib/browser/spaces-ready-4SFNS5JQ.mjs.map +7 -0
- package/dist/lib/browser/state-MS4KYJWI.mjs +47 -0
- package/dist/lib/browser/state-MS4KYJWI.mjs.map +7 -0
- package/dist/lib/browser/types/index.mjs +14 -5
- package/dist/lib/node/app-graph-builder-ZQ5S62YR.cjs +368 -0
- package/dist/lib/node/app-graph-builder-ZQ5S62YR.cjs.map +7 -0
- package/dist/lib/node/app-graph-serializer-72S7P33H.cjs +88 -0
- package/dist/lib/node/app-graph-serializer-72S7P33H.cjs.map +7 -0
- package/dist/lib/node/chunk-56NGXG2A.cjs +41 -0
- package/dist/lib/node/chunk-56NGXG2A.cjs.map +7 -0
- package/dist/lib/node/{meta.cjs → chunk-AO4EW2RX.cjs} +12 -13
- package/dist/lib/node/chunk-AO4EW2RX.cjs.map +7 -0
- package/dist/lib/node/chunk-BQRNTKSQ.cjs +150 -0
- package/dist/lib/node/chunk-BQRNTKSQ.cjs.map +7 -0
- package/dist/lib/node/chunk-DDZYVNVP.cjs +345 -0
- package/dist/lib/node/chunk-DDZYVNVP.cjs.map +7 -0
- package/dist/lib/node/chunk-M64YG2FY.cjs +1669 -0
- package/dist/lib/node/chunk-M64YG2FY.cjs.map +7 -0
- package/dist/lib/node/chunk-Z34MTEU7.cjs +551 -0
- package/dist/lib/node/chunk-Z34MTEU7.cjs.map +7 -0
- package/dist/lib/node/identity-created-IMDS4A6A.cjs +44 -0
- package/dist/lib/node/identity-created-IMDS4A6A.cjs.map +7 -0
- package/dist/lib/node/index.cjs +175 -3506
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/intent-resolver-S4HZABYI.cjs +458 -0
- package/dist/lib/node/intent-resolver-S4HZABYI.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/react-root-RB3OM3QG.cjs +50 -0
- package/dist/lib/node/react-root-RB3OM3QG.cjs.map +7 -0
- package/dist/lib/node/react-surface-TLKQEHHT.cjs +233 -0
- package/dist/lib/node/react-surface-TLKQEHHT.cjs.map +7 -0
- package/dist/lib/node/settings-QLCKAUHK.cjs +38 -0
- package/dist/lib/node/settings-QLCKAUHK.cjs.map +7 -0
- package/dist/lib/node/spaces-ready-RZTKEXOL.cjs +211 -0
- package/dist/lib/node/spaces-ready-RZTKEXOL.cjs.map +7 -0
- package/dist/lib/node/state-4UIOUKLJ.cjs +61 -0
- package/dist/lib/node/state-4UIOUKLJ.cjs.map +7 -0
- package/dist/lib/node/types/index.cjs +23 -14
- package/dist/lib/node/types/index.cjs.map +2 -2
- package/dist/lib/node-esm/app-graph-builder-CD6IYPSS.mjs +366 -0
- package/dist/lib/node-esm/app-graph-builder-CD6IYPSS.mjs.map +7 -0
- package/dist/lib/node-esm/app-graph-serializer-CFXS6ZE2.mjs +81 -0
- package/dist/lib/node-esm/app-graph-serializer-CFXS6ZE2.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-375RB3CZ.mjs +22 -0
- package/dist/lib/node-esm/chunk-375RB3CZ.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-7FUVU45N.mjs +14 -0
- package/dist/lib/node-esm/chunk-7FUVU45N.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-CLGCKZ2D.mjs +317 -0
- package/dist/lib/node-esm/chunk-CLGCKZ2D.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-CMKML5IN.mjs +1673 -0
- package/dist/lib/node-esm/chunk-CMKML5IN.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-FUMGYUD3.mjs +524 -0
- package/dist/lib/node-esm/chunk-FUMGYUD3.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-M4XTHK35.mjs +134 -0
- package/dist/lib/node-esm/chunk-M4XTHK35.mjs.map +7 -0
- package/dist/lib/node-esm/identity-created-SJYZZ7Q3.mjs +29 -0
- package/dist/lib/node-esm/identity-created-SJYZZ7Q3.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +192 -3521
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/intent-resolver-OIQH7HN7.mjs +460 -0
- package/dist/lib/node-esm/intent-resolver-OIQH7HN7.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/react-root-WKJWCHXR.mjs +29 -0
- package/dist/lib/node-esm/react-root-WKJWCHXR.mjs.map +7 -0
- package/dist/lib/node-esm/react-surface-RVEHOSAD.mjs +239 -0
- package/dist/lib/node-esm/react-surface-RVEHOSAD.mjs.map +7 -0
- package/dist/lib/node-esm/settings-WLVEO4JM.mjs +25 -0
- package/dist/lib/node-esm/settings-WLVEO4JM.mjs.map +7 -0
- package/dist/lib/node-esm/spaces-ready-ITGYYT5A.mjs +201 -0
- package/dist/lib/node-esm/spaces-ready-ITGYYT5A.mjs.map +7 -0
- package/dist/lib/node-esm/state-BMISGQ2O.mjs +48 -0
- package/dist/lib/node-esm/state-BMISGQ2O.mjs.map +7 -0
- package/dist/lib/node-esm/types/index.mjs +14 -5
- package/dist/types/src/SpacePlugin.d.ts +1 -24
- package/dist/types/src/SpacePlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts +181 -0
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-serializer.d.ts +4 -0
- package/dist/types/src/capabilities/app-graph-serializer.d.ts.map +1 -0
- package/dist/types/src/capabilities/capabilities.d.ts +15 -0
- package/dist/types/src/capabilities/capabilities.d.ts.map +1 -0
- package/dist/types/src/capabilities/identity-created.d.ts +4 -0
- package/dist/types/src/capabilities/identity-created.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +195 -0
- package/dist/types/src/capabilities/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/intent-resolver.d.ts +8 -0
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-root.d.ts +7 -0
- package/dist/types/src/capabilities/react-root.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface.d.ts +7 -0
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/settings.d.ts +4 -0
- package/dist/types/src/capabilities/settings.d.ts.map +1 -0
- package/dist/types/src/capabilities/spaces-ready.d.ts +4 -0
- package/dist/types/src/capabilities/spaces-ready.d.ts.map +1 -0
- package/dist/types/src/capabilities/state.d.ts +5 -0
- package/dist/types/src/capabilities/state.d.ts.map +1 -0
- package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts +7 -0
- package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts.map +1 -0
- package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts +8 -0
- package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts.map +1 -0
- package/dist/types/src/components/AdvancedObjectSettings/index.d.ts +2 -0
- package/dist/types/src/components/AdvancedObjectSettings/index.d.ts.map +1 -0
- package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
- package/dist/types/src/components/BaseObjectSettings.d.ts +7 -0
- package/dist/types/src/components/BaseObjectSettings.d.ts.map +1 -0
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +5 -4
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +5 -6
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts +1 -0
- package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
- package/dist/types/src/components/JoinDialog.d.ts +1 -0
- package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
- package/dist/types/src/components/PopoverRenameObject.d.ts +1 -0
- package/dist/types/src/components/PopoverRenameObject.d.ts.map +1 -1
- package/dist/types/src/components/PopoverRenameSpace.d.ts +1 -0
- package/dist/types/src/components/PopoverRenameSpace.d.ts.map +1 -1
- package/dist/types/src/components/ShareSpaceButton.d.ts.map +1 -1
- package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
- package/dist/types/src/components/SpacePresence.d.ts +9 -6
- package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
- package/dist/types/src/components/SpacePresence.stories.d.ts +1 -1
- package/dist/types/src/components/SpacePresence.stories.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts +1 -0
- package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.stories.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts +4 -3
- package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.stories.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/InlineSyncStatus.d.ts +3 -3
- package/dist/types/src/components/SyncStatus/InlineSyncStatus.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/SyncStatusDetail.stories.d.ts +2 -2
- package/dist/types/src/components/SyncStatus/SyncStatusDetail.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +2 -1
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/events.d.ts +5 -0
- package/dist/types/src/events.d.ts.map +1 -0
- package/dist/types/src/hooks/index.d.ts +2 -0
- package/dist/types/src/hooks/index.d.ts.map +1 -0
- package/dist/types/src/hooks/usePath.d.ts +11 -0
- package/dist/types/src/hooks/usePath.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +3 -5
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +1 -27
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +18 -3
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/collection.d.ts +8 -12
- package/dist/types/src/types/collection.d.ts.map +1 -1
- package/dist/types/src/types/thread.d.ts +180 -186
- package/dist/types/src/types/thread.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +228 -16
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +9 -8
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/package.json +38 -46
- package/src/SpacePlugin.tsx +119 -1541
- package/src/capabilities/app-graph-builder.ts +392 -0
- package/src/capabilities/app-graph-serializer.ts +73 -0
- package/src/capabilities/capabilities.ts +23 -0
- package/src/capabilities/identity-created.ts +26 -0
- package/src/capabilities/index.ts +17 -0
- package/src/capabilities/intent-resolver.ts +420 -0
- package/src/capabilities/react-root.tsx +20 -0
- package/src/capabilities/react-surface.tsx +234 -0
- package/src/capabilities/settings.ts +17 -0
- package/src/capabilities/spaces-ready.ts +231 -0
- package/src/capabilities/state.ts +45 -0
- package/src/components/AdvancedObjectSettings/AdvancedObjectSettings.tsx +72 -0
- package/src/components/AdvancedObjectSettings/ForeignKeys.tsx +51 -0
- package/src/components/AdvancedObjectSettings/index.ts +5 -0
- package/src/components/AwaitingObject.tsx +15 -19
- package/src/components/{DefaultObjectSettings.tsx → BaseObjectSettings.tsx} +2 -2
- package/src/components/CreateDialog/CreateObjectDialog.tsx +36 -25
- package/src/components/CreateDialog/CreateObjectPanel.tsx +61 -24
- package/src/components/CreateDialog/CreateSpaceDialog.tsx +10 -14
- package/src/components/JoinDialog.tsx +18 -34
- package/src/components/PersistenceStatus.tsx +1 -1
- package/src/components/PopoverRenameObject.tsx +2 -0
- package/src/components/PopoverRenameSpace.tsx +2 -0
- package/src/components/ShareSpaceButton.tsx +5 -4
- package/src/components/SpacePluginSettings.tsx +2 -13
- package/src/components/SpacePresence.stories.tsx +25 -17
- package/src/components/SpacePresence.tsx +42 -21
- package/src/components/SpaceSettings/SpaceSettingsDialog.stories.tsx +2 -3
- package/src/components/SpaceSettings/SpaceSettingsDialog.tsx +3 -1
- package/src/components/SpaceSettings/SpaceSettingsPanel.stories.tsx +7 -5
- package/src/components/SpaceSettings/SpaceSettingsPanel.tsx +6 -5
- package/src/components/SyncStatus/InlineSyncStatus.tsx +37 -27
- package/src/components/SyncStatus/SyncStatusDetail.stories.tsx +55 -51
- package/src/components/index.ts +2 -1
- package/src/events.ts +12 -0
- package/src/hooks/index.ts +5 -0
- package/src/hooks/usePath.ts +44 -0
- package/src/index.ts +3 -7
- package/src/meta.ts +1 -29
- package/src/translations.ts +7 -2
- package/src/types/collection.ts +3 -3
- package/src/types/thread.ts +6 -6
- package/src/types/types.ts +177 -42
- package/src/util.tsx +77 -64
- package/dist/lib/browser/chunk-FTKV32QZ.mjs +0 -43
- package/dist/lib/browser/chunk-FTKV32QZ.mjs.map +0 -7
- package/dist/lib/browser/chunk-MWKXNS5S.mjs +0 -124
- package/dist/lib/browser/chunk-MWKXNS5S.mjs.map +0 -7
- package/dist/lib/browser/meta.mjs +0 -15
- package/dist/lib/browser/meta.mjs.map +0 -7
- package/dist/lib/node/chunk-6SNOZF7Y.cjs +0 -152
- package/dist/lib/node/chunk-6SNOZF7Y.cjs.map +0 -7
- package/dist/lib/node/chunk-QNVEU2UD.cjs +0 -69
- package/dist/lib/node/chunk-QNVEU2UD.cjs.map +0 -7
- package/dist/lib/node/meta.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-OHEAWSCA.mjs +0 -126
- package/dist/lib/node-esm/chunk-OHEAWSCA.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-UMV7XREB.mjs +0 -45
- package/dist/lib/node-esm/chunk-UMV7XREB.mjs.map +0 -7
- package/dist/lib/node-esm/meta.mjs +0 -16
- package/dist/lib/node-esm/meta.mjs.map +0 -7
- package/dist/types/src/components/DefaultObjectSettings.d.ts +0 -7
- package/dist/types/src/components/DefaultObjectSettings.d.ts.map +0 -1
- package/dist/types/src/components/SyncStatus/InlineSyncStatus.stories.d.ts +0 -6
- package/dist/types/src/components/SyncStatus/InlineSyncStatus.stories.d.ts.map +0 -1
- package/src/components/SyncStatus/InlineSyncStatus.stories.tsx +0 -57
|
@@ -18,32 +18,41 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
19
|
var types_exports = {};
|
|
20
20
|
__export(types_exports, {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
21
|
+
ActiveParts: () => import_chunk_DDZYVNVP.ActiveParts,
|
|
22
|
+
ActorSchema: () => import_chunk_DDZYVNVP.ActorSchema,
|
|
23
|
+
ChannelType: () => import_chunk_DDZYVNVP.ChannelType,
|
|
24
|
+
CollectionAction: () => import_chunk_DDZYVNVP.CollectionAction,
|
|
25
|
+
CollectionType: () => import_chunk_DDZYVNVP.CollectionType,
|
|
26
|
+
ContactType: () => import_chunk_DDZYVNVP.ContactType,
|
|
27
|
+
MessageState: () => import_chunk_DDZYVNVP.MessageState,
|
|
28
|
+
MessageType: () => import_chunk_DDZYVNVP.MessageType,
|
|
29
|
+
SPACE_ACTION: () => import_chunk_DDZYVNVP.SPACE_ACTION,
|
|
30
|
+
SPACE_DIRECTORY_HANDLE: () => import_chunk_DDZYVNVP.SPACE_DIRECTORY_HANDLE,
|
|
31
|
+
SpaceAction: () => import_chunk_DDZYVNVP.SpaceAction,
|
|
32
|
+
SpaceForm: () => import_chunk_DDZYVNVP.SpaceForm,
|
|
33
|
+
SpaceSettingsSchema: () => import_chunk_DDZYVNVP.SpaceSettingsSchema,
|
|
34
|
+
ThreadStatus: () => import_chunk_DDZYVNVP.ThreadStatus,
|
|
35
|
+
ThreadType: () => import_chunk_DDZYVNVP.ThreadType
|
|
32
36
|
});
|
|
33
37
|
module.exports = __toCommonJS(types_exports);
|
|
34
|
-
var
|
|
38
|
+
var import_chunk_DDZYVNVP = require("../chunk-DDZYVNVP.cjs");
|
|
39
|
+
var import_chunk_AO4EW2RX = require("../chunk-AO4EW2RX.cjs");
|
|
35
40
|
// Annotate the CommonJS export names for ESM import in node:
|
|
36
41
|
0 && (module.exports = {
|
|
42
|
+
ActiveParts,
|
|
37
43
|
ActorSchema,
|
|
38
44
|
ChannelType,
|
|
45
|
+
CollectionAction,
|
|
39
46
|
CollectionType,
|
|
40
47
|
ContactType,
|
|
41
48
|
MessageState,
|
|
42
49
|
MessageType,
|
|
50
|
+
SPACE_ACTION,
|
|
43
51
|
SPACE_DIRECTORY_HANDLE,
|
|
52
|
+
SpaceAction,
|
|
44
53
|
SpaceForm,
|
|
54
|
+
SpaceSettingsSchema,
|
|
45
55
|
ThreadStatus,
|
|
46
|
-
ThreadType
|
|
47
|
-
parseSchemaPlugin
|
|
56
|
+
ThreadType
|
|
48
57
|
});
|
|
49
58
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["index.cjs"],
|
|
4
|
-
"sourcesContent": ["import {\n ActorSchema,\n ChannelType,\n CollectionType,\n ContactType,\n MessageState,\n MessageType,\n SPACE_DIRECTORY_HANDLE,\n SpaceForm,\n
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,
|
|
4
|
+
"sourcesContent": ["import {\n ActiveParts,\n ActorSchema,\n ChannelType,\n CollectionAction,\n CollectionType,\n ContactType,\n MessageState,\n MessageType,\n SPACE_ACTION,\n SPACE_DIRECTORY_HANDLE,\n SpaceAction,\n SpaceForm,\n SpaceSettingsSchema,\n ThreadStatus,\n ThreadType\n} from \"../chunk-DDZYVNVP.cjs\";\nimport \"../chunk-AO4EW2RX.cjs\";\nexport {\n ActiveParts,\n ActorSchema,\n ChannelType,\n CollectionAction,\n CollectionType,\n ContactType,\n MessageState,\n MessageType,\n SPACE_ACTION,\n SPACE_DIRECTORY_HANDLE,\n SpaceAction,\n SpaceForm,\n SpaceSettingsSchema,\n ThreadStatus,\n ThreadType\n};\n//# sourceMappingURL=index.cjs.map\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAgBO;AACP,4BAAO;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -0,0 +1,366 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
SpaceCapabilities
|
|
4
|
+
} from "./chunk-375RB3CZ.mjs";
|
|
5
|
+
import {
|
|
6
|
+
SHARED,
|
|
7
|
+
SPACES,
|
|
8
|
+
constructObjectActions,
|
|
9
|
+
constructSpaceActions,
|
|
10
|
+
constructSpaceNode,
|
|
11
|
+
createObjectNode,
|
|
12
|
+
memoizeQuery
|
|
13
|
+
} from "./chunk-FUMGYUD3.mjs";
|
|
14
|
+
import {
|
|
15
|
+
CollectionType,
|
|
16
|
+
SpaceAction
|
|
17
|
+
} from "./chunk-CLGCKZ2D.mjs";
|
|
18
|
+
import {
|
|
19
|
+
SPACE_PLUGIN
|
|
20
|
+
} from "./chunk-7FUVU45N.mjs";
|
|
21
|
+
|
|
22
|
+
// packages/plugins/plugin-space/src/capabilities/app-graph-builder.ts
|
|
23
|
+
import { Capabilities, contributes, createIntent } from "@dxos/app-framework";
|
|
24
|
+
import { Expando, Filter, FQ_ID_LENGTH, getSpace, isEchoObject, isSpace, OBJECT_ID_LENGTH, parseId, SPACE_ID_LENGTH, SpaceState } from "@dxos/client/echo";
|
|
25
|
+
import { getTypename, isDeleted } from "@dxos/live-object";
|
|
26
|
+
import { log } from "@dxos/log";
|
|
27
|
+
import { ClientCapabilities } from "@dxos/plugin-client";
|
|
28
|
+
import { createExtension, toSignal } from "@dxos/plugin-graph";
|
|
29
|
+
import { nonNullable } from "@dxos/util";
|
|
30
|
+
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/capabilities/app-graph-builder.ts";
|
|
31
|
+
var app_graph_builder_default = (context) => {
|
|
32
|
+
const resolve = (typename) => context.requestCapabilities(Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};
|
|
33
|
+
const spacesNode = {
|
|
34
|
+
id: SPACES,
|
|
35
|
+
type: SPACES,
|
|
36
|
+
cacheable: [
|
|
37
|
+
"label",
|
|
38
|
+
"role"
|
|
39
|
+
],
|
|
40
|
+
properties: {
|
|
41
|
+
label: [
|
|
42
|
+
"spaces label",
|
|
43
|
+
{
|
|
44
|
+
ns: SPACE_PLUGIN
|
|
45
|
+
}
|
|
46
|
+
],
|
|
47
|
+
testId: "spacePlugin.spaces",
|
|
48
|
+
role: "branch",
|
|
49
|
+
disabled: true,
|
|
50
|
+
childrenPersistenceClass: "echo",
|
|
51
|
+
onRearrangeChildren: async (nextOrder) => {
|
|
52
|
+
const { graph } = context.requestCapability(Capabilities.AppGraph);
|
|
53
|
+
const client = context.requestCapability(ClientCapabilities.Client);
|
|
54
|
+
graph._sortEdges(SPACES, "outbound", nextOrder.map(({ id }) => id));
|
|
55
|
+
const { objects: [spacesOrder] } = await client.spaces.default.db.query(Filter.schema(Expando, {
|
|
56
|
+
key: SHARED
|
|
57
|
+
})).run();
|
|
58
|
+
if (spacesOrder) {
|
|
59
|
+
spacesOrder.order = nextOrder.map(({ id }) => id);
|
|
60
|
+
} else {
|
|
61
|
+
log.warn("spaces order object not found", void 0, {
|
|
62
|
+
F: __dxlog_file,
|
|
63
|
+
L: 72,
|
|
64
|
+
S: void 0,
|
|
65
|
+
C: (f, a) => f(...a)
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
return contributes(Capabilities.AppGraphBuilder, [
|
|
72
|
+
// Primary actions.
|
|
73
|
+
createExtension({
|
|
74
|
+
id: `${SPACE_PLUGIN}/primary-actions`,
|
|
75
|
+
disposition: "hoist",
|
|
76
|
+
filter: (node) => node.id === "root",
|
|
77
|
+
actions: () => [
|
|
78
|
+
{
|
|
79
|
+
id: SpaceAction.OpenCreateSpace._tag,
|
|
80
|
+
data: async () => {
|
|
81
|
+
const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
|
|
82
|
+
await dispatch(createIntent(SpaceAction.OpenCreateSpace));
|
|
83
|
+
},
|
|
84
|
+
properties: {
|
|
85
|
+
label: [
|
|
86
|
+
"create space label",
|
|
87
|
+
{
|
|
88
|
+
ns: SPACE_PLUGIN
|
|
89
|
+
}
|
|
90
|
+
],
|
|
91
|
+
icon: "ph--plus--regular",
|
|
92
|
+
testId: "spacePlugin.createSpace",
|
|
93
|
+
disposition: "item"
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
id: SpaceAction.Join._tag,
|
|
98
|
+
data: async () => {
|
|
99
|
+
const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
|
|
100
|
+
await dispatch(createIntent(SpaceAction.Join));
|
|
101
|
+
},
|
|
102
|
+
properties: {
|
|
103
|
+
label: [
|
|
104
|
+
"join space label",
|
|
105
|
+
{
|
|
106
|
+
ns: SPACE_PLUGIN
|
|
107
|
+
}
|
|
108
|
+
],
|
|
109
|
+
icon: "ph--sign-in--regular",
|
|
110
|
+
testId: "spacePlugin.joinSpace",
|
|
111
|
+
disposition: "item"
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
]
|
|
115
|
+
}),
|
|
116
|
+
// Create spaces group node.
|
|
117
|
+
createExtension({
|
|
118
|
+
id: `${SPACE_PLUGIN}/root`,
|
|
119
|
+
disposition: "hoist",
|
|
120
|
+
filter: (node) => node.id === "root",
|
|
121
|
+
connector: () => [
|
|
122
|
+
spacesNode
|
|
123
|
+
],
|
|
124
|
+
resolver: ({ id }) => id === SPACES ? spacesNode : void 0
|
|
125
|
+
}),
|
|
126
|
+
// Create space nodes.
|
|
127
|
+
createExtension({
|
|
128
|
+
id: SPACES,
|
|
129
|
+
filter: (node) => node.id === SPACES,
|
|
130
|
+
connector: () => {
|
|
131
|
+
const client = context.requestCapability(ClientCapabilities.Client);
|
|
132
|
+
const spaces = toSignal((onChange) => client.spaces.subscribe(() => onChange()).unsubscribe, () => client.spaces.get());
|
|
133
|
+
const isReady = toSignal((onChange) => client.spaces.isReady.subscribe(() => onChange()).unsubscribe, () => client.spaces.isReady.get());
|
|
134
|
+
if (!spaces || !isReady) {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
const state = context.requestCapability(SpaceCapabilities.State);
|
|
138
|
+
const settings = context.requestCapabilities(Capabilities.SettingsStore)[0]?.getStore(SPACE_PLUGIN)?.value;
|
|
139
|
+
try {
|
|
140
|
+
const [spacesOrder] = memoizeQuery(client.spaces.default, Filter.schema(Expando, {
|
|
141
|
+
key: SHARED
|
|
142
|
+
}));
|
|
143
|
+
const order = spacesOrder?.order ?? [];
|
|
144
|
+
const orderMap = new Map(order.map((id, index) => [
|
|
145
|
+
id,
|
|
146
|
+
index
|
|
147
|
+
]));
|
|
148
|
+
return [
|
|
149
|
+
...spaces.filter((space) => orderMap.has(space.id)).sort((a, b) => orderMap.get(a.id) - orderMap.get(b.id)),
|
|
150
|
+
...spaces.filter((space) => !orderMap.has(space.id))
|
|
151
|
+
].filter((space) => settings?.showHidden ? true : space.state.get() !== SpaceState.SPACE_INACTIVE).map((space) => constructSpaceNode({
|
|
152
|
+
space,
|
|
153
|
+
navigable: state.navigableCollections,
|
|
154
|
+
personal: space === client.spaces.default,
|
|
155
|
+
namesCache: state.spaceNames,
|
|
156
|
+
resolve
|
|
157
|
+
}));
|
|
158
|
+
} catch {
|
|
159
|
+
}
|
|
160
|
+
},
|
|
161
|
+
resolver: ({ id }) => {
|
|
162
|
+
if (id.length !== SPACE_ID_LENGTH) {
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
const client = context.requestCapability(ClientCapabilities.Client);
|
|
166
|
+
const spaces = toSignal((onChange) => client.spaces.subscribe(() => onChange()).unsubscribe, () => client.spaces.get());
|
|
167
|
+
const isReady = toSignal((onChange) => client.spaces.isReady.subscribe(() => onChange()).unsubscribe, () => client.spaces.isReady.get());
|
|
168
|
+
if (!spaces || !isReady) {
|
|
169
|
+
return;
|
|
170
|
+
}
|
|
171
|
+
const space = spaces.find((space2) => space2.id === id);
|
|
172
|
+
if (!space) {
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
if (space.state.get() === SpaceState.SPACE_INACTIVE) {
|
|
176
|
+
return false;
|
|
177
|
+
} else {
|
|
178
|
+
const state = context.requestCapability(SpaceCapabilities.State);
|
|
179
|
+
return constructSpaceNode({
|
|
180
|
+
space,
|
|
181
|
+
navigable: state.navigableCollections,
|
|
182
|
+
personal: space === client.spaces.default,
|
|
183
|
+
namesCache: state.spaceNames,
|
|
184
|
+
resolve
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}),
|
|
189
|
+
// Create space actions.
|
|
190
|
+
createExtension({
|
|
191
|
+
id: `${SPACE_PLUGIN}/actions`,
|
|
192
|
+
filter: (node) => isSpace(node.data),
|
|
193
|
+
actions: ({ node }) => {
|
|
194
|
+
const space = node.data;
|
|
195
|
+
const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
|
|
196
|
+
const client = context.requestCapability(ClientCapabilities.Client);
|
|
197
|
+
const state = context.requestCapability(SpaceCapabilities.State);
|
|
198
|
+
return constructSpaceActions({
|
|
199
|
+
space,
|
|
200
|
+
dispatch,
|
|
201
|
+
personal: space === client.spaces.default,
|
|
202
|
+
migrating: state.sdkMigrationRunning[space.id]
|
|
203
|
+
});
|
|
204
|
+
}
|
|
205
|
+
}),
|
|
206
|
+
// Create nodes for objects in the root collection of a space.
|
|
207
|
+
createExtension({
|
|
208
|
+
id: `${SPACE_PLUGIN}/root-collection`,
|
|
209
|
+
filter: (node) => isSpace(node.data),
|
|
210
|
+
connector: ({ node }) => {
|
|
211
|
+
const space = node.data;
|
|
212
|
+
const spaceState = toSignal((onChange) => space.state.subscribe(() => onChange()).unsubscribe, () => space.state.get(), space.id);
|
|
213
|
+
if (spaceState !== SpaceState.SPACE_READY) {
|
|
214
|
+
return;
|
|
215
|
+
}
|
|
216
|
+
const collection = space.properties[CollectionType.typename]?.target;
|
|
217
|
+
if (!collection) {
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
const state = context.requestCapability(SpaceCapabilities.State);
|
|
221
|
+
return collection.objects.map((object) => object.target).filter(nonNullable).map((object) => createObjectNode({
|
|
222
|
+
object,
|
|
223
|
+
space,
|
|
224
|
+
resolve,
|
|
225
|
+
navigable: state.navigableCollections
|
|
226
|
+
})).filter(nonNullable);
|
|
227
|
+
}
|
|
228
|
+
}),
|
|
229
|
+
// Create nodes for objects in a collection or by its fully qualified id.
|
|
230
|
+
createExtension({
|
|
231
|
+
id: `${SPACE_PLUGIN}/objects`,
|
|
232
|
+
filter: (node) => node.data instanceof CollectionType,
|
|
233
|
+
connector: ({ node }) => {
|
|
234
|
+
const collection = node.data;
|
|
235
|
+
const space = getSpace(collection);
|
|
236
|
+
if (!space) {
|
|
237
|
+
return;
|
|
238
|
+
}
|
|
239
|
+
const state = context.requestCapability(SpaceCapabilities.State);
|
|
240
|
+
return collection.objects.map((object) => object.target).filter(nonNullable).map((object) => createObjectNode({
|
|
241
|
+
object,
|
|
242
|
+
space,
|
|
243
|
+
resolve,
|
|
244
|
+
navigable: state.navigableCollections
|
|
245
|
+
})).filter(nonNullable);
|
|
246
|
+
},
|
|
247
|
+
resolver: ({ id }) => {
|
|
248
|
+
if (id.length !== FQ_ID_LENGTH) {
|
|
249
|
+
return;
|
|
250
|
+
}
|
|
251
|
+
const [spaceId, objectId] = id.split(":");
|
|
252
|
+
if (spaceId.length !== SPACE_ID_LENGTH && objectId.length !== OBJECT_ID_LENGTH) {
|
|
253
|
+
return;
|
|
254
|
+
}
|
|
255
|
+
const client = context.requestCapability(ClientCapabilities.Client);
|
|
256
|
+
const space = client.spaces.get().find((space2) => space2.id === spaceId);
|
|
257
|
+
if (!space) {
|
|
258
|
+
return;
|
|
259
|
+
}
|
|
260
|
+
const spaceState = toSignal((onChange) => space.state.subscribe(() => onChange()).unsubscribe, () => space.state.get(), space.id);
|
|
261
|
+
if (spaceState !== SpaceState.SPACE_READY) {
|
|
262
|
+
return;
|
|
263
|
+
}
|
|
264
|
+
const [object] = memoizeQuery(space, {
|
|
265
|
+
id: objectId
|
|
266
|
+
});
|
|
267
|
+
if (!object) {
|
|
268
|
+
return;
|
|
269
|
+
}
|
|
270
|
+
if (isDeleted(object)) {
|
|
271
|
+
return false;
|
|
272
|
+
} else {
|
|
273
|
+
const state = context.requestCapability(SpaceCapabilities.State);
|
|
274
|
+
return createObjectNode({
|
|
275
|
+
object,
|
|
276
|
+
space,
|
|
277
|
+
resolve,
|
|
278
|
+
navigable: state.navigableCollections
|
|
279
|
+
});
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
}),
|
|
283
|
+
// Create collection actions and action groups.
|
|
284
|
+
createExtension({
|
|
285
|
+
id: `${SPACE_PLUGIN}/object-actions`,
|
|
286
|
+
filter: (node) => isEchoObject(node.data),
|
|
287
|
+
actions: ({ node }) => {
|
|
288
|
+
const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
|
|
289
|
+
const state = context.requestCapability(SpaceCapabilities.State);
|
|
290
|
+
return constructObjectActions({
|
|
291
|
+
node,
|
|
292
|
+
dispatch,
|
|
293
|
+
navigable: state.navigableCollections
|
|
294
|
+
});
|
|
295
|
+
}
|
|
296
|
+
}),
|
|
297
|
+
// Create nodes for object settings.
|
|
298
|
+
createExtension({
|
|
299
|
+
id: `${SPACE_PLUGIN}/settings-for-subject`,
|
|
300
|
+
resolver: ({ id }) => {
|
|
301
|
+
if (!id.endsWith("~settings")) {
|
|
302
|
+
return;
|
|
303
|
+
}
|
|
304
|
+
const type = "orphan-settings-for-subject";
|
|
305
|
+
const icon = "ph--gear--regular";
|
|
306
|
+
const [subjectId] = id.split("~");
|
|
307
|
+
const { spaceId, objectId } = parseId(subjectId);
|
|
308
|
+
const client = context.requestCapability(ClientCapabilities.Client);
|
|
309
|
+
const spaces = toSignal((onChange) => client.spaces.subscribe(() => onChange()).unsubscribe, () => client.spaces.get());
|
|
310
|
+
const space = spaces?.find((space2) => space2.id === spaceId && space2.state.get() === SpaceState.SPACE_READY);
|
|
311
|
+
if (!objectId) {
|
|
312
|
+
const label2 = space ? space.properties.name || [
|
|
313
|
+
"unnamed space label",
|
|
314
|
+
{
|
|
315
|
+
ns: SPACE_PLUGIN
|
|
316
|
+
}
|
|
317
|
+
] : [
|
|
318
|
+
"unnamed object settings label",
|
|
319
|
+
{
|
|
320
|
+
ns: SPACE_PLUGIN
|
|
321
|
+
}
|
|
322
|
+
];
|
|
323
|
+
return {
|
|
324
|
+
id,
|
|
325
|
+
type,
|
|
326
|
+
data: null,
|
|
327
|
+
properties: {
|
|
328
|
+
icon,
|
|
329
|
+
label: label2,
|
|
330
|
+
showResolvedThreads: false,
|
|
331
|
+
object: null,
|
|
332
|
+
space
|
|
333
|
+
}
|
|
334
|
+
};
|
|
335
|
+
}
|
|
336
|
+
const [object] = memoizeQuery(space, {
|
|
337
|
+
id: objectId
|
|
338
|
+
});
|
|
339
|
+
if (!object || !subjectId) {
|
|
340
|
+
return;
|
|
341
|
+
}
|
|
342
|
+
const meta = resolve(getTypename(object) ?? "");
|
|
343
|
+
const label = meta.label?.(object) || object.name || meta.placeholder || [
|
|
344
|
+
"unnamed object settings label",
|
|
345
|
+
{
|
|
346
|
+
ns: SPACE_PLUGIN
|
|
347
|
+
}
|
|
348
|
+
];
|
|
349
|
+
return {
|
|
350
|
+
id,
|
|
351
|
+
type,
|
|
352
|
+
data: null,
|
|
353
|
+
properties: {
|
|
354
|
+
icon,
|
|
355
|
+
label,
|
|
356
|
+
object
|
|
357
|
+
}
|
|
358
|
+
};
|
|
359
|
+
}
|
|
360
|
+
})
|
|
361
|
+
]);
|
|
362
|
+
};
|
|
363
|
+
export {
|
|
364
|
+
app_graph_builder_default as default
|
|
365
|
+
};
|
|
366
|
+
//# sourceMappingURL=app-graph-builder-CD6IYPSS.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/app-graph-builder.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, type PluginsContext } from '@dxos/app-framework';\nimport {\n Expando,\n Filter,\n FQ_ID_LENGTH,\n getSpace,\n isEchoObject,\n isSpace,\n OBJECT_ID_LENGTH,\n parseId,\n type ReactiveEchoObject,\n SPACE_ID_LENGTH,\n SpaceState,\n type Space,\n} from '@dxos/client/echo';\nimport { getTypename, isDeleted } from '@dxos/live-object';\nimport { log } from '@dxos/log';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { createExtension, toSignal, type Node } from '@dxos/plugin-graph';\nimport { nonNullable } from '@dxos/util';\n\nimport { SpaceCapabilities } from './capabilities';\nimport { SPACE_PLUGIN } from '../meta';\nimport { CollectionType, SpaceAction, type SpaceSettingsProps } from '../types';\nimport {\n constructObjectActions,\n constructSpaceActions,\n constructSpaceNode,\n createObjectNode,\n memoizeQuery,\n SHARED,\n SPACES,\n} from '../util';\n\nexport default (context: PluginsContext) => {\n const resolve = (typename: string) =>\n context.requestCapabilities(Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};\n\n const spacesNode = {\n id: SPACES,\n type: SPACES,\n cacheable: ['label', 'role'],\n properties: {\n label: ['spaces label', { ns: SPACE_PLUGIN }],\n testId: 'spacePlugin.spaces',\n role: 'branch',\n disabled: true,\n childrenPersistenceClass: 'echo',\n onRearrangeChildren: async (nextOrder: Space[]) => {\n const { graph } = context.requestCapability(Capabilities.AppGraph);\n const client = context.requestCapability(ClientCapabilities.Client);\n\n // NOTE: This is needed to ensure order is updated by next animation frame.\n // TODO(wittjosiah): Is there a better way to do this?\n // If not, graph should be passed as an argument to the extension.\n graph._sortEdges(\n SPACES,\n 'outbound',\n nextOrder.map(({ id }) => id),\n );\n\n const {\n objects: [spacesOrder],\n } = await client.spaces.default.db.query(Filter.schema(Expando, { key: SHARED })).run();\n if (spacesOrder) {\n spacesOrder.order = nextOrder.map(({ id }) => id);\n } else {\n log.warn('spaces order object not found');\n }\n },\n },\n };\n\n return contributes(Capabilities.AppGraphBuilder, [\n // Primary actions.\n createExtension({\n id: `${SPACE_PLUGIN}/primary-actions`,\n disposition: 'hoist',\n filter: (node): node is Node<null> => node.id === 'root',\n actions: () => [\n {\n id: SpaceAction.OpenCreateSpace._tag,\n data: async () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n await dispatch(createIntent(SpaceAction.OpenCreateSpace));\n },\n properties: {\n label: ['create space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--plus--regular',\n testId: 'spacePlugin.createSpace',\n disposition: 'item',\n },\n },\n {\n id: SpaceAction.Join._tag,\n data: async () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n await dispatch(createIntent(SpaceAction.Join));\n },\n properties: {\n label: ['join space label', { ns: SPACE_PLUGIN }],\n icon: 'ph--sign-in--regular',\n testId: 'spacePlugin.joinSpace',\n disposition: 'item',\n },\n },\n ],\n }),\n\n // Create spaces group node.\n createExtension({\n id: `${SPACE_PLUGIN}/root`,\n disposition: 'hoist',\n filter: (node): node is Node<null> => node.id === 'root',\n connector: () => [spacesNode],\n resolver: ({ id }) => (id === SPACES ? spacesNode : undefined),\n }),\n\n // Create space nodes.\n createExtension({\n id: SPACES,\n filter: (node): node is Node<null> => node.id === SPACES,\n connector: () => {\n const client = context.requestCapability(ClientCapabilities.Client);\n const spaces = toSignal(\n (onChange) => client.spaces.subscribe(() => onChange()).unsubscribe,\n () => client.spaces.get(),\n );\n\n const isReady = toSignal(\n (onChange) => client.spaces.isReady.subscribe(() => onChange()).unsubscribe,\n () => client.spaces.isReady.get(),\n );\n\n if (!spaces || !isReady) {\n return;\n }\n\n const state = context.requestCapability(SpaceCapabilities.State);\n const settings = context\n .requestCapabilities(Capabilities.SettingsStore)[0]\n ?.getStore<SpaceSettingsProps>(SPACE_PLUGIN)?.value;\n\n // TODO(wittjosiah): During client reset, accessing default space throws.\n try {\n const [spacesOrder] = memoizeQuery(client.spaces.default, Filter.schema(Expando, { key: SHARED }));\n const order: string[] = spacesOrder?.order ?? [];\n const orderMap = new Map(order.map((id, index) => [id, index]));\n return [\n ...spaces\n .filter((space) => orderMap.has(space.id))\n .sort((a, b) => orderMap.get(a.id)! - orderMap.get(b.id)!),\n ...spaces.filter((space) => !orderMap.has(space.id)),\n ]\n .filter((space) => (settings?.showHidden ? true : space.state.get() !== SpaceState.SPACE_INACTIVE))\n .map((space) =>\n constructSpaceNode({\n space,\n navigable: state.navigableCollections,\n personal: space === client.spaces.default,\n namesCache: state.spaceNames,\n resolve,\n }),\n );\n } catch {}\n },\n resolver: ({ id }) => {\n if (id.length !== SPACE_ID_LENGTH) {\n return;\n }\n\n const client = context.requestCapability(ClientCapabilities.Client);\n const spaces = toSignal(\n (onChange) => client.spaces.subscribe(() => onChange()).unsubscribe,\n () => client.spaces.get(),\n );\n\n const isReady = toSignal(\n (onChange) => client.spaces.isReady.subscribe(() => onChange()).unsubscribe,\n () => client.spaces.isReady.get(),\n );\n\n if (!spaces || !isReady) {\n return;\n }\n\n const space = spaces.find((space) => space.id === id);\n if (!space) {\n return;\n }\n\n if (space.state.get() === SpaceState.SPACE_INACTIVE) {\n return false;\n } else {\n const state = context.requestCapability(SpaceCapabilities.State);\n return constructSpaceNode({\n space,\n navigable: state.navigableCollections,\n personal: space === client.spaces.default,\n namesCache: state.spaceNames,\n resolve,\n });\n }\n },\n }),\n\n // Create space actions.\n createExtension({\n id: `${SPACE_PLUGIN}/actions`,\n filter: (node): node is Node<Space> => isSpace(node.data),\n actions: ({ node }) => {\n const space = node.data;\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const client = context.requestCapability(ClientCapabilities.Client);\n const state = context.requestCapability(SpaceCapabilities.State);\n return constructSpaceActions({\n space,\n dispatch,\n personal: space === client.spaces.default,\n migrating: state.sdkMigrationRunning[space.id],\n });\n },\n }),\n\n // Create nodes for objects in the root collection of a space.\n createExtension({\n id: `${SPACE_PLUGIN}/root-collection`,\n filter: (node): node is Node<Space> => isSpace(node.data),\n connector: ({ node }) => {\n const space = node.data;\n const spaceState = toSignal(\n (onChange) => space.state.subscribe(() => onChange()).unsubscribe,\n () => space.state.get(),\n space.id,\n );\n if (spaceState !== SpaceState.SPACE_READY) {\n return;\n }\n\n const collection = space.properties[CollectionType.typename]?.target as CollectionType | undefined;\n if (!collection) {\n return;\n }\n\n const state = context.requestCapability(SpaceCapabilities.State);\n\n return collection.objects\n .map((object) => object.target)\n .filter(nonNullable)\n .map((object) => createObjectNode({ object, space, resolve, navigable: state.navigableCollections }))\n .filter(nonNullable);\n },\n }),\n\n // Create nodes for objects in a collection or by its fully qualified id.\n createExtension({\n id: `${SPACE_PLUGIN}/objects`,\n filter: (node): node is Node<CollectionType> => node.data instanceof CollectionType,\n connector: ({ node }) => {\n const collection = node.data;\n const space = getSpace(collection);\n if (!space) {\n return;\n }\n\n const state = context.requestCapability(SpaceCapabilities.State);\n\n return collection.objects\n .map((object) => object.target)\n .filter(nonNullable)\n .map((object) => createObjectNode({ object, space, resolve, navigable: state.navigableCollections }))\n .filter(nonNullable);\n },\n resolver: ({ id }) => {\n if (id.length !== FQ_ID_LENGTH) {\n return;\n }\n\n const [spaceId, objectId] = id.split(':');\n if (spaceId.length !== SPACE_ID_LENGTH && objectId.length !== OBJECT_ID_LENGTH) {\n return;\n }\n\n const client = context.requestCapability(ClientCapabilities.Client);\n const space = client.spaces.get().find((space) => space.id === spaceId);\n if (!space) {\n return;\n }\n\n const spaceState = toSignal(\n (onChange) => space.state.subscribe(() => onChange()).unsubscribe,\n () => space.state.get(),\n space.id,\n );\n if (spaceState !== SpaceState.SPACE_READY) {\n return;\n }\n\n const [object] = memoizeQuery(space, { id: objectId });\n if (!object) {\n return;\n }\n\n if (isDeleted(object)) {\n return false;\n } else {\n const state = context.requestCapability(SpaceCapabilities.State);\n return createObjectNode({ object, space, resolve, navigable: state.navigableCollections });\n }\n },\n }),\n\n // Create collection actions and action groups.\n createExtension({\n id: `${SPACE_PLUGIN}/object-actions`,\n filter: (node): node is Node<ReactiveEchoObject<any>> => isEchoObject(node.data),\n actions: ({ node }) => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const state = context.requestCapability(SpaceCapabilities.State);\n return constructObjectActions({ node, dispatch, navigable: state.navigableCollections });\n },\n }),\n\n // Create nodes for object settings.\n createExtension({\n id: `${SPACE_PLUGIN}/settings-for-subject`,\n resolver: ({ id }) => {\n // TODO(Zan): Find util (or make one).\n if (!id.endsWith('~settings')) {\n return;\n }\n\n const type = 'orphan-settings-for-subject';\n const icon = 'ph--gear--regular';\n\n const [subjectId] = id.split('~');\n const { spaceId, objectId } = parseId(subjectId);\n const client = context.requestCapability(ClientCapabilities.Client);\n const spaces = toSignal(\n (onChange) => client.spaces.subscribe(() => onChange()).unsubscribe,\n () => client.spaces.get(),\n );\n const space = spaces?.find((space) => space.id === spaceId && space.state.get() === SpaceState.SPACE_READY);\n if (!objectId) {\n const label = space\n ? space.properties.name || ['unnamed space label', { ns: SPACE_PLUGIN }]\n : ['unnamed object settings label', { ns: SPACE_PLUGIN }];\n\n // TODO(wittjosiah): Support comments for arbitrary subjects.\n // This is to ensure that the comments panel is not stuck on an old object.\n return {\n id,\n type,\n data: null,\n properties: {\n icon,\n label,\n showResolvedThreads: false,\n object: null,\n space,\n },\n };\n }\n\n const [object] = memoizeQuery(space, { id: objectId });\n if (!object || !subjectId) {\n return;\n }\n\n const meta = resolve(getTypename(object) ?? '');\n const label = meta.label?.(object) ||\n object.name ||\n meta.placeholder || ['unnamed object settings label', { ns: SPACE_PLUGIN }];\n\n return {\n id,\n type,\n data: null,\n properties: {\n icon,\n label,\n object,\n },\n };\n },\n }),\n ]);\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Capabilities", "contributes", "createIntent", "Expando", "Filter", "FQ_ID_LENGTH", "getSpace", "isEchoObject", "isSpace", "OBJECT_ID_LENGTH", "parseId", "SPACE_ID_LENGTH", "SpaceState", "getTypename", "isDeleted", "log", "ClientCapabilities", "createExtension", "toSignal", "nonNullable", "context", "resolve", "typename", "requestCapabilities", "Capabilities", "Metadata", "find", "id", "metadata", "spacesNode", "SPACES", "type", "cacheable", "properties", "label", "ns", "SPACE_PLUGIN", "testId", "role", "disabled", "childrenPersistenceClass", "onRearrangeChildren", "nextOrder", "graph", "requestCapability", "AppGraph", "client", "ClientCapabilities", "Client", "_sortEdges", "map", "objects", "spacesOrder", "spaces", "default", "db", "query", "Filter", "schema", "Expando", "key", "SHARED", "run", "order", "log", "warn", "contributes", "AppGraphBuilder", "createExtension", "disposition", "filter", "node", "actions", "SpaceAction", "OpenCreateSpace", "_tag", "data", "dispatchPromise", "dispatch", "IntentDispatcher", "createIntent", "icon", "Join", "connector", "resolver", "undefined", "toSignal", "onChange", "subscribe", "unsubscribe", "get", "isReady", "state", "SpaceCapabilities", "State", "settings", "SettingsStore", "getStore", "value", "memoizeQuery", "orderMap", "Map", "index", "space", "has", "sort", "a", "b", "showHidden", "SpaceState", "SPACE_INACTIVE", "constructSpaceNode", "navigable", "navigableCollections", "personal", "namesCache", "spaceNames", "length", "SPACE_ID_LENGTH", "isSpace", "constructSpaceActions", "migrating", "sdkMigrationRunning", "spaceState", "SPACE_READY", "collection", "CollectionType", "target", "object", "nonNullable", "createObjectNode", "getSpace", "FQ_ID_LENGTH", "spaceId", "objectId", "split", "OBJECT_ID_LENGTH", "isDeleted", "isEchoObject", "constructObjectActions", "endsWith", "subjectId", "parseId", "name", "showResolvedThreads", "meta", "getTypename", "placeholder"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
translations_default
|
|
4
|
+
} from "./chunk-M4XTHK35.mjs";
|
|
5
|
+
import {
|
|
6
|
+
SPACES,
|
|
7
|
+
SPACE_TYPE
|
|
8
|
+
} from "./chunk-FUMGYUD3.mjs";
|
|
9
|
+
import {
|
|
10
|
+
CollectionType,
|
|
11
|
+
SpaceAction
|
|
12
|
+
} from "./chunk-CLGCKZ2D.mjs";
|
|
13
|
+
import {
|
|
14
|
+
SPACE_PLUGIN
|
|
15
|
+
} from "./chunk-7FUVU45N.mjs";
|
|
16
|
+
|
|
17
|
+
// packages/plugins/plugin-space/src/capabilities/app-graph-serializer.ts
|
|
18
|
+
import { Capabilities, contributes, createIntent } from "@dxos/app-framework";
|
|
19
|
+
import { isSpace } from "@dxos/client/echo";
|
|
20
|
+
import { create } from "@dxos/live-object";
|
|
21
|
+
var DIRECTORY_TYPE = "text/directory";
|
|
22
|
+
var app_graph_serializer_default = (context) => contributes(Capabilities.AppGraphSerializer, [
|
|
23
|
+
{
|
|
24
|
+
inputType: SPACES,
|
|
25
|
+
outputType: DIRECTORY_TYPE,
|
|
26
|
+
serialize: (node) => ({
|
|
27
|
+
name: translations_default[0]["en-US"][SPACE_PLUGIN]["spaces label"],
|
|
28
|
+
data: translations_default[0]["en-US"][SPACE_PLUGIN]["spaces label"],
|
|
29
|
+
type: DIRECTORY_TYPE
|
|
30
|
+
}),
|
|
31
|
+
deserialize: () => {
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
inputType: SPACE_TYPE,
|
|
36
|
+
outputType: DIRECTORY_TYPE,
|
|
37
|
+
serialize: (node) => ({
|
|
38
|
+
name: node.data.properties.name ?? translations_default[0]["en-US"][SPACE_PLUGIN]["unnamed space label"],
|
|
39
|
+
data: node.data.properties.name ?? translations_default[0]["en-US"][SPACE_PLUGIN]["unnamed space label"],
|
|
40
|
+
type: DIRECTORY_TYPE
|
|
41
|
+
}),
|
|
42
|
+
deserialize: async (data) => {
|
|
43
|
+
const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
|
|
44
|
+
const result = await dispatch(createIntent(SpaceAction.Create, {
|
|
45
|
+
name: data.name,
|
|
46
|
+
edgeReplication: true
|
|
47
|
+
}));
|
|
48
|
+
return result.data?.space;
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
inputType: CollectionType.typename,
|
|
53
|
+
outputType: DIRECTORY_TYPE,
|
|
54
|
+
serialize: (node) => ({
|
|
55
|
+
name: node.data.name ?? translations_default[0]["en-US"][SPACE_PLUGIN]["unnamed collection label"],
|
|
56
|
+
data: node.data.name ?? translations_default[0]["en-US"][SPACE_PLUGIN]["unnamed collection label"],
|
|
57
|
+
type: DIRECTORY_TYPE
|
|
58
|
+
}),
|
|
59
|
+
deserialize: async (data, ancestors) => {
|
|
60
|
+
const space = ancestors.find(isSpace);
|
|
61
|
+
const collection = ancestors.findLast((ancestor) => ancestor instanceof CollectionType) ?? space?.properties[CollectionType.typename]?.target;
|
|
62
|
+
if (!space || !collection) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
|
|
66
|
+
const result = await dispatch(createIntent(SpaceAction.AddObject, {
|
|
67
|
+
target: collection,
|
|
68
|
+
object: create(CollectionType, {
|
|
69
|
+
name: data.name,
|
|
70
|
+
objects: [],
|
|
71
|
+
views: {}
|
|
72
|
+
})
|
|
73
|
+
}));
|
|
74
|
+
return result.data?.object;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
]);
|
|
78
|
+
export {
|
|
79
|
+
app_graph_serializer_default as default
|
|
80
|
+
};
|
|
81
|
+
//# sourceMappingURL=app-graph-serializer-CFXS6ZE2.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/app-graph-serializer.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, type PluginsContext } from '@dxos/app-framework';\nimport { isSpace } from '@dxos/client/echo';\nimport { create } from '@dxos/live-object';\n\nimport { SPACE_PLUGIN } from '../meta';\nimport translations from '../translations';\nimport { CollectionType, SpaceAction } from '../types';\nimport { SPACES, SPACE_TYPE } from '../util';\n\n// https://stackoverflow.com/a/19016910\nconst DIRECTORY_TYPE = 'text/directory';\n\nexport default (context: PluginsContext) =>\n contributes(Capabilities.AppGraphSerializer, [\n {\n inputType: SPACES,\n outputType: DIRECTORY_TYPE,\n serialize: (node) => ({\n name: translations[0]['en-US'][SPACE_PLUGIN]['spaces label'],\n data: translations[0]['en-US'][SPACE_PLUGIN]['spaces label'],\n type: DIRECTORY_TYPE,\n }),\n deserialize: () => {\n // No-op.\n },\n },\n {\n inputType: SPACE_TYPE,\n outputType: DIRECTORY_TYPE,\n serialize: (node) => ({\n name: node.data.properties.name ?? translations[0]['en-US'][SPACE_PLUGIN]['unnamed space label'],\n data: node.data.properties.name ?? translations[0]['en-US'][SPACE_PLUGIN]['unnamed space label'],\n type: DIRECTORY_TYPE,\n }),\n deserialize: async (data) => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const result = await dispatch(createIntent(SpaceAction.Create, { name: data.name, edgeReplication: true }));\n return result.data?.space;\n },\n },\n {\n inputType: CollectionType.typename,\n outputType: DIRECTORY_TYPE,\n serialize: (node) => ({\n name: node.data.name ?? translations[0]['en-US'][SPACE_PLUGIN]['unnamed collection label'],\n data: node.data.name ?? translations[0]['en-US'][SPACE_PLUGIN]['unnamed collection label'],\n type: DIRECTORY_TYPE,\n }),\n deserialize: async (data, ancestors) => {\n const space = ancestors.find(isSpace);\n const collection =\n ancestors.findLast((ancestor) => ancestor instanceof CollectionType) ??\n space?.properties[CollectionType.typename]?.target;\n if (!space || !collection) {\n return;\n }\n\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const result = await dispatch(\n createIntent(SpaceAction.AddObject, {\n target: collection,\n object: create(CollectionType, { name: data.name, objects: [], views: {} }),\n }),\n );\n\n return result.data?.object;\n },\n },\n ]);\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;AAIA,SAASA,cAAcC,aAAaC,oBAAyC;AAC7E,SAASC,eAAe;AACxB,SAASC,cAAc;AAQvB,IAAMC,iBAAiB;AAEvB,IAAA,+BAAe,CAACC,YACdC,YAAYC,aAAaC,oBAAoB;EAC3C;IACEC,WAAWC;IACXC,YAAYP;IACZQ,WAAW,CAACC,UAAU;MACpBC,MAAMC,qBAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,cAAA;MAC7CC,MAAMF,qBAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,cAAA;MAC7CE,MAAMd;IACR;IACAe,aAAa,MAAA;IAEb;EACF;EACA;IACEV,WAAWW;IACXT,YAAYP;IACZQ,WAAW,CAACC,UAAU;MACpBC,MAAMD,KAAKI,KAAKI,WAAWP,QAAQC,qBAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,qBAAA;MAC1EC,MAAMJ,KAAKI,KAAKI,WAAWP,QAAQC,qBAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,qBAAA;MAC1EE,MAAMd;IACR;IACAe,aAAa,OAAOF,SAAAA;AAClB,YAAM,EAAEK,iBAAiBC,SAAQ,IAAKlB,QAAQmB,kBAAkBjB,aAAakB,gBAAgB;AAC7F,YAAMC,SAAS,MAAMH,SAASI,aAAaC,YAAYC,QAAQ;QAAEf,MAAMG,KAAKH;QAAMgB,iBAAiB;MAAK,CAAA,CAAA;AACxG,aAAOJ,OAAOT,MAAMc;IACtB;EACF;EACA;IACEtB,WAAWuB,eAAeC;IAC1BtB,YAAYP;IACZQ,WAAW,CAACC,UAAU;MACpBC,MAAMD,KAAKI,KAAKH,QAAQC,qBAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,0BAAA;MAC/DC,MAAMJ,KAAKI,KAAKH,QAAQC,qBAAa,CAAA,EAAG,OAAA,EAASC,YAAAA,EAAc,0BAAA;MAC/DE,MAAMd;IACR;IACAe,aAAa,OAAOF,MAAMiB,cAAAA;AACxB,YAAMH,QAAQG,UAAUC,KAAKC,OAAAA;AAC7B,YAAMC,aACJH,UAAUI,SAAS,CAACC,aAAaA,oBAAoBP,cAAAA,KACrDD,OAAOV,WAAWW,eAAeC,QAAQ,GAAGO;AAC9C,UAAI,CAACT,SAAS,CAACM,YAAY;AACzB;MACF;AAEA,YAAM,EAAEf,iBAAiBC,SAAQ,IAAKlB,QAAQmB,kBAAkBjB,aAAakB,gBAAgB;AAC7F,YAAMC,SAAS,MAAMH,SACnBI,aAAaC,YAAYa,WAAW;QAClCD,QAAQH;QACRK,QAAQC,OAAOX,gBAAgB;UAAElB,MAAMG,KAAKH;UAAM8B,SAAS,CAAA;UAAIC,OAAO,CAAC;QAAE,CAAA;MAC3E,CAAA,CAAA;AAGF,aAAOnB,OAAOT,MAAMyB;IACtB;EACF;CACD;",
|
|
6
|
+
"names": ["Capabilities", "contributes", "createIntent", "isSpace", "create", "DIRECTORY_TYPE", "context", "contributes", "Capabilities", "AppGraphSerializer", "inputType", "SPACES", "outputType", "serialize", "node", "name", "translations", "SPACE_PLUGIN", "data", "type", "deserialize", "SPACE_TYPE", "properties", "dispatchPromise", "dispatch", "requestCapability", "IntentDispatcher", "result", "createIntent", "SpaceAction", "Create", "edgeReplication", "space", "CollectionType", "typename", "ancestors", "find", "isSpace", "collection", "findLast", "ancestor", "target", "AddObject", "object", "create", "objects", "views"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
SPACE_PLUGIN
|
|
4
|
+
} from "./chunk-7FUVU45N.mjs";
|
|
5
|
+
|
|
6
|
+
// packages/plugins/plugin-space/src/capabilities/capabilities.ts
|
|
7
|
+
import { defineCapability } from "@dxos/app-framework";
|
|
8
|
+
var SpaceCapabilities;
|
|
9
|
+
(function(SpaceCapabilities2) {
|
|
10
|
+
SpaceCapabilities2.State = defineCapability(`${SPACE_PLUGIN}/capability/state`);
|
|
11
|
+
SpaceCapabilities2.MutableState = defineCapability(`${SPACE_PLUGIN}/capability/state`);
|
|
12
|
+
})(SpaceCapabilities || (SpaceCapabilities = {}));
|
|
13
|
+
var ThreadCapabilities;
|
|
14
|
+
(function(ThreadCapabilities2) {
|
|
15
|
+
ThreadCapabilities2.Thread = defineCapability(`${SPACE_PLUGIN}/capability/thread`);
|
|
16
|
+
})(ThreadCapabilities || (ThreadCapabilities = {}));
|
|
17
|
+
|
|
18
|
+
export {
|
|
19
|
+
SpaceCapabilities,
|
|
20
|
+
ThreadCapabilities
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=chunk-375RB3CZ.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/capabilities.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { defineCapability } from '@dxos/app-framework';\nimport { type DeepReadonly } from '@dxos/util';\n\nimport { SPACE_PLUGIN } from '../meta';\nimport { type PluginState } from '../types';\n\nexport namespace SpaceCapabilities {\n export const State = defineCapability<DeepReadonly<PluginState>>(`${SPACE_PLUGIN}/capability/state`);\n export const MutableState = defineCapability<PluginState>(`${SPACE_PLUGIN}/capability/state`);\n}\n\n// TODO(wittjosiah): Factor out.\nexport namespace ThreadCapabilities {\n type ThreadCapability<T = any> = {\n predicate: (obj: any) => obj is T;\n createSort: (obj: T) => (anchorA: string | undefined, anchorB: string | undefined) => number;\n };\n export const Thread = defineCapability<ThreadCapability>(`${SPACE_PLUGIN}/capability/thread`);\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;AAIA,SAASA,wBAAwB;;UAMhBC,oBAAAA;qBACFC,QAAQC,iBAA4C,GAAGC,YAAAA,mBAA+B;qBACtFC,eAAeF,iBAA8B,GAAGC,YAAAA,mBAA+B;AAC9F,GAHiBH,sBAAAA,oBAAAA,CAAAA,EAAAA;;UAMAK,qBAAAA;sBAKFC,SAASJ,iBAAmC,GAAGC,YAAAA,oBAAgC;AAC9F,GANiBE,uBAAAA,qBAAAA,CAAAA,EAAAA;",
|
|
6
|
+
"names": ["defineCapability", "SpaceCapabilities", "State", "defineCapability", "SPACE_PLUGIN", "MutableState", "ThreadCapabilities", "Thread"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
|
+
|
|
3
|
+
// packages/plugins/plugin-space/src/meta.ts
|
|
4
|
+
var SPACE_PLUGIN = "dxos.org/plugin/space";
|
|
5
|
+
var meta = {
|
|
6
|
+
id: SPACE_PLUGIN,
|
|
7
|
+
name: "Spaces"
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export {
|
|
11
|
+
SPACE_PLUGIN,
|
|
12
|
+
meta
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=chunk-7FUVU45N.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/meta.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const SPACE_PLUGIN = 'dxos.org/plugin/space';\n\nexport const meta = {\n id: SPACE_PLUGIN,\n name: 'Spaces',\n} satisfies PluginMeta;\n"],
|
|
5
|
+
"mappings": ";;;AAMO,IAAMA,eAAe;AAErB,IAAMC,OAAO;EAClBC,IAAIF;EACJG,MAAM;AACR;",
|
|
6
|
+
"names": ["SPACE_PLUGIN", "meta", "id", "name"]
|
|
7
|
+
}
|