@dxos/plugin-thread 0.8.4-main.406dc2a → 0.8.4-main.548089c
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/ChannelContainer-56QROCE4.mjs +16 -0
- package/dist/lib/browser/ChatContainer-7F5Y6GXJ.mjs +15 -0
- package/dist/lib/browser/{app-graph-builder-ODKIAXR7.mjs → app-graph-builder-USFBLGFG.mjs} +19 -20
- package/dist/lib/browser/app-graph-builder-USFBLGFG.mjs.map +7 -0
- package/dist/lib/browser/blueprint-definition-6BKYTMJS.mjs +104 -0
- package/dist/lib/browser/blueprint-definition-6BKYTMJS.mjs.map +7 -0
- package/dist/lib/browser/{call-manager-BCKLI4QD.mjs → call-manager-MAXQLMMS.mjs} +5 -5
- package/dist/lib/browser/{chunk-CMCVHULC.mjs → chunk-44S2SB4N.mjs} +34 -31
- package/dist/lib/browser/chunk-44S2SB4N.mjs.map +7 -0
- package/dist/lib/browser/{chunk-L326LSNS.mjs → chunk-BBTXGRIR.mjs} +2 -2
- package/dist/lib/browser/{chunk-L326LSNS.mjs.map → chunk-BBTXGRIR.mjs.map} +1 -1
- package/dist/lib/browser/{chunk-B7YQ7QR2.mjs → chunk-FR6MEAZI.mjs} +17 -16
- package/dist/lib/browser/chunk-FR6MEAZI.mjs.map +7 -0
- package/dist/lib/browser/{chunk-XYUJXHYV.mjs → chunk-ISCHODBV.mjs} +1 -1
- package/dist/lib/browser/{chunk-XYUJXHYV.mjs.map → chunk-ISCHODBV.mjs.map} +2 -2
- package/dist/lib/browser/chunk-K2DUJRFJ.mjs +27 -0
- package/dist/lib/browser/chunk-K2DUJRFJ.mjs.map +7 -0
- package/dist/lib/browser/{chunk-HDEQRBOC.mjs → chunk-KOBXMDCI.mjs} +68 -67
- package/dist/lib/browser/chunk-KOBXMDCI.mjs.map +7 -0
- package/dist/lib/browser/chunk-NMJEVD36.mjs +168 -0
- package/dist/lib/browser/chunk-NMJEVD36.mjs.map +7 -0
- package/dist/lib/browser/chunk-NSREO7OX.mjs +23 -0
- package/dist/lib/browser/chunk-NSREO7OX.mjs.map +7 -0
- package/dist/lib/browser/{chunk-ZCEU5K23.mjs → chunk-ZCW3NSDZ.mjs} +139 -236
- package/dist/lib/browser/chunk-ZCW3NSDZ.mjs.map +7 -0
- package/dist/lib/browser/{chunk-VJMKS4CZ.mjs → chunk-ZO5ZGDN5.mjs} +45 -47
- package/dist/lib/browser/chunk-ZO5ZGDN5.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +37 -36
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-VOQD3TQ2.mjs → intent-resolver-BOUT4WGY.mjs} +25 -91
- package/dist/lib/browser/intent-resolver-BOUT4WGY.mjs.map +7 -0
- package/dist/lib/browser/{markdown-R6MGRIA6.mjs → markdown-74EUSQGV.mjs} +22 -20
- package/dist/lib/browser/markdown-74EUSQGV.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-root-UMSBTN6H.mjs → react-root-2VRIT2HF.mjs} +10 -10
- package/dist/lib/browser/{react-surface-SXMQEWKE.mjs → react-surface-UOECBYHE.mjs} +17 -16
- package/dist/lib/browser/react-surface-UOECBYHE.mjs.map +7 -0
- package/dist/lib/browser/{settings-TCNF54PN.mjs → settings-LGQUZITB.mjs} +3 -3
- package/dist/lib/browser/{state-ZQ4IPOJT.mjs → state-36REWXO5.mjs} +3 -3
- package/dist/lib/browser/types/index.mjs +7 -9
- package/dist/lib/node-esm/ChannelContainer-4SV22AKC.mjs +17 -0
- package/dist/lib/node-esm/{ChatContainer-SH6LTFQL.mjs → ChatContainer-C526R4DI.mjs} +5 -5
- package/dist/lib/node-esm/{app-graph-builder-DMPT3MY6.mjs → app-graph-builder-DWYGNENL.mjs} +19 -20
- package/dist/lib/node-esm/app-graph-builder-DWYGNENL.mjs.map +7 -0
- package/dist/lib/node-esm/blueprint-definition-6LEAWSC7.mjs +105 -0
- package/dist/lib/node-esm/blueprint-definition-6LEAWSC7.mjs.map +7 -0
- package/dist/lib/node-esm/{call-manager-Q7RY2YP4.mjs → call-manager-LC4OS2KD.mjs} +5 -5
- package/dist/lib/node-esm/{chunk-TIPIOH2J.mjs → chunk-7KZWZS2U.mjs} +139 -236
- package/dist/lib/node-esm/chunk-7KZWZS2U.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-NHSIAEDW.mjs → chunk-KE6SKBPO.mjs} +45 -47
- package/dist/lib/node-esm/chunk-KE6SKBPO.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-2KZ4ODHU.mjs → chunk-NEGIPZTJ.mjs} +34 -31
- package/dist/lib/node-esm/chunk-NEGIPZTJ.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-2MMJF7DW.mjs → chunk-PZH2EDU5.mjs} +68 -67
- package/dist/lib/node-esm/chunk-PZH2EDU5.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-TJKM5JZT.mjs +169 -0
- package/dist/lib/node-esm/chunk-TJKM5JZT.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-BTGKI5IK.mjs → chunk-TWKGDFCS.mjs} +17 -16
- package/dist/lib/node-esm/chunk-TWKGDFCS.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-2V3WSLUZ.mjs → chunk-VBI32FGI.mjs} +1 -1
- package/dist/lib/node-esm/{chunk-2V3WSLUZ.mjs.map → chunk-VBI32FGI.mjs.map} +2 -2
- package/dist/lib/node-esm/chunk-VM6WD3YY.mjs +25 -0
- package/dist/lib/node-esm/chunk-VM6WD3YY.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-XI45H4IV.mjs +28 -0
- package/dist/lib/node-esm/chunk-XI45H4IV.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-LCHTNRK7.mjs → chunk-ZQAGII7M.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-LCHTNRK7.mjs.map → chunk-ZQAGII7M.mjs.map} +1 -1
- package/dist/lib/node-esm/index.mjs +37 -36
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-AKVH66PH.mjs → intent-resolver-45PLIFCJ.mjs} +25 -91
- package/dist/lib/node-esm/intent-resolver-45PLIFCJ.mjs.map +7 -0
- package/dist/lib/node-esm/{markdown-MYGTDXT6.mjs → markdown-566XXB55.mjs} +22 -20
- package/dist/lib/node-esm/markdown-566XXB55.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-root-W6AVTL5M.mjs → react-root-JAE2VI2D.mjs} +10 -10
- package/dist/lib/node-esm/{react-surface-NLSZJGMO.mjs → react-surface-BYKXK5YA.mjs} +17 -16
- package/dist/lib/node-esm/react-surface-BYKXK5YA.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-ZQHGVFBY.mjs → settings-WKLJSP6R.mjs} +3 -3
- package/dist/lib/node-esm/{state-FSLLJ5TZ.mjs → state-X3W67GTL.mjs} +3 -3
- package/dist/lib/node-esm/types/index.mjs +7 -9
- package/dist/types/src/ThreadPlugin.d.ts.map +1 -1
- package/dist/types/src/calls/media-manager.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/blueprint-definition.d.ts +5 -0
- package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
- package/dist/types/src/capabilities/capabilities.d.ts +2 -2
- package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts +1 -1
- 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/markdown.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/components/Call/Toolbar.d.ts +2 -2
- package/dist/types/src/components/Call/Toolbar.d.ts.map +1 -1
- package/dist/types/src/components/ChannelContainer.d.ts +2 -2
- package/dist/types/src/components/ChannelContainer.d.ts.map +1 -1
- package/dist/types/src/components/ChannelContainer.stories.d.ts +71 -5
- package/dist/types/src/components/ChannelContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/Chat.stories.d.ts +71 -4
- package/dist/types/src/components/Chat.stories.d.ts.map +1 -1
- package/dist/types/src/components/ChatContainer.d.ts +6 -5
- package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
- package/dist/types/src/components/CommentsContainer.d.ts +2 -2
- package/dist/types/src/components/CommentsContainer.d.ts.map +1 -1
- package/dist/types/src/components/CommentsThreadContainer.d.ts +8 -8
- package/dist/types/src/components/CommentsThreadContainer.d.ts.map +1 -1
- package/dist/types/src/components/MessageContainer.d.ts +2 -2
- package/dist/types/src/components/MessageContainer.d.ts.map +1 -1
- package/dist/types/src/components/ResponsiveGrid/ResponsiveGridItem.d.ts.map +1 -1
- package/dist/types/src/components/ThreadComplementary.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +1 -1
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/components/testing.d.ts +3 -3
- package/dist/types/src/components/testing.d.ts.map +1 -1
- package/dist/types/src/extensions/threads.d.ts.map +1 -1
- package/dist/types/src/functions/create-proposals.d.ts +6 -0
- package/dist/types/src/functions/create-proposals.d.ts.map +1 -0
- package/dist/types/src/functions/index.d.ts +2 -0
- package/dist/types/src/functions/index.d.ts.map +1 -0
- package/dist/types/src/hooks/analytics.d.ts +2 -2
- package/dist/types/src/hooks/analytics.d.ts.map +1 -1
- package/dist/types/src/hooks/index.d.ts +2 -2
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/testing/stories.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +71 -5
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Channel.d.ts +16 -0
- package/dist/types/src/types/Channel.d.ts.map +1 -0
- package/dist/types/src/types/{schema.d.ts → Thread.d.ts} +13 -25
- package/dist/types/src/types/Thread.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +2 -1
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +22 -110
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +50 -46
- package/src/ThreadPlugin.tsx +26 -18
- package/src/calls/media-manager.ts +9 -6
- package/src/calls/util/stub-media-streams.ts +2 -2
- package/src/capabilities/app-graph-builder.ts +27 -17
- package/src/capabilities/blueprint-definition.ts +38 -0
- package/src/capabilities/capabilities.ts +2 -2
- package/src/capabilities/index.ts +1 -1
- package/src/capabilities/intent-resolver.ts +17 -54
- package/src/capabilities/markdown.ts +5 -3
- package/src/capabilities/react-surface.tsx +8 -7
- package/src/components/Call/Call.tsx +1 -1
- package/src/components/Call/Toolbar.tsx +5 -5
- package/src/components/CallDebugPanel.tsx +2 -2
- package/src/components/CallSidebar.tsx +1 -1
- package/src/components/ChannelContainer.stories.tsx +6 -6
- package/src/components/ChannelContainer.tsx +18 -14
- package/src/components/Chat.stories.tsx +7 -13
- package/src/components/ChatContainer.tsx +30 -21
- package/src/components/Comments.stories.tsx +6 -6
- package/src/components/CommentsContainer.tsx +6 -7
- package/src/components/CommentsThreadContainer.tsx +32 -27
- package/src/components/Lobby/Lobby.tsx +1 -1
- package/src/components/Media/VideoObject.tsx +1 -1
- package/src/components/MessageContainer.tsx +6 -6
- package/src/components/Participant/Participant.tsx +1 -1
- package/src/components/ResponsiveGrid/ResponsiveContainer.tsx +2 -2
- package/src/components/ResponsiveGrid/ResponsiveGrid.stories.tsx +1 -1
- package/src/components/ResponsiveGrid/ResponsiveGrid.tsx +4 -4
- package/src/components/ResponsiveGrid/ResponsiveGridItem.tsx +5 -2
- package/src/components/ThreadComplementary.tsx +38 -31
- package/src/components/testing.ts +8 -8
- package/src/extensions/threads.ts +25 -16
- package/src/functions/create-proposals.ts +58 -0
- package/src/functions/index.ts +5 -0
- package/src/hooks/analytics.ts +4 -7
- package/src/hooks/index.ts +3 -2
- package/src/meta.ts +6 -1
- package/src/testing/stories.ts +2 -5
- package/src/translations.ts +3 -2
- package/src/types/Channel.ts +27 -0
- package/src/types/Thread.ts +26 -0
- package/src/types/index.ts +2 -1
- package/src/types/types.ts +17 -25
- package/dist/lib/browser/ChannelContainer-BGDGZHV4.mjs +0 -16
- package/dist/lib/browser/ChatContainer-75KJZ4XR.mjs +0 -15
- package/dist/lib/browser/app-graph-builder-ODKIAXR7.mjs.map +0 -7
- package/dist/lib/browser/chunk-2MUYQOQE.mjs +0 -23
- package/dist/lib/browser/chunk-2MUYQOQE.mjs.map +0 -7
- package/dist/lib/browser/chunk-B7YQ7QR2.mjs.map +0 -7
- package/dist/lib/browser/chunk-CMCVHULC.mjs.map +0 -7
- package/dist/lib/browser/chunk-HDEQRBOC.mjs.map +0 -7
- package/dist/lib/browser/chunk-T4KJ5JR4.mjs +0 -15
- package/dist/lib/browser/chunk-T4KJ5JR4.mjs.map +0 -7
- package/dist/lib/browser/chunk-VJMKS4CZ.mjs.map +0 -7
- package/dist/lib/browser/chunk-VTYX3SIM.mjs +0 -147
- package/dist/lib/browser/chunk-VTYX3SIM.mjs.map +0 -7
- package/dist/lib/browser/chunk-ZCEU5K23.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-VOQD3TQ2.mjs.map +0 -7
- package/dist/lib/browser/markdown-R6MGRIA6.mjs.map +0 -7
- package/dist/lib/browser/react-surface-SXMQEWKE.mjs.map +0 -7
- package/dist/lib/browser/toolkit-JF4B4QIO.mjs +0 -84
- package/dist/lib/browser/toolkit-JF4B4QIO.mjs.map +0 -7
- package/dist/lib/node-esm/ChannelContainer-OXC6BTU7.mjs +0 -17
- package/dist/lib/node-esm/app-graph-builder-DMPT3MY6.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-2KZ4ODHU.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-2MMJF7DW.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-BAMZXJS4.mjs +0 -148
- package/dist/lib/node-esm/chunk-BAMZXJS4.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-BTGKI5IK.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-GZ4WL2IS.mjs +0 -25
- package/dist/lib/node-esm/chunk-GZ4WL2IS.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-NHSIAEDW.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-OBVAURUU.mjs +0 -17
- package/dist/lib/node-esm/chunk-OBVAURUU.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-TIPIOH2J.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-AKVH66PH.mjs.map +0 -7
- package/dist/lib/node-esm/markdown-MYGTDXT6.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-NLSZJGMO.mjs.map +0 -7
- package/dist/lib/node-esm/toolkit-DHPKJITO.mjs +0 -85
- package/dist/lib/node-esm/toolkit-DHPKJITO.mjs.map +0 -7
- package/dist/types/src/capabilities/toolkit.d.ts +0 -6
- package/dist/types/src/capabilities/toolkit.d.ts.map +0 -1
- package/dist/types/src/types/schema.d.ts.map +0 -1
- package/src/capabilities/toolkit.ts +0 -82
- package/src/types/schema.ts +0 -33
- /package/dist/lib/browser/{ChannelContainer-BGDGZHV4.mjs.map → ChannelContainer-56QROCE4.mjs.map} +0 -0
- /package/dist/lib/browser/{ChatContainer-75KJZ4XR.mjs.map → ChatContainer-7F5Y6GXJ.mjs.map} +0 -0
- /package/dist/lib/browser/{call-manager-BCKLI4QD.mjs.map → call-manager-MAXQLMMS.mjs.map} +0 -0
- /package/dist/lib/browser/{react-root-UMSBTN6H.mjs.map → react-root-2VRIT2HF.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-TCNF54PN.mjs.map → settings-LGQUZITB.mjs.map} +0 -0
- /package/dist/lib/browser/{state-ZQ4IPOJT.mjs.map → state-36REWXO5.mjs.map} +0 -0
- /package/dist/lib/node-esm/{ChannelContainer-OXC6BTU7.mjs.map → ChannelContainer-4SV22AKC.mjs.map} +0 -0
- /package/dist/lib/node-esm/{ChatContainer-SH6LTFQL.mjs.map → ChatContainer-C526R4DI.mjs.map} +0 -0
- /package/dist/lib/node-esm/{call-manager-Q7RY2YP4.mjs.map → call-manager-LC4OS2KD.mjs.map} +0 -0
- /package/dist/lib/node-esm/{react-root-W6AVTL5M.mjs.map → react-root-JAE2VI2D.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-ZQHGVFBY.mjs.map → settings-WKLJSP6R.mjs.map} +0 -0
- /package/dist/lib/node-esm/{state-FSLLJ5TZ.mjs.map → state-X3W67GTL.mjs.map} +0 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ChannelContainer,
|
|
3
|
+
ChannelContainer_default
|
|
4
|
+
} from "./chunk-44S2SB4N.mjs";
|
|
5
|
+
import "./chunk-NSREO7OX.mjs";
|
|
6
|
+
import "./chunk-BBTXGRIR.mjs";
|
|
7
|
+
import "./chunk-FR6MEAZI.mjs";
|
|
8
|
+
import "./chunk-KOBXMDCI.mjs";
|
|
9
|
+
import "./chunk-CP7E2HRE.mjs";
|
|
10
|
+
import "./chunk-ISCHODBV.mjs";
|
|
11
|
+
import "./chunk-K2DUJRFJ.mjs";
|
|
12
|
+
export {
|
|
13
|
+
ChannelContainer,
|
|
14
|
+
ChannelContainer_default as default
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=ChannelContainer-56QROCE4.mjs.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ChatContainer,
|
|
3
|
+
ChatContainer_default,
|
|
4
|
+
ChatHeading
|
|
5
|
+
} from "./chunk-FR6MEAZI.mjs";
|
|
6
|
+
import "./chunk-KOBXMDCI.mjs";
|
|
7
|
+
import "./chunk-CP7E2HRE.mjs";
|
|
8
|
+
import "./chunk-ISCHODBV.mjs";
|
|
9
|
+
import "./chunk-K2DUJRFJ.mjs";
|
|
10
|
+
export {
|
|
11
|
+
ChatContainer,
|
|
12
|
+
ChatHeading,
|
|
13
|
+
ChatContainer_default as default
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=ChatContainer-7F5Y6GXJ.mjs.map
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
2
|
+
Channel_exports,
|
|
3
3
|
ThreadAction
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-NMJEVD36.mjs";
|
|
5
5
|
import {
|
|
6
6
|
ThreadCapabilities
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-BBTXGRIR.mjs";
|
|
8
8
|
import {
|
|
9
9
|
getAnchor
|
|
10
10
|
} from "./chunk-CP7E2HRE.mjs";
|
|
11
11
|
import {
|
|
12
12
|
meta
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-K2DUJRFJ.mjs";
|
|
14
14
|
|
|
15
15
|
// src/capabilities/app-graph-builder.ts
|
|
16
|
-
import {
|
|
16
|
+
import { Atom } from "@effect-atom/atom-react";
|
|
17
17
|
import * as Function from "effect/Function";
|
|
18
18
|
import * as Option from "effect/Option";
|
|
19
19
|
import { Capabilities, contributes, createIntent } from "@dxos/app-framework";
|
|
@@ -21,13 +21,12 @@ import { Obj } from "@dxos/echo";
|
|
|
21
21
|
import { AttentionCapabilities } from "@dxos/plugin-attention";
|
|
22
22
|
import { ATTENDABLE_PATH_SEPARATOR, DECK_COMPANION_TYPE, PLANK_COMPANION_TYPE } from "@dxos/plugin-deck/types";
|
|
23
23
|
import { ROOT_ID, createExtension, rxFromSignal } from "@dxos/plugin-graph";
|
|
24
|
-
import { fullyQualifiedId } from "@dxos/react-client/echo";
|
|
25
24
|
var app_graph_builder_default = ((context) => {
|
|
26
25
|
const resolve = (typename) => context.getCapabilities(Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};
|
|
27
26
|
return contributes(Capabilities.AppGraphBuilder, [
|
|
28
27
|
createExtension({
|
|
29
28
|
id: `${meta.id}/active-call`,
|
|
30
|
-
connector: (node) =>
|
|
29
|
+
connector: (node) => Atom.make((get) => Function.pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID ? Option.some(node2) : Option.none()), Option.map((node2) => {
|
|
31
30
|
const [call] = get(context.capabilities(ThreadCapabilities.CallManager));
|
|
32
31
|
return get(rxFromSignal(() => call?.joined ? [
|
|
33
32
|
{
|
|
@@ -54,16 +53,16 @@ var app_graph_builder_default = ((context) => {
|
|
|
54
53
|
createExtension({
|
|
55
54
|
id: `${meta.id}/channel-chat-companion`,
|
|
56
55
|
connector: (node) => {
|
|
57
|
-
return
|
|
58
|
-
return Function.pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(
|
|
56
|
+
return Atom.make((get) => {
|
|
57
|
+
return Function.pipe(get(node), Option.flatMap((node2) => Obj.instanceOf(Channel_exports.Channel, node2.data) ? Option.some(node2.data) : Option.none()), Option.map((channel) => {
|
|
59
58
|
const callManager = context.getCapability(ThreadCapabilities.CallManager);
|
|
60
|
-
const joined = get(rxFromSignal(() => callManager.joined && callManager.roomId ===
|
|
59
|
+
const joined = get(rxFromSignal(() => callManager.joined && callManager.roomId === Obj.getDXN(channel).toString()));
|
|
61
60
|
if (!joined) {
|
|
62
61
|
return [];
|
|
63
62
|
}
|
|
64
63
|
return [
|
|
65
64
|
{
|
|
66
|
-
id: `${
|
|
65
|
+
id: `${Obj.getDXN(channel).toString()}${ATTENDABLE_PATH_SEPARATOR}chat`,
|
|
67
66
|
type: PLANK_COMPANION_TYPE,
|
|
68
67
|
data: "chat",
|
|
69
68
|
properties: {
|
|
@@ -85,8 +84,8 @@ var app_graph_builder_default = ((context) => {
|
|
|
85
84
|
}),
|
|
86
85
|
createExtension({
|
|
87
86
|
id: `${meta.id}/comments-companion`,
|
|
88
|
-
connector: (node) =>
|
|
89
|
-
if (!Obj.isObject(node2.data) || Obj.instanceOf(
|
|
87
|
+
connector: (node) => Atom.make((get) => Function.pipe(get(node), Option.flatMap((node2) => {
|
|
88
|
+
if (!Obj.isObject(node2.data) || Obj.instanceOf(Channel_exports.Channel, node2.data)) {
|
|
90
89
|
return Option.none();
|
|
91
90
|
}
|
|
92
91
|
const metadata = resolve(Obj.getTypename(node2.data));
|
|
@@ -115,8 +114,8 @@ var app_graph_builder_default = ((context) => {
|
|
|
115
114
|
}),
|
|
116
115
|
createExtension({
|
|
117
116
|
id: `${meta.id}/comment-toolbar`,
|
|
118
|
-
actions: (node) =>
|
|
119
|
-
if (!Obj.isObject(node2.data) || Obj.instanceOf(
|
|
117
|
+
actions: (node) => Atom.make((get) => Function.pipe(get(node), Option.flatMap((node2) => {
|
|
118
|
+
if (!Obj.isObject(node2.data) || Obj.instanceOf(Channel_exports.Channel, node2.data)) {
|
|
120
119
|
return Option.none();
|
|
121
120
|
}
|
|
122
121
|
const metadata = resolve(Obj.getTypename(node2.data));
|
|
@@ -126,19 +125,19 @@ var app_graph_builder_default = ((context) => {
|
|
|
126
125
|
const toolbar = get(context.capabilities(ThreadCapabilities.State))[0]?.state.toolbar ?? {};
|
|
127
126
|
const disabled = get(rxFromSignal(() => {
|
|
128
127
|
const metadata = resolve(Obj.getTypename(object));
|
|
129
|
-
const selection = selectionManager.getSelection(
|
|
128
|
+
const selection = selectionManager.getSelection(Obj.getDXN(object).toString(), metadata.selectionMode);
|
|
130
129
|
const anchor = getAnchor(selection);
|
|
131
130
|
const invalidSelection = !anchor;
|
|
132
|
-
const overlappingComment = toolbar[
|
|
131
|
+
const overlappingComment = toolbar[Obj.getDXN(object).toString()];
|
|
133
132
|
return metadata.comments === "anchored" && invalidSelection || overlappingComment;
|
|
134
133
|
}));
|
|
135
134
|
return [
|
|
136
135
|
{
|
|
137
|
-
id: `${
|
|
136
|
+
id: `${Obj.getDXN(object).toString()}/comment`,
|
|
138
137
|
data: () => {
|
|
139
138
|
const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);
|
|
140
139
|
const metadata = resolve(Obj.getTypename(object));
|
|
141
|
-
const selection = selectionManager.getSelection(
|
|
140
|
+
const selection = selectionManager.getSelection(Obj.getDXN(object).toString());
|
|
142
141
|
const anchor = metadata.comments === "anchored" ? getAnchor(selection) : Date.now().toString();
|
|
143
142
|
const name = metadata.getAnchorLabel?.(object, anchor);
|
|
144
143
|
void dispatch(createIntent(ThreadAction.Create, {
|
|
@@ -168,4 +167,4 @@ var app_graph_builder_default = ((context) => {
|
|
|
168
167
|
export {
|
|
169
168
|
app_graph_builder_default as default
|
|
170
169
|
};
|
|
171
|
-
//# sourceMappingURL=app-graph-builder-
|
|
170
|
+
//# sourceMappingURL=app-graph-builder-USFBLGFG.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/app-graph-builder.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Atom } from '@effect-atom/atom-react';\nimport * as Function from 'effect/Function';\nimport * as Option from 'effect/Option';\n\nimport { Capabilities, type PluginContext, contributes, createIntent } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { AttentionCapabilities } from '@dxos/plugin-attention';\nimport { ATTENDABLE_PATH_SEPARATOR, DECK_COMPANION_TYPE, PLANK_COMPANION_TYPE } from '@dxos/plugin-deck/types';\nimport { ROOT_ID, createExtension, rxFromSignal } from '@dxos/plugin-graph';\n\nimport { meta } from '../meta';\nimport { Channel, ThreadAction } from '../types';\nimport { getAnchor } from '../util';\n\nimport { ThreadCapabilities } from './capabilities';\n\n// TODO(wittjosiah): Highlight active calls in L1.\n// Track active meetings by subscribing to meetings query and polling the swarms of recent meetings in the space.\nexport default (context: PluginContext) => {\n const resolve = (typename: string) =>\n context.getCapabilities(Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};\n\n return contributes(Capabilities.AppGraphBuilder, [\n createExtension({\n id: `${meta.id}/active-call`,\n connector: (node) =>\n Atom.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => (node.id === ROOT_ID ? Option.some(node) : Option.none())),\n Option.map((node) => {\n const [call] = get(context.capabilities(ThreadCapabilities.CallManager));\n return get(\n rxFromSignal(() =>\n call?.joined\n ? [\n {\n id: `${node.id}${ATTENDABLE_PATH_SEPARATOR}active-call`,\n type: DECK_COMPANION_TYPE,\n data: null,\n properties: {\n label: ['call panel label', { ns: meta.id }],\n icon: 'ph--video-conference--regular',\n position: 'hoist',\n disposition: 'hidden',\n },\n },\n ]\n : [],\n ),\n );\n }),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n // TODO(wittjosiah): The channel shouldn't become the companion during a call.\n // Alternative: the call/meeting/thread should be a child node of the channel and that should be opened.\n createExtension({\n id: `${meta.id}/channel-chat-companion`,\n connector: (node) => {\n return Atom.make((get) => {\n return Function.pipe(\n get(node),\n Option.flatMap((node) =>\n Obj.instanceOf(Channel.Channel, node.data) ? Option.some(node.data) : Option.none(),\n ),\n Option.map((channel) => {\n const callManager = context.getCapability(ThreadCapabilities.CallManager);\n const joined = get(\n rxFromSignal(() => callManager.joined && callManager.roomId === Obj.getDXN(channel).toString()),\n );\n if (!joined) {\n return [];\n }\n\n return [\n {\n id: `${Obj.getDXN(channel).toString()}${ATTENDABLE_PATH_SEPARATOR}chat`,\n type: PLANK_COMPANION_TYPE,\n data: 'chat',\n properties: {\n label: ['channel companion label', { ns: meta.id }],\n icon: 'ph--hash--regular',\n position: 'hoist',\n disposition: 'hidden',\n },\n },\n ];\n }),\n Option.getOrElse(() => []),\n );\n });\n },\n }),\n createExtension({\n id: `${meta.id}/comments-companion`,\n connector: (node) =>\n Atom.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => {\n if (!Obj.isObject(node.data) || Obj.instanceOf(Channel.Channel, node.data)) {\n return Option.none();\n }\n const metadata = resolve(Obj.getTypename(node.data)!);\n return typeof metadata.comments === 'string' ? Option.some(node) : Option.none();\n }),\n Option.map((node) => [\n {\n id: [node.id, 'comments'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'comments',\n properties: {\n label: ['comments label', { ns: meta.id }],\n icon: 'ph--chat-text--regular',\n disposition: 'hidden',\n position: 'hoist',\n },\n },\n ]),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n createExtension({\n id: `${meta.id}/comment-toolbar`,\n actions: (node) =>\n Atom.make((get) =>\n Function.pipe(\n get(node),\n Option.flatMap((node) => {\n if (!Obj.isObject(node.data) || Obj.instanceOf(Channel.Channel, node.data)) {\n return Option.none();\n }\n const metadata = resolve(Obj.getTypename(node.data)!);\n return typeof metadata.comments === 'string' ? Option.some(node.data) : Option.none();\n }),\n Option.map((object) => {\n const selectionManager = context.getCapability(AttentionCapabilities.Selection);\n const toolbar = get(context.capabilities(ThreadCapabilities.State))[0]?.state.toolbar ?? {};\n const disabled = get(\n rxFromSignal(() => {\n const metadata = resolve(Obj.getTypename(object)!);\n const selection = selectionManager.getSelection(\n Obj.getDXN(object).toString(),\n metadata.selectionMode,\n );\n const anchor = getAnchor(selection);\n const invalidSelection = !anchor;\n const overlappingComment = toolbar[Obj.getDXN(object).toString()];\n return (metadata.comments === 'anchored' && invalidSelection) || overlappingComment;\n }),\n );\n\n return [\n {\n id: `${Obj.getDXN(object).toString()}/comment`,\n data: () => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const metadata = resolve(Obj.getTypename(object)!);\n const selection = selectionManager.getSelection(Obj.getDXN(object).toString());\n // TODO(wittjosiah): Use presence of selection to determine if the comment should be anchored.\n // Requires all components which support selection (e.g. table/kanban) to support anchored comments.\n const anchor = metadata.comments === 'anchored' ? getAnchor(selection) : Date.now().toString();\n const name = metadata.getAnchorLabel?.(object, anchor);\n void dispatch(\n createIntent(ThreadAction.Create, {\n anchor,\n name,\n subject: object,\n }),\n );\n },\n properties: {\n label: ['add comment label', { ns: meta.id }],\n icon: 'ph--chat-text--regular',\n disposition: 'toolbar',\n disabled,\n testId: 'thread.comment.add',\n },\n },\n ];\n }),\n Option.getOrElse(() => []),\n ),\n ),\n }),\n ]);\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["Atom", "Function", "Option", "Capabilities", "contributes", "createIntent", "Obj", "AttentionCapabilities", "ATTENDABLE_PATH_SEPARATOR", "DECK_COMPANION_TYPE", "PLANK_COMPANION_TYPE", "ROOT_ID", "createExtension", "rxFromSignal", "context", "resolve", "typename", "getCapabilities", "Capabilities", "Metadata", "find", "id", "metadata", "contributes", "AppGraphBuilder", "createExtension", "meta", "connector", "node", "Atom", "make", "get", "pipe", "flatMap", "ROOT_ID", "some", "none", "map", "call", "capabilities", "ThreadCapabilities", "CallManager", "rxFromSignal", "joined", "ATTENDABLE_PATH_SEPARATOR", "type", "DECK_COMPANION_TYPE", "data", "properties", "label", "ns", "icon", "position", "disposition", "getOrElse", "Obj", "instanceOf", "Channel", "channel", "callManager", "getCapability", "roomId", "getDXN", "toString", "PLANK_COMPANION_TYPE", "isObject", "getTypename", "comments", "join", "actions", "object", "selectionManager", "AttentionCapabilities", "Selection", "toolbar", "State", "state", "disabled", "selection", "getSelection", "selectionMode", "anchor", "getAnchor", "invalidSelection", "overlappingComment", "dispatchPromise", "dispatch", "IntentDispatcher", "Date", "now", "name", "getAnchorLabel", "createIntent", "ThreadAction", "Create", "subject", "testId"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Thread_exports
|
|
3
|
+
} from "./chunk-NMJEVD36.mjs";
|
|
4
|
+
import "./chunk-K2DUJRFJ.mjs";
|
|
5
|
+
|
|
6
|
+
// src/capabilities/blueprint-definition.ts
|
|
7
|
+
import { Capabilities, contributes } from "@dxos/app-framework";
|
|
8
|
+
import { Blueprint, Template } from "@dxos/blueprints";
|
|
9
|
+
import { trim } from "@dxos/util";
|
|
10
|
+
|
|
11
|
+
// src/functions/create-proposals.ts
|
|
12
|
+
import * as Array from "effect/Array";
|
|
13
|
+
import * as Effect from "effect/Effect";
|
|
14
|
+
import * as Function from "effect/Function";
|
|
15
|
+
import * as Schema from "effect/Schema";
|
|
16
|
+
import { ArtifactId, computeDiffsWithCursors } from "@dxos/assistant";
|
|
17
|
+
import { Obj, Ref, Relation } from "@dxos/echo";
|
|
18
|
+
import { createDocAccessor } from "@dxos/echo-db";
|
|
19
|
+
import { DatabaseService, defineFunction } from "@dxos/functions";
|
|
20
|
+
import { DXN } from "@dxos/keys";
|
|
21
|
+
import { Markdown } from "@dxos/plugin-markdown/types";
|
|
22
|
+
import { AnchoredTo, Message } from "@dxos/types";
|
|
23
|
+
var create_proposals_default = defineFunction({
|
|
24
|
+
key: "dxos.org/function/thread/create-proposals",
|
|
25
|
+
name: "Create Proposals",
|
|
26
|
+
description: "Proposes a set of changes to a document.",
|
|
27
|
+
inputSchema: Schema.Struct({
|
|
28
|
+
id: ArtifactId,
|
|
29
|
+
diffs: Schema.Array(Schema.String).annotations({
|
|
30
|
+
description: "The diffs to propose for the document."
|
|
31
|
+
})
|
|
32
|
+
}),
|
|
33
|
+
outputSchema: Schema.Void,
|
|
34
|
+
handler: Effect.fn(function* ({ data: { id, diffs: _diffs } }) {
|
|
35
|
+
const object = yield* DatabaseService.resolve(DXN.parse(id), Markdown.Document);
|
|
36
|
+
const content = yield* Effect.promise(() => object.content.load());
|
|
37
|
+
const accessor = createDocAccessor(content, [
|
|
38
|
+
"content"
|
|
39
|
+
]);
|
|
40
|
+
yield* Function.pipe(computeDiffsWithCursors(accessor, _diffs), Array.map(Effect.fnUntraced(function* ({ cursor, text }) {
|
|
41
|
+
const proposal = Obj.make(Message.Message, {
|
|
42
|
+
created: (/* @__PURE__ */ new Date()).toISOString(),
|
|
43
|
+
sender: {
|
|
44
|
+
role: "assistant"
|
|
45
|
+
},
|
|
46
|
+
blocks: [
|
|
47
|
+
{
|
|
48
|
+
_tag: "proposal",
|
|
49
|
+
text
|
|
50
|
+
}
|
|
51
|
+
]
|
|
52
|
+
});
|
|
53
|
+
const thread = Thread_exports.make({
|
|
54
|
+
name: "Proposal",
|
|
55
|
+
messages: [
|
|
56
|
+
Ref.make(proposal)
|
|
57
|
+
],
|
|
58
|
+
status: "active"
|
|
59
|
+
});
|
|
60
|
+
const relation = Relation.make(AnchoredTo.AnchoredTo, {
|
|
61
|
+
[Relation.Source]: thread,
|
|
62
|
+
[Relation.Target]: object,
|
|
63
|
+
anchor: cursor
|
|
64
|
+
});
|
|
65
|
+
yield* DatabaseService.add(thread);
|
|
66
|
+
yield* DatabaseService.add(relation);
|
|
67
|
+
})), Effect.allWith({
|
|
68
|
+
concurrency: "unbounded"
|
|
69
|
+
}));
|
|
70
|
+
})
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
// src/capabilities/blueprint-definition.ts
|
|
74
|
+
var functions = [
|
|
75
|
+
create_proposals_default
|
|
76
|
+
];
|
|
77
|
+
var ASSISTANT_BLUEPRINT_KEY = "dxos.org/blueprint/thread";
|
|
78
|
+
var blueprint_definition_default = (() => [
|
|
79
|
+
contributes(Capabilities.Functions, functions),
|
|
80
|
+
contributes(Capabilities.BlueprintDefinition, Blueprint.make({
|
|
81
|
+
key: ASSISTANT_BLUEPRINT_KEY,
|
|
82
|
+
name: "Thread",
|
|
83
|
+
tools: Blueprint.toolDefinitions({
|
|
84
|
+
functions
|
|
85
|
+
}),
|
|
86
|
+
instructions: Template.make({
|
|
87
|
+
// TODO(wittjosiah): Move example to function input schema annotation.
|
|
88
|
+
source: trim`
|
|
89
|
+
You can update markdown documents via proposals.
|
|
90
|
+
For each diff, respond with the smallest possible matching span.
|
|
91
|
+
For example:
|
|
92
|
+
- "There is a tyop in this sentence."
|
|
93
|
+
+ "There is a typo in this sentence."
|
|
94
|
+
- "This id goof."
|
|
95
|
+
+ "This is good."
|
|
96
|
+
`
|
|
97
|
+
})
|
|
98
|
+
}))
|
|
99
|
+
]);
|
|
100
|
+
export {
|
|
101
|
+
ASSISTANT_BLUEPRINT_KEY,
|
|
102
|
+
blueprint_definition_default as default
|
|
103
|
+
};
|
|
104
|
+
//# sourceMappingURL=blueprint-definition-6BKYTMJS.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/blueprint-definition.ts", "../../../src/functions/create-proposals.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, type Capability, contributes } from '@dxos/app-framework';\nimport { Blueprint, Template } from '@dxos/blueprints';\nimport { type FunctionDefinition } from '@dxos/functions';\nimport { trim } from '@dxos/util';\n\nimport { createProposals } from '../functions';\n\nconst functions: FunctionDefinition[] = [createProposals];\n\nexport const ASSISTANT_BLUEPRINT_KEY = 'dxos.org/blueprint/thread';\n\nexport default (): Capability<any>[] => [\n contributes(Capabilities.Functions, functions),\n contributes(\n Capabilities.BlueprintDefinition,\n Blueprint.make({\n key: ASSISTANT_BLUEPRINT_KEY,\n name: 'Thread',\n tools: Blueprint.toolDefinitions({ functions }),\n instructions: Template.make({\n // TODO(wittjosiah): Move example to function input schema annotation.\n source: trim`\n You can update markdown documents via proposals.\n For each diff, respond with the smallest possible matching span.\n For example:\n - \"There is a tyop in this sentence.\"\n + \"There is a typo in this sentence.\"\n - \"This id goof.\"\n + \"This is good.\"\n `,\n }),\n }),\n ),\n];\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Array from 'effect/Array';\nimport * as Effect from 'effect/Effect';\nimport * as Function from 'effect/Function';\nimport * as Schema from 'effect/Schema';\n\nimport { ArtifactId, computeDiffsWithCursors } from '@dxos/assistant';\nimport { Obj, Ref, Relation } from '@dxos/echo';\nimport { createDocAccessor } from '@dxos/echo-db';\nimport { DatabaseService, defineFunction } from '@dxos/functions';\nimport { DXN } from '@dxos/keys';\nimport { Markdown } from '@dxos/plugin-markdown/types';\nimport { AnchoredTo, Message } from '@dxos/types';\n\nimport { Thread } from '../types';\n\nexport default defineFunction({\n key: 'dxos.org/function/thread/create-proposals',\n name: 'Create Proposals',\n description: 'Proposes a set of changes to a document.',\n inputSchema: Schema.Struct({\n id: ArtifactId,\n diffs: Schema.Array(Schema.String).annotations({\n description: 'The diffs to propose for the document.',\n }),\n }),\n outputSchema: Schema.Void,\n handler: Effect.fn(function* ({ data: { id, diffs: _diffs } }) {\n const object = yield* DatabaseService.resolve(DXN.parse(id), Markdown.Document);\n const content = yield* Effect.promise(() => object.content.load());\n const accessor = createDocAccessor(content, ['content']);\n\n yield* Function.pipe(\n computeDiffsWithCursors(accessor, _diffs),\n Array.map(\n Effect.fnUntraced(function* ({ cursor, text }) {\n const proposal = Obj.make(Message.Message, {\n created: new Date().toISOString(),\n sender: { role: 'assistant' },\n blocks: [{ _tag: 'proposal', text }],\n });\n const thread = Thread.make({ name: 'Proposal', messages: [Ref.make(proposal)], status: 'active' });\n const relation = Relation.make(AnchoredTo.AnchoredTo, {\n [Relation.Source]: thread,\n [Relation.Target]: object,\n anchor: cursor,\n });\n yield* DatabaseService.add(thread);\n yield* DatabaseService.add(relation);\n }),\n ),\n Effect.allWith({ concurrency: 'unbounded' }),\n );\n }),\n});\n"],
|
|
5
|
+
"mappings": ";;;;;;AAIA,SAASA,cAA+BC,mBAAmB;AAC3D,SAASC,WAAWC,gBAAgB;AAEpC,SAASC,YAAY;;;ACHrB,YAAYC,WAAW;AACvB,YAAYC,YAAY;AACxB,YAAYC,cAAc;AAC1B,YAAYC,YAAY;AAExB,SAASC,YAAYC,+BAA+B;AACpD,SAASC,KAAKC,KAAKC,gBAAgB;AACnC,SAASC,yBAAyB;AAClC,SAASC,iBAAiBC,sBAAsB;AAChD,SAASC,WAAW;AACpB,SAASC,gBAAgB;AACzB,SAASC,YAAYC,eAAe;AAIpC,IAAA,2BAAeC,eAAe;EAC5BC,KAAK;EACLC,MAAM;EACNC,aAAa;EACbC,aAAoBC,cAAO;IACzBC,IAAIC;IACJC,OAAcC,aAAaC,aAAM,EAAEC,YAAY;MAC7CR,aAAa;IACf,CAAA;EACF,CAAA;EACAS,cAAqBC;EACrBC,SAAgBC,UAAG,WAAW,EAAEC,MAAM,EAAEV,IAAIE,OAAOS,OAAM,EAAE,GAAE;AAC3D,UAAMC,SAAS,OAAOC,gBAAgBC,QAAQC,IAAIC,MAAMhB,EAAAA,GAAKiB,SAASC,QAAQ;AAC9E,UAAMC,UAAU,OAAcC,eAAQ,MAAMR,OAAOO,QAAQE,KAAI,CAAA;AAC/D,UAAMC,WAAWC,kBAAkBJ,SAAS;MAAC;KAAU;AAEvD,WAAgBK,cACdC,wBAAwBH,UAAUX,MAAAA,GAC5Be,UACGC,kBAAW,WAAW,EAAEC,QAAQC,KAAI,GAAE;AAC3C,YAAMC,WAAWC,IAAIC,KAAKC,QAAQA,SAAS;QACzCC,UAAS,oBAAIC,KAAAA,GAAOC,YAAW;QAC/BC,QAAQ;UAAEC,MAAM;QAAY;QAC5BC,QAAQ;UAAC;YAAEC,MAAM;YAAYX;UAAK;;MACpC,CAAA;AACA,YAAMY,SAASC,eAAOV,KAAK;QAAEpC,MAAM;QAAY+C,UAAU;UAACC,IAAIZ,KAAKF,QAAAA;;QAAYe,QAAQ;MAAS,CAAA;AAChG,YAAMC,WAAWC,SAASf,KAAKgB,WAAWA,YAAY;QACpD,CAACD,SAASE,MAAM,GAAGR;QACnB,CAACM,SAASG,MAAM,GAAGtC;QACnBuC,QAAQvB;MACV,CAAA;AACA,aAAOf,gBAAgBuC,IAAIX,MAAAA;AAC3B,aAAO5B,gBAAgBuC,IAAIN,QAAAA;IAC7B,CAAA,CAAA,GAEKO,eAAQ;MAAEC,aAAa;IAAY,CAAA,CAAA;EAE9C,CAAA;AACF,CAAA;;;AD9CA,IAAMC,YAAkC;EAACC;;AAElC,IAAMC,0BAA0B;AAEvC,IAAA,gCAAe,MAAyB;EACtCC,YAAYC,aAAaC,WAAWL,SAAAA;EACpCG,YACEC,aAAaE,qBACbC,UAAUC,KAAK;IACbC,KAAKP;IACLQ,MAAM;IACNC,OAAOJ,UAAUK,gBAAgB;MAAEZ;IAAU,CAAA;IAC7Ca,cAAcC,SAASN,KAAK;;MAE1BO,QAAQC;;;;;;;;;IASV,CAAA;EACF,CAAA,CAAA;;",
|
|
6
|
+
"names": ["Capabilities", "contributes", "Blueprint", "Template", "trim", "Array", "Effect", "Function", "Schema", "ArtifactId", "computeDiffsWithCursors", "Obj", "Ref", "Relation", "createDocAccessor", "DatabaseService", "defineFunction", "DXN", "Markdown", "AnchoredTo", "Message", "defineFunction", "key", "name", "description", "inputSchema", "Struct", "id", "ArtifactId", "diffs", "Array", "String", "annotations", "outputSchema", "Void", "handler", "fn", "data", "_diffs", "object", "DatabaseService", "resolve", "DXN", "parse", "Markdown", "Document", "content", "promise", "load", "accessor", "createDocAccessor", "pipe", "computeDiffsWithCursors", "map", "fnUntraced", "cursor", "text", "proposal", "Obj", "make", "Message", "created", "Date", "toISOString", "sender", "role", "blocks", "_tag", "thread", "Thread", "messages", "Ref", "status", "relation", "Relation", "AnchoredTo", "Source", "Target", "anchor", "add", "allWith", "concurrency", "functions", "createProposals", "ASSISTANT_BLUEPRINT_KEY", "contributes", "Capabilities", "Functions", "BlueprintDefinition", "Blueprint", "make", "key", "name", "tools", "toolDefinitions", "instructions", "Template", "source", "trim"]
|
|
7
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CallManager
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-ZCW3NSDZ.mjs";
|
|
4
4
|
import {
|
|
5
5
|
ThreadCapabilities
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-BBTXGRIR.mjs";
|
|
7
|
+
import "./chunk-ISCHODBV.mjs";
|
|
8
|
+
import "./chunk-K2DUJRFJ.mjs";
|
|
9
9
|
|
|
10
10
|
// src/capabilities/call-manager.ts
|
|
11
11
|
import { contributes } from "@dxos/app-framework";
|
|
@@ -21,4 +21,4 @@ var call_manager_default = (async (context) => {
|
|
|
21
21
|
export {
|
|
22
22
|
call_manager_default as default
|
|
23
23
|
};
|
|
24
|
-
//# sourceMappingURL=call-manager-
|
|
24
|
+
//# sourceMappingURL=call-manager-MAXQLMMS.mjs.map
|
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ThreadCapabilities
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BBTXGRIR.mjs";
|
|
4
4
|
import {
|
|
5
5
|
ChatContainer_default
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-FR6MEAZI.mjs";
|
|
7
7
|
import {
|
|
8
8
|
useDebugMode
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-KOBXMDCI.mjs";
|
|
10
10
|
import {
|
|
11
11
|
meta
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-K2DUJRFJ.mjs";
|
|
13
13
|
|
|
14
14
|
// src/components/ChannelContainer.tsx
|
|
15
15
|
import { useSignals as _useSignals10 } from "@preact-signals/safe-react/tracking";
|
|
16
|
-
import {
|
|
16
|
+
import { Atom } from "@effect-atom/atom-react";
|
|
17
17
|
import React10, { useCallback as useCallback2, useEffect as useEffect6, useMemo as useMemo4, useState as useState4 } from "react";
|
|
18
|
-
import { useCapabilities, useCapability as useCapability4 } from "@dxos/app-framework";
|
|
18
|
+
import { useCapabilities, useCapability as useCapability4 } from "@dxos/app-framework/react";
|
|
19
19
|
import { Context } from "@dxos/context";
|
|
20
20
|
import { failUndefined } from "@dxos/debug";
|
|
21
|
+
import { Obj as Obj2 } from "@dxos/echo";
|
|
21
22
|
import { log } from "@dxos/log";
|
|
22
23
|
import { useClient } from "@dxos/react-client";
|
|
23
|
-
import {
|
|
24
|
+
import { getSpace } from "@dxos/react-client/echo";
|
|
24
25
|
import { useIdentity } from "@dxos/react-client/halo";
|
|
25
26
|
import { ElevationProvider, Input, useTranslation as useTranslation3 } from "@dxos/react-ui";
|
|
26
27
|
import { ControlGroup, ControlGroupButton, ControlItemInput } from "@dxos/react-ui-form";
|
|
@@ -31,7 +32,7 @@ import { StackItem } from "@dxos/react-ui-stack";
|
|
|
31
32
|
// src/components/Call/Call.tsx
|
|
32
33
|
import { useSignals as _useSignals9 } from "@preact-signals/safe-react/tracking";
|
|
33
34
|
import React9 from "react";
|
|
34
|
-
import { useCapability as useCapability3 } from "@dxos/app-framework";
|
|
35
|
+
import { useCapability as useCapability3 } from "@dxos/app-framework/react";
|
|
35
36
|
|
|
36
37
|
// src/components/Media/AudioStream.tsx
|
|
37
38
|
import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
|
|
@@ -109,7 +110,7 @@ var VideoObject = /* @__PURE__ */ memo(/* @__PURE__ */ forwardRef(({ videoStream
|
|
|
109
110
|
internalRef.current
|
|
110
111
|
]);
|
|
111
112
|
return /* @__PURE__ */ React2.createElement("video", {
|
|
112
|
-
className: mx("
|
|
113
|
+
className: mx("is-full aspect-video", flip && "scale-x-[-1]", contain ? "object-contain" : "object-cover", classNames),
|
|
113
114
|
ref: (v) => {
|
|
114
115
|
internalRef.current = v;
|
|
115
116
|
if (ref === null) {
|
|
@@ -132,7 +133,7 @@ VideoObject.displayName = "VideoObject";
|
|
|
132
133
|
// src/components/Participant/Participant.tsx
|
|
133
134
|
import { useSignals as _useSignals6 } from "@preact-signals/safe-react/tracking";
|
|
134
135
|
import React6, { memo as memo2, useMemo as useMemo2 } from "react";
|
|
135
|
-
import { useCapability } from "@dxos/app-framework";
|
|
136
|
+
import { useCapability } from "@dxos/app-framework/react";
|
|
136
137
|
|
|
137
138
|
// src/components/ResponsiveGrid/ResponsiveContainer.tsx
|
|
138
139
|
import { useSignals as _useSignals3 } from "@preact-signals/safe-react/tracking";
|
|
@@ -145,13 +146,13 @@ var ResponsiveContainer = ({ children }) => {
|
|
|
145
146
|
// Outer container that takes full size of parent.
|
|
146
147
|
/* @__PURE__ */ React3.createElement("div", {
|
|
147
148
|
role: "none",
|
|
148
|
-
className: "relative flex
|
|
149
|
+
className: "relative flex is-full bs-full"
|
|
149
150
|
}, /* @__PURE__ */ React3.createElement("div", {
|
|
150
151
|
role: "none",
|
|
151
152
|
className: "absolute inset-0 flex justify-center items-center"
|
|
152
153
|
}, /* @__PURE__ */ React3.createElement("div", {
|
|
153
154
|
role: "none",
|
|
154
|
-
className: mx2("max-
|
|
155
|
+
className: mx2("max-bs-full max-is-full w-auto h-auto aspect-video")
|
|
155
156
|
}, children)))
|
|
156
157
|
);
|
|
157
158
|
} finally {
|
|
@@ -261,11 +262,11 @@ var ResponsiveGrid = ({ classNames, Cell, gap = DEFAULT_GAP, getId: getId2 = def
|
|
|
261
262
|
]);
|
|
262
263
|
return /* @__PURE__ */ React4.createElement("div", {
|
|
263
264
|
ref: containerRef,
|
|
264
|
-
className: mx3("relative
|
|
265
|
+
className: mx3("relative is-full bs-full", classNames)
|
|
265
266
|
}, /* @__PURE__ */ React4.createElement("div", {
|
|
266
267
|
className: "absolute inset-0 flex flex-col grow gap-2"
|
|
267
268
|
}, pinnedItem && /* @__PURE__ */ React4.createElement("div", {
|
|
268
|
-
className: mx3("flex grow-[2] shrink overflow-hidden justify-center items-center", hideGallery && "
|
|
269
|
+
className: mx3("flex grow-[2] shrink overflow-hidden justify-center items-center", hideGallery && "bs-full"),
|
|
269
270
|
style: hideGallery ? {} : {
|
|
270
271
|
height: dividerHeight
|
|
271
272
|
}
|
|
@@ -282,7 +283,7 @@ var ResponsiveGrid = ({ classNames, Cell, gap = DEFAULT_GAP, getId: getId2 = def
|
|
|
282
283
|
style: {
|
|
283
284
|
width: cellWidth
|
|
284
285
|
},
|
|
285
|
-
className: "flex
|
|
286
|
+
className: "flex bs-full"
|
|
286
287
|
}, /* @__PURE__ */ React4.createElement(SoloItem, {
|
|
287
288
|
id: getId2(mainItems[0]),
|
|
288
289
|
debug
|
|
@@ -296,7 +297,7 @@ var ResponsiveGrid = ({ classNames, Cell, gap = DEFAULT_GAP, getId: getId2 = def
|
|
|
296
297
|
}, mainItems.map((item) => /* @__PURE__ */ React4.createElement("div", {
|
|
297
298
|
key: getId2(item),
|
|
298
299
|
"data-grid-item": getId2(item),
|
|
299
|
-
className: mx3("aspect-video max-
|
|
300
|
+
className: mx3("aspect-video max-bs-full max-is-full w-auto h-auto", debug && "border border-primary-500")
|
|
300
301
|
}))))), /* @__PURE__ */ React4.createElement("div", {
|
|
301
302
|
className: mx3(debug && "opacity-10")
|
|
302
303
|
}, bounds.map(([item, bounds2]) => /* @__PURE__ */ React4.createElement(Cell, {
|
|
@@ -424,7 +425,7 @@ var ResponsiveGridItem = ({ children, classNames, item, style, name, self, pinne
|
|
|
424
425
|
speaking
|
|
425
426
|
]);
|
|
426
427
|
return /* @__PURE__ */ React5.createElement("div", {
|
|
427
|
-
className: mx4("relative
|
|
428
|
+
className: mx4("relative is-full bs-full group", "rounded-md outline outline-2 outline-neutral-900 transition-[outline-color] duration-500", speakingIndicator ? "outline-green-500" : !video && "outline-separator", classNames),
|
|
428
429
|
style
|
|
429
430
|
}, children, onClick && /* @__PURE__ */ React5.createElement("div", {
|
|
430
431
|
className: "z-10 absolute top-1 right-1 flex"
|
|
@@ -441,7 +442,7 @@ var ResponsiveGridItem = ({ children, classNames, item, style, name, self, pinne
|
|
|
441
442
|
icon: "ph--broadcast--regular",
|
|
442
443
|
size: pinned ? 5 : 4
|
|
443
444
|
}), /* @__PURE__ */ React5.createElement("div", {
|
|
444
|
-
className: mx4("bg-neutral-800 text-neutral-100
|
|
445
|
+
className: mx4("bg-neutral-800 text-neutral-100 plb-0.5 truncate rounded", pinned ? "pli-2" : "pli-1 text-xs")
|
|
445
446
|
}, name)), /* @__PURE__ */ React5.createElement("div", {
|
|
446
447
|
className: "z-10 absolute bottom-1 left-1 flex"
|
|
447
448
|
}, speaking && /* @__PURE__ */ React5.createElement(Waveform, {
|
|
@@ -585,9 +586,9 @@ var ParticipantGrid = ({ classNames, self, users, fullscreen, debug }) => {
|
|
|
585
586
|
// src/components/Call/Toolbar.tsx
|
|
586
587
|
import { useSignals as _useSignals8 } from "@preact-signals/safe-react/tracking";
|
|
587
588
|
import React8 from "react";
|
|
588
|
-
import { useAppGraph, useCapability as useCapability2 } from "@dxos/app-framework";
|
|
589
|
+
import { useAppGraph, useCapability as useCapability2 } from "@dxos/app-framework/react";
|
|
590
|
+
import { Obj } from "@dxos/echo";
|
|
589
591
|
import { useActions, useNode } from "@dxos/plugin-graph";
|
|
590
|
-
import { fullyQualifiedId } from "@dxos/react-client/echo";
|
|
591
592
|
import { Icon as Icon2, IconButton as IconButton2, Toolbar as NaturalToolbar, toLocalizedString, useTranslation as useTranslation2 } from "@dxos/react-ui";
|
|
592
593
|
import { groupHoverControlItemWithTransition as groupHoverControlItemWithTransition2, mx as mx5 } from "@dxos/react-ui-theme";
|
|
593
594
|
var Toolbar = ({ classNames, channel, participants, autoHideControls = true, onJoin, onLeave }) => {
|
|
@@ -596,7 +597,7 @@ var Toolbar = ({ classNames, channel, participants, autoHideControls = true, onJ
|
|
|
596
597
|
const { t } = useTranslation2(meta.id);
|
|
597
598
|
const { graph } = useAppGraph();
|
|
598
599
|
const call = useCapability2(ThreadCapabilities.CallManager);
|
|
599
|
-
const node = useNode(graph, channel &&
|
|
600
|
+
const node = useNode(graph, channel && Obj.getDXN(channel).toString());
|
|
600
601
|
const actions = useActions(graph, node?.id).filter((action) => action.properties.disposition === "toolbar");
|
|
601
602
|
const isScreensharing = call.media.screenshareTrack !== void 0;
|
|
602
603
|
const canSharescreen = typeof navigator.mediaDevices !== "undefined" && navigator.mediaDevices.getDisplayMedia !== void 0;
|
|
@@ -794,7 +795,8 @@ var ChannelContainer = ({ channel, roomId: _roomId, role, fullscreen }) => {
|
|
|
794
795
|
try {
|
|
795
796
|
const space = getSpace(channel);
|
|
796
797
|
const callManager = useCapability4(ThreadCapabilities.CallManager);
|
|
797
|
-
const
|
|
798
|
+
const attendableId = channel ? Obj2.getDXN(channel).toString() : void 0;
|
|
799
|
+
const roomId = _roomId ?? attendableId ?? failUndefined();
|
|
798
800
|
const identity = useIdentity();
|
|
799
801
|
const isNamed = !!identity?.profile?.displayName;
|
|
800
802
|
const joinSound = useSoundEffect("JoinCall");
|
|
@@ -803,7 +805,7 @@ var ChannelContainer = ({ channel, roomId: _roomId, role, fullscreen }) => {
|
|
|
803
805
|
useEffect6(() => {
|
|
804
806
|
const ctx = new Context(void 0, {
|
|
805
807
|
F: __dxlog_file2,
|
|
806
|
-
L:
|
|
808
|
+
L: 53
|
|
807
809
|
});
|
|
808
810
|
callManager.left.on(ctx, (roomId2) => {
|
|
809
811
|
extensions.forEach((extension) => {
|
|
@@ -845,7 +847,7 @@ var ChannelContainer = ({ channel, roomId: _roomId, role, fullscreen }) => {
|
|
|
845
847
|
} catch (err) {
|
|
846
848
|
log.catch(err, void 0, {
|
|
847
849
|
F: __dxlog_file2,
|
|
848
|
-
L:
|
|
850
|
+
L: 97,
|
|
849
851
|
S: void 0,
|
|
850
852
|
C: (f, a) => f(...a)
|
|
851
853
|
});
|
|
@@ -861,7 +863,7 @@ var ChannelContainer = ({ channel, roomId: _roomId, role, fullscreen }) => {
|
|
|
861
863
|
} catch (err) {
|
|
862
864
|
log.catch(err, void 0, {
|
|
863
865
|
F: __dxlog_file2,
|
|
864
|
-
L:
|
|
866
|
+
L: 109,
|
|
865
867
|
S: void 0,
|
|
866
868
|
C: (f, a) => f(...a)
|
|
867
869
|
});
|
|
@@ -885,12 +887,13 @@ var ChannelContainer = ({ channel, roomId: _roomId, role, fullscreen }) => {
|
|
|
885
887
|
channel,
|
|
886
888
|
onLeave: handleLeave
|
|
887
889
|
})), !isJoined && channel && channel.defaultThread.target && space && /* @__PURE__ */ React10.createElement(React10.Fragment, null, /* @__PURE__ */ React10.createElement(ChannelToolbar, {
|
|
888
|
-
attendableId
|
|
890
|
+
attendableId,
|
|
889
891
|
role,
|
|
890
892
|
onJoinCall: handleJoin
|
|
891
893
|
}), /* @__PURE__ */ React10.createElement(ChatContainer_default, {
|
|
892
894
|
space,
|
|
893
|
-
thread: channel.defaultThread.target
|
|
895
|
+
thread: channel.defaultThread.target,
|
|
896
|
+
classNames: "container-max-width"
|
|
894
897
|
})));
|
|
895
898
|
} finally {
|
|
896
899
|
_effect.f();
|
|
@@ -929,7 +932,7 @@ var DisplayNameMissing = () => {
|
|
|
929
932
|
}
|
|
930
933
|
};
|
|
931
934
|
var useChannelToolbarActions = (onJoinCall) => {
|
|
932
|
-
const creator = useMemo4(() =>
|
|
935
|
+
const creator = useMemo4(() => Atom.make(() => {
|
|
933
936
|
return {
|
|
934
937
|
nodes: [
|
|
935
938
|
createMenuItemGroup("root", {
|
|
@@ -961,7 +964,7 @@ var useChannelToolbarActions = (onJoinCall) => {
|
|
|
961
964
|
}), []);
|
|
962
965
|
return useMenuActions(creator);
|
|
963
966
|
};
|
|
964
|
-
var ChannelToolbar = ({ attendableId, role, onJoinCall
|
|
967
|
+
var ChannelToolbar = ({ attendableId, role, onJoinCall }) => {
|
|
965
968
|
var _effect = _useSignals10();
|
|
966
969
|
try {
|
|
967
970
|
const menuProps = useChannelToolbarActions(onJoinCall);
|
|
@@ -971,7 +974,7 @@ var ChannelToolbar = ({ attendableId, role, onJoinCall, classNames }) => {
|
|
|
971
974
|
...menuProps,
|
|
972
975
|
attendableId
|
|
973
976
|
}, /* @__PURE__ */ React10.createElement(ToolbarMenu, {
|
|
974
|
-
|
|
977
|
+
textBlockWidth: true
|
|
975
978
|
})));
|
|
976
979
|
} finally {
|
|
977
980
|
_effect.f();
|
|
@@ -983,4 +986,4 @@ export {
|
|
|
983
986
|
ChannelContainer,
|
|
984
987
|
ChannelContainer_default
|
|
985
988
|
};
|
|
986
|
-
//# sourceMappingURL=chunk-
|
|
989
|
+
//# sourceMappingURL=chunk-44S2SB4N.mjs.map
|