MCPcopy Index your code
hub / github.com/github/copilot-sdk / normalizeDefinitionForComparison

Function normalizeDefinitionForComparison

scripts/codegen/utils.ts:1568–1597  ·  view source on GitHub ↗
(definition: JSONSchema7Definition)

Source from the content-addressed store, hash-verified

1566}
1567
1568function normalizeDefinitionForComparison(definition: JSONSchema7Definition): unknown {
1569 if (Array.isArray(definition)) {
1570 return definition.map((item) =>
1571 typeof item === "object" && item !== null ? normalizeDefinitionForComparison(item as JSONSchema7Definition) : item
1572 );
1573 }
1574
1575 if (!definition || typeof definition !== "object") {
1576 return definition;
1577 }
1578
1579 const result: Record<string, unknown> = {};
1580 for (const [key, value] of Object.entries(definition as Record<string, unknown>)) {
1581 if (key === "description" || key === "markdownDescription" || key === "x-enumDescriptions") {
1582 continue;
1583 } else if (key === "$ref" && typeof value === "string") {
1584 const localRef = parseLocalDefinitionRef(value);
1585 result[key] = localRef ? `#/definitions/${localRef}` : value;
1586 } else if (Array.isArray(value)) {
1587 result[key] = value.map((item) =>
1588 typeof item === "object" && item !== null ? normalizeDefinitionForComparison(item as JSONSchema7Definition) : item
1589 );
1590 } else if (value && typeof value === "object") {
1591 result[key] = normalizeDefinitionForComparison(value as JSONSchema7Definition);
1592 } else {
1593 result[key] = value;
1594 }
1595 }
1596 return result;
1597}
1598
1599function collectLocalDefinitionRefNames(value: unknown): Set<string> {
1600 const refs = new Set<string>();

Callers 2

Calls 1

parseLocalDefinitionRefFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…