librechat-data-provider 0.8.402 → 0.8.404

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.
Files changed (109) hide show
  1. package/dist/index.es.js +1 -1
  2. package/dist/index.es.js.map +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/react-query/index.es.js +1 -1
  6. package/dist/react-query/index.es.js.map +1 -1
  7. package/dist/types/accessPermissions.d.ts +744 -0
  8. package/dist/types/actions.d.ts +118 -0
  9. package/dist/types/api-endpoints.d.ts +150 -0
  10. package/dist/types/artifacts.d.ts +97 -0
  11. package/dist/types/azure.d.ts +22 -0
  12. package/dist/types/bedrock.d.ts +1220 -0
  13. package/dist/types/config.d.ts +14849 -0
  14. package/dist/types/config.spec.d.ts +1 -0
  15. package/dist/types/createPayload.d.ts +5 -0
  16. package/dist/types/data-service.d.ts +287 -0
  17. package/dist/types/feedback.d.ts +36 -0
  18. package/dist/types/file-config.d.ts +263 -0
  19. package/dist/types/file-config.spec.d.ts +1 -0
  20. package/dist/types/generate.d.ts +597 -0
  21. package/dist/types/headers-helpers.d.ts +2 -0
  22. package/{src/index.ts → dist/types/index.d.ts} +0 -15
  23. package/dist/types/keys.d.ts +92 -0
  24. package/dist/types/mcp.d.ts +2760 -0
  25. package/dist/types/messages.d.ts +10 -0
  26. package/dist/types/models.d.ts +1547 -0
  27. package/dist/types/parameterSettings.d.ts +69 -0
  28. package/dist/types/parsers.d.ts +110 -0
  29. package/dist/types/permissions.d.ts +522 -0
  30. package/dist/types/react-query/react-query-service.d.ts +85 -0
  31. package/dist/types/request.d.ts +25 -0
  32. package/dist/types/roles.d.ts +554 -0
  33. package/dist/types/roles.spec.d.ts +1 -0
  34. package/dist/types/schemas.d.ts +5110 -0
  35. package/dist/types/schemas.spec.d.ts +1 -0
  36. package/dist/types/types/agents.d.ts +433 -0
  37. package/dist/types/types/assistants.d.ts +547 -0
  38. package/dist/types/types/files.d.ts +172 -0
  39. package/dist/types/types/graph.d.ts +135 -0
  40. package/{src/types/mcpServers.ts → dist/types/types/mcpServers.d.ts} +12 -18
  41. package/dist/types/types/mutations.d.ts +209 -0
  42. package/dist/types/types/queries.d.ts +169 -0
  43. package/dist/types/types/runs.d.ts +36 -0
  44. package/dist/types/types/web.d.ts +520 -0
  45. package/dist/types/types.d.ts +503 -0
  46. package/dist/types/utils.d.ts +12 -0
  47. package/package.json +5 -1
  48. package/babel.config.js +0 -4
  49. package/check_updates.sh +0 -52
  50. package/jest.config.js +0 -19
  51. package/react-query/package-lock.json +0 -292
  52. package/react-query/package.json +0 -10
  53. package/rollup.config.js +0 -74
  54. package/server-rollup.config.js +0 -40
  55. package/specs/actions.spec.ts +0 -2533
  56. package/specs/api-endpoints-subdir.spec.ts +0 -140
  57. package/specs/api-endpoints.spec.ts +0 -74
  58. package/specs/azure.spec.ts +0 -844
  59. package/specs/bedrock.spec.ts +0 -862
  60. package/specs/filetypes.spec.ts +0 -175
  61. package/specs/generate.spec.ts +0 -770
  62. package/specs/headers-helpers.spec.ts +0 -24
  63. package/specs/mcp.spec.ts +0 -147
  64. package/specs/openapiSpecs.ts +0 -524
  65. package/specs/parsers.spec.ts +0 -601
  66. package/specs/request-interceptor.spec.ts +0 -304
  67. package/specs/utils.spec.ts +0 -196
  68. package/src/accessPermissions.ts +0 -346
  69. package/src/actions.ts +0 -813
  70. package/src/api-endpoints.ts +0 -440
  71. package/src/artifacts.ts +0 -3104
  72. package/src/azure.ts +0 -328
  73. package/src/bedrock.ts +0 -425
  74. package/src/config.spec.ts +0 -315
  75. package/src/config.ts +0 -2006
  76. package/src/createPayload.ts +0 -46
  77. package/src/data-service.ts +0 -1087
  78. package/src/feedback.ts +0 -141
  79. package/src/file-config.spec.ts +0 -1248
  80. package/src/file-config.ts +0 -764
  81. package/src/generate.ts +0 -634
  82. package/src/headers-helpers.ts +0 -13
  83. package/src/keys.ts +0 -99
  84. package/src/mcp.ts +0 -271
  85. package/src/messages.ts +0 -50
  86. package/src/models.ts +0 -69
  87. package/src/parameterSettings.ts +0 -1111
  88. package/src/parsers.ts +0 -563
  89. package/src/permissions.ts +0 -188
  90. package/src/react-query/react-query-service.ts +0 -566
  91. package/src/request.ts +0 -171
  92. package/src/roles.spec.ts +0 -132
  93. package/src/roles.ts +0 -225
  94. package/src/schemas.spec.ts +0 -355
  95. package/src/schemas.ts +0 -1234
  96. package/src/types/agents.ts +0 -470
  97. package/src/types/assistants.ts +0 -654
  98. package/src/types/files.ts +0 -191
  99. package/src/types/graph.ts +0 -145
  100. package/src/types/mutations.ts +0 -422
  101. package/src/types/queries.ts +0 -208
  102. package/src/types/runs.ts +0 -40
  103. package/src/types/web.ts +0 -588
  104. package/src/types.ts +0 -676
  105. package/src/utils.ts +0 -85
  106. package/tsconfig.json +0 -28
  107. package/tsconfig.spec.json +0 -10
  108. /package/{src/react-query/index.ts → dist/types/react-query/index.d.ts} +0 -0
  109. /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
- }