@magmamath/students-features 1.3.15 → 1.3.16-rc.22

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 (299) hide show
  1. package/dist/commonjs/features/chatbot/components/ChatInput/FreeText/FreeTextInputBlock.js +2 -2
  2. package/dist/commonjs/features/chatbot/components/ChatInput/FreeText/FreeTextInputBlock.js.map +1 -1
  3. package/dist/commonjs/features/chatbot/errorSpotting/ErrorSpottingButton.js +2 -2
  4. package/dist/commonjs/features/chatbot/errorSpotting/ErrorSpottingButton.js.map +1 -1
  5. package/dist/commonjs/features/chatbot/helpers.js +3 -3
  6. package/dist/commonjs/features/chatbot/helpers.js.map +1 -1
  7. package/dist/commonjs/features/chatbot/model/ChatBoxTextManager.js +3 -4
  8. package/dist/commonjs/features/chatbot/model/ChatBoxTextManager.js.map +1 -1
  9. package/dist/commonjs/features/chatbot/model/DefaultMessageCreator.js +4 -2
  10. package/dist/commonjs/features/chatbot/model/DefaultMessageCreator.js.map +1 -1
  11. package/dist/commonjs/features/exampleSolution/components/ExampleSolutionModalContent.js +3 -4
  12. package/dist/commonjs/features/exampleSolution/components/ExampleSolutionModalContent.js.map +1 -1
  13. package/dist/commonjs/features/exampleSolution/model/ExampleSolutionApi.js +4 -8
  14. package/dist/commonjs/features/exampleSolution/model/ExampleSolutionApi.js.map +1 -1
  15. package/dist/commonjs/features/feedback/components/EmptyComment.js +2 -2
  16. package/dist/commonjs/features/feedback/components/EmptyComment.js.map +1 -1
  17. package/dist/commonjs/features/feedback/model/comments.js +2 -2
  18. package/dist/commonjs/features/feedback/model/comments.js.map +1 -1
  19. package/dist/commonjs/features/gifCelebrations/components/Gif.js +2 -2
  20. package/dist/commonjs/features/gifCelebrations/components/Gif.js.map +1 -1
  21. package/dist/commonjs/features/gifCelebrations/helpers.js.map +1 -1
  22. package/dist/commonjs/features/keyboard/components/Numpad/Numpad.js +2 -2
  23. package/dist/commonjs/features/keyboard/components/Numpad/Numpad.js.map +1 -1
  24. package/dist/commonjs/features/keyboard/components/UnitsLayout/hooks/useUnitTabs.js +2 -2
  25. package/dist/commonjs/features/keyboard/components/UnitsLayout/hooks/useUnitTabs.js.map +1 -1
  26. package/dist/commonjs/features/pmProgress/components/header/NextUp.js +2 -2
  27. package/dist/commonjs/features/pmProgress/components/header/NextUp.js.map +1 -1
  28. package/dist/commonjs/features/pmProgress/components/header/PmProgressHeader.js +2 -2
  29. package/dist/commonjs/features/pmProgress/components/header/PmProgressHeader.js.map +1 -1
  30. package/dist/commonjs/features/pmProgress/components/header/StartButton.js +2 -2
  31. package/dist/commonjs/features/pmProgress/components/header/StartButton.js.map +1 -1
  32. package/dist/commonjs/features/pmProgress/components/insights/PmTimeframeStats.js +2 -2
  33. package/dist/commonjs/features/pmProgress/components/insights/PmTimeframeStats.js.map +1 -1
  34. package/dist/commonjs/features/pmProgress/components/list/Fluency.js +2 -2
  35. package/dist/commonjs/features/pmProgress/components/list/Fluency.js.map +1 -1
  36. package/dist/commonjs/features/pmProgress/components/list/ListCard.js +2 -2
  37. package/dist/commonjs/features/pmProgress/components/list/ListCard.js.map +1 -1
  38. package/dist/commonjs/features/pmProgress/components/list/ListItem.js +2 -2
  39. package/dist/commonjs/features/pmProgress/components/list/ListItem.js.map +1 -1
  40. package/dist/commonjs/features/pmProgress/components/locked/PmStatusOverlay.js +2 -2
  41. package/dist/commonjs/features/pmProgress/components/locked/PmStatusOverlay.js.map +1 -1
  42. package/dist/commonjs/features/pmProgress/components/recs/PmTeacherRecs.js +2 -2
  43. package/dist/commonjs/features/pmProgress/components/recs/PmTeacherRecs.js.map +1 -1
  44. package/dist/commonjs/features/pmProgress/shared/pmProgress.helpers.js +5 -5
  45. package/dist/commonjs/features/pmProgress/shared/pmProgress.helpers.js.map +1 -1
  46. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.js +2 -2
  47. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.js.map +1 -1
  48. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js +2 -2
  49. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js.map +1 -1
  50. package/dist/commonjs/features/voice/recording/components/VoiceRecordButton.js +2 -2
  51. package/dist/commonjs/features/voice/recording/components/VoiceRecordButton.js.map +1 -1
  52. package/dist/commonjs/features/voice/recording/modal/ModalFooterButtons.js +2 -2
  53. package/dist/commonjs/features/voice/recording/modal/ModalFooterButtons.js.map +1 -1
  54. package/dist/commonjs/features/voice/recording/modal/VoiceRecordDeleteModal.js +2 -2
  55. package/dist/commonjs/features/voice/recording/modal/VoiceRecordDeleteModal.js.map +1 -1
  56. package/dist/commonjs/features/voice/recording/modal/VoiceRecordUndoModal.js +2 -2
  57. package/dist/commonjs/features/voice/recording/modal/VoiceRecordUndoModal.js.map +1 -1
  58. package/dist/commonjs/features/voice/recording/model/VoiceRecord.model.js +7 -7
  59. package/dist/commonjs/features/voice/recording/model/VoiceRecord.model.js.map +1 -1
  60. package/dist/commonjs/i18n/i18n.js +19 -0
  61. package/dist/commonjs/i18n/i18n.js.map +1 -0
  62. package/dist/commonjs/i18n/i18next.d.js +5 -0
  63. package/dist/commonjs/i18n/i18next.d.js.map +1 -0
  64. package/dist/commonjs/index.js +26 -41
  65. package/dist/commonjs/index.js.map +1 -1
  66. package/dist/commonjs/lib/helpers/helpers.js +12 -12
  67. package/dist/commonjs/lib/helpers/helpers.js.map +1 -1
  68. package/dist/module/features/chatbot/components/ChatInput/FreeText/FreeTextInputBlock.js +1 -1
  69. package/dist/module/features/chatbot/components/ChatInput/FreeText/FreeTextInputBlock.js.map +1 -1
  70. package/dist/module/features/chatbot/errorSpotting/ErrorSpottingButton.js +1 -1
  71. package/dist/module/features/chatbot/errorSpotting/ErrorSpottingButton.js.map +1 -1
  72. package/dist/module/features/chatbot/helpers.js +1 -1
  73. package/dist/module/features/chatbot/helpers.js.map +1 -1
  74. package/dist/module/features/chatbot/model/ChatBoxTextManager.js +2 -3
  75. package/dist/module/features/chatbot/model/ChatBoxTextManager.js.map +1 -1
  76. package/dist/module/features/chatbot/model/DefaultMessageCreator.js +3 -2
  77. package/dist/module/features/chatbot/model/DefaultMessageCreator.js.map +1 -1
  78. package/dist/module/features/exampleSolution/components/ExampleSolutionModalContent.js +3 -4
  79. package/dist/module/features/exampleSolution/components/ExampleSolutionModalContent.js.map +1 -1
  80. package/dist/module/features/exampleSolution/model/ExampleSolutionApi.js +5 -9
  81. package/dist/module/features/exampleSolution/model/ExampleSolutionApi.js.map +1 -1
  82. package/dist/module/features/feedback/components/EmptyComment.js +1 -1
  83. package/dist/module/features/feedback/components/EmptyComment.js.map +1 -1
  84. package/dist/module/features/feedback/model/comments.js +1 -1
  85. package/dist/module/features/feedback/model/comments.js.map +1 -1
  86. package/dist/module/features/gifCelebrations/components/Gif.js +1 -1
  87. package/dist/module/features/gifCelebrations/components/Gif.js.map +1 -1
  88. package/dist/module/features/gifCelebrations/helpers.js.map +1 -1
  89. package/dist/module/features/keyboard/components/Numpad/Numpad.js +1 -1
  90. package/dist/module/features/keyboard/components/Numpad/Numpad.js.map +1 -1
  91. package/dist/module/features/keyboard/components/UnitsLayout/hooks/useUnitTabs.js +1 -1
  92. package/dist/module/features/keyboard/components/UnitsLayout/hooks/useUnitTabs.js.map +1 -1
  93. package/dist/module/features/pmProgress/components/header/NextUp.js +1 -1
  94. package/dist/module/features/pmProgress/components/header/NextUp.js.map +1 -1
  95. package/dist/module/features/pmProgress/components/header/PmProgressHeader.js +2 -2
  96. package/dist/module/features/pmProgress/components/header/PmProgressHeader.js.map +1 -1
  97. package/dist/module/features/pmProgress/components/header/StartButton.js +1 -1
  98. package/dist/module/features/pmProgress/components/header/StartButton.js.map +1 -1
  99. package/dist/module/features/pmProgress/components/insights/PmTimeframeStats.js +2 -3
  100. package/dist/module/features/pmProgress/components/insights/PmTimeframeStats.js.map +1 -1
  101. package/dist/module/features/pmProgress/components/list/Fluency.js +1 -1
  102. package/dist/module/features/pmProgress/components/list/Fluency.js.map +1 -1
  103. package/dist/module/features/pmProgress/components/list/ListCard.js +2 -2
  104. package/dist/module/features/pmProgress/components/list/ListCard.js.map +1 -1
  105. package/dist/module/features/pmProgress/components/list/ListItem.js +2 -2
  106. package/dist/module/features/pmProgress/components/list/ListItem.js.map +1 -1
  107. package/dist/module/features/pmProgress/components/locked/PmStatusOverlay.js +1 -1
  108. package/dist/module/features/pmProgress/components/locked/PmStatusOverlay.js.map +1 -1
  109. package/dist/module/features/pmProgress/components/recs/PmTeacherRecs.js +2 -2
  110. package/dist/module/features/pmProgress/components/recs/PmTeacherRecs.js.map +1 -1
  111. package/dist/module/features/pmProgress/shared/pmProgress.helpers.js +1 -1
  112. package/dist/module/features/pmProgress/shared/pmProgress.helpers.js.map +1 -1
  113. package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdown.js +1 -1
  114. package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdown.js.map +1 -1
  115. package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js +1 -1
  116. package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js.map +1 -1
  117. package/dist/module/features/voice/recording/components/VoiceRecordButton.js +1 -1
  118. package/dist/module/features/voice/recording/components/VoiceRecordButton.js.map +1 -1
  119. package/dist/module/features/voice/recording/modal/ModalFooterButtons.js +1 -1
  120. package/dist/module/features/voice/recording/modal/ModalFooterButtons.js.map +1 -1
  121. package/dist/module/features/voice/recording/modal/VoiceRecordDeleteModal.js +1 -1
  122. package/dist/module/features/voice/recording/modal/VoiceRecordDeleteModal.js.map +1 -1
  123. package/dist/module/features/voice/recording/modal/VoiceRecordUndoModal.js +1 -1
  124. package/dist/module/features/voice/recording/modal/VoiceRecordUndoModal.js.map +1 -1
  125. package/dist/module/features/voice/recording/model/VoiceRecord.model.js +1 -1
  126. package/dist/module/features/voice/recording/model/VoiceRecord.model.js.map +1 -1
  127. package/dist/module/i18n/i18n.js +12 -0
  128. package/dist/module/i18n/i18n.js.map +1 -0
  129. package/dist/module/i18n/i18next.d.js +5 -0
  130. package/dist/module/i18n/i18next.d.js.map +1 -0
  131. package/dist/module/index.js +0 -1
  132. package/dist/module/index.js.map +1 -1
  133. package/dist/module/lib/helpers/helpers.js +1 -1
  134. package/dist/module/lib/helpers/helpers.js.map +1 -1
  135. package/dist/typescript/commonjs/features/chatbot/model/ChatBoxTextManager.d.ts +2 -2
  136. package/dist/typescript/commonjs/features/chatbot/model/ChatBoxTextManager.d.ts.map +1 -1
  137. package/dist/typescript/commonjs/features/chatbot/model/DefaultMessageCreator.d.ts +1 -2
  138. package/dist/typescript/commonjs/features/chatbot/model/DefaultMessageCreator.d.ts.map +1 -1
  139. package/dist/typescript/commonjs/features/exampleSolution/components/ExampleSolutionModalContent.d.ts.map +1 -1
  140. package/dist/typescript/commonjs/features/exampleSolution/model/ExampleSolutionApi.d.ts.map +1 -1
  141. package/dist/typescript/commonjs/features/gifCelebrations/helpers.d.ts +2 -2
  142. package/dist/typescript/commonjs/features/gifCelebrations/helpers.d.ts.map +1 -1
  143. package/dist/typescript/commonjs/features/pmProgress/components/list/Fluency.d.ts.map +1 -1
  144. package/dist/typescript/commonjs/features/pmProgress/components/list/ListCard.d.ts.map +1 -1
  145. package/dist/typescript/commonjs/features/pmProgress/components/locked/PmStatusOverlay.d.ts.map +1 -1
  146. package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.helpers.d.ts +1 -1
  147. package/dist/typescript/commonjs/features/pmProgress/shared/pmProgress.helpers.d.ts.map +1 -1
  148. package/dist/typescript/commonjs/features/voice/recording/components/VoiceRecordButton.d.ts.map +1 -1
  149. package/dist/typescript/commonjs/features/voice/recording/modal/ModalFooterButtons.d.ts +2 -2
  150. package/dist/typescript/commonjs/features/voice/recording/modal/ModalFooterButtons.d.ts.map +1 -1
  151. package/dist/typescript/commonjs/i18n/i18n.d.ts +8 -0
  152. package/dist/typescript/commonjs/i18n/i18n.d.ts.map +1 -0
  153. package/dist/typescript/commonjs/index.d.ts +0 -1
  154. package/dist/typescript/commonjs/index.d.ts.map +1 -1
  155. package/dist/typescript/module/features/chatbot/model/ChatBoxTextManager.d.ts +2 -2
  156. package/dist/typescript/module/features/chatbot/model/ChatBoxTextManager.d.ts.map +1 -1
  157. package/dist/typescript/module/features/chatbot/model/DefaultMessageCreator.d.ts +1 -2
  158. package/dist/typescript/module/features/chatbot/model/DefaultMessageCreator.d.ts.map +1 -1
  159. package/dist/typescript/module/features/exampleSolution/components/ExampleSolutionModalContent.d.ts.map +1 -1
  160. package/dist/typescript/module/features/exampleSolution/model/ExampleSolutionApi.d.ts.map +1 -1
  161. package/dist/typescript/module/features/gifCelebrations/helpers.d.ts +2 -2
  162. package/dist/typescript/module/features/gifCelebrations/helpers.d.ts.map +1 -1
  163. package/dist/typescript/module/features/pmProgress/components/list/Fluency.d.ts.map +1 -1
  164. package/dist/typescript/module/features/pmProgress/components/list/ListCard.d.ts.map +1 -1
  165. package/dist/typescript/module/features/pmProgress/components/locked/PmStatusOverlay.d.ts.map +1 -1
  166. package/dist/typescript/module/features/pmProgress/shared/pmProgress.helpers.d.ts +1 -1
  167. package/dist/typescript/module/features/pmProgress/shared/pmProgress.helpers.d.ts.map +1 -1
  168. package/dist/typescript/module/features/voice/recording/components/VoiceRecordButton.d.ts.map +1 -1
  169. package/dist/typescript/module/features/voice/recording/modal/ModalFooterButtons.d.ts +2 -2
  170. package/dist/typescript/module/features/voice/recording/modal/ModalFooterButtons.d.ts.map +1 -1
  171. package/dist/typescript/module/i18n/i18n.d.ts +8 -0
  172. package/dist/typescript/module/i18n/i18n.d.ts.map +1 -0
  173. package/dist/typescript/module/index.d.ts +0 -1
  174. package/dist/typescript/module/index.d.ts.map +1 -1
  175. package/package.json +11 -6
  176. package/src/features/chatbot/components/ChatInput/FreeText/FreeTextInputBlock.tsx +1 -1
  177. package/src/features/chatbot/errorSpotting/ErrorSpottingButton.tsx +1 -1
  178. package/src/features/chatbot/helpers.ts +1 -1
  179. package/src/features/chatbot/model/ChatBoxTextManager.ts +4 -8
  180. package/src/features/chatbot/model/DefaultMessageCreator.ts +3 -3
  181. package/src/features/exampleSolution/components/ExampleSolutionModalContent.tsx +3 -4
  182. package/src/features/exampleSolution/model/ExampleSolutionApi.ts +5 -9
  183. package/src/features/feedback/components/EmptyComment.tsx +1 -1
  184. package/src/features/feedback/model/comments.ts +1 -1
  185. package/src/features/gifCelebrations/components/Gif.tsx +1 -1
  186. package/src/features/gifCelebrations/helpers.ts +2 -2
  187. package/src/features/keyboard/components/Numpad/Numpad.tsx +1 -1
  188. package/src/features/keyboard/components/UnitsLayout/hooks/useUnitTabs.ts +1 -1
  189. package/src/features/pmProgress/components/header/NextUp.tsx +1 -1
  190. package/src/features/pmProgress/components/header/PmProgressHeader.tsx +2 -2
  191. package/src/features/pmProgress/components/header/StartButton.tsx +1 -1
  192. package/src/features/pmProgress/components/insights/PmTimeframeStats.tsx +2 -2
  193. package/src/features/pmProgress/components/list/Fluency.tsx +1 -1
  194. package/src/features/pmProgress/components/list/ListCard.tsx +3 -2
  195. package/src/features/pmProgress/components/list/ListItem.tsx +2 -2
  196. package/src/features/pmProgress/components/locked/PmStatusOverlay.tsx +4 -12
  197. package/src/features/pmProgress/components/recs/PmTeacherRecs.tsx +2 -2
  198. package/src/features/pmProgress/shared/pmProgress.helpers.ts +2 -2
  199. package/src/features/voice/playing/components/VoiceTranscriptionsDropdown.tsx +1 -1
  200. package/src/features/voice/playing/components/VoiceTranscriptionsDropdownItem.tsx +1 -1
  201. package/src/features/voice/recording/components/VoiceRecordButton.tsx +1 -1
  202. package/src/features/voice/recording/modal/ModalFooterButtons.tsx +2 -3
  203. package/src/features/voice/recording/modal/VoiceRecordDeleteModal.tsx +1 -1
  204. package/src/features/voice/recording/modal/VoiceRecordUndoModal.tsx +1 -1
  205. package/src/features/voice/recording/model/VoiceRecord.model.ts +1 -1
  206. package/{dist/commonjs/shared/translation/localization/en.json → src/i18n/.generated/schema.json} +67 -62
  207. package/src/i18n/i18n.ts +13 -0
  208. package/src/i18n/i18next.d.ts +20 -0
  209. package/src/index.ts +0 -1
  210. package/src/lib/helpers/helpers.ts +1 -1
  211. package/dist/commonjs/lib/types/keys.js +0 -2
  212. package/dist/commonjs/lib/types/keys.js.map +0 -1
  213. package/dist/commonjs/shared/translation/constants.js +0 -23
  214. package/dist/commonjs/shared/translation/constants.js.map +0 -1
  215. package/dist/commonjs/shared/translation/helpers.js +0 -47
  216. package/dist/commonjs/shared/translation/helpers.js.map +0 -1
  217. package/dist/commonjs/shared/translation/hooks.js +0 -25
  218. package/dist/commonjs/shared/translation/hooks.js.map +0 -1
  219. package/dist/commonjs/shared/translation/index.js +0 -45
  220. package/dist/commonjs/shared/translation/index.js.map +0 -1
  221. package/dist/commonjs/shared/translation/localization/ca.json +0 -85
  222. package/dist/commonjs/shared/translation/localization/de.json +0 -85
  223. package/dist/commonjs/shared/translation/localization/gb.json +0 -85
  224. package/dist/commonjs/shared/translation/localization/sct.json +0 -85
  225. package/dist/commonjs/shared/translation/localization/sw.json +0 -85
  226. package/dist/commonjs/shared/translation/model.js +0 -15
  227. package/dist/commonjs/shared/translation/model.js.map +0 -1
  228. package/dist/commonjs/shared/translation/types.js +0 -6
  229. package/dist/commonjs/shared/translation/types.js.map +0 -1
  230. package/dist/commonjs/shared/translation/validation.types.js +0 -6
  231. package/dist/commonjs/shared/translation/validation.types.js.map +0 -1
  232. package/dist/module/lib/types/keys.js +0 -2
  233. package/dist/module/lib/types/keys.js.map +0 -1
  234. package/dist/module/shared/translation/constants.js +0 -18
  235. package/dist/module/shared/translation/constants.js.map +0 -1
  236. package/dist/module/shared/translation/helpers.js +0 -38
  237. package/dist/module/shared/translation/helpers.js.map +0 -1
  238. package/dist/module/shared/translation/hooks.js +0 -19
  239. package/dist/module/shared/translation/hooks.js.map +0 -1
  240. package/dist/module/shared/translation/index.js +0 -6
  241. package/dist/module/shared/translation/index.js.map +0 -1
  242. package/dist/module/shared/translation/localization/ca.json +0 -85
  243. package/dist/module/shared/translation/localization/de.json +0 -85
  244. package/dist/module/shared/translation/localization/en.json +0 -85
  245. package/dist/module/shared/translation/localization/gb.json +0 -85
  246. package/dist/module/shared/translation/localization/sct.json +0 -85
  247. package/dist/module/shared/translation/localization/sw.json +0 -85
  248. package/dist/module/shared/translation/model.js +0 -11
  249. package/dist/module/shared/translation/model.js.map +0 -1
  250. package/dist/module/shared/translation/types.js +0 -4
  251. package/dist/module/shared/translation/types.js.map +0 -1
  252. package/dist/module/shared/translation/validation.types.js +0 -4
  253. package/dist/module/shared/translation/validation.types.js.map +0 -1
  254. package/dist/typescript/commonjs/lib/types/keys.d.ts +0 -8
  255. package/dist/typescript/commonjs/lib/types/keys.d.ts.map +0 -1
  256. package/dist/typescript/commonjs/shared/translation/constants.d.ts +0 -513
  257. package/dist/typescript/commonjs/shared/translation/constants.d.ts.map +0 -1
  258. package/dist/typescript/commonjs/shared/translation/helpers.d.ts +0 -7
  259. package/dist/typescript/commonjs/shared/translation/helpers.d.ts.map +0 -1
  260. package/dist/typescript/commonjs/shared/translation/hooks.d.ts +0 -5
  261. package/dist/typescript/commonjs/shared/translation/hooks.d.ts.map +0 -1
  262. package/dist/typescript/commonjs/shared/translation/index.d.ts +0 -4
  263. package/dist/typescript/commonjs/shared/translation/index.d.ts.map +0 -1
  264. package/dist/typescript/commonjs/shared/translation/model.d.ts +0 -173
  265. package/dist/typescript/commonjs/shared/translation/model.d.ts.map +0 -1
  266. package/dist/typescript/commonjs/shared/translation/types.d.ts +0 -6
  267. package/dist/typescript/commonjs/shared/translation/types.d.ts.map +0 -1
  268. package/dist/typescript/commonjs/shared/translation/validation.types.d.ts +0 -21
  269. package/dist/typescript/commonjs/shared/translation/validation.types.d.ts.map +0 -1
  270. package/dist/typescript/module/lib/types/keys.d.ts +0 -8
  271. package/dist/typescript/module/lib/types/keys.d.ts.map +0 -1
  272. package/dist/typescript/module/shared/translation/constants.d.ts +0 -513
  273. package/dist/typescript/module/shared/translation/constants.d.ts.map +0 -1
  274. package/dist/typescript/module/shared/translation/helpers.d.ts +0 -7
  275. package/dist/typescript/module/shared/translation/helpers.d.ts.map +0 -1
  276. package/dist/typescript/module/shared/translation/hooks.d.ts +0 -5
  277. package/dist/typescript/module/shared/translation/hooks.d.ts.map +0 -1
  278. package/dist/typescript/module/shared/translation/index.d.ts +0 -4
  279. package/dist/typescript/module/shared/translation/index.d.ts.map +0 -1
  280. package/dist/typescript/module/shared/translation/model.d.ts +0 -173
  281. package/dist/typescript/module/shared/translation/model.d.ts.map +0 -1
  282. package/dist/typescript/module/shared/translation/types.d.ts +0 -6
  283. package/dist/typescript/module/shared/translation/types.d.ts.map +0 -1
  284. package/dist/typescript/module/shared/translation/validation.types.d.ts +0 -21
  285. package/dist/typescript/module/shared/translation/validation.types.d.ts.map +0 -1
  286. package/src/lib/types/keys.ts +0 -18
  287. package/src/shared/translation/constants.ts +0 -16
  288. package/src/shared/translation/helpers.ts +0 -47
  289. package/src/shared/translation/hooks.ts +0 -25
  290. package/src/shared/translation/index.ts +0 -3
  291. package/src/shared/translation/localization/ca.json +0 -85
  292. package/src/shared/translation/localization/de.json +0 -85
  293. package/src/shared/translation/localization/en.json +0 -85
  294. package/src/shared/translation/localization/gb.json +0 -85
  295. package/src/shared/translation/localization/sct.json +0 -85
  296. package/src/shared/translation/localization/sw.json +0 -85
  297. package/src/shared/translation/model.ts +0 -16
  298. package/src/shared/translation/types.ts +0 -21
  299. package/src/shared/translation/validation.types.ts +0 -34
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@magmamath/students-features",
3
- "version": "1.3.15",
3
+ "version": "1.3.16-rc.22",
4
4
  "description": "Magmamath features library",
5
5
  "source": "src/index.ts",
6
6
  "main": "src/index.ts",
@@ -15,10 +15,11 @@
15
15
  "scripts": {
16
16
  "clean": "del-cli dist",
17
17
  "prepare": "bob build",
18
- "release": "release-it"
18
+ "release": "release-it",
19
+ "pull-translations": "node scripts/pullTranslations.mjs"
19
20
  },
20
21
  "peerDependencies": {
21
- "@magmamath/frontend-config": "1.1.3",
22
+ "@magmamath/frontend-config": ">=1.2.0",
22
23
  "@magmamath/react-native-draw-board": "*",
23
24
  "@magmamath/react-native-ui": "*",
24
25
  "@matteappen/skills-utils": "^3.7.1",
@@ -37,10 +38,12 @@
37
38
  "react-native-linear-gradient": "*",
38
39
  "react-native-modalfy": "*",
39
40
  "react-native-reanimated": ">=0.3.16",
40
- "react-native-svg": "^15.10.0"
41
+ "react-native-svg": "^15.10.0",
42
+ "i18next": ">=23",
43
+ "react-i18next": ">=15"
41
44
  },
42
45
  "devDependencies": {
43
- "@magmamath/frontend-config": "1.1.3",
46
+ "@magmamath/frontend-config": "1.3.2",
44
47
  "@magmamath/react-native-draw-board": "1.8.2",
45
48
  "@magmamath/react-native-ui": "0.4.83",
46
49
  "@matteappen/skills-utils": "^3.7.1",
@@ -73,7 +76,9 @@
73
76
  "react-native-reanimated": "^3.17.2",
74
77
  "react-native-svg": "^15.10.0",
75
78
  "release-it": "^17.10.0",
76
- "typescript": "^5.2.2"
79
+ "typescript": "^5.2.2",
80
+ "i18next": "^25.2.1",
81
+ "react-i18next": "^15.5.2"
77
82
  },
78
83
  "resolutions": {
79
84
  "@types/react": "^18.2.44"
@@ -4,7 +4,7 @@ import { StyleSheet, View } from 'react-native'
4
4
  import { ColorScheme } from '../../../types/style.types'
5
5
  import { HintButtonVariant, RequestHintButton } from '../RequestHintButton'
6
6
  import { useChatModel } from '../../../context/ChatBotModelContext'
7
- import { t } from '../../../../../shared/translation'
7
+ import { getText as t } from '../../../../../i18n/i18n'
8
8
  import { ChatTextInput } from './ChatTextInput'
9
9
 
10
10
  type FreeTextInputBlockProps = {
@@ -5,7 +5,7 @@ import { useStoreMap, useUnit } from 'effector-react'
5
5
  import { StyleSheet } from 'react-native'
6
6
  import { HighlighterIcon } from '../../../shared/icons/HighlighterIcon'
7
7
  import { ConversationMessage } from '../types/units.types'
8
- import { useText } from '../../../shared/translation'
8
+ import { useText } from '../../../i18n/i18n'
9
9
 
10
10
  type ErrorSpottingButtonProps = {
11
11
  contextMessage: ConversationMessage
@@ -2,7 +2,7 @@ import { IS_WEB } from '@magmamath/react-native-ui'
2
2
  // https://stackoverflow.com/questions/56575859/google-translate-api-does-not-return-apostrophe-as-apostrophe-in-python
3
3
  import { KATEX_REPLACEMENTS, KATEX_REPLACEMENTS_REVERSE } from './constants'
4
4
  import { GetAlternativesResponse, PostMessagePayload } from './types/api.types'
5
- import { t } from '../../shared/translation'
5
+ import { getText as t } from '../../i18n/i18n'
6
6
  import { ThreadItem } from './model/ThreadItem'
7
7
  import { ChatRequestPayload, ChatRequestType } from './types/model.types'
8
8
 
@@ -1,13 +1,11 @@
1
1
  import { DefaultMessagesCreator } from './DefaultMessageCreator'
2
- import { TranslationKeys } from '../../../shared/translation/types'
3
- import { getText } from '../../../shared/translation/helpers'
4
2
  import { ChatbotMessages } from '../types/model.types'
5
- import { $localization } from '../../../shared/translation'
3
+ import { getText, TranslationKey } from '../../../i18n/i18n'
6
4
 
7
5
  export class ChatBotTextManager {
8
- private readonly messagesCreator = new DefaultMessagesCreator<TranslationKeys>({
6
+ private readonly messagesCreator = new DefaultMessagesCreator<TranslationKey>({
9
7
  textGetter: getText,
10
- }).bindToLanguageChanged($localization.updates)
8
+ }).bindToLanguageChanged()
11
9
 
12
10
  public readonly messages: ChatbotMessages = {
13
11
  error: this.messagesCreator.createMessage('chat.errorMessage', {
@@ -20,9 +18,7 @@ export class ChatBotTextManager {
20
18
  }
21
19
  private readonly defaultMessages = { ...this.messages }
22
20
 
23
- public update(
24
- cb: (manager: DefaultMessagesCreator<TranslationKeys>) => Partial<ChatbotMessages>,
25
- ) {
21
+ public update(cb: (manager: DefaultMessagesCreator<TranslationKey>) => Partial<ChatbotMessages>) {
26
22
  Object.assign(this.messages, cb(this.messagesCreator))
27
23
  }
28
24
 
@@ -1,5 +1,5 @@
1
+ import i18next from 'i18next'
1
2
  import { PostMessageResponse } from '../types/api.types'
2
- import { Event } from 'effector'
3
3
  import { ChatAnswer } from '../types/units.types'
4
4
 
5
5
  type ChatMessage = Omit<PostMessageResponse, 'threadId'> & {
@@ -45,8 +45,8 @@ export class DefaultMessagesCreator<K extends string> {
45
45
  return option
46
46
  }
47
47
 
48
- public bindToLanguageChanged(event: Event<unknown>) {
49
- event.watch(() => {
48
+ public bindToLanguageChanged() {
49
+ i18next.on('languageChanged', () => {
50
50
  this.list.forEach((key, chatMessage) => {
51
51
  if ('message' in chatMessage) {
52
52
  chatMessage.message = this.getter(key)
@@ -1,12 +1,11 @@
1
1
  import { StyleSheet, View } from 'react-native'
2
2
  import React from 'react'
3
3
  import { COLORS, HeadingVariants, IS_WEB, SPACING, Typography } from '@magmamath/react-native-ui'
4
- import { useUnit } from 'effector-react'
5
- import { $localization } from '../../../shared/translation'
6
4
  import { ExampleSolutionModalParams } from '../types'
7
5
  import { QuestionSection } from './QuestionSection'
8
6
  import { SolutionSection } from './SolutionSection'
9
7
  import { useExampleSolution } from '../hooks/useExampleSolution'
8
+ import { useText } from '../../../i18n/i18n'
10
9
 
11
10
  type ExampleSolutionModalContentProps = {
12
11
  params: ExampleSolutionModalParams
@@ -18,7 +17,7 @@ export const ExampleSolutionModalContent = ({
18
17
  params: { model, payload, cacheKey },
19
18
  }: ExampleSolutionModalContentProps) => {
20
19
  const { result, status } = useExampleSolution({ model, payload, cacheKey })
21
- const localization = useUnit($localization)
20
+ const t = useText()
22
21
 
23
22
  return (
24
23
  <View
@@ -28,7 +27,7 @@ export const ExampleSolutionModalContent = ({
28
27
  ]}
29
28
  >
30
29
  <Typography align="center" variant={HeadingVariants.H2} style={{ color: COLORS.NEUTRAL_9 }}>
31
- {localization.exampleSolution.exampleSolution}
30
+ {t('exampleSolution.exampleSolution')}
32
31
  </Typography>
33
32
  <View style={styles.content}>
34
33
  <QuestionSection
@@ -1,7 +1,7 @@
1
1
  import { createControllerEffect } from './../../../lib/effector/createControllerEffect'
2
2
  import { ExampleSolutionApiRequests, ExampleSolutionErrorHandler } from '../types'
3
- import { $localization } from '../../../shared/translation'
4
- import { createEffect, sample, attach, StoreValue } from 'effector'
3
+ import { createEffect, sample } from 'effector'
4
+ import { getText } from '../../../i18n/i18n'
5
5
 
6
6
  type ExampleSolutionApiProps = {
7
7
  api: ExampleSolutionApiRequests
@@ -12,13 +12,9 @@ export class ExampleSolutionsApi {
12
12
  public readonly generateExampleSolutionFx
13
13
  public readonly errorHandlerFx?: ExampleSolutionErrorHandler
14
14
 
15
- public readonly errorHandlingFx = attach({
16
- source: $localization,
17
- effect: createEffect((localization: StoreValue<typeof $localization>) => {
18
- if (!this.errorHandlerFx) return
19
- const errorMessage = localization.exampleSolution.errorMessage
20
- this.errorHandlerFx(errorMessage)
21
- }),
15
+ public readonly errorHandlingFx = createEffect(() => {
16
+ if (!this.errorHandlerFx) return
17
+ this.errorHandlerFx(getText('exampleSolution.errorMessage'))
22
18
  })
23
19
 
24
20
  constructor({ api, errorHandler }: ExampleSolutionApiProps) {
@@ -2,7 +2,7 @@ import React from 'react'
2
2
  import { StyleSheet, Text, View } from 'react-native'
3
3
  import { COLORS } from '@magmamath/react-native-ui'
4
4
  import { BUENOS_AIRES_FONT } from '../constants'
5
- import { useText } from '../../../shared/translation'
5
+ import { useText } from '../../../i18n/i18n'
6
6
 
7
7
  export const EmptyComment = () => {
8
8
  const t = useText()
@@ -2,7 +2,7 @@ import { createEvent, restore, sample, Store } from 'effector'
2
2
  import { AddCommentProps, CommentsMap, Credits, DeleteCommentProps, TeacherComment } from '../types'
3
3
  import { TeacherFeedbackAPI } from './api'
4
4
  import { updateCommentsState } from '../helpers'
5
- import { getText } from '../../../shared/translation/helpers'
5
+ import { getText } from '../../../i18n/i18n'
6
6
  import { EMPTY_COMMENT } from '@magmamath/students-features'
7
7
 
8
8
  type TeacherCommentsModelProps = {
@@ -3,7 +3,7 @@ import React, { useLayoutEffect, useState } from 'react'
3
3
  import { BORDER_RADIUS, COLORS, IS_WEB, SPACING } from '@magmamath/react-native-ui'
4
4
  import { CustomGetCachePathMethod, GifObject, TextComponentType } from '../types/model.types'
5
5
  import { MAX_GIF_SIZE, MIN_GIF_SIZE } from '../constants'
6
- import { useText } from '../../../shared/translation'
6
+ import { useText } from '../../../i18n/i18n'
7
7
  import { constrainDimension, getGifLabel, getImagePath } from '../helpers'
8
8
  import gifFallback from '../assets/gifFallback.gif'
9
9
  import { Size } from '../../../types/common.types'
@@ -1,4 +1,4 @@
1
- import { TranslationKeys } from 'src/shared/translation/types'
1
+ import { TranslationKey } from 'src/i18n/i18n'
2
2
  import {
3
3
  CustomGetCachePathMethod,
4
4
  GifsGroups,
@@ -86,7 +86,7 @@ export const generateGifsStructure = (gifs: GifsGroups): GifsStructure =>
86
86
  ]),
87
87
  )
88
88
 
89
- export const getGifLabel = (relatedGroup: GroupNumber): TranslationKeys => {
89
+ export const getGifLabel = (relatedGroup: GroupNumber): TranslationKey => {
90
90
  if (relatedGroup === 2) {
91
91
  return 'gifCelebrations.onTheWay'
92
92
  }
@@ -3,7 +3,7 @@ import { KeysList } from '../KeysList/KeysList'
3
3
  import { StyleProp, StyleSheet, View, ViewStyle } from 'react-native'
4
4
  import { SPACING } from '@magmamath/react-native-ui'
5
5
  import { KeyboardLayoutProps, KeyboardType } from '../../types/types'
6
- import { useText } from '../../../../shared/translation'
6
+ import { useText } from '../../../../i18n/i18n'
7
7
  import { getMainKeyboardGroup } from '../../helpers'
8
8
 
9
9
  type NumpadProps = {
@@ -1,4 +1,4 @@
1
- import { useText } from '../../../../../shared/translation'
1
+ import { useText } from '../../../../../i18n/i18n'
2
2
  import { useMemo, useState } from 'react'
3
3
  import { KeyboardUnitsGroupType, UnitTab } from '../types'
4
4
  import { useWindowDimensions } from 'react-native'
@@ -3,12 +3,12 @@ import { StyleSheet, View } from 'react-native'
3
3
  import { COLORS, HeadingVariants, SPACING, Typography } from '@magmamath/react-native-ui'
4
4
  import { SketchArrowRight } from '../../../../shared/icons/SketchArrowRight'
5
5
  import { SliceDiamondIcon } from '../../../../shared/icons/SliceDiamondIcon'
6
- import { useText } from '../../../../shared/translation'
7
6
  import { useUnit } from 'effector-react'
8
7
  import { usePmProgress } from '../../context/PmProgressContext'
9
8
  import { OpeningLoaderId, SolvingFlow } from '../../shared/pmProgress.constants'
10
9
  import { StartButton } from './StartButton'
11
10
  import { useNextUpDomain } from '../../hooks/useNextUpDomain'
11
+ import { useText } from '../../../../i18n/i18n'
12
12
 
13
13
  export const NextUp = () => {
14
14
  const t = useText()
@@ -14,13 +14,13 @@ import {
14
14
  Typography,
15
15
  } from '@magmamath/react-native-ui'
16
16
  import { isWeb } from '../../../../shared/common.constants'
17
- import { useText } from '../../../../shared/translation'
18
- import { useUnit, useStoreMap } from 'effector-react'
17
+ import { useStoreMap, useUnit } from 'effector-react'
19
18
  import { usePmProgress } from '../../context/PmProgressContext'
20
19
  import { formatGradeLabel } from '../../shared/pmProgress.helpers'
21
20
  import { MenuIcon } from '../../../../shared/icons/MenuIcon'
22
21
  import { NextUp } from './NextUp'
23
22
  import { BURGER_MENU_BREAKPOINT, MENU_MAX_HEIGHT } from '@magmamath/students-features'
23
+ import { useText } from '../../../../i18n/i18n'
24
24
 
25
25
  const menuItemProps: MenuItemProps = {
26
26
  style: {
@@ -11,7 +11,7 @@ import {
11
11
  SPACING,
12
12
  Typography,
13
13
  } from '@magmamath/react-native-ui'
14
- import { useText } from '../../../../shared/translation'
14
+ import { useText } from '../../../../i18n/i18n'
15
15
 
16
16
  const PULSATION_COLOR = '#FFBE4E66'
17
17
  const PULSE_OVERFLOW_X = 16
@@ -1,6 +1,7 @@
1
1
  import React from 'react'
2
2
  import { StyleSheet, View } from 'react-native'
3
3
  import {
4
+ BORDER_RADIUS,
4
5
  COLORS,
5
6
  FONT_FAMILY,
6
7
  SelectGroup,
@@ -12,12 +13,11 @@ import {
12
13
  import { StatsCard } from './StatsCard'
13
14
  import { StarIcon } from '../../../../shared/icons/StarIcon'
14
15
  import { TimerIcon } from '../../../../shared/icons/TimerIcon'
15
- import { BORDER_RADIUS } from '@magmamath/react-native-ui'
16
- import { useText } from '../../../../shared/translation'
17
16
  import { useUnit } from 'effector-react'
18
17
  import { formatTime } from '../../shared/pmProgress.helpers'
19
18
  import { InsightsTimeframe, STATS_MAX_HEIGHT } from '../../shared/pmProgress.constants'
20
19
  import { usePmProgress } from '../../context/PmProgressContext'
20
+ import { useText } from '../../../../i18n/i18n'
21
21
 
22
22
  const optionStyle: SelectOptionProps['style'] = {
23
23
  text: {
@@ -3,11 +3,11 @@ import { StyleSheet, View } from 'react-native'
3
3
  import { ListCard } from './ListCard'
4
4
  import { COLORS, SPACING } from '@magmamath/react-native-ui'
5
5
  import { SliceDiamondIcon } from '../../../../shared/icons/SliceDiamondIcon'
6
- import { useText } from '../../../../shared/translation'
7
6
  import { useUnit } from 'effector-react'
8
7
  import { SolvingFlow } from '../../shared/pmProgress.constants'
9
8
  import { Domain } from '../../shared/pmProgress.types'
10
9
  import { usePmProgress } from '../../context/PmProgressContext'
10
+ import { useText } from '../../../../i18n/i18n'
11
11
 
12
12
  type FluencyProps = {
13
13
  data: Domain | undefined
@@ -1,5 +1,5 @@
1
1
  import React, { useState } from 'react'
2
- import { Pressable, View, StyleSheet, Platform, ViewStyle } from 'react-native'
2
+ import { Platform, Pressable, StyleSheet, View, ViewStyle } from 'react-native'
3
3
  import {
4
4
  BORDER_RADIUS,
5
5
  CaretDownIcon,
@@ -10,7 +10,8 @@ import {
10
10
  Typography,
11
11
  } from '@magmamath/react-native-ui'
12
12
  import { ListItem } from './ListItem'
13
- import { useText } from '../../../../shared/translation'
13
+ import { useText } from '../../../../i18n/i18n'
14
+
14
15
  const HEADER_HEIGHT = 60
15
16
  const PROGRESS_BAR_WIDTH = 50
16
17
  const PROGRESS_BAR_HEIGHT = 10
@@ -1,5 +1,5 @@
1
1
  import React, { useState } from 'react'
2
- import { ActivityIndicator, View, Pressable, StyleSheet, Text } from 'react-native'
2
+ import { ActivityIndicator, Pressable, StyleSheet, Text, View } from 'react-native'
3
3
  import {
4
4
  ArrowRightIcon,
5
5
  BORDER_RADIUS,
@@ -11,7 +11,7 @@ import {
11
11
  SPACING,
12
12
  Typography,
13
13
  } from '@magmamath/react-native-ui'
14
- import { useText } from '../../../../shared/translation'
14
+ import { useText } from '../../../../i18n/i18n'
15
15
 
16
16
  const CARD_HEIGHT = 52
17
17
  const ICON_SIZE = 25
@@ -1,22 +1,14 @@
1
1
  import React, { ReactNode } from 'react'
2
2
  import { StyleSheet, View } from 'react-native'
3
- import {
4
- COLORS,
5
- ErrorIcon,
6
- HeadingVariants,
7
- LockIcon,
8
- SPACING,
9
- Typography,
10
- } from '@magmamath/react-native-ui'
11
- import { useText } from '../../../../shared/translation'
12
- import { TranslationKeys } from '../../../../shared/translation/types'
3
+ import { COLORS, ErrorIcon, HeadingVariants, LockIcon, SPACING, Typography, } from '@magmamath/react-native-ui'
13
4
  import { PmProgressStatus } from '../../shared/pmProgress.constants'
5
+ import { TranslationKey, useText } from '../../../../i18n/i18n'
14
6
 
15
7
  type EmptyStateVariant = {
16
8
  icon: ReactNode
17
9
  circleColor: string
18
- titleKey: TranslationKeys
19
- subtitleKey: TranslationKeys
10
+ titleKey: TranslationKey
11
+ subtitleKey: TranslationKey
20
12
  }
21
13
 
22
14
  const PM_EMPTY_STATE_VARIANTS: Record<PmProgressStatus, EmptyStateVariant> = {
@@ -11,10 +11,10 @@ import {
11
11
  SHADOWS,
12
12
  SPACING,
13
13
  } from '@magmamath/react-native-ui'
14
- import { useText } from '../../../../shared/translation'
15
- import { useUnit, useStoreMap } from 'effector-react'
14
+ import { useStoreMap, useUnit } from 'effector-react'
16
15
  import { CustomDomain, OpeningLoaderId, SolvingFlow } from '../../shared/pmProgress.constants'
17
16
  import { usePmProgress } from '../../context/PmProgressContext'
17
+ import { useText } from '../../../../i18n/i18n'
18
18
 
19
19
  export const PmTeacherRecs = () => {
20
20
  const t = useText()
@@ -1,5 +1,6 @@
1
1
  import { COLORS } from '@magmamath/react-native-ui'
2
2
  import type { ProgressMatrixStatsDto } from '@matteappen/skills-utils/enhanceProgressData/types'
3
+ import type { GradeLabelsMap } from './pmProgress.types'
3
4
  import {
4
5
  Domain,
5
6
  DomainStandard,
@@ -13,8 +14,7 @@ import {
13
14
  import { CustomDomain, DOMAIN_BORDER_COLORS, DOMAIN_COLORS } from './pmProgress.constants'
14
15
  import { dynamicCornerRadius, dynamicInnerRadius } from '../components/chart/chart.helpers'
15
16
  import type { PieChartManagerConfig } from '../components/chart/chart.types'
16
- import { getText } from '../../../shared/translation/helpers'
17
- import type { GradeLabelsMap } from './pmProgress.types'
17
+ import { getText } from '../../../i18n/i18n'
18
18
 
19
19
  const groupStandardsByDomain = (
20
20
  standardStats: ProgressMatrixStatsDto[number]['standardStats'],
@@ -24,7 +24,7 @@ import { useVoiceTranscriptionsDropdown } from '../hooks/useVoiceTranscriptionsD
24
24
  import { VoicePlayerModel, PlayerState } from '../model'
25
25
  import { VoiceTranscriptionsDropdownItem } from './VoiceTranscriptionsDropdownItem'
26
26
  import { DROPDOWN_MAX_CONTENT_HEIGHT, NO_AUDIO_BE_MESSAGE } from '../../constants'
27
- import { useText } from '../../../../shared/translation'
27
+ import { useText } from '../../../../i18n/i18n'
28
28
  import { PlayButton } from '../../../../shared/components/PlayButton'
29
29
  import { getActiveAttempt, getAudioStatus } from '../../helpers'
30
30
 
@@ -12,7 +12,7 @@ import {
12
12
  } from '@magmamath/react-native-ui'
13
13
  import Animated, { runOnJS, useAnimatedReaction } from 'react-native-reanimated'
14
14
  import { useVoiceTranscriptionsDropdownItemAnimation } from '../hooks/useVoiceTranscriptionsDropdownItemAnimation'
15
- import { useText } from '../../../../shared/translation'
15
+ import { useText } from '../../../../i18n/i18n'
16
16
 
17
17
  type VoiceTranscriptionsDropdownItemProps = {
18
18
  attempt: number
@@ -16,8 +16,8 @@ import { Pressable, StyleSheet } from 'react-native'
16
16
  import { VoiceRecordModel } from '../model/VoiceRecord.model'
17
17
  import { useUnit } from 'effector-react'
18
18
  import { VOICE_RECORD_SHADOWS, VoiceRecorderState } from '../../constants'
19
- import { useText } from '../../../../shared/translation'
20
19
  import { RecordButtonVariant } from '../../types'
20
+ import { useText } from '../../../../i18n/i18n'
21
21
 
22
22
  type VoiceRecordButtonProps = {
23
23
  model: VoiceRecordModel
@@ -1,13 +1,12 @@
1
1
  import React from 'react'
2
2
  import { Button, ButtonColor, ButtonSize, ButtonVariant, SPACING } from '@magmamath/react-native-ui'
3
3
  import { StyleSheet, View } from 'react-native'
4
- import { useText } from '../../../../shared/translation'
5
- import { TranslationKeys } from '../../../../shared/translation/types'
4
+ import { TranslationKey, useText } from '../../../../i18n/i18n'
6
5
 
7
6
  type ModalFooterButtonsProps = {
8
7
  onCancel: () => void
9
8
  onConfirm: () => void
10
- confirmLabel: TranslationKeys
9
+ confirmLabel: TranslationKey
11
10
  confirmColor?: ButtonColor
12
11
  }
13
12
 
@@ -3,7 +3,7 @@ import { BaseModal, ButtonColor } from '@magmamath/react-native-ui'
3
3
  import { StyleSheet } from 'react-native'
4
4
  import { useUnit } from 'effector-react'
5
5
  import { VoiceRecorderState } from '../../constants'
6
- import { useText } from '../../../../shared/translation'
6
+ import { useText } from '../../../../i18n/i18n'
7
7
  import { ModalFooterButtons } from './ModalFooterButtons'
8
8
  import { VoiceRecordModalParams } from '../../types'
9
9
 
@@ -1,7 +1,7 @@
1
1
  import React from 'react'
2
2
  import { BaseModal } from '@magmamath/react-native-ui'
3
3
  import { StyleSheet } from 'react-native'
4
- import { useText } from '../../../../shared/translation'
4
+ import { useText } from '../../../../i18n/i18n'
5
5
  import { ModalFooterButtons } from './ModalFooterButtons'
6
6
  import { VoiceRecordModalParams } from '../../types'
7
7
 
@@ -10,7 +10,7 @@ import {
10
10
  } from '../../types'
11
11
  import { ensureRecordingPermissions, getAvailableInputs } from '../../helpers'
12
12
  import { VOICE_RECORDER_MIN_DURATION_MS } from '../../constants'
13
- import { t } from '../../../../shared/translation'
13
+ import { getText as t } from '../../../../i18n/i18n'
14
14
 
15
15
  type VoiceRecordModelParams = {
16
16
  api: VoiceRecorderApi