librechat-data-provider 0.8.402 → 0.8.403
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/types/accessPermissions.d.ts +744 -0
- package/dist/types/actions.d.ts +118 -0
- package/dist/types/api-endpoints.d.ts +149 -0
- package/dist/types/artifacts.d.ts +97 -0
- package/dist/types/azure.d.ts +22 -0
- package/dist/types/bedrock.d.ts +1220 -0
- package/dist/types/config.d.ts +13916 -0
- package/dist/types/config.spec.d.ts +1 -0
- package/dist/types/createPayload.d.ts +5 -0
- package/dist/types/data-service.d.ts +284 -0
- package/dist/types/feedback.d.ts +36 -0
- package/dist/types/file-config.d.ts +263 -0
- package/dist/types/file-config.spec.d.ts +1 -0
- package/dist/types/generate.d.ts +597 -0
- package/dist/types/headers-helpers.d.ts +2 -0
- package/{src/index.ts → dist/types/index.d.ts} +0 -15
- package/dist/types/keys.d.ts +92 -0
- package/dist/types/mcp.d.ts +2760 -0
- package/dist/types/messages.d.ts +10 -0
- package/dist/types/models.d.ts +1677 -0
- package/dist/types/parameterSettings.d.ts +69 -0
- package/dist/types/parsers.d.ts +110 -0
- package/dist/types/permissions.d.ts +522 -0
- package/dist/types/react-query/react-query-service.d.ts +85 -0
- package/dist/types/request.d.ts +25 -0
- package/dist/types/roles.d.ts +554 -0
- package/dist/types/roles.spec.d.ts +1 -0
- package/dist/types/schemas.d.ts +4815 -0
- package/dist/types/schemas.spec.d.ts +1 -0
- package/dist/types/types/agents.d.ts +433 -0
- package/dist/types/types/assistants.d.ts +547 -0
- package/dist/types/types/files.d.ts +172 -0
- package/dist/types/types/graph.d.ts +135 -0
- package/{src/types/mcpServers.ts → dist/types/types/mcpServers.d.ts} +12 -18
- package/dist/types/types/mutations.d.ts +209 -0
- package/dist/types/types/queries.d.ts +169 -0
- package/dist/types/types/runs.d.ts +36 -0
- package/dist/types/types/web.d.ts +520 -0
- package/dist/types/types.d.ts +503 -0
- package/dist/types/utils.d.ts +12 -0
- package/package.json +4 -1
- package/babel.config.js +0 -4
- package/check_updates.sh +0 -52
- package/jest.config.js +0 -19
- package/react-query/package-lock.json +0 -292
- package/react-query/package.json +0 -10
- package/rollup.config.js +0 -74
- package/server-rollup.config.js +0 -40
- package/specs/actions.spec.ts +0 -2533
- package/specs/api-endpoints-subdir.spec.ts +0 -140
- package/specs/api-endpoints.spec.ts +0 -74
- package/specs/azure.spec.ts +0 -844
- package/specs/bedrock.spec.ts +0 -862
- package/specs/filetypes.spec.ts +0 -175
- package/specs/generate.spec.ts +0 -770
- package/specs/headers-helpers.spec.ts +0 -24
- package/specs/mcp.spec.ts +0 -147
- package/specs/openapiSpecs.ts +0 -524
- package/specs/parsers.spec.ts +0 -601
- package/specs/request-interceptor.spec.ts +0 -304
- package/specs/utils.spec.ts +0 -196
- package/src/accessPermissions.ts +0 -346
- package/src/actions.ts +0 -813
- package/src/api-endpoints.ts +0 -440
- package/src/artifacts.ts +0 -3104
- package/src/azure.ts +0 -328
- package/src/bedrock.ts +0 -425
- package/src/config.spec.ts +0 -315
- package/src/config.ts +0 -2006
- package/src/createPayload.ts +0 -46
- package/src/data-service.ts +0 -1087
- package/src/feedback.ts +0 -141
- package/src/file-config.spec.ts +0 -1248
- package/src/file-config.ts +0 -764
- package/src/generate.ts +0 -634
- package/src/headers-helpers.ts +0 -13
- package/src/keys.ts +0 -99
- package/src/mcp.ts +0 -271
- package/src/messages.ts +0 -50
- package/src/models.ts +0 -69
- package/src/parameterSettings.ts +0 -1111
- package/src/parsers.ts +0 -563
- package/src/permissions.ts +0 -188
- package/src/react-query/react-query-service.ts +0 -566
- package/src/request.ts +0 -171
- package/src/roles.spec.ts +0 -132
- package/src/roles.ts +0 -225
- package/src/schemas.spec.ts +0 -355
- package/src/schemas.ts +0 -1234
- package/src/types/agents.ts +0 -470
- package/src/types/assistants.ts +0 -654
- package/src/types/files.ts +0 -191
- package/src/types/graph.ts +0 -145
- package/src/types/mutations.ts +0 -422
- package/src/types/queries.ts +0 -208
- package/src/types/runs.ts +0 -40
- package/src/types/web.ts +0 -588
- package/src/types.ts +0 -676
- package/src/utils.ts +0 -85
- package/tsconfig.json +0 -28
- package/tsconfig.spec.json +0 -10
- /package/{src/react-query/index.ts → dist/types/react-query/index.d.ts} +0 -0
- /package/{src/types/index.ts → dist/types/types/index.d.ts} +0 -0
package/src/azure.ts
DELETED
|
@@ -1,328 +0,0 @@
|
|
|
1
|
-
import type { ZodError } from 'zod';
|
|
2
|
-
import type {
|
|
3
|
-
TAzureGroups,
|
|
4
|
-
TAzureGroupMap,
|
|
5
|
-
TAzureModelGroupMap,
|
|
6
|
-
TValidatedAzureConfig,
|
|
7
|
-
TAzureConfigValidationResult,
|
|
8
|
-
} from '../src/config';
|
|
9
|
-
import { extractEnvVariable, envVarRegex } from '../src/utils';
|
|
10
|
-
import { azureGroupConfigsSchema } from '../src/config';
|
|
11
|
-
import { errorsToString } from '../src/parsers';
|
|
12
|
-
|
|
13
|
-
export function validateAzureGroups(configs: TAzureGroups): TAzureConfigValidationResult {
|
|
14
|
-
let isValid = true;
|
|
15
|
-
const modelNames: string[] = [];
|
|
16
|
-
const modelGroupMap: TAzureModelGroupMap = {};
|
|
17
|
-
const groupMap: TAzureGroupMap = {};
|
|
18
|
-
const errors: (ZodError | string)[] = [];
|
|
19
|
-
|
|
20
|
-
const result = azureGroupConfigsSchema.safeParse(configs);
|
|
21
|
-
if (!result.success) {
|
|
22
|
-
isValid = false;
|
|
23
|
-
errors.push(errorsToString(result.error.errors));
|
|
24
|
-
} else {
|
|
25
|
-
for (const group of result.data) {
|
|
26
|
-
const {
|
|
27
|
-
group: groupName,
|
|
28
|
-
apiKey,
|
|
29
|
-
instanceName = '',
|
|
30
|
-
deploymentName = '',
|
|
31
|
-
version = '',
|
|
32
|
-
baseURL = '',
|
|
33
|
-
additionalHeaders,
|
|
34
|
-
models,
|
|
35
|
-
serverless = false,
|
|
36
|
-
...rest
|
|
37
|
-
} = group;
|
|
38
|
-
|
|
39
|
-
if (groupMap[groupName]) {
|
|
40
|
-
errors.push(`Duplicate group name detected: "${groupName}". Group names must be unique.`);
|
|
41
|
-
return { isValid: false, modelNames, modelGroupMap, groupMap, errors };
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
if (serverless && !baseURL) {
|
|
45
|
-
errors.push(`Group "${groupName}" is serverless but missing mandatory "baseURL."`);
|
|
46
|
-
return { isValid: false, modelNames, modelGroupMap, groupMap, errors };
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
if (!instanceName && !serverless) {
|
|
50
|
-
errors.push(
|
|
51
|
-
`Group "${groupName}" is missing an "instanceName" for non-serverless configuration.`,
|
|
52
|
-
);
|
|
53
|
-
return { isValid: false, modelNames, modelGroupMap, groupMap, errors };
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
groupMap[groupName] = {
|
|
57
|
-
apiKey,
|
|
58
|
-
instanceName,
|
|
59
|
-
deploymentName,
|
|
60
|
-
version,
|
|
61
|
-
baseURL,
|
|
62
|
-
additionalHeaders,
|
|
63
|
-
models,
|
|
64
|
-
serverless,
|
|
65
|
-
...rest,
|
|
66
|
-
};
|
|
67
|
-
|
|
68
|
-
for (const modelName in group.models) {
|
|
69
|
-
modelNames.push(modelName);
|
|
70
|
-
const model = group.models[modelName];
|
|
71
|
-
|
|
72
|
-
if (modelGroupMap[modelName]) {
|
|
73
|
-
errors.push(
|
|
74
|
-
`Duplicate model name detected: "${modelName}". Model names must be unique across groups.`,
|
|
75
|
-
);
|
|
76
|
-
return { isValid: false, modelNames, modelGroupMap, groupMap, errors };
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
if (serverless) {
|
|
80
|
-
modelGroupMap[modelName] = {
|
|
81
|
-
group: groupName,
|
|
82
|
-
};
|
|
83
|
-
continue;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
const groupDeploymentName = group.deploymentName ?? '';
|
|
87
|
-
const groupVersion = group.version ?? '';
|
|
88
|
-
if (typeof model === 'boolean') {
|
|
89
|
-
// For boolean models, check if group-level deploymentName and version are present.
|
|
90
|
-
if (!groupDeploymentName || !groupVersion) {
|
|
91
|
-
errors.push(
|
|
92
|
-
`Model "${modelName}" in group "${groupName}" is missing a deploymentName or version.`,
|
|
93
|
-
);
|
|
94
|
-
return { isValid: false, modelNames, modelGroupMap, groupMap, errors };
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
modelGroupMap[modelName] = {
|
|
98
|
-
group: groupName,
|
|
99
|
-
};
|
|
100
|
-
} else {
|
|
101
|
-
const modelDeploymentName = model.deploymentName ?? '';
|
|
102
|
-
const modelVersion = model.version ?? '';
|
|
103
|
-
// For object models, check if deploymentName and version are required but missing.
|
|
104
|
-
if ((!modelDeploymentName && !groupDeploymentName) || (!modelVersion && !groupVersion)) {
|
|
105
|
-
errors.push(
|
|
106
|
-
`Model "${modelName}" in group "${groupName}" is missing a required deploymentName or version.`,
|
|
107
|
-
);
|
|
108
|
-
return { isValid: false, modelNames, modelGroupMap, groupMap, errors };
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
modelGroupMap[modelName] = {
|
|
112
|
-
group: groupName,
|
|
113
|
-
// deploymentName: modelDeploymentName || groupDeploymentName,
|
|
114
|
-
// version: modelVersion || groupVersion,
|
|
115
|
-
};
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
return { isValid, modelNames, modelGroupMap, groupMap, errors };
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
type AzureOptions = {
|
|
125
|
-
azureOpenAIApiKey: string;
|
|
126
|
-
azureOpenAIApiInstanceName?: string;
|
|
127
|
-
azureOpenAIApiDeploymentName?: string;
|
|
128
|
-
azureOpenAIApiVersion?: string;
|
|
129
|
-
};
|
|
130
|
-
|
|
131
|
-
type MappedAzureConfig = {
|
|
132
|
-
azureOptions: AzureOptions;
|
|
133
|
-
baseURL?: string;
|
|
134
|
-
headers?: Record<string, string>;
|
|
135
|
-
serverless?: boolean;
|
|
136
|
-
};
|
|
137
|
-
|
|
138
|
-
export function mapModelToAzureConfig({
|
|
139
|
-
modelName,
|
|
140
|
-
modelGroupMap,
|
|
141
|
-
groupMap,
|
|
142
|
-
}: Omit<TValidatedAzureConfig, 'modelNames'> & {
|
|
143
|
-
modelName: string;
|
|
144
|
-
}): MappedAzureConfig {
|
|
145
|
-
const modelConfig = modelGroupMap[modelName];
|
|
146
|
-
if (!modelConfig) {
|
|
147
|
-
throw new Error(`Model named "${modelName}" not found in configuration.`);
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
const groupConfig = groupMap[modelConfig.group];
|
|
151
|
-
if (!groupConfig) {
|
|
152
|
-
throw new Error(
|
|
153
|
-
`Group "${modelConfig.group}" for model "${modelName}" not found in configuration.`,
|
|
154
|
-
);
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
const instanceName = groupConfig.instanceName ?? '';
|
|
158
|
-
|
|
159
|
-
if (!instanceName && groupConfig.serverless !== true) {
|
|
160
|
-
throw new Error(
|
|
161
|
-
`Group "${modelConfig.group}" is missing an instanceName for non-serverless configuration.`,
|
|
162
|
-
);
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
const baseURL = groupConfig.baseURL ?? '';
|
|
166
|
-
if (groupConfig.serverless === true && !baseURL) {
|
|
167
|
-
throw new Error(
|
|
168
|
-
`Group "${modelConfig.group}" is missing the required base URL for serverless configuration.`,
|
|
169
|
-
);
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
if (groupConfig.serverless === true) {
|
|
173
|
-
const result: MappedAzureConfig = {
|
|
174
|
-
azureOptions: {
|
|
175
|
-
azureOpenAIApiVersion: extractEnvVariable(groupConfig.version ?? ''),
|
|
176
|
-
azureOpenAIApiKey: extractEnvVariable(groupConfig.apiKey),
|
|
177
|
-
},
|
|
178
|
-
baseURL: extractEnvVariable(baseURL),
|
|
179
|
-
serverless: true,
|
|
180
|
-
};
|
|
181
|
-
|
|
182
|
-
const apiKeyValue = result.azureOptions.azureOpenAIApiKey;
|
|
183
|
-
if (typeof apiKeyValue === 'string' && envVarRegex.test(apiKeyValue)) {
|
|
184
|
-
throw new Error(`Azure configuration environment variable "${apiKeyValue}" was not found.`);
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
if (groupConfig.additionalHeaders) {
|
|
188
|
-
result.headers = groupConfig.additionalHeaders;
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
return result;
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
if (!instanceName) {
|
|
195
|
-
throw new Error(
|
|
196
|
-
`Group "${modelConfig.group}" is missing an instanceName for non-serverless configuration.`,
|
|
197
|
-
);
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
const modelDetails = groupConfig.models[modelName];
|
|
201
|
-
const { deploymentName = '', version = '' } =
|
|
202
|
-
typeof modelDetails === 'object'
|
|
203
|
-
? {
|
|
204
|
-
deploymentName: modelDetails.deploymentName ?? groupConfig.deploymentName,
|
|
205
|
-
version: modelDetails.version ?? groupConfig.version,
|
|
206
|
-
}
|
|
207
|
-
: {
|
|
208
|
-
deploymentName: groupConfig.deploymentName,
|
|
209
|
-
version: groupConfig.version,
|
|
210
|
-
};
|
|
211
|
-
|
|
212
|
-
if (!deploymentName || !version) {
|
|
213
|
-
throw new Error(
|
|
214
|
-
`Model "${modelName}" in group "${modelConfig.group}" is missing a deploymentName ("${deploymentName}") or version ("${version}").`,
|
|
215
|
-
);
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
const azureOptions: AzureOptions = {
|
|
219
|
-
azureOpenAIApiKey: extractEnvVariable(groupConfig.apiKey),
|
|
220
|
-
azureOpenAIApiInstanceName: extractEnvVariable(instanceName),
|
|
221
|
-
azureOpenAIApiDeploymentName: extractEnvVariable(deploymentName),
|
|
222
|
-
azureOpenAIApiVersion: extractEnvVariable(version),
|
|
223
|
-
};
|
|
224
|
-
|
|
225
|
-
for (const value of Object.values(azureOptions)) {
|
|
226
|
-
if (typeof value === 'string' && envVarRegex.test(value)) {
|
|
227
|
-
throw new Error(`Azure configuration environment variable "${value}" was not found.`);
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
const result: MappedAzureConfig = { azureOptions };
|
|
232
|
-
|
|
233
|
-
if (baseURL) {
|
|
234
|
-
result.baseURL = extractEnvVariable(baseURL);
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
if (groupConfig.additionalHeaders) {
|
|
238
|
-
result.headers = groupConfig.additionalHeaders;
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
return result;
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
export function mapGroupToAzureConfig({
|
|
245
|
-
groupName,
|
|
246
|
-
groupMap,
|
|
247
|
-
}: {
|
|
248
|
-
groupName: string;
|
|
249
|
-
groupMap: TAzureGroupMap;
|
|
250
|
-
}): MappedAzureConfig {
|
|
251
|
-
const groupConfig = groupMap[groupName];
|
|
252
|
-
if (!groupConfig) {
|
|
253
|
-
throw new Error(`Group named "${groupName}" not found in configuration.`);
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
const instanceName = groupConfig.instanceName ?? '';
|
|
257
|
-
const serverless = groupConfig.serverless ?? false;
|
|
258
|
-
const baseURL = groupConfig.baseURL ?? '';
|
|
259
|
-
|
|
260
|
-
if (!instanceName && !serverless) {
|
|
261
|
-
throw new Error(
|
|
262
|
-
`Group "${groupName}" is missing an instanceName for non-serverless configuration.`,
|
|
263
|
-
);
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
if (serverless && !baseURL) {
|
|
267
|
-
throw new Error(
|
|
268
|
-
`Group "${groupName}" is missing the required base URL for serverless configuration.`,
|
|
269
|
-
);
|
|
270
|
-
}
|
|
271
|
-
|
|
272
|
-
const models = Object.keys(groupConfig.models);
|
|
273
|
-
if (models.length === 0) {
|
|
274
|
-
throw new Error(`Group "${groupName}" does not have any models configured.`);
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
// Use the first available model in the group
|
|
278
|
-
const firstModelName = models[0];
|
|
279
|
-
const modelDetails = groupConfig.models[firstModelName];
|
|
280
|
-
|
|
281
|
-
const azureOptions: AzureOptions = {
|
|
282
|
-
azureOpenAIApiVersion: extractEnvVariable(groupConfig.version ?? ''),
|
|
283
|
-
azureOpenAIApiKey: extractEnvVariable(groupConfig.apiKey),
|
|
284
|
-
azureOpenAIApiInstanceName: extractEnvVariable(instanceName),
|
|
285
|
-
// DeploymentName and Version set below
|
|
286
|
-
};
|
|
287
|
-
|
|
288
|
-
if (serverless) {
|
|
289
|
-
return {
|
|
290
|
-
azureOptions,
|
|
291
|
-
baseURL: extractEnvVariable(baseURL),
|
|
292
|
-
serverless: true,
|
|
293
|
-
...(groupConfig.additionalHeaders && { headers: groupConfig.additionalHeaders }),
|
|
294
|
-
};
|
|
295
|
-
}
|
|
296
|
-
|
|
297
|
-
const { deploymentName = '', version = '' } =
|
|
298
|
-
typeof modelDetails === 'object'
|
|
299
|
-
? {
|
|
300
|
-
deploymentName: modelDetails.deploymentName ?? groupConfig.deploymentName,
|
|
301
|
-
version: modelDetails.version ?? groupConfig.version,
|
|
302
|
-
}
|
|
303
|
-
: {
|
|
304
|
-
deploymentName: groupConfig.deploymentName,
|
|
305
|
-
version: groupConfig.version,
|
|
306
|
-
};
|
|
307
|
-
|
|
308
|
-
if (!deploymentName || !version) {
|
|
309
|
-
throw new Error(
|
|
310
|
-
`Model "${firstModelName}" in group "${groupName}" or the group itself is missing a deploymentName ("${deploymentName}") or version ("${version}").`,
|
|
311
|
-
);
|
|
312
|
-
}
|
|
313
|
-
|
|
314
|
-
azureOptions.azureOpenAIApiDeploymentName = extractEnvVariable(deploymentName);
|
|
315
|
-
azureOptions.azureOpenAIApiVersion = extractEnvVariable(version);
|
|
316
|
-
|
|
317
|
-
const result: MappedAzureConfig = { azureOptions };
|
|
318
|
-
|
|
319
|
-
if (baseURL) {
|
|
320
|
-
result.baseURL = extractEnvVariable(baseURL);
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
if (groupConfig.additionalHeaders) {
|
|
324
|
-
result.headers = groupConfig.additionalHeaders;
|
|
325
|
-
}
|
|
326
|
-
|
|
327
|
-
return result;
|
|
328
|
-
}
|