@dxos/plugin-transcription 0.8.4-main.bc674ce → 0.8.4-main.bcb3aa67d6

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 (221) hide show
  1. package/dist/lib/browser/blueprints/index.mjs +27 -5
  2. package/dist/lib/browser/blueprints/index.mjs.map +4 -4
  3. package/dist/lib/browser/chunk-RIUSFL62.mjs +112 -0
  4. package/dist/lib/browser/chunk-RIUSFL62.mjs.map +7 -0
  5. package/dist/lib/browser/chunk-YXU2ZO6W.mjs +17 -0
  6. package/dist/lib/browser/chunk-YXU2ZO6W.mjs.map +7 -0
  7. package/dist/lib/browser/create-IZPB7VZW.mjs +19 -0
  8. package/dist/lib/browser/create-IZPB7VZW.mjs.map +7 -0
  9. package/dist/lib/browser/index.mjs +1154 -60
  10. package/dist/lib/browser/index.mjs.map +4 -4
  11. package/dist/lib/browser/meta.json +1 -1
  12. package/dist/lib/browser/open-SN5O5I6X.mjs +29 -0
  13. package/dist/lib/browser/open-SN5O5I6X.mjs.map +7 -0
  14. package/dist/lib/browser/operations/index.mjs +13 -0
  15. package/dist/lib/browser/operations/index.mjs.map +7 -0
  16. package/dist/lib/browser/summarize-5MZENAU5.mjs +71 -0
  17. package/dist/lib/browser/summarize-5MZENAU5.mjs.map +7 -0
  18. package/dist/lib/browser/types/index.mjs +1 -5
  19. package/dist/lib/node-esm/blueprints/index.mjs +27 -5
  20. package/dist/lib/node-esm/blueprints/index.mjs.map +4 -4
  21. package/dist/lib/node-esm/chunk-3GSFEN4L.mjs +113 -0
  22. package/dist/lib/node-esm/chunk-3GSFEN4L.mjs.map +7 -0
  23. package/dist/lib/node-esm/chunk-BR2R6PCT.mjs +19 -0
  24. package/dist/lib/node-esm/chunk-BR2R6PCT.mjs.map +7 -0
  25. package/dist/lib/node-esm/create-TQDGXQBL.mjs +20 -0
  26. package/dist/lib/node-esm/create-TQDGXQBL.mjs.map +7 -0
  27. package/dist/lib/node-esm/index.mjs +1154 -60
  28. package/dist/lib/node-esm/index.mjs.map +4 -4
  29. package/dist/lib/node-esm/meta.json +1 -1
  30. package/dist/lib/node-esm/open-4GAAWWKJ.mjs +30 -0
  31. package/dist/lib/node-esm/open-4GAAWWKJ.mjs.map +7 -0
  32. package/dist/lib/node-esm/operations/index.mjs +14 -0
  33. package/dist/lib/node-esm/operations/index.mjs.map +7 -0
  34. package/dist/lib/node-esm/summarize-RVOSRHEC.mjs +72 -0
  35. package/dist/lib/node-esm/summarize-RVOSRHEC.mjs.map +7 -0
  36. package/dist/lib/node-esm/types/index.mjs +1 -5
  37. package/dist/types/src/TranscriptionPlugin.d.ts.map +1 -1
  38. package/dist/types/src/blueprints/index.d.ts +1 -1
  39. package/dist/types/src/blueprints/index.d.ts.map +1 -1
  40. package/dist/types/src/blueprints/transcription-blueprint.d.ts +3 -20
  41. package/dist/types/src/blueprints/transcription-blueprint.d.ts.map +1 -1
  42. package/dist/types/src/capabilities/blueprint-definition.d.ts +6 -0
  43. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  44. package/dist/types/src/capabilities/index.d.ts +6 -4
  45. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  46. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  47. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  48. package/dist/types/src/capabilities/react-surface.d.ts +5 -0
  49. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  50. package/dist/types/src/capabilities/transcriber.d.ts +9 -0
  51. package/dist/types/src/capabilities/transcriber.d.ts.map +1 -0
  52. package/dist/types/src/components/{Transcript/Transcript.d.ts → Transcription/Transcription.d.ts} +10 -5
  53. package/dist/types/src/components/Transcription/Transcription.d.ts.map +1 -0
  54. package/dist/types/src/components/{Transcript/Transcript.stories.d.ts → Transcription/Transcription.stories.d.ts} +12 -12
  55. package/dist/types/src/components/Transcription/Transcription.stories.d.ts.map +1 -0
  56. package/dist/types/src/components/Transcription/index.d.ts +2 -0
  57. package/dist/types/src/components/Transcription/index.d.ts.map +1 -0
  58. package/dist/types/src/components/{Transcript/transcript-extension.d.ts → Transcription/transcription-extension.d.ts} +3 -3
  59. package/dist/types/src/components/Transcription/transcription-extension.d.ts.map +1 -0
  60. package/dist/types/src/components/index.d.ts +1 -3
  61. package/dist/types/src/components/index.d.ts.map +1 -1
  62. package/dist/types/src/components/stories/FileTranscription.stories.d.ts.map +1 -1
  63. package/dist/types/src/components/stories/KeyWordRecognition.stories.d.ts +2 -2
  64. package/dist/types/src/components/stories/KeyWordRecognition.stories.d.ts.map +1 -1
  65. package/dist/types/src/components/stories/MicrophoneTranscription.stories.d.ts +2 -2
  66. package/dist/types/src/components/stories/MicrophoneTranscription.stories.d.ts.map +1 -1
  67. package/dist/types/src/components/stories/TranscriptionStory.d.ts.map +1 -1
  68. package/dist/types/src/containers/TranscriptionContainer/TranscriptionContainer.d.ts +6 -0
  69. package/dist/types/src/containers/TranscriptionContainer/TranscriptionContainer.d.ts.map +1 -0
  70. package/dist/types/src/containers/TranscriptionContainer/index.d.ts +3 -0
  71. package/dist/types/src/containers/TranscriptionContainer/index.d.ts.map +1 -0
  72. package/dist/types/src/containers/index.d.ts +3 -0
  73. package/dist/types/src/containers/index.d.ts.map +1 -0
  74. package/dist/types/src/hooks/useTranscriber.d.ts +1 -1
  75. package/dist/types/src/hooks/useTranscriber.d.ts.map +1 -1
  76. package/dist/types/src/operations/create.d.ts +5 -0
  77. package/dist/types/src/operations/create.d.ts.map +1 -0
  78. package/dist/types/src/operations/definitions.d.ts +905 -0
  79. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  80. package/dist/types/src/operations/index.d.ts +4 -0
  81. package/dist/types/src/operations/index.d.ts.map +1 -0
  82. package/dist/types/src/operations/open.d.ts +5 -0
  83. package/dist/types/src/operations/open.d.ts.map +1 -0
  84. package/dist/types/src/operations/summarize.d.ts +8 -0
  85. package/dist/types/src/operations/summarize.d.ts.map +1 -0
  86. package/dist/types/src/segments-normalization/normalization.d.ts +41 -200
  87. package/dist/types/src/segments-normalization/normalization.d.ts.map +1 -1
  88. package/dist/types/src/testing/testing.d.ts.map +1 -1
  89. package/dist/types/src/translations.d.ts +7 -7
  90. package/dist/types/src/translations.d.ts.map +1 -1
  91. package/dist/types/src/types/index.d.ts +0 -2
  92. package/dist/types/src/types/index.d.ts.map +1 -1
  93. package/dist/types/tsconfig.tsbuildinfo +1 -1
  94. package/package.json +86 -65
  95. package/src/TranscriptionPlugin.tsx +17 -13
  96. package/src/blueprints/index.ts +1 -1
  97. package/src/blueprints/transcription-blueprint.ts +13 -8
  98. package/src/capabilities/blueprint-definition.ts +17 -0
  99. package/src/capabilities/index.ts +10 -4
  100. package/src/capabilities/operation-handler.ts +16 -0
  101. package/src/capabilities/react-surface.tsx +30 -0
  102. package/src/capabilities/{transcriber/transcriber.ts → transcriber.ts} +6 -6
  103. package/src/components/{Transcript/Transcript.stories.tsx → Transcription/Transcription.stories.tsx} +17 -14
  104. package/src/components/Transcription/Transcription.tsx +65 -0
  105. package/src/components/{Transcript → Transcription}/index.ts +1 -1
  106. package/src/components/{Transcript/transcript-extension.ts → Transcription/transcription-extension.ts} +4 -4
  107. package/src/components/index.ts +1 -6
  108. package/src/components/stories/FileTranscription.stories.tsx +9 -11
  109. package/src/components/stories/KeyWordRecognition.stories.tsx +6 -6
  110. package/src/components/stories/MicrophoneTranscription.stories.tsx +13 -31
  111. package/src/components/stories/TranscriptionStory.tsx +7 -5
  112. package/src/containers/TranscriptionContainer/TranscriptionContainer.tsx +32 -0
  113. package/src/containers/TranscriptionContainer/index.ts +7 -0
  114. package/src/containers/index.ts +7 -0
  115. package/src/hooks/useTranscriber.ts +2 -2
  116. package/src/meta.ts +1 -1
  117. package/src/model/model.test.ts +6 -6
  118. package/src/operations/create.ts +22 -0
  119. package/src/operations/definitions.ts +102 -0
  120. package/src/operations/index.ts +13 -0
  121. package/src/operations/open.ts +31 -0
  122. package/src/{functions → operations}/summarize.ts +41 -47
  123. package/src/segments-normalization/normalization.test.ts +1 -1
  124. package/src/segments-normalization/normalization.ts +33 -71
  125. package/src/testing/testing.ts +1 -11
  126. package/src/transcriber/transcriber.ts +1 -1
  127. package/src/translations.ts +7 -7
  128. package/src/types/capabilities.ts +3 -3
  129. package/src/types/index.ts +0 -2
  130. package/dist/lib/browser/TranscriptContainer-6EHKWVS4.mjs +0 -12
  131. package/dist/lib/browser/TranscriptContainer-6EHKWVS4.mjs.map +0 -7
  132. package/dist/lib/browser/blueprint-definition-FTRNMLJZ.mjs +0 -18
  133. package/dist/lib/browser/blueprint-definition-FTRNMLJZ.mjs.map +0 -7
  134. package/dist/lib/browser/chunk-ICM7JRCO.mjs +0 -698
  135. package/dist/lib/browser/chunk-ICM7JRCO.mjs.map +0 -7
  136. package/dist/lib/browser/chunk-Q5OC3WVG.mjs +0 -72
  137. package/dist/lib/browser/chunk-Q5OC3WVG.mjs.map +0 -7
  138. package/dist/lib/browser/chunk-SYGEFDWO.mjs +0 -8
  139. package/dist/lib/browser/chunk-SYGEFDWO.mjs.map +0 -7
  140. package/dist/lib/browser/chunk-TKFU53OZ.mjs +0 -460
  141. package/dist/lib/browser/chunk-TKFU53OZ.mjs.map +0 -7
  142. package/dist/lib/browser/chunk-ZZF7ICVM.mjs +0 -150
  143. package/dist/lib/browser/chunk-ZZF7ICVM.mjs.map +0 -7
  144. package/dist/lib/browser/operation-resolver-ZUWTU7C5.mjs +0 -22
  145. package/dist/lib/browser/operation-resolver-ZUWTU7C5.mjs.map +0 -7
  146. package/dist/lib/browser/react-surface-ZXH5267I.mjs +0 -34
  147. package/dist/lib/browser/react-surface-ZXH5267I.mjs.map +0 -7
  148. package/dist/lib/browser/transcriber-EZZTUCPE.mjs +0 -60
  149. package/dist/lib/browser/transcriber-EZZTUCPE.mjs.map +0 -7
  150. package/dist/lib/node-esm/TranscriptContainer-5YT5W73I.mjs +0 -13
  151. package/dist/lib/node-esm/TranscriptContainer-5YT5W73I.mjs.map +0 -7
  152. package/dist/lib/node-esm/blueprint-definition-IOX35YUX.mjs +0 -19
  153. package/dist/lib/node-esm/blueprint-definition-IOX35YUX.mjs.map +0 -7
  154. package/dist/lib/node-esm/chunk-4BFY6P2D.mjs +0 -73
  155. package/dist/lib/node-esm/chunk-4BFY6P2D.mjs.map +0 -7
  156. package/dist/lib/node-esm/chunk-BX2AB7S7.mjs +0 -699
  157. package/dist/lib/node-esm/chunk-BX2AB7S7.mjs.map +0 -7
  158. package/dist/lib/node-esm/chunk-CWP22IHV.mjs +0 -151
  159. package/dist/lib/node-esm/chunk-CWP22IHV.mjs.map +0 -7
  160. package/dist/lib/node-esm/chunk-EPC27WWV.mjs +0 -461
  161. package/dist/lib/node-esm/chunk-EPC27WWV.mjs.map +0 -7
  162. package/dist/lib/node-esm/chunk-GVAVEVZ6.mjs +0 -10
  163. package/dist/lib/node-esm/chunk-GVAVEVZ6.mjs.map +0 -7
  164. package/dist/lib/node-esm/operation-resolver-Z72B4H2Q.mjs +0 -23
  165. package/dist/lib/node-esm/operation-resolver-Z72B4H2Q.mjs.map +0 -7
  166. package/dist/lib/node-esm/react-surface-6GUBZX2V.mjs +0 -35
  167. package/dist/lib/node-esm/react-surface-6GUBZX2V.mjs.map +0 -7
  168. package/dist/lib/node-esm/transcriber-RGW3YYT4.mjs +0 -61
  169. package/dist/lib/node-esm/transcriber-RGW3YYT4.mjs.map +0 -7
  170. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +0 -9
  171. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +0 -1
  172. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +0 -3
  173. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +0 -1
  174. package/dist/types/src/capabilities/operation-handler/index.d.ts +0 -3
  175. package/dist/types/src/capabilities/operation-handler/index.d.ts.map +0 -1
  176. package/dist/types/src/capabilities/operation-handler/operation-handler.d.ts +0 -5
  177. package/dist/types/src/capabilities/operation-handler/operation-handler.d.ts.map +0 -1
  178. package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
  179. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
  180. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
  181. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
  182. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  183. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  184. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
  185. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  186. package/dist/types/src/capabilities/transcriber/index.d.ts +0 -3
  187. package/dist/types/src/capabilities/transcriber/index.d.ts.map +0 -1
  188. package/dist/types/src/capabilities/transcriber/transcriber.d.ts +0 -9
  189. package/dist/types/src/capabilities/transcriber/transcriber.d.ts.map +0 -1
  190. package/dist/types/src/components/Transcript/Transcript.d.ts.map +0 -1
  191. package/dist/types/src/components/Transcript/Transcript.stories.d.ts.map +0 -1
  192. package/dist/types/src/components/Transcript/deprecated/OldTranscript.d.ts +0 -28
  193. package/dist/types/src/components/Transcript/deprecated/OldTranscript.d.ts.map +0 -1
  194. package/dist/types/src/components/Transcript/index.d.ts +0 -2
  195. package/dist/types/src/components/Transcript/index.d.ts.map +0 -1
  196. package/dist/types/src/components/Transcript/transcript-extension.d.ts.map +0 -1
  197. package/dist/types/src/components/TranscriptContainer.d.ts +0 -7
  198. package/dist/types/src/components/TranscriptContainer.d.ts.map +0 -1
  199. package/dist/types/src/functions/index.d.ts +0 -3
  200. package/dist/types/src/functions/index.d.ts.map +0 -1
  201. package/dist/types/src/functions/open.d.ts +0 -7
  202. package/dist/types/src/functions/open.d.ts.map +0 -1
  203. package/dist/types/src/functions/summarize.d.ts +0 -11
  204. package/dist/types/src/functions/summarize.d.ts.map +0 -1
  205. package/dist/types/src/types/TranscriptAction.d.ts +0 -25
  206. package/dist/types/src/types/TranscriptAction.d.ts.map +0 -1
  207. package/src/capabilities/blueprint-definition/blueprint-definition.ts +0 -23
  208. package/src/capabilities/blueprint-definition/index.ts +0 -7
  209. package/src/capabilities/operation-handler/index.ts +0 -7
  210. package/src/capabilities/operation-handler/operation-handler.ts +0 -25
  211. package/src/capabilities/operation-resolver/index.ts +0 -7
  212. package/src/capabilities/operation-resolver/operation-resolver.ts +0 -25
  213. package/src/capabilities/react-surface/index.ts +0 -7
  214. package/src/capabilities/react-surface/react-surface.tsx +0 -27
  215. package/src/capabilities/transcriber/index.ts +0 -7
  216. package/src/components/Transcript/Transcript.tsx +0 -66
  217. package/src/components/Transcript/deprecated/OldTranscript.tsx +0 -260
  218. package/src/components/TranscriptContainer.tsx +0 -34
  219. package/src/functions/index.ts +0 -6
  220. package/src/functions/open.ts +0 -39
  221. package/src/types/TranscriptAction.ts +0 -32
@@ -7,67 +7,61 @@ import * as Effect from 'effect/Effect';
7
7
  import * as Function from 'effect/Function';
8
8
  import * as Layer from 'effect/Layer';
9
9
  import * as Option from 'effect/Option';
10
- import * as Schema from 'effect/Schema';
11
10
 
12
11
  import { AiService, ConsolePrinter, ToolExecutionService, ToolResolverService } from '@dxos/ai';
13
12
  import { AiSession, GenerationObserver } from '@dxos/assistant';
14
- import { TracingService, defineFunction } from '@dxos/functions';
13
+ import { FunctionInvocationService, TracingService } from '@dxos/functions';
14
+ import * as Trace from '@dxos/functions/Trace';
15
+ import { Operation } from '@dxos/operation';
15
16
  import { trim } from '@dxos/util';
16
17
 
18
+ import { Summarize } from './definitions';
19
+
17
20
  /**
18
21
  * Summarize a transcript of a meeting.
19
22
  */
20
- export default defineFunction({
21
- key: 'dxos.org/function/transcription/summarize',
22
- name: 'Summarize',
23
- description: 'Summarize a transcript of a meeting.',
24
- inputSchema: Schema.Struct({
25
- transcript: Schema.String.annotations({
26
- description: 'The transcript of the meeting.',
27
- }),
28
- notes: Schema.optional(Schema.String).annotations({
29
- description: 'Additional notes from the participants.',
30
- }),
31
- }),
32
- outputSchema: Schema.Struct({
33
- summary: Schema.String.annotations({
34
- description: 'The summary of the transcript.',
35
- }),
36
- }),
37
- handler: Effect.fnUntraced(
38
- function* ({ data: { transcript, notes } }) {
39
- const result = yield* new AiSession().run({
40
- prompt: `Transcript: ${transcript}\n\nNotes: ${notes}`,
41
- history: [],
42
- system: systemPrompt,
43
- observer: GenerationObserver.fromPrinter(new ConsolePrinter({ tag: 'summarize' })),
44
- });
23
+ const handler: Operation.WithHandler<typeof Summarize> = Summarize.pipe(
24
+ Operation.withHandler(
25
+ Effect.fnUntraced(
26
+ function* ({ transcript, notes }) {
27
+ const result = yield* new AiSession({
28
+ observer: GenerationObserver.fromPrinter(new ConsolePrinter({ tag: 'summarize' })),
29
+ }).run({
30
+ prompt: `Transcript: ${transcript}\n\nNotes: ${notes}`,
31
+ history: [],
32
+ system: systemPrompt,
33
+ });
45
34
 
46
- const summary = Function.pipe(
47
- result,
48
- Array.findLast((msg) => msg.sender.role === 'assistant' && msg.blocks.some((block) => block._tag === 'text')),
49
- Option.flatMap((msg) =>
50
- Function.pipe(
51
- msg.blocks,
52
- Array.findLast((block) => block._tag === 'text'),
53
- Option.map((block) => block.text),
35
+ const summary = Function.pipe(
36
+ result,
37
+ Array.findLast((msg) => msg.sender.role === 'assistant' && msg.blocks.some((block) => block._tag === 'text')),
38
+ Option.flatMap((msg) =>
39
+ Function.pipe(
40
+ msg.blocks,
41
+ Array.findLast((block) => block._tag === 'text'),
42
+ Option.map((block) => block.text),
43
+ ),
54
44
  ),
55
- ),
56
- Option.getOrThrowWith(() => new Error('No summary found')),
57
- );
45
+ Option.getOrThrowWith(() => new Error('No summary found')),
46
+ );
58
47
 
59
- return { summary };
60
- },
61
- Effect.provide(
62
- Layer.mergeAll(
63
- AiService.model('@anthropic/claude-sonnet-4-0'),
64
- ToolResolverService.layerEmpty,
65
- ToolExecutionService.layerEmpty,
66
- TracingService.layerNoop,
48
+ return { summary };
49
+ },
50
+ Effect.provide(
51
+ Layer.mergeAll(
52
+ AiService.model('@anthropic/claude-sonnet-4-0'),
53
+ ToolResolverService.layerEmpty,
54
+ ToolExecutionService.layerEmpty,
55
+ TracingService.layerNoop,
56
+ FunctionInvocationService.layerNotAvailable,
57
+ Trace.writerLayerNoop,
58
+ ),
67
59
  ),
68
60
  ),
69
61
  ),
70
- });
62
+ );
63
+
64
+ export default handler;
71
65
 
72
66
  const systemPrompt = trim`
73
67
  You are a helpful assistant that summarizes transcripts of meetings.
@@ -98,7 +98,7 @@ describe.skip('SentenceNormalization', () => {
98
98
  }
99
99
 
100
100
  log.info('sentences', {
101
- originalMessages: JSON.stringify(messages, null, 2),
101
+ messages: JSON.stringify(messages, null, 2),
102
102
  sentences: JSON.stringify(sentences, null, 2),
103
103
  });
104
104
  throw new Error('test');
@@ -2,85 +2,47 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- // ISSUE(burdon): defineFunction
6
- // @ts-nocheck
7
-
5
+ import * as Effect from 'effect/Effect';
8
6
  import * as Schema from 'effect/Schema';
9
7
 
10
- import { AiService, DEFAULT_EDGE_MODEL } from '@dxos/ai';
11
- import { AiSession } from '@dxos/assistant';
12
- import { Obj } from '@dxos/echo';
13
- import { defineFunction } from '@dxos/functions';
14
- import { ObjectId } from '@dxos/keys';
15
8
  import { log } from '@dxos/log';
16
- import { Message } from '@dxos/types';
9
+ import { Operation } from '@dxos/operation';
17
10
  import { trim } from '@dxos/util';
18
11
 
19
- const MessageWithRangeId = Schema.extend(
20
- Message.Message,
21
- Schema.Struct({
22
- // TODO(mykola): Move to meta in Message. Use `Message.Message` instead.
23
- rangeId: Schema.optional(Schema.Array(Schema.String)).annotations({
24
- description: 'The IDs of the messages that contain the sentences.',
12
+ import {
13
+ SentenceNormalization,
14
+ SentenceNormalizationOutput,
15
+ type MessageWithRangeIdType,
16
+ type SentenceNormalizationInputType,
17
+ } from '../operations/definitions';
18
+
19
+ export type MessageWithRangeId = MessageWithRangeIdType;
20
+
21
+ /** @deprecated Use SentenceNormalizationInputType */
22
+ export type NormalizationInput = SentenceNormalizationInputType;
23
+
24
+ /** @deprecated Use SentenceNormalizationOutput */
25
+ export type NormalizationOutput = Schema.Schema.Type<typeof SentenceNormalizationOutput>;
26
+
27
+ /**
28
+ * Sentence normalization for transcription.
29
+ * TODO(dmaretskyi): Reimplement using AiSession.run or LanguageModel.generateObject - runStructured was removed.
30
+ */
31
+ export const sentenceNormalization = SentenceNormalization.pipe(
32
+ Operation.withHandler(
33
+ Effect.fn(function* ({ messages }) {
34
+ log.info('input', { messages });
35
+ // TODO(dmaretskyi): runStructured was removed from AiSession. Reimplement using new API.
36
+ return yield* Effect.die(
37
+ new Error(
38
+ 'Sentence normalization needs to be reimplemented - runStructured was removed from AiSession. Use AiSession.run or LanguageModel.generateObject.',
39
+ ),
40
+ );
25
41
  }),
26
- }),
42
+ ),
27
43
  );
28
44
 
29
- export interface MessageWithRangeId extends Schema.Schema.Type<typeof MessageWithRangeId> {}
30
-
31
- export const NormalizationInput = Schema.Struct({
32
- // TODO(mykola): Move to meta in Message. Use `Message.Message` instead.
33
- messages: Schema.Array(MessageWithRangeId).annotations({
34
- description: 'Messages to normalize into sentences.',
35
- }),
36
- });
37
- export interface NormalizationInput extends Schema.Schema.Type<typeof NormalizationInput> {}
38
-
39
- export const NormalizationOutput = Schema.Struct({
40
- sentences: Schema.Array(MessageWithRangeId.pipe(Schema.mutable)).pipe(Schema.mutable).annotations({
41
- description: 'The sentences of the transcript.',
42
- }),
43
- });
44
- export interface NormalizationOutput extends Schema.Schema.Type<typeof NormalizationOutput> {}
45
-
46
- export const sentenceNormalization = defineFunction<NormalizationInput, NormalizationOutput>({
47
- description: 'Post process of transcription for sentence normalization',
48
- inputSchema: NormalizationInput,
49
- outputSchema: NormalizationOutput,
50
- handler: async ({ data: { messages }, context }) => {
51
- log.info('input', { messages });
52
- const ai = context.getService(AiService);
53
- const session = new AiSession({ operationModel: 'configured' });
54
-
55
- // TODO(dmaretskyi): This got broken after effect-ai transition.
56
- const response = session.runStructured(NormalizationOutput, {
57
- generationOptions: {
58
- model: DEFAULT_EDGE_MODEL,
59
- },
60
- client: ai.client,
61
- tools: [],
62
- artifacts: [],
63
- history: [
64
- Obj.make(Message.Message, {
65
- created: new Date().toISOString(),
66
- sender: {
67
- role: 'user',
68
- },
69
- blocks: messages.map((message) => ({ _tag: 'text', text: JSON.stringify(message) }) as const),
70
- }),
71
- ],
72
- prompt,
73
- }) as any;
74
-
75
- response.sentences.forEach((sentence) => {
76
- sentence.id = ObjectId.random();
77
- });
78
- log.info('response', { response });
79
- return response;
80
- },
81
- });
82
-
83
- const prompt = trim`
45
+ const _unusedPrompt = trim`
84
46
  You are observing a real-time transcript of a single person speaking.
85
47
  The transcription is delivered in chunks of 10 seconds or less. As a result, individual sentences may be split across multiple messages, or multiple sentences may appear within a single message. Additionally, because this is real-time transcription, punctuation and capitalization may be incorrect or missing.
86
48
 
@@ -11,7 +11,6 @@ import { Filter, type Queue } from '@dxos/client/echo';
11
11
  import { Context } from '@dxos/context';
12
12
  import { type Key, Obj, Ref, Type } from '@dxos/echo';
13
13
  import { createQueueDXN } from '@dxos/echo/internal';
14
- import { FunctionExecutor, ServiceContainer } from '@dxos/functions-runtime';
15
14
  import { IdentityDid } from '@dxos/keys';
16
15
  import { log } from '@dxos/log';
17
16
  import { faker } from '@dxos/random';
@@ -32,7 +31,7 @@ export const TestItem = Schema.Struct({
32
31
  }),
33
32
  }).pipe(
34
33
  Type.object({
35
- typename: 'dxos.org/type/Test',
34
+ typename: 'org.dxos.type.test',
36
35
  version: '0.1.0',
37
36
  }),
38
37
  );
@@ -99,14 +98,6 @@ export class MessageBuilder extends AbstractMessageBuilder {
99
98
 
100
99
  // TODO(burdon): Reconcile with BlockBuilder.
101
100
  class EntityExtractionMessageBuilder extends AbstractMessageBuilder {
102
- executor = new FunctionExecutor(
103
- new ServiceContainer().setServices({
104
- // ai: {
105
- // client: this.AiService,
106
- // },
107
- }),
108
- );
109
-
110
101
  space: Space | undefined;
111
102
  currentMessage: number = 0;
112
103
  transcriptMessages: Message.Message[] = [];
@@ -139,7 +130,6 @@ class EntityExtractionMessageBuilder extends AbstractMessageBuilder {
139
130
 
140
131
  const { message: enhancedMessage } = await processTranscriptMessage({
141
132
  input: { message },
142
- executor: this.executor,
143
133
  function: extractionAnthropicFunction,
144
134
  });
145
135
 
@@ -10,7 +10,7 @@ import { log } from '@dxos/log';
10
10
  import { trace } from '@dxos/tracing';
11
11
  import { type ContentBlock } from '@dxos/types';
12
12
 
13
- import { TRANSCRIPTION_URL } from '../types';
13
+ import { TRANSCRIPTION_URL } from '#types';
14
14
  import { mergeFloat64Arrays } from '../util';
15
15
 
16
16
  import { type AudioChunk, type AudioRecorder } from './audio-recorder';
@@ -4,20 +4,20 @@
4
4
 
5
5
  import { type Resource } from '@dxos/react-ui';
6
6
 
7
- import { meta } from './meta';
7
+ import { meta } from '#meta';
8
8
 
9
9
  export const translations = [
10
10
  {
11
11
  'en-US': {
12
12
  [meta.id]: {
13
- 'plugin name': 'Transcription',
14
- 'transcript companion label': 'Transcript',
13
+ 'plugin.name': 'Transcription',
14
+ 'transcript-companion.label': 'Transcript',
15
15
 
16
- 'delete button': 'Delete',
17
- 'bookmark button': 'Bookmark',
18
- 'scroll to end label': 'Scroll to latest',
16
+ 'delete.button': 'Delete',
17
+ 'bookmark.button': 'Bookmark',
18
+ 'scroll-to-end.label': 'Scroll to latest',
19
19
 
20
- 'settings entity extraction label': 'Entity extraction',
20
+ 'settings.entity-extraction.label': 'Entity extraction',
21
21
  },
22
22
  },
23
23
  },
@@ -4,7 +4,7 @@
4
4
 
5
5
  import { Capability } from '@dxos/app-framework';
6
6
 
7
- import { meta } from '../meta';
7
+ import { meta } from '#meta';
8
8
  import {
9
9
  type MediaStreamRecorderProps,
10
10
  type Transcriber,
@@ -21,13 +21,13 @@ export namespace TranscriptionCapabilities {
21
21
  onSegments: TranscriberProps['onSegments'];
22
22
  };
23
23
  export type GetTranscriber = (props: GetTranscriberProps) => Transcriber;
24
- export const Transcriber = Capability.make<GetTranscriber>(`${meta.id}/capability/transcriber`);
24
+ export const Transcriber = Capability.make<GetTranscriber>(`${meta.id}.capability.transcriber`);
25
25
 
26
26
  export type GetTranscriptionManagerProps = {
27
27
  messageEnricher?: TranscriptMessageEnricher;
28
28
  };
29
29
  export type GetTranscriptionManager = (props: GetTranscriptionManagerProps) => TranscriptionManager;
30
30
  export const TranscriptionManager = Capability.make<GetTranscriptionManager>(
31
- `${meta.id}/capability/transcription-manager`,
31
+ `${meta.id}.capability.transcription-manager`,
32
32
  );
33
33
  }
@@ -3,6 +3,4 @@
3
3
  //
4
4
 
5
5
  export * from './capabilities';
6
- export * as TranscriptAction from './TranscriptAction';
7
- export { TranscriptOperation } from './TranscriptAction';
8
6
  export * from './types';
@@ -1,12 +0,0 @@
1
- import {
2
- TranscriptContainer_default,
3
- TranscriptionContainer
4
- } from "./chunk-ICM7JRCO.mjs";
5
- import "./chunk-HOOPZ7EM.mjs";
6
- import "./chunk-Q5OC3WVG.mjs";
7
- import "./chunk-J5LGTIGS.mjs";
8
- export {
9
- TranscriptionContainer,
10
- TranscriptContainer_default as default
11
- };
12
- //# sourceMappingURL=TranscriptContainer-6EHKWVS4.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": [],
4
- "sourcesContent": [],
5
- "mappings": "",
6
- "names": []
7
- }
@@ -1,18 +0,0 @@
1
- import {
2
- transcription_blueprint_exports
3
- } from "./chunk-ZZF7ICVM.mjs";
4
- import "./chunk-HOOPZ7EM.mjs";
5
- import "./chunk-J5LGTIGS.mjs";
6
-
7
- // src/capabilities/blueprint-definition/blueprint-definition.ts
8
- import * as Effect from "effect/Effect";
9
- import { Capability, Common } from "@dxos/app-framework";
10
- var blueprintDefinition = Capability.makeModule(() => Effect.succeed([
11
- Capability.contributes(Common.Capability.Functions, transcription_blueprint_exports.functions),
12
- Capability.contributes(Common.Capability.BlueprintDefinition, transcription_blueprint_exports.make())
13
- ]));
14
- var blueprint_definition_default = blueprintDefinition;
15
- export {
16
- blueprint_definition_default as default
17
- };
18
- //# sourceMappingURL=blueprint-definition-FTRNMLJZ.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/blueprint-definition/blueprint-definition.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability, Common } from '@dxos/app-framework';\n\nimport { TranscriptionBlueprint } from '../../blueprints';\n\nexport type BlueprintCapabilities = [\n Capability.Capability<typeof Common.Capability.Functions>,\n Capability.Capability<typeof Common.Capability.BlueprintDefinition>,\n];\n\nconst blueprintDefinition = Capability.makeModule<[], BlueprintCapabilities>(() =>\n Effect.succeed([\n Capability.contributes(Common.Capability.Functions, TranscriptionBlueprint.functions),\n Capability.contributes(Common.Capability.BlueprintDefinition, TranscriptionBlueprint.make()),\n ]),\n);\n\nexport default blueprintDefinition;\n"],
5
- "mappings": ";;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,YAAYC,cAAc;AASnC,IAAMC,sBAAsBC,WAAWC,WAAsC,MACpEC,eAAQ;EACbF,WAAWG,YAAYC,OAAOJ,WAAWK,WAAWC,gCAAuBC,SAAS;EACpFP,WAAWG,YAAYC,OAAOJ,WAAWQ,qBAAqBF,gCAAuBG,KAAI,CAAA;CAC1F,CAAA;AAGH,IAAA,+BAAeV;",
6
- "names": ["Effect", "Capability", "Common", "blueprintDefinition", "Capability", "makeModule", "succeed", "contributes", "Common", "Functions", "TranscriptionBlueprint", "functions", "BlueprintDefinition", "make"]
7
- }