@dxos/plugin-thread 0.8.2-main.5885341 → 0.8.2-main.5ca3450
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/{ChatContainer-WC6KQDDU.mjs → ChatContainer-UTQWOBXM.mjs} +5 -5
- package/dist/lib/browser/ChatContainer-UTQWOBXM.mjs.map +7 -0
- package/dist/lib/browser/{app-graph-builder-6W4UKJDI.mjs → app-graph-builder-SQD3KQKB.mjs} +2 -2
- package/dist/lib/browser/app-graph-builder-SQD3KQKB.mjs.map +7 -0
- package/dist/lib/browser/{chunk-FY5OCUP6.mjs → chunk-2E5LHYLQ.mjs} +2 -2
- package/dist/lib/{node-esm/chunk-7DOPZH6Y.mjs.map → browser/chunk-2E5LHYLQ.mjs.map} +2 -2
- package/dist/lib/browser/{chunk-AYNXYEKP.mjs → chunk-32EIWOAL.mjs} +1 -1
- package/dist/lib/browser/{chunk-AYNXYEKP.mjs.map → chunk-32EIWOAL.mjs.map} +2 -2
- package/dist/lib/browser/chunk-AM4MYXGU.mjs +93 -0
- package/dist/lib/browser/chunk-AM4MYXGU.mjs.map +7 -0
- package/dist/lib/browser/chunk-UT6IV2FX.mjs +17 -0
- package/dist/lib/browser/index.mjs +8 -8
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-3UW6ROYT.mjs → intent-resolver-EDSAXXNW.mjs} +4 -4
- package/dist/lib/browser/intent-resolver-EDSAXXNW.mjs.map +7 -0
- package/dist/lib/browser/{markdown-7KXBXCUS.mjs → markdown-M4QAJXHG.mjs} +2 -2
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-F2AIYIUH.mjs → react-surface-FUWNPSKX.mjs} +6 -6
- package/dist/lib/browser/{settings-2VZ7S4SK.mjs → settings-SSYDISA6.mjs} +2 -2
- package/dist/lib/browser/types.mjs +1 -1
- package/dist/lib/node/{ChatContainer-LVYQ67PJ.cjs → ChatContainer-VO5B47V4.cjs} +11 -11
- package/dist/lib/node/ChatContainer-VO5B47V4.cjs.map +7 -0
- package/dist/lib/node/{app-graph-builder-HZNWT4QU.cjs → app-graph-builder-G45JDZWQ.cjs} +5 -5
- package/dist/lib/node/app-graph-builder-G45JDZWQ.cjs.map +7 -0
- package/dist/lib/node/{chunk-RIYLEDQ7.cjs → chunk-BUYO7P2A.cjs} +6 -6
- package/dist/lib/node/chunk-BUYO7P2A.cjs.map +7 -0
- package/dist/lib/node/{chunk-46BSFPBV.cjs → chunk-HG7J3YR3.cjs} +44 -44
- package/dist/lib/node/chunk-HG7J3YR3.cjs.map +7 -0
- package/dist/lib/node/{chunk-IX63EKGL.cjs → chunk-KYLJU47G.cjs} +9 -9
- package/dist/lib/node/{chunk-W25MBII2.cjs → chunk-NO6WQR36.cjs} +4 -4
- package/dist/lib/node/{chunk-W25MBII2.cjs.map → chunk-NO6WQR36.cjs.map} +2 -2
- package/dist/lib/node/index.cjs +15 -15
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/{intent-resolver-DC6HDNTX.cjs → intent-resolver-ECFDZLCG.cjs} +15 -15
- package/dist/lib/node/intent-resolver-ECFDZLCG.cjs.map +7 -0
- package/dist/lib/node/{markdown-L2WMCQKM.cjs → markdown-G5NDD5EJ.cjs} +7 -7
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-surface-GP5IH5LN.cjs → react-surface-G7GXAK5G.cjs} +17 -17
- package/dist/lib/node/{settings-7MGTJ46L.cjs → settings-PV6MGI52.cjs} +6 -6
- package/dist/lib/node/types.cjs +3 -3
- package/dist/lib/node/types.cjs.map +1 -1
- package/dist/lib/node-esm/{ChatContainer-WMOPMK5H.mjs → ChatContainer-IAX56SIL.mjs} +5 -5
- package/dist/lib/node-esm/ChatContainer-IAX56SIL.mjs.map +7 -0
- package/dist/lib/node-esm/{app-graph-builder-M3KK5QJH.mjs → app-graph-builder-25K4ELOR.mjs} +2 -2
- package/dist/lib/node-esm/app-graph-builder-25K4ELOR.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-7DOPZH6Y.mjs → chunk-CBAEGDBZ.mjs} +2 -2
- package/dist/lib/node-esm/chunk-CBAEGDBZ.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-T6E5EY7Z.mjs → chunk-IZWN4KAY.mjs} +1 -1
- package/dist/lib/node-esm/{chunk-T6E5EY7Z.mjs.map → chunk-IZWN4KAY.mjs.map} +2 -2
- package/dist/lib/node-esm/chunk-KUQP2ES3.mjs +19 -0
- package/dist/lib/node-esm/chunk-XTZJQJY4.mjs +94 -0
- package/dist/lib/node-esm/chunk-XTZJQJY4.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +8 -8
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-OAMDKGAA.mjs → intent-resolver-GHN5XIMY.mjs} +4 -4
- package/dist/lib/node-esm/intent-resolver-GHN5XIMY.mjs.map +7 -0
- package/dist/lib/node-esm/{markdown-ZKU23UVD.mjs → markdown-WMR5AZRI.mjs} +2 -2
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-45GRKLWG.mjs → react-surface-FSBMYEZJ.mjs} +6 -6
- package/dist/lib/node-esm/{settings-AJAZ3O47.mjs → settings-TJ53GIH3.mjs} +2 -2
- package/dist/lib/node-esm/types.mjs +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
- package/dist/types/src/capabilities/markdown.d.ts.map +1 -1
- package/dist/types/src/components/ChatContainer.d.ts.map +1 -1
- package/dist/types/src/components/CommentContainer.d.ts.map +1 -1
- package/dist/types/src/components/CommentsContainer.d.ts.map +1 -1
- package/dist/types/src/components/MessageContainer.d.ts +5 -4
- package/dist/types/src/components/MessageContainer.d.ts.map +1 -1
- package/dist/types/src/components/ThreadComplementary.d.ts.map +1 -1
- package/dist/types/src/components/ThreadSettings.d.ts.map +1 -1
- package/dist/types/src/components/testing.d.ts +48 -51
- package/dist/types/src/components/testing.d.ts.map +1 -1
- package/dist/types/src/components/types.d.ts +2 -2
- package/dist/types/src/components/types.d.ts.map +1 -1
- package/dist/types/src/extensions/threads.d.ts.map +1 -1
- package/dist/types/src/hooks/analytics.d.ts +2 -2
- package/dist/types/src/hooks/analytics.d.ts.map +1 -1
- package/dist/types/src/hooks/useStatus.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +2 -56
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types.d.ts +218 -57
- package/dist/types/src/types.d.ts.map +1 -1
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +35 -33
- package/src/ThreadPlugin.tsx +7 -7
- package/src/capabilities/app-graph-builder.ts +3 -3
- package/src/capabilities/intent-resolver.ts +2 -2
- package/src/components/Chat.stories.tsx +2 -2
- package/src/components/ChatContainer.tsx +3 -3
- package/src/components/Comments.stories.tsx +2 -2
- package/src/components/MessageContainer.tsx +9 -12
- package/src/components/testing.ts +2 -2
- package/src/components/types.ts +2 -2
- package/src/hooks/analytics.ts +6 -2
- package/src/types.ts +40 -40
- package/dist/lib/browser/ChatContainer-WC6KQDDU.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-6W4UKJDI.mjs.map +0 -7
- package/dist/lib/browser/chunk-FY5OCUP6.mjs.map +0 -7
- package/dist/lib/browser/chunk-Q66FBBJD.mjs +0 -17
- package/dist/lib/browser/chunk-WOG72DWE.mjs +0 -93
- package/dist/lib/browser/chunk-WOG72DWE.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-3UW6ROYT.mjs.map +0 -7
- package/dist/lib/node/ChatContainer-LVYQ67PJ.cjs.map +0 -7
- package/dist/lib/node/app-graph-builder-HZNWT4QU.cjs.map +0 -7
- package/dist/lib/node/chunk-46BSFPBV.cjs.map +0 -7
- package/dist/lib/node/chunk-RIYLEDQ7.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-DC6HDNTX.cjs.map +0 -7
- package/dist/lib/node-esm/ChatContainer-WMOPMK5H.mjs.map +0 -7
- package/dist/lib/node-esm/app-graph-builder-M3KK5QJH.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-E446MGLP.mjs +0 -94
- package/dist/lib/node-esm/chunk-E446MGLP.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-QUTIMZJ4.mjs +0 -19
- package/dist/lib/node-esm/intent-resolver-OAMDKGAA.mjs.map +0 -7
- /package/dist/lib/browser/{chunk-Q66FBBJD.mjs.map → chunk-UT6IV2FX.mjs.map} +0 -0
- /package/dist/lib/browser/{markdown-7KXBXCUS.mjs.map → markdown-M4QAJXHG.mjs.map} +0 -0
- /package/dist/lib/browser/{react-surface-F2AIYIUH.mjs.map → react-surface-FUWNPSKX.mjs.map} +0 -0
- /package/dist/lib/browser/{settings-2VZ7S4SK.mjs.map → settings-SSYDISA6.mjs.map} +0 -0
- /package/dist/lib/node/{chunk-IX63EKGL.cjs.map → chunk-KYLJU47G.cjs.map} +0 -0
- /package/dist/lib/node/{markdown-L2WMCQKM.cjs.map → markdown-G5NDD5EJ.cjs.map} +0 -0
- /package/dist/lib/node/{react-surface-GP5IH5LN.cjs.map → react-surface-G7GXAK5G.cjs.map} +0 -0
- /package/dist/lib/node/{settings-7MGTJ46L.cjs.map → settings-PV6MGI52.cjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-QUTIMZJ4.mjs.map → chunk-KUQP2ES3.mjs.map} +0 -0
- /package/dist/lib/node-esm/{markdown-ZKU23UVD.mjs.map → markdown-WMR5AZRI.mjs.map} +0 -0
- /package/dist/lib/node-esm/{react-surface-45GRKLWG.mjs.map → react-surface-FSBMYEZJ.mjs.map} +0 -0
- /package/dist/lib/node-esm/{settings-AJAZ3O47.mjs.map → settings-TJ53GIH3.mjs.map} +0 -0
|
@@ -16,13 +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(
|
|
19
|
+
var chunk_HG7J3YR3_exports = {};
|
|
20
|
+
__export(chunk_HG7J3YR3_exports, {
|
|
21
21
|
ThreadAction: () => ThreadAction,
|
|
22
22
|
ThreadSettingsSchema: () => ThreadSettingsSchema
|
|
23
23
|
});
|
|
24
|
-
module.exports = __toCommonJS(
|
|
24
|
+
module.exports = __toCommonJS(chunk_HG7J3YR3_exports);
|
|
25
25
|
var import_chunk_ONLWOUYZ = require("./chunk-ONLWOUYZ.cjs");
|
|
26
|
+
var import_effect = require("effect");
|
|
26
27
|
var import_echo_schema = require("@dxos/echo-schema");
|
|
27
28
|
var import_types = require("@dxos/plugin-space/types");
|
|
28
29
|
var import_echo = require("@dxos/react-client/echo");
|
|
@@ -30,84 +31,83 @@ var import_schema = require("@dxos/schema");
|
|
|
30
31
|
var ThreadAction;
|
|
31
32
|
(function(ThreadAction2) {
|
|
32
33
|
const THREAD_ACTION = `${import_chunk_ONLWOUYZ.THREAD_PLUGIN}/action`;
|
|
33
|
-
class CreateChannel extends
|
|
34
|
-
input:
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
name: import_echo_schema.S.optional(import_echo_schema.S.String)
|
|
34
|
+
class CreateChannel extends import_effect.Schema.TaggedClass()(`${THREAD_ACTION}/create-channel`, {
|
|
35
|
+
input: import_effect.Schema.Struct({
|
|
36
|
+
spaceId: import_echo_schema.SpaceIdSchema,
|
|
37
|
+
name: import_effect.Schema.optional(import_effect.Schema.String)
|
|
38
38
|
}),
|
|
39
|
-
output:
|
|
39
|
+
output: import_effect.Schema.Struct({
|
|
40
40
|
object: import_types.ChannelType
|
|
41
41
|
})
|
|
42
42
|
}) {
|
|
43
43
|
}
|
|
44
44
|
ThreadAction2.CreateChannel = CreateChannel;
|
|
45
|
-
class Create extends
|
|
46
|
-
input:
|
|
47
|
-
name:
|
|
48
|
-
cursor:
|
|
45
|
+
class Create extends import_effect.Schema.TaggedClass()(`${THREAD_ACTION}/create`, {
|
|
46
|
+
input: import_effect.Schema.Struct({
|
|
47
|
+
name: import_effect.Schema.optional(import_effect.Schema.String),
|
|
48
|
+
cursor: import_effect.Schema.String,
|
|
49
49
|
subject: import_echo.EchoObjectSchema
|
|
50
50
|
}),
|
|
51
|
-
output:
|
|
51
|
+
output: import_effect.Schema.Struct({
|
|
52
52
|
object: import_types.ThreadType
|
|
53
53
|
})
|
|
54
54
|
}) {
|
|
55
55
|
}
|
|
56
56
|
ThreadAction2.Create = Create;
|
|
57
|
-
class
|
|
58
|
-
input:
|
|
59
|
-
|
|
57
|
+
class Delete extends import_effect.Schema.TaggedClass()(`${THREAD_ACTION}/delete`, {
|
|
58
|
+
input: import_effect.Schema.Struct({
|
|
59
|
+
thread: import_types.ThreadType,
|
|
60
|
+
subject: import_echo.EchoObjectSchema,
|
|
61
|
+
cursor: import_effect.Schema.optional(import_effect.Schema.String)
|
|
60
62
|
}),
|
|
61
|
-
output:
|
|
63
|
+
output: import_effect.Schema.Void
|
|
62
64
|
}) {
|
|
63
65
|
}
|
|
64
|
-
ThreadAction2.
|
|
65
|
-
class
|
|
66
|
-
input:
|
|
67
|
-
|
|
66
|
+
ThreadAction2.Delete = Delete;
|
|
67
|
+
class Select extends import_effect.Schema.TaggedClass()(`${THREAD_ACTION}/select`, {
|
|
68
|
+
input: import_effect.Schema.Struct({
|
|
69
|
+
current: import_effect.Schema.String
|
|
68
70
|
}),
|
|
69
|
-
output:
|
|
71
|
+
output: import_effect.Schema.Void
|
|
70
72
|
}) {
|
|
71
73
|
}
|
|
72
|
-
ThreadAction2.
|
|
73
|
-
class
|
|
74
|
-
input:
|
|
75
|
-
thread: import_types.ThreadType
|
|
76
|
-
subject: import_echo.EchoObjectSchema,
|
|
77
|
-
cursor: import_echo_schema.S.optional(import_echo_schema.S.String)
|
|
74
|
+
ThreadAction2.Select = Select;
|
|
75
|
+
class ToggleResolved extends import_effect.Schema.TaggedClass()(`${THREAD_ACTION}/toggle-resolved`, {
|
|
76
|
+
input: import_effect.Schema.Struct({
|
|
77
|
+
thread: import_types.ThreadType
|
|
78
78
|
}),
|
|
79
|
-
output:
|
|
79
|
+
output: import_effect.Schema.Void
|
|
80
80
|
}) {
|
|
81
81
|
}
|
|
82
|
-
ThreadAction2.
|
|
83
|
-
class AddMessage extends
|
|
84
|
-
input:
|
|
82
|
+
ThreadAction2.ToggleResolved = ToggleResolved;
|
|
83
|
+
class AddMessage extends import_effect.Schema.TaggedClass()(`${THREAD_ACTION}/add-message`, {
|
|
84
|
+
input: import_effect.Schema.Struct({
|
|
85
85
|
subject: import_echo.EchoObjectSchema,
|
|
86
86
|
thread: import_types.ThreadType,
|
|
87
|
-
sender: import_schema.
|
|
88
|
-
text:
|
|
87
|
+
sender: import_schema.DataType.Actor,
|
|
88
|
+
text: import_effect.Schema.String
|
|
89
89
|
}),
|
|
90
|
-
output:
|
|
90
|
+
output: import_effect.Schema.Void
|
|
91
91
|
}) {
|
|
92
92
|
}
|
|
93
93
|
ThreadAction2.AddMessage = AddMessage;
|
|
94
|
-
class DeleteMessage extends
|
|
95
|
-
input:
|
|
94
|
+
class DeleteMessage extends import_effect.Schema.TaggedClass()(`${THREAD_ACTION}/delete-message`, {
|
|
95
|
+
input: import_effect.Schema.Struct({
|
|
96
96
|
thread: import_types.ThreadType,
|
|
97
97
|
subject: import_echo.EchoObjectSchema,
|
|
98
|
-
messageId:
|
|
99
|
-
message:
|
|
100
|
-
messageIndex:
|
|
98
|
+
messageId: import_effect.Schema.String,
|
|
99
|
+
message: import_effect.Schema.optional(import_schema.DataType.Message),
|
|
100
|
+
messageIndex: import_effect.Schema.optional(import_effect.Schema.Number)
|
|
101
101
|
}),
|
|
102
|
-
output:
|
|
102
|
+
output: import_effect.Schema.Void
|
|
103
103
|
}) {
|
|
104
104
|
}
|
|
105
105
|
ThreadAction2.DeleteMessage = DeleteMessage;
|
|
106
106
|
})(ThreadAction || (ThreadAction = {}));
|
|
107
|
-
var ThreadSettingsSchema =
|
|
107
|
+
var ThreadSettingsSchema = import_effect.Schema.mutable(import_effect.Schema.Struct({}));
|
|
108
108
|
// Annotate the CommonJS export names for ESM import in node:
|
|
109
109
|
0 && (module.exports = {
|
|
110
110
|
ThreadAction,
|
|
111
111
|
ThreadSettingsSchema
|
|
112
112
|
});
|
|
113
|
-
//# sourceMappingURL=chunk-
|
|
113
|
+
//# sourceMappingURL=chunk-HG7J3YR3.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/types.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { SpaceIdSchema } from '@dxos/echo-schema';\nimport { ChannelType, ThreadType } from '@dxos/plugin-space/types';\nimport { EchoObjectSchema } from '@dxos/react-client/echo';\nimport { DataType } from '@dxos/schema';\n\nimport { THREAD_PLUGIN } from './meta';\n\nexport namespace ThreadAction {\n const THREAD_ACTION = `${THREAD_PLUGIN}/action`;\n\n export class CreateChannel extends Schema.TaggedClass<CreateChannel>()(`${THREAD_ACTION}/create-channel`, {\n input: Schema.Struct({\n spaceId: SpaceIdSchema,\n name: Schema.optional(Schema.String),\n }),\n output: Schema.Struct({\n object: ChannelType,\n }),\n }) {}\n\n export class Create extends Schema.TaggedClass<Create>()(`${THREAD_ACTION}/create`, {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n cursor: Schema.String,\n subject: EchoObjectSchema,\n }),\n output: Schema.Struct({\n object: ThreadType,\n }),\n }) {}\n\n export class Delete extends Schema.TaggedClass<Delete>()(`${THREAD_ACTION}/delete`, {\n input: Schema.Struct({\n thread: ThreadType,\n subject: EchoObjectSchema,\n cursor: Schema.optional(Schema.String),\n }),\n output: Schema.Void,\n }) {}\n\n export class Select extends Schema.TaggedClass<Select>()(`${THREAD_ACTION}/select`, {\n input: Schema.Struct({\n current: Schema.String,\n }),\n output: Schema.Void,\n }) {}\n\n export class ToggleResolved extends Schema.TaggedClass<ToggleResolved>()(`${THREAD_ACTION}/toggle-resolved`, {\n input: Schema.Struct({\n thread: ThreadType,\n }),\n output: Schema.Void,\n }) {}\n\n export class AddMessage extends Schema.TaggedClass<AddMessage>()(`${THREAD_ACTION}/add-message`, {\n input: Schema.Struct({\n subject: EchoObjectSchema,\n thread: ThreadType,\n sender: DataType.Actor,\n text: Schema.String,\n }),\n output: Schema.Void,\n }) {}\n\n export class DeleteMessage extends Schema.TaggedClass<DeleteMessage>()(`${THREAD_ACTION}/delete-message`, {\n input: Schema.Struct({\n thread: ThreadType,\n subject: EchoObjectSchema,\n messageId: Schema.String,\n message: Schema.optional(DataType.Message),\n messageIndex: Schema.optional(Schema.Number),\n }),\n output: Schema.Void,\n }) {}\n}\n\nexport const ThreadSettingsSchema = Schema.mutable(Schema.Struct({}));\nexport type ThreadSettingsProps = Schema.Schema.Type<typeof ThreadSettingsSchema>;\n\nexport interface ThreadModel {\n root: ThreadType;\n}\n\ntype SubjectId = string;\nexport type ViewState = { showResolvedThreads: boolean };\nexport type ViewStore = Record<SubjectId, ViewState>;\n\nexport type ThreadState = {\n /** Current channel activity. */\n activities: Record<string, string | undefined>;\n /** In-memory draft threads. */\n drafts: Record<string, ThreadType[]>;\n current?: string | undefined;\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,oBAAuB;AAEvB,yBAA8B;AAC9B,mBAAwC;AACxC,kBAAiC;AACjC,oBAAyB;;UAIRA,eAAAA;AACf,QAAMC,gBAAgB,GAAGC,mCAAAA;EAElB,MAAMC,sBAAsBC,qBAAOC,YAAW,EAAkB,GAAGJ,aAAAA,mBAAgC;IACxGK,OAAOF,qBAAOG,OAAO;MACnBC,SAASC;MACTC,MAAMN,qBAAOO,SAASP,qBAAOQ,MAAM;IACrC,CAAA;IACAC,QAAQT,qBAAOG,OAAO;MACpBO,QAAQC;IACV,CAAA;EACF,CAAA,EAAA;EAAI;gBARSZ,gBAAAA;EAUN,MAAMa,eAAeZ,qBAAOC,YAAW,EAAW,GAAGJ,aAAAA,WAAwB;IAClFK,OAAOF,qBAAOG,OAAO;MACnBG,MAAMN,qBAAOO,SAASP,qBAAOQ,MAAM;MACnCK,QAAQb,qBAAOQ;MACfM,SAASC;IACX,CAAA;IACAN,QAAQT,qBAAOG,OAAO;MACpBO,QAAQM;IACV,CAAA;EACF,CAAA,EAAA;EAAI;gBATSJ,SAAAA;EAWN,MAAMK,eAAejB,qBAAOC,YAAW,EAAW,GAAGJ,aAAAA,WAAwB;IAClFK,OAAOF,qBAAOG,OAAO;MACnBe,QAAQF;MACRF,SAASC;MACTF,QAAQb,qBAAOO,SAASP,qBAAOQ,MAAM;IACvC,CAAA;IACAC,QAAQT,qBAAOmB;EACjB,CAAA,EAAA;EAAI;gBAPSF,SAAAA;EASN,MAAMG,eAAepB,qBAAOC,YAAW,EAAW,GAAGJ,aAAAA,WAAwB;IAClFK,OAAOF,qBAAOG,OAAO;MACnBkB,SAASrB,qBAAOQ;IAClB,CAAA;IACAC,QAAQT,qBAAOmB;EACjB,CAAA,EAAA;EAAI;gBALSC,SAAAA;EAON,MAAME,uBAAuBtB,qBAAOC,YAAW,EAAmB,GAAGJ,aAAAA,oBAAiC;IAC3GK,OAAOF,qBAAOG,OAAO;MACnBe,QAAQF;IACV,CAAA;IACAP,QAAQT,qBAAOmB;EACjB,CAAA,EAAA;EAAI;gBALSG,iBAAAA;EAON,MAAMC,mBAAmBvB,qBAAOC,YAAW,EAAe,GAAGJ,aAAAA,gBAA6B;IAC/FK,OAAOF,qBAAOG,OAAO;MACnBW,SAASC;MACTG,QAAQF;MACRQ,QAAQC,uBAASC;MACjBC,MAAM3B,qBAAOQ;IACf,CAAA;IACAC,QAAQT,qBAAOmB;EACjB,CAAA,EAAA;EAAI;gBARSI,aAAAA;EAUN,MAAMK,sBAAsB5B,qBAAOC,YAAW,EAAkB,GAAGJ,aAAAA,mBAAgC;IACxGK,OAAOF,qBAAOG,OAAO;MACnBe,QAAQF;MACRF,SAASC;MACTc,WAAW7B,qBAAOQ;MAClBsB,SAAS9B,qBAAOO,SAASkB,uBAASM,OAAO;MACzCC,cAAchC,qBAAOO,SAASP,qBAAOiC,MAAM;IAC7C,CAAA;IACAxB,QAAQT,qBAAOmB;EACjB,CAAA,EAAA;EAAI;gBATSS,gBAAAA;AAUf,GAnEiBhC,iBAAAA,eAAAA,CAAAA,EAAAA;AAqEV,IAAMsC,uBAAuBlC,qBAAOmC,QAAQnC,qBAAOG,OAAO,CAAC,CAAA,CAAA;",
|
|
6
|
+
"names": ["ThreadAction", "THREAD_ACTION", "THREAD_PLUGIN", "CreateChannel", "Schema", "TaggedClass", "input", "Struct", "spaceId", "SpaceIdSchema", "name", "optional", "String", "output", "object", "ChannelType", "Create", "cursor", "subject", "EchoObjectSchema", "ThreadType", "Delete", "thread", "Void", "Select", "current", "ToggleResolved", "AddMessage", "sender", "DataType", "Actor", "text", "DeleteMessage", "messageId", "message", "Message", "messageIndex", "Number", "ThreadSettingsSchema", "mutable"]
|
|
7
|
+
}
|
|
@@ -26,21 +26,21 @@ 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_KYLJU47G_exports = {};
|
|
30
|
+
__export(chunk_KYLJU47G_exports, {
|
|
31
31
|
AppGraphBuilder: () => AppGraphBuilder,
|
|
32
32
|
IntentResolver: () => IntentResolver,
|
|
33
33
|
Markdown: () => Markdown,
|
|
34
34
|
ReactSurface: () => ReactSurface,
|
|
35
35
|
ThreadState: () => ThreadState
|
|
36
36
|
});
|
|
37
|
-
module.exports = __toCommonJS(
|
|
37
|
+
module.exports = __toCommonJS(chunk_KYLJU47G_exports);
|
|
38
38
|
var import_app_framework = require("@dxos/app-framework");
|
|
39
|
-
var AppGraphBuilder = (0, import_app_framework.lazy)(() => import("./app-graph-builder-
|
|
40
|
-
var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-
|
|
41
|
-
var Markdown = (0, import_app_framework.lazy)(() => import("./markdown-
|
|
42
|
-
var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-
|
|
43
|
-
var ThreadSettings = (0, import_app_framework.lazy)(() => import("./settings-
|
|
39
|
+
var AppGraphBuilder = (0, import_app_framework.lazy)(() => import("./app-graph-builder-G45JDZWQ.cjs"));
|
|
40
|
+
var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-ECFDZLCG.cjs"));
|
|
41
|
+
var Markdown = (0, import_app_framework.lazy)(() => import("./markdown-G5NDD5EJ.cjs"));
|
|
42
|
+
var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-G7GXAK5G.cjs"));
|
|
43
|
+
var ThreadSettings = (0, import_app_framework.lazy)(() => import("./settings-PV6MGI52.cjs"));
|
|
44
44
|
var ThreadState = (0, import_app_framework.lazy)(() => import("./state-FOHMAVSU.cjs"));
|
|
45
45
|
// Annotate the CommonJS export names for ESM import in node:
|
|
46
46
|
0 && (module.exports = {
|
|
@@ -50,4 +50,4 @@ var ThreadState = (0, import_app_framework.lazy)(() => import("./state-FOHMAVSU.
|
|
|
50
50
|
ReactSurface,
|
|
51
51
|
ThreadState
|
|
52
52
|
});
|
|
53
|
-
//# sourceMappingURL=chunk-
|
|
53
|
+
//# sourceMappingURL=chunk-KYLJU47G.cjs.map
|
|
@@ -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 chunk_NO6WQR36_exports = {};
|
|
20
|
+
__export(chunk_NO6WQR36_exports, {
|
|
21
21
|
useOnEditAnalytics: () => useOnEditAnalytics,
|
|
22
22
|
useStatus: () => useStatus
|
|
23
23
|
});
|
|
24
|
-
module.exports = __toCommonJS(
|
|
24
|
+
module.exports = __toCommonJS(chunk_NO6WQR36_exports);
|
|
25
25
|
var import_react = require("react");
|
|
26
26
|
var import_react2 = require("react");
|
|
27
27
|
var import_app_framework = require("@dxos/app-framework");
|
|
@@ -84,4 +84,4 @@ var useOnEditAnalytics = (message, textBlock, editing) => {
|
|
|
84
84
|
useOnEditAnalytics,
|
|
85
85
|
useStatus
|
|
86
86
|
});
|
|
87
|
-
//# sourceMappingURL=chunk-
|
|
87
|
+
//# sourceMappingURL=chunk-NO6WQR36.cjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useStatus.ts", "../../../src/hooks/analytics.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { useEffect, useState } from 'react';\n\nimport { type Space } from '@dxos/react-client/echo';\n\n// TODO(burdon): Generalize and factor out.\nexport const useStatus = (space?: Space, channel?: string) => {\n const [processing, setProcessing] = useState(false);\n useEffect(() => {\n if (!space || !channel) {\n return;\n }\n\n const unsubscribe = space.listen(`status/${channel}`, (status) => {\n const { event } = status.payload ?? {};\n setProcessing(event === 'processing');\n });\n\n const t = setInterval(() => {\n setProcessing((prev: any) => {\n if (typeof prev?.ts === 'number' && Date.now() - prev.ts > 30_000) {\n return undefined;\n } else {\n return prev;\n }\n });\n }, 1_000);\n\n return () => {\n unsubscribe();\n clearInterval(t);\n };\n }, [space, channel]);\n\n return processing;\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { useCallback } from 'react';\n\nimport { createIntent, useIntentDispatcher } from '@dxos/app-framework';\nimport { type Live } from '@dxos/live-object';\nimport { ObservabilityAction } from '@dxos/plugin-observability/types';\nimport { getSpace } from '@dxos/react-client/echo';\nimport { useOnTransition } from '@dxos/react-ui';\nimport { type
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAIA,mBAAoC;ACApC,IAAAA,gBAA4B;AAE5B,2BAAkD;AAElD,mBAAoC;AACpC,kBAAyB;AACzB,sBAAgC;ADDzB,IAAMC,YAAY,CAACC,OAAeC,YAAAA;AACvC,QAAM,CAACC,YAAYC,aAAAA,QAAiBC,uBAAS,KAAA;AAC7CC,8BAAU,MAAA;AACR,QAAI,CAACL,SAAS,CAACC,SAAS;AACtB;IACF;AAEA,UAAMK,cAAcN,MAAMO,OAAO,UAAUN,OAAAA,IAAW,CAACO,WAAAA;AACrD,YAAM,EAAEC,MAAK,IAAKD,OAAOE,WAAW,CAAC;AACrCP,oBAAcM,UAAU,YAAA;IAC1B,CAAA;AAEA,UAAME,IAAIC,YAAY,MAAA;AACpBT,oBAAc,CAACU,SAAAA;AACb,YAAI,OAAOA,MAAMC,OAAO,YAAYC,KAAKC,IAAG,IAAKH,KAAKC,KAAK,KAAQ;AACjE,iBAAOG;QACT,OAAO;AACL,iBAAOJ;QACT;MACF,CAAA;IACF,GAAG,GAAA;AAEH,WAAO,MAAA;AACLP,kBAAAA;AACAY,oBAAcP,CAAAA;IAChB;EACF,GAAG;IAACX;IAAOC;GAAQ;AAEnB,SAAOC;AACT;ACzBO,IAAMiB,qBAAqB,
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { useEffect, useState } from 'react';\n\nimport { type Space } from '@dxos/react-client/echo';\n\n// TODO(burdon): Generalize and factor out.\nexport const useStatus = (space?: Space, channel?: string) => {\n const [processing, setProcessing] = useState(false);\n useEffect(() => {\n if (!space || !channel) {\n return;\n }\n\n const unsubscribe = space.listen(`status/${channel}`, (status) => {\n const { event } = status.payload ?? {};\n setProcessing(event === 'processing');\n });\n\n const t = setInterval(() => {\n setProcessing((prev: any) => {\n if (typeof prev?.ts === 'number' && Date.now() - prev.ts > 30_000) {\n return undefined;\n } else {\n return prev;\n }\n });\n }, 1_000);\n\n return () => {\n unsubscribe();\n clearInterval(t);\n };\n }, [space, channel]);\n\n return processing;\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { useCallback } from 'react';\n\nimport { createIntent, useIntentDispatcher } from '@dxos/app-framework';\nimport { type Live } from '@dxos/live-object';\nimport { ObservabilityAction } from '@dxos/plugin-observability/types';\nimport { getSpace } from '@dxos/react-client/echo';\nimport { useOnTransition } from '@dxos/react-ui';\nimport { type DataType } from '@dxos/schema';\n\nexport const useOnEditAnalytics = (\n message: Live<any>,\n textBlock: DataType.MessageBlock.Text | undefined,\n editing: boolean,\n) => {\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n\n const onEdit = useCallback(() => {\n const space = getSpace(message);\n if (!space || !textBlock) {\n return;\n }\n\n void dispatch(\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.message.update',\n properties: {\n spaceId: space.id,\n messageId: message.id,\n messageLength: textBlock?.text.length,\n },\n }),\n );\n }, [dispatch, message, textBlock]);\n\n useOnTransition(editing, true, false, onEdit);\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAIA,mBAAoC;ACApC,IAAAA,gBAA4B;AAE5B,2BAAkD;AAElD,mBAAoC;AACpC,kBAAyB;AACzB,sBAAgC;ADDzB,IAAMC,YAAY,CAACC,OAAeC,YAAAA;AACvC,QAAM,CAACC,YAAYC,aAAAA,QAAiBC,uBAAS,KAAA;AAC7CC,8BAAU,MAAA;AACR,QAAI,CAACL,SAAS,CAACC,SAAS;AACtB;IACF;AAEA,UAAMK,cAAcN,MAAMO,OAAO,UAAUN,OAAAA,IAAW,CAACO,WAAAA;AACrD,YAAM,EAAEC,MAAK,IAAKD,OAAOE,WAAW,CAAC;AACrCP,oBAAcM,UAAU,YAAA;IAC1B,CAAA;AAEA,UAAME,IAAIC,YAAY,MAAA;AACpBT,oBAAc,CAACU,SAAAA;AACb,YAAI,OAAOA,MAAMC,OAAO,YAAYC,KAAKC,IAAG,IAAKH,KAAKC,KAAK,KAAQ;AACjE,iBAAOG;QACT,OAAO;AACL,iBAAOJ;QACT;MACF,CAAA;IACF,GAAG,GAAA;AAEH,WAAO,MAAA;AACLP,kBAAAA;AACAY,oBAAcP,CAAAA;IAChB;EACF,GAAG;IAACX;IAAOC;GAAQ;AAEnB,SAAOC;AACT;ACzBO,IAAMiB,qBAAqB,CAChCC,SACAC,WACAC,YAAAA;AAEA,QAAM,EAAEC,iBAAiBC,SAAQ,QAAKC,0CAAAA;AAEtC,QAAMC,aAASC,2BAAY,MAAA;AACzB,UAAM3B,YAAQ4B,sBAASR,OAAAA;AACvB,QAAI,CAACpB,SAAS,CAACqB,WAAW;AACxB;IACF;AAEA,SAAKG,aACHK,mCAAaC,iCAAoBC,WAAW;MAC1CC,MAAM;MACNC,YAAY;QACVC,SAASlC,MAAMmC;QACfC,WAAWhB,QAAQe;QACnBE,eAAehB,WAAWiB,KAAKC;MACjC;IACF,CAAA,CAAA;EAEJ,GAAG;IAACf;IAAUJ;IAASC;GAAU;AAEjCmB,uCAAgBlB,SAAS,MAAM,OAAOI,MAAAA;AACxC;",
|
|
6
6
|
"names": ["import_react", "useStatus", "space", "channel", "processing", "setProcessing", "useState", "useEffect", "unsubscribe", "listen", "status", "event", "payload", "t", "setInterval", "prev", "ts", "Date", "now", "undefined", "clearInterval", "useOnEditAnalytics", "message", "textBlock", "editing", "dispatchPromise", "dispatch", "useIntentDispatcher", "onEdit", "useCallback", "getSpace", "createIntent", "ObservabilityAction", "SendEvent", "name", "properties", "spaceId", "id", "messageId", "messageLength", "text", "length", "useOnTransition"]
|
|
7
7
|
}
|
package/dist/lib/node/index.cjs
CHANGED
|
@@ -24,14 +24,14 @@ __export(node_exports, {
|
|
|
24
24
|
ThreadEvents: () => ThreadEvents,
|
|
25
25
|
ThreadPlugin: () => ThreadPlugin,
|
|
26
26
|
meta: () => import_chunk_ONLWOUYZ.meta,
|
|
27
|
-
useOnEditAnalytics: () =>
|
|
28
|
-
useStatus: () =>
|
|
27
|
+
useOnEditAnalytics: () => import_chunk_NO6WQR36.useOnEditAnalytics,
|
|
28
|
+
useStatus: () => import_chunk_NO6WQR36.useStatus
|
|
29
29
|
});
|
|
30
30
|
module.exports = __toCommonJS(node_exports);
|
|
31
|
-
var
|
|
31
|
+
var import_chunk_KYLJU47G = require("./chunk-KYLJU47G.cjs");
|
|
32
32
|
var import_chunk_NQ5DTPOY = require("./chunk-NQ5DTPOY.cjs");
|
|
33
|
-
var
|
|
34
|
-
var
|
|
33
|
+
var import_chunk_NO6WQR36 = require("./chunk-NO6WQR36.cjs");
|
|
34
|
+
var import_chunk_HG7J3YR3 = require("./chunk-HG7J3YR3.cjs");
|
|
35
35
|
var import_chunk_ONLWOUYZ = require("./chunk-ONLWOUYZ.cjs");
|
|
36
36
|
var import_app_framework = require("@dxos/app-framework");
|
|
37
37
|
var import_app_framework2 = require("@dxos/app-framework");
|
|
@@ -98,7 +98,7 @@ var ThreadPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_ON
|
|
|
98
98
|
// Should this be a different event?
|
|
99
99
|
// Should settings store be renamed to be more generic?
|
|
100
100
|
activatesOn: import_app_framework2.Events.SetupSettings,
|
|
101
|
-
activate:
|
|
101
|
+
activate: import_chunk_KYLJU47G.ThreadState
|
|
102
102
|
}),
|
|
103
103
|
(0, import_app_framework2.defineModule)({
|
|
104
104
|
id: `${import_chunk_ONLWOUYZ.meta.id}/module/translations`,
|
|
@@ -126,7 +126,7 @@ var ThreadPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_ON
|
|
|
126
126
|
}
|
|
127
127
|
}),
|
|
128
128
|
(0, import_app_framework2.contributes)(import_app_framework2.Capabilities.Metadata, {
|
|
129
|
-
id: import_schema.
|
|
129
|
+
id: import_schema.DataType.Message.typename,
|
|
130
130
|
metadata: {
|
|
131
131
|
// TODO(wittjosiah): Move out of metadata.
|
|
132
132
|
loadReferences: (message) => []
|
|
@@ -161,7 +161,7 @@ var ThreadPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_ON
|
|
|
161
161
|
activatesOn: import_plugin_client.ClientEvents.SetupSchema,
|
|
162
162
|
activate: () => (0, import_app_framework2.contributes)(import_plugin_space.SpaceCapabilities.ObjectForm, (0, import_types.defineObjectForm)({
|
|
163
163
|
objectSchema: import_types.ChannelType,
|
|
164
|
-
getIntent: (_, options) => (0, import_app_framework2.createIntent)(
|
|
164
|
+
getIntent: (_, options) => (0, import_app_framework2.createIntent)(import_chunk_HG7J3YR3.ThreadAction.CreateChannel, {
|
|
165
165
|
spaceId: options.space.id
|
|
166
166
|
})
|
|
167
167
|
}))
|
|
@@ -171,21 +171,21 @@ var ThreadPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_ON
|
|
|
171
171
|
activatesOn: import_plugin_client.ClientEvents.SetupSchema,
|
|
172
172
|
activate: () => (0, import_app_framework2.contributes)(import_plugin_client.ClientCapabilities.Schema, [
|
|
173
173
|
import_types.ThreadType,
|
|
174
|
-
import_schema.
|
|
175
|
-
import_schema.
|
|
174
|
+
import_schema.DataType.Message,
|
|
175
|
+
import_schema.DataType.MessageV1
|
|
176
176
|
])
|
|
177
177
|
}),
|
|
178
178
|
(0, import_app_framework2.defineModule)({
|
|
179
179
|
id: `${import_chunk_ONLWOUYZ.meta.id}/module/migration`,
|
|
180
180
|
activatesOn: import_plugin_client.ClientEvents.SetupMigration,
|
|
181
181
|
activate: () => (0, import_app_framework2.contributes)(import_plugin_client.ClientCapabilities.Migration, [
|
|
182
|
-
import_schema.
|
|
182
|
+
import_schema.DataType.MessageV1ToV2
|
|
183
183
|
])
|
|
184
184
|
}),
|
|
185
185
|
(0, import_app_framework2.defineModule)({
|
|
186
186
|
id: `${import_chunk_ONLWOUYZ.meta.id}/module/markdown`,
|
|
187
187
|
activatesOn: import_plugin_markdown.MarkdownEvents.SetupExtensions,
|
|
188
|
-
activate:
|
|
188
|
+
activate: import_chunk_KYLJU47G.Markdown
|
|
189
189
|
}),
|
|
190
190
|
(0, import_app_framework2.defineModule)({
|
|
191
191
|
id: `${import_chunk_ONLWOUYZ.meta.id}/module/react-surface`,
|
|
@@ -195,17 +195,17 @@ var ThreadPlugin = () => (0, import_app_framework2.definePlugin)(import_chunk_ON
|
|
|
195
195
|
import_plugin_space.ThreadEvents.SetupThread,
|
|
196
196
|
ThreadEvents.SetupActivity
|
|
197
197
|
],
|
|
198
|
-
activate:
|
|
198
|
+
activate: import_chunk_KYLJU47G.ReactSurface
|
|
199
199
|
}),
|
|
200
200
|
(0, import_app_framework2.defineModule)({
|
|
201
201
|
id: `${import_chunk_ONLWOUYZ.meta.id}/module/intent-resolver`,
|
|
202
202
|
activatesOn: import_app_framework2.Events.SetupIntentResolver,
|
|
203
|
-
activate:
|
|
203
|
+
activate: import_chunk_KYLJU47G.IntentResolver
|
|
204
204
|
}),
|
|
205
205
|
(0, import_app_framework2.defineModule)({
|
|
206
206
|
id: `${import_chunk_ONLWOUYZ.meta.id}/module/app-graph-builder`,
|
|
207
207
|
activatesOn: import_app_framework2.Events.SetupAppGraph,
|
|
208
|
-
activate:
|
|
208
|
+
activate: import_chunk_KYLJU47G.AppGraphBuilder
|
|
209
209
|
})
|
|
210
210
|
]);
|
|
211
211
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/events.ts", "../../../src/ThreadPlugin.tsx", "../../../src/translations.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Events } from '@dxos/app-framework';\n\nimport { THREAD_PLUGIN } from './meta';\n\nexport namespace ThreadEvents {\n export const SetupActivity = Events.createStateEvent(`${THREAD_PLUGIN}/setup-activity`);\n}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { MarkdownEvents } from '@dxos/plugin-markdown';\nimport { SpaceCapabilities, ThreadEvents } from '@dxos/plugin-space';\nimport { ChannelType, defineObjectForm, ThreadType } from '@dxos/plugin-space/types';\nimport { type
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAAuB;ACAvB,IAAAA,wBAA4F;AAC5F,2BAAiD;AACjD,6BAA+B;AAC/B,0BAAgD;AAChD,mBAA0D;AAC1D,
|
|
6
|
-
"names": ["import_app_framework", "import_types", "ThreadEvents", "SetupActivity", "Events", "createStateEvent", "THREAD_PLUGIN", "ChannelType", "typename", "ThreadPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "SetupSettings", "activate", "ThreadState", "SetupTranslations", "contributes", "Capabilities", "Translations", "translations", "threadTranslations", "SetupMetadata", "Metadata", "metadata", "icon", "ThreadType", "loadReferences", "thread", "RefArray", "loadAll", "messages", "
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Events } from '@dxos/app-framework';\n\nimport { THREAD_PLUGIN } from './meta';\n\nexport namespace ThreadEvents {\n export const SetupActivity = Events.createStateEvent(`${THREAD_PLUGIN}/setup-activity`);\n}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { MarkdownEvents } from '@dxos/plugin-markdown';\nimport { SpaceCapabilities, ThreadEvents } from '@dxos/plugin-space';\nimport { ChannelType, defineObjectForm, ThreadType } from '@dxos/plugin-space/types';\nimport { type AnyLiveObject, RefArray } from '@dxos/react-client/echo';\nimport { translations as threadTranslations } from '@dxos/react-ui-thread';\nimport { DataType } from '@dxos/schema';\n\nimport { AppGraphBuilder, IntentResolver, Markdown, ReactSurface, ThreadState } from './capabilities';\nimport { ThreadEvents as LocalThreadEvents } from './events';\nimport { meta, THREAD_ITEM } from './meta';\nimport translations from './translations';\nimport { ThreadAction } from './types';\n\n// TODO(Zan): Every instance of `cursor` should be replaced with `anchor`.\n// NOTE(burdon): Review/discuss CursorConverter semantics.\nexport const ThreadPlugin = () =>\n definePlugin(meta, [\n // TODO(wittjosiah): Currently not used but leaving because there will likely be settings for threads again.\n // defineModule({\n // id: `${meta.id}/module/settings`,\n // activatesOn: Events.SetupSettings,\n // activate: ThreadSettings,\n // }),\n defineModule({\n id: `${meta.id}/module/state`,\n // TODO(wittjosiah): Does not integrate with settings store.\n // Should this be a different event?\n // Should settings store be renamed to be more generic?\n activatesOn: Events.SetupSettings,\n activate: ThreadState,\n }),\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, [...translations, ...threadTranslations]),\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () => [\n contributes(Capabilities.Metadata, {\n id: ChannelType.typename,\n metadata: {\n icon: 'ph--hash--regular',\n },\n }),\n contributes(Capabilities.Metadata, {\n id: ThreadType.typename,\n metadata: {\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: async (thread: ThreadType) => await RefArray.loadAll(thread.messages ?? []),\n },\n }),\n contributes(Capabilities.Metadata, {\n id: DataType.Message.typename,\n metadata: {\n // TODO(wittjosiah): Move out of metadata.\n loadReferences: (message: DataType.Message) => [], // loadObjectReferences(message, (message) => [...message.parts, message.context]),\n },\n }),\n contributes(Capabilities.Metadata, {\n id: THREAD_ITEM,\n metadata: {\n parse: (item: AnyLiveObject<any>, type: string) => {\n switch (type) {\n case 'node':\n return { id: item.id, label: item.title, data: item };\n case 'object':\n return item;\n case 'view-object':\n return { id: `${item.id}-view`, object: item };\n }\n },\n },\n }),\n ],\n }),\n defineModule({\n id: `${meta.id}/module/object-form`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () =>\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: ChannelType,\n getIntent: (_, options) => createIntent(ThreadAction.CreateChannel, { spaceId: options.space.id }),\n }),\n ),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => contributes(ClientCapabilities.Schema, [ThreadType, DataType.Message, DataType.MessageV1]),\n }),\n defineModule({\n id: `${meta.id}/module/migration`,\n activatesOn: ClientEvents.SetupMigration,\n activate: () => contributes(ClientCapabilities.Migration, [DataType.MessageV1ToV2]),\n }),\n defineModule({\n id: `${meta.id}/module/markdown`,\n activatesOn: MarkdownEvents.SetupExtensions,\n activate: Markdown,\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n // TODO(wittjosiah): Should occur before the comments thread is loaded when surfaces activation is more granular.\n activatesBefore: [ThreadEvents.SetupThread, LocalThreadEvents.SetupActivity],\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-builder`,\n activatesOn: Events.SetupAppGraph,\n activate: AppGraphBuilder,\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { ChannelType } from '@dxos/plugin-space/types';\n\nimport { THREAD_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [ChannelType.typename]: {\n 'typename label': 'Channel',\n 'object name placeholder': 'New channel',\n },\n [THREAD_PLUGIN]: {\n 'plugin name': 'Threads',\n 'channel title label': 'Title',\n 'message placeholder': 'Reply…',\n 'activity message': 'Processing…',\n 'anonymous label': 'Anonymous',\n 'delete message block label': 'Delete message block',\n 'detached thread label': 'Referenced content was removed',\n 'delete thread label': 'Delete thread',\n 'thread deleted label': 'You deleted a thread.',\n 'message deleted label': 'You deleted a message.',\n 'comments heading': 'Comments',\n 'chat heading': 'Chat',\n 'draft button': 'DRAFT',\n 'no comments title': 'No comments (yet)',\n 'no comments message':\n 'To start a comment thread, select a range of text in a document and click the <commentIcon></commentIcon> Create comment button in the toolbar.',\n 'toggle show resolved': 'Show resolved',\n 'unnamed object threads label': 'Threads',\n 'mark as resolved label': 'Mark as resolved',\n 'mark as unresolved label': 'Mark as unresolved',\n 'save message label': 'Save',\n 'edit message label': 'Edit',\n 'delete message label': 'Delete message',\n 'open comments panel label': 'Show Comments',\n 'comments label': 'Comments',\n 'show all label': 'All comments',\n 'show unresolved label': 'Unresolved only',\n },\n },\n },\n];\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_app_framework", "import_types", "ThreadEvents", "SetupActivity", "Events", "createStateEvent", "THREAD_PLUGIN", "ChannelType", "typename", "ThreadPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "SetupSettings", "activate", "ThreadState", "SetupTranslations", "contributes", "Capabilities", "Translations", "translations", "threadTranslations", "SetupMetadata", "Metadata", "metadata", "icon", "ThreadType", "loadReferences", "thread", "RefArray", "loadAll", "messages", "DataType", "Message", "message", "THREAD_ITEM", "parse", "item", "type", "label", "title", "data", "object", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "getIntent", "_", "options", "createIntent", "ThreadAction", "CreateChannel", "spaceId", "space", "ClientCapabilities", "Schema", "MessageV1", "SetupMigration", "Migration", "MessageV1ToV2", "MarkdownEvents", "SetupExtensions", "Markdown", "SetupReactSurface", "activatesBefore", "SetupThread", "LocalThreadEvents", "ReactSurface", "SetupIntentResolver", "IntentResolver", "SetupAppGraph", "AppGraphBuilder"]
|
|
7
7
|
}
|
|
@@ -16,13 +16,13 @@ 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 intent_resolver_ECFDZLCG_exports = {};
|
|
20
|
+
__export(intent_resolver_ECFDZLCG_exports, {
|
|
21
21
|
default: () => intent_resolver_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
23
|
+
module.exports = __toCommonJS(intent_resolver_ECFDZLCG_exports);
|
|
24
24
|
var import_chunk_NQ5DTPOY = require("./chunk-NQ5DTPOY.cjs");
|
|
25
|
-
var
|
|
25
|
+
var import_chunk_HG7J3YR3 = require("./chunk-HG7J3YR3.cjs");
|
|
26
26
|
var import_chunk_ONLWOUYZ = require("./chunk-ONLWOUYZ.cjs");
|
|
27
27
|
var import_app_framework = require("@dxos/app-framework");
|
|
28
28
|
var import_echo_schema = require("@dxos/echo-schema");
|
|
@@ -38,7 +38,7 @@ var import_schema = require("@dxos/schema");
|
|
|
38
38
|
var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-thread/src/capabilities/intent-resolver.ts";
|
|
39
39
|
var intent_resolver_default = (context) => (0, import_app_framework.contributes)(import_app_framework.Capabilities.IntentResolver, [
|
|
40
40
|
(0, import_app_framework.createResolver)({
|
|
41
|
-
intent:
|
|
41
|
+
intent: import_chunk_HG7J3YR3.ThreadAction.CreateChannel,
|
|
42
42
|
resolve: ({ spaceId, name }) => ({
|
|
43
43
|
data: {
|
|
44
44
|
object: (0, import_echo.live)(import_types3.ChannelType, {
|
|
@@ -53,7 +53,7 @@ var intent_resolver_default = (context) => (0, import_app_framework.contributes)
|
|
|
53
53
|
})
|
|
54
54
|
}),
|
|
55
55
|
(0, import_app_framework.createResolver)({
|
|
56
|
-
intent:
|
|
56
|
+
intent: import_chunk_HG7J3YR3.ThreadAction.Create,
|
|
57
57
|
resolve: ({ name, cursor, subject }) => {
|
|
58
58
|
if (subject?.threads === void 0) {
|
|
59
59
|
try {
|
|
@@ -91,7 +91,7 @@ var intent_resolver_default = (context) => (0, import_app_framework.contributes)
|
|
|
91
91
|
object: thread
|
|
92
92
|
},
|
|
93
93
|
intents: [
|
|
94
|
-
(0, import_app_framework.createIntent)(
|
|
94
|
+
(0, import_app_framework.createIntent)(import_chunk_HG7J3YR3.ThreadAction.Select, {
|
|
95
95
|
current: (0, import_echo.fullyQualifiedId)(thread)
|
|
96
96
|
}),
|
|
97
97
|
(0, import_app_framework.createIntent)(import_types.DeckAction.ChangeCompanion, {
|
|
@@ -103,14 +103,14 @@ var intent_resolver_default = (context) => (0, import_app_framework.contributes)
|
|
|
103
103
|
}
|
|
104
104
|
}),
|
|
105
105
|
(0, import_app_framework.createResolver)({
|
|
106
|
-
intent:
|
|
106
|
+
intent: import_chunk_HG7J3YR3.ThreadAction.Select,
|
|
107
107
|
resolve: ({ current }) => {
|
|
108
108
|
const { state } = context.requestCapability(import_chunk_NQ5DTPOY.ThreadCapabilities.MutableState);
|
|
109
109
|
state.current = current;
|
|
110
110
|
}
|
|
111
111
|
}),
|
|
112
112
|
(0, import_app_framework.createResolver)({
|
|
113
|
-
intent:
|
|
113
|
+
intent: import_chunk_HG7J3YR3.ThreadAction.ToggleResolved,
|
|
114
114
|
resolve: ({ thread }) => {
|
|
115
115
|
if (thread.status === "active" || thread.status === void 0) {
|
|
116
116
|
thread.status = "resolved";
|
|
@@ -142,7 +142,7 @@ var intent_resolver_default = (context) => (0, import_app_framework.contributes)
|
|
|
142
142
|
}
|
|
143
143
|
}),
|
|
144
144
|
(0, import_app_framework.createResolver)({
|
|
145
|
-
intent:
|
|
145
|
+
intent: import_chunk_HG7J3YR3.ThreadAction.Delete,
|
|
146
146
|
resolve: ({ subject, thread }, undo) => {
|
|
147
147
|
const { state } = context.requestCapability(import_chunk_NQ5DTPOY.ThreadCapabilities.MutableState);
|
|
148
148
|
const subjectId = (0, import_echo.fullyQualifiedId)(subject);
|
|
@@ -205,7 +205,7 @@ var intent_resolver_default = (context) => (0, import_app_framework.contributes)
|
|
|
205
205
|
}
|
|
206
206
|
}),
|
|
207
207
|
(0, import_app_framework.createResolver)({
|
|
208
|
-
intent:
|
|
208
|
+
intent: import_chunk_HG7J3YR3.ThreadAction.AddMessage,
|
|
209
209
|
resolve: ({ thread, subject, sender, text }) => {
|
|
210
210
|
const { state } = context.requestCapability(import_chunk_NQ5DTPOY.ThreadCapabilities.MutableState);
|
|
211
211
|
const subjectId = (0, import_echo.fullyQualifiedId)(subject);
|
|
@@ -220,7 +220,7 @@ var intent_resolver_default = (context) => (0, import_app_framework.contributes)
|
|
|
220
220
|
]
|
|
221
221
|
});
|
|
222
222
|
const intents = [];
|
|
223
|
-
const message = (0, import_echo.live)(import_schema.
|
|
223
|
+
const message = (0, import_echo.live)(import_schema.DataType.Message, {
|
|
224
224
|
sender,
|
|
225
225
|
created: (/* @__PURE__ */ new Date()).toISOString(),
|
|
226
226
|
blocks: [
|
|
@@ -261,7 +261,7 @@ var intent_resolver_default = (context) => (0, import_app_framework.contributes)
|
|
|
261
261
|
}
|
|
262
262
|
}),
|
|
263
263
|
(0, import_app_framework.createResolver)({
|
|
264
|
-
intent:
|
|
264
|
+
intent: import_chunk_HG7J3YR3.ThreadAction.DeleteMessage,
|
|
265
265
|
resolve: ({ subject, thread, messageId, message, messageIndex }, undo) => {
|
|
266
266
|
const space = (0, import_echo.getSpace)(subject);
|
|
267
267
|
(0, import_invariant.invariant)(space, "Space not found", {
|
|
@@ -282,7 +282,7 @@ var intent_resolver_default = (context) => (0, import_app_framework.contributes)
|
|
|
282
282
|
if (messageIndex2 === 0 && thread.messages.length === 1) {
|
|
283
283
|
return {
|
|
284
284
|
intents: [
|
|
285
|
-
(0, import_app_framework.createIntent)(
|
|
285
|
+
(0, import_app_framework.createIntent)(import_chunk_HG7J3YR3.ThreadAction.Delete, {
|
|
286
286
|
subject,
|
|
287
287
|
thread
|
|
288
288
|
})
|
|
@@ -336,4 +336,4 @@ var intent_resolver_default = (context) => (0, import_app_framework.contributes)
|
|
|
336
336
|
}
|
|
337
337
|
})
|
|
338
338
|
]);
|
|
339
|
-
//# sourceMappingURL=intent-resolver-
|
|
339
|
+
//# sourceMappingURL=intent-resolver-ECFDZLCG.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/intent-resolver.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, createResolver, type PluginsContext } from '@dxos/app-framework';\nimport { ObjectId, Ref } from '@dxos/echo-schema';\nimport { invariant } from '@dxos/invariant';\nimport { DXN, QueueSubspaceTags } from '@dxos/keys';\nimport { refFromDXN } from '@dxos/live-object';\nimport { log } from '@dxos/log';\nimport { ATTENDABLE_PATH_SEPARATOR, DeckAction } from '@dxos/plugin-deck/types';\nimport { ObservabilityAction } from '@dxos/plugin-observability/types';\nimport { ChannelType, ThreadType } from '@dxos/plugin-space/types';\nimport { live, fullyQualifiedId, getSpace, makeRef } from '@dxos/react-client/echo';\nimport { DataType } from '@dxos/schema';\n\nimport { ThreadCapabilities } from './capabilities';\nimport { THREAD_PLUGIN } from '../meta';\nimport { ThreadAction } from '../types';\n\nexport default (context: PluginsContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: ThreadAction.CreateChannel,\n resolve: ({ spaceId, name }) => ({\n data: {\n object: live(ChannelType, {\n name,\n queue: refFromDXN(new DXN(DXN.kind.QUEUE, [QueueSubspaceTags.DATA, spaceId, ObjectId.random()])),\n }),\n },\n }),\n }),\n createResolver({\n intent: ThreadAction.Create,\n resolve: ({ name, cursor, subject }) => {\n // Seed the threads array if it does not exist.\n if (subject?.threads === undefined) {\n try {\n // Static schema will throw an error if subject does not support threads array property.\n subject.threads = [];\n } catch (err) {\n log.error('Subject does not support threads array', { typename: subject?.typename });\n return;\n }\n }\n\n const { state } = context.requestCapability(ThreadCapabilities.MutableState);\n const subjectId = fullyQualifiedId(subject);\n const thread = live(ThreadType, { name, anchor: cursor, messages: [], status: 'staged' });\n const draft = state.drafts[subjectId];\n if (draft) {\n draft.push(thread);\n } else {\n state.drafts[subjectId] = [thread];\n }\n\n return {\n data: { object: thread },\n intents: [\n createIntent(ThreadAction.Select, { current: fullyQualifiedId(thread) }),\n createIntent(DeckAction.ChangeCompanion, {\n primary: subjectId,\n companion: `${subjectId}${ATTENDABLE_PATH_SEPARATOR}comments`,\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: ThreadAction.Select,\n resolve: ({ current }) => {\n const { state } = context.requestCapability(ThreadCapabilities.MutableState);\n state.current = current;\n },\n }),\n createResolver({\n intent: ThreadAction.ToggleResolved,\n resolve: ({ thread }) => {\n if (thread.status === 'active' || thread.status === undefined) {\n thread.status = 'resolved';\n } else if (thread.status === 'resolved') {\n thread.status = 'active';\n }\n\n const space = getSpace(thread);\n invariant(space, 'Space not found');\n const spaceId = space.id;\n\n return {\n intents: [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.toggle-resolved',\n properties: {\n spaceId,\n threadId: thread.id,\n },\n }),\n ],\n };\n },\n }),\n createResolver({\n intent: ThreadAction.Delete,\n resolve: ({ subject, thread }, undo) => {\n const { state } = context.requestCapability(ThreadCapabilities.MutableState);\n const subjectId = fullyQualifiedId(subject);\n const draft = state.drafts[subjectId];\n if (draft) {\n // Check if we're deleting a draft; if so, remove it.\n const index = draft.findIndex((t) => t.id === thread.id);\n if (index !== -1) {\n draft.splice(index, 1);\n return;\n }\n }\n\n const space = getSpace(thread);\n if (!space || !subject.threads) {\n return;\n }\n\n if (!undo) {\n const index = subject.threads.findIndex((t: any) => t?.id === thread.id);\n const cursor = subject.threads[index]?.anchor;\n if (index !== -1) {\n subject.threads?.splice(index, 1);\n }\n\n space.db.remove(thread);\n\n return {\n undoable: {\n message: ['thread deleted label', { ns: THREAD_PLUGIN }],\n data: { cursor },\n },\n intents: [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.delete',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n },\n }),\n ],\n };\n } else {\n // TODO(wittjosiah): SDK should do this automatically.\n const savedThread = space.db.add(thread);\n subject.threads.push(savedThread);\n\n return {\n intents: [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.undo-delete',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n },\n }),\n ],\n };\n }\n },\n }),\n createResolver({\n intent: ThreadAction.AddMessage,\n resolve: ({ thread, subject, sender, text }) => {\n const { state } = context.requestCapability(ThreadCapabilities.MutableState);\n const subjectId = fullyQualifiedId(subject);\n const space = getSpace(subject);\n invariant(space, 'Space not found');\n const intents = [];\n\n const message = live(DataType.Message, {\n sender,\n created: new Date().toISOString(),\n blocks: [{ type: 'text', text }],\n // TODO(wittjosiah): Context based on attention.\n // context: context ? makeRef(context) : undefined,\n });\n thread.messages.push(makeRef(message));\n\n if (state.drafts[subjectId]?.find((t) => t === thread)) {\n // Move draft to document.\n thread.status = 'active';\n subject.threads ? subject.threads.push(makeRef(thread)) : (subject.threads = [makeRef(thread)]);\n state.drafts[subjectId] = state.drafts[subjectId]?.filter(({ id }) => id !== thread.id);\n intents.push(\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.create',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n },\n }),\n );\n }\n\n intents.push(\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.message.add',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n threadLength: thread.messages.length,\n messageId: message.id,\n messageLength: text.length,\n },\n }),\n );\n\n return { intents };\n },\n }),\n createResolver({\n intent: ThreadAction.DeleteMessage,\n resolve: ({ subject, thread, messageId, message, messageIndex }, undo) => {\n const space = getSpace(subject);\n invariant(space, 'Space not found');\n\n if (!undo) {\n const messageIndex = thread.messages.findIndex(Ref.hasObjectId(messageId));\n const message = thread.messages[messageIndex]?.target;\n if (!message) {\n return;\n }\n\n if (messageIndex === 0 && thread.messages.length === 1) {\n // If the message is the only message in the thread, delete the thread.\n return {\n intents: [createIntent(ThreadAction.Delete, { subject, thread })],\n };\n } else {\n thread.messages.splice(messageIndex, 1);\n }\n\n return {\n undoable: {\n message: ['message deleted label', { ns: THREAD_PLUGIN }],\n data: { message, messageIndex },\n },\n intents: [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.message.delete',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n messageId: message.id,\n },\n }),\n ],\n };\n } else {\n if (messageIndex === undefined || !message) {\n return;\n }\n\n thread.messages.splice(messageIndex, 0, makeRef(message));\n return {\n intents: [\n createIntent(ObservabilityAction.SendEvent, {\n name: 'threads.message.undo-delete',\n properties: {\n spaceId: space.id,\n threadId: thread.id,\n messageId: message.id,\n },\n }),\n ],\n };\n }\n },\n }),\n ]);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_types", "context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "ThreadAction", "CreateChannel", "resolve", "spaceId", "name", "data", "object", "live", "ChannelType", "queue", "refFromDXN", "DXN", "kind", "QUEUE", "QueueSubspaceTags", "DATA", "ObjectId", "random", "Create", "cursor", "subject", "threads", "undefined", "err", "log", "error", "typename", "state", "requestCapability", "ThreadCapabilities", "MutableState", "subjectId", "fullyQualifiedId", "thread", "ThreadType", "anchor", "messages", "status", "draft", "drafts", "push", "intents", "createIntent", "Select", "current", "DeckAction", "ChangeCompanion", "primary", "companion", "ATTENDABLE_PATH_SEPARATOR", "ToggleResolved", "space", "getSpace", "invariant", "id", "ObservabilityAction", "SendEvent", "properties", "threadId", "Delete", "undo", "index", "findIndex", "t", "splice", "db", "remove", "undoable", "message", "ns", "THREAD_PLUGIN", "savedThread", "add", "AddMessage", "sender", "text", "DataType", "Message", "created", "Date", "toISOString", "blocks", "type", "makeRef", "find", "filter", "threadLength", "length", "messageId", "messageLength", "DeleteMessage", "messageIndex", "Ref", "hasObjectId", "target"]
|
|
7
|
+
}
|
|
@@ -16,13 +16,13 @@ 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 markdown_G5NDD5EJ_exports = {};
|
|
20
|
+
__export(markdown_G5NDD5EJ_exports, {
|
|
21
21
|
default: () => markdown_default
|
|
22
22
|
});
|
|
23
|
-
module.exports = __toCommonJS(
|
|
23
|
+
module.exports = __toCommonJS(markdown_G5NDD5EJ_exports);
|
|
24
24
|
var import_chunk_NQ5DTPOY = require("./chunk-NQ5DTPOY.cjs");
|
|
25
|
-
var
|
|
25
|
+
var import_chunk_HG7J3YR3 = require("./chunk-HG7J3YR3.cjs");
|
|
26
26
|
var import_chunk_ONLWOUYZ = require("./chunk-ONLWOUYZ.cjs");
|
|
27
27
|
var import_app_framework = require("@dxos/app-framework");
|
|
28
28
|
var import_plugin_markdown = require("@dxos/plugin-markdown");
|
|
@@ -74,7 +74,7 @@ var threads = (state, doc, dispatch) => {
|
|
|
74
74
|
id: (0, import_echo.fullyQualifiedId)(doc),
|
|
75
75
|
onCreate: ({ cursor }) => {
|
|
76
76
|
const name = getName(doc, cursor);
|
|
77
|
-
void dispatch((0, import_app_framework2.createIntent)(
|
|
77
|
+
void dispatch((0, import_app_framework2.createIntent)(import_chunk_HG7J3YR3.ThreadAction.Create, {
|
|
78
78
|
cursor,
|
|
79
79
|
name,
|
|
80
80
|
subject: doc
|
|
@@ -103,7 +103,7 @@ var threads = (state, doc, dispatch) => {
|
|
|
103
103
|
onSelect: ({ selection }) => {
|
|
104
104
|
const current = selection.current ?? selection.closest;
|
|
105
105
|
if (current) {
|
|
106
|
-
void dispatch((0, import_app_framework2.createIntent)(
|
|
106
|
+
void dispatch((0, import_app_framework2.createIntent)(import_chunk_HG7J3YR3.ThreadAction.Select, {
|
|
107
107
|
current
|
|
108
108
|
}));
|
|
109
109
|
}
|
|
@@ -118,4 +118,4 @@ var markdown_default = (context) => (0, import_app_framework.contributes)(import
|
|
|
118
118
|
return threads(state, doc, dispatch);
|
|
119
119
|
}
|
|
120
120
|
]);
|
|
121
|
-
//# sourceMappingURL=markdown-
|
|
121
|
+
//# sourceMappingURL=markdown-G5NDD5EJ.cjs.map
|