@magmamath/students-features 1.3.22 → 1.3.23-rc.10

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 (270) hide show
  1. package/dist/commonjs/features/translation/constants.js +11 -0
  2. package/dist/commonjs/features/translation/constants.js.map +1 -0
  3. package/dist/commonjs/features/translation/helpers.js +60 -0
  4. package/dist/commonjs/features/translation/helpers.js.map +1 -0
  5. package/dist/commonjs/features/translation/index.js +105 -0
  6. package/dist/commonjs/features/translation/index.js.map +1 -0
  7. package/dist/commonjs/features/translation/model/TranslationModel.js +122 -0
  8. package/dist/commonjs/features/translation/model/TranslationModel.js.map +1 -0
  9. package/dist/commonjs/features/translation/model/TranslationPreprocessor.js +142 -0
  10. package/dist/commonjs/features/translation/model/TranslationPreprocessor.js.map +1 -0
  11. package/dist/commonjs/features/translation/model/TranslationService.js +112 -0
  12. package/dist/commonjs/features/translation/model/TranslationService.js.map +1 -0
  13. package/dist/commonjs/features/translation/preserve/wordsToPreserve.js +314 -0
  14. package/dist/commonjs/features/translation/preserve/wordsToPreserve.js.map +1 -0
  15. package/dist/commonjs/features/translation/providers/google/GoogleTranslationProvider.js +50 -0
  16. package/dist/commonjs/features/translation/providers/google/GoogleTranslationProvider.js.map +1 -0
  17. package/dist/commonjs/features/translation/providers/google/supportedLanguages.js +230 -0
  18. package/dist/commonjs/features/translation/providers/google/supportedLanguages.js.map +1 -0
  19. package/dist/commonjs/features/translation/providers/google.types.js +2 -0
  20. package/dist/commonjs/features/translation/providers/google.types.js.map +1 -0
  21. package/dist/commonjs/features/translation/providers/translation.interface.js +49 -0
  22. package/dist/commonjs/features/translation/providers/translation.interface.js.map +1 -0
  23. package/dist/commonjs/features/translation/types.js +2 -0
  24. package/dist/commonjs/features/translation/types.js.map +1 -0
  25. package/dist/commonjs/features/voice/index.js +4 -4
  26. package/dist/commonjs/features/voice/index.js.map +1 -1
  27. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptContent.js +44 -0
  28. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptContent.js.map +1 -0
  29. package/dist/commonjs/features/voice/playing/components/VoiceTranscription.js +142 -0
  30. package/dist/commonjs/features/voice/playing/components/VoiceTranscription.js.map +1 -0
  31. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionCollapsible.js +66 -0
  32. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionCollapsible.js.map +1 -0
  33. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionHeaderActions.js +59 -0
  34. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionHeaderActions.js.map +1 -0
  35. package/dist/commonjs/features/voice/playing/hooks/{useVoiceTranscriptionsDropdown.js → useVoiceTranscription.js} +4 -4
  36. package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscription.js.map +1 -0
  37. package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionAutoTranslate.js +26 -0
  38. package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionAutoTranslate.js.map +1 -0
  39. package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionEffects.js +37 -0
  40. package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionEffects.js.map +1 -0
  41. package/dist/commonjs/features/voice/playing/model/TranscriptionsDownloaderModel.js +18 -4
  42. package/dist/commonjs/features/voice/playing/model/TranscriptionsDownloaderModel.js.map +1 -1
  43. package/dist/commonjs/features/voice/playing/model/VoicePlayer.model.js +6 -2
  44. package/dist/commonjs/features/voice/playing/model/VoicePlayer.model.js.map +1 -1
  45. package/dist/commonjs/features/voice/playing/model/{VoiceTranscriptionsDropdown.model.js → VoiceTranscription.model.js} +4 -4
  46. package/dist/commonjs/features/voice/playing/model/VoiceTranscription.model.js.map +1 -0
  47. package/dist/commonjs/features/voice/playing/model/VoiceTranscriptionTranslation.model.js +62 -0
  48. package/dist/commonjs/features/voice/playing/model/VoiceTranscriptionTranslation.model.js.map +1 -0
  49. package/dist/commonjs/features/voice/types.js +6 -1
  50. package/dist/commonjs/features/voice/types.js.map +1 -1
  51. package/dist/commonjs/index.js +12 -0
  52. package/dist/commonjs/index.js.map +1 -1
  53. package/dist/module/features/translation/constants.js +7 -0
  54. package/dist/module/features/translation/constants.js.map +1 -0
  55. package/dist/module/features/translation/helpers.js +53 -0
  56. package/dist/module/features/translation/helpers.js.map +1 -0
  57. package/dist/module/features/translation/index.js +12 -0
  58. package/dist/module/features/translation/index.js.map +1 -0
  59. package/dist/module/features/translation/model/TranslationModel.js +117 -0
  60. package/dist/module/features/translation/model/TranslationModel.js.map +1 -0
  61. package/dist/module/features/translation/model/TranslationPreprocessor.js +137 -0
  62. package/dist/module/features/translation/model/TranslationPreprocessor.js.map +1 -0
  63. package/dist/module/features/translation/model/TranslationService.js +107 -0
  64. package/dist/module/features/translation/model/TranslationService.js.map +1 -0
  65. package/dist/module/features/translation/preserve/wordsToPreserve.js +310 -0
  66. package/dist/module/features/translation/preserve/wordsToPreserve.js.map +1 -0
  67. package/dist/module/features/translation/providers/google/GoogleTranslationProvider.js +45 -0
  68. package/dist/module/features/translation/providers/google/GoogleTranslationProvider.js.map +1 -0
  69. package/dist/module/features/translation/providers/google/supportedLanguages.js +225 -0
  70. package/dist/module/features/translation/providers/google/supportedLanguages.js.map +1 -0
  71. package/dist/module/features/translation/providers/google.types.js +2 -0
  72. package/dist/module/features/translation/providers/google.types.js.map +1 -0
  73. package/dist/module/features/translation/providers/translation.interface.js +44 -0
  74. package/dist/module/features/translation/providers/translation.interface.js.map +1 -0
  75. package/dist/module/features/translation/types.js +2 -0
  76. package/dist/module/features/translation/types.js.map +1 -0
  77. package/dist/module/features/voice/index.js +1 -1
  78. package/dist/module/features/voice/index.js.map +1 -1
  79. package/dist/module/features/voice/playing/components/VoiceTranscriptContent.js +38 -0
  80. package/dist/module/features/voice/playing/components/VoiceTranscriptContent.js.map +1 -0
  81. package/dist/module/features/voice/playing/components/VoiceTranscription.js +134 -0
  82. package/dist/module/features/voice/playing/components/VoiceTranscription.js.map +1 -0
  83. package/dist/module/features/voice/playing/components/VoiceTranscriptionCollapsible.js +58 -0
  84. package/dist/module/features/voice/playing/components/VoiceTranscriptionCollapsible.js.map +1 -0
  85. package/dist/module/features/voice/playing/components/VoiceTranscriptionHeaderActions.js +51 -0
  86. package/dist/module/features/voice/playing/components/VoiceTranscriptionHeaderActions.js.map +1 -0
  87. package/dist/module/features/voice/playing/hooks/{useVoiceTranscriptionsDropdown.js → useVoiceTranscription.js} +2 -2
  88. package/dist/module/features/voice/playing/hooks/useVoiceTranscription.js.map +1 -0
  89. package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionAutoTranslate.js +21 -0
  90. package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionAutoTranslate.js.map +1 -0
  91. package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionEffects.js +32 -0
  92. package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionEffects.js.map +1 -0
  93. package/dist/module/features/voice/playing/model/TranscriptionsDownloaderModel.js +18 -4
  94. package/dist/module/features/voice/playing/model/TranscriptionsDownloaderModel.js.map +1 -1
  95. package/dist/module/features/voice/playing/model/VoicePlayer.model.js +6 -2
  96. package/dist/module/features/voice/playing/model/VoicePlayer.model.js.map +1 -1
  97. package/dist/module/features/voice/playing/model/{VoiceTranscriptionsDropdown.model.js → VoiceTranscription.model.js} +2 -2
  98. package/dist/module/features/voice/playing/model/VoiceTranscription.model.js.map +1 -0
  99. package/dist/module/features/voice/playing/model/VoiceTranscriptionTranslation.model.js +57 -0
  100. package/dist/module/features/voice/playing/model/VoiceTranscriptionTranslation.model.js.map +1 -0
  101. package/dist/module/features/voice/types.js +5 -0
  102. package/dist/module/features/voice/types.js.map +1 -1
  103. package/dist/module/index.js +1 -0
  104. package/dist/module/index.js.map +1 -1
  105. package/dist/typescript/commonjs/features/translation/constants.d.ts +5 -0
  106. package/dist/typescript/commonjs/features/translation/constants.d.ts.map +1 -0
  107. package/dist/typescript/commonjs/features/translation/helpers.d.ts +9 -0
  108. package/dist/typescript/commonjs/features/translation/helpers.d.ts.map +1 -0
  109. package/dist/typescript/commonjs/features/translation/index.d.ts +12 -0
  110. package/dist/typescript/commonjs/features/translation/index.d.ts.map +1 -0
  111. package/dist/typescript/commonjs/features/translation/model/TranslationModel.d.ts +33 -0
  112. package/dist/typescript/commonjs/features/translation/model/TranslationModel.d.ts.map +1 -0
  113. package/dist/typescript/commonjs/features/translation/model/TranslationPreprocessor.d.ts +34 -0
  114. package/dist/typescript/commonjs/features/translation/model/TranslationPreprocessor.d.ts.map +1 -0
  115. package/dist/typescript/commonjs/features/translation/model/TranslationService.d.ts +40 -0
  116. package/dist/typescript/commonjs/features/translation/model/TranslationService.d.ts.map +1 -0
  117. package/dist/typescript/commonjs/features/translation/preserve/wordsToPreserve.d.ts +3 -0
  118. package/dist/typescript/commonjs/features/translation/preserve/wordsToPreserve.d.ts.map +1 -0
  119. package/dist/typescript/commonjs/features/translation/providers/google/GoogleTranslationProvider.d.ts +17 -0
  120. package/dist/typescript/commonjs/features/translation/providers/google/GoogleTranslationProvider.d.ts.map +1 -0
  121. package/dist/typescript/commonjs/features/translation/providers/google/supportedLanguages.d.ts +209 -0
  122. package/dist/typescript/commonjs/features/translation/providers/google/supportedLanguages.d.ts.map +1 -0
  123. package/dist/typescript/commonjs/features/translation/providers/google.types.d.ts +15 -0
  124. package/dist/typescript/commonjs/features/translation/providers/google.types.d.ts.map +1 -0
  125. package/dist/typescript/commonjs/features/translation/providers/translation.interface.d.ts +30 -0
  126. package/dist/typescript/commonjs/features/translation/providers/translation.interface.d.ts.map +1 -0
  127. package/dist/typescript/commonjs/features/translation/types.d.ts +27 -0
  128. package/dist/typescript/commonjs/features/translation/types.d.ts.map +1 -0
  129. package/dist/typescript/commonjs/features/voice/index.d.ts +1 -1
  130. package/dist/typescript/commonjs/features/voice/index.d.ts.map +1 -1
  131. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptContent.d.ts +8 -0
  132. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptContent.d.ts.map +1 -0
  133. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscription.d.ts +16 -0
  134. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscription.d.ts.map +1 -0
  135. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionCollapsible.d.ts +10 -0
  136. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionCollapsible.d.ts.map +1 -0
  137. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionHeaderActions.d.ts +12 -0
  138. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionHeaderActions.d.ts.map +1 -0
  139. package/dist/typescript/{module/features/voice/playing/hooks/useVoiceTranscriptionsDropdown.d.ts → commonjs/features/voice/playing/hooks/useVoiceTranscription.d.ts} +3 -3
  140. package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscription.d.ts.map +1 -0
  141. package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionAutoTranslate.d.ts +10 -0
  142. package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionAutoTranslate.d.ts.map +1 -0
  143. package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionEffects.d.ts +12 -0
  144. package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionEffects.d.ts.map +1 -0
  145. package/dist/typescript/commonjs/features/voice/playing/model/TranscriptionsDownloaderModel.d.ts +1 -0
  146. package/dist/typescript/commonjs/features/voice/playing/model/TranscriptionsDownloaderModel.d.ts.map +1 -1
  147. package/dist/typescript/commonjs/features/voice/playing/model/VoicePlayer.model.d.ts +4 -2
  148. package/dist/typescript/commonjs/features/voice/playing/model/VoicePlayer.model.d.ts.map +1 -1
  149. package/dist/typescript/commonjs/features/voice/playing/model/{VoiceTranscriptionsDropdown.model.d.ts → VoiceTranscription.model.d.ts} +2 -2
  150. package/dist/typescript/commonjs/features/voice/playing/model/VoiceTranscription.model.d.ts.map +1 -0
  151. package/dist/typescript/commonjs/features/voice/playing/model/VoiceTranscriptionTranslation.model.d.ts +25 -0
  152. package/dist/typescript/commonjs/features/voice/playing/model/VoiceTranscriptionTranslation.model.d.ts.map +1 -0
  153. package/dist/typescript/commonjs/features/voice/types.d.ts +9 -1
  154. package/dist/typescript/commonjs/features/voice/types.d.ts.map +1 -1
  155. package/dist/typescript/commonjs/index.d.ts +1 -0
  156. package/dist/typescript/commonjs/index.d.ts.map +1 -1
  157. package/dist/typescript/module/features/translation/constants.d.ts +5 -0
  158. package/dist/typescript/module/features/translation/constants.d.ts.map +1 -0
  159. package/dist/typescript/module/features/translation/helpers.d.ts +9 -0
  160. package/dist/typescript/module/features/translation/helpers.d.ts.map +1 -0
  161. package/dist/typescript/module/features/translation/index.d.ts +12 -0
  162. package/dist/typescript/module/features/translation/index.d.ts.map +1 -0
  163. package/dist/typescript/module/features/translation/model/TranslationModel.d.ts +33 -0
  164. package/dist/typescript/module/features/translation/model/TranslationModel.d.ts.map +1 -0
  165. package/dist/typescript/module/features/translation/model/TranslationPreprocessor.d.ts +34 -0
  166. package/dist/typescript/module/features/translation/model/TranslationPreprocessor.d.ts.map +1 -0
  167. package/dist/typescript/module/features/translation/model/TranslationService.d.ts +40 -0
  168. package/dist/typescript/module/features/translation/model/TranslationService.d.ts.map +1 -0
  169. package/dist/typescript/module/features/translation/preserve/wordsToPreserve.d.ts +3 -0
  170. package/dist/typescript/module/features/translation/preserve/wordsToPreserve.d.ts.map +1 -0
  171. package/dist/typescript/module/features/translation/providers/google/GoogleTranslationProvider.d.ts +17 -0
  172. package/dist/typescript/module/features/translation/providers/google/GoogleTranslationProvider.d.ts.map +1 -0
  173. package/dist/typescript/module/features/translation/providers/google/supportedLanguages.d.ts +209 -0
  174. package/dist/typescript/module/features/translation/providers/google/supportedLanguages.d.ts.map +1 -0
  175. package/dist/typescript/module/features/translation/providers/google.types.d.ts +15 -0
  176. package/dist/typescript/module/features/translation/providers/google.types.d.ts.map +1 -0
  177. package/dist/typescript/module/features/translation/providers/translation.interface.d.ts +30 -0
  178. package/dist/typescript/module/features/translation/providers/translation.interface.d.ts.map +1 -0
  179. package/dist/typescript/module/features/translation/types.d.ts +27 -0
  180. package/dist/typescript/module/features/translation/types.d.ts.map +1 -0
  181. package/dist/typescript/module/features/voice/index.d.ts +1 -1
  182. package/dist/typescript/module/features/voice/index.d.ts.map +1 -1
  183. package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptContent.d.ts +8 -0
  184. package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptContent.d.ts.map +1 -0
  185. package/dist/typescript/module/features/voice/playing/components/VoiceTranscription.d.ts +16 -0
  186. package/dist/typescript/module/features/voice/playing/components/VoiceTranscription.d.ts.map +1 -0
  187. package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionCollapsible.d.ts +10 -0
  188. package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionCollapsible.d.ts.map +1 -0
  189. package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionHeaderActions.d.ts +12 -0
  190. package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionHeaderActions.d.ts.map +1 -0
  191. package/dist/typescript/{commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdown.d.ts → module/features/voice/playing/hooks/useVoiceTranscription.d.ts} +3 -3
  192. package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscription.d.ts.map +1 -0
  193. package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionAutoTranslate.d.ts +10 -0
  194. package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionAutoTranslate.d.ts.map +1 -0
  195. package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionEffects.d.ts +12 -0
  196. package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionEffects.d.ts.map +1 -0
  197. package/dist/typescript/module/features/voice/playing/model/TranscriptionsDownloaderModel.d.ts +1 -0
  198. package/dist/typescript/module/features/voice/playing/model/TranscriptionsDownloaderModel.d.ts.map +1 -1
  199. package/dist/typescript/module/features/voice/playing/model/VoicePlayer.model.d.ts +4 -2
  200. package/dist/typescript/module/features/voice/playing/model/VoicePlayer.model.d.ts.map +1 -1
  201. package/dist/typescript/module/features/voice/playing/model/{VoiceTranscriptionsDropdown.model.d.ts → VoiceTranscription.model.d.ts} +2 -2
  202. package/dist/typescript/module/features/voice/playing/model/VoiceTranscription.model.d.ts.map +1 -0
  203. package/dist/typescript/module/features/voice/playing/model/VoiceTranscriptionTranslation.model.d.ts +25 -0
  204. package/dist/typescript/module/features/voice/playing/model/VoiceTranscriptionTranslation.model.d.ts.map +1 -0
  205. package/dist/typescript/module/features/voice/types.d.ts +9 -1
  206. package/dist/typescript/module/features/voice/types.d.ts.map +1 -1
  207. package/dist/typescript/module/index.d.ts +1 -0
  208. package/dist/typescript/module/index.d.ts.map +1 -1
  209. package/package.json +1 -1
  210. package/src/features/translation/constants.ts +4 -0
  211. package/src/features/translation/helpers.ts +63 -0
  212. package/src/features/translation/index.ts +30 -0
  213. package/src/features/translation/model/TranslationModel.ts +174 -0
  214. package/src/features/translation/model/TranslationPreprocessor.ts +171 -0
  215. package/src/features/translation/model/TranslationService.ts +148 -0
  216. package/src/features/translation/preserve/wordsToPreserve.ts +87 -0
  217. package/src/features/translation/providers/google/GoogleTranslationProvider.ts +50 -0
  218. package/src/features/translation/providers/google/supportedLanguages.ts +229 -0
  219. package/src/features/translation/providers/google.types.ts +16 -0
  220. package/src/features/translation/providers/translation.interface.ts +63 -0
  221. package/src/features/translation/types.ts +30 -0
  222. package/src/features/voice/index.ts +1 -1
  223. package/src/features/voice/playing/components/VoiceTranscriptContent.tsx +37 -0
  224. package/src/features/voice/playing/components/VoiceTranscription.tsx +175 -0
  225. package/src/features/voice/playing/components/VoiceTranscriptionCollapsible.tsx +59 -0
  226. package/src/features/voice/playing/components/VoiceTranscriptionHeaderActions.tsx +62 -0
  227. package/src/features/voice/playing/hooks/{useVoiceTranscriptionsDropdown.ts → useVoiceTranscription.ts} +2 -2
  228. package/src/features/voice/playing/hooks/useVoiceTranscriptionAutoTranslate.ts +32 -0
  229. package/src/features/voice/playing/hooks/useVoiceTranscriptionEffects.ts +44 -0
  230. package/src/features/voice/playing/model/TranscriptionsDownloaderModel.ts +12 -5
  231. package/src/features/voice/playing/model/VoicePlayer.model.ts +7 -2
  232. package/src/features/voice/playing/model/{VoiceTranscriptionsDropdown.model.ts → VoiceTranscription.model.ts} +2 -2
  233. package/src/features/voice/playing/model/VoiceTranscriptionTranslation.model.ts +75 -0
  234. package/src/features/voice/types.ts +15 -0
  235. package/src/index.ts +1 -0
  236. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.js +0 -245
  237. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.js.map +0 -1
  238. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js +0 -109
  239. package/dist/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js.map +0 -1
  240. package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdown.js.map +0 -1
  241. package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.js +0 -34
  242. package/dist/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.js.map +0 -1
  243. package/dist/commonjs/features/voice/playing/model/VoiceTranscriptionsDropdown.model.js.map +0 -1
  244. package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdown.js +0 -238
  245. package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdown.js.map +0 -1
  246. package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js +0 -103
  247. package/dist/module/features/voice/playing/components/VoiceTranscriptionsDropdownItem.js.map +0 -1
  248. package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdown.js.map +0 -1
  249. package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.js +0 -29
  250. package/dist/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.js.map +0 -1
  251. package/dist/module/features/voice/playing/model/VoiceTranscriptionsDropdown.model.js.map +0 -1
  252. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.d.ts +0 -16
  253. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdown.d.ts.map +0 -1
  254. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdownItem.d.ts +0 -12
  255. package/dist/typescript/commonjs/features/voice/playing/components/VoiceTranscriptionsDropdownItem.d.ts.map +0 -1
  256. package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdown.d.ts.map +0 -1
  257. package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.d.ts +0 -11
  258. package/dist/typescript/commonjs/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.d.ts.map +0 -1
  259. package/dist/typescript/commonjs/features/voice/playing/model/VoiceTranscriptionsDropdown.model.d.ts.map +0 -1
  260. package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionsDropdown.d.ts +0 -16
  261. package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionsDropdown.d.ts.map +0 -1
  262. package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionsDropdownItem.d.ts +0 -12
  263. package/dist/typescript/module/features/voice/playing/components/VoiceTranscriptionsDropdownItem.d.ts.map +0 -1
  264. package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdown.d.ts.map +0 -1
  265. package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.d.ts +0 -11
  266. package/dist/typescript/module/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.d.ts.map +0 -1
  267. package/dist/typescript/module/features/voice/playing/model/VoiceTranscriptionsDropdown.model.d.ts.map +0 -1
  268. package/src/features/voice/playing/components/VoiceTranscriptionsDropdown.tsx +0 -296
  269. package/src/features/voice/playing/components/VoiceTranscriptionsDropdownItem.tsx +0 -128
  270. package/src/features/voice/playing/hooks/useVoiceTranscriptionsDropdownItemAnimation.ts +0 -40
@@ -0,0 +1,225 @@
1
+ "use strict";
2
+
3
+ const SUPPORTED_CODES = new Set();
4
+ const NAME_TO_CODE = {};
5
+ const normalizeLanguageName = language => language.trim().toUpperCase().replace(/[\s()-]+/g, '_');
6
+
7
+ /**
8
+ * Resolves an arbitrary language input (ISO code, locale, or English name) to the
9
+ * Google Translate ISO code. Returns null when the language is not supported.
10
+ *
11
+ * Examples:
12
+ * "en" → "en"
13
+ * "en-SE" → "en" (base fallback)
14
+ * "zh-CN" → "zh-CN" (exact match)
15
+ * "Spanish" → "es" (name lookup)
16
+ * "Chinese Simplified" → "zh-CN"
17
+ */
18
+ export const resolveGoogleLanguageCode = language => {
19
+ if (!language) return null;
20
+ if (SUPPORTED_CODES.has(language)) return language;
21
+ const base = language.split('-')[0];
22
+ if (base !== language && SUPPORTED_CODES.has(base)) return base;
23
+ return NAME_TO_CODE[normalizeLanguageName(language)] ?? null;
24
+ };
25
+ export const GoogleTranslateLanguage = {
26
+ ABKHAZ: 'ab',
27
+ ACEHNESE: 'ace',
28
+ ACHOLI: 'ach',
29
+ AFRIKAANS: 'af',
30
+ ALBANIAN: 'sq',
31
+ ALUR: 'alz',
32
+ AMHARIC: 'am',
33
+ ARABIC: 'ar',
34
+ ARMENIAN: 'hy',
35
+ ASSAMESE: 'as',
36
+ AWADHI: 'awa',
37
+ AYMARA: 'ay',
38
+ AZERBAIJANI: 'az',
39
+ BALINESE: 'ban',
40
+ BAMBARA: 'bm',
41
+ BASHKIR: 'ba',
42
+ BASQUE: 'eu',
43
+ BATAK_KARO: 'btx',
44
+ BATAK_SIMALUNGUN: 'bts',
45
+ BATAK_TOBA: 'bbc',
46
+ BELARUSIAN: 'be',
47
+ BEMBA: 'bem',
48
+ BENGALI: 'bn',
49
+ BETAWI: 'bew',
50
+ BHOJPURI: 'bho',
51
+ BIKOL: 'bik',
52
+ BOSNIAN: 'bs',
53
+ BRETON: 'br',
54
+ BULGARIAN: 'bg',
55
+ BURMESE: 'my',
56
+ BURYAT: 'bua',
57
+ CANTONESE: 'yue',
58
+ CATALAN: 'ca',
59
+ CEBUANO: 'ceb',
60
+ CHICHEWA_NYANJA: 'ny',
61
+ CHINESE_SIMPLIFIED: 'zh-CN',
62
+ CHINESE_TRADITIONAL: 'zh-TW',
63
+ CHUVASH: 'cv',
64
+ CORSICAN: 'co',
65
+ CRIMEAN_TATAR: 'crh',
66
+ CROATIAN: 'hr',
67
+ CZECH: 'cs',
68
+ DANISH: 'da',
69
+ DINKA: 'din',
70
+ DIVEHI: 'dv',
71
+ DOGRI: 'doi',
72
+ DOMBE: 'dov',
73
+ DUTCH: 'nl',
74
+ DZONGKHA: 'dz',
75
+ ENGLISH: 'en',
76
+ ESPERANTO: 'eo',
77
+ ESTONIAN: 'et',
78
+ EWE: 'ee',
79
+ FIJIAN: 'fj',
80
+ FILIPINO_TAGALOG: 'fil',
81
+ FINNISH: 'fi',
82
+ FRENCH: 'fr',
83
+ FRENCH_CANADA: 'fr-CA',
84
+ FRENCH_FRANCE: 'fr-FR',
85
+ FRISIAN: 'fy',
86
+ FULFULDE: 'ff',
87
+ GA: 'gaa',
88
+ GALICIAN: 'gl',
89
+ GANDA_LUGANDA: 'lg',
90
+ GEORGIAN: 'ka',
91
+ GERMAN: 'de',
92
+ GREEK: 'el',
93
+ GUARANI: 'gn',
94
+ GUJARATI: 'gu',
95
+ HAITIAN_CREOLE: 'ht',
96
+ HAKHA_CHIN: 'cnh',
97
+ HAUSA: 'ha',
98
+ HAWAIIAN: 'haw',
99
+ HEBREW: 'he',
100
+ HILIGAYNON: 'hil',
101
+ HINDI: 'hi',
102
+ HMONG: 'hmn',
103
+ HUNGARIAN: 'hu',
104
+ HUNSRIK: 'hrx',
105
+ ICELANDIC: 'is',
106
+ IGBO: 'ig',
107
+ ILOKO: 'ilo',
108
+ INDONESIAN: 'id',
109
+ IRISH: 'ga',
110
+ ITALIAN: 'it',
111
+ JAPANESE: 'ja',
112
+ JAVANESE: 'jw',
113
+ KANNADA: 'kn',
114
+ KAPAMPANGAN: 'pam',
115
+ KAZAKH: 'kk',
116
+ KHMER: 'km',
117
+ KIGA: 'cgg',
118
+ KINYARWANDA: 'rw',
119
+ KITUBA: 'ktu',
120
+ KONKANI: 'gom',
121
+ KOREAN: 'ko',
122
+ KRIO: 'kri',
123
+ KURMANJI: 'ku',
124
+ KYRGYZ: 'ky',
125
+ LAO: 'lo',
126
+ LATGALIAN: 'ltg',
127
+ LATIN: 'la',
128
+ LATVIAN: 'lv',
129
+ LIGURIAN: 'lij',
130
+ LIMBURGAN: 'li',
131
+ LINGALA: 'ln',
132
+ LITHUANIAN: 'lt',
133
+ LOMBARD: 'lmo',
134
+ LUO: 'luo',
135
+ LUXEMBOURGISH: 'lb',
136
+ MACEDONIAN: 'mk',
137
+ MAITHILI: 'mai',
138
+ MAKASSAR: 'mak',
139
+ MALAGASY: 'mg',
140
+ MALAY: 'ms',
141
+ MALAYALAM: 'ml',
142
+ MALAY_JAWI: 'ms-Arab',
143
+ MALTESE: 'mt',
144
+ MAORI: 'mi',
145
+ MARATHI: 'mr',
146
+ MEADOW_MARI: 'chm',
147
+ MEITEILON_MANIPURI: 'mni-Mtei',
148
+ MINANG: 'min',
149
+ MIZO: 'lus',
150
+ MONGOLIAN: 'mn',
151
+ NDEBELE_SOUTH: 'nr',
152
+ NEPALBHASA_NEWARI: 'new',
153
+ NEPALI: 'ne',
154
+ NORTHERN_SOTHO: 'nso',
155
+ NORWEGIAN: 'no',
156
+ NUER: 'nus',
157
+ OCCITAN: 'oc',
158
+ ODIA: 'or',
159
+ OROMO: 'om',
160
+ PANGASINAN: 'pag',
161
+ PAPIAMENTO: 'pap',
162
+ PASHTO: 'ps',
163
+ PERSIAN: 'fa',
164
+ POLISH: 'pl',
165
+ PORTUGUESE: 'pt',
166
+ PORTUGUESE_BRAZIL: 'pt-BR',
167
+ PORTUGUESE_PORTUGAL: 'pt-PT',
168
+ PUNJABI: 'pa',
169
+ PUNJABI_SHAHMUKHI: 'pa-Arab',
170
+ QUECHUA: 'qu',
171
+ ROMANI: 'rom',
172
+ ROMANIAN: 'ro',
173
+ RUNDI: 'rn',
174
+ RUSSIAN: 'ru',
175
+ SAMOAN: 'sm',
176
+ SANGO: 'sg',
177
+ SANSKRIT: 'sa',
178
+ SCOTS_GAELIC: 'gd',
179
+ SERBIAN: 'sr',
180
+ SESOTHO: 'st',
181
+ SEYCHELLOIS_CREOLE: 'crs',
182
+ SHAN: 'shn',
183
+ SHONA: 'sn',
184
+ SICILIAN: 'scn',
185
+ SILESIAN: 'szl',
186
+ SINDHI: 'sd',
187
+ SINHALA: 'si',
188
+ SLOVAK: 'sk',
189
+ SLOVENIAN: 'sl',
190
+ SOMALI: 'so',
191
+ SORANI: 'ckb',
192
+ SPANISH: 'es',
193
+ SUNDANESE: 'su',
194
+ SWAHILI: 'sw',
195
+ SWATI: 'ss',
196
+ SWEDISH: 'sv',
197
+ TAJIK: 'tg',
198
+ TAMIL: 'ta',
199
+ TATAR: 'tt',
200
+ TELUGU: 'te',
201
+ TETUM: 'tet',
202
+ THAI: 'th',
203
+ TIGRINYA: 'ti',
204
+ TSONGA: 'ts',
205
+ TSWANA: 'tn',
206
+ TURKISH: 'tr',
207
+ TURKMEN: 'tk',
208
+ TWI_AKAN: 'ak',
209
+ UKRAINIAN: 'uk',
210
+ URDU: 'ur',
211
+ UYGHUR: 'ug',
212
+ UZBEK: 'uz',
213
+ VIETNAMESE: 'vi',
214
+ WELSH: 'cy',
215
+ XHOSA: 'xh',
216
+ YIDDISH: 'yi',
217
+ YORUBA: 'yo',
218
+ YUCATEC_MAYA: 'yua',
219
+ ZULU: 'zu'
220
+ };
221
+ Object.entries(GoogleTranslateLanguage).forEach(([name, code]) => {
222
+ SUPPORTED_CODES.add(code);
223
+ NAME_TO_CODE[name] = code;
224
+ });
225
+ //# sourceMappingURL=supportedLanguages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["SUPPORTED_CODES","Set","NAME_TO_CODE","normalizeLanguageName","language","trim","toUpperCase","replace","resolveGoogleLanguageCode","has","base","split","GoogleTranslateLanguage","ABKHAZ","ACEHNESE","ACHOLI","AFRIKAANS","ALBANIAN","ALUR","AMHARIC","ARABIC","ARMENIAN","ASSAMESE","AWADHI","AYMARA","AZERBAIJANI","BALINESE","BAMBARA","BASHKIR","BASQUE","BATAK_KARO","BATAK_SIMALUNGUN","BATAK_TOBA","BELARUSIAN","BEMBA","BENGALI","BETAWI","BHOJPURI","BIKOL","BOSNIAN","BRETON","BULGARIAN","BURMESE","BURYAT","CANTONESE","CATALAN","CEBUANO","CHICHEWA_NYANJA","CHINESE_SIMPLIFIED","CHINESE_TRADITIONAL","CHUVASH","CORSICAN","CRIMEAN_TATAR","CROATIAN","CZECH","DANISH","DINKA","DIVEHI","DOGRI","DOMBE","DUTCH","DZONGKHA","ENGLISH","ESPERANTO","ESTONIAN","EWE","FIJIAN","FILIPINO_TAGALOG","FINNISH","FRENCH","FRENCH_CANADA","FRENCH_FRANCE","FRISIAN","FULFULDE","GA","GALICIAN","GANDA_LUGANDA","GEORGIAN","GERMAN","GREEK","GUARANI","GUJARATI","HAITIAN_CREOLE","HAKHA_CHIN","HAUSA","HAWAIIAN","HEBREW","HILIGAYNON","HINDI","HMONG","HUNGARIAN","HUNSRIK","ICELANDIC","IGBO","ILOKO","INDONESIAN","IRISH","ITALIAN","JAPANESE","JAVANESE","KANNADA","KAPAMPANGAN","KAZAKH","KHMER","KIGA","KINYARWANDA","KITUBA","KONKANI","KOREAN","KRIO","KURMANJI","KYRGYZ","LAO","LATGALIAN","LATIN","LATVIAN","LIGURIAN","LIMBURGAN","LINGALA","LITHUANIAN","LOMBARD","LUO","LUXEMBOURGISH","MACEDONIAN","MAITHILI","MAKASSAR","MALAGASY","MALAY","MALAYALAM","MALAY_JAWI","MALTESE","MAORI","MARATHI","MEADOW_MARI","MEITEILON_MANIPURI","MINANG","MIZO","MONGOLIAN","NDEBELE_SOUTH","NEPALBHASA_NEWARI","NEPALI","NORTHERN_SOTHO","NORWEGIAN","NUER","OCCITAN","ODIA","OROMO","PANGASINAN","PAPIAMENTO","PASHTO","PERSIAN","POLISH","PORTUGUESE","PORTUGUESE_BRAZIL","PORTUGUESE_PORTUGAL","PUNJABI","PUNJABI_SHAHMUKHI","QUECHUA","ROMANI","ROMANIAN","RUNDI","RUSSIAN","SAMOAN","SANGO","SANSKRIT","SCOTS_GAELIC","SERBIAN","SESOTHO","SEYCHELLOIS_CREOLE","SHAN","SHONA","SICILIAN","SILESIAN","SINDHI","SINHALA","SLOVAK","SLOVENIAN","SOMALI","SORANI","SPANISH","SUNDANESE","SWAHILI","SWATI","SWEDISH","TAJIK","TAMIL","TATAR","TELUGU","TETUM","THAI","TIGRINYA","TSONGA","TSWANA","TURKISH","TURKMEN","TWI_AKAN","UKRAINIAN","URDU","UYGHUR","UZBEK","VIETNAMESE","WELSH","XHOSA","YIDDISH","YORUBA","YUCATEC_MAYA","ZULU","Object","entries","forEach","name","code","add"],"sourceRoot":"../../../../../../src","sources":["features/translation/providers/google/supportedLanguages.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=google.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["features/translation/providers/google.types.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ import { replaceMappedTokens } from "../helpers.js";
4
+ export class TranslationProvider {
5
+ glossaries = {};
6
+ constructor({
7
+ supportedLanguages,
8
+ glossaries = {}
9
+ }) {
10
+ this.supportedLanguages = new Set(supportedLanguages);
11
+ this.glossaries = glossaries;
12
+ }
13
+ isTargetSupported(language) {
14
+ return this.resolveLanguage(language) !== null;
15
+ }
16
+
17
+ /**
18
+ * Returns the provider-supported variant of `language`, falling back to the base
19
+ * language part (e.g. "en-SE" → "en") when the exact locale is not listed.
20
+ * Subclasses may override to add their own resolution (e.g. language names).
21
+ * Returns null when the language cannot be resolved.
22
+ */
23
+ resolveLanguage(language) {
24
+ if (!language) return null;
25
+ if (this.supportedLanguages.has(language)) return language;
26
+ const base = language.split('-')[0];
27
+ if (base !== language && this.supportedLanguages.has(base)) return base;
28
+ return null;
29
+ }
30
+ getSupportedLanguages() {
31
+ return this.supportedLanguages.values();
32
+ }
33
+
34
+ /**
35
+ * Replaces full standalone words in text using a custom glossary for the target language,
36
+ * matching words like "Hello", or "Hej" regardless of case, but not when they appear inside other words.
37
+ */
38
+ applyGlossary(text, targetLanguage) {
39
+ const glossary = this.glossaries[targetLanguage];
40
+ if (!glossary) return text;
41
+ return replaceMappedTokens(text, glossary);
42
+ }
43
+ }
44
+ //# sourceMappingURL=translation.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["replaceMappedTokens","TranslationProvider","glossaries","constructor","supportedLanguages","Set","isTargetSupported","language","resolveLanguage","has","base","split","getSupportedLanguages","values","applyGlossary","text","targetLanguage","glossary"],"sourceRoot":"../../../../../src","sources":["features/translation/providers/translation.interface.ts"],"mappings":";;AAAA,SAASA,mBAAmB,QAAQ,eAAY;AAWhD,OAAO,MAAeC,mBAAmB,CAAC;EAErBC,UAAU,GAAqB,CAAC,CAAC;EAE1CC,WAAWA,CAAC;IAAEC,kBAAkB;IAAEF,UAAU,GAAG,CAAC;EAA4B,CAAC,EAAE;IACvF,IAAI,CAACE,kBAAkB,GAAG,IAAIC,GAAG,CAACD,kBAAkB,CAAC;IACrD,IAAI,CAACF,UAAU,GAAGA,UAAU;EAC9B;EAaOI,iBAAiBA,CAACC,QAAgB,EAAE;IACzC,OAAO,IAAI,CAACC,eAAe,CAACD,QAAQ,CAAC,KAAK,IAAI;EAChD;;EAEA;AACF;AACA;AACA;AACA;AACA;EACSC,eAAeA,CAACD,QAAgB,EAAiB;IACtD,IAAI,CAACA,QAAQ,EAAE,OAAO,IAAI;IAC1B,IAAI,IAAI,CAACH,kBAAkB,CAACK,GAAG,CAACF,QAAQ,CAAC,EAAE,OAAOA,QAAQ;IAC1D,MAAMG,IAAI,GAAGH,QAAQ,CAACI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACnC,IAAID,IAAI,KAAKH,QAAQ,IAAI,IAAI,CAACH,kBAAkB,CAACK,GAAG,CAACC,IAAI,CAAC,EAAE,OAAOA,IAAI;IACvE,OAAO,IAAI;EACb;EAEOE,qBAAqBA,CAAA,EAAG;IAC7B,OAAO,IAAI,CAACR,kBAAkB,CAACS,MAAM,CAAC,CAAC;EACzC;;EAEA;AACF;AACA;AACA;EACSC,aAAaA,CAACC,IAAY,EAAEC,cAAsB,EAAU;IACjE,MAAMC,QAAQ,GAAG,IAAI,CAACf,UAAU,CAACc,cAAc,CAAC;IAChD,IAAI,CAACC,QAAQ,EAAE,OAAOF,IAAI;IAC1B,OAAOf,mBAAmB,CAACe,IAAI,EAAEE,QAAQ,CAAC;EAC5C;AACF","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["features/translation/types.ts"],"mappings":"","ignoreList":[]}
@@ -5,7 +5,7 @@ export * from "./recording/model/VoiceRecord.model.js";
5
5
  export * from "./recording/modal/VoiceRecordDeleteModal.js";
6
6
  export * from "./recording/modal/VoiceRecordUndoModal.js";
7
7
  export * from "./playing/model/VoicePlayer.model.js";
8
- export * from "./playing/components/VoiceTranscriptionsDropdown.js";
8
+ export * from "./playing/components/VoiceTranscription.js";
9
9
  export * from "./playing/components/VoiceIcon.js";
10
10
  export * from "./constants.js";
11
11
  export * from "./types.js";
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["features/voice/index.ts"],"mappings":";;AAAA,cAAc,uCAAoC;AAClD,cAAc,wCAAqC;AACnD,cAAc,6CAA0C;AACxD,cAAc,2CAAwC;AAEtD,cAAc,sCAAmC;AACjD,cAAc,qDAAkD;AAEhE,cAAc,mCAAgC;AAC9C,cAAc,gBAAa;AAC3B,cAAc,YAAS","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["features/voice/index.ts"],"mappings":";;AAAA,cAAc,uCAAoC;AAClD,cAAc,wCAAqC;AACnD,cAAc,6CAA0C;AACxD,cAAc,2CAAwC;AAEtD,cAAc,sCAAmC;AACjD,cAAc,4CAAyC;AAEvD,cAAc,mCAAgC;AAC9C,cAAc,gBAAa;AAC3B,cAAc,YAAS","ignoreList":[]}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+
3
+ import { COLORS, Loader, LoaderColor, LoaderSize, Typography } from '@magmamath/react-native-ui';
4
+ import React from 'react';
5
+ import { StyleSheet, View } from 'react-native';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ export const VoiceTranscriptContent = ({
8
+ text,
9
+ isLoading
10
+ }) => {
11
+ if (isLoading) {
12
+ return /*#__PURE__*/_jsx(View, {
13
+ style: styles.loaderContainer,
14
+ children: /*#__PURE__*/_jsx(Loader, {
15
+ size: LoaderSize.SMALL,
16
+ color: LoaderColor.BLUE
17
+ })
18
+ });
19
+ }
20
+ return /*#__PURE__*/_jsx(Typography, {
21
+ variant: "h8",
22
+ style: styles.text,
23
+ children: text
24
+ });
25
+ };
26
+ const styles = StyleSheet.create({
27
+ text: {
28
+ color: COLORS.NEUTRAL_7,
29
+ paddingHorizontal: 8,
30
+ paddingVertical: 8
31
+ },
32
+ loaderContainer: {
33
+ justifyContent: 'center',
34
+ alignItems: 'center',
35
+ paddingVertical: 8
36
+ }
37
+ });
38
+ //# sourceMappingURL=VoiceTranscriptContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["COLORS","Loader","LoaderColor","LoaderSize","Typography","React","StyleSheet","View","jsx","_jsx","VoiceTranscriptContent","text","isLoading","style","styles","loaderContainer","children","size","SMALL","color","BLUE","variant","create","NEUTRAL_7","paddingHorizontal","paddingVertical","justifyContent","alignItems"],"sourceRoot":"../../../../../../src","sources":["features/voice/playing/components/VoiceTranscriptContent.tsx"],"mappings":";;AAAA,SAASA,MAAM,EAAEC,MAAM,EAAEC,WAAW,EAAEC,UAAU,EAAEC,UAAU,QAAQ,4BAA4B;AAChG,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAO/C,OAAO,MAAMC,sBAAsB,GAAGA,CAAC;EAAEC,IAAI;EAAEC;AAAuC,CAAC,KAAK;EAC1F,IAAIA,SAAS,EAAE;IACb,oBACEH,IAAA,CAACF,IAAI;MAACM,KAAK,EAAEC,MAAM,CAACC,eAAgB;MAAAC,QAAA,eAClCP,IAAA,CAACR,MAAM;QAACgB,IAAI,EAAEd,UAAU,CAACe,KAAM;QAACC,KAAK,EAAEjB,WAAW,CAACkB;MAAK,CAAE;IAAC,CACvD,CAAC;EAEX;EAEA,oBACEX,IAAA,CAACL,UAAU;IAACiB,OAAO,EAAC,IAAI;IAACR,KAAK,EAAEC,MAAM,CAACH,IAAK;IAAAK,QAAA,EACzCL;EAAI,CACK,CAAC;AAEjB,CAAC;AAED,MAAMG,MAAM,GAAGR,UAAU,CAACgB,MAAM,CAAC;EAC/BX,IAAI,EAAE;IACJQ,KAAK,EAAEnB,MAAM,CAACuB,SAAS;IACvBC,iBAAiB,EAAE,CAAC;IACpBC,eAAe,EAAE;EACnB,CAAC;EACDV,eAAe,EAAE;IACfW,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBF,eAAe,EAAE;EACnB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+
3
+ import { Typography, COLORS } from '@magmamath/react-native-ui';
4
+ import { useUnit } from 'effector-react';
5
+ import React, { useCallback, useEffect, useMemo } from 'react';
6
+ import { useTranslation } from 'react-i18next';
7
+ import { StyleSheet, View } from 'react-native';
8
+ import Animated from 'react-native-reanimated';
9
+ import { NO_AUDIO_BE_MESSAGE } from "../../constants.js";
10
+ import { getActiveAttempt } from "../../helpers.js";
11
+ import { VoiceTranscriptionVariant } from "../../types.js";
12
+ import { resolveGoogleLanguageCode } from "../../../translation/providers/google/supportedLanguages.js";
13
+ import { useText } from "../../../../i18n/i18n.js";
14
+ import { useVoiceTranscriptionEffects } from "../hooks/useVoiceTranscriptionEffects.js";
15
+ import { useVoiceTranscriptionAutoTranslate } from "../hooks/useVoiceTranscriptionAutoTranslate.js";
16
+ import { VoiceTranscriptContent } from "./VoiceTranscriptContent.js";
17
+ import { VoiceTranscriptionCollapsible } from "./VoiceTranscriptionCollapsible.js";
18
+ import { VoiceTranscriptionHeaderActions } from "./VoiceTranscriptionHeaderActions.js";
19
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
20
+ export const VoiceTranscription = ({
21
+ style,
22
+ model,
23
+ answers,
24
+ attemptOffset,
25
+ attemptsCount,
26
+ problemId,
27
+ variant = VoiceTranscriptionVariant.SMALL
28
+ }) => {
29
+ const t = useText();
30
+ const {
31
+ i18n
32
+ } = useTranslation();
33
+ const [playerState, isLoadingTranscripts, isTranslationActive, translations, isTranslating] = useUnit([model.$playerState, model.loader.loadAllTranscripts.pending, model.translation.$isActive, model.translation.$translations, model.translation.translate.pending]);
34
+ const activeAttempt = getActiveAttempt(attemptOffset, attemptsCount);
35
+ const isLargeVariant = variant === VoiceTranscriptionVariant.LARGE;
36
+ const answersKey = useMemo(() => answers.map(a => `${a._id}:${a.audioFileId ?? ''}`).join(','), [answers]);
37
+ useVoiceTranscriptionEffects({
38
+ model,
39
+ answers,
40
+ answersKey,
41
+ problemId,
42
+ activeAttempt
43
+ });
44
+ const hasActiveAudio = activeAttempt !== null && answers?.[activeAttempt - 1]?.audioFileId !== undefined;
45
+ const activeTranscript = activeAttempt !== null ? model.loader.getTranscript(activeAttempt) : null;
46
+ const hasTranscriptText = !!activeTranscript && activeTranscript !== NO_AUDIO_BE_MESSAGE;
47
+ const isActiveTranscriptLoading = isLoadingTranscripts && hasActiveAudio && !activeTranscript;
48
+ const transcriptLanguage = activeAttempt !== null ? model.loader.getTranscriptLanguage(activeAttempt) : undefined;
49
+ const isSourceSameAsTarget = !!transcriptLanguage && resolveGoogleLanguageCode(transcriptLanguage) === resolveGoogleLanguageCode(i18n.language);
50
+ const canTranslate = hasTranscriptText && !isSourceSameAsTarget;
51
+ const cachedTranslation = activeAttempt !== null ? translations[activeAttempt] : undefined;
52
+ const showTranslation = isTranslationActive && canTranslate;
53
+ const isTranslationLoading = showTranslation && !cachedTranslation && isTranslating;
54
+ const displayText = showTranslation ? cachedTranslation ?? activeTranscript : hasTranscriptText ? activeTranscript : t('voice.transcriptNotAvailable');
55
+ useVoiceTranscriptionAutoTranslate({
56
+ translationModel: model.translation,
57
+ canTranslate,
58
+ activeAttempt,
59
+ problemId
60
+ });
61
+ useEffect(() => {
62
+ if (showTranslation && activeAttempt !== null && !cachedTranslation && !isTranslating) {
63
+ model.translation.translate({
64
+ attemptNumber: activeAttempt,
65
+ targetLanguage: i18n.language
66
+ });
67
+ }
68
+ }, [showTranslation, activeAttempt, cachedTranslation, isTranslating, i18n.language, model]);
69
+ const handlePlayPress = useCallback(() => {
70
+ if (activeAttempt) {
71
+ model.translation.setActive(false);
72
+ model.togglePlayPause(activeAttempt);
73
+ }
74
+ }, [model, activeAttempt]);
75
+ const handleTranslationToggle = useCallback(() => {
76
+ model.translation.toggle();
77
+ }, [model]);
78
+ return /*#__PURE__*/_jsxs(Animated.View, {
79
+ style: [styles.container, isLargeVariant && styles.largeContainer, style],
80
+ children: [/*#__PURE__*/_jsxs(View, {
81
+ style: styles.header,
82
+ children: [/*#__PURE__*/_jsx(Typography, {
83
+ style: styles.title,
84
+ variant: "h7",
85
+ children: t('voice.transcriptions')
86
+ }), hasActiveAudio && /*#__PURE__*/_jsx(VoiceTranscriptionHeaderActions, {
87
+ playerState: playerState,
88
+ isTranslationActive: isTranslationActive,
89
+ canTranslate: canTranslate,
90
+ onPlayPress: handlePlayPress,
91
+ onTranslationPress: handleTranslationToggle
92
+ })]
93
+ }), isLargeVariant ? /*#__PURE__*/_jsx(VoiceTranscriptContent, {
94
+ text: displayText,
95
+ isLoading: isActiveTranscriptLoading || isTranslationLoading
96
+ }) : /*#__PURE__*/_jsx(VoiceTranscriptionCollapsible, {
97
+ text: displayText,
98
+ isLoading: isActiveTranscriptLoading || isTranslationLoading,
99
+ dropdown: model.dropdown
100
+ })]
101
+ });
102
+ };
103
+ const styles = StyleSheet.create({
104
+ container: {
105
+ position: 'absolute',
106
+ top: 56,
107
+ left: 8,
108
+ width: 222,
109
+ maxHeight: 405,
110
+ minHeight: 51,
111
+ padding: 4,
112
+ boxShadow: '0px 1px 3px 0px rgba(51, 51, 51, 0.25)',
113
+ borderRadius: 12,
114
+ backgroundColor: COLORS.NEUTRAL_1,
115
+ overflow: 'hidden'
116
+ },
117
+ largeContainer: {
118
+ width: '98%',
119
+ height: '100%'
120
+ },
121
+ header: {
122
+ flexDirection: 'row',
123
+ justifyContent: 'space-between',
124
+ alignItems: 'center',
125
+ padding: 4,
126
+ marginBottom: 4,
127
+ height: 32
128
+ },
129
+ title: {
130
+ color: COLORS.NEUTRAL_9,
131
+ marginLeft: 4
132
+ }
133
+ });
134
+ //# sourceMappingURL=VoiceTranscription.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Typography","COLORS","useUnit","React","useCallback","useEffect","useMemo","useTranslation","StyleSheet","View","Animated","NO_AUDIO_BE_MESSAGE","getActiveAttempt","VoiceTranscriptionVariant","resolveGoogleLanguageCode","useText","useVoiceTranscriptionEffects","useVoiceTranscriptionAutoTranslate","VoiceTranscriptContent","VoiceTranscriptionCollapsible","VoiceTranscriptionHeaderActions","jsx","_jsx","jsxs","_jsxs","VoiceTranscription","style","model","answers","attemptOffset","attemptsCount","problemId","variant","SMALL","t","i18n","playerState","isLoadingTranscripts","isTranslationActive","translations","isTranslating","$playerState","loader","loadAllTranscripts","pending","translation","$isActive","$translations","translate","activeAttempt","isLargeVariant","LARGE","answersKey","map","a","_id","audioFileId","join","hasActiveAudio","undefined","activeTranscript","getTranscript","hasTranscriptText","isActiveTranscriptLoading","transcriptLanguage","getTranscriptLanguage","isSourceSameAsTarget","language","canTranslate","cachedTranslation","showTranslation","isTranslationLoading","displayText","translationModel","attemptNumber","targetLanguage","handlePlayPress","setActive","togglePlayPause","handleTranslationToggle","toggle","styles","container","largeContainer","children","header","title","onPlayPress","onTranslationPress","text","isLoading","dropdown","create","position","top","left","width","maxHeight","minHeight","padding","boxShadow","borderRadius","backgroundColor","NEUTRAL_1","overflow","height","flexDirection","justifyContent","alignItems","marginBottom","color","NEUTRAL_9","marginLeft"],"sourceRoot":"../../../../../../src","sources":["features/voice/playing/components/VoiceTranscription.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ import { CaretDownIcon } from '@magmamath/react-native-ui';
4
+ import React, { useCallback } from 'react';
5
+ import { StyleSheet, TouchableOpacity, View } from 'react-native';
6
+ import Animated from 'react-native-reanimated';
7
+ import { useVoiceTranscriptionDropdown } from "../hooks/useVoiceTranscription.js";
8
+ import { VoiceTranscriptContent } from "./VoiceTranscriptContent.js";
9
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
10
+ const AnimatedTouchableOpacity = Animated.createAnimatedComponent(TouchableOpacity);
11
+ export const VoiceTranscriptionCollapsible = ({
12
+ text,
13
+ isLoading,
14
+ dropdown
15
+ }) => {
16
+ const {
17
+ listAnimatedStyle,
18
+ iconAnimatedStyle,
19
+ onListLayout
20
+ } = useVoiceTranscriptionDropdown(dropdown);
21
+ const handleToggle = useCallback(() => {
22
+ dropdown.toggleExpand();
23
+ }, [dropdown]);
24
+ return /*#__PURE__*/_jsxs(_Fragment, {
25
+ children: [/*#__PURE__*/_jsx(Animated.View, {
26
+ style: [listAnimatedStyle, styles.collapsibleContent],
27
+ children: /*#__PURE__*/_jsx(View, {
28
+ onLayout: onListLayout,
29
+ style: styles.transcriptContainer,
30
+ children: /*#__PURE__*/_jsx(VoiceTranscriptContent, {
31
+ text: text,
32
+ isLoading: isLoading
33
+ })
34
+ })
35
+ }), /*#__PURE__*/_jsx(AnimatedTouchableOpacity, {
36
+ style: [styles.expandButton, iconAnimatedStyle],
37
+ onPress: handleToggle,
38
+ children: /*#__PURE__*/_jsx(CaretDownIcon, {
39
+ size: 22
40
+ })
41
+ })]
42
+ });
43
+ };
44
+ const styles = StyleSheet.create({
45
+ collapsibleContent: {
46
+ overflow: 'hidden'
47
+ },
48
+ transcriptContainer: {
49
+ position: 'absolute',
50
+ width: '100%',
51
+ paddingHorizontal: 4
52
+ },
53
+ expandButton: {
54
+ justifyContent: 'center',
55
+ alignItems: 'center'
56
+ }
57
+ });
58
+ //# sourceMappingURL=VoiceTranscriptionCollapsible.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CaretDownIcon","React","useCallback","StyleSheet","TouchableOpacity","View","Animated","useVoiceTranscriptionDropdown","VoiceTranscriptContent","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","AnimatedTouchableOpacity","createAnimatedComponent","VoiceTranscriptionCollapsible","text","isLoading","dropdown","listAnimatedStyle","iconAnimatedStyle","onListLayout","handleToggle","toggleExpand","children","style","styles","collapsibleContent","onLayout","transcriptContainer","expandButton","onPress","size","create","overflow","position","width","paddingHorizontal","justifyContent","alignItems"],"sourceRoot":"../../../../../../src","sources":["features/voice/playing/components/VoiceTranscriptionCollapsible.tsx"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,4BAA4B;AAC1D,OAAOC,KAAK,IAAIC,WAAW,QAAQ,OAAO;AAC1C,SAASC,UAAU,EAAEC,gBAAgB,EAAEC,IAAI,QAAQ,cAAc;AACjE,OAAOC,QAAQ,MAAM,yBAAyB;AAC9C,SAASC,6BAA6B,QAAQ,mCAAgC;AAE9E,SAASC,sBAAsB,QAAQ,6BAA0B;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAEjE,MAAMC,wBAAwB,GAAGT,QAAQ,CAACU,uBAAuB,CAACZ,gBAAgB,CAAC;AAQnF,OAAO,MAAMa,6BAA6B,GAAGA,CAAC;EAC5CC,IAAI;EACJC,SAAS;EACTC;AACkC,CAAC,KAAK;EACxC,MAAM;IAAEC,iBAAiB;IAAEC,iBAAiB;IAAEC;EAAa,CAAC,GAC1DhB,6BAA6B,CAACa,QAAQ,CAAC;EAEzC,MAAMI,YAAY,GAAGtB,WAAW,CAAC,MAAM;IACrCkB,QAAQ,CAACK,YAAY,CAAC,CAAC;EACzB,CAAC,EAAE,CAACL,QAAQ,CAAC,CAAC;EAEd,oBACEN,KAAA,CAAAF,SAAA;IAAAc,QAAA,gBACEhB,IAAA,CAACJ,QAAQ,CAACD,IAAI;MAACsB,KAAK,EAAE,CAACN,iBAAiB,EAAEO,MAAM,CAACC,kBAAkB,CAAE;MAAAH,QAAA,eACnEhB,IAAA,CAACL,IAAI;QAACyB,QAAQ,EAAEP,YAAa;QAACI,KAAK,EAAEC,MAAM,CAACG,mBAAoB;QAAAL,QAAA,eAC9DhB,IAAA,CAACF,sBAAsB;UAACU,IAAI,EAAEA,IAAK;UAACC,SAAS,EAAEA;QAAU,CAAE;MAAC,CACxD;IAAC,CACM,CAAC,eAChBT,IAAA,CAACK,wBAAwB;MACvBY,KAAK,EAAE,CAACC,MAAM,CAACI,YAAY,EAAEV,iBAAiB,CAAE;MAChDW,OAAO,EAAET,YAAa;MAAAE,QAAA,eAEtBhB,IAAA,CAACV,aAAa;QAACkC,IAAI,EAAE;MAAG,CAAE;IAAC,CACH,CAAC;EAAA,CAC3B,CAAC;AAEP,CAAC;AAED,MAAMN,MAAM,GAAGzB,UAAU,CAACgC,MAAM,CAAC;EAC/BN,kBAAkB,EAAE;IAClBO,QAAQ,EAAE;EACZ,CAAC;EACDL,mBAAmB,EAAE;IACnBM,QAAQ,EAAE,UAAU;IACpBC,KAAK,EAAE,MAAM;IACbC,iBAAiB,EAAE;EACrB,CAAC;EACDP,YAAY,EAAE;IACZQ,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ import { Button, COLORS, GlobeIcon, SPACING } from '@magmamath/react-native-ui';
4
+ import React from 'react';
5
+ import { StyleSheet } from 'react-native';
6
+ import Animated, { FadeIn, FadeOut } from 'react-native-reanimated';
7
+ import { ColorScheme } from "../../../chatbot/types/style.types.js";
8
+ import { PlayButton } from "../../../../shared/components/PlayButton.js";
9
+ import { PlayerState } from "../model/index.js";
10
+ import { getAudioStatus } from "../../helpers.js";
11
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
+ export const VoiceTranscriptionHeaderActions = ({
13
+ playerState,
14
+ isTranslationActive,
15
+ canTranslate,
16
+ onPlayPress,
17
+ onTranslationPress
18
+ }) => {
19
+ const playButtonState = {
20
+ isActive: playerState !== PlayerState.IDLE,
21
+ isLoading: playerState === PlayerState.LOADING,
22
+ status: getAudioStatus(playerState)
23
+ };
24
+ return /*#__PURE__*/_jsxs(Animated.View, {
25
+ entering: FadeIn.duration(120),
26
+ exiting: FadeOut.duration(120),
27
+ style: styles.container,
28
+ children: [/*#__PURE__*/_jsx(PlayButton, {
29
+ state: playButtonState,
30
+ onPress: onPlayPress,
31
+ activityIndicatorColor: COLORS.NEUTRAL_1
32
+ }), canTranslate && /*#__PURE__*/_jsx(Button, {
33
+ variant: "secondary",
34
+ size: "small",
35
+ colorScheme: ColorScheme.Blue,
36
+ isActive: isTranslationActive,
37
+ onPress: onTranslationPress,
38
+ icon: /*#__PURE__*/_jsx(GlobeIcon, {
39
+ color: isTranslationActive ? COLORS.NEUTRAL_1 : COLORS.NEUTRAL_9
40
+ })
41
+ })]
42
+ });
43
+ };
44
+ const styles = StyleSheet.create({
45
+ container: {
46
+ flexDirection: 'row',
47
+ alignItems: 'center',
48
+ gap: SPACING[200]
49
+ }
50
+ });
51
+ //# sourceMappingURL=VoiceTranscriptionHeaderActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Button","COLORS","GlobeIcon","SPACING","React","StyleSheet","Animated","FadeIn","FadeOut","ColorScheme","PlayButton","PlayerState","getAudioStatus","jsx","_jsx","jsxs","_jsxs","VoiceTranscriptionHeaderActions","playerState","isTranslationActive","canTranslate","onPlayPress","onTranslationPress","playButtonState","isActive","IDLE","isLoading","LOADING","status","View","entering","duration","exiting","style","styles","container","children","state","onPress","activityIndicatorColor","NEUTRAL_1","variant","size","colorScheme","Blue","icon","color","NEUTRAL_9","create","flexDirection","alignItems","gap"],"sourceRoot":"../../../../../../src","sources":["features/voice/playing/components/VoiceTranscriptionHeaderActions.tsx"],"mappings":";;AAAA,SAASA,MAAM,EAAEC,MAAM,EAAEC,SAAS,EAAEC,OAAO,QAAQ,4BAA4B;AAC/E,OAAOC,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,QAAQ,cAAc;AACzC,OAAOC,QAAQ,IAAIC,MAAM,EAAEC,OAAO,QAAQ,yBAAyB;AACnE,SAASC,WAAW,QAAQ,uCAAoC;AAChE,SAASC,UAAU,QAAQ,6CAA0C;AACrE,SAASC,WAAW,QAAQ,mBAAU;AACtC,SAASC,cAAc,QAAQ,kBAAe;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAU9C,OAAO,MAAMC,+BAA+B,GAAGA,CAAC;EAC9CC,WAAW;EACXC,mBAAmB;EACnBC,YAAY;EACZC,WAAW;EACXC;AACqC,CAAC,KAAK;EAC3C,MAAMC,eAAe,GAAG;IACtBC,QAAQ,EAAEN,WAAW,KAAKP,WAAW,CAACc,IAAI;IAC1CC,SAAS,EAAER,WAAW,KAAKP,WAAW,CAACgB,OAAO;IAC9CC,MAAM,EAAEhB,cAAc,CAACM,WAAW;EACpC,CAAC;EAED,oBACEF,KAAA,CAACV,QAAQ,CAACuB,IAAI;IACZC,QAAQ,EAAEvB,MAAM,CAACwB,QAAQ,CAAC,GAAG,CAAE;IAC/BC,OAAO,EAAExB,OAAO,CAACuB,QAAQ,CAAC,GAAG,CAAE;IAC/BE,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,gBAExBtB,IAAA,CAACJ,UAAU;MACT2B,KAAK,EAAEd,eAAgB;MACvBe,OAAO,EAAEjB,WAAY;MACrBkB,sBAAsB,EAAEtC,MAAM,CAACuC;IAAU,CAC1C,CAAC,EACDpB,YAAY,iBACXN,IAAA,CAACd,MAAM;MACLyC,OAAO,EAAC,WAAW;MACnBC,IAAI,EAAC,OAAO;MACZC,WAAW,EAAElC,WAAW,CAACmC,IAAK;MAC9BpB,QAAQ,EAAEL,mBAAoB;MAC9BmB,OAAO,EAAEhB,kBAAmB;MAC5BuB,IAAI,eAAE/B,IAAA,CAACZ,SAAS;QAAC4C,KAAK,EAAE3B,mBAAmB,GAAGlB,MAAM,CAACuC,SAAS,GAAGvC,MAAM,CAAC8C;MAAU,CAAE;IAAE,CACvF,CACF;EAAA,CACY,CAAC;AAEpB,CAAC;AAED,MAAMb,MAAM,GAAG7B,UAAU,CAAC2C,MAAM,CAAC;EAC/Bb,SAAS,EAAE;IACTc,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAEhD,OAAO,CAAC,GAAG;EAClB;AACF,CAAC,CAAC","ignoreList":[]}