@dxos/plugin-transcription 0.8.1-main.ba2dec9 → 0.8.1-staging.31c3ee1

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 (174) hide show
  1. package/dist/lib/browser/{TranscriptContainer-N4KQHMY4.mjs → TranscriptContainer-JQ3HFHLQ.mjs} +3 -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-6ZR5MDK3.mjs +19 -0
  5. package/dist/lib/browser/chunk-6ZR5MDK3.mjs.map +7 -0
  6. package/dist/lib/browser/chunk-G4B6CPC2.mjs +253 -0
  7. package/dist/lib/browser/chunk-G4B6CPC2.mjs.map +7 -0
  8. package/dist/lib/browser/{chunk-GHTRJTEB.mjs → chunk-GU2BNYKZ.mjs} +6 -6
  9. package/dist/lib/browser/chunk-GU2BNYKZ.mjs.map +7 -0
  10. package/dist/lib/browser/chunk-K7FOYAXO.mjs +8 -0
  11. package/dist/lib/browser/{chunk-QIHUPVQD.mjs → chunk-OGNXNGJB.mjs} +21 -28
  12. package/dist/lib/browser/chunk-OGNXNGJB.mjs.map +7 -0
  13. package/dist/lib/browser/chunk-YCZISX63.mjs +464 -0
  14. package/dist/lib/browser/chunk-YCZISX63.mjs.map +7 -0
  15. package/dist/lib/browser/chunk-YEPT334A.mjs +16 -0
  16. package/dist/lib/browser/chunk-YEPT334A.mjs.map +7 -0
  17. package/dist/lib/browser/index.mjs +69 -512
  18. package/dist/lib/browser/index.mjs.map +4 -4
  19. package/dist/lib/browser/{intent-resolver-RW6DEJC2.mjs → intent-resolver-4R66ZCKT.mjs} +8 -7
  20. package/dist/lib/browser/intent-resolver-4R66ZCKT.mjs.map +7 -0
  21. package/dist/lib/browser/meeting-transcription-state-DLFHQK72.mjs +18 -0
  22. package/dist/lib/browser/meeting-transcription-state-DLFHQK72.mjs.map +7 -0
  23. package/dist/lib/browser/meta.json +1 -1
  24. package/dist/lib/browser/{react-surface-UPTZBHVB.mjs → react-surface-FQUHU5G7.mjs} +15 -9
  25. package/dist/lib/{node-esm/react-surface-2WJQ67LB.mjs.map → browser/react-surface-FQUHU5G7.mjs.map} +2 -2
  26. package/dist/lib/browser/transcriber-LGMIWDYI.mjs +36 -0
  27. package/dist/lib/browser/transcriber-LGMIWDYI.mjs.map +7 -0
  28. package/dist/lib/browser/types/index.mjs +2 -1
  29. package/dist/lib/node/{TranscriptContainer-4BWXOVML.cjs → TranscriptContainer-QEYTTT2V.cjs} +8 -8
  30. package/dist/lib/node/{TranscriptContainer-4BWXOVML.cjs.map → TranscriptContainer-QEYTTT2V.cjs.map} +2 -2
  31. package/dist/lib/node/app-graph-builder-IFSIVNUR.cjs +200 -0
  32. package/dist/lib/node/app-graph-builder-IFSIVNUR.cjs.map +7 -0
  33. package/dist/lib/node/{chunk-HDRXDMK2.cjs → chunk-3KHUSQNW.cjs} +6 -6
  34. package/dist/lib/node/chunk-3KHUSQNW.cjs.map +7 -0
  35. package/dist/lib/node/chunk-CZMLKKWT.cjs +35 -0
  36. package/dist/lib/node/chunk-CZMLKKWT.cjs.map +7 -0
  37. package/dist/lib/node/chunk-FCCJALOT.cjs +488 -0
  38. package/dist/lib/node/chunk-FCCJALOT.cjs.map +7 -0
  39. package/dist/lib/node/{chunk-I35KHI2G.cjs → chunk-LP4FG423.cjs} +5 -5
  40. package/dist/lib/node/chunk-NVZWGFJL.cjs +42 -0
  41. package/dist/lib/node/chunk-NVZWGFJL.cjs.map +7 -0
  42. package/dist/lib/node/{chunk-UIHEGU6Q.cjs → chunk-P4VVD6ZO.cjs} +21 -29
  43. package/dist/lib/node/chunk-P4VVD6ZO.cjs.map +7 -0
  44. package/dist/lib/node/chunk-UOFHT4GZ.cjs +280 -0
  45. package/dist/lib/node/chunk-UOFHT4GZ.cjs.map +7 -0
  46. package/dist/lib/node/index.cjs +75 -513
  47. package/dist/lib/node/index.cjs.map +4 -4
  48. package/dist/lib/node/{intent-resolver-KLBZ25XJ.cjs → intent-resolver-WMMCOUEH.cjs} +12 -11
  49. package/dist/lib/node/intent-resolver-WMMCOUEH.cjs.map +7 -0
  50. package/dist/lib/node/{app-graph-builder-YFBX3OTP.cjs → meeting-transcription-state-URIYILEQ.cjs} +14 -6
  51. package/dist/lib/node/meeting-transcription-state-URIYILEQ.cjs.map +7 -0
  52. package/dist/lib/node/meta.json +1 -1
  53. package/dist/lib/node/{react-surface-NCKXB7EQ.cjs → react-surface-WI2MGWCC.cjs} +17 -12
  54. package/dist/lib/node/{react-surface-NCKXB7EQ.cjs.map → react-surface-WI2MGWCC.cjs.map} +2 -2
  55. package/dist/lib/node/transcriber-QG5WPKX4.cjs +49 -0
  56. package/dist/lib/node/transcriber-QG5WPKX4.cjs.map +7 -0
  57. package/dist/lib/node/types/index.cjs +8 -7
  58. package/dist/lib/node/types/index.cjs.map +2 -2
  59. package/dist/lib/node-esm/{TranscriptContainer-6IKRASR6.mjs → TranscriptContainer-ZXUCOWGY.mjs} +3 -3
  60. package/dist/lib/node-esm/app-graph-builder-UL6XLIZY.mjs +192 -0
  61. package/dist/lib/node-esm/app-graph-builder-UL6XLIZY.mjs.map +7 -0
  62. package/dist/lib/node-esm/chunk-6X7X2UZF.mjs +254 -0
  63. package/dist/lib/node-esm/chunk-6X7X2UZF.mjs.map +7 -0
  64. package/dist/lib/node-esm/{chunk-KEG3ME4O.mjs → chunk-GIO6J6FE.mjs} +20 -28
  65. package/dist/lib/node-esm/chunk-GIO6J6FE.mjs.map +7 -0
  66. package/dist/lib/node-esm/{chunk-LORUIVS4.mjs → chunk-HKATMD34.mjs} +6 -6
  67. package/dist/lib/node-esm/chunk-HKATMD34.mjs.map +7 -0
  68. package/dist/lib/node-esm/{chunk-2CPKXRN6.mjs → chunk-J4D2RBBH.mjs} +3 -3
  69. package/dist/lib/node-esm/chunk-PTZHDZ36.mjs +17 -0
  70. package/dist/lib/node-esm/chunk-PTZHDZ36.mjs.map +7 -0
  71. package/dist/lib/node-esm/chunk-X4DDJIVL.mjs +21 -0
  72. package/dist/lib/node-esm/chunk-X4DDJIVL.mjs.map +7 -0
  73. package/dist/lib/node-esm/chunk-YQYBLFNI.mjs +465 -0
  74. package/dist/lib/node-esm/chunk-YQYBLFNI.mjs.map +7 -0
  75. package/dist/lib/node-esm/index.mjs +69 -512
  76. package/dist/lib/node-esm/index.mjs.map +4 -4
  77. package/dist/lib/node-esm/{intent-resolver-4FMISUPW.mjs → intent-resolver-QN2LO5TX.mjs} +8 -7
  78. package/dist/lib/node-esm/intent-resolver-QN2LO5TX.mjs.map +7 -0
  79. package/dist/lib/node-esm/meeting-transcription-state-ZYVRAW6Y.mjs +19 -0
  80. package/dist/lib/node-esm/meeting-transcription-state-ZYVRAW6Y.mjs.map +7 -0
  81. package/dist/lib/node-esm/meta.json +1 -1
  82. package/dist/lib/node-esm/{react-surface-2WJQ67LB.mjs → react-surface-PCH6NTVB.mjs} +15 -9
  83. package/dist/lib/{browser/react-surface-UPTZBHVB.mjs.map → node-esm/react-surface-PCH6NTVB.mjs.map} +2 -2
  84. package/dist/lib/node-esm/transcriber-TMPYZ5L4.mjs +37 -0
  85. package/dist/lib/node-esm/transcriber-TMPYZ5L4.mjs.map +7 -0
  86. package/dist/lib/node-esm/types/index.mjs +2 -1
  87. package/dist/types/src/TranscriptionPlugin.d.ts.map +1 -1
  88. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -0
  89. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  90. package/dist/types/src/capabilities/capabilities.d.ts +16 -1
  91. package/dist/types/src/capabilities/capabilities.d.ts.map +1 -1
  92. package/dist/types/src/capabilities/index.d.ts +5 -0
  93. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  94. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  95. package/dist/types/src/capabilities/meeting-transcription-state.d.ts +6 -0
  96. package/dist/types/src/capabilities/meeting-transcription-state.d.ts.map +1 -0
  97. package/dist/types/src/capabilities/transcriber.d.ts +7 -0
  98. package/dist/types/src/capabilities/transcriber.d.ts.map +1 -0
  99. package/dist/types/src/components/Transcript/Transcript.d.ts +5 -2
  100. package/dist/types/src/components/Transcript/Transcript.d.ts.map +1 -1
  101. package/dist/types/src/components/Transcript/Transcript.stories.d.ts.map +1 -1
  102. package/dist/types/src/components/TranscriptContainer.d.ts +1 -0
  103. package/dist/types/src/components/TranscriptContainer.d.ts.map +1 -1
  104. package/dist/types/src/components/index.d.ts +1 -0
  105. package/dist/types/src/components/index.d.ts.map +1 -1
  106. package/dist/types/src/components/transcription.stories.d.ts +1 -1
  107. package/dist/types/src/components/transcription.stories.d.ts.map +1 -1
  108. package/dist/types/src/hooks/useTranscriber.d.ts +3 -6
  109. package/dist/types/src/hooks/useTranscriber.d.ts.map +1 -1
  110. package/dist/types/src/index.d.ts +1 -2
  111. package/dist/types/src/index.d.ts.map +1 -1
  112. package/dist/types/src/meta.d.ts +2 -9
  113. package/dist/types/src/meta.d.ts.map +1 -1
  114. package/dist/types/src/transcriber/index.d.ts +1 -0
  115. package/dist/types/src/transcriber/index.d.ts.map +1 -1
  116. package/dist/types/src/{transcription-manager.d.ts → transcriber/transcription-manager.d.ts} +5 -2
  117. package/dist/types/src/transcriber/transcription-manager.d.ts.map +1 -0
  118. package/dist/types/src/translations.d.ts +14 -18
  119. package/dist/types/src/translations.d.ts.map +1 -1
  120. package/dist/types/src/types/schema.d.ts +13 -19
  121. package/dist/types/src/types/schema.d.ts.map +1 -1
  122. package/dist/types/src/types/types.d.ts +2 -6
  123. package/dist/types/src/types/types.d.ts.map +1 -1
  124. package/dist/types/src/util/random-queue-dxn.d.ts +2 -2
  125. package/dist/types/src/util/random-queue-dxn.d.ts.map +1 -1
  126. package/package.json +40 -36
  127. package/src/TranscriptionPlugin.tsx +24 -7
  128. package/src/capabilities/app-graph-builder.ts +147 -2
  129. package/src/capabilities/capabilities.ts +16 -2
  130. package/src/capabilities/index.ts +2 -0
  131. package/src/capabilities/intent-resolver.ts +4 -3
  132. package/src/capabilities/meeting-transcription-state.ts +16 -0
  133. package/src/capabilities/react-surface.tsx +3 -3
  134. package/src/capabilities/transcriber.ts +48 -0
  135. package/src/components/Transcript/Transcript.stories.tsx +46 -27
  136. package/src/components/Transcript/Transcript.tsx +206 -50
  137. package/src/components/TranscriptContainer.tsx +9 -147
  138. package/src/components/transcription.stories.tsx +11 -13
  139. package/src/hooks/useTranscriber.ts +12 -37
  140. package/src/index.ts +2 -2
  141. package/src/meta.ts +2 -2
  142. package/src/transcriber/index.ts +1 -0
  143. package/src/{transcription-manager.ts → transcriber/transcription-manager.ts} +16 -5
  144. package/src/translations.ts +6 -6
  145. package/src/types/schema.ts +7 -5
  146. package/src/types/types.ts +4 -2
  147. package/src/util/random-queue-dxn.ts +2 -2
  148. package/dist/lib/browser/app-graph-builder-ZSSJIFY7.mjs +0 -7
  149. package/dist/lib/browser/app-graph-builder-ZSSJIFY7.mjs.map +0 -7
  150. package/dist/lib/browser/chunk-BDVUIRBP.mjs +0 -8
  151. package/dist/lib/browser/chunk-GHTRJTEB.mjs.map +0 -7
  152. package/dist/lib/browser/chunk-QIHUPVQD.mjs.map +0 -7
  153. package/dist/lib/browser/chunk-YX447BJ4.mjs +0 -241
  154. package/dist/lib/browser/chunk-YX447BJ4.mjs.map +0 -7
  155. package/dist/lib/browser/intent-resolver-RW6DEJC2.mjs.map +0 -7
  156. package/dist/lib/node/app-graph-builder-YFBX3OTP.cjs.map +0 -7
  157. package/dist/lib/node/chunk-ANSWGFMS.cjs +0 -267
  158. package/dist/lib/node/chunk-ANSWGFMS.cjs.map +0 -7
  159. package/dist/lib/node/chunk-HDRXDMK2.cjs.map +0 -7
  160. package/dist/lib/node/chunk-UIHEGU6Q.cjs.map +0 -7
  161. package/dist/lib/node/intent-resolver-KLBZ25XJ.cjs.map +0 -7
  162. package/dist/lib/node-esm/app-graph-builder-77GQG6UF.mjs +0 -9
  163. package/dist/lib/node-esm/app-graph-builder-77GQG6UF.mjs.map +0 -7
  164. package/dist/lib/node-esm/chunk-KEG3ME4O.mjs.map +0 -7
  165. package/dist/lib/node-esm/chunk-LORUIVS4.mjs.map +0 -7
  166. package/dist/lib/node-esm/chunk-ZMK2QLW2.mjs +0 -242
  167. package/dist/lib/node-esm/chunk-ZMK2QLW2.mjs.map +0 -7
  168. package/dist/lib/node-esm/intent-resolver-4FMISUPW.mjs.map +0 -7
  169. package/dist/types/src/transcription-manager.d.ts.map +0 -1
  170. /package/dist/lib/browser/{TranscriptContainer-N4KQHMY4.mjs.map → TranscriptContainer-JQ3HFHLQ.mjs.map} +0 -0
  171. /package/dist/lib/browser/{chunk-BDVUIRBP.mjs.map → chunk-K7FOYAXO.mjs.map} +0 -0
  172. /package/dist/lib/node/{chunk-I35KHI2G.cjs.map → chunk-LP4FG423.cjs.map} +0 -0
  173. /package/dist/lib/node-esm/{TranscriptContainer-6IKRASR6.mjs.map → TranscriptContainer-ZXUCOWGY.mjs.map} +0 -0
  174. /package/dist/lib/node-esm/{chunk-2CPKXRN6.mjs.map → chunk-J4D2RBBH.mjs.map} +0 -0
@@ -28,67 +28,50 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
28
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
29
  var node_exports = {};
30
30
  __export(node_exports, {
31
- AppGraphBuilder: () => AppGraphBuilder,
32
- IntentResolver: () => IntentResolver,
33
- MediaStreamRecorder: () => MediaStreamRecorder,
34
- ReactSurface: () => ReactSurface,
35
- TRANSCRIPTION_PLUGIN: () => import_chunk_UIHEGU6Q.TRANSCRIPTION_PLUGIN,
36
- Transcriber: () => Transcriber,
37
- Transcript: () => import_chunk_ANSWGFMS.Transcript,
38
- TranscriptContainer: () => import_chunk_I35KHI2G.TranscriptContainer,
39
- TranscriptionCapabilities: () => TranscriptionCapabilities,
40
- TranscriptionContainer: () => import_chunk_ANSWGFMS.TranscriptionContainer,
41
- TranscriptionManager: () => TranscriptionManager,
31
+ MediaStreamRecorder: () => import_chunk_FCCJALOT.MediaStreamRecorder,
32
+ TRANSCRIPTION_PLUGIN: () => import_chunk_NVZWGFJL.TRANSCRIPTION_PLUGIN,
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,
42
39
  TranscriptionPlugin: () => TranscriptionPlugin,
43
- meta: () => import_chunk_UIHEGU6Q.meta,
40
+ meta: () => import_chunk_NVZWGFJL.meta,
44
41
  useAudioFile: () => useAudioFile,
45
42
  useAudioTrack: () => useAudioTrack,
46
43
  useTranscriber: () => useTranscriber,
47
44
  useVoiceInput: () => useVoiceInput
48
45
  });
49
46
  module.exports = __toCommonJS(node_exports);
50
- var import_chunk_HDRXDMK2 = require("./chunk-HDRXDMK2.cjs");
51
- var import_chunk_I35KHI2G = require("./chunk-I35KHI2G.cjs");
52
- var import_chunk_ANSWGFMS = require("./chunk-ANSWGFMS.cjs");
53
- var import_chunk_UIHEGU6Q = require("./chunk-UIHEGU6Q.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");
53
+ var import_chunk_NVZWGFJL = require("./chunk-NVZWGFJL.cjs");
54
54
  var import_app_framework = require("@dxos/app-framework");
55
- var import_app_framework2 = require("@dxos/app-framework");
56
55
  var import_react = require("react");
57
56
  var import_log = require("@dxos/log");
58
57
  var import_react2 = require("react");
59
58
  var import_react3 = require("react");
60
- var import_extendable_media_recorder = require("extendable-media-recorder");
61
- var import_wavefile = require("wavefile");
59
+ var import_app_framework2 = require("@dxos/app-framework");
60
+ var import_react4 = require("react");
62
61
  var import_async = require("@dxos/async");
63
- var import_invariant = require("@dxos/invariant");
64
- var import_log2 = require("@dxos/log");
65
- var import_tracing = require("@dxos/tracing");
66
- var import_wavefile2 = require("wavefile");
67
- var import_async2 = require("@dxos/async");
68
62
  var import_context = require("@dxos/context");
69
- var import_log3 = require("@dxos/log");
70
- var import_tracing2 = require("@dxos/tracing");
71
- var import_react4 = require("react");
72
- var import_async3 = require("@dxos/async");
73
- var import_context2 = require("@dxos/context");
74
- var import_log4 = require("@dxos/log");
63
+ var import_log2 = require("@dxos/log");
75
64
  var import_react_ui_sfx = require("@dxos/react-ui-sfx");
76
- var import_async4 = require("@dxos/async");
77
- var import_context3 = require("@dxos/context");
65
+ var import_app_framework3 = require("@dxos/app-framework");
78
66
  var import_echo_db = require("@dxos/echo-db");
79
67
  var import_echo_schema = require("@dxos/echo-schema");
80
- var import_invariant2 = require("@dxos/invariant");
81
- var import_keys = require("@dxos/keys");
82
- var import_app_framework3 = require("@dxos/app-framework");
83
68
  var import_plugin_client = require("@dxos/plugin-client");
84
- var TranscriptionCapabilities;
85
- (function(TranscriptionCapabilities2) {
86
- TranscriptionCapabilities2.Transcription = (0, import_app_framework2.defineCapability)(`${import_chunk_UIHEGU6Q.TRANSCRIPTION_PLUGIN}/capability/transcription`);
87
- })(TranscriptionCapabilities || (TranscriptionCapabilities = {}));
88
- var AppGraphBuilder = (0, import_app_framework.lazy)(() => import("./app-graph-builder-YFBX3OTP.cjs"));
89
- var IntentResolver = (0, import_app_framework.lazy)(() => import("./intent-resolver-KLBZ25XJ.cjs"));
90
- var ReactSurface = (0, import_app_framework.lazy)(() => import("./react-surface-NCKXB7EQ.cjs"));
91
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-transcription/src/hooks/useAudioFile.ts";
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";
92
75
  var useAudioFile = (audioUrl) => {
93
76
  const [{ audio, stream, track }, setStream] = (0, import_react.useState)({});
94
77
  (0, import_react.useEffect)(() => {
@@ -171,291 +154,20 @@ var useAudioTrack = (active) => {
171
154
  ]);
172
155
  return track;
173
156
  };
174
- function _ts_decorate(decorators, target, key, desc) {
175
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
176
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
177
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
178
- return c > 3 && r && Object.defineProperty(target, key, r), r;
179
- }
180
- var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-transcription/src/transcriber/media-stream-recorder.ts";
181
- var initializingPromise;
182
- var initializeExtendableMediaRecorder = async () => {
183
- const { connect } = await import("extendable-media-recorder-wav-encoder");
184
- await (0, import_extendable_media_recorder.register)(await connect());
185
- };
186
- var MediaStreamRecorder = class {
187
- constructor({ mediaStreamTrack, interval }) {
188
- this._mediaRecorder = void 0;
189
- this._header = void 0;
190
- this._mediaStreamTrack = mediaStreamTrack;
191
- this._interval = interval;
192
- }
193
- get wavConfig() {
194
- const settings = this._mediaStreamTrack.getSettings();
195
- return {
196
- channels: settings.channelCount ?? 1,
197
- sampleRate: settings.sampleRate ?? 16e3,
198
- bitDepthCode: settings.sampleSize ? String(settings.sampleSize) : "16"
199
- };
200
- }
201
- get mediaStreamTrack() {
202
- return this._mediaStreamTrack;
203
- }
204
- setOnChunk(onChunk) {
205
- this._onChunk = onChunk;
206
- }
207
- async start() {
208
- await (initializingPromise ??= initializeExtendableMediaRecorder()).catch((err) => import_log2.log.info("initializeExtendableMediaRecorder", {
209
- err
210
- }, {
211
- F: __dxlog_file2,
212
- L: 62,
213
- S: this,
214
- C: (f, a) => f(...a)
215
- }));
216
- if (!this._mediaRecorder) {
217
- const stream = new MediaStream([
218
- this._mediaStreamTrack
219
- ]);
220
- this._mediaRecorder = new import_extendable_media_recorder.MediaRecorder(stream, {
221
- mimeType: "audio/wav"
222
- });
223
- }
224
- if (this._mediaRecorder.state === "recording") {
225
- return;
226
- }
227
- (0, import_invariant.invariant)(this._onChunk, "MediaStreamRecorder: onChunk is not set", {
228
- F: __dxlog_file2,
229
- L: 73,
230
- S: this,
231
- A: [
232
- "this._onChunk",
233
- "'MediaStreamRecorder: onChunk is not set'"
234
- ]
235
- });
236
- this._mediaRecorder.ondataavailable = (event) => this._ondataavailable(event);
237
- this._mediaRecorder.start(this._interval);
238
- }
239
- async stop() {
240
- if (this._mediaRecorder?.state !== "recording") {
241
- return;
242
- }
243
- this._mediaRecorder.stop();
244
- }
245
- async _ondataavailable(event) {
246
- const blob = event.data;
247
- const uint8Array = new Uint8Array(await blob.arrayBuffer());
248
- const isHeader = uint8Array[0] === 82 && // R
249
- uint8Array[1] === 73 && // I
250
- uint8Array[2] === 70 && // F
251
- uint8Array[3] === 70;
252
- let wav;
253
- if (isHeader) {
254
- wav = new import_wavefile.WaveFile(uint8Array);
255
- this._header = uint8Array.slice(0, 44);
256
- } else if (this._header) {
257
- wav = new import_wavefile.WaveFile(new Uint8Array([
258
- ...this._header,
259
- ...uint8Array
260
- ]));
261
- } else {
262
- import_log2.log.warn("MediaStreamRecorder: no header", void 0, {
263
- F: __dxlog_file2,
264
- L: 104,
265
- S: this,
266
- C: (f, a) => f(...a)
267
- });
268
- return;
269
- }
270
- this._onChunk({
271
- timestamp: Date.now(),
272
- data: wav.getSamples()
273
- });
274
- }
275
- };
276
- _ts_decorate([
277
- import_async.synchronized
278
- ], MediaStreamRecorder.prototype, "_ondataavailable", null);
279
- MediaStreamRecorder = _ts_decorate([
280
- import_tracing.trace.resource()
281
- ], MediaStreamRecorder);
282
- function _ts_decorate2(decorators, target, key, desc) {
283
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
284
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
285
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
286
- return c > 3 && r && Object.defineProperty(target, key, r), r;
287
- }
288
- var __dxlog_file3 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-transcription/src/transcriber/transcriber.ts";
289
- var Transcriber = class extends import_context.Resource {
290
- constructor({ config, recorder, onSegments }) {
291
- super();
292
- this._audioChunks = [];
293
- this._lastUsedTimestamp = 0;
294
- this._openTrigger = new import_async2.Trigger({
295
- autoReset: true
296
- });
297
- this._recording = false;
298
- this._transcribeTask = void 0;
299
- this._config = config;
300
- this._recorder = recorder;
301
- this._onSegments = onSegments;
302
- }
303
- async _open(ctx) {
304
- this._recorder.setOnChunk((chunk) => this._saveAudioChunk(chunk));
305
- await this._recorder.start();
306
- this._transcribeTask = new import_async2.DeferredTask(ctx, async () => this._transcribe());
307
- this._openTrigger.wake();
308
- }
309
- async _close() {
310
- this._recording = false;
311
- this._transcribeTask = void 0;
312
- await this._recorder.stop();
313
- }
314
- startChunksRecording() {
315
- if (this._lifecycleState !== import_context.LifecycleState.OPEN) {
316
- return;
317
- }
318
- this._recording = true;
319
- }
320
- stopChunksRecording() {
321
- if (this._lifecycleState !== import_context.LifecycleState.OPEN || !this._recording) {
322
- return;
323
- }
324
- this._recording = false;
325
- this._transcribeTask?.schedule();
326
- }
327
- _saveAudioChunk(chunk) {
328
- (0, import_log3.log)("saving audio chunk", {
329
- chunk
330
- }, {
331
- F: __dxlog_file3,
332
- L: 124,
333
- S: this,
334
- C: (f, a) => f(...a)
335
- });
336
- this._audioChunks.push(chunk);
337
- if (!this._recording && (!this._transcribeTask || !this._transcribeTask.scheduled) && this._audioChunks.length >= this._config.prefixBufferChunksAmount) {
338
- this._audioChunks = this._dropOldChunks();
339
- } else if (this._audioChunks.length >= this._config.transcribeAfterChunksAmount && this._recording) {
340
- this._transcribeTask?.schedule();
341
- }
342
- }
343
- async _transcribe() {
344
- (0, import_log3.log)("transcribing", {
345
- chunks: this._audioChunks.length
346
- }, {
347
- F: __dxlog_file3,
348
- L: 140,
349
- S: this,
350
- C: (f, a) => f(...a)
351
- });
352
- const chunks = this._audioChunks;
353
- this._audioChunks = this._dropOldChunks();
354
- if (chunks.length === 0) {
355
- return;
356
- }
357
- const audio = await this._mergeAudioChunks(chunks);
358
- const segments = await this._fetchTranscription(audio);
359
- if (!Array.isArray(segments) || segments.length === 0) {
360
- return;
361
- }
362
- const alignedSegments = this._alignSegments(segments, chunks);
363
- if (alignedSegments.length > 0) {
364
- await this._onSegments(alignedSegments);
365
- }
366
- }
367
- _dropOldChunks() {
368
- return this._config.prefixBufferChunksAmount > 0 ? this._audioChunks.slice(-this._config.prefixBufferChunksAmount) : [];
369
- }
370
- async _mergeAudioChunks(chunks) {
371
- const file = new import_wavefile2.WaveFile();
372
- const wavConfig = this._recorder.wavConfig;
373
- file.fromScratch(wavConfig.channels, wavConfig.sampleRate, wavConfig.bitDepthCode, (0, import_chunk_HDRXDMK2.mergeFloat64Arrays)(chunks.map(({ data }) => data)));
374
- return file.toBase64();
375
- }
376
- async _fetchTranscription(audio) {
377
- if (audio.length === 0) {
378
- this._audioChunks = [];
379
- throw new Error("No audio to send for transcribing");
380
- }
381
- const response = await fetch(`${import_chunk_UIHEGU6Q.TRANSCRIPTION_URL}/transcribe`, {
382
- method: "POST",
383
- body: JSON.stringify({
384
- audio
385
- }),
386
- headers: {
387
- "Content-Type": "application/json"
388
- }
389
- });
390
- if (!response.ok) {
391
- this._audioChunks = [];
392
- throw new Error("Failed to transcribe");
393
- }
394
- const { segments } = await response.json();
395
- import_log3.log.info("transcription response", {
396
- segments,
397
- string: segments.map((segments2) => segments2.text).join(" ")
398
- }, {
399
- F: __dxlog_file3,
400
- L: 206,
401
- S: this,
402
- C: (f, a) => f(...a)
403
- });
404
- return segments;
405
- }
406
- _alignSegments(segments, originalChunks) {
407
- const zeroTimestamp = originalChunks.at(0).timestamp;
408
- const filteredSegments = segments.filter((segment) => zeroTimestamp + segment.end * 1e3 >= this._lastUsedTimestamp).map((segment) => {
409
- const words = segment.words.filter((word) => zeroTimestamp + word.start * 1e3 >= this._lastUsedTimestamp);
410
- return {
411
- ...segment,
412
- words,
413
- text: words.map((word) => word.word).join(""),
414
- start: words.at(0)?.start ?? segment.end
415
- };
416
- }).filter((segment) => segment.words.length > 0);
417
- if (filteredSegments.length === 0) {
418
- return [];
419
- }
420
- this._lastUsedTimestamp = zeroTimestamp + filteredSegments.at(-1).end * 1e3;
421
- return filteredSegments.map((segment) => ({
422
- started: new Date(zeroTimestamp + segment.start * 1e3),
423
- text: segment.text
424
- }));
425
- }
426
- };
427
- _ts_decorate2([
428
- import_tracing2.trace.span({
429
- showInBrowserTimeline: true
430
- })
431
- ], Transcriber.prototype, "_mergeAudioChunks", null);
432
- _ts_decorate2([
433
- import_tracing2.trace.span({
434
- showInBrowserTimeline: true
435
- })
436
- ], Transcriber.prototype, "_fetchTranscription", null);
437
- var RECORD_INTERVAL = 200;
438
- var PREFIXED_CHUNKS_AMOUNT = 10;
439
- var TRANSCRIBE_AFTER_CHUNKS_AMOUNT = 50;
440
157
  var useTranscriber = ({ audioStreamTrack, onSegments }) => {
158
+ const [getTranscriber] = (0, import_app_framework2.useCapabilities)(import_chunk_CZMLKKWT.TranscriptionCapabilities.Transcriber);
441
159
  const transcriber = (0, import_react3.useMemo)(() => {
442
- if (!onSegments || !audioStreamTrack) {
160
+ if (!onSegments || !audioStreamTrack || !getTranscriber) {
443
161
  return void 0;
444
162
  }
445
- return new Transcriber({
446
- config: {
447
- transcribeAfterChunksAmount: TRANSCRIBE_AFTER_CHUNKS_AMOUNT,
448
- prefixBufferChunksAmount: PREFIXED_CHUNKS_AMOUNT
449
- },
450
- recorder: new MediaStreamRecorder({
451
- mediaStreamTrack: audioStreamTrack,
452
- interval: RECORD_INTERVAL
453
- }),
163
+ return getTranscriber({
164
+ audioStreamTrack,
454
165
  onSegments
455
166
  });
456
167
  }, [
457
168
  audioStreamTrack,
458
- onSegments
169
+ onSegments,
170
+ getTranscriber
459
171
  ]);
460
172
  (0, import_react3.useEffect)(() => {
461
173
  return () => {
@@ -466,7 +178,7 @@ var useTranscriber = ({ audioStreamTrack, onSegments }) => {
466
178
  ]);
467
179
  return transcriber;
468
180
  };
469
- var __dxlog_file4 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-transcription/src/hooks/useVoiceInput.ts";
181
+ var __dxlog_file2 = "/home/runner/work/dxos/dxos/packages/plugins/plugin-transcription/src/hooks/useVoiceInput.ts";
470
182
  var useVoiceInput = ({ active, onUpdate }) => {
471
183
  const soundStart = (0, import_react_ui_sfx.useSoundEffect)("StartRecording");
472
184
  const soundStop = (0, import_react_ui_sfx.useSoundEffect)("StopRecording");
@@ -481,15 +193,15 @@ var useVoiceInput = ({ active, onUpdate }) => {
481
193
  onSegments: handleSegments
482
194
  });
483
195
  (0, import_react4.useEffect)(() => {
484
- const ctx = new import_context2.Context(void 0, {
485
- F: __dxlog_file4,
196
+ const ctx = new import_context.Context(void 0, {
197
+ F: __dxlog_file2,
486
198
  L: 43
487
199
  });
488
- (0, import_async3.scheduleMicroTask)(ctx, async () => {
200
+ (0, import_async.scheduleMicroTask)(ctx, async () => {
489
201
  if (active && transcriber) {
490
202
  await transcriber.open();
491
- import_log4.log.info("starting...", void 0, {
492
- F: __dxlog_file4,
203
+ import_log2.log.info("starting...", void 0, {
204
+ F: __dxlog_file2,
493
205
  L: 47,
494
206
  S: void 0,
495
207
  C: (f, a) => f(...a)
@@ -500,8 +212,8 @@ var useVoiceInput = ({ active, onUpdate }) => {
500
212
  } else if (!active && transcriber?.isOpen) {
501
213
  transcriber?.stopChunksRecording();
502
214
  await transcriber?.close();
503
- import_log4.log.info("stopped", void 0, {
504
- F: __dxlog_file4,
215
+ import_log2.log.info("stopped", void 0, {
216
+ F: __dxlog_file2,
505
217
  L: 54,
506
218
  S: void 0,
507
219
  C: (f, a) => f(...a)
@@ -521,237 +233,87 @@ var useVoiceInput = ({ active, onUpdate }) => {
521
233
  recording
522
234
  };
523
235
  };
524
- function _ts_decorate3(decorators, target, key, desc) {
525
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
526
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
527
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
528
- return c > 3 && r && Object.defineProperty(target, key, r), r;
529
- }
530
- var __dxlog_file5 = "/home/runner/work/dxos/dxos/packages/plugins/experimental/plugin-transcription/src/transcription-manager.ts";
531
- var RECORD_INTERVAL2 = 200;
532
- var PREFIXED_CHUNKS_AMOUNT2 = 10;
533
- var TRANSCRIBE_AFTER_CHUNKS_AMOUNT2 = 50;
534
- var TranscriptionManager = class extends import_context3.Resource {
535
- constructor(edgeClient) {
536
- super();
537
- this._audioStreamTrack = void 0;
538
- this._name = void 0;
539
- this._mediaRecorder = void 0;
540
- this._transcriber = void 0;
541
- this._enabled = false;
542
- this._queue = void 0;
543
- this._edgeClient = edgeClient;
544
- }
545
- async _open() {
546
- await this._toggleTranscriber();
547
- }
548
- async _close() {
549
- void this._transcriber?.close();
550
- }
551
- setRecording(recording) {
552
- if (!this.isOpen || !this._enabled) {
553
- return;
554
- }
555
- if (recording) {
556
- this._transcriber?.startChunksRecording();
557
- } else {
558
- this._transcriber?.stopChunksRecording();
559
- }
560
- }
561
- /**
562
- * Enable or disable transcription.
563
- * @param enabled - Whether to enable transcription.
564
- */
565
- async setEnabled(enabled) {
566
- if (this._enabled === enabled) {
567
- return;
568
- }
569
- this._enabled = enabled ?? false;
570
- this.isOpen && await this._toggleTranscriber();
571
- }
572
- async setAudioTrack(track) {
573
- if (this._audioStreamTrack === track) {
574
- return;
575
- }
576
- this._audioStreamTrack = track;
577
- this.isOpen && await this._toggleTranscriber();
578
- }
579
- /**
580
- * Set the queue to save the transcription to.
581
- * @param queue - The queue to save the transcription to or the DXN of the queue.
582
- */
583
- setQueue(queue) {
584
- switch (typeof queue) {
585
- case "string":
586
- if (this._queue?.dxn.toString() === queue) {
587
- return;
588
- }
589
- this._queue = new import_echo_db.QueueImpl(this._edgeClient, import_keys.DXN.parse(queue));
590
- break;
591
- case "object":
592
- if (this._queue === queue) {
593
- return;
594
- }
595
- (0, import_invariant2.invariant)(queue instanceof import_echo_db.QueueImpl, void 0, {
596
- F: __dxlog_file5,
597
- L: 110,
598
- S: this,
599
- A: [
600
- "queue instanceof QueueImpl",
601
- ""
602
- ]
603
- });
604
- this._queue = queue;
605
- break;
606
- case "undefined":
607
- this._queue = void 0;
608
- break;
609
- }
610
- }
611
- setName(name) {
612
- if (this._name === name) {
613
- return;
614
- }
615
- this._name = name;
616
- }
617
- async _toggleTranscriber() {
618
- await this._maybeReinitTranscriber();
619
- if (this._enabled) {
620
- await this._transcriber?.open();
621
- } else {
622
- await this._transcriber?.close();
623
- }
624
- }
625
- async _maybeReinitTranscriber() {
626
- if (!this._audioStreamTrack || !this._enabled) {
627
- return;
628
- }
629
- let needReinit = false;
630
- if (this._audioStreamTrack !== this._mediaRecorder?.mediaStreamTrack) {
631
- this._mediaRecorder = new MediaStreamRecorder({
632
- mediaStreamTrack: this._audioStreamTrack,
633
- interval: RECORD_INTERVAL2
634
- });
635
- needReinit = true;
636
- }
637
- if (needReinit) {
638
- await this._transcriber?.close();
639
- this._transcriber = new Transcriber({
640
- config: {
641
- transcribeAfterChunksAmount: TRANSCRIBE_AFTER_CHUNKS_AMOUNT2,
642
- prefixBufferChunksAmount: PREFIXED_CHUNKS_AMOUNT2
643
- },
644
- recorder: this._mediaRecorder,
645
- onSegments: (segments) => this._onSegments(segments)
646
- });
647
- }
648
- }
649
- async _onSegments(segments) {
650
- if (!this.isOpen || !this._queue) {
651
- return;
652
- }
653
- const block = (0, import_echo_schema.createStatic)(import_chunk_UIHEGU6Q.TranscriptBlock, {
654
- author: this._name,
655
- segments
656
- });
657
- this._queue.append([
658
- block
659
- ]);
660
- }
661
- };
662
- _ts_decorate3([
663
- import_async4.synchronized
664
- ], TranscriptionManager.prototype, "setRecording", null);
665
- _ts_decorate3([
666
- import_async4.synchronized
667
- ], TranscriptionManager.prototype, "setEnabled", null);
668
- _ts_decorate3([
669
- import_async4.synchronized
670
- ], TranscriptionManager.prototype, "setAudioTrack", null);
671
- _ts_decorate3([
672
- import_async4.synchronized
673
- ], TranscriptionManager.prototype, "setQueue", null);
674
- _ts_decorate3([
675
- import_async4.synchronized
676
- ], TranscriptionManager.prototype, "setName", null);
677
236
  var translations_default = [
678
237
  {
679
238
  "en-US": {
680
- [import_chunk_UIHEGU6Q.TranscriptType.typename]: {
681
- "typename label": "Transcript"
239
+ [import_chunk_P4VVD6ZO.TranscriptType.typename]: {
240
+ "typename label": "Transcript",
241
+ "object name placeholder": "New transcript"
682
242
  },
683
- [import_chunk_UIHEGU6Q.TRANSCRIPTION_PLUGIN]: {
243
+ [import_chunk_NVZWGFJL.TRANSCRIPTION_PLUGIN]: {
684
244
  "plugin name": "Transcription",
685
- "calls label": "Transcript",
686
- "calls panel label": "Transcription",
687
- "create calls label": "Create transcription",
688
- "delete calls label": "Delete",
245
+ "transcript companion label": "Transcript",
246
+ "start transcription label": "Start transcription",
247
+ "stop transcription label": "Stop transcription",
689
248
  "delete button": "Delete",
690
249
  "bookmark button": "Bookmark",
691
- "summary button": "Create summary",
692
- "summarizing label": "Summarizing..."
250
+ "scroll to end label": "Scroll to latest"
693
251
  }
694
252
  }
695
253
  }
696
254
  ];
697
- var TranscriptionPlugin = () => (0, import_app_framework3.definePlugin)(import_chunk_UIHEGU6Q.meta, [
255
+ var TranscriptionPlugin = () => (0, import_app_framework3.definePlugin)(import_chunk_NVZWGFJL.meta, [
698
256
  (0, import_app_framework3.defineModule)({
699
- id: `${import_chunk_UIHEGU6Q.meta.id}/module/translations`,
257
+ id: `${import_chunk_NVZWGFJL.meta.id}/module/translations`,
700
258
  activatesOn: import_app_framework3.Events.SetupTranslations,
701
259
  activate: () => (0, import_app_framework3.contributes)(import_app_framework3.Capabilities.Translations, translations_default)
702
260
  }),
703
261
  (0, import_app_framework3.defineModule)({
704
- id: `${import_chunk_UIHEGU6Q.meta.id}/module/transcription`,
705
- activatesOn: import_app_framework3.Events.Startup,
706
- activate: () => (0, import_app_framework3.contributes)(TranscriptionCapabilities.Transcription, null)
262
+ id: `${import_chunk_NVZWGFJL.meta.id}/module/transcription`,
263
+ activatesOn: import_app_framework3.Events.SetupAppGraph,
264
+ activate: Transcriber2
265
+ }),
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
707
270
  }),
708
271
  (0, import_app_framework3.defineModule)({
709
- id: `${import_chunk_UIHEGU6Q.meta.id}/module/metadata`,
272
+ id: `${import_chunk_NVZWGFJL.meta.id}/module/metadata`,
710
273
  activatesOn: import_app_framework3.Events.SetupMetadata,
711
- activate: () => (0, import_app_framework3.contributes)(import_app_framework3.Capabilities.Metadata, {
712
- id: import_chunk_UIHEGU6Q.TranscriptType.typename,
274
+ activate: (context) => (0, import_app_framework3.contributes)(import_app_framework3.Capabilities.Metadata, {
275
+ id: import_chunk_P4VVD6ZO.TranscriptType.typename,
713
276
  metadata: {
714
- placeholder: [
715
- "transcript title placeholder",
716
- {
717
- ns: import_chunk_UIHEGU6Q.TRANSCRIPTION_PLUGIN
718
- }
719
- ],
720
- icon: "ph--subtitles--regular"
277
+ icon: "ph--subtitles--regular",
278
+ // TODO(wittjosiah): Factor out. Artifact? Separate capability?
279
+ getTextContent: async (transcript) => {
280
+ const client = context.requestCapability(import_plugin_client.ClientCapabilities.Client);
281
+ const queue = new import_echo_db.QueueImpl(client.edge, transcript.queue.dxn);
282
+ await queue.refresh();
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");
284
+ return content;
285
+ }
721
286
  }
722
287
  })
723
288
  }),
724
289
  (0, import_app_framework3.defineModule)({
725
- id: `${import_chunk_UIHEGU6Q.meta.id}/module/schema`,
290
+ id: `${import_chunk_NVZWGFJL.meta.id}/module/schema`,
726
291
  activatesOn: import_plugin_client.ClientEvents.SetupSchema,
727
292
  activate: () => [
728
293
  (0, import_app_framework3.contributes)(import_plugin_client.ClientCapabilities.Schema, [
729
- import_chunk_UIHEGU6Q.TranscriptType
294
+ import_chunk_P4VVD6ZO.TranscriptType
730
295
  ])
731
296
  ]
732
297
  }),
733
298
  (0, import_app_framework3.defineModule)({
734
- id: `${import_chunk_UIHEGU6Q.meta.id}/module/react-surface`,
299
+ id: `${import_chunk_NVZWGFJL.meta.id}/module/react-surface`,
735
300
  activatesOn: import_app_framework3.Events.SetupReactSurface,
736
301
  activate: ReactSurface
737
302
  }),
738
303
  (0, import_app_framework3.defineModule)({
739
- id: `${import_chunk_UIHEGU6Q.meta.id}/module/intent-resolver`,
304
+ id: `${import_chunk_NVZWGFJL.meta.id}/module/intent-resolver`,
740
305
  activatesOn: import_app_framework3.Events.SetupIntentResolver,
741
306
  activate: IntentResolver
742
307
  }),
743
308
  (0, import_app_framework3.defineModule)({
744
- id: `${import_chunk_UIHEGU6Q.meta.id}/module/app-graph-builder`,
309
+ id: `${import_chunk_NVZWGFJL.meta.id}/module/app-graph-builder`,
745
310
  activatesOn: import_app_framework3.Events.SetupAppGraph,
746
311
  activate: AppGraphBuilder
747
312
  })
748
313
  ]);
749
314
  // Annotate the CommonJS export names for ESM import in node:
750
315
  0 && (module.exports = {
751
- AppGraphBuilder,
752
- IntentResolver,
753
316
  MediaStreamRecorder,
754
- ReactSurface,
755
317
  TRANSCRIPTION_PLUGIN,
756
318
  Transcriber,
757
319
  Transcript,