@dxos/plugin-thread 0.8.3-main.7f5a14c → 0.8.3
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-KWXUKR5Q.mjs → ChannelContainer-PKFBVENP.mjs} +3 -3
- package/dist/lib/browser/{app-graph-builder-CBWNZCXB.mjs → app-graph-builder-OY7R7EJP.mjs} +2 -2
- package/dist/lib/browser/chunk-6NBVNXTM.mjs +21 -0
- package/dist/lib/browser/{chunk-WDOQXTI2.mjs → chunk-AEXWNS6Z.mjs} +5 -3
- package/dist/lib/browser/chunk-AEXWNS6Z.mjs.map +7 -0
- package/dist/lib/browser/{chunk-3EYX6CV7.mjs → chunk-PG5CTFKK.mjs} +47 -43
- package/dist/lib/browser/chunk-PG5CTFKK.mjs.map +7 -0
- package/dist/lib/browser/{chunk-5IRYNA5K.mjs → chunk-XZKBN3NS.mjs} +30 -30
- package/dist/lib/browser/chunk-XZKBN3NS.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +33 -7
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-I37YU7K3.mjs → intent-resolver-FK2MDVDT.mjs} +19 -22
- package/dist/lib/browser/intent-resolver-FK2MDVDT.mjs.map +7 -0
- package/dist/lib/browser/{markdown-LS3XO2KB.mjs → markdown-TE5SWWNJ.mjs} +7 -8
- package/dist/lib/browser/markdown-TE5SWWNJ.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-root-KNCKPHGS.mjs → react-root-NK3A4VG7.mjs} +5 -5
- package/dist/lib/browser/{react-surface-ASWIBD7H.mjs → react-surface-VXUJKSOG.mjs} +5 -5
- package/dist/lib/browser/{settings-ZUY7OX24.mjs → settings-RB2RSLXV.mjs} +2 -2
- package/dist/lib/browser/types/index.mjs +1 -1
- package/dist/lib/node/{ChannelContainer-MA5CFESJ.cjs → ChannelContainer-YS5YT2ML.cjs} +8 -8
- package/dist/lib/node/{ChannelContainer-MA5CFESJ.cjs.map → ChannelContainer-YS5YT2ML.cjs.map} +2 -2
- package/dist/lib/node/{app-graph-builder-K5OAVYI6.cjs → app-graph-builder-PBHJNDQY.cjs} +9 -9
- package/dist/lib/node/{chunk-3YYSLZE4.cjs → chunk-ERG7G6FF.cjs} +10 -10
- package/dist/lib/node/{chunk-WCQKISL5.cjs → chunk-IP533AMV.cjs} +64 -60
- package/dist/lib/node/chunk-IP533AMV.cjs.map +7 -0
- package/dist/lib/node/{chunk-U4SZUERU.cjs → chunk-UM36TPCT.cjs} +33 -33
- package/dist/lib/node/chunk-UM36TPCT.cjs.map +7 -0
- package/dist/lib/node/{chunk-TKHJVC2C.cjs → chunk-ZGDN3XBR.cjs} +8 -6
- package/dist/lib/node/chunk-ZGDN3XBR.cjs.map +7 -0
- package/dist/lib/node/index.cjs +42 -16
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/{intent-resolver-2TX6HSOL.cjs → intent-resolver-SYSJ5SJG.cjs} +36 -39
- package/dist/lib/node/intent-resolver-SYSJ5SJG.cjs.map +7 -0
- package/dist/lib/node/{markdown-GNFW2XDO.cjs → markdown-GQIPJS2F.cjs} +13 -14
- package/dist/lib/node/markdown-GQIPJS2F.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-root-BKOXG5AC.cjs → react-root-6HHDMULJ.cjs} +9 -9
- package/dist/lib/node/{react-surface-Q5DWX3UO.cjs → react-surface-NBH42NN2.cjs} +18 -18
- package/dist/lib/node/{settings-5O5V2NOE.cjs → settings-4LQSFEDK.cjs} +6 -6
- package/dist/lib/node/types/index.cjs +6 -6
- package/dist/lib/node/types/index.cjs.map +1 -1
- package/dist/lib/node-esm/{ChannelContainer-VGVEAUAQ.mjs → ChannelContainer-O4QJII2P.mjs} +3 -3
- package/dist/lib/node-esm/{app-graph-builder-UWJQE534.mjs → app-graph-builder-BAHBHYWI.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-KP2JBSWF.mjs → chunk-2RNIPFDA.mjs} +30 -30
- package/dist/lib/node-esm/chunk-2RNIPFDA.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-EHDXOE5R.mjs → chunk-O63QJPQX.mjs} +7 -7
- package/dist/lib/node-esm/{chunk-J323VQ4P.mjs → chunk-UJMPYKT3.mjs} +5 -3
- package/dist/lib/node-esm/chunk-UJMPYKT3.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-6EGLDARC.mjs → chunk-UZWVVFT3.mjs} +47 -43
- package/dist/lib/node-esm/chunk-UZWVVFT3.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +33 -7
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-FHRK77IS.mjs → intent-resolver-BU73VYW3.mjs} +19 -22
- package/dist/lib/node-esm/intent-resolver-BU73VYW3.mjs.map +7 -0
- package/dist/lib/node-esm/{markdown-HBGB3UPJ.mjs → markdown-HJUWNBLS.mjs} +7 -8
- package/dist/lib/node-esm/markdown-HJUWNBLS.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-root-UPDDCRBV.mjs → react-root-RUXOAQNW.mjs} +5 -5
- package/dist/lib/node-esm/{react-surface-LU3CZDC4.mjs → react-surface-ELXFYKP6.mjs} +5 -5
- package/dist/lib/node-esm/{settings-KFEFSAYG.mjs → settings-EA7DFSM6.mjs} +2 -2
- package/dist/lib/node-esm/types/index.mjs +1 -1
- package/dist/types/src/ThreadPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.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 +1 -1
- package/dist/types/src/components/CommentsContainer.d.ts.map +1 -1
- package/dist/types/src/components/ThreadComplementary.d.ts.map +1 -1
- package/dist/types/src/extensions/threads.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +128 -2
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/schema.d.ts +117 -301
- package/dist/types/src/types/schema.d.ts.map +1 -1
- package/dist/types/src/types/types.d.ts +153 -828
- package/dist/types/src/types/types.d.ts.map +1 -1
- package/package.json +42 -42
- package/src/ThreadPlugin.tsx +26 -3
- package/src/capabilities/intent-resolver.ts +17 -18
- package/src/components/Call/Toolbar.tsx +1 -1
- package/src/components/ChannelContainer.tsx +18 -22
- package/src/components/CommentContainer.tsx +2 -2
- package/src/components/Comments.stories.tsx +12 -3
- package/src/components/CommentsContainer.tsx +21 -24
- package/src/components/ThreadComplementary.tsx +15 -16
- package/src/extensions/threads.ts +5 -6
- package/src/translations.ts +7 -2
- package/src/types/schema.ts +8 -4
- package/dist/lib/browser/chunk-3EYX6CV7.mjs.map +0 -7
- package/dist/lib/browser/chunk-5IRYNA5K.mjs.map +0 -7
- package/dist/lib/browser/chunk-FWBJHKRW.mjs +0 -21
- package/dist/lib/browser/chunk-WDOQXTI2.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-I37YU7K3.mjs.map +0 -7
- package/dist/lib/browser/markdown-LS3XO2KB.mjs.map +0 -7
- package/dist/lib/node/chunk-TKHJVC2C.cjs.map +0 -7
- package/dist/lib/node/chunk-U4SZUERU.cjs.map +0 -7
- package/dist/lib/node/chunk-WCQKISL5.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-2TX6HSOL.cjs.map +0 -7
- package/dist/lib/node/markdown-GNFW2XDO.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-6EGLDARC.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-J323VQ4P.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-KP2JBSWF.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-FHRK77IS.mjs.map +0 -7
- package/dist/lib/node-esm/markdown-HBGB3UPJ.mjs.map +0 -7
- /package/dist/lib/browser/{ChannelContainer-KWXUKR5Q.mjs.map → ChannelContainer-PKFBVENP.mjs.map} +0 -0
- /package/dist/lib/browser/{app-graph-builder-CBWNZCXB.mjs.map → app-graph-builder-OY7R7EJP.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-FWBJHKRW.mjs.map → chunk-6NBVNXTM.mjs.map} +0 -0
- /package/dist/lib/browser/{react-root-KNCKPHGS.mjs.map → react-root-NK3A4VG7.mjs.map} +0 -0
- /package/dist/lib/browser/{react-surface-ASWIBD7H.mjs.map → react-surface-VXUJKSOG.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-ZUY7OX24.mjs.map → settings-RB2RSLXV.mjs.map} +0 -0
- /package/dist/lib/node/{app-graph-builder-K5OAVYI6.cjs.map → app-graph-builder-PBHJNDQY.cjs.map} +0 -0
- /package/dist/lib/node/{chunk-3YYSLZE4.cjs.map → chunk-ERG7G6FF.cjs.map} +0 -0
- /package/dist/lib/node/{react-root-BKOXG5AC.cjs.map → react-root-6HHDMULJ.cjs.map} +0 -0
- /package/dist/lib/node/{react-surface-Q5DWX3UO.cjs.map → react-surface-NBH42NN2.cjs.map} +0 -0
- /package/dist/lib/node/{settings-5O5V2NOE.cjs.map → settings-4LQSFEDK.cjs.map} +0 -0
- /package/dist/lib/node-esm/{ChannelContainer-VGVEAUAQ.mjs.map → ChannelContainer-O4QJII2P.mjs.map} +0 -0
- /package/dist/lib/node-esm/{app-graph-builder-UWJQE534.mjs.map → app-graph-builder-BAHBHYWI.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-EHDXOE5R.mjs.map → chunk-O63QJPQX.mjs.map} +0 -0
- /package/dist/lib/node-esm/{react-root-UPDDCRBV.mjs.map → react-root-RUXOAQNW.mjs.map} +0 -0
- /package/dist/lib/node-esm/{react-surface-LU3CZDC4.mjs.map → react-surface-ELXFYKP6.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-KFEFSAYG.mjs.map → settings-EA7DFSM6.mjs.map} +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./chunk-
|
|
2
|
-
import "./chunk-
|
|
1
|
+
import "./chunk-PG5CTFKK.mjs";
|
|
2
|
+
import "./chunk-AEXWNS6Z.mjs";
|
|
3
3
|
import {
|
|
4
4
|
Call
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-XZKBN3NS.mjs";
|
|
6
|
+
import "./chunk-6NBVNXTM.mjs";
|
|
7
7
|
import "./chunk-R5MDLUPC.mjs";
|
|
8
8
|
import "./chunk-TAFSCSUR.mjs";
|
|
9
9
|
import "./chunk-5P5BH5GE.mjs";
|
|
@@ -24,4 +24,4 @@ var react_root_default = () => {
|
|
|
24
24
|
export {
|
|
25
25
|
react_root_default as default
|
|
26
26
|
};
|
|
27
|
-
//# sourceMappingURL=react-root-
|
|
27
|
+
//# sourceMappingURL=react-root-NK3A4VG7.mjs.map
|
|
@@ -5,13 +5,13 @@ import {
|
|
|
5
5
|
ChatContainer,
|
|
6
6
|
ThreadComplementary,
|
|
7
7
|
ThreadSettings
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-PG5CTFKK.mjs";
|
|
9
9
|
import {
|
|
10
10
|
ChannelType,
|
|
11
11
|
ThreadType
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-AEXWNS6Z.mjs";
|
|
13
|
+
import "./chunk-XZKBN3NS.mjs";
|
|
14
|
+
import "./chunk-6NBVNXTM.mjs";
|
|
15
15
|
import {
|
|
16
16
|
ThreadCapabilities
|
|
17
17
|
} from "./chunk-R5MDLUPC.mjs";
|
|
@@ -105,4 +105,4 @@ var react_surface_default = () => contributes(Capabilities.ReactSurface, [
|
|
|
105
105
|
export {
|
|
106
106
|
react_surface_default as default
|
|
107
107
|
};
|
|
108
|
-
//# sourceMappingURL=react-surface-
|
|
108
|
+
//# sourceMappingURL=react-surface-VXUJKSOG.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ThreadSettingsSchema
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-AEXWNS6Z.mjs";
|
|
4
4
|
import {
|
|
5
5
|
meta
|
|
6
6
|
} from "./chunk-IIUTBDVB.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-RB2RSLXV.mjs.map
|
|
@@ -16,14 +16,14 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
21
|
-
ChannelContainer: () =>
|
|
22
|
-
default: () =>
|
|
19
|
+
var ChannelContainer_YS5YT2ML_exports = {};
|
|
20
|
+
__export(ChannelContainer_YS5YT2ML_exports, {
|
|
21
|
+
ChannelContainer: () => import_chunk_UM36TPCT.ChannelContainer,
|
|
22
|
+
default: () => import_chunk_UM36TPCT.ChannelContainer_default
|
|
23
23
|
});
|
|
24
|
-
module.exports = __toCommonJS(
|
|
25
|
-
var
|
|
26
|
-
var
|
|
24
|
+
module.exports = __toCommonJS(ChannelContainer_YS5YT2ML_exports);
|
|
25
|
+
var import_chunk_UM36TPCT = require("./chunk-UM36TPCT.cjs");
|
|
26
|
+
var import_chunk_ERG7G6FF = require("./chunk-ERG7G6FF.cjs");
|
|
27
27
|
var import_chunk_4YSNVPWU = require("./chunk-4YSNVPWU.cjs");
|
|
28
28
|
var import_chunk_E3WBZTTI = require("./chunk-E3WBZTTI.cjs");
|
|
29
29
|
var import_chunk_FUXJAVFZ = require("./chunk-FUXJAVFZ.cjs");
|
|
@@ -33,4 +33,4 @@ var import_chunk_HLMCEE5K = require("./chunk-HLMCEE5K.cjs");
|
|
|
33
33
|
0 && (module.exports = {
|
|
34
34
|
ChannelContainer
|
|
35
35
|
});
|
|
36
|
-
//# sourceMappingURL=ChannelContainer-
|
|
36
|
+
//# sourceMappingURL=ChannelContainer-YS5YT2ML.cjs.map
|
package/dist/lib/node/{ChannelContainer-MA5CFESJ.cjs.map → ChannelContainer-YS5YT2ML.cjs.map}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["ChannelContainer-
|
|
4
|
-
"sourcesContent": ["import {\n ChannelContainer,\n ChannelContainer_default\n} from \"./chunk-
|
|
3
|
+
"sources": ["ChannelContainer-YS5YT2ML.cjs"],
|
|
4
|
+
"sourcesContent": ["import {\n ChannelContainer,\n ChannelContainer_default\n} from \"./chunk-UM36TPCT.cjs\";\nimport \"./chunk-ERG7G6FF.cjs\";\nimport \"./chunk-4YSNVPWU.cjs\";\nimport \"./chunk-E3WBZTTI.cjs\";\nimport \"./chunk-FUXJAVFZ.cjs\";\nimport \"./chunk-LR5NENBE.cjs\";\nimport \"./chunk-HLMCEE5K.cjs\";\nexport {\n ChannelContainer,\n ChannelContainer_default as default\n};\n//# sourceMappingURL=ChannelContainer-YS5YT2ML.cjs.map\n"],
|
|
5
5
|
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAGO;AACP,4BAAO;AACP,4BAAO;AACP,4BAAO;AACP,4BAAO;AACP,4BAAO;AACP,4BAAO;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -16,12 +16,12 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var
|
|
20
|
-
__export(
|
|
19
|
+
var app_graph_builder_PBHJNDQY_exports = {};
|
|
20
|
+
__export(app_graph_builder_PBHJNDQY_exports, {
|
|
21
21
|
default: () => app_graph_builder_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
24
|
-
var
|
|
23
|
+
module.exports = __toCommonJS(app_graph_builder_PBHJNDQY_exports);
|
|
24
|
+
var import_chunk_ZGDN3XBR = require("./chunk-ZGDN3XBR.cjs");
|
|
25
25
|
var import_chunk_4YSNVPWU = require("./chunk-4YSNVPWU.cjs");
|
|
26
26
|
var import_chunk_LR5NENBE = require("./chunk-LR5NENBE.cjs");
|
|
27
27
|
var import_chunk_HLMCEE5K = require("./chunk-HLMCEE5K.cjs");
|
|
@@ -66,7 +66,7 @@ var app_graph_builder_default = (context) => {
|
|
|
66
66
|
id: `${import_chunk_HLMCEE5K.THREAD_PLUGIN}/channel-chat-companion`,
|
|
67
67
|
connector: (node) => {
|
|
68
68
|
return import_rx_react.Rx.make((get) => {
|
|
69
|
-
return (0, import_effect.pipe)(get(node), import_effect.Option.flatMap((node2) => import_echo.Obj.instanceOf(
|
|
69
|
+
return (0, import_effect.pipe)(get(node), import_effect.Option.flatMap((node2) => import_echo.Obj.instanceOf(import_chunk_ZGDN3XBR.ChannelType, node2.data) ? import_effect.Option.some(node2.data) : import_effect.Option.none()), import_effect.Option.map((channel) => {
|
|
70
70
|
const callManager = context.getCapability(import_chunk_4YSNVPWU.ThreadCapabilities.CallManager);
|
|
71
71
|
const joined = get((0, import_plugin_graph.rxFromSignal)(() => callManager.joined && callManager.roomId === (0, import_echo2.fullyQualifiedId)(channel)));
|
|
72
72
|
if (!joined) {
|
|
@@ -97,7 +97,7 @@ var app_graph_builder_default = (context) => {
|
|
|
97
97
|
(0, import_plugin_graph.createExtension)({
|
|
98
98
|
id: `${import_chunk_HLMCEE5K.meta.id}/comments-companion`,
|
|
99
99
|
connector: (node) => import_rx_react.Rx.make((get) => (0, import_effect.pipe)(get(node), import_effect.Option.flatMap((node2) => {
|
|
100
|
-
if (!import_echo.Obj.isObject(node2.data) || import_echo.Obj.instanceOf(
|
|
100
|
+
if (!import_echo.Obj.isObject(node2.data) || import_echo.Obj.instanceOf(import_chunk_ZGDN3XBR.ChannelType, node2.data)) {
|
|
101
101
|
return import_effect.Option.none();
|
|
102
102
|
}
|
|
103
103
|
const metadata = resolve(import_echo.Obj.getTypename(node2.data));
|
|
@@ -127,7 +127,7 @@ var app_graph_builder_default = (context) => {
|
|
|
127
127
|
(0, import_plugin_graph.createExtension)({
|
|
128
128
|
id: `${import_chunk_HLMCEE5K.meta.id}/comment-toolbar`,
|
|
129
129
|
actions: (node) => import_rx_react.Rx.make((get) => (0, import_effect.pipe)(get(node), import_effect.Option.flatMap((node2) => {
|
|
130
|
-
if (!import_echo.Obj.isObject(node2.data) || import_echo.Obj.instanceOf(
|
|
130
|
+
if (!import_echo.Obj.isObject(node2.data) || import_echo.Obj.instanceOf(import_chunk_ZGDN3XBR.ChannelType, node2.data)) {
|
|
131
131
|
return import_effect.Option.none();
|
|
132
132
|
}
|
|
133
133
|
const metadata = resolve(import_echo.Obj.getTypename(node2.data));
|
|
@@ -152,7 +152,7 @@ var app_graph_builder_default = (context) => {
|
|
|
152
152
|
const selection = selectionManager.getSelection((0, import_echo2.fullyQualifiedId)(object));
|
|
153
153
|
const anchor = metadata.comments === "anchored" ? (0, import_chunk_LR5NENBE.getAnchor)(selection) : Date.now().toString();
|
|
154
154
|
const name = metadata.getAnchorLabel?.(object, anchor);
|
|
155
|
-
void dispatch((0, import_app_framework.createIntent)(
|
|
155
|
+
void dispatch((0, import_app_framework.createIntent)(import_chunk_ZGDN3XBR.ThreadAction.Create, {
|
|
156
156
|
anchor,
|
|
157
157
|
name,
|
|
158
158
|
subject: object
|
|
@@ -176,4 +176,4 @@ var app_graph_builder_default = (context) => {
|
|
|
176
176
|
})
|
|
177
177
|
]);
|
|
178
178
|
};
|
|
179
|
-
//# sourceMappingURL=app-graph-builder-
|
|
179
|
+
//# sourceMappingURL=app-graph-builder-PBHJNDQY.cjs.map
|
|
@@ -26,8 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var chunk_ERG7G6FF_exports = {};
|
|
30
|
+
__export(chunk_ERG7G6FF_exports, {
|
|
31
31
|
AppGraphBuilder: () => AppGraphBuilder,
|
|
32
32
|
CallManager: () => CallManager,
|
|
33
33
|
IntentResolver: () => IntentResolver,
|
|
@@ -36,15 +36,15 @@ __export(chunk_3YYSLZE4_exports, {
|
|
|
36
36
|
ReactSurface: () => ReactSurface,
|
|
37
37
|
ThreadState: () => ThreadState
|
|
38
38
|
});
|
|
39
|
-
module.exports = __toCommonJS(
|
|
39
|
+
module.exports = __toCommonJS(chunk_ERG7G6FF_exports);
|
|
40
40
|
var import_app_framework = require("@dxos/app-framework");
|
|
41
|
-
var AppGraphBuilder = (0, import_app_framework.lazy)(() => import("./app-graph-builder-
|
|
41
|
+
var AppGraphBuilder = (0, import_app_framework.lazy)(() => import("./app-graph-builder-PBHJNDQY.cjs"));
|
|
42
42
|
var CallManager = (0, import_app_framework.lazy)(() => import("./call-manager-HV2XJW5O.cjs"));
|
|
43
|
-
var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-
|
|
44
|
-
var Markdown = (0, import_app_framework.lazy)(() => import("./markdown-
|
|
45
|
-
var ReactRoot = (0, import_app_framework.lazy)(() => import("./react-root-
|
|
46
|
-
var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-
|
|
47
|
-
var ThreadSettings = (0, import_app_framework.lazy)(() => import("./settings-
|
|
43
|
+
var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-SYSJ5SJG.cjs"));
|
|
44
|
+
var Markdown = (0, import_app_framework.lazy)(() => import("./markdown-GQIPJS2F.cjs"));
|
|
45
|
+
var ReactRoot = (0, import_app_framework.lazy)(() => import("./react-root-6HHDMULJ.cjs"));
|
|
46
|
+
var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-NBH42NN2.cjs"));
|
|
47
|
+
var ThreadSettings = (0, import_app_framework.lazy)(() => import("./settings-4LQSFEDK.cjs"));
|
|
48
48
|
var ThreadState = (0, import_app_framework.lazy)(() => import("./state-IY5XX3H2.cjs"));
|
|
49
49
|
// Annotate the CommonJS export names for ESM import in node:
|
|
50
50
|
0 && (module.exports = {
|
|
@@ -56,4 +56,4 @@ var ThreadState = (0, import_app_framework.lazy)(() => import("./state-IY5XX3H2.
|
|
|
56
56
|
ReactSurface,
|
|
57
57
|
ThreadState
|
|
58
58
|
});
|
|
59
|
-
//# sourceMappingURL=chunk-
|
|
59
|
+
//# sourceMappingURL=chunk-ERG7G6FF.cjs.map
|
|
@@ -26,8 +26,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var chunk_IP533AMV_exports = {};
|
|
30
|
+
__export(chunk_IP533AMV_exports, {
|
|
31
31
|
CallDebugPanel: () => CallDebugPanel,
|
|
32
32
|
CallSidebar: () => CallSidebar,
|
|
33
33
|
ChannelContainer: () => ChannelContainer2,
|
|
@@ -35,9 +35,9 @@ __export(chunk_WCQKISL5_exports, {
|
|
|
35
35
|
ThreadComplementary: () => ThreadComplementary,
|
|
36
36
|
ThreadSettings: () => ThreadSettings
|
|
37
37
|
});
|
|
38
|
-
module.exports = __toCommonJS(
|
|
39
|
-
var
|
|
40
|
-
var
|
|
38
|
+
module.exports = __toCommonJS(chunk_IP533AMV_exports);
|
|
39
|
+
var import_chunk_ZGDN3XBR = require("./chunk-ZGDN3XBR.cjs");
|
|
40
|
+
var import_chunk_UM36TPCT = require("./chunk-UM36TPCT.cjs");
|
|
41
41
|
var import_chunk_4YSNVPWU = require("./chunk-4YSNVPWU.cjs");
|
|
42
42
|
var import_chunk_E3WBZTTI = require("./chunk-E3WBZTTI.cjs");
|
|
43
43
|
var import_chunk_FUXJAVFZ = require("./chunk-FUXJAVFZ.cjs");
|
|
@@ -57,7 +57,6 @@ var import_tracking3 = require("@preact-signals/safe-react/tracking");
|
|
|
57
57
|
var import_react3 = __toESM(require("react"));
|
|
58
58
|
var import_app_framework2 = require("@dxos/app-framework");
|
|
59
59
|
var import_echo = require("@dxos/echo");
|
|
60
|
-
var import_echo_schema = require("@dxos/echo-schema");
|
|
61
60
|
var import_echo2 = require("@dxos/react-client/echo");
|
|
62
61
|
var import_halo = require("@dxos/react-client/halo");
|
|
63
62
|
var import_react_ui2 = require("@dxos/react-ui");
|
|
@@ -69,9 +68,9 @@ var import_react4 = require("react");
|
|
|
69
68
|
var import_tracking4 = require("@preact-signals/safe-react/tracking");
|
|
70
69
|
var import_react5 = require("@phosphor-icons/react");
|
|
71
70
|
var import_react6 = __toESM(require("react"));
|
|
72
|
-
var
|
|
71
|
+
var import_echo3 = require("@dxos/echo");
|
|
73
72
|
var import_live_object = require("@dxos/live-object");
|
|
74
|
-
var
|
|
73
|
+
var import_echo4 = require("@dxos/react-client/echo");
|
|
75
74
|
var import_halo2 = require("@dxos/react-client/halo");
|
|
76
75
|
var import_react_ui3 = require("@dxos/react-ui");
|
|
77
76
|
var import_react_ui_editor = require("@dxos/react-ui-editor");
|
|
@@ -79,14 +78,12 @@ var import_react_ui_theme = require("@dxos/react-ui-theme");
|
|
|
79
78
|
var import_react_ui_thread = require("@dxos/react-ui-thread");
|
|
80
79
|
var import_util = require("@dxos/util");
|
|
81
80
|
var import_tracking5 = require("@preact-signals/safe-react/tracking");
|
|
82
|
-
var import_react7 = require("
|
|
83
|
-
var
|
|
84
|
-
var
|
|
85
|
-
var import_echo4 = require("@dxos/react-client/echo");
|
|
81
|
+
var import_react7 = __toESM(require("react"));
|
|
82
|
+
var import_echo5 = require("@dxos/echo");
|
|
83
|
+
var import_echo6 = require("@dxos/react-client/echo");
|
|
86
84
|
var import_react_ui4 = require("@dxos/react-ui");
|
|
87
|
-
var import_react_ui_theme2 = require("@dxos/react-ui-theme");
|
|
88
85
|
var import_tracking6 = require("@preact-signals/safe-react/tracking");
|
|
89
|
-
var
|
|
86
|
+
var import_react8 = __toESM(require("react"));
|
|
90
87
|
var import_react_ui_form = require("@dxos/react-ui-form");
|
|
91
88
|
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-thread/src/components/CallDebugPanel.tsx";
|
|
92
89
|
var CallDebugPanel = ({ state }) => {
|
|
@@ -200,7 +197,7 @@ var CallSidebar = () => {
|
|
|
200
197
|
var _effect = (0, import_tracking2.useSignals)();
|
|
201
198
|
try {
|
|
202
199
|
const call = (0, import_app_framework.useCapability)(import_chunk_4YSNVPWU.ThreadCapabilities.CallManager);
|
|
203
|
-
return /* @__PURE__ */ import_react2.default.createElement(
|
|
200
|
+
return /* @__PURE__ */ import_react2.default.createElement(import_chunk_UM36TPCT.ChannelContainer, {
|
|
204
201
|
roomId: call.roomId
|
|
205
202
|
});
|
|
206
203
|
} finally {
|
|
@@ -266,15 +263,15 @@ var CommentContainer = ({ anchor, current, onAttend, onComment, onResolve, onMes
|
|
|
266
263
|
var _effect = (0, import_tracking4.useSignals)();
|
|
267
264
|
try {
|
|
268
265
|
const identity = (0, import_halo2.useIdentity)();
|
|
269
|
-
const space = (0,
|
|
270
|
-
const members = (0,
|
|
266
|
+
const space = (0, import_echo4.getSpace)(anchor);
|
|
267
|
+
const members = (0, import_echo4.useMembers)(space?.key);
|
|
271
268
|
const detached = !anchor.anchor;
|
|
272
|
-
const thread = anchor
|
|
273
|
-
const activity = (0, import_chunk_FUXJAVFZ.useStatus)(space, (0,
|
|
269
|
+
const thread = import_echo3.Relation.getSource(anchor);
|
|
270
|
+
const activity = (0, import_chunk_FUXJAVFZ.useStatus)(space, (0, import_echo4.fullyQualifiedId)(thread));
|
|
274
271
|
const { t } = (0, import_react_ui3.useTranslation)(import_chunk_HLMCEE5K.THREAD_PLUGIN);
|
|
275
272
|
const threadScrollRef = (0, import_react6.useRef)(null);
|
|
276
273
|
const { themeMode } = (0, import_react_ui3.useThemeContext)();
|
|
277
|
-
const textboxMetadata = (0, import_chunk_LR5NENBE.getMessageMetadata)((0,
|
|
274
|
+
const textboxMetadata = (0, import_chunk_LR5NENBE.getMessageMetadata)((0, import_echo4.fullyQualifiedId)(thread), identity);
|
|
278
275
|
const [_count, _setCount] = (0, import_react6.useState)(0);
|
|
279
276
|
const rerenderEditor = () => _setCount((count) => count + 1);
|
|
280
277
|
const messageRef = (0, import_react6.useRef)("");
|
|
@@ -329,7 +326,7 @@ var CommentContainer = ({ anchor, current, onAttend, onComment, onResolve, onMes
|
|
|
329
326
|
onClickCapture: handleAttend,
|
|
330
327
|
onFocusCapture: handleAttend,
|
|
331
328
|
current,
|
|
332
|
-
id: (0,
|
|
329
|
+
id: (0, import_echo4.fullyQualifiedId)(thread)
|
|
333
330
|
}, /* @__PURE__ */ import_react6.default.createElement("div", {
|
|
334
331
|
role: "none",
|
|
335
332
|
className: (0, import_react_ui_theme.mx)("col-span-2 grid grid-cols-[var(--rail-size)_1fr_min-content]", import_react_ui_theme.hoverableControls, import_react_ui_theme.hoverableFocusedWithinControls)
|
|
@@ -373,11 +370,11 @@ var CommentsContainer = ({ anchors, currentId, showResolvedThreads, ...props })
|
|
|
373
370
|
var _effect = (0, import_tracking5.useSignals)();
|
|
374
371
|
try {
|
|
375
372
|
const { t } = (0, import_react_ui4.useTranslation)(import_chunk_HLMCEE5K.THREAD_PLUGIN);
|
|
376
|
-
const filteredAnchors = showResolvedThreads ? anchors.filter((anchor) => !!anchor
|
|
377
|
-
const thread = anchor
|
|
373
|
+
const filteredAnchors = showResolvedThreads ? anchors.filter((anchor) => !!import_echo5.Relation.getSource(anchor)) : anchors.filter((anchor) => {
|
|
374
|
+
const thread = import_echo5.Relation.getSource(anchor);
|
|
378
375
|
return thread && thread.status !== "resolved";
|
|
379
376
|
});
|
|
380
|
-
(0,
|
|
377
|
+
(0, import_react7.useEffect)(() => {
|
|
381
378
|
if (currentId) {
|
|
382
379
|
document.getElementById(currentId)?.scrollIntoView({
|
|
383
380
|
behavior: "smooth",
|
|
@@ -387,29 +384,32 @@ var CommentsContainer = ({ anchors, currentId, showResolvedThreads, ...props })
|
|
|
387
384
|
}, [
|
|
388
385
|
currentId
|
|
389
386
|
]);
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
387
|
+
if (filteredAnchors.length === 0) {
|
|
388
|
+
return /* @__PURE__ */ import_react7.default.createElement("div", {
|
|
389
|
+
role: "none",
|
|
390
|
+
className: "plb-cardSpacingBlock pli-cardSpacingInline"
|
|
391
|
+
}, /* @__PURE__ */ import_react7.default.createElement(import_react_ui4.Callout.Root, null, /* @__PURE__ */ import_react7.default.createElement(import_react_ui4.Callout.Title, null, /* @__PURE__ */ import_react7.default.createElement(import_react_ui4.Trans, {
|
|
392
|
+
t,
|
|
393
|
+
i18nKey: "no comments message",
|
|
394
|
+
components: {
|
|
395
|
+
commentIcon: /* @__PURE__ */ import_react7.default.createElement(import_react_ui4.Icon, {
|
|
396
|
+
icon: "ph--chat-text--regular",
|
|
397
|
+
size: 4,
|
|
398
|
+
classNames: "inline-block"
|
|
399
|
+
})
|
|
400
|
+
}
|
|
401
|
+
}))));
|
|
402
|
+
}
|
|
403
|
+
return filteredAnchors.map((anchor) => {
|
|
404
|
+
const thread = import_echo5.Relation.getSource(anchor);
|
|
405
|
+
const threadId = (0, import_echo6.fullyQualifiedId)(thread);
|
|
406
|
+
return /* @__PURE__ */ import_react7.default.createElement(CommentContainer, {
|
|
394
407
|
key: threadId,
|
|
395
408
|
anchor,
|
|
396
409
|
current: currentId === threadId,
|
|
397
410
|
...props
|
|
398
411
|
});
|
|
399
|
-
})
|
|
400
|
-
role: "alert",
|
|
401
|
-
className: (0, import_react_ui_theme2.mx)(import_react_ui_theme2.descriptionMessage, "place-self-center rounded-lg text-center m-4")
|
|
402
|
-
}, /* @__PURE__ */ import_react8.default.createElement("h2", {
|
|
403
|
-
className: "mbe-2 font-medium text-baseText"
|
|
404
|
-
}, t("no comments title")), /* @__PURE__ */ import_react8.default.createElement("p", null, /* @__PURE__ */ import_react8.default.createElement(import_react_ui4.Trans, {
|
|
405
|
-
t,
|
|
406
|
-
i18nKey: "no comments message",
|
|
407
|
-
components: {
|
|
408
|
-
commentIcon: /* @__PURE__ */ import_react8.default.createElement(import_react7.ChatText, {
|
|
409
|
-
className: "inline-block"
|
|
410
|
-
})
|
|
411
|
-
}
|
|
412
|
-
}))));
|
|
412
|
+
});
|
|
413
413
|
} finally {
|
|
414
414
|
_effect.f();
|
|
415
415
|
}
|
|
@@ -417,12 +417,12 @@ var CommentsContainer = ({ anchors, currentId, showResolvedThreads, ...props })
|
|
|
417
417
|
var ThreadSettings = ({ settings }) => {
|
|
418
418
|
var _effect = (0, import_tracking6.useSignals)();
|
|
419
419
|
try {
|
|
420
|
-
return /* @__PURE__ */
|
|
420
|
+
return /* @__PURE__ */ import_react8.default.createElement(import_react_ui_form.DeprecatedFormContainer, null);
|
|
421
421
|
} finally {
|
|
422
422
|
_effect.f();
|
|
423
423
|
}
|
|
424
424
|
};
|
|
425
|
-
var ChannelContainer2 = (0, import_react4.lazy)(() => import("./ChannelContainer-
|
|
425
|
+
var ChannelContainer2 = (0, import_react4.lazy)(() => import("./ChannelContainer-YS5YT2ML.cjs"));
|
|
426
426
|
var ChatContainer = (0, import_react4.lazy)(() => import("./ChatContainer-GCOM3M56.cjs"));
|
|
427
427
|
var ThreadComplementary = ({ subject }) => {
|
|
428
428
|
var _effect = (0, import_tracking3.useSignals)();
|
|
@@ -430,15 +430,20 @@ var ThreadComplementary = ({ subject }) => {
|
|
|
430
430
|
const { dispatchPromise: dispatch } = (0, import_app_framework2.useIntentDispatcher)();
|
|
431
431
|
const identity = (0, import_halo.useIdentity)();
|
|
432
432
|
const { t } = (0, import_react_ui2.useTranslation)(import_chunk_HLMCEE5K.THREAD_PLUGIN);
|
|
433
|
+
const { tx } = (0, import_react_ui2.useThemeContext)();
|
|
434
|
+
const subjectId = (0, import_echo2.fullyQualifiedId)(subject);
|
|
433
435
|
const { state, getViewState } = (0, import_app_framework2.useCapability)(import_chunk_4YSNVPWU.ThreadCapabilities.MutableState);
|
|
434
|
-
const
|
|
436
|
+
const drafts = state.drafts[subjectId];
|
|
437
|
+
const viewState = (0, import_react3.useMemo)(() => getViewState(subjectId), [
|
|
438
|
+
getViewState,
|
|
439
|
+
subjectId
|
|
440
|
+
]);
|
|
435
441
|
const { showResolvedThreads } = viewState;
|
|
436
442
|
const onChangeViewState = (0, import_react3.useCallback)((nextValue) => {
|
|
437
443
|
viewState.showResolvedThreads = nextValue === "all";
|
|
438
444
|
}, [
|
|
439
445
|
viewState
|
|
440
446
|
]);
|
|
441
|
-
const drafts = state.drafts[(0, import_echo2.fullyQualifiedId)(subject)];
|
|
442
447
|
const anchorSorts = (0, import_app_framework2.useCapabilities)(import_app_framework2.Capabilities.AnchorSort);
|
|
443
448
|
const sort = (0, import_react3.useMemo)(() => anchorSorts.find(({ key }) => key === import_echo.Obj.getTypename(subject))?.sort, [
|
|
444
449
|
anchorSorts,
|
|
@@ -446,11 +451,10 @@ var ThreadComplementary = ({ subject }) => {
|
|
|
446
451
|
]);
|
|
447
452
|
const space = (0, import_echo2.getSpace)(subject);
|
|
448
453
|
const objectsAnchoredTo = (0, import_echo2.useQuery)(space, import_echo.Query.select(import_echo.Filter.ids(subject.id)).targetOf(import_schema.AnchoredTo));
|
|
449
|
-
const anchors = objectsAnchoredTo.toSorted((a, b) => sort?.(a, b) ?? 0).filter((anchor) => import_echo.Obj.instanceOf(
|
|
454
|
+
const anchors = objectsAnchoredTo.toSorted((a, b) => sort?.(a, b) ?? 0).filter((anchor) => import_echo.Obj.instanceOf(import_chunk_ZGDN3XBR.ThreadType, import_echo.Relation.getSource(anchor))).concat(drafts ?? []);
|
|
450
455
|
const attended = (0, import_react_ui_attention.useAttended)();
|
|
451
|
-
const qualifiedSubjectId = (0, import_echo2.fullyQualifiedId)(subject);
|
|
452
456
|
const handleAttend = (0, import_react3.useCallback)((anchor) => {
|
|
453
|
-
const thread = anchor
|
|
457
|
+
const thread = import_echo.Relation.getSource(anchor);
|
|
454
458
|
const threadId = (0, import_echo2.fullyQualifiedId)(thread);
|
|
455
459
|
if (state.current !== threadId) {
|
|
456
460
|
state.current = threadId;
|
|
@@ -469,7 +473,7 @@ var ThreadComplementary = ({ subject }) => {
|
|
|
469
473
|
subject
|
|
470
474
|
]);
|
|
471
475
|
const handleComment = (0, import_react3.useCallback)(async (anchor, text) => {
|
|
472
|
-
await dispatch((0, import_app_framework2.createIntent)(
|
|
476
|
+
await dispatch((0, import_app_framework2.createIntent)(import_chunk_ZGDN3XBR.ThreadAction.AddMessage, {
|
|
473
477
|
anchor,
|
|
474
478
|
subject,
|
|
475
479
|
sender: {
|
|
@@ -477,26 +481,26 @@ var ThreadComplementary = ({ subject }) => {
|
|
|
477
481
|
},
|
|
478
482
|
text
|
|
479
483
|
}));
|
|
480
|
-
const thread = anchor
|
|
484
|
+
const thread = import_echo.Relation.getSource(anchor);
|
|
481
485
|
state.current = (0, import_echo2.fullyQualifiedId)(thread);
|
|
482
486
|
}, [
|
|
483
487
|
dispatch,
|
|
484
488
|
identity,
|
|
485
489
|
subject
|
|
486
490
|
]);
|
|
487
|
-
const handleResolve = (0, import_react3.useCallback)((anchor) => dispatch((0, import_app_framework2.createIntent)(
|
|
488
|
-
thread: anchor
|
|
491
|
+
const handleResolve = (0, import_react3.useCallback)((anchor) => dispatch((0, import_app_framework2.createIntent)(import_chunk_ZGDN3XBR.ThreadAction.ToggleResolved, {
|
|
492
|
+
thread: import_echo.Relation.getSource(anchor)
|
|
489
493
|
})), [
|
|
490
494
|
dispatch
|
|
491
495
|
]);
|
|
492
|
-
const handleThreadDelete = (0, import_react3.useCallback)((anchor) => dispatch((0, import_app_framework2.createIntent)(
|
|
496
|
+
const handleThreadDelete = (0, import_react3.useCallback)((anchor) => dispatch((0, import_app_framework2.createIntent)(import_chunk_ZGDN3XBR.ThreadAction.Delete, {
|
|
493
497
|
anchor,
|
|
494
498
|
subject
|
|
495
499
|
})), [
|
|
496
500
|
dispatch,
|
|
497
501
|
subject
|
|
498
502
|
]);
|
|
499
|
-
const handleMessageDelete = (0, import_react3.useCallback)((anchor, messageId) => dispatch((0, import_app_framework2.createIntent)(
|
|
503
|
+
const handleMessageDelete = (0, import_react3.useCallback)((anchor, messageId) => dispatch((0, import_app_framework2.createIntent)(import_chunk_ZGDN3XBR.ThreadAction.DeleteMessage, {
|
|
500
504
|
anchor,
|
|
501
505
|
subject,
|
|
502
506
|
messageId
|
|
@@ -506,7 +510,7 @@ var ThreadComplementary = ({ subject }) => {
|
|
|
506
510
|
]);
|
|
507
511
|
const comments = /* @__PURE__ */ import_react3.default.createElement(CommentsContainer, {
|
|
508
512
|
anchors,
|
|
509
|
-
currentId: attended.includes(
|
|
513
|
+
currentId: attended.includes(subjectId) ? state.current : void 0,
|
|
510
514
|
showResolvedThreads,
|
|
511
515
|
onAttend: handleAttend,
|
|
512
516
|
onComment: handleComment,
|
|
@@ -518,11 +522,11 @@ var ThreadComplementary = ({ subject }) => {
|
|
|
518
522
|
toolbar: true
|
|
519
523
|
}, /* @__PURE__ */ import_react3.default.createElement(import_react_ui_tabs.Tabs.Root, {
|
|
520
524
|
value: showResolvedThreads ? "all" : "unresolved",
|
|
521
|
-
onValueChange: onChangeViewState,
|
|
522
525
|
orientation: "horizontal",
|
|
523
|
-
classNames: 'contents [&_[role="tabpanel"]]:min-bs-0 [&_[role="tabpanel"]]:overflow-y-auto [&_[role="tabpanel"]]:scrollbar-thin'
|
|
526
|
+
classNames: 'contents [&_[role="tabpanel"]]:min-bs-0 [&_[role="tabpanel"]]:overflow-y-auto [&_[role="tabpanel"]]:scrollbar-thin',
|
|
527
|
+
onValueChange: onChangeViewState
|
|
524
528
|
}, /* @__PURE__ */ import_react3.default.createElement(import_react_ui_tabs.Tabs.Tablist, {
|
|
525
|
-
classNames: "
|
|
529
|
+
classNames: tx("toolbar.root", "toolbar", {})
|
|
526
530
|
}, /* @__PURE__ */ import_react3.default.createElement(import_react_ui_tabs.Tabs.Tab, {
|
|
527
531
|
value: "unresolved",
|
|
528
532
|
classNames: "text-sm"
|
|
@@ -547,4 +551,4 @@ var ThreadComplementary = ({ subject }) => {
|
|
|
547
551
|
ThreadComplementary,
|
|
548
552
|
ThreadSettings
|
|
549
553
|
});
|
|
550
|
-
//# sourceMappingURL=chunk-
|
|
554
|
+
//# sourceMappingURL=chunk-IP533AMV.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/CallDebugPanel.tsx", "../../../src/components/CallSidebar.tsx", "../../../src/components/ThreadComplementary.tsx", "../../../src/components/index.ts", "../../../src/components/CommentContainer.tsx", "../../../src/components/CommentsContainer.tsx", "../../../src/components/ThreadSettings.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { WebRTCStats } from '@peermetrics/webrtc-stats';\nimport React, { useEffect, useMemo, useState } from 'react';\n\nimport { Panel } from '@dxos/devtools';\nimport { log } from '@dxos/log';\nimport { Input, useTranslation, type ThemedClassName } from '@dxos/react-ui';\nimport { Json } from '@dxos/react-ui-syntax-highlighter';\n\nimport { type GlobalState } from '../calls';\nimport { THREAD_PLUGIN } from '../meta';\n\nexport type CallDebugPanelProps = ThemedClassName<{\n state?: GlobalState;\n}>;\n\nexport const CallDebugPanel = ({ state }: CallDebugPanelProps) => {\n const users = state?.call?.users;\n const self = state?.call?.self;\n const { t } = useTranslation(THREAD_PLUGIN);\n\n const [open, setOpen] = useState(false);\n const handleToggle = () => setOpen(!open);\n const [showDetailedWebRTCStats, setShowDetailedWebRTCStats] = useState(false);\n const handleShowDetailedWebRTCStats = () => setShowDetailedWebRTCStats(!showDetailedWebRTCStats);\n\n const webrtcStats = useMemo(\n () =>\n new WebRTCStats({\n getStatsInterval: 1000,\n }),\n [],\n );\n\n const [stats, setStats] = useState<Record<string, any>>({});\n useEffect(() => {\n const pc = state?.media.peer?.session?.peerConnection;\n const handleStats = (stats: Record<string, any>) => setStats(stats.data);\n let added = false;\n if (pc && showDetailedWebRTCStats) {\n webrtcStats.addConnection({ pc, peerId: 1, connectionId: '1' });\n webrtcStats.on('stats', handleStats);\n added = true;\n }\n return () => {\n try {\n if (pc && added) {\n webrtcStats.removeConnection({ pc });\n webrtcStats.removeListener('stats', handleStats);\n }\n } catch (error) {\n log.error('error removing webrtc stats', { error, pc, peerId: 1, connectionId: '1' });\n }\n };\n }, [state?.media.peer?.session?.peerConnection, showDetailedWebRTCStats]);\n\n return (\n <Panel\n id='meeting-status'\n icon='ph--video-conference--regular'\n open={open}\n onToggle={handleToggle}\n title={t('meeting status title')}\n maxHeight={false}\n info={\n <div className='flex items-center gap-2'>\n <span title='Joined'>{self?.joined ? 'Active' : 'Inactive'}</span>\n {users?.length !== undefined && <span title='Users'>{users?.length ?? 0} User(s)</span>}\n </div>\n }\n >\n <div className='flex flex-col gap-2 overflow-y-auto'>\n <div className='flex items-row gap-2'>\n <Input.Root>\n <Input.Label classNames={'text-sm'}>{t('show webrtc stats title')}</Input.Label>\n <Input.Checkbox checked={showDetailedWebRTCStats} onCheckedChange={handleShowDetailedWebRTCStats} />\n </Input.Root>\n </div>\n <Json\n classNames='text-sm'\n data={{\n users,\n activities: state?.call?.activities,\n ...(showDetailedWebRTCStats\n ? {\n webrtc: {\n connectionState: state?.media.peer?.session?.peerConnection.connectionState,\n iceConnectionState: state?.media.peer?.session?.peerConnection.iceConnectionState,\n stats,\n },\n }\n : {}),\n tracks: state?.media.peer?.session?.peerConnection.getTransceivers().map((transceiver) => {\n const track =\n transceiver.direction === 'recvonly' ? transceiver.receiver.track : transceiver.sender.track;\n return {\n id: track?.id,\n kind: track?.kind,\n direction: transceiver.direction,\n enabled: track?.enabled,\n muted: track?.muted,\n readyState: track?.readyState,\n settings: track?.getSettings(),\n };\n }),\n callsServiceHistory: state?.media.peer?.history.get(),\n }}\n />\n </div>\n </Panel>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React from 'react';\n\nimport { useCapability } from '@dxos/app-framework';\n\nimport { ChannelContainer } from './ChannelContainer';\nimport { ThreadCapabilities } from '../capabilities';\n\nexport const CallSidebar = () => {\n const call = useCapability(ThreadCapabilities.CallManager);\n return <ChannelContainer roomId={call.roomId} />;\n};\n\nexport default CallSidebar;\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useCallback, useMemo } from 'react';\n\nimport {\n Capabilities,\n LayoutAction,\n createIntent,\n useCapability,\n useCapabilities,\n useIntentDispatcher,\n} from '@dxos/app-framework';\nimport { Filter, Obj, Query, Relation } from '@dxos/echo';\nimport { fullyQualifiedId, getSpace, useQuery } from '@dxos/react-client/echo';\nimport { useIdentity } from '@dxos/react-client/halo';\nimport { useThemeContext, useTranslation } from '@dxos/react-ui';\nimport { useAttended } from '@dxos/react-ui-attention';\nimport { StackItem } from '@dxos/react-ui-stack';\nimport { Tabs } from '@dxos/react-ui-tabs';\nimport { AnchoredTo } from '@dxos/schema';\n\nimport { ThreadCapabilities } from '../capabilities';\nimport { CommentsContainer } from '../components';\nimport { THREAD_PLUGIN } from '../meta';\nimport { ThreadAction, ThreadType } from '../types';\n\nexport const ThreadComplementary = ({ subject }: { subject: any }) => {\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const identity = useIdentity();\n const { t } = useTranslation(THREAD_PLUGIN);\n const { tx } = useThemeContext();\n const subjectId = fullyQualifiedId(subject);\n\n const { state, getViewState } = useCapability(ThreadCapabilities.MutableState);\n const drafts = state.drafts[subjectId];\n const viewState = useMemo(() => getViewState(subjectId), [getViewState, subjectId]);\n const { showResolvedThreads } = viewState;\n const onChangeViewState = useCallback(\n (nextValue: string) => {\n viewState.showResolvedThreads = nextValue === 'all';\n },\n [viewState],\n );\n\n const anchorSorts = useCapabilities(Capabilities.AnchorSort);\n const sort = useMemo(\n () => anchorSorts.find(({ key }) => key === Obj.getTypename(subject))?.sort,\n [anchorSorts, subject],\n );\n\n const space = getSpace(subject);\n const objectsAnchoredTo = useQuery(space, Query.select(Filter.ids(subject.id)).targetOf(AnchoredTo));\n const anchors = objectsAnchoredTo\n .toSorted((a, b) => sort?.(a, b) ?? 0)\n .filter((anchor) => Obj.instanceOf(ThreadType, Relation.getSource(anchor)))\n .concat(drafts ?? []);\n\n const attended = useAttended();\n\n const handleAttend = useCallback(\n (anchor: AnchoredTo) => {\n const thread = Relation.getSource(anchor) as ThreadType;\n const threadId = fullyQualifiedId(thread);\n\n if (state.current !== threadId) {\n state.current = threadId;\n\n // TODO(wittjosiah): Should this be a thread-specific intent?\n // The layout doesn't know about threads and this working depends on other plugins conditionally handling it.\n // This may be overloading this intent or highjacking its intended purpose.\n void dispatch(\n createIntent(LayoutAction.ScrollIntoView, {\n part: 'current',\n subject: fullyQualifiedId(subject),\n options: {\n cursor: anchor.anchor,\n ref: threadId,\n },\n }),\n );\n }\n },\n [state.current, dispatch, subject],\n );\n\n const handleComment = useCallback(\n async (anchor: AnchoredTo, text: string) => {\n await dispatch(\n createIntent(ThreadAction.AddMessage, { anchor, subject, sender: { identityDid: identity?.did }, text }),\n );\n\n const thread = Relation.getSource(anchor) as ThreadType;\n state.current = fullyQualifiedId(thread);\n },\n [dispatch, identity, subject],\n );\n\n const handleResolve = useCallback(\n (anchor: AnchoredTo) =>\n dispatch(createIntent(ThreadAction.ToggleResolved, { thread: Relation.getSource(anchor) as ThreadType })),\n [dispatch],\n );\n\n const handleThreadDelete = useCallback(\n (anchor: AnchoredTo) => dispatch(createIntent(ThreadAction.Delete, { anchor, subject })),\n [dispatch, subject],\n );\n\n const handleMessageDelete = useCallback(\n (anchor: AnchoredTo, messageId: string) =>\n dispatch(createIntent(ThreadAction.DeleteMessage, { anchor, subject, messageId })),\n [dispatch, subject],\n );\n\n const comments = (\n <CommentsContainer\n anchors={anchors}\n currentId={attended.includes(subjectId) ? state.current : undefined}\n showResolvedThreads={showResolvedThreads}\n onAttend={handleAttend}\n onComment={handleComment}\n onResolve={handleResolve}\n onMessageDelete={handleMessageDelete}\n onThreadDelete={handleThreadDelete}\n />\n );\n\n return (\n <StackItem.Content toolbar>\n <Tabs.Root\n value={showResolvedThreads ? 'all' : 'unresolved'}\n orientation='horizontal'\n classNames='contents [&_[role=\"tabpanel\"]]:min-bs-0 [&_[role=\"tabpanel\"]]:overflow-y-auto [&_[role=\"tabpanel\"]]:scrollbar-thin'\n onValueChange={onChangeViewState}\n >\n <Tabs.Tablist classNames={tx('toolbar.root', 'toolbar', {})}>\n <Tabs.Tab value='unresolved' classNames='text-sm'>\n {t('show unresolved label')}\n </Tabs.Tab>\n <Tabs.Tab value='all' classNames='text-sm'>\n {t('show all label')}\n </Tabs.Tab>\n </Tabs.Tablist>\n <Tabs.Tabpanel value='all'>{showResolvedThreads && comments}</Tabs.Tabpanel>\n <Tabs.Tabpanel value='unresolved'>{!showResolvedThreads && comments}</Tabs.Tabpanel>\n </Tabs.Root>\n </StackItem.Content>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\n\nexport const ChannelContainer = lazy(() => import('./ChannelContainer'));\nexport const ChatContainer = lazy(() => import('./ChatContainer'));\n\n// TODO(wittjosiah): Suspense boundary for sidebar?\nexport * from './Call';\nexport * from './CallDebugPanel';\nexport * from './CallSidebar';\nexport * from './CommentContainer';\nexport * from './CommentsContainer';\nexport * from './MessageContainer';\nexport * from './ThreadComplementary';\nexport * from './ThreadSettings';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { CheckCircle, X } from '@phosphor-icons/react';\nimport React, { useCallback, useMemo, useRef, useState } from 'react';\n\nimport { Relation } from '@dxos/echo';\nimport { RefArray } from '@dxos/live-object';\nimport { fullyQualifiedId, getSpace, useMembers } from '@dxos/react-client/echo';\nimport { useIdentity } from '@dxos/react-client/halo';\nimport { Button, Tag, Tooltip, useThemeContext, useTranslation } from '@dxos/react-ui';\nimport { createBasicExtensions, createThemeExtensions, listener } from '@dxos/react-ui-editor';\nimport {\n getSize,\n hoverableControlItem,\n hoverableControls,\n hoverableFocusedWithinControls,\n mx,\n} from '@dxos/react-ui-theme';\nimport {\n MessageTextbox,\n type MessageTextboxProps,\n Thread,\n ThreadFooter,\n ThreadHeading,\n type ThreadProps,\n} from '@dxos/react-ui-thread';\nimport { type AnchoredTo } from '@dxos/schema';\nimport { isNonNullable } from '@dxos/util';\n\nimport { MessageContainer } from './MessageContainer';\nimport { command } from './command-extension';\nimport { useStatus } from '../hooks';\nimport { THREAD_PLUGIN } from '../meta';\nimport { type ThreadType } from '../types';\nimport { getMessageMetadata } from '../util';\n\nconst sizeClass = getSize(4);\n\n// TODO(thure): #8149\nconst commentControlClassNames = '!p-1 !min-bs-0 transition-opacity';\n\nconst ToggleResolvedButton = ({\n isResolved,\n onResolve,\n}: {\n isResolved: boolean | undefined;\n onResolve: () => void;\n}) => {\n const { t } = useTranslation(THREAD_PLUGIN);\n const label = t(isResolved ? 'mark as unresolved label' : 'mark as resolved label');\n return (\n <Tooltip.Trigger asChild content={label}>\n <Button\n variant='ghost'\n data-testid='thread.toggle-resolved'\n onClick={onResolve}\n classNames={[commentControlClassNames, !isResolved && hoverableControlItem]}\n >\n <span className='sr-only'>{label}</span>\n {isResolved ? <CheckCircle className={sizeClass} weight='fill' /> : <CheckCircle className={sizeClass} />}\n </Button>\n </Tooltip.Trigger>\n );\n};\n\nconst DeleteThreadButton = ({ onDelete }: { onDelete: () => void }) => {\n const { t } = useTranslation(THREAD_PLUGIN);\n const label = t('delete thread label');\n return (\n <Tooltip.Trigger asChild content={label}>\n <Button\n variant='ghost'\n data-testid='thread.delete'\n onClick={onDelete}\n classNames={[commentControlClassNames, hoverableControlItem]}\n >\n <span className='sr-only'>{label}</span>\n <X className={sizeClass} />\n </Button>\n </Tooltip.Trigger>\n );\n};\n\nexport type CommentContainerProps = {\n anchor: AnchoredTo;\n onAttend?: (anchor: AnchoredTo) => void;\n onComment?: (anchor: AnchoredTo, message: string) => void;\n onResolve?: (anchor: AnchoredTo) => void;\n onMessageDelete?: (anchor: AnchoredTo, messageId: string) => void;\n onThreadDelete?: (anchor: AnchoredTo) => void;\n} & Pick<ThreadProps, 'current'>;\n\nexport const CommentContainer = ({\n anchor,\n current,\n onAttend,\n onComment,\n onResolve,\n onMessageDelete,\n onThreadDelete,\n}: CommentContainerProps) => {\n const identity = useIdentity()!;\n const space = getSpace(anchor);\n const members = useMembers(space?.key);\n const detached = !anchor.anchor;\n const thread = Relation.getSource(anchor) as ThreadType;\n const activity = useStatus(space, fullyQualifiedId(thread));\n const { t } = useTranslation(THREAD_PLUGIN);\n const threadScrollRef = useRef<HTMLDivElement | null>(null);\n const { themeMode } = useThemeContext();\n\n const textboxMetadata = getMessageMetadata(fullyQualifiedId(thread), identity);\n // TODO(wittjosiah): This is a hack to reset the editor after a message is sent.\n const [_count, _setCount] = useState(0);\n const rerenderEditor = () => _setCount((count) => count + 1);\n const messageRef = useRef('');\n const extensions = useMemo(\n () => [\n createBasicExtensions({ placeholder: t('message placeholder') }),\n createThemeExtensions({ themeMode }),\n listener({ onChange: (text) => (messageRef.current = text) }),\n command,\n ],\n [_count],\n );\n\n // TODO(thure): Factor out.\n const scrollToEnd = (behavior: ScrollBehavior) =>\n setTimeout(() => threadScrollRef.current?.scrollIntoView({ behavior, block: 'end' }), 10);\n\n const handleAttend = useCallback(() => onAttend?.(anchor), [onAttend, anchor]);\n const handleResolve = useCallback(() => onResolve?.(anchor), [onResolve, anchor]);\n const handleMessageDelete = useCallback((id: string) => onMessageDelete?.(anchor, id), [onMessageDelete, anchor]);\n const handleThreadDelete = useCallback(() => onThreadDelete?.(anchor), [onThreadDelete, anchor]);\n\n const handleComment: MessageTextboxProps['onSend'] = useCallback(() => {\n if (!messageRef.current) {\n return false;\n }\n\n onComment?.(anchor, messageRef.current);\n messageRef.current = '';\n scrollToEnd('instant');\n rerenderEditor();\n\n return true;\n }, [anchor, identity]);\n\n return (\n <Thread onClickCapture={handleAttend} onFocusCapture={handleAttend} current={current} id={fullyQualifiedId(thread)}>\n <div\n role='none'\n className={mx(\n 'col-span-2 grid grid-cols-[var(--rail-size)_1fr_min-content]',\n hoverableControls,\n hoverableFocusedWithinControls,\n )}\n >\n {detached ? (\n <Tooltip.Trigger asChild content={t('detached thread label')} side='top'>\n <ThreadHeading detached>{thread.name}</ThreadHeading>\n </Tooltip.Trigger>\n ) : (\n <ThreadHeading>{thread.name}</ThreadHeading>\n )}\n <div className='flex flex-row items-center pli-1'>\n {thread.status === 'staged' && <Tag palette='neutral'>{t('draft button')}</Tag>}\n {onResolve && !(thread?.status === 'staged') && (\n <ToggleResolvedButton isResolved={thread?.status === 'resolved'} onResolve={handleResolve} />\n )}\n {onThreadDelete && <DeleteThreadButton onDelete={handleThreadDelete} />}\n </div>\n </div>\n {/** TODO(dmaretskyi): How's `thread.messages` undefined? */}\n {RefArray.targets(thread.messages?.filter(isNonNullable) ?? []).map((message) => (\n <MessageContainer\n key={message.id}\n editable\n message={message}\n members={members}\n onDelete={handleMessageDelete}\n />\n ))}\n {/*\n TODO(wittjosiah): Can't autofocus this generally.\n There can be multiple threads with inputs and they can't all be focused.\n Also, it steals focus from documents when first rendered.\n Need to find a way to autofocus in one scenario only: when a new thread is created.\n */}\n <MessageTextbox extensions={extensions} onSend={handleComment} {...textboxMetadata} />\n <ThreadFooter activity={activity}>{t('activity message')}</ThreadFooter>\n {/* NOTE(thure): This can’t also be the `overflow-anchor` because `ScrollArea` injects an interceding node that contains this necessary ref’d element. */}\n <div role='none' className='bs-px -mbs-px' ref={threadScrollRef} />\n </Thread>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useEffect } from 'react';\n\nimport { Relation } from '@dxos/echo';\nimport { fullyQualifiedId } from '@dxos/react-client/echo';\nimport { Callout, Icon, Trans, useTranslation } from '@dxos/react-ui';\nimport { type AnchoredTo } from '@dxos/schema';\n\nimport { CommentContainer, type CommentContainerProps } from './CommentContainer';\nimport { THREAD_PLUGIN } from '../meta';\nimport { type ThreadType } from '../types';\n\nexport type ThreadsContainerProps = Omit<CommentContainerProps, 'anchor' | 'current'> & {\n anchors: AnchoredTo[];\n currentId?: string;\n showResolvedThreads?: boolean;\n};\n\n/**\n * Comment threads.\n */\nexport const CommentsContainer = ({ anchors, currentId, showResolvedThreads, ...props }: ThreadsContainerProps) => {\n const { t } = useTranslation(THREAD_PLUGIN);\n // TODO(wittjosiah): There seems to be a race between thread and anchor being deleted.\n const filteredAnchors = showResolvedThreads\n ? anchors.filter((anchor) => !!Relation.getSource(anchor))\n : anchors.filter((anchor) => {\n const thread = Relation.getSource(anchor);\n return thread && thread.status !== 'resolved';\n });\n\n useEffect(() => {\n if (currentId) {\n document.getElementById(currentId)?.scrollIntoView({ behavior: 'smooth', block: 'end' });\n }\n }, [currentId]);\n\n if (filteredAnchors.length === 0) {\n return (\n <div role='none' className='plb-cardSpacingBlock pli-cardSpacingInline'>\n <Callout.Root>\n <Callout.Title>\n <Trans\n {...{\n t,\n i18nKey: 'no comments message',\n components: {\n commentIcon: <Icon icon='ph--chat-text--regular' size={4} classNames='inline-block' />,\n },\n }}\n />\n </Callout.Title>\n </Callout.Root>\n </div>\n );\n }\n\n return filteredAnchors.map((anchor) => {\n const thread = Relation.getSource(anchor) as ThreadType;\n const threadId = fullyQualifiedId(thread);\n return <CommentContainer key={threadId} anchor={anchor} current={currentId === threadId} {...props} />;\n });\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\n// import { useTranslation } from '@dxos/react-ui';\nimport { DeprecatedFormContainer } from '@dxos/react-ui-form';\n\n// import { THREAD_PLUGIN } from '../meta';\nimport type { ThreadSettingsProps } from '../types';\n\nexport const ThreadSettings = ({ settings }: { settings: ThreadSettingsProps }) => {\n // const { t } = useTranslation(THREAD_PLUGIN);\n\n return <DeprecatedFormContainer></DeprecatedFormContainer>;\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_react", "import_app_framework", "import_echo", "import_react_ui", "import_halo", "CallDebugPanel", "state", "users", "call", "self", "t", "useTranslation", "THREAD_PLUGIN", "open", "setOpen", "useState", "handleToggle", "showDetailedWebRTCStats", "setShowDetailedWebRTCStats", "handleShowDetailedWebRTCStats", "webrtcStats", "useMemo", "WebRTCStats", "getStatsInterval", "stats", "setStats", "useEffect", "pc", "media", "peer", "session", "peerConnection", "handleStats", "data", "added", "addConnection", "peerId", "connectionId", "on", "removeConnection", "removeListener", "error", "log", "React", "Panel", "id", "icon", "onToggle", "title", "maxHeight", "info", "div", "className", "span", "joined", "length", "undefined", "Input", "Root", "Label", "classNames", "Checkbox", "checked", "onCheckedChange", "Json", "activities", "webrtc", "connectionState", "iceConnectionState", "tracks", "getTransceivers", "map", "transceiver", "track", "direction", "receiver", "sender", "kind", "enabled", "muted", "readyState", "settings", "getSettings", "callsServiceHistory", "history", "get", "CallSidebar", "useCapability", "ThreadCapabilities", "CallManager", "ChannelContainer", "roomId", "sizeClass", "getSize", "commentControlClassNames", "ToggleResolvedButton", "isResolved", "onResolve", "label", "Tooltip", "Trigger", "asChild", "content", "Button", "variant", "data-testid", "onClick", "hoverableControlItem", "CheckCircle", "weight", "DeleteThreadButton", "onDelete", "X", "CommentContainer", "anchor", "current", "onAttend", "onComment", "onMessageDelete", "onThreadDelete", "identity", "useIdentity", "space", "getSpace", "members", "useMembers", "key", "detached", "thread", "Relation", "getSource", "activity", "useStatus", "fullyQualifiedId", "threadScrollRef", "useRef", "themeMode", "useThemeContext", "textboxMetadata", "getMessageMetadata", "_count", "_setCount", "rerenderEditor", "count", "messageRef", "extensions", "createBasicExtensions", "placeholder", "createThemeExtensions", "listener", "onChange", "text", "command", "scrollToEnd", "behavior", "setTimeout", "scrollIntoView", "block", "handleAttend", "useCallback", "handleResolve", "handleMessageDelete", "handleThreadDelete", "handleComment", "Thread", "onClickCapture", "onFocusCapture", "role", "mx", "hoverableControls", "hoverableFocusedWithinControls", "side", "ThreadHeading", "name", "status", "Tag", "palette", "RefArray", "targets", "messages", "filter", "isNonNullable", "message", "MessageContainer", "editable", "MessageTextbox", "onSend", "ThreadFooter", "ref", "CommentsContainer", "anchors", "currentId", "showResolvedThreads", "props", "filteredAnchors", "document", "getElementById", "Callout", "Title", "Trans", "i18nKey", "components", "commentIcon", "Icon", "size", "threadId", "ThreadSettings", "DeprecatedFormContainer", "lazy", "ChatContainer", "ThreadComplementary", "subject", "dispatchPromise", "dispatch", "useIntentDispatcher", "tx", "subjectId", "getViewState", "MutableState", "drafts", "viewState", "onChangeViewState", "nextValue", "anchorSorts", "useCapabilities", "Capabilities", "AnchorSort", "sort", "find", "Obj", "getTypename", "objectsAnchoredTo", "useQuery", "Query", "select", "Filter", "ids", "targetOf", "AnchoredTo", "toSorted", "a", "b", "instanceOf", "ThreadType", "concat", "attended", "useAttended", "createIntent", "LayoutAction", "ScrollIntoView", "part", "options", "cursor", "ThreadAction", "AddMessage", "identityDid", "did", "ToggleResolved", "Delete", "messageId", "DeleteMessage", "comments", "includes", "StackItem", "Content", "toolbar", "Tabs", "value", "orientation", "onValueChange", "Tablist", "Tab", "Tabpanel"]
|
|
7
|
+
}
|