Fix Antigravity
This commit is contained in:
parent
ef49595866
commit
e989796024
1 changed files with 31 additions and 1 deletions
|
|
@ -4,7 +4,8 @@
|
|||
export const UNSUPPORTED_SCHEMA_CONSTRAINTS = [
|
||||
"minLength", "maxLength", "exclusiveMinimum", "exclusiveMaximum",
|
||||
"pattern", "minItems", "maxItems", "format",
|
||||
"default", "examples", "$schema", "const"
|
||||
"default", "examples", "$schema", "const", "title",
|
||||
"anyOf", "oneOf", "allOf", "not"
|
||||
];
|
||||
|
||||
// Default safety settings
|
||||
|
|
@ -87,6 +88,35 @@ export function generateProjectId() {
|
|||
export function cleanJSONSchemaForAntigravity(schema) {
|
||||
if (!schema || typeof schema !== "object") return schema;
|
||||
|
||||
// Handle anyOf/oneOf - extract the first non-null schema
|
||||
if (schema.anyOf && Array.isArray(schema.anyOf)) {
|
||||
const nonNullSchema = schema.anyOf.find(s => s.type !== "null" && s.type !== null);
|
||||
if (nonNullSchema) {
|
||||
const baseSchema = { ...nonNullSchema };
|
||||
// Copy other properties from parent schema (except unsupported ones)
|
||||
for (const [key, value] of Object.entries(schema)) {
|
||||
if (!UNSUPPORTED_SCHEMA_CONSTRAINTS.includes(key)) {
|
||||
baseSchema[key] = value;
|
||||
}
|
||||
}
|
||||
return cleanJSONSchemaForAntigravity(baseSchema);
|
||||
}
|
||||
}
|
||||
|
||||
if (schema.oneOf && Array.isArray(schema.oneOf)) {
|
||||
const nonNullSchema = schema.oneOf.find(s => s.type !== "null" && s.type !== null);
|
||||
if (nonNullSchema) {
|
||||
const baseSchema = { ...nonNullSchema };
|
||||
// Copy other properties from parent schema (except unsupported ones)
|
||||
for (const [key, value] of Object.entries(schema)) {
|
||||
if (!UNSUPPORTED_SCHEMA_CONSTRAINTS.includes(key)) {
|
||||
baseSchema[key] = value;
|
||||
}
|
||||
}
|
||||
return cleanJSONSchemaForAntigravity(baseSchema);
|
||||
}
|
||||
}
|
||||
|
||||
const cleaned = Array.isArray(schema) ? [] : {};
|
||||
|
||||
for (const [key, value] of Object.entries(schema)) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue