@magmamath/students-features 0.3.0 → 0.3.1-rc.1
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/commonjs/features/chatbot/index.js +7 -0
- package/dist/commonjs/features/chatbot/index.js.map +1 -1
- package/dist/commonjs/features/chatbot/model/ChatBotMessageHandler.js +80 -0
- package/dist/commonjs/features/chatbot/model/ChatBotMessageHandler.js.map +1 -0
- package/dist/commonjs/features/chatbot/model/DefaultMessageCreator.js +48 -0
- package/dist/commonjs/features/chatbot/model/DefaultMessageCreator.js.map +1 -0
- package/dist/commonjs/features/chatbot/model/ThreadItem.js +29 -0
- package/dist/commonjs/features/chatbot/model/ThreadItem.js.map +1 -0
- package/dist/commonjs/features/chatbot/model/constants.js +10 -0
- package/dist/commonjs/features/chatbot/model/constants.js.map +1 -0
- package/dist/commonjs/features/chatbot/types/model.types.js.map +1 -1
- package/dist/module/features/chatbot/index.js +1 -0
- package/dist/module/features/chatbot/index.js.map +1 -1
- package/dist/module/features/chatbot/model/ChatBotMessageHandler.js +75 -0
- package/dist/module/features/chatbot/model/ChatBotMessageHandler.js.map +1 -0
- package/dist/module/features/chatbot/model/DefaultMessageCreator.js +43 -0
- package/dist/module/features/chatbot/model/DefaultMessageCreator.js.map +1 -0
- package/dist/module/features/chatbot/model/ThreadItem.js +24 -0
- package/dist/module/features/chatbot/model/ThreadItem.js.map +1 -0
- package/dist/module/features/chatbot/model/constants.js +6 -0
- package/dist/module/features/chatbot/model/constants.js.map +1 -0
- package/dist/module/features/chatbot/types/model.types.js.map +1 -1
- package/dist/typescript/commonjs/features/chatbot/index.d.ts +1 -0
- package/dist/typescript/commonjs/features/chatbot/index.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/chatbot/model/ChatBotMessageHandler.d.ts +31 -0
- package/dist/typescript/commonjs/features/chatbot/model/ChatBotMessageHandler.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/chatbot/model/DefaultMessageCreator.d.ts +21 -0
- package/dist/typescript/commonjs/features/chatbot/model/DefaultMessageCreator.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/chatbot/model/ThreadItem.d.ts +21 -0
- package/dist/typescript/commonjs/features/chatbot/model/ThreadItem.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/chatbot/model/constants.d.ts +4 -0
- package/dist/typescript/commonjs/features/chatbot/model/constants.d.ts.map +1 -0
- package/dist/typescript/commonjs/features/chatbot/model/translation.d.ts +2 -2
- package/dist/typescript/commonjs/features/chatbot/model/translation.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/chatbot/types/api.types.d.ts +15 -0
- package/dist/typescript/commonjs/features/chatbot/types/api.types.d.ts.map +1 -1
- package/dist/typescript/commonjs/features/chatbot/types/model.types.d.ts +13 -9
- package/dist/typescript/commonjs/features/chatbot/types/model.types.d.ts.map +1 -1
- package/dist/typescript/commonjs/lib/helpers/types.d.ts +1 -1
- package/dist/typescript/commonjs/lib/helpers/types.d.ts.map +1 -1
- package/dist/typescript/module/features/chatbot/index.d.ts +1 -0
- package/dist/typescript/module/features/chatbot/index.d.ts.map +1 -1
- package/dist/typescript/module/features/chatbot/model/ChatBotMessageHandler.d.ts +31 -0
- package/dist/typescript/module/features/chatbot/model/ChatBotMessageHandler.d.ts.map +1 -0
- package/dist/typescript/module/features/chatbot/model/DefaultMessageCreator.d.ts +21 -0
- package/dist/typescript/module/features/chatbot/model/DefaultMessageCreator.d.ts.map +1 -0
- package/dist/typescript/module/features/chatbot/model/ThreadItem.d.ts +21 -0
- package/dist/typescript/module/features/chatbot/model/ThreadItem.d.ts.map +1 -0
- package/dist/typescript/module/features/chatbot/model/constants.d.ts +4 -0
- package/dist/typescript/module/features/chatbot/model/constants.d.ts.map +1 -0
- package/dist/typescript/module/features/chatbot/model/translation.d.ts +2 -2
- package/dist/typescript/module/features/chatbot/model/translation.d.ts.map +1 -1
- package/dist/typescript/module/features/chatbot/types/api.types.d.ts +15 -0
- package/dist/typescript/module/features/chatbot/types/api.types.d.ts.map +1 -1
- package/dist/typescript/module/features/chatbot/types/model.types.d.ts +13 -9
- package/dist/typescript/module/features/chatbot/types/model.types.d.ts.map +1 -1
- package/dist/typescript/module/lib/helpers/types.d.ts +1 -1
- package/dist/typescript/module/lib/helpers/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/features/chatbot/index.ts +1 -0
- package/src/features/chatbot/model/ChatBotMessageHandler.ts +106 -0
- package/src/features/chatbot/model/DefaultMessageCreator.ts +57 -0
- package/src/features/chatbot/model/ThreadItem.ts +28 -0
- package/src/features/chatbot/model/constants.ts +3 -0
- package/src/features/chatbot/model/translation.ts +2 -2
- package/src/features/chatbot/types/api.types.ts +18 -0
- package/src/features/chatbot/types/model.types.ts +15 -8
- package/src/lib/helpers/types.ts +1 -1
|
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "AudioStatus", {
|
|
|
9
9
|
return _t2sTypes.AudioStatus;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
+
Object.defineProperty(exports, "ChatMessageHandler", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _ChatBotMessageHandler.ChatMessageHandler;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
12
18
|
Object.defineProperty(exports, "Chatbot", {
|
|
13
19
|
enumerable: true,
|
|
14
20
|
get: function () {
|
|
@@ -31,4 +37,5 @@ var _Chatbot = require("./components/Chatbot.js");
|
|
|
31
37
|
var _ChatBotModel = require("./model/ChatBotModel.js");
|
|
32
38
|
var _t2sTypes = require("./types/t2s.types.js");
|
|
33
39
|
var _modelTypes = require("./types/model.types.js");
|
|
40
|
+
var _ChatBotMessageHandler = require("./model/ChatBotMessageHandler.js");
|
|
34
41
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Chatbot","require","_ChatBotModel","_t2sTypes","_modelTypes"],"sourceRoot":"../../../../src","sources":["features/chatbot/index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_Chatbot","require","_ChatBotModel","_t2sTypes","_modelTypes","_ChatBotMessageHandler"],"sourceRoot":"../../../../src","sources":["features/chatbot/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AAOA,IAAAI,sBAAA,GAAAJ,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ChatMessageHandler = void 0;
|
|
7
|
+
var _ThreadItem = require("./ThreadItem.js");
|
|
8
|
+
var _effector = require("effector/effector.umd");
|
|
9
|
+
var _constants = require("./constants.js");
|
|
10
|
+
class ChatMessageHandler {
|
|
11
|
+
threads = new Map();
|
|
12
|
+
currentKey = '';
|
|
13
|
+
currentBinding = null;
|
|
14
|
+
constructor({
|
|
15
|
+
drawBoardAdapter,
|
|
16
|
+
api,
|
|
17
|
+
messagesLimit = _constants.CHAT_BOT_MODEL_DEFAULTS.THREAD_MESSAGES_LIMIT,
|
|
18
|
+
messages
|
|
19
|
+
}) {
|
|
20
|
+
this.api = api;
|
|
21
|
+
this.drawBoardAdapter = drawBoardAdapter;
|
|
22
|
+
this.messagesLimit = messagesLimit;
|
|
23
|
+
this.defaultMessages = messages;
|
|
24
|
+
}
|
|
25
|
+
bindKeyStore($store) {
|
|
26
|
+
this.currentBinding?.();
|
|
27
|
+
this.currentBinding = $store.watch(value => {
|
|
28
|
+
this.currentKey = value;
|
|
29
|
+
});
|
|
30
|
+
return this;
|
|
31
|
+
}
|
|
32
|
+
async getThreadItem() {
|
|
33
|
+
const key = this.currentKey;
|
|
34
|
+
let threadItem = this.threads.get(key);
|
|
35
|
+
if (threadItem) return threadItem;
|
|
36
|
+
try {
|
|
37
|
+
const strokes = await this.drawBoardAdapter.getVisibleStrokes();
|
|
38
|
+
threadItem = new _ThreadItem.ThreadItem({
|
|
39
|
+
strokes
|
|
40
|
+
});
|
|
41
|
+
} catch {
|
|
42
|
+
threadItem = new _ThreadItem.ThreadItem();
|
|
43
|
+
}
|
|
44
|
+
this.threads.set(key, threadItem);
|
|
45
|
+
return threadItem;
|
|
46
|
+
}
|
|
47
|
+
postMessageFx = async ({
|
|
48
|
+
problemAnswer,
|
|
49
|
+
problem,
|
|
50
|
+
answer,
|
|
51
|
+
language
|
|
52
|
+
}) => {
|
|
53
|
+
const threadItem = await this.getThreadItem();
|
|
54
|
+
const result = await this.api.getHint({
|
|
55
|
+
...threadItem.getNextHintProps(),
|
|
56
|
+
correctAnswer: problemAnswer,
|
|
57
|
+
problemDescription: problem,
|
|
58
|
+
userAnswer: answer,
|
|
59
|
+
language
|
|
60
|
+
});
|
|
61
|
+
threadItem.hints.push(result.message);
|
|
62
|
+
const nextOptions = threadItem.hints.length < this.messagesLimit ? [this.defaultMessages.anotherHintOption] : [];
|
|
63
|
+
return {
|
|
64
|
+
message: result.message,
|
|
65
|
+
options: nextOptions,
|
|
66
|
+
threadId: '',
|
|
67
|
+
endMessage: !nextOptions.length
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
resetThread = (0, _effector.createEffect)(({
|
|
71
|
+
key
|
|
72
|
+
}) => {
|
|
73
|
+
this.threads.delete(key);
|
|
74
|
+
});
|
|
75
|
+
resetAll() {
|
|
76
|
+
this.threads.clear();
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.ChatMessageHandler = ChatMessageHandler;
|
|
80
|
+
//# sourceMappingURL=ChatBotMessageHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_ThreadItem","require","_effector","_constants","ChatMessageHandler","threads","Map","currentKey","currentBinding","constructor","drawBoardAdapter","api","messagesLimit","CHAT_BOT_MODEL_DEFAULTS","THREAD_MESSAGES_LIMIT","messages","defaultMessages","bindKeyStore","$store","watch","value","getThreadItem","key","threadItem","get","strokes","getVisibleStrokes","ThreadItem","set","postMessageFx","problemAnswer","problem","answer","language","result","getHint","getNextHintProps","correctAnswer","problemDescription","userAnswer","hints","push","message","nextOptions","length","anotherHintOption","options","threadId","endMessage","resetThread","createEffect","delete","resetAll","clear","exports"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/ChatBotMessageHandler.ts"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AAQA,IAAAE,UAAA,GAAAF,OAAA;AAeO,MAAMG,kBAAkB,CAAC;EAGbC,OAAO,GAAG,IAAIC,GAAG,CAAqB,CAAC;EAGhDC,UAAU,GAAG,EAAE;EACfC,cAAc,GAAwB,IAAI;EAI3CC,WAAWA,CAAC;IACjBC,gBAAgB;IAChBC,GAAG;IACHC,aAAa,GAAGC,kCAAuB,CAACC,qBAAqB;IAC7DC;EACuB,CAAC,EAAE;IAC1B,IAAI,CAACJ,GAAG,GAAGA,GAAG;IACd,IAAI,CAACD,gBAAgB,GAAGA,gBAAgB;IACxC,IAAI,CAACE,aAAa,GAAGA,aAAa;IAClC,IAAI,CAACI,eAAe,GAAGD,QAAQ;EACjC;EAEOE,YAAYA,CAACC,MAAqB,EAAE;IACzC,IAAI,CAACV,cAAc,GAAG,CAAC;IACvB,IAAI,CAACA,cAAc,GAAGU,MAAM,CAACC,KAAK,CAAEC,KAAK,IAAK;MAC5C,IAAI,CAACb,UAAU,GAAGa,KAAK;IACzB,CAAC,CAAC;IACF,OAAO,IAAI;EACb;EAEA,MAAcC,aAAaA,CAAA,EAAG;IAC5B,MAAMC,GAAG,GAAG,IAAI,CAACf,UAAU;IAC3B,IAAIgB,UAAU,GAAG,IAAI,CAAClB,OAAO,CAACmB,GAAG,CAACF,GAAG,CAAC;IACtC,IAAIC,UAAU,EAAE,OAAOA,UAAU;IACjC,IAAI;MACF,MAAME,OAAO,GAAG,MAAM,IAAI,CAACf,gBAAgB,CAACgB,iBAAiB,CAAC,CAAC;MAC/DH,UAAU,GAAG,IAAII,sBAAU,CAAC;QAAEF;MAAQ,CAAC,CAAC;IAC1C,CAAC,CAAC,MAAM;MACNF,UAAU,GAAG,IAAII,sBAAU,CAAC,CAAC;IAC/B;IACA,IAAI,CAACtB,OAAO,CAACuB,GAAG,CAACN,GAAG,EAAEC,UAAU,CAAC;IACjC,OAAOA,UAAU;EACnB;EAEgBM,aAAa,GAAG,MAAAA,CAAO;IACrCC,aAAa;IACbC,OAAO;IACPC,MAAM;IACNC;EACkB,CAAC,KAAmC;IACtD,MAAMV,UAAU,GAAG,MAAM,IAAI,CAACF,aAAa,CAAC,CAAC;IAE7C,MAAMa,MAAM,GAAG,MAAM,IAAI,CAACvB,GAAG,CAACwB,OAAO,CAAC;MACpC,GAAGZ,UAAU,CAACa,gBAAgB,CAAC,CAAC;MAChCC,aAAa,EAAEP,aAAa;MAC5BQ,kBAAkB,EAAEP,OAAO;MAC3BQ,UAAU,EAAEP,MAAM;MAClBC;IACF,CAAC,CAAC;IAEFV,UAAU,CAACiB,KAAK,CAACC,IAAI,CAACP,MAAM,CAACQ,OAAO,CAAC;IACrC,MAAMC,WAAW,GACfpB,UAAU,CAACiB,KAAK,CAACI,MAAM,GAAG,IAAI,CAAChC,aAAa,GAAG,CAAC,IAAI,CAACI,eAAe,CAAC6B,iBAAiB,CAAC,GAAG,EAAE;IAE9F,OAAO;MACLH,OAAO,EAAER,MAAM,CAACQ,OAAO;MACvBI,OAAO,EAAEH,WAAW;MACpBI,QAAQ,EAAE,EAAE;MACZC,UAAU,EAAE,CAACL,WAAW,CAACC;IAC3B,CAAC;EACH,CAAC;EAEMK,WAAW,GAAG,IAAAC,sBAAY,EAAC,CAAC;IAAE5B;EAAqB,CAAC,KAAK;IAC9D,IAAI,CAACjB,OAAO,CAAC8C,MAAM,CAAC7B,GAAG,CAAC;EAC1B,CAAC,CAAC;EAEK8B,QAAQA,CAAA,EAAG;IAChB,IAAI,CAAC/C,OAAO,CAACgD,KAAK,CAAC,CAAC;EACtB;AACF;AAACC,OAAA,CAAAlD,kBAAA,GAAAA,kBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.DefaultMessagesCreator = void 0;
|
|
7
|
+
var _effector = require("effector");
|
|
8
|
+
class DefaultMessagesCreator {
|
|
9
|
+
languageChanged = (0, _effector.createEvent)();
|
|
10
|
+
list = new Map();
|
|
11
|
+
constructor({
|
|
12
|
+
textGetter
|
|
13
|
+
}) {
|
|
14
|
+
this.getter = textGetter;
|
|
15
|
+
this.languageChanged.watch(() => {
|
|
16
|
+
this.list.forEach((key, chatMessage) => {
|
|
17
|
+
if ('message' in chatMessage) {
|
|
18
|
+
chatMessage.message = this.getter(key);
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
chatMessage.text = this.getter(key);
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
createMessage(key, {
|
|
26
|
+
isOwn = false
|
|
27
|
+
} = {}) {
|
|
28
|
+
const message = {
|
|
29
|
+
id: this.list.size.toString(),
|
|
30
|
+
message: this.getter(key),
|
|
31
|
+
threadId: '',
|
|
32
|
+
options: [],
|
|
33
|
+
isOwnMessage: isOwn
|
|
34
|
+
};
|
|
35
|
+
this.list.set(message, key);
|
|
36
|
+
return message;
|
|
37
|
+
}
|
|
38
|
+
createOption(key) {
|
|
39
|
+
const option = {
|
|
40
|
+
text: this.getter(key),
|
|
41
|
+
promptKey: ''
|
|
42
|
+
};
|
|
43
|
+
this.list.set(option, key);
|
|
44
|
+
return option;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.DefaultMessagesCreator = DefaultMessagesCreator;
|
|
48
|
+
//# sourceMappingURL=DefaultMessageCreator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_effector","require","DefaultMessagesCreator","languageChanged","createEvent","list","Map","constructor","textGetter","getter","watch","forEach","key","chatMessage","message","text","createMessage","isOwn","id","size","toString","threadId","options","isOwnMessage","set","createOption","option","promptKey","exports"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/DefaultMessageCreator.ts"],"mappings":";;;;;;AACA,IAAAA,SAAA,GAAAC,OAAA;AAeO,MAAMC,sBAAsB,CAAmB;EACpCC,eAAe,GAAG,IAAAC,qBAAW,EAAC,CAAC;EAE9BC,IAAI,GAAG,IAAIC,GAAG,CAA8B,CAAC;EAG9DC,WAAWA,CAAC;IAAEC;EAA0C,CAAC,EAAE;IACzD,IAAI,CAACC,MAAM,GAAGD,UAAU;IAExB,IAAI,CAACL,eAAe,CAACO,KAAK,CAAC,MAAM;MAC/B,IAAI,CAACL,IAAI,CAACM,OAAO,CAAC,CAACC,GAAG,EAAEC,WAAW,KAAK;QACtC,IAAI,SAAS,IAAIA,WAAW,EAAE;UAC5BA,WAAW,CAACC,OAAO,GAAG,IAAI,CAACL,MAAM,CAACG,GAAG,CAAC;UACtC;QACF;QACAC,WAAW,CAACE,IAAI,GAAG,IAAI,CAACN,MAAM,CAACG,GAAG,CAAC;MACrC,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEOI,aAAaA,CAACJ,GAAM,EAAE;IAAEK,KAAK,GAAG;EAA8B,CAAC,GAAG,CAAC,CAAC,EAAE;IAC3E,MAAMH,OAAoB,GAAG;MAC3BI,EAAE,EAAE,IAAI,CAACb,IAAI,CAACc,IAAI,CAACC,QAAQ,CAAC,CAAC;MAC7BN,OAAO,EAAE,IAAI,CAACL,MAAM,CAACG,GAAG,CAAC;MACzBS,QAAQ,EAAE,EAAE;MACZC,OAAO,EAAE,EAAE;MACXC,YAAY,EAAEN;IAChB,CAAC;IACD,IAAI,CAACZ,IAAI,CAACmB,GAAG,CAACV,OAAO,EAAEF,GAAG,CAAC;IAC3B,OAAOE,OAAO;EAChB;EAEOW,YAAYA,CAACb,GAAM,EAAE;IAC1B,MAAMc,MAAkB,GAAG;MACzBX,IAAI,EAAE,IAAI,CAACN,MAAM,CAACG,GAAG,CAAC;MACtBe,SAAS,EAAE;IACb,CAAC;IACD,IAAI,CAACtB,IAAI,CAACmB,GAAG,CAACE,MAAM,EAAEd,GAAG,CAAC;IAC1B,OAAOc,MAAM;EACf;AACF;AAACE,OAAA,CAAA1B,sBAAA,GAAAA,sBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ThreadItem = void 0;
|
|
7
|
+
class ThreadItem {
|
|
8
|
+
hints = [];
|
|
9
|
+
constructor({
|
|
10
|
+
strokes
|
|
11
|
+
} = {}) {
|
|
12
|
+
this.strokes = strokes ?? null;
|
|
13
|
+
}
|
|
14
|
+
getNextHintProps() {
|
|
15
|
+
if (this.hints.length) {
|
|
16
|
+
return {
|
|
17
|
+
previousHint: this.hints[this.hints.length - 1]
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
if (this.strokes) {
|
|
21
|
+
return {
|
|
22
|
+
stroke: this.strokes
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
return {};
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.ThreadItem = ThreadItem;
|
|
29
|
+
//# sourceMappingURL=ThreadItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ThreadItem","hints","constructor","strokes","getNextHintProps","length","previousHint","stroke","exports"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/ThreadItem.ts"],"mappings":";;;;;;AAMO,MAAMA,UAAU,CAAC;EAENC,KAAK,GAAa,EAAE;EAE7BC,WAAWA,CAAC;IAAEC;EAAyB,CAAC,GAAG,CAAC,CAAC,EAAE;IACpD,IAAI,CAACA,OAAO,GAAGA,OAAO,IAAI,IAAI;EAChC;EAEOC,gBAAgBA,CAAA,EAAG;IACxB,IAAI,IAAI,CAACH,KAAK,CAACI,MAAM,EAAE;MACrB,OAAO;QACLC,YAAY,EAAE,IAAI,CAACL,KAAK,CAAC,IAAI,CAACA,KAAK,CAACI,MAAM,GAAG,CAAC;MAChD,CAAC;IACH;IAEA,IAAI,IAAI,CAACF,OAAO,EAAE;MAChB,OAAO;QAAEI,MAAM,EAAE,IAAI,CAACJ;MAAQ,CAAC;IACjC;IAEA,OAAO,CAAC,CAAC;EACX;AACF;AAACK,OAAA,CAAAR,UAAA,GAAAA,UAAA","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.CHAT_BOT_MODEL_DEFAULTS = void 0;
|
|
7
|
+
const CHAT_BOT_MODEL_DEFAULTS = exports.CHAT_BOT_MODEL_DEFAULTS = {
|
|
8
|
+
THREAD_MESSAGES_LIMIT: 3
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CHAT_BOT_MODEL_DEFAULTS","exports","THREAD_MESSAGES_LIMIT"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/constants.ts"],"mappings":";;;;;;AAAO,MAAMA,uBAAuB,GAAAC,OAAA,CAAAD,uBAAA,GAAG;EACrCE,qBAAqB,EAAE;AACzB,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MessageVariant","exports"],"sourceRoot":"../../../../../src","sources":["features/chatbot/types/model.types.ts"],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"names":["MessageVariant","exports"],"sourceRoot":"../../../../../src","sources":["features/chatbot/types/model.types.ts"],"mappings":";;;;;;IAgEYA,cAAc,GAAAC,OAAA,CAAAD,cAAA,0BAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
|
|
@@ -4,4 +4,5 @@ export { Chatbot } from "./components/Chatbot.js";
|
|
|
4
4
|
export { ChatbotModel } from "./model/ChatBotModel.js";
|
|
5
5
|
export { AudioStatus } from "./types/t2s.types.js";
|
|
6
6
|
export { MessageVariant } from "./types/model.types.js";
|
|
7
|
+
export { ChatMessageHandler } from "./model/ChatBotMessageHandler.js";
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Chatbot","ChatbotModel","AudioStatus","MessageVariant"],"sourceRoot":"../../../../src","sources":["features/chatbot/index.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,yBAAsB;AAC9C,SAASC,YAAY,QAAQ,yBAAsB;AACnD,SAASC,WAAW,QAA4B,sBAAmB;AACnE,SACEC,cAAc,QAIT,wBAAqB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Chatbot","ChatbotModel","AudioStatus","MessageVariant","ChatMessageHandler"],"sourceRoot":"../../../../src","sources":["features/chatbot/index.ts"],"mappings":";;AAAA,SAASA,OAAO,QAAQ,yBAAsB;AAC9C,SAASC,YAAY,QAAQ,yBAAsB;AACnD,SAASC,WAAW,QAA4B,sBAAmB;AACnE,SACEC,cAAc,QAIT,wBAAqB;AAE5B,SAASC,kBAAkB,QAAQ,kCAA+B","ignoreList":[]}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { ThreadItem } from "./ThreadItem.js";
|
|
4
|
+
import { createEffect } from 'effector/effector.umd';
|
|
5
|
+
import { CHAT_BOT_MODEL_DEFAULTS } from "./constants.js";
|
|
6
|
+
export class ChatMessageHandler {
|
|
7
|
+
threads = new Map();
|
|
8
|
+
currentKey = '';
|
|
9
|
+
currentBinding = null;
|
|
10
|
+
constructor({
|
|
11
|
+
drawBoardAdapter,
|
|
12
|
+
api,
|
|
13
|
+
messagesLimit = CHAT_BOT_MODEL_DEFAULTS.THREAD_MESSAGES_LIMIT,
|
|
14
|
+
messages
|
|
15
|
+
}) {
|
|
16
|
+
this.api = api;
|
|
17
|
+
this.drawBoardAdapter = drawBoardAdapter;
|
|
18
|
+
this.messagesLimit = messagesLimit;
|
|
19
|
+
this.defaultMessages = messages;
|
|
20
|
+
}
|
|
21
|
+
bindKeyStore($store) {
|
|
22
|
+
this.currentBinding?.();
|
|
23
|
+
this.currentBinding = $store.watch(value => {
|
|
24
|
+
this.currentKey = value;
|
|
25
|
+
});
|
|
26
|
+
return this;
|
|
27
|
+
}
|
|
28
|
+
async getThreadItem() {
|
|
29
|
+
const key = this.currentKey;
|
|
30
|
+
let threadItem = this.threads.get(key);
|
|
31
|
+
if (threadItem) return threadItem;
|
|
32
|
+
try {
|
|
33
|
+
const strokes = await this.drawBoardAdapter.getVisibleStrokes();
|
|
34
|
+
threadItem = new ThreadItem({
|
|
35
|
+
strokes
|
|
36
|
+
});
|
|
37
|
+
} catch {
|
|
38
|
+
threadItem = new ThreadItem();
|
|
39
|
+
}
|
|
40
|
+
this.threads.set(key, threadItem);
|
|
41
|
+
return threadItem;
|
|
42
|
+
}
|
|
43
|
+
postMessageFx = async ({
|
|
44
|
+
problemAnswer,
|
|
45
|
+
problem,
|
|
46
|
+
answer,
|
|
47
|
+
language
|
|
48
|
+
}) => {
|
|
49
|
+
const threadItem = await this.getThreadItem();
|
|
50
|
+
const result = await this.api.getHint({
|
|
51
|
+
...threadItem.getNextHintProps(),
|
|
52
|
+
correctAnswer: problemAnswer,
|
|
53
|
+
problemDescription: problem,
|
|
54
|
+
userAnswer: answer,
|
|
55
|
+
language
|
|
56
|
+
});
|
|
57
|
+
threadItem.hints.push(result.message);
|
|
58
|
+
const nextOptions = threadItem.hints.length < this.messagesLimit ? [this.defaultMessages.anotherHintOption] : [];
|
|
59
|
+
return {
|
|
60
|
+
message: result.message,
|
|
61
|
+
options: nextOptions,
|
|
62
|
+
threadId: '',
|
|
63
|
+
endMessage: !nextOptions.length
|
|
64
|
+
};
|
|
65
|
+
};
|
|
66
|
+
resetThread = createEffect(({
|
|
67
|
+
key
|
|
68
|
+
}) => {
|
|
69
|
+
this.threads.delete(key);
|
|
70
|
+
});
|
|
71
|
+
resetAll() {
|
|
72
|
+
this.threads.clear();
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=ChatBotMessageHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ThreadItem","createEffect","CHAT_BOT_MODEL_DEFAULTS","ChatMessageHandler","threads","Map","currentKey","currentBinding","constructor","drawBoardAdapter","api","messagesLimit","THREAD_MESSAGES_LIMIT","messages","defaultMessages","bindKeyStore","$store","watch","value","getThreadItem","key","threadItem","get","strokes","getVisibleStrokes","set","postMessageFx","problemAnswer","problem","answer","language","result","getHint","getNextHintProps","correctAnswer","problemDescription","userAnswer","hints","push","message","nextOptions","length","anotherHintOption","options","threadId","endMessage","resetThread","delete","resetAll","clear"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/ChatBotMessageHandler.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,iBAAc;AAEzC,SAASC,YAAY,QAAQ,uBAAuB;AAQpD,SAASC,uBAAuB,QAAQ,gBAAa;AAerD,OAAO,MAAMC,kBAAkB,CAAC;EAGbC,OAAO,GAAG,IAAIC,GAAG,CAAqB,CAAC;EAGhDC,UAAU,GAAG,EAAE;EACfC,cAAc,GAAwB,IAAI;EAI3CC,WAAWA,CAAC;IACjBC,gBAAgB;IAChBC,GAAG;IACHC,aAAa,GAAGT,uBAAuB,CAACU,qBAAqB;IAC7DC;EACuB,CAAC,EAAE;IAC1B,IAAI,CAACH,GAAG,GAAGA,GAAG;IACd,IAAI,CAACD,gBAAgB,GAAGA,gBAAgB;IACxC,IAAI,CAACE,aAAa,GAAGA,aAAa;IAClC,IAAI,CAACG,eAAe,GAAGD,QAAQ;EACjC;EAEOE,YAAYA,CAACC,MAAqB,EAAE;IACzC,IAAI,CAACT,cAAc,GAAG,CAAC;IACvB,IAAI,CAACA,cAAc,GAAGS,MAAM,CAACC,KAAK,CAAEC,KAAK,IAAK;MAC5C,IAAI,CAACZ,UAAU,GAAGY,KAAK;IACzB,CAAC,CAAC;IACF,OAAO,IAAI;EACb;EAEA,MAAcC,aAAaA,CAAA,EAAG;IAC5B,MAAMC,GAAG,GAAG,IAAI,CAACd,UAAU;IAC3B,IAAIe,UAAU,GAAG,IAAI,CAACjB,OAAO,CAACkB,GAAG,CAACF,GAAG,CAAC;IACtC,IAAIC,UAAU,EAAE,OAAOA,UAAU;IACjC,IAAI;MACF,MAAME,OAAO,GAAG,MAAM,IAAI,CAACd,gBAAgB,CAACe,iBAAiB,CAAC,CAAC;MAC/DH,UAAU,GAAG,IAAIrB,UAAU,CAAC;QAAEuB;MAAQ,CAAC,CAAC;IAC1C,CAAC,CAAC,MAAM;MACNF,UAAU,GAAG,IAAIrB,UAAU,CAAC,CAAC;IAC/B;IACA,IAAI,CAACI,OAAO,CAACqB,GAAG,CAACL,GAAG,EAAEC,UAAU,CAAC;IACjC,OAAOA,UAAU;EACnB;EAEgBK,aAAa,GAAG,MAAAA,CAAO;IACrCC,aAAa;IACbC,OAAO;IACPC,MAAM;IACNC;EACkB,CAAC,KAAmC;IACtD,MAAMT,UAAU,GAAG,MAAM,IAAI,CAACF,aAAa,CAAC,CAAC;IAE7C,MAAMY,MAAM,GAAG,MAAM,IAAI,CAACrB,GAAG,CAACsB,OAAO,CAAC;MACpC,GAAGX,UAAU,CAACY,gBAAgB,CAAC,CAAC;MAChCC,aAAa,EAAEP,aAAa;MAC5BQ,kBAAkB,EAAEP,OAAO;MAC3BQ,UAAU,EAAEP,MAAM;MAClBC;IACF,CAAC,CAAC;IAEFT,UAAU,CAACgB,KAAK,CAACC,IAAI,CAACP,MAAM,CAACQ,OAAO,CAAC;IACrC,MAAMC,WAAW,GACfnB,UAAU,CAACgB,KAAK,CAACI,MAAM,GAAG,IAAI,CAAC9B,aAAa,GAAG,CAAC,IAAI,CAACG,eAAe,CAAC4B,iBAAiB,CAAC,GAAG,EAAE;IAE9F,OAAO;MACLH,OAAO,EAAER,MAAM,CAACQ,OAAO;MACvBI,OAAO,EAAEH,WAAW;MACpBI,QAAQ,EAAE,EAAE;MACZC,UAAU,EAAE,CAACL,WAAW,CAACC;IAC3B,CAAC;EACH,CAAC;EAEMK,WAAW,GAAG7C,YAAY,CAAC,CAAC;IAAEmB;EAAqB,CAAC,KAAK;IAC9D,IAAI,CAAChB,OAAO,CAAC2C,MAAM,CAAC3B,GAAG,CAAC;EAC1B,CAAC,CAAC;EAEK4B,QAAQA,CAAA,EAAG;IAChB,IAAI,CAAC5C,OAAO,CAAC6C,KAAK,CAAC,CAAC;EACtB;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { createEvent } from 'effector';
|
|
4
|
+
export class DefaultMessagesCreator {
|
|
5
|
+
languageChanged = createEvent();
|
|
6
|
+
list = new Map();
|
|
7
|
+
constructor({
|
|
8
|
+
textGetter
|
|
9
|
+
}) {
|
|
10
|
+
this.getter = textGetter;
|
|
11
|
+
this.languageChanged.watch(() => {
|
|
12
|
+
this.list.forEach((key, chatMessage) => {
|
|
13
|
+
if ('message' in chatMessage) {
|
|
14
|
+
chatMessage.message = this.getter(key);
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
chatMessage.text = this.getter(key);
|
|
18
|
+
});
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
createMessage(key, {
|
|
22
|
+
isOwn = false
|
|
23
|
+
} = {}) {
|
|
24
|
+
const message = {
|
|
25
|
+
id: this.list.size.toString(),
|
|
26
|
+
message: this.getter(key),
|
|
27
|
+
threadId: '',
|
|
28
|
+
options: [],
|
|
29
|
+
isOwnMessage: isOwn
|
|
30
|
+
};
|
|
31
|
+
this.list.set(message, key);
|
|
32
|
+
return message;
|
|
33
|
+
}
|
|
34
|
+
createOption(key) {
|
|
35
|
+
const option = {
|
|
36
|
+
text: this.getter(key),
|
|
37
|
+
promptKey: ''
|
|
38
|
+
};
|
|
39
|
+
this.list.set(option, key);
|
|
40
|
+
return option;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=DefaultMessageCreator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createEvent","DefaultMessagesCreator","languageChanged","list","Map","constructor","textGetter","getter","watch","forEach","key","chatMessage","message","text","createMessage","isOwn","id","size","toString","threadId","options","isOwnMessage","set","createOption","option","promptKey"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/DefaultMessageCreator.ts"],"mappings":";;AACA,SAASA,WAAW,QAAQ,UAAU;AAetC,OAAO,MAAMC,sBAAsB,CAAmB;EACpCC,eAAe,GAAGF,WAAW,CAAC,CAAC;EAE9BG,IAAI,GAAG,IAAIC,GAAG,CAA8B,CAAC;EAG9DC,WAAWA,CAAC;IAAEC;EAA0C,CAAC,EAAE;IACzD,IAAI,CAACC,MAAM,GAAGD,UAAU;IAExB,IAAI,CAACJ,eAAe,CAACM,KAAK,CAAC,MAAM;MAC/B,IAAI,CAACL,IAAI,CAACM,OAAO,CAAC,CAACC,GAAG,EAAEC,WAAW,KAAK;QACtC,IAAI,SAAS,IAAIA,WAAW,EAAE;UAC5BA,WAAW,CAACC,OAAO,GAAG,IAAI,CAACL,MAAM,CAACG,GAAG,CAAC;UACtC;QACF;QACAC,WAAW,CAACE,IAAI,GAAG,IAAI,CAACN,MAAM,CAACG,GAAG,CAAC;MACrC,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEOI,aAAaA,CAACJ,GAAM,EAAE;IAAEK,KAAK,GAAG;EAA8B,CAAC,GAAG,CAAC,CAAC,EAAE;IAC3E,MAAMH,OAAoB,GAAG;MAC3BI,EAAE,EAAE,IAAI,CAACb,IAAI,CAACc,IAAI,CAACC,QAAQ,CAAC,CAAC;MAC7BN,OAAO,EAAE,IAAI,CAACL,MAAM,CAACG,GAAG,CAAC;MACzBS,QAAQ,EAAE,EAAE;MACZC,OAAO,EAAE,EAAE;MACXC,YAAY,EAAEN;IAChB,CAAC;IACD,IAAI,CAACZ,IAAI,CAACmB,GAAG,CAACV,OAAO,EAAEF,GAAG,CAAC;IAC3B,OAAOE,OAAO;EAChB;EAEOW,YAAYA,CAACb,GAAM,EAAE;IAC1B,MAAMc,MAAkB,GAAG;MACzBX,IAAI,EAAE,IAAI,CAACN,MAAM,CAACG,GAAG,CAAC;MACtBe,SAAS,EAAE;IACb,CAAC;IACD,IAAI,CAACtB,IAAI,CAACmB,GAAG,CAACE,MAAM,EAAEd,GAAG,CAAC;IAC1B,OAAOc,MAAM;EACf;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export class ThreadItem {
|
|
4
|
+
hints = [];
|
|
5
|
+
constructor({
|
|
6
|
+
strokes
|
|
7
|
+
} = {}) {
|
|
8
|
+
this.strokes = strokes ?? null;
|
|
9
|
+
}
|
|
10
|
+
getNextHintProps() {
|
|
11
|
+
if (this.hints.length) {
|
|
12
|
+
return {
|
|
13
|
+
previousHint: this.hints[this.hints.length - 1]
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
if (this.strokes) {
|
|
17
|
+
return {
|
|
18
|
+
stroke: this.strokes
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
return {};
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=ThreadItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ThreadItem","hints","constructor","strokes","getNextHintProps","length","previousHint","stroke"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/ThreadItem.ts"],"mappings":";;AAMA,OAAO,MAAMA,UAAU,CAAC;EAENC,KAAK,GAAa,EAAE;EAE7BC,WAAWA,CAAC;IAAEC;EAAyB,CAAC,GAAG,CAAC,CAAC,EAAE;IACpD,IAAI,CAACA,OAAO,GAAGA,OAAO,IAAI,IAAI;EAChC;EAEOC,gBAAgBA,CAAA,EAAG;IACxB,IAAI,IAAI,CAACH,KAAK,CAACI,MAAM,EAAE;MACrB,OAAO;QACLC,YAAY,EAAE,IAAI,CAACL,KAAK,CAAC,IAAI,CAACA,KAAK,CAACI,MAAM,GAAG,CAAC;MAChD,CAAC;IACH;IAEA,IAAI,IAAI,CAACF,OAAO,EAAE;MAChB,OAAO;QAAEI,MAAM,EAAE,IAAI,CAACJ;MAAQ,CAAC;IACjC;IAEA,OAAO,CAAC,CAAC;EACX;AACF","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CHAT_BOT_MODEL_DEFAULTS","THREAD_MESSAGES_LIMIT"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/constants.ts"],"mappings":";;AAAA,OAAO,MAAMA,uBAAuB,GAAG;EACrCC,qBAAqB,EAAE;AACzB,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MessageVariant"],"sourceRoot":"../../../../../src","sources":["features/chatbot/types/model.types.ts"],"mappings":";;
|
|
1
|
+
{"version":3,"names":["MessageVariant"],"sourceRoot":"../../../../../src","sources":["features/chatbot/types/model.types.ts"],"mappings":";;AAgEA,WAAYA,cAAc,0BAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
|
|
@@ -3,4 +3,5 @@ export { ChatbotModel } from './model/ChatBotModel';
|
|
|
3
3
|
export { AudioStatus, type AudioProvider } from './types/t2s.types';
|
|
4
4
|
export { MessageVariant, type ConversationMessage, type ChatbotRenderer, type ChatbotModelProps, } from './types/model.types';
|
|
5
5
|
export type { PostMessageResponse, ChatAnswer } from './types/api.types';
|
|
6
|
+
export { ChatMessageHandler } from './model/ChatBotMessageHandler';
|
|
6
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/chatbot/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EACL,cAAc,EACd,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/features/chatbot/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EACL,cAAc,EACd,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Store } from 'effector';
|
|
2
|
+
import { ChatHintPayload, ChatHintResponse, PostMessagePayload, PostMessageResponse } from '../types/api.types';
|
|
3
|
+
import { ChatbotMessages, IChatDrawBoardAdapter } from '../types/model.types';
|
|
4
|
+
type ChatMessageHandlerProps = {
|
|
5
|
+
messagesLimit?: number;
|
|
6
|
+
messages: ChatbotMessages;
|
|
7
|
+
drawBoardAdapter: IChatDrawBoardAdapter;
|
|
8
|
+
api: {
|
|
9
|
+
getHint: (props: ChatHintPayload) => Promise<ChatHintResponse>;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
type ResetCacheProps = {
|
|
13
|
+
key: string;
|
|
14
|
+
};
|
|
15
|
+
export declare class ChatMessageHandler {
|
|
16
|
+
private readonly api;
|
|
17
|
+
private readonly drawBoardAdapter;
|
|
18
|
+
private readonly threads;
|
|
19
|
+
private readonly messagesLimit;
|
|
20
|
+
private currentKey;
|
|
21
|
+
private currentBinding;
|
|
22
|
+
private readonly defaultMessages;
|
|
23
|
+
constructor({ drawBoardAdapter, api, messagesLimit, messages, }: ChatMessageHandlerProps);
|
|
24
|
+
bindKeyStore($store: Store<string>): this;
|
|
25
|
+
private getThreadItem;
|
|
26
|
+
readonly postMessageFx: ({ problemAnswer, problem, answer, language, }: PostMessagePayload) => Promise<PostMessageResponse>;
|
|
27
|
+
resetThread: import("effector/effector.umd").Effect<ResetCacheProps, void, Error>;
|
|
28
|
+
resetAll(): void;
|
|
29
|
+
}
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=ChatBotMessageHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChatBotMessageHandler.d.ts","sourceRoot":"","sources":["../../../../../../src/features/chatbot/model/ChatBotMessageHandler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAEhC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAG7E,KAAK,uBAAuB,GAAG;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,eAAe,CAAA;IACzB,gBAAgB,EAAE,qBAAqB,CAAA;IACvC,GAAG,EAAE;QACH,OAAO,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAA;KAC/D,CAAA;CACF,CAAA;AAED,KAAK,eAAe,GAAG;IACrB,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAA;IACpB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuB;IACxD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgC;IAExD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAA;IAC9B,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,cAAc,CAA4B;IAElD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAA;gBAEb,EACjB,gBAAgB,EAChB,GAAG,EACH,aAA6D,EAC7D,QAAQ,GACT,EAAE,uBAAuB;IAOnB,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YAQ3B,aAAa;IAc3B,SAAgB,aAAa,kDAK1B,kBAAkB,KAAG,OAAO,CAAC,mBAAmB,CAAC,CAqBnD;IAEM,WAAW,uEAEhB;IAEK,QAAQ;CAGhB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ChatAnswer, PostMessageResponse } from '../types/api.types';
|
|
2
|
+
type ChatMessage = PostMessageResponse & {
|
|
3
|
+
id: string;
|
|
4
|
+
isOwnMessage: boolean;
|
|
5
|
+
};
|
|
6
|
+
type DefaultMessageSettings = {
|
|
7
|
+
isOwn?: boolean;
|
|
8
|
+
};
|
|
9
|
+
type DefaultMessageCreatorProps<K extends string> = {
|
|
10
|
+
textGetter: (key: K) => string;
|
|
11
|
+
};
|
|
12
|
+
export declare class DefaultMessagesCreator<K extends string> {
|
|
13
|
+
readonly languageChanged: import("effector").EventCallable<void>;
|
|
14
|
+
private readonly list;
|
|
15
|
+
private readonly getter;
|
|
16
|
+
constructor({ textGetter }: DefaultMessageCreatorProps<K>);
|
|
17
|
+
createMessage(key: K, { isOwn }?: DefaultMessageSettings): ChatMessage;
|
|
18
|
+
createOption(key: K): ChatAnswer;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=DefaultMessageCreator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultMessageCreator.d.ts","sourceRoot":"","sources":["../../../../../../src/features/chatbot/model/DefaultMessageCreator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAGpE,KAAK,WAAW,GAAG,mBAAmB,GAAG;IACvC,EAAE,EAAE,MAAM,CAAA;IACV,YAAY,EAAE,OAAO,CAAA;CACtB,CAAA;AAED,KAAK,sBAAsB,GAAG;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,KAAK,0BAA0B,CAAC,CAAC,SAAS,MAAM,IAAI;IAClD,UAAU,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,CAAA;CAC/B,CAAA;AAED,qBAAa,sBAAsB,CAAC,CAAC,SAAS,MAAM;IAClD,SAAgB,eAAe,yCAAgB;IAE/C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAyC;IAC9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAA;gBAEX,EAAE,UAAU,EAAE,EAAE,0BAA0B,CAAC,CAAC,CAAC;IAclD,aAAa,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,KAAa,EAAE,GAAE,sBAA2B;IAYpE,YAAY,CAAC,GAAG,EAAE,CAAC;CAQ3B"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Stroke } from '../types/api.types';
|
|
2
|
+
type ThreadItemProps = {
|
|
3
|
+
strokes?: Stroke[] | null;
|
|
4
|
+
};
|
|
5
|
+
export declare class ThreadItem {
|
|
6
|
+
readonly strokes: Stroke[] | null;
|
|
7
|
+
readonly hints: string[];
|
|
8
|
+
constructor({ strokes }?: ThreadItemProps);
|
|
9
|
+
getNextHintProps(): {
|
|
10
|
+
previousHint: string;
|
|
11
|
+
stroke?: undefined;
|
|
12
|
+
} | {
|
|
13
|
+
stroke: Stroke[];
|
|
14
|
+
previousHint?: undefined;
|
|
15
|
+
} | {
|
|
16
|
+
previousHint?: undefined;
|
|
17
|
+
stroke?: undefined;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=ThreadItem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThreadItem.d.ts","sourceRoot":"","sources":["../../../../../../src/features/chatbot/model/ThreadItem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAE3C,KAAK,eAAe,GAAG;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;CAC1B,CAAA;AAED,qBAAa,UAAU;IACrB,SAAgB,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IACxC,SAAgB,KAAK,EAAE,MAAM,EAAE,CAAK;gBAEjB,EAAE,OAAO,EAAE,GAAE,eAAoB;IAI7C,gBAAgB;;;;;;;;;;CAaxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../../src/features/chatbot/model/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB;;CAEnC,CAAA"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { EventCallable, Store } from 'effector';
|
|
2
2
|
import { TranslateMessageFxProps } from '../types/translation.types';
|
|
3
|
-
import {
|
|
3
|
+
import { ChatbotMessages, ConversationMessage } from '../types/model.types';
|
|
4
4
|
import { GetAlternativesResponse } from '../types/api.types';
|
|
5
5
|
import { ChatbotAPI } from './api';
|
|
6
6
|
import { EntityFieldStore } from '../../../lib/effector/createEntityFieldStore';
|
|
7
7
|
type ChatbotTranslationProps = {
|
|
8
8
|
api: ChatbotAPI;
|
|
9
9
|
$key: Store<string>;
|
|
10
|
-
defaultMessages:
|
|
10
|
+
defaultMessages: ChatbotMessages;
|
|
11
11
|
messagesModel: EntityFieldStore<ConversationMessage[]>;
|
|
12
12
|
alternativesModel: {
|
|
13
13
|
set: EventCallable<GetAlternativesResponse | null>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translation.d.ts","sourceRoot":"","sources":["../../../../../../src/features/chatbot/model/translation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,aAAa,EAAmB,KAAK,EAAE,MAAM,UAAU,CAAA;AACnG,OAAO,EAGL,uBAAuB,EAExB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"translation.d.ts","sourceRoot":"","sources":["../../../../../../src/features/chatbot/model/translation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,aAAa,EAAmB,KAAK,EAAE,MAAM,UAAU,CAAA;AACnG,OAAO,EAGL,uBAAuB,EAExB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAA;AAO/E,KAAK,uBAAuB,GAAG;IAC7B,GAAG,EAAE,UAAU,CAAA;IACf,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IACnB,eAAe,EAAE,eAAe,CAAA;IAChC,aAAa,EAAE,gBAAgB,CAAC,mBAAmB,EAAE,CAAC,CAAA;IACtD,iBAAiB,EAAE;QACjB,GAAG,EAAE,aAAa,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAA;QAClD,MAAM,EAAE,KAAK,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAAA;KAC9C,CAAA;CACF,CAAA;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAA;IACpB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAA;IACrB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAA;IAChC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAA;IAC9B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAA;IAElC,QAAQ,CAAC,eAAe,yBAAyB;IACjD,QAAQ,CAAC,aAAa,4CAAuC;IAE7D,QAAQ,CAAC,sBAAsB;;qCAAA;gBAEnB,EACV,GAAG,EACH,IAAI,EACJ,eAAe,EACf,aAAa,EACb,iBAAiB,GAClB,EAAE,uBAAuB;IAmB1B,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,sBAAsB;YAShB,gBAAgB;IAmB9B,OAAO,CAAC,4BAA4B;IAIpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAkDhC;IAED,SAAgB,mBAAmB,mFA0BlC;IAEM,KAAK;CAGb"}
|
|
@@ -63,4 +63,19 @@ export type GoogleText2SpeechPayload = {
|
|
|
63
63
|
export type GoogleText2SpeechResponse = string | undefined | {
|
|
64
64
|
audioContent?: string;
|
|
65
65
|
};
|
|
66
|
+
export type Stroke = {
|
|
67
|
+
x: number[];
|
|
68
|
+
y: number[];
|
|
69
|
+
};
|
|
70
|
+
export type ChatHintPayload = {
|
|
71
|
+
problemDescription: string;
|
|
72
|
+
correctAnswer: string[];
|
|
73
|
+
userAnswer?: string | string[];
|
|
74
|
+
stroke?: Stroke[];
|
|
75
|
+
previousHint?: string;
|
|
76
|
+
language: string;
|
|
77
|
+
};
|
|
78
|
+
export type ChatHintResponse = {
|
|
79
|
+
message: string;
|
|
80
|
+
};
|
|
66
81
|
//# sourceMappingURL=api.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.types.d.ts","sourceRoot":"","sources":["../../../../../../src/features/chatbot/types/api.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,cAAc,EAAE,MAAM,CAAA;IACtB,oBAAoB,EAAE,MAAM,CAAA;CAC7B,GAAG,IAAI,CAAA;AAER,MAAM,MAAM,uBAAuB,GAAG;IACpC,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,EAAE;QACP,OAAO,EAAE,UAAU,EAAE,CAAA;QACrB,KAAK,EAAE,UAAU,EAAE,CAAA;KACpB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,cAAc,EAAE;QAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAA;IAChD,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,UAAU,EAAE,CAAA;IACrB,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,cAAc,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE;QACJ,YAAY,EAAE;YAAE,cAAc,EAAE,MAAM,CAAC;YAAC,sBAAsB,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAC3E,CAAA;CACF,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,KAAK,EAAE;QACL,YAAY,EAAE,MAAM,CAAA;QACpB,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,WAAW,EAAE;QACX,aAAa,EAAE,MAAM,CAAA;QACrB,KAAK,EAAE,MAAM,CAAA;QACb,YAAY,EAAE,MAAM,CAAA;KACrB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,MAAM,GAAG,SAAS,GAAG;IAAE,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA"}
|
|
1
|
+
{"version":3,"file":"api.types.d.ts","sourceRoot":"","sources":["../../../../../../src/features/chatbot/types/api.types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,cAAc,EAAE,MAAM,CAAA;IACtB,oBAAoB,EAAE,MAAM,CAAA;CAC7B,GAAG,IAAI,CAAA;AAER,MAAM,MAAM,uBAAuB,GAAG;IACpC,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,OAAO,EAAE;QACP,OAAO,EAAE,UAAU,EAAE,CAAA;QACrB,KAAK,EAAE,UAAU,EAAE,CAAA;KACpB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,cAAc,EAAE;QAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAA;IAChD,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,UAAU,EAAE,CAAA;IACrB,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,cAAc,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE;QACJ,YAAY,EAAE;YAAE,cAAc,EAAE,MAAM,CAAC;YAAC,sBAAsB,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAC3E,CAAA;CACF,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,KAAK,EAAE;QACL,YAAY,EAAE,MAAM,CAAA;QACpB,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,WAAW,EAAE;QACX,aAAa,EAAE,MAAM,CAAA;QACrB,KAAK,EAAE,MAAM,CAAA;QACb,YAAY,EAAE,MAAM,CAAA;KACrB,CAAA;CACF,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG,MAAM,GAAG,SAAS,GAAG;IAAE,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEtF,MAAM,MAAM,MAAM,GAAG;IACnB,CAAC,EAAE,MAAM,EAAE,CAAA;IACX,CAAC,EAAE,MAAM,EAAE,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,kBAAkB,EAAE,MAAM,CAAA;IAC1B,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC9B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Store } from 'effector';
|
|
2
|
-
import { GetAlternativesResponse, PostMessagePayload, PostMessageResponse, GoogleTranslatePayload, GoogleTranslateResponse, GoogleText2SpeechPayload, GoogleText2SpeechResponse, ChatAnswer, GetAlternativesPayload } from './api.types';
|
|
3
|
-
import {
|
|
2
|
+
import { GetAlternativesResponse, PostMessagePayload, PostMessageResponse, GoogleTranslatePayload, GoogleTranslateResponse, GoogleText2SpeechPayload, GoogleText2SpeechResponse, ChatAnswer, GetAlternativesPayload, Stroke } from './api.types';
|
|
3
|
+
import { ExtendWithOptional } from '../../../lib/helpers/types';
|
|
4
4
|
export type ConversationMessage = {
|
|
5
5
|
id: string;
|
|
6
6
|
message: string;
|
|
@@ -10,6 +10,12 @@ export type ConversationMessage = {
|
|
|
10
10
|
translatedMessage?: string;
|
|
11
11
|
endMessage?: boolean;
|
|
12
12
|
};
|
|
13
|
+
export type ChatbotMessages = {
|
|
14
|
+
error: ConversationMessage;
|
|
15
|
+
start: ConversationMessage;
|
|
16
|
+
endMessage: ConversationMessage;
|
|
17
|
+
anotherHintOption: ChatAnswer;
|
|
18
|
+
};
|
|
13
19
|
export type ChatbotModelProps = {
|
|
14
20
|
$key?: Store<string>;
|
|
15
21
|
api: {
|
|
@@ -18,12 +24,7 @@ export type ChatbotModelProps = {
|
|
|
18
24
|
postTranslateText: (props: GoogleTranslatePayload) => Promise<GoogleTranslateResponse>;
|
|
19
25
|
postTextToSpeech: (props: GoogleText2SpeechPayload) => Promise<GoogleText2SpeechResponse>;
|
|
20
26
|
};
|
|
21
|
-
messages:
|
|
22
|
-
error: ConversationMessage;
|
|
23
|
-
start: ConversationMessage;
|
|
24
|
-
endMessage: ConversationMessage;
|
|
25
|
-
anotherHintOption: ChatAnswer;
|
|
26
|
-
};
|
|
27
|
+
messages: ChatbotMessages;
|
|
27
28
|
};
|
|
28
29
|
export type SendHelpParams = {
|
|
29
30
|
payload: PostMessagePayload;
|
|
@@ -51,5 +52,8 @@ export type ChatbotRenderer = {
|
|
|
51
52
|
variant: MessageVariant;
|
|
52
53
|
withTextToSpeech: boolean;
|
|
53
54
|
};
|
|
54
|
-
export type CreateMessageResponse =
|
|
55
|
+
export type CreateMessageResponse = ExtendWithOptional<PostMessageResponse, ConversationMessage>;
|
|
56
|
+
export type IChatDrawBoardAdapter = {
|
|
57
|
+
getVisibleStrokes(): Promise<Stroke[] | null>;
|
|
58
|
+
};
|
|
55
59
|
//# sourceMappingURL=model.types.d.ts.map
|