@dxos/plugin-thread 0.8.3-staging.0fa589b → 0.8.4-main.28f8d3d
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-O2SFQJU7.mjs +16 -0
- package/dist/lib/browser/ChatContainer-PVT3DUZJ.mjs +15 -0
- package/dist/lib/browser/{app-graph-builder-OY7R7EJP.mjs → app-graph-builder-AF3M7UWN.mjs} +8 -8
- package/dist/lib/browser/app-graph-builder-AF3M7UWN.mjs.map +7 -0
- package/dist/lib/browser/{call-manager-APQAZWHT.mjs → call-manager-XRRCAVLI.mjs} +6 -5
- package/dist/lib/browser/call-manager-XRRCAVLI.mjs.map +7 -0
- package/dist/lib/browser/chunk-2CWJBXBH.mjs +21 -0
- package/dist/lib/browser/{chunk-R5MDLUPC.mjs → chunk-4APCDRSH.mjs} +3 -3
- package/dist/lib/browser/{chunk-R5MDLUPC.mjs.map → chunk-4APCDRSH.mjs.map} +1 -1
- package/dist/lib/browser/{chunk-AEXWNS6Z.mjs → chunk-DW7JD64V.mjs} +14 -5
- package/dist/lib/browser/chunk-DW7JD64V.mjs.map +7 -0
- package/dist/lib/browser/{chunk-IIUTBDVB.mjs → chunk-EV4JWI7L.mjs} +2 -2
- package/dist/lib/browser/chunk-FY4ZRD5X.mjs +367 -0
- package/dist/lib/browser/chunk-FY4ZRD5X.mjs.map +7 -0
- package/dist/lib/browser/{chunk-JKQUJOTX.mjs → chunk-GERVMFQW.mjs} +2 -2
- package/dist/lib/browser/chunk-J3JO5NWO.mjs +477 -0
- package/dist/lib/browser/chunk-J3JO5NWO.mjs.map +7 -0
- package/dist/lib/browser/chunk-JGKMMI65.mjs +56 -0
- package/dist/lib/browser/chunk-JGKMMI65.mjs.map +7 -0
- package/dist/lib/browser/{chunk-4H4A264L.mjs → chunk-TUFWPOVS.mjs} +148 -158
- package/dist/lib/browser/chunk-TUFWPOVS.mjs.map +7 -0
- package/dist/lib/browser/{chunk-5P5BH5GE.mjs → chunk-X5PIP5YR.mjs} +67 -6
- package/dist/lib/browser/chunk-X5PIP5YR.mjs.map +7 -0
- package/dist/lib/browser/{chunk-XZKBN3NS.mjs → chunk-ZJ7QBXK6.mjs} +246 -245
- package/dist/lib/browser/chunk-ZJ7QBXK6.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +36 -42
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-FK2MDVDT.mjs → intent-resolver-DCY4P4OX.mjs} +31 -15
- package/dist/lib/browser/intent-resolver-DCY4P4OX.mjs.map +7 -0
- package/dist/lib/browser/{markdown-TE5SWWNJ.mjs → markdown-WZSXCEZJ.mjs} +8 -8
- package/dist/lib/browser/markdown-WZSXCEZJ.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/react-root-QXPALOUQ.mjs +28 -0
- package/dist/lib/browser/{react-surface-VXUJKSOG.mjs → react-surface-PYAMIADB.mjs} +12 -11
- package/dist/lib/browser/react-surface-PYAMIADB.mjs.map +7 -0
- package/dist/lib/browser/{settings-RB2RSLXV.mjs → settings-AC6YSASL.mjs} +4 -4
- package/dist/lib/browser/{state-RKL5MSDP.mjs → state-2T4KDWBX.mjs} +4 -4
- package/dist/lib/browser/{state-RKL5MSDP.mjs.map → state-2T4KDWBX.mjs.map} +2 -2
- package/dist/lib/browser/types/index.mjs +2 -2
- package/dist/lib/node-esm/ChannelContainer-B2ZGAE4P.mjs +17 -0
- package/dist/lib/node-esm/{ChatContainer-F6CSADV7.mjs → ChatContainer-2CT4PJ7I.mjs} +6 -5
- package/dist/lib/node-esm/{app-graph-builder-BAHBHYWI.mjs → app-graph-builder-OLSJVCWY.mjs} +8 -8
- package/dist/lib/node-esm/app-graph-builder-OLSJVCWY.mjs.map +7 -0
- package/dist/lib/node-esm/{call-manager-UUYXLF4T.mjs → call-manager-EI7FXRAU.mjs} +6 -5
- package/dist/lib/node-esm/call-manager-EI7FXRAU.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-WXNPD542.mjs → chunk-4TME3BR4.mjs} +147 -158
- package/dist/lib/node-esm/chunk-4TME3BR4.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-PGRP3O4O.mjs → chunk-57XR3LEF.mjs} +2 -2
- package/dist/lib/node-esm/chunk-6CRHHOST.mjs +23 -0
- package/dist/lib/node-esm/chunk-BF4UKS55.mjs +368 -0
- package/dist/lib/node-esm/chunk-BF4UKS55.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-ESQC6SYE.mjs → chunk-GRLRWTRU.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-K4KAUOKT.mjs → chunk-PYTVBN5J.mjs} +3 -3
- package/dist/lib/node-esm/{chunk-K4KAUOKT.mjs.map → chunk-PYTVBN5J.mjs.map} +1 -1
- package/dist/lib/node-esm/chunk-QBHKLWGR.mjs +58 -0
- package/dist/lib/node-esm/chunk-QBHKLWGR.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-O3V45YJP.mjs → chunk-SED3O2XO.mjs} +66 -6
- package/dist/lib/node-esm/chunk-SED3O2XO.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-VNG6M2IY.mjs +478 -0
- package/dist/lib/node-esm/chunk-VNG6M2IY.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-UJMPYKT3.mjs → chunk-XVKWHTH4.mjs} +14 -5
- package/dist/lib/node-esm/chunk-XVKWHTH4.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-2RNIPFDA.mjs → chunk-YIDU3DXK.mjs} +246 -245
- package/dist/lib/node-esm/chunk-YIDU3DXK.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +36 -42
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-BU73VYW3.mjs → intent-resolver-QGTPU6QB.mjs} +31 -15
- package/dist/lib/node-esm/intent-resolver-QGTPU6QB.mjs.map +7 -0
- package/dist/lib/node-esm/{markdown-HJUWNBLS.mjs → markdown-3MZXUGUA.mjs} +8 -8
- package/dist/lib/node-esm/markdown-3MZXUGUA.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-root-RUXOAQNW.mjs → react-root-7ZFJYVUZ.mjs} +12 -11
- package/dist/lib/{browser/react-root-NK3A4VG7.mjs.map → node-esm/react-root-7ZFJYVUZ.mjs.map} +1 -1
- package/dist/lib/node-esm/{react-surface-ELXFYKP6.mjs → react-surface-UJFCSFNO.mjs} +12 -11
- package/dist/lib/node-esm/react-surface-UJFCSFNO.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-EA7DFSM6.mjs → settings-N52O7MLS.mjs} +4 -4
- package/dist/lib/node-esm/{state-6AUTNROZ.mjs → state-62TQKQVB.mjs} +4 -4
- package/dist/lib/node-esm/{state-6AUTNROZ.mjs.map → state-62TQKQVB.mjs.map} +2 -2
- package/dist/lib/node-esm/types/index.mjs +2 -2
- package/dist/types/src/ThreadPlugin.d.ts.map +1 -1
- package/dist/types/src/calls/call-manager.d.ts +1 -1
- package/dist/types/src/calls/call-manager.d.ts.map +1 -1
- package/dist/types/src/calls/call-swarm-synchronizer.d.ts.map +1 -1
- package/dist/types/src/calls/media-manager.d.ts.map +1 -1
- package/dist/types/src/calls/types.d.ts +1 -1
- package/dist/types/src/calls/types.d.ts.map +1 -1
- package/dist/types/src/calls/util/calls-service.d.ts +5 -2
- package/dist/types/src/calls/util/calls-service.d.ts.map +1 -1
- package/dist/types/src/calls/util/stub-media-streams.d.ts.map +1 -1
- package/dist/types/src/calls-service.stories.d.ts +22 -0
- package/dist/types/src/calls-service.stories.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/call-manager.d.ts.map +1 -1
- 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 +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/capabilities/state.d.ts.map +1 -1
- package/dist/types/src/components/Call/Call.d.ts.map +1 -1
- package/dist/types/src/components/Call/Toolbar.d.ts.map +1 -1
- package/dist/types/src/components/CallDebugPanel.d.ts.map +1 -1
- package/dist/types/src/components/CallSidebar.d.ts.map +1 -1
- package/dist/types/src/components/ChannelContainer.d.ts.map +1 -1
- package/dist/types/src/components/ChannelContainer.stories.d.ts +2 -2
- package/dist/types/src/components/ChannelContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/Chat.stories.d.ts +3 -2
- package/dist/types/src/components/Chat.stories.d.ts.map +1 -1
- package/dist/types/src/components/ChatContainer.d.ts +2 -2
- package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
- package/dist/types/src/components/Comments.stories.d.ts +1 -1
- package/dist/types/src/components/Comments.stories.d.ts.map +1 -1
- package/dist/types/src/components/CommentsContainer.d.ts +4 -4
- package/dist/types/src/components/CommentsContainer.d.ts.map +1 -1
- package/dist/types/src/components/CommentsThreadContainer.d.ts +14 -0
- package/dist/types/src/components/CommentsThreadContainer.d.ts.map +1 -0
- package/dist/types/src/components/Lobby/Lobby.d.ts.map +1 -1
- package/dist/types/src/components/Media/VideoObject.d.ts +1 -1
- package/dist/types/src/components/Media/VideoObject.stories.d.ts +1 -1
- package/dist/types/src/components/Media/VideoObject.stories.d.ts.map +1 -1
- package/dist/types/src/components/MessageContainer.d.ts.map +1 -1
- package/dist/types/src/components/Participant/ParticipantGrid.d.ts.map +1 -1
- package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.stories.d.ts +1 -1
- package/dist/types/src/components/ResponsiveGrid/ResponsiveContainer.stories.d.ts.map +1 -1
- package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts +1 -1
- package/dist/types/src/components/ResponsiveGrid/ResponsiveGrid.stories.d.ts.map +1 -1
- package/dist/types/src/components/ResponsiveGrid/ResponsiveGridItem.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/extensions/threads.d.ts +2 -2
- package/dist/types/src/extensions/threads.d.ts.map +1 -1
- package/dist/types/src/hooks/index.d.ts +2 -0
- package/dist/types/src/hooks/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useInaudibleAudioStreamTrack.d.ts +2 -0
- package/dist/types/src/hooks/useInaudibleAudioStreamTrack.d.ts.map +1 -0
- package/dist/types/src/hooks/useVideoStreamTrack.d.ts +3 -0
- package/dist/types/src/hooks/useVideoStreamTrack.d.ts.map +1 -0
- package/dist/types/src/testing/stories.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +74 -194
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/schema.d.ts +53 -22
- package/dist/types/src/types/schema.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +72 -24
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +17 -2
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +49 -48
- package/src/ThreadPlugin.tsx +9 -24
- package/src/calls/call-manager.ts +7 -3
- package/src/calls/call-swarm-synchronizer.ts +1 -1
- package/src/calls/media-manager.ts +13 -6
- package/src/calls/types.ts +1 -1
- package/src/calls/util/calls-service.ts +12 -8
- package/src/calls/util/stub-media-streams.ts +5 -8
- package/src/calls-service.stories.tsx +216 -0
- package/src/capabilities/app-graph-builder.ts +6 -5
- package/src/capabilities/call-manager.ts +3 -2
- package/src/capabilities/capabilities.ts +2 -2
- package/src/capabilities/intent-resolver.ts +26 -7
- package/src/capabilities/markdown.ts +4 -3
- package/src/capabilities/react-surface.tsx +5 -4
- package/src/capabilities/state.ts +2 -1
- package/src/components/Call/Call.tsx +4 -3
- package/src/components/Call/Toolbar.tsx +5 -5
- package/src/components/CallDebugPanel.tsx +3 -3
- package/src/components/CallSidebar.tsx +2 -1
- package/src/components/ChannelContainer.stories.tsx +8 -7
- package/src/components/ChannelContainer.tsx +13 -11
- package/src/components/Chat.stories.tsx +7 -6
- package/src/components/ChatContainer.tsx +16 -14
- package/src/components/Comments.stories.tsx +24 -16
- package/src/components/CommentsContainer.tsx +17 -11
- package/src/components/{CommentContainer.tsx → CommentsThreadContainer.tsx} +51 -81
- package/src/components/Lobby/Lobby.tsx +1 -1
- package/src/components/Media/VideoObject.stories.tsx +4 -3
- package/src/components/MessageContainer.tsx +31 -46
- package/src/components/Participant/ParticipantGrid.tsx +2 -1
- package/src/components/ResponsiveGrid/ResponsiveContainer.stories.tsx +5 -4
- package/src/components/ResponsiveGrid/ResponsiveGrid.stories.tsx +5 -4
- package/src/components/ResponsiveGrid/ResponsiveGrid.tsx +1 -1
- package/src/components/ResponsiveGrid/ResponsiveGridItem.tsx +4 -4
- package/src/components/ThreadComplementary.tsx +3 -3
- package/src/components/ThreadSettings.tsx +2 -2
- package/src/components/command-extension.ts +1 -1
- package/src/components/index.ts +1 -1
- package/src/components/testing.ts +2 -2
- package/src/extensions/threads.ts +6 -6
- package/src/hooks/index.ts +2 -0
- package/src/hooks/useDebugMode.ts +1 -1
- package/src/hooks/useInaudibleAudioStreamTrack.tsx +27 -0
- package/src/hooks/useVideoStreamTrack.tsx +33 -0
- package/src/testing/stories.ts +7 -3
- package/src/translations.ts +11 -8
- package/src/types/types.ts +11 -2
- package/src/typings.d.ts +8 -0
- package/dist/lib/browser/ChannelContainer-PKFBVENP.mjs +0 -15
- package/dist/lib/browser/ChatContainer-RSOKYAMK.mjs +0 -14
- package/dist/lib/browser/app-graph-builder-OY7R7EJP.mjs.map +0 -7
- package/dist/lib/browser/call-manager-APQAZWHT.mjs.map +0 -7
- package/dist/lib/browser/chunk-4H4A264L.mjs.map +0 -7
- package/dist/lib/browser/chunk-5P5BH5GE.mjs.map +0 -7
- package/dist/lib/browser/chunk-6NBVNXTM.mjs +0 -21
- package/dist/lib/browser/chunk-AEXWNS6Z.mjs.map +0 -7
- package/dist/lib/browser/chunk-PG5CTFKK.mjs +0 -550
- package/dist/lib/browser/chunk-PG5CTFKK.mjs.map +0 -7
- package/dist/lib/browser/chunk-TAFSCSUR.mjs +0 -351
- package/dist/lib/browser/chunk-TAFSCSUR.mjs.map +0 -7
- package/dist/lib/browser/chunk-XZKBN3NS.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-FK2MDVDT.mjs.map +0 -7
- package/dist/lib/browser/markdown-TE5SWWNJ.mjs.map +0 -7
- package/dist/lib/browser/react-root-NK3A4VG7.mjs +0 -27
- package/dist/lib/browser/react-surface-VXUJKSOG.mjs.map +0 -7
- package/dist/lib/node/ChannelContainer-YS5YT2ML.cjs +0 -36
- package/dist/lib/node/ChannelContainer-YS5YT2ML.cjs.map +0 -7
- package/dist/lib/node/ChatContainer-GCOM3M56.cjs +0 -35
- package/dist/lib/node/ChatContainer-GCOM3M56.cjs.map +0 -7
- package/dist/lib/node/app-graph-builder-PBHJNDQY.cjs +0 -179
- package/dist/lib/node/app-graph-builder-PBHJNDQY.cjs.map +0 -7
- package/dist/lib/node/call-manager-HV2XJW5O.cjs +0 -37
- package/dist/lib/node/call-manager-HV2XJW5O.cjs.map +0 -7
- package/dist/lib/node/chunk-44I33JDT.cjs +0 -1731
- package/dist/lib/node/chunk-44I33JDT.cjs.map +0 -7
- package/dist/lib/node/chunk-4YSNVPWU.cjs +0 -37
- package/dist/lib/node/chunk-4YSNVPWU.cjs.map +0 -7
- package/dist/lib/node/chunk-E3WBZTTI.cjs +0 -371
- package/dist/lib/node/chunk-E3WBZTTI.cjs.map +0 -7
- package/dist/lib/node/chunk-ERG7G6FF.cjs +0 -59
- package/dist/lib/node/chunk-ERG7G6FF.cjs.map +0 -7
- package/dist/lib/node/chunk-FUXJAVFZ.cjs +0 -108
- package/dist/lib/node/chunk-FUXJAVFZ.cjs.map +0 -7
- package/dist/lib/node/chunk-HLMCEE5K.cjs +0 -41
- package/dist/lib/node/chunk-HLMCEE5K.cjs.map +0 -7
- package/dist/lib/node/chunk-IP533AMV.cjs +0 -554
- package/dist/lib/node/chunk-IP533AMV.cjs.map +0 -7
- package/dist/lib/node/chunk-LR5NENBE.cjs +0 -54
- package/dist/lib/node/chunk-LR5NENBE.cjs.map +0 -7
- package/dist/lib/node/chunk-UM36TPCT.cjs +0 -984
- package/dist/lib/node/chunk-UM36TPCT.cjs.map +0 -7
- package/dist/lib/node/chunk-ZGDN3XBR.cjs +0 -149
- package/dist/lib/node/chunk-ZGDN3XBR.cjs.map +0 -7
- package/dist/lib/node/index.cjs +0 -310
- package/dist/lib/node/index.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-SYSJ5SJG.cjs +0 -363
- package/dist/lib/node/intent-resolver-SYSJ5SJG.cjs.map +0 -7
- package/dist/lib/node/markdown-GQIPJS2F.cjs +0 -178
- package/dist/lib/node/markdown-GQIPJS2F.cjs.map +0 -7
- package/dist/lib/node/meta.json +0 -1
- package/dist/lib/node/react-root-6HHDMULJ.cjs +0 -51
- package/dist/lib/node/react-root-6HHDMULJ.cjs.map +0 -7
- package/dist/lib/node/react-surface-NBH42NN2.cjs +0 -122
- package/dist/lib/node/react-surface-NBH42NN2.cjs.map +0 -7
- package/dist/lib/node/settings-4LQSFEDK.cjs +0 -36
- package/dist/lib/node/settings-4LQSFEDK.cjs.map +0 -7
- package/dist/lib/node/state-IY5XX3H2.cjs +0 -50
- package/dist/lib/node/state-IY5XX3H2.cjs.map +0 -7
- package/dist/lib/node/types/index.cjs +0 -38
- package/dist/lib/node/types/index.cjs.map +0 -7
- package/dist/lib/node-esm/ChannelContainer-O4QJII2P.mjs +0 -16
- package/dist/lib/node-esm/app-graph-builder-BAHBHYWI.mjs.map +0 -7
- package/dist/lib/node-esm/call-manager-UUYXLF4T.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-2RNIPFDA.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-O3V45YJP.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-O63QJPQX.mjs +0 -23
- package/dist/lib/node-esm/chunk-P6RLFCNT.mjs +0 -352
- package/dist/lib/node-esm/chunk-P6RLFCNT.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-UJMPYKT3.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-UZWVVFT3.mjs +0 -551
- package/dist/lib/node-esm/chunk-UZWVVFT3.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-WXNPD542.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-BU73VYW3.mjs.map +0 -7
- package/dist/lib/node-esm/markdown-HJUWNBLS.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-ELXFYKP6.mjs.map +0 -7
- package/dist/types/src/components/CommentContainer.d.ts +0 -13
- package/dist/types/src/components/CommentContainer.d.ts.map +0 -1
- package/dist/types/src/peers.stories.d.ts +0 -11
- package/dist/types/src/peers.stories.d.ts.map +0 -1
- package/src/peers.stories.tsx +0 -189
- /package/dist/lib/browser/{ChannelContainer-PKFBVENP.mjs.map → ChannelContainer-O2SFQJU7.mjs.map} +0 -0
- /package/dist/lib/browser/{ChatContainer-RSOKYAMK.mjs.map → ChatContainer-PVT3DUZJ.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-6NBVNXTM.mjs.map → chunk-2CWJBXBH.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-IIUTBDVB.mjs.map → chunk-EV4JWI7L.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-JKQUJOTX.mjs.map → chunk-GERVMFQW.mjs.map} +0 -0
- /package/dist/lib/{node-esm/react-root-RUXOAQNW.mjs.map → browser/react-root-QXPALOUQ.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-RB2RSLXV.mjs.map → settings-AC6YSASL.mjs.map} +0 -0
- /package/dist/lib/node-esm/{ChannelContainer-O4QJII2P.mjs.map → ChannelContainer-B2ZGAE4P.mjs.map} +0 -0
- /package/dist/lib/node-esm/{ChatContainer-F6CSADV7.mjs.map → ChatContainer-2CT4PJ7I.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-PGRP3O4O.mjs.map → chunk-57XR3LEF.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-O63QJPQX.mjs.map → chunk-6CRHHOST.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-ESQC6SYE.mjs.map → chunk-GRLRWTRU.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-EA7DFSM6.mjs.map → settings-N52O7MLS.mjs.map} +0 -0
|
@@ -1,185 +1,44 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
ThreadCapabilities
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-PYTVBN5J.mjs";
|
|
5
5
|
import {
|
|
6
6
|
ChatContainer_default
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-VNG6M2IY.mjs";
|
|
8
8
|
import {
|
|
9
9
|
useDebugMode
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-SED3O2XO.mjs";
|
|
11
11
|
import {
|
|
12
|
-
|
|
13
|
-
} from "./chunk-
|
|
12
|
+
meta
|
|
13
|
+
} from "./chunk-GRLRWTRU.mjs";
|
|
14
14
|
|
|
15
|
-
//
|
|
15
|
+
// src/components/ChannelContainer.tsx
|
|
16
16
|
import { useSignals as _useSignals10 } from "@preact-signals/safe-react/tracking";
|
|
17
17
|
import { Rx } from "@effect-rx/rx-react";
|
|
18
18
|
import React10, { useCallback as useCallback2, useEffect as useEffect6, useMemo as useMemo4, useState as useState4 } from "react";
|
|
19
19
|
import { useCapabilities, useCapability as useCapability4 } from "@dxos/app-framework";
|
|
20
20
|
import { Context } from "@dxos/context";
|
|
21
|
+
import { failUndefined } from "@dxos/debug";
|
|
21
22
|
import { log } from "@dxos/log";
|
|
22
23
|
import { useClient } from "@dxos/react-client";
|
|
23
24
|
import { fullyQualifiedId as fullyQualifiedId2, getSpace } from "@dxos/react-client/echo";
|
|
24
25
|
import { useIdentity } from "@dxos/react-client/halo";
|
|
25
|
-
import { useTranslation as useTranslation3
|
|
26
|
-
import { ControlGroup,
|
|
27
|
-
import {
|
|
26
|
+
import { ElevationProvider, Input, useTranslation as useTranslation3 } from "@dxos/react-ui";
|
|
27
|
+
import { ControlGroup, ControlGroupButton, ControlItemInput } from "@dxos/react-ui-form";
|
|
28
|
+
import { MenuProvider, ToolbarMenu, createMenuAction, createMenuItemGroup, useMenuActions } from "@dxos/react-ui-menu";
|
|
28
29
|
import { useSoundEffect } from "@dxos/react-ui-sfx";
|
|
29
30
|
import { StackItem } from "@dxos/react-ui-stack";
|
|
30
31
|
|
|
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
35
|
import { useCapability as useCapability3 } from "@dxos/app-framework";
|
|
35
36
|
|
|
36
|
-
//
|
|
37
|
+
// src/components/Media/AudioStream.tsx
|
|
37
38
|
import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
|
|
38
|
-
import React from "react";
|
|
39
|
-
import { useAppGraph, useCapability } from "@dxos/app-framework";
|
|
40
|
-
import { useNode, useActions } from "@dxos/plugin-graph";
|
|
41
|
-
import { fullyQualifiedId } from "@dxos/react-client/echo";
|
|
42
|
-
import { Icon, IconButton, Toolbar as NativeToolbar, toLocalizedString, useTranslation } from "@dxos/react-ui";
|
|
43
|
-
import { groupHoverControlItemWithTransition, mx } from "@dxos/react-ui-theme";
|
|
44
|
-
var Toolbar = ({ classNames, channel, participants, autoHideControls = true, onJoin, onLeave }) => {
|
|
45
|
-
var _effect = _useSignals();
|
|
46
|
-
try {
|
|
47
|
-
const { t } = useTranslation(THREAD_PLUGIN);
|
|
48
|
-
const { graph } = useAppGraph();
|
|
49
|
-
const call = useCapability(ThreadCapabilities.CallManager);
|
|
50
|
-
const node = useNode(graph, channel && fullyQualifiedId(channel));
|
|
51
|
-
const actions = useActions(graph, node?.id).filter((action) => action.properties.disposition === "toolbar");
|
|
52
|
-
const isScreensharing = call.media.screenshareTrack !== void 0;
|
|
53
|
-
const canSharescreen = typeof navigator.mediaDevices !== "undefined" && navigator.mediaDevices.getDisplayMedia !== void 0;
|
|
54
|
-
return /* @__PURE__ */ React.createElement("div", {
|
|
55
|
-
className: mx("z-20 flex justify-center m-8", autoHideControls && groupHoverControlItemWithTransition)
|
|
56
|
-
}, /* @__PURE__ */ React.createElement(NativeToolbar.Root, {
|
|
57
|
-
classNames: [
|
|
58
|
-
"p-2 bg-modalSurface rounded-md shadow-md",
|
|
59
|
-
classNames
|
|
60
|
-
]
|
|
61
|
-
}, /* @__PURE__ */ React.createElement(ToggleButton, {
|
|
62
|
-
active: call.media.audioEnabled,
|
|
63
|
-
state: {
|
|
64
|
-
on: {
|
|
65
|
-
icon: "ph--microphone--regular",
|
|
66
|
-
label: t("mic off"),
|
|
67
|
-
onClick: () => call.turnAudioOff(),
|
|
68
|
-
classNames: "bg-callActive"
|
|
69
|
-
},
|
|
70
|
-
off: {
|
|
71
|
-
icon: "ph--microphone-slash--duotone",
|
|
72
|
-
label: t("mic on"),
|
|
73
|
-
onClick: () => call.turnAudioOn(),
|
|
74
|
-
classNames: [
|
|
75
|
-
call.joined && "bg-callAlert"
|
|
76
|
-
]
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}), /* @__PURE__ */ React.createElement(ToggleButton, {
|
|
80
|
-
active: call.media.videoEnabled,
|
|
81
|
-
state: {
|
|
82
|
-
on: {
|
|
83
|
-
icon: "ph--video-camera--regular",
|
|
84
|
-
label: t("camera off"),
|
|
85
|
-
onClick: () => call.turnVideoOff()
|
|
86
|
-
},
|
|
87
|
-
off: {
|
|
88
|
-
icon: "ph--video-camera-slash--duotone",
|
|
89
|
-
label: t("camera on"),
|
|
90
|
-
onClick: () => call.turnVideoOn()
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}), participants !== void 0 && /* @__PURE__ */ React.createElement("div", {
|
|
94
|
-
className: "flex justify-center items-center gap-2 is-[5rem] text-xs text-subdued"
|
|
95
|
-
}, /* @__PURE__ */ React.createElement(Icon, {
|
|
96
|
-
icon: "ph--users--regular",
|
|
97
|
-
size: 4
|
|
98
|
-
}), /* @__PURE__ */ React.createElement("div", null, participants)) || /* @__PURE__ */ React.createElement(NativeToolbar.Separator, {
|
|
99
|
-
variant: "gap"
|
|
100
|
-
}), call.joined && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(ToggleButton, {
|
|
101
|
-
disabled: !canSharescreen,
|
|
102
|
-
active: isScreensharing,
|
|
103
|
-
state: {
|
|
104
|
-
on: {
|
|
105
|
-
icon: "ph--monitor--regular",
|
|
106
|
-
label: t("screenshare off"),
|
|
107
|
-
onClick: () => call.turnScreenshareOff()
|
|
108
|
-
},
|
|
109
|
-
off: {
|
|
110
|
-
icon: "ph--monitor-arrow-up--duotone",
|
|
111
|
-
label: t("screenshare on"),
|
|
112
|
-
onClick: () => call.turnScreenshareOn()
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
}), actions.map((action) => /* @__PURE__ */ React.createElement(IconButton, {
|
|
116
|
-
key: action.id,
|
|
117
|
-
...defaultButtonProps,
|
|
118
|
-
icon: action.properties.icon,
|
|
119
|
-
label: toLocalizedString(action.properties.label, t),
|
|
120
|
-
classNames: action.properties.classNames,
|
|
121
|
-
onClick: () => action.data({
|
|
122
|
-
node
|
|
123
|
-
})
|
|
124
|
-
})), /* @__PURE__ */ React.createElement(ToggleButton, {
|
|
125
|
-
active: call.raisedHand,
|
|
126
|
-
state: {
|
|
127
|
-
on: {
|
|
128
|
-
icon: "ph--hand-waving--regular",
|
|
129
|
-
label: t("lower hand"),
|
|
130
|
-
onClick: () => call.setRaisedHand(false),
|
|
131
|
-
classNames: [
|
|
132
|
-
call.joined && "bg-callAlert"
|
|
133
|
-
]
|
|
134
|
-
},
|
|
135
|
-
off: {
|
|
136
|
-
icon: "ph--hand-palm--duotone",
|
|
137
|
-
label: t("raise hand"),
|
|
138
|
-
onClick: () => call.setRaisedHand(true)
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
})), call.joined ? /* @__PURE__ */ React.createElement(IconButton, {
|
|
142
|
-
variant: "destructive",
|
|
143
|
-
icon: "ph--phone-x--regular",
|
|
144
|
-
label: t("leave call"),
|
|
145
|
-
onClick: onLeave
|
|
146
|
-
}) : /* @__PURE__ */ React.createElement(IconButton, {
|
|
147
|
-
variant: "primary",
|
|
148
|
-
icon: "ph--phone-incoming--regular",
|
|
149
|
-
label: t("join call"),
|
|
150
|
-
onClick: onJoin
|
|
151
|
-
})));
|
|
152
|
-
} finally {
|
|
153
|
-
_effect.f();
|
|
154
|
-
}
|
|
155
|
-
};
|
|
156
|
-
Toolbar.displayName = "MeetingToolbar";
|
|
157
|
-
var defaultButtonProps = {
|
|
158
|
-
size: 5,
|
|
159
|
-
iconOnly: true
|
|
160
|
-
};
|
|
161
|
-
var ToggleButton = ({ active, state }) => {
|
|
162
|
-
var _effect = _useSignals();
|
|
163
|
-
try {
|
|
164
|
-
return /* @__PURE__ */ React.createElement(IconButton, {
|
|
165
|
-
...defaultButtonProps,
|
|
166
|
-
classNames: [
|
|
167
|
-
active ? state.on.classNames ?? "bg-callActive" : state.off.classNames
|
|
168
|
-
],
|
|
169
|
-
icon: active ? state.on.icon : state.off.icon,
|
|
170
|
-
label: active ? state.on.label : state.off.label,
|
|
171
|
-
onClick: active ? state.on.onClick : state.off.onClick
|
|
172
|
-
});
|
|
173
|
-
} finally {
|
|
174
|
-
_effect.f();
|
|
175
|
-
}
|
|
176
|
-
};
|
|
177
|
-
|
|
178
|
-
// packages/plugins/plugin-thread/src/components/Media/AudioStream.tsx
|
|
179
|
-
import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
|
|
180
|
-
import React2, { useEffect, useRef } from "react";
|
|
39
|
+
import React, { useEffect, useRef } from "react";
|
|
181
40
|
var AudioStream = ({ tracks }) => {
|
|
182
|
-
var _effect =
|
|
41
|
+
var _effect = _useSignals();
|
|
183
42
|
try {
|
|
184
43
|
const mediaStreamRef = useRef(new MediaStream());
|
|
185
44
|
const ref = useRef(null);
|
|
@@ -202,10 +61,10 @@ var AudioStream = ({ tracks }) => {
|
|
|
202
61
|
});
|
|
203
62
|
audio.srcObject = mediaStream;
|
|
204
63
|
};
|
|
205
|
-
return /* @__PURE__ */
|
|
64
|
+
return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("audio", {
|
|
206
65
|
ref,
|
|
207
66
|
autoPlay: true
|
|
208
|
-
}), tracks.map((track) => /* @__PURE__ */
|
|
67
|
+
}), tracks.map((track) => /* @__PURE__ */ React.createElement(AudioTrack, {
|
|
209
68
|
key: track.id,
|
|
210
69
|
track,
|
|
211
70
|
mediaStream: mediaStreamRef.current,
|
|
@@ -231,12 +90,12 @@ var AudioTrack = ({ track, mediaStream, resetSrcObject }) => {
|
|
|
231
90
|
return null;
|
|
232
91
|
};
|
|
233
92
|
|
|
234
|
-
//
|
|
235
|
-
import { useSignals as
|
|
236
|
-
import
|
|
237
|
-
import { mx
|
|
93
|
+
// src/components/Media/VideoObject.tsx
|
|
94
|
+
import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
|
|
95
|
+
import React2, { forwardRef, memo, useEffect as useEffect2, useRef as useRef2 } from "react";
|
|
96
|
+
import { mx } from "@dxos/react-ui-theme";
|
|
238
97
|
var VideoObject = /* @__PURE__ */ memo(/* @__PURE__ */ forwardRef(({ videoStream, classNames, flip, contain, ...rest }, ref) => {
|
|
239
|
-
var _effect =
|
|
98
|
+
var _effect = _useSignals2();
|
|
240
99
|
try {
|
|
241
100
|
const internalRef = useRef2(null);
|
|
242
101
|
useEffect2(() => {
|
|
@@ -250,8 +109,8 @@ var VideoObject = /* @__PURE__ */ memo(/* @__PURE__ */ forwardRef(({ videoStream
|
|
|
250
109
|
videoStream,
|
|
251
110
|
internalRef.current
|
|
252
111
|
]);
|
|
253
|
-
return /* @__PURE__ */
|
|
254
|
-
className:
|
|
112
|
+
return /* @__PURE__ */ React2.createElement("video", {
|
|
113
|
+
className: mx("w-full aspect-video", flip && "scale-x-[-1]", contain ? "object-contain" : "object-cover", classNames),
|
|
255
114
|
ref: (v) => {
|
|
256
115
|
internalRef.current = v;
|
|
257
116
|
if (ref === null) {
|
|
@@ -271,29 +130,29 @@ var VideoObject = /* @__PURE__ */ memo(/* @__PURE__ */ forwardRef(({ videoStream
|
|
|
271
130
|
}));
|
|
272
131
|
VideoObject.displayName = "VideoObject";
|
|
273
132
|
|
|
274
|
-
//
|
|
275
|
-
import { useSignals as
|
|
276
|
-
import
|
|
277
|
-
import { useCapability
|
|
133
|
+
// src/components/Participant/Participant.tsx
|
|
134
|
+
import { useSignals as _useSignals6 } from "@preact-signals/safe-react/tracking";
|
|
135
|
+
import React6, { memo as memo2, useMemo as useMemo2 } from "react";
|
|
136
|
+
import { useCapability } from "@dxos/app-framework";
|
|
278
137
|
|
|
279
|
-
//
|
|
280
|
-
import { useSignals as
|
|
281
|
-
import
|
|
282
|
-
import { mx as
|
|
138
|
+
// src/components/ResponsiveGrid/ResponsiveContainer.tsx
|
|
139
|
+
import { useSignals as _useSignals3 } from "@preact-signals/safe-react/tracking";
|
|
140
|
+
import React3 from "react";
|
|
141
|
+
import { mx as mx2 } from "@dxos/react-ui-theme";
|
|
283
142
|
var ResponsiveContainer = ({ children }) => {
|
|
284
|
-
var _effect =
|
|
143
|
+
var _effect = _useSignals3();
|
|
285
144
|
try {
|
|
286
145
|
return (
|
|
287
146
|
// Outer container that takes full size of parent.
|
|
288
|
-
/* @__PURE__ */
|
|
147
|
+
/* @__PURE__ */ React3.createElement("div", {
|
|
289
148
|
role: "none",
|
|
290
149
|
className: "relative flex w-full h-full"
|
|
291
|
-
}, /* @__PURE__ */
|
|
150
|
+
}, /* @__PURE__ */ React3.createElement("div", {
|
|
292
151
|
role: "none",
|
|
293
152
|
className: "absolute inset-0 flex justify-center items-center"
|
|
294
|
-
}, /* @__PURE__ */
|
|
153
|
+
}, /* @__PURE__ */ React3.createElement("div", {
|
|
295
154
|
role: "none",
|
|
296
|
-
className:
|
|
155
|
+
className: mx2("max-h-full max-w-full w-auto h-auto aspect-video")
|
|
297
156
|
}, children)))
|
|
298
157
|
);
|
|
299
158
|
} finally {
|
|
@@ -301,20 +160,20 @@ var ResponsiveContainer = ({ children }) => {
|
|
|
301
160
|
}
|
|
302
161
|
};
|
|
303
162
|
|
|
304
|
-
//
|
|
305
|
-
import { useSignals as
|
|
306
|
-
import
|
|
163
|
+
// src/components/ResponsiveGrid/ResponsiveGrid.tsx
|
|
164
|
+
import { useSignals as _useSignals4 } from "@preact-signals/safe-react/tracking";
|
|
165
|
+
import React4, { useCallback, useEffect as useEffect3, useLayoutEffect, useMemo, useState } from "react";
|
|
307
166
|
import { useResizeDetector } from "react-resize-detector";
|
|
308
167
|
import { invariant } from "@dxos/invariant";
|
|
309
|
-
import { mx as
|
|
310
|
-
var __dxlog_file = "/
|
|
168
|
+
import { mx as mx3 } from "@dxos/react-ui-theme";
|
|
169
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-thread/src/components/ResponsiveGrid/ResponsiveGrid.tsx";
|
|
311
170
|
var ASPECT_RATIO = 16 / 9;
|
|
312
171
|
var MIN_GALLERY_HEIGHT = 250;
|
|
313
172
|
var DEFAULT_GAP = 8;
|
|
314
173
|
var maxImageSize = "w-[2560px] h-[1440px]";
|
|
315
174
|
var defaultGetId = (item) => item.id;
|
|
316
175
|
var ResponsiveGrid = ({ classNames, Cell, gap = DEFAULT_GAP, getId: getId2 = defaultGetId, items, pinned, autoHideGallery = false, debug, onPinnedChange }) => {
|
|
317
|
-
var _effect =
|
|
176
|
+
var _effect = _useSignals4();
|
|
318
177
|
try {
|
|
319
178
|
const { width: containerWidth = 0, height: containerHeight = 0, ref: containerRef } = useResizeDetector({
|
|
320
179
|
refreshRate: 100
|
|
@@ -401,47 +260,47 @@ var ResponsiveGrid = ({ classNames, Cell, gap = DEFAULT_GAP, getId: getId2 = def
|
|
|
401
260
|
pinned,
|
|
402
261
|
onPinnedChange
|
|
403
262
|
]);
|
|
404
|
-
return /* @__PURE__ */
|
|
263
|
+
return /* @__PURE__ */ React4.createElement("div", {
|
|
405
264
|
ref: containerRef,
|
|
406
|
-
className:
|
|
407
|
-
}, /* @__PURE__ */
|
|
265
|
+
className: mx3("relative w-full h-full", classNames)
|
|
266
|
+
}, /* @__PURE__ */ React4.createElement("div", {
|
|
408
267
|
className: "absolute inset-0 flex flex-col grow gap-2"
|
|
409
|
-
}, pinnedItem && /* @__PURE__ */
|
|
410
|
-
className:
|
|
268
|
+
}, pinnedItem && /* @__PURE__ */ React4.createElement("div", {
|
|
269
|
+
className: mx3("flex grow-[2] shrink overflow-hidden justify-center items-center", hideGallery && "h-full"),
|
|
411
270
|
style: hideGallery ? {} : {
|
|
412
271
|
height: dividerHeight
|
|
413
272
|
}
|
|
414
|
-
}, /* @__PURE__ */
|
|
273
|
+
}, /* @__PURE__ */ React4.createElement(SoloItem, {
|
|
415
274
|
id: getId2(pinnedItem),
|
|
416
275
|
debug
|
|
417
|
-
})), !hideGallery && /* @__PURE__ */
|
|
276
|
+
})), !hideGallery && /* @__PURE__ */ React4.createElement("div", {
|
|
418
277
|
ref: gridContainerRef,
|
|
419
278
|
className: "flex grow-[1] overflow-hidden justify-center items-center",
|
|
420
279
|
style: hideGallery ? {} : {
|
|
421
280
|
minHeight: MIN_GALLERY_HEIGHT
|
|
422
281
|
}
|
|
423
|
-
}, mainItems.length === 1 && /* @__PURE__ */
|
|
282
|
+
}, mainItems.length === 1 && /* @__PURE__ */ React4.createElement("div", {
|
|
424
283
|
style: {
|
|
425
284
|
width: cellWidth
|
|
426
285
|
},
|
|
427
286
|
className: "flex h-full"
|
|
428
|
-
}, /* @__PURE__ */
|
|
287
|
+
}, /* @__PURE__ */ React4.createElement(SoloItem, {
|
|
429
288
|
id: getId2(mainItems[0]),
|
|
430
289
|
debug
|
|
431
|
-
})), mainItems.length > 1 && columns > 0 && /* @__PURE__ */
|
|
290
|
+
})), mainItems.length > 1 && columns > 0 && /* @__PURE__ */ React4.createElement("div", {
|
|
432
291
|
role: "grid",
|
|
433
292
|
style: {
|
|
434
293
|
display: "grid",
|
|
435
294
|
gridTemplateColumns: `repeat(${columns}, ${cellWidth}px)`,
|
|
436
295
|
gap: `${gap}px`
|
|
437
296
|
}
|
|
438
|
-
}, mainItems.map((item) => /* @__PURE__ */
|
|
297
|
+
}, mainItems.map((item) => /* @__PURE__ */ React4.createElement("div", {
|
|
439
298
|
key: getId2(item),
|
|
440
299
|
"data-grid-item": getId2(item),
|
|
441
|
-
className:
|
|
442
|
-
}))))), /* @__PURE__ */
|
|
443
|
-
className:
|
|
444
|
-
}, bounds.map(([item, bounds2]) => /* @__PURE__ */
|
|
300
|
+
className: mx3("aspect-video max-h-full max-w-full w-auto h-auto", debug && "border border-primary-500")
|
|
301
|
+
}))))), /* @__PURE__ */ React4.createElement("div", {
|
|
302
|
+
className: mx3(debug && "opacity-10")
|
|
303
|
+
}, bounds.map(([item, bounds2]) => /* @__PURE__ */ React4.createElement(Cell, {
|
|
445
304
|
key: getId2(item),
|
|
446
305
|
classNames: "absolute transition-all duration-500",
|
|
447
306
|
item,
|
|
@@ -454,14 +313,14 @@ var ResponsiveGrid = ({ classNames, Cell, gap = DEFAULT_GAP, getId: getId2 = def
|
|
|
454
313
|
}
|
|
455
314
|
};
|
|
456
315
|
var SoloItem = ({ debug, id }) => {
|
|
457
|
-
var _effect =
|
|
316
|
+
var _effect = _useSignals4();
|
|
458
317
|
try {
|
|
459
|
-
return /* @__PURE__ */
|
|
318
|
+
return /* @__PURE__ */ React4.createElement(ResponsiveContainer, null, /* @__PURE__ */ React4.createElement("div", {
|
|
460
319
|
"data-grid-item": id,
|
|
461
|
-
className:
|
|
462
|
-
}, /* @__PURE__ */
|
|
320
|
+
className: mx3("aspect-video overflow-hidden", debug && "z-20 border-2 border-primary-500")
|
|
321
|
+
}, /* @__PURE__ */ React4.createElement("img", {
|
|
463
322
|
alt: "placeholder video",
|
|
464
|
-
className:
|
|
323
|
+
className: mx3("opacity-0", maxImageSize)
|
|
465
324
|
})));
|
|
466
325
|
} finally {
|
|
467
326
|
_effect.f();
|
|
@@ -530,16 +389,16 @@ var fitAspectRatio = (outerWidth, outerHeight, aspectRatio) => {
|
|
|
530
389
|
};
|
|
531
390
|
};
|
|
532
391
|
|
|
533
|
-
//
|
|
534
|
-
import { useSignals as
|
|
535
|
-
import
|
|
536
|
-
import { Icon
|
|
392
|
+
// src/components/ResponsiveGrid/ResponsiveGridItem.tsx
|
|
393
|
+
import { useSignals as _useSignals5 } from "@preact-signals/safe-react/tracking";
|
|
394
|
+
import React5, { useEffect as useEffect4, useState as useState2 } from "react";
|
|
395
|
+
import { Icon, IconButton, useTranslation } from "@dxos/react-ui";
|
|
537
396
|
import { Waveform } from "@dxos/react-ui-sfx";
|
|
538
|
-
import { groupHoverControlItemWithTransition
|
|
397
|
+
import { groupHoverControlItemWithTransition, mx as mx4 } from "@dxos/react-ui-theme";
|
|
539
398
|
var ResponsiveGridItem = ({ children, classNames, item, style, name, self, pinned, screenshare, video, mute, wave, speaking, onClick }) => {
|
|
540
|
-
var _effect =
|
|
399
|
+
var _effect = _useSignals5();
|
|
541
400
|
try {
|
|
542
|
-
const { t } =
|
|
401
|
+
const { t } = useTranslation(meta.id);
|
|
543
402
|
const iconProps = {
|
|
544
403
|
wave: {
|
|
545
404
|
icon: "ph--hand-waving--duotone",
|
|
@@ -565,32 +424,32 @@ var ResponsiveGridItem = ({ children, classNames, item, style, name, self, pinne
|
|
|
565
424
|
}, [
|
|
566
425
|
speaking
|
|
567
426
|
]);
|
|
568
|
-
return /* @__PURE__ */
|
|
569
|
-
className:
|
|
427
|
+
return /* @__PURE__ */ React5.createElement("div", {
|
|
428
|
+
className: mx4("relative w-full h-full group", "rounded-md outline outline-2 outline-neutral-900 transition-[outline-color] duration-500", speakingIndicator ? "outline-green-500" : !video && "outline-separator", classNames),
|
|
570
429
|
style
|
|
571
|
-
}, children, onClick && /* @__PURE__ */
|
|
430
|
+
}, children, onClick && /* @__PURE__ */ React5.createElement("div", {
|
|
572
431
|
className: "z-10 absolute top-1 right-1 flex"
|
|
573
|
-
}, /* @__PURE__ */
|
|
574
|
-
classNames:
|
|
432
|
+
}, /* @__PURE__ */ React5.createElement(IconButton, {
|
|
433
|
+
classNames: mx4("p-1 min-bs-1 rounded", groupHoverControlItemWithTransition),
|
|
575
434
|
iconOnly: true,
|
|
576
435
|
icon: pinned ? "ph--x--regular" : "ph--arrows-out--regular",
|
|
577
436
|
size: pinned ? 5 : 4,
|
|
578
437
|
label: pinned ? t("icon unpin") : t("icon pin"),
|
|
579
438
|
onClick: () => onClick?.(item)
|
|
580
|
-
})), name && /* @__PURE__ */
|
|
439
|
+
})), name && /* @__PURE__ */ React5.createElement("div", {
|
|
581
440
|
className: "z-10 absolute bottom-1 left-8 right-1 flex justify-end gap-1 items-center"
|
|
582
|
-
}, screenshare && /* @__PURE__ */
|
|
441
|
+
}, screenshare && /* @__PURE__ */ React5.createElement(Icon, {
|
|
583
442
|
icon: "ph--broadcast--regular",
|
|
584
443
|
size: pinned ? 5 : 4
|
|
585
|
-
}), /* @__PURE__ */
|
|
586
|
-
className:
|
|
587
|
-
}, name)), /* @__PURE__ */
|
|
444
|
+
}), /* @__PURE__ */ React5.createElement("div", {
|
|
445
|
+
className: mx4("bg-neutral-800 text-neutral-100 py-0.5 truncate rounded", pinned ? "px-2" : "px-1 text-xs")
|
|
446
|
+
}, name)), /* @__PURE__ */ React5.createElement("div", {
|
|
588
447
|
className: "z-10 absolute bottom-1 left-1 flex"
|
|
589
|
-
}, speaking && /* @__PURE__ */
|
|
448
|
+
}, speaking && /* @__PURE__ */ React5.createElement(Waveform, {
|
|
590
449
|
active: true,
|
|
591
450
|
size: pinned ? 5 : 4
|
|
592
|
-
}) || props && /* @__PURE__ */
|
|
593
|
-
classNames:
|
|
451
|
+
}) || props && /* @__PURE__ */ React5.createElement(IconButton, {
|
|
452
|
+
classNames: mx4("p-1 min-bs-1 rounded", props?.classNames),
|
|
594
453
|
icon: props?.icon,
|
|
595
454
|
label: props?.label,
|
|
596
455
|
size: pinned ? 5 : 4,
|
|
@@ -601,12 +460,12 @@ var ResponsiveGridItem = ({ children, classNames, item, style, name, self, pinne
|
|
|
601
460
|
}
|
|
602
461
|
};
|
|
603
462
|
|
|
604
|
-
//
|
|
463
|
+
// src/components/Participant/Participant.tsx
|
|
605
464
|
var SCREENSHARE_SUFFIX = "_screenshare";
|
|
606
465
|
var Participant = /* @__PURE__ */ memo2(({ item: user, debug, ...props }) => {
|
|
607
|
-
var _effect =
|
|
466
|
+
var _effect = _useSignals6();
|
|
608
467
|
try {
|
|
609
|
-
const call =
|
|
468
|
+
const call = useCapability(ThreadCapabilities.CallManager);
|
|
610
469
|
const isSelf = call.self.id !== void 0 && user.id !== void 0 && user.id.startsWith(call.self.id);
|
|
611
470
|
const isScreenshare = user.id?.endsWith(SCREENSHARE_SUFFIX);
|
|
612
471
|
const pulledVideoStream = call.getVideoStream(isScreenshare || !isSelf ? user.tracks?.video : void 0);
|
|
@@ -625,7 +484,7 @@ var Participant = /* @__PURE__ */ memo2(({ item: user, debug, ...props }) => {
|
|
|
625
484
|
call.media.screenshareVideoStream,
|
|
626
485
|
pulledVideoStream
|
|
627
486
|
]);
|
|
628
|
-
return /* @__PURE__ */
|
|
487
|
+
return /* @__PURE__ */ React6.createElement(ResponsiveGridItem, {
|
|
629
488
|
...props,
|
|
630
489
|
item: user,
|
|
631
490
|
name: user.name,
|
|
@@ -636,7 +495,7 @@ var Participant = /* @__PURE__ */ memo2(({ item: user, debug, ...props }) => {
|
|
|
636
495
|
wave: user.raisedHand,
|
|
637
496
|
speaking: user.speaking,
|
|
638
497
|
debug
|
|
639
|
-
}, /* @__PURE__ */
|
|
498
|
+
}, /* @__PURE__ */ React6.createElement(VideoObject, {
|
|
640
499
|
videoStream,
|
|
641
500
|
flip: isSelf && !isScreenshare,
|
|
642
501
|
contain: !!isScreenshare,
|
|
@@ -648,12 +507,12 @@ var Participant = /* @__PURE__ */ memo2(({ item: user, debug, ...props }) => {
|
|
|
648
507
|
});
|
|
649
508
|
Participant.displayName = "Participant";
|
|
650
509
|
|
|
651
|
-
//
|
|
652
|
-
import { useSignals as
|
|
653
|
-
import
|
|
510
|
+
// src/components/Participant/ParticipantGrid.tsx
|
|
511
|
+
import { useSignals as _useSignals7 } from "@preact-signals/safe-react/tracking";
|
|
512
|
+
import React7, { useEffect as useEffect5, useMemo as useMemo3, useState as useState3 } from "react";
|
|
654
513
|
var getId = (user) => user.id;
|
|
655
514
|
var ParticipantGrid = ({ classNames, self, users, fullscreen, debug }) => {
|
|
656
|
-
var _effect =
|
|
515
|
+
var _effect = _useSignals7();
|
|
657
516
|
try {
|
|
658
517
|
const [pinned, setPinned] = useState3();
|
|
659
518
|
const allUsers = useMemo3(() => {
|
|
@@ -707,7 +566,7 @@ var ParticipantGrid = ({ classNames, self, users, fullscreen, debug }) => {
|
|
|
707
566
|
return 0;
|
|
708
567
|
}
|
|
709
568
|
});
|
|
710
|
-
return /* @__PURE__ */
|
|
569
|
+
return /* @__PURE__ */ React7.createElement(ResponsiveGrid, {
|
|
711
570
|
classNames,
|
|
712
571
|
Cell: Participant,
|
|
713
572
|
debug,
|
|
@@ -722,7 +581,149 @@ var ParticipantGrid = ({ classNames, self, users, fullscreen, debug }) => {
|
|
|
722
581
|
}
|
|
723
582
|
};
|
|
724
583
|
|
|
725
|
-
//
|
|
584
|
+
// src/components/Call/Toolbar.tsx
|
|
585
|
+
import { useSignals as _useSignals8 } from "@preact-signals/safe-react/tracking";
|
|
586
|
+
import React8 from "react";
|
|
587
|
+
import { useAppGraph, useCapability as useCapability2 } from "@dxos/app-framework";
|
|
588
|
+
import { useActions, useNode } from "@dxos/plugin-graph";
|
|
589
|
+
import { fullyQualifiedId } from "@dxos/react-client/echo";
|
|
590
|
+
import { Icon as Icon2, IconButton as IconButton2, Toolbar as NativeToolbar, toLocalizedString, useTranslation as useTranslation2 } from "@dxos/react-ui";
|
|
591
|
+
import { groupHoverControlItemWithTransition as groupHoverControlItemWithTransition2, mx as mx5 } from "@dxos/react-ui-theme";
|
|
592
|
+
var Toolbar = ({ classNames, channel, participants, autoHideControls = true, onJoin, onLeave }) => {
|
|
593
|
+
var _effect = _useSignals8();
|
|
594
|
+
try {
|
|
595
|
+
const { t } = useTranslation2(meta.id);
|
|
596
|
+
const { graph } = useAppGraph();
|
|
597
|
+
const call = useCapability2(ThreadCapabilities.CallManager);
|
|
598
|
+
const node = useNode(graph, channel && fullyQualifiedId(channel));
|
|
599
|
+
const actions = useActions(graph, node?.id).filter((action) => action.properties.disposition === "toolbar");
|
|
600
|
+
const isScreensharing = call.media.screenshareTrack !== void 0;
|
|
601
|
+
const canSharescreen = typeof navigator.mediaDevices !== "undefined" && navigator.mediaDevices.getDisplayMedia !== void 0;
|
|
602
|
+
return /* @__PURE__ */ React8.createElement("div", {
|
|
603
|
+
className: mx5("z-20 flex justify-center m-8", autoHideControls && groupHoverControlItemWithTransition2)
|
|
604
|
+
}, /* @__PURE__ */ React8.createElement(NativeToolbar.Root, {
|
|
605
|
+
classNames: [
|
|
606
|
+
"p-2 bg-modalSurface rounded-md shadow-md",
|
|
607
|
+
classNames
|
|
608
|
+
]
|
|
609
|
+
}, /* @__PURE__ */ React8.createElement(ToggleButton, {
|
|
610
|
+
active: call.media.audioEnabled,
|
|
611
|
+
state: {
|
|
612
|
+
on: {
|
|
613
|
+
icon: "ph--microphone--regular",
|
|
614
|
+
label: t("mic off"),
|
|
615
|
+
onClick: () => call.turnAudioOff(),
|
|
616
|
+
classNames: "bg-callActive"
|
|
617
|
+
},
|
|
618
|
+
off: {
|
|
619
|
+
icon: "ph--microphone-slash--duotone",
|
|
620
|
+
label: t("mic on"),
|
|
621
|
+
onClick: () => call.turnAudioOn(),
|
|
622
|
+
classNames: [
|
|
623
|
+
call.joined && "bg-callAlert"
|
|
624
|
+
]
|
|
625
|
+
}
|
|
626
|
+
}
|
|
627
|
+
}), /* @__PURE__ */ React8.createElement(ToggleButton, {
|
|
628
|
+
active: call.media.videoEnabled,
|
|
629
|
+
state: {
|
|
630
|
+
on: {
|
|
631
|
+
icon: "ph--video-camera--regular",
|
|
632
|
+
label: t("camera off"),
|
|
633
|
+
onClick: () => call.turnVideoOff()
|
|
634
|
+
},
|
|
635
|
+
off: {
|
|
636
|
+
icon: "ph--video-camera-slash--duotone",
|
|
637
|
+
label: t("camera on"),
|
|
638
|
+
onClick: () => call.turnVideoOn()
|
|
639
|
+
}
|
|
640
|
+
}
|
|
641
|
+
}), participants !== void 0 && /* @__PURE__ */ React8.createElement("div", {
|
|
642
|
+
className: "flex justify-center items-center gap-2 is-[5rem] text-xs text-subdued"
|
|
643
|
+
}, /* @__PURE__ */ React8.createElement(Icon2, {
|
|
644
|
+
icon: "ph--users--regular",
|
|
645
|
+
size: 4
|
|
646
|
+
}), /* @__PURE__ */ React8.createElement("div", null, participants)) || /* @__PURE__ */ React8.createElement(NativeToolbar.Separator, {
|
|
647
|
+
variant: "gap"
|
|
648
|
+
}), call.joined && /* @__PURE__ */ React8.createElement(React8.Fragment, null, /* @__PURE__ */ React8.createElement(ToggleButton, {
|
|
649
|
+
disabled: !canSharescreen,
|
|
650
|
+
active: isScreensharing,
|
|
651
|
+
state: {
|
|
652
|
+
on: {
|
|
653
|
+
icon: "ph--monitor--regular",
|
|
654
|
+
label: t("screenshare off"),
|
|
655
|
+
onClick: () => call.turnScreenshareOff()
|
|
656
|
+
},
|
|
657
|
+
off: {
|
|
658
|
+
icon: "ph--monitor-arrow-up--duotone",
|
|
659
|
+
label: t("screenshare on"),
|
|
660
|
+
onClick: () => call.turnScreenshareOn()
|
|
661
|
+
}
|
|
662
|
+
}
|
|
663
|
+
}), actions.map((action) => /* @__PURE__ */ React8.createElement(IconButton2, {
|
|
664
|
+
key: action.id,
|
|
665
|
+
...defaultButtonProps,
|
|
666
|
+
icon: action.properties.icon,
|
|
667
|
+
label: toLocalizedString(action.properties.label, t),
|
|
668
|
+
classNames: action.properties.classNames,
|
|
669
|
+
onClick: () => action.data({
|
|
670
|
+
node
|
|
671
|
+
})
|
|
672
|
+
})), /* @__PURE__ */ React8.createElement(ToggleButton, {
|
|
673
|
+
active: call.raisedHand,
|
|
674
|
+
state: {
|
|
675
|
+
on: {
|
|
676
|
+
icon: "ph--hand-waving--regular",
|
|
677
|
+
label: t("lower hand"),
|
|
678
|
+
onClick: () => call.setRaisedHand(false),
|
|
679
|
+
classNames: [
|
|
680
|
+
call.joined && "bg-callAlert"
|
|
681
|
+
]
|
|
682
|
+
},
|
|
683
|
+
off: {
|
|
684
|
+
icon: "ph--hand-palm--duotone",
|
|
685
|
+
label: t("raise hand"),
|
|
686
|
+
onClick: () => call.setRaisedHand(true)
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
})), call.joined ? /* @__PURE__ */ React8.createElement(IconButton2, {
|
|
690
|
+
variant: "destructive",
|
|
691
|
+
icon: "ph--phone-x--regular",
|
|
692
|
+
label: t("leave call"),
|
|
693
|
+
onClick: onLeave
|
|
694
|
+
}) : /* @__PURE__ */ React8.createElement(IconButton2, {
|
|
695
|
+
variant: "primary",
|
|
696
|
+
icon: "ph--phone-incoming--regular",
|
|
697
|
+
label: t("join call"),
|
|
698
|
+
onClick: onJoin
|
|
699
|
+
})));
|
|
700
|
+
} finally {
|
|
701
|
+
_effect.f();
|
|
702
|
+
}
|
|
703
|
+
};
|
|
704
|
+
Toolbar.displayName = "MeetingToolbar";
|
|
705
|
+
var defaultButtonProps = {
|
|
706
|
+
size: 5,
|
|
707
|
+
iconOnly: true
|
|
708
|
+
};
|
|
709
|
+
var ToggleButton = ({ active, state }) => {
|
|
710
|
+
var _effect = _useSignals8();
|
|
711
|
+
try {
|
|
712
|
+
return /* @__PURE__ */ React8.createElement(IconButton2, {
|
|
713
|
+
...defaultButtonProps,
|
|
714
|
+
classNames: [
|
|
715
|
+
active ? state.on.classNames ?? "bg-callActive" : state.off.classNames
|
|
716
|
+
],
|
|
717
|
+
icon: active ? state.on.icon : state.off.icon,
|
|
718
|
+
label: active ? state.on.label : state.off.label,
|
|
719
|
+
onClick: active ? state.on.onClick : state.off.onClick
|
|
720
|
+
});
|
|
721
|
+
} finally {
|
|
722
|
+
_effect.f();
|
|
723
|
+
}
|
|
724
|
+
};
|
|
725
|
+
|
|
726
|
+
// src/components/Call/Call.tsx
|
|
726
727
|
var CallRoot = ({ children }) => {
|
|
727
728
|
var _effect = _useSignals9();
|
|
728
729
|
try {
|
|
@@ -739,7 +740,7 @@ var CallAudio = () => {
|
|
|
739
740
|
try {
|
|
740
741
|
const call = useCapability3(ThreadCapabilities.CallManager);
|
|
741
742
|
return /* @__PURE__ */ React9.createElement(AudioStream, {
|
|
742
|
-
tracks: call.
|
|
743
|
+
tracks: call.audioTracksToPlay
|
|
743
744
|
});
|
|
744
745
|
} finally {
|
|
745
746
|
_effect.f();
|
|
@@ -785,14 +786,14 @@ var Call = {
|
|
|
785
786
|
Toolbar: CallToolbar
|
|
786
787
|
};
|
|
787
788
|
|
|
788
|
-
//
|
|
789
|
-
var __dxlog_file2 = "/
|
|
789
|
+
// src/components/ChannelContainer.tsx
|
|
790
|
+
var __dxlog_file2 = "/__w/dxos/dxos/packages/plugins/plugin-thread/src/components/ChannelContainer.tsx";
|
|
790
791
|
var ChannelContainer = ({ channel, roomId: _roomId, role, fullscreen }) => {
|
|
791
792
|
var _effect = _useSignals10();
|
|
792
793
|
try {
|
|
793
794
|
const space = getSpace(channel);
|
|
794
795
|
const callManager = useCapability4(ThreadCapabilities.CallManager);
|
|
795
|
-
const roomId = channel ? fullyQualifiedId2(channel) :
|
|
796
|
+
const roomId = _roomId ?? (channel ? fullyQualifiedId2(channel) : failUndefined());
|
|
796
797
|
const identity = useIdentity();
|
|
797
798
|
const isNamed = !!identity?.profile?.displayName;
|
|
798
799
|
const joinSound = useSoundEffect("JoinCall");
|
|
@@ -801,7 +802,7 @@ var ChannelContainer = ({ channel, roomId: _roomId, role, fullscreen }) => {
|
|
|
801
802
|
useEffect6(() => {
|
|
802
803
|
const ctx = new Context(void 0, {
|
|
803
804
|
F: __dxlog_file2,
|
|
804
|
-
L:
|
|
805
|
+
L: 49
|
|
805
806
|
});
|
|
806
807
|
callManager.left.on(ctx, (roomId2) => {
|
|
807
808
|
extensions.forEach((extension) => {
|
|
@@ -843,7 +844,7 @@ var ChannelContainer = ({ channel, roomId: _roomId, role, fullscreen }) => {
|
|
|
843
844
|
} catch (err) {
|
|
844
845
|
log.catch(err, void 0, {
|
|
845
846
|
F: __dxlog_file2,
|
|
846
|
-
L:
|
|
847
|
+
L: 93,
|
|
847
848
|
S: void 0,
|
|
848
849
|
C: (f, a) => f(...a)
|
|
849
850
|
});
|
|
@@ -859,7 +860,7 @@ var ChannelContainer = ({ channel, roomId: _roomId, role, fullscreen }) => {
|
|
|
859
860
|
} catch (err) {
|
|
860
861
|
log.catch(err, void 0, {
|
|
861
862
|
F: __dxlog_file2,
|
|
862
|
-
L:
|
|
863
|
+
L: 105,
|
|
863
864
|
S: void 0,
|
|
864
865
|
C: (f, a) => f(...a)
|
|
865
866
|
});
|
|
@@ -898,7 +899,7 @@ var ChannelContainer_default = ChannelContainer;
|
|
|
898
899
|
var DisplayNameMissing = () => {
|
|
899
900
|
var _effect = _useSignals10();
|
|
900
901
|
try {
|
|
901
|
-
const { t } = useTranslation3(
|
|
902
|
+
const { t } = useTranslation3(meta.id);
|
|
902
903
|
const client = useClient();
|
|
903
904
|
const [displayName, setDisplayName] = useState4("");
|
|
904
905
|
const handleChange = useCallback2((event) => setDisplayName(event.target.value), []);
|
|
@@ -934,7 +935,7 @@ var useChannelToolbarActions = (onJoinCall) => {
|
|
|
934
935
|
label: [
|
|
935
936
|
"channel toolbar title",
|
|
936
937
|
{
|
|
937
|
-
ns:
|
|
938
|
+
ns: meta.id
|
|
938
939
|
}
|
|
939
940
|
]
|
|
940
941
|
}),
|
|
@@ -942,7 +943,7 @@ var useChannelToolbarActions = (onJoinCall) => {
|
|
|
942
943
|
label: [
|
|
943
944
|
"start video call label",
|
|
944
945
|
{
|
|
945
|
-
ns:
|
|
946
|
+
ns: meta.id
|
|
946
947
|
}
|
|
947
948
|
],
|
|
948
949
|
icon: "ph--video-camera--regular",
|
|
@@ -981,4 +982,4 @@ export {
|
|
|
981
982
|
ChannelContainer,
|
|
982
983
|
ChannelContainer_default
|
|
983
984
|
};
|
|
984
|
-
//# sourceMappingURL=chunk-
|
|
985
|
+
//# sourceMappingURL=chunk-YIDU3DXK.mjs.map
|