@ohm_studio/sdk-core 0.1.0 → 0.3.0
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/client.d.ts +48 -2
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +170 -16
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/languages.d.ts +49 -0
- package/dist/languages.d.ts.map +1 -0
- package/dist/languages.js +46 -0
- package/dist/languages.js.map +1 -0
- package/dist/mock.d.ts +11 -0
- package/dist/mock.d.ts.map +1 -0
- package/dist/mock.js +71 -0
- package/dist/mock.js.map +1 -0
- package/dist/openapi.gen.d.ts +5 -0
- package/dist/openapi.gen.d.ts.map +1 -0
- package/dist/openapi.gen.js +5 -0
- package/dist/openapi.gen.js.map +1 -0
- package/dist/types.d.ts +67 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +9 -6
package/dist/client.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AudioExtractInput, AudioExtractResult, AudioTranscribeInput, AudioTranscribeResult, ExtractInput, ExtractResult, InsightsInput, InsightsResult, OHMClientOptions, SummarizeInput, SummarizeResult, UsageEvent } from "./types";
|
|
1
|
+
import type { AudioExtractInput, AudioExtractResult, AudioTranscribeInput, AudioTranscribeResult, ExtractInput, ExtractResult, InsightsInput, InsightsResult, OHMClientOptions, OHMInit, StreamChunk, SummarizeInput, SummarizeResult, UsageEvent } from "./types";
|
|
2
2
|
/**
|
|
3
3
|
* Platform-agnostic core client. Subclasses (sdk-js, sdk-react-native)
|
|
4
4
|
* supply the platform-specific multipart/audio adapter via the `attachAudio`
|
|
@@ -12,13 +12,35 @@ export declare abstract class OHMCoreClient {
|
|
|
12
12
|
protected readonly maxRetries: number;
|
|
13
13
|
protected readonly fetchImpl: typeof fetch;
|
|
14
14
|
protected readonly onUsage?: (e: UsageEvent) => void;
|
|
15
|
-
|
|
15
|
+
protected readonly _mock: boolean;
|
|
16
|
+
protected readonly _mockResponses?: OHMClientOptions["mockResponses"];
|
|
17
|
+
constructor(init: OHMInit);
|
|
16
18
|
/** Audio surface — subclasses fill in the multipart adapter. */
|
|
17
19
|
audio: {
|
|
18
20
|
transcribe: (input: AudioTranscribeInput) => Promise<AudioTranscribeResult>;
|
|
19
21
|
extract: <T = Record<string, unknown>>(input: AudioExtractInput) => Promise<AudioExtractResult<T>>;
|
|
22
|
+
/**
|
|
23
|
+
* Streaming variant of audio.extract — returns an AsyncIterable of
|
|
24
|
+
* StreamChunk events so UI can update transcript-then-fields as each
|
|
25
|
+
* step finishes. Backend uses Server-Sent Events.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* const stream = ohm.audio.extract.stream({ apiSlug, file });
|
|
29
|
+
* for await (const chunk of stream) {
|
|
30
|
+
* if (chunk.type === "transcript") setT(chunk.transcript);
|
|
31
|
+
* if (chunk.type === "data") setData(chunk.data);
|
|
32
|
+
* if (chunk.type === "error") throw new Error(chunk.message);
|
|
33
|
+
* }
|
|
34
|
+
*/
|
|
35
|
+
extractStream: <T = Record<string, unknown>>(input: AudioExtractInput) => AsyncIterable<StreamChunk<T>>;
|
|
20
36
|
};
|
|
21
37
|
extract<T = Record<string, unknown>>(input: ExtractInput): Promise<ExtractResult<T>>;
|
|
38
|
+
/**
|
|
39
|
+
* One-line convenience: pass a transcript, get back the data field.
|
|
40
|
+
* Equivalent to `(await ohm.extract({ apiSlug, text })).data` — the most
|
|
41
|
+
* common shape customers want.
|
|
42
|
+
*/
|
|
43
|
+
extractData<T = Record<string, unknown>>(apiSlug: string, text: string, inputs?: Record<string, unknown>): Promise<T>;
|
|
22
44
|
summarize(input: SummarizeInput): Promise<SummarizeResult>;
|
|
23
45
|
insights<T = unknown>(input: InsightsInput): Promise<InsightsResult<T>>;
|
|
24
46
|
protected requestJson<T>(method: string, path: string, body?: unknown): Promise<T>;
|
|
@@ -27,6 +49,30 @@ export declare abstract class OHMCoreClient {
|
|
|
27
49
|
file: any;
|
|
28
50
|
fields?: Record<string, string>;
|
|
29
51
|
}): Promise<T>;
|
|
52
|
+
/**
|
|
53
|
+
* Default SSE-based streaming for audio.extract.stream. Subclasses
|
|
54
|
+
* override `runMultipart` to construct the FormData body for their
|
|
55
|
+
* platform; this method reuses that body and parses an SSE event stream
|
|
56
|
+
* off the response.
|
|
57
|
+
*
|
|
58
|
+
* Each SSE message is a JSON object matching `StreamChunk`. The stream
|
|
59
|
+
* ends on the first `done` or `error` chunk (or when the response body
|
|
60
|
+
* closes). Errors during transport are surfaced as a synthetic
|
|
61
|
+
* `{ type: "error", message }` chunk so consumers always see one final
|
|
62
|
+
* frame.
|
|
63
|
+
*/
|
|
64
|
+
protected runMultipartStream<T>(opts: {
|
|
65
|
+
path: string;
|
|
66
|
+
file: any;
|
|
67
|
+
fields?: Record<string, string>;
|
|
68
|
+
}): AsyncGenerator<StreamChunk<T>>;
|
|
69
|
+
/**
|
|
70
|
+
* Builds a `FormData` (web/Node) or RN-shaped FormData. Subclasses
|
|
71
|
+
* already do this inside `runMultipart`; the streaming path needs the
|
|
72
|
+
* same logic. Default implementation throws — overrides should
|
|
73
|
+
* implement.
|
|
74
|
+
*/
|
|
75
|
+
protected buildMultipartBody(_file: unknown, _fields?: Record<string, string>): Promise<unknown>;
|
|
30
76
|
protected requestRaw<T>(method: string, path: string, init: RequestInit): Promise<T>;
|
|
31
77
|
private parseError;
|
|
32
78
|
}
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,UAAU,EACX,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { OHMAuthError, OHMConfigError, OHMError, OHMRateLimitError, OHMServerError, OHMValidationError, } from "./errors";
|
|
2
2
|
import { backoffMs, isRetriableStatus } from "./retry";
|
|
3
|
+
import { mockResponseFor } from "./mock";
|
|
3
4
|
const DEFAULT_BASE_URL = "https://api.ohm.doctor";
|
|
4
5
|
const DEFAULT_TIMEOUT_MS = 60_000;
|
|
5
6
|
const DEFAULT_MAX_RETRIES = 2;
|
|
@@ -16,10 +17,17 @@ export class OHMCoreClient {
|
|
|
16
17
|
maxRetries;
|
|
17
18
|
fetchImpl;
|
|
18
19
|
onUsage;
|
|
19
|
-
|
|
20
|
-
|
|
20
|
+
_mock;
|
|
21
|
+
_mockResponses;
|
|
22
|
+
constructor(init) {
|
|
23
|
+
// Accept either a bare `ohms_live_…` string (`new OHM("…")`) or the
|
|
24
|
+
// full options object. Most customers want the one-liner.
|
|
25
|
+
const opts = typeof init === "string" ? { apiKey: init } : init;
|
|
26
|
+
// In mock mode the client doesn't need real auth — let tests construct
|
|
27
|
+
// freely. In normal mode at least one of apiKey/jwt is required.
|
|
28
|
+
if (!opts.mock && !opts.apiKey && !opts.jwt) {
|
|
21
29
|
throw new OHMConfigError({
|
|
22
|
-
message: "OHM client requires
|
|
30
|
+
message: "OHM client requires an apiKey. Pass it as `new OHM('ohms_live_…')` or `new OHM({ apiKey: '…' })`.",
|
|
23
31
|
});
|
|
24
32
|
}
|
|
25
33
|
this.baseUrl = (opts.baseUrl || DEFAULT_BASE_URL).replace(/\/+$/, "");
|
|
@@ -29,34 +37,93 @@ export class OHMCoreClient {
|
|
|
29
37
|
this.maxRetries = opts.maxRetries ?? DEFAULT_MAX_RETRIES;
|
|
30
38
|
this.fetchImpl = opts.fetch ?? globalThis.fetch.bind(globalThis);
|
|
31
39
|
this.onUsage = opts.onUsage;
|
|
40
|
+
this._mock = !!opts.mock;
|
|
41
|
+
this._mockResponses = opts.mockResponses;
|
|
32
42
|
}
|
|
33
43
|
/** Audio surface — subclasses fill in the multipart adapter. */
|
|
34
44
|
audio = {
|
|
35
|
-
transcribe: (input) =>
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
47
|
-
}
|
|
45
|
+
transcribe: (input) => {
|
|
46
|
+
if (this._mock) {
|
|
47
|
+
return Promise.resolve(mockResponseFor.transcribe(this._mockResponses));
|
|
48
|
+
}
|
|
49
|
+
return this.runMultipart({
|
|
50
|
+
path: "/api/studio/v1/audio/transcribe",
|
|
51
|
+
file: input.file,
|
|
52
|
+
fields: {
|
|
53
|
+
...(input.language ? { language: input.language } : {}),
|
|
54
|
+
...(input.speakerMode ? { speakerMode: input.speakerMode } : {}),
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
},
|
|
58
|
+
extract: (input) => {
|
|
59
|
+
if (this._mock) {
|
|
60
|
+
return Promise.resolve(mockResponseFor.audioExtract(input.apiSlug, this._mockResponses));
|
|
61
|
+
}
|
|
62
|
+
return this.runMultipart({
|
|
63
|
+
path: `/api/studio/v1/audio/extract/${encodeURIComponent(input.apiSlug)}`,
|
|
64
|
+
file: input.file,
|
|
65
|
+
fields: {
|
|
66
|
+
...(input.language ? { language: input.language } : {}),
|
|
67
|
+
...(input.speakerMode ? { speakerMode: input.speakerMode } : {}),
|
|
68
|
+
...(input.inputs ? { inputs: JSON.stringify(input.inputs) } : {}),
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
},
|
|
72
|
+
/**
|
|
73
|
+
* Streaming variant of audio.extract — returns an AsyncIterable of
|
|
74
|
+
* StreamChunk events so UI can update transcript-then-fields as each
|
|
75
|
+
* step finishes. Backend uses Server-Sent Events.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* const stream = ohm.audio.extract.stream({ apiSlug, file });
|
|
79
|
+
* for await (const chunk of stream) {
|
|
80
|
+
* if (chunk.type === "transcript") setT(chunk.transcript);
|
|
81
|
+
* if (chunk.type === "data") setData(chunk.data);
|
|
82
|
+
* if (chunk.type === "error") throw new Error(chunk.message);
|
|
83
|
+
* }
|
|
84
|
+
*/
|
|
85
|
+
extractStream: (input) => {
|
|
86
|
+
if (this._mock) {
|
|
87
|
+
return mockResponseFor.audioExtractStream(input.apiSlug, this._mockResponses);
|
|
88
|
+
}
|
|
89
|
+
return this.runMultipartStream({
|
|
90
|
+
path: `/api/studio/v1/audio/extract/${encodeURIComponent(input.apiSlug)}/stream`,
|
|
91
|
+
file: input.file,
|
|
92
|
+
fields: {
|
|
93
|
+
...(input.language ? { language: input.language } : {}),
|
|
94
|
+
...(input.speakerMode ? { speakerMode: input.speakerMode } : {}),
|
|
95
|
+
...(input.inputs ? { inputs: JSON.stringify(input.inputs) } : {}),
|
|
96
|
+
},
|
|
97
|
+
});
|
|
98
|
+
},
|
|
48
99
|
};
|
|
49
100
|
async extract(input) {
|
|
101
|
+
if (this._mock) {
|
|
102
|
+
return mockResponseFor.extract(input.apiSlug, this._mockResponses);
|
|
103
|
+
}
|
|
50
104
|
return this.requestJson("POST", `/api/studio/v1/extract/${encodeURIComponent(input.apiSlug)}`, {
|
|
51
105
|
text: input.text,
|
|
52
106
|
inputs: input.inputs,
|
|
53
107
|
includeInsights: input.includeInsights,
|
|
54
108
|
});
|
|
55
109
|
}
|
|
110
|
+
/**
|
|
111
|
+
* One-line convenience: pass a transcript, get back the data field.
|
|
112
|
+
* Equivalent to `(await ohm.extract({ apiSlug, text })).data` — the most
|
|
113
|
+
* common shape customers want.
|
|
114
|
+
*/
|
|
115
|
+
async extractData(apiSlug, text, inputs) {
|
|
116
|
+
const r = await this.extract({ apiSlug, text, inputs });
|
|
117
|
+
return r.data;
|
|
118
|
+
}
|
|
56
119
|
async summarize(input) {
|
|
120
|
+
if (this._mock)
|
|
121
|
+
return mockResponseFor.summarize(this._mockResponses);
|
|
57
122
|
return this.requestJson("POST", "/api/studio/v1/summarize", input);
|
|
58
123
|
}
|
|
59
124
|
async insights(input) {
|
|
125
|
+
if (this._mock)
|
|
126
|
+
return mockResponseFor.insights(this._mockResponses);
|
|
60
127
|
return this.requestJson("POST", `/api/studio/v1/insights/${encodeURIComponent(input.apiSlug)}`, {
|
|
61
128
|
transcript: input.transcript,
|
|
62
129
|
priorNoteSummary: input.priorNoteSummary,
|
|
@@ -69,6 +136,93 @@ export class OHMCoreClient {
|
|
|
69
136
|
body: body !== undefined ? JSON.stringify(body) : undefined,
|
|
70
137
|
});
|
|
71
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* Default SSE-based streaming for audio.extract.stream. Subclasses
|
|
141
|
+
* override `runMultipart` to construct the FormData body for their
|
|
142
|
+
* platform; this method reuses that body and parses an SSE event stream
|
|
143
|
+
* off the response.
|
|
144
|
+
*
|
|
145
|
+
* Each SSE message is a JSON object matching `StreamChunk`. The stream
|
|
146
|
+
* ends on the first `done` or `error` chunk (or when the response body
|
|
147
|
+
* closes). Errors during transport are surfaced as a synthetic
|
|
148
|
+
* `{ type: "error", message }` chunk so consumers always see one final
|
|
149
|
+
* frame.
|
|
150
|
+
*/
|
|
151
|
+
async *runMultipartStream(opts) {
|
|
152
|
+
const url = `${this.baseUrl}${opts.path}`;
|
|
153
|
+
const headers = { Accept: "text/event-stream" };
|
|
154
|
+
if (this.apiKey)
|
|
155
|
+
headers.Authorization = `Bearer ${this.apiKey}`;
|
|
156
|
+
else if (this.jwt)
|
|
157
|
+
headers.Authorization = `Bearer ${this.jwt}`;
|
|
158
|
+
headers["X-OHM-Client"] = "@ohm_studio/sdk@0.2.0";
|
|
159
|
+
const body = (await this.buildMultipartBody(opts.file, opts.fields));
|
|
160
|
+
let res;
|
|
161
|
+
try {
|
|
162
|
+
res = await this.fetchImpl(url, { method: "POST", headers, body });
|
|
163
|
+
}
|
|
164
|
+
catch (err) {
|
|
165
|
+
yield { type: "error", message: err?.message || "network error" };
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
168
|
+
if (!res.ok || !res.body) {
|
|
169
|
+
yield {
|
|
170
|
+
type: "error",
|
|
171
|
+
message: `HTTP ${res.status}`,
|
|
172
|
+
code: String(res.status),
|
|
173
|
+
};
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
const reader = res.body.getReader();
|
|
177
|
+
const decoder = new TextDecoder();
|
|
178
|
+
let buf = "";
|
|
179
|
+
try {
|
|
180
|
+
while (true) {
|
|
181
|
+
const { value, done } = await reader.read();
|
|
182
|
+
if (done)
|
|
183
|
+
break;
|
|
184
|
+
buf += decoder.decode(value, { stream: true });
|
|
185
|
+
// SSE messages are separated by blank lines. Each message can have
|
|
186
|
+
// multiple `data:` fields; we concatenate them.
|
|
187
|
+
let sep;
|
|
188
|
+
while ((sep = buf.indexOf("\n\n")) !== -1) {
|
|
189
|
+
const block = buf.slice(0, sep);
|
|
190
|
+
buf = buf.slice(sep + 2);
|
|
191
|
+
const dataLines = block
|
|
192
|
+
.split(/\r?\n/)
|
|
193
|
+
.filter((l) => l.startsWith("data:"))
|
|
194
|
+
.map((l) => l.slice(5).trimStart());
|
|
195
|
+
if (dataLines.length === 0)
|
|
196
|
+
continue;
|
|
197
|
+
const payload = dataLines.join("\n");
|
|
198
|
+
try {
|
|
199
|
+
const parsed = JSON.parse(payload);
|
|
200
|
+
yield parsed;
|
|
201
|
+
if (parsed.type === "done" || parsed.type === "error")
|
|
202
|
+
return;
|
|
203
|
+
}
|
|
204
|
+
catch {
|
|
205
|
+
yield { type: "error", message: "malformed stream event" };
|
|
206
|
+
return;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
catch (err) {
|
|
212
|
+
yield { type: "error", message: err?.message || "stream broken" };
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Builds a `FormData` (web/Node) or RN-shaped FormData. Subclasses
|
|
217
|
+
* already do this inside `runMultipart`; the streaming path needs the
|
|
218
|
+
* same logic. Default implementation throws — overrides should
|
|
219
|
+
* implement.
|
|
220
|
+
*/
|
|
221
|
+
buildMultipartBody(_file, _fields) {
|
|
222
|
+
throw new OHMConfigError({
|
|
223
|
+
message: "Streaming requires the SDK wrapper to implement buildMultipartBody",
|
|
224
|
+
});
|
|
225
|
+
}
|
|
72
226
|
async requestRaw(method, path, init) {
|
|
73
227
|
const url = `${this.baseUrl}${path}`;
|
|
74
228
|
const headers = new Headers(init.headers || {});
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,iBAAiB,EACjB,cAAc,EACd,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAiBvD,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAEzC,MAAM,gBAAgB,GAAG,wBAAwB,CAAC;AAClD,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B;;;;GAIG;AACH,MAAM,OAAgB,aAAa;IACd,OAAO,CAAS;IAChB,MAAM,CAAU;IAChB,GAAG,CAAU;IACb,SAAS,CAAS;IAClB,UAAU,CAAS;IACnB,SAAS,CAAe;IACxB,OAAO,CAA2B;IAClC,KAAK,CAAU;IACf,cAAc,CAAqC;IAEtE,YAAY,IAAa;QACvB,oEAAoE;QACpE,0DAA0D;QAC1D,MAAM,IAAI,GACR,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAErD,uEAAuE;QACvE,iEAAiE;QACjE,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC5C,MAAM,IAAI,cAAc,CAAC;gBACvB,OAAO,EACL,mGAAmG;aACtG,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,kBAAkB,CAAC;QACtD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,mBAAmB,CAAC;QACzD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACjE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;IAC3C,CAAC;IAED,gEAAgE;IAChE,KAAK,GAAG;QACN,UAAU,EAAE,CAAC,KAA2B,EAAkC,EAAE;YAC1E,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;YAC1E,CAAC;YACD,OAAO,IAAI,CAAC,YAAY,CAAwB;gBAC9C,IAAI,EAAE,iCAAiC;gBACvC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE;oBACN,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvD,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACjE;aACF,CAAC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,CACP,KAAwB,EACQ,EAAE;YAClC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,OAAO,CAAC,OAAO,CACpB,eAAe,CAAC,YAAY,CAAI,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,CACpE,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC,YAAY,CAAwB;gBAC9C,IAAI,EAAE,gCAAgC,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;gBACzE,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE;oBACN,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvD,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAClE;aACF,CAAC,CAAC;QACL,CAAC;QACD;;;;;;;;;;;;WAYG;QACH,aAAa,EAAE,CACb,KAAwB,EACO,EAAE;YACjC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,eAAe,CAAC,kBAAkB,CACvC,KAAK,CAAC,OAAO,EACb,IAAI,CAAC,cAAc,CACpB,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC,kBAAkB,CAAI;gBAChC,IAAI,EAAE,gCAAgC,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS;gBAChF,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE;oBACN,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvD,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAClE;aACF,CAAC,CAAC;QACL,CAAC;KACF,CAAC;IAEF,KAAK,CAAC,OAAO,CACX,KAAmB;QAEnB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,eAAe,CAAC,OAAO,CAAI,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CACrB,MAAM,EACN,0BAA0B,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAC7D;YACE,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,eAAe,EAAE,KAAK,CAAC,eAAe;SACvC,CACF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CACf,OAAe,EACf,IAAY,EACZ,MAAgC;QAEhC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3D,OAAO,CAAC,CAAC,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAqB;QACnC,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACtE,OAAO,IAAI,CAAC,WAAW,CACrB,MAAM,EACN,0BAA0B,EAC1B,KAAK,CACN,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,KAAoB;QAEpB,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,eAAe,CAAC,QAAQ,CAAI,IAAI,CAAC,cAAc,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC,WAAW,CACrB,MAAM,EACN,2BAA2B,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAC9D;YACE,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;SACzC,CACF,CAAC;IACJ,CAAC;IAED,4EAA4E;IAElE,KAAK,CAAC,WAAW,CACzB,MAAc,EACd,IAAY,EACZ,IAAc;QAEd,OAAO,IAAI,CAAC,UAAU,CAAI,MAAM,EAAE,IAAI,EAAE;YACtC,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;SAC5D,CAAC,CAAC;IACL,CAAC;IAQD;;;;;;;;;;;OAWG;IACO,KAAK,CAAC,CAAC,kBAAkB,CAAI,IAItC;QACC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC1C,MAAM,OAAO,GAA2B,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;QACxE,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,CAAC,aAAa,GAAG,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC;aAC5D,IAAI,IAAI,CAAC,GAAG;YAAE,OAAO,CAAC,aAAa,GAAG,UAAU,IAAI,CAAC,GAAG,EAAE,CAAC;QAChE,OAAO,CAAC,cAAc,CAAC,GAAG,uBAAuB,CAAC;QAClD,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,kBAAkB,CACzC,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,MAAM,CACZ,CAAa,CAAC;QACf,IAAI,GAAa,CAAC;QAClB,IAAI,CAAC;YACH,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,IAAI,eAAe,EAAE,CAAC;YAClE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YACzB,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,QAAQ,GAAG,CAAC,MAAM,EAAE;gBAC7B,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;aACzB,CAAC;YACF,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,CAAC;YACH,OAAO,IAAI,EAAE,CAAC;gBACZ,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC5C,IAAI,IAAI;oBAAE,MAAM;gBAChB,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC/C,mEAAmE;gBACnE,gDAAgD;gBAChD,IAAI,GAAW,CAAC;gBAChB,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC1C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oBAChC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;oBACzB,MAAM,SAAS,GAAG,KAAK;yBACpB,KAAK,CAAC,OAAO,CAAC;yBACd,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;yBACpC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;oBACtC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;wBAAE,SAAS;oBACrC,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrC,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAmB,CAAC;wBACrD,MAAM,MAAM,CAAC;wBACb,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO;4BAAE,OAAO;oBAChE,CAAC;oBAAC,MAAM,CAAC;wBACP,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC;wBAC3D,OAAO;oBACT,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,IAAI,eAAe,EAAE,CAAC;QACpE,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACO,kBAAkB,CAC1B,KAAc,EACd,OAAgC;QAEhC,MAAM,IAAI,cAAc,CAAC;YACvB,OAAO,EACL,oEAAoE;SACvE,CAAC,CAAC;IACL,CAAC;IAES,KAAK,CAAC,UAAU,CACxB,MAAc,EACd,IAAY,EACZ,IAAiB;QAEjB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;aAClE,IAAI,IAAI,CAAC,GAAG;YAAE,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,SAAkB,CAAC;QACvB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;YAC5D,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACvD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE;oBACpC,GAAG,IAAI;oBACP,MAAM;oBACN,OAAO;oBACP,MAAM,EAAE,EAAE,CAAC,MAAM;iBAClB,CAAC,CAAC;gBACH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC;gBACtC,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,QAAQ,EAAE,IAAI;oBACd,MAAM;oBACN,EAAE,EAAE,GAAG,CAAC,EAAE;oBACV,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,SAAS;oBACT,OAAO,EAAE,OAAO;iBACjB,CAAC,CAAC;gBACH,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;oBACX,2BAA2B;oBAC3B,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;wBAAE,OAAO,SAAc,CAAC;oBAC9C,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAM,CAAC;gBACjC,CAAC;gBACD,IAAI,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;oBAC/D,MAAM,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oBAChC,SAAS;gBACX,CAAC;gBACD,MAAM,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACnC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,YAAY,CAAC,CAAC,CAAC,CAAC;gBAChB,IAAI,GAAG,YAAY,QAAQ;oBAAE,MAAM,GAAG,CAAC;gBACvC,SAAS,GAAG,GAAG,CAAC;gBAChB,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;oBAC9B,MAAM,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oBAChC,SAAS;gBACX,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,YAAY,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QACD,IAAI,SAAS,YAAY,QAAQ;YAAE,MAAM,SAAS,CAAC;QACnD,MAAM,IAAI,cAAc,CAAC;YACvB,OAAO,EACJ,SAAmB,EAAE,OAAO,IAAI,8BAA8B;YACjE,MAAM,EAAE,CAAC;SACV,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,GAAa;QACpC,IAAI,IAAI,GAAQ,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,mDAAmD;QACrD,CAAC;QACD,MAAM,SAAS,GACb,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,SAAS,CAAC;QACtF,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;QACtD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC7C,OAAO,IAAI,YAAY,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC7C,OAAO,IAAI,kBAAkB,CAAC;gBAC5B,OAAO;gBACP,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,SAAS;gBACT,MAAM,EAAE,IAAI,EAAE,MAAM;aACrB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvB,OAAO,IAAI,iBAAiB,CAAC;gBAC3B,OAAO;gBACP,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,SAAS;gBACT,aAAa,EACX,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;oBACtC,IAAI,EAAE,aAAa;oBACnB,SAAS;aACZ,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,cAAc,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IACxE,CAAC;CACF;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AACrD,CAAC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Languages OHM's transcription pipeline accepts. Use this in pickers
|
|
3
|
+
* instead of hard-coding the list — we bump it as the pipeline gains
|
|
4
|
+
* coverage.
|
|
5
|
+
*
|
|
6
|
+
* import { SUPPORTED_LANGUAGES } from "@ohm_studio/sdk";
|
|
7
|
+
*
|
|
8
|
+
* <select onChange={(e) => setLang(e.target.value)}>
|
|
9
|
+
* {SUPPORTED_LANGUAGES.map((l) => (
|
|
10
|
+
* <option key={l.code} value={l.code}>{l.label}</option>
|
|
11
|
+
* ))}
|
|
12
|
+
* </select>
|
|
13
|
+
*
|
|
14
|
+
* Codes accepted by the API:
|
|
15
|
+
* - "auto" — let the model detect the language
|
|
16
|
+
* - ISO short codes — "en", "hi", "ta", …
|
|
17
|
+
* - Provider-shaped codes — "en-IN", "hi-IN", …
|
|
18
|
+
*
|
|
19
|
+
* Pass any of these as `audio.transcribe({ language })` or
|
|
20
|
+
* `audio.extract({ language })`.
|
|
21
|
+
*/
|
|
22
|
+
export interface SupportedLanguage {
|
|
23
|
+
/** Stable code to send to the API. */
|
|
24
|
+
code: string;
|
|
25
|
+
/** Human-readable name for pickers. */
|
|
26
|
+
label: string;
|
|
27
|
+
/** Native script name (for bilingual UIs). */
|
|
28
|
+
nativeLabel?: string;
|
|
29
|
+
/** Whether this is the auto-detect placeholder. */
|
|
30
|
+
isAutoDetect?: boolean;
|
|
31
|
+
}
|
|
32
|
+
export declare const SUPPORTED_LANGUAGES: readonly SupportedLanguage[];
|
|
33
|
+
/**
|
|
34
|
+
* Returns true if `code` is one this SDK accepts. Use to validate
|
|
35
|
+
* user-supplied language codes before submitting.
|
|
36
|
+
*/
|
|
37
|
+
export declare function isSupportedLanguageCode(code: string): boolean;
|
|
38
|
+
/**
|
|
39
|
+
* The two speaker modes accepted by `audio.extract` / `audio.transcribe`.
|
|
40
|
+
* Use this in pickers — there are exactly two intended modes; we don't
|
|
41
|
+
* expose multi-speaker variants.
|
|
42
|
+
*/
|
|
43
|
+
export interface SpeakerModeChoice {
|
|
44
|
+
code: "doctor" | "doctor_patient";
|
|
45
|
+
label: string;
|
|
46
|
+
description: string;
|
|
47
|
+
}
|
|
48
|
+
export declare const SPEAKER_MODES: readonly SpeakerModeChoice[];
|
|
49
|
+
//# sourceMappingURL=languages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"languages.d.ts","sourceRoot":"","sources":["../src/languages.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,iBAAiB;IAChC,sCAAsC;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,mBAAmB,EAAE,SAAS,iBAAiB,EAyBlD,CAAC;AAEX;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,QAAQ,GAAG,gBAAgB,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,aAAa,EAAE,SAAS,iBAAiB,EAa5C,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
export const SUPPORTED_LANGUAGES = [
|
|
2
|
+
{ code: "auto", label: "Auto-detect", isAutoDetect: true },
|
|
3
|
+
{ code: "en", label: "English (India)", nativeLabel: "English" },
|
|
4
|
+
{ code: "hi", label: "Hindi", nativeLabel: "हिन्दी" },
|
|
5
|
+
{ code: "ta", label: "Tamil", nativeLabel: "தமிழ்" },
|
|
6
|
+
{ code: "te", label: "Telugu", nativeLabel: "తెలుగు" },
|
|
7
|
+
{ code: "mr", label: "Marathi", nativeLabel: "मराठी" },
|
|
8
|
+
{ code: "bn", label: "Bengali", nativeLabel: "বাংলা" },
|
|
9
|
+
{ code: "kn", label: "Kannada", nativeLabel: "ಕನ್ನಡ" },
|
|
10
|
+
{ code: "ml", label: "Malayalam", nativeLabel: "മലയാളം" },
|
|
11
|
+
{ code: "gu", label: "Gujarati", nativeLabel: "ગુજરાતી" },
|
|
12
|
+
{ code: "pa", label: "Punjabi", nativeLabel: "ਪੰਜਾਬੀ" },
|
|
13
|
+
{ code: "ur", label: "Urdu", nativeLabel: "اردو" },
|
|
14
|
+
{ code: "or", label: "Odia", nativeLabel: "ଓଡ଼ିଆ" },
|
|
15
|
+
{ code: "as", label: "Assamese", nativeLabel: "অসমীয়া" },
|
|
16
|
+
{ code: "ne", label: "Nepali", nativeLabel: "नेपाली" },
|
|
17
|
+
{ code: "kok", label: "Konkani", nativeLabel: "कोंकणी" },
|
|
18
|
+
{ code: "ks", label: "Kashmiri", nativeLabel: "कॉशुर" },
|
|
19
|
+
{ code: "sd", label: "Sindhi", nativeLabel: "سنڌي" },
|
|
20
|
+
{ code: "sa", label: "Sanskrit", nativeLabel: "संस्कृत" },
|
|
21
|
+
{ code: "sat", label: "Santali", nativeLabel: "ᱥᱟᱱᱛᱟᱲᱤ" },
|
|
22
|
+
{ code: "mni", label: "Manipuri", nativeLabel: "ꯃꯩꯇꯩꯂꯣꯟ" },
|
|
23
|
+
{ code: "brx", label: "Bodo", nativeLabel: "बड़ो" },
|
|
24
|
+
{ code: "mai", label: "Maithili", nativeLabel: "मैथिली" },
|
|
25
|
+
{ code: "doi", label: "Dogri", nativeLabel: "डोगरी" },
|
|
26
|
+
];
|
|
27
|
+
/**
|
|
28
|
+
* Returns true if `code` is one this SDK accepts. Use to validate
|
|
29
|
+
* user-supplied language codes before submitting.
|
|
30
|
+
*/
|
|
31
|
+
export function isSupportedLanguageCode(code) {
|
|
32
|
+
return SUPPORTED_LANGUAGES.some((l) => l.code === code);
|
|
33
|
+
}
|
|
34
|
+
export const SPEAKER_MODES = [
|
|
35
|
+
{
|
|
36
|
+
code: "doctor",
|
|
37
|
+
label: "Doctor only",
|
|
38
|
+
description: "Single-speaker dictation. Use for nurse-station vitals, dictated notes, ward rounds — anywhere only the clinician speaks into the mic.",
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
code: "doctor_patient",
|
|
42
|
+
label: "Doctor + Patient",
|
|
43
|
+
description: "Two-speaker conversation. Hints the extractor to attribute history to the patient and assessment / plan to the doctor.",
|
|
44
|
+
},
|
|
45
|
+
];
|
|
46
|
+
//# sourceMappingURL=languages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"languages.js","sourceRoot":"","sources":["../src/languages.ts"],"names":[],"mappings":"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"}
|
package/dist/mock.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AudioExtractResult, AudioTranscribeResult, ExtractResult, InsightsResult, OHMClientOptions, StreamChunk, SummarizeResult } from "./types";
|
|
2
|
+
export declare const mockResponseFor: {
|
|
3
|
+
extract<T = Record<string, unknown>>(apiSlug: string, overrides?: OHMClientOptions["mockResponses"]): ExtractResult<T>;
|
|
4
|
+
transcribe(overrides?: OHMClientOptions["mockResponses"]): AudioTranscribeResult;
|
|
5
|
+
audioExtract<T = Record<string, unknown>>(apiSlug: string, overrides?: OHMClientOptions["mockResponses"]): AudioExtractResult<T>;
|
|
6
|
+
summarize(overrides?: OHMClientOptions["mockResponses"]): SummarizeResult;
|
|
7
|
+
insights<T = unknown>(overrides?: OHMClientOptions["mockResponses"]): InsightsResult<T>;
|
|
8
|
+
/** Async iterator that emits the canned stream chunks for tests. */
|
|
9
|
+
audioExtractStream<T = Record<string, unknown>>(apiSlug: string, overrides?: OHMClientOptions["mockResponses"]): AsyncGenerator<StreamChunk<T>>;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=mock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../src/mock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,eAAe,EAChB,MAAM,SAAS,CAAC;AA+BjB,eAAO,MAAM,eAAe;YAClB,CAAC,qCACE,MAAM,cACH,gBAAgB,CAAC,eAAe,CAAC,GAC5C,aAAa,CAAC,CAAC,CAAC;2BAQL,gBAAgB,CAAC,eAAe,CAAC,GAC5C,qBAAqB;iBASX,CAAC,qCACH,MAAM,cACH,gBAAgB,CAAC,eAAe,CAAC,GAC5C,kBAAkB,CAAC,CAAC,CAAC;0BASV,gBAAgB,CAAC,eAAe,CAAC,GAC5C,eAAe;aAQT,CAAC,wBACI,gBAAgB,CAAC,eAAe,CAAC,GAC5C,cAAc,CAAC,CAAC,CAAC;IAUpB,oEAAoE;uBAC1C,CAAC,qCAChB,MAAM,cACH,gBAAgB,CAAC,eAAe,CAAC,GAC5C,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAOlC,CAAC"}
|
package/dist/mock.js
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deterministic mock responses used when `new OHM({ mock: true })`. Output
|
|
3
|
+
* is realistic enough for UI snapshots + integration tests without ever
|
|
4
|
+
* hitting the network. Customers can override per-method via `mockResponses`.
|
|
5
|
+
*/
|
|
6
|
+
const SAMPLE_DATA = {
|
|
7
|
+
vitals: {
|
|
8
|
+
bp: { systolic: 130, diastolic: 85 },
|
|
9
|
+
hr: 92,
|
|
10
|
+
temp: 38.6,
|
|
11
|
+
spo2: 97,
|
|
12
|
+
},
|
|
13
|
+
diagnoses: [{ name: "Fever", status: "active" }],
|
|
14
|
+
medications: [
|
|
15
|
+
{
|
|
16
|
+
name: "Paracetamol",
|
|
17
|
+
dosage: "650mg",
|
|
18
|
+
frequency: "TDS",
|
|
19
|
+
duration: "5 days",
|
|
20
|
+
},
|
|
21
|
+
],
|
|
22
|
+
};
|
|
23
|
+
const SAMPLE_TRANSCRIPT = "Patient is a 35-year-old male presenting with fever for 3 days. " +
|
|
24
|
+
"Blood pressure is 130 over 85, heart rate 92, temperature 38.6 Celsius. " +
|
|
25
|
+
"Started on Paracetamol 650mg three times a day for 5 days.";
|
|
26
|
+
export const mockResponseFor = {
|
|
27
|
+
extract(apiSlug, overrides) {
|
|
28
|
+
return overrides?.extract ?? {
|
|
29
|
+
data: SAMPLE_DATA,
|
|
30
|
+
apiSlug,
|
|
31
|
+
version: "mock@v0",
|
|
32
|
+
};
|
|
33
|
+
},
|
|
34
|
+
transcribe(overrides) {
|
|
35
|
+
return (overrides?.transcribe ?? {
|
|
36
|
+
transcript: SAMPLE_TRANSCRIPT,
|
|
37
|
+
language: "en",
|
|
38
|
+
durationSec: 28,
|
|
39
|
+
});
|
|
40
|
+
},
|
|
41
|
+
audioExtract(apiSlug, overrides) {
|
|
42
|
+
return overrides?.audioExtract ?? {
|
|
43
|
+
transcript: SAMPLE_TRANSCRIPT,
|
|
44
|
+
language: "en",
|
|
45
|
+
data: SAMPLE_DATA,
|
|
46
|
+
apiSlug,
|
|
47
|
+
};
|
|
48
|
+
},
|
|
49
|
+
summarize(overrides) {
|
|
50
|
+
return (overrides?.summarize ?? {
|
|
51
|
+
summary: "- 35-year-old male, fever 3 days\n- BP 130/85, HR 92, temp 38.6°C\n- Started on Paracetamol 650mg TDS",
|
|
52
|
+
});
|
|
53
|
+
},
|
|
54
|
+
insights(overrides) {
|
|
55
|
+
return (overrides?.insights ?? ({
|
|
56
|
+
insights: {
|
|
57
|
+
riskFactors: ["fever > 3 days"],
|
|
58
|
+
differentials: ["Viral fever", "Dengue"],
|
|
59
|
+
},
|
|
60
|
+
}));
|
|
61
|
+
},
|
|
62
|
+
/** Async iterator that emits the canned stream chunks for tests. */
|
|
63
|
+
async *audioExtractStream(apiSlug, overrides) {
|
|
64
|
+
const t = this.transcribe(overrides);
|
|
65
|
+
yield { type: "transcript", transcript: t.transcript, language: t.language };
|
|
66
|
+
const d = this.audioExtract(apiSlug, overrides);
|
|
67
|
+
yield { type: "data", data: d.data, apiSlug };
|
|
68
|
+
yield { type: "done", latencyMs: 42 };
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=mock.js.map
|
package/dist/mock.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock.js","sourceRoot":"","sources":["../src/mock.ts"],"names":[],"mappings":"AAUA;;;;GAIG;AAEH,MAAM,WAAW,GAAG;IAClB,MAAM,EAAE;QACN,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE;QACpC,EAAE,EAAE,EAAE;QACN,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,EAAE;KACT;IACD,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,QAAiB,EAAE,CAAC;IACzD,WAAW,EAAE;QACX;YACE,IAAI,EAAE,aAAa;YACnB,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,KAAK;YAChB,QAAQ,EAAE,QAAQ;SACnB;KACF;CACF,CAAC;AAEF,MAAM,iBAAiB,GACrB,kEAAkE;IAClE,0EAA0E;IAC1E,4DAA4D,CAAC;AAE/D,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,CACL,OAAe,EACf,SAA6C;QAE7C,OAAQ,SAAS,EAAE,OAA4B,IAAI;YACjD,IAAI,EAAE,WAA2B;YACjC,OAAO;YACP,OAAO,EAAE,SAAS;SACnB,CAAC;IACJ,CAAC;IACD,UAAU,CACR,SAA6C;QAE7C,OAAO,CACL,SAAS,EAAE,UAAU,IAAI;YACvB,UAAU,EAAE,iBAAiB;YAC7B,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,EAAE;SAChB,CACF,CAAC;IACJ,CAAC;IACD,YAAY,CACV,OAAe,EACf,SAA6C;QAE7C,OAAQ,SAAS,EAAE,YAAsC,IAAI;YAC3D,UAAU,EAAE,iBAAiB;YAC7B,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,WAA2B;YACjC,OAAO;SACR,CAAC;IACJ,CAAC;IACD,SAAS,CACP,SAA6C;QAE7C,OAAO,CACL,SAAS,EAAE,SAAS,IAAI;YACtB,OAAO,EACL,uGAAuG;SAC1G,CACF,CAAC;IACJ,CAAC;IACD,QAAQ,CACN,SAA6C;QAE7C,OAAO,CACJ,SAAS,EAAE,QAA8B,IAAI,CAAC;YAC7C,QAAQ,EAAE;gBACR,WAAW,EAAE,CAAC,gBAAgB,CAAC;gBAC/B,aAAa,EAAE,CAAC,aAAa,EAAE,QAAQ,CAAC;aACzB;SAClB,CAAC,CACH,CAAC;IACJ,CAAC;IACD,oEAAoE;IACpE,KAAK,CAAC,CAAC,kBAAkB,CACvB,OAAe,EACf,SAA6C;QAE7C,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC7E,MAAM,CAAC,GAAG,IAAI,CAAC,YAAY,CAAI,OAAO,EAAE,SAAS,CAAC,CAAC;QACnD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;QAC9C,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IACxC,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi.gen.d.ts","sourceRoot":"","sources":["../src/openapi.gen.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC5C,MAAM,MAAM,UAAU,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// Placeholder — replaced on `pnpm --filter @ohm_studio/sdk-core run gen`
|
|
2
|
+
// once a live OHM Studio API is reachable. Until then the SDK uses the
|
|
3
|
+
// hand-written types in ./types.ts; the generated file augments them.
|
|
4
|
+
export {};
|
|
5
|
+
//# sourceMappingURL=openapi.gen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi.gen.js","sourceRoot":"","sources":["../src/openapi.gen.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,uEAAuE;AACvE,sEAAsE"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Anything you can pass to `new OHM(...)`.
|
|
3
|
+
*
|
|
4
|
+
* new OHM("ohms_live_…") // bare-string shortcut
|
|
5
|
+
* new OHM({ apiKey: "ohms_live_…" }) // full options object
|
|
6
|
+
*/
|
|
7
|
+
export type OHMInit = string | OHMClientOptions;
|
|
1
8
|
/** Public option bag for the OHM client. */
|
|
2
9
|
export interface OHMClientOptions {
|
|
3
10
|
/** API key issued from the Studio Keys page. */
|
|
@@ -22,6 +29,28 @@ export interface OHMClientOptions {
|
|
|
22
29
|
* runtime. Documented at docs.ohm.doctor/security/rn-key-handling.
|
|
23
30
|
*/
|
|
24
31
|
acknowledgeBundledKey?: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Mock mode. When true, every method returns deterministic canned data
|
|
34
|
+
* without hitting the network. Use this in unit tests or local
|
|
35
|
+
* preview builds where you don't want to debit a real key.
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* const ohm = new OHM({ apiKey: "test", mock: true });
|
|
39
|
+
* const { data } = await ohm.extract({ apiSlug: "x", text: "..." });
|
|
40
|
+
* // data is a stub matching ExtractResult shape
|
|
41
|
+
*/
|
|
42
|
+
mock?: boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Override the canned mock responses for specific methods. Only consulted
|
|
45
|
+
* when `mock: true`. Useful for golden-path test fixtures.
|
|
46
|
+
*/
|
|
47
|
+
mockResponses?: Partial<{
|
|
48
|
+
extract: ExtractResult;
|
|
49
|
+
transcribe: AudioTranscribeResult;
|
|
50
|
+
audioExtract: AudioExtractResult;
|
|
51
|
+
summarize: SummarizeResult;
|
|
52
|
+
insights: InsightsResult;
|
|
53
|
+
}>;
|
|
25
54
|
}
|
|
26
55
|
export interface UsageEvent {
|
|
27
56
|
endpoint: string;
|
|
@@ -43,15 +72,29 @@ export interface ExtractResult<T = Record<string, unknown>> {
|
|
|
43
72
|
version?: string;
|
|
44
73
|
insights?: unknown;
|
|
45
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Who is speaking on the recording. The two supported modes:
|
|
77
|
+
*
|
|
78
|
+
* - "doctor" (default) — single-speaker dictation. Fastest, cleanest.
|
|
79
|
+
* Use for nurse-station vitals, dictated notes, ward rounds where
|
|
80
|
+
* only the clinician speaks into the mic.
|
|
81
|
+
* - "doctor_patient" — two-speaker conversation. Hints the extractor
|
|
82
|
+
* to attribute history-of-illness to the patient and assessment /
|
|
83
|
+
* plan to the doctor. Use for full visit recordings.
|
|
84
|
+
*/
|
|
85
|
+
export type SpeakerMode = "doctor" | "doctor_patient";
|
|
46
86
|
export interface AudioTranscribeInput {
|
|
47
87
|
/** Platform-specific file shape resolved by the wrapper. */
|
|
48
88
|
file: any;
|
|
49
89
|
language?: string;
|
|
90
|
+
/** Defaults to "doctor". */
|
|
91
|
+
speakerMode?: SpeakerMode;
|
|
50
92
|
}
|
|
51
93
|
export interface AudioTranscribeResult {
|
|
52
94
|
transcript: string;
|
|
53
95
|
language?: string;
|
|
54
96
|
durationSec?: number;
|
|
97
|
+
speakerMode?: SpeakerMode;
|
|
55
98
|
}
|
|
56
99
|
export interface AudioExtractInput extends AudioTranscribeInput {
|
|
57
100
|
apiSlug: string;
|
|
@@ -78,4 +121,28 @@ export interface InsightsInput {
|
|
|
78
121
|
export interface InsightsResult<T = unknown> {
|
|
79
122
|
insights: T;
|
|
80
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* Streaming chunk emitted by `ohm.audio.extract.stream(...)`.
|
|
126
|
+
* Server emits, in order:
|
|
127
|
+
* 1. `transcript` — STT finished, transcript available
|
|
128
|
+
* 2. `data` — extraction finished, structured JSON available
|
|
129
|
+
* 3. `done` — stream complete (always last)
|
|
130
|
+
* `error` — surfaced if any step fails; consumer should break
|
|
131
|
+
*/
|
|
132
|
+
export type StreamChunk<T = Record<string, unknown>> = {
|
|
133
|
+
type: "transcript";
|
|
134
|
+
transcript: string;
|
|
135
|
+
language?: string;
|
|
136
|
+
} | {
|
|
137
|
+
type: "data";
|
|
138
|
+
data: T;
|
|
139
|
+
apiSlug: string;
|
|
140
|
+
} | {
|
|
141
|
+
type: "done";
|
|
142
|
+
latencyMs: number;
|
|
143
|
+
} | {
|
|
144
|
+
type: "error";
|
|
145
|
+
message: string;
|
|
146
|
+
code?: string;
|
|
147
|
+
};
|
|
81
148
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,MAAM,WAAW,gBAAgB;IAC/B,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oFAAoF;IACpF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB;;;OAGG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACtC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ohm_studio/sdk-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Shared core for @ohm/sdk and @ohm/sdk-react-native — http client, types, errors, retry, streaming. Use one of the platform wrappers instead of consuming this directly.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"publishConfig": {
|
|
@@ -25,11 +25,14 @@
|
|
|
25
25
|
"files": [
|
|
26
26
|
"dist"
|
|
27
27
|
],
|
|
28
|
+
"scripts": {
|
|
29
|
+
"clean": "rm -rf dist",
|
|
30
|
+
"build": "rm -rf dist && tsc -p tsconfig.json",
|
|
31
|
+
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
32
|
+
"gen": "node scripts/generate-types.mjs"
|
|
33
|
+
},
|
|
28
34
|
"devDependencies": {
|
|
35
|
+
"openapi-typescript": "^7.13.0",
|
|
29
36
|
"typescript": "^5.8.3"
|
|
30
|
-
},
|
|
31
|
-
"scripts": {
|
|
32
|
-
"build": "tsc -p tsconfig.json",
|
|
33
|
-
"typecheck": "tsc -p tsconfig.json --noEmit"
|
|
34
37
|
}
|
|
35
|
-
}
|
|
38
|
+
}
|