@dxos/plugin-transcription 0.8.2-main.fbd8ed0 → 0.8.2-staging.7ac8446

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 (251) hide show
  1. package/dist/lib/browser/{TranscriptContainer-CXA4ZBHW.mjs → TranscriptContainer-JQ3HFHLQ.mjs} +2 -3
  2. package/dist/lib/browser/app-graph-builder-VDQOVX7P.mjs +191 -0
  3. package/dist/lib/browser/app-graph-builder-VDQOVX7P.mjs.map +7 -0
  4. package/dist/lib/browser/chunk-G4B6CPC2.mjs +253 -0
  5. package/dist/lib/browser/chunk-G4B6CPC2.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-KLD7O5GJ.mjs → chunk-GU2BNYKZ.mjs} +12 -2
  7. package/dist/lib/browser/chunk-GU2BNYKZ.mjs.map +7 -0
  8. package/dist/lib/browser/chunk-K7FOYAXO.mjs +8 -0
  9. package/dist/lib/browser/chunk-K7FOYAXO.mjs.map +7 -0
  10. package/dist/lib/browser/chunk-OGNXNGJB.mjs +73 -0
  11. package/dist/lib/browser/chunk-OGNXNGJB.mjs.map +7 -0
  12. package/dist/lib/browser/{chunk-3TKXI6TQ.mjs → chunk-YCZISX63.mjs} +81 -108
  13. package/dist/lib/browser/chunk-YCZISX63.mjs.map +7 -0
  14. package/dist/lib/browser/{chunk-LTIQFX4W.mjs → chunk-YEPT334A.mjs} +1 -1
  15. package/dist/lib/browser/chunk-YEPT334A.mjs.map +7 -0
  16. package/dist/lib/browser/index.mjs +210 -47
  17. package/dist/lib/browser/index.mjs.map +4 -4
  18. package/dist/lib/browser/{intent-resolver-DZ62CJPC.mjs → intent-resolver-4R66ZCKT.mjs} +8 -8
  19. package/dist/lib/browser/intent-resolver-4R66ZCKT.mjs.map +7 -0
  20. package/dist/lib/browser/{meeting-transcription-state-MNA2XROE.mjs → meeting-transcription-state-DLFHQK72.mjs} +4 -4
  21. package/dist/lib/browser/meeting-transcription-state-DLFHQK72.mjs.map +7 -0
  22. package/dist/lib/browser/meta.json +1 -1
  23. package/dist/lib/browser/{react-surface-PUXZNAZL.mjs → react-surface-FQUHU5G7.mjs} +6 -18
  24. package/dist/lib/browser/react-surface-FQUHU5G7.mjs.map +7 -0
  25. package/dist/lib/browser/{transcriber-YWWIV6KP.mjs → transcriber-LGMIWDYI.mjs} +7 -8
  26. package/dist/lib/browser/{transcriber-YWWIV6KP.mjs.map → transcriber-LGMIWDYI.mjs.map} +3 -3
  27. package/dist/lib/browser/types/index.mjs +3 -3
  28. package/dist/lib/node/{TranscriptContainer-SSJVLRM6.cjs → TranscriptContainer-QEYTTT2V.cjs} +7 -8
  29. package/dist/lib/node/TranscriptContainer-QEYTTT2V.cjs.map +7 -0
  30. package/dist/lib/node/app-graph-builder-IFSIVNUR.cjs +200 -0
  31. package/dist/lib/node/app-graph-builder-IFSIVNUR.cjs.map +7 -0
  32. package/dist/lib/node/{chunk-J72PUQ3C.cjs → chunk-3KHUSQNW.cjs} +15 -6
  33. package/dist/lib/node/chunk-3KHUSQNW.cjs.map +7 -0
  34. package/dist/lib/node/{chunk-JUGOXWES.cjs → chunk-CZMLKKWT.cjs} +4 -4
  35. package/dist/lib/node/chunk-CZMLKKWT.cjs.map +7 -0
  36. package/dist/lib/node/{chunk-WKZLGVEJ.cjs → chunk-FCCJALOT.cjs} +83 -111
  37. package/dist/lib/node/chunk-FCCJALOT.cjs.map +7 -0
  38. package/dist/lib/node/{chunk-L27AK6FQ.cjs → chunk-LP4FG423.cjs} +8 -23
  39. package/dist/lib/node/chunk-LP4FG423.cjs.map +7 -0
  40. package/dist/lib/node/{chunk-EJWB53WK.cjs → chunk-P4VVD6ZO.cjs} +34 -24
  41. package/dist/lib/node/chunk-P4VVD6ZO.cjs.map +7 -0
  42. package/dist/lib/node/chunk-UOFHT4GZ.cjs +280 -0
  43. package/dist/lib/node/chunk-UOFHT4GZ.cjs.map +7 -0
  44. package/dist/lib/node/index.cjs +238 -66
  45. package/dist/lib/node/index.cjs.map +4 -4
  46. package/dist/lib/node/{intent-resolver-TRBKI24D.cjs → intent-resolver-WMMCOUEH.cjs} +10 -11
  47. package/dist/lib/node/intent-resolver-WMMCOUEH.cjs.map +7 -0
  48. package/dist/lib/node/{meeting-transcription-state-5XLTMWPA.cjs → meeting-transcription-state-URIYILEQ.cjs} +7 -7
  49. package/dist/lib/node/meeting-transcription-state-URIYILEQ.cjs.map +7 -0
  50. package/dist/lib/node/meta.json +1 -1
  51. package/dist/lib/node/{react-surface-SZAMHCX7.cjs → react-surface-WI2MGWCC.cjs} +10 -20
  52. package/dist/lib/node/react-surface-WI2MGWCC.cjs.map +7 -0
  53. package/dist/lib/node/{transcriber-AFUXFHCR.cjs → transcriber-QG5WPKX4.cjs} +13 -14
  54. package/dist/lib/node/{transcriber-AFUXFHCR.cjs.map → transcriber-QG5WPKX4.cjs.map} +3 -3
  55. package/dist/lib/node/types/index.cjs +8 -8
  56. package/dist/lib/node/types/index.cjs.map +1 -1
  57. package/dist/lib/node-esm/{TranscriptContainer-M53LI2TX.mjs → TranscriptContainer-ZXUCOWGY.mjs} +2 -3
  58. package/dist/lib/node-esm/app-graph-builder-UL6XLIZY.mjs +192 -0
  59. package/dist/lib/node-esm/app-graph-builder-UL6XLIZY.mjs.map +7 -0
  60. package/dist/lib/node-esm/chunk-6X7X2UZF.mjs +254 -0
  61. package/dist/lib/node-esm/chunk-6X7X2UZF.mjs.map +7 -0
  62. package/dist/lib/node-esm/chunk-GIO6J6FE.mjs +74 -0
  63. package/dist/lib/node-esm/chunk-GIO6J6FE.mjs.map +7 -0
  64. package/dist/lib/node-esm/{chunk-QMHMEKB3.mjs → chunk-HKATMD34.mjs} +12 -2
  65. package/dist/lib/node-esm/chunk-HKATMD34.mjs.map +7 -0
  66. package/dist/lib/node-esm/chunk-J4D2RBBH.mjs +10 -0
  67. package/dist/lib/node-esm/chunk-J4D2RBBH.mjs.map +7 -0
  68. package/dist/lib/node-esm/{chunk-5E2MR5XK.mjs → chunk-PTZHDZ36.mjs} +1 -1
  69. package/dist/lib/node-esm/chunk-PTZHDZ36.mjs.map +7 -0
  70. package/dist/lib/node-esm/{chunk-V5IWBPYO.mjs → chunk-YQYBLFNI.mjs} +81 -108
  71. package/dist/lib/node-esm/chunk-YQYBLFNI.mjs.map +7 -0
  72. package/dist/lib/node-esm/index.mjs +210 -47
  73. package/dist/lib/node-esm/index.mjs.map +4 -4
  74. package/dist/lib/node-esm/{intent-resolver-HFVAL274.mjs → intent-resolver-QN2LO5TX.mjs} +8 -8
  75. package/dist/lib/node-esm/intent-resolver-QN2LO5TX.mjs.map +7 -0
  76. package/dist/lib/node-esm/{meeting-transcription-state-3WOZ52BQ.mjs → meeting-transcription-state-ZYVRAW6Y.mjs} +4 -4
  77. package/dist/lib/node-esm/meeting-transcription-state-ZYVRAW6Y.mjs.map +7 -0
  78. package/dist/lib/node-esm/meta.json +1 -1
  79. package/dist/lib/node-esm/{react-surface-UEJELL7I.mjs → react-surface-PCH6NTVB.mjs} +6 -18
  80. package/dist/lib/node-esm/react-surface-PCH6NTVB.mjs.map +7 -0
  81. package/dist/lib/node-esm/{transcriber-7RJEFPDI.mjs → transcriber-TMPYZ5L4.mjs} +7 -8
  82. package/dist/lib/node-esm/{transcriber-7RJEFPDI.mjs.map → transcriber-TMPYZ5L4.mjs.map} +3 -3
  83. package/dist/lib/node-esm/types/index.mjs +3 -3
  84. package/dist/types/src/TranscriptionPlugin.d.ts.map +1 -1
  85. package/dist/types/src/capabilities/app-graph-builder.d.ts +179 -2
  86. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  87. package/dist/types/src/capabilities/capabilities.d.ts +7 -5
  88. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  89. package/dist/types/src/capabilities/index.d.ts +182 -4
  90. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  91. package/dist/types/src/capabilities/intent-resolver.d.ts +2 -2
  92. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  93. package/dist/types/src/capabilities/meeting-transcription-state.d.ts +4 -2
  94. package/dist/types/src/capabilities/meeting-transcription-state.d.ts.map +1 -1
  95. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  96. package/dist/types/src/capabilities/transcriber.d.ts.map +1 -1
  97. package/dist/types/src/components/Transcript/Transcript.d.ts +4 -14
  98. package/dist/types/src/components/Transcript/Transcript.d.ts.map +1 -1
  99. package/dist/types/src/components/Transcript/Transcript.stories.d.ts +4 -19
  100. package/dist/types/src/components/Transcript/Transcript.stories.d.ts.map +1 -1
  101. package/dist/types/src/components/TranscriptContainer.d.ts.map +1 -1
  102. package/dist/types/src/components/index.d.ts +0 -1
  103. package/dist/types/src/components/index.d.ts.map +1 -1
  104. package/dist/types/src/components/transcription.stories.d.ts +3 -6
  105. package/dist/types/src/components/transcription.stories.d.ts.map +1 -1
  106. package/dist/types/src/hooks/index.d.ts +0 -1
  107. package/dist/types/src/hooks/index.d.ts.map +1 -1
  108. package/dist/types/src/hooks/useAudioFile.d.ts.map +1 -1
  109. package/dist/types/src/hooks/useAudioTrack.d.ts.map +1 -1
  110. package/dist/types/src/hooks/useTranscriber.d.ts +1 -1
  111. package/dist/types/src/hooks/useTranscriber.d.ts.map +1 -1
  112. package/dist/types/src/hooks/useVoiceInput.d.ts.map +1 -1
  113. package/dist/types/src/transcriber/transcriber.d.ts +2 -2
  114. package/dist/types/src/transcriber/transcriber.d.ts.map +1 -1
  115. package/dist/types/src/transcriber/transcriber.test.d.ts +2 -0
  116. package/dist/types/src/transcriber/transcriber.test.d.ts.map +1 -0
  117. package/dist/types/src/transcriber/transcription-manager.d.ts +15 -17
  118. package/dist/types/src/transcriber/transcription-manager.d.ts.map +1 -1
  119. package/dist/types/src/translations.d.ts +18 -3
  120. package/dist/types/src/translations.d.ts.map +1 -1
  121. package/dist/types/src/types/schema.d.ts +40 -26
  122. package/dist/types/src/types/schema.d.ts.map +1 -1
  123. package/dist/types/src/types/types.d.ts +7 -18
  124. package/dist/types/src/types/types.d.ts.map +1 -1
  125. package/dist/types/src/util/array.d.ts.map +1 -1
  126. package/dist/types/src/util/get-time-str.d.ts.map +1 -1
  127. package/dist/types/src/util/index.d.ts +1 -0
  128. package/dist/types/src/util/index.d.ts.map +1 -1
  129. package/dist/types/src/util/monitor-audio-level.d.ts.map +1 -1
  130. package/dist/types/src/util/random-queue-dxn.d.ts +3 -0
  131. package/dist/types/src/util/random-queue-dxn.d.ts.map +1 -0
  132. package/dist/types/tsconfig.tsbuildinfo +1 -1
  133. package/package.json +40 -57
  134. package/src/TranscriptionPlugin.tsx +13 -30
  135. package/src/capabilities/app-graph-builder.ts +111 -192
  136. package/src/capabilities/capabilities.ts +3 -4
  137. package/src/capabilities/index.ts +0 -1
  138. package/src/capabilities/intent-resolver.ts +7 -8
  139. package/src/capabilities/meeting-transcription-state.ts +2 -2
  140. package/src/capabilities/react-surface.tsx +4 -12
  141. package/src/capabilities/transcriber.ts +1 -2
  142. package/src/components/Transcript/Transcript.stories.tsx +43 -201
  143. package/src/components/Transcript/Transcript.tsx +208 -83
  144. package/src/components/TranscriptContainer.tsx +6 -11
  145. package/src/components/index.ts +0 -1
  146. package/src/components/transcription.stories.tsx +65 -164
  147. package/src/hooks/index.ts +0 -1
  148. package/src/hooks/useTranscriber.ts +2 -3
  149. package/src/transcriber/{transcriber.browser.test.ts → transcriber.test.ts} +3 -3
  150. package/src/transcriber/transcriber.ts +11 -20
  151. package/src/transcriber/transcription-manager.ts +58 -67
  152. package/src/translations.ts +0 -2
  153. package/src/types/schema.ts +32 -11
  154. package/src/types/types.ts +9 -19
  155. package/src/util/index.ts +1 -0
  156. package/src/util/random-queue-dxn.ts +9 -0
  157. package/dist/lib/browser/app-graph-builder-REQZ5SC5.mjs +0 -351
  158. package/dist/lib/browser/app-graph-builder-REQZ5SC5.mjs.map +0 -7
  159. package/dist/lib/browser/chunk-3TKXI6TQ.mjs.map +0 -7
  160. package/dist/lib/browser/chunk-JHWEZRWC.mjs +0 -63
  161. package/dist/lib/browser/chunk-JHWEZRWC.mjs.map +0 -7
  162. package/dist/lib/browser/chunk-K2LS2QOM.mjs +0 -720
  163. package/dist/lib/browser/chunk-K2LS2QOM.mjs.map +0 -7
  164. package/dist/lib/browser/chunk-KLD7O5GJ.mjs.map +0 -7
  165. package/dist/lib/browser/chunk-LCTMCTYY.mjs +0 -27
  166. package/dist/lib/browser/chunk-LCTMCTYY.mjs.map +0 -7
  167. package/dist/lib/browser/chunk-LTIQFX4W.mjs.map +0 -7
  168. package/dist/lib/browser/intent-resolver-DZ62CJPC.mjs.map +0 -7
  169. package/dist/lib/browser/meeting-transcription-state-MNA2XROE.mjs.map +0 -7
  170. package/dist/lib/browser/react-surface-PUXZNAZL.mjs.map +0 -7
  171. package/dist/lib/browser/settings-JWDS4J3F.mjs +0 -24
  172. package/dist/lib/browser/settings-JWDS4J3F.mjs.map +0 -7
  173. package/dist/lib/node/TranscriptContainer-SSJVLRM6.cjs.map +0 -7
  174. package/dist/lib/node/app-graph-builder-OAPU4GDH.cjs +0 -352
  175. package/dist/lib/node/app-graph-builder-OAPU4GDH.cjs.map +0 -7
  176. package/dist/lib/node/chunk-EJWB53WK.cjs.map +0 -7
  177. package/dist/lib/node/chunk-EVE3H46F.cjs +0 -737
  178. package/dist/lib/node/chunk-EVE3H46F.cjs.map +0 -7
  179. package/dist/lib/node/chunk-J72PUQ3C.cjs.map +0 -7
  180. package/dist/lib/node/chunk-JUGOXWES.cjs.map +0 -7
  181. package/dist/lib/node/chunk-L27AK6FQ.cjs.map +0 -7
  182. package/dist/lib/node/chunk-WKZLGVEJ.cjs.map +0 -7
  183. package/dist/lib/node/intent-resolver-TRBKI24D.cjs.map +0 -7
  184. package/dist/lib/node/meeting-transcription-state-5XLTMWPA.cjs.map +0 -7
  185. package/dist/lib/node/react-surface-SZAMHCX7.cjs.map +0 -7
  186. package/dist/lib/node/settings-AWWMOSCV.cjs +0 -38
  187. package/dist/lib/node/settings-AWWMOSCV.cjs.map +0 -7
  188. package/dist/lib/node-esm/app-graph-builder-UBP6EOBR.mjs +0 -352
  189. package/dist/lib/node-esm/app-graph-builder-UBP6EOBR.mjs.map +0 -7
  190. package/dist/lib/node-esm/chunk-4KC3E5T4.mjs +0 -721
  191. package/dist/lib/node-esm/chunk-4KC3E5T4.mjs.map +0 -7
  192. package/dist/lib/node-esm/chunk-5E2MR5XK.mjs.map +0 -7
  193. package/dist/lib/node-esm/chunk-MHQP2PAF.mjs +0 -28
  194. package/dist/lib/node-esm/chunk-MHQP2PAF.mjs.map +0 -7
  195. package/dist/lib/node-esm/chunk-QMHMEKB3.mjs.map +0 -7
  196. package/dist/lib/node-esm/chunk-QYG2FOXA.mjs +0 -64
  197. package/dist/lib/node-esm/chunk-QYG2FOXA.mjs.map +0 -7
  198. package/dist/lib/node-esm/chunk-V5IWBPYO.mjs.map +0 -7
  199. package/dist/lib/node-esm/intent-resolver-HFVAL274.mjs.map +0 -7
  200. package/dist/lib/node-esm/meeting-transcription-state-3WOZ52BQ.mjs.map +0 -7
  201. package/dist/lib/node-esm/react-surface-UEJELL7I.mjs.map +0 -7
  202. package/dist/lib/node-esm/settings-QFNFGFJ5.mjs +0 -25
  203. package/dist/lib/node-esm/settings-QFNFGFJ5.mjs.map +0 -7
  204. package/dist/types/src/capabilities/settings.d.ts +0 -4
  205. package/dist/types/src/capabilities/settings.d.ts.map +0 -1
  206. package/dist/types/src/components/Transcript/deprecated/OldTranscript.d.ts +0 -27
  207. package/dist/types/src/components/Transcript/deprecated/OldTranscript.d.ts.map +0 -1
  208. package/dist/types/src/components/Transcript/transcript-extension.d.ts +0 -19
  209. package/dist/types/src/components/Transcript/transcript-extension.d.ts.map +0 -1
  210. package/dist/types/src/components/TranscriptionSettings/TranscriptionSettings.d.ts +0 -6
  211. package/dist/types/src/components/TranscriptionSettings/TranscriptionSettings.d.ts.map +0 -1
  212. package/dist/types/src/components/TranscriptionSettings/index.d.ts +0 -2
  213. package/dist/types/src/components/TranscriptionSettings/index.d.ts.map +0 -1
  214. package/dist/types/src/entity-extraction/entity-extraction.d.ts +0 -42
  215. package/dist/types/src/entity-extraction/entity-extraction.d.ts.map +0 -1
  216. package/dist/types/src/entity-extraction/entity-extraction.test.d.ts +0 -2
  217. package/dist/types/src/entity-extraction/entity-extraction.test.d.ts.map +0 -1
  218. package/dist/types/src/entity-extraction/index.d.ts +0 -2
  219. package/dist/types/src/entity-extraction/index.d.ts.map +0 -1
  220. package/dist/types/src/hooks/useQueueModelAdapter.d.ts +0 -7
  221. package/dist/types/src/hooks/useQueueModelAdapter.d.ts.map +0 -1
  222. package/dist/types/src/model/index.d.ts +0 -2
  223. package/dist/types/src/model/index.d.ts.map +0 -1
  224. package/dist/types/src/model/model.d.ts +0 -68
  225. package/dist/types/src/model/model.d.ts.map +0 -1
  226. package/dist/types/src/model/model.test.d.ts +0 -2
  227. package/dist/types/src/model/model.test.d.ts.map +0 -1
  228. package/dist/types/src/testing/index.d.ts +0 -2
  229. package/dist/types/src/testing/index.d.ts.map +0 -1
  230. package/dist/types/src/testing/testing.d.ts +0 -40
  231. package/dist/types/src/testing/testing.d.ts.map +0 -1
  232. package/dist/types/src/transcriber/transcriber.browser.test.d.ts +0 -2
  233. package/dist/types/src/transcriber/transcriber.browser.test.d.ts.map +0 -1
  234. package/src/capabilities/settings.ts +0 -20
  235. package/src/components/Transcript/deprecated/OldTranscript.tsx +0 -260
  236. package/src/components/Transcript/transcript-extension.ts +0 -236
  237. package/src/components/TranscriptionSettings/TranscriptionSettings.tsx +0 -26
  238. package/src/components/TranscriptionSettings/index.ts +0 -5
  239. package/src/entity-extraction/entity-extraction.test.ts +0 -97
  240. package/src/entity-extraction/entity-extraction.ts +0 -149
  241. package/src/entity-extraction/index.ts +0 -5
  242. package/src/entity-extraction/system-prompt.tpl +0 -38
  243. package/src/entity-extraction/types.d.ts +0 -8
  244. package/src/hooks/useQueueModelAdapter.ts +0 -63
  245. package/src/model/index.ts +0 -5
  246. package/src/model/model.test.ts +0 -169
  247. package/src/model/model.ts +0 -229
  248. package/src/testing/index.ts +0 -5
  249. package/src/testing/testing.ts +0 -216
  250. /package/dist/lib/browser/{TranscriptContainer-CXA4ZBHW.mjs.map → TranscriptContainer-JQ3HFHLQ.mjs.map} +0 -0
  251. /package/dist/lib/node-esm/{TranscriptContainer-M53LI2TX.mjs.map → TranscriptContainer-ZXUCOWGY.mjs.map} +0 -0
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
+ var __create = Object.create;
2
3
  var __defProp = Object.defineProperty;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
5
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
8
  var __export = (target, all) => {
7
9
  for (var name in all)
@@ -15,45 +17,226 @@ var __copyProps = (to, from, except, desc) => {
15
17
  }
16
18
  return to;
17
19
  };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
18
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
29
  var node_exports = {};
20
30
  __export(node_exports, {
21
- MediaStreamRecorder: () => import_chunk_WKZLGVEJ.MediaStreamRecorder,
31
+ MediaStreamRecorder: () => import_chunk_FCCJALOT.MediaStreamRecorder,
22
32
  TRANSCRIPTION_PLUGIN: () => import_chunk_NVZWGFJL.TRANSCRIPTION_PLUGIN,
23
- Transcriber: () => import_chunk_WKZLGVEJ.Transcriber,
24
- Transcript: () => import_chunk_EVE3H46F.Transcript,
25
- TranscriptContainer: () => import_chunk_L27AK6FQ.TranscriptContainer,
26
- TranscriptionCapabilities: () => import_chunk_JUGOXWES.TranscriptionCapabilities,
27
- TranscriptionContainer: () => import_chunk_EVE3H46F.TranscriptionContainer,
28
- TranscriptionManager: () => import_chunk_WKZLGVEJ.TranscriptionManager,
33
+ Transcriber: () => import_chunk_FCCJALOT.Transcriber,
34
+ Transcript: () => import_chunk_UOFHT4GZ.Transcript,
35
+ TranscriptContainer: () => import_chunk_LP4FG423.TranscriptContainer,
36
+ TranscriptionCapabilities: () => import_chunk_CZMLKKWT.TranscriptionCapabilities,
37
+ TranscriptionContainer: () => import_chunk_UOFHT4GZ.TranscriptionContainer,
38
+ TranscriptionManager: () => import_chunk_FCCJALOT.TranscriptionManager,
29
39
  TranscriptionPlugin: () => TranscriptionPlugin,
30
- TranscriptionSettings: () => import_chunk_L27AK6FQ.TranscriptionSettings,
31
40
  meta: () => import_chunk_NVZWGFJL.meta,
32
- renderMarkdown: () => import_chunk_EVE3H46F.renderMarkdown,
33
- useAudioFile: () => import_chunk_EVE3H46F.useAudioFile,
34
- useAudioTrack: () => import_chunk_EVE3H46F.useAudioTrack,
35
- useQueueModelAdapter: () => import_chunk_EVE3H46F.useQueueModelAdapter,
36
- useTranscriber: () => import_chunk_EVE3H46F.useTranscriber,
37
- useVoiceInput: () => import_chunk_EVE3H46F.useVoiceInput
41
+ useAudioFile: () => useAudioFile,
42
+ useAudioTrack: () => useAudioTrack,
43
+ useTranscriber: () => useTranscriber,
44
+ useVoiceInput: () => useVoiceInput
38
45
  });
39
46
  module.exports = __toCommonJS(node_exports);
40
- var import_chunk_L27AK6FQ = require("./chunk-L27AK6FQ.cjs");
41
- var import_chunk_EVE3H46F = require("./chunk-EVE3H46F.cjs");
42
- var import_chunk_WKZLGVEJ = require("./chunk-WKZLGVEJ.cjs");
43
- var import_chunk_J72PUQ3C = require("./chunk-J72PUQ3C.cjs");
44
- var import_chunk_EJWB53WK = require("./chunk-EJWB53WK.cjs");
45
- var import_chunk_JUGOXWES = require("./chunk-JUGOXWES.cjs");
47
+ var import_chunk_LP4FG423 = require("./chunk-LP4FG423.cjs");
48
+ var import_chunk_UOFHT4GZ = require("./chunk-UOFHT4GZ.cjs");
49
+ var import_chunk_FCCJALOT = require("./chunk-FCCJALOT.cjs");
50
+ var import_chunk_3KHUSQNW = require("./chunk-3KHUSQNW.cjs");
51
+ var import_chunk_CZMLKKWT = require("./chunk-CZMLKKWT.cjs");
52
+ var import_chunk_P4VVD6ZO = require("./chunk-P4VVD6ZO.cjs");
46
53
  var import_chunk_NVZWGFJL = require("./chunk-NVZWGFJL.cjs");
47
54
  var import_app_framework = require("@dxos/app-framework");
55
+ var import_react = require("react");
56
+ var import_log = require("@dxos/log");
57
+ var import_react2 = require("react");
58
+ var import_react3 = require("react");
59
+ var import_app_framework2 = require("@dxos/app-framework");
60
+ var import_react4 = require("react");
61
+ var import_async = require("@dxos/async");
62
+ var import_context = require("@dxos/context");
63
+ var import_log2 = require("@dxos/log");
64
+ var import_react_ui_sfx = require("@dxos/react-ui-sfx");
65
+ var import_app_framework3 = require("@dxos/app-framework");
48
66
  var import_echo_db = require("@dxos/echo-db");
49
67
  var import_echo_schema = require("@dxos/echo-schema");
50
68
  var import_plugin_client = require("@dxos/plugin-client");
51
- var import_echo = require("@dxos/react-client/echo");
52
- var import_schema = require("@dxos/schema");
69
+ var AppGraphBuilder = (0, import_app_framework.lazy)(() => import("./app-graph-builder-IFSIVNUR.cjs"));
70
+ var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-WMMCOUEH.cjs"));
71
+ var MeetingTranscriptionState = (0, import_app_framework.lazy)(() => import("./meeting-transcription-state-URIYILEQ.cjs"));
72
+ var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-WI2MGWCC.cjs"));
73
+ var Transcriber2 = (0, import_app_framework.lazy)(() => import("./transcriber-QG5WPKX4.cjs"));
74
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-transcription/src/hooks/useAudioFile.ts";
75
+ var useAudioFile = (audioUrl) => {
76
+ const [{ audio, stream, track }, setStream] = (0, import_react.useState)({});
77
+ (0, import_react.useEffect)(() => {
78
+ const t = setTimeout(async () => {
79
+ const response = await fetch(audioUrl);
80
+ const blob = await response.blob();
81
+ const audio2 = new Audio();
82
+ audio2.src = URL.createObjectURL(blob);
83
+ await new Promise((resolve, reject) => {
84
+ audio2.addEventListener("error", (err) => {
85
+ import_log.log.error("error", {
86
+ err
87
+ }, {
88
+ F: __dxlog_file,
89
+ L: 27,
90
+ S: void 0,
91
+ C: (f, a) => f(...a)
92
+ });
93
+ reject(err);
94
+ }, {
95
+ once: true
96
+ });
97
+ audio2.addEventListener("canplay", () => {
98
+ import_log.log.info("starting...", void 0, {
99
+ F: __dxlog_file,
100
+ L: 35,
101
+ S: void 0,
102
+ C: (f, a) => f(...a)
103
+ });
104
+ resolve();
105
+ }, {
106
+ once: true
107
+ });
108
+ audio2.load();
109
+ });
110
+ const ctx = new AudioContext();
111
+ const destination = ctx.createMediaStreamDestination();
112
+ destination.channelCount = 1;
113
+ const source = ctx.createMediaElementSource(audio2);
114
+ source.connect(destination);
115
+ setStream({
116
+ audio: audio2,
117
+ stream: destination.stream,
118
+ track: destination.stream.getAudioTracks()[0]
119
+ });
120
+ });
121
+ return () => clearTimeout(t);
122
+ }, [
123
+ audioUrl
124
+ ]);
125
+ return {
126
+ audio,
127
+ stream,
128
+ track
129
+ };
130
+ };
131
+ var useAudioTrack = (active) => {
132
+ const [track, setTrack] = (0, import_react2.useState)();
133
+ (0, import_react2.useEffect)(() => {
134
+ if (!active) {
135
+ track?.stop();
136
+ setTrack(void 0);
137
+ return;
138
+ }
139
+ const initAudio = async () => {
140
+ const audio = new Audio();
141
+ audio.srcObject = await navigator.mediaDevices.getUserMedia({
142
+ audio: true
143
+ });
144
+ const [track2] = audio.srcObject.getAudioTracks();
145
+ if (track2) {
146
+ setTrack(track2);
147
+ }
148
+ };
149
+ if (active) {
150
+ void initAudio();
151
+ }
152
+ }, [
153
+ active
154
+ ]);
155
+ return track;
156
+ };
157
+ var useTranscriber = ({ audioStreamTrack, onSegments }) => {
158
+ const [getTranscriber] = (0, import_app_framework2.useCapabilities)(import_chunk_CZMLKKWT.TranscriptionCapabilities.Transcriber);
159
+ const transcriber = (0, import_react3.useMemo)(() => {
160
+ if (!onSegments || !audioStreamTrack || !getTranscriber) {
161
+ return void 0;
162
+ }
163
+ return getTranscriber({
164
+ audioStreamTrack,
165
+ onSegments
166
+ });
167
+ }, [
168
+ audioStreamTrack,
169
+ onSegments,
170
+ getTranscriber
171
+ ]);
172
+ (0, import_react3.useEffect)(() => {
173
+ return () => {
174
+ void transcriber?.close();
175
+ };
176
+ }, [
177
+ transcriber
178
+ ]);
179
+ return transcriber;
180
+ };
181
+ var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-transcription/src/hooks/useVoiceInput.ts";
182
+ var useVoiceInput = ({ active, onUpdate }) => {
183
+ const soundStart = (0, import_react_ui_sfx.useSoundEffect)("StartRecording");
184
+ const soundStop = (0, import_react_ui_sfx.useSoundEffect)("StopRecording");
185
+ const handleSegments = (0, import_react4.useCallback)(async (segments) => {
186
+ const text = segments.map((str) => str.text.trim().replace(/[^\w\s]/g, "")).join(" ");
187
+ onUpdate(text);
188
+ }, []);
189
+ const [recording, setRecording] = (0, import_react4.useState)(false);
190
+ const track = useAudioTrack(active);
191
+ const transcriber = useTranscriber({
192
+ audioStreamTrack: track,
193
+ onSegments: handleSegments
194
+ });
195
+ (0, import_react4.useEffect)(() => {
196
+ const ctx = new import_context.Context(void 0, {
197
+ F: __dxlog_file2,
198
+ L: 43
199
+ });
200
+ (0, import_async.scheduleMicroTask)(ctx, async () => {
201
+ if (active && transcriber) {
202
+ await transcriber.open();
203
+ import_log2.log.info("starting...", void 0, {
204
+ F: __dxlog_file2,
205
+ L: 47,
206
+ S: void 0,
207
+ C: (f, a) => f(...a)
208
+ });
209
+ setRecording(true);
210
+ void soundStart.play();
211
+ transcriber.startChunksRecording();
212
+ } else if (!active && transcriber?.isOpen) {
213
+ transcriber?.stopChunksRecording();
214
+ await transcriber?.close();
215
+ import_log2.log.info("stopped", void 0, {
216
+ F: __dxlog_file2,
217
+ L: 54,
218
+ S: void 0,
219
+ C: (f, a) => f(...a)
220
+ });
221
+ setRecording(false);
222
+ void soundStop.play();
223
+ }
224
+ });
225
+ return () => {
226
+ void ctx.dispose();
227
+ };
228
+ }, [
229
+ active,
230
+ transcriber
231
+ ]);
232
+ return {
233
+ recording
234
+ };
235
+ };
53
236
  var translations_default = [
54
237
  {
55
238
  "en-US": {
56
- [import_chunk_EJWB53WK.TranscriptType.typename]: {
239
+ [import_chunk_P4VVD6ZO.TranscriptType.typename]: {
57
240
  "typename label": "Transcript",
58
241
  "object name placeholder": "New transcript"
59
242
  },
@@ -64,76 +247,68 @@ var translations_default = [
64
247
  "stop transcription label": "Stop transcription",
65
248
  "delete button": "Delete",
66
249
  "bookmark button": "Bookmark",
67
- "scroll to end label": "Scroll to latest",
68
- "settings entity extraction label": "Entity extraction"
250
+ "scroll to end label": "Scroll to latest"
69
251
  }
70
252
  }
71
253
  }
72
254
  ];
73
- var TranscriptionPlugin = () => (0, import_app_framework.definePlugin)(import_chunk_NVZWGFJL.meta, [
74
- (0, import_app_framework.defineModule)({
255
+ var TranscriptionPlugin = () => (0, import_app_framework3.definePlugin)(import_chunk_NVZWGFJL.meta, [
256
+ (0, import_app_framework3.defineModule)({
75
257
  id: `${import_chunk_NVZWGFJL.meta.id}/module/translations`,
76
- activatesOn: import_app_framework.Events.SetupTranslations,
77
- activate: () => (0, import_app_framework.contributes)(import_app_framework.Capabilities.Translations, translations_default)
258
+ activatesOn: import_app_framework3.Events.SetupTranslations,
259
+ activate: () => (0, import_app_framework3.contributes)(import_app_framework3.Capabilities.Translations, translations_default)
260
+ }),
261
+ (0, import_app_framework3.defineModule)({
262
+ id: `${import_chunk_NVZWGFJL.meta.id}/module/transcription`,
263
+ activatesOn: import_app_framework3.Events.SetupAppGraph,
264
+ activate: Transcriber2
78
265
  }),
79
- (0, import_app_framework.defineModule)({
80
- id: `${import_chunk_NVZWGFJL.meta.id}/module/settings`,
81
- activatesOn: import_app_framework.Events.SetupSettings,
82
- activate: import_chunk_EVE3H46F.Settings
266
+ (0, import_app_framework3.defineModule)({
267
+ id: `${import_chunk_NVZWGFJL.meta.id}/module/meeting-transcription-state`,
268
+ activatesOn: import_app_framework3.Events.SetupAppGraph,
269
+ activate: MeetingTranscriptionState
83
270
  }),
84
- (0, import_app_framework.defineModule)({
271
+ (0, import_app_framework3.defineModule)({
85
272
  id: `${import_chunk_NVZWGFJL.meta.id}/module/metadata`,
86
- activatesOn: import_app_framework.Events.SetupMetadata,
87
- activate: (context) => (0, import_app_framework.contributes)(import_app_framework.Capabilities.Metadata, {
88
- id: import_chunk_EJWB53WK.TranscriptType.typename,
273
+ activatesOn: import_app_framework3.Events.SetupMetadata,
274
+ activate: (context) => (0, import_app_framework3.contributes)(import_app_framework3.Capabilities.Metadata, {
275
+ id: import_chunk_P4VVD6ZO.TranscriptType.typename,
89
276
  metadata: {
90
277
  icon: "ph--subtitles--regular",
91
278
  // TODO(wittjosiah): Factor out. Artifact? Separate capability?
92
279
  getTextContent: async (transcript) => {
93
- const client = context.getCapability(import_plugin_client.ClientCapabilities.Client);
94
- const space = (0, import_echo.getSpace)(transcript);
95
- const members = space?.members.get().map((member) => member.identity) ?? [];
280
+ const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
96
281
  const queue = new import_echo_db.QueueImpl(client.edge, transcript.queue.dxn);
97
282
  await queue.refresh();
98
- const content = queue.items.filter((message) => (0, import_echo_schema.isInstanceOf)(import_schema.DataType.Message, message)).flatMap((message, index) => (0, import_chunk_EVE3H46F.renderMarkdown)(members)(message, index)).join("\n\n");
283
+ const content = queue.items.filter((block) => (0, import_echo_schema.isInstanceOf)(import_chunk_P4VVD6ZO.TranscriptBlock, block)).map((block) => `${block.authorName}: ${block.segments.map((segment) => segment.text).join("\n")}`).join("\n\n");
99
284
  return content;
100
285
  }
101
286
  }
102
287
  })
103
288
  }),
104
- (0, import_app_framework.defineModule)({
289
+ (0, import_app_framework3.defineModule)({
105
290
  id: `${import_chunk_NVZWGFJL.meta.id}/module/schema`,
106
291
  activatesOn: import_plugin_client.ClientEvents.SetupSchema,
107
292
  activate: () => [
108
- (0, import_app_framework.contributes)(import_plugin_client.ClientCapabilities.Schema, [
109
- import_chunk_EJWB53WK.TranscriptType
293
+ (0, import_app_framework3.contributes)(import_plugin_client.ClientCapabilities.Schema, [
294
+ import_chunk_P4VVD6ZO.TranscriptType
110
295
  ])
111
296
  ]
112
297
  }),
113
- (0, import_app_framework.defineModule)({
298
+ (0, import_app_framework3.defineModule)({
114
299
  id: `${import_chunk_NVZWGFJL.meta.id}/module/react-surface`,
115
- activatesOn: import_app_framework.Events.SetupReactSurface,
116
- activate: import_chunk_EVE3H46F.ReactSurface
300
+ activatesOn: import_app_framework3.Events.SetupReactSurface,
301
+ activate: ReactSurface
117
302
  }),
118
- (0, import_app_framework.defineModule)({
303
+ (0, import_app_framework3.defineModule)({
119
304
  id: `${import_chunk_NVZWGFJL.meta.id}/module/intent-resolver`,
120
- activatesOn: import_app_framework.Events.SetupIntentResolver,
121
- activate: import_chunk_EVE3H46F.IntentResolver
305
+ activatesOn: import_app_framework3.Events.SetupIntentResolver,
306
+ activate: IntentResolver
122
307
  }),
123
- (0, import_app_framework.defineModule)({
308
+ (0, import_app_framework3.defineModule)({
124
309
  id: `${import_chunk_NVZWGFJL.meta.id}/module/app-graph-builder`,
125
- activatesOn: import_app_framework.Events.SetupAppGraph,
126
- activate: import_chunk_EVE3H46F.AppGraphBuilder
127
- }),
128
- (0, import_app_framework.defineModule)({
129
- id: `${import_chunk_NVZWGFJL.meta.id}/module/transcription`,
130
- activatesOn: import_app_framework.Events.SetupAppGraph,
131
- activate: import_chunk_EVE3H46F.Transcriber
132
- }),
133
- (0, import_app_framework.defineModule)({
134
- id: `${import_chunk_NVZWGFJL.meta.id}/module/meeting-transcription-state`,
135
- activatesOn: import_app_framework.Events.SetupAppGraph,
136
- activate: import_chunk_EVE3H46F.MeetingTranscriptionState
310
+ activatesOn: import_app_framework3.Events.SetupAppGraph,
311
+ activate: AppGraphBuilder
137
312
  })
138
313
  ]);
139
314
  // Annotate the CommonJS export names for ESM import in node:
@@ -147,12 +322,9 @@ var TranscriptionPlugin = () => (0, import_app_framework.definePlugin)(import_ch
147
322
  TranscriptionContainer,
148
323
  TranscriptionManager,
149
324
  TranscriptionPlugin,
150
- TranscriptionSettings,
151
325
  meta,
152
- renderMarkdown,
153
326
  useAudioFile,
154
327
  useAudioTrack,
155
- useQueueModelAdapter,
156
328
  useTranscriber,
157
329
  useVoiceInput
158
330
  });
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/TranscriptionPlugin.tsx", "../../../src/translations.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Capabilities, Events, contributes, defineModule, definePlugin } from '@dxos/app-framework';\nimport { QueueImpl } from '@dxos/echo-db';\nimport { isInstanceOf } from '@dxos/echo-schema';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { getSpace } from '@dxos/react-client/echo';\nimport { DataType } from '@dxos/schema';\n\nimport {\n AppGraphBuilder,\n IntentResolver,\n MeetingTranscriptionState,\n ReactSurface,\n Transcriber,\n Settings,\n} from './capabilities';\nimport { renderMarkdown } from './components';\nimport { meta } from './meta';\nimport translations from './translations';\nimport { TranscriptType } from './types';\n\nexport const TranscriptionPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/settings`,\n activatesOn: Events.SetupSettings,\n activate: Settings,\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: (context) =>\n contributes(Capabilities.Metadata, {\n id: TranscriptType.typename,\n metadata: {\n icon: 'ph--subtitles--regular',\n // TODO(wittjosiah): Factor out. Artifact? Separate capability?\n getTextContent: async (transcript: TranscriptType) => {\n const client = context.getCapability(ClientCapabilities.Client);\n const space = getSpace(transcript);\n const members = space?.members.get().map((member) => member.identity) ?? [];\n const queue = new QueueImpl(client.edge, transcript.queue.dxn);\n await queue.refresh();\n const content = queue.items\n .filter((message) => isInstanceOf(DataType.Message, message))\n .flatMap((message, index) => renderMarkdown(members)(message, index))\n .join('\\n\\n');\n return content;\n },\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => [contributes(ClientCapabilities.Schema, [TranscriptType])],\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-builder`,\n activatesOn: Events.SetupAppGraph,\n activate: AppGraphBuilder,\n }),\n defineModule({\n id: `${meta.id}/module/transcription`,\n activatesOn: Events.SetupAppGraph,\n activate: Transcriber,\n }),\n defineModule({\n id: `${meta.id}/module/meeting-transcription-state`,\n activatesOn: Events.SetupAppGraph,\n activate: MeetingTranscriptionState,\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { TRANSCRIPTION_PLUGIN } from './meta';\nimport { TranscriptType } from './types';\n\nexport default [\n {\n 'en-US': {\n [TranscriptType.typename]: {\n 'typename label': 'Transcript',\n 'object name placeholder': 'New transcript',\n },\n [TRANSCRIPTION_PLUGIN]: {\n 'plugin name': 'Transcription',\n 'transcript companion label': 'Transcript',\n\n 'start transcription label': 'Start transcription',\n 'stop transcription label': 'Stop transcription',\n\n 'delete button': 'Delete',\n 'bookmark button': 'Bookmark',\n 'scroll to end label': 'Scroll to latest',\n\n 'settings entity extraction label': 'Entity extraction',\n },\n },\n },\n];\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAA8E;AAC9E,qBAA0B;AAC1B,yBAA6B;AAC7B,2BAAiD;AACjD,kBAAyB;AACzB,oBAAyB;ACFzB,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACA,qCAAeC,QAAQ,GAAG;QACzB,kBAAkB;QAClB,2BAA2B;MAC7B;MACA,CAACC,0CAAAA,GAAuB;QACtB,eAAe;QACf,8BAA8B;QAE9B,6BAA6B;QAC7B,4BAA4B;QAE5B,iBAAiB;QACjB,mBAAmB;QACnB,uBAAuB;QAEvB,oCAAoC;MACtC;IACF;EACF;;ADJK,IAAMC,sBAAsB,UACjCC,mCAAaC,4BAAM;MACjBC,mCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaC,4BAAOC;IACpBC,UAAU,UAAMC,kCAAYC,kCAAaC,cAAcC,oBAAAA;EACzD,CAAA;MACAT,mCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaC,4BAAOO;IACpBL,UAAUM;EACZ,CAAA;MACAX,mCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaC,4BAAOS;IACpBP,UAAU,CAACQ,gBACTP,kCAAYC,kCAAaO,UAAU;MACjCb,IAAIP,qCAAeC;MACnBoB,UAAU;QACRC,MAAM;;QAENC,gBAAgB,OAAOC,eAAAA;AACrB,gBAAMC,SAASN,QAAQO,cAAcC,wCAAmBC,MAAM;AAC9D,gBAAMC,YAAQC,sBAASN,UAAAA;AACvB,gBAAMO,UAAUF,OAAOE,QAAQC,IAAAA,EAAMC,IAAI,CAACC,WAAWA,OAAOC,QAAQ,KAAK,CAAA;AACzE,gBAAMC,QAAQ,IAAIC,yBAAUZ,OAAOa,MAAMd,WAAWY,MAAMG,GAAG;AAC7D,gBAAMH,MAAMI,QAAO;AACnB,gBAAMC,UAAUL,MAAMM,MACnBC,OAAO,CAACC,gBAAYC,iCAAaC,uBAASC,SAASH,OAAAA,CAAAA,EACnDI,QAAQ,CAACJ,SAASK,cAAUC,sCAAenB,OAAAA,EAASa,SAASK,KAAAA,CAAAA,EAC7DE,KAAK,MAAA;AACR,iBAAOV;QACT;MACF;IACF,CAAA;EACJ,CAAA;MACAnC,mCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAa4C,kCAAaC;IAC1B1C,UAAU,MAAM;UAACC,kCAAYe,wCAAmB2B,QAAQ;QAACtD;OAAe;;EAC1E,CAAA;MACAM,mCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaC,4BAAO8C;IACpB5C,UAAU6C;EACZ,CAAA;MACAlD,mCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaC,4BAAOgD;IACpB9C,UAAU+C;EACZ,CAAA;MACApD,mCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaC,4BAAOkD;IACpBhD,UAAUiD;EACZ,CAAA;MACAtD,mCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaC,4BAAOkD;IACpBhD,UAAUkD,sBAAAA;EACZ,CAAA;MACAvD,mCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaC,4BAAOkD;IACpBhD,UAAUmD;EACZ,CAAA;CACD;",
6
- "names": ["TranscriptType", "typename", "TRANSCRIPTION_PLUGIN", "TranscriptionPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "SetupSettings", "Settings", "SetupMetadata", "context", "Metadata", "metadata", "icon", "getTextContent", "transcript", "client", "getCapability", "ClientCapabilities", "Client", "space", "getSpace", "members", "get", "map", "member", "identity", "queue", "QueueImpl", "edge", "dxn", "refresh", "content", "items", "filter", "message", "isInstanceOf", "DataType", "Message", "flatMap", "index", "renderMarkdown", "join", "ClientEvents", "SetupSchema", "Schema", "SetupReactSurface", "ReactSurface", "SetupIntentResolver", "IntentResolver", "SetupAppGraph", "AppGraphBuilder", "Transcriber", "MeetingTranscriptionState"]
3
+ "sources": ["../../../src/capabilities/index.ts", "../../../src/hooks/useAudioFile.ts", "../../../src/hooks/useAudioTrack.ts", "../../../src/hooks/useTranscriber.ts", "../../../src/hooks/useVoiceInput.ts", "../../../src/TranscriptionPlugin.tsx", "../../../src/translations.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const AppGraphBuilder = lazy(() => import('./app-graph-builder'));\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const MeetingTranscriptionState = lazy(() => import('./meeting-transcription-state'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\nexport const Transcriber = lazy(() => import('./transcriber'));\n\nexport * from './capabilities';\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useEffect, useState } from 'react';\n\nimport { log } from '@dxos/log';\n\nexport type UseAudioState = {\n audio?: HTMLAudioElement;\n stream?: MediaStream;\n track?: MediaStreamTrack;\n};\n\nexport const useAudioFile = (audioUrl: string): UseAudioState => {\n const [{ audio, stream, track }, setStream] = useState<UseAudioState>({});\n useEffect(() => {\n const t = setTimeout(async () => {\n const response = await fetch(audioUrl);\n const blob = await response.blob();\n const audio = new Audio();\n audio.src = URL.createObjectURL(blob);\n await new Promise<void>((resolve, reject) => {\n audio.addEventListener(\n 'error',\n (err) => {\n log.error('error', { err });\n reject(err);\n },\n { once: true },\n );\n audio.addEventListener(\n 'canplay',\n () => {\n log.info('starting...');\n resolve();\n },\n { once: true },\n );\n audio.load();\n });\n\n const ctx = new AudioContext();\n\n const destination = ctx.createMediaStreamDestination();\n destination.channelCount = 1;\n\n const source = ctx.createMediaElementSource(audio);\n source.connect(destination);\n\n setStream({\n audio,\n stream: destination.stream,\n track: destination.stream.getAudioTracks()[0],\n });\n });\n\n return () => clearTimeout(t);\n }, [audioUrl]);\n\n return { audio, stream, track };\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useEffect, useState } from 'react';\n\n/**\n *\n */\n// TODO(burdon): Reconcile with react-ui-sfx and plugin-calls.\nexport const useAudioTrack = (active?: boolean): MediaStreamTrack | undefined => {\n const [track, setTrack] = useState<MediaStreamTrack>();\n useEffect(() => {\n if (!active) {\n track?.stop();\n setTrack(undefined);\n return;\n }\n\n const initAudio = async () => {\n const audio = new Audio();\n audio.srcObject = await navigator.mediaDevices.getUserMedia({ audio: true });\n const [track] = audio.srcObject.getAudioTracks();\n if (track) {\n setTrack(track);\n }\n };\n\n if (active) {\n void initAudio();\n }\n }, [active]);\n\n return track;\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useEffect, useMemo } from 'react';\n\nimport { useCapabilities } from '@dxos/app-framework';\n\nimport { TranscriptionCapabilities } from '../capabilities';\nimport { type Transcriber } from '../transcriber';\n\n/**\n * Records audio while user is speaking and transcribes it after user is done speaking.\n */\nexport const useTranscriber = ({\n audioStreamTrack,\n onSegments,\n}: Partial<TranscriptionCapabilities.GetTranscriberProps>) => {\n const [getTranscriber] = useCapabilities(TranscriptionCapabilities.Transcriber);\n\n // Initialize audio transcription.\n const transcriber = useMemo<Transcriber | undefined>(() => {\n if (!onSegments || !audioStreamTrack || !getTranscriber) {\n return undefined;\n }\n\n return getTranscriber({ audioStreamTrack, onSegments });\n }, [audioStreamTrack, onSegments, getTranscriber]);\n\n useEffect(() => {\n return () => {\n void transcriber?.close();\n };\n }, [transcriber]);\n\n return transcriber;\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useState, useEffect, useCallback } from 'react';\n\nimport { scheduleMicroTask } from '@dxos/async';\nimport { Context } from '@dxos/context';\nimport { log } from '@dxos/log';\nimport { useSoundEffect } from '@dxos/react-ui-sfx';\n\nimport { useAudioTrack } from './useAudioTrack';\nimport { useTranscriber } from './useTranscriber';\nimport { type TranscriberParams } from '../transcriber';\n\nexport type UseVoiceInputProps = {\n active?: boolean;\n onUpdate: (text: string) => void;\n};\n\n/**\n * Hook for voice input.\n */\nexport const useVoiceInput = ({ active, onUpdate }: UseVoiceInputProps) => {\n const soundStart = useSoundEffect('StartRecording');\n const soundStop = useSoundEffect('StopRecording');\n\n const handleSegments = useCallback<TranscriberParams['onSegments']>(async (segments) => {\n const text = segments.map((str) => str.text.trim().replace(/[^\\w\\s]/g, '')).join(' ');\n onUpdate(text);\n }, []);\n\n // Audio/transcription.\n const [recording, setRecording] = useState(false);\n const track = useAudioTrack(active);\n const transcriber = useTranscriber({\n audioStreamTrack: track,\n onSegments: handleSegments,\n });\n\n // Start/stop transcription.\n useEffect(() => {\n const ctx = new Context();\n scheduleMicroTask(ctx, async () => {\n if (active && transcriber) {\n await transcriber.open();\n log.info('starting...');\n setRecording(true);\n void soundStart.play();\n transcriber.startChunksRecording();\n } else if (!active && transcriber?.isOpen) {\n transcriber?.stopChunksRecording();\n await transcriber?.close();\n log.info('stopped');\n setRecording(false);\n void soundStop.play();\n }\n });\n\n return () => {\n void ctx.dispose();\n };\n }, [active, transcriber]);\n\n return { recording };\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Capabilities, Events, contributes, defineModule, definePlugin } from '@dxos/app-framework';\nimport { QueueImpl } from '@dxos/echo-db';\nimport { isInstanceOf } from '@dxos/echo-schema';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\n\nimport { AppGraphBuilder, IntentResolver, MeetingTranscriptionState, ReactSurface, Transcriber } from './capabilities';\nimport { meta } from './meta';\nimport translations from './translations';\nimport { TranscriptBlock, TranscriptType } from './types';\n\nexport const TranscriptionPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/transcription`,\n activatesOn: Events.SetupAppGraph,\n activate: Transcriber,\n }),\n defineModule({\n id: `${meta.id}/module/meeting-transcription-state`,\n activatesOn: Events.SetupAppGraph,\n activate: MeetingTranscriptionState,\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: (context) =>\n contributes(Capabilities.Metadata, {\n id: TranscriptType.typename,\n metadata: {\n icon: 'ph--subtitles--regular',\n // TODO(wittjosiah): Factor out. Artifact? Separate capability?\n getTextContent: async (transcript: TranscriptType) => {\n const client = context.requestCapability(ClientCapabilities.Client);\n const queue = new QueueImpl(client.edge, transcript.queue.dxn);\n await queue.refresh();\n const content = queue.items\n .filter((block) => isInstanceOf(TranscriptBlock, block))\n .map((block) => `${block.authorName}: ${block.segments.map((segment) => segment.text).join('\\n')}`)\n .join('\\n\\n');\n return content;\n },\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => [contributes(ClientCapabilities.Schema, [TranscriptType])],\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/app-graph-builder`,\n activatesOn: Events.SetupAppGraph,\n activate: AppGraphBuilder,\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { TRANSCRIPTION_PLUGIN } from './meta';\nimport { TranscriptType } from './types';\n\nexport default [\n {\n 'en-US': {\n [TranscriptType.typename]: {\n 'typename label': 'Transcript',\n 'object name placeholder': 'New transcript',\n },\n [TRANSCRIPTION_PLUGIN]: {\n 'plugin name': 'Transcription',\n 'transcript companion label': 'Transcript',\n\n 'start transcription label': 'Start transcription',\n 'stop transcription label': 'Stop transcription',\n\n 'delete button': 'Delete',\n 'bookmark button': 'Bookmark',\n 'scroll to end label': 'Scroll to latest',\n },\n },\n },\n];\n"],
5
+ "mappings": "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",
6
+ "names": ["import_react", "import_app_framework", "import_log", "AppGraphBuilder", "lazy", "IntentResolver", "MeetingTranscriptionState", "ReactSurface", "Transcriber", "useAudioFile", "audioUrl", "audio", "stream", "track", "setStream", "useState", "useEffect", "t", "setTimeout", "response", "fetch", "blob", "Audio", "src", "URL", "createObjectURL", "Promise", "resolve", "reject", "addEventListener", "err", "log", "error", "once", "info", "load", "ctx", "AudioContext", "destination", "createMediaStreamDestination", "channelCount", "source", "createMediaElementSource", "connect", "getAudioTracks", "clearTimeout", "useAudioTrack", "active", "setTrack", "stop", "undefined", "initAudio", "srcObject", "navigator", "mediaDevices", "getUserMedia", "useTranscriber", "audioStreamTrack", "onSegments", "getTranscriber", "useCapabilities", "TranscriptionCapabilities", "transcriber", "useMemo", "close", "useVoiceInput", "onUpdate", "soundStart", "useSoundEffect", "soundStop", "handleSegments", "useCallback", "segments", "text", "map", "str", "trim", "replace", "join", "recording", "setRecording", "Context", "scheduleMicroTask", "open", "play", "startChunksRecording", "isOpen", "stopChunksRecording", "dispose", "TranscriptType", "typename", "TRANSCRIPTION_PLUGIN", "TranscriptionPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "SetupAppGraph", "SetupMetadata", "context", "Metadata", "metadata", "icon", "getTextContent", "transcript", "client", "requestCapability", "ClientCapabilities", "Client", "queue", "QueueImpl", "edge", "dxn", "refresh", "content", "items", "filter", "block", "isInstanceOf", "TranscriptBlock", "authorName", "segment", "ClientEvents", "SetupSchema", "Schema", "SetupReactSurface", "SetupIntentResolver"]
7
7
  }
@@ -16,24 +16,23 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var intent_resolver_TRBKI24D_exports = {};
20
- __export(intent_resolver_TRBKI24D_exports, {
19
+ var intent_resolver_WMMCOUEH_exports = {};
20
+ __export(intent_resolver_WMMCOUEH_exports, {
21
21
  default: () => intent_resolver_default
22
22
  });
23
- module.exports = __toCommonJS(intent_resolver_TRBKI24D_exports);
24
- var import_chunk_J72PUQ3C = require("./chunk-J72PUQ3C.cjs");
25
- var import_chunk_EJWB53WK = require("./chunk-EJWB53WK.cjs");
23
+ module.exports = __toCommonJS(intent_resolver_WMMCOUEH_exports);
24
+ var import_chunk_3KHUSQNW = require("./chunk-3KHUSQNW.cjs");
25
+ var import_chunk_P4VVD6ZO = require("./chunk-P4VVD6ZO.cjs");
26
26
  var import_chunk_NVZWGFJL = require("./chunk-NVZWGFJL.cjs");
27
27
  var import_app_framework = require("@dxos/app-framework");
28
- var import_echo_schema = require("@dxos/echo-schema");
29
28
  var import_live_object = require("@dxos/live-object");
30
29
  var intent_resolver_default = (context) => (0, import_app_framework.contributes)(import_app_framework.Capabilities.IntentResolver, [
31
30
  (0, import_app_framework.createResolver)({
32
- intent: import_chunk_EJWB53WK.TranscriptionAction.Create,
31
+ intent: import_chunk_P4VVD6ZO.TranscriptionAction.Create,
33
32
  resolve: ({ name, spaceId }) => {
34
- const transcript = (0, import_live_object.live)(import_chunk_EJWB53WK.TranscriptType, {
35
- queue: (0, import_live_object.refFromDXN)((0, import_echo_schema.createQueueDxn)(spaceId)),
36
- name: name ?? `Transcript ${(0, import_chunk_J72PUQ3C.getTimeStr)(Date.now())}`
33
+ const transcript = (0, import_live_object.create)(import_chunk_P4VVD6ZO.TranscriptType, {
34
+ queue: (0, import_live_object.refFromDXN)((0, import_chunk_3KHUSQNW.randomQueueDxn)(spaceId)),
35
+ name: name ?? `Transcript ${(0, import_chunk_3KHUSQNW.getTimeStr)(Date.now())}`
37
36
  });
38
37
  return {
39
38
  data: {
@@ -43,4 +42,4 @@ var intent_resolver_default = (context) => (0, import_app_framework.contributes)
43
42
  }
44
43
  })
45
44
  ]);
46
- //# sourceMappingURL=intent-resolver-TRBKI24D.cjs.map
45
+ //# sourceMappingURL=intent-resolver-WMMCOUEH.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createResolver, type PluginsContext } from '@dxos/app-framework';\nimport { create, refFromDXN } from '@dxos/live-object';\nimport { type SpaceId } from '@dxos/react-client/echo';\n\nimport { TranscriptionAction, TranscriptType } from '../types';\nimport { getTimeStr, randomQueueDxn } from '../util';\n\nexport default (context: PluginsContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: TranscriptionAction.Create,\n resolve: ({ name, spaceId }) => {\n const transcript = create(TranscriptType, {\n queue: refFromDXN(randomQueueDxn(spaceId as SpaceId)),\n name: name ?? `Transcript ${getTimeStr(Date.now())}`,\n });\n\n return { data: { object: transcript } };\n },\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAA+E;AAC/E,yBAAmC;AAMnC,IAAA,0BAAe,CAACA,gBACdC,kCAAYC,kCAAaC,gBAAgB;MACvCC,qCAAe;IACbC,QAAQC,0CAAoBC;IAC5BC,SAAS,CAAC,EAAEC,MAAMC,QAAO,MAAE;AACzB,YAAMC,iBAAaC,2BAAOC,sCAAgB;QACxCC,WAAOC,mCAAWC,sCAAeN,OAAAA,CAAAA;QACjCD,MAAMA,QAAQ,kBAAcQ,kCAAWC,KAAKC,IAAG,CAAA,CAAA;MACjD,CAAA;AAEA,aAAO;QAAEC,MAAM;UAAEC,QAAQV;QAAW;MAAE;IACxC;EACF,CAAA;CACD;",
6
+ "names": ["context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "TranscriptionAction", "Create", "resolve", "name", "spaceId", "transcript", "create", "TranscriptType", "queue", "refFromDXN", "randomQueueDxn", "getTimeStr", "Date", "now", "data", "object"]
7
+ }
@@ -16,19 +16,19 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var meeting_transcription_state_5XLTMWPA_exports = {};
20
- __export(meeting_transcription_state_5XLTMWPA_exports, {
19
+ var meeting_transcription_state_URIYILEQ_exports = {};
20
+ __export(meeting_transcription_state_URIYILEQ_exports, {
21
21
  default: () => meeting_transcription_state_default
22
22
  });
23
- module.exports = __toCommonJS(meeting_transcription_state_5XLTMWPA_exports);
24
- var import_chunk_JUGOXWES = require("./chunk-JUGOXWES.cjs");
23
+ module.exports = __toCommonJS(meeting_transcription_state_URIYILEQ_exports);
24
+ var import_chunk_CZMLKKWT = require("./chunk-CZMLKKWT.cjs");
25
25
  var import_chunk_NVZWGFJL = require("./chunk-NVZWGFJL.cjs");
26
26
  var import_app_framework = require("@dxos/app-framework");
27
27
  var import_live_object = require("@dxos/live-object");
28
28
  var meeting_transcription_state_default = () => {
29
- const state = (0, import_live_object.live)({
29
+ const state = (0, import_live_object.create)({
30
30
  enabled: false
31
31
  });
32
- return (0, import_app_framework.contributes)(import_chunk_JUGOXWES.TranscriptionCapabilities.MeetingTranscriptionState, state);
32
+ return (0, import_app_framework.contributes)(import_chunk_CZMLKKWT.TranscriptionCapabilities.MeetingTranscriptionState, state);
33
33
  };
34
- //# sourceMappingURL=meeting-transcription-state-5XLTMWPA.cjs.map
34
+ //# sourceMappingURL=meeting-transcription-state-URIYILEQ.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/meeting-transcription-state.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { contributes } from '@dxos/app-framework';\nimport { create } from '@dxos/live-object';\n\nimport { TranscriptionCapabilities } from './capabilities';\n\nexport default () => {\n const state = create<TranscriptionCapabilities.MeetingTranscriptionState>({\n enabled: false,\n });\n\n return contributes(TranscriptionCapabilities.MeetingTranscriptionState, state);\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAA4B;AAC5B,yBAAuB;AAIvB,IAAA,sCAAe,MAAA;AACb,QAAMA,YAAQC,2BAA4D;IACxEC,SAAS;EACX,CAAA;AAEA,aAAOC,kCAAYC,gDAA0BC,2BAA2BL,KAAAA;AAC1E;",
6
+ "names": ["state", "create", "enabled", "contributes", "TranscriptionCapabilities", "MeetingTranscriptionState"]
7
+ }