@dxos/plugin-transcription 0.8.0 → 0.8.1-main.013e445

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 (152) hide show
  1. package/dist/lib/browser/{TranscriptContainer-SX6PNFEC.mjs → TranscriptContainer-TJXP6ICP.mjs} +3 -3
  2. package/dist/lib/browser/app-graph-builder-ZIIDYMHP.mjs +39 -0
  3. package/dist/lib/browser/app-graph-builder-ZIIDYMHP.mjs.map +7 -0
  4. package/dist/lib/browser/{chunk-AS364WZZ.mjs → chunk-3NWYXRZS.mjs} +2 -2
  5. package/dist/lib/browser/chunk-MD4NQO6W.mjs +252 -0
  6. package/dist/lib/browser/chunk-MD4NQO6W.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-N3VKF2J3.mjs +415 -0
  8. package/dist/lib/browser/chunk-N3VKF2J3.mjs.map +7 -0
  9. package/dist/lib/browser/chunk-YEVVZZTC.mjs +19 -0
  10. package/dist/lib/browser/chunk-YEVVZZTC.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-QIHUPVQD.mjs → chunk-YRW4MNRE.mjs} +23 -24
  12. package/dist/lib/browser/chunk-YRW4MNRE.mjs.map +7 -0
  13. package/dist/lib/browser/index.mjs +203 -366
  14. package/dist/lib/browser/index.mjs.map +4 -4
  15. package/dist/lib/browser/intent-resolver-AC6LFBE4.mjs +73 -0
  16. package/dist/lib/browser/intent-resolver-AC6LFBE4.mjs.map +7 -0
  17. package/dist/lib/browser/meta.json +1 -1
  18. package/dist/lib/browser/{react-surface-FOEWLLTZ.mjs → react-surface-OM2EECBI.mjs} +15 -8
  19. package/dist/lib/browser/{react-surface-FOEWLLTZ.mjs.map → react-surface-OM2EECBI.mjs.map} +2 -2
  20. package/dist/lib/browser/types/index.mjs +2 -1
  21. package/dist/lib/node/{TranscriptContainer-HU763SN3.cjs → TranscriptContainer-KNTN76RZ.cjs} +8 -8
  22. package/dist/lib/node/{TranscriptContainer-HU763SN3.cjs.map → TranscriptContainer-KNTN76RZ.cjs.map} +2 -2
  23. package/dist/lib/node/app-graph-builder-CJSNQYJZ.cjs +52 -0
  24. package/dist/lib/node/app-graph-builder-CJSNQYJZ.cjs.map +7 -0
  25. package/dist/lib/node/chunk-EKSRBQX7.cjs +437 -0
  26. package/dist/lib/node/chunk-EKSRBQX7.cjs.map +7 -0
  27. package/dist/lib/node/{chunk-QWXLQPP5.cjs → chunk-I6CUIAQH.cjs} +5 -5
  28. package/dist/lib/node/{app-graph-builder-YFBX3OTP.cjs → chunk-LEHTJHKP.cjs} +23 -7
  29. package/dist/lib/node/chunk-LEHTJHKP.cjs.map +7 -0
  30. package/dist/lib/node/chunk-T4W4AKGM.cjs +279 -0
  31. package/dist/lib/node/chunk-T4W4AKGM.cjs.map +7 -0
  32. package/dist/lib/node/{chunk-UIHEGU6Q.cjs → chunk-ZAE2IOZC.cjs} +25 -27
  33. package/dist/lib/node/chunk-ZAE2IOZC.cjs.map +7 -0
  34. package/dist/lib/node/index.cjs +220 -378
  35. package/dist/lib/node/index.cjs.map +4 -4
  36. package/dist/lib/node/intent-resolver-ZSQ2MHJJ.cjs +84 -0
  37. package/dist/lib/node/intent-resolver-ZSQ2MHJJ.cjs.map +7 -0
  38. package/dist/lib/node/meta.json +1 -1
  39. package/dist/lib/node/{react-surface-AGGGDOUC.cjs → react-surface-ZENSCF6S.cjs} +18 -12
  40. package/dist/lib/node/{react-surface-AGGGDOUC.cjs.map → react-surface-ZENSCF6S.cjs.map} +2 -2
  41. package/dist/lib/node/types/index.cjs +8 -7
  42. package/dist/lib/node/types/index.cjs.map +2 -2
  43. package/dist/lib/node-esm/{TranscriptContainer-DVBXQIQ4.mjs → TranscriptContainer-MOWZQSEO.mjs} +3 -3
  44. package/dist/lib/node-esm/app-graph-builder-ARTLU4U5.mjs +40 -0
  45. package/dist/lib/node-esm/app-graph-builder-ARTLU4U5.mjs.map +7 -0
  46. package/dist/lib/node-esm/chunk-4A6BWPRB.mjs +253 -0
  47. package/dist/lib/node-esm/chunk-4A6BWPRB.mjs.map +7 -0
  48. package/dist/lib/node-esm/{chunk-KEG3ME4O.mjs → chunk-DLXORY7Y.mjs} +22 -24
  49. package/dist/lib/node-esm/chunk-DLXORY7Y.mjs.map +7 -0
  50. package/dist/lib/node-esm/{chunk-WEZGRUG6.mjs → chunk-NFPDIQYG.mjs} +2 -2
  51. package/dist/lib/node-esm/chunk-SB5TLXBU.mjs +21 -0
  52. package/dist/lib/node-esm/chunk-SB5TLXBU.mjs.map +7 -0
  53. package/dist/lib/node-esm/chunk-SWV74BYU.mjs +416 -0
  54. package/dist/lib/node-esm/chunk-SWV74BYU.mjs.map +7 -0
  55. package/dist/lib/node-esm/index.mjs +203 -366
  56. package/dist/lib/node-esm/index.mjs.map +4 -4
  57. package/dist/lib/node-esm/intent-resolver-XU4BLUSF.mjs +74 -0
  58. package/dist/lib/node-esm/intent-resolver-XU4BLUSF.mjs.map +7 -0
  59. package/dist/lib/node-esm/meta.json +1 -1
  60. package/dist/lib/node-esm/{react-surface-6AYPLJ2B.mjs → react-surface-5CBEXLXJ.mjs} +15 -8
  61. package/dist/lib/node-esm/{react-surface-6AYPLJ2B.mjs.map → react-surface-5CBEXLXJ.mjs.map} +2 -2
  62. package/dist/lib/node-esm/types/index.mjs +2 -1
  63. package/dist/types/src/TranscriptionPlugin.d.ts.map +1 -1
  64. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -0
  65. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  66. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  67. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  68. package/dist/types/src/components/Transcript/Transcript.d.ts +2 -0
  69. package/dist/types/src/components/Transcript/Transcript.d.ts.map +1 -1
  70. package/dist/types/src/components/Transcript/Transcript.stories.d.ts.map +1 -1
  71. package/dist/types/src/components/TranscriptContainer.d.ts +1 -0
  72. package/dist/types/src/components/TranscriptContainer.d.ts.map +1 -1
  73. package/dist/types/src/components/index.d.ts +1 -0
  74. package/dist/types/src/components/index.d.ts.map +1 -1
  75. package/dist/types/src/components/transcription.stories.d.ts +3 -2
  76. package/dist/types/src/components/transcription.stories.d.ts.map +1 -1
  77. package/dist/types/src/hooks/index.d.ts +0 -1
  78. package/dist/types/src/hooks/index.d.ts.map +1 -1
  79. package/dist/types/src/index.d.ts +1 -0
  80. package/dist/types/src/index.d.ts.map +1 -1
  81. package/dist/types/src/meta.d.ts +2 -9
  82. package/dist/types/src/meta.d.ts.map +1 -1
  83. package/dist/types/src/transcriber/index.d.ts +1 -0
  84. package/dist/types/src/transcriber/index.d.ts.map +1 -1
  85. package/dist/types/src/transcriber/media-stream-recorder.d.ts +1 -0
  86. package/dist/types/src/transcriber/media-stream-recorder.d.ts.map +1 -1
  87. package/dist/types/src/transcriber/summarize.d.ts +5 -0
  88. package/dist/types/src/transcriber/summarize.d.ts.map +1 -0
  89. package/dist/types/src/transcription-manager.d.ts +39 -0
  90. package/dist/types/src/transcription-manager.d.ts.map +1 -0
  91. package/dist/types/src/translations.d.ts +5 -6
  92. package/dist/types/src/translations.d.ts.map +1 -1
  93. package/dist/types/src/types/schema.d.ts +9 -15
  94. package/dist/types/src/types/schema.d.ts.map +1 -1
  95. package/dist/types/src/types/types.d.ts +13 -6
  96. package/dist/types/src/types/types.d.ts.map +1 -1
  97. package/dist/types/src/util/random-queue-dxn.d.ts +2 -2
  98. package/dist/types/src/util/random-queue-dxn.d.ts.map +1 -1
  99. package/package.json +40 -37
  100. package/src/TranscriptionPlugin.tsx +1 -2
  101. package/src/capabilities/app-graph-builder.ts +25 -2
  102. package/src/capabilities/intent-resolver.ts +24 -2
  103. package/src/capabilities/react-surface.tsx +2 -2
  104. package/src/components/Transcript/Transcript.stories.tsx +46 -27
  105. package/src/components/Transcript/Transcript.tsx +205 -49
  106. package/src/components/TranscriptContainer.tsx +12 -147
  107. package/src/components/transcription.stories.tsx +11 -13
  108. package/src/hooks/index.ts +0 -1
  109. package/src/index.ts +1 -0
  110. package/src/meta.ts +2 -2
  111. package/src/transcriber/index.ts +1 -0
  112. package/src/transcriber/media-stream-recorder.ts +4 -0
  113. package/src/transcriber/summarize.ts +77 -0
  114. package/src/transcription-manager.ts +183 -0
  115. package/src/translations.ts +2 -2
  116. package/src/types/schema.ts +5 -3
  117. package/src/types/types.ts +12 -2
  118. package/src/util/random-queue-dxn.ts +2 -2
  119. package/dist/lib/browser/app-graph-builder-ZSSJIFY7.mjs +0 -7
  120. package/dist/lib/browser/app-graph-builder-ZSSJIFY7.mjs.map +0 -7
  121. package/dist/lib/browser/chunk-QIHUPVQD.mjs.map +0 -7
  122. package/dist/lib/browser/chunk-R4HHS6FA.mjs +0 -241
  123. package/dist/lib/browser/chunk-R4HHS6FA.mjs.map +0 -7
  124. package/dist/lib/browser/chunk-ZMES3U2D.mjs +0 -78
  125. package/dist/lib/browser/chunk-ZMES3U2D.mjs.map +0 -7
  126. package/dist/lib/browser/intent-resolver-EAR2TFK2.mjs +0 -32
  127. package/dist/lib/browser/intent-resolver-EAR2TFK2.mjs.map +0 -7
  128. package/dist/lib/node/app-graph-builder-YFBX3OTP.cjs.map +0 -7
  129. package/dist/lib/node/chunk-JBN3P6ZF.cjs +0 -97
  130. package/dist/lib/node/chunk-JBN3P6ZF.cjs.map +0 -7
  131. package/dist/lib/node/chunk-UIHEGU6Q.cjs.map +0 -7
  132. package/dist/lib/node/chunk-YV74Z74I.cjs +0 -267
  133. package/dist/lib/node/chunk-YV74Z74I.cjs.map +0 -7
  134. package/dist/lib/node/intent-resolver-3KJZGGUQ.cjs +0 -44
  135. package/dist/lib/node/intent-resolver-3KJZGGUQ.cjs.map +0 -7
  136. package/dist/lib/node-esm/app-graph-builder-77GQG6UF.mjs +0 -9
  137. package/dist/lib/node-esm/app-graph-builder-77GQG6UF.mjs.map +0 -7
  138. package/dist/lib/node-esm/chunk-36EQXBWR.mjs +0 -242
  139. package/dist/lib/node-esm/chunk-36EQXBWR.mjs.map +0 -7
  140. package/dist/lib/node-esm/chunk-KEG3ME4O.mjs.map +0 -7
  141. package/dist/lib/node-esm/chunk-XYU6B73V.mjs +0 -80
  142. package/dist/lib/node-esm/chunk-XYU6B73V.mjs.map +0 -7
  143. package/dist/lib/node-esm/intent-resolver-UGLYRD4X.mjs +0 -33
  144. package/dist/lib/node-esm/intent-resolver-UGLYRD4X.mjs.map +0 -7
  145. package/dist/types/src/hooks/useIsSpeaking.d.ts +0 -2
  146. package/dist/types/src/hooks/useIsSpeaking.d.ts.map +0 -1
  147. package/src/hooks/useIsSpeaking.ts +0 -77
  148. /package/dist/lib/browser/{TranscriptContainer-SX6PNFEC.mjs.map → TranscriptContainer-TJXP6ICP.mjs.map} +0 -0
  149. /package/dist/lib/browser/{chunk-AS364WZZ.mjs.map → chunk-3NWYXRZS.mjs.map} +0 -0
  150. /package/dist/lib/node/{chunk-QWXLQPP5.cjs.map → chunk-I6CUIAQH.cjs.map} +0 -0
  151. /package/dist/lib/node-esm/{TranscriptContainer-DVBXQIQ4.mjs.map → TranscriptContainer-MOWZQSEO.mjs.map} +0 -0
  152. /package/dist/lib/node-esm/{chunk-WEZGRUG6.mjs.map → chunk-NFPDIQYG.mjs.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe;;qBAKyjG,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;qFALpzV,CAAC;AACzE,eAAO,MAAM,cAAc,mPAA0C,CAAC;AACtE,eAAO,MAAM,YAAY,gMAAwC,CAAC;AAElE,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe;;qBAKijG,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAwF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;;;qBAAqF,YAAY;sBAAsC,iBAAiB;uBAAgD,iBAAiB;sBAAgD,iBAAiB;;2BAAkE,iBAAiB;qFAL5yV,CAAC;AACzE,eAAO,MAAM,cAAc,mPAA0C,CAAC;AACtE,eAAO,MAAM,YAAY,gMAAwC,CAAC;AAElE,cAAc,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"intent-resolver.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/intent-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAA+B,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;kCAM5E,cAAc;AAAvC,wBAaK"}
1
+ {"version":3,"file":"intent-resolver.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/intent-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAA+B,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;kCAY5E,cAAc;AAAvC,wBA6BK"}
@@ -2,6 +2,8 @@ import { type FC } from 'react';
2
2
  import { type TranscriptBlock } from '../../types';
3
3
  export type TranscriptProps = {
4
4
  blocks?: TranscriptBlock[];
5
+ attendableId?: string;
6
+ ignoreAttention?: boolean;
5
7
  };
6
8
  export declare const Transcript: FC<TranscriptProps>;
7
9
  //# sourceMappingURL=Transcript.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Transcript.d.ts","sourceRoot":"","sources":["../../../../../src/components/Transcript/Transcript.tsx"],"names":[],"mappings":"AAKA,OAAc,EAAE,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAKvC,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAKnD,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;CAC5B,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CAiD1C,CAAC"}
1
+ {"version":3,"file":"Transcript.d.ts","sourceRoot":"","sources":["../../../../../src/components/Transcript/Transcript.tsx"],"names":[],"mappings":"AAMA,OAAc,EAAE,KAAK,EAAE,EAAsE,MAAM,OAAO,CAAC;AAgB3G,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAkBnD,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAkDF,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CAkI1C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Transcript.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/Transcript/Transcript.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAO5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,UAAU,CAqBjC,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,UAAU,CAAC,CAAC;AAUzC,eAAO,MAAM,OAAO,EAAE,KAWrB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,KAAU,CAAC"}
1
+ {"version":3,"file":"Transcript.stories.d.ts","sourceRoot":"","sources":["../../../../../src/components/Transcript/Transcript.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAO5D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AA0B1C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,UAAU,CAyBjC,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,UAAU,CAAC,CAAC;AAEzC,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,KAKnB,CAAC"}
@@ -2,6 +2,7 @@ import { type FC } from 'react';
2
2
  import { type TranscriptType } from '../types';
3
3
  export declare const TranscriptionContainer: FC<{
4
4
  transcript: TranscriptType;
5
+ role: string;
5
6
  }>;
6
7
  export default TranscriptionContainer;
7
8
  //# sourceMappingURL=TranscriptContainer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TranscriptContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/TranscriptContainer.tsx"],"names":[],"mappings":"AAKA,OAAc,EAAkC,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAsBvE,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAEhE,eAAO,MAAM,sBAAsB,EAAE,EAAE,CAAC;IAAE,UAAU,EAAE,cAAc,CAAA;CAAE,CAkDrE,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"TranscriptContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/TranscriptContainer.tsx"],"names":[],"mappings":"AAIA,OAAc,EAAE,KAAK,EAAE,EAAY,MAAM,OAAO,CAAC;AAQjD,OAAO,EAAwB,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAErE,eAAO,MAAM,sBAAsB,EAAE,EAAE,CAAC;IAAE,UAAU,EAAE,cAAc,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAenF,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
@@ -2,5 +2,6 @@ export * from './Transcript';
2
2
  export * from './TranscriptContainer';
3
3
  export declare const TranscriptContainer: import("react").LazyExoticComponent<import("react").FC<{
4
4
  transcript: import("../types").TranscriptType;
5
+ role: string;
5
6
  }>>;
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAMA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AAEtC,eAAO,MAAM,mBAAmB;;GAA8C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAMA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AAEtC,eAAO,MAAM,mBAAmB;;;GAA8C,CAAC"}
@@ -1,11 +1,12 @@
1
1
  import '@dxos-theme';
2
- import { type StoryObj, type Meta } from '@storybook/react';
2
+ import { type Meta, type StoryObj } from '@storybook/react';
3
+ import React from 'react';
3
4
  import { type DXN } from '@dxos/keys';
4
5
  declare const AudioFile: ({ queueDxn, audioUrl }: {
5
6
  queueDxn: DXN;
6
7
  audioUrl: string;
7
8
  transcriptUrl: string;
8
- }) => import("react/jsx-runtime").JSX.Element;
9
+ }) => React.JSX.Element;
9
10
  declare const meta: Meta<typeof AudioFile>;
10
11
  export default meta;
11
12
  type Story = StoryObj<typeof AudioFile>;
@@ -1 +1 @@
1
- {"version":3,"file":"transcription.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/transcription.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAa5D,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;AA4EtC,QAAA,MAAM,SAAS,2BAA4B;IAAE,QAAQ,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,4CA6DpG,CAAC;AAEF,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,SAAS,CAqBhC,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,SAAS,CAAC,CAAC;AAExC,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,KAQlB,CAAC"}
1
+ {"version":3,"file":"transcription.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/transcription.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,KASN,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,YAAY,CAAC;AA2EtC,QAAA,MAAM,SAAS,2BAA4B;IAAE,QAAQ,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,sBA4DpG,CAAC;AAEF,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,SAAS,CAqBhC,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,SAAS,CAAC,CAAC;AAExC,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,KAQlB,CAAC"}
@@ -1,6 +1,5 @@
1
1
  export * from './useAudioFile';
2
2
  export * from './useAudioTrack';
3
- export * from './useIsSpeaking';
4
3
  export * from './useTranscriber';
5
4
  export * from './useVoiceInput';
6
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
@@ -3,5 +3,6 @@ export * from './components';
3
3
  export * from './hooks';
4
4
  export * from './meta';
5
5
  export * from './transcriber';
6
+ export * from './transcription-manager';
6
7
  export * from './TranscriptionPlugin';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAE9B,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AAExC,cAAc,uBAAuB,CAAC"}
@@ -1,11 +1,4 @@
1
+ import { type PluginMeta } from '@dxos/app-framework';
1
2
  export declare const TRANSCRIPTION_PLUGIN = "dxos.org/plugin/transcription";
2
- export declare const meta: {
3
- id: string;
4
- name: string;
5
- description: string;
6
- icon: string;
7
- source: string;
8
- tags: string[];
9
- screenshots: never[];
10
- };
3
+ export declare const meta: PluginMeta;
11
4
  //# sourceMappingURL=meta.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/meta.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,oBAAoB,kCAAkC,CAAC;AAEpE,eAAO,MAAM,IAAI;;;;;;;;CAQK,CAAC"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/meta.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,eAAO,MAAM,oBAAoB,kCAAkC,CAAC;AAEpE,eAAO,MAAM,IAAI,EAAE,UAQlB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export * from './audio-recorder';
2
2
  export * from './media-stream-recorder';
3
+ export * from './summarize';
3
4
  export * from './transcriber';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transcriber/index.ts"],"names":[],"mappings":"AAIA,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/transcriber/index.ts"],"names":[],"mappings":"AAIA,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC"}
@@ -18,6 +18,7 @@ export declare class MediaStreamRecorder implements AudioRecorder {
18
18
  interval: number;
19
19
  });
20
20
  get wavConfig(): WavConfig;
21
+ get mediaStreamTrack(): MediaStreamTrack;
21
22
  setOnChunk(onChunk: (chunk: AudioChunk) => void): void;
22
23
  start(): Promise<void>;
23
24
  stop(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"media-stream-recorder.d.ts","sourceRoot":"","sources":["../../../../src/transcriber/media-stream-recorder.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AASvF;;;;GAIG;AACH,qBACa,mBAAoB,YAAW,aAAa;IACvD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,cAAc,CAAC,CAA6B;IACpD,OAAO,CAAC,OAAO,CAAC,CAAyB;IACzC,OAAO,CAAC,QAAQ,CAAC,CAA8B;gBAEnC,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAE;QAAE,gBAAgB,EAAE,gBAAgB,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;IAKpG,IAAI,SAAS,IAAI,SAAS,CAOzB;IAED,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI;IAIhD,KAAK;IAkBL,IAAI;YAQI,gBAAgB;CA2B/B"}
1
+ {"version":3,"file":"media-stream-recorder.d.ts","sourceRoot":"","sources":["../../../../src/transcriber/media-stream-recorder.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AASvF;;;;GAIG;AACH,qBACa,mBAAoB,YAAW,aAAa;IACvD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAmB;IACrD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,cAAc,CAAC,CAA6B;IACpD,OAAO,CAAC,OAAO,CAAC,CAAyB;IACzC,OAAO,CAAC,QAAQ,CAAC,CAA8B;gBAEnC,EAAE,gBAAgB,EAAE,QAAQ,EAAE,EAAE;QAAE,gBAAgB,EAAE,gBAAgB,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;IAKpG,IAAI,SAAS,IAAI,SAAS,CAOzB;IAED,IAAI,gBAAgB,qBAEnB;IAED,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,GAAG,IAAI;IAIhD,KAAK;IAkBL,IAAI;YAQI,gBAAgB;CA2B/B"}
@@ -0,0 +1,5 @@
1
+ import { type AIServiceClient } from '@dxos/assistant';
2
+ import { type EdgeHttpClient } from '@dxos/react-edge-client';
3
+ import { type TranscriptType } from '../types';
4
+ export declare const summarizeTranscript: (edge: EdgeHttpClient, ai: AIServiceClient, transcript: TranscriptType, context?: string) => Promise<string>;
5
+ //# sourceMappingURL=summarize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"summarize.d.ts","sourceRoot":"","sources":["../../../../src/transcriber/summarize.ts"],"names":[],"mappings":"AAKA,OAAO,EAAyC,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAM9F,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AAEhE,eAAO,MAAM,mBAAmB,SACxB,cAAc,MAChB,eAAe,cACP,cAAc,YAEhB,MAAM,KACf,OAAO,CAAC,MAAM,CAwBhB,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { Resource } from '@dxos/context';
2
+ import { type Queue } from '@dxos/echo-db';
3
+ import { type EdgeHttpClient } from '@dxos/react-edge-client';
4
+ import { type HuePalette } from '@dxos/react-ui-theme';
5
+ import { TranscriptBlock } from './types';
6
+ /**
7
+ * Manages transcription state.
8
+ */
9
+ export declare class TranscriptionManager extends Resource {
10
+ private readonly _edgeClient;
11
+ private _audioStreamTrack?;
12
+ private _name?;
13
+ private _hue?;
14
+ private _mediaRecorder?;
15
+ private _transcriber?;
16
+ private _enabled;
17
+ private _queue?;
18
+ constructor(edgeClient: EdgeHttpClient);
19
+ protected _open(): Promise<void>;
20
+ protected _close(): Promise<void>;
21
+ setRecording(recording?: boolean): void;
22
+ /**
23
+ * Enable or disable transcription.
24
+ * @param enabled - Whether to enable transcription.
25
+ */
26
+ setEnabled(enabled?: boolean): Promise<void>;
27
+ setAudioTrack(track?: MediaStreamTrack): Promise<void>;
28
+ /**
29
+ * Set the queue to save the transcription to.
30
+ * @param queue - The queue to save the transcription to or the DXN of the queue.
31
+ */
32
+ setQueue(queue?: Queue<TranscriptBlock> | string): void;
33
+ setName(name: string): void;
34
+ setHue(hue: HuePalette): void;
35
+ private _toggleTranscriber;
36
+ private _maybeReinitTranscriber;
37
+ private _onSegments;
38
+ }
39
+ //# sourceMappingURL=transcription-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transcription-manager.d.ts","sourceRoot":"","sources":["../../../src/transcription-manager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAa,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AAItD,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,eAAe,EAA0B,MAAM,SAAS,CAAC;AAkBlE;;GAEG;AAEH,qBAAa,oBAAqB,SAAQ,QAAQ;IAChD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiB;IAC7C,OAAO,CAAC,iBAAiB,CAAC,CAA+B;IACzD,OAAO,CAAC,KAAK,CAAC,CAAqB;IACnC,OAAO,CAAC,IAAI,CAAC,CAAyB;IACtC,OAAO,CAAC,cAAc,CAAC,CAAkC;IACzD,OAAO,CAAC,YAAY,CAAC,CAA0B;IAC/C,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAC,CAAqC;gBAExC,UAAU,EAAE,cAAc;cAKb,KAAK;cAIL,MAAM;IAK/B,YAAY,CAAC,SAAS,CAAC,EAAE,OAAO;IAYhC;;;OAGG;IAEG,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO;IAS5B,aAAa,CAAC,KAAK,CAAC,EAAE,gBAAgB;IAQ5C;;;OAGG;IAEH,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,GAAG,MAAM;IAsBhD,OAAO,CAAC,IAAI,EAAE,MAAM;IAQpB,MAAM,CAAC,GAAG,EAAE,UAAU;YAOR,kBAAkB;YAWlB,uBAAuB;YA2BvB,WAAW;CAQ1B"}
@@ -2,6 +2,7 @@ declare const _default: {
2
2
  'en-US': {
3
3
  [x: string]: {
4
4
  'typename label': string;
5
+ 'object name placeholder': string;
5
6
  'plugin name'?: undefined;
6
7
  'calls label'?: undefined;
7
8
  'calls panel label'?: undefined;
@@ -9,8 +10,7 @@ declare const _default: {
9
10
  'delete calls label'?: undefined;
10
11
  'delete button'?: undefined;
11
12
  'bookmark button'?: undefined;
12
- 'summary button'?: undefined;
13
- 'summarizing label'?: undefined;
13
+ 'scroll to end label'?: undefined;
14
14
  } | {
15
15
  'plugin name': string;
16
16
  'calls label': string;
@@ -19,9 +19,9 @@ declare const _default: {
19
19
  'delete calls label': string;
20
20
  'delete button': string;
21
21
  'bookmark button': string;
22
- 'summary button': string;
23
- 'summarizing label': string;
22
+ 'scroll to end label': string;
24
23
  'typename label'?: undefined;
24
+ 'object name placeholder'?: undefined;
25
25
  };
26
26
  "dxos.org/plugin/transcription": {
27
27
  'plugin name': string;
@@ -31,8 +31,7 @@ declare const _default: {
31
31
  'delete calls label': string;
32
32
  'delete button': string;
33
33
  'bookmark button': string;
34
- 'summary button': string;
35
- 'summarizing label': string;
34
+ 'scroll to end label': string;
36
35
  };
37
36
  };
38
37
  }[];
@@ -1 +1 @@
1
- {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,wBAoBE"}
1
+ {"version":3,"file":"translations.d.ts","sourceRoot":"","sources":["../../../src/translations.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,wBAoBE"}
@@ -43,21 +43,15 @@ export type TranscriptSegment = S.Schema.Type<typeof TranscriptSegment>;
43
43
  /**
44
44
  * Transcription block (from single speaker).
45
45
  */
46
- export declare const TranscriptBlock: S.Schema<{
47
- readonly id: string;
48
- author?: string | undefined;
49
- segments: {
50
- readonly started: Date;
51
- readonly text: string;
52
- }[];
53
- }, {
54
- readonly id: string;
55
- author?: string | undefined;
56
- segments: {
57
- readonly started: Date;
58
- readonly text: string;
59
- }[];
60
- }, never>;
46
+ export declare const TranscriptBlock: import("@dxos/echo-schema").EchoObjectSchema<S.Struct<{
47
+ id: typeof S.String;
48
+ authorName: S.optional<typeof S.String>;
49
+ authorHue: S.optional<typeof S.String>;
50
+ segments: S.Array$<S.Struct<{
51
+ started: typeof S.Date;
52
+ text: typeof S.String;
53
+ }>>;
54
+ }>>;
61
55
  export type TranscriptBlock = S.Schema.Type<typeof TranscriptBlock>;
62
56
  export {};
63
57
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/types/schema.ts"],"names":[],"mappings":"AAIA,OAAO,EAAwB,CAAC,EAAe,MAAM,mBAAmB,CAAC;AAEzE;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;IAO3B;;OAEG;;EAEH,CAAC;;;;;;;;;;;;AAEH,qBAAa,cAAe,SAAQ,mBAGT;CAAG;AAI9B;;;GAGG;AACH,QAAA,MAAM,gBAAgB;;EAEpB,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEtE;;GAEG;AACH,QAAA,MAAM,iBAAiB;;;EAIrB,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;SAIiC,CAAC;AAE9D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/types/schema.ts"],"names":[],"mappings":"AAIA,OAAO,EAAc,CAAC,EAAe,MAAM,mBAAmB,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;IAO3B;;OAEG;;EAGH,CAAC;;;;;;;;;;;;AAEH,qBAAa,cAAe,SAAQ,mBAGT;CAAG;AAI9B;;;GAGG;AACH,QAAA,MAAM,gBAAgB;;EAEpB,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEtE;;GAEG;AACH,QAAA,MAAM,iBAAiB;;;EAIrB,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;GAKiC,CAAC;AAE9D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,CAAC"}
@@ -10,18 +10,25 @@ export declare namespace TranscriptionAction {
10
10
  } & {
11
11
  input: S.Struct<{
12
12
  name: S.optional<typeof S.String>;
13
+ spaceId: typeof S.String;
13
14
  }>;
14
15
  output: S.Struct<{
15
- object: S.Struct<{
16
- name: typeof S.String;
17
- started: S.optional<typeof S.Date>;
18
- ended: S.optional<typeof S.Date>;
19
- queue: S.optional<typeof S.String>;
20
- }>;
16
+ object: typeof TranscriptType;
21
17
  }>;
22
18
  }>;
23
19
  export class Create extends Create_base {
24
20
  }
21
+ const Summarize_base: S.TaggedClass<Summarize, "dxos.org/plugin/transcription/action/summarize", {
22
+ readonly _tag: S.tag<"dxos.org/plugin/transcription/action/summarize">;
23
+ } & {
24
+ input: S.Struct<{
25
+ transcript: typeof TranscriptType;
26
+ context: S.optional<typeof S.String>;
27
+ }>;
28
+ output: typeof S.String;
29
+ }>;
30
+ export class Summarize extends Summarize_base {
31
+ }
25
32
  export {};
26
33
  }
27
34
  export declare const isTranscript: (object: unknown) => object is typeof TranscriptType;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAgB,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAoB,cAAc,EAAE,MAAM,UAAU,CAAC;AAK5D;;GAEG;AAEH,eAAO,MAAM,iBAAiB,2CAA2C,CAAC;AAE1E,yBAAiB,mBAAmB,CAAC;;;;;;;;;;;;;;;;IAGnC,MAAM,OAAO,MAAO,SAAQ,WAO1B;KAAG;;CACN;AAED,eAAO,MAAM,YAAY,WAAY,OAAO,KAAG,MAAM,IAAI,OAAO,cAE/D,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAgB,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAK1C;;GAEG;AAEH,eAAO,MAAM,iBAAiB,2CAA2C,CAAC;AAE1E,yBAAiB,mBAAmB,CAAC;;;;;;;;;;;;IAGnC,MAAM,OAAO,MAAO,SAAQ,WAS1B;KAAG;;;;;;;;;;IAEL,MAAM,OAAO,SAAU,SAAQ,cAM7B;KAAG;;CACN;AAED,eAAO,MAAM,YAAY,WAAY,OAAO,KAAG,MAAM,IAAI,OAAO,cAE/D,CAAC"}
@@ -1,3 +1,3 @@
1
- import { DXN } from '@dxos/keys';
2
- export declare const randomQueueDxn: () => DXN;
1
+ import { DXN, SpaceId } from '@dxos/keys';
2
+ export declare const randomQueueDxn: (spaceId?: SpaceId) => DXN;
3
3
  //# sourceMappingURL=random-queue-dxn.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"random-queue-dxn.d.ts","sourceRoot":"","sources":["../../../../src/util/random-queue-dxn.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,GAAG,EAA8B,MAAM,YAAY,CAAC;AAE7D,eAAO,MAAM,cAAc,WAC6D,CAAC"}
1
+ {"version":3,"file":"random-queue-dxn.d.ts","sourceRoot":"","sources":["../../../../src/util/random-queue-dxn.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,GAAG,EAAqB,OAAO,EAAE,MAAM,YAAY,CAAC;AAE7D,eAAO,MAAM,cAAc,aAAc,OAAO,QACmD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/plugin-transcription",
3
- "version": "0.8.0",
3
+ "version": "0.8.1-main.013e445",
4
4
  "description": "Voice transcription.",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -34,58 +34,61 @@
34
34
  "dependencies": {
35
35
  "@preact/signals-core": "^1.6.0",
36
36
  "date-fns": "^3.3.1",
37
- "effect": "^3.12.3",
37
+ "effect": "3.13.3",
38
38
  "extendable-media-recorder": "^9.2.19",
39
39
  "extendable-media-recorder-wav-encoder": "^7.0.123",
40
+ "main-thread-scheduling": "^14.1.1",
40
41
  "react-resize-detector": "^12.0.2",
41
42
  "react-router-dom": "^6.4.0",
42
43
  "react-use": "^17.5.1",
43
44
  "wavefile": "^11.0.0",
44
- "@dxos/app-framework": "0.8.0",
45
- "@dxos/assistant": "0.8.0",
46
- "@dxos/artifact": "0.8.0",
47
- "@dxos/async": "0.8.0",
48
- "@dxos/client": "0.8.0",
49
- "@dxos/context": "0.8.0",
50
- "@dxos/codec-protobuf": "0.8.0",
51
- "@dxos/debug": "0.8.0",
52
- "@dxos/display-name": "0.8.0",
53
- "@dxos/invariant": "0.8.0",
54
- "@dxos/echo-db": "0.8.0",
55
- "@dxos/echo-schema": "0.8.0",
56
- "@dxos/keys": "0.8.0",
57
- "@dxos/live-object": "0.8.0",
58
- "@dxos/log": "0.8.0",
59
- "@dxos/plugin-client": "0.8.0",
60
- "@dxos/plugin-graph": "0.8.0",
61
- "@dxos/plugin-markdown": "0.8.0",
62
- "@dxos/protocols": "0.8.0",
63
- "@dxos/react-edge-client": "0.8.0",
64
- "@dxos/plugin-space": "0.8.0",
65
- "@dxos/react-ui-components": "0.8.0",
66
- "@dxos/react-client": "0.8.0",
67
- "@dxos/react-ui-sfx": "0.8.0",
68
- "@dxos/schema": "0.8.0",
69
- "@dxos/react-ui-stack": "0.8.0",
70
- "@dxos/tracing": "0.8.0",
71
- "@dxos/util": "0.8.0"
45
+ "@dxos/app-framework": "0.8.1-main.013e445",
46
+ "@dxos/assistant": "0.8.1-main.013e445",
47
+ "@dxos/async": "0.8.1-main.013e445",
48
+ "@dxos/client": "0.8.1-main.013e445",
49
+ "@dxos/context": "0.8.1-main.013e445",
50
+ "@dxos/artifact": "0.8.1-main.013e445",
51
+ "@dxos/codec-protobuf": "0.8.1-main.013e445",
52
+ "@dxos/debug": "0.8.1-main.013e445",
53
+ "@dxos/display-name": "0.8.1-main.013e445",
54
+ "@dxos/invariant": "0.8.1-main.013e445",
55
+ "@dxos/echo-db": "0.8.1-main.013e445",
56
+ "@dxos/keys": "0.8.1-main.013e445",
57
+ "@dxos/live-object": "0.8.1-main.013e445",
58
+ "@dxos/log": "0.8.1-main.013e445",
59
+ "@dxos/echo-schema": "0.8.1-main.013e445",
60
+ "@dxos/plugin-client": "0.8.1-main.013e445",
61
+ "@dxos/plugin-graph": "0.8.1-main.013e445",
62
+ "@dxos/plugin-markdown": "0.8.1-main.013e445",
63
+ "@dxos/plugin-space": "0.8.1-main.013e445",
64
+ "@dxos/protocols": "0.8.1-main.013e445",
65
+ "@dxos/react-client": "0.8.1-main.013e445",
66
+ "@dxos/react-edge-client": "0.8.1-main.013e445",
67
+ "@dxos/react-ui-attention": "0.8.1-main.013e445",
68
+ "@dxos/react-ui-components": "0.8.1-main.013e445",
69
+ "@dxos/react-ui-grid": "0.8.1-main.013e445",
70
+ "@dxos/react-ui-sfx": "0.8.1-main.013e445",
71
+ "@dxos/react-ui-stack": "0.8.1-main.013e445",
72
+ "@dxos/tracing": "0.8.1-main.013e445",
73
+ "@dxos/schema": "0.8.1-main.013e445",
74
+ "@dxos/util": "0.8.1-main.013e445"
72
75
  },
73
76
  "devDependencies": {
74
77
  "@types/react": "~18.2.0",
75
78
  "react": "~18.2.0",
76
79
  "react-dom": "~18.2.0",
77
80
  "tailwindcss": "~3.4.1",
78
- "@dxos/random": "0.8.0",
79
- "@dxos/react-ui": "0.8.0",
80
- "@dxos/react-ui-theme": "0.8.0",
81
- "@dxos/storybook-utils": "0.8.0",
82
- "@dxos/test-utils": "0.8.0"
81
+ "@dxos/random": "0.8.1-main.013e445",
82
+ "@dxos/react-ui": "0.8.1-main.013e445",
83
+ "@dxos/react-ui-theme": "0.8.1-main.013e445",
84
+ "@dxos/storybook-utils": "0.8.1-main.013e445",
85
+ "@dxos/test-utils": "0.8.1-main.013e445"
83
86
  },
84
87
  "optionalDependencies": {
85
88
  "react": "~18.2.0",
86
89
  "react-dom": "~18.2.0",
87
- "@dxos/react-ui": "0.8.0",
88
- "@dxos/react-ui-theme": "0.8.0"
90
+ "@dxos/react-ui": "0.8.1-main.013e445",
91
+ "@dxos/react-ui-theme": "0.8.1-main.013e445"
89
92
  },
90
93
  "publishConfig": {
91
94
  "access": "public"
@@ -6,7 +6,7 @@ import { Capabilities, Events, contributes, defineModule, definePlugin } from '@
6
6
  import { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';
7
7
 
8
8
  import { AppGraphBuilder, IntentResolver, ReactSurface, TranscriptionCapabilities } from './capabilities';
9
- import { meta, TRANSCRIPTION_PLUGIN } from './meta';
9
+ import { meta } from './meta';
10
10
  import translations from './translations';
11
11
  import { TranscriptType } from './types';
12
12
 
@@ -29,7 +29,6 @@ export const TranscriptionPlugin = () =>
29
29
  contributes(Capabilities.Metadata, {
30
30
  id: TranscriptType.typename,
31
31
  metadata: {
32
- placeholder: ['transcript title placeholder', { ns: TRANSCRIPTION_PLUGIN }],
33
32
  icon: 'ph--subtitles--regular',
34
33
  },
35
34
  }),
@@ -2,6 +2,29 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';
5
+ import { Capabilities, contributes, createIntent, type PluginsContext } from '@dxos/app-framework';
6
+ import { createExtension, type Node } from '@dxos/plugin-graph';
6
7
 
7
- export default (context: PluginsContext) => contributes(Capabilities.AppGraphBuilder, []);
8
+ import { TRANSCRIPTION_PLUGIN } from '../meta';
9
+ import { TranscriptionAction, TranscriptType } from '../types';
10
+
11
+ export default (context: PluginsContext) =>
12
+ contributes(Capabilities.AppGraphBuilder, [
13
+ createExtension({
14
+ id: `${TRANSCRIPTION_PLUGIN}/transcription`,
15
+ filter: (node): node is Node<TranscriptType> => node.data instanceof TranscriptType,
16
+ actions: () => [
17
+ {
18
+ id: `${TRANSCRIPTION_PLUGIN}/transcription`,
19
+ data: async () => {
20
+ const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);
21
+ await dispatch(createIntent(TranscriptionAction.Summarize));
22
+ },
23
+ properties: {
24
+ label: ['summarize label', { ns: TRANSCRIPTION_PLUGIN }],
25
+ icon: 'ph--book-open-text--regular',
26
+ },
27
+ },
28
+ ],
29
+ }),
30
+ ]);
@@ -3,8 +3,14 @@
3
3
  //
4
4
 
5
5
  import { Capabilities, contributes, createResolver, type PluginsContext } from '@dxos/app-framework';
6
+ import { AIServiceEdgeClient } from '@dxos/assistant';
7
+ import { invariant } from '@dxos/invariant';
6
8
  import { create } from '@dxos/live-object';
9
+ import { ClientCapabilities } from '@dxos/plugin-client';
10
+ import { type SpaceId } from '@dxos/react-client/echo';
11
+ import { EdgeHttpClient } from '@dxos/react-edge-client';
7
12
 
13
+ import { summarizeTranscript } from '../transcriber';
8
14
  import { TranscriptionAction, TranscriptType } from '../types';
9
15
  import { getTimeStr, randomQueueDxn } from '../util';
10
16
 
@@ -12,13 +18,29 @@ export default (context: PluginsContext) =>
12
18
  contributes(Capabilities.IntentResolver, [
13
19
  createResolver({
14
20
  intent: TranscriptionAction.Create,
15
- resolve: ({ name }) => {
21
+ resolve: ({ name, spaceId }) => {
16
22
  const transcript = create(TranscriptType, {
17
- queue: randomQueueDxn().toString(), // TODO(burdon): Associate with space.
23
+ queue: randomQueueDxn(spaceId as SpaceId).toString(),
18
24
  name: name ?? `Transcript ${getTimeStr(Date.now())}`,
19
25
  });
20
26
 
21
27
  return { data: { object: transcript } };
22
28
  },
23
29
  }),
30
+
31
+ createResolver({
32
+ intent: TranscriptionAction.Summarize,
33
+ resolve: async ({ transcript, context: _context }) => {
34
+ // TODO(wittjosiah): Use capability (but note that this creates a dependency on the assistant plugin being available for summarization to work).
35
+ const client = context.requestCapability(ClientCapabilities.Client);
36
+ const edgeUrl = client.config.values.runtime?.services?.edge?.url;
37
+ invariant(edgeUrl, 'EDGE services not configured.');
38
+ const edge = new EdgeHttpClient(edgeUrl);
39
+ const endpoint = client.config.values.runtime?.services?.ai?.server;
40
+ invariant(endpoint, 'AI service not configured.');
41
+ const ai = new AIServiceEdgeClient({ endpoint });
42
+ const summary = await summarizeTranscript(edge, ai, transcript, _context);
43
+ return { data: summary };
44
+ },
45
+ }),
24
46
  ]);
@@ -14,8 +14,8 @@ export default () =>
14
14
  contributes(Capabilities.ReactSurface, [
15
15
  createSurface({
16
16
  id: TRANSCRIPTION_PLUGIN,
17
- role: 'article',
17
+ role: ['article', 'section', 'tabpanel'],
18
18
  filter: (data): data is { subject: TranscriptType } => isTranscript(data.subject),
19
- component: ({ data, role }) => <TranscriptionContainer transcript={data.subject} />,
19
+ component: ({ data, role }) => <TranscriptionContainer transcript={data.subject} role={role} />,
20
20
  }),
21
21
  ]);