@dxos/plugin-thread 0.8.4-main.c1de068 → 0.8.4-main.f5c0578
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-AIGIWAUG.mjs → ChatContainer-PVT3DUZJ.mjs} +4 -4
- package/dist/lib/browser/{app-graph-builder-N7BE5TYW.mjs → app-graph-builder-AF3M7UWN.mjs} +5 -5
- package/dist/lib/browser/app-graph-builder-AF3M7UWN.mjs.map +7 -0
- package/dist/lib/browser/{call-manager-NIPDYUVD.mjs → call-manager-XRRCAVLI.mjs} +4 -4
- 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-LGSDKXPF.mjs → chunk-4APCDRSH.mjs} +1 -1
- package/dist/lib/browser/{chunk-LGSDKXPF.mjs.map → chunk-4APCDRSH.mjs.map} +1 -1
- package/dist/lib/browser/{chunk-GCLD5ESP.mjs → chunk-DW7JD64V.mjs} +1 -1
- package/dist/lib/browser/{chunk-GCLD5ESP.mjs.map → chunk-DW7JD64V.mjs.map} +2 -2
- package/dist/lib/browser/{chunk-XLPJXUKO.mjs → chunk-FY4ZRD5X.mjs} +8 -8
- package/dist/lib/{node-esm/chunk-J4NSON5Q.mjs.map → browser/chunk-FY4ZRD5X.mjs.map} +3 -3
- package/dist/lib/browser/{chunk-VUWC4IJM.mjs → chunk-J3JO5NWO.mjs} +26 -28
- package/dist/lib/browser/chunk-J3JO5NWO.mjs.map +7 -0
- package/dist/lib/browser/{chunk-6NSMBO3B.mjs → chunk-JGKMMI65.mjs} +2 -2
- package/dist/lib/browser/{chunk-6NSMBO3B.mjs.map → chunk-JGKMMI65.mjs.map} +3 -3
- package/dist/lib/browser/{chunk-ZE7KWN36.mjs → chunk-TUFWPOVS.mjs} +92 -63
- package/dist/lib/browser/chunk-TUFWPOVS.mjs.map +7 -0
- package/dist/lib/browser/{chunk-ERWASUQK.mjs → chunk-X5PIP5YR.mjs} +3 -3
- package/dist/lib/browser/{chunk-ERWASUQK.mjs.map → chunk-X5PIP5YR.mjs.map} +3 -3
- package/dist/lib/browser/{chunk-KWPRNHTK.mjs → chunk-ZJ7QBXK6.mjs} +225 -225
- package/dist/lib/browser/chunk-ZJ7QBXK6.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +7 -7
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-JFGLZ6VI.mjs → intent-resolver-DCY4P4OX.mjs} +8 -8
- package/dist/lib/browser/intent-resolver-DCY4P4OX.mjs.map +7 -0
- package/dist/lib/browser/{markdown-GEXBVJYN.mjs → markdown-WZSXCEZJ.mjs} +4 -4
- package/dist/lib/browser/markdown-WZSXCEZJ.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-root-X4UIVGTX.mjs → react-root-QXPALOUQ.mjs} +9 -9
- package/dist/lib/browser/{react-surface-YCYEFBPM.mjs → react-surface-PYAMIADB.mjs} +9 -9
- package/dist/lib/browser/react-surface-PYAMIADB.mjs.map +7 -0
- package/dist/lib/browser/{settings-E32MTL7A.mjs → settings-AC6YSASL.mjs} +2 -2
- package/dist/lib/browser/{state-H6CYONWE.mjs → state-2T4KDWBX.mjs} +2 -2
- package/dist/lib/browser/{state-H6CYONWE.mjs.map → state-2T4KDWBX.mjs.map} +2 -2
- package/dist/lib/browser/types/index.mjs +1 -1
- package/dist/lib/node-esm/{ChannelContainer-DET6T5N2.mjs → ChannelContainer-B2ZGAE4P.mjs} +7 -7
- package/dist/lib/node-esm/{ChatContainer-IQUWU426.mjs → ChatContainer-2CT4PJ7I.mjs} +4 -4
- package/dist/lib/node-esm/{app-graph-builder-VCW76Z6V.mjs → app-graph-builder-OLSJVCWY.mjs} +5 -5
- package/dist/lib/node-esm/app-graph-builder-OLSJVCWY.mjs.map +7 -0
- package/dist/lib/node-esm/{call-manager-D6O5ZJJ4.mjs → call-manager-EI7FXRAU.mjs} +4 -4
- package/dist/lib/node-esm/call-manager-EI7FXRAU.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-IHDNQLLR.mjs → chunk-4TME3BR4.mjs} +92 -63
- package/dist/lib/node-esm/chunk-4TME3BR4.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-6CRHHOST.mjs +23 -0
- package/dist/lib/node-esm/{chunk-J4NSON5Q.mjs → chunk-BF4UKS55.mjs} +8 -8
- package/dist/lib/node-esm/chunk-BF4UKS55.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-75RJ5DJI.mjs → chunk-PYTVBN5J.mjs} +1 -1
- package/dist/lib/node-esm/{chunk-75RJ5DJI.mjs.map → chunk-PYTVBN5J.mjs.map} +1 -1
- package/dist/lib/node-esm/{chunk-OU5BYIDO.mjs → chunk-QBHKLWGR.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-OU5BYIDO.mjs.map → chunk-QBHKLWGR.mjs.map} +3 -3
- package/dist/lib/node-esm/{chunk-25ABSYP2.mjs → chunk-SED3O2XO.mjs} +3 -3
- package/dist/lib/node-esm/{chunk-25ABSYP2.mjs.map → chunk-SED3O2XO.mjs.map} +3 -3
- package/dist/lib/node-esm/{chunk-2MFNK53T.mjs → chunk-VNG6M2IY.mjs} +26 -28
- package/dist/lib/node-esm/chunk-VNG6M2IY.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-TDFHTCZZ.mjs → chunk-XVKWHTH4.mjs} +1 -1
- package/dist/lib/node-esm/{chunk-TDFHTCZZ.mjs.map → chunk-XVKWHTH4.mjs.map} +2 -2
- package/dist/lib/node-esm/{chunk-C3XFMUAY.mjs → chunk-YIDU3DXK.mjs} +225 -225
- package/dist/lib/node-esm/chunk-YIDU3DXK.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +7 -7
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-OXGNQ44Y.mjs → intent-resolver-QGTPU6QB.mjs} +8 -8
- package/dist/lib/node-esm/intent-resolver-QGTPU6QB.mjs.map +7 -0
- package/dist/lib/node-esm/{markdown-LIJZDK2J.mjs → markdown-3MZXUGUA.mjs} +4 -4
- 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-M7J6PZVW.mjs → react-root-7ZFJYVUZ.mjs} +9 -9
- package/dist/lib/node-esm/{react-surface-IRSEKM42.mjs → react-surface-UJFCSFNO.mjs} +9 -9
- package/dist/lib/node-esm/react-surface-UJFCSFNO.mjs.map +7 -0
- package/dist/lib/node-esm/{settings-SJ24YG7M.mjs → settings-N52O7MLS.mjs} +2 -2
- package/dist/lib/node-esm/{state-D7WNDT3N.mjs → state-62TQKQVB.mjs} +2 -2
- package/dist/lib/node-esm/{state-D7WNDT3N.mjs.map → state-62TQKQVB.mjs.map} +2 -2
- package/dist/lib/node-esm/types/index.mjs +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 +1 -1
- 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 +1 -1
- 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.map +1 -1
- package/dist/types/src/components/Chat.stories.d.ts.map +1 -1
- package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
- package/dist/types/src/components/Comments.stories.d.ts.map +1 -1
- package/dist/types/src/components/CommentsContainer.d.ts.map +1 -1
- package/dist/types/src/components/CommentsThreadContainer.d.ts.map +1 -1
- 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/extensions/threads.d.ts +2 -2
- package/dist/types/src/extensions/threads.d.ts.map +1 -1
- package/dist/types/src/types/schema.d.ts +7 -5
- package/dist/types/src/types/schema.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +8 -6
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +47 -45
- package/src/ThreadPlugin.tsx +2 -2
- package/src/calls/call-manager.ts +1 -1
- package/src/calls/call-swarm-synchronizer.ts +1 -1
- package/src/calls/media-manager.ts +2 -2
- package/src/calls/types.ts +1 -1
- package/src/calls/util/calls-service.ts +4 -3
- package/src/calls/util/stub-media-streams.ts +2 -2
- package/src/calls-service.stories.tsx +3 -3
- 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 +4 -3
- 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 +3 -2
- package/src/components/Call/Toolbar.tsx +2 -2
- package/src/components/CallDebugPanel.tsx +1 -1
- package/src/components/CallSidebar.tsx +2 -1
- package/src/components/ChannelContainer.stories.tsx +3 -2
- package/src/components/ChannelContainer.tsx +7 -6
- package/src/components/Chat.stories.tsx +3 -2
- package/src/components/ChatContainer.tsx +4 -3
- package/src/components/Comments.stories.tsx +4 -3
- package/src/components/CommentsContainer.tsx +2 -1
- package/src/components/CommentsThreadContainer.tsx +3 -2
- package/src/components/Lobby/Lobby.tsx +1 -1
- package/src/components/Media/VideoObject.stories.tsx +4 -3
- package/src/components/MessageContainer.tsx +4 -3
- package/src/components/Participant/ParticipantGrid.tsx +2 -1
- package/src/components/ResponsiveGrid/ResponsiveContainer.stories.tsx +4 -3
- package/src/components/ResponsiveGrid/ResponsiveGrid.stories.tsx +4 -3
- package/src/components/ResponsiveGrid/ResponsiveGrid.tsx +1 -1
- package/src/components/ResponsiveGrid/ResponsiveGridItem.tsx +2 -2
- package/src/components/ThreadComplementary.tsx +1 -1
- package/src/components/command-extension.ts +1 -1
- package/src/extensions/threads.ts +6 -6
- package/src/hooks/useDebugMode.ts +1 -1
- package/src/testing/stories.ts +2 -2
- package/src/types/types.ts +2 -1
- package/src/typings.d.ts +8 -0
- package/dist/lib/browser/ChannelContainer-IY2UIRLF.mjs +0 -16
- package/dist/lib/browser/app-graph-builder-N7BE5TYW.mjs.map +0 -7
- package/dist/lib/browser/call-manager-NIPDYUVD.mjs.map +0 -7
- package/dist/lib/browser/chunk-4OYAYON2.mjs +0 -21
- package/dist/lib/browser/chunk-KWPRNHTK.mjs.map +0 -7
- package/dist/lib/browser/chunk-VUWC4IJM.mjs.map +0 -7
- package/dist/lib/browser/chunk-XLPJXUKO.mjs.map +0 -7
- package/dist/lib/browser/chunk-ZE7KWN36.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-JFGLZ6VI.mjs.map +0 -7
- package/dist/lib/browser/markdown-GEXBVJYN.mjs.map +0 -7
- package/dist/lib/browser/react-surface-YCYEFBPM.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-VCW76Z6V.mjs.map +0 -7
- package/dist/lib/node-esm/call-manager-D6O5ZJJ4.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-2MFNK53T.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-C3XFMUAY.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-GW37AAM4.mjs +0 -23
- package/dist/lib/node-esm/chunk-IHDNQLLR.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-OXGNQ44Y.mjs.map +0 -7
- package/dist/lib/node-esm/markdown-LIJZDK2J.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-IRSEKM42.mjs.map +0 -7
- /package/dist/lib/browser/{ChannelContainer-IY2UIRLF.mjs.map → ChannelContainer-O2SFQJU7.mjs.map} +0 -0
- /package/dist/lib/browser/{ChatContainer-AIGIWAUG.mjs.map → ChatContainer-PVT3DUZJ.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-4OYAYON2.mjs.map → chunk-2CWJBXBH.mjs.map} +0 -0
- /package/dist/lib/browser/{react-root-X4UIVGTX.mjs.map → react-root-QXPALOUQ.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-E32MTL7A.mjs.map → settings-AC6YSASL.mjs.map} +0 -0
- /package/dist/lib/node-esm/{ChannelContainer-DET6T5N2.mjs.map → ChannelContainer-B2ZGAE4P.mjs.map} +0 -0
- /package/dist/lib/node-esm/{ChatContainer-IQUWU426.mjs.map → ChatContainer-2CT4PJ7I.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-GW37AAM4.mjs.map → chunk-6CRHHOST.mjs.map} +0 -0
- /package/dist/lib/node-esm/{react-root-M7J6PZVW.mjs.map → react-root-7ZFJYVUZ.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-SJ24YG7M.mjs.map → settings-N52O7MLS.mjs.map} +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/react-surface.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, contributes, createSurface, useCapability } from '@dxos/app-framework';\nimport { Obj, type Ref } from '@dxos/echo';\nimport { SettingsStore } from '@dxos/local-storage';\nimport { getSpace } from '@dxos/react-client/echo';\n\nimport {\n CallDebugPanel,\n CallSidebar,\n ChannelContainer,\n ChatContainer,\n ThreadComplementary,\n ThreadSettings,\n} from '../components';\nimport { THREAD_PLUGIN } from '../meta';\nimport { ChannelType, type ThreadSettingsProps, ThreadType } from '../types';\n\nimport { ThreadCapabilities } from './capabilities';\n\nexport default () =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${THREAD_PLUGIN}/channel`,\n role: 'article',\n filter: (data): data is { subject: ChannelType } => Obj.instanceOf(ChannelType, data.subject),\n component: ({ data: { subject: channel }, role }) => <ChannelContainer channel={channel} role={role} />,\n }),\n createSurface({\n id: `${THREAD_PLUGIN}/chat-companion`,\n role: 'article',\n filter: (data): data is { companionTo: ChannelType; subject: 'chat' } =>\n Obj.instanceOf(ChannelType, data.companionTo) && data.subject === 'chat',\n component: ({ data: { companionTo: channel } }) => {\n const space = getSpace(channel);\n const thread = channel.defaultThread.target;\n if (!space || !thread) {\n return null;\n }\n\n return <ChatContainer thread={thread} space={space} />;\n },\n }),\n createSurface({\n id: `${THREAD_PLUGIN}/thread`,\n role: 'article',\n filter: (data): data is { subject: ThreadType } => Obj.instanceOf(ThreadType, data.subject),\n component: ({ data: { subject: thread } }) => {\n const space = getSpace(thread);\n if (!space || !thread) {\n return null;\n }\n\n return <ChatContainer thread={thread} space={space} />;\n },\n }),\n createSurface({\n id: `${THREAD_PLUGIN}/comments`,\n role: 'article',\n filter: (data): data is { companionTo: { threads: Ref.Ref<ThreadType>[] } } =>\n data.subject === 'comments' && Obj.isObject(data.companionTo),\n // TODO(wittjosiah): This isn't scrolling properly in a plank.\n component: ({ data }) => <ThreadComplementary subject={data.companionTo} />,\n }),\n createSurface({\n id: `${THREAD_PLUGIN}/plugin-settings`,\n role: 'article',\n filter: (data): data is { subject: SettingsStore<ThreadSettingsProps> } =>\n data.subject instanceof SettingsStore && data.subject.prefix === THREAD_PLUGIN,\n component: ({ data: { subject } }) => <ThreadSettings settings={subject.value} />,\n }),\n createSurface({\n id: `${THREAD_PLUGIN}/assistant`,\n role: 'deck-companion--active-call',\n component: () => <CallSidebar />,\n }),\n createSurface({\n id: `${THREAD_PLUGIN}/devtools-overview`,\n role: 'devtools-overview',\n component: () => {\n const call = useCapability(ThreadCapabilities.CallManager);\n return <CallDebugPanel state={call.state} />;\n },\n }),\n ]);\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,cAAcC,aAAaC,eAAeC,qBAAqB;AACxE,SAASC,WAAqB;AAC9B,SAASC,qBAAqB;AAC9B,SAASC,gBAAgB;AAezB,IAAA,wBAAe,MACbC,YAAYC,aAAaC,cAAc;EACrCC,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNC,QAAQ,CAACC,SAA2CC,IAAIC,WAAWC,aAAaH,KAAKI,OAAO;IAC5FC,WAAW,CAAC,EAAEL,MAAM,EAAEI,SAASE,QAAO,GAAIR,KAAI,MAAO,sBAAA,cAACS,kBAAAA;MAAiBD;MAAkBR;;EAC3F,CAAA;EACAH,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNC,QAAQ,CAACC,SACPC,IAAIC,WAAWC,aAAaH,KAAKQ,WAAW,KAAKR,KAAKI,YAAY;IACpEC,WAAW,CAAC,EAAEL,MAAM,EAAEQ,aAAaF,QAAO,EAAE,MAAE;AAC5C,YAAMG,QAAQC,SAASJ,OAAAA;AACvB,YAAMK,SAASL,QAAQM,cAAcC;AACrC,UAAI,CAACJ,SAAS,CAACE,QAAQ;AACrB,eAAO;MACT;AAEA,aAAO,sBAAA,cAACG,eAAAA;QAAcH;QAAgBF;;IACxC;EACF,CAAA;EACAd,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNC,QAAQ,CAACC,SAA0CC,IAAIC,WAAWa,YAAYf,KAAKI,OAAO;IAC1FC,WAAW,CAAC,EAAEL,MAAM,EAAEI,SAASO,OAAM,EAAE,MAAE;AACvC,YAAMF,QAAQC,SAASC,MAAAA;AACvB,UAAI,CAACF,SAAS,CAACE,QAAQ;AACrB,eAAO;MACT;AAEA,aAAO,sBAAA,cAACG,eAAAA;QAAcH;QAAgBF;;IACxC;EACF,CAAA;EACAd,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNC,QAAQ,CAACC,SACPA,KAAKI,YAAY,cAAcH,IAAIe,SAAShB,KAAKQ,WAAW;;IAE9DH,WAAW,CAAC,EAAEL,KAAI,MAAO,sBAAA,cAACiB,qBAAAA;MAAoBb,SAASJ,KAAKQ;;EAC9D,CAAA;EACAb,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNC,QAAQ,CAACC,SACPA,KAAKI,mBAAmBc,iBAAiBlB,KAAKI,QAAQe,WAAWtB;IACnEQ,WAAW,CAAC,EAAEL,MAAM,EAAEI,QAAO,EAAE,MAAO,sBAAA,cAACgB,gBAAAA;MAAeC,UAAUjB,QAAQkB;;EAC1E,CAAA;EACA3B,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNO,WAAW,MAAM,sBAAA,cAACkB,aAAAA,IAAAA;EACpB,CAAA;EACA5B,cAAc;IACZC,IAAI,GAAGC,aAAAA;IACPC,MAAM;IACNO,WAAW,MAAA;AACT,YAAMmB,OAAOC,cAAcC,mBAAmBC,WAAW;AACzD,aAAO,sBAAA,cAACC,gBAAAA;QAAeC,OAAOL,KAAKK;;IACrC;EACF,CAAA;CACD;",
|
|
6
|
+
"names": ["React", "Capabilities", "contributes", "createSurface", "useCapability", "Obj", "SettingsStore", "getSpace", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "THREAD_PLUGIN", "role", "filter", "data", "Obj", "instanceOf", "ChannelType", "subject", "component", "channel", "ChannelContainer", "companionTo", "space", "getSpace", "thread", "defaultThread", "target", "ChatContainer", "ThreadType", "isObject", "ThreadComplementary", "SettingsStore", "prefix", "ThreadSettings", "settings", "value", "CallSidebar", "call", "useCapability", "ThreadCapabilities", "CallManager", "CallDebugPanel", "state"]
|
|
7
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ThreadSettingsSchema
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-DW7JD64V.mjs";
|
|
4
4
|
import {
|
|
5
5
|
meta
|
|
6
6
|
} from "./chunk-EV4JWI7L.mjs";
|
|
@@ -19,4 +19,4 @@ var settings_default = () => {
|
|
|
19
19
|
export {
|
|
20
20
|
settings_default as default
|
|
21
21
|
};
|
|
22
|
-
//# sourceMappingURL=settings-
|
|
22
|
+
//# sourceMappingURL=settings-AC6YSASL.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ThreadCapabilities
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-4APCDRSH.mjs";
|
|
4
4
|
import "./chunk-EV4JWI7L.mjs";
|
|
5
5
|
|
|
6
6
|
// src/capabilities/state.ts
|
|
@@ -31,4 +31,4 @@ var state_default = () => {
|
|
|
31
31
|
export {
|
|
32
32
|
state_default as default
|
|
33
33
|
};
|
|
34
|
-
//# sourceMappingURL=state-
|
|
34
|
+
//# sourceMappingURL=state-2T4KDWBX.mjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/capabilities/state.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { contributes } from '@dxos/app-framework';\nimport { live } from '@dxos/live-object';\n\nimport {
|
|
5
|
-
"mappings": ";;;;;;AAIA,SAASA,mBAAmB;AAC5B,SAASC,YAAY;
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { contributes } from '@dxos/app-framework';\nimport { live } from '@dxos/live-object';\n\nimport { type ThreadState, type ViewStore } from '../types';\n\nimport { ThreadCapabilities } from './capabilities';\n\nconst initialViewState = { showResolvedThreads: false };\n\nexport default () => {\n const state = live<ThreadState>({ toolbar: {}, drafts: {} });\n const viewStore = live<ViewStore>({});\n\n const getViewState = (subjectId: string) => {\n if (!viewStore[subjectId]) {\n viewStore[subjectId] = { ...initialViewState };\n }\n return viewStore[subjectId];\n };\n\n return contributes(ThreadCapabilities.State, { state, getViewState });\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;AAIA,SAASA,mBAAmB;AAC5B,SAASC,YAAY;AAMrB,IAAMC,mBAAmB;EAAEC,qBAAqB;AAAM;AAEtD,IAAA,gBAAe,MAAA;AACb,QAAMC,QAAQC,KAAkB;IAAEC,SAAS,CAAC;IAAGC,QAAQ,CAAC;EAAE,CAAA;AAC1D,QAAMC,YAAYH,KAAgB,CAAC,CAAA;AAEnC,QAAMI,eAAe,CAACC,cAAAA;AACpB,QAAI,CAACF,UAAUE,SAAAA,GAAY;AACzBF,gBAAUE,SAAAA,IAAa;QAAE,GAAGR;MAAiB;IAC/C;AACA,WAAOM,UAAUE,SAAAA;EACnB;AAEA,SAAOC,YAAYC,mBAAmBC,OAAO;IAAET;IAAOK;EAAa,CAAA;AACrE;",
|
|
6
6
|
"names": ["contributes", "live", "initialViewState", "showResolvedThreads", "state", "live", "toolbar", "drafts", "viewStore", "getViewState", "subjectId", "contributes", "ThreadCapabilities", "State"]
|
|
7
7
|
}
|
|
@@ -2,16 +2,16 @@ import { createRequire } from 'node:module';const require = createRequire(import
|
|
|
2
2
|
import {
|
|
3
3
|
ChannelContainer,
|
|
4
4
|
ChannelContainer_default
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
9
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-YIDU3DXK.mjs";
|
|
6
|
+
import "./chunk-6CRHHOST.mjs";
|
|
7
|
+
import "./chunk-PYTVBN5J.mjs";
|
|
8
|
+
import "./chunk-VNG6M2IY.mjs";
|
|
9
|
+
import "./chunk-SED3O2XO.mjs";
|
|
10
10
|
import "./chunk-57XR3LEF.mjs";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-QBHKLWGR.mjs";
|
|
12
12
|
import "./chunk-GRLRWTRU.mjs";
|
|
13
13
|
export {
|
|
14
14
|
ChannelContainer,
|
|
15
15
|
ChannelContainer_default as default
|
|
16
16
|
};
|
|
17
|
-
//# sourceMappingURL=ChannelContainer-
|
|
17
|
+
//# sourceMappingURL=ChannelContainer-B2ZGAE4P.mjs.map
|
|
@@ -3,14 +3,14 @@ import {
|
|
|
3
3
|
ChatContainer,
|
|
4
4
|
ChatContainer_default,
|
|
5
5
|
ChatHeading
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-VNG6M2IY.mjs";
|
|
7
|
+
import "./chunk-SED3O2XO.mjs";
|
|
8
8
|
import "./chunk-57XR3LEF.mjs";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-QBHKLWGR.mjs";
|
|
10
10
|
import "./chunk-GRLRWTRU.mjs";
|
|
11
11
|
export {
|
|
12
12
|
ChatContainer,
|
|
13
13
|
ChatHeading,
|
|
14
14
|
ChatContainer_default as default
|
|
15
15
|
};
|
|
16
|
-
//# sourceMappingURL=ChatContainer-
|
|
16
|
+
//# sourceMappingURL=ChatContainer-2CT4PJ7I.mjs.map
|
|
@@ -2,10 +2,10 @@ import { createRequire } from 'node:module';const require = createRequire(import
|
|
|
2
2
|
import {
|
|
3
3
|
ChannelType,
|
|
4
4
|
ThreadAction
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-XVKWHTH4.mjs";
|
|
6
6
|
import {
|
|
7
7
|
ThreadCapabilities
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-PYTVBN5J.mjs";
|
|
9
9
|
import {
|
|
10
10
|
getAnchor
|
|
11
11
|
} from "./chunk-57XR3LEF.mjs";
|
|
@@ -20,8 +20,8 @@ import { Option, pipe } from "effect";
|
|
|
20
20
|
import { Capabilities, contributes, createIntent } from "@dxos/app-framework";
|
|
21
21
|
import { Obj } from "@dxos/echo";
|
|
22
22
|
import { AttentionCapabilities } from "@dxos/plugin-attention";
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
23
|
+
import { ATTENDABLE_PATH_SEPARATOR, DECK_COMPANION_TYPE, PLANK_COMPANION_TYPE } from "@dxos/plugin-deck/types";
|
|
24
|
+
import { ROOT_ID, createExtension, rxFromSignal } from "@dxos/plugin-graph";
|
|
25
25
|
import { fullyQualifiedId } from "@dxos/react-client/echo";
|
|
26
26
|
var app_graph_builder_default = (context) => {
|
|
27
27
|
const resolve = (typename) => context.getCapabilities(Capabilities.Metadata).find(({ id }) => id === typename)?.metadata ?? {};
|
|
@@ -169,4 +169,4 @@ var app_graph_builder_default = (context) => {
|
|
|
169
169
|
export {
|
|
170
170
|
app_graph_builder_default as default
|
|
171
171
|
};
|
|
172
|
-
//# sourceMappingURL=app-graph-builder-
|
|
172
|
+
//# sourceMappingURL=app-graph-builder-OLSJVCWY.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 { Rx } from '@effect-rx/rx-react';\nimport { Option, pipe } from 'effect';\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';\nimport { fullyQualifiedId } from '@dxos/react-client/echo';\n\nimport { THREAD_PLUGIN, meta } from '../meta';\nimport { ChannelType, ThreadAction } from '../types';\nimport { getAnchor } from '../util';\n\nimport { ThreadCapabilities } from './capabilities';\n\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: `${THREAD_PLUGIN}/active-call`,\n connector: (node) =>\n Rx.make((get) =>\n 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: THREAD_PLUGIN }],\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: `${THREAD_PLUGIN}/channel-chat-companion`,\n connector: (node) => {\n return Rx.make((get) => {\n return pipe(\n get(node),\n Option.flatMap((node) => (Obj.instanceOf(ChannelType, node.data) ? Option.some(node.data) : Option.none())),\n Option.map((channel) => {\n const callManager = context.getCapability(ThreadCapabilities.CallManager);\n const joined = get(\n rxFromSignal(() => callManager.joined && callManager.roomId === fullyQualifiedId(channel)),\n );\n if (!joined) {\n return [];\n }\n\n return [\n {\n id: `${fullyQualifiedId(channel)}${ATTENDABLE_PATH_SEPARATOR}chat`,\n type: PLANK_COMPANION_TYPE,\n data: 'chat',\n properties: {\n label: ['channel companion label', { ns: THREAD_PLUGIN }],\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 Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) => {\n if (!Obj.isObject(node.data) || Obj.instanceOf(ChannelType, 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 Rx.make((get) =>\n pipe(\n get(node),\n Option.flatMap((node) => {\n if (!Obj.isObject(node.data) || Obj.instanceOf(ChannelType, 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(fullyQualifiedId(object), metadata.selectionMode);\n const anchor = getAnchor(selection);\n const invalidSelection = !anchor;\n const overlappingComment = toolbar[fullyQualifiedId(object)];\n return (metadata.comments === 'anchored' && invalidSelection) || overlappingComment;\n }),\n );\n\n return [\n {\n id: `${fullyQualifiedId(object)}/comment`,\n data: () => {\n const { dispatchPromise: dispatch } = context.getCapability(Capabilities.IntentDispatcher);\n const metadata = resolve(Obj.getTypename(object)!);\n const selection = selectionManager.getSelection(fullyQualifiedId(object));\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(createIntent(ThreadAction.Create, { anchor, name, subject: object }));\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": ["Rx", "Option", "pipe", "Capabilities", "contributes", "createIntent", "Obj", "AttentionCapabilities", "ATTENDABLE_PATH_SEPARATOR", "DECK_COMPANION_TYPE", "PLANK_COMPANION_TYPE", "ROOT_ID", "createExtension", "rxFromSignal", "fullyQualifiedId", "context", "resolve", "typename", "getCapabilities", "Capabilities", "Metadata", "find", "id", "metadata", "contributes", "AppGraphBuilder", "createExtension", "THREAD_PLUGIN", "connector", "node", "Rx", "make", "get", "pipe", "Option", "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", "ChannelType", "channel", "callManager", "getCapability", "roomId", "fullyQualifiedId", "PLANK_COMPANION_TYPE", "meta", "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", "toString", "name", "getAnchorLabel", "createIntent", "ThreadAction", "Create", "subject", "testId"]
|
|
7
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
CallManager
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-4TME3BR4.mjs";
|
|
5
5
|
import {
|
|
6
6
|
ThreadCapabilities
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import "./chunk-
|
|
7
|
+
} from "./chunk-PYTVBN5J.mjs";
|
|
8
|
+
import "./chunk-QBHKLWGR.mjs";
|
|
9
9
|
import "./chunk-GRLRWTRU.mjs";
|
|
10
10
|
|
|
11
11
|
// src/capabilities/call-manager.ts
|
|
@@ -22,4 +22,4 @@ var call_manager_default = async (context) => {
|
|
|
22
22
|
export {
|
|
23
23
|
call_manager_default as default
|
|
24
24
|
};
|
|
25
|
-
//# sourceMappingURL=call-manager-
|
|
25
|
+
//# sourceMappingURL=call-manager-EI7FXRAU.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/call-manager.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type PluginContext, contributes } from '@dxos/app-framework';\nimport { ClientCapabilities } from '@dxos/plugin-client';\n\nimport { CallManager } from '../calls';\n\nimport { ThreadCapabilities } from './capabilities';\n\nexport default async (context: PluginContext) => {\n const client = context.getCapability(ClientCapabilities.Client);\n const callManager = new CallManager(client);\n await callManager.open();\n\n return contributes(ThreadCapabilities.CallManager, callManager, () => {\n void callManager.close();\n });\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;AAIA,SAA6BA,mBAAmB;AAChD,SAASC,0BAA0B;AAMnC,IAAA,uBAAe,OAAOC,YAAAA;AACpB,QAAMC,SAASD,QAAQE,cAAcC,mBAAmBC,MAAM;AAC9D,QAAMC,cAAc,IAAIC,YAAYL,MAAAA;AACpC,QAAMI,YAAYE,KAAI;AAEtB,SAAOC,YAAYC,mBAAmBH,aAAaD,aAAa,MAAA;AAC9D,SAAKA,YAAYK,MAAK;EACxB,CAAA;AACF;",
|
|
6
|
+
"names": ["contributes", "ClientCapabilities", "context", "client", "getCapability", "ClientCapabilities", "Client", "callManager", "CallManager", "open", "contributes", "ThreadCapabilities", "close"]
|
|
7
|
+
}
|
|
@@ -2,7 +2,7 @@ import { createRequire } from 'node:module';const require = createRequire(import
|
|
|
2
2
|
import {
|
|
3
3
|
createBlackCanvasStreamTrack,
|
|
4
4
|
createInaudibleAudioStreamTrack
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-QBHKLWGR.mjs";
|
|
6
6
|
|
|
7
7
|
// src/calls/types.ts
|
|
8
8
|
import { buf } from "@dxos/protocols/buf";
|
|
@@ -51,19 +51,20 @@ function _ts_decorate(decorators, target, key, desc) {
|
|
|
51
51
|
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-thread/src/calls/call-swarm-synchronizer.ts";
|
|
52
52
|
var DISCONNECTED_ABRUPT_TIMEOUT = 1e4;
|
|
53
53
|
var CallSwarmSynchronizer = class extends Resource {
|
|
54
|
+
stateUpdated = new Event();
|
|
55
|
+
_state = {
|
|
56
|
+
activities: {}
|
|
57
|
+
};
|
|
58
|
+
_networkService;
|
|
59
|
+
_lastSwarmEvent = void 0;
|
|
60
|
+
_reconcileSwarmStateTask = void 0;
|
|
61
|
+
_identityKey = void 0;
|
|
62
|
+
_deviceKey = void 0;
|
|
63
|
+
_displayName = void 0;
|
|
64
|
+
_swarmCtx = void 0;
|
|
65
|
+
_sendStateTask = void 0;
|
|
54
66
|
constructor({ networkService }) {
|
|
55
67
|
super();
|
|
56
|
-
this.stateUpdated = new Event();
|
|
57
|
-
this._state = {
|
|
58
|
-
activities: {}
|
|
59
|
-
};
|
|
60
|
-
this._lastSwarmEvent = void 0;
|
|
61
|
-
this._reconcileSwarmStateTask = void 0;
|
|
62
|
-
this._identityKey = void 0;
|
|
63
|
-
this._deviceKey = void 0;
|
|
64
|
-
this._displayName = void 0;
|
|
65
|
-
this._swarmCtx = void 0;
|
|
66
|
-
this._sendStateTask = void 0;
|
|
67
68
|
this._networkService = networkService;
|
|
68
69
|
}
|
|
69
70
|
/**
|
|
@@ -411,6 +412,8 @@ import { log as log2 } from "@dxos/log";
|
|
|
411
412
|
|
|
412
413
|
// src/calls/util/history-cache.ts
|
|
413
414
|
var HistoryCache = class {
|
|
415
|
+
_limit;
|
|
416
|
+
_messages;
|
|
414
417
|
constructor(limit = 100) {
|
|
415
418
|
this._limit = limit;
|
|
416
419
|
this._messages = [];
|
|
@@ -487,17 +490,18 @@ var BulkRequestDispatcher = class {
|
|
|
487
490
|
var __dxlog_file2 = "/__w/dxos/dxos/packages/plugins/plugin-thread/src/calls/util/calls-service.ts";
|
|
488
491
|
var NETWORK_TIMEOUT = 5e3;
|
|
489
492
|
var CallsServicePeer = class extends Resource2 {
|
|
493
|
+
history = new HistoryCache(100);
|
|
494
|
+
_persistentLifecycle = new PersistentLifecycle({
|
|
495
|
+
start: () => this._startSession(),
|
|
496
|
+
stop: (session) => this._stopSession(session)
|
|
497
|
+
});
|
|
498
|
+
_config;
|
|
499
|
+
taskScheduler = new FIFOScheduler();
|
|
500
|
+
pushTrackDispatcher = new BulkRequestDispatcher(32);
|
|
501
|
+
pullTrackDispatcher = new BulkRequestDispatcher(32);
|
|
502
|
+
closeTrackDispatcher = new BulkRequestDispatcher(32);
|
|
490
503
|
constructor(config) {
|
|
491
504
|
super();
|
|
492
|
-
this.history = new HistoryCache(100);
|
|
493
|
-
this._persistentLifecycle = new PersistentLifecycle({
|
|
494
|
-
start: () => this._startSession(),
|
|
495
|
-
stop: (session) => this._stopSession(session)
|
|
496
|
-
});
|
|
497
|
-
this.taskScheduler = new FIFOScheduler();
|
|
498
|
-
this.pushTrackDispatcher = new BulkRequestDispatcher(32);
|
|
499
|
-
this.pullTrackDispatcher = new BulkRequestDispatcher(32);
|
|
500
|
-
this.closeTrackDispatcher = new BulkRequestDispatcher(32);
|
|
501
505
|
this._config = config;
|
|
502
506
|
}
|
|
503
507
|
async _open(ctx) {
|
|
@@ -531,7 +535,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
531
535
|
state: peerConnection.connectionState
|
|
532
536
|
}, {
|
|
533
537
|
F: __dxlog_file2,
|
|
534
|
-
L:
|
|
538
|
+
L: 119,
|
|
535
539
|
S: this,
|
|
536
540
|
C: (f, a) => f(...a)
|
|
537
541
|
});
|
|
@@ -546,7 +550,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
546
550
|
state: peerConnection.iceConnectionState
|
|
547
551
|
}, {
|
|
548
552
|
F: __dxlog_file2,
|
|
549
|
-
L:
|
|
553
|
+
L: 128,
|
|
550
554
|
S: this,
|
|
551
555
|
C: (f, a) => f(...a)
|
|
552
556
|
});
|
|
@@ -557,7 +561,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
557
561
|
if (peerConnection.iceConnectionState === "connected") {
|
|
558
562
|
log2.info("calls iceConnectionState is connected", void 0, {
|
|
559
563
|
F: __dxlog_file2,
|
|
560
|
-
L:
|
|
564
|
+
L: 137,
|
|
561
565
|
S: this,
|
|
562
566
|
C: (f, a) => f(...a)
|
|
563
567
|
});
|
|
@@ -568,7 +572,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
568
572
|
timeoutSeconds
|
|
569
573
|
}, {
|
|
570
574
|
F: __dxlog_file2,
|
|
571
|
-
L:
|
|
575
|
+
L: 141,
|
|
572
576
|
S: this,
|
|
573
577
|
C: (f, a) => f(...a)
|
|
574
578
|
});
|
|
@@ -581,7 +585,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
581
585
|
async _initiateCallSession() {
|
|
582
586
|
log2("creating new session", void 0, {
|
|
583
587
|
F: __dxlog_file2,
|
|
584
|
-
L:
|
|
588
|
+
L: 151,
|
|
585
589
|
S: this,
|
|
586
590
|
C: (f, a) => f(...a)
|
|
587
591
|
});
|
|
@@ -607,7 +611,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
607
611
|
text: await response.text()
|
|
608
612
|
}, {
|
|
609
613
|
F: __dxlog_file2,
|
|
610
|
-
L:
|
|
614
|
+
L: 166,
|
|
611
615
|
S: this,
|
|
612
616
|
C: (f, a) => f(...a)
|
|
613
617
|
});
|
|
@@ -639,7 +643,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
639
643
|
status: response.status
|
|
640
644
|
}, {
|
|
641
645
|
F: __dxlog_file2,
|
|
642
|
-
L:
|
|
646
|
+
L: 191,
|
|
643
647
|
S: this,
|
|
644
648
|
C: (f, a) => f(...a)
|
|
645
649
|
});
|
|
@@ -649,7 +653,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
649
653
|
async _pushTrackInBulk({ ctx, peerConnection, transceiver, sessionId, trackName }) {
|
|
650
654
|
log2.verbose("pushing track ", trackName, {
|
|
651
655
|
F: __dxlog_file2,
|
|
652
|
-
L:
|
|
656
|
+
L: 213,
|
|
653
657
|
S: this,
|
|
654
658
|
C: (f, a) => f(...a)
|
|
655
659
|
});
|
|
@@ -676,7 +680,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
676
680
|
});
|
|
677
681
|
invariant2(response.tracks !== void 0, void 0, {
|
|
678
682
|
F: __dxlog_file2,
|
|
679
|
-
L:
|
|
683
|
+
L: 238,
|
|
680
684
|
S: this,
|
|
681
685
|
A: [
|
|
682
686
|
"response.tracks !== undefined",
|
|
@@ -701,7 +705,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
701
705
|
} else {
|
|
702
706
|
log2.error("missing track data", void 0, {
|
|
703
707
|
F: __dxlog_file2,
|
|
704
|
-
L:
|
|
708
|
+
L: 258,
|
|
705
709
|
S: this,
|
|
706
710
|
C: (f, a) => f(...a)
|
|
707
711
|
});
|
|
@@ -709,7 +713,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
709
713
|
}).catch((err) => {
|
|
710
714
|
log2.catch(err, void 0, {
|
|
711
715
|
F: __dxlog_file2,
|
|
712
|
-
L:
|
|
716
|
+
L: 262,
|
|
713
717
|
S: this,
|
|
714
718
|
C: (f, a) => f(...a)
|
|
715
719
|
});
|
|
@@ -727,7 +731,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
727
731
|
await this.waitUntilOpen();
|
|
728
732
|
invariant2(this.session, void 0, {
|
|
729
733
|
F: __dxlog_file2,
|
|
730
|
-
L:
|
|
734
|
+
L: 289,
|
|
731
735
|
S: this,
|
|
732
736
|
A: [
|
|
733
737
|
"this.session",
|
|
@@ -740,7 +744,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
740
744
|
encodings
|
|
741
745
|
}, {
|
|
742
746
|
F: __dxlog_file2,
|
|
743
|
-
L:
|
|
747
|
+
L: 290,
|
|
744
748
|
S: this,
|
|
745
749
|
C: (f, a) => f(...a)
|
|
746
750
|
});
|
|
@@ -753,7 +757,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
753
757
|
transceiver: transceiver2
|
|
754
758
|
}, {
|
|
755
759
|
F: __dxlog_file2,
|
|
756
|
-
L:
|
|
760
|
+
L: 294,
|
|
757
761
|
S: this,
|
|
758
762
|
C: (f, a) => f(...a)
|
|
759
763
|
});
|
|
@@ -765,13 +769,13 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
765
769
|
transceiver: transceiver2
|
|
766
770
|
}, {
|
|
767
771
|
F: __dxlog_file2,
|
|
768
|
-
L:
|
|
772
|
+
L: 297,
|
|
769
773
|
S: this,
|
|
770
774
|
C: (f, a) => f(...a)
|
|
771
775
|
});
|
|
772
776
|
transceiver2.sender.replaceTrack(track).catch((err) => log2.catch(err, void 0, {
|
|
773
777
|
F: __dxlog_file2,
|
|
774
|
-
L:
|
|
778
|
+
L: 298,
|
|
775
779
|
S: this,
|
|
776
780
|
C: (f, a) => f(...a)
|
|
777
781
|
}));
|
|
@@ -780,7 +784,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
780
784
|
}
|
|
781
785
|
invariant2(track, void 0, {
|
|
782
786
|
F: __dxlog_file2,
|
|
783
|
-
L:
|
|
787
|
+
L: 302,
|
|
784
788
|
S: this,
|
|
785
789
|
A: [
|
|
786
790
|
"track",
|
|
@@ -793,7 +797,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
793
797
|
});
|
|
794
798
|
log2.verbose("creating transceiver", void 0, {
|
|
795
799
|
F: __dxlog_file2,
|
|
796
|
-
L:
|
|
800
|
+
L: 307,
|
|
797
801
|
S: this,
|
|
798
802
|
C: (f, a) => f(...a)
|
|
799
803
|
});
|
|
@@ -806,7 +810,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
806
810
|
});
|
|
807
811
|
invariant2(pushedTrackData, void 0, {
|
|
808
812
|
F: __dxlog_file2,
|
|
809
|
-
L:
|
|
813
|
+
L: 316,
|
|
810
814
|
S: this,
|
|
811
815
|
A: [
|
|
812
816
|
"pushedTrackData",
|
|
@@ -823,7 +827,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
823
827
|
});
|
|
824
828
|
transceiver.sender.setParameters(parameters).catch((err) => log2.catch(err, void 0, {
|
|
825
829
|
F: __dxlog_file2,
|
|
826
|
-
L:
|
|
830
|
+
L: 323,
|
|
827
831
|
S: this,
|
|
828
832
|
C: (f, a) => f(...a)
|
|
829
833
|
}));
|
|
@@ -836,7 +840,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
836
840
|
trackName: trackData.trackName
|
|
837
841
|
}, {
|
|
838
842
|
F: __dxlog_file2,
|
|
839
|
-
L:
|
|
843
|
+
L: 341,
|
|
840
844
|
S: this,
|
|
841
845
|
C: (f, a) => f(...a)
|
|
842
846
|
});
|
|
@@ -852,7 +856,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
852
856
|
}
|
|
853
857
|
invariant2(newTrackResponse.tracks, void 0, {
|
|
854
858
|
F: __dxlog_file2,
|
|
855
|
-
L:
|
|
859
|
+
L: 354,
|
|
856
860
|
S: this,
|
|
857
861
|
A: [
|
|
858
862
|
"newTrackResponse.tracks",
|
|
@@ -899,7 +903,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
899
903
|
return track;
|
|
900
904
|
}).catch((err) => log2.catch(err, void 0, {
|
|
901
905
|
F: __dxlog_file2,
|
|
902
|
-
L:
|
|
906
|
+
L: 406,
|
|
903
907
|
S: this,
|
|
904
908
|
C: (f, a) => f(...a)
|
|
905
909
|
}));
|
|
@@ -909,7 +913,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
909
913
|
availableTracks: Array.from(trackMap.keys())
|
|
910
914
|
}, {
|
|
911
915
|
F: __dxlog_file2,
|
|
912
|
-
L:
|
|
916
|
+
L: 408,
|
|
913
917
|
S: this,
|
|
914
918
|
C: (f, a) => f(...a)
|
|
915
919
|
});
|
|
@@ -919,7 +923,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
919
923
|
if (mid) {
|
|
920
924
|
log2("closing pulled track ", trackData.trackName, {
|
|
921
925
|
F: __dxlog_file2,
|
|
922
|
-
L:
|
|
926
|
+
L: 414,
|
|
923
927
|
S: this,
|
|
924
928
|
C: (f, a) => f(...a)
|
|
925
929
|
});
|
|
@@ -935,7 +939,7 @@ var CallsServicePeer = class extends Resource2 {
|
|
|
935
939
|
await this.waitUntilOpen();
|
|
936
940
|
invariant2(this.session, void 0, {
|
|
937
941
|
F: __dxlog_file2,
|
|
938
|
-
L:
|
|
942
|
+
L: 435,
|
|
939
943
|
S: this,
|
|
940
944
|
A: [
|
|
941
945
|
"this.session",
|
|
@@ -1083,6 +1087,18 @@ var START_SPEAKING_THRESHOLD = 0.05;
|
|
|
1083
1087
|
var CONTINUE_SPEAKING_THRESHOLD = 0.02;
|
|
1084
1088
|
var MIN_EVENT_INTERVAL = 100;
|
|
1085
1089
|
var SpeakingMonitor = class extends Resource3 {
|
|
1090
|
+
_mediaStreamTrack;
|
|
1091
|
+
/**
|
|
1092
|
+
* Event that is emitted when the user starts or stops speaking.
|
|
1093
|
+
* It is debounced to prevent rapid state changes.
|
|
1094
|
+
*/
|
|
1095
|
+
speakingChanged;
|
|
1096
|
+
/**
|
|
1097
|
+
* Real state of the user speaking.
|
|
1098
|
+
*/
|
|
1099
|
+
_isSpeaking;
|
|
1100
|
+
_lastEventTime;
|
|
1101
|
+
_deferredUpdate;
|
|
1086
1102
|
constructor(_mediaStreamTrack) {
|
|
1087
1103
|
super(), this._mediaStreamTrack = _mediaStreamTrack, this.speakingChanged = new Event2(), this._isSpeaking = false, this._lastEventTime = 0;
|
|
1088
1104
|
}
|
|
@@ -1133,7 +1149,7 @@ var SpeakingMonitor = class extends Resource3 {
|
|
|
1133
1149
|
|
|
1134
1150
|
// src/calls/media-manager.ts
|
|
1135
1151
|
import { DeferredTask as DeferredTask3, Event as Event3, sleep as sleep2, synchronized as synchronized2 } from "@dxos/async";
|
|
1136
|
-
import {
|
|
1152
|
+
import { Resource as Resource4, cancelWithContext } from "@dxos/context";
|
|
1137
1153
|
import { log as log4 } from "@dxos/log";
|
|
1138
1154
|
function _ts_decorate2(decorators, target, key, desc) {
|
|
1139
1155
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
@@ -1149,20 +1165,17 @@ var MAX_WEB_CAM_BITRATE = 12e5;
|
|
|
1149
1165
|
var RETRY_INTERVAL = 500;
|
|
1150
1166
|
var USE_INAUDIBLE_AUDIO = false;
|
|
1151
1167
|
var MediaManager = class extends Resource4 {
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
this._pushTracksTask = void 0;
|
|
1164
|
-
this._pullTracksTask = void 0;
|
|
1165
|
-
}
|
|
1168
|
+
stateUpdated = new Event3();
|
|
1169
|
+
_state = {
|
|
1170
|
+
pulledVideoStreams: {},
|
|
1171
|
+
pulledAudioTracks: {}
|
|
1172
|
+
};
|
|
1173
|
+
_speakingMonitor = void 0;
|
|
1174
|
+
_trackToReconcile = [];
|
|
1175
|
+
_blackCanvasStreamTrack = void 0;
|
|
1176
|
+
_inaudibleAudioStreamTrack = void 0;
|
|
1177
|
+
_pushTracksTask = void 0;
|
|
1178
|
+
_pullTracksTask = void 0;
|
|
1166
1179
|
get isSpeaking() {
|
|
1167
1180
|
return this._speakingMonitor?.isSpeaking;
|
|
1168
1181
|
}
|
|
@@ -1469,6 +1482,22 @@ function _ts_decorate3(decorators, target, key, desc) {
|
|
|
1469
1482
|
}
|
|
1470
1483
|
var __dxlog_file5 = "/__w/dxos/dxos/packages/plugins/plugin-thread/src/calls/call-manager.ts";
|
|
1471
1484
|
var CallManager = class extends Resource5 {
|
|
1485
|
+
_client;
|
|
1486
|
+
callStateUpdated;
|
|
1487
|
+
// TODO(wittjosiah): Consolidate isSpeaking into the MediaState type.
|
|
1488
|
+
mediaStateUpdated;
|
|
1489
|
+
left;
|
|
1490
|
+
/**
|
|
1491
|
+
* Live object state. Is changed on internal events.
|
|
1492
|
+
* CAUTION: Do not change directly.
|
|
1493
|
+
*/
|
|
1494
|
+
_state;
|
|
1495
|
+
// TODO(wittjosiah): This shouldn't be necessary, live-object's signals should be granular.
|
|
1496
|
+
_raisedHandSignal;
|
|
1497
|
+
_speakingSignal;
|
|
1498
|
+
_joinedSignal;
|
|
1499
|
+
_swarmSynchronizer;
|
|
1500
|
+
_mediaManager;
|
|
1472
1501
|
/** @reactive */
|
|
1473
1502
|
get roomId() {
|
|
1474
1503
|
return this._state.call.roomId;
|
|
@@ -1667,4 +1696,4 @@ export {
|
|
|
1667
1696
|
MediaManager,
|
|
1668
1697
|
CallManager
|
|
1669
1698
|
};
|
|
1670
|
-
//# sourceMappingURL=chunk-
|
|
1699
|
+
//# sourceMappingURL=chunk-4TME3BR4.mjs.map
|