@dxos/plugin-transcription 0.9.0 → 0.9.1-staging.ee54ba693a

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 (324) hide show
  1. package/PLUGIN.mdl +25 -5
  2. package/dist/lib/neutral/{TranscriptionArticle-L6XANBH5.mjs → TranscriptionArticle-FEWCWG4A.mjs} +4 -7
  3. package/dist/lib/neutral/TranscriptionArticle-FEWCWG4A.mjs.map +7 -0
  4. package/dist/lib/neutral/TranscriptionPlugin.mjs +29 -6
  5. package/dist/lib/neutral/TranscriptionPlugin.mjs.map +4 -4
  6. package/dist/lib/neutral/TranscriptionPlugin.node.mjs +3 -3
  7. package/dist/lib/neutral/TranscriptionPlugin.node.mjs.map +3 -3
  8. package/dist/lib/neutral/app-graph-builder-GQRMI22E.mjs +48 -0
  9. package/dist/lib/neutral/app-graph-builder-GQRMI22E.mjs.map +7 -0
  10. package/dist/lib/neutral/capabilities/index.mjs +19 -5
  11. package/dist/lib/neutral/capabilities/index.mjs.map +3 -3
  12. package/dist/lib/neutral/chunk-5BVHY75B.mjs +54 -0
  13. package/dist/lib/neutral/chunk-5BVHY75B.mjs.map +7 -0
  14. package/dist/lib/neutral/chunk-HNXSU7HJ.mjs +8 -0
  15. package/dist/lib/neutral/{chunk-KXJZEYS7.mjs.map → chunk-HNXSU7HJ.mjs.map} +2 -2
  16. package/dist/lib/neutral/chunk-KOXLGGSL.mjs +30 -0
  17. package/dist/lib/neutral/chunk-KOXLGGSL.mjs.map +7 -0
  18. package/dist/lib/neutral/chunk-MDV7NBFJ.mjs +182 -0
  19. package/dist/lib/neutral/chunk-MDV7NBFJ.mjs.map +7 -0
  20. package/dist/lib/neutral/components/index.mjs +114 -258
  21. package/dist/lib/neutral/components/index.mjs.map +4 -4
  22. package/dist/lib/neutral/containers/index.mjs +1 -1
  23. package/dist/lib/neutral/{create-RVR7VC33.mjs → create-HNHGCKZ4.mjs} +2 -2
  24. package/dist/lib/neutral/enrich-message-DSJU4TXC.mjs +24 -0
  25. package/dist/lib/neutral/enrich-message-DSJU4TXC.mjs.map +7 -0
  26. package/dist/lib/neutral/entity-lookup-PCDW7NC4.mjs +25 -0
  27. package/dist/lib/neutral/entity-lookup-PCDW7NC4.mjs.map +7 -0
  28. package/dist/lib/neutral/hooks/index.mjs +93 -15
  29. package/dist/lib/neutral/hooks/index.mjs.map +4 -4
  30. package/dist/lib/neutral/index.mjs +8 -32
  31. package/dist/lib/neutral/markdown-extension-CCDXXY7E.mjs +16 -0
  32. package/dist/lib/neutral/markdown-extension-CCDXXY7E.mjs.map +7 -0
  33. package/dist/lib/neutral/meta.json +1 -1
  34. package/dist/lib/neutral/meta.mjs +1 -1
  35. package/dist/lib/neutral/{open-A5KXKRH4.mjs → open-SNMZXXYO.mjs} +4 -6
  36. package/dist/lib/neutral/open-SNMZXXYO.mjs.map +7 -0
  37. package/dist/lib/neutral/operations/index.mjs +1 -1
  38. package/dist/lib/neutral/pipeline-status-XMWMAUJY.mjs +17 -0
  39. package/dist/lib/neutral/pipeline-status-XMWMAUJY.mjs.map +7 -0
  40. package/dist/lib/neutral/plugin.mjs +2 -2
  41. package/dist/lib/neutral/recording-session-IADO7ATU.mjs +15 -0
  42. package/dist/lib/neutral/recording-session-IADO7ATU.mjs.map +7 -0
  43. package/dist/lib/neutral/settings-7KE4MABW.mjs +31 -0
  44. package/dist/lib/neutral/settings-7KE4MABW.mjs.map +7 -0
  45. package/dist/lib/neutral/skill-definition-DXNK324V.mjs +15 -0
  46. package/dist/lib/neutral/skill-definition-DXNK324V.mjs.map +7 -0
  47. package/dist/lib/neutral/skills/index.mjs +8 -0
  48. package/dist/lib/neutral/{summarize-5XPPMVTE.mjs → summarize-LBUZTOTH.mjs} +4 -4
  49. package/dist/lib/neutral/summarize-LBUZTOTH.mjs.map +7 -0
  50. package/dist/lib/neutral/{text-content-KBB37HSM.mjs → text-content-NOWR642C.mjs} +9 -9
  51. package/dist/lib/neutral/text-content-NOWR642C.mjs.map +7 -0
  52. package/dist/lib/neutral/transcriber-6XZHUUHK.mjs +174 -0
  53. package/dist/lib/neutral/transcriber-6XZHUUHK.mjs.map +7 -0
  54. package/dist/lib/neutral/transcription-driver-DN6ELQXZ.mjs +207 -0
  55. package/dist/lib/neutral/transcription-driver-DN6ELQXZ.mjs.map +7 -0
  56. package/dist/lib/neutral/translations.mjs +8 -1
  57. package/dist/lib/neutral/translations.mjs.map +3 -3
  58. package/dist/lib/neutral/types/index.mjs +3 -1
  59. package/dist/types/dx.config.d.ts +28 -0
  60. package/dist/types/dx.config.d.ts.map +1 -0
  61. package/dist/types/src/TranscriptionPlugin.d.ts.map +1 -1
  62. package/dist/types/src/capabilities/app-graph-builder.d.ts +5 -0
  63. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  64. package/dist/types/src/capabilities/entity-lookup.d.ts +10 -0
  65. package/dist/types/src/capabilities/entity-lookup.d.ts.map +1 -0
  66. package/dist/types/src/capabilities/index.d.ts +11 -8
  67. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  68. package/dist/types/src/capabilities/markdown-extension.d.ts +5 -0
  69. package/dist/types/src/capabilities/markdown-extension.d.ts.map +1 -0
  70. package/dist/types/src/capabilities/pipeline-status.d.ts +9 -0
  71. package/dist/types/src/capabilities/pipeline-status.d.ts.map +1 -0
  72. package/dist/types/src/capabilities/react-surface.d.ts +2 -2
  73. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  74. package/dist/types/src/capabilities/recording-session.d.ts +5 -0
  75. package/dist/types/src/capabilities/recording-session.d.ts.map +1 -0
  76. package/dist/types/src/capabilities/settings.d.ts +5 -0
  77. package/dist/types/src/capabilities/settings.d.ts.map +1 -0
  78. package/dist/types/src/capabilities/skill-definition.d.ts +5 -0
  79. package/dist/types/src/capabilities/skill-definition.d.ts.map +1 -0
  80. package/dist/types/src/capabilities/text-content.d.ts +1 -4
  81. package/dist/types/src/capabilities/transcriber.d.ts +4 -3
  82. package/dist/types/src/capabilities/transcriber.d.ts.map +1 -1
  83. package/dist/types/src/capabilities/transcription-driver.d.ts +5 -0
  84. package/dist/types/src/capabilities/transcription-driver.d.ts.map +1 -0
  85. package/dist/types/src/components/Mic/Mic.d.ts +12 -0
  86. package/dist/types/src/components/Mic/Mic.d.ts.map +1 -0
  87. package/dist/types/src/components/{Oracle/Oracle.stories.d.ts → Mic/Mic.stories.d.ts} +9 -7
  88. package/dist/types/src/components/Mic/Mic.stories.d.ts.map +1 -0
  89. package/dist/types/src/components/Mic/index.d.ts +2 -0
  90. package/dist/types/src/components/Mic/index.d.ts.map +1 -0
  91. package/dist/types/src/components/index.d.ts +1 -2
  92. package/dist/types/src/components/index.d.ts.map +1 -1
  93. package/dist/types/src/containers/TranscriptionArticle/TranscriptionArticle.d.ts.map +1 -1
  94. package/dist/types/src/containers/TranscriptionArticle/TranscriptionArticle.stories.d.ts +7 -0
  95. package/dist/types/src/containers/TranscriptionArticle/TranscriptionArticle.stories.d.ts.map +1 -1
  96. package/dist/types/src/hooks/index.d.ts +0 -5
  97. package/dist/types/src/hooks/index.d.ts.map +1 -1
  98. package/dist/types/src/hooks/useTranscriptionRecording.d.ts.map +1 -1
  99. package/dist/types/src/index.d.ts +1 -3
  100. package/dist/types/src/index.d.ts.map +1 -1
  101. package/dist/types/src/meta.d.ts +32 -2
  102. package/dist/types/src/meta.d.ts.map +1 -1
  103. package/dist/types/src/normalization/message-normalizer.d.ts +2 -2
  104. package/dist/types/src/normalization/message-normalizer.d.ts.map +1 -1
  105. package/dist/types/src/normalization/normalization.d.ts +98 -733
  106. package/dist/types/src/normalization/normalization.d.ts.map +1 -1
  107. package/dist/types/src/operations/enrich-message.d.ts +9 -0
  108. package/dist/types/src/operations/enrich-message.d.ts.map +1 -0
  109. package/dist/types/src/operations/index.d.ts.map +1 -1
  110. package/dist/types/src/operations/open.d.ts.map +1 -1
  111. package/dist/types/src/operations/summarize.d.ts.map +1 -1
  112. package/dist/types/src/skills/index.d.ts +2 -0
  113. package/dist/types/src/skills/index.d.ts.map +1 -0
  114. package/dist/types/src/skills/transcription-skill.d.ts +4 -0
  115. package/dist/types/src/skills/transcription-skill.d.ts.map +1 -0
  116. package/dist/types/src/stories/Keyword.stories.d.ts +51 -0
  117. package/dist/types/src/stories/Keyword.stories.d.ts.map +1 -0
  118. package/dist/types/src/stories/Pipeline.stories.d.ts +60 -0
  119. package/dist/types/src/stories/Pipeline.stories.d.ts.map +1 -0
  120. package/dist/types/src/stories/Transcription.stories.d.ts +23 -0
  121. package/dist/types/src/stories/Transcription.stories.d.ts.map +1 -0
  122. package/dist/types/src/testing/decorators.d.ts +21 -0
  123. package/dist/types/src/testing/decorators.d.ts.map +1 -0
  124. package/dist/types/src/testing/index.d.ts +1 -0
  125. package/dist/types/src/testing/index.d.ts.map +1 -1
  126. package/dist/types/src/testing/testing.d.ts +3 -13
  127. package/dist/types/src/testing/testing.d.ts.map +1 -1
  128. package/dist/types/src/{transcriber/transcription-manager.d.ts → transcription-manager.d.ts} +6 -5
  129. package/dist/types/src/transcription-manager.d.ts.map +1 -0
  130. package/dist/types/src/translations.d.ts +7 -0
  131. package/dist/types/src/translations.d.ts.map +1 -1
  132. package/dist/types/src/types/Settings.d.ts +13 -0
  133. package/dist/types/src/types/Settings.d.ts.map +1 -0
  134. package/dist/types/src/types/TranscriptOperation.d.ts +114 -1564
  135. package/dist/types/src/types/TranscriptOperation.d.ts.map +1 -1
  136. package/dist/types/src/types/TranscriptionCapabilities.d.ts +52 -11
  137. package/dist/types/src/types/TranscriptionCapabilities.d.ts.map +1 -1
  138. package/dist/types/src/types/index.d.ts +1 -0
  139. package/dist/types/src/types/index.d.ts.map +1 -1
  140. package/dist/types/src/util/index.d.ts +0 -3
  141. package/dist/types/src/util/index.d.ts.map +1 -1
  142. package/dist/types/tsconfig.tsbuildinfo +1 -1
  143. package/dx.config.ts +42 -0
  144. package/package.json +69 -69
  145. package/src/TranscriptionPlugin.node.ts +2 -2
  146. package/src/TranscriptionPlugin.test.ts +2 -2
  147. package/src/TranscriptionPlugin.tsx +40 -3
  148. package/src/capabilities/app-graph-builder.tsx +49 -0
  149. package/src/capabilities/entity-lookup.ts +32 -0
  150. package/src/capabilities/index.ts +8 -7
  151. package/src/capabilities/markdown-extension.ts +17 -0
  152. package/src/capabilities/pipeline-status.ts +23 -0
  153. package/src/capabilities/recording-session.ts +17 -0
  154. package/src/capabilities/settings.ts +34 -0
  155. package/src/capabilities/skill-definition.ts +15 -0
  156. package/src/capabilities/text-content.ts +10 -7
  157. package/src/capabilities/transcriber.ts +5 -48
  158. package/src/capabilities/transcription-driver.tsx +263 -0
  159. package/src/components/Mic/Mic.stories.tsx +66 -0
  160. package/src/components/Mic/Mic.tsx +136 -0
  161. package/src/components/Mic/index.ts +5 -0
  162. package/src/components/index.ts +1 -2
  163. package/src/containers/TranscriptionArticle/TranscriptionArticle.stories.tsx +4 -0
  164. package/src/containers/TranscriptionArticle/TranscriptionArticle.tsx +5 -6
  165. package/src/hooks/index.ts +0 -5
  166. package/src/hooks/useTranscriptionRecording.ts +27 -9
  167. package/src/index.ts +1 -5
  168. package/src/meta.ts +2 -35
  169. package/src/normalization/message-normalizer.ts +3 -3
  170. package/src/normalization/normalization.ts +3 -0
  171. package/src/operations/enrich-message.ts +27 -0
  172. package/src/operations/index.ts +1 -0
  173. package/src/operations/open.ts +2 -2
  174. package/src/operations/summarize.ts +2 -2
  175. package/src/skills/index.ts +5 -0
  176. package/src/skills/transcription-skill.ts +29 -0
  177. package/src/stories/Keyword.stories.tsx +98 -0
  178. package/src/stories/Pipeline.stories.tsx +361 -0
  179. package/src/stories/Transcription.stories.tsx +178 -0
  180. package/src/testing/decorators.ts +78 -0
  181. package/src/testing/index.ts +1 -0
  182. package/src/testing/testing.ts +14 -134
  183. package/src/{transcriber/transcription-manager.ts → transcription-manager.ts} +13 -12
  184. package/src/translations.ts +9 -1
  185. package/src/types/Settings.ts +59 -0
  186. package/src/types/TranscriptOperation.ts +22 -4
  187. package/src/types/TranscriptionCapabilities.ts +61 -20
  188. package/src/types/index.ts +1 -0
  189. package/src/util/index.ts +0 -3
  190. package/dist/lib/neutral/TranscriptionArticle-L6XANBH5.mjs.map +0 -7
  191. package/dist/lib/neutral/blueprint-definition-DA4QFRYJ.mjs +0 -15
  192. package/dist/lib/neutral/blueprint-definition-DA4QFRYJ.mjs.map +0 -7
  193. package/dist/lib/neutral/blueprints/index.mjs +0 -8
  194. package/dist/lib/neutral/chunk-FHNI26QW.mjs +0 -45
  195. package/dist/lib/neutral/chunk-FHNI26QW.mjs.map +0 -7
  196. package/dist/lib/neutral/chunk-KAEXRX3Y.mjs +0 -35
  197. package/dist/lib/neutral/chunk-KAEXRX3Y.mjs.map +0 -7
  198. package/dist/lib/neutral/chunk-KMT3BMMQ.mjs +0 -124
  199. package/dist/lib/neutral/chunk-KMT3BMMQ.mjs.map +0 -7
  200. package/dist/lib/neutral/chunk-KXJZEYS7.mjs +0 -8
  201. package/dist/lib/neutral/chunk-MLRJWAQH.mjs +0 -179
  202. package/dist/lib/neutral/chunk-MLRJWAQH.mjs.map +0 -7
  203. package/dist/lib/neutral/chunk-TO77KAQK.mjs +0 -298
  204. package/dist/lib/neutral/chunk-TO77KAQK.mjs.map +0 -7
  205. package/dist/lib/neutral/chunk-TX3NQISZ.mjs +0 -435
  206. package/dist/lib/neutral/chunk-TX3NQISZ.mjs.map +0 -7
  207. package/dist/lib/neutral/chunk-ZR4BH4QQ.mjs +0 -30
  208. package/dist/lib/neutral/chunk-ZR4BH4QQ.mjs.map +0 -7
  209. package/dist/lib/neutral/open-A5KXKRH4.mjs.map +0 -7
  210. package/dist/lib/neutral/summarize-5XPPMVTE.mjs.map +0 -7
  211. package/dist/lib/neutral/text-content-KBB37HSM.mjs.map +0 -7
  212. package/dist/lib/neutral/transcriber-OGSF3XO5.mjs +0 -59
  213. package/dist/lib/neutral/transcriber-OGSF3XO5.mjs.map +0 -7
  214. package/dist/types/src/blueprints/index.d.ts +0 -2
  215. package/dist/types/src/blueprints/index.d.ts.map +0 -1
  216. package/dist/types/src/blueprints/transcription-blueprint.d.ts +0 -4
  217. package/dist/types/src/blueprints/transcription-blueprint.d.ts.map +0 -1
  218. package/dist/types/src/capabilities/blueprint-definition.d.ts +0 -6
  219. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +0 -1
  220. package/dist/types/src/components/Oracle/Oracle.d.ts +0 -24
  221. package/dist/types/src/components/Oracle/Oracle.d.ts.map +0 -1
  222. package/dist/types/src/components/Oracle/Oracle.stories.d.ts.map +0 -1
  223. package/dist/types/src/components/Oracle/index.d.ts +0 -2
  224. package/dist/types/src/components/Oracle/index.d.ts.map +0 -1
  225. package/dist/types/src/components/Transcription/Transcription.d.ts +0 -11
  226. package/dist/types/src/components/Transcription/Transcription.d.ts.map +0 -1
  227. package/dist/types/src/components/Transcription/Transcription.stories.d.ts +0 -37
  228. package/dist/types/src/components/Transcription/Transcription.stories.d.ts.map +0 -1
  229. package/dist/types/src/components/Transcription/index.d.ts +0 -2
  230. package/dist/types/src/components/Transcription/index.d.ts.map +0 -1
  231. package/dist/types/src/components/Transcription/transcription-extension.d.ts +0 -15
  232. package/dist/types/src/components/Transcription/transcription-extension.d.ts.map +0 -1
  233. package/dist/types/src/enrichment/conversation.test.d.ts +0 -2
  234. package/dist/types/src/enrichment/conversation.test.d.ts.map +0 -1
  235. package/dist/types/src/enrichment/operations.d.ts +0 -200
  236. package/dist/types/src/enrichment/operations.d.ts.map +0 -1
  237. package/dist/types/src/enrichment/parser.d.ts +0 -26
  238. package/dist/types/src/enrichment/parser.d.ts.map +0 -1
  239. package/dist/types/src/enrichment/stream-simulator.d.ts +0 -38
  240. package/dist/types/src/enrichment/stream-simulator.d.ts.map +0 -1
  241. package/dist/types/src/hooks/useAudioFile.d.ts +0 -7
  242. package/dist/types/src/hooks/useAudioFile.d.ts.map +0 -1
  243. package/dist/types/src/hooks/useAudioTrack.d.ts +0 -5
  244. package/dist/types/src/hooks/useAudioTrack.d.ts.map +0 -1
  245. package/dist/types/src/hooks/useFeedModelAdapter.d.ts +0 -12
  246. package/dist/types/src/hooks/useFeedModelAdapter.d.ts.map +0 -1
  247. package/dist/types/src/hooks/useTranscriber.d.ts +0 -7
  248. package/dist/types/src/hooks/useTranscriber.d.ts.map +0 -1
  249. package/dist/types/src/hooks/useVoiceInput.d.ts +0 -11
  250. package/dist/types/src/hooks/useVoiceInput.d.ts.map +0 -1
  251. package/dist/types/src/model/index.d.ts +0 -2
  252. package/dist/types/src/model/index.d.ts.map +0 -1
  253. package/dist/types/src/model/model.d.ts +0 -68
  254. package/dist/types/src/model/model.d.ts.map +0 -1
  255. package/dist/types/src/model/model.test.d.ts +0 -2
  256. package/dist/types/src/model/model.test.d.ts.map +0 -1
  257. package/dist/types/src/stories/FileTranscription.stories.d.ts +0 -20
  258. package/dist/types/src/stories/FileTranscription.stories.d.ts.map +0 -1
  259. package/dist/types/src/stories/KeyWordRecognition.stories.d.ts +0 -14
  260. package/dist/types/src/stories/KeyWordRecognition.stories.d.ts.map +0 -1
  261. package/dist/types/src/stories/LiveTranscription.stories.d.ts +0 -20
  262. package/dist/types/src/stories/LiveTranscription.stories.d.ts.map +0 -1
  263. package/dist/types/src/stories/TranscriptionStory.d.ts +0 -21
  264. package/dist/types/src/stories/TranscriptionStory.d.ts.map +0 -1
  265. package/dist/types/src/stories/common.d.ts +0 -248
  266. package/dist/types/src/stories/common.d.ts.map +0 -1
  267. package/dist/types/src/transcriber/audio-recorder.d.ts +0 -47
  268. package/dist/types/src/transcriber/audio-recorder.d.ts.map +0 -1
  269. package/dist/types/src/transcriber/index.d.ts +0 -5
  270. package/dist/types/src/transcriber/index.d.ts.map +0 -1
  271. package/dist/types/src/transcriber/media-stream-recorder.d.ts +0 -30
  272. package/dist/types/src/transcriber/media-stream-recorder.d.ts.map +0 -1
  273. package/dist/types/src/transcriber/transcriber.browser.test.d.ts +0 -2
  274. package/dist/types/src/transcriber/transcriber.browser.test.d.ts.map +0 -1
  275. package/dist/types/src/transcriber/transcriber.d.ts +0 -105
  276. package/dist/types/src/transcriber/transcriber.d.ts.map +0 -1
  277. package/dist/types/src/transcriber/transcriber.test.d.ts +0 -2
  278. package/dist/types/src/transcriber/transcriber.test.d.ts.map +0 -1
  279. package/dist/types/src/transcriber/transcription-manager.d.ts.map +0 -1
  280. package/dist/types/src/util/array.d.ts +0 -2
  281. package/dist/types/src/util/array.d.ts.map +0 -1
  282. package/dist/types/src/util/monitor-audio-level.d.ts +0 -6
  283. package/dist/types/src/util/monitor-audio-level.d.ts.map +0 -1
  284. package/dist/types/src/util/render-byline.d.ts +0 -4
  285. package/dist/types/src/util/render-byline.d.ts.map +0 -1
  286. package/src/blueprints/index.ts +0 -5
  287. package/src/blueprints/transcription-blueprint.ts +0 -29
  288. package/src/capabilities/blueprint-definition.ts +0 -19
  289. package/src/components/Oracle/Oracle.stories.tsx +0 -147
  290. package/src/components/Oracle/Oracle.tsx +0 -142
  291. package/src/components/Oracle/index.ts +0 -5
  292. package/src/components/Transcription/Transcription.stories.tsx +0 -213
  293. package/src/components/Transcription/Transcription.tsx +0 -55
  294. package/src/components/Transcription/index.ts +0 -5
  295. package/src/components/Transcription/transcription-extension.ts +0 -203
  296. package/src/enrichment/conversation.test.ts +0 -162
  297. package/src/enrichment/conversation.txt +0 -23
  298. package/src/enrichment/operations.ts +0 -271
  299. package/src/enrichment/parser.ts +0 -101
  300. package/src/enrichment/stream-simulator.ts +0 -125
  301. package/src/hooks/useAudioFile.ts +0 -88
  302. package/src/hooks/useAudioTrack.ts +0 -35
  303. package/src/hooks/useFeedModelAdapter.ts +0 -46
  304. package/src/hooks/useTranscriber.ts +0 -47
  305. package/src/hooks/useVoiceInput.ts +0 -66
  306. package/src/model/index.ts +0 -5
  307. package/src/model/model.test.ts +0 -175
  308. package/src/model/model.ts +0 -229
  309. package/src/stories/FileTranscription.stories.tsx +0 -143
  310. package/src/stories/KeyWordRecognition.stories.tsx +0 -132
  311. package/src/stories/LiveTranscription.stories.tsx +0 -153
  312. package/src/stories/TranscriptionStory.tsx +0 -101
  313. package/src/stories/common.ts +0 -233
  314. package/src/transcriber/audio-recorder.ts +0 -56
  315. package/src/transcriber/index.ts +0 -8
  316. package/src/transcriber/media-stream-recorder.ts +0 -120
  317. package/src/transcriber/transcriber.browser.test.ts +0 -230
  318. package/src/transcriber/transcriber.test.ts +0 -104
  319. package/src/transcriber/transcriber.ts +0 -303
  320. package/src/util/array.ts +0 -14
  321. package/src/util/monitor-audio-level.ts +0 -58
  322. package/src/util/render-byline.ts +0 -33
  323. /package/dist/lib/neutral/{create-RVR7VC33.mjs.map → create-HNHGCKZ4.mjs.map} +0 -0
  324. /package/dist/lib/neutral/{blueprints → skills}/index.mjs.map +0 -0
@@ -1,68 +0,0 @@
1
- import { Text } from '@codemirror/state';
2
- import { type EditorView } from '@codemirror/view';
3
- import { Event } from '@dxos/async';
4
- export type Chunk = {
5
- id: string;
6
- };
7
- /**
8
- * Covert block to a set of markdown lines.
9
- */
10
- export type ChunkRenderer<T extends Chunk> = (chunk: T, index: number, debug?: boolean) => string[];
11
- /**
12
- * Abstract representation of the document model.
13
- */
14
- export interface ChunkDocument {
15
- lineCount(): number;
16
- replaceLines(from: number, remove: number, insert: string[]): void;
17
- }
18
- /**
19
- * Codemirror document adapter.
20
- */
21
- export declare class DocumentAdapter implements ChunkDocument {
22
- private readonly _view;
23
- constructor(_view: EditorView);
24
- /** The document must always have at least one line. */
25
- lineCount(): number;
26
- replaceLines(from: number, remove: number, insert: string[]): void;
27
- }
28
- /**
29
- * Each Chunk can be converted into a set of lines.
30
- * Chunks can be added, updated or deleted from the Queue.
31
- * A Document is an immutable projection that represents a flat list of lines corresponding to the Queue.
32
- *
33
- * Ideally we would implement a custom virtual Text model for the View, but this currently isn't possible in Codemirror.
34
- * Instead this model tracks changes and syncs them with the ChunkDocument.
35
- */
36
- export declare class SerializationModel<T extends Chunk> {
37
- private readonly _renderer;
38
- /** Emits when the document is updated. */
39
- readonly update: Event<void>;
40
- /** Ordered set of chunks. */
41
- private readonly _chunks;
42
- /** Map of chunk IDs to their current line counts. */
43
- private readonly _chunkLineCounts;
44
- /** Map of line numbers to chunk IDs. */
45
- private readonly _lineToChunk;
46
- /** Track chunk changes since last sync. */
47
- private readonly _changes;
48
- constructor(_renderer: ChunkRenderer<T>, initialChunks?: T[]);
49
- toJSON(): {
50
- chunks: number;
51
- changes: number;
52
- };
53
- get doc(): Text;
54
- get chunks(): T[];
55
- /**
56
- * Get the block ID at the given line number.
57
- */
58
- getChunkAtLine(line: number): T | undefined;
59
- reset(): this;
60
- appendChunk(chunk: T): this;
61
- updateChunk(chunk: T): this;
62
- deleteBlock(id: string): this;
63
- /**
64
- * Syncs the tracked changes with the ChunkDocument.
65
- */
66
- sync(document: ChunkDocument): this;
67
- }
68
- //# sourceMappingURL=model.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../src/model/model.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACzC,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC,MAAM,MAAM,KAAK,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnC;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,MAAM,EAAE,CAAC;AAEpG;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,IAAI,MAAM,CAAC;IACpB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CACpE;AAED;;GAEG;AACH,qBAAa,eAAgB,YAAW,aAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAlC,YAA6B,KAAK,EAAE,UAAU,EAAI;IAElD,uDAAuD;IACvD,SAAS,IAAI,MAAM,CAElB;IAED,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAgBjE;CACF;AAmBD;;;;;;;GAOG;AACH,qBAAa,kBAAkB,CAAC,CAAC,SAAS,KAAK;IAiB3C,OAAO,CAAC,QAAQ,CAAC,SAAS;IAhB5B,0CAA0C;IAC1C,SAAgB,MAAM,cAAqB;IAE3C,6BAA6B;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAW;IAEnC,qDAAqD;IACrD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA6B;IAE9D,wCAAwC;IACxC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwB;IAErD,2CAA2C;IAC3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA6B;IAEtD,YACmB,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,EAC5C,aAAa,GAAE,CAAC,EAAO,EAKxB;IAED,MAAM,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAK5C;IAED,IAAI,GAAG,SAEN;IAED,IAAI,MAAM,QAET;IAED;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAE1C;IAED,KAAK,IAAI,IAAI,CAMZ;IAED,WAAW,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAM1B;IAED,WAAW,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAO1B;IAED,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAO5B;IAED;;OAEG;IACH,IAAI,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CA8DlC;CACF"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=model.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"model.test.d.ts","sourceRoot":"","sources":["../../../../src/model/model.test.ts"],"names":[],"mappings":""}
@@ -1,20 +0,0 @@
1
- import { type StoryObj } from '@storybook/react-vite';
2
- import React from 'react';
3
- import { type MediaStreamRecorderProps, type TranscriberProps } from '../transcriber';
4
- type DefaultStoryProps = {
5
- detectSpeaking?: boolean;
6
- normalizeSentences?: boolean;
7
- audioUrl: string;
8
- transcriberConfig?: TranscriberProps['config'];
9
- recorderConfig?: MediaStreamRecorderProps['config'];
10
- audioConstraints?: MediaTrackConstraints;
11
- };
12
- declare const meta: {
13
- title: string;
14
- render: ({ detectSpeaking, audioUrl, normalizeSentences, transcriberConfig, recorderConfig, audioConstraints, }: DefaultStoryProps) => React.JSX.Element;
15
- decorators: import("@storybook/react").Decorator[];
16
- };
17
- export default meta;
18
- type Story = StoryObj<typeof meta>;
19
- export declare const Default: Story;
20
- //# sourceMappingURL=FileTranscription.stories.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileTranscription.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/FileTranscription.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAmD,MAAM,OAAO,CAAC;AAIxE,OAAO,EAAE,KAAK,wBAAwB,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAoBtF,KAAK,iBAAiB,GAAG;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC/C,cAAc,CAAC,EAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACpD,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CAC1C,CAAC;AAgFF,QAAA,MAAM,IAAI;;qHAvEP,iBAAiB;;CA2Ee,CAAC;eAErB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAOrB,CAAC"}
@@ -1,14 +0,0 @@
1
- import { type StoryObj } from '@storybook/react-vite';
2
- import React from 'react';
3
- type DefaultStoryProps = {
4
- keywords: string[];
5
- };
6
- declare const meta: {
7
- title: string;
8
- render: ({ keywords }: DefaultStoryProps) => React.JSX.Element;
9
- decorators: import("@storybook/react").Decorator[];
10
- };
11
- export default meta;
12
- type Story = StoryObj<typeof meta>;
13
- export declare const SpeechRecognitionAPI: Story;
14
- //# sourceMappingURL=KeyWordRecognition.stories.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KeyWordRecognition.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/KeyWordRecognition.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAuC,MAAM,OAAO,CAAC;AAY5D,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAkGF,QAAA,MAAM,IAAI;;2BAhG0B,iBAAiB;;CAoGhB,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,oBAAoB,EAAE,KAIlC,CAAC"}
@@ -1,20 +0,0 @@
1
- import { type StoryObj } from '@storybook/react-vite';
2
- import React from 'react';
3
- import { type MediaStreamRecorderProps, type TranscriberProps } from '../transcriber';
4
- type DefaultStoryProps = {
5
- detectSpeaking?: boolean;
6
- transcriberConfig?: TranscriberProps['config'];
7
- recorderConfig?: MediaStreamRecorderProps['config'];
8
- audioConstraints?: MediaTrackConstraints;
9
- entityExtraction?: 'ner' | 'llm';
10
- };
11
- declare const meta: {
12
- title: string;
13
- render: ({ detectSpeaking, entityExtraction, transcriberConfig, recorderConfig, audioConstraints, }: DefaultStoryProps) => React.JSX.Element;
14
- decorators: import("@storybook/react").Decorator[];
15
- };
16
- export default meta;
17
- type Story = StoryObj<typeof meta>;
18
- export declare const Default: Story;
19
- export declare const SpeechDetection: Story;
20
- //# sourceMappingURL=LiveTranscription.stories.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LiveTranscription.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/LiveTranscription.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAyC,MAAM,OAAO,CAAC;AAgB9D,OAAO,EAAE,KAAK,wBAAwB,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAatF,KAAK,iBAAiB,GAAG;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC/C,cAAc,CAAC,EAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACpD,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;IACzC,gBAAgB,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;CAClC,CAAC;AAqEF,QAAA,MAAM,IAAI;;yGA7DP,iBAAiB;;CAiEiB,CAAC;eAEvB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KASrB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAS7B,CAAC"}
@@ -1,21 +0,0 @@
1
- import React, { type Dispatch, type RefObject, type SetStateAction } from 'react';
2
- import { type Message } from '@dxos/types';
3
- import { type SerializationModel } from '../model';
4
- export type TranscriptionStoryProps = {
5
- audioRef?: RefObject<HTMLAudioElement | null>;
6
- model: SerializationModel<Message.Message>;
7
- running: boolean;
8
- disabled?: boolean;
9
- uploadAccept?: string;
10
- onRunningChange: Dispatch<SetStateAction<boolean>>;
11
- onUpload?: (file: File) => void;
12
- };
13
- /**
14
- * Story wrapper that renders a transcript with playback controls, an optional audio file
15
- * upload affordance, and a toolbar slot for additional controls.
16
- *
17
- * @param onUpload - Callback fired when the user picks a local audio file via the upload button.
18
- * @param uploadAccept - HTML `accept` filter for the hidden file input. Defaults to `audio/*`.
19
- */
20
- export declare const TranscriptionStory: ({ audioRef, model, running, disabled, uploadAccept, onRunningChange, onUpload, }: TranscriptionStoryProps) => React.JSX.Element;
21
- //# sourceMappingURL=TranscriptionStory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TranscriptionStory.d.ts","sourceRoot":"","sources":["../../../../src/stories/TranscriptionStory.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAEZ,KAAK,QAAQ,EACb,KAAK,SAAS,EACd,KAAK,cAAc,EAGpB,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEnD,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAC9C,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IACnD,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CACjC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,qFAQ5B,uBAAuB,sBAwDzB,CAAC"}
@@ -1,248 +0,0 @@
1
- import { type Decorator } from '@storybook/react-vite';
2
- import { Obj } from '@dxos/echo';
3
- import { Message } from '@dxos/types';
4
- import { type TranscriptionCapabilities } from '#types';
5
- import { type Transcriber, type TranscriberProps } from '../transcriber';
6
- export declare const useIsSpeaking: (track?: MediaStreamTrack) => boolean;
7
- /**
8
- * In-memory message buffer + model adapter for storybook use (production wires up a real
9
- * space-backed `Feed`). Returns the renderable `model` plus an `appendMessage` callback.
10
- */
11
- export declare const useStoryMessageModel: () => {
12
- model: import("../model").SerializationModel<{
13
- readonly id: string;
14
- readonly parentMessage?: string | undefined;
15
- readonly threadId?: string | undefined;
16
- readonly created: string;
17
- readonly sender: {
18
- readonly role?: "assistant" | "tool" | "user" | undefined;
19
- readonly contact?: import("@dxos/echo/internal").Ref<{
20
- readonly fullName?: string | undefined;
21
- readonly preferredName?: string | undefined;
22
- readonly nickname?: string | undefined;
23
- readonly image?: string | undefined;
24
- readonly organization?: import("@dxos/echo/internal").Ref<{
25
- readonly name?: string | undefined;
26
- readonly description?: string | undefined;
27
- readonly status?: "active" | "commit" | "prospect" | "qualified" | "reject" | undefined;
28
- readonly image?: string | undefined;
29
- readonly website?: string | undefined;
30
- } & {
31
- readonly location?: readonly [number, number, (number | undefined)?] | undefined;
32
- } & import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & Obj.Unknown> | undefined;
33
- readonly jobTitle?: string | undefined;
34
- readonly department?: string | undefined;
35
- readonly notes?: string | undefined;
36
- readonly emails?: readonly {
37
- readonly label?: string | undefined;
38
- readonly value: string;
39
- }[] | undefined;
40
- readonly identities?: readonly {
41
- readonly label?: string | undefined;
42
- readonly value: string;
43
- }[] | undefined;
44
- readonly phoneNumbers?: readonly {
45
- readonly label?: string | undefined;
46
- readonly value: string;
47
- }[] | undefined;
48
- readonly addresses?: readonly {
49
- readonly label?: string | undefined;
50
- readonly value: {
51
- readonly street?: string | undefined;
52
- readonly extended?: string | undefined;
53
- readonly locality?: string | undefined;
54
- readonly region?: string | undefined;
55
- readonly postalCode?: string | undefined;
56
- readonly postOfficeBoxNumber?: string | undefined;
57
- readonly country?: string | undefined;
58
- };
59
- }[] | undefined;
60
- readonly urls?: readonly {
61
- readonly label?: string | undefined;
62
- readonly value: string;
63
- }[] | undefined;
64
- readonly birthday?: string | undefined;
65
- readonly fields?: readonly {
66
- readonly category?: string | undefined;
67
- readonly label: string;
68
- readonly value: string;
69
- }[] | undefined;
70
- } & {
71
- readonly location?: readonly [number, number, (number | undefined)?] | undefined;
72
- } & import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object> & Obj.Unknown> | undefined;
73
- readonly identityDid?: string | undefined;
74
- readonly identityKey?: string | undefined;
75
- readonly email?: string | undefined;
76
- readonly name?: string | undefined;
77
- };
78
- readonly blocks: readonly ({
79
- readonly _tag: "anchor";
80
- readonly pending?: boolean | undefined;
81
- readonly objectId: string;
82
- readonly version: unknown;
83
- } | {
84
- readonly _tag: "file";
85
- readonly pending?: boolean | undefined;
86
- readonly url: string;
87
- readonly name?: string | undefined;
88
- readonly mediaType?: string | undefined;
89
- } | {
90
- readonly _tag: "image";
91
- readonly pending?: boolean | undefined;
92
- readonly id?: string | undefined;
93
- readonly source?: {
94
- readonly type: "base64";
95
- readonly mediaType: string;
96
- readonly data: string;
97
- } | {
98
- readonly type: "http";
99
- readonly url: string;
100
- } | undefined;
101
- } | {
102
- readonly _tag: "json";
103
- readonly pending?: boolean | undefined;
104
- readonly disposition?: "cot" | "synthetic" | "user" | "version-pin" | undefined;
105
- readonly data: string;
106
- } | {
107
- readonly _tag: "proposal";
108
- readonly pending?: boolean | undefined;
109
- readonly text: string;
110
- } | {
111
- readonly _tag: "reasoning";
112
- readonly pending?: boolean | undefined;
113
- readonly reasoningText?: string | undefined;
114
- readonly redactedText?: string | undefined;
115
- readonly signature?: string | undefined;
116
- } | {
117
- readonly _tag: "reference";
118
- readonly pending?: boolean | undefined;
119
- readonly reference: import("@dxos/echo/internal").Ref<Obj.Unknown>;
120
- } | {
121
- readonly _tag: "select";
122
- readonly pending?: boolean | undefined;
123
- readonly options: string[];
124
- } | {
125
- readonly _tag: "status";
126
- readonly pending?: boolean | undefined;
127
- readonly statusText: string;
128
- } | {
129
- readonly _tag: "suggestion";
130
- readonly pending?: boolean | undefined;
131
- readonly text: string;
132
- } | {
133
- readonly _tag: "stats";
134
- readonly pending?: boolean | undefined;
135
- readonly mimeType?: string | undefined;
136
- readonly message?: string | undefined;
137
- readonly model?: string | undefined;
138
- readonly usage?: {
139
- readonly inputTokens?: number | undefined;
140
- readonly outputTokens?: number | undefined;
141
- readonly totalTokens?: number | undefined;
142
- } | undefined;
143
- readonly toolCalls?: number | undefined;
144
- readonly errors?: number | undefined;
145
- readonly duration?: number | undefined;
146
- } | {
147
- readonly _tag: "text";
148
- readonly pending?: boolean | undefined;
149
- readonly mimeType?: string | undefined;
150
- readonly text: string;
151
- readonly disposition?: "cot" | "synthetic" | "user" | "version-pin" | undefined;
152
- } | {
153
- readonly _tag: "summary";
154
- readonly pending?: boolean | undefined;
155
- readonly content: string;
156
- } | {
157
- readonly _tag: "toolkit";
158
- readonly pending?: boolean | undefined;
159
- } | {
160
- readonly _tag: "toolCall";
161
- readonly pending?: boolean | undefined;
162
- readonly toolCallId: string;
163
- readonly name: string;
164
- readonly input: string;
165
- readonly providerExecuted: boolean;
166
- readonly operationKey?: string | undefined;
167
- readonly operationName?: string | undefined;
168
- readonly operationIcon?: string | undefined;
169
- } | {
170
- readonly _tag: "toolResult";
171
- readonly pending?: boolean | undefined;
172
- readonly toolCallId: string;
173
- readonly name: string;
174
- readonly result?: string | {
175
- readonly _tag: "~@dxos/types/ContentBlock.ContentBlockResult";
176
- readonly content: readonly ({
177
- readonly _tag: "file";
178
- readonly pending?: boolean | undefined;
179
- readonly url: string;
180
- readonly name?: string | undefined;
181
- readonly mediaType?: string | undefined;
182
- } | {
183
- readonly _tag: "image";
184
- readonly pending?: boolean | undefined;
185
- readonly id?: string | undefined;
186
- readonly source?: {
187
- readonly type: "base64";
188
- readonly mediaType: string;
189
- readonly data: string;
190
- } | {
191
- readonly type: "http";
192
- readonly url: string;
193
- } | undefined;
194
- } | {
195
- readonly _tag: "text";
196
- readonly pending?: boolean | undefined;
197
- readonly mimeType?: string | undefined;
198
- readonly text: string;
199
- readonly disposition?: "cot" | "synthetic" | "user" | "version-pin" | undefined;
200
- })[];
201
- } | undefined;
202
- readonly error?: string | undefined;
203
- readonly providerExecuted: boolean;
204
- } | {
205
- readonly _tag: "transcript";
206
- readonly pending?: boolean | undefined;
207
- readonly started: string;
208
- readonly text: string;
209
- })[];
210
- readonly properties?: {
211
- readonly [x: string]: any;
212
- } | undefined;
213
- } & import("@dxos/echo/Entity").OfKind<import("@dxos/echo/internal").EntityKind.Object>>;
214
- appendMessage: (message: Message.Message) => void;
215
- };
216
- /**
217
- * Wraps blocks in a `Message.Message` with the given sender and appends it to the local buffer.
218
- * Provided as a convenience for stories that don't need entity-extraction or custom enrichment.
219
- */
220
- export declare const useStoryAppendSegments: (appendMessage: (message: Message.Message) => void, sender?: Message.Message['sender']) => TranscriberProps['onSegments'];
221
- export type UseStoryTranscriberOptions = Pick<TranscriptionCapabilities.TranscriberProviderProps, 'transcriberConfig' | 'recorderConfig' | 'onSegments'> & {
222
- audioStreamTrack?: MediaStreamTrack;
223
- /** Whether the user has the toolbar toggle on. */
224
- running: boolean;
225
- /** Voice-activity flag — chunks recording only fires while `true`. */
226
- isSpeaking: boolean;
227
- };
228
- /**
229
- * Drives the transcriber's open/close + chunk-recording lifecycle off `running`,
230
- * the open flag, and an `isSpeaking` voice-activity gate. Returns the transcriber instance
231
- * (`undefined` until the capability resolves and an audio track is available).
232
- */
233
- export declare const useStoryTranscriber: ({ audioStreamTrack, running, isSpeaking, transcriberConfig, recorderConfig, onSegments, }: UseStoryTranscriberOptions) => Transcriber | undefined;
234
- export type StoryDecoratorsOptions = {
235
- /**
236
- * Enable schema/graph/vector indexes after the client boots; needed for entity-extraction
237
- * queries over seeded `Person` / `Organization` objects.
238
- * @default false
239
- */
240
- enableVectorIndex?: boolean;
241
- };
242
- /**
243
- * Standard plugin-manager decorator for transcription stories: core plugins,
244
- * `ClientPlugin` with `Person`/`Organization`/`TestItem` schemas + seeded test data, plus
245
- * the `PreviewPlugin` and `TranscriptionPlugin`. Toggle `enableVectorIndex` for entity-extraction.
246
- */
247
- export declare const createStoryDecorators: ({ enableVectorIndex }?: StoryDecoratorsOptions) => Decorator[];
248
- //# sourceMappingURL=common.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../src/stories/common.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAQvD,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAOjC,OAAO,EAAE,OAAO,EAAwB,MAAM,aAAa,CAAC;AAK5D,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,QAAQ,CAAC;AAExD,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAIzE,eAAO,MAAM,aAAa,WAAY,gBAAgB,YA4BrD,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAEa,OAAO,CAAC,OAAO;CAG5D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,kBAClB,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,KAAK,IAAI,WACzC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAChC,gBAAgB,CAAC,YAAY,CAY7B,CAAC;AAMJ,MAAM,MAAM,0BAA0B,GAAG,IAAI,CAC3C,yBAAyB,CAAC,wBAAwB,EAClD,mBAAmB,GAAG,gBAAgB,GAAG,YAAY,CACtD,GAAG;IACF,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,kDAAkD;IAClD,OAAO,EAAE,OAAO,CAAC;IACjB,sEAAsE;IACtE,UAAU,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,8FAO7B,0BAA0B,KAAG,WAAW,GAAG,SA6C7C,CAAC;AAMF,MAAM,MAAM,sBAAsB,GAAG;IACnC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,2BAAmC,sBAAsB,KAAQ,SAAS,EAsB3G,CAAC"}
@@ -1,47 +0,0 @@
1
- export type AudioChunk = {
2
- /**
3
- * Timestamp of the beginning of the chunk.
4
- */
5
- timestamp: number;
6
- /**
7
- * 16-bit PCM data.
8
- */
9
- data: Float64Array;
10
- };
11
- export type WavConfig = {
12
- channels: number;
13
- sampleRate: number;
14
- bitDepthCode: string;
15
- };
16
- /**
17
- * Records MediaStreamTrack to Uint8Array 16-bit PCM data.
18
- * The data is passed to the onChunk callback with the timestamp of the chunk.
19
- * All chunks are aligned and sequential.
20
- * Time ─────────────────────────────────────────────────►
21
- *
22
- * Recording:
23
- * t1 ┌──────┐
24
- * t2 ┌──────┬──────┐
25
- * t3 ┌──────┬──────┬──────┐
26
- * t4 ┌──────┬──────┬──────┬──────┐
27
- * └──────┴──────┴──────┴──────┘
28
- * 1st 2nd 3rd 4th
29
- * chunk chunk chunk chunk
30
- *
31
- */
32
- export interface AudioRecorder {
33
- wavConfig: WavConfig;
34
- /**
35
- * Sets callback for receiving audio chunks.
36
- */
37
- setOnChunk(onChunk: (chunk: AudioChunk) => void): void;
38
- /**
39
- * Starts the recorder.
40
- */
41
- start(): Promise<void>;
42
- /**
43
- * Stops the recorder.
44
- */
45
- stop(): Promise<void>;
46
- }
47
- //# sourceMappingURL=audio-recorder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"audio-recorder.d.ts","sourceRoot":"","sources":["../../../../src/transcriber/audio-recorder.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,UAAU,GAAG;IACvB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,IAAI,EAAE,YAAY,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,SAAS,CAAC;IAErB;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI,CAAC;IAEvD;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;OAEG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB"}
@@ -1,5 +0,0 @@
1
- export * from './audio-recorder';
2
- export * from './media-stream-recorder';
3
- export * from './transcriber';
4
- export * from './transcription-manager';
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transcriber/index.ts"],"names":[],"mappings":"AAIA,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC"}
@@ -1,30 +0,0 @@
1
- import { type AudioChunk, type AudioRecorder, type WavConfig } from './audio-recorder';
2
- export type MediaStreamRecorderProps = {
3
- mediaStreamTrack: MediaStreamTrack;
4
- config: {
5
- interval: number;
6
- };
7
- };
8
- /**
9
- * Recorder that uses the MediaContext API and AudioNode API to record audio.
10
- *
11
- * It records MediaStream using https://www.npmjs.com/package/extendable-media-recorder.
12
- */
13
- export declare class MediaStreamRecorder implements AudioRecorder {
14
- private readonly _mediaStreamTrack;
15
- /**
16
- * Default MediaRecorder implementation do not support wav encoding.
17
- */
18
- private readonly _config;
19
- private _mediaRecorder?;
20
- private _header?;
21
- private _onChunk?;
22
- constructor({ mediaStreamTrack, config }: MediaStreamRecorderProps);
23
- get wavConfig(): WavConfig;
24
- get mediaStreamTrack(): MediaStreamTrack;
25
- setOnChunk(onChunk: (chunk: AudioChunk) => void): void;
26
- start(): Promise<void>;
27
- stop(): Promise<void>;
28
- private _ondataavailable;
29
- }
30
- //# sourceMappingURL=media-stream-recorder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"media-stream-recorder.d.ts","sourceRoot":"","sources":["../../../../src/transcriber/media-stream-recorder.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AASvF,MAAM,MAAM,wBAAwB,GAAG;IACrC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH,CAAC;AAEF;;;;GAIG;AACH,qBACa,mBAAoB,YAAW,aAAa;IACvD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqC;IAC7D,OAAO,CAAC,cAAc,CAAC,CAA6B;IACpD,OAAO,CAAC,OAAO,CAAC,CAAyB;IACzC,OAAO,CAAC,QAAQ,CAAC,CAA8B;IAE/C,YAAY,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,wBAAwB,EAGjE;IAED,IAAI,SAAS,IAAI,SAAS,CAOzB;IAED,IAAI,gBAAgB,qBAEnB;IAED,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI,CAErD;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAgB3B;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAK1B;YAGa,gBAAgB;CA2B/B"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=transcriber.browser.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transcriber.browser.test.d.ts","sourceRoot":"","sources":["../../../../src/transcriber/transcriber.browser.test.ts"],"names":[],"mappings":""}
@@ -1,105 +0,0 @@
1
- import { type Context, Resource } from '@dxos/context';
2
- import { type ContentBlock } from '@dxos/types';
3
- import { type AudioChunk, type AudioRecorder } from './audio-recorder';
4
- export type WhisperWord = {
5
- word: string;
6
- /**
7
- * Time in seconds from the start of the audio.
8
- */
9
- start: number;
10
- /**
11
- * Time in seconds from the start of the audio.
12
- */
13
- end: number;
14
- };
15
- export type WhisperSegment = {
16
- text: string;
17
- /**
18
- * Time in seconds from the start of the audio.
19
- */
20
- start: number;
21
- /**
22
- * Time in seconds from the start of the audio.
23
- */
24
- end: number;
25
- /**
26
- * Probability of no speech in the segment.
27
- */
28
- no_speech_prob: number;
29
- words: WhisperWord[];
30
- };
31
- export type TranscribeConfig = {
32
- /**
33
- * Number of chunks to transcribe automatically after.
34
- */
35
- transcribeAfterChunksAmount: number;
36
- /**
37
- * Number of chunks to save before the user starts speaking.
38
- * This is needed to catch the beginning of the user's speech.
39
- */
40
- prefixBufferChunksAmount: number;
41
- /**
42
- * Override the transcription endpoint base URL.
43
- * Defaults to the DXOS calls service.
44
- */
45
- endpoint?: string;
46
- };
47
- /**
48
- * Function that converts a base64-encoded WAV payload into Whisper segments.
49
- * Allows callers to swap in alternative providers or mock the transport.
50
- */
51
- export type TranscribeFn = (audio: string) => Promise<WhisperSegment[]>;
52
- export type TranscriberProps = {
53
- config: TranscribeConfig;
54
- recorder: AudioRecorder;
55
- /**
56
- * Callback to handle the transcribed segments, after all segment transformers are applied.
57
- * @param segments - The transcribed segments.
58
- */
59
- onSegments: (segments: ContentBlock.Transcript[]) => Promise<void>;
60
- /**
61
- * Optional override of the transcription transport. When provided, supersedes `config.endpoint`.
62
- */
63
- transcribe?: TranscribeFn;
64
- };
65
- /**
66
- * Handles transcription of audio chunks.
67
- * If user is not speaking, the last `minChunksAmount` chunks are saved and transcribed.
68
- * If user is speaking, the chunks are added to the buffer until the user is done talking.
69
- */
70
- export declare class Transcriber extends Resource {
71
- private _audioChunks;
72
- private _lastTimestamp;
73
- private readonly _openTrigger;
74
- private readonly _config;
75
- private readonly _recorder;
76
- private readonly _onSegments;
77
- private readonly _transcribeFn?;
78
- private _recording;
79
- private _transcribeTask?;
80
- constructor({ config, recorder, onSegments, transcribe }: TranscriberProps);
81
- protected _open(ctx: Context): Promise<void>;
82
- protected _close(): Promise<void>;
83
- startChunksRecording(): void;
84
- stopChunksRecording(): void;
85
- private _saveAudioChunk;
86
- private _transcribe;
87
- private _dropOldChunks;
88
- private _mergeAudioChunks;
89
- private _fetchTranscription;
90
- private _alignSegments;
91
- }
92
- /**
93
- * Pure helper that filters and absolute-timestamps Whisper segments against a chunk timeline.
94
- * Exported for testing.
95
- *
96
- * @param segments - Raw segments returned by the Whisper service for `originalChunks`.
97
- * @param originalChunks - Chunks fed into the transcription request (used for the zero timestamp).
98
- * @param lastTimestamp - Most recent absolute timestamp already emitted; segments whose end
99
- * falls strictly before this point are deduped out, as are individual words whose start does.
100
- */
101
- export declare const alignWhisperSegments: (segments: WhisperSegment[], originalChunks: AudioChunk[], lastTimestamp: number) => {
102
- transcripts: ContentBlock.Transcript[];
103
- lastTimestamp?: number;
104
- };
105
- //# sourceMappingURL=transcriber.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transcriber.d.ts","sourceRoot":"","sources":["../../../../src/transcriber/transcriber.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,OAAO,EAAkB,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGvE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAOvE,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,2BAA2B,EAAE,MAAM,CAAC;IAEpC;;;OAGG;IACH,wBAAwB,EAAE,MAAM,CAAC;IAEjC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;AAExE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,gBAAgB,CAAC;IACzB,QAAQ,EAAE,aAAa,CAAC;IACxB;;;OAGG;IACH,UAAU,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,UAAU,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnE;;OAEG;IACH,UAAU,CAAC,EAAE,YAAY,CAAC;CAC3B,CAAC;AAEF;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,QAAQ;IACvC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,cAAc,CAAK;IAE3B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoC;IAEjE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiC;IAC7D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAe;IAE9C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,eAAe,CAAC,CAA2B;IAEnD,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,gBAAgB,EAMzE;IAED,UAAyB,KAAK,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAM1D;IAED,UAAyB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAK/C;IAED,oBAAoB,IAAI,IAAI,CAO3B;IAED,mBAAmB,IAAI,IAAI,CAQ1B;IAED,OAAO,CAAC,eAAe;YAgBT,WAAW;IAoBzB,OAAO,CAAC,cAAc;YAOR,iBAAiB;YAejB,mBAAmB;IAkCjC,OAAO,CAAC,cAAc;CAQvB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,aACrB,cAAc,EAAE,kBACV,UAAU,EAAE,iBACb,MAAM,KACpB;IAAE,WAAW,EAAE,YAAY,CAAC,UAAU,EAAE,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAgClE,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=transcriber.test.d.ts.map