@dxos/plugin-transcription 0.8.2 → 0.8.3-main.7f5a14c
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.
- package/dist/lib/browser/{TranscriptContainer-PFKLKRPQ.mjs → TranscriptContainer-PDSOWOMY.mjs} +2 -2
- package/dist/lib/browser/{chunk-TJPJBE45.mjs → chunk-KMCEHAVR.mjs} +4 -4
- package/dist/lib/browser/{chunk-4KCUYW2F.mjs → chunk-KUO25QLG.mjs} +14 -27
- package/dist/lib/browser/{chunk-4KCUYW2F.mjs.map → chunk-KUO25QLG.mjs.map} +3 -3
- package/dist/lib/browser/{chunk-NODIXNQP.mjs → chunk-OSISJM2F.mjs} +5 -4
- package/dist/lib/browser/chunk-OSISJM2F.mjs.map +7 -0
- package/dist/lib/browser/{chunk-IGEKO7ZU.mjs → chunk-RPMSRXAD.mjs} +2 -2
- package/dist/lib/browser/index.mjs +8 -10
- package/dist/lib/browser/index.mjs.map +3 -3
- package/dist/lib/browser/{intent-resolver-I2LJSQDR.mjs → intent-resolver-BGADCHVM.mjs} +7 -6
- package/dist/lib/browser/intent-resolver-BGADCHVM.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/{react-surface-ID2MLJHZ.mjs → react-surface-4KQXXK3L.mjs} +6 -6
- package/dist/lib/browser/react-surface-4KQXXK3L.mjs.map +7 -0
- package/dist/lib/browser/{transcriber-NA7CIFIT.mjs → transcriber-KKKY7OTA.mjs} +3 -3
- package/dist/lib/browser/types/index.mjs +1 -1
- package/dist/lib/node/{TranscriptContainer-LHMC7553.cjs → TranscriptContainer-74YHORVT.cjs} +7 -7
- package/dist/lib/node/{TranscriptContainer-LHMC7553.cjs.map → TranscriptContainer-74YHORVT.cjs.map} +2 -2
- package/dist/lib/node/{chunk-EIMUQYCZ.cjs → chunk-6LW5RA3K.cjs} +9 -8
- package/dist/lib/node/chunk-6LW5RA3K.cjs.map +7 -0
- package/dist/lib/node/{chunk-ZFTXJZXH.cjs → chunk-C5W34GLS.cjs} +18 -31
- package/dist/lib/node/{chunk-ZFTXJZXH.cjs.map → chunk-C5W34GLS.cjs.map} +3 -3
- package/dist/lib/node/{chunk-5J3FBCON.cjs → chunk-SZXEXASL.cjs} +5 -5
- package/dist/lib/node/{chunk-3GS5UNO5.cjs → chunk-TH26IEUM.cjs} +7 -7
- package/dist/lib/node/index.cjs +28 -30
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/{intent-resolver-LLMGF5I5.cjs → intent-resolver-LL3TTI4H.cjs} +10 -9
- package/dist/lib/node/intent-resolver-LL3TTI4H.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/{react-surface-SEQLEL4K.cjs → react-surface-QVXIHCOA.cjs} +10 -10
- package/dist/lib/node/react-surface-QVXIHCOA.cjs.map +7 -0
- package/dist/lib/node/{transcriber-RKKN7LDU.cjs → transcriber-532JRZHY.cjs} +9 -9
- package/dist/lib/node/types/index.cjs +5 -5
- package/dist/lib/node/types/index.cjs.map +1 -1
- package/dist/lib/node-esm/{TranscriptContainer-DLNRFVTA.mjs → TranscriptContainer-VBUQ7KJJ.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-PR7EYODX.mjs → chunk-2U54OZH3.mjs} +4 -4
- package/dist/lib/node-esm/{chunk-BRPFVRAD.mjs → chunk-FH75X4JC.mjs} +5 -4
- package/dist/lib/node-esm/chunk-FH75X4JC.mjs.map +7 -0
- package/dist/lib/node-esm/{chunk-KUWWHMOA.mjs → chunk-QS4L6XU3.mjs} +2 -2
- package/dist/lib/node-esm/{chunk-EFIWBQDF.mjs → chunk-QSGGTMXE.mjs} +14 -27
- package/dist/lib/node-esm/{chunk-EFIWBQDF.mjs.map → chunk-QSGGTMXE.mjs.map} +3 -3
- package/dist/lib/node-esm/index.mjs +8 -10
- package/dist/lib/node-esm/index.mjs.map +3 -3
- package/dist/lib/node-esm/{intent-resolver-WOZKOEBW.mjs → intent-resolver-5LVCYSJS.mjs} +7 -6
- package/dist/lib/node-esm/intent-resolver-5LVCYSJS.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/{react-surface-7MXUUTAL.mjs → react-surface-ZB7Y2YF7.mjs} +6 -6
- package/dist/lib/node-esm/react-surface-ZB7Y2YF7.mjs.map +7 -0
- package/dist/lib/node-esm/{transcriber-5WSI6DYK.mjs → transcriber-SPV5ZLIJ.mjs} +3 -3
- package/dist/lib/node-esm/types/index.mjs +1 -1
- package/dist/types/src/TranscriptionPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
- package/dist/types/src/components/Transcript/Transcript.stories.d.ts +2 -2
- package/dist/types/src/components/Transcript/Transcript.stories.d.ts.map +1 -1
- package/dist/types/src/components/stories/FileTranscription.stories.d.ts.map +1 -1
- package/dist/types/src/components/stories/MicrophoneTranscription.stories.d.ts.map +1 -1
- package/dist/types/src/segments-normalization/normalization.d.ts +2 -2
- package/dist/types/src/testing/testing.d.ts +2 -2
- package/dist/types/src/testing/testing.d.ts.map +1 -1
- package/dist/types/src/transcriber/transcription-manager.d.ts +6 -6
- package/dist/types/src/transcriber/transcription-manager.d.ts.map +1 -1
- package/dist/types/src/types/schema.d.ts +4 -4
- package/dist/types/src/types/schema.d.ts.map +1 -1
- package/package.json +51 -51
- package/src/TranscriptionPlugin.tsx +5 -7
- package/src/capabilities/intent-resolver.ts +5 -5
- package/src/capabilities/react-surface.tsx +2 -2
- package/src/components/Transcript/Transcript.stories.tsx +5 -5
- package/src/components/stories/FileTranscription.stories.tsx +5 -3
- package/src/components/stories/MicrophoneTranscription.stories.tsx +11 -5
- package/src/segments-normalization/normalization.test.ts +5 -3
- package/src/testing/testing.ts +15 -13
- package/src/transcriber/transcription-manager.ts +17 -22
- package/src/types/schema.ts +4 -3
- package/dist/lib/browser/chunk-NODIXNQP.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-I2LJSQDR.mjs.map +0 -7
- package/dist/lib/browser/react-surface-ID2MLJHZ.mjs.map +0 -7
- package/dist/lib/node/chunk-EIMUQYCZ.cjs.map +0 -7
- package/dist/lib/node/intent-resolver-LLMGF5I5.cjs.map +0 -7
- package/dist/lib/node/react-surface-SEQLEL4K.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-BRPFVRAD.mjs.map +0 -7
- package/dist/lib/node-esm/intent-resolver-WOZKOEBW.mjs.map +0 -7
- package/dist/lib/node-esm/react-surface-7MXUUTAL.mjs.map +0 -7
- /package/dist/lib/browser/{TranscriptContainer-PFKLKRPQ.mjs.map → TranscriptContainer-PDSOWOMY.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-TJPJBE45.mjs.map → chunk-KMCEHAVR.mjs.map} +0 -0
- /package/dist/lib/browser/{chunk-IGEKO7ZU.mjs.map → chunk-RPMSRXAD.mjs.map} +0 -0
- /package/dist/lib/browser/{transcriber-NA7CIFIT.mjs.map → transcriber-KKKY7OTA.mjs.map} +0 -0
- /package/dist/lib/node/{chunk-5J3FBCON.cjs.map → chunk-SZXEXASL.cjs.map} +0 -0
- /package/dist/lib/node/{chunk-3GS5UNO5.cjs.map → chunk-TH26IEUM.cjs.map} +0 -0
- /package/dist/lib/node/{transcriber-RKKN7LDU.cjs.map → transcriber-532JRZHY.cjs.map} +0 -0
- /package/dist/lib/node-esm/{TranscriptContainer-DLNRFVTA.mjs.map → TranscriptContainer-VBUQ7KJJ.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-PR7EYODX.mjs.map → chunk-2U54OZH3.mjs.map} +0 -0
- /package/dist/lib/node-esm/{chunk-KUWWHMOA.mjs.map → chunk-QS4L6XU3.mjs.map} +0 -0
- /package/dist/lib/node-esm/{transcriber-5WSI6DYK.mjs.map → transcriber-SPV5ZLIJ.mjs.map} +0 -0
package/src/testing/testing.ts
CHANGED
|
@@ -11,13 +11,13 @@ import { extractionAnthropicFn, processTranscriptMessage } from '@dxos/assistant
|
|
|
11
11
|
import { scheduleTaskInterval } from '@dxos/async';
|
|
12
12
|
import { Filter, type Queue } from '@dxos/client/echo';
|
|
13
13
|
import { Context } from '@dxos/context';
|
|
14
|
-
import { Type } from '@dxos/echo';
|
|
15
|
-
import {
|
|
14
|
+
import { Key, Obj, Ref, Type } from '@dxos/echo';
|
|
15
|
+
import { createQueueDXN } from '@dxos/echo-schema';
|
|
16
16
|
import { FunctionExecutor, ServiceContainer } from '@dxos/functions';
|
|
17
17
|
import { IdentityDid } from '@dxos/keys';
|
|
18
18
|
import { log } from '@dxos/log';
|
|
19
19
|
import { faker } from '@dxos/random';
|
|
20
|
-
import {
|
|
20
|
+
import { useQueue, type Space } from '@dxos/react-client/echo';
|
|
21
21
|
import { DataType } from '@dxos/schema';
|
|
22
22
|
import { Testing, seedTestData } from '@dxos/schema/testing';
|
|
23
23
|
|
|
@@ -63,7 +63,7 @@ export class MessageBuilder extends AbstractMessageBuilder {
|
|
|
63
63
|
|
|
64
64
|
override async createMessage(numSegments = 1): Promise<DataType.Message> {
|
|
65
65
|
return {
|
|
66
|
-
id: ObjectId.random().toString(),
|
|
66
|
+
id: Key.ObjectId.random().toString(),
|
|
67
67
|
created: this.next().toISOString(),
|
|
68
68
|
sender: faker.helpers.arrayElement(this.users),
|
|
69
69
|
blocks: Array.from({ length: numSegments }).map(() => this.createBlock()),
|
|
@@ -74,8 +74,8 @@ export class MessageBuilder extends AbstractMessageBuilder {
|
|
|
74
74
|
let text = faker.lorem.paragraph();
|
|
75
75
|
if (this._space) {
|
|
76
76
|
const label = faker.commerce.productName();
|
|
77
|
-
const obj = this._space.db.add(
|
|
78
|
-
const dxn =
|
|
77
|
+
const obj = this._space.db.add(Obj.make(TestItem, { title: label, description: faker.lorem.paragraph() }));
|
|
78
|
+
const dxn = Ref.make(obj).dxn.toString();
|
|
79
79
|
const words = text.split(' ');
|
|
80
80
|
words.splice(Math.floor(Math.random() * words.length), 0, `[${label}][${dxn}]`);
|
|
81
81
|
text = words.join(' ');
|
|
@@ -140,7 +140,7 @@ class EntityExtractionMessageBuilder extends AbstractMessageBuilder {
|
|
|
140
140
|
|
|
141
141
|
type UseTestTranscriptionQueue = (
|
|
142
142
|
space: Space | undefined,
|
|
143
|
-
queueId?: ObjectId,
|
|
143
|
+
queueId?: Key.ObjectId,
|
|
144
144
|
running?: boolean,
|
|
145
145
|
interval?: number,
|
|
146
146
|
) => Queue<DataType.Message> | undefined;
|
|
@@ -150,11 +150,12 @@ type UseTestTranscriptionQueue = (
|
|
|
150
150
|
*/
|
|
151
151
|
export const useTestTranscriptionQueue: UseTestTranscriptionQueue = (
|
|
152
152
|
space: Space | undefined,
|
|
153
|
-
queueId?: ObjectId,
|
|
153
|
+
queueId?: Key.ObjectId,
|
|
154
154
|
running = true,
|
|
155
155
|
interval = 1_000,
|
|
156
156
|
) => {
|
|
157
|
-
|
|
157
|
+
// TODO(dmaretskyi): Use space.queues.create() instead.
|
|
158
|
+
const queueDxn = useMemo(() => (space ? createQueueDXN(space.id, queueId) : undefined), [space, queueId]);
|
|
158
159
|
const queue = useQueue<DataType.Message>(queueDxn);
|
|
159
160
|
const builder = useMemo(() => new MessageBuilder(space), [space]);
|
|
160
161
|
|
|
@@ -165,7 +166,7 @@ export const useTestTranscriptionQueue: UseTestTranscriptionQueue = (
|
|
|
165
166
|
|
|
166
167
|
const i = setInterval(() => {
|
|
167
168
|
void builder.createMessage(Math.ceil(Math.random() * 3)).then((message) => {
|
|
168
|
-
queue.append([
|
|
169
|
+
queue.append([Obj.make(DataType.Message, message)]);
|
|
169
170
|
});
|
|
170
171
|
}, interval);
|
|
171
172
|
return () => clearInterval(i);
|
|
@@ -180,11 +181,12 @@ export const useTestTranscriptionQueue: UseTestTranscriptionQueue = (
|
|
|
180
181
|
// TODO(burdon): Reconcile with useTestTranscriptionQueue.
|
|
181
182
|
export const useTestTranscriptionQueueWithEntityExtraction: UseTestTranscriptionQueue = (
|
|
182
183
|
space: Space | undefined,
|
|
183
|
-
queueId?: ObjectId,
|
|
184
|
+
queueId?: Key.ObjectId,
|
|
184
185
|
running = true,
|
|
185
186
|
interval = 1_000,
|
|
186
187
|
) => {
|
|
187
|
-
|
|
188
|
+
// TODO(dmaretskyi): Use space.queues.create() instead.
|
|
189
|
+
const queueDxn = useMemo(() => (space ? createQueueDXN(space.id, queueId) : undefined), [space, queueId]);
|
|
188
190
|
const queue = useQueue<DataType.Message>(queueDxn);
|
|
189
191
|
const [builder] = useState(() => new EntityExtractionMessageBuilder());
|
|
190
192
|
|
|
@@ -202,7 +204,7 @@ export const useTestTranscriptionQueueWithEntityExtraction: UseTestTranscription
|
|
|
202
204
|
ctx,
|
|
203
205
|
async () => {
|
|
204
206
|
const message = await builder.createMessage();
|
|
205
|
-
queue.append([
|
|
207
|
+
queue.append([Obj.make(DataType.Message, message)]);
|
|
206
208
|
},
|
|
207
209
|
interval,
|
|
208
210
|
);
|
|
@@ -6,10 +6,8 @@ import { signal } from '@preact/signals-core';
|
|
|
6
6
|
|
|
7
7
|
import { synchronized } from '@dxos/async';
|
|
8
8
|
import { Resource } from '@dxos/context';
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import { type DXN } from '@dxos/keys';
|
|
12
|
-
import { log } from '@dxos/log';
|
|
9
|
+
import { Obj } from '@dxos/echo';
|
|
10
|
+
import { type Queue } from '@dxos/echo-db';
|
|
13
11
|
import { type EdgeHttpClient } from '@dxos/react-edge-client';
|
|
14
12
|
import { DataType } from '@dxos/schema';
|
|
15
13
|
|
|
@@ -62,35 +60,24 @@ export class TranscriptionManager extends Resource {
|
|
|
62
60
|
this._messageEnricher = options.messageEnricher;
|
|
63
61
|
}
|
|
64
62
|
|
|
65
|
-
protected override async _open(): Promise<void> {
|
|
66
|
-
await this._toggleTranscriber();
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
protected override async _close(): Promise<void> {
|
|
70
|
-
void this._transcriber?.close();
|
|
71
|
-
}
|
|
72
|
-
|
|
73
63
|
/** @reactive */
|
|
74
64
|
get enabled() {
|
|
75
65
|
return this._enabled.value;
|
|
76
66
|
}
|
|
77
67
|
|
|
78
|
-
setQueue(
|
|
79
|
-
|
|
80
|
-
log.info('setQueue', { queueDxn: queueDxn.toString() });
|
|
81
|
-
this._queue = new QueueImpl<DataType.Message>(this._edgeClient, queueDxn);
|
|
82
|
-
}
|
|
68
|
+
setQueue(queue: Queue<DataType.Message>): this {
|
|
69
|
+
this._queue = queue;
|
|
83
70
|
return this;
|
|
84
71
|
}
|
|
85
72
|
|
|
86
|
-
setIdentityDid(did: string):
|
|
73
|
+
setIdentityDid(did: string): this {
|
|
87
74
|
if (this._identityDid !== did) {
|
|
88
75
|
this._identityDid = did;
|
|
89
76
|
}
|
|
90
77
|
return this;
|
|
91
78
|
}
|
|
92
79
|
|
|
93
|
-
setRecording(recording?: boolean):
|
|
80
|
+
setRecording(recording?: boolean): this {
|
|
94
81
|
if (!this.isOpen || !this._enabled.value) {
|
|
95
82
|
return this;
|
|
96
83
|
}
|
|
@@ -128,6 +115,14 @@ export class TranscriptionManager extends Resource {
|
|
|
128
115
|
this.isOpen && (await this._toggleTranscriber());
|
|
129
116
|
}
|
|
130
117
|
|
|
118
|
+
protected override async _open(): Promise<void> {
|
|
119
|
+
await this._toggleTranscriber();
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
protected override async _close(): Promise<void> {
|
|
123
|
+
void this._transcriber?.close();
|
|
124
|
+
}
|
|
125
|
+
|
|
131
126
|
// TODO(burdon): Change this to setEnables (explicit), not toggle.
|
|
132
127
|
private async _toggleTranscriber(): Promise<void> {
|
|
133
128
|
await this._maybeReinitTranscriber();
|
|
@@ -136,7 +131,7 @@ export class TranscriptionManager extends Resource {
|
|
|
136
131
|
if (this._enabled.value) {
|
|
137
132
|
await this._transcriber?.open();
|
|
138
133
|
// TODO(burdon): Started and stopped blocks appear twice.
|
|
139
|
-
const block =
|
|
134
|
+
const block = Obj.make(DataType.Message, {
|
|
140
135
|
created: new Date().toISOString(),
|
|
141
136
|
blocks: [{ type: 'transcription', text: 'Started', started: new Date().toISOString() }],
|
|
142
137
|
sender: { role: 'assistant' },
|
|
@@ -144,7 +139,7 @@ export class TranscriptionManager extends Resource {
|
|
|
144
139
|
this._queue?.append([block]);
|
|
145
140
|
} else {
|
|
146
141
|
await this._transcriber?.close();
|
|
147
|
-
const block =
|
|
142
|
+
const block = Obj.make(DataType.Message, {
|
|
148
143
|
created: new Date().toISOString(),
|
|
149
144
|
blocks: [{ type: 'transcription', text: 'Stopped', started: new Date().toISOString() }],
|
|
150
145
|
sender: { role: 'assistant' },
|
|
@@ -185,7 +180,7 @@ export class TranscriptionManager extends Resource {
|
|
|
185
180
|
return;
|
|
186
181
|
}
|
|
187
182
|
|
|
188
|
-
let block =
|
|
183
|
+
let block = Obj.make(DataType.Message, {
|
|
189
184
|
created: new Date().toISOString(),
|
|
190
185
|
blocks: segments,
|
|
191
186
|
sender: { identityDid: this._identityDid },
|
package/src/types/schema.ts
CHANGED
|
@@ -4,7 +4,9 @@
|
|
|
4
4
|
|
|
5
5
|
import { Schema } from 'effect';
|
|
6
6
|
|
|
7
|
-
import {
|
|
7
|
+
import { Queue } from '@dxos/client/echo';
|
|
8
|
+
import { Type } from '@dxos/echo';
|
|
9
|
+
import { TypedObject } from '@dxos/echo-schema';
|
|
8
10
|
|
|
9
11
|
/**
|
|
10
12
|
* Root transcript object created when the user starts a transcription.
|
|
@@ -18,8 +20,7 @@ export const TranscriptSchema = Schema.Struct({
|
|
|
18
20
|
/**
|
|
19
21
|
* Queue containing TranscriptBlock objects.
|
|
20
22
|
*/
|
|
21
|
-
|
|
22
|
-
queue: Ref(Expando),
|
|
23
|
+
queue: Type.Ref(Queue),
|
|
23
24
|
});
|
|
24
25
|
|
|
25
26
|
export class TranscriptType extends TypedObject({
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/types/schema.ts", "../../../src/types/types.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { Expando, Ref, TypedObject } from '@dxos/echo-schema';\n\n/**\n * Root transcript object created when the user starts a transcription.\n */\nexport const TranscriptSchema = Schema.Struct({\n // TODO(wittjosiah): Remove?\n // TODO(burdon): Use Date or string?\n started: Schema.optional(Schema.String),\n ended: Schema.optional(Schema.String),\n\n /**\n * Queue containing TranscriptBlock objects.\n */\n // TODO(wittjosiah): Should be a ref to a queue.\n queue: Ref(Expando),\n});\n\nexport class TranscriptType extends TypedObject({\n typename: 'dxos.org/type/Transcript',\n version: '0.1.0',\n})(TranscriptSchema.fields) {}\n\n// TODO(burdon): Do these need to be kept in sync with EDGE?\n\n/**\n * First message in queue.\n * Contains metadata for the recording and transcript.\n */\nconst TranscriptHeader = Schema.Struct({\n started: Schema.optional(Schema.String),\n});\n\nexport type TranscriptHeader = Schema.Schema.Type<typeof TranscriptHeader>;\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { SpaceId } from '@dxos/react-client/echo';\n\nimport { TranscriptType } from './schema';\nimport { TRANSCRIPTION_PLUGIN } from '../meta';\n\n// TODO(burdon): Move to separate proto.\n\n/**\n * Endpoint to the calls service.\n */\n// TODO(burdon): Reconfigure/move.\nexport const TRANSCRIPTION_URL = 'https://calls-service.dxos.workers.dev';\n\nexport namespace TranscriptionAction {\n const TRANSCRIPTION_ACTION = `${TRANSCRIPTION_PLUGIN}/action`;\n\n export class Create extends Schema.TaggedClass<Create>()(`${TRANSCRIPTION_ACTION}/create`, {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n spaceId: SpaceId,\n }),\n output: Schema.Struct({\n object: TranscriptType,\n }),\n }) {}\n}\n"],
|
|
5
|
-
"mappings": ";;;;;AAIA,SAASA,cAAc;AAEvB,SAASC,SAASC,KAAKC,mBAAmB;AAKnC,IAAMC,mBAAmBC,OAAOC,OAAO;;;EAG5CC,SAASF,OAAOG,SAASH,OAAOI,MAAM;EACtCC,OAAOL,OAAOG,SAASH,OAAOI,MAAM;;;;;EAMpCE,OAAOC,IAAIC,OAAAA;AACb,CAAA;AAEO,IAAMC,iBAAN,cAA6BC,YAAY;EAC9CC,UAAU;EACVC,SAAS;AACX,CAAA,EAAGb,iBAAiBc,MAAM,EAAA;AAAG;AAQ7B,IAAMC,mBAAmBd,OAAOC,OAAO;EACrCC,SAASF,OAAOG,SAASH,OAAOI,MAAM;AACxC,CAAA;;;ACjCA,SAASW,UAAAA,eAAc;AAEvB,SAASC,eAAe;AAWjB,IAAMC,oBAAoB;UAEhBC,sBAAAA;AACf,QAAMC,uBAAuB,GAAGC,oBAAAA;EAEzB,MAAMC,eAAeC,QAAOC,YAAW,EAAW,GAAGJ,oBAAAA,WAA+B;IACzFK,OAAOF,QAAOG,OAAO;MACnBC,MAAMJ,QAAOK,SAASL,QAAOM,MAAM;MACnCC,SAASC;IACX,CAAA;IACAC,QAAQT,QAAOG,OAAO;MACpBO,QAAQC;IACV,CAAA;EACF,CAAA,EAAA;EAAI;uBARSZ,SAAAA;AASf,GAZiBH,wBAAAA,sBAAAA,CAAAA,EAAAA;;",
|
|
6
|
-
"names": ["Schema", "Expando", "Ref", "TypedObject", "TranscriptSchema", "Schema", "Struct", "started", "optional", "String", "ended", "queue", "Ref", "Expando", "TranscriptType", "TypedObject", "typename", "version", "fields", "TranscriptHeader", "Schema", "SpaceId", "TRANSCRIPTION_URL", "TranscriptionAction", "TRANSCRIPTION_ACTION", "TRANSCRIPTION_PLUGIN", "Create", "Schema", "TaggedClass", "input", "Struct", "name", "optional", "String", "spaceId", "SpaceId", "output", "object", "TranscriptType"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/intent-resolver.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createResolver, type PluginContext } from '@dxos/app-framework';\nimport { createQueueDxn } from '@dxos/echo-schema';\nimport { type SpaceId } from '@dxos/keys';\nimport { live, refFromDXN } from '@dxos/live-object';\n\nimport { TranscriptionAction, TranscriptType } from '../types';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: TranscriptionAction.Create,\n resolve: ({ name, spaceId }) => {\n const transcript = live(TranscriptType, {\n queue: refFromDXN(createQueueDxn(spaceId as SpaceId)),\n });\n\n return { data: { object: transcript } };\n },\n }),\n ]);\n"],
|
|
5
|
-
"mappings": ";;;;;;;AAIA,SAASA,cAAcC,aAAaC,sBAA0C;AAC9E,SAASC,sBAAsB;AAE/B,SAASC,MAAMC,kBAAkB;AAIjC,IAAA,0BAAe,CAACC,YACdC,YAAYC,aAAaC,gBAAgB;EACvCC,eAAe;IACbC,QAAQC,oBAAoBC;IAC5BC,SAAS,CAAC,EAAEC,MAAMC,QAAO,MAAE;AACzB,YAAMC,aAAaC,KAAKC,gBAAgB;QACtCC,OAAOC,WAAWC,eAAeN,OAAAA,CAAAA;MACnC,CAAA;AAEA,aAAO;QAAEO,MAAM;UAAEC,QAAQP;QAAW;MAAE;IACxC;EACF,CAAA;CACD;",
|
|
6
|
-
"names": ["Capabilities", "contributes", "createResolver", "createQueueDxn", "live", "refFromDXN", "context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "TranscriptionAction", "Create", "resolve", "name", "spaceId", "transcript", "live", "TranscriptType", "queue", "refFromDXN", "createQueueDxn", "data", "object"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/react-surface.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, contributes, createSurface } from '@dxos/app-framework';\nimport { isInstanceOf } from '@dxos/echo-schema';\n\nimport { TranscriptionContainer } from '../components';\nimport { meta } from '../meta';\nimport { TranscriptType } from '../types';\n\nexport default () =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${meta.id}/article/transcript`,\n role: ['article', 'section'],\n filter: (data): data is { subject: TranscriptType } => isInstanceOf(TranscriptType, data.subject),\n component: ({ data, role }) => <TranscriptionContainer transcript={data.subject} role={role} />,\n }),\n ]);\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,cAAcC,aAAaC,qBAAqB;AACzD,SAASC,oBAAoB;AAM7B,IAAA,wBAAe,MACbC,YAAYC,aAAaC,cAAc;EACrCC,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;MAAC;MAAW;;IAClBC,QAAQ,CAACC,SAA8CC,aAAaC,gBAAgBF,KAAKG,OAAO;IAChGC,WAAW,CAAC,EAAEJ,MAAMF,KAAI,MAAO,sBAAA,cAACO,wBAAAA;MAAuBC,YAAYN,KAAKG;MAASL;;EACnF,CAAA;CACD;",
|
|
6
|
-
"names": ["React", "Capabilities", "contributes", "createSurface", "isInstanceOf", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "meta", "role", "filter", "data", "isInstanceOf", "TranscriptType", "subject", "component", "TranscriptionContainer", "transcript"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/types/schema.ts", "../../../src/types/types.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { Expando, Ref, TypedObject } from '@dxos/echo-schema';\n\n/**\n * Root transcript object created when the user starts a transcription.\n */\nexport const TranscriptSchema = Schema.Struct({\n // TODO(wittjosiah): Remove?\n // TODO(burdon): Use Date or string?\n started: Schema.optional(Schema.String),\n ended: Schema.optional(Schema.String),\n\n /**\n * Queue containing TranscriptBlock objects.\n */\n // TODO(wittjosiah): Should be a ref to a queue.\n queue: Ref(Expando),\n});\n\nexport class TranscriptType extends TypedObject({\n typename: 'dxos.org/type/Transcript',\n version: '0.1.0',\n})(TranscriptSchema.fields) {}\n\n// TODO(burdon): Do these need to be kept in sync with EDGE?\n\n/**\n * First message in queue.\n * Contains metadata for the recording and transcript.\n */\nconst TranscriptHeader = Schema.Struct({\n started: Schema.optional(Schema.String),\n});\n\nexport type TranscriptHeader = Schema.Schema.Type<typeof TranscriptHeader>;\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { SpaceId } from '@dxos/react-client/echo';\n\nimport { TranscriptType } from './schema';\nimport { TRANSCRIPTION_PLUGIN } from '../meta';\n\n// TODO(burdon): Move to separate proto.\n\n/**\n * Endpoint to the calls service.\n */\n// TODO(burdon): Reconfigure/move.\nexport const TRANSCRIPTION_URL = 'https://calls-service.dxos.workers.dev';\n\nexport namespace TranscriptionAction {\n const TRANSCRIPTION_ACTION = `${TRANSCRIPTION_PLUGIN}/action`;\n\n export class Create extends Schema.TaggedClass<Create>()(`${TRANSCRIPTION_ACTION}/create`, {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n spaceId: SpaceId,\n }),\n output: Schema.Struct({\n object: TranscriptType,\n }),\n }) {}\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,oBAAuB;AAEvB,yBAA0C;ACF1C,IAAAA,iBAAuB;AAEvB,kBAAwB;ADKjB,IAAMC,mBAAmBC,qBAAOC,OAAO;;;EAG5CC,SAASF,qBAAOG,SAASH,qBAAOI,MAAM;EACtCC,OAAOL,qBAAOG,SAASH,qBAAOI,MAAM;;;;;EAMpCE,WAAOC,wBAAIC,0BAAAA;AACb,CAAA;AAEO,IAAMC,iBAAN,kBAA6BC,gCAAY;EAC9CC,UAAU;EACVC,SAAS;AACX,CAAA,EAAGb,iBAAiBc,MAAM,EAAA;AAAG;AAQ7B,IAAMC,mBAAmBd,qBAAOC,OAAO;EACrCC,SAASF,qBAAOG,SAASH,qBAAOI,MAAM;AACxC,CAAA;ACpBO,IAAMW,oBAAoB;UAEhBC,sBAAAA;AACf,QAAMC,uBAAuB,GAAGC,0CAAAA;EAEzB,MAAMC,eAAenB,eAAAA,OAAOoB,YAAW,EAAW,GAAGH,oBAAAA,WAA+B;IACzFI,OAAOrB,eAAAA,OAAOC,OAAO;MACnBqB,MAAMtB,eAAAA,OAAOG,SAASH,eAAAA,OAAOI,MAAM;MACnCmB,SAASC;IACX,CAAA;IACAC,QAAQzB,eAAAA,OAAOC,OAAO;MACpByB,QAAQjB;IACV,CAAA;EACF,CAAA,EAAA;EAAI;uBARSU,SAAAA;AASf,GAZiBH,wBAAAA,sBAAAA,CAAAA,EAAAA;;",
|
|
6
|
-
"names": ["import_effect", "TranscriptSchema", "Schema", "Struct", "started", "optional", "String", "ended", "queue", "Ref", "Expando", "TranscriptType", "TypedObject", "typename", "version", "fields", "TranscriptHeader", "TRANSCRIPTION_URL", "TranscriptionAction", "TRANSCRIPTION_ACTION", "TRANSCRIPTION_PLUGIN", "Create", "TaggedClass", "input", "name", "spaceId", "SpaceId", "output", "object"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/intent-resolver.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createResolver, type PluginContext } from '@dxos/app-framework';\nimport { createQueueDxn } from '@dxos/echo-schema';\nimport { type SpaceId } from '@dxos/keys';\nimport { live, refFromDXN } from '@dxos/live-object';\n\nimport { TranscriptionAction, TranscriptType } from '../types';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: TranscriptionAction.Create,\n resolve: ({ name, spaceId }) => {\n const transcript = live(TranscriptType, {\n queue: refFromDXN(createQueueDxn(spaceId as SpaceId)),\n });\n\n return { data: { object: transcript } };\n },\n }),\n ]);\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAA8E;AAC9E,yBAA+B;AAE/B,yBAAiC;AAIjC,IAAA,0BAAe,CAACA,gBACdC,kCAAYC,kCAAaC,gBAAgB;MACvCC,qCAAe;IACbC,QAAQC,0CAAoBC;IAC5BC,SAAS,CAAC,EAAEC,MAAMC,QAAO,MAAE;AACzB,YAAMC,iBAAaC,yBAAKC,sCAAgB;QACtCC,WAAOC,mCAAWC,mCAAeN,OAAAA,CAAAA;MACnC,CAAA;AAEA,aAAO;QAAEO,MAAM;UAAEC,QAAQP;QAAW;MAAE;IACxC;EACF,CAAA;CACD;",
|
|
6
|
-
"names": ["context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "TranscriptionAction", "Create", "resolve", "name", "spaceId", "transcript", "live", "TranscriptType", "queue", "refFromDXN", "createQueueDxn", "data", "object"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/react-surface.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, contributes, createSurface } from '@dxos/app-framework';\nimport { isInstanceOf } from '@dxos/echo-schema';\n\nimport { TranscriptionContainer } from '../components';\nimport { meta } from '../meta';\nimport { TranscriptType } from '../types';\n\nexport default () =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${meta.id}/article/transcript`,\n role: ['article', 'section'],\n filter: (data): data is { subject: TranscriptType } => isInstanceOf(TranscriptType, data.subject),\n component: ({ data, role }) => <TranscriptionContainer transcript={data.subject} role={role} />,\n }),\n ]);\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,mBAAkB;AAElB,2BAAyD;AACzD,yBAA6B;AAM7B,IAAA,wBAAe,UACbA,kCAAYC,kCAAaC,cAAc;MACrCC,oCAAc;IACZC,IAAI,GAAGC,2BAAKD,EAAE;IACdE,MAAM;MAAC;MAAW;;IAClBC,QAAQ,CAACC,aAA8CC,iCAAaC,sCAAgBF,KAAKG,OAAO;IAChGC,WAAW,CAAC,EAAEJ,MAAMF,KAAI,MAAO,6BAAAO,QAAA,cAACC,8CAAAA;MAAuBC,YAAYP,KAAKG;MAASL;;EACnF,CAAA;CACD;",
|
|
6
|
-
"names": ["contributes", "Capabilities", "ReactSurface", "createSurface", "id", "meta", "role", "filter", "data", "isInstanceOf", "TranscriptType", "subject", "component", "React", "TranscriptionContainer", "transcript"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/types/schema.ts", "../../../src/types/types.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { Expando, Ref, TypedObject } from '@dxos/echo-schema';\n\n/**\n * Root transcript object created when the user starts a transcription.\n */\nexport const TranscriptSchema = Schema.Struct({\n // TODO(wittjosiah): Remove?\n // TODO(burdon): Use Date or string?\n started: Schema.optional(Schema.String),\n ended: Schema.optional(Schema.String),\n\n /**\n * Queue containing TranscriptBlock objects.\n */\n // TODO(wittjosiah): Should be a ref to a queue.\n queue: Ref(Expando),\n});\n\nexport class TranscriptType extends TypedObject({\n typename: 'dxos.org/type/Transcript',\n version: '0.1.0',\n})(TranscriptSchema.fields) {}\n\n// TODO(burdon): Do these need to be kept in sync with EDGE?\n\n/**\n * First message in queue.\n * Contains metadata for the recording and transcript.\n */\nconst TranscriptHeader = Schema.Struct({\n started: Schema.optional(Schema.String),\n});\n\nexport type TranscriptHeader = Schema.Schema.Type<typeof TranscriptHeader>;\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Schema } from 'effect';\n\nimport { SpaceId } from '@dxos/react-client/echo';\n\nimport { TranscriptType } from './schema';\nimport { TRANSCRIPTION_PLUGIN } from '../meta';\n\n// TODO(burdon): Move to separate proto.\n\n/**\n * Endpoint to the calls service.\n */\n// TODO(burdon): Reconfigure/move.\nexport const TRANSCRIPTION_URL = 'https://calls-service.dxos.workers.dev';\n\nexport namespace TranscriptionAction {\n const TRANSCRIPTION_ACTION = `${TRANSCRIPTION_PLUGIN}/action`;\n\n export class Create extends Schema.TaggedClass<Create>()(`${TRANSCRIPTION_ACTION}/create`, {\n input: Schema.Struct({\n name: Schema.optional(Schema.String),\n spaceId: SpaceId,\n }),\n output: Schema.Struct({\n object: TranscriptType,\n }),\n }) {}\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;AAIA,SAASA,cAAc;AAEvB,SAASC,SAASC,KAAKC,mBAAmB;AAKnC,IAAMC,mBAAmBC,OAAOC,OAAO;;;EAG5CC,SAASF,OAAOG,SAASH,OAAOI,MAAM;EACtCC,OAAOL,OAAOG,SAASH,OAAOI,MAAM;;;;;EAMpCE,OAAOC,IAAIC,OAAAA;AACb,CAAA;AAEO,IAAMC,iBAAN,cAA6BC,YAAY;EAC9CC,UAAU;EACVC,SAAS;AACX,CAAA,EAAGb,iBAAiBc,MAAM,EAAA;AAAG;AAQ7B,IAAMC,mBAAmBd,OAAOC,OAAO;EACrCC,SAASF,OAAOG,SAASH,OAAOI,MAAM;AACxC,CAAA;;;ACjCA,SAASW,UAAAA,eAAc;AAEvB,SAASC,eAAe;AAWjB,IAAMC,oBAAoB;UAEhBC,sBAAAA;AACf,QAAMC,uBAAuB,GAAGC,oBAAAA;EAEzB,MAAMC,eAAeC,QAAOC,YAAW,EAAW,GAAGJ,oBAAAA,WAA+B;IACzFK,OAAOF,QAAOG,OAAO;MACnBC,MAAMJ,QAAOK,SAASL,QAAOM,MAAM;MACnCC,SAASC;IACX,CAAA;IACAC,QAAQT,QAAOG,OAAO;MACpBO,QAAQC;IACV,CAAA;EACF,CAAA,EAAA;EAAI;uBARSZ,SAAAA;AASf,GAZiBH,wBAAAA,sBAAAA,CAAAA,EAAAA;;",
|
|
6
|
-
"names": ["Schema", "Expando", "Ref", "TypedObject", "TranscriptSchema", "Schema", "Struct", "started", "optional", "String", "ended", "queue", "Ref", "Expando", "TranscriptType", "TypedObject", "typename", "version", "fields", "TranscriptHeader", "Schema", "SpaceId", "TRANSCRIPTION_URL", "TranscriptionAction", "TRANSCRIPTION_ACTION", "TRANSCRIPTION_PLUGIN", "Create", "Schema", "TaggedClass", "input", "Struct", "name", "optional", "String", "spaceId", "SpaceId", "output", "object", "TranscriptType"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/intent-resolver.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createResolver, type PluginContext } from '@dxos/app-framework';\nimport { createQueueDxn } from '@dxos/echo-schema';\nimport { type SpaceId } from '@dxos/keys';\nimport { live, refFromDXN } from '@dxos/live-object';\n\nimport { TranscriptionAction, TranscriptType } from '../types';\n\nexport default (context: PluginContext) =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: TranscriptionAction.Create,\n resolve: ({ name, spaceId }) => {\n const transcript = live(TranscriptType, {\n queue: refFromDXN(createQueueDxn(spaceId as SpaceId)),\n });\n\n return { data: { object: transcript } };\n },\n }),\n ]);\n"],
|
|
5
|
-
"mappings": ";;;;;;;;AAIA,SAASA,cAAcC,aAAaC,sBAA0C;AAC9E,SAASC,sBAAsB;AAE/B,SAASC,MAAMC,kBAAkB;AAIjC,IAAA,0BAAe,CAACC,YACdC,YAAYC,aAAaC,gBAAgB;EACvCC,eAAe;IACbC,QAAQC,oBAAoBC;IAC5BC,SAAS,CAAC,EAAEC,MAAMC,QAAO,MAAE;AACzB,YAAMC,aAAaC,KAAKC,gBAAgB;QACtCC,OAAOC,WAAWC,eAAeN,OAAAA,CAAAA;MACnC,CAAA;AAEA,aAAO;QAAEO,MAAM;UAAEC,QAAQP;QAAW;MAAE;IACxC;EACF,CAAA;CACD;",
|
|
6
|
-
"names": ["Capabilities", "contributes", "createResolver", "createQueueDxn", "live", "refFromDXN", "context", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "TranscriptionAction", "Create", "resolve", "name", "spaceId", "transcript", "live", "TranscriptType", "queue", "refFromDXN", "createQueueDxn", "data", "object"]
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/react-surface.tsx"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, contributes, createSurface } from '@dxos/app-framework';\nimport { isInstanceOf } from '@dxos/echo-schema';\n\nimport { TranscriptionContainer } from '../components';\nimport { meta } from '../meta';\nimport { TranscriptType } from '../types';\n\nexport default () =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${meta.id}/article/transcript`,\n role: ['article', 'section'],\n filter: (data): data is { subject: TranscriptType } => isInstanceOf(TranscriptType, data.subject),\n component: ({ data, role }) => <TranscriptionContainer transcript={data.subject} role={role} />,\n }),\n ]);\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,cAAcC,aAAaC,qBAAqB;AACzD,SAASC,oBAAoB;AAM7B,IAAA,wBAAe,MACbC,YAAYC,aAAaC,cAAc;EACrCC,cAAc;IACZC,IAAI,GAAGC,KAAKD,EAAE;IACdE,MAAM;MAAC;MAAW;;IAClBC,QAAQ,CAACC,SAA8CC,aAAaC,gBAAgBF,KAAKG,OAAO;IAChGC,WAAW,CAAC,EAAEJ,MAAMF,KAAI,MAAO,sBAAA,cAACO,wBAAAA;MAAuBC,YAAYN,KAAKG;MAASL;;EACnF,CAAA;CACD;",
|
|
6
|
-
"names": ["React", "Capabilities", "contributes", "createSurface", "isInstanceOf", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "meta", "role", "filter", "data", "isInstanceOf", "TranscriptType", "subject", "component", "TranscriptionContainer", "transcript"]
|
|
7
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|