@magmamath/students-features 0.1.0

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.
Files changed (405) hide show
  1. package/README.md +33 -0
  2. package/dist/commonjs/features/chatbot/components/Alternatives/Alternatives.js +60 -0
  3. package/dist/commonjs/features/chatbot/components/Alternatives/Alternatives.js.map +1 -0
  4. package/dist/commonjs/features/chatbot/components/Alternatives/HelpRequestOption.js +96 -0
  5. package/dist/commonjs/features/chatbot/components/Alternatives/HelpRequestOption.js.map +1 -0
  6. package/dist/commonjs/features/chatbot/components/ChatControls/ChatControls.js +97 -0
  7. package/dist/commonjs/features/chatbot/components/ChatControls/ChatControls.js.map +1 -0
  8. package/dist/commonjs/features/chatbot/components/ChatMessage/ChatMessage.js +27 -0
  9. package/dist/commonjs/features/chatbot/components/ChatMessage/ChatMessage.js.map +1 -0
  10. package/dist/commonjs/features/chatbot/components/ChatMessage/MessageLoader.js +56 -0
  11. package/dist/commonjs/features/chatbot/components/ChatMessage/MessageLoader.js.map +1 -0
  12. package/dist/commonjs/features/chatbot/components/ChatMessage/MessageTextToSpeech.js +88 -0
  13. package/dist/commonjs/features/chatbot/components/ChatMessage/MessageTextToSpeech.js.map +1 -0
  14. package/dist/commonjs/features/chatbot/components/ChatMessage/ReceivedMessage.js +87 -0
  15. package/dist/commonjs/features/chatbot/components/ChatMessage/ReceivedMessage.js.map +1 -0
  16. package/dist/commonjs/features/chatbot/components/ChatMessage/SentMessage.js +43 -0
  17. package/dist/commonjs/features/chatbot/components/ChatMessage/SentMessage.js.map +1 -0
  18. package/dist/commonjs/features/chatbot/components/ChatMessages/ChatbotMessages.js +130 -0
  19. package/dist/commonjs/features/chatbot/components/ChatMessages/ChatbotMessages.js.map +1 -0
  20. package/dist/commonjs/features/chatbot/components/Chatbot.js +69 -0
  21. package/dist/commonjs/features/chatbot/components/Chatbot.js.map +1 -0
  22. package/dist/commonjs/features/chatbot/components/ThreeDotsLoader/ThreeDotsLoader.js +65 -0
  23. package/dist/commonjs/features/chatbot/components/ThreeDotsLoader/ThreeDotsLoader.js.map +1 -0
  24. package/dist/commonjs/features/chatbot/constants.js +31 -0
  25. package/dist/commonjs/features/chatbot/constants.js.map +1 -0
  26. package/dist/commonjs/features/chatbot/helpers.js +12 -0
  27. package/dist/commonjs/features/chatbot/helpers.js.map +1 -0
  28. package/dist/commonjs/features/chatbot/index.js +34 -0
  29. package/dist/commonjs/features/chatbot/index.js.map +1 -0
  30. package/dist/commonjs/features/chatbot/model/api.js +18 -0
  31. package/dist/commonjs/features/chatbot/model/api.js.map +1 -0
  32. package/dist/commonjs/features/chatbot/model/model.js +244 -0
  33. package/dist/commonjs/features/chatbot/model/model.js.map +1 -0
  34. package/dist/commonjs/features/chatbot/model/t2s.js +104 -0
  35. package/dist/commonjs/features/chatbot/model/t2s.js.map +1 -0
  36. package/dist/commonjs/features/chatbot/model/translation.js +203 -0
  37. package/dist/commonjs/features/chatbot/model/translation.js.map +1 -0
  38. package/dist/commonjs/features/chatbot/types/api.types.js +2 -0
  39. package/dist/commonjs/features/chatbot/types/api.types.js.map +1 -0
  40. package/dist/commonjs/features/chatbot/types/model.types.js +12 -0
  41. package/dist/commonjs/features/chatbot/types/model.types.js.map +1 -0
  42. package/dist/commonjs/features/chatbot/types/t2s.types.js +13 -0
  43. package/dist/commonjs/features/chatbot/types/t2s.types.js.map +1 -0
  44. package/dist/commonjs/features/chatbot/types/translation.types.js +6 -0
  45. package/dist/commonjs/features/chatbot/types/translation.types.js.map +1 -0
  46. package/dist/commonjs/index.js +42 -0
  47. package/dist/commonjs/index.js.map +1 -0
  48. package/dist/commonjs/lib/createFeature/createFeature.js +28 -0
  49. package/dist/commonjs/lib/createFeature/createFeature.js.map +1 -0
  50. package/dist/commonjs/lib/effector/createControllerEffect.js +51 -0
  51. package/dist/commonjs/lib/effector/createControllerEffect.js.map +1 -0
  52. package/dist/commonjs/lib/effector/createEntityFieldStore.js +42 -0
  53. package/dist/commonjs/lib/effector/createEntityFieldStore.js.map +1 -0
  54. package/dist/commonjs/lib/effector/index.js +20 -0
  55. package/dist/commonjs/lib/effector/index.js.map +1 -0
  56. package/dist/commonjs/lib/helpers/helpers.js +9 -0
  57. package/dist/commonjs/lib/helpers/helpers.js.map +1 -0
  58. package/dist/commonjs/lib/localization/en.json +2 -0
  59. package/dist/commonjs/lib/localization/gb.json +2 -0
  60. package/dist/commonjs/lib/localization/sw.json +2 -0
  61. package/dist/commonjs/shared/hooks/useDebounce.js +21 -0
  62. package/dist/commonjs/shared/hooks/useDebounce.js.map +1 -0
  63. package/dist/commonjs/shared/icons/ArrowRightIcon.js +30 -0
  64. package/dist/commonjs/shared/icons/ArrowRightIcon.js.map +1 -0
  65. package/dist/commonjs/shared/icons/ChatbotIcon.js +148 -0
  66. package/dist/commonjs/shared/icons/ChatbotIcon.js.map +1 -0
  67. package/dist/commonjs/shared/icons/CloseIcon.js +28 -0
  68. package/dist/commonjs/shared/icons/CloseIcon.js.map +1 -0
  69. package/dist/commonjs/shared/icons/GlobeIcon.js +30 -0
  70. package/dist/commonjs/shared/icons/GlobeIcon.js.map +1 -0
  71. package/dist/commonjs/shared/icons/PauseIcon.js +32 -0
  72. package/dist/commonjs/shared/icons/PauseIcon.js.map +1 -0
  73. package/dist/commonjs/shared/icons/PlayIcon.js +32 -0
  74. package/dist/commonjs/shared/icons/PlayIcon.js.map +1 -0
  75. package/dist/commonjs/shared/icons/SpeakerIcon.js +37 -0
  76. package/dist/commonjs/shared/icons/SpeakerIcon.js.map +1 -0
  77. package/dist/commonjs/shared/icons/icon.types.js +2 -0
  78. package/dist/commonjs/shared/icons/icon.types.js.map +1 -0
  79. package/dist/commonjs/shared/translation/constants.js +17 -0
  80. package/dist/commonjs/shared/translation/constants.js.map +1 -0
  81. package/dist/commonjs/shared/translation/helpers.js +31 -0
  82. package/dist/commonjs/shared/translation/helpers.js.map +1 -0
  83. package/dist/commonjs/shared/translation/hooks.js +28 -0
  84. package/dist/commonjs/shared/translation/hooks.js.map +1 -0
  85. package/dist/commonjs/shared/translation/index.js +52 -0
  86. package/dist/commonjs/shared/translation/index.js.map +1 -0
  87. package/dist/commonjs/shared/translation/model.js +15 -0
  88. package/dist/commonjs/shared/translation/model.js.map +1 -0
  89. package/dist/commonjs/shared/translation/types.js +13 -0
  90. package/dist/commonjs/shared/translation/types.js.map +1 -0
  91. package/dist/commonjs/types/types.d.js +2 -0
  92. package/dist/commonjs/types/types.d.js.map +1 -0
  93. package/dist/module/features/chatbot/components/Alternatives/Alternatives.js +54 -0
  94. package/dist/module/features/chatbot/components/Alternatives/Alternatives.js.map +1 -0
  95. package/dist/module/features/chatbot/components/Alternatives/HelpRequestOption.js +90 -0
  96. package/dist/module/features/chatbot/components/Alternatives/HelpRequestOption.js.map +1 -0
  97. package/dist/module/features/chatbot/components/ChatControls/ChatControls.js +91 -0
  98. package/dist/module/features/chatbot/components/ChatControls/ChatControls.js.map +1 -0
  99. package/dist/module/features/chatbot/components/ChatMessage/ChatMessage.js +21 -0
  100. package/dist/module/features/chatbot/components/ChatMessage/ChatMessage.js.map +1 -0
  101. package/dist/module/features/chatbot/components/ChatMessage/MessageLoader.js +50 -0
  102. package/dist/module/features/chatbot/components/ChatMessage/MessageLoader.js.map +1 -0
  103. package/dist/module/features/chatbot/components/ChatMessage/MessageTextToSpeech.js +82 -0
  104. package/dist/module/features/chatbot/components/ChatMessage/MessageTextToSpeech.js.map +1 -0
  105. package/dist/module/features/chatbot/components/ChatMessage/ReceivedMessage.js +81 -0
  106. package/dist/module/features/chatbot/components/ChatMessage/ReceivedMessage.js.map +1 -0
  107. package/dist/module/features/chatbot/components/ChatMessage/SentMessage.js +37 -0
  108. package/dist/module/features/chatbot/components/ChatMessage/SentMessage.js.map +1 -0
  109. package/dist/module/features/chatbot/components/ChatMessages/ChatbotMessages.js +123 -0
  110. package/dist/module/features/chatbot/components/ChatMessages/ChatbotMessages.js.map +1 -0
  111. package/dist/module/features/chatbot/components/Chatbot.js +63 -0
  112. package/dist/module/features/chatbot/components/Chatbot.js.map +1 -0
  113. package/dist/module/features/chatbot/components/ThreeDotsLoader/ThreeDotsLoader.js +59 -0
  114. package/dist/module/features/chatbot/components/ThreeDotsLoader/ThreeDotsLoader.js.map +1 -0
  115. package/dist/module/features/chatbot/constants.js +27 -0
  116. package/dist/module/features/chatbot/constants.js.map +1 -0
  117. package/dist/module/features/chatbot/helpers.js +7 -0
  118. package/dist/module/features/chatbot/helpers.js.map +1 -0
  119. package/dist/module/features/chatbot/index.js +7 -0
  120. package/dist/module/features/chatbot/index.js.map +1 -0
  121. package/dist/module/features/chatbot/model/api.js +13 -0
  122. package/dist/module/features/chatbot/model/api.js.map +1 -0
  123. package/dist/module/features/chatbot/model/model.js +239 -0
  124. package/dist/module/features/chatbot/model/model.js.map +1 -0
  125. package/dist/module/features/chatbot/model/t2s.js +99 -0
  126. package/dist/module/features/chatbot/model/t2s.js.map +1 -0
  127. package/dist/module/features/chatbot/model/translation.js +198 -0
  128. package/dist/module/features/chatbot/model/translation.js.map +1 -0
  129. package/dist/module/features/chatbot/types/api.types.js +2 -0
  130. package/dist/module/features/chatbot/types/api.types.js.map +1 -0
  131. package/dist/module/features/chatbot/types/model.types.js +8 -0
  132. package/dist/module/features/chatbot/types/model.types.js.map +1 -0
  133. package/dist/module/features/chatbot/types/t2s.types.js +9 -0
  134. package/dist/module/features/chatbot/types/t2s.types.js.map +1 -0
  135. package/dist/module/features/chatbot/types/translation.types.js +4 -0
  136. package/dist/module/features/chatbot/types/translation.types.js.map +1 -0
  137. package/dist/module/index.js +5 -0
  138. package/dist/module/index.js.map +1 -0
  139. package/dist/module/lib/createFeature/createFeature.js +22 -0
  140. package/dist/module/lib/createFeature/createFeature.js.map +1 -0
  141. package/dist/module/lib/effector/createControllerEffect.js +45 -0
  142. package/dist/module/lib/effector/createControllerEffect.js.map +1 -0
  143. package/dist/module/lib/effector/createEntityFieldStore.js +38 -0
  144. package/dist/module/lib/effector/createEntityFieldStore.js.map +1 -0
  145. package/dist/module/lib/effector/index.js +5 -0
  146. package/dist/module/lib/effector/index.js.map +1 -0
  147. package/dist/module/lib/helpers/helpers.js +4 -0
  148. package/dist/module/lib/helpers/helpers.js.map +1 -0
  149. package/dist/module/lib/localization/en.json +2 -0
  150. package/dist/module/lib/localization/gb.json +2 -0
  151. package/dist/module/lib/localization/sw.json +2 -0
  152. package/dist/module/shared/hooks/useDebounce.js +16 -0
  153. package/dist/module/shared/hooks/useDebounce.js.map +1 -0
  154. package/dist/module/shared/icons/ArrowRightIcon.js +22 -0
  155. package/dist/module/shared/icons/ArrowRightIcon.js.map +1 -0
  156. package/dist/module/shared/icons/ChatbotIcon.js +140 -0
  157. package/dist/module/shared/icons/ChatbotIcon.js.map +1 -0
  158. package/dist/module/shared/icons/CloseIcon.js +20 -0
  159. package/dist/module/shared/icons/CloseIcon.js.map +1 -0
  160. package/dist/module/shared/icons/GlobeIcon.js +22 -0
  161. package/dist/module/shared/icons/GlobeIcon.js.map +1 -0
  162. package/dist/module/shared/icons/PauseIcon.js +24 -0
  163. package/dist/module/shared/icons/PauseIcon.js.map +1 -0
  164. package/dist/module/shared/icons/PlayIcon.js +24 -0
  165. package/dist/module/shared/icons/PlayIcon.js.map +1 -0
  166. package/dist/module/shared/icons/SpeakerIcon.js +29 -0
  167. package/dist/module/shared/icons/SpeakerIcon.js.map +1 -0
  168. package/dist/module/shared/icons/icon.types.js +2 -0
  169. package/dist/module/shared/icons/icon.types.js.map +1 -0
  170. package/dist/module/shared/translation/constants.js +12 -0
  171. package/dist/module/shared/translation/constants.js.map +1 -0
  172. package/dist/module/shared/translation/helpers.js +24 -0
  173. package/dist/module/shared/translation/helpers.js.map +1 -0
  174. package/dist/module/shared/translation/hooks.js +22 -0
  175. package/dist/module/shared/translation/hooks.js.map +1 -0
  176. package/dist/module/shared/translation/index.js +7 -0
  177. package/dist/module/shared/translation/index.js.map +1 -0
  178. package/dist/module/shared/translation/model.js +11 -0
  179. package/dist/module/shared/translation/model.js.map +1 -0
  180. package/dist/module/shared/translation/types.js +9 -0
  181. package/dist/module/shared/translation/types.js.map +1 -0
  182. package/dist/module/types/types.d.js +2 -0
  183. package/dist/module/types/types.d.js.map +1 -0
  184. package/dist/typescript/commonjs/features/chatbot/components/Alternatives/Alternatives.d.ts +11 -0
  185. package/dist/typescript/commonjs/features/chatbot/components/Alternatives/Alternatives.d.ts.map +1 -0
  186. package/dist/typescript/commonjs/features/chatbot/components/Alternatives/HelpRequestOption.d.ts +9 -0
  187. package/dist/typescript/commonjs/features/chatbot/components/Alternatives/HelpRequestOption.d.ts.map +1 -0
  188. package/dist/typescript/commonjs/features/chatbot/components/ChatControls/ChatControls.d.ts +14 -0
  189. package/dist/typescript/commonjs/features/chatbot/components/ChatControls/ChatControls.d.ts.map +1 -0
  190. package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/ChatMessage.d.ts +17 -0
  191. package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/ChatMessage.d.ts.map +1 -0
  192. package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/MessageLoader.d.ts +3 -0
  193. package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/MessageLoader.d.ts.map +1 -0
  194. package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/MessageTextToSpeech.d.ts +12 -0
  195. package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/MessageTextToSpeech.d.ts.map +1 -0
  196. package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/ReceivedMessage.d.ts +4 -0
  197. package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/ReceivedMessage.d.ts.map +1 -0
  198. package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/SentMessage.d.ts +4 -0
  199. package/dist/typescript/commonjs/features/chatbot/components/ChatMessage/SentMessage.d.ts.map +1 -0
  200. package/dist/typescript/commonjs/features/chatbot/components/ChatMessages/ChatbotMessages.d.ts +21 -0
  201. package/dist/typescript/commonjs/features/chatbot/components/ChatMessages/ChatbotMessages.d.ts.map +1 -0
  202. package/dist/typescript/commonjs/features/chatbot/components/Chatbot.d.ts +25 -0
  203. package/dist/typescript/commonjs/features/chatbot/components/Chatbot.d.ts.map +1 -0
  204. package/dist/typescript/commonjs/features/chatbot/components/ThreeDotsLoader/ThreeDotsLoader.d.ts +9 -0
  205. package/dist/typescript/commonjs/features/chatbot/components/ThreeDotsLoader/ThreeDotsLoader.d.ts.map +1 -0
  206. package/dist/typescript/commonjs/features/chatbot/constants.d.ts +21 -0
  207. package/dist/typescript/commonjs/features/chatbot/constants.d.ts.map +1 -0
  208. package/dist/typescript/commonjs/features/chatbot/helpers.d.ts +2 -0
  209. package/dist/typescript/commonjs/features/chatbot/helpers.d.ts.map +1 -0
  210. package/dist/typescript/commonjs/features/chatbot/index.d.ts +5 -0
  211. package/dist/typescript/commonjs/features/chatbot/index.d.ts.map +1 -0
  212. package/dist/typescript/commonjs/features/chatbot/model/api.d.ts +12 -0
  213. package/dist/typescript/commonjs/features/chatbot/model/api.d.ts.map +1 -0
  214. package/dist/typescript/commonjs/features/chatbot/model/model.d.ts +73 -0
  215. package/dist/typescript/commonjs/features/chatbot/model/model.d.ts.map +1 -0
  216. package/dist/typescript/commonjs/features/chatbot/model/t2s.d.ts +18 -0
  217. package/dist/typescript/commonjs/features/chatbot/model/t2s.d.ts.map +1 -0
  218. package/dist/typescript/commonjs/features/chatbot/model/translation.d.ts +22 -0
  219. package/dist/typescript/commonjs/features/chatbot/model/translation.d.ts.map +1 -0
  220. package/dist/typescript/commonjs/features/chatbot/types/api.types.d.ts +60 -0
  221. package/dist/typescript/commonjs/features/chatbot/types/api.types.d.ts.map +1 -0
  222. package/dist/typescript/commonjs/features/chatbot/types/model.types.d.ts +64 -0
  223. package/dist/typescript/commonjs/features/chatbot/types/model.types.d.ts.map +1 -0
  224. package/dist/typescript/commonjs/features/chatbot/types/t2s.types.d.ts +22 -0
  225. package/dist/typescript/commonjs/features/chatbot/types/t2s.types.d.ts.map +1 -0
  226. package/dist/typescript/commonjs/features/chatbot/types/translation.types.d.ts +23 -0
  227. package/dist/typescript/commonjs/features/chatbot/types/translation.types.d.ts.map +1 -0
  228. package/dist/typescript/commonjs/index.d.ts +4 -0
  229. package/dist/typescript/commonjs/index.d.ts.map +1 -0
  230. package/dist/typescript/commonjs/lib/createFeature/createFeature.d.ts +7 -0
  231. package/dist/typescript/commonjs/lib/createFeature/createFeature.d.ts.map +1 -0
  232. package/dist/typescript/commonjs/lib/effector/createControllerEffect.d.ts +16 -0
  233. package/dist/typescript/commonjs/lib/effector/createControllerEffect.d.ts.map +1 -0
  234. package/dist/typescript/commonjs/lib/effector/createEntityFieldStore.d.ts +16 -0
  235. package/dist/typescript/commonjs/lib/effector/createEntityFieldStore.d.ts.map +1 -0
  236. package/dist/typescript/commonjs/lib/effector/index.d.ts +3 -0
  237. package/dist/typescript/commonjs/lib/effector/index.d.ts.map +1 -0
  238. package/dist/typescript/commonjs/lib/helpers/helpers.d.ts +2 -0
  239. package/dist/typescript/commonjs/lib/helpers/helpers.d.ts.map +1 -0
  240. package/dist/typescript/commonjs/package.json +1 -0
  241. package/dist/typescript/commonjs/shared/hooks/useDebounce.d.ts +2 -0
  242. package/dist/typescript/commonjs/shared/hooks/useDebounce.d.ts.map +1 -0
  243. package/dist/typescript/commonjs/shared/icons/ArrowRightIcon.d.ts +4 -0
  244. package/dist/typescript/commonjs/shared/icons/ArrowRightIcon.d.ts.map +1 -0
  245. package/dist/typescript/commonjs/shared/icons/ChatbotIcon.d.ts +4 -0
  246. package/dist/typescript/commonjs/shared/icons/ChatbotIcon.d.ts.map +1 -0
  247. package/dist/typescript/commonjs/shared/icons/CloseIcon.d.ts +4 -0
  248. package/dist/typescript/commonjs/shared/icons/CloseIcon.d.ts.map +1 -0
  249. package/dist/typescript/commonjs/shared/icons/GlobeIcon.d.ts +4 -0
  250. package/dist/typescript/commonjs/shared/icons/GlobeIcon.d.ts.map +1 -0
  251. package/dist/typescript/commonjs/shared/icons/PauseIcon.d.ts +4 -0
  252. package/dist/typescript/commonjs/shared/icons/PauseIcon.d.ts.map +1 -0
  253. package/dist/typescript/commonjs/shared/icons/PlayIcon.d.ts +4 -0
  254. package/dist/typescript/commonjs/shared/icons/PlayIcon.d.ts.map +1 -0
  255. package/dist/typescript/commonjs/shared/icons/SpeakerIcon.d.ts +4 -0
  256. package/dist/typescript/commonjs/shared/icons/SpeakerIcon.d.ts.map +1 -0
  257. package/dist/typescript/commonjs/shared/icons/icon.types.d.ts +9 -0
  258. package/dist/typescript/commonjs/shared/icons/icon.types.d.ts.map +1 -0
  259. package/dist/typescript/commonjs/shared/translation/constants.d.ts +6 -0
  260. package/dist/typescript/commonjs/shared/translation/constants.d.ts.map +1 -0
  261. package/dist/typescript/commonjs/shared/translation/helpers.d.ts +6 -0
  262. package/dist/typescript/commonjs/shared/translation/helpers.d.ts.map +1 -0
  263. package/dist/typescript/commonjs/shared/translation/hooks.d.ts +5 -0
  264. package/dist/typescript/commonjs/shared/translation/hooks.d.ts.map +1 -0
  265. package/dist/typescript/commonjs/shared/translation/index.d.ts +6 -0
  266. package/dist/typescript/commonjs/shared/translation/index.d.ts.map +1 -0
  267. package/dist/typescript/commonjs/shared/translation/model.d.ts +5 -0
  268. package/dist/typescript/commonjs/shared/translation/model.d.ts.map +1 -0
  269. package/dist/typescript/commonjs/shared/translation/types.d.ts +8 -0
  270. package/dist/typescript/commonjs/shared/translation/types.d.ts.map +1 -0
  271. package/dist/typescript/module/features/chatbot/components/Alternatives/Alternatives.d.ts +11 -0
  272. package/dist/typescript/module/features/chatbot/components/Alternatives/Alternatives.d.ts.map +1 -0
  273. package/dist/typescript/module/features/chatbot/components/Alternatives/HelpRequestOption.d.ts +9 -0
  274. package/dist/typescript/module/features/chatbot/components/Alternatives/HelpRequestOption.d.ts.map +1 -0
  275. package/dist/typescript/module/features/chatbot/components/ChatControls/ChatControls.d.ts +14 -0
  276. package/dist/typescript/module/features/chatbot/components/ChatControls/ChatControls.d.ts.map +1 -0
  277. package/dist/typescript/module/features/chatbot/components/ChatMessage/ChatMessage.d.ts +17 -0
  278. package/dist/typescript/module/features/chatbot/components/ChatMessage/ChatMessage.d.ts.map +1 -0
  279. package/dist/typescript/module/features/chatbot/components/ChatMessage/MessageLoader.d.ts +3 -0
  280. package/dist/typescript/module/features/chatbot/components/ChatMessage/MessageLoader.d.ts.map +1 -0
  281. package/dist/typescript/module/features/chatbot/components/ChatMessage/MessageTextToSpeech.d.ts +12 -0
  282. package/dist/typescript/module/features/chatbot/components/ChatMessage/MessageTextToSpeech.d.ts.map +1 -0
  283. package/dist/typescript/module/features/chatbot/components/ChatMessage/ReceivedMessage.d.ts +4 -0
  284. package/dist/typescript/module/features/chatbot/components/ChatMessage/ReceivedMessage.d.ts.map +1 -0
  285. package/dist/typescript/module/features/chatbot/components/ChatMessage/SentMessage.d.ts +4 -0
  286. package/dist/typescript/module/features/chatbot/components/ChatMessage/SentMessage.d.ts.map +1 -0
  287. package/dist/typescript/module/features/chatbot/components/ChatMessages/ChatbotMessages.d.ts +21 -0
  288. package/dist/typescript/module/features/chatbot/components/ChatMessages/ChatbotMessages.d.ts.map +1 -0
  289. package/dist/typescript/module/features/chatbot/components/Chatbot.d.ts +25 -0
  290. package/dist/typescript/module/features/chatbot/components/Chatbot.d.ts.map +1 -0
  291. package/dist/typescript/module/features/chatbot/components/ThreeDotsLoader/ThreeDotsLoader.d.ts +9 -0
  292. package/dist/typescript/module/features/chatbot/components/ThreeDotsLoader/ThreeDotsLoader.d.ts.map +1 -0
  293. package/dist/typescript/module/features/chatbot/constants.d.ts +21 -0
  294. package/dist/typescript/module/features/chatbot/constants.d.ts.map +1 -0
  295. package/dist/typescript/module/features/chatbot/helpers.d.ts +2 -0
  296. package/dist/typescript/module/features/chatbot/helpers.d.ts.map +1 -0
  297. package/dist/typescript/module/features/chatbot/index.d.ts +5 -0
  298. package/dist/typescript/module/features/chatbot/index.d.ts.map +1 -0
  299. package/dist/typescript/module/features/chatbot/model/api.d.ts +12 -0
  300. package/dist/typescript/module/features/chatbot/model/api.d.ts.map +1 -0
  301. package/dist/typescript/module/features/chatbot/model/model.d.ts +73 -0
  302. package/dist/typescript/module/features/chatbot/model/model.d.ts.map +1 -0
  303. package/dist/typescript/module/features/chatbot/model/t2s.d.ts +18 -0
  304. package/dist/typescript/module/features/chatbot/model/t2s.d.ts.map +1 -0
  305. package/dist/typescript/module/features/chatbot/model/translation.d.ts +22 -0
  306. package/dist/typescript/module/features/chatbot/model/translation.d.ts.map +1 -0
  307. package/dist/typescript/module/features/chatbot/types/api.types.d.ts +60 -0
  308. package/dist/typescript/module/features/chatbot/types/api.types.d.ts.map +1 -0
  309. package/dist/typescript/module/features/chatbot/types/model.types.d.ts +64 -0
  310. package/dist/typescript/module/features/chatbot/types/model.types.d.ts.map +1 -0
  311. package/dist/typescript/module/features/chatbot/types/t2s.types.d.ts +22 -0
  312. package/dist/typescript/module/features/chatbot/types/t2s.types.d.ts.map +1 -0
  313. package/dist/typescript/module/features/chatbot/types/translation.types.d.ts +23 -0
  314. package/dist/typescript/module/features/chatbot/types/translation.types.d.ts.map +1 -0
  315. package/dist/typescript/module/index.d.ts +4 -0
  316. package/dist/typescript/module/index.d.ts.map +1 -0
  317. package/dist/typescript/module/lib/createFeature/createFeature.d.ts +7 -0
  318. package/dist/typescript/module/lib/createFeature/createFeature.d.ts.map +1 -0
  319. package/dist/typescript/module/lib/effector/createControllerEffect.d.ts +16 -0
  320. package/dist/typescript/module/lib/effector/createControllerEffect.d.ts.map +1 -0
  321. package/dist/typescript/module/lib/effector/createEntityFieldStore.d.ts +16 -0
  322. package/dist/typescript/module/lib/effector/createEntityFieldStore.d.ts.map +1 -0
  323. package/dist/typescript/module/lib/effector/index.d.ts +3 -0
  324. package/dist/typescript/module/lib/effector/index.d.ts.map +1 -0
  325. package/dist/typescript/module/lib/helpers/helpers.d.ts +2 -0
  326. package/dist/typescript/module/lib/helpers/helpers.d.ts.map +1 -0
  327. package/dist/typescript/module/package.json +1 -0
  328. package/dist/typescript/module/shared/hooks/useDebounce.d.ts +2 -0
  329. package/dist/typescript/module/shared/hooks/useDebounce.d.ts.map +1 -0
  330. package/dist/typescript/module/shared/icons/ArrowRightIcon.d.ts +4 -0
  331. package/dist/typescript/module/shared/icons/ArrowRightIcon.d.ts.map +1 -0
  332. package/dist/typescript/module/shared/icons/ChatbotIcon.d.ts +4 -0
  333. package/dist/typescript/module/shared/icons/ChatbotIcon.d.ts.map +1 -0
  334. package/dist/typescript/module/shared/icons/CloseIcon.d.ts +4 -0
  335. package/dist/typescript/module/shared/icons/CloseIcon.d.ts.map +1 -0
  336. package/dist/typescript/module/shared/icons/GlobeIcon.d.ts +4 -0
  337. package/dist/typescript/module/shared/icons/GlobeIcon.d.ts.map +1 -0
  338. package/dist/typescript/module/shared/icons/PauseIcon.d.ts +4 -0
  339. package/dist/typescript/module/shared/icons/PauseIcon.d.ts.map +1 -0
  340. package/dist/typescript/module/shared/icons/PlayIcon.d.ts +4 -0
  341. package/dist/typescript/module/shared/icons/PlayIcon.d.ts.map +1 -0
  342. package/dist/typescript/module/shared/icons/SpeakerIcon.d.ts +4 -0
  343. package/dist/typescript/module/shared/icons/SpeakerIcon.d.ts.map +1 -0
  344. package/dist/typescript/module/shared/icons/icon.types.d.ts +9 -0
  345. package/dist/typescript/module/shared/icons/icon.types.d.ts.map +1 -0
  346. package/dist/typescript/module/shared/translation/constants.d.ts +6 -0
  347. package/dist/typescript/module/shared/translation/constants.d.ts.map +1 -0
  348. package/dist/typescript/module/shared/translation/helpers.d.ts +6 -0
  349. package/dist/typescript/module/shared/translation/helpers.d.ts.map +1 -0
  350. package/dist/typescript/module/shared/translation/hooks.d.ts +5 -0
  351. package/dist/typescript/module/shared/translation/hooks.d.ts.map +1 -0
  352. package/dist/typescript/module/shared/translation/index.d.ts +6 -0
  353. package/dist/typescript/module/shared/translation/index.d.ts.map +1 -0
  354. package/dist/typescript/module/shared/translation/model.d.ts +5 -0
  355. package/dist/typescript/module/shared/translation/model.d.ts.map +1 -0
  356. package/dist/typescript/module/shared/translation/types.d.ts +8 -0
  357. package/dist/typescript/module/shared/translation/types.d.ts.map +1 -0
  358. package/package.json +73 -0
  359. package/src/features/chatbot/components/Alternatives/Alternatives.tsx +64 -0
  360. package/src/features/chatbot/components/Alternatives/HelpRequestOption.tsx +92 -0
  361. package/src/features/chatbot/components/ChatControls/ChatControls.tsx +103 -0
  362. package/src/features/chatbot/components/ChatMessage/ChatMessage.tsx +28 -0
  363. package/src/features/chatbot/components/ChatMessage/MessageLoader.tsx +42 -0
  364. package/src/features/chatbot/components/ChatMessage/MessageTextToSpeech.tsx +78 -0
  365. package/src/features/chatbot/components/ChatMessage/ReceivedMessage.tsx +73 -0
  366. package/src/features/chatbot/components/ChatMessage/SentMessage.tsx +31 -0
  367. package/src/features/chatbot/components/ChatMessages/ChatbotMessages.tsx +148 -0
  368. package/src/features/chatbot/components/Chatbot.tsx +92 -0
  369. package/src/features/chatbot/components/ThreeDotsLoader/ThreeDotsLoader.tsx +77 -0
  370. package/src/features/chatbot/constants.ts +30 -0
  371. package/src/features/chatbot/helpers.ts +4 -0
  372. package/src/features/chatbot/index.ts +4 -0
  373. package/src/features/chatbot/model/api.ts +28 -0
  374. package/src/features/chatbot/model/model.ts +277 -0
  375. package/src/features/chatbot/model/t2s.ts +107 -0
  376. package/src/features/chatbot/model/translation.ts +231 -0
  377. package/src/features/chatbot/types/api.types.ts +59 -0
  378. package/src/features/chatbot/types/model.types.ts +73 -0
  379. package/src/features/chatbot/types/t2s.types.ts +24 -0
  380. package/src/features/chatbot/types/translation.types.ts +23 -0
  381. package/src/index.ts +3 -0
  382. package/src/lib/createFeature/createFeature.tsx +21 -0
  383. package/src/lib/effector/createControllerEffect.ts +66 -0
  384. package/src/lib/effector/createEntityFieldStore.ts +43 -0
  385. package/src/lib/effector/index.ts +2 -0
  386. package/src/lib/helpers/helpers.ts +2 -0
  387. package/src/lib/localization/en.json +2 -0
  388. package/src/lib/localization/gb.json +2 -0
  389. package/src/lib/localization/sw.json +2 -0
  390. package/src/shared/hooks/useDebounce.ts +17 -0
  391. package/src/shared/icons/ArrowRightIcon.tsx +14 -0
  392. package/src/shared/icons/ChatbotIcon.tsx +109 -0
  393. package/src/shared/icons/CloseIcon.tsx +12 -0
  394. package/src/shared/icons/GlobeIcon.tsx +14 -0
  395. package/src/shared/icons/PauseIcon.tsx +16 -0
  396. package/src/shared/icons/PlayIcon.tsx +16 -0
  397. package/src/shared/icons/SpeakerIcon.tsx +22 -0
  398. package/src/shared/icons/icon.types.ts +8 -0
  399. package/src/shared/translation/constants.ts +10 -0
  400. package/src/shared/translation/helpers.ts +34 -0
  401. package/src/shared/translation/hooks.ts +28 -0
  402. package/src/shared/translation/index.ts +5 -0
  403. package/src/shared/translation/model.ts +15 -0
  404. package/src/shared/translation/types.ts +9 -0
  405. package/src/types/types.d.ts +4 -0
@@ -0,0 +1,244 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ChatbotModel = void 0;
7
+ var _effector = require("effector");
8
+ var _index = require("../../../lib/effector/index.js");
9
+ var _helpers = require("../../../lib/helpers/helpers.js");
10
+ var _api = require("./api.js");
11
+ var _translation = require("./translation.js");
12
+ var _t2s = require("./t2s.js");
13
+ class ChatbotModel {
14
+ resetAlternatives = (0, _effector.createEvent)();
15
+ setAlternatives = (0, _effector.createEvent)();
16
+ setIsOpen = (0, _effector.createEvent)();
17
+ toggleOpen = (0, _effector.createEvent)();
18
+ $isOpen = (0, _effector.restore)(this.setIsOpen, false).on(this.toggleOpen, isOpen => !isOpen);
19
+
20
+ // separate messages and alternatives class?
21
+ removeLastMessage = (0, _effector.createEvent)();
22
+ setLastMessageIds = (0, _effector.createEvent)();
23
+ $lastMessageIds = (0, _effector.restore)(this.setLastMessageIds, null);
24
+ setScrollActive = (0, _effector.createEvent)();
25
+ $isScrollActive = (0, _effector.restore)(this.setScrollActive, false);
26
+ constructor({
27
+ credits,
28
+ api,
29
+ messages
30
+ }) {
31
+ this.api = new _api.ChatbotAPI(api);
32
+ this.defaultMessages = messages;
33
+ this.credits = credits;
34
+ this.$alternatives = (0, _effector.restore)(this.api.getAlternativesFx.doneData, null).on(this.setAlternatives, (_, payload) => payload).reset(this.resetAlternatives);
35
+
36
+ // TODO: do not pass this, just what you need
37
+ this.translation = new _translation.ChatbotTranslation(this);
38
+ this.t2s = new _t2s.ChatTextToSpeech(this);
39
+ this.sendHelpRequestFx = this.createSendHelpRequestFx();
40
+ this.initChatReplyWatcher();
41
+ }
42
+ messages = (0, _index.createEntityFieldStore)({
43
+ mapper: ({
44
+ entityId,
45
+ fieldId,
46
+ messages
47
+ }) => ({
48
+ entityId,
49
+ fieldId,
50
+ data: {
51
+ messages
52
+ }
53
+ })
54
+ });
55
+ threadIds = (0, _index.createEntityFieldStore)({
56
+ mapper: ({
57
+ entityId,
58
+ fieldId,
59
+ threadId
60
+ }) => ({
61
+ entityId,
62
+ fieldId,
63
+ data: {
64
+ threadId
65
+ }
66
+ })
67
+ });
68
+ availableChats = (0, _index.createEntityFieldStore)({
69
+ mapper: ({
70
+ entityId,
71
+ fieldId,
72
+ isAvailable = true
73
+ }) => ({
74
+ entityId,
75
+ fieldId,
76
+ data: {
77
+ isAvailable
78
+ }
79
+ })
80
+ });
81
+ createSendHelpRequestFx() {
82
+ return (0, _effector.attach)({
83
+ source: [this.credits.$assignmentId, this.credits.$exerciseId, this.messages.$state, this.translation.$isTranslated],
84
+ mapParams: (params, [assignmentId, exerciseId, messages, isTranslated]) => ({
85
+ ...params,
86
+ assignmentId,
87
+ exerciseId,
88
+ messages,
89
+ isTranslated
90
+ }),
91
+ effect: (0, _index.createControllerEffect)(async ({
92
+ payload,
93
+ message = '',
94
+ translationTargetLanguage,
95
+ translatedMessage,
96
+ assignmentId,
97
+ exerciseId,
98
+ messages,
99
+ isTranslated
100
+ }) => {
101
+ this.setLastMessageIds({
102
+ entityId: assignmentId,
103
+ fieldId: exerciseId
104
+ });
105
+ const currentMessages = messages[assignmentId]?.[exerciseId]?.messages || [];
106
+ this.messages.setField({
107
+ entityId: assignmentId,
108
+ fieldId: exerciseId,
109
+ messages: [...currentMessages, {
110
+ id: (0, _helpers.generateRandomId)(),
111
+ message: message ?? '',
112
+ translatedMessage,
113
+ isOwnMessage: true,
114
+ threadId: payload.threadId ?? '',
115
+ options: []
116
+ }]
117
+ });
118
+ const response = await this.api.postMessageFx(payload);
119
+ if (isTranslated) {
120
+ return await this.translation.translateMessageFx({
121
+ targetLanguage: translationTargetLanguage,
122
+ message: {
123
+ ...response,
124
+ id: (0, _helpers.generateRandomId)(),
125
+ isOwnMessage: false
126
+ }
127
+ });
128
+ }
129
+ return response;
130
+ })
131
+ });
132
+ }
133
+ initChatReplyWatcher() {
134
+ (0, _effector.sample)({
135
+ clock: this.sendHelpRequestFx.doneData,
136
+ source: [this.credits.$assignmentId, this.credits.$exerciseId, this.messages.$state],
137
+ fn: ([assignmentId, exerciseId, messages], response) => ({
138
+ assignmentId,
139
+ exerciseId,
140
+ messages: messages[assignmentId]?.[exerciseId]?.messages || [],
141
+ response
142
+ })
143
+ }).watch(({
144
+ assignmentId,
145
+ exerciseId,
146
+ messages,
147
+ response
148
+ }) => {
149
+ this.messages.setField({
150
+ entityId: assignmentId,
151
+ fieldId: exerciseId,
152
+ messages: [...messages, {
153
+ id: (0, _helpers.generateRandomId)(),
154
+ message: response.message,
155
+ isOwnMessage: false,
156
+ threadId: response.threadId,
157
+ options: response.options,
158
+ translatedMessage: 'translatedMessage' in response ? response.translatedMessage : undefined
159
+ }]
160
+ });
161
+ this.threadIds.setField({
162
+ entityId: assignmentId,
163
+ fieldId: exerciseId,
164
+ threadId: response.threadId
165
+ });
166
+ });
167
+ (0, _effector.sample)({
168
+ clock: this.sendHelpRequestFx.fail,
169
+ source: [this.credits.$assignmentId, this.credits.$exerciseId, this.messages.$state],
170
+ fn: ([assignmentId, exerciseId, messages]) => ({
171
+ assignmentId,
172
+ exerciseId,
173
+ messages: messages[assignmentId]?.[exerciseId]?.messages || []
174
+ }),
175
+ filter: (_, {
176
+ error
177
+ }) => error.message !== 'Request aborted manually'
178
+ }).watch(({
179
+ assignmentId,
180
+ exerciseId,
181
+ messages
182
+ }) => {
183
+ this.messages.setField({
184
+ entityId: assignmentId,
185
+ fieldId: exerciseId,
186
+ messages: [...messages, this.defaultMessages.error]
187
+ });
188
+ });
189
+ (0, _effector.sample)({
190
+ clock: this.removeLastMessage,
191
+ source: [this.$lastMessageIds, this.messages.$state],
192
+ fn: ([lastMessageIds, messages]) => ({
193
+ lastMessageIds,
194
+ messages
195
+ })
196
+ }).watch(({
197
+ lastMessageIds,
198
+ messages
199
+ }) => {
200
+ if (!lastMessageIds) return;
201
+ const updatedMessages = [...messages[lastMessageIds.entityId][lastMessageIds.fieldId].messages];
202
+ if (updatedMessages) updatedMessages.pop();
203
+ this.messages.setField({
204
+ entityId: lastMessageIds.entityId,
205
+ fieldId: lastMessageIds.fieldId,
206
+ messages: updatedMessages
207
+ });
208
+ });
209
+ }
210
+ startConversation() {
211
+ const assignmentId = this.credits.$assignmentId.getState();
212
+ const exerciseId = this.credits.$exerciseId.getState();
213
+ const messages = this.messages.$state.getState()[assignmentId]?.[exerciseId]?.messages ?? [];
214
+ if (messages.length) return;
215
+ this.messages.setField({
216
+ entityId: assignmentId,
217
+ fieldId: exerciseId,
218
+ messages: [this.defaultMessages.start]
219
+ });
220
+ this.availableChats.setField({
221
+ entityId: assignmentId,
222
+ fieldId: exerciseId,
223
+ isAvailable: true
224
+ });
225
+ }
226
+ setHintMessage({
227
+ entityId,
228
+ fieldId,
229
+ ...message
230
+ }) {
231
+ const messages = this.messages.$state.getState()?.[entityId]?.[fieldId]?.messages;
232
+ if (messages?.length > 1) return;
233
+ this.messages.setField({
234
+ entityId,
235
+ fieldId,
236
+ messages: [{
237
+ ...message,
238
+ options: this.$alternatives.getState()?.options.hints ?? message.options
239
+ }]
240
+ });
241
+ }
242
+ }
243
+ exports.ChatbotModel = ChatbotModel;
244
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_effector","require","_index","_helpers","_api","_translation","_t2s","ChatbotModel","resetAlternatives","createEvent","setAlternatives","setIsOpen","toggleOpen","$isOpen","restore","on","isOpen","removeLastMessage","setLastMessageIds","$lastMessageIds","setScrollActive","$isScrollActive","constructor","credits","api","messages","ChatbotAPI","defaultMessages","$alternatives","getAlternativesFx","doneData","_","payload","reset","translation","ChatbotTranslation","t2s","ChatTextToSpeech","sendHelpRequestFx","createSendHelpRequestFx","initChatReplyWatcher","createEntityFieldStore","mapper","entityId","fieldId","data","threadIds","threadId","availableChats","isAvailable","attach","source","$assignmentId","$exerciseId","$state","$isTranslated","mapParams","params","assignmentId","exerciseId","isTranslated","effect","createControllerEffect","message","translationTargetLanguage","translatedMessage","currentMessages","setField","id","generateRandomId","isOwnMessage","options","response","postMessageFx","translateMessageFx","targetLanguage","sample","clock","fn","watch","undefined","fail","filter","error","lastMessageIds","updatedMessages","pop","startConversation","getState","length","start","setHintMessage","hints","exports"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/model.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ChatTextToSpeech = void 0;
7
+ var _effector = require("effector");
8
+ var _constants = require("../constants.js");
9
+ var _t2sTypes = require("../types/t2s.types.js");
10
+ class ChatTextToSpeech {
11
+ audioCache = {};
12
+ audioProvider = null;
13
+ setCurrentPlayingId = (0, _effector.createEvent)();
14
+ $currentPlayingId = (0, _effector.restore)(this.setCurrentPlayingId, null);
15
+ setStatus = (0, _effector.createEvent)();
16
+ $status = (0, _effector.restore)(this.setStatus, _t2sTypes.AudioStatus.STOPPED);
17
+ constructor(chatbotModel) {
18
+ this.model = chatbotModel;
19
+ this.model.$isOpen.updates.watch(isOpen => {
20
+ if (!isOpen) this.reset();
21
+ });
22
+ }
23
+ setAudioProvider(audioProvider) {
24
+ this.audioProvider = audioProvider;
25
+ }
26
+ getCacheKey = (messageId, isTranslated) => {
27
+ return `${messageId}-${isTranslated ? 'translated' : 'original'}`;
28
+ };
29
+ async play({
30
+ text,
31
+ messageId,
32
+ isTranslated,
33
+ config
34
+ }) {
35
+ if (!this.audioProvider) throw new Error('Audio provider is not set. Use setAudioProvider.');
36
+ try {
37
+ const status = this.$status.getState();
38
+ const playingId = this.$currentPlayingId.getState();
39
+ const isPlaying = status === _t2sTypes.AudioStatus.PLAYING;
40
+ const isPaused = status === _t2sTypes.AudioStatus.PAUSED;
41
+ const isCurrentMessage = messageId === playingId;
42
+ if (isPlaying && isCurrentMessage) {
43
+ this.audioProvider.pause();
44
+ this.setStatus(_t2sTypes.AudioStatus.PAUSED);
45
+ return;
46
+ }
47
+ if (isPaused && isCurrentMessage) {
48
+ this.audioProvider.resume();
49
+ this.setStatus(_t2sTypes.AudioStatus.PLAYING);
50
+ return;
51
+ }
52
+ if (messageId && !isCurrentMessage) {
53
+ this.audioProvider.stop();
54
+ }
55
+ const cacheKey = this.getCacheKey(messageId, isTranslated);
56
+ let audioPath = this.audioCache[cacheKey];
57
+ this.setCurrentPlayingId(messageId);
58
+ if (!audioPath) {
59
+ const response = await this.model.api.textToSpeechTextFx({
60
+ input: {
61
+ text
62
+ },
63
+ voice: config?.voice ?? _constants.DEFAULT_VOICE,
64
+ audioConfig: config?.audioConfig ?? _constants.AUDIO_CONFIG
65
+ });
66
+
67
+ // Response might be different type based on provided AUDIO_CONFIG
68
+ if (typeof response === 'string') {
69
+ audioPath = `data:audio/mpeg;base64,${response}`;
70
+ } else {
71
+ audioPath = response?.audioContent ?? '';
72
+ }
73
+ this.audioCache[cacheKey] = audioPath;
74
+ }
75
+ this.setStatus(_t2sTypes.AudioStatus.PLAYING);
76
+ await this.audioProvider.play(audioPath, () => {
77
+ this.setStatus(_t2sTypes.AudioStatus.STOPPED);
78
+ this.setCurrentPlayingId(null);
79
+ });
80
+ } catch (error) {
81
+ this.reset();
82
+ console.error('Error playing text-to-speech: ', error);
83
+ }
84
+ }
85
+ stop() {
86
+ if (!this.audioProvider) throw new Error('Audio provider is not set. Use setAudioProvider.');
87
+ this.audioProvider.stop();
88
+ }
89
+
90
+ // reset should also do stop(), add watcher to model to not write it in repos
91
+ // chatbotModel.$isOpen.updates.watch((isOpen) => {
92
+ // if (!isOpen) {
93
+ // chatbotModel.t2s.stop();
94
+ // chatbotModel.t2s.reset();
95
+ // }
96
+
97
+ reset() {
98
+ this.stop();
99
+ this.setStatus(_t2sTypes.AudioStatus.STOPPED);
100
+ this.setCurrentPlayingId(null);
101
+ }
102
+ }
103
+ exports.ChatTextToSpeech = ChatTextToSpeech;
104
+ //# sourceMappingURL=t2s.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_effector","require","_constants","_t2sTypes","ChatTextToSpeech","audioCache","audioProvider","setCurrentPlayingId","createEvent","$currentPlayingId","restore","setStatus","$status","AudioStatus","STOPPED","constructor","chatbotModel","model","$isOpen","updates","watch","isOpen","reset","setAudioProvider","getCacheKey","messageId","isTranslated","play","text","config","Error","status","getState","playingId","isPlaying","PLAYING","isPaused","PAUSED","isCurrentMessage","pause","resume","stop","cacheKey","audioPath","response","api","textToSpeechTextFx","input","voice","DEFAULT_VOICE","audioConfig","AUDIO_CONFIG","audioContent","error","console","exports"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/t2s.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ChatbotTranslation = void 0;
7
+ var _effector = require("effector");
8
+ var _helpers = require("../helpers.js");
9
+ class ChatbotTranslation {
10
+ setIsTranslated = (0, _effector.createEvent)();
11
+ $isTranslated = (0, _effector.restore)(this.setIsTranslated, false);
12
+ constructor(chatbotModel) {
13
+ this.model = chatbotModel;
14
+ this.translateAlternativesFx = this.createTranslateAlternativesEffect();
15
+ this.translateMessageFx = this.createTranslateMessageEffect();
16
+ this.translateBatchFx = this.createTranslateBatchEffect();
17
+ this.initTranslationSamples();
18
+ }
19
+ shouldSkipTranslation(messages) {
20
+ if (this.$isTranslated.getState()) {
21
+ this.setIsTranslated(false);
22
+ return true;
23
+ }
24
+ const allTranslated = messages.every(message => message.translatedMessage);
25
+ if (allTranslated) {
26
+ this.setIsTranslated(true);
27
+ return true;
28
+ }
29
+ return false;
30
+ }
31
+ initTranslationSamples() {
32
+ (0, _effector.sample)({
33
+ clock: this.translateBatchFx.doneData,
34
+ source: [this.model.credits.$assignmentId, this.model.credits.$exerciseId],
35
+ fn: ([assignmentId, exerciseId], translatedMessages) => ({
36
+ assignmentId,
37
+ exerciseId,
38
+ translatedMessages
39
+ })
40
+ }).watch(({
41
+ assignmentId,
42
+ exerciseId,
43
+ translatedMessages
44
+ }) => {
45
+ this.model.messages.setField({
46
+ entityId: assignmentId,
47
+ fieldId: exerciseId,
48
+ messages: translatedMessages
49
+ });
50
+ });
51
+ }
52
+ createTranslateAlternativesEffect() {
53
+ return (0, _effector.attach)({
54
+ source: [this.model.$alternatives],
55
+ mapParams: (params, [alternatives]) => ({
56
+ params,
57
+ alternatives
58
+ }),
59
+ effect: (0, _effector.createEffect)(async ({
60
+ alternatives,
61
+ params
62
+ }) => {
63
+ const hintAlternatives = alternatives?.options.hints ?? [];
64
+ const defaultAlternatives = alternatives?.options.default ?? [];
65
+ const translatedAlternatives = {
66
+ ...alternatives
67
+ };
68
+ if (hintAlternatives.length) {
69
+ const hintText = hintAlternatives.map(({
70
+ text
71
+ }) => text);
72
+ const response = await this.model.api.translateTextFx({
73
+ text: hintText,
74
+ targetLanguage: params.targetLanguage
75
+ });
76
+ if (translatedAlternatives.options) {
77
+ translatedAlternatives.options.hints = hintAlternatives.map((alternative, index) => ({
78
+ ...alternative,
79
+ translatedMessage: (0, _helpers.decodeHTMLEntities)(response.data.translations[index].translatedText)
80
+ }));
81
+ }
82
+ }
83
+ if (defaultAlternatives.length) {
84
+ const defaultText = defaultAlternatives.map(({
85
+ text
86
+ }) => text);
87
+ const response = await this.model.api.translateTextFx({
88
+ text: defaultText,
89
+ targetLanguage: params.targetLanguage
90
+ });
91
+ if (translatedAlternatives.options) {
92
+ translatedAlternatives.options.default = defaultAlternatives.map((alternative, index) => ({
93
+ ...alternative,
94
+ translatedText: (0, _helpers.decodeHTMLEntities)(response.data.translations[index].translatedText)
95
+ }));
96
+ }
97
+ }
98
+ return translatedAlternatives;
99
+ })
100
+ });
101
+ }
102
+ createTranslateMessageEffect() {
103
+ return (0, _effector.createEffect)(async ({
104
+ message,
105
+ targetLanguage
106
+ }) => {
107
+ const optionsText = message.options.map(({
108
+ text
109
+ }) => text);
110
+ const response = await this.model.api.translateTextFx({
111
+ text: [message.message, ...optionsText],
112
+ targetLanguage
113
+ });
114
+ const translatedOptions = response.data.translations.slice(1);
115
+ const optionsCopy = [...message.options];
116
+ const newOptions = optionsCopy.map((option, index) => ({
117
+ ...option,
118
+ translatedText: (0, _helpers.decodeHTMLEntities)(translatedOptions[index].translatedText)
119
+ }));
120
+ return {
121
+ ...message,
122
+ translatedMessage: (0, _helpers.decodeHTMLEntities)(response.data.translations[0].translatedText),
123
+ options: newOptions
124
+ };
125
+ });
126
+ }
127
+ createTranslateBatchEffect() {
128
+ return (0, _effector.attach)({
129
+ source: [this.model.credits.$assignmentId, this.model.credits.$exerciseId, this.model.messages.$state],
130
+ mapParams: (params, [assignmentId, exerciseId, messages]) => ({
131
+ params,
132
+ assignmentId,
133
+ exerciseId,
134
+ messages
135
+ }),
136
+ effect: (0, _effector.createEffect)(async ({
137
+ messages,
138
+ assignmentId,
139
+ exerciseId,
140
+ params
141
+ }) => {
142
+ const currentMessages = messages[assignmentId]?.[exerciseId]?.messages ?? [];
143
+ if (this.shouldSkipTranslation(currentMessages)) {
144
+ return currentMessages;
145
+ }
146
+ const messagesText = currentMessages.map(({
147
+ message
148
+ }) => message);
149
+ const response = await this.model.api.translateTextFx({
150
+ text: messagesText,
151
+ targetLanguage: params.targetLanguage
152
+ });
153
+ const lastMessage = currentMessages.at(-1);
154
+ const lastMessageTranslatedOptions = lastMessage ? await this.translateMessageOptions(lastMessage, params.targetLanguage) : undefined;
155
+ const errorMessageTranslationResponse = await this.model.api.translateTextFx({
156
+ text: [this.model.defaultMessages.error.message],
157
+ targetLanguage: params.targetLanguage
158
+ });
159
+ this.model.defaultMessages.error.translatedMessage = (0, _helpers.decodeHTMLEntities)(errorMessageTranslationResponse.data.translations[0].translatedText);
160
+
161
+ // TODO: move this AFTER state update in sample and remove initTranslationSamples it is not needed
162
+ // TODO: maybe just one request to translate everything
163
+ this.setIsTranslated(true);
164
+ const translatedMessages = response.data.translations.map(({
165
+ translatedText
166
+ }) => translatedText);
167
+ return currentMessages.map((message, index) => {
168
+ const isLastMessage = index === currentMessages.length - 1;
169
+ return {
170
+ ...message,
171
+ options: isLastMessage ? lastMessageTranslatedOptions : message.options,
172
+ translatedMessage: (0, _helpers.decodeHTMLEntities)(translatedMessages[index])
173
+ };
174
+ });
175
+ })
176
+ });
177
+ }
178
+ async translateMessageOptions(message, targetLanguage) {
179
+ if (!message?.options?.length) {
180
+ const translatedAlternatives = await this.translateAlternativesFx({
181
+ targetLanguage
182
+ });
183
+ this.model.setAlternatives(translatedAlternatives);
184
+ return;
185
+ }
186
+ const optionsText = message.options.map(({
187
+ text
188
+ }) => text);
189
+ const response = await this.model.api.translateTextFx({
190
+ text: optionsText,
191
+ targetLanguage
192
+ });
193
+ return message.options.map((option, index) => ({
194
+ ...option,
195
+ translatedText: (0, _helpers.decodeHTMLEntities)(response.data.translations[index].translatedText)
196
+ }));
197
+ }
198
+ reset() {
199
+ this.setIsTranslated(false);
200
+ }
201
+ }
202
+ exports.ChatbotTranslation = ChatbotTranslation;
203
+ //# sourceMappingURL=translation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_effector","require","_helpers","ChatbotTranslation","setIsTranslated","createEvent","$isTranslated","restore","constructor","chatbotModel","model","translateAlternativesFx","createTranslateAlternativesEffect","translateMessageFx","createTranslateMessageEffect","translateBatchFx","createTranslateBatchEffect","initTranslationSamples","shouldSkipTranslation","messages","getState","allTranslated","every","message","translatedMessage","sample","clock","doneData","source","credits","$assignmentId","$exerciseId","fn","assignmentId","exerciseId","translatedMessages","watch","setField","entityId","fieldId","attach","$alternatives","mapParams","params","alternatives","effect","createEffect","hintAlternatives","options","hints","defaultAlternatives","default","translatedAlternatives","length","hintText","map","text","response","api","translateTextFx","targetLanguage","alternative","index","decodeHTMLEntities","data","translations","translatedText","defaultText","optionsText","translatedOptions","slice","optionsCopy","newOptions","option","$state","currentMessages","messagesText","lastMessage","at","lastMessageTranslatedOptions","translateMessageOptions","undefined","errorMessageTranslationResponse","defaultMessages","error","isLastMessage","setAlternatives","reset","exports"],"sourceRoot":"../../../../../src","sources":["features/chatbot/model/translation.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=api.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["features/chatbot/types/api.types.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MessageVariant = void 0;
7
+ let MessageVariant = exports.MessageVariant = /*#__PURE__*/function (MessageVariant) {
8
+ MessageVariant["SENT"] = "sent";
9
+ MessageVariant["RECEIVED"] = "received";
10
+ return MessageVariant;
11
+ }({});
12
+ //# sourceMappingURL=model.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["MessageVariant","exports"],"sourceRoot":"../../../../../src","sources":["features/chatbot/types/model.types.ts"],"mappings":";;;;;;IA+DYA,cAAc,GAAAC,OAAA,CAAAD,cAAA,0BAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AudioStatus = void 0;
7
+ let AudioStatus = exports.AudioStatus = /*#__PURE__*/function (AudioStatus) {
8
+ AudioStatus["PLAYING"] = "playing";
9
+ AudioStatus["STOPPED"] = "stopped";
10
+ AudioStatus["PAUSED"] = "paused";
11
+ return AudioStatus;
12
+ }({});
13
+ //# sourceMappingURL=t2s.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AudioStatus","exports"],"sourceRoot":"../../../../../src","sources":["features/chatbot/types/t2s.types.ts"],"mappings":";;;;;;IAEYA,WAAW,GAAAC,OAAA,CAAAD,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=translation.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["features/chatbot/types/translation.types.ts"],"mappings":"","ignoreList":[]}