@zhivex-ai/xai 0.2.11 → 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/README.md +46 -7
- package/dist/index.d.ts +11 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +67 -25
- package/dist/index.js.map +1 -1
- package/dist/media.d.ts +94 -0
- package/dist/media.d.ts.map +1 -0
- package/dist/media.js +517 -0
- package/dist/media.js.map +1 -0
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @zhivex-ai/xai
|
|
2
2
|
|
|
3
|
-
xAI Grok adapter for Zhivex AI SDK. It uses the xAI Responses API by default and supports Chat Completions as an explicit compatibility mode.
|
|
3
|
+
xAI Grok adapter for Zhivex AI SDK. It uses the xAI Responses API by default and supports Chat Completions as an explicit compatibility mode for models that still accept it. `grok-4.7` is Responses-only.
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
@@ -19,7 +19,7 @@ const xai = createXAI({
|
|
|
19
19
|
});
|
|
20
20
|
|
|
21
21
|
const result = await generateText({
|
|
22
|
-
model: xai("grok-4.
|
|
22
|
+
model: xai("grok-4.7"),
|
|
23
23
|
prompt: "Summarize the latest xAI release with sources.",
|
|
24
24
|
reasoning: { effort: "medium" },
|
|
25
25
|
providerOptions: { conversationId: "release-research" },
|
|
@@ -34,20 +34,59 @@ console.log(result.text);
|
|
|
34
34
|
|
|
35
35
|
The adapter defaults to `https://api.x.ai/v1` and reads `XAI_API_KEY` when no API key is passed explicitly.
|
|
36
36
|
|
|
37
|
-
## Supported Grok 4.6 and 4.5 features
|
|
37
|
+
## Supported Grok 4.7, 4.6, and 4.5 features
|
|
38
38
|
|
|
39
39
|
- text and image input
|
|
40
40
|
- streaming
|
|
41
41
|
- function calling and tool choice
|
|
42
42
|
- native structured output
|
|
43
|
-
-
|
|
44
|
-
- always-on reasoning for
|
|
45
|
-
- hosted Web Search, X Search, code execution
|
|
43
|
+
- `low`, `medium`, `high` (the provider default), and `xhigh` reasoning effort
|
|
44
|
+
- always-on reasoning for these model families (`none` is rejected, and penalty or stop controls are rejected while reasoning is active)
|
|
45
|
+
- hosted Web Search, X Search, and code execution
|
|
46
|
+
- Collections file search on models whose capability flag is `fileSearch: true`. The grok-4.7 model page does not list file search, so that flag is false. The collections guide still shows `file_search` requests for `grok-4.7`, and this adapter does not reject that tool
|
|
46
47
|
- Files API attachments
|
|
47
48
|
- prompt caching through `conversationId` or `prompt_cache_key`
|
|
48
49
|
- Responses conversation continuity and encrypted reasoning preservation when `store: false`
|
|
49
50
|
|
|
50
|
-
Use `providerOptions: { apiMode: "chat" }` only when Chat Completions compatibility is required. In Chat mode, `conversationId` is sent through the `x-grok-conv-id` header.
|
|
51
|
+
Use `providerOptions: { apiMode: "chat" }` only when Chat Completions compatibility is required. `grok-4.7` rejects that mode. In Chat mode, `conversationId` is sent through the `x-grok-conv-id` header.
|
|
52
|
+
|
|
53
|
+
`createXAI({ region: "us" })` calls `https://us.api.x.ai/v1`. xAI currently documents that regional host for `grok-4.7` and `grok-4.6`, with a 10% token premium. Do not pass `region` and `baseURL` together.
|
|
54
|
+
|
|
55
|
+
## Imagine and voice
|
|
56
|
+
|
|
57
|
+
```ts
|
|
58
|
+
import { generateImage, generateSpeech, generateVideo, transcribeAudio } from "@zhivex-ai/core";
|
|
59
|
+
import { createXAI } from "@zhivex-ai/xai";
|
|
60
|
+
|
|
61
|
+
const xai = createXAI({ apiKey: process.env.XAI_API_KEY });
|
|
62
|
+
|
|
63
|
+
const image = await generateImage({
|
|
64
|
+
model: xai.imageGenerationModel("grok-imagine-image-2.0"),
|
|
65
|
+
prompt: "A collage of London landmarks"
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
const video = await generateVideo({
|
|
69
|
+
model: xai.videoGenerationModel("grok-imagine-video-1.5"),
|
|
70
|
+
prompt: "A serene lake at sunrise",
|
|
71
|
+
durationSeconds: 8,
|
|
72
|
+
pollIntervalMs: 5_000
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
const speech = await generateSpeech({
|
|
76
|
+
model: xai.speechModel("grok-tts"),
|
|
77
|
+
input: "Hello from Grok.",
|
|
78
|
+
voice: "eve"
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
const transcript = await transcribeAudio({
|
|
82
|
+
model: xai.transcriptionModel("grok-voice-transcribe-2.0"),
|
|
83
|
+
audio: { data: audioBytes, mediaType: "audio/mpeg" }
|
|
84
|
+
});
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
Image models are `grok-imagine-image`, `grok-imagine-image-2.0`, and `grok-imagine-image-quality`. Video models are `grok-imagine-video`, `grok-imagine-video-1.5`, and `grok-imagine-video-1.5-lite`. Video generation polls `GET /v1/videos/{request_id}` and returns the temporary video URL.
|
|
88
|
+
|
|
89
|
+
`grok-tts` is text-to-speech (`POST /v1/tts`). `grok-voice-transcribe-2.0` is speech-to-text (`POST /v1/stt`). `grok-voice-3.0` is the speech-to-speech model. `grok-voice-2.0` is deprecated and is rejected.
|
|
51
90
|
|
|
52
91
|
Repository and full documentation:
|
|
53
92
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,16 @@
|
|
|
1
|
-
import { type CallableProviderAdapter, type FilesClient, type JsonValue, type LanguageModel } from "@zhivex-ai/core/provider";
|
|
1
|
+
import { type AudioResponseLimits, type CallableProviderAdapter, type FilesClient, type ImageGenerationModel, type JsonValue, type LanguageModel, type SpeechModel, type TranscriptionModel, type VideoGenerationModel } from "@zhivex-ai/core/provider";
|
|
2
|
+
import { type XAIImageGenerationOptions, type XAISpeechOptions, type XAITranscriptionOptions, type XAIVideoGenerationOptions } from "./media.js";
|
|
3
|
+
export { XAI_DEPRECATED_MODELS, XAI_IMAGE_MODELS, XAI_SPEECH_TO_SPEECH_MODEL, XAI_SPEECH_TO_TEXT_MODEL, XAI_TEXT_TO_SPEECH_MODEL, XAI_VIDEO_MODELS } from "./media.js";
|
|
4
|
+
export type { XAIImageGenerationOptions, XAISpeechOptions, XAITranscriptionOptions, XAIVideoGenerationOptions } from "./media.js";
|
|
2
5
|
export interface XAIProviderOptions {
|
|
3
6
|
apiKey?: string;
|
|
4
7
|
baseURL?: string;
|
|
8
|
+
/** `us` selects https://us.api.x.ai/v1. Do not combine with baseURL. */
|
|
9
|
+
region?: "global" | "us";
|
|
5
10
|
headers?: Record<string, string>;
|
|
6
11
|
fetch?: typeof globalThis.fetch;
|
|
7
12
|
allowUnsafeEndpoints?: boolean;
|
|
13
|
+
responseLimits?: AudioResponseLimits;
|
|
8
14
|
}
|
|
9
15
|
export interface XAILanguageModelOptions {
|
|
10
16
|
apiMode?: "chat" | "responses";
|
|
@@ -64,5 +70,9 @@ export declare const xAIFilePart: (fileId: string, mediaType?: string, filename?
|
|
|
64
70
|
export declare const createXAI: (options?: XAIProviderOptions) => CallableProviderAdapter<LanguageModel<XAILanguageModelOptions>> & {
|
|
65
71
|
files: FilesClient<XAIFileOptions>;
|
|
66
72
|
rawFetch: typeof globalThis.fetch;
|
|
73
|
+
imageGenerationModel: (modelId: string) => ImageGenerationModel<XAIImageGenerationOptions>;
|
|
74
|
+
videoGenerationModel: (modelId: string) => VideoGenerationModel<XAIVideoGenerationOptions>;
|
|
75
|
+
speechModel: (modelId: string) => SpeechModel<XAISpeechOptions>;
|
|
76
|
+
transcriptionModel: (modelId: string) => TranscriptionModel<XAITranscriptionOptions>;
|
|
67
77
|
};
|
|
68
78
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { ConfigurationError, ProviderHTTPError, UnsupportedFeatureError, assertTrustedEndpoint, createProviderAdapter, hostedTool, isHostedToolDefinition, normalizeMessages, readErrorBodyWithLimit, readJsonWithLimit, withRetry, withTimeoutSignal } from "@zhivex-ai/core/provider";
|
|
2
2
|
import { createOpenAI } from "@zhivex-ai/openai";
|
|
3
|
+
import { createXAIMedia } from "./media.js";
|
|
4
|
+
export { XAI_DEPRECATED_MODELS, XAI_IMAGE_MODELS, XAI_SPEECH_TO_SPEECH_MODEL, XAI_SPEECH_TO_TEXT_MODEL, XAI_TEXT_TO_SPEECH_MODEL, XAI_VIDEO_MODELS } from "./media.js";
|
|
3
5
|
const encodeXAIResourceId = (value) => {
|
|
4
6
|
if (!value || value === "." || value === ".." || /[\\/?#\s]/.test(value)) {
|
|
5
7
|
throw new ConfigurationError("xAI file ID must be a non-empty opaque identifier without path separators.");
|
|
@@ -35,24 +37,35 @@ const baseCapabilities = {
|
|
|
35
37
|
}
|
|
36
38
|
};
|
|
37
39
|
const normalizedModelId = (modelId) => modelId.trim().toLowerCase();
|
|
40
|
+
const isGrok43 = (modelId) => /^grok-4\.3(?:[-@]|$)/.test(normalizedModelId(modelId));
|
|
38
41
|
const isGrok45 = (modelId) => /^grok-4\.5(?:[-@]|$)/.test(normalizedModelId(modelId));
|
|
39
42
|
const isGrok46 = (modelId) => /^grok-4\.6(?:[-@]|$)/.test(normalizedModelId(modelId));
|
|
43
|
+
const isGrok47 = (modelId) => /^grok-4\.7(?:[-@]|$)/.test(normalizedModelId(modelId));
|
|
40
44
|
const isGrok420MultiAgent = (modelId) => /^grok-4\.20(?:-\d{4})?-multi-agent(?:[-@]|$)/.test(normalizedModelId(modelId));
|
|
41
45
|
const isNonReasoningModel = (modelId) => /non-reasoning/.test(normalizedModelId(modelId));
|
|
42
|
-
const
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
46
|
+
const isGrokXHighReasoning = (modelId) => isGrok46(modelId) || isGrok47(modelId);
|
|
47
|
+
const isAlwaysReasoningModel = (modelId) => isGrok45(modelId) || isGrokXHighReasoning(modelId);
|
|
48
|
+
const modelCapabilities = (modelId) => {
|
|
49
|
+
// The grok-4.7 model page and developer guide do not list file search.
|
|
50
|
+
// Collections search docs still show file_search on grok-4.7, so requests are not rejected.
|
|
51
|
+
const fileSearch = !isGrok47(modelId);
|
|
52
|
+
return {
|
|
53
|
+
...baseCapabilities,
|
|
54
|
+
fileSearch,
|
|
55
|
+
reasoning: !isNonReasoningModel(modelId),
|
|
56
|
+
reasoningEfforts: isNonReasoningModel(modelId)
|
|
57
|
+
? undefined
|
|
58
|
+
: isGrokXHighReasoning(modelId) || isGrok45(modelId) || isGrok420MultiAgent(modelId)
|
|
59
|
+
? ["low", "medium", "high", "xhigh"]
|
|
60
|
+
: isGrok43(modelId)
|
|
61
|
+
? ["none", "low", "medium", "high", "xhigh"]
|
|
62
|
+
: ["none", "low", "medium", "high"],
|
|
63
|
+
agentCapabilities: {
|
|
64
|
+
...baseCapabilities.agentCapabilities,
|
|
65
|
+
hostedFileSearch: fileSearch
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
};
|
|
56
69
|
const jsonHeaders = (apiKey) => ({
|
|
57
70
|
"content-type": "application/json",
|
|
58
71
|
authorization: `Bearer ${apiKey}`
|
|
@@ -93,7 +106,18 @@ const remapToolsForOpenAITransport = (tools) => tools
|
|
|
93
106
|
: definition
|
|
94
107
|
]))
|
|
95
108
|
: undefined;
|
|
96
|
-
const
|
|
109
|
+
const isUsRegionalEndpoint = (baseURL) => {
|
|
110
|
+
try {
|
|
111
|
+
return new URL(baseURL).hostname === "us.api.x.ai";
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
return false;
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
const validateXAIInput = (modelId, input, baseURL) => {
|
|
118
|
+
if (isUsRegionalEndpoint(baseURL) && !isGrok46(modelId) && !isGrok47(modelId)) {
|
|
119
|
+
throw new UnsupportedFeatureError(`Provider "xai" US regional endpoint currently serves grok-4.7 and grok-4.6 only. Model "${modelId}" is not available at https://us.api.x.ai/v1.`);
|
|
120
|
+
}
|
|
97
121
|
const reasoning = input.reasoning;
|
|
98
122
|
if (reasoning?.budgetTokens !== undefined) {
|
|
99
123
|
throw new UnsupportedFeatureError('Provider "xai" does not support "reasoning.budgetTokens".');
|
|
@@ -113,6 +137,9 @@ const validateXAIInput = (modelId, input) => {
|
|
|
113
137
|
throw new UnsupportedFeatureError(`Provider "xai" model "${modelId}" does not support reasoning effort "${effort}". Supported efforts: ${supportedEfforts.join(", ")}.`);
|
|
114
138
|
}
|
|
115
139
|
const providerOptions = input.providerOptions;
|
|
140
|
+
if (isGrok47(modelId) && providerOptions?.apiMode === "chat") {
|
|
141
|
+
throw new UnsupportedFeatureError(`Provider "xai" model "${modelId}" accepts the Responses API only. Omit apiMode or set it to "responses". See https://docs.x.ai/developers/grok-4-7.`);
|
|
142
|
+
}
|
|
116
143
|
if (providerOptions?.apiMode === "chat" &&
|
|
117
144
|
Object.values(input.tools ?? {}).some(isHostedToolDefinition)) {
|
|
118
145
|
throw new UnsupportedFeatureError('Provider "xai" supports hosted tools through the Responses API only.');
|
|
@@ -167,16 +194,18 @@ class XAILanguageModel {
|
|
|
167
194
|
modelId;
|
|
168
195
|
delegate;
|
|
169
196
|
defaultHeaders;
|
|
197
|
+
baseURL;
|
|
170
198
|
provider = "xai";
|
|
171
199
|
capabilities;
|
|
172
|
-
constructor(modelId, delegate, defaultHeaders) {
|
|
200
|
+
constructor(modelId, delegate, defaultHeaders, baseURL) {
|
|
173
201
|
this.modelId = modelId;
|
|
174
202
|
this.delegate = delegate;
|
|
175
203
|
this.defaultHeaders = defaultHeaders;
|
|
204
|
+
this.baseURL = baseURL;
|
|
176
205
|
this.capabilities = modelCapabilities(modelId);
|
|
177
206
|
}
|
|
178
207
|
async generate(input) {
|
|
179
|
-
validateXAIInput(this.modelId, input);
|
|
208
|
+
validateXAIInput(this.modelId, input, this.baseURL);
|
|
180
209
|
try {
|
|
181
210
|
return remapGenerateResult(await this.delegate.generate(prepareTransportInput(input, this.defaultHeaders)));
|
|
182
211
|
}
|
|
@@ -185,7 +214,7 @@ class XAILanguageModel {
|
|
|
185
214
|
}
|
|
186
215
|
}
|
|
187
216
|
async stream(input) {
|
|
188
|
-
validateXAIInput(this.modelId, input);
|
|
217
|
+
validateXAIInput(this.modelId, input, this.baseURL);
|
|
189
218
|
if (!this.delegate.stream) {
|
|
190
219
|
throw new UnsupportedFeatureError('Provider "xai" transport does not support streaming.');
|
|
191
220
|
}
|
|
@@ -420,28 +449,41 @@ export const xAIFilePart = (fileId, mediaType = "application/octet-stream", file
|
|
|
420
449
|
mediaType,
|
|
421
450
|
filename
|
|
422
451
|
});
|
|
423
|
-
|
|
424
|
-
const
|
|
425
|
-
if (
|
|
426
|
-
throw new ConfigurationError("
|
|
427
|
-
|
|
452
|
+
const resolveXAIBaseURL = (options) => {
|
|
453
|
+
const region = options.region;
|
|
454
|
+
if (region !== undefined && region !== "global" && region !== "us") {
|
|
455
|
+
throw new ConfigurationError('Provider "xai" region must be "global" or "us".');
|
|
456
|
+
}
|
|
457
|
+
if (options.baseURL !== undefined && options.region !== undefined) {
|
|
458
|
+
throw new ConfigurationError('Provider "xai" accepts baseURL or region, not both.');
|
|
459
|
+
}
|
|
460
|
+
const raw = options.baseURL ?? (options.region === "us" ? "https://us.api.x.ai/v1" : "https://api.x.ai/v1");
|
|
461
|
+
return assertTrustedEndpoint(raw, {
|
|
428
462
|
label: "xAI baseURL",
|
|
429
463
|
protocols: ["https"],
|
|
430
464
|
allowUnsafe: options.allowUnsafeEndpoints
|
|
431
465
|
}).toString().replace(/\/+$/, "");
|
|
466
|
+
};
|
|
467
|
+
export const createXAI = (options = {}) => {
|
|
468
|
+
const apiKey = options.apiKey ?? process.env.XAI_API_KEY;
|
|
469
|
+
if (!apiKey)
|
|
470
|
+
throw new ConfigurationError("Missing xAI API key.");
|
|
471
|
+
const baseURL = resolveXAIBaseURL(options);
|
|
432
472
|
const fetcher = options.fetch ?? globalThis.fetch;
|
|
433
473
|
const defaultHeaders = Object.fromEntries(Object.entries(options.headers ?? {}).filter(([key]) => !["authorization", "content-type", "content-length", "host", "connection", "transfer-encoding"].includes(key.toLowerCase())));
|
|
434
474
|
const languageModel = (modelId) => new XAILanguageModel(modelId, createOpenAI({
|
|
435
475
|
apiKey, baseURL, fetch: fetcher, allowUnsafeEndpoints: options.allowUnsafeEndpoints,
|
|
436
476
|
// This delegate implements the wire protocol; xAI owns model feature policy.
|
|
437
477
|
modelCapabilities: { [modelId]: modelCapabilities(modelId) },
|
|
438
|
-
}).languageModel(modelId), defaultHeaders);
|
|
478
|
+
}).languageModel(modelId), defaultHeaders, baseURL);
|
|
479
|
+
const media = createXAIMedia({ apiKey, baseURL, fetcher, responseLimits: options.responseLimits });
|
|
439
480
|
return createProviderAdapter({
|
|
440
481
|
name: "xai",
|
|
441
482
|
languageModel,
|
|
442
483
|
groundedLanguageModel: (modelId) => new XAIGroundedLanguageModel(modelId, languageModel(modelId)),
|
|
443
484
|
files: new XAIFilesClient(apiKey, baseURL, fetcher),
|
|
444
|
-
rawFetch: fetcher
|
|
485
|
+
rawFetch: fetcher,
|
|
486
|
+
...media
|
|
445
487
|
});
|
|
446
488
|
};
|
|
447
489
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EACrB,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EAkBlB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAUjD,MAAM,mBAAmB,GAAG,CAAC,KAAa,EAAE,EAAE;IAC5C,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,kBAAkB,CAAC,4EAA4E,CAAC,CAAC;IAC7G,CAAC;IACD,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC,CAAC;AAqDF,MAAM,gBAAgB,GAAsB;IAC1C,SAAS,EAAE,IAAI;IACf,KAAK,EAAE,IAAI;IACX,gBAAgB,EAAE,IAAI;IACtB,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAI;IAChB,iBAAiB,EAAE,IAAI;IACvB,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,UAAU,EAAE,KAAK;IACjB,WAAW,EAAE,KAAK;IAClB,UAAU,EAAE,KAAK;IACjB,UAAU,EAAE,IAAI;IAChB,cAAc,EAAE,IAAI;IACpB,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,iBAAiB,EAAE;QACjB,WAAW,EAAE,QAAQ;QACrB,cAAc,EAAE,IAAI;QACpB,gBAAgB,EAAE,KAAK;QACvB,eAAe,EAAE,IAAI;QACrB,gBAAgB,EAAE,IAAI;QACtB,SAAS,EAAE,KAAK;QAChB,WAAW,EAAE,KAAK;QAClB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,KAAK;KAChB;CACF,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAC5E,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9F,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9F,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,8CAA8C,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AACjI,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AAClG,MAAM,sBAAsB,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC;AAE3F,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAqB,EAAE,CAAC,CAAC;IACjE,GAAG,gBAAgB;IACnB,SAAS,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC;IACxC,gBAAgB,EAAE,mBAAmB,CAAC,OAAO,CAAC;QAC5C,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;YACjB,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC;YACpC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACnB,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;gBAC3B,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC;oBAC5B,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC;oBACpC,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;CAC1C,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACvC,cAAc,EAAE,kBAAkB;IAClC,aAAa,EAAE,UAAU,MAAM,EAAE;CAClC,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,KAAK,EAAE,QAAkB,EAAE,EAAE;IAC7C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,IAAI,iBAAiB,CAAC,kCAAkC,QAAQ,CAAC,MAAM,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE;YACjG,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,iBAAiB,CAAM,QAAQ,EAAE;QACtC,QAAQ,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI;QAC3B,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,QAAQ,CAAC,GAAG,IAAI,SAAS;KACpC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,KAAc,EAAS,EAAE;IAC/C,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;QACvC,MAAM,IAAI,iBAAiB,CAAC,kCAAkC,KAAK,CAAC,MAAM,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE;YAC3F,KAAK,EAAE,KAAK;YACZ,YAAY,EAAE,KAAK,CAAC,YAAY;SACjC,CAAC,CAAC;IACL,CAAC;IACD,MAAM,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,OAAqB,EAAE,IAAY,EAAE,EAAU,EAAgB,EAAE,CAAC,CAAC;IAC/F,GAAG,OAAO;IACV,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAChC,IAAI,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;QACrD,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC3B,CAAC,CAAC,IAAI,CACT;CACF,CAAC,CAAC;AAEH,MAAM,4BAA4B,GAAG,CAAC,KAA0B,EAAuB,EAAE,CACvF,KAAK;IACH,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC;QAChD,IAAI;QACJ,sBAAsB,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,QAAQ,KAAK,KAAK;YACjE,CAAC,CAAC,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE;YACvC,CAAC,CAAC,UAAU;KACf,CAAC,CACH;IACH,CAAC,CAAC,SAAS,CAAC;AAEhB,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAE,KAAkD,EAAE,EAAE;IAC/F,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,IAAI,SAAS,EAAE,YAAY,KAAK,SAAS,EAAE,CAAC;QAC1C,MAAM,IAAI,uBAAuB,CAAC,2DAA2D,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,SAAS,EAAE,IAAI,KAAK,SAAS,IAAI,SAAS,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;QACtE,MAAM,IAAI,uBAAuB,CAAC,0EAA0E,CAAC,CAAC;IAChH,CAAC;IACD,IAAI,SAAS,EAAE,eAAe,EAAE,CAAC;QAC/B,MAAM,IAAI,uBAAuB,CAC/B,yIAAyI,CAC1I,CAAC;IACJ,CAAC;IACD,IAAI,mBAAmB,CAAC,OAAO,CAAC,IAAI,SAAS,EAAE,CAAC;QAC9C,MAAM,IAAI,uBAAuB,CAAC,yBAAyB,OAAO,+BAA+B,CAAC,CAAC;IACrG,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC;IACjC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC;IACrE,IAAI,MAAM,IAAI,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,uBAAuB,CAC/B,yBAAyB,OAAO,wCAAwC,MAAM,yBAAyB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACtI,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;IAC9C,IACE,eAAe,EAAE,OAAO,KAAK,MAAM;QACnC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAC7D,CAAC;QACD,MAAM,IAAI,uBAAuB,CAAC,sEAAsE,CAAC,CAAC;IAC5G,CAAC;IACD,MAAM,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAChF,IACE,iBAAiB;QACjB,CAAC,eAAe,EAAE,gBAAgB,KAAK,SAAS;YAC9C,eAAe,EAAE,iBAAiB,KAAK,SAAS;YAChD,eAAe,EAAE,IAAI,KAAK,SAAS,CAAC,EACtC,CAAC;QACD,MAAM,IAAI,uBAAuB,CAC/B,yBAAyB,OAAO,4FAA4F,CAC7H,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAC9B,OAA4C,EAC5C,cAAsC,EACtC,EAAE;IACF,MAAM,EACJ,cAAc,EACd,OAAO,EACP,OAAO,GAAG,WAAW,EACrB,gBAAgB,EAAE,cAAc,EAChC,GAAG,WAAW,EACf,GAAG,OAAO,IAAI,EAAE,CAAC;IAClB,MAAM,aAAa,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,OAAO,EAAE,CAAC;IAExD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,cAAc,IAAI,cAAc,CAAC;QAClD,IAAI,QAAQ,EAAE,CAAC;YACb,aAAa,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC;QAC7C,CAAC;QACD,OAAO;YACL,GAAG,WAAW;YACd,OAAO;YACP,OAAO,EAAE,aAAa;SACvB,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GACX,WAAW,CAAC,KAAK,KAAK,KAAK;QACzB,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,6BAA6B,CAAC,CAAC,CAAC;QACnH,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC;IAE1B,OAAO;QACL,GAAG,WAAW;QACd,OAAO;QACP,OAAO,EAAE,aAAa;QACtB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,cAAc,IAAI,cAAc,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,cAAc,IAAI,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpG,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAC5B,KAAkD,EAClD,cAAsC,EAClB,EAAE,CAAC,CAAC;IACxB,GAAG,KAAK;IACR,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACzF,KAAK,EAAE,4BAA4B,CAAC,KAAK,CAAC,KAAK,CAAC;IAChD,eAAe,EAAE,uBAAuB,CAAC,KAAK,CAAC,eAAe,EAAE,cAAc,CAAC;CAChF,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,CAAC,MAAsB,EAAkB,EAAE,CAAC,CAAC;IACvE,GAAG,MAAM;IACT,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7F,GAAG,CAAC,MAAM,CAAC,QAAQ;QACjB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,EAAE;QAChG,CAAC,CAAC,EAAE,CAAC;CACR,CAAC,CAAC;AAEH,MAAM,gBAAgB;IAKT,OAAO;IACC,QAAQ;IACR,cAAc;IANxB,QAAQ,GAAG,KAAK,CAAC;IACjB,YAAY,CAAoB;IAEzC,YACW,OAAe,EACP,QAAuB,EACvB,cAAsC;uBAF9C,OAAO;wBACC,QAAQ;8BACR,cAAc;QAE/B,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAkD;QAC/D,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC;YACH,OAAO,mBAAmB,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QAC9G,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAkD;QAC7D,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,IAAI,uBAAuB,CAAC,sDAAsD,CAAC,CAAC;QAC5F,CAAC;QAED,IAAI,MAAkC,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;QACzF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,CAAC,KAAK,SAAS,CAAC;YACrB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBAClE,MAAM,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAwB,CAAC;gBAC5D,CAAC;qBAAM,CAAC;oBACN,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;CACF;AAED,MAAM,cAAc,GAAG,CAAC,KAAc,EAAE,EAAE;IACxC,MAAM,OAAO,GAAsC,EAAE,CAAC;IACtD,MAAM,KAAK,GAAG,CAAC,IAAa,EAAE,EAAE;QAC9B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO;QAC9C,MAAM,MAAM,GAAG,IAA+B,CAAC;QAC/C,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC;gBACX,KAAK,EAAE,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBAClE,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,OAAO,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;gBACxE,gBAAgB,EAAE,MAAM;aACzB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;gBAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;iBAC5C,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;gBAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC;IACF,KAAK,CAAC,KAAK,CAAC,CAAC;IACb,OAAO,OAAO,CAAC,MAAM,CACnB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAC7F,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,wBAAwB;IAIP,OAAO;IAA2B,aAAa;IAH3D,QAAQ,GAAG,KAAK,CAAC;IACjB,YAAY,CAAoB;IAEzC,YAAqB,OAAe,EAAmB,aAA+B;uBAAjE,OAAO;6BAA2B,aAAa;QAClE,IAAI,CAAC,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAgF;QAC7F,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;YAC/C,GAAG,KAAK;YACR,QAAQ,EAAE,iBAAiB,CAAC,KAAK,CAAC;YAClC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,EAAE;SACzC,CAAC,CAAC;QACH,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE;YACvB,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC;YAC3C,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;YACjD,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC,CAAC;IACJ,CAAC;CACF;AAED,MAAM,YAAY,GAAG,CAAC,IAA6B,EAAE,SAAiB,EAAE,EAAE;IACxE,IAAI,IAAI,YAAY,IAAI;QAAE,OAAO,IAAI,CAAC;IACtC,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAClG,OAAO,IAAI,IAAI,CAAC,CAAC,IAAI,YAAY,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;AACnG,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,IAAS,EAAgB,EAAE,CAAC,CAAC;IAC1D,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI;IAC1B,GAAG,EAAE,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG;IACxB,QAAQ,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ;IACzC,SAAS,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS;IAC1D,KAAK,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK;IAChC,WAAW,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,WAAW;IACnE,WAAW,EAAE,IAAI;IACjB,gBAAgB,EAAE,IAAI;CACvB,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,KAAkD,EAAE,EAAE;IACtF,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,cAAc;IAEC,MAAM;IACN,OAAO;IACP,OAAO;IAH1B,YACmB,MAAc,EACd,OAAe,EACf,OAAgC;sBAFhC,MAAM;uBACN,OAAO;uBACP,OAAO;IACvB,CAAC;IAEJ,KAAK,CAAC,MAAM,CAAC,KAAsC;QACjD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC;QAC5C,IACE,OAAO,CAAC,aAAa,KAAK,SAAS;YACnC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,aAAa,GAAG,KAAK,IAAI,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,EAChH,CAAC;YACD,MAAM,IAAI,uBAAuB,CAC/B,gGAAgG,CACjG,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS;YAAE,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;QAClG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,IAAI,YAAY,CAAC,CAAC;QACrD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,CAAC,eAAe,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACrG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3E,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC;QAC7E,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEtE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,QAAQ,EAAE;gBACpC,MAAM,EAAE,MAAM;gBACd,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE,EAAE;gBACnD,MAAM;gBACN,IAAI,EAAE,IAAI;aACX,CAAC,EACJ,KAAK,CACN,CAAC;YACF,OAAO,qBAAqB,CAAC,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1D,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAmC;QAC3C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,UAAU,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE;gBACvE,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC;gBACjC,MAAM;aACP,CAAC,EACJ,KAAK,CACN,CAAC;YACF,OAAO,qBAAqB,CAAC,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1D,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,GAAkC,EAAE;QAClD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CACV,WAAW,CAAC,GAAG,IAAI,CAAC,OAAO,QAAQ,EAAE;gBACnC,KAAK,EAAE,KAAK,CAAC,QAAQ;gBACrB,gBAAgB,EAAE,KAAK,CAAC,SAAS;gBACjC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,EACF,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAC7D,EACH,KAAK,CACN,CAAC;YACF,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;YACvC,OAAO;gBACL,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC;gBACjE,aAAa,EAAE,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa;gBACvE,WAAW,EAAE,IAAI;aAClB,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAsC;QACjD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,UAAU,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE;gBACvE,MAAM,EAAE,QAAQ;gBAChB,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC;gBACjC,MAAM;aACP,CAAC,EACJ,KAAK,CACN,CAAC;YACF,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtE,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;CACF;AAED,MAAM,cAAc,GAAG,CAAC,MAA+B,EAAE,EAAE,CACzD,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAA8B,CAAC;AAErH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAAM,GAA2B,EAAE,EAAE,EAAE;IACtE,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IAC9D,IAAI,eAAe,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,EAAE,CAAC;QACxD,MAAM,IAAI,uBAAuB,CAC/B,iFAAiF,CAClF,CAAC;IACJ,CAAC;IACD,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,KAAK;QACf,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,YAAY;QACvB,MAAM,EAAE,cAAc,CAAC;YACrB,GAAG,IAAI;YACP,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvE,CAAC;KACH,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAM,GAAyB,EAAE,EAAE,EAAE,CAClE,UAAU,CAAC;IACT,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,KAAK;IACf,IAAI,EAAE,UAAU;IAChB,SAAS,EAAE,YAAY;IACvB,MAAM,EAAE,cAAc,CAAC,MAA4C,CAAC;CACrE,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAM,GAA+B,EAAE,EAAE,EAAE,CAC9E,UAAU,CAAC;IACT,IAAI,EAAE,gBAAgB;IACtB,QAAQ,EAAE,KAAK;IACf,IAAI,EAAE,kBAAkB;IACxB,SAAS,EAAE,gBAAgB;IAC3B,MAAM,EAAE,cAAc,CAAC,MAA4C,CAAC;CACrE,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,MAA+B,EAAE,EAAE,CACnE,UAAU,CAAC;IACT,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,KAAK;IACf,IAAI,EAAE,aAAa;IACnB,SAAS,EAAE,aAAa;IACxB,MAAM,EAAE,cAAc,CAAC,MAA4C,CAAC;CACrE,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,SAAS,GAAG,0BAA0B,EAAE,QAAiB,EAAE,EAAE,CAAC,CAAC;IACzG,IAAI,EAAE,MAAe;IACrB,IAAI,EAAE,MAAM;IACZ,SAAS;IACT,QAAQ;CACT,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,OAAO,GAAuB,EAAE,EAIhC,EAAE;IACF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IACzD,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAElE,MAAM,OAAO,GAAG,qBAAqB,CAAC,OAAO,CAAC,OAAO,IAAI,qBAAqB,EAAE;QAC9E,KAAK,EAAE,aAAa;QACpB,SAAS,EAAE,CAAC,OAAO,CAAC;QACpB,WAAW,EAAE,OAAO,CAAC,oBAAoB;KAC1C,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IAClD,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CACvC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAC1C,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CACvI,CACF,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,EAAE,CACxC,IAAI,gBAAgB,CAAC,OAAO,EAAE,YAAY,CAAC;QACzC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;QACnF,6EAA6E;QAC7E,iBAAiB,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE;KAC7D,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC;IAE7C,OAAO,qBAAqB,CAAC;QAC3B,IAAI,EAAE,KAAK;QACX,aAAa;QACb,qBAAqB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,wBAAwB,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QACjG,KAAK,EAAE,IAAI,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;QACnD,QAAQ,EAAE,OAAO;KAClB,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,qBAAqB,EAErB,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,SAAS,EACT,iBAAiB,EAsBlB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EACL,cAAc,EAKf,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAmBpB,MAAM,mBAAmB,GAAG,CAAC,KAAa,EAAE,EAAE;IAC5C,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,kBAAkB,CAAC,4EAA4E,CAAC,CAAC;IAC7G,CAAC;IACD,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC,CAAC;AAqDF,MAAM,gBAAgB,GAAsB;IAC1C,SAAS,EAAE,IAAI;IACf,KAAK,EAAE,IAAI;IACX,gBAAgB,EAAE,IAAI;IACtB,QAAQ,EAAE,IAAI;IACd,UAAU,EAAE,IAAI;IAChB,iBAAiB,EAAE,IAAI;IACvB,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,UAAU,EAAE,KAAK;IACjB,WAAW,EAAE,KAAK;IAClB,UAAU,EAAE,KAAK;IACjB,UAAU,EAAE,IAAI;IAChB,cAAc,EAAE,IAAI;IACpB,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,iBAAiB,EAAE;QACjB,WAAW,EAAE,QAAQ;QACrB,cAAc,EAAE,IAAI;QACpB,gBAAgB,EAAE,KAAK;QACvB,eAAe,EAAE,IAAI;QACrB,gBAAgB,EAAE,IAAI;QACtB,SAAS,EAAE,KAAK;QAChB,WAAW,EAAE,KAAK;QAClB,aAAa,EAAE,IAAI;QACnB,QAAQ,EAAE,KAAK;KAChB;CACF,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAC5E,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9F,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9F,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9F,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9F,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,8CAA8C,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AACjI,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;AAClG,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC;AACzF,MAAM,sBAAsB,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAEvG,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAqB,EAAE;IAC/D,uEAAuE;IACvE,4FAA4F;IAC5F,MAAM,UAAU,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO;QACL,GAAG,gBAAgB;QACnB,UAAU;QACV,SAAS,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC;QACxC,gBAAgB,EAAE,mBAAmB,CAAC,OAAO,CAAC;YAC5C,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,mBAAmB,CAAC,OAAO,CAAC;gBAClF,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC;gBACpC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;oBACjB,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC;oBAC5C,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;QACzC,iBAAiB,EAAE;YACjB,GAAG,gBAAgB,CAAC,iBAAkB;YACtC,gBAAgB,EAAE,UAAU;SAC7B;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,CAAC;IACvC,cAAc,EAAE,kBAAkB;IAClC,aAAa,EAAE,UAAU,MAAM,EAAE;CAClC,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,KAAK,EAAE,QAAkB,EAAE,EAAE;IAC7C,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,IAAI,iBAAiB,CAAC,kCAAkC,QAAQ,CAAC,MAAM,GAAG,EAAE,QAAQ,CAAC,MAAM,EAAE;YACjG,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,iBAAiB,CAAM,QAAQ,EAAE;QACtC,QAAQ,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI;QAC3B,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,QAAQ,CAAC,GAAG,IAAI,SAAS;KACpC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,KAAc,EAAS,EAAE;IAC/C,IAAI,KAAK,YAAY,iBAAiB,EAAE,CAAC;QACvC,MAAM,IAAI,iBAAiB,CAAC,kCAAkC,KAAK,CAAC,MAAM,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE;YAC3F,KAAK,EAAE,KAAK;YACZ,YAAY,EAAE,KAAK,CAAC,YAAY;SACjC,CAAC,CAAC;IACL,CAAC;IACD,MAAM,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,OAAqB,EAAE,IAAY,EAAE,EAAU,EAAgB,EAAE,CAAC,CAAC;IAC/F,GAAG,OAAO;IACV,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAChC,IAAI,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;QACrD,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC3B,CAAC,CAAC,IAAI,CACT;CACF,CAAC,CAAC;AAEH,MAAM,4BAA4B,GAAG,CAAC,KAA0B,EAAuB,EAAE,CACvF,KAAK;IACH,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC;QAChD,IAAI;QACJ,sBAAsB,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,QAAQ,KAAK,KAAK;YACjE,CAAC,CAAC,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE;YACvC,CAAC,CAAC,UAAU;KACf,CAAC,CACH;IACH,CAAC,CAAC,SAAS,CAAC;AAEhB,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAE,EAAE;IAC/C,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK,aAAa,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAE,KAAkD,EAAE,OAAe,EAAE,EAAE;IAChH,IAAI,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,uBAAuB,CAC/B,2FAA2F,OAAO,+CAA+C,CAClJ,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,IAAI,SAAS,EAAE,YAAY,KAAK,SAAS,EAAE,CAAC;QAC1C,MAAM,IAAI,uBAAuB,CAAC,2DAA2D,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,SAAS,EAAE,IAAI,KAAK,SAAS,IAAI,SAAS,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;QACtE,MAAM,IAAI,uBAAuB,CAAC,0EAA0E,CAAC,CAAC;IAChH,CAAC;IACD,IAAI,SAAS,EAAE,eAAe,EAAE,CAAC;QAC/B,MAAM,IAAI,uBAAuB,CAC/B,yIAAyI,CAC1I,CAAC;IACJ,CAAC;IACD,IAAI,mBAAmB,CAAC,OAAO,CAAC,IAAI,SAAS,EAAE,CAAC;QAC9C,MAAM,IAAI,uBAAuB,CAAC,yBAAyB,OAAO,+BAA+B,CAAC,CAAC;IACrG,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC;IACjC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC;IACrE,IAAI,MAAM,IAAI,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACrE,MAAM,IAAI,uBAAuB,CAC/B,yBAAyB,OAAO,wCAAwC,MAAM,yBAAyB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACtI,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;IAC9C,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,eAAe,EAAE,OAAO,KAAK,MAAM,EAAE,CAAC;QAC7D,MAAM,IAAI,uBAAuB,CAC/B,yBAAyB,OAAO,qHAAqH,CACtJ,CAAC;IACJ,CAAC;IACD,IACE,eAAe,EAAE,OAAO,KAAK,MAAM;QACnC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAC7D,CAAC;QACD,MAAM,IAAI,uBAAuB,CAAC,sEAAsE,CAAC,CAAC;IAC5G,CAAC;IACD,MAAM,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAChF,IACE,iBAAiB;QACjB,CAAC,eAAe,EAAE,gBAAgB,KAAK,SAAS;YAC9C,eAAe,EAAE,iBAAiB,KAAK,SAAS;YAChD,eAAe,EAAE,IAAI,KAAK,SAAS,CAAC,EACtC,CAAC;QACD,MAAM,IAAI,uBAAuB,CAC/B,yBAAyB,OAAO,4FAA4F,CAC7H,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAC9B,OAA4C,EAC5C,cAAsC,EACtC,EAAE;IACF,MAAM,EACJ,cAAc,EACd,OAAO,EACP,OAAO,GAAG,WAAW,EACrB,gBAAgB,EAAE,cAAc,EAChC,GAAG,WAAW,EACf,GAAG,OAAO,IAAI,EAAE,CAAC;IAClB,MAAM,aAAa,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,OAAO,EAAE,CAAC;IAExD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,cAAc,IAAI,cAAc,CAAC;QAClD,IAAI,QAAQ,EAAE,CAAC;YACb,aAAa,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC;QAC7C,CAAC;QACD,OAAO;YACL,GAAG,WAAW;YACd,OAAO;YACP,OAAO,EAAE,aAAa;SACvB,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GACX,WAAW,CAAC,KAAK,KAAK,KAAK;QACzB,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,6BAA6B,CAAC,CAAC,CAAC;QACnH,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC;IAE1B,OAAO;QACL,GAAG,WAAW;QACd,OAAO;QACP,OAAO,EAAE,aAAa;QACtB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,cAAc,IAAI,cAAc,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,cAAc,IAAI,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpG,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAC5B,KAAkD,EAClD,cAAsC,EAClB,EAAE,CAAC,CAAC;IACxB,GAAG,KAAK;IACR,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACzF,KAAK,EAAE,4BAA4B,CAAC,KAAK,CAAC,KAAK,CAAC;IAChD,eAAe,EAAE,uBAAuB,CAAC,KAAK,CAAC,eAAe,EAAE,cAAc,CAAC;CAChF,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,CAAC,MAAsB,EAAkB,EAAE,CAAC,CAAC;IACvE,GAAG,MAAM;IACT,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7F,GAAG,CAAC,MAAM,CAAC,QAAQ;QACjB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,EAAE;QAChG,CAAC,CAAC,EAAE,CAAC;CACR,CAAC,CAAC;AAEH,MAAM,gBAAgB;IAKT,OAAO;IACC,QAAQ;IACR,cAAc;IACd,OAAO;IAPjB,QAAQ,GAAG,KAAK,CAAC;IACjB,YAAY,CAAoB;IAEzC,YACW,OAAe,EACP,QAAuB,EACvB,cAAsC,EACtC,OAAe;uBAHvB,OAAO;wBACC,QAAQ;8BACR,cAAc;uBACd,OAAO;QAExB,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAkD;QAC/D,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC;YACH,OAAO,mBAAmB,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QAC9G,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAkD;QAC7D,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,IAAI,uBAAuB,CAAC,sDAAsD,CAAC,CAAC;QAC5F,CAAC;QAED,IAAI,MAAkC,CAAC;QACvC,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;QACzF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,CAAC,KAAK,SAAS,CAAC;YACrB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,IAAI,KAAK,CAAC,IAAI,KAAK,eAAe,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBAClE,MAAM,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAwB,CAAC;gBAC5D,CAAC;qBAAM,CAAC;oBACN,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;CACF;AAED,MAAM,cAAc,GAAG,CAAC,KAAc,EAAE,EAAE;IACxC,MAAM,OAAO,GAAsC,EAAE,CAAC;IACtD,MAAM,KAAK,GAAG,CAAC,IAAa,EAAE,EAAE;QAC9B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO;QAC9C,MAAM,MAAM,GAAG,IAA+B,CAAC;QAC/C,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC;gBACX,KAAK,EAAE,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBAClE,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,OAAO,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;gBACxE,gBAAgB,EAAE,MAAM;aACzB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;gBAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;iBAC5C,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;gBAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC,CAAC;IACF,KAAK,CAAC,KAAK,CAAC,CAAC;IACb,OAAO,OAAO,CAAC,MAAM,CACnB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAC7F,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,wBAAwB;IAIP,OAAO;IAA2B,aAAa;IAH3D,QAAQ,GAAG,KAAK,CAAC;IACjB,YAAY,CAAoB;IAEzC,YAAqB,OAAe,EAAmB,aAA+B;uBAAjE,OAAO;6BAA2B,aAAa;QAClE,IAAI,CAAC,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAgF;QAC7F,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;YAC/C,GAAG,KAAK;YACR,QAAQ,EAAE,iBAAiB,CAAC,KAAK,CAAC;YAClC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,EAAE;SACzC,CAAC,CAAC;QACH,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE;YACvB,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC;YAC3C,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;YACjD,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC,CAAC;IACJ,CAAC;CACF;AAED,MAAM,YAAY,GAAG,CAAC,IAA6B,EAAE,SAAiB,EAAE,EAAE;IACxE,IAAI,IAAI,YAAY,IAAI;QAAE,OAAO,IAAI,CAAC;IACtC,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAClG,OAAO,IAAI,IAAI,CAAC,CAAC,IAAI,YAAY,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;AACnG,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,IAAS,EAAgB,EAAE,CAAC,CAAC;IAC1D,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI;IAC1B,GAAG,EAAE,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG;IACxB,QAAQ,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ;IACzC,SAAS,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS;IAC1D,KAAK,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK;IAChC,WAAW,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,WAAW;IACnE,WAAW,EAAE,IAAI;IACjB,gBAAgB,EAAE,IAAI;CACvB,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,KAAkD,EAAE,EAAE;IACtF,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,cAAc;IAEC,MAAM;IACN,OAAO;IACP,OAAO;IAH1B,YACmB,MAAc,EACd,OAAe,EACf,OAAgC;sBAFhC,MAAM;uBACN,OAAO;uBACP,OAAO;IACvB,CAAC;IAEJ,KAAK,CAAC,MAAM,CAAC,KAAsC;QACjD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC;QAC5C,IACE,OAAO,CAAC,aAAa,KAAK,SAAS;YACnC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,aAAa,GAAG,KAAK,IAAI,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,EAChH,CAAC;YACD,MAAM,IAAI,uBAAuB,CAC/B,gGAAgG,CACjG,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS;YAAE,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;QAClG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,IAAI,YAAY,CAAC,CAAC;QACrD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,CAAC,eAAe,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACrG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3E,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC;QAC7E,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEtE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,QAAQ,EAAE;gBACpC,MAAM,EAAE,MAAM;gBACd,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE,EAAE;gBACnD,MAAM;gBACN,IAAI,EAAE,IAAI;aACX,CAAC,EACJ,KAAK,CACN,CAAC;YACF,OAAO,qBAAqB,CAAC,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1D,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAmC;QAC3C,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,UAAU,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE;gBACvE,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC;gBACjC,MAAM;aACP,CAAC,EACJ,KAAK,CACN,CAAC;YACF,OAAO,qBAAqB,CAAC,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1D,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,GAAkC,EAAE;QAClD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CACV,WAAW,CAAC,GAAG,IAAI,CAAC,OAAO,QAAQ,EAAE;gBACnC,KAAK,EAAE,KAAK,CAAC,QAAQ;gBACrB,gBAAgB,EAAE,KAAK,CAAC,SAAS;gBACjC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CAAC,EACF,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAC7D,EACH,KAAK,CACN,CAAC;YACF,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;YACvC,OAAO;gBACL,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC;gBACjE,aAAa,EAAE,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa;gBACvE,WAAW,EAAE,IAAI;aAClB,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAsC;QACjD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACrD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,EAAE,CACH,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,UAAU,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE;gBACvE,MAAM,EAAE,QAAQ;gBAChB,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC;gBACjC,MAAM;aACP,CAAC,EACJ,KAAK,CACN,CAAC;YACF,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtE,CAAC;gBAAS,CAAC;YACT,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;CACF;AAED,MAAM,cAAc,GAAG,CAAC,MAA+B,EAAE,EAAE,CACzD,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAA8B,CAAC;AAErH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAAM,GAA2B,EAAE,EAAE,EAAE;IACtE,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IAC9D,IAAI,eAAe,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,EAAE,CAAC;QACxD,MAAM,IAAI,uBAAuB,CAC/B,iFAAiF,CAClF,CAAC;IACJ,CAAC;IACD,OAAO,UAAU,CAAC;QAChB,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,KAAK;QACf,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,YAAY;QACvB,MAAM,EAAE,cAAc,CAAC;YACrB,GAAG,IAAI;YACP,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvE,CAAC;KACH,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAM,GAAyB,EAAE,EAAE,EAAE,CAClE,UAAU,CAAC;IACT,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,KAAK;IACf,IAAI,EAAE,UAAU;IAChB,SAAS,EAAE,YAAY;IACvB,MAAM,EAAE,cAAc,CAAC,MAA4C,CAAC;CACrE,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAM,GAA+B,EAAE,EAAE,EAAE,CAC9E,UAAU,CAAC;IACT,IAAI,EAAE,gBAAgB;IACtB,QAAQ,EAAE,KAAK;IACf,IAAI,EAAE,kBAAkB;IACxB,SAAS,EAAE,gBAAgB;IAC3B,MAAM,EAAE,cAAc,CAAC,MAA4C,CAAC;CACrE,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,MAA+B,EAAE,EAAE,CACnE,UAAU,CAAC;IACT,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,KAAK;IACf,IAAI,EAAE,aAAa;IACnB,SAAS,EAAE,aAAa;IACxB,MAAM,EAAE,cAAc,CAAC,MAA4C,CAAC;CACrE,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,SAAS,GAAG,0BAA0B,EAAE,QAAiB,EAAE,EAAE,CAAC,CAAC;IACzG,IAAI,EAAE,MAAe;IACrB,IAAI,EAAE,MAAM;IACZ,SAAS;IACT,QAAQ;CACT,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,CAAC,OAA2B,EAAE,EAAE;IACxD,MAAM,MAAM,GAAG,OAAO,CAAC,MAA4B,CAAC;IACpD,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACnE,MAAM,IAAI,kBAAkB,CAAC,iDAAiD,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAClE,MAAM,IAAI,kBAAkB,CAAC,qDAAqD,CAAC,CAAC;IACtF,CAAC;IACD,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;IAC5G,OAAO,qBAAqB,CAAC,GAAG,EAAE;QAChC,KAAK,EAAE,aAAa;QACpB,SAAS,EAAE,CAAC,OAAO,CAAC;QACpB,WAAW,EAAE,OAAO,CAAC,oBAAoB;KAC1C,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,OAAO,GAAuB,EAAE,EAQhC,EAAE;IACF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IACzD,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAElE,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IAClD,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CACvC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAC1C,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CACvI,CACF,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,EAAE,CACxC,IAAI,gBAAgB,CAAC,OAAO,EAAE,YAAY,CAAC;QACzC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;QACnF,6EAA6E;QAC7E,iBAAiB,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE;KAC7D,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,cAAc,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAEnG,OAAO,qBAAqB,CAAC;QAC3B,IAAI,EAAE,KAAK;QACX,aAAa;QACb,qBAAqB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,wBAAwB,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QACjG,KAAK,EAAE,IAAI,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;QACnD,QAAQ,EAAE,OAAO;QACjB,GAAG,KAAK;KACT,CAAC,CAAC;AACL,CAAC,CAAC"}
|
package/dist/media.d.ts
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { resolveAudioResponseLimits, type AudioResponseLimits, type ImageGenerationModel, type ImageGenerationModelInput, type ImageGenerationResult, type ModelCapabilities, type SpeechModel, type SpeechModelInput, type SpeechResult, type TranscriptionModel, type TranscriptionModelInput, type TranscriptionResult, type VideoGenerationModel, type VideoGenerationModelInput, type VideoGenerationResult } from "@zhivex-ai/core/provider";
|
|
2
|
+
export declare const XAI_IMAGE_MODELS: readonly ["grok-imagine-image", "grok-imagine-image-2.0", "grok-imagine-image-quality"];
|
|
3
|
+
export declare const XAI_VIDEO_MODELS: readonly ["grok-imagine-video", "grok-imagine-video-1.5", "grok-imagine-video-1.5-lite"];
|
|
4
|
+
export declare const XAI_TEXT_TO_SPEECH_MODEL = "grok-tts";
|
|
5
|
+
export declare const XAI_SPEECH_TO_TEXT_MODEL = "grok-voice-transcribe-2.0";
|
|
6
|
+
export declare const XAI_SPEECH_TO_SPEECH_MODEL = "grok-voice-3.0";
|
|
7
|
+
/** grok-voice-2.0 is the deprecated speech-to-speech model. Speech-to-speech uses grok-voice-3.0. */
|
|
8
|
+
export declare const XAI_DEPRECATED_MODELS: Readonly<{
|
|
9
|
+
"grok-voice-2.0": "Deprecated speech-to-speech model. Use grok-voice-3.0.";
|
|
10
|
+
}>;
|
|
11
|
+
export interface XAIImageGenerationOptions {
|
|
12
|
+
resolution?: "1k" | "2k";
|
|
13
|
+
quality?: "low" | "medium" | "auto";
|
|
14
|
+
response_format?: "url" | "b64_json";
|
|
15
|
+
[key: string]: unknown;
|
|
16
|
+
}
|
|
17
|
+
export interface XAIVideoGenerationOptions {
|
|
18
|
+
resolution?: "480p" | "720p" | "1080p";
|
|
19
|
+
[key: string]: unknown;
|
|
20
|
+
}
|
|
21
|
+
export interface XAISpeechOptions {
|
|
22
|
+
language?: string;
|
|
23
|
+
output_format?: {
|
|
24
|
+
codec?: string;
|
|
25
|
+
sample_rate?: number;
|
|
26
|
+
bit_rate?: number;
|
|
27
|
+
};
|
|
28
|
+
speed?: number;
|
|
29
|
+
with_timestamps?: boolean;
|
|
30
|
+
[key: string]: unknown;
|
|
31
|
+
}
|
|
32
|
+
export interface XAITranscriptionOptions {
|
|
33
|
+
url?: string;
|
|
34
|
+
format?: boolean;
|
|
35
|
+
keyterm?: string | string[];
|
|
36
|
+
diarize?: boolean;
|
|
37
|
+
[key: string]: unknown;
|
|
38
|
+
}
|
|
39
|
+
export declare const assertXaiMediaRegion: (baseURL: string, feature: string) => void;
|
|
40
|
+
export declare class XAIImageGenerationModel implements ImageGenerationModel<XAIImageGenerationOptions> {
|
|
41
|
+
readonly modelId: string;
|
|
42
|
+
private readonly apiKey;
|
|
43
|
+
private readonly baseURL;
|
|
44
|
+
private readonly fetcher;
|
|
45
|
+
readonly provider = "xai";
|
|
46
|
+
readonly capabilities: ModelCapabilities;
|
|
47
|
+
constructor(modelId: string, apiKey: string, baseURL: string, fetcher: typeof globalThis.fetch);
|
|
48
|
+
generateImage(input: ImageGenerationModelInput<XAIImageGenerationOptions>): Promise<ImageGenerationResult>;
|
|
49
|
+
private pollImage;
|
|
50
|
+
}
|
|
51
|
+
export declare class XAIVideoGenerationModel implements VideoGenerationModel<XAIVideoGenerationOptions> {
|
|
52
|
+
readonly modelId: string;
|
|
53
|
+
private readonly apiKey;
|
|
54
|
+
private readonly baseURL;
|
|
55
|
+
private readonly fetcher;
|
|
56
|
+
readonly provider = "xai";
|
|
57
|
+
readonly capabilities: ModelCapabilities;
|
|
58
|
+
constructor(modelId: string, apiKey: string, baseURL: string, fetcher: typeof globalThis.fetch);
|
|
59
|
+
generateVideo(input: VideoGenerationModelInput<XAIVideoGenerationOptions>): Promise<VideoGenerationResult>;
|
|
60
|
+
}
|
|
61
|
+
export declare class XAISpeechModel implements SpeechModel<XAISpeechOptions> {
|
|
62
|
+
readonly modelId: string;
|
|
63
|
+
private readonly apiKey;
|
|
64
|
+
private readonly baseURL;
|
|
65
|
+
private readonly fetcher;
|
|
66
|
+
private readonly responseLimits;
|
|
67
|
+
readonly provider = "xai";
|
|
68
|
+
readonly capabilities: ModelCapabilities;
|
|
69
|
+
constructor(modelId: string, apiKey: string, baseURL: string, fetcher: typeof globalThis.fetch, responseLimits: ReturnType<typeof resolveAudioResponseLimits>);
|
|
70
|
+
generateSpeech(input: SpeechModelInput<XAISpeechOptions>): Promise<SpeechResult>;
|
|
71
|
+
}
|
|
72
|
+
export declare class XAITranscriptionModel implements TranscriptionModel<XAITranscriptionOptions> {
|
|
73
|
+
readonly modelId: string;
|
|
74
|
+
private readonly apiKey;
|
|
75
|
+
private readonly baseURL;
|
|
76
|
+
private readonly fetcher;
|
|
77
|
+
private readonly responseLimits;
|
|
78
|
+
readonly provider = "xai";
|
|
79
|
+
readonly capabilities: ModelCapabilities;
|
|
80
|
+
constructor(modelId: string, apiKey: string, baseURL: string, fetcher: typeof globalThis.fetch, responseLimits: ReturnType<typeof resolveAudioResponseLimits>);
|
|
81
|
+
transcribe(input: TranscriptionModelInput<XAITranscriptionOptions>): Promise<TranscriptionResult>;
|
|
82
|
+
}
|
|
83
|
+
export declare const createXAIMedia: (config: {
|
|
84
|
+
apiKey: string;
|
|
85
|
+
baseURL: string;
|
|
86
|
+
fetcher: typeof globalThis.fetch;
|
|
87
|
+
responseLimits?: AudioResponseLimits;
|
|
88
|
+
}) => {
|
|
89
|
+
imageGenerationModel: (modelId: string) => XAIImageGenerationModel;
|
|
90
|
+
videoGenerationModel: (modelId: string) => XAIVideoGenerationModel;
|
|
91
|
+
speechModel: (modelId: string) => XAISpeechModel;
|
|
92
|
+
transcriptionModel: (modelId: string) => XAITranscriptionModel;
|
|
93
|
+
};
|
|
94
|
+
//# sourceMappingURL=media.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../src/media.ts"],"names":[],"mappings":"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"}
|
package/dist/media.js
ADDED
|
@@ -0,0 +1,517 @@
|
|
|
1
|
+
import { ConfigurationError, ProviderHTTPError, UnsupportedFeatureError, decodeBase64WithLimit, readBodyWithLimit, readErrorBodyWithLimit, readJsonWithLimit, resolveAudioResponseLimits, withRetry, withTimeoutSignal } from "@zhivex-ai/core/provider";
|
|
2
|
+
const mediaCapabilities = (kind) => ({
|
|
3
|
+
streaming: false,
|
|
4
|
+
tools: false,
|
|
5
|
+
structuredOutput: false,
|
|
6
|
+
jsonMode: false,
|
|
7
|
+
toolChoice: false,
|
|
8
|
+
parallelToolCalls: false,
|
|
9
|
+
vision: kind === "image",
|
|
10
|
+
files: false,
|
|
11
|
+
audioInput: kind === "transcription",
|
|
12
|
+
audioOutput: kind === "speech" || kind === "video",
|
|
13
|
+
embeddings: false,
|
|
14
|
+
imageGeneration: kind === "image",
|
|
15
|
+
videoGeneration: kind === "video",
|
|
16
|
+
fileSearch: false,
|
|
17
|
+
reasoning: false,
|
|
18
|
+
webSearch: false,
|
|
19
|
+
agentCapabilities: {
|
|
20
|
+
supportTier: "tier-c",
|
|
21
|
+
toolChoiceNone: false,
|
|
22
|
+
approvalRequests: false,
|
|
23
|
+
hostedWebSearch: false,
|
|
24
|
+
hostedFileSearch: false,
|
|
25
|
+
remoteMcp: false,
|
|
26
|
+
computerUse: false,
|
|
27
|
+
codeExecution: false,
|
|
28
|
+
toolsets: false
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
export const XAI_IMAGE_MODELS = [
|
|
32
|
+
"grok-imagine-image",
|
|
33
|
+
"grok-imagine-image-2.0",
|
|
34
|
+
"grok-imagine-image-quality"
|
|
35
|
+
];
|
|
36
|
+
export const XAI_VIDEO_MODELS = [
|
|
37
|
+
"grok-imagine-video",
|
|
38
|
+
"grok-imagine-video-1.5",
|
|
39
|
+
"grok-imagine-video-1.5-lite"
|
|
40
|
+
];
|
|
41
|
+
export const XAI_TEXT_TO_SPEECH_MODEL = "grok-tts";
|
|
42
|
+
export const XAI_SPEECH_TO_TEXT_MODEL = "grok-voice-transcribe-2.0";
|
|
43
|
+
export const XAI_SPEECH_TO_SPEECH_MODEL = "grok-voice-3.0";
|
|
44
|
+
/** grok-voice-2.0 is the deprecated speech-to-speech model. Speech-to-speech uses grok-voice-3.0. */
|
|
45
|
+
export const XAI_DEPRECATED_MODELS = Object.freeze({
|
|
46
|
+
"grok-voice-2.0": "Deprecated speech-to-speech model. Use grok-voice-3.0."
|
|
47
|
+
});
|
|
48
|
+
const IMAGE_ASPECT_RATIOS = new Set([
|
|
49
|
+
"1:1", "16:9", "9:16", "4:3", "3:4", "3:2", "2:3", "2:1", "1:2",
|
|
50
|
+
"19.5:9", "9:19.5", "20:9", "9:20", "21:9", "5:2", "auto"
|
|
51
|
+
]);
|
|
52
|
+
const VIDEO_ASPECT_RATIOS = new Set(["1:1", "16:9", "9:16", "4:3", "3:4", "3:2", "2:3", "21:9", "5:2"]);
|
|
53
|
+
const IMAGE_RESOLUTIONS = new Set(["1k", "2k"]);
|
|
54
|
+
const VIDEO_RESOLUTIONS = new Set(["480p", "720p", "1080p"]);
|
|
55
|
+
const sleep = (ms, signal) => new Promise((resolve, reject) => {
|
|
56
|
+
if (ms <= 0) {
|
|
57
|
+
resolve();
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (signal?.aborted) {
|
|
61
|
+
reject(signal.reason instanceof Error ? signal.reason : new DOMException("The operation was aborted.", "AbortError"));
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
const timeout = setTimeout(() => {
|
|
65
|
+
signal?.removeEventListener("abort", onAbort);
|
|
66
|
+
resolve();
|
|
67
|
+
}, ms);
|
|
68
|
+
const onAbort = () => {
|
|
69
|
+
clearTimeout(timeout);
|
|
70
|
+
reject(signal?.reason instanceof Error ? signal.reason : new DOMException("The operation was aborted.", "AbortError"));
|
|
71
|
+
};
|
|
72
|
+
signal?.addEventListener("abort", onAbort, { once: true });
|
|
73
|
+
});
|
|
74
|
+
const assertKnownModel = (modelId, allowed, label) => {
|
|
75
|
+
if (!allowed.includes(modelId)) {
|
|
76
|
+
throw new UnsupportedFeatureError(`Provider "xai" ${label} model "${modelId}" is not supported. Supported models: ${allowed.join(", ")}.`);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
export const assertXaiMediaRegion = (baseURL, feature) => {
|
|
80
|
+
if (new URL(baseURL).hostname === "us.api.x.ai") {
|
|
81
|
+
throw new UnsupportedFeatureError(`Provider "xai" US regional endpoint currently serves grok-4.7 and grok-4.6 text models only. ${feature} is not available there.`);
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
const assertVoiceSelection = (kind, modelId) => {
|
|
85
|
+
const id = modelId.trim().toLowerCase();
|
|
86
|
+
if (id === "grok-voice-2.0") {
|
|
87
|
+
throw new UnsupportedFeatureError('Provider "xai" model "grok-voice-2.0" is deprecated. Speech-to-speech uses "grok-voice-3.0". Text-to-speech uses "grok-tts", and speech-to-text uses "grok-voice-transcribe-2.0".');
|
|
88
|
+
}
|
|
89
|
+
if (kind === "speech" && id !== XAI_TEXT_TO_SPEECH_MODEL) {
|
|
90
|
+
const hint = id === XAI_SPEECH_TO_SPEECH_MODEL
|
|
91
|
+
? ' "grok-voice-3.0" is the speech-to-speech model, not text-to-speech.'
|
|
92
|
+
: "";
|
|
93
|
+
throw new UnsupportedFeatureError(`Provider "xai" text-to-speech model is "${XAI_TEXT_TO_SPEECH_MODEL}".${hint}`);
|
|
94
|
+
}
|
|
95
|
+
if (kind === "transcription" && id !== XAI_SPEECH_TO_TEXT_MODEL) {
|
|
96
|
+
const hint = id === XAI_SPEECH_TO_SPEECH_MODEL
|
|
97
|
+
? ' "grok-voice-3.0" is the speech-to-speech model, not speech-to-text.'
|
|
98
|
+
: "";
|
|
99
|
+
throw new UnsupportedFeatureError(`Provider "xai" speech-to-text model is "${XAI_SPEECH_TO_TEXT_MODEL}".${hint}`);
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
const jsonHeaders = (apiKey) => ({
|
|
103
|
+
"content-type": "application/json",
|
|
104
|
+
authorization: `Bearer ${apiKey}`
|
|
105
|
+
});
|
|
106
|
+
const readJson = async (response, endpoint, maxBytes, errorBodyBytes) => {
|
|
107
|
+
if (!response.ok && response.status !== 202) {
|
|
108
|
+
const body = await readErrorBodyWithLimit(response, errorBodyBytes);
|
|
109
|
+
throw new ProviderHTTPError(`xAI request failed with status ${response.status}.`, response.status, {
|
|
110
|
+
responseBody: body
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
return readJsonWithLimit(response, {
|
|
114
|
+
maxBytes,
|
|
115
|
+
provider: "xai",
|
|
116
|
+
endpoint
|
|
117
|
+
});
|
|
118
|
+
};
|
|
119
|
+
const mediaUrl = (input) => {
|
|
120
|
+
if (typeof input.uri === "string" && input.uri.trim())
|
|
121
|
+
return input.uri;
|
|
122
|
+
if (typeof input.data === "string" && input.data.trim()) {
|
|
123
|
+
return input.data.startsWith("data:") ? input.data : `data:${input.mediaType};base64,${input.data}`;
|
|
124
|
+
}
|
|
125
|
+
if (input.data instanceof Uint8Array || input.data instanceof ArrayBuffer) {
|
|
126
|
+
const bytes = input.data instanceof Uint8Array ? input.data : new Uint8Array(input.data);
|
|
127
|
+
const copy = bytes.buffer.slice(bytes.byteOffset, bytes.byteOffset + bytes.byteLength);
|
|
128
|
+
return `data:${input.mediaType};base64,${Buffer.from(copy).toString("base64")}`;
|
|
129
|
+
}
|
|
130
|
+
throw new ConfigurationError('Provider "xai" media input requires uri or data.');
|
|
131
|
+
};
|
|
132
|
+
const imageReference = (input) => {
|
|
133
|
+
const fileId = input.providerMetadata?.file_id;
|
|
134
|
+
if (typeof fileId === "string" && fileId.trim())
|
|
135
|
+
return { file_id: fileId };
|
|
136
|
+
return { url: mediaUrl(input), type: "image_url" };
|
|
137
|
+
};
|
|
138
|
+
const omit = (options, keys) => {
|
|
139
|
+
const copy = { ...options };
|
|
140
|
+
for (const key of keys)
|
|
141
|
+
delete copy[key];
|
|
142
|
+
return copy;
|
|
143
|
+
};
|
|
144
|
+
const bytesFromAudio = (audio) => {
|
|
145
|
+
if (audio.data instanceof Uint8Array)
|
|
146
|
+
return audio.data;
|
|
147
|
+
if (audio.data instanceof ArrayBuffer)
|
|
148
|
+
return new Uint8Array(audio.data);
|
|
149
|
+
if (typeof audio.data !== "string" || !audio.data.trim()) {
|
|
150
|
+
throw new ConfigurationError('Provider "xai" transcription requires audio bytes or providerOptions.url.');
|
|
151
|
+
}
|
|
152
|
+
return Uint8Array.from(Buffer.from(audio.data, "base64"));
|
|
153
|
+
};
|
|
154
|
+
export class XAIImageGenerationModel {
|
|
155
|
+
modelId;
|
|
156
|
+
apiKey;
|
|
157
|
+
baseURL;
|
|
158
|
+
fetcher;
|
|
159
|
+
provider = "xai";
|
|
160
|
+
capabilities = mediaCapabilities("image");
|
|
161
|
+
constructor(modelId, apiKey, baseURL, fetcher) {
|
|
162
|
+
this.modelId = modelId;
|
|
163
|
+
this.apiKey = apiKey;
|
|
164
|
+
this.baseURL = baseURL;
|
|
165
|
+
this.fetcher = fetcher;
|
|
166
|
+
assertKnownModel(modelId, XAI_IMAGE_MODELS, "image");
|
|
167
|
+
assertXaiMediaRegion(baseURL, "Image generation");
|
|
168
|
+
}
|
|
169
|
+
async generateImage(input) {
|
|
170
|
+
if (input.negativePrompt !== undefined) {
|
|
171
|
+
throw new UnsupportedFeatureError('Provider "xai" image generation does not support negativePrompt.');
|
|
172
|
+
}
|
|
173
|
+
if (input.count !== undefined && (!Number.isInteger(input.count) || input.count < 1 || input.count > 10)) {
|
|
174
|
+
throw new UnsupportedFeatureError('Provider "xai" image generation count must be an integer from 1 to 10.');
|
|
175
|
+
}
|
|
176
|
+
if (input.aspectRatio !== undefined && !IMAGE_ASPECT_RATIOS.has(input.aspectRatio)) {
|
|
177
|
+
throw new UnsupportedFeatureError(`Provider "xai" does not support image aspect ratio "${input.aspectRatio}".`);
|
|
178
|
+
}
|
|
179
|
+
const options = { ...(input.providerOptions ?? {}) };
|
|
180
|
+
const pollIntervalMs = typeof options.pollIntervalMs === "number" ? options.pollIntervalMs : 1_000;
|
|
181
|
+
const resolution = options.resolution ?? (input.size === "1k" || input.size === "2k" ? input.size : undefined);
|
|
182
|
+
if (input.size !== undefined && resolution === undefined) {
|
|
183
|
+
throw new UnsupportedFeatureError('Provider "xai" image size must be "1k" or "2k". Use resolution for output size.');
|
|
184
|
+
}
|
|
185
|
+
if (resolution !== undefined && !IMAGE_RESOLUTIONS.has(String(resolution))) {
|
|
186
|
+
throw new UnsupportedFeatureError('Provider "xai" image resolution must be "1k" or "2k".');
|
|
187
|
+
}
|
|
188
|
+
if (options.quality !== undefined && this.modelId !== "grok-imagine-image-2.0") {
|
|
189
|
+
throw new UnsupportedFeatureError('Provider "xai" image quality is supported only for "grok-imagine-image-2.0".');
|
|
190
|
+
}
|
|
191
|
+
if (options.quality !== undefined && !["low", "medium", "auto"].includes(String(options.quality))) {
|
|
192
|
+
throw new UnsupportedFeatureError('Provider "xai" image quality must be "low", "medium", or "auto".');
|
|
193
|
+
}
|
|
194
|
+
const images = input.images ?? [];
|
|
195
|
+
const body = {
|
|
196
|
+
...omit(options, ["model", "prompt", "n", "aspect_ratio", "resolution", "quality", "response_format", "image", "images", "pollIntervalMs"]),
|
|
197
|
+
model: this.modelId,
|
|
198
|
+
prompt: input.prompt,
|
|
199
|
+
...(input.count !== undefined ? { n: input.count } : {}),
|
|
200
|
+
...(input.aspectRatio ? { aspect_ratio: input.aspectRatio } : {}),
|
|
201
|
+
...(resolution ? { resolution } : {}),
|
|
202
|
+
...(options.quality !== undefined ? { quality: options.quality } : {}),
|
|
203
|
+
...(options.response_format !== undefined ? { response_format: options.response_format } : {})
|
|
204
|
+
};
|
|
205
|
+
const endpoint = images.length > 0 ? "images/edits" : "images/generations";
|
|
206
|
+
if (images.length === 1)
|
|
207
|
+
body.image = imageReference(images[0]);
|
|
208
|
+
if (images.length > 1)
|
|
209
|
+
body.images = images.map(imageReference);
|
|
210
|
+
const { signal, cleanup } = withTimeoutSignal(input);
|
|
211
|
+
try {
|
|
212
|
+
const response = await withRetry(() => this.fetcher(`${this.baseURL}/${endpoint}`, {
|
|
213
|
+
method: "POST",
|
|
214
|
+
headers: jsonHeaders(this.apiKey),
|
|
215
|
+
redirect: "error",
|
|
216
|
+
signal,
|
|
217
|
+
body: JSON.stringify(body)
|
|
218
|
+
}), input);
|
|
219
|
+
let json = await readJson(response, endpoint, 32 * 1024 * 1024, 64 * 1024);
|
|
220
|
+
if (!Array.isArray(json.data) && typeof json.request_id === "string") {
|
|
221
|
+
json = await this.pollImage(json.request_id, input, signal, pollIntervalMs);
|
|
222
|
+
}
|
|
223
|
+
const data = Array.isArray(json.data) ? json.data : [];
|
|
224
|
+
if (data.length === 0) {
|
|
225
|
+
throw new ProviderHTTPError("xAI image generation returned no images.", response.status || 502, { responseBody: json });
|
|
226
|
+
}
|
|
227
|
+
return {
|
|
228
|
+
images: data.map((item) => ({
|
|
229
|
+
uri: typeof item.url === "string" ? item.url : undefined,
|
|
230
|
+
data: typeof item.b64_json === "string"
|
|
231
|
+
? decodeBase64WithLimit(item.b64_json, { maxBytes: 32 * 1024 * 1024, provider: "xai", endpoint })
|
|
232
|
+
: undefined,
|
|
233
|
+
mediaType: item.mime_type ?? input.outputMimeType ?? "image/jpeg",
|
|
234
|
+
providerMetadata: item
|
|
235
|
+
})),
|
|
236
|
+
rawResponse: json
|
|
237
|
+
};
|
|
238
|
+
}
|
|
239
|
+
finally {
|
|
240
|
+
cleanup();
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
async pollImage(requestId, input, signal, pollIntervalMs) {
|
|
244
|
+
const timeoutMs = input.timeoutMs ?? 120_000;
|
|
245
|
+
const started = Date.now();
|
|
246
|
+
let json = { status: "pending", request_id: requestId };
|
|
247
|
+
while (json.status !== "done" && json.status !== "failed") {
|
|
248
|
+
if (Date.now() - started >= timeoutMs) {
|
|
249
|
+
throw new ProviderHTTPError(`xAI image generation timed out after ${timeoutMs}ms.`, 408);
|
|
250
|
+
}
|
|
251
|
+
await sleep(pollIntervalMs, signal);
|
|
252
|
+
const response = await withRetry(() => this.fetcher(`${this.baseURL}/images/${encodeURIComponent(requestId)}`, {
|
|
253
|
+
method: "GET",
|
|
254
|
+
headers: { authorization: `Bearer ${this.apiKey}` },
|
|
255
|
+
redirect: "error",
|
|
256
|
+
signal
|
|
257
|
+
}), input);
|
|
258
|
+
json = await readJson(response, "images/result", 32 * 1024 * 1024, 64 * 1024);
|
|
259
|
+
}
|
|
260
|
+
if (json.status === "failed") {
|
|
261
|
+
throw new ProviderHTTPError(`xAI image generation failed${json.error?.message ? `: ${json.error.message}` : "."}`, 502, { responseBody: json });
|
|
262
|
+
}
|
|
263
|
+
return json;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
export class XAIVideoGenerationModel {
|
|
267
|
+
modelId;
|
|
268
|
+
apiKey;
|
|
269
|
+
baseURL;
|
|
270
|
+
fetcher;
|
|
271
|
+
provider = "xai";
|
|
272
|
+
capabilities = mediaCapabilities("video");
|
|
273
|
+
constructor(modelId, apiKey, baseURL, fetcher) {
|
|
274
|
+
this.modelId = modelId;
|
|
275
|
+
this.apiKey = apiKey;
|
|
276
|
+
this.baseURL = baseURL;
|
|
277
|
+
this.fetcher = fetcher;
|
|
278
|
+
assertKnownModel(modelId, XAI_VIDEO_MODELS, "video");
|
|
279
|
+
assertXaiMediaRegion(baseURL, "Video generation");
|
|
280
|
+
}
|
|
281
|
+
async generateVideo(input) {
|
|
282
|
+
if (input.negativePrompt !== undefined) {
|
|
283
|
+
throw new UnsupportedFeatureError('Provider "xai" video generation does not support negativePrompt.');
|
|
284
|
+
}
|
|
285
|
+
if (input.count !== undefined && input.count !== 1) {
|
|
286
|
+
throw new UnsupportedFeatureError('Provider "xai" video generation accepts one video per request.');
|
|
287
|
+
}
|
|
288
|
+
if (input.outputStorageUri !== undefined) {
|
|
289
|
+
throw new UnsupportedFeatureError('Provider "xai" video generation does not support outputStorageUri.');
|
|
290
|
+
}
|
|
291
|
+
if (input.durationSeconds !== undefined &&
|
|
292
|
+
(!Number.isInteger(input.durationSeconds) || input.durationSeconds < 1 || input.durationSeconds > 15)) {
|
|
293
|
+
throw new UnsupportedFeatureError('Provider "xai" video durationSeconds must be an integer from 1 to 15.');
|
|
294
|
+
}
|
|
295
|
+
if (input.aspectRatio !== undefined && !VIDEO_ASPECT_RATIOS.has(input.aspectRatio)) {
|
|
296
|
+
throw new UnsupportedFeatureError(`Provider "xai" does not support video aspect ratio "${input.aspectRatio}".`);
|
|
297
|
+
}
|
|
298
|
+
const options = { ...(input.providerOptions ?? {}) };
|
|
299
|
+
if (options.resolution !== undefined && !VIDEO_RESOLUTIONS.has(String(options.resolution))) {
|
|
300
|
+
throw new UnsupportedFeatureError('Provider "xai" video resolution must be "480p", "720p", or "1080p".');
|
|
301
|
+
}
|
|
302
|
+
if (this.modelId === "grok-imagine-video" && options.resolution === "1080p") {
|
|
303
|
+
throw new UnsupportedFeatureError('Provider "xai" model "grok-imagine-video" supports video resolutions up to 720p.');
|
|
304
|
+
}
|
|
305
|
+
const body = {
|
|
306
|
+
...omit(options, ["model", "prompt", "duration", "aspect_ratio", "image", "resolution"]),
|
|
307
|
+
model: this.modelId,
|
|
308
|
+
...(input.prompt ? { prompt: input.prompt } : {}),
|
|
309
|
+
...(input.durationSeconds !== undefined ? { duration: input.durationSeconds } : {}),
|
|
310
|
+
...(input.aspectRatio ? { aspect_ratio: input.aspectRatio } : {}),
|
|
311
|
+
...(options.resolution !== undefined ? { resolution: options.resolution } : {}),
|
|
312
|
+
...(input.image ? { image: imageReference(input.image) } : {})
|
|
313
|
+
};
|
|
314
|
+
const timeoutMs = input.timeoutMs ?? 600_000;
|
|
315
|
+
const { signal, cleanup } = withTimeoutSignal({ ...input, timeoutMs });
|
|
316
|
+
const started = Date.now();
|
|
317
|
+
try {
|
|
318
|
+
const response = await withRetry(() => this.fetcher(`${this.baseURL}/videos/generations`, {
|
|
319
|
+
method: "POST",
|
|
320
|
+
headers: jsonHeaders(this.apiKey),
|
|
321
|
+
redirect: "error",
|
|
322
|
+
signal,
|
|
323
|
+
body: JSON.stringify(body)
|
|
324
|
+
}), { ...input, maxRetries: input.maxRetries ?? 0 });
|
|
325
|
+
let json = await readJson(response, "videos/generations", 1024 * 1024, 64 * 1024);
|
|
326
|
+
const requestId = typeof json.request_id === "string" ? json.request_id : undefined;
|
|
327
|
+
while (json.status !== "done" && json.status !== "failed") {
|
|
328
|
+
if (!requestId) {
|
|
329
|
+
throw new ProviderHTTPError("xAI video generation returned no request id.", response.status || 502, {
|
|
330
|
+
responseBody: json
|
|
331
|
+
});
|
|
332
|
+
}
|
|
333
|
+
if (Date.now() - started >= timeoutMs) {
|
|
334
|
+
throw new ProviderHTTPError(`xAI video generation timed out after ${timeoutMs}ms.`, 408);
|
|
335
|
+
}
|
|
336
|
+
await sleep(input.pollIntervalMs ?? 5_000, signal);
|
|
337
|
+
const poll = await withRetry(() => this.fetcher(`${this.baseURL}/videos/${encodeURIComponent(requestId)}`, {
|
|
338
|
+
method: "GET",
|
|
339
|
+
headers: { authorization: `Bearer ${this.apiKey}` },
|
|
340
|
+
redirect: "error",
|
|
341
|
+
signal
|
|
342
|
+
}), input);
|
|
343
|
+
json = await readJson(poll, "videos/result", 1024 * 1024, 64 * 1024);
|
|
344
|
+
}
|
|
345
|
+
if (json.status === "failed" || typeof json.video?.url !== "string") {
|
|
346
|
+
throw new ProviderHTTPError(`xAI video generation failed${json.error?.message ? `: ${json.error.message}` : "."}`, 502, { responseBody: json });
|
|
347
|
+
}
|
|
348
|
+
return {
|
|
349
|
+
videos: [{ uri: json.video.url, mediaType: "video/mp4", providerMetadata: json.video }],
|
|
350
|
+
operationName: requestId,
|
|
351
|
+
rawResponse: json
|
|
352
|
+
};
|
|
353
|
+
}
|
|
354
|
+
finally {
|
|
355
|
+
cleanup();
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
export class XAISpeechModel {
|
|
360
|
+
modelId;
|
|
361
|
+
apiKey;
|
|
362
|
+
baseURL;
|
|
363
|
+
fetcher;
|
|
364
|
+
responseLimits;
|
|
365
|
+
provider = "xai";
|
|
366
|
+
capabilities = mediaCapabilities("speech");
|
|
367
|
+
constructor(modelId, apiKey, baseURL, fetcher, responseLimits) {
|
|
368
|
+
this.modelId = modelId;
|
|
369
|
+
this.apiKey = apiKey;
|
|
370
|
+
this.baseURL = baseURL;
|
|
371
|
+
this.fetcher = fetcher;
|
|
372
|
+
this.responseLimits = responseLimits;
|
|
373
|
+
assertVoiceSelection("speech", modelId);
|
|
374
|
+
assertXaiMediaRegion(baseURL, "Text to speech");
|
|
375
|
+
}
|
|
376
|
+
async generateSpeech(input) {
|
|
377
|
+
if (!input.input.trim()) {
|
|
378
|
+
throw new ConfigurationError('Provider "xai" text-to-speech requires text.');
|
|
379
|
+
}
|
|
380
|
+
if (input.input.length > 60_000) {
|
|
381
|
+
throw new UnsupportedFeatureError('Provider "xai" text-to-speech accepts at most 60000 characters.');
|
|
382
|
+
}
|
|
383
|
+
const options = { ...(input.providerOptions ?? {}) };
|
|
384
|
+
const language = typeof options.language === "string" ? options.language : "en";
|
|
385
|
+
const { signal, cleanup, abort } = withTimeoutSignal(input);
|
|
386
|
+
try {
|
|
387
|
+
const response = await withRetry(() => this.fetcher(`${this.baseURL}/tts`, {
|
|
388
|
+
method: "POST",
|
|
389
|
+
headers: jsonHeaders(this.apiKey),
|
|
390
|
+
redirect: "error",
|
|
391
|
+
signal,
|
|
392
|
+
body: JSON.stringify({
|
|
393
|
+
...omit(options, ["model", "text", "voice_id", "language"]),
|
|
394
|
+
text: input.input,
|
|
395
|
+
voice_id: input.voice ?? "eve",
|
|
396
|
+
language
|
|
397
|
+
})
|
|
398
|
+
}), input);
|
|
399
|
+
if (!response.ok) {
|
|
400
|
+
const body = await readErrorBodyWithLimit(response, this.responseLimits.errorBodyBytes);
|
|
401
|
+
throw new ProviderHTTPError(`xAI request failed with status ${response.status}.`, response.status, {
|
|
402
|
+
responseBody: body
|
|
403
|
+
});
|
|
404
|
+
}
|
|
405
|
+
const contentType = response.headers.get("content-type") ?? "";
|
|
406
|
+
if (contentType.includes("json") || options.with_timestamps === true) {
|
|
407
|
+
const json = await readJsonWithLimit(response, {
|
|
408
|
+
maxBytes: this.responseLimits.speechJsonBytes,
|
|
409
|
+
provider: "xai",
|
|
410
|
+
endpoint: "tts",
|
|
411
|
+
abort
|
|
412
|
+
});
|
|
413
|
+
if (typeof json.audio !== "string") {
|
|
414
|
+
throw new ProviderHTTPError("xAI text-to-speech response did not contain audio.", 502, { responseBody: json });
|
|
415
|
+
}
|
|
416
|
+
return {
|
|
417
|
+
audio: decodeBase64WithLimit(json.audio, {
|
|
418
|
+
maxBytes: this.responseLimits.speechBytes,
|
|
419
|
+
provider: "xai",
|
|
420
|
+
endpoint: "tts",
|
|
421
|
+
abort
|
|
422
|
+
}),
|
|
423
|
+
mediaType: contentType.includes("json") ? "audio/mpeg" : contentType,
|
|
424
|
+
rawResponse: { ...json, audio: undefined }
|
|
425
|
+
};
|
|
426
|
+
}
|
|
427
|
+
return {
|
|
428
|
+
audio: await readBodyWithLimit(response, {
|
|
429
|
+
maxBytes: this.responseLimits.speechBytes,
|
|
430
|
+
provider: "xai",
|
|
431
|
+
endpoint: "tts",
|
|
432
|
+
abort
|
|
433
|
+
}),
|
|
434
|
+
mediaType: contentType || "audio/mpeg"
|
|
435
|
+
};
|
|
436
|
+
}
|
|
437
|
+
finally {
|
|
438
|
+
cleanup();
|
|
439
|
+
}
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
export class XAITranscriptionModel {
|
|
443
|
+
modelId;
|
|
444
|
+
apiKey;
|
|
445
|
+
baseURL;
|
|
446
|
+
fetcher;
|
|
447
|
+
responseLimits;
|
|
448
|
+
provider = "xai";
|
|
449
|
+
capabilities = mediaCapabilities("transcription");
|
|
450
|
+
constructor(modelId, apiKey, baseURL, fetcher, responseLimits) {
|
|
451
|
+
this.modelId = modelId;
|
|
452
|
+
this.apiKey = apiKey;
|
|
453
|
+
this.baseURL = baseURL;
|
|
454
|
+
this.fetcher = fetcher;
|
|
455
|
+
this.responseLimits = responseLimits;
|
|
456
|
+
assertVoiceSelection("transcription", modelId);
|
|
457
|
+
assertXaiMediaRegion(baseURL, "Speech to text");
|
|
458
|
+
}
|
|
459
|
+
async transcribe(input) {
|
|
460
|
+
if (input.prompt !== undefined) {
|
|
461
|
+
throw new UnsupportedFeatureError('Provider "xai" speech-to-text does not support prompt. Pass key terms through providerOptions.keyterm.');
|
|
462
|
+
}
|
|
463
|
+
const options = { ...(input.providerOptions ?? {}) };
|
|
464
|
+
const remoteUrl = typeof options.url === "string" ? options.url : undefined;
|
|
465
|
+
const form = new FormData();
|
|
466
|
+
form.set("model", this.modelId);
|
|
467
|
+
if (input.language)
|
|
468
|
+
form.set("language", input.language);
|
|
469
|
+
for (const [key, value] of Object.entries(omit(options, ["model", "file", "url", "language"]))) {
|
|
470
|
+
if (value === undefined)
|
|
471
|
+
continue;
|
|
472
|
+
if (Array.isArray(value)) {
|
|
473
|
+
for (const item of value)
|
|
474
|
+
form.append(key, String(item));
|
|
475
|
+
}
|
|
476
|
+
else if (typeof value === "string") {
|
|
477
|
+
form.set(key, value);
|
|
478
|
+
}
|
|
479
|
+
else {
|
|
480
|
+
form.set(key, JSON.stringify(value));
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
if (remoteUrl) {
|
|
484
|
+
form.set("url", remoteUrl);
|
|
485
|
+
}
|
|
486
|
+
else {
|
|
487
|
+
const bytes = bytesFromAudio(input.audio);
|
|
488
|
+
const copy = bytes.buffer.slice(bytes.byteOffset, bytes.byteOffset + bytes.byteLength);
|
|
489
|
+
form.set("file", new File([copy], input.audio.filename ?? "audio", { type: input.audio.mediaType }));
|
|
490
|
+
}
|
|
491
|
+
const { signal, cleanup } = withTimeoutSignal(input);
|
|
492
|
+
try {
|
|
493
|
+
const response = await withRetry(() => this.fetcher(`${this.baseURL}/stt`, {
|
|
494
|
+
method: "POST",
|
|
495
|
+
headers: { authorization: `Bearer ${this.apiKey}` },
|
|
496
|
+
redirect: "error",
|
|
497
|
+
signal,
|
|
498
|
+
body: form
|
|
499
|
+
}), input);
|
|
500
|
+
const json = await readJson(response, "stt", this.responseLimits.transcriptionBytes, this.responseLimits.errorBodyBytes);
|
|
501
|
+
return { text: typeof json.text === "string" ? json.text : "", rawResponse: json };
|
|
502
|
+
}
|
|
503
|
+
finally {
|
|
504
|
+
cleanup();
|
|
505
|
+
}
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
export const createXAIMedia = (config) => {
|
|
509
|
+
const limits = resolveAudioResponseLimits(config.responseLimits);
|
|
510
|
+
return {
|
|
511
|
+
imageGenerationModel: (modelId) => new XAIImageGenerationModel(modelId, config.apiKey, config.baseURL, config.fetcher),
|
|
512
|
+
videoGenerationModel: (modelId) => new XAIVideoGenerationModel(modelId, config.apiKey, config.baseURL, config.fetcher),
|
|
513
|
+
speechModel: (modelId) => new XAISpeechModel(modelId, config.apiKey, config.baseURL, config.fetcher, limits),
|
|
514
|
+
transcriptionModel: (modelId) => new XAITranscriptionModel(modelId, config.apiKey, config.baseURL, config.fetcher, limits)
|
|
515
|
+
};
|
|
516
|
+
};
|
|
517
|
+
//# sourceMappingURL=media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.js","sourceRoot":"","sources":["../src/media.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhivex-ai/xai",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "xAI Grok adapter for Zhivex AI SDK.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"access": "public"
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@zhivex-ai/core": "^1.
|
|
46
|
-
"@zhivex-ai/openai": "^0.16.
|
|
45
|
+
"@zhivex-ai/core": "^1.33.0",
|
|
46
|
+
"@zhivex-ai/openai": "^0.16.1"
|
|
47
47
|
}
|
|
48
48
|
}
|