| 108 | } |
| 109 | |
| 110 | function canFlattenAllOf(allOf: JsonObject[], parent: JsonObject) { |
| 111 | const keys = new Set(Object.keys(parent).filter((key) => key !== "allOf")) |
| 112 | return allOf.every((item) => |
| 113 | Object.keys(item).every((key) => { |
| 114 | if (keys.has(key)) return false |
| 115 | keys.add(key) |
| 116 | return true |
| 117 | }), |
| 118 | ) |
| 119 | } |
| 120 | |
| 121 | function inlineLocalReferences(value: unknown, definitions?: JsonObject, seen = new Set<string>()): unknown { |
| 122 | if (Array.isArray(value)) return value.map((item) => inlineLocalReferences(item, definitions, seen)) |