@theia/ai-openai 1.66.1 → 1.66.2
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/lib/common/openai-preferences.d.ts.map +1 -1
- package/lib/common/openai-preferences.js +5 -2
- package/lib/common/openai-preferences.js.map +1 -1
- package/lib/node/openai-model-utils.spec.js +85 -0
- package/lib/node/openai-model-utils.spec.js.map +1 -1
- package/lib/node/openai-response-api-utils.d.ts +4 -1
- package/lib/node/openai-response-api-utils.d.ts.map +1 -1
- package/lib/node/openai-response-api-utils.js +53 -6
- package/lib/node/openai-response-api-utils.js.map +1 -1
- package/package.json +7 -7
- package/src/common/openai-preferences.ts +5 -2
- package/src/node/openai-model-utils.spec.ts +104 -1
- package/src/node/openai-response-api-utils.ts +54 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-preferences.d.ts","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAO,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,eAAO,MAAM,YAAY,4CAA4C,CAAC;AACtE,eAAO,MAAM,WAAW,oDAAoD,CAAC;AAC7E,eAAO,MAAM,qBAAqB,8CAA8C,CAAC;AACjF,eAAO,MAAM,qBAAqB,gDAAgD,CAAC;AAEnF,eAAO,MAAM,uBAAuB,EAAE,
|
|
1
|
+
{"version":3,"file":"openai-preferences.d.ts","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAO,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,eAAO,MAAM,YAAY,4CAA4C,CAAC;AACtE,eAAO,MAAM,WAAW,oDAAoD,CAAC;AAC7E,eAAO,MAAM,qBAAqB,8CAA8C,CAAC;AACjF,eAAO,MAAM,qBAAqB,gDAAgD,CAAC;AAEnF,eAAO,MAAM,uBAAuB,EAAE,gBAmIrC,CAAC"}
|
|
@@ -56,9 +56,12 @@ on the machine running Theia. Use the environment variable `OPENAI_API_KEY` to s
|
|
|
56
56
|
type: 'boolean',
|
|
57
57
|
default: false,
|
|
58
58
|
title: ai_core_preferences_1.AI_CORE_PREFERENCES_TITLE,
|
|
59
|
-
markdownDescription: core_1.nls.localize('theia/ai/openai/useResponseApi/mdDescription', 'Use the newer OpenAI Response API instead of the Chat Completion API for official OpenAI models
|
|
59
|
+
markdownDescription: core_1.nls.localize('theia/ai/openai/useResponseApi/mdDescription', 'Use the newer OpenAI Response API instead of the Chat Completion API for official OpenAI models.\
|
|
60
60
|
\
|
|
61
|
-
This setting only applies to official OpenAI models - custom providers must configure this individually
|
|
61
|
+
This setting only applies to official OpenAI models - custom providers must configure this individually.\
|
|
62
|
+
\
|
|
63
|
+
Note that for the response API, tool call definitions must satisfy Open AI\'s [strict schema definition](https://platform.openai.com/docs/guides/function-calling#strict-mode).\
|
|
64
|
+
Best effort is made to convert non-conformant schemas, but errors are still possible.')
|
|
62
65
|
},
|
|
63
66
|
[exports.CUSTOM_ENDPOINTS_PREF]: {
|
|
64
67
|
type: 'array',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-preferences.js","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,uFAA0F;AAC1F,sCAAoD;AAEvC,QAAA,YAAY,GAAG,yCAAyC,CAAC;AACzD,QAAA,WAAW,GAAG,iDAAiD,CAAC;AAChE,QAAA,qBAAqB,GAAG,2CAA2C,CAAC;AACpE,QAAA,qBAAqB,GAAG,6CAA6C,CAAC;AAEtE,QAAA,uBAAuB,GAAqB;IACrD,UAAU,EAAE;QACR,CAAC,oBAAY,CAAC,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,sCAAsC,EACpE;qGACqF,CAAC;YAC1F,KAAK,EAAE,+CAAyB;SACnC;QACD,CAAC,mBAAW,CAAC,EAAE;YACX,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE,+BAA+B,CAAC;YAChG,KAAK,EAAE,+CAAyB;YAChC,OAAO,EAAE;gBACL,QAAQ;gBACR,SAAS;gBACT,cAAc;gBACd,cAAc;gBACd,aAAa;gBACb,IAAI;gBACJ,SAAS;gBACT,SAAS;gBACT,cAAc;gBACd,OAAO;gBACP,YAAY;gBACZ,YAAY;aACf;YACD,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;aACjB;SACJ;QACD,CAAC,6BAAqB,CAAC,EAAE;YACrB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,+CAAyB;YAChC,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,8CAA8C,EAC5E
|
|
1
|
+
{"version":3,"file":"openai-preferences.js","sourceRoot":"","sources":["../../src/common/openai-preferences.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,uFAA0F;AAC1F,sCAAoD;AAEvC,QAAA,YAAY,GAAG,yCAAyC,CAAC;AACzD,QAAA,WAAW,GAAG,iDAAiD,CAAC;AAChE,QAAA,qBAAqB,GAAG,2CAA2C,CAAC;AACpE,QAAA,qBAAqB,GAAG,6CAA6C,CAAC;AAEtE,QAAA,uBAAuB,GAAqB;IACrD,UAAU,EAAE;QACR,CAAC,oBAAY,CAAC,EAAE;YACZ,IAAI,EAAE,QAAQ;YACd,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,sCAAsC,EACpE;qGACqF,CAAC;YAC1F,KAAK,EAAE,+CAAyB;SACnC;QACD,CAAC,mBAAW,CAAC,EAAE;YACX,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE,+BAA+B,CAAC;YAChG,KAAK,EAAE,+CAAyB;YAChC,OAAO,EAAE;gBACL,QAAQ;gBACR,SAAS;gBACT,cAAc;gBACd,cAAc;gBACd,aAAa;gBACb,IAAI;gBACJ,SAAS;gBACT,SAAS;gBACT,cAAc;gBACd,OAAO;gBACP,YAAY;gBACZ,YAAY;aACf;YACD,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;aACjB;SACJ;QACD,CAAC,6BAAqB,CAAC,EAAE;YACrB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,+CAAyB;YAChC,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,8CAA8C,EAC5E;;;;;sFAKsE,CAAC;SAC9E;QACD,CAAC,6BAAqB,CAAC,EAAE;YACrB,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,+CAAyB;YAChC,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,+CAA+C,EAC7E;;;;;;;;;;;;;;;;;;;;;;;yIAuByH,CAAC;YAC9H,OAAO,EAAE,EAAE;YACX,KAAK,EAAE;gBACH,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,KAAK,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,+CAA+C,EAAE,UAAU,CAAC;qBACnF;oBACD,GAAG,EAAE;wBACD,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,2CAA2C,EAAE,+DAA+D,CAAC;qBACpI;oBACD,EAAE,EAAE;wBACA,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,0CAA0C,EAAE,0EAA0E,CAAC;qBAC9I;oBACD,MAAM,EAAE;wBACJ,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;wBAC3B,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,8CAA8C,EAC9D,qGAAqG,CAAC;qBAC7G;oBACD,UAAU,EAAE;wBACR,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;wBAC3B,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,kDAAkD,EAClE,sHAAsH,CAAC;qBAC9H;oBACD,UAAU,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,kDAAkD,EAClE,wEAAwE,CAAC;qBAChF;oBACD,wBAAwB,EAAE;wBACtB,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE,MAAM,CAAC;wBAC9E,OAAO,EAAE,WAAW;wBACpB,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,gEAAgE,EAChF;;iGAEqE,CAAC;qBAC7E;oBACD,wBAAwB,EAAE;wBACtB,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,gEAAgE,EAChF,4EAA4E,CAAC;qBACpF;oBACD,eAAe,EAAE;wBACb,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,uDAAuD,EACvE,uEAAuE,CAAC;qBAC/E;oBACD,cAAc,EAAE;wBACZ,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,sDAAsD,EACtE,gHAAgH;8BAC9G,iFAAiF,CAAC;qBAC3F;iBACJ;aACJ;SACJ;KACJ;CACJ,CAAC"}
|
|
@@ -378,5 +378,90 @@ describe('OpenAiModelUtils - processMessagesForResponseApi', () => {
|
|
|
378
378
|
.to.throw('unhandled case');
|
|
379
379
|
});
|
|
380
380
|
});
|
|
381
|
+
describe('recursiveStrictJSONSchema', () => {
|
|
382
|
+
it('should return the same object and not modify it when schema has no properties to strictify', () => {
|
|
383
|
+
const schema = { type: 'string', description: 'Simple string' };
|
|
384
|
+
const originalJson = JSON.stringify(schema);
|
|
385
|
+
const result = (0, openai_response_api_utils_1.recursiveStrictJSONSchema)(schema);
|
|
386
|
+
(0, chai_1.expect)(result).to.equal(schema);
|
|
387
|
+
(0, chai_1.expect)(JSON.stringify(schema)).to.equal(originalJson);
|
|
388
|
+
const resultObj = result;
|
|
389
|
+
(0, chai_1.expect)(resultObj).to.not.have.property('additionalProperties');
|
|
390
|
+
(0, chai_1.expect)(resultObj).to.not.have.property('required');
|
|
391
|
+
});
|
|
392
|
+
it('should not mutate original but return a new strictified schema when branching applies (properties/items)', () => {
|
|
393
|
+
var _a;
|
|
394
|
+
const original = {
|
|
395
|
+
type: 'object',
|
|
396
|
+
properties: {
|
|
397
|
+
path: { type: 'string' },
|
|
398
|
+
data: {
|
|
399
|
+
type: 'array',
|
|
400
|
+
items: {
|
|
401
|
+
type: 'object',
|
|
402
|
+
properties: {
|
|
403
|
+
a: { type: 'string' }
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
};
|
|
409
|
+
const originalClone = JSON.parse(JSON.stringify(original));
|
|
410
|
+
const resultDef = (0, openai_response_api_utils_1.recursiveStrictJSONSchema)(original);
|
|
411
|
+
const result = resultDef;
|
|
412
|
+
(0, chai_1.expect)(result).to.not.equal(original);
|
|
413
|
+
(0, chai_1.expect)(original).to.deep.equal(originalClone);
|
|
414
|
+
(0, chai_1.expect)(result.additionalProperties).to.equal(false);
|
|
415
|
+
(0, chai_1.expect)(result.required).to.have.members(['path', 'data']);
|
|
416
|
+
const itemsDef = ((_a = result.properties) === null || _a === void 0 ? void 0 : _a.data).items;
|
|
417
|
+
(0, chai_1.expect)(itemsDef).to.be.ok;
|
|
418
|
+
const itemsObj = itemsDef;
|
|
419
|
+
(0, chai_1.expect)(itemsObj.additionalProperties).to.equal(false);
|
|
420
|
+
(0, chai_1.expect)(itemsObj.required).to.have.members(['a']);
|
|
421
|
+
const originalItems = (original.properties.data.items);
|
|
422
|
+
(0, chai_1.expect)(originalItems).to.not.have.property('additionalProperties');
|
|
423
|
+
(0, chai_1.expect)(originalItems).to.not.have.property('required');
|
|
424
|
+
});
|
|
425
|
+
it('should strictify nested parameters schema and not mutate the original', () => {
|
|
426
|
+
const replacementProperties = {
|
|
427
|
+
oldContent: { type: 'string', description: 'The exact content to be replaced. Must match exactly, including whitespace, comments, etc.' },
|
|
428
|
+
newContent: { type: 'string', description: 'The new content to insert in place of matched old content.' },
|
|
429
|
+
multiple: { type: 'boolean', description: 'Set to true if multiple occurrences of the oldContent are expected to be replaced.' }
|
|
430
|
+
};
|
|
431
|
+
const parameters = {
|
|
432
|
+
type: 'object',
|
|
433
|
+
properties: {
|
|
434
|
+
path: { type: 'string', description: 'The path of the file where content will be replaced.' },
|
|
435
|
+
replacements: {
|
|
436
|
+
type: 'array',
|
|
437
|
+
items: {
|
|
438
|
+
type: 'object',
|
|
439
|
+
properties: replacementProperties,
|
|
440
|
+
required: ['oldContent', 'newContent']
|
|
441
|
+
},
|
|
442
|
+
description: 'An array of replacement objects, each containing oldContent and newContent strings.'
|
|
443
|
+
},
|
|
444
|
+
reset: {
|
|
445
|
+
type: 'boolean',
|
|
446
|
+
description: 'Set to true to clear any existing pending changes for this file and start fresh. Default is false, which merges with existing changes.'
|
|
447
|
+
}
|
|
448
|
+
},
|
|
449
|
+
required: ['path', 'replacements']
|
|
450
|
+
};
|
|
451
|
+
const originalClone = JSON.parse(JSON.stringify(parameters));
|
|
452
|
+
const strictifiedDef = (0, openai_response_api_utils_1.recursiveStrictJSONSchema)(parameters);
|
|
453
|
+
const strictified = strictifiedDef;
|
|
454
|
+
(0, chai_1.expect)(strictified).to.not.equal(parameters);
|
|
455
|
+
(0, chai_1.expect)(parameters).to.deep.equal(originalClone);
|
|
456
|
+
(0, chai_1.expect)(strictified.additionalProperties).to.equal(false);
|
|
457
|
+
(0, chai_1.expect)(strictified.required).to.have.members(['path', 'replacements', 'reset']);
|
|
458
|
+
const items = strictified.properties.replacements.items;
|
|
459
|
+
(0, chai_1.expect)(items.additionalProperties).to.equal(false);
|
|
460
|
+
(0, chai_1.expect)(items.required).to.have.members(['oldContent', 'newContent', 'multiple']);
|
|
461
|
+
const origItems = (parameters.properties.replacements.items);
|
|
462
|
+
(0, chai_1.expect)(origItems.required).to.deep.equal(['oldContent', 'newContent']);
|
|
463
|
+
(0, chai_1.expect)(origItems).to.not.have.property('additionalProperties');
|
|
464
|
+
});
|
|
465
|
+
});
|
|
381
466
|
});
|
|
382
467
|
//# sourceMappingURL=openai-model-utils.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-model-utils.spec.js","sourceRoot":"","sources":["../../src/node/openai-model-utils.spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openai-model-utils.spec.js","sourceRoot":"","sources":["../../src/node/openai-model-utils.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { LanguageModelMessage, LanguageModelResponse, LanguageModelStreamResponsePart, TokenUsageService, ToolRequest, UserRequest } from '@theia/ai-core';
|
|
1
|
+
import { LanguageModelMessage, LanguageModelResponse, LanguageModelStreamResponsePart, TokenUsageService, ToolRequest, ToolRequestParameters, UserRequest } from '@theia/ai-core';
|
|
2
2
|
import { CancellationToken } from '@theia/core';
|
|
3
3
|
import { OpenAI } from 'openai';
|
|
4
4
|
import type { RunnerOptions } from 'openai/lib/AbstractChatCompletionRunner';
|
|
5
5
|
import type { FunctionTool, ResponseInputItem, ResponseStreamEvent } from 'openai/resources/responses/responses';
|
|
6
6
|
import { DeveloperMessageSettings, OpenAiModelUtils } from './openai-language-model';
|
|
7
|
+
import { JSONSchemaDefinition } from 'openai/lib/jsonschema';
|
|
7
8
|
/**
|
|
8
9
|
* Utility class for handling OpenAI Response API requests and tool calling cycles.
|
|
9
10
|
*
|
|
@@ -20,6 +21,7 @@ export declare class OpenAiResponseApiUtils {
|
|
|
20
21
|
* Converts ToolRequest objects to the format expected by the Response API.
|
|
21
22
|
*/
|
|
22
23
|
convertToolsForResponseApi(tools?: ToolRequest[]): FunctionTool[] | undefined;
|
|
24
|
+
recursiveStrictToolCallParameters(schema: ToolRequestParameters): FunctionTool['parameters'];
|
|
23
25
|
protected createSimpleResponseApiStreamIterator(stream: AsyncIterable<ResponseStreamEvent>, requestId: string, modelId: string, tokenUsageService?: TokenUsageService, cancellationToken?: CancellationToken): AsyncIterable<LanguageModelStreamResponsePart>;
|
|
24
26
|
/**
|
|
25
27
|
* Processes the provided list of messages by applying system message adjustments and converting
|
|
@@ -39,4 +41,5 @@ export declare class OpenAiResponseApiUtils {
|
|
|
39
41
|
protected processSystemMessages(messages: LanguageModelMessage[], developerMessageSettings: DeveloperMessageSettings): LanguageModelMessage[];
|
|
40
42
|
}
|
|
41
43
|
export declare function processSystemMessages(messages: LanguageModelMessage[], developerMessageSettings: DeveloperMessageSettings): LanguageModelMessage[];
|
|
44
|
+
export declare function recursiveStrictJSONSchema(schema: JSONSchemaDefinition): JSONSchemaDefinition;
|
|
42
45
|
//# sourceMappingURL=openai-response-api-utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-response-api-utils.d.ts","sourceRoot":"","sources":["../../src/node/openai-response-api-utils.ts"],"names":[],"mappings":"AAgBA,OAAO,EAEH,oBAAoB,EACpB,qBAAqB,EACrB,+BAA+B,EAE/B,iBAAiB,EAEjB,WAAW,EACX,WAAW,EACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAe,MAAM,aAAa,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,KAAK,EACR,YAAY,EAIZ,iBAAiB,EACjB,mBAAmB,EACtB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"openai-response-api-utils.d.ts","sourceRoot":"","sources":["../../src/node/openai-response-api-utils.ts"],"names":[],"mappings":"AAgBA,OAAO,EAEH,oBAAoB,EACpB,qBAAqB,EACrB,+BAA+B,EAE/B,iBAAiB,EAEjB,WAAW,EACX,qBAAqB,EACrB,WAAW,EACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAe,MAAM,aAAa,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,KAAK,EACR,YAAY,EAIZ,iBAAiB,EACjB,mBAAmB,EACtB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAc,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAYzE;;;;;GAKG;AACH,qBACa,sBAAsB;IAE/B;;;OAGG;IACG,aAAa,CACf,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,gBAAgB,EAC5B,wBAAwB,EAAE,wBAAwB,EAClD,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,OAAO,EACpB,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,iBAAiB,CAAC,EAAE,iBAAiB,GACtC,OAAO,CAAC,qBAAqB,CAAC;IA6DjC;;OAEG;IACH,0BAA0B,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,GAAG,YAAY,EAAE,GAAG,SAAS;IAmB7E,iCAAiC,CAAC,MAAM,EAAE,qBAAqB,GAAG,YAAY,CAAC,YAAY,CAAC;IAI5F,SAAS,CAAC,qCAAqC,CAC3C,MAAM,EAAE,aAAa,CAAC,mBAAmB,CAAC,EAC1C,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,iBAAiB,CAAC,EAAE,iBAAiB,GACtC,aAAa,CAAC,+BAA+B,CAAC;IAqCjD;;;;;;;;;;OAUG;IACH,eAAe,CACX,QAAQ,EAAE,oBAAoB,EAAE,EAChC,wBAAwB,EAAE,wBAAwB,EAClD,KAAK,EAAE,MAAM,GACd;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,iBAAiB,EAAE,CAAA;KAAE;IA4ExD,SAAS,CAAC,qBAAqB,CAC3B,QAAQ,EAAE,oBAAoB,EAAE,EAChC,wBAAwB,EAAE,wBAAwB,GACnD,oBAAoB,EAAE;CAG5B;AAidD,wBAAgB,qBAAqB,CACjC,QAAQ,EAAE,oBAAoB,EAAE,EAChC,wBAAwB,EAAE,wBAAwB,GACnD,oBAAoB,EAAE,CA0BxB;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,CA6C5F"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
16
|
// *****************************************************************************
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.processSystemMessages = exports.OpenAiResponseApiUtils = void 0;
|
|
18
|
+
exports.recursiveStrictJSONSchema = exports.processSystemMessages = exports.OpenAiResponseApiUtils = void 0;
|
|
19
19
|
const tslib_1 = require("tslib");
|
|
20
20
|
const ai_core_1 = require("@theia/ai-core");
|
|
21
21
|
const core_1 = require("@theia/core");
|
|
@@ -85,16 +85,15 @@ let OpenAiResponseApiUtils = class OpenAiResponseApiUtils {
|
|
|
85
85
|
// The Response API is very strict re: JSON schema: all properties must be listed as required,
|
|
86
86
|
// and additional properties must be disallowed.
|
|
87
87
|
// https://platform.openai.com/docs/guides/function-calling#strict-mode
|
|
88
|
-
parameters:
|
|
89
|
-
...tool.parameters,
|
|
90
|
-
additionalProperties: false,
|
|
91
|
-
required: tool.parameters.properties ? Object.keys(tool.parameters.properties) : []
|
|
92
|
-
},
|
|
88
|
+
parameters: this.recursiveStrictToolCallParameters(tool.parameters),
|
|
93
89
|
strict: true
|
|
94
90
|
}));
|
|
95
91
|
console.debug(`Converted ${tools.length} tools for Response API:`, converted.map(t => t.name));
|
|
96
92
|
return converted;
|
|
97
93
|
}
|
|
94
|
+
recursiveStrictToolCallParameters(schema) {
|
|
95
|
+
return recursiveStrictJSONSchema(schema);
|
|
96
|
+
}
|
|
98
97
|
createSimpleResponseApiStreamIterator(stream, requestId, modelId, tokenUsageService, cancellationToken) {
|
|
99
98
|
return {
|
|
100
99
|
async *[Symbol.asyncIterator]() {
|
|
@@ -674,4 +673,52 @@ function processSystemMessages(messages, developerMessageSettings) {
|
|
|
674
673
|
return messages;
|
|
675
674
|
}
|
|
676
675
|
exports.processSystemMessages = processSystemMessages;
|
|
676
|
+
function recursiveStrictJSONSchema(schema) {
|
|
677
|
+
if (typeof schema === 'boolean') {
|
|
678
|
+
return schema;
|
|
679
|
+
}
|
|
680
|
+
let result = undefined;
|
|
681
|
+
if (schema.properties) {
|
|
682
|
+
result !== null && result !== void 0 ? result : (result = { ...schema });
|
|
683
|
+
result.additionalProperties = false;
|
|
684
|
+
result.required = Object.keys(schema.properties);
|
|
685
|
+
result.properties = Object.fromEntries(Object.entries(schema.properties).map(([key, props]) => [key, recursiveStrictJSONSchema(props)]));
|
|
686
|
+
}
|
|
687
|
+
if (schema.items) {
|
|
688
|
+
result !== null && result !== void 0 ? result : (result = { ...schema });
|
|
689
|
+
result.items = Array.isArray(schema.items)
|
|
690
|
+
? schema.items.map(recursiveStrictJSONSchema)
|
|
691
|
+
: recursiveStrictJSONSchema(schema.items);
|
|
692
|
+
}
|
|
693
|
+
if (schema.oneOf) {
|
|
694
|
+
result !== null && result !== void 0 ? result : (result = { ...schema });
|
|
695
|
+
result.oneOf = schema.oneOf.map(recursiveStrictJSONSchema);
|
|
696
|
+
}
|
|
697
|
+
if (schema.anyOf) {
|
|
698
|
+
result !== null && result !== void 0 ? result : (result = { ...schema });
|
|
699
|
+
result.anyOf = schema.anyOf.map(recursiveStrictJSONSchema);
|
|
700
|
+
}
|
|
701
|
+
if (schema.allOf) {
|
|
702
|
+
result !== null && result !== void 0 ? result : (result = { ...schema });
|
|
703
|
+
result.allOf = schema.allOf.map(recursiveStrictJSONSchema);
|
|
704
|
+
}
|
|
705
|
+
if (schema.if) {
|
|
706
|
+
result !== null && result !== void 0 ? result : (result = { ...schema });
|
|
707
|
+
result.if = recursiveStrictJSONSchema(schema.if);
|
|
708
|
+
}
|
|
709
|
+
if (schema.then) {
|
|
710
|
+
result !== null && result !== void 0 ? result : (result = { ...schema });
|
|
711
|
+
result.then = recursiveStrictJSONSchema(schema.then);
|
|
712
|
+
}
|
|
713
|
+
if (schema.else) {
|
|
714
|
+
result !== null && result !== void 0 ? result : (result = { ...schema });
|
|
715
|
+
result.else = recursiveStrictJSONSchema(schema.else);
|
|
716
|
+
}
|
|
717
|
+
if (schema.not) {
|
|
718
|
+
result !== null && result !== void 0 ? result : (result = { ...schema });
|
|
719
|
+
result.not = recursiveStrictJSONSchema(schema.not);
|
|
720
|
+
}
|
|
721
|
+
return result !== null && result !== void 0 ? result : schema;
|
|
722
|
+
}
|
|
723
|
+
exports.recursiveStrictJSONSchema = recursiveStrictJSONSchema;
|
|
677
724
|
//# sourceMappingURL=openai-response-api-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-response-api-utils.js","sourceRoot":"","sources":["../../src/node/openai-response-api-utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openai-response-api-utils.js","sourceRoot":"","sources":["../../src/node/openai-response-api-utils.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4CAWwB;AACxB,sCAA6D;AAC7D,sEAA+D;AAC/D,4DAA0D;AAyB1D;;;;;GAKG;AAEI,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAE/B;;;OAGG;IACH,KAAK,CAAC,aAAa,CACf,MAAc,EACd,OAAoB,EACpB,QAAiC,EACjC,KAAa,EACb,UAA4B,EAC5B,wBAAkD,EAClD,aAA4B,EAC5B,OAAe,EACf,WAAoB,EACpB,iBAAqC,EACrC,iBAAqC;QAErC,IAAI,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,uBAAuB,EAAE,CAAC;YAC7C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACxB,CAAC;QAED,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACxG,MAAM,KAAK,GAAG,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAE7D,yDAAyD;QACzD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,IAAI,WAAW,EAAE,CAAC;gBACd,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;oBACnC,KAAK,EAAE,KAAuB;oBAC9B,YAAY;oBACZ,KAAK;oBACL,GAAG,QAAQ;iBACd,CAAC,CAAC;gBACH,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,qCAAqC,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,EAAE,CAAC;YAC5I,CAAC;iBAAM,CAAC;gBACJ,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;oBAC3C,KAAK,EAAE,KAAuB;oBAC9B,YAAY;oBACZ,KAAK;oBACL,GAAG,QAAQ;iBACd,CAAC,CAAC;gBAEH,kCAAkC;gBAClC,IAAI,iBAAiB,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACtC,MAAM,iBAAiB,CAAC,gBAAgB,CACpC,OAAO,EACP;wBACI,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,YAAY;wBACxC,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,aAAa;wBAC1C,SAAS,EAAE,OAAO,CAAC,SAAS;qBAC/B,CACJ,CAAC;gBACN,CAAC;gBAED,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;YAChD,CAAC;QACL,CAAC;QAED,8EAA8E;QAC9E,MAAM,QAAQ,GAAG,IAAI,2BAA2B,CAC5C,MAAM,EACN,OAAO,EACP,QAAQ,EACR,KAAK,EACL,UAAU,EACV,wBAAwB,EACxB,aAAa,EACb,OAAO,EACP,IAAI,EACJ,WAAW,EACX,iBAAiB,EACjB,iBAAiB,CACpB,CAAC;QAEF,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,0BAA0B,CAAC,KAAqB;QAC5C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjC,IAAI,EAAE,UAAmB;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;YACnC,8FAA8F;YAC9F,gDAAgD;YAChD,uEAAuE;YACvE,UAAU,EAAE,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,UAAU,CAAC;YACnE,MAAM,EAAE,IAAI;SACf,CAAC,CAAC,CAAC;QACJ,OAAO,CAAC,KAAK,CAAC,aAAa,KAAK,CAAC,MAAM,0BAA0B,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/F,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,iCAAiC,CAAC,MAA6B;QAC3D,OAAO,yBAAyB,CAAC,MAAM,CAA+B,CAAC;IAC3E,CAAC;IAES,qCAAqC,CAC3C,MAA0C,EAC1C,SAAiB,EACjB,OAAe,EACf,iBAAqC,EACrC,iBAAqC;QAErC,OAAO;YACH,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;;gBACzB,IAAI,CAAC;oBACD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;wBAC/B,IAAI,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,uBAAuB,EAAE,CAAC;4BAC7C,MAAM;wBACV,CAAC;wBAED,IAAI,KAAK,CAAC,IAAI,KAAK,4BAA4B,EAAE,CAAC;4BAC9C,MAAM;gCACF,OAAO,EAAE,KAAK,CAAC,KAAK;6BACvB,CAAC;wBACN,CAAC;6BAAM,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;4BAC7C,IAAI,iBAAiB,KAAI,MAAA,KAAK,CAAC,QAAQ,0CAAE,KAAK,CAAA,EAAE,CAAC;gCAC7C,MAAM,iBAAiB,CAAC,gBAAgB,CACpC,OAAO,EACP;oCACI,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY;oCAC9C,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa;oCAChD,SAAS;iCACZ,CACJ,CAAC;4BACN,CAAC;wBACL,CAAC;6BAAM,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;4BAChC,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;4BACpD,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;wBAC5D,CAAC;oBACL,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;oBACtD,MAAM,KAAK,CAAC;gBAChB,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;IAED;;;;;;;;;;OAUG;IACH,eAAe,CACX,QAAgC,EAChC,wBAAkD,EAClD,KAAa;QAEb,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,wBAAwB,CAAC;aAC3E,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QAExC,qDAAqD;QACrD,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAoB,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;QAC5G,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC;YAC1C,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5C,CAAC,CAAC,SAAS,CAAC;QAEhB,0DAA0D;QAC1D,MAAM,iBAAiB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;QACtE,MAAM,KAAK,GAAwB,EAAE,CAAC;QAEtC,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE,CAAC;YACtC,IAAI,8BAAoB,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9C,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;oBACzB,sDAAsD;oBACtD,KAAK,CAAC,IAAI,CAAC;wBACP,EAAE,EAAE,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;wBACtE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,WAAW;wBACjB,MAAM,EAAE,WAAW;wBACnB,OAAO,EAAE,CAAC;gCACN,IAAI,EAAE,aAAa;gCACnB,IAAI,EAAE,OAAO,CAAC,IAAI;gCAClB,WAAW,EAAE,EAAE;6BAClB,CAAC;qBACL,CAAC,CAAC;gBACP,CAAC;qBAAM,CAAC;oBACJ,iCAAiC;oBACjC,KAAK,CAAC,IAAI,CAAC;wBACP,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,CAAC;gCACN,IAAI,EAAE,YAAY;gCAClB,IAAI,EAAE,OAAO,CAAC,IAAI;6BACrB,CAAC;qBACL,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;iBAAM,IAAI,8BAAoB,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxD,KAAK,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,eAAe;oBACrB,OAAO,EAAE,OAAO,CAAC,EAAE;oBACnB,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;iBAC3C,CAAC,CAAC;YACP,CAAC;iBAAM,IAAI,8BAAoB,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3D,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACxG,KAAK,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,OAAO,CAAC,WAAW;oBAC5B,MAAM,EAAE,OAAO;iBAClB,CAAC,CAAC;YACP,CAAC;iBAAM,IAAI,8BAAoB,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtD,KAAK,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,CAAC;4BACN,IAAI,EAAE,aAAa;4BACnB,MAAM,EAAE,MAAM;4BACd,SAAS,EAAE,sBAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gCAC7C,QAAQ,OAAO,CAAC,KAAK,CAAC,QAAQ,WAAW,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;gCACrE,OAAO,CAAC,KAAK,CAAC,GAAG;yBACxB,CAAC;iBACL,CAAC,CAAC;YACP,CAAC;iBAAM,IAAI,8BAAoB,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,OAAO;YACX,CAAC;iBAAM,CAAC;gBACJ,IAAA,kBAAW,EAAC,OAAO,CAAC,CAAC;YACzB,CAAC;QACL,CAAC;QAED,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAES,qBAAqB,CAC3B,QAAgC,EAChC,wBAAkD;QAElD,OAAO,qBAAqB,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC;IACrE,CAAC;CACJ,CAAA;AArPY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,sBAAU,GAAE;GACA,sBAAsB,CAqPlC;AAED;;;GAGG;AACH,MAAM,2BAA2B;IAiB7B,YACuB,MAAc,EACd,OAAoB,EACpB,QAAiC,EACjC,KAAa,EACb,UAA4B,EAC5B,wBAAkD,EAClD,aAA4B,EAC5B,OAAe,EACf,KAA6B,EAC7B,WAAoB,EACpB,iBAAqC,EACrC,iBAAqC;QAXrC,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAa;QACpB,aAAQ,GAAR,QAAQ,CAAyB;QACjC,UAAK,GAAL,KAAK,CAAQ;QACb,eAAU,GAAV,UAAU,CAAkB;QAC5B,6BAAwB,GAAxB,wBAAwB,CAA0B;QAClD,kBAAa,GAAb,aAAa,CAAe;QAC5B,YAAO,GAAP,OAAO,CAAQ;QACf,UAAK,GAAL,KAAK,CAAwB;QAC7B,gBAAW,GAAX,WAAW,CAAS;QACpB,sBAAiB,GAAjB,iBAAiB,CAAoB;QACrC,sBAAiB,GAAjB,iBAAiB,CAAoB;QA5BzC,iBAAY,GAAG,IAAI,KAAK,EAA6D,CAAC;QACtF,iBAAY,GAAG,IAAI,KAAK,EAAmC,CAAC;QACrE,SAAI,GAAG,KAAK,CAAC;QACb,kBAAa,GAAsB,SAAS,CAAC;QAI7C,qBAAgB,GAAG,IAAI,GAAG,EAAoB,CAAC;QAC/C,qBAAgB,GAAG,CAAC,CAAC;QACrB,sBAAiB,GAAG,CAAC,CAAC;QACtB,cAAS,GAAG,CAAC,CAAC;QAId,wBAAmB,GAAG,EAAE,CAAC;QAgB/B,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACzG,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,0BAA0B,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,kBAAkB,IAAI,GAAG,CAAC;QAE7D,4BAA4B;QAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IAED,CAAC,MAAM,CAAC,aAAa,CAAC;QAClB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,IAAI;QACN,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACtF,CAAC;QAED,mEAAmE;QACnE,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAC3B,OAAO;gBACH,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,EAAG;aACpC,CAAC;QACN,CAAC;aAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,aAAa,CAAC;QAC7B,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACnB,OAAO;gBACH,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,SAAS;aACnB,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,MAAM,QAAQ,GAAG,IAAI,uBAAQ,EAAmD,CAAC;YACjF,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjC,OAAO,QAAQ,CAAC,OAAO,CAAC;QAC5B,CAAC;IACL,CAAC;IAES,KAAK,CAAC,cAAc;;QAC1B,IAAI,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,iBAAiB,0CAAE,uBAAuB,CAAA,EAAE,CAAC;gBAC7F,OAAO,CAAC,KAAK,CAAC,mCAAmC,IAAI,CAAC,SAAS,SAAS,IAAI,CAAC,YAAY,CAAC,MAAM,iBAAiB,CAAC,CAAC;gBAEnH,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBAE3B,kDAAkD;gBAClD,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBACnC,4BAA4B;oBAC5B,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChB,OAAO;gBACX,CAAC;gBAED,yBAAyB;gBACzB,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAE9B,6BAA6B;gBAC7B,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC5B,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,CAAC;YAED,yBAAyB;YACzB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,aAAa,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/E,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpB,CAAC;IACL,CAAC;IAES,KAAK,CAAC,aAAa;;QACzB,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;QAE9B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,oBAAoB;YACpB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;gBACxC,KAAK,EAAE,IAAI,CAAC,KAAuB;gBACnC,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,KAAK,EAAE,IAAI,CAAC,YAAY;gBACxB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,GAAG,IAAI,CAAC,QAAQ;aACnB,CAAC,CAAC;YAEH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC/B,IAAI,MAAA,IAAI,CAAC,iBAAiB,0CAAE,uBAAuB,EAAE,CAAC;oBAClD,MAAM;gBACV,CAAC;gBACD,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACxC,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,wDAAwD;YACxD,MAAM,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAC7C,CAAC;IACL,CAAC;IAES,KAAK,CAAC,2BAA2B;;QACvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;YAChD,KAAK,EAAE,IAAI,CAAC,KAAuB;YACnC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,KAAK,EAAE,IAAI,CAAC,YAAY;YACxB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG,IAAI,CAAC,QAAQ;SACnB,CAAC,CAAC;QAEH,qBAAqB;QACrB,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;YACjB,IAAI,CAAC,gBAAgB,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC;YACrD,IAAI,CAAC,iBAAiB,IAAI,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC;QAC3D,CAAC;QAED,kDAAkD;QAClD,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC;QACtD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,IAAI,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,sCAAsC;QACtC,MAAM,aAAa,GAAG,CAAA,MAAA,QAAQ,CAAC,MAAM,0CAAE,MAAM,CAAC,CAAC,IAAI,EAAoC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,KAAI,EAAE,CAAC;QAE/H,6BAA6B;QAC7B,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;YACvC,IAAI,YAAY,CAAC,EAAE,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC;gBACvC,MAAM,QAAQ,GAAa;oBACvB,EAAE,EAAE,YAAY,CAAC,EAAE;oBACnB,OAAO,EAAE,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC,EAAE;oBAChD,IAAI,EAAE,YAAY,CAAC,IAAI;oBACvB,SAAS,EAAE,YAAY,CAAC,SAAS,IAAI,EAAE;oBACvC,QAAQ,EAAE,KAAK;iBAClB,CAAC;gBAEF,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAErD,iCAAiC;gBACjC,IAAI,CAAC,cAAc,CAAC;oBAChB,UAAU,EAAE,CAAC;4BACT,EAAE,EAAE,YAAY,CAAC,EAAE;4BACnB,QAAQ,EAAE,KAAK;4BACf,QAAQ,EAAE;gCACN,IAAI,EAAE,YAAY,CAAC,IAAI;gCACvB,SAAS,EAAE,YAAY,CAAC,SAAS,IAAI,EAAE;6BAC1C;yBACJ,CAAC;iBACL,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IACL,CAAC;IAES,KAAK,CAAC,iBAAiB,CAAC,KAA0B;;QACxD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACjB,KAAK,4BAA4B;gBAC7B,IAAI,CAAC,mBAAmB,IAAI,KAAK,CAAC,KAAK,CAAC;gBACxC,IAAI,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC9C,MAAM;YAEV,KAAK,4BAA4B;gBAC7B,IAAI,CAAA,MAAA,KAAK,CAAC,IAAI,0CAAE,IAAI,MAAK,eAAe,EAAE,CAAC;oBACvC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC7C,CAAC;gBACD,MAAM;YAEV,KAAK,wCAAwC;gBACzC,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;gBACxC,MAAM;YAEV,KAAK,uCAAuC;gBACxC,MAAM,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;gBAC7C,MAAM;YAEV,KAAK,2BAA2B;gBAC5B,IAAI,CAAA,MAAA,KAAK,CAAC,IAAI,0CAAE,IAAI,MAAK,eAAe,EAAE,CAAC;oBACvC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC5C,CAAC;gBACD,MAAM;YAEV,KAAK,oBAAoB;gBACrB,IAAI,MAAA,KAAK,CAAC,QAAQ,0CAAE,KAAK,EAAE,CAAC;oBACxB,IAAI,CAAC,gBAAgB,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC;oBAC3D,IAAI,CAAC,iBAAiB,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC;gBACjE,CAAC;gBACD,MAAM;YAEV,KAAK,OAAO;gBACR,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpD,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAChE,CAAC;IACL,CAAC;IAES,uBAAuB,CAAC,YAAsC;QACpE,IAAI,YAAY,CAAC,EAAE,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YAC1C,OAAO,CAAC,KAAK,CAAC,wBAAwB,YAAY,CAAC,IAAI,YAAY,YAAY,CAAC,EAAE,gBAAgB,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;YAE1H,MAAM,QAAQ,GAAa;gBACvB,EAAE,EAAE,YAAY,CAAC,EAAE;gBACnB,OAAO,EAAE,YAAY,CAAC,OAAO;gBAC7B,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,EAAE;gBAC7B,SAAS,EAAE,YAAY,CAAC,SAAS,IAAI,EAAE;gBACvC,QAAQ,EAAE,KAAK;aAClB,CAAC;YAEF,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAErD,IAAI,CAAC,cAAc,CAAC;gBAChB,UAAU,EAAE,CAAC;wBACT,EAAE,EAAE,YAAY,CAAC,EAAE;wBACnB,QAAQ,EAAE,KAAK;wBACf,QAAQ,EAAE;4BACN,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,EAAE;4BAC7B,SAAS,EAAE,YAAY,CAAC,SAAS,IAAI,EAAE;yBAC1C;qBACJ,CAAC;aACL,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAES,2BAA2B,CAAC,KAA8C;QAChF,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,QAAQ,EAAE,CAAC;YACX,QAAQ,CAAC,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC;YAElC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBACd,IAAI,CAAC,cAAc,CAAC;oBAChB,UAAU,EAAE,CAAC;4BACT,EAAE,EAAE,KAAK,CAAC,OAAO;4BACjB,QAAQ,EAAE;gCACN,SAAS,EAAE,KAAK,CAAC,KAAK;6BACzB;yBACJ,CAAC;iBACL,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IACL,CAAC;IAES,KAAK,CAAC,0BAA0B,CAAC,KAA6C;QACpF,IAAI,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,0CAA0C;YAC1C,QAAQ,GAAG;gBACP,EAAE,EAAE,KAAK,CAAC,OAAO;gBACjB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;gBACtB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;gBAChC,QAAQ,EAAE,KAAK;aAClB,CAAC;YACF,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEnD,IAAI,CAAC,cAAc,CAAC;gBAChB,UAAU,EAAE,CAAC;wBACT,EAAE,EAAE,KAAK,CAAC,OAAO;wBACjB,QAAQ,EAAE,KAAK;wBACf,QAAQ,EAAE;4BACN,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;4BACtB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE;yBACnC;qBACJ,CAAC;aACL,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,2BAA2B;YAC3B,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC;YAC5C,QAAQ,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS,CAAC;QAC/D,CAAC;IACL,CAAC;IAES,sBAAsB,CAAC,YAAsC;QACnE,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QAC7G,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAC5D,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACxD,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC;QAC5C,CAAC;IACL,CAAC;IAES,KAAK,CAAC,gBAAgB;;QAC5B,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACrD,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACpB,SAAS;YACb,CAAC;YAED,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,KAAK,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;YACrE,IAAI,IAAI,EAAE,CAAC;gBACP,IAAI,CAAC;oBACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBACtD,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;oBAEzB,iCAAiC;oBACjC,IAAI,CAAC,cAAc,CAAC;wBAChB,UAAU,EAAE,CAAC;gCACT,EAAE,EAAE,MAAM;gCACV,QAAQ,EAAE,IAAI;gCACd,QAAQ,EAAE;oCACN,IAAI,EAAE,QAAQ,CAAC,IAAI;oCACnB,SAAS,EAAE,QAAQ,CAAC,SAAS;iCAChC;gCACD,MAAM;6BACT,CAAC;qBACL,CAAC,CAAC;gBACP,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,wBAAwB,QAAQ,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;oBAC/D,QAAQ,CAAC,KAAK,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAE3E,MAAM,WAAW,GAAwB;wBACrC,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;qBAC/D,CAAC;oBAEF,4BAA4B;oBAC5B,IAAI,CAAC,cAAc,CAAC;wBAChB,UAAU,EAAE,CAAC;gCACT,EAAE,EAAE,MAAM;gCACV,QAAQ,EAAE,IAAI;gCACd,QAAQ,EAAE;oCACN,IAAI,EAAE,QAAQ,CAAC,IAAI;oCACnB,SAAS,EAAE,QAAQ,CAAC,SAAS;iCAChC;gCACD,MAAM,EAAE,WAAW;6BACtB,CAAC;qBACL,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,QAAQ,QAAQ,CAAC,IAAI,6BAA6B,CAAC,CAAC;gBACjE,QAAQ,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,QAAQ,QAAQ,CAAC,IAAI,YAAY,CAAC,CAAC;gBAE9D,MAAM,WAAW,GAAwB;oBACrC,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,QAAQ,QAAQ,CAAC,IAAI,YAAY;iBAC1C,CAAC;gBAEF,4BAA4B;gBAC5B,IAAI,CAAC,cAAc,CAAC;oBAChB,UAAU,EAAE,CAAC;4BACT,EAAE,EAAE,MAAM;4BACV,QAAQ,EAAE,IAAI;4BACd,QAAQ,EAAE;gCACN,IAAI,EAAE,QAAQ,CAAC,IAAI;gCACnB,SAAS,EAAE,QAAQ,CAAC,SAAS;6BAChC;4BACD,MAAM,EAAE,WAAW;yBACtB,CAAC;iBACL,CAAC,CAAC;YACP,CAAC;YAED,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC7B,CAAC;IACL,CAAC;IAES,oBAAoB;QAC1B,gEAAgE;QAChE,MAAM,gBAAgB,GAAsB;YACxC,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,IAAI,CAAC,mBAAmB;SACpC,CAAC;QAEF,yDAAyD;QACzD,MAAM,aAAa,GAAwB,EAAE,CAAC;QAC9C,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACrD,aAAa,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,MAAM;gBACnC,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,SAAS,EAAE,QAAQ,CAAC,SAAS;aAChC,CAAC,CAAC;QACP,CAAC;QAED,mBAAmB;QACnB,MAAM,WAAW,GAAwB,EAAE,CAAC;QAC5C,KAAK,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACrD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC;YAE1C,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,aAAa,GAAG,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC9G,WAAW,CAAC,IAAI,CAAC;oBACb,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,MAAM;oBACf,MAAM,EAAE,aAAa;iBACxB,CAAC,CAAC;YACP,CAAC;iBAAM,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACxB,WAAW,CAAC,IAAI,CAAC;oBACb,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,MAAM;oBACf,MAAM,EAAE,UAAU,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE;iBAC7C,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,gBAAgB,EAAE,GAAG,aAAa,EAAE,GAAG,WAAW,CAAC,CAAC;IACnG,CAAC;IAES,cAAc,CAAC,OAAwC;QAC7D,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACtF,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,YAAY,CAAC,KAAK,EAAG,CAAC,OAAO,CAAC;gBAC/B,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,OAAO;aACjB,CAAC,CAAC;QACP,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;IACL,CAAC;IAES,KAAK,CAAC,QAAQ;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,2BAA2B;QAC3B,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,IAAI,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,EAAE,CAAC;YACtF,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CACzC,IAAI,CAAC,OAAO,EACZ;oBACI,WAAW,EAAE,IAAI,CAAC,gBAAgB;oBAClC,YAAY,EAAE,IAAI,CAAC,iBAAiB;oBACpC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;iBACpC,CACJ,CAAC;YACN,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;YACzD,CAAC;QACL,CAAC;QAED,mCAAmC;QACnC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QAC7E,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QAC5F,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;IACjC,CAAC;CACJ;AAED,SAAgB,qBAAqB,CACjC,QAAgC,EAChC,wBAAkD;IAElD,IAAI,wBAAwB,KAAK,MAAM,EAAE,CAAC;QACtC,OAAO,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;IAClE,CAAC;SAAM,IAAI,wBAAwB,KAAK,+BAA+B,EAAE,CAAC;QACtE,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAChC,MAAM,aAAa,GAAG,OAAO,CAAC,CAAC,CAAgB,CAAC;gBAChD,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;oBAC5D,kDAAkD;oBAClD,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAgB,CAAC;oBAClD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG;wBACb,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC;wBACjB,IAAI,EAAE,aAAa,CAAC,IAAI,GAAG,IAAI,GAAG,WAAW,CAAC,IAAI;qBACtC,CAAC;oBACjB,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACJ,8GAA8G;oBAC9G,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;oBACpF,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzB,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AA7BD,sDA6BC;AAED,SAAgB,yBAAyB,CAAC,MAA4B;IAClE,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;QAAC,OAAO,MAAM,CAAC;IAAC,CAAC;IACnD,IAAI,MAAM,GAA2B,SAAS,CAAC;IAC/C,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACpB,MAAM,aAAN,MAAM,cAAN,MAAM,IAAN,MAAM,GAAK,EAAE,GAAG,MAAM,EAAE,EAAC;QACzB,MAAM,CAAC,oBAAoB,GAAG,KAAK,CAAC;QACpC,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACjD,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7I,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,aAAN,MAAM,cAAN,MAAM,IAAN,MAAM,GAAK,EAAE,GAAG,MAAM,EAAE,EAAC;QACzB,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YACtC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC;YAC7C,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,aAAN,MAAM,cAAN,MAAM,IAAN,MAAM,GAAK,EAAE,GAAG,MAAM,EAAE,EAAC;QACzB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,aAAN,MAAM,cAAN,MAAM,IAAN,MAAM,GAAK,EAAE,GAAG,MAAM,EAAE,EAAC;QACzB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,aAAN,MAAM,cAAN,MAAM,IAAN,MAAM,GAAK,EAAE,GAAG,MAAM,EAAE,EAAC;QACzB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,aAAN,MAAM,cAAN,MAAM,IAAN,MAAM,GAAK,EAAE,GAAG,MAAM,EAAE,EAAC;QACzB,MAAM,CAAC,EAAE,GAAG,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,aAAN,MAAM,cAAN,MAAM,IAAN,MAAM,GAAK,EAAE,GAAG,MAAM,EAAE,EAAC;QACzB,MAAM,CAAC,IAAI,GAAG,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,aAAN,MAAM,cAAN,MAAM,IAAN,MAAM,GAAK,EAAE,GAAG,MAAM,EAAE,EAAC;QACzB,MAAM,CAAC,IAAI,GAAG,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;QACb,MAAM,aAAN,MAAM,cAAN,MAAM,IAAN,MAAM,GAAK,EAAE,GAAG,MAAM,EAAE,EAAC;QACzB,MAAM,CAAC,GAAG,GAAG,yBAAyB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,MAAM,CAAC;AAC5B,CAAC;AA7CD,8DA6CC"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/ai-openai",
|
|
3
|
-
"version": "1.66.
|
|
3
|
+
"version": "1.66.2",
|
|
4
4
|
"description": "Theia - OpenAI Integration",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/ai-core": "1.66.
|
|
7
|
-
"@theia/core": "1.66.
|
|
8
|
-
"@theia/filesystem": "1.66.
|
|
9
|
-
"@theia/workspace": "1.66.
|
|
6
|
+
"@theia/ai-core": "1.66.2",
|
|
7
|
+
"@theia/core": "1.66.2",
|
|
8
|
+
"@theia/filesystem": "1.66.2",
|
|
9
|
+
"@theia/workspace": "1.66.2",
|
|
10
10
|
"openai": "^6.3.0",
|
|
11
11
|
"tslib": "^2.6.2",
|
|
12
12
|
"undici": "^7.16.0"
|
|
@@ -45,10 +45,10 @@
|
|
|
45
45
|
"watch": "theiaext watch"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@theia/ext-scripts": "1.66.
|
|
48
|
+
"@theia/ext-scripts": "1.66.2"
|
|
49
49
|
},
|
|
50
50
|
"nyc": {
|
|
51
51
|
"extends": "../../configs/nyc.json"
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "18508653de50e2a0c350e7d131f9447d74475c41"
|
|
54
54
|
}
|
|
@@ -58,9 +58,12 @@ on the machine running Theia. Use the environment variable `OPENAI_API_KEY` to s
|
|
|
58
58
|
default: false,
|
|
59
59
|
title: AI_CORE_PREFERENCES_TITLE,
|
|
60
60
|
markdownDescription: nls.localize('theia/ai/openai/useResponseApi/mdDescription',
|
|
61
|
-
'Use the newer OpenAI Response API instead of the Chat Completion API for official OpenAI models
|
|
61
|
+
'Use the newer OpenAI Response API instead of the Chat Completion API for official OpenAI models.\
|
|
62
62
|
\
|
|
63
|
-
This setting only applies to official OpenAI models - custom providers must configure this individually
|
|
63
|
+
This setting only applies to official OpenAI models - custom providers must configure this individually.\
|
|
64
|
+
\
|
|
65
|
+
Note that for the response API, tool call definitions must satisfy Open AI\'s [strict schema definition](https://platform.openai.com/docs/guides/function-calling#strict-mode).\
|
|
66
|
+
Best effort is made to convert non-conformant schemas, but errors are still possible.')
|
|
64
67
|
},
|
|
65
68
|
[CUSTOM_ENDPOINTS_PREF]: {
|
|
66
69
|
type: 'array',
|
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
import { expect } from 'chai';
|
|
17
17
|
import { OpenAiModelUtils } from './openai-language-model';
|
|
18
18
|
import { LanguageModelMessage } from '@theia/ai-core';
|
|
19
|
-
import { OpenAiResponseApiUtils } from './openai-response-api-utils';
|
|
19
|
+
import { OpenAiResponseApiUtils, recursiveStrictJSONSchema } from './openai-response-api-utils';
|
|
20
|
+
import type { JSONSchema, JSONSchemaDefinition } from 'openai/lib/jsonschema';
|
|
20
21
|
|
|
21
22
|
const utils = new OpenAiModelUtils();
|
|
22
23
|
const responseUtils = new OpenAiResponseApiUtils();
|
|
@@ -396,4 +397,106 @@ describe('OpenAiModelUtils - processMessagesForResponseApi', () => {
|
|
|
396
397
|
.to.throw('unhandled case');
|
|
397
398
|
});
|
|
398
399
|
});
|
|
400
|
+
|
|
401
|
+
describe('recursiveStrictJSONSchema', () => {
|
|
402
|
+
it('should return the same object and not modify it when schema has no properties to strictify', () => {
|
|
403
|
+
const schema: JSONSchema = { type: 'string', description: 'Simple string' };
|
|
404
|
+
const originalJson = JSON.stringify(schema);
|
|
405
|
+
|
|
406
|
+
const result = recursiveStrictJSONSchema(schema);
|
|
407
|
+
|
|
408
|
+
expect(result).to.equal(schema);
|
|
409
|
+
expect(JSON.stringify(schema)).to.equal(originalJson);
|
|
410
|
+
const resultObj = result as JSONSchema;
|
|
411
|
+
expect(resultObj).to.not.have.property('additionalProperties');
|
|
412
|
+
expect(resultObj).to.not.have.property('required');
|
|
413
|
+
});
|
|
414
|
+
|
|
415
|
+
it('should not mutate original but return a new strictified schema when branching applies (properties/items)', () => {
|
|
416
|
+
const original: JSONSchema = {
|
|
417
|
+
type: 'object',
|
|
418
|
+
properties: {
|
|
419
|
+
path: { type: 'string' },
|
|
420
|
+
data: {
|
|
421
|
+
type: 'array',
|
|
422
|
+
items: {
|
|
423
|
+
type: 'object',
|
|
424
|
+
properties: {
|
|
425
|
+
a: { type: 'string' }
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
};
|
|
431
|
+
const originalClone = JSON.parse(JSON.stringify(original));
|
|
432
|
+
|
|
433
|
+
const resultDef = recursiveStrictJSONSchema(original);
|
|
434
|
+
const result = resultDef as JSONSchema;
|
|
435
|
+
|
|
436
|
+
expect(result).to.not.equal(original);
|
|
437
|
+
expect(original).to.deep.equal(originalClone);
|
|
438
|
+
|
|
439
|
+
expect(result.additionalProperties).to.equal(false);
|
|
440
|
+
expect(result.required).to.have.members(['path', 'data']);
|
|
441
|
+
|
|
442
|
+
const itemsDef = (result.properties?.data as JSONSchema).items as JSONSchemaDefinition;
|
|
443
|
+
expect(itemsDef).to.be.ok;
|
|
444
|
+
const itemsObj = itemsDef as JSONSchema;
|
|
445
|
+
expect(itemsObj.additionalProperties).to.equal(false);
|
|
446
|
+
expect(itemsObj.required).to.have.members(['a']);
|
|
447
|
+
|
|
448
|
+
const originalItems = ((original.properties!.data as JSONSchema).items) as JSONSchema;
|
|
449
|
+
expect(originalItems).to.not.have.property('additionalProperties');
|
|
450
|
+
expect(originalItems).to.not.have.property('required');
|
|
451
|
+
});
|
|
452
|
+
|
|
453
|
+
it('should strictify nested parameters schema and not mutate the original', () => {
|
|
454
|
+
const replacementProperties: Record<string, JSONSchema> = {
|
|
455
|
+
oldContent: { type: 'string', description: 'The exact content to be replaced. Must match exactly, including whitespace, comments, etc.' },
|
|
456
|
+
newContent: { type: 'string', description: 'The new content to insert in place of matched old content.' },
|
|
457
|
+
multiple: { type: 'boolean', description: 'Set to true if multiple occurrences of the oldContent are expected to be replaced.' }
|
|
458
|
+
};
|
|
459
|
+
|
|
460
|
+
const parameters: JSONSchema = {
|
|
461
|
+
type: 'object',
|
|
462
|
+
properties: {
|
|
463
|
+
path: { type: 'string', description: 'The path of the file where content will be replaced.' },
|
|
464
|
+
replacements: {
|
|
465
|
+
type: 'array',
|
|
466
|
+
items: {
|
|
467
|
+
type: 'object',
|
|
468
|
+
properties: replacementProperties,
|
|
469
|
+
required: ['oldContent', 'newContent']
|
|
470
|
+
},
|
|
471
|
+
description: 'An array of replacement objects, each containing oldContent and newContent strings.'
|
|
472
|
+
},
|
|
473
|
+
reset: {
|
|
474
|
+
type: 'boolean',
|
|
475
|
+
description: 'Set to true to clear any existing pending changes for this file and start fresh. Default is false, which merges with existing changes.'
|
|
476
|
+
}
|
|
477
|
+
},
|
|
478
|
+
required: ['path', 'replacements']
|
|
479
|
+
};
|
|
480
|
+
|
|
481
|
+
const originalClone = JSON.parse(JSON.stringify(parameters));
|
|
482
|
+
|
|
483
|
+
const strictifiedDef = recursiveStrictJSONSchema(parameters);
|
|
484
|
+
const strictified = strictifiedDef as JSONSchema;
|
|
485
|
+
|
|
486
|
+
expect(strictified).to.not.equal(parameters);
|
|
487
|
+
expect(parameters).to.deep.equal(originalClone);
|
|
488
|
+
|
|
489
|
+
expect(strictified.additionalProperties).to.equal(false);
|
|
490
|
+
expect(strictified.required).to.have.members(['path', 'replacements', 'reset']);
|
|
491
|
+
|
|
492
|
+
const items = (strictified.properties!.replacements as JSONSchema).items as JSONSchema;
|
|
493
|
+
expect(items.additionalProperties).to.equal(false);
|
|
494
|
+
expect(items.required).to.have.members(['oldContent', 'newContent', 'multiple']);
|
|
495
|
+
|
|
496
|
+
const origItems = ((parameters.properties!.replacements as JSONSchema).items) as JSONSchema;
|
|
497
|
+
expect(origItems.required).to.deep.equal(['oldContent', 'newContent']);
|
|
498
|
+
expect(origItems).to.not.have.property('additionalProperties');
|
|
499
|
+
});
|
|
500
|
+
});
|
|
501
|
+
|
|
399
502
|
});
|
|
@@ -23,6 +23,7 @@ import {
|
|
|
23
23
|
TokenUsageService,
|
|
24
24
|
ToolCallErrorResult,
|
|
25
25
|
ToolRequest,
|
|
26
|
+
ToolRequestParameters,
|
|
26
27
|
UserRequest
|
|
27
28
|
} from '@theia/ai-core';
|
|
28
29
|
import { CancellationToken, unreachable } from '@theia/core';
|
|
@@ -40,6 +41,7 @@ import type {
|
|
|
40
41
|
} from 'openai/resources/responses/responses';
|
|
41
42
|
import type { ResponsesModel } from 'openai/resources/shared';
|
|
42
43
|
import { DeveloperMessageSettings, OpenAiModelUtils } from './openai-language-model';
|
|
44
|
+
import { JSONSchema, JSONSchemaDefinition } from 'openai/lib/jsonschema';
|
|
43
45
|
|
|
44
46
|
interface ToolCall {
|
|
45
47
|
id: string;
|
|
@@ -152,17 +154,17 @@ export class OpenAiResponseApiUtils {
|
|
|
152
154
|
// The Response API is very strict re: JSON schema: all properties must be listed as required,
|
|
153
155
|
// and additional properties must be disallowed.
|
|
154
156
|
// https://platform.openai.com/docs/guides/function-calling#strict-mode
|
|
155
|
-
parameters:
|
|
156
|
-
...tool.parameters,
|
|
157
|
-
additionalProperties: false,
|
|
158
|
-
required: tool.parameters.properties ? Object.keys(tool.parameters.properties) : []
|
|
159
|
-
},
|
|
157
|
+
parameters: this.recursiveStrictToolCallParameters(tool.parameters),
|
|
160
158
|
strict: true
|
|
161
159
|
}));
|
|
162
160
|
console.debug(`Converted ${tools.length} tools for Response API:`, converted.map(t => t.name));
|
|
163
161
|
return converted;
|
|
164
162
|
}
|
|
165
163
|
|
|
164
|
+
recursiveStrictToolCallParameters(schema: ToolRequestParameters): FunctionTool['parameters'] {
|
|
165
|
+
return recursiveStrictJSONSchema(schema) as FunctionTool['parameters'];
|
|
166
|
+
}
|
|
167
|
+
|
|
166
168
|
protected createSimpleResponseApiStreamIterator(
|
|
167
169
|
stream: AsyncIterable<ResponseStreamEvent>,
|
|
168
170
|
requestId: string,
|
|
@@ -427,7 +429,6 @@ class ResponseApiToolCallIterator implements AsyncIterableIterator<LanguageModel
|
|
|
427
429
|
if (this.cancellationToken?.isCancellationRequested) {
|
|
428
430
|
break;
|
|
429
431
|
}
|
|
430
|
-
|
|
431
432
|
await this.handleStreamEvent(event);
|
|
432
433
|
}
|
|
433
434
|
} else {
|
|
@@ -799,3 +800,50 @@ export function processSystemMessages(
|
|
|
799
800
|
}
|
|
800
801
|
return messages;
|
|
801
802
|
}
|
|
803
|
+
|
|
804
|
+
export function recursiveStrictJSONSchema(schema: JSONSchemaDefinition): JSONSchemaDefinition {
|
|
805
|
+
if (typeof schema === 'boolean') { return schema; }
|
|
806
|
+
let result: JSONSchema | undefined = undefined;
|
|
807
|
+
if (schema.properties) {
|
|
808
|
+
result ??= { ...schema };
|
|
809
|
+
result.additionalProperties = false;
|
|
810
|
+
result.required = Object.keys(schema.properties);
|
|
811
|
+
result.properties = Object.fromEntries(Object.entries(schema.properties).map(([key, props]) => [key, recursiveStrictJSONSchema(props)]));
|
|
812
|
+
}
|
|
813
|
+
if (schema.items) {
|
|
814
|
+
result ??= { ...schema };
|
|
815
|
+
result.items = Array.isArray(schema.items)
|
|
816
|
+
? schema.items.map(recursiveStrictJSONSchema)
|
|
817
|
+
: recursiveStrictJSONSchema(schema.items);
|
|
818
|
+
}
|
|
819
|
+
if (schema.oneOf) {
|
|
820
|
+
result ??= { ...schema };
|
|
821
|
+
result.oneOf = schema.oneOf.map(recursiveStrictJSONSchema);
|
|
822
|
+
}
|
|
823
|
+
if (schema.anyOf) {
|
|
824
|
+
result ??= { ...schema };
|
|
825
|
+
result.anyOf = schema.anyOf.map(recursiveStrictJSONSchema);
|
|
826
|
+
}
|
|
827
|
+
if (schema.allOf) {
|
|
828
|
+
result ??= { ...schema };
|
|
829
|
+
result.allOf = schema.allOf.map(recursiveStrictJSONSchema);
|
|
830
|
+
}
|
|
831
|
+
if (schema.if) {
|
|
832
|
+
result ??= { ...schema };
|
|
833
|
+
result.if = recursiveStrictJSONSchema(schema.if);
|
|
834
|
+
}
|
|
835
|
+
if (schema.then) {
|
|
836
|
+
result ??= { ...schema };
|
|
837
|
+
result.then = recursiveStrictJSONSchema(schema.then);
|
|
838
|
+
}
|
|
839
|
+
if (schema.else) {
|
|
840
|
+
result ??= { ...schema };
|
|
841
|
+
result.else = recursiveStrictJSONSchema(schema.else);
|
|
842
|
+
}
|
|
843
|
+
if (schema.not) {
|
|
844
|
+
result ??= { ...schema };
|
|
845
|
+
result.not = recursiveStrictJSONSchema(schema.not);
|
|
846
|
+
}
|
|
847
|
+
|
|
848
|
+
return result ?? schema;
|
|
849
|
+
}
|