@dxos/plugin-space 0.8.4-main.a4bbb77 → 0.8.4-main.ae835ea
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/{CollectionMain-AX7KKXWP.mjs → CollectionMain-HTKSZCRR.mjs} +2 -2
- package/dist/lib/browser/ObjectDetailsPanel-5B45G744.mjs +145 -0
- package/dist/lib/browser/ObjectDetailsPanel-5B45G744.mjs.map +7 -0
- package/dist/lib/browser/ObjectSettings-UFTKBP7B.mjs +146 -0
- package/dist/lib/browser/ObjectSettings-UFTKBP7B.mjs.map +7 -0
- package/dist/lib/browser/RecordMain-BCSXTSEB.mjs +99 -0
- package/dist/lib/browser/RecordMain-BCSXTSEB.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-builder-W7RVDAUA.mjs → app-graph-builder-QJFO4ANM.mjs} +37 -34
- package/dist/lib/browser/app-graph-builder-QJFO4ANM.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-serializer-VLHVTDX4.mjs → app-graph-serializer-3R5NVV7U.mjs} +5 -5
- package/dist/lib/browser/{chunk-E2I747A7.mjs → chunk-2NS3VPSY.mjs} +2 -2
- package/dist/lib/browser/chunk-2NS3VPSY.mjs.map +7 -0
- package/dist/lib/browser/{chunk-ZIZ2JLW6.mjs → chunk-4V4JNJ33.mjs} +12 -4
- package/dist/lib/browser/chunk-4V4JNJ33.mjs.map +7 -0
- package/dist/lib/browser/{chunk-2BFVC5K6.mjs → chunk-ENBBJSNE.mjs} +230 -254
- package/dist/lib/browser/chunk-ENBBJSNE.mjs.map +7 -0
- package/dist/lib/browser/chunk-HS2VD6DN.mjs +166 -0
- package/dist/lib/browser/chunk-HS2VD6DN.mjs.map +7 -0
- package/dist/lib/browser/{chunk-PN27K4I7.mjs → chunk-OWNBEI5J.mjs} +23 -14
- package/dist/lib/browser/chunk-OWNBEI5J.mjs.map +7 -0
- package/dist/lib/browser/{chunk-JCHSUOPF.mjs → chunk-SLDQWMQ2.mjs} +12 -7
- package/dist/lib/browser/chunk-SLDQWMQ2.mjs.map +7 -0
- package/dist/lib/browser/chunk-VZBIIYFM.mjs +16 -0
- package/dist/lib/browser/chunk-VZBIIYFM.mjs.map +7 -0
- package/dist/lib/browser/{chunk-EIXZABXD.mjs → chunk-WJXU4GKV.mjs} +2 -2
- package/dist/lib/browser/index.mjs +31 -31
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-HA7DPAUE.mjs → intent-resolver-MBVOLXFQ.mjs} +30 -23
- package/dist/lib/browser/intent-resolver-MBVOLXFQ.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-root-YQUJU64P.mjs → react-root-NKEKCEYM.mjs} +7 -7
- package/dist/lib/browser/{react-surface-HTXYMRSW.mjs → react-surface-PYSN2MBY.mjs} +15 -46
- package/dist/lib/browser/react-surface-PYSN2MBY.mjs.map +7 -0
- package/dist/lib/browser/{schema-defs-R56ZDBZ7.mjs → schema-defs-DWYK7TYW.mjs} +3 -3
- package/dist/lib/browser/{settings-5XPQMSPO.mjs → settings-ZUCC3ZLB.mjs} +3 -3
- package/dist/lib/browser/{spaces-ready-YY77ANIF.mjs → spaces-ready-HTWWJHLR.mjs} +6 -6
- package/dist/lib/browser/spaces-ready-HTWWJHLR.mjs.map +7 -0
- package/dist/lib/browser/{state-Y4RVCG4A.mjs → state-ISVAKMO7.mjs} +3 -3
- package/dist/lib/browser/types/index.mjs +2 -2
- package/dist/lib/node-esm/{CollectionMain-EU57SRYK.mjs → CollectionMain-OUHGG6OC.mjs} +2 -2
- package/dist/lib/node-esm/ObjectDetailsPanel-4SDHQVQU.mjs +146 -0
- package/dist/lib/node-esm/ObjectDetailsPanel-4SDHQVQU.mjs.map +7 -0
- package/dist/lib/node-esm/ObjectSettings-EU6F43RP.mjs +147 -0
- package/dist/lib/node-esm/ObjectSettings-EU6F43RP.mjs.map +7 -0
- package/dist/lib/node-esm/RecordMain-SD76DGOR.mjs +100 -0
- package/dist/lib/node-esm/RecordMain-SD76DGOR.mjs.map +7 -0
- package/dist/lib/node-esm/{app-graph-builder-5ZJJUMQI.mjs → app-graph-builder-B23W62HY.mjs} +37 -34
- package/dist/lib/node-esm/app-graph-builder-B23W62HY.mjs.map +7 -0
- package/dist/lib/node-esm/{app-graph-serializer-EZJSGJUT.mjs → app-graph-serializer-3Z3EXEEF.mjs} +5 -5
- package/dist/lib/node-esm/chunk-BDEFTL6K.mjs +18 -0
- package/dist/lib/node-esm/chunk-BDEFTL6K.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-5XRYHWL7.mjs → chunk-G4PDWB7G.mjs} +12 -4
- package/dist/lib/node-esm/chunk-G4PDWB7G.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-SVFKU7EW.mjs → chunk-H4JILUJK.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-BLPXWPLB.mjs → chunk-KKPCCA5O.mjs} +230 -254
- package/dist/lib/node-esm/chunk-KKPCCA5O.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-PM4ZIGKC.mjs +167 -0
- package/dist/lib/node-esm/chunk-PM4ZIGKC.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-XDQXUZMK.mjs → chunk-XEVIWD3O.mjs} +23 -14
- package/dist/lib/node-esm/chunk-XEVIWD3O.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-6WNZW6KT.mjs → chunk-YFQXFQGT.mjs} +12 -7
- package/dist/lib/node-esm/chunk-YFQXFQGT.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-IJVBBVCL.mjs → chunk-ZLMFLI7G.mjs} +2 -2
- package/dist/lib/node-esm/chunk-ZLMFLI7G.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +31 -31
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-LQNHMPIX.mjs → intent-resolver-IWI47NTW.mjs} +30 -23
- package/dist/lib/node-esm/intent-resolver-IWI47NTW.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-root-UTLJEIKE.mjs → react-root-LX7SIG6M.mjs} +7 -7
- package/dist/lib/node-esm/{react-surface-LYDYON3U.mjs → react-surface-6SVGOZNJ.mjs} +15 -46
- package/dist/lib/node-esm/react-surface-6SVGOZNJ.mjs.map +7 -0
- package/dist/lib/node-esm/{schema-defs-7IMJPIWS.mjs → schema-defs-EOG2UPJU.mjs} +3 -3
- package/dist/lib/node-esm/{settings-XBSK5KHH.mjs → settings-ZDJNLFGW.mjs} +3 -3
- package/dist/lib/node-esm/{spaces-ready-YX4IHT4P.mjs → spaces-ready-VUGYPF4L.mjs} +6 -6
- package/dist/lib/node-esm/spaces-ready-VUGYPF4L.mjs.map +7 -0
- package/dist/lib/node-esm/{state-HOHAVPUO.mjs → state-QZ4Q6ZRL.mjs} +3 -3
- package/dist/lib/node-esm/types/index.mjs +2 -2
- package/dist/types/src/SpacePlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/capabilities.d.ts +2 -1
- package/dist/types/src/capabilities/capabilities.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/components/CreateDialog/CreateObjectDialog.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts +80 -0
- package/dist/types/src/components/CreateDialog/CreateObjectDialog.stories.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts +1 -1
- package/dist/types/src/components/CreateDialog/CreateObjectPanel.d.ts.map +1 -1
- package/dist/types/src/components/CreateDialog/CreateSpaceDialog.d.ts.map +1 -1
- package/dist/types/src/components/MembersContainer.stories.d.ts +80 -0
- package/dist/types/src/components/MembersContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts +9 -0
- package/dist/types/src/components/ObjectDetailsPanel/ObjectDetailsPanel.d.ts.map +1 -0
- package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts +10 -0
- package/dist/types/src/components/ObjectDetailsPanel/ObjectForm.d.ts.map +1 -0
- package/dist/types/src/components/ObjectDetailsPanel/index.d.ts +3 -0
- package/dist/types/src/components/ObjectDetailsPanel/index.d.ts.map +1 -0
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts +2 -2
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.d.ts.map +1 -1
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts +1500 -0
- package/dist/types/src/components/ObjectSettings/BaseObjectSettings.stories.d.ts.map +1 -0
- package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts +1 -1
- package/dist/types/src/components/ObjectSettings/ForeignKeys.d.ts.map +1 -1
- package/dist/types/src/components/ObjectSettings/index.d.ts +2 -1
- package/dist/types/src/components/ObjectSettings/index.d.ts.map +1 -1
- package/dist/types/src/components/RecordMain.d.ts +4 -3
- package/dist/types/src/components/RecordMain.d.ts.map +1 -1
- package/dist/types/src/components/RecordMain.stories.d.ts +1667 -0
- package/dist/types/src/components/RecordMain.stories.d.ts.map +1 -0
- package/dist/types/src/components/SpacePresence.stories.d.ts +80 -0
- package/dist/types/src/components/SpacePresence.stories.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.d.ts.map +1 -1
- package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts +80 -0
- package/dist/types/src/components/SpaceSettings/SpaceSettingsContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/SyncStatus.d.ts.map +1 -1
- package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts +81 -1
- package/dist/types/src/components/SyncStatus/SyncStatus.stories.d.ts.map +1 -1
- package/dist/types/src/components/ViewEditor.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +4 -6
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/hooks/index.d.ts +1 -0
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useInputSurfaceLookup.d.ts +1 -1
- package/dist/types/src/hooks/useInputSurfaceLookup.d.ts.map +1 -1
- package/dist/types/src/hooks/usePath.d.ts +1 -1
- package/dist/types/src/hooks/usePath.d.ts.map +1 -1
- package/dist/types/src/hooks/useTypeOptions.d.ts +10 -0
- package/dist/types/src/hooks/useTypeOptions.d.ts.map +1 -0
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +80 -0
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +6 -4
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +4 -1
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +50 -48
- package/src/SpacePlugin.ts +7 -13
- package/src/capabilities/app-graph-builder.ts +29 -24
- package/src/capabilities/capabilities.ts +7 -2
- package/src/capabilities/intent-resolver.ts +13 -8
- package/src/capabilities/react-surface.tsx +6 -77
- package/src/capabilities/spaces-ready.ts +1 -1
- package/src/components/CreateDialog/CreateObjectDialog.tsx +5 -4
- package/src/components/CreateDialog/CreateObjectPanel.tsx +2 -2
- package/src/components/CreateDialog/CreateSpaceDialog.tsx +2 -1
- package/src/components/MembersContainer.tsx +1 -1
- package/src/components/{ObjectDetailsPanel.tsx → ObjectDetailsPanel/ObjectDetailsPanel.tsx} +8 -35
- package/src/components/ObjectDetailsPanel/ObjectForm.tsx +75 -0
- package/src/components/ObjectDetailsPanel/index.ts +7 -0
- package/src/components/ObjectSettings/AdvancedObjectSettings.tsx +1 -1
- package/src/components/ObjectSettings/BaseObjectSettings.stories.tsx +63 -0
- package/src/components/ObjectSettings/BaseObjectSettings.tsx +86 -26
- package/src/components/ObjectSettings/ForeignKeys.tsx +1 -1
- package/src/components/ObjectSettings/index.ts +3 -1
- package/src/components/RecordMain.stories.tsx +116 -0
- package/src/components/RecordMain.tsx +69 -29
- package/src/components/SchemaContainer.tsx +1 -1
- package/src/components/SpacePresence.tsx +1 -1
- package/src/components/SpaceSettings/SpaceSettingsContainer.tsx +4 -3
- package/src/components/SyncStatus/InlineSyncStatus.tsx +5 -5
- package/src/components/SyncStatus/SyncStatus.stories.tsx +3 -2
- package/src/components/SyncStatus/SyncStatus.tsx +93 -3
- package/src/components/ViewEditor.tsx +6 -7
- package/src/components/index.ts +1 -1
- package/src/hooks/index.ts +1 -0
- package/src/hooks/useInputSurfaceLookup.tsx +1 -1
- package/src/hooks/usePath.ts +1 -1
- package/src/hooks/useTypeOptions.ts +59 -0
- package/src/meta.ts +5 -0
- package/src/translations.ts +10 -1
- package/src/types/types.ts +9 -5
- package/src/util.tsx +22 -8
- package/dist/lib/browser/ObjectDetailsPanel-ETI5YBTH.mjs +0 -90
- package/dist/lib/browser/ObjectDetailsPanel-ETI5YBTH.mjs.map +0 -7
- package/dist/lib/browser/RecordMain-TEBGAVSL.mjs +0 -68
- package/dist/lib/browser/RecordMain-TEBGAVSL.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-W7RVDAUA.mjs.map +0 -7
- package/dist/lib/browser/chunk-2BFVC5K6.mjs.map +0 -7
- package/dist/lib/browser/chunk-E2I747A7.mjs.map +0 -7
- package/dist/lib/browser/chunk-ELJDGQTO.mjs +0 -94
- package/dist/lib/browser/chunk-ELJDGQTO.mjs.map +0 -7
- package/dist/lib/browser/chunk-IRKDREHY.mjs +0 -11
- package/dist/lib/browser/chunk-IRKDREHY.mjs.map +0 -7
- package/dist/lib/browser/chunk-JCHSUOPF.mjs.map +0 -7
- package/dist/lib/browser/chunk-PN27K4I7.mjs.map +0 -7
- package/dist/lib/browser/chunk-ZIZ2JLW6.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-HA7DPAUE.mjs.map +0 -7
- package/dist/lib/browser/react-surface-HTXYMRSW.mjs.map +0 -7
- package/dist/lib/browser/spaces-ready-YY77ANIF.mjs.map +0 -7
- package/dist/lib/node-esm/ObjectDetailsPanel-TQ5GN4QJ.mjs +0 -91
- package/dist/lib/node-esm/ObjectDetailsPanel-TQ5GN4QJ.mjs.map +0 -7
- package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs +0 -70
- package/dist/lib/node-esm/RecordMain-WLYJMYER.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-5ZJJUMQI.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-5XRYHWL7.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-6WNZW6KT.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-BLPXWPLB.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-IJVBBVCL.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-MWNATOXL.mjs +0 -13
- package/dist/lib/node-esm/chunk-MWNATOXL.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-Q6AAQLQG.mjs +0 -96
- package/dist/lib/node-esm/chunk-Q6AAQLQG.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-XDQXUZMK.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-LQNHMPIX.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-LYDYON3U.mjs.map +0 -7
- package/dist/lib/node-esm/spaces-ready-YX4IHT4P.mjs.map +0 -7
- package/dist/types/src/components/ObjectDetailsPanel.d.ts +0 -9
- package/dist/types/src/components/ObjectDetailsPanel.d.ts.map +0 -1
- /package/dist/lib/browser/{CollectionMain-AX7KKXWP.mjs.map → CollectionMain-HTKSZCRR.mjs.map} +0 -0
- /package/dist/lib/browser/{app-graph-serializer-VLHVTDX4.mjs.map → app-graph-serializer-3R5NVV7U.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-EIXZABXD.mjs.map → chunk-WJXU4GKV.mjs.map} +0 -0
- /package/dist/lib/browser/{react-root-YQUJU64P.mjs.map → react-root-NKEKCEYM.mjs.map} +0 -0
- /package/dist/lib/browser/{schema-defs-R56ZDBZ7.mjs.map → schema-defs-DWYK7TYW.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-5XPQMSPO.mjs.map → settings-ZUCC3ZLB.mjs.map} +0 -0
- /package/dist/lib/browser/{state-Y4RVCG4A.mjs.map → state-ISVAKMO7.mjs.map} +0 -0
- /package/dist/lib/node-esm/{CollectionMain-EU57SRYK.mjs.map → CollectionMain-OUHGG6OC.mjs.map} +0 -0
- /package/dist/lib/node-esm/{app-graph-serializer-EZJSGJUT.mjs.map → app-graph-serializer-3Z3EXEEF.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-SVFKU7EW.mjs.map → chunk-H4JILUJK.mjs.map} +0 -0
- /package/dist/lib/node-esm/{react-root-UTLJEIKE.mjs.map → react-root-LX7SIG6M.mjs.map} +0 -0
- /package/dist/lib/node-esm/{schema-defs-7IMJPIWS.mjs.map → schema-defs-EOG2UPJU.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-XBSK5KHH.mjs.map → settings-ZDJNLFGW.mjs.map} +0 -0
- /package/dist/lib/node-esm/{state-HOHAVPUO.mjs.map → state-QZ4Q6ZRL.mjs.map} +0 -0
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
useInputSurfaceLookup,
|
|
3
3
|
usePath
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-HS2VD6DN.mjs";
|
|
5
5
|
import {
|
|
6
6
|
SpaceCapabilities
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-2NS3VPSY.mjs";
|
|
8
8
|
import {
|
|
9
9
|
COMPOSER_SPACE_LOCK,
|
|
10
10
|
getSpaceDisplayName
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-OWNBEI5J.mjs";
|
|
12
12
|
import {
|
|
13
13
|
SpaceAction,
|
|
14
14
|
SpaceForm
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-SLDQWMQ2.mjs";
|
|
16
16
|
import {
|
|
17
17
|
meta
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-VZBIIYFM.mjs";
|
|
19
19
|
|
|
20
20
|
// src/components/AwaitingObject.tsx
|
|
21
21
|
import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
|
|
@@ -120,7 +120,8 @@ var AwaitingObject = ({ id }) => {
|
|
|
120
120
|
|
|
121
121
|
// src/components/CreateDialog/CreateObjectDialog.tsx
|
|
122
122
|
import { useSignals as _useSignals3 } from "@preact-signals/safe-react/tracking";
|
|
123
|
-
import
|
|
123
|
+
import * as Effect from "effect/Effect";
|
|
124
|
+
import * as Function from "effect/Function";
|
|
124
125
|
import React3, { useCallback as useCallback3, useRef, useState as useState2 } from "react";
|
|
125
126
|
import { Capabilities, LayoutAction as LayoutAction2, chain, createIntent as createIntent2, useCapabilities, useIntentDispatcher as useIntentDispatcher2, usePluginManager } from "@dxos/app-framework";
|
|
126
127
|
import { Obj, Query, Type as Type2 } from "@dxos/echo";
|
|
@@ -129,28 +130,15 @@ import { useClient as useClient2 } from "@dxos/react-client";
|
|
|
129
130
|
import { getSpace, isLiveObject, isSpace, useQuery as useQuery2, useSpaces } from "@dxos/react-client/echo";
|
|
130
131
|
import { Button as Button2, Dialog, Icon as Icon3, useTranslation as useTranslation3 } from "@dxos/react-ui";
|
|
131
132
|
import { cardDialogContent, cardDialogHeader } from "@dxos/react-ui-stack";
|
|
132
|
-
import { DataType,
|
|
133
|
+
import { DataType, getTypenameFromQuery } from "@dxos/schema";
|
|
133
134
|
import { isNonNullable as isNonNullable2 } from "@dxos/util";
|
|
134
135
|
|
|
135
|
-
// src/capabilities/index.ts
|
|
136
|
-
import { lazy } from "@dxos/app-framework";
|
|
137
|
-
var AppGraphBuilder = lazy(() => import("./app-graph-builder-W7RVDAUA.mjs"));
|
|
138
|
-
var AppGraphSerializer = lazy(() => import("./app-graph-serializer-VLHVTDX4.mjs"));
|
|
139
|
-
var IdentityCreated = lazy(() => import("./identity-created-PW2BA46S.mjs"));
|
|
140
|
-
var IntentResolver = lazy(() => import("./intent-resolver-HA7DPAUE.mjs"));
|
|
141
|
-
var ReactRoot = lazy(() => import("./react-root-YQUJU64P.mjs"));
|
|
142
|
-
var ReactSurface = lazy(() => import("./react-surface-HTXYMRSW.mjs"));
|
|
143
|
-
var SchemaDefs = lazy(() => import("./schema-defs-R56ZDBZ7.mjs"));
|
|
144
|
-
var SpaceSettings = lazy(() => import("./settings-5XPQMSPO.mjs"));
|
|
145
|
-
var SpaceState = lazy(() => import("./state-Y4RVCG4A.mjs"));
|
|
146
|
-
var SpacesReady = lazy(() => import("./spaces-ready-YY77ANIF.mjs"));
|
|
147
|
-
|
|
148
136
|
// src/components/CreateDialog/CreateObjectPanel.tsx
|
|
149
137
|
import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
|
|
150
|
-
import
|
|
138
|
+
import * as Option from "effect/Option";
|
|
151
139
|
import React2, { useCallback as useCallback2 } from "react";
|
|
152
140
|
import { Type } from "@dxos/echo";
|
|
153
|
-
import { ViewAnnotation, getTypeAnnotation } from "@dxos/echo
|
|
141
|
+
import { ViewAnnotation, getTypeAnnotation } from "@dxos/echo/internal";
|
|
154
142
|
import { Icon as Icon2, toLocalizedString, useDefaultValue, useTranslation as useTranslation2 } from "@dxos/react-ui";
|
|
155
143
|
import { Form } from "@dxos/react-ui-form";
|
|
156
144
|
import { SearchList } from "@dxos/react-ui-searchlist";
|
|
@@ -323,7 +311,7 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, vi
|
|
|
323
311
|
const [typename, setTypename] = useState2(initialTypename);
|
|
324
312
|
const space = isSpace(target) ? target : getSpace(target);
|
|
325
313
|
const queryCollections = useQuery2(space, Query.type(DataType.QueryCollection));
|
|
326
|
-
const hiddenTypenames = queryCollections.map((collection) =>
|
|
314
|
+
const hiddenTypenames = queryCollections.map((collection) => getTypenameFromQuery(collection.query)).filter(isNonNullable2);
|
|
327
315
|
const resolve = useCallback3((typename2) => manager.context.getCapabilities(Capabilities.Metadata).find(({ id }) => id === typename2)?.metadata ?? {}, [
|
|
328
316
|
manager
|
|
329
317
|
]);
|
|
@@ -335,7 +323,7 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, vi
|
|
|
335
323
|
const space2 = isSpace(target) ? target : getSpace(target);
|
|
336
324
|
invariant(space2, "Missing space", {
|
|
337
325
|
F: __dxlog_file,
|
|
338
|
-
L:
|
|
326
|
+
L: 84,
|
|
339
327
|
S: this,
|
|
340
328
|
A: [
|
|
341
329
|
"space",
|
|
@@ -354,7 +342,7 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, vi
|
|
|
354
342
|
});
|
|
355
343
|
const shouldNavigate = _shouldNavigate ?? (() => true);
|
|
356
344
|
if (shouldNavigate(object)) {
|
|
357
|
-
yield* dispatch(pipe(addObjectIntent, chain(LayoutAction2.Open, {
|
|
345
|
+
yield* dispatch(Function.pipe(addObjectIntent, chain(LayoutAction2.Open, {
|
|
358
346
|
part: "main"
|
|
359
347
|
})));
|
|
360
348
|
} else {
|
|
@@ -413,7 +401,7 @@ var CreateObjectDialog = ({ target: initialTarget, typename: initialTypename, vi
|
|
|
413
401
|
|
|
414
402
|
// src/components/CreateDialog/CreateSpaceDialog.tsx
|
|
415
403
|
import { useSignals as _useSignals4 } from "@preact-signals/safe-react/tracking";
|
|
416
|
-
import
|
|
404
|
+
import * as Effect2 from "effect/Effect";
|
|
417
405
|
import React4, { useCallback as useCallback4, useRef as useRef2 } from "react";
|
|
418
406
|
import { LayoutAction as LayoutAction3, createIntent as createIntent3, useIntentDispatcher as useIntentDispatcher3 } from "@dxos/app-framework";
|
|
419
407
|
import { Button as Button3, Dialog as Dialog2, Icon as Icon4, useTranslation as useTranslation4 } from "@dxos/react-ui";
|
|
@@ -731,7 +719,7 @@ var MembersContainer = ({ space, createInvitationUrl }) => {
|
|
|
731
719
|
setSelectedInvitation(null);
|
|
732
720
|
};
|
|
733
721
|
return /* @__PURE__ */ React7.createElement(Clipboard.Provider, null, /* @__PURE__ */ React7.createElement(StackItem.Content, {
|
|
734
|
-
|
|
722
|
+
scrollable: true
|
|
735
723
|
}, /* @__PURE__ */ React7.createElement(ControlPage, null, /* @__PURE__ */ React7.createElement(ControlSection, {
|
|
736
724
|
title: t("members verbose label"),
|
|
737
725
|
description: t("members description")
|
|
@@ -914,79 +902,16 @@ var MenuFooter = ({ object }) => {
|
|
|
914
902
|
}
|
|
915
903
|
};
|
|
916
904
|
|
|
917
|
-
// src/components/ObjectSettings/ObjectSettingsContainer.tsx
|
|
918
|
-
import { useSignals as _useSignals10 } from "@preact-signals/safe-react/tracking";
|
|
919
|
-
import React10, { useMemo as useMemo2 } from "react";
|
|
920
|
-
import { Surface } from "@dxos/app-framework";
|
|
921
|
-
import { Clipboard as Clipboard2, Toolbar } from "@dxos/react-ui";
|
|
922
|
-
import { StackItem as StackItem2 } from "@dxos/react-ui-stack";
|
|
923
|
-
|
|
924
|
-
// src/components/ObjectSettings/BaseObjectSettings.tsx
|
|
925
|
-
import { useSignals as _useSignals9 } from "@preact-signals/safe-react/tracking";
|
|
926
|
-
import React9, { useRef as useRef3 } from "react";
|
|
927
|
-
import { Input as Input2, useTranslation as useTranslation9 } from "@dxos/react-ui";
|
|
928
|
-
var BaseObjectSettings = ({ classNames, children, object }) => {
|
|
929
|
-
var _effect = _useSignals9();
|
|
930
|
-
try {
|
|
931
|
-
const { t } = useTranslation9(meta.id);
|
|
932
|
-
const inputRef = useRef3(null);
|
|
933
|
-
return /* @__PURE__ */ React9.createElement(React9.Fragment, null, /* @__PURE__ */ React9.createElement(Input2.Root, null, /* @__PURE__ */ React9.createElement(Input2.Label, null, t("name label")), /* @__PURE__ */ React9.createElement(Input2.TextInput, {
|
|
934
|
-
ref: inputRef,
|
|
935
|
-
placeholder: t("name placeholder"),
|
|
936
|
-
// TODO(burdon): Use annotation to get the name field.
|
|
937
|
-
value: object.name ?? "",
|
|
938
|
-
onChange: (event) => {
|
|
939
|
-
object.name = event.target.value;
|
|
940
|
-
},
|
|
941
|
-
onKeyDown: (event) => {
|
|
942
|
-
if (event.key === "Enter") {
|
|
943
|
-
inputRef.current?.blur();
|
|
944
|
-
}
|
|
945
|
-
}
|
|
946
|
-
})), children);
|
|
947
|
-
} finally {
|
|
948
|
-
_effect.f();
|
|
949
|
-
}
|
|
950
|
-
};
|
|
951
|
-
|
|
952
|
-
// src/components/ObjectSettings/ObjectSettingsContainer.tsx
|
|
953
|
-
var ObjectSettingsContainer = ({ object, role }) => {
|
|
954
|
-
var _effect = _useSignals10();
|
|
955
|
-
try {
|
|
956
|
-
const data = useMemo2(() => ({
|
|
957
|
-
subject: object
|
|
958
|
-
}), [
|
|
959
|
-
object
|
|
960
|
-
]);
|
|
961
|
-
return /* @__PURE__ */ React10.createElement(Clipboard2.Provider, null, /* @__PURE__ */ React10.createElement(StackItem2.Content, {
|
|
962
|
-
toolbar: true
|
|
963
|
-
}, /* @__PURE__ */ React10.createElement(Toolbar.Root, null), /* @__PURE__ */ React10.createElement("div", {
|
|
964
|
-
role: "none",
|
|
965
|
-
className: "overflow-y-auto pli-cardSpacingInline plb-cardSpacingBlock"
|
|
966
|
-
}, /* @__PURE__ */ React10.createElement(BaseObjectSettings, {
|
|
967
|
-
object
|
|
968
|
-
}, /* @__PURE__ */ React10.createElement(Surface, {
|
|
969
|
-
role: "base-object-settings",
|
|
970
|
-
data
|
|
971
|
-
})), /* @__PURE__ */ React10.createElement(Surface, {
|
|
972
|
-
role: "object-settings",
|
|
973
|
-
data
|
|
974
|
-
}))));
|
|
975
|
-
} finally {
|
|
976
|
-
_effect.f();
|
|
977
|
-
}
|
|
978
|
-
};
|
|
979
|
-
|
|
980
905
|
// src/components/PersistenceStatus.tsx
|
|
981
|
-
import { useSignals as
|
|
982
|
-
import
|
|
906
|
+
import { useSignals as _useSignals9 } from "@preact-signals/safe-react/tracking";
|
|
907
|
+
import React9, { useEffect as useEffect2, useState as useState4 } from "react";
|
|
983
908
|
import { debounce } from "@dxos/async";
|
|
984
|
-
import { Icon as Icon7, Tooltip, useTranslation as
|
|
909
|
+
import { Icon as Icon7, Tooltip, useTranslation as useTranslation9 } from "@dxos/react-ui";
|
|
985
910
|
import { mx, staticPlaceholderText, warningText } from "@dxos/react-ui-theme";
|
|
986
911
|
var PersistenceStatus = ({ db }) => {
|
|
987
|
-
var _effect =
|
|
912
|
+
var _effect = _useSignals9();
|
|
988
913
|
try {
|
|
989
|
-
const { t } =
|
|
914
|
+
const { t } = useTranslation9(meta.id);
|
|
990
915
|
const [displayMessage, setDisplayMessage] = useState4(false);
|
|
991
916
|
const [status, naturalSetStatus] = useState4(0);
|
|
992
917
|
const [prevStatus, setPrevStatus] = useState4(0);
|
|
@@ -1003,37 +928,37 @@ var PersistenceStatus = ({ db }) => {
|
|
|
1003
928
|
]);
|
|
1004
929
|
switch (status) {
|
|
1005
930
|
case 2:
|
|
1006
|
-
return /* @__PURE__ */
|
|
931
|
+
return /* @__PURE__ */ React9.createElement("div", {
|
|
1007
932
|
className: "flex items-center"
|
|
1008
|
-
}, /* @__PURE__ */
|
|
933
|
+
}, /* @__PURE__ */ React9.createElement(Icon7, {
|
|
1009
934
|
icon: "ph--warning--regular",
|
|
1010
935
|
size: 4,
|
|
1011
936
|
classNames: "me-1"
|
|
1012
|
-
}), /* @__PURE__ */
|
|
937
|
+
}), /* @__PURE__ */ React9.createElement("span", {
|
|
1013
938
|
className: mx("text-sm", warningText)
|
|
1014
939
|
}, t("persistence error label")));
|
|
1015
940
|
case 1:
|
|
1016
|
-
return /* @__PURE__ */
|
|
941
|
+
return /* @__PURE__ */ React9.createElement("div", {
|
|
1017
942
|
className: "flex items-center"
|
|
1018
|
-
}, /* @__PURE__ */
|
|
943
|
+
}, /* @__PURE__ */ React9.createElement(Icon7, {
|
|
1019
944
|
icon: "ph--arrows-counter-clockwise--regular",
|
|
1020
945
|
size: 4,
|
|
1021
946
|
classNames: "me-1"
|
|
1022
|
-
}), /* @__PURE__ */
|
|
947
|
+
}), /* @__PURE__ */ React9.createElement("span", {
|
|
1023
948
|
className: mx("text-sm", staticPlaceholderText)
|
|
1024
949
|
}, t("persistence pending label")));
|
|
1025
950
|
case 0:
|
|
1026
951
|
default:
|
|
1027
|
-
return /* @__PURE__ */
|
|
952
|
+
return /* @__PURE__ */ React9.createElement(Tooltip.Trigger, {
|
|
1028
953
|
delayDuration: 400,
|
|
1029
954
|
role: "status",
|
|
1030
955
|
content: t("persisted locally message"),
|
|
1031
956
|
className: "flex items-center"
|
|
1032
|
-
}, /* @__PURE__ */
|
|
957
|
+
}, /* @__PURE__ */ React9.createElement(Icon7, {
|
|
1033
958
|
icon: "ph--check-circle--regular",
|
|
1034
959
|
size: 4,
|
|
1035
960
|
classNames: "me-1"
|
|
1036
|
-
}), displayMessage && /* @__PURE__ */
|
|
961
|
+
}), displayMessage && /* @__PURE__ */ React9.createElement("span", {
|
|
1037
962
|
className: mx("text-sm", staticPlaceholderText)
|
|
1038
963
|
}, t("persisted locally label")));
|
|
1039
964
|
}
|
|
@@ -1043,19 +968,19 @@ var PersistenceStatus = ({ db }) => {
|
|
|
1043
968
|
};
|
|
1044
969
|
|
|
1045
970
|
// src/components/PopoverRenameObject.tsx
|
|
1046
|
-
import { useSignals as
|
|
1047
|
-
import
|
|
971
|
+
import { useSignals as _useSignals10 } from "@preact-signals/safe-react/tracking";
|
|
972
|
+
import React10, { useCallback as useCallback7, useRef as useRef3, useState as useState5 } from "react";
|
|
1048
973
|
import { LayoutAction as LayoutAction5, createIntent as createIntent6, useIntentDispatcher as useIntentDispatcher6 } from "@dxos/app-framework";
|
|
1049
974
|
import { Obj as Obj2 } from "@dxos/echo";
|
|
1050
975
|
import { log as log2 } from "@dxos/log";
|
|
1051
|
-
import { Button as Button5, Input as
|
|
976
|
+
import { Button as Button5, Input as Input2, useTranslation as useTranslation10 } from "@dxos/react-ui";
|
|
1052
977
|
var __dxlog_file3 = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/PopoverRenameObject.tsx";
|
|
1053
978
|
var POPOVER_RENAME_OBJECT = `${meta.id}/PopoverRenameObject`;
|
|
1054
979
|
var PopoverRenameObject = ({ object }) => {
|
|
1055
|
-
var _effect =
|
|
980
|
+
var _effect = _useSignals10();
|
|
1056
981
|
try {
|
|
1057
|
-
const { t } =
|
|
1058
|
-
const doneButton =
|
|
982
|
+
const { t } = useTranslation10(meta.id);
|
|
983
|
+
const doneButton = useRef3(null);
|
|
1059
984
|
const [name, setName] = useState5(Obj2.getLabel(object));
|
|
1060
985
|
const { dispatchPromise: dispatch } = useIntentDispatcher6();
|
|
1061
986
|
const handleDone = useCallback7(() => {
|
|
@@ -1083,21 +1008,21 @@ var PopoverRenameObject = ({ object }) => {
|
|
|
1083
1008
|
object,
|
|
1084
1009
|
name
|
|
1085
1010
|
]);
|
|
1086
|
-
return /* @__PURE__ */
|
|
1011
|
+
return /* @__PURE__ */ React10.createElement("div", {
|
|
1087
1012
|
role: "none",
|
|
1088
1013
|
className: "p-2 flex gap-2"
|
|
1089
|
-
}, /* @__PURE__ */
|
|
1014
|
+
}, /* @__PURE__ */ React10.createElement("div", {
|
|
1090
1015
|
role: "none",
|
|
1091
1016
|
className: "flex-1"
|
|
1092
|
-
}, /* @__PURE__ */
|
|
1017
|
+
}, /* @__PURE__ */ React10.createElement(Input2.Root, null, /* @__PURE__ */ React10.createElement(Input2.Label, {
|
|
1093
1018
|
srOnly: true
|
|
1094
|
-
}, t("object name label")), /* @__PURE__ */
|
|
1019
|
+
}, t("object name label")), /* @__PURE__ */ React10.createElement(Input2.TextInput, {
|
|
1095
1020
|
placeholder: t("object placeholder"),
|
|
1096
1021
|
value: name,
|
|
1097
1022
|
"data-testid": "spacePlugin.renameObject.input",
|
|
1098
1023
|
onChange: ({ target: { value } }) => setName(value),
|
|
1099
1024
|
onKeyDown: ({ key }) => key === "Enter" && doneButton.current?.click()
|
|
1100
|
-
}))), /* @__PURE__ */
|
|
1025
|
+
}))), /* @__PURE__ */ React10.createElement(Button5, {
|
|
1101
1026
|
ref: doneButton,
|
|
1102
1027
|
classNames: "self-stretch",
|
|
1103
1028
|
onClick: handleDone
|
|
@@ -1110,16 +1035,16 @@ var PopoverRenameObject = ({ object }) => {
|
|
|
1110
1035
|
};
|
|
1111
1036
|
|
|
1112
1037
|
// src/components/PopoverRenameSpace.tsx
|
|
1113
|
-
import { useSignals as
|
|
1114
|
-
import
|
|
1038
|
+
import { useSignals as _useSignals11 } from "@preact-signals/safe-react/tracking";
|
|
1039
|
+
import React11, { useCallback as useCallback8, useRef as useRef4, useState as useState6 } from "react";
|
|
1115
1040
|
import { LayoutAction as LayoutAction6, createIntent as createIntent7, useIntentDispatcher as useIntentDispatcher7 } from "@dxos/app-framework";
|
|
1116
|
-
import { Button as Button6, Input as
|
|
1041
|
+
import { Button as Button6, Input as Input3, Popover, useTranslation as useTranslation11 } from "@dxos/react-ui";
|
|
1117
1042
|
var POPOVER_RENAME_SPACE = `${meta.id}/PopoverRenameSpace`;
|
|
1118
1043
|
var PopoverRenameSpace = ({ space }) => {
|
|
1119
|
-
var _effect =
|
|
1044
|
+
var _effect = _useSignals11();
|
|
1120
1045
|
try {
|
|
1121
|
-
const { t } =
|
|
1122
|
-
const doneButton =
|
|
1046
|
+
const { t } = useTranslation11(meta.id);
|
|
1047
|
+
const doneButton = useRef4(null);
|
|
1123
1048
|
const [name, setName] = useState6(space.properties.name ?? "");
|
|
1124
1049
|
const { dispatchPromise: dispatch } = useIntentDispatcher7();
|
|
1125
1050
|
const handleDone = useCallback8(() => {
|
|
@@ -1136,24 +1061,24 @@ var PopoverRenameSpace = ({ space }) => {
|
|
|
1136
1061
|
space,
|
|
1137
1062
|
name
|
|
1138
1063
|
]);
|
|
1139
|
-
return /* @__PURE__ */
|
|
1064
|
+
return /* @__PURE__ */ React11.createElement("div", {
|
|
1140
1065
|
role: "none",
|
|
1141
1066
|
className: "p-2 flex gap-2"
|
|
1142
|
-
}, /* @__PURE__ */
|
|
1067
|
+
}, /* @__PURE__ */ React11.createElement("div", {
|
|
1143
1068
|
role: "none",
|
|
1144
1069
|
className: "flex-1"
|
|
1145
|
-
}, /* @__PURE__ */
|
|
1070
|
+
}, /* @__PURE__ */ React11.createElement(Input3.Root, null, /* @__PURE__ */ React11.createElement(Input3.Label, {
|
|
1146
1071
|
srOnly: true
|
|
1147
|
-
}, t("space name label")), /* @__PURE__ */
|
|
1072
|
+
}, t("space name label")), /* @__PURE__ */ React11.createElement(Input3.TextInput, {
|
|
1148
1073
|
defaultValue: space.properties.name ?? "",
|
|
1149
1074
|
placeholder: t("unnamed space label"),
|
|
1150
1075
|
onChange: ({ target: { value } }) => setName(value),
|
|
1151
1076
|
// TODO(wittjosiah): Ideally this should access the popover context to close the popover.
|
|
1152
1077
|
// Currently this is not possible because Radix does not expose the popover context.
|
|
1153
1078
|
onKeyDown: ({ key }) => key === "Enter" && doneButton.current?.click()
|
|
1154
|
-
}))), /* @__PURE__ */
|
|
1079
|
+
}))), /* @__PURE__ */ React11.createElement(Popover.Close, {
|
|
1155
1080
|
asChild: true
|
|
1156
|
-
}, /* @__PURE__ */
|
|
1081
|
+
}, /* @__PURE__ */ React11.createElement(Button6, {
|
|
1157
1082
|
ref: doneButton,
|
|
1158
1083
|
classNames: "self-stretch",
|
|
1159
1084
|
onClick: handleDone
|
|
@@ -1166,11 +1091,11 @@ var PopoverRenameSpace = ({ space }) => {
|
|
|
1166
1091
|
};
|
|
1167
1092
|
|
|
1168
1093
|
// src/components/SchemaContainer.tsx
|
|
1169
|
-
import { useSignals as
|
|
1170
|
-
import
|
|
1171
|
-
import { useTranslation as
|
|
1094
|
+
import { useSignals as _useSignals12 } from "@preact-signals/safe-react/tracking";
|
|
1095
|
+
import React12, { useEffect as useEffect3, useState as useState7 } from "react";
|
|
1096
|
+
import { useTranslation as useTranslation12 } from "@dxos/react-ui";
|
|
1172
1097
|
import { ControlPage as ControlPage2, ControlSection as ControlSection2, controlItemClasses } from "@dxos/react-ui-form";
|
|
1173
|
-
import { StackItem as
|
|
1098
|
+
import { StackItem as StackItem2 } from "@dxos/react-ui-stack";
|
|
1174
1099
|
var useQuerySpaceSchemas = (space) => {
|
|
1175
1100
|
const [schemas, setSchemas] = useState7([]);
|
|
1176
1101
|
useEffect3(() => {
|
|
@@ -1185,38 +1110,38 @@ var useQuerySpaceSchemas = (space) => {
|
|
|
1185
1110
|
return schemas;
|
|
1186
1111
|
};
|
|
1187
1112
|
var SchemaContainer = ({ space }) => {
|
|
1188
|
-
var _effect =
|
|
1113
|
+
var _effect = _useSignals12();
|
|
1189
1114
|
try {
|
|
1190
|
-
const { t } =
|
|
1115
|
+
const { t } = useTranslation12(meta.id);
|
|
1191
1116
|
const schemas = useQuerySpaceSchemas(space);
|
|
1192
|
-
return /* @__PURE__ */
|
|
1193
|
-
|
|
1194
|
-
}, /* @__PURE__ */
|
|
1117
|
+
return /* @__PURE__ */ React12.createElement(StackItem2.Content, {
|
|
1118
|
+
scrollable: true
|
|
1119
|
+
}, /* @__PURE__ */ React12.createElement(ControlPage2, null, /* @__PURE__ */ React12.createElement(ControlSection2, {
|
|
1195
1120
|
title: t("schema verbose label"),
|
|
1196
1121
|
description: t("schema description")
|
|
1197
|
-
}, /* @__PURE__ */
|
|
1122
|
+
}, /* @__PURE__ */ React12.createElement("div", {
|
|
1198
1123
|
role: "none",
|
|
1199
1124
|
className: controlItemClasses
|
|
1200
|
-
}, schemas.length === 0 && /* @__PURE__ */
|
|
1125
|
+
}, schemas.length === 0 && /* @__PURE__ */ React12.createElement("div", {
|
|
1201
1126
|
className: "text-center plb-4"
|
|
1202
|
-
}, t("no schemas found message")), schemas.map((schema) => /* @__PURE__ */
|
|
1127
|
+
}, t("no schemas found message")), schemas.map((schema) => /* @__PURE__ */ React12.createElement("div", {
|
|
1203
1128
|
key: schema.id
|
|
1204
|
-
}, /* @__PURE__ */
|
|
1129
|
+
}, /* @__PURE__ */ React12.createElement("div", null, schema.typename)))))));
|
|
1205
1130
|
} finally {
|
|
1206
1131
|
_effect.f();
|
|
1207
1132
|
}
|
|
1208
1133
|
};
|
|
1209
1134
|
|
|
1210
1135
|
// src/components/SpacePresence.tsx
|
|
1211
|
-
import { useSignals as
|
|
1212
|
-
import
|
|
1213
|
-
import
|
|
1136
|
+
import { useSignals as _useSignals13 } from "@preact-signals/safe-react/tracking";
|
|
1137
|
+
import * as Option2 from "effect/Option";
|
|
1138
|
+
import React13, { forwardRef, useCallback as useCallback9, useEffect as useEffect4, useState as useState8 } from "react";
|
|
1214
1139
|
import { useAppGraph as useAppGraph2, useCapability } from "@dxos/app-framework";
|
|
1215
1140
|
import { generateName } from "@dxos/display-name";
|
|
1216
1141
|
import { PublicKey, useClient as useClient5 } from "@dxos/react-client";
|
|
1217
1142
|
import { fullyQualifiedId as fullyQualifiedId3, getSpace as getSpace3, useMembers } from "@dxos/react-client/echo";
|
|
1218
1143
|
import { useIdentity } from "@dxos/react-client/halo";
|
|
1219
|
-
import { Avatar, List, ListItem, Popover as Popover2, Tooltip as Tooltip2, useDefaultValue as useDefaultValue2, useTranslation as
|
|
1144
|
+
import { Avatar, List, ListItem, Popover as Popover2, Tooltip as Tooltip2, useDefaultValue as useDefaultValue2, useTranslation as useTranslation13 } from "@dxos/react-ui";
|
|
1220
1145
|
import { AttentionGlyph, useAttended, useAttention } from "@dxos/react-ui-attention";
|
|
1221
1146
|
import { ComplexMap, keyToFallback } from "@dxos/util";
|
|
1222
1147
|
var REFRESH_INTERVAL = 5e3;
|
|
@@ -1224,7 +1149,7 @@ var ACTIVITY_DURATION = 3e4;
|
|
|
1224
1149
|
var noViewers = new ComplexMap(PublicKey.hash);
|
|
1225
1150
|
var getName = (identity) => identity.profile?.displayName ?? generateName(identity.identityKey.toHex());
|
|
1226
1151
|
var SpacePresence = ({ object, spaceKey }) => {
|
|
1227
|
-
var _effect =
|
|
1152
|
+
var _effect = _useSignals13();
|
|
1228
1153
|
try {
|
|
1229
1154
|
const spaceState = useCapability(SpaceCapabilities.MutableState);
|
|
1230
1155
|
const client = useClient5();
|
|
@@ -1254,7 +1179,7 @@ var SpacePresence = ({ object, spaceKey }) => {
|
|
|
1254
1179
|
lastSeen
|
|
1255
1180
|
};
|
|
1256
1181
|
}).toSorted((a, b) => a.lastSeen - b.lastSeen);
|
|
1257
|
-
return /* @__PURE__ */
|
|
1182
|
+
return /* @__PURE__ */ React13.createElement(FullPresence, {
|
|
1258
1183
|
members: membersForObject
|
|
1259
1184
|
});
|
|
1260
1185
|
} finally {
|
|
@@ -1262,46 +1187,46 @@ var SpacePresence = ({ object, spaceKey }) => {
|
|
|
1262
1187
|
}
|
|
1263
1188
|
};
|
|
1264
1189
|
var FullPresence = (props) => {
|
|
1265
|
-
var _effect =
|
|
1190
|
+
var _effect = _useSignals13();
|
|
1266
1191
|
try {
|
|
1267
1192
|
const { size = 9, onMemberClick } = props;
|
|
1268
1193
|
const members = useDefaultValue2(props.members, () => []);
|
|
1269
1194
|
if (members.length === 0) {
|
|
1270
1195
|
return null;
|
|
1271
1196
|
}
|
|
1272
|
-
return /* @__PURE__ */
|
|
1197
|
+
return /* @__PURE__ */ React13.createElement("div", {
|
|
1273
1198
|
className: "dx-avatar-group",
|
|
1274
1199
|
"data-testid": "spacePlugin.presence"
|
|
1275
|
-
}, members.slice(0, 3).map((member, i) => /* @__PURE__ */
|
|
1200
|
+
}, members.slice(0, 3).map((member, i) => /* @__PURE__ */ React13.createElement(Tooltip2.Trigger, {
|
|
1276
1201
|
key: member.identity.identityKey.toHex(),
|
|
1277
1202
|
side: "bottom",
|
|
1278
1203
|
content: getName(member.identity),
|
|
1279
1204
|
className: "grid focus:outline-none"
|
|
1280
|
-
}, /* @__PURE__ */
|
|
1205
|
+
}, /* @__PURE__ */ React13.createElement(PresenceAvatar, {
|
|
1281
1206
|
identity: member.identity,
|
|
1282
1207
|
match: member.currentlyAttended,
|
|
1283
1208
|
index: members.length - i,
|
|
1284
1209
|
onClick: () => onMemberClick?.(member),
|
|
1285
1210
|
size
|
|
1286
|
-
}))), members.length > 3 && /* @__PURE__ */
|
|
1211
|
+
}))), members.length > 3 && /* @__PURE__ */ React13.createElement(Popover2.Root, null, /* @__PURE__ */ React13.createElement(Popover2.Trigger, {
|
|
1287
1212
|
className: "grid focus:outline-none"
|
|
1288
|
-
}, /* @__PURE__ */
|
|
1213
|
+
}, /* @__PURE__ */ React13.createElement(Avatar.Root, null, /* @__PURE__ */ React13.createElement(Avatar.Content, {
|
|
1289
1214
|
status: "inactive",
|
|
1290
1215
|
style: {
|
|
1291
1216
|
zIndex: members.length - 4
|
|
1292
1217
|
},
|
|
1293
1218
|
fallback: `+${members.length - 3}`,
|
|
1294
1219
|
size
|
|
1295
|
-
}))), /* @__PURE__ */
|
|
1220
|
+
}))), /* @__PURE__ */ React13.createElement(Popover2.Portal, null, /* @__PURE__ */ React13.createElement(Popover2.Content, {
|
|
1296
1221
|
side: "bottom"
|
|
1297
|
-
}, /* @__PURE__ */
|
|
1222
|
+
}, /* @__PURE__ */ React13.createElement(Popover2.Arrow, null), /* @__PURE__ */ React13.createElement(Popover2.Viewport, {
|
|
1298
1223
|
classNames: "max-bs-56"
|
|
1299
|
-
}, /* @__PURE__ */
|
|
1224
|
+
}, /* @__PURE__ */ React13.createElement(List, null, members.map((member) => /* @__PURE__ */ React13.createElement(ListItem.Root, {
|
|
1300
1225
|
key: member.identity.identityKey.toHex(),
|
|
1301
1226
|
classNames: "flex gap-2 items-center cursor-pointer mbe-2",
|
|
1302
1227
|
onClick: () => onMemberClick?.(member),
|
|
1303
1228
|
"data-testid": "identity-list-item"
|
|
1304
|
-
}, /* @__PURE__ */
|
|
1229
|
+
}, /* @__PURE__ */ React13.createElement(PresenceAvatar, {
|
|
1305
1230
|
identity: member.identity,
|
|
1306
1231
|
size,
|
|
1307
1232
|
showName: true,
|
|
@@ -1312,11 +1237,11 @@ var FullPresence = (props) => {
|
|
|
1312
1237
|
}
|
|
1313
1238
|
};
|
|
1314
1239
|
var PresenceAvatar = /* @__PURE__ */ forwardRef(({ identity, showName, match, index, onClick, size }, forwardedRef) => {
|
|
1315
|
-
var _effect =
|
|
1240
|
+
var _effect = _useSignals13();
|
|
1316
1241
|
try {
|
|
1317
1242
|
const status = match ? "current" : "active";
|
|
1318
1243
|
const fallbackValue = keyToFallback(identity.identityKey);
|
|
1319
|
-
return /* @__PURE__ */
|
|
1244
|
+
return /* @__PURE__ */ React13.createElement(Avatar.Root, null, /* @__PURE__ */ React13.createElement(Avatar.Content, {
|
|
1320
1245
|
status,
|
|
1321
1246
|
hue: identity.profile?.data?.hue || fallbackValue.hue,
|
|
1322
1247
|
"data-testid": "spacePlugin.presence.member",
|
|
@@ -1330,7 +1255,7 @@ var PresenceAvatar = /* @__PURE__ */ forwardRef(({ identity, showName, match, in
|
|
|
1330
1255
|
onClick,
|
|
1331
1256
|
fallback: identity.profile?.data?.emoji || fallbackValue.emoji,
|
|
1332
1257
|
ref: forwardedRef
|
|
1333
|
-
}), /* @__PURE__ */
|
|
1258
|
+
}), /* @__PURE__ */ React13.createElement(Avatar.Label, {
|
|
1334
1259
|
classNames: showName ? "text-sm truncate pli-2" : "sr-only"
|
|
1335
1260
|
}, getName(identity)));
|
|
1336
1261
|
} finally {
|
|
@@ -1338,7 +1263,7 @@ var PresenceAvatar = /* @__PURE__ */ forwardRef(({ identity, showName, match, in
|
|
|
1338
1263
|
}
|
|
1339
1264
|
});
|
|
1340
1265
|
var SmallPresenceLive = ({ id, open, viewers }) => {
|
|
1341
|
-
var _effect =
|
|
1266
|
+
var _effect = _useSignals13();
|
|
1342
1267
|
try {
|
|
1343
1268
|
const { hasAttention, isAncestor, isRelated } = useAttention(id);
|
|
1344
1269
|
const isAttended = hasAttention || isAncestor || isRelated;
|
|
@@ -1363,7 +1288,7 @@ var SmallPresenceLive = ({ id, open, viewers }) => {
|
|
|
1363
1288
|
}, [
|
|
1364
1289
|
viewers
|
|
1365
1290
|
]);
|
|
1366
|
-
return /* @__PURE__ */
|
|
1291
|
+
return /* @__PURE__ */ React13.createElement(SmallPresence, {
|
|
1367
1292
|
count: activeViewers.length,
|
|
1368
1293
|
attended: isAttended,
|
|
1369
1294
|
containsAttended
|
|
@@ -1373,16 +1298,16 @@ var SmallPresenceLive = ({ id, open, viewers }) => {
|
|
|
1373
1298
|
}
|
|
1374
1299
|
};
|
|
1375
1300
|
var SmallPresence = ({ count = 0, attended, containsAttended }) => {
|
|
1376
|
-
var _effect =
|
|
1301
|
+
var _effect = _useSignals13();
|
|
1377
1302
|
try {
|
|
1378
|
-
const { t } =
|
|
1379
|
-
return /* @__PURE__ */
|
|
1303
|
+
const { t } = useTranslation13(meta.id);
|
|
1304
|
+
return /* @__PURE__ */ React13.createElement(Tooltip2.Trigger, {
|
|
1380
1305
|
asChild: true,
|
|
1381
1306
|
content: t("presence label", {
|
|
1382
1307
|
count
|
|
1383
1308
|
}),
|
|
1384
1309
|
side: "bottom"
|
|
1385
|
-
}, /* @__PURE__ */
|
|
1310
|
+
}, /* @__PURE__ */ React13.createElement(AttentionGlyph, {
|
|
1386
1311
|
attended,
|
|
1387
1312
|
containsAttended,
|
|
1388
1313
|
presence: count > 1 ? "many" : count === 1 ? "one" : "none",
|
|
@@ -1394,43 +1319,43 @@ var SmallPresence = ({ count = 0, attended, containsAttended }) => {
|
|
|
1394
1319
|
};
|
|
1395
1320
|
|
|
1396
1321
|
// src/components/SpacePluginSettings.tsx
|
|
1397
|
-
import { useSignals as
|
|
1398
|
-
import
|
|
1322
|
+
import { useSignals as _useSignals14 } from "@preact-signals/safe-react/tracking";
|
|
1323
|
+
import React14 from "react";
|
|
1399
1324
|
import { createIntent as createIntent8, useIntentDispatcher as useIntentDispatcher8 } from "@dxos/app-framework";
|
|
1400
1325
|
import { useClient as useClient6 } from "@dxos/react-client";
|
|
1401
1326
|
import { useSpaces as useSpaces2 } from "@dxos/react-client/echo";
|
|
1402
|
-
import { IconButton, Input as
|
|
1327
|
+
import { IconButton, Input as Input4, List as List2, ListItem as ListItem2, toLocalizedString as toLocalizedString3, useTranslation as useTranslation14 } from "@dxos/react-ui";
|
|
1403
1328
|
import { ControlGroup, ControlItemInput as ControlItemInput2, ControlPage as ControlPage3, ControlSection as ControlSection3, controlItemClasses as controlItemClasses2 } from "@dxos/react-ui-form";
|
|
1404
1329
|
var SpacePluginSettings = ({ settings }) => {
|
|
1405
|
-
var _effect =
|
|
1330
|
+
var _effect = _useSignals14();
|
|
1406
1331
|
try {
|
|
1407
|
-
const { t } =
|
|
1332
|
+
const { t } = useTranslation14(meta.id);
|
|
1408
1333
|
const client = useClient6();
|
|
1409
1334
|
const spaces = useSpaces2({
|
|
1410
1335
|
all: settings.showHidden
|
|
1411
1336
|
});
|
|
1412
1337
|
const { dispatchPromise: dispatch } = useIntentDispatcher8();
|
|
1413
|
-
return /* @__PURE__ */
|
|
1338
|
+
return /* @__PURE__ */ React14.createElement(ControlPage3, null, /* @__PURE__ */ React14.createElement(ControlSection3, {
|
|
1414
1339
|
title: t("space settings label"),
|
|
1415
1340
|
description: t("space settings description")
|
|
1416
|
-
}, /* @__PURE__ */
|
|
1341
|
+
}, /* @__PURE__ */ React14.createElement(ControlGroup, null, /* @__PURE__ */ React14.createElement(ControlItemInput2, {
|
|
1417
1342
|
title: t("show hidden spaces label")
|
|
1418
|
-
}, /* @__PURE__ */
|
|
1343
|
+
}, /* @__PURE__ */ React14.createElement(Input4.Switch, {
|
|
1419
1344
|
checked: settings.showHidden,
|
|
1420
1345
|
onCheckedChange: (checked) => settings.showHidden = !!checked
|
|
1421
|
-
}))), /* @__PURE__ */
|
|
1346
|
+
}))), /* @__PURE__ */ React14.createElement(List2, {
|
|
1422
1347
|
classNames: [
|
|
1423
1348
|
controlItemClasses2,
|
|
1424
1349
|
"flex flex-col gap-trimSm"
|
|
1425
1350
|
]
|
|
1426
|
-
}, spaces.map((space) => /* @__PURE__ */
|
|
1351
|
+
}, spaces.map((space) => /* @__PURE__ */ React14.createElement(ListItem2.Root, {
|
|
1427
1352
|
key: space.id,
|
|
1428
1353
|
classNames: "is-full items-center"
|
|
1429
|
-
}, /* @__PURE__ */
|
|
1354
|
+
}, /* @__PURE__ */ React14.createElement(ListItem2.Heading, {
|
|
1430
1355
|
classNames: "grow truncate !min-bs-0"
|
|
1431
1356
|
}, toLocalizedString3(getSpaceDisplayName(space, {
|
|
1432
1357
|
personal: space === client.spaces.default
|
|
1433
|
-
}), t)), /* @__PURE__ */
|
|
1358
|
+
}), t)), /* @__PURE__ */ React14.createElement(IconButton, {
|
|
1434
1359
|
icon: "ph--faders--regular",
|
|
1435
1360
|
onClick: () => dispatch(createIntent8(SpaceAction.OpenSettings, {
|
|
1436
1361
|
space
|
|
@@ -1443,18 +1368,19 @@ var SpacePluginSettings = ({ settings }) => {
|
|
|
1443
1368
|
};
|
|
1444
1369
|
|
|
1445
1370
|
// src/components/SpaceSettings/SpaceSettingsContainer.tsx
|
|
1446
|
-
import { useSignals as
|
|
1447
|
-
import
|
|
1448
|
-
import
|
|
1371
|
+
import { useSignals as _useSignals15 } from "@preact-signals/safe-react/tracking";
|
|
1372
|
+
import * as Function2 from "effect/Function";
|
|
1373
|
+
import * as Schema from "effect/Schema";
|
|
1374
|
+
import React15, { useCallback as useCallback10, useMemo as useMemo2, useState as useState9 } from "react";
|
|
1449
1375
|
import { LayoutAction as LayoutAction7, chain as chain2, createIntent as createIntent9, useIntentDispatcher as useIntentDispatcher9 } from "@dxos/app-framework";
|
|
1450
1376
|
import { log as log3 } from "@dxos/log";
|
|
1451
1377
|
import { EdgeReplicationSetting } from "@dxos/protocols/proto/dxos/echo/metadata";
|
|
1452
1378
|
import { useClient as useClient7 } from "@dxos/react-client";
|
|
1453
|
-
import { SpaceState
|
|
1454
|
-
import { Button as Button7, Input as
|
|
1379
|
+
import { SpaceState } from "@dxos/react-client/echo";
|
|
1380
|
+
import { Button as Button7, Input as Input5, useMulticastObservable, useTranslation as useTranslation15 } from "@dxos/react-ui";
|
|
1455
1381
|
import { ControlItem, ControlItemInput as ControlItemInput3, ControlPage as ControlPage4, ControlSection as ControlSection4, Form as Form3 } from "@dxos/react-ui-form";
|
|
1456
1382
|
import { HuePicker, IconPicker } from "@dxos/react-ui-pickers";
|
|
1457
|
-
import { StackItem as
|
|
1383
|
+
import { StackItem as StackItem3 } from "@dxos/react-ui-stack";
|
|
1458
1384
|
var __dxlog_file4 = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/SpaceSettings/SpaceSettingsContainer.tsx";
|
|
1459
1385
|
var FormSchema = SpaceForm.pipe(Schema.extend(Schema.Struct({
|
|
1460
1386
|
archived: Schema.Boolean.annotations({
|
|
@@ -1462,19 +1388,19 @@ var FormSchema = SpaceForm.pipe(Schema.extend(Schema.Struct({
|
|
|
1462
1388
|
})
|
|
1463
1389
|
})));
|
|
1464
1390
|
var SpaceSettingsContainer = ({ space }) => {
|
|
1465
|
-
var _effect =
|
|
1391
|
+
var _effect = _useSignals15();
|
|
1466
1392
|
try {
|
|
1467
|
-
const { t } =
|
|
1393
|
+
const { t } = useTranslation15(meta.id);
|
|
1468
1394
|
const { dispatchPromise: dispatch } = useIntentDispatcher9();
|
|
1469
1395
|
const client = useClient7();
|
|
1470
|
-
const archived = useMulticastObservable(space.state) ===
|
|
1396
|
+
const archived = useMulticastObservable(space.state) === SpaceState.SPACE_INACTIVE;
|
|
1471
1397
|
const [edgeReplication, setEdgeReplication] = useState9(space.internal.data.edgeReplication === EdgeReplicationSetting.ENABLED);
|
|
1472
1398
|
const toggleEdgeReplication = useCallback10(async (next) => {
|
|
1473
1399
|
setEdgeReplication(next);
|
|
1474
1400
|
await space?.internal.setEdgeReplicationPreference(next ? EdgeReplicationSetting.ENABLED : EdgeReplicationSetting.DISABLED).catch((err) => {
|
|
1475
1401
|
log3.catch(err, void 0, {
|
|
1476
1402
|
F: __dxlog_file4,
|
|
1477
|
-
L:
|
|
1403
|
+
L: 52,
|
|
1478
1404
|
S: void 0,
|
|
1479
1405
|
C: (f, a) => f(...a)
|
|
1480
1406
|
});
|
|
@@ -1495,7 +1421,7 @@ var SpaceSettingsContainer = ({ space }) => {
|
|
|
1495
1421
|
space.properties.hue = properties.hue;
|
|
1496
1422
|
}
|
|
1497
1423
|
if (properties.archived && !archived) {
|
|
1498
|
-
void dispatch(
|
|
1424
|
+
void dispatch(Function2.pipe(createIntent9(SpaceAction.Close, {
|
|
1499
1425
|
space
|
|
1500
1426
|
}), chain2(LayoutAction7.SwitchWorkspace, {
|
|
1501
1427
|
part: "workspace",
|
|
@@ -1511,7 +1437,7 @@ var SpaceSettingsContainer = ({ space }) => {
|
|
|
1511
1437
|
toggleEdgeReplication,
|
|
1512
1438
|
archived
|
|
1513
1439
|
]);
|
|
1514
|
-
const values =
|
|
1440
|
+
const values = useMemo2(() => ({
|
|
1515
1441
|
name: space.properties.name,
|
|
1516
1442
|
icon: space.properties.icon,
|
|
1517
1443
|
hue: space.properties.hue,
|
|
@@ -1524,16 +1450,16 @@ var SpaceSettingsContainer = ({ space }) => {
|
|
|
1524
1450
|
edgeReplication,
|
|
1525
1451
|
archived
|
|
1526
1452
|
]);
|
|
1527
|
-
const customElements =
|
|
1453
|
+
const customElements = useMemo2(() => ({
|
|
1528
1454
|
name: ({ type, label, getValue, onValueChange }) => {
|
|
1529
1455
|
const handleChange = useCallback10(({ target: { value } }) => onValueChange(type, value), [
|
|
1530
1456
|
onValueChange,
|
|
1531
1457
|
type
|
|
1532
1458
|
]);
|
|
1533
|
-
return /* @__PURE__ */
|
|
1459
|
+
return /* @__PURE__ */ React15.createElement(ControlItemInput3, {
|
|
1534
1460
|
title: label,
|
|
1535
1461
|
description: t("display name description")
|
|
1536
|
-
}, /* @__PURE__ */
|
|
1462
|
+
}, /* @__PURE__ */ React15.createElement(Input5.TextInput, {
|
|
1537
1463
|
value: getValue(),
|
|
1538
1464
|
onChange: handleChange,
|
|
1539
1465
|
placeholder: t("display name input placeholder"),
|
|
@@ -1549,10 +1475,10 @@ var SpaceSettingsContainer = ({ space }) => {
|
|
|
1549
1475
|
onValueChange,
|
|
1550
1476
|
type
|
|
1551
1477
|
]);
|
|
1552
|
-
return /* @__PURE__ */
|
|
1478
|
+
return /* @__PURE__ */ React15.createElement(ControlItem, {
|
|
1553
1479
|
title: label,
|
|
1554
1480
|
description: t("icon description")
|
|
1555
|
-
}, /* @__PURE__ */
|
|
1481
|
+
}, /* @__PURE__ */ React15.createElement(IconPicker, {
|
|
1556
1482
|
value: getValue(),
|
|
1557
1483
|
onChange: handleChange,
|
|
1558
1484
|
onReset: handleReset,
|
|
@@ -1569,10 +1495,10 @@ var SpaceSettingsContainer = ({ space }) => {
|
|
|
1569
1495
|
onValueChange,
|
|
1570
1496
|
type
|
|
1571
1497
|
]);
|
|
1572
|
-
return /* @__PURE__ */
|
|
1498
|
+
return /* @__PURE__ */ React15.createElement(ControlItem, {
|
|
1573
1499
|
title: label,
|
|
1574
1500
|
description: t("hue description")
|
|
1575
|
-
}, /* @__PURE__ */
|
|
1501
|
+
}, /* @__PURE__ */ React15.createElement(HuePicker, {
|
|
1576
1502
|
value: getValue(),
|
|
1577
1503
|
onChange: handleChange,
|
|
1578
1504
|
onReset: handleReset,
|
|
@@ -1584,10 +1510,10 @@ var SpaceSettingsContainer = ({ space }) => {
|
|
|
1584
1510
|
onValueChange,
|
|
1585
1511
|
type
|
|
1586
1512
|
]);
|
|
1587
|
-
return /* @__PURE__ */
|
|
1513
|
+
return /* @__PURE__ */ React15.createElement(ControlItemInput3, {
|
|
1588
1514
|
title: label,
|
|
1589
1515
|
description: t("edge replication description")
|
|
1590
|
-
}, /* @__PURE__ */
|
|
1516
|
+
}, /* @__PURE__ */ React15.createElement(Input5.Switch, {
|
|
1591
1517
|
checked: getValue(),
|
|
1592
1518
|
onCheckedChange: handleChange,
|
|
1593
1519
|
classNames: "justify-self-end"
|
|
@@ -1599,10 +1525,10 @@ var SpaceSettingsContainer = ({ space }) => {
|
|
|
1599
1525
|
type,
|
|
1600
1526
|
getValue
|
|
1601
1527
|
]);
|
|
1602
|
-
return /* @__PURE__ */
|
|
1528
|
+
return /* @__PURE__ */ React15.createElement(ControlItemInput3, {
|
|
1603
1529
|
title: label,
|
|
1604
1530
|
description: t("archive space description")
|
|
1605
|
-
}, /* @__PURE__ */
|
|
1531
|
+
}, /* @__PURE__ */ React15.createElement(Button7, {
|
|
1606
1532
|
disabled: space === client.spaces.default,
|
|
1607
1533
|
onClick: handleChange
|
|
1608
1534
|
}, getValue() ? t("unarchive space label") : t("archive space label")));
|
|
@@ -1611,16 +1537,16 @@ var SpaceSettingsContainer = ({ space }) => {
|
|
|
1611
1537
|
t,
|
|
1612
1538
|
space
|
|
1613
1539
|
]);
|
|
1614
|
-
return /* @__PURE__ */
|
|
1615
|
-
|
|
1616
|
-
}, /* @__PURE__ */
|
|
1540
|
+
return /* @__PURE__ */ React15.createElement(StackItem3.Content, {
|
|
1541
|
+
scrollable: true
|
|
1542
|
+
}, /* @__PURE__ */ React15.createElement(ControlPage4, null, /* @__PURE__ */ React15.createElement(ControlSection4, {
|
|
1617
1543
|
title: t("space properties settings verbose label", {
|
|
1618
1544
|
ns: meta.id
|
|
1619
1545
|
}),
|
|
1620
1546
|
description: t("space properties settings description", {
|
|
1621
1547
|
ns: meta.id
|
|
1622
1548
|
})
|
|
1623
|
-
}, /* @__PURE__ */
|
|
1549
|
+
}, /* @__PURE__ */ React15.createElement(Form3, {
|
|
1624
1550
|
schema: FormSchema,
|
|
1625
1551
|
values,
|
|
1626
1552
|
autoSave: true,
|
|
@@ -1635,22 +1561,22 @@ var SpaceSettingsContainer = ({ space }) => {
|
|
|
1635
1561
|
};
|
|
1636
1562
|
|
|
1637
1563
|
// src/components/SyncStatus/InlineSyncStatus.tsx
|
|
1638
|
-
import { useSignals as
|
|
1639
|
-
import
|
|
1640
|
-
import
|
|
1564
|
+
import { useSignals as _useSignals16 } from "@preact-signals/safe-react/tracking";
|
|
1565
|
+
import * as Option3 from "effect/Option";
|
|
1566
|
+
import React16, { useEffect as useEffect5, useState as useState10 } from "react";
|
|
1641
1567
|
import { useAppGraph as useAppGraph3 } from "@dxos/app-framework";
|
|
1642
1568
|
import { EdgeStatus } from "@dxos/protocols/proto/dxos/client/services";
|
|
1643
1569
|
import { EdgeReplicationSetting as EdgeReplicationSetting2 } from "@dxos/protocols/proto/dxos/echo/metadata";
|
|
1644
1570
|
import { useClient as useClient8 } from "@dxos/react-client";
|
|
1645
1571
|
import { useSpaceSyncState } from "@dxos/react-client/echo";
|
|
1646
|
-
import { Tooltip as Tooltip3, useTranslation as
|
|
1572
|
+
import { Tooltip as Tooltip3, useTranslation as useTranslation16 } from "@dxos/react-ui";
|
|
1647
1573
|
import { AttentionGlyph as AttentionGlyph2, useAttended as useAttended2, useAttention as useAttention2 } from "@dxos/react-ui-attention";
|
|
1648
1574
|
var useEdgeStatus = () => {
|
|
1649
|
-
const [status, setStatus] = useState10(EdgeStatus.NOT_CONNECTED);
|
|
1575
|
+
const [status, setStatus] = useState10(EdgeStatus.ConnectionState.NOT_CONNECTED);
|
|
1650
1576
|
const client = useClient8();
|
|
1651
1577
|
useEffect5(() => {
|
|
1652
1578
|
client.services.services.EdgeAgentService?.queryEdgeStatus().subscribe(({ status: status2 }) => {
|
|
1653
|
-
setStatus(status2);
|
|
1579
|
+
setStatus(status2.state);
|
|
1654
1580
|
});
|
|
1655
1581
|
}, [
|
|
1656
1582
|
client
|
|
@@ -1658,9 +1584,9 @@ var useEdgeStatus = () => {
|
|
|
1658
1584
|
return status;
|
|
1659
1585
|
};
|
|
1660
1586
|
var InlineSyncStatus = ({ space, open }) => {
|
|
1661
|
-
var _effect =
|
|
1587
|
+
var _effect = _useSignals16();
|
|
1662
1588
|
try {
|
|
1663
|
-
const { t } =
|
|
1589
|
+
const { t } = useTranslation16(meta.id);
|
|
1664
1590
|
const id = space.id;
|
|
1665
1591
|
const { hasAttention, isAncestor, isRelated } = useAttention2(id);
|
|
1666
1592
|
const isAttended = hasAttention || isAncestor || isRelated;
|
|
@@ -1669,15 +1595,15 @@ var InlineSyncStatus = ({ space, open }) => {
|
|
|
1669
1595
|
const startOfAttention = attended.at(-1);
|
|
1670
1596
|
const path = usePath(graph, startOfAttention);
|
|
1671
1597
|
const containsAttended = !open && !isAttended && id && Option3.isSome(path) ? path.value.includes(id) : false;
|
|
1672
|
-
const connectedToEdge = useEdgeStatus() === EdgeStatus.CONNECTED;
|
|
1598
|
+
const connectedToEdge = useEdgeStatus() === EdgeStatus.ConnectionState.CONNECTED;
|
|
1673
1599
|
const edgeSyncEnabled = space.internal.data.edgeReplication === EdgeReplicationSetting2.ENABLED;
|
|
1674
1600
|
const syncState = useSpaceSyncState(space);
|
|
1675
1601
|
const syncing = connectedToEdge && edgeSyncEnabled && syncState && syncState.missingOnLocal > 0;
|
|
1676
|
-
return /* @__PURE__ */
|
|
1602
|
+
return /* @__PURE__ */ React16.createElement(Tooltip3.Trigger, {
|
|
1677
1603
|
asChild: true,
|
|
1678
1604
|
content: t("syncing label"),
|
|
1679
1605
|
side: "bottom"
|
|
1680
|
-
}, /* @__PURE__ */
|
|
1606
|
+
}, /* @__PURE__ */ React16.createElement(AttentionGlyph2, {
|
|
1681
1607
|
syncing,
|
|
1682
1608
|
attended: isAttended,
|
|
1683
1609
|
containsAttended,
|
|
@@ -1689,12 +1615,16 @@ var InlineSyncStatus = ({ space, open }) => {
|
|
|
1689
1615
|
};
|
|
1690
1616
|
|
|
1691
1617
|
// src/components/SyncStatus/SyncStatus.tsx
|
|
1692
|
-
import { useSignals as
|
|
1693
|
-
import
|
|
1618
|
+
import { useSignals as _useSignals17 } from "@preact-signals/safe-react/tracking";
|
|
1619
|
+
import React17, { useEffect as useEffect6, useState as useState11 } from "react";
|
|
1694
1620
|
import { StatusBar } from "@dxos/plugin-status-bar";
|
|
1621
|
+
import { EdgeStatus as EdgeStatus2 } from "@dxos/protocols/proto/dxos/client/services";
|
|
1695
1622
|
import { useClient as useClient9 } from "@dxos/react-client";
|
|
1623
|
+
import { useStream } from "@dxos/react-client/devtools";
|
|
1696
1624
|
import { getSyncSummary, useSyncState } from "@dxos/react-client/echo";
|
|
1697
|
-
import { Icon as Icon8, useTranslation as
|
|
1625
|
+
import { Icon as Icon8, Popover as Popover3, useTranslation as useTranslation17 } from "@dxos/react-ui";
|
|
1626
|
+
import { mx as mx2 } from "@dxos/react-ui-theme";
|
|
1627
|
+
import { Unit } from "@dxos/util";
|
|
1698
1628
|
|
|
1699
1629
|
// src/components/SyncStatus/save-tracker.ts
|
|
1700
1630
|
import { Context } from "@dxos/context";
|
|
@@ -1790,7 +1720,7 @@ var getIcon = (status) => {
|
|
|
1790
1720
|
// src/components/SyncStatus/SyncStatus.tsx
|
|
1791
1721
|
var SYNC_STALLED_TIMEOUT = 5e3;
|
|
1792
1722
|
var SyncStatus = () => {
|
|
1793
|
-
var _effect =
|
|
1723
|
+
var _effect = _useSignals17();
|
|
1794
1724
|
try {
|
|
1795
1725
|
const client = useClient9();
|
|
1796
1726
|
const state = useSyncState();
|
|
@@ -1800,7 +1730,7 @@ var SyncStatus = () => {
|
|
|
1800
1730
|
setSaved(state2 === "saved");
|
|
1801
1731
|
});
|
|
1802
1732
|
}, []);
|
|
1803
|
-
return /* @__PURE__ */
|
|
1733
|
+
return /* @__PURE__ */ React17.createElement(SyncStatusIndicator, {
|
|
1804
1734
|
state,
|
|
1805
1735
|
saved
|
|
1806
1736
|
});
|
|
@@ -1809,9 +1739,9 @@ var SyncStatus = () => {
|
|
|
1809
1739
|
}
|
|
1810
1740
|
};
|
|
1811
1741
|
var SyncStatusIndicator = ({ state, saved }) => {
|
|
1812
|
-
var _effect =
|
|
1742
|
+
var _effect = _useSignals17();
|
|
1813
1743
|
try {
|
|
1814
|
-
const { t } =
|
|
1744
|
+
const { t } = useTranslation17(meta.id);
|
|
1815
1745
|
const summary = getSyncSummary(state);
|
|
1816
1746
|
const offline = Object.values(state).length === 0;
|
|
1817
1747
|
const needsToUpload = summary.differentDocuments > 0 || summary.missingOnRemote > 0;
|
|
@@ -1838,39 +1768,95 @@ var SyncStatusIndicator = ({ state, saved }) => {
|
|
|
1838
1768
|
needsToDownload
|
|
1839
1769
|
]);
|
|
1840
1770
|
const title = t(`${status} label`);
|
|
1841
|
-
const icon = /* @__PURE__ */
|
|
1771
|
+
const icon = /* @__PURE__ */ React17.createElement(Icon8, {
|
|
1842
1772
|
icon: getIcon(status),
|
|
1843
|
-
size: 4,
|
|
1844
1773
|
classNames
|
|
1845
1774
|
});
|
|
1846
|
-
return /* @__PURE__ */
|
|
1775
|
+
return /* @__PURE__ */ React17.createElement(Popover3.Root, null, /* @__PURE__ */ React17.createElement(Popover3.Trigger, {
|
|
1776
|
+
asChild: true
|
|
1777
|
+
}, /* @__PURE__ */ React17.createElement(StatusBar.Item, {
|
|
1847
1778
|
title
|
|
1848
|
-
}, icon);
|
|
1779
|
+
}, icon)), /* @__PURE__ */ React17.createElement(Popover3.Portal, null, /* @__PURE__ */ React17.createElement(Popover3.Content, null, /* @__PURE__ */ React17.createElement(EdgeConnectionPopover, null), /* @__PURE__ */ React17.createElement(Popover3.Arrow, null))));
|
|
1780
|
+
} finally {
|
|
1781
|
+
_effect.f();
|
|
1782
|
+
}
|
|
1783
|
+
};
|
|
1784
|
+
var useEdgeStatus2 = () => {
|
|
1785
|
+
const client = useClient9();
|
|
1786
|
+
const { status } = useStream(() => client.services.services.EdgeAgentService.queryEdgeStatus(), {});
|
|
1787
|
+
return status;
|
|
1788
|
+
};
|
|
1789
|
+
var EdgeConnectionPopover = () => {
|
|
1790
|
+
var _effect = _useSignals17();
|
|
1791
|
+
try {
|
|
1792
|
+
const status = useEdgeStatus2();
|
|
1793
|
+
const { t } = useTranslation17(meta.id);
|
|
1794
|
+
const isConnected = status?.state === EdgeStatus2.ConnectionState.CONNECTED;
|
|
1795
|
+
return /* @__PURE__ */ React17.createElement("div", {
|
|
1796
|
+
className: "min-is-[240px] p-2"
|
|
1797
|
+
}, /* @__PURE__ */ React17.createElement("div", {
|
|
1798
|
+
className: "flex items-center gap-2 mbe-2"
|
|
1799
|
+
}, /* @__PURE__ */ React17.createElement(Icon8, {
|
|
1800
|
+
icon: isConnected ? "ph--check-circle--regular" : "ph--warning-circle--regular",
|
|
1801
|
+
classNames: mx2(isConnected ? "text-successText" : "text-errorText animate-pulse")
|
|
1802
|
+
}), /* @__PURE__ */ React17.createElement("span", {
|
|
1803
|
+
className: "font-medium text-sm"
|
|
1804
|
+
}, isConnected ? t("sync edge connected label") : t("sync edge disconnected label"))), status?.state === EdgeStatus2.ConnectionState.NOT_CONNECTED && /* @__PURE__ */ React17.createElement("div", {
|
|
1805
|
+
className: "flex items-center gap-2 text-sm text-description"
|
|
1806
|
+
}, /* @__PURE__ */ React17.createElement(Icon8, {
|
|
1807
|
+
icon: "ph--cloud-x--regular"
|
|
1808
|
+
}), /* @__PURE__ */ React17.createElement("span", null, t("sync no connection label"))), status?.state === EdgeStatus2.ConnectionState.CONNECTED && /* @__PURE__ */ React17.createElement("div", {
|
|
1809
|
+
className: "space-y-2"
|
|
1810
|
+
}, /* @__PURE__ */ React17.createElement("div", {
|
|
1811
|
+
className: "flex items-center justify-between"
|
|
1812
|
+
}, /* @__PURE__ */ React17.createElement("div", {
|
|
1813
|
+
className: "flex items-center gap-2 text-sm text-description"
|
|
1814
|
+
}, /* @__PURE__ */ React17.createElement(Icon8, {
|
|
1815
|
+
icon: "ph--timer--regular"
|
|
1816
|
+
}), /* @__PURE__ */ React17.createElement("span", null, t("sync latency label"))), /* @__PURE__ */ React17.createElement("span", {
|
|
1817
|
+
className: "text-sm font-mono text-subdued"
|
|
1818
|
+
}, status.rtt.toFixed(0), "ms")), /* @__PURE__ */ React17.createElement("div", {
|
|
1819
|
+
className: "flex items-center justify-between"
|
|
1820
|
+
}, /* @__PURE__ */ React17.createElement("div", {
|
|
1821
|
+
className: "flex items-center gap-2 text-sm text-description"
|
|
1822
|
+
}, /* @__PURE__ */ React17.createElement(Icon8, {
|
|
1823
|
+
icon: "ph--arrow-up--regular"
|
|
1824
|
+
}), /* @__PURE__ */ React17.createElement("span", null, t("sync upload label"))), /* @__PURE__ */ React17.createElement("span", {
|
|
1825
|
+
className: "text-sm font-mono text-subdued"
|
|
1826
|
+
}, Unit.Kilobyte(status.rateBytesUp, 0), "/s")), /* @__PURE__ */ React17.createElement("div", {
|
|
1827
|
+
className: "flex items-center justify-between"
|
|
1828
|
+
}, /* @__PURE__ */ React17.createElement("div", {
|
|
1829
|
+
className: "flex items-center gap-2 text-sm text-description"
|
|
1830
|
+
}, /* @__PURE__ */ React17.createElement(Icon8, {
|
|
1831
|
+
icon: "ph--arrow-down--regular"
|
|
1832
|
+
}), /* @__PURE__ */ React17.createElement("span", null, t("sync download label"))), /* @__PURE__ */ React17.createElement("span", {
|
|
1833
|
+
className: "text-sm font-mono text-subdued"
|
|
1834
|
+
}, Unit.Kilobyte(status.rateBytesDown, 0), "/s"))));
|
|
1849
1835
|
} finally {
|
|
1850
1836
|
_effect.f();
|
|
1851
1837
|
}
|
|
1852
1838
|
};
|
|
1853
1839
|
|
|
1854
1840
|
// src/components/ViewEditor.tsx
|
|
1855
|
-
import { useSignals as
|
|
1856
|
-
import
|
|
1841
|
+
import { useSignals as _useSignals18 } from "@preact-signals/safe-react/tracking";
|
|
1842
|
+
import React18, { useCallback as useCallback11 } from "react";
|
|
1857
1843
|
import { createIntent as createIntent10, useIntentDispatcher as useIntentDispatcher10 } from "@dxos/app-framework";
|
|
1858
|
-
import {
|
|
1844
|
+
import { Type as Type3 } from "@dxos/echo";
|
|
1859
1845
|
import { invariant as invariant2 } from "@dxos/invariant";
|
|
1860
1846
|
import { useClient as useClient10 } from "@dxos/react-client";
|
|
1861
1847
|
import { getSpace as getSpace4, useSchema } from "@dxos/react-client/echo";
|
|
1862
1848
|
import { ViewEditor as NaturalViewEditor } from "@dxos/react-ui-form";
|
|
1863
|
-
import {
|
|
1849
|
+
import { getTypenameFromQuery as getTypenameFromQuery2 } from "@dxos/schema";
|
|
1864
1850
|
var __dxlog_file6 = "/__w/dxos/dxos/packages/plugins/plugin-space/src/components/ViewEditor.tsx";
|
|
1865
1851
|
var ViewEditor = ({ view }) => {
|
|
1866
|
-
var _effect =
|
|
1852
|
+
var _effect = _useSignals18();
|
|
1867
1853
|
try {
|
|
1868
1854
|
const { dispatchPromise: dispatch } = useIntentDispatcher10();
|
|
1869
1855
|
const client = useClient10();
|
|
1870
1856
|
const space = getSpace4(view);
|
|
1871
|
-
const typename = view.query ?
|
|
1857
|
+
const typename = view.query ? getTypenameFromQuery2(view.query.ast) : void 0;
|
|
1872
1858
|
const schema = useSchema(client, space, typename);
|
|
1873
|
-
const handleUpdateQuery = useCallback11((
|
|
1859
|
+
const handleUpdateQuery = useCallback11((newQuery) => {
|
|
1874
1860
|
invariant2(schema, void 0, {
|
|
1875
1861
|
F: __dxlog_file6,
|
|
1876
1862
|
L: 28,
|
|
@@ -1889,9 +1875,8 @@ var ViewEditor = ({ view }) => {
|
|
|
1889
1875
|
""
|
|
1890
1876
|
]
|
|
1891
1877
|
});
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
schema.updateTypename(typename2);
|
|
1878
|
+
view.query.ast = newQuery;
|
|
1879
|
+
schema.updateTypename(getTypenameFromQuery2(newQuery));
|
|
1895
1880
|
}, [
|
|
1896
1881
|
view,
|
|
1897
1882
|
schema
|
|
@@ -1908,7 +1893,7 @@ var ViewEditor = ({ view }) => {
|
|
|
1908
1893
|
if (!space || !schema) {
|
|
1909
1894
|
return null;
|
|
1910
1895
|
}
|
|
1911
|
-
return /* @__PURE__ */
|
|
1896
|
+
return /* @__PURE__ */ React18.createElement(NaturalViewEditor, {
|
|
1912
1897
|
registry: space.db.schemaRegistry,
|
|
1913
1898
|
schema,
|
|
1914
1899
|
view,
|
|
@@ -1922,10 +1907,11 @@ var ViewEditor = ({ view }) => {
|
|
|
1922
1907
|
};
|
|
1923
1908
|
|
|
1924
1909
|
// src/components/index.ts
|
|
1925
|
-
import { lazy
|
|
1926
|
-
var CollectionMain =
|
|
1927
|
-
var ObjectDetailsPanel =
|
|
1928
|
-
var
|
|
1910
|
+
import { lazy } from "react";
|
|
1911
|
+
var CollectionMain = lazy(() => import("./CollectionMain-HTKSZCRR.mjs"));
|
|
1912
|
+
var ObjectDetailsPanel = lazy(() => import("./ObjectDetailsPanel-5B45G744.mjs"));
|
|
1913
|
+
var ObjectSettingsContainer = lazy(() => import("./ObjectSettings-UFTKBP7B.mjs"));
|
|
1914
|
+
var RecordMain = lazy(() => import("./RecordMain-BCSXTSEB.mjs"));
|
|
1929
1915
|
|
|
1930
1916
|
export {
|
|
1931
1917
|
AwaitingObject,
|
|
@@ -1938,7 +1924,6 @@ export {
|
|
|
1938
1924
|
JoinDialog,
|
|
1939
1925
|
MembersContainer,
|
|
1940
1926
|
MenuFooter,
|
|
1941
|
-
ObjectSettingsContainer,
|
|
1942
1927
|
PersistenceStatus,
|
|
1943
1928
|
POPOVER_RENAME_OBJECT,
|
|
1944
1929
|
PopoverRenameObject,
|
|
@@ -1958,16 +1943,7 @@ export {
|
|
|
1958
1943
|
ViewEditor,
|
|
1959
1944
|
CollectionMain,
|
|
1960
1945
|
ObjectDetailsPanel,
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
AppGraphSerializer,
|
|
1964
|
-
IdentityCreated,
|
|
1965
|
-
IntentResolver,
|
|
1966
|
-
ReactRoot,
|
|
1967
|
-
ReactSurface,
|
|
1968
|
-
SchemaDefs,
|
|
1969
|
-
SpaceSettings,
|
|
1970
|
-
SpaceState,
|
|
1971
|
-
SpacesReady
|
|
1946
|
+
ObjectSettingsContainer,
|
|
1947
|
+
RecordMain
|
|
1972
1948
|
};
|
|
1973
|
-
//# sourceMappingURL=chunk-
|
|
1949
|
+
//# sourceMappingURL=chunk-ENBBJSNE.mjs.map
|