@dxos/plugin-space 0.7.5-labs.c0e040f → 0.7.5-labs.d199c0f
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-GSS3V7IN.mjs → app-graph-builder-MGK5HWPZ.mjs} +16 -95
- package/dist/lib/browser/app-graph-builder-MGK5HWPZ.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-serializer-QDXM5M6K.mjs → app-graph-serializer-FOWFLYGU.mjs} +4 -4
- package/dist/lib/browser/{chunk-ZL5ZFGBK.mjs → chunk-23RVI5FZ.mjs} +15 -5
- package/dist/lib/browser/chunk-23RVI5FZ.mjs.map +7 -0
- package/dist/lib/browser/{chunk-RLZQJD47.mjs → chunk-NU7WDVGN.mjs} +2 -1
- package/dist/lib/browser/chunk-NU7WDVGN.mjs.map +7 -0
- package/dist/lib/browser/{chunk-DIBLC24B.mjs → chunk-S6B7627U.mjs} +293 -213
- package/dist/lib/browser/chunk-S6B7627U.mjs.map +7 -0
- package/dist/lib/browser/{chunk-SDK7RZI3.mjs → chunk-UDWHTKB5.mjs} +6 -3
- package/dist/lib/browser/chunk-UDWHTKB5.mjs.map +7 -0
- package/dist/lib/browser/{chunk-XPZ6IIXF.mjs → chunk-ULA2UQJ4.mjs} +15 -1
- package/dist/lib/browser/chunk-ULA2UQJ4.mjs.map +7 -0
- package/dist/lib/browser/{identity-created-25TK5XNO.mjs → identity-created-FYGS6TBH.mjs} +2 -2
- package/dist/lib/browser/index.mjs +53 -19
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-LNTCXZ57.mjs → intent-resolver-QVR4MSJV.mjs} +26 -8
- package/dist/lib/browser/intent-resolver-QVR4MSJV.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-root-Q7JJDCPB.mjs → react-root-IP2ZB245.mjs} +5 -5
- package/dist/lib/browser/{react-surface-BDMYLARO.mjs → react-surface-BT3EHB6V.mjs} +16 -22
- package/dist/lib/browser/react-surface-BT3EHB6V.mjs.map +7 -0
- package/dist/lib/browser/schema-5W3DSY2E.mjs +24 -0
- package/dist/lib/browser/schema-5W3DSY2E.mjs.map +7 -0
- package/dist/lib/browser/{settings-K4JPYYEM.mjs → settings-PHPCXX33.mjs} +2 -2
- package/dist/lib/browser/{spaces-ready-THYJEJYZ.mjs → spaces-ready-K47RR7N2.mjs} +4 -4
- package/dist/lib/browser/{state-6DCY5YJP.mjs → state-INJ63O57.mjs} +2 -2
- package/dist/lib/browser/types/index.mjs +5 -3
- package/dist/lib/node/{app-graph-builder-V3RCGDV7.cjs → app-graph-builder-ZIUBXRPA.cjs} +43 -122
- package/dist/lib/node/app-graph-builder-ZIUBXRPA.cjs.map +7 -0
- package/dist/lib/node/{app-graph-serializer-H4UACG57.cjs → app-graph-serializer-VQOGHKXL.cjs} +20 -20
- package/dist/lib/node/{chunk-4AZ2DD4G.cjs → chunk-N2FS7PRA.cjs} +354 -273
- package/dist/lib/node/chunk-N2FS7PRA.cjs.map +7 -0
- package/dist/lib/node/{chunk-SYVPVU3K.cjs → chunk-OVGKWJOC.cjs} +50 -40
- package/dist/lib/node/chunk-OVGKWJOC.cjs.map +7 -0
- package/dist/lib/node/{chunk-D6BFKOXY.cjs → chunk-U6DYXAR3.cjs} +10 -7
- package/dist/lib/node/chunk-U6DYXAR3.cjs.map +7 -0
- package/dist/lib/node/{chunk-6MEOP3DH.cjs → chunk-WAJKBO3J.cjs} +21 -6
- package/dist/lib/node/chunk-WAJKBO3J.cjs.map +7 -0
- package/dist/lib/node/{chunk-UX3U4RU2.cjs → chunk-YZKNRFHU.cjs} +5 -4
- package/dist/lib/node/chunk-YZKNRFHU.cjs.map +7 -0
- package/dist/lib/node/{identity-created-7G5U7R36.cjs → identity-created-AXI64BLE.cjs} +6 -6
- package/dist/lib/node/index.cjs +106 -73
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/{intent-resolver-CDE4M3TW.cjs → intent-resolver-MLENGECT.cjs} +76 -59
- package/dist/lib/node/intent-resolver-MLENGECT.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-root-JN6AIHMS.cjs → react-root-3OX5Z5CX.cjs} +10 -10
- package/dist/lib/node/{react-surface-XSK2QEQV.cjs → react-surface-5NYCMXSM.cjs} +49 -57
- package/dist/lib/node/react-surface-5NYCMXSM.cjs.map +7 -0
- package/dist/lib/node/schema-YN7WVFRX.cjs +40 -0
- package/dist/lib/node/schema-YN7WVFRX.cjs.map +7 -0
- package/dist/lib/node/{settings-TEELGWS4.cjs → settings-5QYFWNH7.cjs} +6 -6
- package/dist/lib/node/{spaces-ready-L4MJTFQ6.cjs → spaces-ready-FQNAKR7G.cjs} +13 -13
- package/dist/lib/node/{state-WPZC4JXB.cjs → state-57UE3DYE.cjs} +6 -6
- package/dist/lib/node/types/index.cjs +18 -16
- package/dist/lib/node/types/index.cjs.map +2 -2
- package/dist/lib/node-esm/{app-graph-builder-VFHK7OQI.mjs → app-graph-builder-TERVM2SL.mjs} +16 -95
- package/dist/lib/node-esm/app-graph-builder-TERVM2SL.mjs.map +7 -0
- package/dist/lib/node-esm/{app-graph-serializer-PIPJVXYZ.mjs → app-graph-serializer-GZRSWHEN.mjs} +4 -4
- package/dist/lib/node-esm/{chunk-4UX5WGKJ.mjs → chunk-2TQ2AJEZ.mjs} +6 -3
- package/dist/lib/node-esm/chunk-2TQ2AJEZ.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-LGL4A5B5.mjs → chunk-6RSVVEPS.mjs} +2 -1
- package/dist/lib/node-esm/chunk-6RSVVEPS.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-FTVEA5LO.mjs → chunk-DIKRH2IK.mjs} +293 -213
- package/dist/lib/node-esm/chunk-DIKRH2IK.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-RCZRYXI3.mjs → chunk-PGH5L7MV.mjs} +15 -5
- package/dist/lib/node-esm/chunk-PGH5L7MV.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-AAQRELDK.mjs → chunk-TRNZQEEN.mjs} +15 -1
- package/dist/lib/node-esm/chunk-TRNZQEEN.mjs.map +7 -0
- package/dist/lib/node-esm/{identity-created-7THGZ7EW.mjs → identity-created-3CGEXNPO.mjs} +2 -2
- package/dist/lib/node-esm/index.mjs +53 -19
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-7L3GJAZE.mjs → intent-resolver-BLW4RM6X.mjs} +26 -8
- package/dist/lib/node-esm/intent-resolver-BLW4RM6X.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-root-BNA6PBFZ.mjs → react-root-7XXGP56B.mjs} +5 -5
- package/dist/lib/node-esm/{react-surface-FTI2LQNL.mjs → react-surface-R2ECJSFB.mjs} +16 -22
- package/dist/lib/node-esm/react-surface-R2ECJSFB.mjs.map +7 -0
- package/dist/lib/node-esm/schema-LOR2EVGY.mjs +25 -0
- package/dist/lib/node-esm/schema-LOR2EVGY.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-KXYUZBLN.mjs → settings-H6MXTEQM.mjs} +2 -2
- package/dist/lib/node-esm/{spaces-ready-ZC2R73H3.mjs → spaces-ready-HKAQG5SA.mjs} +4 -4
- package/dist/lib/node-esm/{state-5GH2D5U4.mjs → state-VYA6OFHD.mjs} +2 -2
- package/dist/lib/node-esm/types/index.mjs +5 -3
- package/dist/types/src/SpacePlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts +88 -88
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/capabilities.d.ts +2 -1
- package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +112 -111
- 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.d.ts +4 -0
- package/dist/types/src/capabilities/schema.d.ts.map +1 -0
- package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts +1 -2
- package/dist/types/src/components/AdvancedObjectSettings/AdvancedObjectSettings.d.ts.map +1 -1
- package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts +1 -2
- package/dist/types/src/components/AdvancedObjectSettings/ForeignKeys.d.ts.map +1 -1
- package/dist/types/src/components/AwaitingObject.d.ts +1 -2
- package/dist/types/src/components/AwaitingObject.d.ts.map +1 -1
- package/dist/types/src/components/BaseObjectSettings.d.ts +1 -2
- package/dist/types/src/components/BaseObjectSettings.d.ts.map +1 -1
- package/dist/types/src/components/CollectionMain.d.ts +1 -2
- package/dist/types/src/components/CollectionMain.d.ts.map +1 -1
- package/dist/types/src/components/CollectionSection.d.ts +1 -2
- package/dist/types/src/components/CollectionSection.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts +2 -4
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +5 -7
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts +1 -2
- package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
- package/dist/types/src/components/JoinDialog.d.ts +1 -2
- package/dist/types/src/components/JoinDialog.d.ts.map +1 -1
- package/dist/types/src/components/MenuFooter.d.ts +1 -2
- package/dist/types/src/components/MenuFooter.d.ts.map +1 -1
- package/dist/types/src/components/PersistenceStatus.d.ts +1 -2
- package/dist/types/src/components/PersistenceStatus.d.ts.map +1 -1
- package/dist/types/src/components/PopoverAddSpace.d.ts +3 -0
- package/dist/types/src/components/PopoverAddSpace.d.ts.map +1 -0
- package/dist/types/src/components/PopoverRenameObject.d.ts +1 -2
- package/dist/types/src/components/PopoverRenameObject.d.ts.map +1 -1
- package/dist/types/src/components/PopoverRenameSpace.d.ts +1 -2
- package/dist/types/src/components/PopoverRenameSpace.d.ts.map +1 -1
- package/dist/types/src/components/ShareSpaceButton.d.ts +2 -3
- package/dist/types/src/components/ShareSpaceButton.d.ts.map +1 -1
- package/dist/types/src/components/SpacePluginSettings.d.ts +1 -2
- package/dist/types/src/components/SpacePluginSettings.d.ts.map +1 -1
- package/dist/types/src/components/SpacePresence.d.ts +4 -5
- package/dist/types/src/components/SpacePresence.d.ts.map +1 -1
- package/dist/types/src/components/SpacePresence.stories.d.ts +2 -3
- package/dist/types/src/components/SpacePresence.stories.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts +1 -2
- package/dist/types/src/components/SpaceSettings/SpaceSettingsDialog.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts +1 -2
- package/dist/types/src/components/SpaceSettings/SpaceSettingsPanel.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/InlineSyncStatus.d.ts +1 -2
- package/dist/types/src/components/SyncStatus/InlineSyncStatus.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/Space.d.ts +2 -3
- package/dist/types/src/components/SyncStatus/Space.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/SyncStatus.d.ts +3 -4
- package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +1 -0
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/events.d.ts +4 -0
- package/dist/types/src/events.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +9 -0
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/collection.d.ts +2 -2
- package/dist/types/src/types/thread.d.ts +34 -34
- package/dist/types/src/types/types.d.ts +35 -10
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +2 -2
- package/dist/types/src/util.d.ts.map +1 -1
- package/package.json +40 -39
- package/src/SpacePlugin.tsx +35 -11
- package/src/capabilities/app-graph-builder.ts +10 -84
- package/src/capabilities/capabilities.ts +3 -1
- package/src/capabilities/index.ts +1 -0
- package/src/capabilities/intent-resolver.ts +18 -0
- package/src/capabilities/react-surface.tsx +12 -28
- package/src/capabilities/schema.ts +27 -0
- package/src/components/CreateDialog/CreateObjectDialog.stories.tsx +1 -3
- package/src/components/CreateDialog/CreateObjectDialog.tsx +29 -21
- package/src/components/CreateDialog/CreateObjectPanel.tsx +39 -41
- package/src/components/PopoverAddSpace.tsx +46 -0
- package/src/components/SpaceSettings/SpaceSettingsPanel.tsx +22 -7
- package/src/components/index.ts +1 -0
- package/src/events.ts +6 -0
- package/src/index.ts +1 -1
- package/src/translations.ts +3 -0
- package/src/types/types.ts +21 -1
- package/src/util.tsx +7 -2
- package/dist/lib/browser/app-graph-builder-GSS3V7IN.mjs.map +0 -7
- package/dist/lib/browser/chunk-DIBLC24B.mjs.map +0 -7
- package/dist/lib/browser/chunk-RLZQJD47.mjs.map +0 -7
- package/dist/lib/browser/chunk-SDK7RZI3.mjs.map +0 -7
- package/dist/lib/browser/chunk-XPZ6IIXF.mjs.map +0 -7
- package/dist/lib/browser/chunk-ZL5ZFGBK.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-LNTCXZ57.mjs.map +0 -7
- package/dist/lib/browser/react-surface-BDMYLARO.mjs.map +0 -7
- package/dist/lib/node/app-graph-builder-V3RCGDV7.cjs.map +0 -7
- package/dist/lib/node/chunk-4AZ2DD4G.cjs.map +0 -7
- package/dist/lib/node/chunk-6MEOP3DH.cjs.map +0 -7
- package/dist/lib/node/chunk-D6BFKOXY.cjs.map +0 -7
- package/dist/lib/node/chunk-SYVPVU3K.cjs.map +0 -7
- package/dist/lib/node/chunk-UX3U4RU2.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-CDE4M3TW.cjs.map +0 -7
- package/dist/lib/node/react-surface-XSK2QEQV.cjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-VFHK7OQI.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-4UX5WGKJ.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-AAQRELDK.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-FTVEA5LO.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-LGL4A5B5.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-RCZRYXI3.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-7L3GJAZE.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-FTI2LQNL.mjs.map +0 -7
- /package/dist/lib/browser/{app-graph-serializer-QDXM5M6K.mjs.map → app-graph-serializer-FOWFLYGU.mjs.map} +0 -0
- /package/dist/lib/browser/{identity-created-25TK5XNO.mjs.map → identity-created-FYGS6TBH.mjs.map} +0 -0
- /package/dist/lib/browser/{react-root-Q7JJDCPB.mjs.map → react-root-IP2ZB245.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-K4JPYYEM.mjs.map → settings-PHPCXX33.mjs.map} +0 -0
- /package/dist/lib/browser/{spaces-ready-THYJEJYZ.mjs.map → spaces-ready-K47RR7N2.mjs.map} +0 -0
- /package/dist/lib/browser/{state-6DCY5YJP.mjs.map → state-INJ63O57.mjs.map} +0 -0
- /package/dist/lib/node/{app-graph-serializer-H4UACG57.cjs.map → app-graph-serializer-VQOGHKXL.cjs.map} +0 -0
- /package/dist/lib/node/{identity-created-7G5U7R36.cjs.map → identity-created-AXI64BLE.cjs.map} +0 -0
- /package/dist/lib/node/{react-root-JN6AIHMS.cjs.map → react-root-3OX5Z5CX.cjs.map} +0 -0
- /package/dist/lib/node/{settings-TEELGWS4.cjs.map → settings-5QYFWNH7.cjs.map} +0 -0
- /package/dist/lib/node/{spaces-ready-L4MJTFQ6.cjs.map → spaces-ready-FQNAKR7G.cjs.map} +0 -0
- /package/dist/lib/node/{state-WPZC4JXB.cjs.map → state-57UE3DYE.cjs.map} +0 -0
- /package/dist/lib/node-esm/{app-graph-serializer-PIPJVXYZ.mjs.map → app-graph-serializer-GZRSWHEN.mjs.map} +0 -0
- /package/dist/lib/node-esm/{identity-created-7THGZ7EW.mjs.map → identity-created-3CGEXNPO.mjs.map} +0 -0
- /package/dist/lib/node-esm/{react-root-BNA6PBFZ.mjs.map → react-root-7XXGP56B.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-KXYUZBLN.mjs.map → settings-H6MXTEQM.mjs.map} +0 -0
- /package/dist/lib/node-esm/{spaces-ready-ZC2R73H3.mjs.map → spaces-ready-HKAQG5SA.mjs.map} +0 -0
- /package/dist/lib/node-esm/{state-5GH2D5U4.mjs.map → state-VYA6OFHD.mjs.map} +0 -0
|
@@ -26,8 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var chunk_N2FS7PRA_exports = {};
|
|
30
|
+
__export(chunk_N2FS7PRA_exports, {
|
|
31
31
|
AdvancedObjectSettings: () => AdvancedObjectSettings,
|
|
32
32
|
AppGraphBuilder: () => AppGraphBuilder,
|
|
33
33
|
AppGraphSerializer: () => AppGraphSerializer,
|
|
@@ -46,14 +46,17 @@ __export(chunk_4AZ2DD4G_exports, {
|
|
|
46
46
|
JOIN_DIALOG: () => JOIN_DIALOG,
|
|
47
47
|
JoinDialog: () => JoinDialog,
|
|
48
48
|
MenuFooter: () => MenuFooter,
|
|
49
|
+
POPOVER_ADD_SPACE: () => POPOVER_ADD_SPACE,
|
|
49
50
|
POPOVER_RENAME_OBJECT: () => POPOVER_RENAME_OBJECT,
|
|
50
51
|
POPOVER_RENAME_SPACE: () => POPOVER_RENAME_SPACE,
|
|
51
52
|
PersistenceStatus: () => PersistenceStatus,
|
|
53
|
+
PopoverAddSpace: () => PopoverAddSpace,
|
|
52
54
|
PopoverRenameObject: () => PopoverRenameObject,
|
|
53
55
|
PopoverRenameSpace: () => PopoverRenameSpace,
|
|
54
56
|
ReactRoot: () => ReactRoot,
|
|
55
57
|
ReactSurface: () => ReactSurface,
|
|
56
58
|
SPACE_SETTINGS_DIALOG: () => SPACE_SETTINGS_DIALOG,
|
|
59
|
+
Schema: () => Schema,
|
|
57
60
|
ShareSpaceButton: () => ShareSpaceButton,
|
|
58
61
|
ShareSpaceButtonImpl: () => ShareSpaceButtonImpl,
|
|
59
62
|
SmallPresence: () => SmallPresence,
|
|
@@ -69,10 +72,10 @@ __export(chunk_4AZ2DD4G_exports, {
|
|
|
69
72
|
SyncStatusDetail: () => SyncStatusDetail,
|
|
70
73
|
SyncStatusIndicator: () => SyncStatusIndicator
|
|
71
74
|
});
|
|
72
|
-
module.exports = __toCommonJS(
|
|
73
|
-
var
|
|
74
|
-
var
|
|
75
|
-
var
|
|
75
|
+
module.exports = __toCommonJS(chunk_N2FS7PRA_exports);
|
|
76
|
+
var import_chunk_YZKNRFHU = require("./chunk-YZKNRFHU.cjs");
|
|
77
|
+
var import_chunk_OVGKWJOC = require("./chunk-OVGKWJOC.cjs");
|
|
78
|
+
var import_chunk_WAJKBO3J = require("./chunk-WAJKBO3J.cjs");
|
|
76
79
|
var import_chunk_WZR6OAN3 = require("./chunk-WZR6OAN3.cjs");
|
|
77
80
|
var import_react = __toESM(require("react"));
|
|
78
81
|
var import_echo_schema = require("@dxos/echo-schema");
|
|
@@ -93,20 +96,23 @@ var import_react_ui4 = require("@dxos/react-ui");
|
|
|
93
96
|
var import_effect = require("effect");
|
|
94
97
|
var import_react6 = __toESM(require("react"));
|
|
95
98
|
var import_app_framework2 = require("@dxos/app-framework");
|
|
99
|
+
var import_invariant = require("@dxos/invariant");
|
|
96
100
|
var import_react_client2 = require("@dxos/react-client");
|
|
97
101
|
var import_echo3 = require("@dxos/react-client/echo");
|
|
98
102
|
var import_react_ui5 = require("@dxos/react-ui");
|
|
99
103
|
var import_react7 = __toESM(require("react"));
|
|
100
104
|
var import_app_framework3 = require("@dxos/app-framework");
|
|
101
105
|
var import_echo_schema2 = require("@dxos/echo-schema");
|
|
106
|
+
var import_invariant2 = require("@dxos/invariant");
|
|
102
107
|
var import_react_ui6 = require("@dxos/react-ui");
|
|
103
108
|
var import_react_ui_form2 = require("@dxos/react-ui-form");
|
|
104
109
|
var import_react_ui_searchlist = require("@dxos/react-ui-searchlist");
|
|
105
110
|
var import_react_ui_theme2 = require("@dxos/react-ui-theme");
|
|
106
111
|
var import_util = require("@dxos/util");
|
|
112
|
+
var import_app_framework4 = require("@dxos/app-framework");
|
|
107
113
|
var import_effect2 = require("effect");
|
|
108
114
|
var import_react8 = __toESM(require("react"));
|
|
109
|
-
var
|
|
115
|
+
var import_app_framework5 = require("@dxos/app-framework");
|
|
110
116
|
var import_react_ui7 = require("@dxos/react-ui");
|
|
111
117
|
var import_react_ui_form3 = require("@dxos/react-ui-form");
|
|
112
118
|
var import_react9 = __toESM(require("react"));
|
|
@@ -115,7 +121,7 @@ var import_react_ui_theme3 = require("@dxos/react-ui-theme");
|
|
|
115
121
|
var import_react10 = __toESM(require("react"));
|
|
116
122
|
var import_react_ui9 = require("@dxos/react-ui");
|
|
117
123
|
var import_react11 = __toESM(require("react"));
|
|
118
|
-
var
|
|
124
|
+
var import_app_framework6 = require("@dxos/app-framework");
|
|
119
125
|
var import_log = require("@dxos/log");
|
|
120
126
|
var import_types = require("@dxos/plugin-observability/types");
|
|
121
127
|
var import_react_client3 = require("@dxos/react-client");
|
|
@@ -132,61 +138,63 @@ var import_async = require("@dxos/async");
|
|
|
132
138
|
var import_react_ui12 = require("@dxos/react-ui");
|
|
133
139
|
var import_react_ui_theme4 = require("@dxos/react-ui-theme");
|
|
134
140
|
var import_react17 = __toESM(require("react"));
|
|
135
|
-
var
|
|
141
|
+
var import_app_framework7 = require("@dxos/app-framework");
|
|
136
142
|
var import_react_ui13 = require("@dxos/react-ui");
|
|
137
143
|
var import_react18 = __toESM(require("react"));
|
|
144
|
+
var import_log2 = require("@dxos/log");
|
|
138
145
|
var import_react_ui14 = require("@dxos/react-ui");
|
|
139
146
|
var import_react19 = __toESM(require("react"));
|
|
140
|
-
var import_app_framework6 = require("@dxos/app-framework");
|
|
141
147
|
var import_react_ui15 = require("@dxos/react-ui");
|
|
142
148
|
var import_react20 = __toESM(require("react"));
|
|
143
|
-
var
|
|
149
|
+
var import_app_framework8 = require("@dxos/app-framework");
|
|
150
|
+
var import_react_ui16 = require("@dxos/react-ui");
|
|
151
|
+
var import_react21 = __toESM(require("react"));
|
|
152
|
+
var import_app_framework9 = require("@dxos/app-framework");
|
|
144
153
|
var import_display_name = require("@dxos/display-name");
|
|
145
154
|
var import_react_client5 = require("@dxos/react-client");
|
|
146
155
|
var import_echo5 = require("@dxos/react-client/echo");
|
|
147
156
|
var import_halo = require("@dxos/react-client/halo");
|
|
148
|
-
var
|
|
157
|
+
var import_react_ui17 = require("@dxos/react-ui");
|
|
149
158
|
var import_react_ui_attention = require("@dxos/react-ui-attention");
|
|
150
159
|
var import_util2 = require("@dxos/util");
|
|
151
|
-
var
|
|
152
|
-
var import_react21 = require("react");
|
|
153
|
-
var import_react22 = __toESM(require("react"));
|
|
154
|
-
var import_react_ui17 = require("@dxos/react-ui");
|
|
155
|
-
var import_react_ui_form4 = require("@dxos/react-ui-form");
|
|
160
|
+
var import_react22 = require("react");
|
|
156
161
|
var import_react23 = __toESM(require("react"));
|
|
162
|
+
var import_react_ui18 = require("@dxos/react-ui");
|
|
163
|
+
var import_react_ui_form4 = require("@dxos/react-ui-form");
|
|
164
|
+
var import_react24 = __toESM(require("react"));
|
|
157
165
|
var import_log3 = require("@dxos/log");
|
|
158
166
|
var import_metadata = require("@dxos/protocols/proto/dxos/echo/metadata");
|
|
159
167
|
var import_react_client6 = require("@dxos/react-client");
|
|
160
|
-
var
|
|
168
|
+
var import_react_ui19 = require("@dxos/react-ui");
|
|
161
169
|
var import_react_ui_form5 = require("@dxos/react-ui-form");
|
|
162
170
|
var import_react_ui_pickers = require("@dxos/react-ui-pickers");
|
|
163
|
-
var
|
|
164
|
-
var
|
|
171
|
+
var import_react25 = __toESM(require("react"));
|
|
172
|
+
var import_app_framework10 = require("@dxos/app-framework");
|
|
165
173
|
var import_react_client7 = require("@dxos/react-client");
|
|
166
|
-
var
|
|
174
|
+
var import_react_ui20 = require("@dxos/react-ui");
|
|
167
175
|
var import_react_ui_tabs = require("@dxos/react-ui-tabs");
|
|
168
|
-
var
|
|
169
|
-
var
|
|
170
|
-
var
|
|
176
|
+
var import_react26 = require("@dxos/shell/react");
|
|
177
|
+
var import_react27 = __toESM(require("react"));
|
|
178
|
+
var import_app_framework11 = require("@dxos/app-framework");
|
|
171
179
|
var import_services = require("@dxos/protocols/proto/dxos/client/services");
|
|
172
180
|
var import_metadata2 = require("@dxos/protocols/proto/dxos/echo/metadata");
|
|
173
181
|
var import_react_client8 = require("@dxos/react-client");
|
|
174
|
-
var
|
|
182
|
+
var import_react_ui21 = require("@dxos/react-ui");
|
|
175
183
|
var import_react_ui_attention2 = require("@dxos/react-ui-attention");
|
|
176
|
-
var
|
|
184
|
+
var import_react28 = require("react");
|
|
177
185
|
var import_context = require("@dxos/context");
|
|
178
186
|
var import_protocols = require("@dxos/protocols");
|
|
179
187
|
var import_react_client9 = require("@dxos/react-client");
|
|
180
|
-
var
|
|
188
|
+
var import_react29 = __toESM(require("react"));
|
|
181
189
|
var import_plugin_status_bar = require("@dxos/plugin-status-bar");
|
|
182
190
|
var import_react_client10 = require("@dxos/react-client");
|
|
183
|
-
var
|
|
191
|
+
var import_react_ui22 = require("@dxos/react-ui");
|
|
184
192
|
var import_react_ui_syntax_highlighter = require("@dxos/react-ui-syntax-highlighter");
|
|
185
193
|
var import_react_ui_theme5 = require("@dxos/react-ui-theme");
|
|
186
|
-
var
|
|
194
|
+
var import_react30 = __toESM(require("react"));
|
|
187
195
|
var import_react_client11 = require("@dxos/react-client");
|
|
188
196
|
var import_echo6 = require("@dxos/react-client/echo");
|
|
189
|
-
var
|
|
197
|
+
var import_react_ui23 = require("@dxos/react-ui");
|
|
190
198
|
var import_react_ui_theme6 = require("@dxos/react-ui-theme");
|
|
191
199
|
var import_context2 = require("@dxos/context");
|
|
192
200
|
var ForeignKeys = ({ keys, onDelete }) => {
|
|
@@ -304,7 +312,7 @@ var AwaitingObject = ({ id }) => {
|
|
|
304
312
|
objects,
|
|
305
313
|
layout
|
|
306
314
|
]);
|
|
307
|
-
const handleClose = (0, import_react4.useCallback)(async () => dispatch((0, import_app_framework.createIntent)(
|
|
315
|
+
const handleClose = (0, import_react4.useCallback)(async () => dispatch((0, import_app_framework.createIntent)(import_chunk_WAJKBO3J.SpaceAction.WaitForObject, {
|
|
308
316
|
id: void 0
|
|
309
317
|
})), [
|
|
310
318
|
dispatch
|
|
@@ -374,6 +382,7 @@ var BaseObjectSettings = ({ object }) => {
|
|
|
374
382
|
}
|
|
375
383
|
})));
|
|
376
384
|
};
|
|
385
|
+
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/components/CreateDialog/CreateObjectPanel.tsx";
|
|
377
386
|
var useInputSurfaceLookup = (baseData) => {
|
|
378
387
|
const pluginManager = (0, import_app_framework3.usePluginManager)();
|
|
379
388
|
return (0, import_react7.useCallback)(({ prop, schema, inputProps }) => {
|
|
@@ -398,12 +407,12 @@ var useInputSurfaceLookup = (baseData) => {
|
|
|
398
407
|
baseData
|
|
399
408
|
]);
|
|
400
409
|
};
|
|
401
|
-
var CreateObjectPanel = ({ classNames,
|
|
410
|
+
var CreateObjectPanel = ({ classNames, forms, spaces, typename: initialTypename, target: initialTarget, name: initialName, defaultSpaceId, resolve, onCreateObject }) => {
|
|
402
411
|
const { t } = (0, import_react_ui6.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
403
412
|
const [typename, setTypename] = (0, import_react7.useState)(initialTypename);
|
|
404
413
|
const [target, setTarget] = (0, import_react7.useState)(initialTarget);
|
|
405
|
-
const
|
|
406
|
-
const options =
|
|
414
|
+
const form = forms.find((form2) => (0, import_echo_schema2.getObjectAnnotation)(form2.objectSchema)?.typename === typename);
|
|
415
|
+
const options = forms.map((form2) => (0, import_echo_schema2.getObjectAnnotation)(form2.objectSchema)).filter(import_util.isNonNullable).sort((a, b) => {
|
|
407
416
|
const nameA = t("typename label", {
|
|
408
417
|
ns: a.typename,
|
|
409
418
|
defaultValue: a.typename
|
|
@@ -415,63 +424,68 @@ var CreateObjectPanel = ({ classNames, schemas, spaces, typename: initialTypenam
|
|
|
415
424
|
return nameA.localeCompare(nameB);
|
|
416
425
|
});
|
|
417
426
|
const handleCreateObject = (0, import_react7.useCallback)(async (props) => {
|
|
418
|
-
if (!
|
|
427
|
+
if (!form || !target) {
|
|
419
428
|
return;
|
|
420
429
|
}
|
|
421
430
|
await onCreateObject?.({
|
|
422
|
-
|
|
431
|
+
form,
|
|
423
432
|
target,
|
|
424
433
|
data: props
|
|
425
434
|
});
|
|
426
435
|
}, [
|
|
427
436
|
onCreateObject,
|
|
428
|
-
|
|
437
|
+
form,
|
|
429
438
|
target
|
|
430
439
|
]);
|
|
431
|
-
const
|
|
432
|
-
|
|
433
|
-
|
|
440
|
+
const handleSetTypename = (0, import_react7.useCallback)(async (typename2) => {
|
|
441
|
+
(0, import_invariant2.invariant)(target, "target is required", {
|
|
442
|
+
F: __dxlog_file,
|
|
443
|
+
L: 94,
|
|
444
|
+
S: void 0,
|
|
445
|
+
A: [
|
|
446
|
+
"target",
|
|
447
|
+
"'target is required'"
|
|
448
|
+
]
|
|
449
|
+
});
|
|
450
|
+
const form2 = forms.find((form3) => (0, import_echo_schema2.getObjectAnnotation)(form3.objectSchema)?.typename === typename2);
|
|
451
|
+
if (form2 && !form2.formSchema) {
|
|
452
|
+
await onCreateObject?.({
|
|
453
|
+
form: form2,
|
|
454
|
+
target
|
|
455
|
+
});
|
|
456
|
+
} else {
|
|
457
|
+
setTypename(typename2);
|
|
434
458
|
}
|
|
435
|
-
return resolve?.(typename);
|
|
436
459
|
}, [
|
|
437
|
-
|
|
438
|
-
|
|
460
|
+
forms,
|
|
461
|
+
onCreateObject,
|
|
462
|
+
target
|
|
439
463
|
]);
|
|
440
464
|
const inputSurfaceLookup = useInputSurfaceLookup({
|
|
441
465
|
target
|
|
442
466
|
});
|
|
443
|
-
const form = (0, import_react7.useMemo)(() => {
|
|
444
|
-
const schema2 = metadata?.creationSchema ?? import_echo_schema2.S.Struct({
|
|
445
|
-
name: import_echo_schema2.S.optional(import_echo_schema2.S.String)
|
|
446
|
-
});
|
|
447
|
-
return /* @__PURE__ */ import_react7.default.createElement(import_react_ui_form2.Form, {
|
|
448
|
-
classNames: "!p-0",
|
|
449
|
-
autoFocus: true,
|
|
450
|
-
values: {
|
|
451
|
-
name: initialName
|
|
452
|
-
},
|
|
453
|
-
schema: schema2,
|
|
454
|
-
testId: "create-object-form",
|
|
455
|
-
onSave: handleCreateObject,
|
|
456
|
-
lookupComponent: inputSurfaceLookup
|
|
457
|
-
});
|
|
458
|
-
}, [
|
|
459
|
-
initialName,
|
|
460
|
-
handleCreateObject,
|
|
461
|
-
metadata
|
|
462
|
-
]);
|
|
463
467
|
return /* @__PURE__ */ import_react7.default.createElement("div", {
|
|
464
468
|
role: "form",
|
|
465
469
|
className: (0, import_react_ui_theme2.mx)("flex flex-col gap-2", classNames)
|
|
466
|
-
}, !
|
|
470
|
+
}, !form ? /* @__PURE__ */ import_react7.default.createElement(SelectSchema, {
|
|
467
471
|
options,
|
|
468
472
|
resolve,
|
|
469
|
-
onChange:
|
|
473
|
+
onChange: handleSetTypename
|
|
470
474
|
}) : !target ? /* @__PURE__ */ import_react7.default.createElement(SelectSpace, {
|
|
471
475
|
spaces,
|
|
472
476
|
defaultSpaceId,
|
|
473
477
|
onChange: setTarget
|
|
474
|
-
}) : form
|
|
478
|
+
}) : form.formSchema ? /* @__PURE__ */ import_react7.default.createElement(import_react_ui_form2.Form, {
|
|
479
|
+
classNames: "!p-0",
|
|
480
|
+
autoFocus: true,
|
|
481
|
+
values: {
|
|
482
|
+
name: initialName
|
|
483
|
+
},
|
|
484
|
+
schema: form.formSchema,
|
|
485
|
+
testId: "create-object-form",
|
|
486
|
+
onSave: handleCreateObject,
|
|
487
|
+
lookupComponent: inputSurfaceLookup
|
|
488
|
+
}) : void 0);
|
|
475
489
|
};
|
|
476
490
|
var SelectSpace = ({ spaces, defaultSpaceId, onChange }) => {
|
|
477
491
|
const { t } = (0, import_react_ui6.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
@@ -486,23 +500,23 @@ var SelectSpace = ({ spaces, defaultSpaceId, onChange }) => {
|
|
|
486
500
|
}), /* @__PURE__ */ import_react7.default.createElement(import_react_ui_searchlist.SearchList.Content, {
|
|
487
501
|
classNames: "max-bs-[24rem] overflow-auto"
|
|
488
502
|
}, spaces.sort((a, b) => {
|
|
489
|
-
const aName = (0, import_react_ui6.toLocalizedString)((0,
|
|
503
|
+
const aName = (0, import_react_ui6.toLocalizedString)((0, import_chunk_OVGKWJOC.getSpaceDisplayName)(a, {
|
|
490
504
|
personal: a.id === defaultSpaceId
|
|
491
505
|
}), t);
|
|
492
|
-
const bName = (0, import_react_ui6.toLocalizedString)((0,
|
|
506
|
+
const bName = (0, import_react_ui6.toLocalizedString)((0, import_chunk_OVGKWJOC.getSpaceDisplayName)(b, {
|
|
493
507
|
personal: b.id === defaultSpaceId
|
|
494
508
|
}), t);
|
|
495
509
|
return aName.localeCompare(bName);
|
|
496
510
|
}).map((space) => /* @__PURE__ */ import_react7.default.createElement(import_react_ui_searchlist.SearchList.Item, {
|
|
497
511
|
key: space.id,
|
|
498
|
-
value: (0, import_react_ui6.toLocalizedString)((0,
|
|
512
|
+
value: (0, import_react_ui6.toLocalizedString)((0, import_chunk_OVGKWJOC.getSpaceDisplayName)(space, {
|
|
499
513
|
personal: space.id === defaultSpaceId
|
|
500
514
|
}), t),
|
|
501
515
|
onSelect: () => onChange(space),
|
|
502
516
|
classNames: "flex items-center gap-2"
|
|
503
517
|
}, /* @__PURE__ */ import_react7.default.createElement("span", {
|
|
504
518
|
className: "grow truncate"
|
|
505
|
-
}, (0, import_react_ui6.toLocalizedString)((0,
|
|
519
|
+
}, (0, import_react_ui6.toLocalizedString)((0, import_chunk_OVGKWJOC.getSpaceDisplayName)(space, {
|
|
506
520
|
personal: space.id === defaultSpaceId
|
|
507
521
|
}), t))))));
|
|
508
522
|
};
|
|
@@ -536,27 +550,51 @@ var SelectSchema = ({ options, resolve, onChange }) => {
|
|
|
536
550
|
defaultValue: option.typename
|
|
537
551
|
}))))));
|
|
538
552
|
};
|
|
553
|
+
var AppGraphBuilder = (0, import_app_framework4.lazy)(() => import("./app-graph-builder-ZIUBXRPA.cjs"));
|
|
554
|
+
var AppGraphSerializer = (0, import_app_framework4.lazy)(() => import("./app-graph-serializer-VQOGHKXL.cjs"));
|
|
555
|
+
var IdentityCreated = (0, import_app_framework4.lazy)(() => import("./identity-created-AXI64BLE.cjs"));
|
|
556
|
+
var IntentResolver = (0, import_app_framework4.lazy)(() => import("./intent-resolver-MLENGECT.cjs"));
|
|
557
|
+
var ReactRoot = (0, import_app_framework4.lazy)(() => import("./react-root-3OX5Z5CX.cjs"));
|
|
558
|
+
var ReactSurface = (0, import_app_framework4.lazy)(() => import("./react-surface-5NYCMXSM.cjs"));
|
|
559
|
+
var Schema = (0, import_app_framework4.lazy)(() => import("./schema-YN7WVFRX.cjs"));
|
|
560
|
+
var SpaceSettings = (0, import_app_framework4.lazy)(() => import("./settings-5QYFWNH7.cjs"));
|
|
561
|
+
var SpaceState = (0, import_app_framework4.lazy)(() => import("./state-57UE3DYE.cjs"));
|
|
562
|
+
var SpacesReady = (0, import_app_framework4.lazy)(() => import("./spaces-ready-FQNAKR7G.cjs"));
|
|
563
|
+
var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/components/CreateDialog/CreateObjectDialog.tsx";
|
|
539
564
|
var CREATE_OBJECT_DIALOG = `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/CreateObjectDialog`;
|
|
540
|
-
var CreateObjectDialog = ({
|
|
565
|
+
var CreateObjectDialog = ({ target, typename, name, shouldNavigate: _shouldNavigate }) => {
|
|
541
566
|
const closeRef = (0, import_react6.useRef)(null);
|
|
567
|
+
const manager = (0, import_app_framework2.usePluginManager)();
|
|
542
568
|
const { t } = (0, import_react_ui5.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
543
569
|
const client = (0, import_react_client2.useClient)();
|
|
544
570
|
const spaces = (0, import_echo3.useSpaces)();
|
|
545
571
|
const { dispatchPromise: dispatch } = (0, import_app_framework2.useIntentDispatcher)();
|
|
546
|
-
const
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
572
|
+
const forms = (0, import_app_framework2.useCapabilities)(import_chunk_YZKNRFHU.SpaceCapabilities.ObjectForm);
|
|
573
|
+
const resolve = (0, import_react6.useCallback)((typename2) => manager.context.requestCapabilities(import_app_framework2.Capabilities.Metadata).find(({ id }) => id === typename2)?.metadata ?? {}, [
|
|
574
|
+
manager
|
|
575
|
+
]);
|
|
576
|
+
const handleCreateObject = (0, import_react6.useCallback)(async ({ form, target: _target, data = {} }) => {
|
|
577
|
+
const target2 = (0, import_echo3.isSpace)(_target) ? _target.properties[import_chunk_WAJKBO3J.CollectionType.typename]?.target : _target;
|
|
578
|
+
if (!target2) {
|
|
550
579
|
return;
|
|
551
580
|
}
|
|
552
581
|
closeRef.current?.click();
|
|
553
582
|
const space = (0, import_echo3.isSpace)(target2) ? target2 : (0, import_echo3.getSpace)(target2);
|
|
554
|
-
|
|
583
|
+
(0, import_invariant.invariant)(space, "Missing space", {
|
|
584
|
+
F: __dxlog_file2,
|
|
585
|
+
L: 75,
|
|
586
|
+
S: void 0,
|
|
587
|
+
A: [
|
|
588
|
+
"space",
|
|
589
|
+
"'Missing space'"
|
|
590
|
+
]
|
|
591
|
+
});
|
|
592
|
+
const result = await dispatch(form.getIntent(data, {
|
|
555
593
|
space
|
|
556
594
|
}));
|
|
557
595
|
const object = result.data?.object;
|
|
558
596
|
if ((0, import_echo3.isReactiveObject)(object)) {
|
|
559
|
-
const addObjectIntent = (0, import_app_framework2.createIntent)(
|
|
597
|
+
const addObjectIntent = (0, import_app_framework2.createIntent)(import_chunk_WAJKBO3J.SpaceAction.AddObject, {
|
|
560
598
|
target: target2,
|
|
561
599
|
object
|
|
562
600
|
});
|
|
@@ -593,7 +631,7 @@ var CreateObjectDialog = ({ schemas, target, typename, name, shouldNavigate: _sh
|
|
|
593
631
|
size: 4
|
|
594
632
|
})))), /* @__PURE__ */ import_react6.default.createElement(CreateObjectPanel, {
|
|
595
633
|
classNames: "p-4",
|
|
596
|
-
|
|
634
|
+
forms,
|
|
597
635
|
spaces,
|
|
598
636
|
target,
|
|
599
637
|
typename,
|
|
@@ -611,15 +649,15 @@ var initialValues2 = {
|
|
|
611
649
|
var CreateSpaceDialog = () => {
|
|
612
650
|
const closeRef = (0, import_react8.useRef)(null);
|
|
613
651
|
const { t } = (0, import_react_ui7.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
614
|
-
const { dispatch } = (0,
|
|
652
|
+
const { dispatch } = (0, import_app_framework5.useIntentDispatcher)();
|
|
615
653
|
const handleCreateSpace = (0, import_react8.useCallback)(async (data) => {
|
|
616
654
|
const program = import_effect2.Effect.gen(function* () {
|
|
617
|
-
const { space } = yield* dispatch((0,
|
|
618
|
-
yield* dispatch((0,
|
|
655
|
+
const { space } = yield* dispatch((0, import_app_framework5.createIntent)(import_chunk_WAJKBO3J.SpaceAction.Create, data));
|
|
656
|
+
yield* dispatch((0, import_app_framework5.createIntent)(import_app_framework5.LayoutAction.SwitchWorkspace, {
|
|
619
657
|
part: "workspace",
|
|
620
658
|
subject: space.id
|
|
621
659
|
}));
|
|
622
|
-
yield* dispatch((0,
|
|
660
|
+
yield* dispatch((0, import_app_framework5.createIntent)(import_chunk_WAJKBO3J.SpaceAction.OpenCreateObject, {
|
|
623
661
|
target: space
|
|
624
662
|
}));
|
|
625
663
|
});
|
|
@@ -652,7 +690,7 @@ var CreateSpaceDialog = () => {
|
|
|
652
690
|
classNames: "!p-0",
|
|
653
691
|
autoFocus: true,
|
|
654
692
|
values: initialValues2,
|
|
655
|
-
schema:
|
|
693
|
+
schema: import_chunk_WAJKBO3J.SpaceForm,
|
|
656
694
|
onSave: handleCreateSpace
|
|
657
695
|
})))
|
|
658
696
|
);
|
|
@@ -676,16 +714,16 @@ var CollectionSection = ({ collection }) => {
|
|
|
676
714
|
className: "truncate"
|
|
677
715
|
}, collection.name ?? t("unnamed collection label")));
|
|
678
716
|
};
|
|
679
|
-
var
|
|
717
|
+
var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/components/JoinDialog.tsx";
|
|
680
718
|
var JOIN_DIALOG = `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/JoinDialog`;
|
|
681
719
|
var JoinDialog = ({ navigableCollections, onDone, ...props }) => {
|
|
682
|
-
const { dispatchPromise: dispatch } = (0,
|
|
720
|
+
const { dispatchPromise: dispatch } = (0, import_app_framework6.useIntentDispatcher)();
|
|
683
721
|
const client = (0, import_react_client3.useClient)();
|
|
684
|
-
const { graph } = (0,
|
|
722
|
+
const { graph } = (0, import_app_framework6.useAppGraph)();
|
|
685
723
|
const handleDone = (0, import_react11.useCallback)(async (result) => {
|
|
686
724
|
if (result?.spaceKey) {
|
|
687
725
|
await Promise.all([
|
|
688
|
-
dispatch((0,
|
|
726
|
+
dispatch((0, import_app_framework6.createIntent)(import_app_framework6.LayoutAction.AddToast, {
|
|
689
727
|
part: "toast",
|
|
690
728
|
subject: {
|
|
691
729
|
id: `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/join-success`,
|
|
@@ -704,7 +742,7 @@ var JoinDialog = ({ navigableCollections, onDone, ...props }) => {
|
|
|
704
742
|
]
|
|
705
743
|
}
|
|
706
744
|
})),
|
|
707
|
-
dispatch((0,
|
|
745
|
+
dispatch((0, import_app_framework6.createIntent)(import_app_framework6.LayoutAction.UpdateDialog, {
|
|
708
746
|
part: "dialog",
|
|
709
747
|
options: {
|
|
710
748
|
state: false
|
|
@@ -715,14 +753,14 @@ var JoinDialog = ({ navigableCollections, onDone, ...props }) => {
|
|
|
715
753
|
const space = result?.spaceKey ? client.spaces.get(result.spaceKey) : void 0;
|
|
716
754
|
if (!space) {
|
|
717
755
|
import_log.log.warn("Space not found", result?.spaceKey, {
|
|
718
|
-
F:
|
|
756
|
+
F: __dxlog_file3,
|
|
719
757
|
L: 56,
|
|
720
758
|
S: void 0,
|
|
721
759
|
C: (f, a) => f(...a)
|
|
722
760
|
});
|
|
723
761
|
return;
|
|
724
762
|
}
|
|
725
|
-
await dispatch((0,
|
|
763
|
+
await dispatch((0, import_app_framework6.createIntent)(import_app_framework6.LayoutAction.SwitchWorkspace, {
|
|
726
764
|
part: "workspace",
|
|
727
765
|
subject: space.id
|
|
728
766
|
}));
|
|
@@ -733,13 +771,13 @@ var JoinDialog = ({ navigableCollections, onDone, ...props }) => {
|
|
|
733
771
|
}).catch(() => {
|
|
734
772
|
});
|
|
735
773
|
await Promise.all([
|
|
736
|
-
dispatch((0,
|
|
774
|
+
dispatch((0, import_app_framework6.createIntent)(import_app_framework6.LayoutAction.Open, {
|
|
737
775
|
part: "main",
|
|
738
776
|
subject: [
|
|
739
777
|
target
|
|
740
778
|
]
|
|
741
779
|
})),
|
|
742
|
-
dispatch((0,
|
|
780
|
+
dispatch((0, import_app_framework6.createIntent)(import_app_framework6.LayoutAction.Expose, {
|
|
743
781
|
part: "navigation",
|
|
744
782
|
subject: target
|
|
745
783
|
}))
|
|
@@ -747,7 +785,7 @@ var JoinDialog = ({ navigableCollections, onDone, ...props }) => {
|
|
|
747
785
|
}
|
|
748
786
|
await onDone?.(result);
|
|
749
787
|
if (space) {
|
|
750
|
-
await dispatch((0,
|
|
788
|
+
await dispatch((0, import_app_framework6.createIntent)(import_types.ObservabilityAction.SendEvent, {
|
|
751
789
|
name: "space.join",
|
|
752
790
|
properties: {
|
|
753
791
|
spaceId: space.id
|
|
@@ -774,7 +812,7 @@ var MenuFooter = ({ object }) => {
|
|
|
774
812
|
const { t } = (0, import_react_ui11.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
775
813
|
const client = (0, import_react_client4.useClient)();
|
|
776
814
|
const space = (0, import_echo4.getSpace)(object);
|
|
777
|
-
const spaceName = space ? (0,
|
|
815
|
+
const spaceName = space ? (0, import_chunk_OVGKWJOC.getSpaceDisplayName)(space, {
|
|
778
816
|
personal: client.spaces.default === space
|
|
779
817
|
}) : "";
|
|
780
818
|
return space ? /* @__PURE__ */ import_react14.default.createElement(import_react14.default.Fragment, null, /* @__PURE__ */ import_react14.default.createElement(import_react_ui11.DropdownMenu.Separator, null), /* @__PURE__ */ import_react14.default.createElement(import_react_ui11.DropdownMenu.GroupLabel, null, t("menu footer label")), /* @__PURE__ */ import_react14.default.createElement("dl", {
|
|
@@ -840,14 +878,53 @@ var PersistenceStatus = ({ db }) => {
|
|
|
840
878
|
}, t("persisted locally label"))), /* @__PURE__ */ import_react16.default.createElement(import_react_ui12.Tooltip.Portal, null, /* @__PURE__ */ import_react16.default.createElement(import_react_ui12.Tooltip.Content, null, t("persisted locally message"), /* @__PURE__ */ import_react16.default.createElement(import_react_ui12.Tooltip.Arrow, null))));
|
|
841
879
|
}
|
|
842
880
|
};
|
|
843
|
-
var
|
|
881
|
+
var POPOVER_ADD_SPACE = `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/PopoverRenameSpace`;
|
|
882
|
+
var PopoverAddSpace = () => {
|
|
883
|
+
const { t } = (0, import_react_ui13.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
884
|
+
const { dispatchPromise: dispatch } = (0, import_app_framework7.useIntentDispatcher)();
|
|
885
|
+
return /* @__PURE__ */ import_react17.default.createElement("div", {
|
|
886
|
+
role: "none",
|
|
887
|
+
className: "grid grid-cols-1 gap-1 [&>button]:justify-start"
|
|
888
|
+
}, /* @__PURE__ */ import_react17.default.createElement(import_react_ui13.IconButton, {
|
|
889
|
+
variant: "ghost",
|
|
890
|
+
label: t("create space label"),
|
|
891
|
+
icon: "ph--plus--regular",
|
|
892
|
+
onClick: () => {
|
|
893
|
+
void dispatch((0, import_app_framework7.createIntent)(import_chunk_WAJKBO3J.SpaceAction.OpenCreateSpace));
|
|
894
|
+
void dispatch((0, import_app_framework7.createIntent)(import_app_framework7.LayoutAction.UpdatePopover, {
|
|
895
|
+
part: "popover",
|
|
896
|
+
options: {
|
|
897
|
+
anchorId: "",
|
|
898
|
+
state: false
|
|
899
|
+
}
|
|
900
|
+
}));
|
|
901
|
+
},
|
|
902
|
+
"data-testid": "spacePlugin.createSpace"
|
|
903
|
+
}), /* @__PURE__ */ import_react17.default.createElement(import_react_ui13.IconButton, {
|
|
904
|
+
variant: "ghost",
|
|
905
|
+
label: t("join space label"),
|
|
906
|
+
icon: "ph--sign-in--regular",
|
|
907
|
+
onClick: () => {
|
|
908
|
+
void dispatch((0, import_app_framework7.createIntent)(import_chunk_WAJKBO3J.SpaceAction.Join));
|
|
909
|
+
void dispatch((0, import_app_framework7.createIntent)(import_app_framework7.LayoutAction.UpdatePopover, {
|
|
910
|
+
part: "popover",
|
|
911
|
+
options: {
|
|
912
|
+
anchorId: "",
|
|
913
|
+
state: false
|
|
914
|
+
}
|
|
915
|
+
}));
|
|
916
|
+
},
|
|
917
|
+
"data-testid": "spacePlugin.joinSpace"
|
|
918
|
+
}));
|
|
919
|
+
};
|
|
920
|
+
var __dxlog_file4 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/components/PopoverRenameObject.tsx";
|
|
844
921
|
var POPOVER_RENAME_OBJECT = `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/PopoverRenameObject`;
|
|
845
922
|
var PopoverRenameObject = ({ object: obj }) => {
|
|
846
|
-
const { t } = (0,
|
|
847
|
-
const doneButton = (0,
|
|
923
|
+
const { t } = (0, import_react_ui14.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
924
|
+
const doneButton = (0, import_react18.useRef)(null);
|
|
848
925
|
const object = obj;
|
|
849
|
-
const [name, setName] = (0,
|
|
850
|
-
const handleDone = (0,
|
|
926
|
+
const [name, setName] = (0, import_react18.useState)(object.name || object.title || "");
|
|
927
|
+
const handleDone = (0, import_react18.useCallback)(() => {
|
|
851
928
|
try {
|
|
852
929
|
object.name = name;
|
|
853
930
|
} catch {
|
|
@@ -857,7 +934,7 @@ var PopoverRenameObject = ({ object: obj }) => {
|
|
|
857
934
|
import_log2.log.error("Failed to rename object", {
|
|
858
935
|
err
|
|
859
936
|
}, {
|
|
860
|
-
F:
|
|
937
|
+
F: __dxlog_file4,
|
|
861
938
|
L: 30,
|
|
862
939
|
S: void 0,
|
|
863
940
|
C: (f, a) => f(...a)
|
|
@@ -868,23 +945,23 @@ var PopoverRenameObject = ({ object: obj }) => {
|
|
|
868
945
|
object,
|
|
869
946
|
name
|
|
870
947
|
]);
|
|
871
|
-
return /* @__PURE__ */
|
|
948
|
+
return /* @__PURE__ */ import_react18.default.createElement("div", {
|
|
872
949
|
role: "none",
|
|
873
950
|
className: "p-1 flex gap-2"
|
|
874
|
-
}, /* @__PURE__ */
|
|
951
|
+
}, /* @__PURE__ */ import_react18.default.createElement("div", {
|
|
875
952
|
role: "none",
|
|
876
953
|
className: "flex-1"
|
|
877
|
-
}, /* @__PURE__ */
|
|
954
|
+
}, /* @__PURE__ */ import_react18.default.createElement(import_react_ui14.Input.Root, null, /* @__PURE__ */ import_react18.default.createElement(import_react_ui14.Input.Label, {
|
|
878
955
|
srOnly: true
|
|
879
|
-
}, t("object name label")), /* @__PURE__ */
|
|
956
|
+
}, t("object name label")), /* @__PURE__ */ import_react18.default.createElement(import_react_ui14.Input.TextInput, {
|
|
880
957
|
placeholder: t("object title placeholder"),
|
|
881
958
|
value: name,
|
|
882
959
|
"data-testid": "spacePlugin.renameObject.input",
|
|
883
960
|
onChange: ({ target: { value } }) => setName(value),
|
|
884
961
|
onKeyDown: ({ key }) => key === "Enter" && doneButton.current?.click()
|
|
885
|
-
}))), /* @__PURE__ */
|
|
962
|
+
}))), /* @__PURE__ */ import_react18.default.createElement(import_react_ui14.Popover.Close, {
|
|
886
963
|
asChild: true
|
|
887
|
-
}, /* @__PURE__ */
|
|
964
|
+
}, /* @__PURE__ */ import_react18.default.createElement(import_react_ui14.Button, {
|
|
888
965
|
ref: doneButton,
|
|
889
966
|
classNames: "self-stretch",
|
|
890
967
|
onClick: handleDone
|
|
@@ -894,33 +971,33 @@ var PopoverRenameObject = ({ object: obj }) => {
|
|
|
894
971
|
};
|
|
895
972
|
var POPOVER_RENAME_SPACE = `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/PopoverRenameSpace`;
|
|
896
973
|
var PopoverRenameSpace = ({ space }) => {
|
|
897
|
-
const { t } = (0,
|
|
898
|
-
const doneButton = (0,
|
|
899
|
-
const [name, setName] = (0,
|
|
900
|
-
const handleDone = (0,
|
|
974
|
+
const { t } = (0, import_react_ui15.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
975
|
+
const doneButton = (0, import_react19.useRef)(null);
|
|
976
|
+
const [name, setName] = (0, import_react19.useState)(space.properties.name ?? "");
|
|
977
|
+
const handleDone = (0, import_react19.useCallback)(() => {
|
|
901
978
|
space.properties.name = name;
|
|
902
979
|
}, [
|
|
903
980
|
space,
|
|
904
981
|
name
|
|
905
982
|
]);
|
|
906
|
-
return /* @__PURE__ */
|
|
983
|
+
return /* @__PURE__ */ import_react19.default.createElement("div", {
|
|
907
984
|
role: "none",
|
|
908
985
|
className: "p-1 flex gap-2"
|
|
909
|
-
}, /* @__PURE__ */
|
|
986
|
+
}, /* @__PURE__ */ import_react19.default.createElement("div", {
|
|
910
987
|
role: "none",
|
|
911
988
|
className: "flex-1"
|
|
912
|
-
}, /* @__PURE__ */
|
|
989
|
+
}, /* @__PURE__ */ import_react19.default.createElement(import_react_ui15.Input.Root, null, /* @__PURE__ */ import_react19.default.createElement(import_react_ui15.Input.Label, {
|
|
913
990
|
srOnly: true
|
|
914
|
-
}, t("space name label")), /* @__PURE__ */
|
|
991
|
+
}, t("space name label")), /* @__PURE__ */ import_react19.default.createElement(import_react_ui15.Input.TextInput, {
|
|
915
992
|
defaultValue: space.properties.name ?? "",
|
|
916
993
|
placeholder: t("unnamed space label"),
|
|
917
994
|
onChange: ({ target: { value } }) => setName(value),
|
|
918
995
|
// TODO(wittjosiah): Ideally this should access the popover context to close the popover.
|
|
919
996
|
// Currently this is not possible because Radix does not expose the popover context.
|
|
920
997
|
onKeyDown: ({ key }) => key === "Enter" && doneButton.current?.click()
|
|
921
|
-
}))), /* @__PURE__ */
|
|
998
|
+
}))), /* @__PURE__ */ import_react19.default.createElement(import_react_ui15.Popover.Close, {
|
|
922
999
|
asChild: true
|
|
923
|
-
}, /* @__PURE__ */
|
|
1000
|
+
}, /* @__PURE__ */ import_react19.default.createElement(import_react_ui15.Button, {
|
|
924
1001
|
ref: doneButton,
|
|
925
1002
|
classNames: "self-stretch",
|
|
926
1003
|
onClick: handleDone
|
|
@@ -929,36 +1006,27 @@ var PopoverRenameSpace = ({ space }) => {
|
|
|
929
1006
|
}))));
|
|
930
1007
|
};
|
|
931
1008
|
var ShareSpaceButton = ({ space }) => {
|
|
932
|
-
const { dispatchPromise: dispatch } = (0,
|
|
933
|
-
return /* @__PURE__ */
|
|
934
|
-
onClick: () => dispatch((0,
|
|
1009
|
+
const { dispatchPromise: dispatch } = (0, import_app_framework8.useIntentDispatcher)();
|
|
1010
|
+
return /* @__PURE__ */ import_react20.default.createElement(ShareSpaceButtonImpl, {
|
|
1011
|
+
onClick: () => dispatch((0, import_app_framework8.createIntent)(import_chunk_WAJKBO3J.SpaceAction.Share, {
|
|
935
1012
|
space
|
|
936
1013
|
}))
|
|
937
1014
|
});
|
|
938
1015
|
};
|
|
939
1016
|
var ShareSpaceButtonImpl = ({ onClick }) => {
|
|
940
|
-
const { t } = (0,
|
|
941
|
-
return /* @__PURE__ */
|
|
1017
|
+
const { t } = (0, import_react_ui16.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
1018
|
+
return /* @__PURE__ */ import_react20.default.createElement(import_react_ui16.IconButton, {
|
|
942
1019
|
"data-testid": "spacePlugin.shareSpaceButton",
|
|
943
1020
|
icon: "ph--users--regular",
|
|
944
1021
|
label: t("share space label"),
|
|
945
1022
|
onClick
|
|
946
1023
|
});
|
|
947
1024
|
};
|
|
948
|
-
var AppGraphBuilder = (0, import_app_framework8.lazy)(() => import("./app-graph-builder-V3RCGDV7.cjs"));
|
|
949
|
-
var AppGraphSerializer = (0, import_app_framework8.lazy)(() => import("./app-graph-serializer-H4UACG57.cjs"));
|
|
950
|
-
var IdentityCreated = (0, import_app_framework8.lazy)(() => import("./identity-created-7G5U7R36.cjs"));
|
|
951
|
-
var IntentResolver = (0, import_app_framework8.lazy)(() => import("./intent-resolver-CDE4M3TW.cjs"));
|
|
952
|
-
var ReactRoot = (0, import_app_framework8.lazy)(() => import("./react-root-JN6AIHMS.cjs"));
|
|
953
|
-
var ReactSurface = (0, import_app_framework8.lazy)(() => import("./react-surface-XSK2QEQV.cjs"));
|
|
954
|
-
var SpaceSettings = (0, import_app_framework8.lazy)(() => import("./settings-TEELGWS4.cjs"));
|
|
955
|
-
var SpaceState = (0, import_app_framework8.lazy)(() => import("./state-WPZC4JXB.cjs"));
|
|
956
|
-
var SpacesReady = (0, import_app_framework8.lazy)(() => import("./spaces-ready-L4MJTFQ6.cjs"));
|
|
957
1025
|
var usePath = (graph, id, timeout) => {
|
|
958
|
-
const [pathState, setPathState] = (0,
|
|
1026
|
+
const [pathState, setPathState] = (0, import_react22.useState)(id ? graph.getPath({
|
|
959
1027
|
target: id
|
|
960
1028
|
}) : void 0);
|
|
961
|
-
(0,
|
|
1029
|
+
(0, import_react22.useEffect)(() => {
|
|
962
1030
|
if (!id && pathState) {
|
|
963
1031
|
setPathState(void 0);
|
|
964
1032
|
}
|
|
@@ -992,18 +1060,18 @@ var ACTIVITY_DURATION = 3e4;
|
|
|
992
1060
|
var noViewers = new import_util2.ComplexMap(import_react_client5.PublicKey.hash);
|
|
993
1061
|
var getName = (identity) => identity.profile?.displayName ?? (0, import_display_name.generateName)(identity.identityKey.toHex());
|
|
994
1062
|
var SpacePresence = ({ object, spaceKey }) => {
|
|
995
|
-
const spaceState = (0,
|
|
1063
|
+
const spaceState = (0, import_app_framework9.useCapability)(import_chunk_YZKNRFHU.SpaceCapabilities.MutableState);
|
|
996
1064
|
const client = (0, import_react_client5.useClient)();
|
|
997
1065
|
const identity = (0, import_halo.useIdentity)();
|
|
998
1066
|
const space = spaceKey ? client.spaces.get(spaceKey) : (0, import_echo5.getSpace)(object);
|
|
999
1067
|
const spaceMembers = (0, import_echo5.useMembers)(space?.key);
|
|
1000
|
-
const [_moment, setMoment] = (0,
|
|
1001
|
-
(0,
|
|
1068
|
+
const [_moment, setMoment] = (0, import_react21.useState)(Date.now());
|
|
1069
|
+
(0, import_react21.useEffect)(() => {
|
|
1002
1070
|
const interval = setInterval(() => setMoment(Date.now()), REFRESH_INTERVAL);
|
|
1003
1071
|
return () => clearInterval(interval);
|
|
1004
1072
|
}, []);
|
|
1005
|
-
const memberOnline = (0,
|
|
1006
|
-
const memberIsNotSelf = (0,
|
|
1073
|
+
const memberOnline = (0, import_react21.useCallback)((member) => member.presence === 1, []);
|
|
1074
|
+
const memberIsNotSelf = (0, import_react21.useCallback)((member) => !identity?.identityKey.equals(member.identity.identityKey), [
|
|
1007
1075
|
identity?.identityKey
|
|
1008
1076
|
]);
|
|
1009
1077
|
if (!identity || !spaceState || !space) {
|
|
@@ -1020,61 +1088,61 @@ var SpacePresence = ({ object, spaceKey }) => {
|
|
|
1020
1088
|
lastSeen
|
|
1021
1089
|
};
|
|
1022
1090
|
}).toSorted((a, b) => a.lastSeen - b.lastSeen);
|
|
1023
|
-
return /* @__PURE__ */
|
|
1091
|
+
return /* @__PURE__ */ import_react21.default.createElement(FullPresence, {
|
|
1024
1092
|
members: membersForObject
|
|
1025
1093
|
});
|
|
1026
1094
|
};
|
|
1027
1095
|
var FullPresence = (props) => {
|
|
1028
1096
|
const { size = 9, onMemberClick } = props;
|
|
1029
|
-
const members = (0,
|
|
1097
|
+
const members = (0, import_react_ui17.useDefaultValue)(props.members, () => []);
|
|
1030
1098
|
if (members.length === 0) {
|
|
1031
1099
|
return null;
|
|
1032
1100
|
}
|
|
1033
|
-
return /* @__PURE__ */
|
|
1101
|
+
return /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.AvatarGroup.Root, {
|
|
1034
1102
|
size,
|
|
1035
1103
|
classNames: "mbs-2 mie-4",
|
|
1036
1104
|
"data-testid": "spacePlugin.presence"
|
|
1037
|
-
}, members.slice(0, 3).map((member, i) => /* @__PURE__ */
|
|
1105
|
+
}, members.slice(0, 3).map((member, i) => /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Root, {
|
|
1038
1106
|
key: member.identity.identityKey.toHex()
|
|
1039
|
-
}, /* @__PURE__ */
|
|
1107
|
+
}, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Trigger, null, /* @__PURE__ */ import_react21.default.createElement(PrensenceAvatar, {
|
|
1040
1108
|
identity: member.identity,
|
|
1041
1109
|
group: true,
|
|
1042
1110
|
match: member.currentlyAttended,
|
|
1043
1111
|
index: members.length - i,
|
|
1044
1112
|
onClick: () => onMemberClick?.(member)
|
|
1045
|
-
})), /* @__PURE__ */
|
|
1113
|
+
})), /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Portal, null, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Content, {
|
|
1046
1114
|
side: "bottom"
|
|
1047
|
-
}, /* @__PURE__ */
|
|
1115
|
+
}, /* @__PURE__ */ import_react21.default.createElement("span", null, getName(member.identity)), /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Arrow, null))))), members.length > 3 && /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Root, null, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Trigger, null, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.AvatarGroupItem.Root, {
|
|
1048
1116
|
status: "inactive"
|
|
1049
|
-
}, /* @__PURE__ */
|
|
1117
|
+
}, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Avatar.Frame, {
|
|
1050
1118
|
style: {
|
|
1051
1119
|
zIndex: members.length - 4
|
|
1052
1120
|
}
|
|
1053
|
-
}, /* @__PURE__ */
|
|
1121
|
+
}, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Avatar.Fallback, {
|
|
1054
1122
|
text: `+${members.length - 3}`
|
|
1055
|
-
})))), /* @__PURE__ */
|
|
1123
|
+
})))), /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Portal, null, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Content, {
|
|
1056
1124
|
side: "bottom"
|
|
1057
|
-
}, /* @__PURE__ */
|
|
1125
|
+
}, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Arrow, null), /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.List, {
|
|
1058
1126
|
classNames: "max-h-56 overflow-y-auto"
|
|
1059
|
-
}, members.map((member) => /* @__PURE__ */
|
|
1127
|
+
}, members.map((member) => /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.ListItem.Root, {
|
|
1060
1128
|
key: member.identity.identityKey.toHex(),
|
|
1061
1129
|
classNames: "flex gap-2 items-center cursor-pointer mbe-2",
|
|
1062
1130
|
onClick: () => onMemberClick?.(member),
|
|
1063
1131
|
"data-testid": "identity-list-item"
|
|
1064
|
-
}, /* @__PURE__ */
|
|
1132
|
+
}, /* @__PURE__ */ import_react21.default.createElement(PrensenceAvatar, {
|
|
1065
1133
|
identity: member.identity,
|
|
1066
1134
|
showName: true,
|
|
1067
1135
|
match: member.currentlyAttended
|
|
1068
1136
|
}))))))));
|
|
1069
1137
|
};
|
|
1070
1138
|
var PrensenceAvatar = ({ identity, showName, match, group, index, onClick }) => {
|
|
1071
|
-
const Root = group ?
|
|
1139
|
+
const Root = group ? import_react_ui17.AvatarGroupItem.Root : import_react_ui17.Avatar.Root;
|
|
1072
1140
|
const status = match ? "current" : "active";
|
|
1073
1141
|
const fallbackValue = (0, import_util2.keyToFallback)(identity.identityKey);
|
|
1074
|
-
return /* @__PURE__ */
|
|
1142
|
+
return /* @__PURE__ */ import_react21.default.createElement(Root, {
|
|
1075
1143
|
status,
|
|
1076
1144
|
hue: identity.profile?.data?.hue || fallbackValue.hue
|
|
1077
|
-
}, /* @__PURE__ */
|
|
1145
|
+
}, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Avatar.Frame, {
|
|
1078
1146
|
"data-testid": "spacePlugin.presence.member",
|
|
1079
1147
|
"data-status": status,
|
|
1080
1148
|
...index ? {
|
|
@@ -1083,16 +1151,16 @@ var PrensenceAvatar = ({ identity, showName, match, group, index, onClick }) =>
|
|
|
1083
1151
|
}
|
|
1084
1152
|
} : {},
|
|
1085
1153
|
onClick: () => onClick?.()
|
|
1086
|
-
}, /* @__PURE__ */
|
|
1154
|
+
}, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Avatar.Fallback, {
|
|
1087
1155
|
text: identity.profile?.data?.emoji || fallbackValue.emoji
|
|
1088
|
-
})), showName && /* @__PURE__ */
|
|
1156
|
+
})), showName && /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Avatar.Label, {
|
|
1089
1157
|
classNames: "text-sm truncate pli-2"
|
|
1090
1158
|
}, getName(identity)));
|
|
1091
1159
|
};
|
|
1092
1160
|
var SmallPresenceLive = ({ id, open, viewers }) => {
|
|
1093
1161
|
const { hasAttention, isAncestor, isRelated } = (0, import_react_ui_attention.useAttention)(id);
|
|
1094
1162
|
const isAttended = hasAttention || isAncestor || isRelated;
|
|
1095
|
-
const { graph } = (0,
|
|
1163
|
+
const { graph } = (0, import_app_framework9.useAppGraph)();
|
|
1096
1164
|
const attended = (0, import_react_ui_attention.useAttended)();
|
|
1097
1165
|
const startOfAttention = attended.at(-1);
|
|
1098
1166
|
const path = usePath(graph, startOfAttention);
|
|
@@ -1101,8 +1169,8 @@ var SmallPresenceLive = ({ id, open, viewers }) => {
|
|
|
1101
1169
|
const moment = Date.now();
|
|
1102
1170
|
return Array.from(viewers2.values()).filter((viewer) => moment - viewer.lastSeen < ACTIVITY_DURATION);
|
|
1103
1171
|
};
|
|
1104
|
-
const [activeViewers, setActiveViewers] = (0,
|
|
1105
|
-
(0,
|
|
1172
|
+
const [activeViewers, setActiveViewers] = (0, import_react21.useState)(viewers ? getActiveViewers(viewers) : []);
|
|
1173
|
+
(0, import_react21.useEffect)(() => {
|
|
1106
1174
|
if (viewers) {
|
|
1107
1175
|
setActiveViewers(getActiveViewers(viewers));
|
|
1108
1176
|
const interval = setInterval(() => {
|
|
@@ -1113,47 +1181,47 @@ var SmallPresenceLive = ({ id, open, viewers }) => {
|
|
|
1113
1181
|
}, [
|
|
1114
1182
|
viewers
|
|
1115
1183
|
]);
|
|
1116
|
-
return /* @__PURE__ */
|
|
1184
|
+
return /* @__PURE__ */ import_react21.default.createElement(SmallPresence, {
|
|
1117
1185
|
count: activeViewers.length,
|
|
1118
1186
|
attended: isAttended,
|
|
1119
1187
|
containsAttended
|
|
1120
1188
|
});
|
|
1121
1189
|
};
|
|
1122
1190
|
var SmallPresence = ({ count = 0, attended, containsAttended }) => {
|
|
1123
|
-
const { t } = (0,
|
|
1124
|
-
return /* @__PURE__ */
|
|
1191
|
+
const { t } = (0, import_react_ui17.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
1192
|
+
return /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Root, null, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Trigger, {
|
|
1125
1193
|
asChild: true
|
|
1126
|
-
}, /* @__PURE__ */
|
|
1194
|
+
}, /* @__PURE__ */ import_react21.default.createElement(import_react_ui_attention.AttentionGlyph, {
|
|
1127
1195
|
attended,
|
|
1128
1196
|
containsAttended,
|
|
1129
1197
|
presence: count > 1 ? "many" : count === 1 ? "one" : "none",
|
|
1130
1198
|
classNames: "self-center mie-1"
|
|
1131
|
-
})), /* @__PURE__ */
|
|
1199
|
+
})), /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Portal, null, /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Content, {
|
|
1132
1200
|
side: "bottom"
|
|
1133
|
-
}, /* @__PURE__ */
|
|
1201
|
+
}, /* @__PURE__ */ import_react21.default.createElement("span", null, t("presence label", {
|
|
1134
1202
|
count
|
|
1135
|
-
})), /* @__PURE__ */
|
|
1203
|
+
})), /* @__PURE__ */ import_react21.default.createElement(import_react_ui17.Tooltip.Arrow, null))));
|
|
1136
1204
|
};
|
|
1137
1205
|
var SpacePluginSettings = ({ settings }) => {
|
|
1138
|
-
const { t } = (0,
|
|
1139
|
-
return /* @__PURE__ */
|
|
1206
|
+
const { t } = (0, import_react_ui18.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
1207
|
+
return /* @__PURE__ */ import_react23.default.createElement(import_react_ui_form4.DeprecatedFormContainer, null, /* @__PURE__ */ import_react23.default.createElement(import_react_ui_form4.DeprecatedFormInput, {
|
|
1140
1208
|
label: t("show hidden spaces label")
|
|
1141
|
-
}, /* @__PURE__ */
|
|
1209
|
+
}, /* @__PURE__ */ import_react23.default.createElement(import_react_ui18.Input.Switch, {
|
|
1142
1210
|
checked: settings.showHidden,
|
|
1143
1211
|
onCheckedChange: (checked) => settings.showHidden = !!checked
|
|
1144
1212
|
})));
|
|
1145
1213
|
};
|
|
1146
|
-
var
|
|
1214
|
+
var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/components/SpaceSettings/SpaceSettingsPanel.tsx";
|
|
1147
1215
|
var SpaceSettingsPanel = ({ space }) => {
|
|
1148
|
-
const { t } = (0,
|
|
1216
|
+
const { t } = (0, import_react_ui19.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
1149
1217
|
const client = (0, import_react_client6.useClient)();
|
|
1150
1218
|
const edgeEnabled = Boolean(client.config.values.runtime?.client?.edgeFeatures?.echoReplicator);
|
|
1151
|
-
const [edgeReplication, setEdgeReplication] = (0,
|
|
1152
|
-
const toggleEdgeReplication = (0,
|
|
1219
|
+
const [edgeReplication, setEdgeReplication] = (0, import_react24.useState)(space.internal.data.edgeReplication === import_metadata.EdgeReplicationSetting.ENABLED);
|
|
1220
|
+
const toggleEdgeReplication = (0, import_react24.useCallback)(async (next) => {
|
|
1153
1221
|
setEdgeReplication(next);
|
|
1154
1222
|
await space?.internal.setEdgeReplicationPreference(next ? import_metadata.EdgeReplicationSetting.ENABLED : import_metadata.EdgeReplicationSetting.DISABLED).catch((err) => {
|
|
1155
1223
|
import_log3.log.catch(err, void 0, {
|
|
1156
|
-
F:
|
|
1224
|
+
F: __dxlog_file5,
|
|
1157
1225
|
L: 36,
|
|
1158
1226
|
S: void 0,
|
|
1159
1227
|
C: (f, a) => f(...a)
|
|
@@ -1163,40 +1231,50 @@ var SpaceSettingsPanel = ({ space }) => {
|
|
|
1163
1231
|
}, [
|
|
1164
1232
|
space
|
|
1165
1233
|
]);
|
|
1166
|
-
return /* @__PURE__ */
|
|
1234
|
+
return /* @__PURE__ */ import_react24.default.createElement(import_react_ui_form5.DeprecatedFormContainer, null, /* @__PURE__ */ import_react24.default.createElement(import_react_ui_form5.DeprecatedFormInput, {
|
|
1167
1235
|
label: t("name label")
|
|
1168
|
-
}, /* @__PURE__ */
|
|
1236
|
+
}, /* @__PURE__ */ import_react24.default.createElement(import_react_ui19.Input.TextInput, {
|
|
1169
1237
|
placeholder: t("unnamed space label"),
|
|
1170
1238
|
value: space.properties.name ?? "",
|
|
1171
1239
|
onChange: (event) => {
|
|
1172
1240
|
space.properties.name = event.target.value;
|
|
1173
1241
|
}
|
|
1174
|
-
})), /* @__PURE__ */
|
|
1242
|
+
})), /* @__PURE__ */ import_react24.default.createElement(import_react_ui_form5.DeprecatedFormInput, {
|
|
1243
|
+
label: t("icon label")
|
|
1244
|
+
}, /* @__PURE__ */ import_react24.default.createElement(import_react_ui19.Toolbar.Root, null, /* @__PURE__ */ import_react24.default.createElement(import_react_ui_pickers.IconPicker, {
|
|
1245
|
+
value: space.properties.icon,
|
|
1246
|
+
onChange: (nextIcon) => space.properties.icon = nextIcon,
|
|
1247
|
+
onReset: () => {
|
|
1248
|
+
space.properties.icon = void 0;
|
|
1249
|
+
}
|
|
1250
|
+
}))), /* @__PURE__ */ import_react24.default.createElement(import_react_ui_form5.DeprecatedFormInput, {
|
|
1175
1251
|
label: t("hue label")
|
|
1176
|
-
}, /* @__PURE__ */
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1252
|
+
}, /* @__PURE__ */ import_react24.default.createElement(import_react_ui19.Toolbar.Root, null, /* @__PURE__ */ import_react24.default.createElement(import_react_ui_pickers.HuePicker, {
|
|
1253
|
+
value: space.properties.hue,
|
|
1254
|
+
onChange: (nextHue) => space.properties.hue = nextHue,
|
|
1255
|
+
onReset: () => {
|
|
1256
|
+
space.properties.hue = void 0;
|
|
1257
|
+
}
|
|
1258
|
+
}))), edgeEnabled && /* @__PURE__ */ import_react24.default.createElement(import_react_ui_form5.DeprecatedFormInput, {
|
|
1181
1259
|
label: t("edge replication label")
|
|
1182
|
-
}, /* @__PURE__ */
|
|
1260
|
+
}, /* @__PURE__ */ import_react24.default.createElement(import_react_ui19.Input.Switch, {
|
|
1183
1261
|
checked: edgeReplication,
|
|
1184
1262
|
onCheckedChange: toggleEdgeReplication
|
|
1185
1263
|
})));
|
|
1186
1264
|
};
|
|
1187
1265
|
var SPACE_SETTINGS_DIALOG = `${import_chunk_WZR6OAN3.SPACE_PLUGIN}/SpaceSettingsDialog`;
|
|
1188
1266
|
var SpaceSettingsDialog = ({ space, target, createInvitationUrl, initialTab = "members", namesCache }) => {
|
|
1189
|
-
const { t } = (0,
|
|
1267
|
+
const { t } = (0, import_react_ui20.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
1190
1268
|
const client = (0, import_react_client7.useClient)();
|
|
1191
|
-
const [tabsActivePart, setTabsActivePart] = (0,
|
|
1192
|
-
const [selected, setSelected] = (0,
|
|
1193
|
-
const locked = space.properties[
|
|
1194
|
-
const name = (0,
|
|
1269
|
+
const [tabsActivePart, setTabsActivePart] = (0, import_react25.useState)("list");
|
|
1270
|
+
const [selected, setSelected] = (0, import_react25.useState)(initialTab);
|
|
1271
|
+
const locked = space.properties[import_chunk_OVGKWJOC.COMPOSER_SPACE_LOCK];
|
|
1272
|
+
const name = (0, import_chunk_OVGKWJOC.getSpaceDisplayName)(space, {
|
|
1195
1273
|
personal: client.spaces.default === space,
|
|
1196
1274
|
namesCache
|
|
1197
1275
|
});
|
|
1198
|
-
const panels = (0,
|
|
1199
|
-
const data = (0,
|
|
1276
|
+
const panels = (0, import_app_framework10.useCapabilities)(import_chunk_YZKNRFHU.SpaceCapabilities.SettingsPanel);
|
|
1277
|
+
const data = (0, import_react25.useMemo)(() => ({
|
|
1200
1278
|
subject: space
|
|
1201
1279
|
}), [
|
|
1202
1280
|
space
|
|
@@ -1204,82 +1282,82 @@ var SpaceSettingsDialog = ({ space, target, createInvitationUrl, initialTab = "m
|
|
|
1204
1282
|
return (
|
|
1205
1283
|
// TODO(wittjosiah): The tablist dialog pattern is copied from @dxos/plugin-manager.
|
|
1206
1284
|
// Consider factoring it out to the tabs package.
|
|
1207
|
-
/* @__PURE__ */
|
|
1285
|
+
/* @__PURE__ */ import_react25.default.createElement(import_react_ui20.Dialog.Content, {
|
|
1208
1286
|
classNames: "p-0 bs-content min-bs-[15rem] max-bs-full md:max-is-[40rem] overflow-hidden"
|
|
1209
|
-
}, /* @__PURE__ */
|
|
1287
|
+
}, /* @__PURE__ */ import_react25.default.createElement("div", {
|
|
1210
1288
|
role: "none",
|
|
1211
1289
|
className: "flex justify-between pbs-2 pis-2 pie-2 @md:pbs-4 @md:pis-4 @md:pie-4"
|
|
1212
|
-
}, /* @__PURE__ */
|
|
1290
|
+
}, /* @__PURE__ */ import_react25.default.createElement(import_react_ui20.Dialog.Title, {
|
|
1213
1291
|
onClick: () => setTabsActivePart("list"),
|
|
1214
1292
|
"aria-description": t("click to return to tablist description"),
|
|
1215
1293
|
classNames: "flex cursor-pointer items-center group/title"
|
|
1216
|
-
}, /* @__PURE__ */
|
|
1294
|
+
}, /* @__PURE__ */ import_react25.default.createElement(import_react_ui20.Icon, {
|
|
1217
1295
|
icon: "ph--caret-left--regular",
|
|
1218
1296
|
size: 4,
|
|
1219
1297
|
classNames: [
|
|
1220
1298
|
"@md:hidden",
|
|
1221
1299
|
tabsActivePart === "list" && "invisible"
|
|
1222
1300
|
]
|
|
1223
|
-
}), /* @__PURE__ */
|
|
1301
|
+
}), /* @__PURE__ */ import_react25.default.createElement("span", {
|
|
1224
1302
|
className: tabsActivePart !== "list" ? "group-hover/title:underline @md:group-hover/title:no-underline underline-offset-4 decoration-1" : ""
|
|
1225
|
-
}, (0,
|
|
1303
|
+
}, (0, import_react_ui20.toLocalizedString)(name, t))), /* @__PURE__ */ import_react25.default.createElement(import_react_ui20.Dialog.Close, {
|
|
1226
1304
|
asChild: true
|
|
1227
|
-
}, /* @__PURE__ */
|
|
1305
|
+
}, /* @__PURE__ */ import_react25.default.createElement(import_react_ui20.Button, {
|
|
1228
1306
|
density: "fine",
|
|
1229
1307
|
variant: "ghost",
|
|
1230
1308
|
autoFocus: true
|
|
1231
|
-
}, /* @__PURE__ */
|
|
1309
|
+
}, /* @__PURE__ */ import_react25.default.createElement(import_react_ui20.Icon, {
|
|
1232
1310
|
icon: "ph--x--regular",
|
|
1233
1311
|
size: 4
|
|
1234
|
-
})))), /* @__PURE__ */
|
|
1312
|
+
})))), /* @__PURE__ */ import_react25.default.createElement(import_react_ui_tabs.Tabs.Root, {
|
|
1235
1313
|
orientation: "vertical",
|
|
1236
1314
|
value: selected,
|
|
1237
1315
|
onValueChange: setSelected,
|
|
1238
1316
|
activePart: tabsActivePart,
|
|
1239
1317
|
onActivePartChange: setTabsActivePart,
|
|
1240
1318
|
classNames: "flex flex-col flex-1 mbs-2"
|
|
1241
|
-
}, /* @__PURE__ */
|
|
1319
|
+
}, /* @__PURE__ */ import_react25.default.createElement(import_react_ui_tabs.Tabs.Viewport, {
|
|
1242
1320
|
classNames: "flex-1 min-bs-0"
|
|
1243
|
-
}, /* @__PURE__ */
|
|
1321
|
+
}, /* @__PURE__ */ import_react25.default.createElement("div", {
|
|
1244
1322
|
role: "none",
|
|
1245
1323
|
className: "overflow-y-auto pli-3 @md:pis-2 @md:pie-0 mbe-4 border-r border-separator"
|
|
1246
|
-
}, /* @__PURE__ */
|
|
1324
|
+
}, /* @__PURE__ */ import_react25.default.createElement(import_react_ui_tabs.Tabs.Tablist, {
|
|
1247
1325
|
classNames: "flex flex-col max-bs-none min-is-[200px] gap-4 overflow-y-auto"
|
|
1248
|
-
}, /* @__PURE__ */
|
|
1326
|
+
}, /* @__PURE__ */ import_react25.default.createElement("div", {
|
|
1249
1327
|
role: "none",
|
|
1250
1328
|
className: "flex flex-col ml-1"
|
|
1251
|
-
}, /* @__PURE__ */
|
|
1329
|
+
}, /* @__PURE__ */ import_react25.default.createElement(import_react_ui_tabs.Tabs.Tab, {
|
|
1252
1330
|
value: "settings"
|
|
1253
|
-
}, t("settings tab label")), /* @__PURE__ */
|
|
1331
|
+
}, t("settings tab label")), /* @__PURE__ */ import_react25.default.createElement(import_react_ui_tabs.Tabs.Tab, {
|
|
1254
1332
|
value: "members",
|
|
1255
1333
|
disabled: locked
|
|
1256
|
-
}, t("members tab label")), panels.map((panel) => /* @__PURE__ */
|
|
1334
|
+
}, t("members tab label")), panels.map((panel) => /* @__PURE__ */ import_react25.default.createElement(import_react_ui_tabs.Tabs.Tab, {
|
|
1257
1335
|
key: panel.id,
|
|
1258
1336
|
value: panel.id
|
|
1259
|
-
}, (0,
|
|
1337
|
+
}, (0, import_react_ui20.toLocalizedString)(panel.label, t)))))), /* @__PURE__ */ import_react25.default.createElement(import_react_ui_tabs.Tabs.Tabpanel, {
|
|
1260
1338
|
value: "settings",
|
|
1261
1339
|
classNames: "pli-3 @md:pli-5 max-bs-dvh overflow-y-auto"
|
|
1262
|
-
}, /* @__PURE__ */
|
|
1340
|
+
}, /* @__PURE__ */ import_react25.default.createElement(SpaceSettingsPanel, {
|
|
1263
1341
|
space
|
|
1264
|
-
})), /* @__PURE__ */
|
|
1342
|
+
})), /* @__PURE__ */ import_react25.default.createElement(import_react_ui_tabs.Tabs.Tabpanel, {
|
|
1265
1343
|
value: "members",
|
|
1266
1344
|
classNames: "pli-3 @md:pli-5 max-bs-dvh overflow-y-auto"
|
|
1267
|
-
}, /* @__PURE__ */
|
|
1345
|
+
}, /* @__PURE__ */ import_react25.default.createElement(import_react_ui20.Clipboard.Provider, null, /* @__PURE__ */ import_react25.default.createElement(import_react26.SpacePanel, {
|
|
1268
1346
|
space,
|
|
1269
1347
|
hideHeading: true,
|
|
1270
1348
|
target,
|
|
1271
1349
|
createInvitationUrl
|
|
1272
|
-
}))), panels.map((panel) => /* @__PURE__ */
|
|
1350
|
+
}))), panels.map((panel) => /* @__PURE__ */ import_react25.default.createElement(import_react_ui_tabs.Tabs.Tabpanel, {
|
|
1273
1351
|
key: panel.id,
|
|
1274
1352
|
value: panel.id,
|
|
1275
1353
|
classNames: "pli-3 @md:pli-5 max-bs-dvh overflow-y-auto"
|
|
1276
|
-
}, /* @__PURE__ */
|
|
1354
|
+
}, /* @__PURE__ */ import_react25.default.createElement(import_app_framework10.Surface, {
|
|
1277
1355
|
role: `space-settings--${panel.id}`,
|
|
1278
1356
|
data
|
|
1279
1357
|
}))))))
|
|
1280
1358
|
);
|
|
1281
1359
|
};
|
|
1282
|
-
var
|
|
1360
|
+
var __dxlog_file6 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/components/SyncStatus/sync-state.ts";
|
|
1283
1361
|
var createEmptyEdgeSyncState = () => ({
|
|
1284
1362
|
missingOnLocal: 0,
|
|
1285
1363
|
missingOnRemote: 0,
|
|
@@ -1300,10 +1378,10 @@ var getSyncSummary = (syncMap) => {
|
|
|
1300
1378
|
var isEdgePeerId = (peerId, spaceId) => peerId.startsWith(`${import_protocols.EdgeService.AUTOMERGE_REPLICATOR}:${spaceId}`);
|
|
1301
1379
|
var useSyncState = () => {
|
|
1302
1380
|
const client = (0, import_react_client9.useClient)();
|
|
1303
|
-
const [spaceState, setSpaceState] = (0,
|
|
1304
|
-
(0,
|
|
1381
|
+
const [spaceState, setSpaceState] = (0, import_react28.useState)({});
|
|
1382
|
+
(0, import_react28.useEffect)(() => {
|
|
1305
1383
|
const ctx = new import_context.Context(void 0, {
|
|
1306
|
-
F:
|
|
1384
|
+
F: __dxlog_file6,
|
|
1307
1385
|
L: 48
|
|
1308
1386
|
});
|
|
1309
1387
|
const createSubscriptions = (spaces) => {
|
|
@@ -1335,10 +1413,10 @@ var useSyncState = () => {
|
|
|
1335
1413
|
return spaceState;
|
|
1336
1414
|
};
|
|
1337
1415
|
var useSpaceSyncState = (space) => {
|
|
1338
|
-
const [spaceState, setSpaceState] = (0,
|
|
1339
|
-
(0,
|
|
1416
|
+
const [spaceState, setSpaceState] = (0, import_react28.useState)();
|
|
1417
|
+
(0, import_react28.useEffect)(() => {
|
|
1340
1418
|
const ctx = new import_context.Context(void 0, {
|
|
1341
|
-
F:
|
|
1419
|
+
F: __dxlog_file6,
|
|
1342
1420
|
L: 87
|
|
1343
1421
|
});
|
|
1344
1422
|
space.crud.subscribeToSyncState(ctx, ({ peers = [] }) => {
|
|
@@ -1356,9 +1434,9 @@ var useSpaceSyncState = (space) => {
|
|
|
1356
1434
|
return spaceState;
|
|
1357
1435
|
};
|
|
1358
1436
|
var useEdgeStatus = () => {
|
|
1359
|
-
const [status, setStatus] = (0,
|
|
1437
|
+
const [status, setStatus] = (0, import_react27.useState)(import_services.QueryEdgeStatusResponse.EdgeStatus.NOT_CONNECTED);
|
|
1360
1438
|
const client = (0, import_react_client8.useClient)();
|
|
1361
|
-
(0,
|
|
1439
|
+
(0, import_react27.useEffect)(() => {
|
|
1362
1440
|
client.services.services.EdgeAgentService?.queryEdgeStatus().subscribe(({ status: status2 }) => {
|
|
1363
1441
|
setStatus(status2);
|
|
1364
1442
|
});
|
|
@@ -1368,11 +1446,11 @@ var useEdgeStatus = () => {
|
|
|
1368
1446
|
return status;
|
|
1369
1447
|
};
|
|
1370
1448
|
var InlineSyncStatus = ({ space, open }) => {
|
|
1371
|
-
const { t } = (0,
|
|
1449
|
+
const { t } = (0, import_react_ui21.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
1372
1450
|
const id = space.id;
|
|
1373
1451
|
const { hasAttention, isAncestor, isRelated } = (0, import_react_ui_attention2.useAttention)(id);
|
|
1374
1452
|
const isAttended = hasAttention || isAncestor || isRelated;
|
|
1375
|
-
const { graph } = (0,
|
|
1453
|
+
const { graph } = (0, import_app_framework11.useAppGraph)();
|
|
1376
1454
|
const attended = (0, import_react_ui_attention2.useAttended)();
|
|
1377
1455
|
const startOfAttention = attended.at(-1);
|
|
1378
1456
|
const path = usePath(graph, startOfAttention);
|
|
@@ -1381,17 +1459,17 @@ var InlineSyncStatus = ({ space, open }) => {
|
|
|
1381
1459
|
const edgeSyncEnabled = space.internal.data.edgeReplication === import_metadata2.EdgeReplicationSetting.ENABLED;
|
|
1382
1460
|
const syncState = useSpaceSyncState(space);
|
|
1383
1461
|
const syncing = connectedToEdge && edgeSyncEnabled && syncState && syncState.missingOnLocal > 0;
|
|
1384
|
-
return /* @__PURE__ */
|
|
1462
|
+
return /* @__PURE__ */ import_react27.default.createElement(import_react_ui21.Tooltip.Root, null, /* @__PURE__ */ import_react27.default.createElement(import_react_ui21.Tooltip.Trigger, {
|
|
1385
1463
|
asChild: true
|
|
1386
|
-
}, /* @__PURE__ */
|
|
1464
|
+
}, /* @__PURE__ */ import_react27.default.createElement(import_react_ui_attention2.AttentionGlyph, {
|
|
1387
1465
|
syncing,
|
|
1388
1466
|
attended: isAttended,
|
|
1389
1467
|
containsAttended,
|
|
1390
1468
|
classNames: "self-center mie-1"
|
|
1391
|
-
})), /* @__PURE__ */
|
|
1469
|
+
})), /* @__PURE__ */ import_react27.default.createElement(import_react_ui21.Tooltip.Portal, null, /* @__PURE__ */ import_react27.default.createElement(import_react_ui21.Tooltip.Content, {
|
|
1392
1470
|
side: "bottom",
|
|
1393
1471
|
classNames: "z-[70]"
|
|
1394
|
-
}, /* @__PURE__ */
|
|
1472
|
+
}, /* @__PURE__ */ import_react27.default.createElement("span", null, t("syncing label")), /* @__PURE__ */ import_react27.default.createElement(import_react_ui21.Tooltip.Arrow, null))));
|
|
1395
1473
|
};
|
|
1396
1474
|
var SYNC_STALLED_TIMEOUT = 5e3;
|
|
1397
1475
|
var styles = {
|
|
@@ -1400,9 +1478,9 @@ var styles = {
|
|
|
1400
1478
|
barHover: "dark:hover:bg-green-500"
|
|
1401
1479
|
};
|
|
1402
1480
|
var useActive = (count) => {
|
|
1403
|
-
const [current, setCurrent] = (0,
|
|
1404
|
-
const [active, setActive] = (0,
|
|
1405
|
-
(0,
|
|
1481
|
+
const [current, setCurrent] = (0, import_react30.useState)(count);
|
|
1482
|
+
const [active, setActive] = (0, import_react30.useState)(false);
|
|
1483
|
+
(0, import_react30.useEffect)(() => {
|
|
1406
1484
|
let t;
|
|
1407
1485
|
if (count !== current) {
|
|
1408
1486
|
setActive(true);
|
|
@@ -1423,16 +1501,16 @@ var useActive = (count) => {
|
|
|
1423
1501
|
return active;
|
|
1424
1502
|
};
|
|
1425
1503
|
var SpaceRowContainer = ({ spaceId, state }) => {
|
|
1426
|
-
const { t } = (0,
|
|
1504
|
+
const { t } = (0, import_react_ui23.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
1427
1505
|
const client = (0, import_react_client11.useClient)();
|
|
1428
1506
|
const space = (0, import_echo6.useSpace)(spaceId);
|
|
1429
1507
|
if (!space) {
|
|
1430
1508
|
return null;
|
|
1431
1509
|
}
|
|
1432
|
-
const spaceName = (0,
|
|
1510
|
+
const spaceName = (0, import_react_ui23.toLocalizedString)((0, import_chunk_OVGKWJOC.getSpaceDisplayName)(space, {
|
|
1433
1511
|
personal: space === client.spaces.default
|
|
1434
1512
|
}), t);
|
|
1435
|
-
return /* @__PURE__ */
|
|
1513
|
+
return /* @__PURE__ */ import_react30.default.createElement(SpaceRow, {
|
|
1436
1514
|
spaceId,
|
|
1437
1515
|
spaceName,
|
|
1438
1516
|
state
|
|
@@ -1441,19 +1519,19 @@ var SpaceRowContainer = ({ spaceId, state }) => {
|
|
|
1441
1519
|
var SpaceRow = ({ spaceId, spaceName, state: { localDocumentCount, remoteDocumentCount, missingOnLocal, missingOnRemote } }) => {
|
|
1442
1520
|
const downActive = useActive(localDocumentCount);
|
|
1443
1521
|
const upActive = useActive(remoteDocumentCount);
|
|
1444
|
-
return /* @__PURE__ */
|
|
1522
|
+
return /* @__PURE__ */ import_react30.default.createElement("div", {
|
|
1445
1523
|
className: "flex items-center mx-0.5 gap-0.5 cursor-pointer",
|
|
1446
1524
|
title: spaceId,
|
|
1447
1525
|
onClick: () => {
|
|
1448
1526
|
void navigator.clipboard.writeText(spaceId);
|
|
1449
1527
|
}
|
|
1450
|
-
}, /* @__PURE__ */
|
|
1528
|
+
}, /* @__PURE__ */ import_react30.default.createElement("span", {
|
|
1451
1529
|
className: "is-1/2 truncate"
|
|
1452
|
-
}, spaceName), /* @__PURE__ */
|
|
1530
|
+
}, spaceName), /* @__PURE__ */ import_react30.default.createElement(import_react_ui23.Icon, {
|
|
1453
1531
|
icon: "ph--arrow-fat-line-left--regular",
|
|
1454
1532
|
size: 3,
|
|
1455
1533
|
classNames: (0, import_react_ui_theme6.mx)(downActive && "animate-[pulse_1s_infinite]")
|
|
1456
|
-
}), /* @__PURE__ */
|
|
1534
|
+
}), /* @__PURE__ */ import_react30.default.createElement(Candle, {
|
|
1457
1535
|
up: {
|
|
1458
1536
|
count: remoteDocumentCount,
|
|
1459
1537
|
total: remoteDocumentCount + missingOnRemote
|
|
@@ -1463,41 +1541,41 @@ var SpaceRow = ({ spaceId, spaceName, state: { localDocumentCount, remoteDocumen
|
|
|
1463
1541
|
total: localDocumentCount + missingOnLocal
|
|
1464
1542
|
},
|
|
1465
1543
|
title: spaceId
|
|
1466
|
-
}), /* @__PURE__ */
|
|
1544
|
+
}), /* @__PURE__ */ import_react30.default.createElement(import_react_ui23.Icon, {
|
|
1467
1545
|
icon: "ph--arrow-fat-line-right--regular",
|
|
1468
1546
|
size: 3,
|
|
1469
1547
|
classNames: (0, import_react_ui_theme6.mx)(upActive && "animate-[pulse_1s_step-start_infinite]")
|
|
1470
1548
|
}));
|
|
1471
1549
|
};
|
|
1472
1550
|
var Candle = ({ classNames, up, down }) => {
|
|
1473
|
-
return /* @__PURE__ */
|
|
1551
|
+
return /* @__PURE__ */ import_react30.default.createElement("div", {
|
|
1474
1552
|
className: (0, import_react_ui_theme6.mx)("grid grid-cols-[1fr_2rem_1fr] w-full h-3", classNames)
|
|
1475
|
-
}, /* @__PURE__ */
|
|
1553
|
+
}, /* @__PURE__ */ import_react30.default.createElement(Bar, {
|
|
1476
1554
|
classNames: "justify-end",
|
|
1477
1555
|
...up
|
|
1478
|
-
}), /* @__PURE__ */
|
|
1556
|
+
}), /* @__PURE__ */ import_react30.default.createElement("div", {
|
|
1479
1557
|
className: "relative"
|
|
1480
|
-
}, /* @__PURE__ */
|
|
1558
|
+
}, /* @__PURE__ */ import_react30.default.createElement("div", {
|
|
1481
1559
|
className: (0, import_react_ui_theme6.mx)("absolute inset-0 flex items-center justify-center text-xs", styles.barBg)
|
|
1482
|
-
}, up.total)), /* @__PURE__ */
|
|
1560
|
+
}, up.total)), /* @__PURE__ */ import_react30.default.createElement(Bar, down));
|
|
1483
1561
|
};
|
|
1484
1562
|
var Bar = ({ classNames, count, total }) => {
|
|
1485
1563
|
let p = count / total * 100;
|
|
1486
1564
|
if (count < total) {
|
|
1487
1565
|
p = Math.min(p, 95);
|
|
1488
1566
|
}
|
|
1489
|
-
return /* @__PURE__ */
|
|
1567
|
+
return /* @__PURE__ */ import_react30.default.createElement("div", {
|
|
1490
1568
|
className: (0, import_react_ui_theme6.mx)("relative flex w-full", styles.barBg, classNames)
|
|
1491
|
-
}, /* @__PURE__ */
|
|
1569
|
+
}, /* @__PURE__ */ import_react30.default.createElement("div", {
|
|
1492
1570
|
className: (0, import_react_ui_theme6.mx)("shrink-0", styles.barFg),
|
|
1493
1571
|
style: {
|
|
1494
1572
|
width: `${p}%`
|
|
1495
1573
|
}
|
|
1496
|
-
}), count !== total && /* @__PURE__ */
|
|
1574
|
+
}), count !== total && /* @__PURE__ */ import_react30.default.createElement("div", {
|
|
1497
1575
|
className: "absolute top-0 bottom-0 flex items-center mx-0.5 text-black text-xs"
|
|
1498
1576
|
}, count));
|
|
1499
1577
|
};
|
|
1500
|
-
var
|
|
1578
|
+
var __dxlog_file7 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-space/src/components/SyncStatus/save-tracker.ts";
|
|
1501
1579
|
var createClientSaveTracker = (client, cb) => {
|
|
1502
1580
|
const unsubscribeCallbacks = {};
|
|
1503
1581
|
const state = {};
|
|
@@ -1525,7 +1603,7 @@ var createClientSaveTracker = (client, cb) => {
|
|
|
1525
1603
|
};
|
|
1526
1604
|
var createSpaceSaveTracker = (space, cb) => {
|
|
1527
1605
|
const ctx = new import_context2.Context(void 0, {
|
|
1528
|
-
F:
|
|
1606
|
+
F: __dxlog_file7,
|
|
1529
1607
|
L: 40
|
|
1530
1608
|
});
|
|
1531
1609
|
void space.waitUntilReady().then(() => {
|
|
@@ -1586,19 +1664,19 @@ var getIcon = (status) => {
|
|
|
1586
1664
|
var SyncStatus = () => {
|
|
1587
1665
|
const client = (0, import_react_client10.useClient)();
|
|
1588
1666
|
const state = useSyncState();
|
|
1589
|
-
const [saved, setSaved] = (0,
|
|
1590
|
-
(0,
|
|
1667
|
+
const [saved, setSaved] = (0, import_react29.useState)(true);
|
|
1668
|
+
(0, import_react29.useEffect)(() => {
|
|
1591
1669
|
return createClientSaveTracker(client, (state2) => {
|
|
1592
1670
|
setSaved(state2 === "saved");
|
|
1593
1671
|
});
|
|
1594
1672
|
}, []);
|
|
1595
|
-
return /* @__PURE__ */
|
|
1673
|
+
return /* @__PURE__ */ import_react29.default.createElement(SyncStatusIndicator, {
|
|
1596
1674
|
state,
|
|
1597
1675
|
saved
|
|
1598
1676
|
});
|
|
1599
1677
|
};
|
|
1600
1678
|
var SyncStatusIndicator = ({ state, saved }) => {
|
|
1601
|
-
const { t } = (0,
|
|
1679
|
+
const { t } = (0, import_react_ui22.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
1602
1680
|
const summary = getSyncSummary(state);
|
|
1603
1681
|
const offline = Object.values(state).length === 0;
|
|
1604
1682
|
const needsToUpload = summary.differentDocuments > 0 || summary.missingOnRemote > 0;
|
|
@@ -1609,8 +1687,8 @@ var SyncStatusIndicator = ({ state, saved }) => {
|
|
|
1609
1687
|
needsToUpload,
|
|
1610
1688
|
needsToDownload
|
|
1611
1689
|
});
|
|
1612
|
-
const [classNames, setClassNames] = (0,
|
|
1613
|
-
(0,
|
|
1690
|
+
const [classNames, setClassNames] = (0, import_react29.useState)();
|
|
1691
|
+
(0, import_react29.useEffect)(() => {
|
|
1614
1692
|
setClassNames(void 0);
|
|
1615
1693
|
if (offline || !needsToUpload && !needsToDownload) {
|
|
1616
1694
|
return;
|
|
@@ -1625,58 +1703,58 @@ var SyncStatusIndicator = ({ state, saved }) => {
|
|
|
1625
1703
|
needsToDownload
|
|
1626
1704
|
]);
|
|
1627
1705
|
const title = t(`${status} label`);
|
|
1628
|
-
const icon = /* @__PURE__ */
|
|
1706
|
+
const icon = /* @__PURE__ */ import_react29.default.createElement(import_react_ui22.Icon, {
|
|
1629
1707
|
icon: getIcon(status),
|
|
1630
1708
|
size: 4,
|
|
1631
1709
|
classNames
|
|
1632
1710
|
});
|
|
1633
1711
|
if (offline) {
|
|
1634
|
-
return /* @__PURE__ */
|
|
1712
|
+
return /* @__PURE__ */ import_react29.default.createElement(import_plugin_status_bar.StatusBar.Item, {
|
|
1635
1713
|
title
|
|
1636
1714
|
}, icon);
|
|
1637
1715
|
} else {
|
|
1638
|
-
return /* @__PURE__ */
|
|
1716
|
+
return /* @__PURE__ */ import_react29.default.createElement(import_react_ui22.Popover.Root, null, /* @__PURE__ */ import_react29.default.createElement(import_react_ui22.Popover.Trigger, {
|
|
1639
1717
|
asChild: true
|
|
1640
|
-
}, /* @__PURE__ */
|
|
1718
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_plugin_status_bar.StatusBar.Button, {
|
|
1641
1719
|
title
|
|
1642
|
-
}, icon)), /* @__PURE__ */
|
|
1720
|
+
}, icon)), /* @__PURE__ */ import_react29.default.createElement(import_react_ui22.Popover.Portal, null, /* @__PURE__ */ import_react29.default.createElement(import_react_ui22.Popover.Content, null, /* @__PURE__ */ import_react29.default.createElement(SyncStatusDetail, {
|
|
1643
1721
|
state,
|
|
1644
1722
|
summary,
|
|
1645
1723
|
debug: false
|
|
1646
|
-
}), /* @__PURE__ */
|
|
1724
|
+
}), /* @__PURE__ */ import_react29.default.createElement(import_react_ui22.Popover.Arrow, null))));
|
|
1647
1725
|
}
|
|
1648
1726
|
};
|
|
1649
1727
|
var SyncStatusDetail = ({ classNames, state, summary, debug }) => {
|
|
1650
|
-
const [showAll, setShowAll] = (0,
|
|
1651
|
-
const { t } = (0,
|
|
1728
|
+
const [showAll, setShowAll] = (0, import_react29.useState)(false);
|
|
1729
|
+
const { t } = (0, import_react_ui22.useTranslation)(import_chunk_WZR6OAN3.SPACE_PLUGIN);
|
|
1652
1730
|
const entries = Object.entries(state).filter(([_, value]) => showAll || value.missingOnLocal + value.missingOnRemote > 0).toSorted(([a], [b]) => a < b ? -1 : a > b ? 1 : 0);
|
|
1653
|
-
const handleCheckedChange = (0,
|
|
1731
|
+
const handleCheckedChange = (0, import_react29.useCallback)((state2) => setShowAll(state2), [
|
|
1654
1732
|
setShowAll
|
|
1655
1733
|
]);
|
|
1656
|
-
return /* @__PURE__ */
|
|
1734
|
+
return /* @__PURE__ */ import_react29.default.createElement("div", {
|
|
1657
1735
|
className: (0, import_react_ui_theme5.mx)("flex flex-col gap-3 p-2 text-xs min-w-96", classNames)
|
|
1658
|
-
}, /* @__PURE__ */
|
|
1736
|
+
}, /* @__PURE__ */ import_react29.default.createElement("div", {
|
|
1659
1737
|
role: "none",
|
|
1660
1738
|
className: "flex items-center"
|
|
1661
|
-
}, /* @__PURE__ */
|
|
1739
|
+
}, /* @__PURE__ */ import_react29.default.createElement("h1", {
|
|
1662
1740
|
className: "flex-1"
|
|
1663
|
-
}, t("sync status title")), /* @__PURE__ */
|
|
1741
|
+
}, t("sync status title")), /* @__PURE__ */ import_react29.default.createElement("div", {
|
|
1664
1742
|
className: "flex items-center gap-2"
|
|
1665
|
-
}, /* @__PURE__ */
|
|
1743
|
+
}, /* @__PURE__ */ import_react29.default.createElement(import_react_ui22.Input.Root, null, /* @__PURE__ */ import_react29.default.createElement(import_react_ui22.Input.Label, {
|
|
1666
1744
|
classNames: "text-xs"
|
|
1667
|
-
}, t("show all label")), /* @__PURE__ */
|
|
1745
|
+
}, t("show all label")), /* @__PURE__ */ import_react29.default.createElement(import_react_ui22.Input.Checkbox, {
|
|
1668
1746
|
checked: showAll,
|
|
1669
1747
|
onCheckedChange: handleCheckedChange
|
|
1670
|
-
})))), /* @__PURE__ */
|
|
1748
|
+
})))), /* @__PURE__ */ import_react29.default.createElement("div", {
|
|
1671
1749
|
className: "flex flex-col gap-2"
|
|
1672
|
-
}, entries.length === 0 && /* @__PURE__ */
|
|
1750
|
+
}, entries.length === 0 && /* @__PURE__ */ import_react29.default.createElement("div", {
|
|
1673
1751
|
role: "none",
|
|
1674
1752
|
className: "flex justify-center"
|
|
1675
|
-
}, t("no sync status label")), entries.map(([spaceId, state2]) => /* @__PURE__ */
|
|
1753
|
+
}, t("no sync status label")), entries.map(([spaceId, state2]) => /* @__PURE__ */ import_react29.default.createElement(SpaceRowContainer, {
|
|
1676
1754
|
key: spaceId,
|
|
1677
1755
|
spaceId,
|
|
1678
1756
|
state: state2
|
|
1679
|
-
}))), debug && /* @__PURE__ */
|
|
1757
|
+
}))), debug && /* @__PURE__ */ import_react29.default.createElement(import_react_ui_syntax_highlighter.SyntaxHighlighter, {
|
|
1680
1758
|
language: "json"
|
|
1681
1759
|
}, JSON.stringify(summary, null, 2)));
|
|
1682
1760
|
};
|
|
@@ -1700,14 +1778,17 @@ var SyncStatusDetail = ({ classNames, state, summary, debug }) => {
|
|
|
1700
1778
|
JOIN_DIALOG,
|
|
1701
1779
|
JoinDialog,
|
|
1702
1780
|
MenuFooter,
|
|
1781
|
+
POPOVER_ADD_SPACE,
|
|
1703
1782
|
POPOVER_RENAME_OBJECT,
|
|
1704
1783
|
POPOVER_RENAME_SPACE,
|
|
1705
1784
|
PersistenceStatus,
|
|
1785
|
+
PopoverAddSpace,
|
|
1706
1786
|
PopoverRenameObject,
|
|
1707
1787
|
PopoverRenameSpace,
|
|
1708
1788
|
ReactRoot,
|
|
1709
1789
|
ReactSurface,
|
|
1710
1790
|
SPACE_SETTINGS_DIALOG,
|
|
1791
|
+
Schema,
|
|
1711
1792
|
ShareSpaceButton,
|
|
1712
1793
|
ShareSpaceButtonImpl,
|
|
1713
1794
|
SmallPresence,
|
|
@@ -1723,4 +1804,4 @@ var SyncStatusDetail = ({ classNames, state, summary, debug }) => {
|
|
|
1723
1804
|
SyncStatusDetail,
|
|
1724
1805
|
SyncStatusIndicator
|
|
1725
1806
|
});
|
|
1726
|
-
//# sourceMappingURL=chunk-
|
|
1807
|
+
//# sourceMappingURL=chunk-N2FS7PRA.cjs.map
|