diff --git a/src/shared/services/compare-keys-by-schema.service.ts b/src/shared/services/compare-keys-by-schema.service.ts index 70548eb..2afbf0f 100644 --- a/src/shared/services/compare-keys-by-schema.service.ts +++ b/src/shared/services/compare-keys-by-schema.service.ts @@ -34,11 +34,21 @@ export class CompareKeysBySchemaService { */ compare(key1: string, key2: string, schema: JSONSchema): number { // Sort by priority, larger is the first. - const priorty1 = schema.properties[key1].priority || 0; - const priority2 = schema.properties[key2].priority || 0; + const priority1 = + (schema && + schema.properties && + schema.properties[key1] && + schema.properties[key1].priority) || + 0; + const priority2 = + (schema && + schema.properties && + schema.properties[key2] && + schema.properties[key2].priority) || + 0; - if (priorty1 > priority2) { return -1; } - if (priorty1 < priority2) { return 1; } + if (priority1 > priority2) { return -1; } + if (priority1 < priority2) { return 1; } // Sort alphabetically. if (key1 < key2) { return -1; }