@dbx-tools/shared-model-gateway 0.9.40 → 0.9.43
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 +22 -0
- package/exports.ts +1 -0
- package/index.ts +5 -1
- package/lib/exports.d.ts +1 -0
- package/lib/exports.js +2 -1
- package/lib/index.d.ts +5 -1
- package/lib/index.js +5 -2
- package/lib/src/contracts.d.ts +72 -25
- package/lib/src/contracts.js +87 -73
- package/lib/src/models.d.ts +103 -11
- package/lib/src/models.js +2 -1
- package/lib/src/options.d.ts +42 -0
- package/lib/src/options.js +44 -0
- package/lib/src/upstream.d.ts +12 -0
- package/lib/src/upstream.js +32 -0
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +19 -2
- package/src/contracts.ts +107 -87
- package/src/models.ts +1 -0
- package/src/options.ts +59 -0
- package/src/upstream.ts +35 -0
package/lib/src/models.d.ts
CHANGED
|
@@ -7,13 +7,22 @@ import { z } from "zod";
|
|
|
7
7
|
/** Capabilities published with an OpenAI-compatible model entry. */
|
|
8
8
|
export declare const OpenAIModelCapabilitiesSchema: z.ZodObject<{
|
|
9
9
|
tools: z.ZodBoolean;
|
|
10
|
-
reasoning: z.ZodArray<z.
|
|
10
|
+
reasoning: z.ZodArray<z.ZodEnum<{
|
|
11
|
+
none: "none";
|
|
12
|
+
minimal: "minimal";
|
|
13
|
+
low: "low";
|
|
14
|
+
medium: "medium";
|
|
15
|
+
high: "high";
|
|
16
|
+
xhigh: "xhigh";
|
|
17
|
+
max: "max";
|
|
18
|
+
}>>;
|
|
11
19
|
responses: z.ZodBoolean;
|
|
12
20
|
open_responses: z.ZodBoolean;
|
|
13
21
|
anthropic: z.ZodBoolean;
|
|
14
22
|
embeddings: z.ZodBoolean;
|
|
15
23
|
ai_gateway_codex: z.ZodBoolean;
|
|
16
24
|
streaming: z.ZodBoolean;
|
|
25
|
+
web_search: z.ZodBoolean;
|
|
17
26
|
}, z.core.$strip>;
|
|
18
27
|
/** Capabilities published with an OpenAI-compatible model entry. */
|
|
19
28
|
export type OpenAIModelCapabilities = z.infer<typeof OpenAIModelCapabilitiesSchema>;
|
|
@@ -30,13 +39,22 @@ export declare const OpenAIModelSchema: z.ZodObject<{
|
|
|
30
39
|
}, z.core.$strip>;
|
|
31
40
|
capabilities: z.ZodObject<{
|
|
32
41
|
tools: z.ZodBoolean;
|
|
33
|
-
reasoning: z.ZodArray<z.
|
|
42
|
+
reasoning: z.ZodArray<z.ZodEnum<{
|
|
43
|
+
none: "none";
|
|
44
|
+
minimal: "minimal";
|
|
45
|
+
low: "low";
|
|
46
|
+
medium: "medium";
|
|
47
|
+
high: "high";
|
|
48
|
+
xhigh: "xhigh";
|
|
49
|
+
max: "max";
|
|
50
|
+
}>>;
|
|
34
51
|
responses: z.ZodBoolean;
|
|
35
52
|
open_responses: z.ZodBoolean;
|
|
36
53
|
anthropic: z.ZodBoolean;
|
|
37
54
|
embeddings: z.ZodBoolean;
|
|
38
55
|
ai_gateway_codex: z.ZodBoolean;
|
|
39
56
|
streaming: z.ZodBoolean;
|
|
57
|
+
web_search: z.ZodBoolean;
|
|
40
58
|
}, z.core.$strip>;
|
|
41
59
|
}, z.core.$strip>;
|
|
42
60
|
/** One OpenAI-compatible model-list entry. */
|
|
@@ -56,13 +74,22 @@ export declare const OpenAIModelListResponseSchema: z.ZodObject<{
|
|
|
56
74
|
}, z.core.$strip>;
|
|
57
75
|
capabilities: z.ZodObject<{
|
|
58
76
|
tools: z.ZodBoolean;
|
|
59
|
-
reasoning: z.ZodArray<z.
|
|
77
|
+
reasoning: z.ZodArray<z.ZodEnum<{
|
|
78
|
+
none: "none";
|
|
79
|
+
minimal: "minimal";
|
|
80
|
+
low: "low";
|
|
81
|
+
medium: "medium";
|
|
82
|
+
high: "high";
|
|
83
|
+
xhigh: "xhigh";
|
|
84
|
+
max: "max";
|
|
85
|
+
}>>;
|
|
60
86
|
responses: z.ZodBoolean;
|
|
61
87
|
open_responses: z.ZodBoolean;
|
|
62
88
|
anthropic: z.ZodBoolean;
|
|
63
89
|
embeddings: z.ZodBoolean;
|
|
64
90
|
ai_gateway_codex: z.ZodBoolean;
|
|
65
91
|
streaming: z.ZodBoolean;
|
|
92
|
+
web_search: z.ZodBoolean;
|
|
66
93
|
}, z.core.$strip>;
|
|
67
94
|
}, z.core.$strip>>;
|
|
68
95
|
}, z.core.$strip>;
|
|
@@ -70,7 +97,15 @@ export declare const OpenAIModelListResponseSchema: z.ZodObject<{
|
|
|
70
97
|
export type OpenAIModelListResponse = z.infer<typeof OpenAIModelListResponseSchema>;
|
|
71
98
|
/** Reasoning effort advertised to Codex. */
|
|
72
99
|
export declare const CodexReasoningLevelSchema: z.ZodObject<{
|
|
73
|
-
effort: z.
|
|
100
|
+
effort: z.ZodEnum<{
|
|
101
|
+
none: "none";
|
|
102
|
+
minimal: "minimal";
|
|
103
|
+
low: "low";
|
|
104
|
+
medium: "medium";
|
|
105
|
+
high: "high";
|
|
106
|
+
xhigh: "xhigh";
|
|
107
|
+
max: "max";
|
|
108
|
+
}>;
|
|
74
109
|
description: z.ZodString;
|
|
75
110
|
}, z.core.$strip>;
|
|
76
111
|
/** Reasoning effort advertised to Codex. */
|
|
@@ -95,10 +130,26 @@ export declare const CodexModelSchema: z.ZodObject<{
|
|
|
95
130
|
deprecated: z.ZodDefault<z.ZodBoolean>;
|
|
96
131
|
}, z.core.$strip>;
|
|
97
132
|
supported_reasoning_levels: z.ZodArray<z.ZodObject<{
|
|
98
|
-
effort: z.
|
|
133
|
+
effort: z.ZodEnum<{
|
|
134
|
+
none: "none";
|
|
135
|
+
minimal: "minimal";
|
|
136
|
+
low: "low";
|
|
137
|
+
medium: "medium";
|
|
138
|
+
high: "high";
|
|
139
|
+
xhigh: "xhigh";
|
|
140
|
+
max: "max";
|
|
141
|
+
}>;
|
|
99
142
|
description: z.ZodString;
|
|
100
143
|
}, z.core.$strip>>;
|
|
101
|
-
default_reasoning_level: z.ZodOptional<z.
|
|
144
|
+
default_reasoning_level: z.ZodOptional<z.ZodEnum<{
|
|
145
|
+
none: "none";
|
|
146
|
+
minimal: "minimal";
|
|
147
|
+
low: "low";
|
|
148
|
+
medium: "medium";
|
|
149
|
+
high: "high";
|
|
150
|
+
xhigh: "xhigh";
|
|
151
|
+
max: "max";
|
|
152
|
+
}>>;
|
|
102
153
|
shell_type: z.ZodString;
|
|
103
154
|
visibility: z.ZodLiteral<"list">;
|
|
104
155
|
supported_in_api: z.ZodBoolean;
|
|
@@ -135,10 +186,26 @@ export declare const CodexModelListResponseSchema: z.ZodObject<{
|
|
|
135
186
|
deprecated: z.ZodDefault<z.ZodBoolean>;
|
|
136
187
|
}, z.core.$strip>;
|
|
137
188
|
supported_reasoning_levels: z.ZodArray<z.ZodObject<{
|
|
138
|
-
effort: z.
|
|
189
|
+
effort: z.ZodEnum<{
|
|
190
|
+
none: "none";
|
|
191
|
+
minimal: "minimal";
|
|
192
|
+
low: "low";
|
|
193
|
+
medium: "medium";
|
|
194
|
+
high: "high";
|
|
195
|
+
xhigh: "xhigh";
|
|
196
|
+
max: "max";
|
|
197
|
+
}>;
|
|
139
198
|
description: z.ZodString;
|
|
140
199
|
}, z.core.$strip>>;
|
|
141
|
-
default_reasoning_level: z.ZodOptional<z.
|
|
200
|
+
default_reasoning_level: z.ZodOptional<z.ZodEnum<{
|
|
201
|
+
none: "none";
|
|
202
|
+
minimal: "minimal";
|
|
203
|
+
low: "low";
|
|
204
|
+
medium: "medium";
|
|
205
|
+
high: "high";
|
|
206
|
+
xhigh: "xhigh";
|
|
207
|
+
max: "max";
|
|
208
|
+
}>>;
|
|
142
209
|
shell_type: z.ZodString;
|
|
143
210
|
visibility: z.ZodLiteral<"list">;
|
|
144
211
|
supported_in_api: z.ZodBoolean;
|
|
@@ -180,13 +247,22 @@ export declare const ModelListResponseSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
180
247
|
}, z.core.$strip>;
|
|
181
248
|
capabilities: z.ZodObject<{
|
|
182
249
|
tools: z.ZodBoolean;
|
|
183
|
-
reasoning: z.ZodArray<z.
|
|
250
|
+
reasoning: z.ZodArray<z.ZodEnum<{
|
|
251
|
+
none: "none";
|
|
252
|
+
minimal: "minimal";
|
|
253
|
+
low: "low";
|
|
254
|
+
medium: "medium";
|
|
255
|
+
high: "high";
|
|
256
|
+
xhigh: "xhigh";
|
|
257
|
+
max: "max";
|
|
258
|
+
}>>;
|
|
184
259
|
responses: z.ZodBoolean;
|
|
185
260
|
open_responses: z.ZodBoolean;
|
|
186
261
|
anthropic: z.ZodBoolean;
|
|
187
262
|
embeddings: z.ZodBoolean;
|
|
188
263
|
ai_gateway_codex: z.ZodBoolean;
|
|
189
264
|
streaming: z.ZodBoolean;
|
|
265
|
+
web_search: z.ZodBoolean;
|
|
190
266
|
}, z.core.$strip>;
|
|
191
267
|
}, z.core.$strip>>;
|
|
192
268
|
}, z.core.$strip>, z.ZodObject<{
|
|
@@ -199,10 +275,26 @@ export declare const ModelListResponseSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
199
275
|
deprecated: z.ZodDefault<z.ZodBoolean>;
|
|
200
276
|
}, z.core.$strip>;
|
|
201
277
|
supported_reasoning_levels: z.ZodArray<z.ZodObject<{
|
|
202
|
-
effort: z.
|
|
278
|
+
effort: z.ZodEnum<{
|
|
279
|
+
none: "none";
|
|
280
|
+
minimal: "minimal";
|
|
281
|
+
low: "low";
|
|
282
|
+
medium: "medium";
|
|
283
|
+
high: "high";
|
|
284
|
+
xhigh: "xhigh";
|
|
285
|
+
max: "max";
|
|
286
|
+
}>;
|
|
203
287
|
description: z.ZodString;
|
|
204
288
|
}, z.core.$strip>>;
|
|
205
|
-
default_reasoning_level: z.ZodOptional<z.
|
|
289
|
+
default_reasoning_level: z.ZodOptional<z.ZodEnum<{
|
|
290
|
+
none: "none";
|
|
291
|
+
minimal: "minimal";
|
|
292
|
+
low: "low";
|
|
293
|
+
medium: "medium";
|
|
294
|
+
high: "high";
|
|
295
|
+
xhigh: "xhigh";
|
|
296
|
+
max: "max";
|
|
297
|
+
}>>;
|
|
206
298
|
shell_type: z.ZodString;
|
|
207
299
|
visibility: z.ZodLiteral<"list">;
|
|
208
300
|
supported_in_api: z.ZodBoolean;
|
package/lib/src/models.js
CHANGED
|
@@ -15,6 +15,7 @@ export const OpenAIModelCapabilitiesSchema = z.object({
|
|
|
15
15
|
embeddings: z.boolean(),
|
|
16
16
|
ai_gateway_codex: z.boolean(),
|
|
17
17
|
streaming: z.boolean(),
|
|
18
|
+
web_search: z.boolean(),
|
|
18
19
|
});
|
|
19
20
|
/** One OpenAI-compatible model-list entry. */
|
|
20
21
|
export const OpenAIModelSchema = z.object({
|
|
@@ -124,4 +125,4 @@ export const GatewayErrorResponseSchema = z.union([
|
|
|
124
125
|
OpenAIErrorResponseSchema,
|
|
125
126
|
AnthropicErrorResponseSchema,
|
|
126
127
|
]);
|
|
127
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsb0VBQW9FO0FBQ3BFLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDcEQsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUU7SUFDbEIsU0FBUyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDO0lBQy9DLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO0lBQ3RCLGNBQWMsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO0lBQzNCLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO0lBQ3RCLFVBQVUsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO0lBQ3ZCLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUU7SUFDN0IsU0FBUyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUU7Q0FDdkIsQ0FBQyxDQUFDO0FBSUgsOENBQThDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDeEMsRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3JCLE1BQU0sRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUMxQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsRUFBRTtJQUN2QyxRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDM0Is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QyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0tBQzdELENBQUM7Q0FDSCxDQUFDLENBQUM7QUFJSCwyQ0FBMkM7QUFDM0MsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNuRCxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7SUFDeEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDZCxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtRQUNoQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtLQUNwQixDQUFDO0NBQ0gsQ0FBQyxDQUFDO0FBSUgsbUVBQW1FO0FBQ25FLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDaEQseUJBQXlCO0lBQ3pCLDRCQUE0QjtDQUM3QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEJyb3dzZXItc2FmZSBIVFRQIG1vZGVsLCBlbWJlZGRpbmcsIGFuZCBlcnJvciBwYXlsb2Fkcy5cbiAqXG4gKiBAbW9kdWxlXG4gKi9cblxuaW1wb3J0IHsgbW9kZWwgfSBmcm9tIFwiQGRieC10b29scy9zaGFyZWQtbW9kZWxcIjtcbmltcG9ydCB7IHogfSBmcm9tIFwiem9kXCI7XG5cbi8qKiBDYXBhYmlsaXRpZXMgcHVibGlzaGVkIHdpdGggYW4gT3BlbkFJLWNvbXBhdGlibGUgbW9kZWwgZW50cnkuICovXG5leHBvcnQgY29uc3QgT3BlbkFJTW9kZWxDYXBhYmlsaXRpZXNTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHRvb2xzOiB6LmJvb2xlYW4oKSxcbiAgcmVhc29uaW5nOiB6LmFycmF5KG1vZGVsLlJlYXNvbmluZ0VmZm9ydFNjaGVtYSksXG4gIHJlc3BvbnNlczogei5ib29sZWFuKCksXG4gIG9wZW5fcmVzcG9uc2VzOiB6LmJvb2xlYW4oKSxcbiAgYW50aHJvcGljOiB6LmJvb2xlYW4oKSxcbiAgZW1iZWRkaW5nczogei5ib29sZWFuKCksXG4gIGFpX2dhdGV3YXlfY29kZXg6IHouYm9vbGVhbigpLFxuICBzdHJlYW1pbmc6IHouYm9vbGVhbigpLFxufSk7XG4vKiogQ2FwYWJpbGl0aWVzIHB1Ymxpc2hlZCB3aXRoIGFuIE9wZW5BSS1jb21wYXRpYmxlIG1vZGVsIGVudHJ5LiAqL1xuZXhwb3J0IHR5cGUgT3BlbkFJTW9kZWxDYXBhYmlsaXRpZXMgPSB6LmluZmVyPHR5cGVvZiBPcGVuQUlNb2RlbENhcGFiaWxpdGllc1NjaGVtYT47XG5cbi8qKiBPbmUgT3BlbkFJLWNvbXBhdGlibGUgbW9kZWwtbGlzdCBlbnRyeS4gKi9cbmV4cG9ydCBjb25zdCBPcGVuQUlNb2RlbFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgaWQ6IHouc3RyaW5nKCkubWluKDEpLFxuICBvYmplY3Q6IHoubGl0ZXJhbChcIm1vZGVsXCIpLFxuICBjcmVhdGVkOiB6Lm51bWJlcigpLmludCgpLm5vbm5lZ2F0aXZlKCksXG4gIG93bmVkX2J5OiB6LnN0cmluZygpLm1pbigxKSxcbiAgbmFtZTogei5zdHJpbmcoKS5taW4oMSksXG4gIHRhc2s6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbiAgc3RhdHVzOiBtb2RlbC5Nb2RlbFN0YXR1c1NjaGVtYSxcbiAgY2FwYWJpbGl0aWVzOiBPcGVuQUlNb2RlbENhcGFiaWxpdGllc1NjaGVtYSxcbn0pO1xuLyoqIE9uZSBPcGVuQUktY29tcGF0aWJsZSBtb2RlbC1saXN0IGVudHJ5LiAqL1xuZXhwb3J0IHR5cGUgT3BlbkFJTW9kZWwgPSB6LmluZmVyPHR5cGVvZiBPcGVuQUlNb2RlbFNjaGVtYT47XG5cbi8qKiBTdGFuZGFyZCBPcGVuQUkgbW9kZWwtbGlzdCByZXNwb25zZS4gKi9cbmV4cG9ydCBjb25zdCBPcGVuQUlNb2RlbExpc3RSZXNwb25zZVNjaGVtYSA9IHoub2JqZWN0KHtcbiAgb2JqZWN0OiB6LmxpdGVyYWwoXCJsaXN0XCIpLFxuICBkYXRhOiB6LmFycmF5KE9wZW5BSU1vZGVsU2NoZW1hKSxcbn0pO1xuLyoqIFN0YW5kYXJkIE9wZW5BSSBtb2RlbC1saXN0IHJlc3BvbnNlLiAqL1xuZXhwb3J0IHR5cGUgT3BlbkFJTW9kZWxMaXN0UmVzcG9uc2UgPSB6LmluZmVyPHR5cGVvZiBPcGVuQUlNb2RlbExpc3RSZXNwb25zZVNjaGVtYT47XG5cbi8qKiBSZWFzb25pbmcgZWZmb3J0IGFkdmVydGlzZWQgdG8gQ29kZXguICovXG5leHBvcnQgY29uc3QgQ29kZXhSZWFzb25pbmdMZXZlbFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgZWZmb3J0OiBtb2RlbC5SZWFzb25pbmdFZmZvcnRTY2hlbWEsXG4gIGRlc2NyaXB0aW9uOiB6LnN0cmluZygpLFxufSk7XG4vKiogUmVhc29uaW5nIGVmZm9ydCBhZHZlcnRpc2VkIHRvIENvZGV4LiAqL1xuZXhwb3J0IHR5cGUgQ29kZXhSZWFzb25pbmdMZXZlbCA9IHouaW5mZXI8dHlwZW9mIENvZGV4UmVhc29uaW5nTGV2ZWxTY2hlbWE+O1xuXG4vKiogQ29kZXggY2xpZW50LXNpZGUgdHJhbnNjcmlwdCB0cnVuY2F0aW9uIHBvbGljeS4gKi9cbmV4cG9ydCBjb25zdCBDb2RleFRydW5jYXRpb25Qb2xpY3lTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIG1vZGU6IHouZW51bShbXCJ0b2tlbnNcIiwgXCJieXRlc1wiXSksXG4gIGxpbWl0OiB6Lm51bWJlcigpLmludCgpLnBvc2l0aXZlKCksXG59KTtcbi8qKiBDb2RleCBjbGllbnQtc2lkZSB0cmFuc2NyaXB0IHRydW5jYXRpb24gcG9saWN5LiAqL1xuZXhwb3J0IHR5cGUgQ29kZXhUcnVuY2F0aW9uUG9saWN5ID0gei5pbmZlcjx0eXBlb2YgQ29kZXhUcnVuY2F0aW9uUG9saWN5U2NoZW1hPjtcblxuLyoqIE9uZSBDb2RleCBtb2RlbC1jYXRhbG9nIGVudHJ5LiAqL1xuZXhwb3J0IGNvbnN0IENvZGV4TW9kZWxTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHNsdWc6IHouc3RyaW5nKCkubWluKDEpLFxuICBkaXNwbGF5X25hbWU6IHouc3RyaW5nKCkubWluKDEpLFxuICBkZXNjcmlwdGlvbjogei5zdHJpbmcoKSxcbiAgYmFzZV9pbnN0cnVjdGlvbnM6IHouc3RyaW5nKCksXG4gIHN0YXR1czogbW9kZWwuTW9kZWxTdGF0dXNTY2hlbWEsXG4gIHN1cHBvcnRlZF9yZWFzb25pbmdfbGV2ZWxzOiB6LmFycmF5KENvZGV4UmVhc29uaW5nTGV2ZWxTY2hlbWEpLFxuICBkZWZhdWx0X3JlYXNvbmluZ19sZXZlbDogbW9kZWwuUmVhc29uaW5nRWZmb3J0U2NoZW1hLm9wdGlvbmFsKCksXG4gIHNoZWxsX3R5cGU6IHouc3RyaW5nKCkubWluKDEpLFxuICB2aXNpYmlsaXR5OiB6LmxpdGVyYWwoXCJsaXN0XCIpLFxuICBzdXBwb3J0ZWRfaW5fYXBpOiB6LmJvb2xlYW4oKSxcbiAgcHJpb3JpdHk6IHoubnVtYmVyKCkuaW50KCkucG9zaXRpdmUoKSxcbiAgYXZhaWxhYmlsaXR5X251eDogei51bmtub3duKCkubnVsbGFibGUoKSxcbiAgdXBncmFkZTogei51bmtub3duKCkubnVsbGFibGUoKSxcbiAgc3VwcG9ydF92ZXJib3NpdHk6IHouYm9vbGVhbigpLFxuICBkZWZhdWx0X3ZlcmJvc2l0eTogei5zdHJpbmcoKS5udWxsYWJsZSgpLFxuICBhcHBseV9wYXRjaF90b29sX3R5cGU6IHouc3RyaW5nKCkubnVsbGFibGUoKSxcbiAgdHJ1bmNhdGlvbl9wb2xpY3k6IENvZGV4VHJ1bmNhdGlvblBvbGljeVNjaGVtYSxcbiAgY29udGV4dF93aW5kb3c6IHoubnVtYmVyKCkuaW50KCkucG9zaXRpdmUoKS5udWxsYWJsZSgpLFxuICBleHBlcmltZW50YWxfc3VwcG9ydGVkX3Rvb2xzOiB6LmFycmF5KHoudW5rbm93bigpKSxcbiAgaW5wdXRfbW9kYWxpdGllczogei5hcnJheSh6LnN0cmluZygpKSxcbiAgd2ViX3NlYXJjaF90b29sX3R5cGU6IHouc3RyaW5nKCksXG4gIHN1cHBvcnRzX3NlYXJjaF90b29sOiB6LmJvb2xlYW4oKSxcbiAgc3VwcG9ydHNfaW1hZ2VfZGV0YWlsX29yaWdpbmFsOiB6LmJvb2xlYW4oKSxcbn0pO1xuLyoqIE9uZSBDb2RleCBtb2RlbC1jYXRhbG9nIGVudHJ5LiAqL1xuZXhwb3J0IHR5cGUgQ29kZXhNb2RlbCA9IHouaW5mZXI8dHlwZW9mIENvZGV4TW9kZWxTY2hlbWE+O1xuXG4vKiogQ29kZXgtbmF0aXZlIG1vZGVsLWxpc3QgcmVzcG9uc2UuICovXG5leHBvcnQgY29uc3QgQ29kZXhNb2RlbExpc3RSZXNwb25zZVNjaGVtYSA9IHoub2JqZWN0KHtcbiAgbW9kZWxzOiB6LmFycmF5KENvZGV4TW9kZWxTY2hlbWEpLFxufSk7XG4vKiogQ29kZXgtbmF0aXZlIG1vZGVsLWxpc3QgcmVzcG9uc2UuICovXG5leHBvcnQgdHlwZSBDb2RleE1vZGVsTGlzdFJlc3BvbnNlID0gei5pbmZlcjx0eXBlb2YgQ29kZXhNb2RlbExpc3RSZXNwb25zZVNjaGVtYT47XG5cbi8qKiBNb2RlbC1saXN0IHJlc3BvbnNlIHNlbGVjdGVkIGJ5IHRoZSBjYWxsZXIncyBPcmlnaW5hdG9yIGhlYWRlci4gKi9cbmV4cG9ydCBjb25zdCBNb2RlbExpc3RSZXNwb25zZVNjaGVtYSA9IHoudW5pb24oW1xuICBPcGVuQUlNb2RlbExpc3RSZXNwb25zZVNjaGVtYSxcbiAgQ29kZXhNb2RlbExpc3RSZXNwb25zZVNjaGVtYSxcbl0pO1xuLyoqIE1vZGVsLWxpc3QgcmVzcG9uc2Ugc2VsZWN0ZWQgYnkgdGhlIGNhbGxlcidzIE9yaWdpbmF0b3IgaGVhZGVyLiAqL1xuZXhwb3J0IHR5cGUgTW9kZWxMaXN0UmVzcG9uc2UgPSB6LmluZmVyPHR5cGVvZiBNb2RlbExpc3RSZXNwb25zZVNjaGVtYT47XG5cbi8qKiBPcGVuQUktY29tcGF0aWJsZSBlbWJlZGRpbmdzIHJlcXVlc3QuICovXG5leHBvcnQgY29uc3QgRW1iZWRkaW5nUmVxdWVzdFNjaGVtYSA9IHoub2JqZWN0KHtcbiAgbW9kZWw6IHouc3RyaW5nKCkubWluKDEpLFxuICBpbnB1dDogei51bmlvbihbei5zdHJpbmcoKSwgei5hcnJheSh6LnN0cmluZygpKV0pLFxuICBlbmNvZGluZ19mb3JtYXQ6IHouZW51bShbXCJmbG9hdFwiLCBcImJhc2U2NFwiXSkub3B0aW9uYWwoKSxcbiAgZGltZW5zaW9uczogei5udW1iZXIoKS5pbnQoKS5wb3NpdGl2ZSgpLm9wdGlvbmFsKCksXG4gIHVzZXI6IHouc3RyaW5nKCkub3B0aW9uYWwoKSxcbn0pO1xuLyoqIE9wZW5BSS1jb21wYXRpYmxlIGVtYmVkZGluZ3MgcmVxdWVzdC4gKi9cbmV4cG9ydCB0eXBlIEVtYmVkZGluZ1JlcXVlc3QgPSB6LmluZmVyPHR5cGVvZiBFbWJlZGRpbmdSZXF1ZXN0U2NoZW1hPjtcblxuLyoqIE9uZSBlbWJlZGRpbmcgdmVjdG9yIGluIGFuIE9wZW5BSS1jb21wYXRpYmxlIHJlc3BvbnNlLiAqL1xuZXhwb3J0IGNvbnN0IEVtYmVkZGluZ0RhdGFTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIG9iamVjdDogei5saXRlcmFsKFwiZW1iZWRkaW5nXCIpLFxuICBlbWJlZGRpbmc6IHoudW5pb24oW3ouYXJyYXkoei5udW1iZXIoKSksIHouc3RyaW5nKCldKSxcbiAgaW5kZXg6IHoubnVtYmVyKCkuaW50KCkubm9ubmVnYXRpdmUoKSxcbn0pO1xuLyoqIE9uZSBlbWJlZGRpbmcgdmVjdG9yIGluIGFuIE9wZW5BSS1jb21wYXRpYmxlIHJlc3BvbnNlLiAqL1xuZXhwb3J0IHR5cGUgRW1iZWRkaW5nRGF0YSA9IHouaW5mZXI8dHlwZW9mIEVtYmVkZGluZ0RhdGFTY2hlbWE+O1xuXG4vKiogVG9rZW4gdXNhZ2UgZm9yIGFuIGVtYmVkZGluZ3MgcmVxdWVzdC4gKi9cbmV4cG9ydCBjb25zdCBFbWJlZGRpbmdVc2FnZVNjaGVtYSA9IHoub2JqZWN0KHtcbiAgcHJvbXB0X3Rva2Vuczogei5udW1iZXIoKS5pbnQoKS5ub25uZWdhdGl2ZSgpLFxuICB0b3RhbF90b2tlbnM6IHoubnVtYmVyKCkuaW50KCkubm9ubmVnYXRpdmUoKSxcbn0pO1xuLyoqIFRva2VuIHVzYWdlIGZvciBhbiBlbWJlZGRpbmdzIHJlcXVlc3QuICovXG5leHBvcnQgdHlwZSBFbWJlZGRpbmdVc2FnZSA9IHouaW5mZXI8dHlwZW9mIEVtYmVkZGluZ1VzYWdlU2NoZW1hPjtcblxuLyoqIE9wZW5BSS1jb21wYXRpYmxlIGVtYmVkZGluZ3MgcmVzcG9uc2UuICovXG5leHBvcnQgY29uc3QgRW1iZWRkaW5nUmVzcG9uc2VTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIG9iamVjdDogei5saXRlcmFsKFwibGlzdFwiKSxcbiAgZGF0YTogei5hcnJheShFbWJlZGRpbmdEYXRhU2NoZW1hKSxcbiAgbW9kZWw6IHouc3RyaW5nKCksXG4gIHVzYWdlOiBFbWJlZGRpbmdVc2FnZVNjaGVtYSxcbn0pO1xuLyoqIE9wZW5BSS1jb21wYXRpYmxlIGVtYmVkZGluZ3MgcmVzcG9uc2UuICovXG5leHBvcnQgdHlwZSBFbWJlZGRpbmdSZXNwb25zZSA9IHouaW5mZXI8dHlwZW9mIEVtYmVkZGluZ1Jlc3BvbnNlU2NoZW1hPjtcblxuLyoqIE9wZW5BSS1jb21wYXRpYmxlIGVycm9yIHJlc3BvbnNlLiAqL1xuZXhwb3J0IGNvbnN0IE9wZW5BSUVycm9yUmVzcG9uc2VTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIGVycm9yOiB6Lm9iamVjdCh7XG4gICAgbWVzc2FnZTogei5zdHJpbmcoKSxcbiAgICB0eXBlOiB6LnN0cmluZygpLFxuICAgIGNvZGU6IHoudW5pb24oW3ouc3RyaW5nKCksIHoubnVtYmVyKCksIHoubnVsbCgpXSkub3B0aW9uYWwoKSxcbiAgfSksXG59KTtcbi8qKiBPcGVuQUktY29tcGF0aWJsZSBlcnJvciByZXNwb25zZS4gKi9cbmV4cG9ydCB0eXBlIE9wZW5BSUVycm9yUmVzcG9uc2UgPSB6LmluZmVyPHR5cGVvZiBPcGVuQUlFcnJvclJlc3BvbnNlU2NoZW1hPjtcblxuLyoqIEFudGhyb3BpYy1jb21wYXRpYmxlIGVycm9yIHJlc3BvbnNlLiAqL1xuZXhwb3J0IGNvbnN0IEFudGhyb3BpY0Vycm9yUmVzcG9uc2VTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHR5cGU6IHoubGl0ZXJhbChcImVycm9yXCIpLFxuICBlcnJvcjogei5vYmplY3Qoe1xuICAgIHR5cGU6IHouc3RyaW5nKCksXG4gICAgbWVzc2FnZTogei5zdHJpbmcoKSxcbiAgfSksXG59KTtcbi8qKiBBbnRocm9waWMtY29tcGF0aWJsZSBlcnJvciByZXNwb25zZS4gKi9cbmV4cG9ydCB0eXBlIEFudGhyb3BpY0Vycm9yUmVzcG9uc2UgPSB6LmluZmVyPHR5cGVvZiBBbnRocm9waWNFcnJvclJlc3BvbnNlU2NoZW1hPjtcblxuLyoqIEVycm9yIHJlc3BvbnNlIGVtaXR0ZWQgYnkgYW55IGdhdGV3YXkgY29tcGF0aWJpbGl0eSBzdXJmYWNlLiAqL1xuZXhwb3J0IGNvbnN0IEdhdGV3YXlFcnJvclJlc3BvbnNlU2NoZW1hID0gei51bmlvbihbXG4gIE9wZW5BSUVycm9yUmVzcG9uc2VTY2hlbWEsXG4gIEFudGhyb3BpY0Vycm9yUmVzcG9uc2VTY2hlbWEsXG5dKTtcbi8qKiBFcnJvciByZXNwb25zZSBlbWl0dGVkIGJ5IGFueSBnYXRld2F5IGNvbXBhdGliaWxpdHkgc3VyZmFjZS4gKi9cbmV4cG9ydCB0eXBlIEdhdGV3YXlFcnJvclJlc3BvbnNlID0gei5pbmZlcjx0eXBlb2YgR2F0ZXdheUVycm9yUmVzcG9uc2VTY2hlbWE+O1xuIl19
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsb0VBQW9FO0FBQ3BFLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDcEQsS0FBSyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUU7SUFDbEIsU0FBUyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDO0lBQy9DLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO0lBQ3RCLGNBQWMsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO0lBQzNCLFNBQVMsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO0lBQ3RCLFVBQVUsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO0lBQ3ZCLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUU7SUFDN0IsU0FBUyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUU7SUFDdEIsVUFBVSxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUU7Q0FDeEIsQ0FBQyxDQUFDO0FBSUgsOENBQThDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDeEMsRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3JCLE1BQU0sRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUMxQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsRUFBRTtJQUN2QyxRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDM0IsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3ZCLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQzNCLE1BQU0sRUFBRSxLQUFLLENBQUMsaUJBQWlCO0lBQy9CLFlBQVksRUFBRSw2QkFBNkI7Q0FDNUMsQ0FBQyxDQUFDO0FBSUgsMkNBQTJDO0FBQzNDLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDcEQsTUFBTSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO0lBQ3pCLElBQUksRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDO0NBQ2pDLENBQUMsQ0FBQztBQUlILDRDQUE0QztBQUM1QyxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2hELE1BQU0sRUFBRSxLQUFLLENBQUMscUJBQXFCO0lBQ25DLFdBQVcsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFO0NBQ3hCLENBQUMsQ0FBQztBQUlILHNEQUFzRDtBQUN0RCxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2xELElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2pDLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxFQUFFO0NBQ25DLENBQUMsQ0FBQztBQUlILHFDQUFxQztBQUNyQyxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3ZDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN2QixZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDL0IsV0FBVyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUU7SUFDdkIsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUM3QixNQUFNLEVBQUUsS0FBSyxDQUFDLGlCQUFpQjtJQUMvQiwwQkFBMEIsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLHlCQUF5QixDQUFDO0lBQzlELHVCQUF1QixFQUFFLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUU7SUFDL0QsVUFBVSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzdCLFVBQVUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztJQUM3QixnQkFBZ0IsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO0lBQzdCLFFBQVEsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3JDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDeEMsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDL0IsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRTtJQUM5QixpQkFBaUIsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3hDLHFCQUFxQixFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDNUMsaUJBQWlCLEVBQUUsMkJBQTJCO0lBQzlDLGNBQWMsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3RELDRCQUE0QixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2xELGdCQUFnQixFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3JDLG9CQUFvQixFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUU7SUFDaEMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRTtJQUNqQyw4QkFBOEIsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO0NBQzVDLENBQUMsQ0FBQztBQUlILHdDQUF3QztBQUN4QyxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ25ELE1BQU0sRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDO0NBQ2xDLENBQUMsQ0FBQztBQUlILHNFQUFzRTtBQUN0RSxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQzdDLDZCQUE2QjtJQUM3Qiw0QkFBNEI7Q0FDN0IsQ0FBQyxDQUFDO0FBSUgsNENBQTRDO0FBQzVDLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDN0MsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3hCLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNqRCxlQUFlLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUN2RCxVQUFVLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNsRCxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtDQUM1QixDQUFDLENBQUM7QUFJSCw2REFBNkQ7QUFDN0QsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUMxQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7SUFDOUIsU0FBUyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxFQUFFO0NBQ3RDLENBQUMsQ0FBQztBQUlILDZDQUE2QztBQUM3QyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQzNDLGFBQWEsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxFQUFFO0lBQzdDLFlBQVksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxFQUFFO0NBQzdDLENBQUMsQ0FBQztBQUlILDZDQUE2QztBQUM3QyxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQzlDLE1BQU0sRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztJQUN6QixJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQztJQUNsQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNqQixLQUFLLEVBQUUsb0JBQW9CO0NBQzVCLENBQUMsQ0FBQztBQUlILHdDQUF3QztBQUN4QyxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2hELEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ2QsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUU7UUFDbkIsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUU7UUFDaEIsSUFBSSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0tBQzdELENBQUM7Q0FDSCxDQUFDLENBQUM7QUFJSCwyQ0FBMkM7QUFDM0MsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNuRCxJQUFJLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7SUFDeEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDZCxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtRQUNoQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRTtLQUNwQixDQUFDO0NBQ0gsQ0FBQyxDQUFDO0FBSUgsbUVBQW1FO0FBQ25FLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDaEQseUJBQXlCO0lBQ3pCLDRCQUE0QjtDQUM3QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEJyb3dzZXItc2FmZSBIVFRQIG1vZGVsLCBlbWJlZGRpbmcsIGFuZCBlcnJvciBwYXlsb2Fkcy5cbiAqXG4gKiBAbW9kdWxlXG4gKi9cblxuaW1wb3J0IHsgbW9kZWwgfSBmcm9tIFwiQGRieC10b29scy9zaGFyZWQtbW9kZWxcIjtcbmltcG9ydCB7IHogfSBmcm9tIFwiem9kXCI7XG5cbi8qKiBDYXBhYmlsaXRpZXMgcHVibGlzaGVkIHdpdGggYW4gT3BlbkFJLWNvbXBhdGlibGUgbW9kZWwgZW50cnkuICovXG5leHBvcnQgY29uc3QgT3BlbkFJTW9kZWxDYXBhYmlsaXRpZXNTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHRvb2xzOiB6LmJvb2xlYW4oKSxcbiAgcmVhc29uaW5nOiB6LmFycmF5KG1vZGVsLlJlYXNvbmluZ0VmZm9ydFNjaGVtYSksXG4gIHJlc3BvbnNlczogei5ib29sZWFuKCksXG4gIG9wZW5fcmVzcG9uc2VzOiB6LmJvb2xlYW4oKSxcbiAgYW50aHJvcGljOiB6LmJvb2xlYW4oKSxcbiAgZW1iZWRkaW5nczogei5ib29sZWFuKCksXG4gIGFpX2dhdGV3YXlfY29kZXg6IHouYm9vbGVhbigpLFxuICBzdHJlYW1pbmc6IHouYm9vbGVhbigpLFxuICB3ZWJfc2VhcmNoOiB6LmJvb2xlYW4oKSxcbn0pO1xuLyoqIENhcGFiaWxpdGllcyBwdWJsaXNoZWQgd2l0aCBhbiBPcGVuQUktY29tcGF0aWJsZSBtb2RlbCBlbnRyeS4gKi9cbmV4cG9ydCB0eXBlIE9wZW5BSU1vZGVsQ2FwYWJpbGl0aWVzID0gei5pbmZlcjx0eXBlb2YgT3BlbkFJTW9kZWxDYXBhYmlsaXRpZXNTY2hlbWE+O1xuXG4vKiogT25lIE9wZW5BSS1jb21wYXRpYmxlIG1vZGVsLWxpc3QgZW50cnkuICovXG5leHBvcnQgY29uc3QgT3BlbkFJTW9kZWxTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIGlkOiB6LnN0cmluZygpLm1pbigxKSxcbiAgb2JqZWN0OiB6LmxpdGVyYWwoXCJtb2RlbFwiKSxcbiAgY3JlYXRlZDogei5udW1iZXIoKS5pbnQoKS5ub25uZWdhdGl2ZSgpLFxuICBvd25lZF9ieTogei5zdHJpbmcoKS5taW4oMSksXG4gIG5hbWU6IHouc3RyaW5nKCkubWluKDEpLFxuICB0YXNrOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG4gIHN0YXR1czogbW9kZWwuTW9kZWxTdGF0dXNTY2hlbWEsXG4gIGNhcGFiaWxpdGllczogT3BlbkFJTW9kZWxDYXBhYmlsaXRpZXNTY2hlbWEsXG59KTtcbi8qKiBPbmUgT3BlbkFJLWNvbXBhdGlibGUgbW9kZWwtbGlzdCBlbnRyeS4gKi9cbmV4cG9ydCB0eXBlIE9wZW5BSU1vZGVsID0gei5pbmZlcjx0eXBlb2YgT3BlbkFJTW9kZWxTY2hlbWE+O1xuXG4vKiogU3RhbmRhcmQgT3BlbkFJIG1vZGVsLWxpc3QgcmVzcG9uc2UuICovXG5leHBvcnQgY29uc3QgT3BlbkFJTW9kZWxMaXN0UmVzcG9uc2VTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIG9iamVjdDogei5saXRlcmFsKFwibGlzdFwiKSxcbiAgZGF0YTogei5hcnJheShPcGVuQUlNb2RlbFNjaGVtYSksXG59KTtcbi8qKiBTdGFuZGFyZCBPcGVuQUkgbW9kZWwtbGlzdCByZXNwb25zZS4gKi9cbmV4cG9ydCB0eXBlIE9wZW5BSU1vZGVsTGlzdFJlc3BvbnNlID0gei5pbmZlcjx0eXBlb2YgT3BlbkFJTW9kZWxMaXN0UmVzcG9uc2VTY2hlbWE+O1xuXG4vKiogUmVhc29uaW5nIGVmZm9ydCBhZHZlcnRpc2VkIHRvIENvZGV4LiAqL1xuZXhwb3J0IGNvbnN0IENvZGV4UmVhc29uaW5nTGV2ZWxTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIGVmZm9ydDogbW9kZWwuUmVhc29uaW5nRWZmb3J0U2NoZW1hLFxuICBkZXNjcmlwdGlvbjogei5zdHJpbmcoKSxcbn0pO1xuLyoqIFJlYXNvbmluZyBlZmZvcnQgYWR2ZXJ0aXNlZCB0byBDb2RleC4gKi9cbmV4cG9ydCB0eXBlIENvZGV4UmVhc29uaW5nTGV2ZWwgPSB6LmluZmVyPHR5cGVvZiBDb2RleFJlYXNvbmluZ0xldmVsU2NoZW1hPjtcblxuLyoqIENvZGV4IGNsaWVudC1zaWRlIHRyYW5zY3JpcHQgdHJ1bmNhdGlvbiBwb2xpY3kuICovXG5leHBvcnQgY29uc3QgQ29kZXhUcnVuY2F0aW9uUG9saWN5U2NoZW1hID0gei5vYmplY3Qoe1xuICBtb2RlOiB6LmVudW0oW1widG9rZW5zXCIsIFwiYnl0ZXNcIl0pLFxuICBsaW1pdDogei5udW1iZXIoKS5pbnQoKS5wb3NpdGl2ZSgpLFxufSk7XG4vKiogQ29kZXggY2xpZW50LXNpZGUgdHJhbnNjcmlwdCB0cnVuY2F0aW9uIHBvbGljeS4gKi9cbmV4cG9ydCB0eXBlIENvZGV4VHJ1bmNhdGlvblBvbGljeSA9IHouaW5mZXI8dHlwZW9mIENvZGV4VHJ1bmNhdGlvblBvbGljeVNjaGVtYT47XG5cbi8qKiBPbmUgQ29kZXggbW9kZWwtY2F0YWxvZyBlbnRyeS4gKi9cbmV4cG9ydCBjb25zdCBDb2RleE1vZGVsU2NoZW1hID0gei5vYmplY3Qoe1xuICBzbHVnOiB6LnN0cmluZygpLm1pbigxKSxcbiAgZGlzcGxheV9uYW1lOiB6LnN0cmluZygpLm1pbigxKSxcbiAgZGVzY3JpcHRpb246IHouc3RyaW5nKCksXG4gIGJhc2VfaW5zdHJ1Y3Rpb25zOiB6LnN0cmluZygpLFxuICBzdGF0dXM6IG1vZGVsLk1vZGVsU3RhdHVzU2NoZW1hLFxuICBzdXBwb3J0ZWRfcmVhc29uaW5nX2xldmVsczogei5hcnJheShDb2RleFJlYXNvbmluZ0xldmVsU2NoZW1hKSxcbiAgZGVmYXVsdF9yZWFzb25pbmdfbGV2ZWw6IG1vZGVsLlJlYXNvbmluZ0VmZm9ydFNjaGVtYS5vcHRpb25hbCgpLFxuICBzaGVsbF90eXBlOiB6LnN0cmluZygpLm1pbigxKSxcbiAgdmlzaWJpbGl0eTogei5saXRlcmFsKFwibGlzdFwiKSxcbiAgc3VwcG9ydGVkX2luX2FwaTogei5ib29sZWFuKCksXG4gIHByaW9yaXR5OiB6Lm51bWJlcigpLmludCgpLnBvc2l0aXZlKCksXG4gIGF2YWlsYWJpbGl0eV9udXg6IHoudW5rbm93bigpLm51bGxhYmxlKCksXG4gIHVwZ3JhZGU6IHoudW5rbm93bigpLm51bGxhYmxlKCksXG4gIHN1cHBvcnRfdmVyYm9zaXR5OiB6LmJvb2xlYW4oKSxcbiAgZGVmYXVsdF92ZXJib3NpdHk6IHouc3RyaW5nKCkubnVsbGFibGUoKSxcbiAgYXBwbHlfcGF0Y2hfdG9vbF90eXBlOiB6LnN0cmluZygpLm51bGxhYmxlKCksXG4gIHRydW5jYXRpb25fcG9saWN5OiBDb2RleFRydW5jYXRpb25Qb2xpY3lTY2hlbWEsXG4gIGNvbnRleHRfd2luZG93OiB6Lm51bWJlcigpLmludCgpLnBvc2l0aXZlKCkubnVsbGFibGUoKSxcbiAgZXhwZXJpbWVudGFsX3N1cHBvcnRlZF90b29sczogei5hcnJheSh6LnVua25vd24oKSksXG4gIGlucHV0X21vZGFsaXRpZXM6IHouYXJyYXkoei5zdHJpbmcoKSksXG4gIHdlYl9zZWFyY2hfdG9vbF90eXBlOiB6LnN0cmluZygpLFxuICBzdXBwb3J0c19zZWFyY2hfdG9vbDogei5ib29sZWFuKCksXG4gIHN1cHBvcnRzX2ltYWdlX2RldGFpbF9vcmlnaW5hbDogei5ib29sZWFuKCksXG59KTtcbi8qKiBPbmUgQ29kZXggbW9kZWwtY2F0YWxvZyBlbnRyeS4gKi9cbmV4cG9ydCB0eXBlIENvZGV4TW9kZWwgPSB6LmluZmVyPHR5cGVvZiBDb2RleE1vZGVsU2NoZW1hPjtcblxuLyoqIENvZGV4LW5hdGl2ZSBtb2RlbC1saXN0IHJlc3BvbnNlLiAqL1xuZXhwb3J0IGNvbnN0IENvZGV4TW9kZWxMaXN0UmVzcG9uc2VTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIG1vZGVsczogei5hcnJheShDb2RleE1vZGVsU2NoZW1hKSxcbn0pO1xuLyoqIENvZGV4LW5hdGl2ZSBtb2RlbC1saXN0IHJlc3BvbnNlLiAqL1xuZXhwb3J0IHR5cGUgQ29kZXhNb2RlbExpc3RSZXNwb25zZSA9IHouaW5mZXI8dHlwZW9mIENvZGV4TW9kZWxMaXN0UmVzcG9uc2VTY2hlbWE+O1xuXG4vKiogTW9kZWwtbGlzdCByZXNwb25zZSBzZWxlY3RlZCBieSB0aGUgY2FsbGVyJ3MgT3JpZ2luYXRvciBoZWFkZXIuICovXG5leHBvcnQgY29uc3QgTW9kZWxMaXN0UmVzcG9uc2VTY2hlbWEgPSB6LnVuaW9uKFtcbiAgT3BlbkFJTW9kZWxMaXN0UmVzcG9uc2VTY2hlbWEsXG4gIENvZGV4TW9kZWxMaXN0UmVzcG9uc2VTY2hlbWEsXG5dKTtcbi8qKiBNb2RlbC1saXN0IHJlc3BvbnNlIHNlbGVjdGVkIGJ5IHRoZSBjYWxsZXIncyBPcmlnaW5hdG9yIGhlYWRlci4gKi9cbmV4cG9ydCB0eXBlIE1vZGVsTGlzdFJlc3BvbnNlID0gei5pbmZlcjx0eXBlb2YgTW9kZWxMaXN0UmVzcG9uc2VTY2hlbWE+O1xuXG4vKiogT3BlbkFJLWNvbXBhdGlibGUgZW1iZWRkaW5ncyByZXF1ZXN0LiAqL1xuZXhwb3J0IGNvbnN0IEVtYmVkZGluZ1JlcXVlc3RTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIG1vZGVsOiB6LnN0cmluZygpLm1pbigxKSxcbiAgaW5wdXQ6IHoudW5pb24oW3ouc3RyaW5nKCksIHouYXJyYXkoei5zdHJpbmcoKSldKSxcbiAgZW5jb2RpbmdfZm9ybWF0OiB6LmVudW0oW1wiZmxvYXRcIiwgXCJiYXNlNjRcIl0pLm9wdGlvbmFsKCksXG4gIGRpbWVuc2lvbnM6IHoubnVtYmVyKCkuaW50KCkucG9zaXRpdmUoKS5vcHRpb25hbCgpLFxuICB1c2VyOiB6LnN0cmluZygpLm9wdGlvbmFsKCksXG59KTtcbi8qKiBPcGVuQUktY29tcGF0aWJsZSBlbWJlZGRpbmdzIHJlcXVlc3QuICovXG5leHBvcnQgdHlwZSBFbWJlZGRpbmdSZXF1ZXN0ID0gei5pbmZlcjx0eXBlb2YgRW1iZWRkaW5nUmVxdWVzdFNjaGVtYT47XG5cbi8qKiBPbmUgZW1iZWRkaW5nIHZlY3RvciBpbiBhbiBPcGVuQUktY29tcGF0aWJsZSByZXNwb25zZS4gKi9cbmV4cG9ydCBjb25zdCBFbWJlZGRpbmdEYXRhU2NoZW1hID0gei5vYmplY3Qoe1xuICBvYmplY3Q6IHoubGl0ZXJhbChcImVtYmVkZGluZ1wiKSxcbiAgZW1iZWRkaW5nOiB6LnVuaW9uKFt6LmFycmF5KHoubnVtYmVyKCkpLCB6LnN0cmluZygpXSksXG4gIGluZGV4OiB6Lm51bWJlcigpLmludCgpLm5vbm5lZ2F0aXZlKCksXG59KTtcbi8qKiBPbmUgZW1iZWRkaW5nIHZlY3RvciBpbiBhbiBPcGVuQUktY29tcGF0aWJsZSByZXNwb25zZS4gKi9cbmV4cG9ydCB0eXBlIEVtYmVkZGluZ0RhdGEgPSB6LmluZmVyPHR5cGVvZiBFbWJlZGRpbmdEYXRhU2NoZW1hPjtcblxuLyoqIFRva2VuIHVzYWdlIGZvciBhbiBlbWJlZGRpbmdzIHJlcXVlc3QuICovXG5leHBvcnQgY29uc3QgRW1iZWRkaW5nVXNhZ2VTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIHByb21wdF90b2tlbnM6IHoubnVtYmVyKCkuaW50KCkubm9ubmVnYXRpdmUoKSxcbiAgdG90YWxfdG9rZW5zOiB6Lm51bWJlcigpLmludCgpLm5vbm5lZ2F0aXZlKCksXG59KTtcbi8qKiBUb2tlbiB1c2FnZSBmb3IgYW4gZW1iZWRkaW5ncyByZXF1ZXN0LiAqL1xuZXhwb3J0IHR5cGUgRW1iZWRkaW5nVXNhZ2UgPSB6LmluZmVyPHR5cGVvZiBFbWJlZGRpbmdVc2FnZVNjaGVtYT47XG5cbi8qKiBPcGVuQUktY29tcGF0aWJsZSBlbWJlZGRpbmdzIHJlc3BvbnNlLiAqL1xuZXhwb3J0IGNvbnN0IEVtYmVkZGluZ1Jlc3BvbnNlU2NoZW1hID0gei5vYmplY3Qoe1xuICBvYmplY3Q6IHoubGl0ZXJhbChcImxpc3RcIiksXG4gIGRhdGE6IHouYXJyYXkoRW1iZWRkaW5nRGF0YVNjaGVtYSksXG4gIG1vZGVsOiB6LnN0cmluZygpLFxuICB1c2FnZTogRW1iZWRkaW5nVXNhZ2VTY2hlbWEsXG59KTtcbi8qKiBPcGVuQUktY29tcGF0aWJsZSBlbWJlZGRpbmdzIHJlc3BvbnNlLiAqL1xuZXhwb3J0IHR5cGUgRW1iZWRkaW5nUmVzcG9uc2UgPSB6LmluZmVyPHR5cGVvZiBFbWJlZGRpbmdSZXNwb25zZVNjaGVtYT47XG5cbi8qKiBPcGVuQUktY29tcGF0aWJsZSBlcnJvciByZXNwb25zZS4gKi9cbmV4cG9ydCBjb25zdCBPcGVuQUlFcnJvclJlc3BvbnNlU2NoZW1hID0gei5vYmplY3Qoe1xuICBlcnJvcjogei5vYmplY3Qoe1xuICAgIG1lc3NhZ2U6IHouc3RyaW5nKCksXG4gICAgdHlwZTogei5zdHJpbmcoKSxcbiAgICBjb2RlOiB6LnVuaW9uKFt6LnN0cmluZygpLCB6Lm51bWJlcigpLCB6Lm51bGwoKV0pLm9wdGlvbmFsKCksXG4gIH0pLFxufSk7XG4vKiogT3BlbkFJLWNvbXBhdGlibGUgZXJyb3IgcmVzcG9uc2UuICovXG5leHBvcnQgdHlwZSBPcGVuQUlFcnJvclJlc3BvbnNlID0gei5pbmZlcjx0eXBlb2YgT3BlbkFJRXJyb3JSZXNwb25zZVNjaGVtYT47XG5cbi8qKiBBbnRocm9waWMtY29tcGF0aWJsZSBlcnJvciByZXNwb25zZS4gKi9cbmV4cG9ydCBjb25zdCBBbnRocm9waWNFcnJvclJlc3BvbnNlU2NoZW1hID0gei5vYmplY3Qoe1xuICB0eXBlOiB6LmxpdGVyYWwoXCJlcnJvclwiKSxcbiAgZXJyb3I6IHoub2JqZWN0KHtcbiAgICB0eXBlOiB6LnN0cmluZygpLFxuICAgIG1lc3NhZ2U6IHouc3RyaW5nKCksXG4gIH0pLFxufSk7XG4vKiogQW50aHJvcGljLWNvbXBhdGlibGUgZXJyb3IgcmVzcG9uc2UuICovXG5leHBvcnQgdHlwZSBBbnRocm9waWNFcnJvclJlc3BvbnNlID0gei5pbmZlcjx0eXBlb2YgQW50aHJvcGljRXJyb3JSZXNwb25zZVNjaGVtYT47XG5cbi8qKiBFcnJvciByZXNwb25zZSBlbWl0dGVkIGJ5IGFueSBnYXRld2F5IGNvbXBhdGliaWxpdHkgc3VyZmFjZS4gKi9cbmV4cG9ydCBjb25zdCBHYXRld2F5RXJyb3JSZXNwb25zZVNjaGVtYSA9IHoudW5pb24oW1xuICBPcGVuQUlFcnJvclJlc3BvbnNlU2NoZW1hLFxuICBBbnRocm9waWNFcnJvclJlc3BvbnNlU2NoZW1hLFxuXSk7XG4vKiogRXJyb3IgcmVzcG9uc2UgZW1pdHRlZCBieSBhbnkgZ2F0ZXdheSBjb21wYXRpYmlsaXR5IHN1cmZhY2UuICovXG5leHBvcnQgdHlwZSBHYXRld2F5RXJyb3JSZXNwb25zZSA9IHouaW5mZXI8dHlwZW9mIEdhdGV3YXlFcnJvclJlc3BvbnNlU2NoZW1hPjtcbiJdfQ==
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-safe model-gateway runtime and CLI configuration.
|
|
3
|
+
*
|
|
4
|
+
* Field names and descriptions are the single source for derived Commander
|
|
5
|
+
* flags, environment names, generated help, JavaScript callers, and services.
|
|
6
|
+
*
|
|
7
|
+
* @module
|
|
8
|
+
*/
|
|
9
|
+
import { z } from "zod";
|
|
10
|
+
export declare const ModelGatewayOptionsSchema: z.ZodObject<{
|
|
11
|
+
listen: z.ZodDefault<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
|
|
12
|
+
host: z.ZodDefault<z.ZodString>;
|
|
13
|
+
port: z.ZodDefault<z.ZodCoercedNumber<number>>;
|
|
14
|
+
}, z.core.$strict>>>;
|
|
15
|
+
profile: z.ZodOptional<z.ZodString>;
|
|
16
|
+
bodyLimit: z.ZodDefault<z.ZodString>;
|
|
17
|
+
}, z.core.$strict>;
|
|
18
|
+
export declare const ModelGatewayCliOptionsSchema: z.ZodObject<{
|
|
19
|
+
listen: z.ZodDefault<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
|
|
20
|
+
host: z.ZodDefault<z.ZodString>;
|
|
21
|
+
port: z.ZodDefault<z.ZodCoercedNumber<number>>;
|
|
22
|
+
}, z.core.$strict>>>;
|
|
23
|
+
profile: z.ZodOptional<z.ZodString>;
|
|
24
|
+
bodyLimit: z.ZodDefault<z.ZodString>;
|
|
25
|
+
runtimeInfo: z.ZodDefault<z.ZodBoolean>;
|
|
26
|
+
}, z.core.$strict>;
|
|
27
|
+
export type ModelGatewayOptions = z.input<typeof ModelGatewayOptionsSchema>;
|
|
28
|
+
export type ResolvedModelGatewayOptions = z.output<typeof ModelGatewayOptionsSchema>;
|
|
29
|
+
export type ModelGatewayCliOptions = z.output<typeof ModelGatewayCliOptionsSchema>;
|
|
30
|
+
/** Defaults parsed from the owning runtime schema. */
|
|
31
|
+
export declare const MODEL_GATEWAY_DEFAULTS: Readonly<{
|
|
32
|
+
listen: {
|
|
33
|
+
host: string;
|
|
34
|
+
port: number;
|
|
35
|
+
};
|
|
36
|
+
bodyLimit: string;
|
|
37
|
+
profile?: string | undefined;
|
|
38
|
+
}>;
|
|
39
|
+
/** Validate and default model-gateway server options. */
|
|
40
|
+
export declare function resolveModelGatewayOptions(options?: ModelGatewayOptions): ResolvedModelGatewayOptions;
|
|
41
|
+
/** Validate and default model-gateway command-line options. */
|
|
42
|
+
export declare function resolveModelGatewayCliOptions(options: unknown): ModelGatewayCliOptions;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-safe model-gateway runtime and CLI configuration.
|
|
3
|
+
*
|
|
4
|
+
* Field names and descriptions are the single source for derived Commander
|
|
5
|
+
* flags, environment names, generated help, JavaScript callers, and services.
|
|
6
|
+
*
|
|
7
|
+
* @module
|
|
8
|
+
*/
|
|
9
|
+
import { options } from "@dbx-tools/shared-core";
|
|
10
|
+
import { z } from "zod";
|
|
11
|
+
export const ModelGatewayOptionsSchema = z
|
|
12
|
+
.object({
|
|
13
|
+
listen: options
|
|
14
|
+
.listenAddressSchema({ port: 4000, loopback: true })
|
|
15
|
+
.describe("Loopback listener address."),
|
|
16
|
+
profile: options.DatabricksOptionsSchema.shape.profile.describe("Databricks profile used for model discovery and requests."),
|
|
17
|
+
bodyLimit: z
|
|
18
|
+
.string()
|
|
19
|
+
.trim()
|
|
20
|
+
.min(1)
|
|
21
|
+
.default("100mb")
|
|
22
|
+
.describe("Maximum JSON request body size."),
|
|
23
|
+
})
|
|
24
|
+
.strict()
|
|
25
|
+
.describe("Model-gateway server configuration.");
|
|
26
|
+
export const ModelGatewayCliOptionsSchema = ModelGatewayOptionsSchema.extend({
|
|
27
|
+
runtimeInfo: z.boolean().default(false).describe("Print runtime implementation metadata."),
|
|
28
|
+
})
|
|
29
|
+
.refine((options) => options.listen.port > 0, {
|
|
30
|
+
message: "Port must be an integer from 1 through 65535.",
|
|
31
|
+
path: ["listen"],
|
|
32
|
+
})
|
|
33
|
+
.describe("Model-gateway command-line configuration.");
|
|
34
|
+
/** Defaults parsed from the owning runtime schema. */
|
|
35
|
+
export const MODEL_GATEWAY_DEFAULTS = Object.freeze(ModelGatewayOptionsSchema.parse({}));
|
|
36
|
+
/** Validate and default model-gateway server options. */
|
|
37
|
+
export function resolveModelGatewayOptions(options = {}) {
|
|
38
|
+
return ModelGatewayOptionsSchema.parse(options);
|
|
39
|
+
}
|
|
40
|
+
/** Validate and default model-gateway command-line options. */
|
|
41
|
+
export function resolveModelGatewayCliOptions(options) {
|
|
42
|
+
return ModelGatewayCliOptionsSchema.parse(options);
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFFSCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxDQUFDO0tBQ3ZDLE1BQU0sQ0FBQztJQUNOLE1BQU0sRUFBRSxPQUFPO1NBQ1osbUJBQW1CLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUNuRCxRQUFRLENBQUMsNEJBQTRCLENBQUM7SUFDekMsT0FBTyxFQUFFLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FDN0QsMkRBQTJELENBQzVEO0lBQ0QsU0FBUyxFQUFFLENBQUM7U0FDVCxNQUFNLEVBQUU7U0FDUixJQUFJLEVBQUU7U0FDTixHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ04sT0FBTyxDQUFDLE9BQU8sQ0FBQztTQUNoQixRQUFRLENBQUMsaUNBQWlDLENBQUM7Q0FDL0MsQ0FBQztLQUNELE1BQU0sRUFBRTtLQUNSLFFBQVEsQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0FBRW5ELE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLHlCQUF5QixDQUFDLE1BQU0sQ0FBQztJQUMzRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsd0NBQXdDLENBQUM7Q0FDM0YsQ0FBQztLQUNDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFO0lBQzVDLE9BQU8sRUFBRSwrQ0FBK0M7SUFDeEQsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDO0NBQ2pCLENBQUM7S0FDRCxRQUFRLENBQUMsMkNBQTJDLENBQUMsQ0FBQztBQVF6RCxzREFBc0Q7QUFDdEQsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUV6Rix5REFBeUQ7QUFDekQsTUFBTSxVQUFVLDBCQUEwQixDQUN4QyxVQUErQixFQUFFO0lBRWpDLE9BQU8seUJBQXlCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ2xELENBQUM7QUFFRCwrREFBK0Q7QUFDL0QsTUFBTSxVQUFVLDZCQUE2QixDQUFDLE9BQWdCO0lBQzVELE9BQU8sNEJBQTRCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3JELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEJyb3dzZXItc2FmZSBtb2RlbC1nYXRld2F5IHJ1bnRpbWUgYW5kIENMSSBjb25maWd1cmF0aW9uLlxuICpcbiAqIEZpZWxkIG5hbWVzIGFuZCBkZXNjcmlwdGlvbnMgYXJlIHRoZSBzaW5nbGUgc291cmNlIGZvciBkZXJpdmVkIENvbW1hbmRlclxuICogZmxhZ3MsIGVudmlyb25tZW50IG5hbWVzLCBnZW5lcmF0ZWQgaGVscCwgSmF2YVNjcmlwdCBjYWxsZXJzLCBhbmQgc2VydmljZXMuXG4gKlxuICogQG1vZHVsZVxuICovXG5cbmltcG9ydCB7IG9wdGlvbnMgfSBmcm9tIFwiQGRieC10b29scy9zaGFyZWQtY29yZVwiO1xuaW1wb3J0IHsgeiB9IGZyb20gXCJ6b2RcIjtcblxuZXhwb3J0IGNvbnN0IE1vZGVsR2F0ZXdheU9wdGlvbnNTY2hlbWEgPSB6XG4gIC5vYmplY3Qoe1xuICAgIGxpc3Rlbjogb3B0aW9uc1xuICAgICAgLmxpc3RlbkFkZHJlc3NTY2hlbWEoeyBwb3J0OiA0MDAwLCBsb29wYmFjazogdHJ1ZSB9KVxuICAgICAgLmRlc2NyaWJlKFwiTG9vcGJhY2sgbGlzdGVuZXIgYWRkcmVzcy5cIiksXG4gICAgcHJvZmlsZTogb3B0aW9ucy5EYXRhYnJpY2tzT3B0aW9uc1NjaGVtYS5zaGFwZS5wcm9maWxlLmRlc2NyaWJlKFxuICAgICAgXCJEYXRhYnJpY2tzIHByb2ZpbGUgdXNlZCBmb3IgbW9kZWwgZGlzY292ZXJ5IGFuZCByZXF1ZXN0cy5cIixcbiAgICApLFxuICAgIGJvZHlMaW1pdDogelxuICAgICAgLnN0cmluZygpXG4gICAgICAudHJpbSgpXG4gICAgICAubWluKDEpXG4gICAgICAuZGVmYXVsdChcIjEwMG1iXCIpXG4gICAgICAuZGVzY3JpYmUoXCJNYXhpbXVtIEpTT04gcmVxdWVzdCBib2R5IHNpemUuXCIpLFxuICB9KVxuICAuc3RyaWN0KClcbiAgLmRlc2NyaWJlKFwiTW9kZWwtZ2F0ZXdheSBzZXJ2ZXIgY29uZmlndXJhdGlvbi5cIik7XG5cbmV4cG9ydCBjb25zdCBNb2RlbEdhdGV3YXlDbGlPcHRpb25zU2NoZW1hID0gTW9kZWxHYXRld2F5T3B0aW9uc1NjaGVtYS5leHRlbmQoe1xuICBydW50aW1lSW5mbzogei5ib29sZWFuKCkuZGVmYXVsdChmYWxzZSkuZGVzY3JpYmUoXCJQcmludCBydW50aW1lIGltcGxlbWVudGF0aW9uIG1ldGFkYXRhLlwiKSxcbn0pXG4gIC5yZWZpbmUoKG9wdGlvbnMpID0+IG9wdGlvbnMubGlzdGVuLnBvcnQgPiAwLCB7XG4gICAgbWVzc2FnZTogXCJQb3J0IG11c3QgYmUgYW4gaW50ZWdlciBmcm9tIDEgdGhyb3VnaCA2NTUzNS5cIixcbiAgICBwYXRoOiBbXCJsaXN0ZW5cIl0sXG4gIH0pXG4gIC5kZXNjcmliZShcIk1vZGVsLWdhdGV3YXkgY29tbWFuZC1saW5lIGNvbmZpZ3VyYXRpb24uXCIpO1xuXG5leHBvcnQgdHlwZSBNb2RlbEdhdGV3YXlPcHRpb25zID0gei5pbnB1dDx0eXBlb2YgTW9kZWxHYXRld2F5T3B0aW9uc1NjaGVtYT47XG5cbmV4cG9ydCB0eXBlIFJlc29sdmVkTW9kZWxHYXRld2F5T3B0aW9ucyA9IHoub3V0cHV0PHR5cGVvZiBNb2RlbEdhdGV3YXlPcHRpb25zU2NoZW1hPjtcblxuZXhwb3J0IHR5cGUgTW9kZWxHYXRld2F5Q2xpT3B0aW9ucyA9IHoub3V0cHV0PHR5cGVvZiBNb2RlbEdhdGV3YXlDbGlPcHRpb25zU2NoZW1hPjtcblxuLyoqIERlZmF1bHRzIHBhcnNlZCBmcm9tIHRoZSBvd25pbmcgcnVudGltZSBzY2hlbWEuICovXG5leHBvcnQgY29uc3QgTU9ERUxfR0FURVdBWV9ERUZBVUxUUyA9IE9iamVjdC5mcmVlemUoTW9kZWxHYXRld2F5T3B0aW9uc1NjaGVtYS5wYXJzZSh7fSkpO1xuXG4vKiogVmFsaWRhdGUgYW5kIGRlZmF1bHQgbW9kZWwtZ2F0ZXdheSBzZXJ2ZXIgb3B0aW9ucy4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlTW9kZWxHYXRld2F5T3B0aW9ucyhcbiAgb3B0aW9uczogTW9kZWxHYXRld2F5T3B0aW9ucyA9IHt9LFxuKTogUmVzb2x2ZWRNb2RlbEdhdGV3YXlPcHRpb25zIHtcbiAgcmV0dXJuIE1vZGVsR2F0ZXdheU9wdGlvbnNTY2hlbWEucGFyc2Uob3B0aW9ucyk7XG59XG5cbi8qKiBWYWxpZGF0ZSBhbmQgZGVmYXVsdCBtb2RlbC1nYXRld2F5IGNvbW1hbmQtbGluZSBvcHRpb25zLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVNb2RlbEdhdGV3YXlDbGlPcHRpb25zKG9wdGlvbnM6IHVua25vd24pOiBNb2RlbEdhdGV3YXlDbGlPcHRpb25zIHtcbiAgcmV0dXJuIE1vZGVsR2F0ZXdheUNsaU9wdGlvbnNTY2hlbWEucGFyc2Uob3B0aW9ucyk7XG59XG4iXX0=
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-safe Databricks upstream URLs for deterministic gateway routes.
|
|
3
|
+
*
|
|
4
|
+
* This module owns direct-route URL construction for browser, edge, and Node
|
|
5
|
+
* consumers. Reuse {@link upstreamUrl} instead of duplicating Databricks model
|
|
6
|
+
* serving paths in transports or user interfaces.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
import type { GatewayRoute } from "./contracts.ts";
|
|
11
|
+
/** Resolve the exact upstream URL for a deterministic direct route. */
|
|
12
|
+
export declare function upstreamUrl(host: string, route: GatewayRoute): string;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-safe Databricks upstream URLs for deterministic gateway routes.
|
|
3
|
+
*
|
|
4
|
+
* This module owns direct-route URL construction for browser, edge, and Node
|
|
5
|
+
* consumers. Reuse {@link upstreamUrl} instead of duplicating Databricks model
|
|
6
|
+
* serving paths in transports or user interfaces.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
/** Resolve the exact upstream URL for a deterministic direct route. */
|
|
11
|
+
export function upstreamUrl(host, route) {
|
|
12
|
+
switch (route.upstreamProtocol) {
|
|
13
|
+
case "databricks-ai-gateway-codex":
|
|
14
|
+
return url(host, "/ai-gateway/codex/v1/responses");
|
|
15
|
+
case "databricks-responses":
|
|
16
|
+
return url(host, "/serving-endpoints/responses");
|
|
17
|
+
case "databricks-open-responses":
|
|
18
|
+
return url(host, "/serving-endpoints/open-responses");
|
|
19
|
+
case "databricks-chat":
|
|
20
|
+
return url(host, "/serving-endpoints/chat/completions");
|
|
21
|
+
case "databricks-anthropic":
|
|
22
|
+
return url(host, "/serving-endpoints/anthropic/v1/messages");
|
|
23
|
+
case "databricks-embeddings":
|
|
24
|
+
return url(host, `/serving-endpoints/${encodeURIComponent(route.upstreamModel)}/invocations`);
|
|
25
|
+
case "ai-sdk":
|
|
26
|
+
throw new Error("AI SDK routes do not use the direct Databricks transport");
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
function url(host, path) {
|
|
30
|
+
return new URL(path, `${host.replace(/\/$/, "")}/`).toString();
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBzdHJlYW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXBzdHJlYW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7O0dBUUc7QUFJSCx1RUFBdUU7QUFDdkUsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUFZLEVBQUUsS0FBbUI7SUFDM0QsUUFBUSxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUMvQixLQUFLLDZCQUE2QjtZQUNoQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsZ0NBQWdDLENBQUMsQ0FBQztRQUNyRCxLQUFLLHNCQUFzQjtZQUN6QixPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsOEJBQThCLENBQUMsQ0FBQztRQUNuRCxLQUFLLDJCQUEyQjtZQUM5QixPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsbUNBQW1DLENBQUMsQ0FBQztRQUN4RCxLQUFLLGlCQUFpQjtZQUNwQixPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUscUNBQXFDLENBQUMsQ0FBQztRQUMxRCxLQUFLLHNCQUFzQjtZQUN6QixPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsMENBQTBDLENBQUMsQ0FBQztRQUMvRCxLQUFLLHVCQUF1QjtZQUMxQixPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsc0JBQXNCLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDaEcsS0FBSyxRQUFRO1lBQ1gsTUFBTSxJQUFJLEtBQUssQ0FBQywwREFBMEQsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7QUFDSCxDQUFDO0FBRUQsU0FBUyxHQUFHLENBQUMsSUFBWSxFQUFFLElBQVk7SUFDckMsT0FBTyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7QUFDakUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQnJvd3Nlci1zYWZlIERhdGFicmlja3MgdXBzdHJlYW0gVVJMcyBmb3IgZGV0ZXJtaW5pc3RpYyBnYXRld2F5IHJvdXRlcy5cbiAqXG4gKiBUaGlzIG1vZHVsZSBvd25zIGRpcmVjdC1yb3V0ZSBVUkwgY29uc3RydWN0aW9uIGZvciBicm93c2VyLCBlZGdlLCBhbmQgTm9kZVxuICogY29uc3VtZXJzLiBSZXVzZSB7QGxpbmsgdXBzdHJlYW1Vcmx9IGluc3RlYWQgb2YgZHVwbGljYXRpbmcgRGF0YWJyaWNrcyBtb2RlbFxuICogc2VydmluZyBwYXRocyBpbiB0cmFuc3BvcnRzIG9yIHVzZXIgaW50ZXJmYWNlcy5cbiAqXG4gKiBAbW9kdWxlXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBHYXRld2F5Um91dGUgfSBmcm9tIFwiLi9jb250cmFjdHMudHNcIjtcblxuLyoqIFJlc29sdmUgdGhlIGV4YWN0IHVwc3RyZWFtIFVSTCBmb3IgYSBkZXRlcm1pbmlzdGljIGRpcmVjdCByb3V0ZS4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1cHN0cmVhbVVybChob3N0OiBzdHJpbmcsIHJvdXRlOiBHYXRld2F5Um91dGUpOiBzdHJpbmcge1xuICBzd2l0Y2ggKHJvdXRlLnVwc3RyZWFtUHJvdG9jb2wpIHtcbiAgICBjYXNlIFwiZGF0YWJyaWNrcy1haS1nYXRld2F5LWNvZGV4XCI6XG4gICAgICByZXR1cm4gdXJsKGhvc3QsIFwiL2FpLWdhdGV3YXkvY29kZXgvdjEvcmVzcG9uc2VzXCIpO1xuICAgIGNhc2UgXCJkYXRhYnJpY2tzLXJlc3BvbnNlc1wiOlxuICAgICAgcmV0dXJuIHVybChob3N0LCBcIi9zZXJ2aW5nLWVuZHBvaW50cy9yZXNwb25zZXNcIik7XG4gICAgY2FzZSBcImRhdGFicmlja3Mtb3Blbi1yZXNwb25zZXNcIjpcbiAgICAgIHJldHVybiB1cmwoaG9zdCwgXCIvc2VydmluZy1lbmRwb2ludHMvb3Blbi1yZXNwb25zZXNcIik7XG4gICAgY2FzZSBcImRhdGFicmlja3MtY2hhdFwiOlxuICAgICAgcmV0dXJuIHVybChob3N0LCBcIi9zZXJ2aW5nLWVuZHBvaW50cy9jaGF0L2NvbXBsZXRpb25zXCIpO1xuICAgIGNhc2UgXCJkYXRhYnJpY2tzLWFudGhyb3BpY1wiOlxuICAgICAgcmV0dXJuIHVybChob3N0LCBcIi9zZXJ2aW5nLWVuZHBvaW50cy9hbnRocm9waWMvdjEvbWVzc2FnZXNcIik7XG4gICAgY2FzZSBcImRhdGFicmlja3MtZW1iZWRkaW5nc1wiOlxuICAgICAgcmV0dXJuIHVybChob3N0LCBgL3NlcnZpbmctZW5kcG9pbnRzLyR7ZW5jb2RlVVJJQ29tcG9uZW50KHJvdXRlLnVwc3RyZWFtTW9kZWwpfS9pbnZvY2F0aW9uc2ApO1xuICAgIGNhc2UgXCJhaS1zZGtcIjpcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkFJIFNESyByb3V0ZXMgZG8gbm90IHVzZSB0aGUgZGlyZWN0IERhdGFicmlja3MgdHJhbnNwb3J0XCIpO1xuICB9XG59XG5cbmZ1bmN0aW9uIHVybChob3N0OiBzdHJpbmcsIHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBuZXcgVVJMKHBhdGgsIGAke2hvc3QucmVwbGFjZSgvXFwvJC8sIFwiXCIpfS9gKS50b1N0cmluZygpO1xufVxuIl19
|
package/lib/tsconfig.tsbuildinfo
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../src/client.ts","../src/contracts.ts","../src/models.ts","../index.ts"],"version":"5.9.3"}
|
|
1
|
+
{"root":["../src/client.ts","../src/contracts.ts","../src/models.ts","../src/options.ts","../src/upstream.ts","../index.ts"],"version":"5.9.3"}
|
package/package.json
CHANGED
|
@@ -22,7 +22,8 @@
|
|
|
22
22
|
"typescript": "^5.9.3"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@dbx-tools/shared-
|
|
25
|
+
"@dbx-tools/shared-core": "^0.9.43",
|
|
26
|
+
"@dbx-tools/shared-model": "^0.9.43",
|
|
26
27
|
"zod": "4.3.6"
|
|
27
28
|
},
|
|
28
29
|
"main": "./lib/index.js",
|
|
@@ -48,10 +49,18 @@
|
|
|
48
49
|
"types": "./lib/src/models.d.ts",
|
|
49
50
|
"default": "./lib/src/models.js"
|
|
50
51
|
},
|
|
52
|
+
"./options": {
|
|
53
|
+
"types": "./lib/src/options.d.ts",
|
|
54
|
+
"default": "./lib/src/options.js"
|
|
55
|
+
},
|
|
56
|
+
"./upstream": {
|
|
57
|
+
"types": "./lib/src/upstream.d.ts",
|
|
58
|
+
"default": "./lib/src/upstream.js"
|
|
59
|
+
},
|
|
51
60
|
"./package.json": "./package.json"
|
|
52
61
|
}
|
|
53
62
|
},
|
|
54
|
-
"version": "0.9.
|
|
63
|
+
"version": "0.9.43",
|
|
55
64
|
"types": "./lib/index.d.ts",
|
|
56
65
|
"dbxToolsConfig": {
|
|
57
66
|
"tags": [
|
|
@@ -76,6 +85,14 @@
|
|
|
76
85
|
"types": "./lib/src/models.d.ts",
|
|
77
86
|
"default": "./lib/src/models.js"
|
|
78
87
|
},
|
|
88
|
+
"./options": {
|
|
89
|
+
"types": "./lib/src/options.d.ts",
|
|
90
|
+
"default": "./lib/src/options.js"
|
|
91
|
+
},
|
|
92
|
+
"./upstream": {
|
|
93
|
+
"types": "./lib/src/upstream.d.ts",
|
|
94
|
+
"default": "./lib/src/upstream.js"
|
|
95
|
+
},
|
|
79
96
|
"./package.json": "./package.json"
|
|
80
97
|
},
|
|
81
98
|
"files": [
|